chatlab-cli 0.36.2 → 0.37.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 (203) hide show
  1. package/dist/{chat-command-SEV6N3AR.mjs → chat-command-YAFRLHMQ.mjs} +15 -16
  2. package/dist/{chat-command-SEV6N3AR.mjs.map → chat-command-YAFRLHMQ.mjs.map} +1 -1
  3. package/dist/{chunk-6EZPD3XJ.mjs → chunk-2PY4XCH3.mjs} +6 -3
  4. package/dist/chunk-2PY4XCH3.mjs.map +1 -0
  5. package/dist/{chunk-HWIXK7SU.mjs → chunk-73TJ2S7W.mjs} +1643 -3
  6. package/dist/chunk-73TJ2S7W.mjs.map +1 -0
  7. package/dist/{chunk-YUH3H3QW.mjs → chunk-ARIBCH47.mjs} +96 -5
  8. package/dist/chunk-ARIBCH47.mjs.map +1 -0
  9. package/dist/{chunk-WRBFV2GX.mjs → chunk-FPVRSXQ4.mjs} +49 -55
  10. package/dist/chunk-FPVRSXQ4.mjs.map +1 -0
  11. package/dist/{chunk-VREVDZ4Q.mjs → chunk-GKCIRKOH.mjs} +1934 -35
  12. package/dist/chunk-GKCIRKOH.mjs.map +1 -0
  13. package/dist/{chunk-TJ3NOBVI.mjs → chunk-JWJREWVN.mjs} +119 -288
  14. package/dist/chunk-JWJREWVN.mjs.map +1 -0
  15. package/dist/{chunk-TWH422HC.mjs → chunk-MMTEGUQA.mjs} +3 -3
  16. package/dist/{chunk-VUYWUHWW.mjs → chunk-N4SB6QZV.mjs} +3 -3
  17. package/dist/chunk-N4SB6QZV.mjs.map +1 -0
  18. package/dist/{chunk-TRGR3KKJ.mjs → chunk-OTYNMDDL.mjs} +2643 -682
  19. package/dist/chunk-OTYNMDDL.mjs.map +1 -0
  20. package/dist/{chunk-CH5YAZ4Q.mjs → chunk-PDQV4RUA.mjs} +2 -2
  21. package/dist/{chunk-WJQOXOMR.mjs → chunk-UP6JIV3S.mjs} +285 -41
  22. package/dist/chunk-UP6JIV3S.mjs.map +1 -0
  23. package/dist/chunk-WDLO7OLX.mjs +101 -0
  24. package/dist/chunk-WDLO7OLX.mjs.map +1 -0
  25. package/dist/cli.mjs +9 -9
  26. package/dist/contacts-worker.mjs +2 -2
  27. package/dist/global-insight-worker.mjs +1 -1
  28. package/dist/{http-237XYNRT.mjs → http-LPFPVTBC.mjs} +12 -12
  29. package/dist/{import-R2E2TFAK.mjs → import-T4WX2ZJL.mjs} +7 -7
  30. package/dist/index.mjs +12 -12
  31. package/dist/{mcp-BED4AARV.mjs → mcp-SMF3NWIN.mjs} +8 -8
  32. package/dist/people-relationships-worker.mjs +2 -2
  33. package/dist/semantic-index-worker.mjs +1 -1
  34. package/dist/{src-AYMALWU5.mjs → src-EGLLMTAU.mjs} +44 -14
  35. package/dist/{stream-import-RXNSOOYH.mjs → stream-import-2BXJTTCE.mjs} +7 -7
  36. package/dist/{worker-runtime-JGAZU7MC.mjs → worker-runtime-RDLSPXFT.mjs} +5 -5
  37. package/dist-cli-web/assets/AISettingsTab-CEhrXlYR.js +1 -0
  38. package/dist-cli-web/assets/{AboutTab-DCM1-glA.js → AboutTab-Bbu0SsMM.js} +1 -1
  39. package/dist-cli-web/assets/ActionToolsPanel-DDNXXH8v.css +1 -0
  40. package/dist-cli-web/assets/ActionToolsPanel.vue_vue_type_script_setup_true_lang-IB1yZxCE.js +75 -0
  41. package/dist-cli-web/assets/{Alert-D-egBWcb.js → Alert-510jTN3l.js} +1 -1
  42. package/dist-cli-web/assets/ApiSettingsTab-Bi1GRMN4.js +2 -0
  43. package/dist-cli-web/assets/BatchManageTab-DhnqMCSM.js +1 -0
  44. package/dist-cli-web/assets/{BufferResource-BE2_2bZK.js → BufferResource-CKZxnACp.js} +1 -1
  45. package/dist-cli-web/assets/{CanvasRenderer-DDKdvEYQ.js → CanvasRenderer-BeK5POBy.js} +1 -1
  46. package/dist-cli-web/assets/CardDecoration-RuBA3N2j.js +1 -0
  47. package/dist-cli-web/assets/ChatRecordDrawer-BY_-lIEj.js +1 -0
  48. package/dist-cli-web/assets/{ChatRecordWorkspace-DqUI4QiU.js → ChatRecordWorkspace-7prKd-Tq.js} +1 -1
  49. package/dist-cli-web/assets/Checkbox-_eH64bb0.js +1 -0
  50. package/dist-cli-web/assets/DataDirCleanupNotice-BHaXwlfr.js +1 -0
  51. package/dist-cli-web/assets/{DatePicker.vue_vue_type_script_setup_true_lang-sPDoPzZ9.js → DatePicker.vue_vue_type_script_setup_true_lang-D9Ul_GYz.js} +1 -1
  52. package/dist-cli-web/assets/{DebugToolsPanel-BIHA6jw4.js → DebugToolsPanel-ByKItGrS.js} +1 -1
  53. package/dist-cli-web/assets/EChart.vue_vue_type_script_setup_true_lang-DubnuUXI.js +1 -0
  54. package/dist-cli-web/assets/EChartBar.vue_vue_type_script_setup_true_lang-DKNCZuFm.js +1 -0
  55. package/dist-cli-web/assets/EChartLine.vue_vue_type_script_setup_true_lang-Fl7xAOSR.js +1 -0
  56. package/dist-cli-web/assets/EChartWordcloud-C6XM4KOX.js +1 -0
  57. package/dist-cli-web/assets/FileDropZone.vue_vue_type_script_setup_true_lang-DYDdRSNE.js +1 -0
  58. package/dist-cli-web/assets/{Filter-kO4dIDJ2.js → Filter-CByj_rCR.js} +1 -1
  59. package/dist-cli-web/assets/GlobalTaskBar-BdELjzrs.js +1 -0
  60. package/dist-cli-web/assets/GlobalTaskBar-haLzezqY.css +1 -0
  61. package/dist-cli-web/assets/GroupRelationshipGalaxyView-CnzPEgUS.js +1 -0
  62. package/dist-cli-web/assets/Label-DCIcxkhU.js +1 -0
  63. package/dist-cli-web/assets/LoadingState.vue_vue_type_script_setup_true_lang-BBcCt_Qm.js +1 -0
  64. package/dist-cli-web/assets/MessageExportModal-DNU16Bs8.js +1 -0
  65. package/dist-cli-web/assets/PageHeader-CKeZjNNR.js +1 -0
  66. package/dist-cli-web/assets/PageHeader-CPLgiKT8.css +1 -0
  67. package/dist-cli-web/assets/{PageTabs.vue_vue_type_script_setup_true_lang-Cgungbjl.js → PageTabs.vue_vue_type_script_setup_true_lang-C8M3wNNH.js} +1 -1
  68. package/dist-cli-web/assets/{RelationshipGalaxyCanvas-Cod1JX9m.js → RelationshipGalaxyCanvas-CDhljGyJ.js} +3 -3
  69. package/dist-cli-web/assets/{RelationshipGalaxyThreeCanvas-CkefzeFJ.js → RelationshipGalaxyThreeCanvas-BP8fsvvf.js} +1 -1
  70. package/dist-cli-web/assets/{RenderTargetSystem-SuQ7cbze.js → RenderTargetSystem-D76QrDT_.js} +1 -1
  71. package/dist-cli-web/assets/{RovingFocusItem-psoFYxrC.js → RovingFocusItem-BJMUQ5DJ.js} +1 -1
  72. package/dist-cli-web/assets/{ScreenCaptureModal-D4r9ixKh.js → ScreenCaptureModal-DkX4z-M1.js} +1 -1
  73. package/dist-cli-web/assets/SectionTabs.vue_vue_type_script_setup_true_lang-qFhJO5B0.js +1 -0
  74. package/dist-cli-web/assets/Select-B5oJc5y1.js +1 -0
  75. package/dist-cli-web/assets/SettingsModal-BO-QKQ2h.js +2 -0
  76. package/dist-cli-web/assets/{StorageTab-DhSJ-0Ir.js → StorageTab-CPPXXaRm.js} +1 -1
  77. package/dist-cli-web/assets/Switch-CDk3LZ4_.js +1 -0
  78. package/dist-cli-web/assets/Tabs-BMq9wODW.js +1 -0
  79. package/dist-cli-web/assets/{Tabs-Bnm_Q7yW.js → Tabs-DqWTBV8x.js} +1 -1
  80. package/dist-cli-web/assets/ThemeCard.vue_vue_type_script_setup_true_lang-D2outEOV.js +1 -0
  81. package/dist-cli-web/assets/{TimeSelect.vue_vue_type_script_setup_true_lang-Cjz8Wpg-.js → TimeSelect.vue_vue_type_script_setup_true_lang-BcflxP_U.js} +1 -1
  82. package/dist-cli-web/assets/{VisuallyHiddenInput-Bo_XwaLu.js → VisuallyHiddenInput-BAFpkxMI.js} +1 -1
  83. package/dist-cli-web/assets/{WebGLRenderer-D1x9WZRj.js → WebGLRenderer-DjCPvR_O.js} +1 -1
  84. package/dist-cli-web/assets/{WebGPURenderer-37Nw-tLm.js → WebGPURenderer-C2B_u03z.js} +1 -1
  85. package/dist-cli-web/assets/aiChat--CR4g2M7.js +8 -0
  86. package/dist-cli-web/assets/base-F6s0vTrr.js +1 -0
  87. package/dist-cli-web/assets/{browserAll-CWrz_-4U.js → browserAll-DiUAZg4L.js} +1 -1
  88. package/dist-cli-web/assets/chatMessages-BGRbSlvD.css +1 -0
  89. package/dist-cli-web/assets/chatMessages-Bd33SSXI.js +147 -0
  90. package/dist-cli-web/assets/cli-web-DoibEdj2.js +1 -0
  91. package/dist-cli-web/assets/{fetch-CkXgOxcu.js → fetch-4nh1LaVF.js} +3 -3
  92. package/dist-cli-web/assets/fetch-7lUvXbhU.js +1 -0
  93. package/dist-cli-web/assets/{fetch-CFpLXWTe.js → fetch-BEaW1j5H.js} +1 -1
  94. package/dist-cli-web/assets/{fetch-CgA1peJD.js → fetch-B_YFABxI.js} +1 -1
  95. package/dist-cli-web/assets/{fetch-BGmCCyzz.js → fetch-BeX69kpS.js} +1 -1
  96. package/dist-cli-web/assets/{fetch-Du-wU0OO.js → fetch-CRocA-4C.js} +1 -1
  97. package/dist-cli-web/assets/{fetch-DPSWt6yX.js → fetch-CXM-cjDS.js} +1 -1
  98. package/dist-cli-web/assets/{fetch-qd2FgBWQ.js → fetch-CXqeAbnY.js} +1 -1
  99. package/dist-cli-web/assets/{fetch-6pcVxB9h.js → fetch-CxVcHNid.js} +1 -1
  100. package/dist-cli-web/assets/fetch-DBpDMy29.js +1 -0
  101. package/dist-cli-web/assets/{fetch-Gu4qQjUB.js → fetch-DKBBS9Op.js} +1 -1
  102. package/dist-cli-web/assets/{fetch-DZ6OF-xW.js → fetch-epFXmPIQ.js} +1 -1
  103. package/dist-cli-web/assets/{host-D8zlA62K.js → host-C4rU8pKA.js} +1 -1
  104. package/dist-cli-web/assets/{host-CWsAWKgy.js → host-CtSqR_Zm.js} +1 -1
  105. package/dist-cli-web/assets/{index-Dy0fRMDf.js → index-4DVZ2g0M.js} +10 -10
  106. package/dist-cli-web/assets/index-B1oj9KDv.js +135 -0
  107. package/dist-cli-web/assets/index-BFH1j_R9.js +1 -0
  108. package/dist-cli-web/assets/index-BZpR015e.css +1 -0
  109. package/dist-cli-web/assets/index-BgelKQTW.css +1 -0
  110. package/dist-cli-web/assets/{index-v6DlL4ue.js → index-BvMAw3Zd.js} +1 -1
  111. package/dist-cli-web/assets/index-C1A1FwpO.css +1 -0
  112. package/dist-cli-web/assets/index-CIIyg_o9.css +1 -0
  113. package/dist-cli-web/assets/index-CaYtkONV.js +64 -0
  114. package/dist-cli-web/assets/index-CuCQ1d9f.js +1 -0
  115. package/dist-cli-web/assets/index-D3Hyjv4e.js +137 -0
  116. package/dist-cli-web/assets/index-D8cHMqV-.js +2 -0
  117. package/dist-cli-web/assets/index-DlHuILT_.js +1 -0
  118. package/dist-cli-web/assets/index-R4LqAnx9.js +2 -0
  119. package/dist-cli-web/assets/index-_m1mf1jm.js +1 -0
  120. package/dist-cli-web/assets/{index-a7CT8DQm.js → index-ekvsNmfe.js} +1 -1
  121. package/dist-cli-web/assets/index-mXe1LssU.js +1 -0
  122. package/dist-cli-web/assets/index-mbLXPIyC.js +1 -0
  123. package/dist-cli-web/assets/{people-page-header-Czt9e1jv.js → people-page-header-BbYSSpsO.js} +1 -1
  124. package/dist-cli-web/assets/{prompt-DGazz143.js → prompt-C-ofJ7t_.js} +1 -1
  125. package/dist-cli-web/assets/{semantic-index-config-builder-BkFHzIUy.js → semantic-index-config-builder-D3TYVYC-.js} +1 -1
  126. package/dist-cli-web/assets/service-BYOUkk7V.js +1 -0
  127. package/dist-cli-web/assets/{service-CAp0YJoS.js → service-CppETV4a.js} +1 -1
  128. package/dist-cli-web/assets/service-tEx-5LUL.js +1 -0
  129. package/dist-cli-web/assets/useFormControl-CrWi_6Hn.js +1 -0
  130. package/dist-cli-web/assets/useTable-Clk7ecq-.js +1 -0
  131. package/dist-cli-web/assets/{useToast-YAHDkKDN.js → useToast-B5LaA6c-.js} +1 -1
  132. package/dist-cli-web/assets/{vendor-echarts-hTLhTs52.js → vendor-echarts-C9ugTmum.js} +1 -1
  133. package/dist-cli-web/assets/{vendor-echarts-wordcloud-B8CF_NgP.js → vendor-echarts-wordcloud-DNiU8Psq.js} +1 -1
  134. package/dist-cli-web/assets/{webworkerAll-CvSp2Y8j.js → webworkerAll-CyA4b4LT.js} +1 -1
  135. package/dist-cli-web/index.html +2 -2
  136. package/package.json +3 -3
  137. package/dist/chunk-6E46U4H2.mjs +0 -41
  138. package/dist/chunk-6E46U4H2.mjs.map +0 -1
  139. package/dist/chunk-6EZPD3XJ.mjs.map +0 -1
  140. package/dist/chunk-HWIXK7SU.mjs.map +0 -1
  141. package/dist/chunk-TJ3NOBVI.mjs.map +0 -1
  142. package/dist/chunk-TRGR3KKJ.mjs.map +0 -1
  143. package/dist/chunk-VREVDZ4Q.mjs.map +0 -1
  144. package/dist/chunk-VUYWUHWW.mjs.map +0 -1
  145. package/dist/chunk-WJQOXOMR.mjs.map +0 -1
  146. package/dist/chunk-WRBFV2GX.mjs.map +0 -1
  147. package/dist/chunk-YUH3H3QW.mjs.map +0 -1
  148. package/dist-cli-web/assets/AISettingsTab-VgI7PiJd.js +0 -1
  149. package/dist-cli-web/assets/ActionToolsPanel-BTGgwXVD.css +0 -1
  150. package/dist-cli-web/assets/ActionToolsPanel.vue_vue_type_script_setup_true_lang-a7RMjjve.js +0 -112
  151. package/dist-cli-web/assets/ApiSettingsTab-Co3LWf1f.js +0 -2
  152. package/dist-cli-web/assets/BatchManageTab-2LrckmQm.js +0 -1
  153. package/dist-cli-web/assets/ChatRecordDrawer-DRhztqLG.js +0 -1
  154. package/dist-cli-web/assets/Checkbox-EfpQmv4A.js +0 -1
  155. package/dist-cli-web/assets/DataDirCleanupNotice-BYIiR58J.js +0 -1
  156. package/dist-cli-web/assets/EChart.vue_vue_type_script_setup_true_lang-DryMSoCz.js +0 -1
  157. package/dist-cli-web/assets/EChartBar.vue_vue_type_script_setup_true_lang-BdFW-hvt.js +0 -1
  158. package/dist-cli-web/assets/EChartLine.vue_vue_type_script_setup_true_lang-C69Kdw9X.js +0 -1
  159. package/dist-cli-web/assets/EChartWordcloud-DM7UEHdK.js +0 -1
  160. package/dist-cli-web/assets/GlobalTaskBar-BZS_h0zC.js +0 -1
  161. package/dist-cli-web/assets/GlobalTaskBar-COW_uBX6.css +0 -1
  162. package/dist-cli-web/assets/GroupRelationshipGalaxyView--WIaHx_F.js +0 -1
  163. package/dist-cli-web/assets/Label-CIuDXyeM.js +0 -1
  164. package/dist-cli-web/assets/LoadingState.vue_vue_type_script_setup_true_lang-B_7VHxTx.js +0 -1
  165. package/dist-cli-web/assets/MessageExportModal-BQsIpyxv.js +0 -1
  166. package/dist-cli-web/assets/PageHeader-DxhQHF_0.js +0 -1
  167. package/dist-cli-web/assets/PageHeader-XIXMTomn.css +0 -1
  168. package/dist-cli-web/assets/SectionTabs.vue_vue_type_script_setup_true_lang-v_7aRBgM.js +0 -1
  169. package/dist-cli-web/assets/Select-CxurgslB.js +0 -1
  170. package/dist-cli-web/assets/SettingsModal-DBZucuf6.js +0 -2
  171. package/dist-cli-web/assets/Switch-3D81G6uV.js +0 -1
  172. package/dist-cli-web/assets/Tabs-DB603EEu.js +0 -1
  173. package/dist-cli-web/assets/ThemeCard.vue_vue_type_script_setup_true_lang-BDTdkH5i.js +0 -1
  174. package/dist-cli-web/assets/aiChat-BCzYQeZq.js +0 -8
  175. package/dist-cli-web/assets/cli-web-C-8N0CJh.js +0 -1
  176. package/dist-cli-web/assets/fetch-B69OkB6B.js +0 -1
  177. package/dist-cli-web/assets/fetch-z9M9FcIC.js +0 -1
  178. package/dist-cli-web/assets/index-BGd4ZfhO.js +0 -2
  179. package/dist-cli-web/assets/index-BYZF1ngN.js +0 -1
  180. package/dist-cli-web/assets/index-BcuwlCin.css +0 -1
  181. package/dist-cli-web/assets/index-BnaLj2dx.css +0 -1
  182. package/dist-cli-web/assets/index-Bq5q3kSU.js +0 -36
  183. package/dist-cli-web/assets/index-CPR3jdC2.js +0 -137
  184. package/dist-cli-web/assets/index-D3AjvaOX.js +0 -1
  185. package/dist-cli-web/assets/index-DAitScUA.js +0 -1
  186. package/dist-cli-web/assets/index-DBSMWAJ0.js +0 -1
  187. package/dist-cli-web/assets/index-DTn9htw-.js +0 -64
  188. package/dist-cli-web/assets/index-DV_rWxcH.js +0 -1
  189. package/dist-cli-web/assets/index-DxhAGqYM.css +0 -1
  190. package/dist-cli-web/assets/index-I0mIcDpE.css +0 -1
  191. package/dist-cli-web/assets/index-onwNShRw.js +0 -2
  192. package/dist-cli-web/assets/service-BMqwB74f.js +0 -1
  193. package/dist-cli-web/assets/service-CUQ8iHdS.js +0 -1
  194. package/dist-cli-web/assets/useFormControl-DcSMUc2d.js +0 -1
  195. package/dist-cli-web/assets/useTable-Clmq3sge.js +0 -1
  196. /package/dist/{chunk-TWH422HC.mjs.map → chunk-MMTEGUQA.mjs.map} +0 -0
  197. /package/dist/{chunk-CH5YAZ4Q.mjs.map → chunk-PDQV4RUA.mjs.map} +0 -0
  198. /package/dist/{http-237XYNRT.mjs.map → http-LPFPVTBC.mjs.map} +0 -0
  199. /package/dist/{import-R2E2TFAK.mjs.map → import-T4WX2ZJL.mjs.map} +0 -0
  200. /package/dist/{mcp-BED4AARV.mjs.map → mcp-SMF3NWIN.mjs.map} +0 -0
  201. /package/dist/{src-AYMALWU5.mjs.map → src-EGLLMTAU.mjs.map} +0 -0
  202. /package/dist/{stream-import-RXNSOOYH.mjs.map → stream-import-2BXJTTCE.mjs.map} +0 -0
  203. /package/dist/{worker-runtime-JGAZU7MC.mjs.map → worker-runtime-RDLSPXFT.mjs.map} +0 -0
@@ -1,36 +0,0 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/fetch-CFpLXWTe.js","assets/vendor-snapdom--nZvo8Sg.js","assets/cli-web-C-8N0CJh.js","assets/fetch-Du-wU0OO.js","assets/fetch-6pcVxB9h.js","assets/fetch-CkXgOxcu.js","assets/fetch-qd2FgBWQ.js","assets/fetch-z9M9FcIC.js","assets/fetch-DZ6OF-xW.js","assets/fetch-CgA1peJD.js","assets/fetch-B69OkB6B.js","assets/fetch-DPSWt6yX.js","assets/fetch-BGmCCyzz.js","assets/fetch-Gu4qQjUB.js","assets/DataDirCleanupNotice-BYIiR58J.js","assets/service-CAp0YJoS.js","assets/ScreenCaptureModal-D4r9ixKh.js","assets/SettingsModal-DBZucuf6.js","assets/Tabs-DB603EEu.js","assets/RovingFocusItem-psoFYxrC.js","assets/Switch-3D81G6uV.js","assets/Label-CIuDXyeM.js","assets/useFormControl-DcSMUc2d.js","assets/VisuallyHiddenInput-Bo_XwaLu.js","assets/Tabs-Bnm_Q7yW.js","assets/prompt-DGazz143.js","assets/PageTabs.vue_vue_type_script_setup_true_lang-Cgungbjl.js","assets/SettingsModal-BFkxzo0Y.css","assets/ChatRecordDrawer-DRhztqLG.js","assets/ChatRecordWorkspace-DqUI4QiU.js","assets/useToast-YAHDkKDN.js","assets/DatePicker.vue_vue_type_script_setup_true_lang-sPDoPzZ9.js","assets/clamp-jFYhBC76.js","assets/ChatRecordWorkspace-D_oJMtqh.css","assets/GlobalTaskBar-BZS_h0zC.js","assets/aiChat-BCzYQeZq.js","assets/chatlabSiteLocale-CrCNb8QP.js","assets/GlobalTaskBar-COW_uBX6.css","assets/DebugToolsPanel-BIHA6jw4.js","assets/index-BYZF1ngN.js","assets/LoadingState.vue_vue_type_script_setup_true_lang-B_7VHxTx.js","assets/service-BMqwB74f.js","assets/EChartBar.vue_vue_type_script_setup_true_lang-BdFW-hvt.js","assets/EChart.vue_vue_type_script_setup_true_lang-DryMSoCz.js","assets/vendor-echarts-hTLhTs52.js","assets/vendor-zrender-D8psf1AA.js","assets/ThemeCard.vue_vue_type_script_setup_true_lang-BDTdkH5i.js","assets/vendor-echarts-wordcloud-B8CF_NgP.js","assets/index-Dz_ddyZS.css","assets/host-CWsAWKgy.js","assets/index-D3AjvaOX.js","assets/EChartLine.vue_vue_type_script_setup_true_lang-C69Kdw9X.js","assets/service-CUQ8iHdS.js","assets/host-D8zlA62K.js","assets/index-a7CT8DQm.js","assets/Checkbox-EfpQmv4A.js","assets/index-CPR3jdC2.js","assets/Alert-D-egBWcb.js","assets/index-Dy0fRMDf.js","assets/index-CxGtGxLW.css","assets/index-DTn9htw-.js","assets/ActionToolsPanel.vue_vue_type_script_setup_true_lang-a7RMjjve.js","assets/SectionTabs.vue_vue_type_script_setup_true_lang-v_7aRBgM.js","assets/Select-CxurgslB.js","assets/semantic-index-config-builder-BkFHzIUy.js","assets/TimeSelect.vue_vue_type_script_setup_true_lang-Cjz8Wpg-.js","assets/useTable-Clmq3sge.js","assets/PageHeader-DxhQHF_0.js","assets/PageHeader-XIXMTomn.css","assets/ActionToolsPanel-BTGgwXVD.css","assets/index-BcuwlCin.css","assets/index-onwNShRw.js","assets/index-I0mIcDpE.css","assets/index-DBSMWAJ0.js","assets/index-BnaLj2dx.css","assets/index-v6DlL4ue.js","assets/index-DV_rWxcH.js","assets/people-page-header-Czt9e1jv.js","assets/index-BfO_LpDv.css","assets/index-DAitScUA.js","assets/index-ByUaiVQK.css","assets/index-BGd4ZfhO.js","assets/relationship-galaxy-connections-Cg4G5yYE.js"])))=>i.map(i=>d[i]);
2
- import{N as N5}from"./vendor-snapdom--nZvo8Sg.js";(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const r of document.querySelectorAll('link[rel="modulepreload"]'))a(r);new MutationObserver(r=>{for(const o of r)if(o.type==="childList")for(const s of o.addedNodes)s.tagName==="LINK"&&s.rel==="modulepreload"&&a(s)}).observe(document,{childList:!0,subtree:!0});function n(r){const o={};return r.integrity&&(o.integrity=r.integrity),r.referrerPolicy&&(o.referrerPolicy=r.referrerPolicy),r.crossOrigin==="use-credentials"?o.credentials="include":r.crossOrigin==="anonymous"?o.credentials="omit":o.credentials="same-origin",o}function a(r){if(r.ep)return;r.ep=!0;const o=n(r);fetch(r.href,o)}})();function $f(e){const t=Object.create(null);for(const n of e.split(","))t[n]=1;return n=>n in t}const tt={},Ao=[],ra=()=>{},ty=()=>!1,bc=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&(e.charCodeAt(2)>122||e.charCodeAt(2)<97),Rf=e=>e.startsWith("onUpdate:"),Rt=Object.assign,Lf=(e,t)=>{const n=e.indexOf(t);n>-1&&e.splice(n,1)},F5=Object.prototype.hasOwnProperty,lt=(e,t)=>F5.call(e,t),Ne=Array.isArray,Po=e=>wi(e)==="[object Map]",wc=e=>wi(e)==="[object Set]",ah=e=>wi(e)==="[object Date]",Be=e=>typeof e=="function",_t=e=>typeof e=="string",zn=e=>typeof e=="symbol",ct=e=>e!==null&&typeof e=="object",ny=e=>(ct(e)||Be(e))&&Be(e.then)&&Be(e.catch),ay=Object.prototype.toString,wi=e=>ay.call(e),q5=e=>wi(e).slice(8,-1),ry=e=>wi(e)==="[object Object]",_c=e=>_t(e)&&e!=="NaN"&&e[0]!=="-"&&""+parseInt(e,10)===e,Ls=$f(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),kc=e=>{const t=Object.create(null);return(n=>t[n]||(t[n]=e(n)))},B5=/-\w/g,pn=kc(e=>e.replace(B5,t=>t.slice(1).toUpperCase())),H5=/\B([A-Z])/g,Wa=kc(e=>e.replace(H5,"-$1").toLowerCase()),Cc=kc(e=>e.charAt(0).toUpperCase()+e.slice(1)),Os=kc(e=>e?`on${Cc(e)}`:""),sn=(e,t)=>!Object.is(e,t),wl=(e,...t)=>{for(let n=0;n<e.length;n++)e[n](...t)},oy=(e,t,n,a=!1)=>{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,writable:a,value:n})},Of=e=>{const t=parseFloat(e);return isNaN(t)?e:t},V5=e=>{const t=_t(e)?Number(e):NaN;return isNaN(t)?e:t};let rh;const Sc=()=>rh||(rh=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{});function yn(e){if(Ne(e)){const t={};for(let n=0;n<e.length;n++){const a=e[n],r=_t(a)?U5(a):yn(a);if(r)for(const o in r)t[o]=r[o]}return t}else if(_t(e)||ct(e))return e}const z5=/;(?![^(]*\))/g,j5=/:([^]+)/,W5=/\/\*[^]*?\*\//g;function U5(e){const t={};return e.replace(W5,"").split(z5).forEach(n=>{if(n){const a=n.split(j5);a.length>1&&(t[a[0].trim()]=a[1].trim())}}),t}function Ae(e){let t="";if(_t(e))t=e;else if(Ne(e))for(let n=0;n<e.length;n++){const a=Ae(e[n]);a&&(t+=a+" ")}else if(ct(e))for(const n in e)e[n]&&(t+=n+" ");return t.trim()}function $e(e){if(!e)return null;let{class:t,style:n}=e;return t&&!_t(t)&&(e.class=Ae(t)),n&&(e.style=yn(n)),e}const G5="itemscope,allowfullscreen,formnovalidate,ismap,nomodule,novalidate,readonly",Y5=$f(G5);function sy(e){return!!e||e===""}function K5(e,t){if(e.length!==t.length)return!1;let n=!0;for(let a=0;n&&a<e.length;a++)n=xc(e[a],t[a]);return n}function xc(e,t){if(e===t)return!0;let n=ah(e),a=ah(t);if(n||a)return n&&a?e.getTime()===t.getTime():!1;if(n=zn(e),a=zn(t),n||a)return e===t;if(n=Ne(e),a=Ne(t),n||a)return n&&a?K5(e,t):!1;if(n=ct(e),a=ct(t),n||a){if(!n||!a)return!1;const r=Object.keys(e).length,o=Object.keys(t).length;if(r!==o)return!1;for(const s in e){const i=e.hasOwnProperty(s),l=t.hasOwnProperty(s);if(i&&!l||!i&&l||!xc(e[s],t[s]))return!1}}return String(e)===String(t)}function iy(e,t){return e.findIndex(n=>xc(n,t))}const ly=e=>!!(e&&e.__v_isRef===!0),Me=e=>_t(e)?e:e==null?"":Ne(e)||ct(e)&&(e.toString===ay||!Be(e.toString))?ly(e)?Me(e.value):JSON.stringify(e,cy,2):String(e),cy=(e,t)=>ly(t)?cy(e,t.value):Po(t)?{[`Map(${t.size})`]:[...t.entries()].reduce((n,[a,r],o)=>(n[bu(a,o)+" =>"]=r,n),{})}:wc(t)?{[`Set(${t.size})`]:[...t.values()].map(n=>bu(n))}:zn(t)?bu(t):ct(t)&&!Ne(t)&&!ry(t)?String(t):t,bu=(e,t="")=>{var n;return zn(e)?`Symbol(${(n=e.description)!=null?n:t})`:e};let Jt;class uy{constructor(t=!1){this.detached=t,this._active=!0,this._on=0,this.effects=[],this.cleanups=[],this._isPaused=!1,this.parent=Jt,!t&&Jt&&(this.index=(Jt.scopes||(Jt.scopes=[])).push(this)-1)}get active(){return this._active}pause(){if(this._active){this._isPaused=!0;let t,n;if(this.scopes)for(t=0,n=this.scopes.length;t<n;t++)this.scopes[t].pause();for(t=0,n=this.effects.length;t<n;t++)this.effects[t].pause()}}resume(){if(this._active&&this._isPaused){this._isPaused=!1;let t,n;if(this.scopes)for(t=0,n=this.scopes.length;t<n;t++)this.scopes[t].resume();for(t=0,n=this.effects.length;t<n;t++)this.effects[t].resume()}}run(t){if(this._active){const n=Jt;try{return Jt=this,t()}finally{Jt=n}}}on(){++this._on===1&&(this.prevScope=Jt,Jt=this)}off(){this._on>0&&--this._on===0&&(Jt=this.prevScope,this.prevScope=void 0)}stop(t){if(this._active){this._active=!1;let n,a;for(n=0,a=this.effects.length;n<a;n++)this.effects[n].stop();for(this.effects.length=0,n=0,a=this.cleanups.length;n<a;n++)this.cleanups[n]();if(this.cleanups.length=0,this.scopes){for(n=0,a=this.scopes.length;n<a;n++)this.scopes[n].stop(!0);this.scopes.length=0}if(!this.detached&&this.parent&&!t){const r=this.parent.scopes.pop();r&&r!==this&&(this.parent.scopes[this.index]=r,r.index=this.index)}this.parent=void 0}}}function _i(e){return new uy(e)}function es(){return Jt}function ts(e,t=!1){Jt&&Jt.cleanups.push(e)}let ht;const wu=new WeakSet;class dy{constructor(t){this.fn=t,this.deps=void 0,this.depsTail=void 0,this.flags=5,this.next=void 0,this.cleanup=void 0,this.scheduler=void 0,Jt&&Jt.active&&Jt.effects.push(this)}pause(){this.flags|=64}resume(){this.flags&64&&(this.flags&=-65,wu.has(this)&&(wu.delete(this),this.trigger()))}notify(){this.flags&2&&!(this.flags&32)||this.flags&8||py(this)}run(){if(!(this.flags&1))return this.fn();this.flags|=2,oh(this),hy(this);const t=ht,n=Vn;ht=this,Vn=!0;try{return this.fn()}finally{my(this),ht=t,Vn=n,this.flags&=-3}}stop(){if(this.flags&1){for(let t=this.deps;t;t=t.nextDep)qf(t);this.deps=this.depsTail=void 0,oh(this),this.onStop&&this.onStop(),this.flags&=-2}}trigger(){this.flags&64?wu.add(this):this.scheduler?this.scheduler():this.runIfDirty()}runIfDirty(){gd(this)&&this.run()}get dirty(){return gd(this)}}let fy=0,Ns,Fs;function py(e,t=!1){if(e.flags|=8,t){e.next=Fs,Fs=e;return}e.next=Ns,Ns=e}function Nf(){fy++}function Ff(){if(--fy>0)return;if(Fs){let t=Fs;for(Fs=void 0;t;){const n=t.next;t.next=void 0,t.flags&=-9,t=n}}let e;for(;Ns;){let t=Ns;for(Ns=void 0;t;){const n=t.next;if(t.next=void 0,t.flags&=-9,t.flags&1)try{t.trigger()}catch(a){e||(e=a)}t=n}}if(e)throw e}function hy(e){for(let t=e.deps;t;t=t.nextDep)t.version=-1,t.prevActiveLink=t.dep.activeLink,t.dep.activeLink=t}function my(e){let t,n=e.depsTail,a=n;for(;a;){const r=a.prevDep;a.version===-1?(a===n&&(n=r),qf(a),X5(a)):t=a,a.dep.activeLink=a.prevActiveLink,a.prevActiveLink=void 0,a=r}e.deps=t,e.depsTail=n}function gd(e){for(let t=e.deps;t;t=t.nextDep)if(t.dep.version!==t.version||t.dep.computed&&(gy(t.dep.computed)||t.dep.version!==t.version))return!0;return!!e._dirty}function gy(e){if(e.flags&4&&!(e.flags&16)||(e.flags&=-17,e.globalVersion===Ks)||(e.globalVersion=Ks,!e.isSSR&&e.flags&128&&(!e.deps&&!e._dirty||!gd(e))))return;e.flags|=2;const t=e.dep,n=ht,a=Vn;ht=e,Vn=!0;try{hy(e);const r=e.fn(e._value);(t.version===0||sn(r,e._value))&&(e.flags|=128,e._value=r,t.version++)}catch(r){throw t.version++,r}finally{ht=n,Vn=a,my(e),e.flags&=-3}}function qf(e,t=!1){const{dep:n,prevSub:a,nextSub:r}=e;if(a&&(a.nextSub=r,e.prevSub=void 0),r&&(r.prevSub=a,e.nextSub=void 0),n.subs===e&&(n.subs=a,!a&&n.computed)){n.computed.flags&=-5;for(let o=n.computed.deps;o;o=o.nextDep)qf(o,!0)}!t&&!--n.sc&&n.map&&n.map.delete(n.key)}function X5(e){const{prevDep:t,nextDep:n}=e;t&&(t.nextDep=n,e.prevDep=void 0),n&&(n.prevDep=t,e.nextDep=void 0)}let Vn=!0;const vy=[];function qa(){vy.push(Vn),Vn=!1}function Ba(){const e=vy.pop();Vn=e===void 0?!0:e}function oh(e){const{cleanup:t}=e;if(e.cleanup=void 0,t){const n=ht;ht=void 0;try{t()}finally{ht=n}}}let Ks=0;class J5{constructor(t,n){this.sub=t,this.dep=n,this.version=n.version,this.nextDep=this.prevDep=this.nextSub=this.prevSub=this.prevActiveLink=void 0}}class Ac{constructor(t){this.computed=t,this.version=0,this.activeLink=void 0,this.subs=void 0,this.map=void 0,this.key=void 0,this.sc=0,this.__v_skip=!0}track(t){if(!ht||!Vn||ht===this.computed)return;let n=this.activeLink;if(n===void 0||n.sub!==ht)n=this.activeLink=new J5(ht,this),ht.deps?(n.prevDep=ht.depsTail,ht.depsTail.nextDep=n,ht.depsTail=n):ht.deps=ht.depsTail=n,yy(n);else if(n.version===-1&&(n.version=this.version,n.nextDep)){const a=n.nextDep;a.prevDep=n.prevDep,n.prevDep&&(n.prevDep.nextDep=a),n.prevDep=ht.depsTail,n.nextDep=void 0,ht.depsTail.nextDep=n,ht.depsTail=n,ht.deps===n&&(ht.deps=a)}return n}trigger(t){this.version++,Ks++,this.notify(t)}notify(t){Nf();try{for(let n=this.subs;n;n=n.prevSub)n.sub.notify()&&n.sub.dep.notify()}finally{Ff()}}}function yy(e){if(e.dep.sc++,e.sub.flags&4){const t=e.dep.computed;if(t&&!e.dep.subs){t.flags|=20;for(let a=t.deps;a;a=a.nextDep)yy(a)}const n=e.dep.subs;n!==e&&(e.prevSub=n,n&&(n.nextSub=e)),e.dep.subs=e}}const Hl=new WeakMap,Kr=Symbol(""),vd=Symbol(""),Xs=Symbol("");function Zt(e,t,n){if(Vn&&ht){let a=Hl.get(e);a||Hl.set(e,a=new Map);let r=a.get(n);r||(a.set(n,r=new Ac),r.map=a,r.key=n),r.track()}}function Pa(e,t,n,a,r,o){const s=Hl.get(e);if(!s){Ks++;return}const i=l=>{l&&l.trigger()};if(Nf(),t==="clear")s.forEach(i);else{const l=Ne(e),c=l&&_c(n);if(l&&n==="length"){const u=Number(a);s.forEach((d,h)=>{(h==="length"||h===Xs||!zn(h)&&h>=u)&&i(d)})}else switch((n!==void 0||s.has(void 0))&&i(s.get(n)),c&&i(s.get(Xs)),t){case"add":l?c&&i(s.get("length")):(i(s.get(Kr)),Po(e)&&i(s.get(vd)));break;case"delete":l||(i(s.get(Kr)),Po(e)&&i(s.get(vd)));break;case"set":Po(e)&&i(s.get(Kr));break}}Ff()}function Q5(e,t){const n=Hl.get(e);return n&&n.get(t)}function co(e){const t=Ze(e);return t===e?t:(Zt(t,"iterate",Xs),xn(e)?t:t.map(jn))}function Pc(e){return Zt(e=Ze(e),"iterate",Xs),e}function ir(e,t){return Ha(e)?No(oa(e)?jn(t):t):jn(t)}const Z5={__proto__:null,[Symbol.iterator](){return _u(this,Symbol.iterator,e=>ir(this,e))},concat(...e){return co(this).concat(...e.map(t=>Ne(t)?co(t):t))},entries(){return _u(this,"entries",e=>(e[1]=ir(this,e[1]),e))},every(e,t){return ga(this,"every",e,t,void 0,arguments)},filter(e,t){return ga(this,"filter",e,t,n=>n.map(a=>ir(this,a)),arguments)},find(e,t){return ga(this,"find",e,t,n=>ir(this,n),arguments)},findIndex(e,t){return ga(this,"findIndex",e,t,void 0,arguments)},findLast(e,t){return ga(this,"findLast",e,t,n=>ir(this,n),arguments)},findLastIndex(e,t){return ga(this,"findLastIndex",e,t,void 0,arguments)},forEach(e,t){return ga(this,"forEach",e,t,void 0,arguments)},includes(...e){return ku(this,"includes",e)},indexOf(...e){return ku(this,"indexOf",e)},join(e){return co(this).join(e)},lastIndexOf(...e){return ku(this,"lastIndexOf",e)},map(e,t){return ga(this,"map",e,t,void 0,arguments)},pop(){return _s(this,"pop")},push(...e){return _s(this,"push",e)},reduce(e,...t){return sh(this,"reduce",e,t)},reduceRight(e,...t){return sh(this,"reduceRight",e,t)},shift(){return _s(this,"shift")},some(e,t){return ga(this,"some",e,t,void 0,arguments)},splice(...e){return _s(this,"splice",e)},toReversed(){return co(this).toReversed()},toSorted(e){return co(this).toSorted(e)},toSpliced(...e){return co(this).toSpliced(...e)},unshift(...e){return _s(this,"unshift",e)},values(){return _u(this,"values",e=>ir(this,e))}};function _u(e,t,n){const a=Pc(e),r=a[t]();return a!==e&&!xn(e)&&(r._next=r.next,r.next=()=>{const o=r._next();return o.done||(o.value=n(o.value)),o}),r}const ew=Array.prototype;function ga(e,t,n,a,r,o){const s=Pc(e),i=s!==e&&!xn(e),l=s[t];if(l!==ew[t]){const d=l.apply(e,o);return i?jn(d):d}let c=n;s!==e&&(i?c=function(d,h){return n.call(this,ir(e,d),h,e)}:n.length>2&&(c=function(d,h){return n.call(this,d,h,e)}));const u=l.call(s,c,a);return i&&r?r(u):u}function sh(e,t,n,a){const r=Pc(e);let o=n;return r!==e&&(xn(e)?n.length>3&&(o=function(s,i,l){return n.call(this,s,i,l,e)}):o=function(s,i,l){return n.call(this,s,ir(e,i),l,e)}),r[t](o,...a)}function ku(e,t,n){const a=Ze(e);Zt(a,"iterate",Xs);const r=a[t](...n);return(r===-1||r===!1)&&Ic(n[0])?(n[0]=Ze(n[0]),a[t](...n)):r}function _s(e,t,n=[]){qa(),Nf();const a=Ze(e)[t].apply(e,n);return Ff(),Ba(),a}const tw=$f("__proto__,__v_isRef,__isVue"),by=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!=="arguments"&&e!=="caller").map(e=>Symbol[e]).filter(zn));function nw(e){zn(e)||(e=String(e));const t=Ze(this);return Zt(t,"has",e),t.hasOwnProperty(e)}class wy{constructor(t=!1,n=!1){this._isReadonly=t,this._isShallow=n}get(t,n,a){if(n==="__v_skip")return t.__v_skip;const r=this._isReadonly,o=this._isShallow;if(n==="__v_isReactive")return!r;if(n==="__v_isReadonly")return r;if(n==="__v_isShallow")return o;if(n==="__v_raw")return a===(r?o?Ay:xy:o?Sy:Cy).get(t)||Object.getPrototypeOf(t)===Object.getPrototypeOf(a)?t:void 0;const s=Ne(t);if(!r){let l;if(s&&(l=Z5[n]))return l;if(n==="hasOwnProperty")return nw}const i=Reflect.get(t,n,et(t)?t:a);if((zn(n)?by.has(n):tw(n))||(r||Zt(t,"get",n),o))return i;if(et(i)){const l=s&&_c(n)?i:i.value;return r&&ct(l)?br(l):l}return ct(i)?r?br(i):Rn(i):i}}class _y extends wy{constructor(t=!1){super(!1,t)}set(t,n,a,r){let o=t[n];const s=Ne(t)&&_c(n);if(!this._isShallow){const c=Ha(o);if(!xn(a)&&!Ha(a)&&(o=Ze(o),a=Ze(a)),!s&&et(o)&&!et(a))return c||(o.value=a),!0}const i=s?Number(n)<t.length:lt(t,n),l=Reflect.set(t,n,a,et(t)?t:r);return t===Ze(r)&&(i?sn(a,o)&&Pa(t,"set",n,a):Pa(t,"add",n,a)),l}deleteProperty(t,n){const a=lt(t,n);t[n];const r=Reflect.deleteProperty(t,n);return r&&a&&Pa(t,"delete",n,void 0),r}has(t,n){const a=Reflect.has(t,n);return(!zn(n)||!by.has(n))&&Zt(t,"has",n),a}ownKeys(t){return Zt(t,"iterate",Ne(t)?"length":Kr),Reflect.ownKeys(t)}}class ky extends wy{constructor(t=!1){super(!0,t)}set(t,n){return!0}deleteProperty(t,n){return!0}}const aw=new _y,rw=new ky,ow=new _y(!0),sw=new ky(!0),yd=e=>e,Vi=e=>Reflect.getPrototypeOf(e);function iw(e,t,n){return function(...a){const r=this.__v_raw,o=Ze(r),s=Po(o),i=e==="entries"||e===Symbol.iterator&&s,l=e==="keys"&&s,c=r[e](...a),u=n?yd:t?No:jn;return!t&&Zt(o,"iterate",l?vd:Kr),Rt(Object.create(c),{next(){const{value:d,done:h}=c.next();return h?{value:d,done:h}:{value:i?[u(d[0]),u(d[1])]:u(d),done:h}}})}}function zi(e){return function(...t){return e==="delete"?!1:e==="clear"?void 0:this}}function lw(e,t){const n={get(r){const o=this.__v_raw,s=Ze(o),i=Ze(r);e||(sn(r,i)&&Zt(s,"get",r),Zt(s,"get",i));const{has:l}=Vi(s),c=t?yd:e?No:jn;if(l.call(s,r))return c(o.get(r));if(l.call(s,i))return c(o.get(i));o!==s&&o.get(r)},get size(){const r=this.__v_raw;return!e&&Zt(Ze(r),"iterate",Kr),r.size},has(r){const o=this.__v_raw,s=Ze(o),i=Ze(r);return e||(sn(r,i)&&Zt(s,"has",r),Zt(s,"has",i)),r===i?o.has(r):o.has(r)||o.has(i)},forEach(r,o){const s=this,i=s.__v_raw,l=Ze(i),c=t?yd:e?No:jn;return!e&&Zt(l,"iterate",Kr),i.forEach((u,d)=>r.call(o,c(u),c(d),s))}};return Rt(n,e?{add:zi("add"),set:zi("set"),delete:zi("delete"),clear:zi("clear")}:{add(r){!t&&!xn(r)&&!Ha(r)&&(r=Ze(r));const o=Ze(this);return Vi(o).has.call(o,r)||(o.add(r),Pa(o,"add",r,r)),this},set(r,o){!t&&!xn(o)&&!Ha(o)&&(o=Ze(o));const s=Ze(this),{has:i,get:l}=Vi(s);let c=i.call(s,r);c||(r=Ze(r),c=i.call(s,r));const u=l.call(s,r);return s.set(r,o),c?sn(o,u)&&Pa(s,"set",r,o):Pa(s,"add",r,o),this},delete(r){const o=Ze(this),{has:s,get:i}=Vi(o);let l=s.call(o,r);l||(r=Ze(r),l=s.call(o,r)),i&&i.call(o,r);const c=o.delete(r);return l&&Pa(o,"delete",r,void 0),c},clear(){const r=Ze(this),o=r.size!==0,s=r.clear();return o&&Pa(r,"clear",void 0,void 0),s}}),["keys","values","entries",Symbol.iterator].forEach(r=>{n[r]=iw(r,e,t)}),n}function Mc(e,t){const n=lw(e,t);return(a,r,o)=>r==="__v_isReactive"?!e:r==="__v_isReadonly"?e:r==="__v_raw"?a:Reflect.get(lt(n,r)&&r in a?n:a,r,o)}const cw={get:Mc(!1,!1)},uw={get:Mc(!1,!0)},dw={get:Mc(!0,!1)},fw={get:Mc(!0,!0)},Cy=new WeakMap,Sy=new WeakMap,xy=new WeakMap,Ay=new WeakMap;function pw(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function hw(e){return e.__v_skip||!Object.isExtensible(e)?0:pw(q5(e))}function Rn(e){return Ha(e)?e:Tc(e,!1,aw,cw,Cy)}function Bf(e){return Tc(e,!1,ow,uw,Sy)}function br(e){return Tc(e,!0,rw,dw,xy)}function ea(e){return Tc(e,!0,sw,fw,Ay)}function Tc(e,t,n,a,r){if(!ct(e)||e.__v_raw&&!(t&&e.__v_isReactive))return e;const o=hw(e);if(o===0)return e;const s=r.get(e);if(s)return s;const i=new Proxy(e,o===2?a:n);return r.set(e,i),i}function oa(e){return Ha(e)?oa(e.__v_raw):!!(e&&e.__v_isReactive)}function Ha(e){return!!(e&&e.__v_isReadonly)}function xn(e){return!!(e&&e.__v_isShallow)}function Ic(e){return e?!!e.__v_raw:!1}function Ze(e){const t=e&&e.__v_raw;return t?Ze(t):e}function ki(e){return!lt(e,"__v_skip")&&Object.isExtensible(e)&&oy(e,"__v_skip",!0),e}const jn=e=>ct(e)?Rn(e):e,No=e=>ct(e)?br(e):e;function et(e){return e?e.__v_isRef===!0:!1}function V(e){return Py(e,!1)}function at(e){return Py(e,!0)}function Py(e,t){return et(e)?e:new mw(e,t)}class mw{constructor(t,n){this.dep=new Ac,this.__v_isRef=!0,this.__v_isShallow=!1,this._rawValue=n?t:Ze(t),this._value=n?t:jn(t),this.__v_isShallow=n}get value(){return this.dep.track(),this._value}set value(t){const n=this._rawValue,a=this.__v_isShallow||xn(t)||Ha(t);t=a?t:Ze(t),sn(t,n)&&(this._rawValue=t,this._value=a?t:jn(t),this.dep.trigger())}}function bd(e){e.dep&&e.dep.trigger()}function f(e){return et(e)?e.value:e}function He(e){return Be(e)?e():f(e)}const gw={get:(e,t,n)=>t==="__v_raw"?e:f(Reflect.get(e,t,n)),set:(e,t,n,a)=>{const r=e[t];return et(r)&&!et(n)?(r.value=n,!0):Reflect.set(e,t,n,a)}};function My(e){return oa(e)?e:new Proxy(e,gw)}class vw{constructor(t){this.__v_isRef=!0,this._value=void 0;const n=this.dep=new Ac,{get:a,set:r}=t(n.track.bind(n),n.trigger.bind(n));this._get=a,this._set=r}get value(){return this._value=this._get()}set value(t){this._set(t)}}function Ci(e){return new vw(e)}function kt(e){const t=Ne(e)?new Array(e.length):{};for(const n in e)t[n]=Ty(e,n);return t}class yw{constructor(t,n,a){this._object=t,this._key=n,this._defaultValue=a,this.__v_isRef=!0,this._value=void 0,this._raw=Ze(t);let r=!0,o=t;if(!Ne(t)||!_c(String(n)))do r=!Ic(o)||xn(o);while(r&&(o=o.__v_raw));this._shallow=r}get value(){let t=this._object[this._key];return this._shallow&&(t=f(t)),this._value=t===void 0?this._defaultValue:t}set value(t){if(this._shallow&&et(this._raw[this._key])){const n=this._object[this._key];if(et(n)){n.value=t;return}}this._object[this._key]=t}get dep(){return Q5(this._raw,this._key)}}class bw{constructor(t){this._getter=t,this.__v_isRef=!0,this.__v_isReadonly=!0,this._value=void 0}get value(){return this._value=this._getter()}}function It(e,t,n){return et(e)?e:Be(e)?new bw(e):ct(e)&&arguments.length>1?Ty(e,t,n):V(e)}function Ty(e,t,n){return new yw(e,t,n)}class ww{constructor(t,n,a){this.fn=t,this.setter=n,this._value=void 0,this.dep=new Ac(this),this.__v_isRef=!0,this.deps=void 0,this.depsTail=void 0,this.flags=16,this.globalVersion=Ks-1,this.next=void 0,this.effect=this,this.__v_isReadonly=!n,this.isSSR=a}notify(){if(this.flags|=16,!(this.flags&8)&&ht!==this)return py(this,!0),!0}get value(){const t=this.dep.track();return gy(this),t&&(t.version=this.dep.version),this._value}set value(t){this.setter&&this.setter(t)}}function _w(e,t,n=!1){let a,r;return Be(e)?a=e:(a=e.get,r=e.set),new ww(a,r,n)}const ji={},Vl=new WeakMap;let Fr;function kw(e,t=!1,n=Fr){if(n){let a=Vl.get(n);a||Vl.set(n,a=[]),a.push(e)}}function Cw(e,t,n=tt){const{immediate:a,deep:r,once:o,scheduler:s,augmentJob:i,call:l}=n,c=_=>r?_:xn(_)||r===!1||r===0?Ma(_,1):Ma(_);let u,d,h,p,m=!1,v=!1;if(et(e)?(d=()=>e.value,m=xn(e)):oa(e)?(d=()=>c(e),m=!0):Ne(e)?(v=!0,m=e.some(_=>oa(_)||xn(_)),d=()=>e.map(_=>{if(et(_))return _.value;if(oa(_))return c(_);if(Be(_))return l?l(_,2):_()})):Be(e)?t?d=l?()=>l(e,2):e:d=()=>{if(h){qa();try{h()}finally{Ba()}}const _=Fr;Fr=u;try{return l?l(e,3,[p]):e(p)}finally{Fr=_}}:d=ra,t&&r){const _=d,A=r===!0?1/0:r;d=()=>Ma(_(),A)}const y=es(),g=()=>{u.stop(),y&&y.active&&Lf(y.effects,u)};if(o&&t){const _=t;t=(...A)=>{_(...A),g()}}let b=v?new Array(e.length).fill(ji):ji;const w=_=>{if(!(!(u.flags&1)||!u.dirty&&!_))if(t){const A=u.run();if(r||m||(v?A.some((P,k)=>sn(P,b[k])):sn(A,b))){h&&h();const P=Fr;Fr=u;try{const k=[A,b===ji?void 0:v&&b[0]===ji?[]:b,p];b=A,l?l(t,3,k):t(...k)}finally{Fr=P}}}else u.run()};return i&&i(w),u=new dy(d),u.scheduler=s?()=>s(w,!1):w,p=_=>kw(_,!1,u),h=u.onStop=()=>{const _=Vl.get(u);if(_){if(l)l(_,4);else for(const A of _)A();Vl.delete(u)}},t?a?w(!0):b=u.run():s?s(w.bind(null,!0),!0):u.run(),g.pause=u.pause.bind(u),g.resume=u.resume.bind(u),g.stop=g,g}function Ma(e,t=1/0,n){if(t<=0||!ct(e)||e.__v_skip||(n=n||new Map,(n.get(e)||0)>=t))return e;if(n.set(e,t),t--,et(e))Ma(e.value,t,n);else if(Ne(e))for(let a=0;a<e.length;a++)Ma(e[a],t,n);else if(wc(e)||Po(e))e.forEach(a=>{Ma(a,t,n)});else if(ry(e)){for(const a in e)Ma(e[a],t,n);for(const a of Object.getOwnPropertySymbols(e))Object.prototype.propertyIsEnumerable.call(e,a)&&Ma(e[a],t,n)}return e}function Si(e,t,n,a){try{return a?e(...a):e()}catch(r){xi(r,t,n)}}function Wn(e,t,n,a){if(Be(e)){const r=Si(e,t,n,a);return r&&ny(r)&&r.catch(o=>{xi(o,t,n)}),r}if(Ne(e)){const r=[];for(let o=0;o<e.length;o++)r.push(Wn(e[o],t,n,a));return r}}function xi(e,t,n,a=!0){const r=t?t.vnode:null,{errorHandler:o,throwUnhandledErrorInProduction:s}=t&&t.appContext.config||tt;if(t){let i=t.parent;const l=t.proxy,c=`https://vuejs.org/error-reference/#runtime-${n}`;for(;i;){const u=i.ec;if(u){for(let d=0;d<u.length;d++)if(u[d](e,l,c)===!1)return}i=i.parent}if(o){qa(),Si(o,null,10,[e,l,c]),Ba();return}}Sw(e,n,r,a,s)}function Sw(e,t,n,a=!0,r=!1){if(r)throw e;console.error(e)}const ln=[];let Zn=-1;const Mo=[];let lr=null,go=0;const Iy=Promise.resolve();let zl=null;function Ve(e){const t=zl||Iy;return e?t.then(this?e.bind(this):e):t}function xw(e){let t=Zn+1,n=ln.length;for(;t<n;){const a=t+n>>>1,r=ln[a],o=Js(r);o<e||o===e&&r.flags&2?t=a+1:n=a}return t}function Hf(e){if(!(e.flags&1)){const t=Js(e),n=ln[ln.length-1];!n||!(e.flags&2)&&t>=Js(n)?ln.push(e):ln.splice(xw(t),0,e),e.flags|=1,Dy()}}function Dy(){zl||(zl=Iy.then($y))}function Aw(e){Ne(e)?Mo.push(...e):lr&&e.id===-1?lr.splice(go+1,0,e):e.flags&1||(Mo.push(e),e.flags|=1),Dy()}function ih(e,t,n=Zn+1){for(;n<ln.length;n++){const a=ln[n];if(a&&a.flags&2){if(e&&a.id!==e.uid)continue;ln.splice(n,1),n--,a.flags&4&&(a.flags&=-2),a(),a.flags&4||(a.flags&=-2)}}}function Ey(e){if(Mo.length){const t=[...new Set(Mo)].sort((n,a)=>Js(n)-Js(a));if(Mo.length=0,lr){lr.push(...t);return}for(lr=t,go=0;go<lr.length;go++){const n=lr[go];n.flags&4&&(n.flags&=-2),n.flags&8||n(),n.flags&=-2}lr=null,go=0}}const Js=e=>e.id==null?e.flags&2?-1:1/0:e.id;function $y(e){try{for(Zn=0;Zn<ln.length;Zn++){const t=ln[Zn];t&&!(t.flags&8)&&(t.flags&4&&(t.flags&=-2),Si(t,t.i,t.i?15:14),t.flags&4||(t.flags&=-2))}}finally{for(;Zn<ln.length;Zn++){const t=ln[Zn];t&&(t.flags&=-2)}Zn=-1,ln.length=0,Ey(),zl=null,(ln.length||Mo.length)&&$y()}}let Yt=null,Ry=null;function jl(e){const t=Yt;return Yt=e,Ry=e&&e.type.__scopeId||null,t}function E(e,t=Yt,n){if(!t||e._n)return e;const a=(...r)=>{a._d&&Gl(-1);const o=jl(t);let s;try{s=e(...r)}finally{jl(o),a._d&&Gl(1)}return s};return a._n=!0,a._c=!0,a._d=!0,a}function Zne(e,t){if(Yt===null)return e;const n=Rc(Yt),a=e.dirs||(e.dirs=[]);for(let r=0;r<t.length;r++){let[o,s,i,l=tt]=t[r];o&&(Be(o)&&(o={mounted:o,updated:o}),o.deep&&Ma(s),a.push({dir:o,instance:n,value:s,oldValue:void 0,arg:i,modifiers:l}))}return e}function Mr(e,t,n,a){const r=e.dirs,o=t&&t.dirs;for(let s=0;s<r.length;s++){const i=r[s];o&&(i.oldValue=o[s].value);let l=i.dir[a];l&&(qa(),Wn(l,n,8,[e.el,i,e,t]),Ba())}}function An(e,t){if(Gt){let n=Gt.provides;const a=Gt.parent&&Gt.parent.provides;a===n&&(n=Gt.provides=Object.create(a)),n[e]=t}}function rt(e,t,n=!1){const a=Mt();if(a||Xr){let r=Xr?Xr._context.provides:a?a.parent==null||a.ce?a.vnode.appContext&&a.vnode.appContext.provides:a.parent.provides:void 0;if(r&&e in r)return r[e];if(arguments.length>1)return n&&Be(t)?t.call(a&&a.proxy):t}}function ns(){return!!(Mt()||Xr)}const Pw=Symbol.for("v-scx"),Mw=()=>rt(Pw);function qt(e,t){return Ai(e,null,t)}function Ly(e,t){return Ai(e,null,{flush:"post"})}function Tw(e,t){return Ai(e,null,{flush:"sync"})}function Se(e,t,n){return Ai(e,t,n)}function Ai(e,t,n=tt){const{immediate:a,deep:r,flush:o,once:s}=n,i=Rt({},n),l=t&&a||!t&&o!=="post";let c;if(qo){if(o==="sync"){const p=Mw();c=p.__watcherHandles||(p.__watcherHandles=[])}else if(!l){const p=()=>{};return p.stop=ra,p.resume=ra,p.pause=ra,p}}const u=Gt;i.call=(p,m,v)=>Wn(p,u,m,v);let d=!1;o==="post"?i.scheduler=p=>{rn(p,u&&u.suspense)}:o!=="sync"&&(d=!0,i.scheduler=(p,m)=>{m?p():Hf(p)}),i.augmentJob=p=>{t&&(p.flags|=4),d&&(p.flags|=2,u&&(p.id=u.uid,p.i=u))};const h=Cw(e,t,i);return qo&&(c?c.push(h):l&&h()),h}function Iw(e,t,n){const a=this.proxy,r=_t(e)?e.includes(".")?Oy(a,e):()=>a[e]:e.bind(a,a);let o;Be(t)?o=t:(o=t.handler,n=t);const s=Ti(this),i=Ai(r,o.bind(a),n);return s(),i}function Oy(e,t){const n=t.split(".");return()=>{let a=e;for(let r=0;r<n.length&&a;r++)a=a[n[r]];return a}}const Ny=Symbol("_vte"),Fy=e=>e.__isTeleport,qs=e=>e&&(e.disabled||e.disabled===""),lh=e=>e&&(e.defer||e.defer===""),ch=e=>typeof SVGElement<"u"&&e instanceof SVGElement,uh=e=>typeof MathMLElement=="function"&&e instanceof MathMLElement,wd=(e,t)=>{const n=e&&e.to;return _t(n)?t?t(n):null:n},qy={name:"Teleport",__isTeleport:!0,process(e,t,n,a,r,o,s,i,l,c){const{mc:u,pc:d,pbc:h,o:{insert:p,querySelector:m,createText:v,createComment:y}}=c,g=qs(t.props);let{shapeFlag:b,children:w,dynamicChildren:_}=t;if(e==null){const A=t.el=v(""),P=t.anchor=v("");p(A,n,a),p(P,n,a);const k=(I,Y)=>{b&16&&u(w,I,Y,r,o,s,i,l)},T=()=>{const I=t.target=wd(t.props,m),Y=By(I,t,v,p);I&&(s!=="svg"&&ch(I)?s="svg":s!=="mathml"&&uh(I)&&(s="mathml"),r&&r.isCE&&(r.ce._teleportTargets||(r.ce._teleportTargets=new Set)).add(I),g||(k(I,Y),_l(t,!1)))};g&&(k(n,P),_l(t,!0)),lh(t.props)?(t.el.__isMounted=!1,rn(()=>{T(),delete t.el.__isMounted},o)):T()}else{if(lh(t.props)&&e.el.__isMounted===!1){rn(()=>{qy.process(e,t,n,a,r,o,s,i,l,c)},o);return}t.el=e.el,t.targetStart=e.targetStart;const A=t.anchor=e.anchor,P=t.target=e.target,k=t.targetAnchor=e.targetAnchor,T=qs(e.props),I=T?n:P,Y=T?A:k;if(s==="svg"||ch(P)?s="svg":(s==="mathml"||uh(P))&&(s="mathml"),_?(h(e.dynamicChildren,_,I,r,o,s,i),Yf(e,t,!0)):l||d(e,t,I,Y,r,o,s,i,!1),g)T?t.props&&e.props&&t.props.to!==e.props.to&&(t.props.to=e.props.to):Wi(t,n,A,c,1);else if((t.props&&t.props.to)!==(e.props&&e.props.to)){const Q=t.target=wd(t.props,m);Q&&Wi(t,Q,null,c,0)}else T&&Wi(t,P,k,c,1);_l(t,g)}},remove(e,t,n,{um:a,o:{remove:r}},o){const{shapeFlag:s,children:i,anchor:l,targetStart:c,targetAnchor:u,target:d,props:h}=e;if(d&&(r(c),r(u)),o&&r(l),s&16){const p=o||!qs(h);for(let m=0;m<i.length;m++){const v=i[m];a(v,t,n,p,!!v.dynamicChildren)}}},move:Wi,hydrate:Dw};function Wi(e,t,n,{o:{insert:a},m:r},o=2){o===0&&a(e.targetAnchor,t,n);const{el:s,anchor:i,shapeFlag:l,children:c,props:u}=e,d=o===2;if(d&&a(s,t,n),(!d||qs(u))&&l&16)for(let h=0;h<c.length;h++)r(c[h],t,n,2);d&&a(i,t,n)}function Dw(e,t,n,a,r,o,{o:{nextSibling:s,parentNode:i,querySelector:l,insert:c,createText:u}},d){function h(v,y,g,b){y.anchor=d(s(v),y,i(v),n,a,r,o),y.targetStart=g,y.targetAnchor=b}const p=t.target=wd(t.props,l),m=qs(t.props);if(p){const v=p._lpa||p.firstChild;if(t.shapeFlag&16)if(m)h(e,t,v,v&&s(v));else{t.anchor=s(e);let y=v;for(;y;){if(y&&y.nodeType===8){if(y.data==="teleport start anchor")t.targetStart=y;else if(y.data==="teleport anchor"){t.targetAnchor=y,p._lpa=t.targetAnchor&&s(t.targetAnchor);break}}y=s(y)}t.targetAnchor||By(p,t,u,c),d(v&&s(v),t,p,n,a,r,o)}_l(t,m)}else m&&t.shapeFlag&16&&h(e,t,e,s(e));return t.anchor&&s(t.anchor)}const Vf=qy;function _l(e,t){const n=e.ctx;if(n&&n.ut){let a,r;for(t?(a=e.el,r=e.anchor):(a=e.targetStart,r=e.targetAnchor);a&&a!==r;)a.nodeType===1&&a.setAttribute("data-v-owner",n.uid),a=a.nextSibling;n.ut()}}function By(e,t,n,a){const r=t.targetStart=n(""),o=t.targetAnchor=n("");return r[Ny]=o,e&&(a(r,e),a(o,e)),o}const Ca=Symbol("_leaveCb"),Ui=Symbol("_enterCb");function Ew(){const e={isMounted:!1,isLeaving:!1,isUnmounting:!1,leavingVNodes:new Map};return Xe(()=>{e.isMounted=!0}),Ga(()=>{e.isUnmounting=!0}),e}const In=[Function,Array],Hy={mode:String,appear:Boolean,persisted:Boolean,onBeforeEnter:In,onEnter:In,onAfterEnter:In,onEnterCancelled:In,onBeforeLeave:In,onLeave:In,onAfterLeave:In,onLeaveCancelled:In,onBeforeAppear:In,onAppear:In,onAfterAppear:In,onAppearCancelled:In},Vy=e=>{const t=e.subTree;return t.component?Vy(t.component):t},$w={name:"BaseTransition",props:Hy,setup(e,{slots:t}){const n=Mt(),a=Ew();return()=>{const r=t.default&&Wy(t.default(),!0);if(!r||!r.length)return;const o=zy(r),s=Ze(e),{mode:i}=s;if(a.isLeaving)return Cu(o);const l=dh(o);if(!l)return Cu(o);let c=_d(l,s,a,n,d=>c=d);l.type!==Ut&&Qs(l,c);let u=n.subTree&&dh(n.subTree);if(u&&u.type!==Ut&&!qr(u,l)&&Vy(n).type!==Ut){let d=_d(u,s,a,n);if(Qs(u,d),i==="out-in"&&l.type!==Ut)return a.isLeaving=!0,d.afterLeave=()=>{a.isLeaving=!1,n.job.flags&8||n.update(),delete d.afterLeave,u=void 0},Cu(o);i==="in-out"&&l.type!==Ut?d.delayLeave=(h,p,m)=>{const v=jy(a,u);v[String(u.key)]=u,h[Ca]=()=>{p(),h[Ca]=void 0,delete c.delayedLeave,u=void 0},c.delayedLeave=()=>{m(),delete c.delayedLeave,u=void 0}}:u=void 0}else u&&(u=void 0);return o}}};function zy(e){let t=e[0];if(e.length>1){for(const n of e)if(n.type!==Ut){t=n;break}}return t}const Rw=$w;function jy(e,t){const{leavingVNodes:n}=e;let a=n.get(t.type);return a||(a=Object.create(null),n.set(t.type,a)),a}function _d(e,t,n,a,r){const{appear:o,mode:s,persisted:i=!1,onBeforeEnter:l,onEnter:c,onAfterEnter:u,onEnterCancelled:d,onBeforeLeave:h,onLeave:p,onAfterLeave:m,onLeaveCancelled:v,onBeforeAppear:y,onAppear:g,onAfterAppear:b,onAppearCancelled:w}=t,_=String(e.key),A=jy(n,e),P=(I,Y)=>{I&&Wn(I,a,9,Y)},k=(I,Y)=>{const Q=Y[1];P(I,Y),Ne(I)?I.every(z=>z.length<=1)&&Q():I.length<=1&&Q()},T={mode:s,persisted:i,beforeEnter(I){let Y=l;if(!n.isMounted)if(o)Y=y||l;else return;I[Ca]&&I[Ca](!0);const Q=A[_];Q&&qr(e,Q)&&Q.el[Ca]&&Q.el[Ca](),P(Y,[I])},enter(I){let Y=c,Q=u,z=d;if(!n.isMounted)if(o)Y=g||c,Q=b||u,z=w||d;else return;let te=!1;const O=I[Ui]=D=>{te||(te=!0,D?P(z,[I]):P(Q,[I]),T.delayedLeave&&T.delayedLeave(),I[Ui]=void 0)};Y?k(Y,[I,O]):O()},leave(I,Y){const Q=String(e.key);if(I[Ui]&&I[Ui](!0),n.isUnmounting)return Y();P(h,[I]);let z=!1;const te=I[Ca]=O=>{z||(z=!0,Y(),O?P(v,[I]):P(m,[I]),I[Ca]=void 0,A[Q]===e&&delete A[Q])};A[Q]=e,p?k(p,[I,te]):te()},clone(I){const Y=_d(I,t,n,a,r);return r&&r(Y),Y}};return T}function Cu(e){if(Pi(e))return e=Va(e),e.children=null,e}function dh(e){if(!Pi(e))return Fy(e.type)&&e.children?zy(e.children):e;if(e.component)return e.component.subTree;const{shapeFlag:t,children:n}=e;if(n){if(t&16)return n[0];if(t&32&&Be(n.default))return n.default()}}function Qs(e,t){e.shapeFlag&6&&e.component?(e.transition=t,Qs(e.component.subTree,t)):e.shapeFlag&128?(e.ssContent.transition=t.clone(e.ssContent),e.ssFallback.transition=t.clone(e.ssFallback)):e.transition=t}function Wy(e,t=!1,n){let a=[],r=0;for(let o=0;o<e.length;o++){let s=e[o];const i=n==null?s.key:String(n)+String(s.key!=null?s.key:o);s.type===ze?(s.patchFlag&128&&r++,a=a.concat(Wy(s.children,t,i))):(t||s.type!==Ut)&&a.push(i!=null?Va(s,{key:i}):s)}if(r>1)for(let o=0;o<a.length;o++)a[o].patchFlag=-2;return a}function Z(e,t){return Be(e)?Rt({name:e.name},t,{setup:e}):e}function Uy(){const e=Mt();return e?(e.appContext.config.idPrefix||"v")+"-"+e.ids[0]+e.ids[1]++:""}function zf(e){e.ids=[e.ids[0]+e.ids[2]+++"-",0,0]}function Gy(e){const t=Mt(),n=at(null);if(t){const r=t.refs===tt?t.refs={}:t.refs;Object.defineProperty(r,e,{enumerable:!0,get:()=>n.value,set:o=>n.value=o})}return n}const Wl=new WeakMap;function Bs(e,t,n,a,r=!1){if(Ne(e)){e.forEach((m,v)=>Bs(m,t&&(Ne(t)?t[v]:t),n,a,r));return}if(To(a)&&!r){a.shapeFlag&512&&a.type.__asyncResolved&&a.component.subTree.component&&Bs(e,t,n,a.component.subTree);return}const o=a.shapeFlag&4?Rc(a.component):a.el,s=r?null:o,{i,r:l}=e,c=t&&t.r,u=i.refs===tt?i.refs={}:i.refs,d=i.setupState,h=Ze(d),p=d===tt?ty:m=>lt(h,m);if(c!=null&&c!==l){if(fh(t),_t(c))u[c]=null,p(c)&&(d[c]=null);else if(et(c)){c.value=null;const m=t;m.k&&(u[m.k]=null)}}if(Be(l))Si(l,i,12,[s,u]);else{const m=_t(l),v=et(l);if(m||v){const y=()=>{if(e.f){const g=m?p(l)?d[l]:u[l]:l.value;if(r)Ne(g)&&Lf(g,o);else if(Ne(g))g.includes(o)||g.push(o);else if(m)u[l]=[o],p(l)&&(d[l]=u[l]);else{const b=[o];l.value=b,e.k&&(u[e.k]=b)}}else m?(u[l]=s,p(l)&&(d[l]=s)):v&&(l.value=s,e.k&&(u[e.k]=s))};if(s){const g=()=>{y(),Wl.delete(e)};g.id=-1,Wl.set(e,g),rn(g,n)}else fh(e),y()}}}function fh(e){const t=Wl.get(e);t&&(t.flags|=8,Wl.delete(e))}const ph=e=>e.nodeType===8;Sc().requestIdleCallback;Sc().cancelIdleCallback;function Lw(e,t){if(ph(e)&&e.data==="["){let n=1,a=e.nextSibling;for(;a;){if(a.nodeType===1){if(t(a)===!1)break}else if(ph(a))if(a.data==="]"){if(--n===0)break}else a.data==="["&&n++;a=a.nextSibling}}else t(e)}const To=e=>!!e.type.__asyncLoader;function uo(e){Be(e)&&(e={loader:e});const{loader:t,loadingComponent:n,errorComponent:a,delay:r=200,hydrate:o,timeout:s,suspensible:i=!0,onError:l}=e;let c=null,u,d=0;const h=()=>(d++,c=null,p()),p=()=>{let m;return c||(m=c=t().catch(v=>{if(v=v instanceof Error?v:new Error(String(v)),l)return new Promise((y,g)=>{l(v,()=>y(h()),()=>g(v),d+1)});throw v}).then(v=>m!==c&&c?c:(v&&(v.__esModule||v[Symbol.toStringTag]==="Module")&&(v=v.default),u=v,v)))};return Z({name:"AsyncComponentWrapper",__asyncLoader:p,__asyncHydrate(m,v,y){let g=!1;(v.bu||(v.bu=[])).push(()=>g=!0);const b=()=>{g||y()},w=o?()=>{const _=o(b,A=>Lw(m,A));_&&(v.bum||(v.bum=[])).push(_)}:b;u?w():p().then(()=>!v.isUnmounted&&w())},get __asyncResolved(){return u},setup(){const m=Gt;if(zf(m),u)return()=>Gi(u,m);const v=w=>{c=null,xi(w,m,13,!a)};if(i&&m.suspense||qo)return p().then(w=>()=>Gi(w,m)).catch(w=>(v(w),()=>a?ie(a,{error:w}):null));const y=V(!1),g=V(),b=V(!!r);return r&&setTimeout(()=>{b.value=!1},r),s!=null&&setTimeout(()=>{if(!y.value&&!g.value){const w=new Error(`Async component timed out after ${s}ms.`);v(w),g.value=w}},s),p().then(()=>{y.value=!0,m.parent&&Pi(m.parent.vnode)&&m.parent.update()}).catch(w=>{v(w),g.value=w}),()=>{if(y.value&&u)return Gi(u,m);if(g.value&&a)return ie(a,{error:g.value});if(n&&!b.value)return Gi(n,m)}}})}function Gi(e,t){const{ref:n,props:a,children:r,ce:o}=t.vnode,s=ie(e,a,r);return s.ref=n,s.ce=o,delete t.vnode.ce,s}const Pi=e=>e.type.__isKeepAlive;function Yy(e,t){Xy(e,"a",t)}function Ky(e,t){Xy(e,"da",t)}function Xy(e,t,n=Gt){const a=e.__wdc||(e.__wdc=()=>{let r=n;for(;r;){if(r.isDeactivated)return;r=r.parent}return e()});if(Dc(t,a,n),n){let r=n.parent;for(;r&&r.parent;)Pi(r.parent.vnode)&&Ow(a,t,n,r),r=r.parent}}function Ow(e,t,n,a){const r=Dc(t,e,a,!0);_n(()=>{Lf(a[t],r)},n)}function Dc(e,t,n=Gt,a=!1){if(n){const r=n[e]||(n[e]=[]),o=t.__weh||(t.__weh=(...s)=>{qa();const i=Ti(n),l=Wn(t,n,e,s);return i(),Ba(),l});return a?r.unshift(o):r.push(o),o}}const Ua=e=>(t,n=Gt)=>{(!qo||e==="sp")&&Dc(e,(...a)=>t(...a),n)},Jy=Ua("bm"),Xe=Ua("m"),Nw=Ua("bu"),jf=Ua("u"),Ga=Ua("bum"),_n=Ua("um"),Fw=Ua("sp"),qw=Ua("rtg"),Bw=Ua("rtc");function Hw(e,t=Gt){Dc("ec",e,t)}const Qy="components";function Vw(e,t){return e0(Qy,e,!0,t)||e}const Zy=Symbol.for("v-ndc");function $n(e){return _t(e)?e0(Qy,e,!1)||e:e||Zy}function e0(e,t,n=!0,a=!1){const r=Yt||Gt;if(r){const o=r.type;{const i=C_(o,!1);if(i&&(i===t||i===pn(t)||i===Cc(pn(t))))return o}const s=hh(r[e]||o[e],t)||hh(r.appContext[e],t);return!s&&a?o:s}}function hh(e,t){return e&&(e[t]||e[pn(t)]||e[Cc(pn(t))])}function en(e,t,n,a){let r;const o=n&&n[a],s=Ne(e);if(s||_t(e)){const i=s&&oa(e);let l=!1,c=!1;i&&(l=!xn(e),c=Ha(e),e=Pc(e)),r=new Array(e.length);for(let u=0,d=e.length;u<d;u++)r[u]=t(l?c?No(jn(e[u])):jn(e[u]):e[u],u,void 0,o&&o[u])}else if(typeof e=="number"){r=new Array(e);for(let i=0;i<e;i++)r[i]=t(i+1,i,void 0,o&&o[i])}else if(ct(e))if(e[Symbol.iterator])r=Array.from(e,(i,l)=>t(i,l,void 0,o&&o[l]));else{const i=Object.keys(e);r=new Array(i.length);for(let l=0,c=i.length;l<c;l++){const u=i[l];r[l]=t(e[u],u,l,o&&o[l])}}else r=[];return n&&(n[a]=r),r}function Ec(e,t){for(let n=0;n<t.length;n++){const a=t[n];if(Ne(a))for(let r=0;r<a.length;r++)e[a[r].name]=a[r].fn;else a&&(e[a.name]=a.key?(...r)=>{const o=a.fn(...r);return o&&(o.key=a.key),o}:a.fn)}return e}function j(e,t,n={},a,r){if(Yt.ce||Yt.parent&&To(Yt.parent)&&Yt.parent.ce){const c=Object.keys(n).length>0;return t!=="default"&&(n.name=t),C(),R(ze,null,[ie("slot",n,a&&a())],c?-2:64)}let o=e[t];o&&o._c&&(o._d=!1),C();const s=o&&t0(o(n)),i=n.key||s&&s.key,l=R(ze,{key:(i&&!zn(i)?i:`_${t}`)+(!s&&a?"_fb":"")},s||(a?a():[]),s&&e._===1?64:-2);return!r&&l.scopeId&&(l.slotScopeIds=[l.scopeId+"-s"]),o&&o._c&&(o._d=!0),l}function t0(e){return e.some(t=>ei(t)?!(t.type===Ut||t.type===ze&&!t0(t.children)):!0)?e:null}function Wf(e,t){const n={};for(const a in e)n[t&&/[A-Z]/.test(a)?`on:${a}`:Os(a)]=e[a];return n}const kd=e=>e?C0(e)?Rc(e):kd(e.parent):null,Hs=Rt(Object.create(null),{$:e=>e,$el:e=>e.vnode.el,$data:e=>e.data,$props:e=>e.props,$attrs:e=>e.attrs,$slots:e=>e.slots,$refs:e=>e.refs,$parent:e=>kd(e.parent),$root:e=>kd(e.root),$host:e=>e.ce,$emit:e=>e.emit,$options:e=>o0(e),$forceUpdate:e=>e.f||(e.f=()=>{Hf(e.update)}),$nextTick:e=>e.n||(e.n=Ve.bind(e.proxy)),$watch:e=>Iw.bind(e)}),Su=(e,t)=>e!==tt&&!e.__isScriptSetup&&lt(e,t),zw={get({_:e},t){if(t==="__v_skip")return!0;const{ctx:n,setupState:a,data:r,props:o,accessCache:s,type:i,appContext:l}=e;if(t[0]!=="$"){const h=s[t];if(h!==void 0)switch(h){case 1:return a[t];case 2:return r[t];case 4:return n[t];case 3:return o[t]}else{if(Su(a,t))return s[t]=1,a[t];if(r!==tt&&lt(r,t))return s[t]=2,r[t];if(lt(o,t))return s[t]=3,o[t];if(n!==tt&&lt(n,t))return s[t]=4,n[t];Sd&&(s[t]=0)}}const c=Hs[t];let u,d;if(c)return t==="$attrs"&&Zt(e.attrs,"get",""),c(e);if((u=i.__cssModules)&&(u=u[t]))return u;if(n!==tt&&lt(n,t))return s[t]=4,n[t];if(d=l.config.globalProperties,lt(d,t))return d[t]},set({_:e},t,n){const{data:a,setupState:r,ctx:o}=e;return Su(r,t)?(r[t]=n,!0):a!==tt&&lt(a,t)?(a[t]=n,!0):lt(e.props,t)||t[0]==="$"&&t.slice(1)in e?!1:(o[t]=n,!0)},has({_:{data:e,setupState:t,accessCache:n,ctx:a,appContext:r,props:o,type:s}},i){let l;return!!(n[i]||e!==tt&&i[0]!=="$"&&lt(e,i)||Su(t,i)||lt(o,i)||lt(a,i)||lt(Hs,i)||lt(r.config.globalProperties,i)||(l=s.__cssModules)&&l[i])},defineProperty(e,t,n){return n.get!=null?e._.accessCache[t]=0:lt(n,"value")&&this.set(e,t,n.value,null),Reflect.defineProperty(e,t,n)}};function fa(){return n0().slots}function jw(){return n0().attrs}function n0(e){const t=Mt();return t.setupContext||(t.setupContext=x0(t))}function Zs(e){return Ne(e)?e.reduce((t,n)=>(t[n]=null,t),{}):e}function a0(e,t){const n=Zs(e);for(const a in t){if(a.startsWith("__skip"))continue;let r=n[a];r?Ne(r)||Be(r)?r=n[a]={type:r,default:t[a]}:r.default=t[a]:r===null&&(r=n[a]={default:t[a]}),r&&t[`__skip_${a}`]&&(r.skipFactory=!0)}return n}function Cd(e,t){return!e||!t?e||t:Ne(e)&&Ne(t)?e.concat(t):Rt({},Zs(e),Zs(t))}let Sd=!0;function Ww(e){const t=o0(e),n=e.proxy,a=e.ctx;Sd=!1,t.beforeCreate&&mh(t.beforeCreate,e,"bc");const{data:r,computed:o,methods:s,watch:i,provide:l,inject:c,created:u,beforeMount:d,mounted:h,beforeUpdate:p,updated:m,activated:v,deactivated:y,beforeDestroy:g,beforeUnmount:b,destroyed:w,unmounted:_,render:A,renderTracked:P,renderTriggered:k,errorCaptured:T,serverPrefetch:I,expose:Y,inheritAttrs:Q,components:z,directives:te,filters:O}=t;if(c&&Uw(c,a,null),s)for(const G in s){const L=s[G];Be(L)&&(a[G]=L.bind(n))}if(r){const G=r.call(n,n);ct(G)&&(e.data=Rn(G))}if(Sd=!0,o)for(const G in o){const L=o[G],ee=Be(L)?L.bind(n,n):Be(L.get)?L.get.bind(n,n):ra,K=!Be(L)&&Be(L.set)?L.set.bind(n):ra,ce=S({get:ee,set:K});Object.defineProperty(a,G,{enumerable:!0,configurable:!0,get:()=>ce.value,set:ue=>ce.value=ue})}if(i)for(const G in i)r0(i[G],a,n,G);if(l){const G=Be(l)?l.call(n):l;Reflect.ownKeys(G).forEach(L=>{An(L,G[L])})}u&&mh(u,e,"c");function q(G,L){Ne(L)?L.forEach(ee=>G(ee.bind(n))):L&&G(L.bind(n))}if(q(Jy,d),q(Xe,h),q(Nw,p),q(jf,m),q(Yy,v),q(Ky,y),q(Hw,T),q(Bw,P),q(qw,k),q(Ga,b),q(_n,_),q(Fw,I),Ne(Y))if(Y.length){const G=e.exposed||(e.exposed={});Y.forEach(L=>{Object.defineProperty(G,L,{get:()=>n[L],set:ee=>n[L]=ee,enumerable:!0})})}else e.exposed||(e.exposed={});A&&e.render===ra&&(e.render=A),Q!=null&&(e.inheritAttrs=Q),z&&(e.components=z),te&&(e.directives=te),I&&zf(e)}function Uw(e,t,n=ra){Ne(e)&&(e=xd(e));for(const a in e){const r=e[a];let o;ct(r)?"default"in r?o=rt(r.from||a,r.default,!0):o=rt(r.from||a):o=rt(r),et(o)?Object.defineProperty(t,a,{enumerable:!0,configurable:!0,get:()=>o.value,set:s=>o.value=s}):t[a]=o}}function mh(e,t,n){Wn(Ne(e)?e.map(a=>a.bind(t.proxy)):e.bind(t.proxy),t,n)}function r0(e,t,n,a){let r=a.includes(".")?Oy(n,a):()=>n[a];if(_t(e)){const o=t[e];Be(o)&&Se(r,o)}else if(Be(e))Se(r,e.bind(n));else if(ct(e))if(Ne(e))e.forEach(o=>r0(o,t,n,a));else{const o=Be(e.handler)?e.handler.bind(n):t[e.handler];Be(o)&&Se(r,o,e)}}function o0(e){const t=e.type,{mixins:n,extends:a}=t,{mixins:r,optionsCache:o,config:{optionMergeStrategies:s}}=e.appContext,i=o.get(t);let l;return i?l=i:!r.length&&!n&&!a?l=t:(l={},r.length&&r.forEach(c=>Ul(l,c,s,!0)),Ul(l,t,s)),ct(t)&&o.set(t,l),l}function Ul(e,t,n,a=!1){const{mixins:r,extends:o}=t;o&&Ul(e,o,n,!0),r&&r.forEach(s=>Ul(e,s,n,!0));for(const s in t)if(!(a&&s==="expose")){const i=Gw[s]||n&&n[s];e[s]=i?i(e[s],t[s]):t[s]}return e}const Gw={data:gh,props:vh,emits:vh,methods:$s,computed:$s,beforeCreate:nn,created:nn,beforeMount:nn,mounted:nn,beforeUpdate:nn,updated:nn,beforeDestroy:nn,beforeUnmount:nn,destroyed:nn,unmounted:nn,activated:nn,deactivated:nn,errorCaptured:nn,serverPrefetch:nn,components:$s,directives:$s,watch:Kw,provide:gh,inject:Yw};function gh(e,t){return t?e?function(){return Rt(Be(e)?e.call(this,this):e,Be(t)?t.call(this,this):t)}:t:e}function Yw(e,t){return $s(xd(e),xd(t))}function xd(e){if(Ne(e)){const t={};for(let n=0;n<e.length;n++)t[e[n]]=e[n];return t}return e}function nn(e,t){return e?[...new Set([].concat(e,t))]:t}function $s(e,t){return e?Rt(Object.create(null),e,t):t}function vh(e,t){return e?Ne(e)&&Ne(t)?[...new Set([...e,...t])]:Rt(Object.create(null),Zs(e),Zs(t??{})):t}function Kw(e,t){if(!e)return t;if(!t)return e;const n=Rt(Object.create(null),e);for(const a in t)n[a]=nn(e[a],t[a]);return n}function s0(){return{app:null,config:{isNativeTag:ty,performance:!1,globalProperties:{},optionMergeStrategies:{},errorHandler:void 0,warnHandler:void 0,compilerOptions:{}},mixins:[],components:{},directives:{},provides:Object.create(null),optionsCache:new WeakMap,propsCache:new WeakMap,emitsCache:new WeakMap}}let Xw=0;function Jw(e,t){return function(a,r=null){Be(a)||(a=Rt({},a)),r!=null&&!ct(r)&&(r=null);const o=s0(),s=new WeakSet,i=[];let l=!1;const c=o.app={_uid:Xw++,_component:a,_props:r,_container:null,_context:o,_instance:null,version:A_,get config(){return o.config},set config(u){},use(u,...d){return s.has(u)||(u&&Be(u.install)?(s.add(u),u.install(c,...d)):Be(u)&&(s.add(u),u(c,...d))),c},mixin(u){return o.mixins.includes(u)||o.mixins.push(u),c},component(u,d){return d?(o.components[u]=d,c):o.components[u]},directive(u,d){return d?(o.directives[u]=d,c):o.directives[u]},mount(u,d,h){if(!l){const p=c._ceVNode||ie(a,r);return p.appContext=o,h===!0?h="svg":h===!1&&(h=void 0),e(p,u,h),l=!0,c._container=u,u.__vue_app__=c,Rc(p.component)}},onUnmount(u){i.push(u)},unmount(){l&&(Wn(i,c._instance,16),e(null,c._container),delete c._container.__vue_app__)},provide(u,d){return o.provides[u]=d,c},runWithContext(u){const d=Xr;Xr=c;try{return u()}finally{Xr=d}}};return c}}let Xr=null;function i0(e,t,n=tt){const a=Mt(),r=pn(t),o=Wa(t),s=l0(e,r),i=Ci((l,c)=>{let u,d=tt,h;return Tw(()=>{const p=e[r];sn(u,p)&&(u=p,c())}),{get(){return l(),n.get?n.get(u):u},set(p){const m=n.set?n.set(p):p;if(!sn(m,u)&&!(d!==tt&&sn(p,d)))return;const v=a.vnode.props;v&&(t in v||r in v||o in v)&&(`onUpdate:${t}`in v||`onUpdate:${r}`in v||`onUpdate:${o}`in v)||(u=p,c()),a.emit(`update:${t}`,m),sn(p,m)&&sn(p,d)&&!sn(m,h)&&c(),d=p,h=m}}});return i[Symbol.iterator]=()=>{let l=0;return{next(){return l<2?{value:l++?s||tt:i,done:!1}:{done:!0}}}},i}const l0=(e,t)=>t==="modelValue"||t==="model-value"?e.modelModifiers:e[`${t}Modifiers`]||e[`${pn(t)}Modifiers`]||e[`${Wa(t)}Modifiers`];function Qw(e,t,...n){if(e.isUnmounted)return;const a=e.vnode.props||tt;let r=n;const o=t.startsWith("update:"),s=o&&l0(a,t.slice(7));s&&(s.trim&&(r=n.map(u=>_t(u)?u.trim():u)),s.number&&(r=n.map(Of)));let i,l=a[i=Os(t)]||a[i=Os(pn(t))];!l&&o&&(l=a[i=Os(Wa(t))]),l&&Wn(l,e,6,r);const c=a[i+"Once"];if(c){if(!e.emitted)e.emitted={};else if(e.emitted[i])return;e.emitted[i]=!0,Wn(c,e,6,r)}}const Zw=new WeakMap;function c0(e,t,n=!1){const a=n?Zw:t.emitsCache,r=a.get(e);if(r!==void 0)return r;const o=e.emits;let s={},i=!1;if(!Be(e)){const l=c=>{const u=c0(c,t,!0);u&&(i=!0,Rt(s,u))};!n&&t.mixins.length&&t.mixins.forEach(l),e.extends&&l(e.extends),e.mixins&&e.mixins.forEach(l)}return!o&&!i?(ct(e)&&a.set(e,null),null):(Ne(o)?o.forEach(l=>s[l]=null):Rt(s,o),ct(e)&&a.set(e,s),s)}function $c(e,t){return!e||!bc(t)?!1:(t=t.slice(2).replace(/Once$/,""),lt(e,t[0].toLowerCase()+t.slice(1))||lt(e,Wa(t))||lt(e,t))}function yh(e){const{type:t,vnode:n,proxy:a,withProxy:r,propsOptions:[o],slots:s,attrs:i,emit:l,render:c,renderCache:u,props:d,data:h,setupState:p,ctx:m,inheritAttrs:v}=e,y=jl(e);let g,b;try{if(n.shapeFlag&4){const _=r||a,A=_;g=ta(c.call(A,_,u,d,p,h,m)),b=i}else{const _=t;g=ta(_.length>1?_(d,{attrs:i,slots:s,emit:l}):_(d,null)),b=t.props?i:e_(i)}}catch(_){Vs.length=0,xi(_,e,1),g=ie(Ut)}let w=g;if(b&&v!==!1){const _=Object.keys(b),{shapeFlag:A}=w;_.length&&A&7&&(o&&_.some(Rf)&&(b=t_(b,o)),w=Va(w,b,!1,!0))}return n.dirs&&(w=Va(w,null,!1,!0),w.dirs=w.dirs?w.dirs.concat(n.dirs):n.dirs),n.transition&&Qs(w,n.transition),g=w,jl(y),g}const e_=e=>{let t;for(const n in e)(n==="class"||n==="style"||bc(n))&&((t||(t={}))[n]=e[n]);return t},t_=(e,t)=>{const n={};for(const a in e)(!Rf(a)||!(a.slice(9)in t))&&(n[a]=e[a]);return n};function n_(e,t,n){const{props:a,children:r,component:o}=e,{props:s,children:i,patchFlag:l}=t,c=o.emitsOptions;if(t.dirs||t.transition)return!0;if(n&&l>=0){if(l&1024)return!0;if(l&16)return a?bh(a,s,c):!!s;if(l&8){const u=t.dynamicProps;for(let d=0;d<u.length;d++){const h=u[d];if(s[h]!==a[h]&&!$c(c,h))return!0}}}else return(r||i)&&(!i||!i.$stable)?!0:a===s?!1:a?s?bh(a,s,c):!0:!!s;return!1}function bh(e,t,n){const a=Object.keys(t);if(a.length!==Object.keys(e).length)return!0;for(let r=0;r<a.length;r++){const o=a[r];if(t[o]!==e[o]&&!$c(n,o))return!0}return!1}function a_({vnode:e,parent:t},n){for(;t;){const a=t.subTree;if(a.suspense&&a.suspense.activeBranch===e&&(a.el=e.el),a===e)(e=t.vnode).el=n,t=t.parent;else break}}const u0={},d0=()=>Object.create(u0),f0=e=>Object.getPrototypeOf(e)===u0;function r_(e,t,n,a=!1){const r={},o=d0();e.propsDefaults=Object.create(null),p0(e,t,r,o);for(const s in e.propsOptions[0])s in r||(r[s]=void 0);n?e.props=a?r:Bf(r):e.type.props?e.props=r:e.props=o,e.attrs=o}function o_(e,t,n,a){const{props:r,attrs:o,vnode:{patchFlag:s}}=e,i=Ze(r),[l]=e.propsOptions;let c=!1;if((a||s>0)&&!(s&16)){if(s&8){const u=e.vnode.dynamicProps;for(let d=0;d<u.length;d++){let h=u[d];if($c(e.emitsOptions,h))continue;const p=t[h];if(l)if(lt(o,h))p!==o[h]&&(o[h]=p,c=!0);else{const m=pn(h);r[m]=Ad(l,i,m,p,e,!1)}else p!==o[h]&&(o[h]=p,c=!0)}}}else{p0(e,t,r,o)&&(c=!0);let u;for(const d in i)(!t||!lt(t,d)&&((u=Wa(d))===d||!lt(t,u)))&&(l?n&&(n[d]!==void 0||n[u]!==void 0)&&(r[d]=Ad(l,i,d,void 0,e,!0)):delete r[d]);if(o!==i)for(const d in o)(!t||!lt(t,d))&&(delete o[d],c=!0)}c&&Pa(e.attrs,"set","")}function p0(e,t,n,a){const[r,o]=e.propsOptions;let s=!1,i;if(t)for(let l in t){if(Ls(l))continue;const c=t[l];let u;r&&lt(r,u=pn(l))?!o||!o.includes(u)?n[u]=c:(i||(i={}))[u]=c:$c(e.emitsOptions,l)||(!(l in a)||c!==a[l])&&(a[l]=c,s=!0)}if(o){const l=Ze(n),c=i||tt;for(let u=0;u<o.length;u++){const d=o[u];n[d]=Ad(r,l,d,c[d],e,!lt(c,d))}}return s}function Ad(e,t,n,a,r,o){const s=e[n];if(s!=null){const i=lt(s,"default");if(i&&a===void 0){const l=s.default;if(s.type!==Function&&!s.skipFactory&&Be(l)){const{propsDefaults:c}=r;if(n in c)a=c[n];else{const u=Ti(r);a=c[n]=l.call(null,t),u()}}else a=l;r.ce&&r.ce._setProp(n,a)}s[0]&&(o&&!i?a=!1:s[1]&&(a===""||a===Wa(n))&&(a=!0))}return a}const s_=new WeakMap;function h0(e,t,n=!1){const a=n?s_:t.propsCache,r=a.get(e);if(r)return r;const o=e.props,s={},i=[];let l=!1;if(!Be(e)){const u=d=>{l=!0;const[h,p]=h0(d,t,!0);Rt(s,h),p&&i.push(...p)};!n&&t.mixins.length&&t.mixins.forEach(u),e.extends&&u(e.extends),e.mixins&&e.mixins.forEach(u)}if(!o&&!l)return ct(e)&&a.set(e,Ao),Ao;if(Ne(o))for(let u=0;u<o.length;u++){const d=pn(o[u]);wh(d)&&(s[d]=tt)}else if(o)for(const u in o){const d=pn(u);if(wh(d)){const h=o[u],p=s[d]=Ne(h)||Be(h)?{type:h}:Rt({},h),m=p.type;let v=!1,y=!0;if(Ne(m))for(let g=0;g<m.length;++g){const b=m[g],w=Be(b)&&b.name;if(w==="Boolean"){v=!0;break}else w==="String"&&(y=!1)}else v=Be(m)&&m.name==="Boolean";p[0]=v,p[1]=y,(v||lt(p,"default"))&&i.push(d)}}const c=[s,i];return ct(e)&&a.set(e,c),c}function wh(e){return e[0]!=="$"&&!Ls(e)}const Uf=e=>e==="_"||e==="_ctx"||e==="$stable",Gf=e=>Ne(e)?e.map(ta):[ta(e)],i_=(e,t,n)=>{if(t._n)return t;const a=E((...r)=>Gf(t(...r)),n);return a._c=!1,a},m0=(e,t,n)=>{const a=e._ctx;for(const r in e){if(Uf(r))continue;const o=e[r];if(Be(o))t[r]=i_(r,o,a);else if(o!=null){const s=Gf(o);t[r]=()=>s}}},g0=(e,t)=>{const n=Gf(t);e.slots.default=()=>n},v0=(e,t,n)=>{for(const a in t)(n||!Uf(a))&&(e[a]=t[a])},l_=(e,t,n)=>{const a=e.slots=d0();if(e.vnode.shapeFlag&32){const r=t._;r?(v0(a,t,n),n&&oy(a,"_",r,!0)):m0(t,a)}else t&&g0(e,t)},c_=(e,t,n)=>{const{vnode:a,slots:r}=e;let o=!0,s=tt;if(a.shapeFlag&32){const i=t._;i?n&&i===1?o=!1:v0(r,t,n):(o=!t.$stable,m0(t,r)),s=t}else t&&(g0(e,t),s={default:1});if(o)for(const i in r)!Uf(i)&&s[i]==null&&delete r[i]},rn=h_;function u_(e){return d_(e)}function d_(e,t){const n=Sc();n.__VUE__=!0;const{insert:a,remove:r,patchProp:o,createElement:s,createText:i,createComment:l,setText:c,setElementText:u,parentNode:d,nextSibling:h,setScopeId:p=ra,insertStaticContent:m}=e,v=($,B,J,W=null,U=null,ne=null,x=void 0,M=null,N=!!B.dynamicChildren)=>{if($===B)return;$&&!qr($,B)&&(W=X($),ue($,U,ne,!0),$=null),B.patchFlag===-2&&(N=!1,B.dynamicChildren=null);const{type:H,ref:oe,shapeFlag:ae}=B;switch(H){case Mi:y($,B,J,W);break;case Ut:g($,B,J,W);break;case kl:$==null&&b(B,J,W,x);break;case ze:z($,B,J,W,U,ne,x,M,N);break;default:ae&1?A($,B,J,W,U,ne,x,M,N):ae&6?te($,B,J,W,U,ne,x,M,N):(ae&64||ae&128)&&H.process($,B,J,W,U,ne,x,M,N,pe)}oe!=null&&U?Bs(oe,$&&$.ref,ne,B||$,!B):oe==null&&$&&$.ref!=null&&Bs($.ref,null,ne,$,!0)},y=($,B,J,W)=>{if($==null)a(B.el=i(B.children),J,W);else{const U=B.el=$.el;B.children!==$.children&&c(U,B.children)}},g=($,B,J,W)=>{$==null?a(B.el=l(B.children||""),J,W):B.el=$.el},b=($,B,J,W)=>{[$.el,$.anchor]=m($.children,B,J,W,$.el,$.anchor)},w=({el:$,anchor:B},J,W)=>{let U;for(;$&&$!==B;)U=h($),a($,J,W),$=U;a(B,J,W)},_=({el:$,anchor:B})=>{let J;for(;$&&$!==B;)J=h($),r($),$=J;r(B)},A=($,B,J,W,U,ne,x,M,N)=>{if(B.type==="svg"?x="svg":B.type==="math"&&(x="mathml"),$==null)P(B,J,W,U,ne,x,M,N);else{const H=$.el&&$.el._isVueCE?$.el:null;try{H&&H._beginPatch(),I($,B,U,ne,x,M,N)}finally{H&&H._endPatch()}}},P=($,B,J,W,U,ne,x,M)=>{let N,H;const{props:oe,shapeFlag:ae,transition:F,dirs:re}=$;if(N=$.el=s($.type,ne,oe&&oe.is,oe),ae&8?u(N,$.children):ae&16&&T($.children,N,null,W,U,xu($,ne),x,M),re&&Mr($,null,W,"created"),k(N,$,$.scopeId,x,W),oe){for(const xe in oe)xe!=="value"&&!Ls(xe)&&o(N,xe,null,oe[xe],ne,W);"value"in oe&&o(N,"value",null,oe.value,ne),(H=oe.onVnodeBeforeMount)&&Kn(H,W,$)}re&&Mr($,null,W,"beforeMount");const he=f_(U,F);he&&F.beforeEnter(N),a(N,B,J),((H=oe&&oe.onVnodeMounted)||he||re)&&rn(()=>{H&&Kn(H,W,$),he&&F.enter(N),re&&Mr($,null,W,"mounted")},U)},k=($,B,J,W,U)=>{if(J&&p($,J),W)for(let ne=0;ne<W.length;ne++)p($,W[ne]);if(U){let ne=U.subTree;if(B===ne||w0(ne.type)&&(ne.ssContent===B||ne.ssFallback===B)){const x=U.vnode;k($,x,x.scopeId,x.slotScopeIds,U.parent)}}},T=($,B,J,W,U,ne,x,M,N=0)=>{for(let H=N;H<$.length;H++){const oe=$[H]=M?cr($[H]):ta($[H]);v(null,oe,B,J,W,U,ne,x,M)}},I=($,B,J,W,U,ne,x)=>{const M=B.el=$.el;let{patchFlag:N,dynamicChildren:H,dirs:oe}=B;N|=$.patchFlag&16;const ae=$.props||tt,F=B.props||tt;let re;if(J&&Tr(J,!1),(re=F.onVnodeBeforeUpdate)&&Kn(re,J,B,$),oe&&Mr(B,$,J,"beforeUpdate"),J&&Tr(J,!0),(ae.innerHTML&&F.innerHTML==null||ae.textContent&&F.textContent==null)&&u(M,""),H?Y($.dynamicChildren,H,M,J,W,xu(B,U),ne):x||L($,B,M,null,J,W,xu(B,U),ne,!1),N>0){if(N&16)Q(M,ae,F,J,U);else if(N&2&&ae.class!==F.class&&o(M,"class",null,F.class,U),N&4&&o(M,"style",ae.style,F.style,U),N&8){const he=B.dynamicProps;for(let xe=0;xe<he.length;xe++){const Re=he[xe],je=ae[Re],We=F[Re];(We!==je||Re==="value")&&o(M,Re,je,We,U,J)}}N&1&&$.children!==B.children&&u(M,B.children)}else!x&&H==null&&Q(M,ae,F,J,U);((re=F.onVnodeUpdated)||oe)&&rn(()=>{re&&Kn(re,J,B,$),oe&&Mr(B,$,J,"updated")},W)},Y=($,B,J,W,U,ne,x)=>{for(let M=0;M<B.length;M++){const N=$[M],H=B[M],oe=N.el&&(N.type===ze||!qr(N,H)||N.shapeFlag&198)?d(N.el):J;v(N,H,oe,null,W,U,ne,x,!0)}},Q=($,B,J,W,U)=>{if(B!==J){if(B!==tt)for(const ne in B)!Ls(ne)&&!(ne in J)&&o($,ne,B[ne],null,U,W);for(const ne in J){if(Ls(ne))continue;const x=J[ne],M=B[ne];x!==M&&ne!=="value"&&o($,ne,M,x,U,W)}"value"in J&&o($,"value",B.value,J.value,U)}},z=($,B,J,W,U,ne,x,M,N)=>{const H=B.el=$?$.el:i(""),oe=B.anchor=$?$.anchor:i("");let{patchFlag:ae,dynamicChildren:F,slotScopeIds:re}=B;re&&(M=M?M.concat(re):re),$==null?(a(H,J,W),a(oe,J,W),T(B.children||[],J,oe,U,ne,x,M,N)):ae>0&&ae&64&&F&&$.dynamicChildren&&$.dynamicChildren.length===F.length?(Y($.dynamicChildren,F,J,U,ne,x,M),(B.key!=null||U&&B===U.subTree)&&Yf($,B,!0)):L($,B,J,oe,U,ne,x,M,N)},te=($,B,J,W,U,ne,x,M,N)=>{B.slotScopeIds=M,$==null?B.shapeFlag&512?U.ctx.activate(B,J,W,x,N):O(B,J,W,U,ne,x,N):D($,B,N)},O=($,B,J,W,U,ne,x)=>{const M=$.component=b_($,W,U);if(Pi($)&&(M.ctx.renderer=pe),w_(M,!1,x),M.asyncDep){if(U&&U.registerDep(M,q,x),!$.el){const N=M.subTree=ie(Ut);g(null,N,B,J),$.placeholder=N.el}}else q(M,$,B,J,U,ne,x)},D=($,B,J)=>{const W=B.component=$.component;if(n_($,B,J))if(W.asyncDep&&!W.asyncResolved){G(W,B,J);return}else W.next=B,W.update();else B.el=$.el,W.vnode=B},q=($,B,J,W,U,ne,x)=>{const M=()=>{if($.isMounted){let{next:ae,bu:F,u:re,parent:he,vnode:xe}=$;{const Lt=y0($);if(Lt){ae&&(ae.el=xe.el,G($,ae,x)),Lt.asyncDep.then(()=>{$.isUnmounted||M()});return}}let Re=ae,je;Tr($,!1),ae?(ae.el=xe.el,G($,ae,x)):ae=xe,F&&wl(F),(je=ae.props&&ae.props.onVnodeBeforeUpdate)&&Kn(je,he,ae,xe),Tr($,!0);const We=yh($),Ge=$.subTree;$.subTree=We,v(Ge,We,d(Ge.el),X(Ge),$,U,ne),ae.el=We.el,Re===null&&a_($,We.el),re&&rn(re,U),(je=ae.props&&ae.props.onVnodeUpdated)&&rn(()=>Kn(je,he,ae,xe),U)}else{let ae;const{el:F,props:re}=B,{bm:he,m:xe,parent:Re,root:je,type:We}=$,Ge=To(B);Tr($,!1),he&&wl(he),!Ge&&(ae=re&&re.onVnodeBeforeMount)&&Kn(ae,Re,B),Tr($,!0);{je.ce&&je.ce._def.shadowRoot!==!1&&je.ce._injectChildStyle(We);const Lt=$.subTree=yh($);v(null,Lt,J,W,$,U,ne),B.el=Lt.el}if(xe&&rn(xe,U),!Ge&&(ae=re&&re.onVnodeMounted)){const Lt=B;rn(()=>Kn(ae,Re,Lt),U)}(B.shapeFlag&256||Re&&To(Re.vnode)&&Re.vnode.shapeFlag&256)&&$.a&&rn($.a,U),$.isMounted=!0,B=J=W=null}};$.scope.on();const N=$.effect=new dy(M);$.scope.off();const H=$.update=N.run.bind(N),oe=$.job=N.runIfDirty.bind(N);oe.i=$,oe.id=$.uid,N.scheduler=()=>Hf(oe),Tr($,!0),H()},G=($,B,J)=>{B.component=$;const W=$.vnode.props;$.vnode=B,$.next=null,o_($,B.props,W,J),c_($,B.children,J),qa(),ih($),Ba()},L=($,B,J,W,U,ne,x,M,N=!1)=>{const H=$&&$.children,oe=$?$.shapeFlag:0,ae=B.children,{patchFlag:F,shapeFlag:re}=B;if(F>0){if(F&128){K(H,ae,J,W,U,ne,x,M,N);return}else if(F&256){ee(H,ae,J,W,U,ne,x,M,N);return}}re&8?(oe&16&&me(H,U,ne),ae!==H&&u(J,ae)):oe&16?re&16?K(H,ae,J,W,U,ne,x,M,N):me(H,U,ne,!0):(oe&8&&u(J,""),re&16&&T(ae,J,W,U,ne,x,M,N))},ee=($,B,J,W,U,ne,x,M,N)=>{$=$||Ao,B=B||Ao;const H=$.length,oe=B.length,ae=Math.min(H,oe);let F;for(F=0;F<ae;F++){const re=B[F]=N?cr(B[F]):ta(B[F]);v($[F],re,J,null,U,ne,x,M,N)}H>oe?me($,U,ne,!0,!1,ae):T(B,J,W,U,ne,x,M,N,ae)},K=($,B,J,W,U,ne,x,M,N)=>{let H=0;const oe=B.length;let ae=$.length-1,F=oe-1;for(;H<=ae&&H<=F;){const re=$[H],he=B[H]=N?cr(B[H]):ta(B[H]);if(qr(re,he))v(re,he,J,null,U,ne,x,M,N);else break;H++}for(;H<=ae&&H<=F;){const re=$[ae],he=B[F]=N?cr(B[F]):ta(B[F]);if(qr(re,he))v(re,he,J,null,U,ne,x,M,N);else break;ae--,F--}if(H>ae){if(H<=F){const re=F+1,he=re<oe?B[re].el:W;for(;H<=F;)v(null,B[H]=N?cr(B[H]):ta(B[H]),J,he,U,ne,x,M,N),H++}}else if(H>F)for(;H<=ae;)ue($[H],U,ne,!0),H++;else{const re=H,he=H,xe=new Map;for(H=he;H<=F;H++){const Qe=B[H]=N?cr(B[H]):ta(B[H]);Qe.key!=null&&xe.set(Qe.key,H)}let Re,je=0;const We=F-he+1;let Ge=!1,Lt=0;const jt=new Array(We);for(H=0;H<We;H++)jt[H]=0;for(H=re;H<=ae;H++){const Qe=$[H];if(je>=We){ue(Qe,U,ne,!0);continue}let _e;if(Qe.key!=null)_e=xe.get(Qe.key);else for(Re=he;Re<=F;Re++)if(jt[Re-he]===0&&qr(Qe,B[Re])){_e=Re;break}_e===void 0?ue(Qe,U,ne,!0):(jt[_e-he]=H+1,_e>=Lt?Lt=_e:Ge=!0,v(Qe,B[_e],J,null,U,ne,x,M,N),je++)}const Je=Ge?p_(jt):Ao;for(Re=Je.length-1,H=We-1;H>=0;H--){const Qe=he+H,_e=B[Qe],Le=B[Qe+1],kn=Qe+1<oe?Le.el||b0(Le):W;jt[H]===0?v(null,_e,J,kn,U,ne,x,M,N):Ge&&(Re<0||H!==Je[Re]?ce(_e,J,kn,2):Re--)}}},ce=($,B,J,W,U=null)=>{const{el:ne,type:x,transition:M,children:N,shapeFlag:H}=$;if(H&6){ce($.component.subTree,B,J,W);return}if(H&128){$.suspense.move(B,J,W);return}if(H&64){x.move($,B,J,pe);return}if(x===ze){a(ne,B,J);for(let ae=0;ae<N.length;ae++)ce(N[ae],B,J,W);a($.anchor,B,J);return}if(x===kl){w($,B,J);return}if(W!==2&&H&1&&M)if(W===0)M.beforeEnter(ne),a(ne,B,J),rn(()=>M.enter(ne),U);else{const{leave:ae,delayLeave:F,afterLeave:re}=M,he=()=>{$.ctx.isUnmounted?r(ne):a(ne,B,J)},xe=()=>{ne._isLeaving&&ne[Ca](!0),ae(ne,()=>{he(),re&&re()})};F?F(ne,he,xe):xe()}else a(ne,B,J)},ue=($,B,J,W=!1,U=!1)=>{const{type:ne,props:x,ref:M,children:N,dynamicChildren:H,shapeFlag:oe,patchFlag:ae,dirs:F,cacheIndex:re}=$;if(ae===-2&&(U=!1),M!=null&&(qa(),Bs(M,null,J,$,!0),Ba()),re!=null&&(B.renderCache[re]=void 0),oe&256){B.ctx.deactivate($);return}const he=oe&1&&F,xe=!To($);let Re;if(xe&&(Re=x&&x.onVnodeBeforeUnmount)&&Kn(Re,B,$),oe&6)we($.component,J,W);else{if(oe&128){$.suspense.unmount(J,W);return}he&&Mr($,null,B,"beforeUnmount"),oe&64?$.type.remove($,B,J,pe,W):H&&!H.hasOnce&&(ne!==ze||ae>0&&ae&64)?me(H,B,J,!1,!0):(ne===ze&&ae&384||!U&&oe&16)&&me(N,B,J),W&&be($)}(xe&&(Re=x&&x.onVnodeUnmounted)||he)&&rn(()=>{Re&&Kn(Re,B,$),he&&Mr($,null,B,"unmounted")},J)},be=$=>{const{type:B,el:J,anchor:W,transition:U}=$;if(B===ze){ge(J,W);return}if(B===kl){_($);return}const ne=()=>{r(J),U&&!U.persisted&&U.afterLeave&&U.afterLeave()};if($.shapeFlag&1&&U&&!U.persisted){const{leave:x,delayLeave:M}=U,N=()=>x(J,ne);M?M($.el,ne,N):N()}else ne()},ge=($,B)=>{let J;for(;$!==B;)J=h($),r($),$=J;r(B)},we=($,B,J)=>{const{bum:W,scope:U,job:ne,subTree:x,um:M,m:N,a:H}=$;_h(N),_h(H),W&&wl(W),U.stop(),ne&&(ne.flags|=8,ue(x,$,B,J)),M&&rn(M,B),rn(()=>{$.isUnmounted=!0},B)},me=($,B,J,W=!1,U=!1,ne=0)=>{for(let x=ne;x<$.length;x++)ue($[x],B,J,W,U)},X=$=>{if($.shapeFlag&6)return X($.component.subTree);if($.shapeFlag&128)return $.suspense.next();const B=h($.anchor||$.el),J=B&&B[Ny];return J?h(J):B};let le=!1;const se=($,B,J)=>{let W;$==null?B._vnode&&(ue(B._vnode,null,null,!0),W=B._vnode.component):v(B._vnode||null,$,B,null,null,null,J),B._vnode=$,le||(le=!0,ih(W),Ey(),le=!1)},pe={p:v,um:ue,m:ce,r:be,mt:O,mc:T,pc:L,pbc:Y,n:X,o:e};return{render:se,hydrate:void 0,createApp:Jw(se)}}function xu({type:e,props:t},n){return n==="svg"&&e==="foreignObject"||n==="mathml"&&e==="annotation-xml"&&t&&t.encoding&&t.encoding.includes("html")?void 0:n}function Tr({effect:e,job:t},n){n?(e.flags|=32,t.flags|=4):(e.flags&=-33,t.flags&=-5)}function f_(e,t){return(!e||e&&!e.pendingBranch)&&t&&!t.persisted}function Yf(e,t,n=!1){const a=e.children,r=t.children;if(Ne(a)&&Ne(r))for(let o=0;o<a.length;o++){const s=a[o];let i=r[o];i.shapeFlag&1&&!i.dynamicChildren&&((i.patchFlag<=0||i.patchFlag===32)&&(i=r[o]=cr(r[o]),i.el=s.el),!n&&i.patchFlag!==-2&&Yf(s,i)),i.type===Mi&&(i.patchFlag!==-1?i.el=s.el:i.__elIndex=o+(e.type===ze?1:0)),i.type===Ut&&!i.el&&(i.el=s.el)}}function p_(e){const t=e.slice(),n=[0];let a,r,o,s,i;const l=e.length;for(a=0;a<l;a++){const c=e[a];if(c!==0){if(r=n[n.length-1],e[r]<c){t[a]=r,n.push(a);continue}for(o=0,s=n.length-1;o<s;)i=o+s>>1,e[n[i]]<c?o=i+1:s=i;c<e[n[o]]&&(o>0&&(t[a]=n[o-1]),n[o]=a)}}for(o=n.length,s=n[o-1];o-- >0;)n[o]=s,s=t[s];return n}function y0(e){const t=e.subTree.component;if(t)return t.asyncDep&&!t.asyncResolved?t:y0(t)}function _h(e){if(e)for(let t=0;t<e.length;t++)e[t].flags|=8}function b0(e){if(e.placeholder)return e.placeholder;const t=e.component;return t?b0(t.subTree):null}const w0=e=>e.__isSuspense;function h_(e,t){t&&t.pendingBranch?Ne(e)?t.effects.push(...e):t.effects.push(e):Aw(e)}const ze=Symbol.for("v-fgt"),Mi=Symbol.for("v-txt"),Ut=Symbol.for("v-cmt"),kl=Symbol.for("v-stc"),Vs=[];let un=null;function C(e=!1){Vs.push(un=e?null:[])}function m_(){Vs.pop(),un=Vs[Vs.length-1]||null}let Fo=1;function Gl(e,t=!1){Fo+=e,e<0&&un&&t&&(un.hasOnce=!0)}function _0(e){return e.dynamicChildren=Fo>0?un||Ao:null,m_(),Fo>0&&un&&un.push(e),e}function ye(e,t,n,a,r,o){return _0(ke(e,t,n,a,r,o,!0))}function R(e,t,n,a,r){return _0(ie(e,t,n,a,r,!0))}function ei(e){return e?e.__v_isVNode===!0:!1}function qr(e,t){return e.type===t.type&&e.key===t.key}const k0=({key:e})=>e??null,Cl=({ref:e,ref_key:t,ref_for:n})=>(typeof e=="number"&&(e=""+e),e!=null?_t(e)||et(e)||Be(e)?{i:Yt,r:e,k:t,f:!!n}:e:null);function ke(e,t=null,n=null,a=0,r=null,o=e===ze?0:1,s=!1,i=!1){const l={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&k0(t),ref:t&&Cl(t),scopeId:Ry,slotScopeIds:null,children:n,component:null,suspense:null,ssContent:null,ssFallback:null,dirs:null,transition:null,el:null,anchor:null,target:null,targetStart:null,targetAnchor:null,staticCount:0,shapeFlag:o,patchFlag:a,dynamicProps:r,dynamicChildren:null,appContext:null,ctx:Yt};return i?(Kf(l,n),o&128&&e.normalize(l)):n&&(l.shapeFlag|=_t(n)?8:16),Fo>0&&!s&&un&&(l.patchFlag>0||o&6)&&l.patchFlag!==32&&un.push(l),l}const ie=g_;function g_(e,t=null,n=null,a=0,r=null,o=!1){if((!e||e===Zy)&&(e=Ut),ei(e)){const i=Va(e,t,!0);return n&&Kf(i,n),Fo>0&&!o&&un&&(i.shapeFlag&6?un[un.indexOf(e)]=i:un.push(i)),i.patchFlag=-2,i}if(S_(e)&&(e=e.__vccOpts),t){t=Oe(t);let{class:i,style:l}=t;i&&!_t(i)&&(t.class=Ae(i)),ct(l)&&(Ic(l)&&!Ne(l)&&(l=Rt({},l)),t.style=yn(l))}const s=_t(e)?1:w0(e)?128:Fy(e)?64:ct(e)?4:Be(e)?2:0;return ke(e,t,n,a,r,s,o,!0)}function Oe(e){return e?Ic(e)||f0(e)?Rt({},e):e:null}function Va(e,t,n=!1,a=!1){const{props:r,ref:o,patchFlag:s,children:i,transition:l}=e,c=t?de(r||{},t):r,u={__v_isVNode:!0,__v_skip:!0,type:e.type,props:c,key:c&&k0(c),ref:t&&t.ref?n&&o?Ne(o)?o.concat(Cl(t)):[o,Cl(t)]:Cl(t):o,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:i,target:e.target,targetStart:e.targetStart,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==ze?s===-1?16:s|16:s,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:l,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&Va(e.ssContent),ssFallback:e.ssFallback&&Va(e.ssFallback),placeholder:e.placeholder,el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce};return l&&a&&Qs(u,l.clone(u)),u}function qe(e=" ",t=0){return ie(Mi,null,e,t)}function eae(e,t){const n=ie(kl,null,e);return n.staticCount=t,n}function ve(e="",t=!1){return t?(C(),R(Ut,null,e)):ie(Ut,null,e)}function ta(e){return e==null||typeof e=="boolean"?ie(Ut):Ne(e)?ie(ze,null,e.slice()):ei(e)?cr(e):ie(Mi,null,String(e))}function cr(e){return e.el===null&&e.patchFlag!==-1||e.memo?e:Va(e)}function Kf(e,t){let n=0;const{shapeFlag:a}=e;if(t==null)t=null;else if(Ne(t))n=16;else if(typeof t=="object")if(a&65){const r=t.default;r&&(r._c&&(r._d=!1),Kf(e,r()),r._c&&(r._d=!0));return}else{n=32;const r=t._;!r&&!f0(t)?t._ctx=Yt:r===3&&Yt&&(Yt.slots._===1?t._=1:(t._=2,e.patchFlag|=1024))}else Be(t)?(t={default:t,_ctx:Yt},n=32):(t=String(t),a&64?(n=16,t=[qe(t)]):n=8);e.children=t,e.shapeFlag|=n}function de(...e){const t={};for(let n=0;n<e.length;n++){const a=e[n];for(const r in a)if(r==="class")t.class!==a.class&&(t.class=Ae([t.class,a.class]));else if(r==="style")t.style=yn([t.style,a.style]);else if(bc(r)){const o=t[r],s=a[r];s&&o!==s&&!(Ne(o)&&o.includes(s))&&(t[r]=o?[].concat(o,s):s)}else r!==""&&(t[r]=a[r])}return t}function Kn(e,t,n,a=null){Wn(e,t,7,[n,a])}const v_=s0();let y_=0;function b_(e,t,n){const a=e.type,r=(t?t.appContext:e.appContext)||v_,o={uid:y_++,vnode:e,type:a,parent:t,appContext:r,root:null,next:null,subTree:null,effect:null,update:null,job:null,scope:new uy(!0),render:null,proxy:null,exposed:null,exposeProxy:null,withProxy:null,provides:t?t.provides:Object.create(r.provides),ids:t?t.ids:["",0,0],accessCache:null,renderCache:[],components:null,directives:null,propsOptions:h0(a,r),emitsOptions:c0(a,r),emit:null,emitted:null,propsDefaults:tt,inheritAttrs:a.inheritAttrs,ctx:tt,data:tt,props:tt,attrs:tt,slots:tt,refs:tt,setupState:tt,setupContext:null,suspense:n,suspenseId:n?n.pendingId:0,asyncDep:null,asyncResolved:!1,isMounted:!1,isUnmounted:!1,isDeactivated:!1,bc:null,c:null,bm:null,m:null,bu:null,u:null,um:null,bum:null,da:null,a:null,rtg:null,rtc:null,ec:null,sp:null};return o.ctx={_:o},o.root=t?t.root:o,o.emit=Qw.bind(null,o),e.ce&&e.ce(o),o}let Gt=null;const Mt=()=>Gt||Yt;let Yl,Pd;{const e=Sc(),t=(n,a)=>{let r;return(r=e[n])||(r=e[n]=[]),r.push(a),o=>{r.length>1?r.forEach(s=>s(o)):r[0](o)}};Yl=t("__VUE_INSTANCE_SETTERS__",n=>Gt=n),Pd=t("__VUE_SSR_SETTERS__",n=>qo=n)}const Ti=e=>{const t=Gt;return Yl(e),e.scope.on(),()=>{e.scope.off(),Yl(t)}},kh=()=>{Gt&&Gt.scope.off(),Yl(null)};function C0(e){return e.vnode.shapeFlag&4}let qo=!1;function w_(e,t=!1,n=!1){t&&Pd(t);const{props:a,children:r}=e.vnode,o=C0(e);r_(e,a,o,t),l_(e,r,n||t);const s=o?__(e,t):void 0;return t&&Pd(!1),s}function __(e,t){const n=e.type;e.accessCache=Object.create(null),e.proxy=new Proxy(e.ctx,zw);const{setup:a}=n;if(a){qa();const r=e.setupContext=a.length>1?x0(e):null,o=Ti(e),s=Si(a,e,0,[e.props,r]),i=ny(s);if(Ba(),o(),(i||e.sp)&&!To(e)&&zf(e),i){if(s.then(kh,kh),t)return s.then(l=>{Ch(e,l)}).catch(l=>{xi(l,e,0)});e.asyncDep=s}else Ch(e,s)}else S0(e)}function Ch(e,t,n){Be(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:ct(t)&&(e.setupState=My(t)),S0(e)}function S0(e,t,n){const a=e.type;e.render||(e.render=a.render||ra);{const r=Ti(e);qa();try{Ww(e)}finally{Ba(),r()}}}const k_={get(e,t){return Zt(e,"get",""),e[t]}};function x0(e){const t=n=>{e.exposed=n||{}};return{attrs:new Proxy(e.attrs,k_),slots:e.slots,emit:e.emit,expose:t}}function Rc(e){return e.exposed?e.exposeProxy||(e.exposeProxy=new Proxy(My(ki(e.exposed)),{get(t,n){if(n in t)return t[n];if(n in Hs)return Hs[n](e)},has(t,n){return n in t||n in Hs}})):e.proxy}function C_(e,t=!0){return Be(e)?e.displayName||e.name:e.name||t&&e.__name}function S_(e){return Be(e)&&"__vccOpts"in e}const S=(e,t)=>_w(e,t,qo);function Pn(e,t,n){try{Gl(-1);const a=arguments.length;return a===2?ct(t)&&!Ne(t)?ei(t)?ie(e,null,[t]):ie(e,t):ie(e,null,t):(a>3?n=Array.prototype.slice.call(arguments,2):a===3&&ei(n)&&(n=[n]),ie(e,t,n))}finally{Gl(1)}}function tae(e,t,n,a){const r=n[a];if(r&&x_(r,e))return r;const o=t();return o.memo=e.slice(),o.cacheIndex=a,n[a]=o}function x_(e,t){const n=e.memo;if(n.length!=t.length)return!1;for(let a=0;a<n.length;a++)if(sn(n[a],t[a]))return!1;return Fo>0&&un&&un.push(e),!0}const A_="3.5.27";let Md;const Sh=typeof window<"u"&&window.trustedTypes;if(Sh)try{Md=Sh.createPolicy("vue",{createHTML:e=>e})}catch{}const A0=Md?e=>Md.createHTML(e):e=>e,P_="http://www.w3.org/2000/svg",M_="http://www.w3.org/1998/Math/MathML",ka=typeof document<"u"?document:null,xh=ka&&ka.createElement("template"),T_={insert:(e,t,n)=>{t.insertBefore(e,n||null)},remove:e=>{const t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,n,a)=>{const r=t==="svg"?ka.createElementNS(P_,e):t==="mathml"?ka.createElementNS(M_,e):n?ka.createElement(e,{is:n}):ka.createElement(e);return e==="select"&&a&&a.multiple!=null&&r.setAttribute("multiple",a.multiple),r},createText:e=>ka.createTextNode(e),createComment:e=>ka.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>ka.querySelector(e),setScopeId(e,t){e.setAttribute(t,"")},insertStaticContent(e,t,n,a,r,o){const s=n?n.previousSibling:t.lastChild;if(r&&(r===o||r.nextSibling))for(;t.insertBefore(r.cloneNode(!0),n),!(r===o||!(r=r.nextSibling)););else{xh.innerHTML=A0(a==="svg"?`<svg>${e}</svg>`:a==="mathml"?`<math>${e}</math>`:e);const i=xh.content;if(a==="svg"||a==="mathml"){const l=i.firstChild;for(;l.firstChild;)i.appendChild(l.firstChild);i.removeChild(l)}t.insertBefore(i,n)}return[s?s.nextSibling:t.firstChild,n?n.previousSibling:t.lastChild]}},tr="transition",ks="animation",ti=Symbol("_vtc"),P0={name:String,type:String,css:{type:Boolean,default:!0},duration:[String,Number,Object],enterFromClass:String,enterActiveClass:String,enterToClass:String,appearFromClass:String,appearActiveClass:String,appearToClass:String,leaveFromClass:String,leaveActiveClass:String,leaveToClass:String},I_=Rt({},Hy,P0),D_=e=>(e.displayName="Transition",e.props=I_,e),Ah=D_((e,{slots:t})=>Pn(Rw,E_(e),t)),Ir=(e,t=[])=>{Ne(e)?e.forEach(n=>n(...t)):e&&e(...t)},Ph=e=>e?Ne(e)?e.some(t=>t.length>1):e.length>1:!1;function E_(e){const t={};for(const z in e)z in P0||(t[z]=e[z]);if(e.css===!1)return t;const{name:n="v",type:a,duration:r,enterFromClass:o=`${n}-enter-from`,enterActiveClass:s=`${n}-enter-active`,enterToClass:i=`${n}-enter-to`,appearFromClass:l=o,appearActiveClass:c=s,appearToClass:u=i,leaveFromClass:d=`${n}-leave-from`,leaveActiveClass:h=`${n}-leave-active`,leaveToClass:p=`${n}-leave-to`}=e,m=$_(r),v=m&&m[0],y=m&&m[1],{onBeforeEnter:g,onEnter:b,onEnterCancelled:w,onLeave:_,onLeaveCancelled:A,onBeforeAppear:P=g,onAppear:k=b,onAppearCancelled:T=w}=t,I=(z,te,O,D)=>{z._enterCancelled=D,Dr(z,te?u:i),Dr(z,te?c:s),O&&O()},Y=(z,te)=>{z._isLeaving=!1,Dr(z,d),Dr(z,p),Dr(z,h),te&&te()},Q=z=>(te,O)=>{const D=z?k:b,q=()=>I(te,z,O);Ir(D,[te,q]),Mh(()=>{Dr(te,z?l:o),va(te,z?u:i),Ph(D)||Th(te,a,v,q)})};return Rt(t,{onBeforeEnter(z){Ir(g,[z]),va(z,o),va(z,s)},onBeforeAppear(z){Ir(P,[z]),va(z,l),va(z,c)},onEnter:Q(!1),onAppear:Q(!0),onLeave(z,te){z._isLeaving=!0;const O=()=>Y(z,te);va(z,d),z._enterCancelled?(va(z,h),Eh(z)):(Eh(z),va(z,h)),Mh(()=>{z._isLeaving&&(Dr(z,d),va(z,p),Ph(_)||Th(z,a,y,O))}),Ir(_,[z,O])},onEnterCancelled(z){I(z,!1,void 0,!0),Ir(w,[z])},onAppearCancelled(z){I(z,!0,void 0,!0),Ir(T,[z])},onLeaveCancelled(z){Y(z),Ir(A,[z])}})}function $_(e){if(e==null)return null;if(ct(e))return[Au(e.enter),Au(e.leave)];{const t=Au(e);return[t,t]}}function Au(e){return V5(e)}function va(e,t){t.split(/\s+/).forEach(n=>n&&e.classList.add(n)),(e[ti]||(e[ti]=new Set)).add(t)}function Dr(e,t){t.split(/\s+/).forEach(a=>a&&e.classList.remove(a));const n=e[ti];n&&(n.delete(t),n.size||(e[ti]=void 0))}function Mh(e){requestAnimationFrame(()=>{requestAnimationFrame(e)})}let R_=0;function Th(e,t,n,a){const r=e._endId=++R_,o=()=>{r===e._endId&&a()};if(n!=null)return setTimeout(o,n);const{type:s,timeout:i,propCount:l}=L_(e,t);if(!s)return a();const c=s+"end";let u=0;const d=()=>{e.removeEventListener(c,h),o()},h=p=>{p.target===e&&++u>=l&&d()};setTimeout(()=>{u<l&&d()},i+1),e.addEventListener(c,h)}function L_(e,t){const n=window.getComputedStyle(e),a=m=>(n[m]||"").split(", "),r=a(`${tr}Delay`),o=a(`${tr}Duration`),s=Ih(r,o),i=a(`${ks}Delay`),l=a(`${ks}Duration`),c=Ih(i,l);let u=null,d=0,h=0;t===tr?s>0&&(u=tr,d=s,h=o.length):t===ks?c>0&&(u=ks,d=c,h=l.length):(d=Math.max(s,c),u=d>0?s>c?tr:ks:null,h=u?u===tr?o.length:l.length:0);const p=u===tr&&/\b(?:transform|all)(?:,|$)/.test(a(`${tr}Property`).toString());return{type:u,timeout:d,propCount:h,hasTransform:p}}function Ih(e,t){for(;e.length<t.length;)e=e.concat(e);return Math.max(...t.map((n,a)=>Dh(n)+Dh(e[a])))}function Dh(e){return e==="auto"?0:Number(e.slice(0,-1).replace(",","."))*1e3}function Eh(e){return(e?e.ownerDocument:document).body.offsetHeight}function O_(e,t,n){const a=e[ti];a&&(t=(t?[t,...a]:[...a]).join(" ")),t==null?e.removeAttribute("class"):n?e.setAttribute("class",t):e.className=t}const Kl=Symbol("_vod"),M0=Symbol("_vsh"),nae={name:"show",beforeMount(e,{value:t},{transition:n}){e[Kl]=e.style.display==="none"?"":e.style.display,n&&t?n.beforeEnter(e):Cs(e,t)},mounted(e,{value:t},{transition:n}){n&&t&&n.enter(e)},updated(e,{value:t,oldValue:n},{transition:a}){!t!=!n&&(a?t?(a.beforeEnter(e),Cs(e,!0),a.enter(e)):a.leave(e,()=>{Cs(e,!1)}):Cs(e,t))},beforeUnmount(e,{value:t}){Cs(e,t)}};function Cs(e,t){e.style.display=t?e[Kl]:"none",e[M0]=!t}const N_=Symbol(""),F_=/(?:^|;)\s*display\s*:/;function q_(e,t,n){const a=e.style,r=_t(n);let o=!1;if(n&&!r){if(t)if(_t(t))for(const s of t.split(";")){const i=s.slice(0,s.indexOf(":")).trim();n[i]==null&&Sl(a,i,"")}else for(const s in t)n[s]==null&&Sl(a,s,"");for(const s in n)s==="display"&&(o=!0),Sl(a,s,n[s])}else if(r){if(t!==n){const s=a[N_];s&&(n+=";"+s),a.cssText=n,o=F_.test(n)}}else t&&e.removeAttribute("style");Kl in e&&(e[Kl]=o?a.display:"",e[M0]&&(a.display="none"))}const $h=/\s*!important$/;function Sl(e,t,n){if(Ne(n))n.forEach(a=>Sl(e,t,a));else if(n==null&&(n=""),t.startsWith("--"))e.setProperty(t,n);else{const a=B_(e,t);$h.test(n)?e.setProperty(Wa(a),n.replace($h,""),"important"):e[a]=n}}const Rh=["Webkit","Moz","ms"],Pu={};function B_(e,t){const n=Pu[t];if(n)return n;let a=pn(t);if(a!=="filter"&&a in e)return Pu[t]=a;a=Cc(a);for(let r=0;r<Rh.length;r++){const o=Rh[r]+a;if(o in e)return Pu[t]=o}return t}const Lh="http://www.w3.org/1999/xlink";function Oh(e,t,n,a,r,o=Y5(t)){a&&t.startsWith("xlink:")?n==null?e.removeAttributeNS(Lh,t.slice(6,t.length)):e.setAttributeNS(Lh,t,n):n==null||o&&!sy(n)?e.removeAttribute(t):e.setAttribute(t,o?"":zn(n)?String(n):n)}function Nh(e,t,n,a,r){if(t==="innerHTML"||t==="textContent"){n!=null&&(e[t]=t==="innerHTML"?A0(n):n);return}const o=e.tagName;if(t==="value"&&o!=="PROGRESS"&&!o.includes("-")){const i=o==="OPTION"?e.getAttribute("value")||"":e.value,l=n==null?e.type==="checkbox"?"on":"":String(n);(i!==l||!("_value"in e))&&(e.value=l),n==null&&e.removeAttribute(t),e._value=n;return}let s=!1;if(n===""||n==null){const i=typeof e[t];i==="boolean"?n=sy(n):n==null&&i==="string"?(n="",s=!0):i==="number"&&(n=0,s=!0)}try{e[t]=n}catch{}s&&e.removeAttribute(r||t)}function Br(e,t,n,a){e.addEventListener(t,n,a)}function H_(e,t,n,a){e.removeEventListener(t,n,a)}const Fh=Symbol("_vei");function V_(e,t,n,a,r=null){const o=e[Fh]||(e[Fh]={}),s=o[t];if(a&&s)s.value=a;else{const[i,l]=z_(t);if(a){const c=o[t]=U_(a,r);Br(e,i,c,l)}else s&&(H_(e,i,s,l),o[t]=void 0)}}const qh=/(?:Once|Passive|Capture)$/;function z_(e){let t;if(qh.test(e)){t={};let a;for(;a=e.match(qh);)e=e.slice(0,e.length-a[0].length),t[a[0].toLowerCase()]=!0}return[e[2]===":"?e.slice(3):Wa(e.slice(2)),t]}let Mu=0;const j_=Promise.resolve(),W_=()=>Mu||(j_.then(()=>Mu=0),Mu=Date.now());function U_(e,t){const n=a=>{if(!a._vts)a._vts=Date.now();else if(a._vts<=n.attached)return;Wn(G_(a,n.value),t,5,[a])};return n.value=e,n.attached=W_(),n}function G_(e,t){if(Ne(t)){const n=e.stopImmediatePropagation;return e.stopImmediatePropagation=()=>{n.call(e),e._stopped=!0},t.map(a=>r=>!r._stopped&&a&&a(r))}else return t}const Bh=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&e.charCodeAt(2)>96&&e.charCodeAt(2)<123,Y_=(e,t,n,a,r,o)=>{const s=r==="svg";t==="class"?O_(e,a,s):t==="style"?q_(e,n,a):bc(t)?Rf(t)||V_(e,t,n,a,o):(t[0]==="."?(t=t.slice(1),!0):t[0]==="^"?(t=t.slice(1),!1):K_(e,t,a,s))?(Nh(e,t,a),!e.tagName.includes("-")&&(t==="value"||t==="checked"||t==="selected")&&Oh(e,t,a,s,o,t!=="value")):e._isVueCE&&(/[A-Z]/.test(t)||!_t(a))?Nh(e,pn(t),a,o,t):(t==="true-value"?e._trueValue=a:t==="false-value"&&(e._falseValue=a),Oh(e,t,a,s))};function K_(e,t,n,a){if(a)return!!(t==="innerHTML"||t==="textContent"||t in e&&Bh(t)&&Be(n));if(t==="spellcheck"||t==="draggable"||t==="translate"||t==="autocorrect"||t==="sandbox"&&e.tagName==="IFRAME"||t==="form"||t==="list"&&e.tagName==="INPUT"||t==="type"&&e.tagName==="TEXTAREA")return!1;if(t==="width"||t==="height"){const r=e.tagName;if(r==="IMG"||r==="VIDEO"||r==="CANVAS"||r==="SOURCE")return!1}return Bh(t)&&_t(n)?!1:t in e}const Xl=e=>{const t=e.props["onUpdate:modelValue"]||!1;return Ne(t)?n=>wl(t,n):t};function X_(e){e.target.composing=!0}function Hh(e){const t=e.target;t.composing&&(t.composing=!1,t.dispatchEvent(new Event("input")))}const Io=Symbol("_assign");function Vh(e,t,n){return t&&(e=e.trim()),n&&(e=Of(e)),e}const aae={created(e,{modifiers:{lazy:t,trim:n,number:a}},r){e[Io]=Xl(r);const o=a||r.props&&r.props.type==="number";Br(e,t?"change":"input",s=>{s.target.composing||e[Io](Vh(e.value,n,o))}),(n||o)&&Br(e,"change",()=>{e.value=Vh(e.value,n,o)}),t||(Br(e,"compositionstart",X_),Br(e,"compositionend",Hh),Br(e,"change",Hh))},mounted(e,{value:t}){e.value=t??""},beforeUpdate(e,{value:t,oldValue:n,modifiers:{lazy:a,trim:r,number:o}},s){if(e[Io]=Xl(s),e.composing)return;const i=(o||e.type==="number")&&!/^0\d/.test(e.value)?Of(e.value):e.value,l=t??"";i!==l&&(document.activeElement===e&&e.type!=="range"&&(a&&t===n||r&&e.value.trim()===l)||(e.value=l))}},rae={deep:!0,created(e,t,n){e[Io]=Xl(n),Br(e,"change",()=>{const a=e._modelValue,r=J_(e),o=e.checked,s=e[Io];if(Ne(a)){const i=iy(a,r),l=i!==-1;if(o&&!l)s(a.concat(r));else if(!o&&l){const c=[...a];c.splice(i,1),s(c)}}else if(wc(a)){const i=new Set(a);o?i.add(r):i.delete(r),s(i)}else s(T0(e,o))})},mounted:zh,beforeUpdate(e,t,n){e[Io]=Xl(n),zh(e,t,n)}};function zh(e,{value:t,oldValue:n},a){e._modelValue=t;let r;if(Ne(t))r=iy(t,a.props.value)>-1;else if(wc(t))r=t.has(a.props.value);else{if(t===n)return;r=xc(t,T0(e,!0))}e.checked!==r&&(e.checked=r)}function J_(e){return"_value"in e?e._value:e.value}function T0(e,t){const n=t?"_trueValue":"_falseValue";return n in e?e[n]:t}const Q_=["ctrl","shift","alt","meta"],Z_={stop:e=>e.stopPropagation(),prevent:e=>e.preventDefault(),self:e=>e.target!==e.currentTarget,ctrl:e=>!e.ctrlKey,shift:e=>!e.shiftKey,alt:e=>!e.altKey,meta:e=>!e.metaKey,left:e=>"button"in e&&e.button!==0,middle:e=>"button"in e&&e.button!==1,right:e=>"button"in e&&e.button!==2,exact:(e,t)=>Q_.some(n=>e[`${n}Key`]&&!t.includes(n))},Vt=(e,t)=>{const n=e._withMods||(e._withMods={}),a=t.join(".");return n[a]||(n[a]=((r,...o)=>{for(let s=0;s<t.length;s++){const i=Z_[t[s]];if(i&&i(r,t))return}return e(r,...o)}))},ek={esc:"escape",space:" ",up:"arrow-up",left:"arrow-left",right:"arrow-right",down:"arrow-down",delete:"backspace"},Ln=(e,t)=>{const n=e._withKeys||(e._withKeys={}),a=t.join(".");return n[a]||(n[a]=(r=>{if(!("key"in r))return;const o=Wa(r.key);if(t.some(s=>s===o||ek[s]===o))return e(r)}))},tk=Rt({patchProp:Y_},T_);let jh;function nk(){return jh||(jh=u_(tk))}const ak=((...e)=>{const t=nk().createApp(...e),{mount:n}=t;return t.mount=a=>{const r=ok(a);if(!r)return;const o=t._component;!Be(o)&&!o.render&&!o.template&&(o.template=r.innerHTML),r.nodeType===1&&(r.textContent="");const s=n(r,!1,rk(r));return r instanceof Element&&(r.removeAttribute("v-cloak"),r.setAttribute("data-v-app","")),s},t});function rk(e){if(e instanceof SVGElement)return"svg";if(typeof MathMLElement=="function"&&e instanceof MathMLElement)return"mathml"}function ok(e){return _t(e)?document.querySelector(e):e}const I0=/^[a-z0-9]+(-[a-z0-9]+)*$/,Lc=(e,t,n,a="")=>{const r=e.split(":");if(e.slice(0,1)==="@"){if(r.length<2||r.length>3)return null;a=r.shift().slice(1)}if(r.length>3||!r.length)return null;if(r.length>1){const i=r.pop(),l=r.pop(),c={provider:r.length>0?r[0]:a,prefix:l,name:i};return t&&!xl(c)?null:c}const o=r[0],s=o.split("-");if(s.length>1){const i={provider:a,prefix:s.shift(),name:s.join("-")};return t&&!xl(i)?null:i}if(n&&a===""){const i={provider:a,prefix:"",name:o};return t&&!xl(i,n)?null:i}return null},xl=(e,t)=>e?!!((t&&e.prefix===""||e.prefix)&&e.name):!1;function sk(e,t){const n=e.icons,a=e.aliases||Object.create(null),r=Object.create(null);function o(s){if(n[s])return r[s]=[];if(!(s in r)){r[s]=null;const i=a[s]&&a[s].parent,l=i&&o(i);l&&(r[s]=[i].concat(l))}return r[s]}return Object.keys(n).concat(Object.keys(a)).forEach(o),r}const D0=Object.freeze({left:0,top:0,width:16,height:16}),Jl=Object.freeze({rotate:0,vFlip:!1,hFlip:!1}),Oc=Object.freeze({...D0,...Jl}),Td=Object.freeze({...Oc,body:"",hidden:!1});function ik(e,t){const n={};!e.hFlip!=!t.hFlip&&(n.hFlip=!0),!e.vFlip!=!t.vFlip&&(n.vFlip=!0);const a=((e.rotate||0)+(t.rotate||0))%4;return a&&(n.rotate=a),n}function Wh(e,t){const n=ik(e,t);for(const a in Td)a in Jl?a in e&&!(a in n)&&(n[a]=Jl[a]):a in t?n[a]=t[a]:a in e&&(n[a]=e[a]);return n}function lk(e,t,n){const a=e.icons,r=e.aliases||Object.create(null);let o={};function s(i){o=Wh(a[i]||r[i],o)}return s(t),n.forEach(s),Wh(e,o)}function E0(e,t){const n=[];if(typeof e!="object"||typeof e.icons!="object")return n;e.not_found instanceof Array&&e.not_found.forEach(r=>{t(r,null),n.push(r)});const a=sk(e);for(const r in a){const o=a[r];o&&(t(r,lk(e,r,o)),n.push(r))}return n}const ck={provider:"",aliases:{},not_found:{},...D0};function Tu(e,t){for(const n in t)if(n in e&&typeof e[n]!=typeof t[n])return!1;return!0}function $0(e){if(typeof e!="object"||e===null)return null;const t=e;if(typeof t.prefix!="string"||!e.icons||typeof e.icons!="object"||!Tu(e,ck))return null;const n=t.icons;for(const r in n){const o=n[r];if(!r||typeof o.body!="string"||!Tu(o,Td))return null}const a=t.aliases||Object.create(null);for(const r in a){const o=a[r],s=o.parent;if(!r||typeof s!="string"||!n[s]&&!a[s]||!Tu(o,Td))return null}return t}const Uh=Object.create(null);function uk(e,t){return{provider:e,prefix:t,icons:Object.create(null),missing:new Set}}function Bo(e,t){const n=Uh[e]||(Uh[e]=Object.create(null));return n[t]||(n[t]=uk(e,t))}function R0(e,t){return $0(t)?E0(t,(n,a)=>{a?e.icons[n]=a:e.missing.add(n)}):[]}function dk(e,t,n){try{if(typeof n.body=="string")return e.icons[t]={...n},!0}catch{}return!1}let ni=!1;function L0(e){return typeof e=="boolean"&&(ni=e),ni}function fk(e){const t=typeof e=="string"?Lc(e,!0,ni):e;if(t){const n=Bo(t.provider,t.prefix),a=t.name;return n.icons[a]||(n.missing.has(a)?null:void 0)}}function O0(e,t){const n=Lc(e,!0,ni);if(!n)return!1;const a=Bo(n.provider,n.prefix);return t?dk(a,n.name,t):(a.missing.add(n.name),!0)}function pk(e,t){if(typeof e!="object")return!1;if(typeof t!="string"&&(t=e.provider||""),ni&&!t&&!e.prefix){let a=!1;return $0(e)&&(e.prefix="",E0(e,(r,o)=>{O0(r,o)&&(a=!0)})),a}const n=e.prefix;return xl({prefix:n,name:"a"})?!!R0(Bo(t,n),e):!1}const N0=Object.freeze({width:null,height:null}),F0=Object.freeze({...N0,...Jl}),hk=/(-?[0-9.]*[0-9]+[0-9.]*)/g,mk=/^-?[0-9.]*[0-9]+[0-9.]*$/g;function Gh(e,t,n){if(t===1)return e;if(n=n||100,typeof e=="number")return Math.ceil(e*t*n)/n;if(typeof e!="string")return e;const a=e.split(hk);if(a===null||!a.length)return e;const r=[];let o=a.shift(),s=mk.test(o);for(;;){if(s){const i=parseFloat(o);isNaN(i)?r.push(o):r.push(Math.ceil(i*t*n)/n)}else r.push(o);if(o=a.shift(),o===void 0)return r.join("");s=!s}}function gk(e,t="defs"){let n="";const a=e.indexOf("<"+t);for(;a>=0;){const r=e.indexOf(">",a),o=e.indexOf("</"+t);if(r===-1||o===-1)break;const s=e.indexOf(">",o);if(s===-1)break;n+=e.slice(r+1,o).trim(),e=e.slice(0,a).trim()+e.slice(s+1)}return{defs:n,content:e}}function vk(e,t){return e?"<defs>"+e+"</defs>"+t:t}function yk(e,t,n){const a=gk(e);return vk(a.defs,t+a.content+n)}const bk=e=>e==="unset"||e==="undefined"||e==="none";function wk(e,t){const n={...Oc,...e},a={...F0,...t},r={left:n.left,top:n.top,width:n.width,height:n.height};let o=n.body;[n,a].forEach(v=>{const y=[],g=v.hFlip,b=v.vFlip;let w=v.rotate;g?b?w+=2:(y.push("translate("+(r.width+r.left).toString()+" "+(0-r.top).toString()+")"),y.push("scale(-1 1)"),r.top=r.left=0):b&&(y.push("translate("+(0-r.left).toString()+" "+(r.height+r.top).toString()+")"),y.push("scale(1 -1)"),r.top=r.left=0);let _;switch(w<0&&(w-=Math.floor(w/4)*4),w=w%4,w){case 1:_=r.height/2+r.top,y.unshift("rotate(90 "+_.toString()+" "+_.toString()+")");break;case 2:y.unshift("rotate(180 "+(r.width/2+r.left).toString()+" "+(r.height/2+r.top).toString()+")");break;case 3:_=r.width/2+r.left,y.unshift("rotate(-90 "+_.toString()+" "+_.toString()+")");break}w%2===1&&(r.left!==r.top&&(_=r.left,r.left=r.top,r.top=_),r.width!==r.height&&(_=r.width,r.width=r.height,r.height=_)),y.length&&(o=yk(o,'<g transform="'+y.join(" ")+'">',"</g>"))});const s=a.width,i=a.height,l=r.width,c=r.height;let u,d;s===null?(d=i===null?"1em":i==="auto"?c:i,u=Gh(d,l/c)):(u=s==="auto"?l:s,d=i===null?Gh(u,c/l):i==="auto"?c:i);const h={},p=(v,y)=>{bk(y)||(h[v]=y.toString())};p("width",u),p("height",d);const m=[r.left,r.top,l,c];return h.viewBox=m.join(" "),{attributes:h,viewBox:m,body:o}}const _k=/\sid="(\S+)"/g,Yh=new Map;function kk(e){e=e.replace(/[0-9]+$/,"")||"a";const t=Yh.get(e)||0;return Yh.set(e,t+1),t?`${e}${t}`:e}function Ck(e){const t=[];let n;for(;n=_k.exec(e);)t.push(n[1]);if(!t.length)return e;const a="suffix"+(Math.random()*16777216|Date.now()).toString(16);return t.forEach(r=>{const o=kk(r),s=r.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");e=e.replace(new RegExp('([#;"])('+s+')([")]|\\.[a-z])',"g"),"$1"+o+a+"$3")}),e=e.replace(new RegExp(a,"g"),""),e}const Id=Object.create(null);function q0(e,t){Id[e]=t}function Dd(e){return Id[e]||Id[""]}function Xf(e){let t;if(typeof e.resources=="string")t=[e.resources];else if(t=e.resources,!(t instanceof Array)||!t.length)return null;return{resources:t,path:e.path||"/",maxURL:e.maxURL||500,rotate:e.rotate||750,timeout:e.timeout||5e3,random:e.random===!0,index:e.index||0,dataAfterTimeout:e.dataAfterTimeout!==!1}}const Nc=Object.create(null),Ss=["https://api.simplesvg.com","https://api.unisvg.com"],Al=[];for(;Ss.length>0;)Ss.length===1||Math.random()>.5?Al.push(Ss.shift()):Al.push(Ss.pop());Nc[""]=Xf({resources:["https://api.iconify.design"].concat(Al)});function Sk(e,t){const n=Xf(t);return n===null?!1:(Nc[e]=n,!0)}function Fc(e){return Nc[e]}function xk(){return Object.keys(Nc)}const Ak=()=>{let e;try{if(e=fetch,typeof e=="function")return e}catch{}};let Ql=Ak();function Pk(e){Ql=e}function Mk(){return Ql}function Tk(e,t){const n=Fc(e);if(!n)return 0;let a;if(!n.maxURL)a=0;else{let r=0;n.resources.forEach(s=>{r=Math.max(r,s.length)});const o=t+".json?icons=";a=n.maxURL-r-n.path.length-o.length}return a}function Ik(e){return e===404}const Dk=(e,t,n)=>{const a=[],r=Tk(e,t),o="icons";let s={type:o,provider:e,prefix:t,icons:[]},i=0;return n.forEach((l,c)=>{i+=l.length+1,i>=r&&c>0&&(a.push(s),s={type:o,provider:e,prefix:t,icons:[]},i=l.length),s.icons.push(l)}),a.push(s),a};function Ek(e){if(typeof e=="string"){const t=Fc(e);if(t)return t.path}return"/"}const $k=(e,t,n)=>{if(!Ql){n("abort",424);return}let a=Ek(t.provider);switch(t.type){case"icons":{const o=t.prefix,s=t.icons.join(","),i=new URLSearchParams({icons:s});a+=o+".json?"+i.toString();break}case"custom":{const o=t.uri;a+=o.slice(0,1)==="/"?o.slice(1):o;break}default:n("abort",400);return}let r=503;Ql(e+a).then(o=>{const s=o.status;if(s!==200){setTimeout(()=>{n(Ik(s)?"abort":"next",s)});return}return r=501,o.json()}).then(o=>{if(typeof o!="object"||o===null){setTimeout(()=>{o===404?n("abort",o):n("next",r)});return}setTimeout(()=>{n("success",o)})}).catch(()=>{n("next",r)})},Rk={prepare:Dk,send:$k};function B0(e,t){e.forEach(n=>{const a=n.loaderCallbacks;a&&(n.loaderCallbacks=a.filter(r=>r.id!==t))})}function Lk(e){e.pendingCallbacksFlag||(e.pendingCallbacksFlag=!0,setTimeout(()=>{e.pendingCallbacksFlag=!1;const t=e.loaderCallbacks?e.loaderCallbacks.slice(0):[];if(!t.length)return;let n=!1;const a=e.provider,r=e.prefix;t.forEach(o=>{const s=o.icons,i=s.pending.length;s.pending=s.pending.filter(l=>{if(l.prefix!==r)return!0;const c=l.name;if(e.icons[c])s.loaded.push({provider:a,prefix:r,name:c});else if(e.missing.has(c))s.missing.push({provider:a,prefix:r,name:c});else return n=!0,!0;return!1}),s.pending.length!==i&&(n||B0([e],o.id),o.callback(s.loaded.slice(0),s.missing.slice(0),s.pending.slice(0),o.abort))})}))}let Ok=0;function Nk(e,t,n){const a=Ok++,r=B0.bind(null,n,a);if(!t.pending.length)return r;const o={id:a,icons:t,callback:e,abort:r};return n.forEach(s=>{(s.loaderCallbacks||(s.loaderCallbacks=[])).push(o)}),r}function Fk(e){const t={loaded:[],missing:[],pending:[]},n=Object.create(null);e.sort((r,o)=>r.provider!==o.provider?r.provider.localeCompare(o.provider):r.prefix!==o.prefix?r.prefix.localeCompare(o.prefix):r.name.localeCompare(o.name));let a={provider:"",prefix:"",name:""};return e.forEach(r=>{if(a.name===r.name&&a.prefix===r.prefix&&a.provider===r.provider)return;a=r;const o=r.provider,s=r.prefix,i=r.name,l=n[o]||(n[o]=Object.create(null)),c=l[s]||(l[s]=Bo(o,s));let u;i in c.icons?u=t.loaded:s===""||c.missing.has(i)?u=t.missing:u=t.pending;const d={provider:o,prefix:s,name:i};u.push(d)}),t}function qk(e,t=!0,n=!1){const a=[];return e.forEach(r=>{const o=typeof r=="string"?Lc(r,t,n):r;o&&a.push(o)}),a}const Bk={resources:[],index:0,timeout:2e3,rotate:750,random:!1,dataAfterTimeout:!1};function Hk(e,t,n,a){const r=e.resources.length,o=e.random?Math.floor(Math.random()*r):e.index;let s;if(e.random){let P=e.resources.slice(0);for(s=[];P.length>1;){const k=Math.floor(Math.random()*P.length);s.push(P[k]),P=P.slice(0,k).concat(P.slice(k+1))}s=s.concat(P)}else s=e.resources.slice(o).concat(e.resources.slice(0,o));const i=Date.now();let l="pending",c=0,u,d=null,h=[],p=[];typeof a=="function"&&p.push(a);function m(){d&&(clearTimeout(d),d=null)}function v(){l==="pending"&&(l="aborted"),m(),h.forEach(P=>{P.status==="pending"&&(P.status="aborted")}),h=[]}function y(P,k){k&&(p=[]),typeof P=="function"&&p.push(P)}function g(){return{startTime:i,payload:t,status:l,queriesSent:c,queriesPending:h.length,subscribe:y,abort:v}}function b(){l="failed",p.forEach(P=>{P(void 0,u)})}function w(){h.forEach(P=>{P.status==="pending"&&(P.status="aborted")}),h=[]}function _(P,k,T){const I=k!=="success";switch(h=h.filter(Y=>Y!==P),l){case"pending":break;case"failed":if(I||!e.dataAfterTimeout)return;break;default:return}if(k==="abort"){u=T,b();return}if(I){u=T,h.length||(s.length?A():b());return}if(m(),w(),!e.random){const Y=e.resources.indexOf(P.resource);Y!==-1&&Y!==e.index&&(e.index=Y)}l="completed",p.forEach(Y=>{Y(T)})}function A(){if(l!=="pending")return;m();const P=s.shift();if(P===void 0){if(h.length){d=setTimeout(()=>{m(),l==="pending"&&(w(),b())},e.timeout);return}b();return}const k={status:"pending",resource:P,callback:(T,I)=>{_(k,T,I)}};h.push(k),c++,d=setTimeout(A,e.rotate),n(P,t,k.callback)}return setTimeout(A),g}function H0(e){const t={...Bk,...e};let n=[];function a(){n=n.filter(s=>s().status==="pending")}function r(s,i,l){const c=Hk(t,s,i,(u,d)=>{a(),l&&l(u,d)});return n.push(c),c}function o(s){return n.find(i=>s(i))||null}return{query:r,find:o,setIndex:s=>{t.index=s},getIndex:()=>t.index,cleanup:a}}function Kh(){}const Iu=Object.create(null);function Vk(e){if(!Iu[e]){const t=Fc(e);if(!t)return;Iu[e]={config:t,redundancy:H0(t)}}return Iu[e]}function V0(e,t,n){let a,r;if(typeof e=="string"){const o=Dd(e);if(!o)return n(void 0,424),Kh;r=o.send;const s=Vk(e);s&&(a=s.redundancy)}else{const o=Xf(e);if(o){a=H0(o);const s=Dd(e.resources?e.resources[0]:"");s&&(r=s.send)}}return!a||!r?(n(void 0,424),Kh):a.query(t,r,n)().abort}function Xh(){}function zk(e){e.iconsLoaderFlag||(e.iconsLoaderFlag=!0,setTimeout(()=>{e.iconsLoaderFlag=!1,Lk(e)}))}function jk(e){const t=[],n=[];return e.forEach(a=>{(a.match(I0)?t:n).push(a)}),{valid:t,invalid:n}}function xs(e,t,n){function a(){const r=e.pendingIcons;t.forEach(o=>{r&&r.delete(o),e.icons[o]||e.missing.add(o)})}if(n&&typeof n=="object")try{if(!R0(e,n).length){a();return}}catch(r){console.error(r)}a(),zk(e)}function Jh(e,t){e instanceof Promise?e.then(n=>{t(n)}).catch(()=>{t(null)}):t(e)}function Wk(e,t){e.iconsToLoad?e.iconsToLoad=e.iconsToLoad.concat(t).sort():e.iconsToLoad=t,e.iconsQueueFlag||(e.iconsQueueFlag=!0,setTimeout(()=>{e.iconsQueueFlag=!1;const{provider:n,prefix:a}=e,r=e.iconsToLoad;if(delete e.iconsToLoad,!r||!r.length)return;const o=e.loadIcon;if(e.loadIcons&&(r.length>1||!o)){Jh(e.loadIcons(r,a,n),c=>{xs(e,r,c)});return}if(o){r.forEach(c=>{Jh(o(c,a,n),u=>{xs(e,[c],u?{prefix:a,icons:{[c]:u}}:null)})});return}const{valid:s,invalid:i}=jk(r);if(i.length&&xs(e,i,null),!s.length)return;const l=a.match(I0)?Dd(n):null;if(!l){xs(e,s,null);return}l.prepare(n,a,s).forEach(c=>{V0(n,c,u=>{xs(e,c.icons,u)})})}))}const Uk=(e,t)=>{const n=Fk(qk(e,!0,L0()));if(!n.pending.length){let i=!0;return t&&setTimeout(()=>{i&&t(n.loaded,n.missing,n.pending,Xh)}),()=>{i=!1}}const a=Object.create(null),r=[];let o,s;return n.pending.forEach(i=>{const{provider:l,prefix:c}=i;if(c===s&&l===o)return;o=l,s=c,r.push(Bo(l,c));const u=a[l]||(a[l]=Object.create(null));u[c]||(u[c]=[])}),n.pending.forEach(i=>{const{provider:l,prefix:c,name:u}=i,d=Bo(l,c),h=d.pendingIcons||(d.pendingIcons=new Set);h.has(u)||(h.add(u),a[l][c].push(u))}),r.forEach(i=>{const l=a[i.provider][i.prefix];l.length&&Wk(i,l)}),t?Nk(t,n,r):Xh};function Gk(e,t){const n={...e};for(const a in t){const r=t[a],o=typeof r;a in N0?(r===null||r&&(o==="string"||o==="number"))&&(n[a]=r):o===typeof n[a]&&(n[a]=a==="rotate"?r%4:r)}return n}const Yk=/[\s,]+/;function Kk(e,t){t.split(Yk).forEach(n=>{switch(n.trim()){case"horizontal":e.hFlip=!0;break;case"vertical":e.vFlip=!0;break}})}function Xk(e,t=0){const n=e.replace(/^-?[0-9.]*/,"");function a(r){for(;r<0;)r+=4;return r%4}if(n===""){const r=parseInt(e);return isNaN(r)?0:a(r)}else if(n!==e){let r=0;switch(n){case"%":r=25;break;case"deg":r=90}if(r){let o=parseFloat(e.slice(0,e.length-n.length));return isNaN(o)?0:(o=o/r,o%1===0?a(o):0)}}return t}function Jk(e,t){let n=e.indexOf("xlink:")===-1?"":' xmlns:xlink="http://www.w3.org/1999/xlink"';for(const a in t)n+=" "+a+'="'+t[a]+'"';return'<svg xmlns="http://www.w3.org/2000/svg"'+n+">"+e+"</svg>"}function Qk(e){return e.replace(/"/g,"'").replace(/%/g,"%25").replace(/#/g,"%23").replace(/</g,"%3C").replace(/>/g,"%3E").replace(/\s+/g," ")}function Zk(e){return"data:image/svg+xml,"+Qk(e)}function e3(e){return'url("'+Zk(e)+'")'}const Qh={...F0,inline:!1},t3={xmlns:"http://www.w3.org/2000/svg","xmlns:xlink":"http://www.w3.org/1999/xlink","aria-hidden":!0,role:"img"},n3={display:"inline-block"},Ed={backgroundColor:"currentColor"},z0={backgroundColor:"transparent"},Zh={Image:"var(--svg)",Repeat:"no-repeat",Size:"100% 100%"},em={webkitMask:Ed,mask:Ed,background:z0};for(const e in em){const t=em[e];for(const n in Zh)t[e+n]=Zh[n]}const Pl={};["horizontal","vertical"].forEach(e=>{const t=e.slice(0,1)+"Flip";Pl[e+"-flip"]=t,Pl[e.slice(0,1)+"-flip"]=t,Pl[e+"Flip"]=t});function tm(e){return e+(e.match(/^[-0-9.]+$/)?"px":"")}const nm=(e,t)=>{const n=Gk(Qh,t),a={...t3},r=t.mode||"svg",o={},s=t.style,i=typeof s=="object"&&!(s instanceof Array)?s:{};for(let v in t){const y=t[v];if(y!==void 0)switch(v){case"icon":case"style":case"onLoad":case"mode":case"ssr":case"customise":break;case"inline":case"hFlip":case"vFlip":n[v]=y===!0||y==="true"||y===1;break;case"flip":typeof y=="string"&&Kk(n,y);break;case"color":o.color=y;break;case"rotate":typeof y=="string"?n[v]=Xk(y):typeof y=="number"&&(n[v]=y);break;case"ariaHidden":case"aria-hidden":y!==!0&&y!=="true"&&delete a["aria-hidden"];break;default:{const g=Pl[v];g?(y===!0||y==="true"||y===1)&&(n[g]=!0):Qh[v]===void 0&&(a[v]=y)}}}const l=wk(e,n),c=l.attributes;if(n.inline&&(o.verticalAlign="-0.125em"),r==="svg")return a.style={...o,...i},Object.assign(a,c),a.innerHTML=Ck(l.body),Pn("svg",a);const{body:u,width:d,height:h}=e,p=r==="mask"||(r==="bg"?!1:u.indexOf("currentColor")!==-1),m=Jk(u,{...c,width:d+"",height:h+""});return a.style={...o,"--svg":e3(m),width:tm(c.width),height:tm(c.height),...n3,...p?Ed:z0,...i},Pn("span",a)};L0(!0);q0("",Rk);if(typeof document<"u"&&typeof window<"u"){const e=window;if(e.IconifyPreload!==void 0){const t=e.IconifyPreload,n="Invalid IconifyPreload syntax.";typeof t=="object"&&t!==null&&(t instanceof Array?t:[t]).forEach(a=>{try{(typeof a!="object"||a===null||a instanceof Array||typeof a.icons!="object"||typeof a.prefix!="string"||!pk(a))&&console.error(n)}catch{console.error(n)}})}if(e.IconifyProviders!==void 0){const t=e.IconifyProviders;if(typeof t=="object"&&t!==null)for(let n in t){const a="IconifyProviders["+n+"] is invalid.";try{const r=t[n];if(typeof r!="object"||!r||r.resources===void 0)continue;Sk(n,r)||console.error(a)}catch{console.error(a)}}}}const a3={...Oc,body:""},r3=Z((e,{emit:t})=>{const n=V(null);function a(){n.value&&(n.value.abort?.(),n.value=null)}const r=V(!!e.ssr),o=V(""),s=at(null);function i(){const c=e.icon;if(typeof c=="object"&&c!==null&&typeof c.body=="string")return o.value="",{data:c};let u;if(typeof c!="string"||(u=Lc(c,!1,!0))===null)return null;let d=fk(u);if(!d){const m=n.value;return(!m||m.name!==c)&&(d===null?n.value={name:c}:n.value={name:c,abort:Uk([u],l)}),null}a(),o.value!==c&&(o.value=c,Ve(()=>{t("load",c)}));const h=e.customise;if(h){d=Object.assign({},d);const m=h(d.body,u.name,u.prefix,u.provider);typeof m=="string"&&(d.body=m)}const p=["iconify"];return u.prefix!==""&&p.push("iconify--"+u.prefix),u.provider!==""&&p.push("iconify--"+u.provider),{data:d,classes:p}}function l(){const c=i();c?c.data!==s.value?.data&&(s.value=c):s.value=null}return r.value?l():Xe(()=>{r.value=!0,l()}),Se(()=>e.icon,l),_n(a),()=>{const c=s.value;if(!c)return nm(a3,e);let u=e;return c.classes&&(u={...e,class:c.classes.join(" ")}),nm({...Oc,...c.data},u)}},{props:["icon","mode","ssr","width","height","style","color","inline","rotate","hFlip","horizontalFlip","vFlip","verticalFlip","flip","id","ariaHidden","customise","title"],emits:["load"]}),o3={getAPIConfig:Fc,setAPIModule:q0,sendAPIQuery:V0,setFetch:Pk,getFetch:Mk,listAPIProviders:xk};o3.setFetch(void 0);let am=!1;function s3(e){if(am)return;const t=JSON.parse('[{"prefix":"lucide","icons":{"alert-circle":{"width":24,"height":24,"body":"<g fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"2\\"><circle cx=\\"12\\" cy=\\"12\\" r=\\"10\\"/><path d=\\"M12 8v4m0 4h.01\\"/></g>"},"alert-triangle":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"2\\" d=\\"m21.73 18l-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3M12 9v4m0 4h.01\\"/>"},"arrow-down":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"2\\" d=\\"M12 5v14m7-7l-7 7l-7-7\\"/>"},"arrow-left":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"2\\" d=\\"m12 19l-7-7l7-7m7 7H5\\"/>"},"arrow-right":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"2\\" d=\\"M5 12h14m-7-7l7 7l-7 7\\"/>"},"arrow-up":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"2\\" d=\\"m5 12l7-7l7 7m-7 7V5\\"/>"},"arrow-up-right":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"2\\" d=\\"M7 7h10v10M7 17L17 7\\"/>"},"calendar-range":{"width":24,"height":24,"body":"<g fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"2\\"><rect width=\\"18\\" height=\\"18\\" x=\\"3\\" y=\\"4\\" rx=\\"2\\"/><path d=\\"M16 2v4M3 10h18M8 2v4m9 8h-6m2 4H7m0-4h.01M17 18h.01\\"/></g>"},"check":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"2\\" d=\\"M20 6L9 17l-5-5\\"/>"},"chevron-down":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"2\\" d=\\"m6 9l6 6l6-6\\"/>"},"chevron-left":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"2\\" d=\\"m15 18l-6-6l6-6\\"/>"},"chevron-right":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"2\\" d=\\"m9 18l6-6l-6-6\\"/>"},"chevron-up":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"2\\" d=\\"m18 15l-6-6l-6 6\\"/>"},"chevrons-left":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"2\\" d=\\"m11 17l-5-5l5-5m7 10l-5-5l5-5\\"/>"},"chevrons-right":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"2\\" d=\\"m6 17l5-5l-5-5m7 10l5-5l-5-5\\"/>"},"circle-alert":{"width":24,"height":24,"body":"<g fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"2\\"><circle cx=\\"12\\" cy=\\"12\\" r=\\"10\\"/><path d=\\"M12 8v4m0 4h.01\\"/></g>"},"circle-check":{"width":24,"height":24,"body":"<g fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"2\\"><circle cx=\\"12\\" cy=\\"12\\" r=\\"10\\"/><path d=\\"m9 12l2 2l4-4\\"/></g>"},"circle-help":{"width":24,"height":24,"body":"<g fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"2\\"><circle cx=\\"12\\" cy=\\"12\\" r=\\"10\\"/><path d=\\"M9.09 9a3 3 0 0 1 5.83 1c0 2-3 3-3 3m.08 4h.01\\"/></g>"},"circle-x":{"width":24,"height":24,"body":"<g fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"2\\"><circle cx=\\"12\\" cy=\\"12\\" r=\\"10\\"/><path d=\\"m15 9l-6 6m0-6l6 6\\"/></g>"},"clock-3":{"width":24,"height":24,"body":"<g fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"2\\"><circle cx=\\"12\\" cy=\\"12\\" r=\\"10\\"/><path d=\\"M12 6v6h4\\"/></g>"},"copy":{"width":24,"height":24,"body":"<g fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"2\\"><rect width=\\"14\\" height=\\"14\\" x=\\"8\\" y=\\"8\\" rx=\\"2\\" ry=\\"2\\"/><path d=\\"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2\\"/></g>"},"copy-check":{"width":24,"height":24,"body":"<g fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"2\\"><path d=\\"m12 15l2 2l4-4\\"/><rect width=\\"14\\" height=\\"14\\" x=\\"8\\" y=\\"8\\" rx=\\"2\\" ry=\\"2\\"/><path d=\\"M4 16c-1.1 0-2-.9-2-2V4c0-1.1.9-2 2-2h10c1.1 0 2 .9 2 2\\"/></g>"},"ellipsis":{"width":24,"height":24,"body":"<g fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"2\\"><circle cx=\\"12\\" cy=\\"12\\" r=\\"1\\"/><circle cx=\\"19\\" cy=\\"12\\" r=\\"1\\"/><circle cx=\\"5\\" cy=\\"12\\" r=\\"1\\"/></g>"},"eye":{"width":24,"height":24,"body":"<g fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"2\\"><path d=\\"M2.062 12.348a1 1 0 0 1 0-.696a10.75 10.75 0 0 1 19.876 0a1 1 0 0 1 0 .696a10.75 10.75 0 0 1-19.876 0\\"/><circle cx=\\"12\\" cy=\\"12\\" r=\\"3\\"/></g>"},"eye-off":{"width":24,"height":24,"body":"<g fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"2\\"><path d=\\"M10.733 5.076a10.744 10.744 0 0 1 11.205 6.575a1 1 0 0 1 0 .696a10.8 10.8 0 0 1-1.444 2.49m-6.41-.679a3 3 0 0 1-4.242-4.242\\"/><path d=\\"M17.479 17.499a10.75 10.75 0 0 1-15.417-5.151a1 1 0 0 1 0-.696a10.75 10.75 0 0 1 4.446-5.143M2 2l20 20\\"/></g>"},"file":{"width":24,"height":24,"body":"<g fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"2\\"><path d=\\"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z\\"/><path d=\\"M14 2v5a1 1 0 0 0 1 1h5\\"/></g>"},"folder":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"2\\" d=\\"M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z\\"/>"},"folder-open":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"2\\" d=\\"m6 14l1.5-2.9A2 2 0 0 1 9.24 10H20a2 2 0 0 1 1.94 2.5l-1.54 6a2 2 0 0 1-1.95 1.5H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h3.9a2 2 0 0 1 1.69.9l.81 1.2a2 2 0 0 0 1.67.9H18a2 2 0 0 1 2 2v2\\"/>"},"git-compare-arrows":{"width":24,"height":24,"body":"<g fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"2\\"><circle cx=\\"5\\" cy=\\"6\\" r=\\"3\\"/><path d=\\"M12 6h5a2 2 0 0 1 2 2v7\\"/><path d=\\"m15 9l-3-3l3-3\\"/><circle cx=\\"19\\" cy=\\"18\\" r=\\"3\\"/><path d=\\"M12 18H7a2 2 0 0 1-2-2V9\\"/><path d=\\"m9 15l3 3l-3 3\\"/></g>"},"git-fork":{"width":24,"height":24,"body":"<g fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"2\\"><circle cx=\\"12\\" cy=\\"18\\" r=\\"3\\"/><circle cx=\\"6\\" cy=\\"6\\" r=\\"3\\"/><circle cx=\\"18\\" cy=\\"6\\" r=\\"3\\"/><path d=\\"M18 9v2c0 .6-.4 1-1 1H7c-.6 0-1-.4-1-1V9m6 3v3\\"/></g>"},"grip-vertical":{"width":24,"height":24,"body":"<g fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"2\\"><circle cx=\\"9\\" cy=\\"12\\" r=\\"1\\"/><circle cx=\\"9\\" cy=\\"5\\" r=\\"1\\"/><circle cx=\\"9\\" cy=\\"19\\" r=\\"1\\"/><circle cx=\\"15\\" cy=\\"12\\" r=\\"1\\"/><circle cx=\\"15\\" cy=\\"5\\" r=\\"1\\"/><circle cx=\\"15\\" cy=\\"19\\" r=\\"1\\"/></g>"},"hash":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"2\\" d=\\"M4 9h16M4 15h16M10 3L8 21m8-18l-2 18\\"/>"},"history":{"width":24,"height":24,"body":"<g fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"2\\"><path d=\\"M3 12a9 9 0 1 0 9-9a9.75 9.75 0 0 0-6.74 2.74L3 8\\"/><path d=\\"M3 3v5h5m4-1v5l4 2\\"/></g>"},"info":{"width":24,"height":24,"body":"<g fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"2\\"><circle cx=\\"12\\" cy=\\"12\\" r=\\"10\\"/><path d=\\"M12 16v-4m0-4h.01\\"/></g>"},"lightbulb":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"2\\" d=\\"M15 14c.2-1 .7-1.7 1.5-2.5c1-.9 1.5-2.2 1.5-3.5A6 6 0 0 0 6 8c0 1 .2 2.2 1.5 3.5c.7.7 1.3 1.5 1.5 2.5m0 4h6m-5 4h4\\"/>"},"loader-2":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"2\\" d=\\"M21 12a9 9 0 1 1-6.219-8.56\\"/>"},"loader-circle":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"2\\" d=\\"M21 12a9 9 0 1 1-6.219-8.56\\"/>"},"menu":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"2\\" d=\\"M4 5h16M4 12h16M4 19h16\\"/>"},"messages-square":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"2\\" d=\\"M16 10a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 14.286V4a2 2 0 0 1 2-2h10a2 2 0 0 1 2 2zm4-1a2 2 0 0 1 2 2v10.286a.71.71 0 0 1-1.212.502l-2.202-2.202A2 2 0 0 0 17.172 19H10a2 2 0 0 1-2-2v-1\\"/>"},"minus":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"2\\" d=\\"M5 12h14\\"/>"},"monitor":{"width":24,"height":24,"body":"<g fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"2\\"><rect width=\\"20\\" height=\\"14\\" x=\\"2\\" y=\\"3\\" rx=\\"2\\"/><path d=\\"M8 21h8m-4-4v4\\"/></g>"},"moon":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"2\\" d=\\"M20.985 12.486a9 9 0 1 1-9.473-9.472c.405-.022.617.46.402.803a6 6 0 0 0 8.268 8.268c.344-.215.825-.004.803.401\\"/>"},"network":{"width":24,"height":24,"body":"<g fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"2\\"><rect width=\\"6\\" height=\\"6\\" x=\\"16\\" y=\\"16\\" rx=\\"1\\"/><rect width=\\"6\\" height=\\"6\\" x=\\"2\\" y=\\"16\\" rx=\\"1\\"/><rect width=\\"6\\" height=\\"6\\" x=\\"9\\" y=\\"2\\" rx=\\"1\\"/><path d=\\"M5 16v-3a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1v3m-7-4V8\\"/></g>"},"orbit":{"width":24,"height":24,"body":"<g fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"2\\"><path d=\\"M20.341 6.484A10 10 0 0 1 10.266 21.85m-6.607-4.334A10 10 0 0 1 13.74 2.152\\"/><circle cx=\\"12\\" cy=\\"12\\" r=\\"3\\"/><circle cx=\\"19\\" cy=\\"5\\" r=\\"2\\"/><circle cx=\\"5\\" cy=\\"19\\" r=\\"2\\"/></g>"},"panel-left-close":{"width":24,"height":24,"body":"<g fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"2\\"><rect width=\\"18\\" height=\\"18\\" x=\\"3\\" y=\\"3\\" rx=\\"2\\"/><path d=\\"M9 3v18m7-6l-3-3l3-3\\"/></g>"},"panel-left-open":{"width":24,"height":24,"body":"<g fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"2\\"><rect width=\\"18\\" height=\\"18\\" x=\\"3\\" y=\\"3\\" rx=\\"2\\"/><path d=\\"M9 3v18m5-12l3 3l-3 3\\"/></g>"},"panel-right":{"width":24,"height":24,"body":"<g fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"2\\"><rect width=\\"18\\" height=\\"18\\" x=\\"3\\" y=\\"3\\" rx=\\"2\\"/><path d=\\"M15 3v18\\"/></g>"},"panel-right-close":{"width":24,"height":24,"body":"<g fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"2\\"><rect width=\\"18\\" height=\\"18\\" x=\\"3\\" y=\\"3\\" rx=\\"2\\"/><path d=\\"M15 3v18M8 9l3 3l-3 3\\"/></g>"},"panel-right-open":{"width":24,"height":24,"body":"<g fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"2\\"><rect width=\\"18\\" height=\\"18\\" x=\\"3\\" y=\\"3\\" rx=\\"2\\"/><path d=\\"M15 3v18m-5-6l-3-3l3-3\\"/></g>"},"pencil":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"2\\" d=\\"M21.174 6.812a1 1 0 0 0-3.986-3.987L3.842 16.174a2 2 0 0 0-.5.83l-1.321 4.352a.5.5 0 0 0 .623.622l4.353-1.32a2 2 0 0 0 .83-.497zM15 5l4 4\\"/>"},"pin":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"2\\" d=\\"M12 17v5M9 10.76a2 2 0 0 1-1.11 1.79l-1.78.9A2 2 0 0 0 5 15.24V16a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-.76a2 2 0 0 0-1.11-1.79l-1.78-.9A2 2 0 0 1 15 10.76V7a1 1 0 0 1 1-1a2 2 0 0 0 0-4H8a2 2 0 0 0 0 4a1 1 0 0 1 1 1z\\"/>"},"plus":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"2\\" d=\\"M5 12h14m-7-7v14\\"/>"},"refresh-cw":{"width":24,"height":24,"body":"<g fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"2\\"><path d=\\"M3 12a9 9 0 0 1 9-9a9.75 9.75 0 0 1 6.74 2.74L21 8\\"/><path d=\\"M21 3v5h-5m5 4a9 9 0 0 1-9 9a9.75 9.75 0 0 1-6.74-2.74L3 16\\"/><path d=\\"M8 16H3v5\\"/></g>"},"rotate-ccw":{"width":24,"height":24,"body":"<g fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"2\\"><path d=\\"M3 12a9 9 0 1 0 9-9a9.75 9.75 0 0 0-6.74 2.74L3 8\\"/><path d=\\"M3 3v5h5\\"/></g>"},"scan":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"2\\" d=\\"M3 7V5a2 2 0 0 1 2-2h2m10 0h2a2 2 0 0 1 2 2v2m0 10v2a2 2 0 0 1-2 2h-2M7 21H5a2 2 0 0 1-2-2v-2\\"/>"},"scan-line":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"2\\" d=\\"M3 7V5a2 2 0 0 1 2-2h2m10 0h2a2 2 0 0 1 2 2v2m0 10v2a2 2 0 0 1-2 2h-2M7 21H5a2 2 0 0 1-2-2v-2m4-5h10\\"/>"},"search":{"width":24,"height":24,"body":"<g fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"2\\"><path d=\\"m21 21l-4.34-4.34\\"/><circle cx=\\"11\\" cy=\\"11\\" r=\\"8\\"/></g>"},"sparkles":{"width":24,"height":24,"body":"<g fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"2\\"><path d=\\"M11.017 2.814a1 1 0 0 1 1.966 0l1.051 5.558a2 2 0 0 0 1.594 1.594l5.558 1.051a1 1 0 0 1 0 1.966l-5.558 1.051a2 2 0 0 0-1.594 1.594l-1.051 5.558a1 1 0 0 1-1.966 0l-1.051-5.558a2 2 0 0 0-1.594-1.594l-5.558-1.051a1 1 0 0 1 0-1.966l5.558-1.051a2 2 0 0 0 1.594-1.594zM20 2v4m2-2h-4\\"/><circle cx=\\"4\\" cy=\\"20\\" r=\\"2\\"/></g>"},"square":{"width":24,"height":24,"body":"<rect width=\\"18\\" height=\\"18\\" x=\\"3\\" y=\\"3\\" fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"2\\" rx=\\"2\\"/>"},"sun":{"width":24,"height":24,"body":"<g fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"2\\"><circle cx=\\"12\\" cy=\\"12\\" r=\\"4\\"/><path d=\\"M12 2v2m0 16v2M4.93 4.93l1.41 1.41m11.32 11.32l1.41 1.41M2 12h2m16 0h2M6.34 17.66l-1.41 1.41M19.07 4.93l-1.41 1.41\\"/></g>"},"terminal":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"2\\" d=\\"M12 19h8M4 17l6-6l-6-6\\"/>"},"trash":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"2\\" d=\\"M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6M3 6h18M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2\\"/>"},"triangle-alert":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"2\\" d=\\"m21.73 18l-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3M12 9v4m0 4h.01\\"/>"},"undo-2":{"width":24,"height":24,"body":"<g fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"2\\"><path d=\\"M9 14L4 9l5-5\\"/><path d=\\"M4 9h10.5a5.5 5.5 0 0 1 5.5 5.5a5.5 5.5 0 0 1-5.5 5.5H11\\"/></g>"},"upload":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"2\\" d=\\"M12 3v12m5-7l-5-5l-5 5m14 7v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4\\"/>"},"user-minus":{"width":24,"height":24,"body":"<g fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"2\\"><path d=\\"M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2\\"/><circle cx=\\"9\\" cy=\\"7\\" r=\\"4\\"/><path d=\\"M22 11h-6\\"/></g>"},"user-plus":{"width":24,"height":24,"body":"<g fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"2\\"><path d=\\"M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2\\"/><circle cx=\\"9\\" cy=\\"7\\" r=\\"4\\"/><path d=\\"M19 8v6m3-3h-6\\"/></g>"},"users":{"width":24,"height":24,"body":"<g fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"2\\"><path d=\\"M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2M16 3.128a4 4 0 0 1 0 7.744M22 21v-2a4 4 0 0 0-3-3.87\\"/><circle cx=\\"9\\" cy=\\"7\\" r=\\"4\\"/></g>"},"users-2":{"width":24,"height":24,"body":"<g fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"2\\"><path d=\\"M18 21a8 8 0 0 0-16 0\\"/><circle cx=\\"10\\" cy=\\"8\\" r=\\"5\\"/><path d=\\"M22 20c0-3.37-2-6.5-4-8a5 5 0 0 0-.45-8.3\\"/></g>"},"x":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"2\\" d=\\"M18 6L6 18M6 6l12 12\\"/>"}}},{"prefix":"heroicons","icons":{"academic-cap-solid":{"width":24,"height":24,"body":"<g fill=\\"currentColor\\"><path d=\\"M11.7 2.805a.75.75 0 0 1 .6 0A60.7 60.7 0 0 1 22.83 8.72a.75.75 0 0 1-.231 1.337a50 50 0 0 0-9.902 3.912l-.003.002l-.34.18a.75.75 0 0 1-.707 0A51 51 0 0 0 7.5 12.173v-.224a.36.36 0 0 1 .172-.311a55 55 0 0 1 4.653-2.52a.75.75 0 0 0-.65-1.352a56 56 0 0 0-4.78 2.589a1.86 1.86 0 0 0-.859 1.228a50 50 0 0 0-4.634-1.527a.75.75 0 0 1-.231-1.337A60.7 60.7 0 0 1 11.7 2.805\\"/><path d=\\"M13.06 15.473a48.5 48.5 0 0 1 7.666-3.282q.202 2.122.255 4.284a.75.75 0 0 1-.46.711a48 48 0 0 0-8.105 4.342a.75.75 0 0 1-.832 0a48 48 0 0 0-8.104-4.342a.75.75 0 0 1-.461-.71q.053-2.163.255-4.286q1.382.456 2.726.99v1.27a1.5 1.5 0 0 0-.14 2.508c-.09.38-.222.753-.397 1.11q.678.32 1.346.66a6.7 6.7 0 0 0 .551-1.607a1.5 1.5 0 0 0 .14-2.67v-.645a49 49 0 0 1 3.44 1.667a2.25 2.25 0 0 0 2.12 0\\"/><path d=\\"M4.462 19.462c.42-.419.753-.89 1-1.395q.68.321 1.347.662a6.7 6.7 0 0 1-1.286 1.794a.75.75 0 0 1-1.06-1.06\\"/></g>"},"adjustments-horizontal":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M10.5 6h9.75M10.5 6a1.5 1.5 0 1 1-3 0m3 0a1.5 1.5 0 1 0-3 0M3.75 6H7.5m3 12h9.75m-9.75 0a1.5 1.5 0 0 1-3 0m3 0a1.5 1.5 0 0 0-3 0m-3.75 0H7.5m9-6h3.75m-3.75 0a1.5 1.5 0 0 1-3 0m3 0a1.5 1.5 0 0 0-3 0m-9.75 0h9.75\\"/>"},"archive-box":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"m20.25 7.5l-.625 10.632a2.25 2.25 0 0 1-2.247 2.118H6.622a2.25 2.25 0 0 1-2.247-2.118L3.75 7.5M10 11.25h4M3.375 7.5h17.25c.621 0 1.125-.504 1.125-1.125v-1.5c0-.621-.504-1.125-1.125-1.125H3.375c-.621 0-1.125.504-1.125 1.125v1.5c0 .621.504 1.125 1.125 1.125\\"/>"},"arrow-down":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M19.5 13.5L12 21m0 0l-7.5-7.5M12 21V3\\"/>"},"arrow-down-tray":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M3 16.5v2.25A2.25 2.25 0 0 0 5.25 21h13.5A2.25 2.25 0 0 0 21 18.75V16.5M16.5 12L12 16.5m0 0L7.5 12m4.5 4.5V3\\"/>"},"arrow-path":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M16.023 9.348h4.992v-.001M2.985 19.644v-4.992m0 0h4.992m-4.993 0l3.181 3.183a8.25 8.25 0 0 0 13.803-3.7M4.031 9.865a8.25 8.25 0 0 1 13.803-3.7l3.181 3.182m0-4.991v4.99\\"/>"},"arrow-path-rounded-square":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M19.5 12q0-1.848-.138-3.662a4.006 4.006 0 0 0-3.7-3.7a49 49 0 0 0-7.324 0a4.006 4.006 0 0 0-3.7 3.7q-.025.33-.046.662M19.5 12l3-3m-3 3l-3-3m-12 3q0 1.848.138 3.662a4.006 4.006 0 0 0 3.7 3.7a49 49 0 0 0 7.324 0a4.006 4.006 0 0 0 3.7-3.7q.025-.33.046-.662M4.5 12l3 3m-3-3l-3 3\\"/>"},"arrow-path-solid":{"width":24,"height":24,"body":"<path fill=\\"currentColor\\" fill-rule=\\"evenodd\\" d=\\"M4.755 10.059a7.5 7.5 0 0 1 12.548-3.364l1.903 1.903h-3.183a.75.75 0 1 0 0 1.5h4.992a.75.75 0 0 0 .75-.75V4.356a.75.75 0 0 0-1.5 0v3.18l-1.9-1.9A9 9 0 0 0 3.306 9.67a.75.75 0 1 0 1.45.388m15.408 3.352a.75.75 0 0 0-.919.53a7.5 7.5 0 0 1-12.548 3.364l-1.902-1.903h3.183a.75.75 0 0 0 0-1.5H2.984a.75.75 0 0 0-.75.75v4.992a.75.75 0 0 0 1.5 0v-3.18l1.9 1.9a9 9 0 0 0 15.059-4.035a.75.75 0 0 0-.53-.918\\" clip-rule=\\"evenodd\\"/>"},"arrow-right":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M13.5 4.5L21 12m0 0l-7.5 7.5M21 12H3\\"/>"},"arrow-right-on-rectangle":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M15.75 9V5.25A2.25 2.25 0 0 0 13.5 3h-6a2.25 2.25 0 0 0-2.25 2.25v13.5A2.25 2.25 0 0 0 7.5 21h6a2.25 2.25 0 0 0 2.25-2.25V15m3 0l3-3m0 0l-3-3m3 3H9\\"/>"},"arrow-top-right-on-square":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M13.5 6H5.25A2.25 2.25 0 0 0 3 8.25v10.5A2.25 2.25 0 0 0 5.25 21h10.5A2.25 2.25 0 0 0 18 18.75V10.5m-10.5 6L21 3m0 0h-5.25M21 3v5.25\\"/>"},"arrow-up":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M4.5 10.5L12 3m0 0l7.5 7.5M12 3v18\\"/>"},"arrow-up-20-solid":{"width":20,"height":20,"body":"<path fill=\\"currentColor\\" fill-rule=\\"evenodd\\" d=\\"M10 17a.75.75 0 0 1-.75-.75V5.612L5.29 9.77a.75.75 0 0 1-1.08-1.04l5.25-5.5a.75.75 0 0 1 1.08 0l5.25 5.5a.75.75 0 1 1-1.08 1.04l-3.96-4.158V16.25A.75.75 0 0 1 10 17\\" clip-rule=\\"evenodd\\"/>"},"arrow-up-circle":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"m15 11.25l-3-3m0 0l-3 3m3-3v7.5M21 12a9 9 0 1 1-18 0a9 9 0 0 1 18 0\\"/>"},"arrow-up-right-20-solid":{"width":20,"height":20,"body":"<path fill=\\"currentColor\\" fill-rule=\\"evenodd\\" d=\\"M5.22 14.78a.75.75 0 0 0 1.06 0l7.22-7.22v5.69a.75.75 0 0 0 1.5 0v-7.5a.75.75 0 0 0-.75-.75h-7.5a.75.75 0 0 0 0 1.5h5.69l-7.22 7.22a.75.75 0 0 0 0 1.06\\" clip-rule=\\"evenodd\\"/>"},"arrow-up-tray":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M3 16.5v2.25A2.25 2.25 0 0 0 5.25 21h13.5A2.25 2.25 0 0 0 21 18.75V16.5m-13.5-9L12 3m0 0l4.5 4.5M12 3v13.5\\"/>"},"arrows-pointing-in":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M9 9V4.5M9 9H4.5M9 9L3.75 3.75M9 15v4.5M9 15H4.5M9 15l-5.25 5.25M15 9h4.5M15 9V4.5M15 9l5.25-5.25M15 15h4.5M15 15v4.5m0-4.5l5.25 5.25\\"/>"},"arrows-pointing-out":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M3.75 3.75v4.5m0-4.5h4.5m-4.5 0L9 9M3.75 20.25v-4.5m0 4.5h4.5m-4.5 0L9 15M20.25 3.75h-4.5m4.5 0v4.5m0-4.5L15 9m5.25 11.25h-4.5m4.5 0v-4.5m0 4.5L15 15\\"/>"},"arrows-right-left":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M7.5 21L3 16.5m0 0L7.5 12M3 16.5h13.5m0-13.5L21 7.5m0 0L16.5 12M21 7.5H7.5\\"/>"},"bars-3":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M3.75 6.75h16.5M3.75 12h16.5m-16.5 5.25h16.5\\"/>"},"bars-3-bottom-left":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M3.75 6.75h16.5M3.75 12h16.5m-16.5 5.25H12\\"/>"},"bars-arrow-down":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M3 4.5h14.25M3 9h9.75M3 13.5h9.75m4.5-4.5v12m0 0l-3.75-3.75M17.25 21L21 17.25\\"/>"},"bars-arrow-up":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M3 4.5h14.25M3 9h9.75M3 13.5h5.25m5.25-.75L17.25 9m0 0L21 12.75M17.25 9v12\\"/>"},"beaker":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M9.75 3.104v5.714a2.25 2.25 0 0 1-.659 1.591L5 14.5M9.75 3.104q-.376.034-.75.082m.75-.082a24.3 24.3 0 0 1 4.5 0m0 0v5.714c0 .597.237 1.17.659 1.591L19.8 15.3M14.25 3.104q.377.034.75.082M19.8 15.3l-1.57.393A9.07 9.07 0 0 1 12 15a9.07 9.07 0 0 0-6.23-.693L5 14.5m14.8.8l1.402 1.402c1.232 1.232.65 3.318-1.067 3.611A48.3 48.3 0 0 1 12 21a48 48 0 0 1-8.135-.687c-1.718-.293-2.3-2.379-1.067-3.61L5 14.5\\"/>"},"bolt":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"m3.75 13.5l10.5-11.25L12 10.5h8.25L9.75 21.75L12 13.5z\\"/>"},"book-open":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M12 6.042A8.97 8.97 0 0 0 6 3.75c-1.052 0-2.062.18-3 .512v14.25A9 9 0 0 1 6 18c2.305 0 4.408.867 6 2.292m0-14.25a8.97 8.97 0 0 1 6-2.292c1.052 0 2.062.18 3 .512v14.25A9 9 0 0 0 18 18a8.97 8.97 0 0 0-6 2.292m0-14.25v14.25\\"/>"},"book-open-solid":{"width":24,"height":24,"body":"<path fill=\\"currentColor\\" d=\\"M11.25 4.533A9.7 9.7 0 0 0 6 3a9.7 9.7 0 0 0-3.25.555a.75.75 0 0 0-.5.707v14.25a.75.75 0 0 0 1 .707A8.2 8.2 0 0 1 6 18.75c1.995 0 3.823.707 5.25 1.886zm1.5 16.103A8.2 8.2 0 0 1 18 18.75c.966 0 1.89.166 2.75.47a.75.75 0 0 0 1-.708V4.262a.75.75 0 0 0-.5-.707A9.7 9.7 0 0 0 18 3a9.7 9.7 0 0 0-5.25 1.533z\\"/>"},"briefcase":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M20.25 14.15v4.25c0 1.094-.787 2.036-1.872 2.18c-2.087.277-4.216.42-6.378.42s-4.291-.143-6.378-.42c-1.085-.144-1.872-1.086-1.872-2.18v-4.25m16.5 0a2.18 2.18 0 0 0 .75-1.661V8.706c0-1.081-.768-2.015-1.837-2.175a48 48 0 0 0-3.413-.387m4.5 8.006c-.194.165-.42.295-.673.38A24 24 0 0 1 12 15.75a24 24 0 0 1-7.577-1.22a2 2 0 0 1-.673-.38m0 0A2.18 2.18 0 0 1 3 12.489V8.706c0-1.081.768-2.015 1.837-2.175a48 48 0 0 1 3.413-.387m7.5 0V5.25A2.25 2.25 0 0 0 13.5 3h-3a2.25 2.25 0 0 0-2.25 2.25v.894m7.5 0a49 49 0 0 0-7.5 0M12 12.75h.008v.008H12z\\"/>"},"bug-ant":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M12 12.75q1.724 0 3.383.237c1.037.146 1.866.966 1.866 2.013c0 3.728-2.35 6.75-5.25 6.75S6.75 18.728 6.75 15c0-1.046.83-1.867 1.866-2.013A24 24 0 0 1 12 12.75m0 0c2.883 0 5.647.508 8.208 1.44a24 24 0 0 1-1.153 6.06M12 12.75c-2.883 0-5.647.508-8.208 1.44c.125 2.105.52 4.136 1.153 6.06M12 12.75a2.25 2.25 0 0 0 2.248-2.354M12 12.75a2.25 2.25 0 0 1-2.248-2.354M12 8.25q1.494-.001 2.922-.236c.403-.066.74-.358.795-.762a3.8 3.8 0 0 0-.399-2.25M12 8.25q-1.493-.001-2.922-.236c-.402-.066-.74-.358-.795-.762a3.73 3.73 0 0 1 .4-2.253M12 8.25a2.25 2.25 0 0 0-2.248 2.146M12 8.25a2.25 2.25 0 0 1 2.248 2.146M8.683 5a6 6 0 0 1-1.155-1.002c.07-.63.27-1.222.574-1.747M8.683 5a3.75 3.75 0 0 1 6.635 0m0 0c.427-.283.815-.62 1.155-.999a4.5 4.5 0 0 0-.575-1.752M4.921 6a24 24 0 0 0-.392 3.314a24 24 0 0 0 5.223 1.082M19.08 6q.308 1.622.392 3.314a24 24 0 0 1-5.223 1.082\\"/>"},"building-office":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M3.75 21h16.5M4.5 3h15M5.25 3v18m13.5-18v18M9 6.75h1.5m-1.5 3h1.5m-1.5 3h1.5m3-6H15m-1.5 3H15m-1.5 3H15M9 21v-3.375c0-.621.504-1.125 1.125-1.125h3.75c.621 0 1.125.504 1.125 1.125V21\\"/>"},"calendar":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M6.75 3v2.25M17.25 3v2.25M3 18.75V7.5a2.25 2.25 0 0 1 2.25-2.25h13.5A2.25 2.25 0 0 1 21 7.5v11.25m-18 0A2.25 2.25 0 0 0 5.25 21h13.5A2.25 2.25 0 0 0 21 18.75m-18 0v-7.5A2.25 2.25 0 0 1 5.25 9h13.5A2.25 2.25 0 0 1 21 11.25v7.5\\"/>"},"calendar-days":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M6.75 3v2.25M17.25 3v2.25M3 18.75V7.5a2.25 2.25 0 0 1 2.25-2.25h13.5A2.25 2.25 0 0 1 21 7.5v11.25m-18 0A2.25 2.25 0 0 0 5.25 21h13.5A2.25 2.25 0 0 0 21 18.75m-18 0v-7.5A2.25 2.25 0 0 1 5.25 9h13.5A2.25 2.25 0 0 1 21 11.25v7.5m-9-6h.008v.008H12zM12 15h.008v.008H12zm0 2.25h.008v.008H12zM9.75 15h.008v.008H9.75zm0 2.25h.008v.008H9.75zM7.5 15h.008v.008H7.5zm0 2.25h.008v.008H7.5zm6.75-4.5h.008v.008h-.008zm0 2.25h.008v.008h-.008zm0 2.25h.008v.008h-.008zm2.25-4.5h.008v.008H16.5zm0 2.25h.008v.008H16.5z\\"/>"},"calendar-days-solid":{"width":24,"height":24,"body":"<g fill=\\"currentColor\\"><path d=\\"M12.75 12.75a.75.75 0 1 1-1.5 0a.75.75 0 0 1 1.5 0m-5.25 3a.75.75 0 1 0 0-1.5a.75.75 0 0 0 0 1.5m.75 1.5a.75.75 0 1 1-1.5 0a.75.75 0 0 1 1.5 0m1.5-1.5a.75.75 0 1 0 0-1.5a.75.75 0 0 0 0 1.5m.75 1.5a.75.75 0 1 1-1.5 0a.75.75 0 0 1 1.5 0m1.5-1.5a.75.75 0 1 0 0-1.5a.75.75 0 0 0 0 1.5m.75 1.5a.75.75 0 1 1-1.5 0a.75.75 0 0 1 1.5 0m1.5-1.5a.75.75 0 1 0 0-1.5a.75.75 0 0 0 0 1.5m.75 1.5a.75.75 0 1 1-1.5 0a.75.75 0 0 1 1.5 0m1.5-1.5a.75.75 0 1 0 0-1.5a.75.75 0 0 0 0 1.5m-1.5-3a.75.75 0 1 1-1.5 0a.75.75 0 0 1 1.5 0m1.5.75a.75.75 0 1 0 0-1.5a.75.75 0 0 0 0 1.5\\"/><path fill-rule=\\"evenodd\\" d=\\"M6.75 2.25A.75.75 0 0 1 7.5 3v1.5h9V3A.75.75 0 0 1 18 3v1.5h.75a3 3 0 0 1 3 3v11.25a3 3 0 0 1-3 3H5.25a3 3 0 0 1-3-3V7.5a3 3 0 0 1 3-3H6V3a.75.75 0 0 1 .75-.75m13.5 9a1.5 1.5 0 0 0-1.5-1.5H5.25a1.5 1.5 0 0 0-1.5 1.5v7.5a1.5 1.5 0 0 0 1.5 1.5h13.5a1.5 1.5 0 0 0 1.5-1.5z\\" clip-rule=\\"evenodd\\"/></g>"},"camera":{"width":24,"height":24,"body":"<g fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\"><path d=\\"M6.827 6.175A2.31 2.31 0 0 1 5.186 7.23q-.57.08-1.134.175C2.999 7.58 2.25 8.507 2.25 9.574V18a2.25 2.25 0 0 0 2.25 2.25h15A2.25 2.25 0 0 0 21.75 18V9.574c0-1.067-.75-1.994-1.802-2.169a48 48 0 0 0-1.134-.175a2.31 2.31 0 0 1-1.64-1.055l-.822-1.316a2.19 2.19 0 0 0-1.736-1.039a49 49 0 0 0-5.232 0a2.19 2.19 0 0 0-1.736 1.039z\\"/><path d=\\"M16.5 12.75a4.5 4.5 0 1 1-9 0a4.5 4.5 0 0 1 9 0m2.25-2.25h.008v.008h-.008z\\"/></g>"},"chart-bar":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M3 13.125C3 12.504 3.504 12 4.125 12h2.25c.621 0 1.125.504 1.125 1.125v6.75C7.5 20.496 6.996 21 6.375 21h-2.25A1.125 1.125 0 0 1 3 19.875zm6.75-4.5c0-.621.504-1.125 1.125-1.125h2.25c.621 0 1.125.504 1.125 1.125v11.25c0 .621-.504 1.125-1.125 1.125h-2.25a1.125 1.125 0 0 1-1.125-1.125zm6.75-4.5c0-.621.504-1.125 1.125-1.125h2.25C20.496 3 21 3.504 21 4.125v15.75c0 .621-.504 1.125-1.125 1.125h-2.25a1.125 1.125 0 0 1-1.125-1.125z\\"/>"},"chart-bar-square-solid":{"width":24,"height":24,"body":"<path fill=\\"currentColor\\" fill-rule=\\"evenodd\\" d=\\"M3 6a3 3 0 0 1 3-3h12a3 3 0 0 1 3 3v12a3 3 0 0 1-3 3H6a3 3 0 0 1-3-3zm4.5 7.5a.75.75 0 0 1 .75.75v2.25a.75.75 0 0 1-1.5 0v-2.25a.75.75 0 0 1 .75-.75m3.75-1.5a.75.75 0 0 0-1.5 0v4.5a.75.75 0 0 0 1.5 0zm2.25-3a.75.75 0 0 1 .75.75v6.75a.75.75 0 0 1-1.5 0V9.75A.75.75 0 0 1 13.5 9m3.75-1.5a.75.75 0 0 0-1.5 0v9a.75.75 0 0 0 1.5 0z\\" clip-rule=\\"evenodd\\"/>"},"chart-pie":{"width":24,"height":24,"body":"<g fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\"><path d=\\"M10.5 6a7.5 7.5 0 1 0 7.5 7.5h-7.5z\\"/><path d=\\"M13.5 10.5H21A7.5 7.5 0 0 0 13.5 3z\\"/></g>"},"chat-bubble-bottom-center-text":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M7.5 8.25h9m-9 3H12m-9.75 1.51c0 1.6 1.123 2.994 2.707 3.227q1.694.25 3.423.379c.35.026.67.21.865.501L12 21l2.755-4.132a1.14 1.14 0 0 1 .865-.502a48 48 0 0 0 3.423-.379c1.584-.233 2.707-1.626 2.707-3.228V6.741c0-1.602-1.123-2.995-2.707-3.228A48.4 48.4 0 0 0 12 3c-2.392 0-4.744.175-7.043.513C3.373 3.746 2.25 5.14 2.25 6.741z\\"/>"},"chat-bubble-left":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M2.25 12.76c0 1.6 1.123 2.994 2.707 3.227q1.63.24 3.293.369V21l4.076-4.076a1.53 1.53 0 0 1 1.037-.443a48 48 0 0 0 5.68-.494c1.584-.233 2.707-1.626 2.707-3.228V6.741c0-1.602-1.123-2.995-2.707-3.228A48.4 48.4 0 0 0 12 3c-2.392 0-4.744.175-7.043.513C3.373 3.746 2.25 5.14 2.25 6.741z\\"/>"},"chat-bubble-left-ellipsis":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M8.625 9.75a.375.375 0 1 1-.75 0a.375.375 0 0 1 .75 0m0 0H8.25m4.125 0a.375.375 0 1 1-.75 0a.375.375 0 0 1 .75 0m0 0H12m4.125 0a.375.375 0 1 1-.75 0a.375.375 0 0 1 .75 0m0 0h-.375m-13.5 3.01c0 1.6 1.123 2.994 2.707 3.227q1.63.24 3.293.369V21l4.184-4.183a1.14 1.14 0 0 1 .778-.332a48 48 0 0 0 5.83-.498c1.585-.233 2.708-1.626 2.708-3.228V6.741c0-1.602-1.123-2.995-2.707-3.228A48.4 48.4 0 0 0 12 3c-2.392 0-4.744.175-7.043.513C3.373 3.746 2.25 5.14 2.25 6.741z\\"/>"},"chat-bubble-left-right":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M20.25 8.511c.884.284 1.5 1.128 1.5 2.097v4.286c0 1.136-.847 2.1-1.98 2.193q-.51.041-1.02.072v3.091l-3-3q-2.031 0-4.02-.163a2.1 2.1 0 0 1-.825-.242m9.345-8.334a2 2 0 0 0-.476-.095a48.6 48.6 0 0 0-8.048 0c-1.131.094-1.976 1.057-1.976 2.192v4.286c0 .837.46 1.58 1.155 1.951m9.345-8.334V6.637c0-1.621-1.152-3.026-2.76-3.235A48.5 48.5 0 0 0 11.25 3c-2.115 0-4.198.137-6.24.402c-1.608.209-2.76 1.614-2.76 3.235v6.226c0 1.621 1.152 3.026 2.76 3.235q.865.113 1.74.194V21l4.155-4.155\\"/>"},"chat-bubble-left-right-solid":{"width":24,"height":24,"body":"<g fill=\\"currentColor\\"><path d=\\"M4.913 2.658q3.115-.406 6.337-.408c2.147 0 4.262.139 6.337.408c1.922.25 3.291 1.861 3.405 3.727a4.4 4.4 0 0 0-1.032-.211a51 51 0 0 0-8.42 0c-2.358.196-4.04 2.19-4.04 4.434v4.286a4.47 4.47 0 0 0 2.433 3.984L7.28 21.53A.75.75 0 0 1 6 21v-4.03a49 49 0 0 1-1.087-.128C2.905 16.58 1.5 14.833 1.5 12.862V6.638c0-1.97 1.405-3.718 3.413-3.979\\"/><path d=\\"M15.75 7.5q-2.065 0-4.086.169C10.124 7.797 9 9.103 9 10.609v4.285c0 1.507 1.128 2.814 2.67 2.94q1.865.153 3.768.165l2.782 2.781a.75.75 0 0 0 1.28-.53v-2.39l.33-.026c1.542-.125 2.67-1.433 2.67-2.94v-4.286c0-1.505-1.125-2.811-2.664-2.94A49 49 0 0 0 15.75 7.5\\"/></g>"},"chat-bubble-oval-left-ellipsis":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M8.625 12a.375.375 0 1 1-.75 0a.375.375 0 0 1 .75 0m0 0H8.25m4.125 0a.375.375 0 1 1-.75 0a.375.375 0 0 1 .75 0m0 0H12m4.125 0a.375.375 0 1 1-.75 0a.375.375 0 0 1 .75 0m0 0h-.375M21 12c0 4.556-4.03 8.25-9 8.25a9.8 9.8 0 0 1-2.555-.337A5.97 5.97 0 0 1 5.41 20.97a6 6 0 0 1-.474-.065a4.5 4.5 0 0 0 .978-2.025c.09-.457-.133-.901-.467-1.226C3.93 16.178 3 14.189 3 12c0-4.556 4.03-8.25 9-8.25s9 3.694 9 8.25\\"/>"},"check":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"m4.5 12.75l6 6l9-13.5\\"/>"},"check-20-solid":{"width":20,"height":20,"body":"<path fill=\\"currentColor\\" fill-rule=\\"evenodd\\" d=\\"M16.705 4.153a.75.75 0 0 1 .142 1.052l-8 10.5a.75.75 0 0 1-1.127.075l-4.5-4.5a.75.75 0 0 1 1.06-1.06l3.894 3.893l7.48-9.817a.75.75 0 0 1 1.05-.143\\" clip-rule=\\"evenodd\\"/>"},"check-circle":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M9 12.75L11.25 15L15 9.75M21 12a9 9 0 1 1-18 0a9 9 0 0 1 18 0\\"/>"},"check-circle-20-solid":{"width":20,"height":20,"body":"<path fill=\\"currentColor\\" fill-rule=\\"evenodd\\" d=\\"M10 18a8 8 0 1 0 0-16a8 8 0 0 0 0 16m3.857-9.809a.75.75 0 0 0-1.214-.882l-3.483 4.79l-1.88-1.88a.75.75 0 1 0-1.06 1.061l2.5 2.5a.75.75 0 0 0 1.137-.089z\\" clip-rule=\\"evenodd\\"/>"},"check-circle-solid":{"width":24,"height":24,"body":"<path fill=\\"currentColor\\" fill-rule=\\"evenodd\\" d=\\"M2.25 12c0-5.385 4.365-9.75 9.75-9.75s9.75 4.365 9.75 9.75s-4.365 9.75-9.75 9.75S2.25 17.385 2.25 12m13.36-1.814a.75.75 0 1 0-1.22-.872l-3.236 4.53L9.53 12.22a.75.75 0 0 0-1.06 1.06l2.25 2.25a.75.75 0 0 0 1.14-.094z\\" clip-rule=\\"evenodd\\"/>"},"chevron-double-left":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"m18.75 4.5l-7.5 7.5l7.5 7.5m-6-15L5.25 12l7.5 7.5\\"/>"},"chevron-double-right":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"m5.25 4.5l7.5 7.5l-7.5 7.5m6-15l7.5 7.5l-7.5 7.5\\"/>"},"chevron-down":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"m19.5 8.25l-7.5 7.5l-7.5-7.5\\"/>"},"chevron-left":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M15.75 19.5L8.25 12l7.5-7.5\\"/>"},"chevron-right":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"m8.25 4.5l7.5 7.5l-7.5 7.5\\"/>"},"chevron-right-20-solid":{"width":20,"height":20,"body":"<path fill=\\"currentColor\\" fill-rule=\\"evenodd\\" d=\\"M8.22 5.22a.75.75 0 0 1 1.06 0l4.25 4.25a.75.75 0 0 1 0 1.06l-4.25 4.25a.75.75 0 0 1-1.06-1.06L11.94 10L8.22 6.28a.75.75 0 0 1 0-1.06\\" clip-rule=\\"evenodd\\"/>"},"chevron-up":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"m4.5 15.75l7.5-7.5l7.5 7.5\\"/>"},"circle-stack":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M20.25 6.375c0 2.278-3.694 4.125-8.25 4.125S3.75 8.653 3.75 6.375m16.5 0c0-2.278-3.694-4.125-8.25-4.125S3.75 4.097 3.75 6.375m16.5 0v11.25c0 2.278-3.694 4.125-8.25 4.125s-8.25-1.847-8.25-4.125V6.375m16.5 0v3.75m-16.5-3.75v3.75m16.5 0v3.75C20.25 16.153 16.556 18 12 18s-8.25-1.847-8.25-4.125v-3.75m16.5 0c0 2.278-3.694 4.125-8.25 4.125s-8.25-1.847-8.25-4.125\\"/>"},"clipboard":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M15.666 3.888A2.25 2.25 0 0 0 13.5 2.25h-3c-1.03 0-1.9.693-2.166 1.638m7.332 0q.083.292.084.612v0a.75.75 0 0 1-.75.75H9a.75.75 0 0 1-.75-.75v0q.002-.32.084-.612m7.332 0q.969.073 1.927.184c1.1.128 1.907 1.077 1.907 2.185V19.5a2.25 2.25 0 0 1-2.25 2.25H6.75A2.25 2.25 0 0 1 4.5 19.5V6.257c0-1.108.806-2.057 1.907-2.185a48 48 0 0 1 1.927-.184\\"/>"},"clipboard-document":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M8.25 7.5V6.108c0-1.135.845-2.098 1.976-2.192q.56-.045 1.124-.08M15.75 18H18a2.25 2.25 0 0 0 2.25-2.25V6.108c0-1.135-.845-2.098-1.976-2.192a48 48 0 0 0-1.123-.08M15.75 18.75v-1.875a3.375 3.375 0 0 0-3.375-3.375h-1.5a1.125 1.125 0 0 1-1.125-1.125v-1.5A3.375 3.375 0 0 0 6.375 7.5H5.25m11.9-3.664A2.25 2.25 0 0 0 15 2.25h-1.5a2.25 2.25 0 0 0-2.15 1.586m5.8 0q.099.316.1.664v.75h-6V4.5q.001-.348.1-.664M6.75 7.5H4.875c-.621 0-1.125.504-1.125 1.125v12c0 .621.504 1.125 1.125 1.125h9.75c.621 0 1.125-.504 1.125-1.125V16.5a9 9 0 0 0-9-9\\"/>"},"clipboard-document-list":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M9 12h3.75M9 15h3.75M9 18h3.75m3 .75H18a2.25 2.25 0 0 0 2.25-2.25V6.108c0-1.135-.845-2.098-1.976-2.192a48 48 0 0 0-1.123-.08m-5.801 0q-.099.316-.1.664c0 .414.336.75.75.75h4.5a.75.75 0 0 0 .75-.75a2.3 2.3 0 0 0-.1-.664m-5.8 0A2.25 2.25 0 0 1 13.5 2.25H15a2.25 2.25 0 0 1 2.15 1.586m-5.8 0q-.563.035-1.124.08C9.095 4.01 8.25 4.973 8.25 6.108V8.25m0 0H4.875c-.621 0-1.125.504-1.125 1.125v11.25c0 .621.504 1.125 1.125 1.125h9.75c.621 0 1.125-.504 1.125-1.125V9.375c0-.621-.504-1.125-1.125-1.125zM6.75 12h.008v.008H6.75zm0 3h.008v.008H6.75zm0 3h.008v.008H6.75z\\"/>"},"clock":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M12 6v6h4.5m4.5 0a9 9 0 1 1-18 0a9 9 0 0 1 18 0\\"/>"},"clock-solid":{"width":24,"height":24,"body":"<path fill=\\"currentColor\\" fill-rule=\\"evenodd\\" d=\\"M12 2.25c-5.385 0-9.75 4.365-9.75 9.75s4.365 9.75 9.75 9.75s9.75-4.365 9.75-9.75S17.385 2.25 12 2.25M12.75 6a.75.75 0 0 0-1.5 0v6c0 .414.336.75.75.75h4.5a.75.75 0 0 0 0-1.5h-3.75z\\" clip-rule=\\"evenodd\\"/>"},"cloud":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M2.25 15a4.5 4.5 0 0 0 4.5 4.5H18a3.75 3.75 0 0 0 1.332-7.257a3 3 0 0 0-3.758-3.848a5.25 5.25 0 0 0-10.233 2.33A4.5 4.5 0 0 0 2.25 15\\"/>"},"cloud-arrow-down":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M12 9.75v6.75m0 0l-3-3m3 3l3-3m-8.25 6a4.5 4.5 0 0 1-1.41-8.775a5.25 5.25 0 0 1 10.233-2.33a3 3 0 0 1 3.758 3.848A3.752 3.752 0 0 1 18 19.5z\\"/>"},"cog-6-tooth":{"width":24,"height":24,"body":"<g fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\"><path d=\\"M9.594 3.94c.09-.542.56-.94 1.11-.94h2.593c.55 0 1.02.398 1.11.94l.213 1.281c.063.374.313.686.645.87q.11.06.22.127c.325.196.72.257 1.075.124l1.217-.456a1.125 1.125 0 0 1 1.37.49l1.296 2.247a1.125 1.125 0 0 1-.26 1.431l-1.003.827c-.293.241-.438.613-.43.992a8 8 0 0 1 0 .255c-.008.378.137.75.43.991l1.004.827c.424.35.534.955.26 1.43l-1.298 2.247a1.125 1.125 0 0 1-1.369.491l-1.217-.456c-.355-.133-.75-.072-1.076.124a7 7 0 0 1-.22.128c-.331.183-.581.495-.644.869l-.213 1.281c-.09.543-.56.94-1.11.94h-2.594c-.55 0-1.019-.398-1.11-.94l-.213-1.281c-.062-.374-.312-.686-.644-.87a7 7 0 0 1-.22-.127c-.325-.196-.72-.257-1.076-.124l-1.217.456a1.125 1.125 0 0 1-1.369-.49l-1.297-2.247a1.125 1.125 0 0 1 .26-1.431l1.004-.827c.292-.24.437-.613.43-.991a7 7 0 0 1 0-.255c.007-.38-.138-.751-.43-.992l-1.004-.827a1.125 1.125 0 0 1-.26-1.43l1.297-2.247a1.125 1.125 0 0 1 1.37-.491l1.216.456c.356.133.751.072 1.076-.124q.108-.066.22-.128c.332-.183.582-.495.644-.869z\\"/><path d=\\"M15 12a3 3 0 1 1-6 0a3 3 0 0 1 6 0\\"/></g>"},"command-line":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"m6.75 7.5l3 2.25l-3 2.25m4.5 0h3m-9 8.25h13.5A2.25 2.25 0 0 0 21 18V6a2.25 2.25 0 0 0-2.25-2.25H5.25A2.25 2.25 0 0 0 3 6v12a2.25 2.25 0 0 0 2.25 2.25\\"/>"},"cpu-chip":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M8.25 3v1.5M4.5 8.25H3m18 0h-1.5M4.5 12H3m18 0h-1.5m-15 3.75H3m18 0h-1.5M8.25 19.5V21M12 3v1.5m0 15V21m3.75-18v1.5m0 15V21m-9-1.5h10.5a2.25 2.25 0 0 0 2.25-2.25V6.75a2.25 2.25 0 0 0-2.25-2.25H6.75A2.25 2.25 0 0 0 4.5 6.75v10.5a2.25 2.25 0 0 0 2.25 2.25m.75-12h9v9h-9z\\"/>"},"cube-transparent":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"m21 7.5l-2.25-1.312M21 7.5v2.25m0-2.25l-2.25 1.313M3 7.5l2.25-1.312M3 7.5l2.25 1.313M3 7.5v2.25m9 3l2.25-1.312M12 12.75l-2.25-1.312M12 12.75V15m0 6.75l2.25-1.312M12 21.75V19.5m0 2.25l-2.25-1.312m0-16.875L12 2.25l2.25 1.313M21 14.25v2.25l-2.25 1.313m-13.5 0L3 16.5v-2.25\\"/>"},"cursor-arrow-rays":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M15.042 21.672L13.684 16.6m0 0l-2.51 2.225l.569-9.47l5.227 7.917zM12 2.25V4.5m5.834.166l-1.591 1.591M20.25 10.5H18M7.757 14.743l-1.59 1.59M6 10.5H3.75m4.007-4.243l-1.59-1.59\\"/>"},"document-arrow-down":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M19.5 14.25v-2.625a3.375 3.375 0 0 0-3.375-3.375h-1.5A1.125 1.125 0 0 1 13.5 7.125v-1.5a3.375 3.375 0 0 0-3.375-3.375H8.25m.75 12l3 3m0 0l3-3m-3 3v-6m-1.5-9H5.625c-.621 0-1.125.504-1.125 1.125v17.25c0 .621.504 1.125 1.125 1.125h12.75c.621 0 1.125-.504 1.125-1.125V11.25a9 9 0 0 0-9-9\\"/>"},"document-duplicate":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M15.75 17.25v3.375c0 .621-.504 1.125-1.125 1.125h-9.75a1.125 1.125 0 0 1-1.125-1.125V7.875c0-.621.504-1.125 1.125-1.125H6.75a9 9 0 0 1 1.5.124m7.5 10.376h3.375c.621 0 1.125-.504 1.125-1.125V11.25c0-4.46-3.243-8.161-7.5-8.876a9 9 0 0 0-1.5-.124H9.375c-.621 0-1.125.504-1.125 1.125v3.5m7.5 10.375H9.375a1.125 1.125 0 0 1-1.125-1.125v-9.25m12 6.625v-1.875a3.375 3.375 0 0 0-3.375-3.375h-1.5a1.125 1.125 0 0 1-1.125-1.125v-1.5a3.375 3.375 0 0 0-3.375-3.375H9.75\\"/>"},"document-magnifying-glass":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M19.5 14.25v-2.625a3.375 3.375 0 0 0-3.375-3.375h-1.5A1.125 1.125 0 0 1 13.5 7.125v-1.5a3.375 3.375 0 0 0-3.375-3.375H8.25m5.231 13.481L15 17.25m-4.5-15H5.625c-.621 0-1.125.504-1.125 1.125v16.5c0 .621.504 1.125 1.125 1.125h12.75c.621 0 1.125-.504 1.125-1.125V11.25a9 9 0 0 0-9-9m3.75 11.625a2.625 2.625 0 1 1-5.25 0a2.625 2.625 0 0 1 5.25 0\\"/>"},"document-text":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M19.5 14.25v-2.625a3.375 3.375 0 0 0-3.375-3.375h-1.5A1.125 1.125 0 0 1 13.5 7.125v-1.5a3.375 3.375 0 0 0-3.375-3.375H8.25m0 12.75h7.5m-7.5 3H12M10.5 2.25H5.625c-.621 0-1.125.504-1.125 1.125v17.25c0 .621.504 1.125 1.125 1.125h12.75c.621 0 1.125-.504 1.125-1.125V11.25a9 9 0 0 0-9-9\\"/>"},"ellipsis-horizontal":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M6.75 12a.75.75 0 1 1-1.5 0a.75.75 0 0 1 1.5 0m6 0a.75.75 0 1 1-1.5 0a.75.75 0 0 1 1.5 0m6 0a.75.75 0 1 1-1.5 0a.75.75 0 0 1 1.5 0\\"/>"},"exclamation-circle":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M12 9v3.75m9-.75a9 9 0 1 1-18 0a9 9 0 0 1 18 0m-9 3.75h.008v.008H12z\\"/>"},"exclamation-triangle":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M12 9v3.75m-9.303 3.376c-.866 1.5.217 3.374 1.948 3.374h14.71c1.73 0 2.813-1.874 1.948-3.374L13.949 3.378c-.866-1.5-3.032-1.5-3.898 0zM12 15.75h.007v.008H12z\\"/>"},"eye":{"width":24,"height":24,"body":"<g fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\"><path d=\\"M2.036 12.322a1 1 0 0 1 0-.639C3.423 7.51 7.36 4.5 12 4.5c4.638 0 8.573 3.007 9.963 7.178c.07.207.07.431 0 .639C20.577 16.49 16.64 19.5 12 19.5c-4.638 0-8.573-3.007-9.963-7.178\\"/><path d=\\"M15 12a3 3 0 1 1-6 0a3 3 0 0 1 6 0\\"/></g>"},"eye-slash":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M3.98 8.223A10.5 10.5 0 0 0 1.934 12c1.292 4.339 5.31 7.5 10.066 7.5c.993 0 1.953-.138 2.863-.395M6.228 6.228A10.45 10.45 0 0 1 12 4.5c4.756 0 8.773 3.162 10.065 7.499a10.52 10.52 0 0 1-4.293 5.773M6.228 6.228L3 3m3.228 3.228l3.65 3.65m7.894 7.894L21 21m-3.228-3.228l-3.65-3.65m0 0a3 3 0 1 0-4.243-4.243m4.242 4.242L9.88 9.88\\"/>"},"face-smile-solid":{"width":24,"height":24,"body":"<path fill=\\"currentColor\\" fill-rule=\\"evenodd\\" d=\\"M12 2.25c-5.385 0-9.75 4.365-9.75 9.75s4.365 9.75 9.75 9.75s9.75-4.365 9.75-9.75S17.385 2.25 12 2.25m-2.625 6c-.54 0-.828.419-.936.634a1.96 1.96 0 0 0-.189.866c0 .298.059.605.189.866c.108.215.395.634.936.634c.54 0 .828-.419.936-.634c.13-.26.189-.568.189-.866s-.059-.605-.189-.866c-.108-.215-.395-.634-.936-.634m4.314.634c.108-.215.395-.634.936-.634c.54 0 .828.419.936.634c.13.26.189.568.189.866s-.059.605-.189.866c-.108.215-.395.634-.936.634c-.54 0-.828-.419-.936-.634a1.96 1.96 0 0 1-.189-.866c0-.298.059-.605.189-.866m2.023 6.828a.75.75 0 1 0-1.06-1.06a3.75 3.75 0 0 1-5.304 0a.75.75 0 0 0-1.06 1.06a5.25 5.25 0 0 0 7.424 0\\" clip-rule=\\"evenodd\\"/>"},"finger-print":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M7.864 4.243A7.5 7.5 0 0 1 19.5 10.5c0 2.92-.556 5.709-1.568 8.269M5.742 6.364A7.47 7.47 0 0 0 4.5 10.5a7.46 7.46 0 0 1-1.15 3.993m1.989 3.559A11.2 11.2 0 0 0 8.25 10.5a3.75 3.75 0 1 1 7.5 0q0 .79-.064 1.565M12 10.5a14.94 14.94 0 0 1-3.6 9.75m6.633-4.596a18.7 18.7 0 0 1-2.485 5.33\\"/>"},"fire":{"width":24,"height":24,"body":"<g fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\"><path d=\\"M15.362 5.214A8.252 8.252 0 0 1 12 21A8.25 8.25 0 0 1 6.038 7.047A8.3 8.3 0 0 0 9 9.601a8.98 8.98 0 0 1 3.361-6.867a8.2 8.2 0 0 0 3 2.48\\"/><path d=\\"M12 18a3.75 3.75 0 0 0 .495-7.468a6 6 0 0 0-1.925 3.547a6 6 0 0 1-2.133-1.001A3.75 3.75 0 0 0 12 18\\"/></g>"},"fire-solid":{"width":24,"height":24,"body":"<path fill=\\"currentColor\\" fill-rule=\\"evenodd\\" d=\\"M12.963 2.286a.75.75 0 0 0-1.071-.136a9.74 9.74 0 0 0-3.539 6.176a7.6 7.6 0 0 1-1.705-1.715a.75.75 0 0 0-1.152-.082A9 9 0 1 0 15.68 4.534a7.46 7.46 0 0 1-2.717-2.248M15.75 14.25a3.75 3.75 0 1 1-7.313-1.172c.628.465 1.35.81 2.133 1a6 6 0 0 1 1.925-3.546a3.75 3.75 0 0 1 3.255 3.718\\" clip-rule=\\"evenodd\\"/>"},"flag-solid":{"width":24,"height":24,"body":"<path fill=\\"currentColor\\" fill-rule=\\"evenodd\\" d=\\"M3 2.25a.75.75 0 0 1 .75.75v.54l1.838-.46a9.75 9.75 0 0 1 6.725.738l.108.054A8.25 8.25 0 0 0 18 4.524l3.11-.732a.75.75 0 0 1 .917.81a47.8 47.8 0 0 0 .005 10.337a.75.75 0 0 1-.574.812l-3.114.733a9.75 9.75 0 0 1-6.594-.77l-.108-.054a8.25 8.25 0 0 0-5.69-.625l-2.202.55V21a.75.75 0 0 1-1.5 0V3A.75.75 0 0 1 3 2.25\\" clip-rule=\\"evenodd\\"/>"},"folder":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M2.25 12.75V12A2.25 2.25 0 0 1 4.5 9.75h15A2.25 2.25 0 0 1 21.75 12v.75m-8.69-6.44l-2.12-2.12a1.5 1.5 0 0 0-1.061-.44H4.5A2.25 2.25 0 0 0 2.25 6v12a2.25 2.25 0 0 0 2.25 2.25h15A2.25 2.25 0 0 0 21.75 18V9a2.25 2.25 0 0 0-2.25-2.25h-5.379a1.5 1.5 0 0 1-1.06-.44\\"/>"},"folder-open":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M3.75 9.776q.168-.026.344-.026h15.812q.176 0 .344.026m-16.5 0a2.25 2.25 0 0 0-1.883 2.542l.857 6a2.25 2.25 0 0 0 2.227 1.932H19.05a2.25 2.25 0 0 0 2.227-1.932l.857-6a2.25 2.25 0 0 0-1.883-2.542m-16.5 0V6A2.25 2.25 0 0 1 6 3.75h3.879a1.5 1.5 0 0 1 1.06.44l2.122 2.12a1.5 1.5 0 0 0 1.06.44H18A2.25 2.25 0 0 1 20.25 9v.776\\"/>"},"funnel":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M12 3c2.755 0 5.455.232 8.083.678c.533.09.917.556.917 1.096v1.044a2.25 2.25 0 0 1-.659 1.591l-5.432 5.432a2.25 2.25 0 0 0-.659 1.591v2.927a2.25 2.25 0 0 1-1.244 2.013L9.75 21v-6.568a2.25 2.25 0 0 0-.659-1.591L3.659 7.409A2.25 2.25 0 0 1 3 5.818V4.774c0-.54.384-1.006.917-1.096A48.3 48.3 0 0 1 12 3\\"/>"},"globe-alt":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M12 21a9.004 9.004 0 0 0 8.716-6.747M12 21a9.004 9.004 0 0 1-8.716-6.747M12 21c2.485 0 4.5-4.03 4.5-9S14.485 3 12 3m0 18c-2.485 0-4.5-4.03-4.5-9S9.515 3 12 3m0 0a9 9 0 0 1 7.843 4.582M12 3a9 9 0 0 0-7.843 4.582m15.686 0A11.95 11.95 0 0 1 12 10.5c-2.998 0-5.74-1.1-7.843-2.918m15.686 0A8.96 8.96 0 0 1 21 12c0 .778-.099 1.533-.284 2.253m0 0A17.9 17.9 0 0 1 12 16.5a17.9 17.9 0 0 1-8.716-2.247m0 0A9 9 0 0 1 3 12c0-1.605.42-3.113 1.157-4.418\\"/>"},"hand-raised-solid":{"width":24,"height":24,"body":"<path fill=\\"currentColor\\" d=\\"M10.5 1.875a1.125 1.125 0 0 1 2.25 0v8.219c.517.162 1.02.382 1.5.659V3.375a1.125 1.125 0 0 1 2.25 0v10.937a4.5 4.5 0 0 0-3.25 2.373a8.96 8.96 0 0 1 4-.935A.75.75 0 0 0 18 15v-2.266a3.37 3.37 0 0 1 .988-2.37a1.125 1.125 0 0 1 1.592 1.59a1.12 1.12 0 0 0-.33.79v3.006h-.005a6 6 0 0 1-1.752 4.007l-1.736 1.736a6 6 0 0 1-4.242 1.757H10.5a7.5 7.5 0 0 1-7.5-7.5V6.375a1.125 1.125 0 0 1 2.25 0v5.519c.46-.452.965-.832 1.5-1.141V3.375a1.125 1.125 0 0 1 2.25 0v6.526q.744-.15 1.5-.151z\\"/>"},"hashtag":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M5.25 8.25h15m-16.5 7.5h15m-1.8-13.5l-3.9 19.5m-2.1-19.5l-3.9 19.5\\"/>"},"heart":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M21 8.25c0-2.485-2.099-4.5-4.687-4.5c-1.936 0-3.598 1.126-4.313 2.733c-.715-1.607-2.377-2.733-4.312-2.733C5.098 3.75 3 5.765 3 8.25c0 7.22 9 12 9 12s9-4.78 9-12\\"/>"},"inbox":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M2.25 13.5h3.86a2.25 2.25 0 0 1 2.012 1.244l.256.512a2.25 2.25 0 0 0 2.013 1.244h3.218a2.25 2.25 0 0 0 2.013-1.244l.256-.512a2.25 2.25 0 0 1 2.013-1.244h3.859m-19.5.338V18a2.25 2.25 0 0 0 2.25 2.25h15A2.25 2.25 0 0 0 21.75 18v-4.162q0-.338-.1-.661l-2.41-7.839a2.25 2.25 0 0 0-2.15-1.588H6.911a2.25 2.25 0 0 0-2.15 1.588L2.35 13.177a2.3 2.3 0 0 0-.1.661\\"/>"},"information-circle":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"m11.25 11.25l.041-.02a.75.75 0 0 1 1.063.852l-.708 2.836a.75.75 0 0 0 1.063.853l.041-.021M21 12a9 9 0 1 1-18 0a9 9 0 0 1 18 0m-9-3.75h.008v.008H12z\\"/>"},"key":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M15.75 5.25a3 3 0 0 1 3 3m3 0a6 6 0 0 1-7.029 5.912c-.563-.097-1.159.026-1.563.43L10.5 17.25H8.25v2.25H6v2.25H2.25v-2.818c0-.597.237-1.17.659-1.591l6.499-6.499c.404-.404.527-1 .43-1.563A6 6 0 1 1 21.75 8.25\\"/>"},"language":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"m10.5 21l5.25-11.25L21 21m-9-3h7.5M3 5.621a49 49 0 0 1 6-.371m0 0q1.681 0 3.334.114M9 5.25V3m3.334 2.364C11.176 10.658 7.69 15.08 3 17.502m9.334-12.138q1.344.092 2.666.257m-4.589 8.495a18 18 0 0 1-3.827-5.802\\"/>"},"light-bulb":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M12 18v-5.25m0 0a6 6 0 0 0 1.5-.189m-1.5.189a6 6 0 0 1-1.5-.189m3.75 7.478a12.1 12.1 0 0 1-4.5 0m3.75 2.383a14.4 14.4 0 0 1-3 0M14.25 18v-.192c0-.983.658-1.823 1.508-2.316a7.5 7.5 0 1 0-7.517 0c.85.493 1.509 1.333 1.509 2.316V18\\"/>"},"link":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M13.19 8.688a4.5 4.5 0 0 1 1.242 7.244l-4.5 4.5a4.5 4.5 0 0 1-6.364-6.364l1.757-1.757m13.35-.622l1.757-1.757a4.5 4.5 0 0 0-6.364-6.364l-4.5 4.5a4.5 4.5 0 0 0 1.242 7.244\\"/>"},"lock-closed":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M16.5 10.5V6.75a4.5 4.5 0 1 0-9 0v3.75m-.75 11.25h10.5a2.25 2.25 0 0 0 2.25-2.25v-6.75a2.25 2.25 0 0 0-2.25-2.25H6.75a2.25 2.25 0 0 0-2.25 2.25v6.75a2.25 2.25 0 0 0 2.25 2.25\\"/>"},"lock-open":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M13.5 10.5V6.75a4.5 4.5 0 1 1 9 0v3.75M3.75 21.75h10.5a2.25 2.25 0 0 0 2.25-2.25v-6.75a2.25 2.25 0 0 0-2.25-2.25H3.75a2.25 2.25 0 0 0-2.25 2.25v6.75a2.25 2.25 0 0 0 2.25 2.25\\"/>"},"magnifying-glass":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"m21 21l-5.197-5.197m0 0A7.5 7.5 0 1 0 5.196 5.196a7.5 7.5 0 0 0 10.607 10.607\\"/>"},"map":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M9 6.75V15m6-6v8.25m.503 3.499l4.875-2.438c.381-.19.622-.58.622-1.006V4.82c0-.836-.88-1.38-1.628-1.006l-3.869 1.934a1.12 1.12 0 0 1-1.006 0L9.503 3.252a1.13 1.13 0 0 0-1.006 0L3.622 5.689A1.13 1.13 0 0 0 3 6.695V19.18c0 .836.88 1.38 1.628 1.006l3.869-1.934a1.12 1.12 0 0 1 1.006 0l4.994 2.497c.317.158.69.158 1.006 0\\"/>"},"minus-circle":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M15 12H9m12 0a9 9 0 1 1-18 0a9 9 0 0 1 18 0\\"/>"},"moon":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M21.752 15.002A9.7 9.7 0 0 1 18 15.75A9.75 9.75 0 0 1 8.25 6c0-1.33.266-2.597.748-3.752A9.75 9.75 0 0 0 3 11.25A9.75 9.75 0 0 0 12.75 21a9.75 9.75 0 0 0 9.002-5.998\\"/>"},"moon-solid":{"width":24,"height":24,"body":"<path fill=\\"currentColor\\" fill-rule=\\"evenodd\\" d=\\"M9.528 1.718a.75.75 0 0 1 .162.819A9 9 0 0 0 9 6a9 9 0 0 0 9 9a9 9 0 0 0 3.463-.69a.75.75 0 0 1 .981.98a10.5 10.5 0 0 1-9.694 6.46c-5.799 0-10.5-4.7-10.5-10.5c0-4.368 2.667-8.112 6.46-9.694a.75.75 0 0 1 .818.162\\" clip-rule=\\"evenodd\\"/>"},"paint-brush":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M9.53 16.122a3 3 0 0 0-5.78 1.128a2.25 2.25 0 0 1-2.4 2.245a4.5 4.5 0 0 0 8.4-2.245c0-.399-.078-.78-.22-1.128m0 0a16 16 0 0 0 3.388-1.62m-5.043-.025a16 16 0 0 1 1.622-3.395m3.42 3.42a16 16 0 0 0 4.764-4.648l3.876-5.814a1.151 1.151 0 0 0-1.597-1.597L14.146 6.32a16 16 0 0 0-4.649 4.764m3.42 3.42a6.78 6.78 0 0 0-3.42-3.42\\"/>"},"paint-brush-solid":{"width":24,"height":24,"body":"<path fill=\\"currentColor\\" fill-rule=\\"evenodd\\" d=\\"M20.599 1.5c-.376 0-.743.111-1.055.32l-5.08 3.385a18.8 18.8 0 0 0-3.471 2.987a10.04 10.04 0 0 1 4.815 4.815a18.8 18.8 0 0 0 2.987-3.472l3.386-5.079A1.902 1.902 0 0 0 20.599 1.5m-8.3 14.025a19 19 0 0 0 1.896-1.207a8.03 8.03 0 0 0-4.513-4.513A19 19 0 0 0 8.475 11.7l-.278.5a5.26 5.26 0 0 1 3.601 3.602zM6.75 13.5A3.75 3.75 0 0 0 3 17.25a1.5 1.5 0 0 1-1.601 1.497a.75.75 0 0 0-.7 1.123a5.25 5.25 0 0 0 9.8-2.62a3.75 3.75 0 0 0-3.75-3.75\\" clip-rule=\\"evenodd\\"/>"},"paper-airplane":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M6 12L3.269 3.125A59.8 59.8 0 0 1 21.486 12a59.8 59.8 0 0 1-18.217 8.875zm0 0h7.5\\"/>"},"pause":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M15.75 5.25v13.5m-7.5-13.5v13.5\\"/>"},"pause-circle":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M14.25 9v6m-4.5 0V9M21 12a9 9 0 1 1-18 0a9 9 0 0 1 18 0\\"/>"},"pencil":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"m16.862 4.487l1.687-1.688a1.875 1.875 0 1 1 2.652 2.652L6.832 19.82a4.5 4.5 0 0 1-1.897 1.13l-2.685.8l.8-2.685a4.5 4.5 0 0 1 1.13-1.897zm0 0L19.5 7.125\\"/>"},"pencil-square":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"m16.862 4.487l1.687-1.688a1.875 1.875 0 1 1 2.652 2.652L10.582 16.07a4.5 4.5 0 0 1-1.897 1.13L6 18l.8-2.685a4.5 4.5 0 0 1 1.13-1.897zm0 0L19.5 7.125M18 14v4.75A2.25 2.25 0 0 1 15.75 21H5.25A2.25 2.25 0 0 1 3 18.75V8.25A2.25 2.25 0 0 1 5.25 6H10\\"/>"},"photo":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"m2.25 15.75l5.159-5.159a2.25 2.25 0 0 1 3.182 0l5.159 5.159m-1.5-1.5l1.409-1.409a2.25 2.25 0 0 1 3.182 0l2.909 2.909m-18 3.75h16.5a1.5 1.5 0 0 0 1.5-1.5V6a1.5 1.5 0 0 0-1.5-1.5H3.75A1.5 1.5 0 0 0 2.25 6v12a1.5 1.5 0 0 0 1.5 1.5m10.5-11.25h.008v.008h-.008zm.375 0a.375.375 0 1 1-.75 0a.375.375 0 0 1 .75 0\\"/>"},"play":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M5.25 5.653c0-.856.917-1.398 1.667-.986l11.54 6.347a1.125 1.125 0 0 1 0 1.972l-11.54 6.347a1.125 1.125 0 0 1-1.667-.986z\\"/>"},"play-solid":{"width":24,"height":24,"body":"<path fill=\\"currentColor\\" fill-rule=\\"evenodd\\" d=\\"M4.5 5.653c0-1.427 1.529-2.33 2.779-1.643l11.54 6.347c1.295.712 1.295 2.573 0 3.286L7.28 19.99c-1.25.687-2.779-.217-2.779-1.643z\\" clip-rule=\\"evenodd\\"/>"},"plus":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M12 4.5v15m7.5-7.5h-15\\"/>"},"plus-circle":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M12 9v6m3-3H9m12 0a9 9 0 1 1-18 0a9 9 0 0 1 18 0\\"/>"},"presentation-chart-bar":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M3.75 3v11.25A2.25 2.25 0 0 0 6 16.5h2.25M3.75 3h-1.5m1.5 0h16.5m0 0h1.5m-1.5 0v11.25A2.25 2.25 0 0 1 18 16.5h-2.25m-7.5 0h7.5m-7.5 0l-1 3m8.5-3l1 3m0 0l.5 1.5m-.5-1.5h-9.5m0 0l-.5 1.5M9 11.25v1.5M12 9v3.75m3-6v6\\"/>"},"puzzle-piece":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M14.25 6.087c0-.355.186-.676.401-.959c.221-.29.349-.634.349-1.003c0-1.036-1.007-1.875-2.25-1.875s-2.25.84-2.25 1.875c0 .369.128.713.349 1.003c.215.283.401.604.401.959v0a.64.64 0 0 1-.657.643a48 48 0 0 1-4.163-.3q.28 2.42.315 4.907a.656.656 0 0 1-.658.663v0c-.355 0-.676-.186-.959-.401a1.65 1.65 0 0 0-1.003-.349c-1.036 0-1.875 1.007-1.875 2.25s.84 2.25 1.875 2.25c.369 0 .713-.128 1.003-.349c.283-.215.604-.401.959-.401v0c.31 0 .555.26.532.57a48 48 0 0 1-.642 5.056q2.278.286 4.616.354a.64.64 0 0 0 .657-.643v0c0-.355-.186-.676-.401-.959a1.65 1.65 0 0 1-.349-1.003c0-1.035 1.008-1.875 2.25-1.875c1.243 0 2.25.84 2.25 1.875c0 .369-.128.713-.349 1.003c-.215.283-.4.604-.4.959v0c0 .333.277.599.61.58a48 48 0 0 0 5.427-.63a48 48 0 0 0 .582-4.717a.53.53 0 0 0-.533-.57v0c-.355 0-.676.186-.959.401c-.29.221-.634.349-1.003.349c-1.035 0-1.875-1.007-1.875-2.25s.84-2.25 1.875-2.25c.37 0 .713.128 1.003.349c.283.215.604.401.96.401v0a.656.656 0 0 0 .658-.663a48 48 0 0 0-.37-5.36q-2.83.515-5.766.689a.58.58 0 0 1-.61-.58\\"/>"},"question-mark-circle":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M9.879 7.519c1.172-1.025 3.071-1.025 4.243 0c1.171 1.025 1.171 2.687 0 3.712q-.308.268-.67.442c-.746.361-1.452.999-1.452 1.827v.75M21 12a9 9 0 1 1-18 0a9 9 0 0 1 18 0m-9 5.25h.008v.008H12z\\"/>"},"queue-list":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M3.75 12h16.5m-16.5 3.75h16.5M3.75 19.5h16.5M5.625 4.5h12.75a1.875 1.875 0 0 1 0 3.75H5.625a1.875 1.875 0 0 1 0-3.75\\"/>"},"rectangle-stack":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M6 6.878V6a2.25 2.25 0 0 1 2.25-2.25h7.5A2.25 2.25 0 0 1 18 6v.878m-12 0q.354-.126.75-.128h10.5q.396.002.75.128m-12 0A2.25 2.25 0 0 0 4.5 9v.878m13.5-3A2.25 2.25 0 0 1 19.5 9v.878m0 0a2.3 2.3 0 0 0-.75-.128H5.25q-.396.002-.75.128m15 0A2.25 2.25 0 0 1 21 12v6a2.25 2.25 0 0 1-2.25 2.25H5.25A2.25 2.25 0 0 1 3 18v-6c0-.98.626-1.813 1.5-2.122\\"/>"},"rocket-launch-solid":{"width":24,"height":24,"body":"<g fill=\\"currentColor\\"><path fill-rule=\\"evenodd\\" d=\\"M9.315 7.584A15.72 15.72 0 0 1 21.75 1.5a.75.75 0 0 1 .75.75c0 5.056-2.383 9.555-6.084 12.436q.083.52.084 1.064a6.75 6.75 0 0 1-6.75 6.75a.75.75 0 0 1-.75-.75v-4.131l-.027-.021A15.8 15.8 0 0 1 6.382 15H2.25a.75.75 0 0 1-.75-.75a6.75 6.75 0 0 1 7.815-6.666M15 6.75a2.25 2.25 0 1 0 0 4.5a2.25 2.25 0 0 0 0-4.5\\" clip-rule=\\"evenodd\\"/><path d=\\"M5.26 17.242a.75.75 0 1 0-.897-1.203a5.24 5.24 0 0 0-2.05 5.022a.75.75 0 0 0 .625.627q.398.061.812.062a5.24 5.24 0 0 0 4.21-2.113a.75.75 0 1 0-1.202-.897a3.74 3.74 0 0 1-3.008 1.51c0-1.23.592-2.323 1.51-3.008\\"/></g>"},"scale-solid":{"width":24,"height":24,"body":"<path fill=\\"currentColor\\" fill-rule=\\"evenodd\\" d=\\"M12 2.25a.75.75 0 0 1 .75.75v.756a49 49 0 0 1 9.152 1a.75.75 0 0 1-.152 1.485h-1.918l2.474 10.124a.75.75 0 0 1-.375.84A6.7 6.7 0 0 1 18.75 18a6.7 6.7 0 0 1-3.181-.795a.75.75 0 0 1-.375-.84l2.474-10.124H12.75v13.28c1.293.076 2.534.343 3.697.776a.75.75 0 0 1-.262 1.453h-8.37a.75.75 0 0 1-.262-1.453c1.162-.433 2.404-.7 3.697-.775V6.24H6.332l2.474 10.124a.75.75 0 0 1-.375.84A6.7 6.7 0 0 1 5.25 18a6.7 6.7 0 0 1-3.181-.795a.75.75 0 0 1-.375-.84L4.168 6.241H2.25a.75.75 0 0 1-.152-1.485a49 49 0 0 1 9.152-1V3a.75.75 0 0 1 .75-.75m4.878 13.543l1.872-7.662l1.872 7.662zm-9.756 0L5.25 8.131l-1.872 7.662z\\" clip-rule=\\"evenodd\\"/>"},"server-stack":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M5.25 14.25h13.5m-13.5 0a3 3 0 0 1-3-3m3 3a3 3 0 1 0 0 6h13.5a3 3 0 1 0 0-6m-16.5-3a3 3 0 0 1 3-3h13.5a3 3 0 0 1 3 3m-19.5 0a4.5 4.5 0 0 1 .9-2.7L5.738 5.1a3.38 3.38 0 0 1 2.7-1.35h7.124c1.063 0 2.063.5 2.7 1.35l2.588 3.45a4.5 4.5 0 0 1 .9 2.7m0 0a3 3 0 0 1-3 3m0 3h.008v.008h-.008zm0-6h.008v.008h-.008zm-3 6h.008v.008h-.008zm0-6h.008v.008h-.008z\\"/>"},"shield-check":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M9 12.75L11.25 15L15 9.75m-3-7.036A11.96 11.96 0 0 1 3.598 6A12 12 0 0 0 3 9.749c0 5.592 3.824 10.29 9 11.623c5.176-1.332 9-6.03 9-11.622c0-1.31-.21-2.571-.598-3.751h-.152c-3.196 0-6.1-1.248-8.25-3.285\\"/>"},"signal":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M9.348 14.652a3.75 3.75 0 0 1 0-5.304m5.304 0a3.75 3.75 0 0 1 0 5.304m-7.425 2.121a6.75 6.75 0 0 1 0-9.546m9.546 0a6.75 6.75 0 0 1 0 9.546M5.106 18.894c-3.808-3.807-3.808-9.98 0-13.788m13.788 0c3.808 3.807 3.808 9.98 0 13.788M12 12h.008v.008H12zm.375 0a.375.375 0 1 1-.75 0a.375.375 0 0 1 .75 0\\"/>"},"sparkles":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M9.813 15.904L9 18.75l-.813-2.846a4.5 4.5 0 0 0-3.09-3.09L2.25 12l2.846-.813a4.5 4.5 0 0 0 3.09-3.09L9 5.25l.813 2.846a4.5 4.5 0 0 0 3.09 3.09L15.75 12l-2.846.813a4.5 4.5 0 0 0-3.09 3.09m8.445-7.188L18 9.75l-.259-1.035a3.38 3.38 0 0 0-2.455-2.456L14.25 6l1.036-.259a3.38 3.38 0 0 0 2.455-2.456L18 2.25l.259 1.035a3.38 3.38 0 0 0 2.456 2.456L21.75 6l-1.035.259a3.38 3.38 0 0 0-2.456 2.456m-1.365 11.852L16.5 21.75l-.394-1.183a2.25 2.25 0 0 0-1.423-1.423L13.5 18.75l1.183-.394a2.25 2.25 0 0 0 1.423-1.423l.394-1.183l.394 1.183a2.25 2.25 0 0 0 1.423 1.423l1.183.394l-1.183.394a2.25 2.25 0 0 0-1.423 1.423\\"/>"},"sparkles-solid":{"width":24,"height":24,"body":"<path fill=\\"currentColor\\" fill-rule=\\"evenodd\\" d=\\"M9 4.5a.75.75 0 0 1 .721.544l.813 2.846a3.75 3.75 0 0 0 2.576 2.576l2.846.813a.75.75 0 0 1 0 1.442l-2.846.813a3.75 3.75 0 0 0-2.576 2.576l-.813 2.846a.75.75 0 0 1-1.442 0l-.813-2.846a3.75 3.75 0 0 0-2.576-2.576l-2.846-.813a.75.75 0 0 1 0-1.442l2.846-.813A3.75 3.75 0 0 0 7.466 7.89l.813-2.846A.75.75 0 0 1 9 4.5m9-3a.75.75 0 0 1 .728.568l.258 1.036a2.63 2.63 0 0 0 1.91 1.91l1.036.258a.75.75 0 0 1 0 1.456l-1.036.258a2.63 2.63 0 0 0-1.91 1.91l-.258 1.036a.75.75 0 0 1-1.456 0l-.258-1.036a2.63 2.63 0 0 0-1.91-1.91l-1.036-.258a.75.75 0 0 1 0-1.456l1.036-.258a2.63 2.63 0 0 0 1.91-1.91l.258-1.036A.75.75 0 0 1 18 1.5M16.5 15a.75.75 0 0 1 .712.513l.394 1.183c.15.447.5.799.948.948l1.183.395a.75.75 0 0 1 0 1.422l-1.183.395a1.5 1.5 0 0 0-.948.948l-.395 1.183a.75.75 0 0 1-1.422 0l-.395-1.183a1.5 1.5 0 0 0-.948-.948l-1.183-.395a.75.75 0 0 1 0-1.422l1.183-.395a1.5 1.5 0 0 0 .948-.948l.395-1.183A.75.75 0 0 1 16.5 15\\" clip-rule=\\"evenodd\\"/>"},"squares-2x2":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M3.75 6A2.25 2.25 0 0 1 6 3.75h2.25A2.25 2.25 0 0 1 10.5 6v2.25a2.25 2.25 0 0 1-2.25 2.25H6a2.25 2.25 0 0 1-2.25-2.25zm0 9.75A2.25 2.25 0 0 1 6 13.5h2.25a2.25 2.25 0 0 1 2.25 2.25V18a2.25 2.25 0 0 1-2.25 2.25H6A2.25 2.25 0 0 1 3.75 18zM13.5 6a2.25 2.25 0 0 1 2.25-2.25H18A2.25 2.25 0 0 1 20.25 6v2.25A2.25 2.25 0 0 1 18 10.5h-2.25a2.25 2.25 0 0 1-2.25-2.25zm0 9.75a2.25 2.25 0 0 1 2.25-2.25H18a2.25 2.25 0 0 1 2.25 2.25V18A2.25 2.25 0 0 1 18 20.25h-2.25A2.25 2.25 0 0 1 13.5 18z\\"/>"},"star":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M11.48 3.499a.562.562 0 0 1 1.04 0l2.125 5.111a.56.56 0 0 0 .475.345l5.518.442c.499.04.701.663.321.988l-4.204 3.602a.56.56 0 0 0-.182.557l1.285 5.385a.562.562 0 0 1-.84.61l-4.725-2.885a.56.56 0 0 0-.586 0L6.982 20.54a.562.562 0 0 1-.84-.61l1.285-5.386a.56.56 0 0 0-.182-.557l-4.204-3.602a.562.562 0 0 1 .321-.988l5.518-.442a.56.56 0 0 0 .475-.345z\\"/>"},"star-solid":{"width":24,"height":24,"body":"<path fill=\\"currentColor\\" fill-rule=\\"evenodd\\" d=\\"M10.788 3.21c.448-1.077 1.976-1.077 2.424 0l2.082 5.006l5.404.434c1.164.093 1.636 1.545.749 2.305l-4.117 3.527l1.257 5.273c.271 1.136-.964 2.033-1.96 1.425L12 18.354L7.373 21.18c-.996.608-2.231-.29-1.96-1.425l1.257-5.273l-4.117-3.527c-.887-.76-.415-2.212.749-2.305l5.404-.434z\\" clip-rule=\\"evenodd\\"/>"},"stop":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M5.25 7.5A2.25 2.25 0 0 1 7.5 5.25h9a2.25 2.25 0 0 1 2.25 2.25v9a2.25 2.25 0 0 1-2.25 2.25h-9a2.25 2.25 0 0 1-2.25-2.25z\\"/>"},"stop-16-solid":{"width":16,"height":16,"body":"<rect width=\\"10\\" height=\\"10\\" x=\\"3\\" y=\\"3\\" fill=\\"currentColor\\" rx=\\"1.5\\"/>"},"stop-circle":{"width":24,"height":24,"body":"<g fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\"><path d=\\"M21 12a9 9 0 1 1-18 0a9 9 0 0 1 18 0\\"/><path d=\\"M9 9.563C9 9.252 9.252 9 9.563 9h4.874c.311 0 .563.252.563.563v4.874a.563.563 0 0 1-.562.563H9.561A.56.56 0 0 1 9 14.438z\\"/></g>"},"sun":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M12 3v2.25m6.364.386l-1.591 1.591M21 12h-2.25m-.386 6.364l-1.591-1.591M12 18.75V21m-4.773-4.227l-1.591 1.591M5.25 12H3m4.227-4.773L5.636 5.636M15.75 12a3.75 3.75 0 1 1-7.5 0a3.75 3.75 0 0 1 7.5 0\\"/>"},"sun-solid":{"width":24,"height":24,"body":"<path fill=\\"currentColor\\" d=\\"M12 2.25a.75.75 0 0 1 .75.75v2.25a.75.75 0 0 1-1.5 0V3a.75.75 0 0 1 .75-.75M7.5 12a4.5 4.5 0 1 1 9 0a4.5 4.5 0 0 1-9 0m11.394-5.834a.75.75 0 0 0-1.06-1.06l-1.591 1.59a.75.75 0 1 0 1.06 1.061zM21.75 12a.75.75 0 0 1-.75.75h-2.25a.75.75 0 0 1 0-1.5H21a.75.75 0 0 1 .75.75m-3.916 6.894a.75.75 0 0 0 1.06-1.06l-1.59-1.591a.75.75 0 1 0-1.061 1.06zM12 18a.75.75 0 0 1 .75.75V21a.75.75 0 0 1-1.5 0v-2.25A.75.75 0 0 1 12 18m-4.242-.697a.75.75 0 0 0-1.061-1.06l-1.591 1.59a.75.75 0 0 0 1.06 1.061zM6 12a.75.75 0 0 1-.75.75H3a.75.75 0 0 1 0-1.5h2.25A.75.75 0 0 1 6 12m.697-4.243a.75.75 0 0 0 1.06-1.06l-1.59-1.591a.75.75 0 0 0-1.061 1.06z\\"/>"},"table-cells":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M3.375 19.5h17.25m-17.25 0a1.125 1.125 0 0 1-1.125-1.125M3.375 19.5h7.5c.621 0 1.125-.504 1.125-1.125m-9.75 0V5.625m0 12.75v-1.5c0-.621.504-1.125 1.125-1.125m18.375 2.625V5.625m0 12.75c0 .621-.504 1.125-1.125 1.125m1.125-1.125v-1.5c0-.621-.504-1.125-1.125-1.125m0 3.75h-7.5A1.125 1.125 0 0 1 12 18.375m9.75-12.75c0-.621-.504-1.125-1.125-1.125H3.375c-.621 0-1.125.504-1.125 1.125m19.5 0v1.5c0 .621-.504 1.125-1.125 1.125M2.25 5.625v1.5c0 .621.504 1.125 1.125 1.125m0 0h17.25m-17.25 0h7.5c.621 0 1.125.504 1.125 1.125M3.375 8.25c-.621 0-1.125.504-1.125 1.125v1.5c0 .621.504 1.125 1.125 1.125m17.25-3.75h-7.5c-.621 0-1.125.504-1.125 1.125m8.625-1.125c.621 0 1.125.504 1.125 1.125v1.5c0 .621-.504 1.125-1.125 1.125m-17.25 0h7.5m-7.5 0c-.621 0-1.125.504-1.125 1.125v1.5c0 .621.504 1.125 1.125 1.125M12 10.875v-1.5m0 1.5c0 .621-.504 1.125-1.125 1.125M12 10.875c0 .621.504 1.125 1.125 1.125m-2.25 0c.621 0 1.125.504 1.125 1.125M13.125 12h7.5m-7.5 0c-.621 0-1.125.504-1.125 1.125M20.625 12c.621 0 1.125.504 1.125 1.125v1.5c0 .621-.504 1.125-1.125 1.125m-17.25 0h7.5M12 14.625v-1.5m0 1.5c0 .621-.504 1.125-1.125 1.125M12 14.625c0 .621.504 1.125 1.125 1.125m-2.25 0c.621 0 1.125.504 1.125 1.125m0 1.5v-1.5m0 0c0-.621.504-1.125 1.125-1.125m0 0h7.5\\"/>"},"tag":{"width":24,"height":24,"body":"<g fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\"><path d=\\"M9.568 3H5.25A2.25 2.25 0 0 0 3 5.25v4.318c0 .597.237 1.17.659 1.591l9.581 9.581c.699.699 1.78.872 2.607.33a18.1 18.1 0 0 0 5.224-5.223c.54-.827.368-1.908-.33-2.607l-9.583-9.58A2.25 2.25 0 0 0 9.568 3\\"/><path d=\\"M6 6h.008v.008H6z\\"/></g>"},"trash":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"m14.74 9l-.346 9m-4.788 0L9.26 9m9.968-3.21q.512.078 1.022.166m-1.022-.165L18.16 19.673a2.25 2.25 0 0 1-2.244 2.077H8.084a2.25 2.25 0 0 1-2.244-2.077L4.772 5.79m14.456 0a48 48 0 0 0-3.478-.397m-12 .562q.51-.088 1.022-.165m0 0a48 48 0 0 1 3.478-.397m7.5 0v-.916c0-1.18-.91-2.164-2.09-2.201a52 52 0 0 0-3.32 0c-1.18.037-2.09 1.022-2.09 2.201v.916m7.5 0a49 49 0 0 0-7.5 0\\"/>"},"trophy":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M16.5 18.75h-9m9 0a3 3 0 0 1 3 3h-15a3 3 0 0 1 3-3m9 0v-3.375c0-.621-.503-1.125-1.125-1.125h-.871M7.5 18.75v-3.375c0-.621.504-1.125 1.125-1.125h.872m5.007 0H9.497m5.007 0a7.45 7.45 0 0 1-.982-3.172M9.497 14.25a7.45 7.45 0 0 0 .981-3.172M5.25 4.236q-1.473.215-2.916.52A6 6 0 0 0 7.73 9.728M5.25 4.236V4.5c0 2.108.966 3.99 2.48 5.228M5.25 4.236V2.721C7.456 2.41 9.71 2.25 12 2.25s4.545.16 6.75.47v1.516M7.73 9.728a6.7 6.7 0 0 0 2.748 1.35m8.272-6.842V4.5c0 2.108-.966 3.99-2.48 5.228m2.48-5.492a46 46 0 0 1 2.916.52a6 6 0 0 1-5.395 4.972m0 0a6.7 6.7 0 0 1-2.749 1.35m0 0a6.8 6.8 0 0 1-3.044 0\\"/>"},"user":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M15.75 6a3.75 3.75 0 1 1-7.5 0a3.75 3.75 0 0 1 7.5 0M4.501 20.118a7.5 7.5 0 0 1 14.998 0A17.9 17.9 0 0 1 12 21.75c-2.676 0-5.216-.584-7.499-1.632\\"/>"},"user-circle":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M17.982 18.725A7.49 7.49 0 0 0 12 15.75a7.49 7.49 0 0 0-5.982 2.975m11.964 0a9 9 0 1 0-11.963 0m11.962 0A8.97 8.97 0 0 1 12 21a8.97 8.97 0 0 1-5.982-2.275M15 9.75a3 3 0 1 1-6 0a3 3 0 0 1 6 0\\"/>"},"user-group":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M18 18.72a9.1 9.1 0 0 0 3.741-.479q.01-.12.01-.241a3 3 0 0 0-4.692-2.478m.94 3.197l.001.031q0 .337-.037.666A11.94 11.94 0 0 1 12 21c-2.17 0-4.207-.576-5.963-1.584A6 6 0 0 1 6 18.719m12 0a5.97 5.97 0 0 0-.941-3.197m0 0A6 6 0 0 0 12 12.75a6 6 0 0 0-5.058 2.772m0 0a3 3 0 0 0-4.681 2.72a9 9 0 0 0 3.74.477m.94-3.197a5.97 5.97 0 0 0-.94 3.197M15 6.75a3 3 0 1 1-6 0a3 3 0 0 1 6 0m6 3a2.25 2.25 0 1 1-4.5 0a2.25 2.25 0 0 1 4.5 0m-13.5 0a2.25 2.25 0 1 1-4.5 0a2.25 2.25 0 0 1 4.5 0\\"/>"},"user-minus":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M22 10.5h-6m-2.25-4.125a3.375 3.375 0 1 1-6.75 0a3.375 3.375 0 0 1 6.75 0M4 19.235v-.11a6.375 6.375 0 0 1 12.75 0v.109A12.3 12.3 0 0 1 10.374 21C8.043 21 5.862 20.355 4 19.234\\"/>"},"user-plus":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M18 7.5v3m0 0v3m0-3h3m-3 0h-3m-2.25-4.125a3.375 3.375 0 1 1-6.75 0a3.375 3.375 0 0 1 6.75 0M3 19.235v-.11a6.375 6.375 0 0 1 12.75 0v.109A12.3 12.3 0 0 1 9.374 21C7.043 21 4.862 20.355 3 19.234\\"/>"},"users":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M15 19.128a9.4 9.4 0 0 0 2.625.372a9.3 9.3 0 0 0 4.121-.952q.004-.086.004-.173a4.125 4.125 0 0 0-7.536-2.32M15 19.128v-.003c0-1.113-.285-2.16-.786-3.07M15 19.128v.106A12.3 12.3 0 0 1 8.624 21c-2.331 0-4.512-.645-6.374-1.766l-.001-.109a6.375 6.375 0 0 1 11.964-3.07M12 6.375a3.375 3.375 0 1 1-6.75 0a3.375 3.375 0 0 1 6.75 0m8.25 2.25a2.625 2.625 0 1 1-5.25 0a2.625 2.625 0 0 1 5.25 0\\"/>"},"wrench-screwdriver":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M11.42 15.17L17.25 21A2.652 2.652 0 0 0 21 17.25l-5.877-5.877M11.42 15.17l2.496-3.03c.317-.384.74-.626 1.208-.766M11.42 15.17l-4.655 5.653a2.548 2.548 0 1 1-3.586-3.586l6.837-5.63m5.108-.233c.55-.164 1.163-.188 1.743-.14q.19.017.384.017a4.5 4.5 0 0 0 4.102-6.352l-3.276 3.276a3 3 0 0 1-2.25-2.25l3.276-3.276a4.5 4.5 0 0 0-6.336 4.486c.091 1.076-.071 2.264-.904 2.95l-.102.085m-1.745 1.437L5.909 7.5H4.5L2.25 3.75l1.5-1.5L7.5 4.5v1.409l4.26 4.26m-1.745 1.437l1.745-1.437m6.615 8.206L15.75 15.75M4.867 19.125h.008v.008h-.008z\\"/>"},"x-circle":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"m9.75 9.75l4.5 4.5m0-4.5l-4.5 4.5M21 12a9 9 0 1 1-18 0a9 9 0 0 1 18 0\\"/>"},"x-mark":{"width":24,"height":24,"body":"<path fill=\\"none\\" stroke=\\"currentColor\\" stroke-linecap=\\"round\\" stroke-linejoin=\\"round\\" stroke-width=\\"1.5\\" d=\\"M6 18L18 6M6 6l12 12\\"/>"}}},{"prefix":"simple-icons","icons":{"cursor":{"width":24,"height":24,"body":"<path fill=\\"currentColor\\" d=\\"M11.503.131L1.891 5.678a.84.84 0 0 0-.42.726v11.188c0 .3.162.575.42.724l9.609 5.55a1 1 0 0 0 .998 0l9.61-5.55a.84.84 0 0 0 .42-.724V6.404a.84.84 0 0 0-.42-.726L12.497.131a1.01 1.01 0 0 0-.996 0M2.657 6.338h18.55c.263 0 .43.287.297.515L12.23 22.918c-.062.107-.229.064-.229-.06V12.335a.59.59 0 0 0-.295-.51l-9.11-5.257c-.109-.063-.064-.23.061-.23\\"/>"},"discord":{"width":24,"height":24,"body":"<path fill=\\"currentColor\\" d=\\"M20.317 4.37a19.8 19.8 0 0 0-4.885-1.515a.074.074 0 0 0-.079.037c-.21.375-.444.864-.608 1.25a18.3 18.3 0 0 0-5.487 0a13 13 0 0 0-.617-1.25a.08.08 0 0 0-.079-.037A19.7 19.7 0 0 0 3.677 4.37a.1.1 0 0 0-.032.027C.533 9.046-.32 13.58.099 18.057a.08.08 0 0 0 .031.057a19.9 19.9 0 0 0 5.993 3.03a.08.08 0 0 0 .084-.028a14 14 0 0 0 1.226-1.994a.076.076 0 0 0-.041-.106a13 13 0 0 1-1.872-.892a.077.077 0 0 1-.008-.128a10 10 0 0 0 .372-.292a.07.07 0 0 1 .077-.01c3.928 1.793 8.18 1.793 12.062 0a.07.07 0 0 1 .078.01q.181.149.373.292a.077.077 0 0 1-.006.127a12.3 12.3 0 0 1-1.873.892a.077.077 0 0 0-.041.107c.36.698.772 1.362 1.225 1.993a.08.08 0 0 0 .084.028a19.8 19.8 0 0 0 6.002-3.03a.08.08 0 0 0 .032-.054c.5-5.177-.838-9.674-3.549-13.66a.06.06 0 0 0-.031-.03M8.02 15.33c-1.182 0-2.157-1.085-2.157-2.419c0-1.333.956-2.419 2.157-2.419c1.21 0 2.176 1.096 2.157 2.42c0 1.333-.956 2.418-2.157 2.418m7.975 0c-1.183 0-2.157-1.085-2.157-2.419c0-1.333.955-2.419 2.157-2.419c1.21 0 2.176 1.096 2.157 2.42c0 1.333-.946 2.418-2.157 2.418\\"/>"},"github":{"width":24,"height":24,"body":"<path fill=\\"currentColor\\" d=\\"M12 .297c-6.63 0-12 5.373-12 12c0 5.303 3.438 9.8 8.205 11.385c.6.113.82-.258.82-.577c0-.285-.01-1.04-.015-2.04c-3.338.724-4.042-1.61-4.042-1.61C4.422 18.07 3.633 17.7 3.633 17.7c-1.087-.744.084-.729.084-.729c1.205.084 1.838 1.236 1.838 1.236c1.07 1.835 2.809 1.305 3.495.998c.108-.776.417-1.305.76-1.605c-2.665-.3-5.466-1.332-5.466-5.93c0-1.31.465-2.38 1.235-3.22c-.135-.303-.54-1.523.105-3.176c0 0 1.005-.322 3.3 1.23c.96-.267 1.98-.399 3-.405c1.02.006 2.04.138 3 .405c2.28-1.552 3.285-1.23 3.285-1.23c.645 1.653.24 2.873.12 3.176c.765.84 1.23 1.91 1.23 3.22c0 4.61-2.805 5.625-5.475 5.92c.42.36.81 1.096.81 2.22c0 1.606-.015 2.896-.015 3.286c0 .315.21.69.825.57C20.565 22.092 24 17.592 24 12.297c0-6.627-5.373-12-12-12\\"/>"},"instagram":{"width":24,"height":24,"body":"<path fill=\\"currentColor\\" d=\\"M7.03.084c-1.277.06-2.149.264-2.91.563a5.9 5.9 0 0 0-2.124 1.388a5.9 5.9 0 0 0-1.38 2.127C.321 4.926.12 5.8.064 7.076s-.069 1.688-.063 4.947s.021 3.667.083 4.947c.061 1.277.264 2.149.563 2.911c.308.789.72 1.457 1.388 2.123a5.9 5.9 0 0 0 2.129 1.38c.763.295 1.636.496 2.913.552c1.278.056 1.689.069 4.947.063s3.668-.021 4.947-.082c1.28-.06 2.147-.265 2.91-.563a5.9 5.9 0 0 0 2.123-1.388a5.9 5.9 0 0 0 1.38-2.129c.295-.763.496-1.636.551-2.912c.056-1.28.07-1.69.063-4.948c-.006-3.258-.02-3.667-.081-4.947c-.06-1.28-.264-2.148-.564-2.911a5.9 5.9 0 0 0-1.387-2.123a5.9 5.9 0 0 0-2.128-1.38c-.764-.294-1.636-.496-2.914-.55C15.647.009 15.236-.006 11.977 0S8.31.021 7.03.084m.14 21.693c-1.17-.05-1.805-.245-2.228-.408a3.7 3.7 0 0 1-1.382-.895a3.7 3.7 0 0 1-.9-1.378c-.165-.423-.363-1.058-.417-2.228c-.06-1.264-.072-1.644-.08-4.848c-.006-3.204.006-3.583.061-4.848c.05-1.169.246-1.805.408-2.228c.216-.561.477-.96.895-1.382a3.7 3.7 0 0 1 1.379-.9c.423-.165 1.057-.361 2.227-.417c1.265-.06 1.644-.072 4.848-.08c3.203-.006 3.583.006 4.85.062c1.168.05 1.804.244 2.227.408c.56.216.96.475 1.382.895s.681.817.9 1.378c.165.422.362 1.056.417 2.227c.06 1.265.074 1.645.08 4.848c.005 3.203-.006 3.583-.061 4.848c-.051 1.17-.245 1.805-.408 2.23c-.216.56-.477.96-.896 1.38a3.7 3.7 0 0 1-1.378.9c-.422.165-1.058.362-2.226.418c-1.266.06-1.645.072-4.85.079s-3.582-.006-4.848-.06m9.783-16.192a1.44 1.44 0 1 0 1.437-1.442a1.44 1.44 0 0 0-1.437 1.442M5.839 12.012a6.161 6.161 0 1 0 12.323-.024a6.162 6.162 0 0 0-12.323.024M8 12.008A4 4 0 1 1 12.008 16A4 4 0 0 1 8 12.008\\"/>"},"line":{"width":24,"height":24,"body":"<path fill=\\"currentColor\\" d=\\"M19.365 9.863a.631.631 0 0 1 0 1.261H17.61v1.125h1.755a.63.63 0 1 1 0 1.259h-2.386a.63.63 0 0 1-.627-.629V8.108c0-.345.282-.63.63-.63h2.386a.63.63 0 0 1-.003 1.26H17.61v1.125zm-3.855 3.016a.63.63 0 0 1-.631.627a.62.62 0 0 1-.51-.25l-2.443-3.317v2.94a.63.63 0 0 1-1.257 0V8.108a.627.627 0 0 1 .624-.628c.195 0 .375.104.495.254l2.462 3.33V8.108c0-.345.282-.63.63-.63c.345 0 .63.285.63.63zm-5.741 0a.63.63 0 0 1-.631.629a.63.63 0 0 1-.627-.629V8.108c0-.345.282-.63.63-.63c.346 0 .628.285.628.63zm-2.466.629H4.917a.634.634 0 0 1-.63-.629V8.108c0-.345.285-.63.63-.63c.348 0 .63.285.63.63v4.141h1.756a.63.63 0 0 1 0 1.259M24 10.314C24 4.943 18.615.572 12 .572S0 4.943 0 10.314c0 4.811 4.27 8.842 10.035 9.608c.391.082.923.258 1.058.59c.12.301.079.766.038 1.08l-.164 1.02c-.045.301-.24 1.186 1.049.645c1.291-.539 6.916-4.078 9.436-6.975C23.176 14.393 24 12.458 24 10.314\\"/>"},"telegram":{"width":24,"height":24,"body":"<path fill=\\"currentColor\\" d=\\"M11.944 0A12 12 0 0 0 0 12a12 12 0 0 0 12 12a12 12 0 0 0 12-12A12 12 0 0 0 12 0zm4.962 7.224c.1-.002.321.023.465.14a.5.5 0 0 1 .171.325c.016.093.036.306.02.472c-.18 1.898-.962 6.502-1.36 8.627c-.168.9-.499 1.201-.82 1.23c-.696.065-1.225-.46-1.9-.902c-1.056-.693-1.653-1.124-2.678-1.8c-1.185-.78-.417-1.21.258-1.91c.177-.184 3.247-2.977 3.307-3.23c.007-.032.014-.15-.056-.212s-.174-.041-.249-.024q-.159.037-5.061 3.345q-.72.495-1.302.48c-.428-.008-1.252-.241-1.865-.44c-.752-.245-1.349-.374-1.297-.789q.04-.324.893-.663q5.247-2.286 6.998-3.014c3.332-1.386 4.025-1.627 4.476-1.635\\"/>"},"tencentqq":{"width":24,"height":24,"body":"<path fill=\\"currentColor\\" d=\\"M21.395 15.035a40 40 0 0 0-.803-2.264l-1.079-2.695c.001-.032.014-.562.014-.836C19.526 4.632 17.351 0 12 0S4.474 4.632 4.474 9.241c0 .274.013.804.014.836l-1.08 2.695a39 39 0 0 0-.802 2.264c-1.021 3.283-.69 4.643-.438 4.673c.54.065 2.103-2.472 2.103-2.472c0 1.469.756 3.387 2.394 4.771c-.612.188-1.363.479-1.845.835c-.434.32-.379.646-.301.778c.343.578 5.883.369 7.482.189c1.6.18 7.14.389 7.483-.189c.078-.132.132-.458-.301-.778c-.483-.356-1.233-.646-1.846-.836c1.637-1.384 2.393-3.302 2.393-4.771c0 0 1.563 2.537 2.103 2.472c.251-.03.581-1.39-.438-4.673\\"/>"},"wechat":{"width":24,"height":24,"body":"<path fill=\\"currentColor\\" d=\\"M8.691 2.188C3.891 2.188 0 5.476 0 9.53c0 2.212 1.17 4.203 3.002 5.55a.59.59 0 0 1 .213.665l-.39 1.48c-.019.07-.048.141-.048.213c0 .163.13.295.29.295a.33.33 0 0 0 .167-.054l1.903-1.114a.86.86 0 0 1 .717-.098a10.2 10.2 0 0 0 2.837.403c.276 0 .543-.027.811-.05c-.857-2.578.157-4.972 1.932-6.446c1.703-1.415 3.882-1.98 5.853-1.838c-.576-3.583-4.196-6.348-8.596-6.348M5.785 5.991c.642 0 1.162.529 1.162 1.18a1.17 1.17 0 0 1-1.162 1.178A1.17 1.17 0 0 1 4.623 7.17c0-.651.52-1.18 1.162-1.18zm5.813 0c.642 0 1.162.529 1.162 1.18a1.17 1.17 0 0 1-1.162 1.178a1.17 1.17 0 0 1-1.162-1.178c0-.651.52-1.18 1.162-1.18m5.34 2.867c-1.797-.052-3.746.512-5.28 1.786c-1.72 1.428-2.687 3.72-1.78 6.22c.942 2.453 3.666 4.229 6.884 4.229c.826 0 1.622-.12 2.361-.336a.72.72 0 0 1 .598.082l1.584.926a.3.3 0 0 0 .14.047c.134 0 .24-.111.24-.247c0-.06-.023-.12-.038-.177l-.327-1.233a.6.6 0 0 1-.023-.156a.49.49 0 0 1 .201-.398C23.024 18.48 24 16.82 24 14.98c0-3.21-2.931-5.837-6.656-6.088V8.89c-.135-.01-.27-.027-.407-.03zm-2.53 3.274c.535 0 .969.44.969.982a.976.976 0 0 1-.969.983a.976.976 0 0 1-.969-.983c0-.542.434-.982.97-.982zm4.844 0c.535 0 .969.44.969.982a.976.976 0 0 1-.969.983a.976.976 0 0 1-.969-.983c0-.542.434-.982.969-.982\\"/>"},"whatsapp":{"width":24,"height":24,"body":"<path fill=\\"currentColor\\" d=\\"M17.472 14.382c-.297-.149-1.758-.867-2.03-.967c-.273-.099-.471-.148-.67.15c-.197.297-.767.966-.94 1.164c-.173.199-.347.223-.644.075c-.297-.15-1.255-.463-2.39-1.475c-.883-.788-1.48-1.761-1.653-2.059c-.173-.297-.018-.458.13-.606c.134-.133.298-.347.446-.52s.198-.298.298-.497c.099-.198.05-.371-.025-.52s-.669-1.612-.916-2.207c-.242-.579-.487-.5-.669-.51a13 13 0 0 0-.57-.01c-.198 0-.52.074-.792.372c-.272.297-1.04 1.016-1.04 2.479c0 1.462 1.065 2.875 1.213 3.074s2.096 3.2 5.077 4.487c.709.306 1.262.489 1.694.625c.712.227 1.36.195 1.871.118c.571-.085 1.758-.719 2.006-1.413s.248-1.289.173-1.413c-.074-.124-.272-.198-.57-.347m-5.421 7.403h-.004a9.87 9.87 0 0 1-5.031-1.378l-.361-.214l-3.741.982l.998-3.648l-.235-.374a9.86 9.86 0 0 1-1.51-5.26c.001-5.45 4.436-9.884 9.888-9.884c2.64 0 5.122 1.03 6.988 2.898a9.82 9.82 0 0 1 2.893 6.994c-.003 5.45-4.437 9.884-9.885 9.884m8.413-18.297A11.82 11.82 0 0 0 12.05 0C5.495 0 .16 5.335.157 11.892c0 2.096.547 4.142 1.588 5.945L.057 24l6.305-1.654a11.9 11.9 0 0 0 5.683 1.448h.005c6.554 0 11.89-5.335 11.893-11.893a11.82 11.82 0 0 0-3.48-8.413\\"/>"},"windsurf":{"width":24,"height":24,"body":"<path fill=\\"currentColor\\" d=\\"M23.55 5.067a2.177 2.177 0 0 0-2.18 2.177v4.867a1.77 1.77 0 0 1-1.76 1.76a1.82 1.82 0 0 1-1.472-.766l-4.971-7.1a2.2 2.2 0 0 0-1.81-.942c-1.134 0-2.154.964-2.154 2.153v4.896c0 .972-.797 1.76-1.76 1.76c-.57 0-1.136-.287-1.472-.766L.408 5.16A.224.224 0 0 0 0 5.288v4.245c0 .215.066.423.188.6l5.475 7.818c.324.462.8.805 1.351.93a2.164 2.164 0 0 0 2.645-2.098V11.89c0-.972.787-1.76 1.76-1.76h.002a1.8 1.8 0 0 1 1.472.766l4.972 7.1a2.172 2.172 0 0 0 3.96-1.212v-4.895a1.76 1.76 0 0 1 1.76-1.76h.195a.22.22 0 0 0 .22-.22V5.287a.22.22 0 0 0-.22-.22Z\\"/>"}}}]');for(const n of t)for(const[a,r]of Object.entries(n.icons))e(n.prefix?n.prefix+":"+a:a,r);am=!0}s3(O0);let j0;const qc=e=>j0=e,W0=Symbol();function $d(e){return e&&typeof e=="object"&&Object.prototype.toString.call(e)==="[object Object]"&&typeof e.toJSON!="function"}var zs;(function(e){e.direct="direct",e.patchObject="patch object",e.patchFunction="patch function"})(zs||(zs={}));function i3(){const e=_i(!0),t=e.run(()=>V({}));let n=[],a=[];const r=ki({install(o){qc(r),r._a=o,o.provide(W0,r),o.config.globalProperties.$pinia=r,a.forEach(s=>n.push(s)),a=[]},use(o){return this._a?n.push(o):a.push(o),this},_p:n,_a:null,_e:e,_s:new Map,state:t});return r}const U0=()=>{};function rm(e,t,n,a=U0){e.add(t);const r=()=>{e.delete(t)&&a()};return!n&&es()&&ts(r),r}function fo(e,...t){e.forEach(n=>{n(...t)})}const l3=e=>e(),om=Symbol(),Du=Symbol();function Rd(e,t){e instanceof Map&&t instanceof Map?t.forEach((n,a)=>e.set(a,n)):e instanceof Set&&t instanceof Set&&t.forEach(e.add,e);for(const n in t){if(!t.hasOwnProperty(n))continue;const a=t[n],r=e[n];$d(r)&&$d(a)&&e.hasOwnProperty(n)&&!et(a)&&!oa(a)?e[n]=Rd(r,a):e[n]=a}return e}const c3=Symbol();function u3(e){return!$d(e)||!Object.prototype.hasOwnProperty.call(e,c3)}const{assign:or}=Object;function d3(e){return!!(et(e)&&e.effect)}function f3(e,t,n,a){const{state:r,actions:o,getters:s}=t,i=n.state.value[e];let l;function c(){i||(n.state.value[e]=r?r():{});const u=kt(n.state.value[e]);return or(u,o,Object.keys(s||{}).reduce((d,h)=>(d[h]=ki(S(()=>{qc(n);const p=n._s.get(e);return s[h].call(p,p)})),d),{}))}return l=G0(e,c,t,n,a,!0),l}function G0(e,t,n={},a,r,o){let s;const i=or({actions:{}},n),l={deep:!0};let c,u,d=new Set,h=new Set,p;const m=a.state.value[e];!o&&!m&&(a.state.value[e]={});let v;function y(T){let I;c=u=!1,typeof T=="function"?(T(a.state.value[e]),I={type:zs.patchFunction,storeId:e,events:p}):(Rd(a.state.value[e],T),I={type:zs.patchObject,payload:T,storeId:e,events:p});const Y=v=Symbol();Ve().then(()=>{v===Y&&(c=!0)}),u=!0,fo(d,I,a.state.value[e])}const g=o?function(){const{state:I}=n,Y=I?I():{};this.$patch(Q=>{or(Q,Y)})}:U0;function b(){s.stop(),d.clear(),h.clear(),a._s.delete(e)}const w=(T,I="")=>{if(om in T)return T[Du]=I,T;const Y=function(){qc(a);const Q=Array.from(arguments),z=new Set,te=new Set;function O(G){z.add(G)}function D(G){te.add(G)}fo(h,{args:Q,name:Y[Du],store:A,after:O,onError:D});let q;try{q=T.apply(this&&this.$id===e?this:A,Q)}catch(G){throw fo(te,G),G}return q instanceof Promise?q.then(G=>(fo(z,G),G)).catch(G=>(fo(te,G),Promise.reject(G))):(fo(z,q),q)};return Y[om]=!0,Y[Du]=I,Y},_={_p:a,$id:e,$onAction:rm.bind(null,h),$patch:y,$reset:g,$subscribe(T,I={}){const Y=rm(d,T,I.detached,()=>Q()),Q=s.run(()=>Se(()=>a.state.value[e],z=>{(I.flush==="sync"?u:c)&&T({storeId:e,type:zs.direct,events:p},z)},or({},l,I)));return Y},$dispose:b},A=Rn(_);a._s.set(e,A);const k=(a._a&&a._a.runWithContext||l3)(()=>a._e.run(()=>(s=_i()).run(()=>t({action:w}))));for(const T in k){const I=k[T];if(et(I)&&!d3(I)||oa(I))o||(m&&u3(I)&&(et(I)?I.value=m[T]:Rd(I,m[T])),a.state.value[e][T]=I);else if(typeof I=="function"){const Y=w(I,T);k[T]=Y,i.actions[T]=I}}return or(A,k),or(Ze(A),k),Object.defineProperty(A,"$state",{get:()=>a.state.value[e],set:T=>{y(I=>{or(I,T)})}}),a._p.forEach(T=>{or(A,s.run(()=>T({store:A,app:a._a,pinia:a,options:i})))}),m&&o&&n.hydrate&&n.hydrate(A.$state,m),c=!0,u=!0,A}function as(e,t,n){let a;const r=typeof t=="function";a=r?n:t;function o(s,i){const l=ns();return s=s||(l?rt(W0,null):null),s&&qc(s),s=j0,s._s.has(e)||(r?G0(e,t,a,s):f3(e,a,s)),s._s.get(e)}return o.$id=e,o}function ai(e){const t=Ze(e),n={};for(const a in t){const r=t[a];r.effect?n[a]=S({get:()=>e[a],set(o){e[a]=o}}):(et(r)||oa(r))&&(n[a]=It(e,a))}return n}function p3(e,t){if(e==null)return;let n=e;for(let a=0;a<t.length;a++){if(n===void 0||n[t[a]]===void 0)return;if(n===null||n[t[a]]===null)return null;n=n[t[a]]}return n}function Jf(e,t,n){if(n.length===0)return t;const a=n[0];return n.length>1&&(t=Jf(typeof e!="object"||e===null||!Object.prototype.hasOwnProperty.call(e,a)?Number.isInteger(Number(n[1]))?[]:{}:e[a],t,Array.prototype.slice.call(n,1))),Number.isInteger(Number(a))&&Array.isArray(e)?e.slice()[a]:Object.assign({},e,{[a]:t})}function Y0(e,t){if(e==null||t.length===0)return e;if(t.length===1){if(e==null)return e;if(Number.isInteger(t[0])&&Array.isArray(e))return Array.prototype.slice.call(e,0).splice(t[0],1);const n={};for(const a in e)n[a]=e[a];return delete n[t[0]],n}if(e[t[0]]==null){if(Number.isInteger(t[0])&&Array.isArray(e))return Array.prototype.concat.call([],e);const n={};for(const a in e)n[a]=e[a];return n}return Jf(e,Y0(e[t[0]],Array.prototype.slice.call(t,1)),[t[0]])}function K0(e,t){return t.map(n=>n.split(".")).map(n=>[n,p3(e,n)]).filter(n=>n[1]!==void 0).reduce((n,a)=>Jf(n,a[1],a[0]),{})}function X0(e,t){return t.map(n=>n.split(".")).reduce((n,a)=>Y0(n,a),e)}function sm(e,{storage:t,serializer:n,key:a,debug:r,pick:o,omit:s,beforeHydrate:i,afterHydrate:l},c,u=!0){try{u&&i?.(c);const d=t.getItem(a);if(d){const h=n.deserialize(d),p=o?K0(h,o):h,m=s?X0(p,s):p;e.$patch(m)}u&&l?.(c)}catch(d){r&&console.error("[pinia-plugin-persistedstate]",d)}}function im(e,{storage:t,serializer:n,key:a,debug:r,pick:o,omit:s}){try{const i=o?K0(e,o):e,l=s?X0(i,s):i,c=n.serialize(l);t.setItem(a,c)}catch(i){r&&console.error("[pinia-plugin-persistedstate]",i)}}function h3(e,t){return typeof e=="function"?e(t):typeof e=="string"?e:t}function m3(e,t,n){const{pinia:a,store:r,options:{persist:o=n}}=e;if(!o)return;if(!(r.$id in a.state.value)){const i=a._s.get(r.$id.replace("__hot:",""));i&&Promise.resolve().then(()=>i.$persist());return}const s=(Array.isArray(o)?o:o===!0?[{}]:[o]).map(t);r.$hydrate=({runHooks:i=!0}={})=>{s.forEach(l=>{sm(r,l,e,i)})},r.$persist=()=>{s.forEach(i=>{im(r.$state,i)})},s.forEach(i=>{sm(r,i,e),r.$subscribe((l,c)=>im(c,i),{detached:!0})})}function g3(e={}){return function(t){m3(t,n=>{const a=h3(n.key,t.store.$id);return{key:(e.key?e.key:r=>r)(a),debug:n.debug??e.debug??!1,serializer:n.serializer??e.serializer??{serialize:r=>JSON.stringify(r),deserialize:r=>JSON.parse(r)},storage:n.storage??e.storage??window.localStorage,beforeHydrate:n.beforeHydrate??e.beforeHydrate,afterHydrate:n.afterHydrate??e.afterHydrate,pick:n.pick,omit:n.omit}},e.auto??!1)}}var v3=g3();function Ld(e,t={},n){for(const a in e){const r=e[a],o=n?`${n}:${a}`:a;typeof r=="object"&&r!==null?Ld(r,t,o):typeof r=="function"&&(t[o]=r)}return t}const J0=(()=>{if(console.createTask)return console.createTask;const e={run:t=>t()};return()=>e})();function Q0(e,t,n,a){for(let r=n;r<e.length;r+=1)try{const o=a?a.run(()=>e[r](...t)):e[r](...t);if(o&&typeof o.then=="function")return Promise.resolve(o).then(()=>Q0(e,t,r+1,a))}catch(o){return Promise.reject(o)}}function y3(e,t,n){if(e.length>0)return Q0(e,t,0,J0(n))}function b3(e,t,n){if(e.length>0){const a=J0(n);return Promise.all(e.map(r=>a.run(()=>r(...t))))}}function Eu(e,t){for(const n of[...e])n(t)}var w3=class{_hooks;_before;_after;_deprecatedHooks;_deprecatedMessages;constructor(){this._hooks={},this._before=void 0,this._after=void 0,this._deprecatedMessages=void 0,this._deprecatedHooks={},this.hook=this.hook.bind(this),this.callHook=this.callHook.bind(this),this.callHookWith=this.callHookWith.bind(this)}hook(e,t,n={}){if(!e||typeof t!="function")return()=>{};const a=e;let r;for(;this._deprecatedHooks[e];)r=this._deprecatedHooks[e],e=r.to;if(r&&!n.allowDeprecated){let o=r.message;o||(o=`${a} hook has been deprecated`+(r.to?`, please use ${r.to}`:"")),this._deprecatedMessages||(this._deprecatedMessages=new Set),this._deprecatedMessages.has(o)||(console.warn(o),this._deprecatedMessages.add(o))}if(!t.name)try{Object.defineProperty(t,"name",{get:()=>"_"+e.replace(/\W+/g,"_")+"_hook_cb",configurable:!0})}catch{}return this._hooks[e]=this._hooks[e]||[],this._hooks[e].push(t),()=>{t&&(this.removeHook(e,t),t=void 0)}}hookOnce(e,t){let n,a=(...r)=>(typeof n=="function"&&n(),n=void 0,a=void 0,t(...r));return n=this.hook(e,a),n}removeHook(e,t){const n=this._hooks[e];if(n){const a=n.indexOf(t);a!==-1&&n.splice(a,1),n.length===0&&(this._hooks[e]=void 0)}}clearHook(e){this._hooks[e]=void 0}deprecateHook(e,t){this._deprecatedHooks[e]=typeof t=="string"?{to:t}:t;const n=this._hooks[e]||[];this._hooks[e]=void 0;for(const a of n)this.hook(e,a)}deprecateHooks(e){for(const t in e)this.deprecateHook(t,e[t])}addHooks(e){const t=Ld(e),n=Object.keys(t).map(a=>this.hook(a,t[a]));return()=>{for(const a of n)a();n.length=0}}removeHooks(e){const t=Ld(e);for(const n in t)this.removeHook(n,t[n])}removeAllHooks(){this._hooks={}}callHook(e,...t){return this.callHookWith(y3,e,t)}callHookParallel(e,...t){return this.callHookWith(b3,e,t)}callHookWith(e,t,n){const a=this._before||this._after?{name:t,args:n,context:{}}:void 0;this._before&&Eu(this._before,a);const r=e(this._hooks[t]?[...this._hooks[t]]:[],n,t);return r instanceof Promise?r.finally(()=>{this._after&&a&&Eu(this._after,a)}):(this._after&&a&&Eu(this._after,a),r)}beforeEach(e){return this._before=this._before||[],this._before.push(e),()=>{if(this._before!==void 0){const t=this._before.indexOf(e);t!==-1&&this._before.splice(t,1)}}}afterEach(e){return this._after=this._after||[],this._after.push(e),()=>{if(this._after!==void 0){const t=this._after.indexOf(e);t!==-1&&this._after.splice(t,1)}}}};function Z0(){return new w3}const _3=new Set(["link","style","script","noscript"]),k3=new Set(["title","titleTemplate","script","style","noscript"]),Od=new Set(["base","meta","link","style","script","noscript"]),C3=new Set(["title","base","htmlAttrs","bodyAttrs","meta","link","style","script","noscript"]),S3=new Set(["base","title","titleTemplate","bodyAttrs","htmlAttrs","templateParams"]),x3=new Set(["key","tagPosition","tagPriority","tagDuplicateStrategy","innerHTML","textContent","processTemplateParams"]),A3=new Set(["templateParams","htmlAttrs","bodyAttrs"]),P3=new Set(["theme-color","google-site-verification","og","article","book","profile","twitter","author"]),M3=["name","property","http-equiv"],T3=new Set(["viewport","description","keywords","robots"]);function e1(e){const t=e.split(":");return t.length?P3.has(t[1]):!1}function Nd(e){const{props:t,tag:n}=e;if(S3.has(n))return n;if(n==="link"&&t.rel==="canonical")return"canonical";if(n==="link"&&t.rel==="alternate"){if(t.hreflang)return`alternate:${t.hreflang}`;if(t.type)return`alternate:${t.type}:${t.href||""}`}if(t.charset)return"charset";if(e.tag==="meta"){for(const a of M3)if(t[a]!==void 0){const r=t[a],o=r&&typeof r=="string"&&r.includes(":"),s=r&&T3.has(r),l=!(o||s)&&e.key?`:key:${e.key}`:"";return`${n}:${r}${l}`}}if(e.key)return`${n}:key:${e.key}`;if(t.id)return`${n}:id:${t.id}`;if(n==="link"&&t.rel==="alternate")return`alternate:${t.href||""}`;if(k3.has(n)){const a=e.textContent||e.innerHTML;if(a)return`${n}:content:${a}`}}function t1(e){const t=e._h||e._d;if(t)return t;const n=e.textContent||e.innerHTML;return n||`${e.tag}:${Object.entries(e.props).map(([a,r])=>`${a}:${String(r)}`).join(",")}`}function Zl(e,t,n){typeof e==="function"&&(!n||n!=="titleTemplate"&&!(n[0]==="o"&&n[1]==="n"))&&(e=e());const r=t?t(n,e):e;if(Array.isArray(r))return r.map(o=>Zl(o,t));if(r?.constructor===Object){const o={};for(const s of Object.keys(r))o[s]=Zl(r[s],t,s);return o}return r}function I3(e,t){const n=e==="style"?new Map:new Set;function a(r){if(r==null||r===void 0)return;const o=String(r).trim();if(o)if(e==="style"){const[s,...i]=o.split(":").map(l=>l?l.trim():"");s&&i.length&&n.set(s,i.join(":"))}else o.split(" ").filter(Boolean).forEach(s=>n.add(s))}return typeof t=="string"?e==="style"?t.split(";").forEach(a):a(t):Array.isArray(t)?t.forEach(r=>a(r)):t&&typeof t=="object"&&Object.entries(t).forEach(([r,o])=>{o&&o!=="false"&&(e==="style"?n.set(String(r).trim(),String(o)):a(r))}),n}function n1(e,t){if(e.props=e.props||{},!t)return e;if(e.tag==="templateParams")return e.props=t,e;const n=Od.has(e.tag)||e.tag==="htmlAttrs"||e.tag==="bodyAttrs";return Object.entries(t).forEach(([a,r])=>{if(a==="__proto__"||a==="constructor"||a==="prototype")return;if(r===null){e.props[a]=null;return}if(a==="class"||a==="style"){e.props[a]=I3(a,r);return}if(x3.has(a)){if((a==="textContent"||a==="innerHTML")&&typeof r=="object"){let c=t.type;if(t.type||(c="application/json"),!c?.endsWith("json")&&c!=="speculationrules")return;t.type=c,e.props.type=c,e[a]=JSON.stringify(r)}else e[a]=r;return}const o=a.startsWith("data-"),s=n&&!o?a.toLowerCase():a,i=String(r),l=e.tag==="meta"&&s==="content";i==="true"||i===""?e.props[s]=o||l?i:!0:!r&&o&&i==="false"?e.props[s]="false":r!==void 0&&(e.props[s]=r)}),e}function D3(e,t){const n=typeof t=="object"&&typeof t!="function"?t:{[e==="script"||e==="noscript"||e==="style"?"innerHTML":"textContent"]:t},a=n1({tag:e,props:{}},n);return a.key&&_3.has(a.tag)&&(a.props["data-hid"]=a._h=a.key),a.tag==="script"&&typeof a.innerHTML=="object"&&(a.innerHTML=JSON.stringify(a.innerHTML),a.props.type=a.props.type||"application/json"),Array.isArray(a.props.content)?a.props.content.map(r=>({...a,props:{...a.props,content:r}})):a}function E3(e,t){if(!e)return[];typeof e=="function"&&(e=e());const n=(r,o)=>{for(let s=0;s<t.length;s++)o=t[s](r,o);return o};e=n(void 0,e);const a=[];return e=Zl(e,n),Object.entries(e||{}).forEach(([r,o])=>{if(o!==void 0)for(const s of Array.isArray(o)?o:[o])a.push(D3(r,s))}),a.flat()}const lm=(e,t)=>e._w===t._w?e._p-t._p:e._w-t._w,cm={base:-10,title:10},$3={critical:-8,high:-1,low:2},um={meta:{"content-security-policy":-30,charset:-20,viewport:-15},link:{preconnect:20,stylesheet:60,preload:70,modulepreload:70,prefetch:90,"dns-prefetch":90,prerender:90},script:{async:30,defer:80,sync:50},style:{imported:40,sync:60}},R3=/@import/,As=e=>e===""||e===!0;function L3(e,t){if(typeof t.tagPriority=="number")return t.tagPriority;let n=100;const a=$3[t.tagPriority]||0,r=e.resolvedOptions.disableCapoSorting?{link:{},script:{},style:{}}:um;if(t.tag in cm)n=cm[t.tag];else if(t.tag==="meta"){const o=t.props["http-equiv"]==="content-security-policy"?"content-security-policy":t.props.charset?"charset":t.props.name==="viewport"?"viewport":null;o&&(n=um.meta[o])}else if(t.tag==="link"&&t.props.rel)n=r.link[t.props.rel];else if(t.tag==="script"){const o=String(t.props.type);As(t.props.async)?n=r.script.async:t.props.src&&!As(t.props.defer)&&!As(t.props.async)&&o!=="module"&&!o.endsWith("json")||t.innerHTML&&!o.endsWith("json")?n=r.script.sync:(As(t.props.defer)&&t.props.src&&!As(t.props.async)||o==="module")&&(n=r.script.defer)}else t.tag==="style"&&(n=t.innerHTML&&R3.test(t.innerHTML)?r.style.imported:r.style.sync);return(n||100)+a}function dm(e,t){const n=typeof t=="function"?t(e):t,a=n.key||String(e.plugins.size+1);e.plugins.get(a)||(e.plugins.set(a,n),e.hooks.addHooks(n.hooks||{}))}function O3(e={}){const t=Z0();t.addHooks(e.hooks||{});const n=!e.document,a=new Map,r=new Map,o=new Set,s={_entryCount:1,plugins:r,dirty:!1,resolvedOptions:e,hooks:t,ssr:n,entries:a,headEntries(){return[...a.values()]},use:i=>dm(s,i),push(i,l){const c={...l||{}};delete c.head;const u=c._index??s._entryCount++,d={_i:u,input:i,options:c},h={_poll(p=!1){s.dirty=!0,!p&&o.add(u),t.callHook("entries:updated",s)},dispose(){a.delete(u)&&s.invalidate()},patch(p){(!c.mode||c.mode==="server"&&n||c.mode==="client"&&!n)&&(d.input=p,a.set(u,d),h._poll())}};return h.patch(i),h},async resolveTags(){const i={tagMap:new Map,tags:[],entries:[...s.entries.values()]};for(await t.callHook("entries:resolve",i);o.size;){const h=o.values().next().value;o.delete(h);const p=a.get(h);if(p){const m={tags:E3(p.input,e.propResolvers||[]).map(v=>Object.assign(v,p.options)),entry:p};await t.callHook("entries:normalize",m),p._tags=m.tags.map((v,y)=>(v._w=L3(s,v),v._p=(p._i<<10)+y,v._d=Nd(v),v._d||(v._h=t1(v)),v))}}let l=!1;i.entries.flatMap(h=>(h._tags||[]).map(p=>({...p,props:{...p.props}}))).sort(lm).reduce((h,p)=>{const m=p._d||p._h;if(!h.has(m))return h.set(m,p);const v=h.get(m);if((p?.tagDuplicateStrategy||(A3.has(p.tag)?"merge":null)||(p.key&&p.key===v.key?"merge":null))==="merge"){const g={...v.props};Object.entries(p.props).forEach(([b,w])=>g[b]=b==="style"?new Map([...v.props.style||new Map,...w]):b==="class"?new Set([...v.props.class||new Set,...w]):w),h.set(m,{...p,props:g})}else p._p>>10===v._p>>10&&p.tag==="meta"&&e1(m)?(h.set(m,Object.assign([...Array.isArray(v)?v:[v],p],p)),l=!0):(p._w===v._w?p._p>v._p:p?._w<v?._w)&&h.set(m,p);return h},i.tagMap);const c=i.tagMap.get("title"),u=i.tagMap.get("titleTemplate");if(s._title=c?.textContent,u){const h=u?.textContent;if(s._titleTemplate=h,h){let p=typeof h=="function"?h(c?.textContent):h;typeof p=="string"&&!s.plugins.has("template-params")&&(p=p.replace("%s",c?.textContent||"")),c?p===null?i.tagMap.delete("title"):i.tagMap.set("title",{...c,textContent:p}):(u.tag="title",u.textContent=p)}}i.tags=Array.from(i.tagMap.values()),l&&(i.tags=i.tags.flat().sort(lm)),await t.callHook("tags:beforeResolve",i),await t.callHook("tags:resolve",i),await t.callHook("tags:afterResolve",i);const d=[];for(const h of i.tags){const{innerHTML:p,tag:m,props:v}=h;if(C3.has(m)&&!(Object.keys(v).length===0&&!h.innerHTML&&!h.textContent)&&!(m==="meta"&&!v.content&&!v["http-equiv"]&&!v.charset)){if(m==="script"&&p){if(String(v.type).endsWith("json")){const y=typeof p=="string"?p:JSON.stringify(p);h.innerHTML=y.replace(/</g,"\\u003C")}else typeof p=="string"&&(h.innerHTML=p.replace(new RegExp(`</${m}`,"g"),`<\\/${m}`));h._d=Nd(h)}d.push(h)}}return d},invalidate(){for(const i of a.values())o.add(i._i);s.dirty=!0,t.callHook("entries:updated",s)}};return(e?.plugins||[]).forEach(i=>dm(s,i)),s.hooks.callHook("init",s),e.init?.forEach(i=>i&&s.push(i)),s}async function a1(e,t={}){const n=t.document||e.resolvedOptions.document;if(!n||!e.dirty)return;const a={shouldRender:!0,tags:[]};if(await e.hooks.callHook("dom:beforeRender",a),!!a.shouldRender)return e._domUpdatePromise||(e._domUpdatePromise=new Promise(async r=>{const o=new Map,s=new Promise(p=>{e.resolveTags().then(m=>{p(m.map(v=>{const y=o.get(v._d)||0,g={tag:v,id:(y?`${v._d}:${y}`:v._d)||v._h,shouldRender:!0};return v._d&&e1(v._d)&&o.set(v._d,y+1),g}))})});let i=e._dom;if(!i){i={title:n.title,elMap:new Map().set("htmlAttrs",n.documentElement).set("bodyAttrs",n.body)};for(const p of["body","head"]){const m=n[p]?.children;for(const v of m){const y=v.tagName.toLowerCase();if(!Od.has(y))continue;const g=n1({tag:y,props:{}},{innerHTML:v.innerHTML,...v.getAttributeNames().reduce((b,w)=>(b[w]=v.getAttribute(w),b),{})||{}});if(g.key=v.getAttribute("data-hid")||void 0,g._d=Nd(g)||t1(g),i.elMap.has(g._d)){let b=1,w=g._d;for(;i.elMap.has(w);)w=`${g._d}:${b++}`;i.elMap.set(w,v)}else i.elMap.set(g._d,v)}}}i.pendingSideEffects={...i.sideEffects},i.sideEffects={};function l(p,m,v){const y=`${p}:${m}`;i.sideEffects[y]=v,delete i.pendingSideEffects[y]}function c({id:p,$el:m,tag:v}){const y=v.tag.endsWith("Attrs");i.elMap.set(p,m),y||(v.textContent&&v.textContent!==m.textContent&&(m.textContent=v.textContent),v.innerHTML&&v.innerHTML!==m.innerHTML&&(m.innerHTML=v.innerHTML),l(p,"el",()=>{m?.remove(),i.elMap.delete(p)}));for(const g in v.props){if(!Object.prototype.hasOwnProperty.call(v.props,g))continue;const b=v.props[g];if(g.startsWith("on")&&typeof b=="function"){const _=m?.dataset;if(_&&_[`${g}fired`]){const A=g.slice(0,-5);b.call(m,new Event(A.substring(2)))}m.getAttribute(`data-${g}`)!==""&&((v.tag==="bodyAttrs"?n.defaultView:m).addEventListener(g.substring(2),b.bind(m)),m.setAttribute(`data-${g}`,""));continue}const w=`attr:${g}`;if(g==="class"){if(!b)continue;for(const _ of b)y&&l(p,`${w}:${_}`,()=>m.classList.remove(_)),!m.classList.contains(_)&&m.classList.add(_)}else if(g==="style"){if(!b)continue;for(const[_,A]of b)l(p,`${w}:${_}`,()=>{m.style.removeProperty(_)}),m.style.setProperty(_,A)}else b!==!1&&b!==null&&(m.getAttribute(g)!==b&&m.setAttribute(g,b===!0?"":String(b)),y&&l(p,w,()=>m.removeAttribute(g)))}}const u=[],d={bodyClose:void 0,bodyOpen:void 0,head:void 0},h=await s;for(const p of h){const{tag:m,shouldRender:v,id:y}=p;if(v){if(m.tag==="title"){n.title=m.textContent,l("title","",()=>n.title=i.title);continue}p.$el=p.$el||i.elMap.get(y),p.$el?c(p):Od.has(m.tag)&&u.push(p)}}for(const p of u){const m=p.tag.tagPosition||"head";p.$el=n.createElement(p.tag.tag),c(p),d[m]=d[m]||n.createDocumentFragment(),d[m].appendChild(p.$el)}for(const p of h)await e.hooks.callHook("dom:renderTag",p,n,l);d.head&&n.head.appendChild(d.head),d.bodyOpen&&n.body.insertBefore(d.bodyOpen,n.body.firstChild),d.bodyClose&&n.body.appendChild(d.bodyClose);for(const p in i.pendingSideEffects)i.pendingSideEffects[p]();e._dom=i,await e.hooks.callHook("dom:rendered",{renders:h}),r()}).finally(()=>{e._domUpdatePromise=void 0,e.dirty=!1})),e._domUpdatePromise}function N3(e={}){const t=e.domOptions?.render||a1;e.document=e.document||(typeof window<"u"?document:void 0);const n=e.document?.head.querySelector('script[id="unhead:payload"]')?.innerHTML||!1;return O3({...e,plugins:[...e.plugins||[],{key:"client",hooks:{"entries:updated":t}}],init:[n?JSON.parse(n):!1,...e.init||[]]})}function F3(e,t){let n=0;return()=>{const a=++n;t(()=>{n===a&&e()})}}const q3=(e,t)=>et(t)?He(t):t,r1="usehead";function B3(e){return{install(n){n.config.globalProperties.$unhead=e,n.config.globalProperties.$head=e,n.provide(r1,e)}}.install}function o1(){if(ns()){const e=rt(r1);if(e)return e}throw new Error("useHead() was called without provide context, ensure you call it through the setup() function.")}function H3(e,t={}){const n=t.head||o1();return n.ssr?n.push(e||{},t):V3(n,e,t)}function V3(e,t,n={}){const a=V(!1);let r;return qt(()=>{const s=a.value?{}:Zl(t,q3);r?r.patch(s):r=e.push(s,n)}),Mt()&&(Ga(()=>{r.dispose()}),Ky(()=>{a.value=!0}),Yy(()=>{a.value=!1})),r}function z3(e={}){const t=N3({domOptions:{render:F3(()=>a1(t),n=>setTimeout(n,0))},...e});return t.install=B3(t),t}const j3={install(e){if(e._context.provides.usehead)return;const t=z3();e.use(t)}},W3={install(e,t){t?.router&&typeof t.router=="function"&&e.provide("nuxtui:router",t.router)}};var Yi={inherit:"inherit",current:"currentcolor",transparent:"transparent",black:"#000",white:"#fff",slate:{50:"oklch(98.4% 0.003 247.858)",100:"oklch(96.8% 0.007 247.896)",200:"oklch(92.9% 0.013 255.508)",300:"oklch(86.9% 0.022 252.894)",400:"oklch(70.4% 0.04 256.788)",500:"oklch(55.4% 0.046 257.417)",600:"oklch(44.6% 0.043 257.281)",700:"oklch(37.2% 0.044 257.287)",800:"oklch(27.9% 0.041 260.031)",900:"oklch(20.8% 0.042 265.755)",950:"oklch(12.9% 0.042 264.695)"},gray:{50:"oklch(98.5% 0.002 247.839)",100:"oklch(96.7% 0.003 264.542)",200:"oklch(92.8% 0.006 264.531)",300:"oklch(87.2% 0.01 258.338)",400:"oklch(70.7% 0.022 261.325)",500:"oklch(55.1% 0.027 264.364)",600:"oklch(44.6% 0.03 256.802)",700:"oklch(37.3% 0.034 259.733)",800:"oklch(27.8% 0.033 256.848)",900:"oklch(21% 0.034 264.665)",950:"oklch(13% 0.028 261.692)"},zinc:{50:"oklch(98.5% 0 0)",100:"oklch(96.7% 0.001 286.375)",200:"oklch(92% 0.004 286.32)",300:"oklch(87.1% 0.006 286.286)",400:"oklch(70.5% 0.015 286.067)",500:"oklch(55.2% 0.016 285.938)",600:"oklch(44.2% 0.017 285.786)",700:"oklch(37% 0.013 285.805)",800:"oklch(27.4% 0.006 286.033)",900:"oklch(21% 0.006 285.885)",950:"oklch(14.1% 0.005 285.823)"},neutral:{50:"oklch(98.5% 0 0)",100:"oklch(97% 0 0)",200:"oklch(92.2% 0 0)",300:"oklch(87% 0 0)",400:"oklch(70.8% 0 0)",500:"oklch(55.6% 0 0)",600:"oklch(43.9% 0 0)",700:"oklch(37.1% 0 0)",800:"oklch(26.9% 0 0)",900:"oklch(20.5% 0 0)",950:"oklch(14.5% 0 0)"},stone:{50:"oklch(98.5% 0.001 106.423)",100:"oklch(97% 0.001 106.424)",200:"oklch(92.3% 0.003 48.717)",300:"oklch(86.9% 0.005 56.366)",400:"oklch(70.9% 0.01 56.259)",500:"oklch(55.3% 0.013 58.071)",600:"oklch(44.4% 0.011 73.639)",700:"oklch(37.4% 0.01 67.558)",800:"oklch(26.8% 0.007 34.298)",900:"oklch(21.6% 0.006 56.043)",950:"oklch(14.7% 0.004 49.25)"},red:{50:"oklch(97.1% 0.013 17.38)",100:"oklch(93.6% 0.032 17.717)",200:"oklch(88.5% 0.062 18.334)",300:"oklch(80.8% 0.114 19.571)",400:"oklch(70.4% 0.191 22.216)",500:"oklch(63.7% 0.237 25.331)",600:"oklch(57.7% 0.245 27.325)",700:"oklch(50.5% 0.213 27.518)",800:"oklch(44.4% 0.177 26.899)",900:"oklch(39.6% 0.141 25.723)",950:"oklch(25.8% 0.092 26.042)"},orange:{50:"oklch(98% 0.016 73.684)",100:"oklch(95.4% 0.038 75.164)",200:"oklch(90.1% 0.076 70.697)",300:"oklch(83.7% 0.128 66.29)",400:"oklch(75% 0.183 55.934)",500:"oklch(70.5% 0.213 47.604)",600:"oklch(64.6% 0.222 41.116)",700:"oklch(55.3% 0.195 38.402)",800:"oklch(47% 0.157 37.304)",900:"oklch(40.8% 0.123 38.172)",950:"oklch(26.6% 0.079 36.259)"},amber:{50:"oklch(98.7% 0.022 95.277)",100:"oklch(96.2% 0.059 95.617)",200:"oklch(92.4% 0.12 95.746)",300:"oklch(87.9% 0.169 91.605)",400:"oklch(82.8% 0.189 84.429)",500:"oklch(76.9% 0.188 70.08)",600:"oklch(66.6% 0.179 58.318)",700:"oklch(55.5% 0.163 48.998)",800:"oklch(47.3% 0.137 46.201)",900:"oklch(41.4% 0.112 45.904)",950:"oklch(27.9% 0.077 45.635)"},yellow:{50:"oklch(98.7% 0.026 102.212)",100:"oklch(97.3% 0.071 103.193)",200:"oklch(94.5% 0.129 101.54)",300:"oklch(90.5% 0.182 98.111)",400:"oklch(85.2% 0.199 91.936)",500:"oklch(79.5% 0.184 86.047)",600:"oklch(68.1% 0.162 75.834)",700:"oklch(55.4% 0.135 66.442)",800:"oklch(47.6% 0.114 61.907)",900:"oklch(42.1% 0.095 57.708)",950:"oklch(28.6% 0.066 53.813)"},lime:{50:"oklch(98.6% 0.031 120.757)",100:"oklch(96.7% 0.067 122.328)",200:"oklch(93.8% 0.127 124.321)",300:"oklch(89.7% 0.196 126.665)",400:"oklch(84.1% 0.238 128.85)",500:"oklch(76.8% 0.233 130.85)",600:"oklch(64.8% 0.2 131.684)",700:"oklch(53.2% 0.157 131.589)",800:"oklch(45.3% 0.124 130.933)",900:"oklch(40.5% 0.101 131.063)",950:"oklch(27.4% 0.072 132.109)"},green:{50:"oklch(98.2% 0.018 155.826)",100:"oklch(96.2% 0.044 156.743)",200:"oklch(92.5% 0.084 155.995)",300:"oklch(87.1% 0.15 154.449)",400:"oklch(79.2% 0.209 151.711)",500:"oklch(72.3% 0.219 149.579)",600:"oklch(62.7% 0.194 149.214)",700:"oklch(52.7% 0.154 150.069)",800:"oklch(44.8% 0.119 151.328)",900:"oklch(39.3% 0.095 152.535)",950:"oklch(26.6% 0.065 152.934)"},emerald:{50:"oklch(97.9% 0.021 166.113)",100:"oklch(95% 0.052 163.051)",200:"oklch(90.5% 0.093 164.15)",300:"oklch(84.5% 0.143 164.978)",400:"oklch(76.5% 0.177 163.223)",500:"oklch(69.6% 0.17 162.48)",600:"oklch(59.6% 0.145 163.225)",700:"oklch(50.8% 0.118 165.612)",800:"oklch(43.2% 0.095 166.913)",900:"oklch(37.8% 0.077 168.94)",950:"oklch(26.2% 0.051 172.552)"},teal:{50:"oklch(98.4% 0.014 180.72)",100:"oklch(95.3% 0.051 180.801)",200:"oklch(91% 0.096 180.426)",300:"oklch(85.5% 0.138 181.071)",400:"oklch(77.7% 0.152 181.912)",500:"oklch(70.4% 0.14 182.503)",600:"oklch(60% 0.118 184.704)",700:"oklch(51.1% 0.096 186.391)",800:"oklch(43.7% 0.078 188.216)",900:"oklch(38.6% 0.063 188.416)",950:"oklch(27.7% 0.046 192.524)"},cyan:{50:"oklch(98.4% 0.019 200.873)",100:"oklch(95.6% 0.045 203.388)",200:"oklch(91.7% 0.08 205.041)",300:"oklch(86.5% 0.127 207.078)",400:"oklch(78.9% 0.154 211.53)",500:"oklch(71.5% 0.143 215.221)",600:"oklch(60.9% 0.126 221.723)",700:"oklch(52% 0.105 223.128)",800:"oklch(45% 0.085 224.283)",900:"oklch(39.8% 0.07 227.392)",950:"oklch(30.2% 0.056 229.695)"},sky:{50:"oklch(97.7% 0.013 236.62)",100:"oklch(95.1% 0.026 236.824)",200:"oklch(90.1% 0.058 230.902)",300:"oklch(82.8% 0.111 230.318)",400:"oklch(74.6% 0.16 232.661)",500:"oklch(68.5% 0.169 237.323)",600:"oklch(58.8% 0.158 241.966)",700:"oklch(50% 0.134 242.749)",800:"oklch(44.3% 0.11 240.79)",900:"oklch(39.1% 0.09 240.876)",950:"oklch(29.3% 0.066 243.157)"},blue:{50:"oklch(97% 0.014 254.604)",100:"oklch(93.2% 0.032 255.585)",200:"oklch(88.2% 0.059 254.128)",300:"oklch(80.9% 0.105 251.813)",400:"oklch(70.7% 0.165 254.624)",500:"oklch(62.3% 0.214 259.815)",600:"oklch(54.6% 0.245 262.881)",700:"oklch(48.8% 0.243 264.376)",800:"oklch(42.4% 0.199 265.638)",900:"oklch(37.9% 0.146 265.522)",950:"oklch(28.2% 0.091 267.935)"},indigo:{50:"oklch(96.2% 0.018 272.314)",100:"oklch(93% 0.034 272.788)",200:"oklch(87% 0.065 274.039)",300:"oklch(78.5% 0.115 274.713)",400:"oklch(67.3% 0.182 276.935)",500:"oklch(58.5% 0.233 277.117)",600:"oklch(51.1% 0.262 276.966)",700:"oklch(45.7% 0.24 277.023)",800:"oklch(39.8% 0.195 277.366)",900:"oklch(35.9% 0.144 278.697)",950:"oklch(25.7% 0.09 281.288)"},violet:{50:"oklch(96.9% 0.016 293.756)",100:"oklch(94.3% 0.029 294.588)",200:"oklch(89.4% 0.057 293.283)",300:"oklch(81.1% 0.111 293.571)",400:"oklch(70.2% 0.183 293.541)",500:"oklch(60.6% 0.25 292.717)",600:"oklch(54.1% 0.281 293.009)",700:"oklch(49.1% 0.27 292.581)",800:"oklch(43.2% 0.232 292.759)",900:"oklch(38% 0.189 293.745)",950:"oklch(28.3% 0.141 291.089)"},purple:{50:"oklch(97.7% 0.014 308.299)",100:"oklch(94.6% 0.033 307.174)",200:"oklch(90.2% 0.063 306.703)",300:"oklch(82.7% 0.119 306.383)",400:"oklch(71.4% 0.203 305.504)",500:"oklch(62.7% 0.265 303.9)",600:"oklch(55.8% 0.288 302.321)",700:"oklch(49.6% 0.265 301.924)",800:"oklch(43.8% 0.218 303.724)",900:"oklch(38.1% 0.176 304.987)",950:"oklch(29.1% 0.149 302.717)"},fuchsia:{50:"oklch(97.7% 0.017 320.058)",100:"oklch(95.2% 0.037 318.852)",200:"oklch(90.3% 0.076 319.62)",300:"oklch(83.3% 0.145 321.434)",400:"oklch(74% 0.238 322.16)",500:"oklch(66.7% 0.295 322.15)",600:"oklch(59.1% 0.293 322.896)",700:"oklch(51.8% 0.253 323.949)",800:"oklch(45.2% 0.211 324.591)",900:"oklch(40.1% 0.17 325.612)",950:"oklch(29.3% 0.136 325.661)"},pink:{50:"oklch(97.1% 0.014 343.198)",100:"oklch(94.8% 0.028 342.258)",200:"oklch(89.9% 0.061 343.231)",300:"oklch(82.3% 0.12 346.018)",400:"oklch(71.8% 0.202 349.761)",500:"oklch(65.6% 0.241 354.308)",600:"oklch(59.2% 0.249 0.584)",700:"oklch(52.5% 0.223 3.958)",800:"oklch(45.9% 0.187 3.815)",900:"oklch(40.8% 0.153 2.432)",950:"oklch(28.4% 0.109 3.907)"},rose:{50:"oklch(96.9% 0.015 12.422)",100:"oklch(94.1% 0.03 12.58)",200:"oklch(89.2% 0.058 10.001)",300:"oklch(81% 0.117 11.638)",400:"oklch(71.2% 0.194 13.428)",500:"oklch(64.5% 0.246 16.439)",600:"oklch(58.6% 0.253 17.585)",700:"oklch(51.4% 0.222 16.935)",800:"oklch(45.5% 0.188 13.697)",900:"oklch(41% 0.159 10.272)",950:"oklch(27.1% 0.105 12.094)"}};function U3(e,t){var n;const a=at();return qt(()=>{a.value=e()},{...t,flush:(n=t?.flush)!==null&&n!==void 0?n:"sync"}),br(a)}function G3(e,t,n={}){let a,r,o,s=!0;const i=()=>{s=!0,o()};Se(e,i,{flush:"sync",...n});const l=typeof t=="function"?t:t.get,c=typeof t=="function"?void 0:t.set,u=Ci((d,h)=>(r=d,o=h,{get(){return s&&(a=l(a),s=!1),r(),a},set(p){c?.(p)}}));return u.trigger=i,u}function Ya(e,t){return es()?(ts(e,t),!0):!1}function Y3(){const e=new Set,t=o=>{e.delete(o)};return{on:o=>{e.add(o);const s=()=>t(o);return Ya(s),{off:s}},off:t,trigger:(...o)=>Promise.all(Array.from(e).map(s=>s(...o))),clear:()=>{e.clear()}}}function K3(e){let t=!1,n;const a=_i(!0);return((...r)=>(t||(n=a.run(()=>e(...r)),t=!0),n))}const $u=new WeakMap,X3=(...e)=>{var t;const n=e[0],a=(t=Mt())===null||t===void 0?void 0:t.proxy,r=a??es();if(r==null&&!ns())throw new Error("injectLocal must be called in setup");return r&&$u.has(r)&&n in $u.get(r)?$u.get(r)[n]:rt(...e)},On=typeof window<"u"&&typeof document<"u";typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope;const J3=e=>typeof e<"u",Q3=e=>e!=null,Z3=Object.prototype.toString,eC=e=>Z3.call(e)==="[object Object]",ri=()=>{},fm=tC();function tC(){var e,t,n;return On&&!!(!((e=window)===null||e===void 0||(e=e.navigator)===null||e===void 0)&&e.userAgent)&&(/iP(?:ad|hone|od)/.test(window.navigator.userAgent)||((t=window)===null||t===void 0||(t=t.navigator)===null||t===void 0?void 0:t.maxTouchPoints)>2&&/iPad|Macintosh/.test((n=window)===null||n===void 0?void 0:n.navigator.userAgent))}function Qf(...e){if(e.length!==1)return It(...e);const t=e[0];return typeof t=="function"?br(Ci(()=>({get:t,set:ri}))):V(t)}function s1(e,t){function n(...a){return new Promise((r,o)=>{Promise.resolve(e(()=>t.apply(this,a),{fn:t,thisArg:this,args:a})).then(r).catch(o)})}return n}const i1=e=>e();function nC(e,t={}){let n,a,r=ri;const o=l=>{clearTimeout(l),r(),r=ri};let s;return l=>{const c=He(e),u=He(t.maxWait);return n&&o(n),c<=0||u!==void 0&&u<=0?(a&&(o(a),a=void 0),Promise.resolve(l())):new Promise((d,h)=>{r=t.rejectOnCancel?h:d,s=l,u&&!a&&(a=setTimeout(()=>{n&&o(n),a=void 0,d(s())},u)),n=setTimeout(()=>{a&&o(a),a=void 0,d(l())},c)})}}function aC(e=i1,t={}){const{initialState:n="active"}=t,a=Qf(n==="active");function r(){a.value=!1}function o(){a.value=!0}return{isActive:ea(a),pause:r,resume:o,eventFilter:(...i)=>{a.value&&e(...i)}}}function pm(e){return e.endsWith("rem")?Number.parseFloat(e)*16:Number.parseFloat(e)}function Ml(e){return Array.isArray(e)?e:[e]}function rC(e){const t=Object.create(null);return(n=>t[n]||(t[n]=e(n)))}const oC=/-(\w)/g,sC=rC(e=>e.replace(oC,(t,n)=>n?n.toUpperCase():""));function l1(e){return Mt()}function Ii(e){if(!On)return e;let t=0,n,a;const r=()=>{t-=1,a&&t<=0&&(a.stop(),n=void 0,a=void 0)};return((...o)=>(t+=1,a||(a=_i(!0),n=a.run(()=>e(...o))),Ya(r),n))}function iC(e,t){if(typeof Symbol<"u"){const n={...e};return Object.defineProperty(n,Symbol.iterator,{enumerable:!1,value(){let a=0;return{next:()=>({value:t[a++],done:a>t.length})}}}),n}else return Object.assign([...t],e)}function lC(e){return Rn(et(e)?new Proxy({},{get(t,n,a){return f(Reflect.get(e.value,n,a))},set(t,n,a){return et(e.value[n])&&!et(a)?e.value[n].value=a:e.value[n]=a,!0},deleteProperty(t,n){return Reflect.deleteProperty(e.value,n)},has(t,n){return Reflect.has(e.value,n)},ownKeys(){return Object.keys(e.value)},getOwnPropertyDescriptor(){return{enumerable:!0,configurable:!0}}}):e)}function c1(e){return lC(S(e))}function rs(e,...t){const n=t.flat(),a=n[0];return c1(()=>Object.fromEntries(typeof a=="function"?Object.entries(kt(e)).filter(([r,o])=>!a(He(o),r)):Object.entries(kt(e)).filter(r=>!n.includes(r[0]))))}function ca(e,...t){const n=t.flat(),a=n[0];return c1(()=>Object.fromEntries(typeof a=="function"?Object.entries(kt(e)).filter(([r,o])=>a(He(o),r)):n.map(r=>[r,Qf(e,r)])))}function u1(e,t=1e4){return Ci((n,a)=>{let r=He(e),o;const s=()=>setTimeout(()=>{r=He(e),a()},He(t));return Ya(()=>{clearTimeout(o)}),{get(){return n(),r},set(i){r=i,a(),clearTimeout(o),o=s()}}})}function cC(e,t=200,n={}){return s1(nC(t,n),e)}function uC(e,t,n={}){const{eventFilter:a=i1,...r}=n;return Se(e,s1(a,t),r)}function Fd(e,t,n={}){const{eventFilter:a,initialState:r="active",...o}=n,{eventFilter:s,pause:i,resume:l,isActive:c}=aC(a,{initialState:r});return{stop:uC(e,t,{...o,eventFilter:s}),pause:i,resume:l,isActive:c}}function dC(e,t,...[n]){const{flush:a="sync",deep:r=!1,immediate:o=!0,direction:s="both",transform:i={}}=n||{},l=[],c="ltr"in i&&i.ltr||(h=>h),u="rtl"in i&&i.rtl||(h=>h);return(s==="both"||s==="ltr")&&l.push(Fd(e,h=>{l.forEach(p=>p.pause()),t.value=c(h),l.forEach(p=>p.resume())},{flush:a,deep:r,immediate:o})),(s==="both"||s==="rtl")&&l.push(Fd(t,h=>{l.forEach(p=>p.pause()),e.value=u(h),l.forEach(p=>p.resume())},{flush:a,deep:r,immediate:o})),()=>{l.forEach(h=>h.stop())}}function fC(e,t){l1()&&Ga(e,t)}function Zf(e,t=!0,n){l1()?Xe(e,n):t?e():Ve(e)}function ep(e,t,n={}){const{immediate:a=!0,immediateCallback:r=!1}=n,o=at(!1);let s;function i(){s&&(clearTimeout(s),s=void 0)}function l(){o.value=!1,i()}function c(...u){r&&e(),i(),o.value=!0,s=setTimeout(()=>{o.value=!1,s=void 0,e(...u)},He(t))}return a&&(o.value=!0,On&&c()),Ya(l),{isPending:ea(o),start:c,stop:l}}function pC(e=1e3,t={}){const{controls:n=!1,callback:a}=t,r=ep(a??ri,e,t),o=S(()=>!r.isPending.value);return n?{ready:o,...r}:o}function hC(e,t,n){return Se(e,t,{...n,immediate:!0})}function d1(e={}){const{inheritAttrs:t=!0,name:n="ReusableTemplate"}=e,a=at(),r=Z({name:`${n}.define`,setup(s,{slots:i}){return()=>{a.value=i.default}}}),o=Z({inheritAttrs:t,name:`${n}.reuse`,props:e.props,setup(s,{attrs:i,slots:l}){return()=>{var c;if(!a.value)throw new Error("[VueUse] Failed to find the definition of reusable template");const u=(c=a.value)===null||c===void 0?void 0:c.call(a,{...e.props==null?mC(i):s,$slots:l});return t&&u?.length===1?u[0]:u}}});return iC({define:r,reuse:o},[r,o])}function mC(e){const t={};for(const n in e)t[sC(n)]=e[n];return t}const dn=On?window:void 0;function hn(e){var t;const n=He(e);return(t=n?.$el)!==null&&t!==void 0?t:n}function Kt(...e){const t=(a,r,o,s)=>(a.addEventListener(r,o,s),()=>a.removeEventListener(r,o,s)),n=S(()=>{const a=Ml(He(e[0])).filter(r=>r!=null);return a.every(r=>typeof r!="string")?a:void 0});return hC(()=>{var a,r;return[(a=(r=n.value)===null||r===void 0?void 0:r.map(o=>hn(o)))!==null&&a!==void 0?a:[dn].filter(o=>o!=null),Ml(He(n.value?e[1]:e[0])),Ml(f(n.value?e[2]:e[1])),He(n.value?e[3]:e[2])]},([a,r,o,s],i,l)=>{if(!a?.length||!r?.length||!o?.length)return;const c=eC(s)?{...s}:s,u=a.flatMap(d=>r.flatMap(h=>o.map(p=>t(d,h,p,c))));l(()=>{u.forEach(d=>d())})},{flush:"post"})}function f1(){const e=at(!1),t=Mt();return t&&Xe(()=>{e.value=!0},t),e}function tp(e){const t=f1();return S(()=>(t.value,!!e()))}function gC(e,t,n={}){const{window:a=dn,...r}=n;let o;const s=tp(()=>a&&"MutationObserver"in a),i=()=>{o&&(o.disconnect(),o=void 0)},l=Se(S(()=>{const d=Ml(He(e)).map(hn).filter(Q3);return new Set(d)}),d=>{i(),s.value&&d.size&&(o=new MutationObserver(t),d.forEach(h=>o.observe(h,r)))},{immediate:!0,flush:"post"}),c=()=>o?.takeRecords(),u=()=>{l(),i()};return Ya(u),{isSupported:s,stop:u,takeRecords:c}}function vC(e,t,n={}){const{window:a=dn,document:r=a?.document,flush:o="sync"}=n;if(!a||!r)return ri;let s;const i=u=>{s?.(),s=u},l=qt(()=>{const u=hn(e);if(u){const{stop:d}=gC(r,h=>{h.map(p=>[...p.removedNodes]).flat().some(p=>p===u||p.contains(u))&&t(h)},{window:a,childList:!0,subtree:!0});i(d)}},{flush:o}),c=()=>{l(),i()};return Ya(c),c}function yC(e){return typeof e=="function"?e:typeof e=="string"?t=>t.key===e:Array.isArray(e)?t=>e.includes(t.key):()=>!0}function np(...e){let t,n,a={};e.length===3?(t=e[0],n=e[1],a=e[2]):e.length===2?typeof e[1]=="object"?(t=!0,n=e[0],a=e[1]):(t=e[0],n=e[1]):(t=!0,n=e[0]);const{target:r=dn,eventName:o="keydown",passive:s=!1,dedupe:i=!1}=a,l=yC(t);return Kt(r,o,u=>{u.repeat&&He(i)||l(u)&&n(u)},s)}function bC(e={}){var t;const{window:n=dn,deep:a=!0,triggerOnRemoval:r=!1}=e,o=(t=e.document)!==null&&t!==void 0?t:n?.document,s=()=>{let c=o?.activeElement;if(a)for(var u;c?.shadowRoot;)c=c==null||(u=c.shadowRoot)===null||u===void 0?void 0:u.activeElement;return c},i=at(),l=()=>{i.value=s()};if(n){const c={capture:!0,passive:!0};Kt(n,"blur",u=>{u.relatedTarget===null&&l()},c),Kt(n,"focus",l,c)}return r&&vC(i,l,{document:o}),l(),i}function wC(e,t={}){const{immediate:n=!0,fpsLimit:a=null,window:r=dn,once:o=!1}=t,s=at(!1),i=S(()=>{const p=He(a);return p?1e3/p:null});let l=0,c=null;function u(p){if(!s.value||!r)return;l||(l=p);const m=p-l;if(i.value&&m<i.value){c=r.requestAnimationFrame(u);return}if(l=p,e({delta:m,timestamp:p}),o){s.value=!1,c=null;return}c=r.requestAnimationFrame(u)}function d(){!s.value&&r&&(s.value=!0,l=0,c=r.requestAnimationFrame(u))}function h(){s.value=!1,c!=null&&r&&(r.cancelAnimationFrame(c),c=null)}return n&&d(),Ya(h),{isActive:ea(s),pause:h,resume:d}}const _C=Symbol("vueuse-ssr-width");function kC(){const e=ns()?X3(_C,null):null;return typeof e=="number"?e:void 0}function CC(e,t={}){const{window:n=dn,ssrWidth:a=kC()}=t,r=tp(()=>n&&"matchMedia"in n&&typeof n.matchMedia=="function"),o=at(typeof a=="number"),s=at(),i=at(!1),l=c=>{i.value=c.matches};return qt(()=>{if(o.value){o.value=!r.value,i.value=He(e).split(",").some(c=>{const u=c.includes("not all"),d=c.match(/\(\s*min-width:\s*(-?\d+(?:\.\d*)?[a-z]+\s*)\)/),h=c.match(/\(\s*max-width:\s*(-?\d+(?:\.\d*)?[a-z]+\s*)\)/);let p=!!(d||h);return d&&p&&(p=a>=pm(d[1])),h&&p&&(p=a<=pm(h[1])),u?!p:p});return}r.value&&(s.value=n.matchMedia(He(e)),i.value=s.value.matches)}),Kt(s,"change",l,{passive:!0}),S(()=>i.value)}function SC(e){return JSON.parse(JSON.stringify(e))}const Ki=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},Xi="__vueuse_ssr_handlers__",xC=AC();function AC(){return Xi in Ki||(Ki[Xi]=Ki[Xi]||{}),Ki[Xi]}function p1(e,t){return xC[e]||t}function PC(e){return CC("(prefers-color-scheme: dark)",e)}function MC(e){return e==null?"any":e instanceof Set?"set":e instanceof Map?"map":e instanceof Date?"date":typeof e=="boolean"?"boolean":typeof e=="string"?"string":typeof e=="object"?"object":Number.isNaN(e)?"any":"number"}const TC={boolean:{read:e=>e==="true",write:e=>String(e)},object:{read:e=>JSON.parse(e),write:e=>JSON.stringify(e)},number:{read:e=>Number.parseFloat(e),write:e=>String(e)},any:{read:e=>e,write:e=>String(e)},string:{read:e=>e,write:e=>String(e)},map:{read:e=>new Map(JSON.parse(e)),write:e=>JSON.stringify(Array.from(e.entries()))},set:{read:e=>new Set(JSON.parse(e)),write:e=>JSON.stringify(Array.from(e))},date:{read:e=>new Date(e),write:e=>e.toISOString()}},hm="vueuse-storage";function IC(e,t,n,a={}){var r;const{flush:o="pre",deep:s=!0,listenToStorageChanges:i=!0,writeDefaults:l=!0,mergeDefaults:c=!1,shallow:u,window:d=dn,eventFilter:h,onError:p=O=>{console.error(O)},initOnMounted:m}=a,v=(u?at:V)(typeof t=="function"?t():t),y=S(()=>He(e));if(!n)try{n=p1("getDefaultStorage",()=>dn?.localStorage)()}catch(O){p(O)}if(!n)return v;const g=He(t),b=MC(g),w=(r=a.serializer)!==null&&r!==void 0?r:TC[b],{pause:_,resume:A}=Fd(v,O=>Y(O),{flush:o,deep:s,eventFilter:h});Se(y,()=>z(),{flush:o});let P=!1;const k=O=>{m&&!P||z(O)},T=O=>{m&&!P||te(O)};d&&i&&(n instanceof Storage?Kt(d,"storage",k,{passive:!0}):Kt(d,hm,T)),m?Zf(()=>{P=!0,z()}):z();function I(O,D){if(d){const q={key:y.value,oldValue:O,newValue:D,storageArea:n};d.dispatchEvent(n instanceof Storage?new StorageEvent("storage",q):new CustomEvent(hm,{detail:q}))}}function Y(O){try{const D=n.getItem(y.value);if(O==null)I(D,null),n.removeItem(y.value);else{const q=w.write(O);D!==q&&(n.setItem(y.value,q),I(D,q))}}catch(D){p(D)}}function Q(O){const D=O?O.newValue:n.getItem(y.value);if(D==null)return l&&g!=null&&n.setItem(y.value,w.write(g)),g;if(!O&&c){const q=w.read(D);return typeof c=="function"?c(q,g):b==="object"&&!Array.isArray(q)?{...g,...q}:q}else return typeof D!="string"?D:w.read(D)}function z(O){if(!(O&&O.storageArea!==n)){if(O&&O.key==null){v.value=g;return}if(!(O&&O.key!==y.value)){_();try{const D=w.write(v.value);(O===void 0||O?.newValue!==D)&&(v.value=Q(O))}catch(D){p(D)}finally{O?Ve(A):A()}}}}function te(O){z(O.detail)}return v}const DC="*,*::before,*::after{-webkit-transition:none!important;-moz-transition:none!important;-o-transition:none!important;-ms-transition:none!important;transition:none!important}";function EC(e={}){const{selector:t="html",attribute:n="class",initialValue:a="auto",window:r=dn,storage:o,storageKey:s="vueuse-color-scheme",listenToStorageChanges:i=!0,storageRef:l,emitAuto:c,disableTransition:u=!0}=e,d={auto:"",light:"light",dark:"dark",...e.modes||{}},h=PC({window:r}),p=S(()=>h.value?"dark":"light"),m=l||(s==null?Qf(a):IC(s,a,o,{window:r,listenToStorageChanges:i})),v=S(()=>m.value==="auto"?p.value:m.value),y=p1("updateHTMLAttrs",(_,A,P)=>{const k=typeof _=="string"?r?.document.querySelector(_):hn(_);if(!k)return;const T=new Set,I=new Set;let Y=null;if(A==="class"){const z=P.split(/\s/g);Object.values(d).flatMap(te=>(te||"").split(/\s/g)).filter(Boolean).forEach(te=>{z.includes(te)?T.add(te):I.add(te)})}else Y={key:A,value:P};if(T.size===0&&I.size===0&&Y===null)return;let Q;u&&(Q=r.document.createElement("style"),Q.appendChild(document.createTextNode(DC)),r.document.head.appendChild(Q));for(const z of T)k.classList.add(z);for(const z of I)k.classList.remove(z);Y&&k.setAttribute(Y.key,Y.value),u&&(r.getComputedStyle(Q).opacity,document.head.removeChild(Q))});function g(_){var A;y(t,n,(A=d[_])!==null&&A!==void 0?A:_)}function b(_){e.onChanged?e.onChanged(_,g):g(_)}Se(v,b,{flush:"post",immediate:!0}),Zf(()=>b(v.value));const w=S({get(){return c?m.value:v.value},set(_){m.value=_}});return Object.assign(w,{store:m,system:p,state:v})}function $C(e){const t=Mt(),n=G3(()=>null,()=>t.proxy.$el);return jf(n.trigger),Xe(n.trigger),n}function RC(e={}){const{valueDark:t="dark",valueLight:n=""}=e,a=EC({...e,onChanged:(o,s)=>{var i;e.onChanged?(i=e.onChanged)===null||i===void 0||i.call(e,o==="dark",s,o):s(o)},modes:{dark:t,light:n}}),r=S(()=>a.system.value);return S({get(){return a.value==="dark"},set(o){const s=o?"dark":"light";r.value===s?a.value="auto":a.value=s}})}function oae(e,t,n={}){const{window:a=dn,...r}=n;let o;const s=tp(()=>a&&"ResizeObserver"in a),i=()=>{o&&(o.disconnect(),o=void 0)},l=Se(S(()=>{const u=He(e);return Array.isArray(u)?u.map(d=>hn(d)):[hn(u)]}),u=>{if(i(),s.value&&a){o=new ResizeObserver(t);for(const d of u)d&&o.observe(d,r)}},{immediate:!0,flush:"post"}),c=()=>{i(),l()};return Ya(c),{isSupported:s,stop:c}}const LC="focusin",OC="focusout",NC=":focus-within";function sae(e,t={}){const{window:n=dn}=t,a=S(()=>hn(e)),r=at(!1),o=S(()=>r.value);if(!n||!bC(t).value)return{focused:o};const i={passive:!0};return Kt(a,LC,()=>r.value=!0,i),Kt(a,OC,()=>{var l,c,u;return r.value=(l=(c=a.value)===null||c===void 0||(u=c.matches)===null||u===void 0?void 0:u.call(c,NC))!==null&&l!==void 0?l:!1},i),{focused:o}}function iae(e=$C()){const t=at(),n=()=>{const a=hn(e);a&&(t.value=a.parentElement)};return Zf(n),Se(()=>He(e),n),t}function gt(e,t,n,a={}){var r,o;const{clone:s=!1,passive:i=!1,eventName:l,deep:c=!1,defaultValue:u,shouldEmit:d}=a,h=Mt(),p=n||h?.emit||(h==null||(r=h.$emit)===null||r===void 0?void 0:r.bind(h))||(h==null||(o=h.proxy)===null||o===void 0||(o=o.$emit)===null||o===void 0?void 0:o.bind(h?.proxy));let m=l;t||(t="modelValue"),m=m||`update:${t.toString()}`;const v=b=>s?typeof s=="function"?s(b):SC(b):b,y=()=>J3(e[t])?v(e[t]):u,g=b=>{d?d(b)&&p(m,b):p(m,b)};if(i){const b=V(y());let w=!1;return Se(()=>e[t],_=>{w||(w=!0,b.value=v(_),Ve(()=>w=!1))}),Se(b,_=>{!w&&(_!==e[t]||c)&&g(_)},{deep:c}),b}else return S({get(){return y()},set(b){g(b)}})}const h1={ui:{colors:{primary:"pink",secondary:"blue",success:"green",info:"blue",warning:"yellow",error:"red",neutral:"zinc"},icons:{arrowDown:"i-lucide-arrow-down",arrowLeft:"i-lucide-arrow-left",arrowRight:"i-lucide-arrow-right",arrowUp:"i-lucide-arrow-up",caution:"i-lucide-circle-alert",check:"i-lucide-check",chevronDoubleLeft:"i-lucide-chevrons-left",chevronDoubleRight:"i-lucide-chevrons-right",chevronDown:"i-lucide-chevron-down",chevronLeft:"i-lucide-chevron-left",chevronRight:"i-lucide-chevron-right",chevronUp:"i-lucide-chevron-up",close:"i-lucide-x",copy:"i-lucide-copy",copyCheck:"i-lucide-copy-check",dark:"i-lucide-moon",drag:"i-lucide-grip-vertical",ellipsis:"i-lucide-ellipsis",error:"i-lucide-circle-x",external:"i-lucide-arrow-up-right",eye:"i-lucide-eye",eyeOff:"i-lucide-eye-off",file:"i-lucide-file",folder:"i-lucide-folder",folderOpen:"i-lucide-folder-open",hash:"i-lucide-hash",info:"i-lucide-info",light:"i-lucide-sun",loading:"i-lucide-loader-circle",menu:"i-lucide-menu",minus:"i-lucide-minus",panelClose:"i-lucide-panel-left-close",panelOpen:"i-lucide-panel-left-open",plus:"i-lucide-plus",reload:"i-lucide-rotate-ccw",search:"i-lucide-search",stop:"i-lucide-square",success:"i-lucide-circle-check",system:"i-lucide-monitor",tip:"i-lucide-lightbulb",upload:"i-lucide-upload",warning:"i-lucide-triangle-alert"},tv:{twMergeConfig:{}}},colorMode:!0},FC=Rn(h1),zt=()=>FC,Ji={meta:"",ctrl:"",alt:"",win:"⊞",command:"⌘",shift:"⇧",control:"⌃",option:"⌥",enter:"↵",delete:"⌦",backspace:"⌫",escape:"Esc",tab:"⇥",capslock:"⇪",arrowup:"↑",arrowright:"→",arrowdown:"↓",arrowleft:"←",pageup:"⇞",pagedown:"⇟",home:"↖",end:"↘"},qC=()=>{const e=S(()=>navigator&&navigator.userAgent&&navigator.userAgent.match(/Macintosh;/)),t=Rn({meta:" ",alt:" ",ctrl:" "});Xe(()=>{t.meta=e.value?Ji.command:"Ctrl",t.ctrl=e.value?Ji.control:"Ctrl",t.alt=e.value?Ji.option:"Alt"});function n(a){if(a)return["meta","alt","ctrl"].includes(a)?t[a]:Ji[a]||a}return{macOS:e,getKbdKey:n}},BC=Ii(qC);function Ru(e){if(e===null||typeof e!="object")return!1;const t=Object.getPrototypeOf(e);return t!==null&&t!==Object.prototype&&Object.getPrototypeOf(t)!==null||Symbol.iterator in e?!1:Symbol.toStringTag in e?Object.prototype.toString.call(e)==="[object Module]":!0}function qd(e,t,n=".",a){if(!Ru(t))return qd(e,{},n,a);const r={...t};for(const o of Object.keys(e)){if(o==="__proto__"||o==="constructor")continue;const s=e[o];s!=null&&(a&&a(r,o,s,n)||(Array.isArray(s)&&Array.isArray(r[o])?r[o]=[...s,...r[o]]:Ru(s)&&Ru(r[o])?r[o]=qd(s,r[o],(n?`${n}.`:"")+o.toString(),a):r[o]=s))}return r}function HC(e){return(...t)=>t.reduce((n,a)=>qd(n,a,"",e),{})}const Un=HC();function VC(e){return Un(e,{dir:"ltr"})}function Bd(e){return typeof e=="string"?`'${e}'`:new zC().serialize(e)}const zC=(function(){class e{#e=new Map;compare(n,a){const r=typeof n,o=typeof a;return r==="string"&&o==="string"?n.localeCompare(a):r==="number"&&o==="number"?n-a:String.prototype.localeCompare.call(this.serialize(n,!0),this.serialize(a,!0))}serialize(n,a){if(n===null)return"null";switch(typeof n){case"string":return a?n:`'${n}'`;case"bigint":return`${n}n`;case"object":return this.$object(n);case"function":return this.$function(n)}return String(n)}serializeObject(n){const a=Object.prototype.toString.call(n);if(a!=="[object Object]")return this.serializeBuiltInType(a.length<10?`unknown:${a}`:a.slice(8,-1),n);const r=n.constructor,o=r===Object||r===void 0?"":r.name;if(o!==""&&globalThis[o]===r)return this.serializeBuiltInType(o,n);if(typeof n.toJSON=="function"){const s=n.toJSON();return o+(s!==null&&typeof s=="object"?this.$object(s):`(${this.serialize(s)})`)}return this.serializeObjectEntries(o,Object.entries(n))}serializeBuiltInType(n,a){const r=this["$"+n];if(r)return r.call(this,a);if(typeof a?.entries=="function")return this.serializeObjectEntries(n,a.entries());throw new Error(`Cannot serialize ${n}`)}serializeObjectEntries(n,a){const r=Array.from(a).sort((s,i)=>this.compare(s[0],i[0]));let o=`${n}{`;for(let s=0;s<r.length;s++){const[i,l]=r[s];o+=`${this.serialize(i,!0)}:${this.serialize(l)}`,s<r.length-1&&(o+=",")}return o+"}"}$object(n){let a=this.#e.get(n);return a===void 0&&(this.#e.set(n,`#${this.#e.size}`),a=this.serializeObject(n),this.#e.set(n,a)),a}$function(n){const a=Function.prototype.toString.call(n);return a.slice(-15)==="[native code] }"?`${n.name||""}()[native]`:`${n.name}(${n.length})${a.replace(/\s*\n\s*/g,"")}`}$Array(n){let a="[";for(let r=0;r<n.length;r++)a+=this.serialize(n[r]),r<n.length-1&&(a+=",");return a+"]"}$Date(n){try{return`Date(${n.toISOString()})`}catch{return"Date(null)"}}$ArrayBuffer(n){return`ArrayBuffer[${new Uint8Array(n).join(",")}]`}$Set(n){return`Set${this.$Array(Array.from(n).sort((a,r)=>this.compare(a,r)))}`}$Map(n){return this.serializeObjectEntries("Map",n.entries())}}for(const t of["Error","RegExp","URL"])e.prototype["$"+t]=function(n){return`${t}(${n})`};for(const t of["Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Uint16Array","Int32Array","Uint32Array","Float32Array","Float64Array"])e.prototype["$"+t]=function(n){return`${t}[${n.join(",")}]`};for(const t of["BigInt64Array","BigUint64Array"])e.prototype["$"+t]=function(n){return`${t}[${n.join("n,")}${n.length>0?"n":""}]`};return e})();function ap(e,t){return e===t||Bd(e)===Bd(t)}function jC(e,t){const n=Hd(e),a=Hd(t);return m1(n,a)}function m1(e,t){const n=[],a=new Set([...Object.keys(e.props||{}),...Object.keys(t.props||{})]);if(e.props&&t.props)for(const r of a){const o=e.props[r],s=t.props[r];o&&s?n.push(...m1(e.props?.[r],t.props?.[r])):(o||s)&&n.push(new mm((s||o).key,o?"removed":"added",s,o))}return a.size===0&&e.hash!==t.hash&&n.push(new mm((t||e).key,"changed",t,e)),n}function Hd(e,t=""){if(e&&typeof e!="object")return new gm(t,e,Bd(e));const n={},a=[];for(const r in e)n[r]=Hd(e[r],t?`${t}.${r}`:r),a.push(n[r].hash);return new gm(t,e,`{${a.join(":")}}`,n)}class mm{constructor(t,n,a,r){this.key=t,this.type=n,this.newValue=a,this.oldValue=r}toString(){return this.toJSON()}toJSON(){switch(this.type){case"added":return`Added \`${this.key}\``;case"removed":return`Removed \`${this.key}\``;case"changed":return`Changed \`${this.key}\` from \`${this.oldValue?.toString()||"-"}\` to \`${this.newValue.toString()}\``}}}class gm{constructor(t,n,a,r){this.key=t,this.value=n,this.hash=a,this.props=r}toString(){return this.props?`{${Object.keys(this.props).join(",")}}`:JSON.stringify(this.value)}toJSON(){const t=this.key||".";return this.props?`${t}({${Object.keys(this.props).join(",")}})`:`${t}(${this.value})`}}const WC=/^[\s\w\0+.-]{2,}:([/\\]{1,2})/,UC=/^[\s\w\0+.-]{2,}:([/\\]{2})?/,GC=/^([/\\]\s*){2,}[^/\\]/;function YC(e,t={}){return typeof t=="boolean"&&(t={acceptRelative:t}),t.strict?WC.test(e):UC.test(e)||(t.acceptRelative?GC.test(e):!1)}function Bc(e,t){const n={...e};for(const a of t)delete n[a];return n}function Qt(e,t,n){typeof t=="string"&&(t=t.split(".").map(r=>{const o=Number(r);return Number.isNaN(o)?r:o}));let a=e;for(const r of t){if(a==null)return n;a=a[r]}return a!==void 0?a:n}function KC(e){const t=Number.parseFloat(e);return Number.isNaN(t)?e:t}function XC(e,t,n){return e===void 0||t===void 0?!1:typeof e=="string"?e===t:typeof n=="function"?n(e,t):typeof n=="string"?Qt(e,n)===Qt(t,n):ap(e,t)}function vm(e){if(e==null)return!0;if(typeof e=="boolean"||typeof e=="number")return!1;if(typeof e=="string")return e.trim().length===0;if(Array.isArray(e))return e.length===0;if(e instanceof Map||e instanceof Set)return e.size===0;if(e instanceof Date||e instanceof RegExp||typeof e=="function")return!1;if(typeof e=="object"){for(const t in e)if(Object.prototype.hasOwnProperty.call(e,t))return!1;return!0}return!1}function lae(e,t,n={}){const{valueKey:a,labelKey:r,by:o}=n,s=e.find(l=>{const c=typeof l=="object"&&l!==null&&a?Qt(l,a):l;return XC(c,t,o)});if(vm(t)&&s)return r?Qt(s,r):void 0;if(vm(t))return;const i=s??t;if(i!=null)return typeof i=="object"?r?Qt(i,r):void 0:String(i)}function JC(e){return Array.isArray(e[0])}function ec(e,t){return!e&&!t?"":[...Array.isArray(e)?e:[e],t].filter(Boolean)}function QC(e){return(t,n)=>ZC(t,n,f(e))}function ZC(e,t,n){return Qt(n,`messages.${e}`,e).replace(/\{(\w+)\}/g,(r,o)=>`${t?.[o]??`{${o}}`}`)}function eS(e){const t=S(()=>f(e).name),n=S(()=>f(e).code),a=S(()=>f(e).dir);return{lang:t,code:n,dir:a,locale:et(e)?e:V(e),t:QC(e)}}const ym=VC({name:"English",code:"en",messages:{alert:{close:"Close"},authForm:{hidePassword:"Hide password",showPassword:"Show password",submit:"Continue"},banner:{close:"Close"},calendar:{nextMonth:"Next month",nextYear:"Next year",prevMonth:"Previous month",prevYear:"Previous year"},carousel:{dots:"Choose slide to display",goto:"Go to slide {slide}",next:"Next",prev:"Prev"},chatPrompt:{placeholder:"Type your message here…"},chatPromptSubmit:{label:"Send prompt"},colorMode:{dark:"Dark",light:"Light",switchToDark:"Switch to dark mode",switchToLight:"Switch to light mode",system:"System"},commandPalette:{back:"Back",close:"Close",noData:"No data",noMatch:"No matching data",placeholder:"Type a command or search…"},contentSearch:{links:"Links",search:"Results",theme:"Theme"},contentSearchButton:{label:"Search…"},contentToc:{title:"On this page"},dropdownMenu:{noMatch:"No matching data",search:"Search…"},dashboardSearch:{theme:"Theme"},dashboardSearchButton:{label:"Search…"},dashboardSidebarCollapse:{collapse:"Collapse sidebar",expand:"Expand sidebar"},dashboardSidebarToggle:{close:"Close sidebar",open:"Open sidebar"},error:{clear:"Back to home"},fileUpload:{removeFile:"Remove {filename}"},header:{close:"Close menu",open:"Open menu"},inputMenu:{create:'Create "{label}"',noData:"No data",noMatch:"No matching data"},inputNumber:{decrement:"Decrement",increment:"Increment"},listbox:{noData:"No data",noMatch:"No matching data",search:"Search…"},modal:{close:"Close"},pricingTable:{caption:"Pricing plan comparison"},prose:{codeCollapse:{closeText:"Collapse",name:"code",openText:"Expand"},collapsible:{closeText:"Hide",name:"properties",openText:"Show"},pre:{copy:"Copy code to clipboard"},prompt:{copy:"Copy prompt",openIn:"Open in {name}"}},chatReasoning:{thinking:"Thinking…",thought:"Thought",thoughtFor:"Thought for {duration}"},sidebar:{close:"Close",toggle:"Toggle"},selectMenu:{create:'Create "{label}"',noData:"No data",noMatch:"No matching data",search:"Search…"},slideover:{close:"Close"},table:{noData:"No data"},toast:{close:"Close"}}}),g1=Symbol.for("nuxt-ui.locale-context"),tS=e=>{const t=e||It(rt(g1,ym));return eS(S(()=>t.value||ym))},Hc=Ii(tS),Lu={},nS=(e,t)=>{if(Lu[e])return Lu[e];const n=V(t());return Lu[e]=n,n},bm=Z0();function aS(){return{isHydrating:!0,payload:{serverRendered:!1},hooks:bm,hook:bm.hook}}function rS(e){return{install(t){t.runWithContext(()=>e({vueApp:t}))}}}const vo=typeof document<"u";function v1(e){return typeof e=="object"||"displayName"in e||"props"in e||"__vccOpts"in e}function oS(e){return e.__esModule||e[Symbol.toStringTag]==="Module"||e.default&&v1(e.default)}const st=Object.assign;function Ou(e,t){const n={};for(const a in t){const r=t[a];n[a]=Gn(r)?r.map(e):e(r)}return n}const js=()=>{},Gn=Array.isArray;function wm(e,t){const n={};for(const a in e)n[a]=a in t?t[a]:e[a];return n}const y1=/#/g,sS=/&/g,iS=/\//g,lS=/=/g,cS=/\?/g,b1=/\+/g,uS=/%5B/g,dS=/%5D/g,w1=/%5E/g,fS=/%60/g,_1=/%7B/g,pS=/%7C/g,k1=/%7D/g,hS=/%20/g;function rp(e){return e==null?"":encodeURI(""+e).replace(pS,"|").replace(uS,"[").replace(dS,"]")}function mS(e){return rp(e).replace(_1,"{").replace(k1,"}").replace(w1,"^")}function Vd(e){return rp(e).replace(b1,"%2B").replace(hS,"+").replace(y1,"%23").replace(sS,"%26").replace(fS,"`").replace(_1,"{").replace(k1,"}").replace(w1,"^")}function gS(e){return Vd(e).replace(lS,"%3D")}function vS(e){return rp(e).replace(y1,"%23").replace(cS,"%3F")}function yS(e){return vS(e).replace(iS,"%2F")}function oi(e){if(e==null)return null;try{return decodeURIComponent(""+e)}catch{}return""+e}const bS=/\/$/,wS=e=>e.replace(bS,"");function Nu(e,t,n="/"){let a,r={},o="",s="";const i=t.indexOf("#");let l=t.indexOf("?");return l=i>=0&&l>i?-1:l,l>=0&&(a=t.slice(0,l),o=t.slice(l,i>0?i:t.length),r=e(o.slice(1))),i>=0&&(a=a||t.slice(0,i),s=t.slice(i,t.length)),a=SS(a??t,n),{fullPath:a+o+s,path:a,query:r,hash:oi(s)}}function _S(e,t){const n=t.query?e(t.query):"";return t.path+(n&&"?")+n+(t.hash||"")}function _m(e,t){return!t||!e.toLowerCase().startsWith(t.toLowerCase())?e:e.slice(t.length)||"/"}function kS(e,t,n){const a=t.matched.length-1,r=n.matched.length-1;return a>-1&&a===r&&Ho(t.matched[a],n.matched[r])&&C1(t.params,n.params)&&e(t.query)===e(n.query)&&t.hash===n.hash}function Ho(e,t){return(e.aliasOf||e)===(t.aliasOf||t)}function C1(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(var n in e)if(!CS(e[n],t[n]))return!1;return!0}function CS(e,t){return Gn(e)?km(e,t):Gn(t)?km(t,e):e?.valueOf()===t?.valueOf()}function km(e,t){return Gn(t)?e.length===t.length&&e.every((n,a)=>n===t[a]):e.length===1&&e[0]===t}function SS(e,t){if(e.startsWith("/"))return e;if(!e)return t;const n=t.split("/"),a=e.split("/"),r=a[a.length-1];(r===".."||r===".")&&a.push("");let o=n.length-1,s,i;for(s=0;s<a.length;s++)if(i=a[s],i!==".")if(i==="..")o>1&&o--;else break;return n.slice(0,o).join("/")+"/"+a.slice(s).join("/")}const nr={path:"/",name:void 0,params:{},query:{},hash:"",fullPath:"/",matched:[],meta:{},redirectedFrom:void 0};let zd=(function(e){return e.pop="pop",e.push="push",e})({}),Fu=(function(e){return e.back="back",e.forward="forward",e.unknown="",e})({});function xS(e){if(!e)if(vo){const t=document.querySelector("base");e=t&&t.getAttribute("href")||"/",e=e.replace(/^\w+:\/\/[^\/]+/,"")}else e="/";return e[0]!=="/"&&e[0]!=="#"&&(e="/"+e),wS(e)}const AS=/^[^#]+#/;function PS(e,t){return e.replace(AS,"#")+t}function MS(e,t){const n=document.documentElement.getBoundingClientRect(),a=e.getBoundingClientRect();return{behavior:t.behavior,left:a.left-n.left-(t.left||0),top:a.top-n.top-(t.top||0)}}const Vc=()=>({left:window.scrollX,top:window.scrollY});function TS(e){let t;if("el"in e){const n=e.el,a=typeof n=="string"&&n.startsWith("#"),r=typeof n=="string"?a?document.getElementById(n.slice(1)):document.querySelector(n):n;if(!r)return;t=MS(r,e)}else t=e;"scrollBehavior"in document.documentElement.style?window.scrollTo(t):window.scrollTo(t.left!=null?t.left:window.scrollX,t.top!=null?t.top:window.scrollY)}function Cm(e,t){return(history.state?history.state.position-t:-1)+e}const jd=new Map;function IS(e,t){jd.set(e,t)}function DS(e){const t=jd.get(e);return jd.delete(e),t}function ES(e){return typeof e=="string"||e&&typeof e=="object"}function S1(e){return typeof e=="string"||typeof e=="symbol"}let St=(function(e){return e[e.MATCHER_NOT_FOUND=1]="MATCHER_NOT_FOUND",e[e.NAVIGATION_GUARD_REDIRECT=2]="NAVIGATION_GUARD_REDIRECT",e[e.NAVIGATION_ABORTED=4]="NAVIGATION_ABORTED",e[e.NAVIGATION_CANCELLED=8]="NAVIGATION_CANCELLED",e[e.NAVIGATION_DUPLICATED=16]="NAVIGATION_DUPLICATED",e})({});const x1=Symbol("");St.MATCHER_NOT_FOUND+"",St.NAVIGATION_GUARD_REDIRECT+"",St.NAVIGATION_ABORTED+"",St.NAVIGATION_CANCELLED+"",St.NAVIGATION_DUPLICATED+"";function Vo(e,t){return st(new Error,{type:e,[x1]:!0},t)}function ya(e,t){return e instanceof Error&&x1 in e&&(t==null||!!(e.type&t))}const $S=["params","query","hash"];function RS(e){if(typeof e=="string")return e;if(e.path!=null)return e.path;const t={};for(const n of $S)n in e&&(t[n]=e[n]);return JSON.stringify(t,null,2)}function LS(e){const t={};if(e===""||e==="?")return t;const n=(e[0]==="?"?e.slice(1):e).split("&");for(let a=0;a<n.length;++a){const r=n[a].replace(b1," "),o=r.indexOf("="),s=oi(o<0?r:r.slice(0,o)),i=o<0?null:oi(r.slice(o+1));if(s in t){let l=t[s];Gn(l)||(l=t[s]=[l]),l.push(i)}else t[s]=i}return t}function Sm(e){let t="";for(let n in e){const a=e[n];if(n=gS(n),a==null){a!==void 0&&(t+=(t.length?"&":"")+n);continue}(Gn(a)?a.map(r=>r&&Vd(r)):[a&&Vd(a)]).forEach(r=>{r!==void 0&&(t+=(t.length?"&":"")+n,r!=null&&(t+="="+r))})}return t}function OS(e){const t={};for(const n in e){const a=e[n];a!==void 0&&(t[n]=Gn(a)?a.map(r=>r==null?null:""+r):a==null?a:""+a)}return t}const NS=Symbol(""),xm=Symbol(""),zc=Symbol(""),op=Symbol(""),Wd=Symbol("");function Ps(){let e=[];function t(a){return e.push(a),()=>{const r=e.indexOf(a);r>-1&&e.splice(r,1)}}function n(){e=[]}return{add:t,list:()=>e.slice(),reset:n}}function ur(e,t,n,a,r,o=s=>s()){const s=a&&(a.enterCallbacks[r]=a.enterCallbacks[r]||[]);return()=>new Promise((i,l)=>{const c=h=>{h===!1?l(Vo(St.NAVIGATION_ABORTED,{from:n,to:t})):h instanceof Error?l(h):ES(h)?l(Vo(St.NAVIGATION_GUARD_REDIRECT,{from:t,to:h})):(s&&a.enterCallbacks[r]===s&&typeof h=="function"&&s.push(h),i())},u=o(()=>e.call(a&&a.instances[r],t,n,c));let d=Promise.resolve(u);e.length<3&&(d=d.then(c)),d.catch(h=>l(h))})}function qu(e,t,n,a,r=o=>o()){const o=[];for(const s of e)for(const i in s.components){let l=s.components[i];if(!(t!=="beforeRouteEnter"&&!s.instances[i]))if(v1(l)){const c=(l.__vccOpts||l)[t];c&&o.push(ur(c,n,a,s,i,r))}else{let c=l();o.push(()=>c.then(u=>{if(!u)throw new Error(`Couldn't resolve component "${i}" at "${s.path}"`);const d=oS(u)?u.default:u;s.mods[i]=u,s.components[i]=d;const h=(d.__vccOpts||d)[t];return h&&ur(h,n,a,s,i,r)()}))}}return o}function FS(e,t){const n=[],a=[],r=[],o=Math.max(t.matched.length,e.matched.length);for(let s=0;s<o;s++){const i=t.matched[s];i&&(e.matched.find(c=>Ho(c,i))?a.push(i):n.push(i));const l=e.matched[s];l&&(t.matched.find(c=>Ho(c,l))||r.push(l))}return[n,a,r]}let qS=()=>location.protocol+"//"+location.host;function A1(e,t){const{pathname:n,search:a,hash:r}=t,o=e.indexOf("#");if(o>-1){let s=r.includes(e.slice(o))?e.slice(o).length:1,i=r.slice(s);return i[0]!=="/"&&(i="/"+i),_m(i,"")}return _m(n,e)+a+r}function BS(e,t,n,a){let r=[],o=[],s=null;const i=({state:h})=>{const p=A1(e,location),m=n.value,v=t.value;let y=0;if(h){if(n.value=p,t.value=h,s&&s===m){s=null;return}y=v?h.position-v.position:0}else a(p);r.forEach(g=>{g(n.value,m,{delta:y,type:zd.pop,direction:y?y>0?Fu.forward:Fu.back:Fu.unknown})})};function l(){s=n.value}function c(h){r.push(h);const p=()=>{const m=r.indexOf(h);m>-1&&r.splice(m,1)};return o.push(p),p}function u(){if(document.visibilityState==="hidden"){const{history:h}=window;if(!h.state)return;h.replaceState(st({},h.state,{scroll:Vc()}),"")}}function d(){for(const h of o)h();o=[],window.removeEventListener("popstate",i),window.removeEventListener("pagehide",u),document.removeEventListener("visibilitychange",u)}return window.addEventListener("popstate",i),window.addEventListener("pagehide",u),document.addEventListener("visibilitychange",u),{pauseListeners:l,listen:c,destroy:d}}function Am(e,t,n,a=!1,r=!1){return{back:e,current:t,forward:n,replaced:a,position:window.history.length,scroll:r?Vc():null}}function HS(e){const{history:t,location:n}=window,a={value:A1(e,n)},r={value:t.state};r.value||o(a.value,{back:null,current:a.value,forward:null,position:t.length-1,replaced:!0,scroll:null},!0);function o(l,c,u){const d=e.indexOf("#"),h=d>-1?(n.host&&document.querySelector("base")?e:e.slice(d))+l:qS()+e+l;try{t[u?"replaceState":"pushState"](c,"",h),r.value=c}catch(p){console.error(p),n[u?"replace":"assign"](h)}}function s(l,c){o(l,st({},t.state,Am(r.value.back,l,r.value.forward,!0),c,{position:r.value.position}),!0),a.value=l}function i(l,c){const u=st({},r.value,t.state,{forward:l,scroll:Vc()});o(u.current,u,!0),o(l,st({},Am(a.value,l,null),{position:u.position+1},c),!1),a.value=l}return{location:a,state:r,push:i,replace:s}}function VS(e){e=xS(e);const t=HS(e),n=BS(e,t.state,t.location,t.replace);function a(o,s=!0){s||n.pauseListeners(),history.go(o)}const r=st({location:"",base:e,go:a,createHref:PS.bind(null,e)},t,n);return Object.defineProperty(r,"location",{enumerable:!0,get:()=>t.location.value}),Object.defineProperty(r,"state",{enumerable:!0,get:()=>t.state.value}),r}function zS(e){return e=location.host?e||location.pathname+location.search:"",e.includes("#")||(e+="#"),VS(e)}let Vr=(function(e){return e[e.Static=0]="Static",e[e.Param=1]="Param",e[e.Group=2]="Group",e})({});var Nt=(function(e){return e[e.Static=0]="Static",e[e.Param=1]="Param",e[e.ParamRegExp=2]="ParamRegExp",e[e.ParamRegExpEnd=3]="ParamRegExpEnd",e[e.EscapeNext=4]="EscapeNext",e})(Nt||{});const jS={type:Vr.Static,value:""},WS=/[a-zA-Z0-9_]/;function US(e){if(!e)return[[]];if(e==="/")return[[jS]];if(!e.startsWith("/"))throw new Error(`Invalid path "${e}"`);function t(p){throw new Error(`ERR (${n})/"${c}": ${p}`)}let n=Nt.Static,a=n;const r=[];let o;function s(){o&&r.push(o),o=[]}let i=0,l,c="",u="";function d(){c&&(n===Nt.Static?o.push({type:Vr.Static,value:c}):n===Nt.Param||n===Nt.ParamRegExp||n===Nt.ParamRegExpEnd?(o.length>1&&(l==="*"||l==="+")&&t(`A repeatable param (${c}) must be alone in its segment. eg: '/:ids+.`),o.push({type:Vr.Param,value:c,regexp:u,repeatable:l==="*"||l==="+",optional:l==="*"||l==="?"})):t("Invalid state to consume buffer"),c="")}function h(){c+=l}for(;i<e.length;){if(l=e[i++],l==="\\"&&n!==Nt.ParamRegExp){a=n,n=Nt.EscapeNext;continue}switch(n){case Nt.Static:l==="/"?(c&&d(),s()):l===":"?(d(),n=Nt.Param):h();break;case Nt.EscapeNext:h(),n=a;break;case Nt.Param:l==="("?n=Nt.ParamRegExp:WS.test(l)?h():(d(),n=Nt.Static,l!=="*"&&l!=="?"&&l!=="+"&&i--);break;case Nt.ParamRegExp:l===")"?u[u.length-1]=="\\"?u=u.slice(0,-1)+l:n=Nt.ParamRegExpEnd:u+=l;break;case Nt.ParamRegExpEnd:d(),n=Nt.Static,l!=="*"&&l!=="?"&&l!=="+"&&i--,u="";break;default:t("Unknown state");break}}return n===Nt.ParamRegExp&&t(`Unfinished custom RegExp for param "${c}"`),d(),s(),r}const Pm="[^/]+?",GS={sensitive:!1,strict:!1,start:!0,end:!0};var on=(function(e){return e[e._multiplier=10]="_multiplier",e[e.Root=90]="Root",e[e.Segment=40]="Segment",e[e.SubSegment=30]="SubSegment",e[e.Static=40]="Static",e[e.Dynamic=20]="Dynamic",e[e.BonusCustomRegExp=10]="BonusCustomRegExp",e[e.BonusWildcard=-50]="BonusWildcard",e[e.BonusRepeatable=-20]="BonusRepeatable",e[e.BonusOptional=-8]="BonusOptional",e[e.BonusStrict=.7000000000000001]="BonusStrict",e[e.BonusCaseSensitive=.25]="BonusCaseSensitive",e})(on||{});const YS=/[.+*?^${}()[\]/\\]/g;function KS(e,t){const n=st({},GS,t),a=[];let r=n.start?"^":"";const o=[];for(const c of e){const u=c.length?[]:[on.Root];n.strict&&!c.length&&(r+="/");for(let d=0;d<c.length;d++){const h=c[d];let p=on.Segment+(n.sensitive?on.BonusCaseSensitive:0);if(h.type===Vr.Static)d||(r+="/"),r+=h.value.replace(YS,"\\$&"),p+=on.Static;else if(h.type===Vr.Param){const{value:m,repeatable:v,optional:y,regexp:g}=h;o.push({name:m,repeatable:v,optional:y});const b=g||Pm;if(b!==Pm){p+=on.BonusCustomRegExp;try{`${b}`}catch(_){throw new Error(`Invalid custom RegExp for param "${m}" (${b}): `+_.message)}}let w=v?`((?:${b})(?:/(?:${b}))*)`:`(${b})`;d||(w=y&&c.length<2?`(?:/${w})`:"/"+w),y&&(w+="?"),r+=w,p+=on.Dynamic,y&&(p+=on.BonusOptional),v&&(p+=on.BonusRepeatable),b===".*"&&(p+=on.BonusWildcard)}u.push(p)}a.push(u)}if(n.strict&&n.end){const c=a.length-1;a[c][a[c].length-1]+=on.BonusStrict}n.strict||(r+="/?"),n.end?r+="$":n.strict&&!r.endsWith("/")&&(r+="(?:/|$)");const s=new RegExp(r,n.sensitive?"":"i");function i(c){const u=c.match(s),d={};if(!u)return null;for(let h=1;h<u.length;h++){const p=u[h]||"",m=o[h-1];d[m.name]=p&&m.repeatable?p.split("/"):p}return d}function l(c){let u="",d=!1;for(const h of e){(!d||!u.endsWith("/"))&&(u+="/"),d=!1;for(const p of h)if(p.type===Vr.Static)u+=p.value;else if(p.type===Vr.Param){const{value:m,repeatable:v,optional:y}=p,g=m in c?c[m]:"";if(Gn(g)&&!v)throw new Error(`Provided param "${m}" is an array but it is not repeatable (* or + modifiers)`);const b=Gn(g)?g.join("/"):g;if(!b)if(y)h.length<2&&(u.endsWith("/")?u=u.slice(0,-1):d=!0);else throw new Error(`Missing required param "${m}"`);u+=b}}return u||"/"}return{re:s,score:a,keys:o,parse:i,stringify:l}}function XS(e,t){let n=0;for(;n<e.length&&n<t.length;){const a=t[n]-e[n];if(a)return a;n++}return e.length<t.length?e.length===1&&e[0]===on.Static+on.Segment?-1:1:e.length>t.length?t.length===1&&t[0]===on.Static+on.Segment?1:-1:0}function P1(e,t){let n=0;const a=e.score,r=t.score;for(;n<a.length&&n<r.length;){const o=XS(a[n],r[n]);if(o)return o;n++}if(Math.abs(r.length-a.length)===1){if(Mm(a))return 1;if(Mm(r))return-1}return r.length-a.length}function Mm(e){const t=e[e.length-1];return e.length>0&&t[t.length-1]<0}const JS={strict:!1,end:!0,sensitive:!1};function QS(e,t,n){const a=KS(US(e.path),n),r=st(a,{record:e,parent:t,children:[],alias:[]});return t&&!r.record.aliasOf==!t.record.aliasOf&&t.children.push(r),r}function ZS(e,t){const n=[],a=new Map;t=wm(JS,t);function r(d){return a.get(d)}function o(d,h,p){const m=!p,v=Im(d);v.aliasOf=p&&p.record;const y=wm(t,d),g=[v];if("alias"in d){const _=typeof d.alias=="string"?[d.alias]:d.alias;for(const A of _)g.push(Im(st({},v,{components:p?p.record.components:v.components,path:A,aliasOf:p?p.record:v})))}let b,w;for(const _ of g){const{path:A}=_;if(h&&A[0]!=="/"){const P=h.record.path,k=P[P.length-1]==="/"?"":"/";_.path=h.record.path+(A&&k+A)}if(b=QS(_,h,y),p?p.alias.push(b):(w=w||b,w!==b&&w.alias.push(b),m&&d.name&&!Dm(b)&&s(d.name)),M1(b)&&l(b),v.children){const P=v.children;for(let k=0;k<P.length;k++)o(P[k],b,p&&p.children[k])}p=p||b}return w?()=>{s(w)}:js}function s(d){if(S1(d)){const h=a.get(d);h&&(a.delete(d),n.splice(n.indexOf(h),1),h.children.forEach(s),h.alias.forEach(s))}else{const h=n.indexOf(d);h>-1&&(n.splice(h,1),d.record.name&&a.delete(d.record.name),d.children.forEach(s),d.alias.forEach(s))}}function i(){return n}function l(d){const h=nx(d,n);n.splice(h,0,d),d.record.name&&!Dm(d)&&a.set(d.record.name,d)}function c(d,h){let p,m={},v,y;if("name"in d&&d.name){if(p=a.get(d.name),!p)throw Vo(St.MATCHER_NOT_FOUND,{location:d});y=p.record.name,m=st(Tm(h.params,p.keys.filter(w=>!w.optional).concat(p.parent?p.parent.keys.filter(w=>w.optional):[]).map(w=>w.name)),d.params&&Tm(d.params,p.keys.map(w=>w.name))),v=p.stringify(m)}else if(d.path!=null)v=d.path,p=n.find(w=>w.re.test(v)),p&&(m=p.parse(v),y=p.record.name);else{if(p=h.name?a.get(h.name):n.find(w=>w.re.test(h.path)),!p)throw Vo(St.MATCHER_NOT_FOUND,{location:d,currentLocation:h});y=p.record.name,m=st({},h.params,d.params),v=p.stringify(m)}const g=[];let b=p;for(;b;)g.unshift(b.record),b=b.parent;return{name:y,path:v,params:m,matched:g,meta:tx(g)}}e.forEach(d=>o(d));function u(){n.length=0,a.clear()}return{addRoute:o,resolve:c,removeRoute:s,clearRoutes:u,getRoutes:i,getRecordMatcher:r}}function Tm(e,t){const n={};for(const a of t)a in e&&(n[a]=e[a]);return n}function Im(e){const t={path:e.path,redirect:e.redirect,name:e.name,meta:e.meta||{},aliasOf:e.aliasOf,beforeEnter:e.beforeEnter,props:ex(e),children:e.children||[],instances:{},leaveGuards:new Set,updateGuards:new Set,enterCallbacks:{},components:"components"in e?e.components||null:e.component&&{default:e.component}};return Object.defineProperty(t,"mods",{value:{}}),t}function ex(e){const t={},n=e.props||!1;if("component"in e)t.default=n;else for(const a in e.components)t[a]=typeof n=="object"?n[a]:n;return t}function Dm(e){for(;e;){if(e.record.aliasOf)return!0;e=e.parent}return!1}function tx(e){return e.reduce((t,n)=>st(t,n.meta),{})}function nx(e,t){let n=0,a=t.length;for(;n!==a;){const o=n+a>>1;P1(e,t[o])<0?a=o:n=o+1}const r=ax(e);return r&&(a=t.lastIndexOf(r,a-1)),a}function ax(e){let t=e;for(;t=t.parent;)if(M1(t)&&P1(e,t)===0)return t}function M1({record:e}){return!!(e.name||e.components&&Object.keys(e.components).length||e.redirect)}function Em(e){const t=rt(zc),n=rt(op),a=S(()=>{const l=f(e.to);return t.resolve(l)}),r=S(()=>{const{matched:l}=a.value,{length:c}=l,u=l[c-1],d=n.matched;if(!u||!d.length)return-1;const h=d.findIndex(Ho.bind(null,u));if(h>-1)return h;const p=$m(l[c-2]);return c>1&&$m(u)===p&&d[d.length-1].path!==p?d.findIndex(Ho.bind(null,l[c-2])):h}),o=S(()=>r.value>-1&&ix(n.params,a.value.params)),s=S(()=>r.value>-1&&r.value===n.matched.length-1&&C1(n.params,a.value.params));function i(l={}){if(sx(l)){const c=t[f(e.replace)?"replace":"push"](f(e.to)).catch(js);return e.viewTransition&&typeof document<"u"&&"startViewTransition"in document&&document.startViewTransition(()=>c),c}return Promise.resolve()}return{route:a,href:S(()=>a.value.href),isActive:o,isExactActive:s,navigate:i}}function rx(e){return e.length===1?e[0]:e}const ox=Z({name:"RouterLink",compatConfig:{MODE:3},props:{to:{type:[String,Object],required:!0},replace:Boolean,activeClass:String,exactActiveClass:String,custom:Boolean,ariaCurrentValue:{type:String,default:"page"},viewTransition:Boolean},useLink:Em,setup(e,{slots:t}){const n=Rn(Em(e)),{options:a}=rt(zc),r=S(()=>({[Rm(e.activeClass,a.linkActiveClass,"router-link-active")]:n.isActive,[Rm(e.exactActiveClass,a.linkExactActiveClass,"router-link-exact-active")]:n.isExactActive}));return()=>{const o=t.default&&rx(t.default(n));return e.custom?o:Pn("a",{"aria-current":n.isExactActive?e.ariaCurrentValue:null,href:n.href,onClick:n.navigate,class:r.value},o)}}}),T1=ox;function sx(e){if(!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)&&!e.defaultPrevented&&!(e.button!==void 0&&e.button!==0)){if(e.currentTarget&&e.currentTarget.getAttribute){const t=e.currentTarget.getAttribute("target");if(/\b_blank\b/i.test(t))return}return e.preventDefault&&e.preventDefault(),!0}}function ix(e,t){for(const n in t){const a=t[n],r=e[n];if(typeof a=="string"){if(a!==r)return!1}else if(!Gn(r)||r.length!==a.length||a.some((o,s)=>o.valueOf()!==r[s].valueOf()))return!1}return!0}function $m(e){return e?e.aliasOf?e.aliasOf.path:e.path:""}const Rm=(e,t,n)=>e??t??n,lx=Z({name:"RouterView",inheritAttrs:!1,props:{name:{type:String,default:"default"},route:Object},compatConfig:{MODE:3},setup(e,{attrs:t,slots:n}){const a=rt(Wd),r=S(()=>e.route||a.value),o=rt(xm,0),s=S(()=>{let c=f(o);const{matched:u}=r.value;let d;for(;(d=u[c])&&!d.components;)c++;return c}),i=S(()=>r.value.matched[s.value]);An(xm,S(()=>s.value+1)),An(NS,i),An(Wd,r);const l=V();return Se(()=>[l.value,i.value,e.name],([c,u,d],[h,p,m])=>{u&&(u.instances[d]=c,p&&p!==u&&c&&c===h&&(u.leaveGuards.size||(u.leaveGuards=p.leaveGuards),u.updateGuards.size||(u.updateGuards=p.updateGuards))),c&&u&&(!p||!Ho(u,p)||!h)&&(u.enterCallbacks[d]||[]).forEach(v=>v(c))},{flush:"post"}),()=>{const c=r.value,u=e.name,d=i.value,h=d&&d.components[u];if(!h)return Lm(n.default,{Component:h,route:c});const p=d.props[u],m=p?p===!0?c.params:typeof p=="function"?p(c):p:null,y=Pn(h,st({},m,t,{onVnodeUnmounted:g=>{g.component.isUnmounted&&(d.instances[u]=null)},ref:l}));return Lm(n.default,{Component:y,route:c})||y}}});function Lm(e,t){if(!e)return null;const n=e(t);return n.length===1?n[0]:n}const cx=lx;function ux(e){const t=ZS(e.routes,e),n=e.parseQuery||LS,a=e.stringifyQuery||Sm,r=e.history,o=Ps(),s=Ps(),i=Ps(),l=at(nr);let c=nr;vo&&e.scrollBehavior&&"scrollRestoration"in history&&(history.scrollRestoration="manual");const u=Ou.bind(null,X=>""+X),d=Ou.bind(null,yS),h=Ou.bind(null,oi);function p(X,le){let se,pe;return S1(X)?(se=t.getRecordMatcher(X),pe=le):pe=X,t.addRoute(pe,se)}function m(X){const le=t.getRecordMatcher(X);le&&t.removeRoute(le)}function v(){return t.getRoutes().map(X=>X.record)}function y(X){return!!t.getRecordMatcher(X)}function g(X,le){if(le=st({},le||l.value),typeof X=="string"){const J=Nu(n,X,le.path),W=t.resolve({path:J.path},le),U=r.createHref(J.fullPath);return st(J,W,{params:h(W.params),hash:oi(J.hash),redirectedFrom:void 0,href:U})}let se;if(X.path!=null)se=st({},X,{path:Nu(n,X.path,le.path).path});else{const J=st({},X.params);for(const W in J)J[W]==null&&delete J[W];se=st({},X,{params:d(J)}),le.params=d(le.params)}const pe=t.resolve(se,le),Pe=X.hash||"";pe.params=u(h(pe.params));const $=_S(a,st({},X,{hash:mS(Pe),path:pe.path})),B=r.createHref($);return st({fullPath:$,hash:Pe,query:a===Sm?OS(X.query):X.query||{}},pe,{redirectedFrom:void 0,href:B})}function b(X){return typeof X=="string"?Nu(n,X,l.value.path):st({},X)}function w(X,le){if(c!==X)return Vo(St.NAVIGATION_CANCELLED,{from:le,to:X})}function _(X){return k(X)}function A(X){return _(st(b(X),{replace:!0}))}function P(X,le){const se=X.matched[X.matched.length-1];if(se&&se.redirect){const{redirect:pe}=se;let Pe=typeof pe=="function"?pe(X,le):pe;return typeof Pe=="string"&&(Pe=Pe.includes("?")||Pe.includes("#")?Pe=b(Pe):{path:Pe},Pe.params={}),st({query:X.query,hash:X.hash,params:Pe.path!=null?{}:X.params},Pe)}}function k(X,le){const se=c=g(X),pe=l.value,Pe=X.state,$=X.force,B=X.replace===!0,J=P(se,pe);if(J)return k(st(b(J),{state:typeof J=="object"?st({},Pe,J.state):Pe,force:$,replace:B}),le||se);const W=se;W.redirectedFrom=le;let U;return!$&&kS(a,pe,se)&&(U=Vo(St.NAVIGATION_DUPLICATED,{to:W,from:pe}),ce(pe,pe,!0,!1)),(U?Promise.resolve(U):Y(W,pe)).catch(ne=>ya(ne)?ya(ne,St.NAVIGATION_GUARD_REDIRECT)?ne:K(ne):L(ne,W,pe)).then(ne=>{if(ne){if(ya(ne,St.NAVIGATION_GUARD_REDIRECT))return k(st({replace:B},b(ne.to),{state:typeof ne.to=="object"?st({},Pe,ne.to.state):Pe,force:$}),le||W)}else ne=z(W,pe,!0,B,Pe);return Q(W,pe,ne),ne})}function T(X,le){const se=w(X,le);return se?Promise.reject(se):Promise.resolve()}function I(X){const le=ge.values().next().value;return le&&typeof le.runWithContext=="function"?le.runWithContext(X):X()}function Y(X,le){let se;const[pe,Pe,$]=FS(X,le);se=qu(pe.reverse(),"beforeRouteLeave",X,le);for(const J of pe)J.leaveGuards.forEach(W=>{se.push(ur(W,X,le))});const B=T.bind(null,X,le);return se.push(B),me(se).then(()=>{se=[];for(const J of o.list())se.push(ur(J,X,le));return se.push(B),me(se)}).then(()=>{se=qu(Pe,"beforeRouteUpdate",X,le);for(const J of Pe)J.updateGuards.forEach(W=>{se.push(ur(W,X,le))});return se.push(B),me(se)}).then(()=>{se=[];for(const J of $)if(J.beforeEnter)if(Gn(J.beforeEnter))for(const W of J.beforeEnter)se.push(ur(W,X,le));else se.push(ur(J.beforeEnter,X,le));return se.push(B),me(se)}).then(()=>(X.matched.forEach(J=>J.enterCallbacks={}),se=qu($,"beforeRouteEnter",X,le,I),se.push(B),me(se))).then(()=>{se=[];for(const J of s.list())se.push(ur(J,X,le));return se.push(B),me(se)}).catch(J=>ya(J,St.NAVIGATION_CANCELLED)?J:Promise.reject(J))}function Q(X,le,se){i.list().forEach(pe=>I(()=>pe(X,le,se)))}function z(X,le,se,pe,Pe){const $=w(X,le);if($)return $;const B=le===nr,J=vo?history.state:{};se&&(pe||B?r.replace(X.fullPath,st({scroll:B&&J&&J.scroll},Pe)):r.push(X.fullPath,Pe)),l.value=X,ce(X,le,se,B),K()}let te;function O(){te||(te=r.listen((X,le,se)=>{if(!we.listening)return;const pe=g(X),Pe=P(pe,we.currentRoute.value);if(Pe){k(st(Pe,{replace:!0,force:!0}),pe).catch(js);return}c=pe;const $=l.value;vo&&IS(Cm($.fullPath,se.delta),Vc()),Y(pe,$).catch(B=>ya(B,St.NAVIGATION_ABORTED|St.NAVIGATION_CANCELLED)?B:ya(B,St.NAVIGATION_GUARD_REDIRECT)?(k(st(b(B.to),{force:!0}),pe).then(J=>{ya(J,St.NAVIGATION_ABORTED|St.NAVIGATION_DUPLICATED)&&!se.delta&&se.type===zd.pop&&r.go(-1,!1)}).catch(js),Promise.reject()):(se.delta&&r.go(-se.delta,!1),L(B,pe,$))).then(B=>{B=B||z(pe,$,!1),B&&(se.delta&&!ya(B,St.NAVIGATION_CANCELLED)?r.go(-se.delta,!1):se.type===zd.pop&&ya(B,St.NAVIGATION_ABORTED|St.NAVIGATION_DUPLICATED)&&r.go(-1,!1)),Q(pe,$,B)}).catch(js)}))}let D=Ps(),q=Ps(),G;function L(X,le,se){K(X);const pe=q.list();return pe.length?pe.forEach(Pe=>Pe(X,le,se)):console.error(X),Promise.reject(X)}function ee(){return G&&l.value!==nr?Promise.resolve():new Promise((X,le)=>{D.add([X,le])})}function K(X){return G||(G=!X,O(),D.list().forEach(([le,se])=>X?se(X):le()),D.reset()),X}function ce(X,le,se,pe){const{scrollBehavior:Pe}=e;if(!vo||!Pe)return Promise.resolve();const $=!se&&DS(Cm(X.fullPath,0))||(pe||!se)&&history.state&&history.state.scroll||null;return Ve().then(()=>Pe(X,le,$)).then(B=>B&&TS(B)).catch(B=>L(B,X,le))}const ue=X=>r.go(X);let be;const ge=new Set,we={currentRoute:l,listening:!0,addRoute:p,removeRoute:m,clearRoutes:t.clearRoutes,hasRoute:y,getRoutes:v,resolve:g,options:e,push:_,replace:A,go:ue,back:()=>ue(-1),forward:()=>ue(1),beforeEach:o.add,beforeResolve:s.add,afterEach:i.add,onError:q.add,isReady:ee,install(X){X.component("RouterLink",T1),X.component("RouterView",cx),X.config.globalProperties.$router=we,Object.defineProperty(X.config.globalProperties,"$route",{enumerable:!0,get:()=>f(l)}),vo&&!be&&l.value===nr&&(be=!0,_(r.location).catch(pe=>{}));const le={};for(const pe in nr)Object.defineProperty(le,pe,{get:()=>l.value[pe],enumerable:!0});X.provide(zc,we),X.provide(op,Bf(le)),X.provide(Wd,l);const se=X.unmount;ge.add(X),X.unmount=function(){ge.delete(X),ge.size<1&&(c=nr,te&&te(),te=null,l.value=nr,be=!1,G=!1),se()}}};function me(X){return X.reduce((le,se)=>le.then(()=>I(se)),Promise.resolve())}return we}function sp(){return rt(zc)}function jc(e){return rt(op)}const dx=[50,100,200,300,400,500,600,700,800,900,950];function fx(e,t){return e in Yi&&typeof Yi[e]=="object"&&t in Yi[e]?Yi[e][t]:""}function px(e,t,n){const a=n?`${n}-`:"";return`${dx.map(r=>`--ui-color-${e}-${r}: var(--${a}color-${t==="neutral"?"old-neutral":t}-${r}, ${fx(t,r)});`).join(`
3
- `)}`}function Om(e,t){return`--ui-${e}: var(--ui-color-${e}-${t});`}function hx(){document.querySelector("[data-nuxt-ui-colors]")?.remove()}const mx=rS(()=>{const e=zt();aS();const t=S(()=>{const{neutral:a,...r}=e.ui.colors,o=e.ui.prefix;return`@layer theme {
4
- :root, :host {
5
- ${Object.entries(e.ui.colors).map(([s,i])=>px(s,i,o)).join(`
6
- `)}
7
- }
8
- :root, :host, .light {
9
- ${Object.keys(r).map(s=>Om(s,500)).join(`
10
- `)}
11
- }
12
- .dark {
13
- ${Object.keys(r).map(s=>Om(s,400)).join(`
14
- `)}
15
- }
16
- }`}),n={style:[{innerHTML:t,tagPriority:"critical",id:"nuxt-ui-colors"}]};{const a=document.createElement("style");a.innerHTML=t.value,a.setAttribute("data-nuxt-ui-colors",""),document.head.appendChild(a),o1().hooks.hookOnce("dom:rendered",hx)}H3(n)}),gx={install(){RC()}},vx={install(e,t={}){e.use(j3,t),e.use(W3,t),e.use(mx,t),e.use(gx,t)}},yx="modulepreload",bx=function(e){return"/"+e},Nm={},Ke=function(t,n,a){let r=Promise.resolve();if(n&&n.length>0){let l=function(c){return Promise.all(c.map(u=>Promise.resolve(u).then(d=>({status:"fulfilled",value:d}),d=>({status:"rejected",reason:d}))))};document.getElementsByTagName("link");const s=document.querySelector("meta[property=csp-nonce]"),i=s?.nonce||s?.getAttribute("nonce");r=l(n.map(c=>{if(c=bx(c),c in Nm)return;Nm[c]=!0;const u=c.endsWith(".css"),d=u?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${c}"]${d}`))return;const h=document.createElement("link");if(h.rel=u?"stylesheet":yx,u||(h.as="script"),h.crossOrigin="",h.href=c,i&&h.setAttribute("nonce",i),document.head.appendChild(h),u)return new Promise((p,m)=>{h.addEventListener("load",p),h.addEventListener("error",()=>m(new Error(`Unable to preload CSS for ${c}`)))})}))}function o(s){const i=new Event("vite:preloadError",{cancelable:!0});if(i.payload=s,window.dispatchEvent(i),!i.defaultPrevented)throw s}return r.then(s=>{for(const i of s||[])i.status==="rejected"&&o(i.reason);return t().catch(o)})};function pt(e,t){const n=typeof e=="string"&&!t?`${e}Context`:t,a=Symbol(n);return[s=>{const i=rt(a,s);if(i||i===null)return i;throw new Error(`Injection \`${a.toString()}\` not found. Component must be used within ${Array.isArray(e)?`one of the following components: ${e.join(", ")}`:`\`${e}\``}`)},s=>(An(a,s),s)]}function $t(){let e=document.activeElement;if(e==null)return null;for(;e!=null&&e.shadowRoot!=null&&e.shadowRoot.activeElement!=null;)e=e.shadowRoot.activeElement;return e}function I1(e,t,n){const a=n.originalEvent.target,r=new CustomEvent(e,{bubbles:!1,cancelable:!0,detail:n});t&&a.addEventListener(e,t,{once:!0}),a.dispatchEvent(r)}function ip(e){return e==null}function lp(e){return e?e.flatMap(t=>t.type===ze?lp(t.children):[t]):[]}const wx=["INPUT","TEXTAREA"];function Fm(e,t,n,a={}){if(!t||a.enableIgnoredElement&&wx.includes(t.nodeName))return null;const{arrowKeyOptions:r="both",attributeName:o="[data-reka-collection-item]",itemsArray:s=[],loop:i=!0,dir:l="ltr",preventScroll:c=!0,focus:u=!1}=a,[d,h,p,m,v,y]=[e.key==="ArrowRight",e.key==="ArrowLeft",e.key==="ArrowUp",e.key==="ArrowDown",e.key==="Home",e.key==="End"],g=p||m,b=d||h;if(!v&&!y&&(!g&&!b||r==="vertical"&&b||r==="horizontal"&&g))return null;const w=n?Array.from(n.querySelectorAll(o)):s;if(!w.length)return null;c&&e.preventDefault();let _=null;return b||g?_=D1(w,t,{goForward:g?m:l==="ltr"?d:h,loop:i}):v?_=w.at(0)||null:y&&(_=w.at(-1)||null),u&&_?.focus(),_}function D1(e,t,n,a=e.includes(t)?e.length:e.length+1){if(--a===0)return null;const r=e.indexOf(t);let o;if(r===-1?o=n.goForward?0:e.length-1:o=n.goForward?r+1:r-1,!n.loop&&(o<0||o>=e.length))return null;const s=(o+e.length)%e.length,i=e[s];return i?i.hasAttribute("disabled")&&i.getAttribute("disabled")!=="false"?D1(e,i,n,a):i:null}const[Wc,_x]=pt("ConfigProvider");var kx=Z({inheritAttrs:!1,__name:"ConfigProvider",props:{dir:{type:String,required:!1,default:"ltr"},locale:{type:String,required:!1,default:"en"},scrollBody:{type:[Boolean,Object],required:!1,default:!0},nonce:{type:String,required:!1,default:void 0},useId:{type:Function,required:!1,default:void 0}},setup(e){const t=e,{dir:n,locale:a,scrollBody:r,nonce:o}=kt(t);return _x({dir:n,locale:a,scrollBody:r,nonce:o,useId:t.useId}),(s,i)=>j(s.$slots,"default")}}),Cx=kx;const Sx=Ii(()=>{const e=V(new Map),t=V(),n=S(()=>{for(const s of e.value.values())if(s)return!0;return!1}),a=Wc({scrollBody:V(!0)});let r=null;const o=()=>{document.body.style.paddingRight="",document.body.style.marginRight="",document.body.style.pointerEvents="",document.documentElement.style.removeProperty("--scrollbar-width"),document.body.style.overflow=t.value??"",fm&&r?.(),t.value=void 0};return Se(n,(s,i)=>{if(!On)return;if(!s){i&&o();return}t.value===void 0&&(t.value=document.body.style.overflow);const l=window.innerWidth-document.documentElement.clientWidth,c={padding:l,margin:0},u=a.scrollBody?.value?typeof a.scrollBody.value=="object"?Un({padding:a.scrollBody.value.padding===!0?l:a.scrollBody.value.padding,margin:a.scrollBody.value.margin===!0?l:a.scrollBody.value.margin},c):c:{padding:0,margin:0};l>0&&(document.body.style.paddingRight=typeof u.padding=="number"?`${u.padding}px`:String(u.padding),document.body.style.marginRight=typeof u.margin=="number"?`${u.margin}px`:String(u.margin),document.documentElement.style.setProperty("--scrollbar-width",`${l}px`),document.body.style.overflow="hidden"),fm&&(r=Kt(document,"touchmove",d=>xx(d),{passive:!1})),Ve(()=>{n.value&&(document.body.style.pointerEvents="none",document.body.style.overflow="hidden")})},{immediate:!0,flush:"sync"}),e});function cp(e){const t=Math.random().toString(36).substring(2,7),n=Sx();n.value.set(t,e??!1);const a=S({get:()=>n.value.get(t)??!1,set:r=>n.value.set(t,r)});return fC(()=>{n.value.delete(t)}),a}function E1(e){const t=window.getComputedStyle(e);if(t.overflowX==="scroll"||t.overflowY==="scroll"||t.overflowX==="auto"&&e.clientWidth<e.scrollWidth||t.overflowY==="auto"&&e.clientHeight<e.scrollHeight)return!0;{const n=e.parentNode;return!(n instanceof Element)||n.tagName==="BODY"?!1:E1(n)}}function xx(e){const t=e||window.event,n=t.target;return n instanceof Element&&E1(n)?!1:t.touches.length>1?!0:(t.preventDefault&&t.cancelable&&t.preventDefault(),!1)}function Do(e,t){return e-t*Math.floor(e/t)}const $1=1721426;function zr(e,t,n,a){t=Di(e,t);let r=t-1,o=-2;return n<=2?o=0:mr(t)&&(o=-1),$1-1+365*r+Math.floor(r/4)-Math.floor(r/100)+Math.floor(r/400)+Math.floor((367*n-362)/12+o+a)}function mr(e){return e%4===0&&(e%100!==0||e%400===0)}function Di(e,t){return e==="BC"?1-t:t}function Uc(e){let t="AD";return e<=0&&(t="BC",e=1-e),[t,e]}const Ax={standard:[31,28,31,30,31,30,31,31,30,31,30,31],leapyear:[31,29,31,30,31,30,31,31,30,31,30,31]};class Yn{fromJulianDay(t){let n=t,a=n-$1,r=Math.floor(a/146097),o=Do(a,146097),s=Math.floor(o/36524),i=Do(o,36524),l=Math.floor(i/1461),c=Do(i,1461),u=Math.floor(c/365),d=r*400+s*100+l*4+u+(s!==4&&u!==4?1:0),[h,p]=Uc(d),m=n-zr(h,p,1,1),v=2;n<zr(h,p,3,1)?v=0:mr(p)&&(v=1);let y=Math.floor(((m+v)*12+373)/367),g=n-zr(h,p,y,1)+1;return new Ct(h,p,y,g)}toJulianDay(t){return zr(t.era,t.year,t.month,t.day)}getDaysInMonth(t){return Ax[mr(t.year)?"leapyear":"standard"][t.month-1]}getMonthsInYear(t){return 12}getDaysInYear(t){return mr(t.year)?366:365}getMaximumMonthsInYear(){return 12}getMaximumDaysInMonth(){return 31}getYearsInEra(t){return 9999}getEras(){return["BC","AD"]}isInverseEra(t){return t.era==="BC"}balanceDate(t){t.year<=0&&(t.era=t.era==="BC"?"AD":"BC",t.year=1-t.year)}constructor(){this.identifier="gregory"}}const Px={"001":1,AD:1,AE:6,AF:6,AI:1,AL:1,AM:1,AN:1,AR:1,AT:1,AU:1,AX:1,AZ:1,BA:1,BE:1,BG:1,BH:6,BM:1,BN:1,BY:1,CH:1,CL:1,CM:1,CN:1,CR:1,CY:1,CZ:1,DE:1,DJ:6,DK:1,DZ:6,EC:1,EE:1,EG:6,ES:1,FI:1,FJ:1,FO:1,FR:1,GB:1,GE:1,GF:1,GP:1,GR:1,HR:1,HU:1,IE:1,IQ:6,IR:6,IS:1,IT:1,JO:6,KG:1,KW:6,KZ:1,LB:1,LI:1,LK:1,LT:1,LU:1,LV:1,LY:6,MC:1,MD:1,ME:1,MK:1,MN:1,MQ:1,MV:5,MY:1,NL:1,NO:1,NZ:1,OM:6,PL:1,QA:6,RE:1,RO:1,RS:1,RU:1,SD:6,SE:1,SI:1,SK:1,SM:1,SY:6,TJ:1,TM:1,TR:1,UA:1,UY:1,UZ:1,VA:1,VN:1,XK:1};function xt(e,t){return t=Ht(t,e.calendar),e.era===t.era&&e.year===t.year&&e.month===t.month&&e.day===t.day}function Gc(e,t){return t=Ht(t,e.calendar),e=jo(e),t=jo(t),e.era===t.era&&e.year===t.year&&e.month===t.month}function fr(e,t){return up(e.calendar,t.calendar)&&xt(e,t)}function qm(e,t){return up(e.calendar,t.calendar)&&Gc(e,t)}function up(e,t){var n,a,r,o;return(o=(r=(n=e.isEqual)===null||n===void 0?void 0:n.call(e,t))!==null&&r!==void 0?r:(a=t.isEqual)===null||a===void 0?void 0:a.call(t,e))!==null&&o!==void 0?o:e.identifier===t.identifier}function R1(e,t){return xt(e,os(t))}const Mx={sun:0,mon:1,tue:2,wed:3,thu:4,fri:5,sat:6};function zo(e,t,n){let a=e.calendar.toJulianDay(e),r=n?Mx[n]:Ex(t),o=Math.ceil(a+1-r)%7;return o<0&&(o+=7),o}function Tx(e){return Da(Date.now(),e)}function os(e){return Lx(Tx(e))}function L1(e,t){return e.calendar.toJulianDay(e)-t.calendar.toJulianDay(t)}function Ix(e,t){return Bm(e)-Bm(t)}function Bm(e){return e.hour*36e5+e.minute*6e4+e.second*1e3+e.millisecond}let Bu=null;function pa(){return Bu==null&&(Bu=new Intl.DateTimeFormat().resolvedOptions().timeZone),Bu}function jo(e){return e.subtract({days:e.day-1})}function za(e){return e.add({days:e.calendar.getDaysInMonth(e)-e.day})}function La(e){return jo(e.subtract({months:e.month-1}))}function Jr(e){return za(e.add({months:e.calendar.getMonthsInYear(e)-e.month}))}function Hm(e,t,n){let a=zo(e,t,n);return e.subtract({days:a})}const Vm=new Map,Hu=new Map;function Dx(e){if(Intl.Locale){let n=Vm.get(e);return n||(n=new Intl.Locale(e).maximize().region,n&&Vm.set(e,n)),n}let t=e.split("-")[1];return t==="u"?void 0:t}function Ex(e){let t=Hu.get(e);if(!t){if(Intl.Locale){let a=new Intl.Locale(e);if("getWeekInfo"in a&&(t=a.getWeekInfo(),t))return Hu.set(e,t),t.firstDay}let n=Dx(e);if(e.includes("-fw-")){let a=e.split("-fw-")[1].split("-")[0];a==="mon"?t={firstDay:1}:a==="tue"?t={firstDay:2}:a==="wed"?t={firstDay:3}:a==="thu"?t={firstDay:4}:a==="fri"?t={firstDay:5}:a==="sat"?t={firstDay:6}:t={firstDay:0}}else e.includes("-ca-iso8601")?t={firstDay:1}:t={firstDay:n&&Px[n]||0};Hu.set(e,t)}return t.firstDay}function Wo(e){e=Ht(e,new Yn);let t=Di(e.era,e.year);return O1(t,e.month,e.day,e.hour,e.minute,e.second,e.millisecond)}function O1(e,t,n,a,r,o,s){let i=new Date;return i.setUTCHours(a,r,o,s),i.setUTCFullYear(e,t-1,n),i.getTime()}function Ud(e,t){if(t==="UTC")return 0;if(e>0&&t===pa())return new Date(e).getTimezoneOffset()*-6e4;let{year:n,month:a,day:r,hour:o,minute:s,second:i}=N1(e,t);return O1(n,a,r,o,s,i,0)-Math.floor(e/1e3)*1e3}const zm=new Map;function N1(e,t){let n=zm.get(t);n||(n=new Intl.DateTimeFormat("en-US",{timeZone:t,hour12:!1,era:"short",year:"numeric",month:"numeric",day:"numeric",hour:"numeric",minute:"numeric",second:"numeric"}),zm.set(t,n));let a=n.formatToParts(new Date(e)),r={};for(let o of a)o.type!=="literal"&&(r[o.type]=o.value);return{year:r.era==="BC"||r.era==="B"?-r.year+1:+r.year,month:+r.month,day:+r.day,hour:r.hour==="24"?0:+r.hour,minute:+r.minute,second:+r.second}}const jm=864e5;function $x(e,t,n,a){return(n===a?[n]:[n,a]).filter(o=>Rx(e,t,o))}function Rx(e,t,n){let a=N1(n,t);return e.year===a.year&&e.month===a.month&&e.day===a.day&&e.hour===a.hour&&e.minute===a.minute&&e.second===a.second}function Ta(e,t,n="compatible"){let a=Uo(e);if(t==="UTC")return Wo(a);if(t===pa()&&n==="compatible"){a=Ht(a,new Yn);let l=new Date,c=Di(a.era,a.year);return l.setFullYear(c,a.month-1,a.day),l.setHours(a.hour,a.minute,a.second,a.millisecond),l.getTime()}let r=Wo(a),o=Ud(r-jm,t),s=Ud(r+jm,t),i=$x(a,t,r-o,r-s);if(i.length===1)return i[0];if(i.length>1)switch(n){case"compatible":case"earlier":return i[0];case"later":return i[i.length-1];case"reject":throw new RangeError("Multiple possible absolute times found")}switch(n){case"earlier":return Math.min(r-o,r-s);case"compatible":case"later":return Math.max(r-o,r-s);case"reject":throw new RangeError("No such absolute time found")}}function F1(e,t,n="compatible"){return new Date(Ta(e,t,n))}function Da(e,t){let n=Ud(e,t),a=new Date(e+n),r=a.getUTCFullYear(),o=a.getUTCMonth()+1,s=a.getUTCDate(),i=a.getUTCHours(),l=a.getUTCMinutes(),c=a.getUTCSeconds(),u=a.getUTCMilliseconds();return new Yo(r<1?"BC":"AD",r<1?-r+1:r,o,s,t,n,i,l,c,u)}function Lx(e){return new Ct(e.calendar,e.era,e.year,e.month,e.day)}function Uo(e,t){let n=0,a=0,r=0,o=0;if("timeZone"in e)({hour:n,minute:a,second:r,millisecond:o}=e);else if("hour"in e&&!t)return e;return t&&({hour:n,minute:a,second:r,millisecond:o}=t),new Go(e.calendar,e.era,e.year,e.month,e.day,n,a,r,o)}function Ht(e,t){if(up(e.calendar,t))return e;let n=t.fromJulianDay(e.calendar.toJulianDay(e)),a=e.copy();return a.calendar=t,a.era=n.era,a.year=n.year,a.month=n.month,a.day=n.day,Zr(a),a}function Ox(e,t,n){if(e instanceof Yo)return e.timeZone===t?e:Fx(e,t);let a=Ta(e,t,n);return Da(a,t)}function Nx(e){let t=Wo(e)-e.offset;return new Date(t)}function Fx(e,t){let n=Wo(e)-e.offset;return Ht(Da(n,t),e.calendar)}const Ms=36e5;function Yc(e,t){let n=e.copy(),a="hour"in n?Vx(n,t):0;Gd(n,t.years||0),n.calendar.balanceYearMonth&&n.calendar.balanceYearMonth(n,e),n.month+=t.months||0,Yd(n),q1(n),n.day+=(t.weeks||0)*7,n.day+=t.days||0,n.day+=a,qx(n),n.calendar.balanceDate&&n.calendar.balanceDate(n),n.year<1&&(n.year=1,n.month=1,n.day=1);let r=n.calendar.getYearsInEra(n);if(n.year>r){var o,s;let l=(o=(s=n.calendar).isInverseEra)===null||o===void 0?void 0:o.call(s,n);n.year=r,n.month=l?1:n.calendar.getMonthsInYear(n),n.day=l?1:n.calendar.getDaysInMonth(n)}n.month<1&&(n.month=1,n.day=1);let i=n.calendar.getMonthsInYear(n);return n.month>i&&(n.month=i,n.day=n.calendar.getDaysInMonth(n)),n.day=Math.max(1,Math.min(n.calendar.getDaysInMonth(n),n.day)),n}function Gd(e,t){var n,a;!((n=(a=e.calendar).isInverseEra)===null||n===void 0)&&n.call(a,e)&&(t=-t),e.year+=t}function Yd(e){for(;e.month<1;)Gd(e,-1),e.month+=e.calendar.getMonthsInYear(e);let t=0;for(;e.month>(t=e.calendar.getMonthsInYear(e));)e.month-=t,Gd(e,1)}function qx(e){for(;e.day<1;)e.month--,Yd(e),e.day+=e.calendar.getDaysInMonth(e);for(;e.day>e.calendar.getDaysInMonth(e);)e.day-=e.calendar.getDaysInMonth(e),e.month++,Yd(e)}function q1(e){e.month=Math.max(1,Math.min(e.calendar.getMonthsInYear(e),e.month)),e.day=Math.max(1,Math.min(e.calendar.getDaysInMonth(e),e.day))}function Zr(e){e.calendar.constrainDate&&e.calendar.constrainDate(e),e.year=Math.max(1,Math.min(e.calendar.getYearsInEra(e),e.year)),q1(e)}function B1(e){let t={};for(let n in e)typeof e[n]=="number"&&(t[n]=-e[n]);return t}function H1(e,t){return Yc(e,B1(t))}function dp(e,t){let n=e.copy();return t.era!=null&&(n.era=t.era),t.year!=null&&(n.year=t.year),t.month!=null&&(n.month=t.month),t.day!=null&&(n.day=t.day),Zr(n),n}function tc(e,t){let n=e.copy();return t.hour!=null&&(n.hour=t.hour),t.minute!=null&&(n.minute=t.minute),t.second!=null&&(n.second=t.second),t.millisecond!=null&&(n.millisecond=t.millisecond),Hx(n),n}function Bx(e){e.second+=Math.floor(e.millisecond/1e3),e.millisecond=Qi(e.millisecond,1e3),e.minute+=Math.floor(e.second/60),e.second=Qi(e.second,60),e.hour+=Math.floor(e.minute/60),e.minute=Qi(e.minute,60);let t=Math.floor(e.hour/24);return e.hour=Qi(e.hour,24),t}function Hx(e){e.millisecond=Math.max(0,Math.min(e.millisecond,1e3)),e.second=Math.max(0,Math.min(e.second,59)),e.minute=Math.max(0,Math.min(e.minute,59)),e.hour=Math.max(0,Math.min(e.hour,23))}function Qi(e,t){let n=e%t;return n<0&&(n+=t),n}function Vx(e,t){return e.hour+=t.hours||0,e.minute+=t.minutes||0,e.second+=t.seconds||0,e.millisecond+=t.milliseconds||0,Bx(e)}function fp(e,t,n,a){let r=e.copy();switch(t){case"era":{let i=e.calendar.getEras(),l=i.indexOf(e.era);if(l<0)throw new Error("Invalid era: "+e.era);l=Ea(l,n,0,i.length-1,a?.round),r.era=i[l],Zr(r);break}case"year":var o,s;!((o=(s=r.calendar).isInverseEra)===null||o===void 0)&&o.call(s,r)&&(n=-n),r.year=Ea(e.year,n,-1/0,9999,a?.round),r.year===-1/0&&(r.year=1),r.calendar.balanceYearMonth&&r.calendar.balanceYearMonth(r,e);break;case"month":r.month=Ea(e.month,n,1,e.calendar.getMonthsInYear(e),a?.round);break;case"day":r.day=Ea(e.day,n,1,e.calendar.getDaysInMonth(e),a?.round);break;default:throw new Error("Unsupported field "+t)}return e.calendar.balanceDate&&e.calendar.balanceDate(r),Zr(r),r}function V1(e,t,n,a){let r=e.copy();switch(t){case"hour":{let o=e.hour,s=0,i=23;if(a?.hourCycle===12){let l=o>=12;s=l?12:0,i=l?23:11}r.hour=Ea(o,n,s,i,a?.round);break}case"minute":r.minute=Ea(e.minute,n,0,59,a?.round);break;case"second":r.second=Ea(e.second,n,0,59,a?.round);break;case"millisecond":r.millisecond=Ea(e.millisecond,n,0,999,a?.round);break;default:throw new Error("Unsupported field "+t)}return r}function Ea(e,t,n,a,r=!1){if(r){e+=Math.sign(t),e<n&&(e=a);let o=Math.abs(t);t>0?e=Math.ceil(e/o)*o:e=Math.floor(e/o)*o,e>a&&(e=n)}else e+=t,e<n?e=a-(n-e-1):e>a&&(e=n+(e-a-1));return e}function z1(e,t){let n;if(t.years!=null&&t.years!==0||t.months!=null&&t.months!==0||t.weeks!=null&&t.weeks!==0||t.days!=null&&t.days!==0){let r=Yc(Uo(e),{years:t.years,months:t.months,weeks:t.weeks,days:t.days});n=Ta(r,e.timeZone)}else n=Wo(e)-e.offset;n+=t.milliseconds||0,n+=(t.seconds||0)*1e3,n+=(t.minutes||0)*6e4,n+=(t.hours||0)*36e5;let a=Da(n,e.timeZone);return Ht(a,e.calendar)}function zx(e,t){return z1(e,B1(t))}function jx(e,t,n,a){switch(t){case"hour":{let r=0,o=23;if(a?.hourCycle===12){let m=e.hour>=12;r=m?12:0,o=m?23:11}let s=Uo(e),i=Ht(tc(s,{hour:r}),new Yn),l=[Ta(i,e.timeZone,"earlier"),Ta(i,e.timeZone,"later")].filter(m=>Da(m,e.timeZone).day===i.day)[0],c=Ht(tc(s,{hour:o}),new Yn),u=[Ta(c,e.timeZone,"earlier"),Ta(c,e.timeZone,"later")].filter(m=>Da(m,e.timeZone).day===c.day).pop(),d=Wo(e)-e.offset,h=Math.floor(d/Ms),p=d%Ms;return d=Ea(h,n,Math.floor(l/Ms),Math.floor(u/Ms),a?.round)*Ms+p,Ht(Da(d,e.timeZone),e.calendar)}case"minute":case"second":case"millisecond":return V1(e,t,n,a);case"era":case"year":case"month":case"day":{let r=fp(Uo(e),t,n,a),o=Ta(r,e.timeZone);return Ht(Da(o,e.timeZone),e.calendar)}default:throw new Error("Unsupported field "+t)}}function Wx(e,t,n){let a=Uo(e),r=tc(dp(a,t),t);if(r.compare(a)===0)return e;let o=Ta(r,e.timeZone,n);return Ht(Da(o,e.timeZone),e.calendar)}function Ux(e){return`${String(e.hour).padStart(2,"0")}:${String(e.minute).padStart(2,"0")}:${String(e.second).padStart(2,"0")}${e.millisecond?String(e.millisecond/1e3).slice(1):""}`}function j1(e){let t=Ht(e,new Yn),n;return t.era==="BC"?n=t.year===1?"0000":"-"+String(Math.abs(1-t.year)).padStart(6,"00"):n=String(t.year).padStart(4,"0"),`${n}-${String(t.month).padStart(2,"0")}-${String(t.day).padStart(2,"0")}`}function W1(e){return`${j1(e)}T${Ux(e)}`}function Gx(e){let t=Math.sign(e)<0?"-":"+";e=Math.abs(e);let n=Math.floor(e/36e5),a=Math.floor(e%36e5/6e4),r=Math.floor(e%36e5%6e4/1e3),o=`${t}${String(n).padStart(2,"0")}:${String(a).padStart(2,"0")}`;return r!==0&&(o+=`:${String(r).padStart(2,"0")}`),o}function Yx(e){return`${W1(e)}${Gx(e.offset)}[${e.timeZone}]`}function Kx(e,t){if(t.has(e))throw new TypeError("Cannot initialize the same private elements twice on an object")}function pp(e,t,n){Kx(e,t),t.set(e,n)}function hp(e){let t=typeof e[0]=="object"?e.shift():new Yn,n;if(typeof e[0]=="string")n=e.shift();else{let s=t.getEras();n=s[s.length-1]}let a=e.shift(),r=e.shift(),o=e.shift();return[t,n,a,r,o]}var Xx=new WeakMap;class Ct{copy(){return this.era?new Ct(this.calendar,this.era,this.year,this.month,this.day):new Ct(this.calendar,this.year,this.month,this.day)}add(t){return Yc(this,t)}subtract(t){return H1(this,t)}set(t){return dp(this,t)}cycle(t,n,a){return fp(this,t,n,a)}toDate(t){return F1(this,t)}toString(){return j1(this)}compare(t){return L1(this,t)}constructor(...t){pp(this,Xx,{writable:!0,value:void 0});let[n,a,r,o,s]=hp(t);this.calendar=n,this.era=a,this.year=r,this.month=o,this.day=s,Zr(this)}}var Jx=new WeakMap;class Go{copy(){return this.era?new Go(this.calendar,this.era,this.year,this.month,this.day,this.hour,this.minute,this.second,this.millisecond):new Go(this.calendar,this.year,this.month,this.day,this.hour,this.minute,this.second,this.millisecond)}add(t){return Yc(this,t)}subtract(t){return H1(this,t)}set(t){return dp(tc(this,t),t)}cycle(t,n,a){switch(t){case"era":case"year":case"month":case"day":return fp(this,t,n,a);default:return V1(this,t,n,a)}}toDate(t,n){return F1(this,t,n)}toString(){return W1(this)}compare(t){let n=L1(this,t);return n===0?Ix(this,Uo(t)):n}constructor(...t){pp(this,Jx,{writable:!0,value:void 0});let[n,a,r,o,s]=hp(t);this.calendar=n,this.era=a,this.year=r,this.month=o,this.day=s,this.hour=t.shift()||0,this.minute=t.shift()||0,this.second=t.shift()||0,this.millisecond=t.shift()||0,Zr(this)}}var Qx=new WeakMap;class Yo{copy(){return this.era?new Yo(this.calendar,this.era,this.year,this.month,this.day,this.timeZone,this.offset,this.hour,this.minute,this.second,this.millisecond):new Yo(this.calendar,this.year,this.month,this.day,this.timeZone,this.offset,this.hour,this.minute,this.second,this.millisecond)}add(t){return z1(this,t)}subtract(t){return zx(this,t)}set(t,n){return Wx(this,t,n)}cycle(t,n,a){return jx(this,t,n,a)}toDate(){return Nx(this)}toString(){return Yx(this)}toAbsoluteString(){return this.toDate().toISOString()}compare(t){return this.toDate().getTime()-Ox(t,this.timeZone).toDate().getTime()}constructor(...t){pp(this,Qx,{writable:!0,value:void 0});let[n,a,r,o,s]=hp(t),i=t.shift(),l=t.shift();this.calendar=n,this.era=a,this.year=r,this.month=o,this.day=s,this.timeZone=i,this.offset=l,this.hour=t.shift()||0,this.minute=t.shift()||0,this.second=t.shift()||0,this.millisecond=t.shift()||0,Zr(this)}}const Eo=[[1868,9,8],[1912,7,30],[1926,12,25],[1989,1,8],[2019,5,1]],Zx=[[1912,7,29],[1926,12,24],[1989,1,7],[2019,4,30]],Tl=[1867,1911,1925,1988,2018],dr=["meiji","taisho","showa","heisei","reiwa"];function Wm(e){const t=Eo.findIndex(([n,a,r])=>e.year<n||e.year===n&&e.month<a||e.year===n&&e.month===a&&e.day<r);return t===-1?Eo.length-1:t===0?0:t-1}function Vu(e){let t=Tl[dr.indexOf(e.era)];if(!t)throw new Error("Unknown era: "+e.era);return new Ct(e.year+t,e.month,e.day)}class e4 extends Yn{fromJulianDay(t){let n=super.fromJulianDay(t),a=Wm(n);return new Ct(this,dr[a],n.year-Tl[a],n.month,n.day)}toJulianDay(t){return super.toJulianDay(Vu(t))}balanceDate(t){let n=Vu(t),a=Wm(n);dr[a]!==t.era&&(t.era=dr[a],t.year=n.year-Tl[a]),this.constrainDate(t)}constrainDate(t){let n=dr.indexOf(t.era),a=Zx[n];if(a!=null){let[r,o,s]=a,i=r-Tl[n];t.year=Math.max(1,Math.min(i,t.year)),t.year===i&&(t.month=Math.min(o,t.month),t.month===o&&(t.day=Math.min(s,t.day)))}if(t.year===1&&n>=0){let[,r,o]=Eo[n];t.month=Math.max(r,t.month),t.month===r&&(t.day=Math.max(o,t.day))}}getEras(){return dr}getYearsInEra(t){let n=dr.indexOf(t.era),a=Eo[n],r=Eo[n+1];if(r==null)return 9999-a[0]+1;let o=r[0]-a[0];return(t.month<r[1]||t.month===r[1]&&t.day<r[2])&&o++,o}getDaysInMonth(t){return super.getDaysInMonth(Vu(t))}getMinimumMonthInYear(t){let n=Um(t);return n?n[1]:1}getMinimumDayInMonth(t){let n=Um(t);return n&&t.month===n[1]?n[2]:1}constructor(...t){super(...t),this.identifier="japanese"}}function Um(e){if(e.year===1){let t=dr.indexOf(e.era);return Eo[t]}}const U1=-543;class t4 extends Yn{fromJulianDay(t){let n=super.fromJulianDay(t),a=Di(n.era,n.year);return new Ct(this,a-U1,n.month,n.day)}toJulianDay(t){return super.toJulianDay(Gm(t))}getEras(){return["BE"]}getDaysInMonth(t){return super.getDaysInMonth(Gm(t))}balanceDate(){}constructor(...t){super(...t),this.identifier="buddhist"}}function Gm(e){let[t,n]=Uc(e.year+U1);return new Ct(t,n,e.month,e.day)}const nc=1911;function G1(e){return e.era==="minguo"?e.year+nc:1-e.year+nc}function Ym(e){let t=e-nc;return t>0?["minguo",t]:["before_minguo",1-t]}class n4 extends Yn{fromJulianDay(t){let n=super.fromJulianDay(t),a=Di(n.era,n.year),[r,o]=Ym(a);return new Ct(this,r,o,n.month,n.day)}toJulianDay(t){return super.toJulianDay(Km(t))}getEras(){return["before_minguo","minguo"]}balanceDate(t){let[n,a]=Ym(G1(t));t.era=n,t.year=a}isInverseEra(t){return t.era==="before_minguo"}getDaysInMonth(t){return super.getDaysInMonth(Km(t))}getYearsInEra(t){return t.era==="before_minguo"?9999:9999-nc}constructor(...t){super(...t),this.identifier="roc"}}function Km(e){let[t,n]=Uc(G1(e));return new Ct(t,n,e.month,e.day)}const Xm=1948320,Jm=[0,31,62,93,124,155,186,216,246,276,306,336];class a4{fromJulianDay(t){let n=t-Xm,a=1+Math.floor((33*n+3)/12053),r=365*(a-1)+Math.floor((8*a+21)/33),o=n-r,s=o<216?Math.floor(o/31):Math.floor((o-6)/30),i=o-Jm[s]+1;return new Ct(this,a,s+1,i)}toJulianDay(t){let n=Xm-1+365*(t.year-1)+Math.floor((8*t.year+21)/33);return n+=Jm[t.month-1],n+=t.day,n}getMonthsInYear(){return 12}getDaysInMonth(t){return t.month<=6?31:t.month<=11||Do(25*t.year+11,33)<8?30:29}getMaximumMonthsInYear(){return 12}getMaximumDaysInMonth(){return 31}getEras(){return["AP"]}getYearsInEra(){return 9377}constructor(){this.identifier="persian"}}const zu=78,Qm=80;class r4 extends Yn{fromJulianDay(t){let n=super.fromJulianDay(t),a=n.year-zu,r=t-zr(n.era,n.year,1,1),o;r<Qm?(a--,o=mr(n.year-1)?31:30,r+=o+155+90+10):(o=mr(n.year)?31:30,r-=Qm);let s,i;if(r<o)s=1,i=r+1;else{let l=r-o;l<155?(s=Math.floor(l/31)+2,i=l%31+1):(l-=155,s=Math.floor(l/30)+7,i=l%30+1)}return new Ct(this,a,s,i)}toJulianDay(t){let n=t.year+zu,[a,r]=Uc(n),o,s;return mr(r)?(o=31,s=zr(a,r,3,21)):(o=30,s=zr(a,r,3,22)),t.month===1?s+t.day-1:(s+=o+Math.min(t.month-2,5)*31,t.month>=8&&(s+=(t.month-7)*30),s+=t.day-1,s)}getDaysInMonth(t){return t.month===1&&mr(t.year+zu)||t.month>=2&&t.month<=6?31:30}getYearsInEra(){return 9919}getEras(){return["saka"]}balanceDate(){}constructor(...t){super(...t),this.identifier="indian"}}const ac=1948440,Zm=1948439,Dn=1300,po=1600,o4=460322;function rc(e,t,n,a){return a+Math.ceil(29.5*(n-1))+(t-1)*354+Math.floor((3+11*t)/30)+e-1}function Y1(e,t,n){let a=Math.floor((30*(n-t)+10646)/10631),r=Math.min(12,Math.ceil((n-(29+rc(t,a,1,1)))/29.5)+1),o=n-rc(t,a,r,1)+1;return new Ct(e,a,r,o)}function eg(e){return(14+11*e)%30<11}class mp{fromJulianDay(t){return Y1(this,ac,t)}toJulianDay(t){return rc(ac,t.year,t.month,t.day)}getDaysInMonth(t){let n=29+t.month%2;return t.month===12&&eg(t.year)&&n++,n}getMonthsInYear(){return 12}getDaysInYear(t){return eg(t.year)?355:354}getMaximumMonthsInYear(){return 12}getMaximumDaysInMonth(){return 30}getYearsInEra(){return 9665}getEras(){return["AH"]}constructor(){this.identifier="islamic-civil"}}class s4 extends mp{fromJulianDay(t){return Y1(this,Zm,t)}toJulianDay(t){return rc(Zm,t.year,t.month,t.day)}constructor(...t){super(...t),this.identifier="islamic-tbla"}}const i4="qgpUDckO1AbqBmwDrQpVBakGkgepC9QF2gpcBS0NlQZKB1QLagutBa4ETwoXBYsGpQbVCtYCWwmdBE0KJg2VDawFtgm6AlsKKwWVCsoG6Qr0AnYJtgJWCcoKpAvSC9kF3AJtCU0FpQpSC6ULtAW2CVcFlwJLBaMGUgdlC2oFqworBZUMSg2lDcoF1gpXCasESwmlClILagt1BXYCtwhbBFUFqQW0BdoJ3QRuAjYJqgpUDbIN1QXaAlsJqwRVCkkLZAtxC7QFtQpVCiUNkg7JDtQG6QprCasEkwpJDaQNsg25CroEWworBZUKKgtVC1wFvQQ9Ah0JlQpKC1oLbQW2AjsJmwRVBqkGVAdqC2wFrQpVBSkLkgupC9QF2gpaBasKlQVJB2QHqgu1BbYCVgpNDiULUgtqC60FrgIvCZcESwalBqwG1gpdBZ0ETQoWDZUNqgW1BdoCWwmtBJUFygbkBuoK9QS2AlYJqgpUC9IL2QXqAm0JrQSVCkoLpQuyBbUJ1gSXCkcFkwZJB1ULagVrCisFiwpGDaMNygXWCtsEawJLCaUKUgtpC3UFdgG3CFsCKwVlBbQF2gntBG0BtgimClINqQ3UBdoKWwmrBFMGKQdiB6kLsgW1ClUFJQuSDckO0gbpCmsFqwRVCikNVA2qDbUJugQ7CpsETQqqCtUK2gJdCV4ELgqaDFUNsga5BroEXQotBZUKUguoC7QLuQXaAloJSgukDdEO6AZqC20FNQWVBkoNqA3UDdoGWwWdAisGFQtKC5ULqgWuCi4JjwwnBZUGqgbWCl0FnQI=";let Kd,$o;function Il(e){return o4+$o[e-Dn]}function Rs(e,t){let n=e-Dn,a=1<<11-(t-1);return(Kd[n]&a)===0?29:30}function tg(e,t){let n=Il(e);for(let a=1;a<t;a++)n+=Rs(e,a);return n}function ng(e){return $o[e+1-Dn]-$o[e-Dn]}class l4 extends mp{fromJulianDay(t){let n=t-ac,a=Il(Dn),r=Il(po);if(n<a||n>r)return super.fromJulianDay(t);{let o=Dn-1,s=1,i=1;for(;i>0;){o++,i=n-Il(o)+1;let l=ng(o);if(i===l){s=12;break}else if(i<l){let c=Rs(o,s);for(s=1;i>c;)i-=c,s++,c=Rs(o,s);break}}return new Ct(this,o,s,n-tg(o,s)+1)}}toJulianDay(t){return t.year<Dn||t.year>po?super.toJulianDay(t):ac+tg(t.year,t.month)+(t.day-1)}getDaysInMonth(t){return t.year<Dn||t.year>po?super.getDaysInMonth(t):Rs(t.year,t.month)}getDaysInYear(t){return t.year<Dn||t.year>po?super.getDaysInYear(t):ng(t.year)}constructor(){if(super(),this.identifier="islamic-umalqura",Kd||(Kd=new Uint16Array(Uint8Array.from(atob(i4),t=>t.charCodeAt(0)).buffer)),!$o){$o=new Uint32Array(po-Dn+1);let t=0;for(let n=Dn;n<=po;n++){$o[n-Dn]=t;for(let a=1;a<=12;a++)t+=Rs(n,a)}}}}const ag=347997,K1=1080,X1=24*K1,c4=29,u4=12*K1+793,d4=c4*X1+u4;function Hr(e){return Do(e*7+1,19)<7}function Dl(e){let t=Math.floor((235*e-234)/19),n=12084+13753*t,a=t*29+Math.floor(n/25920);return Do(3*(a+1),7)<3&&(a+=1),a}function f4(e){let t=Dl(e-1),n=Dl(e);return Dl(e+1)-n===356?2:n-t===382?1:0}function Ws(e){return Dl(e)+f4(e)}function J1(e){return Ws(e+1)-Ws(e)}function p4(e){let t=J1(e);switch(t>380&&(t-=30),t){case 353:return 0;case 354:return 1;case 355:return 2}}function Zi(e,t){if(t>=6&&!Hr(e)&&t++,t===4||t===7||t===9||t===11||t===13)return 29;let n=p4(e);return t===2?n===2?30:29:t===3?n===0?29:30:t===6?Hr(e)?30:0:30}class h4{fromJulianDay(t){let n=t-ag,a=n*X1/d4,r=Math.floor((19*a+234)/235)+1,o=Ws(r),s=Math.floor(n-o);for(;s<1;)r--,o=Ws(r),s=Math.floor(n-o);let i=1,l=0;for(;l<s;)l+=Zi(r,i),i++;i--,l-=Zi(r,i);let c=s-l;return new Ct(this,r,i,c)}toJulianDay(t){let n=Ws(t.year);for(let a=1;a<t.month;a++)n+=Zi(t.year,a);return n+t.day+ag}getDaysInMonth(t){return Zi(t.year,t.month)}getMonthsInYear(t){return Hr(t.year)?13:12}getDaysInYear(t){return J1(t.year)}getMaximumMonthsInYear(){return 13}getMaximumDaysInMonth(){return 30}getYearsInEra(){return 9999}getEras(){return["AM"]}balanceYearMonth(t,n){n.year!==t.year&&(Hr(n.year)&&!Hr(t.year)&&n.month>6?t.month--:!Hr(n.year)&&Hr(t.year)&&n.month>6&&t.month++)}constructor(){this.identifier="hebrew"}}const Xd=1723856,rg=1824665,Jd=5500;function oc(e,t,n,a){return e+365*t+Math.floor(t/4)+30*(n-1)+a-1}function gp(e,t){let n=Math.floor(4*(t-e)/1461),a=1+Math.floor((t-oc(e,n,1,1))/30),r=t+1-oc(e,n,a,1);return[n,a,r]}function Q1(e){return Math.floor(e%4/3)}function Z1(e,t){return t%13!==0?30:Q1(e)+5}class vp{fromJulianDay(t){let[n,a,r]=gp(Xd,t),o="AM";return n<=0&&(o="AA",n+=Jd),new Ct(this,o,n,a,r)}toJulianDay(t){let n=t.year;return t.era==="AA"&&(n-=Jd),oc(Xd,n,t.month,t.day)}getDaysInMonth(t){return Z1(t.year,t.month)}getMonthsInYear(){return 13}getDaysInYear(t){return 365+Q1(t.year)}getMaximumMonthsInYear(){return 13}getMaximumDaysInMonth(){return 30}getYearsInEra(t){return t.era==="AA"?9999:9991}getEras(){return["AA","AM"]}constructor(){this.identifier="ethiopic"}}class m4 extends vp{fromJulianDay(t){let[n,a,r]=gp(Xd,t);return n+=Jd,new Ct(this,"AA",n,a,r)}getEras(){return["AA"]}getYearsInEra(){return 9999}constructor(...t){super(...t),this.identifier="ethioaa"}}class g4 extends vp{fromJulianDay(t){let[n,a,r]=gp(rg,t),o="CE";return n<=0&&(o="BCE",n=1-n),new Ct(this,o,n,a,r)}toJulianDay(t){let n=t.year;return t.era==="BCE"&&(n=1-n),oc(rg,n,t.month,t.day)}getDaysInMonth(t){let n=t.year;return t.era==="BCE"&&(n=1-n),Z1(n,t.month)}isInverseEra(t){return t.era==="BCE"}balanceDate(t){t.year<=0&&(t.era=t.era==="BCE"?"CE":"BCE",t.year=1-t.year)}getEras(){return["BCE","CE"]}getYearsInEra(t){return t.era==="BCE"?9999:9715}constructor(...t){super(...t),this.identifier="coptic"}}function v4(e){switch(e){case"buddhist":return new t4;case"ethiopic":return new vp;case"ethioaa":return new m4;case"coptic":return new g4;case"hebrew":return new h4;case"indian":return new r4;case"islamic-civil":return new mp;case"islamic-tbla":return new s4;case"islamic-umalqura":return new l4;case"japanese":return new e4;case"persian":return new a4;case"roc":return new n4;default:return new Yn}}let ju=new Map;class _a{format(t){return this.formatter.format(t)}formatToParts(t){return this.formatter.formatToParts(t)}formatRange(t,n){if(typeof this.formatter.formatRange=="function")return this.formatter.formatRange(t,n);if(n<t)throw new RangeError("End date must be >= start date");return`${this.formatter.format(t)} – ${this.formatter.format(n)}`}formatRangeToParts(t,n){if(typeof this.formatter.formatRangeToParts=="function")return this.formatter.formatRangeToParts(t,n);if(n<t)throw new RangeError("End date must be >= start date");let a=this.formatter.formatToParts(t),r=this.formatter.formatToParts(n);return[...a.map(o=>({...o,source:"startRange"})),{type:"literal",value:" – ",source:"shared"},...r.map(o=>({...o,source:"endRange"}))]}resolvedOptions(){let t=this.formatter.resolvedOptions();return w4()&&(this.resolvedHourCycle||(this.resolvedHourCycle=_4(t.locale,this.options)),t.hourCycle=this.resolvedHourCycle,t.hour12=this.resolvedHourCycle==="h11"||this.resolvedHourCycle==="h12"),t.calendar==="ethiopic-amete-alem"&&(t.calendar="ethioaa"),t}constructor(t,n={}){this.formatter=eb(t,n),this.options=n}}const y4={true:{ja:"h11"},false:{}};function eb(e,t={}){if(typeof t.hour12=="boolean"&&b4()){t={...t};let r=y4[String(t.hour12)][e.split("-")[0]],o=t.hour12?"h12":"h23";t.hourCycle=r??o,delete t.hour12}let n=e+(t?Object.entries(t).sort((r,o)=>r[0]<o[0]?-1:1).join():"");if(ju.has(n))return ju.get(n);let a=new Intl.DateTimeFormat(e,t);return ju.set(n,a),a}let Wu=null;function b4(){return Wu==null&&(Wu=new Intl.DateTimeFormat("en-US",{hour:"numeric",hour12:!1}).format(new Date(2020,2,3,0))==="24"),Wu}let Uu=null;function w4(){return Uu==null&&(Uu=new Intl.DateTimeFormat("fr",{hour:"numeric",hour12:!1}).resolvedOptions().hourCycle==="h12"),Uu}function _4(e,t){if(!t.timeStyle&&!t.hour)return;e=e.replace(/(-u-)?-nu-[a-zA-Z0-9]+/,""),e+=(e.includes("-u-")?"":"-u")+"-nu-latn";let n=eb(e,{...t,timeZone:void 0}),a=parseInt(n.formatToParts(new Date(2020,2,3,0)).find(o=>o.type==="hour").value,10),r=parseInt(n.formatToParts(new Date(2020,2,3,23)).find(o=>o.type==="hour").value,10);if(a===0&&r===23)return"h23";if(a===24&&r===23)return"h24";if(a===0&&r===11)return"h11";if(a===12&&r===11)return"h12";throw new Error("Unexpected hour cycle result")}function Pt(e,t=pa()){return yp(e)?e.toDate():e.toDate(t)}function k4(e){return e instanceof Go}function yp(e){return e instanceof Yo}function C4(e){return k4(e)||yp(e)}function Ro(e){if(e instanceof Date){const t=e.getFullYear(),n=e.getMonth()+1;return new Date(t,n,0).getDate()}else return e.set({day:100}).day}function fn(e,t){return e.compare(t)<0}function sa(e,t){return e.compare(t)>0}function S4(e,t){return e.compare(t)<=0}function x4(e,t){return e.compare(t)>=0}function A4(e,t,n){return x4(e,t)&&S4(e,n)}function Gu(e,t,n){return sa(e,t)&&fn(e,n)}function P4(e,t,n){const a=zo(e,n,"sun");return t>a?e.subtract({days:a+7-t}):t===a?e:e.subtract({days:a-t})}function M4(e,t,n){const a=zo(e,n,"sun"),r=t===0?6:t-1;return a===r?e:a>r?e.add({days:7-a+r}):e.add({days:r-a})}function dt(e,t){return e.year===t.year&&e.month===t.month}function ft(e,t){return e.year===t.year}function T4(e,t,n,a,r){if(n===void 0&&a===void 0&&r===void 0)return!0;let o=e.add({days:1});if((a?.(o)||n?.(o))&&!r?.(o))return!1;const s=t;for(;o.compare(s)<0;)if(o=o.add({days:1}),(a?.(o)||n?.(o))&&!r?.(o))return!1;return!0}function Wt(e,t){return e.year!==t.year?e.year-t.year:e.month-t.month}function I4(e,t,n){return Wt(e,t)>=0&&Wt(e,n)<=0}function D4(e,t,n){return e.year>=t.year&&e.year<=n.year}function E4(e,t){return(t.year-e.year)*12+(t.month-e.month)+1}function $4(e,t){return t.year-e.year+1}function R4(e,t,n,a){if(n===void 0&&a===void 0)return!0;let r=e.set({day:1});const o=t.set({day:1});for(;Wt(r,o)<=0;){if(a?.(r)||n?.(r))return!1;r=r.add({months:1})}return!0}function L4(e,t,n,a){if(n===void 0&&a===void 0)return!0;let r=e.set({day:1,month:1});const o=t.set({day:1,month:1});for(;r.year<=o.year;){if(a?.(r)||n?.(r))return!1;r=r.add({years:1})}return!0}function ss(e){const{defaultValue:t,defaultPlaceholder:n,granularity:a="day",locale:r="en"}=e;if(Array.isArray(t)&&t.length)return t.at(-1).copy();if(t&&!Array.isArray(t))return t.copy();if(n)return n.copy();const o=new Date,s=o.getFullYear(),i=o.getMonth()+1,l=o.getDate(),c=["hour","minute","second"],u=new _a(r),d=v4(u.resolvedOptions().calendar);return c.includes(a??"day")?Ht(new Go(s,i,l,0,0,0),d):Ht(new Ct(s,i,l),d)}function bp(e,t){const n=[];for(let a=0;a<e.length;a+=t)n.push(e.slice(a,a+t));return n}function is(e){const t=e.querySelector("[data-selected]");if(t)return t.focus();const n=e.querySelector("[data-today]");if(n)return n.focus();const a=e.querySelector("[data-reka-calendar-day]");if(a)return a.focus()}function Qd(e,t){const n=[];let a=e.add({days:1});const r=t;for(;a.compare(r)<0;)n.push(a),a=a.add({days:1});return n}function Yu(e){const{dateObj:t,weekStartsOn:n,fixedWeeks:a,locale:r}=e,o=Ro(t),s=Array.from({length:o},(y,g)=>t.set({day:g+1})),i=jo(t),l=za(t),c=P4(i,n,r),u=M4(l,n,r),d=Qd(c.subtract({days:1}),i),h=Qd(l,u.add({days:1})),p=d.length+s.length+h.length;if(a&&p<42){const y=42-p;let g=h.at(-1);g||(g=za(t));const b=Array.from({length:y},(w,_)=>{const A=_+1;return g.add({days:A})});h.push(...b)}const m=d.concat(s,h),v=bp(m,7);return{value:t,cells:m,rows:v}}function O4(e){return La(e.subtract({years:e.year-Math.floor(e.year/10)*10}).set({day:1,month:1}))}function N4(e){const{dateObj:t,numberOfMonths:n=1,pagedNavigation:a=!1}=e;return n&&a?Array.from({length:Math.floor(12/n)},(s,i)=>jo(t.set({month:i*n+1}))):Array.from({length:12},(o,s)=>jo(t.set({month:s+1})))}function Er(e){const{numberOfMonths:t,dateObj:n,...a}=e,r=[];if(!t||t===1)return r.push(Yu({...a,dateObj:n})),r;r.push(Yu({...a,dateObj:n}));for(let o=1;o<t;o++){const s=n.add({months:o});r.push(Yu({...a,dateObj:s}))}return r}function $r(e){const{dateObj:t}=e,n=N4({dateObj:t});return{value:t,cells:n,rows:bp(n,4)}}function Rr(e){const{dateObj:t,yearsPerPage:n=12,decadeAligned:a=!0}=e;let r;a?r=O4(t).year:r=t.year;const o=Array.from({length:n},(i,l)=>La(t.set({year:r+l})));return{value:o[0],cells:o,rows:bp(o,4)}}function tb(e){const t=new Ct(2025,1,6);return(1-zo(t,e)+7)%7}function cae(e,t="en-US",n){const a=new Ct(e.year,1,1),r=a.toDate("UTC").getUTCDay()!==zo(a,t),o=n??(r?"mon":"sun"),s=r?4:1,i=zo(e,t,o),c=e.add({days:7-s-i}).year,u=new Ct(c,1,s),d=Hm(u,t,o),h=Hm(e,t,o),p=10080*60*1e3;return Math.round((h.toDate("UTC").getTime()-d.toDate("UTC").getTime())/p)+1}function wp(e,t={}){const n=V(e);function a(){return n.value}function r(y){n.value=y}function o(y,g){return new _a(n.value,{...t,...g}).format(y)}function s(y,g=!0){return C4(y)&&g?o(Pt(y),{dateStyle:"long",timeStyle:"long"}):o(Pt(y),{dateStyle:"long"})}function i(y,g={}){return new _a(n.value,{...t,month:"long",year:"numeric",...g}).format(y)}function l(y,g={}){return new _a(n.value,{...t,month:"long",...g}).format(y)}function c(){const y=os(pa());return[1,2,3,4,5,6,7,8,9,10,11,12].map(b=>({label:l(Pt(y.set({month:b}))),value:b}))}function u(y,g={}){return new _a(n.value,{...t,year:"numeric",...g}).format(y)}function d(y,g){return yp(y)?new _a(n.value,{...t,...g,timeZone:y.timeZone}).formatToParts(Pt(y)):new _a(n.value,{...t,...g}).formatToParts(Pt(y))}function h(y,g="narrow"){return new _a(n.value,{...t,weekday:g}).format(y)}function p(y){const b=new _a(n.value,{...t,hour:"numeric",minute:"numeric"}).formatToParts(y).find(w=>w.type==="dayPeriod")?.value;return b==="PM"||b==="pm"||b==="p.m."?"PM":"AM"}const m={year:"numeric",month:"numeric",day:"numeric",hour:"numeric",minute:"numeric",second:"numeric"};function v(y,g,b={}){const w={...m,...b},A=d(y,w).find(P=>P.type===g);return A?A.value:""}return{setLocale:r,getLocale:a,fullMonth:l,fullYear:u,fullMonthAndYear:i,toParts:d,custom:o,part:v,dayPeriod:p,selectedDate:s,dayOfWeek:h,getMonths:c}}function Ka(e){const t=Wc({dir:V("ltr")});return S(()=>e?.value||t.dir?.value||"ltr")}function Xa(e){const t=Mt(),n=t?.type.emits,a={};return n?.length||console.warn(`No emitted event found. Please check component: ${t?.type.__name}`),n?.forEach(r=>{a[Os(pn(r))]=(...o)=>e(r,...o)}),a}let Ku=0;function nb(){qt(e=>{if(!On)return;const t=document.querySelectorAll("[data-reka-focus-guard]");document.body.insertAdjacentElement("afterbegin",t[0]??og()),document.body.insertAdjacentElement("beforeend",t[1]??og()),Ku++,e(()=>{Ku===1&&document.querySelectorAll("[data-reka-focus-guard]").forEach(n=>n.remove()),Ku--})})}function og(){const e=document.createElement("span");return e.setAttribute("data-reka-focus-guard",""),e.tabIndex=0,e.style.outline="none",e.style.opacity="0",e.style.position="fixed",e.style.pointerEvents="none",e}function Ee(){const e=Mt(),t=V(),n=S(()=>a());jf(()=>{n.value!==a()&&bd(t)});function a(){return t.value&&"$el"in t.value&&["#text","#comment"].includes(t.value.$el.nodeName)?t.value.$el.nextElementSibling:hn(t)}const r=Object.assign({},e.exposed),o={};for(const i in e.props)Object.defineProperty(o,i,{enumerable:!0,configurable:!0,get:()=>e.props[i]});if(Object.keys(r).length>0)for(const i in r)Object.defineProperty(o,i,{enumerable:!0,configurable:!0,get:()=>r[i]});Object.defineProperty(o,"$el",{enumerable:!0,configurable:!0,get:()=>e.vnode.el}),e.exposed=o;function s(i){if(t.value=i,!!i&&(Object.defineProperty(o,"$el",{enumerable:!0,configurable:!0,get:()=>i instanceof Element?i:i.$el}),!(i instanceof Element)&&!Object.hasOwn(i,"$el"))){const l=i.$.exposed,c=Object.assign({},o);for(const u in l)Object.defineProperty(c,u,{enumerable:!0,configurable:!0,get:()=>l[u]});e.exposed=c}}return{forwardRef:s,currentRef:t,currentElement:n}}function Ja(e){const t=Mt(),n=Object.keys(t?.type.props??{}).reduce((r,o)=>{const s=(t?.type.props[o]).default;return s!==void 0&&(r[o]=s),r},{}),a=It(e);return S(()=>{const r={},o=t?.vnode.props??{};return Object.keys(o).forEach(s=>{r[pn(s)]=o[s]}),Object.keys({...n,...r}).reduce((s,i)=>(a.value[i]!==void 0&&(s[i]=a.value[i]),s),{})})}function Nn(e,t){const n=Ja(e),a=t?Xa(t):{};return S(()=>({...n.value,...a}))}function ab(e,t){const n=u1(!1,300);Ya(()=>{n.value=!1});const a=V(null),r=Y3();function o(){a.value=null,n.value=!1}function s(i,l){if(!l)return;const c=i.currentTarget,u={x:i.clientX,y:i.clientY},d=F4(u,c.getBoundingClientRect()),h=q4(u,d,1),p=B4(l.getBoundingClientRect()),m=V4([...h,...p]);a.value=m,n.value=!0}return qt(i=>{if(e.value&&t.value){const l=u=>s(u,t.value),c=u=>s(u,e.value);e.value.addEventListener("pointerleave",l),t.value.addEventListener("pointerleave",c),i(()=>{e.value?.removeEventListener("pointerleave",l),t.value?.removeEventListener("pointerleave",c)})}}),qt(i=>{if(a.value){const l=c=>{if(!a.value||!(c.target instanceof Element))return;const u=c.target,d={x:c.clientX,y:c.clientY},h=e.value?.contains(u)||t.value?.contains(u),p=!H4(d,a.value),m=!!u.closest("[data-grace-area-trigger]");h?o():(p||m)&&(o(),r.trigger())};e.value?.ownerDocument.addEventListener("pointermove",l),i(()=>e.value?.ownerDocument.removeEventListener("pointermove",l))}}),{isPointerInTransit:n,onPointerExit:r.on}}function F4(e,t){const n=Math.abs(t.top-e.y),a=Math.abs(t.bottom-e.y),r=Math.abs(t.right-e.x),o=Math.abs(t.left-e.x);switch(Math.min(n,a,r,o)){case o:return"left";case r:return"right";case n:return"top";case a:return"bottom";default:throw new Error("unreachable")}}function q4(e,t,n=5){const a=[];switch(t){case"top":a.push({x:e.x-n,y:e.y+n},{x:e.x+n,y:e.y+n});break;case"bottom":a.push({x:e.x-n,y:e.y-n},{x:e.x+n,y:e.y-n});break;case"left":a.push({x:e.x+n,y:e.y-n},{x:e.x+n,y:e.y+n});break;case"right":a.push({x:e.x-n,y:e.y-n},{x:e.x-n,y:e.y+n});break}return a}function B4(e){const{top:t,right:n,bottom:a,left:r}=e;return[{x:r,y:t},{x:n,y:t},{x:n,y:a},{x:r,y:a}]}function H4(e,t){const{x:n,y:a}=e;let r=!1;for(let o=0,s=t.length-1;o<t.length;s=o++){const i=t[o].x,l=t[o].y,c=t[s].x,u=t[s].y;l>a!=u>a&&n<(c-i)*(a-l)/(u-l)+i&&(r=!r)}return r}function V4(e){const t=e.slice();return t.sort((n,a)=>n.x<a.x?-1:n.x>a.x?1:n.y<a.y?-1:n.y>a.y?1:0),z4(t)}function z4(e){if(e.length<=1)return e.slice();const t=[];for(let a=0;a<e.length;a++){const r=e[a];for(;t.length>=2;){const o=t.at(-1),s=t[t.length-2];if((o.x-s.x)*(r.y-s.y)>=(o.y-s.y)*(r.x-s.x))t.pop();else break}t.push(r)}t.pop();const n=[];for(let a=e.length-1;a>=0;a--){const r=e[a];for(;n.length>=2;){const o=n.at(-1),s=n[n.length-2];if((o.x-s.x)*(r.y-s.y)>=(o.y-s.y)*(r.x-s.x))n.pop();else break}n.push(r)}return n.pop(),t.length===1&&n.length===1&&t[0].x===n[0].x&&t[0].y===n[0].y?t:t.concat(n)}var j4=function(e){if(typeof document>"u")return null;var t=Array.isArray(e)?e[0]:e;return t.ownerDocument.body},ho=new WeakMap,el=new WeakMap,tl={},Xu=0,rb=function(e){return e&&(e.host||rb(e.parentNode))},W4=function(e,t){return t.map(function(n){if(e.contains(n))return n;var a=rb(n);return a&&e.contains(a)?a:(console.error("aria-hidden",n,"in not contained inside",e,". Doing nothing"),null)}).filter(function(n){return!!n})},U4=function(e,t,n,a){var r=W4(t,Array.isArray(e)?e:[e]);tl[n]||(tl[n]=new WeakMap);var o=tl[n],s=[],i=new Set,l=new Set(r),c=function(d){!d||i.has(d)||(i.add(d),c(d.parentNode))};r.forEach(c);var u=function(d){!d||l.has(d)||Array.prototype.forEach.call(d.children,function(h){if(i.has(h))u(h);else try{var p=h.getAttribute(a),m=p!==null&&p!=="false",v=(ho.get(h)||0)+1,y=(o.get(h)||0)+1;ho.set(h,v),o.set(h,y),s.push(h),v===1&&m&&el.set(h,!0),y===1&&h.setAttribute(n,"true"),m||h.setAttribute(a,"true")}catch(g){console.error("aria-hidden: cannot operate on ",h,g)}})};return u(t),i.clear(),Xu++,function(){s.forEach(function(d){var h=ho.get(d)-1,p=o.get(d)-1;ho.set(d,h),o.set(d,p),h||(el.has(d)||d.removeAttribute(a),el.delete(d)),p||d.removeAttribute(n)}),Xu--,Xu||(ho=new WeakMap,ho=new WeakMap,el=new WeakMap,tl={})}},G4=function(e,t,n){n===void 0&&(n="data-aria-hidden");var a=Array.from(Array.isArray(e)?e:[e]),r=j4(e);return r?(a.push.apply(a,Array.from(r.querySelectorAll("[aria-live], script"))),U4(a,r,n,"aria-hidden")):function(){return null}};function _p(e){let t;Se(()=>hn(e),n=>{let a=!1;try{a=!!n?.closest("[popover]:not(:popover-open)")}catch{}n&&!a?t=G4(n):t&&t()}),_n(()=>{t&&t()})}function Mn(e,t="reka"){let n;const a=Wc({useId:void 0});return a.useId?n=a.useId():n=Uy?.(),t?`${t}-${n}`:n}function Qa(){return{ALT:"Alt",ARROW_DOWN:"ArrowDown",ARROW_LEFT:"ArrowLeft",ARROW_RIGHT:"ArrowRight",ARROW_UP:"ArrowUp",BACKSPACE:"Backspace",CAPS_LOCK:"CapsLock",CONTROL:"Control",DELETE:"Delete",END:"End",ENTER:"Enter",ESCAPE:"Escape",F1:"F1",F10:"F10",F11:"F11",F12:"F12",F2:"F2",F3:"F3",F4:"F4",F5:"F5",F6:"F6",F7:"F7",F8:"F8",F9:"F9",HOME:"Home",META:"Meta",PAGE_DOWN:"PageDown",PAGE_UP:"PageUp",SHIFT:"Shift",SPACE:" ",TAB:"Tab",CTRL:"Control",ASTERISK:"*",SPACE_CODE:"Space"}}function ls(e){const t=Wc({locale:V("en")});return S(()=>e?.value||t.locale?.value||"en")}function Y4(e){const t=V(),n=S(()=>t.value?.width??0),a=S(()=>t.value?.height??0);return Xe(()=>{const r=hn(e);if(r){t.value={width:r.offsetWidth,height:r.offsetHeight};const o=new ResizeObserver(s=>{if(!Array.isArray(s)||!s.length)return;const i=s[0];let l,c;if("borderBoxSize"in i){const u=i.borderBoxSize,d=Array.isArray(u)?u[0]:u;l=d.inlineSize,c=d.blockSize}else l=r.offsetWidth,c=r.offsetHeight;t.value={width:l,height:c}});return o.observe(r,{box:"border-box"}),()=>o.unobserve(r)}else t.value=void 0}),{width:n,height:a}}function K4(e,t){const n=V(e);function a(o){return t[n.value][o]??n.value}return{state:n,dispatch:o=>{n.value=a(o)}}}function X4(e){const t=u1("",1e3);return{search:t,handleTypeaheadSearch:(r,o)=>{t.value=t.value+r;{const s=$t(),i=o.map(h=>({...h,textValue:h.value?.textValue??h.ref.textContent?.trim()??""})),l=i.find(h=>h.ref===s),c=i.map(h=>h.textValue),u=Q4(c,t.value,l?.textValue),d=i.find(h=>h.textValue===u);return d&&d.ref.focus(),d?.ref}},resetTypeahead:()=>{t.value=""}}}function J4(e,t){return e.map((n,a)=>e[(t+a)%e.length])}function Q4(e,t,n){const r=t.length>1&&Array.from(t).every(c=>c===t[0])?t[0]:t,o=n?e.indexOf(n):-1;let s=J4(e,Math.max(o,0));r.length===1&&(s=s.filter(c=>c!==n));const l=s.find(c=>c.toLowerCase().startsWith(r.toLowerCase()));return l!==n?l:void 0}function Z4(e,t){const n=V({}),a=V("none"),r=V(e),o=e.value?"mounted":"unmounted";let s;const i=t.value?.ownerDocument.defaultView??dn,{state:l,dispatch:c}=K4(o,{mounted:{UNMOUNT:"unmounted",ANIMATION_OUT:"unmountSuspended"},unmountSuspended:{MOUNT:"mounted",ANIMATION_END:"unmounted"},unmounted:{MOUNT:"mounted"}}),u=y=>{if(On){const g=new CustomEvent(y,{bubbles:!1,cancelable:!1});t.value?.dispatchEvent(g)}};Se(e,async(y,g)=>{const b=g!==y;if(await Ve(),b){const w=a.value,_=nl(t.value);y?(c("MOUNT"),u("enter"),_==="none"&&u("after-enter")):_==="none"||_==="undefined"||n.value?.display==="none"?(c("UNMOUNT"),u("leave"),u("after-leave")):g&&w!==_?(c("ANIMATION_OUT"),u("leave")):(c("UNMOUNT"),u("after-leave"))}},{immediate:!0});const d=y=>{const g=nl(t.value),b=g.includes(CSS.escape(y.animationName)),w=l.value==="mounted"?"enter":"leave";if(y.target===t.value&&b&&(u(`after-${w}`),c("ANIMATION_END"),!r.value)){const _=t.value.style.animationFillMode;t.value.style.animationFillMode="forwards",s=i?.setTimeout(()=>{t.value?.style.animationFillMode==="forwards"&&(t.value.style.animationFillMode=_)})}y.target===t.value&&g==="none"&&c("ANIMATION_END")},h=y=>{y.target===t.value&&(a.value=nl(t.value))},p=Se(t,(y,g)=>{y?(n.value=getComputedStyle(y),y.addEventListener("animationstart",h),y.addEventListener("animationcancel",d),y.addEventListener("animationend",d)):(c("ANIMATION_END"),s!==void 0&&i?.clearTimeout(s),g?.removeEventListener("animationstart",h),g?.removeEventListener("animationcancel",d),g?.removeEventListener("animationend",d))},{immediate:!0}),m=Se(l,()=>{const y=nl(t.value);a.value=l.value==="mounted"?y:"none"});return _n(()=>{p(),m()}),{isPresent:S(()=>["mounted","unmountSuspended"].includes(l.value))}}function nl(e){return e&&getComputedStyle(e).animationName||"none"}var Za=Z({name:"Presence",props:{present:{type:Boolean,required:!0},forceMount:{type:Boolean}},slots:{},setup(e,{slots:t,expose:n}){const{present:a,forceMount:r}=kt(e),o=V(),{isPresent:s}=Z4(a,o);n({present:s});let i=t.default({present:s.value});i=lp(i||[]);const l=Mt();if(i&&i?.length>1){const c=l?.parent?.type.name?`<${l.parent.type.name} />`:"component";throw new Error([`Detected an invalid children for \`${c}\` for \`Presence\` component.`,"","Note: Presence works similarly to `v-if` directly, but it waits for animation/transition to finished before unmounting. So it expect only one direct child of valid VNode type.","You can apply a few solutions:",["Provide a single child element so that `presence` directive attach correctly.","Ensure the first child is an actual element instead of a raw text node or comment node."].map(u=>` - ${u}`).join(`
17
- `)].join(`
18
- `))}return()=>r.value||a.value||s.value?Pn(t.default({present:s.value})[0],{ref:c=>{const u=hn(c);return typeof u?.hasAttribute>"u"||(u?.hasAttribute("data-reka-popper-content-wrapper")?o.value=u.firstElementChild:o.value=u),u}}):null}});const eo=Z({name:"PrimitiveSlot",inheritAttrs:!1,setup(e,{attrs:t,slots:n}){return()=>{if(!n.default)return null;const a=lp(n.default()),r=a.findIndex(l=>l.type!==Ut);if(r===-1)return a;const o=a[r];delete o.props?.ref;const s=o.props?de(t,o.props):t,i=Va({...o,props:{}},s);return a.length===1?i:(a[r]=i,a)}}}),e7=["area","img","input"],fe=Z({name:"Primitive",inheritAttrs:!1,props:{asChild:{type:Boolean,default:!1},as:{type:[String,Object],default:"div"}},setup(e,{attrs:t,slots:n}){const a=e.asChild?"template":e.as;return typeof a=="string"&&e7.includes(a)?()=>Pn(a,t):a!=="template"?()=>Pn(e.as,t,{default:n.default}):()=>Pn(eo,t,{default:n.default})}});function bn(){const e=V(),t=S(()=>["#text","#comment"].includes(e.value?.$el.nodeName)?e.value?.$el.nextElementSibling:hn(e));return{primitiveElement:e,currentElement:t}}const[ha,t7]=pt("DialogRoot");var n7=Z({inheritAttrs:!1,__name:"DialogRoot",props:{open:{type:Boolean,required:!1,default:void 0},defaultOpen:{type:Boolean,required:!1,default:!1},modal:{type:Boolean,required:!1,default:!0}},emits:["update:open"],setup(e,{emit:t}){const n=e,r=gt(n,"open",t,{defaultValue:n.defaultOpen,passive:n.open===void 0}),o=V(),s=V(),{modal:i}=kt(n);return t7({open:r,modal:i,openModal:()=>{r.value=!0},onOpenChange:l=>{r.value=l},onOpenToggle:()=>{r.value=!r.value},contentId:"",titleId:"",descriptionId:"",triggerElement:o,contentElement:s}),(l,c)=>j(l.$slots,"default",{open:f(r),close:()=>r.value=!1})}}),a7=n7,r7=Z({__name:"DialogClose",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"button"}},setup(e){const t=e;Ee();const n=ha();return(a,r)=>(C(),R(f(fe),de(t,{type:a.as==="button"?"button":void 0,onClick:r[0]||(r[0]=o=>f(n).onOpenChange(!1))}),{default:E(()=>[j(a.$slots,"default")]),_:3},16,["type"]))}}),o7=r7;const s7="dismissableLayer.pointerDownOutside",i7="dismissableLayer.focusOutside";function ob(e,t){if(!(t instanceof Element))return!1;const n=t.closest("[data-dismissable-layer]"),a=e.dataset.dismissableLayer===""?e:e.querySelector("[data-dismissable-layer]"),r=Array.from(e.ownerDocument.querySelectorAll("[data-dismissable-layer]"));return!!(n&&(a===n||r.indexOf(a)<r.indexOf(n)))}function l7(e,t,n=!0){const a=t?.value?.ownerDocument??globalThis?.document,r=V(!1),o=V(()=>{});return qt(s=>{if(!On||!He(n))return;const i=async c=>{const u=c.target;if(!(!t?.value||!u)){if(ob(t.value,u)){r.value=!1;return}if(c.target&&!r.value){let h=function(){I1(s7,e,d)};const d={originalEvent:c};c.pointerType==="touch"?(a.removeEventListener("click",o.value),o.value=h,a.addEventListener("click",o.value,{once:!0})):h()}else a.removeEventListener("click",o.value);r.value=!1}},l=window.setTimeout(()=>{a.addEventListener("pointerdown",i)},0);s(()=>{window.clearTimeout(l),a.removeEventListener("pointerdown",i),a.removeEventListener("click",o.value)})}),{onPointerDownCapture:()=>{He(n)&&(r.value=!0)}}}function c7(e,t,n=!0){const a=t?.value?.ownerDocument??globalThis?.document,r=V(!1);return qt(o=>{if(!On||!He(n))return;const s=async i=>{if(!t?.value)return;await Ve(),await Ve();const l=i.target;!t.value||!l||ob(t.value,l)||i.target&&!r.value&&I1(i7,e,{originalEvent:i})};a.addEventListener("focusin",s),o(()=>a.removeEventListener("focusin",s))}),{onFocusCapture:()=>{He(n)&&(r.value=!0)},onBlurCapture:()=>{He(n)&&(r.value=!1)}}}const an=Rn({layersRoot:new Set,layersWithOutsidePointerEventsDisabled:new Set,originalBodyPointerEvents:void 0,branches:new Set});var u7=Z({__name:"DismissableLayer",props:{disableOutsidePointerEvents:{type:Boolean,required:!1,default:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:["escapeKeyDown","pointerDownOutside","focusOutside","interactOutside","dismiss"],setup(e,{emit:t}){const n=e,a=t,{forwardRef:r,currentElement:o}=Ee(),s=S(()=>o.value?.ownerDocument??globalThis.document),i=S(()=>an.layersRoot),l=S(()=>o.value?Array.from(i.value).indexOf(o.value):-1),c=S(()=>an.layersWithOutsidePointerEventsDisabled.size>0),u=S(()=>{const p=Array.from(i.value),[m]=[...an.layersWithOutsidePointerEventsDisabled].slice(-1),v=p.indexOf(m);return l.value>=v}),d=l7(async p=>{const m=[...an.branches].some(v=>v?.contains(p.target));!u.value||m||(a("pointerDownOutside",p),a("interactOutside",p),await Ve(),p.defaultPrevented||a("dismiss"))},o),h=c7(p=>{[...an.branches].some(v=>v?.contains(p.target))||(a("focusOutside",p),a("interactOutside",p),p.defaultPrevented||a("dismiss"))},o);return np("Escape",p=>{l.value===i.value.size-1&&(a("escapeKeyDown",p),p.defaultPrevented||a("dismiss"))}),Se([o,()=>n.disableOutsidePointerEvents],([p,m],v,y)=>{p&&(m&&(an.layersWithOutsidePointerEventsDisabled.size===0&&(an.originalBodyPointerEvents=s.value.body.style.pointerEvents,s.value.body.style.pointerEvents="none"),an.layersWithOutsidePointerEventsDisabled.add(p),y(()=>{an.layersWithOutsidePointerEventsDisabled.delete(p),an.layersWithOutsidePointerEventsDisabled.size===0&&!ip(an.originalBodyPointerEvents)&&(s.value.body.style.pointerEvents=an.originalBodyPointerEvents)})),i.value.add(p))},{immediate:!0}),qt(p=>{p(()=>{o.value&&(i.value.delete(o.value),an.layersWithOutsidePointerEventsDisabled.delete(o.value))})}),(p,m)=>(C(),R(f(fe),{ref:f(r),"as-child":p.asChild,as:p.as,"data-dismissable-layer":"",style:yn({pointerEvents:c.value?u.value?"auto":"none":void 0}),onFocusCapture:f(h).onFocusCapture,onBlurCapture:f(h).onBlurCapture,onPointerdownCapture:f(d).onPointerDownCapture},{default:E(()=>[j(p.$slots,"default")]),_:3},8,["as-child","as","style","onFocusCapture","onBlurCapture","onPointerdownCapture"]))}}),Ei=u7,d7=Z({__name:"DismissableLayerBranch",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(e){const t=e,{forwardRef:n,currentElement:a}=Ee();return Xe(()=>{an.branches.add(a.value)}),_n(()=>{an.branches.delete(a.value)}),(r,o)=>(C(),R(f(fe),de({ref:f(n)},t),{default:E(()=>[j(r.$slots,"default")]),_:3},16))}}),f7=d7;const p7=K3(()=>V([]));function h7(){const e=p7();return{add(t){const n=e.value[0];t!==n&&n?.pause(),e.value=sg(e.value,t),e.value.unshift(t)},remove(t){e.value=sg(e.value,t),e.value[0]?.resume()}}}function sg(e,t){const n=[...e],a=n.indexOf(t);return a!==-1&&n.splice(a,1),n}const Ju="focusScope.autoFocusOnMount",Qu="focusScope.autoFocusOnUnmount",ig={bubbles:!1,cancelable:!0};function El(e,{select:t=!1}={}){const n=$t();for(const a of e)if(sr(a,{select:t}),$t()!==n)return!0}function m7(e){const t=kp(e),n=lg(t,e),a=lg(t.reverse(),e);return[n,a]}function kp(e){const t=[],n=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:a=>{const r=a.tagName==="INPUT"&&a.type==="hidden";return a.disabled||a.hidden||r?NodeFilter.FILTER_SKIP:a.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP}});for(;n.nextNode();)t.push(n.currentNode);return t}function lg(e,t){for(const n of e)if(!g7(n,{upTo:t}))return n}function g7(e,{upTo:t}){if(getComputedStyle(e).visibility==="hidden")return!0;for(;e;){if(t!==void 0&&e===t)return!1;if(getComputedStyle(e).display==="none")return!0;e=e.parentElement}return!1}function v7(e){return e instanceof HTMLInputElement&&"select"in e}function sr(e,{select:t=!1}={}){if(e&&e.focus){const n=$t();e.focus({preventScroll:!0}),e!==n&&v7(e)&&t&&e.select()}}var y7=Z({__name:"FocusScope",props:{loop:{type:Boolean,required:!1,default:!1},trapped:{type:Boolean,required:!1,default:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:["mountAutoFocus","unmountAutoFocus"],setup(e,{emit:t}){const n=e,a=t,{currentRef:r,currentElement:o}=Ee(),s=V(null),i=h7(),l=Rn({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}});qt(u=>{if(!On)return;const d=o.value;if(!n.trapped)return;function h(y){if(l.paused||!d)return;const g=y.target;d.contains(g)?s.value=g:sr(s.value,{select:!0})}function p(y){if(l.paused||!d)return;const g=y.relatedTarget;g!==null&&(d.contains(g)||sr(s.value,{select:!0}))}function m(y){const g=s.value;if(g===null||!y.some(_=>_.removedNodes.length>0))return;d.contains(g)||sr(d)}document.addEventListener("focusin",h),document.addEventListener("focusout",p);const v=new MutationObserver(m);d&&v.observe(d,{childList:!0,subtree:!0}),u(()=>{document.removeEventListener("focusin",h),document.removeEventListener("focusout",p),v.disconnect()})}),qt(async u=>{const d=o.value;if(await Ve(),!d)return;i.add(l);const h=$t();if(!d.contains(h)){const m=new CustomEvent(Ju,ig);d.addEventListener(Ju,v=>a("mountAutoFocus",v)),d.dispatchEvent(m),m.defaultPrevented||(El(kp(d),{select:!0}),$t()===h&&sr(d))}u(()=>{d.removeEventListener(Ju,y=>a("mountAutoFocus",y));const m=new CustomEvent(Qu,ig),v=y=>{a("unmountAutoFocus",y)};d.addEventListener(Qu,v),d.dispatchEvent(m),d.setAttribute("data-focus-scope-unmounting",""),setTimeout(()=>{m.defaultPrevented||sr(h??document.body,{select:!0}),d.removeEventListener(Qu,v),i.remove(l),d.removeAttribute("data-focus-scope-unmounting")},0)})});function c(u){if(!n.loop&&!n.trapped||l.paused)return;const d=u.key==="Tab"&&!u.altKey&&!u.ctrlKey&&!u.metaKey,h=$t();if(d&&h){const p=u.currentTarget,[m,v]=m7(p);m&&v?!u.shiftKey&&h===v?(u.preventDefault(),n.loop&&sr(m,{select:!0})):u.shiftKey&&h===m&&(u.preventDefault(),n.loop&&sr(v,{select:!0})):h===p&&u.preventDefault()}}return(u,d)=>(C(),R(f(fe),{ref_key:"currentRef",ref:r,tabindex:"-1","as-child":u.asChild,as:u.as,onKeydown:c},{default:E(()=>[j(u.$slots,"default")]),_:3},8,["as-child","as"]))}}),Cp=y7;const b7="menu.itemSelect",Zd=["Enter"," "],w7=["ArrowDown","PageUp","Home"],sb=["ArrowUp","PageDown","End"],_7=[...w7,...sb],k7={ltr:[...Zd,"ArrowRight"],rtl:[...Zd,"ArrowLeft"]},C7={ltr:["ArrowLeft"],rtl:["ArrowRight"]};function Sp(e){return e?"open":"closed"}function sc(e){return e==="indeterminate"}function xp(e){return sc(e)?"indeterminate":e?"checked":"unchecked"}function S7(e){const t=$t();for(const n of e)if(n===t||(n.focus(),$t()!==t))return}function x7(e,t){const{x:n,y:a}=e;let r=!1;for(let o=0,s=t.length-1;o<t.length;s=o++){const i=t[o].x,l=t[o].y,c=t[s].x,u=t[s].y;l>a!=u>a&&n<(c-i)*(a-l)/(u-l)+i&&(r=!r)}return r}function A7(e,t){if(!t)return!1;const n={x:e.clientX,y:e.clientY};return x7(n,t)}function Ko(e){return e.pointerType==="mouse"}var P7=Z({__name:"DialogContentImpl",props:{forceMount:{type:Boolean,required:!1},trapFocus:{type:Boolean,required:!1},disableOutsidePointerEvents:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:["escapeKeyDown","pointerDownOutside","focusOutside","interactOutside","openAutoFocus","closeAutoFocus"],setup(e,{emit:t}){const n=e,a=t,r=ha(),{forwardRef:o,currentElement:s}=Ee();return r.titleId||=Mn(void 0,"reka-dialog-title"),r.descriptionId||=Mn(void 0,"reka-dialog-description"),Xe(()=>{r.contentElement=s,$t()!==document.body&&(r.triggerElement.value=$t())}),(i,l)=>(C(),R(f(Cp),{"as-child":"",loop:"",trapped:n.trapFocus,onMountAutoFocus:l[5]||(l[5]=c=>a("openAutoFocus",c)),onUnmountAutoFocus:l[6]||(l[6]=c=>a("closeAutoFocus",c))},{default:E(()=>[ie(f(Ei),de({id:f(r).contentId,ref:f(o),as:i.as,"as-child":i.asChild,"disable-outside-pointer-events":i.disableOutsidePointerEvents,role:"dialog","aria-describedby":f(r).descriptionId,"aria-labelledby":f(r).titleId,"data-state":f(Sp)(f(r).open.value)},i.$attrs,{onDismiss:l[0]||(l[0]=c=>f(r).onOpenChange(!1)),onEscapeKeyDown:l[1]||(l[1]=c=>a("escapeKeyDown",c)),onFocusOutside:l[2]||(l[2]=c=>a("focusOutside",c)),onInteractOutside:l[3]||(l[3]=c=>a("interactOutside",c)),onPointerDownOutside:l[4]||(l[4]=c=>a("pointerDownOutside",c))}),{default:E(()=>[j(i.$slots,"default")]),_:3},16,["id","as","as-child","disable-outside-pointer-events","aria-describedby","aria-labelledby","data-state"])]),_:3},8,["trapped"]))}}),ib=P7,M7=Z({__name:"DialogContentModal",props:{forceMount:{type:Boolean,required:!1},trapFocus:{type:Boolean,required:!1},disableOutsidePointerEvents:{type:Boolean,required:!1,default:!0},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:["escapeKeyDown","pointerDownOutside","focusOutside","interactOutside","openAutoFocus","closeAutoFocus"],setup(e,{emit:t}){const n=e,a=t,r=ha(),o=Xa(a),{forwardRef:s,currentElement:i}=Ee();return _p(i),(l,c)=>(C(),R(ib,de({...n,...f(o)},{ref:f(s),"trap-focus":f(r).open.value,"disable-outside-pointer-events":n.disableOutsidePointerEvents,onCloseAutoFocus:c[0]||(c[0]=u=>{u.defaultPrevented||(u.preventDefault(),f(r).triggerElement.value?.focus())}),onPointerDownOutside:c[1]||(c[1]=u=>{const d=u.detail.originalEvent,h=d.button===0&&d.ctrlKey===!0;(d.button===2||h)&&u.preventDefault()}),onFocusOutside:c[2]||(c[2]=u=>{u.preventDefault()})}),{default:E(()=>[j(l.$slots,"default")]),_:3},16,["trap-focus","disable-outside-pointer-events"]))}}),T7=M7,I7=Z({__name:"DialogContentNonModal",props:{forceMount:{type:Boolean,required:!1},trapFocus:{type:Boolean,required:!1},disableOutsidePointerEvents:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:["escapeKeyDown","pointerDownOutside","focusOutside","interactOutside","openAutoFocus","closeAutoFocus"],setup(e,{emit:t}){const n=e,r=Xa(t);Ee();const o=ha(),s=V(!1),i=V(!1);return(l,c)=>(C(),R(ib,de({...n,...f(r)},{"trap-focus":!1,"disable-outside-pointer-events":!1,onCloseAutoFocus:c[0]||(c[0]=u=>{u.defaultPrevented||(s.value||f(o).triggerElement.value?.focus(),u.preventDefault()),s.value=!1,i.value=!1}),onInteractOutside:c[1]||(c[1]=u=>{u.defaultPrevented||(s.value=!0,u.detail.originalEvent.type==="pointerdown"&&(i.value=!0));const d=u.target;f(o).triggerElement.value?.contains(d)&&u.preventDefault(),u.detail.originalEvent.type==="focusin"&&i.value&&u.preventDefault()})}),{default:E(()=>[j(l.$slots,"default")]),_:3},16))}}),D7=I7,E7=Z({__name:"DialogContent",props:{forceMount:{type:Boolean,required:!1},disableOutsidePointerEvents:{type:Boolean,required:!1,default:void 0},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:["escapeKeyDown","pointerDownOutside","focusOutside","interactOutside","openAutoFocus","closeAutoFocus"],setup(e,{emit:t}){const n=e,a=t,r=ha(),o=Xa(a),{forwardRef:s}=Ee();return(i,l)=>(C(),R(f(Za),{present:i.forceMount||f(r).open.value},{default:E(()=>[f(r).modal.value?(C(),R(T7,de({key:0,ref:f(s)},{...n,...f(o),...i.$attrs}),{default:E(()=>[j(i.$slots,"default")]),_:3},16)):(C(),R(D7,de({key:1,ref:f(s)},{...n,...f(o),...i.$attrs}),{default:E(()=>[j(i.$slots,"default")]),_:3},16))]),_:3},8,["present"]))}}),$7=E7,R7=Z({__name:"DialogDescription",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"p"}},setup(e){const t=e;Ee();const n=ha();return(a,r)=>(C(),R(f(fe),de(t,{id:f(n).descriptionId}),{default:E(()=>[j(a.$slots,"default")]),_:3},16,["id"]))}}),Zu=R7,L7=Z({__name:"DialogOverlayImpl",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(e){const t=ha();return cp(!0),Ee(),(n,a)=>(C(),R(f(fe),{as:n.as,"as-child":n.asChild,"data-state":f(t).open.value?"open":"closed",style:{"pointer-events":"auto"},onPointerdown:a[0]||(a[0]=Vt(()=>{},["left","self","prevent"]))},{default:E(()=>[j(n.$slots,"default")]),_:3},8,["as","as-child","data-state"]))}}),O7=L7,N7=Z({__name:"DialogOverlay",props:{forceMount:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(e){const t=ha(),{forwardRef:n}=Ee();return(a,r)=>f(t)?.modal.value?(C(),R(f(Za),{key:0,present:a.forceMount||f(t).open.value},{default:E(()=>[ie(O7,de(a.$attrs,{ref:f(n),as:a.as,"as-child":a.asChild}),{default:E(()=>[j(a.$slots,"default")]),_:3},16,["as","as-child"])]),_:3},8,["present"])):ve("v-if",!0)}}),cg=N7,F7=Z({__name:"Teleport",props:{to:{type:null,required:!1,default:"body"},disabled:{type:Boolean,required:!1},defer:{type:Boolean,required:!1},forceMount:{type:Boolean,required:!1}},setup(e){const t=f1();return(n,a)=>f(t)||n.forceMount?(C(),R(Vf,{key:0,to:n.to,disabled:n.disabled,defer:n.defer},[j(n.$slots,"default")],8,["to","disabled","defer"])):ve("v-if",!0)}}),cs=F7,q7=Z({__name:"DialogPortal",props:{to:{type:null,required:!1},disabled:{type:Boolean,required:!1},defer:{type:Boolean,required:!1},forceMount:{type:Boolean,required:!1}},setup(e){const t=e;return(n,a)=>(C(),R(f(cs),$e(Oe(t)),{default:E(()=>[j(n.$slots,"default")]),_:3},16))}}),B7=q7,H7=Z({__name:"DialogTitle",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"h2"}},setup(e){const t=e,n=ha();return Ee(),(a,r)=>(C(),R(f(fe),de(t,{id:f(n).titleId}),{default:E(()=>[j(a.$slots,"default")]),_:3},16,["id"]))}}),ed=H7,V7=Z({__name:"DialogTrigger",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"button"}},setup(e){const t=e,n=ha(),{forwardRef:a,currentElement:r}=Ee();return n.contentId||=Mn(void 0,"reka-dialog-content"),Xe(()=>{n.triggerElement.value=r.value}),(o,s)=>(C(),R(f(fe),de(t,{ref:f(a),type:o.as==="button"?"button":void 0,"aria-haspopup":"dialog","aria-expanded":f(n).open.value||!1,"aria-controls":f(n).open.value?f(n).contentId:void 0,"data-state":f(n).open.value?"open":"closed",onClick:f(n).onOpenToggle}),{default:E(()=>[j(o.$slots,"default")]),_:3},16,["type","aria-expanded","aria-controls","data-state","onClick"]))}}),z7=V7;const ug="data-reka-collection-item";function $i(e={}){const{key:t="",isProvider:n=!1}=e,a=`${t}CollectionProvider`;let r;n?(r={collectionRef:V(),itemMap:V(new Map)},An(a,r)):r=rt(a);const o=(u=!1)=>{const d=r.collectionRef.value;if(!d)return[];const h=Array.from(d.querySelectorAll(`[${ug}]`)),m=Array.from(r.itemMap.value.values()).sort((v,y)=>h.indexOf(v.ref)-h.indexOf(y.ref));return u?m:m.filter(v=>v.ref.dataset.disabled!=="")},s=Z({name:"CollectionSlot",inheritAttrs:!1,setup(u,{slots:d,attrs:h}){const{primitiveElement:p,currentElement:m}=bn();return Se(m,()=>{r.collectionRef.value=m.value}),()=>Pn(eo,{ref:p,...h},d)}}),i=Z({name:"CollectionItem",inheritAttrs:!1,props:{value:{validator:()=>!0}},setup(u,{slots:d,attrs:h}){const{primitiveElement:p,currentElement:m}=bn();return qt(v=>{if(m.value){const y=ki(m.value);r.itemMap.value.set(y,{ref:m.value,value:u.value}),v(()=>r.itemMap.value.delete(y))}}),()=>Pn(eo,{...h,[ug]:"",ref:p},d)}}),l=S(()=>Array.from(r.itemMap.value.values())),c=S(()=>r.itemMap.value.size);return{getItems:o,reactiveItems:l,itemMapSize:c,CollectionSlot:s,CollectionItem:i}}var j7=Z({__name:"VisuallyHidden",props:{feature:{type:String,required:!1,default:"focusable"},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"span"}},setup(e){return(t,n)=>(C(),R(f(fe),{as:t.as,"as-child":t.asChild,"aria-hidden":t.feature==="focusable"?"true":void 0,"data-hidden":t.feature==="fully-hidden"?"":void 0,tabindex:t.feature==="fully-hidden"?"-1":void 0,style:{position:"absolute",border:0,width:"1px",height:"1px",padding:0,margin:"-1px",overflow:"hidden",clip:"rect(0, 0, 0, 0)",clipPath:"inset(50%)",whiteSpace:"nowrap",wordWrap:"normal",top:"-1px",left:"-1px"}},{default:E(()=>[j(t.$slots,"default")]),_:3},8,["as","as-child","aria-hidden","data-hidden","tabindex"]))}}),Kc=j7;const W7="rovingFocusGroup.onEntryFocus",U7={bubbles:!1,cancelable:!0},G7={ArrowLeft:"prev",ArrowUp:"prev",ArrowRight:"next",ArrowDown:"next",PageUp:"first",Home:"first",PageDown:"last",End:"last"};function Y7(e,t){return t!=="rtl"?e:e==="ArrowLeft"?"ArrowRight":e==="ArrowRight"?"ArrowLeft":e}function uae(e,t,n){const a=Y7(e.key,n);if(!(t==="vertical"&&["ArrowLeft","ArrowRight"].includes(a))&&!(t==="horizontal"&&["ArrowUp","ArrowDown"].includes(a)))return G7[a]}function K7(e,t=!1){const n=$t();for(const a of e)if(a===n||(a.focus({preventScroll:t}),$t()!==n))return}function dae(e,t){return e.map((n,a)=>e[(t+a)%e.length])}const[lb,X7]=pt("PopperRoot");var J7=Z({inheritAttrs:!1,__name:"PopperRoot",setup(e){const t=V();return X7({anchor:t,onAnchorChange:n=>t.value=n}),(n,a)=>j(n.$slots,"default")}}),Ri=J7,Q7=Z({__name:"PopperAnchor",props:{reference:{type:null,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(e){const t=e,{forwardRef:n,currentElement:a}=Ee(),r=lb();return Ly(()=>{r.onAnchorChange(t.reference??a.value)}),(o,s)=>(C(),R(f(fe),{ref:f(n),as:o.as,"as-child":o.asChild},{default:E(()=>[j(o.$slots,"default")]),_:3},8,["as","as-child"]))}}),Li=Q7;const Z7={key:0,d:"M0 0L6 6L12 0"},eA={key:1,d:"M0 0L4.58579 4.58579C5.36683 5.36683 6.63316 5.36684 7.41421 4.58579L12 0"};var tA=Z({__name:"Arrow",props:{width:{type:Number,required:!1,default:10},height:{type:Number,required:!1,default:5},rounded:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"svg"}},setup(e){const t=e;return Ee(),(n,a)=>(C(),R(f(fe),de(t,{width:n.width,height:n.height,viewBox:n.asChild?void 0:"0 0 12 6",preserveAspectRatio:n.asChild?void 0:"none"}),{default:E(()=>[j(n.$slots,"default",{},()=>[n.rounded?(C(),ye("path",eA)):(C(),ye("path",Z7))])]),_:3},16,["width","height","viewBox","preserveAspectRatio"]))}}),nA=tA;function aA(e){return e!==null}function rA(e){return{name:"transformOrigin",options:e,fn(t){const{placement:n,rects:a,middlewareData:r}=t,s=r.arrow?.centerOffset!==0,i=s?0:e.arrowWidth,l=s?0:e.arrowHeight,[c,u]=ef(n),d={start:"0%",center:"50%",end:"100%"}[u],h=(r.arrow?.x??0)+i/2,p=(r.arrow?.y??0)+l/2;let m="",v="";return c==="bottom"?(m=s?d:`${h}px`,v=`${-l}px`):c==="top"?(m=s?d:`${h}px`,v=`${a.floating.height+l}px`):c==="right"?(m=`${-l}px`,v=s?d:`${p}px`):c==="left"&&(m=`${a.floating.width+l}px`,v=s?d:`${p}px`),{data:{x:m,y:v}}}}}function ef(e){const[t,n="center"]=e.split("-");return[t,n]}const oA=["top","right","bottom","left"],wr=Math.min,Oa=Math.max,ic=Math.round,al=Math.floor,Na=e=>({x:e,y:e}),sA={left:"right",right:"left",bottom:"top",top:"bottom"};function cb(e,t,n){return Oa(e,wr(t,n))}function ja(e,t){return typeof e=="function"?e(t):e}function _r(e){return e.split("-")[0]}function us(e){return e.split("-")[1]}function Ap(e){return e==="x"?"y":"x"}function Pp(e){return e==="y"?"height":"width"}function na(e){const t=e[0];return t==="t"||t==="b"?"y":"x"}function Mp(e){return Ap(na(e))}function iA(e,t,n){n===void 0&&(n=!1);const a=us(e),r=Mp(e),o=Pp(r);let s=r==="x"?a===(n?"end":"start")?"right":"left":a==="start"?"bottom":"top";return t.reference[o]>t.floating[o]&&(s=lc(s)),[s,lc(s)]}function lA(e){const t=lc(e);return[tf(e),t,tf(t)]}function tf(e){return e.includes("start")?e.replace("start","end"):e.replace("end","start")}const dg=["left","right"],fg=["right","left"],cA=["top","bottom"],uA=["bottom","top"];function dA(e,t,n){switch(e){case"top":case"bottom":return n?t?fg:dg:t?dg:fg;case"left":case"right":return t?cA:uA;default:return[]}}function fA(e,t,n,a){const r=us(e);let o=dA(_r(e),n==="start",a);return r&&(o=o.map(s=>s+"-"+r),t&&(o=o.concat(o.map(tf)))),o}function lc(e){const t=_r(e);return sA[t]+e.slice(t.length)}function pA(e){var t,n,a,r;return{top:(t=e.top)!=null?t:0,right:(n=e.right)!=null?n:0,bottom:(a=e.bottom)!=null?a:0,left:(r=e.left)!=null?r:0}}function ub(e){return typeof e!="number"?pA(e):{top:e,right:e,bottom:e,left:e}}function cc(e){const{x:t,y:n,width:a,height:r}=e;return{width:a,height:r,top:n,left:t,right:t+a,bottom:n+r,x:t,y:n}}function pg(e,t,n){let{reference:a,floating:r}=e;const o=na(t),s=Mp(t),i=Pp(s),l=_r(t),c=o==="y",u=a.x+a.width/2-r.width/2,d=a.y+a.height/2-r.height/2,h=a[i]/2-r[i]/2;let p;switch(l){case"top":p={x:u,y:a.y-r.height};break;case"bottom":p={x:u,y:a.y+a.height};break;case"right":p={x:a.x+a.width,y:d};break;case"left":p={x:a.x-r.width,y:d};break;default:p={x:a.x,y:a.y}}const m=us(t);return m&&(p[s]+=h*(m==="end"?1:-1)*(n&&c?-1:1)),p}async function hA(e,t){var n;t===void 0&&(t={});const{x:a,y:r,platform:o,rects:s,elements:i,strategy:l}=e,{boundary:c="clippingAncestors",rootBoundary:u="viewport",elementContext:d="floating",altBoundary:h=!1,padding:p=0}=ja(t,e),m=ub(p),y=i[h?d==="floating"?"reference":"floating":d],g=cc(await o.getClippingRect({element:(n=await(o.isElement==null?void 0:o.isElement(y)))==null||n?y:y.contextElement||await(o.getDocumentElement==null?void 0:o.getDocumentElement(i.floating)),boundary:c,rootBoundary:u,strategy:l})),b=d==="floating"?{x:a,y:r,width:s.floating.width,height:s.floating.height}:s.reference,w=await(o.getOffsetParent==null?void 0:o.getOffsetParent(i.floating)),_=await(o.isElement==null?void 0:o.isElement(w))&&await(o.getScale==null?void 0:o.getScale(w))||{x:1,y:1},A=cc(o.convertOffsetParentRelativeRectToViewportRelativeRect?await o.convertOffsetParentRelativeRectToViewportRelativeRect({elements:i,rect:b,offsetParent:w,strategy:l}):b);return{top:(g.top-A.top+m.top)/_.y,bottom:(A.bottom-g.bottom+m.bottom)/_.y,left:(g.left-A.left+m.left)/_.x,right:(A.right-g.right+m.right)/_.x}}const mA=50,gA=async(e,t,n)=>{const{placement:a="bottom",strategy:r="absolute",middleware:o=[],platform:s}=n,i=s.detectOverflow?s:{...s,detectOverflow:hA},l=await(s.isRTL==null?void 0:s.isRTL(t));let c=await s.getElementRects({reference:e,floating:t,strategy:r}),{x:u,y:d}=pg(c,a,l),h=a,p=0;const m={};for(let v=0;v<o.length;v++){const y=o[v];if(!y)continue;const{name:g,fn:b}=y,{x:w,y:_,data:A,reset:P}=await b({x:u,y:d,initialPlacement:a,placement:h,strategy:r,middlewareData:m,rects:c,platform:i,elements:{reference:e,floating:t}});u=w??u,d=_??d,m[g]={...m[g],...A},P&&p<mA&&(p++,typeof P=="object"&&(P.placement&&(h=P.placement),P.rects&&(c=P.rects===!0?await s.getElementRects({reference:e,floating:t,strategy:r}):P.rects),{x:u,y:d}=pg(c,h,l)),v=-1)}return{x:u,y:d,placement:h,strategy:r,middlewareData:m}},vA=e=>({name:"arrow",options:e,async fn(t){const{x:n,y:a,placement:r,rects:o,platform:s,elements:i,middlewareData:l}=t,{element:c,padding:u=0}=ja(e,t)||{};if(c==null)return{};const d=ub(u),h={x:n,y:a},p=Mp(r),m=Pp(p),v=await s.getDimensions(c),y=p==="y",g=y?"top":"left",b=y?"bottom":"right",w=y?"clientHeight":"clientWidth",_=o.reference[m]+o.reference[p]-h[p]-o.floating[m],A=h[p]-o.reference[p],P=await(s.getOffsetParent==null?void 0:s.getOffsetParent(c));let k=P?P[w]:0;(!k||!await(s.isElement==null?void 0:s.isElement(P)))&&(k=i.floating[w]||o.floating[m]);const T=_/2-A/2,I=k/2-v[m]/2-1,Y=wr(d[g],I),Q=wr(d[b],I),z=k-v[m]-Q,te=k/2-v[m]/2+T,O=cb(Y,te,z),D=!l.arrow&&us(r)!=null&&te!==O&&o.reference[m]/2-(te<Y?Y:Q)-v[m]/2<0,q=D?te<Y?te-Y:te-z:0;return{[p]:h[p]+q,data:{[p]:O,centerOffset:te-O-q,...D&&{alignmentOffset:q}},reset:D}}}),yA=function(e){return e===void 0&&(e={}),{name:"flip",options:e,async fn(t){var n,a;const{placement:r,middlewareData:o,rects:s,initialPlacement:i,platform:l,elements:c}=t,{mainAxis:u=!0,crossAxis:d=!0,fallbackPlacements:h,fallbackStrategy:p="bestFit",fallbackAxisSideDirection:m="none",flipAlignment:v=!0,...y}=ja(e,t);if((n=o.arrow)!=null&&n.alignmentOffset)return{};const g=_r(r),b=na(i),w=_r(i)===i,_=await(l.isRTL==null?void 0:l.isRTL(c.floating)),A=h||(w||!v?[lc(i)]:lA(i)),P=m!=="none";!h&&P&&A.push(...fA(i,v,m,_));const k=[i,...A],T=await l.detectOverflow(t,y),I=[];let Y=((a=o.flip)==null?void 0:a.overflows)||[];if(u&&I.push(T[g]),d){const O=iA(r,s,_);I.push(T[O[0]],T[O[1]])}if(Y=[...Y,{placement:r,overflows:I}],!I.every(O=>O<=0)){var Q,z;const O=(((Q=o.flip)==null?void 0:Q.index)||0)+1,D=k[O];if(D&&(!(d==="alignment"?b!==na(D):!1)||Y.every(L=>na(L.placement)===b?L.overflows[0]>0:!0)))return{data:{index:O,overflows:Y},reset:{placement:D}};let q=(z=Y.filter(G=>G.overflows[0]<=0).sort((G,L)=>G.overflows[1]-L.overflows[1])[0])==null?void 0:z.placement;if(!q)switch(p){case"bestFit":{var te;const G=(te=Y.filter(L=>{if(P){const ee=na(L.placement);return ee===b||ee==="y"}return!0}).map(L=>[L.placement,L.overflows.filter(ee=>ee>0).reduce((ee,K)=>ee+K,0)]).sort((L,ee)=>L[1]-ee[1])[0])==null?void 0:te[0];G&&(q=G);break}case"initialPlacement":q=i;break}if(r!==q)return{reset:{placement:q}}}return{}}}};function hg(e,t){return{top:e.top-t.height,right:e.right-t.width,bottom:e.bottom-t.height,left:e.left-t.width}}function mg(e){return oA.some(t=>e[t]>=0)}const bA=function(e){return e===void 0&&(e={}),{name:"hide",options:e,async fn(t){const{rects:n,platform:a}=t,{strategy:r="referenceHidden",...o}=ja(e,t);switch(r){case"referenceHidden":{const s=await a.detectOverflow(t,{...o,elementContext:"reference"}),i=hg(s,n.reference);return{data:{referenceHiddenOffsets:i,referenceHidden:mg(i)}}}case"escaped":{const s=await a.detectOverflow(t,{...o,altBoundary:!0}),i=hg(s,n.floating);return{data:{escapedOffsets:i,escaped:mg(i)}}}default:return{}}}}},db=new Set(["left","top"]);async function wA(e,t){const{placement:n,platform:a,elements:r}=e,o=await(a.isRTL==null?void 0:a.isRTL(r.floating)),s=_r(n),i=us(n),l=na(n)==="y",c=db.has(s)?-1:1,u=o&&l?-1:1,d=ja(t,e);let{mainAxis:h,crossAxis:p,alignmentAxis:m}=typeof d=="number"?{mainAxis:d,crossAxis:0,alignmentAxis:null}:{mainAxis:d.mainAxis||0,crossAxis:d.crossAxis||0,alignmentAxis:d.alignmentAxis};return i&&typeof m=="number"&&(p=i==="end"?m*-1:m),l?{x:p*u,y:h*c}:{x:h*c,y:p*u}}const _A=function(e){return e===void 0&&(e=0),{name:"offset",options:e,async fn(t){var n,a;const{x:r,y:o,placement:s,middlewareData:i}=t,l=await wA(t,e);return s===((n=i.offset)==null?void 0:n.placement)&&(a=i.arrow)!=null&&a.alignmentOffset?{}:{x:r+l.x,y:o+l.y,data:{...l,placement:s}}}}},kA=function(e){return e===void 0&&(e={}),{name:"shift",options:e,async fn(t){const{x:n,y:a,placement:r,platform:o}=t,{mainAxis:s=!0,crossAxis:i=!1,limiter:l={fn:b=>{let{x:w,y:_}=b;return{x:w,y:_}}},...c}=ja(e,t),u={x:n,y:a},d=await o.detectOverflow(t,c),h=na(r),p=Ap(h);let m=u[p],v=u[h];const y=(b,w)=>cb(w+d[b==="y"?"top":"left"],w,w-d[b==="y"?"bottom":"right"]);s&&(m=y(p,m)),i&&(v=y(h,v));const g=l.fn({...t,[p]:m,[h]:v});return{...g,data:{x:g.x-n,y:g.y-a,enabled:{[p]:s,[h]:i}}}}}},CA=function(e){return e===void 0&&(e={}),{options:e,fn(t){var n,a;const{x:r,y:o,placement:s,rects:i,middlewareData:l}=t,{offset:c=0,mainAxis:u=!0,crossAxis:d=!0}=ja(e,t),h={x:r,y:o},p=na(s),m=Ap(p);let v=h[m],y=h[p];const g=ja(c,t),b=typeof g=="number"?{mainAxis:g,crossAxis:0}:{mainAxis:(n=g.mainAxis)!=null?n:0,crossAxis:(a=g.crossAxis)!=null?a:0};if(u){const A=m==="y"?"height":"width",P=i.reference[m]-i.floating[A]+b.mainAxis,k=i.reference[m]+i.reference[A]-b.mainAxis;v<P?v=P:v>k&&(v=k)}if(d){var w,_;const A=m==="y"?"width":"height",P=db.has(_r(s)),k=i.reference[p]-i.floating[A]+(P&&((w=l.offset)==null?void 0:w[p])||0)+(P?0:b.crossAxis),T=i.reference[p]+i.reference[A]+(P?0:((_=l.offset)==null?void 0:_[p])||0)-(P?b.crossAxis:0);y<k?y=k:y>T&&(y=T)}return{[m]:v,[p]:y}}}},SA=function(e){return e===void 0&&(e={}),{name:"size",options:e,async fn(t){const{placement:n,rects:a,platform:r,elements:o}=t,{apply:s=()=>{},...i}=ja(e,t),l=await r.detectOverflow(t,i),c=_r(n),u=us(n),d=na(n)==="y",{width:h,height:p}=a.floating;let m,v;c==="top"||c==="bottom"?(m=c,v=u===(await(r.isRTL==null?void 0:r.isRTL(o.floating))?"start":"end")?"left":"right"):(v=c,m=u==="end"?"top":"bottom");const y=p-l.top-l.bottom,g=h-l.left-l.right,b=wr(p-l[m],y),w=wr(h-l[v],g),_=t.middlewareData.shift,A=!_;let P=b,k=w;_!=null&&_.enabled.x&&(k=g),_!=null&&_.enabled.y&&(P=y),A&&!u&&(d?k=h-2*Oa(l.left,l.right):P=p-2*Oa(l.top,l.bottom)),await s({...t,availableWidth:k,availableHeight:P});const T=await r.getDimensions(o.floating);return h!==T.width||p!==T.height?{reset:{rects:!0}}:{}}}};function Xc(){return typeof window<"u"}function ds(e){return fb(e)?(e.nodeName||"").toLowerCase():"#document"}function vn(e){var t;return(e==null||(t=e.ownerDocument)==null?void 0:t.defaultView)||window}function er(e){var t;return(t=(fb(e)?e.ownerDocument:e.document)||window.document)==null?void 0:t.documentElement}function fb(e){return Xc()?e instanceof Node||e instanceof vn(e).Node:!1}function ua(e){return Xc()?e instanceof Element||e instanceof vn(e).Element:!1}function kr(e){return Xc()?e instanceof HTMLElement||e instanceof vn(e).HTMLElement:!1}function gg(e){return!Xc()||typeof ShadowRoot>"u"?!1:e instanceof ShadowRoot||e instanceof vn(e).ShadowRoot}function Jc(e){const{overflow:t,overflowX:n,overflowY:a,display:r}=da(e);return/auto|scroll|overlay|hidden|clip/.test(t+a+n)&&r!=="inline"&&r!=="contents"}function xA(e){return/^(table|td|th)$/.test(ds(e))}function Qc(e){try{if(e.matches(":popover-open"))return!0}catch{}try{return e.matches(":modal")}catch{return!1}}const AA=/transform|translate|scale|rotate|perspective|filter/,PA=/paint|layout|strict|content/,Lr=e=>!!e&&e!=="none";let td;function Tp(e){const t=ua(e)?da(e):e;return Lr(t.transform)||Lr(t.translate)||Lr(t.scale)||Lr(t.rotate)||Lr(t.perspective)||!Ip()&&(Lr(t.backdropFilter)||Lr(t.filter))||AA.test(t.willChange||"")||PA.test(t.contain||"")}function MA(e){let t=to(e);for(;kr(t)&&!si(t);){if(Tp(t))return t;if(Qc(t))return null;t=to(t)}return null}function Ip(){return td==null&&(td=typeof CSS<"u"&&CSS.supports&&CSS.supports("-webkit-backdrop-filter","none")),td}function si(e){return/^(html|body|#document)$/.test(ds(e))}function da(e){return vn(e).getComputedStyle(e)}function Zc(e){return ua(e)?{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}:{scrollLeft:e.scrollX,scrollTop:e.scrollY}}function to(e){if(ds(e)==="html")return e;const t=e.assignedSlot||e.parentNode||gg(e)&&e.host||er(e);return gg(t)?t.host:t}function pb(e){const t=to(e);return si(t)?(e.ownerDocument||e).body:kr(t)&&Jc(t)?t:pb(t)}function ii(e,t,n){var a;t===void 0&&(t=[]),n===void 0&&(n=!0);const r=pb(e),o=r===((a=e.ownerDocument)==null?void 0:a.body),s=vn(r);if(o){const i=nf(s);return t.concat(s,s.visualViewport||[],Jc(r)?r:[],i&&n?ii(i):[])}else return t.concat(r,ii(r,[],n))}function nf(e){return e.parent&&Object.getPrototypeOf(e.parent)?e.frameElement:null}function hb(e){const t=da(e);let n=parseFloat(t.width)||0,a=parseFloat(t.height)||0;const r=kr(e),o=r?e.offsetWidth:n,s=r?e.offsetHeight:a,i=ic(n)!==o||ic(a)!==s;return i&&(n=o,a=s),{width:n,height:a,$:i}}function Dp(e){return ua(e)?e:e.contextElement}function Lo(e){const t=Dp(e);if(!kr(t))return Na(1);const n=t.getBoundingClientRect(),{width:a,height:r,$:o}=hb(t);let s=(o?ic(n.width):n.width)/a,i=(o?ic(n.height):n.height)/r;return(!s||!Number.isFinite(s))&&(s=1),(!i||!Number.isFinite(i))&&(i=1),{x:s,y:i}}const TA=Na(0);function mb(e){const t=vn(e);return!Ip()||!t.visualViewport?TA:{x:t.visualViewport.offsetLeft,y:t.visualViewport.offsetTop}}function IA(e,t,n){return t===void 0&&(t=!1),!!n&&t&&n===vn(e)}function no(e,t,n,a){t===void 0&&(t=!1),n===void 0&&(n=!1);const r=e.getBoundingClientRect(),o=Dp(e);let s=Na(1);t&&(a?ua(a)&&(s=Lo(a)):s=Lo(e));const i=IA(o,n,a)?mb(o):Na(0);let l=(r.left+i.x)/s.x,c=(r.top+i.y)/s.y,u=r.width/s.x,d=r.height/s.y;if(o&&a){const h=vn(o),p=ua(a)?vn(a):a;let m=h,v=nf(m);for(;v&&p!==m;){const y=Lo(v),g=v.getBoundingClientRect(),b=da(v),w=g.left+(v.clientLeft+parseFloat(b.paddingLeft))*y.x,_=g.top+(v.clientTop+parseFloat(b.paddingTop))*y.y;l*=y.x,c*=y.y,u*=y.x,d*=y.y,l+=w,c+=_,m=vn(v),v=nf(m)}}return cc({width:u,height:d,x:l,y:c})}function eu(e,t){const n=Zc(e).scrollLeft;return t?t.left+n:no(er(e)).left+n}function gb(e,t){const n=e.getBoundingClientRect(),a=n.left+t.scrollLeft-eu(e,n),r=n.top+t.scrollTop;return{x:a,y:r}}function DA(e){let{elements:t,rect:n,offsetParent:a,strategy:r}=e;const o=r==="fixed",s=er(a),i=t?Qc(t.floating):!1;if(a===s||i&&o)return n;let l={scrollLeft:0,scrollTop:0},c=Na(1);const u=Na(0),d=kr(a);if((d||!o)&&((ds(a)!=="body"||Jc(s))&&(l=Zc(a)),d)){const p=no(a);c=Lo(a),u.x=p.x+a.clientLeft,u.y=p.y+a.clientTop}const h=s&&!d&&!o?gb(s,l):Na(0);return{width:n.width*c.x,height:n.height*c.y,x:n.x*c.x-l.scrollLeft*c.x+u.x+h.x,y:n.y*c.y-l.scrollTop*c.y+u.y+h.y}}function EA(e){return e.getClientRects?Array.from(e.getClientRects()):[]}function $A(e){const t=Zc(e),n=e.ownerDocument.body,a=Oa(e.scrollWidth,e.clientWidth,n.scrollWidth,n.clientWidth),r=Oa(e.scrollHeight,e.clientHeight,n.scrollHeight,n.clientHeight);let o=-t.scrollLeft+eu(e);const s=-t.scrollTop;return da(n).direction==="rtl"&&(o+=Oa(e.clientWidth,n.clientWidth)-a),{width:a,height:r,x:o,y:s}}const RA=25;function LA(e,t,n){n===void 0&&(n="viewport");const a=n==="layoutViewport",r=vn(e),o=er(e),s=r.visualViewport;let i=o.clientWidth,l=o.clientHeight,c=0,u=0;if(s){const h=!Ip()||t==="fixed";a?h||(c=-s.offsetLeft,u=-s.offsetTop):(i=s.width,l=s.height,h&&(c=s.offsetLeft,u=s.offsetTop))}if(eu(o)<=0){const h=o.ownerDocument,p=h.body,m=getComputedStyle(p),v=h.compatMode==="CSS1Compat"&&parseFloat(m.marginLeft)+parseFloat(m.marginRight)||0,y=Math.abs(o.clientWidth-p.clientWidth-v),g=getComputedStyle(o).scrollbarGutter==="stable both-edges"?y/2:y;g<=RA&&(i-=g)}return{width:i,height:l,x:c,y:u}}function OA(e,t){const n=no(e,!0,t==="fixed"),a=n.top+e.clientTop,r=n.left+e.clientLeft,o=Lo(e),s=e.clientWidth*o.x,i=e.clientHeight*o.y,l=r*o.x,c=a*o.y;return{width:s,height:i,x:l,y:c}}function vg(e,t,n){let a;if(t==="viewport"||t==="layoutViewport")a=LA(e,n,t);else if(t==="document")a=$A(er(e));else if(ua(t))a=OA(t,n);else{const r=mb(e);a={x:t.x-r.x,y:t.y-r.y,width:t.width,height:t.height}}return cc(a)}function NA(e,t){const n=t.get(e);if(n)return n;let a=ii(e,[],!1).filter(i=>ua(i)&&ds(i)!=="body"),r=null;const o=da(e).position==="fixed";let s=o?to(e):e;for(;ua(s)&&!si(s);){const i=da(s),l=Tp(s),c=r?r.position:o?"fixed":"";!l&&(c==="fixed"||c==="absolute"&&i.position==="static")?a=a.filter(d=>d!==s):r=i,s=to(s)}return t.set(e,a),a}function FA(e){let{element:t,boundary:n,rootBoundary:a,strategy:r}=e;const s=[...n==="clippingAncestors"?Qc(t)?[]:NA(t,this._c):[].concat(n),a],i=vg(t,s[0],r);let l=i.top,c=i.right,u=i.bottom,d=i.left;for(let h=1;h<s.length;h++){const p=vg(t,s[h],r);l=Oa(p.top,l),c=wr(p.right,c),u=wr(p.bottom,u),d=Oa(p.left,d)}return{width:c-d,height:u-l,x:d,y:l}}function qA(e){const{width:t,height:n}=hb(e);return{width:t,height:n}}function BA(e,t,n){const a=kr(t),r=er(t),o=n==="fixed",s=no(e,!0,o,t);let i={scrollLeft:0,scrollTop:0};const l=Na(0);if((a||!o)&&((ds(t)!=="body"||Jc(r))&&(i=Zc(t)),a)){const h=no(t,!0,o,t);l.x=h.x+t.clientLeft,l.y=h.y+t.clientTop}!a&&r&&(l.x=eu(r));const c=r&&!a&&!o?gb(r,i):Na(0),u=s.left+i.scrollLeft-l.x-c.x,d=s.top+i.scrollTop-l.y-c.y;return{x:u,y:d,width:s.width,height:s.height}}function nd(e){return da(e).position==="static"}function yg(e,t){if(!kr(e)||da(e).position==="fixed")return null;if(t)return t(e);let n=e.offsetParent;return er(e)===n&&(n=n.ownerDocument.body),n}function vb(e,t){const n=vn(e);if(Qc(e))return n;if(!kr(e)){let r=to(e);for(;r&&!si(r);){if(ua(r)&&!nd(r))return r;r=to(r)}return n}let a=yg(e,t);for(;a&&xA(a)&&nd(a);)a=yg(a,t);return a&&si(a)&&nd(a)&&!Tp(a)?n:a||MA(e)||n}const HA=async function(e){const t=this.getOffsetParent||vb,n=this.getDimensions,a=await n(e.floating);return{reference:BA(e.reference,await t(e.floating),e.strategy),floating:{x:0,y:0,width:a.width,height:a.height}}};function VA(e){return da(e).direction==="rtl"}const zA={convertOffsetParentRelativeRectToViewportRelativeRect:DA,getDocumentElement:er,getClippingRect:FA,getOffsetParent:vb,getElementRects:HA,getClientRects:EA,getDimensions:qA,getScale:Lo,isElement:ua,isRTL:VA};function yb(e,t){return e.x===t.x&&e.y===t.y&&e.width===t.width&&e.height===t.height}function jA(e,t,n){let a=null,r;const o=er(e);function s(){var u;clearTimeout(r),(u=a)==null||u.disconnect(),a=null}function i(u,d){u===void 0&&(u=!1),d===void 0&&(d=1),s();const h=e.getBoundingClientRect(),{left:p,top:m,width:v,height:y}=h;if(u||t(),!v||!y)return;const g=al(m),b=al(o.clientWidth-(p+v)),w=al(o.clientHeight-(m+y)),_=al(p),P={rootMargin:-g+"px "+-b+"px "+-w+"px "+-_+"px",threshold:Oa(0,wr(1,d))||1};let k=!0;function T(I){const Y=I[0].intersectionRatio;if(!yb(h,e.getBoundingClientRect()))return i();if(Y!==d){if(!k)return i();Y?i(!1,Y):r=setTimeout(()=>{i(!1,1e-7)},1e3)}k=!1}try{a=new IntersectionObserver(T,{...P,root:o.ownerDocument})}catch{a=new IntersectionObserver(T,P)}a.observe(e)}const l=vn(e),c=()=>i(n);return l.addEventListener("resize",c),i(!0),()=>{l.removeEventListener("resize",c),s()}}function WA(e,t,n,a){a===void 0&&(a={});const{ancestorScroll:r=!0,ancestorResize:o=!0,elementResize:s=typeof ResizeObserver=="function",layoutShift:i=typeof IntersectionObserver=="function",animationFrame:l=!1}=a,c=Dp(e),u=r||o?[...c?ii(c):[],...t?ii(t):[]]:[];u.forEach(g=>{r&&g.addEventListener("scroll",n),o&&g.addEventListener("resize",n)});const d=c&&i?jA(c,n,o):null;let h=-1,p=null;s&&(p=new ResizeObserver(g=>{let[b]=g;b&&b.target===c&&p&&t&&(p.unobserve(t),cancelAnimationFrame(h),h=requestAnimationFrame(()=>{var w;(w=p)==null||w.observe(t)})),n()}),c&&!l&&p.observe(c),t&&p.observe(t));let m,v=l?no(e):null;l&&y();function y(){const g=no(e);v&&!yb(v,g)&&n(),v=g,m=requestAnimationFrame(y)}return n(),()=>{var g;u.forEach(b=>{r&&b.removeEventListener("scroll",n),o&&b.removeEventListener("resize",n)}),d?.(),(g=p)==null||g.disconnect(),p=null,l&&cancelAnimationFrame(m)}}const UA=_A,GA=kA,bg=yA,YA=SA,KA=bA,XA=vA,JA=CA,QA=(e,t,n)=>{const a=new Map,r=n??{},o={...zA,...r.platform,_c:a};return gA(e,t,{...r,platform:o})};function ZA(){return typeof window<"u"}function eP(e){return bb(e)?(e.nodeName||"").toLowerCase():"#document"}function tP(e){var t;return(e==null||(t=e.ownerDocument)==null?void 0:t.defaultView)||window}function bb(e){return ZA()?e instanceof Node||e instanceof tP(e).Node:!1}function nP(e){return e!=null&&typeof e=="object"&&"$el"in e}function af(e){if(nP(e)){const t=e.$el;return bb(t)&&eP(t)==="#comment"?null:t}return e}function yo(e){return typeof e=="function"?e():f(e)}function aP(e){return{name:"arrow",options:e,fn(t){const n=af(yo(e.element));return n==null?{}:XA({element:n,padding:e.padding}).fn(t)}}}function wb(e){return typeof window>"u"?1:(e.ownerDocument.defaultView||window).devicePixelRatio||1}function wg(e,t){const n=wb(e);return Math.round(t*n)/n}function rP(e,t,n){n===void 0&&(n={});const a=n.whileElementsMounted,r=S(()=>{var k;return(k=yo(n.open))!=null?k:!0}),o=S(()=>yo(n.middleware)),s=S(()=>{var k;return(k=yo(n.placement))!=null?k:"bottom"}),i=S(()=>{var k;return(k=yo(n.strategy))!=null?k:"absolute"}),l=S(()=>{var k;return(k=yo(n.transform))!=null?k:!0}),c=S(()=>af(e.value)),u=S(()=>af(t.value)),d=V(0),h=V(0),p=V(i.value),m=V(s.value),v=at({}),y=V(!1),g=S(()=>{const k={position:p.value,left:"0",top:"0"};if(!u.value)return k;const T=wg(u.value,d.value),I=wg(u.value,h.value);return l.value?{...k,transform:"translate("+T+"px, "+I+"px)",...wb(u.value)>=1.5&&{willChange:"transform"}}:{position:p.value,left:T+"px",top:I+"px"}});let b;function w(){if(c.value==null||u.value==null)return;const k=r.value;QA(c.value,u.value,{middleware:o.value,placement:s.value,strategy:i.value}).then(T=>{d.value=T.x,h.value=T.y,p.value=T.strategy,m.value=T.placement,v.value=T.middlewareData,y.value=k!==!1})}function _(){typeof b=="function"&&(b(),b=void 0)}function A(){if(_(),a===void 0){w();return}if(c.value!=null&&u.value!=null){b=a(c.value,u.value,w);return}}function P(){r.value||(y.value=!1)}return Se([o,s,i,r],w,{flush:"sync"}),Se([c,u],A,{flush:"sync"}),Se(r,P,{flush:"sync"}),es()&&ts(_),{x:ea(d),y:ea(h),strategy:ea(p),placement:ea(m),middlewareData:ea(v),isPositioned:ea(y),floatingStyles:g,update:w}}const _b={side:"bottom",sideOffset:0,sideFlip:!0,align:"center",alignOffset:0,alignFlip:!0,arrowPadding:0,hideShiftedArrow:!0,avoidCollisions:!0,collisionBoundary:()=>[],collisionPadding:0,sticky:"partial",hideWhenDetached:!1,positionStrategy:"fixed",updatePositionStrategy:"optimized",prioritizePosition:!1},[oP,sP]=pt("PopperContent");var iP=Z({inheritAttrs:!1,__name:"PopperContent",props:a0({side:{type:null,required:!1},sideOffset:{type:Number,required:!1},sideFlip:{type:Boolean,required:!1},align:{type:null,required:!1},alignOffset:{type:Number,required:!1},alignFlip:{type:Boolean,required:!1},avoidCollisions:{type:Boolean,required:!1},collisionBoundary:{type:null,required:!1},collisionPadding:{type:[Number,Object],required:!1},arrowPadding:{type:Number,required:!1},hideShiftedArrow:{type:Boolean,required:!1},sticky:{type:String,required:!1},hideWhenDetached:{type:Boolean,required:!1},positionStrategy:{type:String,required:!1},updatePositionStrategy:{type:String,required:!1},disableUpdateOnLayoutShift:{type:Boolean,required:!1},prioritizePosition:{type:Boolean,required:!1},reference:{type:null,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},{..._b}),emits:["placed"],setup(e,{emit:t}){const n=e,a=t,r=lb(),{forwardRef:o,currentElement:s}=Ee(),i=V(),l=V(),{width:c,height:u}=Y4(l),d=S(()=>n.side+(n.align!=="center"?`-${n.align}`:"")),h=S(()=>typeof n.collisionPadding=="number"?n.collisionPadding:{top:0,right:0,bottom:0,left:0,...n.collisionPadding}),p=S(()=>Array.isArray(n.collisionBoundary)?n.collisionBoundary:[n.collisionBoundary]),m=S(()=>({padding:h.value,boundary:p.value.filter(aA),altBoundary:p.value.length>0})),v=S(()=>({mainAxis:n.sideFlip,crossAxis:n.alignFlip})),y=U3(()=>[UA({mainAxis:n.sideOffset+u.value,alignmentAxis:n.alignOffset}),n.prioritizePosition&&n.avoidCollisions&&bg({...m.value,...v.value}),n.avoidCollisions&&GA({mainAxis:!0,crossAxis:!!n.prioritizePosition,limiter:n.sticky==="partial"?JA():void 0,...m.value}),!n.prioritizePosition&&n.avoidCollisions&&bg({...m.value,...v.value}),YA({...m.value,apply:({elements:z,rects:te,availableWidth:O,availableHeight:D})=>{const{width:q,height:G}=te.reference,L=z.floating.style;L.setProperty("--reka-popper-available-width",`${O}px`),L.setProperty("--reka-popper-available-height",`${D}px`),L.setProperty("--reka-popper-anchor-width",`${q}px`),L.setProperty("--reka-popper-anchor-height",`${G}px`)}}),l.value&&aP({element:l.value,padding:n.arrowPadding}),rA({arrowWidth:c.value,arrowHeight:u.value}),n.hideWhenDetached&&KA({strategy:"referenceHidden",...m.value})]),g=S(()=>n.reference??r.anchor.value),{floatingStyles:b,placement:w,isPositioned:_,middlewareData:A}=rP(g,i,{strategy:n.positionStrategy,placement:d,whileElementsMounted:(...z)=>WA(...z,{layoutShift:!n.disableUpdateOnLayoutShift,animationFrame:n.updatePositionStrategy==="always"}),middleware:y}),P=S(()=>ef(w.value)[0]),k=S(()=>ef(w.value)[1]);Ly(()=>{_.value&&a("placed")});const T=S(()=>{const z=A.value.arrow?.centerOffset!==0;return n.hideShiftedArrow&&z}),I=V("");qt(()=>{s.value&&(I.value=window.getComputedStyle(s.value).zIndex)});const Y=S(()=>A.value.arrow?.x??0),Q=S(()=>A.value.arrow?.y??0);return sP({placedSide:P,onArrowChange:z=>l.value=z,arrowX:Y,arrowY:Q,shouldHideArrow:T}),(z,te)=>(C(),ye("div",{ref_key:"floatingRef",ref:i,"data-reka-popper-content-wrapper":"",style:yn({...f(b),transform:f(_)?f(b).transform:"translate(0, -200%)",minWidth:"max-content",zIndex:I.value,"--reka-popper-transform-origin":[f(A).transformOrigin?.x,f(A).transformOrigin?.y].join(" "),...f(A).hide?.referenceHidden&&{visibility:"hidden",pointerEvents:"none"}})},[ie(f(fe),de({ref:f(o)},z.$attrs,{"as-child":n.asChild,as:z.as,"data-side":P.value,"data-align":k.value,style:{animation:f(_)?void 0:"none"}}),{default:E(()=>[j(z.$slots,"default")]),_:3},16,["as-child","as","data-side","data-align","style"])],4))}}),tu=iP;const lP={top:"bottom",right:"left",bottom:"top",left:"right"};var cP=Z({inheritAttrs:!1,__name:"PopperArrow",props:{width:{type:Number,required:!1},height:{type:Number,required:!1},rounded:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"svg"}},setup(e){const{forwardRef:t}=Ee(),n=oP(),a=S(()=>lP[n.placedSide.value]);return(r,o)=>(C(),ye("span",{ref:s=>{f(n).onArrowChange(s??void 0)},style:yn({position:"absolute",left:f(n).arrowX?.value?`${f(n).arrowX?.value}px`:void 0,top:f(n).arrowY?.value?`${f(n).arrowY?.value}px`:void 0,[a.value]:0,transformOrigin:{top:"",right:"0 0",bottom:"center 0",left:"100% 0"}[f(n).placedSide.value],transform:{top:"translateY(100%)",right:"translateY(50%) rotate(90deg) translateX(-50%)",bottom:"rotate(180deg)",left:"translateY(50%) rotate(-90deg) translateX(50%)"}[f(n).placedSide.value],visibility:f(n).shouldHideArrow.value?"hidden":void 0})},[ie(nA,de(r.$attrs,{ref:f(t),style:{display:"block"},as:r.as,"as-child":r.asChild,rounded:r.rounded,width:r.width,height:r.height}),{default:E(()=>[j(r.$slots,"default")]),_:3},16,["as","as-child","rounded","width","height"])],4))}}),nu=cP;function uP(e){function t(o){return Array.isArray(e.date.value)?e.date.value.some(s=>xt(s,o)):e.date.value?xt(e.date.value,o):!1}const n=S(()=>{if(Array.isArray(e.date.value)){if(!e.date.value.length)return!1;for(const o of e.date.value)if(e.isDateDisabled?.(o)||e.isDateUnavailable?.(o))return!0}else{if(!e.date.value)return!1;if(e.isDateDisabled?.(e.date.value)||e.isDateUnavailable?.(e.date.value))return!0}return!1}),a=S(()=>Array.isArray(e.date.value)?e.date.value.length>0:!!e.date.value),r=S(()=>Array.isArray(e.date.value)?e.date.value.length?e.date.value.some(o=>e.isDateDisabled?.(o)):!1:e.date.value?!!e.isDateDisabled?.(e.date.value):!1);return{isDateSelected:t,isInvalid:n,hasSelectedDate:a,isSelectedDateDisabled:r}}function dP(e,t){const n=t(e),a=n.compare(e),r={};return a>=7&&(r.day=1),a>=Ro(e)&&(r.month=1),n.set({...r})}function fP(e,t){const n=t(e),a=e.compare(n),r={};return a>=7&&(r.day=35),a>=Ro(e)&&(r.month=13),n.set({...r})}function pP(e,t){return t(e)}function hP(e,t){return t(e)}function kb(e){const t=wp(e.locale.value),n=S(()=>{const g={calendar:e.placeholder.value.calendar.identifier};return e.placeholder.value.calendar.identifier==="gregory"&&e.placeholder.value.era==="BC"&&(g.era="short"),g}),a=V(Er({dateObj:e.placeholder.value,weekStartsOn:e.weekStartsOn.value,locale:e.locale.value,fixedWeeks:e.fixedWeeks.value,numberOfMonths:e.numberOfMonths.value})),r=S(()=>a.value.map(g=>g.value));function o(g){return!r.value.some(b=>qm(g,b))}const s=g=>{if(!e.maxValue.value||!a.value.length)return!1;if(e.disabled.value)return!0;const b=a.value.at(-1).value;if(!g&&!e.nextPage.value){const _=b.add({months:1}).set({day:1});return sa(_,e.maxValue.value)}const w=dP(b,g||e.nextPage.value);return sa(w,e.maxValue.value)},i=g=>{if(!e.minValue.value||!a.value.length)return!1;if(e.disabled.value)return!0;const b=a.value[0].value;if(!g&&!e.prevPage.value){const _=b.subtract({months:1}).set({day:35});return fn(_,e.minValue.value)}const w=fP(b,g||e.prevPage.value);return fn(w,e.minValue.value)};function l(g){return!!(e.isDateDisabled?.(g)||e.disabled.value||e.maxValue.value&&sa(g,e.maxValue.value)||e.minValue.value&&fn(g,e.minValue.value))}const c=g=>!!e.isDateUnavailable?.(g),u=S(()=>a.value.length?a.value[0].rows[0].map(g=>t.dayOfWeek(Pt(g),e.weekdayFormat.value)):[]),d=g=>{const b=a.value[0].value;if(!g&&!e.nextPage.value){const P=b.add({months:e.pagedNavigation.value?e.numberOfMonths.value:1}),k=Er({dateObj:P,weekStartsOn:e.weekStartsOn.value,locale:e.locale.value,fixedWeeks:e.fixedWeeks.value,numberOfMonths:e.numberOfMonths.value});a.value=k,e.placeholder.value=k[0].value.set({day:1});return}const w=pP(b,g||e.nextPage.value),_=Er({dateObj:w,weekStartsOn:e.weekStartsOn.value,locale:e.locale.value,fixedWeeks:e.fixedWeeks.value,numberOfMonths:e.numberOfMonths.value});a.value=_;const A={};if(!g){const P=_[0].value.compare(b);P>=Ro(b)&&(A.day=1),P>=365&&(A.month=1)}e.placeholder.value=_[0].value.set({...A})},h=g=>{const b=a.value[0].value;if(!g&&!e.prevPage.value){const P=b.subtract({months:e.pagedNavigation.value?e.numberOfMonths.value:1}),k=Er({dateObj:P,weekStartsOn:e.weekStartsOn.value,locale:e.locale.value,fixedWeeks:e.fixedWeeks.value,numberOfMonths:e.numberOfMonths.value});a.value=k,e.placeholder.value=k[0].value.set({day:1});return}const w=hP(b,g||e.prevPage.value),_=Er({dateObj:w,weekStartsOn:e.weekStartsOn.value,locale:e.locale.value,fixedWeeks:e.fixedWeeks.value,numberOfMonths:e.numberOfMonths.value});a.value=_;const A={};if(!g){const P=b.compare(_[0].value);P>=Ro(b)&&(A.day=1),P>=365&&(A.month=1)}e.placeholder.value=_[0].value.set({...A})};Se(e.placeholder,g=>{r.value.some(b=>qm(b,g))||(a.value=Er({dateObj:g,weekStartsOn:e.weekStartsOn.value,locale:e.locale.value,fixedWeeks:e.fixedWeeks.value,numberOfMonths:e.numberOfMonths.value}))}),Se([e.locale,e.weekStartsOn,e.fixedWeeks,e.numberOfMonths],()=>{a.value=Er({dateObj:e.placeholder.value,weekStartsOn:e.weekStartsOn.value,locale:e.locale.value,fixedWeeks:e.fixedWeeks.value,numberOfMonths:e.numberOfMonths.value})});const p=S(()=>{if(!a.value.length)return"";if(e.locale.value!==t.getLocale()&&t.setLocale(e.locale.value),a.value.length===1){const T=a.value[0].value;return`${t.fullMonthAndYear(Pt(T),n.value)}`}const g=Pt(a.value[0].value),b=Pt(a.value.at(-1).value),w=t.fullMonth(g,n.value),_=t.fullMonth(b,n.value),A=t.fullYear(g,n.value),P=t.fullYear(b,n.value);return A===P?`${w} - ${_} ${P}`:`${w} ${A} - ${_} ${P}`}),m=S(()=>`${e.calendarLabel.value??"Event Date"}, ${p.value}`),v=S(()=>!(l(e.placeholder.value)||c(e.placeholder.value)||o(e.placeholder.value))),y=S(()=>{for(const g of a.value){if(e.minValue.value&&fn(g.value,e.minValue.value))continue;const b=Ro(g.value),w=e.minValue.value&&Gc(e.minValue.value,g.value)?e.minValue.value.day:1;for(let _=w;_<=b;_++){const A=g.value.set({day:_});if(!(l(A)||c(A)))return A}}});return{isDateDisabled:l,isDateUnavailable:c,isNextButtonDisabled:s,isPrevButtonDisabled:i,grid:a,weekdays:u,visibleView:r,isOutsideVisibleView:o,formatter:t,nextPage:d,prevPage:h,headingValue:p,fullCalendarLabel:m,isPlaceholderFocusable:v,firstFocusableDate:y}}const mP={style:{border:"0px",clip:"rect(0px, 0px, 0px, 0px)","clip-path":"inset(50%)",height:"1px",margin:"-1px",overflow:"hidden",padding:"0px",position:"absolute","white-space":"nowrap",width:"1px"}},gP={role:"heading","aria-level":"2"},[fs,vP]=pt("CalendarRoot");var yP=Z({__name:"CalendarRoot",props:{defaultValue:{type:null,required:!1,default:void 0},defaultPlaceholder:{type:null,required:!1},placeholder:{type:null,required:!1,default:void 0},pagedNavigation:{type:Boolean,required:!1,default:!1},preventDeselect:{type:Boolean,required:!1,default:!1},weekStartsOn:{type:Number,required:!1},weekdayFormat:{type:String,required:!1,default:"narrow"},calendarLabel:{type:String,required:!1},fixedWeeks:{type:Boolean,required:!1,default:!1},maxValue:{type:null,required:!1},minValue:{type:null,required:!1},locale:{type:String,required:!1},numberOfMonths:{type:Number,required:!1,default:1},disabled:{type:Boolean,required:!1,default:!1},readonly:{type:Boolean,required:!1,default:!1},initialFocus:{type:Boolean,required:!1,default:!1},isDateDisabled:{type:Function,required:!1,default:void 0},isDateUnavailable:{type:Function,required:!1,default:void 0},dir:{type:String,required:!1},nextPage:{type:Function,required:!1},prevPage:{type:Function,required:!1},modelValue:{type:null,required:!1},multiple:{type:Boolean,required:!1,default:!1},disableDaysOutsideCurrentView:{type:Boolean,required:!1,default:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"div"}},emits:["update:modelValue","update:placeholder"],setup(e,{emit:t}){const n=e,a=t,{disabled:r,readonly:o,initialFocus:s,pagedNavigation:i,weekdayFormat:l,fixedWeeks:c,multiple:u,minValue:d,maxValue:h,numberOfMonths:p,preventDeselect:m,isDateDisabled:v,isDateUnavailable:y,calendarLabel:g,defaultValue:b,nextPage:w,prevPage:_,dir:A,locale:P,disableDaysOutsideCurrentView:k}=kt(n),{primitiveElement:T,currentElement:I}=bn(),Y=ls(P),Q=Ka(A),z=S(()=>n.weekStartsOn??tb(Y.value)),te=gt(n,"modelValue",a,{defaultValue:b.value,passive:n.modelValue===void 0}),O=ss({defaultPlaceholder:n.placeholder,defaultValue:te.value,locale:n.locale}),D=gt(n,"placeholder",a,{defaultValue:n.defaultPlaceholder??O.copy(),passive:n.placeholder===void 0});function q(U){D.value=U.copy()}const{fullCalendarLabel:G,headingValue:L,isDateDisabled:ee,isDateUnavailable:K,isNextButtonDisabled:ce,isPrevButtonDisabled:ue,weekdays:be,isOutsideVisibleView:ge,nextPage:we,prevPage:me,formatter:X,grid:le,isPlaceholderFocusable:se,firstFocusableDate:pe}=kb({locale:Y,placeholder:D,weekStartsOn:z,fixedWeeks:c,numberOfMonths:p,minValue:d,maxValue:h,disabled:r,weekdayFormat:l,pagedNavigation:i,isDateDisabled:v.value,isDateUnavailable:y.value,calendarLabel:g,nextPage:w,prevPage:_}),{isInvalid:Pe,isDateSelected:$,hasSelectedDate:B,isSelectedDateDisabled:J}=uP({date:te,isDateDisabled:ee,isDateUnavailable:K});Se(te,U=>{if(Array.isArray(U)&&U.length){const ne=U.at(-1);ne&&!fr(D.value,ne)&&q(ne)}else!Array.isArray(U)&&U&&!fr(D.value,U)&&q(U)});function W(U){if(u.value){if(!te.value)te.value=[U.copy()];else if(Array.isArray(te.value)){if(te.value.findIndex(x=>xt(x,U))===-1)te.value=[...te.value,U];else if(!m.value){const x=te.value.filter(M=>!xt(M,U));if(!x.length){D.value=U.copy(),te.value=void 0;return}te.value=x.map(M=>M.copy())}}}else{if(!te.value){te.value=U.copy();return}!m.value&&fr(te.value,U)?(D.value=U.copy(),te.value=void 0):te.value=U.copy()}}return Xe(()=>{s.value&&is(I.value)}),vP({isDateUnavailable:K,dir:Q,isDateDisabled:ee,locale:Y,formatter:X,modelValue:te,placeholder:D,disabled:r,initialFocus:s,pagedNavigation:i,grid:le,weekDays:be,weekStartsOn:z,weekdayFormat:l,fixedWeeks:c,multiple:u,numberOfMonths:p,readonly:o,preventDeselect:m,fullCalendarLabel:G,headingValue:L,isInvalid:Pe,isDateSelected:$,isNextButtonDisabled:ce,isPrevButtonDisabled:ue,isOutsideVisibleView:ge,nextPage:we,prevPage:me,parentElement:I,onPlaceholderChange:q,onDateChange:W,disableDaysOutsideCurrentView:k,minValue:d,maxValue:h,isPlaceholderFocusable:se,firstFocusableDate:pe,hasSelectedDate:B,isSelectedDateDisabled:J}),(U,ne)=>(C(),R(f(fe),{ref_key:"primitiveElement",ref:T,as:U.as,"as-child":U.asChild,"aria-label":f(G),"data-readonly":f(o)?"":void 0,"data-disabled":f(r)?"":void 0,"data-invalid":f(Pe)?"":void 0,dir:f(Q)},{default:E(()=>[j(U.$slots,"default",{date:f(D),grid:f(le),weekDays:f(be),weekStartsOn:z.value,locale:f(Y),fixedWeeks:f(c),modelValue:f(te)}),ke("div",mP,[ke("div",gP,Me(f(G)),1)])]),_:3},8,["as","as-child","aria-label","data-readonly","data-disabled","data-invalid","dir"]))}}),bP=yP,wP=Z({__name:"CalendarCell",props:{date:{type:null,required:!0},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"td"}},setup(e){const t=fs();return(n,a)=>(C(),R(f(fe),{as:n.as,"as-child":n.asChild,role:"gridcell","aria-selected":f(t).isDateSelected(n.date)?!0:void 0,"aria-disabled":f(t).isDateDisabled(n.date)||f(t).isDateUnavailable?.(n.date)||f(t).disableDaysOutsideCurrentView.value,"data-disabled":f(t).isDateDisabled(n.date)||f(t).disableDaysOutsideCurrentView.value?"":void 0},{default:E(()=>[j(n.$slots,"default")]),_:3},8,["as","as-child","aria-selected","aria-disabled","data-disabled"]))}}),_P=wP,kP=Z({__name:"CalendarCellTrigger",props:{day:{type:null,required:!0},month:{type:null,required:!0},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"div"}},setup(e){const t=e,n=Qa(),a=fs(),{primitiveElement:r}=bn(),o=S(()=>t.day.day.toLocaleString(a.locale.value)),s=S(()=>a.formatter.custom(Pt(t.day),{weekday:"long",month:"long",day:"numeric",year:"numeric"})),i=S(()=>a.isDateUnavailable?.(t.day)??!1),l=S(()=>R1(t.day,pa())),c=S(()=>!Gc(t.day,t.month)),u=S(()=>a.isOutsideVisibleView(t.day)),d=S(()=>a.isDateDisabled(t.day)||a.disableDaysOutsideCurrentView.value&&c.value),h=S(()=>c.value||d.value?!1:!a.disabled.value&&a.isPlaceholderFocusable.value&&xt(t.day,a.placeholder.value)?!0:(!a.hasSelectedDate.value||a.isSelectedDateDisabled.value)&&!a.isPlaceholderFocusable.value?a.firstFocusableDate.value&&xt(t.day,a.firstFocusableDate.value):!1),p=S(()=>a.isDateSelected(t.day));function m(g){a.readonly.value||a.isDateDisabled(g)||a.isDateUnavailable?.(g)||a.onDateChange(g)}function v(){d.value||m(t.day)}function y(g){if(d.value)return;g.preventDefault(),g.stopPropagation();const b=a.parentElement.value,w=7,_=a.dir.value==="rtl"?-1:1;switch(g.code){case n.ARROW_RIGHT:A(t.day,_);break;case n.ARROW_LEFT:A(t.day,-_);break;case n.ARROW_UP:A(t.day,-w);break;case n.ARROW_DOWN:A(t.day,w);break;case n.ENTER:case n.SPACE_CODE:m(t.day)}function A(P,k){const T=P.add({days:k});if(a.minValue.value&&T.compare(a.minValue.value)<0||a.maxValue.value&&T.compare(a.maxValue.value)>0)return;const I=b.querySelector(`[data-value='${T.toString()}']:not([data-outside-view])`);if(!I){if(k>0){if(a.isNextButtonDisabled())return;a.nextPage()}else{if(a.isPrevButtonDisabled())return;a.prevPage()}Ve(()=>{A(P,k)});return}if(I&&I.hasAttribute("data-disabled"))return A(T,k);a.onPlaceholderChange(T),I?.focus()}}return(g,b)=>(C(),R(f(fe),{ref_key:"primitiveElement",ref:r,as:t.as,"as-child":t.asChild,role:"button","aria-label":s.value,"data-reka-calendar-cell-trigger":"","aria-disabled":d.value||i.value?!0:void 0,"data-selected":p.value?!0:void 0,"data-value":g.day.toString(),"data-disabled":d.value?"":void 0,"data-unavailable":i.value?"":void 0,"data-today":l.value?"":void 0,"data-outside-view":c.value?"":void 0,"data-outside-visible-view":u.value?"":void 0,"data-focused":h.value?"":void 0,tabindex:h.value?0:c.value||d.value?void 0:-1,onClick:v,onKeydown:[Ln(y,["up","down","left","right","space","enter"]),b[0]||(b[0]=Ln(Vt(()=>{},["prevent"]),["enter"]))]},{default:E(()=>[j(g.$slots,"default",{dayValue:o.value,disabled:d.value,today:l.value,selected:p.value,outsideView:c.value,outsideVisibleView:u.value,unavailable:i.value},()=>[qe(Me(o.value),1)])]),_:3},8,["as","as-child","aria-label","aria-disabled","data-selected","data-value","data-disabled","data-unavailable","data-today","data-outside-view","data-outside-visible-view","data-focused","tabindex"]))}}),CP=kP,SP=Z({__name:"CalendarGrid",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"table"}},setup(e){const t=e,n=fs(),a=S(()=>n.disabled.value?!0:void 0),r=S(()=>n.readonly.value?!0:void 0);return(o,s)=>(C(),R(f(fe),de(t,{tabindex:"-1",role:"application","aria-readonly":r.value,"aria-disabled":a.value,"data-readonly":r.value&&"","data-disabled":a.value&&""}),{default:E(()=>[j(o.$slots,"default")]),_:3},16,["aria-readonly","aria-disabled","data-readonly","data-disabled"]))}}),xP=SP,AP=Z({__name:"CalendarGridBody",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"tbody"}},setup(e){const t=e;return(n,a)=>(C(),R(f(fe),$e(Oe(t)),{default:E(()=>[j(n.$slots,"default")]),_:3},16))}}),PP=AP,MP=Z({__name:"CalendarGridHead",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"thead"}},setup(e){const t=e;return(n,a)=>(C(),R(f(fe),de(t,{"aria-hidden":"true"}),{default:E(()=>[j(n.$slots,"default")]),_:3},16))}}),TP=MP,IP=Z({__name:"CalendarGridRow",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"tr"}},setup(e){const t=e;return(n,a)=>(C(),R(f(fe),$e(Oe(t)),{default:E(()=>[j(n.$slots,"default")]),_:3},16))}}),DP=IP,EP=Z({__name:"CalendarHeadCell",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"th"}},setup(e){const t=e;return(n,a)=>(C(),R(f(fe),$e(Oe(t)),{default:E(()=>[j(n.$slots,"default")]),_:3},16))}}),$P=EP,RP=Z({__name:"CalendarHeader",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"div"}},setup(e){const t=e;return(n,a)=>(C(),R(f(fe),$e(Oe(t)),{default:E(()=>[j(n.$slots,"default")]),_:3},16))}}),LP=RP,OP=Z({__name:"CalendarHeading",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"div"}},setup(e){const t=e,n=fs();return(a,r)=>(C(),R(f(fe),de(t,{"data-disabled":f(n).disabled.value?"":void 0}),{default:E(()=>[j(a.$slots,"default",{headingValue:f(n).headingValue.value},()=>[qe(Me(f(n).headingValue.value),1)])]),_:3},16,["data-disabled"]))}}),NP=OP,FP=Z({__name:"CalendarNext",props:{nextPage:{type:Function,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"button"}},setup(e){const t=e,n=S(()=>a.disabled.value||a.isNextButtonDisabled(t.nextPage)),a=fs();function r(){n.value||a.nextPage(t.nextPage)}return(o,s)=>(C(),R(f(fe),{as:t.as,"as-child":t.asChild,"aria-label":"Next page",type:t.as==="button"?"button":void 0,"aria-disabled":n.value||void 0,"data-disabled":n.value||void 0,disabled:n.value,onClick:r},{default:E(()=>[j(o.$slots,"default",{disabled:n.value},()=>[s[0]||(s[0]=qe(" Next page "))])]),_:3},8,["as","as-child","type","aria-disabled","data-disabled","disabled"]))}}),qP=FP,BP=Z({__name:"CalendarPrev",props:{prevPage:{type:Function,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"button"}},setup(e){const t=e,n=S(()=>a.disabled.value||a.isPrevButtonDisabled(t.prevPage)),a=fs();function r(){n.value||a.prevPage(t.prevPage)}return(o,s)=>(C(),R(f(fe),{"aria-label":"Previous page",as:t.as,"as-child":t.asChild,type:t.as==="button"?"button":void 0,"aria-disabled":n.value||void 0,"data-disabled":n.value||void 0,disabled:n.value,onClick:r},{default:E(()=>[j(o.$slots,"default",{disabled:n.value},()=>[s[0]||(s[0]=qe(" Prev page "))])]),_:3},8,["as","as-child","type","aria-disabled","data-disabled","disabled"]))}}),HP=BP;const[fae,VP]=pt("RovingFocusGroup");var zP=Z({__name:"RovingFocusGroup",props:{orientation:{type:String,required:!1,default:void 0},dir:{type:String,required:!1},loop:{type:Boolean,required:!1,default:!1},currentTabStopId:{type:[String,null],required:!1},defaultCurrentTabStopId:{type:String,required:!1},preventScrollOnEntryFocus:{type:Boolean,required:!1,default:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:["entryFocus","update:currentTabStopId"],setup(e,{expose:t,emit:n}){const a=e,r=n,{loop:o,orientation:s,dir:i}=kt(a),l=Ka(i),c=gt(a,"currentTabStopId",r,{defaultValue:a.defaultCurrentTabStopId,passive:a.currentTabStopId===void 0}),u=V(!1),d=V(!1),h=V(0),{getItems:p,CollectionSlot:m}=$i({isProvider:!0});function v(g){const b=!d.value;if(g.currentTarget&&g.target===g.currentTarget&&b&&!u.value){const w=new CustomEvent(W7,U7);if(g.currentTarget.dispatchEvent(w),r("entryFocus",w),!w.defaultPrevented){const _=p().map(I=>I.ref).filter(I=>I.dataset.disabled!==""),A=_.find(I=>I.getAttribute("data-active")===""),P=_.find(I=>I.getAttribute("data-highlighted")===""),k=_.find(I=>I.id===c.value),T=[A,P,k,..._].filter(Boolean);K7(T,a.preventScrollOnEntryFocus)}}d.value=!1}function y(){setTimeout(()=>{d.value=!1},1)}return t({getItems:p}),VP({loop:o,dir:l,orientation:s,currentTabStopId:c,onItemFocus:g=>{c.value=g},onItemShiftTab:()=>{u.value=!0},onFocusableItemAdd:()=>{h.value++},onFocusableItemRemove:()=>{h.value--}}),(g,b)=>(C(),R(f(m),null,{default:E(()=>[ie(f(fe),{tabindex:u.value||h.value===0?-1:0,"data-orientation":f(s),as:g.as,"as-child":g.asChild,dir:f(l),style:{outline:"none"},onMousedown:b[0]||(b[0]=w=>d.value=!0),onMouseup:y,onFocus:v,onBlur:b[1]||(b[1]=w=>u.value=!1)},{default:E(()=>[j(g.$slots,"default")]),_:3},8,["tabindex","data-orientation","as","as-child","dir"])]),_:3}))}}),jP=zP,WP=Z({__name:"MenuAnchor",props:{reference:{type:null,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(e){const t=e;return(n,a)=>(C(),R(f(Li),$e(Oe(t)),{default:E(()=>[j(n.$slots,"default")]),_:3},16))}}),Cb=WP,UP=Z({__name:"MenuArrow",props:{width:{type:Number,required:!1},height:{type:Number,required:!1},rounded:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(e){const t=e;return(n,a)=>(C(),R(f(nu),$e(Oe(t)),{default:E(()=>[j(n.$slots,"default")]),_:3},16))}}),GP=UP;function YP(){const e=V(!1);return Xe(()=>{Kt("keydown",()=>{e.value=!0},{capture:!0,passive:!0}),Kt(["pointerdown","pointermove"],()=>{e.value=!1},{capture:!0,passive:!0})}),e}const KP=Ii(YP),[ro,Sb]=pt(["MenuRoot","MenuSub"],"MenuContext"),[Oi,XP]=pt("MenuRoot");var JP=Z({__name:"MenuRoot",props:{open:{type:Boolean,required:!1,default:!1},dir:{type:String,required:!1},modal:{type:Boolean,required:!1,default:!0}},emits:["update:open"],setup(e,{emit:t}){const n=e,a=t,{modal:r,dir:o}=kt(n),s=Ka(o),i=gt(n,"open",a),l=V(),c=KP();return Sb({open:i,onOpenChange:u=>{i.value=u},content:l,onContentChange:u=>{l.value=u}}),XP({onClose:()=>{i.value=!1},isUsingKeyboardRef:c,dir:s,modal:r}),(u,d)=>(C(),R(f(Ri),null,{default:E(()=>[j(u.$slots,"default")]),_:3}))}}),QP=JP;const[au,ZP]=pt("MenuContent");var eM=Z({__name:"MenuContentImpl",props:a0({loop:{type:Boolean,required:!1},disableOutsidePointerEvents:{type:Boolean,required:!1},disableOutsideScroll:{type:Boolean,required:!1},trapFocus:{type:Boolean,required:!1},side:{type:null,required:!1},sideOffset:{type:Number,required:!1},sideFlip:{type:Boolean,required:!1},align:{type:null,required:!1},alignOffset:{type:Number,required:!1},alignFlip:{type:Boolean,required:!1},avoidCollisions:{type:Boolean,required:!1},collisionBoundary:{type:null,required:!1},collisionPadding:{type:[Number,Object],required:!1},arrowPadding:{type:Number,required:!1},hideShiftedArrow:{type:Boolean,required:!1},sticky:{type:String,required:!1},hideWhenDetached:{type:Boolean,required:!1},positionStrategy:{type:String,required:!1},updatePositionStrategy:{type:String,required:!1},disableUpdateOnLayoutShift:{type:Boolean,required:!1},prioritizePosition:{type:Boolean,required:!1},reference:{type:null,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},{..._b}),emits:["escapeKeyDown","pointerDownOutside","focusOutside","interactOutside","entryFocus","openAutoFocus","closeAutoFocus","dismiss"],setup(e,{emit:t}){const n=e,a=t,r=ro(),o=Oi(),{trapFocus:s,disableOutsidePointerEvents:i,loop:l}=kt(n);nb(),cp(i.value);const c=V(""),u=V(0),d=V(0),h=V(null),p=V("right"),m=V(0),v=V(null),y=V(),{forwardRef:g,currentElement:b}=Ee(),{handleTypeaheadSearch:w}=X4(),_=V();function A(D){const q=Fm(D,_.value||$t(),b.value,{loop:l.value,arrowKeyOptions:"vertical",dir:o?.dir.value,focus:!1,attributeName:"[data-reka-collection-item]:not([data-disabled])"});q&&(_.value=q,q.scrollIntoView({block:"nearest"}))}function P(){_.value&&_.value.click()}const k=V(),T=V();Se(_,D=>{T.value&&(D===void 0||D!==T.value.trigger.value)&&(T.value.onOpenChange(!1),T.value=void 0)}),Se(b,D=>{r.onContentChange(D)}),_n(()=>{window.clearTimeout(u.value)});function I(D){return p.value===h.value?.side&&A7(D,h.value?.area)}async function Y(D){a("openAutoFocus",D),!D.defaultPrevented&&(D.preventDefault(),b.value?.focus({preventScroll:!0}))}function Q(D){if(D.defaultPrevented)return;const q=D.target,G=q.closest("[data-reka-menu-content]")===D.currentTarget,L=["input","textarea"].includes(q.tagName.toLowerCase()),ee=D.ctrlKey||D.altKey||D.metaKey,K=D.key.length===1,ce=Fm(D,$t(),b.value,{loop:l.value,arrowKeyOptions:"vertical",dir:o?.dir.value,focus:!0,attributeName:"[data-reka-collection-item]:not([data-disabled])"});if(ce)return ce?.focus();if(D.code==="Space")return;const ue=y.value?.getItems()??[];if(G&&(D.key==="Tab"&&D.preventDefault(),!ee&&K&&!L&&w(D.key,ue)),D.target!==b.value||!_7.includes(D.key))return;D.preventDefault();const be=[...ue.map(ge=>ge.ref)];sb.includes(D.key)&&be.reverse(),S7(be)}function z(D){D?.currentTarget?.contains?.(D.target)||(window.clearTimeout(u.value),c.value="")}function te(D){if(!Ko(D))return;const q=D.target,G=m.value!==D.clientX;if(D?.currentTarget?.contains(q)&&G){const L=D.clientX>m.value?"right":"left";p.value=L,m.value=D.clientX}}function O(D){Ko(D)&&k.value&&k.value.focus()}return ZP({onItemEnter:D=>!!I(D),onItemLeave:D=>I(D)?!0:(["INPUT","TEXTAREA"].includes($t()?.tagName||"")||b.value?.focus(),v.value=null,!1),onTriggerLeave:D=>!!I(D),searchRef:c,highlightedElement:_,onKeydownNavigation:A,onKeydownEnter:P,filterElement:k,onFilterElementChange:D=>{k.value=D},activeSubmenuContext:T,pointerGraceTimerRef:d,onPointerGraceIntentChange:D=>{h.value=D}}),(D,q)=>(C(),R(f(Cp),{"as-child":"",trapped:f(s),onMountAutoFocus:Y,onUnmountAutoFocus:q[7]||(q[7]=G=>a("closeAutoFocus",G))},{default:E(()=>[ie(f(Ei),{"as-child":"","disable-outside-pointer-events":f(i),onEscapeKeyDown:q[2]||(q[2]=G=>a("escapeKeyDown",G)),onPointerDownOutside:q[3]||(q[3]=G=>a("pointerDownOutside",G)),onFocusOutside:q[4]||(q[4]=G=>a("focusOutside",G)),onInteractOutside:q[5]||(q[5]=G=>a("interactOutside",G)),onDismiss:q[6]||(q[6]=G=>a("dismiss"))},{default:E(()=>[ie(f(jP),{ref_key:"rovingFocusGroupRef",ref:y,"current-tab-stop-id":v.value,"onUpdate:currentTabStopId":q[0]||(q[0]=G=>v.value=G),"as-child":"",orientation:"vertical",dir:f(o).dir.value,loop:f(l),onEntryFocus:q[1]||(q[1]=G=>{a("entryFocus",G),f(o).isUsingKeyboardRef.value||G.preventDefault()})},{default:E(()=>[ie(f(tu),{ref:f(g),role:"menu",as:D.as,"as-child":D.asChild,"aria-orientation":"vertical","data-reka-menu-content":"","data-state":f(Sp)(f(r).open.value),dir:f(o).dir.value,side:D.side,"side-offset":D.sideOffset,align:D.align,"align-offset":D.alignOffset,"avoid-collisions":D.avoidCollisions,"collision-boundary":D.collisionBoundary,"collision-padding":D.collisionPadding,"arrow-padding":D.arrowPadding,"prioritize-position":D.prioritizePosition,"position-strategy":D.positionStrategy,"update-position-strategy":D.updatePositionStrategy,sticky:D.sticky,"hide-when-detached":D.hideWhenDetached,reference:D.reference,onKeydown:Q,onBlur:z,onPointermove:te,onPointerenter:O},{default:E(()=>[j(D.$slots,"default")]),_:3},8,["as","as-child","data-state","dir","side","side-offset","align","align-offset","avoid-collisions","collision-boundary","collision-padding","arrow-padding","prioritize-position","position-strategy","update-position-strategy","sticky","hide-when-detached","reference"])]),_:3},8,["current-tab-stop-id","dir","loop"])]),_:3},8,["disable-outside-pointer-events"])]),_:3},8,["trapped"]))}}),Ep=eM,tM=Z({inheritAttrs:!1,__name:"MenuItemImpl",props:{disabled:{type:Boolean,required:!1},textValue:{type:String,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(e){const t=e,n=au(),{forwardRef:a,currentElement:r}=Ee(),{CollectionItem:o}=$i(),s=V(!1),i=S(()=>s.value||r.value!=null&&n.highlightedElement.value===r.value);async function l(u){if(!(u.defaultPrevented||!Ko(u))){if(t.disabled)n.onItemLeave(u);else if(!n.onItemEnter(u)){const h=u.currentTarget;n.highlightedElement.value=h,["INPUT","TEXTAREA"].includes($t()?.tagName||"")||h.focus({preventScroll:!0})}}}async function c(u){if(await Ve(),u.defaultPrevented||!Ko(u)||n.highlightedElement.value!==r.value)return;!n.onItemLeave(u)&&n.highlightedElement.value===r.value&&(n.highlightedElement.value=void 0)}return(u,d)=>(C(),R(f(o),{value:{textValue:u.textValue}},{default:E(()=>[ie(f(fe),de({ref:f(a),role:"menuitem",tabindex:"-1"},u.$attrs,{as:u.as,"as-child":u.asChild,"aria-disabled":u.disabled||void 0,"data-disabled":u.disabled?"":void 0,"data-highlighted":i.value?"":void 0,onPointermove:l,onPointerleave:c,onFocus:d[0]||(d[0]=async h=>{await Ve(),!(h.defaultPrevented||u.disabled)&&(s.value=!0,f(n).highlightedElement.value=h.currentTarget)}),onBlur:d[1]||(d[1]=async h=>{await Ve(),!h.defaultPrevented&&(s.value=!1)})}),{default:E(()=>[j(u.$slots,"default")]),_:3},16,["as","as-child","aria-disabled","data-disabled","data-highlighted"])]),_:3},8,["value"]))}}),xb=tM,nM=Z({__name:"MenuItem",props:{disabled:{type:Boolean,required:!1},textValue:{type:String,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:["select"],setup(e,{emit:t}){const n=e,a=t,{forwardRef:r,currentElement:o}=Ee(),s=Oi(),i=au(),l=V(!1);async function c(){const u=o.value;if(!n.disabled&&u){const d=new CustomEvent(b7,{bubbles:!0,cancelable:!0});a("select",d),await Ve(),d.defaultPrevented?l.value=!1:s.onClose()}}return(u,d)=>(C(),R(xb,de(n,{ref:f(r),onClick:c,onPointerdown:d[0]||(d[0]=()=>{l.value=!0}),onPointerup:d[1]||(d[1]=async h=>{await Ve(),!h.defaultPrevented&&(l.value||h.currentTarget?.click())}),onKeydown:d[2]||(d[2]=async h=>{const p=f(i).searchRef.value!=="";u.disabled||p&&h.key===" "||f(Zd).includes(h.key)&&(h.currentTarget?.click(),h.preventDefault())})}),{default:E(()=>[j(u.$slots,"default")]),_:3},16))}}),$p=nM;const[aM,Ab]=pt(["MenuCheckboxItem","MenuRadioItem"],"MenuItemIndicatorContext");var rM=Z({__name:"MenuItemIndicator",props:{forceMount:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"span"}},setup(e){const t=aM({modelValue:V(!1)});return(n,a)=>(C(),R(f(Za),{present:n.forceMount||f(sc)(f(t).modelValue.value)||f(t).modelValue.value===!0},{default:E(()=>[ie(f(fe),{as:n.as,"as-child":n.asChild,"data-state":f(xp)(f(t).modelValue.value)},{default:E(()=>[j(n.$slots,"default")]),_:3},8,["as","as-child","data-state"])]),_:3},8,["present"]))}}),oM=rM,sM=Z({__name:"MenuCheckboxItem",props:{modelValue:{type:[Boolean,String],required:!1,default:!1},disabled:{type:Boolean,required:!1},textValue:{type:String,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:["select","update:modelValue"],setup(e,{emit:t}){const n=e,a=t,r=rs(n,["modelValue"]),o=Ja(r),s=gt(n,"modelValue",a);return Ab({modelValue:s}),(i,l)=>(C(),R($p,de({role:"menuitemcheckbox"},f(o),{"aria-checked":f(sc)(f(s))?"mixed":f(s),"data-state":f(xp)(f(s)),onSelect:l[0]||(l[0]=async c=>{a("select",c),f(sc)(f(s))?s.value=!0:s.value=!f(s)})}),{default:E(()=>[j(i.$slots,"default",{modelValue:f(s)})]),_:3},16,["aria-checked","data-state"]))}}),iM=sM,lM=Z({__name:"MenuRootContentModal",props:{loop:{type:Boolean,required:!1},side:{type:null,required:!1},sideOffset:{type:Number,required:!1},sideFlip:{type:Boolean,required:!1},align:{type:null,required:!1},alignOffset:{type:Number,required:!1},alignFlip:{type:Boolean,required:!1},avoidCollisions:{type:Boolean,required:!1},collisionBoundary:{type:null,required:!1},collisionPadding:{type:[Number,Object],required:!1},arrowPadding:{type:Number,required:!1},hideShiftedArrow:{type:Boolean,required:!1},sticky:{type:String,required:!1},hideWhenDetached:{type:Boolean,required:!1},positionStrategy:{type:String,required:!1},updatePositionStrategy:{type:String,required:!1},disableUpdateOnLayoutShift:{type:Boolean,required:!1},prioritizePosition:{type:Boolean,required:!1},reference:{type:null,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:["escapeKeyDown","pointerDownOutside","focusOutside","interactOutside","entryFocus","openAutoFocus","closeAutoFocus"],setup(e,{emit:t}){const n=e,a=t,r=Nn(n,a),o=ro(),{forwardRef:s,currentElement:i}=Ee();return _p(i),(l,c)=>(C(),R(Ep,de(f(r),{ref:f(s),"trap-focus":f(o).open.value,"disable-outside-pointer-events":f(o).open.value,"disable-outside-scroll":!0,onDismiss:c[0]||(c[0]=u=>f(o).onOpenChange(!1)),onFocusOutside:c[1]||(c[1]=Vt(u=>a("focusOutside",u),["prevent"]))}),{default:E(()=>[j(l.$slots,"default")]),_:3},16,["trap-focus","disable-outside-pointer-events"]))}}),cM=lM,uM=Z({__name:"MenuRootContentNonModal",props:{loop:{type:Boolean,required:!1},side:{type:null,required:!1},sideOffset:{type:Number,required:!1},sideFlip:{type:Boolean,required:!1},align:{type:null,required:!1},alignOffset:{type:Number,required:!1},alignFlip:{type:Boolean,required:!1},avoidCollisions:{type:Boolean,required:!1},collisionBoundary:{type:null,required:!1},collisionPadding:{type:[Number,Object],required:!1},arrowPadding:{type:Number,required:!1},hideShiftedArrow:{type:Boolean,required:!1},sticky:{type:String,required:!1},hideWhenDetached:{type:Boolean,required:!1},positionStrategy:{type:String,required:!1},updatePositionStrategy:{type:String,required:!1},disableUpdateOnLayoutShift:{type:Boolean,required:!1},prioritizePosition:{type:Boolean,required:!1},reference:{type:null,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:["escapeKeyDown","pointerDownOutside","focusOutside","interactOutside","entryFocus","openAutoFocus","closeAutoFocus"],setup(e,{emit:t}){const r=Nn(e,t),o=ro();return(s,i)=>(C(),R(Ep,de(f(r),{"trap-focus":!1,"disable-outside-pointer-events":!1,"disable-outside-scroll":!1,onDismiss:i[0]||(i[0]=l=>f(o).onOpenChange(!1))}),{default:E(()=>[j(s.$slots,"default")]),_:3},16))}}),dM=uM,fM=Z({__name:"MenuContent",props:{forceMount:{type:Boolean,required:!1},loop:{type:Boolean,required:!1},side:{type:null,required:!1},sideOffset:{type:Number,required:!1},sideFlip:{type:Boolean,required:!1},align:{type:null,required:!1},alignOffset:{type:Number,required:!1},alignFlip:{type:Boolean,required:!1},avoidCollisions:{type:Boolean,required:!1},collisionBoundary:{type:null,required:!1},collisionPadding:{type:[Number,Object],required:!1},arrowPadding:{type:Number,required:!1},hideShiftedArrow:{type:Boolean,required:!1},sticky:{type:String,required:!1},hideWhenDetached:{type:Boolean,required:!1},positionStrategy:{type:String,required:!1},updatePositionStrategy:{type:String,required:!1},disableUpdateOnLayoutShift:{type:Boolean,required:!1},prioritizePosition:{type:Boolean,required:!1},reference:{type:null,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:["escapeKeyDown","pointerDownOutside","focusOutside","interactOutside","entryFocus","openAutoFocus","closeAutoFocus"],setup(e,{emit:t}){const r=Nn(e,t),o=ro(),s=Oi();return(i,l)=>(C(),R(f(Za),{present:i.forceMount||f(o).open.value},{default:E(()=>[f(s).modal.value?(C(),R(cM,$e(de({key:0},{...i.$attrs,...f(r)})),{default:E(()=>[j(i.$slots,"default")]),_:3},16)):(C(),R(dM,$e(de({key:1},{...i.$attrs,...f(r)})),{default:E(()=>[j(i.$slots,"default")]),_:3},16))]),_:3},8,["present"]))}}),pM=fM;const[hM,mM]=pt("MenuGroup");var gM=Z({__name:"MenuGroup",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(e){const t=e,n=Mn(void 0,"reka-menu-group");return mM({id:n}),(a,r)=>(C(),R(f(fe),de({role:"group"},t,{"aria-labelledby":f(n)}),{default:E(()=>[j(a.$slots,"default")]),_:3},16,["aria-labelledby"]))}}),Pb=gM,vM=Z({__name:"MenuLabel",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"div"}},setup(e){const t=e,n=hM({id:""});return(a,r)=>(C(),R(f(fe),de(t,{id:f(n).id||void 0}),{default:E(()=>[j(a.$slots,"default")]),_:3},16,["id"]))}}),yM=vM,bM=Z({__name:"MenuPortal",props:{to:{type:null,required:!1},disabled:{type:Boolean,required:!1},defer:{type:Boolean,required:!1},forceMount:{type:Boolean,required:!1}},setup(e){const t=e;return(n,a)=>(C(),R(f(cs),$e(Oe(t)),{default:E(()=>[j(n.$slots,"default")]),_:3},16))}}),wM=bM;const[_M,kM]=pt("MenuRadioGroup");var CM=Z({__name:"MenuRadioGroup",props:{modelValue:{type:null,required:!1,default:""},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:["update:modelValue"],setup(e,{emit:t}){const n=e,a=t,r=rs(n,["modelValue"]),o=Ja(r),s=gt(n,"modelValue",a);return kM({modelValue:s,onValueChange:i=>{s.value=i}}),(i,l)=>(C(),R(Pb,$e(Oe(f(o))),{default:E(()=>[j(i.$slots,"default",{modelValue:f(s)})]),_:3},16))}}),SM=CM,xM=Z({__name:"MenuRadioItem",props:{value:{type:null,required:!0},disabled:{type:Boolean,required:!1},textValue:{type:String,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:["select"],setup(e,{emit:t}){const n=e,a=t,r=rs(n,["value"]),o=Ja(r),{value:s}=kt(n),i=_M(),l=S(()=>i.modelValue.value===s?.value);return Ab({modelValue:l}),(c,u)=>(C(),R($p,de({role:"menuitemradio"},f(o),{"aria-checked":l.value,"data-state":f(xp)(l.value),onSelect:u[0]||(u[0]=async d=>{a("select",d),f(i).onValueChange(f(s))})}),{default:E(()=>[j(c.$slots,"default")]),_:3},16,["aria-checked","data-state"]))}}),AM=xM,PM=Z({__name:"MenuSeparator",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(e){const t=e;return(n,a)=>(C(),R(f(fe),de(t,{role:"separator","aria-orientation":"horizontal"}),{default:E(()=>[j(n.$slots,"default")]),_:3},16))}}),MM=PM;const[Mb,TM]=pt("MenuSub");var IM=Z({__name:"MenuSub",props:{open:{type:Boolean,required:!1,default:void 0}},emits:["update:open"],setup(e,{emit:t}){const n=e,r=gt(n,"open",t,{defaultValue:!1,passive:n.open===void 0}),o=ro(),s=V(),i=V();return qt(l=>{o?.open.value===!1&&(r.value=!1),l(()=>r.value=!1)}),Sb({open:r,onOpenChange:l=>{r.value=l},content:i,onContentChange:l=>{i.value=l}}),TM({triggerId:"",contentId:"",trigger:s,onTriggerChange:l=>{s.value=l}}),(l,c)=>(C(),R(f(Ri),null,{default:E(()=>[j(l.$slots,"default")]),_:3}))}}),DM=IM,EM=Z({__name:"MenuSubContent",props:{forceMount:{type:Boolean,required:!1},loop:{type:Boolean,required:!1},sideOffset:{type:Number,required:!1},sideFlip:{type:Boolean,required:!1},alignOffset:{type:Number,required:!1},alignFlip:{type:Boolean,required:!1},avoidCollisions:{type:Boolean,required:!1},collisionBoundary:{type:null,required:!1},collisionPadding:{type:[Number,Object],required:!1},arrowPadding:{type:Number,required:!1},hideShiftedArrow:{type:Boolean,required:!1},sticky:{type:String,required:!1},hideWhenDetached:{type:Boolean,required:!1},positionStrategy:{type:String,required:!1},updatePositionStrategy:{type:String,required:!1},disableUpdateOnLayoutShift:{type:Boolean,required:!1},prioritizePosition:{type:Boolean,required:!1,default:!0},reference:{type:null,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:["escapeKeyDown","pointerDownOutside","focusOutside","interactOutside","entryFocus","openAutoFocus","closeAutoFocus"],setup(e,{emit:t}){const r=Nn(e,t),o=ro(),s=Oi(),i=Mb(),l=au(),{forwardRef:c,currentElement:u}=Ee();return i.contentId||=Mn(void 0,"reka-menu-sub-content"),(d,h)=>(C(),R(f(Za),{present:d.forceMount||f(o).open.value},{default:E(()=>[ie(Ep,de(f(r),{id:f(i).contentId,ref:f(c),"aria-labelledby":f(i).triggerId,align:"start",side:f(s).dir.value==="rtl"?"left":"right","disable-outside-pointer-events":!1,"disable-outside-scroll":!1,"trap-focus":!1,onOpenAutoFocus:h[0]||(h[0]=Vt(p=>{f(s).isUsingKeyboardRef.value&&f(u)?.focus()},["prevent"])),onCloseAutoFocus:h[1]||(h[1]=Vt(()=>{},["prevent"])),onFocusOutside:h[2]||(h[2]=p=>{if(p.defaultPrevented)return;const m=f(l).filterElement.value?.contains(p.target);p.target!==f(i).trigger.value&&!m&&f(o).onOpenChange(!1)}),onEscapeKeyDown:h[3]||(h[3]=p=>{f(s).onClose(),p.preventDefault()}),onKeydown:h[4]||(h[4]=p=>{const m=p.currentTarget?.contains(p.target),v=f(C7)[f(s).dir.value].includes(p.key);m&&v&&(f(o).onOpenChange(!1),f(l).filterElement.value?(f(l).filterElement.value.focus(),f(l).highlightedElement.value=f(i).trigger.value,f(i).trigger.value?.scrollIntoView({block:"nearest"})):f(i).trigger.value?.focus(),p.preventDefault())})}),{default:E(()=>[j(d.$slots,"default")]),_:3},16,["id","aria-labelledby","side"])]),_:3},8,["present"]))}}),$M=EM,RM=Z({__name:"MenuSubTrigger",props:{disabled:{type:Boolean,required:!1},textValue:{type:String,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(e){const t=e,n=ro(),a=Oi(),r=Mb(),o=au();Se(n.open,d=>{d?o.activeSubmenuContext.value={onOpenChange:n.onOpenChange,trigger:r.trigger}:o.activeSubmenuContext.value?.trigger.value===r.trigger.value&&(o.activeSubmenuContext.value=void 0)});const s=V(null);r.triggerId||=Mn(void 0,"reka-menu-sub-trigger");function i(){s.value&&window.clearTimeout(s.value),s.value=null}_n(()=>{i()});function l(d){!Ko(d)||o.onItemEnter(d)||!t.disabled&&!n.open.value&&!s.value&&(o.onPointerGraceIntentChange(null),s.value=window.setTimeout(()=>{n.onOpenChange(!0),i()},100))}async function c(d){if(!Ko(d))return;i();const h=n.content.value?.getBoundingClientRect();if(h?.width){const p=n.content.value?.dataset.side,m=p==="right",v=m?-5:5,y=h[m?"left":"right"],g=h[m?"right":"left"];o.onPointerGraceIntentChange({area:[{x:d.clientX+v,y:d.clientY},{x:y,y:h.top},{x:g,y:h.top},{x:g,y:h.bottom},{x:y,y:h.bottom}],side:p}),window.clearTimeout(o.pointerGraceTimerRef.value),o.pointerGraceTimerRef.value=window.setTimeout(()=>o.onPointerGraceIntentChange(null),300)}else{if(o.onTriggerLeave(d))return;o.onPointerGraceIntentChange(null)}}async function u(d){const h=o.searchRef.value!=="";t.disabled||h&&d.key===" "||k7[a.dir.value].includes(d.key)&&(n.onOpenChange(!0),await Ve(),n.content.value?.focus(),d.preventDefault())}return(d,h)=>(C(),R(Cb,{"as-child":""},{default:E(()=>[ie(xb,de(t,{id:f(r).triggerId,ref:p=>{p&&f(r)?.onTriggerChange(p?.$el)},"aria-haspopup":"menu","aria-expanded":f(n).open.value,"aria-controls":f(r).contentId,"data-state":f(Sp)(f(n).open.value),onClick:h[0]||(h[0]=async p=>{t.disabled||p.defaultPrevented||(p.currentTarget?.focus(),f(n).open.value||f(n).onOpenChange(!0))}),onPointermove:l,onPointerleave:c,onKeydown:u}),{default:E(()=>[j(d.$slots,"default")]),_:3},16,["id","aria-expanded","aria-controls","data-state"])]),_:3}))}}),LM=RM,OM=Z({__name:"ContextMenuArrow",props:{width:{type:Number,required:!1,default:10},height:{type:Number,required:!1,default:5},rounded:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"svg"}},setup(e){const t=e;return Ee(),(n,a)=>(C(),R(f(GP),$e(Oe(t)),{default:E(()=>[j(n.$slots,"default")]),_:3},16))}}),NM=OM,FM=Z({__name:"ContextMenuCheckboxItem",props:{modelValue:{type:[Boolean,String],required:!1},disabled:{type:Boolean,required:!1},textValue:{type:String,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:["select","update:modelValue"],setup(e,{emit:t}){const n=e,r=Xa(t);return Ee(),(o,s)=>(C(),R(f(iM),$e(Oe({...n,...f(r)})),{default:E(()=>[j(o.$slots,"default")]),_:3},16))}}),qM=FM;const[Tb,BM]=pt("ContextMenuRoot");var HM=Z({inheritAttrs:!1,__name:"ContextMenuRoot",props:{pressOpenDelay:{type:Number,required:!1,default:700},dir:{type:String,required:!1},modal:{type:Boolean,required:!1,default:!0}},emits:["update:open"],setup(e,{emit:t}){const n=e,a=t,{dir:r,modal:o,pressOpenDelay:s}=kt(n);Ee();const i=Ka(r),l=V(!1);return BM({open:l,onOpenChange:u=>{l.value=u},dir:i,modal:o,triggerElement:V(),pressOpenDelay:s}),Se(l,u=>{a("update:open",u)}),(u,d)=>(C(),R(f(QP),{open:l.value,"onUpdate:open":d[0]||(d[0]=h=>l.value=h),dir:f(i),modal:f(o)},{default:E(()=>[j(u.$slots,"default")]),_:3},8,["open","dir","modal"]))}}),Ib=HM,VM=Z({__name:"ContextMenuContent",props:{forceMount:{type:Boolean,required:!1},loop:{type:Boolean,required:!1},sideFlip:{type:Boolean,required:!1},alignOffset:{type:Number,required:!1,default:0},alignFlip:{type:Boolean,required:!1},avoidCollisions:{type:Boolean,required:!1,default:!0},collisionBoundary:{type:null,required:!1,default:()=>[]},collisionPadding:{type:[Number,Object],required:!1,default:0},hideShiftedArrow:{type:Boolean,required:!1},sticky:{type:String,required:!1,default:"partial"},hideWhenDetached:{type:Boolean,required:!1,default:!1},positionStrategy:{type:String,required:!1},disableUpdateOnLayoutShift:{type:Boolean,required:!1},prioritizePosition:{type:Boolean,required:!1},reference:{type:null,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:["escapeKeyDown","pointerDownOutside","focusOutside","interactOutside","closeAutoFocus"],setup(e,{emit:t}){const r=Nn(e,t);Ee();const o=Tb(),s=V(!1);return(i,l)=>(C(),R(f(pM),de(f(r),{side:"right","side-offset":2,align:"start","update-position-strategy":"always",style:{"--reka-context-menu-content-transform-origin":"var(--reka-popper-transform-origin)","--reka-context-menu-content-available-width":"var(--reka-popper-available-width)","--reka-context-menu-content-available-height":"var(--reka-popper-available-height)","--reka-context-menu-trigger-width":"var(--reka-popper-anchor-width)","--reka-context-menu-trigger-height":"var(--reka-popper-anchor-height)"},onCloseAutoFocus:l[0]||(l[0]=c=>{!c.defaultPrevented&&s.value&&c.preventDefault(),s.value=!1}),onInteractOutside:l[1]||(l[1]=c=>{c.detail.originalEvent.button===2&&c.target===f(o).triggerElement.value&&c.preventDefault(),!c.defaultPrevented&&!f(o).modal.value&&(s.value=!0)})}),{default:E(()=>[j(i.$slots,"default")]),_:3},16))}}),zM=VM,jM=Z({__name:"ContextMenuGroup",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(e){const t=e;return Ee(),(n,a)=>(C(),R(f(Pb),$e(Oe(t)),{default:E(()=>[j(n.$slots,"default")]),_:3},16))}}),WM=jM,UM=Z({__name:"ContextMenuItem",props:{disabled:{type:Boolean,required:!1},textValue:{type:String,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:["select"],setup(e,{emit:t}){const n=e,r=Xa(t);return Ee(),(o,s)=>(C(),R(f($p),$e(Oe({...n,...f(r)})),{default:E(()=>[j(o.$slots,"default")]),_:3},16))}}),GM=UM,YM=Z({__name:"ContextMenuItemIndicator",props:{forceMount:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(e){const t=e;return Ee(),(n,a)=>(C(),R(f(oM),$e(Oe(t)),{default:E(()=>[j(n.$slots,"default")]),_:3},16))}}),KM=YM,XM=Z({__name:"ContextMenuLabel",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(e){const t=e;return Ee(),(n,a)=>(C(),R(f(yM),$e(Oe(t)),{default:E(()=>[j(n.$slots,"default")]),_:3},16))}}),JM=XM,QM=Z({__name:"ContextMenuPortal",props:{to:{type:null,required:!1},disabled:{type:Boolean,required:!1},defer:{type:Boolean,required:!1},forceMount:{type:Boolean,required:!1}},setup(e){const t=e;return(n,a)=>(C(),R(f(wM),$e(Oe(t)),{default:E(()=>[j(n.$slots,"default")]),_:3},16))}}),ZM=QM,e6=Z({__name:"ContextMenuRadioGroup",props:{modelValue:{type:null,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:["update:modelValue"],setup(e,{emit:t}){const n=e,r=Xa(t);return Ee(),(o,s)=>(C(),R(f(SM),$e(Oe({...n,...f(r)})),{default:E(()=>[j(o.$slots,"default")]),_:3},16))}}),t6=e6,n6=Z({__name:"ContextMenuRadioItem",props:{value:{type:null,required:!0},disabled:{type:Boolean,required:!1},textValue:{type:String,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:["select"],setup(e,{emit:t}){const n=e,r=Xa(t);return Ee(),(o,s)=>(C(),R(f(AM),$e(Oe({...n,...f(r)})),{default:E(()=>[j(o.$slots,"default")]),_:3},16))}}),a6=n6,r6=Z({__name:"ContextMenuSeparator",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(e){const t=e;return Ee(),(n,a)=>(C(),R(f(MM),$e(Oe(t)),{default:E(()=>[j(n.$slots,"default")]),_:3},16))}}),o6=r6,s6=Z({__name:"ContextMenuSub",props:{defaultOpen:{type:Boolean,required:!1},open:{type:Boolean,required:!1,default:void 0}},emits:["update:open"],setup(e,{emit:t}){const n=e,a=t;Ee();const r=gt(n,"open",a,{defaultValue:n.defaultOpen,passive:n.open===void 0});return(o,s)=>(C(),R(f(DM),{open:f(r),"onUpdate:open":s[0]||(s[0]=i=>et(r)?r.value=i:null)},{default:E(()=>[j(o.$slots,"default",{open:f(r)})]),_:3},8,["open"]))}}),i6=s6,l6=Z({__name:"ContextMenuSubContent",props:{forceMount:{type:Boolean,required:!1},loop:{type:Boolean,required:!1},sideOffset:{type:Number,required:!1},sideFlip:{type:Boolean,required:!1},alignOffset:{type:Number,required:!1},alignFlip:{type:Boolean,required:!1},avoidCollisions:{type:Boolean,required:!1},collisionBoundary:{type:null,required:!1},collisionPadding:{type:[Number,Object],required:!1},arrowPadding:{type:Number,required:!1},hideShiftedArrow:{type:Boolean,required:!1},sticky:{type:String,required:!1},hideWhenDetached:{type:Boolean,required:!1},positionStrategy:{type:String,required:!1},updatePositionStrategy:{type:String,required:!1},disableUpdateOnLayoutShift:{type:Boolean,required:!1},prioritizePosition:{type:Boolean,required:!1},reference:{type:null,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:["escapeKeyDown","pointerDownOutside","focusOutside","interactOutside","entryFocus","openAutoFocus","closeAutoFocus"],setup(e,{emit:t}){const r=Nn(e,t);return Ee(),(o,s)=>(C(),R(f($M),de(f(r),{style:{"--reka-context-menu-content-transform-origin":"var(--reka-popper-transform-origin)","--reka-context-menu-content-available-width":"var(--reka-popper-available-width)","--reka-context-menu-content-available-height":"var(--reka-popper-available-height)","--reka-context-menu-trigger-width":"var(--reka-popper-anchor-width)","--reka-context-menu-trigger-height":"var(--reka-popper-anchor-height)"}}),{default:E(()=>[j(o.$slots,"default")]),_:3},16))}}),c6=l6,u6=Z({__name:"ContextMenuSubTrigger",props:{disabled:{type:Boolean,required:!1},textValue:{type:String,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(e){const t=e;return Ee(),(n,a)=>(C(),R(f(LM),$e(Oe(t)),{default:E(()=>[j(n.$slots,"default")]),_:3},16))}}),d6=u6;function _g(e){return e.pointerType!=="mouse"}var f6=Z({inheritAttrs:!1,__name:"ContextMenuTrigger",props:{disabled:{type:Boolean,required:!1,default:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"span"}},setup(e){const t=e,{disabled:n}=kt(t),{forwardRef:a,currentElement:r}=Ee(),o=Tb(),s=V({x:0,y:0}),i=S(()=>({getBoundingClientRect:()=>({width:0,height:0,left:s.value.x,right:s.value.x,top:s.value.y,bottom:s.value.y,...s.value})})),l=V(0);function c(){window.clearTimeout(l.value)}function u(m){s.value={x:m.clientX,y:m.clientY},o.onOpenChange(!0)}async function d(m){n.value||(await Ve(),m.defaultPrevented||(c(),u(m),m.preventDefault()))}async function h(m){n.value||(await Ve(),_g(m)&&!m.defaultPrevented&&(c(),l.value=window.setTimeout(u,o.pressOpenDelay.value,m)))}async function p(m){n.value||(await Ve(),_g(m)&&!m.defaultPrevented&&c())}return Xe(()=>{r.value&&(o.triggerElement.value=r.value)}),(m,v)=>(C(),ye(ze,null,[ie(f(Cb),{as:"template",reference:i.value},null,8,["reference"]),ie(f(fe),de({ref:f(a),as:m.as,"as-child":m.asChild,"data-state":f(o).open.value?"open":"closed","data-disabled":f(n)?"":void 0,style:{WebkitTouchCallout:"none",pointerEvents:"auto"}},m.$attrs,{onContextmenu:d,onPointerdown:h,onPointermove:p,onPointercancel:p,onPointerup:p}),{default:E(()=>[j(m.$slots,"default")]),_:3},16,["as","as-child","data-state","data-disabled"])],64))}}),Db=f6;const[oo,p6]=pt("PopoverRoot");var h6=Z({__name:"PopoverRoot",props:{defaultOpen:{type:Boolean,required:!1,default:!1},open:{type:Boolean,required:!1,default:void 0},modal:{type:Boolean,required:!1,default:!1}},emits:["update:open"],setup(e,{emit:t}){const n=e,a=t,{modal:r}=kt(n),o=gt(n,"open",a,{defaultValue:n.defaultOpen,passive:n.open===void 0});return p6({contentId:"",triggerId:"",modal:r,open:o,onOpenChange:l=>{o.value=l},onOpenToggle:()=>{o.value=!o.value},triggerElement:V(),hasCustomAnchor:V(!1)}),(l,c)=>(C(),R(f(Ri),null,{default:E(()=>[j(l.$slots,"default",{open:f(o),close:()=>o.value=!1})]),_:3}))}}),m6=h6,g6=Z({__name:"PopoverAnchor",props:{reference:{type:null,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(e){const t=e;Ee();const n=oo();return Jy(()=>{n.hasCustomAnchor.value=!0}),_n(()=>{n.hasCustomAnchor.value=!1}),(a,r)=>(C(),R(f(Li),$e(Oe(t)),{default:E(()=>[j(a.$slots,"default")]),_:3},16))}}),v6=g6,y6=Z({__name:"PopoverArrow",props:{width:{type:Number,required:!1,default:10},height:{type:Number,required:!1,default:5},rounded:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"svg"}},setup(e){const t=e;return Ee(),(n,a)=>(C(),R(f(nu),$e(Oe(t)),{default:E(()=>[j(n.$slots,"default")]),_:3},16))}}),b6=y6,w6=Z({__name:"PopoverClose",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"button"}},setup(e){const t=e;Ee();const n=oo();return(a,r)=>(C(),R(f(fe),{type:a.as==="button"?"button":void 0,as:a.as,"as-child":t.asChild,onClick:r[0]||(r[0]=o=>f(n).onOpenChange(!1))},{default:E(()=>[j(a.$slots,"default")]),_:3},8,["type","as","as-child"]))}}),_6=w6,k6=Z({__name:"PopoverContentImpl",props:{trapFocus:{type:Boolean,required:!1},side:{type:null,required:!1},sideOffset:{type:Number,required:!1},sideFlip:{type:Boolean,required:!1},align:{type:null,required:!1},alignOffset:{type:Number,required:!1},alignFlip:{type:Boolean,required:!1},avoidCollisions:{type:Boolean,required:!1},collisionBoundary:{type:null,required:!1},collisionPadding:{type:[Number,Object],required:!1},arrowPadding:{type:Number,required:!1},hideShiftedArrow:{type:Boolean,required:!1},sticky:{type:String,required:!1},hideWhenDetached:{type:Boolean,required:!1},positionStrategy:{type:String,required:!1},updatePositionStrategy:{type:String,required:!1},disableUpdateOnLayoutShift:{type:Boolean,required:!1},prioritizePosition:{type:Boolean,required:!1},reference:{type:null,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1},disableOutsidePointerEvents:{type:Boolean,required:!1}},emits:["escapeKeyDown","pointerDownOutside","focusOutside","interactOutside","openAutoFocus","closeAutoFocus"],setup(e,{emit:t}){const n=e,a=t,r=Ja(rs(n,"trapFocus","disableOutsidePointerEvents")),{forwardRef:o}=Ee(),s=oo();return nb(),(i,l)=>(C(),R(f(Cp),{"as-child":"",loop:"",trapped:i.trapFocus,onMountAutoFocus:l[5]||(l[5]=c=>a("openAutoFocus",c)),onUnmountAutoFocus:l[6]||(l[6]=c=>a("closeAutoFocus",c))},{default:E(()=>[ie(f(Ei),{"as-child":"","disable-outside-pointer-events":i.disableOutsidePointerEvents,onPointerDownOutside:l[0]||(l[0]=c=>a("pointerDownOutside",c)),onInteractOutside:l[1]||(l[1]=c=>a("interactOutside",c)),onEscapeKeyDown:l[2]||(l[2]=c=>a("escapeKeyDown",c)),onFocusOutside:l[3]||(l[3]=c=>a("focusOutside",c)),onDismiss:l[4]||(l[4]=c=>f(s).onOpenChange(!1))},{default:E(()=>[ie(f(tu),de(f(r),{id:f(s).contentId,ref:f(o),"data-state":f(s).open.value?"open":"closed","aria-labelledby":f(s).triggerId,style:{"--reka-popover-content-transform-origin":"var(--reka-popper-transform-origin)","--reka-popover-content-available-width":"var(--reka-popper-available-width)","--reka-popover-content-available-height":"var(--reka-popper-available-height)","--reka-popover-trigger-width":"var(--reka-popper-anchor-width)","--reka-popover-trigger-height":"var(--reka-popper-anchor-height)"},role:"dialog"}),{default:E(()=>[j(i.$slots,"default")]),_:3},16,["id","data-state","aria-labelledby"])]),_:3},8,["disable-outside-pointer-events"])]),_:3},8,["trapped"]))}}),Eb=k6,C6=Z({__name:"PopoverContentModal",props:{side:{type:null,required:!1},sideOffset:{type:Number,required:!1},sideFlip:{type:Boolean,required:!1},align:{type:null,required:!1},alignOffset:{type:Number,required:!1},alignFlip:{type:Boolean,required:!1},avoidCollisions:{type:Boolean,required:!1},collisionBoundary:{type:null,required:!1},collisionPadding:{type:[Number,Object],required:!1},arrowPadding:{type:Number,required:!1},hideShiftedArrow:{type:Boolean,required:!1},sticky:{type:String,required:!1},hideWhenDetached:{type:Boolean,required:!1},positionStrategy:{type:String,required:!1},updatePositionStrategy:{type:String,required:!1},disableUpdateOnLayoutShift:{type:Boolean,required:!1},prioritizePosition:{type:Boolean,required:!1},reference:{type:null,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1},disableOutsidePointerEvents:{type:Boolean,required:!1}},emits:["escapeKeyDown","pointerDownOutside","focusOutside","interactOutside","openAutoFocus","closeAutoFocus"],setup(e,{emit:t}){const n=e,a=t,r=oo(),o=V(!1);cp(!0);const s=Nn(n,a),{forwardRef:i,currentElement:l}=Ee();return _p(l),(c,u)=>(C(),R(Eb,de(f(s),{ref:f(i),"trap-focus":f(r).open.value,"disable-outside-pointer-events":"",onCloseAutoFocus:u[0]||(u[0]=Vt(d=>{a("closeAutoFocus",d),o.value||f(r).triggerElement.value?.focus()},["prevent"])),onPointerDownOutside:u[1]||(u[1]=d=>{a("pointerDownOutside",d);const h=d.detail.originalEvent,p=h.button===0&&h.ctrlKey===!0,m=h.button===2||p;o.value=m}),onFocusOutside:u[2]||(u[2]=Vt(()=>{},["prevent"]))}),{default:E(()=>[j(c.$slots,"default")]),_:3},16,["trap-focus"]))}}),S6=C6,x6=Z({__name:"PopoverContentNonModal",props:{side:{type:null,required:!1},sideOffset:{type:Number,required:!1},sideFlip:{type:Boolean,required:!1},align:{type:null,required:!1},alignOffset:{type:Number,required:!1},alignFlip:{type:Boolean,required:!1},avoidCollisions:{type:Boolean,required:!1},collisionBoundary:{type:null,required:!1},collisionPadding:{type:[Number,Object],required:!1},arrowPadding:{type:Number,required:!1},hideShiftedArrow:{type:Boolean,required:!1},sticky:{type:String,required:!1},hideWhenDetached:{type:Boolean,required:!1},positionStrategy:{type:String,required:!1},updatePositionStrategy:{type:String,required:!1},disableUpdateOnLayoutShift:{type:Boolean,required:!1},prioritizePosition:{type:Boolean,required:!1},reference:{type:null,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1},disableOutsidePointerEvents:{type:Boolean,required:!1}},emits:["escapeKeyDown","pointerDownOutside","focusOutside","interactOutside","openAutoFocus","closeAutoFocus"],setup(e,{emit:t}){const n=e,a=t,r=oo(),o=V(!1),s=V(!1),i=Nn(n,a);return(l,c)=>(C(),R(Eb,de(f(i),{"trap-focus":!1,"disable-outside-pointer-events":!1,onCloseAutoFocus:c[0]||(c[0]=u=>{a("closeAutoFocus",u),u.defaultPrevented||(o.value||f(r).triggerElement.value?.focus(),u.preventDefault()),o.value=!1,s.value=!1}),onInteractOutside:c[1]||(c[1]=async u=>{a("interactOutside",u),u.defaultPrevented||(o.value=!0,u.detail.originalEvent.type==="pointerdown"&&(s.value=!0));const d=u.target;f(r).triggerElement.value?.contains(d)&&u.preventDefault(),u.detail.originalEvent.type==="focusin"&&s.value&&u.preventDefault()})}),{default:E(()=>[j(l.$slots,"default")]),_:3},16))}}),A6=x6,P6=Z({__name:"PopoverContent",props:{forceMount:{type:Boolean,required:!1},side:{type:null,required:!1},sideOffset:{type:Number,required:!1},sideFlip:{type:Boolean,required:!1},align:{type:null,required:!1},alignOffset:{type:Number,required:!1},alignFlip:{type:Boolean,required:!1},avoidCollisions:{type:Boolean,required:!1},collisionBoundary:{type:null,required:!1},collisionPadding:{type:[Number,Object],required:!1},arrowPadding:{type:Number,required:!1},hideShiftedArrow:{type:Boolean,required:!1},sticky:{type:String,required:!1},hideWhenDetached:{type:Boolean,required:!1},positionStrategy:{type:String,required:!1},updatePositionStrategy:{type:String,required:!1},disableUpdateOnLayoutShift:{type:Boolean,required:!1},prioritizePosition:{type:Boolean,required:!1},reference:{type:null,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1},disableOutsidePointerEvents:{type:Boolean,required:!1}},emits:["escapeKeyDown","pointerDownOutside","focusOutside","interactOutside","openAutoFocus","closeAutoFocus"],setup(e,{emit:t}){const n=e,a=t,r=oo(),o=Nn(n,a),{forwardRef:s}=Ee();return r.contentId||=Mn(void 0,"reka-popover-content"),(i,l)=>(C(),R(f(Za),{present:i.forceMount||f(r).open.value},{default:E(()=>[f(r).modal.value?(C(),R(S6,de({key:0},f(o),{ref:f(s)}),{default:E(()=>[j(i.$slots,"default")]),_:3},16)):(C(),R(A6,de({key:1},f(o),{ref:f(s)}),{default:E(()=>[j(i.$slots,"default")]),_:3},16))]),_:3},8,["present"]))}}),M6=P6,T6=Z({__name:"PopoverPortal",props:{to:{type:null,required:!1},disabled:{type:Boolean,required:!1},defer:{type:Boolean,required:!1},forceMount:{type:Boolean,required:!1}},setup(e){const t=e;return(n,a)=>(C(),R(f(cs),$e(Oe(t)),{default:E(()=>[j(n.$slots,"default")]),_:3},16))}}),I6=T6,D6=Z({__name:"PopoverTrigger",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"button"}},setup(e){const t=e,n=oo(),{forwardRef:a,currentElement:r}=Ee();return n.triggerId||=Mn(void 0,"reka-popover-trigger"),Xe(()=>{n.triggerElement.value=r.value}),(o,s)=>(C(),R($n(f(n).hasCustomAnchor.value?f(fe):f(Li)),{"as-child":""},{default:E(()=>[ie(f(fe),{id:f(n).triggerId,ref:f(a),type:o.as==="button"?"button":void 0,"aria-haspopup":"dialog","aria-expanded":f(n).open.value,"aria-controls":f(n).contentId,"data-state":f(n).open.value?"open":"closed",as:o.as,"as-child":t.asChild,onClick:f(n).onOpenToggle},{default:E(()=>[j(o.$slots,"default")]),_:3},8,["id","type","aria-expanded","aria-controls","data-state","as","as-child","onClick"])]),_:3}))}}),E6=D6;function $6(e){const t=S(()=>e.start.value?!!e.isDateDisabled(e.start.value):!1),n=S(()=>e.end.value?!!e.isDateDisabled(e.end.value):!1),a=S(()=>!!(t.value||n.value||e.start.value&&e.end.value&&fn(e.end.value,e.start.value))),r=g=>e.start.value?xt(e.start.value,g):!1,o=g=>e.end.value?xt(e.end.value,g):!1,s=g=>e.start.value&&xt(e.start.value,g)||e.end.value&&xt(e.end.value,g)?!0:e.end.value&&e.start.value?Gu(g,e.start.value,e.end.value):!1,i=g=>{if(e.isDateDisabled(g))return!0;if(e.maximumDays?.value){if(e.start.value&&e.end.value){if(e.fixedDate.value){const b=Qd(e.start.value,e.end.value).length;if(b<=e.maximumDays.value){const w=e.maximumDays.value-b-1,_=e.start.value.subtract({days:w}),A=e.end.value.add({days:w});return!Gu(g,_,A)}}return!1}if(e.start.value){const b=e.start.value.add({days:e.maximumDays.value}),w=e.start.value.subtract({days:e.maximumDays.value});return!Gu(g,w,b)}}return!1},l=g=>!!e.isDateHighlightable?.(g),c=S(()=>{if(e.start.value&&e.end.value&&!e.fixedDate.value||!e.start.value||!e.focusedValue.value)return null;const g=fn(e.start.value,e.focusedValue.value),b=g?e.start.value:e.focusedValue.value,w=g?e.focusedValue.value:e.start.value;if(xt(b,w))return{start:b,end:w};if(e.maximumDays?.value&&!e.end.value){const A=e.maximumDays.value,P=e.start.value,k=e.focusedValue.value;return fn(k,P)?{start:P.subtract({days:A-1}),end:P}:{start:P,end:P.add({days:A-1})}}return T4(b,w,e.allowNonContiguousRanges.value?()=>!1:e.isDateUnavailable,i,e.isDateHighlightable)?{start:b,end:w}:null}),u=g=>!c.value||!c.value.start?!1:xt(c.value.start,g),d=g=>!c.value||!c.value.end?!1:xt(c.value.end,g),h=S(()=>!!(e.start.value||e.end.value)),p=S(()=>!!(e.start.value&&e.isDateDisabled(e.start.value))),m=S(()=>!!(e.end.value&&e.isDateDisabled(e.end.value))),v=S(()=>{const g=!!e.start.value,b=!!e.end.value;return!g&&!b?!1:g&&b?p.value&&m.value:g&&p.value||b&&m.value}),y=S(()=>{if(e.start.value&&!p.value)return e.start.value;if(e.end.value&&!m.value)return e.end.value});return{isInvalid:a,isSelected:s,isDateHighlightable:l,highlightedRange:c,isSelectionStart:r,isSelectionEnd:o,isHighlightedStart:u,isHighlightedEnd:d,isDateDisabled:i,hasSelectedDate:h,isSelectedDisabled:v,selectedFocusableDate:y}}const R6={style:{border:"0px",clip:"rect(0px, 0px, 0px, 0px)","clip-path":"inset(50%)",height:"1px",margin:"-1px",overflow:"hidden",padding:"0px",position:"absolute","white-space":"nowrap",width:"1px"}},L6={role:"heading","aria-level":"2"},[ps,O6]=pt("RangeCalendarRoot");var N6=Z({__name:"RangeCalendarRoot",props:{defaultPlaceholder:{type:null,required:!1},defaultValue:{type:Object,required:!1,default:()=>({start:void 0,end:void 0})},modelValue:{type:[Object,null],required:!1},placeholder:{type:null,required:!1,default:void 0},allowNonContiguousRanges:{type:Boolean,required:!1,default:!1},pagedNavigation:{type:Boolean,required:!1,default:!1},preventDeselect:{type:Boolean,required:!1,default:!1},maximumDays:{type:Number,required:!1,default:void 0},weekStartsOn:{type:Number,required:!1},weekdayFormat:{type:String,required:!1,default:"narrow"},calendarLabel:{type:String,required:!1},fixedWeeks:{type:Boolean,required:!1,default:!1},maxValue:{type:null,required:!1},minValue:{type:null,required:!1},locale:{type:String,required:!1},numberOfMonths:{type:Number,required:!1,default:1},disabled:{type:Boolean,required:!1,default:!1},readonly:{type:Boolean,required:!1,default:!1},initialFocus:{type:Boolean,required:!1,default:!1},isDateDisabled:{type:Function,required:!1,default:void 0},isDateUnavailable:{type:Function,required:!1,default:void 0},isDateHighlightable:{type:Function,required:!1,default:void 0},dir:{type:String,required:!1},nextPage:{type:Function,required:!1},prevPage:{type:Function,required:!1},disableDaysOutsideCurrentView:{type:Boolean,required:!1,default:!1},fixedDate:{type:String,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"div"}},emits:["update:modelValue","update:validModelValue","update:placeholder","update:startValue"],setup(e,{emit:t}){const n=e,a=t,{disabled:r,readonly:o,initialFocus:s,pagedNavigation:i,weekdayFormat:l,fixedWeeks:c,numberOfMonths:u,preventDeselect:d,isDateUnavailable:h,isDateHighlightable:p,isDateDisabled:m,calendarLabel:v,maxValue:y,minValue:g,dir:b,locale:w,nextPage:_,prevPage:A,allowNonContiguousRanges:P,disableDaysOutsideCurrentView:k,fixedDate:T,maximumDays:I}=kt(n),{primitiveElement:Y,currentElement:Q}=bn(),z=Ka(b),te=ls(w),O=S(()=>n.weekStartsOn??tb(te.value)),D=V(),q=V(),G=V(!1),L=gt(n,"modelValue",a,{defaultValue:n.defaultValue??{start:void 0,end:void 0},passive:n.modelValue===void 0}),ee=Je=>Je??{start:void 0,end:void 0},K=S(()=>ee(L.value)),ce=V(ee(L.value));Se(ce,Je=>{a("update:validModelValue",Je)});const ue=ss({defaultPlaceholder:n.placeholder,defaultValue:ee(L.value).start,locale:n.locale}),be=V(ee(L.value).start),ge=V(ee(L.value).end),we=gt(n,"placeholder",a,{defaultValue:n.defaultPlaceholder??ue.copy(),passive:n.placeholder===void 0});function me(Je){we.value=Je.copy()}const{fullCalendarLabel:X,headingValue:le,isDateDisabled:se,isDateUnavailable:pe,isNextButtonDisabled:Pe,isPrevButtonDisabled:$,grid:B,weekdays:J,isOutsideVisibleView:W,nextPage:U,prevPage:ne,formatter:x,isPlaceholderFocusable:M,firstFocusableDate:N}=kb({locale:te,placeholder:we,weekStartsOn:O,fixedWeeks:c,numberOfMonths:u,minValue:g,maxValue:y,disabled:r,weekdayFormat:l,pagedNavigation:i,isDateDisabled:m.value,isDateUnavailable:h.value,calendarLabel:v,nextPage:_,prevPage:A}),{isInvalid:H,isSelected:oe,isDateHighlightable:ae,highlightedRange:F,isSelectionStart:re,isSelectionEnd:he,isHighlightedStart:xe,isHighlightedEnd:Re,isDateDisabled:je,hasSelectedDate:We,isSelectedDisabled:Ge,selectedFocusableDate:Lt}=$6({start:be,end:ge,isDateDisabled:se,isDateUnavailable:pe,isDateHighlightable:p.value,focusedValue:q,allowNonContiguousRanges:P,fixedDate:T,maximumDays:I});Se(L,Je=>{const Qe=ee(Je);!Qe.start&&!be.value||Qe.start&&be.value&&fr(Qe.start,be.value)||(be.value=Qe.start?.copy?.()),!Qe.end&&!ge.value||Qe.end&&ge.value&&fr(Qe.end,ge.value)||(ge.value=Qe.end?.copy?.())}),Se(be,Je=>{Je&&!fr(Je,we.value)&&me(Je),a("update:startValue",Je)}),Se([be,ge],([Je,Qe])=>{const _e=L.value;if(!(_e&&_e.start&&_e.end&&Je&&Qe&&fr(_e.start,Je)&&fr(_e.end,Qe)))if(G.value=!0,Qe&&Je){const Le=fn(Qe,Je)?{start:Qe.copy(),end:Je.copy()}:{start:Je.copy(),end:Qe.copy()};L.value={start:Le.start,end:Le.end},G.value=!1,ce.value={start:Le.start.copy(),end:Le.end.copy()}}else L.value=Je?{start:Je.copy(),end:void 0}:{start:Qe?.copy(),end:void 0}});const jt=Qa();return Kt(Q,"keydown",Je=>{Je.key===jt.ESCAPE&&G.value&&(be.value=ce.value.start?.copy(),ge.value=ce.value.end?.copy())}),O6({isDateUnavailable:pe,isDateHighlightable:ae,startValue:be,endValue:ge,formatter:x,modelValue:K,placeholder:we,disabled:r,initialFocus:s,pagedNavigation:i,grid:B,weekDays:J,weekStartsOn:O,weekdayFormat:l,fixedWeeks:c,numberOfMonths:u,readonly:o,preventDeselect:d,fullCalendarLabel:X,headingValue:le,isInvalid:H,isDateDisabled:je,allowNonContiguousRanges:P,highlightedRange:F,focusedValue:q,lastPressedDateValue:D,isSelected:oe,isSelectionEnd:he,isSelectionStart:re,isNextButtonDisabled:Pe,isPrevButtonDisabled:$,isOutsideVisibleView:W,nextPage:U,prevPage:ne,parentElement:Q,onPlaceholderChange:me,locale:te,dir:z,isHighlightedStart:xe,isHighlightedEnd:Re,disableDaysOutsideCurrentView:k,fixedDate:T,maximumDays:I,minValue:g,maxValue:y,isPlaceholderFocusable:M,firstFocusableDate:N,hasSelectedDate:We,isSelectedDisabled:Ge,selectedFocusableDate:Lt}),Xe(()=>{s.value&&is(Q.value)}),(Je,Qe)=>(C(),R(f(fe),{ref_key:"primitiveElement",ref:Y,as:Je.as,"as-child":Je.asChild,"aria-label":f(X),"data-readonly":f(o)?"":void 0,"data-disabled":f(r)?"":void 0,"data-invalid":f(H)?"":void 0,dir:f(z)},{default:E(()=>[ke("div",R6,[ke("div",L6,Me(f(X)),1)]),j(Je.$slots,"default",{date:f(we),grid:f(B),weekDays:f(J),weekStartsOn:O.value,locale:f(te),fixedWeeks:f(c),modelValue:K.value})]),_:3},8,["as","as-child","aria-label","data-readonly","data-disabled","data-invalid","dir"]))}}),F6=N6,q6=Z({__name:"RangeCalendarCell",props:{date:{type:null,required:!0},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"td"}},setup(e){const t=ps();return(n,a)=>(C(),R(f(fe),{as:n.as,"as-child":n.asChild,role:"gridcell","aria-selected":f(t).isSelected(n.date)?!0:void 0,"aria-disabled":f(t).isDateDisabled(n.date)||f(t).isDateUnavailable?.(n.date)||f(t).disableDaysOutsideCurrentView.value,"data-disabled":f(t).isDateDisabled(n.date)||f(t).disableDaysOutsideCurrentView.value?"":void 0},{default:E(()=>[j(n.$slots,"default")]),_:3},8,["as","as-child","aria-selected","aria-disabled","data-disabled"]))}}),B6=q6,H6=Z({__name:"RangeCalendarCellTrigger",props:{day:{type:null,required:!0},month:{type:null,required:!0},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"div"}},setup(e){const t=e,n=ps(),a=Qa(),{primitiveElement:r}=bn(),o=S(()=>n.formatter.custom(Pt(t.day),{weekday:"long",month:"long",day:"numeric",year:"numeric"})),s=S(()=>n.isDateUnavailable?.(t.day)??!1),i=S(()=>n.isSelected(t.day)),l=S(()=>n.isSelectionStart(t.day)),c=S(()=>n.isSelectionEnd(t.day)),u=S(()=>n.isHighlightedStart(t.day)),d=S(()=>n.isHighlightedEnd(t.day)),h=S(()=>n.highlightedRange.value?A4(t.day,n.highlightedRange.value.start,n.highlightedRange.value.end):!1),p=S(()=>n.allowNonContiguousRanges.value),m=S(()=>R1(t.day,pa())),v=S(()=>!Gc(t.day,t.month)),y=S(()=>n.isOutsideVisibleView(t.day)),g=S(()=>n.isDateDisabled(t.day)||n.disableDaysOutsideCurrentView.value&&v.value),b=S(()=>t.day.day.toLocaleString(n.locale.value)),w=S(()=>v.value||g.value?!1:!n.disabled.value&&n.isPlaceholderFocusable.value&&xt(t.day,n.placeholder.value)?!0:!n.disabled.value&&n.selectedFocusableDate.value&&!n.isPlaceholderFocusable.value?xt(t.day,n.selectedFocusableDate.value):!n.disabled.value&&(!n.hasSelectedDate.value||n.isSelectedDisabled.value)&&!n.isPlaceholderFocusable.value?n.firstFocusableDate.value&&xt(t.day,n.firstFocusableDate.value):!1);function _(T,I){if(!n.readonly.value&&!(n.isDateDisabled(I)||n.isDateUnavailable?.(I))){if(n.startValue.value&&n.highlightedRange.value===null){if(xt(I,n.startValue.value)&&!n.preventDeselect.value&&!n.endValue.value){n.startValue.value=void 0,n.onPlaceholderChange(I),n.lastPressedDateValue.value=I.copy();return}else if(!n.endValue.value){T.preventDefault(),n.lastPressedDateValue.value&&xt(n.lastPressedDateValue.value,I)&&(n.startValue.value=I.copy()),n.lastPressedDateValue.value=I.copy();return}}if(n.lastPressedDateValue.value=I.copy(),n.startValue.value&&n.endValue.value&&xt(n.startValue.value,n.endValue.value)&&xt(n.startValue.value,I)&&!n.preventDeselect.value){n.startValue.value=void 0,n.endValue.value=void 0,n.onPlaceholderChange(I);return}n.startValue.value?n.endValue.value?n.endValue.value&&n.startValue.value&&(n.fixedDate.value?n.fixedDate.value==="start"?I.compare(n.startValue.value)<0?n.startValue.value=I.copy():n.endValue.value=I.copy():n.fixedDate.value==="end"&&(I.compare(n.endValue.value)>0?n.endValue.value=I.copy():n.startValue.value=I.copy()):(n.endValue.value=void 0,n.startValue.value=I.copy())):n.endValue.value=I.copy():n.startValue.value=I.copy()}}function A(T){g.value||_(T,t.day)}function P(){g.value||n.isDateUnavailable?.(t.day)||(n.focusedValue.value=t.day.copy())}function k(T){if(g.value)return;T.preventDefault(),T.stopPropagation();const I=n.parentElement.value,Y=7,Q=n.dir.value==="rtl"?-1:1;switch(T.code){case a.ARROW_RIGHT:z(t.day,Q);break;case a.ARROW_LEFT:z(t.day,-Q);break;case a.ARROW_UP:z(t.day,-Y);break;case a.ARROW_DOWN:z(t.day,Y);break;case a.ENTER:case a.SPACE_CODE:_(T,t.day)}function z(te,O){const D=te.add({days:O});if(n.minValue.value&&D.compare(n.minValue.value)<0||n.maxValue.value&&D.compare(n.maxValue.value)>0)return;const q=I.querySelector(`[data-value='${D.toString()}']:not([data-outside-view])`);if(!q){if(O>0){if(n.isNextButtonDisabled())return;n.nextPage()}else{if(n.isPrevButtonDisabled())return;n.prevPage()}Ve(()=>{z(te,O)});return}if(q&&q.hasAttribute("data-disabled"))return z(D,O);n.onPlaceholderChange(D),q?.focus()}}return(T,I)=>(C(),R(f(fe),{ref_key:"primitiveElement",ref:r,as:T.as,"as-child":T.asChild,role:"button","aria-label":o.value,"data-reka-calendar-cell-trigger":"","aria-pressed":i.value&&(p.value||!s.value)?!0:void 0,"aria-disabled":g.value||s.value?!0:void 0,"data-highlighted":h.value&&(p.value||!s.value)?"":void 0,"data-selection-start":l.value?!0:void 0,"data-selection-end":c.value?!0:void 0,"data-highlighted-start":u.value?!0:void 0,"data-highlighted-end":d.value?!0:void 0,"data-selected":i.value&&(p.value||!s.value)?!0:void 0,"data-outside-visible-view":y.value?"":void 0,"data-value":T.day.toString(),"data-disabled":g.value?"":void 0,"data-unavailable":s.value?"":void 0,"data-today":m.value?"":void 0,"data-outside-view":v.value?"":void 0,"data-focused":w.value?"":void 0,tabindex:w.value?0:v.value||g.value?void 0:-1,onClick:A,onFocusin:P,onMouseenter:P,onKeydown:Ln(k,["up","down","left","right","enter","space"])},{default:E(()=>[j(T.$slots,"default",{dayValue:b.value,disabled:g.value,today:m.value,selected:i.value,outsideView:v.value,outsideVisibleView:y.value,unavailable:s.value,highlighted:h.value&&(p.value||!s.value),highlightedStart:u.value,highlightedEnd:d.value,selectionStart:l.value,selectionEnd:c.value},()=>[qe(Me(b.value),1)])]),_:3},8,["as","as-child","aria-label","aria-pressed","aria-disabled","data-highlighted","data-selection-start","data-selection-end","data-highlighted-start","data-highlighted-end","data-selected","data-outside-visible-view","data-value","data-disabled","data-unavailable","data-today","data-outside-view","data-focused","tabindex"]))}}),V6=H6,z6=Z({__name:"RangeCalendarGrid",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"table"}},setup(e){const t=e,n=ps(),a=S(()=>n.disabled.value?!0:void 0),r=S(()=>n.readonly.value?!0:void 0);return(o,s)=>(C(),R(f(fe),de(t,{tabindex:"-1",role:"application","aria-readonly":r.value,"aria-disabled":a.value,"data-readonly":r.value&&"","data-disabled":a.value&&"",onMouseleave:s[0]||(s[0]=i=>f(n).focusedValue.value=void 0)}),{default:E(()=>[j(o.$slots,"default")]),_:3},16,["aria-readonly","aria-disabled","data-readonly","data-disabled"]))}}),j6=z6,W6=Z({__name:"RangeCalendarGridBody",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"tbody"}},setup(e){const t=e;return(n,a)=>(C(),R(f(fe),$e(Oe(t)),{default:E(()=>[j(n.$slots,"default")]),_:3},16))}}),U6=W6,G6=Z({__name:"RangeCalendarGridHead",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"thead"}},setup(e){const t=e;return(n,a)=>(C(),R(f(fe),de(t,{"aria-hidden":"true"}),{default:E(()=>[j(n.$slots,"default")]),_:3},16))}}),Y6=G6,K6=Z({__name:"RangeCalendarGridRow",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"tr"}},setup(e){const t=e;return(n,a)=>(C(),R(f(fe),$e(Oe(t)),{default:E(()=>[j(n.$slots,"default")]),_:3},16))}}),X6=K6,J6=Z({__name:"RangeCalendarHeadCell",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"th"}},setup(e){const t=e;return(n,a)=>(C(),R(f(fe),$e(Oe(t)),{default:E(()=>[j(n.$slots,"default")]),_:3},16))}}),Q6=J6,Z6=Z({__name:"RangeCalendarHeader",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"div"}},setup(e){const t=e;return(n,a)=>(C(),R(f(fe),$e(Oe(t)),{default:E(()=>[j(n.$slots,"default")]),_:3},16))}}),eT=Z6,tT=Z({__name:"RangeCalendarHeading",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"div"}},setup(e){const t=e,n=ps();return(a,r)=>(C(),R(f(fe),de(t,{"data-disabled":f(n).disabled.value?"":void 0}),{default:E(()=>[j(a.$slots,"default",{headingValue:f(n).headingValue.value},()=>[qe(Me(f(n).headingValue.value),1)])]),_:3},16,["data-disabled"]))}}),nT=tT,aT=Z({__name:"RangeCalendarNext",props:{nextPage:{type:Function,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"button"}},setup(e){const t=e,n=S(()=>a.disabled.value||a.isNextButtonDisabled(t.nextPage)),a=ps();function r(){n.value||a.nextPage(t.nextPage)}return(o,s)=>(C(),R(f(fe),{as:t.as,"as-child":t.asChild,"aria-label":"Next page",type:t.as==="button"?"button":void 0,"aria-disabled":n.value||void 0,"data-disabled":n.value||void 0,disabled:n.value,onClick:r},{default:E(()=>[j(o.$slots,"default",{disabled:n.value},()=>[s[0]||(s[0]=qe(" Next page "))])]),_:3},8,["as","as-child","type","aria-disabled","data-disabled","disabled"]))}}),rT=aT,oT=Z({__name:"RangeCalendarPrev",props:{prevPage:{type:Function,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"button"}},setup(e){const t=e,n=S(()=>a.disabled.value||a.isPrevButtonDisabled(t.prevPage)),a=ps();function r(){n.value||a.prevPage(t.prevPage)}return(o,s)=>(C(),R(f(fe),{as:t.as,"as-child":t.asChild,"aria-label":"Previous page",type:t.as==="button"?"button":void 0,"aria-disabled":n.value||void 0,"data-disabled":n.value||void 0,disabled:n.value,onClick:r},{default:E(()=>[j(o.$slots,"default",{disabled:n.value},()=>[s[0]||(s[0]=qe(" Prev page "))])]),_:3},8,["as","as-child","type","aria-disabled","data-disabled","disabled"]))}}),sT=oT,iT=Z({__name:"HoverCardArrow",props:{width:{type:Number,required:!1,default:10},height:{type:Number,required:!1,default:5},rounded:{type:Boolean,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"svg"}},setup(e){const t=e;return Ee(),(n,a)=>(C(),R(f(nu),$e(Oe(t)),{default:E(()=>[j(n.$slots,"default")]),_:3},16))}}),lT=iT;const[Rp,cT]=pt("HoverCardRoot");var uT=Z({__name:"HoverCardRoot",props:{defaultOpen:{type:Boolean,required:!1,default:!1},open:{type:Boolean,required:!1,default:void 0},openDelay:{type:Number,required:!1,default:700},closeDelay:{type:Number,required:!1,default:300}},emits:["update:open"],setup(e,{emit:t}){const n=e,a=t,{openDelay:r,closeDelay:o}=kt(n);Ee();const s=gt(n,"open",a,{defaultValue:n.defaultOpen,passive:n.open===void 0}),i=V(0),l=V(0),c=V(!1),u=V(!1),d=V(!1),h=V();function p(){clearTimeout(l.value),i.value=window.setTimeout(()=>s.value=!0,r.value)}function m(){clearTimeout(i.value),!c.value&&!u.value&&(l.value=window.setTimeout(()=>s.value=!1,o.value))}function v(){s.value=!1}return cT({open:s,onOpenChange(y){s.value=y},onOpen:p,onClose:m,onDismiss:v,hasSelectionRef:c,isPointerDownOnContentRef:u,isPointerInTransitRef:d,triggerElement:h}),(y,g)=>(C(),R(f(Ri),null,{default:E(()=>[j(y.$slots,"default",{open:f(s)})]),_:3}))}}),dT=uT;function rf(e){return t=>t.pointerType==="touch"?void 0:e()}function fT(e){const t=[],n=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:a=>a.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP});for(;n.nextNode();)t.push(n.currentNode);return t}var pT=Z({__name:"HoverCardContentImpl",props:{side:{type:null,required:!1},sideOffset:{type:Number,required:!1},sideFlip:{type:Boolean,required:!1},align:{type:null,required:!1},alignOffset:{type:Number,required:!1},alignFlip:{type:Boolean,required:!1},avoidCollisions:{type:Boolean,required:!1},collisionBoundary:{type:null,required:!1},collisionPadding:{type:[Number,Object],required:!1},arrowPadding:{type:Number,required:!1},hideShiftedArrow:{type:Boolean,required:!1},sticky:{type:String,required:!1},hideWhenDetached:{type:Boolean,required:!1},positionStrategy:{type:String,required:!1},updatePositionStrategy:{type:String,required:!1},disableUpdateOnLayoutShift:{type:Boolean,required:!1},prioritizePosition:{type:Boolean,required:!1},reference:{type:null,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:["escapeKeyDown","pointerDownOutside","focusOutside","interactOutside"],setup(e,{emit:t}){const n=e,a=t,r=Ja(n),{forwardRef:o,currentElement:s}=Ee(),i=Rp(),{isPointerInTransit:l,onPointerExit:c}=ab(i.triggerElement,s);dC(i.isPointerInTransitRef,l,{direction:"rtl"}),c(()=>{i.onClose()});const u=V(!1);let d;qt(p=>{if(u.value){const m=document.body;d=m.style.userSelect||m.style.webkitUserSelect,m.style.userSelect="none",m.style.webkitUserSelect="none",p(()=>{m.style.userSelect=d,m.style.webkitUserSelect=d})}});function h(){u.value=!1,i.isPointerDownOnContentRef.value=!1,Ve(()=>{document.getSelection()?.toString()!==""&&(i.hasSelectionRef.value=!0)})}return Xe(()=>{s.value&&(document.addEventListener("pointerup",h),fT(s.value).forEach(m=>m.setAttribute("tabindex","-1"))),Kt(window,"scroll",p=>{p.target?.contains(i.triggerElement.value)&&i.onDismiss()},{capture:!0})}),_n(()=>{document.removeEventListener("pointerup",h),i.hasSelectionRef.value=!1,i.isPointerDownOnContentRef.value=!1}),(p,m)=>(C(),R(f(Ei),{"as-child":"","disable-outside-pointer-events":!1,onEscapeKeyDown:m[1]||(m[1]=v=>a("escapeKeyDown",v)),onPointerDownOutside:m[2]||(m[2]=v=>a("pointerDownOutside",v)),onFocusOutside:m[3]||(m[3]=Vt(v=>a("focusOutside",v),["prevent"])),onDismiss:f(i).onDismiss},{default:E(()=>[ie(f(tu),de({...f(r),...p.$attrs},{ref:f(o),"data-state":f(i).open.value?"open":"closed",style:{userSelect:u.value?"text":void 0,WebkitUserSelect:u.value?"text":void 0,"--reka-hover-card-content-transform-origin":"var(--reka-popper-transform-origin)","--reka-hover-card-content-available-width":"var(--reka-popper-available-width)","--reka-hover-card-content-available-height":"var(--reka-popper-available-height)","--reka-hover-card-trigger-width":"var(--reka-popper-anchor-width)","--reka-hover-card-trigger-height":"var(--reka-popper-anchor-height)"},onPointerdown:m[0]||(m[0]=v=>{v.currentTarget.contains(v.target)&&(u.value=!0),f(i).hasSelectionRef.value=!1,f(i).isPointerDownOnContentRef.value=!0})}),{default:E(()=>[j(p.$slots,"default")]),_:3},16,["data-state","style"])]),_:3},8,["onDismiss"]))}}),hT=pT,mT=Z({__name:"HoverCardContent",props:{forceMount:{type:Boolean,required:!1},side:{type:null,required:!1},sideOffset:{type:Number,required:!1},sideFlip:{type:Boolean,required:!1},align:{type:null,required:!1},alignOffset:{type:Number,required:!1},alignFlip:{type:Boolean,required:!1},avoidCollisions:{type:Boolean,required:!1},collisionBoundary:{type:null,required:!1},collisionPadding:{type:[Number,Object],required:!1},arrowPadding:{type:Number,required:!1},hideShiftedArrow:{type:Boolean,required:!1},sticky:{type:String,required:!1},hideWhenDetached:{type:Boolean,required:!1},positionStrategy:{type:String,required:!1},updatePositionStrategy:{type:String,required:!1},disableUpdateOnLayoutShift:{type:Boolean,required:!1},prioritizePosition:{type:Boolean,required:!1},reference:{type:null,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:["escapeKeyDown","pointerDownOutside","focusOutside","interactOutside"],setup(e,{emit:t}){const r=Nn(e,t),{forwardRef:o}=Ee(),s=Rp();return(i,l)=>(C(),R(f(Za),{present:i.forceMount||f(s).open.value},{default:E(()=>[ie(hT,de(f(r),{ref:f(o),onPointerenter:l[0]||(l[0]=c=>f(rf)(f(s).onOpen)(c))}),{default:E(()=>[j(i.$slots,"default")]),_:3},16)]),_:3},8,["present"]))}}),gT=mT,vT=Z({__name:"HoverCardPortal",props:{to:{type:null,required:!1},disabled:{type:Boolean,required:!1},defer:{type:Boolean,required:!1},forceMount:{type:Boolean,required:!1}},setup(e){const t=e;return(n,a)=>(C(),R(f(cs),$e(Oe(t)),{default:E(()=>[j(n.$slots,"default")]),_:3},16))}}),yT=vT,bT=Z({__name:"HoverCardTrigger",props:{reference:{type:null,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"a"}},setup(e){const{forwardRef:t,currentElement:n}=Ee(),a=Rp();a.triggerElement=n;function r(){setTimeout(()=>{!a.isPointerInTransitRef.value&&!a.open.value&&a.onClose()},0)}return(o,s)=>(C(),R(f(Li),{"as-child":"",reference:o.reference},{default:E(()=>[ie(f(fe),{ref:f(t),"as-child":o.asChild,as:o.as,"data-state":f(a).open.value?"open":"closed","data-grace-area-trigger":"",onPointerenter:s[0]||(s[0]=i=>f(rf)(f(a).onOpen)(i)),onPointerleave:s[1]||(s[1]=i=>f(rf)(r)(i)),onFocus:s[2]||(s[2]=i=>f(a).onOpen()),onBlur:s[3]||(s[3]=i=>f(a).onClose())},{default:E(()=>[j(o.$slots,"default")]),_:3},8,["as-child","as","data-state"])]),_:3},8,["reference"]))}}),wT=bT;function _T(e){function t(a){return Array.isArray(e.date.value)?e.date.value.some(r=>dt(r,a)):e.date.value?dt(e.date.value,a):!1}const n=S(()=>{if(Array.isArray(e.date.value)){if(!e.date.value.length)return!1;for(const a of e.date.value)if(e.isMonthDisabled?.(a)||e.isMonthUnavailable?.(a))return!0}else{if(!e.date.value)return!1;if(e.isMonthDisabled?.(e.date.value)||e.isMonthUnavailable?.(e.date.value))return!0}return!1});return{isMonthSelected:t,isInvalid:n}}function $b(e){const t=wp(e.locale.value),n=p=>typeof p=="function"?p:p?.value,a=S(()=>{const p={calendar:e.placeholder.value.calendar.identifier};return e.placeholder.value.calendar.identifier==="gregory"&&e.placeholder.value.era==="BC"&&(p.era="short"),p}),r=V($r({dateObj:e.placeholder.value}));function o(p){return!!(n(e.isMonthDisabled)?.(p)||e.disabled.value||e.maxValue.value&&sa(p.set({day:1}),e.maxValue.value)||e.minValue.value&&fn(za(p),e.minValue.value))}const s=p=>!!n(e.isMonthUnavailable)?.(p),i=p=>{if(!e.maxValue.value)return!1;if(e.disabled.value)return!0;const m=r.value.value;if(p||e.nextPage.value){const y=(p||e.nextPage.value)(m);return sa(y.set({month:1,day:1}),e.maxValue.value)}const v=m.add({years:1}).set({month:1,day:1});return sa(v,e.maxValue.value)},l=p=>{if(!e.minValue.value)return!1;if(e.disabled.value)return!0;const m=r.value.value;if(p||e.prevPage.value){const y=(p||e.prevPage.value)(m);return fn(za(y.set({month:12})),e.minValue.value)}const v=m.subtract({years:1}).set({month:12,day:31});return fn(v,e.minValue.value)},c=p=>{const m=r.value.value;if(p||e.nextPage.value){const y=(p||e.nextPage.value)(m);r.value=$r({dateObj:y}),e.placeholder.value=y.set({month:e.placeholder.value.month,day:e.placeholder.value.day});return}const v=m.add({years:1});r.value=$r({dateObj:v}),e.placeholder.value=v.set({month:e.placeholder.value.month,day:e.placeholder.value.day})},u=p=>{const m=r.value.value;if(p||e.prevPage.value){const y=(p||e.prevPage.value)(m);r.value=$r({dateObj:y}),e.placeholder.value=y.set({month:e.placeholder.value.month,day:e.placeholder.value.day});return}const v=m.subtract({years:1});r.value=$r({dateObj:v}),e.placeholder.value=v.set({month:e.placeholder.value.month,day:e.placeholder.value.day})};Se(e.placeholder,p=>{p.year!==r.value.value.year&&(r.value=$r({dateObj:p}))}),Se(e.locale,()=>{t.setLocale(e.locale.value),r.value=$r({dateObj:e.placeholder.value})});const d=S(()=>(e.locale.value!==t.getLocale()&&t.setLocale(e.locale.value),t.fullYear(Pt(r.value.value),a.value))),h=S(()=>`${e.calendarLabel.value??"Month Picker"}, ${d.value}`);return{isMonthDisabled:o,isMonthUnavailable:s,isNextButtonDisabled:i,isPrevButtonDisabled:l,grid:r,formatter:t,nextPage:c,prevPage:u,headingValue:d,fullCalendarLabel:h}}const kT={style:{border:"0px",clip:"rect(0px, 0px, 0px, 0px)","clip-path":"inset(50%)",height:"1px",margin:"-1px",overflow:"hidden",padding:"0px",position:"absolute","white-space":"nowrap",width:"1px"}},CT={role:"heading","aria-level":"2"},[hs,ST]=pt("MonthPickerRoot");var xT=Z({__name:"MonthPickerRoot",props:{defaultValue:{type:null,required:!1,default:void 0},defaultPlaceholder:{type:null,required:!1},placeholder:{type:null,required:!1,default:void 0},preventDeselect:{type:Boolean,required:!1,default:!1},calendarLabel:{type:String,required:!1},maxValue:{type:null,required:!1},minValue:{type:null,required:!1},locale:{type:String,required:!1},disabled:{type:Boolean,required:!1,default:!1},readonly:{type:Boolean,required:!1,default:!1},initialFocus:{type:Boolean,required:!1,default:!1},isMonthDisabled:{type:Function,required:!1,default:void 0},isMonthUnavailable:{type:Function,required:!1,default:void 0},dir:{type:String,required:!1},nextPage:{type:Function,required:!1},prevPage:{type:Function,required:!1},modelValue:{type:null,required:!1},multiple:{type:Boolean,required:!1,default:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"div"}},emits:["update:modelValue","update:placeholder"],setup(e,{emit:t}){const n=e,a=t,{disabled:r,readonly:o,initialFocus:s,multiple:i,minValue:l,maxValue:c,preventDeselect:u,isMonthDisabled:d,isMonthUnavailable:h,calendarLabel:p,defaultValue:m,nextPage:v,prevPage:y,dir:g,locale:b}=kt(n),{primitiveElement:w,currentElement:_}=bn(),A=ls(b),P=Ka(g),k=Mn(void 0,"reka-month-picker-heading"),T=gt(n,"modelValue",a,{defaultValue:m.value,passive:n.modelValue===void 0}),I=ss({defaultPlaceholder:n.placeholder,defaultValue:T.value,locale:n.locale}),Y=gt(n,"placeholder",a,{defaultValue:n.defaultPlaceholder??I.copy(),passive:n.placeholder===void 0});function Q(me){Y.value=me.copy()}const{fullCalendarLabel:z,headingValue:te,isMonthDisabled:O,isMonthUnavailable:D,isNextButtonDisabled:q,isPrevButtonDisabled:G,nextPage:L,prevPage:ee,formatter:K,grid:ce}=$b({locale:A,placeholder:Y,minValue:l,maxValue:c,disabled:r,isMonthDisabled:d,isMonthUnavailable:h,calendarLabel:p,nextPage:v,prevPage:y}),{isInvalid:ue,isMonthSelected:be}=_T({date:T,isMonthDisabled:O,isMonthUnavailable:D});Se(T,me=>{if(Array.isArray(me)&&me.length){const X=me.at(-1);X&&!dt(Y.value,X)&&Q(X)}else!Array.isArray(me)&&me&&!dt(Y.value,me)&&Q(me)});function ge(me,X){return X?me.copy().set({day:X.day}):me.copy()}function we(me){if(i.value)if(!T.value)T.value=[ge(me,Y.value)];else{const X=Array.isArray(T.value)?T.value:[T.value],le=X.findIndex(se=>dt(se,me));if(le===-1)T.value=[...X,ge(me,Y.value)];else if(!u.value){const se=X.filter(pe=>!dt(pe,me));if(!se.length){Y.value=ge(me,X[le]),T.value=void 0;return}T.value=se.map(pe=>pe.copy())}}else{if(!T.value){T.value=ge(me,Y.value);return}!u.value&&dt(T.value,me)?(Y.value=ge(me,T.value),T.value=void 0):T.value=ge(me,T.value)}}return Xe(()=>{s.value&&is(_.value)}),ST({isMonthUnavailable:D,dir:P,isMonthDisabled:O,locale:A,formatter:K,modelValue:T,placeholder:Y,disabled:r,initialFocus:s,grid:ce,multiple:i,readonly:o,preventDeselect:u,fullCalendarLabel:z,headingValue:te,headingId:k,isInvalid:ue,isMonthSelected:be,isNextButtonDisabled:q,isPrevButtonDisabled:G,nextPage:L,prevPage:ee,parentElement:_,onPlaceholderChange:Q,onMonthChange:we,minValue:l,maxValue:c}),(me,X)=>(C(),R(f(fe),{ref_key:"primitiveElement",ref:w,as:me.as,"as-child":me.asChild,"aria-label":f(z),"data-readonly":f(o)?"":void 0,"data-disabled":f(r)?"":void 0,"data-invalid":f(ue)?"":void 0,dir:f(P)},{default:E(()=>[j(me.$slots,"default",{date:f(Y),grid:f(ce),locale:f(A),modelValue:f(T)}),ke("div",kT,[ke("div",CT,Me(f(z)),1)])]),_:3},8,["as","as-child","aria-label","data-readonly","data-disabled","data-invalid","dir"]))}}),AT=xT,PT=Z({__name:"MonthPickerCell",props:{date:{type:null,required:!0},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"td"}},setup(e){const t=hs();return(n,a)=>(C(),R(f(fe),{as:n.as,"as-child":n.asChild,role:"gridcell","aria-selected":f(t).isMonthSelected(n.date)?!0:void 0,"aria-disabled":f(t).isMonthDisabled(n.date)||f(t).isMonthUnavailable?.(n.date),"data-disabled":f(t).isMonthDisabled(n.date)?"":void 0},{default:E(()=>[j(n.$slots,"default")]),_:3},8,["as","as-child","aria-selected","aria-disabled","data-disabled"]))}}),MT=PT,TT=Z({__name:"MonthPickerCellTrigger",props:{month:{type:null,required:!0},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"div"}},setup(e){const t=e,n=Qa(),a=hs(),{primitiveElement:r}=bn(),o=S(()=>(a.locale.value,a.formatter.custom(Pt(t.month),{month:"short"}))),s=S(()=>(a.locale.value,a.formatter.custom(Pt(t.month),{month:"long",year:"numeric"}))),i=S(()=>a.isMonthUnavailable?.(t.month)??!1),l=S(()=>{const v=Ht(os(pa()),t.month.calendar);return dt(t.month,v)}),c=S(()=>a.isMonthDisabled(t.month)),u=S(()=>!a.disabled.value&&dt(t.month,a.placeholder.value)),d=S(()=>a.isMonthSelected(t.month));function h(v){a.readonly.value||a.isMonthDisabled(v)||a.isMonthUnavailable?.(v)||a.onMonthChange(v)}function p(){c.value||h(t.month)}function m(v){if(c.value)return;v.preventDefault(),v.stopPropagation();const y=a.parentElement.value,g=a.dir.value==="rtl"?-1:1;switch(v.code){case n.ARROW_RIGHT:b(t.month,g);break;case n.ARROW_LEFT:b(t.month,-g);break;case n.ARROW_UP:b(t.month,-4);break;case n.ARROW_DOWN:b(t.month,4);break;case n.PAGE_UP:w(-1);break;case n.PAGE_DOWN:w(1);break;case n.ENTER:case n.SPACE_CODE:h(t.month)}function b(_,A,P=0){if(P>48)return;const k=_.add({months:A});if(a.minValue.value&&za(k).compare(a.minValue.value)<0||a.maxValue.value&&k.set({day:1}).compare(a.maxValue.value)>0)return;const T=y.querySelector(`[data-value='${k.toString()}']`);if(!T){if(A>0){if(a.isNextButtonDisabled())return;a.nextPage()}else{if(a.isPrevButtonDisabled())return;a.prevPage()}Ve(()=>{b(_,A,P+1)});return}if(T&&T.hasAttribute("data-disabled"))return b(k,A,P+1);a.onPlaceholderChange(k),T?.focus()}function w(_){const A=t.month.add({years:_});if(!(a.minValue.value&&za(A).compare(a.minValue.value)<0||a.maxValue.value&&A.set({day:1}).compare(a.maxValue.value)>0)){if(_>0){if(a.isNextButtonDisabled())return;a.nextPage()}else{if(a.isPrevButtonDisabled())return;a.prevPage()}Ve(()=>{const P=y.querySelector(`[data-value='${A.toString()}']`);P&&!P.hasAttribute("data-disabled")&&(a.onPlaceholderChange(A),P?.focus())})}}}return(v,y)=>(C(),R(f(fe),{ref_key:"primitiveElement",ref:r,as:t.as,"as-child":t.asChild,role:"button","aria-label":s.value,"data-reka-month-picker-cell-trigger":"","aria-disabled":c.value||i.value?!0:void 0,"data-selected":d.value?!0:void 0,"data-value":v.month.toString(),"data-disabled":c.value?"":void 0,"data-unavailable":i.value?"":void 0,"data-today":l.value?"":void 0,"data-focused":u.value?"":void 0,tabindex:u.value?0:c.value?void 0:-1,onClick:p,onKeydown:[Ln(m,["up","down","left","right","space","enter","page-up","page-down"]),y[0]||(y[0]=Ln(Vt(()=>{},["prevent"]),["enter"]))]},{default:E(()=>[j(v.$slots,"default",{monthValue:o.value,disabled:c.value,today:l.value,selected:d.value,unavailable:i.value},()=>[qe(Me(o.value),1)])]),_:3},8,["as","as-child","aria-label","aria-disabled","data-selected","data-value","data-disabled","data-unavailable","data-today","data-focused","tabindex"]))}}),IT=TT,DT=Z({__name:"MonthPickerGrid",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"table"}},setup(e){const t=e,n=hs(),a=S(()=>n.disabled.value?!0:void 0),r=S(()=>n.readonly.value?!0:void 0);return(o,s)=>(C(),R(f(fe),de(t,{tabindex:"-1",role:"application","aria-labelledby":f(n).headingId,"aria-readonly":r.value,"aria-disabled":a.value,"data-readonly":r.value&&"","data-disabled":a.value&&""}),{default:E(()=>[j(o.$slots,"default")]),_:3},16,["aria-labelledby","aria-readonly","aria-disabled","data-readonly","data-disabled"]))}}),ET=DT,$T=Z({__name:"MonthPickerGridBody",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"tbody"}},setup(e){const t=e;return(n,a)=>(C(),R(f(fe),$e(Oe(t)),{default:E(()=>[j(n.$slots,"default")]),_:3},16))}}),RT=$T,LT=Z({__name:"MonthPickerGridRow",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"tr"}},setup(e){const t=e;return(n,a)=>(C(),R(f(fe),de(t,{role:"row"}),{default:E(()=>[j(n.$slots,"default")]),_:3},16))}}),OT=LT,NT=Z({__name:"MonthPickerHeader",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"div"}},setup(e){const t=e;return(n,a)=>(C(),R(f(fe),$e(Oe(t)),{default:E(()=>[j(n.$slots,"default")]),_:3},16))}}),FT=NT,qT=Z({__name:"MonthPickerHeading",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"div"}},setup(e){const t=e,n=hs();return(a,r)=>(C(),R(f(fe),de(t,{id:f(n).headingId,role:"heading","aria-level":"2","data-disabled":f(n).disabled.value?"":void 0}),{default:E(()=>[j(a.$slots,"default",{headingValue:f(n).headingValue.value},()=>[qe(Me(f(n).headingValue.value),1)])]),_:3},16,["id","data-disabled"]))}}),BT=qT,HT=Z({__name:"MonthPickerNext",props:{nextPage:{type:Function,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"button"}},setup(e){const t=e,n=hs(),a=S(()=>n.disabled.value||n.isNextButtonDisabled(t.nextPage));function r(){a.value||n.nextPage(t.nextPage)}return(o,s)=>(C(),R(f(fe),{as:t.as,"as-child":t.asChild,"aria-label":"Next year",type:t.as==="button"?"button":void 0,"aria-disabled":a.value||void 0,"data-disabled":a.value||void 0,disabled:a.value,onClick:r},{default:E(()=>[j(o.$slots,"default",{disabled:a.value},()=>[s[0]||(s[0]=qe(" Next year "))])]),_:3},8,["as","as-child","type","aria-disabled","data-disabled","disabled"]))}}),VT=HT,zT=Z({__name:"MonthPickerPrev",props:{prevPage:{type:Function,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"button"}},setup(e){const t=e,n=hs(),a=S(()=>n.disabled.value||n.isPrevButtonDisabled(t.prevPage));function r(){a.value||n.prevPage(t.prevPage)}return(o,s)=>(C(),R(f(fe),{"aria-label":"Previous year",as:t.as,"as-child":t.asChild,type:t.as==="button"?"button":void 0,"aria-disabled":a.value||void 0,"data-disabled":a.value||void 0,disabled:a.value,onClick:r},{default:E(()=>[j(o.$slots,"default",{disabled:a.value},()=>[s[0]||(s[0]=qe(" Prev year "))])]),_:3},8,["as","as-child","type","aria-disabled","data-disabled","disabled"]))}}),jT=zT;function WT(e){const t=S(()=>e.start.value?!!e.isMonthDisabled(e.start.value):!1),n=S(()=>e.end.value?!!e.isMonthDisabled(e.end.value):!1),a=S(()=>!!(t.value||n.value||e.start.value&&e.end.value&&Wt(e.end.value,e.start.value)<0)),r=d=>e.start.value?dt(e.start.value,d):!1,o=d=>e.end.value?dt(e.end.value,d):!1,s=d=>e.start.value&&dt(e.start.value,d)||e.end.value&&dt(e.end.value,d)?!0:e.end.value&&e.start.value?Wt(d,e.start.value)>0&&Wt(d,e.end.value)<0:!1,i=d=>{if(e.isMonthDisabled(d))return!0;if(e.maximumMonths?.value){const h=e.maximumMonths.value;if(e.start.value&&e.end.value){if(e.fixedDate.value){const p=E4(e.start.value,e.end.value);if(p<=h){const g=h-p,b=e.start.value.subtract({months:g}),w=e.end.value.add({months:g});return Wt(d,b)<0||Wt(d,w)>0}const m=e.fixedDate.value==="start"?e.start.value:e.end.value,v=m.add({months:h-1}),y=m.subtract({months:h-1});return Wt(d,y)<0||Wt(d,v)>0}return!1}if(e.start.value){const p=e.start.value.add({months:h-1}),m=e.start.value.subtract({months:h-1});return Wt(d,m)<0||Wt(d,p)>0}}return!1},l=S(()=>{if(e.start.value&&e.end.value&&!e.fixedDate.value||!e.start.value||!e.focusedValue.value)return null;const d=Wt(e.start.value,e.focusedValue.value)<0,h=d?e.start.value:e.focusedValue.value,p=d?e.focusedValue.value:e.start.value;if(dt(h,p))return{start:h,end:p};if(e.maximumMonths?.value&&!e.end.value){const v=e.maximumMonths.value,y=e.start.value,g=e.focusedValue.value;if(Wt(g,y)>=0){const b=y.add({months:v-1}),w=Wt(g,b)>0?b:g;return{start:y,end:w}}else{const b=y.subtract({months:v-1});return{start:Wt(g,b)<0?b:g,end:y}}}return R4(h,p,e.allowNonContiguousRanges.value?()=>!1:e.isMonthUnavailable,i)?{start:h,end:p}:null});return{isInvalid:a,isSelected:s,highlightedRange:l,isSelectionStart:r,isSelectionEnd:o,isHighlightedStart:d=>l.value?.start?dt(l.value.start,d):!1,isHighlightedEnd:d=>l.value?.end?dt(l.value.end,d):!1,isMonthDisabled:i}}const UT={style:{border:"0px",clip:"rect(0px, 0px, 0px, 0px)","clip-path":"inset(50%)",height:"1px",margin:"-1px",overflow:"hidden",padding:"0px",position:"absolute","white-space":"nowrap",width:"1px"}},GT={role:"heading","aria-level":"2"},[ms,YT]=pt("MonthRangePickerRoot");var KT=Z({__name:"MonthRangePickerRoot",props:{defaultPlaceholder:{type:null,required:!1},defaultValue:{type:Object,required:!1,default:()=>({start:void 0,end:void 0})},modelValue:{type:[Object,null],required:!1},placeholder:{type:null,required:!1,default:void 0},allowNonContiguousRanges:{type:Boolean,required:!1,default:!1},preventDeselect:{type:Boolean,required:!1,default:!1},maximumMonths:{type:Number,required:!1,default:void 0},calendarLabel:{type:String,required:!1},maxValue:{type:null,required:!1},minValue:{type:null,required:!1},locale:{type:String,required:!1},disabled:{type:Boolean,required:!1,default:!1},readonly:{type:Boolean,required:!1,default:!1},initialFocus:{type:Boolean,required:!1,default:!1},isMonthDisabled:{type:Function,required:!1,default:void 0},isMonthUnavailable:{type:Function,required:!1,default:void 0},dir:{type:String,required:!1},nextPage:{type:Function,required:!1},prevPage:{type:Function,required:!1},fixedDate:{type:String,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"div"}},emits:["update:modelValue","update:placeholder","update:startValue"],setup(e,{emit:t}){const n=e,a=t,{disabled:r,readonly:o,initialFocus:s,preventDeselect:i,isMonthUnavailable:l,isMonthDisabled:c,calendarLabel:u,maxValue:d,minValue:h,dir:p,locale:m,nextPage:v,prevPage:y,allowNonContiguousRanges:g,fixedDate:b,maximumMonths:w}=kt(n),{primitiveElement:_,currentElement:A}=bn(),P=Ka(p),k=ls(m),T=Mn(void 0,"reka-month-range-picker-heading"),I=V(),Y=V(),Q=V(!1),z=gt(n,"modelValue",a,{defaultValue:n.defaultValue??{start:void 0,end:void 0},passive:n.modelValue===void 0}),te=N=>N??{start:void 0,end:void 0},O=S(()=>te(z.value)),D=V(te(z.value)),q=ss({defaultPlaceholder:n.placeholder,defaultValue:te(z.value).start,locale:n.locale}),G=V(te(z.value).start),L=V(te(z.value).end),ee=gt(n,"placeholder",a,{defaultValue:n.defaultPlaceholder??q.copy(),passive:n.placeholder===void 0});function K(N){ee.value=N.copy()}const{fullCalendarLabel:ce,headingValue:ue,isMonthDisabled:be,isMonthUnavailable:ge,isNextButtonDisabled:we,isPrevButtonDisabled:me,grid:X,nextPage:le,prevPage:se,formatter:pe}=$b({locale:k,placeholder:ee,minValue:h,maxValue:d,disabled:r,isMonthDisabled:c,isMonthUnavailable:l,calendarLabel:u,nextPage:v,prevPage:y}),{isInvalid:Pe,isSelected:$,highlightedRange:B,isSelectionStart:J,isSelectionEnd:W,isHighlightedStart:U,isHighlightedEnd:ne,isMonthDisabled:x}=WT({start:G,end:L,isMonthDisabled:be,isMonthUnavailable:ge,focusedValue:Y,allowNonContiguousRanges:g,fixedDate:b,maximumMonths:w});Se(z,N=>{const H=te(N);!H.start&&!G.value||H.start&&G.value&&dt(H.start,G.value)||(G.value=H.start?.copy?.()),!H.end&&!L.value||H.end&&L.value&&dt(H.end,L.value)||(L.value=H.end?.copy?.()),H.start&&H.end&&(D.value={start:H.start.copy(),end:H.end.copy()})}),Se(G,N=>{N&&!dt(N,ee.value)&&K(N),a("update:startValue",N)}),Se([G,L],([N,H])=>{const oe=z.value;if(!(oe&&oe.start&&oe.end&&N&&H&&dt(oe.start,N)&&dt(oe.end,H)))if(Q.value=!0,H&&N){const ae=Wt(H,N)<0?{start:H.copy(),end:N.copy()}:{start:N.copy(),end:H.copy()};z.value={start:ae.start,end:ae.end},Q.value=!1,D.value={start:ae.start.copy(),end:ae.end.copy()}}else z.value=N?{start:N.copy(),end:void 0}:{start:H?.copy(),end:void 0}});const M=Qa();return Kt(A,"keydown",N=>{N.key===M.ESCAPE&&Q.value&&(G.value=D.value.start?.copy(),L.value=D.value.end?.copy())}),YT({isMonthUnavailable:ge,startValue:G,endValue:L,formatter:pe,modelValue:O,placeholder:ee,disabled:r,initialFocus:s,grid:X,readonly:o,preventDeselect:i,fullCalendarLabel:ce,headingValue:ue,headingId:T,isInvalid:Pe,isMonthDisabled:x,allowNonContiguousRanges:g,highlightedRange:B,focusedValue:Y,lastPressedDateValue:I,isSelected:$,isSelectionEnd:W,isSelectionStart:J,isNextButtonDisabled:we,isPrevButtonDisabled:me,nextPage:le,prevPage:se,parentElement:A,onPlaceholderChange:K,locale:k,dir:P,isHighlightedStart:U,isHighlightedEnd:ne,fixedDate:b,maximumMonths:w,minValue:h,maxValue:d}),Xe(()=>{s.value&&is(A.value)}),(N,H)=>(C(),R(f(fe),{ref_key:"primitiveElement",ref:_,as:N.as,"as-child":N.asChild,"aria-label":f(ce),"data-readonly":f(o)?"":void 0,"data-disabled":f(r)?"":void 0,"data-invalid":f(Pe)?"":void 0,dir:f(P)},{default:E(()=>[ke("div",UT,[ke("div",GT,Me(f(ce)),1)]),j(N.$slots,"default",{date:f(ee),grid:f(X),locale:f(k),modelValue:O.value})]),_:3},8,["as","as-child","aria-label","data-readonly","data-disabled","data-invalid","dir"]))}}),XT=KT,JT=Z({__name:"MonthRangePickerCell",props:{date:{type:null,required:!0},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"td"}},setup(e){const t=ms();return(n,a)=>(C(),R(f(fe),{as:n.as,"as-child":n.asChild,role:"gridcell","aria-selected":f(t).isSelected(n.date)?!0:void 0,"aria-disabled":f(t).isMonthDisabled(n.date)||f(t).isMonthUnavailable?.(n.date),"data-disabled":f(t).isMonthDisabled(n.date)?"":void 0},{default:E(()=>[j(n.$slots,"default")]),_:3},8,["as","as-child","aria-selected","aria-disabled","data-disabled"]))}}),QT=JT,ZT=Z({__name:"MonthRangePickerCellTrigger",props:{month:{type:null,required:!0},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"div"}},setup(e){const t=e,n=Qa(),a=ms(),{primitiveElement:r}=bn(),o=S(()=>(a.locale.value,a.formatter.custom(Pt(t.month),{month:"short"}))),s=S(()=>(a.locale.value,a.formatter.custom(Pt(t.month),{month:"long",year:"numeric"}))),i=S(()=>a.isMonthUnavailable?.(t.month)??!1),l=S(()=>{const P=Ht(os(pa()),t.month.calendar);return dt(t.month,P)}),c=S(()=>a.isMonthDisabled(t.month)),u=S(()=>!a.disabled.value&&dt(t.month,a.placeholder.value)),d=S(()=>a.isSelected(t.month)),h=S(()=>a.isSelectionStart(t.month)),p=S(()=>a.isSelectionEnd(t.month)),m=S(()=>a.isHighlightedStart(t.month)),v=S(()=>a.isHighlightedEnd(t.month)),y=S(()=>a.highlightedRange.value?I4(t.month,a.highlightedRange.value.start,a.highlightedRange.value.end):!1),g=S(()=>a.allowNonContiguousRanges.value);function b(P,k){if(!a.readonly.value&&!(a.isMonthDisabled(k)||a.isMonthUnavailable?.(k))){if(a.startValue.value&&a.highlightedRange.value===null){if(dt(k,a.startValue.value)&&!a.preventDeselect.value&&!a.endValue.value){a.startValue.value=void 0,a.onPlaceholderChange(k),a.lastPressedDateValue.value=k.copy();return}else if(!a.endValue.value){P.preventDefault(),a.lastPressedDateValue.value&&dt(a.lastPressedDateValue.value,k)&&(a.startValue.value=k.copy()),a.lastPressedDateValue.value=k.copy();return}}if(a.lastPressedDateValue.value=k.copy(),a.startValue.value&&a.endValue.value&&dt(a.startValue.value,a.endValue.value)&&dt(a.startValue.value,k)&&!a.preventDeselect.value){a.startValue.value=void 0,a.endValue.value=void 0,a.onPlaceholderChange(k);return}a.startValue.value?a.endValue.value?a.endValue.value&&a.startValue.value&&(a.fixedDate.value?a.fixedDate.value==="start"?k.compare(a.startValue.value)<0?a.startValue.value=k.copy():a.endValue.value=k.copy():a.fixedDate.value==="end"&&(k.compare(a.endValue.value)>0?a.endValue.value=k.copy():a.startValue.value=k.copy()):(a.endValue.value=void 0,a.startValue.value=k.copy())):a.endValue.value=k.copy():a.startValue.value=k.copy()}}function w(P){c.value||b(P,t.month)}function _(){c.value||a.isMonthUnavailable?.(t.month)||(a.focusedValue.value=t.month.copy())}function A(P){if(c.value)return;P.preventDefault(),P.stopPropagation();const k=a.parentElement.value,T=a.dir.value==="rtl"?-1:1;switch(P.code){case n.ARROW_RIGHT:I(t.month,T);break;case n.ARROW_LEFT:I(t.month,-T);break;case n.ARROW_UP:I(t.month,-4);break;case n.ARROW_DOWN:I(t.month,4);break;case n.PAGE_UP:Y(-1);break;case n.PAGE_DOWN:Y(1);break;case n.ENTER:case n.SPACE_CODE:b(P,t.month)}function I(Q,z,te=0){if(te>48)return;const O=Q.add({months:z});if(a.minValue.value&&za(O).compare(a.minValue.value)<0||a.maxValue.value&&O.set({day:1}).compare(a.maxValue.value)>0)return;const D=k.querySelector(`[data-value='${O.toString()}']`);if(!D){if(z>0){if(a.isNextButtonDisabled())return;a.nextPage()}else{if(a.isPrevButtonDisabled())return;a.prevPage()}Ve(()=>{I(Q,z,te+1)});return}if(D&&D.hasAttribute("data-disabled"))return I(O,z,te+1);a.onPlaceholderChange(O),D?.focus()}function Y(Q){const z=t.month.add({years:Q});if(!(a.minValue.value&&za(z).compare(a.minValue.value)<0||a.maxValue.value&&z.set({day:1}).compare(a.maxValue.value)>0)){if(Q>0){if(a.isNextButtonDisabled())return;a.nextPage()}else{if(a.isPrevButtonDisabled())return;a.prevPage()}Ve(()=>{const te=k.querySelector(`[data-value='${z.toString()}']`);if(te&&!te.hasAttribute("data-disabled")){a.onPlaceholderChange(z),te?.focus();return}I(z,Q>0?1:-1,1)})}}}return(P,k)=>(C(),R(f(fe),{ref_key:"primitiveElement",ref:r,as:t.as,"as-child":t.asChild,role:"button","aria-label":s.value,"data-reka-month-range-picker-cell-trigger":"","aria-pressed":d.value&&(g.value||!i.value)?!0:void 0,"aria-disabled":c.value||i.value?!0:void 0,"data-highlighted":y.value&&(g.value||!i.value)?"":void 0,"data-selection-start":h.value?!0:void 0,"data-selection-end":p.value?!0:void 0,"data-highlighted-start":m.value?!0:void 0,"data-highlighted-end":v.value?!0:void 0,"data-selected":d.value&&(g.value||!i.value)?!0:void 0,"data-value":P.month.toString(),"data-disabled":c.value?"":void 0,"data-unavailable":i.value?"":void 0,"data-today":l.value?"":void 0,"data-focused":u.value?"":void 0,tabindex:u.value?0:c.value?void 0:-1,onClick:w,onFocusin:_,onMouseenter:_,onKeydown:[Ln(A,["up","down","left","right","space","enter","page-up","page-down"]),k[0]||(k[0]=Ln(Vt(()=>{},["prevent"]),["enter"]))]},{default:E(()=>[j(P.$slots,"default",{monthValue:o.value,disabled:c.value,today:l.value,selected:d.value,unavailable:i.value,highlighted:y.value&&(g.value||!i.value),highlightedStart:m.value,highlightedEnd:v.value,selectionStart:h.value,selectionEnd:p.value},()=>[qe(Me(o.value),1)])]),_:3},8,["as","as-child","aria-label","aria-pressed","aria-disabled","data-highlighted","data-selection-start","data-selection-end","data-highlighted-start","data-highlighted-end","data-selected","data-value","data-disabled","data-unavailable","data-today","data-focused","tabindex"]))}}),eI=ZT,tI=Z({__name:"MonthRangePickerGrid",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"table"}},setup(e){const t=e,n=ms(),a=S(()=>n.disabled.value?!0:void 0),r=S(()=>n.readonly.value?!0:void 0);return(o,s)=>(C(),R(f(fe),de(t,{tabindex:"-1",role:"application","aria-labelledby":f(n).headingId,"aria-readonly":r.value,"aria-disabled":a.value,"data-readonly":r.value&&"","data-disabled":a.value&&""}),{default:E(()=>[j(o.$slots,"default")]),_:3},16,["aria-labelledby","aria-readonly","aria-disabled","data-readonly","data-disabled"]))}}),nI=tI,aI=Z({__name:"MonthRangePickerGridBody",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"tbody"}},setup(e){const t=e;return(n,a)=>(C(),R(f(fe),$e(Oe(t)),{default:E(()=>[j(n.$slots,"default")]),_:3},16))}}),rI=aI,oI=Z({__name:"MonthRangePickerGridRow",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"tr"}},setup(e){const t=e;return(n,a)=>(C(),R(f(fe),de(t,{role:"row"}),{default:E(()=>[j(n.$slots,"default")]),_:3},16))}}),sI=oI,iI=Z({__name:"MonthRangePickerHeader",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"div"}},setup(e){const t=e;return(n,a)=>(C(),R(f(fe),$e(Oe(t)),{default:E(()=>[j(n.$slots,"default")]),_:3},16))}}),lI=iI,cI=Z({__name:"MonthRangePickerHeading",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"div"}},setup(e){const t=e,n=ms();return(a,r)=>(C(),R(f(fe),de(t,{id:f(n).headingId,role:"heading","aria-level":"2","data-disabled":f(n).disabled.value?"":void 0}),{default:E(()=>[j(a.$slots,"default",{headingValue:f(n).headingValue.value},()=>[qe(Me(f(n).headingValue.value),1)])]),_:3},16,["id","data-disabled"]))}}),uI=cI,dI=Z({__name:"MonthRangePickerNext",props:{nextPage:{type:Function,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"button"}},setup(e){const t=e,n=ms(),a=S(()=>n.disabled.value||n.isNextButtonDisabled(t.nextPage));function r(){a.value||n.nextPage(t.nextPage)}return(o,s)=>(C(),R(f(fe),{as:t.as,"as-child":t.asChild,"aria-label":"Next year",type:t.as==="button"?"button":void 0,"aria-disabled":a.value||void 0,"data-disabled":a.value||void 0,disabled:a.value,onClick:r},{default:E(()=>[j(o.$slots,"default",{disabled:a.value},()=>[s[0]||(s[0]=qe(" Next year "))])]),_:3},8,["as","as-child","type","aria-disabled","data-disabled","disabled"]))}}),fI=dI,pI=Z({__name:"MonthRangePickerPrev",props:{prevPage:{type:Function,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"button"}},setup(e){const t=e,n=ms(),a=S(()=>n.disabled.value||n.isPrevButtonDisabled(t.prevPage));function r(){a.value||n.prevPage(t.prevPage)}return(o,s)=>(C(),R(f(fe),{"aria-label":"Previous year",as:t.as,"as-child":t.asChild,type:t.as==="button"?"button":void 0,"aria-disabled":a.value||void 0,"data-disabled":a.value||void 0,disabled:a.value,onClick:r},{default:E(()=>[j(o.$slots,"default",{disabled:a.value},()=>[s[0]||(s[0]=qe(" Prev year "))])]),_:3},8,["as","as-child","type","aria-disabled","data-disabled","disabled"]))}}),hI=pI;const li=100,[mI,gI]=pt("ProgressRoot"),uc=e=>typeof e=="number";function vI(e,t){return ip(e)||uc(e)&&!Number.isNaN(e)&&e<=t&&e>=0?e:(console.error(`Invalid prop \`value\` of value \`${e}\` supplied to \`ProgressRoot\`. The \`value\` prop must be:
19
- - a positive number
20
- - less than the value passed to \`max\` (or ${li} if no \`max\` prop is set)
21
- - \`null\` or \`undefined\` if the progress is indeterminate.
22
-
23
- Defaulting to \`null\`.`),null)}function yI(e){return uc(e)&&!Number.isNaN(e)&&e>0?e:(console.error(`Invalid prop \`max\` of value \`${e}\` supplied to \`ProgressRoot\`. Only numbers greater than 0 are valid max values. Defaulting to \`${li}\`.`),li)}var bI=Z({__name:"ProgressRoot",props:{modelValue:{type:[Number,null],required:!1},max:{type:Number,required:!1,default:li},getValueLabel:{type:Function,required:!1,default:(e,t)=>uc(e)?`${Math.round(e/t*li)}%`:void 0},getValueText:{type:Function,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},emits:["update:modelValue","update:max"],setup(e,{emit:t}){const n=e,a=t;Ee();const r=gt(n,"modelValue",a,{passive:n.modelValue===void 0}),o=gt(n,"max",a,{passive:n.max===void 0});Se(()=>r.value,async i=>{const l=vI(i,n.max);l!==i&&(await Ve(),r.value=l)},{immediate:!0}),Se(()=>n.max,i=>{const l=yI(n.max);l!==i&&(o.value=l)},{immediate:!0});const s=S(()=>ip(r.value)?"indeterminate":r.value===o.value?"complete":"loading");return gI({modelValue:r,max:o,progressState:s}),(i,l)=>(C(),R(f(fe),{"as-child":i.asChild,as:i.as,"aria-valuemax":f(o),"aria-valuemin":0,"aria-valuenow":uc(f(r))?f(r):void 0,"aria-valuetext":i.getValueText?.(f(r),f(o)),"aria-label":i.getValueLabel(f(r),f(o)),role:"progressbar","data-state":s.value,"data-value":f(r)??void 0,"data-max":f(o)},{default:E(()=>[j(i.$slots,"default",{modelValue:f(r)})]),_:3},8,["as-child","as","aria-valuemax","aria-valuenow","aria-valuetext","aria-label","data-state","data-value","data-max"]))}}),wI=bI,_I=Z({__name:"ProgressIndicator",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(e){const t=e,n=mI();return Ee(),(a,r)=>(C(),R(f(fe),de(t,{"data-state":f(n).progressState.value,"data-value":f(n).modelValue?.value??void 0,"data-max":f(n).max.value}),{default:E(()=>[j(a.$slots,"default")]),_:3},16,["data-state","data-value","data-max"]))}}),kI=_I,CI=Z({__name:"ToastAnnounceExclude",props:{altText:{type:String,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(e){return(t,n)=>(C(),R(f(fe),{as:t.as,"as-child":t.asChild,"data-reka-toast-announce-exclude":"","data-reka-toast-announce-alt":t.altText||void 0},{default:E(()=>[j(t.$slots,"default")]),_:3},8,["as","as-child","data-reka-toast-announce-alt"]))}}),Rb=CI;const[ru,SI]=pt("ToastProvider");var xI=Z({inheritAttrs:!1,__name:"ToastProvider",props:{label:{type:String,required:!1,default:"Notification"},duration:{type:Number,required:!1,default:5e3},disableSwipe:{type:Boolean,required:!1},swipeDirection:{type:String,required:!1,default:"right"},swipeThreshold:{type:Number,required:!1,default:50}},setup(e){const t=e,{label:n,duration:a,disableSwipe:r,swipeDirection:o,swipeThreshold:s}=kt(t);$i({isProvider:!0});const i=V(),l=V(0),c=V(!1),u=V(!1);if(t.label&&typeof t.label=="string"&&!t.label.trim()){const d="Invalid prop `label` supplied to `ToastProvider`. Expected non-empty `string`.";throw new Error(d)}return SI({label:n,duration:a,disableSwipe:r,swipeDirection:o,swipeThreshold:s,toastCount:l,viewport:i,onViewportChange(d){i.value=d},onToastAdd(){l.value++},onToastRemove(){l.value--},isFocusedToastEscapeKeyDownRef:c,isClosePausedRef:u}),(d,h)=>j(d.$slots,"default")}}),AI=xI,PI=Z({__name:"ToastAnnounce",setup(e){const t=ru(),n=pC(1e3),a=V(!1);let r=0,o=0;return On&&(r=requestAnimationFrame(()=>{o=requestAnimationFrame(()=>{a.value=!0})}),ts(()=>{cancelAnimationFrame(r),cancelAnimationFrame(o)})),(s,i)=>f(n)||a.value?(C(),R(f(Kc),{key:0,feature:"fully-hidden"},{default:E(()=>[qe(Me(f(t).label.value)+" ",1),j(s.$slots,"default")]),_:3})):ve("v-if",!0)}}),MI=PI;const TI="toast.swipeStart",II="toast.swipeMove",DI="toast.swipeCancel",EI="toast.swipeEnd",of="toast.viewportPause",sf="toast.viewportResume";function rl(e,t,n){const a=n.originalEvent.currentTarget,r=new CustomEvent(e,{bubbles:!1,cancelable:!0,detail:n});t&&a.addEventListener(e,t,{once:!0}),a.dispatchEvent(r)}function kg(e,t,n=0){const a=Math.abs(e.x),r=Math.abs(e.y),o=a>r;return t==="left"||t==="right"?o&&a>n:!o&&r>n}function $I(e){return e.nodeType===e.ELEMENT_NODE}function Lb(e){const t=[];return Array.from(e.childNodes).forEach(a=>{if(a.nodeType===a.TEXT_NODE&&a.textContent&&t.push(a.textContent),$I(a)){const r=a.ariaHidden||a.hidden||a.style.display==="none",o=a.dataset.rekaToastAnnounceExclude==="";if(!r)if(o){const s=a.dataset.rekaToastAnnounceAlt;s&&t.push(s)}else t.push(...Lb(a))}}),t}const[RI,LI]=pt("ToastRoot");var OI=Z({inheritAttrs:!1,__name:"ToastRootImpl",props:{type:{type:String,required:!1},open:{type:Boolean,required:!1,default:!1},duration:{type:Number,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"li"}},emits:["close","escapeKeyDown","pause","resume","swipeStart","swipeMove","swipeCancel","swipeEnd"],setup(e,{emit:t}){const n=e,a=t,{forwardRef:r,currentElement:o}=Ee(),{CollectionItem:s}=$i(),i=ru(),l=V(null),c=V(null),u=S(()=>typeof n.duration=="number"?n.duration:i.duration.value),d=V(0),h=V(u.value),p=V(0),m=V(u.value),v=wC(()=>{const w=Date.now()-d.value;m.value=Math.max(h.value-w,0)},{fpsLimit:60});function y(w){w<=0||w===Number.POSITIVE_INFINITY||On&&(window.clearTimeout(p.value),d.value=Date.now(),p.value=window.setTimeout(g,w))}function g(w){const _=w?.pointerType==="";o.value?.contains($t())&&_&&i.viewport.value?.focus(),_&&(i.isClosePausedRef.value=!1),a("close")}const b=S(()=>o.value?Lb(o.value):null);if(n.type&&!["foreground","background"].includes(n.type)){const w="Invalid prop `type` supplied to `Toast`. Expected `foreground | background`.";throw new Error(w)}return qt(w=>{const _=i.viewport.value;if(_){const A=()=>{y(h.value),v.resume(),a("resume")},P=()=>{const k=Date.now()-d.value;h.value=h.value-k,window.clearTimeout(p.value),v.pause(),a("pause")};return _.addEventListener(of,P),_.addEventListener(sf,A),()=>{_.removeEventListener(of,P),_.removeEventListener(sf,A)}}}),Se(()=>[n.open,u.value],()=>{h.value=u.value,n.open&&!i.isClosePausedRef.value&&y(u.value)},{immediate:!0}),np("Escape",w=>{a("escapeKeyDown",w),w.defaultPrevented||(i.isFocusedToastEscapeKeyDownRef.value=!0,g())}),Xe(()=>{i.onToastAdd()}),_n(()=>{i.onToastRemove()}),LI({onClose:g}),(w,_)=>(C(),ye(ze,null,[b.value?(C(),R(MI,{key:0,role:"alert","aria-live":w.type==="foreground"?"assertive":"polite"},{default:E(()=>[ve(`
24
- Render each chunk as its own text node so screen readers get the
25
- natural pause break between nodes (see comment in utils.ts).
26
- Interpolating the array directly with \`{{ announceTextContent }}\`
27
- would route through Vue's \`toDisplayString\`, which JSON-stringifies
28
- arrays — the live region would then announce literal \`[\`, quotes
29
- and commas instead of the toast title and description.
30
- `),(C(!0),ye(ze,null,en(b.value,(A,P)=>(C(),ye(ze,{key:P},[qe(Me(A),1)],64))),128))]),_:1},8,["aria-live"])):ve("v-if",!0),f(i).viewport.value?(C(),R(Vf,{key:1,to:f(i).viewport.value},[ie(f(s),null,{default:E(()=>[ie(f(fe),de({ref:f(r),tabindex:"0"},w.$attrs,{as:w.as,"as-child":w.asChild,"data-state":w.open?"open":"closed","data-swipe-direction":f(i).swipeDirection.value,style:f(i).disableSwipe.value?void 0:{userSelect:"none",touchAction:"none"},onPointerdown:_[0]||(_[0]=Vt(A=>{f(i).disableSwipe.value||(l.value={x:A.clientX,y:A.clientY})},["left"])),onPointermove:_[1]||(_[1]=A=>{if(f(i).disableSwipe.value||!l.value)return;const P=A.clientX-l.value.x,k=A.clientY-l.value.y,T=!!c.value,I=["left","right"].includes(f(i).swipeDirection.value),Y=["left","up"].includes(f(i).swipeDirection.value)?Math.min:Math.max,Q=I?Y(0,P):0,z=I?0:Y(0,k),te=A.pointerType==="touch"?10:2,O={x:Q,y:z},D={originalEvent:A,delta:O};T?(c.value=O,f(rl)(f(II),q=>a("swipeMove",q),D)):f(kg)(O,f(i).swipeDirection.value,te)?(c.value=O,f(rl)(f(TI),q=>a("swipeStart",q),D),A.target.setPointerCapture(A.pointerId)):(Math.abs(P)>te||Math.abs(k)>te)&&(l.value=null)}),onPointerup:_[2]||(_[2]=A=>{if(f(i).disableSwipe.value)return;const P=c.value,k=A.target;if(k.hasPointerCapture(A.pointerId)&&k.releasePointerCapture(A.pointerId),c.value=null,l.value=null,P){const T=A.currentTarget,I={originalEvent:A,delta:P};f(kg)(P,f(i).swipeDirection.value,f(i).swipeThreshold.value)?f(rl)(f(EI),Y=>a("swipeEnd",Y),I):f(rl)(f(DI),Y=>a("swipeCancel",Y),I),T?.addEventListener("click",Y=>Y.preventDefault(),{once:!0})}})}),{default:E(()=>[j(w.$slots,"default",{remaining:m.value,duration:u.value})]),_:3},16,["as","as-child","data-state","data-swipe-direction","style"])]),_:3})],8,["to"])):ve("v-if",!0)],64))}}),NI=OI,FI=Z({__name:"ToastClose",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"button"}},setup(e){const t=e,n=RI(),{forwardRef:a}=Ee();return(r,o)=>(C(),R(Rb,{"as-child":""},{default:E(()=>[ie(f(fe),de(t,{ref:f(a),type:r.as==="button"?"button":void 0,onClick:f(n).onClose}),{default:E(()=>[j(r.$slots,"default")]),_:3},16,["type","onClick"])]),_:3}))}}),Ob=FI,qI=Z({__name:"ToastAction",props:{altText:{type:String,required:!0},asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(e){if(!e.altText)throw new Error("Missing prop `altText` expected on `ToastAction`");const{forwardRef:n}=Ee();return(a,r)=>a.altText?(C(),R(Rb,{key:0,"alt-text":a.altText,"as-child":""},{default:E(()=>[ie(Ob,{ref:f(n),as:a.as,"as-child":a.asChild},{default:E(()=>[j(a.$slots,"default")]),_:3},8,["as","as-child"])]),_:3},8,["alt-text"])):ve("v-if",!0)}}),Cg=qI,BI=Z({__name:"ToastDescription",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(e){const t=e;return Ee(),(n,a)=>(C(),R(f(fe),$e(Oe(t)),{default:E(()=>[j(n.$slots,"default")]),_:3},16))}}),HI=BI,VI=Z({__name:"ToastPortal",props:{to:{type:null,required:!1},disabled:{type:Boolean,required:!1},defer:{type:Boolean,required:!1},forceMount:{type:Boolean,required:!1}},setup(e){const t=e;return(n,a)=>(C(),R(f(cs),$e(Oe(t)),{default:E(()=>[j(n.$slots,"default")]),_:3},16))}}),zI=VI,jI=Z({__name:"ToastRoot",props:{defaultOpen:{type:Boolean,required:!1,default:!0},forceMount:{type:Boolean,required:!1},type:{type:String,required:!1,default:"foreground"},open:{type:Boolean,required:!1,default:void 0},duration:{type:Number,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"li"}},emits:["escapeKeyDown","pause","resume","swipeStart","swipeMove","swipeCancel","swipeEnd","update:open"],setup(e,{emit:t}){const n=e,a=t,{forwardRef:r}=Ee(),o=gt(n,"open",a,{defaultValue:n.defaultOpen,passive:n.open===void 0});return(s,i)=>(C(),R(f(Za),{present:s.forceMount||f(o)},{default:E(()=>[ie(NI,de({ref:f(r),open:f(o),type:s.type,as:s.as,"as-child":s.asChild,duration:s.duration},s.$attrs,{onClose:i[0]||(i[0]=l=>o.value=!1),onPause:i[1]||(i[1]=l=>a("pause")),onResume:i[2]||(i[2]=l=>a("resume")),onEscapeKeyDown:i[3]||(i[3]=l=>a("escapeKeyDown",l)),onSwipeStart:i[4]||(i[4]=l=>{a("swipeStart",l),l.defaultPrevented||l.currentTarget.setAttribute("data-swipe","start")}),onSwipeMove:i[5]||(i[5]=l=>{if(a("swipeMove",l),!l.defaultPrevented){const{x:c,y:u}=l.detail.delta,d=l.currentTarget;d.setAttribute("data-swipe","move"),d.style.setProperty("--reka-toast-swipe-move-x",`${c}px`),d.style.setProperty("--reka-toast-swipe-move-y",`${u}px`)}}),onSwipeCancel:i[6]||(i[6]=l=>{if(a("swipeCancel",l),!l.defaultPrevented){const c=l.currentTarget;c.setAttribute("data-swipe","cancel"),c.style.removeProperty("--reka-toast-swipe-move-x"),c.style.removeProperty("--reka-toast-swipe-move-y"),c.style.removeProperty("--reka-toast-swipe-end-x"),c.style.removeProperty("--reka-toast-swipe-end-y")}}),onSwipeEnd:i[7]||(i[7]=l=>{if(a("swipeEnd",l),!l.defaultPrevented){const{x:c,y:u}=l.detail.delta,d=l.currentTarget;d.setAttribute("data-swipe","end"),d.style.removeProperty("--reka-toast-swipe-move-x"),d.style.removeProperty("--reka-toast-swipe-move-y"),d.style.setProperty("--reka-toast-swipe-end-x",`${c}px`),d.style.setProperty("--reka-toast-swipe-end-y",`${u}px`),o.value=!1}})}),{default:E(({remaining:l,duration:c})=>[j(s.$slots,"default",{remaining:l,duration:c,open:f(o)})]),_:3},16,["open","type","as","as-child","duration"])]),_:3},8,["present"]))}}),WI=jI,UI=Z({__name:"ToastTitle",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1}},setup(e){const t=e;return Ee(),(n,a)=>(C(),R(f(fe),$e(Oe(t)),{default:E(()=>[j(n.$slots,"default")]),_:3},16))}}),GI=UI,YI=Z({__name:"FocusProxy",emits:["focusFromOutsideViewport"],setup(e,{emit:t}){const n=t,a=ru();return(r,o)=>(C(),R(f(Kc),{tabindex:"0",style:{position:"fixed"},onFocus:o[0]||(o[0]=s=>{const i=s.relatedTarget;!f(a).viewport.value?.contains(i)&&n("focusFromOutsideViewport")})},{default:E(()=>[j(r.$slots,"default")]),_:3}))}}),Sg=YI,KI=Z({inheritAttrs:!1,__name:"ToastViewport",props:{hotkey:{type:Array,required:!1,default:()=>["F8"]},label:{type:[String,Function],required:!1,default:"Notifications ({hotkey})"},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"ol"}},setup(e){const t=e,{hotkey:n,label:a}=kt(t),{forwardRef:r,currentElement:o}=Ee(),{CollectionSlot:s,getItems:i}=$i(),l=ru(),c=S(()=>l.toastCount.value>0),u=V(),d=V(),h=/Key/g,p=/Digit/g,m=S(()=>n.value.join("+").replace(h,"").replace(p,""));np(n.value,()=>{o.value.focus()}),Xe(()=>{l.onViewportChange(o.value)}),qt(y=>{const g=o.value;if(c.value&&g){const b=()=>{if(!l.isClosePausedRef.value){const k=new CustomEvent(of);g.dispatchEvent(k),l.isClosePausedRef.value=!0}},w=()=>{if(l.isClosePausedRef.value){const k=new CustomEvent(sf);g.dispatchEvent(k),l.isClosePausedRef.value=!1}},_=k=>{!g.contains(k.relatedTarget)&&w()},A=()=>{g.contains($t())||w()},P=k=>{const T=k.altKey||k.ctrlKey||k.metaKey;if(k.key==="Tab"&&!T){const Y=$t(),Q=k.shiftKey;if(k.target===g&&Q){u.value?.focus();return}const O=v({tabbingDirection:Q?"backwards":"forwards"}),D=O.findIndex(q=>q===Y);El(O.slice(D+1))?k.preventDefault():Q?u.value?.focus():d.value?.focus()}};g.addEventListener("focusin",b),g.addEventListener("focusout",_),g.addEventListener("pointermove",b),g.addEventListener("pointerleave",A),g.addEventListener("keydown",P),window.addEventListener("blur",b),window.addEventListener("focus",w),y(()=>{g.removeEventListener("focusin",b),g.removeEventListener("focusout",_),g.removeEventListener("pointermove",b),g.removeEventListener("pointerleave",A),g.removeEventListener("keydown",P),window.removeEventListener("blur",b),window.removeEventListener("focus",w)})}});function v({tabbingDirection:y}){const b=i().map(w=>w.ref).map(w=>{const _=[w,...kp(w)];return y==="forwards"?_:_.reverse()});return(y==="forwards"?b.reverse():b).flat()}return(y,g)=>(C(),R(f(f7),{role:"region","aria-label":typeof f(a)=="string"?f(a).replace("{hotkey}",m.value):f(a)(m.value),tabindex:"-1",style:yn({pointerEvents:c.value?void 0:"none"})},{default:E(()=>[c.value?(C(),R(Sg,{key:0,ref:b=>{b&&(u.value=f(hn)(b))},onFocusFromOutsideViewport:g[0]||(g[0]=()=>{const b=v({tabbingDirection:"forwards"});f(El)(b)})},null,512)):ve("v-if",!0),ie(f(s),null,{default:E(()=>[ie(f(fe),de({ref:f(r),tabindex:"-1",as:y.as,"as-child":y.asChild},y.$attrs),{default:E(()=>[j(y.$slots,"default")]),_:3},16,["as","as-child"])]),_:3}),c.value?(C(),R(Sg,{key:1,ref:b=>{b&&(d.value=f(hn)(b))},onFocusFromOutsideViewport:g[1]||(g[1]=()=>{const b=v({tabbingDirection:"backwards"});f(El)(b)})},null,512)):ve("v-if",!0)]),_:3},8,["aria-label","style"]))}}),XI=KI,JI=Z({__name:"TooltipArrow",props:{width:{type:Number,required:!1,default:10},height:{type:Number,required:!1,default:5},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"svg"}},setup(e){const t=e;return Ee(),(n,a)=>(C(),R(f(nu),$e(Oe(t)),{default:E(()=>[j(n.$slots,"default")]),_:3},16))}}),QI=JI;const[Ni,ZI]=pt("TooltipProvider");var e8=Z({inheritAttrs:!1,__name:"TooltipProvider",props:{delayDuration:{type:Number,required:!1,default:700},skipDelayDuration:{type:Number,required:!1,default:300},disableHoverableContent:{type:Boolean,required:!1,default:!1},disableClosingTrigger:{type:Boolean,required:!1},disabled:{type:Boolean,required:!1},ignoreNonKeyboardFocus:{type:Boolean,required:!1,default:!1},content:{type:Object,required:!1}},setup(e){const t=e,{delayDuration:n,skipDelayDuration:a,disableHoverableContent:r,disableClosingTrigger:o,ignoreNonKeyboardFocus:s,disabled:i,content:l}=kt(t);Ee();const c=V(!0),u=V(!1),{start:d,stop:h}=ep(()=>{c.value=!0},a,{immediate:!1});return ZI({isOpenDelayed:c,delayDuration:n,onOpen(){h(),c.value=!1},onClose(){d()},isPointerInTransitRef:u,disableHoverableContent:r,disableClosingTrigger:o,disabled:i,ignoreNonKeyboardFocus:s,content:l}),(p,m)=>j(p.$slots,"default")}}),t8=e8;const Nb="tooltip.open",[ou,n8]=pt("TooltipRoot");var a8=Z({__name:"TooltipRoot",props:{defaultOpen:{type:Boolean,required:!1,default:!1},open:{type:Boolean,required:!1,default:void 0},delayDuration:{type:Number,required:!1,default:void 0},disableHoverableContent:{type:Boolean,required:!1,default:void 0},disableClosingTrigger:{type:Boolean,required:!1,default:void 0},disabled:{type:Boolean,required:!1,default:void 0},ignoreNonKeyboardFocus:{type:Boolean,required:!1,default:void 0}},emits:["update:open"],setup(e,{emit:t}){const n=e,a=t;Ee();const r=Ni(),o=S(()=>n.disableHoverableContent??r.disableHoverableContent.value),s=S(()=>n.disableClosingTrigger??r.disableClosingTrigger.value),i=S(()=>n.disabled??r.disabled.value),l=S(()=>n.delayDuration??r.delayDuration.value),c=S(()=>n.ignoreNonKeyboardFocus??r.ignoreNonKeyboardFocus.value),u=gt(n,"open",a,{defaultValue:n.defaultOpen,passive:n.open===void 0});Se(u,w=>{r.onClose&&(w?(r.onOpen(),document.dispatchEvent(new CustomEvent(Nb))):r.onClose())});const d=V(!1),h=V(),p=S(()=>u.value?d.value?"delayed-open":"instant-open":"closed"),{start:m,stop:v}=ep(()=>{d.value=!0,u.value=!0},l,{immediate:!1});function y(){v(),d.value=!1,u.value=!0}function g(){v(),u.value=!1}function b(){m()}return n8({contentId:"",open:u,stateAttribute:p,trigger:h,onTriggerChange(w){h.value=w},onTriggerEnter(){r.isOpenDelayed.value?b():y()},onTriggerLeave(){o.value?g():v()},onOpen:y,onClose:g,disableHoverableContent:o,disableClosingTrigger:s,disabled:i,ignoreNonKeyboardFocus:c}),(w,_)=>(C(),R(f(Ri),null,{default:E(()=>[j(w.$slots,"default",{open:f(u)})]),_:3}))}}),r8=a8,o8=Z({__name:"TooltipContentImpl",props:{ariaLabel:{type:String,required:!1},asChild:{type:Boolean,required:!1,default:void 0},as:{type:null,required:!1},side:{type:null,required:!1},sideOffset:{type:Number,required:!1},align:{type:null,required:!1},alignOffset:{type:Number,required:!1},avoidCollisions:{type:Boolean,required:!1,default:void 0},collisionBoundary:{type:null,required:!1},collisionPadding:{type:[Number,Object],required:!1},arrowPadding:{type:Number,required:!1},sticky:{type:String,required:!1},hideWhenDetached:{type:Boolean,required:!1,default:void 0},positionStrategy:{type:String,required:!1},updatePositionStrategy:{type:String,required:!1}},emits:["escapeKeyDown","pointerDownOutside"],setup(e,{emit:t}){const n=e,a=t,r=ou(),o=Ni(),{forwardRef:s,currentElement:i}=Ee(),l=S(()=>n.ariaLabel||i.value?.textContent),c=S(()=>{const{ariaLabel:u,...d}=n;return Un(d,o.content.value??{},{side:"top",sideOffset:0,align:"center",avoidCollisions:!0,collisionBoundary:[],collisionPadding:0,arrowPadding:0,sticky:"partial",hideWhenDetached:!1})});return Xe(()=>{Kt(window,"scroll",u=>{u.target?.contains(r.trigger.value)&&r.onClose()},{capture:!0}),Kt(window,Nb,r.onClose)}),(u,d)=>(C(),R(f(Ei),{"as-child":"","disable-outside-pointer-events":!1,onEscapeKeyDown:d[0]||(d[0]=h=>a("escapeKeyDown",h)),onPointerDownOutside:d[1]||(d[1]=h=>{f(r).disableClosingTrigger.value&&f(r).trigger.value?.contains(h.target)&&h.preventDefault(),a("pointerDownOutside",h)}),onFocusOutside:d[2]||(d[2]=Vt(()=>{},["prevent"])),onDismiss:d[3]||(d[3]=h=>f(r).onClose())},{default:E(()=>[ie(f(tu),de({ref:f(s),"data-state":f(r).stateAttribute.value},{...u.$attrs,...c.value},{style:{"--reka-tooltip-content-transform-origin":"var(--reka-popper-transform-origin)","--reka-tooltip-content-available-width":"var(--reka-popper-available-width)","--reka-tooltip-content-available-height":"var(--reka-popper-available-height)","--reka-tooltip-trigger-width":"var(--reka-popper-anchor-width)","--reka-tooltip-trigger-height":"var(--reka-popper-anchor-height)"}}),{default:E(()=>[j(u.$slots,"default"),ie(f(Kc),{id:f(r).contentId,role:"tooltip"},{default:E(()=>[qe(Me(l.value),1)]),_:1},8,["id"])]),_:3},16,["data-state"])]),_:3}))}}),Fb=o8,s8=Z({__name:"TooltipContentHoverable",props:{ariaLabel:{type:String,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1},side:{type:null,required:!1},sideOffset:{type:Number,required:!1},align:{type:null,required:!1},alignOffset:{type:Number,required:!1},avoidCollisions:{type:Boolean,required:!1},collisionBoundary:{type:null,required:!1},collisionPadding:{type:[Number,Object],required:!1},arrowPadding:{type:Number,required:!1},sticky:{type:String,required:!1},hideWhenDetached:{type:Boolean,required:!1},positionStrategy:{type:String,required:!1},updatePositionStrategy:{type:String,required:!1}},setup(e){const n=Ja(e),{forwardRef:a,currentElement:r}=Ee(),{trigger:o,onClose:s}=ou(),i=Ni(),{isPointerInTransit:l,onPointerExit:c}=ab(o,r);return i.isPointerInTransitRef=l,c(()=>{s()}),(u,d)=>(C(),R(Fb,de({ref:f(a)},f(n)),{default:E(()=>[j(u.$slots,"default")]),_:3},16))}}),i8=s8,l8=Z({__name:"TooltipContent",props:{forceMount:{type:Boolean,required:!1},ariaLabel:{type:String,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1},side:{type:null,required:!1},sideOffset:{type:Number,required:!1},align:{type:null,required:!1},alignOffset:{type:Number,required:!1},avoidCollisions:{type:Boolean,required:!1},collisionBoundary:{type:null,required:!1},collisionPadding:{type:[Number,Object],required:!1},arrowPadding:{type:Number,required:!1},sticky:{type:String,required:!1},hideWhenDetached:{type:Boolean,required:!1},positionStrategy:{type:String,required:!1},updatePositionStrategy:{type:String,required:!1}},emits:["escapeKeyDown","pointerDownOutside"],setup(e,{emit:t}){const n=e,a=t,r=ou(),o=Nn(n,a),{forwardRef:s}=Ee();return(i,l)=>(C(),R(f(Za),{present:i.forceMount||f(r).open.value},{default:E(()=>[(C(),R($n(f(r).disableHoverableContent.value?Fb:i8),de({ref:f(s)},f(o)),{default:E(()=>[j(i.$slots,"default")]),_:3},16))]),_:3},8,["present"]))}}),c8=l8,u8=Z({__name:"TooltipPortal",props:{to:{type:null,required:!1},disabled:{type:Boolean,required:!1},defer:{type:Boolean,required:!1},forceMount:{type:Boolean,required:!1}},setup(e){const t=e;return(n,a)=>(C(),R(f(cs),$e(Oe(t)),{default:E(()=>[j(n.$slots,"default")]),_:3},16))}}),d8=u8,f8=Z({__name:"TooltipTrigger",props:{reference:{type:null,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"button"}},setup(e){const t=e,n=ou(),a=Ni();n.contentId||=Mn(void 0,"reka-tooltip-content");const{forwardRef:r,currentElement:o}=Ee(),s=V(!1),i=V(!1),l=S(()=>n.disabled.value?{}:{click:v,focus:p,pointermove:d,pointerleave:h,pointerdown:u,blur:m});Xe(()=>{n.onTriggerChange(o.value)});function c(){setTimeout(()=>{s.value=!1},1)}function u(){n.open&&!n.disableClosingTrigger.value&&n.onClose(),s.value=!0,document.addEventListener("pointerup",c,{once:!0})}function d(y){y.pointerType!=="touch"&&!i.value&&!a.isPointerInTransitRef.value&&(n.onTriggerEnter(),i.value=!0)}function h(){n.onTriggerLeave(),i.value=!1}function p(y){s.value||n.ignoreNonKeyboardFocus.value&&!y.target.matches?.(":focus-visible")||n.onOpen()}function m(){n.onClose()}function v(){n.disableClosingTrigger.value||n.onClose()}return(y,g)=>(C(),R(f(Li),{"as-child":"",reference:y.reference},{default:E(()=>[ie(f(fe),de({ref:f(r),"aria-describedby":f(n).open.value?f(n).contentId:void 0,"data-state":f(n).stateAttribute.value,as:y.as,"as-child":t.asChild,"data-grace-area-trigger":""},Wf(l.value)),{default:E(()=>[j(y.$slots,"default")]),_:3},16,["aria-describedby","data-state","as","as-child"])]),_:3},8,["reference"]))}}),p8=f8;function h8(e){function t(a){return Array.isArray(e.date.value)?e.date.value.some(r=>ft(r,a)):e.date.value?ft(e.date.value,a):!1}const n=S(()=>{if(Array.isArray(e.date.value)){if(!e.date.value.length)return!1;for(const a of e.date.value)if(e.isYearDisabled?.(a)||e.isYearUnavailable?.(a))return!0}else{if(!e.date.value)return!1;if(e.isYearDisabled?.(e.date.value)||e.isYearUnavailable?.(e.date.value))return!0}return!1});return{isYearSelected:t,isInvalid:n}}function qb(e){const t=wp(e.locale.value),n=p=>typeof p=="function"?p:p?.value,a=S(()=>{const p={calendar:e.placeholder.value.calendar.identifier};return e.placeholder.value.calendar.identifier==="gregory"&&e.placeholder.value.era==="BC"&&(p.era="short"),p}),r=V(Rr({dateObj:e.placeholder.value,yearsPerPage:e.yearsPerPage.value}));function o(p){return!!(n(e.isYearDisabled)?.(p)||e.disabled.value||e.maxValue.value&&sa(La(p),e.maxValue.value)||e.minValue.value&&fn(Jr(p),e.minValue.value))}const s=p=>!!n(e.isYearUnavailable)?.(p),i=p=>{if(!e.maxValue.value)return!1;if(e.disabled.value)return!0;const m=r.value.cells.at(-1);if(p||e.nextPage.value){const y=(p||e.nextPage.value)(m);return sa(La(y),e.maxValue.value)}const v=La(m.add({years:1}));return sa(v,e.maxValue.value)},l=p=>{if(!e.minValue.value)return!1;if(e.disabled.value)return!0;const m=r.value.value;if(p||e.prevPage.value){const y=(p||e.prevPage.value)(m);return fn(Jr(y),e.minValue.value)}const v=Jr(m.subtract({years:1}));return fn(v,e.minValue.value)},c=p=>{const m=r.value.value;if(p||e.nextPage.value){const y=(p||e.nextPage.value)(m);r.value=Rr({dateObj:y,yearsPerPage:e.yearsPerPage.value,decadeAligned:!1}),e.placeholder.value=y.set({month:e.placeholder.value.month,day:e.placeholder.value.day});return}const v=m.add({years:e.yearsPerPage.value});r.value=Rr({dateObj:v,yearsPerPage:e.yearsPerPage.value,decadeAligned:!1}),e.placeholder.value=v.set({month:e.placeholder.value.month,day:e.placeholder.value.day})},u=p=>{const m=r.value.value;if(p||e.prevPage.value){const y=(p||e.prevPage.value)(m);r.value=Rr({dateObj:y,yearsPerPage:e.yearsPerPage.value,decadeAligned:!1}),e.placeholder.value=y.set({month:e.placeholder.value.month,day:e.placeholder.value.day});return}const v=m.subtract({years:e.yearsPerPage.value});r.value=Rr({dateObj:v,yearsPerPage:e.yearsPerPage.value,decadeAligned:!1}),e.placeholder.value=v.set({month:e.placeholder.value.month,day:e.placeholder.value.day})};Se(e.placeholder,p=>{const m=r.value.value,v=r.value.cells.at(-1);p.year>=m.year&&p.year<=v.year||(r.value=Rr({dateObj:p,yearsPerPage:e.yearsPerPage.value}))}),Se([e.locale,e.yearsPerPage],()=>{t.setLocale(e.locale.value),r.value=Rr({dateObj:e.placeholder.value,yearsPerPage:e.yearsPerPage.value})});const d=S(()=>{e.locale.value!==t.getLocale()&&t.setLocale(e.locale.value);const p=r.value.cells[0],m=r.value.cells.at(-1);return`${t.fullYear(Pt(p),a.value)} - ${t.fullYear(Pt(m),a.value)}`}),h=S(()=>`${e.calendarLabel.value??"Year Picker"}, ${d.value}`);return{isYearDisabled:o,isYearUnavailable:s,isNextButtonDisabled:i,isPrevButtonDisabled:l,grid:r,formatter:t,nextPage:c,prevPage:u,headingValue:d,fullCalendarLabel:h}}const m8={style:{border:"0px",clip:"rect(0px, 0px, 0px, 0px)","clip-path":"inset(50%)",height:"1px",margin:"-1px",overflow:"hidden",padding:"0px",position:"absolute","white-space":"nowrap",width:"1px"}},g8={role:"heading","aria-level":"2"},[gs,v8]=pt("YearPickerRoot");var y8=Z({__name:"YearPickerRoot",props:{defaultValue:{type:null,required:!1,default:void 0},defaultPlaceholder:{type:null,required:!1},placeholder:{type:null,required:!1,default:void 0},preventDeselect:{type:Boolean,required:!1,default:!1},calendarLabel:{type:String,required:!1},maxValue:{type:null,required:!1},minValue:{type:null,required:!1},locale:{type:String,required:!1},disabled:{type:Boolean,required:!1,default:!1},readonly:{type:Boolean,required:!1,default:!1},initialFocus:{type:Boolean,required:!1,default:!1},isYearDisabled:{type:Function,required:!1,default:void 0},isYearUnavailable:{type:Function,required:!1,default:void 0},dir:{type:String,required:!1},nextPage:{type:Function,required:!1},prevPage:{type:Function,required:!1},modelValue:{type:null,required:!1},multiple:{type:Boolean,required:!1,default:!1},yearsPerPage:{type:Number,required:!1,default:12},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"div"}},emits:["update:modelValue","update:placeholder"],setup(e,{emit:t}){const n=e,a=t,{disabled:r,readonly:o,initialFocus:s,multiple:i,minValue:l,maxValue:c,preventDeselect:u,isYearDisabled:d,isYearUnavailable:h,calendarLabel:p,defaultValue:m,nextPage:v,prevPage:y,dir:g,locale:b,yearsPerPage:w}=kt(n),{primitiveElement:_,currentElement:A}=bn(),P=ls(b),k=Ka(g),T=Mn(void 0,"reka-year-picker-heading"),I=gt(n,"modelValue",a,{defaultValue:m.value,passive:n.modelValue===void 0}),Y=ss({defaultPlaceholder:n.placeholder,defaultValue:I.value,locale:n.locale}),Q=gt(n,"placeholder",a,{defaultValue:n.defaultPlaceholder??Y.copy(),passive:n.placeholder===void 0});function z(X){Q.value=X.copy()}const{fullCalendarLabel:te,headingValue:O,isYearDisabled:D,isYearUnavailable:q,isNextButtonDisabled:G,isPrevButtonDisabled:L,nextPage:ee,prevPage:K,formatter:ce,grid:ue}=qb({locale:P,placeholder:Q,minValue:l,maxValue:c,disabled:r,yearsPerPage:w,isYearDisabled:d,isYearUnavailable:h,calendarLabel:p,nextPage:v,prevPage:y}),{isInvalid:be,isYearSelected:ge}=h8({date:I,isYearDisabled:D,isYearUnavailable:q});Se(I,X=>{if(Array.isArray(X)&&X.length){const le=X.at(-1);le&&!ft(Q.value,le)&&z(le)}else!Array.isArray(X)&&X&&!ft(Q.value,X)&&z(X)});function we(X,le){return le?X.copy().set({month:le.month,day:le.day}):X.copy()}function me(X){if(i.value){if(!I.value)I.value=[we(X,Q.value)];else if(Array.isArray(I.value)){const le=I.value.findIndex(se=>ft(se,X));if(le===-1)I.value=[...I.value,we(X,Q.value)];else if(!u.value){const se=I.value.filter(pe=>!ft(pe,X));if(!se.length){Q.value=we(X,I.value[le]),I.value=void 0;return}I.value=se.map(pe=>pe.copy())}}}else{if(!I.value){I.value=we(X,Q.value);return}!u.value&&ft(I.value,X)?(Q.value=we(X,I.value),I.value=void 0):I.value=we(X,I.value)}}return Xe(()=>{s.value&&is(A.value)}),v8({isYearUnavailable:q,dir:k,isYearDisabled:D,locale:P,formatter:ce,modelValue:I,placeholder:Q,disabled:r,initialFocus:s,grid:ue,multiple:i,readonly:o,preventDeselect:u,fullCalendarLabel:te,headingValue:O,headingId:T,isInvalid:be,isYearSelected:ge,isNextButtonDisabled:G,isPrevButtonDisabled:L,nextPage:ee,prevPage:K,parentElement:A,onPlaceholderChange:z,onYearChange:me,minValue:l,maxValue:c,yearsPerPage:w}),(X,le)=>(C(),R(f(fe),{ref_key:"primitiveElement",ref:_,as:X.as,"as-child":X.asChild,"aria-label":f(te),"data-readonly":f(o)?"":void 0,"data-disabled":f(r)?"":void 0,"data-invalid":f(be)?"":void 0,dir:f(k)},{default:E(()=>[j(X.$slots,"default",{date:f(Q),grid:f(ue),locale:f(P),modelValue:f(I)}),ke("div",m8,[ke("div",g8,Me(f(te)),1)])]),_:3},8,["as","as-child","aria-label","data-readonly","data-disabled","data-invalid","dir"]))}}),b8=y8,w8=Z({__name:"YearPickerCell",props:{date:{type:null,required:!0},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"td"}},setup(e){const t=gs();return(n,a)=>(C(),R(f(fe),{as:n.as,"as-child":n.asChild,role:"gridcell","aria-selected":f(t).isYearSelected(n.date)?!0:void 0,"aria-disabled":f(t).isYearDisabled(n.date)||f(t).isYearUnavailable?.(n.date),"data-disabled":f(t).isYearDisabled(n.date)?"":void 0},{default:E(()=>[j(n.$slots,"default")]),_:3},8,["as","as-child","aria-selected","aria-disabled","data-disabled"]))}}),_8=w8,k8=Z({__name:"YearPickerCellTrigger",props:{year:{type:null,required:!0},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"div"}},setup(e){const t=e,n=Qa(),a=gs(),{primitiveElement:r}=bn(),o=S(()=>(a.locale.value,a.formatter.fullYear(Pt(t.year)))),s=S(()=>(a.locale.value,a.formatter.custom(Pt(t.year),{year:"numeric"}))),i=S(()=>a.isYearUnavailable?.(t.year)??!1),l=S(()=>{const v=Ht(os(pa()),t.year.calendar);return ft(t.year,v)}),c=S(()=>a.isYearDisabled(t.year)),u=S(()=>!a.disabled.value&&ft(t.year,a.placeholder.value)),d=S(()=>a.isYearSelected(t.year));function h(v){a.readonly.value||a.isYearDisabled(v)||a.isYearUnavailable?.(v)||a.onYearChange(v)}function p(){c.value||h(t.year)}function m(v){if(c.value)return;v.preventDefault(),v.stopPropagation();const y=a.parentElement.value,g=a.dir.value==="rtl"?-1:1;switch(v.code){case n.ARROW_RIGHT:b(t.year,g);break;case n.ARROW_LEFT:b(t.year,-g);break;case n.ARROW_UP:b(t.year,-4);break;case n.ARROW_DOWN:b(t.year,4);break;case n.PAGE_UP:w(-1);break;case n.PAGE_DOWN:w(1);break;case n.ENTER:case n.SPACE_CODE:h(t.year)}function b(_,A,P=0){if(P>48)return;const k=_.add({years:A});if(a.minValue.value&&Jr(k).compare(a.minValue.value)<0||a.maxValue.value&&La(k).compare(a.maxValue.value)>0)return;const T=y.querySelector(`[data-value='${k.toString()}']`);if(!T){if(A>0){if(a.isNextButtonDisabled())return;a.nextPage()}else{if(a.isPrevButtonDisabled())return;a.prevPage()}Ve(()=>{b(_,A,P+1)});return}if(T&&T.hasAttribute("data-disabled"))return b(k,A,P+1);a.onPlaceholderChange(k),T?.focus()}function w(_){const A=a.yearsPerPage.value,P=t.year.add({years:_*A});if(!(a.minValue.value&&Jr(P).compare(a.minValue.value)<0||a.maxValue.value&&La(P).compare(a.maxValue.value)>0)){if(_>0){if(a.isNextButtonDisabled())return;a.nextPage()}else{if(a.isPrevButtonDisabled())return;a.prevPage()}Ve(()=>{const k=y.querySelector(`[data-value='${P.toString()}']`);if(k&&!k.hasAttribute("data-disabled")){a.onPlaceholderChange(P),k?.focus();return}(!k||k.hasAttribute("data-disabled"))&&b(P,_>0?1:-1,1)})}}}return(v,y)=>(C(),R(f(fe),{ref_key:"primitiveElement",ref:r,as:t.as,"as-child":t.asChild,role:"button","aria-label":s.value,"data-reka-year-picker-cell-trigger":"","aria-disabled":c.value||i.value?!0:void 0,"data-selected":d.value?"":void 0,"data-value":v.year.toString(),"data-disabled":c.value?"":void 0,"data-unavailable":i.value?"":void 0,"data-today":l.value?"":void 0,"data-focused":u.value?"":void 0,tabindex:u.value?0:c.value?void 0:-1,onClick:p,onKeydown:[Ln(m,["up","down","left","right","space","enter","page-up","page-down"]),y[0]||(y[0]=Ln(Vt(()=>{},["prevent"]),["enter"]))]},{default:E(()=>[j(v.$slots,"default",{yearValue:o.value,disabled:c.value,today:l.value,selected:d.value,unavailable:i.value},()=>[qe(Me(o.value),1)])]),_:3},8,["as","as-child","aria-label","aria-disabled","data-selected","data-value","data-disabled","data-unavailable","data-today","data-focused","tabindex"]))}}),C8=k8,S8=Z({__name:"YearPickerGrid",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"table"}},setup(e){const t=e,n=gs(),a=S(()=>n.disabled.value?!0:void 0),r=S(()=>n.readonly.value?!0:void 0);return(o,s)=>(C(),R(f(fe),de(t,{tabindex:"-1",role:"application","aria-labelledby":f(n).headingId,"aria-readonly":r.value,"aria-disabled":a.value,"data-readonly":r.value&&"","data-disabled":a.value&&""}),{default:E(()=>[j(o.$slots,"default")]),_:3},16,["aria-labelledby","aria-readonly","aria-disabled","data-readonly","data-disabled"]))}}),x8=S8,A8=Z({__name:"YearPickerGridBody",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"tbody"}},setup(e){const t=e;return(n,a)=>(C(),R(f(fe),$e(Oe(t)),{default:E(()=>[j(n.$slots,"default")]),_:3},16))}}),P8=A8,M8=Z({__name:"YearPickerGridRow",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"tr"}},setup(e){const t=e;return(n,a)=>(C(),R(f(fe),de(t,{role:"row"}),{default:E(()=>[j(n.$slots,"default")]),_:3},16))}}),T8=M8,I8=Z({__name:"YearPickerHeader",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"div"}},setup(e){const t=e;return(n,a)=>(C(),R(f(fe),$e(Oe(t)),{default:E(()=>[j(n.$slots,"default")]),_:3},16))}}),D8=I8,E8=Z({__name:"YearPickerHeading",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"div"}},setup(e){const t=e,n=gs();return(a,r)=>(C(),R(f(fe),de(t,{id:f(n).headingId,role:"heading","aria-level":"2","data-disabled":f(n).disabled.value?"":void 0}),{default:E(()=>[j(a.$slots,"default",{headingValue:f(n).headingValue.value},()=>[qe(Me(f(n).headingValue.value),1)])]),_:3},16,["id","data-disabled"]))}}),$8=E8,R8=Z({__name:"YearPickerNext",props:{nextPage:{type:Function,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"button"}},setup(e){const t=e,n=gs(),a=S(()=>n.disabled.value||n.isNextButtonDisabled(t.nextPage));function r(){a.value||n.nextPage(t.nextPage)}return(o,s)=>(C(),R(f(fe),{as:t.as,"as-child":t.asChild,"aria-label":"Next page",type:t.as==="button"?"button":void 0,"aria-disabled":a.value||void 0,"data-disabled":a.value||void 0,disabled:a.value,onClick:r},{default:E(()=>[j(o.$slots,"default",{disabled:a.value},()=>[s[0]||(s[0]=qe(" Next page "))])]),_:3},8,["as","as-child","type","aria-disabled","data-disabled","disabled"]))}}),L8=R8,O8=Z({__name:"YearPickerPrev",props:{prevPage:{type:Function,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"button"}},setup(e){const t=e,n=gs(),a=S(()=>n.disabled.value||n.isPrevButtonDisabled(t.prevPage));function r(){a.value||n.prevPage(t.prevPage)}return(o,s)=>(C(),R(f(fe),{"aria-label":"Previous page",as:t.as,"as-child":t.asChild,type:t.as==="button"?"button":void 0,"aria-disabled":a.value||void 0,"data-disabled":a.value||void 0,disabled:a.value,onClick:r},{default:E(()=>[j(o.$slots,"default",{disabled:a.value},()=>[s[0]||(s[0]=qe(" Prev page "))])]),_:3},8,["as","as-child","type","aria-disabled","data-disabled","disabled"]))}}),N8=O8;function F8(e){const t=S(()=>e.start.value?!!e.isYearDisabled(e.start.value):!1),n=S(()=>e.end.value?!!e.isYearDisabled(e.end.value):!1),a=S(()=>!!(t.value||n.value||e.start.value&&e.end.value&&e.end.value.year<e.start.value.year)),r=d=>e.start.value?ft(e.start.value,d):!1,o=d=>e.end.value?ft(e.end.value,d):!1,s=d=>e.start.value&&ft(e.start.value,d)||e.end.value&&ft(e.end.value,d)?!0:e.end.value&&e.start.value?d.year>e.start.value.year&&d.year<e.end.value.year:!1,i=d=>{if(e.isYearDisabled(d))return!0;if(e.maximumYears?.value){const h=e.maximumYears.value;if(e.start.value&&e.end.value){if(e.fixedDate.value){const p=$4(e.start.value,e.end.value);if(p<=h){const g=h-p,b=e.start.value.subtract({years:g}),w=e.end.value.add({years:g});return d.year<b.year||d.year>w.year}const m=e.fixedDate.value==="start"?e.start.value:e.end.value,v=m.add({years:h-1}),y=m.subtract({years:h-1});return d.year<y.year||d.year>v.year}return!1}if(e.start.value){const p=e.start.value.add({years:h-1}),m=e.start.value.subtract({years:h-1});return d.year<m.year||d.year>p.year}}return!1},l=S(()=>{if(e.start.value&&e.end.value&&!e.fixedDate.value||!e.start.value||!e.focusedValue.value)return null;const d=e.start.value.year<e.focusedValue.value.year,h=d?e.start.value:e.focusedValue.value,p=d?e.focusedValue.value:e.start.value;if(ft(h,p))return{start:h,end:p};if(e.maximumYears?.value&&!e.end.value){const v=e.maximumYears.value,y=e.start.value,g=e.focusedValue.value;if(g.year>=y.year){const b=y.add({years:v-1}),w=g.year>b.year?b:g;return{start:y,end:w}}else{const b=y.subtract({years:v-1});return{start:g.year<b.year?b:g,end:y}}}return L4(h,p,e.allowNonContiguousRanges.value?()=>!1:e.isYearUnavailable,i)?{start:h,end:p}:null});return{isInvalid:a,isSelected:s,highlightedRange:l,isSelectionStart:r,isSelectionEnd:o,isHighlightedStart:d=>l.value?.start?ft(l.value.start,d):!1,isHighlightedEnd:d=>l.value?.end?ft(l.value.end,d):!1,isYearDisabled:i}}const q8={style:{border:"0px",clip:"rect(0px, 0px, 0px, 0px)","clip-path":"inset(50%)",height:"1px",margin:"-1px",overflow:"hidden",padding:"0px",position:"absolute","white-space":"nowrap",width:"1px"}},B8={role:"heading","aria-level":"2"},[vs,H8]=pt("YearRangePickerRoot");var V8=Z({__name:"YearRangePickerRoot",props:{defaultPlaceholder:{type:null,required:!1},defaultValue:{type:Object,required:!1,default:()=>({start:void 0,end:void 0})},modelValue:{type:[Object,null],required:!1},placeholder:{type:null,required:!1,default:void 0},allowNonContiguousRanges:{type:Boolean,required:!1,default:!1},preventDeselect:{type:Boolean,required:!1,default:!1},maximumYears:{type:Number,required:!1,default:void 0},calendarLabel:{type:String,required:!1},maxValue:{type:null,required:!1},minValue:{type:null,required:!1},locale:{type:String,required:!1},disabled:{type:Boolean,required:!1,default:!1},readonly:{type:Boolean,required:!1,default:!1},initialFocus:{type:Boolean,required:!1,default:!1},isYearDisabled:{type:Function,required:!1,default:void 0},isYearUnavailable:{type:Function,required:!1,default:void 0},dir:{type:String,required:!1},nextPage:{type:Function,required:!1},prevPage:{type:Function,required:!1},fixedDate:{type:String,required:!1},yearsPerPage:{type:Number,required:!1,default:12},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"div"}},emits:["update:modelValue","update:placeholder","update:startValue"],setup(e,{emit:t}){const n=e,a=t,{disabled:r,readonly:o,initialFocus:s,preventDeselect:i,isYearUnavailable:l,isYearDisabled:c,calendarLabel:u,maxValue:d,minValue:h,dir:p,locale:m,nextPage:v,prevPage:y,allowNonContiguousRanges:g,fixedDate:b,maximumYears:w,yearsPerPage:_}=kt(n),{primitiveElement:A,currentElement:P}=bn(),k=Ka(p),T=ls(m),I=Mn(void 0,"reka-year-range-picker-heading"),Y=V(),Q=V(),z=V(!1),te=gt(n,"modelValue",a,{defaultValue:n.defaultValue??{start:void 0,end:void 0},passive:n.modelValue===void 0}),O=H=>H??{start:void 0,end:void 0},D=S(()=>O(te.value)),q=V(O(te.value)),G=ss({defaultPlaceholder:n.placeholder,defaultValue:O(te.value).start,locale:n.locale}),L=V(O(te.value).start),ee=V(O(te.value).end),K=gt(n,"placeholder",a,{defaultValue:n.defaultPlaceholder??G.copy(),passive:n.placeholder===void 0});function ce(H){K.value=H.copy()}const{fullCalendarLabel:ue,headingValue:be,isYearDisabled:ge,isYearUnavailable:we,isNextButtonDisabled:me,isPrevButtonDisabled:X,grid:le,nextPage:se,prevPage:pe,formatter:Pe}=qb({locale:T,placeholder:K,minValue:h,maxValue:d,disabled:r,yearsPerPage:_,isYearDisabled:c,isYearUnavailable:l,calendarLabel:u,nextPage:v,prevPage:y}),{isInvalid:$,isSelected:B,highlightedRange:J,isSelectionStart:W,isSelectionEnd:U,isHighlightedStart:ne,isHighlightedEnd:x,isYearDisabled:M}=F8({start:L,end:ee,isYearDisabled:ge,isYearUnavailable:we,focusedValue:Q,allowNonContiguousRanges:g,fixedDate:b,maximumYears:w});Se(te,H=>{const oe=O(H);!oe.start&&!L.value||oe.start&&L.value&&ft(oe.start,L.value)||(L.value=oe.start?.copy?.()),!oe.end&&!ee.value||oe.end&&ee.value&&ft(oe.end,ee.value)||(ee.value=oe.end?.copy?.())}),Se(L,H=>{H&&!ft(H,K.value)&&ce(H),a("update:startValue",H)}),Se([L,ee],([H,oe])=>{const ae=te.value;if(!(ae&&ae.start&&ae.end&&H&&oe&&ft(ae.start,H)&&ft(ae.end,oe)))if(z.value=!0,oe&&H){const F=oe.year<H.year?{start:oe.copy(),end:H.copy()}:{start:H.copy(),end:oe.copy()};te.value={start:F.start,end:F.end},z.value=!1,q.value={start:F.start.copy(),end:F.end.copy()}}else te.value=H?{start:H.copy(),end:void 0}:{start:oe?.copy(),end:void 0}});const N=Qa();return Kt(P,"keydown",H=>{H.key===N.ESCAPE&&z.value&&(L.value=q.value.start?.copy(),ee.value=q.value.end?.copy())}),H8({isYearUnavailable:we,startValue:L,endValue:ee,formatter:Pe,modelValue:D,placeholder:K,disabled:r,initialFocus:s,grid:le,readonly:o,preventDeselect:i,fullCalendarLabel:ue,headingValue:be,headingId:I,isInvalid:$,isYearDisabled:M,allowNonContiguousRanges:g,highlightedRange:J,focusedValue:Q,lastPressedDateValue:Y,isSelected:B,isSelectionEnd:U,isSelectionStart:W,isNextButtonDisabled:me,isPrevButtonDisabled:X,nextPage:se,prevPage:pe,parentElement:P,onPlaceholderChange:ce,locale:T,dir:k,isHighlightedStart:ne,isHighlightedEnd:x,fixedDate:b,maximumYears:w,minValue:h,maxValue:d,yearsPerPage:_}),Xe(()=>{s.value&&is(P.value)}),(H,oe)=>(C(),R(f(fe),{ref_key:"primitiveElement",ref:A,as:H.as,"as-child":H.asChild,"aria-label":f(ue),"data-readonly":f(o)?"":void 0,"data-disabled":f(r)?"":void 0,"data-invalid":f($)?"":void 0,dir:f(k)},{default:E(()=>[ke("div",q8,[ke("div",B8,Me(f(ue)),1)]),j(H.$slots,"default",{date:f(K),grid:f(le),locale:f(T),modelValue:D.value})]),_:3},8,["as","as-child","aria-label","data-readonly","data-disabled","data-invalid","dir"]))}}),z8=V8,j8=Z({__name:"YearRangePickerCell",props:{date:{type:null,required:!0},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"td"}},setup(e){const t=vs();return(n,a)=>(C(),R(f(fe),{as:n.as,"as-child":n.asChild,role:"gridcell","aria-selected":f(t).isSelected(n.date)?!0:void 0,"aria-disabled":f(t).isYearDisabled(n.date)||f(t).isYearUnavailable?.(n.date),"data-disabled":f(t).isYearDisabled(n.date)?"":void 0},{default:E(()=>[j(n.$slots,"default")]),_:3},8,["as","as-child","aria-selected","aria-disabled","data-disabled"]))}}),W8=j8,U8=Z({__name:"YearRangePickerCellTrigger",props:{year:{type:null,required:!0},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"div"}},setup(e){const t=e,n=Qa(),a=vs(),{primitiveElement:r}=bn(),o=S(()=>(a.locale.value,a.formatter.fullYear(Pt(t.year)))),s=S(()=>(a.locale.value,a.formatter.custom(Pt(t.year),{year:"numeric"}))),i=S(()=>a.isYearUnavailable?.(t.year)??!1),l=S(()=>{const P=Ht(os(pa()),t.year.calendar);return ft(t.year,P)}),c=S(()=>a.isYearDisabled(t.year)),u=S(()=>!a.disabled.value&&ft(t.year,a.placeholder.value)),d=S(()=>a.isSelected(t.year)),h=S(()=>a.isSelectionStart(t.year)),p=S(()=>a.isSelectionEnd(t.year)),m=S(()=>a.isHighlightedStart(t.year)),v=S(()=>a.isHighlightedEnd(t.year)),y=S(()=>a.highlightedRange.value?D4(t.year,a.highlightedRange.value.start,a.highlightedRange.value.end):!1),g=S(()=>a.allowNonContiguousRanges.value);function b(P,k){if(!a.readonly.value&&!(a.isYearDisabled(k)||a.isYearUnavailable?.(k))){if(a.startValue.value&&a.highlightedRange.value===null){if(ft(k,a.startValue.value)&&!a.preventDeselect.value&&!a.endValue.value){a.startValue.value=void 0,a.onPlaceholderChange(k),a.lastPressedDateValue.value=k.copy();return}else if(!a.endValue.value){P.preventDefault(),a.lastPressedDateValue.value&&ft(a.lastPressedDateValue.value,k)&&(a.startValue.value=k.copy()),a.lastPressedDateValue.value=k.copy();return}}if(a.lastPressedDateValue.value=k.copy(),a.startValue.value&&a.endValue.value&&ft(a.startValue.value,a.endValue.value)&&ft(a.startValue.value,k)&&!a.preventDeselect.value){a.startValue.value=void 0,a.endValue.value=void 0,a.onPlaceholderChange(k);return}a.startValue.value?a.endValue.value?a.endValue.value&&a.startValue.value&&(a.fixedDate.value?a.fixedDate.value==="start"?k.compare(a.startValue.value)<0?a.startValue.value=k.copy():a.endValue.value=k.copy():a.fixedDate.value==="end"&&(k.compare(a.endValue.value)>0?a.endValue.value=k.copy():a.startValue.value=k.copy()):(a.endValue.value=void 0,a.startValue.value=k.copy())):a.endValue.value=k.copy():a.startValue.value=k.copy()}}function w(P){c.value||b(P,t.year)}function _(){c.value||a.isYearUnavailable?.(t.year)||(a.focusedValue.value=t.year.copy())}function A(P){if(c.value)return;P.preventDefault(),P.stopPropagation();const k=a.parentElement.value,T=a.dir.value==="rtl"?-1:1;switch(P.code){case n.ARROW_RIGHT:I(t.year,T);break;case n.ARROW_LEFT:I(t.year,-T);break;case n.ARROW_UP:I(t.year,-4);break;case n.ARROW_DOWN:I(t.year,4);break;case n.PAGE_UP:Y(-1);break;case n.PAGE_DOWN:Y(1);break;case n.ENTER:case n.SPACE_CODE:b(P,t.year)}function I(Q,z,te=0){if(te>48)return;const O=Q.add({years:z});if(a.minValue.value&&Jr(O).compare(a.minValue.value)<0||a.maxValue.value&&La(O).compare(a.maxValue.value)>0)return;const D=k.querySelector(`[data-value='${O.toString()}']`);if(!D){if(z>0){if(a.isNextButtonDisabled())return;a.nextPage()}else{if(a.isPrevButtonDisabled())return;a.prevPage()}Ve(()=>{I(Q,z,te+1)});return}if(D&&D.hasAttribute("data-disabled"))return I(O,z,te+1);a.onPlaceholderChange(O),D?.focus()}function Y(Q){const z=a.yearsPerPage.value,te=t.year.add({years:Q*z});if(!(a.minValue.value&&Jr(te).compare(a.minValue.value)<0||a.maxValue.value&&La(te).compare(a.maxValue.value)>0)){if(Q>0){if(a.isNextButtonDisabled())return;a.nextPage()}else{if(a.isPrevButtonDisabled())return;a.prevPage()}Ve(()=>{const O=k.querySelector(`[data-value='${te.toString()}']`);if(O&&!O.hasAttribute("data-disabled")){a.onPlaceholderChange(te),O?.focus();return}(!O||O.hasAttribute("data-disabled"))&&I(te,Q>0?1:-1,1)})}}}return(P,k)=>(C(),R(f(fe),{ref_key:"primitiveElement",ref:r,as:t.as,"as-child":t.asChild,role:"button","aria-label":s.value,"data-reka-year-range-picker-cell-trigger":"","aria-pressed":d.value&&(g.value||!i.value)?!0:void 0,"aria-disabled":c.value||i.value?!0:void 0,"data-highlighted":y.value&&(g.value||!i.value)?"":void 0,"data-selection-start":h.value?!0:void 0,"data-selection-end":p.value?!0:void 0,"data-highlighted-start":m.value?!0:void 0,"data-highlighted-end":v.value?!0:void 0,"data-selected":d.value&&(g.value||!i.value)?!0:void 0,"data-value":P.year.toString(),"data-disabled":c.value?"":void 0,"data-unavailable":i.value?"":void 0,"data-today":l.value?"":void 0,"data-focused":u.value?"":void 0,tabindex:u.value?0:c.value?void 0:-1,onClick:w,onFocusin:_,onMouseenter:_,onKeydown:[Ln(A,["up","down","left","right","space","enter","page-up","page-down"]),k[0]||(k[0]=Ln(Vt(()=>{},["prevent"]),["enter"]))]},{default:E(()=>[j(P.$slots,"default",{yearValue:o.value,disabled:c.value,today:l.value,selected:d.value,unavailable:i.value,highlighted:y.value&&(g.value||!i.value),highlightedStart:m.value,highlightedEnd:v.value,selectionStart:h.value,selectionEnd:p.value},()=>[qe(Me(o.value),1)])]),_:3},8,["as","as-child","aria-label","aria-pressed","aria-disabled","data-highlighted","data-selection-start","data-selection-end","data-highlighted-start","data-highlighted-end","data-selected","data-value","data-disabled","data-unavailable","data-today","data-focused","tabindex"]))}}),G8=U8,Y8=Z({__name:"YearRangePickerGrid",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"table"}},setup(e){const t=e,n=vs(),a=S(()=>n.disabled.value?!0:void 0),r=S(()=>n.readonly.value?!0:void 0);return(o,s)=>(C(),R(f(fe),de(t,{tabindex:"-1",role:"application","aria-labelledby":f(n).headingId,"aria-readonly":r.value,"aria-disabled":a.value,"data-readonly":r.value&&"","data-disabled":a.value&&""}),{default:E(()=>[j(o.$slots,"default")]),_:3},16,["aria-labelledby","aria-readonly","aria-disabled","data-readonly","data-disabled"]))}}),K8=Y8,X8=Z({__name:"YearRangePickerGridBody",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"tbody"}},setup(e){const t=e;return(n,a)=>(C(),R(f(fe),$e(Oe(t)),{default:E(()=>[j(n.$slots,"default")]),_:3},16))}}),J8=X8,Q8=Z({__name:"YearRangePickerGridRow",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"tr"}},setup(e){const t=e;return(n,a)=>(C(),R(f(fe),de(t,{role:"row"}),{default:E(()=>[j(n.$slots,"default")]),_:3},16))}}),Z8=Q8,eD=Z({__name:"YearRangePickerHeader",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"div"}},setup(e){const t=e;return(n,a)=>(C(),R(f(fe),$e(Oe(t)),{default:E(()=>[j(n.$slots,"default")]),_:3},16))}}),tD=eD,nD=Z({__name:"YearRangePickerHeading",props:{asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"div"}},setup(e){const t=e,n=vs();return(a,r)=>(C(),R(f(fe),de(t,{id:f(n).headingId,role:"heading","aria-level":"2","data-disabled":f(n).disabled.value?"":void 0}),{default:E(()=>[j(a.$slots,"default",{headingValue:f(n).headingValue.value},()=>[qe(Me(f(n).headingValue.value),1)])]),_:3},16,["id","data-disabled"]))}}),aD=nD,rD=Z({__name:"YearRangePickerNext",props:{nextPage:{type:Function,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"button"}},setup(e){const t=e,n=vs(),a=S(()=>n.disabled.value||n.isNextButtonDisabled(t.nextPage));function r(){a.value||n.nextPage(t.nextPage)}return(o,s)=>(C(),R(f(fe),{as:t.as,"as-child":t.asChild,"aria-label":"Next page",type:t.as==="button"?"button":void 0,"aria-disabled":a.value||void 0,"data-disabled":a.value||void 0,disabled:a.value,onClick:r},{default:E(()=>[j(o.$slots,"default",{disabled:a.value},()=>[s[0]||(s[0]=qe(" Next page "))])]),_:3},8,["as","as-child","type","aria-disabled","data-disabled","disabled"]))}}),oD=rD,sD=Z({__name:"YearRangePickerPrev",props:{prevPage:{type:Function,required:!1},asChild:{type:Boolean,required:!1},as:{type:null,required:!1,default:"button"}},setup(e){const t=e,n=vs(),a=S(()=>n.disabled.value||n.isPrevButtonDisabled(t.prevPage));function r(){a.value||n.prevPage(t.prevPage)}return(o,s)=>(C(),R(f(fe),{"aria-label":"Previous page",as:t.as,"as-child":t.asChild,type:t.as==="button"?"button":void 0,"aria-disabled":a.value||void 0,"data-disabled":a.value||void 0,disabled:a.value,onClick:r},{default:E(()=>[j(o.$slots,"default",{disabled:a.value},()=>[s[0]||(s[0]=qe(" Prev page "))])]),_:3},8,["as","as-child","type","aria-disabled","data-disabled","disabled"]))}}),iD=sD;const Bb=Symbol("nuxt-ui.portal-target");function Fi(e){const t=rt(Bb,void 0),n=S(()=>e.value===!0?t?.value:e.value),a=S(()=>typeof n.value=="boolean"?!n.value:!1),r=S(()=>typeof n.value=="boolean"?"body":n.value);return S(()=>({to:r.value,disabled:a.value}))}const[lD]=pt("UTheme","RootContext"),cD={defaults:S(()=>({}))};function uD(e=cD){return lD(e)}function dD(e){return e.replace(/-(\w)/g,(t,n)=>n.toUpperCase())}function fD(e){return e.replace(/[A-Z]/g,t=>`-${t.toLowerCase()}`)}function pD(e,t){return!e||!e.props?!1:e.props[dD(t)]!==void 0||e.props[fD(t)]!==void 0}function Fn(e,t){const n=Mt(),{defaults:a}=uD(),r=zt();return new Proxy(t,{get(o,s,i){if(s==="__v_isReactive")return!0;if(s==="__v_raw")return o;const l=Reflect.get(o,s,i);if(typeof s!="string")return l;const c=e.includes(".")?Qt(a.value,e):a.value[e];if(s==="ui"){const p=c?.ui;return!l&&!p?l:Un(l??{},p??{})}if(n&&pD(n.vnode,s))return l;const u=c?.[s];if(u!==void 0)return u;const d=n?.type?.props?.[s];return d&&Object.prototype.hasOwnProperty.call(d,"default")?l:(e.includes(".")?Qt(r.ui??{},e):r.ui?.[e])?.defaultVariants?.[s]},has:(o,s)=>Reflect.has(o,s),ownKeys:o=>Reflect.ownKeys(o),getOwnPropertyDescriptor:(o,s)=>Reflect.getOwnPropertyDescriptor(o,s)})}function Cr(e,t){const n=t?Xa(t):{};return S(()=>{const a=et(e)?e.value:e,r={...n};for(const o in a){const s=a[o];s!==void 0&&(r[o]=s)}return r})}const Hb=Symbol("nuxt-ui.toast-max");function hD(){const e=nS("toasts",()=>[]),t=rt(Hb,void 0),n=V(!1),a=[],r=()=>`${Date.now()}-${Math.random().toString(36).slice(2,9)}`;async function o(){if(!(n.value||a.length===0)){for(n.value=!0;a.length>0;){const u=a.shift();await Ve(),e.value=[...e.value,u].slice(-(t?.value??5))}n.value=!1}}function s(u){const d={id:r(),open:!0,...u},h=e.value.findIndex(p=>p.id===d.id);return h!==-1?(e.value[h]={...e.value[h],...d,_duplicate:(e.value[h]._duplicate||0)+1},d):(a.push(d),o(),d)}function i(u,d){const h=e.value.findIndex(p=>p.id===u);h!==-1&&(e.value[h]={...e.value[h],...d,duration:d.duration,open:!0,_updated:!0},Ve(()=>{const p=e.value.findIndex(m=>m.id===u);p!==-1&&e.value[p]._updated&&(e.value[p]={...e.value[p],_updated:void 0})}))}function l(u){const d=e.value.findIndex(h=>h.id===u);d!==-1&&e.value[d]._updated||(d!==-1&&(e.value[d]={...e.value[d],open:!1}),setTimeout(()=>{e.value=e.value.filter(h=>h.id!==u)},200))}function c(){e.value=[]}return{toasts:e,add:s,update:i,remove:l,clear:c}}var mD=/\s+/g,gD=e=>typeof e!="string"||!e?e:e.replace(mD," ").trim(),dc=(...e)=>{const t=[],n=a=>{if(!a&&a!==0&&a!==0n)return;if(Array.isArray(a)){for(let o=0,s=a.length;o<s;o++)n(a[o]);return}const r=typeof a;if(r==="string"||r==="number"||r==="bigint"){if(r==="number"&&a!==a)return;t.push(String(a))}else if(r==="object"){const o=Object.keys(a);for(let s=0,i=o.length;s<i;s++){const l=o[s];a[l]&&t.push(l)}}};for(let a=0,r=e.length;a<r;a++){const o=e[a];o!=null&&n(o)}return t.length>0?gD(t.join(" ")):void 0},xg=e=>e===!1?"false":e===!0?"true":e===0?"0":e,gn=e=>{if(!e||typeof e!="object")return!0;for(const t in e)return!1;return!0},vD=(e,t)=>{if(e===t)return!0;if(!e||!t)return!1;const n=Object.keys(e),a=Object.keys(t);if(n.length!==a.length)return!1;for(let r=0;r<n.length;r++){const o=n[r];if(!a.includes(o)||e[o]!==t[o])return!1}return!0},yD=(e,t)=>{for(const n in t)if(Object.prototype.hasOwnProperty.call(t,n)){const a=t[n];n in e?e[n]=dc(e[n],a):e[n]=a}return e},Vb=(e,t)=>{for(let n=0;n<e.length;n++){const a=e[n];Array.isArray(a)?Vb(a,t):a&&t.push(a)}},zb=(...e)=>{const t=[];Vb(e,t);const n=[];for(let a=0;a<t.length;a++)t[a]&&n.push(t[a]);return n},lf=(e,t)=>{const n={};for(const a in e){const r=e[a];if(a in t){const o=t[a];Array.isArray(r)||Array.isArray(o)?n[a]=zb(o,r):typeof r=="object"&&typeof o=="object"&&r&&o?n[a]=lf(r,o):n[a]=o+" "+r}else n[a]=r}for(const a in t)a in e||(n[a]=t[a]);return n},bD={twMerge:!0,twMergeConfig:{}};function wD(){let e=null,t={},n=!1;return{get cachedTwMerge(){return e},set cachedTwMerge(a){e=a},get cachedTwMergeConfig(){return t},set cachedTwMergeConfig(a){t=a},get didTwMergeConfigChange(){return n},set didTwMergeConfigChange(a){n=a},reset(){e=null,t={},n=!1}}}var Sa=wD(),_D=e=>{const t=(a,r)=>{const{extend:o=null,slots:s={},variants:i={},compoundVariants:l=[],compoundSlots:c=[],defaultVariants:u={}}=a,d={...bD,...r},h=o?.base?dc(o.base,a?.base):a?.base,p=o?.variants&&!gn(o.variants)?lf(i,o.variants):i,m=o?.defaultVariants&&!gn(o.defaultVariants)?{...o.defaultVariants,...u}:u;!gn(d.twMergeConfig)&&!vD(d.twMergeConfig,Sa.cachedTwMergeConfig)&&(Sa.didTwMergeConfigChange=!0,Sa.cachedTwMergeConfig=d.twMergeConfig);const v=gn(o?.slots),y=gn(s)?{}:{base:dc(a?.base,v&&o?.base),...s},g=v?y:yD({...o?.slots},gn(y)?{base:a?.base}:y),b=gn(o?.compoundVariants)?l:zb(o?.compoundVariants,l),w=A=>{if(gn(p)&&gn(s)&&v)return e(h,A?.class,A?.className)(d);if(b&&!Array.isArray(b))throw new TypeError(`The "compoundVariants" prop must be an array. Received: ${typeof b}`);if(c&&!Array.isArray(c))throw new TypeError(`The "compoundSlots" prop must be an array. Received: ${typeof c}`);const P=(O,D=p,q=null,G=null)=>{const L=D[O];if(!L||gn(L))return null;const ee=G?.[O]??A?.[O];if(ee===null)return null;const K=xg(ee);if(typeof K=="object")return null;const ce=m?.[O],ue=K??xg(ce);return L[ue||"false"]},k=()=>{if(!p)return null;const O=Object.keys(p),D=[];for(let q=0;q<O.length;q++){const G=P(O[q],p);G&&D.push(G)}return D},T=(O,D)=>{if(!p||typeof p!="object")return null;const q=[];for(const G in p){const L=P(G,p,O,D),ee=O==="base"&&typeof L=="string"?L:L&&L[O];ee&&q.push(ee)}return q},I={};for(const O in A){const D=A[O];D!==void 0&&(I[O]=D)}const Y=(O,D)=>{const q=typeof A?.[O]=="object"?{[O]:A[O]?.initial}:{};return{...m,...I,...q,...D}},Q=(O=[],D)=>{const q=[],G=O.length;for(let L=0;L<G;L++){const{class:ee,className:K,...ce}=O[L];let ue=!0;const be=Y(null,D);for(const ge in ce){const we=ce[ge],me=be[ge];if(Array.isArray(we)){if(!we.includes(me)){ue=!1;break}}else{if((we==null||we===!1)&&(me==null||me===!1))continue;if(me!==we){ue=!1;break}}}ue&&(ee&&q.push(ee),K&&q.push(K))}return q},z=O=>{const D=Q(b,O);if(!Array.isArray(D))return D;const q={},G=e;for(let L=0;L<D.length;L++){const ee=D[L];if(typeof ee=="string")q.base=G(q.base,ee)(d);else if(typeof ee=="object")for(const K in ee)q[K]=G(q[K],ee[K])(d)}return q},te=O=>{if(c.length<1)return null;const D={},q=Y(null,O);for(let G=0;G<c.length;G++){const{slots:L=[],class:ee,className:K,...ce}=c[G];if(!gn(ce)){let ue=!0;for(const be in ce){const ge=q[be],we=ce[be];if(ge===void 0||(Array.isArray(we)?!we.includes(ge):we!==ge)){ue=!1;break}}if(!ue)continue}for(let ue=0;ue<L.length;ue++){const be=L[ue];D[be]||(D[be]=[]),D[be].push([ee,K])}}return D};if(!gn(s)||!v){const O={};if(typeof g=="object"&&!gn(g)){const D=e;for(const q in g)O[q]=G=>{const L=z(G),ee=te(G);return D(g[q],T(q,G),L?L[q]:void 0,ee?ee[q]:void 0,G?.class,G?.className)(d)}}return O}return e(h,k(),Q(b),A?.class,A?.className)(d)},_=()=>{if(!(!p||typeof p!="object"))return Object.keys(p)};return w.variantKeys=_(),w.extend=o,w.base=h,w.slots=g,w.variants=p,w.defaultVariants=m,w.compoundSlots=c,w.compoundVariants=b,w};return{tv:t,createTV:a=>(r,o)=>t(r,o?lf(a,o):a)}};const kD=(e,t)=>{const n=new Array(e.length+t.length);for(let a=0;a<e.length;a++)n[a]=e[a];for(let a=0;a<t.length;a++)n[e.length+a]=t[a];return n},CD=(e,t)=>({classGroupId:e,validator:t}),jb=(e=new Map,t=null,n)=>({nextPart:e,validators:t,classGroupId:n}),fc="-",Ag=[],SD="arbitrary..",xD=e=>{const t=PD(e),{conflictingClassGroups:n,conflictingClassGroupModifiers:a}=e;return{getClassGroupId:s=>{if(s.startsWith("[")&&s.endsWith("]"))return AD(s);const i=s.split(fc),l=i[0]===""&&i.length>1?1:0;return Wb(i,l,t)},getConflictingClassGroupIds:(s,i)=>{if(i){const l=a[s],c=n[s];return l?c?kD(c,l):l:c||Ag}return n[s]||Ag}}},Wb=(e,t,n)=>{if(e.length-t===0)return n.classGroupId;const r=e[t],o=n.nextPart.get(r);if(o){const c=Wb(e,t+1,o);if(c)return c}const s=n.validators;if(s===null)return;const i=t===0?e.join(fc):e.slice(t).join(fc),l=s.length;for(let c=0;c<l;c++){const u=s[c];if(u.validator(i))return u.classGroupId}},AD=e=>e.slice(1,-1).indexOf(":")===-1?void 0:(()=>{const t=e.slice(1,-1),n=t.indexOf(":"),a=t.slice(0,n);return a?SD+a:void 0})(),PD=e=>{const{theme:t,classGroups:n}=e;return MD(n,t)},MD=(e,t)=>{const n=jb();for(const a in e){const r=e[a];Lp(r,n,a,t)}return n},Lp=(e,t,n,a)=>{const r=e.length;for(let o=0;o<r;o++){const s=e[o];TD(s,t,n,a)}},TD=(e,t,n,a)=>{if(typeof e=="string"){ID(e,t,n);return}if(typeof e=="function"){DD(e,t,n,a);return}ED(e,t,n,a)},ID=(e,t,n)=>{const a=e===""?t:Ub(t,e);a.classGroupId=n},DD=(e,t,n,a)=>{if($D(e)){Lp(e(a),t,n,a);return}t.validators===null&&(t.validators=[]),t.validators.push(CD(n,e))},ED=(e,t,n,a)=>{const r=Object.entries(e),o=r.length;for(let s=0;s<o;s++){const[i,l]=r[s];Lp(l,Ub(t,i),n,a)}},Ub=(e,t)=>{let n=e;const a=t.split(fc),r=a.length;for(let o=0;o<r;o++){const s=a[o];let i=n.nextPart.get(s);i||(i=jb(),n.nextPart.set(s,i)),n=i}return n},$D=e=>"isThemeGetter"in e&&e.isThemeGetter===!0,RD=e=>{if(e<1)return{get:()=>{},set:()=>{}};let t=0,n=Object.create(null),a=Object.create(null);const r=(o,s)=>{n[o]=s,t++,t>e&&(t=0,a=n,n=Object.create(null))};return{get(o){let s=n[o];if(s!==void 0)return s;if((s=a[o])!==void 0)return r(o,s),s},set(o,s){o in n?n[o]=s:r(o,s)}}},cf="!",Pg=":",LD=[],Mg=(e,t,n,a,r)=>({modifiers:e,hasImportantModifier:t,baseClassName:n,maybePostfixModifierPosition:a,isExternal:r}),OD=e=>{const{prefix:t,experimentalParseClassName:n}=e;let a=r=>{const o=[];let s=0,i=0,l=0,c;const u=r.length;for(let v=0;v<u;v++){const y=r[v];if(s===0&&i===0){if(y===Pg){o.push(r.slice(l,v)),l=v+1;continue}if(y==="/"){c=v;continue}}y==="["?s++:y==="]"?s--:y==="("?i++:y===")"&&i--}const d=o.length===0?r:r.slice(l);let h=d,p=!1;d.endsWith(cf)?(h=d.slice(0,-1),p=!0):d.startsWith(cf)&&(h=d.slice(1),p=!0);const m=c&&c>l?c-l:void 0;return Mg(o,p,h,m)};if(t){const r=t+Pg,o=a;a=s=>s.startsWith(r)?o(s.slice(r.length)):Mg(LD,!1,s,void 0,!0)}if(n){const r=a;a=o=>n({className:o,parseClassName:r})}return a},ND=e=>{const t=new Map;return e.orderSensitiveModifiers.forEach((n,a)=>{t.set(n,1e6+a)}),n=>{const a=[];let r=[];for(let o=0;o<n.length;o++){const s=n[o],i=s[0]==="[",l=t.has(s);i||l?(r.length>0&&(r.sort(),a.push(...r),r=[]),a.push(s)):r.push(s)}return r.length>0&&(r.sort(),a.push(...r)),a}},FD=e=>({cache:RD(e.cacheSize),parseClassName:OD(e),sortModifiers:ND(e),postfixLookupClassGroupIds:qD(e),...xD(e)}),qD=e=>{const t=Object.create(null),n=e.postfixLookupClassGroups;if(n)for(let a=0;a<n.length;a++)t[n[a]]=!0;return t},BD=/\s+/,HD=(e,t)=>{const{parseClassName:n,getClassGroupId:a,getConflictingClassGroupIds:r,sortModifiers:o,postfixLookupClassGroupIds:s}=t,i=[],l=e.trim().split(BD);let c="";for(let u=l.length-1;u>=0;u-=1){const d=l[u],{isExternal:h,modifiers:p,hasImportantModifier:m,baseClassName:v,maybePostfixModifierPosition:y}=n(d);if(h){c=d+(c.length>0?" "+c:c);continue}let g=!!y,b;if(g){const k=v.substring(0,y);b=a(k);const T=b&&s[b]?a(v):void 0;T&&T!==b&&(b=T,g=!1)}else b=a(v);if(!b){if(!g){c=d+(c.length>0?" "+c:c);continue}if(b=a(v),!b){c=d+(c.length>0?" "+c:c);continue}g=!1}const w=p.length===0?"":p.length===1?p[0]:o(p).join(":"),_=m?w+cf:w,A=_+b;if(i.indexOf(A)>-1)continue;i.push(A);const P=r(b,g);for(let k=0;k<P.length;++k){const T=P[k];i.push(_+T)}c=d+(c.length>0?" "+c:c)}return c},VD=(...e)=>{let t=0,n,a,r="";for(;t<e.length;)(n=e[t++])&&(a=Gb(n))&&(r&&(r+=" "),r+=a);return r},Gb=e=>{if(typeof e=="string")return e;let t,n="";for(let a=0;a<e.length;a++)e[a]&&(t=Gb(e[a]))&&(n&&(n+=" "),n+=t);return n},uf=(e,...t)=>{let n,a,r,o;const s=l=>{const c=t.reduce((u,d)=>d(u),e());return n=FD(c),a=n.cache.get,r=n.cache.set,o=i,i(l)},i=l=>{const c=a(l);if(c)return c;const u=HD(l,n);return r(l,u),u};return o=s,(...l)=>o(VD(...l))},zD=[],Ot=e=>{const t=n=>n[e]||zD;return t.isThemeGetter=!0,t},Yb=/^\[(?:(\w[\w-]*):)?(.+)\]$/i,Kb=/^\((?:(\w[\w-]*):)?(.+)\)$/i,jD=/^\d+(?:\.\d+)?\/\d+(?:\.\d+)?$/,WD=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,UD=/\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/,GD=/^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/,YD=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,KD=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,ar=e=>jD.test(e),Ue=e=>!!e&&!Number.isNaN(Number(e)),Xn=e=>!!e&&Number.isInteger(Number(e)),ad=e=>e.endsWith("%")&&Ue(e.slice(0,-1)),ba=e=>WD.test(e),Xb=()=>!0,XD=e=>UD.test(e)&&!GD.test(e),Op=()=>!1,JD=e=>YD.test(e),QD=e=>KD.test(e),ZD=e=>!Ie(e)&&!De(e),eE=e=>e.startsWith("@container")&&(e[10]==="/"&&e[11]!==void 0||e[11]==="s"&&e[16]!==void 0&&e.startsWith("-size/",10)||e[11]==="n"&&e[18]!==void 0&&e.startsWith("-normal/",10)),tE=e=>Sr(e,Zb,Op),Ie=e=>Yb.test(e),Or=e=>Sr(e,e2,XD),Tg=e=>Sr(e,cE,Ue),nE=e=>Sr(e,n2,Xb),aE=e=>Sr(e,t2,Op),Ig=e=>Sr(e,Jb,Op),rE=e=>Sr(e,Qb,QD),ol=e=>Sr(e,a2,JD),De=e=>Kb.test(e),Ts=e=>so(e,e2),oE=e=>so(e,t2),Dg=e=>so(e,Jb),sE=e=>so(e,Zb),iE=e=>so(e,Qb),sl=e=>so(e,a2,!0),lE=e=>so(e,n2,!0),Sr=(e,t,n)=>{const a=Yb.exec(e);return a?a[1]?t(a[1]):n(a[2]):!1},so=(e,t,n=!1)=>{const a=Kb.exec(e);return a?a[1]?t(a[1]):n:!1},Jb=e=>e==="position"||e==="percentage",Qb=e=>e==="image"||e==="url",Zb=e=>e==="length"||e==="size"||e==="bg-size",e2=e=>e==="length",cE=e=>e==="number",t2=e=>e==="family-name",n2=e=>e==="number"||e==="weight",a2=e=>e==="shadow",df=()=>{const e=Ot("color"),t=Ot("font"),n=Ot("text"),a=Ot("font-weight"),r=Ot("tracking"),o=Ot("leading"),s=Ot("breakpoint"),i=Ot("container"),l=Ot("spacing"),c=Ot("radius"),u=Ot("shadow"),d=Ot("inset-shadow"),h=Ot("text-shadow"),p=Ot("drop-shadow"),m=Ot("blur"),v=Ot("perspective"),y=Ot("aspect"),g=Ot("ease"),b=Ot("animate"),w=()=>["auto","avoid","all","avoid-page","page","left","right","column"],_=()=>["center","top","bottom","left","right","top-left","left-top","top-right","right-top","bottom-right","right-bottom","bottom-left","left-bottom"],A=()=>[..._(),De,Ie],P=()=>["auto","hidden","clip","visible","scroll"],k=()=>["auto","contain","none"],T=()=>[De,Ie,l],I=()=>[ar,"full","auto",...T()],Y=()=>[Xn,"none","subgrid",De,Ie],Q=()=>["auto",{span:["full",Xn,De,Ie]},Xn,De,Ie],z=()=>[Xn,"auto",De,Ie],te=()=>["auto","min","max","fr",De,Ie],O=()=>["start","end","center","between","around","evenly","stretch","baseline","center-safe","end-safe"],D=()=>["start","end","center","stretch","center-safe","end-safe"],q=()=>["auto",...T()],G=()=>[ar,"auto","full","dvw","dvh","lvw","lvh","svw","svh","min","max","fit",...T()],L=()=>[ar,"screen","full","dvw","lvw","svw","min","max","fit",...T()],ee=()=>[ar,"screen","full","lh","dvh","lvh","svh","min","max","fit",...T()],K=()=>[e,De,Ie],ce=()=>[..._(),Dg,Ig,{position:[De,Ie]}],ue=()=>["no-repeat",{repeat:["","x","y","space","round"]}],be=()=>["auto","cover","contain",sE,tE,{size:[De,Ie]}],ge=()=>[ad,Ts,Or],we=()=>["","none","full",c,De,Ie],me=()=>["",Ue,Ts,Or],X=()=>["solid","dashed","dotted","double"],le=()=>["normal","multiply","screen","overlay","darken","lighten","color-dodge","color-burn","hard-light","soft-light","difference","exclusion","hue","saturation","color","luminosity"],se=()=>[Ue,ad,Dg,Ig],pe=()=>["","none",m,De,Ie],Pe=()=>["none",Ue,De,Ie],$=()=>["none",Ue,De,Ie],B=()=>[Ue,De,Ie],J=()=>[ar,"full",...T()];return{cacheSize:500,theme:{animate:["spin","ping","pulse","bounce"],aspect:["video"],blur:[ba],breakpoint:[ba],color:[Xb],container:[ba],"drop-shadow":[ba],ease:["in","out","in-out"],font:[ZD],"font-weight":["thin","extralight","light","normal","medium","semibold","bold","extrabold","black"],"inset-shadow":[ba],leading:["none","tight","snug","normal","relaxed","loose"],perspective:["dramatic","near","normal","midrange","distant","none"],radius:[ba],shadow:[ba],spacing:["px",Ue],text:[ba],"text-shadow":[ba],tracking:["tighter","tight","normal","wide","wider","widest"]},classGroups:{aspect:[{aspect:["auto","square",ar,Ie,De,y]}],container:["container"],"container-type":[{"@container":["","normal","size",De,Ie]}],"container-named":[eE],columns:[{columns:[Ue,Ie,De,i]}],"break-after":[{"break-after":w()}],"break-before":[{"break-before":w()}],"break-inside":[{"break-inside":["auto","avoid","avoid-page","avoid-column"]}],"box-decoration":[{"box-decoration":["slice","clone"]}],box:[{box:["border","content"]}],display:["block","inline-block","inline","flex","inline-flex","table","inline-table","table-caption","table-cell","table-column","table-column-group","table-footer-group","table-header-group","table-row-group","table-row","flow-root","grid","inline-grid","contents","list-item","hidden"],sr:["sr-only","not-sr-only"],float:[{float:["right","left","none","start","end"]}],clear:[{clear:["left","right","both","none","start","end"]}],isolation:["isolate","isolation-auto"],"object-fit":[{object:["contain","cover","fill","none","scale-down"]}],"object-position":[{object:A()}],overflow:[{overflow:P()}],"overflow-x":[{"overflow-x":P()}],"overflow-y":[{"overflow-y":P()}],overscroll:[{overscroll:k()}],"overscroll-x":[{"overscroll-x":k()}],"overscroll-y":[{"overscroll-y":k()}],position:["static","fixed","absolute","relative","sticky"],inset:[{inset:I()}],"inset-x":[{"inset-x":I()}],"inset-y":[{"inset-y":I()}],start:[{"inset-s":I(),start:I()}],end:[{"inset-e":I(),end:I()}],"inset-bs":[{"inset-bs":I()}],"inset-be":[{"inset-be":I()}],top:[{top:I()}],right:[{right:I()}],bottom:[{bottom:I()}],left:[{left:I()}],visibility:["visible","invisible","collapse"],z:[{z:[Xn,"auto",De,Ie]}],basis:[{basis:[ar,"full","auto",i,...T()]}],"flex-direction":[{flex:["row","row-reverse","col","col-reverse"]}],"flex-wrap":[{flex:["nowrap","wrap","wrap-reverse"]}],flex:[{flex:[Ue,ar,"auto","initial","none",Ie]}],grow:[{grow:["",Ue,De,Ie]}],shrink:[{shrink:["",Ue,De,Ie]}],order:[{order:[Xn,"first","last","none",De,Ie]}],"grid-cols":[{"grid-cols":Y()}],"col-start-end":[{col:Q()}],"col-start":[{"col-start":z()}],"col-end":[{"col-end":z()}],"grid-rows":[{"grid-rows":Y()}],"row-start-end":[{row:Q()}],"row-start":[{"row-start":z()}],"row-end":[{"row-end":z()}],"grid-flow":[{"grid-flow":["row","col","dense","row-dense","col-dense"]}],"auto-cols":[{"auto-cols":te()}],"auto-rows":[{"auto-rows":te()}],gap:[{gap:T()}],"gap-x":[{"gap-x":T()}],"gap-y":[{"gap-y":T()}],"justify-content":[{justify:[...O(),"normal"]}],"justify-items":[{"justify-items":[...D(),"normal"]}],"justify-self":[{"justify-self":["auto",...D()]}],"align-content":[{content:["normal",...O()]}],"align-items":[{items:[...D(),{baseline:["","last"]}]}],"align-self":[{self:["auto",...D(),{baseline:["","last"]}]}],"place-content":[{"place-content":O()}],"place-items":[{"place-items":[...D(),"baseline"]}],"place-self":[{"place-self":["auto",...D()]}],p:[{p:T()}],px:[{px:T()}],py:[{py:T()}],ps:[{ps:T()}],pe:[{pe:T()}],pbs:[{pbs:T()}],pbe:[{pbe:T()}],pt:[{pt:T()}],pr:[{pr:T()}],pb:[{pb:T()}],pl:[{pl:T()}],m:[{m:q()}],mx:[{mx:q()}],my:[{my:q()}],ms:[{ms:q()}],me:[{me:q()}],mbs:[{mbs:q()}],mbe:[{mbe:q()}],mt:[{mt:q()}],mr:[{mr:q()}],mb:[{mb:q()}],ml:[{ml:q()}],"space-x":[{"space-x":T()}],"space-x-reverse":["space-x-reverse"],"space-y":[{"space-y":T()}],"space-y-reverse":["space-y-reverse"],size:[{size:G()}],"inline-size":[{inline:["auto",...L()]}],"min-inline-size":[{"min-inline":["auto",...L()]}],"max-inline-size":[{"max-inline":["none",...L()]}],"block-size":[{block:["auto",...ee()]}],"min-block-size":[{"min-block":["auto",...ee()]}],"max-block-size":[{"max-block":["none",...ee()]}],w:[{w:[i,"screen",...G()]}],"min-w":[{"min-w":[i,"screen","none",...G()]}],"max-w":[{"max-w":[i,"screen","none","prose",{screen:[s]},...G()]}],h:[{h:["screen","lh",...G()]}],"min-h":[{"min-h":["screen","lh","none",...G()]}],"max-h":[{"max-h":["screen","lh",...G()]}],"font-size":[{text:["base",n,Ts,Or]}],"font-smoothing":["antialiased","subpixel-antialiased"],"font-style":["italic","not-italic"],"font-weight":[{font:[a,lE,nE]}],"font-stretch":[{"font-stretch":["ultra-condensed","extra-condensed","condensed","semi-condensed","normal","semi-expanded","expanded","extra-expanded","ultra-expanded",ad,Ie]}],"font-family":[{font:[oE,aE,t]}],"font-features":[{"font-features":[Ie]}],"fvn-normal":["normal-nums"],"fvn-ordinal":["ordinal"],"fvn-slashed-zero":["slashed-zero"],"fvn-figure":["lining-nums","oldstyle-nums"],"fvn-spacing":["proportional-nums","tabular-nums"],"fvn-fraction":["diagonal-fractions","stacked-fractions"],tracking:[{tracking:[r,De,Ie]}],"line-clamp":[{"line-clamp":[Ue,"none",De,Tg]}],leading:[{leading:[o,...T()]}],"list-image":[{"list-image":["none",De,Ie]}],"list-style-position":[{list:["inside","outside"]}],"list-style-type":[{list:["disc","decimal","none",De,Ie]}],"text-alignment":[{text:["left","center","right","justify","start","end"]}],"placeholder-color":[{placeholder:K()}],"text-color":[{text:K()}],"text-decoration":["underline","overline","line-through","no-underline"],"text-decoration-style":[{decoration:[...X(),"wavy"]}],"text-decoration-thickness":[{decoration:[Ue,"from-font","auto",De,Or]}],"text-decoration-color":[{decoration:K()}],"underline-offset":[{"underline-offset":[Ue,"auto",De,Ie]}],"text-transform":["uppercase","lowercase","capitalize","normal-case"],"text-overflow":["truncate","text-ellipsis","text-clip"],"text-wrap":[{text:["wrap","nowrap","balance","pretty"]}],indent:[{indent:T()}],"tab-size":[{tab:[Xn,De,Ie]}],"vertical-align":[{align:["baseline","top","middle","bottom","text-top","text-bottom","sub","super",De,Ie]}],whitespace:[{whitespace:["normal","nowrap","pre","pre-line","pre-wrap","break-spaces"]}],break:[{break:["normal","words","all","keep"]}],wrap:[{wrap:["break-word","anywhere","normal"]}],hyphens:[{hyphens:["none","manual","auto"]}],content:[{content:["none",De,Ie]}],"bg-attachment":[{bg:["fixed","local","scroll"]}],"bg-clip":[{"bg-clip":["border","padding","content","text"]}],"bg-origin":[{"bg-origin":["border","padding","content"]}],"bg-position":[{bg:ce()}],"bg-repeat":[{bg:ue()}],"bg-size":[{bg:be()}],"bg-image":[{bg:["none",{linear:[{to:["t","tr","r","br","b","bl","l","tl"]},Xn,De,Ie],radial:["",De,Ie],conic:[Xn,De,Ie]},iE,rE]}],"bg-color":[{bg:K()}],"gradient-from-pos":[{from:ge()}],"gradient-via-pos":[{via:ge()}],"gradient-to-pos":[{to:ge()}],"gradient-from":[{from:K()}],"gradient-via":[{via:K()}],"gradient-to":[{to:K()}],rounded:[{rounded:we()}],"rounded-s":[{"rounded-s":we()}],"rounded-e":[{"rounded-e":we()}],"rounded-t":[{"rounded-t":we()}],"rounded-r":[{"rounded-r":we()}],"rounded-b":[{"rounded-b":we()}],"rounded-l":[{"rounded-l":we()}],"rounded-ss":[{"rounded-ss":we()}],"rounded-se":[{"rounded-se":we()}],"rounded-ee":[{"rounded-ee":we()}],"rounded-es":[{"rounded-es":we()}],"rounded-tl":[{"rounded-tl":we()}],"rounded-tr":[{"rounded-tr":we()}],"rounded-br":[{"rounded-br":we()}],"rounded-bl":[{"rounded-bl":we()}],"border-w":[{border:me()}],"border-w-x":[{"border-x":me()}],"border-w-y":[{"border-y":me()}],"border-w-s":[{"border-s":me()}],"border-w-e":[{"border-e":me()}],"border-w-bs":[{"border-bs":me()}],"border-w-be":[{"border-be":me()}],"border-w-t":[{"border-t":me()}],"border-w-r":[{"border-r":me()}],"border-w-b":[{"border-b":me()}],"border-w-l":[{"border-l":me()}],"divide-x":[{"divide-x":me()}],"divide-x-reverse":["divide-x-reverse"],"divide-y":[{"divide-y":me()}],"divide-y-reverse":["divide-y-reverse"],"border-style":[{border:[...X(),"hidden","none"]}],"divide-style":[{divide:[...X(),"hidden","none"]}],"border-color":[{border:K()}],"border-color-x":[{"border-x":K()}],"border-color-y":[{"border-y":K()}],"border-color-s":[{"border-s":K()}],"border-color-e":[{"border-e":K()}],"border-color-bs":[{"border-bs":K()}],"border-color-be":[{"border-be":K()}],"border-color-t":[{"border-t":K()}],"border-color-r":[{"border-r":K()}],"border-color-b":[{"border-b":K()}],"border-color-l":[{"border-l":K()}],"divide-color":[{divide:K()}],"outline-style":[{outline:[...X(),"none","hidden"]}],"outline-offset":[{"outline-offset":[Ue,De,Ie]}],"outline-w":[{outline:["",Ue,Ts,Or]}],"outline-color":[{outline:K()}],shadow:[{shadow:["","none",u,sl,ol]}],"shadow-color":[{shadow:K()}],"inset-shadow":[{"inset-shadow":["none",d,sl,ol]}],"inset-shadow-color":[{"inset-shadow":K()}],"ring-w":[{ring:me()}],"ring-w-inset":["ring-inset"],"ring-color":[{ring:K()}],"ring-offset-w":[{"ring-offset":[Ue,Or]}],"ring-offset-color":[{"ring-offset":K()}],"inset-ring-w":[{"inset-ring":me()}],"inset-ring-color":[{"inset-ring":K()}],"text-shadow":[{"text-shadow":["none",h,sl,ol]}],"text-shadow-color":[{"text-shadow":K()}],opacity:[{opacity:[Ue,De,Ie]}],"mix-blend":[{"mix-blend":[...le(),"plus-darker","plus-lighter"]}],"bg-blend":[{"bg-blend":le()}],"mask-clip":[{"mask-clip":["border","padding","content","fill","stroke","view"]},"mask-no-clip"],"mask-composite":[{mask:["add","subtract","intersect","exclude"]}],"mask-image-linear-pos":[{"mask-linear":[Ue]}],"mask-image-linear-from-pos":[{"mask-linear-from":se()}],"mask-image-linear-to-pos":[{"mask-linear-to":se()}],"mask-image-linear-from-color":[{"mask-linear-from":K()}],"mask-image-linear-to-color":[{"mask-linear-to":K()}],"mask-image-t-from-pos":[{"mask-t-from":se()}],"mask-image-t-to-pos":[{"mask-t-to":se()}],"mask-image-t-from-color":[{"mask-t-from":K()}],"mask-image-t-to-color":[{"mask-t-to":K()}],"mask-image-r-from-pos":[{"mask-r-from":se()}],"mask-image-r-to-pos":[{"mask-r-to":se()}],"mask-image-r-from-color":[{"mask-r-from":K()}],"mask-image-r-to-color":[{"mask-r-to":K()}],"mask-image-b-from-pos":[{"mask-b-from":se()}],"mask-image-b-to-pos":[{"mask-b-to":se()}],"mask-image-b-from-color":[{"mask-b-from":K()}],"mask-image-b-to-color":[{"mask-b-to":K()}],"mask-image-l-from-pos":[{"mask-l-from":se()}],"mask-image-l-to-pos":[{"mask-l-to":se()}],"mask-image-l-from-color":[{"mask-l-from":K()}],"mask-image-l-to-color":[{"mask-l-to":K()}],"mask-image-x-from-pos":[{"mask-x-from":se()}],"mask-image-x-to-pos":[{"mask-x-to":se()}],"mask-image-x-from-color":[{"mask-x-from":K()}],"mask-image-x-to-color":[{"mask-x-to":K()}],"mask-image-y-from-pos":[{"mask-y-from":se()}],"mask-image-y-to-pos":[{"mask-y-to":se()}],"mask-image-y-from-color":[{"mask-y-from":K()}],"mask-image-y-to-color":[{"mask-y-to":K()}],"mask-image-radial":[{"mask-radial":[De,Ie]}],"mask-image-radial-from-pos":[{"mask-radial-from":se()}],"mask-image-radial-to-pos":[{"mask-radial-to":se()}],"mask-image-radial-from-color":[{"mask-radial-from":K()}],"mask-image-radial-to-color":[{"mask-radial-to":K()}],"mask-image-radial-shape":[{"mask-radial":["circle","ellipse"]}],"mask-image-radial-size":[{"mask-radial":[{closest:["side","corner"],farthest:["side","corner"]}]}],"mask-image-radial-pos":[{"mask-radial-at":_()}],"mask-image-conic-pos":[{"mask-conic":[Ue]}],"mask-image-conic-from-pos":[{"mask-conic-from":se()}],"mask-image-conic-to-pos":[{"mask-conic-to":se()}],"mask-image-conic-from-color":[{"mask-conic-from":K()}],"mask-image-conic-to-color":[{"mask-conic-to":K()}],"mask-mode":[{mask:["alpha","luminance","match"]}],"mask-origin":[{"mask-origin":["border","padding","content","fill","stroke","view"]}],"mask-position":[{mask:ce()}],"mask-repeat":[{mask:ue()}],"mask-size":[{mask:be()}],"mask-type":[{"mask-type":["alpha","luminance"]}],"mask-image":[{mask:["none",De,Ie]}],filter:[{filter:["","none",De,Ie]}],blur:[{blur:pe()}],brightness:[{brightness:[Ue,De,Ie]}],contrast:[{contrast:[Ue,De,Ie]}],"drop-shadow":[{"drop-shadow":["","none",p,sl,ol]}],"drop-shadow-color":[{"drop-shadow":K()}],grayscale:[{grayscale:["",Ue,De,Ie]}],"hue-rotate":[{"hue-rotate":[Ue,De,Ie]}],invert:[{invert:["",Ue,De,Ie]}],saturate:[{saturate:[Ue,De,Ie]}],sepia:[{sepia:["",Ue,De,Ie]}],"backdrop-filter":[{"backdrop-filter":["","none",De,Ie]}],"backdrop-blur":[{"backdrop-blur":pe()}],"backdrop-brightness":[{"backdrop-brightness":[Ue,De,Ie]}],"backdrop-contrast":[{"backdrop-contrast":[Ue,De,Ie]}],"backdrop-grayscale":[{"backdrop-grayscale":["",Ue,De,Ie]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[Ue,De,Ie]}],"backdrop-invert":[{"backdrop-invert":["",Ue,De,Ie]}],"backdrop-opacity":[{"backdrop-opacity":[Ue,De,Ie]}],"backdrop-saturate":[{"backdrop-saturate":[Ue,De,Ie]}],"backdrop-sepia":[{"backdrop-sepia":["",Ue,De,Ie]}],"border-collapse":[{border:["collapse","separate"]}],"border-spacing":[{"border-spacing":T()}],"border-spacing-x":[{"border-spacing-x":T()}],"border-spacing-y":[{"border-spacing-y":T()}],"table-layout":[{table:["auto","fixed"]}],caption:[{caption:["top","bottom"]}],transition:[{transition:["","all","colors","opacity","shadow","transform","none",De,Ie]}],"transition-behavior":[{transition:["normal","discrete"]}],duration:[{duration:[Ue,"initial",De,Ie]}],ease:[{ease:["linear","initial",g,De,Ie]}],delay:[{delay:[Ue,De,Ie]}],animate:[{animate:["none",b,De,Ie]}],backface:[{backface:["hidden","visible"]}],perspective:[{perspective:[v,De,Ie]}],"perspective-origin":[{"perspective-origin":A()}],rotate:[{rotate:Pe()}],"rotate-x":[{"rotate-x":Pe()}],"rotate-y":[{"rotate-y":Pe()}],"rotate-z":[{"rotate-z":Pe()}],scale:[{scale:$()}],"scale-x":[{"scale-x":$()}],"scale-y":[{"scale-y":$()}],"scale-z":[{"scale-z":$()}],"scale-3d":["scale-3d"],skew:[{skew:B()}],"skew-x":[{"skew-x":B()}],"skew-y":[{"skew-y":B()}],transform:[{transform:[De,Ie,"","none","gpu","cpu"]}],"transform-origin":[{origin:A()}],"transform-style":[{transform:["3d","flat"]}],translate:[{translate:J()}],"translate-x":[{"translate-x":J()}],"translate-y":[{"translate-y":J()}],"translate-z":[{"translate-z":J()}],"translate-none":["translate-none"],zoom:[{zoom:[Xn,De,Ie]}],accent:[{accent:K()}],appearance:[{appearance:["none","auto"]}],"caret-color":[{caret:K()}],"color-scheme":[{scheme:["normal","dark","light","light-dark","only-dark","only-light"]}],cursor:[{cursor:["auto","default","pointer","wait","text","move","help","not-allowed","none","context-menu","progress","cell","crosshair","vertical-text","alias","copy","no-drop","grab","grabbing","all-scroll","col-resize","row-resize","n-resize","e-resize","s-resize","w-resize","ne-resize","nw-resize","se-resize","sw-resize","ew-resize","ns-resize","nesw-resize","nwse-resize","zoom-in","zoom-out",De,Ie]}],"field-sizing":[{"field-sizing":["fixed","content"]}],"pointer-events":[{"pointer-events":["auto","none"]}],resize:[{resize:["none","","y","x"]}],"scroll-behavior":[{scroll:["auto","smooth"]}],"scrollbar-thumb-color":[{"scrollbar-thumb":K()}],"scrollbar-track-color":[{"scrollbar-track":K()}],"scrollbar-gutter":[{"scrollbar-gutter":["auto","stable","both"]}],"scrollbar-w":[{scrollbar:["auto","thin","none"]}],"scroll-m":[{"scroll-m":T()}],"scroll-mx":[{"scroll-mx":T()}],"scroll-my":[{"scroll-my":T()}],"scroll-ms":[{"scroll-ms":T()}],"scroll-me":[{"scroll-me":T()}],"scroll-mbs":[{"scroll-mbs":T()}],"scroll-mbe":[{"scroll-mbe":T()}],"scroll-mt":[{"scroll-mt":T()}],"scroll-mr":[{"scroll-mr":T()}],"scroll-mb":[{"scroll-mb":T()}],"scroll-ml":[{"scroll-ml":T()}],"scroll-p":[{"scroll-p":T()}],"scroll-px":[{"scroll-px":T()}],"scroll-py":[{"scroll-py":T()}],"scroll-ps":[{"scroll-ps":T()}],"scroll-pe":[{"scroll-pe":T()}],"scroll-pbs":[{"scroll-pbs":T()}],"scroll-pbe":[{"scroll-pbe":T()}],"scroll-pt":[{"scroll-pt":T()}],"scroll-pr":[{"scroll-pr":T()}],"scroll-pb":[{"scroll-pb":T()}],"scroll-pl":[{"scroll-pl":T()}],"snap-align":[{snap:["start","end","center","align-none"]}],"snap-stop":[{snap:["normal","always"]}],"snap-type":[{snap:["none","x","y","both"]}],"snap-strictness":[{snap:["mandatory","proximity"]}],touch:[{touch:["auto","none","manipulation"]}],"touch-x":[{"touch-pan":["x","left","right"]}],"touch-y":[{"touch-pan":["y","up","down"]}],"touch-pz":["touch-pinch-zoom"],select:[{select:["none","text","all","auto"]}],"will-change":[{"will-change":["auto","scroll","contents","transform",De,Ie]}],fill:[{fill:["none",...K()]}],"stroke-w":[{stroke:[Ue,Ts,Or,Tg]}],stroke:[{stroke:["none",...K()]}],"forced-color-adjust":[{"forced-color-adjust":["auto","none"]}]},conflictingClassGroups:{"container-named":["container-type"],overflow:["overflow-x","overflow-y"],overscroll:["overscroll-x","overscroll-y"],inset:["inset-x","inset-y","inset-bs","inset-be","start","end","top","right","bottom","left"],"inset-x":["right","left"],"inset-y":["top","bottom"],flex:["basis","grow","shrink"],gap:["gap-x","gap-y"],p:["px","py","ps","pe","pbs","pbe","pt","pr","pb","pl"],px:["pr","pl"],py:["pt","pb"],m:["mx","my","ms","me","mbs","mbe","mt","mr","mb","ml"],mx:["mr","ml"],my:["mt","mb"],size:["w","h"],"font-size":["leading"],"fvn-normal":["fvn-ordinal","fvn-slashed-zero","fvn-figure","fvn-spacing","fvn-fraction"],"fvn-ordinal":["fvn-normal"],"fvn-slashed-zero":["fvn-normal"],"fvn-figure":["fvn-normal"],"fvn-spacing":["fvn-normal"],"fvn-fraction":["fvn-normal"],"line-clamp":["display","overflow"],rounded:["rounded-s","rounded-e","rounded-t","rounded-r","rounded-b","rounded-l","rounded-ss","rounded-se","rounded-ee","rounded-es","rounded-tl","rounded-tr","rounded-br","rounded-bl"],"rounded-s":["rounded-ss","rounded-es"],"rounded-e":["rounded-se","rounded-ee"],"rounded-t":["rounded-tl","rounded-tr"],"rounded-r":["rounded-tr","rounded-br"],"rounded-b":["rounded-br","rounded-bl"],"rounded-l":["rounded-tl","rounded-bl"],"border-spacing":["border-spacing-x","border-spacing-y"],"border-w":["border-w-x","border-w-y","border-w-s","border-w-e","border-w-bs","border-w-be","border-w-t","border-w-r","border-w-b","border-w-l"],"border-w-x":["border-w-r","border-w-l"],"border-w-y":["border-w-t","border-w-b"],"border-color":["border-color-x","border-color-y","border-color-s","border-color-e","border-color-bs","border-color-be","border-color-t","border-color-r","border-color-b","border-color-l"],"border-color-x":["border-color-r","border-color-l"],"border-color-y":["border-color-t","border-color-b"],translate:["translate-x","translate-y","translate-none"],"translate-none":["translate","translate-x","translate-y","translate-z"],"scroll-m":["scroll-mx","scroll-my","scroll-ms","scroll-me","scroll-mbs","scroll-mbe","scroll-mt","scroll-mr","scroll-mb","scroll-ml"],"scroll-mx":["scroll-mr","scroll-ml"],"scroll-my":["scroll-mt","scroll-mb"],"scroll-p":["scroll-px","scroll-py","scroll-ps","scroll-pe","scroll-pbs","scroll-pbe","scroll-pt","scroll-pr","scroll-pb","scroll-pl"],"scroll-px":["scroll-pr","scroll-pl"],"scroll-py":["scroll-pt","scroll-pb"],touch:["touch-x","touch-y","touch-pz"],"touch-x":["touch"],"touch-y":["touch"],"touch-pz":["touch"]},conflictingClassGroupModifiers:{"font-size":["leading"]},postfixLookupClassGroups:["container-type"],orderSensitiveModifiers:["*","**","after","backdrop","before","details-content","file","first-letter","first-line","marker","placeholder","selection"]}},uE=(e,{cacheSize:t,prefix:n,experimentalParseClassName:a,extend:r={},override:o={}})=>(bo(e,"cacheSize",t),bo(e,"prefix",n),bo(e,"experimentalParseClassName",a),il(e.theme,o.theme),il(e.classGroups,o.classGroups),il(e.conflictingClassGroups,o.conflictingClassGroups),il(e.conflictingClassGroupModifiers,o.conflictingClassGroupModifiers),bo(e,"postfixLookupClassGroups",o.postfixLookupClassGroups),bo(e,"orderSensitiveModifiers",o.orderSensitiveModifiers),ll(e.theme,r.theme),ll(e.classGroups,r.classGroups),ll(e.conflictingClassGroups,r.conflictingClassGroups),ll(e.conflictingClassGroupModifiers,r.conflictingClassGroupModifiers),ff(e,r,"postfixLookupClassGroups"),ff(e,r,"orderSensitiveModifiers"),e),bo=(e,t,n)=>{n!==void 0&&(e[t]=n)},il=(e,t)=>{if(t)for(const n in t)bo(e,n,t[n])},ll=(e,t)=>{if(t)for(const n in t)ff(e,t,n)},ff=(e,t,n)=>{const a=t[n];a!==void 0&&(e[n]=e[n]?e[n].concat(a):a)},dE=(e,...t)=>typeof e=="function"?uf(df,e,...t):uf(()=>uE(df(),e),...t),fE=uf(df);var pE=e=>gn(e)?fE:dE({...e,extend:{theme:e.theme,classGroups:e.classGroups,conflictingClassGroupModifiers:e.conflictingClassGroupModifiers,conflictingClassGroups:e.conflictingClassGroups,...e.extend}}),hE=(e,t)=>{const n=dc(e);return!n||!(t?.twMerge??!0)?n:((!Sa.cachedTwMerge||Sa.didTwMergeConfigChange)&&(Sa.didTwMergeConfigChange=!1,Sa.cachedTwMerge=pE(Sa.cachedTwMergeConfig)),Sa.cachedTwMerge(n)||void 0)},r2=(...e)=>t=>hE(e,t),{createTV:mE}=_D(r2);const gE=h1,o2=gE.ui?.tv,vE=mE(o2);function ci(e){if(typeof e=="function")return e;if(Array.isArray(e))for(let t=e.length-1;t>=0;t--){const n=ci(e[t]);if(n)return n}}function pf(e){return Array.isArray(e)?e.flatMap(t=>pf(t)):typeof e=="function"?[]:[e]}function s2(e,t,n){return r2(e(n()),...pf(t.class),...pf(t.className))(o2)??""}function yE(e,t){return new Proxy(e,{get(n,a){const r=n[a];return typeof r!="function"?r:(o={})=>{const s=ci(o.class)??ci(o.className)??t?.[a];return s?s2(s,o,()=>r({...o,class:void 0,className:void 0})):r(o)}}})}function bE(e){if(!e||typeof e!="object")return{config:e};let t=e,n;typeof e.base=="function"&&(n={base:e.base},t={...t,base:""});const a=e.slots;if(a&&typeof a=="object"){const r=Object.entries(a).filter(([,o])=>typeof o=="function");if(r.length){n??={};const o={...a};for(const[s,i]of r)n[s]=i,o[s]="";t={...t,slots:o}}}return{config:t,directives:n}}const vt=(e=>{const{config:t,directives:n}=bE(e),a=vE(t);return new Proxy(a,{apply(r,o,s){const i=Reflect.apply(r,o,s);if(i&&typeof i=="object")return yE(i,n);if(typeof i=="string"){const l=s[0]??{},c=ci(l.class)??ci(l.className)??n?.base;if(c)return s2(c,l,()=>Reflect.apply(r,o,[{...l,class:void 0,className:void 0}]))}return i}})}),cn={__name:"Icon",props:{name:{type:null,required:!0},mode:{type:String,required:!1},size:{type:[String,Number],required:!1},customize:{type:[Function,Boolean,null],required:!1}},setup(e){const t=e,n=zt();function a(i,l){if(i!==!1)return i===!0||i===null?l:i}const r=S(()=>{const i=t.mode||n.icon?.mode;return i==="css"?"style":i}),o=S(()=>t.size||n.icon?.size),s=S(()=>a(t.customize,n.icon?.customize));return(i,l)=>typeof e.name=="string"?(C(),R(f(r3),{key:0,icon:e.name.replace(/^i-/,""),mode:r.value,width:o.value,height:o.value,customise:s.value},null,8,["icon","mode","width","height","customise"])):(C(),R($n(e.name),{key:1}))}},wE="img",Eg=Symbol("nuxt-ui.avatar-group");function i2(e){const t=rt(Eg,void 0),n=S(()=>e.size??t?.value.size),a=S(()=>e.color??t?.value.color);return An(Eg,S(()=>({size:n.value,color:a.value}))),{size:n,color:a}}const _E={slots:{root:"relative inline-flex items-center justify-center shrink-0",base:"rounded-full ring ring-bg flex items-center justify-center text-inverted font-medium whitespace-nowrap"},variants:{color:{primary:"bg-primary",secondary:"bg-secondary",success:"bg-success",info:"bg-info",warning:"bg-warning",error:"bg-error",neutral:"bg-inverted"},size:{"3xs":"h-[4px] min-w-[4px] text-[4px]","2xs":"h-[5px] min-w-[5px] text-[5px]",xs:"h-[6px] min-w-[6px] text-[6px]",sm:"h-[7px] min-w-[7px] text-[7px]",md:"h-[8px] min-w-[8px] text-[8px]",lg:"h-[9px] min-w-[9px] text-[9px]",xl:"h-[10px] min-w-[10px] text-[10px]","2xl":"h-[11px] min-w-[11px] text-[11px]","3xl":"h-[12px] min-w-[12px] text-[12px]"},position:{"top-right":"top-0 right-0","bottom-right":"bottom-0 right-0","top-left":"top-0 left-0","bottom-left":"bottom-0 left-0"},inset:{false:""},standalone:{false:"absolute"}},compoundVariants:[{position:"top-right",inset:!1,class:"-translate-y-1/2 translate-x-1/2 transform"},{position:"bottom-right",inset:!1,class:"translate-y-1/2 translate-x-1/2 transform"},{position:"top-left",inset:!1,class:"-translate-y-1/2 -translate-x-1/2 transform"},{position:"bottom-left",inset:!1,class:"translate-y-1/2 -translate-x-1/2 transform"}],defaultVariants:{size:"md",color:"primary",position:"top-right"}},kE=Object.assign({inheritAttrs:!1},{__name:"Chip",props:Cd({as:{type:null,required:!1},text:{type:[String,Number],required:!1},color:{type:null,required:!1},size:{type:null,required:!1},position:{type:null,required:!1},inset:{type:Boolean,required:!1,default:!1},standalone:{type:Boolean,required:!1,default:!1},class:{type:null,required:!1},ui:{type:Object,required:!1}},{show:{type:Boolean,default:!0},showModifiers:{}}),emits:["update:show"],setup(e){const t=e,n=Fn("chip",t),a=i0(e,"show",{type:Boolean,default:!0}),{size:r}=i2(t),o=zt(),s=S(()=>vt({extend:vt(_E),...o.ui?.chip||{}})({color:n.color,size:r.value??n.size,position:n.position,inset:n.inset,standalone:n.standalone}));return(i,l)=>(C(),R(f(fe),{as:f(n).as,"data-slot":"root",class:Ae(s.value.root({class:[f(n).ui?.root,f(n).class]}))},{default:E(()=>[ie(f(eo),$e(Oe(i.$attrs)),{default:E(()=>[j(i.$slots,"default")]),_:3},16),a.value?(C(),ye("span",{key:0,"data-slot":"base",class:Ae(s.value.base({class:f(n).ui?.base}))},[j(i.$slots,"content",{},()=>[qe(Me(f(n).text),1)])],2)):ve("",!0)]),_:3},8,["as","class"]))}}),CE={slots:{root:"inline-flex items-center justify-center shrink-0 select-none rounded-full align-middle",image:"h-full w-full rounded-[inherit] object-cover",fallback:"font-medium truncate",icon:"shrink-0"},variants:{color:{primary:{root:"bg-primary/10",fallback:"text-primary",icon:"text-primary"},secondary:{root:"bg-secondary/10",fallback:"text-secondary",icon:"text-secondary"},success:{root:"bg-success/10",fallback:"text-success",icon:"text-success"},info:{root:"bg-info/10",fallback:"text-info",icon:"text-info"},warning:{root:"bg-warning/10",fallback:"text-warning",icon:"text-warning"},error:{root:"bg-error/10",fallback:"text-error",icon:"text-error"},neutral:{root:"bg-elevated",fallback:"text-muted",icon:"text-muted"}},size:{"3xs":{root:"size-4 text-[8px]"},"2xs":{root:"size-5 text-[10px]"},xs:{root:"size-6 text-xs"},sm:{root:"size-7 text-sm"},md:{root:"size-8 text-base"},lg:{root:"size-9 text-lg"},xl:{root:"size-10 text-xl"},"2xl":{root:"size-11 text-[22px]"},"3xl":{root:"size-12 text-2xl"}}},defaultVariants:{size:"md",color:"neutral"}},su=Object.assign({inheritAttrs:!1},{__name:"Avatar",props:{as:{type:null,required:!1},src:{type:String,required:!1},alt:{type:String,required:!1},icon:{type:null,required:!1},text:{type:String,required:!1},size:{type:null,required:!1},color:{type:null,required:!1},chip:{type:[Boolean,Object],required:!1},class:{type:null,required:!1},style:{type:null,required:!1},ui:{type:Object,required:!1}},setup(e){const t=e,n=Fn("avatar",t),a=S(()=>typeof n.as=="string"||typeof n.as?.render=="function"?{root:n.as}:Un(n.as,{root:"span"})),r=S(()=>n.text||(n.alt||"").split(" ").map(p=>p.charAt(0)).join("").substring(0,2)),o=zt(),{size:s,color:i}=i2(t),l=S(()=>vt({extend:vt(CE),...o.ui?.avatar||{}})({size:s.value??n.size,color:i.value??n.color})),c=S(()=>l.value.root({class:[n.ui?.root,n.class]})),u=S(()=>{const p=(c.value||"").split(" ").find(m=>/^size-\d+$/.test(m));if(p){const m=Number.parseFloat(p.split("-")[1]??"");if(!Number.isNaN(m))return m*4}return null}),d=V(!1);Se(()=>n.src,()=>{d.value&&(d.value=!1)});function h(){d.value=!0}return(p,m)=>(C(),R($n(f(n).chip?kE:f(fe)),de({as:a.value.root},f(n).chip?typeof f(n).chip=="object"?{inset:!0,...f(n).chip}:{inset:!0}:{},{"data-slot":"root",class:c.value,style:f(n).style}),{default:E(()=>[f(n).src&&!d.value?(C(),R($n(a.value.img||f(wE)),de({key:0,src:f(n).src,alt:f(n).alt,width:u.value,height:u.value},p.$attrs,{"data-slot":"image",class:l.value.image({class:f(n).ui?.image}),onError:h}),null,16,["src","alt","width","height","class"])):(C(),R(f(eo),$e(de({key:1},p.$attrs)),{default:E(()=>[j(p.$slots,"default",{},()=>[f(n).icon?(C(),R(cn,{key:0,name:f(n).icon,"data-slot":"icon",class:Ae(l.value.icon({class:f(n).ui?.icon}))},null,8,["name","class"])):(C(),ye("span",{key:1,"data-slot":"fallback",class:Ae(l.value.fallback({class:f(n).ui?.fallback}))},Me(r.value||" "),3))])]),_:3},16))]),_:3},16,["as","class","style"]))}});function l2(e){const t=zt(),n=S(()=>He(e)),a=S(()=>n.value.icon&&n.value.leading||n.value.icon&&!n.value.trailing||n.value.loading&&!n.value.trailing||!!n.value.leadingIcon),r=S(()=>n.value.icon&&n.value.trailing||n.value.loading&&n.value.trailing||!!n.value.trailingIcon&&n.value.trailing!==!1),o=S(()=>n.value.loading?n.value.loadingIcon||t.ui.icons.loading:n.value.leadingIcon||n.value.icon),s=S(()=>n.value.loading&&!a.value?n.value.loadingIcon||t.ui.icons.loading:n.value.trailingIcon||n.value.icon);return{isLeading:a,isTrailing:r,leadingIconName:o,trailingIconName:s}}const c2=Symbol("nuxt-ui.field-group");function u2(e){const t=rt(c2,void 0);return{orientation:S(()=>t?.value.orientation),size:S(()=>e?.size??t?.value.size)}}const iu=Z({name:"FieldGroupReset",setup(e,{slots:t}){return An(c2,S(()=>({size:void 0,orientation:void 0}))),()=>t.default?.()}}),SE=Symbol("nuxt-ui.form-options"),xE=Symbol("nuxt-ui.form-events"),$g=Symbol("nuxt-ui.form-field"),AE=Symbol("nuxt-ui.input-id"),pae=Symbol("nuxt-ui.form-inputs"),PE=Symbol("nuxt-ui.form-loading"),hae=Symbol("nuxt-ui.form-errors");function ME(e,t){const n=rt(SE,void 0),a=rt(xE,void 0),r=rt($g,void 0),o=rt(AE,void 0);An($g,void 0),r&&o&&(t?.bind===!1?o.value=void 0:e?.id&&(o.value=e?.id));function s(d,h,p){a&&r&&h&&a.emit({type:d,name:h,eager:p})}function i(){s("blur",r?.value.name)}function l(){s("focus",r?.value.name)}function c(){s("change",r?.value.name)}const u=cC(()=>{s("input",r?.value.name,!t?.deferInputValidation||r?.value.eagerValidation)},r?.value.validateOnInputDelay??n?.value.validateOnInputDelay??0);return{id:S(()=>e?.id??o?.value),name:S(()=>e?.name??r?.value.name),size:S(()=>e?.size??r?.value.size),color:S(()=>r?.value.error?"error":e?.color),highlight:S(()=>r?.value.error?!0:e?.highlight),disabled:S(()=>n?.value.disabled||e?.disabled),emitFormBlur:i,emitFormInput:u,emitFormChange:c,emitFormFocus:l,ariaAttrs:S(()=>{if(!r?.value)return;const d=["error","hint","description","help"].filter(p=>r?.value?.[p]).map(p=>`${r?.value.ariaId}-${p}`)||[],h={"aria-invalid":!!r?.value.error};return d.length>0&&(h["aria-describedby"]=d.join(" ")),h})}}const TE=["active","activeClass","ariaCurrentValue","as","disabled","download","exact","exactActiveClass","exactHash","exactQuery","external","form","formaction","formenctype","formmethod","formnovalidate","formtarget","href","hreflang","inactiveClass","locale","media","noPrefetch","noRel","onClick","ping","prefetch","prefetchOn","prefetchedClass","referrerpolicy","rel","replace","target","title","to","trailingSlash","type","viewTransition"];function d2(e){const t=Object.keys(e),n=t.filter(o=>o.startsWith("aria-")),a=t.filter(o=>o.startsWith("data-")),r=[...TE,...n,...a];return ca(e,...r)}function IE(e,t){const n=jC(e,t).reduce((o,s)=>(s.type==="added"&&o.add(s.key),o),new Set),a=Object.fromEntries(Object.entries(e).filter(([o])=>!n.has(o))),r=Object.fromEntries(Object.entries(t).filter(([o])=>!n.has(o)));return ap(a,r)}const pc={__name:"LinkBase",props:{as:{type:String,required:!1,default:"button"},type:{type:String,required:!1,default:"button"},disabled:{type:Boolean,required:!1},onClick:{type:[Function,Array],required:!1},href:{type:[String,null],required:!1},navigate:{type:Function,required:!1},target:{type:[String,Object,null],required:!1},rel:{type:[String,Object,null],required:!1},active:{type:Boolean,required:!1},isExternal:{type:Boolean,required:!1}},setup(e){const t=e;function n(a){if(t.disabled){a.stopPropagation(),a.preventDefault();return}if(t.onClick)for(const r of Array.isArray(t.onClick)?t.onClick:[t.onClick])r(a);t.href&&t.navigate&&!t.isExternal&&t.navigate(a)}return(a,r)=>(C(),R(f(fe),de(e.href?{as:"a",href:e.disabled?void 0:e.href,"aria-disabled":e.disabled?"true":void 0,role:e.disabled?"link":void 0,tabindex:e.disabled?-1:void 0}:e.as==="button"?{as:e.as,type:e.type,disabled:e.disabled}:{as:e.as},{rel:e.rel,target:e.target,onClick:n}),{default:E(()=>[j(a.$slots,"default")]),_:3},16,["rel","target"]))}},DE={base:"outline-primary/25 focus-visible:outline-3 rounded-md",variants:{active:{true:"text-primary",false:"text-muted"},disabled:{true:"cursor-not-allowed opacity-75"}},compoundVariants:[{active:!1,disabled:!1,class:["hover:text-default","transition-colors"]}]},f2=Object.assign({inheritAttrs:!1},{__name:"Link",props:{as:{type:null,required:!1,default:"button"},href:{type:null,required:!1},external:{type:Boolean,required:!1},target:{type:[String,Object,null],required:!1},rel:{type:[String,Object,null],required:!1},noRel:{type:Boolean,required:!1},type:{type:null,required:!1,default:"button"},disabled:{type:Boolean,required:!1},active:{type:Boolean,required:!1,default:void 0},exact:{type:Boolean,required:!1},exactQuery:{type:[Boolean,String],required:!1},exactHash:{type:Boolean,required:!1},inactiveClass:{type:String,required:!1},custom:{type:Boolean,required:!1},raw:{type:Boolean,required:!1},class:{type:null,required:!1},activeClass:{type:String,required:!1},exactActiveClass:{type:String,required:!1},ariaCurrentValue:{type:String,required:!1,default:"page"},viewTransition:{type:Boolean,required:!1},to:{type:null,required:!1},replace:{type:Boolean,required:!1}},setup(e){const t=e,n=jc(),a=zt(),r=Ja(rs(t,"as","type","disabled","active","exact","exactQuery","exactHash","activeClass","inactiveClass","to","href","raw","custom","class","noRel")),o=S(()=>vt({extend:vt(DE),...Un({variants:{active:{true:ec(a.ui?.link?.variants?.active?.true,t.activeClass),false:ec(a.ui?.link?.variants?.active?.false,t.inactiveClass)}}},a.ui?.link||{})})),s=S(()=>t.to??t.href),i=S(()=>t.external?!0:s.value?typeof s.value=="string"&&YC(s.value,{acceptRelative:!0}):!1),l=S(()=>!!t.target&&t.target!=="_self"),c=S(()=>t.noRel?null:t.rel!==void 0?t.rel||null:i.value||l.value?"noopener noreferrer":null);function u({route:h,isActive:p,isExactActive:m}){if(t.active!==void 0)return t.active;if(!s.value)return!1;if(t.exactQuery==="partial"){if(!IE(h.query,n.query))return!1}else if(t.exactQuery===!0&&!ap(h.query,n.query))return!1;return t.exactHash&&h.hash!==n.hash?!1:!!(t.exact&&m||!t.exact&&p)}function d({route:h,isActive:p,isExactActive:m}={}){const v=u({route:h,isActive:p,isExactActive:m});return t.raw?[t.class,v?t.activeClass:t.inactiveClass]:o.value({class:t.class,active:v,disabled:t.disabled})}return(h,p)=>!i.value&&s.value?(C(),R(f(T1),de({key:0},f(r),{to:s.value,custom:""}),{default:E(({href:m,navigate:v,route:y,isActive:g,isExactActive:b})=>[e.custom?(C(),R(f(eo),{key:0},{default:E(()=>[j(h.$slots,"default",$e(Oe({...h.$attrs,...e.exact&&b?{"aria-current":t.ariaCurrentValue}:{},as:e.as,type:e.type,disabled:e.disabled,href:m,navigate:v,rel:c.value,target:e.target,isExternal:i.value,active:u({route:y,isActive:g,isExactActive:b})})))]),_:2},1024)):(C(),R(pc,de({key:1},{...h.$attrs,...e.exact&&b?{"aria-current":t.ariaCurrentValue}:{},as:e.as,type:e.type,disabled:e.disabled,href:m,navigate:v,rel:c.value,target:e.target,isExternal:i.value},{class:d({route:y,isActive:g,isExactActive:b})}),{default:E(()=>[j(h.$slots,"default",{active:u({route:y,isActive:g,isExactActive:b})})]),_:2},1040,["class"]))]),_:3},16,["to"])):e.custom?(C(),R(f(eo),{key:1},{default:E(()=>[j(h.$slots,"default",$e(Oe({...h.$attrs,as:e.as,type:e.type,disabled:e.disabled,href:s.value,rel:c.value,target:e.target,active:e.active??!1,isExternal:i.value})))]),_:3})):(C(),R(pc,de({key:2},{...h.$attrs,as:e.as,type:e.type,disabled:e.disabled,href:s.value,rel:c.value,target:e.target,isExternal:i.value},{class:d()}),{default:E(()=>[j(h.$slots,"default",{active:e.active??!1})]),_:3},16,["class"]))}}),EE={slots:{base:["rounded-md font-medium inline-flex items-center disabled:cursor-not-allowed aria-disabled:cursor-not-allowed disabled:opacity-75 aria-disabled:opacity-75","transition-colors"],label:"truncate",leadingIcon:"shrink-0",leadingAvatar:"shrink-0",leadingAvatarSize:"",trailingIcon:"shrink-0"},variants:{fieldGroup:{horizontal:"not-only:first:rounded-e-none not-only:last:rounded-s-none not-last:not-first:rounded-none focus-visible:z-[1]",vertical:"not-only:first:rounded-b-none not-only:last:rounded-t-none not-last:not-first:rounded-none focus-visible:z-[1]"},color:{primary:"",secondary:"",success:"",info:"",warning:"",error:"",neutral:""},variant:{solid:"",outline:"",soft:"",subtle:"",ghost:"",link:""},size:{xs:{base:"px-2 py-1 text-xs gap-1",leadingIcon:"size-4",leadingAvatarSize:"3xs",trailingIcon:"size-4"},sm:{base:"px-2.5 py-1.5 text-xs gap-1.5",leadingIcon:"size-4",leadingAvatarSize:"3xs",trailingIcon:"size-4"},md:{base:"px-2.5 py-1.5 text-sm gap-1.5",leadingIcon:"size-5",leadingAvatarSize:"2xs",trailingIcon:"size-5"},lg:{base:"px-3 py-2 text-sm gap-2",leadingIcon:"size-5",leadingAvatarSize:"2xs",trailingIcon:"size-5"},xl:{base:"px-3 py-2 text-base gap-2",leadingIcon:"size-6",leadingAvatarSize:"xs",trailingIcon:"size-6"}},block:{true:{base:"w-full justify-center",trailingIcon:"ms-auto"}},square:{true:""},leading:{true:""},trailing:{true:""},loading:{true:""},active:{true:{base:""},false:{base:""}}},compoundVariants:[{color:"primary",variant:"solid",class:"text-inverted bg-primary hover:bg-primary/75 active:bg-primary/75 disabled:bg-primary aria-disabled:bg-primary outline-primary/25 focus-visible:outline-3"},{color:"secondary",variant:"solid",class:"text-inverted bg-secondary hover:bg-secondary/75 active:bg-secondary/75 disabled:bg-secondary aria-disabled:bg-secondary outline-secondary/25 focus-visible:outline-3"},{color:"success",variant:"solid",class:"text-inverted bg-success hover:bg-success/75 active:bg-success/75 disabled:bg-success aria-disabled:bg-success outline-success/25 focus-visible:outline-3"},{color:"info",variant:"solid",class:"text-inverted bg-info hover:bg-info/75 active:bg-info/75 disabled:bg-info aria-disabled:bg-info outline-info/25 focus-visible:outline-3"},{color:"warning",variant:"solid",class:"text-inverted bg-warning hover:bg-warning/75 active:bg-warning/75 disabled:bg-warning aria-disabled:bg-warning outline-warning/25 focus-visible:outline-3"},{color:"error",variant:"solid",class:"text-inverted bg-error hover:bg-error/75 active:bg-error/75 disabled:bg-error aria-disabled:bg-error outline-error/25 focus-visible:outline-3"},{color:"primary",variant:"outline",class:"ring ring-inset ring-primary/50 text-primary hover:bg-primary/10 active:bg-primary/10 disabled:bg-transparent aria-disabled:bg-transparent dark:disabled:bg-transparent dark:aria-disabled:bg-transparent outline-primary/25 focus-visible:outline-3 focus-visible:ring-primary"},{color:"secondary",variant:"outline",class:"ring ring-inset ring-secondary/50 text-secondary hover:bg-secondary/10 active:bg-secondary/10 disabled:bg-transparent aria-disabled:bg-transparent dark:disabled:bg-transparent dark:aria-disabled:bg-transparent outline-secondary/25 focus-visible:outline-3 focus-visible:ring-secondary"},{color:"success",variant:"outline",class:"ring ring-inset ring-success/50 text-success hover:bg-success/10 active:bg-success/10 disabled:bg-transparent aria-disabled:bg-transparent dark:disabled:bg-transparent dark:aria-disabled:bg-transparent outline-success/25 focus-visible:outline-3 focus-visible:ring-success"},{color:"info",variant:"outline",class:"ring ring-inset ring-info/50 text-info hover:bg-info/10 active:bg-info/10 disabled:bg-transparent aria-disabled:bg-transparent dark:disabled:bg-transparent dark:aria-disabled:bg-transparent outline-info/25 focus-visible:outline-3 focus-visible:ring-info"},{color:"warning",variant:"outline",class:"ring ring-inset ring-warning/50 text-warning hover:bg-warning/10 active:bg-warning/10 disabled:bg-transparent aria-disabled:bg-transparent dark:disabled:bg-transparent dark:aria-disabled:bg-transparent outline-warning/25 focus-visible:outline-3 focus-visible:ring-warning"},{color:"error",variant:"outline",class:"ring ring-inset ring-error/50 text-error hover:bg-error/10 active:bg-error/10 disabled:bg-transparent aria-disabled:bg-transparent dark:disabled:bg-transparent dark:aria-disabled:bg-transparent outline-error/25 focus-visible:outline-3 focus-visible:ring-error"},{color:"primary",variant:"soft",class:"text-primary bg-primary/10 hover:bg-primary/15 active:bg-primary/15 outline-primary/25 focus-visible:outline-3 disabled:bg-primary/10 aria-disabled:bg-primary/10"},{color:"secondary",variant:"soft",class:"text-secondary bg-secondary/10 hover:bg-secondary/15 active:bg-secondary/15 outline-secondary/25 focus-visible:outline-3 disabled:bg-secondary/10 aria-disabled:bg-secondary/10"},{color:"success",variant:"soft",class:"text-success bg-success/10 hover:bg-success/15 active:bg-success/15 outline-success/25 focus-visible:outline-3 disabled:bg-success/10 aria-disabled:bg-success/10"},{color:"info",variant:"soft",class:"text-info bg-info/10 hover:bg-info/15 active:bg-info/15 outline-info/25 focus-visible:outline-3 disabled:bg-info/10 aria-disabled:bg-info/10"},{color:"warning",variant:"soft",class:"text-warning bg-warning/10 hover:bg-warning/15 active:bg-warning/15 outline-warning/25 focus-visible:outline-3 disabled:bg-warning/10 aria-disabled:bg-warning/10"},{color:"error",variant:"soft",class:"text-error bg-error/10 hover:bg-error/15 active:bg-error/15 outline-error/25 focus-visible:outline-3 disabled:bg-error/10 aria-disabled:bg-error/10"},{color:"primary",variant:"subtle",class:"text-primary ring ring-inset ring-primary/25 bg-primary/10 hover:bg-primary/15 active:bg-primary/15 disabled:bg-primary/10 aria-disabled:bg-primary/10 outline-primary/25 focus-visible:outline-3 focus-visible:ring-primary"},{color:"secondary",variant:"subtle",class:"text-secondary ring ring-inset ring-secondary/25 bg-secondary/10 hover:bg-secondary/15 active:bg-secondary/15 disabled:bg-secondary/10 aria-disabled:bg-secondary/10 outline-secondary/25 focus-visible:outline-3 focus-visible:ring-secondary"},{color:"success",variant:"subtle",class:"text-success ring ring-inset ring-success/25 bg-success/10 hover:bg-success/15 active:bg-success/15 disabled:bg-success/10 aria-disabled:bg-success/10 outline-success/25 focus-visible:outline-3 focus-visible:ring-success"},{color:"info",variant:"subtle",class:"text-info ring ring-inset ring-info/25 bg-info/10 hover:bg-info/15 active:bg-info/15 disabled:bg-info/10 aria-disabled:bg-info/10 outline-info/25 focus-visible:outline-3 focus-visible:ring-info"},{color:"warning",variant:"subtle",class:"text-warning ring ring-inset ring-warning/25 bg-warning/10 hover:bg-warning/15 active:bg-warning/15 disabled:bg-warning/10 aria-disabled:bg-warning/10 outline-warning/25 focus-visible:outline-3 focus-visible:ring-warning"},{color:"error",variant:"subtle",class:"text-error ring ring-inset ring-error/25 bg-error/10 hover:bg-error/15 active:bg-error/15 disabled:bg-error/10 aria-disabled:bg-error/10 outline-error/25 focus-visible:outline-3 focus-visible:ring-error"},{color:"primary",variant:"ghost",class:"text-primary hover:bg-primary/10 active:bg-primary/10 outline-primary/25 focus-visible:outline-3 disabled:bg-transparent aria-disabled:bg-transparent dark:disabled:bg-transparent dark:aria-disabled:bg-transparent"},{color:"secondary",variant:"ghost",class:"text-secondary hover:bg-secondary/10 active:bg-secondary/10 outline-secondary/25 focus-visible:outline-3 disabled:bg-transparent aria-disabled:bg-transparent dark:disabled:bg-transparent dark:aria-disabled:bg-transparent"},{color:"success",variant:"ghost",class:"text-success hover:bg-success/10 active:bg-success/10 outline-success/25 focus-visible:outline-3 disabled:bg-transparent aria-disabled:bg-transparent dark:disabled:bg-transparent dark:aria-disabled:bg-transparent"},{color:"info",variant:"ghost",class:"text-info hover:bg-info/10 active:bg-info/10 outline-info/25 focus-visible:outline-3 disabled:bg-transparent aria-disabled:bg-transparent dark:disabled:bg-transparent dark:aria-disabled:bg-transparent"},{color:"warning",variant:"ghost",class:"text-warning hover:bg-warning/10 active:bg-warning/10 outline-warning/25 focus-visible:outline-3 disabled:bg-transparent aria-disabled:bg-transparent dark:disabled:bg-transparent dark:aria-disabled:bg-transparent"},{color:"error",variant:"ghost",class:"text-error hover:bg-error/10 active:bg-error/10 outline-error/25 focus-visible:outline-3 disabled:bg-transparent aria-disabled:bg-transparent dark:disabled:bg-transparent dark:aria-disabled:bg-transparent"},{color:"primary",variant:"link",class:"text-primary hover:text-primary/75 active:text-primary/75 disabled:text-primary aria-disabled:text-primary outline-primary/25 focus-visible:outline-3"},{color:"secondary",variant:"link",class:"text-secondary hover:text-secondary/75 active:text-secondary/75 disabled:text-secondary aria-disabled:text-secondary outline-secondary/25 focus-visible:outline-3"},{color:"success",variant:"link",class:"text-success hover:text-success/75 active:text-success/75 disabled:text-success aria-disabled:text-success outline-success/25 focus-visible:outline-3"},{color:"info",variant:"link",class:"text-info hover:text-info/75 active:text-info/75 disabled:text-info aria-disabled:text-info outline-info/25 focus-visible:outline-3"},{color:"warning",variant:"link",class:"text-warning hover:text-warning/75 active:text-warning/75 disabled:text-warning aria-disabled:text-warning outline-warning/25 focus-visible:outline-3"},{color:"error",variant:"link",class:"text-error hover:text-error/75 active:text-error/75 disabled:text-error aria-disabled:text-error outline-error/25 focus-visible:outline-3"},{color:"neutral",variant:"solid",class:"text-inverted bg-inverted hover:bg-inverted/90 active:bg-inverted/90 disabled:bg-inverted aria-disabled:bg-inverted outline-inverted/25 focus-visible:outline-3"},{color:"neutral",variant:"outline",class:"ring ring-inset ring-accented text-default bg-default hover:bg-elevated active:bg-elevated disabled:bg-default aria-disabled:bg-default outline-inverted/25 focus-visible:outline-3 focus-visible:ring-inverted"},{color:"neutral",variant:"soft",class:"text-default bg-elevated hover:bg-accented/75 active:bg-accented/75 outline-inverted/25 focus-visible:outline-3 disabled:bg-elevated aria-disabled:bg-elevated"},{color:"neutral",variant:"subtle",class:"ring ring-inset ring-accented text-default bg-elevated hover:bg-accented/75 active:bg-accented/75 disabled:bg-elevated aria-disabled:bg-elevated outline-inverted/25 focus-visible:outline-3 focus-visible:ring-inverted"},{color:"neutral",variant:"ghost",class:"text-default hover:bg-elevated active:bg-elevated outline-inverted/25 focus-visible:outline-3 hover:disabled:bg-transparent dark:hover:disabled:bg-transparent hover:aria-disabled:bg-transparent dark:hover:aria-disabled:bg-transparent"},{color:"neutral",variant:"link",class:"text-muted hover:text-default active:text-default disabled:text-muted aria-disabled:text-muted outline-inverted/25 focus-visible:outline-3"},{size:"xs",square:!0,class:"p-1"},{size:"sm",square:!0,class:"p-1.5"},{size:"md",square:!0,class:"p-1.5"},{size:"lg",square:!0,class:"p-2"},{size:"xl",square:!0,class:"p-2"},{loading:!0,leading:!0,class:{leadingIcon:"animate-spin"}},{loading:!0,leading:!1,trailing:!0,class:{trailingIcon:"animate-spin"}}],defaultVariants:{color:"primary",variant:"solid",size:"md"}},gr={__name:"Button",props:{label:{type:String,required:!1},color:{type:null,required:!1},activeColor:{type:null,required:!1},variant:{type:null,required:!1},activeVariant:{type:null,required:!1},size:{type:null,required:!1},square:{type:Boolean,required:!1},block:{type:Boolean,required:!1},loadingAuto:{type:Boolean,required:!1},onClick:{type:[Function,Array],required:!1},class:{type:null,required:!1},ui:{type:Object,required:!1},icon:{type:null,required:!1},avatar:{type:Object,required:!1},leading:{type:Boolean,required:!1},leadingIcon:{type:null,required:!1},trailing:{type:Boolean,required:!1},trailingIcon:{type:null,required:!1},loading:{type:Boolean,required:!1},loadingIcon:{type:null,required:!1},as:{type:null,required:!1},type:{type:null,required:!1},disabled:{type:Boolean,required:!1},active:{type:Boolean,required:!1},exact:{type:Boolean,required:!1},exactQuery:{type:[Boolean,String],required:!1},exactHash:{type:Boolean,required:!1},inactiveClass:{type:String,required:!1},locale:{type:[Boolean,String],required:!1},to:{type:null,required:!1},href:{type:null,required:!1},external:{type:Boolean,required:!1},target:{type:[String,Object,null],required:!1},rel:{type:[String,Object,null],required:!1},noRel:{type:Boolean,required:!1},prefetchedClass:{type:String,required:!1},prefetch:{type:Boolean,required:!1},prefetchOn:{type:[String,Object],required:!1},noPrefetch:{type:Boolean,required:!1},trailingSlash:{type:String,required:!1},activeClass:{type:String,required:!1},exactActiveClass:{type:String,required:!1},ariaCurrentValue:{type:String,required:!1},viewTransition:{type:Boolean,required:!1},replace:{type:Boolean,required:!1}},setup(e){const t=e,n=fa(),a=Fn("button",t),r=zt(),{orientation:o,size:s}=u2(t),i=Cr(d2(a)),l=V(!1),c=rt(PE,void 0);async function u(g){l.value=!0;const b=Array.isArray(a.onClick)?a.onClick:[a.onClick];try{await Promise.all(b.map(w=>w?.(g)))}finally{l.value=!1}}const d=S(()=>a.loading||a.loadingAuto&&(l.value||c?.value&&a.type==="submit")),{isLeading:h,isTrailing:p,leadingIconName:m,trailingIconName:v}=l2(S(()=>({...a,loading:d.value}))),y=S(()=>vt({extend:vt(EE),...Un({variants:{active:{true:{base:ec(r.ui?.button?.variants?.active?.true?.base,a.activeClass)},false:{base:ec(r.ui?.button?.variants?.active?.false?.base,a.inactiveClass)}}}},r.ui?.button||{})})({color:a.color,variant:a.variant,size:s.value??a.size,loading:d.value,block:a.block,square:a.square||!n.default&&!a.label,leading:h.value,trailing:p.value,fieldGroup:o.value}));return(g,b)=>(C(),R(f2,de({type:f(a).type,disabled:f(a).disabled||d.value},f(Bc)(f(i),["type","disabled","onClick"]),{custom:""}),{default:E(({active:w,..._})=>[ie(pc,de(_,{"data-slot":"base",class:y.value.base({class:[f(a).ui?.base,f(a).class],active:w,...w&&f(a).activeVariant?{variant:f(a).activeVariant}:{},...w&&f(a).activeColor?{color:f(a).activeColor}:{}}),onClick:u}),{default:E(()=>[j(g.$slots,"leading",{ui:y.value},()=>[f(h)&&f(m)?(C(),R(cn,{key:0,name:f(m),"data-slot":"leadingIcon",class:Ae(y.value.leadingIcon({class:f(a).ui?.leadingIcon,active:w}))},null,8,["name","class"])):f(a).avatar?(C(),R(su,de({key:1,size:f(a).ui?.leadingAvatarSize||y.value.leadingAvatarSize()},f(a).avatar,{"data-slot":"leadingAvatar",class:y.value.leadingAvatar({class:f(a).ui?.leadingAvatar,active:w})}),null,16,["size","class"])):ve("",!0)]),j(g.$slots,"default",{ui:y.value},()=>[f(a).label!==void 0&&f(a).label!==null?(C(),ye("span",{key:0,"data-slot":"label",class:Ae(y.value.label({class:f(a).ui?.label,active:w}))},Me(f(a).label),3)):ve("",!0)]),j(g.$slots,"trailing",{ui:y.value},()=>[f(p)&&f(v)?(C(),R(cn,{key:0,name:f(v),"data-slot":"trailingIcon",class:Ae(y.value.trailingIcon({class:f(a).ui?.trailingIcon,active:w}))},null,8,["name","class"])):ve("",!0)])]),_:2},1040,["class"])]),_:3},16,["type","disabled"]))}},$E={slots:{root:"gap-2",base:"relative overflow-hidden rounded-full bg-accented",indicator:"rounded-full size-full transition-transform duration-200 ease-out",status:"flex text-dimmed transition-[width] duration-200",steps:"grid items-end",step:"truncate text-end row-start-1 col-start-1 transition-opacity"},variants:{animation:{carousel:"","carousel-inverse":"",swing:"",elastic:""},color:{primary:{indicator:"bg-primary",steps:"text-primary"},secondary:{indicator:"bg-secondary",steps:"text-secondary"},success:{indicator:"bg-success",steps:"text-success"},info:{indicator:"bg-info",steps:"text-info"},warning:{indicator:"bg-warning",steps:"text-warning"},error:{indicator:"bg-error",steps:"text-error"},neutral:{indicator:"bg-inverted",steps:"text-inverted"}},size:{"2xs":{status:"text-xs",steps:"text-xs"},xs:{status:"text-xs",steps:"text-xs"},sm:{status:"text-sm",steps:"text-sm"},md:{status:"text-sm",steps:"text-sm"},lg:{status:"text-sm",steps:"text-sm"},xl:{status:"text-base",steps:"text-base"},"2xl":{status:"text-base",steps:"text-base"}},step:{active:{step:"opacity-100"},first:{step:"opacity-100 text-muted"},other:{step:"opacity-0"},last:{step:""}},orientation:{horizontal:{root:"w-full flex flex-col",base:"w-full",status:"flex-row items-center justify-end min-w-fit"},vertical:{root:"h-full flex flex-row-reverse",base:"h-full",status:"flex-col justify-end min-h-fit"}},inverted:{true:{status:"self-end"}}},compoundVariants:[{inverted:!0,orientation:"horizontal",class:{step:"text-start",status:"flex-row-reverse"}},{inverted:!0,orientation:"vertical",class:{steps:"items-start",status:"flex-col-reverse"}},{orientation:"horizontal",size:"2xs",class:"h-px"},{orientation:"horizontal",size:"xs",class:"h-0.5"},{orientation:"horizontal",size:"sm",class:"h-1"},{orientation:"horizontal",size:"md",class:"h-2"},{orientation:"horizontal",size:"lg",class:"h-3"},{orientation:"horizontal",size:"xl",class:"h-4"},{orientation:"horizontal",size:"2xl",class:"h-5"},{orientation:"vertical",size:"2xs",class:"w-px"},{orientation:"vertical",size:"xs",class:"w-0.5"},{orientation:"vertical",size:"sm",class:"w-1"},{orientation:"vertical",size:"md",class:"w-2"},{orientation:"vertical",size:"lg",class:"w-3"},{orientation:"vertical",size:"xl",class:"w-4"},{orientation:"vertical",size:"2xl",class:"w-5"},{orientation:"horizontal",animation:"carousel",class:{indicator:"data-[state=indeterminate]:animate-[carousel_2s_ease-in-out_infinite] data-[state=indeterminate]:rtl:animate-[carousel-rtl_2s_ease-in-out_infinite]"}},{orientation:"vertical",animation:"carousel",class:{indicator:"data-[state=indeterminate]:animate-[carousel-vertical_2s_ease-in-out_infinite]"}},{orientation:"horizontal",animation:"carousel-inverse",class:{indicator:"data-[state=indeterminate]:animate-[carousel-inverse_2s_ease-in-out_infinite] data-[state=indeterminate]:rtl:animate-[carousel-inverse-rtl_2s_ease-in-out_infinite]"}},{orientation:"vertical",animation:"carousel-inverse",class:{indicator:"data-[state=indeterminate]:animate-[carousel-inverse-vertical_2s_ease-in-out_infinite]"}},{orientation:"horizontal",animation:"swing",class:{indicator:"data-[state=indeterminate]:animate-[swing_2s_ease-in-out_infinite]"}},{orientation:"vertical",animation:"swing",class:{indicator:"data-[state=indeterminate]:animate-[swing-vertical_2s_ease-in-out_infinite]"}},{orientation:"horizontal",animation:"elastic",class:{indicator:"data-[state=indeterminate]:animate-[elastic_2s_ease-in-out_infinite]"}},{orientation:"vertical",animation:"elastic",class:{indicator:"data-[state=indeterminate]:animate-[elastic-vertical_2s_ease-in-out_infinite]"}}],defaultVariants:{animation:"carousel",color:"primary",size:"md"}},RE={__name:"Progress",props:{as:{type:null,required:!1},max:{type:[Number,Array],required:!1},status:{type:Boolean,required:!1},inverted:{type:Boolean,required:!1,default:!1},size:{type:null,required:!1},color:{type:null,required:!1},orientation:{type:null,required:!1,default:"horizontal"},animation:{type:null,required:!1},class:{type:null,required:!1},ui:{type:Object,required:!1},getValueLabel:{type:Function,required:!1},getValueText:{type:Function,required:!1},modelValue:{type:[Number,null],required:!1,default:null}},emits:["update:modelValue","update:max"],setup(e,{emit:t}){const n=e,a=t,r=fa(),o=Fn("progress",n),{dir:s}=Hc(),i=zt(),l=Cr(ca(o,"getValueLabel","getValueText","modelValue"),a),c=S(()=>l.value.modelValue===null),u=S(()=>Array.isArray(o.max)),d=S(()=>{if(!(c.value||!o.max))return Array.isArray(o.max)?o.max.length-1:Number(o.max)}),h=S(()=>{if(!c.value)switch(!0){case l.value.modelValue<0:return 0;case l.value.modelValue>(d.value??100):return 100;default:return Math.round(l.value.modelValue/(d.value??100)*100)}}),p=S(()=>{if(h.value!==void 0)return o.orientation==="vertical"?{transform:`translateY(${o.inverted?"":"-"}${100-h.value}%)`}:s.value==="rtl"?{transform:`translateX(${o.inverted?"-":""}${100-h.value}%)`}:{transform:`translateX(${o.inverted?"":"-"}${100-h.value}%)`}}),m=S(()=>{const _=`${Math.max(h.value??0,0)}%`;return o.orientation==="vertical"?{height:_}:{width:_}});function v(_){return _===Number(o.modelValue)}function y(_){return _===0}function g(_){return _===d.value}function b(_){return _=Number(_),v(_)&&!y(_)?"active":y(_)&&v(_)?"first":g(_)&&v(_)?"last":"other"}const w=S(()=>vt({extend:vt($E),...i.ui?.progress||{}})({animation:o.animation,size:o.size,color:o.color,orientation:o.orientation,inverted:o.inverted}));return(_,A)=>(C(),R(f(fe),{as:f(o).as,"data-orientation":f(o).orientation,"data-slot":"root",class:Ae(w.value.root({class:[f(o).ui?.root,f(o).class]}))},{default:E(()=>[!c.value&&(f(o).status||r.status)?(C(),ye("div",{key:0,"data-slot":"status",class:Ae(w.value.status({class:f(o).ui?.status})),style:yn(m.value)},[j(_.$slots,"status",{percent:h.value},()=>[qe(Me(h.value)+"% ",1)])],6)):ve("",!0),ie(f(wI),de(f(l),{max:d.value,"data-slot":"base",class:w.value.base({class:f(o).ui?.base}),style:{transform:"translateZ(0)"}}),{default:E(()=>[ie(f(kI),{"data-slot":"indicator",class:Ae(w.value.indicator({class:f(o).ui?.indicator})),style:yn(p.value)},null,8,["class","style"])]),_:1},16,["max","class"]),u.value?(C(),ye("div",{key:1,"data-slot":"steps",class:Ae(w.value.steps({class:f(o).ui?.steps}))},[(C(!0),ye(ze,null,en(f(o).max,(P,k)=>(C(),ye("div",{key:k,"data-slot":"step",class:Ae(w.value.step({class:f(o).ui?.step,step:b(k)}))},[j(_.$slots,`step-${k}`,{step:P},()=>[qe(Me(P),1)])],2))),128))],2)):ve("",!0)]),_:3},8,["as","data-orientation","class"]))}},LE={slots:{root:"relative group overflow-hidden bg-default shadow-lg rounded-lg ring ring-default p-4 flex gap-2.5",wrapper:"w-0 flex-1 flex flex-col",title:"text-sm font-medium text-highlighted",description:"text-sm text-muted",icon:"shrink-0 size-5",avatar:"shrink-0",avatarSize:"2xl",actions:"flex gap-1.5 shrink-0",progress:"absolute inset-x-0 bottom-0",close:"p-0"},variants:{color:{primary:{root:"outline-primary/25 focus-visible:outline-3 focus-visible:ring-primary",icon:"text-primary"},secondary:{root:"outline-secondary/25 focus-visible:outline-3 focus-visible:ring-secondary",icon:"text-secondary"},success:{root:"outline-success/25 focus-visible:outline-3 focus-visible:ring-success",icon:"text-success"},info:{root:"outline-info/25 focus-visible:outline-3 focus-visible:ring-info",icon:"text-info"},warning:{root:"outline-warning/25 focus-visible:outline-3 focus-visible:ring-warning",icon:"text-warning"},error:{root:"outline-error/25 focus-visible:outline-3 focus-visible:ring-error",icon:"text-error"},neutral:{root:"outline-inverted/25 focus-visible:outline-3 focus-visible:ring-inverted",icon:"text-highlighted"}},orientation:{horizontal:{root:"items-center",actions:"items-center"},vertical:{root:"items-start",actions:"items-start mt-2.5"}},title:{true:{description:"mt-1"}}},defaultVariants:{color:"primary"}},OE={__name:"Toast",props:{as:{type:null,required:!1},title:{type:[String,Object,Function],required:!1},description:{type:[String,Object,Function],required:!1},icon:{type:null,required:!1},avatar:{type:Object,required:!1},color:{type:null,required:!1},orientation:{type:null,required:!1,default:"vertical"},close:{type:[Boolean,Object],required:!1,default:!0},closeIcon:{type:null,required:!1},actions:{type:Array,required:!1},duration:{type:Number,required:!1},progress:{type:[Boolean,Object],required:!1,default:!0},class:{type:null,required:!1},ui:{type:Object,required:!1},defaultOpen:{type:Boolean,required:!1},open:{type:Boolean,required:!1},type:{type:String,required:!1}},emits:["escapeKeyDown","pause","resume","swipeStart","swipeMove","swipeCancel","swipeEnd","update:open"],setup(e,{expose:t,emit:n}){const a=e,r=n,o=fa(),s=Fn("toast",a),{t:i}=Hc(),l=zt(),c=Cr(ca(s,"as","defaultOpen","open","duration","type"),r),u=S(()=>vt({extend:vt(LE),...l.ui?.toast||{}})({color:s.color,orientation:s.orientation,title:!!s.title||!!o.title})),d=Gy("rootRef"),h=V(0);return Xe(()=>{d.value?.$el?.getBoundingClientRect&&(h.value=d.value.$el.getBoundingClientRect().height)}),t({height:h}),(p,m)=>(C(),R(f(WI),de({ref_key:"rootRef",ref:d},f(c),{"data-orientation":f(s).orientation,"data-slot":"root",class:u.value.root({class:[f(s).ui?.root,f(s).class]}),style:{"--height":h.value}}),{default:E(({remaining:v,duration:y,open:g})=>[j(p.$slots,"leading",{ui:u.value},()=>[f(s).avatar?(C(),R(su,de({key:0,size:f(s).ui?.avatarSize||u.value.avatarSize()},f(s).avatar,{"data-slot":"avatar",class:u.value.avatar({class:f(s).ui?.avatar})}),null,16,["size","class"])):f(s).icon?(C(),R(cn,{key:1,name:f(s).icon,"data-slot":"icon",class:Ae(u.value.icon({class:f(s).ui?.icon}))},null,8,["name","class"])):ve("",!0)]),ke("div",{"data-slot":"wrapper",class:Ae(u.value.wrapper({class:f(s).ui?.wrapper}))},[f(s).title||o.title?(C(),R(f(GI),{key:0,"data-slot":"title",class:Ae(u.value.title({class:f(s).ui?.title}))},{default:E(()=>[j(p.$slots,"title",{},()=>[typeof f(s).title=="function"?(C(),R($n(f(s).title()),{key:0})):typeof f(s).title=="object"?(C(),R($n(f(s).title),{key:1})):(C(),ye(ze,{key:2},[qe(Me(f(s).title),1)],64))])]),_:3},8,["class"])):ve("",!0),f(s).description||o.description?(C(),R(f(HI),{key:1,"data-slot":"description",class:Ae(u.value.description({class:f(s).ui?.description}))},{default:E(()=>[j(p.$slots,"description",{},()=>[typeof f(s).description=="function"?(C(),R($n(f(s).description()),{key:0})):typeof f(s).description=="object"?(C(),R($n(f(s).description),{key:1})):(C(),ye(ze,{key:2},[qe(Me(f(s).description),1)],64))])]),_:3},8,["class"])):ve("",!0),f(s).orientation==="vertical"&&(f(s).actions?.length||o.actions)?(C(),ye("div",{key:2,"data-slot":"actions",class:Ae(u.value.actions({class:f(s).ui?.actions}))},[j(p.$slots,"actions",{},()=>[(C(!0),ye(ze,null,en(f(s).actions,(b,w)=>(C(),R(f(Cg),{key:w,"alt-text":b.label||"Action","as-child":"",onClick:m[0]||(m[0]=Vt(()=>{},["stop"]))},{default:E(()=>[ie(gr,de({size:"xs",color:f(s).color},{ref_for:!0},b),null,16,["color"])]),_:2},1032,["alt-text"]))),128))])],2)):ve("",!0)],2),f(s).orientation==="horizontal"&&(f(s).actions?.length||o.actions)||f(s).close?(C(),ye("div",{key:0,"data-slot":"actions",class:Ae(u.value.actions({class:f(s).ui?.actions,orientation:"horizontal"}))},[f(s).orientation==="horizontal"&&(f(s).actions?.length||o.actions)?j(p.$slots,"actions",{key:0},()=>[(C(!0),ye(ze,null,en(f(s).actions,(b,w)=>(C(),R(f(Cg),{key:w,"alt-text":b.label||"Action","as-child":"",onClick:m[1]||(m[1]=Vt(()=>{},["stop"]))},{default:E(()=>[ie(gr,de({size:"xs",color:f(s).color},{ref_for:!0},b),null,16,["color"])]),_:2},1032,["alt-text"]))),128))]):ve("",!0),f(s).close||o.close?(C(),R(f(Ob),{key:1,"as-child":""},{default:E(()=>[j(p.$slots,"close",{ui:u.value},()=>[f(s).close?(C(),R(gr,de({key:0,icon:f(s).closeIcon||f(l).ui.icons.close,color:"neutral",variant:"link","aria-label":f(i)("toast.close")},typeof f(s).close=="object"?f(s).close:{},{"data-slot":"close",class:u.value.close({class:f(s).ui?.close}),onClick:m[2]||(m[2]=Vt(()=>{},["stop"]))}),null,16,["icon","aria-label","class"])):ve("",!0)])]),_:3})):ve("",!0)],2)):ve("",!0),f(s).progress&&g&&v>0&&y?(C(),R(RE,de({key:1,"model-value":v/y*100,color:f(s).color},typeof f(s).progress=="object"?f(s).progress:{},{size:"sm","data-slot":"progress",class:u.value.progress({class:f(s).ui?.progress})}),null,16,["model-value","color","class"])):ve("",!0)]),_:3},16,["data-orientation","class","style"]))}},NE={slots:{viewport:"fixed flex flex-col w-[calc(100%-2rem)] sm:w-96 z-[100] data-[expanded=true]:h-(--height) focus:outline-none",base:"pointer-events-auto absolute inset-x-0 z-(--index) transform-(--transform) data-[expanded=false]:data-[front=false]:h-(--front-height) data-[expanded=false]:data-[front=false]:*:opacity-0 data-[front=false]:*:transition-opacity data-[front=false]:*:duration-100 data-[state=closed]:animate-[toast-closed_200ms_ease-in-out] data-[state=closed]:data-[expanded=false]:data-[front=false]:animate-[toast-collapsed-closed_200ms_ease-in-out] data-[state=open]:data-[pulsing=odd]:animate-[toast-pulse-a_300ms_ease-out] data-[state=open]:data-[pulsing=even]:animate-[toast-pulse-b_300ms_ease-out] data-[swipe=move]:transition-none transition-[transform,translate,height] duration-200 ease-out"},variants:{position:{"top-left":{viewport:"left-4"},"top-center":{viewport:"left-1/2 transform -translate-x-1/2"},"top-right":{viewport:"right-4"},"bottom-left":{viewport:"left-4"},"bottom-center":{viewport:"left-1/2 transform -translate-x-1/2"},"bottom-right":{viewport:"right-4"}},swipeDirection:{up:"data-[swipe=end]:animate-[toast-slide-up_200ms_ease-out]",right:"data-[swipe=end]:animate-[toast-slide-right_200ms_ease-out]",down:"data-[swipe=end]:animate-[toast-slide-down_200ms_ease-out]",left:"data-[swipe=end]:animate-[toast-slide-left_200ms_ease-out]"}},compoundVariants:[{position:["top-left","top-center","top-right"],class:{viewport:"top-4",base:"top-0 data-[state=open]:animate-[toast-slide-in-from-top_200ms_ease-in-out]"}},{position:["bottom-left","bottom-center","bottom-right"],class:{viewport:"bottom-4",base:"bottom-0 data-[state=open]:animate-[toast-slide-in-from-bottom_200ms_ease-in-out]"}},{swipeDirection:["left","right"],class:"data-[swipe=move]:translate-x-(--reka-toast-swipe-move-x) data-[swipe=end]:translate-x-(--reka-toast-swipe-end-x) data-[swipe=cancel]:translate-x-0"},{swipeDirection:["up","down"],class:"data-[swipe=move]:translate-y-(--reka-toast-swipe-move-y) data-[swipe=end]:translate-y-(--reka-toast-swipe-end-y) data-[swipe=cancel]:translate-y-0"}],defaultVariants:{position:"bottom-right"}},FE={name:"Toaster"},qE=Object.assign(FE,{props:{position:{type:null,required:!1},expand:{type:Boolean,required:!1,default:!0},progress:{type:Boolean,required:!1,default:!0},portal:{type:[Boolean,String],required:!1,skipCheck:!0,default:!0},max:{type:Number,required:!1,default:5},class:{type:null,required:!1},ui:{type:Object,required:!1},label:{type:String,required:!1},duration:{type:Number,required:!1,default:5e3},disableSwipe:{type:Boolean,required:!1},swipeThreshold:{type:Number,required:!1}},setup(e){const n=Fn("toaster",e),{toasts:a,remove:r}=hD(),o=zt();An(Hb,It(()=>n.max));const s=Cr(ca(n,"duration","label","swipeThreshold","disableSwipe")),i=Fi(It(()=>n.portal)),l=S(()=>{switch(n.position){case"top-center":return"up";case"top-right":case"bottom-right":return"right";case"bottom-center":return"down";case"top-left":case"bottom-left":return"left"}return"right"}),c=S(()=>vt({extend:vt(NE),...o.ui?.toaster||{}})({position:n.position,swipeDirection:l.value}));function u(g,b){g||r(b)}const d=V(!1),h=S(()=>n.expand||d.value),p=V([]),m=S(()=>p.value.reduce((g,{height:b})=>g+b+16,0)),v=S(()=>p.value[p.value.length-1]?.height||0);function y(g){return p.value.slice(g+1).reduce((b,{height:w})=>b+w+16,0)}return(g,b)=>(C(),R(f(AI),de({"swipe-direction":l.value},f(s)),{default:E(()=>[j(g.$slots,"default"),(C(!0),ye(ze,null,en(f(a),(w,_)=>(C(),R(OE,de({key:w.id,ref_for:!0,ref_key:"refs",ref:p,progress:f(n).progress},{ref_for:!0},f(Bc)(w,["id","close","_duplicate","_updated"]),{close:w.close,"data-expanded":h.value,"data-front":!h.value&&_===f(a).length-1,"data-pulsing":w._duplicate?w._duplicate%2===0?"even":"odd":void 0,style:{"--index":_-f(a).length+f(a).length,"--before":f(a).length-1-_,"--offset":y(_),"--scale":h.value?"1":"calc(1 - var(--before) * var(--scale-factor))","--translate":h.value?"calc(var(--offset) * var(--translate-factor))":"calc(var(--before) * var(--gap))","--transform":"translateY(var(--translate)) scale(var(--scale))"},"data-slot":"base",class:c.value.base({class:[f(n).ui?.base,w.onClick?"cursor-pointer":void 0]}),"onUpdate:open":A=>u(A,w.id),onClick:A=>w.onClick&&w.onClick(w)}),null,16,["progress","close","data-expanded","data-front","data-pulsing","style","class","onUpdate:open","onClick"]))),128)),ie(f(zI),$e(Oe(f(i))),{default:E(()=>[ie(f(XI),{"data-expanded":h.value,"data-slot":"viewport",class:Ae(c.value.viewport({class:[f(n).ui?.viewport,f(n).class]})),style:yn({"--scale-factor":"0.05","--translate-factor":f(n).position?.startsWith("top")?"1px":"-1px","--gap":f(n).position?.startsWith("top")?"16px":"-16px","--front-height":`${v.value}px`,"--height":`${m.value}px`}),onMouseenter:b[0]||(b[0]=w=>d.value=!0),onMouseleave:b[1]||(b[1]=w=>d.value=!1)},null,8,["data-expanded","class","style"])]),_:1},16)]),_:3},16,["swipe-direction"]))}});function BE(){const e=Bf([]),t=(c,u)=>{const{props:d,defaultOpen:h,destroyOnClose:p}=u||{},m=Rn({id:Symbol(import.meta.dev?"useOverlay":""),isOpen:!!h,component:ki(c),isMounted:!!h,destroyOnClose:!!p,originalProps:d||{},props:{...d}});return e.push(m),{...m,open:v=>n(m.id,v),close:v=>a(m.id,v),patch:v=>s(m.id,v)}},n=(c,u)=>{const d=i(c);u?d.props={...d.originalProps,...u}:d.props={...d.originalProps},d.isOpen=!0,d.isMounted=!0;const h=new Promise(p=>d.resolvePromise=p);return Object.assign(h,{id:c,isMounted:d.isMounted,isOpen:d.isOpen,result:h})},a=(c,u)=>{const d=i(c);d.isOpen=!1,d.resolvePromise&&(d.resolvePromise(u),d.resolvePromise=void 0)},r=()=>{e.forEach(c=>a(c.id))},o=c=>{const u=i(c);if(u.isMounted=!1,u.destroyOnClose){const d=e.findIndex(h=>h.id===c);e.splice(d,1)}},s=(c,u)=>{const d=i(c);d.props={...d.props,...u}},i=c=>{const u=e.find(d=>d.id===c);if(!u)throw new Error("Overlay not found");return u};return{overlays:e,open:n,close:a,closeAll:r,create:t,patch:s,unmount:o,isOpen:c=>i(c).isOpen}}const HE=Ii(BE),VE={__name:"OverlayProvider",setup(e){const{overlays:t,unmount:n,close:a}=HE(),r=S(()=>t.filter(i=>i.isMounted)),o=i=>{a(i),n(i)},s=(i,l)=>{a(i,l)};return(i,l)=>(C(!0),ye(ze,null,en(r.value,c=>(C(),R($n(c.component),de({key:c.id},{ref_for:!0},c.props,{open:c.isOpen,"onUpdate:open":u=>c.isOpen=u,onClose:u=>s(c.id,u),"onAfter:leave":u=>o(c.id)}),null,16,["open","onUpdate:open","onClose","onAfter:leave"]))),128))}},zE={name:"App"},jE=Object.assign(zE,{props:{tooltip:{type:Object,required:!1},toaster:{type:[Object,null],required:!1},locale:{type:Object,required:!1},portal:{type:[Boolean,String],required:!1,skipCheck:!0,default:"body"},dir:{type:String,required:!1},scrollBody:{type:[Boolean,Object],required:!1},nonce:{type:String,required:!1}},setup(e){const t=e,n=Ja(ca(t,"scrollBody")),a=It(()=>t.tooltip),r=It(()=>t.toaster),o=It(()=>t.locale);return An(g1,o),An(Bb,It(()=>t.portal)),(i,l)=>(C(),R(f(Cx),de({"use-id":()=>Uy(),dir:t.dir||o.value?.dir,locale:o.value?.code},f(n)),{default:E(()=>[ie(f(t8),$e(Oe(a.value)),{default:E(()=>[e.toaster!==null?(C(),R(qE,$e(de({key:0},r.value)),{default:E(()=>[j(i.$slots,"default")]),_:3},16)):j(i.$slots,"default",{key:1}),ie(VE)]),_:3},16)]),_:3},16,["use-id","dir","locale"]))}});function p2(e){return es()?(ts(e),!0):!1}const rd=new WeakMap,WE=(...e)=>{var t;const n=e[0],a=(t=Mt())==null?void 0:t.proxy;if(a==null&&!ns())throw new Error("injectLocal must be called in setup");return a&&rd.has(a)&&n in rd.get(a)?rd.get(a)[n]:rt(...e)},lu=typeof window<"u"&&typeof document<"u";typeof WorkerGlobalScope<"u"&&globalThis instanceof WorkerGlobalScope;const UE=Object.prototype.toString,GE=e=>UE.call(e)==="[object Object]",xa=()=>{},YE=KE();function KE(){var e,t;return lu&&((e=window?.navigator)==null?void 0:e.userAgent)&&(/iP(?:ad|hone|od)/.test(window.navigator.userAgent)||((t=window?.navigator)==null?void 0:t.maxTouchPoints)>2&&/iPad|Macintosh/.test(window?.navigator.userAgent))}function h2(...e){if(e.length!==1)return It(...e);const t=e[0];return typeof t=="function"?br(Ci(()=>({get:t,set:xa}))):V(t)}function m2(e,t){function n(...a){return new Promise((r,o)=>{Promise.resolve(e(()=>t.apply(this,a),{fn:t,thisArg:this,args:a})).then(r).catch(o)})}return n}const g2=e=>e();function XE(e,t={}){let n,a,r=xa;const o=l=>{clearTimeout(l),r(),r=xa};let s;return l=>{const c=He(e),u=He(t.maxWait);return n&&o(n),c<=0||u!==void 0&&u<=0?(a&&(o(a),a=void 0),Promise.resolve(l())):new Promise((d,h)=>{r=t.rejectOnCancel?h:d,s=l,u&&!a&&(a=setTimeout(()=>{n&&o(n),a=void 0,d(s())},u)),n=setTimeout(()=>{a&&o(a),a=void 0,d(l())},c)})}}function JE(e=g2,t={}){const{initialState:n="active"}=t,a=h2(n==="active");function r(){a.value=!1}function o(){a.value=!0}return{isActive:br(a),pause:r,resume:o,eventFilter:(...i)=>{a.value&&e(...i)}}}function QE(e){let t;function n(){return t||(t=e()),t}return n.reset=async()=>{const a=t;t=void 0,a&&await a},n}function Rg(e){return e.endsWith("rem")?Number.parseFloat(e)*16:Number.parseFloat(e)}function od(e){return Array.isArray(e)?e:[e]}function ZE(e){return Mt()}function mae(e,t=200,n={}){return m2(XE(t,n),e)}function e$(e,t,n={}){const{eventFilter:a=g2,...r}=n;return Se(e,m2(a,t),r)}function t$(e,t,n={}){const{eventFilter:a,initialState:r="active",...o}=n,{eventFilter:s,pause:i,resume:l,isActive:c}=JE(a,{initialState:r});return{stop:e$(e,t,{...o,eventFilter:s}),pause:i,resume:l,isActive:c}}function v2(e,t=!0,n){ZE()?Xe(e,n):t?e():Ve(e)}function n$(e,t,n={}){const{immediate:a=!0,immediateCallback:r=!1}=n,o=at(!1);let s;function i(){s&&(clearTimeout(s),s=void 0)}function l(){o.value=!1,i()}function c(...u){r&&e(),i(),o.value=!0,s=setTimeout(()=>{o.value=!1,s=void 0,e(...u)},He(t))}return a&&(o.value=!0,lu&&c()),p2(l),{isPending:ea(o),start:c,stop:l}}function gae(e=!1,t={}){const{truthyValue:n=!0,falsyValue:a=!1}=t,r=et(e),o=at(e);function s(i){if(arguments.length)return o.value=i,o.value;{const l=He(n);return o.value=o.value===l?He(a):l,o.value}}return r?s:[o,s]}function a$(e,t,n){return Se(e,t,{...n,immediate:!0})}const Xo=lu?window:void 0,y2=lu?window.navigator:void 0;function ko(e){var t;const n=He(e);return(t=n?.$el)!=null?t:n}function vr(...e){const t=[],n=()=>{t.forEach(i=>i()),t.length=0},a=(i,l,c,u)=>(i.addEventListener(l,c,u),()=>i.removeEventListener(l,c,u)),r=S(()=>{const i=od(He(e[0])).filter(l=>l!=null);return i.every(l=>typeof l!="string")?i:void 0}),o=a$(()=>{var i,l;return[(l=(i=r.value)==null?void 0:i.map(c=>ko(c)))!=null?l:[Xo].filter(c=>c!=null),od(He(r.value?e[1]:e[0])),od(f(r.value?e[2]:e[1])),He(r.value?e[3]:e[2])]},([i,l,c,u])=>{if(n(),!i?.length||!l?.length||!c?.length)return;const d=GE(u)?{...u}:u;t.push(...i.flatMap(h=>l.flatMap(p=>c.map(m=>a(h,p,m,d)))))},{flush:"post"}),s=()=>{o(),n()};return p2(n),s}let Lg=!1;function vae(e,t,n={}){const{window:a=Xo,ignore:r=[],capture:o=!0,detectIframe:s=!1,controls:i=!1}=n;if(!a)return i?{stop:xa,cancel:xa,trigger:xa}:xa;if(YE&&!Lg){Lg=!0;const y={passive:!0};Array.from(a.document.body.children).forEach(g=>g.addEventListener("click",xa,y)),a.document.documentElement.addEventListener("click",xa,y)}let l=!0;const c=y=>He(r).some(g=>{if(typeof g=="string")return Array.from(a.document.querySelectorAll(g)).some(b=>b===y.target||y.composedPath().includes(b));{const b=ko(g);return b&&(y.target===b||y.composedPath().includes(b))}});function u(y){const g=He(y);return g&&g.$.subTree.shapeFlag===16}function d(y,g){const b=He(y),w=b.$.subTree&&b.$.subTree.children;return w==null||!Array.isArray(w)?!1:w.some(_=>_.el===g.target||g.composedPath().includes(_.el))}const h=y=>{const g=ko(e);if(y.target!=null&&!(!(g instanceof Element)&&u(e)&&d(e,y))&&!(!g||g===y.target||y.composedPath().includes(g))){if("detail"in y&&y.detail===0&&(l=!c(y)),!l){l=!0;return}t(y)}};let p=!1;const m=[vr(a,"click",y=>{p||(p=!0,setTimeout(()=>{p=!1},0),h(y))},{passive:!0,capture:o}),vr(a,"pointerdown",y=>{const g=ko(e);l=!c(y)&&!!(g&&!y.composedPath().includes(g))},{passive:!0}),s&&vr(a,"blur",y=>{setTimeout(()=>{var g;const b=ko(e);((g=a.document.activeElement)==null?void 0:g.tagName)==="IFRAME"&&!b?.contains(a.document.activeElement)&&t(y)},0)},{passive:!0})].filter(Boolean),v=()=>m.forEach(y=>y());return i?{stop:v,cancel:()=>{l=!1},trigger:y=>{l=!0,h(y),l=!1}}:v}function r$(){const e=at(!1),t=Mt();return t&&Xe(()=>{e.value=!0},t),e}function Np(e){const t=r$();return S(()=>(t.value,!!e()))}const o$=Symbol("vueuse-ssr-width");function s$(){const e=ns()?WE(o$,null):null;return typeof e=="number"?e:void 0}function i$(e,t={}){const{window:n=Xo,ssrWidth:a=s$()}=t,r=Np(()=>n&&"matchMedia"in n&&typeof n.matchMedia=="function"),o=at(typeof a=="number"),s=at(),i=at(!1),l=c=>{i.value=c.matches};return qt(()=>{if(o.value){o.value=!r.value;const c=He(e).split(",");i.value=c.some(u=>{const d=u.includes("not all"),h=u.match(/\(\s*min-width:\s*(-?\d+(?:\.\d*)?[a-z]+\s*)\)/),p=u.match(/\(\s*max-width:\s*(-?\d+(?:\.\d*)?[a-z]+\s*)\)/);let m=!!(h||p);return h&&m&&(m=a>=Rg(h[1])),p&&m&&(m=a<=Rg(p[1])),d?!m:m});return}r.value&&(s.value=n.matchMedia(He(e)),i.value=s.value.matches)}),vr(s,"change",l,{passive:!0}),S(()=>i.value)}function Og(e,t={}){const{controls:n=!1,navigator:a=y2}=t,r=Np(()=>a&&"permissions"in a),o=at(),s=typeof e=="string"?{name:e}:e,i=at(),l=()=>{var u,d;i.value=(d=(u=o.value)==null?void 0:u.state)!=null?d:"prompt"};vr(o,"change",l,{passive:!0});const c=QE(async()=>{if(r.value){if(!o.value)try{o.value=await a.permissions.query(s)}catch{o.value=void 0}finally{l()}if(n)return Ze(o.value)}});return c(),n?{state:i,isSupported:r,query:c}:i}function yae(e={}){const{navigator:t=y2,read:n=!1,source:a,copiedDuring:r=1500,legacy:o=!1}=e,s=Np(()=>t&&"clipboard"in t),i=Og("clipboard-read"),l=Og("clipboard-write"),c=S(()=>s.value||o),u=at(""),d=at(!1),h=n$(()=>d.value=!1,r,{immediate:!1});async function p(){let b=!(s.value&&g(i.value));if(!b)try{u.value=await t.clipboard.readText()}catch{b=!0}b&&(u.value=y())}c.value&&n&&vr(["copy","cut"],p,{passive:!0});async function m(b=He(a)){if(c.value&&b!=null){let w=!(s.value&&g(l.value));if(!w)try{await t.clipboard.writeText(b)}catch{w=!0}w&&v(b),u.value=b,d.value=!0,h.start()}}function v(b){const w=document.createElement("textarea");w.value=b??"",w.style.position="absolute",w.style.opacity="0",document.body.appendChild(w),w.select(),document.execCommand("copy"),w.remove()}function y(){var b,w,_;return(_=(w=(b=document?.getSelection)==null?void 0:b.call(document))==null?void 0:w.toString())!=null?_:""}function g(b){return b==="granted"||b==="prompt"}return{isSupported:c,text:u,copied:d,copy:m}}const cl=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},ul="__vueuse_ssr_handlers__",l$=c$();function c$(){return ul in cl||(cl[ul]=cl[ul]||{}),cl[ul]}function b2(e,t){return l$[e]||t}function u$(e){return i$("(prefers-color-scheme: dark)",e)}function d$(e){return e==null?"any":e instanceof Set?"set":e instanceof Map?"map":e instanceof Date?"date":typeof e=="boolean"?"boolean":typeof e=="string"?"string":typeof e=="object"?"object":Number.isNaN(e)?"any":"number"}const f$={boolean:{read:e=>e==="true",write:e=>String(e)},object:{read:e=>JSON.parse(e),write:e=>JSON.stringify(e)},number:{read:e=>Number.parseFloat(e),write:e=>String(e)},any:{read:e=>e,write:e=>String(e)},string:{read:e=>e,write:e=>String(e)},map:{read:e=>new Map(JSON.parse(e)),write:e=>JSON.stringify(Array.from(e.entries()))},set:{read:e=>new Set(JSON.parse(e)),write:e=>JSON.stringify(Array.from(e))},date:{read:e=>new Date(e),write:e=>e.toISOString()}},Ng="vueuse-storage";function p$(e,t,n,a={}){var r;const{flush:o="pre",deep:s=!0,listenToStorageChanges:i=!0,writeDefaults:l=!0,mergeDefaults:c=!1,shallow:u,window:d=Xo,eventFilter:h,onError:p=O=>{console.error(O)},initOnMounted:m}=a,v=(u?at:V)(typeof t=="function"?t():t),y=S(()=>He(e));if(!n)try{n=b2("getDefaultStorage",()=>{var O;return(O=Xo)==null?void 0:O.localStorage})()}catch(O){p(O)}if(!n)return v;const g=He(t),b=d$(g),w=(r=a.serializer)!=null?r:f$[b],{pause:_,resume:A}=t$(v,O=>Y(O),{flush:o,deep:s,eventFilter:h});Se(y,()=>z(),{flush:o});let P=!1;const k=O=>{m&&!P||z(O)},T=O=>{m&&!P||te(O)};d&&i&&(n instanceof Storage?vr(d,"storage",k,{passive:!0}):vr(d,Ng,T)),m?v2(()=>{P=!0,z()}):z();function I(O,D){if(d){const q={key:y.value,oldValue:O,newValue:D,storageArea:n};d.dispatchEvent(n instanceof Storage?new StorageEvent("storage",q):new CustomEvent(Ng,{detail:q}))}}function Y(O){try{const D=n.getItem(y.value);if(O==null)I(D,null),n.removeItem(y.value);else{const q=w.write(O);D!==q&&(n.setItem(y.value,q),I(D,q))}}catch(D){p(D)}}function Q(O){const D=O?O.newValue:n.getItem(y.value);if(D==null)return l&&g!=null&&n.setItem(y.value,w.write(g)),g;if(!O&&c){const q=w.read(D);return typeof c=="function"?c(q,g):b==="object"&&!Array.isArray(q)?{...g,...q}:q}else return typeof D!="string"?D:w.read(D)}function z(O){if(!(O&&O.storageArea!==n)){if(O&&O.key==null){v.value=g;return}if(!(O&&O.key!==y.value)){_();try{const D=w.write(v.value);(O===void 0||O?.newValue!==D)&&(v.value=Q(O))}catch(D){p(D)}finally{O?Ve(A):A()}}}}function te(O){z(O.detail)}return v}const h$="*,*::before,*::after{-webkit-transition:none!important;-moz-transition:none!important;-o-transition:none!important;-ms-transition:none!important;transition:none!important}";function w2(e={}){const{selector:t="html",attribute:n="class",initialValue:a="auto",window:r=Xo,storage:o,storageKey:s="vueuse-color-scheme",listenToStorageChanges:i=!0,storageRef:l,emitAuto:c,disableTransition:u=!0}=e,d={auto:"",light:"light",dark:"dark",...e.modes||{}},h=u$({window:r}),p=S(()=>h.value?"dark":"light"),m=l||(s==null?h2(a):p$(s,a,o,{window:r,listenToStorageChanges:i})),v=S(()=>m.value==="auto"?p.value:m.value),y=b2("updateHTMLAttrs",(_,A,P)=>{const k=typeof _=="string"?r?.document.querySelector(_):ko(_);if(!k)return;const T=new Set,I=new Set;let Y=null;if(A==="class"){const z=P.split(/\s/g);Object.values(d).flatMap(te=>(te||"").split(/\s/g)).filter(Boolean).forEach(te=>{z.includes(te)?T.add(te):I.add(te)})}else Y={key:A,value:P};if(T.size===0&&I.size===0&&Y===null)return;let Q;u&&(Q=r.document.createElement("style"),Q.appendChild(document.createTextNode(h$)),r.document.head.appendChild(Q));for(const z of T)k.classList.add(z);for(const z of I)k.classList.remove(z);Y&&k.setAttribute(Y.key,Y.value),u&&(r.getComputedStyle(Q).opacity,document.head.removeChild(Q))});function g(_){var A;y(t,n,(A=d[_])!=null?A:_)}function b(_){e.onChanged?e.onChanged(_,g):g(_)}Se(v,b,{flush:"post",immediate:!0}),v2(()=>b(v.value));const w=S({get(){return c?m.value:v.value},set(_){m.value=_}});return Object.assign(w,{store:m,system:p,state:v})}function bae(e={}){const{valueDark:t="dark",valueLight:n=""}=e,a=w2({...e,onChanged:(s,i)=>{var l;e.onChanged?(l=e.onChanged)==null||l.call(e,s==="dark",i,s):i(s)},modes:{dark:t,light:n}}),r=S(()=>a.system.value);return S({get(){return a.value==="dark"},set(s){const i=s?"dark":"light";r.value===i?a.value="auto":a.value=i}})}function m$(e,t){typeof console<"u"&&(console.warn("[intlify] "+e),t&&console.warn(t.stack))}const hc=typeof window<"u",xr=(e,t=!1)=>t?Symbol.for(e):Symbol(e),g$=(e,t,n)=>v$({l:e,k:t,s:n}),v$=e=>JSON.stringify(e).replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029").replace(/\u0027/g,"\\u0027"),Dt=e=>typeof e=="number"&&isFinite(e),y$=e=>Fp(e)==="[object Date]",Jo=e=>Fp(e)==="[object RegExp]",cu=e=>Ye(e)&&Object.keys(e).length===0,Ft=Object.assign,b$=Object.create,ut=(e=null)=>b$(e);let Fg;const jr=()=>Fg||(Fg=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:ut());function qg(e){return e.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&apos;").replace(/\//g,"&#x2F;").replace(/=/g,"&#x3D;")}function Bg(e){return e.replace(/&(?![a-zA-Z0-9#]{2,6};)/g,"&amp;").replace(/"/g,"&quot;").replace(/'/g,"&apos;").replace(/</g,"&lt;").replace(/>/g,"&gt;")}function w$(e){return e=e.replace(/(\w+)\s*=\s*"([^"]*)"/g,(a,r,o)=>`${r}="${Bg(o)}"`),e=e.replace(/(\w+)\s*=\s*'([^']*)'/g,(a,r,o)=>`${r}='${Bg(o)}'`),/\s*on\w+\s*=\s*["']?[^"'>]+["']?/gi.test(e)&&(e=e.replace(/(\s+)(on)(\w+\s*=)/gi,"$1&#111;n$3")),[/(\s+(?:href|src|action|formaction)\s*=\s*["']?)\s*javascript:/gi,/(style\s*=\s*["'][^"']*url\s*\(\s*)javascript:/gi].forEach(a=>{e=e.replace(a,"$1javascript&#58;")}),e}const _$=Object.prototype.hasOwnProperty;function Bn(e,t){return _$.call(e,t)}const At=Array.isArray,yt=e=>typeof e=="function",Te=e=>typeof e=="string",nt=e=>typeof e=="boolean",ot=e=>e!==null&&typeof e=="object",k$=e=>ot(e)&&yt(e.then)&&yt(e.catch),_2=Object.prototype.toString,Fp=e=>_2.call(e),Ye=e=>Fp(e)==="[object Object]",C$=e=>e==null?"":At(e)||Ye(e)&&e.toString===_2?JSON.stringify(e,null,2):String(e);function qp(e,t=""){return e.reduce((n,a,r)=>r===0?n+a:n+t+a,"")}const dl=e=>!ot(e)||At(e);function $l(e,t){if(dl(e)||dl(t))throw new Error("Invalid value");const n=[{src:e,des:t}];for(;n.length;){const{src:a,des:r}=n.pop();Object.keys(a).forEach(o=>{o!=="__proto__"&&(ot(a[o])&&!ot(r[o])&&(r[o]=Array.isArray(a[o])?[]:ut()),dl(r[o])||dl(a[o])?r[o]=a[o]:n.push({src:a[o],des:r[o]}))})}}function S$(e,t,n){return{line:e,column:t,offset:n}}function hf(e,t,n){return{start:e,end:t}}const it={EXPECTED_TOKEN:1,INVALID_TOKEN_IN_PLACEHOLDER:2,UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER:3,UNKNOWN_ESCAPE_SEQUENCE:4,INVALID_UNICODE_ESCAPE_SEQUENCE:5,UNBALANCED_CLOSING_BRACE:6,UNTERMINATED_CLOSING_BRACE:7,EMPTY_PLACEHOLDER:8,NOT_ALLOW_NEST_PLACEHOLDER:9,INVALID_LINKED_FORMAT:10,MUST_HAVE_MESSAGES_IN_PLURAL:11,UNEXPECTED_EMPTY_LINKED_MODIFIER:12,UNEXPECTED_EMPTY_LINKED_KEY:13,UNEXPECTED_LEXICAL_ANALYSIS:14},x$=17;function uu(e,t,n={}){const{domain:a,messages:r,args:o}=n,s=e,i=new SyntaxError(String(s));return i.code=e,t&&(i.location=t),i.domain=a,i}function A$(e){throw e}const Jn=" ",P$="\r",Xt=`
31
- `,M$="\u2028",T$="\u2029";function I$(e){const t=e;let n=0,a=1,r=1,o=0;const s=k=>t[k]===P$&&t[k+1]===Xt,i=k=>t[k]===Xt,l=k=>t[k]===T$,c=k=>t[k]===M$,u=k=>s(k)||i(k)||l(k)||c(k),d=()=>n,h=()=>a,p=()=>r,m=()=>o,v=k=>s(k)||l(k)||c(k)?Xt:t[k],y=()=>v(n),g=()=>v(n+o);function b(){return o=0,u(n)&&(a++,r=0),s(n)&&n++,n++,r++,t[n]}function w(){return s(n+o)&&o++,o++,t[n+o]}function _(){n=0,a=1,r=1,o=0}function A(k=0){o=k}function P(){const k=n+o;for(;k!==n;)b();o=0}return{index:d,line:h,column:p,peekOffset:m,charAt:v,currentChar:y,currentPeek:g,next:b,peek:w,reset:_,resetPeek:A,skipToPeek:P}}const wa=void 0,D$=".",Hg="'",E$="tokenizer";function $$(e,t={}){const n=t.location!==!1,a=I$(e),r=()=>a.index(),o=()=>S$(a.line(),a.column(),a.index()),s=o(),i=r(),l={currentType:13,offset:i,startLoc:s,endLoc:s,lastType:13,lastOffset:i,lastStartLoc:s,lastEndLoc:s,braceNest:0,inLinked:!1,text:""},c=()=>l,{onError:u}=t;function d(x,M,N,...H){const oe=c();if(M.column+=N,M.offset+=N,u){const ae=n?hf(oe.startLoc,M):null,F=uu(x,ae,{domain:E$,args:H});u(F)}}function h(x,M,N){x.endLoc=o(),x.currentType=M;const H={type:M};return n&&(H.loc=hf(x.startLoc,x.endLoc)),N!=null&&(H.value=N),H}const p=x=>h(x,13);function m(x,M){return x.currentChar()===M?(x.next(),M):(d(it.EXPECTED_TOKEN,o(),0,M),"")}function v(x){let M="";for(;x.currentPeek()===Jn||x.currentPeek()===Xt;)M+=x.currentPeek(),x.peek();return M}function y(x){const M=v(x);return x.skipToPeek(),M}function g(x){if(x===wa)return!1;const M=x.charCodeAt(0);return M>=97&&M<=122||M>=65&&M<=90||M===95}function b(x){if(x===wa)return!1;const M=x.charCodeAt(0);return M>=48&&M<=57}function w(x,M){const{currentType:N}=M;if(N!==2)return!1;v(x);const H=g(x.currentPeek());return x.resetPeek(),H}function _(x,M){const{currentType:N}=M;if(N!==2)return!1;v(x);const H=x.currentPeek()==="-"?x.peek():x.currentPeek(),oe=b(H);return x.resetPeek(),oe}function A(x,M){const{currentType:N}=M;if(N!==2)return!1;v(x);const H=x.currentPeek()===Hg;return x.resetPeek(),H}function P(x,M){const{currentType:N}=M;if(N!==7)return!1;v(x);const H=x.currentPeek()===".";return x.resetPeek(),H}function k(x,M){const{currentType:N}=M;if(N!==8)return!1;v(x);const H=g(x.currentPeek());return x.resetPeek(),H}function T(x,M){const{currentType:N}=M;if(!(N===7||N===11))return!1;v(x);const H=x.currentPeek()===":";return x.resetPeek(),H}function I(x,M){const{currentType:N}=M;if(N!==9)return!1;const H=()=>{const ae=x.currentPeek();return ae==="{"?g(x.peek()):ae==="@"||ae==="|"||ae===":"||ae==="."||ae===Jn||!ae?!1:ae===Xt?(x.peek(),H()):Q(x,!1)},oe=H();return x.resetPeek(),oe}function Y(x){v(x);const M=x.currentPeek()==="|";return x.resetPeek(),M}function Q(x,M=!0){const N=(oe=!1,ae="")=>{const F=x.currentPeek();return F==="{"||F==="@"||!F?oe:F==="|"?!(ae===Jn||ae===Xt):F===Jn?(x.peek(),N(!0,Jn)):F===Xt?(x.peek(),N(!0,Xt)):!0},H=N();return M&&x.resetPeek(),H}function z(x,M){const N=x.currentChar();return N===wa?wa:M(N)?(x.next(),N):null}function te(x){const M=x.charCodeAt(0);return M>=97&&M<=122||M>=65&&M<=90||M>=48&&M<=57||M===95||M===36}function O(x){return z(x,te)}function D(x){const M=x.charCodeAt(0);return M>=97&&M<=122||M>=65&&M<=90||M>=48&&M<=57||M===95||M===36||M===45}function q(x){return z(x,D)}function G(x){const M=x.charCodeAt(0);return M>=48&&M<=57}function L(x){return z(x,G)}function ee(x){const M=x.charCodeAt(0);return M>=48&&M<=57||M>=65&&M<=70||M>=97&&M<=102}function K(x){return z(x,ee)}function ce(x){let M="",N="";for(;M=L(x);)N+=M;return N}function ue(x){let M="";for(;;){const N=x.currentChar();if(N==="{"||N==="}"||N==="@"||N==="|"||!N)break;if(N===Jn||N===Xt)if(Q(x))M+=N,x.next();else{if(Y(x))break;M+=N,x.next()}else M+=N,x.next()}return M}function be(x){y(x);let M="",N="";for(;M=q(x);)N+=M;const H=x.currentChar();if(H&&H!=="}"&&H!==wa&&H!==Jn&&H!==Xt&&H!==" "){const oe=pe(x);return d(it.INVALID_TOKEN_IN_PLACEHOLDER,o(),0,N+oe),N+oe}return x.currentChar()===wa&&d(it.UNTERMINATED_CLOSING_BRACE,o(),0),N}function ge(x){y(x);let M="";return x.currentChar()==="-"?(x.next(),M+=`-${ce(x)}`):M+=ce(x),x.currentChar()===wa&&d(it.UNTERMINATED_CLOSING_BRACE,o(),0),M}function we(x){return x!==Hg&&x!==Xt}function me(x){y(x),m(x,"'");let M="",N="";for(;M=z(x,we);)M==="\\"?N+=X(x):N+=M;const H=x.currentChar();return H===Xt||H===wa?(d(it.UNTERMINATED_SINGLE_QUOTE_IN_PLACEHOLDER,o(),0),H===Xt&&(x.next(),m(x,"'")),N):(m(x,"'"),N)}function X(x){const M=x.currentChar();switch(M){case"\\":case"'":return x.next(),`\\${M}`;case"u":return le(x,M,4);case"U":return le(x,M,6);default:return d(it.UNKNOWN_ESCAPE_SEQUENCE,o(),0,M),""}}function le(x,M,N){m(x,M);let H="";for(let oe=0;oe<N;oe++){const ae=K(x);if(!ae){d(it.INVALID_UNICODE_ESCAPE_SEQUENCE,o(),0,`\\${M}${H}${x.currentChar()}`);break}H+=ae}return`\\${M}${H}`}function se(x){return x!=="{"&&x!=="}"&&x!==Jn&&x!==Xt}function pe(x){y(x);let M="",N="";for(;M=z(x,se);)N+=M;return N}function Pe(x){let M="",N="";for(;M=O(x);)N+=M;return N}function $(x){const M=N=>{const H=x.currentChar();return H==="{"||H==="@"||H==="|"||H==="("||H===")"||!H||H===Jn?N:(N+=H,x.next(),M(N))};return M("")}function B(x){y(x);const M=m(x,"|");return y(x),M}function J(x,M){let N=null;switch(x.currentChar()){case"{":return M.braceNest>=1&&d(it.NOT_ALLOW_NEST_PLACEHOLDER,o(),0),x.next(),N=h(M,2,"{"),y(x),M.braceNest++,N;case"}":return M.braceNest>0&&M.currentType===2&&d(it.EMPTY_PLACEHOLDER,o(),0),x.next(),N=h(M,3,"}"),M.braceNest--,M.braceNest>0&&y(x),M.inLinked&&M.braceNest===0&&(M.inLinked=!1),N;case"@":return M.braceNest>0&&d(it.UNTERMINATED_CLOSING_BRACE,o(),0),N=W(x,M)||p(M),M.braceNest=0,N;default:{let oe=!0,ae=!0,F=!0;if(Y(x))return M.braceNest>0&&d(it.UNTERMINATED_CLOSING_BRACE,o(),0),N=h(M,1,B(x)),M.braceNest=0,M.inLinked=!1,N;if(M.braceNest>0&&(M.currentType===4||M.currentType===5||M.currentType===6))return d(it.UNTERMINATED_CLOSING_BRACE,o(),0),M.braceNest=0,U(x,M);if(oe=w(x,M))return N=h(M,4,be(x)),y(x),N;if(ae=_(x,M))return N=h(M,5,ge(x)),y(x),N;if(F=A(x,M))return N=h(M,6,me(x)),y(x),N;if(!oe&&!ae&&!F)return N=h(M,12,pe(x)),d(it.INVALID_TOKEN_IN_PLACEHOLDER,o(),0,N.value),y(x),N;break}}return N}function W(x,M){const{currentType:N}=M;let H=null;const oe=x.currentChar();switch((N===7||N===8||N===11||N===9)&&(oe===Xt||oe===Jn)&&d(it.INVALID_LINKED_FORMAT,o(),0),oe){case"@":return x.next(),H=h(M,7,"@"),M.inLinked=!0,H;case".":return y(x),x.next(),h(M,8,".");case":":return y(x),x.next(),h(M,9,":");default:return Y(x)?(H=h(M,1,B(x)),M.braceNest=0,M.inLinked=!1,H):P(x,M)||T(x,M)?(y(x),W(x,M)):k(x,M)?(y(x),h(M,11,Pe(x))):I(x,M)?(y(x),oe==="{"?J(x,M)||H:h(M,10,$(x))):(N===7&&d(it.INVALID_LINKED_FORMAT,o(),0),M.braceNest=0,M.inLinked=!1,U(x,M))}}function U(x,M){let N={type:13};if(M.braceNest>0)return J(x,M)||p(M);if(M.inLinked)return W(x,M)||p(M);switch(x.currentChar()){case"{":return J(x,M)||p(M);case"}":return d(it.UNBALANCED_CLOSING_BRACE,o(),0),x.next(),h(M,3,"}");case"@":return W(x,M)||p(M);default:{if(Y(x))return N=h(M,1,B(x)),M.braceNest=0,M.inLinked=!1,N;if(Q(x))return h(M,0,ue(x));break}}return N}function ne(){const{currentType:x,offset:M,startLoc:N,endLoc:H}=l;return l.lastType=x,l.lastOffset=M,l.lastStartLoc=N,l.lastEndLoc=H,l.offset=r(),l.startLoc=o(),a.currentChar()===wa?h(l,13):U(a,l)}return{nextToken:ne,currentOffset:r,currentPosition:o,context:c}}const R$="parser",L$=/(?:\\\\|\\'|\\u([0-9a-fA-F]{4})|\\U([0-9a-fA-F]{6}))/g;function O$(e,t,n){switch(e){case"\\\\":return"\\";case"\\'":return"'";default:{const a=parseInt(t||n,16);return a<=55295||a>=57344?String.fromCodePoint(a):"�"}}}function N$(e={}){const t=e.location!==!1,{onError:n}=e;function a(g,b,w,_,...A){const P=g.currentPosition();if(P.offset+=_,P.column+=_,n){const k=t?hf(w,P):null,T=uu(b,k,{domain:R$,args:A});n(T)}}function r(g,b,w){const _={type:g};return t&&(_.start=b,_.end=b,_.loc={start:w,end:w}),_}function o(g,b,w,_){t&&(g.end=b,g.loc&&(g.loc.end=w))}function s(g,b){const w=g.context(),_=r(3,w.offset,w.startLoc);return _.value=b,o(_,g.currentOffset(),g.currentPosition()),_}function i(g,b){const w=g.context(),{lastOffset:_,lastStartLoc:A}=w,P=r(5,_,A);return P.index=parseInt(b,10),g.nextToken(),o(P,g.currentOffset(),g.currentPosition()),P}function l(g,b){const w=g.context(),{lastOffset:_,lastStartLoc:A}=w,P=r(4,_,A);return P.key=b,g.nextToken(),o(P,g.currentOffset(),g.currentPosition()),P}function c(g,b){const w=g.context(),{lastOffset:_,lastStartLoc:A}=w,P=r(9,_,A);return P.value=b.replace(L$,O$),g.nextToken(),o(P,g.currentOffset(),g.currentPosition()),P}function u(g){const b=g.nextToken(),w=g.context(),{lastOffset:_,lastStartLoc:A}=w,P=r(8,_,A);return b.type!==11?(a(g,it.UNEXPECTED_EMPTY_LINKED_MODIFIER,w.lastStartLoc,0),P.value="",o(P,_,A),{nextConsumeToken:b,node:P}):(b.value==null&&a(g,it.UNEXPECTED_LEXICAL_ANALYSIS,w.lastStartLoc,0,Qn(b)),P.value=b.value||"",o(P,g.currentOffset(),g.currentPosition()),{node:P})}function d(g,b){const w=g.context(),_=r(7,w.offset,w.startLoc);return _.value=b,o(_,g.currentOffset(),g.currentPosition()),_}function h(g){const b=g.context(),w=r(6,b.offset,b.startLoc);let _=g.nextToken();if(_.type===8){const A=u(g);w.modifier=A.node,_=A.nextConsumeToken||g.nextToken()}switch(_.type!==9&&a(g,it.UNEXPECTED_LEXICAL_ANALYSIS,b.lastStartLoc,0,Qn(_)),_=g.nextToken(),_.type===2&&(_=g.nextToken()),_.type){case 10:_.value==null&&a(g,it.UNEXPECTED_LEXICAL_ANALYSIS,b.lastStartLoc,0,Qn(_)),w.key=d(g,_.value||"");break;case 4:_.value==null&&a(g,it.UNEXPECTED_LEXICAL_ANALYSIS,b.lastStartLoc,0,Qn(_)),w.key=l(g,_.value||"");break;case 5:_.value==null&&a(g,it.UNEXPECTED_LEXICAL_ANALYSIS,b.lastStartLoc,0,Qn(_)),w.key=i(g,_.value||"");break;case 6:_.value==null&&a(g,it.UNEXPECTED_LEXICAL_ANALYSIS,b.lastStartLoc,0,Qn(_)),w.key=c(g,_.value||"");break;default:{a(g,it.UNEXPECTED_EMPTY_LINKED_KEY,b.lastStartLoc,0);const A=g.context(),P=r(7,A.offset,A.startLoc);return P.value="",o(P,A.offset,A.startLoc),w.key=P,o(w,A.offset,A.startLoc),{nextConsumeToken:_,node:w}}}return o(w,g.currentOffset(),g.currentPosition()),{node:w}}function p(g){const b=g.context(),w=b.currentType===1?g.currentOffset():b.offset,_=b.currentType===1?b.endLoc:b.startLoc,A=r(2,w,_);A.items=[];let P=null;do{const I=P||g.nextToken();switch(P=null,I.type){case 0:I.value==null&&a(g,it.UNEXPECTED_LEXICAL_ANALYSIS,b.lastStartLoc,0,Qn(I)),A.items.push(s(g,I.value||""));break;case 5:I.value==null&&a(g,it.UNEXPECTED_LEXICAL_ANALYSIS,b.lastStartLoc,0,Qn(I)),A.items.push(i(g,I.value||""));break;case 4:I.value==null&&a(g,it.UNEXPECTED_LEXICAL_ANALYSIS,b.lastStartLoc,0,Qn(I)),A.items.push(l(g,I.value||""));break;case 6:I.value==null&&a(g,it.UNEXPECTED_LEXICAL_ANALYSIS,b.lastStartLoc,0,Qn(I)),A.items.push(c(g,I.value||""));break;case 7:{const Y=h(g);A.items.push(Y.node),P=Y.nextConsumeToken||null;break}}}while(b.currentType!==13&&b.currentType!==1);const k=b.currentType===1?b.lastOffset:g.currentOffset(),T=b.currentType===1?b.lastEndLoc:g.currentPosition();return o(A,k,T),A}function m(g,b,w,_){const A=g.context();let P=_.items.length===0;const k=r(1,b,w);k.cases=[],k.cases.push(_);do{const T=p(g);P||(P=T.items.length===0),k.cases.push(T)}while(A.currentType!==13);return P&&a(g,it.MUST_HAVE_MESSAGES_IN_PLURAL,w,0),o(k,g.currentOffset(),g.currentPosition()),k}function v(g){const b=g.context(),{offset:w,startLoc:_}=b,A=p(g);return b.currentType===13?A:m(g,w,_,A)}function y(g){const b=$$(g,Ft({},e)),w=b.context(),_=r(0,w.offset,w.startLoc);return t&&_.loc&&(_.loc.source=g),_.body=v(b),e.onCacheKey&&(_.cacheKey=e.onCacheKey(g)),w.currentType!==13&&a(b,it.UNEXPECTED_LEXICAL_ANALYSIS,w.lastStartLoc,0,g[w.offset]||""),o(_,b.currentOffset(),b.currentPosition()),_}return{parse:y}}function Qn(e){if(e.type===13)return"EOF";const t=(e.value||"").replace(/\r?\n/gu,"\\n");return t.length>10?t.slice(0,9)+"…":t}function F$(e,t={}){const n={ast:e,helpers:new Set};return{context:()=>n,helper:o=>(n.helpers.add(o),o)}}function Vg(e,t){for(let n=0;n<e.length;n++)Bp(e[n],t)}function Bp(e,t){switch(e.type){case 1:Vg(e.cases,t),t.helper("plural");break;case 2:Vg(e.items,t);break;case 6:{Bp(e.key,t),t.helper("linked"),t.helper("type");break}case 5:t.helper("interpolate"),t.helper("list");break;case 4:t.helper("interpolate"),t.helper("named");break}}function q$(e,t={}){const n=F$(e);n.helper("normalize"),e.body&&Bp(e.body,n);const a=n.context();e.helpers=Array.from(a.helpers)}function B$(e){const t=e.body;return t.type===2?zg(t):t.cases.forEach(n=>zg(n)),e}function zg(e){if(e.items.length===1){const t=e.items[0];(t.type===3||t.type===9)&&(e.static=t.value,delete t.value)}else{const t=[];for(let n=0;n<e.items.length;n++){const a=e.items[n];if(!(a.type===3||a.type===9)||a.value==null)break;t.push(a.value)}if(t.length===e.items.length){e.static=qp(t);for(let n=0;n<e.items.length;n++){const a=e.items[n];(a.type===3||a.type===9)&&delete a.value}}}}function wo(e){switch(e.t=e.type,e.type){case 0:{const t=e;wo(t.body),t.b=t.body,delete t.body;break}case 1:{const t=e,n=t.cases;for(let a=0;a<n.length;a++)wo(n[a]);t.c=n,delete t.cases;break}case 2:{const t=e,n=t.items;for(let a=0;a<n.length;a++)wo(n[a]);t.i=n,delete t.items,t.static&&(t.s=t.static,delete t.static);break}case 3:case 9:case 8:case 7:{const t=e;t.value&&(t.v=t.value,delete t.value);break}case 6:{const t=e;wo(t.key),t.k=t.key,delete t.key,t.modifier&&(wo(t.modifier),t.m=t.modifier,delete t.modifier);break}case 5:{const t=e;t.i=t.index,delete t.index;break}case 4:{const t=e;t.k=t.key,delete t.key;break}}delete e.type}function H$(e,t){const{filename:n,breakLineCode:a,needIndent:r}=t,o=t.location!==!1,s={filename:n,code:"",column:1,line:1,offset:0,map:void 0,breakLineCode:a,needIndent:r,indentLevel:0};o&&e.loc&&(s.source=e.loc.source);const i=()=>s;function l(v,y){s.code+=v}function c(v,y=!0){const g=y?a:"";l(r?g+" ".repeat(v):g)}function u(v=!0){const y=++s.indentLevel;v&&c(y)}function d(v=!0){const y=--s.indentLevel;v&&c(y)}function h(){c(s.indentLevel)}return{context:i,push:l,indent:u,deindent:d,newline:h,helper:v=>`_${v}`,needIndent:()=>s.needIndent}}function V$(e,t){const{helper:n}=e;e.push(`${n("linked")}(`),Qo(e,t.key),t.modifier?(e.push(", "),Qo(e,t.modifier),e.push(", _type")):e.push(", undefined, _type"),e.push(")")}function z$(e,t){const{helper:n,needIndent:a}=e;e.push(`${n("normalize")}([`),e.indent(a());const r=t.items.length;for(let o=0;o<r&&(Qo(e,t.items[o]),o!==r-1);o++)e.push(", ");e.deindent(a()),e.push("])")}function j$(e,t){const{helper:n,needIndent:a}=e;if(t.cases.length>1){e.push(`${n("plural")}([`),e.indent(a());const r=t.cases.length;for(let o=0;o<r&&(Qo(e,t.cases[o]),o!==r-1);o++)e.push(", ");e.deindent(a()),e.push("])")}}function W$(e,t){t.body?Qo(e,t.body):e.push("null")}function Qo(e,t){const{helper:n}=e;switch(t.type){case 0:W$(e,t);break;case 1:j$(e,t);break;case 2:z$(e,t);break;case 6:V$(e,t);break;case 8:e.push(JSON.stringify(t.value),t);break;case 7:e.push(JSON.stringify(t.value),t);break;case 5:e.push(`${n("interpolate")}(${n("list")}(${t.index}))`,t);break;case 4:e.push(`${n("interpolate")}(${n("named")}(${JSON.stringify(t.key)}))`,t);break;case 9:e.push(JSON.stringify(t.value),t);break;case 3:e.push(JSON.stringify(t.value),t);break}}const U$=(e,t={})=>{const n=Te(t.mode)?t.mode:"normal",a=Te(t.filename)?t.filename:"message.intl";t.sourceMap;const r=t.breakLineCode!=null?t.breakLineCode:n==="arrow"?";":`
32
- `,o=t.needIndent?t.needIndent:n!=="arrow",s=e.helpers||[],i=H$(e,{filename:a,breakLineCode:r,needIndent:o});i.push(n==="normal"?"function __msg__ (ctx) {":"(ctx) => {"),i.indent(o),s.length>0&&(i.push(`const { ${qp(s.map(u=>`${u}: _${u}`),", ")} } = ctx`),i.newline()),i.push("return "),Qo(i,e),i.deindent(o),i.push("}"),delete e.helpers;const{code:l,map:c}=i.context();return{ast:e,code:l,map:c?c.toJSON():void 0}};function G$(e,t={}){const n=Ft({},t),a=!!n.jit,r=!!n.minify,o=n.optimize==null?!0:n.optimize,i=N$(n).parse(e);return a?(o&&B$(i),r&&wo(i),{ast:i,code:""}):(q$(i,n),U$(i,n))}function Y$(){typeof __INTLIFY_PROD_DEVTOOLS__!="boolean"&&(jr().__INTLIFY_PROD_DEVTOOLS__=!1),typeof __INTLIFY_DROP_MESSAGE_COMPILER__!="boolean"&&(jr().__INTLIFY_DROP_MESSAGE_COMPILER__=!1)}function ia(e){return ot(e)&&Hp(e)===0&&(Bn(e,"b")||Bn(e,"body"))}const k2=["b","body"];function K$(e){return Ar(e,k2)}const C2=["c","cases"];function X$(e){return Ar(e,C2,[])}const S2=["s","static"];function J$(e){return Ar(e,S2)}const x2=["i","items"];function Q$(e){return Ar(e,x2,[])}const A2=["t","type"];function Hp(e){return Ar(e,A2)}const P2=["v","value"];function fl(e,t){const n=Ar(e,P2);if(n!=null)return n;throw ui(t)}const M2=["m","modifier"];function Z$(e){return Ar(e,M2)}const T2=["k","key"];function e9(e){const t=Ar(e,T2);if(t)return t;throw ui(6)}function Ar(e,t,n){for(let a=0;a<t.length;a++){const r=t[a];if(Bn(e,r)&&e[r]!=null)return e[r]}return n}const I2=[...k2,...C2,...S2,...x2,...T2,...M2,...P2,...A2];function ui(e){return new Error(`unhandled node type: ${e}`)}function sd(e){return n=>t9(n,e)}function t9(e,t){const n=K$(t);if(n==null)throw ui(0);if(Hp(n)===1){const o=X$(n);return e.plural(o.reduce((s,i)=>[...s,jg(e,i)],[]))}else return jg(e,n)}function jg(e,t){const n=J$(t);if(n!=null)return e.type==="text"?n:e.normalize([n]);{const a=Q$(t).reduce((r,o)=>[...r,mf(e,o)],[]);return e.normalize(a)}}function mf(e,t){const n=Hp(t);switch(n){case 3:return fl(t,n);case 9:return fl(t,n);case 4:{const a=t;if(Bn(a,"k")&&a.k)return e.interpolate(e.named(a.k));if(Bn(a,"key")&&a.key)return e.interpolate(e.named(a.key));throw ui(n)}case 5:{const a=t;if(Bn(a,"i")&&Dt(a.i))return e.interpolate(e.list(a.i));if(Bn(a,"index")&&Dt(a.index))return e.interpolate(e.list(a.index));throw ui(n)}case 6:{const a=t,r=Z$(a),o=e9(a);return e.linked(mf(e,o),r?mf(e,r):void 0,e.type)}case 7:return fl(t,n);case 8:return fl(t,n);default:throw new Error(`unhandled node on format message part: ${n}`)}}const n9=e=>e;let pl=ut();function a9(e,t={}){let n=!1;const a=t.onError||A$;return t.onError=r=>{n=!0,a(r)},{...G$(e,t),detectError:n}}function r9(e,t){if(!__INTLIFY_DROP_MESSAGE_COMPILER__&&Te(e)){nt(t.warnHtmlMessage)&&t.warnHtmlMessage;const a=(t.onCacheKey||n9)(e),r=pl[a];if(r)return r;const{ast:o,detectError:s}=a9(e,{...t,location:!1,jit:!0}),i=sd(o);return s?i:pl[a]=i}else{const n=e.cacheKey;if(n){const a=pl[n];return a||(pl[n]=sd(e))}else return sd(e)}}let di=null;function o9(e){di=e}function s9(e,t,n){di&&di.emit("i18n:init",{timestamp:Date.now(),i18n:e,version:t,meta:n})}const i9=l9("function:translate");function l9(e){return t=>di&&di.emit(e,t)}const $a={INVALID_ARGUMENT:x$,INVALID_DATE_ARGUMENT:18,INVALID_ISO_DATE_ARGUMENT:19,NOT_SUPPORT_LOCALE_PROMISE_VALUE:21,NOT_SUPPORT_LOCALE_ASYNC_FUNCTION:22,NOT_SUPPORT_LOCALE_TYPE:23},c9=24;function Ra(e){return uu(e,null,void 0)}function Vp(e,t){return t.locale!=null?Wg(t.locale):Wg(e.locale)}let id;function Wg(e){if(Te(e))return e;if(yt(e)){if(e.resolvedOnce&&id!=null)return id;if(e.constructor.name==="Function"){const t=e();if(k$(t))throw Ra($a.NOT_SUPPORT_LOCALE_PROMISE_VALUE);return id=t}else throw Ra($a.NOT_SUPPORT_LOCALE_ASYNC_FUNCTION)}else throw Ra($a.NOT_SUPPORT_LOCALE_TYPE)}function u9(e,t,n){return[...new Set([n,...At(t)?t:ot(t)?Object.keys(t):Te(t)?[t]:[n]])]}function D2(e,t,n){const a=Te(n)?n:fi,r=e;r.__localeChainCache||(r.__localeChainCache=new Map);let o=r.__localeChainCache.get(a);if(!o){o=[];let s=[n];for(;At(s);)s=Ug(o,s,t);const i=At(t)||!Ye(t)?t:t.default?t.default:null;s=Te(i)?[i]:i,At(s)&&Ug(o,s,!1),r.__localeChainCache.set(a,o)}return o}function Ug(e,t,n){let a=!0;for(let r=0;r<t.length&&nt(a);r++){const o=t[r];Te(o)&&(a=d9(e,t[r],n))}return a}function d9(e,t,n){let a;const r=t.split("-");do{const o=r.join("-");a=f9(e,o,n),r.splice(-1,1)}while(r.length&&a===!0);return a}function f9(e,t,n){let a=!1;if(!e.includes(t)&&(a=!0,t)){a=t[t.length-1]!=="!";const r=t.replace(/!/g,"");e.push(r),(At(n)||Ye(n))&&n[r]&&(a=n[r])}return a}const Pr=[];Pr[0]={w:[0],i:[3,0],"[":[4],o:[7]};Pr[1]={w:[1],".":[2],"[":[4],o:[7]};Pr[2]={w:[2],i:[3,0],0:[3,0]};Pr[3]={i:[3,0],0:[3,0],w:[1,1],".":[2,1],"[":[4,1],o:[7,1]};Pr[4]={"'":[5,0],'"':[6,0],"[":[4,2],"]":[1,3],o:8,l:[4,0]};Pr[5]={"'":[4,0],o:8,l:[5,0]};Pr[6]={'"':[4,0],o:8,l:[6,0]};const p9=/^\s?(?:true|false|-?[\d.]+|'[^']*'|"[^"]*")\s?$/;function h9(e){return p9.test(e)}function m9(e){const t=e.charCodeAt(0),n=e.charCodeAt(e.length-1);return t===n&&(t===34||t===39)?e.slice(1,-1):e}function g9(e){if(e==null)return"o";switch(e.charCodeAt(0)){case 91:case 93:case 46:case 34:case 39:return e;case 95:case 36:case 45:return"i";case 9:case 10:case 13:case 160:case 65279:case 8232:case 8233:return"w"}return"i"}function v9(e){const t=e.trim();return e.charAt(0)==="0"&&isNaN(parseInt(e))?!1:h9(t)?m9(t):"*"+t}function y9(e){const t=[];let n=-1,a=0,r=0,o,s,i,l,c,u,d;const h=[];h[0]=()=>{s===void 0?s=i:s+=i},h[1]=()=>{s!==void 0&&(t.push(s),s=void 0)},h[2]=()=>{h[0](),r++},h[3]=()=>{if(r>0)r--,a=4,h[0]();else{if(r=0,s===void 0||(s=v9(s),s===!1))return!1;h[1]()}};function p(){const m=e[n+1];if(a===5&&m==="'"||a===6&&m==='"')return n++,i="\\"+m,h[0](),!0}for(;a!==null;)if(n++,o=e[n],!(o==="\\"&&p())){if(l=g9(o),d=Pr[a],c=d[l]||d.l||8,c===8||(a=c[0],c[1]!==void 0&&(u=h[c[1]],u&&(i=o,u()===!1))))return;if(a===7)return t}}const Gg=new Map;function b9(e,t){return ot(e)?e[t]:null}function w9(e,t){if(!ot(e))return null;let n=Gg.get(t);if(n||(n=y9(t),n&&Gg.set(t,n)),!n)return null;const a=n.length;let r=e,o=0;for(;o<a;){const s=n[o];if(I2.includes(s)&&ia(r))return null;const i=r[s];if(i===void 0||yt(r))return null;r=i,o++}return r}const _9="11.2.8",du=-1,fi="en-US",Yg="",Kg=e=>`${e.charAt(0).toLocaleUpperCase()}${e.substr(1)}`;function k9(){return{upper:(e,t)=>t==="text"&&Te(e)?e.toUpperCase():t==="vnode"&&ot(e)&&"__v_isVNode"in e?e.children.toUpperCase():e,lower:(e,t)=>t==="text"&&Te(e)?e.toLowerCase():t==="vnode"&&ot(e)&&"__v_isVNode"in e?e.children.toLowerCase():e,capitalize:(e,t)=>t==="text"&&Te(e)?Kg(e):t==="vnode"&&ot(e)&&"__v_isVNode"in e?Kg(e.children):e}}let E2;function C9(e){E2=e}let $2;function S9(e){$2=e}let R2;function x9(e){R2=e}let L2=null;const A9=e=>{L2=e},P9=()=>L2;let O2=null;const Xg=e=>{O2=e},M9=()=>O2;let Jg=0;function T9(e={}){const t=yt(e.onWarn)?e.onWarn:m$,n=Te(e.version)?e.version:_9,a=Te(e.locale)||yt(e.locale)?e.locale:fi,r=yt(a)?fi:a,o=At(e.fallbackLocale)||Ye(e.fallbackLocale)||Te(e.fallbackLocale)||e.fallbackLocale===!1?e.fallbackLocale:r,s=Ye(e.messages)?e.messages:ld(r),i=Ye(e.datetimeFormats)?e.datetimeFormats:ld(r),l=Ye(e.numberFormats)?e.numberFormats:ld(r),c=Ft(ut(),e.modifiers,k9()),u=e.pluralRules||ut(),d=yt(e.missing)?e.missing:null,h=nt(e.missingWarn)||Jo(e.missingWarn)?e.missingWarn:!0,p=nt(e.fallbackWarn)||Jo(e.fallbackWarn)?e.fallbackWarn:!0,m=!!e.fallbackFormat,v=!!e.unresolving,y=yt(e.postTranslation)?e.postTranslation:null,g=Ye(e.processor)?e.processor:null,b=nt(e.warnHtmlMessage)?e.warnHtmlMessage:!0,w=!!e.escapeParameter,_=yt(e.messageCompiler)?e.messageCompiler:E2,A=yt(e.messageResolver)?e.messageResolver:$2||b9,P=yt(e.localeFallbacker)?e.localeFallbacker:R2||u9,k=ot(e.fallbackContext)?e.fallbackContext:void 0,T=e,I=ot(T.__datetimeFormatters)?T.__datetimeFormatters:new Map,Y=ot(T.__numberFormatters)?T.__numberFormatters:new Map,Q=ot(T.__meta)?T.__meta:{};Jg++;const z={version:n,cid:Jg,locale:a,fallbackLocale:o,messages:s,modifiers:c,pluralRules:u,missing:d,missingWarn:h,fallbackWarn:p,fallbackFormat:m,unresolving:v,postTranslation:y,processor:g,warnHtmlMessage:b,escapeParameter:w,messageCompiler:_,messageResolver:A,localeFallbacker:P,fallbackContext:k,onWarn:t,__meta:Q};return z.datetimeFormats=i,z.numberFormats=l,z.__datetimeFormatters=I,z.__numberFormatters=Y,__INTLIFY_PROD_DEVTOOLS__&&s9(z,n,Q),z}const ld=e=>({[e]:ut()});function zp(e,t,n,a,r){const{missing:o,onWarn:s}=e;if(o!==null){const i=o(e,n,t,r);return Te(i)?i:t}else return t}function Is(e,t,n){const a=e;a.__localeChainCache=new Map,e.localeFallbacker(e,n,t)}function I9(e,t){return e===t?!1:e.split("-")[0]===t.split("-")[0]}function D9(e,t){const n=t.indexOf(e);if(n===-1)return!1;for(let a=n+1;a<t.length;a++)if(I9(e,t[a]))return!0;return!1}function Qg(e,...t){const{datetimeFormats:n,unresolving:a,fallbackLocale:r,onWarn:o,localeFallbacker:s}=e,{__datetimeFormatters:i}=e,[l,c,u,d]=gf(...t),h=nt(u.missingWarn)?u.missingWarn:e.missingWarn;nt(u.fallbackWarn)?u.fallbackWarn:e.fallbackWarn;const p=!!u.part,m=Vp(e,u),v=s(e,r,m);if(!Te(l)||l==="")return new Intl.DateTimeFormat(m,d).format(c);let y={},g,b=null;const w="datetime format";for(let P=0;P<v.length&&(g=v[P],y=n[g]||{},b=y[l],!Ye(b));P++)zp(e,l,g,h,w);if(!Ye(b)||!Te(g))return a?du:l;let _=`${g}__${l}`;cu(d)||(_=`${_}__${JSON.stringify(d)}`);let A=i.get(_);return A||(A=new Intl.DateTimeFormat(g,Ft({},b,d)),i.set(_,A)),p?A.formatToParts(c):A.format(c)}const N2=["localeMatcher","weekday","era","year","month","day","hour","minute","second","timeZoneName","formatMatcher","hour12","timeZone","dateStyle","timeStyle","calendar","dayPeriod","numberingSystem","hourCycle","fractionalSecondDigits"];function gf(...e){const[t,n,a,r]=e,o=ut();let s=ut(),i;if(Te(t)){const l=t.match(/(\d{4}-\d{2}-\d{2})(T|\s)?(.*)/);if(!l)throw Ra($a.INVALID_ISO_DATE_ARGUMENT);const c=l[3]?l[3].trim().startsWith("T")?`${l[1].trim()}${l[3].trim()}`:`${l[1].trim()}T${l[3].trim()}`:l[1].trim();i=new Date(c);try{i.toISOString()}catch{throw Ra($a.INVALID_ISO_DATE_ARGUMENT)}}else if(y$(t)){if(isNaN(t.getTime()))throw Ra($a.INVALID_DATE_ARGUMENT);i=t}else if(Dt(t))i=t;else throw Ra($a.INVALID_ARGUMENT);return Te(n)?o.key=n:Ye(n)&&Object.keys(n).forEach(l=>{N2.includes(l)?s[l]=n[l]:o[l]=n[l]}),Te(a)?o.locale=a:Ye(a)&&(s=a),Ye(r)&&(s=r),[o.key||"",i,o,s]}function Zg(e,t,n){const a=e;for(const r in n){const o=`${t}__${r}`;a.__datetimeFormatters.has(o)&&a.__datetimeFormatters.delete(o)}}function ev(e,...t){const{numberFormats:n,unresolving:a,fallbackLocale:r,onWarn:o,localeFallbacker:s}=e,{__numberFormatters:i}=e,[l,c,u,d]=vf(...t),h=nt(u.missingWarn)?u.missingWarn:e.missingWarn;nt(u.fallbackWarn)?u.fallbackWarn:e.fallbackWarn;const p=!!u.part,m=Vp(e,u),v=s(e,r,m);if(!Te(l)||l==="")return new Intl.NumberFormat(m,d).format(c);let y={},g,b=null;const w="number format";for(let P=0;P<v.length&&(g=v[P],y=n[g]||{},b=y[l],!Ye(b));P++)zp(e,l,g,h,w);if(!Ye(b)||!Te(g))return a?du:l;let _=`${g}__${l}`;cu(d)||(_=`${_}__${JSON.stringify(d)}`);let A=i.get(_);return A||(A=new Intl.NumberFormat(g,Ft({},b,d)),i.set(_,A)),p?A.formatToParts(c):A.format(c)}const F2=["localeMatcher","style","currency","currencyDisplay","currencySign","useGrouping","minimumIntegerDigits","minimumFractionDigits","maximumFractionDigits","minimumSignificantDigits","maximumSignificantDigits","compactDisplay","notation","signDisplay","unit","unitDisplay","roundingMode","roundingPriority","roundingIncrement","trailingZeroDisplay"];function vf(...e){const[t,n,a,r]=e,o=ut();let s=ut();if(!Dt(t))throw Ra($a.INVALID_ARGUMENT);const i=t;return Te(n)?o.key=n:Ye(n)&&Object.keys(n).forEach(l=>{F2.includes(l)?s[l]=n[l]:o[l]=n[l]}),Te(a)?o.locale=a:Ye(a)&&(s=a),Ye(r)&&(s=r),[o.key||"",i,o,s]}function tv(e,t,n){const a=e;for(const r in n){const o=`${t}__${r}`;a.__numberFormatters.has(o)&&a.__numberFormatters.delete(o)}}const E9=e=>e,$9=e=>"",R9="text",L9=e=>e.length===0?"":qp(e),O9=C$;function nv(e,t){return e=Math.abs(e),t===2?e?e>1?1:0:1:e?Math.min(e,2):0}function N9(e){const t=Dt(e.pluralIndex)?e.pluralIndex:-1;return e.named&&(Dt(e.named.count)||Dt(e.named.n))?Dt(e.named.count)?e.named.count:Dt(e.named.n)?e.named.n:t:t}function F9(e,t){t.count||(t.count=e),t.n||(t.n=e)}function q9(e={}){const t=e.locale,n=N9(e),a=ot(e.pluralRules)&&Te(t)&&yt(e.pluralRules[t])?e.pluralRules[t]:nv,r=ot(e.pluralRules)&&Te(t)&&yt(e.pluralRules[t])?nv:void 0,o=g=>g[a(n,g.length,r)],s=e.list||[],i=g=>s[g],l=e.named||ut();Dt(e.pluralIndex)&&F9(n,l);const c=g=>l[g];function u(g,b){const w=yt(e.messages)?e.messages(g,!!b):ot(e.messages)?e.messages[g]:!1;return w||(e.parent?e.parent.message(g):$9)}const d=g=>e.modifiers?e.modifiers[g]:E9,h=Ye(e.processor)&&yt(e.processor.normalize)?e.processor.normalize:L9,p=Ye(e.processor)&&yt(e.processor.interpolate)?e.processor.interpolate:O9,m=Ye(e.processor)&&Te(e.processor.type)?e.processor.type:R9,y={list:i,named:c,plural:o,linked:(g,...b)=>{const[w,_]=b;let A="text",P="";b.length===1?ot(w)?(P=w.modifier||P,A=w.type||A):Te(w)&&(P=w||P):b.length===2&&(Te(w)&&(P=w||P),Te(_)&&(A=_||A));const k=u(g,!0)(y),T=A==="vnode"&&At(k)&&P?k[0]:k;return P?d(P)(T,A):T},message:u,type:m,interpolate:p,normalize:h,values:Ft(ut(),s,l)};return y}const av=()=>"",En=e=>yt(e);function rv(e,...t){const{fallbackFormat:n,postTranslation:a,unresolving:r,messageCompiler:o,fallbackLocale:s,messages:i}=e,[l,c]=yf(...t),u=nt(c.missingWarn)?c.missingWarn:e.missingWarn,d=nt(c.fallbackWarn)?c.fallbackWarn:e.fallbackWarn,h=nt(c.escapeParameter)?c.escapeParameter:e.escapeParameter,p=!!c.resolvedMessage,m=Te(c.default)||nt(c.default)?nt(c.default)?o?l:()=>l:c.default:n?o?l:()=>l:null,v=n||m!=null&&(Te(m)||yt(m)),y=Vp(e,c);h&&B9(c);let[g,b,w]=p?[l,y,i[y]||ut()]:q2(e,l,y,s,d,u),_=g,A=l;if(!p&&!(Te(_)||ia(_)||En(_))&&v&&(_=m,A=_),!p&&(!(Te(_)||ia(_)||En(_))||!Te(b)))return r?du:l;let P=!1;const k=()=>{P=!0},T=En(_)?_:B2(e,l,b,_,A,k);if(P)return _;const I=z9(e,b,w,c),Y=q9(I),Q=H9(e,T,Y);let z=a?a(Q,l):Q;if(h&&Te(z)&&(z=w$(z)),__INTLIFY_PROD_DEVTOOLS__){const te={timestamp:Date.now(),key:Te(l)?l:En(_)?_.key:"",locale:b||(En(_)?_.locale:""),format:Te(_)?_:En(_)?_.source:"",message:z};te.meta=Ft({},e.__meta,P9()||{}),i9(te)}return z}function B9(e){At(e.list)?e.list=e.list.map(t=>Te(t)?qg(t):t):ot(e.named)&&Object.keys(e.named).forEach(t=>{Te(e.named[t])&&(e.named[t]=qg(e.named[t]))})}function q2(e,t,n,a,r,o){const{messages:s,onWarn:i,messageResolver:l,localeFallbacker:c}=e,u=c(e,a,n);let d=ut(),h,p=null;const m="translate";for(let v=0;v<u.length&&(h=u[v],d=s[h]||ut(),(p=l(d,t))===null&&(p=d[t]),!(Te(p)||ia(p)||En(p)));v++)if(!D9(h,u)){const y=zp(e,t,h,o,m);y!==t&&(p=y)}return[p,h,d]}function B2(e,t,n,a,r,o){const{messageCompiler:s,warnHtmlMessage:i}=e;if(En(a)){const c=a;return c.locale=c.locale||n,c.key=c.key||t,c}if(s==null){const c=(()=>a);return c.locale=n,c.key=t,c}const l=s(a,V9(e,n,r,a,i,o));return l.locale=n,l.key=t,l.source=a,l}function H9(e,t,n){return t(n)}function yf(...e){const[t,n,a]=e,r=ut();if(!Te(t)&&!Dt(t)&&!En(t)&&!ia(t))throw Ra($a.INVALID_ARGUMENT);const o=Dt(t)?String(t):(En(t),t);return Dt(n)?r.plural=n:Te(n)?r.default=n:Ye(n)&&!cu(n)?r.named=n:At(n)&&(r.list=n),Dt(a)?r.plural=a:Te(a)?r.default=a:Ye(a)&&Ft(r,a),[o,r]}function V9(e,t,n,a,r,o){return{locale:t,key:n,warnHtmlMessage:r,onError:s=>{throw o&&o(s),s},onCacheKey:s=>g$(t,n,s)}}function z9(e,t,n,a){const{modifiers:r,pluralRules:o,messageResolver:s,fallbackLocale:i,fallbackWarn:l,missingWarn:c,fallbackContext:u}=e,h={locale:t,modifiers:r,pluralRules:o,messages:(p,m)=>{let v=s(n,p);if(v==null&&(u||m)){const[,,y]=q2(u||e,p,t,i,l,c);v=s(y,p)}if(Te(v)||ia(v)){let y=!1;const b=B2(e,p,t,v,p,()=>{y=!0});return y?av:b}else return En(v)?v:av}};return e.processor&&(h.processor=e.processor),a.list&&(h.list=a.list),a.named&&(h.named=a.named),Dt(a.plural)&&(h.pluralIndex=a.plural),h}Y$();const j9="11.2.8";function W9(){typeof __VUE_I18N_FULL_INSTALL__!="boolean"&&(jr().__VUE_I18N_FULL_INSTALL__=!0),typeof __VUE_I18N_LEGACY_API__!="boolean"&&(jr().__VUE_I18N_LEGACY_API__=!0),typeof __INTLIFY_DROP_MESSAGE_COMPILER__!="boolean"&&(jr().__INTLIFY_DROP_MESSAGE_COMPILER__=!1),typeof __INTLIFY_PROD_DEVTOOLS__!="boolean"&&(jr().__INTLIFY_PROD_DEVTOOLS__=!1)}const wn={UNEXPECTED_RETURN_TYPE:c9,INVALID_ARGUMENT:25,MUST_BE_CALL_SETUP_TOP:26,NOT_INSTALLED:27,REQUIRED_VALUE:28,INVALID_VALUE:29,NOT_INSTALLED_WITH_PROVIDE:31,UNEXPECTED_ERROR:32};function Tn(e,...t){return uu(e,null,void 0)}const bf=xr("__translateVNode"),wf=xr("__datetimeParts"),_f=xr("__numberParts"),H2=xr("__setPluralRules"),V2=xr("__injectWithOption"),kf=xr("__dispose");function pi(e){if(!ot(e)||ia(e))return e;for(const t in e)if(Bn(e,t))if(!t.includes("."))ot(e[t])&&pi(e[t]);else{const n=t.split("."),a=n.length-1;let r=e,o=!1;for(let s=0;s<a;s++){if(n[s]==="__proto__")throw new Error(`unsafe key: ${n[s]}`);if(n[s]in r||(r[n[s]]=ut()),!ot(r[n[s]])){o=!0;break}r=r[n[s]]}if(o||(ia(r)?I2.includes(n[a])||delete e[t]:(r[n[a]]=e[t],delete e[t])),!ia(r)){const s=r[n[a]];ot(s)&&pi(s)}}return e}function jp(e,t){const{messages:n,__i18n:a,messageResolver:r,flatJson:o}=t,s=Ye(n)?n:At(a)?ut():{[e]:ut()};if(At(a)&&a.forEach(i=>{if("locale"in i&&"resource"in i){const{locale:l,resource:c}=i;l?(s[l]=s[l]||ut(),$l(c,s[l])):$l(c,s)}else Te(i)&&$l(JSON.parse(i),s)}),r==null&&o)for(const i in s)Bn(s,i)&&pi(s[i]);return s}function z2(e){return e.type}function j2(e,t,n){let a=ot(t.messages)?t.messages:ut();"__i18nGlobal"in n&&(a=jp(e.locale.value,{messages:a,__i18n:n.__i18nGlobal}));const r=Object.keys(a);r.length&&r.forEach(o=>{e.mergeLocaleMessage(o,a[o])});{if(ot(t.datetimeFormats)){const o=Object.keys(t.datetimeFormats);o.length&&o.forEach(s=>{e.mergeDateTimeFormat(s,t.datetimeFormats[s])})}if(ot(t.numberFormats)){const o=Object.keys(t.numberFormats);o.length&&o.forEach(s=>{e.mergeNumberFormat(s,t.numberFormats[s])})}}}function ov(e){return ie(Mi,null,e,0)}function hi(){return Mt()}const sv="__INTLIFY_META__",iv=()=>[],U9=()=>!1;let lv=0;function cv(e){return((t,n,a,r)=>e(n,a,hi()||void 0,r))}const G9=()=>{const e=hi();let t=null;return e&&(t=z2(e)[sv])?{[sv]:t}:null};function Wp(e={}){const{__root:t,__injectWithOption:n}=e,a=t===void 0,r=e.flatJson,o=hc?V:at;let s=nt(e.inheritLocale)?e.inheritLocale:!0;const i=o(t&&s?t.locale.value:Te(e.locale)?e.locale:fi),l=o(t&&s?t.fallbackLocale.value:Te(e.fallbackLocale)||At(e.fallbackLocale)||Ye(e.fallbackLocale)||e.fallbackLocale===!1?e.fallbackLocale:i.value),c=o(jp(i.value,e)),u=o(Ye(e.datetimeFormats)?e.datetimeFormats:{[i.value]:{}}),d=o(Ye(e.numberFormats)?e.numberFormats:{[i.value]:{}});let h=t?t.missingWarn:nt(e.missingWarn)||Jo(e.missingWarn)?e.missingWarn:!0,p=t?t.fallbackWarn:nt(e.fallbackWarn)||Jo(e.fallbackWarn)?e.fallbackWarn:!0,m=t?t.fallbackRoot:nt(e.fallbackRoot)?e.fallbackRoot:!0,v=!!e.fallbackFormat,y=yt(e.missing)?e.missing:null,g=yt(e.missing)?cv(e.missing):null,b=yt(e.postTranslation)?e.postTranslation:null,w=t?t.warnHtmlMessage:nt(e.warnHtmlMessage)?e.warnHtmlMessage:!0,_=!!e.escapeParameter;const A=t?t.modifiers:Ye(e.modifiers)?e.modifiers:{};let P=e.pluralRules||t&&t.pluralRules,k;k=(()=>{a&&Xg(null);const F={version:j9,locale:i.value,fallbackLocale:l.value,messages:c.value,modifiers:A,pluralRules:P,missing:g===null?void 0:g,missingWarn:h,fallbackWarn:p,fallbackFormat:v,unresolving:!0,postTranslation:b===null?void 0:b,warnHtmlMessage:w,escapeParameter:_,messageResolver:e.messageResolver,messageCompiler:e.messageCompiler,__meta:{framework:"vue"}};F.datetimeFormats=u.value,F.numberFormats=d.value,F.__datetimeFormatters=Ye(k)?k.__datetimeFormatters:void 0,F.__numberFormatters=Ye(k)?k.__numberFormatters:void 0;const re=T9(F);return a&&Xg(re),re})(),Is(k,i.value,l.value);function I(){return[i.value,l.value,c.value,u.value,d.value]}const Y=S({get:()=>i.value,set:F=>{k.locale=F,i.value=F}}),Q=S({get:()=>l.value,set:F=>{k.fallbackLocale=F,l.value=F,Is(k,i.value,F)}}),z=S(()=>c.value),te=S(()=>u.value),O=S(()=>d.value);function D(){return yt(b)?b:null}function q(F){b=F,k.postTranslation=F}function G(){return y}function L(F){F!==null&&(g=cv(F)),y=F,k.missing=g}const ee=(F,re,he,xe,Re,je)=>{I();let We;try{__INTLIFY_PROD_DEVTOOLS__,a||(k.fallbackContext=t?M9():void 0),We=F(k)}finally{__INTLIFY_PROD_DEVTOOLS__,a||(k.fallbackContext=void 0)}if(he!=="translate exists"&&Dt(We)&&We===du||he==="translate exists"&&!We){const[Ge,Lt]=re();return t&&m?xe(t):Re(Ge)}else{if(je(We))return We;throw Tn(wn.UNEXPECTED_RETURN_TYPE)}};function K(...F){return ee(re=>Reflect.apply(rv,null,[re,...F]),()=>yf(...F),"translate",re=>Reflect.apply(re.t,re,[...F]),re=>re,re=>Te(re))}function ce(...F){const[re,he,xe]=F;if(xe&&!ot(xe))throw Tn(wn.INVALID_ARGUMENT);return K(re,he,Ft({resolvedMessage:!0},xe||{}))}function ue(...F){return ee(re=>Reflect.apply(Qg,null,[re,...F]),()=>gf(...F),"datetime format",re=>Reflect.apply(re.d,re,[...F]),()=>Yg,re=>Te(re)||At(re))}function be(...F){return ee(re=>Reflect.apply(ev,null,[re,...F]),()=>vf(...F),"number format",re=>Reflect.apply(re.n,re,[...F]),()=>Yg,re=>Te(re)||At(re))}function ge(F){return F.map(re=>Te(re)||Dt(re)||nt(re)?ov(String(re)):re)}const me={normalize:ge,interpolate:F=>F,type:"vnode"};function X(...F){return ee(re=>{let he;const xe=re;try{xe.processor=me,he=Reflect.apply(rv,null,[xe,...F])}finally{xe.processor=null}return he},()=>yf(...F),"translate",re=>re[bf](...F),re=>[ov(re)],re=>At(re))}function le(...F){return ee(re=>Reflect.apply(ev,null,[re,...F]),()=>vf(...F),"number format",re=>re[_f](...F),iv,re=>Te(re)||At(re))}function se(...F){return ee(re=>Reflect.apply(Qg,null,[re,...F]),()=>gf(...F),"datetime format",re=>re[wf](...F),iv,re=>Te(re)||At(re))}function pe(F){P=F,k.pluralRules=P}function Pe(F,re){return ee(()=>{if(!F)return!1;const he=Te(re)?re:i.value,xe=J(he),Re=k.messageResolver(xe,F);return ia(Re)||En(Re)||Te(Re)},()=>[F],"translate exists",he=>Reflect.apply(he.te,he,[F,re]),U9,he=>nt(he))}function $(F){let re=null;const he=D2(k,l.value,i.value);for(let xe=0;xe<he.length;xe++){const Re=c.value[he[xe]]||{},je=k.messageResolver(Re,F);if(je!=null){re=je;break}}return re}function B(F){const re=$(F);return re??(t?t.tm(F)||{}:{})}function J(F){return c.value[F]||{}}function W(F,re){if(r){const he={[F]:re};for(const xe in he)Bn(he,xe)&&pi(he[xe]);re=he[F]}c.value[F]=re,k.messages=c.value}function U(F,re){c.value[F]=c.value[F]||{};const he={[F]:re};if(r)for(const xe in he)Bn(he,xe)&&pi(he[xe]);re=he[F],$l(re,c.value[F]),k.messages=c.value}function ne(F){return u.value[F]||{}}function x(F,re){u.value[F]=re,k.datetimeFormats=u.value,Zg(k,F,re)}function M(F,re){u.value[F]=Ft(u.value[F]||{},re),k.datetimeFormats=u.value,Zg(k,F,re)}function N(F){return d.value[F]||{}}function H(F,re){d.value[F]=re,k.numberFormats=d.value,tv(k,F,re)}function oe(F,re){d.value[F]=Ft(d.value[F]||{},re),k.numberFormats=d.value,tv(k,F,re)}lv++,t&&hc&&(Se(t.locale,F=>{s&&(i.value=F,k.locale=F,Is(k,i.value,l.value))}),Se(t.fallbackLocale,F=>{s&&(l.value=F,k.fallbackLocale=F,Is(k,i.value,l.value))}));const ae={id:lv,locale:Y,fallbackLocale:Q,get inheritLocale(){return s},set inheritLocale(F){s=F,F&&t&&(i.value=t.locale.value,l.value=t.fallbackLocale.value,Is(k,i.value,l.value))},get availableLocales(){return Object.keys(c.value).sort()},messages:z,get modifiers(){return A},get pluralRules(){return P||{}},get isGlobal(){return a},get missingWarn(){return h},set missingWarn(F){h=F,k.missingWarn=h},get fallbackWarn(){return p},set fallbackWarn(F){p=F,k.fallbackWarn=p},get fallbackRoot(){return m},set fallbackRoot(F){m=F},get fallbackFormat(){return v},set fallbackFormat(F){v=F,k.fallbackFormat=v},get warnHtmlMessage(){return w},set warnHtmlMessage(F){w=F,k.warnHtmlMessage=F},get escapeParameter(){return _},set escapeParameter(F){_=F,k.escapeParameter=F},t:K,getLocaleMessage:J,setLocaleMessage:W,mergeLocaleMessage:U,getPostTranslationHandler:D,setPostTranslationHandler:q,getMissingHandler:G,setMissingHandler:L,[H2]:pe};return ae.datetimeFormats=te,ae.numberFormats=O,ae.rt=ce,ae.te=Pe,ae.tm=B,ae.d=ue,ae.n=be,ae.getDateTimeFormat=ne,ae.setDateTimeFormat=x,ae.mergeDateTimeFormat=M,ae.getNumberFormat=N,ae.setNumberFormat=H,ae.mergeNumberFormat=oe,ae[V2]=n,ae[bf]=X,ae[wf]=se,ae[_f]=le,ae}function Y9(e){const t=Te(e.locale)?e.locale:fi,n=Te(e.fallbackLocale)||At(e.fallbackLocale)||Ye(e.fallbackLocale)||e.fallbackLocale===!1?e.fallbackLocale:t,a=yt(e.missing)?e.missing:void 0,r=nt(e.silentTranslationWarn)||Jo(e.silentTranslationWarn)?!e.silentTranslationWarn:!0,o=nt(e.silentFallbackWarn)||Jo(e.silentFallbackWarn)?!e.silentFallbackWarn:!0,s=nt(e.fallbackRoot)?e.fallbackRoot:!0,i=!!e.formatFallbackMessages,l=Ye(e.modifiers)?e.modifiers:{},c=e.pluralizationRules,u=yt(e.postTranslation)?e.postTranslation:void 0,d=Te(e.warnHtmlInMessage)?e.warnHtmlInMessage!=="off":!0,h=!!e.escapeParameterHtml,p=nt(e.sync)?e.sync:!0;let m=e.messages;if(Ye(e.sharedMessages)){const A=e.sharedMessages;m=Object.keys(A).reduce((k,T)=>{const I=k[T]||(k[T]={});return Ft(I,A[T]),k},m||{})}const{__i18n:v,__root:y,__injectWithOption:g}=e,b=e.datetimeFormats,w=e.numberFormats,_=e.flatJson;return{locale:t,fallbackLocale:n,messages:m,flatJson:_,datetimeFormats:b,numberFormats:w,missing:a,missingWarn:r,fallbackWarn:o,fallbackRoot:s,fallbackFormat:i,modifiers:l,pluralRules:c,postTranslation:u,warnHtmlMessage:d,escapeParameter:h,messageResolver:e.messageResolver,inheritLocale:p,__i18n:v,__root:y,__injectWithOption:g}}function Cf(e={}){const t=Wp(Y9(e)),{__extender:n}=e,a={id:t.id,get locale(){return t.locale.value},set locale(r){t.locale.value=r},get fallbackLocale(){return t.fallbackLocale.value},set fallbackLocale(r){t.fallbackLocale.value=r},get messages(){return t.messages.value},get datetimeFormats(){return t.datetimeFormats.value},get numberFormats(){return t.numberFormats.value},get availableLocales(){return t.availableLocales},get missing(){return t.getMissingHandler()},set missing(r){t.setMissingHandler(r)},get silentTranslationWarn(){return nt(t.missingWarn)?!t.missingWarn:t.missingWarn},set silentTranslationWarn(r){t.missingWarn=nt(r)?!r:r},get silentFallbackWarn(){return nt(t.fallbackWarn)?!t.fallbackWarn:t.fallbackWarn},set silentFallbackWarn(r){t.fallbackWarn=nt(r)?!r:r},get modifiers(){return t.modifiers},get formatFallbackMessages(){return t.fallbackFormat},set formatFallbackMessages(r){t.fallbackFormat=r},get postTranslation(){return t.getPostTranslationHandler()},set postTranslation(r){t.setPostTranslationHandler(r)},get sync(){return t.inheritLocale},set sync(r){t.inheritLocale=r},get warnHtmlInMessage(){return t.warnHtmlMessage?"warn":"off"},set warnHtmlInMessage(r){t.warnHtmlMessage=r!=="off"},get escapeParameterHtml(){return t.escapeParameter},set escapeParameterHtml(r){t.escapeParameter=r},get pluralizationRules(){return t.pluralRules||{}},__composer:t,t(...r){return Reflect.apply(t.t,t,[...r])},rt(...r){return Reflect.apply(t.rt,t,[...r])},te(r,o){return t.te(r,o)},tm(r){return t.tm(r)},getLocaleMessage(r){return t.getLocaleMessage(r)},setLocaleMessage(r,o){t.setLocaleMessage(r,o)},mergeLocaleMessage(r,o){t.mergeLocaleMessage(r,o)},d(...r){return Reflect.apply(t.d,t,[...r])},getDateTimeFormat(r){return t.getDateTimeFormat(r)},setDateTimeFormat(r,o){t.setDateTimeFormat(r,o)},mergeDateTimeFormat(r,o){t.mergeDateTimeFormat(r,o)},n(...r){return Reflect.apply(t.n,t,[...r])},getNumberFormat(r){return t.getNumberFormat(r)},setNumberFormat(r,o){t.setNumberFormat(r,o)},mergeNumberFormat(r,o){t.mergeNumberFormat(r,o)}};return a.__extender=n,a}function K9(e,t,n){return{beforeCreate(){const a=hi();if(!a)throw Tn(wn.UNEXPECTED_ERROR);const r=this.$options;if(r.i18n){const o=r.i18n;if(r.__i18n&&(o.__i18n=r.__i18n),o.__root=t,this===this.$root)this.$i18n=uv(e,o);else{o.__injectWithOption=!0,o.__extender=n.__vueI18nExtend,this.$i18n=Cf(o);const s=this.$i18n;s.__extender&&(s.__disposer=s.__extender(this.$i18n))}}else if(r.__i18n)if(this===this.$root)this.$i18n=uv(e,r);else{this.$i18n=Cf({__i18n:r.__i18n,__injectWithOption:!0,__extender:n.__vueI18nExtend,__root:t});const o=this.$i18n;o.__extender&&(o.__disposer=o.__extender(this.$i18n))}else this.$i18n=e;r.__i18nGlobal&&j2(t,r,r),this.$t=(...o)=>this.$i18n.t(...o),this.$rt=(...o)=>this.$i18n.rt(...o),this.$te=(o,s)=>this.$i18n.te(o,s),this.$d=(...o)=>this.$i18n.d(...o),this.$n=(...o)=>this.$i18n.n(...o),this.$tm=o=>this.$i18n.tm(o),n.__setInstance(a,this.$i18n)},mounted(){},unmounted(){const a=hi();if(!a)throw Tn(wn.UNEXPECTED_ERROR);const r=this.$i18n;delete this.$t,delete this.$rt,delete this.$te,delete this.$d,delete this.$n,delete this.$tm,r.__disposer&&(r.__disposer(),delete r.__disposer,delete r.__extender),n.__deleteInstance(a),delete this.$i18n}}}function uv(e,t){e.locale=t.locale||e.locale,e.fallbackLocale=t.fallbackLocale||e.fallbackLocale,e.missing=t.missing||e.missing,e.silentTranslationWarn=t.silentTranslationWarn||e.silentFallbackWarn,e.silentFallbackWarn=t.silentFallbackWarn||e.silentFallbackWarn,e.formatFallbackMessages=t.formatFallbackMessages||e.formatFallbackMessages,e.postTranslation=t.postTranslation||e.postTranslation,e.warnHtmlInMessage=t.warnHtmlInMessage||e.warnHtmlInMessage,e.escapeParameterHtml=t.escapeParameterHtml||e.escapeParameterHtml,e.sync=t.sync||e.sync,e.__composer[H2](t.pluralizationRules||e.pluralizationRules);const n=jp(e.locale,{messages:t.messages,__i18n:t.__i18n});return Object.keys(n).forEach(a=>e.mergeLocaleMessage(a,n[a])),t.datetimeFormats&&Object.keys(t.datetimeFormats).forEach(a=>e.mergeDateTimeFormat(a,t.datetimeFormats[a])),t.numberFormats&&Object.keys(t.numberFormats).forEach(a=>e.mergeNumberFormat(a,t.numberFormats[a])),e}const Up={tag:{type:[String,Object]},locale:{type:String},scope:{type:String,validator:e=>e==="parent"||e==="global",default:"parent"},i18n:{type:Object}};function X9({slots:e},t){return t.length===1&&t[0]==="default"?(e.default?e.default():[]).reduce((a,r)=>[...a,...r.type===ze?r.children:[r]],[]):t.reduce((n,a)=>{const r=e[a];return r&&(n[a]=r()),n},ut())}function W2(){return ze}const J9=Z({name:"i18n-t",props:Ft({keypath:{type:String,required:!0},plural:{type:[Number,String],validator:e=>Dt(e)||!isNaN(e)}},Up),setup(e,t){const{slots:n,attrs:a}=t,r=e.i18n||io({useScope:e.scope,__useComponent:!0});return()=>{const o=Object.keys(n).filter(d=>d[0]!=="_"),s=ut();e.locale&&(s.locale=e.locale),e.plural!==void 0&&(s.plural=Te(e.plural)?+e.plural:e.plural);const i=X9(t,o),l=r[bf](e.keypath,i,s),c=Ft(ut(),a),u=Te(e.tag)||ot(e.tag)?e.tag:W2();return Pn(u,c,l)}}}),dv=J9;function Q9(e){return At(e)&&!Te(e[0])}function U2(e,t,n,a){const{slots:r,attrs:o}=t;return()=>{const s={part:!0};let i=ut();e.locale&&(s.locale=e.locale),Te(e.format)?s.key=e.format:ot(e.format)&&(Te(e.format.key)&&(s.key=e.format.key),i=Object.keys(e.format).reduce((h,p)=>n.includes(p)?Ft(ut(),h,{[p]:e.format[p]}):h,ut()));const l=a(e.value,s,i);let c=[s.key];At(l)?c=l.map((h,p)=>{const m=r[h.type],v=m?m({[h.type]:h.value,index:p,parts:l}):[h.value];return Q9(v)&&(v[0].key=`${h.type}-${p}`),v}):Te(l)&&(c=[l]);const u=Ft(ut(),o),d=Te(e.tag)||ot(e.tag)?e.tag:W2();return Pn(d,u,c)}}const Z9=Z({name:"i18n-n",props:Ft({value:{type:Number,required:!0},format:{type:[String,Object]}},Up),setup(e,t){const n=e.i18n||io({useScope:e.scope,__useComponent:!0});return U2(e,t,F2,(...a)=>n[_f](...a))}}),fv=Z9;function eR(e,t){const n=e;if(e.mode==="composition")return n.__getInstance(t)||e.global;{const a=n.__getInstance(t);return a!=null?a.__composer:e.global.__composer}}function tR(e){const t=s=>{const{instance:i,value:l}=s;if(!i||!i.$)throw Tn(wn.UNEXPECTED_ERROR);const c=eR(e,i.$),u=pv(l);return[Reflect.apply(c.t,c,[...hv(u)]),c]};return{created:(s,i)=>{const[l,c]=t(i);hc&&e.global===c&&(s.__i18nWatcher=Se(c.locale,()=>{i.instance&&i.instance.$forceUpdate()})),s.__composer=c,s.textContent=l},unmounted:s=>{hc&&s.__i18nWatcher&&(s.__i18nWatcher(),s.__i18nWatcher=void 0,delete s.__i18nWatcher),s.__composer&&(s.__composer=void 0,delete s.__composer)},beforeUpdate:(s,{value:i})=>{if(s.__composer){const l=s.__composer,c=pv(i);s.textContent=Reflect.apply(l.t,l,[...hv(c)])}},getSSRProps:s=>{const[i]=t(s);return{textContent:i}}}}function pv(e){if(Te(e))return{path:e};if(Ye(e)){if(!("path"in e))throw Tn(wn.REQUIRED_VALUE,"path");return e}else throw Tn(wn.INVALID_VALUE)}function hv(e){const{path:t,locale:n,args:a,choice:r,plural:o}=e,s={},i=a||{};return Te(n)&&(s.locale=n),Dt(r)&&(s.plural=r),Dt(o)&&(s.plural=o),[t,i,s]}function nR(e,t,...n){const a=Ye(n[0])?n[0]:{};(!nt(a.globalInstall)||a.globalInstall)&&([dv.name,"I18nT"].forEach(o=>e.component(o,dv)),[fv.name,"I18nN"].forEach(o=>e.component(o,fv)),[gv.name,"I18nD"].forEach(o=>e.component(o,gv))),e.directive("t",tR(t))}const aR=xr("global-vue-i18n");function rR(e={}){const t=__VUE_I18N_LEGACY_API__&&nt(e.legacy)?e.legacy:__VUE_I18N_LEGACY_API__,n=nt(e.globalInjection)?e.globalInjection:!0,a=new Map,[r,o]=oR(e,t),s=xr("");function i(d){return a.get(d)||null}function l(d,h){a.set(d,h)}function c(d){a.delete(d)}const u={get mode(){return __VUE_I18N_LEGACY_API__&&t?"legacy":"composition"},async install(d,...h){if(d.__VUE_I18N_SYMBOL__=s,d.provide(d.__VUE_I18N_SYMBOL__,u),Ye(h[0])){const v=h[0];u.__composerExtend=v.__composerExtend,u.__vueI18nExtend=v.__vueI18nExtend}let p=null;!t&&n&&(p=pR(d,u.global)),__VUE_I18N_FULL_INSTALL__&&nR(d,u,...h),__VUE_I18N_LEGACY_API__&&t&&d.mixin(K9(o,o.__composer,u));const m=d.unmount;d.unmount=()=>{p&&p(),u.dispose(),m()}},get global(){return o},dispose(){r.stop()},__instances:a,__getInstance:i,__setInstance:l,__deleteInstance:c};return u}function io(e={}){const t=hi();if(t==null)throw Tn(wn.MUST_BE_CALL_SETUP_TOP);if(!t.isCE&&t.appContext.app!=null&&!t.appContext.app.__VUE_I18N_SYMBOL__)throw Tn(wn.NOT_INSTALLED);const n=sR(t),a=lR(n),r=z2(t),o=iR(e,r);if(o==="global")return j2(a,e,r),a;if(o==="parent"){let l=cR(n,t,e.__useComponent);return l==null&&(l=a),l}const s=n;let i=s.__getInstance(t);if(i==null){const l=Ft({},e);"__i18n"in r&&(l.__i18n=r.__i18n),a&&(l.__root=a),i=Wp(l),s.__composerExtend&&(i[kf]=s.__composerExtend(i)),dR(s,t,i),s.__setInstance(t,i)}return i}function oR(e,t){const n=_i(),a=__VUE_I18N_LEGACY_API__&&t?n.run(()=>Cf(e)):n.run(()=>Wp(e));if(a==null)throw Tn(wn.UNEXPECTED_ERROR);return[n,a]}function sR(e){const t=rt(e.isCE?aR:e.appContext.app.__VUE_I18N_SYMBOL__);if(!t)throw Tn(e.isCE?wn.NOT_INSTALLED_WITH_PROVIDE:wn.UNEXPECTED_ERROR);return t}function iR(e,t){return cu(e)?"__i18n"in t?"local":"global":e.useScope?e.useScope:"local"}function lR(e){return e.mode==="composition"?e.global:e.global.__composer}function cR(e,t,n=!1){let a=null;const r=t.root;let o=uR(t,n);for(;o!=null;){const s=e;if(e.mode==="composition")a=s.__getInstance(o);else if(__VUE_I18N_LEGACY_API__){const i=s.__getInstance(o);i!=null&&(a=i.__composer,n&&a&&!a[V2]&&(a=null))}if(a!=null||r===o)break;o=o.parent}return a}function uR(e,t=!1){return e==null?null:t&&e.vnode.ctx||e.parent}function dR(e,t,n){Xe(()=>{},t),_n(()=>{const a=n;e.__deleteInstance(t);const r=a[kf];r&&(r(),delete a[kf])},t)}const fR=["locale","fallbackLocale","availableLocales"],mv=["t","rt","d","n","tm","te"];function pR(e,t){const n=Object.create(null);return fR.forEach(r=>{const o=Object.getOwnPropertyDescriptor(t,r);if(!o)throw Tn(wn.UNEXPECTED_ERROR);const s=et(o.value)?{get(){return o.value.value},set(i){o.value.value=i}}:{get(){return o.get&&o.get()}};Object.defineProperty(n,r,s)}),e.config.globalProperties.$i18n=n,mv.forEach(r=>{const o=Object.getOwnPropertyDescriptor(t,r);if(!o||!o.value)throw Tn(wn.UNEXPECTED_ERROR);Object.defineProperty(e.config.globalProperties,`$${r}`,o)}),()=>{delete e.config.globalProperties.$i18n,mv.forEach(r=>{delete e.config.globalProperties[`$${r}`]})}}const hR=Z({name:"i18n-d",props:Ft({value:{type:[Number,Date],required:!0},format:{type:[String,Object]}},Up),setup(e,t){const n=e.i18n||io({useScope:e.scope,__useComponent:!0});return U2(e,t,N2,(...a)=>n[wf](...a))}}),gv=hR;W9();C9(r9);S9(w9);x9(D2);if(__INTLIFY_PROD_DEVTOOLS__){const e=jr();e.__INTLIFY__=!0,o9(e.__INTLIFY_DEVTOOLS_GLOBAL_HOOK__)}const mR={key:0,class:"traffic-light-spacer"},gR={key:1,class:"window-controls"},vR={key:0,width:"10",height:"10",viewBox:"0 0 10 10"},yR={key:1,width:"10",height:"10",viewBox:"0 0 10 10"},bR=Z({__name:"TitleBar",setup(e){const t=V(!1),n=V(!1),a=V(!1);Xe(()=>{t.value=navigator.platform.toLowerCase().includes("mac"),a.value=navigator.platform.toLowerCase().includes("win"),window.electron?.ipcRenderer?.on("windowState",(i,l)=>{n.value=l})});function r(){window.electron?.ipcRenderer?.send("window-min")}function o(){window.electron?.ipcRenderer?.send("window-maxOrRestore")}function s(){window.electron?.ipcRenderer?.send("window-close")}return(i,l)=>(C(),ye("div",{class:Ae(["title-bar",{"title-bar-windows":a.value}])},[t.value?(C(),ye("div",mR)):ve("",!0),l[4]||(l[4]=ke("div",{class:"drag-region"},null,-1)),!t.value&&!a.value?(C(),ye("div",gR,[ke("button",{class:"control-btn",onClick:r},[...l[0]||(l[0]=[ke("svg",{width:"10",height:"1",viewBox:"0 0 10 1"},[ke("path",{d:"M0 0h10v1H0z",fill:"currentColor"})],-1)])]),ke("button",{class:"control-btn",onClick:o},[n.value?(C(),ye("svg",yR,[...l[2]||(l[2]=[ke("path",{d:"M2 0v2H0v8h8V8h2V0H2zm1 3h5v5H1V3h2z",fill:"currentColor"},null,-1)])])):(C(),ye("svg",vR,[...l[1]||(l[1]=[ke("path",{d:"M0 0v10h10V0H0zm1 1h8v8H1V1z",fill:"currentColor"},null,-1)])]))]),ke("button",{class:"control-btn control-btn-close",onClick:s},[...l[3]||(l[3]=[ke("svg",{width:"10",height:"10",viewBox:"0 0 10 10"},[ke("path",{d:"M1.41 0L0 1.41 3.59 5 0 8.59 1.41 10 5 6.41 8.59 10 10 8.59 6.41 5 10 1.41 8.59 0 5 3.59z",fill:"currentColor"})],-1)])])])):ve("",!0)],2))}}),fu=(e,t)=>{const n=e.__vccOpts||e;for(const[a,r]of t)n[a]=r;return n},wR=fu(bR,[["__scopeId","data-v-80892cbc"]]);function G2(e,t={}){const n=e.detail.originalEvent,a=n.target;if(!a?.isConnected){e.preventDefault();return}t.scrollable&&(n.offsetX>a.clientWidth||n.offsetY>a.clientHeight)&&e.preventDefault()}const _R={slots:{overlay:"fixed inset-0",content:"bg-default divide-y divide-default flex flex-col focus:outline-none",header:"flex items-center gap-1.5 p-4 sm:px-6 min-h-(--ui-header-height)",wrapper:"",body:"flex-1 p-4 sm:p-6",footer:"flex items-center gap-1.5 p-4 sm:px-6",title:"text-highlighted font-semibold",description:"mt-1 text-muted text-sm",close:"absolute top-4 end-4"},variants:{transition:{true:{overlay:"data-[state=open]:animate-[fade-in_200ms_ease-out] data-[state=closed]:animate-[fade-out_200ms_ease-in]",content:"data-[state=open]:animate-[scale-in_200ms_ease-out] data-[state=closed]:animate-[scale-out_200ms_ease-in]"}},fullscreen:{true:{content:"inset-0"},false:{content:"w-[calc(100vw-2rem)] max-w-lg rounded-lg shadow-lg ring ring-default"}},overlay:{true:{overlay:"bg-elevated/75"}},scrollable:{true:{overlay:"overflow-y-auto",content:"relative"},false:{content:"fixed",body:"overflow-y-auto"}}},compoundVariants:[{scrollable:!0,fullscreen:!1,class:{overlay:"grid place-items-center p-4 sm:py-8"}},{scrollable:!1,fullscreen:!1,class:{content:"top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2 max-h-[calc(100dvh-2rem)] sm:max-h-[calc(100dvh-4rem)] overflow-hidden"}}]},kR={__name:"Modal",props:{title:{type:String,required:!1},description:{type:String,required:!1},content:{type:Object,required:!1},overlay:{type:Boolean,required:!1,default:!0},scrollable:{type:Boolean,required:!1},transition:{type:Boolean,required:!1,default:!0},fullscreen:{type:Boolean,required:!1},portal:{type:[Boolean,String],required:!1,skipCheck:!0,default:!0},close:{type:[Boolean,Object],required:!1,default:!0},closeIcon:{type:null,required:!1},dismissible:{type:Boolean,required:!1,default:!0},class:{type:null,required:!1},ui:{type:Object,required:!1},open:{type:Boolean,required:!1},defaultOpen:{type:Boolean,required:!1},modal:{type:Boolean,required:!1,default:!0}},emits:["leave","after:leave","enter","after:enter","close:prevent","update:open"],setup(e,{emit:t}){const n=e,a=t,r=fa(),o=Fn("modal",n),{t:s}=Hc(),i=zt(),l=Cr(ca(o,"open","defaultOpen","modal"),a),c=Fi(It(()=>o.portal)),u=It(()=>o.content),d=S(()=>o.dismissible?{pointerDownOutside:v=>G2(v,{scrollable:o.scrollable})}:["interactOutside","escapeKeyDown"].reduce((y,g)=>(y[g]=b=>{b.preventDefault(),a("close:prevent")},y),{})),[h,p]=d1(),m=S(()=>vt({extend:vt(_R),...i.ui?.modal||{}})({transition:o.transition,fullscreen:o.fullscreen,overlay:o.overlay,scrollable:o.scrollable}));return(v,y)=>(C(),R(f(a7),$e(Oe(f(l))),{default:E(({open:g,close:b})=>[ie(f(h),null,{default:E(()=>[ie(f($7),de({"data-slot":"content",class:m.value.content({class:[!r.default&&f(o).class,f(o).ui?.content]})},u.value,{onEnter:y[0]||(y[0]=w=>a("enter")),onAfterEnter:y[1]||(y[1]=w=>a("after:enter")),onLeave:y[2]||(y[2]=w=>a("leave")),onAfterLeave:y[3]||(y[3]=w=>a("after:leave"))},Wf(d.value)),{default:E(()=>[!f(o).title&&!r.title||!f(o).description&&!r.description||r.content?(C(),R(f(Kc),{key:0},{default:E(()=>[!f(o).title&&!r.title?(C(),R(f(ed),{key:0})):r.content?(C(),R(f(ed),{key:1},{default:E(()=>[j(v.$slots,"title",{},()=>[qe(Me(f(o).title),1)])]),_:3})):ve("",!0),!f(o).description&&!r.description?(C(),R(f(Zu),{key:2})):r.content?(C(),R(f(Zu),{key:3},{default:E(()=>[j(v.$slots,"description",{},()=>[qe(Me(f(o).description),1)])]),_:3})):ve("",!0)]),_:3})):ve("",!0),j(v.$slots,"content",{close:b},()=>[r.header||f(o).title||r.title||f(o).description||r.description||f(o).close||r.close?(C(),ye("div",{key:0,"data-slot":"header",class:Ae(m.value.header({class:f(o).ui?.header}))},[j(v.$slots,"header",{close:b},()=>[f(o).title||r.title||f(o).description||r.description?(C(),ye("div",{key:0,"data-slot":"wrapper",class:Ae(m.value.wrapper({class:f(o).ui?.wrapper}))},[f(o).title||r.title?(C(),R(f(ed),{key:0,"data-slot":"title",class:Ae(m.value.title({class:f(o).ui?.title}))},{default:E(()=>[j(v.$slots,"title",{},()=>[qe(Me(f(o).title),1)])]),_:3},8,["class"])):ve("",!0),f(o).description||r.description?(C(),R(f(Zu),{key:1,"data-slot":"description",class:Ae(m.value.description({class:f(o).ui?.description}))},{default:E(()=>[j(v.$slots,"description",{},()=>[qe(Me(f(o).description),1)])]),_:3},8,["class"])):ve("",!0)],2)):ve("",!0),j(v.$slots,"actions"),f(o).close||r.close?(C(),R(f(o7),{key:1,"as-child":""},{default:E(()=>[j(v.$slots,"close",{ui:m.value},()=>[f(o).close?(C(),R(gr,de({key:0,icon:f(o).closeIcon||f(i).ui.icons.close,color:"neutral",variant:"ghost","aria-label":f(s)("modal.close")},typeof f(o).close=="object"?f(o).close:{},{"data-slot":"close",class:m.value.close({class:f(o).ui?.close})}),null,16,["icon","aria-label","class"])):ve("",!0)])]),_:2},1024)):ve("",!0)])],2)):ve("",!0),r.body?(C(),ye("div",{key:1,"data-slot":"body",class:Ae(m.value.body({class:f(o).ui?.body}))},[j(v.$slots,"body",{close:b})],2)):ve("",!0),r.footer?(C(),ye("div",{key:2,"data-slot":"footer",class:Ae(m.value.footer({class:f(o).ui?.footer}))},[j(v.$slots,"footer",{close:b})],2)):ve("",!0)])]),_:2},1040,["class"])]),_:2},1024),r.default?(C(),R(f(z7),{key:0,"as-child":"",class:Ae(f(o).class)},{default:E(()=>[j(v.$slots,"default",{open:g})]),_:2},1032,["class"])):ve("",!0),ie(f(B7),$e(Oe(f(c))),{default:E(()=>[ie(f(iu),null,{default:E(()=>[f(o).scrollable?(C(),R(f(cg),{key:0,"data-slot":"overlay",class:Ae(m.value.overlay({class:f(o).ui?.overlay}))},{default:E(()=>[ie(f(p))]),_:1},8,["class"])):(C(),ye(ze,{key:1},[f(o).overlay?(C(),R(f(cg),{key:0,"data-slot":"overlay",class:Ae(m.value.overlay({class:f(o).ui?.overlay}))},null,8,["class"])):ve("",!0),ie(f(p))],64))]),_:1})]),_:1},16)]),_:3},16))}},wae={Root:bP,Header:LP,Heading:NP,Grid:xP,Cell:_P,HeadCell:$P,Next:qP,Prev:HP,GridHead:TP,GridBody:PP,GridRow:DP,CellTrigger:CP},qn={Root:Ib,Trigger:Db,Portal:ZM,Content:zM,Arrow:NM,Item:GM,Group:WM,Separator:o6,CheckboxItem:qM,ItemIndicator:KM,Label:JM,RadioGroup:t6,RadioItem:a6,Sub:i6,SubContent:c6,SubTrigger:d6},CR={Root:dT,Trigger:wT,Portal:yT,Content:gT,Arrow:lT},_ae={Root:AT,Header:FT,Heading:BT,Grid:ET,Cell:MT,Next:VT,Prev:jT,GridBody:RT,GridRow:OT,CellTrigger:IT},kae={Root:XT,Header:lI,Heading:uI,Grid:nI,Cell:QT,Next:fI,Prev:hI,GridBody:rI,GridRow:sI,CellTrigger:eI},SR={Root:m6,Trigger:E6,Portal:I6,Content:M6,Arrow:b6,Close:_6,Anchor:v6},Cae={Root:F6,Header:eT,Heading:nT,Grid:j6,Cell:B6,HeadCell:Q6,Next:rT,Prev:sT,GridHead:Y6,GridBody:U6,GridRow:X6,CellTrigger:V6},Sae={Root:b8,Header:D8,Heading:$8,Grid:x8,Cell:_8,Next:L8,Prev:N8,GridBody:P8,GridRow:T8,CellTrigger:C8},xae={Root:z8,Header:tD,Heading:aD,Grid:K8,Cell:W8,Next:oD,Prev:iD,GridBody:J8,GridRow:Z8,CellTrigger:G8},xR={base:"inline-flex items-center justify-center px-1 rounded-sm font-medium font-sans uppercase",variants:{color:{primary:"",secondary:"",success:"",info:"",warning:"",error:"",neutral:""},variant:{solid:"",outline:"",soft:"",subtle:""},size:{sm:"h-4 min-w-[16px] text-[10px]",md:"h-5 min-w-[20px] text-[11px]",lg:"h-6 min-w-[24px] text-[12px]"}},compoundVariants:[{color:"primary",variant:"solid",class:"text-inverted bg-primary"},{color:"secondary",variant:"solid",class:"text-inverted bg-secondary"},{color:"success",variant:"solid",class:"text-inverted bg-success"},{color:"info",variant:"solid",class:"text-inverted bg-info"},{color:"warning",variant:"solid",class:"text-inverted bg-warning"},{color:"error",variant:"solid",class:"text-inverted bg-error"},{color:"primary",variant:"outline",class:"ring ring-inset ring-primary/50 text-primary"},{color:"secondary",variant:"outline",class:"ring ring-inset ring-secondary/50 text-secondary"},{color:"success",variant:"outline",class:"ring ring-inset ring-success/50 text-success"},{color:"info",variant:"outline",class:"ring ring-inset ring-info/50 text-info"},{color:"warning",variant:"outline",class:"ring ring-inset ring-warning/50 text-warning"},{color:"error",variant:"outline",class:"ring ring-inset ring-error/50 text-error"},{color:"primary",variant:"soft",class:"text-primary bg-primary/10"},{color:"secondary",variant:"soft",class:"text-secondary bg-secondary/10"},{color:"success",variant:"soft",class:"text-success bg-success/10"},{color:"info",variant:"soft",class:"text-info bg-info/10"},{color:"warning",variant:"soft",class:"text-warning bg-warning/10"},{color:"error",variant:"soft",class:"text-error bg-error/10"},{color:"primary",variant:"subtle",class:"text-primary ring ring-inset ring-primary/25 bg-primary/10"},{color:"secondary",variant:"subtle",class:"text-secondary ring ring-inset ring-secondary/25 bg-secondary/10"},{color:"success",variant:"subtle",class:"text-success ring ring-inset ring-success/25 bg-success/10"},{color:"info",variant:"subtle",class:"text-info ring ring-inset ring-info/25 bg-info/10"},{color:"warning",variant:"subtle",class:"text-warning ring ring-inset ring-warning/25 bg-warning/10"},{color:"error",variant:"subtle",class:"text-error ring ring-inset ring-error/25 bg-error/10"},{color:"neutral",variant:"solid",class:"text-inverted bg-inverted"},{color:"neutral",variant:"outline",class:"ring ring-inset ring-accented text-default bg-default"},{color:"neutral",variant:"soft",class:"text-default bg-elevated"},{color:"neutral",variant:"subtle",class:"ring ring-inset ring-accented text-default bg-elevated"}],defaultVariants:{variant:"outline",color:"neutral",size:"md"}},Y2={__name:"Kbd",props:{as:{type:null,required:!1,default:"kbd"},value:{type:null,required:!1},color:{type:null,required:!1},variant:{type:null,required:!1},size:{type:null,required:!1},class:{type:null,required:!1},ui:{type:Object,required:!1}},setup(e){const n=Fn("kbd",e),{getKbdKey:a}=BC(),r=zt(),o=S(()=>vt({extend:vt(xR),...r.ui?.kbd||{}}));return(s,i)=>(C(),R(f(fe),{as:f(n).as,class:Ae(o.value({class:[f(n).ui?.base,f(n).class],color:f(n).color,variant:f(n).variant,size:f(n).size}))},{default:E(()=>[j(s.$slots,"default",{},()=>[qe(Me(f(a)(f(n).value)),1)])]),_:3},8,["as","class"]))}},K2={__name:"ContextMenuContent",props:{items:{type:null,required:!1},portal:{type:[Boolean,String],required:!1,skipCheck:!0},sub:{type:Boolean,required:!1},labelKey:{type:null,required:!0},descriptionKey:{type:null,required:!0},checkedIcon:{type:null,required:!1},loadingIcon:{type:null,required:!1},externalIcon:{type:[Boolean,String],required:!1,skipCheck:!0},class:{type:null,required:!1},ui:{type:null,required:!0},uiOverride:{type:null,required:!1},loop:{type:Boolean,required:!1},sideFlip:{type:Boolean,required:!1},alignOffset:{type:Number,required:!1},alignFlip:{type:Boolean,required:!1},avoidCollisions:{type:Boolean,required:!1},collisionBoundary:{type:null,required:!1},collisionPadding:{type:[Number,Object],required:!1},hideShiftedArrow:{type:Boolean,required:!1},sticky:{type:String,required:!1},hideWhenDetached:{type:Boolean,required:!1},positionStrategy:{type:String,required:!1},disableUpdateOnLayoutShift:{type:Boolean,required:!1},prioritizePosition:{type:Boolean,required:!1},reference:{type:null,required:!1}},emits:["escapeKeyDown","pointerDownOutside","focusOutside","interactOutside","closeAutoFocus"],setup(e,{emit:t}){const n=e,a=t,r=fa(),{dir:o}=Hc(),s=zt(),i=Fi(It(()=>n.portal)),l=Nn(rs(n,"sub","items","portal","labelKey","descriptionKey","checkedIcon","loadingIcon","externalIcon","class","ui","uiOverride"),a),c=()=>Bc(r,["default"]),[u,d]=d1(),h=S(()=>o.value==="rtl"?s.ui.icons.chevronLeft:s.ui.icons.chevronRight),p=S(()=>n.items?.length?JC(n.items)?n.items:[n.items]:[]);return(m,v)=>(C(),ye(ze,null,[ie(f(u),null,{default:E(({item:y,active:g,index:b})=>[j(m.$slots,y.slot||"item",{item:y,index:b,ui:e.ui},()=>[j(m.$slots,y.slot?`${y.slot}-leading`:"item-leading",{item:y,active:g,index:b,ui:e.ui},()=>[y.loading?(C(),R(cn,{key:0,name:e.loadingIcon||f(s).ui.icons.loading,"data-slot":"itemLeadingIcon",class:Ae(e.ui.itemLeadingIcon({class:[e.uiOverride?.itemLeadingIcon,y.ui?.itemLeadingIcon],color:y?.color,loading:!0}))},null,8,["name","class"])):y.icon?(C(),R(cn,{key:1,name:y.icon,"data-slot":"itemLeadingIcon",class:Ae(e.ui.itemLeadingIcon({class:[e.uiOverride?.itemLeadingIcon,y.ui?.itemLeadingIcon],color:y?.color,active:g}))},null,8,["name","class"])):y.avatar?(C(),R(su,de({key:2,size:y.ui?.itemLeadingAvatarSize||e.uiOverride?.itemLeadingAvatarSize||e.ui.itemLeadingAvatarSize()},y.avatar,{"data-slot":"itemLeadingAvatar",class:e.ui.itemLeadingAvatar({class:[e.uiOverride?.itemLeadingAvatar,y.ui?.itemLeadingAvatar],active:g})}),null,16,["size","class"])):ve("",!0)]),f(Qt)(y,n.labelKey)||r[y.slot?`${y.slot}-label`:"item-label"]||f(Qt)(y,n.descriptionKey)||r[y.slot?`${y.slot}-description`:"item-description"]?(C(),ye("span",{key:0,"data-slot":"itemWrapper",class:Ae(e.ui.itemWrapper({class:[e.uiOverride?.itemWrapper,y.ui?.itemWrapper]}))},[ke("span",{"data-slot":"itemLabel",class:Ae(e.ui.itemLabel({class:[e.uiOverride?.itemLabel,y.ui?.itemLabel],active:g}))},[j(m.$slots,y.slot?`${y.slot}-label`:"item-label",{item:y,active:g,index:b},()=>[qe(Me(f(Qt)(y,n.labelKey)),1)]),y.target==="_blank"&&e.externalIcon!==!1?(C(),R(cn,{key:0,name:typeof e.externalIcon=="string"?e.externalIcon:f(s).ui.icons.external,"data-slot":"itemLabelExternalIcon",class:Ae(e.ui.itemLabelExternalIcon({class:[e.uiOverride?.itemLabelExternalIcon,y.ui?.itemLabelExternalIcon],color:y?.color,active:g}))},null,8,["name","class"])):ve("",!0)],2),f(Qt)(y,n.descriptionKey)||r[y.slot?`${y.slot}-description`:"item-description"]?(C(),ye("span",{key:0,"data-slot":"itemDescription",class:Ae(e.ui.itemDescription({class:[e.uiOverride?.itemDescription,y.ui?.itemDescription]}))},[j(m.$slots,y.slot?`${y.slot}-description`:"item-description",{item:y,active:g,index:b},()=>[qe(Me(f(Qt)(y,n.descriptionKey)),1)])],2)):ve("",!0)],2)):ve("",!0),ke("span",{"data-slot":"itemTrailing",class:Ae(e.ui.itemTrailing({class:[e.uiOverride?.itemTrailing,y.ui?.itemTrailing]}))},[j(m.$slots,y.slot?`${y.slot}-trailing`:"item-trailing",{item:y,active:g,index:b,ui:e.ui},()=>[y.children?.length?(C(),R(cn,{key:0,name:h.value,"data-slot":"itemTrailingIcon",class:Ae(e.ui.itemTrailingIcon({class:[e.uiOverride?.itemTrailingIcon,y.ui?.itemTrailingIcon],color:y?.color,active:g}))},null,8,["name","class"])):y.kbds?.length?(C(),ye("span",{key:1,"data-slot":"itemTrailingKbds",class:Ae(e.ui.itemTrailingKbds({class:[e.uiOverride?.itemTrailingKbds,y.ui?.itemTrailingKbds]}))},[(C(!0),ye(ze,null,en(y.kbds,(w,_)=>(C(),R(Y2,de({key:_,size:y.ui?.itemTrailingKbdsSize||e.uiOverride?.itemTrailingKbdsSize||e.ui.itemTrailingKbdsSize()},{ref_for:!0},typeof w=="string"?{value:w}:w),null,16,["size"]))),128))],2)):ve("",!0)]),ie(f(qn).ItemIndicator,{"as-child":""},{default:E(()=>[ie(cn,{name:e.checkedIcon||f(s).ui.icons.check,"data-slot":"itemTrailingIcon",class:Ae(e.ui.itemTrailingIcon({class:[e.uiOverride?.itemTrailingIcon,y.ui?.itemTrailingIcon],color:y?.color}))},null,8,["name","class"])]),_:2},1024)],2)])]),_:3}),ie(f(qn).Portal,$e(Oe(f(i))),{default:E(()=>[ie(f(iu),null,{default:E(()=>[(C(),R($n(e.sub?f(qn).SubContent:f(qn).Content),de({"data-slot":"content",class:e.ui.content({class:[e.uiOverride?.content,n.class]})},f(l)),{default:E(()=>[j(m.$slots,"content-top",{sub:e.sub??!1}),ke("div",{role:"presentation","data-slot":"viewport",class:Ae(e.ui.viewport({class:e.uiOverride?.viewport}))},[(C(!0),ye(ze,null,en(p.value,(y,g)=>(C(),R(f(qn).Group,{key:`group-${g}`,"data-slot":"group",class:Ae(e.ui.group({class:e.uiOverride?.group}))},{default:E(()=>[(C(!0),ye(ze,null,en(y,(b,w)=>(C(),ye(ze,{key:`group-${g}-${w}`},[b.type==="label"?(C(),R(f(qn).Label,{key:0,"data-slot":"label",class:Ae(e.ui.label({class:[e.uiOverride?.label,b.ui?.label,b.class]}))},{default:E(()=>[ie(f(d),{item:b,index:w},null,8,["item","index"])]),_:2},1032,["class"])):b.type==="separator"?(C(),R(f(qn).Separator,{key:1,"data-slot":"separator",class:Ae(e.ui.separator({class:[e.uiOverride?.separator,b.ui?.separator,b.class]}))},null,8,["class"])):b?.children?.length?(C(),R(f(qn).Sub,{key:2,open:b.open,"default-open":b.defaultOpen},{default:E(()=>[ie(f(qn).SubTrigger,{as:"button",type:"button",disabled:b.disabled,"text-value":f(Qt)(b,n.labelKey),"data-slot":"item",class:Ae(e.ui.item({class:[e.uiOverride?.item,b.ui?.item,b.class],color:b?.color}))},{default:E(()=>[ie(f(d),{item:b,index:w},null,8,["item","index"])]),_:2},1032,["disabled","text-value","class"]),ie(K2,de({sub:"",class:b.ui?.content,ui:e.ui,"ui-override":e.uiOverride,portal:e.portal,items:b.children,"align-offset":-4,"label-key":e.labelKey,"description-key":e.descriptionKey,"checked-icon":e.checkedIcon,"loading-icon":e.loadingIcon,"external-icon":e.externalIcon},{ref_for:!0},b.content),Ec({_:2},[en(c(),(_,A)=>({name:A,fn:E(P=>[j(m.$slots,A,de({ref_for:!0},P))])}))]),1040,["class","ui","ui-override","portal","items","label-key","description-key","checked-icon","loading-icon","external-icon"])]),_:2},1032,["open","default-open"])):b.type==="checkbox"?(C(),R(f(qn).CheckboxItem,{key:3,"model-value":b.checked,disabled:b.disabled,"text-value":f(Qt)(b,n.labelKey),"data-slot":"item",class:Ae(e.ui.item({class:[e.uiOverride?.item,b.ui?.item,b.class],color:b?.color})),"onUpdate:modelValue":b.onUpdateChecked,onSelect:b.onSelect},{default:E(()=>[ie(f(d),{item:b,index:w},null,8,["item","index"])]),_:2},1032,["model-value","disabled","text-value","class","onUpdate:modelValue","onSelect"])):(C(),R(f2,de({key:4,ref_for:!0},f(d2)(b),{custom:""}),{default:E(({active:_,...A})=>[ie(f(qn).Item,{"as-child":"",disabled:b.disabled,"text-value":f(Qt)(b,n.labelKey),onSelect:b.onSelect},{default:E(()=>[ie(pc,de({ref_for:!0},A,{"data-slot":"item",class:e.ui.item({class:[e.uiOverride?.item,b.ui?.item,b.class],active:_,color:b?.color})}),{default:E(()=>[ie(f(d),{item:b,active:_,index:w},null,8,["item","active","index"])]),_:2},1040,["class"])]),_:2},1032,["disabled","text-value","onSelect"])]),_:2},1040))],64))),128))]),_:2},1032,["class"]))),128))],2),j(m.$slots,"default"),j(m.$slots,"content-bottom",{sub:e.sub??!1})]),_:3},16,["class"]))]),_:3})]),_:3},16)],64))}},AR={slots:{content:"min-w-32 max-h-(--reka-context-menu-content-available-height) bg-default shadow-lg rounded-md ring ring-default overflow-hidden data-[state=open]:animate-[scale-in_100ms_ease-out] data-[state=closed]:animate-[scale-out_100ms_ease-in] origin-(--reka-context-menu-content-transform-origin) flex flex-col",viewport:"relative divide-y divide-default scroll-py-1 overflow-y-auto flex-1",group:"p-1 isolate",label:"w-full flex items-center font-semibold text-highlighted",separator:"-mx-1 my-1 h-px bg-border",item:"group relative w-full flex items-start select-none outline-none before:absolute before:z-[-1] before:inset-px before:rounded-md data-disabled:cursor-not-allowed data-disabled:opacity-75",itemLeadingIcon:"shrink-0",itemLeadingAvatar:"shrink-0",itemLeadingAvatarSize:"",itemTrailing:"ms-auto inline-flex gap-1.5 items-center",itemTrailingIcon:"shrink-0",itemTrailingKbds:"hidden lg:inline-flex items-center shrink-0",itemTrailingKbdsSize:"",itemWrapper:"flex-1 flex flex-col text-start min-w-0",itemLabel:"truncate",itemDescription:"truncate text-muted",itemLabelExternalIcon:"inline-block size-3 align-top text-dimmed"},variants:{color:{primary:"",secondary:"",success:"",info:"",warning:"",error:"",neutral:""},active:{true:{item:"text-highlighted before:bg-elevated",itemLeadingIcon:"text-default"},false:{item:["text-default data-highlighted:text-highlighted data-[state=open]:text-highlighted data-highlighted:before:bg-elevated/50 data-[state=open]:before:bg-elevated/50","transition-colors before:transition-colors"],itemLeadingIcon:["text-dimmed group-data-highlighted:text-default group-data-[state=open]:text-default","transition-colors"]}},loading:{true:{itemLeadingIcon:"animate-spin"}},size:{xs:{label:"p-1 text-xs gap-1",item:"p-1 text-xs gap-1",itemLeadingIcon:"size-4",itemLeadingAvatarSize:"3xs",itemTrailingIcon:"size-4",itemTrailingKbds:"gap-0.5",itemTrailingKbdsSize:"sm"},sm:{label:"p-1.5 text-xs gap-1.5",item:"p-1.5 text-xs gap-1.5",itemLeadingIcon:"size-4",itemLeadingAvatarSize:"3xs",itemTrailingIcon:"size-4",itemTrailingKbds:"gap-0.5",itemTrailingKbdsSize:"sm"},md:{label:"p-1.5 text-sm gap-1.5",item:"p-1.5 text-sm gap-1.5",itemLeadingIcon:"size-5",itemLeadingAvatarSize:"2xs",itemTrailingIcon:"size-5",itemTrailingKbds:"gap-0.5",itemTrailingKbdsSize:"md"},lg:{label:"p-2 text-sm gap-2",item:"p-2 text-sm gap-2",itemLeadingIcon:"size-5",itemLeadingAvatarSize:"2xs",itemTrailingIcon:"size-5",itemTrailingKbds:"gap-1",itemTrailingKbdsSize:"md"},xl:{label:"p-2 text-base gap-2",item:"p-2 text-base gap-2",itemLeadingIcon:"size-6",itemLeadingAvatarSize:"xs",itemTrailingIcon:"size-6",itemTrailingKbds:"gap-1",itemTrailingKbdsSize:"lg"}}},compoundVariants:[{color:"primary",active:!1,class:{item:"text-primary data-highlighted:text-primary data-highlighted:before:bg-primary/10 data-[state=open]:before:bg-primary/10",itemLeadingIcon:"text-primary/75 group-data-highlighted:text-primary group-data-[state=open]:text-primary"}},{color:"secondary",active:!1,class:{item:"text-secondary data-highlighted:text-secondary data-highlighted:before:bg-secondary/10 data-[state=open]:before:bg-secondary/10",itemLeadingIcon:"text-secondary/75 group-data-highlighted:text-secondary group-data-[state=open]:text-secondary"}},{color:"success",active:!1,class:{item:"text-success data-highlighted:text-success data-highlighted:before:bg-success/10 data-[state=open]:before:bg-success/10",itemLeadingIcon:"text-success/75 group-data-highlighted:text-success group-data-[state=open]:text-success"}},{color:"info",active:!1,class:{item:"text-info data-highlighted:text-info data-highlighted:before:bg-info/10 data-[state=open]:before:bg-info/10",itemLeadingIcon:"text-info/75 group-data-highlighted:text-info group-data-[state=open]:text-info"}},{color:"warning",active:!1,class:{item:"text-warning data-highlighted:text-warning data-highlighted:before:bg-warning/10 data-[state=open]:before:bg-warning/10",itemLeadingIcon:"text-warning/75 group-data-highlighted:text-warning group-data-[state=open]:text-warning"}},{color:"error",active:!1,class:{item:"text-error data-highlighted:text-error data-highlighted:before:bg-error/10 data-[state=open]:before:bg-error/10",itemLeadingIcon:"text-error/75 group-data-highlighted:text-error group-data-[state=open]:text-error"}},{color:"primary",active:!0,class:{item:"text-primary before:bg-primary/10",itemLeadingIcon:"text-primary"}},{color:"secondary",active:!0,class:{item:"text-secondary before:bg-secondary/10",itemLeadingIcon:"text-secondary"}},{color:"success",active:!0,class:{item:"text-success before:bg-success/10",itemLeadingIcon:"text-success"}},{color:"info",active:!0,class:{item:"text-info before:bg-info/10",itemLeadingIcon:"text-info"}},{color:"warning",active:!0,class:{item:"text-warning before:bg-warning/10",itemLeadingIcon:"text-warning"}},{color:"error",active:!0,class:{item:"text-error before:bg-error/10",itemLeadingIcon:"text-error"}}],defaultVariants:{size:"md"}},PR={__name:"ContextMenu",props:{size:{type:null,required:!1},items:{type:null,required:!1},checkedIcon:{type:null,required:!1},loadingIcon:{type:null,required:!1},externalIcon:{type:[Boolean,String],required:!1,skipCheck:!0,default:!0},content:{type:Object,required:!1},portal:{type:[Boolean,String],required:!1,skipCheck:!0,default:!0},labelKey:{type:null,required:!1,default:"label"},descriptionKey:{type:null,required:!1,default:"description"},disabled:{type:Boolean,required:!1},class:{type:null,required:!1},ui:{type:Object,required:!1},pressOpenDelay:{type:Number,required:!1},modal:{type:Boolean,required:!1,default:!0}},emits:["update:open"],setup(e,{emit:t}){const n=e,a=t,r=fa(),o=Fn("contextMenu",n),s=zt(),i=Cr(ca(o,"modal"),a),l=It(()=>o.content),c=()=>Bc(r,["default"]),u=S(()=>vt({extend:vt(AR),...s.ui?.contextMenu||{}})({size:o.size}));return(d,h)=>(C(),R(f(Ib),$e(Oe(f(i))),{default:E(()=>[r.default?(C(),R(f(Db),{key:0,"as-child":"",disabled:f(o).disabled,class:Ae(f(o).class)},{default:E(()=>[j(d.$slots,"default")]),_:3},8,["disabled","class"])):ve("",!0),ie(K2,de({class:u.value.content({class:[!r.default&&f(o).class,f(o).ui?.content]}),ui:u.value,"ui-override":f(o).ui},l.value,{items:f(o).items,portal:f(o).portal,"label-key":f(o).labelKey,"description-key":f(o).descriptionKey,"checked-icon":f(o).checkedIcon,"loading-icon":f(o).loadingIcon,"external-icon":f(o).externalIcon}),Ec({_:2},[en(c(),(p,m)=>({name:m,fn:E(v=>[j(d.$slots,m,$e(Oe(v)))])}))]),1040,["class","ui","ui-override","items","portal","label-key","description-key","checked-icon","loading-icon","external-icon"])]),_:3},16))}},MR={slots:{root:"relative inline-flex items-center",base:["w-full rounded-md border-0 appearance-none placeholder:text-dimmed disabled:cursor-not-allowed disabled:opacity-75","transition-colors"],leading:"absolute inset-y-0 start-0 flex items-center",leadingIcon:"shrink-0 text-dimmed",leadingAvatar:"shrink-0",leadingAvatarSize:"",trailing:"absolute inset-y-0 end-0 flex items-center",trailingIcon:"shrink-0 text-dimmed"},variants:{fieldGroup:{horizontal:{root:"group has-focus-visible:z-[1]",base:"group-not-only:group-first:rounded-e-none group-not-only:group-last:rounded-s-none group-not-last:group-not-first:rounded-none"},vertical:{root:"group has-focus-visible:z-[1]",base:"group-not-only:group-first:rounded-b-none group-not-only:group-last:rounded-t-none group-not-last:group-not-first:rounded-none"}},size:{xs:{base:"px-2 py-1 text-sm/4 gap-1",leading:"ps-2",trailing:"pe-2",leadingIcon:"size-4",leadingAvatarSize:"3xs",trailingIcon:"size-4"},sm:{base:"px-2.5 py-1.5 text-sm/4 gap-1.5",leading:"ps-2.5",trailing:"pe-2.5",leadingIcon:"size-4",leadingAvatarSize:"3xs",trailingIcon:"size-4"},md:{base:"px-2.5 py-1.5 text-base/5 gap-1.5",leading:"ps-2.5",trailing:"pe-2.5",leadingIcon:"size-5",leadingAvatarSize:"2xs",trailingIcon:"size-5"},lg:{base:"px-3 py-2 text-base/5 gap-2",leading:"ps-3",trailing:"pe-3",leadingIcon:"size-5",leadingAvatarSize:"2xs",trailingIcon:"size-5"},xl:{base:"px-3 py-2 text-base gap-2",leading:"ps-3",trailing:"pe-3",leadingIcon:"size-6",leadingAvatarSize:"xs",trailingIcon:"size-6"}},variant:{outline:"text-highlighted bg-default ring ring-inset ring-accented",soft:"text-highlighted bg-elevated/50 hover:bg-elevated focus:bg-elevated disabled:bg-elevated/50",subtle:"text-highlighted bg-elevated ring ring-inset ring-accented",ghost:"text-highlighted bg-transparent hover:bg-elevated focus:bg-elevated disabled:bg-transparent dark:disabled:bg-transparent",none:"text-highlighted bg-transparent focus:outline-none"},color:{primary:"",secondary:"",success:"",info:"",warning:"",error:"",neutral:""},leading:{true:""},trailing:{true:""},loading:{true:""},highlight:{true:""},fixed:{false:""},type:{file:"file:me-1.5 file:font-medium file:text-muted file:outline-none"}},compoundVariants:[{color:"primary",variant:["outline","subtle"],class:"outline-primary/25 focus-visible:outline-3 focus-visible:ring-primary"},{color:"secondary",variant:["outline","subtle"],class:"outline-secondary/25 focus-visible:outline-3 focus-visible:ring-secondary"},{color:"success",variant:["outline","subtle"],class:"outline-success/25 focus-visible:outline-3 focus-visible:ring-success"},{color:"info",variant:["outline","subtle"],class:"outline-info/25 focus-visible:outline-3 focus-visible:ring-info"},{color:"warning",variant:["outline","subtle"],class:"outline-warning/25 focus-visible:outline-3 focus-visible:ring-warning"},{color:"error",variant:["outline","subtle"],class:"outline-error/25 focus-visible:outline-3 focus-visible:ring-error"},{color:"primary",variant:["soft","ghost"],class:"outline-primary/25 focus-visible:outline-3"},{color:"secondary",variant:["soft","ghost"],class:"outline-secondary/25 focus-visible:outline-3"},{color:"success",variant:["soft","ghost"],class:"outline-success/25 focus-visible:outline-3"},{color:"info",variant:["soft","ghost"],class:"outline-info/25 focus-visible:outline-3"},{color:"warning",variant:["soft","ghost"],class:"outline-warning/25 focus-visible:outline-3"},{color:"error",variant:["soft","ghost"],class:"outline-error/25 focus-visible:outline-3"},{color:"primary",highlight:!0,class:"ring ring-inset ring-primary"},{color:"secondary",highlight:!0,class:"ring ring-inset ring-secondary"},{color:"success",highlight:!0,class:"ring ring-inset ring-success"},{color:"info",highlight:!0,class:"ring ring-inset ring-info"},{color:"warning",highlight:!0,class:"ring ring-inset ring-warning"},{color:"error",highlight:!0,class:"ring ring-inset ring-error"},{color:"neutral",variant:["outline","subtle"],class:"outline-inverted/25 focus-visible:outline-3 focus-visible:ring-inverted"},{color:"neutral",variant:["soft","ghost"],class:"outline-inverted/25 focus-visible:outline-3"},{color:"neutral",highlight:!0,class:"ring ring-inset ring-inverted"},{leading:!0,size:"xs",class:"ps-7"},{leading:!0,size:"sm",class:"ps-8"},{leading:!0,size:"md",class:"ps-9"},{leading:!0,size:"lg",class:"ps-10"},{leading:!0,size:"xl",class:"ps-11"},{trailing:!0,size:"xs",class:"pe-7"},{trailing:!0,size:"sm",class:"pe-8"},{trailing:!0,size:"md",class:"pe-9"},{trailing:!0,size:"lg",class:"pe-10"},{trailing:!0,size:"xl",class:"pe-11"},{loading:!0,leading:!0,class:{leadingIcon:"animate-spin"}},{loading:!0,leading:!1,trailing:!0,class:{trailingIcon:"animate-spin"}},{fixed:!1,size:"xs",class:"md:text-xs"},{fixed:!1,size:"sm",class:"md:text-xs"},{fixed:!1,size:"md",class:"md:text-sm"},{fixed:!1,size:"lg",class:"md:text-sm"}],defaultVariants:{size:"md",color:"primary",variant:"outline"}},TR=["id","type","value","name","placeholder","disabled","required","autocomplete"],IR=Object.assign({inheritAttrs:!1},{__name:"Input",props:{as:{type:null,required:!1},id:{type:String,required:!1},name:{type:String,required:!1},type:{type:null,required:!1,default:"text"},placeholder:{type:String,required:!1},color:{type:null,required:!1},variant:{type:null,required:!1},size:{type:null,required:!1},required:{type:Boolean,required:!1},autocomplete:{type:[String,Object],required:!1,default:"off"},autofocus:{type:Boolean,required:!1},autofocusDelay:{type:Number,required:!1,default:0},disabled:{type:Boolean,required:!1},highlight:{type:Boolean,required:!1},fixed:{type:Boolean,required:!1},modelValue:{type:null,required:!1},defaultValue:{type:null,required:!1},modelModifiers:{type:null,required:!1},class:{type:null,required:!1},ui:{type:Object,required:!1},icon:{type:null,required:!1},avatar:{type:Object,required:!1},leading:{type:Boolean,required:!1},leadingIcon:{type:null,required:!1},trailing:{type:Boolean,required:!1},trailingIcon:{type:null,required:!1},loading:{type:Boolean,required:!1},loadingIcon:{type:null,required:!1}},emits:["update:modelValue","blur","change"],setup(e,{expose:t,emit:n}){const a=e,r=n,o=fa(),s=Fn("input",a),i=gt(s,"modelValue",r,{defaultValue:s.defaultValue}),l=zt(),{emitFormBlur:c,emitFormInput:u,emitFormChange:d,size:h,color:p,id:m,name:v,highlight:y,disabled:g,emitFormFocus:b,ariaAttrs:w}=ME(a,{deferInputValidation:!0}),{orientation:_,size:A}=u2(a),{isLeading:P,isTrailing:k,leadingIconName:T,trailingIconName:I}=l2(s),Y=S(()=>A.value||h.value),Q=S(()=>vt({extend:vt(MR),...l.ui?.input||{}})({type:s.type,color:p.value??s.color,variant:s.variant,size:Y?.value??s.size,loading:s.loading,highlight:y.value??s.highlight,fixed:s.fixed,leading:P.value||!!s.avatar||!!o.leading,trailing:k.value||!!o.trailing,fieldGroup:_.value})),z=Gy("inputRef");function te(L){s.modelModifiers?.trim&&(typeof L=="string"||L===null||L===void 0)&&(L=L?.trim()??null),(s.modelModifiers?.number||s.type==="number")&&(L=KC(L)),s.modelModifiers?.nullable&&(L||=null),s.modelModifiers?.optional&&!s.modelModifiers?.nullable&&L!==null&&(L||=void 0),i.value=L,u()}function O(L){s.modelModifiers?.lazy||te(L.target.value)}function D(L){const ee=L.target.value;s.modelModifiers?.lazy&&te(ee),s.modelModifiers?.trim&&(L.target.value=ee.trim()),d(),r("change",L)}function q(L){c(),r("blur",L)}function G(){s.autofocus&&z.value?.focus()}return Xe(()=>{setTimeout(()=>{G()},s.autofocusDelay)}),t({inputRef:z}),(L,ee)=>(C(),R(f(fe),{as:f(s).as,"data-slot":"root",class:Ae(Q.value.root({class:[f(s).ui?.root,f(s).class]}))},{default:E(()=>[ke("input",de({id:f(m),ref_key:"inputRef",ref:z,type:f(s).type,value:f(i),name:f(v),placeholder:f(s).placeholder,"data-slot":"base",class:Q.value.base({class:f(s).ui?.base}),disabled:f(g),required:f(s).required,autocomplete:f(s).autocomplete},{...L.$attrs,...f(w)},{onInput:O,onBlur:q,onChange:D,onFocus:ee[0]||(ee[0]=(...K)=>f(b)&&f(b)(...K))}),null,16,TR),j(L.$slots,"default",{ui:Q.value}),f(P)||f(s).avatar||o.leading?(C(),ye("span",{key:0,"data-slot":"leading",class:Ae(Q.value.leading({class:f(s).ui?.leading}))},[j(L.$slots,"leading",{ui:Q.value},()=>[f(P)&&f(T)?(C(),R(cn,{key:0,name:f(T),"data-slot":"leadingIcon",class:Ae(Q.value.leadingIcon({class:f(s).ui?.leadingIcon}))},null,8,["name","class"])):f(s).avatar?(C(),R(su,de({key:1,size:f(s).ui?.leadingAvatarSize||Q.value.leadingAvatarSize()},f(s).avatar,{"data-slot":"leadingAvatar",class:Q.value.leadingAvatar({class:f(s).ui?.leadingAvatar})}),null,16,["size","class"])):ve("",!0)])],2)):ve("",!0),f(k)||o.trailing?(C(),ye("span",{key:1,"data-slot":"trailing",class:Ae(Q.value.trailing({class:f(s).ui?.trailing}))},[j(L.$slots,"trailing",{ui:Q.value},()=>[f(I)?(C(),R(cn,{key:0,name:f(I),"data-slot":"trailingIcon",class:Ae(Q.value.trailingIcon({class:f(s).ui?.trailingIcon}))},null,8,["name","class"])):ve("",!0)])],2)):ve("",!0)]),_:3},8,["as","class"]))}}),DR={slots:{content:"flex items-center gap-1 bg-default text-highlighted shadow-sm rounded-sm ring ring-default h-6 px-2.5 py-1 text-xs select-none data-[state=delayed-open]:animate-[scale-in_100ms_ease-out] data-[state=closed]:animate-[scale-out_100ms_ease-in] origin-(--reka-tooltip-content-transform-origin) pointer-events-auto",arrow:"fill-bg stroke-default",text:"truncate",kbds:"hidden lg:inline-flex items-center shrink-0 gap-0.5 not-first-of-type:before:content-['·'] not-first-of-type:before:me-0.5",kbdsSize:"sm"}},Gp={__name:"Tooltip",props:{text:{type:String,required:!1},kbds:{type:Array,required:!1},content:{type:Object,required:!1},arrow:{type:[Boolean,Object],required:!1},portal:{type:[Boolean,String],required:!1,skipCheck:!0,default:!0},reference:{type:null,required:!1},class:{type:null,required:!1},ui:{type:Object,required:!1},defaultOpen:{type:Boolean,required:!1},open:{type:Boolean,required:!1},delayDuration:{type:Number,required:!1},disableHoverableContent:{type:Boolean,required:!1},disableClosingTrigger:{type:Boolean,required:!1},disabled:{type:Boolean,required:!1},ignoreNonKeyboardFocus:{type:Boolean,required:!1}},emits:["update:open"],setup(e,{emit:t}){const n=e,a=t,r=fa(),o=Fn("tooltip",n),s=zt(),i=Ni(),l=Cr(ca(o,"defaultOpen","open","delayDuration","disableHoverableContent","disableClosingTrigger","ignoreNonKeyboardFocus"),a),c=Fi(It(()=>o.portal)),u=It(()=>Un(o.content,i.content.value,{side:"bottom",sideOffset:8,collisionPadding:8})),d=It(()=>Un(o.arrow,{rounded:!0})),h=S(()=>vt({extend:vt(DR),...s.ui?.tooltip||{}})({side:u.value.side}));return(p,m)=>(C(),R(f(r8),de(f(l),{disabled:!(f(o).text||f(o).kbds?.length||r.content)||f(o).disabled}),{default:E(({open:v})=>[r.default||f(o).reference?(C(),R(f(p8),de({key:0},p.$attrs,{"as-child":"",reference:f(o).reference,class:f(o).class}),{default:E(()=>[j(p.$slots,"default",{open:v})]),_:2},1040,["reference","class"])):ve("",!0),ie(f(d8),$e(Oe(f(c))),{default:E(()=>[ie(f(iu),null,{default:E(()=>[ie(f(c8),de(u.value,{"data-slot":"content",class:h.value.content({class:[!r.default&&f(o).class,f(o).ui?.content]})}),{default:E(()=>[j(p.$slots,"content",{ui:h.value},()=>[f(o).text?(C(),ye("span",{key:0,"data-slot":"text",class:Ae(h.value.text({class:f(o).ui?.text}))},Me(f(o).text),3)):ve("",!0),f(o).kbds?.length?(C(),ye("span",{key:1,"data-slot":"kbds",class:Ae(h.value.kbds({class:f(o).ui?.kbds}))},[(C(!0),ye(ze,null,en(f(o).kbds,(y,g)=>(C(),R(Y2,de({key:g,size:f(o).ui?.kbdsSize||h.value.kbdsSize()},{ref_for:!0},typeof y=="string"?{value:y}:y),null,16,["size"]))),128))],2)):ve("",!0)]),f(o).arrow?(C(),R(f(QI),de({key:0},d.value,{"data-slot":"arrow",class:h.value.arrow({class:f(o).ui?.arrow})}),null,16,["class"])):ve("",!0)]),_:3},16,["class"])]),_:3})]),_:3},16)]),_:3},16,["disabled"]))}};function mo(e,t,n){let a=n.initialDeps??[],r,o=!0;function s(){var i,l,c;let u;n.key&&((i=n.debug)!=null&&i.call(n))&&(u=Date.now());const d=e();if(!(d.length!==a.length||d.some((m,v)=>a[v]!==m)))return r;a=d;let p;if(n.key&&((l=n.debug)!=null&&l.call(n))&&(p=Date.now()),r=t(...d),n.key&&((c=n.debug)!=null&&c.call(n))){const m=Math.round((Date.now()-u)*100)/100,v=Math.round((Date.now()-p)*100)/100,y=v/16,g=(b,w)=>{for(b=String(b);b.length<w;)b=" "+b;return b};console.info(`%c⏱ ${g(v,5)} /${g(m,5)} ms`,`
33
- font-size: .6rem;
34
- font-weight: bold;
35
- color: hsl(${Math.max(0,Math.min(120-120*y,120))}deg 100% 31%);`,n?.key)}return n?.onChange&&!(o&&n.skipInitialOnChange)&&n.onChange(r),o=!1,r}return s.updateDeps=i=>{a=i},s}function vv(e,t){if(e===void 0)throw new Error("Unexpected undefined");return e}const ER=(e,t)=>Math.abs(e-t)<1.01,$R=(e,t,n)=>{let a;return function(...r){e.clearTimeout(a),a=e.setTimeout(()=>t.apply(this,r),n)}},yv=e=>{const{offsetWidth:t,offsetHeight:n}=e;return{width:t,height:n}},RR=e=>e,LR=e=>{const t=Math.max(e.startIndex-e.overscan,0),n=Math.min(e.endIndex+e.overscan,e.count-1),a=[];for(let r=t;r<=n;r++)a.push(r);return a},OR=(e,t)=>{const n=e.scrollElement;if(!n)return;const a=e.targetWindow;if(!a)return;const r=s=>{const{width:i,height:l}=s;t({width:Math.round(i),height:Math.round(l)})};if(r(yv(n)),!a.ResizeObserver)return()=>{};const o=new a.ResizeObserver(s=>{const i=()=>{const l=s[0];if(l?.borderBoxSize){const c=l.borderBoxSize[0];if(c){r({width:c.inlineSize,height:c.blockSize});return}}r(yv(n))};e.options.useAnimationFrameWithResizeObserver?requestAnimationFrame(i):i()});return o.observe(n,{box:"border-box"}),()=>{o.unobserve(n)}},bv={passive:!0},wv=typeof window>"u"?!0:"onscrollend"in window,NR=(e,t)=>{const n=e.scrollElement;if(!n)return;const a=e.targetWindow;if(!a)return;let r=0;const o=e.options.useScrollendEvent&&wv?()=>{}:$R(a,()=>{t(r,!1)},e.options.isScrollingResetDelay),s=u=>()=>{const{horizontal:d,isRtl:h}=e.options;r=d?n.scrollLeft*(h&&-1||1):n.scrollTop,o(),t(r,u)},i=s(!0),l=s(!1);n.addEventListener("scroll",i,bv);const c=e.options.useScrollendEvent&&wv;return c&&n.addEventListener("scrollend",l,bv),()=>{n.removeEventListener("scroll",i),c&&n.removeEventListener("scrollend",l)}},FR=(e,t,n)=>{if(t?.borderBoxSize){const a=t.borderBoxSize[0];if(a)return Math.round(a[n.options.horizontal?"inlineSize":"blockSize"])}return e[n.options.horizontal?"offsetWidth":"offsetHeight"]},qR=(e,{adjustments:t=0,behavior:n},a)=>{var r,o;const s=e+t;(o=(r=a.scrollElement)==null?void 0:r.scrollTo)==null||o.call(r,{[a.options.horizontal?"left":"top"]:s,behavior:n})};class BR{constructor(t){this.unsubs=[],this.scrollElement=null,this.targetWindow=null,this.isScrolling=!1,this.currentScrollToIndex=null,this.measurementsCache=[],this.itemSizeCache=new Map,this.laneAssignments=new Map,this.pendingMeasuredCacheIndexes=[],this.prevLanes=void 0,this.lanesChangedFlag=!1,this.lanesSettling=!1,this.scrollRect=null,this.scrollOffset=null,this.scrollDirection=null,this.scrollAdjustments=0,this.elementsCache=new Map,this.observer=(()=>{let n=null;const a=()=>n||(!this.targetWindow||!this.targetWindow.ResizeObserver?null:n=new this.targetWindow.ResizeObserver(r=>{r.forEach(o=>{const s=()=>{this._measureElement(o.target,o)};this.options.useAnimationFrameWithResizeObserver?requestAnimationFrame(s):s()})}));return{disconnect:()=>{var r;(r=a())==null||r.disconnect(),n=null},observe:r=>{var o;return(o=a())==null?void 0:o.observe(r,{box:"border-box"})},unobserve:r=>{var o;return(o=a())==null?void 0:o.unobserve(r)}}})(),this.range=null,this.setOptions=n=>{Object.entries(n).forEach(([a,r])=>{typeof r>"u"&&delete n[a]}),this.options={debug:!1,initialOffset:0,overscan:1,paddingStart:0,paddingEnd:0,scrollPaddingStart:0,scrollPaddingEnd:0,horizontal:!1,getItemKey:RR,rangeExtractor:LR,onChange:()=>{},measureElement:FR,initialRect:{width:0,height:0},scrollMargin:0,gap:0,indexAttribute:"data-index",initialMeasurementsCache:[],lanes:1,isScrollingResetDelay:150,enabled:!0,isRtl:!1,useScrollendEvent:!1,useAnimationFrameWithResizeObserver:!1,...n}},this.notify=n=>{var a,r;(r=(a=this.options).onChange)==null||r.call(a,this,n)},this.maybeNotify=mo(()=>(this.calculateRange(),[this.isScrolling,this.range?this.range.startIndex:null,this.range?this.range.endIndex:null]),n=>{this.notify(n)},{key:!1,debug:()=>this.options.debug,initialDeps:[this.isScrolling,this.range?this.range.startIndex:null,this.range?this.range.endIndex:null]}),this.cleanup=()=>{this.unsubs.filter(Boolean).forEach(n=>n()),this.unsubs=[],this.observer.disconnect(),this.scrollElement=null,this.targetWindow=null},this._didMount=()=>()=>{this.cleanup()},this._willUpdate=()=>{var n;const a=this.options.enabled?this.options.getScrollElement():null;if(this.scrollElement!==a){if(this.cleanup(),!a){this.maybeNotify();return}this.scrollElement=a,this.scrollElement&&"ownerDocument"in this.scrollElement?this.targetWindow=this.scrollElement.ownerDocument.defaultView:this.targetWindow=((n=this.scrollElement)==null?void 0:n.window)??null,this.elementsCache.forEach(r=>{this.observer.observe(r)}),this.unsubs.push(this.options.observeElementRect(this,r=>{this.scrollRect=r,this.maybeNotify()})),this.unsubs.push(this.options.observeElementOffset(this,(r,o)=>{this.scrollAdjustments=0,this.scrollDirection=o?this.getScrollOffset()<r?"forward":"backward":null,this.scrollOffset=r,this.isScrolling=o,this.maybeNotify()})),this._scrollToOffset(this.getScrollOffset(),{adjustments:void 0,behavior:void 0})}},this.getSize=()=>this.options.enabled?(this.scrollRect=this.scrollRect??this.options.initialRect,this.scrollRect[this.options.horizontal?"width":"height"]):(this.scrollRect=null,0),this.getScrollOffset=()=>this.options.enabled?(this.scrollOffset=this.scrollOffset??(typeof this.options.initialOffset=="function"?this.options.initialOffset():this.options.initialOffset),this.scrollOffset):(this.scrollOffset=null,0),this.getFurthestMeasurement=(n,a)=>{const r=new Map,o=new Map;for(let s=a-1;s>=0;s--){const i=n[s];if(r.has(i.lane))continue;const l=o.get(i.lane);if(l==null||i.end>l.end?o.set(i.lane,i):i.end<l.end&&r.set(i.lane,!0),r.size===this.options.lanes)break}return o.size===this.options.lanes?Array.from(o.values()).sort((s,i)=>s.end===i.end?s.index-i.index:s.end-i.end)[0]:void 0},this.getMeasurementOptions=mo(()=>[this.options.count,this.options.paddingStart,this.options.scrollMargin,this.options.getItemKey,this.options.enabled,this.options.lanes],(n,a,r,o,s,i)=>(this.prevLanes!==void 0&&this.prevLanes!==i&&(this.lanesChangedFlag=!0),this.prevLanes=i,this.pendingMeasuredCacheIndexes=[],{count:n,paddingStart:a,scrollMargin:r,getItemKey:o,enabled:s,lanes:i}),{key:!1}),this.getMeasurements=mo(()=>[this.getMeasurementOptions(),this.itemSizeCache],({count:n,paddingStart:a,scrollMargin:r,getItemKey:o,enabled:s,lanes:i},l)=>{if(!s)return this.measurementsCache=[],this.itemSizeCache.clear(),this.laneAssignments.clear(),[];if(this.laneAssignments.size>n)for(const h of this.laneAssignments.keys())h>=n&&this.laneAssignments.delete(h);this.lanesChangedFlag&&(this.lanesChangedFlag=!1,this.lanesSettling=!0,this.measurementsCache=[],this.itemSizeCache.clear(),this.laneAssignments.clear(),this.pendingMeasuredCacheIndexes=[]),this.measurementsCache.length===0&&!this.lanesSettling&&(this.measurementsCache=this.options.initialMeasurementsCache,this.measurementsCache.forEach(h=>{this.itemSizeCache.set(h.key,h.size)}));const c=this.lanesSettling?0:this.pendingMeasuredCacheIndexes.length>0?Math.min(...this.pendingMeasuredCacheIndexes):0;this.pendingMeasuredCacheIndexes=[],this.lanesSettling&&this.measurementsCache.length===n&&(this.lanesSettling=!1);const u=this.measurementsCache.slice(0,c),d=new Array(i).fill(void 0);for(let h=0;h<c;h++){const p=u[h];p&&(d[p.lane]=h)}for(let h=c;h<n;h++){const p=o(h),m=this.laneAssignments.get(h);let v,y;if(m!==void 0&&this.options.lanes>1){v=m;const _=d[v],A=_!==void 0?u[_]:void 0;y=A?A.end+this.options.gap:a+r}else{const _=this.options.lanes===1?u[h-1]:this.getFurthestMeasurement(u,h);y=_?_.end+this.options.gap:a+r,v=_?_.lane:h%this.options.lanes,this.options.lanes>1&&this.laneAssignments.set(h,v)}const g=l.get(p),b=typeof g=="number"?g:this.options.estimateSize(h),w=y+b;u[h]={index:h,start:y,size:b,end:w,key:p,lane:v},d[v]=h}return this.measurementsCache=u,u},{key:!1,debug:()=>this.options.debug}),this.calculateRange=mo(()=>[this.getMeasurements(),this.getSize(),this.getScrollOffset(),this.options.lanes],(n,a,r,o)=>this.range=n.length>0&&a>0?HR({measurements:n,outerSize:a,scrollOffset:r,lanes:o}):null,{key:!1,debug:()=>this.options.debug}),this.getVirtualIndexes=mo(()=>{let n=null,a=null;const r=this.calculateRange();return r&&(n=r.startIndex,a=r.endIndex),this.maybeNotify.updateDeps([this.isScrolling,n,a]),[this.options.rangeExtractor,this.options.overscan,this.options.count,n,a]},(n,a,r,o,s)=>o===null||s===null?[]:n({startIndex:o,endIndex:s,overscan:a,count:r}),{key:!1,debug:()=>this.options.debug}),this.indexFromElement=n=>{const a=this.options.indexAttribute,r=n.getAttribute(a);return r?parseInt(r,10):(console.warn(`Missing attribute name '${a}={index}' on measured element.`),-1)},this._measureElement=(n,a)=>{const r=this.indexFromElement(n),o=this.measurementsCache[r];if(!o)return;const s=o.key,i=this.elementsCache.get(s);i!==n&&(i&&this.observer.unobserve(i),this.observer.observe(n),this.elementsCache.set(s,n)),n.isConnected&&this.resizeItem(r,this.options.measureElement(n,a,this))},this.resizeItem=(n,a)=>{const r=this.measurementsCache[n];if(!r)return;const o=this.itemSizeCache.get(r.key)??r.size,s=a-o;s!==0&&((this.shouldAdjustScrollPositionOnItemSizeChange!==void 0?this.shouldAdjustScrollPositionOnItemSizeChange(r,s,this):r.start<this.getScrollOffset()+this.scrollAdjustments)&&this._scrollToOffset(this.getScrollOffset(),{adjustments:this.scrollAdjustments+=s,behavior:void 0}),this.pendingMeasuredCacheIndexes.push(r.index),this.itemSizeCache=new Map(this.itemSizeCache.set(r.key,a)),this.notify(!1))},this.measureElement=n=>{if(!n){this.elementsCache.forEach((a,r)=>{a.isConnected||(this.observer.unobserve(a),this.elementsCache.delete(r))});return}this._measureElement(n,void 0)},this.getVirtualItems=mo(()=>[this.getVirtualIndexes(),this.getMeasurements()],(n,a)=>{const r=[];for(let o=0,s=n.length;o<s;o++){const i=n[o],l=a[i];r.push(l)}return r},{key:!1,debug:()=>this.options.debug}),this.getVirtualItemForOffset=n=>{const a=this.getMeasurements();if(a.length!==0)return vv(a[X2(0,a.length-1,r=>vv(a[r]).start,n)])},this.getMaxScrollOffset=()=>{if(!this.scrollElement)return 0;if("scrollHeight"in this.scrollElement)return this.options.horizontal?this.scrollElement.scrollWidth-this.scrollElement.clientWidth:this.scrollElement.scrollHeight-this.scrollElement.clientHeight;{const n=this.scrollElement.document.documentElement;return this.options.horizontal?n.scrollWidth-this.scrollElement.innerWidth:n.scrollHeight-this.scrollElement.innerHeight}},this.getOffsetForAlignment=(n,a,r=0)=>{if(!this.scrollElement)return 0;const o=this.getSize(),s=this.getScrollOffset();a==="auto"&&(a=n>=s+o?"end":"start"),a==="center"?n+=(r-o)/2:a==="end"&&(n-=o);const i=this.getMaxScrollOffset();return Math.max(Math.min(i,n),0)},this.getOffsetForIndex=(n,a="auto")=>{n=Math.max(0,Math.min(n,this.options.count-1));const r=this.measurementsCache[n];if(!r)return;const o=this.getSize(),s=this.getScrollOffset();if(a==="auto")if(r.end>=s+o-this.options.scrollPaddingEnd)a="end";else if(r.start<=s+this.options.scrollPaddingStart)a="start";else return[s,a];if(a==="end"&&n===this.options.count-1)return[this.getMaxScrollOffset(),a];const i=a==="end"?r.end+this.options.scrollPaddingEnd:r.start-this.options.scrollPaddingStart;return[this.getOffsetForAlignment(i,a,r.size),a]},this.isDynamicMode=()=>this.elementsCache.size>0,this.scrollToOffset=(n,{align:a="start",behavior:r}={})=>{r==="smooth"&&this.isDynamicMode()&&console.warn("The `smooth` scroll behavior is not fully supported with dynamic size."),this._scrollToOffset(this.getOffsetForAlignment(n,a),{adjustments:void 0,behavior:r})},this.scrollToIndex=(n,{align:a="auto",behavior:r}={})=>{r==="smooth"&&this.isDynamicMode()&&console.warn("The `smooth` scroll behavior is not fully supported with dynamic size."),n=Math.max(0,Math.min(n,this.options.count-1)),this.currentScrollToIndex=n;let o=0;const s=10,i=c=>{if(!this.targetWindow)return;const u=this.getOffsetForIndex(n,c);if(!u){console.warn("Failed to get offset for index:",n);return}const[d,h]=u;this._scrollToOffset(d,{adjustments:void 0,behavior:r}),this.targetWindow.requestAnimationFrame(()=>{const p=()=>{if(this.currentScrollToIndex!==n)return;const m=this.getScrollOffset(),v=this.getOffsetForIndex(n,h);if(!v){console.warn("Failed to get offset for index:",n);return}ER(v[0],m)||l(h)};this.isDynamicMode()?this.targetWindow.requestAnimationFrame(p):p()})},l=c=>{this.targetWindow&&this.currentScrollToIndex===n&&(o++,o<s?this.targetWindow.requestAnimationFrame(()=>i(c)):console.warn(`Failed to scroll to index ${n} after ${s} attempts.`))};i(a)},this.scrollBy=(n,{behavior:a}={})=>{a==="smooth"&&this.isDynamicMode()&&console.warn("The `smooth` scroll behavior is not fully supported with dynamic size."),this._scrollToOffset(this.getScrollOffset()+n,{adjustments:void 0,behavior:a})},this.getTotalSize=()=>{var n;const a=this.getMeasurements();let r;if(a.length===0)r=this.options.paddingStart;else if(this.options.lanes===1)r=((n=a[a.length-1])==null?void 0:n.end)??0;else{const o=Array(this.options.lanes).fill(null);let s=a.length-1;for(;s>=0&&o.some(i=>i===null);){const i=a[s];o[i.lane]===null&&(o[i.lane]=i.end),s--}r=Math.max(...o.filter(i=>i!==null))}return Math.max(r-this.options.scrollMargin+this.options.paddingEnd,0)},this._scrollToOffset=(n,{adjustments:a,behavior:r})=>{this.options.scrollToFn(n,{behavior:r,adjustments:a},this)},this.measure=()=>{this.itemSizeCache=new Map,this.laneAssignments=new Map,this.notify(!1)},this.setOptions(t)}}const X2=(e,t,n,a)=>{for(;e<=t;){const r=(e+t)/2|0,o=n(r);if(o<a)e=r+1;else if(o>a)t=r-1;else return r}return e>0?e-1:0};function HR({measurements:e,outerSize:t,scrollOffset:n,lanes:a}){const r=e.length-1,o=l=>e[l].start;if(e.length<=a)return{startIndex:0,endIndex:r};let s=X2(0,r,o,n),i=s;if(a===1)for(;i<r&&e[i].end<n+t;)i++;else if(a>1){const l=Array(a).fill(0);for(;i<r&&l.some(u=>u<n+t);){const u=e[i];l[u.lane]=u.end,i++}const c=Array(a).fill(n+t);for(;s>=0&&c.some(u=>u>=n);){const u=e[s];c[u.lane]=u.start,s--}s=Math.max(0,s-s%a),i=Math.min(r,i+(a-1-i%a))}return{startIndex:s,endIndex:i}}function VR(e){const t=new BR(f(e)),n=at(t),a=t._didMount();return Se(()=>f(e).getScrollElement(),r=>{r&&t._willUpdate()},{immediate:!0}),Se(()=>f(e),r=>{t.setOptions({...r,onChange:(o,s)=>{var i;bd(n),(i=r.onChange)==null||i.call(r,o,s)}}),t._willUpdate(),bd(n)},{immediate:!0}),ts(a),n}function zR(e){return VR(S(()=>({observeElementRect:OR,observeElementOffset:NR,scrollToFn:qR,...f(e)})))}const jR=[{tag:"n",name:"名词",description:"普通名词",meaningful:!0},{tag:"nr",name:"人名",description:"人名",meaningful:!0},{tag:"ns",name:"地名",description:"地名",meaningful:!0},{tag:"nt",name:"机构名",description:"机构团体名",meaningful:!0},{tag:"nz",name:"其他专名",description:"其他专有名词",meaningful:!0},{tag:"nw",name:"作品名",description:"作品名",meaningful:!0},{tag:"v",name:"动词",description:"普通动词",meaningful:!1},{tag:"vn",name:"动名词",description:"动名词",meaningful:!0},{tag:"vd",name:"副动词",description:"副动词",meaningful:!1},{tag:"vg",name:"动语素",description:"动词性语素",meaningful:!1},{tag:"a",name:"形容词",description:"普通形容词",meaningful:!0},{tag:"an",name:"名形词",description:"名形词",meaningful:!0},{tag:"ad",name:"副形词",description:"副形词",meaningful:!0},{tag:"ag",name:"形语素",description:"形容词性语素",meaningful:!0},{tag:"i",name:"成语",description:"成语",meaningful:!0},{tag:"l",name:"习用语",description:"习用语",meaningful:!0},{tag:"j",name:"简称",description:"简称略语",meaningful:!0},{tag:"d",name:"副词",description:"副词",meaningful:!1},{tag:"p",name:"介词",description:"介词",meaningful:!1},{tag:"c",name:"连词",description:"连词",meaningful:!1},{tag:"u",name:"助词",description:"助词",meaningful:!1},{tag:"r",name:"代词",description:"代词",meaningful:!1},{tag:"m",name:"数词",description:"数词",meaningful:!1},{tag:"q",name:"量词",description:"量词",meaningful:!1},{tag:"f",name:"方位词",description:"方位词",meaningful:!1},{tag:"t",name:"时间词",description:"时间词",meaningful:!1},{tag:"e",name:"叹词",description:"叹词",meaningful:!1},{tag:"y",name:"语气词",description:"语气词",meaningful:!1},{tag:"o",name:"拟声词",description:"拟声词",meaningful:!1},{tag:"x",name:"非语素字",description:"非语素字",meaningful:!1},{tag:"w",name:"标点符号",description:"标点符号",meaningful:!1}];new Set(jR.filter(e=>e.meaningful).map(e=>e.tag));const J2="chatlab.insight.annual-summary",Q2="chatlab.insight.time-investment",WR=1;var bt=(e=>(e[e.TEXT=0]="TEXT",e[e.IMAGE=1]="IMAGE",e[e.VOICE=2]="VOICE",e[e.VIDEO=3]="VIDEO",e[e.FILE=4]="FILE",e[e.EMOJI=5]="EMOJI",e[e.LINK=7]="LINK",e[e.LOCATION=8]="LOCATION",e[e.RED_PACKET=20]="RED_PACKET",e[e.TRANSFER=21]="TRANSFER",e[e.POKE=22]="POKE",e[e.CALL=23]="CALL",e[e.SHARE=24]="SHARE",e[e.REPLY=25]="REPLY",e[e.FORWARD=26]="FORWARD",e[e.CONTACT=27]="CONTACT",e[e.SYSTEM=80]="SYSTEM",e[e.RECALL=81]="RECALL",e[e.OTHER=99]="OTHER",e))(bt||{}),UR=(e=>(e.GROUP="group",e.PRIVATE="private",e))(UR||{});const GR=["general_cn","general_tw","general_en","general_ja"],YR="general_cn";function Aae(e){return e?.startsWith("zh-TW")?"general_tw":e?.startsWith("en")?"general_en":e?.startsWith("ja")?"general_ja":YR}function Pae(e){return GR.some(t=>t===e)}const Mae=["1y","2y","3y","5y","all"];bt.SYSTEM,bt.RECALL;bt.SYSTEM,bt.RECALL;const KR=5,XR=1;function JR(e){return e.groupSessionCount>=XR||e.privateSessionCount>=KR}bt.TEXT+"",bt.IMAGE+"",bt.VOICE+"",bt.VIDEO+"",bt.FILE+"",bt.EMOJI+"",bt.LINK+"",bt.LOCATION+"",bt.RED_PACKET+"",bt.TRANSFER+"",bt.POKE+"",bt.CALL+"",bt.SHARE+"",bt.REPLY+"",bt.FORWARD+"",bt.CONTACT+"",bt.SYSTEM+"",bt.RECALL+"",bt.OTHER+"";function QR(e){const t=e.trim().replace(/^v/i,""),n=/^(\d+)\.(\d+)\.(\d+)$/.exec(t);return n?Z2(n):null}function ZR(e){const t=e.trim().replace(/^v/i,""),n=/^(\d+)\.(\d+)\.(\d+)(-[0-9A-Za-z.-]+)?$/.exec(t);return n?{...Z2(n),prerelease:!!n[4]}:null}function Z2(e){return{major:Number(e[1]),minor:Number(e[2]),patch:Number(e[3])}}function eL(e,t){const n=QR(e),a=ZR(t);return!n||!a?!1:n.major!==a.major?n.major>a.major:n.minor!==a.minor?n.minor>a.minor:n.patch!==a.patch?n.patch>a.patch:a.prerelease}function Ce(e){return{...e,builtin:!0,editable:!1}}Ce({id:"gpt-5.4-pro",providerId:"openai",name:"GPT-5.4 Pro",description:"Latest flagship, best reasoning & coding",contextWindow:1e6,capabilities:["chat","reasoning","vision","function_calling"],recommendedFor:["chat"],status:"stable"}),Ce({id:"gpt-5.4",providerId:"openai",name:"GPT-5.4",description:"GPT-5.4 standard",contextWindow:1e6,capabilities:["chat","reasoning","vision","function_calling"],recommendedFor:["chat"],status:"stable"}),Ce({id:"gpt-5.2-pro",providerId:"openai",name:"GPT-5.2 Pro",description:"GPT-5.2 Pro",contextWindow:1e6,capabilities:["chat","reasoning","vision","function_calling"],recommendedFor:[],status:"stable"}),Ce({id:"gpt-5.2",providerId:"openai",name:"GPT-5.2",description:"GPT-5.2 standard",contextWindow:1e6,capabilities:["chat","reasoning","vision","function_calling"],recommendedFor:[],status:"stable"}),Ce({id:"gpt-5.1",providerId:"openai",name:"GPT-5.1",description:"GPT-5.1",contextWindow:1e6,capabilities:["chat","reasoning","vision","function_calling"],recommendedFor:[],status:"stable"}),Ce({id:"gpt-5-pro",providerId:"openai",name:"GPT-5 Pro",description:"GPT-5 Pro",contextWindow:1e6,capabilities:["chat","reasoning","vision","function_calling"],recommendedFor:[],status:"stable"}),Ce({id:"gpt-5",providerId:"openai",name:"GPT-5",description:"GPT-5 standard",contextWindow:1e6,capabilities:["chat","reasoning","vision","function_calling"],recommendedFor:[],status:"stable"}),Ce({id:"gpt-4.1",providerId:"openai",name:"GPT-4.1",description:"Best at coding & instruction following",contextWindow:1047576,capabilities:["chat","vision","function_calling"],recommendedFor:["chat"],status:"stable"}),Ce({id:"gpt-4.1-mini",providerId:"openai",name:"GPT-4.1 Mini",description:"Cost-effective",contextWindow:1047576,capabilities:["chat","vision","function_calling"],recommendedFor:["chat"],status:"stable"}),Ce({id:"gpt-4.1-nano",providerId:"openai",name:"GPT-4.1 Nano",description:"Fastest and most affordable",contextWindow:1047576,capabilities:["chat","vision","function_calling"],recommendedFor:[],status:"stable"}),Ce({id:"gpt-4o",providerId:"openai",name:"GPT-4o",description:"Multimodal flagship model",contextWindow:128e3,capabilities:["chat","vision","function_calling"],recommendedFor:[],status:"stable"}),Ce({id:"gpt-4o-mini",providerId:"openai",name:"GPT-4o Mini",description:"Lightweight multimodal model",contextWindow:128e3,capabilities:["chat","vision","function_calling"],recommendedFor:[],status:"stable"}),Ce({id:"o3",providerId:"openai",name:"o3",description:"Advanced reasoning model",contextWindow:2e5,capabilities:["chat","reasoning","vision","function_calling"],recommendedFor:[],status:"stable"}),Ce({id:"o4-mini",providerId:"openai",name:"o4-mini",description:"Efficient reasoning model",contextWindow:2e5,capabilities:["chat","reasoning","vision","function_calling"],recommendedFor:[],status:"stable"}),Ce({id:"text-embedding-3-small",providerId:"openai",name:"Text Embedding 3 Small",description:"Efficient embedding model",contextWindow:8191,capabilities:["embedding"],recommendedFor:["embedding"],status:"stable"}),Ce({id:"text-embedding-3-large",providerId:"openai",name:"Text Embedding 3 Large",description:"High-precision embedding model",contextWindow:8191,capabilities:["embedding"],recommendedFor:["embedding"],status:"stable"});Ce({id:"claude-opus-4-6",providerId:"anthropic",name:"Claude Opus 4.6",description:"Latest flagship, adaptive thinking",contextWindow:2e5,capabilities:["chat","reasoning","vision","function_calling"],recommendedFor:["chat"],status:"stable"}),Ce({id:"claude-sonnet-4-6",providerId:"anthropic",name:"Claude Sonnet 4.6",description:"Cost-effective, adaptive thinking",contextWindow:2e5,capabilities:["chat","reasoning","vision","function_calling"],recommendedFor:["chat"],status:"stable"}),Ce({id:"claude-opus-4-5",providerId:"anthropic",name:"Claude Opus 4.5",description:"Previous generation flagship",contextWindow:2e5,capabilities:["chat","reasoning","vision","function_calling"],recommendedFor:[],status:"stable"}),Ce({id:"claude-sonnet-4-5",providerId:"anthropic",name:"Claude Sonnet 4.5",description:"Previous generation cost-effective",contextWindow:2e5,capabilities:["chat","vision","function_calling"],recommendedFor:[],status:"stable"}),Ce({id:"claude-haiku-4-5",providerId:"anthropic",name:"Claude Haiku 4.5",description:"Fast and lightweight",contextWindow:2e5,capabilities:["chat","vision","function_calling"],recommendedFor:[],status:"stable"}),Ce({id:"claude-sonnet-4-20250514",providerId:"anthropic",name:"Claude Sonnet 4",description:"Sonnet 4 snapshot",contextWindow:2e5,capabilities:["chat","vision","function_calling"],recommendedFor:[],status:"stable"}),Ce({id:"claude-opus-4-20250514",providerId:"anthropic",name:"Claude Opus 4",description:"Opus 4 snapshot",contextWindow:2e5,capabilities:["chat","vision","function_calling"],recommendedFor:[],status:"stable"}),Ce({id:"claude-haiku-3-5-20241022",providerId:"anthropic",name:"Claude 3.5 Haiku",description:"3.5 Haiku snapshot",contextWindow:2e5,capabilities:["chat","vision","function_calling"],recommendedFor:[],status:"stable"});Ce({id:"gemini-3.1-pro-preview",providerId:"gemini",name:"Gemini 3.1 Pro",description:"Latest Gemini 3.1 Pro preview",contextWindow:1048576,capabilities:["chat","reasoning","vision","function_calling"],recommendedFor:["chat"],status:"preview"}),Ce({id:"gemini-3-pro-preview",providerId:"gemini",name:"Gemini 3 Pro",description:"Gemini 3 Pro preview",contextWindow:1048576,capabilities:["chat","reasoning","vision","function_calling"],recommendedFor:["chat"],status:"preview"}),Ce({id:"gemini-2.5-flash",providerId:"gemini",name:"Gemini 2.5 Flash",description:"Cost-effective, low latency, adaptive thinking",contextWindow:1048576,capabilities:["chat","reasoning","vision","function_calling"],recommendedFor:["chat"],status:"stable"}),Ce({id:"gemini-2.5-pro",providerId:"gemini",name:"Gemini 2.5 Pro",description:"Deep reasoning and complex tasks",contextWindow:1048576,capabilities:["chat","reasoning","vision","function_calling"],recommendedFor:["chat"],status:"stable"}),Ce({id:"gemini-2.0-flash",providerId:"gemini",name:"Gemini 2.0 Flash",description:"Previous generation fast model",contextWindow:1048576,capabilities:["chat","vision","function_calling"],recommendedFor:[],status:"stable"}),Ce({id:"text-embedding-004",providerId:"gemini",name:"Text Embedding 004",description:"Google embedding model",contextWindow:2048,capabilities:["embedding"],recommendedFor:["embedding"],status:"stable"});Ce({id:"deepseek-v4-pro",providerId:"deepseek",name:"DeepSeek V4 Pro",description:"Flagship model, 1M context, thinking & non-thinking",contextWindow:1e6,capabilities:["chat","reasoning","function_calling"],recommendedFor:["chat"],status:"stable"}),Ce({id:"deepseek-v4-flash",providerId:"deepseek",name:"DeepSeek V4 Flash",description:"Fast model, 1M context, thinking & non-thinking",contextWindow:1e6,capabilities:["chat","reasoning","function_calling"],recommendedFor:["chat"],status:"stable"});Ce({id:"qwen3.5-plus",providerId:"qwen",name:"Qwen3.5 Plus",description:"Latest Qwen3.5 flagship",contextWindow:262144,capabilities:["chat","reasoning","vision","function_calling"],recommendedFor:["chat"],status:"stable"}),Ce({id:"qwen3.5-flash",providerId:"qwen",name:"Qwen3.5 Flash",description:"Qwen3.5 fast version",contextWindow:262144,capabilities:["chat","reasoning","function_calling"],recommendedFor:["chat"],status:"stable"}),Ce({id:"qwen3-max",providerId:"qwen",name:"Qwen3 Max",description:"Qwen3 massive-scale",contextWindow:262144,capabilities:["chat","reasoning","vision","function_calling"],recommendedFor:["chat"],status:"stable"}),Ce({id:"qwen-max",providerId:"qwen",name:"Qwen Max",description:"Massive-scale language model",contextWindow:262144,capabilities:["chat","vision","function_calling"],recommendedFor:[],status:"stable"}),Ce({id:"qwen-plus",providerId:"qwen",name:"Qwen Plus",description:"Good quality, suitable for most scenarios",contextWindow:262144,capabilities:["chat","vision","function_calling"],recommendedFor:[],status:"stable"}),Ce({id:"qwen-turbo",providerId:"qwen",name:"Qwen Turbo",description:"Fast and cost-effective",contextWindow:1e6,capabilities:["chat","function_calling"],recommendedFor:[],status:"stable"}),Ce({id:"qwen-long",providerId:"qwen",name:"Qwen Long",description:"Ultra-long context model",contextWindow:262144,capabilities:["chat"],recommendedFor:[],status:"stable"}),Ce({id:"text-embedding-v3",providerId:"qwen",name:"Text Embedding V3",description:"Qwen embedding model",contextWindow:8192,capabilities:["embedding"],recommendedFor:["embedding"],status:"stable"});Ce({id:"glm-5",providerId:"glm",name:"GLM-5",description:"Latest flagship model",contextWindow:2e5,capabilities:["chat","reasoning","function_calling"],recommendedFor:["chat"],status:"stable"}),Ce({id:"glm-4.7",providerId:"glm",name:"GLM-4.7",description:"GLM-4.7 high performance",contextWindow:2e5,capabilities:["chat","function_calling"],recommendedFor:["chat"],status:"stable"}),Ce({id:"glm-4.6v",providerId:"glm",name:"GLM-4.6V",description:"4.6 multimodal model",contextWindow:2e5,capabilities:["chat","vision","function_calling"],recommendedFor:["chat"],status:"stable"}),Ce({id:"glm-4.6v-flash",providerId:"glm",name:"GLM-4.6V Flash",description:"4.6V free multimodal",contextWindow:2e5,capabilities:["chat","vision","function_calling"],recommendedFor:[],status:"stable"}),Ce({id:"glm-4.5",providerId:"glm",name:"GLM-4.5",description:"GLM-4.5 standard",contextWindow:2e5,capabilities:["chat","function_calling"],recommendedFor:[],status:"stable"}),Ce({id:"glm-4.5-flash",providerId:"glm",name:"GLM-4.5 Flash",description:"4.5 free model",contextWindow:2e5,capabilities:["chat","function_calling"],recommendedFor:[],status:"stable"}),Ce({id:"glm-4-plus",providerId:"glm",name:"GLM-4 Plus",description:"Previous generation flagship",contextWindow:128e3,capabilities:["chat","function_calling"],recommendedFor:[],status:"stable"}),Ce({id:"glm-4-flash",providerId:"glm",name:"GLM-4 Flash",description:"Fast model",contextWindow:128e3,capabilities:["chat","function_calling"],recommendedFor:[],status:"stable"}),Ce({id:"embedding-3",providerId:"glm",name:"Embedding-3",description:"Zhipu embedding model",contextWindow:8192,capabilities:["embedding"],recommendedFor:["embedding"],status:"stable"});Ce({id:"kimi-k2.5",providerId:"kimi",name:"Kimi K2.5",description:"Latest flagship with vision support",contextWindow:262144,capabilities:["chat","vision","function_calling"],recommendedFor:["chat"],status:"stable"}),Ce({id:"kimi-k2-thinking",providerId:"kimi",name:"Kimi K2 Thinking",description:"K2 deep reasoning",contextWindow:131072,capabilities:["chat","reasoning","function_calling"],recommendedFor:["chat"],status:"stable"}),Ce({id:"kimi-k2-thinking-turbo",providerId:"kimi",name:"Kimi K2 Thinking Turbo",description:"K2 fast reasoning",contextWindow:131072,capabilities:["chat","reasoning","function_calling"],recommendedFor:[],status:"stable"}),Ce({id:"kimi-k2-0905-Preview",providerId:"kimi",name:"Kimi K2 Preview",description:"K2 preview",contextWindow:131072,capabilities:["chat","function_calling"],recommendedFor:[],status:"preview"}),Ce({id:"moonshot-v1-auto",providerId:"kimi",name:"Moonshot V1 Auto",description:"Auto-select context length",contextWindow:131072,capabilities:["chat","function_calling"],recommendedFor:[],status:"stable"});Ce({id:"doubao-seed-2-0-pro-260215",providerId:"doubao",name:"Doubao Seed 2.0 Pro",description:"Latest flagship model",contextWindow:256e3,capabilities:["chat","reasoning","vision","function_calling"],recommendedFor:["chat"],status:"stable"}),Ce({id:"doubao-seed-2-0-lite-260215",providerId:"doubao",name:"Doubao Seed 2.0 Lite",description:"Seed 2.0 lightweight",contextWindow:256e3,capabilities:["chat","reasoning","function_calling"],recommendedFor:["chat"],status:"stable"}),Ce({id:"doubao-seed-2-0-mini-260215",providerId:"doubao",name:"Doubao Seed 2.0 Mini",description:"Seed 2.0 ultra-fast",contextWindow:256e3,capabilities:["chat","function_calling"],recommendedFor:[],status:"stable"}),Ce({id:"doubao-seed-1-8-251228",providerId:"doubao",name:"Doubao Seed 1.8",description:"Previous generation flagship",contextWindow:128e3,capabilities:["chat","reasoning","vision","function_calling"],recommendedFor:[],status:"stable"}),Ce({id:"doubao-seed-1-6-251015",providerId:"doubao",name:"Doubao Seed 1.6",description:"High-performance general model",contextWindow:128e3,capabilities:["chat","reasoning","vision","function_calling"],recommendedFor:[],status:"stable"}),Ce({id:"doubao-seed-1-6-lite-251015",providerId:"doubao",name:"Doubao Seed 1.6 Lite",description:"Lightweight and cost-effective",contextWindow:128e3,capabilities:["chat","function_calling"],recommendedFor:[],status:"stable"});Ce({id:"deepseek-ai/DeepSeek-V3.2",providerId:"siliconflow",name:"DeepSeek V3.2",description:"DeepSeek V3.2 on SiliconFlow",contextWindow:128e3,capabilities:["chat","function_calling"],recommendedFor:["chat"],status:"stable"}),Ce({id:"deepseek-ai/DeepSeek-R1",providerId:"siliconflow",name:"DeepSeek R1",description:"DeepSeek R1 reasoning model",contextWindow:65536,capabilities:["chat","reasoning"],recommendedFor:["chat"],status:"stable"}),Ce({id:"Qwen/Qwen3-8B",providerId:"siliconflow",name:"Qwen3 8B",description:"Qwen3 8B lightweight model",contextWindow:32768,capabilities:["chat"],recommendedFor:[],status:"stable"});Ce({id:"llama3-70b-8192",providerId:"groq",name:"LLaMA3 70B",description:"Meta LLaMA3 70B ultra-fast inference",contextWindow:8192,capabilities:["chat","function_calling"],recommendedFor:["chat"],status:"stable"}),Ce({id:"llama3-8b-8192",providerId:"groq",name:"LLaMA3 8B",description:"Meta LLaMA3 8B lightweight ultra-fast",contextWindow:8192,capabilities:["chat"],recommendedFor:["chat"],status:"stable"}),Ce({id:"mistral-saba-24b",providerId:"groq",name:"Mistral Saba 24B",description:"Mistral Saba 24B",contextWindow:32768,capabilities:["chat"],recommendedFor:[],status:"stable"}),Ce({id:"gemma-9b-it",providerId:"groq",name:"Gemma 9B",description:"Google Gemma 9B",contextWindow:8192,capabilities:["chat"],recommendedFor:[],status:"stable"});Ce({id:"deepseek/deepseek-v4-pro",providerId:"openrouter",name:"DeepSeek V4 Pro",description:"DeepSeek V4 Pro via OpenRouter",contextWindow:1e6,capabilities:["chat","reasoning","function_calling"],recommendedFor:["chat"],status:"stable"}),Ce({id:"google/gemini-2.5-flash-preview",providerId:"openrouter",name:"Gemini 2.5 Flash",description:"Google Gemini 2.5 Flash via OpenRouter",contextWindow:1048576,capabilities:["chat","vision","function_calling"],recommendedFor:["chat"],status:"stable"}),Ce({id:"mistralai/mistral-7b-instruct:free",providerId:"openrouter",name:"Mistral 7B (Free)",description:"Mistral 7B free tier",contextWindow:32768,capabilities:["chat"],recommendedFor:[],status:"stable"});Ce({id:"grok-4",providerId:"xai",name:"Grok 4",description:"Latest flagship model",contextWindow:256e3,capabilities:["chat","reasoning","vision","function_calling"],recommendedFor:["chat"],status:"stable"}),Ce({id:"grok-3",providerId:"xai",name:"Grok 3",description:"Grok 3 standard",contextWindow:131072,capabilities:["chat","vision","function_calling"],recommendedFor:["chat"],status:"stable"}),Ce({id:"grok-3-fast",providerId:"xai",name:"Grok 3 Fast",description:"Grok 3 fast version",contextWindow:131072,capabilities:["chat","function_calling"],recommendedFor:[],status:"stable"}),Ce({id:"grok-3-mini",providerId:"xai",name:"Grok 3 Mini",description:"Grok 3 small reasoning model",contextWindow:131072,capabilities:["chat","reasoning","function_calling"],recommendedFor:[],status:"stable"}),Ce({id:"grok-3-mini-fast",providerId:"xai",name:"Grok 3 Mini Fast",description:"Grok 3 Mini fast version",contextWindow:131072,capabilities:["chat","reasoning","function_calling"],recommendedFor:[],status:"stable"});Ce({id:"MiniMax-M2.7",providerId:"minimax",name:"MiniMax M2.7",description:"Latest flagship model",contextWindow:2e5,capabilities:["chat","function_calling"],recommendedFor:["chat"],status:"stable"}),Ce({id:"MiniMax-M2.7-highspeed",providerId:"minimax",name:"MiniMax M2.7 HS",description:"M2.7 high-speed",contextWindow:2e5,capabilities:["chat","function_calling"],recommendedFor:["chat"],status:"stable"}),Ce({id:"MiniMax-M2.5",providerId:"minimax",name:"MiniMax M2.5",description:"M2.5 standard",contextWindow:204800,capabilities:["chat","function_calling"],recommendedFor:[],status:"stable"}),Ce({id:"MiniMax-M2.5-highspeed",providerId:"minimax",name:"MiniMax M2.5 HS",description:"M2.5 high-speed",contextWindow:204800,capabilities:["chat","function_calling"],recommendedFor:[],status:"stable"});function tL(e,t,n={}){let a=!1,r=null;const o=()=>{a||(a=!0,t(),r?.disconnect(),r=null)};return typeof IntersectionObserver>"u"?(o(),()=>{}):(r=new IntersectionObserver(s=>{s.some(i=>i.isIntersecting||i.intersectionRatio>0)&&o()},{rootMargin:"160px 0px",threshold:0,...n}),r.observe(e),()=>{r?.disconnect(),r=null})}const nL=["src","alt"],aL=Z({__name:"LazyAvatar",props:{src:{default:null},alt:{},text:{},rootClass:{default:"h-8 w-8 shrink-0"},imageClass:{default:"h-8 w-8 rounded-full object-cover"},fallbackClass:{default:"flex h-8 w-8 items-center justify-center rounded-full text-[10px] font-bold"},rootMargin:{default:"160px 0px"}},setup(e){const t=e,n=V(null),a=V(!1);let r=null;const o=S(()=>!!t.src);function s(){r?.(),r=null}function i(){s(),a.value=!1,!(!t.src||!n.value)&&(r=tL(n.value,()=>{a.value=!0},{rootMargin:t.rootMargin}))}return Xe(i),Se(()=>t.src,()=>{i()}),Ga(s),(l,c)=>(C(),ye("div",{ref_key:"avatarRoot",ref:n,class:Ae(e.rootClass)},[o.value&&a.value?(C(),ye("img",{key:0,src:e.src,alt:e.alt,class:Ae(e.imageClass),loading:"lazy",decoding:"async"},null,10,nL)):(C(),ye("div",{key:1,class:Ae(e.fallbackClass)},Me(e.text),3))],2))}});function rL(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var Rl={exports:{}},oL=Rl.exports,_v;function pu(){return _v||(_v=1,(function(e,t){(function(n,a){e.exports=a()})(oL,(function(){var n=1e3,a=6e4,r=36e5,o="millisecond",s="second",i="minute",l="hour",c="day",u="week",d="month",h="quarter",p="year",m="date",v="Invalid Date",y=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,g=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,b={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:function(O){var D=["th","st","nd","rd"],q=O%100;return"["+O+(D[(q-20)%10]||D[q]||D[0])+"]"}},w=function(O,D,q){var G=String(O);return!G||G.length>=D?O:""+Array(D+1-G.length).join(q)+O},_={s:w,z:function(O){var D=-O.utcOffset(),q=Math.abs(D),G=Math.floor(q/60),L=q%60;return(D<=0?"+":"-")+w(G,2,"0")+":"+w(L,2,"0")},m:function O(D,q){if(D.date()<q.date())return-O(q,D);var G=12*(q.year()-D.year())+(q.month()-D.month()),L=D.clone().add(G,d),ee=q-L<0,K=D.clone().add(G+(ee?-1:1),d);return+(-(G+(q-L)/(ee?L-K:K-L))||0)},a:function(O){return O<0?Math.ceil(O)||0:Math.floor(O)},p:function(O){return{M:d,y:p,w:u,d:c,D:m,h:l,m:i,s,ms:o,Q:h}[O]||String(O||"").toLowerCase().replace(/s$/,"")},u:function(O){return O===void 0}},A="en",P={};P[A]=b;var k="$isDayjsObject",T=function(O){return O instanceof z||!(!O||!O[k])},I=function O(D,q,G){var L;if(!D)return A;if(typeof D=="string"){var ee=D.toLowerCase();P[ee]&&(L=ee),q&&(P[ee]=q,L=ee);var K=D.split("-");if(!L&&K.length>1)return O(K[0])}else{var ce=D.name;P[ce]=D,L=ce}return!G&&L&&(A=L),L||!G&&A},Y=function(O,D){if(T(O))return O.clone();var q=typeof D=="object"?D:{};return q.date=O,q.args=arguments,new z(q)},Q=_;Q.l=I,Q.i=T,Q.w=function(O,D){return Y(O,{locale:D.$L,utc:D.$u,x:D.$x,$offset:D.$offset})};var z=(function(){function O(q){this.$L=I(q.locale,null,!0),this.parse(q),this.$x=this.$x||q.x||{},this[k]=!0}var D=O.prototype;return D.parse=function(q){this.$d=(function(G){var L=G.date,ee=G.utc;if(L===null)return new Date(NaN);if(Q.u(L))return new Date;if(L instanceof Date)return new Date(L);if(typeof L=="string"&&!/Z$/i.test(L)){var K=L.match(y);if(K){var ce=K[2]-1||0,ue=(K[7]||"0").substring(0,3);return ee?new Date(Date.UTC(K[1],ce,K[3]||1,K[4]||0,K[5]||0,K[6]||0,ue)):new Date(K[1],ce,K[3]||1,K[4]||0,K[5]||0,K[6]||0,ue)}}return new Date(L)})(q),this.init()},D.init=function(){var q=this.$d;this.$y=q.getFullYear(),this.$M=q.getMonth(),this.$D=q.getDate(),this.$W=q.getDay(),this.$H=q.getHours(),this.$m=q.getMinutes(),this.$s=q.getSeconds(),this.$ms=q.getMilliseconds()},D.$utils=function(){return Q},D.isValid=function(){return this.$d.toString()!==v},D.isSame=function(q,G){var L=Y(q);return this.startOf(G)<=L&&L<=this.endOf(G)},D.isAfter=function(q,G){return Y(q)<this.startOf(G)},D.isBefore=function(q,G){return this.endOf(G)<Y(q)},D.$g=function(q,G,L){return Q.u(q)?this[G]:this.set(L,q)},D.unix=function(){return Math.floor(this.valueOf()/1e3)},D.valueOf=function(){return this.$d.getTime()},D.startOf=function(q,G){var L=this,ee=!!Q.u(G)||G,K=Q.p(q),ce=function(se,pe){var Pe=Q.w(L.$u?Date.UTC(L.$y,pe,se):new Date(L.$y,pe,se),L);return ee?Pe:Pe.endOf(c)},ue=function(se,pe){return Q.w(L.toDate()[se].apply(L.toDate("s"),(ee?[0,0,0,0]:[23,59,59,999]).slice(pe)),L)},be=this.$W,ge=this.$M,we=this.$D,me="set"+(this.$u?"UTC":"");switch(K){case p:return ee?ce(1,0):ce(31,11);case d:return ee?ce(1,ge):ce(0,ge+1);case u:var X=this.$locale().weekStart||0,le=(be<X?be+7:be)-X;return ce(ee?we-le:we+(6-le),ge);case c:case m:return ue(me+"Hours",0);case l:return ue(me+"Minutes",1);case i:return ue(me+"Seconds",2);case s:return ue(me+"Milliseconds",3);default:return this.clone()}},D.endOf=function(q){return this.startOf(q,!1)},D.$set=function(q,G){var L,ee=Q.p(q),K="set"+(this.$u?"UTC":""),ce=(L={},L[c]=K+"Date",L[m]=K+"Date",L[d]=K+"Month",L[p]=K+"FullYear",L[l]=K+"Hours",L[i]=K+"Minutes",L[s]=K+"Seconds",L[o]=K+"Milliseconds",L)[ee],ue=ee===c?this.$D+(G-this.$W):G;if(ee===d||ee===p){var be=this.clone().set(m,1);be.$d[ce](ue),be.init(),this.$d=be.set(m,Math.min(this.$D,be.daysInMonth())).$d}else ce&&this.$d[ce](ue);return this.init(),this},D.set=function(q,G){return this.clone().$set(q,G)},D.get=function(q){return this[Q.p(q)]()},D.add=function(q,G){var L,ee=this;q=Number(q);var K=Q.p(G),ce=function(ge){var we=Y(ee);return Q.w(we.date(we.date()+Math.round(ge*q)),ee)};if(K===d)return this.set(d,this.$M+q);if(K===p)return this.set(p,this.$y+q);if(K===c)return ce(1);if(K===u)return ce(7);var ue=(L={},L[i]=a,L[l]=r,L[s]=n,L)[K]||1,be=this.$d.getTime()+q*ue;return Q.w(be,this)},D.subtract=function(q,G){return this.add(-1*q,G)},D.format=function(q){var G=this,L=this.$locale();if(!this.isValid())return L.invalidDate||v;var ee=q||"YYYY-MM-DDTHH:mm:ssZ",K=Q.z(this),ce=this.$H,ue=this.$m,be=this.$M,ge=L.weekdays,we=L.months,me=L.meridiem,X=function(pe,Pe,$,B){return pe&&(pe[Pe]||pe(G,ee))||$[Pe].slice(0,B)},le=function(pe){return Q.s(ce%12||12,pe,"0")},se=me||function(pe,Pe,$){var B=pe<12?"AM":"PM";return $?B.toLowerCase():B};return ee.replace(g,(function(pe,Pe){return Pe||(function($){switch($){case"YY":return String(G.$y).slice(-2);case"YYYY":return Q.s(G.$y,4,"0");case"M":return be+1;case"MM":return Q.s(be+1,2,"0");case"MMM":return X(L.monthsShort,be,we,3);case"MMMM":return X(we,be);case"D":return G.$D;case"DD":return Q.s(G.$D,2,"0");case"d":return String(G.$W);case"dd":return X(L.weekdaysMin,G.$W,ge,2);case"ddd":return X(L.weekdaysShort,G.$W,ge,3);case"dddd":return ge[G.$W];case"H":return String(ce);case"HH":return Q.s(ce,2,"0");case"h":return le(1);case"hh":return le(2);case"a":return se(ce,ue,!0);case"A":return se(ce,ue,!1);case"m":return String(ue);case"mm":return Q.s(ue,2,"0");case"s":return String(G.$s);case"ss":return Q.s(G.$s,2,"0");case"SSS":return Q.s(G.$ms,3,"0");case"Z":return K}return null})(pe)||K.replace(":","")}))},D.utcOffset=function(){return 15*-Math.round(this.$d.getTimezoneOffset()/15)},D.diff=function(q,G,L){var ee,K=this,ce=Q.p(G),ue=Y(q),be=(ue.utcOffset()-this.utcOffset())*a,ge=this-ue,we=function(){return Q.m(K,ue)};switch(ce){case p:ee=we()/12;break;case d:ee=we();break;case h:ee=we()/3;break;case u:ee=(ge-be)/6048e5;break;case c:ee=(ge-be)/864e5;break;case l:ee=ge/r;break;case i:ee=ge/a;break;case s:ee=ge/n;break;default:ee=ge}return L?ee:Q.a(ee)},D.daysInMonth=function(){return this.endOf(d).$D},D.$locale=function(){return P[this.$L]},D.locale=function(q,G){if(!q)return this.$L;var L=this.clone(),ee=I(q,G,!0);return ee&&(L.$L=ee),L},D.clone=function(){return Q.w(this.$d,this)},D.toDate=function(){return new Date(this.valueOf())},D.toJSON=function(){return this.isValid()?this.toISOString():null},D.toISOString=function(){return this.$d.toISOString()},D.toString=function(){return this.$d.toUTCString()},O})(),te=z.prototype;return Y.prototype=te,[["$ms",o],["$s",s],["$m",i],["$H",l],["$W",c],["$M",d],["$y",p],["$D",m]].forEach((function(O){te[O[1]]=function(D){return this.$g(D,O[0],O[1])}})),Y.extend=function(O,D){return O.$i||(O(D,z,Y),O.$i=!0),Y},Y.locale=I,Y.isDayjs=T,Y.unix=function(O){return Y(1e3*O)},Y.en=P[A],Y.Ls=P,Y.p={},Y}))})(Rl)),Rl.exports}var sL=pu();const kv=rL(sL);var Ll={exports:{}},iL=Ll.exports,Cv;function lL(){return Cv||(Cv=1,(function(e,t){(function(n,a){e.exports=a(pu())})(iL,(function(n){function a(s){return s&&typeof s=="object"&&"default"in s?s:{default:s}}var r=a(n),o={name:"zh-cn",weekdays:"星期日_星期一_星期二_星期三_星期四_星期五_星期六".split("_"),weekdaysShort:"周日_周一_周二_周三_周四_周五_周六".split("_"),weekdaysMin:"日_一_二_三_四_五_六".split("_"),months:"一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月".split("_"),monthsShort:"1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),ordinal:function(s,i){return i==="W"?s+"周":s+"日"},weekStart:1,yearStart:4,formats:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY/MM/DD",LL:"YYYY年M月D日",LLL:"YYYY年M月D日Ah点mm分",LLLL:"YYYY年M月D日ddddAh点mm分",l:"YYYY/M/D",ll:"YYYY年M月D日",lll:"YYYY年M月D日 HH:mm",llll:"YYYY年M月D日dddd HH:mm"},relativeTime:{future:"%s内",past:"%s前",s:"几秒",m:"1 分钟",mm:"%d 分钟",h:"1 小时",hh:"%d 小时",d:"1 天",dd:"%d 天",M:"1 个月",MM:"%d 个月",y:"1 年",yy:"%d 年"},meridiem:function(s,i){var l=100*s+i;return l<600?"凌晨":l<900?"早上":l<1100?"上午":l<1300?"中午":l<1800?"下午":"晚上"}};return r.default.locale(o,null,!0),o}))})(Ll)),Ll.exports}lL();var Ol={exports:{}},cL=Ol.exports,Sv;function uL(){return Sv||(Sv=1,(function(e,t){(function(n,a){e.exports=a(pu())})(cL,(function(n){function a(s){return s&&typeof s=="object"&&"default"in s?s:{default:s}}var r=a(n),o={name:"zh-tw",weekdays:"星期日_星期一_星期二_星期三_星期四_星期五_星期六".split("_"),weekdaysShort:"週日_週一_週二_週三_週四_週五_週六".split("_"),weekdaysMin:"日_一_二_三_四_五_六".split("_"),months:"一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月".split("_"),monthsShort:"1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),ordinal:function(s,i){return i==="W"?s+"週":s+"日"},formats:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY/MM/DD",LL:"YYYY年M月D日",LLL:"YYYY年M月D日 HH:mm",LLLL:"YYYY年M月D日dddd HH:mm",l:"YYYY/M/D",ll:"YYYY年M月D日",lll:"YYYY年M月D日 HH:mm",llll:"YYYY年M月D日dddd HH:mm"},relativeTime:{future:"%s內",past:"%s前",s:"幾秒",m:"1 分鐘",mm:"%d 分鐘",h:"1 小時",hh:"%d 小時",d:"1 天",dd:"%d 天",M:"1 個月",MM:"%d 個月",y:"1 年",yy:"%d 年"},meridiem:function(s,i){var l=100*s+i;return l<600?"凌晨":l<900?"早上":l<1100?"上午":l<1300?"中午":l<1800?"下午":"晚上"}};return r.default.locale(o,null,!0),o}))})(Ol)),Ol.exports}uL();var Nl={exports:{}},dL=Nl.exports,xv;function fL(){return xv||(xv=1,(function(e,t){(function(n,a){e.exports=a()})(dL,(function(){return{name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:function(n){var a=["th","st","nd","rd"],r=n%100;return"["+n+(a[(r-20)%10]||a[r]||a[0])+"]"}}}))})(Nl)),Nl.exports}fL();var Fl={exports:{}},pL=Fl.exports,Av;function hL(){return Av||(Av=1,(function(e,t){(function(n,a){e.exports=a(pu())})(pL,(function(n){function a(s){return s&&typeof s=="object"&&"default"in s?s:{default:s}}var r=a(n),o={name:"ja",weekdays:"日曜日_月曜日_火曜日_水曜日_木曜日_金曜日_土曜日".split("_"),weekdaysShort:"日_月_火_水_木_金_土".split("_"),weekdaysMin:"日_月_火_水_木_金_土".split("_"),months:"1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),monthsShort:"1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),ordinal:function(s){return s+"日"},formats:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY/MM/DD",LL:"YYYY年M月D日",LLL:"YYYY年M月D日 HH:mm",LLLL:"YYYY年M月D日 dddd HH:mm",l:"YYYY/MM/DD",ll:"YYYY年M月D日",lll:"YYYY年M月D日 HH:mm",llll:"YYYY年M月D日(ddd) HH:mm"},meridiem:function(s){return s<12?"午前":"午後"},relativeTime:{future:"%s後",past:"%s前",s:"数秒",m:"1分",mm:"%d分",h:"1時間",hh:"%d時間",d:"1日",dd:"%d日",M:"1ヶ月",MM:"%dヶ月",y:"1年",yy:"%d年"}};return r.default.locale(o,null,!0),o}))})(Fl)),Fl.exports}hL();const mL="确定",gL="取消",vL="保存",yL="编辑",bL="添加",wL="截屏",_L="关闭",kL="返回",CL="完成",SL="重试",xL="应用初始化失败",AL="外观偏好未能及时加载,本次启动已使用系统主题和内置语言。",PL="本地工作区暂时正由另一个标签页使用。请稍候后重试。",ML="加载中...",TL="初始化中...",IL="无匹配结果",DL="导出成功",EL="导出失败",$L="生成中...",RL="重新生成",LL="打开目录",OL="查看聊天记录",NL="请先在设置中配置 AI 服务",FL={unknown:"未知错误"},qL={text:"文字",image:"图片",voice:"语音",video:"视频",file:"文件",emoji:"表情",link:"链接",location:"位置",redPacket:"红包",transfer:"转账",poke:"拍一拍",call:"通话",share:"分享",reply:"回复",forward:"转发",contact:"名片",system:"系统",recall:"撤回",other:"其他",unknown:"未知"},BL={mon:"周一",tue:"周二",wed:"周三",thu:"周四",fri:"周五",sat:"周六",sun:"周日"},HL={jan:"1月",feb:"2月",mar:"3月",apr:"4月",may:"5月",jun:"6月",jul:"7月",aug:"8月",sep:"9月",oct:"10月",nov:"11月",dec:"12月"},VL={title:"选择语言",subtitle:"请选择您偏好的界面语言",next:"下一步"},zL={title:"隐私政策与用户协议",subtitle:"使用前请仔细阅读",disagree:"我不同意",agree:"我已阅读并同意",updateNotice:"协议内容有重要更新,请重新阅读并确认"},jL={selectDate:"选择日期",clearDate:"清空日期"},WL={mode:{recent:"最近",quarter:"按季",year:"按年",custom:"自定义"},recent:{oneYear:"近一年",twoYears:"近两年",fiveYears:"近五年",all:"全部"},display:{recent365:"最近一年",recent730:"最近两年",recent1825:"最近五年"},quarter:{label:"{year}年 第{quarter}季度"},year:{label:"{year}年"}},UL={allMembers:"全部成员"},GL={placeholder:"搜索成员",noSecondary:"无其他名称"},YL={description:"此服务已开启认证保护,请输入 API Token 登录",tokenLabel:"API Token",tokenPlaceholder:"clb_xxxxxxxx",submit:"登录",hint:"Token 可在启动日志、config.toml 或 --token 启动参数中获取",errorEmpty:"请输入 Token",errorInvalid:"Token 无效,请检查后重试",errorNetwork:"网络连接失败",rememberDevice:"记住此设备",rememberWarning:"仅在可信设备上勾选,Token 将持久保存在浏览器中",logoutTitle:"账户",logoutDesc:"退出当前认证登录",logout:"退出登录"},KL={confirm:mL,cancel:gL,delete:"删除",save:vL,edit:yL,add:bL,capture:wL,close:_L,back:kL,done:CL,retry:SL,initFailed:xL,presentationFallback:AL,webWasmWorkspaceBusy:PL,loading:ML,initializing:TL,noResults:IL,export:"导出",exportSuccess:DL,exportFailed:EL,generating:$L,regenerate:RL,openFolder:LL,viewChatRecords:OL,errorNoAIConfig:NL,error:FL,messageType:qL,weekday:BL,month:HL,languageSelect:VL,agreement:zL,datePicker:jL,timeSelect:WL,userSelect:UL,memberSearchSelect:GL,login:YL},XL="ChatLab",JL="分析新对话",QL="联系人",ZL="关系",eO="足迹",tO="实用工具",nO="聊天对话",aO="管理",rO="暂无记录",oO="会话列表加载失败",sO="搜索对话名称",iO="未找到匹配的聊天记录",lO={rename:"重命名",pin:"置顶",unpin:"取消置顶",copyId:"复制 ID",delete:"删除"},cO={title:"重命名",placeholder:"请输入新名称"},uO={title:"确认删除",message:'确定要删除聊天记录 "{name}" 吗?此操作无法撤销。'},dO={tag:"New",title:"发现新版本",message:"最新版本是 v{version}。",desktopHint:"点击立即更新后,ChatLab 会开始检查并下载桌面端更新。",cliHint:"请在终端运行以下命令更新 CLI,更新后重启服务。",updateNow:"立即更新",later:"稍后"},fO={all:"全部",private:"私聊",group:"群聊"},pO={importedAt:"导入时间",lastMessageTs:"最近对话",messageCount:"消息数量"},hO={search:"搜索聊天记录",sort:"排序"},mO="{count} 条消息",gO={settings:"设置"},vO={brand:XL,newAnalysis:JL,contacts:QL,relationships:ZL,insight:eO,tools:tO,chatHistory:nO,manage:aO,noRecords:rO,sessionLoadFailed:oO,searchPlaceholder:sO,noSearchResult:iO,contextMenu:lO,renameModal:cO,deleteModal:uO,updateNotice:dO,filter:fO,sort:pO,tooltip:hO,sessionInfo:mO,footer:gO},yO="设置",bO={basic:"基础设置",navigation:"导航布局",ai:"AI 设置",aiConfig:"模型服务",aiDefaultModel:"默认模型",semanticIndex:"语义索引",chatPreferences:"对话偏好",aiPreprocess:"预处理",dataManage:"数据管理",storage:"存储管理",security:"安全",sessionManage:"会话索引",about:"关于",api:"自动化",apiSubTabs:{autoSync:"自动同步",apiService:"API 服务",mcp:"MCP"}},wO={general:{title:"常规"},preferences:{title:"偏好设置"},language:{description:"选择软件显示语言"},appearance:{title:"外观设置",themeMode:"主题模式",insightCardTheme:"洞察卡片配色",insightCardThemeOption:"配色 {index}",auto:"跟随系统",light:"浅色模式",dark:"深色模式"},defaultTab:{description:"进入聊天对话后默认显示的页面",insights:"洞察",aiChat:"AI 对话"},autoLaunch:{openAtLogin:"开机自启动",openAtLoginDesc:"系统启动时自动运行 ChatLab",devModeHint:"开发模式下不可用"},closeBehavior:{label:"关闭主窗口时",background:"后台运行",quit:"退出应用"},toolsPanel:{positionLabel:"快捷工具入口位置",positionDesc:"选择快捷工具面板的显示位置",positionSide:"右侧",positionHeader:"顶部"},network:{title:"网络设置",proxyMode:"代理模式",proxyModeDesc:"访问网络时使用的代理方式",modeOff:"关闭",modeSystem:"跟随系统",modeManual:"手动配置",proxyAddress:"代理地址",proxyPlaceholder:"http://127.0.0.1:7890",proxyHelp:"支持 HTTP/HTTPS 代理,格式如:http://127.0.0.1:7890",testConnection:"测试连接",testing:"测试中...",connectionSuccess:"代理连接成功!",connectionFailed:"连接失败",enterProxyFirst:"请先输入代理地址",invalidProxyUrl:"请输入有效的代理地址,格式如 http://127.0.0.1:7890",onlyHttpSupported:"仅支持 http:// 或 https:// 协议",saveFailed:"保存失败"}},_O={title:"导航布局",description:"调整分析功能在侧边栏一级入口和足迹二级导航中的位置。更改仅在保存后生效。",invalidLayout:"已保存的导航布局无法读取,当前正在使用插件默认布局。保存或恢复默认后会替换无效配置。",loadFailed:"未能读取已保存的导航布局,当前仅临时显示插件默认布局。请刷新应用后重试;读取成功前不能保存或恢复默认。",primary:"一级入口",inGroup:"二级 · {group}",group:"二级导航组",hidden:"已隐藏",moveUp:"上移",moveDown:"下移",locationFor:"设置 {title} 的导航位置",unavailable:"插件不可用",emptyGroup:"该分组暂时没有导航项。",saved:"导航布局已保存",saveFailed:"导航布局保存失败",reset:"恢复默认",resetDone:"已恢复默认导航布局",resetFailed:"恢复默认导航布局失败",storageHint:"Desktop 与 CLI Web 共用 .chatlab 中的这份布局。"},kO={title:"默认模型",noConfigs:"请先在「模型服务」中添加模型配置",selectProvider:"选择提供商",selectModel:"选择模型",assistantModel:{label:"默认助手模型",description:"用于 AI 对话、工具调用、SQL 助手、上下文压缩"},fastModel:{label:"快速模型",description:"用于会话摘要生成,未配置时使用默认助手模型",followAssistant:"跟随默认助手模型"}},CO={title:"模型服务",defaultModel:"默认模型",empty:{title:"还没有配置 AI 服务",description:"添加一个配置开始使用 AI 功能"},addConfig:"添加新服务",maxConfigs:"已达最大配置数量(10个)",modal:{addConfig:"添加新服务",editConfig:"编辑服务",localService:"本地服务",configName:"配置名称",optional:"(选填)",configNamePlaceholderPreset:"留空将使用服务商名称",configNamePlaceholderCustom:"留空将使用 API 端点地址",aiProvider:"AI 服务商",apiKeyPlaceholder:"输入你的 API Key",apiKeyPlaceholderEdit:"输入新的 API Key(留空保持原有)",apiKeyPlaceholderLocal:"本地服务通常不需要",apiKeyHintLocal:"如果服务设置了认证,在此输入",validate:"验证",validationSuccess:"连接验证成功",validationFailed:"连接验证失败",validationFailedTitle:"API 连接验证失败",saveAnywayHint:"验证未通过,配置信息可能有误。是否仍然保存?",saveAnyway:"仍然保存",validationError:"验证失败:",model:"模型",apiEndpoint:"API 地址",apiEndpointHint:"兼容 OpenAI 格式的 API 端点",resolvedUrl:"实际请求地址:",fetchModels:"从 API 获取",fetchModelsTitle:"浏览远程模型",fetchModelsLoading:"正在获取模型列表...",fetchModelsEmpty:"未获取到模型",fetchModelsError:"获取模型列表失败",fetchModelsCount:"共 {total} 个模型,当前显示 {shown} 个",modelAdded:"已添加",addAllModels:"全部添加",searchModels:"搜索模型...",apiEndpointOverrideHint:"默认地址已填入,可按需改为完整 URL",customService:"自定义服务",visitWebsite:"访问官网",getApiKey:"获取 API Key",presetService:"预设服务",thirdPartyService:"第三方服务",addCustomModel:"添加模型",deleteCustomModel:"删除选中",customModelId:"模型端点名",customModelIdHint:"API 调用时使用的模型标识符",customModelDisplayName:"显示名称",customModelDisplayNamePlaceholder:"自定义显示名",editModel:"编辑模型",contextWindow:"上下文窗口",contextWindowPlaceholder:"如 128000",contextWindowHint:"模型支持的最大上下文 token 数(用于上下文压缩)",contextWindowMissing:"未设置上下文窗口,将使用默认值,建议点击「编辑模型」手动填写",modelRequired:"至少添加一个模型才能保存",apiFormat:"API 接口类型",apiFormatOpenAI:"OpenAI Completions",apiFormatAnthropic:"Anthropic",apiFormatGemini:"Gemini",apiFormatOpenAIResponses:"OpenAI Responses"},providerKind:{aggregator:"聚合",custom:"自定义"}},SO={title:"本地存储管理",description:"管理 ChatLab 在本地存储的数据文件",dataLocation:{title:"数据目录位置",description:"自定义聊天数据库与向量库的存放位置",managedDescription:"此设置仅管理聊天数据库和向量库目录;AI 对话、缓存和日志仍保存在固定系统目录。",choose:"选择位置",applyPath:"应用",reset:"恢复默认",open:"打开",serverPathHint:"请输入运行 CLI 服务的机器可访问的绝对路径。",migrateHint:"检测到聊天数据库数据仍在旧位置,建议迁移至统一目录:",ignoreMigrateHint:"忽略",migrateAction:"一键迁移",restartTip:"切换目录后请重启应用,聊天数据库数据会按选择迁移",cliRestartTip:"切换目录后请重启 CLI 服务,聊天数据库数据会在服务启动前迁移",confirmTitle:"确认切换数据目录",confirmMessage:"您即将切换聊天数据库目录。选择迁移时,现有聊天数据库数据将复制到新目录。",newPath:"新目录路径",defaultPath:"默认位置",confirmWarning:"重启应用后,聊天数据库数据会迁移到新位置,旧目录将保留为备份。",cliConfirmWarning:"重启 CLI 服务后,聊天数据库数据会迁移到新位置,旧目录将保留为备份。请确保服务进程有读写权限。",pathRequired:"请输入数据目录路径",installDirForbidden:"不能将数据目录放在应用安装目录下,应用更新时该目录会被清空",cancel:"取消",confirm:"确认切换",migrationQueuedTitle:"数据迁移已登记",migrationSuccessMessage:"应用需要重启以使更改生效。",cliMigrationSuccessMessage:"请停止当前 CLI 服务并重新启动,迁移会在服务启动前执行。重启完成后再重新打开页面查看新目录。",relaunchNow:"立即重启",acknowledge:"知道了",cleanupNoticeTitle:"已切换到新的数据目录",cleanupNoticeDescription:"为避免数据丢失,原目录仍作为备份保留。请确认聊天记录完整后,再前往存储管理清理旧数据。",cleanupOldPath:"原数据目录",cleanupLater:"稍后处理",cleanupGoToStorage:"前往存储管理",cleanupTitle:"待清理的旧数据",cleanupDescription:"迁移前的数据目录仍作为备份保留。确认新目录中的聊天记录完整后,可手动删除。",cleanupDeleteAction:"删除旧数据",cleanupDeleteConfirmTitle:"永久删除旧数据?",cleanupDeleteConfirmDescription:"此操作无法恢复。请先确认新目录中的聊天记录完整,再删除以下原数据目录。",cleanupDeleteConfirmAction:"永久删除",cleanupDeleteFailed:"旧数据删除失败"},openRootDir:"打开根目录",totalUsage:"总占用:",loading:"加载中...",files:"文件",notExist:"不存在",clear:"清理",open:"打开",cache:{databases:{name:"聊天记录数据库",description:"导入的聊天记录分析数据"},ai:{name:"AI 对话数据库",description:"AI 对话历史和配置文件"},statsCache:{name:"缓存数据",description:"聊天记录的统计缓存,清理后会自动重建"},logs:{name:"日志文件",description:"软件的运行日志,包含导入、AI、错误等日志"}}},xO={session:{title:"会话索引设置",description:"会话索引将聊天记录按时间间隔自动分割为对话段落,便于AI分析和浏览",defaultThreshold:"默认分割间隔",thresholdUnit:"分钟",thresholdHelp:"超过该时间间隔的消息将被分到新的会话段落",generating:"正在生成",batchTitle:"批量生成索引",totalSessions:"共 {count} 个聊天",generatedCount:"已生成 {count} 个",notGeneratedCount:"未生成 {count} 个",loadingStatus:"加载中...",batchGenerate:"生成未索引",batchRegenerate:"全部重新生成",batchRegenerateConfirmTitle:"确认重新生成",batchRegenerateConfirmMessage:"此操作将清空所有已生成的 AI 摘要,并重新生成全部会话索引。",batchRegenerateConfirmWarning:"已有的摘要内容将被覆盖,此操作不可撤销。",summaryStrategy:"摘要详细程度",summaryStrategyHelp:"影响 AI 生成摘要时的详细程度",summaryBrief:"简要",summaryStandard:"标准"},semanticIndex:{title:"语义索引",description:"用所选向量模型为聊天记录建立索引,启用后 AI 回答时可按语义检索相关历史片段作为依据。",vectorModel:"向量模型",selectModel:"选择向量模型",switchModel:"切换模型",noModelSelected:"未选择向量模型",modelModalTitle:"配置向量模型",modeLocal:"本地模型",modeApi:"API",recommended:"推荐",approxSize:"约 {mb} MB",modelDownloadSource:"模型下载源",downloadSourceOfficial:"Hugging Face 官方",downloadSourceMirror:"HF-Mirror 国内镜像",mirrorSourceHint:"HF-Mirror 是第三方公益镜像,适合中国大陆网络环境;模型文件将从 hf-mirror.com 下载。",localDownloadHint:"保存后自动下载模型,首次下载可能需要一些时间。",localRuntimeDownloadHint:"CLI Web 的本地模型运行组件约 370 MB;未预装时会在首次使用时自动安装。保存后还会下载所选模型。",apiTemplate:"服务模板",modelName:"模型名",apiKeySaved:"已保存,留空则不修改",apiKeyHint:"API Key 单独安全存储,配置文件只保存引用。",apiCostWarning:"API 模式可能产生服务商费用,请确认模型价格。",changeRebuildHint:"更换模型或 API 后,已启用对话需要重建索引。",modelDownloading:"正在下载模型,首次使用需要几分钟,请稍候…",runtimeInstalling:"正在安装本地模型运行组件,首次使用需要一些时间,请稍候…",modelError:"本地模型准备失败,建立索引时将重试。",searchMaxResults:{label:"单次检索片段数",hint:"AI 调用语义检索时默认返回的相关片段数(5-15)。AI 可按问题需要临时调高。"},overview:"索引概览",enabledCount:"已启用 {count} 个对话",coverage:"覆盖率 {percent}%",buildPending:"建立待处理索引",cleanup:"清理未使用索引",cleanupConfirm:"将删除已停用对话和旧模型遗留的索引数据。此操作不会删除聊天记录。",configFirst:"请先配置向量模型",selectConversations:"选择对话",enabledSessions:"已启用对话",state:{completed:"已完成",building:"建立中",pending:"待建立",needsRebuild:"需要重建",failed:"失败",paused:"已暂停"},action:{build:"建立索引",pause:"暂停",cancel:"取消",rebuild:"重建索引",remove:"移除"},session:{statusLabel:"状态",notEnabled:"未启用",coverageLabel:"覆盖率",progressLabel:"建立进度",enableHint:"启用后,AI 可以在回答此对话相关问题时检索历史聊天片段。",configFirst:"启用前需要先在 设置 > AI > 语义索引 配置向量模型。",enable:"启用索引",buildVsEnable:"启用索引:让此对话进入语义检索范围;建立索引:开始读取全部消息生成向量,可能消耗本地算力或 API 额度。",retry:"重试",continue:"继续"},picker:{title:"选择对话",all:"全部",group:"群聊",private:"私聊",searchPlaceholder:"按名称搜索",messages:"{count} 条消息",enabled:"已启用",selectedSummary:"已选择 {count} 个对话,约 {messages} 条消息",confirmRemoveTitle:"确认移除",confirmRemoveMessage:"这些对话的语义索引将被立即删除,不可恢复。"}}},AO={chatSettings:{title:"工具设置"},exportSettings:{title:"导出设置"},chatPreferences:{title:"对话偏好",enableAutoSkill:"AI 自主选择技能",enableAutoSkillDesc:"启用后,AI 会根据用户的问题自动匹配并激活合适的分析技能;关闭后仅在手动选择技能时生效",chartAutoMode:{title:"图表自动生成",description:"控制 AI 在没有手动选择绘图助手时使用图表的积极程度",explicit:"明确请求时",explicitHint:"只有你明确要求图表时,AI 才会生成图表。",suggest:"智能生成",suggestHint:"策略保守,仅在能明显帮助理解分析结果时生成图表。",aggressive:"积极生成",aggressiveHint:"AI 会更主动地在数据分析场景中生成图表。"}},maxMessages:{title:"发送条数限制",description:"每次提交给 AI 的最大消息数,数值越大 Token 消耗越多,分析也更准确(新手建议2000)"},searchContext:{title:"搜索上下文窗口",description:"搜索命中消息时自动携带前后的对话上下文,帮助 AI 理解消息背景。设为 0 则不携带上下文",before:"前",after:"后"},exportFormat:{title:"对话导出格式",description:"导出 AI 对话时使用的文件格式",txtLabel:"TXT"},sqlExportFormat:{title:"SQL Lab 导出格式",description:"导出 SQL 查询结果时使用的文件格式"}},PO={title:"关于 ChatLab",description:"本地化的聊天记录分析工具,通过 SQL 和 AI Agent 回顾你的社交记忆。",version:"版本",checkUpdate:"检查更新",checking:"检查中...",upToDate:"已是最新版本",newVersionAvailable:"发现新版本 {version}",webUpdateHint:"请在终端运行 clb update 后重启服务。",updateCheckFailed:"检查更新失败:{error}",unknown:"未知",privacy:{title:"隐私设置",analytics:"匿名使用统计",analyticsDesc:"开启后,软件会发送匿名安装标识、版本、系统、运行方式、语言、粗略地区,以及导入平台和主要功能使用情况;不会发送聊天内容、联系人、文件名、路径、模型名称或密钥"},developer:{title:"开发者选项",debugMode:"DEBUG 模式",debugModeDesc:"开启后,将显示调试面板和快捷调试工具,可用于查看数据库、运行测试工具,并记录更详细的调试日志。"}},MO={title:"聊天记录预处理",description:"在聊天记录发送给 AI 前进行预处理,节省 Token 并过滤噪音。原始数据不会被修改。",dataCleaning:"数据清洗",dataCleaningDesc:"自动清理 XML 卡片消息(如分享链接、小程序等),提取有效内容,大幅节省 Token。建议保持开启。",mergeConsecutive:"合并连续发言",mergeConsecutiveDesc:"同一人在短时间内的连续消息合并为一条",mergeWindow:"合并时间窗口(秒)",denoise:"智能去噪",denoiseDesc:"过滤纯语气词、纯表情、系统占位符(如 [图片])等无意义消息",desensitize:"数据脱敏",desensitizeDesc:"根据规则将敏感信息(手机号、邮箱、证件号等)替换为占位符",desensitizeBuiltin:"预置规则",desensitizeResetBuiltin:"恢复默认",desensitizeCustom:"自定义规则",desensitizeAddCustom:"添加自定义规则",desensitizeRuleName:"规则名称",desensitizeRulePattern:"正则表达式",desensitizeRuleReplacement:"替换文本",desensitizeRuleAdd:"添加",desensitizeRuleInvalidRegex:"正则表达式语法错误",desensitizeRuleNamePlaceholder:"例如:员工工号",desensitizeRulePatternPlaceholder:"例如:EMP-\\d+",desensitizeRuleReplacementPlaceholder:"替换文本,如 [工号]",anonymizeNames:"昵称匿名化",anonymizeNamesDesc:"用编号(U1、U2…)替代真实昵称发送给 AI,减少幻觉并节省 Token",blacklist:"黑名单关键词",blacklistDesc:"包含以下任一关键词的消息将被整条过滤",blacklistPlaceholder:"输入关键词后按回车添加",blacklistAdd:"添加"},TO={groups:{credentials:"密码与 Token",credentials_desc:"API Key、Bearer Token 等凭据",global_contact:"通用联系方式",global_contact_desc:"邮箱等跨地区联系方式",global_financial:"通用金融信息",global_financial_desc:"信用卡等金融编号",global_network:"通用网络信息",global_network_desc:"URL、IP 地址等网络标识",region_cn:"中国大陆",region_cn_desc:"中国大陆电话、证件和银行卡等规则",region_us:"美国",region_us_desc:"美国电话、证件等规则",region_jp:"日本",region_jp_desc:"日本电话、个人编号等规则",region_kr:"韩国",region_kr_desc:"韩国电话、身份证号等规则"},rules:{cn_phone:"中国手机号",cn_phone_desc:"1xx xxxx xxxx 格式的 11 位号码",cn_id_card:"中国身份证号",cn_id_card_desc:"18 位,末位可含 X",cn_bank_card:"中国银行卡号",cn_bank_card_desc:"16-19 位连续数字",cn_landline:"中国座机号",cn_landline_desc:"区号-号码,如 010-12345678",us_ssn:"美国社会安全号 (SSN)",us_ssn_desc:"XXX-XX-XXXX 格式",us_phone:"美国电话号码",us_phone_desc:"+1 (XXX) XXX-XXXX 格式",us_drivers_license:"美国驾照号",us_drivers_license_desc:"字母开头 + 7-8 位数字",jp_phone:"日本电话号码",jp_phone_desc:"0x0-XXXX-XXXX 格式",jp_my_number:"日本个人编号",jp_my_number_desc:"12 位数字(マイナンバー)",kr_phone:"韩国电话号码",kr_phone_desc:"01X-XXXX-XXXX 格式",kr_rrn:"韩国身份证号",kr_rrn_desc:"XXXXXX-XXXXXXX 格式(주민번호)",api_key_prefix:"API Key / Token(已知前缀)",api_key_prefix_desc:"sk-、ghp_、AKIA 等开头的长字符串",bearer_token:"Bearer Token",bearer_token_desc:"Bearer 后的授权令牌值",email:"邮箱地址",email_desc:"user{'@'}domain.com 标准格式",credit_card:"信用卡号",credit_card_desc:"Visa / MasterCard / AmEx 等卡号",ipv4:"IPv4 地址",ipv4_desc:"如 192.168.1.1",url:"URL 链接",url_desc:"http:// 或 https:// 开头的链接"}},IO={service:{title:"API 服务",enable:"启用 API 服务",enableDesc:"开启后,外部工具可通过 HTTP API 查询、导出和导入聊天数据。仅本机可访问 (127.0.0.1)",portInUseHint:"端口被占用,请在下方修改端口或关闭占用该端口的程序后重试"},status:{running:"运行中",stopped:"已停止",starting:"启动中...",portInUse:"端口被占用",error:"启动失败"},port:{title:"端口配置",label:"监听端口",desc:"API 服务监听的本地端口号(1024-65535)",edit:"修改",save:"保存",cancel:"取消"},token:{title:"访问令牌",label:"Bearer Token",desc:"所有 API 请求需要在 Authorization 头中携带此 Token",noToken:"尚未生成 Token,请先启用服务",regenerate:"重新生成"},dataSources:{title:"数据源",desc:"配置外部数据源 URL,ChatLab 将按设定间隔自动拉取并导入聊天数据。",empty:"暂无数据源",noSessions:"暂无导入会话,点击上方「管理导入会话」添加",disabled:"已暂停",every:"每",minutes:"分钟",lastSync:"上次同步",syncing:"同步中",messages:"条消息",addBtn:"添加数据源",form:{modalTitle:"添加数据源",name:"名称",namePlaceholder:"例如:我的聊天服务器",token:"访问令牌",tokenPlaceholder:"远程 API 的 Bearer Token",interval:"拉取间隔(分钟)",pullLimit:"每次拉取消息数",pullLimitPlaceholder:"默认 1000"},discovery:{baseUrl:"服务器地址",baseUrlPlaceholder:"示例:http://127.0.0.1:2333/api/v1",found:"发现 {count} 个会话",search:"搜索",searchPlaceholder:"按会话名称搜索",selectAll:"全选",deselectAll:"取消全选",selectByType:"会话类型",typeAll:"全部",typePrivate:"私聊",typeGroup:"群聊",loadMore:"加载更多",subscribe:"订阅 {count} 个会话",messages:"条消息",error:"连接远程服务器失败",connectionCheckFailed:"无法连接到远程服务器,请检查地址和令牌是否正确"},edit:{title:"修改配置",save:"保存",cancel:"取消",editSource:"修改配置",manageSessions:"管理订阅",subscribed:"已订阅"},deleteConfirm:{title:"删除数据源",message:"确认删除数据源「{name}」?该数据源下的所有导入配置将被移除。已导入的本地对话不会被删除。"},deleteSessionConfirm:{title:"删除订阅",message:"确认删除订阅「{name}」?",keepData:"仅删除订阅",deleteData:"同时删除导入的聊天"}},usage:{title:"使用说明",desc:"启用服务后,外部工具可通过 API 查询数据,或向 ChatLab 推送聊天记录。所有请求需携带 Bearer Token 认证。",authHint:"请求头示例:",docLink:"查看完整 API 文档"}},DO={overview:{title:"MCP 概述",description:"MCP 让 AI 助手直接查询你的聊天记录。支持会话发现、关键词搜索、成员统计、时间分布等操作。",toolCount:"{count} 个工具",resourceCount:"{count} 个资源",installHint:"安装 chatlab-cli 后,在 AI 客户端中添加以下配置即可使用:"},clients:{other:"通用"},config:{title:"客户端配置",clientLabel:"MCP 客户端",copy:"复制",copied:"已复制",claudeHint:"将此配置添加到 ClaudeCode 的 MCP 配置中。",codexHint:"将此 TOML 配置添加到 ~/.codex/config.toml 文件中。",openclawHint:"将此配置添加到项目的 openclaw.json 文件中。",otherHint:"将此 JSON 配置添加到你的 MCP 客户端配置文件中。"},tips:{title:"使用提示",dataDir:"MCP 服务器读取 ~/.chatlab/ 目录下的聊天数据,与桌面应用共享同一份数据。",readOnly:"所有操作均为只读,不会修改你的聊天记录。",nodeRequired:"npx 和 CLI 方式需要 Node.js 22.19 或更高版本。",docs:"详细文档请访问 docs.chatlab.fun。"}},EO={lock:{title:"应用锁",desc:"使用 4 位数字密码保护 ChatLab",statusOn:"已开启",statusOff:"未开启",disableBtn:"关闭应用锁",disableConfirm:"确定关闭应用锁?关闭后将删除当前密码。",manualLock:"立即锁定"},password:{titleSetup:"设置 4 位密码并开启应用锁",titleChange:"修改密码",labelOld:"旧密码",labelNew:"输入新密码",labelConfirm:"确认新密码",btnEnable:"开启",errorInvalidPin:"密码必须是 4 位数字",errorMismatch:"两次输入的密码不一致",errorSameAsOld:"新密码不能与旧密码相同",errorFailed:"操作失败,请重试"},autoLock:{title:"自动锁定",idleLabel:"闲置超时自动锁定",startupLabel:"启动时要求解锁"},lockScreen:{titleLocked:"ChatLab 已锁定",placeholderPassword:"输入 4 位数字密码",btnUnlock:"解锁",verifying:"验证中...",errorService:"解锁失败,请重试",errorWrongPassword:"密码错误",errorTooManyAttempts:"尝试次数过多,请在 {seconds} 秒后重试"}},$O={title:yO,tabs:bO,basic:wO,navigation:_O,defaultModel:kO,aiConfig:CO,storage:SO,ai:xO,aiPrompt:AO,about:PO,aiPreprocess:MO,desensitize:TO,api:IO,mcp:DO,security:EO},RO="探索新的聊天记忆",LO={file:"文件导入",api:"API 导入",cli:"CLI 导入",autoSyncTitle:"自动同步",autoSyncDescription:"由 ChatLab 定时从外部数据源拉取新增聊天记录。",autoSyncButton:"配置自动同步",apiPushTitle:"API 推送",apiPushDescription:"让第三方工具、插件或脚本通过本地 API 主动写入。",apiPushButton:"配置 API 服务",agentImportTitle:"使用 AI Agent 导入",agentImportDescription:"安装官方Skill,使用Skill自动导入聊天记录。",manualCliTitle:"手动使用 CLI",manualCliDescription:"适合终端操作、批处理脚本和可重复的自动化流程。",copyCommand:"复制命令",viewDocs:"查看文档"},OO={viewExample:"查看示例 Demo",downloading:"正在下载示例数据...",importing:"正在导入示例数据...",failed:"示例数据加载失败,请检查网络连接后重试"},NO={title:"数据库需要升级",description:"检测到 {count} 个数据库需要升级以支持新功能。",note:"升级过程通常只需几秒钟,不会丢失任何数据。",upgradeContent:"本次升级内容:",upgradeNow:"立即升级",upgrading:"正在升级...",failed:"迁移失败",partialFailed:"部分数据库升级失败",errorHint:"这通常是因为数据库文件损坏。建议在侧边栏中删除失败的会话,然后重新导入。",close:"关闭",retry:"重试"},FO={title:"选择要导入的聊天",scanning:"正在扫描聊天列表...",scanFailed:"扫描失败",retry:"重试",selectAll:"全选",chatCount:"共 {count} 个聊天",selected:"已选 {count} 个",messageCount:"{count} 条消息",memberCount:"{count} 位成员",empty:"空会话",import:"导入 ({count})",noChats:"未发现任何聊天"},qO={title:"选择聊天记录格式",hint:"无法自动识别此文件的格式,请手动选择对应的聊天记录格式。",manualSelect:"手动选择格式",confirm:"使用此格式导入"},BO={export:"新手引导"},HO={website:"官网",terms:"使用条款"},VO={title:"版本日志",subtitle:"查看所有版本更新内容",latest:"最新版本",current:"当前版本",total:"共 {count} 个版本",close:"关闭",disableAutoOpen:"更新后不再自动弹出",loadError:"加载版本日志失败",retry:"重试",types:{feat:"新功能",fix:"问题修复",refactor:"重构优化",docs:"文档更新",chore:"其他优化",style:"样式优化",ci:"CI/构建"}},zO={tagline:RO,tabs:LO,import:{dropHint:"松开鼠标导入文件",clickHint:"点击选择或拖拽聊天记录导入",multipleHint:"支持同时选择或拖拽多个文件",selectFiles:"选择聊天记录文件",selectFolder:"选择导出文件夹",importFolder:"导入文件夹",chatRecords:"聊天记录",allFiles:"所有文件",progress:{detecting:"正在检测格式...",reading:"正在读取文件...",parsing:"正在解析消息...",saving:"正在写入数据库...",indexing:"正在构建搜索索引...",done:"导入完成",error:"导入中断"},processed:"已处理 {count} 条消息",viewLog:"查看导入日志",cannotReadPath:"无法读取文件路径",errors:{no_file_selected:"未选择文件",import_failed:"导入失败",import_in_progress:"已有导入任务正在进行,请稍后重试",unrecognized_format:"无法识别的文件格式",no_messages:"未解析到任何消息,请检查文件格式是否正确",no_chat_selected:"未选择聊天",archive_single_file_required:"压缩包需要单独选择并导入",archive_unsupported:"暂不支持此压缩包格式",archive_encrypted:"不支持加密压缩包",archive_corrupt:"压缩包已损坏或内容不完整",archive_unsafe_path:"压缩包包含不安全的文件路径",archive_limit_exceeded:"压缩包超过安全处理限制",google_chat_structure_not_found:"未找到 Google Chat 导出数据",google_chat_conversation_incomplete:"Google Chat 会话文件不完整",import_source_not_found:"导入源已不存在,请重新选择压缩包",import_source_expired:"导入源已过期,请重新选择压缩包",actionHint:"你还可以尝试下方手动匹配或查看日志:"},diagnostics:{format:"检测格式:",received:"收到消息:",written:" / 写入:",skipped:" / 跳过:"},outcome:{created:"已创建新会话",ambiguous:"发现多个可能的已有会话,未自动合并,已创建新会话",incremental:"已增量导入 {newCount} 条消息,跳过 {duplicateCount} 条重复消息",unchanged:"内容已导入,没有新增消息"},batch:{importing:"正在批量导入",progressCount:"第 {current} 个 / 共 {total} 个",cancel:"取消导入",waiting:"等待中",skipped:"已跳过",success:"导入成功",created:"已创建新会话",ambiguous:"候选会话不唯一,已创建新会话",incremental:"新增 {newCount} 条,跳过 {duplicateCount} 条重复消息",unchanged:"内容已导入,无新增消息",completed:"批量导入完成",summary:"成功 {success} 个,失败 {failed} 个,跳过 {cancelled} 个",view:"查看"},options:{mergeImport:"合并导入",mergeImportHint:"勾选后,多个文件将合并为一个聊天记录"},merge:{importing:"正在合并",parsing:"正在解析文件...",merging:"正在合并消息...",completed:"合并完成",completedHint:"{count} 个文件已合并",messageCount:"{count} 条消息",failed:"合并失败"}},demo:OO,migration:NO,chatSelector:FO,formatSelector:qO,quickStart:BO,footer:HO,changelog:VO},jO={loading:"加载分析数据...",loadError:"无法加载会话数据"},WO={loading:"加载分析数据...",loadError:"无法加载会话数据"},UO={overview:"总览",insights:"洞察",ranking:"榜单",aiChat:"AI对话",memory:"记忆",lab:"实验室",debug:"Debug"},GO={sqlTables:"SQL 表格",basicTools:"基础工具",tableBrowser:{chatDb:"聊天记录 DB",aiDb:"AI 对话 DB",rowCount:"共 {count} 行",page:"第 {current} / {total} 页",refresh:"刷新",noData:"暂无数据",editRow:"编辑行",deleteRow:"删除行",confirmDelete:"确认删除这行数据?",allConversations:"全部对话",copyCell:"复制选中项",copyRow:"复制整行 (JSON)",clearDebugContext:"清除 Debug 上下文",confirmClearDebug:"确认清除所有消息的 debug_context 数据?此操作不可撤销。"}},YO={tabs:{records:"聊天记忆"}},KO={viewChatRecord:"查看聊天记录",semanticIndex:"语义索引",incrementalImport:"增量导入",memberManagement:"成员管理",more:"更多"},XO={title:"追加聊天记录",description:"选择要追加到「{name}」的聊天记录文件,系统会自动去重。",homeAutoImportHint:"现在首页已支持自动增量导入,有新的聊天记录时,直接拖拽新的聊天记录到首页即可。",dropHint:"点击选择或拖拽文件到此处",analyzing:"正在分析文件...",totalInFile:"文件消息数",newMessages:"新增消息",duplicates:"重复消息",noNewMessages:"文件中没有新消息,所有消息都已存在",importing:"正在导入...",import:"确认导入 {count} 条消息",success:"导入成功",successDetail:"成功追加 {count} 条新消息",failed:"导入失败"},JO={insights:{typeAnalysis:"类型",timeAnalysis:"时间",topic:"话题",relationship:"关系",journey:"历程",languagePreference:"语言偏好"},ranking:{overall:"总榜单",interaction:"互动排行",proximity:"邻近度排行",keyword:"关键词"},quotes:{hotRepeat:"最火复读",catchphrase:"口头禅"},member:{nicknameHistory:"昵称变更"}},QO={messageTypeDistribution:"消息类型分布",memberDistribution:"成员消息占比",memberRanking:"成员排行",others:"其他人",memberComparison:"双方消息占比",statCards:{dailyAvgMessages:"日均消息",messagesCount:"{count} 条",daysCount:"共 {count} 天",imageMessages:"图片消息",imagesCount:"{count} 张",peakHour:"最活跃时段:",mostActiveWeekday:"最活跃星期",messagesOnDay:"{count} 条消息",weekendActivity:"周末活跃度",weekendRatio:"周末消息占比",mostActiveDate:"最活跃日期",consecutiveStreak:"连续打卡",daysStreak:"{count} 天",longestStreak:"最长连续活跃",activityRate:"活跃率",activeDaysRatio:"有消息的天数占比",lateNightChat:"深夜聊天",lateNightRatio:"占总消息 {ratio}%"},dailyTrend:{title:"每日消息趋势"},identity:{privateChat:"私聊",groupChat:"群聊",totalMessages:"消息总数",durationDays:"跨度天数",activeDays:"活跃天数",dailyAvgMessages:"日均消息"},tools:"常用工具"},ZO={miniMode:"迷你模式",exitMini:"退出迷你模式"},eN={title:"导出聊天记录",selectOutputDir:"选择保存目录",format:"格式"},tN={timeRange:"时间范围",allTime:"全部",today:"今天",lastWeek:"近7天",lastMonth:"近1个月",last3Months:"近3个月",lastYear:"近1年",customTime:"自定义",exportSuccess:"导出成功",exportFailed:"导出失败",exportPreparing:"正在准备导出..."},nN={groupChat:jO,privateChat:WO,tabs:UO,debug:GO,memory:YO,tooltip:KO,incremental:XO,subTabs:JO,overview:QO,toolsPanel:ZO,messageExport:eN,filter:tN},aN={searchPlaceholder:"搜索对话名称",searchResult:"找到 {count} / {total} 个",ownerIssues:"{count} 个会话尚未设置“我是谁”",ownerStatus:{missing:"未设置",unresolved:"需确认"},noSearchResult:"未找到匹配的聊天记录",selectAll:"全选",shiftClickHint:"按住 Shift 点击可范围多选",selected:"已选 {count} 个",empty:"暂无聊天记录",delete:"删除选中",confirmTitle:"确认删除",confirmMessage:"确定要删除选中的 {count} 个聊天记录吗?此操作不可撤销。",deleting:"正在删除...",columns:{name:"名称",platform:"平台",owner:"我是谁",messages:"消息数",summaries:"AI摘要",aiChats:"AI 对话",importedAt:"导入时间"},clickToEdit:"点击编辑名称",merge:"合并选中",mergeHint:"选择 2 个以上同聊天类型的聊天记录才能合并",mergeConfirmTitle:"合并聊天记录",mergeConfirmMessage:"将合并选中的 {count} 个聊天记录,生成一条新的合并记录。",deleteOriginalsLabel:"合并后删除原聊天记录",mergeRiskWarning:"强提醒:删除后不可恢复,且由于跨平台上下文差异,聊天语义可能出现错位或混乱。请确认你已备份原始数据并理解风险。",mergeSteps:{exporting:"正在导出聊天记录...",parsing:"正在解析文件...",checking:"正在检测冲突...",merging:"正在合并数据...",cleaning:"正在清理临时文件..."},mergeSuccess:"成功合并 {count} 个聊天记录",mergeError:"合并失败:{error}",mergedSuffix:"合并"},rN={batchManage:aN},oN={name:"DeepSeek"},sN={name:"通义千问"},iN={name:"Gemini"},lN={name:"MiniMax"},cN={name:"GLM"},uN={name:"Kimi"},dN={name:"豆包"},fN={name:"硅基流动"},pN={name:"Groq"},hN={name:"OpenRouter"},mN={name:"xAI"},gN={deepseek:oN,qwen:sN,gemini:iN,minimax:lN,glm:cN,kimi:uN,doubao:dN,siliconflow:fN,groq:pN,openrouter:hN,xai:mN,"openai-compatible":{name:"第三方服务"}},vN={chatExplorer:"对话式探索",sqlLab:"SQL实验室"},yN={scrollToBottom:"返回底部",history:{loadEarlier:"加载更早对话"},input:{placeholderWithSlash:"输入你的问题,或输入 / 选择技能、输入 {'@'} 选择成员...",placeholderWithActiveSkill:"已选择 /{name},请输入具体问题...",slashHint:"输入 / 选择技能",useSkill:"选择技能",mentionHint:"输入 {'@'} 选择成员",mentionEmpty:"没有匹配的成员",mentionEmptyHint:"可按昵称、别名或账号搜索",slashEmpty:"没有匹配的技能",slashEmptyHint:"打开技能管理导入内置技能,或创建一个自定义技能",manageSkills:"管理技能",previewTagsLabel:"标签",previewToolsLabel:"工具",previewUnavailable:"暂无可预览的技能提示词",quickAsk:"快速提问",editQuickAsk:"编辑快速提问",send:"发送",needMoreThanSkill:"仅选择技能还不能发送,请继续输入具体问题",needQuestion:"请输入问题后再发送"},fork:{success:"已复刻对话",failed:"复刻对话失败"},backgroundTask:{runningShort:"进行中",runningTitle:"AI 正在后台推理",runningDescription:"上一条问题仍在推理,请等待完成或先停止。",blockedAction:"当前回答仍在生成中,请先等待完成或手动停止。",return:"返回查看"},message:{copy:{tooltip:"复制 Markdown",success:"Markdown 已复制到剪贴板",failed:"复制 Markdown 失败"},process:{label:"执行过程",processing:"处理中",processed:"已处理",duration:"耗时 {duration}",working:"正在处理",planning:"正在规划",failed:"未完成",step:"{count} 步",steps:"{count} 步"},toolResult:{view:"查看结果",title:"发送给 AI 的工具结果",copy:"复制结果",copySuccess:"工具结果已复制",copyFailed:"复制工具结果失败",displayTruncated:"此历史结果仅保存了截断版本;当前轮 AI 可能看到了更完整的内容。"},edit:{tooltip:"编辑并重新生成",submit:"发送",overwriteSubsequent:"覆盖后续所有对话"},fork:{tooltip:"从此处复刻对话"},chart:{expand:"打开大图",empty:"暂无数据",rows:"{count} 行数据",truncated:"已截断"},generating:"正在生成回复...",summary:{label:"上下文摘要",info:"以上对话已被压缩为摘要以节省上下文空间"},plan:{label:"分析计划",evidenceNeeded:"所需证据",suggestedTools:"建议工具",successCriteria:"完成标准",noTools:"无"},think:{labels:{think:"已思考",analysis:"分析",reasoning:"推理",reflection:"反思",planValidation:"生成计划",other:"思考({tag})"},loading:"思考中",duration:"耗时 {seconds}s"},toolParams:{keywords:"关键词",time:"时间",getMessages:"获取 {count} 条消息",limit:"限制 {count} 条",contextWithMessages:"{msgCount} 条消息的前后各 {contextSize} 条上下文",context:"前后各 {size} 条上下文",topMembers:"前 {count} 名成员",search:"搜索",getMemberList:"获取成员列表",memberId:"成员ID",timeStats:{hourly:"按小时",weekday:"按星期",daily:"按日期"}}},thinking:{processingResult:"处理结果中",called:"已调用:",analyzing:"正在分析问题...",compressing:"正在压缩上下文...",toolProgress:{checking_capabilities:"正在检查检索能力",semantic_search:"正在进行语义检索",keyword_search:"正在进行关键词检索",assembling_evidence:"正在整理证据"}},statusBar:{model:{notConfigured:"AI 未配置"},agent:{label:"Agent",contextTokens:"上下文",phase:{compressing:"压缩上下文",preparing:"准备中",thinking:"思考中",tool_running:"调用工具",responding:"生成中",completed:"已完成",aborted:"已停止",error:"错误"},phaseShort:{compressing:"压缩",preparing:"准备",thinking:"思考",tool_running:"工具",responding:"生成",completed:"完成",aborted:"停止",error:"错误"}},thinking:{title:"思考强度",tooltip:"设置模型的思考强度",level:{default:"默认",off:"关闭",minimal:"极低",low:"低",medium:"中",high:"高",xhigh:"最高",auto:"自动"}},tokenUsageTitle:"累计 Token 使用量",cacheHit:"缓存命中",export:{label:"导出",title:"导出当前对话"},log:{label:"日志",title:"打开当前 AI 日志文件",openFailed:"打开日志失败",openFailedDesc:"请稍后重试"}},conversation:{newChat:"新对话",newConversation:"新建对话",empty:"暂无历史记录",startNew:"开始新对话",titlePlaceholder:"输入标题...",group:{last7Days:"最近 7 天",last30Days:"最近 30 天"},rename:"重命名",copyId:"复制 ID",delete:"删除",export:{createdAt:"创建时间",user:"用户",assistant:"AI 助手",noMessages:"对话没有消息"}},error:{title:"处理失败",detail:"错误详情",viewDetail:"查看详情",requestUrl:"请求路径",statusCode:"状态码",responseBody:"响应内容",responseHeaders:"响应头",requestBody:"请求体",name:"错误名称",message:"错误信息",stack:"堆栈信息",cause:"错误原因",provider:"服务商",copyAll:"复制全部",copied:"已复制到剪贴板",unknown:"未知错误"},dataSource:{title:"数据源",keywords:"关键词:",empty:"暂无数据",emptyHint:"发送问题后,相关记录会显示在这里",totalRecords:"共 {count} 条记录",loadMore:"加载更多"},evidence:{title:"依据证据",query:"问题",criteria:"判定标准",empty:"未找到明确可计入的证据",totalSources:"共 {count} 条来源",mode:{auto:"自动",hybrid:"语义 + 关键词",semantic:"语义检索",keyword:"关键词检索"},group:{included:"计入证据",excluded:"不计入",uncertain:"不确定"},warning:{criteria_missing:"未提供判定标准,分组结果较为保守",keywords_missing_for_hybrid:"未提供关键词,已退化为纯语义检索",keywords_required_for_keyword_mode:"关键词模式需要提供关键词",semantic_unavailable:"语义索引不可用,已改用关键词检索",keyword_unavailable:"关键词检索不可用",semantic_partial:"语义检索结果可能不完整"}}},bN={editor:{errorEmptySQL:"请输入 SQL 语句",placeholder:"输入 SQL 查询语句...",tip:"提示:双击左侧列名可插入到 SQL",history:"历史",generateAndRun:"生成并执行",switchToSQLMode:"切换为 SQL 输入模式",switchToPromptMode:"切换为 Prompt 输入模式",run:"运行"},schema:{tables:"数据表",doubleClickToInsert:"双击插入到 SQL",primaryKey:"主键"},result:{queryError:"查询错误",rows:"{count} 行",readableTime:"时间戳转日期",viewChat:"查看聊天记录",summarize:"总结一下",pageSize:"每页",emptyResult:"查询结果为空",initialState:"输入 SQL 语句并运行查看结果",initialHint:"仅支持只读查询(SELECT / WITH),建议添加 LIMIT 以提升性能",summaryTitle:"AI 结果总结",analyzing:"AI 正在分析结果...",errorSummary:"总结失败"},generate:{placeholder:"例如:查找发言最多的前 10 个成员、统计每天的消息数量、找出包含「买房」关键词的消息...",errorEmptyPrompt:"请输入查询需求",errorGenerate:"AI 生成失败",errorTokenLimit:"模型输出达到 token 上限,未能生成完整回复(可能思考消耗了过多 token)",aiOutput:"AI 输出",thinking:"思考中…",thinkingProcess:"思考过程",waitingAI:"等待 AI 响应...",defaultPromptPrivate:"请统计最近1年私聊中双方各自的:消息总数、消息占比、活跃天数、日均消息数(按活跃天计算)、首次发言时间、最近发言时间;按消息总数降序展示。",defaultPromptGroup:"请统计最近1年群聊中各成员的:消息总数、消息占比、活跃天数、日均消息数(按活跃天计算)、文本消息占比;显示成员名称并按消息总数降序,返回前20名。"},history:{title:"AI 生成历史",execute:"执行",empty:"暂无历史记录",justNow:"刚刚",minutesAgo:"{count} 分钟前",hoursAgo:"{count} 小时前",today:"今天"}},wN={selector:{title:"选择一个助手开始对话",heroTitlePrefix:"使用",heroTitleSuffix:"开始对话",subtitle:"每个助手擅长不同类型的分析任务,选择最适合你需求的助手",noAssistants:"当前场景暂无可用助手",manage:"管理助手",addNew:"新增助手"},config:{viewTitle:"查看配置",createTitle:"新建助手",editTitle:"助手配置",betaWarning:"当前处于测试阶段,配置逻辑后续可能调整,请备份好提示词和相关配置。",tabs:{basic:"基础配置",tools:"工具管理"},name:"名称",systemPrompt:"系统提示词",chatType:"适用聊天类型",chatTypeAll:"全部",chatTypeGroup:"群聊",chatTypePrivate:"私聊",locale:"适用语言",localeHint:"不选 = 全语言",presetQuestions:"预设问题",addQuestion:"添加新问题...",coreTools:"核心工具",coreToolsHint:"基础数据获取工具,始终启用,不可关闭",analysisTools:"分析工具",analysisToolsHint:"按需开启的分析能力,勾选后才会对 AI 可用",selectAll:"全选",deselectAll:"全不选",resetDefault:"恢复默认",create:"创建"},market:{title:"助手管理",tabs:{local:"本地助手",market:"助手市场"},localHint:"管理已导入的助手,可配置或删除",marketHint:"浏览助手市场,导入后即可使用和自由编辑",default:"默认",reimport:"重新导入",imported:"已导入",import:"导入",importing:"导入中...",importSuccess:"导入成功",importFailed:"导入失败",viewConfig:"查看配置",duplicate:"复制",addAssistant:"新增助手",noLocal:"暂无已导入的助手",noCatalog:"暂无可用助手,请检查网络连接",loading:"加载中...",loadFailed:"加载失败,请检查网络连接",retry:"重试"},fallbackName:"助手",duplicateSuffix:"(副本)",upgrade:{title:"默认助手有新版本",message:"当前默认助手基于旧版模板,并且包含你的自定义内容。ChatLab 会先将它保存为“{backupName}”,再切换到最新版本。",backupName:"{name}(旧版备份)",skipHint:"跳过后,当前模板版本将不再提醒。",skip:"跳过",skipFailed:"跳过失败",confirm:"备份并升级",success:"默认助手已升级",successDescription:"旧配置已保存为“{name}”",failed:"升级失败"},toast:{loadFailed:"加载失败",createSuccess:"创建成功",createFailed:"创建失败",saveSuccess:"保存成功",saveFailed:"保存失败",resetSuccess:"已恢复默认",resetFailed:"恢复失败",unknownError:"未知错误"},builtinToolDesc:{get_chat_overview:"获取聊天概览信息",search_messages:"搜索聊天消息",deep_search_messages:"深度搜索聊天消息",get_recent_messages:"获取最近消息",get_message_context:"获取消息上下文",get_conversation_between:"获取两人对话",get_members:"获取成员列表",get_schema:"查看数据表结构",get_member_stats:"获取成员统计",get_member_name_history:"获取成员改名历史",get_time_stats:"获取时间统计",get_segment_messages:"获取段落消息",get_segment_summaries:"获取段落摘要",message_type_breakdown:"消息类型分布",peak_chat_hours_by_member:"成员活跃时段",member_activity_trend:"成员活跃趋势",silent_members:"沉默成员检测",reply_interaction_ranking:"回复互动排行",mutual_interaction_pairs:"互动好友配对",member_message_length_stats:"消息长度统计",unanswered_messages:"未回复消息",daily_active_members:"每日活跃人数趋势",conversation_initiator_stats:"话题发起者统计",activity_heatmap:"活跃度热力图",response_time_analysis:"响应时间分析",keyword_frequency:"高频词统计",render_chart:"生成动态图表",semantic_search_current_chat:"检索聊天历史"}},_N={config:{createTitle:"新建技能",editTitle:"技能配置",chatScopeAll:"全部",chatScopeGroup:"群聊",chatScopePrivate:"私聊",rawEditorHint:"直接编辑完整的技能 Markdown 文件(含 YAML frontmatter)",create:"创建",save:"保存"},market:{title:"技能管理",tabs:{local:"本地技能",market:"技能市场"},localHint:"管理已导入的技能,可配置或删除",marketHint:"浏览技能市场,导入后即可使用和自由编辑",reimport:"重新导入",imported:"已导入",import:"导入",importing:"导入中...",importSuccess:"导入成功",importFailed:"导入失败",noLocal:"暂无已导入的技能",noCatalog:"暂无可用技能,请检查网络连接",addSkill:"新建自定义技能",loading:"加载中...",loadFailed:"加载失败,请检查网络连接",retry:"重试"},active:{label:"主动调用技能:{name}"}},kN={toolTest:{coreTools:"核心工具",analysisTools:"分析工具",parameters:"参数",arrayPlaceholder:"多个值用逗号分隔",execute:"执行",cancel:"取消",elapsed:"耗时 {ms}ms",result:"执行结果",truncated:"结果过大,已截断显示。建议减小 limit 参数以获取完整数据。"}},CN={tab:vN,chat:yN,sqlLab:bN,assistant:wN,skill:_N,lab:kN},SN={loading:"正在分析词频...",stats:{wordsLabel:"总词数",clickHint:"提示:点击词云可查看相关消息"},config:{maxWords:"显示词数",sizeScale:"字体大小",userFilter:"用户筛选",posFilter:"词性过滤",enableStopwords:"过滤停用词",dict:"分词词库"},size:{small:"小",medium:"中",large:"大",xlarge:"特大"},posFilter:{all:"全部词性",meaningful:"有意义",custom:"自定义",customHint:"自定义词性",selectMeaningful:"有意义",selectAll:"全选",clearAll:"清空"},empty:{title:"暂无词云数据",description:"当前筛选条件下没有足够的文本消息用于生成词云"},dict:{zhCN:"简体中文",zhTW:"繁体中文",download:"下载词库","download_zh-CN":"下载简体词库","download_zh-TW":"下载繁体词库",needDownload:"词云已使用内置分词结果展示。下载中文词库可提升分词准确度。",downloadHint:"~8MB",downloadSuccess:"词库下载成功",downloadFailed:"词库下载失败",promptTitle:"繁体中文词库",promptDescription:"检测到您使用繁体中文,词云分析需要繁体词库才能获得最佳效果。是否立即下载?(约 8MB)",promptDownload:"立即下载",promptLater:"稍后再说"}},xN={title:"关键词排行",description:"分析群聊关键词使用排行,这里可以自定义多种榜单",countTemplate:"共 {count} 位成员",templateLabel:"模板:",newTemplate:"+ 新建",searchPlaceholder:"输入并搜索",clear:"清空",templateHint:"* 右键模板可编辑或删除",keyword:"关键词",ranking:"排行榜",multiColorMode:"多色模式",times:"{count}次",timesWithPercent:"次 ({percent}%)",loading:"正在分析数据...",empty:"暂无数据,请尝试添加关键词或切换模板",contextMenu:{edit:"编辑",delete:"删除"},modal:{createTitle:"创建模板",editTitle:"编辑模板",templateName:"模板名称",templateNamePlaceholder:"如:正能量",keywords:"关键词",keywordPlaceholder:"输入后回车添加",update:"更新"},templates:{laugh:{name:"含笑量",keywords:"哈哈,xswl,lol,笑死,233",description:"统计群内的快乐指数"},sad:{name:"沮丧量",keywords:"想死,难受,哭了,崩溃,裂开,无语,累了",description:"统计群内的负面情绪"},praise:{name:"捧哏",keywords:"牛逼,666,厉害,强,nb,大佬,羡慕,好强",description:"统计群内最会夸人的成员"},slacker:{name:"摸鱼",keywords:"摸鱼,下班,饿了,困了,不想上班,什么时候下班",description:"统计群内最想下班的打工人"},gossip:{name:"吃瓜",keywords:"吃瓜,细说,真的假的,展开说说,尊嘟假嘟,卧槽,离谱",description:"统计群内最爱吃瓜的成员"},polite:{name:"礼貌",keywords:"谢谢,麻烦,收到,好的,辛苦,打扰,请教",description:"统计群内最客气的成员"},curious:{name:"疑问",keywords:"为什么,啥,怎么,不懂,求教",description:"统计群内问题最多的成员"}}},AN={title:"最火复读内容",loading:"正在加载复读数据...",description:"单次复读参与人数最多的内容",countTemplate:"共 {count} 条热门复读",people:"{count}人",times:"{count} 次",viewChat:"查看聊天记录",empty:"暂无复读数据"},PN={heroPrefix:"共分析了",heroMiddle:"条消息,",heroMiddleSecond:"产生了",heroSuffix:"个不同词汇",topTopicsPrefix:"你们最爱聊:",hotTopic:"热门话题",hotTopicDesc:"出现了 {count} 次",richness:"词汇丰富度",richnessValue:"{value}%",richnessDesc:"不重复词 {unique} / 总词数 {total}",chatStyle:"聊天风格",styleEncyclopedia:"百科全书型",styleEncyclopediaDesc:"名词占比高,爱聊人、地、事",styleAction:"行动派",styleActionDesc:"动词占比高,爱讨论做什么",styleExpressive:"表达派",styleExpressiveDesc:"形容词占比高,善于修饰表达",styleBalanced:"均衡型",styleBalancedDesc:"聊天内容多元,各类话题均衡",expressionStyle:"表达风格",expressionCasual:"简洁口语",expressionCasualDesc:"用词简短,轻松随意",expressionFormal:"正式书面",expressionFormalDesc:"用词考究,表达严谨",expressionMixed:"混合风格",expressionMixedDesc:"口语与书面兼顾",watermark:"话题画像 · Topic Profile",sharedTopics:"共同话题"},MN={title:"群成员口头禅",description:"看看每位成员最有代表性的重复短句",memberTitle:"{name}的口头禅",memberDescription:"按出现次数查看这位成员最常说的话",loading:"正在分析口头禅数据...",times:"{count}次",memberCount:"共 {count} 位成员",phraseCount:"共 {count} 条口头禅",viewChat:"查看相关消息",empty:{title:"暂无口头禅数据"}},TN={loading:"正在分析语言偏好...",empty:"暂无足够的文字消息进行语言分析",card:{diversityTitle:"词汇深度",diversityDesc:"不重复词汇占比",styleTitle:"聊天气质",styleDesc:"基于词性分布推导的表达风格",punctTitle:"标点性格",punctDesc:"最常用的标点风格",watermark:"语言偏好 · Language Preference",radarFactual:"事实性",radarActive:"行动感",radarDescriptive:"描述欲",radarAffable:"亲和力",radarIntense:"程度感",radarNoun:"名词",radarVerb:"动词",radarAdj:"形容词",radarModal:"语气词",radarAdv:"副词",topCatchphrases:"热门口头禅",languageProfiles:"语言画像"},catchphrasePK:{title:"口头禅 PK",sharedCount:"{count} 个共同口头禅",hint:"提示:点击可查看相关消息,粉框标记为共同口头禅"},pos:{title:"词性图谱",styleEncyclopedia:"百科全书派",styleAction:"行动派",styleExpressive:"感性派",styleBalanced:"均衡派"},modal:{title:"语气词画像",toneSoft:"软萌亲和",toneCurious:"好奇探索",toneCasual:"随和建议",toneCalm:"沉稳内敛",toneMixed:"多元风格",empty:"暂无语气词数据"},punctuation:{title:"标点性格",none:"无标点",personalityDeep:"深沉文学型",personalityPassionate:"情绪饱满型",personalityCurious:"好奇宝宝型",personalityCheerful:"心情愉悦型",personalityFreeflow:"意识流型",personalityPrecise:"严谨规范型",empty:"暂无标点数据"}},IN={wordcloud:SN,keywords:xN,hotRepeat:AN,topicProfile:PN,catchphrase:MN,languagePreference:TN},DN={title:"你是谁?",subtitle:"选择你在这个对话中的身份",description:"设置后你的消息会显示在聊天记录查看器右侧,AI 对话也能识别你的身份,分析更准确。同平台的其他对话会自动套用。",searchPlaceholder:"搜索成员",noMatch:"没有找到匹配的成员",empty:"暂无成员数据",loadError:"成员数据加载失败,请重试",later:"稍后",notInConversation:"当前对话中没有我",save:"保存",clear:"清除当前选择",saved:"已设置你的身份",appliedToOthers:"已自动应用到 {count} 个同平台会话",saveFailed:"设置身份失败",currentOwner:"我是:{name}",choose:"选择我是谁",change:"修改",helper:"设置后 AI 对话能识别你的身份,分析更准确"},EN={title:"成员管理",description:"共 {count} 位成员,可为成员添加别名备注或移除成员",searchPlaceholder:"搜索群昵称、账号名称、ID 或别名",noMatch:"没有找到匹配的成员",empty:"暂无成员数据",table:{accountName:"账号名称",groupNickname:"群昵称",messageCount:"消息数",lastMessageTime:"最后发言",customAlias:"自定义别名",actions:"操作"},aliasPlaceholder:"输入后回车添加",delete:"删除",deleteSelected:"删除选中",mergeSelected:"合并选中",selectedCount:"已选 {count} 位成员",pagination:"显示 {start} - {end} 条,共 {total} 位成员",tip:"提示:添加别名可以更好地识别聊天记录中的对话对象,别名将用于搜索和 AI 分析中。",mergeModal:{title:"确认合并成员?",content:"将成员 {source}({sourceCount} 条消息)合并到 {target}({targetCount} 条消息)下。默认保留消息更多一方的名称。",hint:"合并后不可恢复,被合并成员的消息将全部归属到保留成员。",cancel:"取消",confirm:"确认合并"},batchDeleteModal:{title:"确认批量删除成员?",content:"即将删除选中的 {count} 位成员及其 {messageCount} 条消息,此操作不可恢复。"},modal:{title:"确认删除成员?",content:"即将删除成员 {name} 及其 {count} 条消息,此操作不可恢复。",cancel:"取消",confirm:"确认删除"}},$N={note:"备注:QQ的旧版客户端支持导出聊天记录为txt版本,这个版本会获得最准确的昵称变更记录",title:"昵称变更记录",loading:"加载中...",hasChanges:"{count} 位成员曾修改过昵称",noChanges:"暂无成员修改昵称",current:"当前",empty:"该群组所有成员均未修改过昵称",loadingText:"正在加载昵称变更记录..."},RN={loading:"正在分析 {'@'} 互动数据...",rankingTitle:"{'@'} 互动排行",rankModes:{mentioners:"主动 {'@'}",mentioned:"被 {'@'}"},topMentionersDescription:"按主动 {'@'} 次数排序",topMentionedDescription:"按被 {'@'} 次数排序",times:"次",emptyTitle:"📱 {'@'} 互动分析",empty:"暂无 {'@'} 互动数据"},LN={ownerPrompt:DN,list:EN,nicknameHistory:$N,relationships:RN,private:{title:"对话成员",description:"共 {count} 位成员,可为成员添加别名备注用于搜索和 AI 分析"}},ON={title:"聊天记录查看器"},NN={indexMissingTitle:"还没有可用的会话摘要索引",indexMissingDescription:"原始聊天记录仍可直接查看。生成索引后,左侧会按聊天片段组织摘要;此操作不会自动调用 AI。",generateIndex:"生成索引",indexGenerated:"已生成 {count} 个聊天片段",indexGenerationFailed:"会话索引生成失败",indexLoadFailedTitle:"会话摘要索引加载失败",indexLoadFailedDescription:"原始聊天记录仍可查看。请重试加载,现有摘要不会被修改。"},FN={loading:"加载中...",noMessages:"暂无消息",tryAdjustFilter:"尝试调整筛选条件",loadingMore:"加载更多...",scrollUpForMore:"↑ 向上滚动加载更多",scrollDownForMore:"↓ 向下滚动加载更多"},qN={messageId:"消息 ID",memberPlaceholder:"成员",keywordsPlaceholder:"关键词,多个用逗号分隔,回车搜索",startDate:"起始日期",endDate:"结束日期",reset:"重置",filter:"筛选"},BN={timeline:"摘要",noSessions:"暂无摘要",generateSummary:"生成摘要",updateSummary:"更新摘要",summaryStale:"· 待更新",tooFewMessages:"消息太少"},HN="摘要生成失败",VN="未知错误",zN={title:"批量生成摘要",trigger:"批量生成",byRange:"按范围",byTime:"按时间",selectRange:"选择范围",rangeStart:"最早",rangeInfo:"约",sessionsUnit:"个会话",rangeEnd:"最近",timeRange:"选择时间范围",today:"今天",yesterday:"昨天",week:"最近7天",month:"最近30天",custom:"自定义",found:"找到",hasSummary:"个已有摘要",needsUpdate:"个待更新",tooFewMessages:"个消息太少",pending:"待生成:",unit:"个",noPending:"没有可生成的会话",noSessions:"该时间范围内没有会话",checking:"检查中...",loading:"加载中...",progress:"进度",session:"会话",statusSuccess:"成功",statusSkipped:"跳过",statusFailed:"失败",success:"成功:",failed:"失败:",skipped:"跳过:",start:"开始生成",stop:"停止"},jN={title:"话题",loadFailed:"话题加载失败",preflightFailed:"无法估算生成范围",startFailed:"无法开始生成话题",actionFailed:"话题任务操作失败",deleteFailed:"删除话题失败",emptyTitle:"这一天还没有话题",emptyDescription:"由 AI 按自然日阅读聊天记录,并把穿插或中断后再次出现的同一讨论归入一个话题。仅在你主动创建时消耗额度。",batchSummarize:"批量总结",batchSummarizeTitle:"批量总结话题",summarizeDay:"总结本日话题",createDescription:"选择起点后将处理到聊天记录最后一天,可随时暂停并继续。",start:"开始创建",noMessages:"范围内没有消息",updateDay:"更新当天",pause:"暂停",resume:"继续",progress:"已完成 {completed}/{total} 天",progressBlock:"正在分析第 {current}/{total} 个原文块,已等待 {seconds} 秒",progressFinalizing:"正在收束当天话题,已等待 {seconds} 秒",stale:"当天聊天记录已变化。以下仍是上一次成功结果,更新前请以原消息为准。",evidence:"原消息",deleteTitle:"删除当天话题?",deleteDescription:"只会删除这一天的 AI 派生结果,不会删除聊天记录;之后可以重新创建。",range:{current:"从当前浏览日开始",currentDescription:"从 {date} 处理到聊天记录最后一天",custom:"选择开始日期",customDescription:"从指定日期处理到聊天记录最后一天",today:"从今天开始",todayDescription:"只处理今天有消息的记录",year:"从今年开始",yearDescription:"处理今年至今有消息的日期",all:"从最开始",allDescription:"从最早聊天日期开始完整回溯"},estimate:{range:"{start} 至 {end}",days:"活跃天数",messages:"消息",calls:"预计调用"},status:{pending:"等待开始",running:"正在整理话题",paused:"已暂停",completed:"已完成",failed:"生成失败",cancelled:"已取消"},topicState:{active:"进行中",closed:"已告一段落"}},WN={viewContext:"查看上下文",replyTo:"回复",expandMessyContent:"展开完整内容",collapseMessyContent:"收起"},UN={drawer:ON,workspace:NN,messageList:FN,filter:qN,timeline:BN,summaryFailed:HN,summaryUnknownError:VN,batchSummary:zN,topics:jN,messageItem:WN},GN={rankingView:"排行视图",memberView:"成员视图",matrixView:"矩阵视图",modelSettings:"模型参数",lookAhead:"邻居数量",lookAheadDesc:"每条消息向后看几个发言者",decaySeconds:"时间衰减(秒)",decaySecondsDesc:"值越大,远距离消息权重越高",applySettings:"应用设置",noData:"暂无数据",selectMember:"选择成员",selectMemberHint:"请从左侧选择一个成员",msgCount:"发言数",relationCount:"关系数",relationsByIntimacy:"发言临近度排行",noRelations:"暂无关系数据",intimacy:"临近度",interactionRanking:"互动排行",score:"临近度",coOccurrence:"共现",times:"次",totalMembers:"群成员",totalMessages:"消息总数",involvedMembers:"参与成员",edgeCount:"关系数"},YN={typeDistribution:"消息类型分布",hourlyDistribution:"小时分布",weekdayDistribution:"星期分布",monthlyDistribution:"月份分布",yearlyDistribution:"年份分布",timeHeatmap:"时间热力图",heatmapHint:"展示聊天时间规律",calendarHeatmap:"消息日历",calendarHint:"每日消息分布",calendarTooltipMessages:"消息",lengthDetailTitle:"短消息分布 (1-25字)",lengthDetailHint:"逐字统计",lengthGroupedTitle:"长度区间分布",lengthGroupedHint:"每5字一组",noTextMessages:"暂无文字消息",noData:"暂无数据",profile:{avgLengthUnit:"{count} 字/条",textExpression:"文字表达力",textExpressionDesc:"最长消息 {count} 字",mediaRichness:"媒体丰富度",shortMaster:"短消息达人",shortMasterDesc:"共 {count} 条 ≤5字",essayLover:"小作文爱好者",essayLoverDesc:"≥{threshold}字的消息",typeDistribution:"消息类型",heroLine1Prefix:"你们共留下了",heroLine1Suffix:"条消息"},typeCard:{watermark:"类型报告",nonTextPrefix:"除文字外,发了",nonTextImage:"图片",nonTextEmoji:"表情包",nonTextVoice:"语音",nonTextVideo:"视频",nonTextFile:"文件",nonTextLink:"链接",unitImage:"张图片",unitEmoji:"个表情包",unitVoice:"条语音",unitVideo:"个视频",unitFile:"个文件",unitLink:"个链接"},timeCard:{hourlyDistribution:"24h 分布",watermark:"时间报告",heroDaysIn:"天里有",heroDaysActive:"天在聊天",heroAvgPrefix:"平均每天",heroAvgSuffix:"条消息",personalityNightOwl:"夜猫子",personalityEarlyBird:"早起鸟",personalityLunchChat:"午间闲聊",personalityEveningChat:"晚间活跃",personalityDaytime:"白天活跃",personalityEveryday:"全勤达人",personalityWeekend:"周末活跃",personalityWeekday:"工作日活跃",peakRecord:"巅峰记录",peakRecordDesc:"单日最多 {count} 条",topHoursLabel:"最活跃时段",peakWeekdayLabel:"最活跃周几",weekendRatio:"周末占比",weekendRatioDesc:"周末消息占比"},timeAnalysis:{memberTrendTitle:"消息趋势",memberTrendHint:"各成员的月度消息量变化"},typeAnalysis:{textDepthTitle:"文字深度分析",textTotal:"文字消息总数",avgLength:"平均字数",medianLength:"中位数长度",maxLength:"最长消息",percentiles:"文字长度分位数",shortMessages:"短消息(≤5字)",essayMessages:"小作文(≥30字)"}},KN={layout:"布局",circular:"环形",force:"力导向",directed:"有向",reset:"重置",graphHint:"共 {nodes} 位成员,{links} 条互动关系",noInteraction:"暂无艾特互动数据"},XN={canvasLabel:"群聊互动关系星空图",loading:"正在整理群内关系...",loadFailed:"关系星空图加载失败",webglUnavailable:"当前环境无法显示星空图",webglUnavailableDescription:"请启用浏览器硬件加速,或更换支持 WebGL 的环境后重试。",emptyTitle:"暂无足够的互动关系",emptyDescription:"当前时间范围内至少需要两位成员产生回复、@ 或相邻发言。",resetView:"重置视角",closeDetail:"关闭成员详情",messageCount:"本群消息",relationshipScore:"关系强度",lastInteraction:"最近互动",signalComposition:"互动构成",replies:"回复",mentions:"{'@'} 提及",proximity:"发言临近",strongConnections:"关系最密切",connectionSignals:"回复 {replies} · {'@'} {mentions} · 临近 {proximity}",noConnections:"暂无可展示的直接关系"},JN={empty:{title:"暂无关系数据",description:"当前时间范围内没有会话记录。"},trend:{title:"主动性趋势",hint:"蓝色线为 {name} 的月度主动发起占比,50% 线为均衡基准"},hero:{totalSessionsPrefix:"你们共进行了",totalSessionsSuffix:"次对话",initiativePrefix:"其中有",initiativeByPrefix:"的开场白由",initiativeBySuffix:"发起",initiateTimes:"次发起"},closerTitle:"话题终结者",closerHint:"统计话题结束时最后发言的人。",watermarkReport:"关系报告",monthFormat:"{year}年{month}月",monthShortFormat:"{month}月",iceBreaker:{title:"破冰达人",hint:"超过 24 小时沉默后主动打破僵局的次数"},responseLatency:{title:"回复速度",hint:"当对方发来消息后,平均多久回复",seconds:"{n} 秒",minutesSeconds:"{m}分{s}秒",hours:"{n} 小时",hoursMinutes:"{h} 小时 {m} 分钟"},perseverance:{title:"锲而不舍",hintWithThreshold:"对方{threshold}内还没回复就又发了一次消息的次数",thresholdMinutes:"{n}分钟"},trajectory:{title:"互动轨迹",description:"从月度趋势中查看你们的互动变化",metrics:{activity:"对话频率",response:"回复速度",perseverance:"连续发送"},conversations:"对话次数",iceBreaks:"重新开口",keyMoments:"关键月份",activityPeak:"互动高峰",activityPeakDetail:"共 {count} 次对话",iceBreakPeak:"重新开口最多",iceBreakPeakDetail:"共重新开口 {count} 次",fastestResponse:"回复最快",fastestResponseDetail:"平均回复 {duration}",showAll:"查看全部月份",hideAll:"收起月度数据",month:"月份"}},QN={loadError:"无法加载聊天历程",empty:"暂无足够的聊天记录来生成历程",hero:{prefix:"你们的聊天记录跨越",summary:"其中有 {activeMonths} 个月、{activeDays} 天留下了消息。",filteredSummary:"在当前筛选范围内,有 {activeMonths} 个月、{activeDays} 天留下了消息。",footprint:"聊天足迹",monthCount:"跨越 {count} 个月",monthTooltip:"{month} · {count} 条消息"},metrics:{peakMonth:"最热闹的月份",activeMonths:"活跃月份",longestConversation:"最长一次畅聊",longestSilence:"最长一次沉默",messagesAndDays:"{messages} 条消息 · 活跃 {days} 天",monthsRatio:"{active} / {total} 个月",activeDays:"共活跃 {count} 天",conversationDetail:"{date} · {count} 条消息",reopenedBy:"由 {name} 再次开口",reopened:"随后重新开始聊天",noIndex:"暂无会话索引",noSilence:"没有超过 24 小时的沉默"},years:{title:"一年一页",description:"按年份翻看聊天留下的篇章",summary:"{messages} 条消息 · {days} 个活跃日 · {months} 个活跃月",quiet:"这一年没有留下消息",peak:"高峰月 {count} 条"},milestones:{title:"关键节点",description:"从开始、热闹到重逢,串起这段聊天历程",start:"从这里开始",startDetail:"现有记录中的第一条消息",peak:"最热闹的月份",peakDetail:"这个月留下了 {count} 条消息",longestConversation:"最长一次畅聊",conversationDetail:"持续 {duration},共 {count} 条消息",longestSilence:"最长一次沉默",silenceRange:"{start} – {end}",silenceDetailWithMember:"相隔 {duration},由 {name} 再次开口",silenceDetail:"相隔 {duration},重新开始聊天",end:"记录来到这里",endDetail:"现有记录中的最后一条消息",filteredEndDetail:"当前筛选范围内的最后一条消息"},duration:{lessThanMinute:"不到 1 分钟",minutes:"{count} 分钟",hours:"{count} 小时",hoursMinutes:"{hours} 小时 {minutes} 分钟",days:"{count} 天",daysHours:"{days} 天 {hours} 小时",months:"{count} 个月",years:"{count} 年",yearsMonths:"{years} 年 {months} 个月"},watermark:"聊天历程"},ZN={title:"时间线视图",description:"消息时间分布、活跃周期变化趋势等可视化内容"},eF={rankListPro:{fullRanking:"完整排行",memberCount:"共 {count} 位成员"},rankList:{unit:"条"},nicknameHistory:{periodToNow:"{start} ~ 至今",periodRange:"{start} ~ {end}",current:"当前",empty:"暂无昵称记录"},listPro:{countTemplate:"共 {count} 项",fullRanking:"完整排行",empty:"暂无数据"}},tF={cluster:GN,message:YN,interaction:KN,groupRelationshipGalaxy:XN,relationship:JN,journey:QN,timeline:ZN,charts:eF},nF="关键词过滤",aF="方案列表",rF="方案名称",oF="请输入方案名称",sF="新方案",iF="新建方案",lF="删除方案",cF="设为默认",uF="默认方案",dF="关键词过滤",fF="不过滤",pF="管理方案",hF="添加过滤词",mF="输入词语后回车添加,支持空格或逗号分隔批量添加",gF="添加",vF="过滤词列表",yF="清空全部",bF="暂无方案,点击 + 新建",wF="暂无过滤词,在上方输入框添加",_F="选择或创建一个过滤方案",kF="已过滤 {count} 个词",CF="关闭",SF={title:nF,schemeList:aF,schemeName:rF,schemeNamePlaceholder:oF,defaultSchemeName:sF,createScheme:iF,deleteScheme:lF,setDefault:cF,isDefault:uF,filterScheme:dF,noFilter:fF,manage:pF,addWords:hF,addWordsPlaceholder:mF,add:gF,wordList:vF,clearAll:yF,emptyScheme:bF,emptyWords:wF,selectOrCreate:_F,activeCount:kF,close:CF},xF="联系人",AF="已导入 {count} 个私聊会话",PF="当前时间范围内有效私聊会话数为 {count}。导入至少 1 个群聊,或有效私聊达到 5 个后会启用联系人。",MF="没有匹配的联系人",TF="暂无",IF="搜索联系人",DF="分数 {value}",EF={"1y":"近1年","2y":"近2年","3y":"近3年","5y":"近5年",all:"全部"},$F={total:"联系人",friends:"好友",nonFriends:"群友"},RF={allPools:"全部来源",friends:"好友",nonFriends:"群友"},LF={friends:"好友",groupContacts:"群友"},OF={friend:"好友",manualFriend:"好友 · 手动标记",nonFriend:"群友"},NF={pinned:"置顶联系人",friends:"好友",group_contacts:"群友"},FF={contact:"联系人",status:"类型"},qF={recompute:"重新计算",markFriend:"标记为好友",unmarkFriend:"取消标记",clearSearch:"清空搜索",clearSelection:"取消选中",openSourceSession:"前往对话",viewSourceRecords:"查看聊天记录",viewDetail:"查看 {name} 的详情"},BF={title:"联系人详情",score:"综合分",scoreHelp:"综合分用于联系人排序。分数越高,代表互动信号越强。",lastInteraction:"最近互动",sources:"来源会话",sourceType:{private:"私聊",group:"群聊"},aliases:"别名",signals:"互动信号",emptyTitle:"选择一个联系人",emptyDescription:"点击左侧联系人后,这里会显示互动指标和来源会话。"},HF={privateMessages:"{count} 条私聊",privateMessagesLabel:"私聊消息",activeMonths:"活跃月份",commonGroups:"共同群",lastInteractionShort:"最近",groups:"{count} 个共同群",coOccurrence:"同框次数",replies:"回复互动",groupSignals:"{count} 次同框"},VF={title:"联系人数据可能已过期",message:"检测到聊天库发生变化,正在后台更新联系人。",inline:"联系人数据可能已过期。",later:"稍后"},zF={running:"正在计算联系人:{current} / {total} 个会话",updating:"联系人数据可能已更新,正在重新计算。",failed:"联系人计算失败",retry:"重试"},jF={recomputed:"联系人已重新计算",recomputeStarted:"已开始后台计算联系人",recomputeFailed:"重新计算失败",markFriendSucceeded:"已标记为好友",markFriendFailed:"标记好友失败",unmarkFriendSucceeded:"已取消标记",unmarkFriendFailed:"取消标记失败"},WF={title:xF,subtitle:AF,disabled:PF,empty:MF,emptyValue:TF,search:IF,score:DF,timeRange:EF,stats:$F,filters:RF,tabs:LF,pool:OF,group:NF,table:FF,actions:qF,detail:BF,metrics:HF,stale:VF,task:zF,toast:jF},UF="互动关系",GF="全景关系图",YF="关系子页面",KF="搜索联系人",XF="暂无关系图数据",JF="隐私模式",QF={"3d":"3D","2d":"2D"},ZF={panorama:"全景",close:"高关联",friends:"仅好友"},eq={"1y":"近1年","2y":"近2年","3y":"近3年","5y":"近5年",all:"全部"},tq={recompute:"重新计算",clearSearch:"清空搜索",closeDetail:"关闭详情",backToPanorama:"返回全景",fitView:"适应视图",focusConnections:"只看它的联系"},nq={nodes:"节点",edges:"连线",communities:"相关群组",members:"人数"},aq={friend:"好友",manualFriend:"好友 · 手动标记",nonFriend:"群友"},rq={me:"我",type:"我自己",avatarText:"我"},oq={running:"正在计算互动关系:{current} / {total} 个会话",updating:"关系数据可能已更新,正在重新计算。",failed:"互动关系计算失败",retry:"重试"},sq={title:"搜索结果",offCore:"加载邻域"},iq={title:"相关联系人",empty:"当前图中没有直接联系",connectionScore:"关联度"},lq={rank:"排名",score:"综合分",type:"类型",community:"圈层",lastInteraction:"最近互动",privateMessages:"私聊消息",groupMessages:"群聊消息",commonGroups:"共同群",emptyValue:"暂无"},cq={recomputeStarted:"已开始后台计算互动关系",recomputeFailed:"重新计算失败",loadFailed:"互动关系加载失败",neighborhoodFailed:"邻域加载失败",threeUnavailable:"3D 渲染不可用,已切换到 2D。"},uq={label:"互动关系星系图",label3d:"3D 互动关系星系图"},dq={title:UF,subtitle:GF,nav:YF,search:KF,empty:XF,privacy:JF,viewMode:QF,graphScope:ZF,timeRange:eq,actions:tq,stats:nq,pool:aq,owner:rq,task:oq,searchResults:sq,connections:iq,detail:lq,toast:cq,canvas:uq},fq="足迹",pq="该视图将在后续版本开放",hq={nav:"足迹视图",relationshipChanges:"关系变化"},mq={title:fq,reserved:pq,tabs:hq},gq="让每一段对话,都有迹可循",vq="本地存储、隐私优先,通过 AI Agent 和可视化图表,轻松回顾你的聊天记忆",yq="无需登录",bq="仅在本机处理",wq="数据不上传",_q="数据保存在当前浏览器的站点存储中。清除站点数据会一并删除已导入会话。",kq="如何导出聊天记录",Cq="正在准备本地工作区",Sq="首次启动需要加载 SQLite 运行时并打开浏览器存储。",xq={title:"当前浏览器无法运行本地版",description:"请使用最新版 Chrome、Edge 或其他支持 OPFS 的浏览器,并通过 localhost 或 HTTPS 打开。",missing:"缺少能力:{capabilities}"},Aq={title:"本地工作区遇到问题",unsupportedFile:"暂不支持这个文件。请选择 ChatLab JSON / JSONL、WhatsApp / LINE / QQ TXT 或 Telegram JSON。"},Pq={eyebrow:"本地会话",title:"你的聊天档案",description:"会话彼此隔离保存在浏览器中,可以管理会话并查看 24 小时消息分布。",count:"{count} 个会话",refresh:"刷新",emptyTitle:"还没有本地会话",emptyDescription:"从左侧导入第一份聊天记录,它会在这里出现。",messages:"{count} 条消息",members:"{count} 位成员",lastMessage:"最后消息 {date}",importedAt:"导入于 {date}",group:"群聊",private:"私聊",rename:"重命名",renameLabel:"新的会话名称",deleteTitle:"删除“{name}”?",deleteDescription:"该会话的本地数据库会被永久删除,此操作无法撤销。",busy:"正在更新会话…"},Mq={open:"查看时间分布",eyebrow:"首个本地分析",title:"“{name}”的 24 小时分布",description:"统计在本地后台线程中完成,并按当前设备时区归入小时。",loading:"正在读取本地会话统计…",totalMessages:"统计消息",peakHour:"最活跃时段",activeHours:"有消息时段",hourValue:"{hour}:00",hourTooltip:"{hour}:00 · {count} 条消息",noData:"这个会话暂时没有可展示的小时数据。",runtimeNote:"本地计算 · 不上传"},Tq={title:gq,subtitle:vq,noSignIn:yq,localOnly:bq,noUpload:wq,localOnlyDetail:_q,exportGuide:kq,initializing:Cq,initializingDetail:Sq,unsupported:xq,error:Aq,import:{eyebrow:"导入",title:"添加一份聊天记录",description:"当前支持 ChatLab JSON / JSONL、WhatsApp / LINE / QQ TXT 和 Telegram JSON。每次导入会创建一个独立会话。",drop:"拖入文件,或从设备选择",dropActive:"松开即可选择这个文件",formats:".json · .jsonl · .txt",choose:"选择文件",selected:"已选择",detecting:"正在识别格式…",detected:"识别为 {format}",start:"开始本地导入",working:"正在导入",cancel:"停止导入",processed:"已处理 {count} 条消息",multiChat:{title:"选择要导入的聊天",selected:"已选 {selected} / {total}",selectAll:"全选",clearAll:"清空",messages:"{count} 条消息",empty:"空聊天",current:"第 {current} / {total} 项:{name}",importSelected:"导入选中的 {count} 项",successDetail:"已创建 {sessions} / {total} 个会话,共保存 {messages} 条消息。",failed:"{count} 项导入失败",cancelledWithCompleted:"导入已停止;已完成的 {count} 个会话已保留。"},stages:{detecting:"识别文件",reading:"读取文件",parsing:"解析消息",saving:"写入本地数据库",indexing:"建立索引",done:"完成"},successTitle:"导入完成",successDetail:"已保存 {messages} 条消息和 {members} 位成员。",cancelled:"导入已停止,没有留下未完成的会话。",another:"继续导入"},sessions:Pq,analysis:Mq},Iq="ChatLab AI",Dq="从聊天记录中寻找答案",Eq="AI 会按需调用本地分析工具,只将当前问题所需且已脱敏的数据发送给模型服务商。",$q="询问这段聊天记录…",Rq="重新生成",Lq="AI 可能会犯错,请核对重要结论",Oq="正在调用 {name}",Nq="正在压缩上下文",Fq={title:"对话",deleteConfirm:"确定删除这条 AI 对话吗?"},qq={title:"配置 Web AI",description:"Web WASM 会直接从浏览器请求模型服务,不经过 ChatLab 服务器。",provider:"模型服务",openAICompatible:"OpenAI 兼容接口",baseURL:"API 地址",model:"模型",apiKey:"API Key",apiKeyPlaceholder:"输入 API Key",apiKeyReplace:"重新输入以替换已保存的 Key",required:"请完整填写 API 地址、模型和 API Key",keyStorageWarning:"API Key 会加密后保存在当前浏览器中,并在刷新后继续使用。浏览器本地加密无法防御已获得当前页面权限的恶意脚本。",corsWarning:"仅支持允许浏览器跨域访问(CORS)的 OpenAI 兼容服务。连接失败也可能是服务商禁止浏览器直连。",test:"测试连接",testSuccess:"连接成功({ms}ms)",saved:"模型配置已保存",remove:"移除配置",removeConfirm:"确定移除模型配置和已保存的 API Key 吗?",removed:"模型配置和 API Key 已移除"},Bq={AUTH:"API Key 无效或没有访问权限。",RATE_LIMIT:"请求过于频繁或额度不足,请稍后重试。",MODEL_NOT_FOUND:"找不到这个模型,请检查模型名称。",TIMEOUT:"模型请求超时,请重试。",NETWORK_OR_CORS:"请求被网络或浏览器跨域策略阻止,请确认服务商支持浏览器直连。",FINISH_LENGTH:"回答达到长度上限,内容可能不完整,你可以继续追问或重新生成。",FINISH_CONTENT_FILTER:"回答被模型服务商的内容策略中止,内容可能不完整。",FINISH_TOOL_CALLS:"工具调用达到本轮上限,回答可能未完成,你可以重试。",FINISH_UNKNOWN:"模型未正常结束,回答可能不完整,你可以重试。"},Hq={title:Iq,emptyTitle:Dq,emptyDescription:Eq,inputPlaceholder:$q,regenerate:Rq,footer:Lq,usingTool:Oq,compressingContext:Nq,conversations:Fq,config:qq,errors:Bq},Vq={common:KL,layout:vO,settings:$O,home:zO,analysis:nN,tools:rN,providers:gN,ai:CN,quotes:IN,members:LN,records:UN,views:tF,wordFilter:SF,contacts:WF,relationships:dq,insight:mq,browser:Tq,webAI:Hq},zq="OK",jq="Cancel",Wq="Save",Uq="Edit",Gq="Add",Yq="Capture",Kq="Close",Xq="Back",Jq="Done",Qq="Retry",Zq="App initialization failed",eB="Appearance preferences couldn't be loaded in time. System theme and the built-in language are in use for this session.",tB="The local workspace is temporarily in use by another tab. Wait a moment and retry.",nB="Loading...",aB="Initializing...",rB="No results found",oB="Export successful",sB="Export failed",iB="Generating...",lB="Regenerate",cB="Open Folder",uB="View chat records",dB="Please configure AI service in Settings first",fB={unknown:"Unknown error"},pB={text:"Text",image:"Image",voice:"Voice",video:"Video",file:"File",emoji:"Emoji",link:"Link",location:"Location",redPacket:"Red Packet",transfer:"Transfer",poke:"Poke",call:"Call",share:"Share",reply:"Reply",forward:"Forward",contact:"Contact",system:"System",recall:"Recalled",other:"Other",unknown:"Unknown"},hB={mon:"Mon",tue:"Tue",wed:"Wed",thu:"Thu",fri:"Fri",sat:"Sat",sun:"Sun"},mB={jan:"Jan",feb:"Feb",mar:"Mar",apr:"Apr",may:"May",jun:"Jun",jul:"Jul",aug:"Aug",sep:"Sep",oct:"Oct",nov:"Nov",dec:"Dec"},gB={title:"Select Language",subtitle:"Choose your preferred interface language",next:"Next"},vB={title:"Privacy Policy & User Agreement",subtitle:"Please read carefully before use",disagree:"I Disagree",agree:"I Have Read and Agree",updateNotice:"The agreement has important updates. Please read and confirm again."},yB={selectDate:"Select Date",clearDate:"Clear"},bB={mode:{recent:"Recent",quarter:"Quarter",year:"Year",custom:"Custom"},recent:{oneYear:"Last 1Y",twoYears:"Last 2Y",fiveYears:"Last 5Y",all:"All"},display:{recent365:"Last 1 year",recent730:"Last 2 years",recent1825:"Last 5 years"},quarter:{label:"{year} Q{quarter}"},year:{label:"{year}"}},wB={allMembers:"All Members"},_B={placeholder:"Search members",noSecondary:"No other names"},kB={description:"This service requires authentication. Enter your API Token to continue.",tokenLabel:"API Token",tokenPlaceholder:"clb_xxxxxxxx",submit:"Login",hint:"Find the token in the startup log, config.toml, or the --token flag",errorEmpty:"Please enter a token",errorInvalid:"Invalid token, please check and try again",errorNetwork:"Network connection failed",rememberDevice:"Remember this device",rememberWarning:"Only check on trusted devices — token will persist in the browser",logoutTitle:"Account",logoutDesc:"Sign out of the current session",logout:"Sign out"},CB={confirm:zq,cancel:jq,delete:"Delete",save:Wq,edit:Uq,add:Gq,capture:Yq,close:Kq,back:Xq,done:Jq,retry:Qq,initFailed:Zq,presentationFallback:eB,webWasmWorkspaceBusy:tB,loading:nB,initializing:aB,noResults:rB,export:"Export",exportSuccess:oB,exportFailed:sB,generating:iB,regenerate:lB,openFolder:cB,viewChatRecords:uB,errorNoAIConfig:dB,error:fB,messageType:pB,weekday:hB,month:mB,languageSelect:gB,agreement:vB,datePicker:yB,timeSelect:bB,userSelect:wB,memberSearchSelect:_B,login:kB},SB="ChatLab",xB="New Analysis",AB="Contacts",PB="Relationships",MB="Footprint",TB="Tools",IB="Chat History",DB="Manage",EB="No records",$B="Couldn't load conversations",RB="Search conversation name",LB="No matching chat records found",OB={rename:"Rename",pin:"Pin",unpin:"Unpin",copyId:"Copy ID",delete:"Delete"},NB={title:"Rename",placeholder:"Enter new name"},FB={title:"Confirm Delete",message:'Are you sure you want to delete "{name}"? This action cannot be undone.'},qB={tag:"New",title:"Update Available",message:"The latest version is v{version}.",desktopHint:"Click Update Now to start checking and downloading the desktop update.",cliHint:"Run the following command in your terminal, then restart the service.",updateNow:"Update Now",later:"Later"},BB={all:"All",private:"Private",group:"Group"},HB={importedAt:"Import Time",lastMessageTs:"Last Message",messageCount:"Message Count"},VB={search:"Search chat records",sort:"Sort"},zB="{count} messages",jB={settings:"Settings"},WB={brand:SB,newAnalysis:xB,contacts:AB,relationships:PB,insight:MB,tools:TB,chatHistory:IB,manage:DB,noRecords:EB,sessionLoadFailed:$B,searchPlaceholder:RB,noSearchResult:LB,contextMenu:OB,renameModal:NB,deleteModal:FB,updateNotice:qB,filter:BB,sort:HB,tooltip:VB,sessionInfo:zB,footer:jB},UB="Settings",GB={basic:"General",navigation:"Navigation",ai:"AI Settings",aiConfig:"Model Service",aiDefaultModel:"Default Model",semanticIndex:"Semantic Index",chatPreferences:"Preferences",aiPreprocess:"Preprocess",dataManage:"Data Management",storage:"Storage",security:"Security",sessionManage:"Session Index",about:"About",api:"Automation",apiSubTabs:{autoSync:"Auto Sync",apiService:"API Service",mcp:"MCP"}},YB={general:{title:"General"},preferences:{title:"Preferences"},language:{description:"Choose language"},appearance:{title:"Appearance",themeMode:"Theme Mode",insightCardTheme:"Insight card colors",insightCardThemeOption:"Color scheme {index}",auto:"System",light:"Light",dark:"Dark"},defaultTab:{description:"Default page when entering a chat conversation",insights:"Insights",aiChat:"AI Chat"},autoLaunch:{openAtLogin:"Launch at Login",openAtLoginDesc:"Automatically start ChatLab when the system boots",devModeHint:"Not available in dev mode"},closeBehavior:{label:"When closing the main window",background:"Run in background",quit:"Quit app"},toolsPanel:{positionLabel:"Tools Panel Position",positionDesc:"Choose where the quick tools panel appears",positionSide:"Side",positionHeader:"Header"},network:{title:"Network",proxyMode:"Proxy Mode",proxyModeDesc:"How to connect when accessing external services",modeOff:"Off",modeSystem:"System",modeManual:"Manual",proxyAddress:"Proxy Address",proxyPlaceholder:"http://127.0.0.1:7890",proxyHelp:"Supports HTTP/HTTPS proxy, e.g.: http://127.0.0.1:7890",testConnection:"Test Connection",testing:"Testing...",connectionSuccess:"Proxy connection successful!",connectionFailed:"Connection failed",enterProxyFirst:"Please enter proxy address first",invalidProxyUrl:"Please enter a valid proxy address, e.g. http://127.0.0.1:7890",onlyHttpSupported:"Only http:// or https:// protocols are supported",saveFailed:"Save failed"}},KB={title:"Navigation Layout",description:"Choose whether analysis features appear as sidebar entries or as secondary pages under Insight. Changes apply after saving.",invalidLayout:"The saved navigation layout could not be read, so plugin defaults are in use. Saving or resetting will replace the invalid configuration.",loadFailed:"The saved navigation layout could not be loaded, so plugin defaults are shown temporarily. Reload the app to try again; saving and resetting are disabled until loading succeeds.",primary:"Primary entry",inGroup:"Secondary · {group}",group:"Secondary navigation group",hidden:"Hidden",moveUp:"Move up",moveDown:"Move down",locationFor:"Set navigation location for {title}",unavailable:"Plugin unavailable",emptyGroup:"This group currently has no navigation entries.",saved:"Navigation layout saved",saveFailed:"Failed to save navigation layout",reset:"Reset to defaults",resetDone:"Default navigation layout restored",resetFailed:"Failed to restore the default navigation layout",storageHint:"Desktop and CLI Web share this layout from .chatlab."},XB={title:"Default Model",noConfigs:'Please add a model configuration in "Model Service" first',selectProvider:"Select provider",selectModel:"Select model",assistantModel:{label:"Default Assistant Model",description:"Used for AI chat, tool calls, SQL assistant, and context compression"},fastModel:{label:"Fast Model",description:"Used for session summary generation. Falls back to the default assistant model if not set",followAssistant:"Follow default assistant model"}},JB={title:"Model Services",defaultModel:"Default Model",empty:{title:"No AI service configured",description:"Add a configuration to start using AI features"},addConfig:"Add New Service",maxConfigs:"Maximum configurations reached (10)",modal:{addConfig:"Add New Service",editConfig:"Edit Service",localService:"Local Service",configName:"Configuration Name",optional:" (Optional)",configNamePlaceholderPreset:"Leave empty to use provider name",configNamePlaceholderCustom:"Leave empty to use API endpoint",aiProvider:"AI Provider",apiKeyPlaceholder:"Enter your API Key",apiKeyPlaceholderEdit:"Enter new API Key (leave empty to keep current)",apiKeyPlaceholderLocal:"Usually not required for local services",apiKeyHintLocal:"Enter if the service requires authentication",validate:"Validate",validationSuccess:"Connection validated successfully",validationFailed:"Connection validation failed",validationFailedTitle:"API Connection Validation Failed",saveAnywayHint:"Validation did not pass. The configuration may be incorrect. Save anyway?",saveAnyway:"Save Anyway",validationError:"Validation failed: ",model:"Model",apiEndpoint:"API URL",apiEndpointHint:"OpenAI-compatible API endpoint",resolvedUrl:"Resolved URL:",fetchModels:"Fetch from API",fetchModelsTitle:"Browse Remote Models",fetchModelsLoading:"Fetching model list...",fetchModelsEmpty:"No models found",fetchModelsError:"Failed to fetch models",fetchModelsCount:"{total} models total, showing {shown}",modelAdded:"Added",addAllModels:"Add all",searchModels:"Search models...",apiEndpointOverrideHint:"Default URL is prefilled. Replace if needed",customService:"Custom Service",visitWebsite:"Visit Website",getApiKey:"Get API Key",presetService:"Preset",thirdPartyService:"Third-party",addCustomModel:"Add Model",deleteCustomModel:"Delete Selected",customModelId:"Model Endpoint Name",customModelIdHint:"The model identifier used in API calls",customModelDisplayName:"Display Name",customModelDisplayNamePlaceholder:"Custom display name",editModel:"Edit Model",contextWindow:"Context Window",contextWindowPlaceholder:"e.g. 128000",contextWindowHint:"Maximum context tokens supported by this model (used for context compression)",contextWindowMissing:'Context window not set, will use default. Click "Edit Model" to set it manually',modelRequired:"Add at least one model to save",apiFormat:"API Format",apiFormatOpenAI:"OpenAI Completions",apiFormatAnthropic:"Anthropic",apiFormatGemini:"Gemini",apiFormatOpenAIResponses:"OpenAI Responses"},providerKind:{aggregator:"Aggregator",custom:"Custom"}},QB={title:"Local Storage Management",description:"Manage data files stored locally by ChatLab",dataLocation:{title:"Data Directory",description:"Customize where chat databases and vector indexes are stored",managedDescription:"This setting only manages chat databases and vector indexes. AI chats, cache, and logs remain in the fixed system data directory.",choose:"Choose",applyPath:"Apply",reset:"Reset",open:"Open",serverPathHint:"Enter an absolute path that is accessible from the machine running the CLI server.",migrateHint:"Chat database data is still at a legacy location. Migrate to the unified directory:",ignoreMigrateHint:"Ignore",migrateAction:"Migrate Now",restartTip:"Please restart the app after switching. Chat database data will be migrated based on your choice.",cliRestartTip:"Restart the CLI server after switching. Chat database data will be migrated before the server starts.",confirmTitle:"Confirm Directory Change",confirmMessage:"You are about to change the chat database directory. If migration is selected, existing chat database data will be copied to the new directory.",newPath:"New directory path",defaultPath:"Default location",confirmWarning:"After restarting, chat database data will be migrated to the new location and the old directory will be kept as a backup.",cliConfirmWarning:"After restarting the CLI server, chat database data will be migrated to the new location and the old directory will be kept as a backup. Make sure the server process has write access.",pathRequired:"Please enter a data directory path",installDirForbidden:"Data directory cannot be placed inside the app installation directory, as it will be cleared during updates",cancel:"Cancel",confirm:"Confirm",migrationQueuedTitle:"Migration Queued",migrationSuccessMessage:"The app needs to restart for changes to take effect.",cliMigrationSuccessMessage:"Stop the current CLI server and start it again. Migration will run before the server starts. Reopen the page afterward to see the new directory.",relaunchNow:"Restart Now",acknowledge:"Got it",cleanupNoticeTitle:"Switched to the new data directory",cleanupNoticeDescription:"To prevent data loss, the original directory is still kept as a backup. Verify that your chat history is complete before removing it from Storage Management.",cleanupOldPath:"Original data directory",cleanupLater:"Later",cleanupGoToStorage:"Open Storage Management",cleanupTitle:"Old data awaiting cleanup",cleanupDescription:"The pre-migration directory is still kept as a backup. Delete it manually only after verifying the chat history in the new directory.",cleanupDeleteAction:"Delete old data",cleanupDeleteConfirmTitle:"Permanently delete old data?",cleanupDeleteConfirmDescription:"This cannot be undone. Verify that the chat history in the new directory is complete before deleting the original directory below.",cleanupDeleteConfirmAction:"Delete permanently",cleanupDeleteFailed:"Failed to delete old data"},openRootDir:"Open Root",totalUsage:"Total: ",loading:"Loading...",files:"files",notExist:"Not exist",clear:"Clear",open:"Open",cache:{databases:{name:"Chat Databases",description:"Imported chat analysis data"},ai:{name:"AI Chat Databases",description:"AI chat history and config files"},statsCache:{name:"Cache Data",description:"Statistics cache for chat records, auto-rebuilt after clearing"},logs:{name:"Log Files",description:"App logs including import, AI, error logs"}}},ZB={session:{title:"Session Index Settings",description:"Session index splits chat history into conversation segments by time gaps for better AI analysis",defaultThreshold:"Default Gap Threshold",thresholdUnit:"minutes",thresholdHelp:"Messages exceeding this time gap will be split into a new session",generating:"Generating",batchTitle:"Batch Generate Index",totalSessions:"{count} chats total",generatedCount:"{count} generated",notGeneratedCount:"{count} not generated",loadingStatus:"Loading...",batchGenerate:"Generate Missing",batchRegenerate:"Regenerate All",batchRegenerateConfirmTitle:"Confirm Regeneration",batchRegenerateConfirmMessage:"This will clear all existing AI summaries and regenerate session indexes from scratch.",batchRegenerateConfirmWarning:"Existing summaries will be overwritten. This action cannot be undone.",summaryStrategy:"Summary Detail Level",summaryStrategyHelp:"Controls how detailed AI-generated summaries will be",summaryBrief:"Brief",summaryStandard:"Standard"},semanticIndex:{title:"Semantic Index",description:"Builds an index of your chats with the selected vector model. Once enabled, the AI can semantically retrieve relevant past excerpts as supporting evidence.",vectorModel:"Vector Model",selectModel:"Select Vector Model",switchModel:"Switch Model",noModelSelected:"No vector model selected",modelModalTitle:"Configure Vector Model",modeLocal:"Local Model",modeApi:"API",recommended:"Recommended",approxSize:"~{mb} MB",modelDownloadSource:"Model Download Source",downloadSourceOfficial:"Hugging Face Official",downloadSourceMirror:"HF-Mirror (China)",mirrorSourceHint:"HF-Mirror is a third-party public mirror for networks in mainland China. Model files will be downloaded from hf-mirror.com.",localDownloadHint:"The model downloads automatically after saving. The first download may take a while.",localRuntimeDownloadHint:"The CLI Web local-model runtime is about 370 MB. If it is not preinstalled, ChatLab installs it automatically on first use. The selected model downloads after saving.",apiTemplate:"Service Template",modelName:"Model Name",apiKeySaved:"Saved; leave blank to keep",apiKeyHint:"API keys are stored separately and securely; the config keeps only a reference.",apiCostWarning:"API mode may incur provider costs. Please confirm model pricing.",changeRebuildHint:"After changing the model or API, enabled conversations need to be rebuilt.",modelDownloading:"Downloading model, this may take a few minutes on first use…",runtimeInstalling:"Installing the local-model runtime. First use may take a while…",modelError:"Local model preparation failed. It will be retried when building the index.",searchMaxResults:{label:"Excerpts per search",hint:"Default number of relevant excerpts returned when the AI runs a semantic search (5-15). The AI may raise it as needed."},overview:"Index Overview",enabledCount:"{count} conversations enabled",coverage:"Coverage {percent}%",buildPending:"Build Pending Indexes",cleanup:"Clean Up Unused Indexes",cleanupConfirm:"This deletes index data from disabled conversations and old models. It does not delete chat records.",configFirst:"Configure a vector model first",selectConversations:"Select Conversations",enabledSessions:"Enabled Conversations",state:{completed:"Completed",building:"Building",pending:"Pending",needsRebuild:"Needs Rebuild",failed:"Failed",paused:"Paused"},action:{build:"Build Index",pause:"Pause",cancel:"Cancel",rebuild:"Rebuild",remove:"Remove"},session:{statusLabel:"Status",notEnabled:"Not enabled",coverageLabel:"Coverage",progressLabel:"Build progress",enableHint:"Once enabled, the AI can retrieve past chat excerpts when answering questions about this conversation.",configFirst:"Configure a vector model under Settings > AI > Semantic Index before enabling.",enable:"Enable Index",buildVsEnable:"Enable Index: include this conversation in semantic retrieval. Build Index: read all messages and generate vectors, which may use local compute or API quota.",retry:"Retry",continue:"Continue"},picker:{title:"Select Conversations",all:"All",group:"Group",private:"Private",searchPlaceholder:"Search by name",messages:"{count} messages",enabled:"Enabled",selectedSummary:"{count} conversations selected, ~{messages} messages",confirmRemoveTitle:"Confirm Remove",confirmRemoveMessage:"The semantic index for these conversations will be permanently deleted."}}},eH={chatSettings:{title:"Tool Settings"},exportSettings:{title:"Export Settings"},chatPreferences:{title:"Conversation Preferences",enableAutoSkill:"AI Auto-Select Skills",enableAutoSkillDesc:"When enabled, AI will automatically match and activate suitable analysis skills based on user queries; when disabled, skills only take effect when manually selected",chartAutoMode:{title:"Auto Chart Generation",description:"Controls how actively AI uses charts when the Chart Assistant is not manually selected",explicit:"Explicit requests",explicitHint:"AI only generates charts when you explicitly ask for them.",suggest:"Smart generation",suggestHint:"Conservative strategy: AI only generates charts when they clearly help explain the analysis.",aggressive:"Active generation",aggressiveHint:"AI more actively adds charts in data analysis scenarios."}},maxMessages:{title:"Max Messages per Request",description:"Max number of messages sent to AI per request. Higher values consume more tokens but provide more accurate context (recommended: 2000)."},searchContext:{title:"Search Context Window",description:"Automatically include surrounding messages for each search hit to help AI understand the context. Set to 0 to disable",before:"Before",after:"After"},exportFormat:{title:"Export Format",description:"File format for exporting AI conversations",txtLabel:"TXT"},sqlExportFormat:{title:"SQL Lab Export Format",description:"File format for exporting SQL query results"}},tH={title:"About ChatLab",description:"Chat records analysis tool",version:"Version",checkUpdate:"Check for Updates",checking:"Checking...",upToDate:"You are up to date",newVersionAvailable:"New version {version} available",webUpdateHint:"Run clb update in your terminal, then restart the service.",updateCheckFailed:"Update check failed: {error}",unknown:"Unknown",privacy:{title:"Privacy Settings",analytics:"Anonymous Usage Statistics",analyticsDesc:"When enabled, the app sends an anonymous installation ID, version, system, app type, language, approximate region, imported chat platform, and major feature usage. It never sends chat content, contacts, filenames, paths, model names, or keys"},developer:{title:"Developer Options",debugMode:"DEBUG Mode",debugModeDesc:"When enabled, the debug panel and quick debugging tools will be shown. You can use them to view databases, run testing tools, and record more detailed debug logs."}},nH={title:"Chat Preprocessing",description:"Preprocess chat records before sending to AI to save tokens and filter noise. Original data is not modified.",dataCleaning:"Data Cleaning",dataCleaningDesc:"Automatically clean XML card messages (shared links, mini-programs, etc.), extracting useful content and significantly saving tokens. Recommended to keep enabled.",mergeConsecutive:"Merge Consecutive",mergeConsecutiveDesc:"Merge consecutive messages from the same sender within a short time window",mergeWindow:"Merge window (seconds)",denoise:"Smart Denoise",denoiseDesc:"Filter out meaningless messages like interjections, emojis, and system placeholders (e.g. [Image])",desensitize:"Data Masking",desensitizeDesc:"Replace sensitive information (phone numbers, emails, ID numbers, etc.) based on rules",desensitizeBuiltin:"Built-in Rules",desensitizeResetBuiltin:"Restore Defaults",desensitizeCustom:"Custom Rules",desensitizeAddCustom:"Add Custom Rule",desensitizeRuleName:"Rule Name",desensitizeRulePattern:"Regex Pattern",desensitizeRuleReplacement:"Replacement Text",desensitizeRuleAdd:"Add",desensitizeRuleInvalidRegex:"Invalid regex syntax",desensitizeRuleNamePlaceholder:"e.g. Employee ID",desensitizeRulePatternPlaceholder:"e.g. EMP-\\d+",desensitizeRuleReplacementPlaceholder:"Replacement, e.g. [EmpID]",anonymizeNames:"Anonymize Nicknames",anonymizeNamesDesc:"Replace real nicknames with IDs (U1, U2…) when sending to AI, reducing hallucinations and saving tokens",blacklist:"Blacklist Keywords",blacklistDesc:"Messages containing any of these keywords will be filtered out entirely",blacklistPlaceholder:"Type a keyword and press Enter to add",blacklistAdd:"Add"},aH={groups:{credentials:"Passwords & Tokens",credentials_desc:"Credentials such as API keys and Bearer tokens",global_contact:"Global Contact Info",global_contact_desc:"Cross-region contact details such as email addresses",global_financial:"Global Financial Info",global_financial_desc:"Financial identifiers such as credit card numbers",global_network:"Global Network Info",global_network_desc:"Network identifiers such as URLs and IP addresses",region_cn:"Mainland China",region_cn_desc:"Rules for phone numbers, IDs, and bank cards in Mainland China",region_us:"United States",region_us_desc:"Rules for phone numbers and IDs in the United States",region_jp:"Japan",region_jp_desc:"Rules for phone numbers and My Number in Japan",region_kr:"Korea",region_kr_desc:"Rules for phone numbers and resident registration numbers in Korea"},rules:{cn_phone:"China Mobile Number",cn_phone_desc:"11-digit starting with 1xx",cn_id_card:"China ID Card Number",cn_id_card_desc:"18-digit, may end with X",cn_bank_card:"China Bank Card Number",cn_bank_card_desc:"16-19 consecutive digits",cn_landline:"China Landline Number",cn_landline_desc:"Area code + number, e.g. 010-12345678",us_ssn:"US Social Security Number (SSN)",us_ssn_desc:"XXX-XX-XXXX format",us_phone:"US Phone Number",us_phone_desc:"+1 (XXX) XXX-XXXX format",us_drivers_license:"US Driver's License",us_drivers_license_desc:"Letter + 7-8 digits",jp_phone:"Japan Phone Number",jp_phone_desc:"0x0-XXXX-XXXX format",jp_my_number:"Japan My Number",jp_my_number_desc:"12-digit number (マイナンバー)",kr_phone:"Korea Phone Number",kr_phone_desc:"01X-XXXX-XXXX format",kr_rrn:"Korea Resident Registration Number",kr_rrn_desc:"XXXXXX-XXXXXXX format (주민번호)",api_key_prefix:"API Key / Token (Known Prefixes)",api_key_prefix_desc:"Strings starting with sk-, ghp_, AKIA, etc.",bearer_token:"Bearer Token",bearer_token_desc:"Authorization token after Bearer",email:"Email Address",email_desc:"Standard user{'@'}domain.com format",credit_card:"Credit Card Number",credit_card_desc:"Visa / MasterCard / AmEx card numbers",ipv4:"IPv4 Address",ipv4_desc:"e.g. 192.168.1.1",url:"URL Link",url_desc:"Links starting with http:// or https://"}},rH={service:{title:"API Service",enable:"Enable API Service",enableDesc:"When enabled, external tools can query, export, and import chat data via HTTP API. Localhost only (127.0.0.1)",portInUseHint:"Port is in use. Please change the port below or close the program using this port"},status:{running:"Running",stopped:"Stopped",starting:"Starting...",portInUse:"Port in use",error:"Failed to start"},port:{title:"Port Configuration",label:"Listen Port",desc:"Local port for the API service (1024-65535)",edit:"Edit",save:"Save",cancel:"Cancel"},token:{title:"Access Token",label:"Bearer Token",desc:"All API requests must include this token in the Authorization header",noToken:"No token generated yet. Please enable the service first",regenerate:"Regenerate"},dataSources:{title:"Data Sources",desc:"Configure external data source URLs. ChatLab will automatically pull and import chat data at the specified interval.",empty:"No data sources",noSessions:'No import sessions. Click "Manage Sessions" above to add.',disabled:"Paused",every:"Every",minutes:"min",lastSync:"Last sync",syncing:"Syncing",messages:"messages",addBtn:"Add Data Source",form:{modalTitle:"Add Data Source",name:"Name",namePlaceholder:"e.g., My Chat Server",token:"Access Token",tokenPlaceholder:"Bearer Token for the remote API",interval:"Pull Interval (minutes)",pullLimit:"Messages per Pull",pullLimitPlaceholder:"Default 1000"},discovery:{baseUrl:"Server URL",baseUrlPlaceholder:"e.g. http://127.0.0.1:2333/api/v1",found:"Found {count} sessions",search:"Search",searchPlaceholder:"Search by session name",selectAll:"Select All",deselectAll:"Deselect All",selectByType:"Session type",typeAll:"All",typePrivate:"Private",typeGroup:"Group",loadMore:"Load More",subscribe:"Subscribe {count} sessions",messages:"messages",error:"Failed to connect to remote server",connectionCheckFailed:"Cannot connect to the remote server. Please check the URL and token."},edit:{title:"Edit Data Source",save:"Save",cancel:"Cancel",editSource:"Edit Config",manageSessions:"Manage Subscriptions",subscribed:"Subscribed"},deleteConfirm:{title:"Delete Data Source",message:'Are you sure you want to delete "{name}"? All import configurations under this data source will be removed. Already imported local conversations will not be deleted.'},deleteSessionConfirm:{title:"Delete Subscription",message:'Are you sure you want to delete "{name}"?',keepData:"Remove subscription only",deleteData:"Also delete imported chats"}},usage:{title:"Usage Guide",desc:"After enabling the service, external tools can query data or push chat records to ChatLab via API. All requests require Bearer Token authentication.",authHint:"Header example:",docLink:"View full API documentation"}},oH={overview:{title:"MCP Overview",description:"MCP lets AI assistants directly query your chat records. Supports session discovery, keyword search, member stats, time distribution, and more.",toolCount:"{count} tools",resourceCount:"{count} resources",installHint:"Install chatlab-cli, then add the config below to your AI client:"},clients:{other:"Other"},config:{title:"Client Configuration",clientLabel:"MCP Client",copy:"Copy",copied:"Copied",claudeHint:"Add this config to ClaudeCode's MCP configuration.",codexHint:"Add this TOML config to your ~/.codex/config.toml file.",openclawHint:"Add this config to your project's openclaw.json file.",otherHint:"Add this JSON config to your MCP client configuration file."},tips:{title:"Tips",dataDir:"The MCP server reads chat data from ~/.chatlab/, sharing the same data as the desktop app.",readOnly:"All operations are read-only and will not modify your chat records.",nodeRequired:"npx and CLI modes require Node.js 22.19 or later.",docs:"For detailed documentation, visit docs.chatlab.fun."}},sH={lock:{title:"App Lock",desc:"Protect ChatLab with a 4-digit PIN",statusOn:"Enabled",statusOff:"Disabled",disableBtn:"Disable App Lock",disableConfirm:"Disable app lock? Your current PIN will be deleted.",manualLock:"Lock Now"},password:{titleSetup:"Set PIN & Enable App Lock",titleChange:"Change PIN",labelOld:"Current PIN",labelNew:"New PIN",labelConfirm:"Confirm New PIN",btnEnable:"Enable",errorInvalidPin:"PIN must be exactly 4 digits",errorMismatch:"PINs do not match",errorSameAsOld:"New PIN must differ from current PIN",errorFailed:"Operation failed, please try again"},autoLock:{title:"Auto Lock",idleLabel:"Auto lock after idle timeout",startupLabel:"Require unlock on startup"},lockScreen:{titleLocked:"ChatLab is Locked",placeholderPassword:"Enter 4-digit PIN",btnUnlock:"Unlock",verifying:"Verifying...",errorService:"Unlock failed, please try again",errorWrongPassword:"Incorrect PIN",errorTooManyAttempts:"Too many attempts. Try again in {seconds} seconds"}},iH={title:UB,tabs:GB,basic:YB,navigation:KB,defaultModel:XB,aiConfig:JB,storage:QB,ai:ZB,aiPrompt:eH,about:tH,aiPreprocess:nH,desensitize:aH,api:rH,mcp:oH,security:sH},lH="Explore New Chat Memories",cH={file:"File Import",api:"API Import",cli:"CLI Import",autoSyncTitle:"Automatic Sync",autoSyncDescription:"Let ChatLab periodically pull new chat records from an external data source.",autoSyncButton:"Configure Sync",apiPushTitle:"API Push",apiPushDescription:"Let third-party tools, plugins, or scripts write through the local API.",apiPushButton:"Configure API",agentImportTitle:"Import with an AI Agent",agentImportDescription:"Install the official Skill to import chat records automatically.",manualCliTitle:"Use the CLI Manually",manualCliDescription:"Ideal for terminal workflows, batch scripts, and repeatable automation.",copyCommand:"Copy command",viewDocs:"View documentation"},uH={viewExample:"Try a Demo",downloading:"Downloading demo data...",importing:"Importing demo data...",failed:"Failed to load demo data. Please check your network and try again."},dH={title:"Database upgrade required",description:"{count} database(s) need to be upgraded for new features.",note:"The upgrade usually takes only a few seconds and won't lose any data.",upgradeContent:"Upgrade content:",upgradeNow:"Upgrade Now",upgrading:"Upgrading...",failed:"Migration failed",partialFailed:"Some databases failed to upgrade",errorHint:"This is usually caused by corrupted database files. Please delete the failed sessions from the sidebar and re-import them.",close:"Close",retry:"Retry"},fH={title:"Select chats to import",scanning:"Scanning chat list...",scanFailed:"Scan failed",retry:"Retry",selectAll:"Select all",chatCount:"{count} chats",selected:"{count} selected",messageCount:"{count} messages",memberCount:"{count} members",empty:"Empty chat",import:"Import ({count})",noChats:"No chats found"},pH={title:"Select Chat Format",hint:"Unable to auto-detect the file format. Please manually select the corresponding chat format.",manualSelect:"Select format manually",confirm:"Import with this format"},hH={export:"Getting Started"},mH={website:"Website",terms:"Terms of Use"},gH={title:"Changelog",subtitle:"View all version updates",latest:"Latest",current:"Current",total:"{count} versions in total",close:"Close",disableAutoOpen:"Don't open automatically after updates",loadError:"Failed to load changelog",retry:"Retry",types:{feat:"Features",fix:"Bug Fixes",refactor:"Refactors",docs:"Docs",chore:"Other",style:"Style",ci:"CI"}},vH={tagline:lH,tabs:cH,import:{dropHint:"Drop to import files",clickHint:"Click to select or drag chat records to import",multipleHint:"Multiple files can be selected or dragged at once",selectFiles:"Select chat record files",selectFolder:"Select export folder",importFolder:"Import Folder",chatRecords:"Chat Records",allFiles:"All Files",progress:{detecting:"Detecting format...",reading:"Reading file...",parsing:"Parsing messages...",saving:"Saving to database...",indexing:"Building search index...",done:"Import complete",error:"Import interrupted"},processed:"{count} messages processed",viewLog:"View import log",cannotReadPath:"Cannot read file path",errors:{no_file_selected:"No file selected",import_failed:"Import failed",import_in_progress:"Another import is already in progress. Please try again later.",unrecognized_format:"Unrecognized file format",no_messages:"No messages parsed. Please check if the file format is correct.",no_chat_selected:"No chat selected",archive_single_file_required:"Import archive files one at a time",archive_unsupported:"This archive format is not supported",archive_encrypted:"Encrypted archives are not supported",archive_corrupt:"The archive is corrupt or incomplete",archive_unsafe_path:"The archive contains an unsafe file path",archive_limit_exceeded:"The archive exceeds the safe processing limit",google_chat_structure_not_found:"No Google Chat export data was found",google_chat_conversation_incomplete:"A Google Chat conversation is missing required files",import_source_not_found:"The import source no longer exists. Select the archive again.",import_source_expired:"The import source expired. Select the archive again.",actionHint:"You can try manual format matching or view the log below:"},diagnostics:{format:"Format: ",received:"Received: ",written:" / Written: ",skipped:" / Skipped: "},outcome:{created:"New session created",ambiguous:"Multiple existing sessions matched, so they were not merged and a new session was created",incremental:"Added {newCount} messages and skipped {duplicateCount} duplicates",unchanged:"Already imported; no new messages"},batch:{importing:"Batch importing",progressCount:"{current} of {total}",cancel:"Cancel import",waiting:"Waiting",skipped:"Skipped",success:"Import successful",created:"New session created",ambiguous:"Multiple candidates matched; created a new session",incremental:"Added {newCount}; skipped {duplicateCount} duplicates",unchanged:"Already imported; no new messages",completed:"Batch import completed",summary:"{success} succeeded, {failed} failed, {cancelled} skipped",view:"View"},options:{mergeImport:"Merge Import",mergeImportHint:"Multiple files will be merged into one chat record"},merge:{importing:"Merging",parsing:"Parsing files...",merging:"Merging messages...",completed:"Merge completed",completedHint:"{count} files merged",messageCount:"{count} messages",failed:"Merge failed"}},demo:uH,migration:dH,chatSelector:fH,formatSelector:pH,quickStart:hH,footer:mH,changelog:gH},yH={loading:"Loading analysis data...",loadError:"Unable to load session data"},bH={loading:"Loading analysis data...",loadError:"Unable to load session data"},wH={overview:"Overview",insights:"Insights",ranking:"Rankings",aiChat:"AI Chat",memory:"Memory",lab:"Lab",debug:"Debug"},_H={sqlTables:"SQL Tables",basicTools:"Basic Tools",tableBrowser:{chatDb:"Chat DB",aiDb:"AI Chat DB",rowCount:"{count} rows",page:"Page {current} / {total}",refresh:"Refresh",noData:"No data",editRow:"Edit",deleteRow:"Delete Row",confirmDelete:"Are you sure you want to delete this row?",allConversations:"All Conversations",copyCell:"Copy Selected",copyRow:"Copy Row (JSON)",clearDebugContext:"Clear Debug Context",confirmClearDebug:"Clear debug_context for all messages? This cannot be undone."}},kH={tabs:{records:"Chat Memories"}},CH={viewChatRecord:"View Chat History",semanticIndex:"Semantic Index",incrementalImport:"Import More",memberManagement:"Manage Member",more:"More"},SH={title:"Append Chat Records",description:'Select chat record file to append to "{name}". Duplicates will be automatically removed.',homeAutoImportHint:"The home page now supports automatic incremental imports. When you have new chat records, simply drag them onto the home page.",dropHint:"Click to select or drop file here",analyzing:"Analyzing file...",totalInFile:"Total in file",newMessages:"New messages",duplicates:"Duplicates",noNewMessages:"No new messages found, all messages already exist",importing:"Importing...",import:"Import {count} messages",success:"Import successful",successDetail:"Successfully appended {count} new messages",failed:"Import failed"},xH={insights:{typeAnalysis:"Types",timeAnalysis:"Time",topic:"Topics",relationship:"Relationship",journey:"Journey",languagePreference:"Language Preference"},ranking:{overall:"Overall",interaction:"Interaction Ranking",proximity:"Proximity Ranking",keyword:"Keywords"},quotes:{hotRepeat:"Hot Repeats",catchphrase:"Catchphrases"},member:{nicknameHistory:"Nickname History"}},AH={messageTypeDistribution:"Message Type Distribution",memberDistribution:"Member Activity Distribution",memberRanking:"Member Ranking",others:"Others",memberComparison:"Member Comparison",statCards:{dailyAvgMessages:"Daily Avg Messages",messagesCount:"{count} msgs",daysCount:"{count} days total",imageMessages:"Image Messages",imagesCount:"{count} images",peakHour:"Peak hour:",mostActiveWeekday:"Most Active Day",messagesOnDay:"{count} messages",weekendActivity:"Weekend Activity",weekendRatio:"Weekend message ratio",mostActiveDate:"Most Active Date",consecutiveStreak:"Streak",daysStreak:"{count} days",longestStreak:"Longest active streak",activityRate:"Activity Rate",activeDaysRatio:"Days with messages",lateNightChat:"Late Night Chat",lateNightRatio:"{ratio}% of all messages"},dailyTrend:{title:"Daily Message Trend"},identity:{privateChat:"Private",groupChat:"Group",totalMessages:"Total Messages",durationDays:"Duration Days",activeDays:"Active Days",dailyAvgMessages:"Daily Avg"},tools:"Quick Tools"},PH={miniMode:"Mini mode",exitMini:"Exit mini mode"},MH={title:"Export Records",selectOutputDir:"Select Output Directory",format:"Format"},TH={timeRange:"Time Range",allTime:"All Time",today:"Today",lastWeek:"Last 7 Days",lastMonth:"Last Month",last3Months:"Last 3 Months",lastYear:"Last Year",customTime:"Custom",exportSuccess:"Export successful",exportFailed:"Export failed",exportPreparing:"Preparing export..."},IH={groupChat:yH,privateChat:bH,tabs:wH,debug:_H,memory:kH,tooltip:CH,incremental:SH,subTabs:xH,overview:AH,toolsPanel:PH,messageExport:MH,filter:TH},DH={searchPlaceholder:"Search conversation name",searchResult:"Found {count} / {total}",ownerIssues:"{count} conversations have not set who you are",ownerStatus:{missing:"Not set",unresolved:"Needs review"},noSearchResult:"No matching chat records found",selectAll:"Select All",shiftClickHint:"Hold Shift to select a range",selected:"{count} selected",empty:"No chat records",delete:"Delete Selected",confirmTitle:"Confirm Delete",confirmMessage:"Are you sure you want to delete {count} selected chat record(s)? This action cannot be undone.",deleting:"Deleting...",columns:{name:"Name",platform:"Platform",owner:"Me",messages:"Messages",summaries:"AI Summaries",aiChats:"AI Chats",importedAt:"Imported"},clickToEdit:"Click to edit name",merge:"Merge Selected",mergeHint:"Select at least 2 chat records of the same chat type to merge",mergeConfirmTitle:"Merge Chat Records",mergeConfirmMessage:"This will merge {count} selected chat records into a new merged record.",deleteOriginalsLabel:"Delete original records after merge",mergeRiskWarning:"Critical warning: deletion cannot be undone, and cross-platform context differences may cause semantic confusion. Please back up your original data before continuing.",mergeSteps:{exporting:"Exporting chat records...",parsing:"Parsing files...",checking:"Checking conflicts...",merging:"Merging data...",cleaning:"Cleaning up temp files..."},mergeSuccess:"Successfully merged {count} chat records",mergeError:"Merge failed: {error}",mergedSuffix:"Merged"},EH={batchManage:DH},$H={name:"DeepSeek"},RH={name:"Qwen"},LH={name:"Gemini"},OH={name:"MiniMax"},NH={name:"GLM"},FH={name:"Kimi"},qH={name:"Doubao"},BH={name:"SiliconFlow"},HH={name:"Groq"},VH={name:"OpenRouter"},zH={name:"xAI"},jH={deepseek:$H,qwen:RH,gemini:LH,minimax:OH,glm:NH,kimi:FH,doubao:qH,siliconflow:BH,groq:HH,openrouter:VH,xai:zH,"openai-compatible":{name:"Third-party"}},WH={chatExplorer:"Chat Explorer",sqlLab:"SQL Lab"},UH={scrollToBottom:"Back to Bottom",history:{loadEarlier:"Load earlier messages"},input:{placeholderWithSlash:"Enter your question, or type / for skills and {'@'} for members...",placeholderWithActiveSkill:"/{name} selected. Enter your specific question...",slashHint:"Type / to pick a skill",useSkill:"Choose Skill",mentionHint:"Type {'@'} to pick a member",mentionEmpty:"No matching members",mentionEmptyHint:"Search by nickname, alias, or account",slashEmpty:"No matching skills",slashEmptyHint:"Open Skill Manager to import built-in skills or create a custom one",manageSkills:"Manage Skills",previewTagsLabel:"Tags",previewToolsLabel:"Tools",previewUnavailable:"No skill prompt available for preview",quickAsk:"Quick Ask",editQuickAsk:"Edit Quick Ask",send:"Send",needMoreThanSkill:"Selecting a skill alone is not enough. Enter a specific question.",needQuestion:"Enter a question before sending"},fork:{success:"Conversation forked",failed:"Failed to fork conversation"},backgroundTask:{runningShort:"Running",runningTitle:"AI is still thinking",runningDescription:"The previous question is still running. Please wait for it to finish or stop it first.",blockedAction:"The current answer is still being generated. Wait for it to finish or stop it first.",return:"Return"},message:{copy:{tooltip:"Copy Markdown",success:"Markdown copied to clipboard",failed:"Failed to copy Markdown"},process:{label:"Process",processing:"Processing",processed:"Processed",duration:"Took {duration}",working:"Working",planning:"Planning",failed:"Incomplete",step:"{count} step",steps:"{count} steps"},toolResult:{view:"View result",title:"Tool result sent to AI",copy:"Copy result",copySuccess:"Tool result copied",copyFailed:"Failed to copy tool result",displayTruncated:"Only a truncated version of this historical result was saved; the AI may have seen more content in the original turn."},edit:{tooltip:"Edit and regenerate",submit:"Send",overwriteSubsequent:"Overwrite all subsequent messages"},fork:{tooltip:"Fork conversation from here"},chart:{expand:"Open large chart",empty:"No data",rows:"{count} rows",truncated:"Truncated"},generating:"Generating response...",summary:{label:"Context Summary",info:"Previous conversation has been compressed into a summary to save context space"},plan:{label:"Analysis Plan",evidenceNeeded:"Evidence needed",suggestedTools:"Suggested tools",successCriteria:"Success criteria",noTools:"None"},think:{labels:{think:"Thinking",analysis:"Analysis",reasoning:"Reasoning",reflection:"Reflection",planValidation:"Generate plan",other:"Thinking ({tag})"},loading:"Thinking",duration:"Took {seconds}s"},toolParams:{keywords:"Keywords",time:"Time",getMessages:"Get {count} messages",limit:"Limit {count}",contextWithMessages:"Context of {contextSize} messages around {msgCount} messages",context:"{size} messages context",topMembers:"Top {count} members",search:"Search",getMemberList:"Get member list",memberId:"Member ID",timeStats:{hourly:"Hourly",weekday:"By Weekday",daily:"Daily"}}},thinking:{processingResult:"Processing result",called:"Called:",analyzing:"Analyzing question...",compressing:"Compressing context...",toolProgress:{checking_capabilities:"Checking search capabilities",semantic_search:"Running semantic search",keyword_search:"Running keyword search",assembling_evidence:"Assembling evidence"}},statusBar:{model:{notConfigured:"AI Not Configured"},agent:{label:"Agent",contextTokens:"Context",phase:{compressing:"Compressing",preparing:"Preparing",thinking:"Thinking",tool_running:"Running tool",responding:"Responding",completed:"Completed",aborted:"Stopped",error:"Error"},phaseShort:{compressing:"Compress",preparing:"Prep",thinking:"Think",tool_running:"Tool",responding:"Reply",completed:"Done",aborted:"Stop",error:"Err"}},thinking:{title:"Thinking level",tooltip:"Set the thinking intensity for this model",level:{default:"Default",off:"Off",minimal:"Minimal",low:"Low",medium:"Medium",high:"High",xhigh:"Max",auto:"Auto"}},tokenUsageTitle:"Total token usage",cacheHit:"Cache hit",export:{label:"Export",title:"Export current conversation"},log:{label:"Logs",title:"Open current AI log file",openFailed:"Failed to open log",openFailedDesc:"Please try again later"}},conversation:{newChat:"New Chat",newConversation:"New Chat",empty:"No history yet",startNew:"Start New Chat",titlePlaceholder:"Enter title...",group:{last7Days:"Last 7 Days",last30Days:"Last 30 Days"},rename:"Rename",copyId:"Copy ID",delete:"Delete",export:{createdAt:"Created",user:"User",assistant:"AI Assistant",noMessages:"No messages to export"}},error:{title:"Processing Failed",detail:"Error Details",viewDetail:"View Details",requestUrl:"Request URL",statusCode:"Status Code",responseBody:"Response Body",responseHeaders:"Response Headers",requestBody:"Request Body",name:"Error Name",message:"Error Message",stack:"Stack Trace",cause:"Error Cause",provider:"Provider",copyAll:"Copy All",copied:"Copied to clipboard",unknown:"Unknown error"},dataSource:{title:"Data Source",keywords:"Keywords:",empty:"No data",emptyHint:"Related records will appear here after asking questions",totalRecords:"{count} records",loadMore:"Load More"},evidence:{title:"Evidence",query:"Question",criteria:"Criteria",empty:"No conclusive evidence found",totalSources:"{count} sources",mode:{auto:"Auto",hybrid:"Semantic + Keyword",semantic:"Semantic",keyword:"Keyword"},group:{included:"Counted",excluded:"Excluded",uncertain:"Uncertain"},warning:{criteria_missing:"No criteria provided; grouping is conservative",keywords_missing_for_hybrid:"No keywords provided; fell back to semantic-only search",keywords_required_for_keyword_mode:"Keyword mode requires keywords",semantic_unavailable:"Semantic index unavailable; used keyword search instead",keyword_unavailable:"Keyword search unavailable",semantic_partial:"Semantic results may be incomplete"}}},GH={editor:{errorEmptySQL:"Please enter an SQL statement",placeholder:"Enter SQL query...",tip:"Tip: Double-click column names to insert into SQL",history:"History",generateAndRun:"Generate and Run",switchToSQLMode:"Switch to SQL Mode",switchToPromptMode:"Switch to Prompt Mode",run:"Run"},schema:{tables:"Tables",doubleClickToInsert:"Double-click to insert into SQL",primaryKey:"Primary Key"},result:{queryError:"Query Error",rows:"{count} rows",readableTime:"Readable time",viewChat:"View chat history",summarize:"Summarize",pageSize:"Per page",emptyResult:"Query returned no results",initialState:"Enter SQL and run to see results",initialHint:"Only read-only queries are supported (SELECT / WITH). Add LIMIT for better performance",summaryTitle:"AI Result Summary",analyzing:"AI is analyzing results...",errorSummary:"Summary failed"},generate:{placeholder:"E.g.: Find top 10 members by message count, count daily messages, find messages containing 'keyword'...",errorEmptyPrompt:"Please enter your query requirement",errorGenerate:"AI generation failed",errorTokenLimit:"Model output reached token limit without generating a complete response (thinking may have consumed too many tokens)",aiOutput:"AI Output",thinking:"Thinking…",thinkingProcess:"Thinking process",waitingAI:"Waiting for AI response...",defaultPromptPrivate:"For the last 1 year of this private chat, compare both participants by total messages, message share, active days, average messages per active day, first message time, and latest message time; sort by total messages desc.",defaultPromptGroup:"For the last 1 year of this group chat, rank members by total messages, message share, active days, average messages per active day, and text-message ratio; include display names and return top 20 by total messages desc."},history:{title:"AI Generation History",execute:"Execute",empty:"No history records",justNow:"Just now",minutesAgo:"{count} min ago",hoursAgo:"{count} hr ago",today:"Today"}},YH={selector:{title:"Choose an assistant to start",heroTitlePrefix:"Chat with",heroTitleSuffix:"",subtitle:"Each assistant specializes in different types of analysis tasks. Pick the one that best fits your needs.",noAssistants:"No assistants available for this context",manage:"Manage Assistants",addNew:"New Assistant"},config:{viewTitle:"View Config",createTitle:"New Assistant",editTitle:"Assistant Config",betaWarning:"This feature is in beta. Configuration logic may change, so please back up your prompts.",tabs:{basic:"Basic",tools:"Tools"},name:"Name",systemPrompt:"System Prompt",chatType:"Chat Type",chatTypeAll:"All",chatTypeGroup:"Group",chatTypePrivate:"Private",locale:"Language",localeHint:"None selected = all languages",presetQuestions:"Preset Questions",addQuestion:"Add a question...",coreTools:"Core Tools",coreToolsHint:"Essential data retrieval tools, always enabled",analysisTools:"Analysis Tools",analysisToolsHint:"Enable on demand. Only checked tools will be available to AI",selectAll:"Select All",deselectAll:"Deselect All",resetDefault:"Reset to Default",create:"Create"},market:{title:"Assistant Manager",tabs:{local:"Local",market:"Market"},localHint:"Manage imported assistants, configure or delete",marketHint:"Browse the assistant market, import to use and customize",default:"Default",reimport:"Re-import",imported:"Imported",import:"Import",importing:"Importing...",importSuccess:"Import successful",importFailed:"Import failed",viewConfig:"View Config",duplicate:"Duplicate",addAssistant:"Add Assistant",noLocal:"No imported assistants yet",noCatalog:"No assistants available, please check your network",loading:"Loading...",loadFailed:"Failed to load, please check your network",retry:"Retry"},fallbackName:"Assistant",duplicateSuffix:" (Copy)",upgrade:{title:"Default assistant update available",message:"Your current default assistant is based on an older template and contains custom changes. ChatLab will save it as “{backupName}” before switching to the latest version.",backupName:"{name} (Legacy Backup)",skipHint:"If skipped, ChatLab will not remind you again until the template is updated.",skip:"Skip",skipFailed:"Failed to skip update",confirm:"Back Up and Update",success:"Default assistant updated",successDescription:"The previous configuration was saved as “{name}”.",failed:"Update failed"},toast:{loadFailed:"Failed to load",createSuccess:"Created successfully",createFailed:"Failed to create",saveSuccess:"Saved successfully",saveFailed:"Failed to save",resetSuccess:"Reset to default",resetFailed:"Failed to reset",unknownError:"Unknown error"},builtinToolDesc:{get_chat_overview:"Get chat overview information",search_messages:"Search chat messages",deep_search_messages:"Deep search chat messages",get_recent_messages:"Get recent messages",get_message_context:"Get message context",get_conversation_between:"Get conversation between two members",get_members:"Get members",get_schema:"Inspect database schema",get_member_stats:"Get member statistics",get_member_name_history:"Get member name history",get_time_stats:"Get time statistics",get_segment_messages:"Get segment messages",get_segment_summaries:"Get segment summaries",message_type_breakdown:"Message type distribution",peak_chat_hours_by_member:"Member peak hours",member_activity_trend:"Member activity trend",silent_members:"Silent member detection",reply_interaction_ranking:"Reply interaction ranking",mutual_interaction_pairs:"Mutual interaction pairs",member_message_length_stats:"Message length stats",unanswered_messages:"Unanswered messages",daily_active_members:"Daily active members",conversation_initiator_stats:"Conversation initiators",activity_heatmap:"Activity heatmap",response_time_analysis:"Response time analysis",keyword_frequency:"Keyword frequency",render_chart:"Generate dynamic chart",semantic_search_current_chat:"Search chat history"}},KH={config:{createTitle:"New Skill",editTitle:"Skill Config",chatScopeAll:"All",chatScopeGroup:"Group",chatScopePrivate:"Private",rawEditorHint:"Edit the full skill Markdown file (with YAML frontmatter)",create:"Create",save:"Save"},market:{title:"Skill Manager",tabs:{local:"Local",market:"Market"},localHint:"Manage imported skills, configure or delete",marketHint:"Browse the skill market, import to use and customize",reimport:"Re-import",imported:"Imported",import:"Import",importing:"Importing...",importSuccess:"Import successful",importFailed:"Import failed",noLocal:"No imported skills yet",noCatalog:"No skills available, please check your network",addSkill:"Create Custom Skill",loading:"Loading...",loadFailed:"Failed to load, please check your network",retry:"Retry"},active:{label:"Manually Invoked Skill: {name}"}},XH={toolTest:{coreTools:"Core Tools",analysisTools:"Analysis Tools",parameters:"Parameters",arrayPlaceholder:"Separate values with commas",execute:"Execute",cancel:"Cancel",elapsed:"Elapsed {ms}ms",result:"Result",truncated:"Result too large, truncated. Try reducing the limit parameter for complete data."}},JH={tab:WH,chat:UH,sqlLab:GH,assistant:YH,skill:KH,lab:XH},QH={loading:"Analyzing word frequency...",stats:{wordsLabel:"Total words",clickHint:"Note: Click a word in the cloud to view related messages"},config:{maxWords:"Max words",sizeScale:"Font size",userFilter:"User filter",posFilter:"POS filter",enableStopwords:"Filter stopwords",dict:"Dictionary"},size:{small:"S",medium:"M",large:"L",xlarge:"XL"},posFilter:{all:"All",meaningful:"Meaningful",custom:"Custom",customHint:"Custom POS",selectMeaningful:"Meaningful",selectAll:"All",clearAll:"Clear"},empty:{title:"No word cloud data",description:"Not enough text messages to generate a word cloud with current filters"},dict:{zhCN:"Simplified Chinese",zhTW:"Traditional Chinese",download:"Download dictionary","download_zh-CN":"Download Simplified Chinese dict","download_zh-TW":"Download Traditional Chinese dict",needDownload:"Word cloud is shown with the built-in tokenizer. Download a Chinese dictionary for more accurate segmentation.",downloadHint:"~8MB",downloadSuccess:"Dictionary downloaded successfully",downloadFailed:"Dictionary download failed",promptTitle:"Traditional Chinese Dictionary",promptDescription:"We detected you're using Traditional Chinese. For best word cloud results, a Traditional Chinese dictionary is recommended. Download now? (~8MB)",promptDownload:"Download now",promptLater:"Maybe later"}},ZH={title:"Keyword Ranking",description:"Analyze keyword usage rankings in chats, customize your own lists",countTemplate:"{count} members",templateLabel:"Templates:",newTemplate:"+ New",searchPlaceholder:"Type to search",clear:"Clear",templateHint:"* Right-click template to edit or delete",keyword:"Keyword",ranking:" Ranking",multiColorMode:"Multi-color",times:"{count}x",timesWithPercent:"x ({percent}%)",loading:"Analyzing data...",empty:"No data available. Try adding keywords or switching templates.",contextMenu:{edit:"Edit",delete:"Delete"},modal:{createTitle:"Create Template",editTitle:"Edit Template",templateName:"Template Name",templateNamePlaceholder:"e.g. Positive",keywords:"Keywords",keywordPlaceholder:"Press Enter to add",update:"Update"},templates:{laugh:{name:"Laughter",keywords:"lol,lmao,haha,rofl,dying,hilarious",description:"Track happiness index in the group"},sad:{name:"Sadness",keywords:"sad,depressed,tired,exhausted,ugh,sucks,hate",description:"Track negative emotions in the group"},praise:{name:"Praise",keywords:"awesome,amazing,great,nice,cool,impressive,wow,goat",description:"Find members who give the most compliments"},slacker:{name:"Slacking",keywords:"bored,slacking,hungry,sleepy,friday yet,done for today,hate mondays",description:"Find members who want to leave work most"},gossip:{name:"Gossip",keywords:"omg,no way,really,spill,tea,wtf,insane,crazy",description:"Find members who love gossip the most"},polite:{name:"Polite",keywords:"thanks,please,sorry,appreciate,welcome,excuse me,thank you",description:"Find the most polite members"},curious:{name:"Questions",keywords:"why,how,what,confused,help,anyone know",description:"Find members who ask the most questions"}}},eV={title:"Hot Repeats",loading:"Loading repeat data...",description:"Content with most participants in single repeat chain",countTemplate:"{count} hot repeats",people:"{count} ppl",times:"{count}x",viewChat:"View chat history",empty:"No repeat data available"},tV={heroPrefix:"Analyzed",heroMiddle:"messages,",heroMiddleSecond:"yielding",heroSuffix:"unique words",topTopicsPrefix:"You love talking about:",hotTopic:"Hot Topic",hotTopicDesc:"Appeared {count} times",richness:"Lexical Diversity",richnessValue:"{value}%",richnessDesc:"Unique {unique} / Total {total}",chatStyle:"Chat Style",styleEncyclopedia:"Encyclopedia",styleEncyclopediaDesc:"Noun-heavy, loves discussing people, places & things",styleAction:"Action-Oriented",styleActionDesc:"Verb-heavy, loves discussing what to do",styleExpressive:"Expressive",styleExpressiveDesc:"Adjective-heavy, rich in emotional expression",styleBalanced:"Balanced",styleBalancedDesc:"Diverse topics, well-rounded conversations",expressionStyle:"Expression Style",expressionCasual:"Casual",expressionCasualDesc:"Short words, relaxed and informal",expressionFormal:"Formal",expressionFormalDesc:"Elaborate words, precise expression",expressionMixed:"Mixed",expressionMixedDesc:"A blend of casual and formal",watermark:"Topic Profile",sharedTopics:"Shared Topics"},nV={title:"Group Catchphrases",description:"See each member's most characteristic repeated phrases",memberTitle:"{name}'s Catchphrases",memberDescription:"Rank this member's most repeated phrases by frequency",loading:"Analyzing catchphrases...",times:"{count}x",memberCount:"{count} members",phraseCount:"{count} catchphrases",viewChat:"View related messages",empty:{title:"No catchphrase data"}},aV={loading:"Analyzing language preferences...",empty:"Not enough text messages for language analysis",card:{diversityTitle:"Lexical Depth",diversityDesc:"Unique word ratio",styleTitle:"Chat Style",styleDesc:"Expression style based on POS distribution",punctTitle:"Punctuation Style",punctDesc:"Most used punctuation personality",watermark:"Language Preference",radarFactual:"Factual",radarActive:"Active",radarDescriptive:"Descriptive",radarAffable:"Affable",radarIntense:"Intense",radarNoun:"Noun",radarVerb:"Verb",radarAdj:"Adjective",radarModal:"Modal",radarAdv:"Adverb",topCatchphrases:"Top Catchphrases",languageProfiles:"Language Profiles"},catchphrasePK:{title:"Catchphrase Battle",sharedCount:"{count} shared catchphrases",hint:"Click to view messages. Pink outlines mark shared catchphrases."},pos:{title:"POS Portrait",styleEncyclopedia:"Encyclopedia",styleAction:"Action-oriented",styleExpressive:"Expressive",styleBalanced:"Balanced"},modal:{title:"Modal Particles",toneSoft:"Soft & Warm",toneCurious:"Curious",toneCasual:"Casual",toneCalm:"Calm & Steady",toneMixed:"Mixed Style",empty:"No modal particle data"},punctuation:{title:"Punctuation Personality",none:"No punct.",personalityDeep:"Deep Thinker",personalityPassionate:"Passionate",personalityCurious:"Curious Mind",personalityCheerful:"Cheerful",personalityFreeflow:"Free-flow",personalityPrecise:"Precise",empty:"No punctuation data"}},rV={wordcloud:QH,keywords:ZH,hotRepeat:eV,topicProfile:tV,catchphrase:nV,languagePreference:aV},oV={title:"Who Are You?",subtitle:"Select your identity in this chat",description:"Your messages will appear on the right side of the chat viewer, and AI conversations can identify you for more accurate analysis. Other chats from the same platform will be filled in automatically.",searchPlaceholder:"Search members",noMatch:"No matching members found",empty:"No member data",later:"Later",notInConversation:"I'm not in this conversation",save:"Save",clear:"Clear current selection",saved:"Your identity has been set",appliedToOthers:"Automatically applied to {count} chats from the same platform",saveFailed:"Failed to set identity",currentOwner:"I am: {name}",choose:"Choose who I am",change:"Change",helper:"Helps AI identify you in conversations for more accurate analysis"},sV={title:"Group Member Management",description:"{count} members. Add aliases or remove members",searchPlaceholder:"Search nickname, account name, ID or alias",noMatch:"No matching members found",empty:"No member data available",loadError:"Failed to load members. Please try again",table:{accountName:"Account Name",groupNickname:"Group Nickname",messageCount:"Messages",lastMessageTime:"Last Message",customAlias:"Custom Aliases",actions:"Actions"},aliasPlaceholder:"Press Enter to add",delete:"Delete",deleteSelected:"Delete Selected",mergeSelected:"Merge Selected",selectedCount:"{count} members selected",pagination:"Showing {start} - {end} of {total} members",tip:"Tip: Adding aliases helps identify chat participants and improves search and AI analysis accuracy.",mergeModal:{title:"Merge Members?",content:"Merge {source} ({sourceCount} messages) into {target} ({targetCount} messages). By default, the merged name keeps the member with more messages.",hint:"This action cannot be undone. All messages from the merged member will be reassigned to the kept member.",cancel:"Cancel",confirm:"Confirm Merge"},batchDeleteModal:{title:"Delete Selected Members?",content:"This will delete {count} selected members and their {messageCount} messages. This action cannot be undone."},modal:{title:"Delete Member?",content:"This will delete member {name} and their {count} messages. This action cannot be undone.",cancel:"Cancel",confirm:"Confirm Delete"}},iV={note:"Note: QQ's legacy client can export chat history as txt format, which provides the most accurate nickname history",title:"Nickname History",loading:"Loading...",hasChanges:"{count} members have changed nicknames",noChanges:"No nickname changes",current:"Current",empty:"No members have changed their nicknames",loadingText:"Loading nickname history..."},lV={loading:"Analyzing {'@'} interaction data...",rankingTitle:"{'@'} Interaction Ranking",rankModes:{mentioners:"Sent {'@'}",mentioned:"Received {'@'}"},topMentionersDescription:"Ranked by {'@'} mentions sent",topMentionedDescription:"Ranked by {'@'} mentions received",times:"times",emptyTitle:"📱 {'@'} Interaction Analysis",empty:"No {'@'} interaction data available"},cV={ownerPrompt:oV,list:sV,nicknameHistory:iV,relationships:lV,private:{title:"Chat Members",description:"{count} members. Add aliases for search and AI analysis"}},uV={title:"Chat Record Viewer"},dV={indexMissingTitle:"No conversation summary index yet",indexMissingDescription:"You can still read the original messages. Generate an index to organize summaries into conversation segments; this does not call AI automatically.",generateIndex:"Generate index",indexGenerated:"Generated {count} conversation segments",indexGenerationFailed:"Failed to generate conversation index",indexLoadFailedTitle:"Failed to load conversation summary index",indexLoadFailedDescription:"You can still read the original messages. Retry loading; existing summaries will not be changed."},fV={loading:"Loading...",noMessages:"No messages",tryAdjustFilter:"Try adjusting the filter",loadingMore:"Loading more...",scrollUpForMore:"↑ Scroll up to load more",scrollDownForMore:"↓ Scroll down to load more"},pV={messageId:"Message ID",memberPlaceholder:"Member",keywordsPlaceholder:"Keywords, comma separated, Enter to search",startDate:"Start Date",endDate:"End Date",reset:"Reset",filter:"Filter"},hV={timeline:"Summaries",noSessions:"No summaries",generateSummary:"Summarize",updateSummary:"Update summary",summaryStale:"· Update needed",tooFewMessages:"Too few"},mV="Summary generation failed",gV="Unknown error",vV={title:"Batch Generate Summaries",trigger:"Batch",byRange:"By Range",byTime:"By Time",selectRange:"Select Range",rangeStart:"Earliest",rangeInfo:"About",sessionsUnit:"sessions",rangeEnd:"Latest",timeRange:"Select Time Range",today:"Today",yesterday:"Yesterday",week:"Last 7 days",month:"Last 30 days",custom:"Custom",found:"Found",hasSummary:"already summarized",needsUpdate:"need updates",tooFewMessages:"too few messages",pending:"Pending:",unit:"",noPending:"No sessions to generate",noSessions:"No sessions in this time range",checking:"Checking...",loading:"Loading...",progress:"Progress",session:"Session",statusSuccess:"Success",statusSkipped:"Skipped",statusFailed:"Failed",success:"Success:",failed:"Failed:",skipped:"Skipped:",start:"Start",stop:"Stop"},yV={title:"Topics",loadFailed:"Failed to load topics",preflightFailed:"Could not estimate the generation range",startFailed:"Could not start topic generation",actionFailed:"Topic task action failed",deleteFailed:"Failed to delete topics",emptyTitle:"No topics for this day",emptyDescription:"AI reads the conversation by calendar day and reconnects the same discussion when it interleaves with others or resumes later. Usage is consumed only when you start it.",batchSummarize:"Batch summarize",batchSummarizeTitle:"Batch summarize topics",summarizeDay:"Summarize this day's topics",createDescription:"Process through the last day in the chat from your selected starting point. You can pause and resume at any time.",start:"Start",noMessages:"No messages in range",updateDay:"Update day",pause:"Pause",resume:"Resume",progress:"{completed}/{total} days completed",progressBlock:"Analyzing source block {current}/{total} · {seconds}s elapsed",progressFinalizing:"Finalizing the day's topics · {seconds}s elapsed",stale:"Messages for this day changed. This is the last successful result; verify against the original messages until it is updated.",evidence:"Messages",deleteTitle:"Delete topics for this day?",deleteDescription:"This removes only the AI-derived result for this day, not the chat records. You can recreate it later.",range:{current:"From viewed day",currentDescription:"Process from {date} through the last chat day",custom:"Choose start date",customDescription:"Process from a selected date through the last chat day",today:"Start today",todayDescription:"Process messages from today only",year:"Start this year",yearDescription:"Process active days from this year to today",all:"Start from the beginning",allDescription:"Backfill from the earliest chat date"},estimate:{range:"{start} to {end}",days:"Active days",messages:"Messages",calls:"Est. calls"},status:{pending:"Waiting",running:"Organizing topics",paused:"Paused",completed:"Completed",failed:"Failed",cancelled:"Cancelled"},topicState:{active:"Active",closed:"Concluded"}},bV={viewContext:"View Context",replyTo:"Reply to",expandMessyContent:"Show full content",collapseMessyContent:"Collapse"},wV={drawer:uV,workspace:dV,messageList:fV,filter:pV,timeline:hV,summaryFailed:mV,summaryUnknownError:gV,batchSummary:vV,topics:yV,messageItem:bV},_V={rankingView:"Ranking",memberView:"Member View",matrixView:"Matrix View",modelSettings:"Model Settings",lookAhead:"Look Ahead",lookAheadDesc:"Messages to look ahead per sender",decaySeconds:"Time Decay (sec)",decaySecondsDesc:"Higher = distant messages matter more",applySettings:"Apply",noData:"No data",selectMember:"Select Member",selectMemberHint:"Select a member from the left",msgCount:"Messages",relationCount:"Relations",relationsByIntimacy:"Proximity Ranking",noRelations:"No relations",intimacy:"Proximity",interactionRanking:"Interaction Ranking",score:"Proximity",coOccurrence:"Co-occur",times:" times",totalMembers:"Total Members",totalMessages:"Total Messages",involvedMembers:"Involved",edgeCount:"Relations"},kV={typeDistribution:"Message Type Distribution",hourlyDistribution:"Hourly Distribution",weekdayDistribution:"Weekday Distribution",monthlyDistribution:"Monthly Distribution",yearlyDistribution:"Yearly Distribution",timeHeatmap:"Time Heatmap",heatmapHint:"Shows chat time patterns",calendarHeatmap:"Message Calendar",calendarHint:"Daily message distribution",calendarTooltipMessages:"Messages",lengthDetailTitle:"Short Messages (1-25 chars)",lengthDetailHint:"Per character",lengthGroupedTitle:"Length Range Distribution",lengthGroupedHint:"Grouped by 5",noTextMessages:"No text messages",noData:"No data",profile:{avgLengthUnit:"{count} chars/msg",textExpression:"Text Expression",textExpressionDesc:"Longest message {count} chars",mediaRichness:"Media Richness",shortMaster:"Short Msg Master",shortMasterDesc:"{count} msgs with ≤5 chars",essayLover:"Essay Lover",essayLoverDesc:"Messages with ≥{threshold} chars",typeDistribution:"Msg Types",heroLine1Prefix:"A total of",heroLine1Suffix:"messages exchanged"},typeCard:{watermark:"Type Report",nonTextPrefix:"Besides text,",nonTextImage:"images",nonTextEmoji:"emojis",nonTextVoice:"voice msgs",nonTextVideo:"videos",nonTextFile:"files",nonTextLink:"links",unitImage:"images",unitEmoji:"emojis",unitVoice:"voice msgs",unitVideo:"videos",unitFile:"files",unitLink:"links"},timeCard:{hourlyDistribution:"24h Distribution",watermark:"Time Report",heroDaysIn:"days,",heroDaysActive:"days active",heroAvgPrefix:"Average",heroAvgSuffix:"messages/day",personalityNightOwl:"Night Owl",personalityEarlyBird:"Early Bird",personalityLunchChat:"Lunch Chatter",personalityEveningChat:"Evening Talker",personalityDaytime:"Daytime Active",personalityEveryday:"Always On",personalityWeekend:"Weekend Active",personalityWeekday:"Weekday Active",peakRecord:"Peak Record",peakRecordDesc:"Max {count} msgs in a day",topHoursLabel:"Top Active Hours",peakWeekdayLabel:"Peak Weekday",weekendRatio:"Weekend Ratio",weekendRatioDesc:"Messages on weekends"},timeAnalysis:{memberTrendTitle:"Message Trend",memberTrendHint:"Monthly message volume by member"},typeAnalysis:{textDepthTitle:"Text Depth Analysis",textTotal:"Text Messages",avgLength:"Avg Chars",medianLength:"Median Length",maxLength:"Max Length",percentiles:"Length Percentiles",shortMessages:"Short(≤5 chars)",essayMessages:"Long(≥30 chars)"}},CV={layout:"Layout",circular:"Circular",force:"Force",directed:"Directed",reset:"Reset",graphHint:"{nodes} members, {links} interactions",noInteraction:"No mention interaction data"},SV={canvasLabel:"Group interaction relationship galaxy",loading:"Mapping group relationships...",loadFailed:"Failed to load the relationship galaxy",webglUnavailable:"The relationship galaxy is unavailable",webglUnavailableDescription:"Enable hardware acceleration or try an environment that supports WebGL.",emptyTitle:"Not enough interaction data",emptyDescription:"At least two members need replies, mentions, or nearby messages in this time range.",resetView:"Reset view",closeDetail:"Close member details",messageCount:"Group messages",relationshipScore:"Relationship strength",lastInteraction:"Last interaction",signalComposition:"Interaction signals",replies:"Replies",mentions:"Mentions",proximity:"Proximity",strongConnections:"Closest connections",connectionSignals:"{replies} replies · {mentions} mentions · {proximity} nearby",noConnections:"No direct connections to display"},xV={empty:{title:"No Relationship Data",description:"No sessions found in the selected time range."},trend:{title:"Initiative Trend",hint:"Blue line shows {name}'s monthly initiative ratio; 50% line is the balanced baseline"},hero:{totalSessionsPrefix:"You had",totalSessionsSuffix:"conversations in total",initiativePrefix:"",initiativeByPrefix:"of opening messages were started by",initiativeBySuffix:"",initiateTimes:"starts"},closerTitle:"Conversation Closer",closerHint:"Shows who sends the last message when a topic ends.",watermarkReport:"Relationship Report",monthFormat:"{month}/{year}",monthShortFormat:"{month}",iceBreaker:{title:"Ice Breaker",hint:"Times breaking silence after 24+ hours of inactivity"},responseLatency:{title:"Reply Speed",hint:"Average time to reply after the other person sends a message",seconds:"{n}s",minutesSeconds:"{m}m {s}s",hours:"{n}h",hoursMinutes:"{h}h {m}min"},perseverance:{title:"Perseverance",hintWithThreshold:"Times sending another message when the other person hasn't replied within {threshold}",thresholdMinutes:"{n} min"},trajectory:{title:"Interaction Timeline",description:"See how your interactions changed month by month",metrics:{activity:"Conversation Frequency",response:"Reply Speed",perseverance:"Follow-up Messages"},conversations:"Conversations",iceBreaks:"Restarts",keyMoments:"Key Months",activityPeak:"Busiest Month",activityPeakDetail:"{count} conversations",iceBreakPeak:"Most Restarts",iceBreakPeakDetail:"{count} conversation restarts",fastestResponse:"Fastest Replies",fastestResponseDetail:"{duration} average reply",showAll:"View All Months",hideAll:"Hide Monthly Data",month:"Month"}},AV={loadError:"Unable to load the chat journey",empty:"There are not enough messages to build a journey yet",hero:{prefix:"Your chat history spans",summary:"Messages were exchanged across {activeMonths} months and {activeDays} active days.",filteredSummary:"Within this range, messages were exchanged across {activeMonths} months and {activeDays} active days.",footprint:"Conversation footprint",monthCount:"{count} months in view",monthTooltip:"{month} · {count} messages"},metrics:{peakMonth:"Busiest month",activeMonths:"Active months",longestConversation:"Longest conversation",longestSilence:"Longest silence",messagesAndDays:"{messages} messages · {days} active days",monthsRatio:"{active} / {total} months",activeDays:"{count} active days in total",conversationDetail:"{date} · {count} messages",reopenedBy:"{name} spoke first afterward",reopened:"The conversation started again afterward",noIndex:"Conversation index unavailable",noSilence:"No silence longer than 24 hours"},years:{title:"Year by year",description:"Turn through the chapters left by each year of conversation",summary:"{messages} messages · {days} active days · {months} active months",quiet:"No messages were left this year",peak:"Peak month · {count} messages"},milestones:{title:"Key milestones",description:"Follow the moments that shaped this conversation",start:"Where it began",startDetail:"The first message in the available history",peak:"Busiest month",peakDetail:"{count} messages were exchanged this month",longestConversation:"Longest conversation",conversationDetail:"{duration} and {count} messages",longestSilence:"Longest silence",silenceRange:"{start} – {end}",silenceDetailWithMember:"After {duration}, {name} spoke first",silenceDetail:"The conversation resumed after {duration}",end:"Where the record stands",endDetail:"The latest message in the available history",filteredEndDetail:"The latest message within the selected range"},duration:{lessThanMinute:"Under 1 minute",minutes:"{count} min",hours:"{count} hr",hoursMinutes:"{hours} hr {minutes} min",days:"{count} days",daysHours:"{days} days {hours} hr",months:"{count} months",years:"{count} years",yearsMonths:"{years} years {months} months"},watermark:"Chat Journey"},PV={title:"Timeline View",description:"Message time distribution, active period trends and other visualizations"},MV={rankListPro:{fullRanking:"Full Ranking",memberCount:"{count} members"},rankList:{unit:""},nicknameHistory:{periodToNow:"{start} ~ Now",periodRange:"{start} ~ {end}",current:"Current",empty:"No nickname history"},listPro:{countTemplate:"{count} items",fullRanking:"Full Ranking",empty:"No data"}},TV={cluster:_V,message:kV,interaction:CV,groupRelationshipGalaxy:SV,relationship:xV,journey:AV,timeline:PV,charts:MV},IV="Keyword Filter",DV="Schemes",EV="Scheme Name",$V="Enter scheme name",RV="New Scheme",LV="New Scheme",OV="Delete",NV="Set as Default",FV="Default",qV="Keyword Filter",BV="No Filter",HV="Manage Schemes",VV="Add Filter Words",zV="Type and press Enter, separate with spaces or commas",jV="Add",WV="Filter Words",UV="Clear All",GV="No schemes yet. Click + to create one.",YV="No filter words. Add some above.",KV="Select or create a filter scheme",XV="{count} words filtered",JV="Close",QV={title:IV,schemeList:DV,schemeName:EV,schemeNamePlaceholder:$V,defaultSchemeName:RV,createScheme:LV,deleteScheme:OV,setDefault:NV,isDefault:FV,filterScheme:qV,noFilter:BV,manage:HV,addWords:VV,addWordsPlaceholder:zV,add:jV,wordList:WV,clearAll:UV,emptyScheme:GV,emptyWords:YV,selectOrCreate:KV,activeCount:XV,close:JV},ZV="Contacts",ez="{count} private chats imported",tz="Current active private chat count in this range is {count}. Contacts are enabled after importing at least 1 group chat, or once active private chats reach 5.",nz="No matching contacts",az="None",rz="Search contacts",oz="Score {value}",sz={"1y":"1Y","2y":"2Y","3y":"3Y","5y":"5Y",all:"All"},iz={total:"Contacts",friends:"Friends",nonFriends:"Groupmates"},lz={allPools:"All sources",friends:"Friends",nonFriends:"Groupmates"},cz={friends:"Friends",groupContacts:"Groupmates"},uz={friend:"Friend",manualFriend:"Friend · Manual",nonFriend:"Groupmate"},dz={pinned:"Pinned contacts",friends:"Friends",group_contacts:"Groupmates"},fz={contact:"Contact",status:"Type"},pz={recompute:"Recompute",markFriend:"Mark as friend",unmarkFriend:"Unmark friend",clearSearch:"Clear search",clearSelection:"Clear selection",openSourceSession:"Go to chat",viewSourceRecords:"View chat records",viewDetail:"View details for {name}"},hz={title:"Contact details",score:"Score",scoreHelp:"The score is used to sort contacts. A higher score means stronger interaction signals.",lastInteraction:"Last interaction",sources:"Source chats",sourceType:{private:"Private",group:"Group"},aliases:"Aliases",signals:"Interaction signals",emptyTitle:"Select a contact",emptyDescription:"Choose a contact on the left to view interaction metrics and source chats."},mz={privateMessages:"{count} private messages",privateMessagesLabel:"Private messages",activeMonths:"Active months",commonGroups:"Common groups",lastInteractionShort:"Recent",groups:"{count} common groups",coOccurrence:"Co-occurrences",replies:"Replies",groupSignals:"{count} co-occurrences"},gz={title:"Contacts may be stale",message:"Chat data changed. Contacts are updating in the background.",inline:"Contacts may be stale.",later:"Later"},vz={running:"Computing contacts: {current} / {total} sessions",updating:"Contacts may have changed. Recomputing.",failed:"Contact computation failed",retry:"Retry"},yz={recomputed:"Contacts recomputed",recomputeStarted:"Started computing contacts in the background",recomputeFailed:"Recompute failed",markFriendSucceeded:"Marked as friend",markFriendFailed:"Failed to mark friend",unmarkFriendSucceeded:"Friend mark removed",unmarkFriendFailed:"Failed to remove friend mark"},bz={title:ZV,subtitle:ez,disabled:tz,empty:nz,emptyValue:az,search:rz,score:oz,timeRange:sz,stats:iz,filters:lz,tabs:cz,pool:uz,group:dz,table:fz,actions:pz,detail:hz,metrics:mz,stale:gz,task:vz,toast:yz},wz="Interaction Graph",_z="Panoramic relationship graph",kz="People subpages",Cz="Search contacts",Sz="No relationship graph data",xz="Privacy mode",Az={"3d":"3D","2d":"2D"},Pz={panorama:"Panorama",close:"High affinity",friends:"Friends only"},Mz={"1y":"1 year","2y":"2 years","3y":"3 years","5y":"5 years",all:"All"},Tz={recompute:"Recompute",clearSearch:"Clear search",closeDetail:"Close details",backToPanorama:"Back to panorama",fitView:"Fit view",focusConnections:"Show only its connections"},Iz={nodes:"Nodes",edges:"Edges",communities:"Related groups",members:"Members"},Dz={friend:"Friend",manualFriend:"Friend · Manual",nonFriend:"Groupmate"},Ez={me:"Me",type:"Me",avatarText:"Me"},$z={running:"Computing interaction graph: {current} / {total} sessions",updating:"Relationship data may have changed. Recomputing.",failed:"Interaction graph computation failed",retry:"Retry"},Rz={title:"Search results",offCore:"Load neighborhood"},Lz={title:"Related contacts",empty:"No direct connections in the current graph",connectionScore:"Affinity"},Oz={rank:"Rank",score:"Score",type:"Type",community:"Community",lastInteraction:"Last interaction",privateMessages:"Private messages",groupMessages:"Group messages",commonGroups:"Common groups",emptyValue:"None"},Nz={recomputeStarted:"Started computing interaction graph",recomputeFailed:"Recompute failed",loadFailed:"Failed to load interaction graph",neighborhoodFailed:"Failed to load neighborhood",threeUnavailable:"3D rendering is unavailable. Switched to 2D."},Fz={label:"Interaction galaxy graph",label3d:"3D interaction galaxy graph"},qz={title:wz,subtitle:_z,nav:kz,search:Cz,empty:Sz,privacy:xz,viewMode:Az,graphScope:Pz,timeRange:Mz,actions:Tz,stats:Iz,pool:Dz,owner:Ez,task:$z,searchResults:Rz,connections:Lz,detail:Oz,toast:Nz,canvas:Fz},Bz="Footprint",Hz="This view will be available in a future release",Vz={nav:"Footprint views",relationshipChanges:"Relationship Changes"},zz={title:Bz,reserved:Hz,tabs:Vz},jz="Your Chat History, Finally Yours.",Wz="Local storage and privacy first, with AI agents and visual insights to help you revisit your chat memories.",Uz="No sign-in",Gz="Processed on this device",Yz="Nothing uploaded",Kz="Data is stored in this browser's site storage. Clearing site data also removes imported sessions.",Xz="How to export chat history",Jz="Preparing your local workspace",Qz="The first launch loads the SQLite runtime and opens browser storage.",Zz={title:"This browser cannot run the local edition",description:"Use the latest Chrome, Edge, or another OPFS-capable browser, and open ChatLab through localhost or HTTPS.",missing:"Missing capabilities: {capabilities}"},ej={title:"The local workspace hit a problem",unsupportedFile:"This file is not supported yet. Choose ChatLab JSON / JSONL, WhatsApp TXT, LINE TXT, QQ TXT, or Telegram JSON."},tj={eyebrow:"Local sessions",title:"Your chat archive",description:"Sessions are stored separately in this browser. You can manage them and view their 24-hour message activity.",count:"{count} sessions",refresh:"Refresh",emptyTitle:"No local sessions yet",emptyDescription:"Import your first chat archive from the left and it will appear here.",messages:"{count} messages",members:"{count} members",lastMessage:"Last message {date}",importedAt:"Imported {date}",group:"Group",private:"Direct",rename:"Rename",renameLabel:"New session name",deleteTitle:"Delete “{name}”?",deleteDescription:"This session's local database will be permanently deleted. This cannot be undone.",busy:"Updating session…"},nj={open:"View hourly activity",eyebrow:"First local analysis",title:"24-hour activity for “{name}”",description:"Statistics are computed in a local background thread and grouped in this device's time zone.",loading:"Reading local session statistics…",totalMessages:"Messages counted",peakHour:"Peak hour",activeHours:"Active hours",hourValue:"{hour}:00",hourTooltip:"{hour}:00 · {count} messages",noData:"This session has no hourly activity to display yet.",runtimeNote:"Computed locally · no upload"},aj={title:jz,subtitle:Wz,noSignIn:Uz,localOnly:Gz,noUpload:Yz,localOnlyDetail:Kz,exportGuide:Xz,initializing:Jz,initializingDetail:Qz,unsupported:Zz,error:ej,import:{eyebrow:"Import",title:"Add a chat archive",description:"ChatLab JSON / JSONL, WhatsApp TXT, LINE TXT, QQ TXT, and Telegram JSON are supported. Each import creates an isolated session.",drop:"Drop a file here, or choose from your device",dropActive:"Release to select this file",formats:".json · .jsonl · .txt",choose:"Choose file",selected:"Selected",detecting:"Detecting format…",detected:"Detected as {format}",start:"Start local import",working:"Importing",cancel:"Stop import",processed:"Processed {count} messages",multiChat:{title:"Choose chats to import",selected:"{selected} of {total} selected",selectAll:"Select all",clearAll:"Clear",messages:"{count} messages",empty:"Empty chat",current:"Chat {current} of {total}: {name}",importSelected:"Import {count} selected",successDetail:"Created {sessions} of {total} sessions and saved {messages} messages.",failed:"{count} imports failed",cancelledWithCompleted:"Import stopped; {count} completed sessions were kept."},stages:{detecting:"Detecting file",reading:"Reading file",parsing:"Parsing messages",saving:"Writing local database",indexing:"Building indexes",done:"Done"},successTitle:"Import complete",successDetail:"Saved {messages} messages and {members} members.",cancelled:"Import stopped without leaving an incomplete session.",another:"Import another"},sessions:tj,analysis:nj},rj="ChatLab AI",oj="Find answers in this chat",sj="AI calls local analysis tools as needed and only sends the redacted data required for your current question to the model provider.",ij="Ask about this chat…",lj="Regenerate",cj="AI can make mistakes. Verify important conclusions.",uj="Using {name}",dj="Compressing context",fj={title:"Conversations",deleteConfirm:"Delete this AI conversation?"},pj={title:"Configure Web AI",description:"Web WASM calls the model provider directly from your browser. Requests do not pass through a ChatLab server.",provider:"Provider",openAICompatible:"OpenAI-compatible API",baseURL:"API URL",model:"Model",apiKey:"API Key",apiKeyPlaceholder:"Enter API Key",apiKeyReplace:"Enter again to replace the saved key",required:"Enter an API URL, model, and API Key",keyStorageWarning:"The API Key is encrypted and stored in this browser across refreshes. Browser-local encryption cannot protect against malicious scripts that already control this page.",corsWarning:"Only OpenAI-compatible services that allow browser CORS requests are supported. A connection failure may mean the provider blocks direct browser access.",test:"Test connection",testSuccess:"Connected ({ms}ms)",saved:"Model configuration saved",remove:"Remove configuration",removeConfirm:"Remove the model configuration and saved API Key?",removed:"Model configuration and API Key removed"},hj={AUTH:"The API Key is invalid or lacks permission.",RATE_LIMIT:"The request was rate-limited or has insufficient quota. Try again later.",MODEL_NOT_FOUND:"The model was not found. Check the model name.",TIMEOUT:"The model request timed out. Try again.",NETWORK_OR_CORS:"The request was blocked by the network or browser CORS policy. Confirm that the provider supports direct browser access.",FINISH_LENGTH:"The response reached its length limit and may be incomplete. Continue the conversation or regenerate it.",FINISH_CONTENT_FILTER:"The model provider stopped the response because of its content policy. The response may be incomplete.",FINISH_TOOL_CALLS:"This turn reached its tool-call limit and may be incomplete. Try again.",FINISH_UNKNOWN:"The model did not finish normally. The response may be incomplete; try again."},mj={title:rj,emptyTitle:oj,emptyDescription:sj,inputPlaceholder:ij,regenerate:lj,footer:cj,usingTool:uj,compressingContext:dj,conversations:fj,config:pj,errors:hj},gj={common:CB,layout:WB,settings:iH,home:vH,analysis:IH,tools:EH,providers:jH,ai:JH,quotes:rV,members:cV,records:wV,views:TV,wordFilter:QV,contacts:bz,relationships:qz,insight:zz,browser:aj,webAI:mj},vj="確定",yj="取消",bj="儲存",wj="編輯",_j="新增",kj="截圖",Cj="關閉",Sj="返回上一頁",xj="完成",Aj="重試",Pj="應用程式初始化失敗",Mj="外觀偏好未能及時載入,本次啟動已使用系統主題和內建語言。",Tj="本機工作區暫時正由另一個分頁使用。請稍候後重試。",Ij="載入中...",Dj="初始化中...",Ej="無匹配結果",$j="匯出成功",Rj="匯出失敗",Lj="產生中...",Oj="重新產生",Nj="開啟資料夾",Fj="檢視聊天紀錄",qj="請先在設定中設定 AI 服務",Bj={unknown:"未知錯誤"},Hj={text:"文字",image:"圖片",voice:"語音",video:"影片",file:"檔案",emoji:"表情",link:"連結",location:"位置",redPacket:"紅包",transfer:"轉帳",poke:"拍一拍",call:"通話",share:"分享",reply:"回覆",forward:"轉發",contact:"名片",system:"系統",recall:"收回",other:"其他",unknown:"未知"},Vj={mon:"週一",tue:"週二",wed:"週三",thu:"週四",fri:"週五",sat:"週六",sun:"週日"},zj={jan:"1月",feb:"2月",mar:"3月",apr:"4月",may:"5月",jun:"6月",jul:"7月",aug:"8月",sep:"9月",oct:"10月",nov:"11月",dec:"12月"},jj={title:"選擇語言",subtitle:"請選擇您偏好的介面語言",next:"下一步"},Wj={title:"隱私權政策與使用條款",subtitle:"使用前請先詳閱",disagree:"我不同意",agree:"我已閱讀並同意上述內容",updateNotice:"條款內容已更新,請重新閱讀並確認"},Uj={selectDate:"選擇日期",clearDate:"清除日期"},Gj={mode:{recent:"最近",quarter:"按季",year:"按年",custom:"自訂"},recent:{oneYear:"近一年",twoYears:"近兩年",fiveYears:"近五年",all:"全部"},display:{recent365:"最近一年",recent730:"最近兩年",recent1825:"最近五年"},quarter:{label:"{year}年 第{quarter}季"},year:{label:"{year}年"}},Yj={allMembers:"全部成員"},Kj={placeholder:"搜尋成員",noSecondary:"無其他名稱"},Xj={description:"此服務已開啟認證保護,請輸入 API Token 登入",tokenLabel:"API Token",tokenPlaceholder:"clb_xxxxxxxx",submit:"登入",hint:"Token 可在啟動日誌、config.toml 或 --token 啟動參數中取得",errorEmpty:"請輸入 Token",errorInvalid:"Token 無效,請檢查後重試",errorNetwork:"網路連線失敗",rememberDevice:"記住此裝置",rememberWarning:"僅在可信裝置上勾選,Token 將持久保存在瀏覽器中",logoutTitle:"帳戶",logoutDesc:"退出目前認證登入",logout:"登出"},Jj={confirm:vj,cancel:yj,delete:"刪除",save:bj,edit:wj,add:_j,capture:kj,close:Cj,back:Sj,done:xj,retry:Aj,initFailed:Pj,presentationFallback:Mj,webWasmWorkspaceBusy:Tj,loading:Ij,initializing:Dj,noResults:Ej,export:"匯出",exportSuccess:$j,exportFailed:Rj,generating:Lj,regenerate:Oj,openFolder:Nj,viewChatRecords:Fj,errorNoAIConfig:qj,error:Bj,messageType:Hj,weekday:Vj,month:zj,languageSelect:jj,agreement:Wj,datePicker:Uj,timeSelect:Gj,userSelect:Yj,memberSearchSelect:Kj,login:Xj},Qj="ChatLab",Zj="分析新對話",eW="聯絡人",tW="關係",nW="足跡",aW="實用工具",rW="聊天紀錄",oW="管理",sW="暫無紀錄",iW="載入聊天紀錄失敗",lW="搜尋聊天名稱",cW="未找到匹配的聊天紀錄",uW={rename:"重新命名",pin:"置頂",unpin:"取消置頂",copyId:"複製 ID",delete:"刪除"},dW={title:"重新命名",placeholder:"請輸入新名稱"},fW={title:"確認刪除",message:"確定要刪除聊天紀錄「{name}」嗎?此操作無法復原。"},pW={tag:"New",title:"發現新版本",message:"最新版本是 v{version}。",desktopHint:"點擊立即更新後,ChatLab 會開始檢查並下載桌面端更新。",cliHint:"請在終端機執行以下命令更新 CLI,更新後重新啟動服務。",updateNow:"立即更新",later:"稍後"},hW={all:"全部",private:"私聊",group:"群聊"},mW={importedAt:"匯入時間",lastMessageTs:"最近對話",messageCount:"訊息數量"},gW={search:"搜尋聊天紀錄",sort:"排序"},vW="{count} 條訊息",yW={settings:"設定"},bW={brand:Qj,newAnalysis:Zj,contacts:eW,relationships:tW,insight:nW,tools:aW,chatHistory:rW,manage:oW,noRecords:sW,sessionLoadFailed:iW,searchPlaceholder:lW,noSearchResult:cW,contextMenu:uW,renameModal:dW,deleteModal:fW,updateNotice:pW,filter:hW,sort:mW,tooltip:gW,sessionInfo:vW,footer:yW},wW="設定",_W={basic:"基本設定",navigation:"導覽版面",ai:"AI 設定",aiConfig:"模型服務",aiDefaultModel:"預設模型",semanticIndex:"語意索引",chatPreferences:"對話偏好",aiPreprocess:"前處理",dataManage:"資料管理",storage:"儲存管理",security:"安全",sessionManage:"會話索引",about:"關於 ChatLab",api:"自動化",apiSubTabs:{autoSync:"自動同步",apiService:"API 服務",mcp:"MCP"}},kW={general:{title:"一般"},preferences:{title:"偏好設定"},language:{description:"選擇軟體顯示語言"},appearance:{title:"外觀設定",themeMode:"主題模式",insightCardTheme:"洞察卡片配色",insightCardThemeOption:"配色 {index}",auto:"依系統設定",light:"淺色模式",dark:"深色模式"},defaultTab:{description:"進入聊天對話後預設顯示的頁面",insights:"洞察",aiChat:"AI 對話"},autoLaunch:{openAtLogin:"開機自動啟動",openAtLoginDesc:"系統啟動時自動執行 ChatLab",devModeHint:"開發模式下不可用"},closeBehavior:{label:"關閉主視窗時",background:"背景執行",quit:"結束應用程式"},toolsPanel:{positionLabel:"快捷工具入口位置",positionDesc:"選擇快捷工具面板的顯示位置",positionSide:"右側",positionHeader:"頂部"},network:{title:"網路設定",proxyMode:"代理模式",proxyModeDesc:"存取網路時使用的代理方式",modeOff:"關閉",modeSystem:"跟隨系統",modeManual:"手動設定",proxyAddress:"代理地址",proxyPlaceholder:"http://127.0.0.1:7890",proxyHelp:"支援 HTTP/HTTPS 代理,格式如:http://127.0.0.1:7890",testConnection:"測試連線",testing:"測試中...",connectionSuccess:"代理連線成功!",connectionFailed:"連線失敗",enterProxyFirst:"請先輸入代理地址",invalidProxyUrl:"請輸入有效的代理地址,格式如 http://127.0.0.1:7890",onlyHttpSupported:"僅支援 http:// 或 https:// 協定",saveFailed:"儲存失敗"}},CW={title:"導覽版面",description:"調整分析功能在側邊欄一級入口和足跡二級導覽中的位置。變更只會在儲存後生效。",invalidLayout:"已儲存的導覽版面無法讀取,目前正使用外掛預設版面。儲存或恢復預設後會取代無效設定。",loadFailed:"無法讀取已儲存的導覽版面,目前只會暫時顯示外掛預設版面。請重新載入應用程式後再試;讀取成功前無法儲存或恢復預設。",primary:"一級入口",inGroup:"二級 · {group}",group:"二級導覽群組",hidden:"已隱藏",moveUp:"上移",moveDown:"下移",locationFor:"設定 {title} 的導覽位置",unavailable:"外掛不可用",emptyGroup:"此群組目前沒有導覽項目。",saved:"導覽版面已儲存",saveFailed:"導覽版面儲存失敗",reset:"恢復預設",resetDone:"已恢復預設導覽版面",resetFailed:"恢復預設導覽版面失敗",storageHint:"Desktop 與 CLI Web 共用 .chatlab 中的這份版面。"},SW={title:"預設模型",noConfigs:"請先在「模型服務」中新增模型設定",selectProvider:"選擇提供商",selectModel:"選擇模型",assistantModel:{label:"預設助手模型",description:"用於 AI 對話、工具呼叫、SQL 助手、上下文壓縮"},fastModel:{label:"快速模型",description:"用於會話摘要生成,未設定時使用預設助手模型",followAssistant:"跟隨預設助手模型"}},xW={title:"模型服務",defaultModel:"預設模型",empty:{title:"尚未設定 AI 服務",description:"新增一組設定後即可開始使用 AI 功能"},addConfig:"新增服務",maxConfigs:"已達設定上限(最多 10 組)",modal:{addConfig:"新增服務",editConfig:"編輯服務",localService:"本機服務",configName:"設定名稱",optional:"(選填)",configNamePlaceholderPreset:"留空則使用服務商名稱",configNamePlaceholderCustom:"留空則使用 API 端點網址",aiProvider:"AI 服務商",apiKeyPlaceholder:"輸入你的 API Key",apiKeyPlaceholderEdit:"輸入新的 API Key(留空保持原有)",apiKeyPlaceholderLocal:"本機服務通常不需要",apiKeyHintLocal:"如果服務設定了認證,在此輸入",validate:"驗證",validationSuccess:"連線驗證成功",validationFailed:"連線驗證失敗",validationFailedTitle:"API 連線驗證失敗",saveAnywayHint:"驗證未通過,設定資訊可能有誤。是否仍然儲存?",saveAnyway:"仍然儲存",validationError:"驗證失敗:",model:"模型",apiEndpoint:"API 位址",apiEndpointHint:"相容 OpenAI 格式的 API 端點",resolvedUrl:"實際請求地址:",fetchModels:"從 API 獲取",fetchModelsTitle:"瀏覽遠端模型",fetchModelsLoading:"正在獲取模型列表...",fetchModelsEmpty:"未獲取到模型",fetchModelsError:"獲取模型列表失敗",fetchModelsCount:"共 {total} 個模型,當前顯示 {shown} 個",modelAdded:"已添加",addAllModels:"全部添加",searchModels:"搜尋模型...",apiEndpointOverrideHint:"預設地址已填入,可按需改為完整 URL",customService:"自訂服務",visitWebsite:"訪問官網",getApiKey:"取得 API Key",presetService:"預設服務",thirdPartyService:"第三方服務",addCustomModel:"新增模型",deleteCustomModel:"刪除選中",customModelId:"模型端點名稱",customModelIdHint:"API 呼叫時使用的模型識別碼",customModelDisplayName:"顯示名稱",customModelDisplayNamePlaceholder:"自訂顯示名稱",editModel:"編輯模型",contextWindow:"上下文視窗",contextWindowPlaceholder:"如 128000",contextWindowHint:"模型支援的最大上下文 token 數(用於上下文壓縮)",contextWindowMissing:"未設定上下文視窗,將使用預設值,建議點擊「編輯模型」手動填寫",modelRequired:"至少新增一個模型才能儲存",apiFormat:"API 介面類型",apiFormatOpenAI:"OpenAI Completions",apiFormatAnthropic:"Anthropic",apiFormatGemini:"Gemini",apiFormatOpenAIResponses:"OpenAI Responses"},providerKind:{aggregator:"聚合",custom:"自訂"}},AW={title:"本機儲存管理",description:"管理 ChatLab 在本機儲存的資料檔案",dataLocation:{title:"資料目錄位置",description:"自訂聊天資料庫與向量庫的存放位置",managedDescription:"此設定僅管理聊天資料庫和向量庫目錄;AI 對話、快取和日誌仍保存在固定系統目錄。",choose:"選擇位置",applyPath:"套用",reset:"還原預設",open:"開啟",serverPathHint:"請輸入執行 CLI 服務的機器可存取的絕對路徑。",migrateHint:"偵測到聊天資料庫資料仍在舊位置,建議遷移至統一目錄:",ignoreMigrateHint:"忽略",migrateAction:"一鍵遷移",restartTip:"切換目錄後請重新啟動應用程式,聊天資料庫資料會按選擇遷移",cliRestartTip:"切換目錄後請重新啟動 CLI 服務,聊天資料庫資料會在服務啟動前遷移",confirmTitle:"確認切換資料目錄",confirmMessage:"您即將切換聊天資料庫目錄。選擇遷移時,現有聊天資料庫資料將複製到新目錄。",newPath:"新目錄路徑",defaultPath:"預設位置",confirmWarning:"重新啟動應用程式後,聊天資料庫資料會遷移到新位置,舊目錄將保留作為備份。",cliConfirmWarning:"重新啟動 CLI 服務後,聊天資料庫資料會遷移到新位置,舊目錄將保留作為備份。請確保服務程序有寫入權限。",pathRequired:"請輸入資料目錄路徑",installDirForbidden:"不能將資料目錄放在應用程式安裝目錄下,應用程式更新時該目錄會被清空",cancel:"取消",confirm:"確認切換",migrationQueuedTitle:"資料遷移已登記",migrationSuccessMessage:"應用程式需要重新啟動以使變更生效。",cliMigrationSuccessMessage:"請停止目前的 CLI 服務並重新啟動,遷移會在服務啟動前執行。重新啟動完成後再重新開啟頁面查看新目錄。",relaunchNow:"立即重新啟動",acknowledge:"知道了",cleanupNoticeTitle:"已切換到新的資料目錄",cleanupNoticeDescription:"為避免資料遺失,原目錄仍作為備份保留。請確認聊天記錄完整後,再前往儲存管理清理舊資料。",cleanupOldPath:"原資料目錄",cleanupLater:"稍後處理",cleanupGoToStorage:"前往儲存管理",cleanupTitle:"待清理的舊資料",cleanupDescription:"遷移前的資料目錄仍作為備份保留。確認新目錄中的聊天記錄完整後,可手動刪除。",cleanupDeleteAction:"刪除舊資料",cleanupDeleteConfirmTitle:"永久刪除舊資料?",cleanupDeleteConfirmDescription:"此操作無法復原。請先確認新目錄中的聊天記錄完整,再刪除以下原資料目錄。",cleanupDeleteConfirmAction:"永久刪除",cleanupDeleteFailed:"舊資料刪除失敗"},openRootDir:"開啟根目錄",totalUsage:"總佔用:",loading:"載入中...",files:"檔案",notExist:"不存在",clear:"清理",open:"開啟",cache:{databases:{name:"聊天紀錄資料庫",description:"匯入的聊天紀錄分析資料"},ai:{name:"AI 對話資料庫",description:"AI 對話歷史與設定檔"},statsCache:{name:"快取資料",description:"聊天記錄的統計快取,清理後會自動重建"},logs:{name:"日誌檔案",description:"軟體的執行日誌,包含匯入、AI、錯誤等日誌"}}},PW={session:{title:"會話索引設定",description:"會話索引會依時間間隔自動將聊天紀錄切分成對話段落,方便 AI 分析與瀏覽",defaultThreshold:"預設分割間隔",thresholdUnit:"分鐘",thresholdHelp:"超過該時間間隔的訊息將被分到新的會話段落",generating:"產生中",batchTitle:"批次產生索引",totalSessions:"共 {count} 個聊天",generatedCount:"已產生 {count} 個",notGeneratedCount:"未產生 {count} 個",loadingStatus:"載入中...",batchGenerate:"產生未索引項目",batchRegenerate:"全部重新產生",batchRegenerateConfirmTitle:"確認重新產生",batchRegenerateConfirmMessage:"此操作將清空所有已產生的 AI 摘要,並重新產生全部會話索引。",batchRegenerateConfirmWarning:"已有的摘要內容將被覆蓋,此操作不可撤銷。",summaryStrategy:"摘要詳細程度",summaryStrategyHelp:"影響 AI 生成摘要時的詳細程度",summaryBrief:"簡要",summaryStandard:"標準"},semanticIndex:{title:"語意索引",description:"用所選向量模型為聊天記錄建立索引,啟用後 AI 回答時可按語意檢索相關歷史片段作為依據。",vectorModel:"向量模型",selectModel:"選擇向量模型",switchModel:"切換模型",noModelSelected:"未選擇向量模型",modelModalTitle:"設定向量模型",modeLocal:"本地模型",modeApi:"API",recommended:"推薦",approxSize:"約 {mb} MB",modelDownloadSource:"模型下載來源",downloadSourceOfficial:"Hugging Face 官方",downloadSourceMirror:"HF-Mirror 中國大陸鏡像",mirrorSourceHint:"HF-Mirror 是第三方公益鏡像,適合中國大陸網路環境;模型檔案將從 hf-mirror.com 下載。",localDownloadHint:"儲存後會自動下載模型,首次下載可能需要一些時間。",localRuntimeDownloadHint:"CLI Web 的本地模型執行元件約 370 MB;未預先安裝時會在首次使用時自動安裝。儲存後還會下載所選模型。",apiTemplate:"服務範本",modelName:"模型名稱",apiKeySaved:"已儲存,留空則不修改",apiKeyHint:"API Key 單獨安全儲存,設定檔只保存引用。",apiCostWarning:"API 模式可能產生服務商費用,請確認模型價格。",changeRebuildHint:"更換模型或 API 後,已啟用對話需要重建索引。",modelDownloading:"正在下載模型,首次使用需要幾分鐘,請稍候…",runtimeInstalling:"正在安裝本地模型執行元件,首次使用需要一些時間,請稍候…",modelError:"本地模型準備失敗,建立索引時將重試。",searchMaxResults:{label:"單次檢索片段數",hint:"AI 呼叫語意檢索時預設回傳的相關片段數(5-15)。AI 可依問題需要臨時調高。"},overview:"索引概覽",enabledCount:"已啟用 {count} 個對話",coverage:"覆蓋率 {percent}%",buildPending:"建立待處理索引",cleanup:"清理未使用索引",cleanupConfirm:"將刪除已停用對話和舊模型遺留的索引資料。此操作不會刪除聊天記錄。",configFirst:"請先設定向量模型",selectConversations:"選擇對話",enabledSessions:"已啟用對話",state:{completed:"已完成",building:"建立中",pending:"待建立",needsRebuild:"需要重建",failed:"失敗",paused:"已暫停"},action:{build:"建立索引",pause:"暫停",cancel:"取消",rebuild:"重建索引",remove:"移除"},session:{statusLabel:"狀態",notEnabled:"未啟用",coverageLabel:"覆蓋率",progressLabel:"建立進度",enableHint:"啟用後,AI 可以在回答此對話相關問題時檢索歷史聊天片段。",configFirst:"啟用前需要先在 設定 > AI > 語意索引 設定向量模型。",enable:"啟用索引",buildVsEnable:"啟用索引:讓此對話進入語意檢索範圍;建立索引:開始讀取全部訊息生成向量,可能消耗本地算力或 API 額度。",retry:"重試",continue:"繼續"},picker:{title:"選擇對話",all:"全部",group:"群聊",private:"私聊",searchPlaceholder:"依名稱搜尋",messages:"{count} 則訊息",enabled:"已啟用",selectedSummary:"已選擇 {count} 個對話,約 {messages} 則訊息",confirmRemoveTitle:"確認移除",confirmRemoveMessage:"這些對話的語意索引將立即刪除,無法復原。"}}},MW={chatSettings:{title:"工具設定"},exportSettings:{title:"匯出設定"},chatPreferences:{title:"對話偏好",enableAutoSkill:"AI 自主選擇技能",enableAutoSkillDesc:"啟用後,AI 會根據使用者的問題自動匹配並啟用合適的分析技能;關閉後僅在手動選擇技能時生效",chartAutoMode:{title:"圖表自動生成",description:"控制 AI 在沒有手動選擇繪圖助手時使用圖表的積極程度",explicit:"明確要求時",explicitHint:"只有你明確要求圖表時,AI 才會生成圖表。",suggest:"智慧生成",suggestHint:"策略保守,僅在能明顯幫助理解分析結果時生成圖表。",aggressive:"積極生成",aggressiveHint:"AI 會更主動地在資料分析場景中生成圖表。"}},maxMessages:{title:"傳送條數限制",description:"每次提交給 AI 的最大訊息數,數值越大 Token 消耗越多,分析也更準確(新手建議2000)"},searchContext:{title:"搜尋上下文視窗",description:"搜尋命中訊息時自動攜帶前後的對話上下文,幫助 AI 理解訊息背景。設為 0 則不攜帶上下文",before:"前",after:"後"},exportFormat:{title:"對話匯出格式",description:"匯出 AI 對話時使用的檔案格式",txtLabel:"TXT"},sqlExportFormat:{title:"SQL Lab 匯出格式",description:"匯出 SQL 查詢結果時使用的檔案格式"}},TW={title:"關於 ChatLab",description:"在本機運作的聊天紀錄分析工具,透過 SQL 和 AI Agent 幫你回顧社交記憶。",version:"版本",checkUpdate:"檢查更新",checking:"檢查中...",upToDate:"已是最新版本",newVersionAvailable:"發現新版本 {version}",webUpdateHint:"請在終端機執行 clb update 後重啟服務。",updateCheckFailed:"檢查更新失敗:{error}",unknown:"未知",privacy:{title:"隱私設定",analytics:"匿名使用統計",analyticsDesc:"開啟後,軟體會傳送匿名安裝識別碼、版本、系統、執行方式、語言、概略地區,以及匯入平台和主要功能使用情況;不會傳送聊天內容、聯絡人、檔名、路徑、模型名稱或金鑰"},developer:{title:"開發者選項",debugMode:"DEBUG 模式",debugModeDesc:"開啟後,將顯示除錯面板和快捷除錯工具,可用於查看資料庫、執行測試工具,並記錄更詳細的除錯日誌。"}},IW={title:"聊天紀錄預處理",description:"在聊天紀錄傳送給 AI 前進行預處理,節省 Token 並過濾雜訊。原始資料不會被修改。",dataCleaning:"資料清洗",dataCleaningDesc:"自動清理 XML 卡片訊息(如分享連結、小程式等),提取有效內容,大幅節省 Token。建議保持開啟。",mergeConsecutive:"合併連續發言",mergeConsecutiveDesc:"同一人在短時間內的連續訊息合併為一條",mergeWindow:"合併時間視窗(秒)",denoise:"智慧去雜訊",denoiseDesc:"過濾純語氣詞、純表情、系統佔位符(如 [圖片])等無意義訊息",desensitize:"資料脫敏",desensitizeDesc:"根據規則將敏感資訊(手機號、電子郵件、證件號等)替換為佔位符",desensitizeBuiltin:"預置規則",desensitizeResetBuiltin:"恢復預設",desensitizeCustom:"自訂規則",desensitizeAddCustom:"新增自訂規則",desensitizeRuleName:"規則名稱",desensitizeRulePattern:"正規表達式",desensitizeRuleReplacement:"替換文字",desensitizeRuleAdd:"新增",desensitizeRuleInvalidRegex:"正規表達式語法錯誤",desensitizeRuleNamePlaceholder:"例如:員工工號",desensitizeRulePatternPlaceholder:"例如:EMP-\\d+",desensitizeRuleReplacementPlaceholder:"替換文字,如 [工號]",anonymizeNames:"暱稱匿名化",anonymizeNamesDesc:"用編號(U1、U2…)替代真實暱稱傳送給 AI,減少幻覺並節省 Token",blacklist:"黑名單關鍵詞",blacklistDesc:"包含以下任一關鍵詞的訊息將被整條過濾",blacklistPlaceholder:"輸入關鍵詞後按 Enter 新增",blacklistAdd:"新增"},DW={groups:{credentials:"密碼與 Token",credentials_desc:"API Key、Bearer Token 等憑證",global_contact:"通用聯絡方式",global_contact_desc:"電子郵件等跨地區聯絡方式",global_financial:"通用金融資訊",global_financial_desc:"信用卡等金融編號",global_network:"通用網路資訊",global_network_desc:"URL、IP 地址等網路識別",region_cn:"中國大陸",region_cn_desc:"中國大陸電話、證件和銀行卡等規則",region_us:"美國",region_us_desc:"美國電話、證件等規則",region_jp:"日本",region_jp_desc:"日本電話、個人編號等規則",region_kr:"韓國",region_kr_desc:"韓國電話、身份證號等規則"},rules:{cn_phone:"中國手機號",cn_phone_desc:"1xx xxxx xxxx 格式的 11 位號碼",cn_id_card:"中國身份證號",cn_id_card_desc:"18 位,末位可含 X",cn_bank_card:"中國銀行卡號",cn_bank_card_desc:"16-19 位連續數字",cn_landline:"中國市話號碼",cn_landline_desc:"區號-號碼,如 010-12345678",us_ssn:"美國社會安全號 (SSN)",us_ssn_desc:"XXX-XX-XXXX 格式",us_phone:"美國電話號碼",us_phone_desc:"+1 (XXX) XXX-XXXX 格式",us_drivers_license:"美國駕照號",us_drivers_license_desc:"字母開頭 + 7-8 位數字",jp_phone:"日本電話號碼",jp_phone_desc:"0x0-XXXX-XXXX 格式",jp_my_number:"日本個人編號",jp_my_number_desc:"12 位數字(マイナンバー)",kr_phone:"韓國電話號碼",kr_phone_desc:"01X-XXXX-XXXX 格式",kr_rrn:"韓國身份證號",kr_rrn_desc:"XXXXXX-XXXXXXX 格式(주민번호)",api_key_prefix:"API Key / Token(已知前綴)",api_key_prefix_desc:"sk-、ghp_、AKIA 等開頭的長字串",bearer_token:"Bearer Token",bearer_token_desc:"Bearer 後的授權權杖值",email:"電子郵件地址",email_desc:"user{'@'}domain.com 標準格式",credit_card:"信用卡號",credit_card_desc:"Visa / MasterCard / AmEx 等卡號",ipv4:"IPv4 地址",ipv4_desc:"如 192.168.1.1",url:"URL 連結",url_desc:"http:// 或 https:// 開頭的連結"}},EW={service:{title:"API 服務",enable:"啟用 API 服務",enableDesc:"開啟後,外部工具可透過 HTTP API 查詢、匯出和匯入聊天數據。僅本機可存取 (127.0.0.1)",portInUseHint:"連接埠被佔用,請在下方修改連接埠或關閉佔用該連接埠的程式後重試"},status:{running:"執行中",stopped:"已停止",starting:"啟動中...",portInUse:"連接埠被佔用",error:"啟動失敗"},port:{title:"連接埠配置",label:"監聽連接埠",desc:"API 服務監聽的本機連接埠號(1024-65535)",edit:"修改",save:"儲存",cancel:"取消"},token:{title:"存取權杖",label:"Bearer Token",desc:"所有 API 請求需要在 Authorization 標頭中攜帶此 Token",noToken:"尚未產生 Token,請先啟用服務",regenerate:"重新產生"},dataSources:{title:"資料來源",desc:"設定外部資料來源 URL,ChatLab 將按設定間隔自動拉取並匯入聊天資料。",empty:"暫無資料來源",disabled:"已暫停",every:"每",minutes:"分鐘",lastSync:"上次同步",syncing:"同步中",messages:"則訊息",addBtn:"新增資料來源",form:{modalTitle:"新增資料來源",name:"名稱",namePlaceholder:"例如:我的聊天伺服器",token:"存取權杖",tokenPlaceholder:"遠端 API 的 Bearer Token",interval:"拉取間隔(分鐘)",pullLimit:"每次拉取訊息數",pullLimitPlaceholder:"預設 1000"},discovery:{baseUrl:"伺服器地址",baseUrlPlaceholder:"示例:http://127.0.0.1:2333/api/v1",found:"發現 {count} 個會話",search:"搜尋",searchPlaceholder:"依會話名稱搜尋",selectAll:"全選",deselectAll:"取消全選",selectByType:"會話類型",typeAll:"全部",typePrivate:"私訊",typeGroup:"群組",loadMore:"載入更多",subscribe:"訂閱 {count} 個會話",messages:"則訊息",error:"連線遠端伺服器失敗",connectionCheckFailed:"無法連線到遠端伺服器,請檢查地址和權杖是否正確"},noSessions:"暫無匯入會話,點擊上方「管理訂閱」新增",edit:{title:"修改配置",save:"儲存",cancel:"取消",editSource:"修改配置",manageSessions:"管理訂閱",subscribed:"已訂閱"},deleteConfirm:{title:"刪除資料來源",message:"確認刪除資料來源「{name}」?該資料來源下的所有匯入配置將被移除。已匯入的本機對話不會被刪除。"},deleteSessionConfirm:{title:"刪除訂閱",message:"確認刪除訂閱「{name}」?",keepData:"僅刪除訂閱",deleteData:"同時刪除匯入的聊天"}},usage:{title:"使用說明",desc:"啟用服務後,外部工具可透過 API 查詢資料,或向 ChatLab 推送聊天記錄。所有請求需攜帶 Bearer Token 認證。",authHint:"請求標頭範例:",docLink:"查看完整 API 文件"}},$W={overview:{title:"MCP 概述",description:"MCP 讓 AI 助手直接查詢你的聊天記錄。支援會話發現、關鍵字搜尋、成員統計、時間分佈等操作。",toolCount:"{count} 個工具",resourceCount:"{count} 個資源",installHint:"安裝 chatlab-cli 後,在 AI 用戶端中新增以下設定即可使用:"},clients:{other:"通用"},config:{title:"用戶端設定",clientLabel:"MCP 用戶端",copy:"複製",copied:"已複製",claudeHint:"將此設定新增至 ClaudeCode 的 MCP 設定中。",codexHint:"將此 TOML 設定新增至 ~/.codex/config.toml 檔案中。",openclawHint:"將此設定新增至專案的 openclaw.json 檔案中。",otherHint:"將此 JSON 設定新增到你的 MCP 用戶端設定檔中。"},tips:{title:"使用提示",dataDir:"MCP 伺服器讀取 ~/.chatlab/ 目錄下的聊天資料,與桌面應用程式共用同一份資料。",readOnly:"所有操作均為唯讀,不會修改你的聊天記錄。",nodeRequired:"npx 和 CLI 方式需要 Node.js 22.19 或更高版本。",docs:"詳細文件請造訪 docs.chatlab.fun。"}},RW={lock:{title:"應用鎖",desc:"使用 4 位數字密碼保護 ChatLab",statusOn:"已開啟",statusOff:"未開啟",disableBtn:"關閉應用鎖",disableConfirm:"確定關閉應用鎖?關閉後將刪除目前的密碼。",manualLock:"立即鎖定"},password:{titleSetup:"設定 4 位密碼並開啟應用鎖",titleChange:"修改密碼",labelOld:"舊密碼",labelNew:"輸入新密碼",labelConfirm:"確認新密碼",btnEnable:"開啟",errorInvalidPin:"密碼必須是 4 位數字",errorMismatch:"兩次輸入的密碼不一致",errorSameAsOld:"新密碼不能與舊密碼相同",errorFailed:"操作失敗,請重試"},autoLock:{title:"自動鎖定",idleLabel:"閒置逾時自動鎖定",startupLabel:"啟動時要求解鎖"},lockScreen:{titleLocked:"ChatLab 已鎖定",placeholderPassword:"輸入 4 位數字密碼",btnUnlock:"解鎖",verifying:"驗證中...",errorService:"解鎖失敗,請重試",errorWrongPassword:"密碼錯誤",errorTooManyAttempts:"嘗試次數過多,請在 {seconds} 秒後重試"}},LW={title:wW,tabs:_W,basic:kW,navigation:CW,defaultModel:SW,aiConfig:xW,storage:AW,ai:PW,aiPrompt:MW,about:TW,aiPreprocess:IW,desensitize:DW,api:EW,mcp:$W,security:RW},OW="探索新的聊天記憶",NW={file:"檔案匯入",api:"API 匯入",cli:"命令列匯入",autoSyncTitle:"自動同步",autoSyncDescription:"由 ChatLab 定期從外部資料來源拉取新增聊天記錄。",autoSyncButton:"設定自動同步",apiPushTitle:"API 推送",apiPushDescription:"讓第三方工具、外掛或腳本透過本機 API 主動寫入。",apiPushButton:"設定 API 服務",agentImportTitle:"使用 AI Agent 匯入",agentImportDescription:"安裝官方 Skill,使用 Skill 自動匯入聊天記錄。",manualCliTitle:"手動使用 CLI",manualCliDescription:"適合終端操作、批次腳本與可重複的自動化流程。",copyCommand:"複製命令",viewDocs:"查看文件"},FW={viewExample:"查看示例 Demo",downloading:"正在下載示例資料...",importing:"正在匯入示例資料...",failed:"示例資料載入失敗,請確認網路連線後重試"},qW={title:"資料庫需要更新",description:"偵測到 {count} 個資料庫需要升級以支援新功能。",note:"更新通常只需幾秒鐘,不會遺失任何資料。",upgradeContent:"本次升級內容:",upgradeNow:"立即升級",upgrading:"正在升級...",failed:"遷移失敗",partialFailed:"部分資料庫升級失敗",errorHint:"這通常是因為資料庫檔案損壞。建議在側邊欄中刪除失敗的會話,然後重新匯入。",close:"關閉",retry:"重試"},BW={title:"選擇要匯入的聊天",scanning:"正在掃描聊天列表...",scanFailed:"掃描失敗",retry:"重試",selectAll:"全選",chatCount:"共 {count} 個聊天",selected:"已選 {count} 個",messageCount:"{count} 條訊息",memberCount:"{count} 位成員",empty:"空會話",import:"匯入 ({count})",noChats:"未發現任何聊天"},HW={title:"選擇聊天記錄格式",hint:"無法自動識別此檔案的格式,請手動選擇對應的聊天記錄格式。",manualSelect:"手動選擇格式",confirm:"使用此格式匯入"},VW={export:"新手引導"},zW={website:"官網",terms:"使用條款"},jW={title:"更新紀錄",subtitle:"查看所有版本更新內容",latest:"最新版本",current:"目前版本",total:"共 {count} 個版本",close:"關閉",disableAutoOpen:"更新後不再自動顯示",loadError:"載入更新紀錄失敗",retry:"重試",types:{feat:"新功能",fix:"問題修復",refactor:"重構優化",docs:"文件更新",chore:"其他優化",style:"樣式優化",ci:"CI/建置"}},WW={tagline:OW,tabs:NW,import:{dropHint:"鬆開滑鼠匯入檔案",clickHint:"點一下選擇,或直接拖曳聊天紀錄匯入",multipleHint:"支援同時選擇或拖曳多個檔案",selectFiles:"選擇聊天紀錄檔案",selectFolder:"選擇匯出資料夾",importFolder:"匯入資料夾",chatRecords:"聊天紀錄",allFiles:"所有檔案",progress:{detecting:"正在偵測格式...",reading:"正在讀取檔案...",parsing:"正在解析訊息...",saving:"正在寫入資料庫...",indexing:"正在建立搜尋索引...",done:"匯入完成",error:"匯入中斷"},processed:"已處理 {count} 則訊息",viewLog:"檢視匯入日誌",cannotReadPath:"無法讀取檔案路徑",errors:{no_file_selected:"未選擇檔案",import_failed:"匯入失敗",import_in_progress:"已有匯入工作正在進行,請稍後再試",unrecognized_format:"無法識別的檔案格式",no_messages:"未解析到任何訊息,請檢查檔案格式是否正確",no_chat_selected:"未選擇聊天",archive_single_file_required:"壓縮檔需要單獨選擇並匯入",archive_unsupported:"暫不支援此壓縮檔格式",archive_encrypted:"不支援加密壓縮檔",archive_corrupt:"壓縮檔已損壞或內容不完整",archive_unsafe_path:"壓縮檔包含不安全的檔案路徑",archive_limit_exceeded:"壓縮檔超過安全處理限制",google_chat_structure_not_found:"未找到 Google Chat 匯出資料",google_chat_conversation_incomplete:"Google Chat 會話檔案不完整",import_source_not_found:"匯入來源已不存在,請重新選擇壓縮檔",import_source_expired:"匯入來源已過期,請重新選擇壓縮檔",actionHint:"你還可以嘗試下方手動匹配或查看日誌:"},diagnostics:{format:"偵測格式:",received:"收到訊息:",written:" / 寫入:",skipped:" / 跳過:"},outcome:{created:"已建立新會話",ambiguous:"找到多個可能的既有會話,因此未自動合併並建立了新會話",incremental:"已增量匯入 {newCount} 則訊息,略過 {duplicateCount} 則重複訊息",unchanged:"內容已匯入,沒有新增訊息"},batch:{importing:"批次匯入中",progressCount:"第 {current} / {total} 個",cancel:"取消匯入",waiting:"等待中",skipped:"已跳過",success:"匯入成功",created:"已建立新會話",ambiguous:"候選會話不唯一,已建立新會話",incremental:"新增 {newCount} 則,略過 {duplicateCount} 則重複訊息",unchanged:"內容已匯入,無新增訊息",completed:"批次匯入完成",summary:"成功 {success} 個,失敗 {failed} 個,跳過 {cancelled} 個",view:"檢視"},options:{mergeImport:"合併匯入",mergeImportHint:"勾選後,多個檔案會合併成同一份聊天紀錄"},merge:{importing:"正在合併",parsing:"正在解析檔案...",merging:"正在合併訊息...",completed:"合併完成",completedHint:"{count} 個檔案已合併",messageCount:"{count} 條訊息",failed:"合併失敗"}},demo:FW,migration:qW,chatSelector:BW,formatSelector:HW,quickStart:VW,footer:zW,changelog:jW},UW={loading:"載入分析資料...",loadError:"無法載入聊天資料"},GW={loading:"載入分析資料...",loadError:"無法載入聊天資料"},YW={overview:"總覽",insights:"洞察",ranking:"榜單",aiChat:"AI 對話",memory:"記憶",lab:"實驗室",debug:"Debug"},KW={sqlTables:"SQL 表格",basicTools:"基礎工具",tableBrowser:{chatDb:"聊天記錄 DB",aiDb:"AI 對話 DB",rowCount:"共 {count} 行",page:"第 {current} / {total} 頁",refresh:"重新整理",noData:"暫無資料",editRow:"編輯",deleteRow:"刪除行",confirmDelete:"確認刪除這行資料?",allConversations:"全部對話",copyCell:"複製選取項",copyRow:"複製整行 (JSON)",clearDebugContext:"清除 Debug 上下文",confirmClearDebug:"確認清除所有訊息的 debug_context 資料?此操作不可撤銷。"}},XW={tabs:{records:"聊天記憶"}},JW={viewChatRecord:"查看聊天紀錄",semanticIndex:"語意索引",incrementalImport:"追加匯入",memberManagement:"成員管理",more:"更多"},QW={title:"新增聊天紀錄",description:"選擇要加入「{name}」的聊天紀錄檔案,系統會自動排除重複內容。",homeAutoImportHint:"現在首頁已支援自動增量匯入,有新的聊天紀錄時,直接將新的聊天紀錄拖曳到首頁即可。",dropHint:"點擊選擇或拖曳檔案到此處",analyzing:"正在分析檔案...",totalInFile:"檔案訊息數",newMessages:"新增訊息",duplicates:"重複訊息",noNewMessages:"檔案中沒有新訊息,所有訊息都已存在",importing:"正在匯入...",import:"匯入 {count} 則訊息",success:"匯入成功",successDetail:"已新增 {count} 則新訊息",failed:"匯入失敗"},ZW={insights:{typeAnalysis:"類型",timeAnalysis:"時間",topic:"話題",relationship:"關係",journey:"歷程",languagePreference:"語言偏好"},ranking:{overall:"總榜單",interaction:"互動排行",proximity:"鄰近度排行",keyword:"關鍵字"},quotes:{hotRepeat:"熱門複讀",catchphrase:"口頭禪"},member:{nicknameHistory:"暱稱變更"}},eU={messageTypeDistribution:"訊息類型分佈",memberDistribution:"成員訊息占比",memberRanking:"成員排行",others:"其他人",memberComparison:"雙方訊息佔比",statCards:{dailyAvgMessages:"日均訊息",messagesCount:"{count} 條",daysCount:"共 {count} 天",imageMessages:"圖片訊息",imagesCount:"{count} 張",peakHour:"最活躍時段:",mostActiveWeekday:"最活躍星期",messagesOnDay:"{count} 條訊息",weekendActivity:"週末活躍度",weekendRatio:"週末訊息佔比",mostActiveDate:"最活躍日期",consecutiveStreak:"連續活躍",daysStreak:"{count} 天",longestStreak:"最長連續活躍",activityRate:"活躍率",activeDaysRatio:"有訊息的天數佔比",lateNightChat:"深夜聊天",lateNightRatio:"佔總訊息 {ratio}%"},dailyTrend:{title:"每日訊息趨勢"},identity:{privateChat:"私聊",groupChat:"群聊",totalMessages:"訊息總數",durationDays:"跨度天數",activeDays:"活躍天數",dailyAvgMessages:"日均訊息"},tools:"常用工具"},tU={miniMode:"迷你模式",exitMini:"退出迷你模式"},nU={title:"匯出聊天紀錄",selectOutputDir:"選擇儲存目錄",format:"格式"},aU={timeRange:"時間範圍",allTime:"全部",today:"今天",lastWeek:"近7天",lastMonth:"近1個月",last3Months:"近3個月",lastYear:"近1年",customTime:"自訂",exportSuccess:"匯出成功",exportFailed:"匯出失敗",exportPreparing:"正在準備匯出..."},rU={groupChat:UW,privateChat:GW,tabs:YW,debug:KW,memory:XW,tooltip:JW,incremental:QW,subTabs:ZW,overview:eU,toolsPanel:tU,messageExport:nU,filter:aU},oU={searchPlaceholder:"搜尋聊天名稱",searchResult:"找到 {count} / {total} 筆",ownerIssues:"{count} 個會話尚未設定「我是誰」",ownerStatus:{missing:"未設定",unresolved:"需確認"},noSearchResult:"未找到匹配的聊天紀錄",selectAll:"全選",shiftClickHint:"按住 Shift 點擊可範圍多選",selected:"已選 {count} 個",empty:"暫無聊天紀錄",delete:"刪除所選項目",confirmTitle:"確認刪除",confirmMessage:"確定要刪除選取的 {count} 個聊天紀錄嗎?此操作無法復原。",deleting:"正在刪除...",columns:{name:"名稱",platform:"平台",owner:"我是誰",messages:"訊息數",summaries:"AI摘要",aiChats:"AI 對話",importedAt:"匯入時間"},clickToEdit:"點擊即可編輯名稱",merge:"合併所選項目",mergeHint:"選擇 2 個以上同聊天類型的聊天紀錄才能合併",mergeConfirmTitle:"合併聊天紀錄",mergeConfirmMessage:"即將合併所選的 {count} 個聊天紀錄,並建立一筆新的合併紀錄。",deleteOriginalsLabel:"合併後刪除原始聊天紀錄",mergeRiskWarning:"強提醒:刪除後無法復原,且跨平台上下文差異可能導致語意錯位或混亂。請先備份原始資料並確認你已理解風險。",mergeSteps:{exporting:"正在匯出聊天紀錄...",parsing:"正在解析檔案...",checking:"正在偵測衝突...",merging:"正在合併資料...",cleaning:"正在清理暫存檔案..."},mergeSuccess:"成功合併 {count} 個聊天紀錄",mergeError:"合併失敗:{error}",mergedSuffix:"合併"},sU={batchManage:oU},iU={name:"DeepSeek"},lU={name:"通義千問"},cU={name:"Gemini"},uU={name:"MiniMax"},dU={name:"GLM"},fU={name:"Kimi"},pU={name:"豆包"},hU={name:"矽基流動"},mU={name:"Groq"},gU={name:"OpenRouter"},vU={name:"xAI"},yU={deepseek:iU,qwen:lU,gemini:cU,minimax:uU,glm:dU,kimi:fU,doubao:pU,siliconflow:hU,groq:mU,openrouter:gU,xai:vU,"openai-compatible":{name:"第三方服務"}},bU={chatExplorer:"對話式探索",sqlLab:"SQL 實驗室"},wU={scrollToBottom:"回到底部",history:{loadEarlier:"載入更早對話"},input:{placeholderWithSlash:"輸入你的問題,或輸入 / 選擇技能、輸入 {'@'} 選擇成員...",placeholderWithActiveSkill:"已選擇 /{name},請輸入具體問題...",slashHint:"輸入 / 選擇技能",useSkill:"選擇技能",mentionHint:"輸入 {'@'} 選擇成員",mentionEmpty:"沒有符合的成員",mentionEmptyHint:"可按暱稱、別名或帳號搜尋",slashEmpty:"沒有符合的技能",slashEmptyHint:"開啟技能管理匯入內建技能,或建立自訂技能",manageSkills:"管理技能",previewTagsLabel:"標籤",previewToolsLabel:"工具",previewUnavailable:"暫無可預覽的技能提示詞",quickAsk:"快速提問",editQuickAsk:"編輯快速提問",send:"送出",needMoreThanSkill:"只選擇技能還不能送出,請繼續輸入具體問題",needQuestion:"請輸入問題後再送出"},fork:{success:"已複製對話",failed:"複製對話失敗"},backgroundTask:{runningShort:"進行中",runningTitle:"AI 正在背景推理",runningDescription:"上一個問題仍在推理中,請等待完成或先停止。",blockedAction:"目前回答仍在生成中,請先等待完成或手動停止。",return:"返回查看"},message:{copy:{tooltip:"複製 Markdown",success:"Markdown 已複製到剪貼簿",failed:"複製 Markdown 失敗"},process:{label:"執行過程",processing:"處理中",processed:"已處理",duration:"耗時 {duration}",working:"正在處理",planning:"正在規劃",failed:"未完成",step:"{count} 步",steps:"{count} 步"},toolResult:{view:"查看結果",title:"傳送給 AI 的工具結果",copy:"複製結果",copySuccess:"工具結果已複製",copyFailed:"複製工具結果失敗",displayTruncated:"此歷史結果只保存了截斷版本;原本那一輪 AI 可能看到了更完整的內容。"},edit:{tooltip:"編輯並重新生成",submit:"送出",overwriteSubsequent:"覆蓋後續所有對話"},fork:{tooltip:"從此處複製對話"},chart:{expand:"開啟大圖",empty:"暫無資料",rows:"{count} 行資料",truncated:"已截斷"},generating:"正在產生回覆...",summary:{label:"上下文摘要",info:"以上對話已被壓縮為摘要以節省上下文空間"},plan:{label:"分析計畫",evidenceNeeded:"所需證據",suggestedTools:"建議工具",successCriteria:"完成標準",noTools:"無"},think:{labels:{think:"已思考",analysis:"分析",reasoning:"推理",reflection:"反思",planValidation:"產生計畫",other:"思考({tag})"},loading:"思考中",duration:"耗時 {seconds} 秒"},toolParams:{keywords:"關鍵字",time:"時間",getMessages:"取得 {count} 則訊息",limit:"限制 {count} 則",contextWithMessages:"{msgCount} 則訊息的前後各 {contextSize} 則上下文",context:"前後各 {size} 則上下文",topMembers:"前 {count} 名成員",search:"搜尋",getMemberList:"取得成員列表",memberId:"成員 ID",timeStats:{hourly:"按小時",weekday:"按星期",daily:"按日期"}}},thinking:{processingResult:"正在整理結果",called:"已執行:",analyzing:"正在分析問題...",compressing:"正在壓縮上下文...",toolProgress:{checking_capabilities:"正在檢查檢索能力",semantic_search:"正在進行語意檢索",keyword_search:"正在進行關鍵字檢索",assembling_evidence:"正在整理證據"}},statusBar:{model:{notConfigured:"AI 尚未設定"},agent:{label:"Agent",contextTokens:"上下文",phase:{compressing:"壓縮上下文",preparing:"準備中",thinking:"思考中",tool_running:"工具執行中",responding:"回覆中",completed:"已完成",aborted:"已停止",error:"錯誤"},phaseShort:{compressing:"壓縮",preparing:"準備",thinking:"思考",tool_running:"工具",responding:"回覆",completed:"完成",aborted:"停止",error:"錯誤"}},thinking:{title:"思考強度",tooltip:"設定模型的思考強度",level:{default:"預設",off:"關閉",minimal:"極低",low:"低",medium:"中",high:"高",xhigh:"最高",auto:"自動"}},tokenUsageTitle:"累計 Token 用量",cacheHit:"快取命中",export:{label:"匯出",title:"匯出當前對話"},log:{label:"日誌",title:"開啟當前 AI 日誌檔案",openFailed:"開啟日誌失敗",openFailedDesc:"請稍後重試"}},conversation:{newChat:"新對話",newConversation:"新建對話",empty:"暫無歷史紀錄",startNew:"開始新對話",titlePlaceholder:"輸入標題...",group:{last7Days:"最近 7 天",last30Days:"最近 30 天"},rename:"重新命名",copyId:"複製 ID",delete:"刪除",export:{createdAt:"建立時間",user:"使用者",assistant:"AI 助手",noMessages:"對話沒有訊息"}},error:{title:"處理失敗",detail:"錯誤詳情",viewDetail:"查看詳情",requestUrl:"請求路徑",statusCode:"狀態碼",responseBody:"回應內容",responseHeaders:"回應標頭",requestBody:"請求主體",name:"錯誤名稱",message:"錯誤訊息",stack:"堆疊資訊",cause:"錯誤原因",provider:"服務商",copyAll:"複製全部",copied:"已複製到剪貼簿",unknown:"未知錯誤"},dataSource:{title:"資料來源",keywords:"關鍵字:",empty:"暫無資料",emptyHint:"傳送問題後,相關紀錄會顯示在這裡",totalRecords:"共 {count} 筆紀錄",loadMore:"載入更多"},evidence:{title:"依據證據",query:"問題",criteria:"判定標準",empty:"未找到明確可計入的證據",totalSources:"共 {count} 條來源",mode:{auto:"自動",hybrid:"語意 + 關鍵字",semantic:"語意檢索",keyword:"關鍵字檢索"},group:{included:"計入證據",excluded:"不計入",uncertain:"不確定"},warning:{criteria_missing:"未提供判定標準,分組結果較為保守",keywords_missing_for_hybrid:"未提供關鍵字,已退化為純語意檢索",keywords_required_for_keyword_mode:"關鍵字模式需要提供關鍵字",semantic_unavailable:"語意索引不可用,已改用關鍵字檢索",keyword_unavailable:"關鍵字檢索不可用",semantic_partial:"語意檢索結果可能不完整"}}},_U={editor:{errorEmptySQL:"請輸入 SQL 語句",placeholder:"輸入 SQL 查詢語句...",tip:"提示:雙擊左側欄位名可插入到 SQL",history:"歷史",generateAndRun:"生成並執行",switchToSQLMode:"切換為 SQL 輸入模式",switchToPromptMode:"切換為 Prompt 輸入模式",run:"執行"},schema:{tables:"資料表",doubleClickToInsert:"雙擊插入到 SQL",primaryKey:"主鍵"},result:{queryError:"查詢錯誤",rows:"{count} 行",readableTime:"時間戳轉日期",viewChat:"檢視聊天紀錄",summarize:"整理摘要",pageSize:"每頁",emptyResult:"查詢結果為空",initialState:"輸入 SQL 語句後執行,即可查看結果",initialHint:"僅支援唯讀查詢(SELECT / WITH),建議添加 LIMIT 以提升效能",summaryTitle:"AI 分析摘要",analyzing:"AI 正在分析結果...",errorSummary:"總結失敗"},generate:{placeholder:"例如:查找發言最多的前 10 個成員、統計每天的訊息數量、找出包含「買房」關鍵字的訊息...",errorEmptyPrompt:"請輸入查詢需求",errorGenerate:"AI 產生失敗",errorTokenLimit:"模型輸出達到 token 上限,未能生成完整回覆(可能思考消耗了過多 token)",aiOutput:"AI 輸出",thinking:"思考中…",thinkingProcess:"思考過程",waitingAI:"等待 AI 回應...",defaultPromptPrivate:"請統計最近1年私聊中雙方各自的:訊息總數、訊息占比、活躍天數、日均訊息數(按活躍天計算)、首次發言時間、最近發言時間;依訊息總數降序顯示。",defaultPromptGroup:"請統計最近1年群聊中各成員的:訊息總數、訊息占比、活躍天數、日均訊息數(按活躍天計算)、文字訊息占比;顯示成員名稱並依訊息總數降序,返回前20名。"},history:{title:"AI 產生紀錄",execute:"執行",empty:"暫無歷史紀錄",justNow:"剛才",minutesAgo:"{count} 分鐘前",hoursAgo:"{count} 小時前",today:"今天"}},kU={selector:{title:"選擇一個助手開始對話",heroTitlePrefix:"使用",heroTitleSuffix:"開始對話",subtitle:"每位助手都擅長不同分析任務,請選擇最符合需求的一位",noAssistants:"當前場景暫無可用助手",manage:"管理助手",addNew:"新增助手"},config:{viewTitle:"檢視設定",createTitle:"新增助手",editTitle:"編輯助手",betaWarning:"目前仍為測試功能,設定邏輯後續可能調整,請先備份提示詞與相關設定。",tabs:{basic:"基本設定",tools:"工具管理"},name:"名稱",systemPrompt:"系統提示詞",chatType:"適用聊天類型",chatTypeAll:"全部",chatTypeGroup:"群聊",chatTypePrivate:"私聊",locale:"適用語言",localeHint:"不選代表套用全部語言",presetQuestions:"預設問題",addQuestion:"新增問題...",coreTools:"核心工具",coreToolsHint:"基礎資料取得工具,始終啟用,無法關閉",analysisTools:"分析工具",analysisToolsHint:"按需開啟的分析能力,勾選後才會對 AI 可用",selectAll:"全選",deselectAll:"全不選",resetDefault:"還原預設",create:"建立"},market:{title:"助手管理",tabs:{local:"本地助手",market:"助手市場"},localHint:"管理已導入的助手,可配置或刪除",marketHint:"瀏覽助手市場,導入後即可使用和自由編輯",default:"預設",reimport:"重新導入",imported:"已導入",import:"導入",importing:"導入中...",importSuccess:"導入成功",importFailed:"導入失敗",viewConfig:"查看配置",duplicate:"複製",addAssistant:"新增助手",noLocal:"暫無已導入的助手",noCatalog:"暫無可用助手,請檢查網路連線",loading:"載入中...",loadFailed:"載入失敗,請檢查網路連線",retry:"重試"},fallbackName:"助手",duplicateSuffix:"(副本)",upgrade:{title:"預設助手有新版本",message:"目前的預設助手來自舊版範本,且包含自訂內容。ChatLab 會先將它儲存為「{backupName}」,再切換到最新版本。",backupName:"{name}(舊版備份)",skipHint:"跳過後,目前的範本版本將不再提醒。",skip:"跳過",skipFailed:"跳過失敗",confirm:"備份並升級",success:"預設助手已升級",successDescription:"舊設定已儲存為「{name}」",failed:"升級失敗"},toast:{loadFailed:"載入失敗",createSuccess:"建立成功",createFailed:"建立失敗",saveSuccess:"儲存成功",saveFailed:"儲存失敗",resetSuccess:"已還原預設",resetFailed:"恢復失敗",unknownError:"未知錯誤"},builtinToolDesc:{get_chat_overview:"取得聊天概覽資訊",search_messages:"搜尋聊天訊息",deep_search_messages:"深度搜尋聊天訊息",get_recent_messages:"取得最近訊息",get_message_context:"取得訊息上下文",get_conversation_between:"取得兩人對話",get_members:"取得成員列表",get_schema:"查看資料表結構",get_member_stats:"取得成員統計",get_member_name_history:"取得成員改名歷史",get_time_stats:"取得時間統計",get_segment_messages:"取得段落訊息",get_segment_summaries:"取得段落摘要",message_type_breakdown:"訊息類型分佈",peak_chat_hours_by_member:"成員活躍時段",member_activity_trend:"成員活躍趨勢",silent_members:"沉默成員偵測",reply_interaction_ranking:"回覆互動排行",mutual_interaction_pairs:"互動好友配對",member_message_length_stats:"訊息長度統計",unanswered_messages:"未回覆訊息",daily_active_members:"每日活躍人數趨勢",conversation_initiator_stats:"話題發起者統計",activity_heatmap:"活躍度熱力圖",response_time_analysis:"回應時間分析",keyword_frequency:"高頻詞統計",render_chart:"生成動態圖表",semantic_search_current_chat:"檢索聊天歷史"}},CU={market:{title:"技能管理",tabs:{local:"本地技能",market:"技能市場"},localHint:"管理已導入的技能,可配置或刪除",marketHint:"瀏覽技能市場,導入後即可使用和自由編輯",reimport:"重新導入",imported:"已導入",import:"導入",importing:"導入中...",importSuccess:"導入成功",importFailed:"導入失敗",noLocal:"暫無已導入的技能",noCatalog:"暫無可用技能,請檢查網路連線",addSkill:"新建自定義技能",loading:"載入中...",loadFailed:"載入失敗,請檢查網路連線",retry:"重試"},active:{label:"主動呼叫技能:{name}"}},SU={toolTest:{coreTools:"核心工具",analysisTools:"分析工具",parameters:"參數",arrayPlaceholder:"多個值用逗號分隔",execute:"執行",cancel:"取消",elapsed:"耗時 {ms}ms",result:"執行結果",truncated:"結果過大,已截斷顯示。建議減小 limit 參數以獲取完整資料。"}},xU={tab:bU,chat:wU,sqlLab:_U,assistant:kU,skill:CU,lab:SU},AU={loading:"正在分析詞頻...",stats:{wordsLabel:"總詞數",clickHint:"提示:點擊詞雲可查看相關訊息"},config:{maxWords:"顯示詞數",sizeScale:"字體大小",userFilter:"使用者篩選",posFilter:"詞性過濾",enableStopwords:"過濾停用詞",dict:"分詞詞庫"},size:{small:"小",medium:"中",large:"大",xlarge:"特大"},posFilter:{all:"全部詞性",meaningful:"常用詞性",custom:"自訂",customHint:"自選詞性",selectMeaningful:"常用詞性",selectAll:"全選",clearAll:"清空"},empty:{title:"暫無詞雲資料",description:"目前篩選條件下的文字訊息不足,無法產生詞雲"},dict:{zhCN:"簡體中文",zhTW:"繁體中文",download:"下載詞庫","download_zh-CN":"下載簡體詞庫","download_zh-TW":"下載繁體詞庫",needDownload:"詞雲已使用內建分詞結果顯示。下載中文詞庫可提升分詞準確度。",downloadHint:"~8MB",downloadSuccess:"詞庫下載成功",downloadFailed:"詞庫下載失敗",promptTitle:"繁體中文詞庫",promptDescription:"偵測到您使用繁體中文,詞雲分析需要繁體詞庫才能取得最佳效果。是否立即下載?(約 8MB)",promptDownload:"立即下載",promptLater:"稍後再說"}},PU={title:"關鍵字排行榜",description:"分析群聊中的關鍵字使用情況,也能自訂不同榜單",countTemplate:"共 {count} 位成員",templateLabel:"範本:",newTemplate:"+ 新增範本",searchPlaceholder:"輸入後搜尋",clear:"清空",templateHint:"* 右鍵範本可編輯或刪除",keyword:"關鍵字",ranking:"排行榜",multiColorMode:"多色模式",times:"{count} 次",timesWithPercent:"次 ({percent}%)",loading:"正在分析資料...",empty:"暫無資料,請嘗試新增關鍵字或切換範本",contextMenu:{edit:"編輯",delete:"刪除"},modal:{createTitle:"建立範本",editTitle:"編輯範本",templateName:"範本名稱",templateNamePlaceholder:"如:正能量",keywords:"關鍵字",keywordPlaceholder:"輸入後按 Enter 新增",update:"更新"},templates:{laugh:{name:"歡樂值",keywords:"哈哈,xswl,lol,笑死,233",description:"統計群內的快樂指數"},sad:{name:"沮喪量",keywords:"想死,難受,哭了,崩潰,裂開,無語,累了",description:"統計群內的負面情緒"},praise:{name:"捧哏",keywords:"牛逼,666,厲害,強,nb,大佬,羨慕,好強",description:"統計群內最會誇人的成員"},slacker:{name:"摸魚",keywords:"摸魚,下班,餓了,困了,不想上班,什麼時候下班",description:"統計群內最想下班的打工人"},gossip:{name:"吃瓜",keywords:"吃瓜,細說,真的假的,展開說說,尊嘟假嘟,臥槽,離譜",description:"統計群內最愛吃瓜的成員"},polite:{name:"禮貌",keywords:"謝謝,麻煩,收到,好的,辛苦,打擾,請教",description:"統計群內最客氣的成員"},curious:{name:"疑問",keywords:"為什麼,啥,怎麼,不懂,求教",description:"統計群內問題最多的成員"}}},MU={title:"熱門複讀",loading:"正在載入複讀資料...",description:"單次複讀參與人數最多的內容",countTemplate:"共 {count} 筆熱門複讀",people:"{count}人",times:"{count} 次",viewChat:"檢視聊天紀錄",empty:"暫無複讀資料"},TU={heroPrefix:"共分析了",heroMiddle:"則訊息,",heroMiddleSecond:"產生了",heroSuffix:"個不同詞彙",topTopicsPrefix:"你們最愛聊:",hotTopic:"熱門話題",hotTopicDesc:"出現了 {count} 次",richness:"詞彙豐富度",richnessValue:"{value}%",richnessDesc:"不重複詞 {unique} / 總詞數 {total}",chatStyle:"聊天風格",styleEncyclopedia:"百科全書型",styleEncyclopediaDesc:"名詞佔比高,愛聊人、地、事",styleAction:"行動派",styleActionDesc:"動詞佔比高,愛討論做什麼",styleExpressive:"表達派",styleExpressiveDesc:"形容詞佔比高,善於修飾表達",styleBalanced:"均衡型",styleBalancedDesc:"聊天內容多元,各類話題均衡",expressionStyle:"表達風格",expressionCasual:"簡潔口語",expressionCasualDesc:"用詞簡短,輕鬆隨意",expressionFormal:"正式書面",expressionFormalDesc:"用詞考究,表達嚴謹",expressionMixed:"混合風格",expressionMixedDesc:"口語與書面兼顧",watermark:"話題畫像 · Topic Profile",sharedTopics:"共同話題"},IU={title:"群成員口頭禪",description:"看看每位成員最具代表性的重複短句",memberTitle:"{name}的口頭禪",memberDescription:"依出現次數查看這位成員最常說的話",loading:"正在分析口頭禪資料...",times:"{count} 次",memberCount:"共 {count} 位成員",phraseCount:"共 {count} 條口頭禪",viewChat:"查看相關訊息",empty:{title:"暫無口頭禪資料"}},DU={loading:"正在分析語言偏好...",empty:"暫無足夠的文字訊息進行語言分析",card:{diversityTitle:"詞彙深度",diversityDesc:"不重複詞彙佔比",styleTitle:"聊天氣質",styleDesc:"基於詞性分佈推導的表達風格",punctTitle:"標點性格",punctDesc:"最常用的標點風格",watermark:"語言偏好 · Language Preference",radarFactual:"事實性",radarActive:"行動感",radarDescriptive:"描述欲",radarAffable:"親和力",radarIntense:"程度感",radarNoun:"名詞",radarVerb:"動詞",radarAdj:"形容詞",radarModal:"語氣詞",radarAdv:"副詞",topCatchphrases:"熱門口頭禪",languageProfiles:"語言畫像"},catchphrasePK:{title:"口頭禪 PK",sharedCount:"{count} 個共同口頭禪",hint:"提示:點擊可查看相關訊息,粉框標記為共同口頭禪"},pos:{title:"詞性圖譜",styleEncyclopedia:"百科全書派",styleAction:"行動派",styleExpressive:"感性派",styleBalanced:"均衡派"},modal:{title:"語氣詞畫像",toneSoft:"軟萌親和",toneCurious:"好奇探索",toneCasual:"隨和建議",toneCalm:"沉穩內斂",toneMixed:"多元風格",empty:"暫無語氣詞資料"},punctuation:{title:"標點性格",none:"無標點",personalityDeep:"深沉文學型",personalityPassionate:"情緒飽滿型",personalityCurious:"好奇寶寶型",personalityCheerful:"心情愉悅型",personalityFreeflow:"意識流型",personalityPrecise:"嚴謹規範型",empty:"暫無標點資料"}},EU={wordcloud:AU,keywords:PU,hotRepeat:MU,topicProfile:TU,catchphrase:IU,languagePreference:DU},$U={title:"你是誰?",subtitle:"選擇你在這個對話中的身分",description:"設定後你的訊息會顯示在聊天紀錄檢視器右側,AI 對話也能識別你的身分,分析更準確。同平台的其他對話會自動套用。",searchPlaceholder:"搜尋成員",noMatch:"沒有找到符合的成員",empty:"暫無成員資料",loadError:"成員資料載入失敗,請重試",later:"稍後",notInConversation:"目前對話中沒有我",save:"儲存",clear:"清除目前選擇",saved:"已設定你的身分",appliedToOthers:"已自動套用到 {count} 個同平台對話",saveFailed:"設定身分失敗",currentOwner:"我是:{name}",choose:"選擇我是誰",change:"修改",helper:"設定後 AI 對話能識別你的身分,分析更準確"},RU={title:"成員管理",description:"共 {count} 位成員,可為成員新增別名備註或移除成員",searchPlaceholder:"搜尋群暱稱、帳號名稱、ID 或別名",noMatch:"沒有找到符合的成員",empty:"暫無成員資料",table:{accountName:"帳號名稱",groupNickname:"群暱稱",messageCount:"訊息數",lastMessageTime:"最後發言",customAlias:"自訂別名",actions:"操作"},aliasPlaceholder:"輸入後按 Enter 新增",delete:"刪除",deleteSelected:"刪除所選",mergeSelected:"合併所選",selectedCount:"已選 {count} 位成員",pagination:"顯示第 {start} - {end} 筆,共 {total} 位成員",tip:"提示:新增別名後,搜尋與 AI 分析時會更容易辨識聊天對象。",mergeModal:{title:"確認合併成員?",content:"將成員 {source}({sourceCount} 則訊息)合併至 {target}({targetCount} 則訊息)下。預設保留訊息較多一方的名稱。",hint:"合併後無法復原,被合併成員的訊息將全部歸屬至保留成員。",cancel:"取消",confirm:"確認合併"},batchDeleteModal:{title:"確認批次刪除成員?",content:"即將刪除所選的 {count} 位成員及其 {messageCount} 則訊息,此操作無法復原。"},modal:{title:"確認刪除成員?",content:"即將刪除成員 {name} 及其 {count} 則訊息,此操作不可復原。",cancel:"取消",confirm:"確認刪除"}},LU={note:"備註:QQ 舊版客戶端支援匯出 txt 聊天紀錄,該版本能取得較完整的暱稱變更紀錄",title:"暱稱變更紀錄",loading:"載入中...",hasChanges:"{count} 位成員曾修改過暱稱",noChanges:"暫無成員修改暱稱",current:"當前",empty:"該群組所有成員均未修改過暱稱",loadingText:"正在載入暱稱變更紀錄..."},OU={loading:"正在分析 {'@'} 互動資料...",rankingTitle:"{'@'} 互動排行",rankModes:{mentioners:"主動 {'@'}",mentioned:"被 {'@'}"},topMentionersDescription:"依主動 {'@'} 次數排序",topMentionedDescription:"依被 {'@'} 次數排序",times:"次",emptyTitle:"📱 {'@'} 互動分析",empty:"暫無 {'@'} 互動資料"},NU={ownerPrompt:$U,list:RU,nicknameHistory:LU,relationships:OU,private:{title:"對話成員",description:"共 {count} 位成員,可為成員新增別名備註用於搜尋和 AI 分析"}},FU={title:"聊天紀錄檢視器"},qU={indexMissingTitle:"尚未建立可用的會話摘要索引",indexMissingDescription:"原始聊天紀錄仍可直接查看。產生索引後,左側會依聊天片段整理摘要;此操作不會自動呼叫 AI。",generateIndex:"產生索引",indexGenerated:"已產生 {count} 個聊天片段",indexGenerationFailed:"會話索引產生失敗",indexLoadFailedTitle:"會話摘要索引載入失敗",indexLoadFailedDescription:"原始聊天紀錄仍可查看。請重試載入,現有摘要不會被修改。"},BU={loading:"載入中...",noMessages:"暫無訊息",tryAdjustFilter:"嘗試調整篩選條件",loadingMore:"載入更多...",scrollUpForMore:"↑ 向上捲動載入更多",scrollDownForMore:"↓ 向下捲動載入更多"},HU={messageId:"訊息 ID",memberPlaceholder:"成員",keywordsPlaceholder:"關鍵字(多個請用逗號分隔,按 Enter 搜尋)",startDate:"起始日期",endDate:"結束日期",reset:"重置",filter:"篩選"},VU={timeline:"摘要",noSessions:"暫無摘要",generateSummary:"產生摘要",updateSummary:"更新摘要",summaryStale:"· 待更新",tooFewMessages:"訊息太少"},zU="摘要產生失敗",jU="未知錯誤",WU={title:"批次產生摘要",trigger:"批次產生",byRange:"依範圍",byTime:"依時間",selectRange:"選擇範圍",rangeStart:"最早",rangeInfo:"約",sessionsUnit:"個會話",rangeEnd:"最近",timeRange:"選擇時間範圍",today:"今天",yesterday:"昨天",week:"最近7天",month:"最近30天",custom:"自訂",found:"找到",hasSummary:"個已有摘要",needsUpdate:"個待更新",tooFewMessages:"個訊息太少",pending:"待產生:",unit:"個",noPending:"沒有可產生摘要的會話",noSessions:"該時間範圍內沒有會話",checking:"檢查中...",loading:"載入中...",progress:"進度",session:"會話",statusSuccess:"成功",statusSkipped:"跳過",statusFailed:"失敗",success:"成功:",failed:"失敗:",skipped:"跳過:",start:"開始產生",stop:"停止"},UU={title:"話題",loadFailed:"話題載入失敗",preflightFailed:"無法估算產生範圍",startFailed:"無法開始產生話題",actionFailed:"話題任務操作失敗",deleteFailed:"刪除話題失敗",emptyTitle:"這一天還沒有話題",emptyDescription:"由 AI 依自然日閱讀聊天紀錄,並將穿插或中斷後再次出現的相同討論歸入一個話題。僅在你主動建立時消耗額度。",batchSummarize:"批次總結",batchSummarizeTitle:"批次總結話題",summarizeDay:"總結本日話題",createDescription:"選擇起點後會處理到聊天記錄最後一天,可隨時暫停並繼續。",start:"開始建立",noMessages:"範圍內沒有訊息",updateDay:"更新當天",pause:"暫停",resume:"繼續",progress:"已完成 {completed}/{total} 天",progressBlock:"正在分析第 {current}/{total} 個原文區塊,已等待 {seconds} 秒",progressFinalizing:"正在收束當天話題,已等待 {seconds} 秒",stale:"當天聊天紀錄已變更。以下仍是上一次成功結果,更新前請以原始訊息為準。",evidence:"原始訊息",deleteTitle:"刪除當天話題?",deleteDescription:"只會刪除這一天的 AI 衍生結果,不會刪除聊天紀錄;之後可以重新建立。",range:{current:"從目前瀏覽日開始",currentDescription:"從 {date} 處理到聊天記錄最後一天",custom:"選擇開始日期",customDescription:"從指定日期處理到聊天記錄最後一天",today:"從今天開始",todayDescription:"只處理今天有訊息的記錄",year:"從今年開始",yearDescription:"處理今年至今有訊息的日期",all:"從最開始",allDescription:"從最早聊天日期開始完整回溯"},estimate:{range:"{start} 至 {end}",days:"活躍天數",messages:"訊息",calls:"預計呼叫"},status:{pending:"等待開始",running:"正在整理話題",paused:"已暫停",completed:"已完成",failed:"產生失敗",cancelled:"已取消"},topicState:{active:"進行中",closed:"已告一段落"}},GU={viewContext:"檢視上下文",replyTo:"回覆",expandMessyContent:"展開完整內容",collapseMessyContent:"收起"},YU={drawer:FU,workspace:qU,messageList:BU,filter:HU,timeline:VU,summaryFailed:zU,summaryUnknownError:jU,batchSummary:WU,topics:UU,messageItem:GU},KU={rankingView:"排行榜檢視",memberView:"成員檢視",matrixView:"矩陣檢視",modelSettings:"模型參數",lookAhead:"鄰近人數",lookAheadDesc:"每則訊息往後納入幾位發言者",decaySeconds:"時間衰減(秒)",decaySecondsDesc:"值越大,遠距離訊息權重越高",applySettings:"套用設定",noData:"暫無資料",selectMember:"選擇成員",selectMemberHint:"請從左側選擇一個成員",msgCount:"發言數",relationCount:"關係數",relationsByIntimacy:"發言鄰近度排行",noRelations:"暫無關係資料",intimacy:"鄰近度",interactionRanking:"互動排行榜",score:"鄰近度",coOccurrence:"共現",times:"次",totalMembers:"群成員",totalMessages:"訊息總數",involvedMembers:"參與成員",edgeCount:"關係數"},XU={typeDistribution:"訊息類型分佈",hourlyDistribution:"小時分佈",weekdayDistribution:"星期分佈",monthlyDistribution:"月份分佈",yearlyDistribution:"年份分佈",timeHeatmap:"時間熱力圖",heatmapHint:"顯示聊天時間分布規律",calendarHeatmap:"訊息日曆",calendarHint:"每日訊息分佈",calendarTooltipMessages:"訊息",lengthDetailTitle:"短訊息分佈 (1-25字)",lengthDetailHint:"逐字統計",lengthGroupedTitle:"長度區間分佈",lengthGroupedHint:"每5字一組",noTextMessages:"暫無文字訊息",noData:"暫無資料",profile:{avgLengthUnit:"{count} 字/則",textExpression:"文字表達力",textExpressionDesc:"最長訊息 {count} 字",mediaRichness:"媒體豐富度",shortMaster:"短訊息達人",shortMasterDesc:"共 {count} 則 ≤5字",essayLover:"小作文愛好者",essayLoverDesc:"≥{threshold}字的訊息",typeDistribution:"訊息類型",heroLine1Prefix:"你們共留下了",heroLine1Suffix:"則訊息"},typeCard:{watermark:"類型報告",nonTextPrefix:"除文字外,發了",nonTextImage:"圖片",nonTextEmoji:"表情包",nonTextVoice:"語音",nonTextVideo:"影片",nonTextFile:"檔案",nonTextLink:"連結",unitImage:"張圖片",unitEmoji:"個表情包",unitVoice:"則語音",unitVideo:"個影片",unitFile:"個檔案",unitLink:"個連結"},timeCard:{hourlyDistribution:"24h 分佈",watermark:"時間報告",heroDaysIn:"天裡有",heroDaysActive:"天在聊天",heroAvgPrefix:"平均每天",heroAvgSuffix:"則訊息",personalityNightOwl:"夜貓子",personalityEarlyBird:"早起鳥",personalityLunchChat:"午間閒聊",personalityEveningChat:"晚間活躍",personalityDaytime:"白天活躍",personalityEveryday:"全勤達人",personalityWeekend:"週末活躍",personalityWeekday:"工作日活躍",peakRecord:"巔峰紀錄",peakRecordDesc:"單日最多 {count} 則",topHoursLabel:"最活躍時段",peakWeekdayLabel:"最活躍週幾",weekendRatio:"週末佔比",weekendRatioDesc:"週末訊息佔比"},timeAnalysis:{memberTrendTitle:"訊息趨勢",memberTrendHint:"各成員的月度訊息量變化"},typeAnalysis:{textDepthTitle:"文字深度分析",textTotal:"文字訊息總數",avgLength:"平均字數",medianLength:"中位數長度",maxLength:"最長訊息",percentiles:"文字長度分位數",shortMessages:"短訊息(≤5字)",essayMessages:"小作文(≥30字)"}},JU={layout:"佈局",circular:"環形",force:"力導向",directed:"有向",reset:"重置",graphHint:"共 {nodes} 位成員,{links} 條互動關係",noInteraction:"暫無艾特互動資料"},QU={canvasLabel:"群聊互動關係星空圖",loading:"正在整理群內關係...",loadFailed:"關係星空圖載入失敗",webglUnavailable:"目前環境無法顯示星空圖",webglUnavailableDescription:"請啟用瀏覽器硬體加速,或改用支援 WebGL 的環境後重試。",emptyTitle:"暫無足夠的互動關係",emptyDescription:"目前時間範圍內至少需要兩位成員產生回覆、@ 或相鄰發言。",resetView:"重設視角",closeDetail:"關閉成員詳情",messageCount:"本群訊息",relationshipScore:"關係強度",lastInteraction:"最近互動",signalComposition:"互動構成",replies:"回覆",mentions:"{'@'} 提及",proximity:"發言臨近",strongConnections:"關係最密切",connectionSignals:"回覆 {replies} · {'@'} {mentions} · 臨近 {proximity}",noConnections:"暫無可顯示的直接關係"},ZU={empty:{title:"暫無關係資料",description:"目前時間範圍內沒有對話記錄。"},trend:{title:"主動性趨勢",hint:"藍色線為 {name} 的月度主動發起佔比,50% 線為均衡基準"},hero:{totalSessionsPrefix:"你們共進行了",totalSessionsSuffix:"次對話",initiativePrefix:"其中有",initiativeByPrefix:"的開場白由",initiativeBySuffix:"發起",initiateTimes:"次發起"},closerTitle:"話題終結者",closerHint:"統計話題結束時最後發言的人。",watermarkReport:"關係報告",monthFormat:"{year}年{month}月",monthShortFormat:"{month}月",iceBreaker:{title:"破冰達人",hint:"超過 24 小時沉默後主動打破僵局的次數"},responseLatency:{title:"回覆速度",hint:"收到對方訊息後平均多久回覆",seconds:"{n} 秒",minutesSeconds:"{m}分{s}秒",hours:"{n} 小時",hoursMinutes:"{h} 小時 {m} 分鐘"},perseverance:{title:"鍥而不捨",hintWithThreshold:"對方{threshold}內還沒回覆就又發了一次訊息的次數",thresholdMinutes:"{n}分鐘"},trajectory:{title:"互動軌跡",description:"從月度趨勢中查看你們的互動變化",metrics:{activity:"對話頻率",response:"回覆速度",perseverance:"連續傳送"},conversations:"對話次數",iceBreaks:"重新開口",keyMoments:"關鍵月份",activityPeak:"互動高峰",activityPeakDetail:"共 {count} 次對話",iceBreakPeak:"重新開口最多",iceBreakPeakDetail:"共重新開口 {count} 次",fastestResponse:"回覆最快",fastestResponseDetail:"平均回覆 {duration}",showAll:"查看全部月份",hideAll:"收起月度資料",month:"月份"}},eG={loadError:"無法載入聊天歷程",empty:"暫無足夠的聊天記錄來產生歷程",hero:{prefix:"你們的聊天記錄跨越",summary:"其中有 {activeMonths} 個月、{activeDays} 天留下了訊息。",filteredSummary:"在目前篩選範圍內,有 {activeMonths} 個月、{activeDays} 天留下了訊息。",footprint:"聊天足跡",monthCount:"跨越 {count} 個月",monthTooltip:"{month} · {count} 則訊息"},metrics:{peakMonth:"最熱鬧的月份",activeMonths:"活躍月份",longestConversation:"最長一次暢聊",longestSilence:"最長一次沉默",messagesAndDays:"{messages} 則訊息 · 活躍 {days} 天",monthsRatio:"{active} / {total} 個月",activeDays:"共活躍 {count} 天",conversationDetail:"{date} · {count} 則訊息",reopenedBy:"由 {name} 再次開口",reopened:"隨後重新開始聊天",noIndex:"暫無對話索引",noSilence:"沒有超過 24 小時的沉默"},years:{title:"一年一頁",description:"按年份翻看聊天留下的篇章",summary:"{messages} 則訊息 · {days} 個活躍日 · {months} 個活躍月",quiet:"這一年沒有留下訊息",peak:"高峰月 {count} 則"},milestones:{title:"關鍵節點",description:"從開始、熱鬧到重逢,串起這段聊天歷程",start:"從這裡開始",startDetail:"現有記錄中的第一則訊息",peak:"最熱鬧的月份",peakDetail:"這個月留下了 {count} 則訊息",longestConversation:"最長一次暢聊",conversationDetail:"持續 {duration},共 {count} 則訊息",longestSilence:"最長一次沉默",silenceRange:"{start} – {end}",silenceDetailWithMember:"相隔 {duration},由 {name} 再次開口",silenceDetail:"相隔 {duration},重新開始聊天",end:"記錄來到這裡",endDetail:"現有記錄中的最後一則訊息",filteredEndDetail:"目前篩選範圍內的最後一則訊息"},duration:{lessThanMinute:"不到 1 分鐘",minutes:"{count} 分鐘",hours:"{count} 小時",hoursMinutes:"{hours} 小時 {minutes} 分鐘",days:"{count} 天",daysHours:"{days} 天 {hours} 小時",months:"{count} 個月",years:"{count} 年",yearsMonths:"{years} 年 {months} 個月"},watermark:"聊天歷程"},tG={title:"時間軸檢視",description:"以視覺化方式呈現訊息時間分布與活躍週期變化"},nG={rankListPro:{fullRanking:"完整排行榜",memberCount:"共 {count} 位成員"},rankList:{unit:"條"},nicknameHistory:{periodToNow:"{start} ~ 至今",periodRange:"{start} ~ {end}",current:"目前",empty:"暫無暱稱紀錄"},listPro:{countTemplate:"共 {count} 項",fullRanking:"完整排行榜",empty:"暫無資料"}},aG={cluster:KU,message:XU,interaction:JU,groupRelationshipGalaxy:QU,relationship:ZU,journey:eG,timeline:tG,charts:nG},rG="關鍵詞過濾",oG="方案列表",sG="方案名稱",iG="請輸入方案名稱",lG="新方案",cG="新建方案",uG="刪除方案",dG="設為預設",fG="預設方案",pG="關鍵詞過濾",hG="不過濾",mG="管理方案",gG="新增過濾詞",vG="輸入詞語後按 Enter 新增,支援空格或逗號分隔批量新增",yG="新增",bG="過濾詞列表",wG="清空全部",_G="尚無方案,點擊 + 新建",kG="尚無過濾詞,在上方輸入框新增",CG="選擇或建立一個過濾方案",SG="已過濾 {count} 個詞",xG="關閉",AG={title:rG,schemeList:oG,schemeName:sG,schemeNamePlaceholder:iG,defaultSchemeName:lG,createScheme:cG,deleteScheme:uG,setDefault:dG,isDefault:fG,filterScheme:pG,noFilter:hG,manage:mG,addWords:gG,addWordsPlaceholder:vG,add:yG,wordList:bG,clearAll:wG,emptyScheme:_G,emptyWords:kG,selectOrCreate:CG,activeCount:SG,close:xG},PG="聯絡人",MG="已匯入 {count} 個私聊會話",TG="目前時間範圍內有效私聊會話數為 {count}。匯入至少 1 個群聊,或有效私聊達到 5 個後會啟用聯絡人。",IG="沒有符合的聯絡人",DG="暫無",EG="搜尋聯絡人",$G="分數 {value}",RG={"1y":"近1年","2y":"近2年","3y":"近3年","5y":"近5年",all:"全部"},LG={total:"聯絡人",friends:"好友",nonFriends:"群友"},OG={allPools:"全部來源",friends:"好友",nonFriends:"群友"},NG={friends:"好友",groupContacts:"群友"},FG={friend:"好友",manualFriend:"好友 · 手動標記",nonFriend:"群友"},qG={pinned:"置頂聯絡人",friends:"好友",group_contacts:"群友"},BG={contact:"聯絡人",status:"類型"},HG={recompute:"重新計算",markFriend:"標記為好友",unmarkFriend:"取消標記",clearSearch:"清空搜尋",clearSelection:"取消選中",openSourceSession:"前往對話",viewSourceRecords:"查看聊天記錄",viewDetail:"查看 {name} 的詳情"},VG={title:"聯絡人詳情",score:"綜合分",scoreHelp:"綜合分用於聯絡人排序。分數越高,代表互動訊號越強。",lastInteraction:"最近互動",sources:"來源會話",sourceType:{private:"私聊",group:"群聊"},aliases:"別名",signals:"互動訊號",emptyTitle:"選擇一個聯絡人",emptyDescription:"點擊左側聯絡人後,這裡會顯示互動指標和來源會話。"},zG={privateMessages:"{count} 則私聊",privateMessagesLabel:"私聊訊息",activeMonths:"活躍月份",commonGroups:"共同群",lastInteractionShort:"最近",groups:"{count} 個共同群",coOccurrence:"同框次數",replies:"回覆互動",groupSignals:"{count} 次同框"},jG={title:"聯絡人資料可能已過期",message:"偵測到聊天庫發生變化,正在背景更新聯絡人。",inline:"聯絡人資料可能已過期。",later:"稍後"},WG={running:"正在計算聯絡人:{current} / {total} 個會話",updating:"聯絡人資料可能已更新,正在重新計算。",failed:"聯絡人計算失敗",retry:"重試"},UG={recomputed:"聯絡人已重新計算",recomputeStarted:"已開始在背景計算聯絡人",recomputeFailed:"重新計算失敗",markFriendSucceeded:"已標記為好友",markFriendFailed:"標記好友失敗",unmarkFriendSucceeded:"已取消標記",unmarkFriendFailed:"取消標記失敗"},GG={title:PG,subtitle:MG,disabled:TG,empty:IG,emptyValue:DG,search:EG,score:$G,timeRange:RG,stats:LG,filters:OG,tabs:NG,pool:FG,group:qG,table:BG,actions:HG,detail:VG,metrics:zG,stale:jG,task:WG,toast:UG},YG="互動關係",KG="全景關係圖",XG="關係子頁面",JG="搜尋聯絡人",QG="暫無關係圖資料",ZG="隱私模式",eY={"3d":"3D","2d":"2D"},tY={panorama:"全景",close:"高關聯",friends:"僅好友"},nY={"1y":"近1年","2y":"近2年","3y":"近3年","5y":"近5年",all:"全部"},aY={recompute:"重新計算",clearSearch:"清空搜尋",closeDetail:"關閉詳情",backToPanorama:"返回全景",fitView:"適應視圖",focusConnections:"只看它的聯繫"},rY={nodes:"節點",edges:"連線",communities:"相關群組",members:"人數"},oY={friend:"好友",manualFriend:"好友 · 手動標記",nonFriend:"群友"},sY={me:"我",type:"我自己",avatarText:"我"},iY={running:"正在計算互動關係:{current} / {total} 個會話",updating:"關係資料可能已更新,正在重新計算。",failed:"互動關係計算失敗",retry:"重試"},lY={title:"搜尋結果",offCore:"載入鄰域"},cY={title:"相關聯繫人",empty:"目前圖中沒有直接聯繫",connectionScore:"關聯度"},uY={rank:"排名",score:"綜合分",type:"類型",community:"圈層",lastInteraction:"最近互動",privateMessages:"私聊訊息",groupMessages:"群聊訊息",commonGroups:"共同群",emptyValue:"暫無"},dY={recomputeStarted:"已開始背景計算互動關係",recomputeFailed:"重新計算失敗",loadFailed:"互動關係載入失敗",neighborhoodFailed:"鄰域載入失敗",threeUnavailable:"3D 渲染不可用,已切換到 2D。"},fY={label:"互動關係星系圖",label3d:"3D 互動關係星系圖"},pY={title:YG,subtitle:KG,nav:XG,search:JG,empty:QG,privacy:ZG,viewMode:eY,graphScope:tY,timeRange:nY,actions:aY,stats:rY,pool:oY,owner:sY,task:iY,searchResults:lY,connections:cY,detail:uY,toast:dY,canvas:fY},hY="足跡",mY="此檢視將於後續版本開放",gY={nav:"足跡檢視",relationshipChanges:"關係變化"},vY={title:hY,reserved:mY,tabs:gY},yY="讓每一段對話,都有跡可循",bY="本機儲存、隱私優先,透過 AI Agent 和視覺化圖表,輕鬆回顧你的聊天記憶",wY="無需登入",_Y="僅在本機處理",kY="資料不上傳",CY="資料保存在目前瀏覽器的網站儲存空間。清除網站資料也會刪除已匯入的對話。",SY="如何匯出聊天記錄",xY="正在準備本機工作區",AY="首次啟動需要載入 SQLite 執行環境並開啟瀏覽器儲存空間。",PY={title:"目前瀏覽器無法執行本機版",description:"請使用最新版 Chrome、Edge 或其他支援 OPFS 的瀏覽器,並透過 localhost 或 HTTPS 開啟。",missing:"缺少能力:{capabilities}"},MY={title:"本機工作區發生問題",unsupportedFile:"暫不支援這個檔案。請選擇 ChatLab JSON / JSONL、WhatsApp / LINE / QQ TXT 或 Telegram JSON。"},TY={eyebrow:"本機對話",title:"你的聊天檔案",description:"對話彼此隔離保存在瀏覽器中,可以管理對話並查看 24 小時訊息分布。",count:"{count} 個對話",refresh:"重新整理",emptyTitle:"還沒有本機對話",emptyDescription:"從左側匯入第一份聊天記錄,它會出現在這裡。",messages:"{count} 則訊息",members:"{count} 位成員",lastMessage:"最後訊息 {date}",importedAt:"匯入於 {date}",group:"群聊",private:"私聊",rename:"重新命名",renameLabel:"新的對話名稱",deleteTitle:"刪除「{name}」?",deleteDescription:"此對話的本機資料庫將被永久刪除,此操作無法復原。",busy:"正在更新對話…"},IY={open:"查看時間分布",eyebrow:"首個本機分析",title:"「{name}」的 24 小時分布",description:"統計在本機背景執行緒中完成,並依目前裝置時區歸入小時。",loading:"正在讀取本機對話統計…",totalMessages:"統計訊息",peakHour:"最活躍時段",activeHours:"有訊息時段",hourValue:"{hour}:00",hourTooltip:"{hour}:00 · {count} 則訊息",noData:"這個對話暫時沒有可顯示的小時資料。",runtimeNote:"本機計算 · 不上傳"},DY={title:yY,subtitle:bY,noSignIn:wY,localOnly:_Y,noUpload:kY,localOnlyDetail:CY,exportGuide:SY,initializing:xY,initializingDetail:AY,unsupported:PY,error:MY,import:{eyebrow:"匯入",title:"加入一份聊天記錄",description:"目前支援 ChatLab JSON / JSONL、WhatsApp / LINE / QQ TXT 和 Telegram JSON。每次匯入會建立一個獨立對話。",drop:"拖入檔案,或從裝置選擇",dropActive:"放開即可選擇這個檔案",formats:".json · .jsonl · .txt",choose:"選擇檔案",selected:"已選擇",detecting:"正在辨識格式…",detected:"辨識為 {format}",start:"開始本機匯入",working:"正在匯入",cancel:"停止匯入",processed:"已處理 {count} 則訊息",multiChat:{title:"選擇要匯入的聊天",selected:"已選 {selected} / {total}",selectAll:"全選",clearAll:"清除",messages:"{count} 則訊息",empty:"空聊天",current:"第 {current} / {total} 項:{name}",importSelected:"匯入選取的 {count} 項",successDetail:"已建立 {sessions} / {total} 個對話,共儲存 {messages} 則訊息。",failed:"{count} 項匯入失敗",cancelledWithCompleted:"匯入已停止;已完成的 {count} 個對話已保留。"},stages:{detecting:"辨識檔案",reading:"讀取檔案",parsing:"解析訊息",saving:"寫入本機資料庫",indexing:"建立索引",done:"完成"},successTitle:"匯入完成",successDetail:"已儲存 {messages} 則訊息和 {members} 位成員。",cancelled:"匯入已停止,沒有留下未完成的對話。",another:"繼續匯入"},sessions:TY,analysis:IY},EY="ChatLab AI",$Y="從聊天記錄中尋找答案",RY="AI 會按需呼叫本機分析工具,只將目前問題所需且已脫敏的資料傳送給模型服務商。",LY="詢問這段聊天記錄…",OY="重新產生",NY="AI 可能會出錯,請核對重要結論",FY="正在呼叫 {name}",qY="正在壓縮上下文",BY={title:"對話",deleteConfirm:"確定刪除這條 AI 對話嗎?"},HY={title:"設定 Web AI",description:"Web WASM 會直接從瀏覽器請求模型服務,不經過 ChatLab 伺服器。",provider:"模型服務",openAICompatible:"OpenAI 相容介面",baseURL:"API 位址",model:"模型",apiKey:"API Key",apiKeyPlaceholder:"輸入 API Key",apiKeyReplace:"重新輸入以取代已儲存的 Key",required:"請完整填寫 API 位址、模型和 API Key",keyStorageWarning:"API Key 會加密後儲存在目前瀏覽器中,重新整理後仍會使用。瀏覽器本機加密無法防禦已取得目前頁面權限的惡意腳本。",corsWarning:"僅支援允許瀏覽器跨來源存取(CORS)的 OpenAI 相容服務。連線失敗也可能是服務商禁止瀏覽器直連。",test:"測試連線",testSuccess:"連線成功({ms}ms)",saved:"模型設定已儲存",remove:"移除設定",removeConfirm:"確定移除模型設定和已儲存的 API Key 嗎?",removed:"模型設定和 API Key 已移除"},VY={AUTH:"API Key 無效或沒有存取權限。",RATE_LIMIT:"請求過於頻繁或額度不足,請稍後重試。",MODEL_NOT_FOUND:"找不到這個模型,請檢查模型名稱。",TIMEOUT:"模型請求逾時,請重試。",NETWORK_OR_CORS:"請求被網路或瀏覽器跨來源策略阻擋,請確認服務商支援瀏覽器直連。",FINISH_LENGTH:"回答已達長度上限,內容可能不完整,你可以繼續追問或重新產生。",FINISH_CONTENT_FILTER:"回答被模型服務商的內容政策中止,內容可能不完整。",FINISH_TOOL_CALLS:"工具呼叫已達本輪上限,回答可能尚未完成,你可以重試。",FINISH_UNKNOWN:"模型未正常結束,回答可能不完整,你可以重試。"},zY={title:EY,emptyTitle:$Y,emptyDescription:RY,inputPlaceholder:LY,regenerate:OY,footer:NY,usingTool:FY,compressingContext:qY,conversations:BY,config:HY,errors:VY},jY={common:Jj,layout:bW,settings:LW,home:WW,analysis:rU,tools:sU,providers:yU,ai:xU,quotes:EU,members:NU,records:YU,views:aG,wordFilter:AG,contacts:GG,relationships:pY,insight:vY,browser:DY,webAI:zY},WY="確認",UY="キャンセル",GY="保存",YY="編集",KY="追加",XY="スクリーンショット",JY="閉じる",QY="戻る",ZY="完了",eK="リトライ",tK="アプリの初期化に失敗しました",nK="表示設定を時間内に読み込めなかったため、このセッションではシステムテーマと組み込み言語を使用します。",aK="ローカルワークスペースは一時的に別のタブで使用されています。しばらく待ってから再試行してください。",rK="読み込み中...",oK="初期化中...",sK="結果が見つかりません",iK="エクスポートに成功しました",lK="エクスポートに失敗しました",cK="生成中...",uK="再生成",dK="フォルダーを開く",fK="チャット履歴を表示",pK="先に設定でAIサービスを構成してください",hK={unknown:"不明なエラー"},mK={text:"テキスト",image:"画像",voice:"音声",video:"動画",file:"ファイル",emoji:"絵文字",link:"リンク",location:"位置情報",redPacket:"お年玉",transfer:"送金",poke:"ツンツン",call:"通話",share:"共有",reply:"返信",forward:"転送",contact:"連絡先カード",system:"システム",recall:"取り消し",other:"その他",unknown:"不明"},gK={mon:"月曜",tue:"火曜",wed:"水曜",thu:"木曜",fri:"金曜",sat:"土曜",sun:"日曜"},vK={jan:"1月",feb:"2月",mar:"3月",apr:"4月",may:"5月",jun:"6月",jul:"7月",aug:"8月",sep:"9月",oct:"10月",nov:"11月",dec:"12月"},yK={title:"言語を選択",subtitle:"ご希望のインターフェース言語を選択してください",next:"次へ"},bK={title:"プライバシーポリシーと利用規約",subtitle:"利用前に必ずお読みください",disagree:"同意しない",agree:"内容を確認して同意する",updateNotice:"規約内容が更新されました。再度お読みいただき、ご確認ください"},wK={selectDate:"日付を選択",clearDate:"日付をクリア"},_K={mode:{recent:"最近",quarter:"四半期別",year:"年別",custom:"カスタム"},recent:{oneYear:"1年間",twoYears:"2年間",fiveYears:"5年間",all:"すべて"},display:{recent365:"最近1年間",recent730:"最近2年間",recent1825:"最近5年間"},quarter:{label:"{year}年 第{quarter}四半期"},year:{label:"{year}年"}},kK={allMembers:"すべてのメンバー"},CK={placeholder:"メンバーを検索",noSecondary:"他の名前はありません"},SK={description:"このサービスは認証が必要です。API Tokenを入力してください。",tokenLabel:"API Token",tokenPlaceholder:"clb_xxxxxxxx",submit:"ログイン",hint:"Tokenは起動ログ、config.toml、または --token フラグで確認できます",errorEmpty:"Tokenを入力してください",errorInvalid:"無効なTokenです。確認してもう一度お試しください",errorNetwork:"ネットワーク接続に失敗しました",rememberDevice:"このデバイスを記憶する",rememberWarning:"信頼できるデバイスでのみ使用してください。Tokenがブラウザに保存されます",logoutTitle:"アカウント",logoutDesc:"現在のセッションからログアウト",logout:"ログアウト"},xK={confirm:WY,cancel:UY,delete:"削除",save:GY,edit:YY,add:KY,capture:XY,close:JY,back:QY,done:ZY,retry:eK,initFailed:tK,presentationFallback:nK,webWasmWorkspaceBusy:aK,loading:rK,initializing:oK,noResults:sK,export:"エクスポート",exportSuccess:iK,exportFailed:lK,generating:cK,regenerate:uK,openFolder:dK,viewChatRecords:fK,errorNoAIConfig:pK,error:hK,messageType:mK,weekday:gK,month:vK,languageSelect:yK,agreement:bK,datePicker:wK,timeSelect:_K,userSelect:kK,memberSearchSelect:CK,login:SK},AK="ChatLab",PK="新しいチャットを分析",MK="連絡先",TK="関係",IK="足跡",DK="ツール",EK="チャット履歴",$K="管理",RK="記録がありません",LK="チャット履歴を読み込めませんでした",OK="チャット名を検索",NK="一致するチャット記録が見つかりません",FK={rename:"名前変更",pin:"ピン留め",unpin:"ピン留め解除",copyId:"IDをコピー",delete:"削除"},qK={title:"名前変更",placeholder:"新しい名前を入力してください"},BK={title:"削除の確認",message:"チャット記録「{name}」を削除しますか?この操作は取り消せません。"},HK={tag:"New",title:"新しいバージョンがあります",message:"最新バージョンは v{version} です。",desktopHint:"今すぐ更新をクリックすると、デスクトップ版の更新確認とダウンロードを開始します。",cliHint:"ターミナルで次のコマンドを実行し、更新後にサービスを再起動してください。",updateNow:"今すぐ更新",later:"後で"},VK={all:"すべて",private:"個人",group:"グループ"},zK={importedAt:"インポート日時",lastMessageTs:"最新メッセージ",messageCount:"メッセージ数"},jK={search:"チャット記録を検索",sort:"並べ替え"},WK="{count} 件のメッセージ",UK={settings:"設定"},GK={brand:AK,newAnalysis:PK,contacts:MK,relationships:TK,insight:IK,tools:DK,chatHistory:EK,manage:$K,noRecords:RK,sessionLoadFailed:LK,searchPlaceholder:OK,noSearchResult:NK,contextMenu:FK,renameModal:qK,deleteModal:BK,updateNotice:HK,filter:VK,sort:zK,tooltip:jK,sessionInfo:WK,footer:UK},YK="設定",KK={basic:"基本設定",navigation:"ナビゲーション",ai:"AI 設定",aiConfig:"モデルサービス",aiDefaultModel:"デフォルトモデル",semanticIndex:"セマンティックインデックス",chatPreferences:"会話設定",aiPreprocess:"前処理",dataManage:"データ管理",storage:"ストレージ管理",security:"セキュリティ",sessionManage:"セッションインデックス",about:"ChatLabについて",api:"オートメーション",apiSubTabs:{autoSync:"自動同期",apiService:"API サービス",mcp:"MCP"}},XK={general:{title:"一般"},preferences:{title:"環境設定"},language:{description:"アプリの表示言語を選択します"},appearance:{title:"外観設定",themeMode:"テーマモード",insightCardTheme:"インサイトカードの配色",insightCardThemeOption:"配色 {index}",auto:"システムに従う",light:"ライトモード",dark:"ダークモード"},defaultTab:{description:"チャットに入った時に表示するページ",insights:"インサイト",aiChat:"AI チャット"},autoLaunch:{openAtLogin:"ログイン時に自動起動",openAtLoginDesc:"システム起動時に ChatLab を自動的に実行します",devModeHint:"開発モードでは利用できません"},closeBehavior:{label:"メインウィンドウを閉じるとき",background:"バックグラウンドで実行",quit:"アプリを終了"},toolsPanel:{positionLabel:"ツールパネルの位置",positionDesc:"クイックツールパネルの表示位置を選択します",positionSide:"サイド",positionHeader:"ヘッダー"},network:{title:"ネットワーク設定",proxyMode:"プロキシモード",proxyModeDesc:"ネットワークアクセス時に使用するプロキシ方式",modeOff:"オフ",modeSystem:"システムに従う",modeManual:"手動設定",proxyAddress:"プロキシアドレス",proxyPlaceholder:"http://127.0.0.1:7890",proxyHelp:"HTTP/HTTPS プロキシに対応。形式例:http://127.0.0.1:7890",testConnection:"接続テスト",testing:"テスト中...",connectionSuccess:"プロキシ接続に成功しました!",connectionFailed:"接続に失敗しました",enterProxyFirst:"先にプロキシアドレスを入力してください",invalidProxyUrl:"有効なプロキシアドレスを入力してください。形式例:http://127.0.0.1:7890",onlyHttpSupported:"http:// または https:// プロトコルのみ対応",saveFailed:"保存に失敗しました"}},JK={title:"ナビゲーションレイアウト",description:"分析機能をサイドバーの第1階層またはインサイト内の第2階層に配置します。変更は保存後に反映されます。",invalidLayout:"保存済みのナビゲーションレイアウトを読み込めないため、プラグインのデフォルトを使用しています。保存またはリセットすると無効な設定が置き換えられます。",loadFailed:"保存済みのナビゲーションレイアウトを読み込めませんでした。一時的にプラグインのデフォルトを表示しています。アプリを再読み込みして再試行してください。読み込みに成功するまで保存とリセットはできません。",primary:"第1階層",inGroup:"第2階層 · {group}",group:"第2階層ナビゲーショングループ",hidden:"非表示",moveUp:"上へ移動",moveDown:"下へ移動",locationFor:"{title} のナビゲーション位置を設定",unavailable:"プラグインを利用できません",emptyGroup:"このグループには現在ナビゲーション項目がありません。",saved:"ナビゲーションレイアウトを保存しました",saveFailed:"ナビゲーションレイアウトを保存できませんでした",reset:"デフォルトに戻す",resetDone:"デフォルトのナビゲーションレイアウトに戻しました",resetFailed:"デフォルトのナビゲーションレイアウトに戻せませんでした",storageHint:"Desktop と CLI Web は .chatlab 内のこのレイアウトを共有します。"},QK={title:"デフォルトモデル",noConfigs:"先に「モデルサービス」でモデル設定を追加してください",selectProvider:"プロバイダーを選択",selectModel:"モデルを選択",assistantModel:{label:"デフォルトアシスタントモデル",description:"AIチャット、ツール呼び出し、SQLアシスタント、コンテキスト圧縮に使用"},fastModel:{label:"高速モデル",description:"セッション要約生成に使用。未設定の場合はデフォルトアシスタントモデルを使用",followAssistant:"デフォルトアシスタントモデルに従う"}},ZK={title:"モデルサービス",defaultModel:"デフォルトモデル",empty:{title:"AI サービスが未設定です",description:"設定を追加して AI を使い始めましょう"},addConfig:"サービスを追加",maxConfigs:"設定は最大 10 件までです",modal:{addConfig:"サービスを追加",editConfig:"サービスを編集",localService:"ローカルサービス",configName:"設定名",optional:"(任意)",configNamePlaceholderPreset:"空欄の場合、サービス名が使用されます",configNamePlaceholderCustom:"空欄の場合、API エンドポイントが使用されます",aiProvider:"AI プロバイダー",apiKeyPlaceholder:"API Key を入力",apiKeyPlaceholderEdit:"新しい API Key を入力(空欄で現在の値を維持)",apiKeyPlaceholderLocal:"ローカルサービスでは通常不要です",apiKeyHintLocal:"サービスに認証が設定されている場合はこちらに入力",validate:"接続確認",validationSuccess:"接続を確認しました",validationFailed:"接続の確認に失敗しました",validationFailedTitle:"API接続の検証に失敗しました",saveAnywayHint:"検証に通過しませんでした。設定が正しくない可能性があります。それでも保存しますか?",saveAnyway:"保存する",validationError:"検証に失敗:",model:"モデル",apiEndpoint:"API URL",apiEndpointHint:"OpenAI 互換形式の API エンドポイント",resolvedUrl:"実際のリクエストURL:",fetchModels:"APIから取得",fetchModelsTitle:"リモートモデル一覧",fetchModelsLoading:"モデルリストを取得中...",fetchModelsEmpty:"モデルが見つかりません",fetchModelsError:"モデルリストの取得に失敗しました",fetchModelsCount:"全 {total} モデル、{shown} 件表示中",modelAdded:"追加済み",addAllModels:"すべて追加",searchModels:"モデルを検索...",apiEndpointOverrideHint:"デフォルトURLは入力済みです。必要に応じて変更してください",customService:"カスタムサービス",visitWebsite:"公式サイト",getApiKey:"APIキーを取得",presetService:"プリセット",thirdPartyService:"サードパーティ",addCustomModel:"モデルを追加",deleteCustomModel:"選択を削除",customModelId:"モデルエンドポイント名",customModelIdHint:"API呼び出しで使用されるモデル識別子",customModelDisplayName:"表示名",customModelDisplayNamePlaceholder:"カスタム表示名",editModel:"モデルを編集",contextWindow:"コンテキストウィンドウ",contextWindowPlaceholder:"例: 128000",contextWindowHint:"モデルがサポートする最大コンテキストトークン数(コンテキスト圧縮に使用)",contextWindowMissing:"コンテキストウィンドウが未設定です。デフォルト値が使用されます。「モデル編集」から手動で設定してください",modelRequired:"少なくとも 1 つのモデルを追加してから保存してください",apiFormat:"API インターフェース",apiFormatOpenAI:"OpenAI Completions",apiFormatAnthropic:"Anthropic",apiFormatGemini:"Gemini",apiFormatOpenAIResponses:"OpenAI Responses"},providerKind:{aggregator:"アグリゲータ",custom:"カスタム"}},eX={title:"ローカルストレージ管理",description:"ChatLab がローカルに保存したデータファイルを管理します",dataLocation:{title:"データディレクトリの場所",description:"チャットデータベースとベクトルインデックスの保存先をカスタマイズ",managedDescription:"この設定で管理するのはチャットデータベースとベクトルインデックスのみです。AI 会話、キャッシュ、ログは固定のシステムデータディレクトリに残ります。",choose:"場所を選択",applyPath:"適用",reset:"デフォルトに戻す",open:"開く",serverPathHint:"CLI サーバーを実行しているマシンからアクセスできる絶対パスを入力してください。",migrateHint:"チャットデータベースのデータがまだ旧ディレクトリにあります。統一ディレクトリへの移行をお勧めします:",ignoreMigrateHint:"無視",migrateAction:"今すぐ移行",restartTip:"ディレクトリ変更後はアプリを再起動してください。チャットデータベースのデータは選択に応じて移行されます",cliRestartTip:"ディレクトリ変更後は CLI サーバーを再起動してください。チャットデータベースのデータはサーバー起動前に移行されます",confirmTitle:"データディレクトリの切り替えを確認",confirmMessage:"チャットデータベースのディレクトリを切り替えます。移行を選択すると、既存のチャットデータベースのデータが新しいディレクトリへコピーされます。",newPath:"新しいディレクトリパス",defaultPath:"デフォルトの場所",confirmWarning:"アプリ再起動後、チャットデータベースは新しい場所へ移行され、旧ディレクトリはバックアップとして保持されます。",cliConfirmWarning:"CLI サーバー再起動後、チャットデータベースは新しい場所へ移行され、旧ディレクトリはバックアップとして保持されます。サーバープロセスに書き込み権限があることを確認してください。",pathRequired:"データディレクトリパスを入力してください",installDirForbidden:"データディレクトリをアプリのインストールディレクトリ内に配置することはできません。更新時にディレクトリが消去されます",cancel:"キャンセル",confirm:"切り替えを確認",migrationQueuedTitle:"データ移行を予約しました",migrationSuccessMessage:"変更を反映するにはアプリの再起動が必要です。",cliMigrationSuccessMessage:"現在の CLI サーバーを停止してから再起動してください。移行はサーバー起動前に実行されます。再起動後にページを開き直すと新しいディレクトリを確認できます。",relaunchNow:"今すぐ再起動",acknowledge:"了解",cleanupNoticeTitle:"新しいデータディレクトリへ切り替えました",cleanupNoticeDescription:"データ損失を防ぐため、元のディレクトリはバックアップとして保持されています。チャット履歴が完全であることを確認してから、ストレージ管理で削除してください。",cleanupOldPath:"元のデータディレクトリ",cleanupLater:"後で",cleanupGoToStorage:"ストレージ管理を開く",cleanupTitle:"クリーンアップ待ちの旧データ",cleanupDescription:"移行前のディレクトリはバックアップとして保持されています。新しいディレクトリのチャット履歴を確認した後、手動で削除できます。",cleanupDeleteAction:"旧データを削除",cleanupDeleteConfirmTitle:"旧データを完全に削除しますか?",cleanupDeleteConfirmDescription:"この操作は元に戻せません。新しいディレクトリのチャット履歴が完全であることを確認してから、以下の元ディレクトリを削除してください。",cleanupDeleteConfirmAction:"完全に削除",cleanupDeleteFailed:"旧データを削除できませんでした"},openRootDir:"ルートを開く",totalUsage:"合計使用量:",loading:"読み込み中...",files:"ファイル",notExist:"存在しません",clear:"クリア",open:"開く",cache:{databases:{name:"チャット履歴データベース",description:"インポートしたチャット履歴の分析データ"},ai:{name:"AI 会話データベース",description:"AI チャット履歴と設定ファイル"},statsCache:{name:"キャッシュデータ",description:"チャット記録の統計キャッシュ。クリア後に自動で再構築されます"},logs:{name:"ログファイル",description:"アプリの実行ログ(インポート、AI、エラーなどのログを含む)"}}},tX={session:{title:"セッションインデックス設定",description:"セッションインデックスは時間間隔に応じてチャット履歴を自動で区切り、AI 分析や閲覧をしやすくします",defaultThreshold:"デフォルト分割間隔",thresholdUnit:"分",thresholdHelp:"この時間を超える間隔があるメッセージは新しいセッションに分割されます",generating:"作成中",batchTitle:"インデックスを一括生成",totalSessions:"全 {count} チャット",generatedCount:"生成済み {count} 件",notGeneratedCount:"未生成 {count} 件",loadingStatus:"読み込み中...",batchGenerate:"未生成分を作成",batchRegenerate:"すべて再生成",batchRegenerateConfirmTitle:"再生成の確認",batchRegenerateConfirmMessage:"この操作により、既存のAI要約がすべてクリアされ、セッションインデックスが最初から再生成されます。",batchRegenerateConfirmWarning:"既存の要約は上書きされます。この操作は取り消せません。",summaryStrategy:"要約の詳細度",summaryStrategyHelp:"AI が要約を生成する際の詳細さを設定します",summaryBrief:"簡潔",summaryStandard:"標準"},semanticIndex:{title:"セマンティックインデックス",description:"選択したベクトルモデルでチャット履歴のインデックスを作成します。有効にすると、AI は回答時に関連する過去の断片を意味検索して裏付けとして利用できます。",vectorModel:"ベクトルモデル",selectModel:"ベクトルモデルを選択",switchModel:"モデルを切り替え",noModelSelected:"ベクトルモデル未選択",modelModalTitle:"ベクトルモデルの設定",modeLocal:"ローカルモデル",modeApi:"API",recommended:"推奨",approxSize:"約 {mb} MB",modelDownloadSource:"モデルのダウンロード元",downloadSourceOfficial:"Hugging Face 公式",downloadSourceMirror:"HF-Mirror(中国本土向け)",mirrorSourceHint:"HF-Mirror は中国本土のネットワーク向けの第三者公開ミラーです。モデルファイルは hf-mirror.com からダウンロードされます。",localDownloadHint:"保存後にモデルが自動でダウンロードされます。初回は時間がかかる場合があります。",localRuntimeDownloadHint:"CLI Web のローカルモデル実行コンポーネントは約 370 MB です。プリインストールされていない場合、初回使用時に自動インストールされます。保存後に選択したモデルもダウンロードされます。",apiTemplate:"サービステンプレート",modelName:"モデル名",apiKeySaved:"保存済み。空欄で変更しません",apiKeyHint:"API キーは別途安全に保存され、設定には参照のみが保存されます。",apiCostWarning:"API モードはプロバイダー費用が発生する場合があります。価格をご確認ください。",changeRebuildHint:"モデルや API を変更すると、有効な会話は再構築が必要です。",modelDownloading:"モデルをダウンロード中です。初回は数分かかる場合があります…",runtimeInstalling:"ローカルモデル実行コンポーネントをインストールしています。初回は時間がかかる場合があります…",modelError:"ローカルモデルの準備に失敗しました。インデックス構築時に再試行されます。",searchMaxResults:{label:"1回の検索で返す断片数",hint:"AI がセマンティック検索を実行する際に返す関連断片のデフォルト数(5〜15)。必要に応じて AI が増やせます。"},overview:"インデックス概要",enabledCount:"{count} 件の会話で有効",coverage:"カバレッジ {percent}%",buildPending:"保留中のインデックスを作成",cleanup:"未使用インデックスを整理",cleanupConfirm:"無効化した会話や旧モデルのインデックスデータを削除します。チャット記録は削除されません。",configFirst:"先にベクトルモデルを設定してください",selectConversations:"会話を選択",enabledSessions:"有効な会話",state:{completed:"完了",building:"作成中",pending:"未作成",needsRebuild:"再構築が必要",failed:"失敗",paused:"一時停止"},action:{build:"インデックス作成",pause:"一時停止",cancel:"キャンセル",rebuild:"再構築",remove:"削除"},session:{statusLabel:"状態",notEnabled:"未有効",coverageLabel:"カバレッジ",progressLabel:"構築の進捗",enableHint:"有効にすると、この会話に関する質問に答える際に AI が過去のチャット断片を検索できます。",configFirst:"有効化の前に 設定 > AI > セマンティックインデックス でベクトルモデルを設定してください。",enable:"インデックスを有効化",buildVsEnable:"有効化:この会話をセマンティック検索の対象に含めます。作成:全メッセージを読み込みベクトルを生成します。ローカル計算や API 枠を消費する場合があります。",retry:"再試行",continue:"続行"},picker:{title:"会話を選択",all:"すべて",group:"グループ",private:"個人",searchPlaceholder:"名前で検索",messages:"{count} 件のメッセージ",enabled:"有効",selectedSummary:"{count} 件の会話を選択、約 {messages} 件のメッセージ",confirmRemoveTitle:"削除の確認",confirmRemoveMessage:"これらの会話のセマンティックインデックスは即座に削除され、復元できません。"}}},nX={chatSettings:{title:"ツール設定"},exportSettings:{title:"エクスポート設定"},chatPreferences:{title:"会話設定",enableAutoSkill:"AI 自動スキル選択",enableAutoSkillDesc:"有効にすると、AI がユーザーの質問に基づいて適切な分析スキルを自動的にマッチして有効化します。無効にすると、手動で選択した場合のみスキルが適用されます",chartAutoMode:{title:"グラフ自動生成",description:"グラフアシスタントを手動選択していないときに、AI がどの程度積極的にグラフを使うかを制御します",explicit:"明確な依頼時",explicitHint:"明確にグラフを依頼した場合のみ、AI がグラフを生成します。",suggest:"スマート生成",suggestHint:"控えめな方針です。分析結果の理解に明確に役立つ場合のみ、AI がグラフを生成します。",aggressive:"積極生成",aggressiveHint:"データ分析の場面で、AI がより積極的にグラフを生成します。"}},maxMessages:{title:"送信メッセージ数の上限",description:"1 回のリクエストで AI に送る最大メッセージ数です。増やすほど Token 消費は増えますが、分析精度も上がります(初めてなら 2000 推奨)"},searchContext:{title:"検索コンテキストウィンドウ",description:"検索ヒット時に前後の会話コンテキストを自動的に含めることで、AI がメッセージの背景を理解しやすくなります。0 に設定するとコンテキストなし",before:"前",after:"後"},exportFormat:{title:"会話エクスポート形式",description:"AI チャットをエクスポートする際のファイル形式",txtLabel:"TXT"},sqlExportFormat:{title:"SQL Lab エクスポート形式",description:"SQL クエリ結果をエクスポートする際のファイル形式"}},aX={title:"ChatLabについて",description:"ローカルで動くチャット履歴分析ツール。SQL と AI Agent で会話を振り返れます。",version:"バージョン",checkUpdate:"アップデートを確認",checking:"確認中...",upToDate:"最新バージョンです",newVersionAvailable:"新しいバージョン {version} があります",webUpdateHint:"ターミナルで clb update を実行し、サービスを再起動してください。",updateCheckFailed:"更新確認に失敗しました:{error}",unknown:"不明",privacy:{title:"プライバシー設定",analytics:"匿名利用統計",analyticsDesc:"有効にすると、匿名のインストールID、バージョン、OS、アプリ種別、言語、おおよその地域、インポート元のチャットサービス、主要機能の利用状況を送信します。チャット内容、連絡先、ファイル名、パス、モデル名、キーは送信しません"},developer:{title:"開発者オプション",debugMode:"DEBUG モード",debugModeDesc:"有効にすると、デバッグパネルとクイックデバッグツールが表示されます。データベースの確認、テストツールの実行、より詳細なデバッグログの記録に使用できます。"}},rX={title:"チャット履歴の前処理",description:"チャット履歴を AI に送信する前に前処理を行い、Token を節約しノイズを除去します。元のデータは変更されません。",dataCleaning:"データクリーニング",dataCleaningDesc:"XML カードメッセージ(共有リンク、ミニアプリなど)を自動クリーニングし、有効な内容を抽出します。Token を大幅に節約できます。オンのままにすることを推奨します。",mergeConsecutive:"連続発言の結合",mergeConsecutiveDesc:"同一人物の短時間内の連続メッセージを1つに結合します",mergeWindow:"結合タイムウィンドウ(秒)",denoise:"スマートノイズ除去",denoiseDesc:"感動詞のみ、絵文字のみ、システムプレースホルダー([画像] など)といった無意味なメッセージを除去します",desensitize:"データマスキング",desensitizeDesc:"ルールに基づいて機密情報(電話番号、メールアドレス、身分証番号など)をプレースホルダーに置換します",desensitizeBuiltin:"プリセットルール",desensitizeResetBuiltin:"既定に戻す",desensitizeCustom:"カスタムルール",desensitizeAddCustom:"カスタムルールを追加",desensitizeRuleName:"ルール名",desensitizeRulePattern:"正規表現",desensitizeRuleReplacement:"置換テキスト",desensitizeRuleAdd:"追加",desensitizeRuleInvalidRegex:"正規表現の構文エラー",desensitizeRuleNamePlaceholder:"例:社員番号",desensitizeRulePatternPlaceholder:"例:EMP-\\d+",desensitizeRuleReplacementPlaceholder:"置換テキスト。例:[社員番号]",anonymizeNames:"ニックネーム匿名化",anonymizeNamesDesc:"実際のニックネームの代わりに番号(U1、U2…)を AI に送信し、幻覚を減らして Token を節約します",blacklist:"ブラックリストキーワード",blacklistDesc:"以下のキーワードのいずれかを含むメッセージは丸ごと除外されます",blacklistPlaceholder:"キーワードを入力して Enter で追加",blacklistAdd:"追加"},oX={groups:{credentials:"パスワードと Token",credentials_desc:"API Key、Bearer Token などの認証情報",global_contact:"汎用連絡先情報",global_contact_desc:"メールアドレスなど地域をまたぐ連絡先情報",global_financial:"汎用金融情報",global_financial_desc:"クレジットカード番号などの金融識別子",global_network:"汎用ネットワーク情報",global_network_desc:"URL、IP アドレスなどのネットワーク識別子",region_cn:"中国本土",region_cn_desc:"中国本土の電話番号、証明書、銀行カードなどのルール",region_us:"米国",region_us_desc:"米国の電話番号、証明書などのルール",region_jp:"日本",region_jp_desc:"日本の電話番号、マイナンバーなどのルール",region_kr:"韓国",region_kr_desc:"韓国の電話番号、住民登録番号などのルール"},rules:{cn_phone:"中国の携帯電話番号",cn_phone_desc:"1xx xxxx xxxx 形式の11桁の番号",cn_id_card:"中国の身分証番号",cn_id_card_desc:"18桁、末尾に X を含む場合あり",cn_bank_card:"中国の銀行カード番号",cn_bank_card_desc:"16-19桁の連続数字",cn_landline:"中国の固定電話番号",cn_landline_desc:"市外局番-番号(例:010-12345678)",us_ssn:"米国社会保障番号(SSN)",us_ssn_desc:"XXX-XX-XXXX 形式",us_phone:"米国電話番号",us_phone_desc:"+1 (XXX) XXX-XXXX 形式",us_drivers_license:"米国運転免許証番号",us_drivers_license_desc:"アルファベット + 7-8桁の数字",jp_phone:"日本の電話番号",jp_phone_desc:"0x0-XXXX-XXXX 形式",jp_my_number:"マイナンバー",jp_my_number_desc:"12桁の数字(マイナンバー)",kr_phone:"韓国の電話番号",kr_phone_desc:"01X-XXXX-XXXX 形式",kr_rrn:"韓国の住民登録番号",kr_rrn_desc:"XXXXXX-XXXXXXX 形式(주민번호)",api_key_prefix:"API Key / Token(既知プレフィックス)",api_key_prefix_desc:"sk-、ghp_、AKIA などで始まる長い文字列",bearer_token:"Bearer Token",bearer_token_desc:"Bearer に続く認証トークン値",email:"メールアドレス",email_desc:"user{'@'}domain.com の標準形式",credit_card:"クレジットカード番号",credit_card_desc:"Visa / MasterCard / AmEx などのカード番号",ipv4:"IPv4 アドレス",ipv4_desc:"例:192.168.1.1",url:"URL リンク",url_desc:"http:// または https:// で始まるリンク"}},sX={service:{title:"API サービス",enable:"API サービスを有効化",enableDesc:"有効にすると、外部ツールが HTTP API 経由でチャットデータの照会・エクスポート・インポートができます。ローカルホストのみ (127.0.0.1)",portInUseHint:"ポートが使用中です。下のポートを変更するか、このポートを使用しているプログラムを終了してから再試行してください"},status:{running:"実行中",stopped:"停止中",starting:"起動中...",portInUse:"ポート使用中",error:"起動失敗"},port:{title:"ポート設定",label:"リッスンポート",desc:"API サービスのローカルポート番号(1024-65535)",edit:"編集",save:"保存",cancel:"キャンセル"},token:{title:"アクセストークン",label:"Bearer Token",desc:"すべての API リクエストは Authorization ヘッダーにこのトークンを含める必要があります",noToken:"トークンが未生成です。まずサービスを有効にしてください",regenerate:"再生成"},dataSources:{title:"データソース",desc:"外部データソースの URL を設定すると、ChatLab が指定間隔で自動的にチャットデータを取得・インポートします。",empty:"データソースなし",disabled:"一時停止中",every:"",minutes:"分ごと",lastSync:"最終同期",syncing:"同期中",messages:"件",addBtn:"データソースを追加",form:{modalTitle:"データソースを追加",name:"名前",namePlaceholder:"例:マイチャットサーバー",token:"アクセストークン",tokenPlaceholder:"リモート API の Bearer Token",interval:"取得間隔(分)",pullLimit:"1回の取得メッセージ数",pullLimitPlaceholder:"デフォルト 1000"},discovery:{baseUrl:"サーバーアドレス",baseUrlPlaceholder:"例:http://127.0.0.1:2333/api/v1",found:"{count} 件のセッションが見つかりました",search:"検索",searchPlaceholder:"セッション名で検索",selectAll:"すべて選択",deselectAll:"選択解除",selectByType:"セッションタイプ",typeAll:"すべて",typePrivate:"個人チャット",typeGroup:"グループチャット",loadMore:"さらに読み込む",subscribe:"{count} 件を購読",messages:"件のメッセージ",error:"リモートサーバーへの接続に失敗しました",connectionCheckFailed:"リモートサーバーに接続できません。URL とトークンを確認してください。"},noSessions:"インポートセッションがありません。上の「サブスクリプション管理」から追加してください",edit:{title:"設定を変更",save:"保存",cancel:"キャンセル",editSource:"設定を変更",manageSessions:"サブスクリプション管理",subscribed:"購読中"},deleteConfirm:{title:"データソースを削除",message:"データソース「{name}」を削除してもよろしいですか?このデータソース下のすべてのインポート設定が削除されます。既にインポート済みのローカル会話は削除されません。"},deleteSessionConfirm:{title:"サブスクリプションを削除",message:"「{name}」を削除してもよろしいですか?",keepData:"サブスクリプションのみ削除",deleteData:"インポートしたチャットも削除"}},usage:{title:"使用ガイド",desc:"サービスを有効にすると、外部ツールが API 経由でデータを照会したり、ChatLab にチャット記録をプッシュしたりできます。すべてのリクエストに Bearer Token 認証が必要です。",authHint:"ヘッダー例:",docLink:"API ドキュメントを見る"}},iX={overview:{title:"MCP 概要",description:"MCP により、AI アシスタントがチャット記録を直接クエリできます。セッション検出、キーワード検索、メンバー統計、時間分布などをサポートしています。",toolCount:"{count} 個のツール",resourceCount:"{count} 個のリソース",installHint:"chatlab-cli をインストール後、AI クライアントに以下の設定を追加してください:"},clients:{other:"その他"},config:{title:"クライアント設定",clientLabel:"MCP クライアント",copy:"コピー",copied:"コピー済み",claudeHint:"この設定を ClaudeCode の MCP 設定に追加してください。",codexHint:"この TOML 設定を ~/.codex/config.toml ファイルに追加してください。",openclawHint:"この設定をプロジェクトの openclaw.json ファイルに追加してください。",otherHint:"この JSON 設定を MCP クライアントの設定ファイルに追加してください。"},tips:{title:"ヒント",dataDir:"MCP サーバーは ~/.chatlab/ ディレクトリのチャットデータを読み取り、デスクトップアプリと同じデータを共有します。",readOnly:"すべての操作は読み取り専用で、チャット記録は変更されません。",nodeRequired:"npx および CLI モードには Node.js 22.19 以上が必要です。",docs:"詳細なドキュメントは docs.chatlab.fun をご覧ください。"}},lX={lock:{title:"アプリロック",desc:"4桁のPINでChatLabを保護します",statusOn:"有効",statusOff:"無効",disableBtn:"アプリロックを無効にする",disableConfirm:"アプリロックを無効にしますか?現在のPINは削除されます。",manualLock:"今すぐロック"},password:{titleSetup:"PIN設定とアプリロック有効化",titleChange:"PIN変更",labelOld:"現在のPIN",labelNew:"新しいPIN",labelConfirm:"新しいPIN(確認)",btnEnable:"有効にする",errorInvalidPin:"PINは4桁の数字で入力してください",errorMismatch:"PINが一致しません",errorSameAsOld:"新しいPINを現在のものと同じにしないでください",errorFailed:"操作に失敗しました。再試行してください"},autoLock:{title:"自動ロック",idleLabel:"アイドル時に自動ロック",startupLabel:"起動時にロック解除を要求"},lockScreen:{titleLocked:"ChatLab はロックされています",placeholderPassword:"4桁のPINを入力",btnUnlock:"ロック解除",verifying:"検証中...",errorService:"ロック解除に失敗しました。再試行してください",errorWrongPassword:"PINが正しくありません",errorTooManyAttempts:"試行回数が多すぎます。{seconds} 秒後に再試行してください"}},cX={title:YK,tabs:KK,basic:XK,navigation:JK,defaultModel:QK,aiConfig:ZK,storage:eX,ai:tX,aiPrompt:nX,about:aX,aiPreprocess:rX,desensitize:oX,api:sX,mcp:iX,security:lX},uX="新しいチャットの記憶を探索する",dX={file:"ファイルインポート",api:"API インポート",cli:"CLI インポート",autoSyncTitle:"自動同期",autoSyncDescription:"ChatLab が外部データソースから新しいチャット履歴を定期的に取得します。",autoSyncButton:"自動同期を設定",apiPushTitle:"API プッシュ",apiPushDescription:"外部ツール、プラグイン、スクリプトからローカル API 経由で書き込みます。",apiPushButton:"API を設定",agentImportTitle:"AI Agent でインポート",agentImportDescription:"公式 Skill をインストールして、チャット履歴を自動的にインポートします。",manualCliTitle:"CLI を手動で使用",manualCliDescription:"ターミナル操作、バッチスクリプト、繰り返し可能な自動化に適しています。",copyCommand:"コマンドをコピー",viewDocs:"ドキュメントを見る"},fX={viewExample:"デモを試す",downloading:"デモデータをダウンロード中...",importing:"デモデータをインポート中...",failed:"デモデータの読み込みに失敗しました。ネットワーク接続を確認してから再試行してください。"},pX={title:"データベースのアップグレードが必要です",description:"新機能をサポートするため、{count} 件のデータベースをアップグレードする必要があります。",note:"アップグレードは通常数秒で完了し、データは失われません。",upgradeContent:"今回のアップグレード内容:",upgradeNow:"今すぐアップグレード",upgrading:"アップグレード中...",failed:"移行に失敗しました",partialFailed:"一部のデータベースのアップグレードに失敗しました",errorHint:"これは通常、データベースファイルの破損が原因です。サイドバーで失敗したセッションを削除し、再度インポートすることをお勧めします。",close:"閉じる",retry:"リトライ"},hX={title:"インポートするチャットを選択",scanning:"チャットリストをスキャン中...",scanFailed:"スキャンに失敗しました",retry:"リトライ",selectAll:"すべて選択",chatCount:"全 {count} 件のチャット",selected:"{count} 件を選択中",messageCount:"{count} 件のメッセージ",memberCount:"{count} 人のメンバー",empty:"空のチャット",import:"インポート ({count})",noChats:"チャットが見つかりません"},mX={title:"チャット形式を選択",hint:"ファイル形式を自動検出できませんでした。対応するチャット形式を手動で選択してください。",manualSelect:"形式を手動で選択",confirm:"この形式でインポート"},gX={export:"初心者ガイド"},vX={website:"公式サイト",terms:"利用規約"},yX={title:"バージョン履歴",subtitle:"すべてのバージョン更新内容を確認",latest:"最新バージョン",current:"現在のバージョン",total:"全 {count} バージョン",close:"閉じる",disableAutoOpen:"アップデート後に自動表示しない",loadError:"バージョン履歴の読み込みに失敗しました",retry:"リトライ",types:{feat:"新機能",fix:"バグ修正",refactor:"リファクタリング",docs:"ドキュメント更新",chore:"その他の改善",style:"スタイル改善",ci:"CI/ビルド"}},bX={tagline:uX,tabs:dX,import:{dropHint:"マウスを離してファイルをインポート",clickHint:"クリックして選択、またはチャット記録をドラッグ&ドロップでインポート",multipleHint:"複数ファイルの同時選択・ドラッグに対応しています",selectFiles:"チャット記録ファイルを選択",selectFolder:"エクスポートフォルダを選択",importFolder:"フォルダをインポート",chatRecords:"チャット記録",allFiles:"すべてのファイル",progress:{detecting:"フォーマットを検出中...",reading:"ファイルを読み込み中...",parsing:"メッセージを解析中...",saving:"データベースに書き込み中...",indexing:"検索インデックスを構築中...",done:"インポート完了",error:"インポート中断"},processed:"{count} 件のメッセージを処理しました",viewLog:"インポートログを表示",cannotReadPath:"ファイルパスを読み取れません",errors:{no_file_selected:"ファイルが選択されていません",import_failed:"インポートに失敗しました",import_in_progress:"別のインポートが実行中です。しばらくしてから再試行してください。",unrecognized_format:"認識できないファイル形式です",no_messages:"メッセージを検出できませんでした。ファイル形式が正しいか確認してください",no_chat_selected:"チャットが選択されていません",archive_single_file_required:"アーカイブは1件ずつインポートしてください",archive_unsupported:"このアーカイブ形式はサポートされていません",archive_encrypted:"暗号化されたアーカイブはサポートされていません",archive_corrupt:"アーカイブが破損しているか不完全です",archive_unsafe_path:"アーカイブに安全でないファイルパスが含まれています",archive_limit_exceeded:"アーカイブが安全な処理上限を超えています",google_chat_structure_not_found:"Google Chat のエクスポートデータが見つかりません",google_chat_conversation_incomplete:"Google Chat の会話ファイルが不足しています",import_source_not_found:"インポート元が見つかりません。アーカイブを選択し直してください。",import_source_expired:"インポート元の有効期限が切れました。アーカイブを選択し直してください。",actionHint:"下記の手動マッチングまたはログの確認をお試しください:"},diagnostics:{format:"検出フォーマット:",received:"受信メッセージ:",written:" / 書き込み:",skipped:" / スキップ:"},outcome:{created:"新しいセッションを作成しました",ambiguous:"既存セッションの候補が複数見つかったため、自動結合せず新しいセッションを作成しました",incremental:"{newCount} 件を追加し、重複 {duplicateCount} 件をスキップしました",unchanged:"インポート済みのため、新しいメッセージはありません"},batch:{importing:"一括インポート中",progressCount:"{current} / {total} 件目",cancel:"インポートをキャンセル",waiting:"待機中",skipped:"スキップ済み",success:"インポート成功",created:"新しいセッションを作成しました",ambiguous:"候補が複数見つかったため、新しいセッションを作成しました",incremental:"{newCount} 件追加、重複 {duplicateCount} 件スキップ",unchanged:"インポート済み、新規メッセージなし",completed:"一括インポート完了",summary:"成功 {success} 件、失敗 {failed} 件、スキップ {cancelled} 件",view:"表示"},options:{mergeImport:"結合インポート",mergeImportHint:"チェックすると、複数ファイルが1つのチャット記録に結合されます"},merge:{importing:"結合中",parsing:"ファイルを解析中...",merging:"メッセージを結合中...",completed:"結合完了",completedHint:"{count} 件のファイルを結合しました",messageCount:"{count} 件のメッセージ",failed:"結合に失敗しました"}},demo:fX,migration:pX,chatSelector:hX,formatSelector:mX,quickStart:gX,footer:vX,changelog:yX},wX={loading:"分析データを読み込み中...",loadError:"セッションデータを読み込めません"},_X={loading:"分析データを読み込み中...",loadError:"セッションデータを読み込めません"},kX={overview:"概要",insights:"インサイト",ranking:"ランキング",aiChat:"AIチャット",memory:"メモリー",lab:"ラボ",debug:"Debug"},CX={sqlTables:"SQLテーブル",basicTools:"基本ツール",tableBrowser:{chatDb:"チャット DB",aiDb:"AI会話 DB",rowCount:"{count} 行",page:"{current} / {total} ページ",refresh:"更新",noData:"データなし",editRow:"編集",deleteRow:"行を削除",confirmDelete:"この行を削除してもよろしいですか?",allConversations:"すべての会話",copyCell:"選択項目をコピー",copyRow:"行をコピー (JSON)",clearDebugContext:"デバッグコンテキストをクリア",confirmClearDebug:"すべてのメッセージの debug_context を削除しますか?この操作は取り消せません。"}},SX={tabs:{records:"チャットメモリー"}},xX={viewChatRecord:"チャット履歴を見る",semanticIndex:"セマンティックインデックス",incrementalImport:"追加インポート",memberManagement:"メンバー管理",more:"その他"},AX={title:"チャット記録を追加",description:"「{name}」に追加するチャット履歴ファイルを選択してください。重複は自動で除外されます。",homeAutoImportHint:"ホーム画面で自動差分インポートを利用できるようになりました。新しいチャット履歴がある場合は、ホーム画面にドラッグ&ドロップするだけで追加できます。",dropHint:"クリックして選択、またはファイルをここにドラッグ",analyzing:"ファイルを分析中...",totalInFile:"ファイル内のメッセージ数",newMessages:"新規メッセージ",duplicates:"重複メッセージ",noNewMessages:"新しいメッセージはありません。すべて取り込み済みです",importing:"インポート中...",import:"{count} 件を取り込む",success:"インポート成功",successDetail:"{count} 件の新しいメッセージを追加しました",failed:"インポートに失敗しました"},PX={insights:{typeAnalysis:"タイプ",timeAnalysis:"時間",topic:"トピック",relationship:"関係",journey:"歩み",languagePreference:"言語傾向"},ranking:{overall:"総合ランキング",interaction:"交流ランキング",proximity:"近接度ランキング",keyword:"キーワード"},quotes:{hotRepeat:"盛り上がった復唱",catchphrase:"口癖"},member:{nicknameHistory:"ニックネーム変更履歴"}},MX={messageTypeDistribution:"メッセージタイプ分布",memberDistribution:"メンバー別発言割合",memberRanking:"メンバーランキング",others:"その他",memberComparison:"双方のメッセージ割合",statCards:{dailyAvgMessages:"1日あたりのメッセージ",messagesCount:"{count} 件",daysCount:"合計 {count} 日間",imageMessages:"画像メッセージ",imagesCount:"{count} 枚",peakHour:"最も活発な時間帯:",mostActiveWeekday:"最も活発な曜日",messagesOnDay:"{count} 件のメッセージ",weekendActivity:"週末の活発度",weekendRatio:"週末メッセージの割合",mostActiveDate:"最も活発な日",consecutiveStreak:"連続日数",daysStreak:"{count} 日間",longestStreak:"最長連続アクティブ",activityRate:"アクティブ率",activeDaysRatio:"メッセージのある日の割合",lateNightChat:"深夜チャット",lateNightRatio:"全メッセージの {ratio}%"},dailyTrend:{title:"日別メッセージトレンド"},identity:{privateChat:"プライベートチャット",groupChat:"グループチャット",totalMessages:"メッセージ総数",durationDays:"期間日数",activeDays:"アクティブ日数",dailyAvgMessages:"日平均メッセージ"},tools:"よく使うツール"},TX={miniMode:"ミニモード",exitMini:"ミニモードを終了"},IX={title:"チャット記録をエクスポート",selectOutputDir:"保存先を選択",format:"形式"},DX={timeRange:"期間",allTime:"すべて",today:"今日",lastWeek:"過去7日間",lastMonth:"過去1ヶ月",last3Months:"過去3ヶ月",lastYear:"過去1年",customTime:"カスタム",exportSuccess:"エクスポートに成功しました",exportFailed:"エクスポートに失敗しました",exportPreparing:"エクスポート準備中..."},EX={groupChat:wX,privateChat:_X,tabs:kX,debug:CX,memory:SX,tooltip:xX,incremental:AX,subTabs:PX,overview:MX,toolsPanel:TX,messageExport:IX,filter:DX},$X={searchPlaceholder:"チャット名を検索",searchResult:"{count} / {total} 件を検出",ownerIssues:"{count} 件の会話で自分が未設定です",ownerStatus:{missing:"未設定",unresolved:"要確認"},noSearchResult:"一致するチャット履歴が見つかりません",selectAll:"すべて選択",shiftClickHint:"Shiftキーを押しながらクリックで範囲選択できます",selected:"{count} 件を選択中",empty:"チャット履歴がありません",delete:"選択した項目を削除",confirmTitle:"削除の確認",confirmMessage:"選択した {count} 件のチャット履歴を削除しますか?この操作は取り消せません。",deleting:"削除中...",columns:{name:"名前",platform:"プラットフォーム",owner:"自分",messages:"メッセージ数",summaries:"AI要約",aiChats:"AI チャット",importedAt:"インポート日時"},clickToEdit:"クリックして名前を編集",merge:"選択項目を結合",mergeHint:"結合するには同じチャット種別の履歴を 2 件以上選択してください",mergeConfirmTitle:"チャット履歴を結合",mergeConfirmMessage:"選択した {count} 件のチャット履歴を結合し、新しい統合履歴を作成します。",deleteOriginalsLabel:"結合後に元のチャット履歴を削除する",mergeRiskWarning:"重要な警告:削除は元に戻せず、プラットフォーム間の文脈差により意味が混在する可能性があります。続行前に元データをバックアップしてください。",mergeSteps:{exporting:"チャット履歴をエクスポート中...",parsing:"ファイルを解析中...",checking:"競合を検出中...",merging:"データを結合中...",cleaning:"一時ファイルを削除中..."},mergeSuccess:"{count} 件のチャット履歴を結合しました",mergeError:"結合に失敗しました:{error}",mergedSuffix:"結合"},RX={batchManage:$X},LX={name:"DeepSeek"},OX={name:"通義千問"},NX={name:"Gemini"},FX={name:"MiniMax"},qX={name:"GLM"},BX={name:"Kimi"},HX={name:"豆包"},VX={name:"SiliconFlow"},zX={name:"Groq"},jX={name:"OpenRouter"},WX={name:"xAI"},UX={deepseek:LX,qwen:OX,gemini:NX,minimax:FX,glm:qX,kimi:BX,doubao:HX,siliconflow:VX,groq:zX,openrouter:jX,xai:WX,"openai-compatible":{name:"サードパーティ"}},GX={chatExplorer:"対話で探索",sqlLab:"SQL ラボ"},YX={scrollToBottom:"下へ移動",history:{loadEarlier:"以前の会話を読み込む"},input:{placeholderWithSlash:"質問を入力、または / でスキル、{'@'} でメンバーを選択...",placeholderWithActiveSkill:"/{name} を選択済みです。具体的な質問を入力してください...",slashHint:"/ でスキルを選択",useSkill:"スキルを選ぶ",mentionHint:"{'@'} でメンバーを選択",mentionEmpty:"一致するメンバーがいません",mentionEmptyHint:"ニックネーム、別名、アカウントで検索できます",slashEmpty:"一致するスキルがありません",slashEmptyHint:"スキル管理を開いて内蔵スキルを読み込むか、カスタムスキルを作成してください",manageSkills:"スキルを管理",previewTagsLabel:"タグ",previewToolsLabel:"ツール",previewUnavailable:"プレビューできるスキルプロンプトがありません",quickAsk:"クイック質問",editQuickAsk:"クイック質問を編集",send:"送信",needMoreThanSkill:"スキルを選んだだけでは送信できません。具体的な質問を入力してください。",needQuestion:"質問を入力してから送信してください"},fork:{success:"会話をフォークしました",failed:"会話のフォークに失敗しました"},backgroundTask:{runningShort:"進行中",runningTitle:"AI がバックグラウンドで推論中です",runningDescription:"前の質問がまだ処理中です。完了を待つか、先に停止してください。",blockedAction:"現在の回答はまだ生成中です。完了を待つか、手動で停止してください。",return:"戻って確認"},message:{copy:{tooltip:"Markdown をコピー",success:"Markdown をクリップボードにコピーしました",failed:"Markdown のコピーに失敗しました"},process:{label:"実行過程",processing:"処理中",processed:"処理済み",duration:"所要時間 {duration}",working:"処理中",planning:"計画中",failed:"未完了",step:"{count} ステップ",steps:"{count} ステップ"},toolResult:{view:"結果を表示",title:"AI に送信されたツール結果",copy:"結果をコピー",copySuccess:"ツール結果をコピーしました",copyFailed:"ツール結果のコピーに失敗しました",displayTruncated:"この履歴結果は切り詰められた版のみ保存されています。元のターンでは AI がより多くの内容を見ていた可能性があります。"},edit:{tooltip:"編集して再生成",submit:"送信",overwriteSubsequent:"以降のすべての会話を上書き"},fork:{tooltip:"ここから会話をフォーク"},chart:{expand:"大きなチャートを開く",empty:"データがありません",rows:"{count} 行のデータ",truncated:"切り捨て済み"},generating:"回答を作成中...",summary:{label:"コンテキスト要約",info:"以前の会話がコンテキスト節約のため要約に圧縮されました"},plan:{label:"分析計画",evidenceNeeded:"必要な証拠",suggestedTools:"推奨ツール",successCriteria:"成功基準",noTools:"なし"},think:{labels:{think:"思考",analysis:"分析",reasoning:"推論",reflection:"振り返り",planValidation:"計画を生成",other:"思考({tag})"},loading:"思考中...",duration:"{seconds}秒"},toolParams:{keywords:"キーワード",time:"時間",getMessages:"{count} 件のメッセージを取得",limit:"{count} 件に制限",contextWithMessages:"{msgCount} 件のメッセージの前後各 {contextSize} 件のコンテキスト",context:"前後各 {size} 件のコンテキスト",topMembers:"上位 {count} 名のメンバー",search:"検索",getMemberList:"メンバー一覧を取得",memberId:"メンバーID",timeStats:{hourly:"時間別",weekday:"曜日別",daily:"日別"}}},thinking:{processingResult:"結果を整理中",called:"実行したツール:",analyzing:"問題を分析中...",compressing:"コンテキストを圧縮中...",toolProgress:{checking_capabilities:"検索機能を確認中",semantic_search:"セマンティック検索を実行中",keyword_search:"キーワード検索を実行中",assembling_evidence:"証拠を整理中"}},statusBar:{model:{notConfigured:"AI 未設定"},agent:{label:"Agent",contextTokens:"コンテキスト",phase:{compressing:"圧縮中",preparing:"準備中",thinking:"思考中",tool_running:"ツール実行中",responding:"応答中",completed:"完了",aborted:"停止",error:"エラー"},phaseShort:{compressing:"圧縮",preparing:"準備",thinking:"思考",tool_running:"ツール",responding:"生成",completed:"完了",aborted:"停止",error:"エラー"}},thinking:{title:"思考強度",tooltip:"モデルの思考強度を設定",level:{default:"デフォルト",off:"オフ",minimal:"極小",low:"低",medium:"中",high:"高",xhigh:"最大",auto:"自動"}},tokenUsageTitle:"累計 Token 使用量",cacheHit:"キャッシュヒット",export:{label:"エクスポート",title:"現在のチャットをエクスポート"},log:{label:"ログ",title:"現在の AI ログファイルを開く",openFailed:"ログを開けませんでした",openFailedDesc:"しばらくしてから再度お試しください"}},conversation:{newChat:"新規チャット",newConversation:"新規チャット",empty:"履歴はありません",startNew:"新しいチャットを始める",titlePlaceholder:"タイトルを入力...",group:{last7Days:"過去 7 日間",last30Days:"過去 30 日間"},rename:"名前を変更",copyId:"ID をコピー",delete:"削除",export:{createdAt:"作成日時",user:"ユーザー",assistant:"AI アシスタント",noMessages:"会話にメッセージがありません"}},error:{title:"処理に失敗しました",detail:"エラー詳細",viewDetail:"詳細を表示",requestUrl:"リクエストURL",statusCode:"ステータスコード",responseBody:"レスポンスボディ",responseHeaders:"レスポンスヘッダー",requestBody:"リクエストボディ",name:"エラー名",message:"エラーメッセージ",stack:"スタックトレース",cause:"エラー原因",provider:"プロバイダー",copyAll:"すべてコピー",copied:"クリップボードにコピーしました",unknown:"不明なエラー"},dataSource:{title:"データソース",keywords:"キーワード:",empty:"データがありません",emptyHint:"質問を送信すると、関連する記録がここに表示されます",totalRecords:"全 {count} 件の記録",loadMore:"さらに読み込む"},evidence:{title:"根拠",query:"質問",criteria:"判定基準",empty:"明確な根拠は見つかりませんでした",totalSources:"全 {count} 件のソース",mode:{auto:"自動",hybrid:"セマンティック + キーワード",semantic:"セマンティック検索",keyword:"キーワード検索"},group:{included:"根拠に算入",excluded:"除外",uncertain:"不確実"},warning:{criteria_missing:"判定基準が未指定のため、グループ分けは保守的です",keywords_missing_for_hybrid:"キーワードが未指定のため、セマンティック検索のみに切り替えました",keywords_required_for_keyword_mode:"キーワードモードにはキーワードが必要です",semantic_unavailable:"セマンティックインデックスが利用できないため、キーワード検索を使用しました",keyword_unavailable:"キーワード検索が利用できません",semantic_partial:"セマンティック検索の結果が不完全な可能性があります"}}},KX={editor:{errorEmptySQL:"SQL 文を入力してください",placeholder:"SQL クエリを入力...",tip:"ヒント:左側の列名をダブルクリックすると SQL に挿入できます",history:"履歴",generateAndRun:"生成して実行",switchToSQLMode:"SQL 入力モードに切り替え",switchToPromptMode:"Prompt 入力モードに切り替え",run:"実行"},schema:{tables:"テーブル",doubleClickToInsert:"ダブルクリックで SQL に挿入",primaryKey:"主キー"},result:{queryError:"クエリエラー",rows:"{count} 行",readableTime:"タイムスタンプを日付に変換",viewChat:"チャット履歴を見る",summarize:"要約する",pageSize:"表示件数",emptyResult:"クエリ結果が空です",initialState:"SQL 文を入力して実行すると結果が表示されます",initialHint:"読み取り専用クエリ(SELECT / WITH)のみ対応しています。速度向上のため LIMIT の指定をおすすめします",summaryTitle:"AI 結果サマリー",analyzing:"AI が結果を分析中...",errorSummary:"要約に失敗しました"},generate:{placeholder:"例:発言数が最も多い上位10名のメンバーを検索、1日あたりのメッセージ数を集計、「旅行」というキーワードを含むメッセージを検索...",errorEmptyPrompt:"クエリ要件を入力してください",errorGenerate:"AI 生成に失敗しました",errorTokenLimit:"モデル出力がトークン上限に達し、完全な応答を生成できませんでした(思考にトークンを消費しすぎた可能性があります)",aiOutput:"AI 出力",thinking:"思考中…",thinkingProcess:"思考プロセス",waitingAI:"AI の応答待ち...",defaultPromptPrivate:"この個人チャットの直近1年間について、2人それぞれのメッセージ総数・割合・アクティブ日数・アクティブ日あたり平均件数・初回発言時刻・最終発言時刻を集計し、メッセージ総数の降順で表示してください。",defaultPromptGroup:"このグループチャットの直近1年間について、各メンバーのメッセージ総数・割合・アクティブ日数・アクティブ日あたり平均件数・テキスト比率を集計し、表示名付きでメッセージ総数の降順上位20名を返してください。"},history:{title:"AI 生成履歴",execute:"実行",empty:"履歴はありません",justNow:"たった今",minutesAgo:"{count} 分前",hoursAgo:"{count} 時間前",today:"今日"}},XX={selector:{title:"アシスタントを選んでチャットを始めましょう",heroTitlePrefix:"",heroTitleSuffix:"と話しかける",subtitle:"各アシスタントは得意分野が異なります。目的に合うものを選んでください",noAssistants:"現在のシーンで利用可能なアシスタントはありません",manage:"アシスタント管理",addNew:"アシスタントを追加"},config:{viewTitle:"設定を確認",createTitle:"アシスタントを作成",editTitle:"アシスタント設定",betaWarning:"現在はベータ版のため、設定仕様が今後変わる可能性があります。プロンプトや関連設定は控えを残してください。",tabs:{basic:"基本設定",tools:"ツール管理"},name:"名前",systemPrompt:"システムプロンプト",chatType:"対応チャットタイプ",chatTypeAll:"すべて",chatTypeGroup:"グループチャット",chatTypePrivate:"個人チャット",locale:"対応言語",localeHint:"未選択なら全言語が対象です",presetQuestions:"プリセット質問",addQuestion:"質問を追加...",coreTools:"コアツール",coreToolsHint:"基本データ取得ツール、常に有効、無効化不可",analysisTools:"分析ツール",analysisToolsHint:"必要に応じて有効化。チェックしたツールのみ AI が利用可能",selectAll:"すべて選択",deselectAll:"すべて解除",resetDefault:"デフォルトに戻す",create:"作成"},market:{title:"アシスタント管理",tabs:{local:"ローカル",market:"マーケット"},localHint:"インポート済みのアシスタントを管理・設定・削除",marketHint:"アシスタントマーケットを閲覧し、インポートして使用・カスタマイズ",default:"デフォルト",reimport:"再インポート",imported:"インポート済み",import:"インポート",importing:"インポート中...",importSuccess:"インポート成功",importFailed:"インポート失敗",viewConfig:"設定を見る",duplicate:"複製",addAssistant:"アシスタントを追加",noLocal:"インポート済みのアシスタントはありません",noCatalog:"利用可能なアシスタントがありません。ネットワーク接続を確認してください",loading:"読み込み中...",loadFailed:"読み込みに失敗しました。ネットワーク接続を確認してください",retry:"再試行"},fallbackName:"アシスタント",duplicateSuffix:"(コピー)",upgrade:{title:"デフォルトアシスタントを更新できます",message:"現在のデフォルトアシスタントは古いテンプレートを元にしており、カスタマイズが含まれています。ChatLab は「{backupName}」として保存してから最新版へ切り替えます。",backupName:"{name}(旧版バックアップ)",skipHint:"スキップすると、テンプレートが次に更新されるまで表示されません。",skip:"スキップ",skipFailed:"更新をスキップできませんでした",confirm:"バックアップして更新",success:"デフォルトアシスタントを更新しました",successDescription:"以前の設定を「{name}」として保存しました",failed:"更新に失敗しました"},toast:{loadFailed:"読み込みに失敗しました",createSuccess:"作成しました",createFailed:"作成に失敗しました",saveSuccess:"保存しました",saveFailed:"保存に失敗しました",resetSuccess:"デフォルトに戻しました",resetFailed:"リセットに失敗しました",unknownError:"不明なエラー"},builtinToolDesc:{get_chat_overview:"チャット概要情報を取得",search_messages:"チャットメッセージを検索",deep_search_messages:"チャットメッセージを深層検索",get_recent_messages:"最近のメッセージを取得",get_message_context:"メッセージのコンテキストを取得",get_conversation_between:"2人のやり取りを取得",get_members:"メンバー一覧を取得",get_schema:"データベーススキーマを確認",get_member_stats:"メンバー統計を取得",get_member_name_history:"メンバーの名前変更履歴を取得",get_time_stats:"時間統計を取得",get_segment_messages:"セグメントメッセージを取得",get_segment_summaries:"セグメント要約を取得",message_type_breakdown:"メッセージ種別分布",peak_chat_hours_by_member:"メンバー活動時間帯",member_activity_trend:"メンバー活動トレンド",silent_members:"沈黙メンバー検出",reply_interaction_ranking:"返信インタラクションランキング",mutual_interaction_pairs:"相互インタラクションペア",member_message_length_stats:"メッセージ長さ統計",unanswered_messages:"未返信メッセージ",daily_active_members:"日別アクティブ人数推移",conversation_initiator_stats:"話題開始者統計",activity_heatmap:"活性度ヒートマップ",response_time_analysis:"応答時間分析",keyword_frequency:"高頻度キーワード統計",render_chart:"動的チャート生成",semantic_search_current_chat:"チャット履歴を検索"}},JX={market:{title:"スキル管理",tabs:{local:"ローカル",market:"マーケット"},localHint:"インポート済みのスキルを管理・設定・削除",marketHint:"スキルマーケットを閲覧し、インポートして使用・カスタマイズ",reimport:"再インポート",imported:"インポート済み",import:"インポート",importing:"インポート中...",importSuccess:"インポート成功",importFailed:"インポート失敗",noLocal:"インポート済みのスキルはありません",noCatalog:"利用可能なスキルがありません。ネットワーク接続を確認してください",addSkill:"カスタムスキルを作成",loading:"読み込み中...",loadFailed:"読み込みに失敗しました。ネットワーク接続を確認してください",retry:"再試行"},active:{label:"手動呼び出しスキル:{name}"}},QX={toolTest:{coreTools:"コアツール",analysisTools:"分析ツール",parameters:"パラメータ",arrayPlaceholder:"カンマで区切って入力",execute:"実行",cancel:"キャンセル",elapsed:"所要時間 {ms}ms",result:"実行結果",truncated:"結果が大きすぎるため、切り捨てて表示しています。limit パラメータを小さくしてください。"}},ZX={tab:GX,chat:YX,sqlLab:KX,assistant:XX,skill:JX,lab:QX},eJ={loading:"単語頻度を分析中...",stats:{wordsLabel:"総単語数",clickHint:"ヒント:ワードクラウドをクリックすると関連メッセージを表示できます"},config:{maxWords:"表示単語数",sizeScale:"フォントサイズ",userFilter:"ユーザーフィルター",posFilter:"品詞フィルター",enableStopwords:"ストップワードを除外",dict:"辞書"},size:{small:"小",medium:"中",large:"大",xlarge:"特大"},posFilter:{all:"すべての品詞",meaningful:"主要品詞",custom:"カスタム",customHint:"品詞を指定",selectMeaningful:"主要品詞",selectAll:"すべて選択",clearAll:"クリア"},empty:{title:"ワードクラウドデータがありません",description:"現在の絞り込み条件では、ワードクラウドを作れるほどテキストメッセージがありません"},dict:{zhCN:"簡体字中国語",zhTW:"繁体字中国語",download:"辞書をダウンロード","download_zh-CN":"簡体字辞書をダウンロード","download_zh-TW":"繁体字辞書をダウンロード",needDownload:"ワードクラウドは内蔵トークナイザーの結果で表示されています。中国語辞書をダウンロードすると分かち書きの精度が向上します。",downloadHint:"~8MB",downloadSuccess:"辞書のダウンロードが完了しました",downloadFailed:"辞書のダウンロードに失敗しました",promptTitle:"繁体字中国語辞書",promptDescription:"繁体字中国語をご使用中です。ワードクラウドの精度を上げるため、繁体字辞書のダウンロードをお勧めします。今すぐダウンロードしますか?(約8MB)",promptDownload:"今すぐダウンロード",promptLater:"後で"}},tJ={title:"キーワードランキング",description:"グループチャットのキーワード使用ランキングを分析します。カスタムランキングも作成できます",countTemplate:"全 {count} 名のメンバー",templateLabel:"テンプレート:",newTemplate:"+ 新規作成",searchPlaceholder:"入力して検索",clear:"クリア",templateHint:"* テンプレートを右クリックで編集・削除できます",keyword:"キーワード",ranking:"ランキング",multiColorMode:"マルチカラーモード",times:"{count}回",timesWithPercent:"回 ({percent}%)",loading:"データを分析中...",empty:"データがありません。キーワードを追加するかテンプレートを切り替えてください",contextMenu:{edit:"編集",delete:"削除"},modal:{createTitle:"テンプレートを作成",editTitle:"テンプレートを編集",templateName:"テンプレート名",templateNamePlaceholder:"例:ポジティブ",keywords:"キーワード",keywordPlaceholder:"入力して Enter で追加",update:"更新"},templates:{laugh:{name:"笑い度",keywords:"笑,ウケる,草,www,lol,ワロタ,233",description:"グループ内の笑い指数を集計"},sad:{name:"落ち込み度",keywords:"辛い,しんどい,泣いた,無理,きつい,疲れた",description:"グループ内のネガティブ感情を集計"},praise:{name:"褒め上手",keywords:"すごい,さすが,天才,神,やばい,尊い,最高",description:"グループで最も褒め上手なメンバーを集計"},slacker:{name:"サボり",keywords:"サボり,帰りたい,お腹空いた,眠い,仕事したくない,定時",description:"グループで最も退勤を待ち望んでいるメンバーを集計"},gossip:{name:"ゴシップ好き",keywords:"マジで,詳しく,本当に,えぇ,やばい,ありえない",description:"グループで最もゴシップ好きなメンバーを集計"},polite:{name:"礼儀正しさ",keywords:"ありがとう,すみません,了解,お疲れ様,よろしく,恐れ入ります",description:"グループで最も礼儀正しいメンバーを集計"},curious:{name:"質問好き",keywords:"なぜ,なんで,どうやって,わからない,教えて",description:"グループで最も質問が多いメンバーを集計"}}},nJ={title:"盛り上がった復唱",loading:"リピートデータを読み込み中...",description:"1 回の復唱で最も多くの人が参加したフレーズ",countTemplate:"全 {count} 件の復唱",people:"{count}人",times:"{count} 回",viewChat:"チャット履歴を見る",empty:"リピートデータがありません"},aJ={heroPrefix:"",heroMiddle:"件のメッセージを分析し、",heroMiddleSecond:"その結果、",heroSuffix:"個のユニークな単語が見つかりました",topTopicsPrefix:"よく話すトピック:",hotTopic:"注目トピック",hotTopicDesc:"{count} 回出現",richness:"語彙の豊かさ",richnessValue:"{value}%",richnessDesc:"ユニーク {unique} / 合計 {total}",chatStyle:"チャットスタイル",styleEncyclopedia:"百科事典タイプ",styleEncyclopediaDesc:"名詞が多く、人・場所・物の話題が中心",styleAction:"アクション派",styleActionDesc:"動詞が多く、行動や計画の話題が中心",styleExpressive:"表現豊かタイプ",styleExpressiveDesc:"形容詞が多く、感情表現が豊か",styleBalanced:"バランス型",styleBalancedDesc:"多様なトピックでバランスの取れた会話",expressionStyle:"表現スタイル",expressionCasual:"カジュアル",expressionCasualDesc:"短い言葉でリラックスした表現",expressionFormal:"フォーマル",expressionFormalDesc:"丁寧な言葉遣いで正確な表現",expressionMixed:"ミックス",expressionMixedDesc:"カジュアルとフォーマルの混合",watermark:"トピックプロフィール",sharedTopics:"共通のトピック"},rJ={title:"グループメンバーの口癖",description:"各メンバーを象徴する繰り返しフレーズを確認できます",memberTitle:"{name}の口癖",memberDescription:"このメンバーがよく使うフレーズを回数順に表示します",loading:"口癖データを分析中...",times:"{count}回",memberCount:"全{count}人",phraseCount:"全{count}件の口癖",viewChat:"関連メッセージを表示",empty:{title:"口癖データがありません"}},oJ={loading:"言語傾向を分析中...",empty:"言語分析に十分なテキストメッセージがありません",card:{diversityTitle:"語彙の深さ",diversityDesc:"ユニーク単語の割合",styleTitle:"チャット気質",styleDesc:"品詞分布に基づく表現スタイル",punctTitle:"句読点パーソナリティ",punctDesc:"最も使われる句読点スタイル",watermark:"言語傾向 · Language Preference",radarFactual:"事実性",radarActive:"行動力",radarDescriptive:"描写力",radarAffable:"親和力",radarIntense:"強調度",radarNoun:"名詞",radarVerb:"動詞",radarAdj:"形容詞",radarModal:"終助詞",radarAdv:"副詞"},catchphrasePK:{title:"口癖バトル",sharedCount:"{count} 個の共通口癖",hint:"クリックで関連メッセージを表示。ピンク枠は共通の口癖です。"},pos:{title:"品詞ポートレート",styleEncyclopedia:"百科事典タイプ",styleAction:"行動派",styleExpressive:"感性派",styleBalanced:"バランス型"},modal:{title:"終助詞プロフィール",toneSoft:"やわらかい",toneCurious:"好奇心旺盛",toneCasual:"カジュアル",toneCalm:"落ち着き",toneMixed:"多彩なスタイル",empty:"終助詞データがありません"},punctuation:{title:"句読点パーソナリティ",none:"句読点なし",personalityDeep:"深い思考型",personalityPassionate:"情熱的",personalityCurious:"好奇心型",personalityCheerful:"明るい",personalityFreeflow:"自由型",personalityPrecise:"几帳面",empty:"句読点データがありません"}},sJ={wordcloud:eJ,keywords:tJ,hotRepeat:nJ,topicProfile:aJ,catchphrase:rJ,languagePreference:oJ},iJ={title:"あなたはどなたですか?",subtitle:"このチャットでのあなたの身元を選択してください",description:"設定するとあなたのメッセージがチャット履歴ビューアの右側に表示され、AI との会話でもあなた本人として認識され、分析がより正確になります。同じプラットフォームの他のチャットにも自動的に適用されます。",searchPlaceholder:"メンバーを検索",noMatch:"一致するメンバーが見つかりません",empty:"メンバーデータがありません",loadError:"メンバーデータの読み込みに失敗しました。再試行してください",later:"後で",notInConversation:"この会話に私はいません",save:"保存",clear:"現在の選択をクリア",saved:"あなたの身元を設定しました",appliedToOthers:"同じプラットフォームの {count} 件のチャットに自動適用しました",saveFailed:"身元の設定に失敗しました",currentOwner:"私は:{name}",choose:"自分を選択",change:"変更",helper:"設定すると AI があなたを認識し、分析がより正確になります"},lJ={title:"メンバー管理",description:"全 {count} 名のメンバー。別名の追加やメンバーの削除ができます",searchPlaceholder:"グループニックネーム、アカウント名、ID、または別名で検索",noMatch:"一致するメンバーが見つかりません",empty:"メンバーデータがありません",table:{accountName:"アカウント名",groupNickname:"グループニックネーム",messageCount:"メッセージ数",lastMessageTime:"最終発言",customAlias:"カスタム別名",actions:"操作"},aliasPlaceholder:"入力して Enter で追加",delete:"削除",deleteSelected:"選択項目を削除",mergeSelected:"選択を結合",selectedCount:"{count} 名を選択中",pagination:"{start} - {end} 件表示、全 {total} 名のメンバー",tip:"ヒント:別名を追加すると、チャット履歴の相手をより正確に識別できます。別名は検索や AI 分析で使用されます。",mergeModal:{title:"メンバーを結合しますか?",content:"{source}({sourceCount} 件)を {target}({targetCount} 件)へ結合します。結合後の名前は、メッセージ数が多い側を優先して保持します。",hint:"この操作は元に戻せません。結合される側のメッセージはすべて保持側に移動します。",cancel:"キャンセル",confirm:"結合を確認"},batchDeleteModal:{title:"選択したメンバーを削除しますか?",content:"選択した {count} 名のメンバーと、その {messageCount} 件のメッセージを削除します。この操作は元に戻せません。"},modal:{title:"メンバーを削除しますか?",content:"メンバー {name} とその {count} 件のメッセージを削除します。この操作は元に戻せません。",cancel:"キャンセル",confirm:"削除を確認"}},cJ={note:"備考:QQ の旧バージョンクライアントはチャット履歴を txt 形式でエクスポートできます。この形式では最も正確なニックネーム変更履歴が取得できます",title:"ニックネーム変更履歴",loading:"読み込み中...",hasChanges:"{count} 名のメンバーがニックネームを変更しました",noChanges:"ニックネームを変更したメンバーはいません",current:"現在",empty:"このグループのすべてのメンバーはニックネームを変更していません",loadingText:"ニックネーム変更履歴を読み込み中..."},uJ={loading:"{'@'} インタラクションデータを分析中...",rankingTitle:"{'@'} インタラクションランキング",rankModes:{mentioners:"送った {'@'}",mentioned:"受け取った {'@'}"},topMentionersDescription:"送った {'@'} の回数順",topMentionedDescription:"受け取った {'@'} の回数順",times:"回",emptyTitle:"📱 {'@'} インタラクション分析",empty:"{'@'} インタラクションデータがありません"},dJ={ownerPrompt:iJ,list:lJ,nicknameHistory:cJ,relationships:uJ,private:{title:"会話メンバー",description:"全 {count} 名のメンバー。検索や AI 分析に使用する別名を追加できます"}},fJ={title:"チャット履歴ビューア"},pJ={indexMissingTitle:"会話要約インデックスがまだありません",indexMissingDescription:"元のメッセージはそのまま閲覧できます。インデックスを生成すると要約が会話区間ごとに整理されます。この操作だけでは AI は自動実行されません。",generateIndex:"インデックスを生成",indexGenerated:"{count} 件の会話区間を生成しました",indexGenerationFailed:"会話インデックスの生成に失敗しました",indexLoadFailedTitle:"会話要約インデックスを読み込めませんでした",indexLoadFailedDescription:"元のメッセージは引き続き閲覧できます。再読み込みしても、既存の要約は変更されません。"},hJ={loading:"読み込み中...",noMessages:"メッセージがありません",tryAdjustFilter:"フィルター条件を調整してみてください",loadingMore:"さらに読み込み中...",scrollUpForMore:"↑ 上にスクロールしてさらに読み込む",scrollDownForMore:"↓ 下にスクロールしてさらに読み込む"},mJ={messageId:"メッセージ ID",memberPlaceholder:"メンバー",keywordsPlaceholder:"キーワード(複数はカンマ区切り、Enter で検索)",startDate:"開始日",endDate:"終了日",reset:"リセット",filter:"フィルター"},gJ={timeline:"要約",noSessions:"要約がありません",generateSummary:"要約を作成",updateSummary:"要約を更新",summaryStale:"· 更新が必要",tooFewMessages:"メッセージが少なすぎます"},vJ="要約の生成に失敗しました",yJ="不明なエラー",bJ={title:"要約をまとめて作成",trigger:"一括生成",byRange:"範囲で選択",byTime:"時間で選択",selectRange:"範囲を選択",rangeStart:"最古",rangeInfo:"約",sessionsUnit:"セッション",rangeEnd:"最新",timeRange:"時間範囲を選択",today:"今日",yesterday:"昨日",week:"直近7日間",month:"直近30日間",custom:"カスタム",found:"見つかった",hasSummary:"件は要約済み",needsUpdate:"件は更新が必要",tooFewMessages:"件はメッセージ不足",pending:"未生成:",unit:"件",noPending:"生成可能なセッションがありません",noSessions:"この時間範囲にセッションがありません",checking:"確認中...",loading:"読み込み中...",progress:"進捗",session:"セッション",statusSuccess:"成功",statusSkipped:"スキップ",statusFailed:"失敗",success:"成功:",failed:"失敗:",skipped:"スキップ:",start:"生成開始",stop:"停止"},wJ={title:"トピック",loadFailed:"トピックを読み込めませんでした",preflightFailed:"生成範囲を見積もれませんでした",startFailed:"トピック生成を開始できませんでした",actionFailed:"トピックタスクの操作に失敗しました",deleteFailed:"トピックを削除できませんでした",emptyTitle:"この日のトピックはまだありません",emptyDescription:"AI が暦日ごとに会話を読み、別の話題を挟んだり時間を置いて再開した同じ話題をまとめます。開始したときだけ利用枠を消費します。",batchSummarize:"一括要約",batchSummarizeTitle:"トピックを一括要約",summarizeDay:"この日のトピックをまとめる",createDescription:"選択した開始地点からチャット記録の最終日まで処理します。いつでも一時停止・再開できます。",start:"作成を開始",noMessages:"範囲内にメッセージがありません",updateDay:"この日を更新",pause:"一時停止",resume:"再開",progress:"{completed}/{total} 日完了",progressBlock:"原文ブロック {current}/{total} を分析中({seconds} 秒経過)",progressFinalizing:"この日のトピックをまとめています({seconds} 秒経過)",stale:"この日のチャット履歴が変更されています。以下は前回成功時の結果です。更新までは元のメッセージを確認してください。",evidence:"元メッセージ",deleteTitle:"この日のトピックを削除しますか?",deleteDescription:"この日の AI 派生結果だけを削除し、チャット履歴は削除しません。後から再作成できます。",range:{current:"表示中の日から",currentDescription:"{date} からチャット記録の最終日まで処理します",custom:"開始日を選択",customDescription:"指定した日からチャット記録の最終日まで処理します",today:"今日から",todayDescription:"今日のメッセージだけを処理します",year:"今年から",yearDescription:"今年から今日までのアクティブな日を処理します",all:"最初から",allDescription:"最古のチャット日からすべて遡ります"},estimate:{range:"{start} ~ {end}",days:"アクティブ日",messages:"メッセージ",calls:"推定呼出数"},status:{pending:"待機中",running:"トピックを整理中",paused:"一時停止中",completed:"完了",failed:"失敗",cancelled:"キャンセル済み"},topicState:{active:"進行中",closed:"一区切り"}},_J={viewContext:"コンテキストを表示",replyTo:"返信",expandMessyContent:"全文を表示",collapseMessyContent:"折りたたむ"},kJ={drawer:fJ,workspace:pJ,messageList:hJ,filter:mJ,timeline:gJ,summaryFailed:vJ,summaryUnknownError:yJ,batchSummary:bJ,topics:wJ,messageItem:_J},CJ={rankingView:"ランキング表示",memberView:"メンバー表示",matrixView:"マトリクス表示",modelSettings:"モデル設定",lookAhead:"隣接数",lookAheadDesc:"各メッセージの後ろ側で何人分の発言を対象にするか",decaySeconds:"時間減衰(秒)",decaySecondsDesc:"値が大きいほど遠いメッセージの重みが高くなる",applySettings:"設定を適用",noData:"データがありません",selectMember:"メンバーを選択",selectMemberHint:"左側からメンバーを選択してください",msgCount:"発言数",relationCount:"関係数",relationsByIntimacy:"発言近接度ランキング",noRelations:"関係データがありません",intimacy:"近接度",interactionRanking:"やり取りランキング",score:"近接度",coOccurrence:"共起",times:"回",totalMembers:"グループメンバー",totalMessages:"メッセージ総数",involvedMembers:"参加メンバー",edgeCount:"関係数"},SJ={typeDistribution:"メッセージタイプ分布",hourlyDistribution:"時間帯別分布",weekdayDistribution:"曜日別分布",monthlyDistribution:"月別分布",yearlyDistribution:"年別分布",timeHeatmap:"時間ヒートマップ",heatmapHint:"チャット時間帯の傾向を表示",calendarHeatmap:"メッセージカレンダー",calendarHint:"日別メッセージ分布",calendarTooltipMessages:"メッセージ",lengthDetailTitle:"短文メッセージ分布(1-25文字)",lengthDetailHint:"文字ごとの統計",lengthGroupedTitle:"文字数区間分布",lengthGroupedHint:"5文字ごとにグループ化",noTextMessages:"テキストメッセージがありません",noData:"データがありません",profile:{avgLengthUnit:"{count} 文字/件",textExpression:"テキスト表現力",textExpressionDesc:"最長メッセージ {count} 文字",mediaRichness:"メディアの豊かさ",shortMaster:"短文マスター",shortMasterDesc:"5文字以下 {count} 件",essayLover:"長文好き",essayLoverDesc:"{threshold}文字以上のメッセージ",typeDistribution:"メッセージ種類",heroLine1Prefix:"合計で",heroLine1Suffix:"件のメッセージを交わしました"},typeCard:{watermark:"タイプレポート",nonTextPrefix:"テキスト以外に、",nonTextImage:"画像",nonTextEmoji:"スタンプ",nonTextVoice:"音声",nonTextVideo:"動画",nonTextFile:"ファイル",nonTextLink:"リンク",unitImage:"枚の画像",unitEmoji:"個のスタンプ",unitVoice:"件の音声",unitVideo:"本の動画",unitFile:"個のファイル",unitLink:"個のリンク"},timeCard:{hourlyDistribution:"24h 分布",watermark:"時間レポート",heroDaysIn:"日間で",heroDaysActive:"日アクティブ",heroAvgPrefix:"平均",heroAvgSuffix:"件/日",personalityNightOwl:"夜型",personalityEarlyBird:"朝型",personalityLunchChat:"昼休み派",personalityEveningChat:"夜の語らい",personalityDaytime:"日中活動",personalityEveryday:"毎日活動",personalityWeekend:"週末活躍",personalityWeekday:"平日活躍",peakRecord:"ピーク記録",peakRecordDesc:"1日最多 {count} 件",topHoursLabel:"最もアクティブ",peakWeekdayLabel:"ピーク曜日",weekendRatio:"週末比率",weekendRatioDesc:"週末メッセージ比率"},timeAnalysis:{memberTrendTitle:"メッセージトレンド",memberTrendHint:"メンバー別月次メッセージ推移"},typeAnalysis:{textDepthTitle:"テキスト深度分析",textTotal:"テキスト総数",avgLength:"平均文字数",medianLength:"中央値",maxLength:"最長メッセージ",percentiles:"文字数パーセンタイル",shortMessages:"短文(≤5文字)",essayMessages:"長文(≥30文字)"}},xJ={layout:"レイアウト",circular:"サークル",force:"フォースレイアウト",directed:"有向",reset:"リセット",graphHint:"全 {nodes} 名のメンバー、{links} 件のインタラクション",noInteraction:"メンションデータがありません"},AJ={canvasLabel:"グループの交流関係ギャラクシー",loading:"グループ内の関係を整理しています...",loadFailed:"関係ギャラクシーを読み込めませんでした",webglUnavailable:"この環境ではギャラクシーを表示できません",webglUnavailableDescription:"ハードウェアアクセラレーションを有効にするか、WebGL 対応環境で再試行してください。",emptyTitle:"交流データが不足しています",emptyDescription:"この期間には、2人以上の返信、メンション、または連続した発言が必要です。",resetView:"表示をリセット",closeDetail:"メンバー詳細を閉じる",messageCount:"グループ発言数",relationshipScore:"関係の強さ",lastInteraction:"最近の交流",signalComposition:"交流の内訳",replies:"返信",mentions:"メンション",proximity:"発言の近さ",strongConnections:"親しいつながり",connectionSignals:"返信 {replies} · メンション {mentions} · 近接 {proximity}",noConnections:"表示できる直接のつながりはありません"},PJ={empty:{title:"関係データがありません",description:"選択した期間内にセッションが見つかりません。"},trend:{title:"主動性の推移",hint:"青い線は {name} の月別主動発起率。50% 線がバランス基準です"},hero:{totalSessionsPrefix:"2人の会話は合計",totalSessionsSuffix:"回",initiativePrefix:"",initiativeByPrefix:"の話題の切り出しは",initiativeBySuffix:"から始まりました",initiateTimes:"回発起"},closerTitle:"会話の締め役",closerHint:"話題が終わるときに最後に発言した人を集計します。",watermarkReport:"関係レポート",monthFormat:"{year}年{month}月",monthShortFormat:"{month}月",iceBreaker:{title:"アイスブレイカー",hint:"24時間以上の沈黙を破って話しかけた回数"},responseLatency:{title:"返信速度",hint:"相手がメッセージを送った後、平均何分で返信するか",seconds:"{n} 秒",minutesSeconds:"{m}分{s}秒",hours:"{n} 時間",hoursMinutes:"{h} 時間 {m} 分"},perseverance:{title:"粘り強さ",hintWithThreshold:"相手が{threshold}以内に返信しないうちに、もう一通メッセージを送った回数",thresholdMinutes:"{n}分"},trajectory:{title:"やり取りの推移",description:"月ごとの変化から2人のやり取りを振り返ります",metrics:{activity:"会話の頻度",response:"返信速度",perseverance:"連続送信"},conversations:"会話回数",iceBreaks:"会話の再開",keyMoments:"注目の月",activityPeak:"会話が最も多い月",activityPeakDetail:"会話 {count} 回",iceBreakPeak:"会話の再開が最多",iceBreakPeakDetail:"会話の再開 {count} 回",fastestResponse:"返信が最速",fastestResponseDetail:"平均返信時間 {duration}",showAll:"すべての月を表示",hideAll:"月別データを閉じる",month:"月"}},MJ={loadError:"チャットの歩みを読み込めませんでした",empty:"歩みを作成するためのメッセージがまだ十分にありません",hero:{prefix:"ふたりで歩んだ",summary:"{activeMonths}か月、{activeDays}日間にメッセージが残っています。",filteredSummary:"選択範囲では、{activeMonths}か月、{activeDays}日間にメッセージが残っています。",footprint:"会話の足跡",monthCount:"{count}か月の記録",monthTooltip:"{month} · {count}件のメッセージ"},metrics:{peakMonth:"最もにぎやかな月",activeMonths:"会話した月",longestConversation:"最も長い会話",longestSilence:"最も長い沈黙",messagesAndDays:"{messages}件 · {days}日間アクティブ",monthsRatio:"{active} / {total}か月",activeDays:"合計{count}日間アクティブ",conversationDetail:"{date} · {count}件",reopenedBy:"その後、{name}から再開",reopened:"その後、会話が再開しました",noIndex:"会話インデックスがありません",noSilence:"24時間を超える沈黙はありません"},years:{title:"一年ずつ振り返る",description:"年ごとに残された会話の章をたどります",summary:"{messages}件 · {days}日間 · {months}か月アクティブ",quiet:"この年にはメッセージがありません",peak:"ピーク月 · {count}件"},milestones:{title:"大切な節目",description:"始まりから再会まで、会話の歩みをつなぎます",start:"ここから始まりました",startDetail:"現在の記録にある最初のメッセージ",peak:"最もにぎやかな月",peakDetail:"この月に{count}件のメッセージを交わしました",longestConversation:"最も長い会話",conversationDetail:"{duration}にわたり、{count}件のメッセージ",longestSilence:"最も長い沈黙",silenceRange:"{start} – {end}",silenceDetailWithMember:"{duration}後、{name}から再開",silenceDetail:"{duration}後に会話が再開しました",end:"記録はここまで",endDetail:"現在の記録にある最後のメッセージ",filteredEndDetail:"選択範囲にある最後のメッセージ"},duration:{lessThanMinute:"1分未満",minutes:"{count}分",hours:"{count}時間",hoursMinutes:"{hours}時間{minutes}分",days:"{count}日",daysHours:"{days}日{hours}時間",months:"{count}か月",years:"{count}年",yearsMonths:"{years}年{months}か月"},watermark:"チャットの歩み"},TJ={title:"タイムライン表示",description:"メッセージの時間分布や活動周期の変化を可視化します"},IJ={rankListPro:{fullRanking:"全順位を表示",memberCount:"全 {count} 名のメンバー"},rankList:{unit:"件"},nicknameHistory:{periodToNow:"{start} 〜 現在",periodRange:"{start} 〜 {end}",current:"現在",empty:"ニックネーム履歴がありません"},listPro:{countTemplate:"全 {count} 件",fullRanking:"全順位を表示",empty:"データがありません"}},DJ={cluster:CJ,message:SJ,interaction:xJ,groupRelationshipGalaxy:AJ,relationship:PJ,journey:MJ,timeline:TJ,charts:IJ},EJ="キーワードフィルター",$J="スキーム一覧",RJ="スキーム名",LJ="スキーム名を入力",OJ="新しいスキーム",NJ="新規作成",FJ="削除",qJ="デフォルトに設定",BJ="デフォルト",HJ="キーワードフィルター",VJ="フィルターなし",zJ="スキーム管理",jJ="フィルターワード追加",WJ="入力してEnterで追加、スペースまたはカンマ区切りで一括追加可能",UJ="追加",GJ="フィルターワード一覧",YJ="すべてクリア",KJ="スキームがありません。+ をクリックして作成",XJ="フィルターワードがありません。上の入力欄から追加してください",JJ="フィルタースキームを選択または作成",QJ="{count} 個のワードをフィルター中",ZJ="閉じる",eQ={title:EJ,schemeList:$J,schemeName:RJ,schemeNamePlaceholder:LJ,defaultSchemeName:OJ,createScheme:NJ,deleteScheme:FJ,setDefault:qJ,isDefault:BJ,filterScheme:HJ,noFilter:VJ,manage:zJ,addWords:jJ,addWordsPlaceholder:WJ,add:UJ,wordList:GJ,clearAll:YJ,emptyScheme:KJ,emptyWords:XJ,selectOrCreate:JJ,activeCount:QJ,close:ZJ},tQ="連絡先",nQ="{count} 件の個人チャットをインポート済み",aQ="現在の期間内の有効な個人チャット数は {count} 件です。グループチャットが 1 件以上、または有効な個人チャットが 5 件以上になると連絡先が有効になります。",rQ="一致する連絡先はありません",oQ="なし",sQ="連絡先を検索",iQ="スコア {value}",lQ={"1y":"1年","2y":"2年","3y":"3年","5y":"5年",all:"すべて"},cQ={total:"連絡先",friends:"友人",nonFriends:"グループ仲間"},uQ={allPools:"すべて",friends:"友人",nonFriends:"グループ仲間"},dQ={friends:"友人",groupContacts:"グループ仲間"},fQ={friend:"友人",manualFriend:"友人 · 手動",nonFriend:"グループ仲間"},pQ={pinned:"ピン留めした連絡先",friends:"友人",group_contacts:"グループ仲間"},hQ={contact:"連絡先",status:"種別"},mQ={recompute:"再計算",markFriend:"友人としてマーク",unmarkFriend:"マークを解除",clearSearch:"検索をクリア",clearSelection:"選択を解除",openSourceSession:"会話へ移動",viewSourceRecords:"チャット履歴を見る",viewDetail:"{name} の詳細を表示"},gQ={title:"連絡先の詳細",score:"総合スコア",scoreHelp:"総合スコアは連絡先の並び順に使われます。スコアが高いほど、やり取りのシグナルが強いことを示します。",lastInteraction:"最終インタラクション",sources:"元チャット",sourceType:{private:"個人",group:"グループ"},aliases:"別名",signals:"やり取りのシグナル",emptyTitle:"連絡先を選択",emptyDescription:"左側の連絡先を選ぶと、やり取りの指標と元チャットが表示されます。"},vQ={privateMessages:"個人チャット {count} 件",privateMessagesLabel:"個人メッセージ",activeMonths:"アクティブ月",commonGroups:"共通グループ",lastInteractionShort:"最近",groups:"共通グループ {count} 件",coOccurrence:"同時出現",replies:"返信",groupSignals:"同時出現 {count} 回"},yQ={title:"連絡先データが古い可能性があります",message:"チャットデータが変更されました。バックグラウンドで連絡先を更新しています。",inline:"連絡先データが古い可能性があります。",later:"後で"},bQ={running:"連絡先を計算中: {current} / {total} セッション",updating:"連絡先データが更新された可能性があります。再計算しています。",failed:"連絡先の計算に失敗しました",retry:"再試行"},wQ={recomputed:"連絡先を再計算しました",recomputeStarted:"バックグラウンドで連絡先の計算を開始しました",recomputeFailed:"再計算に失敗しました",markFriendSucceeded:"友人としてマークしました",markFriendFailed:"友人マークに失敗しました",unmarkFriendSucceeded:"マークを解除しました",unmarkFriendFailed:"マーク解除に失敗しました"},_Q={title:tQ,subtitle:nQ,disabled:aQ,empty:rQ,emptyValue:oQ,search:sQ,score:iQ,timeRange:lQ,stats:cQ,filters:uQ,tabs:dQ,pool:fQ,group:pQ,table:hQ,actions:mQ,detail:gQ,metrics:vQ,stale:yQ,task:bQ,toast:wQ},kQ="交流関係",CQ="パノラマ関係グラフ",SQ="関係サブページ",xQ="連絡先を検索",AQ="関係グラフのデータがありません",PQ="プライバシーモード",MQ={"3d":"3D","2d":"2D"},TQ={panorama:"全景",close:"高関連",friends:"友だちのみ"},IQ={"1y":"過去1年","2y":"過去2年","3y":"過去3年","5y":"過去5年",all:"すべて"},DQ={recompute:"再計算",clearSearch:"検索をクリア",closeDetail:"詳細を閉じる",backToPanorama:"全景に戻る",fitView:"表示に合わせる",focusConnections:"この人のつながりだけ表示"},EQ={nodes:"ノード",edges:"リンク",communities:"関連グループ",members:"人数"},$Q={friend:"友だち",manualFriend:"友だち・手動",nonFriend:"グループメンバー"},RQ={me:"自分",type:"自分",avatarText:"自"},LQ={running:"交流関係を計算中:{current} / {total} セッション",updating:"関係データが更新された可能性があります。再計算中です。",failed:"交流関係の計算に失敗しました",retry:"再試行"},OQ={title:"検索結果",offCore:"近傍を読み込む"},NQ={title:"関連する連絡先",empty:"現在のグラフに直接のつながりがありません",connectionScore:"関連度"},FQ={rank:"順位",score:"スコア",type:"種類",community:"コミュニティ",lastInteraction:"最終交流",privateMessages:"個別メッセージ",groupMessages:"グループメッセージ",commonGroups:"共通グループ",emptyValue:"なし"},qQ={recomputeStarted:"交流関係のバックグラウンド計算を開始しました",recomputeFailed:"再計算に失敗しました",loadFailed:"交流関係の読み込みに失敗しました",neighborhoodFailed:"近傍の読み込みに失敗しました",threeUnavailable:"3Dレンダリングを利用できないため、2Dに切り替えました。"},BQ={label:"交流関係ギャラクシーグラフ",label3d:"3D交流関係ギャラクシーグラフ"},HQ={title:kQ,subtitle:CQ,nav:SQ,search:xQ,empty:AQ,privacy:PQ,viewMode:MQ,graphScope:TQ,timeRange:IQ,actions:DQ,stats:EQ,pool:$Q,owner:RQ,task:LQ,searchResults:OQ,connections:NQ,detail:FQ,toast:qQ,canvas:BQ},VQ="足跡",zQ="このビューは今後のバージョンで公開予定です",jQ={nav:"足跡ビュー",relationshipChanges:"関係の変化"},WQ={title:VQ,reserved:zQ,tabs:jQ},UQ="一つひとつの会話を、たどれる形に",GQ="ローカル保存とプライバシーを最優先に、AI エージェントと可視化グラフでチャットの記憶を振り返れます",YQ="ログイン不要",KQ="この端末内だけで処理",XQ="アップロードなし",JQ="データはこのブラウザのサイトストレージに保存されます。サイトデータを消去すると、取り込んだセッションも削除されます。",QQ="チャット履歴のエクスポート方法",ZQ="ローカルワークスペースを準備中",eZ="初回起動では SQLite ランタイムを読み込み、ブラウザストレージを開きます。",tZ={title:"このブラウザではローカル版を実行できません",description:"最新版の Chrome、Edge、または OPFS 対応ブラウザを使用し、localhost か HTTPS で開いてください。",missing:"不足している機能:{capabilities}"},nZ={title:"ローカルワークスペースで問題が発生しました",unsupportedFile:"このファイルにはまだ対応していません。ChatLab JSON / JSONL、WhatsApp TXT、LINE TXT、QQ TXT、Telegram JSON から選択してください。"},aZ={eyebrow:"ローカルセッション",title:"チャットアーカイブ",description:"セッションはこのブラウザ内に分けて保存されます。セッションの管理と24時間のメッセージ分布を確認できます。",count:"{count} セッション",refresh:"更新",emptyTitle:"ローカルセッションはまだありません",emptyDescription:"左側から最初のチャットアーカイブを取り込むと、ここに表示されます。",messages:"{count} 件のメッセージ",members:"{count} 人のメンバー",lastMessage:"最終メッセージ {date}",importedAt:"インポート {date}",group:"グループ",private:"ダイレクト",rename:"名前を変更",renameLabel:"新しいセッション名",deleteTitle:"「{name}」を削除しますか?",deleteDescription:"このセッションのローカルデータベースは完全に削除されます。元に戻せません。",busy:"セッションを更新中…"},rZ={open:"時間帯分布を見る",eyebrow:"最初のローカル分析",title:"「{name}」の24時間分布",description:"統計は端末内のバックグラウンドスレッドで処理し、この端末のタイムゾーンで時間帯を集計します。",loading:"ローカルセッションの統計を読み込み中…",totalMessages:"集計メッセージ",peakHour:"最も活発な時間",activeHours:"活動時間帯",hourValue:"{hour}:00",hourTooltip:"{hour}:00 · {count} 件",noData:"このセッションには表示できる時間帯データがまだありません。",runtimeNote:"端末内で計算 · アップロードなし"},oZ={title:UQ,subtitle:GQ,noSignIn:YQ,localOnly:KQ,noUpload:XQ,localOnlyDetail:JQ,exportGuide:QQ,initializing:ZQ,initializingDetail:eZ,unsupported:tZ,error:nZ,import:{eyebrow:"インポート",title:"チャット記録を追加",description:"ChatLab JSON / JSONL、WhatsApp TXT、LINE TXT、QQ TXT、Telegram JSON に対応しています。インポートごとに独立したセッションを作成します。",drop:"ファイルをドロップ、または端末から選択",dropActive:"放すとこのファイルを選択します",formats:".json · .jsonl · .txt",choose:"ファイルを選択",selected:"選択済み",detecting:"形式を確認中…",detected:"{format} として認識",start:"ローカルインポートを開始",working:"インポート中",cancel:"インポートを停止",processed:"{count} 件のメッセージを処理済み",multiChat:{title:"インポートするチャットを選択",selected:"{total} 件中 {selected} 件を選択",selectAll:"すべて選択",clearAll:"選択解除",messages:"{count} 件のメッセージ",empty:"空のチャット",current:"{current} / {total} 件目:{name}",importSelected:"選択した {count} 件をインポート",successDetail:"{total} 件中 {sessions} 件のセッションを作成し、{messages} 件のメッセージを保存しました。",failed:"{count} 件のインポートに失敗しました",cancelledWithCompleted:"インポートを停止しました。完了済みの {count} 件のセッションは保持されています。"},stages:{detecting:"ファイルを確認",reading:"ファイルを読み込み",parsing:"メッセージを解析",saving:"ローカルDBへ書き込み",indexing:"インデックスを作成",done:"完了"},successTitle:"インポート完了",successDetail:"{messages} 件のメッセージと {members} 人のメンバーを保存しました。",cancelled:"未完了のセッションを残さず、インポートを停止しました。",another:"続けてインポート"},sessions:aZ,analysis:rZ},sZ="ChatLab AI",iZ="チャット履歴から答えを探す",lZ="AI は必要に応じてローカル分析ツールを呼び出し、現在の質問に必要な匿名化済みデータだけをモデル提供元へ送信します。",cZ="このチャットについて質問…",uZ="再生成",dZ="AI は誤ることがあります。重要な結論は確認してください。",fZ="{name} を使用中",pZ="コンテキストを圧縮中",hZ={title:"会話",deleteConfirm:"この AI 会話を削除しますか?"},mZ={title:"Web AI を設定",description:"Web WASM はブラウザからモデル提供元へ直接接続します。ChatLab サーバーは経由しません。",provider:"モデルサービス",openAICompatible:"OpenAI 互換 API",baseURL:"API URL",model:"モデル",apiKey:"API Key",apiKeyPlaceholder:"API Key を入力",apiKeyReplace:"保存済みの Key を置き換えるには再入力",required:"API URL、モデル、API Key を入力してください",keyStorageWarning:"API Key は暗号化してこのブラウザに保存され、更新後も使用されます。ブラウザ内の暗号化では、このページを制御する悪意あるスクリプトからは保護できません。",corsWarning:"ブラウザの CORS アクセスを許可する OpenAI 互換サービスだけを利用できます。接続失敗は提供元がブラウザ直結を禁止している場合もあります。",test:"接続テスト",testSuccess:"接続成功({ms}ms)",saved:"モデル設定を保存しました",remove:"設定を削除",removeConfirm:"モデル設定と保存済みの API Key を削除しますか?",removed:"モデル設定と API Key を削除しました"},gZ={AUTH:"API Key が無効か、権限がありません。",RATE_LIMIT:"リクエスト制限または残高不足です。しばらくしてから再試行してください。",MODEL_NOT_FOUND:"モデルが見つかりません。モデル名を確認してください。",TIMEOUT:"モデルへのリクエストがタイムアウトしました。",NETWORK_OR_CORS:"ネットワークまたはブラウザの CORS ポリシーによりブロックされました。ブラウザ直結に対応しているか確認してください。",FINISH_LENGTH:"回答が長さの上限に達したため、内容が不完全な可能性があります。続けて質問するか、再生成してください。",FINISH_CONTENT_FILTER:"モデル提供元のコンテンツポリシーにより回答が中断されました。内容が不完全な可能性があります。",FINISH_TOOL_CALLS:"このターンのツール呼び出し上限に達したため、回答が未完了の可能性があります。再試行してください。",FINISH_UNKNOWN:"モデルが正常に終了しませんでした。回答が不完全な可能性があるため、再試行してください。"},vZ={title:sZ,emptyTitle:iZ,emptyDescription:lZ,inputPlaceholder:cZ,regenerate:uZ,footer:dZ,usingTool:fZ,compressingContext:pZ,conversations:hZ,config:mZ,errors:gZ},yZ={common:xK,layout:GK,settings:cX,home:bX,analysis:EX,tools:RX,providers:UX,ai:ZX,quotes:sJ,members:dJ,records:kJ,views:DJ,wordFilter:eQ,contacts:_Q,relationships:HQ,insight:WQ,browser:oZ,webAI:vZ},bZ=[{code:"en-US",name:"English (US)",nativeName:"English"},{code:"zh-CN",name:"Chinese (Simplified)",nativeName:"简体中文"},{code:"zh-TW",name:"Chinese (Traditional)",nativeName:"繁體中文"},{code:"ja-JP",name:"Japanese",nativeName:"日本語"}];new Set(bZ.map(e=>e.code));function wZ(e=_Z()){for(const t of e){const n=kZ(t);if(n)return n}return"en-US"}function _Z(){return typeof navigator>"u"?[]:navigator.languages.length>0?navigator.languages:[navigator.language]}function kZ(e){const t=e.trim().replaceAll("_","-").toLowerCase();return t?t==="zh-tw"||t.startsWith("zh-hant")||t.startsWith("zh-hk")||t.startsWith("zh-mo")||t.startsWith("zh-cht")?"zh-TW":t.startsWith("zh")?"zh-CN":t.startsWith("ja")?"ja-JP":t.startsWith("en")?"en-US":null:null}const CZ={"zh-CN":"zh-cn","zh-TW":"zh-tw","en-US":"en","ja-JP":"ja"};function Pv(e){return CZ[e]??"en"}const SZ={groupRanking:["zh-CN","zh-TW"]};function Tae(e,t){const n=SZ[e];return!n||n.length===0?!0:n.includes(t)}function xZ(){return wZ()}function e5(e){typeof document<"u"&&(document.documentElement.lang=e)}const t5=xZ();e5(t5);const qi=rR({legacy:!1,locale:t5,fallbackLocale:"en-US",messages:{"zh-CN":Vq,"en-US":gj,"zh-TW":jY,"ja-JP":yZ}});function Mv(e){qi.global.locale.value=e,e5(e)}function mc(){return qi.global.locale.value}const Ia=!1,Iae=!1;let la="/_web",n5="",Sf,mi;function a5(e){e.baseUrl!==void 0&&(la=e.baseUrl),e.token!==void 0&&(n5=e.token),e.getToken!==void 0&&(Sf=e.getToken??void 0),e.on401!==void 0&&(mi=e.on401??void 0)}function r5(){return Sf?Sf():n5}function ys(){const e=r5();return e?{Authorization:`Bearer ${e}`}:{}}function AZ(){return la}function PZ(e){if(!la.startsWith("http://")&&!la.startsWith("https://")||e.startsWith("http://")||e.startsWith("https://"))return e;try{return`${new URL(la).origin}${e}`}catch{return e}}async function pr(e,t){const n=new Headers(t?.headers),a=r5();a&&!n.has("Authorization")&&n.set("Authorization",`Bearer ${a}`);const r=PZ(e),o=await fetch(r,{...t,headers:n});return o.status===401&&mi&&mi(),o}function Bi(e){e.status===401&&mi&&mi()}async function o5(e,t){const n=await fetch(`${la}${e}`,{headers:ys(),signal:t});if(Bi(n),!n.ok){const a=await n.text().catch(()=>"");throw new Error(`HTTP ${n.status}: ${a}`)}return n.json()}async function Yp(e,t,n){const a=t!==void 0,r=await fetch(`${la}${e}`,{method:"POST",headers:{...ys(),...a&&{"Content-Type":"application/json"}},...a&&{body:JSON.stringify(t)},signal:n});if(Bi(r),!r.ok){const o=await r.text().catch(()=>"");throw new Error(`HTTP ${r.status}: ${o}`)}return r.json()}let Us=new AbortController;function MZ(){Us.abort(),Us=new AbortController}function TZ(e){return e instanceof Error&&e.name==="AbortError"}function Tv(){return new Promise(()=>{})}function Kp(e){const t=Us;return e(t.signal).then(n=>t===Us?n:Tv()).catch(n=>{if(t!==Us||TZ(n))return Tv();throw n})}function IZ(e){return Kp(t=>o5(e,t))}function DZ(e,t){return Kp(n=>Yp(e,t,n))}async function EZ(e){const t=await fetch(`${la}${e}`,{method:"DELETE",headers:ys()});if(Bi(t),!t.ok){const n=await t.text().catch(()=>"");throw new Error(`HTTP ${t.status}: ${n}`)}return t.json()}async function $Z(e,t){const n=t!==void 0,a=await fetch(`${la}${e}`,{method:"PUT",headers:{...ys(),...n&&{"Content-Type":"application/json"}},...n&&{body:JSON.stringify(t)}});if(Bi(a),!a.ok){const r=await a.text().catch(()=>"");throw new Error(`HTTP ${a.status}: ${r}`)}return a.json()}async function RZ(e,t){const n=t!==void 0,a=await fetch(`${la}${e}`,{method:"PATCH",headers:{...ys(),...n&&{"Content-Type":"application/json"}},...n&&{body:JSON.stringify(t)}});if(Bi(a),!a.ok){const r=await a.text().catch(()=>"");throw new Error(`HTTP ${a.status}: ${r}`)}return a.json()}const Dae=Object.freeze(Object.defineProperty({__proto__:null,abortAnalyticsRequests:MZ,analyticsGet:IZ,analyticsPost:DZ,configureHttpClient:a5,del:EZ,fetchWithAuth:pr,get:o5,getAuthHeaders:ys,getBaseUrl:AZ,patch:RZ,post:Yp,put:$Z,withAnalyticsRequestEpoch:Kp},Symbol.toStringTag,{value:"Module"})),s5=new Map;let Iv=!1;function Cn(e,t){s5.set(e,t)}function lo(e){const t=s5.get(e);if(!t)throw new Error(`[services] Adapter "${e}" not registered. Call initServices() first.`);return t}async function Dv(e={}){Iv||(await LZ(),Iv=!0)}async function LZ(){const[{FetchDataAdapter:e},{CliWebPlatformAdapter:t},{FetchImportAdapter:n},{TelemetryImportAdapter:a},{FetchSessionIndexAdapter:r},{FetchMessageAdapter:o},{FetchChatTopicsAdapter:s},{FetchAIAdapter:i},{FetchPreferencesAdapter:l},{FetchLLMAdapter:c},{FetchAssistantAdapter:u},{FetchSkillAdapter:d},{FetchCacheAdapter:h},{FetchNavigationLayoutAdapter:p}]=await Promise.all([Ke(()=>import("./fetch-CFpLXWTe.js"),__vite__mapDeps([0,1])),Ke(()=>import("./cli-web-C-8N0CJh.js"),__vite__mapDeps([2,1])),Ke(()=>import("./fetch-Du-wU0OO.js"),__vite__mapDeps([3,1])),Ke(()=>import("./telemetry-DPC69b73.js"),[]),Ke(()=>import("./fetch-6pcVxB9h.js"),__vite__mapDeps([4,1])),Ke(()=>import("./fetch-CkXgOxcu.js"),__vite__mapDeps([5,1])),Ke(()=>import("./fetch-qd2FgBWQ.js"),__vite__mapDeps([6,1])),Ke(()=>import("./fetch-z9M9FcIC.js"),__vite__mapDeps([7,1])),Ke(()=>import("./fetch-DZ6OF-xW.js"),__vite__mapDeps([8,1])),Ke(()=>import("./fetch-CgA1peJD.js"),__vite__mapDeps([9,1])),Ke(()=>import("./fetch-B69OkB6B.js"),__vite__mapDeps([10,1])),Ke(()=>import("./fetch-DPSWt6yX.js"),__vite__mapDeps([11,1])),Ke(()=>import("./fetch-BGmCCyzz.js"),__vite__mapDeps([12,1])),Ke(()=>import("./fetch-Gu4qQjUB.js"),__vite__mapDeps([13,1]))]);Cn("data",new e);const m=new t;Cn("platform",m),Cn("import",new a(new n,m)),Cn("session-index",new r),Cn("message",new o),Cn("chat-topics",new s),Cn("ai",new i),Cn("preferences",new l),Cn("llm",new c),Cn("assistant-crud",new u),Cn("skill-crud",new d),Cn("cache",new h),Cn("navigation-layout",new p),await OZ()}async function OZ(){NZ()}function NZ(e){const t=new Map,n=o=>/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i.test(o),a=o=>t.get(o)??o;async function r(o,s){if(!o.ok){const i=await o.text().catch(()=>"");throw new Error(`[mergeApi] ${s} failed (${o.status}): ${i}`)}}window.mergeApi={exportSessionsToTempFiles:async o=>{try{const s=await pr("/_web/sessions/export-for-merge",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({sessionIds:o})});await r(s,"exportSessionsToTempFiles");const i=await s.json();return i.success?{success:!0,tempFiles:i.handles.map(c=>c.handle)}:{success:!1,tempFiles:[],error:i.error}}catch(s){return{success:!1,tempFiles:[],error:s instanceof Error?s.message:String(s)}}},cleanupTempExportFiles:async o=>{try{for(const s of o){const i=a(s);await pr("/_web/merge/clear",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({handle:i})}),t.delete(s)}return{success:!0}}catch(s){return{success:!1,error:s instanceof Error?s.message:String(s)}}},parseFileInfo:async o=>n(o)||t.has(o)?{name:"",format:"",platform:"",messageCount:0,memberCount:0,fileSize:0}:{name:"",format:"",platform:"",messageCount:0,memberCount:0,fileSize:0},checkConflicts:async o=>{const s=o.map(a),i=await pr("/_web/merge/conflicts",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({handles:s})});return await r(i,"checkConflicts"),await i.json()},mergeFiles:async o=>{try{const s=o.filePaths.map(a),i=await pr("/_web/merge/execute",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({handles:s,outputName:o.outputName,format:o.outputFormat||"json",andImport:o.andAnalyze??!1,sessionGapThreshold:o.sessionGapThreshold})});await r(i,"mergeFiles");const l=await i.json();for(const c of o.filePaths)t.delete(c);return l}catch(s){return{success:!1,error:s instanceof Error?s.message:String(s)}}},clearCache:async o=>{try{const s=o?a(o):void 0;return await pr("/_web/merge/clear",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({handle:s})}),o?t.delete(o):t.clear(),!0}catch{return!1}}}}function Nr(){return lo("data")}function hl(){return lo("import")}function Ev(){return lo("session-index")}function ao(){return lo("platform")}function FZ(){return lo("ai")}function i5(){return lo("preferences")}function cd(){return lo("llm")}function qZ(e){return{platform:"cli-web",requiresAuth:!0,usesCliWebHttp:!0,usesBrowserRuntime:!1,loadsPreferences:!0,initializesLlm:!0,listensForPullResults:!0}}const hr=qZ(),BZ="default",$v=[{id:"default",startColor:"#60a5fa",endColor:"#f472b6"},{id:"sunset",startColor:"#fb923c",endColor:"#fb7185"},{id:"galaxy",startColor:"#818cf8",endColor:"#c084fc"},{id:"mist",startColor:"#22d3ee",endColor:"#60a5fa"},{id:"moonlight",startColor:"#22c55e",endColor:"#14b8a6"},{id:"berry",startColor:"#fb7185",endColor:"#a78bfa"},{id:"sunshine",startColor:"#f59e0b",endColor:"#facc15"},{id:"aurora",startColor:"#34d399",endColor:"#818cf8"}];function Eae(e){return $v.find(t=>t.id===e)??$v[0]}const l5=2;function HZ(e){return{...e,desensitizeRulesSchemaVersion:l5,desensitizeBuiltinRuleOverrides:{...e.desensitizeBuiltinRuleOverrides??{}},mergeWindowSeconds:e.mergeWindowSeconds??180,desensitizeRules:e.desensitizeRules.filter(t=>!t.builtin).map(t=>({...t,locales:[...t.locales]}))}}const Hi=as("settings",()=>{const e=V(mc()),t=V("insights"),n=V(BZ),a=V(!1);function r(c){a.value=c,window.electron?.ipcRenderer.send("app:setDebugMode",c)}const o=V({dataCleaning:!0,mergeConsecutive:!0,mergeWindowSeconds:180,blacklistKeywords:[],denoise:!0,desensitize:!0,desensitizeRulesSchemaVersion:l5,desensitizeBuiltinRuleOverrides:{},desensitizeRules:[],anonymizeNames:!1});async function s(){const c=JSON.parse(JSON.stringify(o.value.desensitizeRules));o.value.desensitizeRules=await FZ().mergeDesensitizeRules(c,e.value,o.value.desensitizeBuiltinRuleOverrides??{})}async function i(c){e.value=c,Mv(c),kv.locale(Pv(c)),window.electron?.ipcRenderer.send("locale:change",c),hr.initializesLlm&&await s();try{ao().trackDailyActive(c).catch(()=>{})}catch{}}async function l(){const c=mc();e.value!==c&&Mv(e.value),kv.locale(Pv(e.value)),window.electron?.ipcRenderer.send("app:setDebugMode",a.value)}return{locale:e,setLocale:i,initLocale:l,defaultSessionTab:t,insightCardTheme:n,debugMode:a,setDebugMode:r,aiPreprocessConfig:o,ensureDesensitizeRules:s}},{persist:{pick:["debugMode","insightCardTheme"],storage:localStorage},backendPersist:{pick:["aiPreprocessConfig"],serialize:e=>({aiPreprocessConfig:HZ(e.aiPreprocessConfig)})}}),hu=as("layout",()=>{const e=Hi(),t=V(!1),n=V(!1),a=V(null),r=V(!1),o=V(null),s=V(!1),i=V(!1),l=V("header"),c=S(()=>e.debugMode?l.value:"header"),u=V(!1),d=V(!1),h=V("settings"),p=V(null);function m(){t.value=!t.value}function v(T){a.value=T,n.value=!0}function y(){n.value=!1,setTimeout(()=>{a.value=null},300)}function g(T){o.value=T,r.value=!0}function b(){r.value=!1,setTimeout(()=>{o.value=null},300)}function w(){s.value=!s.value}function _(){u.value=!u.value}function A(T,I){h.value=T||"settings",p.value=I||null,d.value=!0}function P(){d.value=!1}function k(){i.value=!i.value,i.value&&(s.value=!1)}return{isSidebarCollapsed:t,isToolsPanelLocked:s,isToolsPanelMini:i,toolsPanelPosition:l,effectiveToolsPanelPosition:c,isToolsPanelOpen:u,showScreenCaptureModal:n,screenCaptureImage:a,showChatRecordDrawer:r,chatRecordQuery:o,showSettings:d,settingsTab:h,settingsSubTab:p,toggleSidebar:m,toggleToolsPanelLock:w,toggleToolsPanelOpen:_,toggleToolsPanelMini:k,openScreenCaptureModal:v,closeScreenCaptureModal:y,openChatRecordDrawer:g,closeChatRecordDrawer:b,openSettings:A,closeSettings:P}},{persist:[{pick:["isSidebarCollapsed","isToolsPanelLocked","isToolsPanelMini","toolsPanelPosition"],storage:localStorage}]}),VZ={key:0,class:"absolute -left-2 top-1/2 h-4.5 w-[3px] -translate-y-1/2 rounded-r-full bg-primary-500"},zZ={key:0,class:"absolute -left-2 top-1/2 h-4.5 w-[3px] -translate-y-1/2 rounded-r-full bg-primary-500"},jZ={class:"truncate text-xs font-medium"},ql=Z({__name:"SidebarButton",props:{icon:{},title:{},active:{type:Boolean,default:!1},tooltip:{type:[String,Boolean],default:""},iconClass:{default:""}},setup(e){const t=hu(),{isSidebarCollapsed:n}=ai(t);return(a,r)=>{const o=cn,s=Gp,i=gr;return f(n)?(C(),R(s,{key:0,text:e.tooltip===!1?"":e.tooltip||e.title,disabled:e.tooltip===!1,content:{side:"right"}},{default:E(()=>[ke("div",{class:Ae(["relative mx-auto flex h-10 w-10 cursor-pointer items-center justify-center rounded-lg transition-all duration-200",[e.active?"text-primary-600 dark:text-primary-400":"text-gray-600 dark:text-gray-300 hover:bg-gray-200/20 dark:hover:bg-white/[0.04]"]])},[e.active?(C(),ye("span",VZ)):ve("",!0),ie(o,{name:e.icon,class:Ae(["h-5 w-5 shrink-0",e.iconClass])},null,8,["name","class"])],2)]),_:1},8,["text","disabled"])):(C(),R(i,{key:1,class:Ae(["relative h-10 w-full cursor-pointer justify-start rounded-xl pl-2.5 transition-all duration-200 hover:bg-gray-200/20 active:bg-gray-200/20 dark:hover:bg-white/[0.04] dark:active:bg-white/[0.04]",[e.active?"text-primary-600 font-medium dark:text-primary-400":"text-gray-600 hover:text-gray-900 dark:text-gray-300 dark:hover:text-white"]]),color:"neutral",variant:"ghost"},{default:E(()=>[e.active?(C(),ye("span",zZ)):ve("",!0),ie(o,{name:e.icon,class:Ae(["mr-2.5 h-5 w-5 shrink-0",e.iconClass])},null,8,["name","class"]),ke("span",jZ,Me(e.title),1)]),_:1},8,["class"]))}}}),WZ={class:"mb-2 space-y-2 px-2 py-2 dark:border-gray-800"},UZ=Z({__name:"SidebarFooter",setup(e){const{t}=io(),n=hu(),{showSettings:a}=ai(n);return(r,o)=>(C(),ye("div",WZ,[ie(ql,{icon:"i-heroicons-cog-6-tooth",title:f(t)("layout.footer.settings"),active:f(a),tooltip:!1,onClick:o[0]||(o[0]=s=>f(n).openSettings())},null,8,["title","active"])]))}}),GZ={slots:{content:"bg-default shadow-lg rounded-md ring ring-default data-[state=open]:animate-[scale-in_100ms_ease-out] data-[state=closed]:animate-[scale-out_100ms_ease-in] origin-(--reka-popover-content-transform-origin) focus:outline-none pointer-events-auto",arrow:"fill-bg stroke-default"}},YZ={__name:"Popover",props:{mode:{type:null,required:!1,default:"click"},content:{type:Object,required:!1},arrow:{type:[Boolean,Object],required:!1},portal:{type:[Boolean,String],required:!1,skipCheck:!0,default:!0},reference:{type:null,required:!1},dismissible:{type:Boolean,required:!1,default:!0},class:{type:null,required:!1},ui:{type:null,required:!1},defaultOpen:{type:Boolean,required:!1},open:{type:Boolean,required:!1},modal:{type:Boolean,required:!1},openDelay:{type:Number,required:!1,default:0},closeDelay:{type:Number,required:!1,default:0}},emits:["close:prevent","update:open"],setup(e,{emit:t}){const n=e,a=t,r=fa(),o=Fn("popover",n),s=zt(),i=o.mode==="hover"?ca(o,"defaultOpen","open","openDelay","closeDelay"):ca(o,"defaultOpen","open","modal"),l=Cr(i,a),c=Fi(It(()=>o.portal)),u=It(()=>Un(o.content,{side:"bottom",sideOffset:8,collisionPadding:8})),d=S(()=>o.dismissible?{pointerDownOutside:G2}:["interactOutside","escapeKeyDown"].reduce((y,g)=>(y[g]=b=>{b.preventDefault(),a("close:prevent")},y),{})),h=It(()=>Un(o.arrow,{rounded:!0})),p=S(()=>vt({extend:vt(GZ),...s.ui?.popover||{}})({side:u.value.side})),m=S(()=>o.mode==="hover"?CR:SR);return(v,y)=>(C(),R(f(m).Root,$e(Oe(f(l))),{default:E(({open:g,close:b})=>[r.default?(C(),R(f(m).Trigger,{key:0,"as-child":"",class:Ae(f(o).class)},{default:E(()=>[j(v.$slots,"default",{open:g})]),_:2},1032,["class"])):ve("",!0),"Anchor"in m.value&&r.anchor?(C(),R(f(m).Anchor,{key:1,"as-child":""},{default:E(()=>[j(v.$slots,"anchor",$e(Oe(b?{close:b}:{})))]),_:2},1024)):ve("",!0),ie(f(m).Portal,$e(Oe(f(c))),{default:E(()=>[ie(f(iu),null,{default:E(()=>[ie(f(m).Content,de(u.value,{reference:f(o).reference??f(o).content?.reference,"data-slot":"content",class:p.value.content({class:[!r.default&&f(o).class,f(o).ui?.content]})},Wf(d.value)),{default:E(()=>[j(v.$slots,"content",$e(Oe(b?{close:b}:{}))),f(o).arrow?(C(),R(f(m).Arrow,de({key:0},h.value,{"data-slot":"arrow",class:p.value.arrow({class:f(o).ui?.arrow})}),null,16,["class"])):ve("",!0)]),_:2},1040,["reference","class"])]),_:2},1024)]),_:2},1040)]),_:3},16))}},Zo=V({default_session_tab:"insights",session_gap_threshold:1800,summary_strategy:"standard"});function xf(){return Zo.value}function c5(e){Zo.value=e}function KZ(e){Zo.value={...Zo.value,...e}}function Co(){return Zo.value.session_gap_threshold}function $ae(){return Zo.value.summary_strategy??"standard"}const Wr=as("session",()=>{const e=V([]),t=V(null),n=V(!1),a=V(null),r=V(!1),o=V("idle"),s=V(null);let i=null,l=!1;const c=V(!1),u=V([]),d=V(!1),h=V(null),p=V(!1),m=V([]),v=V("parsing"),y=V(null),g=V(null),b=S(()=>t.value&&e.value.find(W=>W.id===t.value)||null),w=V(!1),_=V(0),A=V([]),P=V(!1);async function k(){return{needsMigration:!1,count:0,currentVersion:0,pendingMigrations:[]}}async function T(){P.value=!0;try{const W=await window.chatApi.runMigration();return W.success&&(w.value=!1,_.value=0),W}catch(W){return console.error("执行迁移失败:",W),{success:!1,error:String(W)}}finally{P.value=!1}}async function I(){o.value="loading",s.value=null;try{const W=await Nr().getSessions();e.value=W,t.value&&!W.find(U=>U.id===t.value)&&(t.value=null),r.value=!0,o.value="ready"}catch(W){throw o.value="error",s.value=W instanceof Error?W.message:String(W),W}}async function Y(){let W=null,U=!1;do{l=!1;try{await I(),W=null,U=!1}catch(ne){W=ne,U=!0}}while(l);if(i=null,U)throw W}async function Q(W={}){i?l=!0:i=Y();try{await i}catch(U){if(console.error("加载会话列表失败:",U),W.throwOnError)throw r.value=!1,U;r.value=!0}}async function z(){try{const W=await ao().showOpenDialog({properties:["openFile"],filters:[{name:"Chat Files",extensions:["json","jsonl","txt"]},{name:"All Files",extensions:["*"]}]});return W.canceled||W.filePaths.length===0?{success:!1,error:"error.no_file_selected"}:await te(W.filePaths[0])}catch(W){return{success:!1,error:String(W)}}}async function te(W){try{n.value=!0,a.value={stage:"detecting",progress:0,message:""};const U=[];let ne=!1,x="reading",M=Date.now();const N=1e3,H=async()=>{if(!ne){for(ne=!0;U.length>0;){const F=U[0];if(F.stage!==x){const re=Date.now()-M;re<N&&await new Promise(he=>setTimeout(he,N-re)),x=F.stage,M=Date.now()}a.value=U.shift()}ne=!1}},oe=await hl().importFile(W,{sessionGapThreshold:Co()},F=>{F.stage!=="done"&&(U.push(F),H())});for(;U.length>0||ne;)await new Promise(F=>setTimeout(F,100));const ae=Date.now()-M;return ae<N&&await new Promise(F=>setTimeout(F,N-ae)),a.value&&(a.value.progress=100),await new Promise(F=>setTimeout(F,300)),oe.success&&oe.sessionId?(await Q(),t.value=oe.sessionId,await X(oe.sessionId),{success:!0,diagnostics:oe.diagnostics,importMode:oe.importMode,matchedBy:oe.matchedBy,createReason:oe.createReason,newMessageCount:oe.newMessageCount,duplicateCount:oe.duplicateCount}):{success:!1,error:oe.error||"error.import_failed",diagnostics:oe.diagnostics}}catch(U){return{success:!1,error:String(U)}}finally{n.value=!1,setTimeout(()=>{a.value=null},500)}}async function O(W){if(W.length===0)return{total:0,success:0,failed:0,cancelled:0,files:[]};const U=W.map(ae=>typeof ae=="string"?{source:ae,path:ae,name:ae.split("/").pop()||ae.split("\\").pop()||ae}:{source:ae,path:ae.webkitRelativePath||ae.name,name:ae.name});c.value=!0,d.value=!1,h.value=null,u.value=U.map(({path:ae,name:F})=>({path:ae,name:F,status:"pending"}));const ne=hl();if(ne.importBatch){const ae=await ne.importBatch(U.map(({source:he},xe)=>({id:String(xe),file:he})),{sessionGapThreshold:Co()},({index:he,event:xe,progress:Re,result:je})=>{const We=u.value[he];We&&(xe==="start"&&(We.status="importing"),Re&&(We.progress=Re),xe==="complete"&&je&&(We.status=je.status,je.status==="success"?(We.sessionId=je.result.sessionId,We.importMode=je.result.importMode,We.matchedBy=je.result.matchedBy,We.createReason=je.result.createReason,We.newMessageCount=je.result.newMessageCount,We.duplicateCount=je.result.duplicateCount):je.status==="failed"&&(We.error=je.error)))});for(let he=0;he<ae.length;he++){const xe=ae[he],Re=u.value[he];Re.status=xe.status,xe.status==="success"?(Re.sessionId=xe.result.sessionId,Re.importMode=xe.result.importMode,Re.matchedBy=xe.result.matchedBy,Re.createReason=xe.result.createReason,Re.newMessageCount=xe.result.newMessageCount,Re.duplicateCount=xe.result.duplicateCount):xe.status==="failed"&&(Re.error=xe.error)}const F=ae.flatMap(he=>he.status==="success"&&he.result.sessionId?[he.result.sessionId]:[]);for(const he of F)await X(he);await Q();const re={total:W.length,success:ae.filter(he=>he.status==="success").length,failed:ae.filter(he=>he.status==="failed").length,cancelled:ae.filter(he=>he.status==="cancelled").length,files:[...u.value]};return h.value=re,c.value=!1,re}let x=0,M=0,N=0;const H=ae=>{for(let F=ae;F<u.value.length;F++)u.value[F].status==="pending"&&(u.value[F].status="cancelled",N++)};for(let ae=0;ae<u.value.length;ae++){if(d.value){H(ae);break}const F=u.value[ae];F.status="importing",F.progress={stage:"detecting",progress:0,message:""};try{const re=[];let he=!1,xe="reading",Re=Date.now();const je=300,We=async()=>{if(!he){for(he=!0;re.length>0;){if(d.value){re.length=0;break}const jt=re[0];if(jt.stage!==xe){const Je=Date.now()-Re;Je<je&&await new Promise(Qe=>setTimeout(Qe,je-Je)),xe=jt.stage,Re=Date.now()}F.progress=re.shift()}he=!1}},Ge=await hl().importFile(U[ae].source,{sessionGapThreshold:Co()},jt=>{jt.stage!=="done"&&(re.push(jt),We())});let Lt=0;for(;(re.length>0||he)&&!d.value&&Lt<100;)await new Promise(jt=>setTimeout(jt,30)),Lt++;if(d.value){Ge.success&&Ge.sessionId?(F.status="success",F.sessionId=Ge.sessionId,F.importMode=Ge.importMode,F.matchedBy=Ge.matchedBy,F.createReason=Ge.createReason,F.newMessageCount=Ge.newMessageCount,F.duplicateCount=Ge.duplicateCount,x++,await X(Ge.sessionId)):(F.status="failed",F.error=Ge.error||"error.import_failed",M++),H(ae+1);break}Ge.success&&Ge.sessionId?(F.status="success",F.sessionId=Ge.sessionId,F.importMode=Ge.importMode,F.matchedBy=Ge.matchedBy,F.createReason=Ge.createReason,F.newMessageCount=Ge.newMessageCount,F.duplicateCount=Ge.duplicateCount,x++,await X(Ge.sessionId)):(F.status="failed",F.error=Ge.error||"error.import_failed",M++)}catch(re){F.status="failed",F.error=String(re),M++}}await Q();const oe={total:W.length,success:x,failed:M,cancelled:N,files:[...u.value]};return h.value=oe,c.value=!1,oe}function D(){d.value=!0,hl().cancelActiveImport?.()}function q(){h.value=null,u.value=[]}async function G(W){if(W.length<2)return{success:!1,error:"合并导入至少需要2个文件"};const U=800;p.value=!0,y.value=null,g.value=null,v.value="parsing",m.value=W.map(x=>({path:x,name:x.split("/").pop()||x.split("\\").pop()||x,status:"pending"}));let ne=Date.now();try{for(let F=0;F<m.value.length;F++){const re=m.value[F],he=Date.now();re.status="parsing";try{const xe=await window.mergeApi.parseFileInfo(re.path);re.info=xe;const Re=Date.now()-he,je=Math.max(300,U/W.length);Re<je&&await new Promise(We=>setTimeout(We,je-Re)),re.status="done"}catch(xe){throw new Error(`解析文件失败: ${re.name} - ${xe instanceof Error?xe.message:String(xe)}`)}}const x=Date.now()-ne;x<U&&await new Promise(F=>setTimeout(F,U-x)),ne=Date.now(),v.value="merging";const M=m.value.map(F=>F.info?.name).filter(Boolean),N=[...new Set(M)],H=N.length===1?N[0]:M[0]||"合并记录",oe=await window.mergeApi.mergeFiles({filePaths:W,outputName:H,conflictResolutions:[],andAnalyze:!0,sessionGapThreshold:Co()});if(!oe.success)throw new Error(oe.error||"合并失败");await window.mergeApi.clearCache();const ae=Date.now()-ne;return ae<U&&await new Promise(F=>setTimeout(F,U-ae)),v.value="done",g.value={success:!0,sessionId:oe.sessionId},await Q(),{success:!0,sessionId:oe.sessionId}}catch(x){v.value="error";const M=x instanceof Error?x.message:String(x);return y.value=M,g.value={success:!1,error:M},await window.mergeApi.clearCache(),{success:!1,error:M}}}function L(){p.value=!1,m.value=[],g.value=null,y.value=null}function ee(W){t.value=W}async function K(W){try{const U=await Nr().deleteSession(W);if(U){const ne=e.value.findIndex(x=>x.id===W);ne!==-1&&e.value.splice(ne,1),t.value===W&&(t.value=null),await Q()}return U}catch(U){return console.error("删除会话失败:",U),!1}}async function ce(W,U){try{const ne=await Nr().renameSession(W,U);if(ne){const x=e.value.find(M=>M.id===W);x&&(x.name=U)}return ne}catch(ne){return console.error("重命名会话失败:",ne),!1}}function ue(){t.value=null}async function be(W,U){try{const ne=await Nr().updateSessionOwnerId(W,U);if(ne){const x=e.value.find(M=>M.id===W);x&&(x.ownerId=U,x.ownerName=null,x.ownerStatus=U?"unresolved":"missing",U&&(x.ownerExcluded=!1))}return ne}catch(ne){return console.error("更新会话所有者失败:",ne),!1}}async function ge(W,U){const ne=await Nr().setOwnerAndApplyProfile(W,U);for(const x of[W,...ne.updatedSessionIds]){const M=e.value.find(N=>N.id===x);M&&(M.ownerId=ne.updatedSessionOwnerIds[x]??ne.ownerId,M.ownerName=M.ownerId,M.ownerStatus="resolved",M.ownerExcluded=!1)}return ne}async function we(W){const U=await Nr().tryApplyOwnerProfile(W);if(U.applied&&U.ownerId){const ne=e.value.find(x=>x.id===W);ne&&(ne.ownerId=U.ownerId,ne.ownerName=U.ownerId,ne.ownerStatus="resolved",ne.ownerExcluded=!1)}return U}async function me(W){const U=await Nr().excludeOwnerSession(W);if(U){const ne=e.value.find(x=>x.id===W);ne&&(ne.ownerExcluded=!0)}return U}async function X(W){try{await we(W)}catch(U){console.warn("导入后应用 owner profile 失败:",U)}}const le=V([]),se=V("all"),pe=V("importedAt"),Pe=V("desc"),$=S(()=>{let W=e.value;se.value!=="all"&&(W=W.filter(x=>x.type===se.value));const U=new Map(le.value.map((x,M)=>[x,M])),ne=Pe.value==="desc"?-1:1;return[...W].sort((x,M)=>{const N=U.get(x.id),H=U.get(M.id),oe=N!==void 0,ae=H!==void 0;if(oe&&ae)return H-N;if(oe&&!ae)return-1;if(!oe&&ae)return 1;const F=pe.value,re=x[F]??0,he=M[F]??0;return re!==he?(re-he)*ne:0})});function B(W){const U=le.value.indexOf(W);U!==-1?le.value.splice(U,1):le.value.push(W)}function J(W){return le.value.includes(W)}return{sessions:e,sortedSessions:$,pinnedSessionIds:le,filterType:se,sortField:pe,sortOrder:Pe,currentSessionId:t,isImporting:n,importProgress:a,isInitialized:r,loadState:o,loadError:s,currentSession:b,migrationNeeded:w,migrationCount:_,pendingMigrations:A,isMigrating:P,checkMigration:k,runMigration:T,loadSessions:Q,importFile:z,importFileFromPath:te,selectSession:ee,deleteSession:K,renameSession:ce,clearSelection:ue,updateSessionOwnerId:be,setOwnerAndApplyProfile:ge,tryApplyOwnerProfile:we,excludeOwnerSession:me,togglePinSession:B,isPinned:J,isBatchImporting:c,batchFiles:u,batchImportCancelled:d,batchImportResult:h,importFiles:O,cancelBatchImport:D,clearBatchImportResult:q,isMergeImporting:p,mergeFiles:m,mergeStage:v,mergeError:y,mergeResult:g,mergeImportFiles:G,clearMergeImportResult:L}},{persist:[{pick:["currentSessionId"],storage:sessionStorage},{pick:["filterType","sortField","sortOrder"],storage:localStorage}],backendPersist:{pick:["pinnedSessionIds"]}}),XZ={class:"w-48 p-1.5 flex flex-col space-y-0.5"},JZ={class:"px-2 pb-2 pt-1 text-xs font-semibold text-gray-500 dark:text-gray-400"},QZ=["onClick"],ZZ=Z({__name:"SidebarSortPopover",setup(e){const{t}=io(),n=Wr(),{sortField:a,sortOrder:r}=ai(n),o=V(!1),s=[{value:"importedAt",labelKey:"layout.sort.importedAt"},{value:"lastMessageTs",labelKey:"layout.sort.lastMessageTs"},{value:"messageCount",labelKey:"layout.sort.messageCount"}];function i(l){a.value===l?r.value=r.value==="desc"?"asc":"desc":(a.value=l,r.value="desc"),o.value=!1}return(l,c)=>{const u=gr,d=Gp,h=cn,p=YZ;return C(),R(p,{open:o.value,"onUpdate:open":c[0]||(c[0]=m=>o.value=m),ui:{content:"z-50 p-0"}},{content:E(()=>[ke("div",XZ,[ke("div",JZ,Me(f(t)("layout.tooltip.sort")),1),(C(),ye(ze,null,en(s,m=>ke("button",{key:m.value,class:Ae(["flex w-full items-center justify-between rounded-md px-2.5 py-2 text-sm transition-colors",f(a)===m.value?"bg-gray-100 text-gray-900 dark:bg-white/10 dark:text-white font-medium":"text-gray-600 hover:bg-gray-50 dark:text-gray-300 dark:hover:bg-white/5"]),onClick:v=>i(m.value)},[ke("span",null,Me(f(t)(m.labelKey)),1),f(a)===m.value?(C(),R(h,{key:0,name:f(r)==="desc"?"i-heroicons-bars-arrow-down":"i-heroicons-bars-arrow-up",class:"h-4 w-4 opacity-70"},null,8,["name"])):ve("",!0)],10,QZ)),64))])]),default:E(()=>[ie(d,{text:f(t)("layout.tooltip.sort"),content:{side:"bottom"}},{default:E(()=>[ie(u,{icon:f(r)==="desc"?"i-heroicons-bars-arrow-down":"i-heroicons-bars-arrow-up",color:"neutral",variant:"ghost",size:"xs"},null,8,["icon"])]),_:1},8,["text"])]),_:1},8,["open"])}}});function eee(e){return e.sessionCount===0?e.loadState==="idle"||e.loadState==="loading"?"loading":e.loadState==="error"?"error":"empty":e.filteredSessionCount===0&&e.hasSearchQuery?"search-empty":"list"}function tee(e){const t=e.latestVersion||"";return{latestVersion:t,currentVersion:e.currentVersion,hasUpdate:typeof e.serverHasUpdate=="boolean"?e.serverHasUpdate:!!(t&&eL(t,e.currentVersion))}}function nee(e,t=Date.now()){return e?{lastCheckTime:t,latestVersion:e.latestVersion,hasUpdate:e.hasUpdate,currentVersion:e.currentVersion}:null}const aee={primary:"primary",neutral:"neutral",success:"success",warning:"warning",danger:"error",info:"info"};function ree(e){return aee[e]}const oee=new Set(["class","style","id","title","tabindex"]);function see(e,t=[]){const n=new Set(t);return Object.fromEntries(Object.entries(e).filter(([a])=>!n.has(a)&&(oee.has(a)||a.startsWith("aria-")||a.startsWith("data-"))))}function u5(e=[]){const t=jw();return S(()=>see(t,e))}function Rv(e){return typeof e=="string"&&e.trim().length>0}function iee({label:e,accessibleLabel:t,hasDefaultSlot:n}){if(!(Rv(e)||Rv(t)||n))throw new Error("UiButton requires visible text or an accessible label. Use UiIconButton for icon-only actions.")}const lee=Z({inheritAttrs:!1,__name:"UiButton",props:{tone:{default:"primary"},variant:{default:"solid"},size:{default:"md"},type:{default:"button"},label:{default:void 0},accessibleLabel:{default:void 0},icon:{default:void 0},trailingIcon:{default:void 0},loading:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},block:{type:Boolean,default:!1}},emits:["click","focus","blur","keydown","keyup"],setup(e,{emit:t}){const n=e,a=t,r=fa(),o=u5(["aria-label","aria-busy"]),s=S(()=>ree(n.tone)),i=S(()=>(iee({label:n.label,accessibleLabel:n.accessibleLabel,hasDefaultSlot:!!r.default}),n.accessibleLabel)),l=S(()=>n.disabled||n.loading);return(c,u)=>{const d=gr;return C(),R(d,de(f(o),{type:e.type,label:e.label,"aria-label":i.value,"aria-busy":e.loading?"true":void 0,icon:e.icon,"trailing-icon":e.trailingIcon,color:s.value,variant:e.variant,size:e.size,loading:e.loading,disabled:l.value,block:e.block,onClick:u[0]||(u[0]=h=>a("click",h)),onFocus:u[1]||(u[1]=h=>a("focus",h)),onBlur:u[2]||(u[2]=h=>a("blur",h)),onKeydown:u[3]||(u[3]=h=>a("keydown",h)),onKeyup:u[4]||(u[4]=h=>a("keyup",h))}),Ec({_:2},[c.$slots.leading?{name:"leading",fn:E(()=>[j(c.$slots,"leading")]),key:"0"}:void 0,c.$slots.default?{name:"default",fn:E(()=>[j(c.$slots,"default")]),key:"1"}:void 0,c.$slots.trailing?{name:"trailing",fn:E(()=>[j(c.$slots,"trailing")]),key:"2"}:void 0]),1040,["type","label","aria-label","aria-busy","icon","trailing-icon","color","variant","size","loading","disabled","block"])}}}),d5=Z({inheritAttrs:!1,__name:"UiIcon",props:{name:{},size:{},label:{}},setup(e){const t=e,n=S(()=>{if(t.size)return{xs:"h-3 w-3",sm:"h-3.5 w-3.5",md:"h-4 w-4",lg:"h-5 w-5",xl:"h-6 w-6"}[t.size]}),a=u5(["aria-label","aria-hidden","role"]);return(r,o)=>{const s=cn;return C(),R(s,de(f(a),{name:e.name,class:n.value,role:e.label?"img":void 0,"aria-label":e.label,"aria-hidden":e.label?void 0:"true"}),null,16,["name","class","role","aria-label","aria-hidden"])}}}),cee=["onClick"],uee={key:0,class:"flex grow items-center justify-end"},dee=Z({__name:"NavigationTabsBase",props:{modelValue:{},items:{},persistKey:{},orientation:{default:"horizontal"},size:{default:"md"},bordered:{type:Boolean},mode:{}},emits:["update:modelValue","change"],setup(e,{emit:t}){const n=e,a=t,r=jc(),o=sp(),s=S(()=>n.orientation==="vertical"),i=V({}),l=V(null),c=V({}),u=S({get:()=>n.modelValue,set:p=>{a("update:modelValue",p),a("change",p)}});function d(){const p=i.value[u.value];if(!p||!l.value)return;const m=l.value.getBoundingClientRect(),v=p.getBoundingClientRect();c.value=s.value?{top:`${v.top-m.top}px`,height:`${v.height}px`,right:"0px",width:"2px"}:{left:`${v.left-m.left}px`,width:`${v.width}px`,bottom:"0px",height:"2px"}}function h(p,m){i.value[p]=m}return Xe(()=>{if(n.persistKey){const p=r.query[n.persistKey];p&&n.items.some(m=>m.id===p)&&(u.value=p)}Ve(d)}),Se(()=>n.modelValue,p=>{n.persistKey&&p&&o.replace({query:{...r.query,[n.persistKey]:p}}),Ve(d)}),Se(()=>n.items,()=>Ve(d),{deep:!0}),(p,m)=>(C(),ye("div",{class:Ae([s.value?["h-full",e.bordered!==!1?"border-r border-gray-200/50 dark:border-gray-700/50":""]:["flex justify-between overflow-x-auto",e.bordered!==!1?"border-b border-gray-200/50 dark:border-gray-800/50":"",e.mode==="section"?"flex-wrap items-center gap-y-2 pl-7 pr-6 pt-3":["items-center",e.size==="sm"?"px-3":"px-6"]]])},[ke("div",{ref_key:"containerRef",ref:l,class:Ae(["relative",[s.value?"flex flex-col gap-1":"flex shrink-0 gap-4 pb-1"]])},[(C(!0),ye(ze,null,en(e.items,v=>(C(),ye("button",{key:v.id,ref_for:!0,ref:y=>h(v.id,y),type:"button",class:Ae(["flex shrink-0 items-center whitespace-nowrap font-medium transition-colors",[s.value?"justify-start gap-2 px-3 py-2 text-sm":e.size==="sm"?"gap-1.5 px-1 py-1.5 text-xs":"gap-2 px-1 py-3 text-sm",u.value===v.id?"text-primary-600 dark:text-primary-400":"text-gray-500 hover:text-gray-700 dark:text-gray-400 dark:hover:text-gray-300"]]),onClick:y=>u.value=v.id},[v.icon?(C(),R(f(d5),{key:0,name:v.icon,size:e.size==="sm"?"sm":"md"},null,8,["name","size"])):ve("",!0),qe(" "+Me(v.label),1)],10,cee))),128)),ke("div",{class:"absolute bg-primary-500 transition-all duration-300 ease-out",style:yn(c.value)},null,4)],2),!s.value&&p.$slots.right?(C(),ye(ze,{key:0},[e.mode==="section"?(C(),ye("div",uee,[j(p.$slots,"right")])):j(p.$slots,"right",{key:1})],64)):ve("",!0)],2))}}),fee=Z({__name:"CompactTabs",props:Cd({items:{},persistKey:{},orientation:{default:"horizontal"},size:{default:"md"},bordered:{type:Boolean}},{modelValue:{required:!0},modelModifiers:{}}),emits:Cd(["change"],["update:modelValue"]),setup(e,{emit:t}){const n=i0(e,"modelValue"),a=t;return(r,o)=>(C(),R(dee,{modelValue:n.value,"onUpdate:modelValue":o[0]||(o[0]=s=>n.value=s),items:e.items,"persist-key":e.persistKey,orientation:e.orientation,size:e.size,bordered:e.bordered,mode:"compact",onChange:o[1]||(o[1]=s=>a("change",s))},Ec({_:2},[r.$slots.right?{name:"right",fn:E(()=>[j(r.$slots,"right")]),key:"0"}:void 0]),1032,["modelValue","items","persist-key","orientation","size","bordered"]))}}),f5=Symbol("InsightPluginRuntime"),p5=Symbol("UiHostContext");function pee(e,t){e.provide(f5,t),e.provide(p5,t.ui)}function Rae(){const e=rt(f5);if(!e)throw new Error("Insight plugin runtime is unavailable");return e}function h5(){const e=rt(p5);if(!e)throw new Error("UI host context is unavailable");return e}function hee(){const e=h5().locale,t=at(e.getSnapshot().revision),n=e.subscribe(()=>{t.value=e.getSnapshot().revision});return Ga(n),{translate(a,r){return t.value,e.translate(a,r)},formatDate(a,r){return t.value,e.formatDate(a,r)},formatNumber(a,r){return t.value,e.formatNumber(a,r)}}}function Lae(e){const t=h5().locale,n=at(t.getSnapshot().revision),a=t.bind(e),r=t.subscribe(()=>{n.value=t.getSnapshot().revision});return Ga(r),(o,s)=>(n.value,a(o,s))}function mee(e){return e.listPages().map(t=>({path:t.path,name:t.routeName,component:async()=>{const n=await t.view.load();return typeof n=="object"&&n!==null&&"default"in n?n.default:n},meta:{insightPageId:t.id}}))}const Xp=[{id:"relationship-changes",navigationId:"insight.relationship-changes",path:"relationship-changes",routeName:"insight-relationship-changes",title:{key:"insight.tabs.relationshipChanges"},icon:"i-lucide-git-compare-arrows",platforms:["electron","cli-web"],order:30}];function gee(e,t=Xp){const n=Jp(e,t).map(({page:r})=>r),a=new Set;for(const r of n){if(a.has(r.id))throw new Error(`Duplicate Insight shell page "${r.id}"`);a.add(r.id)}return n}function Jp(e,t=Xp){const n=e.listNavigation().map(({entry:r,page:o})=>({entryId:r.id,order:r.order,page:o})),a=t.filter(r=>r.platforms.includes(e.platform)).map(r=>({entryId:r.navigationId,order:r.order,page:r}));return[...n,...a].sort((r,o)=>r.order-o.order||r.entryId.localeCompare(o.entryId))}function vee(e){return Xp.filter(t=>t.platforms.includes(e))}const Oae=!1,gc="host.insight";function yee(e){return e.primary.flatMap(t=>t.kind==="entry"?[t]:t.entries)}function ml(e){return{schemaVersion:WR,primary:[{kind:"group",id:gc,children:Jp(e).map(({entryId:t})=>t)}],hiddenEntryIds:[]}}function bee(e,t){const n=Jp(e),a=new Map(n.map(({entryId:l,page:c})=>[l,{kind:"entry",entryId:l,page:c}])),r=new Set(t.hiddenEntryIds),o=new Set,s=[];for(const l of t.primary){if(l.kind==="entry"){o.add(l.entryId);const u=a.get(l.entryId);u&&!r.has(l.entryId)&&s.push(u);continue}const c=[];for(const u of l.children){o.add(u);const d=a.get(u);d&&!r.has(u)&&c.push(d)}c.length>0&&s.push({kind:"group",id:l.id,title:l.title,entries:c})}const i=n.filter(({entryId:l})=>!o.has(l)&&!r.has(l)).map(({entryId:l})=>a.get(l));if(i.length>0){const l=s.find(c=>c.kind==="group"&&c.id===gc);l?l.entries.push(...i):s.push({kind:"group",id:gc,entries:i})}return{primary:s,hiddenEntryIds:[...t.hiddenEntryIds]}}class wee{constructor(t){this.runtime=t,this.source="default",this.revision=0,this.listeners=new Set,this.layout=ml(t)}getSnapshot(){return{layout:this.layout,source:this.source,revision:this.revision}}getResolvedLayout(){return bee(this.runtime,this.layout)}applyLoadResult(t){this.layout=t.layout??ml(this.runtime),this.source=t.status,this.emit()}applySavedLayout(t){this.layout=t,this.source="saved",this.emit()}applyDefaultLayout(){this.layout=ml(this.runtime),this.source="default",this.emit()}applyLoadFailure(){this.layout=ml(this.runtime),this.source="failed",this.emit()}subscribe(t){return this.listeners.add(t),()=>this.listeners.delete(t)}emit(){this.revision++;for(const t of this.listeners)t()}}const m5=Symbol("NavigationLayoutController");function _ee(e,t){e.provide(m5,t)}function g5(){const e=rt(m5);if(!e)throw new Error("Navigation layout controller is unavailable");const t=at(e.getSnapshot()),n=e.subscribe(()=>{t.value=e.getSnapshot()});return Ga(n),{controller:e,snapshot:t}}const Af="/assets/logo-DXIuG_WE.svg",kee={key:0,class:"ml-2 flex items-center"},Cee=["src"],See={class:"ml-2 flex items-baseline gap-2"},xee={class:"text-xl font-black tracking-tight text-pink-500"},Aee={class:"text-xs text-gray-400"},Pee=["src"],Mee={class:"space-y-1"},Tee={class:"flex-1 relative min-h-0 flex flex-col"},Iee={key:0,class:"mb-2"},Dee={class:"flex items-center gap-0.5"},Eee={key:0,class:"mt-2 px-4"},$ee=["aria-label"],Ree={class:"text-sm text-gray-600 dark:text-gray-300"},Lee={key:0,class:"mt-1 line-clamp-2 text-xs text-gray-400"},Oee={key:2,class:"py-8 text-center text-sm text-gray-500"},Nee={key:3,class:"py-8 text-center text-sm text-gray-500"},Fee=["onClick"],qee={key:0,class:"min-w-0 flex-1"},Bee={class:"flex items-center justify-between gap-1.5"},Hee={class:"truncate text-xs font-medium"},Vee={class:"truncate text-[10px] text-gray-400 dark:text-gray-500 mt-0.5 leading-none"},zee={class:"p-4"},jee={class:"mb-3 font-semibold text-gray-900 dark:text-white"},Wee={class:"flex justify-end gap-2"},Uee={class:"p-4"},Gee={class:"mb-3 font-semibold text-gray-900 dark:text-white"},Yee={class:"mb-4 text-sm text-gray-600 dark:text-gray-400"},Kee={class:"flex justify-end gap-2"},Xee={class:"p-4"},Jee={class:"mb-3 flex items-center gap-2"},Qee={class:"flex h-8 w-8 items-center justify-center rounded-lg bg-red-50 text-red-500 dark:bg-red-950/30"},Zee={class:"font-semibold text-gray-900 dark:text-white"},ete={class:"text-sm text-gray-600 dark:text-gray-400"},tte={class:"mt-2 text-sm text-gray-500 dark:text-gray-400"},nte={key:0,class:"mt-3 rounded-md border border-gray-200 bg-gray-50 px-3 py-2 font-mono text-xs text-gray-700 dark:border-gray-700 dark:bg-gray-800 dark:text-gray-200"},ate={class:"mt-4 flex justify-end gap-2"},rte="chatlab:latest-version-check:v2",ote=44,ste=32,ite=Z({__name:"Sidebar",props:{backendFeatures:{type:Boolean},insightEnabled:{type:Boolean,default:!1},settingsEnabled:{type:Boolean,default:!1}},setup(e){const t=e,{t:n}=io(),{translate:a}=hee(),r=Ia,o=Wr(),s=hu(),{sessions:i,sortedSessions:l,filterType:c,loadState:u,loadError:d}=ai(o),{isSidebarCollapsed:h}=ai(s),{toggleSidebar:p}=s,m=sp(),v=jc(),{controller:y,snapshot:g}=g5(),b=S(()=>v.path==="/"),w=S(()=>String(v.name??"").startsWith("people-")),_=S(()=>i.value.filter(_e=>_e.type==="private").length),A=S(()=>i.value.filter(_e=>_e.type==="group").length),P=S(()=>JR({privateSessionCount:_.value,groupSessionCount:A.value})),k=S(()=>t.backendFeatures||t.insightEnabled),T=S(()=>(g.value.revision,y.getResolvedLayout().primary)),I=S(()=>String(v.meta.insightPageId??""));function Y(_e,Le){return Le||(_e===gc?n("layout.insight"):_e)}function Q(_e){m.push({name:_e})}const z=V(!1),te=V(null),O=V(""),D=V(null),q=V(!1),G=V(null),L=V(""),ee=V(""),K=V(!1),ce=V(!1),ue=V(!1),be=V(!1),ge=V(""),we=V(null),me=S(()=>[{id:"all",label:n("layout.filter.all")},{id:"private",label:n("layout.filter.private")},{id:"group",label:n("layout.filter.group")}]),X=S(()=>{if(!ge.value.trim())return l.value;const _e=ge.value.toLowerCase().trim();return l.value.filter(Le=>Le.name.toLowerCase().includes(_e))}),le=S(()=>eee({loadState:u.value,sessionCount:i.value.length,filteredSessionCount:X.value.length,hasSearchQuery:ge.value.trim().length>0})),se=zR(S(()=>({count:X.value.length,getScrollElement:()=>we.value,estimateSize:()=>ote,overscan:8,getItemKey:_e=>X.value[_e]?.id??_e}))),pe=S(()=>se.value.getVirtualItems()),Pe=S(()=>se.value.getTotalSize()+ste);function $(_e){return X.value[_e]}function B(){be.value=!be.value,be.value||(ge.value="")}Xe(async()=>{try{L.value=await ao().getVersion(),t.backendFeatures&&N()}catch(_e){console.error("Failed to get version",_e)}}),_n(()=>{});function J(){m.push("/")}function W(){m.push({name:"people-contacts"})}function U(_e){m.push({name:Ge(_e),params:{id:_e.id},query:v.query})}function ne(_e){const Le=nee(_e);if(Le)try{window.localStorage.setItem(rte,JSON.stringify(Le))}catch{}}function x(_e){ee.value=_e?.latestVersion??"",K.value=_e?.hasUpdate??!1}async function M(){const Le=await ao().checkUpdate();return!Le||Le.error?null:tee({latestVersion:Le.latestVersion,currentVersion:Le.currentVersion,serverHasUpdate:Le.hasUpdate})}async function N(){try{const _e=await M();if(!_e){x(null);return}x(_e)}catch(_e){x(null),console.debug("Update notice check failed:",_e)}}function H(){ce.value=!0}async function oe(){{ce.value=!1;return}}function ae(_e){te.value=_e,O.value=_e.name,z.value=!0,Ve(()=>{D.value?.inputRef?.focus(),D.value?.inputRef?.select()})}async function F(){if(!te.value||!O.value.trim())return;await o.renameSession(te.value.id,O.value.trim())&&(z.value=!1,te.value=null,O.value="")}function re(){z.value=!1,te.value=null,O.value=""}function he(_e){G.value=_e,q.value=!0}async function xe(){if(!G.value)return;const _e=G.value.id,Le=v.params.id===_e;await o.deleteSession(_e),q.value=!1,G.value=null,Le&&m.push("/")}function Re(){q.value=!1,G.value=null}async function je(_e){try{await navigator.clipboard.writeText(_e)}catch(Le){console.error("Failed to copy session id:",Le)}}function We(_e){const Le=o.isPinned(_e.id);return[[{label:n(Le?"layout.contextMenu.unpin":"layout.contextMenu.pin"),class:"p-2",onSelect:()=>o.togglePinSession(_e.id)},{label:n("layout.contextMenu.rename"),class:"p-2",onSelect:()=>ae(_e)},{label:n("layout.contextMenu.copyId"),class:"p-2",onSelect:()=>je(_e.id)},{label:n("layout.contextMenu.delete"),color:"error",class:"p-2",onSelect:()=>he(_e)}]]}function Ge(_e){return _e.type==="private"?"private-chat":"group-chat"}function Lt(_e){return _e.type==="private"}function jt(_e){const Le=_e.name||"";return Le?Lt(_e)?Le.slice(-1):Le.slice(0,1):"?"}function Je(_e){return Lt(_e)?_e.memberAvatar||null:_e.groupAvatar||null}function Qe(_e,Le){if(Le)return"bg-primary-50 text-primary-600 dark:bg-primary-500/10 dark:text-primary-400";const kn=[{bg:"bg-pink-50 dark:bg-pink-950/20",text:"text-pink-600 dark:text-pink-400"},{bg:"bg-blue-50 dark:bg-blue-950/20",text:"text-blue-600 dark:text-blue-400"},{bg:"bg-emerald-50 dark:bg-emerald-950/20",text:"text-emerald-600 dark:text-emerald-400"},{bg:"bg-purple-50 dark:bg-purple-950/20",text:"text-purple-600 dark:text-purple-400"},{bg:"bg-amber-50 dark:bg-amber-950/20",text:"text-amber-600 dark:text-amber-400"}],mn=_e.id||"";let ma=0;for(let ws=0;ws<mn.length;ws++)ma=mn.charCodeAt(ws)+((ma<<5)-ma);const bs=Math.abs(ma)%kn.length;return`${kn[bs].bg} ${kn[bs].text}`}return(_e,Le)=>{const kn=cn,mn=gr,ma=Gp,bs=IR,ws=PR,vu=kR;return C(),ye("div",{class:Ae(["flex h-full shrink-0 flex-col overflow-hidden rounded-lg bg-white transition-all duration-300 ease-in-out dark:bg-sidebar-dark",f(h)?"w-14":"w-72"])},[ke("div",{class:Ae(["flex flex-col px-2 pb-4",f(r)?"pt-8":"pt-5"])},[ke("div",{class:Ae(["mb-2 flex items-center",[f(h)?"justify-center":"justify-between"]]),style:{"-webkit-app-region":"drag"}},[f(h)?(C(),ye("div",{key:1,class:"group relative flex h-9 w-9 cursor-pointer items-center justify-center rounded-full hover:bg-gray-200/60 dark:hover:bg-white/[0.06]",style:{"-webkit-app-region":"no-drag"},onClick:Le[0]||(Le[0]=(...Fe)=>f(p)&&f(p)(...Fe))},[ke("img",{src:f(Af),alt:"ChatLab",class:"size-5 select-none pointer-events-none group-hover:hidden"},null,8,Pee),ie(kn,{name:"i-lucide-panel-right-open",class:"size-4 hidden group-hover:block scale-x-[-1]"})])):(C(),ye("div",kee,[ke("img",{src:f(Af),alt:"ChatLab",class:"h-6 w-6 select-none pointer-events-none"},null,8,Cee),ke("div",See,[ke("div",xee,Me(f(n)("layout.brand")),1),ke("span",Aee,"v"+Me(L.value),1)]),K.value?(C(),ye("button",{key:0,type:"button",class:"ml-1.5 rounded-full bg-red-500 px-1.5 py-0.5 text-[10px] font-bold leading-none text-white shadow-sm shadow-red-500/20 transition hover:bg-red-600",style:{"-webkit-app-region":"no-drag"},onClick:H},Me(f(n)("layout.updateNotice.tag")),1)):ve("",!0)])),f(h)?ve("",!0):(C(),R(mn,{key:2,color:"neutral",variant:"ghost",size:"sm",class:"group flex h-9 w-9 cursor-pointer items-center justify-center rounded-full hover:bg-gray-200/60 dark:hover:bg-white/[0.06]",style:{"-webkit-app-region":"no-drag"},onClick:f(p)},{default:E(()=>[ie(kn,{name:"i-lucide-panel-right",class:"size-4 group-hover:hidden scale-x-[-1]"}),ie(kn,{name:"i-lucide-panel-right-close",class:"size-4 hidden group-hover:block scale-x-[-1]"})]),_:1},8,["onClick"]))],2),ke("div",Mee,[ie(ql,{icon:"i-heroicons-plus",title:f(n)("layout.newAnalysis"),active:b.value,onClick:J},null,8,["title","active"]),k.value?(C(!0),ye(ze,{key:0},en(T.value,Fe=>(C(),R(ql,{key:`${Fe.kind}:${Fe.kind==="entry"?Fe.entryId:Fe.id}`,icon:Fe.kind==="entry"?Fe.page.icon:"i-heroicons-presentation-chart-bar",title:Fe.kind==="entry"?f(a)(Fe.page.title):Y(Fe.id,Fe.title),active:Fe.kind==="entry"?I.value===Fe.page.id:Fe.entries.some(({page:yu})=>yu.id===I.value),onClick:yu=>Q(Fe.kind==="entry"?Fe.page.routeName:Fe.entries[0].page.routeName)},null,8,["icon","title","active","onClick"]))),128)):ve("",!0),t.backendFeatures&&P.value?(C(),R(ql,{key:1,icon:"i-lucide-users","icon-class":"scale-90",title:f(n)("layout.relationships"),active:w.value,onClick:W},null,8,["title","active"])):ve("",!0)])],2),ke("div",Tee,[!f(h)&&f(i).length>0?(C(),ye("div",Iee,[ie(f(fee),{modelValue:f(c),"onUpdate:modelValue":Le[2]||(Le[2]=Fe=>et(c)?c.value=Fe:null),items:me.value,size:"sm",bordered:!1},{right:E(()=>[ke("div",Dee,[ie(ma,{text:f(n)("layout.tooltip.search"),content:{side:"bottom"}},{default:E(()=>[ie(mn,{icon:be.value?"i-heroicons-x-mark":"i-heroicons-magnifying-glass",color:"neutral",variant:"ghost",size:"xs",onClick:B},null,8,["icon"])]),_:1},8,["text"]),ie(ZZ),t.backendFeatures?(C(),R(ma,{key:0,text:f(n)("layout.manage"),content:{side:"bottom"}},{default:E(()=>[ie(mn,{icon:"i-heroicons-rectangle-stack",color:"neutral",variant:"ghost",size:"xs",onClick:Le[1]||(Le[1]=Fe=>f(s).openSettings("data"))})]),_:1},8,["text"])):ve("",!0)])]),_:1},8,["modelValue","items"]),be.value?(C(),ye("div",Eee,[ie(bs,{modelValue:ge.value,"onUpdate:modelValue":Le[3]||(Le[3]=Fe=>ge.value=Fe),placeholder:f(n)("layout.searchPlaceholder"),icon:"i-heroicons-magnifying-glass",size:"sm",autofocus:""},null,8,["modelValue","placeholder"])])):ve("",!0)])):ve("",!0),ke("div",{ref_key:"sessionListRef",ref:we,class:"session-list flex-1 overflow-y-auto"},[le.value==="loading"?(C(),ye("div",{key:0,class:"flex justify-center py-4",role:"status","aria-label":f(n)("common.loading")},[ie(kn,{name:"i-lucide-loader-2",class:"h-4 w-4 animate-spin text-gray-400 dark:text-gray-500"})],8,$ee)):le.value==="error"?(C(),ye("div",{key:1,class:Ae(f(h)?"flex justify-center py-4":"px-4 py-8 text-center")},[f(h)?(C(),R(ma,{key:1,text:f(n)("common.retry"),content:{side:"right"}},{default:E(()=>[ie(mn,{icon:"i-lucide-refresh-cw",color:"neutral",variant:"ghost",size:"xs","aria-label":f(n)("common.retry"),onClick:Le[5]||(Le[5]=Fe=>f(o).loadSessions())},null,8,["aria-label"])]),_:1},8,["text"])):(C(),ye(ze,{key:0},[ke("p",Ree,Me(f(n)("layout.sessionLoadFailed")),1),f(d)?(C(),ye("p",Lee,Me(f(d)),1)):ve("",!0),ie(mn,{size:"xs",variant:"soft",class:"mt-3",onClick:Le[4]||(Le[4]=Fe=>f(o).loadSessions())},{default:E(()=>[qe(Me(f(n)("common.retry")),1)]),_:1})],64))],2)):le.value==="empty"&&!f(h)?(C(),ye("div",Oee,Me(f(n)("layout.noRecords")),1)):le.value==="search-empty"&&!f(h)?(C(),ye("div",Nee,Me(f(n)("layout.noSearchResult")),1)):le.value==="list"?(C(),ye("div",{key:4,class:"relative",style:yn({height:`${Pe.value}px`})},[(C(!0),ye(ze,null,en(pe.value,Fe=>(C(),ye("div",{key:String(Fe.key),class:"absolute left-2 right-2",style:yn({transform:`translateY(${Fe.start}px)`})},[ie(ws,{items:We($(Fe.index))},{default:E(()=>[ie(ma,{text:$(Fe.index).name,disabled:!f(h)||!$(Fe.index).name,content:{side:"right"}},{default:E(()=>[ke("div",{class:Ae(["group relative flex items-center text-left transition-all duration-200 cursor-pointer",[f(v).params.id===$(Fe.index).id?"text-primary-600 font-medium dark:text-primary-400":"text-gray-600 dark:text-gray-300 hover:bg-gray-200/20 dark:hover:bg-white/[0.04]",f(h)?"justify-center h-10 w-10 rounded-lg mx-auto":"h-10 w-full rounded-xl p-1.5 px-2.5 pl-1.5"]]),onClick:yu=>U($(Fe.index))},[ke("div",{class:Ae(["absolute -left-2 top-1/2 w-[3px] -translate-y-1/2 rounded-r-full bg-primary-500 transition-all duration-200",[f(v).params.id===$(Fe.index).id?"h-4.5 opacity-100":"h-0 opacity-0 group-hover:h-2.5 group-hover:opacity-40"]])},null,2),ie(aL,{src:Je($(Fe.index)),alt:$(Fe.index).name,text:jt($(Fe.index)),"root-class":["h-7 w-7 min-w-7 shrink-0",f(h)?"":"mr-2.5"],"image-class":"h-7 w-7 rounded-lg object-cover","fallback-class":["flex h-7 w-7 items-center justify-center rounded-lg text-xs font-semibold select-none",Qe($(Fe.index),f(v).params.id===$(Fe.index).id)]},null,8,["src","alt","text","root-class","fallback-class"]),f(h)?ve("",!0):(C(),ye("div",qee,[ke("div",Bee,[ke("p",Hee,Me($(Fe.index).name),1),f(o).isPinned($(Fe.index).id)?(C(),R(kn,{key:0,name:"i-lucide-pin",class:"h-3 w-3 shrink-0 text-gray-400/80 rotate-45"})):ve("",!0)]),ke("p",Vee,Me(f(n)("layout.sessionInfo",{count:$(Fe.index).messageCount})),1)]))],10,Fee)]),_:2},1032,["text","disabled"])]),_:2},1032,["items"])],4))),128))],4)):ve("",!0)],512),Le[11]||(Le[11]=ke("div",{class:"pointer-events-none absolute bottom-0 left-0 right-0 h-12 bg-gradient-to-t from-white to-transparent dark:from-[#202024]"},null,-1))]),ie(vu,{open:z.value,"onUpdate:open":Le[7]||(Le[7]=Fe=>z.value=Fe),ui:{content:"z-50"}},{content:E(()=>[ke("div",zee,[ke("h3",jee,Me(f(n)("layout.renameModal.title")),1),ie(bs,{ref_key:"renameInputRef",ref:D,modelValue:O.value,"onUpdate:modelValue":Le[6]||(Le[6]=Fe=>O.value=Fe),placeholder:f(n)("layout.renameModal.placeholder"),class:"mb-4 w-100",onKeydown:Ln(F,["enter"])},null,8,["modelValue","placeholder"]),ke("div",Wee,[ie(mn,{variant:"soft",onClick:re},{default:E(()=>[qe(Me(f(n)("common.cancel")),1)]),_:1}),ie(mn,{color:"primary",disabled:!O.value.trim(),onClick:F},{default:E(()=>[qe(Me(f(n)("common.confirm")),1)]),_:1},8,["disabled"])])])]),_:1},8,["open"]),ie(vu,{open:q.value,"onUpdate:open":Le[8]||(Le[8]=Fe=>q.value=Fe),ui:{content:"z-50"}},{content:E(()=>[ke("div",Uee,[ke("h3",Gee,Me(f(n)("layout.deleteModal.title")),1),ke("p",Yee,Me(f(n)("layout.deleteModal.message",{name:G.value?.name})),1),ke("div",Kee,[ie(mn,{variant:"soft",onClick:Re},{default:E(()=>[qe(Me(f(n)("common.cancel")),1)]),_:1}),ie(mn,{color:"error",onClick:xe},{default:E(()=>[qe(Me(f(n)("common.delete")),1)]),_:1})])])]),_:1},8,["open"]),ie(vu,{open:ce.value,"onUpdate:open":Le[10]||(Le[10]=Fe=>ce.value=Fe),ui:{content:"z-50"}},{content:E(()=>[ke("div",Xee,[ke("div",Jee,[ke("div",Qee,[ie(kn,{name:"i-lucide-sparkles",class:"h-4 w-4"})]),ke("h3",Zee,Me(f(n)("layout.updateNotice.title")),1)]),ke("p",ete,Me(f(n)("layout.updateNotice.message",{version:ee.value})),1),ke("p",tte,Me(f(Ia)?f(n)("layout.updateNotice.desktopHint"):f(n)("layout.updateNotice.cliHint")),1),f(Ia)?ve("",!0):(C(),ye("div",nte," clb update ")),ke("div",ate,[ie(mn,{variant:"soft",disabled:ue.value,onClick:Le[9]||(Le[9]=Fe=>ce.value=!1)},{default:E(()=>[qe(Me(f(n)("layout.updateNotice.later")),1)]),_:1},8,["disabled"]),f(Ia)?(C(),R(mn,{key:0,color:"primary",loading:ue.value,onClick:oe},{default:E(()=>[qe(Me(f(n)("layout.updateNotice.updateNow")),1)]),_:1},8,["loading"])):ve("",!0)])])]),_:1},8,["open"]),t.backendFeatures||t.settingsEnabled?(C(),R(UZ,{key:0})):ve("",!0)],2)}}}),lte=fu(ite,[["__scopeId","data-v-e16f5858"]]);function Lv(e,t){try{ao().trackAnalyticsEvent(e,{...t,app_locale:mc()}).catch(()=>{})}catch{}}const cte=as("llm",()=>{const e=V([]),t=V([]),n=V(null),a=V(null),r=V(!1),o=V(!1),s=V([]),i=V([]),l=S(()=>e.value.find(k=>k.id===n.value?.configId)||null),c=S(()=>e.value.find(k=>k.id===a.value?.configId)||null),u=S(()=>!!n.value),d=S(()=>!!l.value&&!!n.value?.modelId.trim()),h=S(()=>e.value.length>=99);function p(k){return s.value.find(T=>T.id===k)}function m(k){return i.value.filter(T=>T.providerId===k)}function v(k,T){return i.value.find(I=>I.providerId===k&&I.id===T)}function y(k){return i.value.find(T=>T.id===k)}async function g(){o.value||(await b(),o.value=!0)}async function b(){const k=o.value,T=d.value;r.value=!0;try{const I=cd(),[Y,Q,z,te,O,D]=await Promise.all([I.getProviders(),I.getProviderRegistry(),I.getModelCatalog(),I.getConfigStore(),I.getDefaultAssistantSlot(),I.getFastModelSlot()]);t.value=Y,s.value=Q,i.value=z,e.value=te.configs,n.value=O,a.value=D,k&&!T&&d.value&&Lv("ai_setup_completed")}catch(I){console.error("[LLM Store] 加载配置失败:",I)}finally{r.value=!1}}async function w(k,T){const I=d.value;try{const Y=await cd().setDefaultAssistantModel(k,T);return Y.success?(n.value={configId:k,modelId:T},!I&&d.value&&Lv("ai_setup_completed"),!0):(console.error("[LLM Store] 设置默认助手模型失败:",Y.error),!1)}catch(Y){return console.error("[LLM Store] 设置默认助手模型失败:",Y),!1}}async function _(k){try{const T=await cd().setFastModel(k);return T.success?(a.value=k,!0):(console.error("[LLM Store] 设置快速模型失败:",T.error),!1)}catch(T){return console.error("[LLM Store] 设置快速模型失败:",T),!1}}async function A(){await b()}function P(k){const T=s.value.find(I=>I.id===k);return T?T.name:t.value.find(I=>I.id===k)?.name||k}return{configs:e,providers:t,providerRegistry:s,modelCatalog:i,defaultAssistant:n,fastModel:a,isLoading:r,isInitialized:o,defaultAssistantConfig:l,fastModelConfig:c,hasConfig:u,hasConfiguredModel:d,isMaxConfigs:h,init:g,loadConfigs:b,setDefaultAssistantModel:w,setFastModel:_,refreshConfigs:A,getProviderName:P,getProviderById:p,getModelsByProviderId:m,getModelById:v,findModelAcrossProviders:y}});function v5(e,t,n){for(let a=0;;a++){if(a==e.childCount||a==t.childCount)return e.childCount==t.childCount?null:n;let r=e.child(a),o=t.child(a);if(r==o){n+=r.nodeSize;continue}if(!r.sameMarkup(o))return n;if(r.isText&&r.text!=o.text){for(let s=0;r.text[s]==o.text[s];s++)n++;return n}if(r.content.size||o.content.size){let s=v5(r.content,o.content,n+1);if(s!=null)return s}n+=r.nodeSize}}function y5(e,t,n,a){for(let r=e.childCount,o=t.childCount;;){if(r==0||o==0)return r==o?null:{a:n,b:a};let s=e.child(--r),i=t.child(--o),l=s.nodeSize;if(s==i){n-=l,a-=l;continue}if(!s.sameMarkup(i))return{a:n,b:a};if(s.isText&&s.text!=i.text){let c=0,u=Math.min(s.text.length,i.text.length);for(;c<u&&s.text[s.text.length-c-1]==i.text[i.text.length-c-1];)c++,n--,a--;return{a:n,b:a}}if(s.content.size||i.content.size){let c=y5(s.content,i.content,n-1,a-1);if(c)return c}n-=l,a-=l}}class wt{constructor(t,n){if(this.content=t,this.size=n||0,n==null)for(let a=0;a<t.length;a++)this.size+=t[a].nodeSize}nodesBetween(t,n,a,r=0,o){for(let s=0,i=0;i<n;s++){let l=this.content[s],c=i+l.nodeSize;if(c>t&&a(l,r+i,o||null,s)!==!1&&l.content.size){let u=i+1;l.nodesBetween(Math.max(0,t-u),Math.min(l.content.size,n-u),a,r+u)}i=c}}descendants(t){this.nodesBetween(0,this.size,t)}textBetween(t,n,a,r){let o="",s=!0;return this.nodesBetween(t,n,(i,l)=>{let c=i.isText?i.text.slice(Math.max(t,l)-l,n-l):i.isLeaf?r?typeof r=="function"?r(i):r:i.type.spec.leafText?i.type.spec.leafText(i):"":"";i.isBlock&&(i.isLeaf&&c||i.isTextblock)&&a&&(s?s=!1:o+=a),o+=c},0),o}append(t){if(!t.size)return this;if(!this.size)return t;let n=this.lastChild,a=t.firstChild,r=this.content.slice(),o=0;for(n.isText&&n.sameMarkup(a)&&(r[r.length-1]=n.withText(n.text+a.text),o=1);o<t.content.length;o++)r.push(t.content[o]);return new wt(r,this.size+t.size)}cut(t,n=this.size){if(t==0&&n==this.size)return this;let a=[],r=0;if(n>t)for(let o=0,s=0;s<n;o++){let i=this.content[o],l=s+i.nodeSize;l>t&&((s<t||l>n)&&(i.isText?i=i.cut(Math.max(0,t-s),Math.min(i.text.length,n-s)):i=i.cut(Math.max(0,t-s-1),Math.min(i.content.size,n-s-1))),a.push(i),r+=i.nodeSize),s=l}return new wt(a,r)}cutByIndex(t,n){return t==n?wt.empty:t==0&&n==this.content.length?this:new wt(this.content.slice(t,n))}replaceChild(t,n){let a=this.content[t];if(a==n)return this;let r=this.content.slice(),o=this.size+n.nodeSize-a.nodeSize;return r[t]=n,new wt(r,o)}addToStart(t){return new wt([t].concat(this.content),this.size+t.nodeSize)}addToEnd(t){return new wt(this.content.concat(t),this.size+t.nodeSize)}eq(t){if(this.content.length!=t.content.length)return!1;for(let n=0;n<this.content.length;n++)if(!this.content[n].eq(t.content[n]))return!1;return!0}get firstChild(){return this.content.length?this.content[0]:null}get lastChild(){return this.content.length?this.content[this.content.length-1]:null}get childCount(){return this.content.length}child(t){let n=this.content[t];if(!n)throw new RangeError("Index "+t+" out of range for "+this);return n}maybeChild(t){return this.content[t]||null}forEach(t){for(let n=0,a=0;n<this.content.length;n++){let r=this.content[n];t(r,a,n),a+=r.nodeSize}}findDiffStart(t,n=0){return v5(this,t,n)}findDiffEnd(t,n=this.size,a=t.size){return y5(this,t,n,a)}findIndex(t){if(t==0)return gl(0,t);if(t==this.size)return gl(this.content.length,t);if(t>this.size||t<0)throw new RangeError(`Position ${t} outside of fragment (${this})`);for(let n=0,a=0;;n++){let r=this.child(n),o=a+r.nodeSize;if(o>=t)return o==t?gl(n+1,o):gl(n,a);a=o}}toString(){return"<"+this.toStringInner()+">"}toStringInner(){return this.content.join(", ")}toJSON(){return this.content.length?this.content.map(t=>t.toJSON()):null}static fromJSON(t,n){if(!n)return wt.empty;if(!Array.isArray(n))throw new RangeError("Invalid input for Fragment.fromJSON");return new wt(n.map(t.nodeFromJSON))}static fromArray(t){if(!t.length)return wt.empty;let n,a=0;for(let r=0;r<t.length;r++){let o=t[r];a+=o.nodeSize,r&&o.isText&&t[r-1].sameMarkup(o)?(n||(n=t.slice(0,r)),n[n.length-1]=o.withText(n[n.length-1].text+o.text)):n&&n.push(o)}return new wt(n||t,a)}static from(t){if(!t)return wt.empty;if(t instanceof wt)return t;if(Array.isArray(t))return this.fromArray(t);if(t.attrs)return new wt([t],t.nodeSize);throw new RangeError("Can not convert "+t+" to a Fragment"+(t.nodesBetween?" (looks like multiple versions of prosemirror-model were loaded)":""))}}wt.empty=new wt([],0);const ud={index:0,offset:0};function gl(e,t){return ud.index=e,ud.offset=t,ud}class ute extends Error{}class mt{constructor(t,n,a){this.content=t,this.openStart=n,this.openEnd=a}get size(){return this.content.size-this.openStart-this.openEnd}insertAt(t,n){let a=w5(this.content,t+this.openStart,n);return a&&new mt(a,this.openStart,this.openEnd)}removeBetween(t,n){return new mt(b5(this.content,t+this.openStart,n+this.openStart),this.openStart,this.openEnd)}eq(t){return this.content.eq(t.content)&&this.openStart==t.openStart&&this.openEnd==t.openEnd}toString(){return this.content+"("+this.openStart+","+this.openEnd+")"}toJSON(){if(!this.content.size)return null;let t={content:this.content.toJSON()};return this.openStart>0&&(t.openStart=this.openStart),this.openEnd>0&&(t.openEnd=this.openEnd),t}static fromJSON(t,n){if(!n)return mt.empty;let a=n.openStart||0,r=n.openEnd||0;if(typeof a!="number"||typeof r!="number")throw new RangeError("Invalid input for Slice.fromJSON");return new mt(wt.fromJSON(t,n.content),a,r)}static maxOpen(t,n=!0){let a=0,r=0;for(let o=t.firstChild;o&&!o.isLeaf&&(n||!o.type.spec.isolating);o=o.firstChild)a++;for(let o=t.lastChild;o&&!o.isLeaf&&(n||!o.type.spec.isolating);o=o.lastChild)r++;return new mt(t,a,r)}}mt.empty=new mt(wt.empty,0,0);function b5(e,t,n){let{index:a,offset:r}=e.findIndex(t),o=e.maybeChild(a),{index:s,offset:i}=e.findIndex(n);if(r==t||o.isText){if(i!=n&&!e.child(s).isText)throw new RangeError("Removing non-flat range");return e.cut(0,t).append(e.cut(n))}if(a!=s)throw new RangeError("Removing non-flat range");return e.replaceChild(a,o.copy(b5(o.content,t-r-1,n-r-1)))}function w5(e,t,n,a){let{index:r,offset:o}=e.findIndex(t),s=e.maybeChild(r);if(o==t||s.isText)return a&&!a.canReplace(r,r,n)?null:e.cut(0,t).append(n).append(e.cut(t));let i=w5(s.content,t-o-1,n,s);return i&&e.replaceChild(r,s.copy(i))}const _5=65535,k5=Math.pow(2,16);function dte(e,t){return e+t*k5}function Ov(e){return e&_5}function fte(e){return(e-(e&_5))/k5}const C5=1,S5=2,Bl=4,x5=8;class Nv{constructor(t,n,a){this.pos=t,this.delInfo=n,this.recover=a}get deleted(){return(this.delInfo&x5)>0}get deletedBefore(){return(this.delInfo&(C5|Bl))>0}get deletedAfter(){return(this.delInfo&(S5|Bl))>0}get deletedAcross(){return(this.delInfo&Bl)>0}}class Sn{constructor(t,n=!1){if(this.ranges=t,this.inverted=n,!t.length&&Sn.empty)return Sn.empty}recover(t){let n=0,a=Ov(t);if(!this.inverted)for(let r=0;r<a;r++)n+=this.ranges[r*3+2]-this.ranges[r*3+1];return this.ranges[a*3]+n+fte(t)}mapResult(t,n=1){return this._map(t,n,!1)}map(t,n=1){return this._map(t,n,!0)}_map(t,n,a){let r=0,o=this.inverted?2:1,s=this.inverted?1:2;for(let i=0;i<this.ranges.length;i+=3){let l=this.ranges[i]-(this.inverted?r:0);if(l>t)break;let c=this.ranges[i+o],u=this.ranges[i+s],d=l+c;if(t<=d){let h=c?t==l?-1:t==d?1:n:n,p=l+r+(h<0?0:u);if(a)return p;let m=t==(n<0?l:d)?null:dte(i/3,t-l),v=t==l?S5:t==d?C5:Bl;return(n<0?t!=l:t!=d)&&(v|=x5),new Nv(p,v,m)}r+=u-c}return a?t+r:new Nv(t+r,0,null)}touches(t,n){let a=0,r=Ov(n),o=this.inverted?2:1,s=this.inverted?1:2;for(let i=0;i<this.ranges.length;i+=3){let l=this.ranges[i]-(this.inverted?a:0);if(l>t)break;let c=this.ranges[i+o],u=l+c;if(t<=u&&i==r*3)return!0;a+=this.ranges[i+s]-c}return!1}forEach(t){let n=this.inverted?2:1,a=this.inverted?1:2;for(let r=0,o=0;r<this.ranges.length;r+=3){let s=this.ranges[r],i=s-(this.inverted?o:0),l=s+(this.inverted?0:o),c=this.ranges[r+n],u=this.ranges[r+a];t(i,i+c,l,l+u),o+=u-c}}invert(){return new Sn(this.ranges,!this.inverted)}toString(){return(this.inverted?"-":"")+JSON.stringify(this.ranges)}static offset(t){return t==0?Sn.empty:new Sn(t<0?[0,-t,0]:[0,0,t])}}Sn.empty=new Sn([]);const dd=Object.create(null);class tn{getMap(){return Sn.empty}merge(t){return null}static fromJSON(t,n){if(!n||!n.stepType)throw new RangeError("Invalid input for Step.fromJSON");let a=dd[n.stepType];if(!a)throw new RangeError(`No step type ${n.stepType} defined`);return a.fromJSON(t,n)}static jsonID(t,n){if(t in dd)throw new RangeError("Duplicate use of step JSON ID "+t);return dd[t]=n,n.prototype.jsonID=t,n}}class Et{constructor(t,n){this.doc=t,this.failed=n}static ok(t){return new Et(t,null)}static fail(t){return new Et(null,t)}static fromReplace(t,n,a,r){try{return Et.ok(t.replace(n,a,r))}catch(o){if(o instanceof ute)return Et.fail(o.message);throw o}}}function Qp(e,t,n){let a=[];for(let r=0;r<e.childCount;r++){let o=e.child(r);o.content.size&&(o=o.copy(Qp(o.content,t,o))),o.isInline&&(o=t(o,n,r)),a.push(o)}return wt.fromArray(a)}class Ur extends tn{constructor(t,n,a){super(),this.from=t,this.to=n,this.mark=a}apply(t){let n=t.slice(this.from,this.to),a=t.resolve(this.from),r=a.node(a.sharedDepth(this.to)),o=new mt(Qp(n.content,(s,i)=>!s.isAtom||!i.type.allowsMarkType(this.mark.type)?s:s.mark(this.mark.addToSet(s.marks)),r),n.openStart,n.openEnd);return Et.fromReplace(t,this.from,this.to,o)}invert(){return new Gr(this.from,this.to,this.mark)}map(t){let n=t.mapResult(this.from,1),a=t.mapResult(this.to,-1);return n.deleted&&a.deleted||n.pos>=a.pos?null:new Ur(n.pos,a.pos,this.mark)}merge(t){return t instanceof Ur&&t.mark.eq(this.mark)&&this.from<=t.to&&this.to>=t.from?new Ur(Math.min(this.from,t.from),Math.max(this.to,t.to),this.mark):null}toJSON(){return{stepType:"addMark",mark:this.mark.toJSON(),from:this.from,to:this.to}}static fromJSON(t,n){if(typeof n.from!="number"||typeof n.to!="number")throw new RangeError("Invalid input for AddMarkStep.fromJSON");return new Ur(n.from,n.to,t.markFromJSON(n.mark))}}tn.jsonID("addMark",Ur);class Gr extends tn{constructor(t,n,a){super(),this.from=t,this.to=n,this.mark=a}apply(t){let n=t.slice(this.from,this.to),a=new mt(Qp(n.content,r=>r.mark(this.mark.removeFromSet(r.marks)),t),n.openStart,n.openEnd);return Et.fromReplace(t,this.from,this.to,a)}invert(){return new Ur(this.from,this.to,this.mark)}map(t){let n=t.mapResult(this.from,1),a=t.mapResult(this.to,-1);return n.deleted&&a.deleted||n.pos>=a.pos?null:new Gr(n.pos,a.pos,this.mark)}merge(t){return t instanceof Gr&&t.mark.eq(this.mark)&&this.from<=t.to&&this.to>=t.from?new Gr(Math.min(this.from,t.from),Math.max(this.to,t.to),this.mark):null}toJSON(){return{stepType:"removeMark",mark:this.mark.toJSON(),from:this.from,to:this.to}}static fromJSON(t,n){if(typeof n.from!="number"||typeof n.to!="number")throw new RangeError("Invalid input for RemoveMarkStep.fromJSON");return new Gr(n.from,n.to,t.markFromJSON(n.mark))}}tn.jsonID("removeMark",Gr);class Yr extends tn{constructor(t,n){super(),this.pos=t,this.mark=n}apply(t){let n=t.nodeAt(this.pos);if(!n)return Et.fail("No node at mark step's position");let a=n.type.create(n.attrs,null,this.mark.addToSet(n.marks));return Et.fromReplace(t,this.pos,this.pos+1,new mt(wt.from(a),0,n.isLeaf?0:1))}invert(t){let n=t.nodeAt(this.pos);if(n){let a=this.mark.addToSet(n.marks);if(a.length==n.marks.length){for(let r=0;r<n.marks.length;r++)if(!n.marks[r].isInSet(a))return new Yr(this.pos,n.marks[r]);return new Yr(this.pos,this.mark)}}return new gi(this.pos,this.mark)}map(t){let n=t.mapResult(this.pos,1);return n.deletedAfter?null:new Yr(n.pos,this.mark)}toJSON(){return{stepType:"addNodeMark",pos:this.pos,mark:this.mark.toJSON()}}static fromJSON(t,n){if(typeof n.pos!="number")throw new RangeError("Invalid input for AddNodeMarkStep.fromJSON");return new Yr(n.pos,t.markFromJSON(n.mark))}}tn.jsonID("addNodeMark",Yr);class gi extends tn{constructor(t,n){super(),this.pos=t,this.mark=n}apply(t){let n=t.nodeAt(this.pos);if(!n)return Et.fail("No node at mark step's position");let a=n.type.create(n.attrs,null,this.mark.removeFromSet(n.marks));return Et.fromReplace(t,this.pos,this.pos+1,new mt(wt.from(a),0,n.isLeaf?0:1))}invert(t){let n=t.nodeAt(this.pos);return!n||!this.mark.isInSet(n.marks)?this:new Yr(this.pos,this.mark)}map(t){let n=t.mapResult(this.pos,1);return n.deletedAfter?null:new gi(n.pos,this.mark)}toJSON(){return{stepType:"removeNodeMark",pos:this.pos,mark:this.mark.toJSON()}}static fromJSON(t,n){if(typeof n.pos!="number")throw new RangeError("Invalid input for RemoveNodeMarkStep.fromJSON");return new gi(n.pos,t.markFromJSON(n.mark))}}tn.jsonID("removeNodeMark",gi);class Aa extends tn{constructor(t,n,a,r=!1){super(),this.from=t,this.to=n,this.slice=a,this.structure=r}apply(t){return this.structure&&Pf(t,this.from,this.to)?Et.fail("Structure replace would overwrite content"):Et.fromReplace(t,this.from,this.to,this.slice)}getMap(){return new Sn([this.from,this.to-this.from,this.slice.size])}invert(t){return new Aa(this.from,this.from+this.slice.size,t.slice(this.from,this.to))}map(t){let n=t.mapResult(this.from,1),a=t.mapResult(this.to,-1);return n.deletedAcross&&a.deletedAcross?null:new Aa(n.pos,Math.max(n.pos,a.pos),this.slice,this.structure)}merge(t){if(!(t instanceof Aa)||t.structure||this.structure)return null;if(this.from+this.slice.size==t.from&&!this.slice.openEnd&&!t.slice.openStart){let n=this.slice.size+t.slice.size==0?mt.empty:new mt(this.slice.content.append(t.slice.content),this.slice.openStart,t.slice.openEnd);return new Aa(this.from,this.to+(t.to-t.from),n,this.structure)}else if(t.to==this.from&&!this.slice.openStart&&!t.slice.openEnd){let n=this.slice.size+t.slice.size==0?mt.empty:new mt(t.slice.content.append(this.slice.content),t.slice.openStart,this.slice.openEnd);return new Aa(t.from,this.to,n,this.structure)}else return null}toJSON(){let t={stepType:"replace",from:this.from,to:this.to};return this.slice.size&&(t.slice=this.slice.toJSON()),this.structure&&(t.structure=!0),t}static fromJSON(t,n){if(typeof n.from!="number"||typeof n.to!="number")throw new RangeError("Invalid input for ReplaceStep.fromJSON");return new Aa(n.from,n.to,mt.fromJSON(t,n.slice),!!n.structure)}}tn.jsonID("replace",Aa);class Oo extends tn{constructor(t,n,a,r,o,s,i=!1){super(),this.from=t,this.to=n,this.gapFrom=a,this.gapTo=r,this.slice=o,this.insert=s,this.structure=i}apply(t){if(this.structure&&(Pf(t,this.from,this.gapFrom)||Pf(t,this.gapTo,this.to)))return Et.fail("Structure gap-replace would overwrite content");let n=t.slice(this.gapFrom,this.gapTo);if(n.openStart||n.openEnd)return Et.fail("Gap is not a flat range");let a=this.slice.insertAt(this.insert,n.content);return a?Et.fromReplace(t,this.from,this.to,a):Et.fail("Content does not fit in gap")}getMap(){return new Sn([this.from,this.gapFrom-this.from,this.insert,this.gapTo,this.to-this.gapTo,this.slice.size-this.insert])}invert(t){let n=this.gapTo-this.gapFrom;return new Oo(this.from,this.from+this.slice.size+n,this.from+this.insert,this.from+this.insert+n,t.slice(this.from,this.to).removeBetween(this.gapFrom-this.from,this.gapTo-this.from),this.gapFrom-this.from,this.structure)}map(t){let n=t.mapResult(this.from,1),a=t.mapResult(this.to,-1),r=this.from==this.gapFrom?n.pos:t.map(this.gapFrom,-1),o=this.to==this.gapTo?a.pos:t.map(this.gapTo,1);return n.deletedAcross&&a.deletedAcross||r<n.pos||o>a.pos?null:new Oo(n.pos,a.pos,r,o,this.slice,this.insert,this.structure)}toJSON(){let t={stepType:"replaceAround",from:this.from,to:this.to,gapFrom:this.gapFrom,gapTo:this.gapTo,insert:this.insert};return this.slice.size&&(t.slice=this.slice.toJSON()),this.structure&&(t.structure=!0),t}static fromJSON(t,n){if(typeof n.from!="number"||typeof n.to!="number"||typeof n.gapFrom!="number"||typeof n.gapTo!="number"||typeof n.insert!="number")throw new RangeError("Invalid input for ReplaceAroundStep.fromJSON");return new Oo(n.from,n.to,n.gapFrom,n.gapTo,mt.fromJSON(t,n.slice),n.insert,!!n.structure)}}tn.jsonID("replaceAround",Oo);function Pf(e,t,n){let a=e.resolve(t),r=n-t,o=a.depth;for(;r>0&&o>0&&a.indexAfter(o)==a.node(o).childCount;)o--,r--;if(r>0){let s=a.node(o).maybeChild(a.indexAfter(o));for(;r>0;){if(!s||s.isLeaf)return!0;s=s.firstChild,r--}}return!1}class Gs extends tn{constructor(t,n,a){super(),this.pos=t,this.attr=n,this.value=a}apply(t){let n=t.nodeAt(this.pos);if(!n)return Et.fail("No node at attribute step's position");let a=Object.create(null);for(let o in n.attrs)a[o]=n.attrs[o];a[this.attr]=this.value;let r=n.type.create(a,null,n.marks);return Et.fromReplace(t,this.pos,this.pos+1,new mt(wt.from(r),0,n.isLeaf?0:1))}getMap(){return Sn.empty}invert(t){return new Gs(this.pos,this.attr,t.nodeAt(this.pos).attrs[this.attr])}map(t){let n=t.mapResult(this.pos,1);return n.deletedAfter?null:new Gs(n.pos,this.attr,this.value)}toJSON(){return{stepType:"attr",pos:this.pos,attr:this.attr,value:this.value}}static fromJSON(t,n){if(typeof n.pos!="number"||typeof n.attr!="string")throw new RangeError("Invalid input for AttrStep.fromJSON");return new Gs(n.pos,n.attr,n.value)}}tn.jsonID("attr",Gs);class vc extends tn{constructor(t,n){super(),this.attr=t,this.value=n}apply(t){let n=Object.create(null);for(let r in t.attrs)n[r]=t.attrs[r];n[this.attr]=this.value;let a=t.type.create(n,t.content,t.marks);return Et.ok(a)}getMap(){return Sn.empty}invert(t){return new vc(this.attr,t.attrs[this.attr])}map(t){return this}toJSON(){return{stepType:"docAttr",attr:this.attr,value:this.value}}static fromJSON(t,n){if(typeof n.attr!="string")throw new RangeError("Invalid input for DocAttrStep.fromJSON");return new vc(n.attr,n.value)}}tn.jsonID("docAttr",vc);let vi=class extends Error{};vi=function e(t){let n=Error.call(this,t);return n.__proto__=e.prototype,n};vi.prototype=Object.create(Error.prototype);vi.prototype.constructor=vi;vi.prototype.name="TransformError";const fd=Object.create(null);class Bt{constructor(t,n,a){this.$anchor=t,this.$head=n,this.ranges=a||[new pte(t.min(n),t.max(n))]}get anchor(){return this.$anchor.pos}get head(){return this.$head.pos}get from(){return this.$from.pos}get to(){return this.$to.pos}get $from(){return this.ranges[0].$from}get $to(){return this.ranges[0].$to}get empty(){let t=this.ranges;for(let n=0;n<t.length;n++)if(t[n].$from.pos!=t[n].$to.pos)return!1;return!0}content(){return this.$from.doc.slice(this.from,this.to,!0)}replace(t,n=mt.empty){let a=n.content.lastChild,r=null;for(let i=0;i<n.openEnd;i++)r=a,a=a.lastChild;let o=t.steps.length,s=this.ranges;for(let i=0;i<s.length;i++){let{$from:l,$to:c}=s[i],u=t.mapping.slice(o);t.replaceRange(u.map(l.pos),u.map(c.pos),i?mt.empty:n),i==0&&Bv(t,o,(a?a.isInline:r&&r.isTextblock)?-1:1)}}replaceWith(t,n){let a=t.steps.length,r=this.ranges;for(let o=0;o<r.length;o++){let{$from:s,$to:i}=r[o],l=t.mapping.slice(a),c=l.map(s.pos),u=l.map(i.pos);o?t.deleteRange(c,u):(t.replaceRangeWith(c,u,n),Bv(t,a,n.isInline?-1:1))}}static findFrom(t,n,a=!1){let r=t.parent.inlineContent?new aa(t):_o(t.node(0),t.parent,t.pos,t.index(),n,a);if(r)return r;for(let o=t.depth-1;o>=0;o--){let s=n<0?_o(t.node(0),t.node(o),t.before(o+1),t.index(o),n,a):_o(t.node(0),t.node(o),t.after(o+1),t.index(o)+1,n,a);if(s)return s}return null}static near(t,n=1){return this.findFrom(t,n)||this.findFrom(t,-n)||new Fa(t.node(0))}static atStart(t){return _o(t,t,0,0,1)||new Fa(t)}static atEnd(t){return _o(t,t,t.content.size,t.childCount,-1)||new Fa(t)}static fromJSON(t,n){if(!n||!n.type)throw new RangeError("Invalid input for Selection.fromJSON");let a=fd[n.type];if(!a)throw new RangeError(`No selection type ${n.type} defined`);return a.fromJSON(t,n)}static jsonID(t,n){if(t in fd)throw new RangeError("Duplicate use of selection JSON ID "+t);return fd[t]=n,n.prototype.jsonID=t,n}getBookmark(){return aa.between(this.$anchor,this.$head).getBookmark()}}Bt.prototype.visible=!0;class pte{constructor(t,n){this.$from=t,this.$to=n}}let Fv=!1;function qv(e){!Fv&&!e.parent.inlineContent&&(Fv=!0,console.warn("TextSelection endpoint not pointing into a node with inline content ("+e.parent.type.name+")"))}class aa extends Bt{constructor(t,n=t){qv(t),qv(n),super(t,n)}get $cursor(){return this.$anchor.pos==this.$head.pos?this.$head:null}map(t,n){let a=t.resolve(n.map(this.head));if(!a.parent.inlineContent)return Bt.near(a);let r=t.resolve(n.map(this.anchor));return new aa(r.parent.inlineContent?r:a,a)}replace(t,n=mt.empty){if(super.replace(t,n),n==mt.empty){let a=this.$from.marksAcross(this.$to);a&&t.ensureMarks(a)}}eq(t){return t instanceof aa&&t.anchor==this.anchor&&t.head==this.head}getBookmark(){return new mu(this.anchor,this.head)}toJSON(){return{type:"text",anchor:this.anchor,head:this.head}}static fromJSON(t,n){if(typeof n.anchor!="number"||typeof n.head!="number")throw new RangeError("Invalid input for TextSelection.fromJSON");return new aa(t.resolve(n.anchor),t.resolve(n.head))}static create(t,n,a=n){let r=t.resolve(n);return new this(r,a==n?r:t.resolve(a))}static between(t,n,a){let r=t.pos-n.pos;if((!a||r)&&(a=r>=0?1:-1),!n.parent.inlineContent){let o=Bt.findFrom(n,a,!0)||Bt.findFrom(n,-a,!0);if(o)n=o.$head;else return Bt.near(n,a)}return t.parent.inlineContent||(r==0?t=n:(t=(Bt.findFrom(t,-a,!0)||Bt.findFrom(t,a,!0)).$anchor,t.pos<n.pos!=r<0&&(t=n))),new aa(t,n)}}Bt.jsonID("text",aa);class mu{constructor(t,n){this.anchor=t,this.head=n}map(t){return new mu(t.map(this.anchor),t.map(this.head))}resolve(t){return aa.between(t.resolve(this.anchor),t.resolve(this.head))}}class Hn extends Bt{constructor(t){let n=t.nodeAfter,a=t.node(0).resolve(t.pos+n.nodeSize);super(t,a),this.node=n}map(t,n){let{deleted:a,pos:r}=n.mapResult(this.anchor),o=t.resolve(r);return a?Bt.near(o):new Hn(o)}content(){return new mt(wt.from(this.node),0,0)}eq(t){return t instanceof Hn&&t.anchor==this.anchor}toJSON(){return{type:"node",anchor:this.anchor}}getBookmark(){return new Zp(this.anchor)}static fromJSON(t,n){if(typeof n.anchor!="number")throw new RangeError("Invalid input for NodeSelection.fromJSON");return new Hn(t.resolve(n.anchor))}static create(t,n){return new Hn(t.resolve(n))}static isSelectable(t){return!t.isText&&t.type.spec.selectable!==!1}}Hn.prototype.visible=!1;Bt.jsonID("node",Hn);class Zp{constructor(t){this.anchor=t}map(t){let{deleted:n,pos:a}=t.mapResult(this.anchor);return n?new mu(a,a):new Zp(a)}resolve(t){let n=t.resolve(this.anchor),a=n.nodeAfter;return a&&Hn.isSelectable(a)?new Hn(n):Bt.near(n)}}class Fa extends Bt{constructor(t){super(t.resolve(0),t.resolve(t.content.size))}replace(t,n=mt.empty){if(n==mt.empty){t.delete(0,t.doc.content.size);let a=Bt.atStart(t.doc);a.eq(t.selection)||t.setSelection(a)}else super.replace(t,n)}toJSON(){return{type:"all"}}static fromJSON(t){return new Fa(t)}map(t){return new Fa(t)}eq(t){return t instanceof Fa}getBookmark(){return hte}}Bt.jsonID("all",Fa);const hte={map(){return this},resolve(e){return new Fa(e)}};function _o(e,t,n,a,r,o=!1){if(t.inlineContent)return aa.create(e,n);for(let s=a-(r>0?0:1);r>0?s<t.childCount:s>=0;s+=r){let i=t.child(s);if(i.isAtom){if(!o&&Hn.isSelectable(i))return Hn.create(e,n-(r<0?i.nodeSize:0))}else{let l=_o(e,i,n+r,r<0?i.childCount:0,r,o);if(l)return l}n+=i.nodeSize*r}return null}function Bv(e,t,n){let a=e.steps.length-1;if(a<t)return;let r=e.steps[a];if(!(r instanceof Aa||r instanceof Oo))return;let o=e.mapping.maps[a],s;o.forEach((i,l,c,u)=>{s==null&&(s=u)}),e.setSelection(Bt.near(e.doc.resolve(s),n))}function Hv(e,t){return!t||!e?e:e.bind(t)}class vl{constructor(t,n,a){this.name=t,this.init=Hv(n.init,a),this.apply=Hv(n.apply,a)}}new vl("doc",{init(e){return e.doc||e.schema.topNodeType.createAndFill()},apply(e){return e.doc}}),new vl("selection",{init(e,t){return e.selection||Bt.atStart(t.doc)},apply(e){return e.selection}}),new vl("storedMarks",{init(e){return e.storedMarks||null},apply(e,t,n,a){return a.selection.$cursor?e.storedMarks:null}}),new vl("scrollToSelection",{init(){return 0},apply(e,t){return e.scrolledIntoView?t+1:t}});const pd=Object.create(null);function mte(e){return e in pd?e+"$"+ ++pd[e]:(pd[e]=0,e+"$")}class gte{constructor(t="key"){this.key=mte(t)}get(t){return t.config.pluginsByKey[this.key]}getState(t){return t[this.key]}}new gte("suggestion");const eh=document.createElement("canvas");eh.width=1;eh.height=1;const Vv=eh.getContext("2d",{willReadFrequently:!0});function vte(e){if(!Vv)return null;const t=Vv;t.clearRect(0,0,1,1),t.fillStyle="rgba(0, 0, 0, 0)",t.fillRect(0,0,1,1);try{t.fillStyle=e}catch{return null}t.fillRect(0,0,1,1);const[n,a,r,o]=t.getImageData(0,0,1,1).data;return o===0?null:{r:n,g:a,b:r,a:o/255}}function zv(e,t){const n=e.a+t.a*(1-e.a);return n<=0?{r:0,g:0,b:0,a:0}:{r:(e.r*e.a+t.r*t.a*(1-e.a))/n,g:(e.g*e.a+t.g*t.a*(1-e.a))/n,b:(e.b*e.a+t.b*t.a*(1-e.a))/n,a:n}}function hd(e){return`rgb(${Math.round(e.r)}, ${Math.round(e.g)}, ${Math.round(e.b)})`}function yte(e){const t={r:17,g:17,b:17,a:1};let n=e,a=null;for(;n;){const r=window.getComputedStyle(n).backgroundColor,o=vte(r);if(o&&o.a>0&&(a=a?zv(a,o):o,a.a>=.999))return hd(a);n=n.parentElement}return hd(a?zv(a,t):t)}function bte(e){return new Promise((t,n)=>{e.toBlob(a=>{a?t(a):n(new Error("Canvas PNG encoding returned an empty result"))},"image/png")})}function md(e){return new Promise((t,n)=>{const a=new FileReader;a.onload=()=>t(a.result),a.onerror=()=>n(a.error??new Error("Failed to serialize captured image")),a.readAsDataURL(e)})}async function wte(e,t,n){const a=await e.toCanvas();let r=a;if(a.width>t){const o=t/a.width,s=document.createElement("canvas");s.width=Math.round(a.width*o),s.height=Math.round(a.height*o);const i=s.getContext("2d");if(!i)throw new Error("Failed to create capture resize context");i.fillStyle=n,i.fillRect(0,0,s.width,s.height),i.drawImage(a,0,0,s.width,s.height),r=s}return bte(r)}async function Nae(e,t){const n=t?.maxExportWidth??2160,a=t?.minScale??1,r=t?.fullContent!==!1,o=t?.backgroundColor??yte(e),s=r?e.scrollWidth:e.getBoundingClientRect().width;let i=Math.min(1,n/Math.max(1,s));i=Math.max(a,i);const l={scale:i,embedFonts:t?.embedFonts??!1,backgroundColor:o},c=await N5(e,l);try{const u=await wte(c,n,o);return md(u)}catch{}try{const u=await c.toBlob({type:"png",backgroundColor:o});return md(u)}catch{}try{const u=await c.toPng({backgroundColor:o}),h=await(await fetch(u.src)).blob();return md(h)}catch(u){throw console.error("captureAsImageData: all export paths failed",u),new Error("Failed to capture image data")}}const jv=1800;function _te(e){return e.initializationFailed?{mountShell:!1,showCover:!0,showError:!0,showWaitingIndicator:!1}:{mountShell:e.runtimeReady,showCover:!e.runtimeReady||e.waitForAnimation&&!e.animationComplete,showError:!1,showWaitingIndicator:e.animationComplete&&!e.runtimeReady}}const kte={class:"startup-loader__stage"},Cte={class:"startup-loader__brand"},Ste={class:"startup-loader__logo-wrap","aria-hidden":"true"},xte=["src"],Ate={key:0,class:"startup-loader__waiting","aria-hidden":"true"},Pte=Z({__name:"StartupLoading",props:{waiting:{type:Boolean,default:!1}},emits:["complete"],setup(e,{emit:t}){const n=t,a={"--startup-animation-duration":`${jv}ms`};let r=null,o=!1;function s(){o||(o=!0,r!==null&&(window.clearTimeout(r),r=null),n("complete"))}return Xe(()=>{if(window.matchMedia?.("(prefers-reduced-motion: reduce)").matches){queueMicrotask(s);return}r=window.setTimeout(s,jv+100)}),Ga(()=>{r!==null&&window.clearTimeout(r)}),(i,l)=>(C(),ye("div",{class:"startup-loader flex h-full w-full items-center justify-center overflow-hidden",style:a,role:"status","aria-live":"polite","aria-label":"ChatLab"},[ke("div",kte,[l[0]||(l[0]=ke("div",{class:"startup-loader__glow","aria-hidden":"true"},null,-1)),ke("div",Cte,[ke("span",Ste,[ke("img",{src:f(Af),alt:"",class:"startup-loader__logo"},null,8,xte)]),ke("span",{class:"startup-loader__name text-gray-900 dark:text-white",onAnimationend:s}," ChatLab ",32)]),e.waiting?(C(),ye("span",Ate)):ve("",!0)])]))}}),Wv=fu(Pte,[["__scopeId","data-v-6d3c2519"]]),rr="chatlab_auth_token",yl="chatlab_remember_device",A5=as("auth",()=>{const e=V(sessionStorage.getItem(rr)||localStorage.getItem(rr)||""),t=V(!!localStorage.getItem(yl)),n=V(!1),a=S(()=>!!e.value);function r(){n.value=!0}function o(c,u){e.value=c,t.value=u,r(),u?(localStorage.setItem(rr,c),localStorage.setItem(yl,"1"),sessionStorage.removeItem(rr)):(sessionStorage.setItem(rr,c),localStorage.removeItem(rr),localStorage.removeItem(yl))}function s(){e.value="",t.value=!1,sessionStorage.removeItem(rr),localStorage.removeItem(rr),localStorage.removeItem(yl)}function i(){s(),n.value=!1}function l(){s(),n.value=!0}return{token:e,requiresAuth:n,rememberDevice:t,isAuthenticated:a,login:o,logout:i,requireLogin:l,markRequiresAuth:r}});function Mte(e){const t=new Map;for(const n of e)for(const a of n.sessions)t.set(`${n.id}:${a.id}`,JSON.stringify([a.targetSessionId,a.lastPullAt,a.lastStatus,a.lastNewMessages]));return t}function Tte(e){const t=e.schedule??((l,c)=>setInterval(l,c)),n=e.cancelSchedule??(l=>clearInterval(l));let a=null,r=!1,o=!1;const s=async()=>{if(!(r||o)){o=!0;try{const l=await e.loadDataSources();if(r)return;const c=Mte(l);a&&l.some(d=>d.sessions.some(h=>{const p=`${d.id}:${h.id}`;return h.lastStatus!=="idle"&&a?.get(p)!==c.get(p)}))&&await e.onResult(),a=c}catch{}finally{o=!1}}};s();const i=t(()=>{s()},e.intervalMs??5e3);return()=>{r=!0,n(i)}}function Ite(){const e=()=>()=>{};async function t(n,a){const r=await pr(n,a);if(!r.ok){const s=await r.json().catch(()=>({})),i=typeof s.error=="string"?s.error:typeof s.error=="object"&&s.error&&"message"in s.error&&typeof s.error.message=="string"?s.error.message:`HTTP ${r.status}`;throw new Error(i)}return r.json()}return{getConfig:()=>t("/_web/automation/config"),getStatus:async()=>({running:!0,port:null,startedAt:null,error:null}),setEnabled:async()=>({running:!0,port:null,startedAt:null,error:null}),setPort:async()=>({running:!0,port:null,startedAt:null,error:null}),regenerateToken:async()=>t("/_web/automation/config"),onStartupError:e,getDataSources:()=>t("/_web/automation/data-sources"),addDataSource:n=>t("/_web/automation/data-sources",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify(n)}),updateDataSource:(n,a)=>t(`/_web/automation/data-sources/${n}`,{method:"PATCH",headers:{"Content-Type":"application/json"},body:JSON.stringify(a)}),deleteDataSource:async n=>(await t(`/_web/automation/data-sources/${n}`,{method:"DELETE"})).success,addImportSessions:(n,a)=>t(`/_web/automation/data-sources/${n}/sessions`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({sessions:a})}),removeImportSession:async(n,a,r)=>(await t(`/_web/automation/data-sources/${n}/sessions/${a}${r?"?deleteData=true":""}`,{method:"DELETE"})).success,triggerPull:(n,a)=>t(`/_web/automation/data-sources/${n}/pull`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({sessionId:a})}),triggerPullAll:n=>t(`/_web/automation/data-sources/${n}/pull-all`,{method:"POST"}),onPullResult:n=>Tte({loadDataSources:()=>t("/_web/automation/data-sources"),onResult:n}),fetchRemoteSessions:async(n,a,r)=>{const o=new URLSearchParams({baseUrl:n});return a&&o.set("token",a),r?.keyword&&o.set("keyword",r.keyword),r?.limit&&o.set("limit",String(r.limit)),r?.cursor&&o.set("cursor",r.cursor),t(`/_web/automation/remote-sessions?${o}`)}}}function Dte(){return Ite()}const Ete=as("apiServer",()=>{const e=Dte(),t=V({enabled:!1,port:3110,token:"",createdAt:0}),n=V({running:!1,port:null,startedAt:null,error:null}),a=V(!1),r=V([]),o=V(new Set),s=V(new Map),i=S(()=>!0),l=S(()=>n.value.running),c=S(()=>!!n.value.error),u=S(()=>n.value.error?.startsWith("PORT_IN_USE")??!1),d=S(()=>!Ia);async function h(){try{t.value=await e.getConfig()}catch(L){console.error("[ApiServerStore] Failed to fetch config:",L)}}async function p(){try{n.value=await e.getStatus()}catch(L){console.error("[ApiServerStore] Failed to fetch status:",L)}}async function m(){await Promise.all([h(),p(),w()])}async function v(L){a.value=!0;try{n.value=await e.setEnabled(L),await h()}catch(ee){console.error("[ApiServerStore] Failed to set enabled:",ee)}finally{a.value=!1}}async function y(L){a.value=!0;try{n.value=await e.setPort(L),await h()}catch(ee){console.error("[ApiServerStore] Failed to set port:",ee)}finally{a.value=!1}}async function g(){try{t.value=await e.regenerateToken()}catch(L){console.error("[ApiServerStore] Failed to regenerate token:",L)}}function b(){return e.onStartupError(L=>{n.value.error=L.error,n.value.running=!1})}async function w(){try{r.value=await e.getDataSources()}catch(L){console.error("[ApiServerStore] Failed to fetch data sources:",L)}}async function _(L){try{const ee=await e.addDataSource(L);return r.value.push(ee),ee}catch(ee){return console.error("[ApiServerStore] Failed to add data source:",ee),null}}async function A(L,ee){try{const K=await e.updateDataSource(L,ee);if(K){const ce=r.value.findIndex(ue=>ue.id===L);ce!==-1&&(r.value[ce]=K)}return K}catch(K){return console.error("[ApiServerStore] Failed to update data source:",K),null}}async function P(L){try{const ee=await e.deleteDataSource(L);return ee&&(r.value=r.value.filter(K=>K.id!==L)),ee}catch(ee){return console.error("[ApiServerStore] Failed to delete data source:",ee),!1}}async function k(L,ee){try{const K=await e.addImportSessions(L,ee);if(await w(),K.length>0){for(const ce of K)o.value.add(ce.id);o.value=new Set(o.value),T(L,K.map(ce=>ce.id))}return K}catch(K){return console.error("[ApiServerStore] Failed to add import sessions:",K),[]}}function T(L,ee,K=24,ce=5e3){let ue=0;const be=setInterval(async()=>{ue++,await Promise.all([w(),I()]);const ge=r.value.find(me=>me.id===L);if(ee.filter(me=>{const X=ge?.sessions.find(le=>le.id===me);return X&&X.lastStatus==="idle"}).length===0||ue>=K){for(const me of ee)o.value.delete(me),s.value.delete(me);o.value=new Set(o.value),s.value=new Map(s.value),clearInterval(be)}},ce)}async function I(){if(d.value)try{const L=await pr("/_web/automation/sync-progress").then(K=>K.json()),ee=new Map;for(const K of L)K.done||ee.set(K.sessionId,{current:K.current,pages:K.pages});s.value=ee}catch{}}async function Y(L,ee,K){try{const ce=await e.removeImportSession(L,ee,K);return ce&&(await w(),K&&Wr().loadSessions()),ce}catch(ce){return console.error("[ApiServerStore] Failed to remove import session:",ce),!1}}async function Q(L,ee){const K=ee||L;o.value.add(K),o.value=new Set(o.value);const ce=te();try{const ue=await e.triggerPull(L,ee);return await w(),await Wr().loadSessions(),D(L,ee),ue}catch(ue){return console.error("[ApiServerStore] Failed to trigger pull:",ue),{success:!1,error:String(ue)}}finally{clearInterval(ce),o.value.delete(K),o.value=new Set(o.value),s.value.delete(K),s.value=new Map(s.value)}}async function z(L){const ee=r.value.find(ue=>ue.id===L),K=[L,...ee?.sessions.map(ue=>ue.id)??[]];for(const ue of K)o.value.add(ue);o.value=new Set(o.value);const ce=te();try{const ue=await e.triggerPullAll(L);return await w(),await Wr().loadSessions(),D(L),ue}catch(ue){return console.error("[ApiServerStore] Failed to trigger pull all:",ue),{success:!1,error:String(ue)}}finally{clearInterval(ce);for(const ue of K)o.value.delete(ue),s.value.delete(ue);o.value=new Set(o.value),s.value=new Map(s.value)}}function te(){return setInterval(I,3e3)}function O(){return e.onPullResult(async()=>{await w(),await Wr().loadSessions(),q()})}function D(L,ee){const K=r.value.find(ge=>ge.id===L);if(!K)return;const ce=ee?K.sessions.filter(ge=>ge.id===ee&&ge.targetSessionId):K.sessions.filter(ge=>ge.targetSessionId),ue=Ev(),be=Co();for(const ge of ce)ue.generateIncremental(ge.targetSessionId,be).catch(()=>{})}function q(){const L=Ev(),ee=Co();for(const K of r.value)for(const ce of K.sessions)ce.targetSessionId&&L.generateIncremental(ce.targetSessionId,ee).catch(()=>{})}async function G(L,ee,K){return e.fetchRemoteSessions(L,ee,K)}return{config:t,status:n,loading:a,dataSources:r,pullingIds:o,syncProgress:s,available:i,isRunning:l,hasError:c,isPortInUse:u,isWebMode:d,fetchConfig:h,fetchStatus:p,refresh:m,setEnabled:v,setPort:y,regenerateToken:g,listenStartupError:b,fetchDataSources:w,addDataSource:_,updateDataSource:A,deleteDataSource:P,addImportSessions:k,removeImportSession:Y,triggerPull:Q,triggerPullAll:z,listenPullResult:O,fetchRemoteSessions:G}}),th=new Map,yi=new Map;let Mf=null,Qr=null,yr={},bi=!1,Tf=!1,If=null;function $te(){if(Qr=null,!Mf||!bi||Object.keys(yr).length===0)return;const e={...yr};yr={},Mf(e).catch(t=>{console.warn("[BackendPersist] Save failed:",t)})}function Df(){Qr&&clearTimeout(Qr),Qr=setTimeout($te,500)}function P5(e,t){if(t.serialize){Object.assign(yr,t.serialize(e)),Df();return}const n={};for(const a of t.pick)n[a]=JSON.parse(JSON.stringify(e[a]));t.key?yr[t.key]=n:Object.assign(yr,n),Df()}function Rte(e){Mf=e,bi&&Object.keys(yr).length>0&&Df()}function M5(e,t,n,a){const r=n.key?a[n.key]:a;if(!r||typeof r!="object")return;const o=yi.get(e),s={};for(const i of n.pick){if(o?.has(i))continue;const l=r[i];l!==void 0&&(s[i]=l)}Object.keys(s).length>0&&t.$patch(s)}function T5(){Qr&&clearTimeout(Qr),Qr=null,yr={},bi=!0;for(const e of yi.keys()){const t=th.get(e);t&&P5(t.store.$state,t.config)}yi.clear()}function Lte(e){If=e,Tf=!0;try{for(const[t,{store:n,config:a}]of th)M5(t,n,a,e)}finally{Tf=!1}T5()}function Ote(){T5()}const Nte=({store:e,options:t})=>{const n=t.backendPersist;if(n){th.set(e.$id,{store:e,config:n}),bi&&If&&M5(e.$id,e,n,If);for(const a of n.pick)Se(()=>e.$state[a],()=>{if(!Tf){if(!bi){const r=yi.get(e.$id)??new Set;r.add(a),yi.set(e.$id,r)}P5(e.$state,n)}},{deep:!0,flush:"sync"})}};let Uv=!1,nh=!1,So=!1;const xo=new Set;function Fte(){return i5().getPresentationPreferences()}function qte(e){c5(e.uiConfig);const t=Hi();e.uiConfig.default_session_tab&&(t.defaultSessionTab=e.uiConfig.default_session_tab),e.locale&&t.$patch({locale:e.locale})}function bl(e){nh||xo.add(e)}function I5(){nh=!0,xo.clear()}function Bte(e,t){const n=Hi(),a=xf(),r={default_session_tab:xo.has("default_session_tab")?n.defaultSessionTab:e.uiConfig.default_session_tab,session_gap_threshold:xo.has("session_gap_threshold")?a.session_gap_threshold:e.uiConfig.session_gap_threshold,summary_strategy:xo.has("summary_strategy")?a.summary_strategy:e.uiConfig.summary_strategy};So=!0;try{c5(r),n.defaultSessionTab=r.default_session_tab,t&&e.locale&&!xo.has("locale")&&n.$patch({locale:e.locale})}finally{So=!1,I5()}}async function Gv(e={}){if(Uv)return;Uv=!0;const t=i5();nh=e.presentationInitialized===!0,Hte(t);const n=e.presentationInitialized?Promise.resolve():(e.presentationPromise??t.getPresentationPreferences()).then(r=>Bte(r,e.hydratePresentationLocale!==!1)).catch(r=>{console.warn("[PreferencesSync] Failed to load presentation preferences, keeping current state:",r),I5()});await t.getPreferences().then(r=>{Lte(r)}).catch(r=>{console.warn("[PreferencesSync] Failed to load preferences, keeping current state:",r),Ote()}),Rte(r=>t.savePreferences(r)),await n}function Hte(e){const t=Hi();Se(()=>t.defaultSessionTab,n=>{So||(bl("default_session_tab"),KZ({default_session_tab:n}),e.saveUiConfig({default_session_tab:n}).catch(a=>{console.warn("[PreferencesSync] Failed to save ui config:",a)}))},{flush:"sync"}),Se(()=>xf().session_gap_threshold,n=>{So||(bl("session_gap_threshold"),e.saveUiConfig({session_gap_threshold:n}).catch(a=>{console.warn("[PreferencesSync] Failed to save ui config:",a)}))},{flush:"sync"}),Se(()=>xf().summary_strategy,n=>{So||(bl("summary_strategy"),e.saveUiConfig({summary_strategy:n}).catch(a=>{console.warn("[PreferencesSync] Failed to save ui config:",a)}))},{flush:"sync"}),Se(()=>t.locale,n=>{So||(bl("locale"),e.saveLocale(n).catch(a=>{console.warn("[PreferencesSync] Failed to save locale:",a)}))},{flush:"sync"})}const Ds=new Map,Yv=1e4;function Vte(e){const t=Date.now(),n=Ds.get(e);if(n!==void 0&&t-n<Yv)return!1;if(Ds.set(e,t),Ds.size>100)for(const[a,r]of Ds)t-r>=Yv&&Ds.delete(a);return!0}function yc(e,t){if(!e)return;const n=`${e}::${t?.split(`
36
- `)[1]??""}`;Vte(n)&&Yp("/logs/report",{level:"error",message:e,stack:t,url:typeof location<"u"?location.href:void 0}).catch(()=>{})}function zte(){window.addEventListener("error",e=>{yc(e.message||String(e.error),e.error?.stack)}),window.addEventListener("unhandledrejection",e=>{const t=e.reason;yc(t instanceof Error?t.message:`Unhandled rejection: ${String(t)}`,t instanceof Error?t.stack:void 0)})}async function jte(e,t){const n=String(e.currentRoute.value.meta.insightPageId??"");if(!n)return;const a=yee(t.getResolvedLayout());if(a.some(({page:o})=>o.id===n))return;const r=a[0];await e.replace(r?{name:r.page.routeName}:{name:"home"})}function Wte(e){return Array.isArray(e)?e.join(","):e}function Ute(e){const t=e.matched[0]?.path??"";if(!t)return"";const n=Object.entries(e.params).filter(([a])=>t.includes(`:${a}`)).sort(([a],[r])=>a.localeCompare(r)).map(([,a])=>Wte(a));return n.length>0?`${t}:${n.join("&")}`:t}function Gte(e,t){!e||e.open===t||(t?e.showModal():e.close())}function Yte(e){const t=V(!e),n=S(()=>e),a=S(()=>!e);function r(){t.value=!0}function o(i){}function s(i){Gte(i,n.value)}return{isBootstrapMaskVisible:n,isApplicationInteractive:a,markLockScreenReady:r,syncBootstrapMask:s,updateLockState:o}}class Kte extends Error{constructor(t){super(`Missing browser capabilities: ${t.join(", ")}`),this.missing=t,this.name="UnsupportedBrowserCapabilitiesError"}}class Xte extends Error{constructor(t){super(`Presentation bootstrap timed out after ${t}ms`),this.name="PresentationTimeoutError"}}async function Jte(e,t){let n;try{return await Promise.race([e(),new Promise((a,r)=>{n=setTimeout(()=>r(new Xte(t)),t)})])}finally{n&&clearTimeout(n)}}async function Qte(e){await e.initializeServices();let t=null;try{const r=await Jte(e.loadPresentation,e.presentationTimeoutMs??1e3);await e.applyPresentation(r)}catch(r){if(t=r,e.deferAfterPresentationError?.(r))return{presentationError:t,background:Promise.resolve([]),stopListeningForPullResults:null,deferred:!0};await e.applyPresentationFallback()}await e.initializeShell?.();const n=e.listenForPullResults?.()??null,a=Promise.allSettled(e.initializeBackground.map(r=>r.run())).then(r=>r.flatMap((o,s)=>o.status==="rejected"?[{name:e.initializeBackground[s].name,error:o.reason}]:[]));return{presentationError:t,background:a,stopListeningForPullResults:n,deferred:!1}}async function Zte(e){await e.initializeServices();let t=null;if(e.capabilities.usesBrowserRuntime){if(!e.checkBrowserCapabilities)throw new Error("Browser capability checker is required");if(t=await e.checkBrowserCapabilities(),!t.supported)throw new Kte(t.missing)}if(e.capabilities.loadsPreferences){if(!e.initializeLocale)throw new Error("Locale initialization port is required");await e.initializePreferences(),await e.initializeLocale()}if(e.capabilities.initializesLlm){if(!e.initializeLlm)throw new Error("LLM initialization port is required");await e.initializeLlm()}await e.loadSessions();let n=null;if(e.capabilities.listensForPullResults){if(!e.listenForPullResults)throw new Error("Pull result listener is required");n=e.listenForPullResults()}return{browserCapabilities:t,stopListeningForPullResults:n}}const D5="chatlab:startup:",ene=["renderer-module-ready","vue-mount-start","vue-mounted","services-ready","runtime-ready","preferences-settled","locale-settled","llm-settled","sessions-settled","shell-mounted","startup-animation-complete","splash-hidden","shell-interactive","startup-settled"];function Es(e){return Math.round(e*100)/100}function tne(e,t){return e.getEntriesByName(`${D5}${t}`,"mark")[0]?.startTime}function nne(e){return e.getEntriesByType("navigation")[0]}function Tt(e,t=performance){const n=`${D5}${e}`;t.getEntriesByName(n,"mark").length>0||t.mark(n)}function Kv(e){return new Promise(t=>{requestAnimationFrame(()=>{requestAnimationFrame(()=>{Tt(e),t()})})})}function ane(e=performance){const t=nne(e),n={};for(const a of ene){const r=tne(e,a);r!==void 0&&(n[a]=Es(r))}return{navigation:{responseEnd:t?Es(t.responseEnd):null,domInteractive:t?Es(t.domInteractive):null,domContentLoaded:t?Es(t.domContentLoadedEventEnd):null,loadEventEnd:t?.loadEventEnd?Es(t.loadEventEnd):null},phases:n}}function rne(e=window){e.__CHATLAB_STARTUP_PERFORMANCE__={snapshot:()=>ane()}}const one=Symbol("startup-page-reveal-ready"),Xv="chatlab:startup-presentation-shown:v1";function sne(e=sessionStorage){try{return e.getItem(Xv)!==null?!1:(e.setItem(Xv,"1"),!0)}catch{return!0}}const ine={class:"relative flex h-screen w-full overflow-hidden bg-page-bg dark:bg-page-dark"},lne=["inert","aria-hidden"],cne={key:0,class:"absolute inset-x-3 top-3 z-30 rounded-lg border border-amber-200 bg-amber-50 px-3 py-2 text-xs text-amber-800 shadow-sm dark:border-amber-800 dark:bg-amber-950/80 dark:text-amber-200",role:"status"},une={key:0,class:"absolute inset-0 z-40 flex items-center justify-center bg-page-bg dark:bg-page-dark"},dne={key:0,class:"flex flex-col items-center justify-center gap-3 text-center"},fne={class:"text-sm text-gray-700 dark:text-gray-300"},pne={class:"max-w-sm text-xs text-gray-500"},hne=["aria-label"],mne=Z({__name:"App",setup(e){const n=uo(()=>Ke(()=>import("./DataDirCleanupNotice-BYIiR58J.js"),__vite__mapDeps([14,15,1]))),a=()=>Ke(()=>import("./ScreenCaptureModal-D4r9ixKh.js"),__vite__mapDeps([16,1])),r=()=>Ke(()=>import("./SettingsModal-DBZucuf6.js"),__vite__mapDeps([17,18,19,20,21,22,23,24,25,26,1,27])),o=()=>Ke(()=>import("./ChatRecordDrawer-DRhztqLG.js"),__vite__mapDeps([28,29,30,31,32,22,23,33,1])),s=()=>Ke(()=>import("./GlobalTaskBar-BZS_h0zC.js"),__vite__mapDeps([34,35,25,36,1,37])),i=()=>Ke(()=>import("./DebugToolsPanel-BIHA6jw4.js"),__vite__mapDeps([38,18,19,1])),l=uo(a),c=uo(r),u=uo(o),d=uo(s),h=uo(i),{t:p}=io(),m=Wr(),v=hu(),y=Hi(),g=cte(),b=A5(),w=Ete(),_=jc(),A=sp(),{controller:P}=g5(),{isBootstrapMaskVisible:k,isApplicationInteractive:T,markLockScreenReady:I,syncBootstrapMask:Y,updateLockState:Q}=Yte(Ia),z=S(()=>hr.requiresAuth&&_.name==="login"),te=S(()=>Ute(_)),O=V(!1),D=V(!0),q=V(!1),G=V(!1),L=V(!1),ee=V(null),K=V(!1),ce=V(v.showSettings),ue=V(null),be=w2({emitAuto:!0,initialValue:"light"}),ge={delayDuration:100},we={position:"top-center",progress:!1,duration:2e3},me=S(()=>_te({runtimeReady:O.value,animationComplete:q.value,waitForAnimation:D.value,initializationFailed:ee.value!==null}));An(one,br(G));let X=!1,le=null,se=null,pe=!1;function Pe(){pe||(pe=!0,D.value=sne())}z.value||Pe();function $(){if(se)return;const N=()=>{se=null,Promise.allSettled([r(),o(),a(),i()])};if(typeof window.requestIdleCallback=="function"){const oe=window.requestIdleCallback(N,{timeout:3e3});se=()=>window.cancelIdleCallback(oe);return}const H=window.setTimeout(N,1e3);se=()=>window.clearTimeout(H)}async function B(){}async function J(){try{await jte(A,P)}catch(N){const H=N instanceof Error?N:new Error(String(N));yc(`Navigation layout route fallback failed: ${H.message}`,H.stack)}}async function W(){if(!(X||O.value)){X=!0,ee.value=null,K.value=!1;try{if(!hr.usesBrowserRuntime){let H,oe=!1;const ae=await Qte({initializeServices:async()=>{await Dv(),Tt("services-ready")},loadPresentation:()=>(H??=Fte(),H),applyPresentation:async F=>{qte(F),oe=!0,await y.initLocale(),Tt("locale-settled")},applyPresentationFallback:async()=>{await y.initLocale(),Tt("locale-settled")},deferAfterPresentationError:()=>hr.requiresAuth&&b.requiresAuth&&!b.isAuthenticated,initializeShell:B,initializeBackground:[{name:"preferences",run:async()=>{try{await Gv({presentationInitialized:oe,presentationPromise:H,hydratePresentationLocale:!1})}finally{Tt("preferences-settled")}}},{name:"llm",run:async()=>{try{await g.init()}finally{Tt("llm-settled")}}},{name:"sessions",run:async()=>{try{await m.loadSessions({throwOnError:!0})}finally{Tt("sessions-settled")}}}],listenForPullResults:()=>w.listenPullResult()});if(ae.deferred)return;le??=ae.stopListeningForPullResults,K.value=ae.presentationError!==null,Tt("runtime-ready"),O.value=!0,ae.background.then(F=>{F.forEach(({name:re,error:he})=>console.error(`[Startup] Background task failed: ${re}`,he)),Tt("startup-settled")}),ao().trackDailyActive(y.locale).catch(()=>{});return}const N=await Zte({capabilities:hr,initializeServices:async()=>{await Dv(),Tt("services-ready")},initializePreferences:async()=>{await Gv(),Tt("preferences-settled")},initializeLocale:async()=>{await y.initLocale(),Tt("locale-settled")},initializeLlm:async()=>{await g.init(),Tt("llm-settled")},loadSessions:async()=>{await m.loadSessions(),Tt("sessions-settled")},listenForPullResults:()=>w.listenPullResult()});le??=N.stopListeningForPullResults,Tt("runtime-ready"),O.value=!0,Tt("startup-settled"),ao().trackDailyActive(y.locale).catch(()=>{})}catch(N){console.error("App initialization failed:",N),ee.value=N instanceof Error?N.message:String(N)}finally{X=!1}}}function U(){q.value=!0,Tt("startup-animation-complete")}function ne(){G.value=!0}async function x(){L.value=!0,Tt("splash-hidden"),await Ve(),await Kv("shell-interactive")}function M(N){if(!L.value||!T.value)return;if((navigator.platform.toLowerCase().includes("mac")?N.metaKey:N.ctrlKey)&&N.key===","){N.preventDefault(),N.stopPropagation(),v.showSettings||v.openSettings();return}}return Se(z,N=>{N||(Pe(),W())}),Se(()=>v.showSettings,N=>{N&&(ce.value=!0)}),Se(O,async N=>{N&&(await Ve(),await Kv("shell-mounted"),$())}),Se(be,N=>{},{immediate:!0}),Se(k,()=>Y(ue.value),{flush:"post"}),Se(()=>_.meta.insightPageId,()=>{J()}),Xe(async()=>{Y(ue.value),window.addEventListener("keydown",M);const N=navigator.platform.toLowerCase();if(N.includes("win")?document.documentElement.classList.add("platform-windows"):N.includes("linux")&&document.documentElement.classList.add("platform-linux"),hr.usesCliWebHttp){let H=!1;a5({getToken:()=>b.token,on401:()=>{if(H||A.currentRoute.value.name==="login")return;H=!0,b.requireLogin();const ae=A.currentRoute.value.fullPath,F=ae.startsWith("/login")?"/":ae;A.push({name:"login",query:{redirect:F}}).finally(()=>{H=!1})}})}z.value||(Pe(),await W())}),_n(()=>{window.removeEventListener("keydown",M),le?.(),le=null,se?.(),se=null}),(N,H)=>{const oe=Vw("router-view"),ae=jE;return C(),R(ae,{tooltip:ge,toaster:we},{default:E(()=>[z.value?(C(),R(oe,{key:0})):(C(),ye(ze,{key:1},[ie(wR),ke("div",ine,[me.value.mountShell?(C(),ye("div",{key:0,class:"flex min-w-0 flex-1 overflow-hidden",inert:!L.value,"aria-hidden":L.value?void 0:"true"},[ie(lte,{"backend-features":!0}),ke("main",{class:Ae(["relative flex-1 overflow-hidden",{"startup-page-entering":G.value}])},[K.value?(C(),ye("div",cne,Me(f(p)("common.presentationFallback")),1)):ve("",!0),ie(oe,null,{default:E(({Component:F})=>[ie(Ah,{name:"page-fade",mode:"out-in"},{default:E(()=>[(C(),R($n(F),{key:te.value}))]),_:2},1024)]),_:1})],2),f(y).debugMode?(C(),R(f(h),{key:0})):ve("",!0)],8,lne)):ve("",!0),ie(Ah,{name:"startup-cover",onBeforeLeave:ne,onAfterLeave:x},{default:E(()=>[me.value.showCover?(C(),ye("div",une,[me.value.showError?(C(),ye("div",dne,[ie(f(d5),{name:"i-heroicons-exclamation-triangle",class:"h-8 w-8 text-red-500"}),ke("p",fne,Me(f(p)("common.initFailed")),1),ke("p",pne,Me(ee.value),1),ie(f(lee),{size:"sm",variant:"soft",onClick:W},{default:E(()=>[qe(Me(f(p)("common.retry")),1)]),_:1})])):(C(),R(f(Wv),{key:1,waiting:me.value.showWaitingIndicator,onComplete:U},null,8,["waiting"]))])):ve("",!0)]),_:1})])],64)),f(v).showScreenCaptureModal||f(v).screenCaptureImage?(C(),R(f(l),{key:2,open:f(v).showScreenCaptureModal,"image-data":f(v).screenCaptureImage,"onUpdate:open":H[0]||(H[0]=F=>F?null:f(v).closeScreenCaptureModal())},null,8,["open","image-data"])):ve("",!0),ce.value?(C(),R(f(c),{key:3})):ve("",!0),f(v).showChatRecordDrawer||f(v).chatRecordQuery?(C(),R(f(u),{key:4})):ve("",!0),ie(f(d)),!z.value&&L.value?(C(),R(f(n),{key:5})):ve("",!0),f(Ia)?(C(),R(f(null),{key:6,onReady:f(I),onLockStateChange:f(Q)},null,8,["onReady","onLockStateChange"])):ve("",!0),f(Ia)?(C(),R(Vf,{key:7,to:"body"},[ke("dialog",{ref_key:"bootstrapDialogRef",ref:ue,"aria-label":f(p)("common.initializing"),"aria-busy":"true",class:"pointer-events-auto m-0 h-screen max-h-none w-screen max-w-none border-0 bg-white p-0 outline-none backdrop:bg-white dark:bg-page-dark dark:backdrop:bg-page-dark",tabindex:"-1",onCancel:H[1]||(H[1]=Vt(()=>{},["prevent"]))},[f(k)?(C(),R(f(Wv),{key:0})):ve("",!0)],40,hne)])):ve("",!0)]),_:1})}}}),gne=fu(mne,[["__scopeId","data-v-1544edb3"]]);function vne(e){return e.requiresAuth?e.isPublic?null:e.authRequired&&!e.isAuthenticated?{name:"login",query:{redirect:e.fullPath}}:null:e.routeName==="login"?{name:"home"}:null}const Jv=`plugins.${J2}`,yne={title:"About Me",messages:"Messages",monthLabel:"Month {month}",noData:"No analyzable data in this time range",noTextData:"No text messages in this time range","calendar.less":"Less","calendar.more":"More","overview.yearTitle":"Me in {year}","overview.recentTitle":"My Last 12 Months","overview.narrative.messagesPrefix":"Over the year, you sent","overview.narrative.messagesSuffix":"messages, averaging","overview.narrative.dailySuffix":"per day.","overview.narrative.activePrefix":"You left messages on","overview.narrative.activeMiddle":"days and directly interacted with","overview.narrative.contactsSuffix":"people.","overview.activity":"Activity Calendar","overview.activeRate":"{rate}% of days","overview.keyMetrics":"Key Metrics","overview.perDay":"Daily average","overview.messagesCount":"{count} messages","overview.dailyContacts":"Contacts per day","overview.peakMonth":"Most active month","overview.peakDay":"Most active day","overview.longestActiveStreak":"Longest active streak","overview.consecutiveActiveDays":"Consecutive days with sent messages","overview.monthlyTrend.messages":"Messages","overview.monthlyTrend.contacts":"Direct contacts","overview.textRatio":"Text message share","sections.overview":"Annual overview","sections.overviewDescription":"Non-system messages I sent each month; missing months count as zero","sections.directContactsDescription":"Unique people who directly interacted with me each month; missing months count as zero","sections.activityDescription":"Daily sent messages; darker days were more active","sections.messageTypes":"Message types","sections.messageTypesDescription":"Only messages sent by me","sections.textLength":"Text length","length.median":"Median","status.loading":"Loading annual summary…","status.computingProgress":"Analyzing conversations {processed}/{total}…","status.updating":"Data changed; this result is being refreshed in the background","status.failed":"Annual summary calculation failed. You can retry it.","status.coverage":"Analyzed {analyzed} of {total} conversations","status.ownerIssues":"{count} conversations still need a valid “me” identity","status.noDataWithLatest":"No analyzable data for {year}; the latest available year is {latestYear}","actions.retry":"Retry","actions.switchYear":"View {year}"},bne={title:"关于我",messages:"消息数",monthLabel:"{month}月",noData:"当前时间范围内暂无可分析数据",noTextData:"当前时间范围内没有文本消息","calendar.less":"少","calendar.more":"多","overview.yearTitle":"{year} 年的我","overview.recentTitle":"最近一年的我","overview.narrative.messagesPrefix":"这一年,你发出了","overview.narrative.messagesSuffix":"条消息,平均每天","overview.narrative.dailySuffix":"条。","overview.narrative.activePrefix":"有","overview.narrative.activeMiddle":"天留下了你的消息,并与","overview.narrative.contactsSuffix":"人有过直接互动。","overview.activity":"活跃日历","overview.activeRate":"覆盖 {rate}% 日期","overview.keyMetrics":"关键指标","overview.perDay":"平均每天","overview.messagesCount":"{count} 条消息","overview.dailyContacts":"日均互动人数","overview.peakMonth":"最活跃月份","overview.peakDay":"最活跃日期","overview.longestActiveStreak":"最长连续活跃","overview.consecutiveActiveDays":"连续发出消息的天数","overview.monthlyTrend.messages":"消息量","overview.monthlyTrend.contacts":"互动人数","overview.textRatio":"文字消息占比","sections.overview":"年度概览","sections.overviewDescription":"按月统计我发出的非系统消息,缺失月份按零计算","sections.directContactsDescription":"按月统计与我发生直接互动的去重人数,缺失月份按零计算","sections.activityDescription":"每天发出的消息数量,颜色越深代表当天越活跃","sections.messageTypes":"消息类型构成","sections.messageTypesDescription":"仅统计我发出的消息","sections.textLength":"文本长度分布","length.median":"中位数","status.loading":"正在读取年度总结…","status.computingProgress":"正在分析会话 {processed}/{total}…","status.updating":"数据发生变化,正在后台更新当前结果","status.failed":"年度总结计算失败,可以重试","status.coverage":"已分析 {analyzed}/{total} 个会话","status.ownerIssues":"{count} 个会话尚未正确设置“我是谁”","status.noDataWithLatest":"{year} 年暂无可分析数据,最近有效数据为 {latestYear} 年","actions.retry":"重试","actions.switchYear":"查看 {year} 年"},wne={title:"關於我",messages:"訊息數",monthLabel:"{month}月",noData:"目前時間範圍內沒有可分析資料",noTextData:"目前時間範圍內沒有文字訊息","calendar.less":"少","calendar.more":"多","overview.yearTitle":"{year} 年的我","overview.recentTitle":"最近一年的我","overview.narrative.messagesPrefix":"這一年,你發出了","overview.narrative.messagesSuffix":"條訊息,平均每天","overview.narrative.dailySuffix":"條。","overview.narrative.activePrefix":"有","overview.narrative.activeMiddle":"天留下了你的訊息,並與","overview.narrative.contactsSuffix":"人有過直接互動。","overview.activity":"活躍日曆","overview.activeRate":"涵蓋 {rate}% 日期","overview.keyMetrics":"關鍵指標","overview.perDay":"平均每天","overview.messagesCount":"{count} 條訊息","overview.dailyContacts":"日均互動人數","overview.peakMonth":"最活躍月份","overview.peakDay":"最活躍日期","overview.longestActiveStreak":"最長連續活躍","overview.consecutiveActiveDays":"連續發出訊息的天數","overview.monthlyTrend.messages":"訊息量","overview.monthlyTrend.contacts":"互動人數","overview.textRatio":"文字訊息占比","sections.overview":"年度概覽","sections.overviewDescription":"按月統計我發出的非系統訊息,缺少月份以零計算","sections.directContactsDescription":"按月統計與我直接互動的去重人數,缺少月份以零計算","sections.activityDescription":"每天發出的訊息數量,顏色越深代表當天越活躍","sections.messageTypes":"訊息類型構成","sections.messageTypesDescription":"只統計我發出的訊息","sections.textLength":"文字長度分佈","length.median":"中位數","status.loading":"正在讀取年度總結…","status.computingProgress":"正在分析會話 {processed}/{total}…","status.updating":"資料已變更,正在背景更新目前結果","status.failed":"年度總結計算失敗,可以重試","status.coverage":"已分析 {analyzed}/{total} 個會話","status.ownerIssues":"{count} 個會話尚未正確設定「我是誰」","status.noDataWithLatest":"{year} 年沒有可分析資料,最近有效資料為 {latestYear} 年","actions.retry":"重試","actions.switchYear":"查看 {year} 年"},_ne={title:"私について",messages:"メッセージ数",monthLabel:"{month}月",noData:"この期間には分析可能なデータがありません",noTextData:"この期間にはテキストメッセージがありません","calendar.less":"少ない","calendar.more":"多い","overview.yearTitle":"{year} 年の私","overview.recentTitle":"直近1年間の私","overview.narrative.messagesPrefix":"この一年で","overview.narrative.messagesSuffix":"件のメッセージを送り、1日平均","overview.narrative.dailySuffix":"件でした。","overview.narrative.activePrefix":"メッセージを送った日は","overview.narrative.activeMiddle":"日で、直接交流した相手は","overview.narrative.contactsSuffix":"人でした。","overview.activity":"アクティビティカレンダー","overview.activeRate":"日数の {rate}%","overview.keyMetrics":"主要指標","overview.perDay":"1日平均","overview.messagesCount":"{count} 件のメッセージ","overview.dailyContacts":"1日平均交流人数","overview.peakMonth":"最も活発な月","overview.peakDay":"最も活発な日","overview.longestActiveStreak":"最長連続アクティブ","overview.consecutiveActiveDays":"連続してメッセージを送信した日数","overview.monthlyTrend.messages":"メッセージ数","overview.monthlyTrend.contacts":"交流人数","overview.textRatio":"テキストメッセージ比率","sections.overview":"年間概要","sections.overviewDescription":"自分が送信したシステム以外のメッセージを月別に集計します","sections.directContactsDescription":"自分と直接交流した人数を月ごとに重複を除いて集計します","sections.activityDescription":"日別の送信数。色が濃いほど活発な日です","sections.messageTypes":"メッセージタイプ","sections.messageTypesDescription":"自分が送信したメッセージのみを集計します","sections.textLength":"テキスト長の分布","length.median":"中央値","status.loading":"年間まとめを読み込んでいます…","status.computingProgress":"会話を分析しています {processed}/{total}…","status.updating":"データが変更されたため、バックグラウンドで更新しています","status.failed":"年間まとめの計算に失敗しました。再試行できます。","status.coverage":"{total} 件中 {analyzed} 件の会話を分析済み","status.ownerIssues":"{count} 件の会話で「自分」の設定が必要です","status.noDataWithLatest":"{year} 年の分析データはありません。最新の有効年は {latestYear} 年です","actions.retry":"再試行","actions.switchYear":"{year} 年を見る"},kne={"en-US":yne,"zh-CN":bne,"zh-TW":wne,"ja-JP":_ne},Cne={id:J2,platforms:["electron","cli-web"],activate(e){e.locale.register(Jv,kne),e.pages.register({id:"annual-summary",path:"annual-summary",routeName:"insight-annual-summary",title:{namespace:Jv,key:"title"},icon:"i-lucide-calendar-range",default:!0,filters:{time:{allowedModes:["recent","year"],allowedRecentDays:[365],defaultMode:"year"}},view:{load:()=>Ke(()=>import("./index-BYZF1ngN.js"),__vite__mapDeps([39,40,41,42,43,44,45,46,47,1,48]))}}),e.navigation.register({id:"insight.annual-summary",pageId:"annual-summary",order:10})}},Sne={plugin:Cne,installUiServices:async e=>{const{registerAnnualSummaryUiService:t}=await Ke(async()=>{const{registerAnnualSummaryUiService:n}=await import("./host-CWsAWKgy.js");return{registerAnnualSummaryUiService:n}},__vite__mapDeps([49,41,1]));return t(e)}},Qv=`plugins.${Q2}`,xne={title:"Time Investment",yearTitle:"Time invested in {year}",recentTitle:"Time invested in the last year",estimateNote:"Estimated from message timing with overlapping conversations merged. It shows engagement trends, not exact screen time.","narrative.totalPrefix":"Over the year, your estimated chat investment was","narrative.totalSuffix":".","narrative.daysPrefix":"It was spread across","narrative.daysMiddle":"active days, averaging","narrative.daysSuffix":"per active day.",loading:"Loading time investment…",failed:"Time investment calculation failed. You can retry it.",privateChat:"Private chats",groupChat:"Group chats",shareOfTotal:"{share}% of total investment",peakDay:"Highest-investment day",peakWeekday:"Highest daily-average weekday",monthlyTitle:"Monthly trend",monthlyDescription:"Estimated chat investment by month, in hours",rhythmTitle:"Investment rhythm",rhythmDescription:"Average daily investment by weekday",topDaysTitle:"Highest-investment days",rankingTitle:"Where the time went",rankingDescription:"Shows the 10 private and group chats with the most invested time; overlapping time is divided evenly between conversations",rankingCount:"{count} chats","duration.lessThanMinute":"Less than 1 min","duration.minutes":"{count} min","duration.hours":"{count} hr","duration.hoursMinutes":"{hours} hr {minutes} min",monthLabel:"Month {month}",noData:"No analyzable data in this time range",keyMetrics:"Key Metrics","status.computingProgress":"Analyzing conversations {processed}/{total}…","status.updating":"Data changed; this result is being refreshed in the background","status.coverage":"Analyzed {analyzed} of {total} conversations","status.ownerIssues":"{count} conversations still need a valid “me” identity","status.noAnalyzableOwner":"No conversation has a usable identity yet. Set who “me” is in a conversation first.","status.noDataWithLatest":"No analyzable data for {year}; the latest available year is {latestYear}","actions.retry":"Retry","actions.switchYear":"View {year}"},Ane={title:"时间投入",yearTitle:"{year} 年的时间投入",recentTitle:"最近一年的时间投入",estimateNote:"根据消息时间间隔估算,并合并多个会话的重叠时段;它反映聊天投入趋势,不是精确的屏幕使用时间。","narrative.totalPrefix":"这一年,你预估在聊天中投入了","narrative.totalSuffix":"。","narrative.daysPrefix":"这些时间分布在","narrative.daysMiddle":"个活跃日,活跃日平均投入","narrative.daysSuffix":"。",loading:"正在读取时间投入…",failed:"时间投入计算失败,可以重试",privateChat:"私聊",groupChat:"群聊",shareOfTotal:"占全部投入 {share}%",peakDay:"最高投入日",peakWeekday:"日均投入最高星期",monthlyTitle:"月度趋势",monthlyDescription:"每月预估聊天投入,纵轴单位为小时",rhythmTitle:"投入节奏",rhythmDescription:"比较一周中各天的平均投入",topDaysTitle:"高投入日",rankingTitle:"时间都去了哪里",rankingDescription:"私聊与群聊分别展示投入时间最多的 10 个会话;重叠时间会在会话之间平均分配",rankingCount:"{count} 个会话","duration.lessThanMinute":"不足 1 分钟","duration.minutes":"{count} 分钟","duration.hours":"{count} 小时","duration.hoursMinutes":"{hours} 小时 {minutes} 分",monthLabel:"{month}月",noData:"当前时间范围内暂无可分析数据",keyMetrics:"关键指标","status.computingProgress":"正在分析会话 {processed}/{total}…","status.updating":"数据发生变化,正在后台更新当前结果","status.coverage":"已分析 {analyzed}/{total} 个会话","status.ownerIssues":"{count} 个会话尚未正确设置“我是谁”","status.noAnalyzableOwner":"还没有可用于足迹分析的身份,请先在会话中设置“我是谁”","status.noDataWithLatest":"{year} 年暂无可分析数据,最近有效数据为 {latestYear} 年","actions.retry":"重试","actions.switchYear":"查看 {year} 年"},Pne={title:"時間投入",yearTitle:"{year} 年的時間投入",recentTitle:"最近一年的時間投入",estimateNote:"根據訊息時間間隔估算,並合併多個會話的重疊時段;它反映聊天投入趨勢,不是精確的螢幕使用時間。","narrative.totalPrefix":"這一年,你預估在聊天中投入了","narrative.totalSuffix":"。","narrative.daysPrefix":"這些時間分佈在","narrative.daysMiddle":"個活躍日,活躍日平均投入","narrative.daysSuffix":"。",loading:"正在讀取時間投入…",failed:"時間投入計算失敗,可以重試",privateChat:"私聊",groupChat:"群聊",shareOfTotal:"佔全部投入 {share}%",peakDay:"最高投入日",peakWeekday:"日均投入最高星期",monthlyTitle:"月度趨勢",monthlyDescription:"每月預估聊天投入,縱軸單位為小時",rhythmTitle:"投入節奏",rhythmDescription:"比較一週中每天的平均投入",topDaysTitle:"高投入日",rankingTitle:"時間都去了哪裡",rankingDescription:"私聊與群聊分別展示投入時間最多的 10 個會話;重疊時間會在會話之間平均分配",rankingCount:"{count} 個會話","duration.lessThanMinute":"不足 1 分鐘","duration.minutes":"{count} 分鐘","duration.hours":"{count} 小時","duration.hoursMinutes":"{hours} 小時 {minutes} 分",monthLabel:"{month}月",noData:"目前時間範圍內沒有可分析資料",keyMetrics:"關鍵指標","status.computingProgress":"正在分析會話 {processed}/{total}…","status.updating":"資料已變更,正在背景更新目前結果","status.coverage":"已分析 {analyzed}/{total} 個會話","status.ownerIssues":"{count} 個會話尚未正確設定「我是誰」","status.noAnalyzableOwner":"尚無可用於足跡分析的身分,請先在會話中設定「我是誰」","status.noDataWithLatest":"{year} 年沒有可分析資料,最近有效資料為 {latestYear} 年","actions.retry":"重試","actions.switchYear":"查看 {year} 年"},Mne={title:"時間の投入",yearTitle:"{year} 年の時間投入",recentTitle:"直近1年間の時間投入",estimateNote:"メッセージの時間間隔から推定し、複数の会話で重なる時間帯を統合しています。正確な画面使用時間ではなく、会話への投入傾向を示します。","narrative.totalPrefix":"この一年の推定チャット投入時間は","narrative.totalSuffix":"でした。","narrative.daysPrefix":"投入は","narrative.daysMiddle":"日間にわたり、アクティブ日の平均は","narrative.daysSuffix":"でした。",loading:"時間投入を読み込んでいます…",failed:"時間投入の計算に失敗しました。再試行できます。",privateChat:"個別チャット",groupChat:"グループチャット",shareOfTotal:"全体の {share}%",peakDay:"投入時間が最も長い日",peakWeekday:"1日平均が最も長い曜日",monthlyTitle:"月別推移",monthlyDescription:"月ごとの推定チャット投入時間。縦軸は時間です",rhythmTitle:"投入のリズム",rhythmDescription:"曜日別の1日平均投入時間",topDaysTitle:"投入時間が長い日",rankingTitle:"時間を使った会話",rankingDescription:"個別チャットとグループチャットで投入時間の多い上位10件を表示します。重なる時間は会話間で均等に配分されます",rankingCount:"{count} 件","duration.lessThanMinute":"1分未満","duration.minutes":"{count}分","duration.hours":"{count}時間","duration.hoursMinutes":"{hours}時間{minutes}分",monthLabel:"{month}月",noData:"この期間には分析可能なデータがありません",keyMetrics:"主要指標","status.computingProgress":"会話を分析しています {processed}/{total}…","status.updating":"データが変更されたため、バックグラウンドで更新しています","status.coverage":"{total} 件中 {analyzed} 件の会話を分析済み","status.ownerIssues":"{count} 件の会話で「自分」の設定が必要です","status.noAnalyzableOwner":"足跡の分析に使用できる本人情報がありません。先に会話で「自分」を設定してください。","status.noDataWithLatest":"{year} 年の分析データはありません。最新の有効年は {latestYear} 年です","actions.retry":"再試行","actions.switchYear":"{year} 年を見る"},Tne={"en-US":xne,"zh-CN":Ane,"zh-TW":Pne,"ja-JP":Mne},Ine={id:Q2,platforms:["electron","cli-web","web-wasm"],activate(e){e.locale.register(Qv,Tne),e.pages.register({id:"time-investment",path:"time-investment",routeName:"insight-time-investment",title:{namespace:Qv,key:"title"},icon:"i-lucide-clock-3",filters:{time:{allowedModes:["recent","year"],allowedRecentDays:[365],defaultMode:"year"}},view:{load:()=>Ke(()=>import("./index-D3AjvaOX.js"),__vite__mapDeps([50,40,46,43,44,45,51,47,52,1]))}}),e.navigation.register({id:"insight.time-investment",pageId:"time-investment",order:20})}},Dne={plugin:Ine,installUiServices:async e=>{const{registerTimeInvestmentUiService:t}=await Ke(async()=>{const{registerTimeInvestmentUiService:n}=await import("./host-D8zlA62K.js");return{registerTimeInvestmentUiService:n}},__vite__mapDeps([53,52,1]));t(e)}};class E5{constructor(){this.disposers=[],this.disposed=!1}add(t){if(this.disposed)throw t(),new Error("DisposableStore is already disposed");return this.disposers.push(t),t}dispose(){if(this.disposed)return;this.disposed=!0;const t=[];for(let n=this.disposers.length-1;n>=0;n--)try{this.disposers[n]?.()}catch(a){t.push(a)}if(this.disposers.length=0,t.length===1)throw t[0];if(t.length>1)throw new AggregateError(t,"Multiple plugin disposers failed")}}class Zv{constructor(){this.records=new Map}register(t,n){const a=n.id,r=this.records.get(a);if(r)throw new Error(`Contribution "${a}" is already registered by plugin "${r.owner}"`);const o={owner:t,value:n};return this.records.set(a,o),()=>{this.records.get(a)===o&&this.records.delete(a)}}get(t){return this.records.get(t)?.value}list(){return[...this.records.values()].map(({value:t})=>t)}}class Ene{constructor(t,n){this.platform=t,this.createContext=n,this.activePlugins=new Map}activate(t){if(!t.platforms.includes(this.platform))return!1;if(this.activePlugins.has(t.id))throw new Error(`Plugin "${t.id}" is already active`);const n=new E5;try{const a=t.activate(this.createContext(t.id,n));return a&&n.add(a),this.activePlugins.set(t.id,n),!0}catch(a){try{n.dispose()}catch(r){throw new AggregateError([a,r],`Plugin "${t.id}" activation and rollback failed`)}throw a}}isActive(t){return this.activePlugins.has(t)}addDisposer(t,n){const a=this.activePlugins.get(t);if(!a)throw n(),new Error(`Plugin "${t}" is not active`);a.add(n)}dispose(t){const n=this.activePlugins.get(t);n&&(this.activePlugins.delete(t),n.dispose())}disposeAll(){const t=[...this.activePlugins.keys()],n=[];for(let a=t.length-1;a>=0;a--)try{this.dispose(t[a])}catch(r){n.push(r)}if(n.length===1)throw n[0];if(n.length>1)throw new AggregateError(n,"Multiple plugins failed to dispose")}}function $ne(e){const t=e.filters?.time;if(!t)return e;const n=[...new Set(t.allowedModes)];if(n.length===0)throw new Error(`Insight page "${e.id}" must allow at least one time mode`);if(!n.includes(t.defaultMode))throw new Error(`Insight page "${e.id}" has a default time mode that is not allowed`);if(t.allowedRecentDays?.some(r=>!Number.isInteger(r)||r<0))throw new Error(`Insight page "${e.id}" has invalid recent-day options`);const a=t.allowedRecentDays?[...new Set(t.allowedRecentDays)]:void 0;return{...e,filters:{...e.filters,time:{...t,allowedModes:n,allowedRecentDays:a}}}}class Rne{constructor(t,n,a,r=[]){this.platform=t,this.ui=n,this.localeRegistry=a,this.reservedPages=r,this.pages=new Zv,this.navigation=new Zv,this.host=new Ene(t,(o,s)=>this.createPluginContext(o,s)),this.validateContributions()}activate(t){if(!this.host.activate(t))return!1;try{return this.validateContributions(),!0}catch(a){throw this.host.dispose(t.id),a}}activateAll(t){for(const n of t)this.activate(n)}isActive(t){return this.host.isActive(t)}addDisposer(t,n){this.host.addDisposer(t,n)}getPage(t){return this.pages.get(t)}listPages(){return this.pages.list()}listNavigation(){return this.navigation.list().map(t=>{const n=this.pages.get(t.pageId);if(!n)throw new Error(`Insight navigation "${t.id}" targets unknown page "${t.pageId}"`);return{entry:t,page:n}}).sort((t,n)=>t.entry.order-n.entry.order||t.entry.id.localeCompare(n.entry.id))}getDefaultPage(){return this.pages.list().find(t=>t.default)}dispose(t){this.host.dispose(t)}disposeAll(){this.host.disposeAll()}createPluginContext(t,n){return{ui:this.ui,locale:{register:(a,r)=>n.add(this.localeRegistry.register(t,a,r))},pages:{register:a=>{const r=`plugins.${t}`;if(a.title.namespace!==r)throw new Error(`Plugin "${t}" page "${a.id}" must use locale namespace "${r}"`);return n.add(this.pages.register(t,$ne(a)))}},navigation:{register:a=>n.add(this.navigation.register(t,a))}}}validateContributions(){const t=new Set,n=new Set,a=new Set;let r;for(const s of this.reservedPages){if(t.has(s.id))throw new Error(`Duplicate host Insight page id "${s.id}"`);if(n.has(s.routeName))throw new Error(`Duplicate host Insight route name "${s.routeName}"`);if(a.has(s.path))throw new Error(`Duplicate host Insight route path "${s.path}"`);t.add(s.id),n.add(s.routeName),a.add(s.path)}for(const s of this.pages.list()){if(t.has(s.id))throw new Error(`Insight page id "${s.id}" conflicts with a host page`);if(n.has(s.routeName))throw new Error(`Duplicate Insight route name "${s.routeName}"`);if(a.has(s.path))throw new Error(`Duplicate Insight route path "${s.path}"`);if(t.add(s.id),n.add(s.routeName),a.add(s.path),!!s.default){if(r)throw new Error(`Insight default pages conflict: "${r}" and "${s.id}"`);r=s.id}}const o=new Set;for(const s of this.navigation.list()){if(!this.pages.get(s.pageId))throw new Error(`Insight navigation "${s.id}" targets unknown page "${s.pageId}"`);if(o.has(s.pageId))throw new Error(`Insight page "${s.pageId}" has multiple default navigation entries`);o.add(s.pageId)}if(r&&!o.has(r))throw new Error(`Default Insight page "${r}" must have a navigation entry`)}}function Lne(e,t,n,a=[],r=[]){const o=new Rne(e,t,n,r);return o.activateAll(a),o}function One(e,t,n,a,r=[]){return Lne(e,t,n,a.map(({plugin:o})=>o),r)}async function Nne(e,t,n){for(const a of e){if(!t.isActive(a.plugin.id)||!a.installUiServices)continue;const r=new E5;try{await a.installUiServices({register:(o,s)=>r.add(n.register(o,s))}),t.addDisposer(a.plugin.id,()=>r.dispose())}catch(o){const s=[];try{r.dispose()}catch(i){s.push(i)}try{t.dispose(a.plugin.id)}catch(i){s.push(i)}throw s.length>0?new AggregateError([o,...s],`Insight plugin "${a.plugin.id}" rollback failed`):o}}}function Fae(e){return{id:e}}class $5{constructor(){this.services=new Map}register(t,n){if(this.services.has(t.id))throw new Error(`UI host service "${t.id}" is already registered`);return this.services.set(t.id,n),()=>{this.services.get(t.id)===n&&this.services.delete(t.id)}}get(t){if(!this.services.has(t.id))throw new Error(`UI host service "${t.id}" is unavailable`);return this.services.get(t.id)}}class Fne{constructor(){this.snapshot={},this.listeners=new Set,this.timeCommands=null}getSnapshot(){return this.snapshot}subscribe(t){return this.listeners.add(t),()=>this.listeners.delete(t)}updateSnapshot(t){qne(this.snapshot,t)||(this.snapshot=t,this.listeners.forEach(n=>n()))}attachTimeCommands(t){if(this.timeCommands)throw new Error("Insight time commands are already attached");return this.timeCommands=t,()=>{this.timeCommands===t&&(this.timeCommands=null)}}setAvailableTimeYears(t){if(!this.timeCommands)throw new Error("Insight time commands are unavailable");this.timeCommands.setAvailableYears(t)}switchTimeToYear(t){if(!this.timeCommands)throw new Error("Insight time commands are unavailable");this.timeCommands.switchToYear(t)}}function qne(e,t){const n=e.time,a=t.time;return!n||!a?n===a:n.mode===a.mode&&n.startTs===a.startTs&&n.endTs===a.endTs&&n.isFullRange===a.isFullRange&&n.recentDays===a.recentDays&&n.year===a.year&&n.quarterYear===a.quarterYear&&n.quarter===a.quarter&&n.customStart===a.customStart&&n.customEnd===a.customEnd}const R5="en-US",Bne=["en-US","zh-CN","zh-TW","ja-JP"];class Hne{constructor(t){this.adapter=t,this.registrations=new Map,this.listeners=new Set,this.revision=0,this.stopAdapterSubscription=t.subscribe(()=>this.publish())}getSnapshot(){return{locale:this.adapter.getLocale(),revision:this.revision}}subscribe(t){return this.listeners.add(t),()=>this.listeners.delete(t)}register(t,n,a){const r=`plugins.${t}`;if(n!==r)throw new Error(`Plugin "${t}" must register locale namespace "${r}"`);const o=this.registrations.get(n);if(o)throw new Error(`Locale namespace "${n}" is already registered by plugin "${o.ownerId}"`);Vne(n,a);const s={ownerId:t,messages:a};return this.registrations.set(n,s),this.publish(),()=>{this.registrations.get(n)===s&&(this.registrations.delete(n),this.publish())}}translate(t,n){return typeof t=="string"||!t.namespace?this.adapter.translate(typeof t=="string"?t:t.key,n):this.translatePlugin(t.namespace,t.key,n)}bind(t){return(n,a)=>this.translatePlugin(t,n,a)}formatDate(t,n){return new Intl.DateTimeFormat(this.adapter.getLocale(),n).format(t)}formatNumber(t,n){return new Intl.NumberFormat(this.adapter.getLocale(),n).format(t)}dispose(){this.stopAdapterSubscription(),this.registrations.clear(),this.listeners.clear()}translatePlugin(t,n,a){if(n.startsWith("common."))return this.adapter.translate(n,a);const r=this.registrations.get(t);if(!r)return n;const o=this.adapter.getLocale(),s=r.messages[o][n]??r.messages[R5][n];return s===void 0?n:zne(s,a)}publish(){this.revision++;for(const t of this.listeners)t()}}function Vne(e,t){const n=Object.keys(t[R5]).sort();for(const a of Bne){const r=Object.keys(t[a]).sort();if(!(r.length===n.length&&r.every((o,s)=>o===n[s])))throw new Error(`Locale namespace "${e}" must define the same keys for every supported locale (${a})`)}}function zne(e,t){return t?e.replace(/\{([^{}]+)\}/g,(n,a)=>{const r=t[a];return r==null?n:String(r)}):e}function jne(e){return Se(qi.global.locale,e)}function Wne(){return mc()}function Une(e={}){return{locale:new Hne({getLocale:Wne,subscribe:jne,translate:(n,a)=>qi.global.t(n,a??{})}),insightScope:e.insightScope??new Fne,services:e.services??new $5}}const ey=hr.platform,L5=[Sne,Dne],O5=new $5,Ef=Une({services:O5}),Ys=One(ey,Ef,Ef.locale,L5,vee(ey)),Gne=new wee(Ys);function Yne(e=Ys){const t=e.getDefaultPage()?.routeName??gee(e)[0]?.routeName;return[{path:"/login",name:"login",component:()=>Ke(()=>import("./index-a7CT8DQm.js"),__vite__mapDeps([54,55,22,23,19,21,46,1])),meta:{public:!0}},{path:"/",name:"home",component:()=>Ke(()=>import("./index-CPR3jdC2.js"),__vite__mapDeps([56,36,24,18,19,57,58,30,15,1,55,22,23,21,59]))},{path:"/group-chat/:id",name:"group-chat",component:()=>Ke(()=>import("./index-DTn9htw-.js"),__vite__mapDeps([60,61,40,62,63,22,32,55,23,19,21,30,58,15,1,25,35,36,46,29,31,33,24,18,42,43,44,45,51,47,64,65,66,67,68,26,57,69,20,70]))},{path:"/private-chat/:id",name:"private-chat",component:()=>Ke(()=>import("./index-onwNShRw.js"),__vite__mapDeps([71,61,40,62,63,22,32,55,23,19,21,30,58,15,1,25,35,36,46,29,31,33,24,18,42,43,44,45,51,47,64,65,66,67,68,26,57,69,72]))},{path:"/insight",component:()=>Ke(()=>import("./index-DBSMWAJ0.js"),__vite__mapDeps([73,67,68,65,63,22,32,24,18,19,31,26,1,74])),redirect:t?{name:t}:void 0,children:[...mee(e),{path:"relationship-changes",name:"insight-relationship-changes",component:()=>Ke(()=>import("./index-v6DlL4ue.js"),__vite__mapDeps([75,1])),meta:{insightPageId:"relationship-changes"}}]},{path:"/people",component:()=>Ke(()=>import("./index-DV_rWxcH.js"),__vite__mapDeps([76,67,68,26,77,1,78])),redirect:{name:"people-contacts"},children:[{path:"contacts",name:"people-contacts",component:()=>Ke(()=>import("./index-DAitScUA.js"),__vite__mapDeps([79,18,19,30,46,40,62,77,1,80]))},{path:"relationships",name:"people-relationships",component:()=>Ke(()=>import("./index-BGd4ZfhO.js").then(n=>n.i),__vite__mapDeps([81,18,19,30,40,77,82]))}]}]}const Kne=Yne(),gu=ux({routes:Kne,history:zS()});gu.beforeEach((e,t,n)=>{const a=A5(),r=vne({requiresAuth:hr.requiresAuth,routeName:e.name,fullPath:e.fullPath,isPublic:e.meta.public===!0,authRequired:a.requiresAuth,isAuthenticated:a.isAuthenticated});return r?n(r):n()});gu.afterEach(e=>{document.body.id=`page-${e.name}`});function Xne(){requestIdleCallback(()=>{Ke(()=>import("./index-DTn9htw-.js"),__vite__mapDeps([60,61,40,62,63,22,32,55,23,19,21,30,58,15,1,25,35,36,46,29,31,33,24,18,42,43,44,45,51,47,64,65,66,67,68,26,57,69,20,70])),Ke(()=>import("./index-onwNShRw.js"),__vite__mapDeps([71,61,40,62,63,22,32,55,23,19,21,30,58,15,1,25,35,36,46,29,31,33,24,18,42,43,44,45,51,47,64,65,66,67,68,26,57,69,72])),Ke(()=>import("./index-DAitScUA.js"),__vite__mapDeps([79,18,19,30,46,40,62,77,1,80]))})}gu.isReady().then(Xne);async function Jne(e={}){zte(),await e.beforeMount?.();const t=ak(gne);t.config.errorHandler=(a,r,o)=>{const s=a instanceof Error?a:new Error(String(a));console.error(s,o),yc(s.message,s.stack)};const n=i3();n.use(v3),n.use(Nte),t.use(n),t.use(gu),t.use(vx),t.use(qi),_ee(t,Gne),await Nne(L5,Ys,O5),t.onUnmount(()=>{Ys.disposeAll(),Ef.locale.dispose()}),pee(t,Ys),Tt("vue-mount-start"),t.mount("#app"),Tt("vue-mounted")}rne();Tt("renderer-module-ready");Jne().catch(e=>{console.error("ChatLab startup failed",e)});export{Ec as $,uae as A,dae as B,Ve as C,K7 as D,rt as E,ze as F,at as G,An as H,hu as I,Se as J,Nr as K,Fae as L,hr as M,o5 as N,EZ as O,fe as P,RZ as Q,T1 as R,Yp as S,$Z as T,IZ as U,DZ as V,pr as W,lo as X,yc as Y,i0 as Z,d5 as _,Z as a,Oe as a$,dee as a0,Cd as a1,hD as a2,io as a3,cn as a4,gr as a5,qe as a6,kR as a7,Hi as a8,bae as a9,ao as aA,Ia as aB,jc as aC,Ah as aD,kv as aE,cx as aF,Eae as aG,Zne as aH,aae as aI,Ze as aJ,FZ as aK,aL,kt as aM,gt as aN,Ln as aO,Vt as aP,pt as aQ,Cr as aR,ca as aS,ME as aT,Uy as aU,jw as aV,Fi as aW,It as aX,z7 as aY,B7 as aZ,$e as a_,bZ as aa,gae as ab,Kc as ac,bn as ad,fu as ae,bt as af,w2 as ag,h5 as ah,Lae as ai,hee as aj,Ga as ak,Qv as al,yn as am,UR as an,Wr as ao,IR as ap,fa as aq,Fn as ar,Hc as as,su as at,zt as au,vt as av,AZ as aw,sp as ax,A5 as ay,ai as az,j as b,X4 as b$,iu as b0,Wf as b1,ed as b2,Zu as b3,G2 as b4,hae as b5,pae as b6,AE as b7,$g as b8,Rae as b9,u2 as bA,l2 as bB,Qt as bC,os as bD,pa as bE,rs as bF,cae as bG,xae as bH,Sae as bI,kae as bJ,_ae as bK,Cae as bL,wae as bM,YZ as bN,Aae as bO,i5 as bP,qi as bQ,Lv as bR,cte as bS,cd as bT,Wc as bU,Ri as bV,Ja as bW,tu as bX,nb as bY,cp as bZ,_p as b_,g5 as ba,gee as bb,Fne as bc,et as bd,rL as be,zR as bf,Gp as bg,Co as bh,Ete as bi,yae as bj,ip as bk,ap as bl,Za as bm,u5 as bn,lee as bo,$v as bp,Oae as bq,uo as br,Ke as bs,Jv as bt,Mae as bu,Ka as bv,Ly as bw,oae as bx,f1 as by,jP as bz,R as c,qt as c0,Cp as c1,Ei as c2,S7 as c3,nu as c4,Nn as c5,Vf as c6,I1 as c7,$t as c8,cs as c9,a7 as cA,Mt as cB,vae as cC,mae as cD,PR as cE,eae as cF,Tae as cG,Nae as cH,u1 as cI,Tw as cJ,tae as cK,ts as cL,bd as cM,iae as cN,G7 as cO,Q4 as cP,Va as cQ,sae as cR,Fm as cS,MZ as cT,d1 as cU,XC as cV,rae as cW,Pae as cX,Dae as cY,Li as ca,Gy as cb,kE as cc,lae as cd,Un as ce,KC as cf,JC as cg,On as ch,Kt as ci,c1 as cj,Y3 as ck,ls as cl,Qa as cm,$ae as cn,RE as co,KZ as cp,Ev as cq,Iae as cr,fee as cs,hl as ct,nae as cu,one as cv,Af as cw,Y4 as cx,cg as cy,$7 as cz,as as d,f as e,S as f,hn as g,ye as h,ke as i,en as j,$n as k,ve as l,de as m,Ae as n,C as o,Me as p,fae as q,V as r,Mn as s,He as t,Ee as u,$i as v,E as w,Xe as x,_n as y,ie as z};