@agentunion/kite 1.4.0 → 1.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (718) hide show
  1. package/.claude/skills/kite/checklists/feature-checklist.md +496 -0
  2. package/.claude/skills/kite/references/event-patterns.md +180 -0
  3. package/.claude/skills/kite/references/health-check.md +202 -0
  4. package/.claude/skills/kite/references/http-service.md +199 -0
  5. package/.claude/skills/kite/references/module-md-spec.md +172 -0
  6. package/.claude/skills/kite/references/multi-connection.md +147 -0
  7. package/.claude/skills/kite/references/rpc-patterns.md +199 -0
  8. package/.claude/skills/kite/references/shutdown-sequence.md +146 -0
  9. package/.claude/skills/kite/references/stdin-protocol.md +147 -0
  10. package/.claude/skills/kite/references/test-center-integration.md +178 -0
  11. package/.claude/skills/kite/references/ws-lifecycle.md +301 -0
  12. package/.claude/skills/kite/skill.md +272 -0
  13. package/.claude/skills/kite/templates/go/README.md +20 -0
  14. package/.claude/skills/kite/templates/node/entry.js +134 -0
  15. package/.claude/skills/kite/templates/node/module.md +16 -0
  16. package/.claude/skills/kite/templates/node/server.js +351 -0
  17. package/.claude/skills/kite/templates/node/server_http.js +90 -0
  18. package/.claude/skills/kite/templates/python/entry.py +425 -0
  19. package/.claude/skills/kite/templates/python/module.md +26 -0
  20. package/.claude/skills/kite/templates/python/server.py +447 -0
  21. package/.claude/skills/kite/templates/python/server_http.py +433 -0
  22. package/CHANGELOG.md +102 -0
  23. package/cli.js +78 -5
  24. package/core/dependency_checker.py +250 -0
  25. package/core/env_checker.py +586 -0
  26. package/dependencies_lock.json +128 -0
  27. package/docs/05-/347/237/255/344/277/241/350/256/244/350/257/201/344/270/216/347/224/250/346/210/267/344/277/241/346/201/257/346/216/245/345/217/243/346/226/207/346/241/243.md +507 -0
  28. package/docs/ACP/345/215/217/350/256/256/345/205/274/345/256/271/346/226/271/346/241/210.md +138 -0
  29. package/docs/CI/344/270/216AI/350/207/252/345/212/250/345/214/226/346/265/213/350/257/225/346/226/271/346/241/210.md +75 -0
  30. package/docs/CLI/345/274/200/345/217/221/350/256/241/345/210/222.md +595 -0
  31. package/docs/ClaudeCode/350/277/234/347/250/213/345/215/217/344/275/234/347/263/273/347/273/237-/346/212/200/346/234/257/350/257/204/344/274/260.md +535 -0
  32. package/docs/ClaudeCode/350/277/234/347/250/213/345/215/217/344/275/234/347/263/273/347/273/237/350/256/276/350/256/241.md +631 -0
  33. package/docs/Evol-App/344/275/277/347/224/250KernelClient/346/224/271/351/200/240/345/256/214/346/210/220.md +342 -0
  34. package/docs/Evol/346/216/247/345/210/266/345/217/260/346/217/222/344/273/266/345/214/226/346/236/266/346/236/204/346/246/202/350/246/201.md +604 -0
  35. package/docs/Evol/346/216/247/345/210/266/345/217/260/346/217/222/344/273/266/345/214/226/346/236/266/346/236/204/350/256/276/350/256/241.md +1708 -0
  36. package/docs/Evol/346/250/241/345/235/227/350/256/276/350/256/241/346/226/271/346/241/210.md +1154 -0
  37. package/docs/Evol/351/241/265/351/235/242/346/217/222/344/273/266/345/214/226-Evol/346/250/241/345/235/227/345/256/236/346/226/275/346/214/207/345/215/227.md +403 -0
  38. package/docs/Evol/351/241/265/351/235/242/346/217/222/344/273/266/345/214/226-/345/244/226/351/203/250/346/250/241/345/235/227/346/216/245/345/205/245/346/214/207/345/215/227.md +468 -0
  39. package/docs/HTTP-RPC/350/277/201/347/247/273/345/210/260WebSocket/350/256/241/345/210/222.md +318 -0
  40. package/docs/INDEX.md +388 -0
  41. package/docs/KITE_DOCS_GUIDE.md +33 -0
  42. package/docs/Kernel-Client-Kite-Token/346/224/257/346/214/201/345/256/236/346/226/275/345/256/214/346/210/220.md +330 -0
  43. package/docs/Kernel/344/270/273/345/212/250Ping/346/234/272/345/210/266-/346/255/243/347/241/256/345/256/236/347/216/260.md +235 -0
  44. package/docs/Kernel/344/270/273/345/212/250Ping/346/234/272/345/210/266/345/256/236/346/226/275/346/200/273/347/273/223.md +204 -0
  45. package/docs/Kite/345/256/211/350/243/205/351/227/256/351/242/230/350/247/243/345/206/263/346/226/271/346/241/210.md +362 -0
  46. package/docs/Kite/346/216/247/345/210/266/345/217/260/346/217/222/344/273/266/345/214/226/346/236/266/346/236/204/350/256/276/350/256/241-/347/273/210/346/236/201/347/233/256/346/240/207.md +721 -0
  47. package/docs/Kite/346/216/247/345/210/266/345/217/260/347/273/237/344/270/200WebSocket/346/224/271/351/200/240/346/226/271/346/241/210.md +821 -0
  48. package/docs/Kite/346/241/206/346/236/266/350/256/276/350/256/241/01-/346/241/206/346/236/266/345/256/232/344/275/215.md +12 -0
  49. package/docs/Kite/346/241/206/346/236/266/350/256/276/350/256/241/02-/346/240/270/345/277/203/346/246/202/345/277/265.md +341 -0
  50. package/docs/Kite/346/241/206/346/236/266/350/256/276/350/256/241/03-/347/263/273/347/273/237/346/236/266/346/236/204.md +257 -0
  51. package/docs/Kite/346/241/206/346/236/266/350/256/276/350/256/241/04-/346/250/241/345/235/227/350/247/204/350/214/203.md +263 -0
  52. package/docs/Kite/346/241/206/346/236/266/350/256/276/350/256/241/05-/346/240/270/345/277/203/346/265/201/347/250/213-/346/226/260/347/211/210.md +267 -0
  53. package/docs/Kite/346/241/206/346/236/266/350/256/276/350/256/241/05-/346/240/270/345/277/203/346/265/201/347/250/213.md +149 -0
  54. package/docs/Kite/346/241/206/346/236/266/350/256/276/350/256/241/06-/347/233/256/345/275/225/347/273/223/346/236/204.md +231 -0
  55. package/docs/Kite/346/241/206/346/236/266/350/256/276/350/256/241/07-/346/225/260/346/215/256/346/250/241/345/236/213.md +68 -0
  56. package/docs/Kite/346/241/206/346/236/266/350/256/276/350/256/241/08-/346/211/251/345/261/225/346/200/247.md +34 -0
  57. package/docs/Kite/346/241/206/346/236/266/350/256/276/350/256/241/09-/344/270/216/345/205/267/344/275/223/345/272/224/347/224/250/347/232/204/345/205/263/347/263/273.md +22 -0
  58. package/docs/Kite/346/241/206/346/236/266/350/256/276/350/256/241/README.md +46 -0
  59. package/docs/Kite/347/263/273/347/273/237/345/220/257/345/212/250/346/265/201/347/250/213.md +567 -0
  60. package/docs/Launcher/345/220/257/345/212/250/345/231/250/346/226/207/346/241/243.md +745 -0
  61. package/docs/Polyglot/350/277/220/350/241/214/346/227/266/344/270/216Clawdbot/345/205/274/345/256/271/346/200/247/350/256/276/350/256/241.md +321 -0
  62. package/docs/Redis/344/270/216/346/250/241/345/235/227/345/244/232/345/256/236/344/276/213/346/226/271/346/241/210.md +438 -0
  63. package/docs/Relay-Kite-Token/350/256/244/350/257/201/345/256/236/346/226/275/345/256/214/346/210/220.md +178 -0
  64. package/docs/Relay-Token/346/235/203/351/231/220/351/205/215/347/275/256/351/252/214/350/257/201.md +113 -0
  65. package/docs/Watchdog/345/201/245/345/272/267/346/243/200/346/237/245/344/270/216WebSocket-Ping/346/234/272/345/210/266/345/210/206/346/236/220.md +367 -0
  66. package/docs/Watchdog/350/265/204/346/272/220/347/233/221/346/216/247/347/255/226/347/225/245.md +92 -0
  67. package/docs/WebSocket/346/216/245/346/224/266/345/276/252/347/216/257/346/255/273/351/224/201/351/230/262/350/214/203/350/247/204/350/214/203.md +357 -0
  68. package/docs/WebSocket/350/277/236/346/216/245/351/237/247/346/200/247/344/270/216/351/207/215/350/277/236/346/234/272/345/210/266/345/256/214/346/225/264/346/226/271/346/241/210.md +531 -0
  69. package/docs/WebSocket/350/277/236/346/216/245/351/237/247/346/200/247/346/226/271/346/241/210.md +169 -0
  70. package/docs/WebSocket/351/207/215/350/277/236/346/234/272/345/210/266/346/265/213/350/257/225/346/212/245/345/221/212.md +169 -0
  71. package/docs/WebSocket/351/207/215/350/277/236/351/200/200/351/201/277/346/234/272/345/210/266/346/226/271/346/241/210.md +394 -0
  72. package/docs/Web/346/250/241/345/235/227/344/270/216Evol/346/250/241/345/235/227/351/207/215/346/236/204/345/210/206/346/236/220.md +521 -0
  73. package/docs/audit-api-guide.md +68 -0
  74. package/docs/audit-module-design.md +315 -0
  75. package/docs/audit-module-implementation-summary.md +149 -0
  76. package/docs/llm-context-design.md +52 -0
  77. package/docs/llm-test-enhancement-plan.md +970 -0
  78. package/docs/logs-api-guide.md +42 -0
  79. package/docs/npm/345/214/205Python/347/216/257/345/242/203/347/256/241/347/220/206/346/226/271/346/241/210.md +302 -0
  80. package/docs/npm/345/217/221/345/270/203/344/270/216CLI/344/275/277/347/224/250/346/214/207/345/215/227.md +245 -0
  81. package/docs/stdio/344/270/216/347/253/257/345/217/243/345/217/221/347/216/260/351/207/215/346/236/204.md +480 -0
  82. package/docs/web/346/250/241/345/235/227/344/270/255/350/275/254/346/234/215/345/212/241/350/256/276/350/256/241/346/226/271/346/241/210.md +449 -0
  83. package/docs//344/272/213/344/273/266/345/244/204/347/220/206/346/234/272/345/210/266.md +388 -0
  84. package/docs//344/272/213/344/273/266/345/244/204/347/220/206/350/247/204/350/214/203.md +113 -0
  85. package/docs//344/272/213/344/273/266/350/256/242/351/230/205/351/200/232/351/205/215/347/254/246/350/247/204/350/214/203.md +256 -0
  86. package/docs//344/272/213/344/273/266/351/230/237/345/210/227/345/274/271/346/200/247/347/256/241/347/220/206.md +449 -0
  87. package/docs//344/272/244/344/272/222/345/274/217/347/273/210/347/253/257/346/216/247/345/210/266/346/226/271/346/241/210.md +301 -0
  88. package/docs//344/273/243/347/220/206/345/220/257/345/212/250/345/231/250/344/270/216/345/256/271/345/231/250/345/214/226.md +140 -0
  89. package/docs//344/273/243/347/240/201/347/273/237/350/256/241/345/267/245/345/205/267/344/275/277/347/224/250/350/257/264/346/230/216.md +217 -0
  90. package/docs//344/274/230/351/233/205/351/200/200/345/207/272/350/247/204/350/214/203.md +362 -0
  91. package/docs//344/276/235/350/265/226/347/256/241/347/220/206/350/257/264/346/230/216.md +141 -0
  92. package/docs//344/277/256/345/244/215/346/235/203/351/231/220/351/227/256/351/242/230-evol-RPC/346/235/203/351/231/220.md +268 -0
  93. package/docs//345/210/240/351/231/244kernel-client-example/345/256/214/346/210/220.md +309 -0
  94. package/docs//345/210/240/351/231/244ws-management/345/256/214/346/210/220.md +418 -0
  95. package/docs//345/220/257/345/212/250/344/274/230/345/214/226/346/226/271/346/241/210.md +522 -0
  96. package/docs//345/220/257/345/212/250/344/276/235/350/265/226/344/270/216/346/216/222/345/272/217.md +105 -0
  97. package/docs//345/256/211/350/243/205/350/204/232/346/234/254/345/274/200/345/217/221/346/226/207/346/241/243.md +643 -0
  98. package/docs//345/256/214/346/225/264/345/220/257/345/212/250/346/265/201/347/250/213/350/256/276/350/256/241.md +452 -0
  99. package/docs//345/256/236/347/216/260/350/247/204/345/210/222.md +195 -0
  100. package/docs//345/277/203/350/267/263/346/234/272/345/210/266/351/207/215/346/236/204/346/200/273/347/273/223.md +166 -0
  101. package/docs//346/217/241/346/211/213/350/256/244/350/257/201/346/226/271/346/241/210-/345/256/211/345/205/250/345/256/241/346/237/245.md +176 -0
  102. package/docs//346/217/241/346/211/213/350/256/244/350/257/201/346/226/271/346/241/210.md +908 -0
  103. package/docs//346/226/207/346/241/243/346/233/264/346/226/260/346/270/205/345/215/225.md +83 -0
  104. package/docs//346/227/245/345/277/227/344/270/216/345/274/202/345/270/270/345/244/204/347/220/206/350/247/204/350/214/203.md +829 -0
  105. package/docs//346/227/245/345/277/227/350/260/203/350/257/225/345/256/236/346/210/230/346/214/207/345/215/227.md +25 -0
  106. package/docs//346/236/266/346/236/204/345/200/237/351/211/264/346/214/207/345/215/227.md +977 -0
  107. package/docs//346/236/266/346/236/204/346/224/271/351/200/240-/345/256/214/346/210/220/346/200/273/347/273/223.md +440 -0
  108. package/docs//346/236/266/346/236/204/347/216/260/347/212/266/344/270/216/347/273/210/346/236/201/347/233/256/346/240/207/345/257/271/346/257/224/345/210/206/346/236/220.md +508 -0
  109. package/docs//346/250/241/345/235/227/345/244/232/350/277/236/346/216/245/346/216/247/345/210/266/347/255/226/347/225/245.md +220 -0
  110. package/docs//346/250/241/345/235/227/345/256/211/350/243/205/346/234/272/345/210/266/350/256/276/350/256/241.md +500 -0
  111. package/docs//346/250/241/345/235/227/345/274/200/345/217/221/346/214/207/345/215/227.md +1824 -0
  112. package/docs//346/250/241/345/235/227/347/203/255/346/233/264/346/226/260.md +89 -0
  113. package/docs//346/250/241/345/235/227/350/277/234/347/250/213/351/203/250/347/275/262/345/274/200/345/217/221/350/247/204/350/214/203.md +460 -0
  114. package/docs//346/250/241/345/235/227/351/200/200/345/207/272/346/234/272/345/210/266/345/256/214/346/225/264/346/226/271/346/241/210.md +303 -0
  115. package/docs//346/250/241/345/235/227/351/205/215/347/275/256/345/212/240/350/275/275/344/270/216/347/203/255/351/207/215/350/275/275/350/247/204/350/214/203.md +369 -0
  116. package/docs//346/265/213/350/257/225/344/270/255/345/277/203/346/267/273/345/212/240/346/250/241/345/235/227/346/265/213/350/257/225/346/214/207/345/215/227.md +147 -0
  117. package/docs//347/211/210/346/234/254/351/224/201/345/256/232/347/216/257/345/242/203/347/256/241/347/220/206/346/226/271/346/241/210.md +331 -0
  118. package/docs//347/216/257/345/242/203/345/217/230/351/207/217/344/270/216/350/277/220/350/241/214/346/227/266/347/233/256/345/275/225/350/256/276/350/256/241.md +499 -0
  119. package/docs//347/216/257/345/242/203/347/256/241/347/220/206/345/256/214/346/225/264/346/226/271/346/241/210.md +334 -0
  120. package/docs//350/231/232/346/213/237/346/250/241/345/235/227/344/270/255/350/275/254/346/234/215/345/212/241/345/256/214/346/225/264/350/256/276/350/256/241.md +1496 -0
  121. package/docs//350/231/232/346/213/237/347/216/257/345/242/203/345/267/245/344/275/234/345/216/237/347/220/206.md +163 -0
  122. package/docs//350/256/241/345/210/222/347/256/241/347/220/206/345/231/250/344/275/277/347/224/250/346/214/207/345/215/227.md +196 -0
  123. package/docs//350/256/244/350/257/201/346/250/241/345/235/227/344/270/216Gateway/350/256/276/350/256/241/346/226/271/346/241/210.md +765 -0
  124. package/docs//350/277/234/347/250/213/346/250/241/345/235/227/350/256/276/350/256/241-/346/227/247/347/211/210.md +1117 -0
  125. package/docs//350/277/234/347/250/213/346/250/241/345/235/227/350/256/276/350/256/241.md +451 -0
  126. package/docs//351/207/215/346/236/204/346/234/272/345/210/266/346/270/205/345/215/225.md +192 -0
  127. package/docs//351/223/276/350/267/257/350/277/275/350/270/252/346/226/271/346/241/210.md +242 -0
  128. package/docs//351/231/215/347/272/247/347/255/226/347/225/245/350/256/276/350/256/241/346/226/271/346/241/210.md +618 -0
  129. package/extensions/agents/assistant/entry.py +113 -14
  130. package/extensions/agents/assistant/module.md +27 -22
  131. package/extensions/agents/assistant/server.py +308 -106
  132. package/extensions/channels/acp_channel/entry.py +114 -16
  133. package/extensions/channels/acp_channel/module.md +4 -0
  134. package/extensions/channels/acp_channel/server.py +412 -105
  135. package/extensions/channels/phone_channel/__init__.py +1 -0
  136. package/extensions/channels/phone_channel/entry.py +503 -0
  137. package/extensions/channels/phone_channel/module.md +31 -0
  138. package/extensions/channels/phone_channel/server.py +686 -0
  139. package/extensions/event_hub_bench/entry.py +55 -12
  140. package/extensions/event_hub_bench/module.md +27 -27
  141. package/extensions/services/audit/README.md +134 -0
  142. package/extensions/services/audit/collector.py +73 -0
  143. package/extensions/services/audit/entry.py +444 -0
  144. package/extensions/services/audit/module.md +66 -0
  145. package/extensions/services/audit/query_audit.py +111 -0
  146. package/extensions/services/audit/routes/__init__.py +1 -0
  147. package/extensions/services/audit/routes/routes_audit.py +113 -0
  148. package/extensions/services/audit/schemas/__init__.py +5 -0
  149. package/extensions/services/audit/schemas/audit_event.py +92 -0
  150. package/extensions/services/audit/server.py +542 -0
  151. package/extensions/services/audit/storage.py +95 -0
  152. package/extensions/services/auth/entry.py +1054 -0
  153. package/extensions/services/auth/module.md +31 -0
  154. package/extensions/services/auth/token_store.py +185 -0
  155. package/extensions/services/auth/verifiers/evol_account.py +101 -0
  156. package/extensions/services/auth/verifiers/kite_token.py +38 -0
  157. package/extensions/services/auth/verifiers/pairing_code.py +71 -0
  158. package/extensions/services/backup/entry.py +505 -201
  159. package/extensions/services/backup/module.md +4 -2
  160. package/extensions/services/dataclaw/api/__init__.py +0 -0
  161. package/extensions/services/dataclaw/api/admin.py +367 -0
  162. package/extensions/services/dataclaw/api/copyright.py +175 -0
  163. package/extensions/services/dataclaw/api/credits.py +177 -0
  164. package/extensions/services/dataclaw/api/data.py +179 -0
  165. package/extensions/services/dataclaw/api/demands.py +269 -0
  166. package/extensions/services/dataclaw/api/feeds.py +262 -0
  167. package/extensions/services/dataclaw/api/identity.py +505 -0
  168. package/extensions/services/dataclaw/api/notifications.py +104 -0
  169. package/extensions/services/dataclaw/api/reviews.py +138 -0
  170. package/extensions/services/dataclaw/api/search.py +153 -0
  171. package/extensions/services/dataclaw/api/subscriptions.py +157 -0
  172. package/extensions/services/dataclaw/config.json5 +96 -0
  173. package/extensions/services/dataclaw/core/__init__.py +0 -0
  174. package/extensions/services/dataclaw/core/auth.py +95 -0
  175. package/extensions/services/dataclaw/core/config.py +50 -0
  176. package/extensions/services/dataclaw/core/database.py +70 -0
  177. package/extensions/services/dataclaw/entry.py +416 -0
  178. package/extensions/services/dataclaw/gofeed/351/241/271/347/233/256/346/211/200/346/234/211/346/235/203/350/275/254/347/247/273/346/265/201/347/250/213/350/257/264/346/230/216.md +309 -0
  179. package/extensions/services/dataclaw/migrate.py +283 -0
  180. package/extensions/services/dataclaw/models/__init__.py +0 -0
  181. package/extensions/services/dataclaw/module.md +49 -0
  182. package/extensions/services/dataclaw/requirements.txt +18 -0
  183. package/extensions/services/dataclaw/server.py +759 -0
  184. package/extensions/services/dataclaw/services/__init__.py +0 -0
  185. package/extensions/services/dataclaw/services/agent_service.py +132 -0
  186. package/extensions/services/dataclaw/services/credit_service.py +235 -0
  187. package/extensions/services/dataclaw/services/email_service.py +140 -0
  188. package/extensions/services/dataclaw/services/feed_service.py +259 -0
  189. package/extensions/services/dataclaw/services/notification_service.py +209 -0
  190. package/extensions/services/dataclaw/services/oauth_service.py +275 -0
  191. package/extensions/services/dataclaw/services/pricing.py +102 -0
  192. package/extensions/services/dataclaw/services/quality.py +79 -0
  193. package/extensions/services/dataclaw/services/reputation.py +142 -0
  194. package/extensions/services/dataclaw/services/sms_service.py +174 -0
  195. package/extensions/services/dataclaw/static/css/common.css +853 -0
  196. package/extensions/services/dataclaw/static/css/themes/blue.css +42 -0
  197. package/extensions/services/dataclaw/static/css/themes/dark.css +42 -0
  198. package/extensions/services/dataclaw/static/css/themes/light.css +35 -0
  199. package/extensions/services/dataclaw/static/js/api.js +103 -0
  200. package/extensions/services/dataclaw/static/js/common.js +321 -0
  201. package/extensions/services/dataclaw/static/js/i18n.js +95 -0
  202. package/extensions/services/dataclaw/static/js/pages/admin.js +152 -0
  203. package/extensions/services/dataclaw/static/js/pages/dashboard.js +82 -0
  204. package/extensions/services/dataclaw/static/js/pages/feed-detail.js +180 -0
  205. package/extensions/services/dataclaw/static/js/pages/feed-manage.js +158 -0
  206. package/extensions/services/dataclaw/static/js/theme.js +46 -0
  207. package/extensions/services/dataclaw/static/locales/en-US.json +464 -0
  208. package/extensions/services/dataclaw/static/locales/ja-JP.json +464 -0
  209. package/extensions/services/dataclaw/static/locales/zh-CN.json +464 -0
  210. package/extensions/services/dataclaw/templates/admin/index.html +90 -0
  211. package/extensions/services/dataclaw/templates/base.html +136 -0
  212. package/extensions/services/dataclaw/templates/credits/balance.html +106 -0
  213. package/extensions/services/dataclaw/templates/credits/deposit.html +164 -0
  214. package/extensions/services/dataclaw/templates/credits/history.html +90 -0
  215. package/extensions/services/dataclaw/templates/dashboard.html +52 -0
  216. package/extensions/services/dataclaw/templates/demands/create.html +78 -0
  217. package/extensions/services/dataclaw/templates/demands/detail.html +136 -0
  218. package/extensions/services/dataclaw/templates/demands/list.html +94 -0
  219. package/extensions/services/dataclaw/templates/feeds/create.html +95 -0
  220. package/extensions/services/dataclaw/templates/feeds/detail.html +110 -0
  221. package/extensions/services/dataclaw/templates/feeds/list.html +110 -0
  222. package/extensions/services/dataclaw/templates/feeds/manage.html +88 -0
  223. package/extensions/services/dataclaw/templates/index.html +185 -0
  224. package/extensions/services/dataclaw/templates/login.html +246 -0
  225. package/extensions/services/dataclaw/templates/register.html +164 -0
  226. package/extensions/services/dataclaw/templates/settings/notifications.html +96 -0
  227. package/extensions/services/dataclaw/templates/settings/profile.html +167 -0
  228. package/extensions/services/dataclaw/templates/subscriptions/list.html +64 -0
  229. package/extensions/services/dataclaw/tests/__init__.py +0 -0
  230. package/extensions/services/dataclaw/tests/conftest.py +68 -0
  231. package/extensions/services/dataclaw/tests/integration/__init__.py +0 -0
  232. package/extensions/services/dataclaw/tests/integration/test_workflows.py +239 -0
  233. package/extensions/services/dataclaw/tests/unit/__init__.py +0 -0
  234. package/extensions/services/dataclaw/tests/unit/test_admin.py +70 -0
  235. package/extensions/services/dataclaw/tests/unit/test_copyright.py +63 -0
  236. package/extensions/services/dataclaw/tests/unit/test_credits.py +80 -0
  237. package/extensions/services/dataclaw/tests/unit/test_data.py +98 -0
  238. package/extensions/services/dataclaw/tests/unit/test_demands.py +106 -0
  239. package/extensions/services/dataclaw/tests/unit/test_feeds.py +98 -0
  240. package/extensions/services/dataclaw/tests/unit/test_identity.py +88 -0
  241. package/extensions/services/dataclaw/tests/unit/test_notifications.py +36 -0
  242. package/extensions/services/dataclaw/tests/unit/test_reviews.py +68 -0
  243. package/extensions/services/dataclaw/tests/unit/test_search.py +64 -0
  244. package/extensions/services/dataclaw/tests/unit/test_subscriptions.py +65 -0
  245. package/extensions/services/dataclaw/tests/unit/test_system.py +106 -0
  246. package/extensions/services/dataclaw/utils/__init__.py +0 -0
  247. package/extensions/services/dataclaw/utils/crypto.py +38 -0
  248. package/extensions/services/dataclaw/utils/id_generator.py +52 -0
  249. package/extensions/services/dataclaw/ws/__init__.py +0 -0
  250. package/extensions/services/dataclaw/ws/handler.py +163 -0
  251. package/extensions/services/dataclaw//345/215/217/350/256/2561-/351/241/271/347/233/256/346/235/241/344/273/266/346/216/210/346/235/203/344/270/216/350/202/241/346/235/203/345/257/271/344/273/267/345/215/217/350/256/256.md +243 -0
  252. package/extensions/services/dataclaw//345/215/217/350/256/2562-/351/241/271/347/233/256/350/264/255/344/271/260/346/235/203/344/270/216/345/244/226/345/214/205/345/247/224/346/211/230/345/274/200/345/217/221/345/215/217/350/256/256.md +434 -0
  253. package/extensions/services/evol/__init__.py +1 -0
  254. package/extensions/services/evol/async_http.py +551 -0
  255. package/extensions/services/evol/auth_manager.py +602 -0
  256. package/extensions/services/evol/config.json5 +16 -0
  257. package/extensions/services/evol/config_loader.py +117 -0
  258. package/extensions/services/evol/entry.py +568 -0
  259. package/extensions/services/evol/evol_api.py +969 -0
  260. package/extensions/services/evol/evol_config.json5 +29 -0
  261. package/extensions/services/evol/mfa_totp.py +77 -0
  262. package/extensions/services/evol/migrate_tokens.py +122 -0
  263. package/extensions/services/evol/module.md +150 -0
  264. package/extensions/services/evol/nonce_pool.py +113 -0
  265. package/extensions/services/evol/oauth_manager.py +223 -0
  266. package/extensions/services/evol/pairing.py +251 -0
  267. package/extensions/services/evol/pairing_codes.jsonl +2 -0
  268. package/extensions/services/evol/relay.py +1031 -0
  269. package/extensions/services/evol/relay_config.json5 +85 -0
  270. package/extensions/services/evol/routes/__init__.py +1 -0
  271. package/extensions/services/evol/routes/routes_llm.py +231 -0
  272. package/extensions/services/evol/routes/routes_rpc.py +90 -0
  273. package/extensions/services/evol/routes/routes_test.py +68 -0
  274. package/extensions/services/evol/server.py +2426 -0
  275. package/extensions/services/evol/static/assets/CommissionView-Cs_ys6Gm.js +1 -0
  276. package/extensions/services/evol/static/assets/CommissionView-DACet_Oo.css +1 -0
  277. package/extensions/services/evol/static/assets/IframePage-DbO11U9G.js +1 -0
  278. package/extensions/services/evol/static/assets/IframePage-c572lT8i.css +1 -0
  279. package/extensions/services/evol/static/assets/TeamDetailView-DULrGD7k.css +1 -0
  280. package/extensions/services/evol/static/assets/TeamDetailView-gy_MBEqG.js +139 -0
  281. package/extensions/services/evol/static/assets/element-plus-Bd7pZkkM.js +63 -0
  282. package/extensions/services/evol/static/assets/index-CmMONKzG.css +1 -0
  283. package/extensions/services/evol/static/assets/index-D44bBe__.js +2 -0
  284. package/extensions/services/evol/static/assets/vue-vendor-DtF-__I4.js +29 -0
  285. package/extensions/services/evol/static/index.html +16 -0
  286. package/extensions/services/evol/static/logo.png +0 -0
  287. package/extensions/services/evol/stats_manager.py +243 -0
  288. package/extensions/services/evol/web/README.md +89 -0
  289. package/extensions/services/evol/web/build.bat +44 -0
  290. package/extensions/services/evol/web/index.html +13 -0
  291. package/extensions/services/evol/web/package-lock.json +1718 -0
  292. package/extensions/services/evol/web/package.json +26 -0
  293. package/extensions/services/evol/web/public/logo.png +0 -0
  294. package/extensions/services/evol/web/src/App.vue +7 -0
  295. package/extensions/services/evol/web/src/components/layout/AppHeader.vue +202 -0
  296. package/extensions/services/evol/web/src/components/layout/AppLayout.vue +61 -0
  297. package/extensions/services/evol/web/src/components/layout/AppSidebar.vue +115 -0
  298. package/extensions/services/evol/web/src/components/login/LoginPage.vue +271 -0
  299. package/extensions/services/evol/web/src/components/team/AddMemberModal.vue +181 -0
  300. package/extensions/services/evol/web/src/components/team/GroupTreeNode.vue +156 -0
  301. package/extensions/services/evol/web/src/components/team/TeamAlertConfig.vue +221 -0
  302. package/extensions/services/evol/web/src/components/team/TeamBillModal.vue +165 -0
  303. package/extensions/services/evol/web/src/components/team/TeamMembersAndGroups.vue +499 -0
  304. package/extensions/services/evol/web/src/components/team/TeamStatsPanel.vue +907 -0
  305. package/extensions/services/evol/web/src/components/team/TreeNode.vue +331 -0
  306. package/extensions/services/evol/web/src/components/team/stats/StatsExportProgress.vue +44 -0
  307. package/extensions/services/evol/web/src/components/team/stats/StatsHeader.vue +89 -0
  308. package/extensions/services/evol/web/src/components/team/stats/StatsMemberDetail.vue +415 -0
  309. package/extensions/services/evol/web/src/components/team/stats/StatsSummary.vue +42 -0
  310. package/extensions/services/evol/web/src/components/team/stats/helpers.ts +195 -0
  311. package/extensions/services/evol/web/src/components/team/stats/stats.css +741 -0
  312. package/extensions/services/evol/web/src/components/team/stats/useStatsApi.ts +114 -0
  313. package/extensions/services/evol/web/src/components/team/stats/useStatsCharts.ts +242 -0
  314. package/extensions/services/evol/web/src/components/team/stats/useStatsExport.ts +232 -0
  315. package/extensions/services/evol/web/src/composables/useFormatters.ts +42 -0
  316. package/extensions/services/evol/web/src/composables/useTheme.ts +52 -0
  317. package/extensions/services/evol/web/src/env.d.ts +7 -0
  318. package/extensions/services/evol/web/src/i18n/en.ts +361 -0
  319. package/extensions/services/evol/web/src/i18n/index.ts +36 -0
  320. package/extensions/services/evol/web/src/i18n/zh.ts +379 -0
  321. package/extensions/services/evol/web/src/main.ts +21 -0
  322. package/extensions/services/evol/web/src/router/index.ts +81 -0
  323. package/extensions/services/evol/web/src/services/kernel-client.ts +406 -0
  324. package/extensions/services/evol/web/src/stores/auth.ts +189 -0
  325. package/extensions/services/evol/web/src/stores/connection.ts +134 -0
  326. package/extensions/services/evol/web/src/stores/pages.ts +79 -0
  327. package/extensions/services/evol/web/src/styles/base.css +213 -0
  328. package/extensions/services/evol/web/src/styles/variables.css +138 -0
  329. package/extensions/services/evol/web/src/types/rpc.ts +35 -0
  330. package/extensions/services/evol/web/src/types/token.ts +87 -0
  331. package/extensions/services/evol/web/src/views/AccountView.vue +1532 -0
  332. package/extensions/services/evol/web/src/views/AiServiceView.vue +219 -0
  333. package/extensions/services/evol/web/src/views/CommissionView.vue +1220 -0
  334. package/extensions/services/evol/web/src/views/CreditsView.vue +131 -0
  335. package/extensions/services/evol/web/src/views/EndpointView.vue +163 -0
  336. package/extensions/services/evol/web/src/views/IframePage.vue +120 -0
  337. package/extensions/services/evol/web/src/views/TeamDetailView.vue +473 -0
  338. package/extensions/services/evol/web/src/views/TeamView.vue +332 -0
  339. package/extensions/services/evol/web/tsconfig.json +31 -0
  340. package/extensions/services/evol/web/tsconfig.node.json +10 -0
  341. package/extensions/services/evol/web/vite.config.ts +49 -0
  342. package/extensions/services/evolmem/__init__.py +0 -0
  343. package/extensions/services/evolmem/entry.py +387 -0
  344. package/extensions/services/evolmem/hooks/__init__.py +0 -0
  345. package/extensions/services/evolmem/hooks/assistant_stop.py +228 -0
  346. package/extensions/services/evolmem/hooks/common.py +76 -0
  347. package/extensions/services/evolmem/hooks/pre_tool_use.py +56 -0
  348. package/extensions/services/evolmem/hooks/session_end.py +133 -0
  349. package/extensions/services/evolmem/hooks/session_start.py +229 -0
  350. package/extensions/services/evolmem/hooks/user_prompt.py +122 -0
  351. package/extensions/services/evolmem/module.md +48 -0
  352. package/extensions/services/evolmem/prompts/00-server-info.md +28 -0
  353. package/extensions/services/evolmem/prompts/01-behavior.md +46 -0
  354. package/extensions/services/evolmem/prompts/02-summary-format.md +112 -0
  355. package/extensions/services/evolmem/prompts/03-file-query.md +92 -0
  356. package/extensions/services/evolmem/prompts/04-topic-stats.md +11 -0
  357. package/extensions/services/evolmem/prompts/05-recent-topics.md +84 -0
  358. package/extensions/services/evolmem/scripts/__init__.py +0 -0
  359. package/extensions/services/evolmem/scripts/extract_keywords.py +40 -0
  360. package/extensions/services/evolmem/scripts/search_topics.py +91 -0
  361. package/extensions/services/evolmem/server.py +641 -0
  362. package/extensions/services/gateway/entry.py +964 -0
  363. package/extensions/services/gateway/module.md +29 -0
  364. package/extensions/services/gateway/nonce_pool.py +65 -0
  365. package/extensions/services/gateway/relay.py +133 -0
  366. package/extensions/services/gateway/ws_server.py +285 -0
  367. package/extensions/services/kite_console/auth_manager.py +603 -0
  368. package/extensions/services/kite_console/config.json5 +19 -0
  369. package/extensions/services/kite_console/config_loader.py +117 -0
  370. package/extensions/services/kite_console/entry.py +528 -0
  371. package/extensions/services/kite_console/evol_api.py +179 -0
  372. package/extensions/services/kite_console/evol_config.json5 +29 -0
  373. package/extensions/services/kite_console/mfa_totp.py +77 -0
  374. package/extensions/services/kite_console/migrate_tokens.py +122 -0
  375. package/extensions/services/kite_console/module.md +37 -0
  376. package/extensions/services/kite_console/nonce_pool.py +113 -0
  377. package/extensions/services/kite_console/oauth_manager.py +223 -0
  378. package/extensions/services/kite_console/pairing.py +280 -0
  379. package/extensions/services/kite_console/pairing_codes.jsonl +2 -0
  380. package/extensions/services/kite_console/relay.py +1350 -0
  381. package/extensions/services/kite_console/relay_config.json5 +96 -0
  382. package/extensions/services/kite_console/routes/__init__.py +1 -0
  383. package/extensions/services/kite_console/routes/routes_llm.py +231 -0
  384. package/extensions/services/kite_console/routes/routes_proxy.py +115 -0
  385. package/extensions/services/kite_console/routes/routes_rpc.py +89 -0
  386. package/extensions/services/kite_console/routes/routes_test.py +68 -0
  387. package/extensions/services/kite_console/server.py +1742 -0
  388. package/extensions/services/kite_console/static/css/style.css +1854 -0
  389. package/extensions/services/kite_console/static/index.html +1524 -0
  390. package/extensions/services/kite_console/static/js/dialog.js +292 -0
  391. package/extensions/services/kite_console/static/js/evol-app.js +7740 -0
  392. package/extensions/services/kite_console/static/js/evol-app.js.backup +2777 -0
  393. package/extensions/services/kite_console/static/js/kernel-client.js +560 -0
  394. package/extensions/services/kite_console/static/js/kernel-client.js.backup +434 -0
  395. package/extensions/services/kite_console/static/js/registry-tests.js +592 -0
  396. package/extensions/services/kite_console/static/js/tests/ARCHITECTURE.md +67 -0
  397. package/extensions/services/kite_console/static/js/tests/README.md +140 -0
  398. package/extensions/services/kite_console/static/js/tests/index.js +161 -0
  399. package/extensions/services/kite_console/static/js/tests/integration/auth.js +120 -0
  400. package/extensions/services/kite_console/static/js/tests/integration/channel-interaction.js +188 -0
  401. package/extensions/services/kite_console/static/js/tests/integration/elastic-connection.js +115 -0
  402. package/extensions/services/kite_console/static/js/tests/integration/full-workflow.js +43 -0
  403. package/extensions/services/kite_console/static/js/tests/integration/multi-instance.js +304 -0
  404. package/extensions/services/kite_console/static/js/tests/integration/nested-rpc.js +266 -0
  405. package/extensions/services/kite_console/static/js/tests/integration/pingpong.js +25 -0
  406. package/extensions/services/kite_console/static/js/tests/integration/redis.js +227 -0
  407. package/extensions/services/kite_console/static/js/tests/integration/registry-core.js +52 -0
  408. package/extensions/services/kite_console/static/js/tests/integration/remote-deploy.js +85 -0
  409. package/extensions/services/kite_console/static/js/tests/integration/require-init.js +96 -0
  410. package/extensions/services/kite_console/static/js/tests/integration/scaling-control.js +193 -0
  411. package/extensions/services/kite_console/static/js/tests/integration/trace.js +109 -0
  412. package/extensions/services/kite_console/static/js/tests/modules/acp_channel.js +339 -0
  413. package/extensions/services/kite_console/static/js/tests/modules/auth.js +96 -0
  414. package/extensions/services/kite_console/static/js/tests/modules/backup.js +49 -0
  415. package/extensions/services/kite_console/static/js/tests/modules/gateway.js +41 -0
  416. package/extensions/services/kite_console/static/js/tests/modules/kernel.js +90 -0
  417. package/extensions/services/kite_console/static/js/tests/modules/launcher.js +75 -0
  418. package/extensions/services/kite_console/static/js/tests/modules/multi_instance.js +129 -0
  419. package/extensions/services/kite_console/static/js/tests/modules/phone_channel.js +364 -0
  420. package/extensions/services/kite_console/static/js/tests/modules/redis.js +178 -0
  421. package/extensions/services/kite_console/static/js/tests/modules/watchdog.js +60 -0
  422. package/extensions/services/kite_console/static/js/tests/modules/web.js +70 -0
  423. package/extensions/services/kite_console/static/js/tests/test-runner.js +123 -0
  424. package/extensions/services/kite_console/static/js/virtual-list.js +200 -0
  425. package/extensions/services/kite_console/static/pairing.html +248 -0
  426. package/extensions/services/kite_console/static/test_kernel_client_token.html +352 -0
  427. package/extensions/services/kite_console/static/test_registry.html +262 -0
  428. package/extensions/services/kite_console/static/test_relay.html +462 -0
  429. package/extensions/services/kite_console/stats_manager.py +247 -0
  430. package/extensions/services/logs/README.md +215 -0
  431. package/extensions/services/logs/api_logger.py +37 -0
  432. package/extensions/services/logs/baseline.py +121 -0
  433. package/extensions/services/logs/cleaner.py +76 -0
  434. package/extensions/services/logs/entry.py +449 -0
  435. package/extensions/services/logs/formatter.py +129 -0
  436. package/extensions/services/logs/module.md +38 -0
  437. package/extensions/services/logs/quick_diagnostic.py +128 -0
  438. package/extensions/services/logs/routes/__init__.py +1 -0
  439. package/extensions/services/logs/routes/routes_logs.py +218 -0
  440. package/extensions/services/logs/routes/routes_logs.py.backup +173 -0
  441. package/extensions/services/logs/scanner.py +100 -0
  442. package/extensions/services/logs/searcher.py +263 -0
  443. package/extensions/services/logs/server.py +553 -0
  444. package/extensions/services/logs.zip +0 -0
  445. package/extensions/services/model_service/config.json5 +30 -0
  446. package/extensions/services/model_service/entry.py +633 -162
  447. package/extensions/services/model_service/module.md +11 -2
  448. package/extensions/services/proxy/.claude/settings.local.json +13 -0
  449. package/extensions/services/proxy/__init__.py +0 -0
  450. package/extensions/services/proxy/agentcp/LICENCE +178 -0
  451. package/extensions/services/proxy/agentcp/README copy.md +85 -0
  452. package/extensions/services/proxy/agentcp/README.md +260 -0
  453. package/extensions/services/proxy/agentcp/__init__.py +16 -0
  454. package/extensions/services/proxy/agentcp/agent.py +4 -0
  455. package/extensions/services/proxy/agentcp/agentcp.py +2494 -0
  456. package/extensions/services/proxy/agentcp/agentprofile.json +89 -0
  457. package/extensions/services/proxy/agentcp/ap/__init__.py +16 -0
  458. package/extensions/services/proxy/agentcp/ap/ap_client.py +316 -0
  459. package/extensions/services/proxy/agentcp/assets/images/wechat_qr.png +0 -0
  460. package/extensions/services/proxy/agentcp/backup/metrics.json +31 -0
  461. package/extensions/services/proxy/agentcp/base/__init__.py +20 -0
  462. package/extensions/services/proxy/agentcp/base/auth_client.py +257 -0
  463. package/extensions/services/proxy/agentcp/base/client.py +112 -0
  464. package/extensions/services/proxy/agentcp/base/env.py +34 -0
  465. package/extensions/services/proxy/agentcp/base/html_util.py +336 -0
  466. package/extensions/services/proxy/agentcp/base/log.py +98 -0
  467. package/extensions/services/proxy/agentcp/ca/__init__.py +17 -0
  468. package/extensions/services/proxy/agentcp/ca/ca_client.py +414 -0
  469. package/extensions/services/proxy/agentcp/ca/ca_root.py +74 -0
  470. package/extensions/services/proxy/agentcp/context/__init__.py +20 -0
  471. package/extensions/services/proxy/agentcp/context/context.py +73 -0
  472. package/extensions/services/proxy/agentcp/context/exceptions.py +114 -0
  473. package/extensions/services/proxy/agentcp/create_profile.py +125 -0
  474. package/extensions/services/proxy/agentcp/create_profile_weather.py +125 -0
  475. package/extensions/services/proxy/agentcp/db/__init__.py +15 -0
  476. package/extensions/services/proxy/agentcp/db/db_mananger.py +550 -0
  477. package/extensions/services/proxy/agentcp/docs/UDP_HEARTBEAT_FIX_REPORT.md +265 -0
  478. package/extensions/services/proxy/agentcp/docs/heartbeat_issue_analysis.md +291 -0
  479. package/extensions/services/proxy/agentcp/file/__init__.py +16 -0
  480. package/extensions/services/proxy/agentcp/file/file_client.py +141 -0
  481. package/extensions/services/proxy/agentcp/file/wss_binary_message.py +137 -0
  482. package/extensions/services/proxy/agentcp/hcp.py +299 -0
  483. package/extensions/services/proxy/agentcp/heartbeat/__init__.py +16 -0
  484. package/extensions/services/proxy/agentcp/heartbeat/heartbeat_client.py +360 -0
  485. package/extensions/services/proxy/agentcp/improved_scheduler.py +498 -0
  486. package/extensions/services/proxy/agentcp/llm_agent_utils.py +249 -0
  487. package/extensions/services/proxy/agentcp/llm_server.py +172 -0
  488. package/extensions/services/proxy/agentcp/mermaid.py +210 -0
  489. package/extensions/services/proxy/agentcp/message.py +149 -0
  490. package/extensions/services/proxy/agentcp/metrics.py +256 -0
  491. package/extensions/services/proxy/agentcp/monitoring/__init__.py +20 -0
  492. package/extensions/services/proxy/agentcp/monitoring/global_monitor.py +27 -0
  493. package/extensions/services/proxy/agentcp/monitoring/metrics_store.py +325 -0
  494. package/extensions/services/proxy/agentcp/monitoring/monitoring_service.py +269 -0
  495. package/extensions/services/proxy/agentcp/monitoring/sliding_window.py +222 -0
  496. package/extensions/services/proxy/agentcp/monitoring/standalone_reader.py +224 -0
  497. package/extensions/services/proxy/agentcp/msg/__init__.py +21 -0
  498. package/extensions/services/proxy/agentcp/msg/connection_manager.py +456 -0
  499. package/extensions/services/proxy/agentcp/msg/message_client.py +2058 -0
  500. package/extensions/services/proxy/agentcp/msg/message_serialize.py +263 -0
  501. package/extensions/services/proxy/agentcp/msg/open_ai_message.py +88 -0
  502. package/extensions/services/proxy/agentcp/msg/session_manager.py +1062 -0
  503. package/extensions/services/proxy/agentcp/msg/stream_client.py +267 -0
  504. package/extensions/services/proxy/agentcp/msg/websocket_file_receiver.py +89 -0
  505. package/extensions/services/proxy/agentcp/msg/ws_logger.py +685 -0
  506. package/extensions/services/proxy/agentcp/msg/wss_binary_message.py +137 -0
  507. package/extensions/services/proxy/agentcp/requirements.txt +7 -0
  508. package/extensions/services/proxy/agentcp/samples/agent_graph/README.md +37 -0
  509. package/extensions/services/proxy/agentcp/samples/agent_graph/agentprofile.json +89 -0
  510. package/extensions/services/proxy/agentcp/samples/agent_graph/create_profile.py +138 -0
  511. package/extensions/services/proxy/agentcp/samples/agent_graph/main.py +164 -0
  512. package/extensions/services/proxy/agentcp/samples/agent_use/create_profile.py +123 -0
  513. package/extensions/services/proxy/agentcp/samples/agent_use/llm/create_profile.py +129 -0
  514. package/extensions/services/proxy/agentcp/samples/agent_use/llm/env.json +5 -0
  515. package/extensions/services/proxy/agentcp/samples/agent_use/llm/main.py +146 -0
  516. package/extensions/services/proxy/agentcp/samples/agent_use/main.py +123 -0
  517. package/extensions/services/proxy/agentcp/samples/agent_use/readme.md +379 -0
  518. package/extensions/services/proxy/agentcp/samples/agent_use/search/create_profile.py +129 -0
  519. package/extensions/services/proxy/agentcp/samples/agent_use/search/main.py +28 -0
  520. package/extensions/services/proxy/agentcp/samples/agent_use/tool/create_profile.py +129 -0
  521. package/extensions/services/proxy/agentcp/samples/agent_use/tool/main.py +20 -0
  522. package/extensions/services/proxy/agentcp/samples/ali_amap/README.md +97 -0
  523. package/extensions/services/proxy/agentcp/samples/ali_amap/amap_agent.py +88 -0
  524. package/extensions/services/proxy/agentcp/samples/ali_amap/create_profile.py +125 -0
  525. package/extensions/services/proxy/agentcp/samples/compute_agent/agent/powershell.py +228 -0
  526. package/extensions/services/proxy/agentcp/samples/compute_agent/agent/software.py +63 -0
  527. package/extensions/services/proxy/agentcp/samples/compute_agent/agent/tools.py +36 -0
  528. package/extensions/services/proxy/agentcp/samples/compute_agent/browser_user.py +41 -0
  529. package/extensions/services/proxy/agentcp/samples/deepseek/README.md +79 -0
  530. package/extensions/services/proxy/agentcp/samples/deepseek/create_profile.py +126 -0
  531. package/extensions/services/proxy/agentcp/samples/deepseek/deepseek.py +42 -0
  532. package/extensions/services/proxy/agentcp/samples/dify_chat/README.md +78 -0
  533. package/extensions/services/proxy/agentcp/samples/dify_chat/create_profile.py +126 -0
  534. package/extensions/services/proxy/agentcp/samples/dify_chat/dify_chat.py +47 -0
  535. package/extensions/services/proxy/agentcp/samples/dify_workflow/README.md +78 -0
  536. package/extensions/services/proxy/agentcp/samples/dify_workflow/create_profile.py +126 -0
  537. package/extensions/services/proxy/agentcp/samples/dify_workflow/dify_workflow.py +46 -0
  538. package/extensions/services/proxy/agentcp/samples/executor/README.md +44 -0
  539. package/extensions/services/proxy/agentcp/samples/executor/agentprofile.json +89 -0
  540. package/extensions/services/proxy/agentcp/samples/executor/create_profile.py +139 -0
  541. package/extensions/services/proxy/agentcp/samples/executor/main.py +160 -0
  542. package/extensions/services/proxy/agentcp/samples/filereader/README.md +45 -0
  543. package/extensions/services/proxy/agentcp/samples/filereader/agentprofile.json +90 -0
  544. package/extensions/services/proxy/agentcp/samples/filereader/create_profile.py +137 -0
  545. package/extensions/services/proxy/agentcp/samples/filereader/main.py +253 -0
  546. package/extensions/services/proxy/agentcp/samples/filewriter/README.md +38 -0
  547. package/extensions/services/proxy/agentcp/samples/filewriter/agentprofile.json +91 -0
  548. package/extensions/services/proxy/agentcp/samples/filewriter/create_profile.py +138 -0
  549. package/extensions/services/proxy/agentcp/samples/filewriter/main.py +289 -0
  550. package/extensions/services/proxy/agentcp/samples/hcp/README.md +85 -0
  551. package/extensions/services/proxy/agentcp/samples/hcp/acp_weather_agent.zip +0 -0
  552. package/extensions/services/proxy/agentcp/samples/hcp/create_profile.py +125 -0
  553. package/extensions/services/proxy/agentcp/samples/hcp/hcp.py +237 -0
  554. package/extensions/services/proxy/agentcp/samples/helloworld/README.md +68 -0
  555. package/extensions/services/proxy/agentcp/samples/helloworld/hello_world.py +40 -0
  556. package/extensions/services/proxy/agentcp/samples/llm_agent/MEADME.md +117 -0
  557. package/extensions/services/proxy/agentcp/samples/llm_agent/create_profile.py +125 -0
  558. package/extensions/services/proxy/agentcp/samples/llm_agent/qwen_agent.py +136 -0
  559. package/extensions/services/proxy/agentcp/samples/local_llm_agent/README.md +90 -0
  560. package/extensions/services/proxy/agentcp/samples/local_llm_agent/create_profile.py +125 -0
  561. package/extensions/services/proxy/agentcp/samples/local_llm_agent/main.py +49 -0
  562. package/extensions/services/proxy/agentcp/samples/query_llm_from_agent/README.md +55 -0
  563. package/extensions/services/proxy/agentcp/samples/query_llm_from_agent/create_profile.py +125 -0
  564. package/extensions/services/proxy/agentcp/samples/query_llm_from_agent/main.py +23 -0
  565. package/extensions/services/proxy/agentcp/samples/query_weather_api_agent/README.md +103 -0
  566. package/extensions/services/proxy/agentcp/samples/query_weather_api_agent/create_profile.py +125 -0
  567. package/extensions/services/proxy/agentcp/samples/query_weather_api_agent/main.py +69 -0
  568. package/extensions/services/proxy/agentcp/samples/query_weather_from_agent/README.md +58 -0
  569. package/extensions/services/proxy/agentcp/samples/query_weather_from_agent/create_profile.py +125 -0
  570. package/extensions/services/proxy/agentcp/samples/query_weather_from_agent/main.py +25 -0
  571. package/extensions/services/proxy/agentcp/samples/qwen3/README.md +71 -0
  572. package/extensions/services/proxy/agentcp/samples/qwen3/create_profile.py +126 -0
  573. package/extensions/services/proxy/agentcp/samples/qwen3/qwen3.py +37 -0
  574. package/extensions/services/proxy/agentcp/samples/qwen3_tools/README.md +133 -0
  575. package/extensions/services/proxy/agentcp/samples/qwen3_tools/create_profile.py +126 -0
  576. package/extensions/services/proxy/agentcp/samples/qwen3_tools/qwen3_tools.py +98 -0
  577. package/extensions/services/proxy/agentcp/samples/search/create_profile_qwen.py +125 -0
  578. package/extensions/services/proxy/agentcp/samples/search/create_profile_search.py +125 -0
  579. package/extensions/services/proxy/agentcp/samples/search/qwen_agent.py +136 -0
  580. package/extensions/services/proxy/agentcp/samples/search/search_agent.py +170 -0
  581. package/extensions/services/proxy/agentcp/samples/wrapper_agently_to_agent/README.md +89 -0
  582. package/extensions/services/proxy/agentcp/samples/wrapper_agently_to_agent/create_profile.py +125 -0
  583. package/extensions/services/proxy/agentcp/samples/wrapper_agently_to_agent/main.py +44 -0
  584. package/extensions/services/proxy/agentcp/utils/__init__.py +15 -0
  585. package/extensions/services/proxy/agentcp/utils/file_util.py +117 -0
  586. package/extensions/services/proxy/agentcp/utils/proxy_bypass.py +99 -0
  587. package/extensions/services/proxy/agentcp/workflow.py +203 -0
  588. package/extensions/services/proxy/aid_manager.py +419 -0
  589. package/extensions/services/proxy/auth_bridge.py +182 -0
  590. package/extensions/services/proxy/config_store.py +79 -0
  591. package/extensions/services/proxy/entry.py +528 -0
  592. package/extensions/services/proxy/evol/__init__.py +1 -0
  593. package/extensions/services/proxy/evol/config.py +37 -0
  594. package/extensions/services/proxy/evol/http/__init__.py +1 -0
  595. package/extensions/services/proxy/evol/http/async_http.py +551 -0
  596. package/extensions/services/proxy/evol/log.py +28 -0
  597. package/extensions/services/proxy/evol/presenter/__init__.py +2 -0
  598. package/extensions/services/proxy/evol/presenter/agentIdPresenter.py +1031 -0
  599. package/extensions/services/proxy/evol/presenter/apikeyPresenter.py +96 -0
  600. package/extensions/services/proxy/evol/presenter/configPresenter.py +234 -0
  601. package/extensions/services/proxy/evol/presenter/userPresenter.py +71 -0
  602. package/extensions/services/proxy/evol/server/__init__.py +1 -0
  603. package/extensions/services/proxy/evol/server/claude_proxy_async.py +3434 -0
  604. package/extensions/services/proxy/evol/server/openclaw_proxy.py +1861 -0
  605. package/extensions/services/proxy/evol/server/proxy_config.py +15 -0
  606. package/extensions/services/proxy/evol/server/proxy_engine.py +501 -0
  607. package/extensions/services/proxy/evol/version.py +24 -0
  608. package/extensions/services/proxy/module.md +151 -0
  609. package/extensions/services/proxy/server.py +952 -0
  610. package/extensions/services/redis/ALIGNMENT_CHECKLIST.md +121 -0
  611. package/extensions/services/redis/ALIGNMENT_STATUS.md +548 -0
  612. package/extensions/services/redis/config.json5 +8 -0
  613. package/extensions/services/redis/entry.py +1509 -0
  614. package/extensions/services/redis/entry.py.backup +405 -0
  615. package/extensions/services/redis/module.md +48 -0
  616. package/extensions/services/redis/redis_builtin.py +332 -0
  617. package/extensions/services/redis/redis_external.py +164 -0
  618. package/extensions/services/testUi/entry.py +446 -0
  619. package/extensions/services/testUi/module.md +18 -0
  620. package/extensions/services/testUi/ui/cards.html +131 -0
  621. package/extensions/services/testUi/ui/index.html +22 -0
  622. package/extensions/services/testUi/ui/particles.html +143 -0
  623. package/extensions/services/watchdog/entry.py +1258 -767
  624. package/extensions/services/watchdog/module.md +3 -0
  625. package/extensions/services/watchdog/monitor.py +483 -75
  626. package/extensions/services/web/auth_manager.py +602 -0
  627. package/extensions/services/web/config.json5 +11 -0
  628. package/extensions/services/web/entry.py +598 -478
  629. package/extensions/services/web/mfa_totp.py +77 -0
  630. package/extensions/services/web/module.md +17 -14
  631. package/extensions/services/web/nonce_pool.py +113 -0
  632. package/extensions/services/web/oauth_manager.py +223 -0
  633. package/extensions/services/web/pairing.py +3 -2
  634. package/extensions/services/web/pairing_codes.jsonl +1 -0
  635. package/extensions/services/web/relay.py +442 -63
  636. package/extensions/services/web/relay_config.json5 +1 -2
  637. package/extensions/services/web/routes/routes_rpc.py +6 -6
  638. package/extensions/services/web/server.py +380 -181
  639. package/extensions/services/web/static/index.html +1752 -1738
  640. package/extensions/services/web/static/js/app.js +32 -0
  641. package/extensions/services/web/static/js/kernel-client.js +48 -9
  642. package/extensions/services/web/static/js/token-manager.js +10 -10
  643. package/extensions/services/web/vendor/bluetooth/audio.py +1 -1
  644. package/extensions/services/web/vendor/config.py +2 -2
  645. package/extensions/services/web/vendor/storage/identity.py +1 -1
  646. package/kernel/entry.py +77 -23
  647. package/kernel/event_hub.py +1122 -74
  648. package/kernel/module.md +26 -1
  649. package/kernel/registry_store.py +209 -36
  650. package/kernel/rpc_router.py +1400 -465
  651. package/kernel/server.py +1084 -108
  652. package/kite_cli/builders/__init__.py +4 -0
  653. package/kite_cli/builders/base.py +67 -0
  654. package/kite_cli/builders/custom.py +31 -0
  655. package/kite_cli/builders/detector.py +56 -0
  656. package/kite_cli/builders/go.py +34 -0
  657. package/kite_cli/builders/gradle.py +41 -0
  658. package/kite_cli/builders/maven.py +36 -0
  659. package/kite_cli/builders/npm.py +44 -0
  660. package/kite_cli/builders/python.py +37 -0
  661. package/kite_cli/commands/BUILD_GUIDE.md +109 -0
  662. package/kite_cli/commands/build.py +142 -0
  663. package/kite_cli/commands/check.py +60 -0
  664. package/kite_cli/commands/config.py +156 -0
  665. package/kite_cli/commands/deps.py +58 -0
  666. package/kite_cli/commands/deps_install.py +67 -0
  667. package/kite_cli/commands/disable.py +162 -0
  668. package/kite_cli/commands/enable.py +162 -0
  669. package/kite_cli/commands/env_check.py +45 -0
  670. package/kite_cli/commands/export.py +96 -0
  671. package/kite_cli/commands/import_cmd.py +110 -0
  672. package/kite_cli/commands/install.py +50 -23
  673. package/kite_cli/commands/install_skill.py +107 -0
  674. package/kite_cli/commands/list.py +128 -31
  675. package/kite_cli/commands/outdated.py +202 -0
  676. package/kite_cli/commands/prepare.py +49 -0
  677. package/kite_cli/commands/search.py +33 -17
  678. package/kite_cli/commands/update.py +115 -2
  679. package/kite_cli/commands/venv_setup.py +56 -0
  680. package/kite_cli/commands/why.py +48 -0
  681. package/kite_cli/core/config_manager.py +145 -0
  682. package/kite_cli/core/downloader.py +32 -2
  683. package/kite_cli/main.py +179 -5
  684. package/kite_cli/utils/colors.py +153 -0
  685. package/kite_cli/utils/dependency_graph.py +209 -0
  686. package/kite_cli/utils/process.py +55 -0
  687. package/kite_cli/utils/progress.py +207 -0
  688. package/kite_cli/utils/table.py +101 -0
  689. package/launcher/count_lines.py +192 -43
  690. package/launcher/entry.py +4543 -2517
  691. package/launcher/logging_setup.py +54 -1
  692. package/launcher/module.md +37 -2
  693. package/launcher/module_scanner.py +103 -20
  694. package/launcher/process_manager.py +355 -76
  695. package/main.py +10 -1
  696. package/package.json +11 -1
  697. package/python_version.json +4 -0
  698. package/requirements.txt +41 -0
  699. package/scripts/auto-fix-deps.py +128 -0
  700. package/scripts/env-manager.js +351 -0
  701. package/scripts/final-test.js +78 -0
  702. package/scripts/python-env.js +79 -0
  703. package/scripts/scan_dependencies.py +461 -0
  704. package/scripts/setup-python-env.js +700 -0
  705. package/scripts/test-alluser.js +48 -0
  706. package/scripts/test-different-version.js +86 -0
  707. package/scripts/test-direct.js +63 -0
  708. package/scripts/test-extract-installer.js +28 -0
  709. package/scripts/test-install-log.js +54 -0
  710. package/scripts/test-installer.js +39 -0
  711. package/scripts/test-integration.js +250 -0
  712. package/scripts/test-real-install.js +210 -0
  713. package/scripts/test-targetdir.js +49 -0
  714. package/scripts/test-venv-real.js +47 -0
  715. package/scripts/test-venv-simple.js +57 -0
  716. package/scripts/test-wait.js +49 -0
  717. package/scripts/test-with-log.js +63 -0
  718. package/extensions/services/web/config.yaml +0 -149
