hermes-web-ui 0.4.5 → 0.4.7

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 (182) hide show
  1. package/README.md +33 -25
  2. package/dist/client/assets/{Add-DnSsGBZy.js → Add-kQWqsiFL.js} +1 -1
  3. package/dist/client/assets/{Button-6kn5x8wB.js → Button-CYfnxZGL.js} +1 -1
  4. package/dist/client/assets/ChannelsView-D7-c-TzX.js +1 -0
  5. package/dist/client/assets/ChatView-BGRD1dj9.css +1 -0
  6. package/dist/client/assets/ChatView-pE3oYV9V.js +5 -0
  7. package/dist/client/assets/{Close--rdg4fyH.js → Close-KtP3JjXR.js} +1 -1
  8. package/dist/client/assets/{Dropdown-C3W_MZAx.js → Dropdown-BTBREaY0.js} +1 -1
  9. package/dist/client/assets/{Empty-CO5atRZx.js → Empty-BAcqsGZi.js} +1 -1
  10. package/dist/client/assets/{FilesView-D_IAXsWt.js → FilesView-N-PS2NIw.js} +7 -7
  11. package/dist/client/assets/{FormItem-cCAlzrYv.js → FormItem-Cc8qgWls.js} +1 -1
  12. package/dist/client/assets/{GatewaysView-B7jVPJm1.js → GatewaysView-KYqN3OIu.js} +1 -1
  13. package/dist/client/assets/{GroupChatView-CMYjNyhW.js → GroupChatView-B3jR4-lV.js} +4 -5
  14. package/dist/client/assets/GroupChatView-CIvYG7gd.css +1 -0
  15. package/dist/client/assets/{Input-DOn-NDi-.js → Input-dIiSr6EM.js} +1 -1
  16. package/dist/client/assets/{InputNumber-CEwvr7we.js → InputNumber-DxP12ti-.js} +1 -1
  17. package/dist/client/assets/{JobsView-BVkx_mtz.js → JobsView-Dzwljeqw.js} +2 -2
  18. package/dist/client/assets/{LoginView-DOqEhm1e.js → LoginView-kpAmnFDK.js} +1 -1
  19. package/dist/client/assets/{LogsView-CckftzzR.js → LogsView-i0dk4VL9.js} +1 -1
  20. package/dist/client/assets/{MarkdownRenderer-WDZUw_r0.js → MarkdownRenderer-bm7e-MHu.js} +1 -1
  21. package/dist/client/assets/{MemoryView-9IrcgpHt.js → MemoryView-Cpvc-rhp.js} +1 -1
  22. package/dist/client/assets/{Modal-Ct66o3O5.js → Modal-Bnl1jpF4.js} +1 -1
  23. package/dist/client/assets/ModelsView-Z7OAOz6p.js +83 -0
  24. package/dist/client/assets/{ModelsView-F_q0SOew.css → ModelsView-ocu_HZQH.css} +1 -1
  25. package/dist/client/assets/{Popconfirm-DNWpYtil.js → Popconfirm-B0R5Gnxu.js} +1 -1
  26. package/dist/client/assets/{Popover-upoiJRFk.js → Popover-B_5YtxbH.js} +1 -1
  27. package/dist/client/assets/{ProfilesView-CUkMLIWp.js → ProfilesView-Bu2lYETi.js} +1 -1
  28. package/dist/client/assets/{Select-C96PU4NS.js → Select-BH-f48aR.js} +1 -1
  29. package/dist/client/assets/SettingRow-BYpLxDCJ.js +1 -0
  30. package/dist/client/assets/{SettingsView-C6M8z2mR.js → SettingsView-BWQkHKxC.js} +1 -1
  31. package/dist/client/assets/{SkillsView-wqPd5oak.js → SkillsView-CNUzcbbg.js} +1 -1
  32. package/dist/client/assets/Space-Bj2Rw-BX.js +1 -0
  33. package/dist/client/assets/{Spin-CNWMVtvF.js → Spin-DxvIMvuO.js} +1 -1
  34. package/dist/client/assets/{Suffix-BMy3yeNM.js → Suffix-CMjBYS-M.js} +1 -1
  35. package/dist/client/assets/{Switch-BIgwRax1.js → Switch-fjXC16ND.js} +1 -1
  36. package/dist/client/assets/{Tag-DNHVnryL.js → Tag-CaL1_r-M.js} +1 -1
  37. package/dist/client/assets/{TerminalView-D-ypEEEb.js → TerminalView-CJgDGCOW.js} +1 -1
  38. package/dist/client/assets/{Tooltip-MYN2D0HZ.js → Tooltip-DBXeTdKt.js} +1 -1
  39. package/dist/client/assets/{Upload-CyjCHVmT.js → Upload-xTC-D9ef.js} +1 -1
  40. package/dist/client/assets/{UsageView-Nuq5z2DT.js → UsageView-BIfPrphW.js} +1 -1
  41. package/dist/client/assets/{Warning-cHbjPxlH.js → Warning-IN0Uuhk7.js} +1 -1
  42. package/dist/client/assets/{_plugin-vue_export-helper-BA1W5EEO.js → _plugin-vue_export-helper-BluKv70e.js} +1 -1
  43. package/dist/client/assets/app-Cpxalf07.js +1 -0
  44. package/dist/client/assets/app-kp7W51g8.js +1 -0
  45. package/dist/client/assets/{auth-DKa161qW.js → auth-BBhO2bph.js} +1 -1
  46. package/dist/client/assets/{browser-BIv3pBug.js → browser-fXTO-ADn.js} +1 -1
  47. package/dist/client/assets/chat-xK8hffyU.js +6 -0
  48. package/dist/client/assets/composables-Bplts_4x.js +1 -0
  49. package/dist/client/assets/{cssMode-DuLfQ0R_.js → cssMode-DeVYnduG.js} +1 -1
  50. package/dist/client/assets/{fade-in-height-expand.cssr-CJZoRQPB.js → fade-in-height-expand.cssr-JVzf4rq2.js} +1 -1
  51. package/dist/client/assets/{fade-in.cssr-BvBFOzvO.js → fade-in.cssr-Br-J4Ht7.js} +1 -1
  52. package/dist/client/assets/{freemarker2-BJywvy-6.js → freemarker2-BtFqJqR7.js} +1 -1
  53. package/dist/client/assets/get-slot-ZTLxF1Hc.js +1 -0
  54. package/dist/client/assets/{handlebars-DqUpBxgH.js → handlebars-1Tr51oxk.js} +1 -1
  55. package/dist/client/assets/{html-DhH6WTBt.js → html-DE2hsIm_.js} +1 -1
  56. package/dist/client/assets/{htmlMode-H_gqdZ5h.js → htmlMode-Bzp959Bs.js} +1 -1
  57. package/dist/client/assets/index-BmcAcwpY.js +284 -0
  58. package/dist/client/assets/{javascript-05pIhd4Y.js → javascript-CyWWIMGP.js} +1 -1
  59. package/dist/client/assets/{jobs-kBilk6_x.js → jobs-BTyvome9.js} +1 -1
  60. package/dist/client/assets/jobs-BU4gTDEL.js +1 -0
  61. package/dist/client/assets/{jsonMode-BLdIcbxa.js → jsonMode-B-ik1UAc.js} +1 -1
  62. package/dist/client/assets/{light-D4vpAk8k.js → light-3oedpFOx.js} +1 -1
  63. package/dist/client/assets/{light-CNs4B0mO.js → light-B9x-BrGA.js} +1 -1
  64. package/dist/client/assets/{light-C2mxSkxV.js → light-CRfnoFUO.js} +1 -1
  65. package/dist/client/assets/{light-C4XaZN5a.js → light-DeZSycPi.js} +1 -1
  66. package/dist/client/assets/light-DvtfF85V.js +1 -0
  67. package/dist/client/assets/{light-OgGmbeuv.js → light-Jg6xTFTK.js} +1 -1
  68. package/dist/client/assets/{light-vSRhMiQi.js → light-MWkO8GJE.js} +1 -1
  69. package/dist/client/assets/{light-DalFWniD.js → light-TeRR8yfq.js} +1 -1
  70. package/dist/client/assets/{light-DCznx22W.js → light-o3MpoFnK.js} +1 -1
  71. package/dist/client/assets/{liquid-nqKfrf5r.js → liquid-tdX3X7Ra.js} +1 -1
  72. package/dist/client/assets/{lspLanguageFeatures-B95K-PCU.js → lspLanguageFeatures-KYQBWoHZ.js} +1 -1
  73. package/dist/client/assets/{mdx-_cBoTPvb.js → mdx-BlRD3xih.js} +1 -1
  74. package/dist/client/assets/{models-C0y2ql6-.js → models-CXnOaWYE.js} +1 -1
  75. package/dist/client/assets/{monaco.contribution-DRFiJmCN.js → monaco.contribution-DOWdUywe.js} +2 -2
  76. package/dist/client/assets/{pinia-DRC0gpqt.js → pinia-bdzJ4xO3.js} +1 -1
  77. package/dist/client/assets/{profiles-COfldPiC.js → profiles-BIPofxcL.js} +1 -1
  78. package/dist/client/assets/{python-CMbwnkAX.js → python-DQfKqboU.js} +1 -1
  79. package/dist/client/assets/{razor-Bsd_Kdo4.js → razor-C4KY5OcG.js} +1 -1
  80. package/dist/client/assets/{router-BDvjwA-_.js → router-CaAe9JO4.js} +2 -2
  81. package/dist/client/assets/{session-browser-prefs-LlrIrhBd.js → session-browser-prefs-D0kG2uKR.js} +1 -1
  82. package/dist/client/assets/{sessions-BUqqfXt4.js → sessions-BESRi9X7.js} +1 -1
  83. package/dist/client/assets/settings-BzZG6k1S.js +1 -0
  84. package/dist/client/assets/{skills-hi1CfGAH.js → skills-CGFLrxsf.js} +1 -1
  85. package/dist/client/assets/{tsMode-DA8Xxkyi.js → tsMode-1ygaF8Vq.js} +1 -1
  86. package/dist/client/assets/{typescript-CIa57MS_.js → typescript-KU_Ae9gz.js} +1 -1
  87. package/dist/client/assets/{use-message-x3IR-EsB.js → use-message-DON5YDCV.js} +1 -1
  88. package/dist/client/assets/{useTheme-DSy5LWpW.js → useTheme-B23hWWBa.js} +1 -1
  89. package/dist/client/assets/{workers-rtkNY4Ef.js → workers-8L0GeWov.js} +1 -1
  90. package/dist/client/assets/{xml-C900Nhri.js → xml-ODndbrSj.js} +1 -1
  91. package/dist/client/assets/{yaml-D3f4VH6B.js → yaml-EYXdrXAb.js} +1 -1
  92. package/dist/client/index.html +35 -34
  93. package/dist/server/index.js +86 -86
  94. package/dist/server/index.js.map +3 -3
  95. package/package.json +1 -1
  96. package/dist/client/assets/ChannelsView-BQaQ41b8.js +0 -1
  97. package/dist/client/assets/ChatView-CjCcr65D.css +0 -1
  98. package/dist/client/assets/ChatView-Crbl3WuM.js +0 -3
  99. package/dist/client/assets/GroupChatView-JzMP1lxD.css +0 -1
  100. package/dist/client/assets/ModelsView-blUeTbrG.js +0 -1
  101. package/dist/client/assets/SettingRow-DLje7tBG.js +0 -1
  102. package/dist/client/assets/Space-XC9pMFNY.js +0 -1
  103. package/dist/client/assets/app-CQp0_YLA.js +0 -1
  104. package/dist/client/assets/app-Cu9UcSB8.js +0 -1
  105. package/dist/client/assets/chat-COI--6cJ.js +0 -6
  106. package/dist/client/assets/composables-DNiaqO4T.js +0 -1
  107. package/dist/client/assets/index-BBxmX-_2.js +0 -284
  108. package/dist/client/assets/jobs-hrnPO3Z3.js +0 -1
  109. /package/dist/client/assets/{_common-DRFS3Rdv.js → _common-D50mkvNP.js} +0 -0
  110. /package/dist/client/assets/{_common-BeOkYc8W.js → _common-DhotgWjX.js} +0 -0
  111. /package/dist/client/assets/{abap-Df-gEVWb.js → abap-CDUJqvA6.js} +0 -0
  112. /package/dist/client/assets/{apex-D4IXZohp.js → apex-CWEU_7XW.js} +0 -0
  113. /package/dist/client/assets/{azcli-CN77gN_d.js → azcli-BcaYKJmi.js} +0 -0
  114. /package/dist/client/assets/{bat-CnFNk-3t.js → bat-BhQd7PfR.js} +0 -0
  115. /package/dist/client/assets/{bicep-BnYjLKZ4.js → bicep-PZEFjtNI.js} +0 -0
  116. /package/dist/client/assets/{cameligo-XD7EYiqO.js → cameligo-B9nYpmx9.js} +0 -0
  117. /package/dist/client/assets/{clipboard-B8wB3Hjs.js → clipboard-J87K68ES.js} +0 -0
  118. /package/dist/client/assets/{clojure-DpjDgW1G.js → clojure-8MYe-A2j.js} +0 -0
  119. /package/dist/client/assets/{coffee-BW_7D_dE.js → coffee-CFnNi2bT.js} +0 -0
  120. /package/dist/client/assets/{cpp-C6-G_6k8.js → cpp-5RI0Yfgt.js} +0 -0
  121. /package/dist/client/assets/{csharp-BmAH59Mw.js → csharp-1Qw0txp6.js} +0 -0
  122. /package/dist/client/assets/{csp-nX61Mw-a.js → csp-DrP2k-s8.js} +0 -0
  123. /package/dist/client/assets/{css-X8WCPi5X.js → css-DnhVIX7t.js} +0 -0
  124. /package/dist/client/assets/{cypher-C9JjAvBj.js → cypher-CTQPov7l.js} +0 -0
  125. /package/dist/client/assets/{dart-otsIL-QT.js → dart-DjpNZpls.js} +0 -0
  126. /package/dist/client/assets/{dockerfile-CNVj7U-V.js → dockerfile-DGJl7EjL.js} +0 -0
  127. /package/dist/client/assets/{ecl-B3EDYEFK.js → ecl-DYUFlOv2.js} +0 -0
  128. /package/dist/client/assets/{editor.api2-DXf3wf2_.js → editor.api2-788jlMfA.js} +0 -0
  129. /package/dist/client/assets/{elixir-CMal8e_r.js → elixir-BwwwM4_y.js} +0 -0
  130. /package/dist/client/assets/{flow9-rV1y2xFT.js → flow9-BvW_W-VC.js} +0 -0
  131. /package/dist/client/assets/{fsharp-XCCwFpkq.js → fsharp-C7r9szPx.js} +0 -0
  132. /package/dist/client/assets/{go-Btw_ViWn.js → go-BA5jThdX.js} +0 -0
  133. /package/dist/client/assets/{graphql-CSgWCUwG.js → graphql-RGOLagtt.js} +0 -0
  134. /package/dist/client/assets/{hcl-1CENPNFm.js → hcl-D34aQQCD.js} +0 -0
  135. /package/dist/client/assets/{ini-D09O0LOs.js → ini-fR9cBBqH.js} +0 -0
  136. /package/dist/client/assets/{java-CPrgL-wy.js → java-D2YzSukB.js} +0 -0
  137. /package/dist/client/assets/{julia-CQpmbUlp.js → julia-B6e-aUED.js} +0 -0
  138. /package/dist/client/assets/{kotlin-BGGKeeZO.js → kotlin-hTV4jNy9.js} +0 -0
  139. /package/dist/client/assets/{less-p9aZWk3L.js → less-Bg4b0QLk.js} +0 -0
  140. /package/dist/client/assets/{lexon-7S1mQAr6.js → lexon-VAGx23-U.js} +0 -0
  141. /package/dist/client/assets/{lua-C7HZa2v5.js → lua-BmavFdHm.js} +0 -0
  142. /package/dist/client/assets/{m3-Ci3yuQTB.js → m3-DjndQjEW.js} +0 -0
  143. /package/dist/client/assets/{markdown-BymjvgtX.js → markdown-Cu--Dwdc.js} +0 -0
  144. /package/dist/client/assets/{mips-ChPCBF7Q.js → mips-Dszpfgpy.js} +0 -0
  145. /package/dist/client/assets/{msdax-BMoGp2mf.js → msdax-C6OoejNA.js} +0 -0
  146. /package/dist/client/assets/{mysql-BzwRAIfG.js → mysql-C3Gwqq4n.js} +0 -0
  147. /package/dist/client/assets/{objective-c-DI7EqssW.js → objective-c-BO4F57MA.js} +0 -0
  148. /package/dist/client/assets/{pascal-CkP3cQvM.js → pascal-IE9bbExs.js} +0 -0
  149. /package/dist/client/assets/{pascaligo-DzzBpjkt.js → pascaligo-BxJge-mr.js} +0 -0
  150. /package/dist/client/assets/{perl-e4igJJsw.js → perl-rLVUrjqv.js} +0 -0
  151. /package/dist/client/assets/{pgsql-C2nbbU56.js → pgsql-Cd_sd98N.js} +0 -0
  152. /package/dist/client/assets/{php-AAuzfB3W.js → php-DEIXK2ZF.js} +0 -0
  153. /package/dist/client/assets/{pla-DvzjACL6.js → pla-D55LHImG.js} +0 -0
  154. /package/dist/client/assets/{postiats-DblfLbjV.js → postiats-BKBS-qox.js} +0 -0
  155. /package/dist/client/assets/{powerquery-B2h7C5sa.js → powerquery-IGzsITFg.js} +0 -0
  156. /package/dist/client/assets/{powershell-CAAsnHvT.js → powershell-CoBvcZSp.js} +0 -0
  157. /package/dist/client/assets/{protobuf-DOQ2cQrj.js → protobuf-BlibaSEc.js} +0 -0
  158. /package/dist/client/assets/{pug-CWMh3MAB.js → pug-Dw-J7AWh.js} +0 -0
  159. /package/dist/client/assets/{qsharp-BXVS9eA8.js → qsharp-0Qrk-UZa.js} +0 -0
  160. /package/dist/client/assets/{r-C_CGLjCP.js → r-CQ-juNYy.js} +0 -0
  161. /package/dist/client/assets/{redis-DgjOo74e.js → redis-DAFuH-dO.js} +0 -0
  162. /package/dist/client/assets/{redshift-DAuTUcwv.js → redshift-BNRZ05aC.js} +0 -0
  163. /package/dist/client/assets/{restructuredtext-BoRXofIx.js → restructuredtext-Ca2uIozs.js} +0 -0
  164. /package/dist/client/assets/{ruby-D90h3Udf.js → ruby-CQLq9T_K.js} +0 -0
  165. /package/dist/client/assets/{rust-C0GlvIk0.js → rust-D7w2wjcX.js} +0 -0
  166. /package/dist/client/assets/{sb-C_gEkONb.js → sb-DwX0WHbZ.js} +0 -0
  167. /package/dist/client/assets/{scala-CUXWsorx.js → scala-BAS7yvps.js} +0 -0
  168. /package/dist/client/assets/{scheme-DmiK1zIJ.js → scheme-CAiZTUQv.js} +0 -0
  169. /package/dist/client/assets/{scss-BCosKPgt.js → scss-BgSdPwSy.js} +0 -0
  170. /package/dist/client/assets/{shell-4nCnLqjI.js → shell-BIglZyZG.js} +0 -0
  171. /package/dist/client/assets/{solidity-XKv0xcLY.js → solidity-DEkNLNHt.js} +0 -0
  172. /package/dist/client/assets/{sophia-897gNjR_.js → sophia-BqB-QKb_.js} +0 -0
  173. /package/dist/client/assets/{sparql-BLFySdmR.js → sparql-PnIlixRf.js} +0 -0
  174. /package/dist/client/assets/{sql-D3kLiZaa.js → sql-CkZmFn9b.js} +0 -0
  175. /package/dist/client/assets/{st-BmuzGAC_.js → st-BHkVPkZd.js} +0 -0
  176. /package/dist/client/assets/{swift-GV0_oiKk.js → swift-DRAxbJXD.js} +0 -0
  177. /package/dist/client/assets/{systemverilog-C9ycJXJw.js → systemverilog-SLzSTdPo.js} +0 -0
  178. /package/dist/client/assets/{tcl-C8Rq24un.js → tcl-B9b7ga_X.js} +0 -0
  179. /package/dist/client/assets/{twig-CVzdtlEE.js → twig-Bw2fKFSt.js} +0 -0
  180. /package/dist/client/assets/{typespec-CqnlwSxO.js → typespec-QgpRWk6B.js} +0 -0
  181. /package/dist/client/assets/{vb-DH36q3V8.js → vb-BTY0tA77.js} +0 -0
  182. /package/dist/client/assets/{wgsl-C4fyaLhN.js → wgsl-DEBTP7f8.js} +0 -0
@@ -0,0 +1 @@
1
+ [data-v-0a07afd6]:root{--bg-primary:#fafafa;--bg-secondary:#f0f0f0;--bg-sidebar:#f5f5f5;--bg-card:#fff;--bg-card-hover:#fafafa;--bg-input:#fff;--border-color:#e0e0e0;--border-light:#ebebeb;--accent-primary:#333;--accent-hover:#1a1a1a;--accent-muted:#888;--text-primary:#1a1a1a;--text-secondary:#666;--text-muted:#999;--success:#2e7d32;--error:#c62828;--warning:#f57f17;--msg-user-bg:#f5f5f5;--msg-assistant-bg:#f5f5f5;--msg-system-border:#bdbdbd;--code-bg:#f4f4f4;--text-on-accent:#fff;--text-on-overlay:#fff;--accent-info:#4a90d9;--accent-primary-rgb:51, 51, 51;--accent-hover-rgb:26, 26, 26;--text-primary-rgb:26, 26, 26;--text-muted-rgb:153, 153, 153;--success-rgb:46, 125, 50;--error-rgb:198, 40, 40;--warning-rgb:245, 127, 23;--accent-info-rgb:74, 144, 217}.dark[data-v-0a07afd6]{--bg-primary:#1a1a1a;--bg-secondary:#252525;--bg-sidebar:#202020;--bg-card:#333;--bg-card-hover:#333;--bg-input:#2a2a2a;--border-color:#3a3a3a;--border-light:#333;--accent-primary:#e0e0e0;--accent-hover:#f5f5f5;--accent-muted:#888;--text-primary:#f0f0f0;--text-secondary:silver;--text-muted:#888;--success:#66bb6a;--error:#ef5350;--warning:#ffb74d;--msg-user-bg:#252525;--msg-assistant-bg:#252525;--msg-system-border:#555;--code-bg:#1e1e1e;--text-on-accent:#1a1a1a;--text-on-overlay:#fff;--accent-info:#6ba3d6;--accent-primary-rgb:240, 240, 240;--accent-hover-rgb:245, 245, 245;--text-primary-rgb:240, 240, 240;--text-muted-rgb:136, 136, 136;--success-rgb:102, 187, 106;--error-rgb:239, 83, 80;--warning-rgb:255, 183, 77;--accent-info-rgb:107, 163, 214}.group-message[data-v-0a07afd6]{gap:10px;padding:2px 0;display:flex}.group-message.agent[data-v-0a07afd6],.group-message.self[data-v-0a07afd6]{flex-direction:row-reverse}.group-message.agent .msg-body[data-v-0a07afd6],.group-message.self .msg-body[data-v-0a07afd6]{align-items:flex-end}.group-message.agent .msg-header[data-v-0a07afd6],.group-message.self .msg-header[data-v-0a07afd6]{flex-direction:row-reverse}.group-message.agent .msg-content.agent-content[data-v-0a07afd6]{background-color:rgba(var(--accent-primary-rgb), .06)}.group-message.self .msg-content[data-v-0a07afd6]{background-color:rgba(var(--accent-primary-rgb), .1)}.avatar[data-v-0a07afd6]{border-radius:8px;flex-shrink:0;width:36px;height:36px;margin-top:2px;overflow:hidden}.avatar[data-v-0a07afd6] svg{width:36px;height:36px}.msg-body[data-v-0a07afd6]{flex-direction:column;min-width:0;max-width:85%;display:flex}.msg-header[data-v-0a07afd6]{align-items:center;gap:8px;padding-bottom:2px;display:flex}.msg-header .sender-name[data-v-0a07afd6]{color:var(--text-primary);font-size:13px;font-weight:600}.msg-header .agent-desc[data-v-0a07afd6]{color:var(--text-muted);font-size:11px;font-style:italic}.msg-time[data-v-0a07afd6]{color:var(--text-muted);opacity:.6;margin-top:2px;font-size:12px}.msg-content[data-v-0a07afd6]{color:var(--text-primary);background-color:var(--msg-user-bg);word-break:break-word;overflow-wrap:break-word;border-radius:10px;padding:10px 14px;font-size:14px;line-height:1.65}.msg-content[data-v-0a07afd6] .mention-highlight{color:#409eff;cursor:default;font-weight:600}[data-v-ca1cb9a3]:root{--bg-primary:#fafafa;--bg-secondary:#f0f0f0;--bg-sidebar:#f5f5f5;--bg-card:#fff;--bg-card-hover:#fafafa;--bg-input:#fff;--border-color:#e0e0e0;--border-light:#ebebeb;--accent-primary:#333;--accent-hover:#1a1a1a;--accent-muted:#888;--text-primary:#1a1a1a;--text-secondary:#666;--text-muted:#999;--success:#2e7d32;--error:#c62828;--warning:#f57f17;--msg-user-bg:#f5f5f5;--msg-assistant-bg:#f5f5f5;--msg-system-border:#bdbdbd;--code-bg:#f4f4f4;--text-on-accent:#fff;--text-on-overlay:#fff;--accent-info:#4a90d9;--accent-primary-rgb:51, 51, 51;--accent-hover-rgb:26, 26, 26;--text-primary-rgb:26, 26, 26;--text-muted-rgb:153, 153, 153;--success-rgb:46, 125, 50;--error-rgb:198, 40, 40;--warning-rgb:245, 127, 23;--accent-info-rgb:74, 144, 217}.dark[data-v-ca1cb9a3]{--bg-primary:#1a1a1a;--bg-secondary:#252525;--bg-sidebar:#202020;--bg-card:#333;--bg-card-hover:#333;--bg-input:#2a2a2a;--border-color:#3a3a3a;--border-light:#333;--accent-primary:#e0e0e0;--accent-hover:#f5f5f5;--accent-muted:#888;--text-primary:#f0f0f0;--text-secondary:silver;--text-muted:#888;--success:#66bb6a;--error:#ef5350;--warning:#ffb74d;--msg-user-bg:#252525;--msg-assistant-bg:#252525;--msg-system-border:#555;--code-bg:#1e1e1e;--text-on-accent:#1a1a1a;--text-on-overlay:#fff;--accent-info:#6ba3d6;--accent-primary-rgb:240, 240, 240;--accent-hover-rgb:245, 245, 245;--text-primary-rgb:240, 240, 240;--text-muted-rgb:136, 136, 136;--success-rgb:102, 187, 106;--error-rgb:239, 83, 80;--warning-rgb:255, 183, 77;--accent-info-rgb:107, 163, 214}.message-list[data-v-ca1cb9a3]{background-color:var(--bg-card);flex-direction:column;flex:1;gap:12px;padding:16px 20px;display:flex;overflow-y:auto}.empty-state[data-v-ca1cb9a3]{color:var(--text-muted);opacity:.4;flex-direction:column;flex:1;justify-content:center;align-items:center;gap:12px;display:flex}.empty-state p[data-v-ca1cb9a3]{font-size:14px}[data-v-d354da76]:root{--bg-primary:#fafafa;--bg-secondary:#f0f0f0;--bg-sidebar:#f5f5f5;--bg-card:#fff;--bg-card-hover:#fafafa;--bg-input:#fff;--border-color:#e0e0e0;--border-light:#ebebeb;--accent-primary:#333;--accent-hover:#1a1a1a;--accent-muted:#888;--text-primary:#1a1a1a;--text-secondary:#666;--text-muted:#999;--success:#2e7d32;--error:#c62828;--warning:#f57f17;--msg-user-bg:#f5f5f5;--msg-assistant-bg:#f5f5f5;--msg-system-border:#bdbdbd;--code-bg:#f4f4f4;--text-on-accent:#fff;--text-on-overlay:#fff;--accent-info:#4a90d9;--accent-primary-rgb:51, 51, 51;--accent-hover-rgb:26, 26, 26;--text-primary-rgb:26, 26, 26;--text-muted-rgb:153, 153, 153;--success-rgb:46, 125, 50;--error-rgb:198, 40, 40;--warning-rgb:245, 127, 23;--accent-info-rgb:74, 144, 217}.dark[data-v-d354da76]{--bg-primary:#1a1a1a;--bg-secondary:#252525;--bg-sidebar:#202020;--bg-card:#333;--bg-card-hover:#333;--bg-input:#2a2a2a;--border-color:#3a3a3a;--border-light:#333;--accent-primary:#e0e0e0;--accent-hover:#f5f5f5;--accent-muted:#888;--text-primary:#f0f0f0;--text-secondary:silver;--text-muted:#888;--success:#66bb6a;--error:#ef5350;--warning:#ffb74d;--msg-user-bg:#252525;--msg-assistant-bg:#252525;--msg-system-border:#555;--code-bg:#1e1e1e;--text-on-accent:#1a1a1a;--text-on-overlay:#fff;--accent-info:#6ba3d6;--accent-primary-rgb:240, 240, 240;--accent-hover-rgb:245, 245, 245;--text-primary-rgb:240, 240, 240;--text-muted-rgb:136, 136, 136;--success-rgb:102, 187, 106;--error-rgb:239, 83, 80;--warning-rgb:255, 183, 77;--accent-info-rgb:107, 163, 214}.chat-input-area[data-v-d354da76]{border-top:1px solid var(--border-color);flex-shrink:0;padding:20px 20px 16px}.typing-dots[data-v-d354da76]{align-items:center;gap:2px;display:inline-flex}.typing-dots span[data-v-d354da76]{background-color:var(--text-muted);border-radius:50%;width:4px;height:4px;animation:1.2s infinite typing-bounce-d354da76;display:block}.typing-dots span[data-v-d354da76]:nth-child(2){animation-delay:.2s}.typing-dots span[data-v-d354da76]:nth-child(3){animation-delay:.4s}@keyframes typing-bounce-d354da76{0%,60%,to{opacity:.4;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}.input-wrapper[data-v-d354da76]{background-color:var(--bg-input);border:1px solid var(--border-color);border-radius:10px;align-items:center;gap:10px;padding:10px 12px;transition:border-color .15s,background-color .15s;display:flex}.input-wrapper[data-v-d354da76]:focus-within{border-color:var(--accent-primary)}.dark .input-wrapper[data-v-d354da76]{background-color:#333}.input-textarea[data-v-d354da76]{color:var(--text-primary);resize:none;background:0 0;border:none;outline:none;flex:1;min-height:20px;max-height:100px;font-family:Inter,system-ui,-apple-system,sans-serif;font-size:14px;line-height:1.5;overflow-y:auto}.input-textarea[data-v-d354da76]::placeholder{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.input-actions[data-v-d354da76]{flex-shrink:0;align-items:center;gap:6px;display:flex}[data-v-f150f087]:root{--bg-primary:#fafafa;--bg-secondary:#f0f0f0;--bg-sidebar:#f5f5f5;--bg-card:#fff;--bg-card-hover:#fafafa;--bg-input:#fff;--border-color:#e0e0e0;--border-light:#ebebeb;--accent-primary:#333;--accent-hover:#1a1a1a;--accent-muted:#888;--text-primary:#1a1a1a;--text-secondary:#666;--text-muted:#999;--success:#2e7d32;--error:#c62828;--warning:#f57f17;--msg-user-bg:#f5f5f5;--msg-assistant-bg:#f5f5f5;--msg-system-border:#bdbdbd;--code-bg:#f4f4f4;--text-on-accent:#fff;--text-on-overlay:#fff;--accent-info:#4a90d9;--accent-primary-rgb:51, 51, 51;--accent-hover-rgb:26, 26, 26;--text-primary-rgb:26, 26, 26;--text-muted-rgb:153, 153, 153;--success-rgb:46, 125, 50;--error-rgb:198, 40, 40;--warning-rgb:245, 127, 23;--accent-info-rgb:74, 144, 217}.dark[data-v-f150f087]{--bg-primary:#1a1a1a;--bg-secondary:#252525;--bg-sidebar:#202020;--bg-card:#333;--bg-card-hover:#333;--bg-input:#2a2a2a;--border-color:#3a3a3a;--border-light:#333;--accent-primary:#e0e0e0;--accent-hover:#f5f5f5;--accent-muted:#888;--text-primary:#f0f0f0;--text-secondary:silver;--text-muted:#888;--success:#66bb6a;--error:#ef5350;--warning:#ffb74d;--msg-user-bg:#252525;--msg-assistant-bg:#252525;--msg-system-border:#555;--code-bg:#1e1e1e;--text-on-accent:#1a1a1a;--text-on-overlay:#fff;--accent-info:#6ba3d6;--accent-primary-rgb:240, 240, 240;--accent-hover-rgb:245, 245, 245;--text-primary-rgb:240, 240, 240;--text-muted-rgb:136, 136, 136;--success-rgb:102, 187, 106;--error-rgb:239, 83, 80;--warning-rgb:255, 183, 77;--accent-info-rgb:107, 163, 214}.create-form .form-group[data-v-f150f087]{margin-bottom:16px}.form-label[data-v-f150f087]{color:var(--text-secondary);margin-bottom:6px;font-size:13px;font-weight:500;display:block}.form-hint[data-v-f150f087]{color:var(--text-muted);margin:4px 0 0;font-size:11px}.code-row[data-v-f150f087]{align-items:center;gap:8px;display:flex}.compression-collapse[data-v-f150f087]{margin-bottom:16px}.compression-fields[data-v-f150f087]{padding-top:8px}[data-v-9cda5948]:root{--bg-primary:#fafafa;--bg-secondary:#f0f0f0;--bg-sidebar:#f5f5f5;--bg-card:#fff;--bg-card-hover:#fafafa;--bg-input:#fff;--border-color:#e0e0e0;--border-light:#ebebeb;--accent-primary:#333;--accent-hover:#1a1a1a;--accent-muted:#888;--text-primary:#1a1a1a;--text-secondary:#666;--text-muted:#999;--success:#2e7d32;--error:#c62828;--warning:#f57f17;--msg-user-bg:#f5f5f5;--msg-assistant-bg:#f5f5f5;--msg-system-border:#bdbdbd;--code-bg:#f4f4f4;--text-on-accent:#fff;--text-on-overlay:#fff;--accent-info:#4a90d9;--accent-primary-rgb:51, 51, 51;--accent-hover-rgb:26, 26, 26;--text-primary-rgb:26, 26, 26;--text-muted-rgb:153, 153, 153;--success-rgb:46, 125, 50;--error-rgb:198, 40, 40;--warning-rgb:245, 127, 23;--accent-info-rgb:74, 144, 217}.dark[data-v-9cda5948]{--bg-primary:#1a1a1a;--bg-secondary:#252525;--bg-sidebar:#202020;--bg-card:#333;--bg-card-hover:#333;--bg-input:#2a2a2a;--border-color:#3a3a3a;--border-light:#333;--accent-primary:#e0e0e0;--accent-hover:#f5f5f5;--accent-muted:#888;--text-primary:#f0f0f0;--text-secondary:silver;--text-muted:#888;--success:#66bb6a;--error:#ef5350;--warning:#ffb74d;--msg-user-bg:#252525;--msg-assistant-bg:#252525;--msg-system-border:#555;--code-bg:#1e1e1e;--text-on-accent:#1a1a1a;--text-on-overlay:#fff;--accent-info:#6ba3d6;--accent-primary-rgb:240, 240, 240;--accent-hover-rgb:245, 245, 245;--text-primary-rgb:240, 240, 240;--text-muted-rgb:136, 136, 136;--success-rgb:102, 187, 106;--error-rgb:239, 83, 80;--warning-rgb:255, 183, 77;--accent-info-rgb:107, 163, 214}.group-chat-panel[data-v-9cda5948]{height:100%;display:flex;position:relative;overflow:hidden}.sidebar-backdrop[data-v-9cda5948]{display:none}@media (width<=768px){.sidebar-backdrop[data-v-9cda5948]{z-index:99;opacity:0;pointer-events:none;background:#0006;transition:opacity .15s;display:block;position:absolute;inset:0}.sidebar-backdrop.active[data-v-9cda5948]{opacity:1;pointer-events:auto}}.status-bar[data-v-9cda5948]{flex-shrink:0;padding:6px 20px;overflow:hidden}.context-status-list[data-v-9cda5948]{flex-wrap:nowrap;gap:8px;display:flex;overflow-x:auto}.context-status-list[data-v-9cda5948]::-webkit-scrollbar{height:0}.context-status[data-v-9cda5948]{color:var(--text-secondary);background-color:var(--bg-card-hover);border-radius:6px;align-items:center;gap:6px;padding:4px 10px;font-size:12px;display:inline-flex}.dark .context-status[data-v-9cda5948]{background-color:#ffffff0f}.typing-indicator[data-v-9cda5948]{color:var(--text-muted);align-items:center;gap:6px;font-size:12px;display:flex}.typing-dots[data-v-9cda5948]{align-items:center;gap:2px;display:inline-flex}.typing-dots span[data-v-9cda5948]{background-color:var(--text-muted);border-radius:50%;width:4px;height:4px;animation:1.2s infinite typing-bounce-9cda5948;display:block}.typing-dots span[data-v-9cda5948]:nth-child(2){animation-delay:.2s}.typing-dots span[data-v-9cda5948]:nth-child(3){animation-delay:.4s}@keyframes typing-bounce-9cda5948{0%,60%,to{opacity:.4;transform:translateY(0)}30%{opacity:1;transform:translateY(-3px)}}.room-sidebar[data-v-9cda5948]{border-right:1px solid var(--border-color);flex-direction:column;flex-shrink:0;width:220px;display:flex}.sidebar-header[data-v-9cda5948]{flex-shrink:0;justify-content:space-between;align-items:center;padding:12px;display:flex}.sidebar-header .sidebar-title[data-v-9cda5948]{color:var(--text-primary);font-size:15px;font-weight:600}.sidebar-header .sidebar-actions[data-v-9cda5948]{gap:4px;display:flex}.room-list[data-v-9cda5948]{flex:1;padding:8px;overflow-y:auto}.room-item[data-v-9cda5948]{cursor:pointer;border-radius:6px;align-items:center;gap:10px;padding:10px;transition:background-color .15s;display:flex}.room-item[data-v-9cda5948]:hover{background-color:rgba(var(--accent-primary-rgb), .06)}.room-item.active[data-v-9cda5948]{background-color:rgba(var(--accent-primary-rgb), .12)}.room-item .room-icon[data-v-9cda5948]{color:var(--text-muted);flex-shrink:0}.room-item .room-info[data-v-9cda5948]{flex-direction:column;flex:1;min-width:0;display:flex}.room-item .room-name[data-v-9cda5948]{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:13px;overflow:hidden}.room-item .room-code[data-v-9cda5948]{color:var(--text-muted);font-family:JetBrains Mono,Fira Code,Consolas,monospace;font-size:11px}.room-item .room-tokens[data-v-9cda5948]{color:var(--text-muted);font-size:11px}.room-item .room-delete-btn[data-v-9cda5948]{width:24px;height:24px;color:var(--text-muted);cursor:pointer;opacity:0;background:0 0;border:none;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;transition:opacity .15s,color .15s,background-color .15s;display:flex}.room-item .room-delete-btn[data-v-9cda5948]:hover{color:var(--error);background-color:rgba(var(--error-rgb), .1)}.room-item:hover .room-delete-btn[data-v-9cda5948]{opacity:1}.empty-rooms[data-v-9cda5948]{text-align:center;color:var(--text-muted);padding:20px 12px;font-size:13px}.chat-main[data-v-9cda5948]{background-color:#0000;flex-direction:column;flex:1;min-width:0;display:flex}.chat-header[data-v-9cda5948]{border-bottom:1px solid var(--border-color);align-items:center;gap:12px;padding:21px 20px;display:flex}.chat-header .room-title-text[data-v-9cda5948]{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;flex:1;font-size:16px;font-weight:600;overflow:hidden}.chat-header .header-info[data-v-9cda5948]{flex-shrink:0;align-items:center;gap:8px;display:flex}.chat-header .member-count[data-v-9cda5948]{color:var(--text-muted);font-size:12px}.avatar-stack[data-v-9cda5948]{cursor:pointer}.avatar-stack-inner[data-v-9cda5948]{align-items:center;display:flex}.avatar-stack-item[data-v-9cda5948]{border:2px solid var(--bg-card);background-color:var(--bg-secondary);border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;margin-left:-12px;transition:transform .15s;display:flex;overflow:hidden}.avatar-stack-item[data-v-9cda5948]:first-child{margin-left:0}.avatar-stack-item[data-v-9cda5948]:hover{transform:translateY(-2px);z-index:100!important}.avatar-stack-more[data-v-9cda5948]{border:2px solid var(--bg-card);background-color:var(--bg-secondary);width:28px;height:28px;color:var(--text-secondary);border-radius:50%;justify-content:center;align-items:center;margin-left:-12px;font-size:11px;font-weight:600;display:flex}.agent-avatar[data-v-9cda5948]{justify-content:center;align-items:center;width:28px;height:28px;display:flex}.agent-avatar[data-v-9cda5948] svg{width:100%;height:100%}.agent-popover[data-v-9cda5948]{max-height:300px;overflow-y:auto}.agent-popover-title[data-v-9cda5948]{color:var(--text-muted);border-bottom:1px solid var(--border-color);margin-bottom:8px;padding:0 0 8px;font-size:12px;font-weight:600}.agent-popover-item[data-v-9cda5948]{border-radius:6px;align-items:center;gap:8px;padding:6px 4px;transition:background-color .15s;display:flex}.agent-popover-item[data-v-9cda5948]:hover{background-color:rgba(var(--accent-primary-rgb), .06)}.agent-popover-item .agent-popover-info[data-v-9cda5948]{flex:1;min-width:0}.agent-popover-item .agent-popover-name[data-v-9cda5948]{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:13px;display:block;overflow:hidden}.agent-popover-item .agent-popover-profile[data-v-9cda5948]{color:var(--text-muted);white-space:nowrap;text-overflow:ellipsis;font-size:11px;display:block;overflow:hidden}.agent-popover-item .agent-popover-remove[data-v-9cda5948]{width:24px;height:24px;color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:6px;flex-shrink:0;justify-content:center;align-items:center;transition:all .15s;display:flex}.agent-popover-item .agent-popover-remove[data-v-9cda5948]:hover{color:var(--error);background-color:#c8323214}.no-room[data-v-9cda5948]{color:var(--text-muted);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:16px;display:flex}.no-room .no-room-icon[data-v-9cda5948]{opacity:.3}.no-room p[data-v-9cda5948]{font-size:14px}.icon-btn[data-v-9cda5948]{width:32px;height:32px;color:var(--text-secondary);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;transition:all .15s;display:flex}.icon-btn[data-v-9cda5948]:hover{background-color:rgba(var(--accent-primary-rgb), .08);color:var(--text-primary)}.modal-backdrop[data-v-9cda5948]{z-index:1000;background:#0006;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal[data-v-9cda5948]{background:var(--bg-card);border-radius:14px;width:400px;max-width:90vw;padding:24px;box-shadow:0 8px 32px #0000001f}.modal h3[data-v-9cda5948]{color:var(--text-primary);margin:0 0 20px;font-size:16px;font-weight:600}.form-group[data-v-9cda5948]{margin-bottom:16px}.modal-actions[data-v-9cda5948]{justify-content:flex-end;gap:8px;margin-top:12px;display:flex}.form-hint[data-v-9cda5948]{color:var(--text-muted);margin:4px 0 0;font-size:11px}.connection-dot[data-v-9cda5948]{border-radius:50%;flex-shrink:0;width:8px;height:8px}.connection-dot.connected[data-v-9cda5948]{background-color:var(--success);box-shadow:0 0 6px rgba(var(--success-rgb), .5)}.connection-dot.disconnected[data-v-9cda5948]{background-color:var(--error)}@media (width<=768px){.room-sidebar[data-v-9cda5948]{z-index:100;position:absolute;top:0;bottom:0;left:0;box-shadow:4px 0 16px #0000001a}.chat-header[data-v-9cda5948]{padding-left:56px}}.group-chat-view[data-v-6a221d32]{height:calc(100 * var(--vh));flex-direction:column;display:flex}
@@ -1,4 +1,4 @@
1
- import{A as e,G as t,H as n,L as r,M as i,P as a,S as o,X as s,Y as c,j as l,st as u,ut as d,v as f}from"./router-BDvjwA-_.js";import{B as ee,G as p,J as m,K as h,R as te,W as g,c as _,ct as v,d as ne,dt as y,et as b,ft as x,l as re,lt as S,mt as C,n as w,nt as T,pt as E,rt as D,s as O,t as k,z as A}from"./browser-BIv3pBug.js";import{d as ie,f as ae,i as oe,l as j,n as M,o as N,p as P,s as se,t as F}from"./Suffix-BMy3yeNM.js";import{l as ce,r as I}from"./fade-in.cssr-BvBFOzvO.js";var L=e({name:`Eye`,render(){return i(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 512 512`},i(`path`,{d:`M255.66 112c-77.94 0-157.89 45.11-220.83 135.33a16 16 0 0 0-.27 17.77C82.92 340.8 161.8 400 255.66 400c92.84 0 173.34-59.38 221.79-135.25a16.14 16.14 0 0 0 0-17.47C428.89 172.28 347.8 112 255.66 112z`,fill:`none`,stroke:`currentColor`,"stroke-linecap":`round`,"stroke-linejoin":`round`,"stroke-width":`32`}),i(`circle`,{cx:`256`,cy:`256`,r:`80`,fill:`none`,stroke:`currentColor`,"stroke-miterlimit":`10`,"stroke-width":`32`}))}}),R=e({name:`EyeOff`,render(){return i(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 512 512`},i(`path`,{d:`M432 448a15.92 15.92 0 0 1-11.31-4.69l-352-352a16 16 0 0 1 22.62-22.62l352 352A16 16 0 0 1 432 448z`,fill:`currentColor`}),i(`path`,{d:`M255.66 384c-41.49 0-81.5-12.28-118.92-36.5c-34.07-22-64.74-53.51-88.7-91v-.08c19.94-28.57 41.78-52.73 65.24-72.21a2 2 0 0 0 .14-2.94L93.5 161.38a2 2 0 0 0-2.71-.12c-24.92 21-48.05 46.76-69.08 76.92a31.92 31.92 0 0 0-.64 35.54c26.41 41.33 60.4 76.14 98.28 100.65C162 402 207.9 416 255.66 416a239.13 239.13 0 0 0 75.8-12.58a2 2 0 0 0 .77-3.31l-21.58-21.58a4 4 0 0 0-3.83-1a204.8 204.8 0 0 1-51.16 6.47z`,fill:`currentColor`}),i(`path`,{d:`M490.84 238.6c-26.46-40.92-60.79-75.68-99.27-100.53C349 110.55 302 96 255.66 96a227.34 227.34 0 0 0-74.89 12.83a2 2 0 0 0-.75 3.31l21.55 21.55a4 4 0 0 0 3.88 1a192.82 192.82 0 0 1 50.21-6.69c40.69 0 80.58 12.43 118.55 37c34.71 22.4 65.74 53.88 89.76 91a.13.13 0 0 1 0 .16a310.72 310.72 0 0 1-64.12 72.73a2 2 0 0 0-.15 2.95l19.9 19.89a2 2 0 0 0 2.7.13a343.49 343.49 0 0 0 68.64-78.48a32.2 32.2 0 0 0-.1-34.78z`,fill:`currentColor`}),i(`path`,{d:`M256 160a95.88 95.88 0 0 0-21.37 2.4a2 2 0 0 0-1 3.38l112.59 112.56a2 2 0 0 0 3.38-1A96 96 0 0 0 256 160z`,fill:`currentColor`}),i(`path`,{d:`M165.78 233.66a2 2 0 0 0-3.38 1a96 96 0 0 0 115 115a2 2 0 0 0 1-3.38z`,fill:`currentColor`}))}}),z={paddingTiny:`0 8px`,paddingSmall:`0 10px`,paddingMedium:`0 12px`,paddingLarge:`0 14px`,clearSize:`16px`};function B(e){let{textColor2:t,textColor3:n,textColorDisabled:r,primaryColor:i,primaryColorHover:a,inputColor:o,inputColorDisabled:s,borderColor:c,warningColor:l,warningColorHover:u,errorColor:d,errorColorHover:f,borderRadius:ee,lineHeight:p,fontSizeTiny:m,fontSizeSmall:h,fontSizeMedium:te,fontSizeLarge:g,heightTiny:_,heightSmall:v,heightMedium:ne,heightLarge:y,actionColor:b,clearColor:x,clearColorHover:re,clearColorPressed:S,placeholderColor:C,placeholderColorDisabled:w,iconColor:T,iconColorDisabled:E,iconColorHover:O,iconColorPressed:k,fontWeight:A}=e;return Object.assign(Object.assign({},z),{fontWeight:A,countTextColorDisabled:r,countTextColor:n,heightTiny:_,heightSmall:v,heightMedium:ne,heightLarge:y,fontSizeTiny:m,fontSizeSmall:h,fontSizeMedium:te,fontSizeLarge:g,lineHeight:p,lineHeightTextarea:p,borderRadius:ee,iconSize:`16px`,groupLabelColor:b,groupLabelTextColor:t,textColor:t,textColorDisabled:r,textDecorationColor:t,caretColor:i,placeholderColor:C,placeholderColorDisabled:w,color:o,colorDisabled:s,colorFocus:o,groupLabelBorder:`1px solid ${c}`,border:`1px solid ${c}`,borderHover:`1px solid ${a}`,borderDisabled:`1px solid ${c}`,borderFocus:`1px solid ${a}`,boxShadowFocus:`0 0 0 2px ${D(i,{alpha:.2})}`,loadingColor:i,loadingColorWarning:l,borderWarning:`1px solid ${l}`,borderHoverWarning:`1px solid ${u}`,colorFocusWarning:o,borderFocusWarning:`1px solid ${u}`,boxShadowFocusWarning:`0 0 0 2px ${D(l,{alpha:.2})}`,caretColorWarning:l,loadingColorError:d,borderError:`1px solid ${d}`,borderHoverError:`1px solid ${f}`,colorFocusError:o,borderFocusError:`1px solid ${f}`,boxShadowFocusError:`0 0 0 2px ${D(d,{alpha:.2})}`,caretColorError:d,clearColor:x,clearColorHover:re,clearColorPressed:S,iconColor:T,iconColorDisabled:E,iconColorHover:O,iconColorPressed:k,suffixTextColor:t})}var V=O({name:`Input`,common:w,peers:{Scrollbar:oe},self:B}),H=b(`n-input`),le=S(`input`,`
1
+ import{A as e,G as t,H as n,L as r,M as i,P as a,S as o,X as s,Y as c,j as l,st as u,ut as d,v as f}from"./router-CaAe9JO4.js";import{B as ee,G as p,J as m,K as h,R as te,W as g,c as _,ct as v,d as ne,dt as y,et as b,ft as x,l as re,lt as S,mt as C,n as w,nt as T,pt as E,rt as D,s as O,t as k,z as A}from"./browser-fXTO-ADn.js";import{d as ie,f as ae,i as oe,l as j,n as M,o as N,p as P,s as se,t as F}from"./Suffix-CMjBYS-M.js";import{l as ce,r as I}from"./fade-in.cssr-Br-J4Ht7.js";var L=e({name:`Eye`,render(){return i(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 512 512`},i(`path`,{d:`M255.66 112c-77.94 0-157.89 45.11-220.83 135.33a16 16 0 0 0-.27 17.77C82.92 340.8 161.8 400 255.66 400c92.84 0 173.34-59.38 221.79-135.25a16.14 16.14 0 0 0 0-17.47C428.89 172.28 347.8 112 255.66 112z`,fill:`none`,stroke:`currentColor`,"stroke-linecap":`round`,"stroke-linejoin":`round`,"stroke-width":`32`}),i(`circle`,{cx:`256`,cy:`256`,r:`80`,fill:`none`,stroke:`currentColor`,"stroke-miterlimit":`10`,"stroke-width":`32`}))}}),R=e({name:`EyeOff`,render(){return i(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 512 512`},i(`path`,{d:`M432 448a15.92 15.92 0 0 1-11.31-4.69l-352-352a16 16 0 0 1 22.62-22.62l352 352A16 16 0 0 1 432 448z`,fill:`currentColor`}),i(`path`,{d:`M255.66 384c-41.49 0-81.5-12.28-118.92-36.5c-34.07-22-64.74-53.51-88.7-91v-.08c19.94-28.57 41.78-52.73 65.24-72.21a2 2 0 0 0 .14-2.94L93.5 161.38a2 2 0 0 0-2.71-.12c-24.92 21-48.05 46.76-69.08 76.92a31.92 31.92 0 0 0-.64 35.54c26.41 41.33 60.4 76.14 98.28 100.65C162 402 207.9 416 255.66 416a239.13 239.13 0 0 0 75.8-12.58a2 2 0 0 0 .77-3.31l-21.58-21.58a4 4 0 0 0-3.83-1a204.8 204.8 0 0 1-51.16 6.47z`,fill:`currentColor`}),i(`path`,{d:`M490.84 238.6c-26.46-40.92-60.79-75.68-99.27-100.53C349 110.55 302 96 255.66 96a227.34 227.34 0 0 0-74.89 12.83a2 2 0 0 0-.75 3.31l21.55 21.55a4 4 0 0 0 3.88 1a192.82 192.82 0 0 1 50.21-6.69c40.69 0 80.58 12.43 118.55 37c34.71 22.4 65.74 53.88 89.76 91a.13.13 0 0 1 0 .16a310.72 310.72 0 0 1-64.12 72.73a2 2 0 0 0-.15 2.95l19.9 19.89a2 2 0 0 0 2.7.13a343.49 343.49 0 0 0 68.64-78.48a32.2 32.2 0 0 0-.1-34.78z`,fill:`currentColor`}),i(`path`,{d:`M256 160a95.88 95.88 0 0 0-21.37 2.4a2 2 0 0 0-1 3.38l112.59 112.56a2 2 0 0 0 3.38-1A96 96 0 0 0 256 160z`,fill:`currentColor`}),i(`path`,{d:`M165.78 233.66a2 2 0 0 0-3.38 1a96 96 0 0 0 115 115a2 2 0 0 0 1-3.38z`,fill:`currentColor`}))}}),z={paddingTiny:`0 8px`,paddingSmall:`0 10px`,paddingMedium:`0 12px`,paddingLarge:`0 14px`,clearSize:`16px`};function B(e){let{textColor2:t,textColor3:n,textColorDisabled:r,primaryColor:i,primaryColorHover:a,inputColor:o,inputColorDisabled:s,borderColor:c,warningColor:l,warningColorHover:u,errorColor:d,errorColorHover:f,borderRadius:ee,lineHeight:p,fontSizeTiny:m,fontSizeSmall:h,fontSizeMedium:te,fontSizeLarge:g,heightTiny:_,heightSmall:v,heightMedium:ne,heightLarge:y,actionColor:b,clearColor:x,clearColorHover:re,clearColorPressed:S,placeholderColor:C,placeholderColorDisabled:w,iconColor:T,iconColorDisabled:E,iconColorHover:O,iconColorPressed:k,fontWeight:A}=e;return Object.assign(Object.assign({},z),{fontWeight:A,countTextColorDisabled:r,countTextColor:n,heightTiny:_,heightSmall:v,heightMedium:ne,heightLarge:y,fontSizeTiny:m,fontSizeSmall:h,fontSizeMedium:te,fontSizeLarge:g,lineHeight:p,lineHeightTextarea:p,borderRadius:ee,iconSize:`16px`,groupLabelColor:b,groupLabelTextColor:t,textColor:t,textColorDisabled:r,textDecorationColor:t,caretColor:i,placeholderColor:C,placeholderColorDisabled:w,color:o,colorDisabled:s,colorFocus:o,groupLabelBorder:`1px solid ${c}`,border:`1px solid ${c}`,borderHover:`1px solid ${a}`,borderDisabled:`1px solid ${c}`,borderFocus:`1px solid ${a}`,boxShadowFocus:`0 0 0 2px ${D(i,{alpha:.2})}`,loadingColor:i,loadingColorWarning:l,borderWarning:`1px solid ${l}`,borderHoverWarning:`1px solid ${u}`,colorFocusWarning:o,borderFocusWarning:`1px solid ${u}`,boxShadowFocusWarning:`0 0 0 2px ${D(l,{alpha:.2})}`,caretColorWarning:l,loadingColorError:d,borderError:`1px solid ${d}`,borderHoverError:`1px solid ${f}`,colorFocusError:o,borderFocusError:`1px solid ${f}`,boxShadowFocusError:`0 0 0 2px ${D(d,{alpha:.2})}`,caretColorError:d,clearColor:x,clearColorHover:re,clearColorPressed:S,iconColor:T,iconColorDisabled:E,iconColorHover:O,iconColorPressed:k,suffixTextColor:t})}var V=O({name:`Input`,common:w,peers:{Scrollbar:oe},self:B}),H=b(`n-input`),le=S(`input`,`
2
2
  max-width: 100%;
3
3
  cursor: text;
4
4
  line-height: 1.5;
@@ -1,4 +1,4 @@
1
- import{A as e,L as t,M as n,S as r,Y as i,st as a,ut as o}from"./router-BDvjwA-_.js";import{B as s,J as c,K as l,R as ee,W as u,at as te,c as d,ct as f,d as p,lt as m,n as h,nt as g,s as _}from"./browser-BIv3pBug.js";import{d as ne,p as v,s as re}from"./Suffix-BMy3yeNM.js";import{r as y}from"./fade-in.cssr-BvBFOzvO.js";import{n as b,r as x}from"./Button-6kn5x8wB.js";import{t as S}from"./Add-DnSsGBZy.js";import{n as C,t as w}from"./Input-DOn-NDi-.js";var T=e({name:`Remove`,render(){return n(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 512 512`},n(`line`,{x1:`400`,y1:`256`,x2:`112`,y2:`256`,style:`
1
+ import{A as e,L as t,M as n,S as r,Y as i,st as a,ut as o}from"./router-CaAe9JO4.js";import{B as s,J as c,K as l,R as ee,W as u,at as te,c as d,ct as f,d as p,lt as m,n as h,nt as g,s as _}from"./browser-fXTO-ADn.js";import{d as ne,p as v,s as re}from"./Suffix-CMjBYS-M.js";import{r as y}from"./fade-in.cssr-Br-J4Ht7.js";import{n as b,r as x}from"./Button-CYfnxZGL.js";import{t as S}from"./Add-kQWqsiFL.js";import{n as C,t as w}from"./Input-dIiSr6EM.js";var T=e({name:`Remove`,render(){return n(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:`0 0 512 512`},n(`line`,{x1:`400`,y1:`256`,x2:`112`,y2:`256`,style:`
2
2
  fill: none;
3
3
  stroke: currentColor;
4
4
  stroke-linecap: round;
@@ -1,2 +1,2 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/jobs-hrnPO3Z3.js","assets/jobs-kBilk6_x.js","assets/router-BDvjwA-_.js","assets/chunk-DECur_0Z.js","assets/preload-helper-rov5CBGT.js"])))=>i.map(i=>d[i]);
2
- import{A as e,C as t,D as n,E as r,H as i,K as a,O as o,S as s,T as c,W as l,Z as u,ft as d,ht as f,k as p,pt as m,st as h,v as g,w as _}from"./router-BDvjwA-_.js";import{n as v}from"./pinia-DRC0gpqt.js";import{t as y}from"./preload-helper-rov5CBGT.js";import{r as b,t as x}from"./_plugin-vue_export-helper-BA1W5EEO.js";import{t as S}from"./Modal-Ct66o3O5.js";import{n as C,t as w}from"./FormItem-cCAlzrYv.js";import{t as T}from"./Select-C96PU4NS.js";import{t as E}from"./Button-6kn5x8wB.js";import{t as D}from"./Input-DOn-NDi-.js";import{t as O}from"./InputNumber-CEwvr7we.js";import{t as k}from"./Tooltip-MYN2D0HZ.js";import{t as A}from"./use-message-x3IR-EsB.js";import{t as j}from"./Spin-CNWMVtvF.js";import{a as M,c as N,i as P,n as F,o as I,s as L,t as ee}from"./jobs-kBilk6_x.js";function R(e,t){return e.job_id===t||e.id===t}var z=v(`jobs`,()=>{let e=h([]),t=h(!1);async function n(){t.value=!0;try{e.value=await P()}catch(e){console.error(`Failed to fetch jobs:`,e)}finally{t.value=!1}}async function r(t){let n=await ee(t);return e.value.unshift(n),n}async function i(t,n){let r=await N(t,n),i=e.value.findIndex(e=>R(e,t));return i!==-1&&(e.value[i]=r),r}async function a(t){await F(t),e.value=e.value.filter(e=>!R(e,t))}async function o(t){let n=await M(t),r=e.value.findIndex(e=>R(e,t));r!==-1&&(e.value[r]=n)}async function s(t){let n=await I(t),r=e.value.findIndex(e=>R(e,t));r!==-1&&(e.value[r]=n)}async function c(t){let n=await L(t),r=e.value.findIndex(e=>R(e,t));r!==-1&&(e.value[r]=n)}return{jobs:e,loading:t,fetchJobs:n,createJob:r,updateJob:i,deleteJob:a,pauseJob:o,resumeJob:s,runJob:c}}),B={class:`job-card`},V={class:`card-header`},H={class:`job-name`},U={class:`card-body`},W={class:`info-row`},G={class:`info-label`},K={class:`info-value mono`},q={class:`info-row`},J={class:`info-label`},Y={class:`info-value`},X={class:`info-row`},Z={class:`info-label`},Q={class:`info-value`},te={class:`info-row`},ne={class:`info-label`},re={class:`info-value`},ie={key:0,class:`info-row`},ae={class:`info-label`},oe={class:`info-value`},se={class:`card-actions`},$=x(e({__name:`JobCard`,props:{job:{}},emits:[`edit`],setup(e,{emit:n}){let i=e,a=n,{t:h}=b(),v=z(),y=A(),x=s(()=>i.job.job_id||i.job.id),S=s(()=>i.job.state===`running`?h(`jobs.status.running`):i.job.state===`paused`?h(`jobs.status.paused`):i.job.enabled?h(`jobs.status.scheduled`):h(`jobs.status.disabled`)),C=s(()=>i.job.state===`running`?`info`:i.job.state===`paused`?`warning`:i.job.enabled?`success`:`error`),w=s(()=>{let e=i.job.schedule;return typeof e==`string`?e:e?.expr||i.job.schedule_display||`—`}),T=e=>e?new Date(e).toLocaleString():`—`;async function D(){try{await v.pauseJob(x.value),y.success(h(`jobs.jobPaused`))}catch(e){y.error(e.message)}}async function O(){try{await v.resumeJob(x.value),y.success(h(`jobs.jobResumed`))}catch(e){y.error(e.message)}}async function j(){try{await v.runJob(x.value),y.info(h(`jobs.jobTriggered`))}catch(e){y.error(e.message)}}async function M(){try{await v.deleteJob(x.value),y.success(h(`jobs.jobDeleted`))}catch(e){y.error(e.message)}}return(n,i)=>(l(),r(`div`,B,[t(`div`,V,[t(`h3`,H,f(e.job.name),1),t(`span`,{class:m([`status-badge`,C.value])},f(S.value),3)]),t(`div`,U,[t(`div`,W,[t(`span`,G,f(d(h)(`jobs.info.schedule`)),1),t(`code`,K,f(w.value),1)]),t(`div`,q,[t(`span`,J,f(d(h)(`jobs.info.lastRun`)),1),t(`span`,Y,[o(f(T(e.job.last_run_at))+` `,1),e.job.last_status?(l(),r(`span`,{key:0,class:m([`run-status`,{ok:e.job.last_status===`ok`,err:e.job.last_status!==`ok`}])},f(e.job.last_status===`ok`?d(h)(`common.ok`):e.job.last_status),3)):c(``,!0)])]),t(`div`,X,[t(`span`,Z,f(d(h)(`jobs.info.nextRun`)),1),t(`span`,Q,f(T(e.job.next_run_at)),1)]),t(`div`,te,[t(`span`,ne,f(d(h)(`jobs.info.deliver`)),1),t(`span`,re,[o(f(e.job.deliver),1),e.job.origin?(l(),r(g,{key:0},[o(` (`+f(e.job.origin.platform)+`)`,1)],64)):c(``,!0)])]),e.job.repeat?(l(),r(`div`,ie,[t(`span`,ae,f(d(h)(`jobs.info.repeat`)),1),t(`span`,oe,[typeof e.job.repeat==`string`?(l(),r(g,{key:0},[o(f(e.job.repeat),1)],64)):(l(),r(g,{key:1},[o(f(e.job.repeat.completed)+` / `+f(e.job.repeat.times??`∞`),1)],64))])])):c(``,!0)]),t(`div`,se,[e.job.state!==`paused`&&e.job.enabled?(l(),_(d(k),{key:0},{trigger:u(()=>[p(d(E),{size:`tiny`,quaternary:``,onClick:D},{default:u(()=>[o(f(d(h)(`jobs.action.pause`)),1)]),_:1})]),default:u(()=>[o(` `+f(d(h)(`jobs.action.pauseJob`)),1)]),_:1})):e.job.state===`paused`?(l(),_(d(k),{key:1},{trigger:u(()=>[p(d(E),{size:`tiny`,quaternary:``,onClick:O},{default:u(()=>[o(f(d(h)(`jobs.action.resume`)),1)]),_:1})]),default:u(()=>[o(` `+f(d(h)(`jobs.action.resumeJob`)),1)]),_:1})):c(``,!0),p(d(k),null,{trigger:u(()=>[p(d(E),{size:`tiny`,quaternary:``,onClick:j},{default:u(()=>[o(f(d(h)(`jobs.action.runNow`)),1)]),_:1})]),default:u(()=>[o(` `+f(d(h)(`jobs.action.triggerImmediately`)),1)]),_:1}),p(d(E),{size:`tiny`,quaternary:``,onClick:i[0]||=e=>a(`edit`,x.value)},{default:u(()=>[o(f(d(h)(`common.edit`)),1)]),_:1}),p(d(E),{size:`tiny`,quaternary:``,type:`error`,onClick:M},{default:u(()=>[o(f(d(h)(`common.delete`)),1)]),_:1})])]))}}),[[`__scopeId`,`data-v-5c958088`]]),ce={key:0,class:`empty-state`},le={key:1,class:`jobs-grid`},ue=x(e({__name:`JobsPanel`,emits:[`edit`],setup(e,{emit:i}){let{t:o}=b(),s=i,c=z();return(e,i)=>d(c).jobs.length===0?(l(),r(`div`,ce,[i[0]||=n(`<svg width="48" height="48" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1" class="empty-icon" data-v-a0a8d138><rect x="3" y="4" width="18" height="18" rx="2" ry="2" data-v-a0a8d138></rect><line x1="16" y1="2" x2="16" y2="6" data-v-a0a8d138></line><line x1="8" y1="2" x2="8" y2="6" data-v-a0a8d138></line><line x1="3" y1="10" x2="21" y2="10" data-v-a0a8d138></line></svg>`,1),t(`p`,null,f(d(o)(`jobs.noJobs`)),1)])):(l(),r(`div`,le,[(l(!0),r(g,null,a(d(c).jobs,e=>(l(),_($,{key:e.id,job:e,onEdit:t=>s(`edit`,e.id)},null,8,[`job`,`onEdit`]))),128))]))}}),[[`__scopeId`,`data-v-a0a8d138`]]),de={class:`modal-footer`},fe=x(e({__name:`JobFormModal`,props:{jobId:{}},emits:[`close`,`saved`],setup(e,{emit:n}){let{t:r}=b(),a=e,c=n,m=z(),g=A(),v=h(!0),x=h(!1),k=h({name:``,schedule:``,prompt:``,deliver:`origin`,repeat_times:null}),j=h(null),M=s(()=>!!a.jobId),N=s(()=>[{label:r(`jobs.presetEveryMinute`),value:`* * * * *`},{label:r(`jobs.presetEvery5Min`),value:`*/5 * * * *`},{label:r(`jobs.presetEveryHour`),value:`0 * * * *`},{label:r(`jobs.presetEveryDay`),value:`0 0 * * *`},{label:r(`jobs.presetEveryDay9`),value:`0 9 * * *`},{label:r(`jobs.presetEveryMonday`),value:`0 9 * * 1`},{label:r(`jobs.presetEveryMonth`),value:`0 9 1 * *`}]),P=s(()=>[{label:r(`jobs.origin`),value:`origin`},{label:r(`jobs.local`),value:`local`}]),F=h(null);i(async()=>{if(a.jobId)try{let{getJob:e}=await y(async()=>{let{getJob:e}=await import(`./jobs-hrnPO3Z3.js`);return{getJob:e}},__vite__mapDeps([0,1,2,3,4])),t=await e(a.jobId);k.value={name:t.name,schedule:typeof t.schedule==`string`?t.schedule:t.schedule?.expr||t.schedule_display||``,prompt:t.prompt,deliver:t.deliver||`origin`,repeat_times:typeof t.repeat==`number`?t.repeat:typeof t.repeat==`object`?t.repeat.times:null},typeof t.schedule==`object`&&t.schedule&&(F.value=t.schedule)}catch(e){g.error(r(`jobs.loadFailed`)+`: `+e.message)}});async function I(){if(!k.value.name.trim()){g.warning(r(`jobs.nameRequired`));return}if(!k.value.schedule.trim()){g.warning(r(`jobs.scheduleRequired`));return}x.value=!0;try{let e={name:k.value.name,schedule:k.value.schedule,prompt:k.value.prompt,deliver:k.value.deliver,repeat:k.value.repeat_times??void 0};M.value&&F.value&&(e.schedule={kind:F.value.kind,expr:k.value.schedule,display:k.value.schedule}),M.value?(await m.updateJob(a.jobId,e),g.success(r(`jobs.jobUpdated`))):(await m.createJob(e),g.success(r(`jobs.jobCreated`))),c(`saved`)}catch(e){g.error(e.message)}finally{x.value=!1}}function L(){v.value=!1,setTimeout(()=>c(`close`),200)}return(e,n)=>(l(),_(d(S),{show:v.value,"onUpdate:show":n[7]||=e=>v.value=e,preset:`card`,title:M.value?d(r)(`jobs.editJob`):d(r)(`jobs.createJob`),style:{width:`min(520px, calc(100vw - 32px))`},"mask-closable":!x.value,onAfterLeave:n[8]||=e=>c(`close`)},{footer:u(()=>[t(`div`,de,[p(d(E),{onClick:L},{default:u(()=>[o(f(d(r)(`common.cancel`)),1)]),_:1}),p(d(E),{type:`primary`,loading:x.value,onClick:I},{default:u(()=>[o(f(M.value?d(r)(`common.update`):d(r)(`common.create`)),1)]),_:1},8,[`loading`])])]),default:u(()=>[p(d(C),{"label-placement":`top`},{default:u(()=>[p(d(w),{label:d(r)(`jobs.name`),required:``},{default:u(()=>[p(d(D),{value:k.value.name,"onUpdate:value":n[0]||=e=>k.value.name=e,placeholder:d(r)(`jobs.namePlaceholder`),maxlength:`200`,"show-count":``},null,8,[`value`,`placeholder`])]),_:1},8,[`label`]),p(d(w),{label:d(r)(`jobs.schedule`),required:``},{default:u(()=>[p(d(D),{value:k.value.schedule,"onUpdate:value":n[1]||=e=>k.value.schedule=e,placeholder:d(r)(`jobs.schedulePlaceholder`)},null,8,[`value`,`placeholder`])]),_:1},8,[`label`]),p(d(w),{label:d(r)(`jobs.quickPresets`)},{default:u(()=>[p(d(T),{value:j.value,"onUpdate:value":[n[2]||=e=>j.value=e,n[3]||=e=>k.value.schedule=e],options:N.value,placeholder:d(r)(`jobs.selectPreset`)},null,8,[`value`,`options`,`placeholder`])]),_:1},8,[`label`]),p(d(w),{label:d(r)(`jobs.prompt`),required:``},{default:u(()=>[p(d(D),{value:k.value.prompt,"onUpdate:value":n[4]||=e=>k.value.prompt=e,type:`textarea`,placeholder:d(r)(`jobs.promptPlaceholder`),rows:4,maxlength:`5000`,"show-count":``},null,8,[`value`,`placeholder`])]),_:1},8,[`label`]),p(d(w),{label:d(r)(`jobs.deliverTarget`)},{default:u(()=>[p(d(T),{value:k.value.deliver,"onUpdate:value":n[5]||=e=>k.value.deliver=e,options:P.value},null,8,[`value`,`options`])]),_:1},8,[`label`]),p(d(w),{label:d(r)(`jobs.repeatCount`)},{default:u(()=>[p(d(O),{value:k.value.repeat_times,"onUpdate:value":n[6]||=e=>k.value.repeat_times=e,min:1,placeholder:d(r)(`jobs.repeatPlaceholder`),clearable:``,style:{width:`100%`}},null,8,[`value`,`placeholder`])]),_:1},8,[`label`])]),_:1})]),_:1},8,[`show`,`title`,`mask-closable`]))}}),[[`__scopeId`,`data-v-b339cfa2`]]),pe={class:`jobs-view`},me={class:`page-header`},he={class:`header-title`},ge={class:`jobs-content`},_e=x(e({__name:`JobsView`,setup(e){let{t:n}=b(),a=z(),s=h(!1),m=h(null);i(()=>{a.fetchJobs()});function g(){m.value=null,s.value=!0}function v(e){m.value=e,s.value=!0}function y(){s.value=!1,m.value=null}async function x(){await a.fetchJobs(),y()}return(e,i)=>(l(),r(`div`,pe,[t(`header`,me,[t(`h2`,he,f(d(n)(`jobs.title`)),1),p(d(E),{type:`primary`,size:`small`,onClick:g},{icon:u(()=>[...i[0]||=[t(`svg`,{width:`14`,height:`14`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`},[t(`line`,{x1:`12`,y1:`5`,x2:`12`,y2:`19`}),t(`line`,{x1:`5`,y1:`12`,x2:`19`,y2:`12`})],-1)]]),default:u(()=>[o(` `+f(d(n)(`jobs.createJob`)),1)]),_:1})]),t(`div`,ge,[p(d(j),{show:d(a).loading&&d(a).jobs.length===0},{default:u(()=>[p(ue,{onEdit:v})]),_:1},8,[`show`])]),s.value?(l(),_(fe,{key:0,"job-id":m.value,onClose:y,onSaved:x},null,8,[`job-id`])):c(``,!0)]))}}),[[`__scopeId`,`data-v-c0d68ae3`]]);export{_e as default};
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/jobs-BU4gTDEL.js","assets/jobs-BTyvome9.js","assets/router-CaAe9JO4.js","assets/chunk-DECur_0Z.js","assets/preload-helper-rov5CBGT.js"])))=>i.map(i=>d[i]);
2
+ import{A as e,C as t,D as n,E as r,H as i,K as a,O as o,S as s,T as c,W as l,Z as u,ft as d,ht as f,k as p,pt as m,st as h,v as g,w as _}from"./router-CaAe9JO4.js";import{n as v}from"./pinia-bdzJ4xO3.js";import{t as y}from"./preload-helper-rov5CBGT.js";import{r as b,t as x}from"./_plugin-vue_export-helper-BluKv70e.js";import{t as S}from"./Modal-Bnl1jpF4.js";import{n as C,t as w}from"./FormItem-Cc8qgWls.js";import{t as T}from"./Select-BH-f48aR.js";import{t as E}from"./Button-CYfnxZGL.js";import{t as D}from"./Input-dIiSr6EM.js";import{t as O}from"./InputNumber-DxP12ti-.js";import{t as k}from"./Tooltip-DBXeTdKt.js";import{t as A}from"./use-message-DON5YDCV.js";import{t as j}from"./Spin-DxvIMvuO.js";import{a as M,c as N,i as P,n as F,o as I,s as L,t as ee}from"./jobs-BTyvome9.js";function R(e,t){return e.job_id===t||e.id===t}var z=v(`jobs`,()=>{let e=h([]),t=h(!1);async function n(){t.value=!0;try{e.value=await P()}catch(e){console.error(`Failed to fetch jobs:`,e)}finally{t.value=!1}}async function r(t){let n=await ee(t);return e.value.unshift(n),n}async function i(t,n){let r=await N(t,n),i=e.value.findIndex(e=>R(e,t));return i!==-1&&(e.value[i]=r),r}async function a(t){await F(t),e.value=e.value.filter(e=>!R(e,t))}async function o(t){let n=await M(t),r=e.value.findIndex(e=>R(e,t));r!==-1&&(e.value[r]=n)}async function s(t){let n=await I(t),r=e.value.findIndex(e=>R(e,t));r!==-1&&(e.value[r]=n)}async function c(t){let n=await L(t),r=e.value.findIndex(e=>R(e,t));r!==-1&&(e.value[r]=n)}return{jobs:e,loading:t,fetchJobs:n,createJob:r,updateJob:i,deleteJob:a,pauseJob:o,resumeJob:s,runJob:c}}),B={class:`job-card`},V={class:`card-header`},H={class:`job-name`},U={class:`card-body`},W={class:`info-row`},G={class:`info-label`},K={class:`info-value mono`},q={class:`info-row`},J={class:`info-label`},Y={class:`info-value`},X={class:`info-row`},Z={class:`info-label`},Q={class:`info-value`},te={class:`info-row`},ne={class:`info-label`},re={class:`info-value`},ie={key:0,class:`info-row`},ae={class:`info-label`},oe={class:`info-value`},se={class:`card-actions`},$=x(e({__name:`JobCard`,props:{job:{}},emits:[`edit`],setup(e,{emit:n}){let i=e,a=n,{t:h}=b(),v=z(),y=A(),x=s(()=>i.job.job_id||i.job.id),S=s(()=>i.job.state===`running`?h(`jobs.status.running`):i.job.state===`paused`?h(`jobs.status.paused`):i.job.enabled?h(`jobs.status.scheduled`):h(`jobs.status.disabled`)),C=s(()=>i.job.state===`running`?`info`:i.job.state===`paused`?`warning`:i.job.enabled?`success`:`error`),w=s(()=>{let e=i.job.schedule;return typeof e==`string`?e:e?.expr||i.job.schedule_display||`—`}),T=e=>e?new Date(e).toLocaleString():`—`;async function D(){try{await v.pauseJob(x.value),y.success(h(`jobs.jobPaused`))}catch(e){y.error(e.message)}}async function O(){try{await v.resumeJob(x.value),y.success(h(`jobs.jobResumed`))}catch(e){y.error(e.message)}}async function j(){try{await v.runJob(x.value),y.info(h(`jobs.jobTriggered`))}catch(e){y.error(e.message)}}async function M(){try{await v.deleteJob(x.value),y.success(h(`jobs.jobDeleted`))}catch(e){y.error(e.message)}}return(n,i)=>(l(),r(`div`,B,[t(`div`,V,[t(`h3`,H,f(e.job.name),1),t(`span`,{class:m([`status-badge`,C.value])},f(S.value),3)]),t(`div`,U,[t(`div`,W,[t(`span`,G,f(d(h)(`jobs.info.schedule`)),1),t(`code`,K,f(w.value),1)]),t(`div`,q,[t(`span`,J,f(d(h)(`jobs.info.lastRun`)),1),t(`span`,Y,[o(f(T(e.job.last_run_at))+` `,1),e.job.last_status?(l(),r(`span`,{key:0,class:m([`run-status`,{ok:e.job.last_status===`ok`,err:e.job.last_status!==`ok`}])},f(e.job.last_status===`ok`?d(h)(`common.ok`):e.job.last_status),3)):c(``,!0)])]),t(`div`,X,[t(`span`,Z,f(d(h)(`jobs.info.nextRun`)),1),t(`span`,Q,f(T(e.job.next_run_at)),1)]),t(`div`,te,[t(`span`,ne,f(d(h)(`jobs.info.deliver`)),1),t(`span`,re,[o(f(e.job.deliver),1),e.job.origin?(l(),r(g,{key:0},[o(` (`+f(e.job.origin.platform)+`)`,1)],64)):c(``,!0)])]),e.job.repeat?(l(),r(`div`,ie,[t(`span`,ae,f(d(h)(`jobs.info.repeat`)),1),t(`span`,oe,[typeof e.job.repeat==`string`?(l(),r(g,{key:0},[o(f(e.job.repeat),1)],64)):(l(),r(g,{key:1},[o(f(e.job.repeat.completed)+` / `+f(e.job.repeat.times??`∞`),1)],64))])])):c(``,!0)]),t(`div`,se,[e.job.state!==`paused`&&e.job.enabled?(l(),_(d(k),{key:0},{trigger:u(()=>[p(d(E),{size:`tiny`,quaternary:``,onClick:D},{default:u(()=>[o(f(d(h)(`jobs.action.pause`)),1)]),_:1})]),default:u(()=>[o(` `+f(d(h)(`jobs.action.pauseJob`)),1)]),_:1})):e.job.state===`paused`?(l(),_(d(k),{key:1},{trigger:u(()=>[p(d(E),{size:`tiny`,quaternary:``,onClick:O},{default:u(()=>[o(f(d(h)(`jobs.action.resume`)),1)]),_:1})]),default:u(()=>[o(` `+f(d(h)(`jobs.action.resumeJob`)),1)]),_:1})):c(``,!0),p(d(k),null,{trigger:u(()=>[p(d(E),{size:`tiny`,quaternary:``,onClick:j},{default:u(()=>[o(f(d(h)(`jobs.action.runNow`)),1)]),_:1})]),default:u(()=>[o(` `+f(d(h)(`jobs.action.triggerImmediately`)),1)]),_:1}),p(d(E),{size:`tiny`,quaternary:``,onClick:i[0]||=e=>a(`edit`,x.value)},{default:u(()=>[o(f(d(h)(`common.edit`)),1)]),_:1}),p(d(E),{size:`tiny`,quaternary:``,type:`error`,onClick:M},{default:u(()=>[o(f(d(h)(`common.delete`)),1)]),_:1})])]))}}),[[`__scopeId`,`data-v-5c958088`]]),ce={key:0,class:`empty-state`},le={key:1,class:`jobs-grid`},ue=x(e({__name:`JobsPanel`,emits:[`edit`],setup(e,{emit:i}){let{t:o}=b(),s=i,c=z();return(e,i)=>d(c).jobs.length===0?(l(),r(`div`,ce,[i[0]||=n(`<svg width="48" height="48" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1" class="empty-icon" data-v-a0a8d138><rect x="3" y="4" width="18" height="18" rx="2" ry="2" data-v-a0a8d138></rect><line x1="16" y1="2" x2="16" y2="6" data-v-a0a8d138></line><line x1="8" y1="2" x2="8" y2="6" data-v-a0a8d138></line><line x1="3" y1="10" x2="21" y2="10" data-v-a0a8d138></line></svg>`,1),t(`p`,null,f(d(o)(`jobs.noJobs`)),1)])):(l(),r(`div`,le,[(l(!0),r(g,null,a(d(c).jobs,e=>(l(),_($,{key:e.id,job:e,onEdit:t=>s(`edit`,e.id)},null,8,[`job`,`onEdit`]))),128))]))}}),[[`__scopeId`,`data-v-a0a8d138`]]),de={class:`modal-footer`},fe=x(e({__name:`JobFormModal`,props:{jobId:{}},emits:[`close`,`saved`],setup(e,{emit:n}){let{t:r}=b(),a=e,c=n,m=z(),g=A(),v=h(!0),x=h(!1),k=h({name:``,schedule:``,prompt:``,deliver:`origin`,repeat_times:null}),j=h(null),M=s(()=>!!a.jobId),N=s(()=>[{label:r(`jobs.presetEveryMinute`),value:`* * * * *`},{label:r(`jobs.presetEvery5Min`),value:`*/5 * * * *`},{label:r(`jobs.presetEveryHour`),value:`0 * * * *`},{label:r(`jobs.presetEveryDay`),value:`0 0 * * *`},{label:r(`jobs.presetEveryDay9`),value:`0 9 * * *`},{label:r(`jobs.presetEveryMonday`),value:`0 9 * * 1`},{label:r(`jobs.presetEveryMonth`),value:`0 9 1 * *`}]),P=s(()=>[{label:r(`jobs.origin`),value:`origin`},{label:r(`jobs.local`),value:`local`}]),F=h(null);i(async()=>{if(a.jobId)try{let{getJob:e}=await y(async()=>{let{getJob:e}=await import(`./jobs-BU4gTDEL.js`);return{getJob:e}},__vite__mapDeps([0,1,2,3,4])),t=await e(a.jobId);k.value={name:t.name,schedule:typeof t.schedule==`string`?t.schedule:t.schedule?.expr||t.schedule_display||``,prompt:t.prompt,deliver:t.deliver||`origin`,repeat_times:typeof t.repeat==`number`?t.repeat:typeof t.repeat==`object`?t.repeat.times:null},typeof t.schedule==`object`&&t.schedule&&(F.value=t.schedule)}catch(e){g.error(r(`jobs.loadFailed`)+`: `+e.message)}});async function I(){if(!k.value.name.trim()){g.warning(r(`jobs.nameRequired`));return}if(!k.value.schedule.trim()){g.warning(r(`jobs.scheduleRequired`));return}x.value=!0;try{let e={name:k.value.name,schedule:k.value.schedule,prompt:k.value.prompt,deliver:k.value.deliver,repeat:k.value.repeat_times??void 0};M.value&&F.value&&(e.schedule={kind:F.value.kind,expr:k.value.schedule,display:k.value.schedule}),M.value?(await m.updateJob(a.jobId,e),g.success(r(`jobs.jobUpdated`))):(await m.createJob(e),g.success(r(`jobs.jobCreated`))),c(`saved`)}catch(e){g.error(e.message)}finally{x.value=!1}}function L(){v.value=!1,setTimeout(()=>c(`close`),200)}return(e,n)=>(l(),_(d(S),{show:v.value,"onUpdate:show":n[7]||=e=>v.value=e,preset:`card`,title:M.value?d(r)(`jobs.editJob`):d(r)(`jobs.createJob`),style:{width:`min(520px, calc(100vw - 32px))`},"mask-closable":!x.value,onAfterLeave:n[8]||=e=>c(`close`)},{footer:u(()=>[t(`div`,de,[p(d(E),{onClick:L},{default:u(()=>[o(f(d(r)(`common.cancel`)),1)]),_:1}),p(d(E),{type:`primary`,loading:x.value,onClick:I},{default:u(()=>[o(f(M.value?d(r)(`common.update`):d(r)(`common.create`)),1)]),_:1},8,[`loading`])])]),default:u(()=>[p(d(C),{"label-placement":`top`},{default:u(()=>[p(d(w),{label:d(r)(`jobs.name`),required:``},{default:u(()=>[p(d(D),{value:k.value.name,"onUpdate:value":n[0]||=e=>k.value.name=e,placeholder:d(r)(`jobs.namePlaceholder`),maxlength:`200`,"show-count":``},null,8,[`value`,`placeholder`])]),_:1},8,[`label`]),p(d(w),{label:d(r)(`jobs.schedule`),required:``},{default:u(()=>[p(d(D),{value:k.value.schedule,"onUpdate:value":n[1]||=e=>k.value.schedule=e,placeholder:d(r)(`jobs.schedulePlaceholder`)},null,8,[`value`,`placeholder`])]),_:1},8,[`label`]),p(d(w),{label:d(r)(`jobs.quickPresets`)},{default:u(()=>[p(d(T),{value:j.value,"onUpdate:value":[n[2]||=e=>j.value=e,n[3]||=e=>k.value.schedule=e],options:N.value,placeholder:d(r)(`jobs.selectPreset`)},null,8,[`value`,`options`,`placeholder`])]),_:1},8,[`label`]),p(d(w),{label:d(r)(`jobs.prompt`),required:``},{default:u(()=>[p(d(D),{value:k.value.prompt,"onUpdate:value":n[4]||=e=>k.value.prompt=e,type:`textarea`,placeholder:d(r)(`jobs.promptPlaceholder`),rows:4,maxlength:`5000`,"show-count":``},null,8,[`value`,`placeholder`])]),_:1},8,[`label`]),p(d(w),{label:d(r)(`jobs.deliverTarget`)},{default:u(()=>[p(d(T),{value:k.value.deliver,"onUpdate:value":n[5]||=e=>k.value.deliver=e,options:P.value},null,8,[`value`,`options`])]),_:1},8,[`label`]),p(d(w),{label:d(r)(`jobs.repeatCount`)},{default:u(()=>[p(d(O),{value:k.value.repeat_times,"onUpdate:value":n[6]||=e=>k.value.repeat_times=e,min:1,placeholder:d(r)(`jobs.repeatPlaceholder`),clearable:``,style:{width:`100%`}},null,8,[`value`,`placeholder`])]),_:1},8,[`label`])]),_:1})]),_:1},8,[`show`,`title`,`mask-closable`]))}}),[[`__scopeId`,`data-v-b339cfa2`]]),pe={class:`jobs-view`},me={class:`page-header`},he={class:`header-title`},ge={class:`jobs-content`},_e=x(e({__name:`JobsView`,setup(e){let{t:n}=b(),a=z(),s=h(!1),m=h(null);i(()=>{a.fetchJobs()});function g(){m.value=null,s.value=!0}function v(e){m.value=e,s.value=!0}function y(){s.value=!1,m.value=null}async function x(){await a.fetchJobs(),y()}return(e,i)=>(l(),r(`div`,pe,[t(`header`,me,[t(`h2`,he,f(d(n)(`jobs.title`)),1),p(d(E),{type:`primary`,size:`small`,onClick:g},{icon:u(()=>[...i[0]||=[t(`svg`,{width:`14`,height:`14`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`},[t(`line`,{x1:`12`,y1:`5`,x2:`12`,y2:`19`}),t(`line`,{x1:`5`,y1:`12`,x2:`19`,y2:`12`})],-1)]]),default:u(()=>[o(` `+f(d(n)(`jobs.createJob`)),1)]),_:1})]),t(`div`,ge,[p(d(j),{show:d(a).loading&&d(a).jobs.length===0},{default:u(()=>[p(ue,{onEdit:v})]),_:1},8,[`show`])]),s.value?(l(),_(fe,{key:0,"job-id":m.value,onClose:y,onSaved:x},null,8,[`job-id`])):c(``,!0)]))}}),[[`__scopeId`,`data-v-c0d68ae3`]]);export{_e as default};
@@ -1 +1 @@
1
- import{A as e,C as t,E as n,H as r,Q as i,T as a,W as o,c as s,ft as c,g as l,h as u,ht as d,i as f,o as p,p as m,pt as h,st as g,v as _}from"./router-BDvjwA-_.js";import{r as v,t as y}from"./_plugin-vue_export-helper-BA1W5EEO.js";import"./logo-D12u0f1i.js";import{i as b,r as x}from"./auth-DKa161qW.js";var S={class:`login-view`},C={class:`login-card`},w={class:`login-title`},T={class:`login-desc`},E={key:0,class:`login-method-toggle`},D=[`placeholder`],O=[`placeholder`],k=[`placeholder`],A={key:2,class:`login-error`},j=[`disabled`],M=y(e({__name:`LoginView`,setup(e){let{t:y}=v(),M=s(),N=window.__LOGIN_TOKEN__||``,P=g(N),F=g(``),I=g(``),L=g(!1),R=g(``),z=g(`token`),B=g(!1);f()&&M.replace(`/hermes/chat`),r(async()=>{try{let e=await x();B.value=e.hasPasswordLogin,e.hasPasswordLogin&&!N&&(z.value=`password`)}catch{}});async function V(){z.value===`token`?await H():await U()}async function H(){let e=P.value.trim();if(!e){R.value=y(`login.tokenRequired`);return}L.value=!0,R.value=``;try{if((await fetch(`/api/sessions`,{headers:{Authorization:`Bearer ${e}`}})).status===401){R.value=y(`login.invalidToken`),L.value=!1;return}p(e),M.replace(`/hermes/chat`)}catch{R.value=y(`login.connectionFailed`)}finally{L.value=!1}}async function U(){if(!F.value.trim()||!I.value){R.value=y(`login.credentialsRequired`);return}L.value=!0,R.value=``;try{p(await b(F.value.trim(),I.value)),M.replace(`/hermes/chat`)}catch(e){R.value=e.message||y(`login.invalidCredentials`)}finally{L.value=!1}}return(e,r)=>(o(),n(`div`,S,[t(`div`,C,[r[5]||=t(`div`,{class:`login-logo`},[t(`img`,{src:`/logo.png`,alt:`Hermes`,width:`80`,height:`80`})],-1),t(`h1`,w,d(c(y)(`login.title`)),1),t(`p`,T,d(c(y)(`login.description`)),1),B.value?(o(),n(`div`,E,[t(`button`,{class:h([`toggle-btn`,{active:z.value===`password`}]),onClick:r[0]||=e=>z.value=`password`},d(c(y)(`login.passwordLogin`)),3),t(`button`,{class:h([`toggle-btn`,{active:z.value===`token`}]),onClick:r[1]||=e=>z.value=`token`},d(c(y)(`login.tokenLogin`)),3)])):a(``,!0),t(`form`,{class:`login-form`,onSubmit:l(V,[`prevent`])},[z.value===`token`?i((o(),n(`input`,{key:0,"onUpdate:modelValue":r[2]||=e=>P.value=e,type:`password`,class:`login-input`,placeholder:c(y)(`login.placeholder`),autofocus:``},null,8,D)),[[m,P.value]]):a(``,!0),z.value===`password`?(o(),n(_,{key:1},[i(t(`input`,{"onUpdate:modelValue":r[3]||=e=>F.value=e,type:`text`,class:`login-input`,placeholder:c(y)(`login.usernamePlaceholder`),autofocus:``},null,8,O),[[m,F.value]]),i(t(`input`,{"onUpdate:modelValue":r[4]||=e=>I.value=e,type:`password`,class:`login-input`,placeholder:c(y)(`login.passwordPlaceholder`),onKeyup:u(V,[`enter`])},null,40,k),[[m,I.value]])],64)):a(``,!0),R.value?(o(),n(`div`,A,d(R.value),1)):a(``,!0),t(`button`,{type:`submit`,class:`login-btn`,disabled:L.value},d(L.value?`...`:c(y)(`login.submit`)),9,j)],32)])]))}}),[[`__scopeId`,`data-v-852ca6c8`]]);export{M as default};
1
+ import{A as e,C as t,E as n,H as r,Q as i,T as a,W as o,c as s,ft as c,g as l,h as u,ht as d,i as f,o as p,p as m,pt as h,st as g,v as _}from"./router-CaAe9JO4.js";import{r as v,t as y}from"./_plugin-vue_export-helper-BluKv70e.js";import"./logo-D12u0f1i.js";import{i as b,r as x}from"./auth-BBhO2bph.js";var S={class:`login-view`},C={class:`login-card`},w={class:`login-title`},T={class:`login-desc`},E={key:0,class:`login-method-toggle`},D=[`placeholder`],O=[`placeholder`],k=[`placeholder`],A={key:2,class:`login-error`},j=[`disabled`],M=y(e({__name:`LoginView`,setup(e){let{t:y}=v(),M=s(),N=window.__LOGIN_TOKEN__||``,P=g(N),F=g(``),I=g(``),L=g(!1),R=g(``),z=g(`token`),B=g(!1);f()&&M.replace(`/hermes/chat`),r(async()=>{try{let e=await x();B.value=e.hasPasswordLogin,e.hasPasswordLogin&&!N&&(z.value=`password`)}catch{}});async function V(){z.value===`token`?await H():await U()}async function H(){let e=P.value.trim();if(!e){R.value=y(`login.tokenRequired`);return}L.value=!0,R.value=``;try{if((await fetch(`/api/sessions`,{headers:{Authorization:`Bearer ${e}`}})).status===401){R.value=y(`login.invalidToken`),L.value=!1;return}p(e),M.replace(`/hermes/chat`)}catch{R.value=y(`login.connectionFailed`)}finally{L.value=!1}}async function U(){if(!F.value.trim()||!I.value){R.value=y(`login.credentialsRequired`);return}L.value=!0,R.value=``;try{p(await b(F.value.trim(),I.value)),M.replace(`/hermes/chat`)}catch(e){R.value=e.message||y(`login.invalidCredentials`)}finally{L.value=!1}}return(e,r)=>(o(),n(`div`,S,[t(`div`,C,[r[5]||=t(`div`,{class:`login-logo`},[t(`img`,{src:`/logo.png`,alt:`Hermes`,width:`80`,height:`80`})],-1),t(`h1`,w,d(c(y)(`login.title`)),1),t(`p`,T,d(c(y)(`login.description`)),1),B.value?(o(),n(`div`,E,[t(`button`,{class:h([`toggle-btn`,{active:z.value===`password`}]),onClick:r[0]||=e=>z.value=`password`},d(c(y)(`login.passwordLogin`)),3),t(`button`,{class:h([`toggle-btn`,{active:z.value===`token`}]),onClick:r[1]||=e=>z.value=`token`},d(c(y)(`login.tokenLogin`)),3)])):a(``,!0),t(`form`,{class:`login-form`,onSubmit:l(V,[`prevent`])},[z.value===`token`?i((o(),n(`input`,{key:0,"onUpdate:modelValue":r[2]||=e=>P.value=e,type:`password`,class:`login-input`,placeholder:c(y)(`login.placeholder`),autofocus:``},null,8,D)),[[m,P.value]]):a(``,!0),z.value===`password`?(o(),n(_,{key:1},[i(t(`input`,{"onUpdate:modelValue":r[3]||=e=>F.value=e,type:`text`,class:`login-input`,placeholder:c(y)(`login.usernamePlaceholder`),autofocus:``},null,8,O),[[m,F.value]]),i(t(`input`,{"onUpdate:modelValue":r[4]||=e=>I.value=e,type:`password`,class:`login-input`,placeholder:c(y)(`login.passwordPlaceholder`),onKeyup:u(V,[`enter`])},null,40,k),[[m,I.value]])],64)):a(``,!0),R.value?(o(),n(`div`,A,d(R.value),1)):a(``,!0),t(`button`,{type:`submit`,class:`login-btn`,disabled:L.value},d(L.value?`...`:c(y)(`login.submit`)),9,j)],32)])]))}}),[[`__scopeId`,`data-v-852ca6c8`]]);export{M as default};
@@ -1 +1 @@
1
- import{A as e,C as t,E as n,H as r,K as i,O as a,Q as o,S as s,T as ee,W as c,Z as l,a as u,ft as d,ht as f,k as p,p as m,pt as h,st as g,v as _}from"./router-BDvjwA-_.js";import{r as v,t as y}from"./_plugin-vue_export-helper-BA1W5EEO.js";import{t as b}from"./Select-C96PU4NS.js";import{t as x}from"./Button-6kn5x8wB.js";import{t as S}from"./use-message-x3IR-EsB.js";import{t as C}from"./Spin-CNWMVtvF.js";async function w(){return(await u(`/api/hermes/logs`)).files}async function T(e,t){let n=new URLSearchParams;t?.lines&&n.set(`lines`,String(t.lines)),t?.level&&n.set(`level`,t.level),t?.session&&n.set(`session`,t.session),t?.since&&n.set(`since`,t.since);let r=n.toString();return(await u(`/api/hermes/logs/${e}${r?`?${r}`:``}`)).entries.filter(e=>e!==null)}var E={class:`logs-view`},D={class:`page-header`},O={class:`header-title`},k={class:`header-actions`},A=[`placeholder`],j={class:`logs-body`},M={key:0,class:`logs-empty`},N={class:`log-list`},P={class:`log-time`},F={class:`log-logger`},I={class:`access-method`},L={class:`access-path`},R={key:1,class:`log-message`},z=y(e({__name:`LogsView`,setup(e){let{t:u}=v(),y=S(),z=g([]),B=g(`agent`),V=g([]),H=g(!1),U=g(100),W=g(``),G=g(``),K=s(()=>z.value.map(e=>({label:`${e.name} (${e.size})`,value:e.name}))),q=s(()=>[{label:u(`logs.all`),value:``},{label:`ERROR`,value:`ERROR`},{label:`WARNING`,value:`WARNING`},{label:`INFO`,value:`INFO`},{label:`DEBUG`,value:`DEBUG`}]),J=[{label:`50`,value:50},{label:`100`,value:100},{label:`200`,value:200},{label:`500`,value:500}],Y=s(()=>{if(!G.value)return V.value;let e=G.value.toLowerCase();return V.value.filter(t=>t.message.toLowerCase().includes(e)||t.logger.toLowerCase().includes(e)||t.raw.toLowerCase().includes(e))});function X(e){switch(e){case`ERROR`:return`level-error`;case`WARNING`:return`level-warning`;case`DEBUG`:return`level-debug`;default:return`level-info`}}function Z(e){let t=e.match(/\d{2}:\d{2}:\d{2}/);return t?t[0]:e}function Q(e){let t=e.match(/"(\w+)\s+(\S+)\s+HTTP\/[^"]+"\s+(\d+)/);return t?{method:t[1],path:t[2],status:t[3]}:null}async function $(){H.value=!0;try{V.value=(await T(B.value,{lines:U.value,level:W.value||void 0})).filter(e=>e!==null)}catch(e){y.error(e.message)}finally{H.value=!1}}return r(async()=>{z.value=await w(),await $()}),(e,r)=>(c(),n(`div`,E,[t(`header`,D,[t(`h2`,O,f(d(u)(`logs.title`)),1),t(`div`,k,[p(d(b),{value:B.value,"onUpdate:value":[r[0]||=e=>B.value=e,$],options:K.value,size:`small`,class:`input-md`},null,8,[`value`,`options`]),p(d(b),{value:W.value,options:q.value,size:`small`,class:`input-sm`,"onUpdate:value":r[1]||=e=>{W.value=e,$()}},null,8,[`value`,`options`]),p(d(b),{value:U.value,options:J,size:`small`,class:`input-sm`,"onUpdate:value":r[2]||=e=>{U.value=e,$()}},null,8,[`value`]),o(t(`input`,{"onUpdate:modelValue":r[3]||=e=>G.value=e,class:`search-input`,placeholder:d(u)(`logs.searchPlaceholder`)},null,8,A),[[m,G.value]]),p(d(x),{size:`small`,loading:H.value,onClick:$},{default:l(()=>[a(f(d(u)(`logs.refresh`)),1)]),_:1},8,[`loading`])])]),t(`div`,j,[p(d(C),{show:H.value},{default:l(()=>[Y.value.length===0&&!H.value?(c(),n(`div`,M,f(d(u)(`logs.noEntries`)),1)):ee(``,!0),t(`div`,N,[(c(!0),n(_,null,i(Y.value,(e,r)=>(c(),n(`div`,{key:r,class:h([`log-entry`,X(e.level)])},[t(`span`,P,f(Z(e.timestamp)),1),t(`span`,{class:h([`log-level`,X(e.level)])},f(e.level),3),t(`span`,F,f(e.logger),1),Q(e.message)?(c(),n(_,{key:0},[t(`span`,I,f(Q(e.message).method),1),t(`span`,L,f(Q(e.message).path),1),t(`span`,{class:h([`access-status`,`status-`+(Q(e.message).status?.[0]||`x`)])},f(Q(e.message).status),3)],64)):(c(),n(`span`,R,f(e.message),1))],2))),128))])]),_:1},8,[`show`])])]))}}),[[`__scopeId`,`data-v-c785e2a9`]]);export{z as default};
1
+ import{A as e,C as t,E as n,H as r,K as i,O as a,Q as o,S as s,T as ee,W as c,Z as l,a as u,ft as d,ht as f,k as p,p as m,pt as h,st as g,v as _}from"./router-CaAe9JO4.js";import{r as v,t as y}from"./_plugin-vue_export-helper-BluKv70e.js";import{t as b}from"./Select-BH-f48aR.js";import{t as x}from"./Button-CYfnxZGL.js";import{t as S}from"./use-message-DON5YDCV.js";import{t as C}from"./Spin-DxvIMvuO.js";async function w(){return(await u(`/api/hermes/logs`)).files}async function T(e,t){let n=new URLSearchParams;t?.lines&&n.set(`lines`,String(t.lines)),t?.level&&n.set(`level`,t.level),t?.session&&n.set(`session`,t.session),t?.since&&n.set(`since`,t.since);let r=n.toString();return(await u(`/api/hermes/logs/${e}${r?`?${r}`:``}`)).entries.filter(e=>e!==null)}var E={class:`logs-view`},D={class:`page-header`},O={class:`header-title`},k={class:`header-actions`},A=[`placeholder`],j={class:`logs-body`},M={key:0,class:`logs-empty`},N={class:`log-list`},P={class:`log-time`},F={class:`log-logger`},I={class:`access-method`},L={class:`access-path`},R={key:1,class:`log-message`},z=y(e({__name:`LogsView`,setup(e){let{t:u}=v(),y=S(),z=g([]),B=g(`agent`),V=g([]),H=g(!1),U=g(100),W=g(``),G=g(``),K=s(()=>z.value.map(e=>({label:`${e.name} (${e.size})`,value:e.name}))),q=s(()=>[{label:u(`logs.all`),value:``},{label:`ERROR`,value:`ERROR`},{label:`WARNING`,value:`WARNING`},{label:`INFO`,value:`INFO`},{label:`DEBUG`,value:`DEBUG`}]),J=[{label:`50`,value:50},{label:`100`,value:100},{label:`200`,value:200},{label:`500`,value:500}],Y=s(()=>{if(!G.value)return V.value;let e=G.value.toLowerCase();return V.value.filter(t=>t.message.toLowerCase().includes(e)||t.logger.toLowerCase().includes(e)||t.raw.toLowerCase().includes(e))});function X(e){switch(e){case`ERROR`:return`level-error`;case`WARNING`:return`level-warning`;case`DEBUG`:return`level-debug`;default:return`level-info`}}function Z(e){let t=e.match(/\d{2}:\d{2}:\d{2}/);return t?t[0]:e}function Q(e){let t=e.match(/"(\w+)\s+(\S+)\s+HTTP\/[^"]+"\s+(\d+)/);return t?{method:t[1],path:t[2],status:t[3]}:null}async function $(){H.value=!0;try{V.value=(await T(B.value,{lines:U.value,level:W.value||void 0})).filter(e=>e!==null)}catch(e){y.error(e.message)}finally{H.value=!1}}return r(async()=>{z.value=await w(),await $()}),(e,r)=>(c(),n(`div`,E,[t(`header`,D,[t(`h2`,O,f(d(u)(`logs.title`)),1),t(`div`,k,[p(d(b),{value:B.value,"onUpdate:value":[r[0]||=e=>B.value=e,$],options:K.value,size:`small`,class:`input-md`},null,8,[`value`,`options`]),p(d(b),{value:W.value,options:q.value,size:`small`,class:`input-sm`,"onUpdate:value":r[1]||=e=>{W.value=e,$()}},null,8,[`value`,`options`]),p(d(b),{value:U.value,options:J,size:`small`,class:`input-sm`,"onUpdate:value":r[2]||=e=>{U.value=e,$()}},null,8,[`value`]),o(t(`input`,{"onUpdate:modelValue":r[3]||=e=>G.value=e,class:`search-input`,placeholder:d(u)(`logs.searchPlaceholder`)},null,8,A),[[m,G.value]]),p(d(x),{size:`small`,loading:H.value,onClick:$},{default:l(()=>[a(f(d(u)(`logs.refresh`)),1)]),_:1},8,[`loading`])])]),t(`div`,j,[p(d(C),{show:H.value},{default:l(()=>[Y.value.length===0&&!H.value?(c(),n(`div`,M,f(d(u)(`logs.noEntries`)),1)):ee(``,!0),t(`div`,N,[(c(!0),n(_,null,i(Y.value,(e,r)=>(c(),n(`div`,{key:r,class:h([`log-entry`,X(e.level)])},[t(`span`,P,f(Z(e.timestamp)),1),t(`span`,{class:h([`log-level`,X(e.level)])},f(e.level),3),t(`span`,F,f(e.logger),1),Q(e.message)?(c(),n(_,{key:0},[t(`span`,I,f(Q(e.message).method),1),t(`span`,L,f(Q(e.message).path),1),t(`span`,{class:h([`access-status`,`status-`+(Q(e.message).status?.[0]||`x`)])},f(Q(e.message).status),3)],64)):(c(),n(`span`,R,f(e.message),1))],2))),128))])]),_:1},8,[`show`])])]))}}),[[`__scopeId`,`data-v-c785e2a9`]]);export{z as default};
@@ -1,4 +1,4 @@
1
- import{n as e,r as t,t as n}from"./chunk-DECur_0Z.js";import{A as r,E as i,S as a,W as o,n as s,r as c}from"./router-BDvjwA-_.js";import{r as l}from"./_plugin-vue_export-helper-BA1W5EEO.js";import{t as u}from"./use-message-x3IR-EsB.js";function d(e,t){let n=c(),r=new URLSearchParams({path:e});t&&r.set(`name`,t);let i=s();return i&&r.set(`token`,i),`${n}/api/hermes/download?${r.toString()}`}async function f(e,t){let n=d(e,t),r=await fetch(n);if(!r.ok){let e=await r.json().catch(()=>({error:`HTTP ${r.status}`}));throw Error(e.error||`Download failed: ${r.status}`)}let i=await r.blob(),a=URL.createObjectURL(i),o=document.createElement(`a`);o.href=a,o.download=t||e.split(`/`).pop()||`download`,document.body.appendChild(o),o.click(),document.body.removeChild(o),URL.revokeObjectURL(a)}var p={};function m(e){let t=p[e];if(t)return t;t=p[e]=[];for(let e=0;e<128;e++){let n=String.fromCharCode(e);t.push(n)}for(let n=0;n<e.length;n++){let r=e.charCodeAt(n);t[r]=`%`+(`0`+r.toString(16).toUpperCase()).slice(-2)}return t}function h(e,t){typeof t!=`string`&&(t=h.defaultChars);let n=m(t);return e.replace(/(%[a-f0-9]{2})+/gi,function(e){let t=``;for(let r=0,i=e.length;r<i;r+=3){let a=parseInt(e.slice(r+1,r+3),16);if(a<128){t+=n[a];continue}if((a&224)==192&&r+3<i){let n=parseInt(e.slice(r+4,r+6),16);if((n&192)==128){let e=a<<6&1984|n&63;e<128?t+=`��`:t+=String.fromCharCode(e),r+=3;continue}}if((a&240)==224&&r+6<i){let n=parseInt(e.slice(r+4,r+6),16),i=parseInt(e.slice(r+7,r+9),16);if((n&192)==128&&(i&192)==128){let e=a<<12&61440|n<<6&4032|i&63;e<2048||e>=55296&&e<=57343?t+=`���`:t+=String.fromCharCode(e),r+=6;continue}}if((a&248)==240&&r+9<i){let n=parseInt(e.slice(r+4,r+6),16),i=parseInt(e.slice(r+7,r+9),16),o=parseInt(e.slice(r+10,r+12),16);if((n&192)==128&&(i&192)==128&&(o&192)==128){let e=a<<18&1835008|n<<12&258048|i<<6&4032|o&63;e<65536||e>1114111?t+=`����`:(e-=65536,t+=String.fromCharCode(55296+(e>>10),56320+(e&1023))),r+=9;continue}}t+=`�`}return t})}h.defaultChars=`;/?:@&=+$,#`,h.componentChars=``;var g={};function _(e){let t=g[e];if(t)return t;t=g[e]=[];for(let e=0;e<128;e++){let n=String.fromCharCode(e);/^[0-9a-z]$/i.test(n)?t.push(n):t.push(`%`+(`0`+e.toString(16).toUpperCase()).slice(-2))}for(let n=0;n<e.length;n++)t[e.charCodeAt(n)]=e[n];return t}function v(e,t,n){typeof t!=`string`&&(n=t,t=v.defaultChars),n===void 0&&(n=!0);let r=_(t),i=``;for(let t=0,a=e.length;t<a;t++){let o=e.charCodeAt(t);if(n&&o===37&&t+2<a&&/^[0-9a-f]{2}$/i.test(e.slice(t+1,t+3))){i+=e.slice(t,t+3),t+=2;continue}if(o<128){i+=r[o];continue}if(o>=55296&&o<=57343){if(o>=55296&&o<=56319&&t+1<a){let n=e.charCodeAt(t+1);if(n>=56320&&n<=57343){i+=encodeURIComponent(e[t]+e[t+1]),t++;continue}}i+=`%EF%BF%BD`;continue}i+=encodeURIComponent(e[t])}return i}v.defaultChars=`;/?:@&=+$,-_.!~*'()#`,v.componentChars=`-_.!~*'()`;function y(e){let t=``;return t+=e.protocol||``,t+=e.slashes?`//`:``,t+=e.auth?e.auth+`@`:``,e.hostname&&e.hostname.indexOf(`:`)!==-1?t+=`[`+e.hostname+`]`:t+=e.hostname||``,t+=e.port?`:`+e.port:``,t+=e.pathname||``,t+=e.search||``,t+=e.hash||``,t}function b(){this.protocol=null,this.slashes=null,this.auth=null,this.port=null,this.hostname=null,this.hash=null,this.search=null,this.pathname=null}var x=/^([a-z0-9.+-]+:)/i,S=/:[0-9]*$/,C=/^(\/\/?(?!\/)[^\?\s]*)(\?[^\s]*)?$/,w=[`%`,`/`,`?`,`;`,`#`,`'`,`{`,`}`,`|`,`\\`,`^`,"`",`<`,`>`,`"`,"`",` `,`\r`,`
1
+ import{n as e,r as t,t as n}from"./chunk-DECur_0Z.js";import{A as r,E as i,S as a,W as o,n as s,r as c}from"./router-CaAe9JO4.js";import{r as l}from"./_plugin-vue_export-helper-BluKv70e.js";import{t as u}from"./use-message-DON5YDCV.js";function d(e,t){let n=c(),r=new URLSearchParams({path:e});t&&r.set(`name`,t);let i=s();return i&&r.set(`token`,i),`${n}/api/hermes/download?${r.toString()}`}async function f(e,t){let n=d(e,t),r=await fetch(n);if(!r.ok){let e=await r.json().catch(()=>({error:`HTTP ${r.status}`}));throw Error(e.error||`Download failed: ${r.status}`)}let i=await r.blob(),a=URL.createObjectURL(i),o=document.createElement(`a`);o.href=a,o.download=t||e.split(`/`).pop()||`download`,document.body.appendChild(o),o.click(),document.body.removeChild(o),URL.revokeObjectURL(a)}var p={};function m(e){let t=p[e];if(t)return t;t=p[e]=[];for(let e=0;e<128;e++){let n=String.fromCharCode(e);t.push(n)}for(let n=0;n<e.length;n++){let r=e.charCodeAt(n);t[r]=`%`+(`0`+r.toString(16).toUpperCase()).slice(-2)}return t}function h(e,t){typeof t!=`string`&&(t=h.defaultChars);let n=m(t);return e.replace(/(%[a-f0-9]{2})+/gi,function(e){let t=``;for(let r=0,i=e.length;r<i;r+=3){let a=parseInt(e.slice(r+1,r+3),16);if(a<128){t+=n[a];continue}if((a&224)==192&&r+3<i){let n=parseInt(e.slice(r+4,r+6),16);if((n&192)==128){let e=a<<6&1984|n&63;e<128?t+=`��`:t+=String.fromCharCode(e),r+=3;continue}}if((a&240)==224&&r+6<i){let n=parseInt(e.slice(r+4,r+6),16),i=parseInt(e.slice(r+7,r+9),16);if((n&192)==128&&(i&192)==128){let e=a<<12&61440|n<<6&4032|i&63;e<2048||e>=55296&&e<=57343?t+=`���`:t+=String.fromCharCode(e),r+=6;continue}}if((a&248)==240&&r+9<i){let n=parseInt(e.slice(r+4,r+6),16),i=parseInt(e.slice(r+7,r+9),16),o=parseInt(e.slice(r+10,r+12),16);if((n&192)==128&&(i&192)==128&&(o&192)==128){let e=a<<18&1835008|n<<12&258048|i<<6&4032|o&63;e<65536||e>1114111?t+=`����`:(e-=65536,t+=String.fromCharCode(55296+(e>>10),56320+(e&1023))),r+=9;continue}}t+=`�`}return t})}h.defaultChars=`;/?:@&=+$,#`,h.componentChars=``;var g={};function _(e){let t=g[e];if(t)return t;t=g[e]=[];for(let e=0;e<128;e++){let n=String.fromCharCode(e);/^[0-9a-z]$/i.test(n)?t.push(n):t.push(`%`+(`0`+e.toString(16).toUpperCase()).slice(-2))}for(let n=0;n<e.length;n++)t[e.charCodeAt(n)]=e[n];return t}function v(e,t,n){typeof t!=`string`&&(n=t,t=v.defaultChars),n===void 0&&(n=!0);let r=_(t),i=``;for(let t=0,a=e.length;t<a;t++){let o=e.charCodeAt(t);if(n&&o===37&&t+2<a&&/^[0-9a-f]{2}$/i.test(e.slice(t+1,t+3))){i+=e.slice(t,t+3),t+=2;continue}if(o<128){i+=r[o];continue}if(o>=55296&&o<=57343){if(o>=55296&&o<=56319&&t+1<a){let n=e.charCodeAt(t+1);if(n>=56320&&n<=57343){i+=encodeURIComponent(e[t]+e[t+1]),t++;continue}}i+=`%EF%BF%BD`;continue}i+=encodeURIComponent(e[t])}return i}v.defaultChars=`;/?:@&=+$,-_.!~*'()#`,v.componentChars=`-_.!~*'()`;function y(e){let t=``;return t+=e.protocol||``,t+=e.slashes?`//`:``,t+=e.auth?e.auth+`@`:``,e.hostname&&e.hostname.indexOf(`:`)!==-1?t+=`[`+e.hostname+`]`:t+=e.hostname||``,t+=e.port?`:`+e.port:``,t+=e.pathname||``,t+=e.search||``,t+=e.hash||``,t}function b(){this.protocol=null,this.slashes=null,this.auth=null,this.port=null,this.hostname=null,this.hash=null,this.search=null,this.pathname=null}var x=/^([a-z0-9.+-]+:)/i,S=/:[0-9]*$/,C=/^(\/\/?(?!\/)[^\?\s]*)(\?[^\s]*)?$/,w=[`%`,`/`,`?`,`;`,`#`,`'`,`{`,`}`,`|`,`\\`,`^`,"`",`<`,`>`,`"`,"`",` `,`\r`,`
2
2
  `,` `],T=[`/`,`?`,`#`],E=255,D=/^[+a-z0-9A-Z_-]{0,63}$/,O=/^([+a-z0-9A-Z_-]{0,63})(.*)$/,k={javascript:!0,"javascript:":!0},A={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0};function j(e,t){if(e&&e instanceof b)return e;let n=new b;return n.parse(e,t),n}b.prototype.parse=function(e,t){let n,r,i,a=e;if(a=a.trim(),!t&&e.split(`#`).length===1){let e=C.exec(a);if(e)return this.pathname=e[1],e[2]&&(this.search=e[2]),this}let o=x.exec(a);if(o&&(o=o[0],n=o.toLowerCase(),this.protocol=o,a=a.substr(o.length)),(t||o||a.match(/^\/\/[^@\/]+@[^@\/]+/))&&(i=a.substr(0,2)===`//`,i&&!(o&&k[o])&&(a=a.substr(2),this.slashes=!0)),!k[o]&&(i||o&&!A[o])){let e=-1;for(let t=0;t<T.length;t++)r=a.indexOf(T[t]),r!==-1&&(e===-1||r<e)&&(e=r);let t,n;n=e===-1?a.lastIndexOf(`@`):a.lastIndexOf(`@`,e),n!==-1&&(t=a.slice(0,n),a=a.slice(n+1),this.auth=t),e=-1;for(let t=0;t<w.length;t++)r=a.indexOf(w[t]),r!==-1&&(e===-1||r<e)&&(e=r);e===-1&&(e=a.length),a[e-1]===`:`&&e--;let i=a.slice(0,e);a=a.slice(e),this.parseHost(i),this.hostname=this.hostname||``;let o=this.hostname[0]===`[`&&this.hostname[this.hostname.length-1]===`]`;if(!o){let e=this.hostname.split(/\./);for(let t=0,n=e.length;t<n;t++){let n=e[t];if(n&&!n.match(D)){let r=``;for(let e=0,t=n.length;e<t;e++)n.charCodeAt(e)>127?r+=`x`:r+=n[e];if(!r.match(D)){let r=e.slice(0,t),i=e.slice(t+1),o=n.match(O);o&&(r.push(o[1]),i.unshift(o[2])),i.length&&(a=i.join(`.`)+a),this.hostname=r.join(`.`);break}}}}this.hostname.length>E&&(this.hostname=``),o&&(this.hostname=this.hostname.substr(1,this.hostname.length-2))}let s=a.indexOf(`#`);s!==-1&&(this.hash=a.substr(s),a=a.slice(0,s));let c=a.indexOf(`?`);return c!==-1&&(this.search=a.substr(c),a=a.slice(0,c)),a&&(this.pathname=a),A[n]&&this.hostname&&!this.pathname&&(this.pathname=``),this},b.prototype.parseHost=function(e){let t=S.exec(e);t&&(t=t[0],t!==`:`&&(this.port=t.substr(1)),e=e.substr(0,e.length-t.length)),e&&(this.hostname=e)};var M=e({decode:()=>h,encode:()=>v,format:()=>y,parse:()=>j}),N=/[\0-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/,P=/[\0-\x1F\x7F-\x9F]/,F=/[\xAD\u0600-\u0605\u061C\u06DD\u070F\u0890\u0891\u08E2\u180E\u200B-\u200F\u202A-\u202E\u2060-\u2064\u2066-\u206F\uFEFF\uFFF9-\uFFFB]|\uD804[\uDCBD\uDCCD]|\uD80D[\uDC30-\uDC3F]|\uD82F[\uDCA0-\uDCA3]|\uD834[\uDD73-\uDD7A]|\uDB40[\uDC01\uDC20-\uDC7F]/,I=/[!-#%-\*,-\/:;\?@\[-\]_\{\}\xA1\xA7\xAB\xB6\xB7\xBB\xBF\u037E\u0387\u055A-\u055F\u0589\u058A\u05BE\u05C0\u05C3\u05C6\u05F3\u05F4\u0609\u060A\u060C\u060D\u061B\u061D-\u061F\u066A-\u066D\u06D4\u0700-\u070D\u07F7-\u07F9\u0830-\u083E\u085E\u0964\u0965\u0970\u09FD\u0A76\u0AF0\u0C77\u0C84\u0DF4\u0E4F\u0E5A\u0E5B\u0F04-\u0F12\u0F14\u0F3A-\u0F3D\u0F85\u0FD0-\u0FD4\u0FD9\u0FDA\u104A-\u104F\u10FB\u1360-\u1368\u1400\u166E\u169B\u169C\u16EB-\u16ED\u1735\u1736\u17D4-\u17D6\u17D8-\u17DA\u1800-\u180A\u1944\u1945\u1A1E\u1A1F\u1AA0-\u1AA6\u1AA8-\u1AAD\u1B5A-\u1B60\u1B7D\u1B7E\u1BFC-\u1BFF\u1C3B-\u1C3F\u1C7E\u1C7F\u1CC0-\u1CC7\u1CD3\u2010-\u2027\u2030-\u2043\u2045-\u2051\u2053-\u205E\u207D\u207E\u208D\u208E\u2308-\u230B\u2329\u232A\u2768-\u2775\u27C5\u27C6\u27E6-\u27EF\u2983-\u2998\u29D8-\u29DB\u29FC\u29FD\u2CF9-\u2CFC\u2CFE\u2CFF\u2D70\u2E00-\u2E2E\u2E30-\u2E4F\u2E52-\u2E5D\u3001-\u3003\u3008-\u3011\u3014-\u301F\u3030\u303D\u30A0\u30FB\uA4FE\uA4FF\uA60D-\uA60F\uA673\uA67E\uA6F2-\uA6F7\uA874-\uA877\uA8CE\uA8CF\uA8F8-\uA8FA\uA8FC\uA92E\uA92F\uA95F\uA9C1-\uA9CD\uA9DE\uA9DF\uAA5C-\uAA5F\uAADE\uAADF\uAAF0\uAAF1\uABEB\uFD3E\uFD3F\uFE10-\uFE19\uFE30-\uFE52\uFE54-\uFE61\uFE63\uFE68\uFE6A\uFE6B\uFF01-\uFF03\uFF05-\uFF0A\uFF0C-\uFF0F\uFF1A\uFF1B\uFF1F\uFF20\uFF3B-\uFF3D\uFF3F\uFF5B\uFF5D\uFF5F-\uFF65]|\uD800[\uDD00-\uDD02\uDF9F\uDFD0]|\uD801\uDD6F|\uD802[\uDC57\uDD1F\uDD3F\uDE50-\uDE58\uDE7F\uDEF0-\uDEF6\uDF39-\uDF3F\uDF99-\uDF9C]|\uD803[\uDEAD\uDF55-\uDF59\uDF86-\uDF89]|\uD804[\uDC47-\uDC4D\uDCBB\uDCBC\uDCBE-\uDCC1\uDD40-\uDD43\uDD74\uDD75\uDDC5-\uDDC8\uDDCD\uDDDB\uDDDD-\uDDDF\uDE38-\uDE3D\uDEA9]|\uD805[\uDC4B-\uDC4F\uDC5A\uDC5B\uDC5D\uDCC6\uDDC1-\uDDD7\uDE41-\uDE43\uDE60-\uDE6C\uDEB9\uDF3C-\uDF3E]|\uD806[\uDC3B\uDD44-\uDD46\uDDE2\uDE3F-\uDE46\uDE9A-\uDE9C\uDE9E-\uDEA2\uDF00-\uDF09]|\uD807[\uDC41-\uDC45\uDC70\uDC71\uDEF7\uDEF8\uDF43-\uDF4F\uDFFF]|\uD809[\uDC70-\uDC74]|\uD80B[\uDFF1\uDFF2]|\uD81A[\uDE6E\uDE6F\uDEF5\uDF37-\uDF3B\uDF44]|\uD81B[\uDE97-\uDE9A\uDFE2]|\uD82F\uDC9F|\uD836[\uDE87-\uDE8B]|\uD83A[\uDD5E\uDD5F]/,L=/[\$\+<->\^`\|~\xA2-\xA6\xA8\xA9\xAC\xAE-\xB1\xB4\xB8\xD7\xF7\u02C2-\u02C5\u02D2-\u02DF\u02E5-\u02EB\u02ED\u02EF-\u02FF\u0375\u0384\u0385\u03F6\u0482\u058D-\u058F\u0606-\u0608\u060B\u060E\u060F\u06DE\u06E9\u06FD\u06FE\u07F6\u07FE\u07FF\u0888\u09F2\u09F3\u09FA\u09FB\u0AF1\u0B70\u0BF3-\u0BFA\u0C7F\u0D4F\u0D79\u0E3F\u0F01-\u0F03\u0F13\u0F15-\u0F17\u0F1A-\u0F1F\u0F34\u0F36\u0F38\u0FBE-\u0FC5\u0FC7-\u0FCC\u0FCE\u0FCF\u0FD5-\u0FD8\u109E\u109F\u1390-\u1399\u166D\u17DB\u1940\u19DE-\u19FF\u1B61-\u1B6A\u1B74-\u1B7C\u1FBD\u1FBF-\u1FC1\u1FCD-\u1FCF\u1FDD-\u1FDF\u1FED-\u1FEF\u1FFD\u1FFE\u2044\u2052\u207A-\u207C\u208A-\u208C\u20A0-\u20C0\u2100\u2101\u2103-\u2106\u2108\u2109\u2114\u2116-\u2118\u211E-\u2123\u2125\u2127\u2129\u212E\u213A\u213B\u2140-\u2144\u214A-\u214D\u214F\u218A\u218B\u2190-\u2307\u230C-\u2328\u232B-\u2426\u2440-\u244A\u249C-\u24E9\u2500-\u2767\u2794-\u27C4\u27C7-\u27E5\u27F0-\u2982\u2999-\u29D7\u29DC-\u29FB\u29FE-\u2B73\u2B76-\u2B95\u2B97-\u2BFF\u2CE5-\u2CEA\u2E50\u2E51\u2E80-\u2E99\u2E9B-\u2EF3\u2F00-\u2FD5\u2FF0-\u2FFF\u3004\u3012\u3013\u3020\u3036\u3037\u303E\u303F\u309B\u309C\u3190\u3191\u3196-\u319F\u31C0-\u31E3\u31EF\u3200-\u321E\u322A-\u3247\u3250\u3260-\u327F\u328A-\u32B0\u32C0-\u33FF\u4DC0-\u4DFF\uA490-\uA4C6\uA700-\uA716\uA720\uA721\uA789\uA78A\uA828-\uA82B\uA836-\uA839\uAA77-\uAA79\uAB5B\uAB6A\uAB6B\uFB29\uFBB2-\uFBC2\uFD40-\uFD4F\uFDCF\uFDFC-\uFDFF\uFE62\uFE64-\uFE66\uFE69\uFF04\uFF0B\uFF1C-\uFF1E\uFF3E\uFF40\uFF5C\uFF5E\uFFE0-\uFFE6\uFFE8-\uFFEE\uFFFC\uFFFD]|\uD800[\uDD37-\uDD3F\uDD79-\uDD89\uDD8C-\uDD8E\uDD90-\uDD9C\uDDA0\uDDD0-\uDDFC]|\uD802[\uDC77\uDC78\uDEC8]|\uD805\uDF3F|\uD807[\uDFD5-\uDFF1]|\uD81A[\uDF3C-\uDF3F\uDF45]|\uD82F\uDC9C|\uD833[\uDF50-\uDFC3]|\uD834[\uDC00-\uDCF5\uDD00-\uDD26\uDD29-\uDD64\uDD6A-\uDD6C\uDD83\uDD84\uDD8C-\uDDA9\uDDAE-\uDDEA\uDE00-\uDE41\uDE45\uDF00-\uDF56]|\uD835[\uDEC1\uDEDB\uDEFB\uDF15\uDF35\uDF4F\uDF6F\uDF89\uDFA9\uDFC3]|\uD836[\uDC00-\uDDFF\uDE37-\uDE3A\uDE6D-\uDE74\uDE76-\uDE83\uDE85\uDE86]|\uD838[\uDD4F\uDEFF]|\uD83B[\uDCAC\uDCB0\uDD2E\uDEF0\uDEF1]|\uD83C[\uDC00-\uDC2B\uDC30-\uDC93\uDCA0-\uDCAE\uDCB1-\uDCBF\uDCC1-\uDCCF\uDCD1-\uDCF5\uDD0D-\uDDAD\uDDE6-\uDE02\uDE10-\uDE3B\uDE40-\uDE48\uDE50\uDE51\uDE60-\uDE65\uDF00-\uDFFF]|\uD83D[\uDC00-\uDED7\uDEDC-\uDEEC\uDEF0-\uDEFC\uDF00-\uDF76\uDF7B-\uDFD9\uDFE0-\uDFEB\uDFF0]|\uD83E[\uDC00-\uDC0B\uDC10-\uDC47\uDC50-\uDC59\uDC60-\uDC87\uDC90-\uDCAD\uDCB0\uDCB1\uDD00-\uDE53\uDE60-\uDE6D\uDE70-\uDE7C\uDE80-\uDE88\uDE90-\uDEBD\uDEBF-\uDEC5\uDECE-\uDEDB\uDEE0-\uDEE8\uDEF0-\uDEF8\uDF00-\uDF92\uDF94-\uDFCA]/,R=/[ \xA0\u1680\u2000-\u200A\u2028\u2029\u202F\u205F\u3000]/,z=e({Any:()=>N,Cc:()=>P,Cf:()=>F,P:()=>I,S:()=>L,Z:()=>R}),B=new Uint16Array(`ᵁ<Õıʊҝջאٵ۞ޢߖࠏ੊ઑඡ๭༉༦჊ረዡᐕᒝᓃᓟᔥ\0\0\0\0\0\0ᕫᛍᦍᰒᷝ὾⁠↰⊍⏀⏻⑂⠤⤒ⴈ⹈⿎〖㊺㘹㞬㣾㨨㩱㫠㬮ࠀEMabcfglmnoprstu\\bfms„‹•˜¦³¹ÈÏlig耻Æ䃆P耻&䀦cute耻Á䃁reve;䄂Āiyx}rc耻Â䃂;䐐r;쀀𝔄rave耻À䃀pha;䎑acr;䄀d;橓Āgp¡on;䄄f;쀀𝔸plyFunction;恡ing耻Å䃅Ācs¾Ãr;쀀𝒜ign;扔ilde耻Ã䃃ml耻Ä䃄ЀaceforsuåûþėĜĢħĪĀcrêòkslash;或Ŷöø;櫧ed;挆y;䐑ƀcrtąċĔause;戵noullis;愬a;䎒r;쀀𝔅pf;쀀𝔹eve;䋘còēmpeq;扎܀HOacdefhilorsuōőŖƀƞƢƵƷƺǜȕɳɸɾcy;䐧PY耻©䂩ƀcpyŝŢźute;䄆Ā;iŧŨ拒talDifferentialD;慅leys;愭ȀaeioƉƎƔƘron;䄌dil耻Ç䃇rc;䄈nint;戰ot;䄊ĀdnƧƭilla;䂸terDot;䂷òſi;䎧rcleȀDMPTLJNjǑǖot;抙inus;抖lus;投imes;抗oĀcsǢǸkwiseContourIntegral;戲eCurlyĀDQȃȏoubleQuote;思uote;怙ȀlnpuȞȨɇɕonĀ;eȥȦ户;橴ƀgitȯȶȺruent;扡nt;戯ourIntegral;戮ĀfrɌɎ;愂oduct;成nterClockwiseContourIntegral;戳oss;樯cr;쀀𝒞pĀ;Cʄʅ拓ap;才րDJSZacefiosʠʬʰʴʸˋ˗ˡ˦̳ҍĀ;oŹʥtrahd;椑cy;䐂cy;䐅cy;䐏ƀgrsʿ˄ˇger;怡r;憡hv;櫤Āayː˕ron;䄎;䐔lĀ;t˝˞戇a;䎔r;쀀𝔇Āaf˫̧Ācm˰̢riticalȀADGT̖̜̀̆cute;䂴oŴ̋̍;䋙bleAcute;䋝rave;䁠ilde;䋜ond;拄ferentialD;慆Ѱ̽\0\0\0͔͂\0Ѕf;쀀𝔻ƀ;DE͈͉͍䂨ot;惜qual;扐blèCDLRUVͣͲ΂ϏϢϸontourIntegraìȹoɴ͹\0\0ͻ»͉nArrow;懓Āeo·ΤftƀARTΐΖΡrrow;懐ightArrow;懔eåˊngĀLRΫτeftĀARγιrrow;柸ightArrow;柺ightArrow;柹ightĀATϘϞrrow;懒ee;抨pɁϩ\0\0ϯrrow;懑ownArrow;懕erticalBar;戥ǹABLRTaВЪаўѿͼrrowƀ;BUНОТ憓ar;椓pArrow;懵reve;䌑eft˒к\0ц\0ѐightVector;楐eeVector;楞ectorĀ;Bљњ憽ar;楖ightǔѧ\0ѱeeVector;楟ectorĀ;BѺѻ懁ar;楗eeĀ;A҆҇护rrow;憧ĀctҒҗr;쀀𝒟rok;䄐ࠀNTacdfglmopqstuxҽӀӄӋӞӢӧӮӵԡԯԶՒ՝ՠեG;䅊H耻Ð䃐cute耻É䃉ƀaiyӒӗӜron;䄚rc耻Ê䃊;䐭ot;䄖r;쀀𝔈rave耻È䃈ement;戈ĀapӺӾcr;䄒tyɓԆ\0\0ԒmallSquare;旻erySmallSquare;斫ĀgpԦԪon;䄘f;쀀𝔼silon;䎕uĀaiԼՉlĀ;TՂՃ橵ilde;扂librium;懌Āci՗՚r;愰m;橳a;䎗ml耻Ë䃋Āipժկsts;戃onentialE;慇ʀcfiosօֈ֍ֲ׌y;䐤r;쀀𝔉lledɓ֗\0\0֣mallSquare;旼erySmallSquare;斪Ͱֺ\0ֿ\0\0ׄf;쀀𝔽All;戀riertrf;愱cò׋؀JTabcdfgorstר׬ׯ׺؀ؒؖ؛؝أ٬ٲcy;䐃耻>䀾mmaĀ;d׷׸䎓;䏜reve;䄞ƀeiy؇،ؐdil;䄢rc;䄜;䐓ot;䄠r;쀀𝔊;拙pf;쀀𝔾eater̀EFGLSTصلَٖٛ٦qualĀ;Lؾؿ扥ess;招ullEqual;执reater;檢ess;扷lantEqual;橾ilde;扳cr;쀀𝒢;扫ЀAacfiosuڅڋږڛڞڪھۊRDcy;䐪Āctڐڔek;䋇;䁞irc;䄤r;愌lbertSpace;愋ǰگ\0ڲf;愍izontalLine;攀Āctۃۅòکrok;䄦mpńېۘownHumðįqual;扏܀EJOacdfgmnostuۺ۾܃܇܎ܚܞܡܨ݄ݸދޏޕcy;䐕lig;䄲cy;䐁cute耻Í䃍Āiyܓܘrc耻Î䃎;䐘ot;䄰r;愑rave耻Ì䃌ƀ;apܠܯܿĀcgܴܷr;䄪inaryI;慈lieóϝǴ݉\0ݢĀ;eݍݎ戬Āgrݓݘral;戫section;拂isibleĀCTݬݲomma;恣imes;恢ƀgptݿރވon;䄮f;쀀𝕀a;䎙cr;愐ilde;䄨ǫޚ\0ޞcy;䐆l耻Ï䃏ʀcfosuެ޷޼߂ߐĀiyޱ޵rc;䄴;䐙r;쀀𝔍pf;쀀𝕁ǣ߇\0ߌr;쀀𝒥rcy;䐈kcy;䐄΀HJacfosߤߨ߽߬߱ࠂࠈcy;䐥cy;䐌ppa;䎚Āey߶߻dil;䄶;䐚r;쀀𝔎pf;쀀𝕂cr;쀀𝒦րJTaceflmostࠥࠩࠬࡐࡣ঳সে্਷ੇcy;䐉耻<䀼ʀcmnpr࠷࠼ࡁࡄࡍute;䄹bda;䎛g;柪lacetrf;愒r;憞ƀaeyࡗ࡜ࡡron;䄽dil;䄻;䐛Āfsࡨ॰tԀACDFRTUVarࡾࢩࢱࣦ࣠ࣼयज़ΐ४Ānrࢃ࢏gleBracket;柨rowƀ;BR࢙࢚࢞憐ar;懤ightArrow;懆eiling;挈oǵࢷ\0ࣃbleBracket;柦nǔࣈ\0࣒eeVector;楡ectorĀ;Bࣛࣜ懃ar;楙loor;挊ightĀAV࣯ࣵrrow;憔ector;楎Āerँगeƀ;AVउऊऐ抣rrow;憤ector;楚iangleƀ;BEतथऩ抲ar;槏qual;抴pƀDTVषूौownVector;楑eeVector;楠ectorĀ;Bॖॗ憿ar;楘ectorĀ;B॥०憼ar;楒ightáΜs̀EFGLSTॾঋকঝঢভqualGreater;拚ullEqual;扦reater;扶ess;檡lantEqual;橽ilde;扲r;쀀𝔏Ā;eঽা拘ftarrow;懚idot;䄿ƀnpw৔ਖਛgȀLRlr৞৷ਂਐeftĀAR০৬rrow;柵ightArrow;柷ightArrow;柶eftĀarγਊightáοightáϊf;쀀𝕃erĀLRਢਬeftArrow;憙ightArrow;憘ƀchtਾੀੂòࡌ;憰rok;䅁;扪Ѐacefiosuਗ਼੝੠੷੼અઋ઎p;椅y;䐜Ādl੥੯iumSpace;恟lintrf;愳r;쀀𝔐nusPlus;戓pf;쀀𝕄cò੶;䎜ҀJacefostuણધભીଔଙඑ඗ඞcy;䐊cute;䅃ƀaey઴હાron;䅇dil;䅅;䐝ƀgswે૰଎ativeƀMTV૓૟૨ediumSpace;怋hiĀcn૦૘ë૙eryThiî૙tedĀGL૸ଆreaterGreateòٳessLesóੈLine;䀊r;쀀𝔑ȀBnptଢନଷ଺reak;恠BreakingSpace;䂠f;愕ڀ;CDEGHLNPRSTV୕ୖ୪୼஡௫ఄ౞಄ದ೘ൡඅ櫬Āou୛୤ngruent;扢pCap;扭oubleVerticalBar;戦ƀlqxஃஊ஛ement;戉ualĀ;Tஒஓ扠ilde;쀀≂̸ists;戄reater΀;EFGLSTஶஷ஽௉௓௘௥扯qual;扱ullEqual;쀀≧̸reater;쀀≫̸ess;批lantEqual;쀀⩾̸ilde;扵umpń௲௽ownHump;쀀≎̸qual;쀀≏̸eĀfsఊధtTriangleƀ;BEచఛడ拪ar;쀀⧏̸qual;括s̀;EGLSTవశ఼ౄోౘ扮qual;扰reater;扸ess;쀀≪̸lantEqual;쀀⩽̸ilde;扴estedĀGL౨౹reaterGreater;쀀⪢̸essLess;쀀⪡̸recedesƀ;ESಒಓಛ技qual;쀀⪯̸lantEqual;拠ĀeiಫಹverseElement;戌ghtTriangleƀ;BEೋೌ೒拫ar;쀀⧐̸qual;拭ĀquೝഌuareSuĀbp೨೹setĀ;E೰ೳ쀀⊏̸qual;拢ersetĀ;Eഃആ쀀⊐̸qual;拣ƀbcpഓതൎsetĀ;Eഛഞ쀀⊂⃒qual;抈ceedsȀ;ESTലള഻െ抁qual;쀀⪰̸lantEqual;拡ilde;쀀≿̸ersetĀ;E൘൛쀀⊃⃒qual;抉ildeȀ;EFT൮൯൵ൿ扁qual;扄ullEqual;扇ilde;扉erticalBar;戤cr;쀀𝒩ilde耻Ñ䃑;䎝܀Eacdfgmoprstuvලෂ෉෕ෛ෠෧෼ขภยา฿ไlig;䅒cute耻Ó䃓Āiy෎ීrc耻Ô䃔;䐞blac;䅐r;쀀𝔒rave耻Ò䃒ƀaei෮ෲ෶cr;䅌ga;䎩cron;䎟pf;쀀𝕆enCurlyĀDQฎบoubleQuote;怜uote;怘;橔Āclวฬr;쀀𝒪ash耻Ø䃘iŬื฼de耻Õ䃕es;樷ml耻Ö䃖erĀBP๋๠Āar๐๓r;怾acĀek๚๜;揞et;掴arenthesis;揜Ҁacfhilors๿ງຊຏຒດຝະ໼rtialD;戂y;䐟r;쀀𝔓i;䎦;䎠usMinus;䂱Āipຢອncareplanåڝf;愙Ȁ;eio຺ູ໠໤檻cedesȀ;EST່້໏໚扺qual;檯lantEqual;扼ilde;找me;怳Ādp໩໮uct;戏ortionĀ;aȥ໹l;戝Āci༁༆r;쀀𝒫;䎨ȀUfos༑༖༛༟OT耻"䀢r;쀀𝔔pf;愚cr;쀀𝒬؀BEacefhiorsu༾གྷཇའཱིྦྷྪྭ႖ႩႴႾarr;椐G耻®䂮ƀcnrཎནབute;䅔g;柫rĀ;tཛྷཝ憠l;椖ƀaeyཧཬཱron;䅘dil;䅖;䐠Ā;vླྀཹ愜erseĀEUྂྙĀlq྇ྎement;戋uilibrium;懋pEquilibrium;楯r»ཹo;䎡ghtЀACDFTUVa࿁࿫࿳ဢဨၛႇϘĀnr࿆࿒gleBracket;柩rowƀ;BL࿜࿝࿡憒ar;懥eftArrow;懄eiling;按oǵ࿹\0စbleBracket;柧nǔည\0နeeVector;楝ectorĀ;Bဝသ懂ar;楕loor;挋Āerိ၃eƀ;AVဵံြ抢rrow;憦ector;楛iangleƀ;BEၐၑၕ抳ar;槐qual;抵pƀDTVၣၮၸownVector;楏eeVector;楜ectorĀ;Bႂႃ憾ar;楔ectorĀ;B႑႒懀ar;楓Āpuႛ႞f;愝ndImplies;楰ightarrow;懛ĀchႹႼr;愛;憱leDelayed;槴ڀHOacfhimoqstuფჱჷჽᄙᄞᅑᅖᅡᅧᆵᆻᆿĀCcჩხHcy;䐩y;䐨FTcy;䐬cute;䅚ʀ;aeiyᄈᄉᄎᄓᄗ檼ron;䅠dil;䅞rc;䅜;䐡r;쀀𝔖ortȀDLRUᄪᄴᄾᅉownArrow»ОeftArrow»࢚ightArrow»࿝pArrow;憑gma;䎣allCircle;战pf;쀀𝕊ɲᅭ\0\0ᅰt;戚areȀ;ISUᅻᅼᆉᆯ斡ntersection;抓uĀbpᆏᆞsetĀ;Eᆗᆘ抏qual;抑ersetĀ;Eᆨᆩ抐qual;抒nion;抔cr;쀀𝒮ar;拆ȀbcmpᇈᇛሉላĀ;sᇍᇎ拐etĀ;Eᇍᇕqual;抆ĀchᇠህeedsȀ;ESTᇭᇮᇴᇿ扻qual;檰lantEqual;扽ilde;承Tháྌ;我ƀ;esሒሓሣ拑rsetĀ;Eሜም抃qual;抇et»ሓրHRSacfhiorsሾቄ቉ቕ቞ቱቶኟዂወዑORN耻Þ䃞ADE;愢ĀHc቎ቒcy;䐋y;䐦Ābuቚቜ;䀉;䎤ƀaeyብቪቯron;䅤dil;䅢;䐢r;쀀𝔗Āeiቻ኉Dzኀ\0ኇefore;戴a;䎘Ācn኎ኘkSpace;쀀  Space;怉ldeȀ;EFTካኬኲኼ戼qual;扃ullEqual;扅ilde;扈pf;쀀𝕋ipleDot;惛Āctዖዛr;쀀𝒯rok;䅦ૡዷጎጚጦ\0ጬጱ\0\0\0\0\0ጸጽ፷ᎅ\0᏿ᐄᐊᐐĀcrዻጁute耻Ú䃚rĀ;oጇገ憟cir;楉rǣጓ\0጖y;䐎ve;䅬Āiyጞጣrc耻Û䃛;䐣blac;䅰r;쀀𝔘rave耻Ù䃙acr;䅪Ādiፁ፩erĀBPፈ፝Āarፍፐr;䁟acĀekፗፙ;揟et;掵arenthesis;揝onĀ;P፰፱拃lus;抎Āgp፻፿on;䅲f;쀀𝕌ЀADETadps᎕ᎮᎸᏄϨᏒᏗᏳrrowƀ;BDᅐᎠᎤar;椒ownArrow;懅ownArrow;憕quilibrium;楮eeĀ;AᏋᏌ报rrow;憥ownáϳerĀLRᏞᏨeftArrow;憖ightArrow;憗iĀ;lᏹᏺ䏒on;䎥ing;䅮cr;쀀𝒰ilde;䅨ml耻Ü䃜ҀDbcdefosvᐧᐬᐰᐳᐾᒅᒊᒐᒖash;披ar;櫫y;䐒ashĀ;lᐻᐼ抩;櫦Āerᑃᑅ;拁ƀbtyᑌᑐᑺar;怖Ā;iᑏᑕcalȀBLSTᑡᑥᑪᑴar;戣ine;䁼eparator;杘ilde;所ThinSpace;怊r;쀀𝔙pf;쀀𝕍cr;쀀𝒱dash;抪ʀcefosᒧᒬᒱᒶᒼirc;䅴dge;拀r;쀀𝔚pf;쀀𝕎cr;쀀𝒲Ȁfiosᓋᓐᓒᓘr;쀀𝔛;䎞pf;쀀𝕏cr;쀀𝒳ҀAIUacfosuᓱᓵᓹᓽᔄᔏᔔᔚᔠcy;䐯cy;䐇cy;䐮cute耻Ý䃝Āiyᔉᔍrc;䅶;䐫r;쀀𝔜pf;쀀𝕐cr;쀀𝒴ml;䅸ЀHacdefosᔵᔹᔿᕋᕏᕝᕠᕤcy;䐖cute;䅹Āayᕄᕉron;䅽;䐗ot;䅻Dzᕔ\0ᕛoWidtè૙a;䎖r;愨pf;愤cr;쀀𝒵௡ᖃᖊᖐ\0ᖰᖶᖿ\0\0\0\0ᗆᗛᗫᙟ᙭\0ᚕ᚛ᚲᚹ\0ᚾcute耻á䃡reve;䄃̀;Ediuyᖜᖝᖡᖣᖨᖭ戾;쀀∾̳;房rc耻â䃢te肻´̆;䐰lig耻æ䃦Ā;r²ᖺ;쀀𝔞rave耻à䃠ĀepᗊᗖĀfpᗏᗔsym;愵èᗓha;䎱ĀapᗟcĀclᗤᗧr;䄁g;樿ɤᗰ\0\0ᘊʀ;adsvᗺᗻᗿᘁᘇ戧nd;橕;橜lope;橘;橚΀;elmrszᘘᘙᘛᘞᘿᙏᙙ戠;榤e»ᘙsdĀ;aᘥᘦ戡ѡᘰᘲᘴᘶᘸᘺᘼᘾ;榨;榩;榪;榫;榬;榭;榮;榯tĀ;vᙅᙆ戟bĀ;dᙌᙍ抾;榝Āptᙔᙗh;戢»¹arr;捼Āgpᙣᙧon;䄅f;쀀𝕒΀;Eaeiop዁ᙻᙽᚂᚄᚇᚊ;橰cir;橯;扊d;手s;䀧roxĀ;e዁ᚒñᚃing耻å䃥ƀctyᚡᚦᚨr;쀀𝒶;䀪mpĀ;e዁ᚯñʈilde耻ã䃣ml耻ä䃤Āciᛂᛈoninôɲnt;樑ࠀNabcdefiklnoprsu᛭ᛱᜰ᜼ᝃᝈ᝸᝽០៦ᠹᡐᜍ᤽᥈ᥰot;櫭Ācrᛶ᜞kȀcepsᜀᜅᜍᜓong;扌psilon;䏶rime;怵imĀ;e᜚᜛戽q;拍Ŷᜢᜦee;抽edĀ;gᜬᜭ挅e»ᜭrkĀ;t፜᜷brk;掶Āoyᜁᝁ;䐱quo;怞ʀcmprtᝓ᝛ᝡᝤᝨausĀ;eĊĉptyv;榰séᜌnoõēƀahwᝯ᝱ᝳ;䎲;愶een;扬r;쀀𝔟g΀costuvwឍឝឳេ៕៛៞ƀaiuបពរðݠrc;旯p»፱ƀdptឤឨឭot;樀lus;樁imes;樂ɱឹ\0\0ើcup;樆ar;昅riangleĀdu៍្own;施p;斳plus;樄eåᑄåᒭarow;植ƀako៭ᠦᠵĀcn៲ᠣkƀlst៺֫᠂ozenge;槫riangleȀ;dlr᠒᠓᠘᠝斴own;斾eft;旂ight;斸k;搣Ʊᠫ\0ᠳƲᠯ\0ᠱ;斒;斑4;斓ck;斈ĀeoᠾᡍĀ;qᡃᡆ쀀=⃥uiv;쀀≡⃥t;挐Ȁptwxᡙᡞᡧᡬf;쀀𝕓Ā;tᏋᡣom»Ꮜtie;拈؀DHUVbdhmptuvᢅᢖᢪᢻᣗᣛᣬ᣿ᤅᤊᤐᤡȀLRlrᢎᢐᢒᢔ;敗;敔;敖;敓ʀ;DUduᢡᢢᢤᢦᢨ敐;敦;敩;敤;敧ȀLRlrᢳᢵᢷᢹ;敝;敚;敜;教΀;HLRhlrᣊᣋᣍᣏᣑᣓᣕ救;敬;散;敠;敫;敢;敟ox;槉ȀLRlrᣤᣦᣨᣪ;敕;敒;攐;攌ʀ;DUduڽ᣷᣹᣻᣽;敥;敨;攬;攴inus;抟lus;択imes;抠ȀLRlrᤙᤛᤝ᤟;敛;敘;攘;攔΀;HLRhlrᤰᤱᤳᤵᤷ᤻᤹攂;敪;敡;敞;攼;攤;攜Āevģ᥂bar耻¦䂦Ȁceioᥑᥖᥚᥠr;쀀𝒷mi;恏mĀ;e᜚᜜lƀ;bhᥨᥩᥫ䁜;槅sub;柈Ŭᥴ᥾lĀ;e᥹᥺怢t»᥺pƀ;Eeįᦅᦇ;檮Ā;qۜۛೡᦧ\0᧨ᨑᨕᨲ\0ᨷᩐ\0\0᪴\0\0᫁\0\0ᬡᬮ᭍᭒\0᯽\0ᰌƀcpr᦭ᦲ᧝ute;䄇̀;abcdsᦿᧀᧄ᧊᧕᧙戩nd;橄rcup;橉Āau᧏᧒p;橋p;橇ot;橀;쀀∩︀Āeo᧢᧥t;恁îړȀaeiu᧰᧻ᨁᨅǰ᧵\0᧸s;橍on;䄍dil耻ç䃧rc;䄉psĀ;sᨌᨍ橌m;橐ot;䄋ƀdmnᨛᨠᨦil肻¸ƭptyv;榲t脀¢;eᨭᨮ䂢räƲr;쀀𝔠ƀceiᨽᩀᩍy;䑇ckĀ;mᩇᩈ朓ark»ᩈ;䏇r΀;Ecefms᩟᩠ᩢᩫ᪤᪪᪮旋;槃ƀ;elᩩᩪᩭ䋆q;扗eɡᩴ\0\0᪈rrowĀlr᩼᪁eft;憺ight;憻ʀRSacd᪒᪔᪖᪚᪟»ཇ;擈st;抛irc;抚ash;抝nint;樐id;櫯cir;槂ubsĀ;u᪻᪼晣it»᪼ˬ᫇᫔᫺\0ᬊonĀ;eᫍᫎ䀺Ā;qÇÆɭ᫙\0\0᫢aĀ;t᫞᫟䀬;䁀ƀ;fl᫨᫩᫫戁îᅠeĀmx᫱᫶ent»᫩eóɍǧ᫾\0ᬇĀ;dኻᬂot;橭nôɆƀfryᬐᬔᬗ;쀀𝕔oäɔ脀©;sŕᬝr;愗Āaoᬥᬩrr;憵ss;朗Ācuᬲᬷr;쀀𝒸Ābpᬼ᭄Ā;eᭁᭂ櫏;櫑Ā;eᭉᭊ櫐;櫒dot;拯΀delprvw᭠᭬᭷ᮂᮬᯔ᯹arrĀlr᭨᭪;椸;椵ɰ᭲\0\0᭵r;拞c;拟arrĀ;p᭿ᮀ憶;椽̀;bcdosᮏᮐᮖᮡᮥᮨ截rcap;橈Āauᮛᮞp;橆p;橊ot;抍r;橅;쀀∪︀Ȁalrv᮵ᮿᯞᯣrrĀ;mᮼᮽ憷;椼yƀevwᯇᯔᯘqɰᯎ\0\0ᯒreã᭳uã᭵ee;拎edge;拏en耻¤䂤earrowĀlrᯮ᯳eft»ᮀight»ᮽeäᯝĀciᰁᰇoninôǷnt;戱lcty;挭ঀAHabcdefhijlorstuwz᰸᰻᰿ᱝᱩᱵᲊᲞᲬᲷ᳻᳿ᴍᵻᶑᶫᶻ᷆᷍rò΁ar;楥Ȁglrs᱈ᱍ᱒᱔ger;怠eth;愸òᄳhĀ;vᱚᱛ怐»ऊūᱡᱧarow;椏aã̕Āayᱮᱳron;䄏;䐴ƀ;ao̲ᱼᲄĀgrʿᲁr;懊tseq;橷ƀglmᲑᲔᲘ耻°䂰ta;䎴ptyv;榱ĀirᲣᲨsht;楿;쀀𝔡arĀlrᲳᲵ»ࣜ»သʀaegsv᳂͸᳖᳜᳠mƀ;oș᳊᳔ndĀ;ș᳑uit;晦amma;䏝in;拲ƀ;io᳧᳨᳸䃷de脀÷;o᳧ᳰntimes;拇nø᳷cy;䑒cɯᴆ\0\0ᴊrn;挞op;挍ʀlptuwᴘᴝᴢᵉᵕlar;䀤f;쀀𝕕ʀ;emps̋ᴭᴷᴽᵂqĀ;d͒ᴳot;扑inus;戸lus;戔quare;抡blebarwedgåúnƀadhᄮᵝᵧownarrowóᲃarpoonĀlrᵲᵶefôᲴighôᲶŢᵿᶅkaro÷གɯᶊ\0\0ᶎrn;挟op;挌ƀcotᶘᶣᶦĀryᶝᶡ;쀀𝒹;䑕l;槶rok;䄑Ādrᶰᶴot;拱iĀ;fᶺ᠖斿Āah᷀᷃ròЩaòྦangle;榦Āci᷒ᷕy;䑟grarr;柿ऀDacdefglmnopqrstuxḁḉḙḸոḼṉṡṾấắẽỡἪἷὄ὎὚ĀDoḆᴴoôᲉĀcsḎḔute耻é䃩ter;橮ȀaioyḢḧḱḶron;䄛rĀ;cḭḮ扖耻ê䃪lon;払;䑍ot;䄗ĀDrṁṅot;扒;쀀𝔢ƀ;rsṐṑṗ檚ave耻è䃨Ā;dṜṝ檖ot;檘Ȁ;ilsṪṫṲṴ檙nters;揧;愓Ā;dṹṺ檕ot;檗ƀapsẅẉẗcr;䄓tyƀ;svẒẓẕ戅et»ẓpĀ1;ẝẤijạả;怄;怅怃ĀgsẪẬ;䅋p;怂ĀgpẴẸon;䄙f;쀀𝕖ƀalsỄỎỒrĀ;sỊị拕l;槣us;橱iƀ;lvỚớở䎵on»ớ;䏵ȀcsuvỪỳἋἣĀioữḱrc»Ḯɩỹ\0\0ỻíՈantĀglἂἆtr»ṝess»Ṻƀaeiἒ἖Ἒls;䀽st;扟vĀ;DȵἠD;橸parsl;槥ĀDaἯἳot;打rr;楱ƀcdiἾὁỸr;愯oô͒ĀahὉὋ;䎷耻ð䃰Āmrὓὗl耻ë䃫o;悬ƀcipὡὤὧl;䀡sôծĀeoὬὴctatioîՙnentialåչৡᾒ\0ᾞ\0ᾡᾧ\0\0ῆῌ\0ΐ\0ῦῪ \0 ⁚llingdotseñṄy;䑄male;晀ƀilrᾭᾳ῁lig;耀ffiɩᾹ\0\0᾽g;耀ffig;耀ffl;쀀𝔣lig;耀filig;쀀fjƀaltῙ῜ῡt;晭ig;耀flns;斱of;䆒ǰ΅\0ῳf;쀀𝕗ĀakֿῷĀ;vῼ´拔;櫙artint;樍Āao‌⁕Ācs‑⁒ႉ‸⁅⁈\0⁐β•‥‧‪‬\0‮耻½䂽;慓耻¼䂼;慕;慙;慛Ƴ‴\0‶;慔;慖ʴ‾⁁\0\0⁃耻¾䂾;慗;慜5;慘ƶ⁌\0⁎;慚;慝8;慞l;恄wn;挢cr;쀀𝒻ࢀEabcdefgijlnorstv₂₉₟₥₰₴⃰⃵⃺⃿℃ℒℸ̗ℾ⅒↞Ā;lٍ₇;檌ƀcmpₐₕ₝ute;䇵maĀ;dₜ᳚䎳;檆reve;䄟Āiy₪₮rc;䄝;䐳ot;䄡Ȁ;lqsؾق₽⃉ƀ;qsؾٌ⃄lanô٥Ȁ;cdl٥⃒⃥⃕c;檩otĀ;o⃜⃝檀Ā;l⃢⃣檂;檄Ā;e⃪⃭쀀⋛︀s;檔r;쀀𝔤Ā;gٳ؛mel;愷cy;䑓Ȁ;Eajٚℌℎℐ;檒;檥;檤ȀEaesℛℝ℩ℴ;扩pĀ;p℣ℤ檊rox»ℤĀ;q℮ℯ檈Ā;q℮ℛim;拧pf;쀀𝕘Āci⅃ⅆr;愊mƀ;el٫ⅎ⅐;檎;檐茀>;cdlqr׮ⅠⅪⅮⅳⅹĀciⅥⅧ;檧r;橺ot;拗Par;榕uest;橼ʀadelsↄⅪ←ٖ↛ǰ↉\0↎proø₞r;楸qĀlqؿ↖lesó₈ií٫Āen↣↭rtneqq;쀀≩︀Å↪ԀAabcefkosy⇄⇇⇱⇵⇺∘∝∯≨≽ròΠȀilmr⇐⇔⇗⇛rsðᒄf»․ilôکĀdr⇠⇤cy;䑊ƀ;cwࣴ⇫⇯ir;楈;憭ar;意irc;䄥ƀalr∁∎∓rtsĀ;u∉∊晥it»∊lip;怦con;抹r;쀀𝔥sĀew∣∩arow;椥arow;椦ʀamopr∺∾≃≞≣rr;懿tht;戻kĀlr≉≓eftarrow;憩ightarrow;憪f;쀀𝕙bar;怕ƀclt≯≴≸r;쀀𝒽asè⇴rok;䄧Ābp⊂⊇ull;恃hen»ᱛૡ⊣\0⊪\0⊸⋅⋎\0⋕⋳\0\0⋸⌢⍧⍢⍿\0⎆⎪⎴cute耻í䃭ƀ;iyݱ⊰⊵rc耻î䃮;䐸Ācx⊼⊿y;䐵cl耻¡䂡ĀfrΟ⋉;쀀𝔦rave耻ì䃬Ȁ;inoܾ⋝⋩⋮Āin⋢⋦nt;樌t;戭fin;槜ta;愩lig;䄳ƀaop⋾⌚⌝ƀcgt⌅⌈⌗r;䄫ƀelpܟ⌏⌓inåގarôܠh;䄱f;抷ed;䆵ʀ;cfotӴ⌬⌱⌽⍁are;愅inĀ;t⌸⌹戞ie;槝doô⌙ʀ;celpݗ⍌⍐⍛⍡al;抺Āgr⍕⍙eróᕣã⍍arhk;樗rod;樼Ȁcgpt⍯⍲⍶⍻y;䑑on;䄯f;쀀𝕚a;䎹uest耻¿䂿Āci⎊⎏r;쀀𝒾nʀ;EdsvӴ⎛⎝⎡ӳ;拹ot;拵Ā;v⎦⎧拴;拳Ā;iݷ⎮lde;䄩ǫ⎸\0⎼cy;䑖l耻ï䃯̀cfmosu⏌⏗⏜⏡⏧⏵Āiy⏑⏕rc;䄵;䐹r;쀀𝔧ath;䈷pf;쀀𝕛ǣ⏬\0⏱r;쀀𝒿rcy;䑘kcy;䑔Ѐacfghjos␋␖␢␧␭␱␵␻ppaĀ;v␓␔䎺;䏰Āey␛␠dil;䄷;䐺r;쀀𝔨reen;䄸cy;䑅cy;䑜pf;쀀𝕜cr;쀀𝓀஀ABEHabcdefghjlmnoprstuv⑰⒁⒆⒍⒑┎┽╚▀♎♞♥♹♽⚚⚲⛘❝❨➋⟀⠁⠒ƀart⑷⑺⑼rò৆òΕail;椛arr;椎Ā;gঔ⒋;檋ar;楢ॣ⒥\0⒪\0⒱\0\0\0\0\0⒵Ⓔ\0ⓆⓈⓍ\0⓹ute;䄺mptyv;榴raîࡌbda;䎻gƀ;dlࢎⓁⓃ;榑åࢎ;檅uo耻«䂫rЀ;bfhlpst࢙ⓞⓦⓩ⓫⓮⓱⓵Ā;f࢝ⓣs;椟s;椝ë≒p;憫l;椹im;楳l;憢ƀ;ae⓿─┄檫il;椙Ā;s┉┊檭;쀀⪭︀ƀabr┕┙┝rr;椌rk;杲Āak┢┬cĀek┨┪;䁻;䁛Āes┱┳;榋lĀdu┹┻;榏;榍Ȁaeuy╆╋╖╘ron;䄾Ādi═╔il;䄼ìࢰâ┩;䐻Ȁcqrs╣╦╭╽a;椶uoĀ;rนᝆĀdu╲╷har;楧shar;楋h;憲ʀ;fgqs▋▌উ◳◿扤tʀahlrt▘▤▷◂◨rrowĀ;t࢙□aé⓶arpoonĀdu▯▴own»њp»०eftarrows;懇ightƀahs◍◖◞rrowĀ;sࣴࢧarpoonó྘quigarro÷⇰hreetimes;拋ƀ;qs▋ও◺lanôবʀ;cdgsব☊☍☝☨c;檨otĀ;o☔☕橿Ā;r☚☛檁;檃Ā;e☢☥쀀⋚︀s;檓ʀadegs☳☹☽♉♋pproøⓆot;拖qĀgq♃♅ôউgtò⒌ôছiíলƀilr♕࣡♚sht;楼;쀀𝔩Ā;Eজ♣;檑š♩♶rĀdu▲♮Ā;l॥♳;楪lk;斄cy;䑙ʀ;achtੈ⚈⚋⚑⚖rò◁orneòᴈard;楫ri;旺Āio⚟⚤dot;䅀ustĀ;a⚬⚭掰che»⚭ȀEaes⚻⚽⛉⛔;扨pĀ;p⛃⛄檉rox»⛄Ā;q⛎⛏檇Ā;q⛎⚻im;拦Ѐabnoptwz⛩⛴⛷✚✯❁❇❐Ānr⛮⛱g;柬r;懽rëࣁgƀlmr⛿✍✔eftĀar০✇ightá৲apsto;柼ightá৽parrowĀlr✥✩efô⓭ight;憬ƀafl✶✹✽r;榅;쀀𝕝us;樭imes;樴š❋❏st;戗áፎƀ;ef❗❘᠀旊nge»❘arĀ;l❤❥䀨t;榓ʀachmt❳❶❼➅➇ròࢨorneòᶌarĀ;d྘➃;業;怎ri;抿̀achiqt➘➝ੀ➢➮➻quo;怹r;쀀𝓁mƀ;egল➪➬;檍;檏Ābu┪➳oĀ;rฟ➹;怚rok;䅂萀<;cdhilqrࠫ⟒☹⟜⟠⟥⟪⟰Āci⟗⟙;檦r;橹reå◲mes;拉arr;楶uest;橻ĀPi⟵⟹ar;榖ƀ;ef⠀भ᠛旃rĀdu⠇⠍shar;楊har;楦Āen⠗⠡rtneqq;쀀≨︀Å⠞܀Dacdefhilnopsu⡀⡅⢂⢎⢓⢠⢥⢨⣚⣢⣤ઃ⣳⤂Dot;戺Ȁclpr⡎⡒⡣⡽r耻¯䂯Āet⡗⡙;時Ā;e⡞⡟朠se»⡟Ā;sျ⡨toȀ;dluျ⡳⡷⡻owîҌefôएðᏑker;斮Āoy⢇⢌mma;権;䐼ash;怔asuredangle»ᘦr;쀀𝔪o;愧ƀcdn⢯⢴⣉ro耻µ䂵Ȁ;acdᑤ⢽⣀⣄sôᚧir;櫰ot肻·Ƶusƀ;bd⣒ᤃ⣓戒Ā;uᴼ⣘;横ţ⣞⣡p;櫛ò−ðઁĀdp⣩⣮els;抧f;쀀𝕞Āct⣸⣽r;쀀𝓂pos»ᖝƀ;lm⤉⤊⤍䎼timap;抸ఀGLRVabcdefghijlmoprstuvw⥂⥓⥾⦉⦘⧚⧩⨕⨚⩘⩝⪃⪕⪤⪨⬄⬇⭄⭿⮮ⰴⱧⱼ⳩Āgt⥇⥋;쀀⋙̸Ā;v⥐௏쀀≫⃒ƀelt⥚⥲⥶ftĀar⥡⥧rrow;懍ightarrow;懎;쀀⋘̸Ā;v⥻ే쀀≪⃒ightarrow;懏ĀDd⦎⦓ash;抯ash;抮ʀbcnpt⦣⦧⦬⦱⧌la»˞ute;䅄g;쀀∠⃒ʀ;Eiop඄⦼⧀⧅⧈;쀀⩰̸d;쀀≋̸s;䅉roø඄urĀ;a⧓⧔普lĀ;s⧓ସdz⧟\0⧣p肻\xA0ଷmpĀ;e௹ఀʀaeouy⧴⧾⨃⨐⨓ǰ⧹\0⧻;橃on;䅈dil;䅆ngĀ;dൾ⨊ot;쀀⩭̸p;橂;䐽ash;怓΀;Aadqsxஒ⨩⨭⨻⩁⩅⩐rr;懗rĀhr⨳⨶k;椤Ā;oᏲᏰot;쀀≐̸uiöୣĀei⩊⩎ar;椨í஘istĀ;s஠டr;쀀𝔫ȀEest௅⩦⩹⩼ƀ;qs஼⩭௡ƀ;qs஼௅⩴lanô௢ií௪Ā;rஶ⪁»ஷƀAap⪊⪍⪑rò⥱rr;憮ar;櫲ƀ;svྍ⪜ྌĀ;d⪡⪢拼;拺cy;䑚΀AEadest⪷⪺⪾⫂⫅⫶⫹rò⥦;쀀≦̸rr;憚r;急Ȁ;fqs఻⫎⫣⫯tĀar⫔⫙rro÷⫁ightarro÷⪐ƀ;qs఻⪺⫪lanôౕĀ;sౕ⫴»శiíౝĀ;rవ⫾iĀ;eచథiäඐĀpt⬌⬑f;쀀𝕟膀¬;in⬙⬚⬶䂬nȀ;Edvஉ⬤⬨⬮;쀀⋹̸ot;쀀⋵̸ǡஉ⬳⬵;拷;拶iĀ;vಸ⬼ǡಸ⭁⭃;拾;拽ƀaor⭋⭣⭩rȀ;ast୻⭕⭚⭟lleì୻l;쀀⫽⃥;쀀∂̸lint;樔ƀ;ceಒ⭰⭳uåಥĀ;cಘ⭸Ā;eಒ⭽ñಘȀAait⮈⮋⮝⮧rò⦈rrƀ;cw⮔⮕⮙憛;쀀⤳̸;쀀↝̸ghtarrow»⮕riĀ;eೋೖ΀chimpqu⮽⯍⯙⬄୸⯤⯯Ȁ;cerല⯆ഷ⯉uå൅;쀀𝓃ortɭ⬅\0\0⯖ará⭖mĀ;e൮⯟Ā;q൴൳suĀbp⯫⯭å೸åഋƀbcp⯶ⰑⰙȀ;Ees⯿ⰀഢⰄ抄;쀀⫅̸etĀ;eഛⰋqĀ;qണⰀcĀ;eലⰗñസȀ;EesⰢⰣൟⰧ抅;쀀⫆̸etĀ;e൘ⰮqĀ;qൠⰣȀgilrⰽⰿⱅⱇìௗlde耻ñ䃱çృiangleĀlrⱒⱜeftĀ;eచⱚñదightĀ;eೋⱥñ೗Ā;mⱬⱭ䎽ƀ;esⱴⱵⱹ䀣ro;愖p;怇ҀDHadgilrsⲏⲔⲙⲞⲣⲰⲶⳓⳣash;抭arr;椄p;쀀≍⃒ash;抬ĀetⲨⲬ;쀀≥⃒;쀀>⃒nfin;槞ƀAetⲽⳁⳅrr;椂;쀀≤⃒Ā;rⳊⳍ쀀<⃒ie;쀀⊴⃒ĀAtⳘⳜrr;椃rie;쀀⊵⃒im;쀀∼⃒ƀAan⳰⳴ⴂrr;懖rĀhr⳺⳽k;椣Ā;oᏧᏥear;椧ቓ᪕\0\0\0\0\0\0\0\0\0\0\0\0\0ⴭ\0ⴸⵈⵠⵥ⵲ⶄᬇ\0\0ⶍⶫ\0ⷈⷎ\0ⷜ⸙⸫⸾⹃Ācsⴱ᪗ute耻ó䃳ĀiyⴼⵅrĀ;c᪞ⵂ耻ô䃴;䐾ʀabios᪠ⵒⵗLjⵚlac;䅑v;樸old;榼lig;䅓Ācr⵩⵭ir;榿;쀀𝔬ͯ⵹\0\0⵼\0ⶂn;䋛ave耻ò䃲;槁Ābmⶈ෴ar;榵Ȁacitⶕ⶘ⶥⶨrò᪀Āir⶝ⶠr;榾oss;榻nå๒;槀ƀaeiⶱⶵⶹcr;䅍ga;䏉ƀcdnⷀⷅǍron;䎿;榶pf;쀀𝕠ƀaelⷔ⷗ǒr;榷rp;榹΀;adiosvⷪⷫⷮ⸈⸍⸐⸖戨rò᪆Ȁ;efmⷷⷸ⸂⸅橝rĀ;oⷾⷿ愴f»ⷿ耻ª䂪耻º䂺gof;抶r;橖lope;橗;橛ƀclo⸟⸡⸧ò⸁ash耻ø䃸l;折iŬⸯ⸴de耻õ䃵esĀ;aǛ⸺s;樶ml耻ö䃶bar;挽ૡ⹞\0⹽\0⺀⺝\0⺢⺹\0\0⻋ຜ\0⼓\0\0⼫⾼\0⿈rȀ;astЃ⹧⹲຅脀¶;l⹭⹮䂶leìЃɩ⹸\0\0⹻m;櫳;櫽y;䐿rʀcimpt⺋⺏⺓ᡥ⺗nt;䀥od;䀮il;怰enk;怱r;쀀𝔭ƀimo⺨⺰⺴Ā;v⺭⺮䏆;䏕maô੶ne;明ƀ;tv⺿⻀⻈䏀chfork»´;䏖Āau⻏⻟nĀck⻕⻝kĀ;h⇴⻛;愎ö⇴sҀ;abcdemst⻳⻴ᤈ⻹⻽⼄⼆⼊⼎䀫cir;樣ir;樢Āouᵀ⼂;樥;橲n肻±ຝim;樦wo;樧ƀipu⼙⼠⼥ntint;樕f;쀀𝕡nd耻£䂣Ԁ;Eaceinosu່⼿⽁⽄⽇⾁⾉⾒⽾⾶;檳p;檷uå໙Ā;c໎⽌̀;acens່⽙⽟⽦⽨⽾pproø⽃urlyeñ໙ñ໎ƀaes⽯⽶⽺pprox;檹qq;檵im;拨iíໟmeĀ;s⾈ຮ怲ƀEas⽸⾐⽺ð⽵ƀdfp໬⾙⾯ƀals⾠⾥⾪lar;挮ine;挒urf;挓Ā;t໻⾴ï໻rel;抰Āci⿀⿅r;쀀𝓅;䏈ncsp;怈̀fiopsu⿚⋢⿟⿥⿫⿱r;쀀𝔮pf;쀀𝕢rime;恗cr;쀀𝓆ƀaeo⿸〉〓tĀei⿾々rnionóڰnt;樖stĀ;e【】䀿ñἙô༔઀ABHabcdefhilmnoprstux぀けさすムㄎㄫㅇㅢㅲㆎ㈆㈕㈤㈩㉘㉮㉲㊐㊰㊷ƀartぇおがròႳòϝail;検aròᱥar;楤΀cdenqrtとふへみわゔヌĀeuねぱ;쀀∽̱te;䅕iãᅮmptyv;榳gȀ;del࿑らるろ;榒;榥å࿑uo耻»䂻rր;abcfhlpstw࿜ガクシスゼゾダッデナp;極Ā;f࿠ゴs;椠;椳s;椞ë≝ð✮l;楅im;楴l;憣;憝Āaiパフil;椚oĀ;nホボ戶aló༞ƀabrョリヮrò៥rk;杳ĀakンヽcĀekヹ・;䁽;䁝Āes㄂㄄;榌lĀduㄊㄌ;榎;榐Ȁaeuyㄗㄜㄧㄩron;䅙Ādiㄡㄥil;䅗ì࿲âヺ;䑀Ȁclqsㄴㄷㄽㅄa;椷dhar;楩uoĀ;rȎȍh;憳ƀacgㅎㅟངlȀ;ipsླྀㅘㅛႜnåႻarôྩt;断ƀilrㅩဣㅮsht;楽;쀀𝔯ĀaoㅷㆆrĀduㅽㅿ»ѻĀ;l႑ㆄ;楬Ā;vㆋㆌ䏁;䏱ƀgns㆕ㇹㇼht̀ahlrstㆤㆰ㇂㇘㇤㇮rrowĀ;t࿜ㆭaéトarpoonĀduㆻㆿowîㅾp»႒eftĀah㇊㇐rrowó࿪arpoonóՑightarrows;應quigarro÷ニhreetimes;拌g;䋚ingdotseñἲƀahm㈍㈐㈓rò࿪aòՑ;怏oustĀ;a㈞㈟掱che»㈟mid;櫮Ȁabpt㈲㈽㉀㉒Ānr㈷㈺g;柭r;懾rëဃƀafl㉇㉊㉎r;榆;쀀𝕣us;樮imes;樵Āap㉝㉧rĀ;g㉣㉤䀩t;榔olint;樒arò㇣Ȁachq㉻㊀Ⴜ㊅quo;怺r;쀀𝓇Ābu・㊊oĀ;rȔȓƀhir㊗㊛㊠reåㇸmes;拊iȀ;efl㊪ၙᠡ㊫方tri;槎luhar;楨;愞ൡ㋕㋛㋟㌬㌸㍱\0㍺㎤\0\0㏬㏰\0㐨㑈㑚㒭㒱㓊㓱\0㘖\0\0㘳cute;䅛quï➺Ԁ;Eaceinpsyᇭ㋳㋵㋿㌂㌋㌏㌟㌦㌩;檴ǰ㋺\0㋼;檸on;䅡uåᇾĀ;dᇳ㌇il;䅟rc;䅝ƀEas㌖㌘㌛;檶p;檺im;择olint;樓iíሄ;䑁otƀ;be㌴ᵇ㌵担;橦΀Aacmstx㍆㍊㍗㍛㍞㍣㍭rr;懘rĀhr㍐㍒ë∨Ā;oਸ਼਴t耻§䂧i;䀻war;椩mĀin㍩ðnuóñt;朶rĀ;o㍶⁕쀀𝔰Ȁacoy㎂㎆㎑㎠rp;景Āhy㎋㎏cy;䑉;䑈rtɭ㎙\0\0㎜iäᑤaraì⹯耻­䂭Āgm㎨㎴maƀ;fv㎱㎲㎲䏃;䏂Ѐ;deglnprካ㏅㏉㏎㏖㏞㏡㏦ot;橪Ā;q኱ኰĀ;E㏓㏔檞;檠Ā;E㏛㏜檝;檟e;扆lus;樤arr;楲aròᄽȀaeit㏸㐈㐏㐗Āls㏽㐄lsetmé㍪hp;樳parsl;槤Ādlᑣ㐔e;挣Ā;e㐜㐝檪Ā;s㐢㐣檬;쀀⪬︀ƀflp㐮㐳㑂tcy;䑌Ā;b㐸㐹䀯Ā;a㐾㐿槄r;挿f;쀀𝕤aĀdr㑍ЂesĀ;u㑔㑕晠it»㑕ƀcsu㑠㑹㒟Āau㑥㑯pĀ;sᆈ㑫;쀀⊓︀pĀ;sᆴ㑵;쀀⊔︀uĀbp㑿㒏ƀ;esᆗᆜ㒆etĀ;eᆗ㒍ñᆝƀ;esᆨᆭ㒖etĀ;eᆨ㒝ñᆮƀ;afᅻ㒦ְrť㒫ֱ»ᅼaròᅈȀcemt㒹㒾㓂㓅r;쀀𝓈tmîñiì㐕aræᆾĀar㓎㓕rĀ;f㓔ឿ昆Āan㓚㓭ightĀep㓣㓪psiloîỠhé⺯s»⡒ʀbcmnp㓻㕞ሉ㖋㖎Ҁ;Edemnprs㔎㔏㔑㔕㔞㔣㔬㔱㔶抂;櫅ot;檽Ā;dᇚ㔚ot;櫃ult;櫁ĀEe㔨㔪;櫋;把lus;檿arr;楹ƀeiu㔽㕒㕕tƀ;en㔎㕅㕋qĀ;qᇚ㔏eqĀ;q㔫㔨m;櫇Ābp㕚㕜;櫕;櫓c̀;acensᇭ㕬㕲㕹㕻㌦pproø㋺urlyeñᇾñᇳƀaes㖂㖈㌛pproø㌚qñ㌗g;晪ڀ123;Edehlmnps㖩㖬㖯ሜ㖲㖴㗀㗉㗕㗚㗟㗨㗭耻¹䂹耻²䂲耻³䂳;櫆Āos㖹㖼t;檾ub;櫘Ā;dሢ㗅ot;櫄sĀou㗏㗒l;柉b;櫗arr;楻ult;櫂ĀEe㗤㗦;櫌;抋lus;櫀ƀeiu㗴㘉㘌tƀ;enሜ㗼㘂qĀ;qሢ㖲eqĀ;q㗧㗤m;櫈Ābp㘑㘓;櫔;櫖ƀAan㘜㘠㘭rr;懙rĀhr㘦㘨ë∮Ā;oਫ਩war;椪lig耻ß䃟௡㙑㙝㙠ዎ㙳㙹\0㙾㛂\0\0\0\0\0㛛㜃\0㜉㝬\0\0\0㞇ɲ㙖\0\0㙛get;挖;䏄rë๟ƀaey㙦㙫㙰ron;䅥dil;䅣;䑂lrec;挕r;쀀𝔱Ȁeiko㚆㚝㚵㚼Dz㚋\0㚑eĀ4fኄኁaƀ;sv㚘㚙㚛䎸ym;䏑Ācn㚢㚲kĀas㚨㚮pproø዁im»ኬsðኞĀas㚺㚮ð዁rn耻þ䃾Ǭ̟㛆⋧es膀×;bd㛏㛐㛘䃗Ā;aᤏ㛕r;樱;樰ƀeps㛡㛣㜀á⩍Ȁ;bcf҆㛬㛰㛴ot;挶ir;櫱Ā;o㛹㛼쀀𝕥rk;櫚á㍢rime;怴ƀaip㜏㜒㝤dåቈ΀adempst㜡㝍㝀㝑㝗㝜㝟ngleʀ;dlqr㜰㜱㜶㝀㝂斵own»ᶻeftĀ;e⠀㜾ñम;扜ightĀ;e㊪㝋ñၚot;旬inus;樺lus;樹b;槍ime;樻ezium;揢ƀcht㝲㝽㞁Āry㝷㝻;쀀𝓉;䑆cy;䑛rok;䅧Āio㞋㞎xô᝷headĀlr㞗㞠eftarro÷ࡏightarrow»ཝऀAHabcdfghlmoprstuw㟐㟓㟗㟤㟰㟼㠎㠜㠣㠴㡑㡝㡫㢩㣌㣒㣪㣶ròϭar;楣Ācr㟜㟢ute耻ú䃺òᅐrǣ㟪\0㟭y;䑞ve;䅭Āiy㟵㟺rc耻û䃻;䑃ƀabh㠃㠆㠋ròᎭlac;䅱aòᏃĀir㠓㠘sht;楾;쀀𝔲rave耻ù䃹š㠧㠱rĀlr㠬㠮»ॗ»ႃlk;斀Āct㠹㡍ɯ㠿\0\0㡊rnĀ;e㡅㡆挜r»㡆op;挏ri;旸Āal㡖㡚cr;䅫肻¨͉Āgp㡢㡦on;䅳f;쀀𝕦̀adhlsuᅋ㡸㡽፲㢑㢠ownáᎳarpoonĀlr㢈㢌efô㠭ighô㠯iƀ;hl㢙㢚㢜䏅»ᏺon»㢚parrows;懈ƀcit㢰㣄㣈ɯ㢶\0\0㣁rnĀ;e㢼㢽挝r»㢽op;挎ng;䅯ri;旹cr;쀀𝓊ƀdir㣙㣝㣢ot;拰lde;䅩iĀ;f㜰㣨»᠓Āam㣯㣲rò㢨l耻ü䃼angle;榧ހABDacdeflnoprsz㤜㤟㤩㤭㦵㦸㦽㧟㧤㧨㧳㧹㧽㨁㨠ròϷarĀ;v㤦㤧櫨;櫩asèϡĀnr㤲㤷grt;榜΀eknprst㓣㥆㥋㥒㥝㥤㦖appá␕othinçẖƀhir㓫⻈㥙opô⾵Ā;hᎷ㥢ïㆍĀiu㥩㥭gmá㎳Ābp㥲㦄setneqĀ;q㥽㦀쀀⊊︀;쀀⫋︀setneqĀ;q㦏㦒쀀⊋︀;쀀⫌︀Āhr㦛㦟etá㚜iangleĀlr㦪㦯eft»थight»ၑy;䐲ash»ံƀelr㧄㧒㧗ƀ;beⷪ㧋㧏ar;抻q;扚lip;拮Ābt㧜ᑨaòᑩr;쀀𝔳tré㦮suĀbp㧯㧱»ജ»൙pf;쀀𝕧roð໻tré㦴Ācu㨆㨋r;쀀𝓋Ābp㨐㨘nĀEe㦀㨖»㥾nĀEe㦒㨞»㦐igzag;榚΀cefoprs㨶㨻㩖㩛㩔㩡㩪irc;䅵Ādi㩀㩑Ābg㩅㩉ar;機eĀ;qᗺ㩏;扙erp;愘r;쀀𝔴pf;쀀𝕨Ā;eᑹ㩦atèᑹcr;쀀𝓌ૣណ㪇\0㪋\0㪐㪛\0\0㪝㪨㪫㪯\0\0㫃㫎\0㫘ៜ៟tré៑r;쀀𝔵ĀAa㪔㪗ròσrò৶;䎾ĀAa㪡㪤ròθrò৫að✓is;拻ƀdptឤ㪵㪾Āfl㪺ឩ;쀀𝕩imåឲĀAa㫇㫊ròώròਁĀcq㫒ីr;쀀𝓍Āpt៖㫜ré។Ѐacefiosu㫰㫽㬈㬌㬑㬕㬛㬡cĀuy㫶㫻te耻ý䃽;䑏Āiy㬂㬆rc;䅷;䑋n耻¥䂥r;쀀𝔶cy;䑗pf;쀀𝕪cr;쀀𝓎Ācm㬦㬩y;䑎l耻ÿ䃿Ԁacdefhiosw㭂㭈㭔㭘㭤㭩㭭㭴㭺㮀cute;䅺Āay㭍㭒ron;䅾;䐷ot;䅼Āet㭝㭡træᕟa;䎶r;쀀𝔷cy;䐶grarr;懝pf;쀀𝕫cr;쀀𝓏Ājn㮅㮇;怍j;怌`.split(``).map(e=>e.charCodeAt(0))),ee=new Uint16Array(`Ȁaglq \x1Bɭ\0\0p;䀦os;䀧t;䀾t;䀼uot;䀢`.split(``).map(e=>e.charCodeAt(0))),te=new Map([[0,65533],[128,8364],[130,8218],[131,402],[132,8222],[133,8230],[134,8224],[135,8225],[136,710],[137,8240],[138,352],[139,8249],[140,338],[142,381],[145,8216],[146,8217],[147,8220],[148,8221],[149,8226],[150,8211],[151,8212],[152,732],[153,8482],[154,353],[155,8250],[156,339],[158,382],[159,376]]),ne=String.fromCodePoint??function(e){let t=``;return e>65535&&(e-=65536,t+=String.fromCharCode(e>>>10&1023|55296),e=56320|e&1023),t+=String.fromCharCode(e),t};function re(e){return e>=55296&&e<=57343||e>1114111?65533:te.get(e)??e}var V;(function(e){e[e.NUM=35]=`NUM`,e[e.SEMI=59]=`SEMI`,e[e.EQUALS=61]=`EQUALS`,e[e.ZERO=48]=`ZERO`,e[e.NINE=57]=`NINE`,e[e.LOWER_A=97]=`LOWER_A`,e[e.LOWER_F=102]=`LOWER_F`,e[e.LOWER_X=120]=`LOWER_X`,e[e.LOWER_Z=122]=`LOWER_Z`,e[e.UPPER_A=65]=`UPPER_A`,e[e.UPPER_F=70]=`UPPER_F`,e[e.UPPER_Z=90]=`UPPER_Z`})(V||={});var ie=32,H;(function(e){e[e.VALUE_LENGTH=49152]=`VALUE_LENGTH`,e[e.BRANCH_LENGTH=16256]=`BRANCH_LENGTH`,e[e.JUMP_TABLE=127]=`JUMP_TABLE`})(H||={});function U(e){return e>=V.ZERO&&e<=V.NINE}function ae(e){return e>=V.UPPER_A&&e<=V.UPPER_F||e>=V.LOWER_A&&e<=V.LOWER_F}function oe(e){return e>=V.UPPER_A&&e<=V.UPPER_Z||e>=V.LOWER_A&&e<=V.LOWER_Z||U(e)}function se(e){return e===V.EQUALS||oe(e)}var W;(function(e){e[e.EntityStart=0]=`EntityStart`,e[e.NumericStart=1]=`NumericStart`,e[e.NumericDecimal=2]=`NumericDecimal`,e[e.NumericHex=3]=`NumericHex`,e[e.NamedEntity=4]=`NamedEntity`})(W||={});var ce;(function(e){e[e.Legacy=0]=`Legacy`,e[e.Strict=1]=`Strict`,e[e.Attribute=2]=`Attribute`})(ce||={});var le=class{constructor(e,t,n){this.decodeTree=e,this.emitCodePoint=t,this.errors=n,this.state=W.EntityStart,this.consumed=1,this.result=0,this.treeIndex=0,this.excess=1,this.decodeMode=ce.Strict}startEntity(e){this.decodeMode=e,this.state=W.EntityStart,this.result=0,this.treeIndex=0,this.excess=1,this.consumed=1}write(e,t){switch(this.state){case W.EntityStart:return e.charCodeAt(t)===V.NUM?(this.state=W.NumericStart,this.consumed+=1,this.stateNumericStart(e,t+1)):(this.state=W.NamedEntity,this.stateNamedEntity(e,t));case W.NumericStart:return this.stateNumericStart(e,t);case W.NumericDecimal:return this.stateNumericDecimal(e,t);case W.NumericHex:return this.stateNumericHex(e,t);case W.NamedEntity:return this.stateNamedEntity(e,t)}}stateNumericStart(e,t){return t>=e.length?-1:(e.charCodeAt(t)|ie)===V.LOWER_X?(this.state=W.NumericHex,this.consumed+=1,this.stateNumericHex(e,t+1)):(this.state=W.NumericDecimal,this.stateNumericDecimal(e,t))}addToNumericResult(e,t,n,r){if(t!==n){let i=n-t;this.result=this.result*r**+i+parseInt(e.substr(t,i),r),this.consumed+=i}}stateNumericHex(e,t){let n=t;for(;t<e.length;){let r=e.charCodeAt(t);if(U(r)||ae(r))t+=1;else return this.addToNumericResult(e,n,t,16),this.emitNumericEntity(r,3)}return this.addToNumericResult(e,n,t,16),-1}stateNumericDecimal(e,t){let n=t;for(;t<e.length;){let r=e.charCodeAt(t);if(U(r))t+=1;else return this.addToNumericResult(e,n,t,10),this.emitNumericEntity(r,2)}return this.addToNumericResult(e,n,t,10),-1}emitNumericEntity(e,t){var n;if(this.consumed<=t)return(n=this.errors)==null||n.absenceOfDigitsInNumericCharacterReference(this.consumed),0;if(e===V.SEMI)this.consumed+=1;else if(this.decodeMode===ce.Strict)return 0;return this.emitCodePoint(re(this.result),this.consumed),this.errors&&(e!==V.SEMI&&this.errors.missingSemicolonAfterCharacterReference(),this.errors.validateNumericCharacterReference(this.result)),this.consumed}stateNamedEntity(e,t){let{decodeTree:n}=this,r=n[this.treeIndex],i=(r&H.VALUE_LENGTH)>>14;for(;t<e.length;t++,this.excess++){let a=e.charCodeAt(t);if(this.treeIndex=de(n,r,this.treeIndex+Math.max(1,i),a),this.treeIndex<0)return this.result===0||this.decodeMode===ce.Attribute&&(i===0||se(a))?0:this.emitNotTerminatedNamedEntity();if(r=n[this.treeIndex],i=(r&H.VALUE_LENGTH)>>14,i!==0){if(a===V.SEMI)return this.emitNamedEntityData(this.treeIndex,i,this.consumed+this.excess);this.decodeMode!==ce.Strict&&(this.result=this.treeIndex,this.consumed+=this.excess,this.excess=0)}}return-1}emitNotTerminatedNamedEntity(){var e;let{result:t,decodeTree:n}=this,r=(n[t]&H.VALUE_LENGTH)>>14;return this.emitNamedEntityData(t,r,this.consumed),(e=this.errors)==null||e.missingSemicolonAfterCharacterReference(),this.consumed}emitNamedEntityData(e,t,n){let{decodeTree:r}=this;return this.emitCodePoint(t===1?r[e]&~H.VALUE_LENGTH:r[e+1],n),t===3&&this.emitCodePoint(r[e+2],n),n}end(){var e;switch(this.state){case W.NamedEntity:return this.result!==0&&(this.decodeMode!==ce.Attribute||this.result===this.treeIndex)?this.emitNotTerminatedNamedEntity():0;case W.NumericDecimal:return this.emitNumericEntity(0,2);case W.NumericHex:return this.emitNumericEntity(0,3);case W.NumericStart:return(e=this.errors)==null||e.absenceOfDigitsInNumericCharacterReference(this.consumed),0;case W.EntityStart:return 0}}};function ue(e){let t=``,n=new le(e,e=>t+=ne(e));return function(e,r){let i=0,a=0;for(;(a=e.indexOf(`&`,a))>=0;){t+=e.slice(i,a),n.startEntity(r);let o=n.write(e,a+1);if(o<0){i=a+n.end();break}i=a+o,a=o===0?i+1:i}let o=t+e.slice(i);return t=``,o}}function de(e,t,n,r){let i=(t&H.BRANCH_LENGTH)>>7,a=t&H.JUMP_TABLE;if(i===0)return a!==0&&r===a?n:-1;if(a){let t=r-a;return t<0||t>=i?-1:e[n+t]-1}let o=n,s=o+i-1;for(;o<=s;){let t=o+s>>>1,n=e[t];if(n<r)o=t+1;else if(n>r)s=t-1;else return e[t+i]}return-1}var fe=ue(B);ue(ee);function pe(e,t=ce.Legacy){return fe(e,t)}var me=e({arrayReplaceAt:()=>ye,assign:()=>ve,escapeHtml:()=>Me,escapeRE:()=>Pe,fromCodePoint:()=>xe,has:()=>_e,isMdAsciiPunct:()=>Le,isPunctChar:()=>Ie,isSpace:()=>K,isString:()=>G,isValidEntityCode:()=>be,isWhiteSpace:()=>Fe,lib:()=>ze,normalizeReference:()=>Re,unescapeAll:()=>De,unescapeMd:()=>Ee});function he(e){return Object.prototype.toString.call(e)}function G(e){return he(e)===`[object String]`}var ge=Object.prototype.hasOwnProperty;function _e(e,t){return ge.call(e,t)}function ve(e){return Array.prototype.slice.call(arguments,1).forEach(function(t){if(t){if(typeof t!=`object`)throw TypeError(t+`must be object`);Object.keys(t).forEach(function(n){e[n]=t[n]})}}),e}function ye(e,t,n){return[].concat(e.slice(0,t),n,e.slice(t+1))}function be(e){return!(e>=55296&&e<=57343||e>=64976&&e<=65007||(e&65535)==65535||(e&65535)==65534||e>=0&&e<=8||e===11||e>=14&&e<=31||e>=127&&e<=159||e>1114111)}function xe(e){if(e>65535){e-=65536;let t=55296+(e>>10),n=56320+(e&1023);return String.fromCharCode(t,n)}return String.fromCharCode(e)}var Se=/\\([!"#$%&'()*+,\-./:;<=>?@[\\\]^_`{|}~])/g,Ce=RegExp(Se.source+`|&([a-z#][a-z0-9]{1,31});`,`gi`),we=/^#((?:x[a-f0-9]{1,8}|[0-9]{1,8}))$/i;function Te(e,t){if(t.charCodeAt(0)===35&&we.test(t)){let n=t[1].toLowerCase()===`x`?parseInt(t.slice(2),16):parseInt(t.slice(1),10);return be(n)?xe(n):e}let n=pe(e);return n===e?e:n}function Ee(e){return e.indexOf(`\\`)<0?e:e.replace(Se,`$1`)}function De(e){return e.indexOf(`\\`)<0&&e.indexOf(`&`)<0?e:e.replace(Ce,function(e,t,n){return t||Te(e,n)})}var Oe=/[&<>"]/,ke=/[&<>"]/g,Ae={"&":`&amp;`,"<":`&lt;`,">":`&gt;`,'"':`&quot;`};function je(e){return Ae[e]}function Me(e){return Oe.test(e)?e.replace(ke,je):e}var Ne=/[.?*+^$[\]\\(){}|-]/g;function Pe(e){return e.replace(Ne,`\\$&`)}function K(e){switch(e){case 9:case 32:return!0}return!1}function Fe(e){if(e>=8192&&e<=8202)return!0;switch(e){case 9:case 10:case 11:case 12:case 13:case 32:case 160:case 5760:case 8239:case 8287:case 12288:return!0}return!1}function Ie(e){return I.test(e)||L.test(e)}function Le(e){switch(e){case 33:case 34:case 35:case 36:case 37:case 38:case 39:case 40:case 41:case 42:case 43:case 44:case 45:case 46:case 47:case 58:case 59:case 60:case 61:case 62:case 63:case 64:case 91:case 92:case 93:case 94:case 95:case 96:case 123:case 124:case 125:case 126:return!0;default:return!1}}function Re(e){return e=e.trim().replace(/\s+/g,` `),e.toLowerCase().toUpperCase()}var ze={mdurl:M,ucmicro:z};function Be(e,t,n){let r,i,a,o,s=e.posMax,c=e.pos;for(e.pos=t+1,r=1;e.pos<s;){if(a=e.src.charCodeAt(e.pos),a===93&&(r--,r===0)){i=!0;break}if(o=e.pos,e.md.inline.skipToken(e),a===91){if(o===e.pos-1)r++;else if(n)return e.pos=c,-1}}let l=-1;return i&&(l=e.pos),e.pos=c,l}function Ve(e,t,n){let r,i=t,a={ok:!1,pos:0,str:``};if(e.charCodeAt(i)===60){for(i++;i<n;){if(r=e.charCodeAt(i),r===10||r===60)return a;if(r===62)return a.pos=i+1,a.str=De(e.slice(t+1,i)),a.ok=!0,a;if(r===92&&i+1<n){i+=2;continue}i++}return a}let o=0;for(;i<n&&(r=e.charCodeAt(i),!(r===32||r<32||r===127));){if(r===92&&i+1<n){if(e.charCodeAt(i+1)===32)break;i+=2;continue}if(r===40&&(o++,o>32))return a;if(r===41){if(o===0)break;o--}i++}return t===i||o!==0?a:(a.str=De(e.slice(t,i)),a.pos=i,a.ok=!0,a)}function He(e,t,n,r){let i,a=t,o={ok:!1,can_continue:!1,pos:0,str:``,marker:0};if(r)o.str=r.str,o.marker=r.marker;else{if(a>=n)return o;let r=e.charCodeAt(a);if(r!==34&&r!==39&&r!==40)return o;t++,a++,r===40&&(r=41),o.marker=r}for(;a<n;){if(i=e.charCodeAt(a),i===o.marker)return o.pos=a+1,o.str+=De(e.slice(t,a)),o.ok=!0,o;if(i===40&&o.marker===41)return o;i===92&&a+1<n&&a++,a++}return o.can_continue=!0,o.str+=De(e.slice(t,a)),o}var Ue=e({parseLinkDestination:()=>Ve,parseLinkLabel:()=>Be,parseLinkTitle:()=>He}),q={};q.code_inline=function(e,t,n,r,i){let a=e[t];return`<code`+i.renderAttrs(a)+`>`+Me(a.content)+`</code>`},q.code_block=function(e,t,n,r,i){let a=e[t];return`<pre`+i.renderAttrs(a)+`><code>`+Me(e[t].content)+`</code></pre>
3
3
  `},q.fence=function(e,t,n,r,i){let a=e[t],o=a.info?De(a.info).trim():``,s=``,c=``;if(o){let e=o.split(/(\s+)/g);s=e[0],c=e.slice(2).join(``)}let l;if(l=n.highlight&&n.highlight(a.content,s,c)||Me(a.content),l.indexOf(`<pre`)===0)return l+`
4
4
  `;if(o){let e=a.attrIndex(`class`),t=a.attrs?a.attrs.slice():[];e<0?t.push([`class`,n.langPrefix+s]):(t[e]=t[e].slice(),t[e][1]+=` `+n.langPrefix+s);let r={attrs:t};return`<pre><code${i.renderAttrs(r)}>${l}</code></pre>\n`}return`<pre><code${i.renderAttrs(a)}>${l}</code></pre>\n`},q.image=function(e,t,n,r,i){let a=e[t];return a.attrs[a.attrIndex(`alt`)][1]=i.renderInlineAsText(a.children,n,r),i.renderToken(e,t,n)},q.hardbreak=function(e,t,n){return n.xhtmlOut?`<br />
@@ -1,4 +1,4 @@
1
- import{A as e,C as t,D as n,E as r,H as i,O as a,Q as o,S as s,T as c,W as l,Z as u,ft as d,ht as f,k as p,p as m,st as h,w as g}from"./router-BDvjwA-_.js";import{r as ee,t as _}from"./_plugin-vue_export-helper-BA1W5EEO.js";import{t as v}from"./Button-6kn5x8wB.js";import{t as te}from"./use-message-x3IR-EsB.js";import{t as y}from"./MarkdownRenderer-WDZUw_r0.js";import{a as b,t as x}from"./skills-hi1CfGAH.js";var ne={class:`memory-view`},re={class:`page-header`},ie={class:`header-title`},ae={class:`memory-content`},oe={key:0,class:`memory-loading`},se={key:1,class:`memory-sections`},ce={class:`memory-section`},le={class:`section-header`},ue={class:`section-title-row`},S={class:`section-title`},C={key:0,class:`section-mtime`},w={key:0,class:`section-body`},T={key:1,class:`empty-text`},E={key:1,class:`section-edit`},D=[`placeholder`],O={class:`edit-actions`},k={class:`memory-section`},A={class:`section-header`},j={class:`section-title-row`},M={class:`section-title`},N={key:0,class:`section-mtime`},P={key:0,class:`section-body`},F={key:1,class:`empty-text`},I={key:1,class:`section-edit`},L=[`placeholder`],R={class:`edit-actions`},z={class:`memory-section`},B={class:`section-header`},de={class:`section-title-row`},V={class:`section-title`},H={key:0,class:`section-mtime`},fe={key:0,class:`section-body`},pe={key:1,class:`empty-text`},me={key:1,class:`section-edit`},he=[`placeholder`],ge={class:`edit-actions`},U=_(e({__name:`MemoryView`,setup(e){let{t:_}=ee(),U=te(),W=h(!1),G=h(null),K=h(null),q=h(``),J=h(!1);i(Y);async function Y(){W.value=!0;try{G.value=await x()}catch(e){console.error(`Failed to load memory:`,e),U.error(_(`memory.loadFailed`))}finally{W.value=!1}}function X(e){K.value=e,q.value=G.value?.[e]||``}function Z(){K.value=null,q.value=``}async function Q(){if(K.value){J.value=!0;try{await b(K.value,q.value),await Y(),K.value=null,q.value=``,U.success(_(`common.saved`))}catch(e){U.error(`${_(`common.saveFailed`)}: ${e.message}`)}finally{J.value=!1}}}function $(e){return e?new Date(e).toLocaleString([],{month:`short`,day:`numeric`,hour:`2-digit`,minute:`2-digit`}):``}let _e=s(()=>!G.value?.memory?.trim()),ve=s(()=>!G.value?.user?.trim()),ye=s(()=>!G.value?.soul?.trim()),be=s(()=>(G.value?.memory||``).replace(/§/g,`
1
+ import{A as e,C as t,D as n,E as r,H as i,O as a,Q as o,S as s,T as c,W as l,Z as u,ft as d,ht as f,k as p,p as m,st as h,w as g}from"./router-CaAe9JO4.js";import{r as ee,t as _}from"./_plugin-vue_export-helper-BluKv70e.js";import{t as v}from"./Button-CYfnxZGL.js";import{t as te}from"./use-message-DON5YDCV.js";import{t as y}from"./MarkdownRenderer-bm7e-MHu.js";import{a as b,t as x}from"./skills-CGFLrxsf.js";var ne={class:`memory-view`},re={class:`page-header`},ie={class:`header-title`},ae={class:`memory-content`},oe={key:0,class:`memory-loading`},se={key:1,class:`memory-sections`},ce={class:`memory-section`},le={class:`section-header`},ue={class:`section-title-row`},S={class:`section-title`},C={key:0,class:`section-mtime`},w={key:0,class:`section-body`},T={key:1,class:`empty-text`},E={key:1,class:`section-edit`},D=[`placeholder`],O={class:`edit-actions`},k={class:`memory-section`},A={class:`section-header`},j={class:`section-title-row`},M={class:`section-title`},N={key:0,class:`section-mtime`},P={key:0,class:`section-body`},F={key:1,class:`empty-text`},I={key:1,class:`section-edit`},L=[`placeholder`],R={class:`edit-actions`},z={class:`memory-section`},B={class:`section-header`},de={class:`section-title-row`},V={class:`section-title`},H={key:0,class:`section-mtime`},fe={key:0,class:`section-body`},pe={key:1,class:`empty-text`},me={key:1,class:`section-edit`},he=[`placeholder`],ge={class:`edit-actions`},U=_(e({__name:`MemoryView`,setup(e){let{t:_}=ee(),U=te(),W=h(!1),G=h(null),K=h(null),q=h(``),J=h(!1);i(Y);async function Y(){W.value=!0;try{G.value=await x()}catch(e){console.error(`Failed to load memory:`,e),U.error(_(`memory.loadFailed`))}finally{W.value=!1}}function X(e){K.value=e,q.value=G.value?.[e]||``}function Z(){K.value=null,q.value=``}async function Q(){if(K.value){J.value=!0;try{await b(K.value,q.value),await Y(),K.value=null,q.value=``,U.success(_(`common.saved`))}catch(e){U.error(`${_(`common.saveFailed`)}: ${e.message}`)}finally{J.value=!1}}}function $(e){return e?new Date(e).toLocaleString([],{month:`short`,day:`numeric`,hour:`2-digit`,minute:`2-digit`}):``}let _e=s(()=>!G.value?.memory?.trim()),ve=s(()=>!G.value?.user?.trim()),ye=s(()=>!G.value?.soul?.trim()),be=s(()=>(G.value?.memory||``).replace(/§/g,`
2
2
 
3
3
  `)),xe=s(()=>(G.value?.user||``).replace(/§/g,`
4
4
 
@@ -1,4 +1,4 @@
1
- import{A as e,B as t,G as n,H as r,I as i,L as a,M as o,P as s,Q as c,S as l,U as u,Y as d,m as f,ot as p,pt as m,st as h,u as g,ut as _,x as v,z as y}from"./router-BDvjwA-_.js";import{$ as b,B as x,H as S,J as C,K as w,W as T,Z as E,c as D,ct as O,d as k,dt as A,et as j,ft as M,gt as ee,ht as te,lt as N,mt as P,n as F,s as ne,st as re,tt as ie,z as I}from"./browser-BIv3pBug.js";import{D as ae,E as oe,N as se,O as ce,P as le,T as ue,_ as de,b as fe,c as L,f as pe,h as me,k as he,l as R,o as ge,u as _e,x as ve}from"./Popover-upoiJRFk.js";import{f as z,i as ye,m as be,n as xe,p as B}from"./Suffix-BMy3yeNM.js";import{l as Se,n as V,r as Ce,t as we}from"./fade-in.cssr-BvBFOzvO.js";import{t as Te}from"./Close--rdg4fyH.js";import{r as Ee,t as De}from"./Button-6kn5x8wB.js";import{n as H,t as Oe}from"./Warning-cHbjPxlH.js";var U=h(null);function ke(e){if(e.clientX>0||e.clientY>0)U.value={x:e.clientX,y:e.clientY};else{let{target:t}=e;if(t instanceof Element){let{left:e,top:n,width:r,height:i}=t.getBoundingClientRect();e>0||n>0?U.value={x:e+r/2,y:n+i/2}:U.value={x:0,y:0}}else U.value=null}}var W=0,Ae=!0;function je(){if(!le)return p(h(null));W===0&&B(`click`,document,ke,!0);let e=()=>{W+=1};return(Ae&&=se())?(y(e),t(()=>{--W,W===0&&z(`click`,document,ke,!0)})):e(),p(U)}var Me=h(void 0),G=0;function Ne(){Me.value=Date.now()}var Pe=!0;function Fe(e){if(!le)return p(h(!1));let n=h(!1),r=null;function i(){r!==null&&window.clearTimeout(r)}function a(){i(),n.value=!0,r=window.setTimeout(()=>{n.value=!1},e)}G===0&&B(`click`,window,Ne,!0);let o=()=>{G+=1,B(`click`,window,a,!0)};return(Pe&&=se())?(y(o),t(()=>{--G,G===0&&z(`click`,window,Ne,!0),z(`click`,window,a,!0),i()})):o(),p(n)}var K=h(!1);function Ie(){K.value=!0}function Le(){K.value=!1}var q=0;function Re(){return b&&(y(()=>{q||(window.addEventListener(`compositionstart`,Ie),window.addEventListener(`compositionend`,Le)),q++}),t(()=>{q<=1?(window.removeEventListener(`compositionstart`,Ie),window.removeEventListener(`compositionend`,Le),q=0):q--})),K}var J=0,ze=``,Be=``,Ve=``,He=``,Ue=h(`0px`);function We(e){if(typeof document>`u`)return;let n=document.documentElement,i,a=!1,o=()=>{n.style.marginRight=ze,n.style.overflow=Be,n.style.overflowX=Ve,n.style.overflowY=He,Ue.value=`0px`};r(()=>{i=d(e,e=>{if(e){if(!J){let e=window.innerWidth-n.offsetWidth;e>0&&(ze=n.style.marginRight,n.style.marginRight=`${e}px`,Ue.value=`${e}px`),Be=n.style.overflow,Ve=n.style.overflowX,He=n.style.overflowY,n.style.overflow=`hidden`,n.style.overflowX=`hidden`,n.style.overflowY=`hidden`}a=!0,J++}else J--,J||o(),a=!1},{immediate:!0})}),t(()=>{i?.(),a&&=(J--,J||o(),!1)})}var Ge=V(`error`,()=>o(`svg`,{viewBox:`0 0 48 48`,version:`1.1`,xmlns:`http://www.w3.org/2000/svg`},o(`g`,{stroke:`none`,"stroke-width":`1`,"fill-rule":`evenodd`},o(`g`,{"fill-rule":`nonzero`},o(`path`,{d:`M24,4 C35.045695,4 44,12.954305 44,24 C44,35.045695 35.045695,44 24,44 C12.954305,44 4,35.045695 4,24 C4,12.954305 12.954305,4 24,4 Z M17.8838835,16.1161165 L17.7823881,16.0249942 C17.3266086,15.6583353 16.6733914,15.6583353 16.2176119,16.0249942 L16.1161165,16.1161165 L16.0249942,16.2176119 C15.6583353,16.6733914 15.6583353,17.3266086 16.0249942,17.7823881 L16.1161165,17.8838835 L22.233,24 L16.1161165,30.1161165 L16.0249942,30.2176119 C15.6583353,30.6733914 15.6583353,31.3266086 16.0249942,31.7823881 L16.1161165,31.8838835 L16.2176119,31.9750058 C16.6733914,32.3416647 17.3266086,32.3416647 17.7823881,31.9750058 L17.8838835,31.8838835 L24,25.767 L30.1161165,31.8838835 L30.2176119,31.9750058 C30.6733914,32.3416647 31.3266086,32.3416647 31.7823881,31.9750058 L31.8838835,31.8838835 L31.9750058,31.7823881 C32.3416647,31.3266086 32.3416647,30.6733914 31.9750058,30.2176119 L31.8838835,30.1161165 L25.767,24 L31.8838835,17.8838835 L31.9750058,17.7823881 C32.3416647,17.3266086 32.3416647,16.6733914 31.9750058,16.2176119 L31.8838835,16.1161165 L31.7823881,16.0249942 C31.3266086,15.6583353 30.6733914,15.6583353 30.2176119,16.0249942 L30.1161165,16.1161165 L24,22.233 L17.8838835,16.1161165 L17.7823881,16.0249942 L17.8838835,16.1161165 Z`}))))),Y=V(`info`,()=>o(`svg`,{viewBox:`0 0 28 28`,version:`1.1`,xmlns:`http://www.w3.org/2000/svg`},o(`g`,{stroke:`none`,"stroke-width":`1`,"fill-rule":`evenodd`},o(`g`,{"fill-rule":`nonzero`},o(`path`,{d:`M14,2 C20.6274,2 26,7.37258 26,14 C26,20.6274 20.6274,26 14,26 C7.37258,26 2,20.6274 2,14 C2,7.37258 7.37258,2 14,2 Z M14,11 C13.4477,11 13,11.4477 13,12 L13,12 L13,20 C13,20.5523 13.4477,21 14,21 C14.5523,21 15,20.5523 15,20 L15,20 L15,12 C15,11.4477 14.5523,11 14,11 Z M14,6.75 C13.3096,6.75 12.75,7.30964 12.75,8 C12.75,8.69036 13.3096,9.25 14,9.25 C14.6904,9.25 15.25,8.69036 15.25,8 C15.25,7.30964 14.6904,6.75 14,6.75 Z`}))))),Ke=V(`success`,()=>o(`svg`,{viewBox:`0 0 48 48`,version:`1.1`,xmlns:`http://www.w3.org/2000/svg`},o(`g`,{stroke:`none`,"stroke-width":`1`,"fill-rule":`evenodd`},o(`g`,{"fill-rule":`nonzero`},o(`path`,{d:`M24,4 C35.045695,4 44,12.954305 44,24 C44,35.045695 35.045695,44 24,44 C12.954305,44 4,35.045695 4,24 C4,12.954305 12.954305,4 24,4 Z M32.6338835,17.6161165 C32.1782718,17.1605048 31.4584514,17.1301307 30.9676119,17.5249942 L30.8661165,17.6161165 L20.75,27.732233 L17.1338835,24.1161165 C16.6457281,23.6279612 15.8542719,23.6279612 15.3661165,24.1161165 C14.9105048,24.5717282 14.8801307,25.2915486 15.2749942,25.7823881 L15.3661165,25.8838835 L19.8661165,30.3838835 C20.3217282,30.8394952 21.0415486,30.8698693 21.5323881,30.4750058 L21.6338835,30.3838835 L32.6338835,19.3838835 C33.1220388,18.8957281 33.1220388,18.1042719 32.6338835,17.6161165 Z`}))))),qe={paddingSmall:`12px 16px 12px`,paddingMedium:`19px 24px 20px`,paddingLarge:`23px 32px 24px`,paddingHuge:`27px 40px 28px`,titleFontSizeSmall:`16px`,titleFontSizeMedium:`18px`,titleFontSizeLarge:`18px`,titleFontSizeHuge:`18px`,closeIconSize:`18px`,closeSize:`22px`};function Je(e){let{primaryColor:t,borderRadius:n,lineHeight:r,fontSize:i,cardColor:a,textColor2:o,textColor1:s,dividerColor:c,fontWeightStrong:l,closeIconColor:u,closeIconColorHover:d,closeIconColorPressed:f,closeColorHover:p,closeColorPressed:m,modalColor:h,boxShadow1:g,popoverColor:_,actionColor:v}=e;return Object.assign(Object.assign({},qe),{lineHeight:r,color:a,colorModal:h,colorPopover:_,colorTarget:t,colorEmbedded:v,colorEmbeddedModal:v,colorEmbeddedPopover:v,textColor:o,titleTextColor:s,borderColor:c,actionColor:v,titleFontWeight:l,closeColorHover:p,closeColorPressed:m,closeBorderRadius:n,closeIconColor:u,closeIconColorHover:d,closeIconColorPressed:f,fontSizeSmall:i,fontSizeMedium:i,fontSizeLarge:i,fontSizeHuge:i,boxShadow:g,borderRadius:n})}var Ye={name:`Card`,common:F,self:Je},Xe=N(`card-content`,`
1
+ import{A as e,B as t,G as n,H as r,I as i,L as a,M as o,P as s,Q as c,S as l,U as u,Y as d,m as f,ot as p,pt as m,st as h,u as g,ut as _,x as v,z as y}from"./router-CaAe9JO4.js";import{$ as b,B as x,H as S,J as C,K as w,W as T,Z as E,c as D,ct as O,d as k,dt as A,et as j,ft as M,gt as ee,ht as te,lt as N,mt as P,n as F,s as ne,st as re,tt as ie,z as I}from"./browser-fXTO-ADn.js";import{D as ae,E as oe,N as se,O as ce,P as le,T as ue,_ as de,b as fe,c as L,f as pe,h as me,k as he,l as R,o as ge,u as _e,x as ve}from"./Popover-B_5YtxbH.js";import{f as z,i as ye,m as be,n as xe,p as B}from"./Suffix-CMjBYS-M.js";import{l as Se,n as V,r as Ce,t as we}from"./fade-in.cssr-Br-J4Ht7.js";import{t as Te}from"./Close-KtP3JjXR.js";import{r as Ee,t as De}from"./Button-CYfnxZGL.js";import{n as H,t as Oe}from"./Warning-IN0Uuhk7.js";var U=h(null);function ke(e){if(e.clientX>0||e.clientY>0)U.value={x:e.clientX,y:e.clientY};else{let{target:t}=e;if(t instanceof Element){let{left:e,top:n,width:r,height:i}=t.getBoundingClientRect();e>0||n>0?U.value={x:e+r/2,y:n+i/2}:U.value={x:0,y:0}}else U.value=null}}var W=0,Ae=!0;function je(){if(!le)return p(h(null));W===0&&B(`click`,document,ke,!0);let e=()=>{W+=1};return(Ae&&=se())?(y(e),t(()=>{--W,W===0&&z(`click`,document,ke,!0)})):e(),p(U)}var Me=h(void 0),G=0;function Ne(){Me.value=Date.now()}var Pe=!0;function Fe(e){if(!le)return p(h(!1));let n=h(!1),r=null;function i(){r!==null&&window.clearTimeout(r)}function a(){i(),n.value=!0,r=window.setTimeout(()=>{n.value=!1},e)}G===0&&B(`click`,window,Ne,!0);let o=()=>{G+=1,B(`click`,window,a,!0)};return(Pe&&=se())?(y(o),t(()=>{--G,G===0&&z(`click`,window,Ne,!0),z(`click`,window,a,!0),i()})):o(),p(n)}var K=h(!1);function Ie(){K.value=!0}function Le(){K.value=!1}var q=0;function Re(){return b&&(y(()=>{q||(window.addEventListener(`compositionstart`,Ie),window.addEventListener(`compositionend`,Le)),q++}),t(()=>{q<=1?(window.removeEventListener(`compositionstart`,Ie),window.removeEventListener(`compositionend`,Le),q=0):q--})),K}var J=0,ze=``,Be=``,Ve=``,He=``,Ue=h(`0px`);function We(e){if(typeof document>`u`)return;let n=document.documentElement,i,a=!1,o=()=>{n.style.marginRight=ze,n.style.overflow=Be,n.style.overflowX=Ve,n.style.overflowY=He,Ue.value=`0px`};r(()=>{i=d(e,e=>{if(e){if(!J){let e=window.innerWidth-n.offsetWidth;e>0&&(ze=n.style.marginRight,n.style.marginRight=`${e}px`,Ue.value=`${e}px`),Be=n.style.overflow,Ve=n.style.overflowX,He=n.style.overflowY,n.style.overflow=`hidden`,n.style.overflowX=`hidden`,n.style.overflowY=`hidden`}a=!0,J++}else J--,J||o(),a=!1},{immediate:!0})}),t(()=>{i?.(),a&&=(J--,J||o(),!1)})}var Ge=V(`error`,()=>o(`svg`,{viewBox:`0 0 48 48`,version:`1.1`,xmlns:`http://www.w3.org/2000/svg`},o(`g`,{stroke:`none`,"stroke-width":`1`,"fill-rule":`evenodd`},o(`g`,{"fill-rule":`nonzero`},o(`path`,{d:`M24,4 C35.045695,4 44,12.954305 44,24 C44,35.045695 35.045695,44 24,44 C12.954305,44 4,35.045695 4,24 C4,12.954305 12.954305,4 24,4 Z M17.8838835,16.1161165 L17.7823881,16.0249942 C17.3266086,15.6583353 16.6733914,15.6583353 16.2176119,16.0249942 L16.1161165,16.1161165 L16.0249942,16.2176119 C15.6583353,16.6733914 15.6583353,17.3266086 16.0249942,17.7823881 L16.1161165,17.8838835 L22.233,24 L16.1161165,30.1161165 L16.0249942,30.2176119 C15.6583353,30.6733914 15.6583353,31.3266086 16.0249942,31.7823881 L16.1161165,31.8838835 L16.2176119,31.9750058 C16.6733914,32.3416647 17.3266086,32.3416647 17.7823881,31.9750058 L17.8838835,31.8838835 L24,25.767 L30.1161165,31.8838835 L30.2176119,31.9750058 C30.6733914,32.3416647 31.3266086,32.3416647 31.7823881,31.9750058 L31.8838835,31.8838835 L31.9750058,31.7823881 C32.3416647,31.3266086 32.3416647,30.6733914 31.9750058,30.2176119 L31.8838835,30.1161165 L25.767,24 L31.8838835,17.8838835 L31.9750058,17.7823881 C32.3416647,17.3266086 32.3416647,16.6733914 31.9750058,16.2176119 L31.8838835,16.1161165 L31.7823881,16.0249942 C31.3266086,15.6583353 30.6733914,15.6583353 30.2176119,16.0249942 L30.1161165,16.1161165 L24,22.233 L17.8838835,16.1161165 L17.7823881,16.0249942 L17.8838835,16.1161165 Z`}))))),Y=V(`info`,()=>o(`svg`,{viewBox:`0 0 28 28`,version:`1.1`,xmlns:`http://www.w3.org/2000/svg`},o(`g`,{stroke:`none`,"stroke-width":`1`,"fill-rule":`evenodd`},o(`g`,{"fill-rule":`nonzero`},o(`path`,{d:`M14,2 C20.6274,2 26,7.37258 26,14 C26,20.6274 20.6274,26 14,26 C7.37258,26 2,20.6274 2,14 C2,7.37258 7.37258,2 14,2 Z M14,11 C13.4477,11 13,11.4477 13,12 L13,12 L13,20 C13,20.5523 13.4477,21 14,21 C14.5523,21 15,20.5523 15,20 L15,20 L15,12 C15,11.4477 14.5523,11 14,11 Z M14,6.75 C13.3096,6.75 12.75,7.30964 12.75,8 C12.75,8.69036 13.3096,9.25 14,9.25 C14.6904,9.25 15.25,8.69036 15.25,8 C15.25,7.30964 14.6904,6.75 14,6.75 Z`}))))),Ke=V(`success`,()=>o(`svg`,{viewBox:`0 0 48 48`,version:`1.1`,xmlns:`http://www.w3.org/2000/svg`},o(`g`,{stroke:`none`,"stroke-width":`1`,"fill-rule":`evenodd`},o(`g`,{"fill-rule":`nonzero`},o(`path`,{d:`M24,4 C35.045695,4 44,12.954305 44,24 C44,35.045695 35.045695,44 24,44 C12.954305,44 4,35.045695 4,24 C4,12.954305 12.954305,4 24,4 Z M32.6338835,17.6161165 C32.1782718,17.1605048 31.4584514,17.1301307 30.9676119,17.5249942 L30.8661165,17.6161165 L20.75,27.732233 L17.1338835,24.1161165 C16.6457281,23.6279612 15.8542719,23.6279612 15.3661165,24.1161165 C14.9105048,24.5717282 14.8801307,25.2915486 15.2749942,25.7823881 L15.3661165,25.8838835 L19.8661165,30.3838835 C20.3217282,30.8394952 21.0415486,30.8698693 21.5323881,30.4750058 L21.6338835,30.3838835 L32.6338835,19.3838835 C33.1220388,18.8957281 33.1220388,18.1042719 32.6338835,17.6161165 Z`}))))),qe={paddingSmall:`12px 16px 12px`,paddingMedium:`19px 24px 20px`,paddingLarge:`23px 32px 24px`,paddingHuge:`27px 40px 28px`,titleFontSizeSmall:`16px`,titleFontSizeMedium:`18px`,titleFontSizeLarge:`18px`,titleFontSizeHuge:`18px`,closeIconSize:`18px`,closeSize:`22px`};function Je(e){let{primaryColor:t,borderRadius:n,lineHeight:r,fontSize:i,cardColor:a,textColor2:o,textColor1:s,dividerColor:c,fontWeightStrong:l,closeIconColor:u,closeIconColorHover:d,closeIconColorPressed:f,closeColorHover:p,closeColorPressed:m,modalColor:h,boxShadow1:g,popoverColor:_,actionColor:v}=e;return Object.assign(Object.assign({},qe),{lineHeight:r,color:a,colorModal:h,colorPopover:_,colorTarget:t,colorEmbedded:v,colorEmbeddedModal:v,colorEmbeddedPopover:v,textColor:o,titleTextColor:s,borderColor:c,actionColor:v,titleFontWeight:l,closeColorHover:p,closeColorPressed:m,closeBorderRadius:n,closeIconColor:u,closeIconColorHover:d,closeIconColorPressed:f,fontSizeSmall:i,fontSizeMedium:i,fontSizeLarge:i,fontSizeHuge:i,boxShadow:g,borderRadius:n})}var Ye={name:`Card`,common:F,self:Je},Xe=N(`card-content`,`
2
2
  flex: 1;
3
3
  min-width: 0;
4
4
  box-sizing: border-box;
@@ -0,0 +1,83 @@
1
+ import{A as e,C as t,E as n,G as r,H as i,J as a,K as o,M as s,O as c,P as l,S as u,T as d,U as f,W as p,Y as m,Z as h,a as g,ft as _,ht as v,k as y,pt as b,st as x,ut as S,v as C,w}from"./router-CaAe9JO4.js";import{r as T,t as E}from"./_plugin-vue_export-helper-BluKv70e.js";import{B as D,J as O,K as k,R as A,c as j,ct as M,d as N,dt as P,et as F,ft as I,lt as L,mt as R,nt as z,pt as B,z as ee}from"./browser-fXTO-ADn.js";import{d as te}from"./Popover-B_5YtxbH.js";import{d as V}from"./Suffix-CMjBYS-M.js";import{t as H}from"./Modal-Bnl1jpF4.js";import{n as ne,t as U}from"./FormItem-Cc8qgWls.js";import{t as W}from"./Select-BH-f48aR.js";import{t as G}from"./Button-CYfnxZGL.js";import{t as re}from"./get-slot-ZTLxF1Hc.js";import{t as K}from"./Input-dIiSr6EM.js";import{t as ie}from"./InputNumber-DxP12ti-.js";import{t as ae}from"./light-DvtfF85V.js";import{t as oe}from"./composables-Bplts_4x.js";import{t as q}from"./use-message-DON5YDCV.js";import{t as J}from"./Spin-DxvIMvuO.js";import{t as se}from"./app-kp7W51g8.js";import{t as Y}from"./clipboard-J87K68ES.js";import{t as X}from"./models-CXnOaWYE.js";var ce={name:String,value:{type:[String,Number,Boolean],default:`on`},checked:{type:Boolean,default:void 0},defaultChecked:Boolean,disabled:{type:Boolean,default:void 0},label:String,size:String,onUpdateChecked:[Function,Array],"onUpdate:checked":[Function,Array],checkedValue:{type:Boolean,default:void 0}},Z=F(`n-radio-group`);function le(e){let t=l(Z,null),{mergedClsPrefixRef:n,mergedComponentPropsRef:r}=D(e),i=A(e,{mergedSize(n){let{size:i}=e;if(i!==void 0)return i;if(t){let{mergedSizeRef:{value:e}}=t;if(e!==void 0)return e}return n?n.mergedSize.value:r?.value?.Radio?.size||`medium`},mergedDisabled(n){return!!(e.disabled||t?.disabledRef.value||n?.disabled.value)}}),{mergedSizeRef:a,mergedDisabledRef:o}=i,s=x(null),c=x(null),u=x(e.defaultChecked),d=V(S(e,`checked`),u),f=z(()=>t?t.valueRef.value===e.value:d.value),p=z(()=>{let{name:n}=e;if(n!==void 0)return n;if(t)return t.nameRef.value}),m=x(!1);function h(){if(t){let{doUpdateValue:n}=t,{value:r}=e;O(n,r)}else{let{onUpdateChecked:t,"onUpdate:checked":n}=e,{nTriggerFormInput:r,nTriggerFormChange:a}=i;t&&O(t,!0),n&&O(n,!0),r(),a(),u.value=!0}}function g(){o.value||f.value||h()}function _(){g(),s.value&&(s.value.checked=f.value)}function v(){m.value=!1}function y(){m.value=!0}return{mergedClsPrefix:t?t.mergedClsPrefixRef:n,inputRef:s,labelRef:c,mergedName:p,mergedDisabled:o,renderSafeChecked:f,focus:m,mergedSize:a,handleRadioInputChange:_,handleRadioInputBlur:v,handleRadioInputFocus:y}}var Q=e({name:`RadioButton`,props:ce,setup:le,render(){let{mergedClsPrefix:e}=this;return s(`label`,{class:[`${e}-radio-button`,this.mergedDisabled&&`${e}-radio-button--disabled`,this.renderSafeChecked&&`${e}-radio-button--checked`,this.focus&&[`${e}-radio-button--focus`]]},s(`input`,{ref:`inputRef`,type:`radio`,class:`${e}-radio-input`,value:this.value,name:this.mergedName,checked:this.renderSafeChecked,disabled:this.mergedDisabled,onChange:this.handleRadioInputChange,onFocus:this.handleRadioInputFocus,onBlur:this.handleRadioInputBlur}),s(`div`,{class:`${e}-radio-button__state-border`}),k(this.$slots.default,t=>!t&&!this.label?null:s(`div`,{ref:`labelRef`,class:`${e}-radio__label`},t||this.label)))}}),ue=L(`radio-group`,`
2
+ display: inline-block;
3
+ font-size: var(--n-font-size);
4
+ `,[P(`splitor`,`
5
+ display: inline-block;
6
+ vertical-align: bottom;
7
+ width: 1px;
8
+ transition:
9
+ background-color .3s var(--n-bezier),
10
+ opacity .3s var(--n-bezier);
11
+ background: var(--n-button-border-color);
12
+ `,[I(`checked`,{backgroundColor:`var(--n-button-border-color-active)`}),I(`disabled`,{opacity:`var(--n-opacity-disabled)`})]),I(`button-group`,`
13
+ white-space: nowrap;
14
+ height: var(--n-height);
15
+ line-height: var(--n-height);
16
+ `,[L(`radio-button`,{height:`var(--n-height)`,lineHeight:`var(--n-height)`}),P(`splitor`,{height:`var(--n-height)`})]),L(`radio-button`,`
17
+ vertical-align: bottom;
18
+ outline: none;
19
+ position: relative;
20
+ user-select: none;
21
+ -webkit-user-select: none;
22
+ display: inline-block;
23
+ box-sizing: border-box;
24
+ padding-left: 14px;
25
+ padding-right: 14px;
26
+ white-space: nowrap;
27
+ transition:
28
+ background-color .3s var(--n-bezier),
29
+ opacity .3s var(--n-bezier),
30
+ border-color .3s var(--n-bezier),
31
+ color .3s var(--n-bezier);
32
+ background: var(--n-button-color);
33
+ color: var(--n-button-text-color);
34
+ border-top: 1px solid var(--n-button-border-color);
35
+ border-bottom: 1px solid var(--n-button-border-color);
36
+ `,[L(`radio-input`,`
37
+ pointer-events: none;
38
+ position: absolute;
39
+ border: 0;
40
+ border-radius: inherit;
41
+ left: 0;
42
+ right: 0;
43
+ top: 0;
44
+ bottom: 0;
45
+ opacity: 0;
46
+ z-index: 1;
47
+ `),P(`state-border`,`
48
+ z-index: 1;
49
+ pointer-events: none;
50
+ position: absolute;
51
+ box-shadow: var(--n-button-box-shadow);
52
+ transition: box-shadow .3s var(--n-bezier);
53
+ left: -1px;
54
+ bottom: -1px;
55
+ right: -1px;
56
+ top: -1px;
57
+ `),M(`&:first-child`,`
58
+ border-top-left-radius: var(--n-button-border-radius);
59
+ border-bottom-left-radius: var(--n-button-border-radius);
60
+ border-left: 1px solid var(--n-button-border-color);
61
+ `,[P(`state-border`,`
62
+ border-top-left-radius: var(--n-button-border-radius);
63
+ border-bottom-left-radius: var(--n-button-border-radius);
64
+ `)]),M(`&:last-child`,`
65
+ border-top-right-radius: var(--n-button-border-radius);
66
+ border-bottom-right-radius: var(--n-button-border-radius);
67
+ border-right: 1px solid var(--n-button-border-color);
68
+ `,[P(`state-border`,`
69
+ border-top-right-radius: var(--n-button-border-radius);
70
+ border-bottom-right-radius: var(--n-button-border-radius);
71
+ `)]),B(`disabled`,`
72
+ cursor: pointer;
73
+ `,[M(`&:hover`,[P(`state-border`,`
74
+ transition: box-shadow .3s var(--n-bezier);
75
+ box-shadow: var(--n-button-box-shadow-hover);
76
+ `),B(`checked`,{color:`var(--n-button-text-color-hover)`})]),I(`focus`,[M(`&:not(:active)`,[P(`state-border`,{boxShadow:`var(--n-button-box-shadow-focus)`})])])]),I(`checked`,`
77
+ background: var(--n-button-color-active);
78
+ color: var(--n-button-text-color-active);
79
+ border-color: var(--n-button-border-color-active);
80
+ `),I(`disabled`,`
81
+ cursor: not-allowed;
82
+ opacity: var(--n-opacity-disabled);
83
+ `)])]);function de(e,t,n){let r=[],i=!1;for(let a=0;a<e.length;++a){let o=e[a],c=o.type?.name;c===`RadioButton`&&(i=!0);let l=o.props;if(c!==`RadioButton`){r.push(o);continue}if(a===0)r.push(o);else{let e=r[r.length-1].props,i=t===e.value,a=e.disabled,c=t===l.value,u=l.disabled,d=(i?2:0)+ +!a,f=(c?2:0)+ +!u,p={[`${n}-radio-group__splitor--disabled`]:a,[`${n}-radio-group__splitor--checked`]:i},m={[`${n}-radio-group__splitor--disabled`]:u,[`${n}-radio-group__splitor--checked`]:c},h=d<f?m:p;r.push(s(`div`,{class:[`${n}-radio-group__splitor`,h]}),o)}}return{children:r,isButtonGroup:i}}var fe=e({name:`RadioGroup`,props:Object.assign(Object.assign({},j.props),{name:String,value:[String,Number,Boolean],defaultValue:{type:[String,Number,Boolean],default:null},size:String,disabled:{type:Boolean,default:void 0},"onUpdate:value":[Function,Array],onUpdateValue:[Function,Array]}),setup(e){let t=x(null),{mergedSizeRef:n,mergedDisabledRef:i,nTriggerFormChange:a,nTriggerFormInput:o,nTriggerFormBlur:s,nTriggerFormFocus:c}=A(e),{mergedClsPrefixRef:l,inlineThemeDisabled:d,mergedRtlRef:f}=D(e),p=j(`Radio`,`-radio-group`,ue,ae,e,l),m=x(e.defaultValue),h=V(S(e,`value`),m);function g(t){let{onUpdateValue:n,"onUpdate:value":r}=e;n&&O(n,t),r&&O(r,t),m.value=t,a(),o()}function _(e){let{value:n}=t;n&&(n.contains(e.relatedTarget)||c())}function v(e){let{value:n}=t;n&&(n.contains(e.relatedTarget)||s())}r(Z,{mergedClsPrefixRef:l,nameRef:S(e,`name`),valueRef:h,disabledRef:i,mergedSizeRef:n,doUpdateValue:g});let y=N(`Radio`,f,l),b=u(()=>{let{value:e}=n,{common:{cubicBezierEaseInOut:t},self:{buttonBorderColor:r,buttonBorderColorActive:i,buttonBorderRadius:a,buttonBoxShadow:o,buttonBoxShadowFocus:s,buttonBoxShadowHover:c,buttonColor:l,buttonColorActive:u,buttonTextColor:d,buttonTextColorActive:f,buttonTextColorHover:m,opacityDisabled:h,[R(`buttonHeight`,e)]:g,[R(`fontSize`,e)]:_}}=p.value;return{"--n-font-size":_,"--n-bezier":t,"--n-button-border-color":r,"--n-button-border-color-active":i,"--n-button-border-radius":a,"--n-button-box-shadow":o,"--n-button-box-shadow-focus":s,"--n-button-box-shadow-hover":c,"--n-button-color":l,"--n-button-color-active":u,"--n-button-text-color":d,"--n-button-text-color-hover":m,"--n-button-text-color-active":f,"--n-height":g,"--n-opacity-disabled":h}}),C=d?ee(`radio-group`,u(()=>n.value[0]),b,e):void 0;return{selfElRef:t,rtlEnabled:y,mergedClsPrefix:l,mergedValue:h,handleFocusout:v,handleFocusin:_,cssVars:d?void 0:b,themeClass:C?.themeClass,onRender:C?.onRender}},render(){var e;let{mergedValue:t,mergedClsPrefix:n,handleFocusin:r,handleFocusout:i}=this,{children:a,isButtonGroup:o}=de(te(re(this)),t,n);return(e=this.onRender)==null||e.call(this),s(`div`,{onFocusin:r,onFocusout:i,ref:`selfElRef`,class:[`${n}-radio-group`,this.rtlEnabled&&`${n}-radio-group--rtl`,this.themeClass,o&&`${n}-radio-group--button-group`],style:this.cssVars},a)}}),pe={class:`provider-card`},me={class:`card-header`},he={class:`provider-name`},ge={class:`card-body`},_e={class:`info-row`},ve={class:`info-label`},ye={class:`info-value mono`},be={class:`info-row`},xe={class:`info-label`},Se={class:`info-value mono`},Ce={class:`card-actions`},we=E(e({__name:`ProviderCard`,props:{provider:{}},setup(e){let r=e,{t:i}=T(),a=X(),o=q(),s=oe(),l=u(()=>r.provider.provider.startsWith(`custom:`)),d=u(()=>r.provider.label),f=x(!1);async function m(){s.warning({title:i(`models.deleteProvider`),content:i(`models.deleteConfirm`,{name:d.value}),positiveText:i(`common.delete`),negativeText:i(`common.cancel`),onPositiveClick:async()=>{f.value=!0;try{await a.removeProvider(r.provider.provider),o.success(i(`models.providerDeleted`))}catch(e){o.error(e.message)}finally{f.value=!1}}})}return(r,a)=>(p(),n(`div`,pe,[t(`div`,me,[t(`h3`,he,v(d.value),1),t(`span`,{class:b([`type-badge`,l.value?`custom`:`builtin`])},v(l.value?_(i)(`models.customType`):_(i)(`models.builtIn`)),3)]),t(`div`,ge,[t(`div`,_e,[t(`span`,ve,v(_(i)(`models.provider`)),1),t(`code`,ye,v(e.provider.provider),1)]),t(`div`,be,[t(`span`,xe,v(_(i)(`models.baseUrl`)),1),t(`code`,Se,v(e.provider.base_url),1)])]),t(`div`,Ce,[y(_(G),{size:`tiny`,quaternary:``,type:`error`,loading:f.value,onClick:m},{default:h(()=>[c(v(_(i)(`common.delete`)),1)]),_:1},8,[`loading`])])]))}}),[[`__scopeId`,`data-v-f48ea7e8`]]),Te={key:0,class:`empty-state`},Ee={key:1,class:`providers-grid`},De=E(e({__name:`ProvidersPanel`,setup(e){let{t:r}=T(),i=X();return(e,a)=>_(i).providers.length===0?(p(),n(`div`,Te,[a[0]||=t(`svg`,{width:`48`,height:`48`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`1`,class:`empty-icon`},[t(`path`,{d:`M12 2L2 7l10 5 10-5-10-5z`}),t(`path`,{d:`M2 17l10 5 10-5`}),t(`path`,{d:`M2 12l10 5 10-5`})],-1),t(`p`,null,v(_(r)(`models.noProviders`)),1)])):(p(),n(`div`,Ee,[(p(!0),n(C,null,o(_(i).providers,e=>(p(),w(we,{key:e.provider,provider:e},null,8,[`provider`]))),128))]))}}),[[`__scopeId`,`data-v-76eec30b`]]);async function Oe(){return g(`/api/hermes/auth/codex/start`,{method:`POST`})}async function ke(e){return g(`/api/hermes/auth/codex/poll/${e}`)}var Ae={class:`codex-login`},je={key:0,class:`codex-login__state`},Me={key:1,class:`codex-login__state`},Ne={class:`codex-login__hint`},Pe={class:`codex-login__code-text`},Fe={key:2,class:`codex-login__state codex-login__state--success`},Ie={key:3,class:`codex-login__state`},Le={class:`codex-login__error`},Re={key:4,class:`codex-login__state`},ze={class:`codex-login__error`},Be={class:`modal-footer`},Ve=E(e({__name:`CodexLoginModal`,emits:[`close`,`success`],setup(e,{emit:r}){let{t:i}=T(),o=r,s=q(),l=x(!0),u=x(`idle`),m=x(``),g=x(``),b=x(``),S=x(``),C=null;async function E(){u.value=`loading`,S.value=``;try{let e=await Oe();m.value=e.user_code,g.value=e.verification_url,b.value=e.session_id,u.value=`waiting`,D()}catch(e){u.value=`error`;let t=e.message||``;try{let e=t.match(/\{[\s\S]*\}$/);e?S.value=JSON.parse(e[0]).error||t:S.value=t}catch{S.value=t}s.error(S.value)}}function D(){O(),C=setTimeout(async()=>{try{let e=await ke(b.value);e.status===`pending`?D():e.status===`approved`?(u.value=`approved`,s.success(i(`models.codexApproved`)),setTimeout(()=>{l.value=!1,setTimeout(()=>o(`success`),200)},1e3)):e.status===`expired`?u.value=`expired`:e.status===`error`&&(u.value=`error`,S.value=e.error||`Unknown error`)}catch{D()}},3e3)}function O(){C&&=(clearTimeout(C),null)}function k(){O(),l.value=!1,setTimeout(()=>o(`close`),200)}async function A(){await Y(m.value)?s.success(i(`models.codexCopyCode`)):s.error(i(`models.codexCopyCode`)+` ✗`)}function j(){window.open(g.value,`_blank`)}function M(){u.value=`idle`,m.value=``,g.value=``,b.value=``,S.value=``,E()}return f(()=>{O()}),E(),(e,r)=>{let s=a(`NSpin`);return p(),w(_(H),{show:l.value,"onUpdate:show":r[0]||=e=>l.value=e,preset:`card`,title:_(i)(`models.codexLoginTitle`),style:{width:`min(440px, calc(100vw - 32px))`},"mask-closable":u.value!==`waiting`,onAfterLeave:r[1]||=e=>o(`close`)},{footer:h(()=>[t(`div`,Be,[y(_(G),{disabled:u.value===`waiting`,onClick:k},{default:h(()=>[c(v(_(i)(`common.cancel`)),1)]),_:1},8,[`disabled`])])]),default:h(()=>[t(`div`,Ae,[u.value===`idle`||u.value===`loading`?(p(),n(`div`,je,[y(s,{size:`small`})])):u.value===`waiting`?(p(),n(`div`,Me,[t(`p`,Ne,v(_(i)(`models.codexWaiting`)),1),t(`div`,{class:`codex-login__code`,onClick:A},[t(`span`,Pe,v(m.value),1),r[2]||=t(`svg`,{width:`16`,height:`16`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`},[t(`rect`,{x:`9`,y:`9`,width:`13`,height:`13`,rx:`2`}),t(`path`,{d:`M5 15H4a2 2 0 01-2-2V4a2 2 0 012-2h9a2 2 0 012 2v1`})],-1)]),y(_(G),{type:`primary`,block:``,onClick:j},{icon:h(()=>[...r[3]||=[t(`svg`,{width:`14`,height:`14`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`},[t(`path`,{d:`M18 13v6a2 2 0 01-2 2H5a2 2 0 01-2-2V8a2 2 0 012-2h6`}),t(`polyline`,{points:`15 3 21 3 21 9`}),t(`line`,{x1:`10`,y1:`14`,x2:`21`,y2:`3`})],-1)]]),default:h(()=>[c(` `+v(_(i)(`models.codexOpenLink`)),1)]),_:1})])):u.value===`approved`?(p(),n(`div`,Fe,[r[4]||=t(`svg`,{width:`40`,height:`40`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`},[t(`path`,{d:`M22 11.08V12a10 10 0 11-5.93-9.14`}),t(`polyline`,{points:`22 4 12 14.01 9 11.01`})],-1),t(`p`,null,v(_(i)(`models.codexApproved`)),1)])):u.value===`expired`?(p(),n(`div`,Ie,[t(`p`,Le,v(_(i)(`models.codexExpired`)),1),y(_(G),{size:`small`,onClick:M},{default:h(()=>[c(v(_(i)(`common.retry`)),1)]),_:1})])):u.value===`error`?(p(),n(`div`,Re,[t(`p`,ze,v(S.value),1),y(_(G),{size:`small`,onClick:M},{default:h(()=>[c(v(_(i)(`common.retry`)),1)]),_:1})])):d(``,!0)])]),_:1},8,[`show`,`title`,`mask-closable`])}}}),[[`__scopeId`,`data-v-b8a659c8`]]);async function He(){return g(`/api/hermes/auth/nous/start`,{method:`POST`})}async function Ue(e){return g(`/api/hermes/auth/nous/poll/${e}`)}var We={class:`nous-login`},Ge={key:0,class:`nous-login__state`},Ke={key:1,class:`nous-login__state`},qe={class:`nous-login__hint`},Je={class:`nous-login__code-text`},Ye={key:2,class:`nous-login__state nous-login__state--success`},Xe={key:3,class:`nous-login__state`},Ze={class:`nous-login__error`},Qe={key:4,class:`nous-login__state`},$e={class:`nous-login__error`},et={class:`modal-footer`},tt=E(e({__name:`NousLoginModal`,emits:[`close`,`success`],setup(e,{emit:r}){let{t:i}=T(),a=r,o=q(),s=x(!0),l=x(`idle`),u=x(``),m=x(``),g=x(``),b=x(``),S=null;async function C(){l.value=`loading`,b.value=``;try{let e=await He();u.value=e.user_code,m.value=e.verification_url,g.value=e.session_id,l.value=`waiting`,E()}catch(e){l.value=`error`;let t=e.message||``;try{let e=t.match(/\{[\s\S]*\}$/);e?b.value=JSON.parse(e[0]).error||t:b.value=t}catch{b.value=t}o.error(b.value)}}function E(){D(),S=setTimeout(async()=>{try{let e=await Ue(g.value);e.status===`pending`?E():e.status===`approved`?(l.value=`approved`,o.success(i(`models.nousApproved`)),setTimeout(()=>{s.value=!1,setTimeout(()=>a(`success`),200)},1e3)):e.status===`expired`?l.value=`expired`:e.status===`denied`?(l.value=`error`,b.value=i(`models.nousDenied`)):e.status===`error`&&(l.value=`error`,b.value=e.error||`Unknown error`)}catch{E()}},3e3)}function D(){S&&=(clearTimeout(S),null)}function O(){D(),s.value=!1,setTimeout(()=>a(`close`),200)}async function k(){await Y(u.value)?o.success(i(`models.nousCopyCode`)):o.error(i(`models.nousCopyCode`)+` ✗`)}function A(){window.open(m.value,`_blank`)}function j(){l.value=`idle`,u.value=``,m.value=``,g.value=``,b.value=``,C()}return f(()=>{D()}),C(),(e,r)=>(p(),w(_(H),{show:s.value,"onUpdate:show":r[0]||=e=>s.value=e,preset:`card`,title:_(i)(`models.nousLoginTitle`),style:{width:`min(440px, calc(100vw - 32px))`},"mask-closable":l.value!==`waiting`,onAfterLeave:r[1]||=e=>a(`close`)},{footer:h(()=>[t(`div`,et,[y(_(G),{disabled:l.value===`waiting`,onClick:O},{default:h(()=>[c(v(_(i)(`common.cancel`)),1)]),_:1},8,[`disabled`])])]),default:h(()=>[t(`div`,We,[l.value===`idle`||l.value===`loading`?(p(),n(`div`,Ge,[y(_(J),{size:`small`})])):l.value===`waiting`?(p(),n(`div`,Ke,[t(`p`,qe,v(_(i)(`models.nousWaiting`)),1),t(`div`,{class:`nous-login__code`,onClick:k},[t(`span`,Je,v(u.value),1),r[2]||=t(`svg`,{width:`16`,height:`16`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`},[t(`rect`,{x:`9`,y:`9`,width:`13`,height:`13`,rx:`2`}),t(`path`,{d:`M5 15H4a2 2 0 01-2-2V4a2 2 0 012-2h9a2 2 0 012 2v1`})],-1)]),y(_(G),{type:`primary`,block:``,onClick:A},{icon:h(()=>[...r[3]||=[t(`svg`,{width:`14`,height:`14`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`},[t(`path`,{d:`M18 13v6a2 2 0 01-2 2H5a2 2 0 01-2-2V8a2 2 0 012-2h6`}),t(`polyline`,{points:`15 3 21 3 21 9`}),t(`line`,{x1:`10`,y1:`14`,x2:`21`,y2:`3`})],-1)]]),default:h(()=>[c(` `+v(_(i)(`models.nousOpenLink`)),1)]),_:1})])):l.value===`approved`?(p(),n(`div`,Ye,[r[4]||=t(`svg`,{width:`40`,height:`40`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`},[t(`path`,{d:`M22 11.08V12a10 10 0 11-5.93-9.14`}),t(`polyline`,{points:`22 4 12 14.01 9 11.01`})],-1),t(`p`,null,v(_(i)(`models.nousApproved`)),1)])):l.value===`expired`?(p(),n(`div`,Xe,[t(`p`,Ze,v(_(i)(`models.nousExpired`)),1),y(_(G),{size:`small`,onClick:j},{default:h(()=>[c(v(_(i)(`common.retry`)),1)]),_:1})])):l.value===`error`?(p(),n(`div`,Qe,[t(`p`,$e,v(b.value),1),y(_(G),{size:`small`,onClick:j},{default:h(()=>[c(v(_(i)(`common.retry`)),1)]),_:1})])):d(``,!0)])]),_:1},8,[`show`,`title`,`mask-closable`]))}}),[[`__scopeId`,`data-v-13765003`]]),$={style:{display:`flex`,gap:`12px`}},nt={style:{display:`flex`,gap:`8px`,width:`100%`}},rt={class:`modal-footer`},it=`openai-codex`,at=`nous`,ot=`alibaba-coding-plan`,st=E(e({__name:`ProviderFormModal`,emits:[`close`,`saved`],setup(e,{emit:n}){let{t:r}=T(),a=n,o=X(),s=q(),l=x(!0),f=x(!1),g=x(!1),b=x(!1),S=x(!1),C=x(`preset`),E=x(null),D=x({name:``,base_url:``,api_key:``,model:``,context_length:null}),O=x([]),k={intl:`https://coding-intl.dashscope.aliyuncs.com/v1`,cn:`https://coding.dashscope.aliyuncs.com/v1`},A=u(()=>E.value===it),j=u(()=>E.value===at),M=u(()=>E.value===ot),N=x(`intl`),P=u(()=>o.allProviders.map(e=>({label:e.label,value:e.provider})));function F(e){let t=e.replace(/^https?:\/\//,``).replace(/\/v1\/?$/,``).split(`/`)[0];return t.includes(`localhost`)||t.includes(`127.0.0.1`)?r(`models.local`,{host:t}):t.charAt(0).toUpperCase()+t.slice(1)}m(E,e=>{if(D.value.model=``,N.value=`intl`,e){let t=o.allProviders.find(t=>t.provider===e);t&&(D.value.name=t.label,D.value.base_url=t.base_url,O.value=t.models.map(e=>({label:e,value:e})),t.models.length>0&&(D.value.model=t.models[0]))}}),m(N,e=>{M.value&&(D.value.base_url=k[e])}),m(()=>D.value.base_url,e=>{C.value===`custom`&&e.trim()&&!D.value.name&&(D.value.name=F(e.trim()))}),m(C,()=>{O.value=[],D.value={name:``,base_url:``,api_key:``,model:``,context_length:null},E.value=null}),i(()=>{o.providers.length===0&&o.fetchProviders()});async function I(){let{base_url:e}=D.value;if(!e.trim()){s.warning(r(`models.enterBaseUrl`));return}g.value=!0;try{let t=e.replace(/\/+$/,``),n=/\/v\d+\/?$/.test(t)?`${t}/models`:`${t}/v1/models`,i={};D.value.api_key.trim()&&(i.Authorization=`Bearer ${D.value.api_key.trim()}`);let a=await fetch(n,{headers:i,signal:AbortSignal.timeout(8e3)});if(!a.ok)throw Error(`HTTP ${a.status}`);let o=await a.json();if(!Array.isArray(o.data))throw Error(r(`models.unexpectedFormat`));O.value=o.data.map(e=>({label:e.id,value:e.id})),O.value.length>0&&!D.value.model&&(D.value.model=O.value[0].value),s.success(r(`models.foundModels`,{count:O.value.length}))}catch(e){s.error(r(`models.fetchFailed`)+`: `+e.message)}finally{g.value=!1}}async function L(){if(C.value===`preset`&&!E.value){s.warning(r(`models.selectProviderRequired`));return}if(A.value){b.value=!0;return}if(j.value){S.value=!0;return}if(!D.value.base_url.trim()){s.warning(r(`models.baseUrlRequired`));return}if(!D.value.api_key.trim()){s.warning(r(`models.apiKeyRequired`));return}if(!D.value.model){s.warning(r(`models.modelRequired`));return}f.value=!0;try{let e=C.value===`preset`?E.value:null,t=D.value.context_length??void 0;await o.addProvider({name:D.value.name.trim(),base_url:D.value.base_url.trim(),api_key:D.value.api_key.trim(),model:D.value.model,context_length:t,providerKey:e}),s.success(r(`models.providerAdded`)),a(`saved`)}catch(e){s.error(e.message)}finally{f.value=!1}}async function R(){b.value=!1,s.success(r(`models.providerAdded`)),a(`saved`)}async function z(){S.value=!1,s.success(r(`models.providerAdded`)),a(`saved`)}function B(){l.value=!1,setTimeout(()=>a(`close`),200)}return(e,n)=>(p(),w(_(H),{show:l.value,"onUpdate:show":n[11]||=e=>l.value=e,preset:`card`,title:_(r)(`models.addProvider`),style:{width:`min(520px, calc(100vw - 32px))`},"mask-closable":!f.value&&!b.value&&!S.value,onAfterLeave:n[12]||=e=>a(`close`)},{footer:h(()=>[t(`div`,rt,[y(_(G),{onClick:B},{default:h(()=>[c(v(_(r)(`common.cancel`)),1)]),_:1}),y(_(G),{type:`primary`,loading:f.value,onClick:L},{default:h(()=>[c(v(_(r)(`common.add`)),1)]),_:1},8,[`loading`])])]),default:h(()=>[y(_(ne),{"label-placement":`top`},{default:h(()=>[y(_(U),{label:_(r)(`models.providerType`)},{default:h(()=>[t(`div`,$,[y(_(G),{type:C.value===`preset`?`primary`:`default`,size:`small`,onClick:n[0]||=e=>C.value=`preset`},{default:h(()=>[c(v(_(r)(`models.preset`)),1)]),_:1},8,[`type`]),y(_(G),{type:C.value===`custom`?`primary`:`default`,size:`small`,onClick:n[1]||=e=>C.value=`custom`},{default:h(()=>[c(v(_(r)(`models.custom`)),1)]),_:1},8,[`type`])])]),_:1},8,[`label`]),C.value===`preset`?(p(),w(_(U),{key:0,label:_(r)(`models.selectProvider`),required:``},{default:h(()=>[y(_(W),{value:E.value,"onUpdate:value":n[2]||=e=>E.value=e,options:P.value,placeholder:_(r)(`models.chooseProvider`),filterable:``},null,8,[`value`,`options`,`placeholder`])]),_:1},8,[`label`])):d(``,!0),C.value===`custom`?(p(),w(_(U),{key:1,label:_(r)(`models.name`)},{default:h(()=>[y(_(K),{value:D.value.name,"onUpdate:value":n[3]||=e=>D.value.name=e,placeholder:_(r)(`models.autoGeneratedName`)},null,8,[`value`,`placeholder`])]),_:1},8,[`label`])):d(``,!0),M.value?(p(),w(_(U),{key:2,label:_(r)(`models.region`)},{default:h(()=>[y(_(fe),{value:N.value,"onUpdate:value":n[4]||=e=>N.value=e},{default:h(()=>[y(_(Q),{value:`intl`},{default:h(()=>[c(v(_(r)(`models.regionIntl`)),1)]),_:1}),y(_(Q),{value:`cn`},{default:h(()=>[c(v(_(r)(`models.regionCn`)),1)]),_:1})]),_:1},8,[`value`])]),_:1},8,[`label`])):d(``,!0),!A.value&&!j.value?(p(),w(_(U),{key:3,label:_(r)(`models.baseUrl`),required:``},{default:h(()=>[y(_(K),{value:D.value.base_url,"onUpdate:value":n[5]||=e=>D.value.base_url=e,placeholder:_(r)(`models.baseUrlPlaceholder`),disabled:C.value===`preset`},null,8,[`value`,`placeholder`,`disabled`])]),_:1},8,[`label`])):d(``,!0),!A.value&&!j.value?(p(),w(_(U),{key:4,label:_(r)(`models.apiKey`),required:``},{default:h(()=>[y(_(K),{value:D.value.api_key,"onUpdate:value":n[6]||=e=>D.value.api_key=e,type:`password`,"show-password-on":`click`,placeholder:_(r)(`models.apiKeyPlaceholder`),autocomplete:`off`},null,8,[`value`,`placeholder`])]),_:1},8,[`label`])):d(``,!0),y(_(U),{label:_(r)(`models.defaultModel`),required:``},{default:h(()=>[t(`div`,nt,[y(_(W),{value:D.value.model,"onUpdate:value":n[7]||=e=>D.value.model=e,options:O.value,filterable:``,tag:``,placeholder:_(r)(`models.selectOrInput`),style:{flex:`1`}},null,8,[`value`,`options`,`placeholder`]),C.value===`custom`||C.value===`preset`&&O.value.length===0?(p(),w(_(G),{key:0,loading:g.value,onClick:I},{default:h(()=>[c(v(_(r)(`common.fetch`)),1)]),_:1},8,[`loading`])):d(``,!0)])]),_:1},8,[`label`]),C.value===`custom`?(p(),w(_(U),{key:5,label:_(r)(`models.contextLength`)},{default:h(()=>[y(_(ie),{value:D.value.context_length,"onUpdate:value":n[8]||=e=>D.value.context_length=e,placeholder:_(r)(`models.contextLengthPlaceholder`),min:0,clearable:``,style:{width:`100%`}},null,8,[`value`,`placeholder`])]),_:1},8,[`label`])):d(``,!0)]),_:1}),b.value?(p(),w(Ve,{key:0,onClose:n[9]||=e=>b.value=!1,onSuccess:R})):d(``,!0),S.value?(p(),w(tt,{key:1,onClose:n[10]||=e=>S.value=!1,onSuccess:z})):d(``,!0)]),_:1},8,[`show`,`title`,`mask-closable`]))}}),[[`__scopeId`,`data-v-34bd5f95`]]),ct={class:`models-view`},lt={class:`page-header`},ut={class:`header-title`},dt={class:`models-content`},ft=E(e({__name:`ModelsView`,setup(e){let{t:r}=T(),a=X(),o=se(),s=x(!1);i(()=>{a.fetchProviders()});function l(){s.value=!0}function u(){s.value=!1}async function f(){await a.fetchProviders(),o.loadModels(),u()}return(e,i)=>(p(),n(`div`,ct,[t(`header`,lt,[t(`h2`,ut,v(_(r)(`models.title`)),1),y(_(G),{type:`primary`,size:`small`,onClick:l},{icon:h(()=>[...i[0]||=[t(`svg`,{width:`14`,height:`14`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`2`},[t(`line`,{x1:`12`,y1:`5`,x2:`12`,y2:`19`}),t(`line`,{x1:`5`,y1:`12`,x2:`19`,y2:`12`})],-1)]]),default:h(()=>[c(` `+v(_(r)(`models.addProvider`)),1)]),_:1})]),t(`div`,dt,[y(_(J),{show:_(a).loading&&_(a).providers.length===0},{default:h(()=>[y(De)]),_:1},8,[`show`])]),s.value?(p(),w(st,{key:0,onClose:u,onSaved:f})):d(``,!0)]))}}),[[`__scopeId`,`data-v-84eaeb4c`]]);export{ft as default};
@@ -1 +1 @@
1
- [data-v-f48ea7e8]:root{--bg-primary:#fafafa;--bg-secondary:#f0f0f0;--bg-sidebar:#f5f5f5;--bg-card:#fff;--bg-card-hover:#fafafa;--bg-input:#fff;--border-color:#e0e0e0;--border-light:#ebebeb;--accent-primary:#333;--accent-hover:#1a1a1a;--accent-muted:#888;--text-primary:#1a1a1a;--text-secondary:#666;--text-muted:#999;--success:#2e7d32;--error:#c62828;--warning:#f57f17;--msg-user-bg:#f5f5f5;--msg-assistant-bg:#f5f5f5;--msg-system-border:#bdbdbd;--code-bg:#f4f4f4;--text-on-accent:#fff;--text-on-overlay:#fff;--accent-info:#4a90d9;--accent-primary-rgb:51, 51, 51;--accent-hover-rgb:26, 26, 26;--text-primary-rgb:26, 26, 26;--text-muted-rgb:153, 153, 153;--success-rgb:46, 125, 50;--error-rgb:198, 40, 40;--warning-rgb:245, 127, 23;--accent-info-rgb:74, 144, 217}.dark[data-v-f48ea7e8]{--bg-primary:#1a1a1a;--bg-secondary:#252525;--bg-sidebar:#202020;--bg-card:#333;--bg-card-hover:#333;--bg-input:#2a2a2a;--border-color:#3a3a3a;--border-light:#333;--accent-primary:#e0e0e0;--accent-hover:#f5f5f5;--accent-muted:#888;--text-primary:#f0f0f0;--text-secondary:silver;--text-muted:#888;--success:#66bb6a;--error:#ef5350;--warning:#ffb74d;--msg-user-bg:#252525;--msg-assistant-bg:#252525;--msg-system-border:#555;--code-bg:#1e1e1e;--text-on-accent:#1a1a1a;--text-on-overlay:#fff;--accent-info:#6ba3d6;--accent-primary-rgb:240, 240, 240;--accent-hover-rgb:245, 245, 245;--text-primary-rgb:240, 240, 240;--text-muted-rgb:136, 136, 136;--success-rgb:102, 187, 106;--error-rgb:239, 83, 80;--warning-rgb:255, 183, 77;--accent-info-rgb:107, 163, 214}.provider-card[data-v-f48ea7e8]{background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:10px;padding:16px;transition:border-color .15s}.provider-card[data-v-f48ea7e8]:hover{border-color:rgba(var(--accent-primary-rgb), .3)}.card-header[data-v-f48ea7e8]{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.provider-name[data-v-f48ea7e8]{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;max-width:70%;font-size:15px;font-weight:600;overflow:hidden}.type-badge[data-v-f48ea7e8]{border-radius:10px;padding:2px 8px;font-size:11px;font-weight:500}.type-badge.builtin[data-v-f48ea7e8]{background:rgba(var(--accent-primary-rgb), .12);color:var(--accent-primary)}.type-badge.custom[data-v-f48ea7e8]{background:rgba(var(--success-rgb), .12);color:var(--success)}.card-body[data-v-f48ea7e8]{flex-direction:column;gap:6px;margin-bottom:14px;display:flex}.info-row[data-v-f48ea7e8]{justify-content:space-between;align-items:center;display:flex}.info-label[data-v-f48ea7e8]{color:var(--text-muted);font-size:12px}.info-value[data-v-f48ea7e8]{color:var(--text-secondary);font-size:12px}.mono[data-v-f48ea7e8]{font-family:JetBrains Mono,Fira Code,Consolas,monospace;font-size:12px}.card-actions[data-v-f48ea7e8]{border-top:1px solid var(--border-light);gap:8px;padding-top:10px;display:flex}[data-v-76eec30b]:root{--bg-primary:#fafafa;--bg-secondary:#f0f0f0;--bg-sidebar:#f5f5f5;--bg-card:#fff;--bg-card-hover:#fafafa;--bg-input:#fff;--border-color:#e0e0e0;--border-light:#ebebeb;--accent-primary:#333;--accent-hover:#1a1a1a;--accent-muted:#888;--text-primary:#1a1a1a;--text-secondary:#666;--text-muted:#999;--success:#2e7d32;--error:#c62828;--warning:#f57f17;--msg-user-bg:#f5f5f5;--msg-assistant-bg:#f5f5f5;--msg-system-border:#bdbdbd;--code-bg:#f4f4f4;--text-on-accent:#fff;--text-on-overlay:#fff;--accent-info:#4a90d9;--accent-primary-rgb:51, 51, 51;--accent-hover-rgb:26, 26, 26;--text-primary-rgb:26, 26, 26;--text-muted-rgb:153, 153, 153;--success-rgb:46, 125, 50;--error-rgb:198, 40, 40;--warning-rgb:245, 127, 23;--accent-info-rgb:74, 144, 217}.dark[data-v-76eec30b]{--bg-primary:#1a1a1a;--bg-secondary:#252525;--bg-sidebar:#202020;--bg-card:#333;--bg-card-hover:#333;--bg-input:#2a2a2a;--border-color:#3a3a3a;--border-light:#333;--accent-primary:#e0e0e0;--accent-hover:#f5f5f5;--accent-muted:#888;--text-primary:#f0f0f0;--text-secondary:silver;--text-muted:#888;--success:#66bb6a;--error:#ef5350;--warning:#ffb74d;--msg-user-bg:#252525;--msg-assistant-bg:#252525;--msg-system-border:#555;--code-bg:#1e1e1e;--text-on-accent:#1a1a1a;--text-on-overlay:#fff;--accent-info:#6ba3d6;--accent-primary-rgb:240, 240, 240;--accent-hover-rgb:245, 245, 245;--text-primary-rgb:240, 240, 240;--text-muted-rgb:136, 136, 136;--success-rgb:102, 187, 106;--error-rgb:239, 83, 80;--warning-rgb:255, 183, 77;--accent-info-rgb:107, 163, 214}.empty-state[data-v-76eec30b]{height:100%;color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;gap:12px;display:flex}.empty-state .empty-icon[data-v-76eec30b]{opacity:.3}.empty-state p[data-v-76eec30b]{font-size:14px}.providers-grid[data-v-76eec30b]{grid-template-columns:repeat(auto-fill,minmax(min(100%,420px),1fr));gap:14px;display:grid}.codex-login[data-v-b8a659c8]{flex-direction:column;align-items:center;padding:8px 0;display:flex}.codex-login__state[data-v-b8a659c8]{flex-direction:column;justify-content:center;align-items:center;gap:16px;width:100%;min-height:120px;display:flex}.codex-login__hint[data-v-b8a659c8]{color:var(--n-text-color,inherit);text-align:center;font-size:14px;line-height:1.6}.codex-login__code[data-v-b8a659c8]{border:1px solid var(--n-border-color,#e0e0e6);cursor:pointer;background:var(--n-color,#fafafa);border-radius:8px;align-items:center;gap:12px;padding:12px 20px;transition:border-color .2s;display:flex}.codex-login__code[data-v-b8a659c8]:hover{border-color:var(--n-primary-color,#18a058)}.codex-login__code-text[data-v-b8a659c8]{letter-spacing:4px;color:var(--n-text-color,inherit);font-family:monospace;font-size:28px;font-weight:700}.codex-login__state--success[data-v-b8a659c8]{color:#18a058}.codex-login__state--success svg[data-v-b8a659c8]{stroke:#18a058}.codex-login__error[data-v-b8a659c8]{color:#d03050;text-align:center;font-size:13px}.modal-footer[data-v-b8a659c8]{justify-content:flex-end;gap:8px;display:flex}.nous-login[data-v-13765003]{flex-direction:column;align-items:center;padding:8px 0;display:flex}.nous-login__state[data-v-13765003]{flex-direction:column;justify-content:center;align-items:center;gap:16px;width:100%;min-height:120px;display:flex}.nous-login__hint[data-v-13765003]{color:var(--n-text-color,inherit);text-align:center;font-size:14px;line-height:1.6}.nous-login__code[data-v-13765003]{border:1px solid var(--n-border-color,#e0e0e6);cursor:pointer;background:var(--n-color,#fafafa);border-radius:8px;align-items:center;gap:12px;padding:12px 20px;transition:border-color .2s;display:flex}.nous-login__code[data-v-13765003]:hover{border-color:var(--n-primary-color,#18a058)}.nous-login__code-text[data-v-13765003]{letter-spacing:4px;color:var(--n-text-color,inherit);font-family:monospace;font-size:28px;font-weight:700}.nous-login__state--success[data-v-13765003]{color:#18a058}.nous-login__state--success svg[data-v-13765003]{stroke:#18a058}.nous-login__error[data-v-13765003]{color:#d03050;text-align:center;font-size:13px}.modal-footer[data-v-13765003],.modal-footer[data-v-ed1ea325]{justify-content:flex-end;gap:8px;display:flex}[data-v-84eaeb4c]:root{--bg-primary:#fafafa;--bg-secondary:#f0f0f0;--bg-sidebar:#f5f5f5;--bg-card:#fff;--bg-card-hover:#fafafa;--bg-input:#fff;--border-color:#e0e0e0;--border-light:#ebebeb;--accent-primary:#333;--accent-hover:#1a1a1a;--accent-muted:#888;--text-primary:#1a1a1a;--text-secondary:#666;--text-muted:#999;--success:#2e7d32;--error:#c62828;--warning:#f57f17;--msg-user-bg:#f5f5f5;--msg-assistant-bg:#f5f5f5;--msg-system-border:#bdbdbd;--code-bg:#f4f4f4;--text-on-accent:#fff;--text-on-overlay:#fff;--accent-info:#4a90d9;--accent-primary-rgb:51, 51, 51;--accent-hover-rgb:26, 26, 26;--text-primary-rgb:26, 26, 26;--text-muted-rgb:153, 153, 153;--success-rgb:46, 125, 50;--error-rgb:198, 40, 40;--warning-rgb:245, 127, 23;--accent-info-rgb:74, 144, 217}.dark[data-v-84eaeb4c]{--bg-primary:#1a1a1a;--bg-secondary:#252525;--bg-sidebar:#202020;--bg-card:#333;--bg-card-hover:#333;--bg-input:#2a2a2a;--border-color:#3a3a3a;--border-light:#333;--accent-primary:#e0e0e0;--accent-hover:#f5f5f5;--accent-muted:#888;--text-primary:#f0f0f0;--text-secondary:silver;--text-muted:#888;--success:#66bb6a;--error:#ef5350;--warning:#ffb74d;--msg-user-bg:#252525;--msg-assistant-bg:#252525;--msg-system-border:#555;--code-bg:#1e1e1e;--text-on-accent:#1a1a1a;--text-on-overlay:#fff;--accent-info:#6ba3d6;--accent-primary-rgb:240, 240, 240;--accent-hover-rgb:245, 245, 245;--text-primary-rgb:240, 240, 240;--text-muted-rgb:136, 136, 136;--success-rgb:102, 187, 106;--error-rgb:239, 83, 80;--warning-rgb:255, 183, 77;--accent-info-rgb:107, 163, 214}.models-view[data-v-84eaeb4c]{height:calc(100 * var(--vh));flex-direction:column;display:flex}.models-content[data-v-84eaeb4c]{flex:1;padding:20px;overflow-y:auto}
1
+ [data-v-f48ea7e8]:root{--bg-primary:#fafafa;--bg-secondary:#f0f0f0;--bg-sidebar:#f5f5f5;--bg-card:#fff;--bg-card-hover:#fafafa;--bg-input:#fff;--border-color:#e0e0e0;--border-light:#ebebeb;--accent-primary:#333;--accent-hover:#1a1a1a;--accent-muted:#888;--text-primary:#1a1a1a;--text-secondary:#666;--text-muted:#999;--success:#2e7d32;--error:#c62828;--warning:#f57f17;--msg-user-bg:#f5f5f5;--msg-assistant-bg:#f5f5f5;--msg-system-border:#bdbdbd;--code-bg:#f4f4f4;--text-on-accent:#fff;--text-on-overlay:#fff;--accent-info:#4a90d9;--accent-primary-rgb:51, 51, 51;--accent-hover-rgb:26, 26, 26;--text-primary-rgb:26, 26, 26;--text-muted-rgb:153, 153, 153;--success-rgb:46, 125, 50;--error-rgb:198, 40, 40;--warning-rgb:245, 127, 23;--accent-info-rgb:74, 144, 217}.dark[data-v-f48ea7e8]{--bg-primary:#1a1a1a;--bg-secondary:#252525;--bg-sidebar:#202020;--bg-card:#333;--bg-card-hover:#333;--bg-input:#2a2a2a;--border-color:#3a3a3a;--border-light:#333;--accent-primary:#e0e0e0;--accent-hover:#f5f5f5;--accent-muted:#888;--text-primary:#f0f0f0;--text-secondary:silver;--text-muted:#888;--success:#66bb6a;--error:#ef5350;--warning:#ffb74d;--msg-user-bg:#252525;--msg-assistant-bg:#252525;--msg-system-border:#555;--code-bg:#1e1e1e;--text-on-accent:#1a1a1a;--text-on-overlay:#fff;--accent-info:#6ba3d6;--accent-primary-rgb:240, 240, 240;--accent-hover-rgb:245, 245, 245;--text-primary-rgb:240, 240, 240;--text-muted-rgb:136, 136, 136;--success-rgb:102, 187, 106;--error-rgb:239, 83, 80;--warning-rgb:255, 183, 77;--accent-info-rgb:107, 163, 214}.provider-card[data-v-f48ea7e8]{background-color:var(--bg-card);border:1px solid var(--border-color);border-radius:10px;padding:16px;transition:border-color .15s}.provider-card[data-v-f48ea7e8]:hover{border-color:rgba(var(--accent-primary-rgb), .3)}.card-header[data-v-f48ea7e8]{justify-content:space-between;align-items:center;margin-bottom:12px;display:flex}.provider-name[data-v-f48ea7e8]{color:var(--text-primary);text-overflow:ellipsis;white-space:nowrap;max-width:70%;font-size:15px;font-weight:600;overflow:hidden}.type-badge[data-v-f48ea7e8]{border-radius:10px;padding:2px 8px;font-size:11px;font-weight:500}.type-badge.builtin[data-v-f48ea7e8]{background:rgba(var(--accent-primary-rgb), .12);color:var(--accent-primary)}.type-badge.custom[data-v-f48ea7e8]{background:rgba(var(--success-rgb), .12);color:var(--success)}.card-body[data-v-f48ea7e8]{flex-direction:column;gap:6px;margin-bottom:14px;display:flex}.info-row[data-v-f48ea7e8]{justify-content:space-between;align-items:center;display:flex}.info-label[data-v-f48ea7e8]{color:var(--text-muted);font-size:12px}.info-value[data-v-f48ea7e8]{color:var(--text-secondary);font-size:12px}.mono[data-v-f48ea7e8]{font-family:JetBrains Mono,Fira Code,Consolas,monospace;font-size:12px}.card-actions[data-v-f48ea7e8]{border-top:1px solid var(--border-light);gap:8px;padding-top:10px;display:flex}[data-v-76eec30b]:root{--bg-primary:#fafafa;--bg-secondary:#f0f0f0;--bg-sidebar:#f5f5f5;--bg-card:#fff;--bg-card-hover:#fafafa;--bg-input:#fff;--border-color:#e0e0e0;--border-light:#ebebeb;--accent-primary:#333;--accent-hover:#1a1a1a;--accent-muted:#888;--text-primary:#1a1a1a;--text-secondary:#666;--text-muted:#999;--success:#2e7d32;--error:#c62828;--warning:#f57f17;--msg-user-bg:#f5f5f5;--msg-assistant-bg:#f5f5f5;--msg-system-border:#bdbdbd;--code-bg:#f4f4f4;--text-on-accent:#fff;--text-on-overlay:#fff;--accent-info:#4a90d9;--accent-primary-rgb:51, 51, 51;--accent-hover-rgb:26, 26, 26;--text-primary-rgb:26, 26, 26;--text-muted-rgb:153, 153, 153;--success-rgb:46, 125, 50;--error-rgb:198, 40, 40;--warning-rgb:245, 127, 23;--accent-info-rgb:74, 144, 217}.dark[data-v-76eec30b]{--bg-primary:#1a1a1a;--bg-secondary:#252525;--bg-sidebar:#202020;--bg-card:#333;--bg-card-hover:#333;--bg-input:#2a2a2a;--border-color:#3a3a3a;--border-light:#333;--accent-primary:#e0e0e0;--accent-hover:#f5f5f5;--accent-muted:#888;--text-primary:#f0f0f0;--text-secondary:silver;--text-muted:#888;--success:#66bb6a;--error:#ef5350;--warning:#ffb74d;--msg-user-bg:#252525;--msg-assistant-bg:#252525;--msg-system-border:#555;--code-bg:#1e1e1e;--text-on-accent:#1a1a1a;--text-on-overlay:#fff;--accent-info:#6ba3d6;--accent-primary-rgb:240, 240, 240;--accent-hover-rgb:245, 245, 245;--text-primary-rgb:240, 240, 240;--text-muted-rgb:136, 136, 136;--success-rgb:102, 187, 106;--error-rgb:239, 83, 80;--warning-rgb:255, 183, 77;--accent-info-rgb:107, 163, 214}.empty-state[data-v-76eec30b]{height:100%;color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;gap:12px;display:flex}.empty-state .empty-icon[data-v-76eec30b]{opacity:.3}.empty-state p[data-v-76eec30b]{font-size:14px}.providers-grid[data-v-76eec30b]{grid-template-columns:repeat(auto-fill,minmax(min(100%,420px),1fr));gap:14px;display:grid}.codex-login[data-v-b8a659c8]{flex-direction:column;align-items:center;padding:8px 0;display:flex}.codex-login__state[data-v-b8a659c8]{flex-direction:column;justify-content:center;align-items:center;gap:16px;width:100%;min-height:120px;display:flex}.codex-login__hint[data-v-b8a659c8]{color:var(--n-text-color,inherit);text-align:center;font-size:14px;line-height:1.6}.codex-login__code[data-v-b8a659c8]{border:1px solid var(--n-border-color,#e0e0e6);cursor:pointer;background:var(--n-color,#fafafa);border-radius:8px;align-items:center;gap:12px;padding:12px 20px;transition:border-color .2s;display:flex}.codex-login__code[data-v-b8a659c8]:hover{border-color:var(--n-primary-color,#18a058)}.codex-login__code-text[data-v-b8a659c8]{letter-spacing:4px;color:var(--n-text-color,inherit);font-family:monospace;font-size:28px;font-weight:700}.codex-login__state--success[data-v-b8a659c8]{color:#18a058}.codex-login__state--success svg[data-v-b8a659c8]{stroke:#18a058}.codex-login__error[data-v-b8a659c8]{color:#d03050;text-align:center;font-size:13px}.modal-footer[data-v-b8a659c8]{justify-content:flex-end;gap:8px;display:flex}.nous-login[data-v-13765003]{flex-direction:column;align-items:center;padding:8px 0;display:flex}.nous-login__state[data-v-13765003]{flex-direction:column;justify-content:center;align-items:center;gap:16px;width:100%;min-height:120px;display:flex}.nous-login__hint[data-v-13765003]{color:var(--n-text-color,inherit);text-align:center;font-size:14px;line-height:1.6}.nous-login__code[data-v-13765003]{border:1px solid var(--n-border-color,#e0e0e6);cursor:pointer;background:var(--n-color,#fafafa);border-radius:8px;align-items:center;gap:12px;padding:12px 20px;transition:border-color .2s;display:flex}.nous-login__code[data-v-13765003]:hover{border-color:var(--n-primary-color,#18a058)}.nous-login__code-text[data-v-13765003]{letter-spacing:4px;color:var(--n-text-color,inherit);font-family:monospace;font-size:28px;font-weight:700}.nous-login__state--success[data-v-13765003]{color:#18a058}.nous-login__state--success svg[data-v-13765003]{stroke:#18a058}.nous-login__error[data-v-13765003]{color:#d03050;text-align:center;font-size:13px}.modal-footer[data-v-13765003],.modal-footer[data-v-34bd5f95]{justify-content:flex-end;gap:8px;display:flex}[data-v-84eaeb4c]:root{--bg-primary:#fafafa;--bg-secondary:#f0f0f0;--bg-sidebar:#f5f5f5;--bg-card:#fff;--bg-card-hover:#fafafa;--bg-input:#fff;--border-color:#e0e0e0;--border-light:#ebebeb;--accent-primary:#333;--accent-hover:#1a1a1a;--accent-muted:#888;--text-primary:#1a1a1a;--text-secondary:#666;--text-muted:#999;--success:#2e7d32;--error:#c62828;--warning:#f57f17;--msg-user-bg:#f5f5f5;--msg-assistant-bg:#f5f5f5;--msg-system-border:#bdbdbd;--code-bg:#f4f4f4;--text-on-accent:#fff;--text-on-overlay:#fff;--accent-info:#4a90d9;--accent-primary-rgb:51, 51, 51;--accent-hover-rgb:26, 26, 26;--text-primary-rgb:26, 26, 26;--text-muted-rgb:153, 153, 153;--success-rgb:46, 125, 50;--error-rgb:198, 40, 40;--warning-rgb:245, 127, 23;--accent-info-rgb:74, 144, 217}.dark[data-v-84eaeb4c]{--bg-primary:#1a1a1a;--bg-secondary:#252525;--bg-sidebar:#202020;--bg-card:#333;--bg-card-hover:#333;--bg-input:#2a2a2a;--border-color:#3a3a3a;--border-light:#333;--accent-primary:#e0e0e0;--accent-hover:#f5f5f5;--accent-muted:#888;--text-primary:#f0f0f0;--text-secondary:silver;--text-muted:#888;--success:#66bb6a;--error:#ef5350;--warning:#ffb74d;--msg-user-bg:#252525;--msg-assistant-bg:#252525;--msg-system-border:#555;--code-bg:#1e1e1e;--text-on-accent:#1a1a1a;--text-on-overlay:#fff;--accent-info:#6ba3d6;--accent-primary-rgb:240, 240, 240;--accent-hover-rgb:245, 245, 245;--text-primary-rgb:240, 240, 240;--text-muted-rgb:136, 136, 136;--success-rgb:102, 187, 106;--error-rgb:239, 83, 80;--warning-rgb:255, 183, 77;--accent-info-rgb:107, 163, 214}.models-view[data-v-84eaeb4c]{height:calc(100 * var(--vh));flex-direction:column;display:flex}.models-content[data-v-84eaeb4c]{flex:1;padding:20px;overflow-y:auto}
@@ -1,4 +1,4 @@
1
- import{A as e,G as t,M as n,P as r,S as i,st as a,ut as o}from"./router-BDvjwA-_.js";import{B as s,J as c,K as l,W as u,c as d,ct as f,dt as p,et as m,lt as h,z as g}from"./browser-BIv3pBug.js";import{l as _,n as v,t as y}from"./Popover-upoiJRFk.js";import{s as b}from"./Suffix-BMy3yeNM.js";import{r as x}from"./fade-in.cssr-BvBFOzvO.js";import{t as S}from"./Button-6kn5x8wB.js";import{n as C,t as w}from"./Warning-cHbjPxlH.js";import{r as T,t as E}from"./light-CNs4B0mO.js";var D=m(`n-popconfirm`),O={positiveText:String,negativeText:String,showIcon:{type:Boolean,default:!0},onPositiveClick:{type:Function,required:!0},onNegativeClick:{type:Function,required:!0}},k=C(O),A=e({name:`NPopconfirmPanel`,props:O,setup(e){let{localeRef:t}=b(`Popconfirm`),{inlineThemeDisabled:n}=s(),{mergedClsPrefixRef:a,mergedThemeRef:c,props:l}=r(D),u=i(()=>{let{common:{cubicBezierEaseInOut:e},self:{fontSize:t,iconSize:n,iconColor:r}}=c.value;return{"--n-bezier":e,"--n-font-size":t,"--n-icon-size":n,"--n-icon-color":r}}),d=n?g(`popconfirm-panel`,void 0,u,l):void 0;return Object.assign(Object.assign({},b(`Popconfirm`)),{mergedClsPrefix:a,cssVars:n?void 0:u,localizedPositiveText:i(()=>e.positiveText||t.value.positiveText),localizedNegativeText:i(()=>e.negativeText||t.value.negativeText),positiveButtonProps:o(l,`positiveButtonProps`),negativeButtonProps:o(l,`negativeButtonProps`),handlePositiveClick(t){e.onPositiveClick(t)},handleNegativeClick(t){e.onNegativeClick(t)},themeClass:d?.themeClass,onRender:d?.onRender})},render(){var e;let{mergedClsPrefix:t,showIcon:r,$slots:i}=this,a=u(i.action,()=>this.negativeText===null&&this.positiveText===null?[]:[this.negativeText!==null&&n(S,Object.assign({size:`small`,onClick:this.handleNegativeClick},this.negativeButtonProps),{default:()=>this.localizedNegativeText}),this.positiveText!==null&&n(S,Object.assign({size:`small`,type:`primary`,onClick:this.handlePositiveClick},this.positiveButtonProps),{default:()=>this.localizedPositiveText})]);return(e=this.onRender)==null||e.call(this),n(`div`,{class:[`${t}-popconfirm__panel`,this.themeClass],style:this.cssVars},l(i.default,e=>r||e?n(`div`,{class:`${t}-popconfirm__body`},r?n(`div`,{class:`${t}-popconfirm__icon`},u(i.icon,()=>[n(x,{clsPrefix:t},{default:()=>n(w,null)})])):null,e):null),a?n(`div`,{class:[`${t}-popconfirm__action`]},a):null)}}),j=h(`popconfirm`,[p(`body`,`
1
+ import{A as e,G as t,M as n,P as r,S as i,st as a,ut as o}from"./router-CaAe9JO4.js";import{B as s,J as c,K as l,W as u,c as d,ct as f,dt as p,et as m,lt as h,z as g}from"./browser-fXTO-ADn.js";import{l as _,n as v,t as y}from"./Popover-B_5YtxbH.js";import{s as b}from"./Suffix-CMjBYS-M.js";import{r as x}from"./fade-in.cssr-Br-J4Ht7.js";import{t as S}from"./Button-CYfnxZGL.js";import{n as C,t as w}from"./Warning-IN0Uuhk7.js";import{r as T,t as E}from"./light-B9x-BrGA.js";var D=m(`n-popconfirm`),O={positiveText:String,negativeText:String,showIcon:{type:Boolean,default:!0},onPositiveClick:{type:Function,required:!0},onNegativeClick:{type:Function,required:!0}},k=C(O),A=e({name:`NPopconfirmPanel`,props:O,setup(e){let{localeRef:t}=b(`Popconfirm`),{inlineThemeDisabled:n}=s(),{mergedClsPrefixRef:a,mergedThemeRef:c,props:l}=r(D),u=i(()=>{let{common:{cubicBezierEaseInOut:e},self:{fontSize:t,iconSize:n,iconColor:r}}=c.value;return{"--n-bezier":e,"--n-font-size":t,"--n-icon-size":n,"--n-icon-color":r}}),d=n?g(`popconfirm-panel`,void 0,u,l):void 0;return Object.assign(Object.assign({},b(`Popconfirm`)),{mergedClsPrefix:a,cssVars:n?void 0:u,localizedPositiveText:i(()=>e.positiveText||t.value.positiveText),localizedNegativeText:i(()=>e.negativeText||t.value.negativeText),positiveButtonProps:o(l,`positiveButtonProps`),negativeButtonProps:o(l,`negativeButtonProps`),handlePositiveClick(t){e.onPositiveClick(t)},handleNegativeClick(t){e.onNegativeClick(t)},themeClass:d?.themeClass,onRender:d?.onRender})},render(){var e;let{mergedClsPrefix:t,showIcon:r,$slots:i}=this,a=u(i.action,()=>this.negativeText===null&&this.positiveText===null?[]:[this.negativeText!==null&&n(S,Object.assign({size:`small`,onClick:this.handleNegativeClick},this.negativeButtonProps),{default:()=>this.localizedNegativeText}),this.positiveText!==null&&n(S,Object.assign({size:`small`,type:`primary`,onClick:this.handlePositiveClick},this.positiveButtonProps),{default:()=>this.localizedPositiveText})]);return(e=this.onRender)==null||e.call(this),n(`div`,{class:[`${t}-popconfirm__panel`,this.themeClass],style:this.cssVars},l(i.default,e=>r||e?n(`div`,{class:`${t}-popconfirm__body`},r?n(`div`,{class:`${t}-popconfirm__icon`},u(i.icon,()=>[n(x,{clsPrefix:t},{default:()=>n(w,null)})])):null,e):null),a?n(`div`,{class:[`${t}-popconfirm__action`]},a):null)}}),j=h(`popconfirm`,[p(`body`,`
2
2
  font-size: var(--n-font-size);
3
3
  display: flex;
4
4
  align-items: center;