@@ -0,0 +1,2 @@
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/IframePage-DbO11U9G.js","assets/vue-vendor-DtF-__I4.js","assets/element-plus-Bd7pZkkM.js","assets/IframePage-c572lT8i.css","assets/TeamDetailView-gy_MBEqG.js","assets/TeamDetailView-DULrGD7k.css","assets/CommissionView-Cs_ys6Gm.js","assets/CommissionView-DACet_Oo.css"])))=>i.map(i=>d[i]);
2
+ var ct=Object.defineProperty;var lt=(p,n,a)=>n in p?ct(p,n,{enumerable:!0,configurable:!0,writable:!0,value:a}):p[n]=a;var K=(p,n,a)=>lt(p,typeof n!="symbol"?n+"":n,a);import{B as Q,I as Be,ag as q,H as d,ax as _e,e as w,c as D,j as se,ay as be,L as u,P as t,Z as i,u as c,X as L,Q as de,a9 as ue,az as dt,F as W,ab as H,M as F,R as G,O as U,k as re,ao as ut,Y as ee,aA as Oe,a3 as mt,aB as ge,aC as ht,aD as vt,au as pt,aE as ft}from"./vue-vendor-DtF-__I4.js";import{E as O,e as gt}from"./element-plus-Bd7pZkkM.js";(function(){const n=document.createElement("link").relList;if(n&&n.supports&&n.supports("modulepreload"))return;for(const e of document.querySelectorAll('link[rel="modulepreload"]'))s(e);new MutationObserver(e=>{for(const o of e)if(o.type==="childList")for(const m of o.addedNodes)m.tagName==="LINK"&&m.rel==="modulepreload"&&s(m)}).observe(document,{childList:!0,subtree:!0});function a(e){const o={};return e.integrity&&(o.integrity=e.integrity),e.referrerPolicy&&(o.referrerPolicy=e.referrerPolicy),e.crossOrigin==="use-credentials"?o.credentials="include":e.crossOrigin==="anonymous"?o.credentials="omit":o.credentials="same-origin",o}function s(e){if(e.ep)return;e.ep=!0;const o=a(e);fetch(e.href,o)}})();const yt=Q({__name:"App",setup(p){return(n,a)=>{const s=q("router-view");return d(),Be(s)}}}),_t="modulepreload",bt=function(p){return"/"+p},Ke={},ye=function(n,a,s){let e=Promise.resolve();if(a&&a.length>0){document.getElementsByTagName("link");const m=document.querySelector("meta[property=csp-nonce]"),h=(m==null?void 0:m.nonce)||(m==null?void 0:m.getAttribute("nonce"));e=Promise.allSettled(a.map(f=>{if(f=bt(f),f in Ke)return;Ke[f]=!0;const y=f.endsWith(".css"),C=y?'[rel="stylesheet"]':"";if(document.querySelector(`link[href="${f}"]${C}`))return;const S=document.createElement("link");if(S.rel=y?"stylesheet":_t,y||(S.as="script"),S.crossOrigin="",S.href=f,h&&S.setAttribute("nonce",h),document.head.appendChild(S),y)return new Promise((I,T)=>{S.addEventListener("load",I),S.addEventListener("error",()=>T(new Error(`Unable to preload CSS for ${f}`)))})}))}function o(m){const h=new Event("vite:preloadError",{cancelable:!0});if(h.payload=m,window.dispatchEvent(h),!h.defaultPrevented)throw m}return e.then(m=>{for(const h of m||[])h.status==="rejected"&&o(h.reason);return n().catch(o)})},Y=_e("auth",()=>{const p=w(m()),n=w(null),a=w(S()),s=w(null),e=w(0),o=5e3;function m(){let v=localStorage.getItem("kiteToken");return v||(v=h("kiteToken"),v?(localStorage.setItem("kiteToken",v),v):null)}function h(v){const M=`; ${document.cookie}`.split(`; ${v}=`);return M.length===2&&M.pop().split(";").shift()||null}function f(v,P,M=30){const E=new Date(Date.now()+M*864e5).toUTCString();document.cookie=`${v}=${P}; expires=${E}; path=/; SameSite=Strict`}function y(v){p.value=v,localStorage.setItem("kiteToken",v),f("kiteToken",v,30)}function C(){p.value=null,localStorage.removeItem("kiteToken"),f("kiteToken","",-1)}function S(){let v=localStorage.getItem("deviceId");v||(v="device_"+I(16)+"_"+Date.now(),localStorage.setItem("deviceId",v));const P=navigator.userAgent;let M="Unknown OS";/Windows/i.test(P)?M="Windows":/Mac/i.test(P)?M="macOS":/Linux/i.test(P)?M="Linux":/Android/i.test(P)?M="Android":/iPhone|iPad/i.test(P)&&(M="iOS");let E="Unknown Browser";return/Chrome/i.test(P)&&!/Edge/i.test(P)?E="Chrome":/Firefox/i.test(P)?E="Firefox":/Safari/i.test(P)&&!/Chrome/i.test(P)?E="Safari":/Edge/i.test(P)&&(E="Edge"),{deviceId:v,deviceName:`${E} on ${M}`,deviceType:/Android|iPhone|iPad/i.test(P)?"Mobile":"Desktop",browser:E,os:M,userAgent:P}}function I(v){const P="abcdefghijklmnopqrstuvwxyz0123456789";let M="";for(let E=0;E<v;E++)M+=P.charAt(Math.floor(Math.random()*P.length));return M}async function T(v){return(await fetch("/api/send_sms",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({phone:v})})).json()}async function k(v,P){const E=await(await fetch("/api/verify_sms",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({phone:v,code:P,deviceInfo:a.value})})).json();return E.success&&(y(E.kiteToken),n.value=E.data,s.value=E.data,e.value=Date.now()),E}async function N(v){try{v&&p.value&&await v.call("evol.logout",{kiteToken:p.value})}catch(P){console.error("Logout RPC failed:",P)}C(),n.value=null,s.value=null}async function R(v){const P=Date.now();if(s.value&&P-e.value<o){n.value=s.value;return}if(v&&!v.authenticated){const E=Date.now();for(;!v.authenticated&&Date.now()-E<5e3;)await new Promise(V=>setTimeout(V,100))}if(!v||!v.authenticated)throw new Error("KernelClient not authenticated");const M=await v.call("evol.get_user_info",{kiteToken:p.value});if(M.success)n.value=M.data,s.value=M.data,e.value=Date.now();else throw M.code==="INVALID_KITE_TOKEN"?(C(),new Error("KITE_TOKEN_INVALID")):new Error(M.message||"EVOL_TOKEN_INVALID")}const b=D(()=>!!p.value),_=D(()=>{if(!n.value)return"";const v=n.value.userInfo||n.value;return v.nickName||v.userName||""}),A=D(()=>{var v;return n.value&&((v=n.value.accountInfo)==null?void 0:v.credits)||0});return{kiteToken:p,userInfo:n,deviceInfo:a,isAuthenticated:b,displayName:_,credits:A,sendSMS:T,login:k,logout:N,loadUserInfo:R}}),Ue="/logo.png";class wt{constructor(n){K(this,"url");K(this,"ws",null);K(this,"moduleId",null);K(this,"role",null);K(this,"connected",!1);K(this,"authenticated",!1);K(this,"rpcId",0);K(this,"pendingRpcs",new Map);K(this,"eventListeners",new Map);K(this,"onConnectionChange",null);K(this,"onAuthenticated",null);K(this,"reconnectDelay",1e3);K(this,"maxReconnectDelay",3e4);K(this,"reconnectAttempts",0);K(this,"reconnectTimer",null);K(this,"fatalError",!1);K(this,"heartbeatInterval",2e4);K(this,"heartbeatTimer",null);K(this,"token");K(this,"sessionToken");K(this,"bytesReceived",0);K(this,"bytesSent",0);this.url=n,this.token=localStorage.getItem("kiteToken")||localStorage.getItem("frontend_token"),console.log("[KernelClient] Constructor - token:",this.token?this.token.substring(0,20)+"...":"null");let a=sessionStorage.getItem("session_token");a||(a="sess_"+this.randomString(6),sessionStorage.setItem("session_token",a)),this.sessionToken=a}async pair(n){return new Promise((a,s)=>{this.connectWs(e=>{const o=JSON.stringify({type:"pair",code:n});e.send(o),this.bytesSent+=o.length;const m=h=>{this.bytesReceived+=h.data.length;const f=JSON.parse(h.data);f.type==="paired"?(this.token=f.token,this.sessionToken=f.session_token,this.moduleId=f.module_id,this.role=f.role,localStorage.setItem("frontend_token",this.token),sessionStorage.setItem("session_token",this.sessionToken),this.authenticated=!0,e.removeEventListener("message",m),a({moduleId:this.moduleId,role:this.role})):f.type==="error"&&(e.removeEventListener("message",m),s(new Error(f.message)))};e.addEventListener("message",m)},s)})}async connect(){if(!this.token)throw new Error("No token found, please pair first");return new Promise((n,a)=>{this.connectWs(s=>{const e=JSON.stringify({type:"auth",token:this.token,session_token:this.sessionToken});console.log("[KernelClient] Sending auth message, token:",this.token?this.token.substring(0,20)+"...":"null"),s.send(e),this.bytesSent+=e.length;const o=m=>{this.bytesReceived+=m.data.length;const h=JSON.parse(m.data);if(h.type==="authenticated"||h.type==="reconnected"){this.moduleId=h.module_id,this.role=h.role,this.authenticated=!0,s.removeEventListener("message",o);const f=h.type==="reconnected";if(this.onAuthenticated)try{this.onAuthenticated(f)}catch(y){console.error("[KernelClient] onAuthenticated callback error:",y)}n({moduleId:this.moduleId,role:this.role,reconnected:f})}else h.type==="error"&&(s.removeEventListener("message",o),h.fatal&&(this.fatalError=!0,console.error("[KernelClient] Fatal error, will not retry:",h.message)),(h.message.includes("Invalid")||h.message.includes("expired"))&&(localStorage.removeItem("frontend_token"),this.token=null),a(new Error(h.message)))};s.addEventListener("message",o)},a)})}async call(n,a={},s=3e4){if(!this.authenticated)throw new Error("Not authenticated");return new Promise((e,o)=>{const m=`rpc-${++this.rpcId}`,h=JSON.stringify({jsonrpc:"2.0",id:m,method:n,params:a});this.ws.send(h),this.bytesSent+=h.length;const f=window.setTimeout(()=>{this.pendingRpcs.delete(m),o(new Error(`RPC timeout: ${n}`))},s);this.pendingRpcs.set(m,{resolve:e,reject:o,timeout:f})})}async subscribe(n){return this.call("event.subscribe",{events:n})}on(n,a){this.eventListeners.has(n)||this.eventListeners.set(n,[]),this.eventListeners.get(n).push(a)}off(n,a){if(!this.eventListeners.has(n))return;const s=this.eventListeners.get(n),e=s.indexOf(a);e>-1&&s.splice(e,1)}disconnect(){if(this.reconnectTimer&&(clearTimeout(this.reconnectTimer),this.reconnectTimer=null),this.stopHeartbeat(),this.ws){try{const n=JSON.stringify({type:"disconnect"});this.ws.send(n),this.bytesSent+=n.length}catch{}this.ws.close(),this.ws=null}this.connected=!1,this.authenticated=!1}startHeartbeat(){this.stopHeartbeat(),this.heartbeatTimer=window.setInterval(()=>{if(this.ws&&this.ws.readyState===WebSocket.OPEN)try{const n=JSON.stringify({type:"ping"});this.ws.send(n),this.bytesSent+=n.length}catch(n){console.error("[KernelClient] Heartbeat failed:",n)}},this.heartbeatInterval)}stopHeartbeat(){this.heartbeatTimer&&(clearInterval(this.heartbeatTimer),this.heartbeatTimer=null)}connectWs(n,a){if(this.ws&&this.ws.readyState===WebSocket.OPEN){n(this.ws);return}const s=new WebSocket(this.url);s.onopen=()=>{console.log("[KernelClient] WebSocket connected"),this.ws=s,this.connected=!0,this.reconnectAttempts=0,this.reconnectDelay=1e3,this.startHeartbeat(),this.onConnectionChange&&this.onConnectionChange("connected","WebSocket 已连接"),n(s)},s.onerror=e=>{console.error("[KernelClient] WebSocket error:",e),a&&a(e)},s.onclose=()=>{console.log("[KernelClient] WebSocket closed"),this.connected=!1,this.authenticated=!1,this.ws=null,this.stopHeartbeat(),this.onConnectionChange&&this.onConnectionChange("disconnected","WebSocket 已断开"),this.token&&this.scheduleReconnect()},s.onmessage=e=>{this.bytesReceived+=e.data.length,this.handleMessage(e.data)}}handleMessage(n){try{const a=JSON.parse(n);if(a.id&&this.pendingRpcs.has(String(a.id))){const{resolve:s,reject:e,timeout:o}=this.pendingRpcs.get(String(a.id));clearTimeout(o),this.pendingRpcs.delete(String(a.id)),a.error?e(new Error(a.error.message||"RPC error")):s(a.result);return}if(a.method==="event"||!a.id){const s=a.params||{},e=s.event,o=s.data||{};e&&this.eventListeners.has(e)&&this.eventListeners.get(e).forEach(h=>{try{h(o)}catch(f){console.error("[KernelClient] Event listener error:",f)}}),e&&this.eventListeners.has(">")&&this.eventListeners.get(">").forEach(h=>{try{h({...o,event:e})}catch(f){console.error("[KernelClient] Wildcard event listener error:",f)}})}}catch(a){console.error("[KernelClient] Message parse error:",a)}}scheduleReconnect(){if(this.fatalError){console.error("[KernelClient] Fatal error detected, reconnection disabled"),this.onConnectionChange&&this.onConnectionChange("error","连接失败(永久性错误)");return}if(this.reconnectTimer)return;this.reconnectAttempts++;const n=Math.min(this.reconnectDelay*Math.pow(1.5,this.reconnectAttempts-1),this.maxReconnectDelay);console.log(`[KernelClient] Reconnecting in ${n}ms (attempt ${this.reconnectAttempts})`),this.onConnectionChange&&this.onConnectionChange("reconnecting",`正在重连... (${this.reconnectAttempts})`),this.reconnectTimer=window.setTimeout(()=>{this.reconnectTimer=null,this.connect().catch(a=>{console.error("[KernelClient] Reconnect failed:",a)})},n)}randomString(n){const a="abcdefghijklmnopqrstuvwxyz0123456789";let s="";for(let e=0;e<n;e++)s+=a.charAt(Math.floor(Math.random()*a.length));return s}}const Ge=_e("pages",()=>{const p=w(new Map),n=D(()=>Array.from(p.value.values()).sort((o,m)=>o.order-m.order));function a(o){if(p.value.set(o.page_id,o),o.type==="iframe"||o.type==="hosted"){const m=o.page_id;Z.hasRoute(m)&&Z.removeRoute(m),Z.addRoute("main",{path:o.path,name:m,component:()=>ye(()=>import("./IframePage-DbO11U9G.js"),__vite__mapDeps([0,1,2,3])),meta:{pageEntry:o,requiresAuth:o.requires_auth}}),console.log(`[pages] Registered page: ${o.page_id} at ${o.path}`)}}function s(o){p.value.get(o)&&(p.value.delete(o),Z.hasRoute(o)&&Z.removeRoute(o),console.log(`[pages] Deregistered page: ${o}`))}function e(o){p.value.clear(),o.forEach(m=>a(m)),console.log(`[pages] Loaded ${o.length} pages from snapshot`)}return{pages:p,sortedPages:n,registerPage:a,deregisterPage:s,loadSnapshot:e}}),oe=_e("connection",()=>{const p=w("disconnected"),n=w(0),a=w({rxTotal:0,txTotal:0,rxRate:0,txRate:0,lastRxBytes:0,lastTxBytes:0,lastUpdateTime:Date.now()});let s=null,e=null,o=null;function m(T){o=T}function h(){const T=`ws://${window.location.hostname}:${window.location.port}/ws/relay`;s=new wt(T),s.onConnectionChange=(k,N)=>{p.value=k,k==="reconnecting"?n.value++:k==="connected"?f():k==="disconnected"&&y()},s.onAuthenticated=k=>{console.log("[Connection] Authenticated, reconnected:",k),s.subscribe(["module.starting","module.started","module.ready","module.stopped","module.exiting","module.shutdown","module.crashed","module.offline","module.shutdown.ack","module.shutdown.ready","ui.page.register","ui.page.deregister","ui.page.snapshot"]).catch(R=>console.error("Subscribe failed:",R));const N=Ge();s.on("ui.page.register",R=>{N.registerPage(R)}),s.on("ui.page.deregister",R=>{N.deregisterPage(R.page_id)}),s.on("ui.page.snapshot",R=>{N.loadSnapshot(R.pages||[])}),o&&o(k)},s.connect().catch(k=>{console.error("[Connection] Connect failed:",k)})}function f(){e||(e=window.setInterval(()=>{if(!s)return;const T=Date.now(),k=(T-a.value.lastUpdateTime)/1e3,N=s.bytesReceived-a.value.lastRxBytes,R=s.bytesSent-a.value.lastTxBytes;a.value.rxRate=Math.round(N/k),a.value.txRate=Math.round(R/k),a.value.rxTotal=s.bytesReceived,a.value.txTotal=s.bytesSent,a.value.lastRxBytes=s.bytesReceived,a.value.lastTxBytes=s.bytesSent,a.value.lastUpdateTime=T},1e3))}function y(){e&&(clearInterval(e),e=null)}function C(){s&&(s.disconnect(),s=null),y()}async function S(T,k={}){if(!s)throw new Error("KernelClient not initialized");return s.call(T,k)}function I(){return s}return{status:p,reconnectCount:n,trafficStats:a,initKernelClient:h,setOnAuthenticated:m,disconnect:C,callRpc:S,getClient:I}});function kt(){function p(e){if(!e||e<0)return"--";const o=Math.floor(e/86400),m=Math.floor(e%86400/3600),h=Math.floor(e%3600/60),f=Math.floor(e%60);return o>0?`${o}天${m}时`:m>0?`${m}时${h}分`:h>0?`${h}分${f}秒`:`${f}秒`}function n(e){if(e===0)return"0 B";const o=1024,m=["B","KB","MB","GB"],h=Math.floor(Math.log(e)/Math.log(o));return Math.round(e/Math.pow(o,h)*100)/100+" "+m[h]}function a(e){const o=new Date(e),m=h=>String(h).padStart(2,"0");return`${o.getFullYear()}-${m(o.getMonth()+1)}-${m(o.getDate())} ${m(o.getHours())}:${m(o.getMinutes())}:${m(o.getSeconds())}`}function s(e,o=8){return!e||e.length<=o?e:e.substring(0,o)+"..."}return{formatUptime:p,formatBytes:n,formatTimestamp:a,truncateToken:s}}const Ct={common:{loading:"加载中...",error:"错误",confirm:"确认",cancel:"取消",save:"保存",logout:"退出",logoutConfirm:"确定退出登录?",yes:"是",no:"否"},login:{title:"Evol 账户登录",phone:"手机号",phonePlaceholder:"请输入手机号",code:"验证码",codePlaceholder:"请输入验证码",sendCode:"发送验证码",sendCodeCountdown:"{n}秒",loginBtn:"登录",loginSuccess:"登录成功",loginFailed:"登录失败",codeSent:"验证码已发送",codeSendFailed:"发送失败",phoneInvalid:"请输入正确的手机号",phoneAndCodeRequired:"请输入手机号和验证码"},header:{title:"Evol 控制台",connected:"Kite 已连接",disconnected:"未连接",reconnecting:"正在重连...",reconnectCount:"重连: {n}",credits:"积分: {n}"},sidebar:{account:"用户中心",accountSub:"Account",credits:"积分统计",creditsSub:"Credits",records:"变动记录",recordsSub:"Records",team:"团队管理",teamSub:"Team",commission:"邀请分润",commissionSub:"Commission",aiService:"AI服务中心",aiServiceSub:"AI Service"},theme:{light:"亮色",dark:"暗色",system:"跟随系统"},account:{title:"用户中心",basicInfo:"基本信息",phone:"手机号",nickname:"昵称",userId:"用户ID",aid:"AID",creditsInfo:"积分信息",currentCredits:"当前积分",creditsLimit:"积分上限",recoveryRate:"恢复速率",creditsPerHour:"{n} 积分/小时",creditsPack:"积分包",creditsPackCount:"{n} 个",vipInfo:"VIP 信息",vipType:"VIP类型",nonVip:"非VIP",expireTime:"过期时间",remainingDays:"剩余天数",remainingDaysUnit:"{n} 天",balance:"余额",rechargeCount:"充值次数",personalVersion:"个人版",switchTeam:"切换团队",switchToTeam:"切换到团队版",switchToPersonal:"切换到个人版",switchTeamSuccess:"切换团队成功",switchTeamFailed:"切换团队失败",accountInfo:"账户信息",teamMembers:"团队成员",gatewayConfig:"网关配置",teamMembersPlaceholder:"团队成员功能开发中...",roleAdmin:"管理员",roleMember:"成员",gatewayName:"网关名称",gatewayCode:"网关代码",apiUrl:"API 地址",modelBaseUrl:"模型地址",apiKeyEnabled:"API Key 启用",currentTeam:"当前团队"},credits:{title:"变动记录",todayUsage:"今日积分消耗",overview:"概览",totalCredits:"总消耗积分",totalRequests:"总请求次数",totalCost:"总成本 (USD)",periodSummary:"周期汇总",dailyTrend:"日消耗趋势",hourlyTrend:"24小时趋势",last7Days:"近7天",last30Days:"近30天",today:"今天",chatbot:"Chatbot",codex:"Codex",claudecode:"Claude Code",gemini:"Gemini",openclaw:"Openclaw",hour:"时",noTrendData:"暂无趋势数据",recentRecords:"最近消耗记录",noRecentRecords:"暂无消耗记录",model:"模型",functionType:"功能",creditsChange:"积分变动",costUsd:"成本",viewMore:"查看更多",records:"变动记录",packages:"积分包",vip:"VIP套餐",orders:"订单",apikeys:"API Keys",noRecords:"暂无记录",noPackages:"暂无积分包",noVipPackages:"暂无VIP套餐",noOrders:"暂无订单",noApikeys:"暂无API Key",credits:"积分",buy:"购买",orderCreated:"订单创建成功",orderPending:"待支付",orderPaying:"支付中",orderPaid:"已支付",orderFailed:"支付失败",orderClosed:"已关闭",orderRefunded:"已退款",createApikey:"创建API Key",apikeyName:"API Key名称",apikeyRemark:"备注",confirmDelete:"确认删除?",delete:"删除",unknown:"未知"},team:{title:"团队管理",teamInfo:"团队信息",teamName:"团队名称",teamNamePlaceholder:"请输入团队名称",role:"角色",roleCreator:"创建者",roleAdmin:"管理员",roleMember:"成员",noTeam:"暂无团队信息",personalVersion:"个人版",personalDesc:"使用个人账户积分",current:"当前",members:"人",createTeam:"创建团队",createSuccess:"团队创建成功",createFailed:"创建失败",switchSuccess:"切换成功",switchFailed:"切换失败",switchToThis:"切换到此团队",back:"返回",deleteTeam:"解散团队",quitTeam:"退出团队",confirmDelete:"确定解散此团队?此操作不可恢复。",confirmQuit:"确定退出此团队?",deleteSuccess:"团队已解散",deleteFailed:"解散失败",quitSuccess:"已退出团队",quitFailed:"退出失败",noData:"暂无数据",tabStats:"统计",tabPackages:"套餐",tabBill:"账单",tabMembers:"成员与分组",tabModels:"模型配置",tabInsights:"洞察报告",tabAlerts:"预警",vipType:"VIP类型",credits:"积分",creditsLimit:"积分上限",expireTime:"到期时间",modeRealtime:"实时",modeHistory:"历史",modeGroup:"分组",todayCredits:"今日积分消耗",todayRequests:"今日请求数",activeMembers:"活跃成员",memberRanking:"成员排名",period_hourly:"按小时",period_weekly:"按周",period_monthly:"按月",searchMember:"搜索成员",addMember:"添加成员",manageGroups:"管理分组",allMembers:"全部成员",ungrouped:"未分组",noMembers:"暂无成员",setAdmin:"设为管理员",removeAdmin:"取消管理员",removeMember:"移除成员",confirmRemoveMember:"确定移除此成员?",setAdminSuccess:"已设为管理员",removeAdminSuccess:"已取消管理员",removeMemberSuccess:"已移除成员",searchByPhone:"输入手机号搜索",search:"搜索",selectRole:"选择角色",userNotFound:"未找到用户",addMemberSuccess:"添加成功",addMemberFailed:"添加失败",groups:"分组",groupName:"分组名称",groupNamePlaceholder:"请输入分组名称",createGroup:"创建分组",editGroup:"编辑分组",deleteGroup:"删除分组",confirmDeleteGroup:"确定删除此分组?",createGroupSuccess:"分组创建成功",editGroupSuccess:"分组更新成功",deleteGroupSuccess:"分组已删除",createSubGroup:"创建子分组",ungroupedMembers:"未分组成员",nameAndMembers:"名称·成员",operation:"操作",startDate:"开始日期",endDate:"结束日期",downloadCSV:"导出CSV",noBill:"暂无账单数据",date:"日期",requests:"请求数",alertEnabled:"启用预警",alertThreshold:"预警阈值",alertNotifyType:"通知方式",notifyEmail:"邮件",notifySms:"短信",testAlert:"测试预警",resetAlert:"重置状态",alertSaveSuccess:"预警配置已保存",testAlertSuccess:"测试预警已发送",resetAlertSuccess:"预警状态已重置",modelConfigDesc:"模型配置功能开发中...",insightsDesc:"洞察报告功能开发中..."},aiService:{title:"AI服务中心",proxyEndpoints:"代理服务端点",myKeys:"我的密钥",noKeys:"暂无密钥",noEndpoints:"暂无端点信息",copied:"已复制",copyFailed:"复制失败",copy:"复制",serviceName:"服务名称",serviceUrl:"服务地址"},endpoint:{title:"端点管理",gatewayInfo:"网关信息",gatewayName:"网关名称",modelUrl:"模型地址",apiKeyStatus:"API Key 状态",apiKeyObtained:"已获取",apiKeyNotObtained:"未获取",noGateway:"暂无网关信息",apiKeys:"API Keys",noApiKeys:"暂无 API Key",keyName:"密钥名称",keyValue:"密钥值",keyStatus:"状态"},commission:{title:"邀请分润",activities:"可参与的活动",noActivities:"暂无可参与的活动",activityName:"活动名称",activityDesc:"活动描述",activityTime:"活动时间",commissionMode:"分润模式",modeFixed:"固定比例",modeLadder:"阶梯分润",fixedRate:"分润比例",visibility:"参与条件",visibilityPublic:"公开",visibilityVip:"VIP专属",visibilityInviteOnly:"邀请码参与",maxCommission:"分润上限",noLimit:"无上限",joinActivity:"参与活动",quitActivity:"退出活动",joinSuccess:"参与成功",quitSuccess:"已退出活动",inviteCode:"邀请码",inviteCodePlaceholder:"请输入活动邀请码",confirmQuit:"确定退出当前活动?退出后可重新参与。",currentActivity:"当前参与的活动",notJoined:"未参与任何活动",joinTime:"参与时间",account:"结算账户",commissionBalance:"可用余额",totalCommission:"累计分润",totalWithdrawn:"累计提取",exchangeRate:"提现汇率",exchangeRateDesc:"1元 = {n}积分",minWithdraw:"最低提现",withdrawEnabled:"提现开放",withdrawDisabled:"提现未开放",summary:"分润汇总",noSummary:"暂无分润数据",totalConsumed:"累计消耗",totalInvitees:"有效邀请人数",totalSettles:"结算次数",lastSettle:"最近结算",records:"分润明细",noRecords:"暂无分润明细",settleDate:"结算日期",consumeSource:"消耗来源",sourcePersonal:"个人",sourceTeam:"团队",consumedCredits:"消耗积分",consumedCount:"消耗次数",commissionRate:"分润比例",commissionCredits:"分润积分",settleStatus:"状态",statusPending:"待发放",statusGranted:"已发放",statusFailed:"发放失败",statusCancelled:"已取消",grantTime:"发放时间",transfer:"划转积分",withdraw:"申请提现",transferDesc:"将分润积分划转到可用积分账户,即时生效",withdrawDesc:"将分润积分提现为人民币,需管理员审核",creditsAmount:"积分数量",creditsAmountPlaceholder:"请输入积分数量",transferSuccess:"划转成功",withdrawSuccess:"提现申请已提交",cashAmount:"提现金额",withdrawals:"提现/划转记录",noWithdrawals:"暂无记录",withdrawType:"操作类型",typeTransfer:"划转积分",typeCash:"提现",balanceBefore:"操作前余额",balanceAfter:"操作后余额",statusProcessing:"待处理",statusSuccess:"成功",statusFailure:"失败",startDate:"开始日期",endDate:"结束日期",credits:"积分"},na:"-"},St={common:{loading:"Loading...",error:"Error",confirm:"Confirm",cancel:"Cancel",save:"Save",logout:"Logout",logoutConfirm:"Are you sure to logout?",yes:"Yes",no:"No"},login:{title:"Evol Account Login",phone:"Phone",phonePlaceholder:"Enter phone number",code:"Verification Code",codePlaceholder:"Enter verification code",sendCode:"Send Code",sendCodeCountdown:"{n}s",loginBtn:"Login",loginSuccess:"Login successful",loginFailed:"Login failed",codeSent:"Code sent",codeSendFailed:"Failed to send",phoneInvalid:"Please enter a valid phone number",phoneAndCodeRequired:"Phone and code are required"},header:{title:"Evol Console",connected:"Kite Connected",disconnected:"Disconnected",reconnecting:"Reconnecting...",reconnectCount:"Reconnect: {n}",credits:"Credits: {n}"},sidebar:{account:"Account",accountSub:"Account",credits:"Credits",creditsSub:"Credits",team:"Team",teamSub:"Team",commission:"Commission",commissionSub:"Commission",aiService:"AI Service",aiServiceSub:"AI Service"},theme:{light:"Light",dark:"Dark",system:"System"},account:{title:"Account",basicInfo:"Basic Info",phone:"Phone",nickname:"Nickname",userId:"User ID",aid:"AID",creditsInfo:"Credits",currentCredits:"Current Credits",creditsLimit:"Credits Limit",recoveryRate:"Recovery Rate",creditsPerHour:"{n} credits/hr",creditsPack:"Credits Pack",creditsPackCount:"{n} packs",vipInfo:"VIP Info",vipType:"VIP Type",nonVip:"Non-VIP",expireTime:"Expires",remainingDays:"Remaining",remainingDaysUnit:"{n} days",balance:"Balance",rechargeCount:"Recharge Count",personalVersion:"Personal",switchTeam:"Switch Team",switchToTeam:"Switch to Team",switchToPersonal:"Switch to Personal",switchTeamSuccess:"Team switched",switchTeamFailed:"Failed to switch team",accountInfo:"Account Info",teamMembers:"Team Members",gatewayConfig:"Gateway Config",teamMembersPlaceholder:"Team members feature coming soon...",roleAdmin:"Admin",roleMember:"Member",gatewayName:"Gateway Name",gatewayCode:"Gateway Code",apiUrl:"API URL",modelBaseUrl:"Model Base URL",apiKeyEnabled:"API Key Enabled",currentTeam:"Current Team"},credits:{title:"Credits Statistics",todayUsage:"Today's Usage",overview:"Overview",totalCredits:"Total Credits",totalRequests:"Total Requests",totalCost:"Total Cost (USD)",periodSummary:"Period Summary",dailyTrend:"Daily Trend",hourlyTrend:"24h Trend",last7Days:"Last 7 Days",last30Days:"Last 30 Days",today:"Today",chatbot:"Chatbot",codex:"Codex",claudecode:"Claude Code",gemini:"Gemini",openclaw:"Openclaw",hour:"h",noTrendData:"No trend data",recentRecords:"Recent Records",noRecentRecords:"No recent records",model:"Model",functionType:"Function",creditsChange:"Credits",costUsd:"Cost",viewMore:"View more",records:"Records",packages:"Packages",vip:"VIP Plans",orders:"Orders",apikeys:"API Keys",noRecords:"No records",noPackages:"No packages",noVipPackages:"No VIP packages",noOrders:"No orders",noApikeys:"No API keys",credits:"Credits",buy:"Buy",orderCreated:"Order created",orderPending:"Pending",orderPaying:"Paying",orderPaid:"Paid",orderFailed:"Failed",orderClosed:"Closed",orderRefunded:"Refunded",createApikey:"Create API Key",apikeyName:"API Key Name",apikeyRemark:"Remark",confirmDelete:"Confirm delete?",delete:"Delete",unknown:"Unknown"},team:{title:"Team Management",teamInfo:"Team Info",teamName:"Team Name",teamNamePlaceholder:"Enter team name",role:"Role",roleCreator:"Creator",roleAdmin:"Admin",roleMember:"Member",noTeam:"No team info available",personalVersion:"Personal",personalDesc:"Use personal credits",current:"Current",members:"members",createTeam:"Create Team",createSuccess:"Team created",createFailed:"Failed to create",switchSuccess:"Switched successfully",switchFailed:"Failed to switch",switchToThis:"Switch to this team",back:"Back",deleteTeam:"Delete Team",quitTeam:"Quit Team",confirmDelete:"Are you sure to delete this team? This action cannot be undone.",confirmQuit:"Are you sure to quit this team?",deleteSuccess:"Team deleted",deleteFailed:"Failed to delete",quitSuccess:"Left the team",quitFailed:"Failed to quit",noData:"No data",tabStats:"Statistics",tabPackages:"Plans",tabBill:"Billing",tabMembers:"Members & Groups",tabModels:"Models",tabInsights:"Insights",tabAlerts:"Alerts",vipType:"VIP Type",credits:"Credits",creditsLimit:"Credits Limit",expireTime:"Expires",modeRealtime:"Realtime",modeHistory:"History",modeGroup:"By Group",todayCredits:"Today's Credits",todayRequests:"Today's Requests",activeMembers:"Active Members",memberRanking:"Member Ranking",period_hourly:"Hourly",period_weekly:"Weekly",period_monthly:"Monthly",searchMember:"Search members",addMember:"Add Member",manageGroups:"Manage Groups",allMembers:"All Members",ungrouped:"Ungrouped",noMembers:"No members",setAdmin:"Set as Admin",removeAdmin:"Remove Admin",removeMember:"Remove Member",confirmRemoveMember:"Are you sure to remove this member?",setAdminSuccess:"Set as admin",removeAdminSuccess:"Admin removed",removeMemberSuccess:"Member removed",searchByPhone:"Search by phone number",search:"Search",selectRole:"Select role",userNotFound:"User not found",addMemberSuccess:"Member added",addMemberFailed:"Failed to add",groups:"Groups",groupName:"Group Name",groupNamePlaceholder:"Enter group name",createGroup:"Create Group",editGroup:"Edit Group",deleteGroup:"Delete Group",confirmDeleteGroup:"Are you sure to delete this group?",createGroupSuccess:"Group created",editGroupSuccess:"Group updated",deleteGroupSuccess:"Group deleted",createSubGroup:"Create Sub Group",ungroupedMembers:"Ungrouped Members",nameAndMembers:"Name · Members",operation:"Actions",startDate:"Start date",endDate:"End date",downloadCSV:"Export CSV",noBill:"No billing data",date:"Date",requests:"Requests",alertEnabled:"Enable Alerts",alertThreshold:"Alert Threshold",alertNotifyType:"Notification",notifyEmail:"Email",notifySms:"SMS",testAlert:"Test Alert",resetAlert:"Reset Status",alertSaveSuccess:"Alert config saved",testAlertSuccess:"Test alert sent",resetAlertSuccess:"Alert status reset",modelConfigDesc:"Model configuration coming soon...",insightsDesc:"Insight reports coming soon..."},aiService:{title:"AI Service Center",proxyEndpoints:"Proxy Endpoints",myKeys:"My Keys",noKeys:"No keys available",noEndpoints:"No endpoints available",copied:"Copied",copyFailed:"Copy failed",copy:"Copy",serviceName:"Service",serviceUrl:"URL"},endpoint:{title:"Endpoints",gatewayInfo:"Gateway Info",gatewayName:"Gateway Name",modelUrl:"Model URL",apiKeyStatus:"API Key Status",apiKeyObtained:"Obtained",apiKeyNotObtained:"Not Obtained",noGateway:"No gateway info",apiKeys:"API Keys",noApiKeys:"No API keys",keyName:"Key Name",keyValue:"Key Value",keyStatus:"Status"},commission:{title:"Invite Commission",activities:"Available Activities",noActivities:"No activities available",activityName:"Activity Name",activityDesc:"Description",activityTime:"Activity Period",commissionMode:"Commission Mode",modeFixed:"Fixed Rate",modeLadder:"Ladder",fixedRate:"Commission Rate",visibility:"Eligibility",visibilityPublic:"Public",visibilityVip:"VIP Only",visibilityInviteOnly:"Invite Code",maxCommission:"Commission Cap",noLimit:"No Limit",joinActivity:"Join Activity",quitActivity:"Quit Activity",joinSuccess:"Joined successfully",quitSuccess:"Left the activity",inviteCode:"Invite Code",inviteCodePlaceholder:"Enter invite code",confirmQuit:"Are you sure to quit? You can rejoin later.",currentActivity:"Current Activity",notJoined:"Not joined any activity",joinTime:"Joined At",account:"Settlement Account",commissionBalance:"Available Balance",totalCommission:"Total Commission",totalWithdrawn:"Total Withdrawn",exchangeRate:"Exchange Rate",exchangeRateDesc:"1 CNY = {n} credits",minWithdraw:"Min Withdraw",withdrawEnabled:"Withdraw Open",withdrawDisabled:"Withdraw Closed",summary:"Commission Summary",noSummary:"No commission data",totalConsumed:"Total Consumed",totalInvitees:"Valid Invitees",totalSettles:"Settle Count",lastSettle:"Last Settle",records:"Commission Records",noRecords:"No records",settleDate:"Settle Date",consumeSource:"Source",sourcePersonal:"Personal",sourceTeam:"Team",consumedCredits:"Consumed Credits",consumedCount:"Consumed Count",commissionRate:"Commission Rate",commissionCredits:"Commission Credits",settleStatus:"Status",statusPending:"Pending",statusGranted:"Granted",statusFailed:"Failed",statusCancelled:"Cancelled",grantTime:"Grant Time",transfer:"Transfer Credits",withdraw:"Withdraw Cash",transferDesc:"Transfer commission credits to your available balance instantly",withdrawDesc:"Withdraw commission as cash, requires admin approval",creditsAmount:"Credits Amount",creditsAmountPlaceholder:"Enter credits amount",transferSuccess:"Transfer successful",withdrawSuccess:"Withdrawal submitted",cashAmount:"Cash Amount",withdrawals:"Withdrawal Records",noWithdrawals:"No records",withdrawType:"Type",typeTransfer:"Transfer",typeCash:"Cash Withdraw",balanceBefore:"Balance Before",balanceAfter:"Balance After",statusProcessing:"Processing",statusSuccess:"Success",statusFailure:"Failed",startDate:"Start Date",endDate:"End Date",credits:"Credits"},na:"-"},Fe={zh:Ct,en:St},we=w(localStorage.getItem("locale")||"zh");function Tt(p,n){return n.split(".").reduce((a,s)=>a&&a[s]!==void 0?a[s]:n,p)}function It(p,n){const a=Tt(Fe[we.value]||Fe.zh,p);return typeof a!="string"?p:n?a.replace(/\{(\w+)\}/g,(s,e)=>String(n[e]??`{${e}}`)):a}function At(p){we.value=p,localStorage.setItem("locale",p)}function te(){return{t:It,locale:D(()=>we.value),setLocale:At}}const J=w(localStorage.getItem("theme")||"system");function qe(){return window.matchMedia("(prefers-color-scheme: dark)").matches}function ke(p){const n=p==="dark"||p==="system"&&qe();document.documentElement.classList.toggle("dark",n)}ke(J.value);window.matchMedia("(prefers-color-scheme: dark)").addEventListener("change",()=>{J.value==="system"&&ke("system")});se(J,p=>{localStorage.setItem("theme",p),ke(p)});function We(){function p(s){J.value=s}function n(){const s=["light","dark","system"],e=s.indexOf(J.value);J.value=s[(e+1)%s.length]}const a=D(()=>J.value==="dark"||J.value==="system"&&qe());return{theme:D(()=>J.value),isDark:a,setTheme:p,toggleTheme:n}}const Pt={class:"app-header"},Rt={class:"header-left"},Mt={class:"header-title"},Dt={class:"header-right"},$t={class:"traffic-stats"},xt={key:0,class:"reconnect-count"},Nt=["title"],Et={key:1,class:"user-info"},Lt={class:"user-name"},Vt={class:"user-credits"},Kt=Q({__name:"AppHeader",setup(p){const n=be(),a=Y(),s=oe(),{formatBytes:e}=kt(),{t:o,locale:m,setLocale:h}=te(),{theme:f,isDark:y,toggleTheme:C}=We(),S=D(()=>s.trafficStats),I=D(()=>s.reconnectCount);function T(){h(m.value==="zh"?"en":"zh")}const k=D(()=>{switch(s.status){case"connected":return"#22c55e";case"disconnected":return"#ef4444";case"reconnecting":return"#f39c12";default:return"#999"}}),N=D(()=>{switch(s.status){case"connected":return"● "+o("header.connected");case"disconnected":return"○ "+o("header.disconnected");case"reconnecting":return"⟳ "+o("header.reconnecting");default:return"○ "+o("header.disconnected")}});async function R(){const b=s.getClient();await a.logout(b),n.push("/login")}return(b,_)=>(d(),u("header",Pt,[t("div",Rt,[_[1]||(_[1]=t("img",{src:Ue,alt:"Evol",class:"header-logo"},null,-1)),t("h1",Mt,i(c(o)("header.title")),1)]),t("div",Dt,[t("span",$t," ↑"+i(c(e)(S.value.txRate))+"/s ↓"+i(c(e)(S.value.rxRate))+"/s ",1),I.value>0?(d(),u("span",xt,i(c(o)("header.reconnectCount",{n:I.value})),1)):L("",!0),t("span",{style:de({color:k.value})},i(N.value),5),t("button",{class:"header-btn",onClick:_[0]||(_[0]=(...A)=>c(C)&&c(C)(...A)),title:c(o)("theme."+c(f))},i(c(y)?"🌙":"☀️"),9,Nt),t("button",{class:"header-btn",onClick:T},i(c(m)==="zh"?"EN":"中"),1),c(a).isAuthenticated?(d(),u("div",Et,[t("span",Lt,i(c(a).displayName),1),t("span",Vt,i(c(o)("header.credits",{n:c(a).credits})),1),_[2]||(_[2]=t("span",{class:"user-divider"},"|",-1)),t("a",{href:"#",onClick:ue(R,["prevent"]),class:"logout-link"},i(c(o)("common.logout")),1)])):L("",!0)])]))}}),X=(p,n)=>{const a=p.__vccOpts||p;for(const[s,e]of n)a[s]=e;return a},Ft=X(Kt,[["__scopeId","data-v-a9d85a05"]]),Bt={class:"app-sidebar"},Ot={class:"nav-list"},Ut={class:"nav-label"},Gt={class:"nav-sublabel"},qt=Q({__name:"AppSidebar",setup(p){const n=dt(),{t:a,locale:s}=te(),e=Ge(),o=D(()=>{const h=[{path:"/account",label:a("sidebar.account"),sublabel:a("sidebar.accountSub"),order:10},{path:"/ai-service",label:a("sidebar.aiService"),sublabel:a("sidebar.aiServiceSub"),order:20},{path:"/credits",label:a("sidebar.records"),sublabel:a("sidebar.recordsSub"),order:30},{path:"/team",label:a("sidebar.team"),sublabel:a("sidebar.teamSub"),order:40},{path:"/commission",label:a("sidebar.commission"),sublabel:a("sidebar.commissionSub"),order:50}],f=e.sortedPages.map(y=>({path:y.path,label:s.value==="zh"?y.label.zh:y.label.en,sublabel:y.module_id,order:y.order,badge:y.badge}));return[...h,...f].sort((y,C)=>y.order-C.order)});function m(h){return n.path===h}return(h,f)=>{const y=q("router-link");return d(),u("nav",Bt,[t("ul",Ot,[(d(!0),u(W,null,H(o.value,C=>(d(),u("li",{key:C.path},[F(y,{to:C.path,class:G(["nav-item",{active:m(C.path)}])},{default:U(()=>[t("span",Ut,i(C.label),1),t("span",Gt,i(C.sublabel),1)]),_:2},1032,["to","class"])]))),128))])])}}}),Wt=X(qt,[["__scopeId","data-v-2cf22f53"]]),Ht={class:"app-layout"},zt={class:"app-body"},jt={class:"app-content"},Jt=Q({__name:"AppLayout",setup(p){const n=oe(),a=Y();return re(()=>{n.setOnAuthenticated(async s=>{try{const e=n.getClient();e&&await a.loadUserInfo(e)}catch(e){console.error("Failed to load user info after auth:",e)}}),n.initKernelClient()}),(s,e)=>{const o=q("router-view");return d(),u("div",Ht,[F(Ft),t("div",zt,[F(Wt),t("main",jt,[F(o)])])])}}}),Qt=X(Jt,[["__scopeId","data-v-14ca952e"]]),Yt={class:"login-page"},Xt={class:"login-toolbar"},Zt=["title"],es={class:"login-container"},ts={class:"login-box"},ss={class:"login-title"},os={style:{display:"flex",gap:"10px"}},as={key:0,class:"login-error"},ns=Q({__name:"LoginPage",setup(p){const n=be(),a=Y(),{t:s,locale:e,setLocale:o}=te(),{isDark:m,toggleTheme:h}=We(),f=w(""),y=w(""),C=w(""),S=w(0),I=w(!1),T=w("");let k=null;function N(){o(e.value==="zh"?"en":"zh")}async function R(){if(!y.value||y.value.length!==11){O.error(s("login.phoneInvalid"));return}try{const A=await a.sendSMS(y.value);A.success?(O.success(s("login.codeSent")),S.value=60,b()):O.error(A.msg||s("login.codeSendFailed"))}catch(A){O.error(A.message||s("login.codeSendFailed"))}}function b(){k&&clearInterval(k),k=window.setInterval(()=>{S.value--,S.value<=0&&(clearInterval(k),k=null)},1e3)}async function _(){if(!y.value||!C.value){T.value=s("login.phoneAndCodeRequired");return}I.value=!0,T.value="";try{const A=await a.login(y.value,C.value);A.success?(O.success(s("login.loginSuccess")),n.push("/")):T.value=A.msg||s("login.loginFailed")}catch(A){T.value=A.message||s("login.loginFailed")}finally{I.value=!1}}return(A,v)=>{const P=q("el-input"),M=q("el-form-item"),E=q("el-button"),V=q("el-form");return d(),u("div",Yt,[v[4]||(v[4]=t("div",{class:"glow glow-1"},null,-1)),v[5]||(v[5]=t("div",{class:"glow glow-2"},null,-1)),t("div",Xt,[t("button",{class:"toolbar-btn",onClick:v[0]||(v[0]=(...j)=>c(h)&&c(h)(...j)),title:f.value},i(c(m)?"🌙":"☀️"),9,Zt),t("button",{class:"toolbar-btn",onClick:N},i(c(e)==="zh"?"EN":"中"),1)]),t("div",es,[t("div",ts,[v[3]||(v[3]=t("div",{class:"login-logo"},[t("img",{src:Ue,alt:"Evol",class:"logo-img"})],-1)),t("h1",ss,i(c(s)("login.title")),1),F(V,{onSubmit:ue(_,["prevent"])},{default:U(()=>[F(M,{label:c(s)("login.phone")},{default:U(()=>[F(P,{modelValue:y.value,"onUpdate:modelValue":v[1]||(v[1]=j=>y.value=j),placeholder:c(s)("login.phonePlaceholder"),maxlength:"11"},null,8,["modelValue","placeholder"])]),_:1},8,["label"]),F(M,{label:c(s)("login.code")},{default:U(()=>[t("div",os,[F(P,{modelValue:C.value,"onUpdate:modelValue":v[2]||(v[2]=j=>C.value=j),placeholder:c(s)("login.codePlaceholder"),maxlength:"6",style:{flex:"1"},onKeyup:ut(_,["enter"])},null,8,["modelValue","placeholder"]),F(E,{disabled:S.value>0,onClick:R},{default:U(()=>[ee(i(S.value>0?c(s)("login.sendCodeCountdown",{n:S.value}):c(s)("login.sendCode")),1)]),_:1},8,["disabled"])])]),_:1},8,["label"]),F(E,{type:"primary",style:{width:"100%"},loading:I.value,onClick:_},{default:U(()=>[ee(i(c(s)("login.loginBtn")),1)]),_:1},8,["loading"])]),_:1}),T.value?(d(),u("div",as,i(T.value),1)):L("",!0)])])])}}}),is=X(ns,[["__scopeId","data-v-28a0be98"]]),rs={class:"account-view"},cs={class:"page-title"},ls={key:0,class:"account-container"},ds={class:"account-header"},us={class:"user-section"},ms={class:"user-info"},hs={class:"user-name-row"},vs={class:"user-name"},ps={class:"user-phone"},fs={key:0,class:"team-section"},gs={class:"team-info"},ys={class:"team-header"},_s={class:"team-label"},bs={key:0,width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2"},ws={class:"team-details"},ks={class:"team-name"},Cs={class:"team-role"},Ss={class:"team-members"},Ts=["onClick"],Is={class:"team-menu-info"},As={class:"team-menu-name"},Ps={key:0,width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"3"},Rs={key:0,class:"team-menu-meta"},Ms={key:1,class:"personal-section"},Ds={key:0,width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2"},$s=["onClick"],xs={class:"team-menu-info"},Ns={class:"team-menu-name"},Es={key:0,width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"3"},Ls={key:0,class:"team-menu-meta"},Vs={class:"account-tabs"},Ks={class:"tab-content"},Fs={key:0,class:"tab-panel"},Bs={class:"info-list"},Os={class:"info-row"},Us={class:"info-label"},Gs={class:"info-value"},qs={class:"info-row"},Ws={class:"info-label"},Hs={class:"info-value mono"},zs={class:"info-row"},js={class:"info-label"},Js={class:"info-value"},Qs={class:"info-row"},Ys={class:"info-label"},Xs={class:"info-value remaining-days"},Zs={key:0,class:"info-row"},eo={class:"info-label"},to={class:"info-value"},so={key:1,class:"tab-panel overview-panel"},oo={class:"overview-toolbar"},ao={class:"period-tabs"},no={key:0,class:"loading"},io={class:"summary-cards"},ro={class:"summary-card"},co={class:"summary-card-label"},lo={class:"summary-card-value primary"},uo={class:"summary-card"},mo={class:"summary-card-label"},ho={class:"summary-card-value"},vo={class:"summary-card"},po={class:"summary-card-label"},fo={class:"summary-card-value cost"},go={key:0,class:"type-breakdown"},yo={class:"type-label"},_o={class:"type-bar-track"},bo={class:"type-value"},wo={key:1,class:"trend-section"},ko={class:"section-title"},Co={class:"bar-chart"},So={class:"bar-tooltip"},To={class:"bar-track"},Io={class:"bar-label"},Ao={key:2,class:"trend-section"},Po={class:"section-title"},Ro={class:"bar-chart bar-chart-hourly"},Mo={class:"bar-tooltip"},Do={class:"bar-track"},$o={class:"bar-label"},xo={key:3,class:"empty"},No={key:4,class:"info-tip"},Eo={key:5,class:"trend-section"},Lo={class:"section-title"},Vo={class:"recent-records"},Ko={class:"record-main"},Fo={class:"record-model"},Bo={class:"record-type"},Oo={class:"record-meta"},Uo={class:"record-credits"},Go={class:"record-time"},qo={key:2,class:"credits-error"},Wo={key:2,class:"tab-panel"},Ho={key:0,class:"loading"},zo={key:1,class:"empty"},jo={key:2,class:"packages-list"},Jo={class:"package-name"},Qo={class:"package-credits"},Yo={key:3,class:"tab-panel"},Xo={key:0,class:"loading"},Zo={key:1,class:"empty"},ea={key:2,class:"orders-list"},ta={class:"order-info"},sa={class:"order-name"},oa={class:"order-time"},aa={class:"order-status"},na={key:1,class:"loading-panel"},ia=Q({__name:"AccountView",setup(p){const n=Y(),a=oe(),{userInfo:s}=Oe(n),{t:e}=te(),o=w("overview"),m=w(!1),h=w(0),f=w(""),y=w([]),C=w(!1),S=w([]),I=w(!1),T=w("today"),k=w(!1),N=w({}),R=w([]),b=w([]),_=w([]),A=D(()=>{var r;return(r=s.value)==null?void 0:r.teamInfo}),v=D(()=>{var r;return(r=A.value)==null?void 0:r.currentTeamId}),P=D(()=>{var r;return(r=A.value)!=null&&r.currentTeamId?A.value.currentTeamName||e("na"):e("account.personalVersion")}),M=D(()=>{var l;const r=((l=A.value)==null?void 0:l.teams)||[];return[{teamId:null,teamName:e("account.personalVersion"),memberRole:null,memberCount:0},...r]}),E=D(()=>{var l;return(((l=A.value)==null?void 0:l.teams)||[]).length>0}),V=D(()=>v.value!=null&&v.value!==0),j=D(()=>{var l;return E.value?V.value?(((l=A.value)==null?void 0:l.teams)||[]).length===1?e("account.switchToPersonal"):e("account.switchTeam"):e("account.switchToTeam"):""}),Ce=D(()=>E.value),He=D(()=>{var l;const r=(l=A.value)==null?void 0:l.currentTeamRole;return he(r)}),Se=D(()=>{var l,$;const r=($=(l=s.value)==null?void 0:l.accountInfo)==null?void 0:$.vipTypeName;return r&&r!=="Free"&&r!=="非VIP"}),ze=D(()=>{var r,l;return((l=(r=s.value)==null?void 0:r.accountInfo)==null?void 0:l.vipTypeName)||"Free"}),je=D(()=>Se.value?"vip-badge--active":"vip-badge--free"),Je=D(()=>{var l;const r=(l=s.value)==null?void 0:l.accountInfo;return Se.value?(r==null?void 0:r.vipRemainingDays)!=null?e("account.remainingDaysUnit",{n:r.vipRemainingDays}):e("na"):"∞"});function he(r){return e(r==="0"?"account.roleAdmin":r==="1"||r==="2"?"account.roleMember":"na")}function Qe(r){try{return new Date(r).toLocaleDateString("zh-CN",{year:"numeric",month:"2-digit",day:"2-digit"})}catch{return r}}function Te(){var l;const r=((l=A.value)==null?void 0:l.teams)||[];if(console.log("[AccountView] toggleTeamMenu:",{teamsCount:r.length,isInTeam:V.value,currentTeamId:v.value,teamIds:r.map($=>$.teamId)}),r.length===1&&V.value){ce(null);return}if(r.length===1&&!V.value){ce(r[0].teamId);return}m.value=!m.value}async function ce(r){var l,$;if(m.value=!1,console.log("[AccountView] handleSwitchTeam:",{teamId:r,currentTeamId:v.value}),r===void 0){console.error("[AccountView] teamId is undefined, team data may be corrupted"),O.error(e("account.switchTeamFailed"));return}if(r===v.value){console.log("[AccountView] Already in target team, skipping");return}try{const x=a.getClient();if(!x){O.error(e("account.switchTeamFailed"));return}const B=await x.call("evol.switch_team",{team_id:r,kiteToken:n.kiteToken});console.log("[AccountView] switch_team result:",B),B.status==="success"?(O.success((($=(l=B.data)==null?void 0:l.data)==null?void 0:$.message)||e("account.switchTeamSuccess")),await n.loadUserInfo(x)):O.error(B.error||e("account.switchTeamFailed"))}catch(x){console.error("Switch team failed:",x),O.error(e("account.switchTeamFailed"))}}async function Ie(){try{const r=a.getClient();r&&r.authenticated&&await n.loadUserInfo(r)}catch(r){console.error("Failed to load user info:",r)}}const Ye={chatbot:"#6366f1",codex:"#f59e0b",claudecode:"#10b981",gemini:"#3b82f6",openclaw:"#ef4444"},Ae=["chatbot","codex","claudecode","gemini","openclaw"],Xe=D(()=>{const r=N.value;return Ae.some(l=>(r[l+"Credits"]||0)>0)}),Ze=D(()=>{const r=N.value,l=r.totalCredits||1;return Ae.map($=>({key:$,value:r[$+"Credits"]||0,percent:Math.round((r[$+"Credits"]||0)/l*100),color:Ye[$]})).filter($=>$.value>0)}),et=D(()=>{const r=R.value;if(!r.length)return[];const l=Math.max(...r.map($=>$.totalCredits||0),1);return r.map($=>{const x=($.statDate||"").toString();return{label:x.length>=10?x.slice(5,10):x,value:$.totalCredits||0,percent:Math.round(($.totalCredits||0)/l*100)}})}),tt=D(()=>{const r=new Map;for(const x of b.value){const B=(x.statHour||"").toString(),z=parseInt(B.slice(11,13),10);isNaN(z)||r.set(z,x)}const l=[],$=Math.max(...b.value.map(x=>x.totalCredits||0),1);for(let x=0;x<24;x++){const B=r.get(x),z=(B==null?void 0:B.totalCredits)||0;l.push({label:String(x),value:z,percent:Math.round(z/$*100)})}return l});function ve(r){const l=new Date;return l.setDate(l.getDate()-r),l.toISOString().slice(0,10)}function st(r){return r?r.slice(5,16).replace("T"," "):""}async function pe(r){T.value=r,await fe()}async function fe(){var $;if(!n.kiteToken||a.status!=="connected")return;k.value=!0,f.value="";const r=ve(0),l=T.value;try{const x=l==="today"?r:ve(l==="7d"?6:29),B=r,[z,ae,ne,ie]=await Promise.all([a.callRpc("evol.get_user_summary",{kiteToken:n.kiteToken,startDate:x,endDate:B}),a.callRpc("evol.get_user_hourly_trend",{kiteToken:n.kiteToken,date:r}),l!=="today"?a.callRpc("evol.get_user_daily_trend",{kiteToken:n.kiteToken,startDate:x,endDate:B}):Promise.resolve({success:!0,data:[]}),a.callRpc("evol.get_credits_list",{kiteToken:n.kiteToken,pageNum:1,pageSize:10,startTime:x+" 00:00:00",endTime:B+" 23:59:59"})]);z.success&&(N.value=z.data||{}),ae.success&&(b.value=ae.data||[]),ne.success&&(R.value=ne.data||[]),ie.success&&(_.value=((($=ie.data)==null?void 0:$.list)||[]).filter(le=>le.changeType===3))}catch(x){f.value=x.message||e("common.error")}finally{k.value=!1}}async function Pe(){var r;if(n.kiteToken&&a.status==="connected")try{const l=await a.callRpc("evol.get_credits_stats",{kiteToken:n.kiteToken,period:"day"});l.success?h.value=((r=l.data)==null?void 0:r.total)||0:f.value=l.msg||e("common.error")}catch(l){f.value=l.message||e("common.error")}}async function ot(){if(n.kiteToken){C.value=!0;try{const r=await a.callRpc("evol.get_credits_package_list",{kiteToken:n.kiteToken});r.success&&(y.value=r.data||[])}catch(r){console.error("Load packages failed:",r)}finally{C.value=!1}}}async function at(){var r;if(n.kiteToken){I.value=!0;try{const l=await a.callRpc("evol.get_order_list",{kiteToken:n.kiteToken,page:1,pageSize:50});l.success&&(S.value=((r=l.data)==null?void 0:r.list)||[])}catch(l){console.error("Load orders failed:",l)}finally{I.value=!1}}}function nt(r){return r?new Date(r).toLocaleString():""}function it(r){return{0:e("credits.orderPending"),1:e("credits.orderPaying"),2:e("credits.orderPaid"),3:e("credits.orderFailed"),4:e("credits.orderClosed"),5:e("credits.orderRefunded")}[r]||e("common.unknown")}function Re(r){const l=r.target;!l.closest(".team-section")&&!l.closest(".personal-section")&&(m.value=!1)}return re(()=>{Ie(),Pe(),fe(),document.addEventListener("click",Re)}),mt(()=>{document.removeEventListener("click",Re)}),se(()=>a.status,r=>{r==="connected"&&(s.value||setTimeout(Ie,500),setTimeout(Pe,500),setTimeout(fe,500))}),se(o,r=>{r==="packages"&&y.value.length===0?ot():r==="orders"&&S.value.length===0&&at()}),(r,l)=>{var $,x,B,z,ae,ne,ie,le,Me,De,$e,xe,Ne,Ee,Le,Ve;return d(),u("div",rs,[t("h2",cs,i(c(e)("account.title")),1),c(s)?(d(),u("div",ls,[t("div",ds,[t("div",us,[l[9]||(l[9]=t("div",{class:"user-avatar"},[t("svg",{width:"40",height:"40",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2"},[t("path",{d:"M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2"}),t("circle",{cx:"12",cy:"7",r:"4"})])],-1)),t("div",ms,[t("div",hs,[t("span",vs,i((($=c(s).userInfo)==null?void 0:$.nickName)||c(e)("na")),1),t("span",{class:G(["vip-badge",je.value])},i(ze.value),3)]),t("div",ps,i(((x=c(s).userInfo)==null?void 0:x.phone)||c(e)("na")),1)])]),V.value?(d(),u("div",fs,[t("div",gs,[t("div",ys,[t("span",_s,i(c(e)("account.currentTeam")),1),Ce.value?(d(),u("button",{key:0,class:"team-switch-btn",onClick:Te},[l[11]||(l[11]=ge('<svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" data-v-c1058a2c><path d="M17 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2" data-v-c1058a2c></path><circle cx="9" cy="7" r="4" data-v-c1058a2c></circle><path d="M23 21v-2a4 4 0 0 0-3-3.87" data-v-c1058a2c></path><path d="M16 3.13a4 4 0 0 1 0 7.75" data-v-c1058a2c></path></svg>',1)),t("span",null,i(j.value),1),(((z=(B=A.value)==null?void 0:B.teams)==null?void 0:z.length)||0)>1?(d(),u("svg",bs,[...l[10]||(l[10]=[t("polyline",{points:"6 9 12 15 18 9"},null,-1)])])):L("",!0)])):L("",!0)]),t("div",ws,[t("span",ks,i(P.value),1),l[12]||(l[12]=t("span",{class:"team-meta-divider"},"·",-1)),t("span",Cs,i(He.value),1),l[13]||(l[13]=t("span",{class:"team-meta-divider"},"·",-1)),t("span",Ss,i(((ne=(ae=A.value.teams)==null?void 0:ae.find(g=>g.teamId===v.value))==null?void 0:ne.memberCount)||0)+" 人",1)])]),m.value&&(((le=(ie=A.value)==null?void 0:ie.teams)==null?void 0:le.length)||0)>1?(d(),u("div",{key:0,class:"team-menu",onClick:l[0]||(l[0]=ue(()=>{},["stop"]))},[(d(!0),u(W,null,H(M.value,g=>(d(),u("div",{key:g.teamId||0,class:G(["team-menu-item",{active:g.teamId===v.value}]),onClick:rt=>ce(g.teamId)},[t("div",Is,[t("div",As,[g.teamId===v.value?(d(),u("svg",Ps,[...l[14]||(l[14]=[t("polyline",{points:"20 6 9 17 4 12"},null,-1)])])):L("",!0),ee(" "+i(g.teamName),1)]),g.teamId?(d(),u("div",Rs,i(he(g.memberRole))+" · "+i(g.memberCount)+" 人 ",1)):L("",!0)])],10,Ts))),128))])):L("",!0)])):Ce.value?(d(),u("div",Ms,[t("button",{class:"team-switch-btn",onClick:Te},[l[16]||(l[16]=ge('<svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" data-v-c1058a2c><path d="M17 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2" data-v-c1058a2c></path><circle cx="9" cy="7" r="4" data-v-c1058a2c></circle><path d="M23 21v-2a4 4 0 0 0-3-3.87" data-v-c1058a2c></path><path d="M16 3.13a4 4 0 0 1 0 7.75" data-v-c1058a2c></path></svg>',1)),t("span",null,i(j.value),1),(((De=(Me=A.value)==null?void 0:Me.teams)==null?void 0:De.length)||0)>1?(d(),u("svg",Ds,[...l[15]||(l[15]=[t("polyline",{points:"6 9 12 15 18 9"},null,-1)])])):L("",!0)]),m.value&&(((xe=($e=A.value)==null?void 0:$e.teams)==null?void 0:xe.length)||0)>1?(d(),u("div",{key:0,class:"team-menu",onClick:l[1]||(l[1]=ue(()=>{},["stop"]))},[(d(!0),u(W,null,H(M.value,g=>(d(),u("div",{key:g.teamId||0,class:G(["team-menu-item",{active:g.teamId===v.value}]),onClick:rt=>ce(g.teamId)},[t("div",xs,[t("div",Ns,[g.teamId===v.value?(d(),u("svg",Es,[...l[17]||(l[17]=[t("polyline",{points:"20 6 9 17 4 12"},null,-1)])])):L("",!0),ee(" "+i(g.teamName),1)]),g.teamId?(d(),u("div",Ls,i(he(g.memberRole))+" · "+i(g.memberCount)+" 人 ",1)):L("",!0)])],10,$s))),128))])):L("",!0)])):L("",!0)]),t("div",Vs,[t("div",{class:G(["tab-item",{active:o.value==="overview"}]),onClick:l[2]||(l[2]=g=>o.value="overview")},i(c(e)("credits.overview")),3),t("div",{class:G(["tab-item",{active:o.value==="account"}]),onClick:l[3]||(l[3]=g=>o.value="account")},i(c(e)("account.accountInfo")),3),t("div",{class:G(["tab-item",{active:o.value==="packages"}]),onClick:l[4]||(l[4]=g=>o.value="packages")},i(c(e)("credits.packages")),3),t("div",{class:G(["tab-item",{active:o.value==="orders"}]),onClick:l[5]||(l[5]=g=>o.value="orders")},i(c(e)("credits.orders")),3)]),t("div",Ks,[o.value==="account"?(d(),u("div",Fs,[t("div",Bs,[t("div",Os,[t("span",Us,i(c(e)("account.userId")),1),t("span",Gs,i(((Ne=c(s).userInfo)==null?void 0:Ne.userId)||c(e)("na")),1)]),t("div",qs,[t("span",Ws,i(c(e)("account.aid")),1),t("span",Hs,i(((Ee=c(s).userInfo)==null?void 0:Ee.aid)||c(e)("na")),1)]),t("div",zs,[t("span",js,i(c(e)("account.vipType")),1),t("span",Js,i(((Le=c(s).accountInfo)==null?void 0:Le.vipTypeName)||c(e)("account.nonVip")),1)]),t("div",Qs,[t("span",Ys,i(c(e)("account.remainingDays")),1),t("span",Xs,i(Je.value),1)]),(Ve=c(s).accountInfo)!=null&&Ve.vipExpireTime?(d(),u("div",Zs,[t("span",eo,i(c(e)("account.expireTime")),1),t("span",to,i(Qe(c(s).accountInfo.vipExpireTime)),1)])):L("",!0)])])):L("",!0),o.value==="overview"?(d(),u("div",so,[t("div",oo,[t("div",ao,[t("button",{class:G({active:T.value==="today"}),onClick:l[6]||(l[6]=g=>pe("today"))},i(c(e)("credits.today")),3),t("button",{class:G({active:T.value==="7d"}),onClick:l[7]||(l[7]=g=>pe("7d"))},i(c(e)("credits.last7Days")),3),t("button",{class:G({active:T.value==="30d"}),onClick:l[8]||(l[8]=g=>pe("30d"))},i(c(e)("credits.last30Days")),3)])]),k.value?(d(),u("div",no,i(c(e)("common.loading")),1)):(d(),u(W,{key:1},[t("div",io,[t("div",ro,[t("div",co,i(c(e)("credits.totalCredits")),1),t("div",lo,i(N.value.totalCredits||0),1)]),t("div",uo,[t("div",mo,i(c(e)("credits.totalRequests")),1),t("div",ho,i(N.value.totalCount||0),1)]),t("div",vo,[t("div",po,i(c(e)("credits.totalCost")),1),t("div",fo,"$"+i((N.value.totalCost||0).toFixed(2)),1)])]),Xe.value?(d(),u("div",go,[(d(!0),u(W,null,H(Ze.value,g=>(d(),u("div",{key:g.key,class:"type-bar-row"},[t("span",yo,i(c(e)("credits."+g.key)),1),t("div",_o,[t("div",{class:"type-bar-fill",style:de({width:g.percent+"%",background:g.color})},null,4)]),t("span",bo,i(g.value),1)]))),128))])):L("",!0),T.value!=="today"&&R.value.length>0?(d(),u("div",wo,[t("div",ko,i(c(e)("credits.dailyTrend")),1),t("div",Co,[(d(!0),u(W,null,H(et.value,g=>(d(),u("div",{key:g.label,class:"bar-col"},[t("div",So,i(g.value),1),t("div",To,[t("div",{class:"bar-fill",style:de({height:g.percent+"%"})},null,4)]),t("div",Io,i(g.label),1)]))),128))])])):L("",!0),b.value.length>0?(d(),u("div",Ao,[t("div",Po,i(c(e)("credits.hourlyTrend")),1),t("div",Ro,[(d(!0),u(W,null,H(tt.value,g=>(d(),u("div",{key:g.label,class:"bar-col"},[t("div",Mo,i(g.value),1),t("div",Do,[t("div",{class:"bar-fill bar-fill-hourly",style:de({height:g.percent+"%"})},null,4)]),t("div",$o,i(g.label),1)]))),128))])])):L("",!0),!k.value&&!N.value.totalCredits&&_.value.length===0?(d(),u("div",xo,i(c(e)("credits.noTrendData")),1)):L("",!0),!k.value&&!N.value.totalCredits&&_.value.length>0?(d(),u("div",No," 统计数据正在生成中,请稍后刷新查看 ")):L("",!0),_.value.length>0?(d(),u("div",Eo,[t("div",Lo,i(c(e)("credits.recentRecords")),1),t("div",Vo,[(d(!0),u(W,null,H(_.value,g=>(d(),u("div",{key:g.id,class:"record-row"},[t("div",Ko,[t("span",Fo,i(g.model||"-"),1),t("span",Bo,i(g.functionType||"-"),1)]),t("div",Oo,[t("span",Uo,i(g.credits),1),t("span",Go,i(st(g.createTime)),1)])]))),128))])])):L("",!0)],64)),f.value?(d(),u("div",qo,i(f.value),1)):L("",!0)])):L("",!0),o.value==="packages"?(d(),u("div",Wo,[C.value?(d(),u("div",Ho,i(c(e)("common.loading")),1)):y.value.length===0?(d(),u("div",zo,i(c(e)("credits.noPackages")),1)):(d(),u("div",jo,[(d(!0),u(W,null,H(y.value,g=>(d(),u("div",{key:g.id,class:"package-item"},[t("div",Jo,i(g.name),1),t("div",Qo,i(g.credits)+" "+i(c(e)("credits.credits")),1)]))),128))]))])):L("",!0),o.value==="orders"?(d(),u("div",Yo,[I.value?(d(),u("div",Xo,i(c(e)("common.loading")),1)):S.value.length===0?(d(),u("div",Zo,i(c(e)("credits.noOrders")),1)):(d(),u("div",ea,[(d(!0),u(W,null,H(S.value,g=>(d(),u("div",{key:g.id,class:"order-item"},[t("div",ta,[t("div",sa,i(g.name||g.packageName||c(e)("credits.unknown")),1),t("div",oa,i(nt(g.createTime)),1)]),t("div",aa,i(it(g.status)),1)]))),128))]))])):L("",!0)])])):(d(),u("div",na,i(c(e)("common.loading")),1))])}}}),ra=X(ia,[["__scopeId","data-v-c1058a2c"]]),ca={class:"credits-view"},la={class:"page-title"},da={class:"panel"},ua={key:0,class:"loading"},ma={key:1,class:"empty"},ha={key:2,class:"records-list"},va={class:"record-info"},pa={class:"record-service"},fa={class:"record-time"},ga=Q({__name:"CreditsView",setup(p){const n=oe(),a=Y(),{t:s}=te(),e=w([]),o=w(!1);async function m(){var f;if(a.kiteToken){o.value=!0;try{const y=await n.callRpc("evol.get_credits_change_records",{kiteToken:a.kiteToken,page:1,pageSize:50});y.success&&(e.value=((f=y.data)==null?void 0:f.list)||[])}catch(y){console.error("Load records failed:",y)}finally{o.value=!1}}}function h(f){return f?new Date(f).toLocaleString():""}return re(()=>{m()}),se(()=>n.status,f=>{f==="connected"&&setTimeout(m,500)}),(f,y)=>(d(),u("div",ca,[t("h2",la,i(c(s)("credits.title")),1),t("div",da,[o.value?(d(),u("div",ua,i(c(s)("common.loading")),1)):e.value.length===0?(d(),u("div",ma,i(c(s)("credits.noRecords")),1)):(d(),u("div",ha,[(d(!0),u(W,null,H(e.value,C=>(d(),u("div",{key:C.id,class:"record-item"},[t("div",va,[t("div",pa,i(C.serviceName),1),t("div",fa,i(h(C.createTime)),1)]),t("div",{class:G(["record-amount",{positive:C.changeAmount>0}])},i(C.changeAmount>0?"+":"")+i(C.changeAmount),3)]))),128))]))])]))}}),ya=X(ga,[["__scopeId","data-v-0a826961"]]),_a={class:"team-view"},ba={class:"page-header"},wa={class:"page-title"},ka={key:0,class:"loading"},Ca={key:1,class:"team-grid"},Sa={class:"card-body"},Ta={class:"card-name"},Ia={class:"card-meta"},Aa={key:0,class:"card-active-badge"},Pa=["onClick"],Ra={class:"card-body"},Ma={class:"card-name"},Da={class:"card-meta"},$a={key:0,class:"card-active-badge"},xa=Q({__name:"TeamView",setup(p){const n=be(),a=Y(),s=oe(),{userInfo:e}=Oe(a),{t:o}=te(),m=w(!1),h=w(!1),f=w(!1),y=w({name:""}),C=D(()=>{var b,_;return((_=(b=e.value)==null?void 0:b.teamInfo)==null?void 0:_.teams)||[]}),S=D(()=>{var b,_;return(_=(b=e.value)==null?void 0:b.teamInfo)==null?void 0:_.currentTeamId});function I(b){return o(b==="0"?"team.roleCreator":b==="1"?"team.roleAdmin":b==="2"?"team.roleMember":"na")}function T(b){n.push({name:"team-detail",params:{teamId:b.teamId}})}async function k(b){if(b!==S.value&&S.value)try{const _=s.getClient();if(!_)return;const A=await _.call("evol.switch_team",{team_id:b,kiteToken:a.kiteToken});A.status==="success"?(O.success(o("team.switchSuccess")),await a.loadUserInfo(_)):O.error(A.error||o("team.switchFailed"))}catch{O.error(o("team.switchFailed"))}}async function N(){if(y.value.name.trim()){f.value=!0;try{const b=await s.callRpc("evol.team.create",{kiteToken:a.kiteToken,name:y.value.name.trim()});if(b.success){O.success(o("team.createSuccess")),h.value=!1,y.value.name="";const _=s.getClient();_&&await a.loadUserInfo(_)}else O.error(b.msg||o("team.createFailed"))}catch{O.error(o("team.createFailed"))}finally{f.value=!1}}}async function R(){m.value=!0;try{const b=s.getClient();b&&b.authenticated&&await a.loadUserInfo(b)}catch(b){console.error("Failed to load user info:",b)}finally{m.value=!1}}return re(()=>{e.value||R()}),se(()=>s.status,b=>{b==="connected"&&!e.value&&setTimeout(R,500)}),(b,_)=>{const A=q("el-input"),v=q("el-form-item"),P=q("el-form"),M=q("el-button"),E=q("el-dialog");return d(),u("div",_a,[t("div",ba,[t("h2",wa,i(c(o)("team.title")),1),t("button",{class:"create-btn",onClick:_[0]||(_[0]=V=>h.value=!0)},[_[5]||(_[5]=t("svg",{width:"18",height:"18",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)),ee(" "+i(c(o)("team.createTeam")),1)])]),m.value?(d(),u("div",ka,i(c(o)("common.loading")),1)):(d(),u("div",Ca,[t("div",{class:G(["team-card personal-card",{active:!S.value}]),onClick:_[1]||(_[1]=V=>k(null))},[_[6]||(_[6]=t("div",{class:"card-icon personal-icon"},[t("svg",{width:"28",height:"28",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2"},[t("path",{d:"M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2"}),t("circle",{cx:"12",cy:"7",r:"4"})])],-1)),t("div",Sa,[t("div",Ta,i(c(o)("team.personalVersion")),1),t("div",Ia,i(c(o)("team.personalDesc")),1)]),S.value?L("",!0):(d(),u("div",Aa,i(c(o)("team.current")),1))],2),(d(!0),u(W,null,H(C.value,V=>(d(),u("div",{key:V.teamId,class:G(["team-card",{active:V.teamId===S.value}]),onClick:j=>T(V)},[_[8]||(_[8]=ge('<div class="card-icon team-icon" data-v-d95e6c19><svg width="28" height="28" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" data-v-d95e6c19><path d="M17 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2" data-v-d95e6c19></path><circle cx="9" cy="7" r="4" data-v-d95e6c19></circle><path d="M23 21v-2a4 4 0 0 0-3-3.87" data-v-d95e6c19></path><path d="M16 3.13a4 4 0 0 1 0 7.75" data-v-d95e6c19></path></svg></div>',1)),t("div",Ra,[t("div",Ma,i(V.teamName),1),t("div",Da,[t("span",null,i(I(V.memberRole)),1),_[7]||(_[7]=t("span",{class:"meta-dot"},"·",-1)),t("span",null,i(V.memberCount||0)+" "+i(c(o)("team.members")),1)])]),V.teamId===S.value?(d(),u("div",$a,i(c(o)("team.current")),1)):L("",!0)],10,Pa))),128))])),F(E,{modelValue:h.value,"onUpdate:modelValue":_[4]||(_[4]=V=>h.value=V),title:c(o)("team.createTeam"),width:"420px","close-on-click-modal":!1},{footer:U(()=>[F(M,{onClick:_[3]||(_[3]=V=>h.value=!1)},{default:U(()=>[ee(i(c(o)("common.cancel")),1)]),_:1}),F(M,{type:"primary",loading:f.value,onClick:N},{default:U(()=>[ee(i(c(o)("common.confirm")),1)]),_:1},8,["loading"])]),default:U(()=>[F(P,{model:y.value,"label-position":"top"},{default:U(()=>[F(v,{label:c(o)("team.teamName")},{default:U(()=>[F(A,{modelValue:y.value.name,"onUpdate:modelValue":_[2]||(_[2]=V=>y.value.name=V),placeholder:c(o)("team.teamNamePlaceholder"),maxlength:"30"},null,8,["modelValue","placeholder"])]),_:1},8,["label"])]),_:1},8,["model"])]),_:1},8,["modelValue","title"])])}}}),Na=X(xa,[["__scopeId","data-v-d95e6c19"]]),Ea={class:"page-title"},La={class:"panel",style:{"margin-bottom":"20px"}},Va={class:"panel-title"},Ka={key:0,class:"empty-panel"},Fa={key:1,class:"empty-panel"},Ba={key:2,class:"endpoint-list"},Oa={class:"endpoint-name"},Ua={class:"endpoint-input-group"},Ga=["value"],qa=["onClick"],Wa={class:"panel"},Ha={class:"panel-title"},za={key:0,class:"empty-panel"},ja={key:1,class:"empty-panel"},Ja={class:"mono"},Qa=["onClick"],Ya=Q({__name:"AiServiceView",setup(p){const n=Y(),a=oe(),{t:s}=te(),e=w([]),o=w(!1),m=w([]),h=w(!1),f={claude:"Claude Code",gemini:"Gemini Cli",codex:"CodeX",openclaw:"OpenClaw"};async function y(){o.value=!0;try{const I=await a.callRpc("proxy.get_endpoints",{}),T=I==null?void 0:I.endpoints;T&&(e.value=Object.entries(T).map(([k,N])=>({name:f[k]||k,url:`${N.replace(/\/$/,"")}`})))}catch(I){console.error("Failed to load proxy endpoints:",I)}finally{o.value=!1}}async function C(){if(n.kiteToken){h.value=!0;try{const I=await a.callRpc("evol.get_api_keys",{kiteToken:n.kiteToken});I.success&&(m.value=I.data||[])}catch(I){console.error("Failed to load API keys:",I)}finally{h.value=!1}}}async function S(I){try{await navigator.clipboard.writeText(I),O.success(s("aiService.copied"))}catch{O.error(s("aiService.copyFailed"))}}return re(()=>{y(),C()}),se(()=>a.status,I=>{I==="connected"&&setTimeout(()=>{y(),C()},500)}),(I,T)=>{const k=q("el-table-column"),N=q("el-table");return d(),u("div",null,[t("h2",Ea,i(c(s)("aiService.title")),1),t("div",La,[t("h3",Va,i(c(s)("aiService.proxyEndpoints")),1),o.value?(d(),u("div",Ka,i(c(s)("common.loading")),1)):e.value.length===0?(d(),u("div",Fa,i(c(s)("aiService.noEndpoints")),1)):(d(),u("div",Ba,[(d(!0),u(W,null,H(e.value,R=>(d(),u("div",{key:R.name,class:"endpoint-item"},[t("div",Oa,i(R.name),1),t("div",Ua,[t("input",{type:"text",value:R.url,readonly:"",class:"endpoint-input mono"},null,8,Ga),t("button",{class:"copy-btn",onClick:b=>S(R.url)},i(c(s)("aiService.copy")),9,qa)])]))),128))]))]),t("div",Wa,[t("h3",Ha,i(c(s)("aiService.myKeys")),1),h.value?(d(),u("div",za,i(c(s)("common.loading")),1)):m.value.length===0?(d(),u("div",ja,i(c(s)("aiService.noKeys")),1)):(d(),Be(N,{key:2,data:m.value,style:{width:"100%"}},{default:U(()=>[F(k,{label:c(s)("endpoint.keyName"),prop:"name","min-width":"120"},null,8,["label"]),F(k,{label:c(s)("endpoint.keyValue"),"min-width":"200"},{default:U(({row:R})=>[t("span",Ja,i(R.apiKey||""),1)]),_:1},8,["label"]),F(k,{label:"",width:"100"},{default:U(({row:R})=>[t("button",{class:"copy-btn-small",onClick:b=>S(R.apiKey||"")},i(c(s)("aiService.copy")),9,Qa)]),_:1})]),_:1},8,["data"]))])])}}}),Xa=X(Ya,[["__scopeId","data-v-5ea15d0e"]]),Z=ht({history:vt(),routes:[{path:"/login",name:"login",component:is,meta:{requiresAuth:!1}},{path:"/",name:"main",component:Qt,meta:{requiresAuth:!0},children:[{path:"",redirect:"/account"},{path:"account",name:"account",component:ra},{path:"ai-service",name:"ai-service",component:Xa},{path:"credits",name:"credits",component:ya},{path:"team",name:"team",component:Na},{path:"team/:teamId",name:"team-detail",component:()=>ye(()=>import("./TeamDetailView-gy_MBEqG.js"),__vite__mapDeps([4,1,2,5]))},{path:"commission",name:"commission",component:()=>ye(()=>import("./CommissionView-Cs_ys6Gm.js"),__vite__mapDeps([6,1,2,7]))}]}]});Z.beforeEach((p,n,a)=>{const s=Y();if(p.meta.requiresAuth!==!1&&!s.isAuthenticated)sessionStorage.setItem("redirectAfterLogin",p.fullPath),a("/login");else if(p.path==="/login"&&s.isAuthenticated){const o=sessionStorage.getItem("redirectAfterLogin")||"/";sessionStorage.removeItem("redirectAfterLogin"),a(o)}else a()});const me=pt(yt),Za=ft();me.use(Za);me.use(Z);me.use(gt);me.mount("#app");export{X as _,Y as a,te as b,oe as u};
@@ -0,0 +1,29 @@
1
+ /**
2
+ * @vue/shared v3.5.30
3
+ * (c) 2018-present Yuxi (Evan) You and Vue contributors
4
+ * @license MIT
5
+ **/function Zs(e){const t=Object.create(null);for(const n of e.split(","))t[n]=1;return n=>n in t}const oe={},Kt=[],je=()=>{},Mi=()=>!1,Qn=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&(e.charCodeAt(2)>122||e.charCodeAt(2)<97),er=e=>e.startsWith("onUpdate:"),de=Object.assign,tr=(e,t)=>{const n=e.indexOf(t);n>-1&&e.splice(n,1)},Tl=Object.prototype.hasOwnProperty,se=(e,t)=>Tl.call(e,t),V=Array.isArray,Gt=e=>xn(e)==="[object Map]",Xt=e=>xn(e)==="[object Set]",Rr=e=>xn(e)==="[object Date]",G=e=>typeof e=="function",ae=e=>typeof e=="string",ke=e=>typeof e=="symbol",ee=e=>e!==null&&typeof e=="object",Di=e=>(ee(e)||G(e))&&G(e.then)&&G(e.catch),Li=Object.prototype.toString,xn=e=>Li.call(e),Ol=e=>xn(e).slice(8,-1),Fi=e=>xn(e)==="[object Object]",Xn=e=>ae(e)&&e!=="NaN"&&e[0]!=="-"&&""+parseInt(e,10)===e,ln=Zs(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),Zn=e=>{const t=Object.create(null);return n=>t[n]||(t[n]=e(n))},Pl=/-\w/g,Re=Zn(e=>e.replace(Pl,t=>t.slice(1).toUpperCase())),Il=/\B([A-Z])/g,Rt=Zn(e=>e.replace(Il,"-$1").toLowerCase()),es=Zn(e=>e.charAt(0).toUpperCase()+e.slice(1)),Dn=Zn(e=>e?`on${es(e)}`:""),tt=(e,t)=>!Object.is(e,t),Ln=(e,...t)=>{for(let n=0;n<e.length;n++)e[n](...t)},Vi=(e,t,n,s=!1)=>{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,writable:s,value:n})},ts=e=>{const t=parseFloat(e);return isNaN(t)?e:t},Nl=e=>{const t=ae(e)?Number(e):NaN;return isNaN(t)?e:t};let wr;const ns=()=>wr||(wr=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{});function ss(e){if(V(e)){const t={};for(let n=0;n<e.length;n++){const s=e[n],r=ae(s)?Fl(s):ss(s);if(r)for(const i in r)t[i]=r[i]}return t}else if(ae(e)||ee(e))return e}const Ml=/;(?![^(]*\))/g,Dl=/:([^]+)/,Ll=/\/\*[^]*?\*\//g;function Fl(e){const t={};return e.replace(Ll,"").split(Ml).forEach(n=>{if(n){const s=n.split(Dl);s.length>1&&(t[s[0].trim()]=s[1].trim())}}),t}function rs(e){let t="";if(ae(e))t=e;else if(V(e))for(let n=0;n<e.length;n++){const s=rs(e[n]);s&&(t+=s+" ")}else if(ee(e))for(const n in e)e[n]&&(t+=n+" ");return t.trim()}function gu(e){if(!e)return null;let{class:t,style:n}=e;return t&&!ae(t)&&(e.class=rs(t)),n&&(e.style=ss(n)),e}const Vl="itemscope,allowfullscreen,formnovalidate,ismap,nomodule,novalidate,readonly",Hl=Zs(Vl);function Hi(e){return!!e||e===""}function jl(e,t){if(e.length!==t.length)return!1;let n=!0;for(let s=0;n&&s<e.length;s++)n=Ct(e[s],t[s]);return n}function Ct(e,t){if(e===t)return!0;let n=Rr(e),s=Rr(t);if(n||s)return n&&s?e.getTime()===t.getTime():!1;if(n=ke(e),s=ke(t),n||s)return e===t;if(n=V(e),s=V(t),n||s)return n&&s?jl(e,t):!1;if(n=ee(e),s=ee(t),n||s){if(!n||!s)return!1;const r=Object.keys(e).length,i=Object.keys(t).length;if(r!==i)return!1;for(const o in e){const l=e.hasOwnProperty(o),c=t.hasOwnProperty(o);if(l&&!c||!l&&c||!Ct(e[o],t[o]))return!1}}return String(e)===String(t)}function nr(e,t){return e.findIndex(n=>Ct(n,t))}const ji=e=>!!(e&&e.__v_isRef===!0),Bl=e=>ae(e)?e:e==null?"":V(e)||ee(e)&&(e.toString===Li||!G(e.toString))?ji(e)?Bl(e.value):JSON.stringify(e,Bi,2):String(e),Bi=(e,t)=>ji(t)?Bi(e,t.value):Gt(t)?{[`Map(${t.size})`]:[...t.entries()].reduce((n,[s,r],i)=>(n[_s(s,i)+" =>"]=r,n),{})}:Xt(t)?{[`Set(${t.size})`]:[...t.values()].map(n=>_s(n))}:ke(t)?_s(t):ee(t)&&!V(t)&&!Fi(t)?String(t):t,_s=(e,t="")=>{var n;return ke(e)?`Symbol(${(n=e.description)!=null?n:t})`:e};/**
6
+ * @vue/reactivity v3.5.30
7
+ * (c) 2018-present Yuxi (Evan) You and Vue contributors
8
+ * @license MIT
9
+ **/let _e;class ki{constructor(t=!1){this.detached=t,this._active=!0,this._on=0,this.effects=[],this.cleanups=[],this._isPaused=!1,this.__v_skip=!0,this.parent=_e,!t&&_e&&(this.index=(_e.scopes||(_e.scopes=[])).push(this)-1)}get active(){return this._active}pause(){if(this._active){this._isPaused=!0;let t,n;if(this.scopes)for(t=0,n=this.scopes.length;t<n;t++)this.scopes[t].pause();for(t=0,n=this.effects.length;t<n;t++)this.effects[t].pause()}}resume(){if(this._active&&this._isPaused){this._isPaused=!1;let t,n;if(this.scopes)for(t=0,n=this.scopes.length;t<n;t++)this.scopes[t].resume();for(t=0,n=this.effects.length;t<n;t++)this.effects[t].resume()}}run(t){if(this._active){const n=_e;try{return _e=this,t()}finally{_e=n}}}on(){++this._on===1&&(this.prevScope=_e,_e=this)}off(){this._on>0&&--this._on===0&&(_e=this.prevScope,this.prevScope=void 0)}stop(t){if(this._active){this._active=!1;let n,s;for(n=0,s=this.effects.length;n<s;n++)this.effects[n].stop();for(this.effects.length=0,n=0,s=this.cleanups.length;n<s;n++)this.cleanups[n]();if(this.cleanups.length=0,this.scopes){for(n=0,s=this.scopes.length;n<s;n++)this.scopes[n].stop(!0);this.scopes.length=0}if(!this.detached&&this.parent&&!t){const r=this.parent.scopes.pop();r&&r!==this&&(this.parent.scopes[this.index]=r,r.index=this.index)}this.parent=void 0}}}function Ui(e){return new ki(e)}function Ki(){return _e}function kl(e,t=!1){_e&&_e.cleanups.push(e)}let ce;const ys=new WeakSet;class Gi{constructor(t){this.fn=t,this.deps=void 0,this.depsTail=void 0,this.flags=5,this.next=void 0,this.cleanup=void 0,this.scheduler=void 0,_e&&_e.active&&_e.effects.push(this)}pause(){this.flags|=64}resume(){this.flags&64&&(this.flags&=-65,ys.has(this)&&(ys.delete(this),this.trigger()))}notify(){this.flags&2&&!(this.flags&32)||this.flags&8||$i(this)}run(){if(!(this.flags&1))return this.fn();this.flags|=2,Tr(this),qi(this);const t=ce,n=Be;ce=this,Be=!0;try{return this.fn()}finally{Ji(this),ce=t,Be=n,this.flags&=-3}}stop(){if(this.flags&1){for(let t=this.deps;t;t=t.nextDep)ir(t);this.deps=this.depsTail=void 0,Tr(this),this.onStop&&this.onStop(),this.flags&=-2}}trigger(){this.flags&64?ys.add(this):this.scheduler?this.scheduler():this.runIfDirty()}runIfDirty(){Ns(this)&&this.run()}get dirty(){return Ns(this)}}let Wi=0,cn,fn;function $i(e,t=!1){if(e.flags|=8,t){e.next=fn,fn=e;return}e.next=cn,cn=e}function sr(){Wi++}function rr(){if(--Wi>0)return;if(fn){let t=fn;for(fn=void 0;t;){const n=t.next;t.next=void 0,t.flags&=-9,t=n}}let e;for(;cn;){let t=cn;for(cn=void 0;t;){const n=t.next;if(t.next=void 0,t.flags&=-9,t.flags&1)try{t.trigger()}catch(s){e||(e=s)}t=n}}if(e)throw e}function qi(e){for(let t=e.deps;t;t=t.nextDep)t.version=-1,t.prevActiveLink=t.dep.activeLink,t.dep.activeLink=t}function Ji(e){let t,n=e.depsTail,s=n;for(;s;){const r=s.prevDep;s.version===-1?(s===n&&(n=r),ir(s),Ul(s)):t=s,s.dep.activeLink=s.prevActiveLink,s.prevActiveLink=void 0,s=r}e.deps=t,e.depsTail=n}function Ns(e){for(let t=e.deps;t;t=t.nextDep)if(t.dep.version!==t.version||t.dep.computed&&(zi(t.dep.computed)||t.dep.version!==t.version))return!0;return!!e._dirty}function zi(e){if(e.flags&4&&!(e.flags&16)||(e.flags&=-17,e.globalVersion===_n)||(e.globalVersion=_n,!e.isSSR&&e.flags&128&&(!e.deps&&!e._dirty||!Ns(e))))return;e.flags|=2;const t=e.dep,n=ce,s=Be;ce=e,Be=!0;try{qi(e);const r=e.fn(e._value);(t.version===0||tt(r,e._value))&&(e.flags|=128,e._value=r,t.version++)}catch(r){throw t.version++,r}finally{ce=n,Be=s,Ji(e),e.flags&=-3}}function ir(e,t=!1){const{dep:n,prevSub:s,nextSub:r}=e;if(s&&(s.nextSub=r,e.prevSub=void 0),r&&(r.prevSub=s,e.nextSub=void 0),n.subs===e&&(n.subs=s,!s&&n.computed)){n.computed.flags&=-5;for(let i=n.computed.deps;i;i=i.nextDep)ir(i,!0)}!t&&!--n.sc&&n.map&&n.map.delete(n.key)}function Ul(e){const{prevDep:t,nextDep:n}=e;t&&(t.nextDep=n,e.prevDep=void 0),n&&(n.prevDep=t,e.nextDep=void 0)}let Be=!0;const Yi=[];function ut(){Yi.push(Be),Be=!1}function ht(){const e=Yi.pop();Be=e===void 0?!0:e}function Tr(e){const{cleanup:t}=e;if(e.cleanup=void 0,t){const n=ce;ce=void 0;try{t()}finally{ce=n}}}let _n=0;class Kl{constructor(t,n){this.sub=t,this.dep=n,this.version=n.version,this.nextDep=this.prevDep=this.nextSub=this.prevSub=this.prevActiveLink=void 0}}class or{constructor(t){this.computed=t,this.version=0,this.activeLink=void 0,this.subs=void 0,this.map=void 0,this.key=void 0,this.sc=0,this.__v_skip=!0}track(t){if(!ce||!Be||ce===this.computed)return;let n=this.activeLink;if(n===void 0||n.sub!==ce)n=this.activeLink=new Kl(ce,this),ce.deps?(n.prevDep=ce.depsTail,ce.depsTail.nextDep=n,ce.depsTail=n):ce.deps=ce.depsTail=n,Qi(n);else if(n.version===-1&&(n.version=this.version,n.nextDep)){const s=n.nextDep;s.prevDep=n.prevDep,n.prevDep&&(n.prevDep.nextDep=s),n.prevDep=ce.depsTail,n.nextDep=void 0,ce.depsTail.nextDep=n,ce.depsTail=n,ce.deps===n&&(ce.deps=s)}return n}trigger(t){this.version++,_n++,this.notify(t)}notify(t){sr();try{for(let n=this.subs;n;n=n.prevSub)n.sub.notify()&&n.sub.dep.notify()}finally{rr()}}}function Qi(e){if(e.dep.sc++,e.sub.flags&4){const t=e.dep.computed;if(t&&!e.dep.subs){t.flags|=20;for(let s=t.deps;s;s=s.nextDep)Qi(s)}const n=e.dep.subs;n!==e&&(e.prevSub=n,n&&(n.nextSub=e)),e.dep.subs=e}}const kn=new WeakMap,Dt=Symbol(""),Ms=Symbol(""),yn=Symbol("");function ye(e,t,n){if(Be&&ce){let s=kn.get(e);s||kn.set(e,s=new Map);let r=s.get(n);r||(s.set(n,r=new or),r.map=s,r.key=n),r.track()}}function ct(e,t,n,s,r,i){const o=kn.get(e);if(!o){_n++;return}const l=c=>{c&&c.trigger()};if(sr(),t==="clear")o.forEach(l);else{const c=V(e),a=c&&Xn(n);if(c&&n==="length"){const f=Number(s);o.forEach((h,p)=>{(p==="length"||p===yn||!ke(p)&&p>=f)&&l(h)})}else switch((n!==void 0||o.has(void 0))&&l(o.get(n)),a&&l(o.get(yn)),t){case"add":c?a&&l(o.get("length")):(l(o.get(Dt)),Gt(e)&&l(o.get(Ms)));break;case"delete":c||(l(o.get(Dt)),Gt(e)&&l(o.get(Ms)));break;case"set":Gt(e)&&l(o.get(Dt));break}}rr()}function Gl(e,t){const n=kn.get(e);return n&&n.get(t)}function jt(e){const t=Y(e);return t===e?t:(ye(t,"iterate",yn),De(e)?t:t.map(Ue))}function is(e){return ye(e=Y(e),"iterate",yn),e}function Ze(e,t){return dt(e)?qt(nt(e)?Ue(t):t):Ue(t)}const Wl={__proto__:null,[Symbol.iterator](){return vs(this,Symbol.iterator,e=>Ze(this,e))},concat(...e){return jt(this).concat(...e.map(t=>V(t)?jt(t):t))},entries(){return vs(this,"entries",e=>(e[1]=Ze(this,e[1]),e))},every(e,t){return rt(this,"every",e,t,void 0,arguments)},filter(e,t){return rt(this,"filter",e,t,n=>n.map(s=>Ze(this,s)),arguments)},find(e,t){return rt(this,"find",e,t,n=>Ze(this,n),arguments)},findIndex(e,t){return rt(this,"findIndex",e,t,void 0,arguments)},findLast(e,t){return rt(this,"findLast",e,t,n=>Ze(this,n),arguments)},findLastIndex(e,t){return rt(this,"findLastIndex",e,t,void 0,arguments)},forEach(e,t){return rt(this,"forEach",e,t,void 0,arguments)},includes(...e){return bs(this,"includes",e)},indexOf(...e){return bs(this,"indexOf",e)},join(e){return jt(this).join(e)},lastIndexOf(...e){return bs(this,"lastIndexOf",e)},map(e,t){return rt(this,"map",e,t,void 0,arguments)},pop(){return en(this,"pop")},push(...e){return en(this,"push",e)},reduce(e,...t){return Or(this,"reduce",e,t)},reduceRight(e,...t){return Or(this,"reduceRight",e,t)},shift(){return en(this,"shift")},some(e,t){return rt(this,"some",e,t,void 0,arguments)},splice(...e){return en(this,"splice",e)},toReversed(){return jt(this).toReversed()},toSorted(e){return jt(this).toSorted(e)},toSpliced(...e){return jt(this).toSpliced(...e)},unshift(...e){return en(this,"unshift",e)},values(){return vs(this,"values",e=>Ze(this,e))}};function vs(e,t,n){const s=is(e),r=s[t]();return s!==e&&!De(e)&&(r._next=r.next,r.next=()=>{const i=r._next();return i.done||(i.value=n(i.value)),i}),r}const $l=Array.prototype;function rt(e,t,n,s,r,i){const o=is(e),l=o!==e&&!De(e),c=o[t];if(c!==$l[t]){const h=c.apply(e,i);return l?Ue(h):h}let a=n;o!==e&&(l?a=function(h,p){return n.call(this,Ze(e,h),p,e)}:n.length>2&&(a=function(h,p){return n.call(this,h,p,e)}));const f=c.call(o,a,s);return l&&r?r(f):f}function Or(e,t,n,s){const r=is(e),i=r!==e&&!De(e);let o=n,l=!1;r!==e&&(i?(l=s.length===0,o=function(a,f,h){return l&&(l=!1,a=Ze(e,a)),n.call(this,a,Ze(e,f),h,e)}):n.length>3&&(o=function(a,f,h){return n.call(this,a,f,h,e)}));const c=r[t](o,...s);return l?Ze(e,c):c}function bs(e,t,n){const s=Y(e);ye(s,"iterate",yn);const r=s[t](...n);return(r===-1||r===!1)&&os(n[0])?(n[0]=Y(n[0]),s[t](...n)):r}function en(e,t,n=[]){ut(),sr();const s=Y(e)[t].apply(e,n);return rr(),ht(),s}const ql=Zs("__proto__,__v_isRef,__isVue"),Xi=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!=="arguments"&&e!=="caller").map(e=>Symbol[e]).filter(ke));function Jl(e){ke(e)||(e=String(e));const t=Y(this);return ye(t,"has",e),t.hasOwnProperty(e)}class Zi{constructor(t=!1,n=!1){this._isReadonly=t,this._isShallow=n}get(t,n,s){if(n==="__v_skip")return t.__v_skip;const r=this._isReadonly,i=this._isShallow;if(n==="__v_isReactive")return!r;if(n==="__v_isReadonly")return r;if(n==="__v_isShallow")return i;if(n==="__v_raw")return s===(r?i?rc:so:i?no:to).get(t)||Object.getPrototypeOf(t)===Object.getPrototypeOf(s)?t:void 0;const o=V(t);if(!r){let c;if(o&&(c=Wl[n]))return c;if(n==="hasOwnProperty")return Jl}const l=Reflect.get(t,n,fe(t)?t:s);if((ke(n)?Xi.has(n):ql(n))||(r||ye(t,"get",n),i))return l;if(fe(l)){const c=o&&Xn(n)?l:l.value;return r&&ee(c)?Ls(c):c}return ee(l)?r?Ls(l):Rn(l):l}}class eo extends Zi{constructor(t=!1){super(!1,t)}set(t,n,s,r){let i=t[n];const o=V(t)&&Xn(n);if(!this._isShallow){const a=dt(i);if(!De(s)&&!dt(s)&&(i=Y(i),s=Y(s)),!o&&fe(i)&&!fe(s))return a||(i.value=s),!0}const l=o?Number(n)<t.length:se(t,n),c=Reflect.set(t,n,s,fe(t)?t:r);return t===Y(r)&&(l?tt(s,i)&&ct(t,"set",n,s):ct(t,"add",n,s)),c}deleteProperty(t,n){const s=se(t,n);t[n];const r=Reflect.deleteProperty(t,n);return r&&s&&ct(t,"delete",n,void 0),r}has(t,n){const s=Reflect.has(t,n);return(!ke(n)||!Xi.has(n))&&ye(t,"has",n),s}ownKeys(t){return ye(t,"iterate",V(t)?"length":Dt),Reflect.ownKeys(t)}}class zl extends Zi{constructor(t=!1){super(!0,t)}set(t,n){return!0}deleteProperty(t,n){return!0}}const Yl=new eo,Ql=new zl,Xl=new eo(!0);const Ds=e=>e,Pn=e=>Reflect.getPrototypeOf(e);function Zl(e,t,n){return function(...s){const r=this.__v_raw,i=Y(r),o=Gt(i),l=e==="entries"||e===Symbol.iterator&&o,c=e==="keys"&&o,a=r[e](...s),f=n?Ds:t?qt:Ue;return!t&&ye(i,"iterate",c?Ms:Dt),de(Object.create(a),{next(){const{value:h,done:p}=a.next();return p?{value:h,done:p}:{value:l?[f(h[0]),f(h[1])]:f(h),done:p}}})}}function In(e){return function(...t){return e==="delete"?!1:e==="clear"?void 0:this}}function ec(e,t){const n={get(r){const i=this.__v_raw,o=Y(i),l=Y(r);e||(tt(r,l)&&ye(o,"get",r),ye(o,"get",l));const{has:c}=Pn(o),a=t?Ds:e?qt:Ue;if(c.call(o,r))return a(i.get(r));if(c.call(o,l))return a(i.get(l));i!==o&&i.get(r)},get size(){const r=this.__v_raw;return!e&&ye(Y(r),"iterate",Dt),r.size},has(r){const i=this.__v_raw,o=Y(i),l=Y(r);return e||(tt(r,l)&&ye(o,"has",r),ye(o,"has",l)),r===l?i.has(r):i.has(r)||i.has(l)},forEach(r,i){const o=this,l=o.__v_raw,c=Y(l),a=t?Ds:e?qt:Ue;return!e&&ye(c,"iterate",Dt),l.forEach((f,h)=>r.call(i,a(f),a(h),o))}};return de(n,e?{add:In("add"),set:In("set"),delete:In("delete"),clear:In("clear")}:{add(r){const i=Y(this),o=Pn(i),l=Y(r),c=!t&&!De(r)&&!dt(r)?l:r;return o.has.call(i,c)||tt(r,c)&&o.has.call(i,r)||tt(l,c)&&o.has.call(i,l)||(i.add(c),ct(i,"add",c,c)),this},set(r,i){!t&&!De(i)&&!dt(i)&&(i=Y(i));const o=Y(this),{has:l,get:c}=Pn(o);let a=l.call(o,r);a||(r=Y(r),a=l.call(o,r));const f=c.call(o,r);return o.set(r,i),a?tt(i,f)&&ct(o,"set",r,i):ct(o,"add",r,i),this},delete(r){const i=Y(this),{has:o,get:l}=Pn(i);let c=o.call(i,r);c||(r=Y(r),c=o.call(i,r)),l&&l.call(i,r);const a=i.delete(r);return c&&ct(i,"delete",r,void 0),a},clear(){const r=Y(this),i=r.size!==0,o=r.clear();return i&&ct(r,"clear",void 0,void 0),o}}),["keys","values","entries",Symbol.iterator].forEach(r=>{n[r]=Zl(r,e,t)}),n}function lr(e,t){const n=ec(e,t);return(s,r,i)=>r==="__v_isReactive"?!e:r==="__v_isReadonly"?e:r==="__v_raw"?s:Reflect.get(se(n,r)&&r in s?n:s,r,i)}const tc={get:lr(!1,!1)},nc={get:lr(!1,!0)},sc={get:lr(!0,!1)};const to=new WeakMap,no=new WeakMap,so=new WeakMap,rc=new WeakMap;function ic(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function oc(e){return e.__v_skip||!Object.isExtensible(e)?0:ic(Ol(e))}function Rn(e){return dt(e)?e:cr(e,!1,Yl,tc,to)}function ro(e){return cr(e,!1,Xl,nc,no)}function Ls(e){return cr(e,!0,Ql,sc,so)}function cr(e,t,n,s,r){if(!ee(e)||e.__v_raw&&!(t&&e.__v_isReactive))return e;const i=oc(e);if(i===0)return e;const o=r.get(e);if(o)return o;const l=new Proxy(e,i===2?s:n);return r.set(e,l),l}function nt(e){return dt(e)?nt(e.__v_raw):!!(e&&e.__v_isReactive)}function dt(e){return!!(e&&e.__v_isReadonly)}function De(e){return!!(e&&e.__v_isShallow)}function os(e){return e?!!e.__v_raw:!1}function Y(e){const t=e&&e.__v_raw;return t?Y(t):e}function fr(e){return!se(e,"__v_skip")&&Object.isExtensible(e)&&Vi(e,"__v_skip",!0),e}const Ue=e=>ee(e)?Rn(e):e,qt=e=>ee(e)?Ls(e):e;function fe(e){return e?e.__v_isRef===!0:!1}function ar(e){return io(e,!1)}function lc(e){return io(e,!0)}function io(e,t){return fe(e)?e:new cc(e,t)}class cc{constructor(t,n){this.dep=new or,this.__v_isRef=!0,this.__v_isShallow=!1,this._rawValue=n?t:Y(t),this._value=n?t:Ue(t),this.__v_isShallow=n}get value(){return this.dep.track(),this._value}set value(t){const n=this._rawValue,s=this.__v_isShallow||De(t)||dt(t);t=s?t:Y(t),tt(t,n)&&(this._rawValue=t,this._value=s?t:Ue(t),this.dep.trigger())}}function mu(e){e.dep&&e.dep.trigger()}function St(e){return fe(e)?e.value:e}function _u(e){return G(e)?e():St(e)}const fc={get:(e,t,n)=>t==="__v_raw"?e:St(Reflect.get(e,t,n)),set:(e,t,n,s)=>{const r=e[t];return fe(r)&&!fe(n)?(r.value=n,!0):Reflect.set(e,t,n,s)}};function oo(e){return nt(e)?e:new Proxy(e,fc)}function ac(e){const t=V(e)?new Array(e.length):{};for(const n in e)t[n]=lo(e,n);return t}class uc{constructor(t,n,s){this._object=t,this._key=n,this._defaultValue=s,this.__v_isRef=!0,this._value=void 0,this._raw=Y(t);let r=!0,i=t;if(!V(t)||!Xn(String(n)))do r=!os(i)||De(i);while(r&&(i=i.__v_raw));this._shallow=r}get value(){let t=this._object[this._key];return this._shallow&&(t=St(t)),this._value=t===void 0?this._defaultValue:t}set value(t){if(this._shallow&&fe(this._raw[this._key])){const n=this._object[this._key];if(fe(n)){n.value=t;return}}this._object[this._key]=t}get dep(){return Gl(this._raw,this._key)}}class hc{constructor(t){this._getter=t,this.__v_isRef=!0,this.__v_isReadonly=!0,this._value=void 0}get value(){return this._value=this._getter()}}function dc(e,t,n){return fe(e)?e:G(e)?new hc(e):ee(e)&&arguments.length>1?lo(e,t,n):ar(e)}function lo(e,t,n){return new uc(e,t,n)}class pc{constructor(t,n,s){this.fn=t,this.setter=n,this._value=void 0,this.dep=new or(this),this.__v_isRef=!0,this.deps=void 0,this.depsTail=void 0,this.flags=16,this.globalVersion=_n-1,this.next=void 0,this.effect=this,this.__v_isReadonly=!n,this.isSSR=s}notify(){if(this.flags|=16,!(this.flags&8)&&ce!==this)return $i(this,!0),!0}get value(){const t=this.dep.track();return zi(this),t&&(t.version=this.dep.version),this._value}set value(t){this.setter&&this.setter(t)}}function gc(e,t,n=!1){let s,r;return G(e)?s=e:(s=e.get,r=e.set),new pc(s,r,n)}const Nn={},Un=new WeakMap;let It;function mc(e,t=!1,n=It){if(n){let s=Un.get(n);s||Un.set(n,s=[]),s.push(e)}}function _c(e,t,n=oe){const{immediate:s,deep:r,once:i,scheduler:o,augmentJob:l,call:c}=n,a=N=>r?N:De(N)||r===!1||r===0?ft(N,1):ft(N);let f,h,p,m,S=!1,C=!1;if(fe(e)?(h=()=>e.value,S=De(e)):nt(e)?(h=()=>a(e),S=!0):V(e)?(C=!0,S=e.some(N=>nt(N)||De(N)),h=()=>e.map(N=>{if(fe(N))return N.value;if(nt(N))return a(N);if(G(N))return c?c(N,2):N()})):G(e)?t?h=c?()=>c(e,2):e:h=()=>{if(p){ut();try{p()}finally{ht()}}const N=It;It=f;try{return c?c(e,3,[m]):e(m)}finally{It=N}}:h=je,t&&r){const N=h,B=r===!0?1/0:r;h=()=>ft(N(),B)}const F=Ki(),M=()=>{f.stop(),F&&F.active&&tr(F.effects,f)};if(i&&t){const N=t;t=(...B)=>{N(...B),M()}}let A=C?new Array(e.length).fill(Nn):Nn;const L=N=>{if(!(!(f.flags&1)||!f.dirty&&!N))if(t){const B=f.run();if(r||S||(C?B.some((J,q)=>tt(J,A[q])):tt(B,A))){p&&p();const J=It;It=f;try{const q=[B,A===Nn?void 0:C&&A[0]===Nn?[]:A,m];A=B,c?c(t,3,q):t(...q)}finally{It=J}}}else f.run()};return l&&l(L),f=new Gi(h),f.scheduler=o?()=>o(L,!1):L,m=N=>mc(N,!1,f),p=f.onStop=()=>{const N=Un.get(f);if(N){if(c)c(N,4);else for(const B of N)B();Un.delete(f)}},t?s?L(!0):A=f.run():o?o(L.bind(null,!0),!0):f.run(),M.pause=f.pause.bind(f),M.resume=f.resume.bind(f),M.stop=M,M}function ft(e,t=1/0,n){if(t<=0||!ee(e)||e.__v_skip||(n=n||new Map,(n.get(e)||0)>=t))return e;if(n.set(e,t),t--,fe(e))ft(e.value,t,n);else if(V(e))for(let s=0;s<e.length;s++)ft(e[s],t,n);else if(Xt(e)||Gt(e))e.forEach(s=>{ft(s,t,n)});else if(Fi(e)){for(const s in e)ft(e[s],t,n);for(const s of Object.getOwnPropertySymbols(e))Object.prototype.propertyIsEnumerable.call(e,s)&&ft(e[s],t,n)}return e}/**
10
+ * @vue/runtime-core v3.5.30
11
+ * (c) 2018-present Yuxi (Evan) You and Vue contributors
12
+ * @license MIT
13
+ **/function wn(e,t,n,s){try{return s?e(...s):e()}catch(r){ls(r,t,n)}}function Ke(e,t,n,s){if(G(e)){const r=wn(e,t,n,s);return r&&Di(r)&&r.catch(i=>{ls(i,t,n)}),r}if(V(e)){const r=[];for(let i=0;i<e.length;i++)r.push(Ke(e[i],t,n,s));return r}}function ls(e,t,n,s=!0){const r=t?t.vnode:null,{errorHandler:i,throwUnhandledErrorInProduction:o}=t&&t.appContext.config||oe;if(t){let l=t.parent;const c=t.proxy,a=`https://vuejs.org/error-reference/#runtime-${n}`;for(;l;){const f=l.ec;if(f){for(let h=0;h<f.length;h++)if(f[h](e,c,a)===!1)return}l=l.parent}if(i){ut(),wn(i,null,10,[e,c,a]),ht();return}}yc(e,n,r,s,o)}function yc(e,t,n,s=!0,r=!1){if(r)throw e;console.error(e)}const xe=[];let Qe=-1;const Wt=[];let bt=null,kt=0;const co=Promise.resolve();let Kn=null;function cs(e){const t=Kn||co;return e?t.then(this?e.bind(this):e):t}function vc(e){let t=Qe+1,n=xe.length;for(;t<n;){const s=t+n>>>1,r=xe[s],i=vn(r);i<e||i===e&&r.flags&2?t=s+1:n=s}return t}function ur(e){if(!(e.flags&1)){const t=vn(e),n=xe[xe.length-1];!n||!(e.flags&2)&&t>=vn(n)?xe.push(e):xe.splice(vc(t),0,e),e.flags|=1,fo()}}function fo(){Kn||(Kn=co.then(uo))}function bc(e){V(e)?Wt.push(...e):bt&&e.id===-1?bt.splice(kt+1,0,e):e.flags&1||(Wt.push(e),e.flags|=1),fo()}function Pr(e,t,n=Qe+1){for(;n<xe.length;n++){const s=xe[n];if(s&&s.flags&2){if(e&&s.id!==e.uid)continue;xe.splice(n,1),n--,s.flags&4&&(s.flags&=-2),s(),s.flags&4||(s.flags&=-2)}}}function ao(e){if(Wt.length){const t=[...new Set(Wt)].sort((n,s)=>vn(n)-vn(s));if(Wt.length=0,bt){bt.push(...t);return}for(bt=t,kt=0;kt<bt.length;kt++){const n=bt[kt];n.flags&4&&(n.flags&=-2),n.flags&8||n(),n.flags&=-2}bt=null,kt=0}}const vn=e=>e.id==null?e.flags&2?-1:1/0:e.id;function uo(e){try{for(Qe=0;Qe<xe.length;Qe++){const t=xe[Qe];t&&!(t.flags&8)&&(t.flags&4&&(t.flags&=-2),wn(t,t.i,t.i?15:14),t.flags&4||(t.flags&=-2))}}finally{for(;Qe<xe.length;Qe++){const t=xe[Qe];t&&(t.flags&=-2)}Qe=-1,xe.length=0,ao(),Kn=null,(xe.length||Wt.length)&&uo()}}let ge=null,ho=null;function Gn(e){const t=ge;return ge=e,ho=e&&e.type.__scopeId||null,t}function Ec(e,t=ge,n){if(!t||e._n)return e;const s=(...r)=>{s._d&&qn(-1);const i=Gn(t);let o;try{o=e(...r)}finally{Gn(i),s._d&&qn(1)}return o};return s._n=!0,s._c=!0,s._d=!0,s}function yu(e,t){if(ge===null)return e;const n=ds(ge),s=e.dirs||(e.dirs=[]);for(let r=0;r<t.length;r++){let[i,o,l,c=oe]=t[r];i&&(G(i)&&(i={mounted:i,updated:i}),i.deep&&ft(o),s.push({dir:i,instance:n,value:o,oldValue:void 0,arg:l,modifiers:c}))}return e}function Tt(e,t,n,s){const r=e.dirs,i=t&&t.dirs;for(let o=0;o<r.length;o++){const l=r[o];i&&(l.oldValue=i[o].value);let c=l.dir[s];c&&(ut(),Ke(c,n,8,[e.el,l,e,t]),ht())}}function Fn(e,t){if(be){let n=be.provides;const s=be.parent&&be.parent.provides;s===n&&(n=be.provides=Object.create(s)),n[e]=t}}function Ve(e,t,n=!1){const s=Tn();if(s||Lt){let r=Lt?Lt._context.provides:s?s.parent==null||s.ce?s.vnode.appContext&&s.vnode.appContext.provides:s.parent.provides:void 0;if(r&&e in r)return r[e];if(arguments.length>1)return n&&G(t)?t.call(s&&s.proxy):t}}function Sc(){return!!(Tn()||Lt)}const Cc=Symbol.for("v-scx"),Ac=()=>Ve(Cc);function vu(e,t){return hr(e,null,t)}function an(e,t,n){return hr(e,t,n)}function hr(e,t,n=oe){const{immediate:s,deep:r,flush:i,once:o}=n,l=de({},n),c=t&&s||!t&&i!=="post";let a;if(Cn){if(i==="sync"){const m=Ac();a=m.__watcherHandles||(m.__watcherHandles=[])}else if(!c){const m=()=>{};return m.stop=je,m.resume=je,m.pause=je,m}}const f=be;l.call=(m,S,C)=>Ke(m,f,S,C);let h=!1;i==="post"?l.scheduler=m=>{me(m,f&&f.suspense)}:i!=="sync"&&(h=!0,l.scheduler=(m,S)=>{S?m():ur(m)}),l.augmentJob=m=>{t&&(m.flags|=4),h&&(m.flags|=2,f&&(m.id=f.uid,m.i=f))};const p=_c(e,t,l);return Cn&&(a?a.push(p):c&&p()),p}function xc(e,t,n){const s=this.proxy,r=ae(e)?e.includes(".")?po(s,e):()=>s[e]:e.bind(s,s);let i;G(t)?i=t:(i=t.handler,n=t);const o=On(this),l=hr(r,i.bind(s),n);return o(),l}function po(e,t){const n=t.split(".");return()=>{let s=e;for(let r=0;r<n.length&&s;r++)s=s[n[r]];return s}}const go=Symbol("_vte"),mo=e=>e.__isTeleport,un=e=>e&&(e.disabled||e.disabled===""),Ir=e=>e&&(e.defer||e.defer===""),Nr=e=>typeof SVGElement<"u"&&e instanceof SVGElement,Mr=e=>typeof MathMLElement=="function"&&e instanceof MathMLElement,Fs=(e,t)=>{const n=e&&e.to;return ae(n)?t?t(n):null:n},_o={name:"Teleport",__isTeleport:!0,process(e,t,n,s,r,i,o,l,c,a){const{mc:f,pc:h,pbc:p,o:{insert:m,querySelector:S,createText:C,createComment:F}}=a,M=un(t.props);let{shapeFlag:A,children:L,dynamicChildren:N}=t;if(e==null){const B=t.el=C(""),J=t.anchor=C("");m(B,n,s),m(J,n,s);const q=(x,U)=>{A&16&&f(L,x,U,r,i,o,l,c)},k=()=>{const x=t.target=Fs(t.props,S),U=Vs(x,t,C,m);x&&(o!=="svg"&&Nr(x)?o="svg":o!=="mathml"&&Mr(x)&&(o="mathml"),r&&r.isCE&&(r.ce._teleportTargets||(r.ce._teleportTargets=new Set)).add(x),M||(q(x,U),Vn(t,!1)))};M&&(q(n,J),Vn(t,!0)),Ir(t.props)?(t.el.__isMounted=!1,me(()=>{k(),delete t.el.__isMounted},i)):k()}else{if(Ir(t.props)&&e.el.__isMounted===!1){me(()=>{_o.process(e,t,n,s,r,i,o,l,c,a)},i);return}t.el=e.el,t.targetStart=e.targetStart;const B=t.anchor=e.anchor,J=t.target=e.target,q=t.targetAnchor=e.targetAnchor,k=un(e.props),x=k?n:J,U=k?B:q;if(o==="svg"||Nr(J)?o="svg":(o==="mathml"||Mr(J))&&(o="mathml"),N?(p(e.dynamicChildren,N,x,r,i,o,l),yr(e,t,!0)):c||h(e,t,x,U,r,i,o,l,!1),M)k?t.props&&e.props&&t.props.to!==e.props.to&&(t.props.to=e.props.to):Mn(t,n,B,a,1);else if((t.props&&t.props.to)!==(e.props&&e.props.to)){const z=t.target=Fs(t.props,S);z&&Mn(t,z,null,a,0)}else k&&Mn(t,J,q,a,1);Vn(t,M)}},remove(e,t,n,{um:s,o:{remove:r}},i){const{shapeFlag:o,children:l,anchor:c,targetStart:a,targetAnchor:f,target:h,props:p}=e;if(h&&(r(a),r(f)),i&&r(c),o&16){const m=i||!un(p);for(let S=0;S<l.length;S++){const C=l[S];s(C,t,n,m,!!C.dynamicChildren)}}},move:Mn,hydrate:Rc};function Mn(e,t,n,{o:{insert:s},m:r},i=2){i===0&&s(e.targetAnchor,t,n);const{el:o,anchor:l,shapeFlag:c,children:a,props:f}=e,h=i===2;if(h&&s(o,t,n),(!h||un(f))&&c&16)for(let p=0;p<a.length;p++)r(a[p],t,n,2);h&&s(l,t,n)}function Rc(e,t,n,s,r,i,{o:{nextSibling:o,parentNode:l,querySelector:c,insert:a,createText:f}},h){function p(F,M){let A=M;for(;A;){if(A&&A.nodeType===8){if(A.data==="teleport start anchor")t.targetStart=A;else if(A.data==="teleport anchor"){t.targetAnchor=A,F._lpa=t.targetAnchor&&o(t.targetAnchor);break}}A=o(A)}}function m(F,M){M.anchor=h(o(F),M,l(F),n,s,r,i)}const S=t.target=Fs(t.props,c),C=un(t.props);if(S){const F=S._lpa||S.firstChild;t.shapeFlag&16&&(C?(m(e,t),p(S,F),t.targetAnchor||Vs(S,t,f,a,l(e)===S?e:null)):(t.anchor=o(e),p(S,F),t.targetAnchor||Vs(S,t,f,a),h(F&&o(F),t,S,n,s,r,i))),Vn(t,C)}else C&&t.shapeFlag&16&&(m(e,t),t.targetStart=e,t.targetAnchor=o(e));return t.anchor&&o(t.anchor)}const bu=_o;function Vn(e,t){const n=e.ctx;if(n&&n.ut){let s,r;for(t?(s=e.el,r=e.anchor):(s=e.targetStart,r=e.targetAnchor);s&&s!==r;)s.nodeType===1&&s.setAttribute("data-v-owner",n.uid),s=s.nextSibling;n.ut()}}function Vs(e,t,n,s,r=null){const i=t.targetStart=n(""),o=t.targetAnchor=n("");return i[go]=o,e&&(s(i,e,r),s(o,e,r)),o}const Xe=Symbol("_leaveCb"),tn=Symbol("_enterCb");function yo(){const e={isMounted:!1,isLeaving:!1,isUnmounting:!1,leavingVNodes:new Map};return Ro(()=>{e.isMounted=!0}),To(()=>{e.isUnmounting=!0}),e}const Fe=[Function,Array],vo={mode:String,appear:Boolean,persisted:Boolean,onBeforeEnter:Fe,onEnter:Fe,onAfterEnter:Fe,onEnterCancelled:Fe,onBeforeLeave:Fe,onLeave:Fe,onAfterLeave:Fe,onLeaveCancelled:Fe,onBeforeAppear:Fe,onAppear:Fe,onAfterAppear:Fe,onAppearCancelled:Fe},bo=e=>{const t=e.subTree;return t.component?bo(t.component):t},wc={name:"BaseTransition",props:vo,setup(e,{slots:t}){const n=Tn(),s=yo();return()=>{const r=t.default&&dr(t.default(),!0);if(!r||!r.length)return;const i=Eo(r),o=Y(e),{mode:l}=o;if(s.isLeaving)return Es(i);const c=Dr(i);if(!c)return Es(i);let a=bn(c,o,s,n,h=>a=h);c.type!==ve&&Ft(c,a);let f=n.subTree&&Dr(n.subTree);if(f&&f.type!==ve&&!Nt(f,c)&&bo(n).type!==ve){let h=bn(f,o,s,n);if(Ft(f,h),l==="out-in"&&c.type!==ve)return s.isLeaving=!0,h.afterLeave=()=>{s.isLeaving=!1,n.job.flags&8||n.update(),delete h.afterLeave,f=void 0},Es(i);l==="in-out"&&c.type!==ve?h.delayLeave=(p,m,S)=>{const C=So(s,f);C[String(f.key)]=f,p[Xe]=()=>{m(),p[Xe]=void 0,delete a.delayedLeave,f=void 0},a.delayedLeave=()=>{S(),delete a.delayedLeave,f=void 0}}:f=void 0}else f&&(f=void 0);return i}}};function Eo(e){let t=e[0];if(e.length>1){for(const n of e)if(n.type!==ve){t=n;break}}return t}const Tc=wc;function So(e,t){const{leavingVNodes:n}=e;let s=n.get(t.type);return s||(s=Object.create(null),n.set(t.type,s)),s}function bn(e,t,n,s,r){const{appear:i,mode:o,persisted:l=!1,onBeforeEnter:c,onEnter:a,onAfterEnter:f,onEnterCancelled:h,onBeforeLeave:p,onLeave:m,onAfterLeave:S,onLeaveCancelled:C,onBeforeAppear:F,onAppear:M,onAfterAppear:A,onAppearCancelled:L}=t,N=String(e.key),B=So(n,e),J=(x,U)=>{x&&Ke(x,s,9,U)},q=(x,U)=>{const z=U[1];J(x,U),V(x)?x.every(P=>P.length<=1)&&z():x.length<=1&&z()},k={mode:o,persisted:l,beforeEnter(x){let U=c;if(!n.isMounted)if(i)U=F||c;else return;x[Xe]&&x[Xe](!0);const z=B[N];z&&Nt(e,z)&&z.el[Xe]&&z.el[Xe](),J(U,[x])},enter(x){if(B[N]===e)return;let U=a,z=f,P=h;if(!n.isMounted)if(i)U=M||a,z=A||f,P=L||h;else return;let Q=!1;x[tn]=Se=>{Q||(Q=!0,Se?J(P,[x]):J(z,[x]),k.delayedLeave&&k.delayedLeave(),x[tn]=void 0)};const he=x[tn].bind(null,!1);U?q(U,[x,he]):he()},leave(x,U){const z=String(e.key);if(x[tn]&&x[tn](!0),n.isUnmounting)return U();J(p,[x]);let P=!1;x[Xe]=he=>{P||(P=!0,U(),he?J(C,[x]):J(S,[x]),x[Xe]=void 0,B[z]===e&&delete B[z])};const Q=x[Xe].bind(null,!1);B[z]=e,m?q(m,[x,Q]):Q()},clone(x){const U=bn(x,t,n,s,r);return r&&r(U),U}};return k}function Es(e){if(fs(e))return e=At(e),e.children=null,e}function Dr(e){if(!fs(e))return mo(e.type)&&e.children?Eo(e.children):e;if(e.component)return e.component.subTree;const{shapeFlag:t,children:n}=e;if(n){if(t&16)return n[0];if(t&32&&G(n.default))return n.default()}}function Ft(e,t){e.shapeFlag&6&&e.component?(e.transition=t,Ft(e.component.subTree,t)):e.shapeFlag&128?(e.ssContent.transition=t.clone(e.ssContent),e.ssFallback.transition=t.clone(e.ssFallback)):e.transition=t}function dr(e,t=!1,n){let s=[],r=0;for(let i=0;i<e.length;i++){let o=e[i];const l=n==null?o.key:String(n)+String(o.key!=null?o.key:i);o.type===Pe?(o.patchFlag&128&&r++,s=s.concat(dr(o.children,t,l))):(t||o.type!==ve)&&s.push(l!=null?At(o,{key:l}):o)}if(r>1)for(let i=0;i<s.length;i++)s[i].patchFlag=-2;return s}function Co(e,t){return G(e)?de({name:e.name},t,{setup:e}):e}function Ao(e){e.ids=[e.ids[0]+e.ids[2]+++"-",0,0]}function Lr(e,t){let n;return!!((n=Object.getOwnPropertyDescriptor(e,t))&&!n.configurable)}const Wn=new WeakMap;function hn(e,t,n,s,r=!1){if(V(e)){e.forEach((C,F)=>hn(C,t&&(V(t)?t[F]:t),n,s,r));return}if($t(s)&&!r){s.shapeFlag&512&&s.type.__asyncResolved&&s.component.subTree.component&&hn(e,t,n,s.component.subTree);return}const i=s.shapeFlag&4?ds(s.component):s.el,o=r?null:i,{i:l,r:c}=e,a=t&&t.r,f=l.refs===oe?l.refs={}:l.refs,h=l.setupState,p=Y(h),m=h===oe?Mi:C=>Lr(f,C)?!1:se(p,C),S=(C,F)=>!(F&&Lr(f,F));if(a!=null&&a!==c){if(Fr(t),ae(a))f[a]=null,m(a)&&(h[a]=null);else if(fe(a)){const C=t;S(a,C.k)&&(a.value=null),C.k&&(f[C.k]=null)}}if(G(c))wn(c,l,12,[o,f]);else{const C=ae(c),F=fe(c);if(C||F){const M=()=>{if(e.f){const A=C?m(c)?h[c]:f[c]:S()||!e.k?c.value:f[e.k];if(r)V(A)&&tr(A,i);else if(V(A))A.includes(i)||A.push(i);else if(C)f[c]=[i],m(c)&&(h[c]=f[c]);else{const L=[i];S(c,e.k)&&(c.value=L),e.k&&(f[e.k]=L)}}else C?(f[c]=o,m(c)&&(h[c]=o)):F&&(S(c,e.k)&&(c.value=o),e.k&&(f[e.k]=o))};if(o){const A=()=>{M(),Wn.delete(e)};A.id=-1,Wn.set(e,A),me(A,n)}else Fr(e),M()}}}function Fr(e){const t=Wn.get(e);t&&(t.flags|=8,Wn.delete(e))}ns().requestIdleCallback;ns().cancelIdleCallback;const $t=e=>!!e.type.__asyncLoader,fs=e=>e.type.__isKeepAlive;function Oc(e,t){xo(e,"a",t)}function Pc(e,t){xo(e,"da",t)}function xo(e,t,n=be){const s=e.__wdc||(e.__wdc=()=>{let r=n;for(;r;){if(r.isDeactivated)return;r=r.parent}return e()});if(as(t,s,n),n){let r=n.parent;for(;r&&r.parent;)fs(r.parent.vnode)&&Ic(s,t,n,r),r=r.parent}}function Ic(e,t,n,s){const r=as(t,e,s,!0);Oo(()=>{tr(s[t],r)},n)}function as(e,t,n=be,s=!1){if(n){const r=n[e]||(n[e]=[]),i=t.__weh||(t.__weh=(...o)=>{ut();const l=On(n),c=Ke(t,n,e,o);return l(),ht(),c});return s?r.unshift(i):r.push(i),i}}const pt=e=>(t,n=be)=>{(!Cn||e==="sp")&&as(e,(...s)=>t(...s),n)},Nc=pt("bm"),Ro=pt("m"),Mc=pt("bu"),wo=pt("u"),To=pt("bum"),Oo=pt("um"),Dc=pt("sp"),Lc=pt("rtg"),Fc=pt("rtc");function Vc(e,t=be){as("ec",e,t)}const pr="components",Hc="directives";function Eu(e,t){return gr(pr,e,!0,t)||e}const Po=Symbol.for("v-ndc");function Su(e){return ae(e)?gr(pr,e,!1)||e:e||Po}function Cu(e){return gr(Hc,e)}function gr(e,t,n=!0,s=!1){const r=ge||be;if(r){const i=r.type;if(e===pr){const l=Cf(i,!1);if(l&&(l===t||l===Re(t)||l===es(Re(t))))return i}const o=Vr(r[e]||i[e],t)||Vr(r.appContext[e],t);return!o&&s?i:o}}function Vr(e,t){return e&&(e[t]||e[Re(t)]||e[es(Re(t))])}function Au(e,t,n,s){let r;const i=n,o=V(e);if(o||ae(e)){const l=o&&nt(e);let c=!1,a=!1;l&&(c=!De(e),a=dt(e),e=is(e)),r=new Array(e.length);for(let f=0,h=e.length;f<h;f++)r[f]=t(c?a?qt(Ue(e[f])):Ue(e[f]):e[f],f,void 0,i)}else if(typeof e=="number"){r=new Array(e);for(let l=0;l<e;l++)r[l]=t(l+1,l,void 0,i)}else if(ee(e))if(e[Symbol.iterator])r=Array.from(e,(l,c)=>t(l,c,void 0,i));else{const l=Object.keys(e);r=new Array(l.length);for(let c=0,a=l.length;c<a;c++){const f=l[c];r[c]=t(e[f],f,c,i)}}else r=[];return r}function xu(e,t){for(let n=0;n<t.length;n++){const s=t[n];if(V(s))for(let r=0;r<s.length;r++)e[s[r].name]=s[r].fn;else s&&(e[s.name]=s.key?(...r)=>{const i=s.fn(...r);return i&&(i.key=s.key),i}:s.fn)}return e}function Ru(e,t,n={},s,r){if(ge.ce||ge.parent&&$t(ge.parent)&&ge.parent.ce){const a=Object.keys(n).length>0;return t!=="default"&&(n.name=t),Us(),Ks(Pe,null,[Ee("slot",n,s&&s())],a?-2:64)}let i=e[t];i&&i._c&&(i._d=!1),Us();const o=i&&Io(i(n)),l=n.key||o&&o.key,c=Ks(Pe,{key:(l&&!ke(l)?l:`_${t}`)+(!o&&s?"_fb":"")},o||(s?s():[]),o&&e._===1?64:-2);return c.scopeId&&(c.slotScopeIds=[c.scopeId+"-s"]),i&&i._c&&(i._d=!0),c}function Io(e){return e.some(t=>Sn(t)?!(t.type===ve||t.type===Pe&&!Io(t.children)):!0)?e:null}function wu(e,t){const n={};for(const s in e)n[Dn(s)]=e[s];return n}const Hs=e=>e?Xo(e)?ds(e):Hs(e.parent):null,dn=de(Object.create(null),{$:e=>e,$el:e=>e.vnode.el,$data:e=>e.data,$props:e=>e.props,$attrs:e=>e.attrs,$slots:e=>e.slots,$refs:e=>e.refs,$parent:e=>Hs(e.parent),$root:e=>Hs(e.root),$host:e=>e.ce,$emit:e=>e.emit,$options:e=>Do(e),$forceUpdate:e=>e.f||(e.f=()=>{ur(e.update)}),$nextTick:e=>e.n||(e.n=cs.bind(e.proxy)),$watch:e=>xc.bind(e)}),Ss=(e,t)=>e!==oe&&!e.__isScriptSetup&&se(e,t),jc={get({_:e},t){if(t==="__v_skip")return!0;const{ctx:n,setupState:s,data:r,props:i,accessCache:o,type:l,appContext:c}=e;if(t[0]!=="$"){const p=o[t];if(p!==void 0)switch(p){case 1:return s[t];case 2:return r[t];case 4:return n[t];case 3:return i[t]}else{if(Ss(s,t))return o[t]=1,s[t];if(r!==oe&&se(r,t))return o[t]=2,r[t];if(se(i,t))return o[t]=3,i[t];if(n!==oe&&se(n,t))return o[t]=4,n[t];js&&(o[t]=0)}}const a=dn[t];let f,h;if(a)return t==="$attrs"&&ye(e.attrs,"get",""),a(e);if((f=l.__cssModules)&&(f=f[t]))return f;if(n!==oe&&se(n,t))return o[t]=4,n[t];if(h=c.config.globalProperties,se(h,t))return h[t]},set({_:e},t,n){const{data:s,setupState:r,ctx:i}=e;return Ss(r,t)?(r[t]=n,!0):s!==oe&&se(s,t)?(s[t]=n,!0):se(e.props,t)||t[0]==="$"&&t.slice(1)in e?!1:(i[t]=n,!0)},has({_:{data:e,setupState:t,accessCache:n,ctx:s,appContext:r,props:i,type:o}},l){let c;return!!(n[l]||e!==oe&&l[0]!=="$"&&se(e,l)||Ss(t,l)||se(i,l)||se(s,l)||se(dn,l)||se(r.config.globalProperties,l)||(c=o.__cssModules)&&c[l])},defineProperty(e,t,n){return n.get!=null?e._.accessCache[t]=0:se(n,"value")&&this.set(e,t,n.value,null),Reflect.defineProperty(e,t,n)}};function Tu(){return No().slots}function Ou(){return No().attrs}function No(e){const t=Tn();return t.setupContext||(t.setupContext=el(t))}function Hr(e){return V(e)?e.reduce((t,n)=>(t[n]=null,t),{}):e}let js=!0;function Bc(e){const t=Do(e),n=e.proxy,s=e.ctx;js=!1,t.beforeCreate&&jr(t.beforeCreate,e,"bc");const{data:r,computed:i,methods:o,watch:l,provide:c,inject:a,created:f,beforeMount:h,mounted:p,beforeUpdate:m,updated:S,activated:C,deactivated:F,beforeDestroy:M,beforeUnmount:A,destroyed:L,unmounted:N,render:B,renderTracked:J,renderTriggered:q,errorCaptured:k,serverPrefetch:x,expose:U,inheritAttrs:z,components:P,directives:Q,filters:he}=t;if(a&&kc(a,s,null),o)for(const $ in o){const te=o[$];G(te)&&(s[$]=te.bind(n))}if(r){const $=r.call(n,n);ee($)&&(e.data=Rn($))}if(js=!0,i)for(const $ in i){const te=i[$],st=G(te)?te.bind(n,n):G(te.get)?te.get.bind(n,n):je,gt=!G(te)&&G(te.set)?te.set.bind(n):je,We=Ne({get:st,set:gt});Object.defineProperty(s,$,{enumerable:!0,configurable:!0,get:()=>We.value,set:we=>We.value=we})}if(l)for(const $ in l)Mo(l[$],s,n,$);if(c){const $=G(c)?c.call(n):c;Reflect.ownKeys($).forEach(te=>{Fn(te,$[te])})}f&&jr(f,e,"c");function ie($,te){V(te)?te.forEach(st=>$(st.bind(n))):te&&$(te.bind(n))}if(ie(Nc,h),ie(Ro,p),ie(Mc,m),ie(wo,S),ie(Oc,C),ie(Pc,F),ie(Vc,k),ie(Fc,J),ie(Lc,q),ie(To,A),ie(Oo,N),ie(Dc,x),V(U))if(U.length){const $=e.exposed||(e.exposed={});U.forEach(te=>{Object.defineProperty($,te,{get:()=>n[te],set:st=>n[te]=st,enumerable:!0})})}else e.exposed||(e.exposed={});B&&e.render===je&&(e.render=B),z!=null&&(e.inheritAttrs=z),P&&(e.components=P),Q&&(e.directives=Q),x&&Ao(e)}function kc(e,t,n=je){V(e)&&(e=Bs(e));for(const s in e){const r=e[s];let i;ee(r)?"default"in r?i=Ve(r.from||s,r.default,!0):i=Ve(r.from||s):i=Ve(r),fe(i)?Object.defineProperty(t,s,{enumerable:!0,configurable:!0,get:()=>i.value,set:o=>i.value=o}):t[s]=i}}function jr(e,t,n){Ke(V(e)?e.map(s=>s.bind(t.proxy)):e.bind(t.proxy),t,n)}function Mo(e,t,n,s){let r=s.includes(".")?po(n,s):()=>n[s];if(ae(e)){const i=t[e];G(i)&&an(r,i)}else if(G(e))an(r,e.bind(n));else if(ee(e))if(V(e))e.forEach(i=>Mo(i,t,n,s));else{const i=G(e.handler)?e.handler.bind(n):t[e.handler];G(i)&&an(r,i,e)}}function Do(e){const t=e.type,{mixins:n,extends:s}=t,{mixins:r,optionsCache:i,config:{optionMergeStrategies:o}}=e.appContext,l=i.get(t);let c;return l?c=l:!r.length&&!n&&!s?c=t:(c={},r.length&&r.forEach(a=>$n(c,a,o,!0)),$n(c,t,o)),ee(t)&&i.set(t,c),c}function $n(e,t,n,s=!1){const{mixins:r,extends:i}=t;i&&$n(e,i,n,!0),r&&r.forEach(o=>$n(e,o,n,!0));for(const o in t)if(!(s&&o==="expose")){const l=Uc[o]||n&&n[o];e[o]=l?l(e[o],t[o]):t[o]}return e}const Uc={data:Br,props:kr,emits:kr,methods:on,computed:on,beforeCreate:Ce,created:Ce,beforeMount:Ce,mounted:Ce,beforeUpdate:Ce,updated:Ce,beforeDestroy:Ce,beforeUnmount:Ce,destroyed:Ce,unmounted:Ce,activated:Ce,deactivated:Ce,errorCaptured:Ce,serverPrefetch:Ce,components:on,directives:on,watch:Gc,provide:Br,inject:Kc};function Br(e,t){return t?e?function(){return de(G(e)?e.call(this,this):e,G(t)?t.call(this,this):t)}:t:e}function Kc(e,t){return on(Bs(e),Bs(t))}function Bs(e){if(V(e)){const t={};for(let n=0;n<e.length;n++)t[e[n]]=e[n];return t}return e}function Ce(e,t){return e?[...new Set([].concat(e,t))]:t}function on(e,t){return e?de(Object.create(null),e,t):t}function kr(e,t){return e?V(e)&&V(t)?[...new Set([...e,...t])]:de(Object.create(null),Hr(e),Hr(t??{})):t}function Gc(e,t){if(!e)return t;if(!t)return e;const n=de(Object.create(null),e);for(const s in t)n[s]=Ce(e[s],t[s]);return n}function Lo(){return{app:null,config:{isNativeTag:Mi,performance:!1,globalProperties:{},optionMergeStrategies:{},errorHandler:void 0,warnHandler:void 0,compilerOptions:{}},mixins:[],components:{},directives:{},provides:Object.create(null),optionsCache:new WeakMap,propsCache:new WeakMap,emitsCache:new WeakMap}}let Wc=0;function $c(e,t){return function(s,r=null){G(s)||(s=de({},s)),r!=null&&!ee(r)&&(r=null);const i=Lo(),o=new WeakSet,l=[];let c=!1;const a=i.app={_uid:Wc++,_component:s,_props:r,_container:null,_context:i,_instance:null,version:xf,get config(){return i.config},set config(f){},use(f,...h){return o.has(f)||(f&&G(f.install)?(o.add(f),f.install(a,...h)):G(f)&&(o.add(f),f(a,...h))),a},mixin(f){return i.mixins.includes(f)||i.mixins.push(f),a},component(f,h){return h?(i.components[f]=h,a):i.components[f]},directive(f,h){return h?(i.directives[f]=h,a):i.directives[f]},mount(f,h,p){if(!c){const m=a._ceVNode||Ee(s,r);return m.appContext=i,p===!0?p="svg":p===!1&&(p=void 0),e(m,f,p),c=!0,a._container=f,f.__vue_app__=a,ds(m.component)}},onUnmount(f){l.push(f)},unmount(){c&&(Ke(l,a._instance,16),e(null,a._container),delete a._container.__vue_app__)},provide(f,h){return i.provides[f]=h,a},runWithContext(f){const h=Lt;Lt=a;try{return f()}finally{Lt=h}}};return a}}let Lt=null;const qc=(e,t)=>t==="modelValue"||t==="model-value"?e.modelModifiers:e[`${t}Modifiers`]||e[`${Re(t)}Modifiers`]||e[`${Rt(t)}Modifiers`];function Jc(e,t,...n){if(e.isUnmounted)return;const s=e.vnode.props||oe;let r=n;const i=t.startsWith("update:"),o=i&&qc(s,t.slice(7));o&&(o.trim&&(r=n.map(f=>ae(f)?f.trim():f)),o.number&&(r=n.map(ts)));let l,c=s[l=Dn(t)]||s[l=Dn(Re(t))];!c&&i&&(c=s[l=Dn(Rt(t))]),c&&Ke(c,e,6,r);const a=s[l+"Once"];if(a){if(!e.emitted)e.emitted={};else if(e.emitted[l])return;e.emitted[l]=!0,Ke(a,e,6,r)}}const zc=new WeakMap;function Fo(e,t,n=!1){const s=n?zc:t.emitsCache,r=s.get(e);if(r!==void 0)return r;const i=e.emits;let o={},l=!1;if(!G(e)){const c=a=>{const f=Fo(a,t,!0);f&&(l=!0,de(o,f))};!n&&t.mixins.length&&t.mixins.forEach(c),e.extends&&c(e.extends),e.mixins&&e.mixins.forEach(c)}return!i&&!l?(ee(e)&&s.set(e,null),null):(V(i)?i.forEach(c=>o[c]=null):de(o,i),ee(e)&&s.set(e,o),o)}function us(e,t){return!e||!Qn(t)?!1:(t=t.slice(2).replace(/Once$/,""),se(e,t[0].toLowerCase()+t.slice(1))||se(e,Rt(t))||se(e,t))}function Ur(e){const{type:t,vnode:n,proxy:s,withProxy:r,propsOptions:[i],slots:o,attrs:l,emit:c,render:a,renderCache:f,props:h,data:p,setupState:m,ctx:S,inheritAttrs:C}=e,F=Gn(e);let M,A;try{if(n.shapeFlag&4){const N=r||s,B=N;M=et(a.call(B,N,f,h,m,p,S)),A=l}else{const N=t;M=et(N.length>1?N(h,{attrs:l,slots:o,emit:c}):N(h,null)),A=t.props?l:Yc(l)}}catch(N){pn.length=0,ls(N,e,1),M=Ee(ve)}let L=M;if(A&&C!==!1){const N=Object.keys(A),{shapeFlag:B}=L;N.length&&B&7&&(i&&N.some(er)&&(A=Qc(A,i)),L=At(L,A,!1,!0))}return n.dirs&&(L=At(L,null,!1,!0),L.dirs=L.dirs?L.dirs.concat(n.dirs):n.dirs),n.transition&&Ft(L,n.transition),M=L,Gn(F),M}const Yc=e=>{let t;for(const n in e)(n==="class"||n==="style"||Qn(n))&&((t||(t={}))[n]=e[n]);return t},Qc=(e,t)=>{const n={};for(const s in e)(!er(s)||!(s.slice(9)in t))&&(n[s]=e[s]);return n};function Xc(e,t,n){const{props:s,children:r,component:i}=e,{props:o,children:l,patchFlag:c}=t,a=i.emitsOptions;if(t.dirs||t.transition)return!0;if(n&&c>=0){if(c&1024)return!0;if(c&16)return s?Kr(s,o,a):!!o;if(c&8){const f=t.dynamicProps;for(let h=0;h<f.length;h++){const p=f[h];if(Vo(o,s,p)&&!us(a,p))return!0}}}else return(r||l)&&(!l||!l.$stable)?!0:s===o?!1:s?o?Kr(s,o,a):!0:!!o;return!1}function Kr(e,t,n){const s=Object.keys(t);if(s.length!==Object.keys(e).length)return!0;for(let r=0;r<s.length;r++){const i=s[r];if(Vo(t,e,i)&&!us(n,i))return!0}return!1}function Vo(e,t,n){const s=e[n],r=t[n];return n==="style"&&ee(s)&&ee(r)?!Ct(s,r):s!==r}function Zc({vnode:e,parent:t},n){for(;t;){const s=t.subTree;if(s.suspense&&s.suspense.activeBranch===e&&(s.el=e.el),s===e)(e=t.vnode).el=n,t=t.parent;else break}}const Ho={},jo=()=>Object.create(Ho),Bo=e=>Object.getPrototypeOf(e)===Ho;function ef(e,t,n,s=!1){const r={},i=jo();e.propsDefaults=Object.create(null),ko(e,t,r,i);for(const o in e.propsOptions[0])o in r||(r[o]=void 0);n?e.props=s?r:ro(r):e.type.props?e.props=r:e.props=i,e.attrs=i}function tf(e,t,n,s){const{props:r,attrs:i,vnode:{patchFlag:o}}=e,l=Y(r),[c]=e.propsOptions;let a=!1;if((s||o>0)&&!(o&16)){if(o&8){const f=e.vnode.dynamicProps;for(let h=0;h<f.length;h++){let p=f[h];if(us(e.emitsOptions,p))continue;const m=t[p];if(c)if(se(i,p))m!==i[p]&&(i[p]=m,a=!0);else{const S=Re(p);r[S]=ks(c,l,S,m,e,!1)}else m!==i[p]&&(i[p]=m,a=!0)}}}else{ko(e,t,r,i)&&(a=!0);let f;for(const h in l)(!t||!se(t,h)&&((f=Rt(h))===h||!se(t,f)))&&(c?n&&(n[h]!==void 0||n[f]!==void 0)&&(r[h]=ks(c,l,h,void 0,e,!0)):delete r[h]);if(i!==l)for(const h in i)(!t||!se(t,h))&&(delete i[h],a=!0)}a&&ct(e.attrs,"set","")}function ko(e,t,n,s){const[r,i]=e.propsOptions;let o=!1,l;if(t)for(let c in t){if(ln(c))continue;const a=t[c];let f;r&&se(r,f=Re(c))?!i||!i.includes(f)?n[f]=a:(l||(l={}))[f]=a:us(e.emitsOptions,c)||(!(c in s)||a!==s[c])&&(s[c]=a,o=!0)}if(i){const c=Y(n),a=l||oe;for(let f=0;f<i.length;f++){const h=i[f];n[h]=ks(r,c,h,a[h],e,!se(a,h))}}return o}function ks(e,t,n,s,r,i){const o=e[n];if(o!=null){const l=se(o,"default");if(l&&s===void 0){const c=o.default;if(o.type!==Function&&!o.skipFactory&&G(c)){const{propsDefaults:a}=r;if(n in a)s=a[n];else{const f=On(r);s=a[n]=c.call(null,t),f()}}else s=c;r.ce&&r.ce._setProp(n,s)}o[0]&&(i&&!l?s=!1:o[1]&&(s===""||s===Rt(n))&&(s=!0))}return s}const nf=new WeakMap;function Uo(e,t,n=!1){const s=n?nf:t.propsCache,r=s.get(e);if(r)return r;const i=e.props,o={},l=[];let c=!1;if(!G(e)){const f=h=>{c=!0;const[p,m]=Uo(h,t,!0);de(o,p),m&&l.push(...m)};!n&&t.mixins.length&&t.mixins.forEach(f),e.extends&&f(e.extends),e.mixins&&e.mixins.forEach(f)}if(!i&&!c)return ee(e)&&s.set(e,Kt),Kt;if(V(i))for(let f=0;f<i.length;f++){const h=Re(i[f]);Gr(h)&&(o[h]=oe)}else if(i)for(const f in i){const h=Re(f);if(Gr(h)){const p=i[f],m=o[h]=V(p)||G(p)?{type:p}:de({},p),S=m.type;let C=!1,F=!0;if(V(S))for(let M=0;M<S.length;++M){const A=S[M],L=G(A)&&A.name;if(L==="Boolean"){C=!0;break}else L==="String"&&(F=!1)}else C=G(S)&&S.name==="Boolean";m[0]=C,m[1]=F,(C||se(m,"default"))&&l.push(h)}}const a=[o,l];return ee(e)&&s.set(e,a),a}function Gr(e){return e[0]!=="$"&&!ln(e)}const mr=e=>e==="_"||e==="_ctx"||e==="$stable",_r=e=>V(e)?e.map(et):[et(e)],sf=(e,t,n)=>{if(t._n)return t;const s=Ec((...r)=>_r(t(...r)),n);return s._c=!1,s},Ko=(e,t,n)=>{const s=e._ctx;for(const r in e){if(mr(r))continue;const i=e[r];if(G(i))t[r]=sf(r,i,s);else if(i!=null){const o=_r(i);t[r]=()=>o}}},Go=(e,t)=>{const n=_r(t);e.slots.default=()=>n},Wo=(e,t,n)=>{for(const s in t)(n||!mr(s))&&(e[s]=t[s])},rf=(e,t,n)=>{const s=e.slots=jo();if(e.vnode.shapeFlag&32){const r=t._;r?(Wo(s,t,n),n&&Vi(s,"_",r,!0)):Ko(t,s)}else t&&Go(e,t)},of=(e,t,n)=>{const{vnode:s,slots:r}=e;let i=!0,o=oe;if(s.shapeFlag&32){const l=t._;l?n&&l===1?i=!1:Wo(r,t,n):(i=!t.$stable,Ko(t,r)),o=t}else t&&(Go(e,t),o={default:1});if(i)for(const l in r)!mr(l)&&o[l]==null&&delete r[l]},me=uf;function lf(e){return cf(e)}function cf(e,t){const n=ns();n.__VUE__=!0;const{insert:s,remove:r,patchProp:i,createElement:o,createText:l,createComment:c,setText:a,setElementText:f,parentNode:h,nextSibling:p,setScopeId:m=je,insertStaticContent:S}=e,C=(u,d,g,_=null,b=null,y=null,T=void 0,w=null,R=!!d.dynamicChildren)=>{if(u===d)return;u&&!Nt(u,d)&&(_=v(u),we(u,b,y,!0),u=null),d.patchFlag===-2&&(R=!1,d.dynamicChildren=null);const{type:E,ref:K,shapeFlag:I}=d;switch(E){case hs:F(u,d,g,_);break;case ve:M(u,d,g,_);break;case Hn:u==null&&A(d,g,_,T);break;case Pe:P(u,d,g,_,b,y,T,w,R);break;default:I&1?B(u,d,g,_,b,y,T,w,R):I&6?Q(u,d,g,_,b,y,T,w,R):(I&64||I&128)&&E.process(u,d,g,_,b,y,T,w,R,H)}K!=null&&b?hn(K,u&&u.ref,y,d||u,!d):K==null&&u&&u.ref!=null&&hn(u.ref,null,y,u,!0)},F=(u,d,g,_)=>{if(u==null)s(d.el=l(d.children),g,_);else{const b=d.el=u.el;d.children!==u.children&&a(b,d.children)}},M=(u,d,g,_)=>{u==null?s(d.el=c(d.children||""),g,_):d.el=u.el},A=(u,d,g,_)=>{[u.el,u.anchor]=S(u.children,d,g,_,u.el,u.anchor)},L=({el:u,anchor:d},g,_)=>{let b;for(;u&&u!==d;)b=p(u),s(u,g,_),u=b;s(d,g,_)},N=({el:u,anchor:d})=>{let g;for(;u&&u!==d;)g=p(u),r(u),u=g;r(d)},B=(u,d,g,_,b,y,T,w,R)=>{if(d.type==="svg"?T="svg":d.type==="math"&&(T="mathml"),u==null)J(d,g,_,b,y,T,w,R);else{const E=u.el&&u.el._isVueCE?u.el:null;try{E&&E._beginPatch(),x(u,d,b,y,T,w,R)}finally{E&&E._endPatch()}}},J=(u,d,g,_,b,y,T,w)=>{let R,E;const{props:K,shapeFlag:I,transition:j,dirs:W}=u;if(R=u.el=o(u.type,y,K&&K.is,K),I&8?f(R,u.children):I&16&&k(u.children,R,null,_,b,Cs(u,y),T,w),W&&Tt(u,null,_,"created"),q(R,u,u.scopeId,T,_),K){for(const le in K)le!=="value"&&!ln(le)&&i(R,le,null,K[le],y,_);"value"in K&&i(R,"value",null,K.value,y),(E=K.onVnodeBeforeMount)&&ze(E,_,u)}W&&Tt(u,null,_,"beforeMount");const Z=ff(b,j);Z&&j.beforeEnter(R),s(R,d,g),((E=K&&K.onVnodeMounted)||Z||W)&&me(()=>{E&&ze(E,_,u),Z&&j.enter(R),W&&Tt(u,null,_,"mounted")},b)},q=(u,d,g,_,b)=>{if(g&&m(u,g),_)for(let y=0;y<_.length;y++)m(u,_[y]);if(b){let y=b.subTree;if(d===y||Jo(y.type)&&(y.ssContent===d||y.ssFallback===d)){const T=b.vnode;q(u,T,T.scopeId,T.slotScopeIds,b.parent)}}},k=(u,d,g,_,b,y,T,w,R=0)=>{for(let E=R;E<u.length;E++){const K=u[E]=w?lt(u[E]):et(u[E]);C(null,K,d,g,_,b,y,T,w)}},x=(u,d,g,_,b,y,T)=>{const w=d.el=u.el;let{patchFlag:R,dynamicChildren:E,dirs:K}=d;R|=u.patchFlag&16;const I=u.props||oe,j=d.props||oe;let W;if(g&&Ot(g,!1),(W=j.onVnodeBeforeUpdate)&&ze(W,g,d,u),K&&Tt(d,u,g,"beforeUpdate"),g&&Ot(g,!0),(I.innerHTML&&j.innerHTML==null||I.textContent&&j.textContent==null)&&f(w,""),E?U(u.dynamicChildren,E,w,g,_,Cs(d,b),y):T||te(u,d,w,null,g,_,Cs(d,b),y,!1),R>0){if(R&16)z(w,I,j,g,b);else if(R&2&&I.class!==j.class&&i(w,"class",null,j.class,b),R&4&&i(w,"style",I.style,j.style,b),R&8){const Z=d.dynamicProps;for(let le=0;le<Z.length;le++){const re=Z[le],Te=I[re],Oe=j[re];(Oe!==Te||re==="value")&&i(w,re,Te,Oe,b,g)}}R&1&&u.children!==d.children&&f(w,d.children)}else!T&&E==null&&z(w,I,j,g,b);((W=j.onVnodeUpdated)||K)&&me(()=>{W&&ze(W,g,d,u),K&&Tt(d,u,g,"updated")},_)},U=(u,d,g,_,b,y,T)=>{for(let w=0;w<d.length;w++){const R=u[w],E=d[w],K=R.el&&(R.type===Pe||!Nt(R,E)||R.shapeFlag&198)?h(R.el):g;C(R,E,K,null,_,b,y,T,!0)}},z=(u,d,g,_,b)=>{if(d!==g){if(d!==oe)for(const y in d)!ln(y)&&!(y in g)&&i(u,y,d[y],null,b,_);for(const y in g){if(ln(y))continue;const T=g[y],w=d[y];T!==w&&y!=="value"&&i(u,y,w,T,b,_)}"value"in g&&i(u,"value",d.value,g.value,b)}},P=(u,d,g,_,b,y,T,w,R)=>{const E=d.el=u?u.el:l(""),K=d.anchor=u?u.anchor:l("");let{patchFlag:I,dynamicChildren:j,slotScopeIds:W}=d;W&&(w=w?w.concat(W):W),u==null?(s(E,g,_),s(K,g,_),k(d.children||[],g,K,b,y,T,w,R)):I>0&&I&64&&j&&u.dynamicChildren&&u.dynamicChildren.length===j.length?(U(u.dynamicChildren,j,g,b,y,T,w),(d.key!=null||b&&d===b.subTree)&&yr(u,d,!0)):te(u,d,g,K,b,y,T,w,R)},Q=(u,d,g,_,b,y,T,w,R)=>{d.slotScopeIds=w,u==null?d.shapeFlag&512?b.ctx.activate(d,g,_,T,R):he(d,g,_,b,y,T,R):Se(u,d,R)},he=(u,d,g,_,b,y,T)=>{const w=u.component=vf(u,_,b);if(fs(u)&&(w.ctx.renderer=H),bf(w,!1,T),w.asyncDep){if(b&&b.registerDep(w,ie,T),!u.el){const R=w.subTree=Ee(ve);M(null,R,d,g),u.placeholder=R.el}}else ie(w,u,d,g,b,y,T)},Se=(u,d,g)=>{const _=d.component=u.component;if(Xc(u,d,g))if(_.asyncDep&&!_.asyncResolved){$(_,d,g);return}else _.next=d,_.update();else d.el=u.el,_.vnode=d},ie=(u,d,g,_,b,y,T)=>{const w=()=>{if(u.isMounted){let{next:I,bu:j,u:W,parent:Z,vnode:le}=u;{const qe=$o(u);if(qe){I&&(I.el=le.el,$(u,I,T)),qe.asyncDep.then(()=>{me(()=>{u.isUnmounted||E()},b)});return}}let re=I,Te;Ot(u,!1),I?(I.el=le.el,$(u,I,T)):I=le,j&&Ln(j),(Te=I.props&&I.props.onVnodeBeforeUpdate)&&ze(Te,Z,I,le),Ot(u,!0);const Oe=Ur(u),$e=u.subTree;u.subTree=Oe,C($e,Oe,h($e.el),v($e),u,b,y),I.el=Oe.el,re===null&&Zc(u,Oe.el),W&&me(W,b),(Te=I.props&&I.props.onVnodeUpdated)&&me(()=>ze(Te,Z,I,le),b)}else{let I;const{el:j,props:W}=d,{bm:Z,m:le,parent:re,root:Te,type:Oe}=u,$e=$t(d);Ot(u,!1),Z&&Ln(Z),!$e&&(I=W&&W.onVnodeBeforeMount)&&ze(I,re,d),Ot(u,!0);{Te.ce&&Te.ce._hasShadowRoot()&&Te.ce._injectChildStyle(Oe,u.parent?u.parent.type:void 0);const qe=u.subTree=Ur(u);C(null,qe,g,_,u,b,y),d.el=qe.el}if(le&&me(le,b),!$e&&(I=W&&W.onVnodeMounted)){const qe=d;me(()=>ze(I,re,qe),b)}(d.shapeFlag&256||re&&$t(re.vnode)&&re.vnode.shapeFlag&256)&&u.a&&me(u.a,b),u.isMounted=!0,d=g=_=null}};u.scope.on();const R=u.effect=new Gi(w);u.scope.off();const E=u.update=R.run.bind(R),K=u.job=R.runIfDirty.bind(R);K.i=u,K.id=u.uid,R.scheduler=()=>ur(K),Ot(u,!0),E()},$=(u,d,g)=>{d.component=u;const _=u.vnode.props;u.vnode=d,u.next=null,tf(u,d.props,_,g),of(u,d.children,g),ut(),Pr(u),ht()},te=(u,d,g,_,b,y,T,w,R=!1)=>{const E=u&&u.children,K=u?u.shapeFlag:0,I=d.children,{patchFlag:j,shapeFlag:W}=d;if(j>0){if(j&128){gt(E,I,g,_,b,y,T,w,R);return}else if(j&256){st(E,I,g,_,b,y,T,w,R);return}}W&8?(K&16&&Le(E,b,y),I!==E&&f(g,I)):K&16?W&16?gt(E,I,g,_,b,y,T,w,R):Le(E,b,y,!0):(K&8&&f(g,""),W&16&&k(I,g,_,b,y,T,w,R))},st=(u,d,g,_,b,y,T,w,R)=>{u=u||Kt,d=d||Kt;const E=u.length,K=d.length,I=Math.min(E,K);let j;for(j=0;j<I;j++){const W=d[j]=R?lt(d[j]):et(d[j]);C(u[j],W,g,null,b,y,T,w,R)}E>K?Le(u,b,y,!0,!1,I):k(d,g,_,b,y,T,w,R,I)},gt=(u,d,g,_,b,y,T,w,R)=>{let E=0;const K=d.length;let I=u.length-1,j=K-1;for(;E<=I&&E<=j;){const W=u[E],Z=d[E]=R?lt(d[E]):et(d[E]);if(Nt(W,Z))C(W,Z,g,null,b,y,T,w,R);else break;E++}for(;E<=I&&E<=j;){const W=u[I],Z=d[j]=R?lt(d[j]):et(d[j]);if(Nt(W,Z))C(W,Z,g,null,b,y,T,w,R);else break;I--,j--}if(E>I){if(E<=j){const W=j+1,Z=W<K?d[W].el:_;for(;E<=j;)C(null,d[E]=R?lt(d[E]):et(d[E]),g,Z,b,y,T,w,R),E++}}else if(E>j)for(;E<=I;)we(u[E],b,y,!0),E++;else{const W=E,Z=E,le=new Map;for(E=Z;E<=j;E++){const Ie=d[E]=R?lt(d[E]):et(d[E]);Ie.key!=null&&le.set(Ie.key,E)}let re,Te=0;const Oe=j-Z+1;let $e=!1,qe=0;const Zt=new Array(Oe);for(E=0;E<Oe;E++)Zt[E]=0;for(E=W;E<=I;E++){const Ie=u[E];if(Te>=Oe){we(Ie,b,y,!0);continue}let Je;if(Ie.key!=null)Je=le.get(Ie.key);else for(re=Z;re<=j;re++)if(Zt[re-Z]===0&&Nt(Ie,d[re])){Je=re;break}Je===void 0?we(Ie,b,y,!0):(Zt[Je-Z]=E+1,Je>=qe?qe=Je:$e=!0,C(Ie,d[Je],g,null,b,y,T,w,R),Te++)}const Cr=$e?af(Zt):Kt;for(re=Cr.length-1,E=Oe-1;E>=0;E--){const Ie=Z+E,Je=d[Ie],Ar=d[Ie+1],xr=Ie+1<K?Ar.el||qo(Ar):_;Zt[E]===0?C(null,Je,g,xr,b,y,T,w,R):$e&&(re<0||E!==Cr[re]?We(Je,g,xr,2):re--)}}},We=(u,d,g,_,b=null)=>{const{el:y,type:T,transition:w,children:R,shapeFlag:E}=u;if(E&6){We(u.component.subTree,d,g,_);return}if(E&128){u.suspense.move(d,g,_);return}if(E&64){T.move(u,d,g,H);return}if(T===Pe){s(y,d,g);for(let I=0;I<R.length;I++)We(R[I],d,g,_);s(u.anchor,d,g);return}if(T===Hn){L(u,d,g);return}if(_!==2&&E&1&&w)if(_===0)w.beforeEnter(y),s(y,d,g),me(()=>w.enter(y),b);else{const{leave:I,delayLeave:j,afterLeave:W}=w,Z=()=>{u.ctx.isUnmounted?r(y):s(y,d,g)},le=()=>{y._isLeaving&&y[Xe](!0),I(y,()=>{Z(),W&&W()})};j?j(y,Z,le):le()}else s(y,d,g)},we=(u,d,g,_=!1,b=!1)=>{const{type:y,props:T,ref:w,children:R,dynamicChildren:E,shapeFlag:K,patchFlag:I,dirs:j,cacheIndex:W}=u;if(I===-2&&(b=!1),w!=null&&(ut(),hn(w,null,g,u,!0),ht()),W!=null&&(d.renderCache[W]=void 0),K&256){d.ctx.deactivate(u);return}const Z=K&1&&j,le=!$t(u);let re;if(le&&(re=T&&T.onVnodeBeforeUnmount)&&ze(re,d,u),K&6)wt(u.component,g,_);else{if(K&128){u.suspense.unmount(g,_);return}Z&&Tt(u,null,d,"beforeUnmount"),K&64?u.type.remove(u,d,g,H,_):E&&!E.hasOnce&&(y!==Pe||I>0&&I&64)?Le(E,d,g,!1,!0):(y===Pe&&I&384||!b&&K&16)&&Le(R,d,g),_&&Vt(u)}(le&&(re=T&&T.onVnodeUnmounted)||Z)&&me(()=>{re&&ze(re,d,u),Z&&Tt(u,null,d,"unmounted")},g)},Vt=u=>{const{type:d,el:g,anchor:_,transition:b}=u;if(d===Pe){Ht(g,_);return}if(d===Hn){N(u);return}const y=()=>{r(g),b&&!b.persisted&&b.afterLeave&&b.afterLeave()};if(u.shapeFlag&1&&b&&!b.persisted){const{leave:T,delayLeave:w}=b,R=()=>T(g,y);w?w(u.el,y,R):R()}else y()},Ht=(u,d)=>{let g;for(;u!==d;)g=p(u),r(u),u=g;r(d)},wt=(u,d,g)=>{const{bum:_,scope:b,job:y,subTree:T,um:w,m:R,a:E}=u;Wr(R),Wr(E),_&&Ln(_),b.stop(),y&&(y.flags|=8,we(T,u,d,g)),w&&me(w,d),me(()=>{u.isUnmounted=!0},d)},Le=(u,d,g,_=!1,b=!1,y=0)=>{for(let T=y;T<u.length;T++)we(u[T],d,g,_,b)},v=u=>{if(u.shapeFlag&6)return v(u.component.subTree);if(u.shapeFlag&128)return u.suspense.next();const d=p(u.anchor||u.el),g=d&&d[go];return g?p(g):d};let D=!1;const O=(u,d,g)=>{let _;u==null?d._vnode&&(we(d._vnode,null,null,!0),_=d._vnode.component):C(d._vnode||null,u,d,null,null,null,g),d._vnode=u,D||(D=!0,Pr(_),ao(),D=!1)},H={p:C,um:we,m:We,r:Vt,mt:he,mc:k,pc:te,pbc:U,n:v,o:e};return{render:O,hydrate:void 0,createApp:$c(O)}}function Cs({type:e,props:t},n){return n==="svg"&&e==="foreignObject"||n==="mathml"&&e==="annotation-xml"&&t&&t.encoding&&t.encoding.includes("html")?void 0:n}function Ot({effect:e,job:t},n){n?(e.flags|=32,t.flags|=4):(e.flags&=-33,t.flags&=-5)}function ff(e,t){return(!e||e&&!e.pendingBranch)&&t&&!t.persisted}function yr(e,t,n=!1){const s=e.children,r=t.children;if(V(s)&&V(r))for(let i=0;i<s.length;i++){const o=s[i];let l=r[i];l.shapeFlag&1&&!l.dynamicChildren&&((l.patchFlag<=0||l.patchFlag===32)&&(l=r[i]=lt(r[i]),l.el=o.el),!n&&l.patchFlag!==-2&&yr(o,l)),l.type===hs&&(l.patchFlag===-1&&(l=r[i]=lt(l)),l.el=o.el),l.type===ve&&!l.el&&(l.el=o.el)}}function af(e){const t=e.slice(),n=[0];let s,r,i,o,l;const c=e.length;for(s=0;s<c;s++){const a=e[s];if(a!==0){if(r=n[n.length-1],e[r]<a){t[s]=r,n.push(s);continue}for(i=0,o=n.length-1;i<o;)l=i+o>>1,e[n[l]]<a?i=l+1:o=l;a<e[n[i]]&&(i>0&&(t[s]=n[i-1]),n[i]=s)}}for(i=n.length,o=n[i-1];i-- >0;)n[i]=o,o=t[o];return n}function $o(e){const t=e.subTree.component;if(t)return t.asyncDep&&!t.asyncResolved?t:$o(t)}function Wr(e){if(e)for(let t=0;t<e.length;t++)e[t].flags|=8}function qo(e){if(e.placeholder)return e.placeholder;const t=e.component;return t?qo(t.subTree):null}const Jo=e=>e.__isSuspense;function uf(e,t){t&&t.pendingBranch?V(e)?t.effects.push(...e):t.effects.push(e):bc(e)}const Pe=Symbol.for("v-fgt"),hs=Symbol.for("v-txt"),ve=Symbol.for("v-cmt"),Hn=Symbol.for("v-stc"),pn=[];let Me=null;function Us(e=!1){pn.push(Me=e?null:[])}function hf(){pn.pop(),Me=pn[pn.length-1]||null}let En=1;function qn(e,t=!1){En+=e,e<0&&Me&&t&&(Me.hasOnce=!0)}function zo(e){return e.dynamicChildren=En>0?Me||Kt:null,hf(),En>0&&Me&&Me.push(e),e}function Pu(e,t,n,s,r,i){return zo(Qo(e,t,n,s,r,i,!0))}function Ks(e,t,n,s,r){return zo(Ee(e,t,n,s,r,!0))}function Sn(e){return e?e.__v_isVNode===!0:!1}function Nt(e,t){return e.type===t.type&&e.key===t.key}const Yo=({key:e})=>e??null,jn=({ref:e,ref_key:t,ref_for:n})=>(typeof e=="number"&&(e=""+e),e!=null?ae(e)||fe(e)||G(e)?{i:ge,r:e,k:t,f:!!n}:e:null);function Qo(e,t=null,n=null,s=0,r=null,i=e===Pe?0:1,o=!1,l=!1){const c={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&Yo(t),ref:t&&jn(t),scopeId:ho,slotScopeIds:null,children:n,component:null,suspense:null,ssContent:null,ssFallback:null,dirs:null,transition:null,el:null,anchor:null,target:null,targetStart:null,targetAnchor:null,staticCount:0,shapeFlag:i,patchFlag:s,dynamicProps:r,dynamicChildren:null,appContext:null,ctx:ge};return l?(vr(c,n),i&128&&e.normalize(c)):n&&(c.shapeFlag|=ae(n)?8:16),En>0&&!o&&Me&&(c.patchFlag>0||i&6)&&c.patchFlag!==32&&Me.push(c),c}const Ee=df;function df(e,t=null,n=null,s=0,r=null,i=!1){if((!e||e===Po)&&(e=ve),Sn(e)){const l=At(e,t,!0);return n&&vr(l,n),En>0&&!i&&Me&&(l.shapeFlag&6?Me[Me.indexOf(e)]=l:Me.push(l)),l.patchFlag=-2,l}if(Af(e)&&(e=e.__vccOpts),t){t=pf(t);let{class:l,style:c}=t;l&&!ae(l)&&(t.class=rs(l)),ee(c)&&(os(c)&&!V(c)&&(c=de({},c)),t.style=ss(c))}const o=ae(e)?1:Jo(e)?128:mo(e)?64:ee(e)?4:G(e)?2:0;return Qo(e,t,n,s,r,o,i,!0)}function pf(e){return e?os(e)||Bo(e)?de({},e):e:null}function At(e,t,n=!1,s=!1){const{props:r,ref:i,patchFlag:o,children:l,transition:c}=e,a=t?mf(r||{},t):r,f={__v_isVNode:!0,__v_skip:!0,type:e.type,props:a,key:a&&Yo(a),ref:t&&t.ref?n&&i?V(i)?i.concat(jn(t)):[i,jn(t)]:jn(t):i,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:l,target:e.target,targetStart:e.targetStart,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==Pe?o===-1?16:o|16:o,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:c,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&At(e.ssContent),ssFallback:e.ssFallback&&At(e.ssFallback),placeholder:e.placeholder,el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce};return c&&s&&Ft(f,c.clone(f)),f}function gf(e=" ",t=0){return Ee(hs,null,e,t)}function Iu(e,t){const n=Ee(Hn,null,e);return n.staticCount=t,n}function Nu(e="",t=!1){return t?(Us(),Ks(ve,null,e)):Ee(ve,null,e)}function et(e){return e==null||typeof e=="boolean"?Ee(ve):V(e)?Ee(Pe,null,e.slice()):Sn(e)?lt(e):Ee(hs,null,String(e))}function lt(e){return e.el===null&&e.patchFlag!==-1||e.memo?e:At(e)}function vr(e,t){let n=0;const{shapeFlag:s}=e;if(t==null)t=null;else if(V(t))n=16;else if(typeof t=="object")if(s&65){const r=t.default;r&&(r._c&&(r._d=!1),vr(e,r()),r._c&&(r._d=!0));return}else{n=32;const r=t._;!r&&!Bo(t)?t._ctx=ge:r===3&&ge&&(ge.slots._===1?t._=1:(t._=2,e.patchFlag|=1024))}else G(t)?(t={default:t,_ctx:ge},n=32):(t=String(t),s&64?(n=16,t=[gf(t)]):n=8);e.children=t,e.shapeFlag|=n}function mf(...e){const t={};for(let n=0;n<e.length;n++){const s=e[n];for(const r in s)if(r==="class")t.class!==s.class&&(t.class=rs([t.class,s.class]));else if(r==="style")t.style=ss([t.style,s.style]);else if(Qn(r)){const i=t[r],o=s[r];o&&i!==o&&!(V(i)&&i.includes(o))&&(t[r]=i?[].concat(i,o):o)}else r!==""&&(t[r]=s[r])}return t}function ze(e,t,n,s=null){Ke(e,t,7,[n,s])}const _f=Lo();let yf=0;function vf(e,t,n){const s=e.type,r=(t?t.appContext:e.appContext)||_f,i={uid:yf++,vnode:e,type:s,parent:t,appContext:r,root:null,next:null,subTree:null,effect:null,update:null,job:null,scope:new ki(!0),render:null,proxy:null,exposed:null,exposeProxy:null,withProxy:null,provides:t?t.provides:Object.create(r.provides),ids:t?t.ids:["",0,0],accessCache:null,renderCache:[],components:null,directives:null,propsOptions:Uo(s,r),emitsOptions:Fo(s,r),emit:null,emitted:null,propsDefaults:oe,inheritAttrs:s.inheritAttrs,ctx:oe,data:oe,props:oe,attrs:oe,slots:oe,refs:oe,setupState:oe,setupContext:null,suspense:n,suspenseId:n?n.pendingId:0,asyncDep:null,asyncResolved:!1,isMounted:!1,isUnmounted:!1,isDeactivated:!1,bc:null,c:null,bm:null,m:null,bu:null,u:null,um:null,bum:null,da:null,a:null,rtg:null,rtc:null,ec:null,sp:null};return i.ctx={_:i},i.root=t?t.root:i,i.emit=Jc.bind(null,i),e.ce&&e.ce(i),i}let be=null;const Tn=()=>be||ge;let Jn,Gs;{const e=ns(),t=(n,s)=>{let r;return(r=e[n])||(r=e[n]=[]),r.push(s),i=>{r.length>1?r.forEach(o=>o(i)):r[0](i)}};Jn=t("__VUE_INSTANCE_SETTERS__",n=>be=n),Gs=t("__VUE_SSR_SETTERS__",n=>Cn=n)}const On=e=>{const t=be;return Jn(e),e.scope.on(),()=>{e.scope.off(),Jn(t)}},$r=()=>{be&&be.scope.off(),Jn(null)};function Xo(e){return e.vnode.shapeFlag&4}let Cn=!1;function bf(e,t=!1,n=!1){t&&Gs(t);const{props:s,children:r}=e.vnode,i=Xo(e);ef(e,s,i,t),rf(e,r,n||t);const o=i?Ef(e,t):void 0;return t&&Gs(!1),o}function Ef(e,t){const n=e.type;e.accessCache=Object.create(null),e.proxy=new Proxy(e.ctx,jc);const{setup:s}=n;if(s){ut();const r=e.setupContext=s.length>1?el(e):null,i=On(e),o=wn(s,e,0,[e.props,r]),l=Di(o);if(ht(),i(),(l||e.sp)&&!$t(e)&&Ao(e),l){if(o.then($r,$r),t)return o.then(c=>{qr(e,c)}).catch(c=>{ls(c,e,0)});e.asyncDep=o}else qr(e,o)}else Zo(e)}function qr(e,t,n){G(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:ee(t)&&(e.setupState=oo(t)),Zo(e)}function Zo(e,t,n){const s=e.type;e.render||(e.render=s.render||je);{const r=On(e);ut();try{Bc(e)}finally{ht(),r()}}}const Sf={get(e,t){return ye(e,"get",""),e[t]}};function el(e){const t=n=>{e.exposed=n||{}};return{attrs:new Proxy(e.attrs,Sf),slots:e.slots,emit:e.emit,expose:t}}function ds(e){return e.exposed?e.exposeProxy||(e.exposeProxy=new Proxy(oo(fr(e.exposed)),{get(t,n){if(n in t)return t[n];if(n in dn)return dn[n](e)},has(t,n){return n in t||n in dn}})):e.proxy}function Cf(e,t=!0){return G(e)?e.displayName||e.name:e.name||t&&e.__name}function Af(e){return G(e)&&"__vccOpts"in e}const Ne=(e,t)=>gc(e,t,Cn);function br(e,t,n){try{qn(-1);const s=arguments.length;return s===2?ee(t)&&!V(t)?Sn(t)?Ee(e,null,[t]):Ee(e,t):Ee(e,null,t):(s>3?n=Array.prototype.slice.call(arguments,2):s===3&&Sn(n)&&(n=[n]),Ee(e,t,n))}finally{qn(1)}}const xf="3.5.30",Mu=je;/**
14
+ * @vue/runtime-dom v3.5.30
15
+ * (c) 2018-present Yuxi (Evan) You and Vue contributors
16
+ * @license MIT
17
+ **/let Ws;const Jr=typeof window<"u"&&window.trustedTypes;if(Jr)try{Ws=Jr.createPolicy("vue",{createHTML:e=>e})}catch{}const tl=Ws?e=>Ws.createHTML(e):e=>e,Rf="http://www.w3.org/2000/svg",wf="http://www.w3.org/1998/Math/MathML",ot=typeof document<"u"?document:null,zr=ot&&ot.createElement("template"),Tf={insert:(e,t,n)=>{t.insertBefore(e,n||null)},remove:e=>{const t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,n,s)=>{const r=t==="svg"?ot.createElementNS(Rf,e):t==="mathml"?ot.createElementNS(wf,e):n?ot.createElement(e,{is:n}):ot.createElement(e);return e==="select"&&s&&s.multiple!=null&&r.setAttribute("multiple",s.multiple),r},createText:e=>ot.createTextNode(e),createComment:e=>ot.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>ot.querySelector(e),setScopeId(e,t){e.setAttribute(t,"")},insertStaticContent(e,t,n,s,r,i){const o=n?n.previousSibling:t.lastChild;if(r&&(r===i||r.nextSibling))for(;t.insertBefore(r.cloneNode(!0),n),!(r===i||!(r=r.nextSibling)););else{zr.innerHTML=tl(s==="svg"?`<svg>${e}</svg>`:s==="mathml"?`<math>${e}</math>`:e);const l=zr.content;if(s==="svg"||s==="mathml"){const c=l.firstChild;for(;c.firstChild;)l.appendChild(c.firstChild);l.removeChild(c)}t.insertBefore(l,n)}return[o?o.nextSibling:t.firstChild,n?n.previousSibling:t.lastChild]}},mt="transition",nn="animation",Jt=Symbol("_vtc"),nl={name:String,type:String,css:{type:Boolean,default:!0},duration:[String,Number,Object],enterFromClass:String,enterActiveClass:String,enterToClass:String,appearFromClass:String,appearActiveClass:String,appearToClass:String,leaveFromClass:String,leaveActiveClass:String,leaveToClass:String},sl=de({},vo,nl),Of=e=>(e.displayName="Transition",e.props=sl,e),Du=Of((e,{slots:t})=>br(Tc,rl(e),t)),Pt=(e,t=[])=>{V(e)?e.forEach(n=>n(...t)):e&&e(...t)},Yr=e=>e?V(e)?e.some(t=>t.length>1):e.length>1:!1;function rl(e){const t={};for(const P in e)P in nl||(t[P]=e[P]);if(e.css===!1)return t;const{name:n="v",type:s,duration:r,enterFromClass:i=`${n}-enter-from`,enterActiveClass:o=`${n}-enter-active`,enterToClass:l=`${n}-enter-to`,appearFromClass:c=i,appearActiveClass:a=o,appearToClass:f=l,leaveFromClass:h=`${n}-leave-from`,leaveActiveClass:p=`${n}-leave-active`,leaveToClass:m=`${n}-leave-to`}=e,S=Pf(r),C=S&&S[0],F=S&&S[1],{onBeforeEnter:M,onEnter:A,onEnterCancelled:L,onLeave:N,onLeaveCancelled:B,onBeforeAppear:J=M,onAppear:q=A,onAppearCancelled:k=L}=t,x=(P,Q,he,Se)=>{P._enterCancelled=Se,yt(P,Q?f:l),yt(P,Q?a:o),he&&he()},U=(P,Q)=>{P._isLeaving=!1,yt(P,h),yt(P,m),yt(P,p),Q&&Q()},z=P=>(Q,he)=>{const Se=P?q:A,ie=()=>x(Q,P,he);Pt(Se,[Q,ie]),Qr(()=>{yt(Q,P?c:i),Ye(Q,P?f:l),Yr(Se)||Xr(Q,s,C,ie)})};return de(t,{onBeforeEnter(P){Pt(M,[P]),Ye(P,i),Ye(P,o)},onBeforeAppear(P){Pt(J,[P]),Ye(P,c),Ye(P,a)},onEnter:z(!1),onAppear:z(!0),onLeave(P,Q){P._isLeaving=!0;const he=()=>U(P,Q);Ye(P,h),P._enterCancelled?(Ye(P,p),$s(P)):($s(P),Ye(P,p)),Qr(()=>{P._isLeaving&&(yt(P,h),Ye(P,m),Yr(N)||Xr(P,s,F,he))}),Pt(N,[P,he])},onEnterCancelled(P){x(P,!1,void 0,!0),Pt(L,[P])},onAppearCancelled(P){x(P,!0,void 0,!0),Pt(k,[P])},onLeaveCancelled(P){U(P),Pt(B,[P])}})}function Pf(e){if(e==null)return null;if(ee(e))return[As(e.enter),As(e.leave)];{const t=As(e);return[t,t]}}function As(e){return Nl(e)}function Ye(e,t){t.split(/\s+/).forEach(n=>n&&e.classList.add(n)),(e[Jt]||(e[Jt]=new Set)).add(t)}function yt(e,t){t.split(/\s+/).forEach(s=>s&&e.classList.remove(s));const n=e[Jt];n&&(n.delete(t),n.size||(e[Jt]=void 0))}function Qr(e){requestAnimationFrame(()=>{requestAnimationFrame(e)})}let If=0;function Xr(e,t,n,s){const r=e._endId=++If,i=()=>{r===e._endId&&s()};if(n!=null)return setTimeout(i,n);const{type:o,timeout:l,propCount:c}=il(e,t);if(!o)return s();const a=o+"end";let f=0;const h=()=>{e.removeEventListener(a,p),i()},p=m=>{m.target===e&&++f>=c&&h()};setTimeout(()=>{f<c&&h()},l+1),e.addEventListener(a,p)}function il(e,t){const n=window.getComputedStyle(e),s=S=>(n[S]||"").split(", "),r=s(`${mt}Delay`),i=s(`${mt}Duration`),o=Zr(r,i),l=s(`${nn}Delay`),c=s(`${nn}Duration`),a=Zr(l,c);let f=null,h=0,p=0;t===mt?o>0&&(f=mt,h=o,p=i.length):t===nn?a>0&&(f=nn,h=a,p=c.length):(h=Math.max(o,a),f=h>0?o>a?mt:nn:null,p=f?f===mt?i.length:c.length:0);const m=f===mt&&/\b(?:transform|all)(?:,|$)/.test(s(`${mt}Property`).toString());return{type:f,timeout:h,propCount:p,hasTransform:m}}function Zr(e,t){for(;e.length<t.length;)e=e.concat(e);return Math.max(...t.map((n,s)=>ei(n)+ei(e[s])))}function ei(e){return e==="auto"?0:Number(e.slice(0,-1).replace(",","."))*1e3}function $s(e){return(e?e.ownerDocument:document).body.offsetHeight}function Nf(e,t,n){const s=e[Jt];s&&(t=(t?[t,...s]:[...s]).join(" ")),t==null?e.removeAttribute("class"):n?e.setAttribute("class",t):e.className=t}const zn=Symbol("_vod"),ol=Symbol("_vsh"),Lu={name:"show",beforeMount(e,{value:t},{transition:n}){e[zn]=e.style.display==="none"?"":e.style.display,n&&t?n.beforeEnter(e):sn(e,t)},mounted(e,{value:t},{transition:n}){n&&t&&n.enter(e)},updated(e,{value:t,oldValue:n},{transition:s}){!t!=!n&&(s?t?(s.beforeEnter(e),sn(e,!0),s.enter(e)):s.leave(e,()=>{sn(e,!1)}):sn(e,t))},beforeUnmount(e,{value:t}){sn(e,t)}};function sn(e,t){e.style.display=t?e[zn]:"none",e[ol]=!t}const Mf=Symbol(""),Df=/(?:^|;)\s*display\s*:/;function Lf(e,t,n){const s=e.style,r=ae(n);let i=!1;if(n&&!r){if(t)if(ae(t))for(const o of t.split(";")){const l=o.slice(0,o.indexOf(":")).trim();n[l]==null&&Bn(s,l,"")}else for(const o in t)n[o]==null&&Bn(s,o,"");for(const o in n)o==="display"&&(i=!0),Bn(s,o,n[o])}else if(r){if(t!==n){const o=s[Mf];o&&(n+=";"+o),s.cssText=n,i=Df.test(n)}}else t&&e.removeAttribute("style");zn in e&&(e[zn]=i?s.display:"",e[ol]&&(s.display="none"))}const ti=/\s*!important$/;function Bn(e,t,n){if(V(n))n.forEach(s=>Bn(e,t,s));else if(n==null&&(n=""),t.startsWith("--"))e.setProperty(t,n);else{const s=Ff(e,t);ti.test(n)?e.setProperty(Rt(s),n.replace(ti,""),"important"):e[s]=n}}const ni=["Webkit","Moz","ms"],xs={};function Ff(e,t){const n=xs[t];if(n)return n;let s=Re(t);if(s!=="filter"&&s in e)return xs[t]=s;s=es(s);for(let r=0;r<ni.length;r++){const i=ni[r]+s;if(i in e)return xs[t]=i}return t}const si="http://www.w3.org/1999/xlink";function ri(e,t,n,s,r,i=Hl(t)){s&&t.startsWith("xlink:")?n==null?e.removeAttributeNS(si,t.slice(6,t.length)):e.setAttributeNS(si,t,n):n==null||i&&!Hi(n)?e.removeAttribute(t):e.setAttribute(t,i?"":ke(n)?String(n):n)}function ii(e,t,n,s,r){if(t==="innerHTML"||t==="textContent"){n!=null&&(e[t]=t==="innerHTML"?tl(n):n);return}const i=e.tagName;if(t==="value"&&i!=="PROGRESS"&&!i.includes("-")){const l=i==="OPTION"?e.getAttribute("value")||"":e.value,c=n==null?e.type==="checkbox"?"on":"":String(n);(l!==c||!("_value"in e))&&(e.value=c),n==null&&e.removeAttribute(t),e._value=n;return}let o=!1;if(n===""||n==null){const l=typeof e[t];l==="boolean"?n=Hi(n):n==null&&l==="string"?(n="",o=!0):l==="number"&&(n=0,o=!0)}try{e[t]=n}catch{}o&&e.removeAttribute(r||t)}function at(e,t,n,s){e.addEventListener(t,n,s)}function Vf(e,t,n,s){e.removeEventListener(t,n,s)}const oi=Symbol("_vei");function Hf(e,t,n,s,r=null){const i=e[oi]||(e[oi]={}),o=i[t];if(s&&o)o.value=s;else{const[l,c]=jf(t);if(s){const a=i[t]=Uf(s,r);at(e,l,a,c)}else o&&(Vf(e,l,o,c),i[t]=void 0)}}const li=/(?:Once|Passive|Capture)$/;function jf(e){let t;if(li.test(e)){t={};let s;for(;s=e.match(li);)e=e.slice(0,e.length-s[0].length),t[s[0].toLowerCase()]=!0}return[e[2]===":"?e.slice(3):Rt(e.slice(2)),t]}let Rs=0;const Bf=Promise.resolve(),kf=()=>Rs||(Bf.then(()=>Rs=0),Rs=Date.now());function Uf(e,t){const n=s=>{if(!s._vts)s._vts=Date.now();else if(s._vts<=n.attached)return;Ke(Kf(s,n.value),t,5,[s])};return n.value=e,n.attached=kf(),n}function Kf(e,t){if(V(t)){const n=e.stopImmediatePropagation;return e.stopImmediatePropagation=()=>{n.call(e),e._stopped=!0},t.map(s=>r=>!r._stopped&&s&&s(r))}else return t}const ci=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&e.charCodeAt(2)>96&&e.charCodeAt(2)<123,Gf=(e,t,n,s,r,i)=>{const o=r==="svg";t==="class"?Nf(e,s,o):t==="style"?Lf(e,n,s):Qn(t)?er(t)||Hf(e,t,n,s,i):(t[0]==="."?(t=t.slice(1),!0):t[0]==="^"?(t=t.slice(1),!1):Wf(e,t,s,o))?(ii(e,t,s),!e.tagName.includes("-")&&(t==="value"||t==="checked"||t==="selected")&&ri(e,t,s,o,i,t!=="value")):e._isVueCE&&($f(e,t)||e._def.__asyncLoader&&(/[A-Z]/.test(t)||!ae(s)))?ii(e,Re(t),s,i,t):(t==="true-value"?e._trueValue=s:t==="false-value"&&(e._falseValue=s),ri(e,t,s,o))};function Wf(e,t,n,s){if(s)return!!(t==="innerHTML"||t==="textContent"||t in e&&ci(t)&&G(n));if(t==="spellcheck"||t==="draggable"||t==="translate"||t==="autocorrect"||t==="sandbox"&&e.tagName==="IFRAME"||t==="form"||t==="list"&&e.tagName==="INPUT"||t==="type"&&e.tagName==="TEXTAREA")return!1;if(t==="width"||t==="height"){const r=e.tagName;if(r==="IMG"||r==="VIDEO"||r==="CANVAS"||r==="SOURCE")return!1}return ci(t)&&ae(n)?!1:t in e}function $f(e,t){const n=e._def.props;if(!n)return!1;const s=Re(t);return Array.isArray(n)?n.some(r=>Re(r)===s):Object.keys(n).some(r=>Re(r)===s)}const ll=new WeakMap,cl=new WeakMap,Yn=Symbol("_moveCb"),fi=Symbol("_enterCb"),qf=e=>(delete e.props.mode,e),Jf=qf({name:"TransitionGroup",props:de({},sl,{tag:String,moveClass:String}),setup(e,{slots:t}){const n=Tn(),s=yo();let r,i;return wo(()=>{if(!r.length)return;const o=e.moveClass||`${e.name||"v"}-move`;if(!Xf(r[0].el,n.vnode.el,o)){r=[];return}r.forEach(zf),r.forEach(Yf);const l=r.filter(Qf);$s(n.vnode.el),l.forEach(c=>{const a=c.el,f=a.style;Ye(a,o),f.transform=f.webkitTransform=f.transitionDuration="";const h=a[Yn]=p=>{p&&p.target!==a||(!p||p.propertyName.endsWith("transform"))&&(a.removeEventListener("transitionend",h),a[Yn]=null,yt(a,o))};a.addEventListener("transitionend",h)}),r=[]}),()=>{const o=Y(e),l=rl(o);let c=o.tag||Pe;if(r=[],i)for(let a=0;a<i.length;a++){const f=i[a];f.el&&f.el instanceof Element&&(r.push(f),Ft(f,bn(f,l,s,n)),ll.set(f,fl(f.el)))}i=t.default?dr(t.default()):[];for(let a=0;a<i.length;a++){const f=i[a];f.key!=null&&Ft(f,bn(f,l,s,n))}return Ee(c,null,i)}}}),Fu=Jf;function zf(e){const t=e.el;t[Yn]&&t[Yn](),t[fi]&&t[fi]()}function Yf(e){cl.set(e,fl(e.el))}function Qf(e){const t=ll.get(e),n=cl.get(e),s=t.left-n.left,r=t.top-n.top;if(s||r){const i=e.el,o=i.style,l=i.getBoundingClientRect();let c=1,a=1;return i.offsetWidth&&(c=l.width/i.offsetWidth),i.offsetHeight&&(a=l.height/i.offsetHeight),(!Number.isFinite(c)||c===0)&&(c=1),(!Number.isFinite(a)||a===0)&&(a=1),Math.abs(c-1)<.01&&(c=1),Math.abs(a-1)<.01&&(a=1),o.transform=o.webkitTransform=`translate(${s/c}px,${r/a}px)`,o.transitionDuration="0s",e}}function fl(e){const t=e.getBoundingClientRect();return{left:t.left,top:t.top}}function Xf(e,t,n){const s=e.cloneNode(),r=e[Jt];r&&r.forEach(l=>{l.split(/\s+/).forEach(c=>c&&s.classList.remove(c))}),n.split(/\s+/).forEach(l=>l&&s.classList.add(l)),s.style.display="none";const i=t.nodeType===1?t:t.parentNode;i.appendChild(s);const{hasTransform:o}=il(s);return i.removeChild(s),o}const xt=e=>{const t=e.props["onUpdate:modelValue"]||!1;return V(t)?n=>Ln(t,n):t};function Zf(e){e.target.composing=!0}function ai(e){const t=e.target;t.composing&&(t.composing=!1,t.dispatchEvent(new Event("input")))}const He=Symbol("_assign");function ui(e,t,n){return t&&(e=e.trim()),n&&(e=ts(e)),e}const Vu={created(e,{modifiers:{lazy:t,trim:n,number:s}},r){e[He]=xt(r);const i=s||r.props&&r.props.type==="number";at(e,t?"change":"input",o=>{o.target.composing||e[He](ui(e.value,n,i))}),(n||i)&&at(e,"change",()=>{e.value=ui(e.value,n,i)}),t||(at(e,"compositionstart",Zf),at(e,"compositionend",ai),at(e,"change",ai))},mounted(e,{value:t}){e.value=t??""},beforeUpdate(e,{value:t,oldValue:n,modifiers:{lazy:s,trim:r,number:i}},o){if(e[He]=xt(o),e.composing)return;const l=(i||e.type==="number")&&!/^0\d/.test(e.value)?ts(e.value):e.value,c=t??"";l!==c&&(document.activeElement===e&&e.type!=="range"&&(s&&t===n||r&&e.value.trim()===c)||(e.value=c))}},Hu={deep:!0,created(e,t,n){e[He]=xt(n),at(e,"change",()=>{const s=e._modelValue,r=zt(e),i=e.checked,o=e[He];if(V(s)){const l=nr(s,r),c=l!==-1;if(i&&!c)o(s.concat(r));else if(!i&&c){const a=[...s];a.splice(l,1),o(a)}}else if(Xt(s)){const l=new Set(s);i?l.add(r):l.delete(r),o(l)}else o(al(e,i))})},mounted:hi,beforeUpdate(e,t,n){e[He]=xt(n),hi(e,t,n)}};function hi(e,{value:t,oldValue:n},s){e._modelValue=t;let r;if(V(t))r=nr(t,s.props.value)>-1;else if(Xt(t))r=t.has(s.props.value);else{if(t===n)return;r=Ct(t,al(e,!0))}e.checked!==r&&(e.checked=r)}const ju={created(e,{value:t},n){e.checked=Ct(t,n.props.value),e[He]=xt(n),at(e,"change",()=>{e[He](zt(e))})},beforeUpdate(e,{value:t,oldValue:n},s){e[He]=xt(s),t!==n&&(e.checked=Ct(t,s.props.value))}},Bu={deep:!0,created(e,{value:t,modifiers:{number:n}},s){const r=Xt(t);at(e,"change",()=>{const i=Array.prototype.filter.call(e.options,o=>o.selected).map(o=>n?ts(zt(o)):zt(o));e[He](e.multiple?r?new Set(i):i:i[0]),e._assigning=!0,cs(()=>{e._assigning=!1})}),e[He]=xt(s)},mounted(e,{value:t}){di(e,t)},beforeUpdate(e,t,n){e[He]=xt(n)},updated(e,{value:t}){e._assigning||di(e,t)}};function di(e,t){const n=e.multiple,s=V(t);if(!(n&&!s&&!Xt(t))){for(let r=0,i=e.options.length;r<i;r++){const o=e.options[r],l=zt(o);if(n)if(s){const c=typeof l;c==="string"||c==="number"?o.selected=t.some(a=>String(a)===String(l)):o.selected=nr(t,l)>-1}else o.selected=t.has(l);else if(Ct(zt(o),t)){e.selectedIndex!==r&&(e.selectedIndex=r);return}}!n&&e.selectedIndex!==-1&&(e.selectedIndex=-1)}}function zt(e){return"_value"in e?e._value:e.value}function al(e,t){const n=t?"_trueValue":"_falseValue";return n in e?e[n]:t}const ea=["ctrl","shift","alt","meta"],ta={stop:e=>e.stopPropagation(),prevent:e=>e.preventDefault(),self:e=>e.target!==e.currentTarget,ctrl:e=>!e.ctrlKey,shift:e=>!e.shiftKey,alt:e=>!e.altKey,meta:e=>!e.metaKey,left:e=>"button"in e&&e.button!==0,middle:e=>"button"in e&&e.button!==1,right:e=>"button"in e&&e.button!==2,exact:(e,t)=>ea.some(n=>e[`${n}Key`]&&!t.includes(n))},ku=(e,t)=>{if(!e)return e;const n=e._withMods||(e._withMods={}),s=t.join(".");return n[s]||(n[s]=(r,...i)=>{for(let o=0;o<t.length;o++){const l=ta[t[o]];if(l&&l(r,t))return}return e(r,...i)})},na={esc:"escape",space:" ",up:"arrow-up",left:"arrow-left",right:"arrow-right",down:"arrow-down",delete:"backspace"},Uu=(e,t)=>{const n=e._withKeys||(e._withKeys={}),s=t.join(".");return n[s]||(n[s]=r=>{if(!("key"in r))return;const i=Rt(r.key);if(t.some(o=>o===i||na[o]===i))return e(r)})},sa=de({patchProp:Gf},Tf);let pi;function ul(){return pi||(pi=lf(sa))}const Ku=(...e)=>{ul().render(...e)},Gu=(...e)=>{const t=ul().createApp(...e),{mount:n}=t;return t.mount=s=>{const r=ia(s);if(!r)return;const i=t._component;!G(i)&&!i.render&&!i.template&&(i.template=r.innerHTML),r.nodeType===1&&(r.textContent="");const o=n(r,!1,ra(r));return r instanceof Element&&(r.removeAttribute("v-cloak"),r.setAttribute("data-v-app","")),o},t};function ra(e){if(e instanceof SVGElement)return"svg";if(typeof MathMLElement=="function"&&e instanceof MathMLElement)return"mathml"}function ia(e){return ae(e)?document.querySelector(e):e}/*!
18
+ * pinia v2.3.1
19
+ * (c) 2025 Eduardo San Martin Morote
20
+ * @license MIT
21
+ */let hl;const ps=e=>hl=e,dl=Symbol();function qs(e){return e&&typeof e=="object"&&Object.prototype.toString.call(e)==="[object Object]"&&typeof e.toJSON!="function"}var gn;(function(e){e.direct="direct",e.patchObject="patch object",e.patchFunction="patch function"})(gn||(gn={}));function Wu(){const e=Ui(!0),t=e.run(()=>ar({}));let n=[],s=[];const r=fr({install(i){ps(r),r._a=i,i.provide(dl,r),i.config.globalProperties.$pinia=r,s.forEach(o=>n.push(o)),s=[]},use(i){return this._a?n.push(i):s.push(i),this},_p:n,_a:null,_e:e,_s:new Map,state:t});return r}const pl=()=>{};function gi(e,t,n,s=pl){e.push(t);const r=()=>{const i=e.indexOf(t);i>-1&&(e.splice(i,1),s())};return!n&&Ki()&&kl(r),r}function Bt(e,...t){e.slice().forEach(n=>{n(...t)})}const oa=e=>e(),mi=Symbol(),ws=Symbol();function Js(e,t){e instanceof Map&&t instanceof Map?t.forEach((n,s)=>e.set(s,n)):e instanceof Set&&t instanceof Set&&t.forEach(e.add,e);for(const n in t){if(!t.hasOwnProperty(n))continue;const s=t[n],r=e[n];qs(r)&&qs(s)&&e.hasOwnProperty(n)&&!fe(s)&&!nt(s)?e[n]=Js(r,s):e[n]=s}return e}const la=Symbol();function ca(e){return!qs(e)||!e.hasOwnProperty(la)}const{assign:vt}=Object;function fa(e){return!!(fe(e)&&e.effect)}function aa(e,t,n,s){const{state:r,actions:i,getters:o}=t,l=n.state.value[e];let c;function a(){l||(n.state.value[e]=r?r():{});const f=ac(n.state.value[e]);return vt(f,i,Object.keys(o||{}).reduce((h,p)=>(h[p]=fr(Ne(()=>{ps(n);const m=n._s.get(e);return o[p].call(m,m)})),h),{}))}return c=gl(e,a,t,n,s,!0),c}function gl(e,t,n={},s,r,i){let o;const l=vt({actions:{}},n),c={deep:!0};let a,f,h=[],p=[],m;const S=s.state.value[e];!i&&!S&&(s.state.value[e]={});let C;function F(k){let x;a=f=!1,typeof k=="function"?(k(s.state.value[e]),x={type:gn.patchFunction,storeId:e,events:m}):(Js(s.state.value[e],k),x={type:gn.patchObject,payload:k,storeId:e,events:m});const U=C=Symbol();cs().then(()=>{C===U&&(a=!0)}),f=!0,Bt(h,x,s.state.value[e])}const M=i?function(){const{state:x}=n,U=x?x():{};this.$patch(z=>{vt(z,U)})}:pl;function A(){o.stop(),h=[],p=[],s._s.delete(e)}const L=(k,x="")=>{if(mi in k)return k[ws]=x,k;const U=function(){ps(s);const z=Array.from(arguments),P=[],Q=[];function he($){P.push($)}function Se($){Q.push($)}Bt(p,{args:z,name:U[ws],store:B,after:he,onError:Se});let ie;try{ie=k.apply(this&&this.$id===e?this:B,z)}catch($){throw Bt(Q,$),$}return ie instanceof Promise?ie.then($=>(Bt(P,$),$)).catch($=>(Bt(Q,$),Promise.reject($))):(Bt(P,ie),ie)};return U[mi]=!0,U[ws]=x,U},N={_p:s,$id:e,$onAction:gi.bind(null,p),$patch:F,$reset:M,$subscribe(k,x={}){const U=gi(h,k,x.detached,()=>z()),z=o.run(()=>an(()=>s.state.value[e],P=>{(x.flush==="sync"?f:a)&&k({storeId:e,type:gn.direct,events:m},P)},vt({},c,x)));return U},$dispose:A},B=Rn(N);s._s.set(e,B);const q=(s._a&&s._a.runWithContext||oa)(()=>s._e.run(()=>(o=Ui()).run(()=>t({action:L}))));for(const k in q){const x=q[k];if(fe(x)&&!fa(x)||nt(x))i||(S&&ca(x)&&(fe(x)?x.value=S[k]:Js(x,S[k])),s.state.value[e][k]=x);else if(typeof x=="function"){const U=L(x,k);q[k]=U,l.actions[k]=x}}return vt(B,q),vt(Y(B),q),Object.defineProperty(B,"$state",{get:()=>s.state.value[e],set:k=>{F(x=>{vt(x,k)})}}),s._p.forEach(k=>{vt(B,o.run(()=>k({store:B,app:s._a,pinia:s,options:l})))}),S&&i&&n.hydrate&&n.hydrate(B.$state,S),a=!0,f=!0,B}/*! #__NO_SIDE_EFFECTS__ */function $u(e,t,n){let s,r;const i=typeof t=="function";typeof e=="string"?(s=e,r=i?n:t):(r=e,s=e.id);function o(l,c){const a=Sc();return l=l||(a?Ve(dl,null):null),l&&ps(l),l=hl,l._s.has(s)||(i?gl(s,t,r,l):aa(s,r,l)),l._s.get(s)}return o.$id=s,o}function qu(e){{const t=Y(e),n={};for(const s in t){const r=t[s];r.effect?n[s]=Ne({get:()=>e[s],set(i){e[s]=i}}):(fe(r)||nt(r))&&(n[s]=dc(e,s))}return n}}/*!
22
+ * vue-router v4.6.4
23
+ * (c) 2025 Eduardo San Martin Morote
24
+ * @license MIT
25
+ */const Ut=typeof document<"u";function ml(e){return typeof e=="object"||"displayName"in e||"props"in e||"__vccOpts"in e}function ua(e){return e.__esModule||e[Symbol.toStringTag]==="Module"||e.default&&ml(e.default)}const ne=Object.assign;function Ts(e,t){const n={};for(const s in t){const r=t[s];n[s]=Ge(r)?r.map(e):e(r)}return n}const mn=()=>{},Ge=Array.isArray;function _i(e,t){const n={};for(const s in e)n[s]=s in t?t[s]:e[s];return n}const _l=/#/g,ha=/&/g,da=/\//g,pa=/=/g,ga=/\?/g,yl=/\+/g,ma=/%5B/g,_a=/%5D/g,vl=/%5E/g,ya=/%60/g,bl=/%7B/g,va=/%7C/g,El=/%7D/g,ba=/%20/g;function Er(e){return e==null?"":encodeURI(""+e).replace(va,"|").replace(ma,"[").replace(_a,"]")}function Ea(e){return Er(e).replace(bl,"{").replace(El,"}").replace(vl,"^")}function zs(e){return Er(e).replace(yl,"%2B").replace(ba,"+").replace(_l,"%23").replace(ha,"%26").replace(ya,"`").replace(bl,"{").replace(El,"}").replace(vl,"^")}function Sa(e){return zs(e).replace(pa,"%3D")}function Ca(e){return Er(e).replace(_l,"%23").replace(ga,"%3F")}function Aa(e){return Ca(e).replace(da,"%2F")}function An(e){if(e==null)return null;try{return decodeURIComponent(""+e)}catch{}return""+e}const xa=/\/$/,Ra=e=>e.replace(xa,"");function Os(e,t,n="/"){let s,r={},i="",o="";const l=t.indexOf("#");let c=t.indexOf("?");return c=l>=0&&c>l?-1:c,c>=0&&(s=t.slice(0,c),i=t.slice(c,l>0?l:t.length),r=e(i.slice(1))),l>=0&&(s=s||t.slice(0,l),o=t.slice(l,t.length)),s=Pa(s??t,n),{fullPath:s+i+o,path:s,query:r,hash:An(o)}}function wa(e,t){const n=t.query?e(t.query):"";return t.path+(n&&"?")+n+(t.hash||"")}function yi(e,t){return!t||!e.toLowerCase().startsWith(t.toLowerCase())?e:e.slice(t.length)||"/"}function Ta(e,t,n){const s=t.matched.length-1,r=n.matched.length-1;return s>-1&&s===r&&Yt(t.matched[s],n.matched[r])&&Sl(t.params,n.params)&&e(t.query)===e(n.query)&&t.hash===n.hash}function Yt(e,t){return(e.aliasOf||e)===(t.aliasOf||t)}function Sl(e,t){if(Object.keys(e).length!==Object.keys(t).length)return!1;for(var n in e)if(!Oa(e[n],t[n]))return!1;return!0}function Oa(e,t){return Ge(e)?vi(e,t):Ge(t)?vi(t,e):(e==null?void 0:e.valueOf())===(t==null?void 0:t.valueOf())}function vi(e,t){return Ge(t)?e.length===t.length&&e.every((n,s)=>n===t[s]):e.length===1&&e[0]===t}function Pa(e,t){if(e.startsWith("/"))return e;if(!e)return t;const n=t.split("/"),s=e.split("/"),r=s[s.length-1];(r===".."||r===".")&&s.push("");let i=n.length-1,o,l;for(o=0;o<s.length;o++)if(l=s[o],l!==".")if(l==="..")i>1&&i--;else break;return n.slice(0,i).join("/")+"/"+s.slice(o).join("/")}const _t={path:"/",name:void 0,params:{},query:{},hash:"",fullPath:"/",matched:[],meta:{},redirectedFrom:void 0};let Ys=function(e){return e.pop="pop",e.push="push",e}({}),Ps=function(e){return e.back="back",e.forward="forward",e.unknown="",e}({});function Ia(e){if(!e)if(Ut){const t=document.querySelector("base");e=t&&t.getAttribute("href")||"/",e=e.replace(/^\w+:\/\/[^\/]+/,"")}else e="/";return e[0]!=="/"&&e[0]!=="#"&&(e="/"+e),Ra(e)}const Na=/^[^#]+#/;function Ma(e,t){return e.replace(Na,"#")+t}function Da(e,t){const n=document.documentElement.getBoundingClientRect(),s=e.getBoundingClientRect();return{behavior:t.behavior,left:s.left-n.left-(t.left||0),top:s.top-n.top-(t.top||0)}}const gs=()=>({left:window.scrollX,top:window.scrollY});function La(e){let t;if("el"in e){const n=e.el,s=typeof n=="string"&&n.startsWith("#"),r=typeof n=="string"?s?document.getElementById(n.slice(1)):document.querySelector(n):n;if(!r)return;t=Da(r,e)}else t=e;"scrollBehavior"in document.documentElement.style?window.scrollTo(t):window.scrollTo(t.left!=null?t.left:window.scrollX,t.top!=null?t.top:window.scrollY)}function bi(e,t){return(history.state?history.state.position-t:-1)+e}const Qs=new Map;function Fa(e,t){Qs.set(e,t)}function Va(e){const t=Qs.get(e);return Qs.delete(e),t}function Ha(e){return typeof e=="string"||e&&typeof e=="object"}function Cl(e){return typeof e=="string"||typeof e=="symbol"}let ue=function(e){return e[e.MATCHER_NOT_FOUND=1]="MATCHER_NOT_FOUND",e[e.NAVIGATION_GUARD_REDIRECT=2]="NAVIGATION_GUARD_REDIRECT",e[e.NAVIGATION_ABORTED=4]="NAVIGATION_ABORTED",e[e.NAVIGATION_CANCELLED=8]="NAVIGATION_CANCELLED",e[e.NAVIGATION_DUPLICATED=16]="NAVIGATION_DUPLICATED",e}({});const Al=Symbol("");ue.MATCHER_NOT_FOUND+"",ue.NAVIGATION_GUARD_REDIRECT+"",ue.NAVIGATION_ABORTED+"",ue.NAVIGATION_CANCELLED+"",ue.NAVIGATION_DUPLICATED+"";function Qt(e,t){return ne(new Error,{type:e,[Al]:!0},t)}function it(e,t){return e instanceof Error&&Al in e&&(t==null||!!(e.type&t))}const ja=["params","query","hash"];function Ba(e){if(typeof e=="string")return e;if(e.path!=null)return e.path;const t={};for(const n of ja)n in e&&(t[n]=e[n]);return JSON.stringify(t,null,2)}function ka(e){const t={};if(e===""||e==="?")return t;const n=(e[0]==="?"?e.slice(1):e).split("&");for(let s=0;s<n.length;++s){const r=n[s].replace(yl," "),i=r.indexOf("="),o=An(i<0?r:r.slice(0,i)),l=i<0?null:An(r.slice(i+1));if(o in t){let c=t[o];Ge(c)||(c=t[o]=[c]),c.push(l)}else t[o]=l}return t}function Ei(e){let t="";for(let n in e){const s=e[n];if(n=Sa(n),s==null){s!==void 0&&(t+=(t.length?"&":"")+n);continue}(Ge(s)?s.map(r=>r&&zs(r)):[s&&zs(s)]).forEach(r=>{r!==void 0&&(t+=(t.length?"&":"")+n,r!=null&&(t+="="+r))})}return t}function Ua(e){const t={};for(const n in e){const s=e[n];s!==void 0&&(t[n]=Ge(s)?s.map(r=>r==null?null:""+r):s==null?s:""+s)}return t}const Ka=Symbol(""),Si=Symbol(""),ms=Symbol(""),Sr=Symbol(""),Xs=Symbol("");function rn(){let e=[];function t(s){return e.push(s),()=>{const r=e.indexOf(s);r>-1&&e.splice(r,1)}}function n(){e=[]}return{add:t,list:()=>e.slice(),reset:n}}function Et(e,t,n,s,r,i=o=>o()){const o=s&&(s.enterCallbacks[r]=s.enterCallbacks[r]||[]);return()=>new Promise((l,c)=>{const a=p=>{p===!1?c(Qt(ue.NAVIGATION_ABORTED,{from:n,to:t})):p instanceof Error?c(p):Ha(p)?c(Qt(ue.NAVIGATION_GUARD_REDIRECT,{from:t,to:p})):(o&&s.enterCallbacks[r]===o&&typeof p=="function"&&o.push(p),l())},f=i(()=>e.call(s&&s.instances[r],t,n,a));let h=Promise.resolve(f);e.length<3&&(h=h.then(a)),h.catch(p=>c(p))})}function Is(e,t,n,s,r=i=>i()){const i=[];for(const o of e)for(const l in o.components){let c=o.components[l];if(!(t!=="beforeRouteEnter"&&!o.instances[l]))if(ml(c)){const a=(c.__vccOpts||c)[t];a&&i.push(Et(a,n,s,o,l,r))}else{let a=c();i.push(()=>a.then(f=>{if(!f)throw new Error(`Couldn't resolve component "${l}" at "${o.path}"`);const h=ua(f)?f.default:f;o.mods[l]=f,o.components[l]=h;const p=(h.__vccOpts||h)[t];return p&&Et(p,n,s,o,l,r)()}))}}return i}function Ga(e,t){const n=[],s=[],r=[],i=Math.max(t.matched.length,e.matched.length);for(let o=0;o<i;o++){const l=t.matched[o];l&&(e.matched.find(a=>Yt(a,l))?s.push(l):n.push(l));const c=e.matched[o];c&&(t.matched.find(a=>Yt(a,c))||r.push(c))}return[n,s,r]}/*!
26
+ * vue-router v4.6.4
27
+ * (c) 2025 Eduardo San Martin Morote
28
+ * @license MIT
29
+ */let Wa=()=>location.protocol+"//"+location.host;function xl(e,t){const{pathname:n,search:s,hash:r}=t,i=e.indexOf("#");if(i>-1){let o=r.includes(e.slice(i))?e.slice(i).length:1,l=r.slice(o);return l[0]!=="/"&&(l="/"+l),yi(l,"")}return yi(n,e)+s+r}function $a(e,t,n,s){let r=[],i=[],o=null;const l=({state:p})=>{const m=xl(e,location),S=n.value,C=t.value;let F=0;if(p){if(n.value=m,t.value=p,o&&o===S){o=null;return}F=C?p.position-C.position:0}else s(m);r.forEach(M=>{M(n.value,S,{delta:F,type:Ys.pop,direction:F?F>0?Ps.forward:Ps.back:Ps.unknown})})};function c(){o=n.value}function a(p){r.push(p);const m=()=>{const S=r.indexOf(p);S>-1&&r.splice(S,1)};return i.push(m),m}function f(){if(document.visibilityState==="hidden"){const{history:p}=window;if(!p.state)return;p.replaceState(ne({},p.state,{scroll:gs()}),"")}}function h(){for(const p of i)p();i=[],window.removeEventListener("popstate",l),window.removeEventListener("pagehide",f),document.removeEventListener("visibilitychange",f)}return window.addEventListener("popstate",l),window.addEventListener("pagehide",f),document.addEventListener("visibilitychange",f),{pauseListeners:c,listen:a,destroy:h}}function Ci(e,t,n,s=!1,r=!1){return{back:e,current:t,forward:n,replaced:s,position:window.history.length,scroll:r?gs():null}}function qa(e){const{history:t,location:n}=window,s={value:xl(e,n)},r={value:t.state};r.value||i(s.value,{back:null,current:s.value,forward:null,position:t.length-1,replaced:!0,scroll:null},!0);function i(c,a,f){const h=e.indexOf("#"),p=h>-1?(n.host&&document.querySelector("base")?e:e.slice(h))+c:Wa()+e+c;try{t[f?"replaceState":"pushState"](a,"",p),r.value=a}catch(m){console.error(m),n[f?"replace":"assign"](p)}}function o(c,a){i(c,ne({},t.state,Ci(r.value.back,c,r.value.forward,!0),a,{position:r.value.position}),!0),s.value=c}function l(c,a){const f=ne({},r.value,t.state,{forward:c,scroll:gs()});i(f.current,f,!0),i(c,ne({},Ci(s.value,c,null),{position:f.position+1},a),!1),s.value=c}return{location:s,state:r,push:l,replace:o}}function Ju(e){e=Ia(e);const t=qa(e),n=$a(e,t.state,t.location,t.replace);function s(i,o=!0){o||n.pauseListeners(),history.go(i)}const r=ne({location:"",base:e,go:s,createHref:Ma.bind(null,e)},t,n);return Object.defineProperty(r,"location",{enumerable:!0,get:()=>t.location.value}),Object.defineProperty(r,"state",{enumerable:!0,get:()=>t.state.value}),r}let Mt=function(e){return e[e.Static=0]="Static",e[e.Param=1]="Param",e[e.Group=2]="Group",e}({});var pe=function(e){return e[e.Static=0]="Static",e[e.Param=1]="Param",e[e.ParamRegExp=2]="ParamRegExp",e[e.ParamRegExpEnd=3]="ParamRegExpEnd",e[e.EscapeNext=4]="EscapeNext",e}(pe||{});const Ja={type:Mt.Static,value:""},za=/[a-zA-Z0-9_]/;function Ya(e){if(!e)return[[]];if(e==="/")return[[Ja]];if(!e.startsWith("/"))throw new Error(`Invalid path "${e}"`);function t(m){throw new Error(`ERR (${n})/"${a}": ${m}`)}let n=pe.Static,s=n;const r=[];let i;function o(){i&&r.push(i),i=[]}let l=0,c,a="",f="";function h(){a&&(n===pe.Static?i.push({type:Mt.Static,value:a}):n===pe.Param||n===pe.ParamRegExp||n===pe.ParamRegExpEnd?(i.length>1&&(c==="*"||c==="+")&&t(`A repeatable param (${a}) must be alone in its segment. eg: '/:ids+.`),i.push({type:Mt.Param,value:a,regexp:f,repeatable:c==="*"||c==="+",optional:c==="*"||c==="?"})):t("Invalid state to consume buffer"),a="")}function p(){a+=c}for(;l<e.length;){if(c=e[l++],c==="\\"&&n!==pe.ParamRegExp){s=n,n=pe.EscapeNext;continue}switch(n){case pe.Static:c==="/"?(a&&h(),o()):c===":"?(h(),n=pe.Param):p();break;case pe.EscapeNext:p(),n=s;break;case pe.Param:c==="("?n=pe.ParamRegExp:za.test(c)?p():(h(),n=pe.Static,c!=="*"&&c!=="?"&&c!=="+"&&l--);break;case pe.ParamRegExp:c===")"?f[f.length-1]=="\\"?f=f.slice(0,-1)+c:n=pe.ParamRegExpEnd:f+=c;break;case pe.ParamRegExpEnd:h(),n=pe.Static,c!=="*"&&c!=="?"&&c!=="+"&&l--,f="";break;default:t("Unknown state");break}}return n===pe.ParamRegExp&&t(`Unfinished custom RegExp for param "${a}"`),h(),o(),r}const Ai="[^/]+?",Qa={sensitive:!1,strict:!1,start:!0,end:!0};var Ae=function(e){return e[e._multiplier=10]="_multiplier",e[e.Root=90]="Root",e[e.Segment=40]="Segment",e[e.SubSegment=30]="SubSegment",e[e.Static=40]="Static",e[e.Dynamic=20]="Dynamic",e[e.BonusCustomRegExp=10]="BonusCustomRegExp",e[e.BonusWildcard=-50]="BonusWildcard",e[e.BonusRepeatable=-20]="BonusRepeatable",e[e.BonusOptional=-8]="BonusOptional",e[e.BonusStrict=.7000000000000001]="BonusStrict",e[e.BonusCaseSensitive=.25]="BonusCaseSensitive",e}(Ae||{});const Xa=/[.+*?^${}()[\]/\\]/g;function Za(e,t){const n=ne({},Qa,t),s=[];let r=n.start?"^":"";const i=[];for(const a of e){const f=a.length?[]:[Ae.Root];n.strict&&!a.length&&(r+="/");for(let h=0;h<a.length;h++){const p=a[h];let m=Ae.Segment+(n.sensitive?Ae.BonusCaseSensitive:0);if(p.type===Mt.Static)h||(r+="/"),r+=p.value.replace(Xa,"\\$&"),m+=Ae.Static;else if(p.type===Mt.Param){const{value:S,repeatable:C,optional:F,regexp:M}=p;i.push({name:S,repeatable:C,optional:F});const A=M||Ai;if(A!==Ai){m+=Ae.BonusCustomRegExp;try{`${A}`}catch(N){throw new Error(`Invalid custom RegExp for param "${S}" (${A}): `+N.message)}}let L=C?`((?:${A})(?:/(?:${A}))*)`:`(${A})`;h||(L=F&&a.length<2?`(?:/${L})`:"/"+L),F&&(L+="?"),r+=L,m+=Ae.Dynamic,F&&(m+=Ae.BonusOptional),C&&(m+=Ae.BonusRepeatable),A===".*"&&(m+=Ae.BonusWildcard)}f.push(m)}s.push(f)}if(n.strict&&n.end){const a=s.length-1;s[a][s[a].length-1]+=Ae.BonusStrict}n.strict||(r+="/?"),n.end?r+="$":n.strict&&!r.endsWith("/")&&(r+="(?:/|$)");const o=new RegExp(r,n.sensitive?"":"i");function l(a){const f=a.match(o),h={};if(!f)return null;for(let p=1;p<f.length;p++){const m=f[p]||"",S=i[p-1];h[S.name]=m&&S.repeatable?m.split("/"):m}return h}function c(a){let f="",h=!1;for(const p of e){(!h||!f.endsWith("/"))&&(f+="/"),h=!1;for(const m of p)if(m.type===Mt.Static)f+=m.value;else if(m.type===Mt.Param){const{value:S,repeatable:C,optional:F}=m,M=S in a?a[S]:"";if(Ge(M)&&!C)throw new Error(`Provided param "${S}" is an array but it is not repeatable (* or + modifiers)`);const A=Ge(M)?M.join("/"):M;if(!A)if(F)p.length<2&&(f.endsWith("/")?f=f.slice(0,-1):h=!0);else throw new Error(`Missing required param "${S}"`);f+=A}}return f||"/"}return{re:o,score:s,keys:i,parse:l,stringify:c}}function eu(e,t){let n=0;for(;n<e.length&&n<t.length;){const s=t[n]-e[n];if(s)return s;n++}return e.length<t.length?e.length===1&&e[0]===Ae.Static+Ae.Segment?-1:1:e.length>t.length?t.length===1&&t[0]===Ae.Static+Ae.Segment?1:-1:0}function Rl(e,t){let n=0;const s=e.score,r=t.score;for(;n<s.length&&n<r.length;){const i=eu(s[n],r[n]);if(i)return i;n++}if(Math.abs(r.length-s.length)===1){if(xi(s))return 1;if(xi(r))return-1}return r.length-s.length}function xi(e){const t=e[e.length-1];return e.length>0&&t[t.length-1]<0}const tu={strict:!1,end:!0,sensitive:!1};function nu(e,t,n){const s=Za(Ya(e.path),n),r=ne(s,{record:e,parent:t,children:[],alias:[]});return t&&!r.record.aliasOf==!t.record.aliasOf&&t.children.push(r),r}function su(e,t){const n=[],s=new Map;t=_i(tu,t);function r(h){return s.get(h)}function i(h,p,m){const S=!m,C=wi(h);C.aliasOf=m&&m.record;const F=_i(t,h),M=[C];if("alias"in h){const N=typeof h.alias=="string"?[h.alias]:h.alias;for(const B of N)M.push(wi(ne({},C,{components:m?m.record.components:C.components,path:B,aliasOf:m?m.record:C})))}let A,L;for(const N of M){const{path:B}=N;if(p&&B[0]!=="/"){const J=p.record.path,q=J[J.length-1]==="/"?"":"/";N.path=p.record.path+(B&&q+B)}if(A=nu(N,p,F),m?m.alias.push(A):(L=L||A,L!==A&&L.alias.push(A),S&&h.name&&!Ti(A)&&o(h.name)),wl(A)&&c(A),C.children){const J=C.children;for(let q=0;q<J.length;q++)i(J[q],A,m&&m.children[q])}m=m||A}return L?()=>{o(L)}:mn}function o(h){if(Cl(h)){const p=s.get(h);p&&(s.delete(h),n.splice(n.indexOf(p),1),p.children.forEach(o),p.alias.forEach(o))}else{const p=n.indexOf(h);p>-1&&(n.splice(p,1),h.record.name&&s.delete(h.record.name),h.children.forEach(o),h.alias.forEach(o))}}function l(){return n}function c(h){const p=ou(h,n);n.splice(p,0,h),h.record.name&&!Ti(h)&&s.set(h.record.name,h)}function a(h,p){let m,S={},C,F;if("name"in h&&h.name){if(m=s.get(h.name),!m)throw Qt(ue.MATCHER_NOT_FOUND,{location:h});F=m.record.name,S=ne(Ri(p.params,m.keys.filter(L=>!L.optional).concat(m.parent?m.parent.keys.filter(L=>L.optional):[]).map(L=>L.name)),h.params&&Ri(h.params,m.keys.map(L=>L.name))),C=m.stringify(S)}else if(h.path!=null)C=h.path,m=n.find(L=>L.re.test(C)),m&&(S=m.parse(C),F=m.record.name);else{if(m=p.name?s.get(p.name):n.find(L=>L.re.test(p.path)),!m)throw Qt(ue.MATCHER_NOT_FOUND,{location:h,currentLocation:p});F=m.record.name,S=ne({},p.params,h.params),C=m.stringify(S)}const M=[];let A=m;for(;A;)M.unshift(A.record),A=A.parent;return{name:F,path:C,params:S,matched:M,meta:iu(M)}}e.forEach(h=>i(h));function f(){n.length=0,s.clear()}return{addRoute:i,resolve:a,removeRoute:o,clearRoutes:f,getRoutes:l,getRecordMatcher:r}}function Ri(e,t){const n={};for(const s of t)s in e&&(n[s]=e[s]);return n}function wi(e){const t={path:e.path,redirect:e.redirect,name:e.name,meta:e.meta||{},aliasOf:e.aliasOf,beforeEnter:e.beforeEnter,props:ru(e),children:e.children||[],instances:{},leaveGuards:new Set,updateGuards:new Set,enterCallbacks:{},components:"components"in e?e.components||null:e.component&&{default:e.component}};return Object.defineProperty(t,"mods",{value:{}}),t}function ru(e){const t={},n=e.props||!1;if("component"in e)t.default=n;else for(const s in e.components)t[s]=typeof n=="object"?n[s]:n;return t}function Ti(e){for(;e;){if(e.record.aliasOf)return!0;e=e.parent}return!1}function iu(e){return e.reduce((t,n)=>ne(t,n.meta),{})}function ou(e,t){let n=0,s=t.length;for(;n!==s;){const i=n+s>>1;Rl(e,t[i])<0?s=i:n=i+1}const r=lu(e);return r&&(s=t.lastIndexOf(r,s-1)),s}function lu(e){let t=e;for(;t=t.parent;)if(wl(t)&&Rl(e,t)===0)return t}function wl({record:e}){return!!(e.name||e.components&&Object.keys(e.components).length||e.redirect)}function Oi(e){const t=Ve(ms),n=Ve(Sr),s=Ne(()=>{const c=St(e.to);return t.resolve(c)}),r=Ne(()=>{const{matched:c}=s.value,{length:a}=c,f=c[a-1],h=n.matched;if(!f||!h.length)return-1;const p=h.findIndex(Yt.bind(null,f));if(p>-1)return p;const m=Pi(c[a-2]);return a>1&&Pi(f)===m&&h[h.length-1].path!==m?h.findIndex(Yt.bind(null,c[a-2])):p}),i=Ne(()=>r.value>-1&&hu(n.params,s.value.params)),o=Ne(()=>r.value>-1&&r.value===n.matched.length-1&&Sl(n.params,s.value.params));function l(c={}){if(uu(c)){const a=t[St(e.replace)?"replace":"push"](St(e.to)).catch(mn);return e.viewTransition&&typeof document<"u"&&"startViewTransition"in document&&document.startViewTransition(()=>a),a}return Promise.resolve()}return{route:s,href:Ne(()=>s.value.href),isActive:i,isExactActive:o,navigate:l}}function cu(e){return e.length===1?e[0]:e}const fu=Co({name:"RouterLink",compatConfig:{MODE:3},props:{to:{type:[String,Object],required:!0},replace:Boolean,activeClass:String,exactActiveClass:String,custom:Boolean,ariaCurrentValue:{type:String,default:"page"},viewTransition:Boolean},useLink:Oi,setup(e,{slots:t}){const n=Rn(Oi(e)),{options:s}=Ve(ms),r=Ne(()=>({[Ii(e.activeClass,s.linkActiveClass,"router-link-active")]:n.isActive,[Ii(e.exactActiveClass,s.linkExactActiveClass,"router-link-exact-active")]:n.isExactActive}));return()=>{const i=t.default&&cu(t.default(n));return e.custom?i:br("a",{"aria-current":n.isExactActive?e.ariaCurrentValue:null,href:n.href,onClick:n.navigate,class:r.value},i)}}}),au=fu;function uu(e){if(!(e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)&&!e.defaultPrevented&&!(e.button!==void 0&&e.button!==0)){if(e.currentTarget&&e.currentTarget.getAttribute){const t=e.currentTarget.getAttribute("target");if(/\b_blank\b/i.test(t))return}return e.preventDefault&&e.preventDefault(),!0}}function hu(e,t){for(const n in t){const s=t[n],r=e[n];if(typeof s=="string"){if(s!==r)return!1}else if(!Ge(r)||r.length!==s.length||s.some((i,o)=>i.valueOf()!==r[o].valueOf()))return!1}return!0}function Pi(e){return e?e.aliasOf?e.aliasOf.path:e.path:""}const Ii=(e,t,n)=>e??t??n,du=Co({name:"RouterView",inheritAttrs:!1,props:{name:{type:String,default:"default"},route:Object},compatConfig:{MODE:3},setup(e,{attrs:t,slots:n}){const s=Ve(Xs),r=Ne(()=>e.route||s.value),i=Ve(Si,0),o=Ne(()=>{let a=St(i);const{matched:f}=r.value;let h;for(;(h=f[a])&&!h.components;)a++;return a}),l=Ne(()=>r.value.matched[o.value]);Fn(Si,Ne(()=>o.value+1)),Fn(Ka,l),Fn(Xs,r);const c=ar();return an(()=>[c.value,l.value,e.name],([a,f,h],[p,m,S])=>{f&&(f.instances[h]=a,m&&m!==f&&a&&a===p&&(f.leaveGuards.size||(f.leaveGuards=m.leaveGuards),f.updateGuards.size||(f.updateGuards=m.updateGuards))),a&&f&&(!m||!Yt(f,m)||!p)&&(f.enterCallbacks[h]||[]).forEach(C=>C(a))},{flush:"post"}),()=>{const a=r.value,f=e.name,h=l.value,p=h&&h.components[f];if(!p)return Ni(n.default,{Component:p,route:a});const m=h.props[f],S=m?m===!0?a.params:typeof m=="function"?m(a):m:null,F=br(p,ne({},S,t,{onVnodeUnmounted:M=>{M.component.isUnmounted&&(h.instances[f]=null)},ref:c}));return Ni(n.default,{Component:F,route:a})||F}}});function Ni(e,t){if(!e)return null;const n=e(t);return n.length===1?n[0]:n}const pu=du;function zu(e){const t=su(e.routes,e),n=e.parseQuery||ka,s=e.stringifyQuery||Ei,r=e.history,i=rn(),o=rn(),l=rn(),c=lc(_t);let a=_t;Ut&&e.scrollBehavior&&"scrollRestoration"in history&&(history.scrollRestoration="manual");const f=Ts.bind(null,v=>""+v),h=Ts.bind(null,Aa),p=Ts.bind(null,An);function m(v,D){let O,H;return Cl(v)?(O=t.getRecordMatcher(v),H=D):H=v,t.addRoute(H,O)}function S(v){const D=t.getRecordMatcher(v);D&&t.removeRoute(D)}function C(){return t.getRoutes().map(v=>v.record)}function F(v){return!!t.getRecordMatcher(v)}function M(v,D){if(D=ne({},D||c.value),typeof v=="string"){const g=Os(n,v,D.path),_=t.resolve({path:g.path},D),b=r.createHref(g.fullPath);return ne(g,_,{params:p(_.params),hash:An(g.hash),redirectedFrom:void 0,href:b})}let O;if(v.path!=null)O=ne({},v,{path:Os(n,v.path,D.path).path});else{const g=ne({},v.params);for(const _ in g)g[_]==null&&delete g[_];O=ne({},v,{params:h(g)}),D.params=h(D.params)}const H=t.resolve(O,D),X=v.hash||"";H.params=f(p(H.params));const u=wa(s,ne({},v,{hash:Ea(X),path:H.path})),d=r.createHref(u);return ne({fullPath:u,hash:X,query:s===Ei?Ua(v.query):v.query||{}},H,{redirectedFrom:void 0,href:d})}function A(v){return typeof v=="string"?Os(n,v,c.value.path):ne({},v)}function L(v,D){if(a!==v)return Qt(ue.NAVIGATION_CANCELLED,{from:D,to:v})}function N(v){return q(v)}function B(v){return N(ne(A(v),{replace:!0}))}function J(v,D){const O=v.matched[v.matched.length-1];if(O&&O.redirect){const{redirect:H}=O;let X=typeof H=="function"?H(v,D):H;return typeof X=="string"&&(X=X.includes("?")||X.includes("#")?X=A(X):{path:X},X.params={}),ne({query:v.query,hash:v.hash,params:X.path!=null?{}:v.params},X)}}function q(v,D){const O=a=M(v),H=c.value,X=v.state,u=v.force,d=v.replace===!0,g=J(O,H);if(g)return q(ne(A(g),{state:typeof g=="object"?ne({},X,g.state):X,force:u,replace:d}),D||O);const _=O;_.redirectedFrom=D;let b;return!u&&Ta(s,H,O)&&(b=Qt(ue.NAVIGATION_DUPLICATED,{to:_,from:H}),We(H,H,!0,!1)),(b?Promise.resolve(b):U(_,H)).catch(y=>it(y)?it(y,ue.NAVIGATION_GUARD_REDIRECT)?y:gt(y):te(y,_,H)).then(y=>{if(y){if(it(y,ue.NAVIGATION_GUARD_REDIRECT))return q(ne({replace:d},A(y.to),{state:typeof y.to=="object"?ne({},X,y.to.state):X,force:u}),D||_)}else y=P(_,H,!0,d,X);return z(_,H,y),y})}function k(v,D){const O=L(v,D);return O?Promise.reject(O):Promise.resolve()}function x(v){const D=Ht.values().next().value;return D&&typeof D.runWithContext=="function"?D.runWithContext(v):v()}function U(v,D){let O;const[H,X,u]=Ga(v,D);O=Is(H.reverse(),"beforeRouteLeave",v,D);for(const g of H)g.leaveGuards.forEach(_=>{O.push(Et(_,v,D))});const d=k.bind(null,v,D);return O.push(d),Le(O).then(()=>{O=[];for(const g of i.list())O.push(Et(g,v,D));return O.push(d),Le(O)}).then(()=>{O=Is(X,"beforeRouteUpdate",v,D);for(const g of X)g.updateGuards.forEach(_=>{O.push(Et(_,v,D))});return O.push(d),Le(O)}).then(()=>{O=[];for(const g of u)if(g.beforeEnter)if(Ge(g.beforeEnter))for(const _ of g.beforeEnter)O.push(Et(_,v,D));else O.push(Et(g.beforeEnter,v,D));return O.push(d),Le(O)}).then(()=>(v.matched.forEach(g=>g.enterCallbacks={}),O=Is(u,"beforeRouteEnter",v,D,x),O.push(d),Le(O))).then(()=>{O=[];for(const g of o.list())O.push(Et(g,v,D));return O.push(d),Le(O)}).catch(g=>it(g,ue.NAVIGATION_CANCELLED)?g:Promise.reject(g))}function z(v,D,O){l.list().forEach(H=>x(()=>H(v,D,O)))}function P(v,D,O,H,X){const u=L(v,D);if(u)return u;const d=D===_t,g=Ut?history.state:{};O&&(H||d?r.replace(v.fullPath,ne({scroll:d&&g&&g.scroll},X)):r.push(v.fullPath,X)),c.value=v,We(v,D,O,d),gt()}let Q;function he(){Q||(Q=r.listen((v,D,O)=>{if(!wt.listening)return;const H=M(v),X=J(H,wt.currentRoute.value);if(X){q(ne(X,{replace:!0,force:!0}),H).catch(mn);return}a=H;const u=c.value;Ut&&Fa(bi(u.fullPath,O.delta),gs()),U(H,u).catch(d=>it(d,ue.NAVIGATION_ABORTED|ue.NAVIGATION_CANCELLED)?d:it(d,ue.NAVIGATION_GUARD_REDIRECT)?(q(ne(A(d.to),{force:!0}),H).then(g=>{it(g,ue.NAVIGATION_ABORTED|ue.NAVIGATION_DUPLICATED)&&!O.delta&&O.type===Ys.pop&&r.go(-1,!1)}).catch(mn),Promise.reject()):(O.delta&&r.go(-O.delta,!1),te(d,H,u))).then(d=>{d=d||P(H,u,!1),d&&(O.delta&&!it(d,ue.NAVIGATION_CANCELLED)?r.go(-O.delta,!1):O.type===Ys.pop&&it(d,ue.NAVIGATION_ABORTED|ue.NAVIGATION_DUPLICATED)&&r.go(-1,!1)),z(H,u,d)}).catch(mn)}))}let Se=rn(),ie=rn(),$;function te(v,D,O){gt(v);const H=ie.list();return H.length?H.forEach(X=>X(v,D,O)):console.error(v),Promise.reject(v)}function st(){return $&&c.value!==_t?Promise.resolve():new Promise((v,D)=>{Se.add([v,D])})}function gt(v){return $||($=!v,he(),Se.list().forEach(([D,O])=>v?O(v):D()),Se.reset()),v}function We(v,D,O,H){const{scrollBehavior:X}=e;if(!Ut||!X)return Promise.resolve();const u=!O&&Va(bi(v.fullPath,0))||(H||!O)&&history.state&&history.state.scroll||null;return cs().then(()=>X(v,D,u)).then(d=>d&&La(d)).catch(d=>te(d,v,D))}const we=v=>r.go(v);let Vt;const Ht=new Set,wt={currentRoute:c,listening:!0,addRoute:m,removeRoute:S,clearRoutes:t.clearRoutes,hasRoute:F,getRoutes:C,resolve:M,options:e,push:N,replace:B,go:we,back:()=>we(-1),forward:()=>we(1),beforeEach:i.add,beforeResolve:o.add,afterEach:l.add,onError:ie.add,isReady:st,install(v){v.component("RouterLink",au),v.component("RouterView",pu),v.config.globalProperties.$router=wt,Object.defineProperty(v.config.globalProperties,"$route",{enumerable:!0,get:()=>St(c)}),Ut&&!Vt&&c.value===_t&&(Vt=!0,N(r.location).catch(H=>{}));const D={};for(const H in _t)Object.defineProperty(D,H,{get:()=>c.value[H],enumerable:!0});v.provide(ms,wt),v.provide(Sr,ro(D)),v.provide(Xs,c);const O=v.unmount;Ht.add(v),v.unmount=function(){Ht.delete(v),Ht.size<1&&(a=_t,Q&&Q(),Q=null,c.value=_t,Vt=!1,$=!1),O()}}};function Le(v){return v.reduce((D,O)=>D.then(()=>x(O)),Promise.resolve())}return wt}function Yu(){return Ve(ms)}function Qu(e){return Ve(Sr)}export{Du as $,Sn as A,Co as B,ve as C,br as D,mu as E,Pe as F,Ru as G,Us as H,Ks as I,Oc as J,Pc as K,Pu as L,Ee as M,je as N,Ec as O,Qo as P,ss as Q,rs as R,mf as S,bu as T,Tu as U,yu as V,Su as W,Nu as X,gf as Y,Bl as Z,Lu as _,V as a,At as a0,hs as a1,dc as a2,Oo as a3,ac as a4,wo as a5,Fu as a6,fr as a7,Ou as a8,ku as a9,qu as aA,Iu as aB,zu as aC,Ju as aD,Wu as aE,Bu as aF,xu as aa,Au as ab,Rr as ac,_u as ad,Y as ae,Fi as af,Eu as ag,Cu as ah,Dn as ai,gu as aj,pf as ak,Hu as al,ju as am,Mc as an,Uu as ao,Vu as ap,Di as aq,wu as ar,Ui as as,Ku as at,Gu as au,Rt as av,ro as aw,$u as ax,Yu as ay,Qu as az,ee as b,Ne as c,Ki as d,ar as e,vu as f,Tn as g,se as h,ae as i,an as j,Ro as k,fe as l,Rn as m,cs as n,kl as o,es as p,Re as q,Ls as r,lc as s,To as t,St as u,Ve as v,Mu as w,G as x,Nc as y,Fn as z};
@@ -0,0 +1,16 @@
1
+ <!DOCTYPE html>
2
+ <html lang="zh-CN">
3
+ <head>
4
+ <meta charset="UTF-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>Evol 控制台</title>
7
+ <link rel="icon" href="data:,">
8
+ <script type="module" crossorigin src="/assets/index-D44bBe__.js"></script>
9
+ <link rel="modulepreload" crossorigin href="/assets/vue-vendor-DtF-__I4.js">
10
+ <link rel="modulepreload" crossorigin href="/assets/element-plus-Bd7pZkkM.js">
11
+ <link rel="stylesheet" crossorigin href="/assets/index-CmMONKzG.css">
12
+ </head>
13
+ <body>
14
+ <div id="app"></div>
15
+ </body>
16
+ </html>