sensorium-mcp 2.17.27 → 3.0.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 (224) hide show
  1. package/Install-Sensorium.ps1 +327 -0
  2. package/README.md +14 -0
  3. package/dist/config.d.ts +16 -1
  4. package/dist/config.d.ts.map +1 -1
  5. package/dist/config.js +39 -2
  6. package/dist/config.js.map +1 -1
  7. package/dist/daily-session.d.ts +2 -1
  8. package/dist/daily-session.d.ts.map +1 -1
  9. package/dist/daily-session.js +23 -26
  10. package/dist/daily-session.js.map +1 -1
  11. package/dist/dashboard/routes/settings.d.ts +4 -0
  12. package/dist/dashboard/routes/settings.d.ts.map +1 -1
  13. package/dist/dashboard/routes/settings.js +57 -1
  14. package/dist/dashboard/routes/settings.js.map +1 -1
  15. package/dist/dashboard/routes/threads.d.ts +1 -0
  16. package/dist/dashboard/routes/threads.d.ts.map +1 -1
  17. package/dist/dashboard/routes/threads.js +23 -27
  18. package/dist/dashboard/routes/threads.js.map +1 -1
  19. package/dist/dashboard/routes.d.ts.map +1 -1
  20. package/dist/dashboard/routes.js +7 -2
  21. package/dist/dashboard/routes.js.map +1 -1
  22. package/dist/dashboard/spa.html +11 -11
  23. package/dist/data/interfaces.d.ts +36 -0
  24. package/dist/data/interfaces.d.ts.map +1 -0
  25. package/dist/data/interfaces.js +2 -0
  26. package/dist/data/interfaces.js.map +1 -0
  27. package/dist/data/memory/bootstrap.d.ts +36 -16
  28. package/dist/data/memory/bootstrap.d.ts.map +1 -1
  29. package/dist/data/memory/bootstrap.js +71 -217
  30. package/dist/data/memory/bootstrap.js.map +1 -1
  31. package/dist/data/memory/consolidation.d.ts +35 -34
  32. package/dist/data/memory/consolidation.d.ts.map +1 -1
  33. package/dist/data/memory/consolidation.js +43 -555
  34. package/dist/data/memory/consolidation.js.map +1 -1
  35. package/dist/data/memory/index.d.ts +0 -1
  36. package/dist/data/memory/index.d.ts.map +1 -1
  37. package/dist/data/memory/index.js +0 -1
  38. package/dist/data/memory/index.js.map +1 -1
  39. package/dist/data/memory/migration-runner.d.ts +5 -0
  40. package/dist/data/memory/migration-runner.d.ts.map +1 -0
  41. package/dist/data/memory/migration-runner.js +403 -0
  42. package/dist/data/memory/migration-runner.js.map +1 -0
  43. package/dist/data/memory/reflection.js +1 -1
  44. package/dist/data/memory/schema-ddl.d.ts +4 -0
  45. package/dist/data/memory/schema-ddl.d.ts.map +1 -0
  46. package/dist/data/memory/schema-ddl.js +194 -0
  47. package/dist/data/memory/schema-ddl.js.map +1 -0
  48. package/dist/data/memory/schema-guard.d.ts +3 -0
  49. package/dist/data/memory/schema-guard.d.ts.map +1 -0
  50. package/dist/data/memory/schema-guard.js +184 -0
  51. package/dist/data/memory/schema-guard.js.map +1 -0
  52. package/dist/data/memory/schema.d.ts +2 -5
  53. package/dist/data/memory/schema.d.ts.map +1 -1
  54. package/dist/data/memory/schema.js +6 -834
  55. package/dist/data/memory/schema.js.map +1 -1
  56. package/dist/data/memory/semantic.d.ts +0 -1
  57. package/dist/data/memory/semantic.d.ts.map +1 -1
  58. package/dist/data/memory/semantic.js +2 -8
  59. package/dist/data/memory/semantic.js.map +1 -1
  60. package/dist/data/memory/synthesis.js +2 -2
  61. package/dist/data/memory/synthesis.js.map +1 -1
  62. package/dist/data/memory/thread-registry.d.ts +18 -4
  63. package/dist/data/memory/thread-registry.d.ts.map +1 -1
  64. package/dist/data/memory/thread-registry.js +25 -0
  65. package/dist/data/memory/thread-registry.js.map +1 -1
  66. package/dist/data/sent-message.repository.d.ts +12 -0
  67. package/dist/data/sent-message.repository.d.ts.map +1 -0
  68. package/dist/data/sent-message.repository.js +31 -0
  69. package/dist/data/sent-message.repository.js.map +1 -0
  70. package/dist/http-server.d.ts.map +1 -1
  71. package/dist/http-server.js +23 -2
  72. package/dist/http-server.js.map +1 -1
  73. package/dist/index.js +27 -48
  74. package/dist/index.js.map +1 -1
  75. package/dist/logger.d.ts +7 -2
  76. package/dist/logger.d.ts.map +1 -1
  77. package/dist/logger.js +89 -12
  78. package/dist/logger.js.map +1 -1
  79. package/dist/scheduler.d.ts +8 -0
  80. package/dist/scheduler.d.ts.map +1 -1
  81. package/dist/scheduler.js +15 -0
  82. package/dist/scheduler.js.map +1 -1
  83. package/dist/server/factory.d.ts +2 -1
  84. package/dist/server/factory.d.ts.map +1 -1
  85. package/dist/server/factory.js +11 -4
  86. package/dist/server/factory.js.map +1 -1
  87. package/dist/services/agent-spawn.service.d.ts +39 -0
  88. package/dist/services/agent-spawn.service.d.ts.map +1 -0
  89. package/dist/services/agent-spawn.service.js +348 -0
  90. package/dist/services/agent-spawn.service.js.map +1 -0
  91. package/dist/services/background-runner.d.ts +26 -0
  92. package/dist/services/background-runner.d.ts.map +1 -0
  93. package/dist/services/background-runner.js +71 -0
  94. package/dist/services/background-runner.js.map +1 -0
  95. package/dist/services/consolidation.service.d.ts +16 -0
  96. package/dist/services/consolidation.service.d.ts.map +1 -0
  97. package/dist/services/consolidation.service.js +508 -0
  98. package/dist/services/consolidation.service.js.map +1 -0
  99. package/dist/services/dispatcher/broker.d.ts +2 -0
  100. package/dist/services/dispatcher/broker.d.ts.map +1 -1
  101. package/dist/services/dispatcher/broker.js +5 -10
  102. package/dist/services/dispatcher/broker.js.map +1 -1
  103. package/dist/services/dispatcher/index.d.ts +1 -1
  104. package/dist/services/dispatcher/index.d.ts.map +1 -1
  105. package/dist/services/dispatcher/index.js +1 -1
  106. package/dist/services/dispatcher/index.js.map +1 -1
  107. package/dist/services/dispatcher/lock.d.ts.map +1 -1
  108. package/dist/services/dispatcher/lock.js +7 -11
  109. package/dist/services/dispatcher/lock.js.map +1 -1
  110. package/dist/services/maintenance-signal.d.ts +18 -0
  111. package/dist/services/maintenance-signal.d.ts.map +1 -0
  112. package/dist/services/maintenance-signal.js +48 -0
  113. package/dist/services/maintenance-signal.js.map +1 -0
  114. package/dist/services/memory-briefing.service.d.ts +4 -0
  115. package/dist/services/memory-briefing.service.d.ts.map +1 -0
  116. package/dist/services/memory-briefing.service.js +143 -0
  117. package/dist/services/memory-briefing.service.js.map +1 -0
  118. package/dist/services/process.service.d.ts +31 -0
  119. package/dist/services/process.service.d.ts.map +1 -0
  120. package/dist/services/process.service.js +100 -0
  121. package/dist/services/process.service.js.map +1 -0
  122. package/dist/services/thread-health.service.d.ts +18 -0
  123. package/dist/services/thread-health.service.d.ts.map +1 -0
  124. package/dist/services/thread-health.service.js +118 -0
  125. package/dist/services/thread-health.service.js.map +1 -0
  126. package/dist/services/thread-lifecycle.service.d.ts +52 -0
  127. package/dist/services/thread-lifecycle.service.d.ts.map +1 -0
  128. package/dist/services/thread-lifecycle.service.js +174 -0
  129. package/dist/services/thread-lifecycle.service.js.map +1 -0
  130. package/dist/services/topic.service.d.ts +25 -0
  131. package/dist/services/topic.service.d.ts.map +1 -0
  132. package/dist/services/topic.service.js +65 -0
  133. package/dist/services/topic.service.js.map +1 -0
  134. package/dist/services/worker-cleanup.service.d.ts +8 -0
  135. package/dist/services/worker-cleanup.service.d.ts.map +1 -0
  136. package/dist/services/worker-cleanup.service.js +82 -0
  137. package/dist/services/worker-cleanup.service.js.map +1 -0
  138. package/dist/sessions.d.ts +14 -0
  139. package/dist/sessions.d.ts.map +1 -1
  140. package/dist/sessions.js +55 -0
  141. package/dist/sessions.js.map +1 -1
  142. package/dist/telegram.d.ts +13 -6
  143. package/dist/telegram.d.ts.map +1 -1
  144. package/dist/telegram.js +43 -14
  145. package/dist/telegram.js.map +1 -1
  146. package/dist/tools/defs/memory-defs.d.ts.map +1 -1
  147. package/dist/tools/defs/memory-defs.js +0 -19
  148. package/dist/tools/defs/memory-defs.js.map +1 -1
  149. package/dist/tools/delegate-tool.d.ts +4 -0
  150. package/dist/tools/delegate-tool.d.ts.map +1 -1
  151. package/dist/tools/delegate-tool.js +48 -109
  152. package/dist/tools/delegate-tool.js.map +1 -1
  153. package/dist/tools/memory-tools.d.ts.map +1 -1
  154. package/dist/tools/memory-tools.js +1 -16
  155. package/dist/tools/memory-tools.js.map +1 -1
  156. package/dist/tools/shared-agent-utils.d.ts +9 -1
  157. package/dist/tools/shared-agent-utils.d.ts.map +1 -1
  158. package/dist/tools/shared-agent-utils.js +24 -42
  159. package/dist/tools/shared-agent-utils.js.map +1 -1
  160. package/dist/tools/start-session-tool.d.ts +2 -0
  161. package/dist/tools/start-session-tool.d.ts.map +1 -1
  162. package/dist/tools/start-session-tool.js +66 -106
  163. package/dist/tools/start-session-tool.js.map +1 -1
  164. package/dist/tools/thread-lifecycle.d.ts +5 -127
  165. package/dist/tools/thread-lifecycle.d.ts.map +1 -1
  166. package/dist/tools/thread-lifecycle.js +5 -1163
  167. package/dist/tools/thread-lifecycle.js.map +1 -1
  168. package/dist/tools/utility-tools.js +5 -2
  169. package/dist/tools/utility-tools.js.map +1 -1
  170. package/dist/tools/wait/drive-handler.d.ts +0 -1
  171. package/dist/tools/wait/drive-handler.d.ts.map +1 -1
  172. package/dist/tools/wait/drive-handler.js +5 -22
  173. package/dist/tools/wait/drive-handler.js.map +1 -1
  174. package/dist/tools/wait/message-delivery.js +1 -1
  175. package/dist/tools/wait/message-delivery.js.map +1 -1
  176. package/dist/tools/wait/message-processing.d.ts.map +1 -1
  177. package/dist/tools/wait/message-processing.js +9 -8
  178. package/dist/tools/wait/message-processing.js.map +1 -1
  179. package/dist/tools/wait/poll-loop.d.ts +2 -0
  180. package/dist/tools/wait/poll-loop.d.ts.map +1 -1
  181. package/dist/tools/wait/poll-loop.js +27 -29
  182. package/dist/tools/wait/poll-loop.js.map +1 -1
  183. package/dist/tools/wait/task-handler.d.ts +0 -3
  184. package/dist/tools/wait/task-handler.d.ts.map +1 -1
  185. package/dist/tools/wait/task-handler.js +3 -2
  186. package/dist/tools/wait/task-handler.js.map +1 -1
  187. package/dist/types.d.ts +0 -1
  188. package/dist/types.d.ts.map +1 -1
  189. package/package.json +4 -8
  190. package/supervisor/config.go +182 -69
  191. package/supervisor/config_test.go +78 -0
  192. package/supervisor/go.mod +12 -0
  193. package/supervisor/go.sum +20 -0
  194. package/supervisor/health.go +60 -11
  195. package/supervisor/health_test.go +29 -0
  196. package/supervisor/keeper.go +15 -10
  197. package/supervisor/log.go +109 -28
  198. package/supervisor/log_test.go +86 -6
  199. package/supervisor/main.go +150 -19
  200. package/supervisor/main_test.go +130 -0
  201. package/supervisor/process.go +47 -4
  202. package/supervisor/process_test.go +14 -0
  203. package/supervisor/secrets.go +95 -0
  204. package/supervisor/secrets_securevault_test.go +98 -0
  205. package/supervisor/secrets_test.go +119 -0
  206. package/supervisor/self_update.go +282 -0
  207. package/supervisor/self_update_test.go +177 -0
  208. package/supervisor/service_restart_stub.go +9 -0
  209. package/supervisor/service_restart_windows.go +63 -0
  210. package/supervisor/service_stub.go +15 -0
  211. package/supervisor/service_windows.go +216 -0
  212. package/supervisor/update_state.go +264 -0
  213. package/supervisor/update_state_test.go +306 -0
  214. package/supervisor/updater.go +311 -10
  215. package/supervisor/updater_test.go +64 -0
  216. package/dist/data/memory/quality-scoring.d.ts +0 -32
  217. package/dist/data/memory/quality-scoring.d.ts.map +0 -1
  218. package/dist/data/memory/quality-scoring.js +0 -182
  219. package/dist/data/memory/quality-scoring.js.map +0 -1
  220. package/scripts/install-supervisor.ps1 +0 -67
  221. package/scripts/install-supervisor.sh +0 -43
  222. package/scripts/start-supervisor.ps1 +0 -46
  223. package/scripts/start-supervisor.sh +0 -20
  224. package/templates/coding-task.default.md +0 -12
@@ -45,31 +45,31 @@
45
45
  <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
46
46
  <link href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=JetBrains+Mono:wght@400;500&display=swap" rel="stylesheet">
47
47
 
48
- <script type="module" crossorigin>(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const o of document.querySelectorAll('link[rel="modulepreload"]'))n(o);new MutationObserver(o=>{for(const r of o)if(r.type==="childList")for(const i of r.addedNodes)i.tagName==="LINK"&&i.rel==="modulepreload"&&n(i)}).observe(document,{childList:!0,subtree:!0});function s(o){const r={};return o.integrity&&(r.integrity=o.integrity),o.referrerPolicy&&(r.referrerPolicy=o.referrerPolicy),o.crossOrigin==="use-credentials"?r.credentials="include":o.crossOrigin==="anonymous"?r.credentials="omit":r.credentials="same-origin",r}function n(o){if(o.ep)return;o.ep=!0;const r=s(o);fetch(o.href,r)}})();/**
48
+ <script type="module" crossorigin>(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const o of document.querySelectorAll('link[rel="modulepreload"]'))n(o);new MutationObserver(o=>{for(const r of o)if(r.type==="childList")for(const l of r.addedNodes)l.tagName==="LINK"&&l.rel==="modulepreload"&&n(l)}).observe(document,{childList:!0,subtree:!0});function s(o){const r={};return o.integrity&&(r.integrity=o.integrity),o.referrerPolicy&&(r.referrerPolicy=o.referrerPolicy),o.crossOrigin==="use-credentials"?r.credentials="include":o.crossOrigin==="anonymous"?r.credentials="omit":r.credentials="same-origin",r}function n(o){if(o.ep)return;o.ep=!0;const r=s(o);fetch(o.href,r)}})();/**
49
49
  * @vue/shared v3.5.31
50
50
  * (c) 2018-present Yuxi (Evan) You and Vue contributors
51
51
  * @license MIT
52
- **/function ln(e){const t=Object.create(null);for(const s of e.split(","))t[s]=1;return s=>s in t}const ue={},Mt=[],tt=()=>{},fo=()=>!1,ks=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&(e.charCodeAt(2)>122||e.charCodeAt(2)<97),Ts=e=>e.startsWith("onUpdate:"),$e=Object.assign,an=(e,t)=>{const s=e.indexOf(t);s>-1&&e.splice(s,1)},vr=Object.prototype.hasOwnProperty,ne=(e,t)=>vr.call(e,t),z=Array.isArray,Ot=e=>ls(e)==="[object Map]",Ft=e=>ls(e)==="[object Set]",En=e=>ls(e)==="[object Date]",Z=e=>typeof e=="function",me=e=>typeof e=="string",nt=e=>typeof e=="symbol",ae=e=>e!==null&&typeof e=="object",po=e=>(ae(e)||Z(e))&&Z(e.then)&&Z(e.catch),ho=Object.prototype.toString,ls=e=>ho.call(e),yr=e=>ls(e).slice(8,-1),mo=e=>ls(e)==="[object Object]",cn=e=>me(e)&&e!=="NaN"&&e[0]!=="-"&&""+parseInt(e,10)===e,Jt=ln(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),$s=e=>{const t=Object.create(null);return(s=>t[s]||(t[s]=e(s)))},br=/-\w/g,De=$s(e=>e.replace(br,t=>t.slice(1).toUpperCase())),_r=/\B([A-Z])/g,_t=$s(e=>e.replace(_r,"-$1").toLowerCase()),As=$s(e=>e.charAt(0).toUpperCase()+e.slice(1)),Fs=$s(e=>e?`on${As(e)}`:""),et=(e,t)=>!Object.is(e,t),hs=(e,...t)=>{for(let s=0;s<e.length;s++)e[s](...t)},go=(e,t,s,n=!1)=>{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,writable:n,value:s})},Es=e=>{const t=parseFloat(e);return isNaN(t)?e:t};let Pn;const Ps=()=>Pn||(Pn=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{});function Is(e){if(z(e)){const t={};for(let s=0;s<e.length;s++){const n=e[s],o=me(n)?kr(n):Is(n);if(o)for(const r in o)t[r]=o[r]}return t}else if(me(e)||ae(e))return e}const wr=/;(?![^(]*\))/g,Sr=/:([^]+)/,Cr=/\/\*[^]*?\*\//g;function kr(e){const t={};return e.replace(Cr,"").split(wr).forEach(s=>{if(s){const n=s.split(Sr);n.length>1&&(t[n[0].trim()]=n[1].trim())}}),t}function Y(e){let t="";if(me(e))t=e;else if(z(e))for(let s=0;s<e.length;s++){const n=Y(e[s]);n&&(t+=n+" ")}else if(ae(e))for(const s in e)e[s]&&(t+=s+" ");return t.trim()}const Tr="itemscope,allowfullscreen,formnovalidate,ismap,nomodule,novalidate,readonly",$r=ln(Tr);function xo(e){return!!e||e===""}function Ar(e,t){if(e.length!==t.length)return!1;let s=!0;for(let n=0;s&&n<e.length;n++)s=Vt(e[n],t[n]);return s}function Vt(e,t){if(e===t)return!0;let s=En(e),n=En(t);if(s||n)return s&&n?e.getTime()===t.getTime():!1;if(s=nt(e),n=nt(t),s||n)return e===t;if(s=z(e),n=z(t),s||n)return s&&n?Ar(e,t):!1;if(s=ae(e),n=ae(t),s||n){if(!s||!n)return!1;const o=Object.keys(e).length,r=Object.keys(t).length;if(o!==r)return!1;for(const i in e){const a=e.hasOwnProperty(i),c=t.hasOwnProperty(i);if(a&&!c||!a&&c||!Vt(e[i],t[i]))return!1}}return String(e)===String(t)}function un(e,t){return e.findIndex(s=>Vt(s,t))}const vo=e=>!!(e&&e.__v_isRef===!0),$=e=>me(e)?e:e==null?"":z(e)||ae(e)&&(e.toString===ho||!Z(e.toString))?vo(e)?$(e.value):JSON.stringify(e,yo,2):String(e),yo=(e,t)=>vo(t)?yo(e,t.value):Ot(t)?{[`Map(${t.size})`]:[...t.entries()].reduce((s,[n,o],r)=>(s[Vs(n,r)+" =>"]=o,s),{})}:Ft(t)?{[`Set(${t.size})`]:[...t.values()].map(s=>Vs(s))}:nt(t)?Vs(t):ae(t)&&!z(t)&&!mo(t)?String(t):t,Vs=(e,t="")=>{var s;return nt(e)?`Symbol(${(s=e.description)!=null?s:t})`:e};/**
52
+ **/function ln(e){const t=Object.create(null);for(const s of e.split(","))t[s]=1;return s=>s in t}const ue={},It=[],st=()=>{},fo=()=>!1,ks=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&(e.charCodeAt(2)>122||e.charCodeAt(2)<97),Ts=e=>e.startsWith("onUpdate:"),$e=Object.assign,an=(e,t)=>{const s=e.indexOf(t);s>-1&&e.splice(s,1)},vr=Object.prototype.hasOwnProperty,re=(e,t)=>vr.call(e,t),J=Array.isArray,Ot=e=>ls(e)==="[object Map]",Ft=e=>ls(e)==="[object Set]",En=e=>ls(e)==="[object Date]",Z=e=>typeof e=="function",xe=e=>typeof e=="string",ot=e=>typeof e=="symbol",ae=e=>e!==null&&typeof e=="object",po=e=>(ae(e)||Z(e))&&Z(e.then)&&Z(e.catch),mo=Object.prototype.toString,ls=e=>mo.call(e),yr=e=>ls(e).slice(8,-1),ho=e=>ls(e)==="[object Object]",cn=e=>xe(e)&&e!=="NaN"&&e[0]!=="-"&&""+parseInt(e,10)===e,Jt=ln(",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"),$s=e=>{const t=Object.create(null);return(s=>t[s]||(t[s]=e(s)))},br=/-\w/g,De=$s(e=>e.replace(br,t=>t.slice(1).toUpperCase())),_r=/\B([A-Z])/g,_t=$s(e=>e.replace(_r,"-$1").toLowerCase()),As=$s(e=>e.charAt(0).toUpperCase()+e.slice(1)),Fs=$s(e=>e?`on${As(e)}`:""),tt=(e,t)=>!Object.is(e,t),ms=(e,...t)=>{for(let s=0;s<e.length;s++)e[s](...t)},go=(e,t,s,n=!1)=>{Object.defineProperty(e,t,{configurable:!0,enumerable:!1,writable:n,value:s})},Es=e=>{const t=parseFloat(e);return isNaN(t)?e:t};let Pn;const Ps=()=>Pn||(Pn=typeof globalThis<"u"?globalThis:typeof self<"u"?self:typeof window<"u"?window:typeof global<"u"?global:{});function Ms(e){if(J(e)){const t={};for(let s=0;s<e.length;s++){const n=e[s],o=xe(n)?kr(n):Ms(n);if(o)for(const r in o)t[r]=o[r]}return t}else if(xe(e)||ae(e))return e}const wr=/;(?![^(]*\))/g,Sr=/:([^]+)/,Cr=/\/\*[^]*?\*\//g;function kr(e){const t={};return e.replace(Cr,"").split(wr).forEach(s=>{if(s){const n=s.split(Sr);n.length>1&&(t[n[0].trim()]=n[1].trim())}}),t}function Y(e){let t="";if(xe(e))t=e;else if(J(e))for(let s=0;s<e.length;s++){const n=Y(e[s]);n&&(t+=n+" ")}else if(ae(e))for(const s in e)e[s]&&(t+=s+" ");return t.trim()}const Tr="itemscope,allowfullscreen,formnovalidate,ismap,nomodule,novalidate,readonly",$r=ln(Tr);function xo(e){return!!e||e===""}function Ar(e,t){if(e.length!==t.length)return!1;let s=!0;for(let n=0;s&&n<e.length;n++)s=Vt(e[n],t[n]);return s}function Vt(e,t){if(e===t)return!0;let s=En(e),n=En(t);if(s||n)return s&&n?e.getTime()===t.getTime():!1;if(s=ot(e),n=ot(t),s||n)return e===t;if(s=J(e),n=J(t),s||n)return s&&n?Ar(e,t):!1;if(s=ae(e),n=ae(t),s||n){if(!s||!n)return!1;const o=Object.keys(e).length,r=Object.keys(t).length;if(o!==r)return!1;for(const l in e){const a=e.hasOwnProperty(l),c=t.hasOwnProperty(l);if(a&&!c||!a&&c||!Vt(e[l],t[l]))return!1}}return String(e)===String(t)}function un(e,t){return e.findIndex(s=>Vt(s,t))}const vo=e=>!!(e&&e.__v_isRef===!0),T=e=>xe(e)?e:e==null?"":J(e)||ae(e)&&(e.toString===mo||!Z(e.toString))?vo(e)?T(e.value):JSON.stringify(e,yo,2):String(e),yo=(e,t)=>vo(t)?yo(e,t.value):Ot(t)?{[`Map(${t.size})`]:[...t.entries()].reduce((s,[n,o],r)=>(s[Vs(n,r)+" =>"]=o,s),{})}:Ft(t)?{[`Set(${t.size})`]:[...t.values()].map(s=>Vs(s))}:ot(t)?Vs(t):ae(t)&&!J(t)&&!ho(t)?String(t):t,Vs=(e,t="")=>{var s;return ot(e)?`Symbol(${(s=e.description)!=null?s:t})`:e};/**
53
53
  * @vue/reactivity v3.5.31
54
54
  * (c) 2018-present Yuxi (Evan) You and Vue contributors
55
55
  * @license MIT
56
- **/let je;class Er{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=je,!t&&je&&(this.index=(je.scopes||(je.scopes=[])).push(this)-1)}get active(){return this._active}pause(){if(this._active){this._isPaused=!0;let t,s;if(this.scopes)for(t=0,s=this.scopes.length;t<s;t++)this.scopes[t].pause();for(t=0,s=this.effects.length;t<s;t++)this.effects[t].pause()}}resume(){if(this._active&&this._isPaused){this._isPaused=!1;let t,s;if(this.scopes)for(t=0,s=this.scopes.length;t<s;t++)this.scopes[t].resume();for(t=0,s=this.effects.length;t<s;t++)this.effects[t].resume()}}run(t){if(this._active){const s=je;try{return je=this,t()}finally{je=s}}}on(){++this._on===1&&(this.prevScope=je,je=this)}off(){this._on>0&&--this._on===0&&(je=this.prevScope,this.prevScope=void 0)}stop(t){if(this._active){this._active=!1;let s,n;for(s=0,n=this.effects.length;s<n;s++)this.effects[s].stop();for(this.effects.length=0,s=0,n=this.cleanups.length;s<n;s++)this.cleanups[s]();if(this.cleanups.length=0,this.scopes){for(s=0,n=this.scopes.length;s<n;s++)this.scopes[s].stop(!0);this.scopes.length=0}if(!this.detached&&this.parent&&!t){const o=this.parent.scopes.pop();o&&o!==this&&(this.parent.scopes[this.index]=o,o.index=this.index)}this.parent=void 0}}}function Pr(){return je}let pe;const Hs=new WeakSet;class bo{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,je&&je.active&&je.effects.push(this)}pause(){this.flags|=64}resume(){this.flags&64&&(this.flags&=-65,Hs.has(this)&&(Hs.delete(this),this.trigger()))}notify(){this.flags&2&&!(this.flags&32)||this.flags&8||wo(this)}run(){if(!(this.flags&1))return this.fn();this.flags|=2,In(this),So(this);const t=pe,s=Ke;pe=this,Ke=!0;try{return this.fn()}finally{Co(this),pe=t,Ke=s,this.flags&=-3}}stop(){if(this.flags&1){for(let t=this.deps;t;t=t.nextDep)pn(t);this.deps=this.depsTail=void 0,In(this),this.onStop&&this.onStop(),this.flags&=-2}}trigger(){this.flags&64?Hs.add(this):this.scheduler?this.scheduler():this.runIfDirty()}runIfDirty(){Gs(this)&&this.run()}get dirty(){return Gs(this)}}let _o=0,qt,Gt;function wo(e,t=!1){if(e.flags|=8,t){e.next=Gt,Gt=e;return}e.next=qt,qt=e}function dn(){_o++}function fn(){if(--_o>0)return;if(Gt){let t=Gt;for(Gt=void 0;t;){const s=t.next;t.next=void 0,t.flags&=-9,t=s}}let e;for(;qt;){let t=qt;for(qt=void 0;t;){const s=t.next;if(t.next=void 0,t.flags&=-9,t.flags&1)try{t.trigger()}catch(n){e||(e=n)}t=s}}if(e)throw e}function So(e){for(let t=e.deps;t;t=t.nextDep)t.version=-1,t.prevActiveLink=t.dep.activeLink,t.dep.activeLink=t}function Co(e){let t,s=e.depsTail,n=s;for(;n;){const o=n.prevDep;n.version===-1?(n===s&&(s=o),pn(n),Ir(n)):t=n,n.dep.activeLink=n.prevActiveLink,n.prevActiveLink=void 0,n=o}e.deps=t,e.depsTail=s}function Gs(e){for(let t=e.deps;t;t=t.nextDep)if(t.dep.version!==t.version||t.dep.computed&&(ko(t.dep.computed)||t.dep.version!==t.version))return!0;return!!e._dirty}function ko(e){if(e.flags&4&&!(e.flags&16)||(e.flags&=-17,e.globalVersion===es)||(e.globalVersion=es,!e.isSSR&&e.flags&128&&(!e.deps&&!e._dirty||!Gs(e))))return;e.flags|=2;const t=e.dep,s=pe,n=Ke;pe=e,Ke=!0;try{So(e);const o=e.fn(e._value);(t.version===0||et(o,e._value))&&(e.flags|=128,e._value=o,t.version++)}catch(o){throw t.version++,o}finally{pe=s,Ke=n,Co(e),e.flags&=-3}}function pn(e,t=!1){const{dep:s,prevSub:n,nextSub:o}=e;if(n&&(n.nextSub=o,e.prevSub=void 0),o&&(o.prevSub=n,e.nextSub=void 0),s.subs===e&&(s.subs=n,!n&&s.computed)){s.computed.flags&=-5;for(let r=s.computed.deps;r;r=r.nextDep)pn(r,!0)}!t&&!--s.sc&&s.map&&s.map.delete(s.key)}function Ir(e){const{prevDep:t,nextDep:s}=e;t&&(t.nextDep=s,e.prevDep=void 0),s&&(s.prevDep=t,e.nextDep=void 0)}let Ke=!0;const To=[];function dt(){To.push(Ke),Ke=!1}function ft(){const e=To.pop();Ke=e===void 0?!0:e}function In(e){const{cleanup:t}=e;if(e.cleanup=void 0,t){const s=pe;pe=void 0;try{t()}finally{pe=s}}}let es=0;class Mr{constructor(t,s){this.sub=t,this.dep=s,this.version=s.version,this.nextDep=this.prevDep=this.nextSub=this.prevSub=this.prevActiveLink=void 0}}class hn{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(!pe||!Ke||pe===this.computed)return;let s=this.activeLink;if(s===void 0||s.sub!==pe)s=this.activeLink=new Mr(pe,this),pe.deps?(s.prevDep=pe.depsTail,pe.depsTail.nextDep=s,pe.depsTail=s):pe.deps=pe.depsTail=s,$o(s);else if(s.version===-1&&(s.version=this.version,s.nextDep)){const n=s.nextDep;n.prevDep=s.prevDep,s.prevDep&&(s.prevDep.nextDep=n),s.prevDep=pe.depsTail,s.nextDep=void 0,pe.depsTail.nextDep=s,pe.depsTail=s,pe.deps===s&&(pe.deps=n)}return s}trigger(t){this.version++,es++,this.notify(t)}notify(t){dn();try{for(let s=this.subs;s;s=s.prevSub)s.sub.notify()&&s.sub.dep.notify()}finally{fn()}}}function $o(e){if(e.dep.sc++,e.sub.flags&4){const t=e.dep.computed;if(t&&!e.dep.subs){t.flags|=20;for(let n=t.deps;n;n=n.nextDep)$o(n)}const s=e.dep.subs;s!==e&&(e.prevSub=s,s&&(s.nextSub=e)),e.dep.subs=e}}const Ys=new WeakMap,Tt=Symbol(""),Zs=Symbol(""),ts=Symbol("");function Ae(e,t,s){if(Ke&&pe){let n=Ys.get(e);n||Ys.set(e,n=new Map);let o=n.get(s);o||(n.set(s,o=new hn),o.map=n,o.key=s),o.track()}}function at(e,t,s,n,o,r){const i=Ys.get(e);if(!i){es++;return}const a=c=>{c&&c.trigger()};if(dn(),t==="clear")i.forEach(a);else{const c=z(e),h=c&&cn(s);if(c&&s==="length"){const d=Number(n);i.forEach((p,m)=>{(m==="length"||m===ts||!nt(m)&&m>=d)&&a(p)})}else switch((s!==void 0||i.has(void 0))&&a(i.get(s)),h&&a(i.get(ts)),t){case"add":c?h&&a(i.get("length")):(a(i.get(Tt)),Ot(e)&&a(i.get(Zs)));break;case"delete":c||(a(i.get(Tt)),Ot(e)&&a(i.get(Zs)));break;case"set":Ot(e)&&a(i.get(Tt));break}}fn()}function Pt(e){const t=se(e);return t===e?t:(Ae(t,"iterate",ts),Ve(e)?t:t.map(We))}function Ms(e){return Ae(e=se(e),"iterate",ts),e}function Qe(e,t){return pt(e)?jt($t(e)?We(t):t):We(t)}const Or={__proto__:null,[Symbol.iterator](){return Us(this,Symbol.iterator,e=>Qe(this,e))},concat(...e){return Pt(this).concat(...e.map(t=>z(t)?Pt(t):t))},entries(){return Us(this,"entries",e=>(e[1]=Qe(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,s=>s.map(n=>Qe(this,n)),arguments)},find(e,t){return rt(this,"find",e,t,s=>Qe(this,s),arguments)},findIndex(e,t){return rt(this,"findIndex",e,t,void 0,arguments)},findLast(e,t){return rt(this,"findLast",e,t,s=>Qe(this,s),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 Pt(this).join(e)},lastIndexOf(...e){return Bs(this,"lastIndexOf",e)},map(e,t){return rt(this,"map",e,t,void 0,arguments)},pop(){return Ut(this,"pop")},push(...e){return Ut(this,"push",e)},reduce(e,...t){return Mn(this,"reduce",e,t)},reduceRight(e,...t){return Mn(this,"reduceRight",e,t)},shift(){return Ut(this,"shift")},some(e,t){return rt(this,"some",e,t,void 0,arguments)},splice(...e){return Ut(this,"splice",e)},toReversed(){return Pt(this).toReversed()},toSorted(e){return Pt(this).toSorted(e)},toSpliced(...e){return Pt(this).toSpliced(...e)},unshift(...e){return Ut(this,"unshift",e)},values(){return Us(this,"values",e=>Qe(this,e))}};function Us(e,t,s){const n=Ms(e),o=n[t]();return n!==e&&!Ve(e)&&(o._next=o.next,o.next=()=>{const r=o._next();return r.done||(r.value=s(r.value)),r}),o}const Dr=Array.prototype;function rt(e,t,s,n,o,r){const i=Ms(e),a=i!==e&&!Ve(e),c=i[t];if(c!==Dr[t]){const p=c.apply(e,r);return a?We(p):p}let h=s;i!==e&&(a?h=function(p,m){return s.call(this,Qe(e,p),m,e)}:s.length>2&&(h=function(p,m){return s.call(this,p,m,e)}));const d=c.call(i,h,n);return a&&o?o(d):d}function Mn(e,t,s,n){const o=Ms(e),r=o!==e&&!Ve(e);let i=s,a=!1;o!==e&&(r?(a=n.length===0,i=function(h,d,p){return a&&(a=!1,h=Qe(e,h)),s.call(this,h,Qe(e,d),p,e)}):s.length>3&&(i=function(h,d,p){return s.call(this,h,d,p,e)}));const c=o[t](i,...n);return a?Qe(e,c):c}function Bs(e,t,s){const n=se(e);Ae(n,"iterate",ts);const o=n[t](...s);return(o===-1||o===!1)&&vn(s[0])?(s[0]=se(s[0]),n[t](...s)):o}function Ut(e,t,s=[]){dt(),dn();const n=se(e)[t].apply(e,s);return fn(),ft(),n}const Rr=ln("__proto__,__v_isRef,__isVue"),Ao=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!=="arguments"&&e!=="caller").map(e=>Symbol[e]).filter(nt));function jr(e){nt(e)||(e=String(e));const t=se(this);return Ae(t,"has",e),t.hasOwnProperty(e)}class Eo{constructor(t=!1,s=!1){this._isReadonly=t,this._isShallow=s}get(t,s,n){if(s==="__v_skip")return t.__v_skip;const o=this._isReadonly,r=this._isShallow;if(s==="__v_isReactive")return!o;if(s==="__v_isReadonly")return o;if(s==="__v_isShallow")return r;if(s==="__v_raw")return n===(o?r?zr:Oo:r?Mo:Io).get(t)||Object.getPrototypeOf(t)===Object.getPrototypeOf(n)?t:void 0;const i=z(t);if(!o){let c;if(i&&(c=Or[s]))return c;if(s==="hasOwnProperty")return jr}const a=Reflect.get(t,s,Pe(t)?t:n);if((nt(s)?Ao.has(s):Rr(s))||(o||Ae(t,"get",s),r))return a;if(Pe(a)){const c=i&&cn(s)?a:a.value;return o&&ae(c)?Xs(c):c}return ae(a)?o?Xs(a):gn(a):a}}class Po extends Eo{constructor(t=!1){super(!1,t)}set(t,s,n,o){let r=t[s];const i=z(t)&&cn(s);if(!this._isShallow){const h=pt(r);if(!Ve(n)&&!pt(n)&&(r=se(r),n=se(n)),!i&&Pe(r)&&!Pe(n))return h||(r.value=n),!0}const a=i?Number(s)<t.length:ne(t,s),c=Reflect.set(t,s,n,Pe(t)?t:o);return t===se(o)&&(a?et(n,r)&&at(t,"set",s,n):at(t,"add",s,n)),c}deleteProperty(t,s){const n=ne(t,s);t[s];const o=Reflect.deleteProperty(t,s);return o&&n&&at(t,"delete",s,void 0),o}has(t,s){const n=Reflect.has(t,s);return(!nt(s)||!Ao.has(s))&&Ae(t,"has",s),n}ownKeys(t){return Ae(t,"iterate",z(t)?"length":Tt),Reflect.ownKeys(t)}}class Nr extends Eo{constructor(t=!1){super(!0,t)}set(t,s){return!0}deleteProperty(t,s){return!0}}const Lr=new Po,Fr=new Nr,Vr=new Po(!0);const Qs=e=>e,us=e=>Reflect.getPrototypeOf(e);function Hr(e,t,s){return function(...n){const o=this.__v_raw,r=se(o),i=Ot(r),a=e==="entries"||e===Symbol.iterator&&i,c=e==="keys"&&i,h=o[e](...n),d=s?Qs:t?jt:We;return!t&&Ae(r,"iterate",c?Zs:Tt),$e(Object.create(h),{next(){const{value:p,done:m}=h.next();return m?{value:p,done:m}:{value:a?[d(p[0]),d(p[1])]:d(p),done:m}}})}}function ds(e){return function(...t){return e==="delete"?!1:e==="clear"?void 0:this}}function Ur(e,t){const s={get(o){const r=this.__v_raw,i=se(r),a=se(o);e||(et(o,a)&&Ae(i,"get",o),Ae(i,"get",a));const{has:c}=us(i),h=t?Qs:e?jt:We;if(c.call(i,o))return h(r.get(o));if(c.call(i,a))return h(r.get(a));r!==i&&r.get(o)},get size(){const o=this.__v_raw;return!e&&Ae(se(o),"iterate",Tt),o.size},has(o){const r=this.__v_raw,i=se(r),a=se(o);return e||(et(o,a)&&Ae(i,"has",o),Ae(i,"has",a)),o===a?r.has(o):r.has(o)||r.has(a)},forEach(o,r){const i=this,a=i.__v_raw,c=se(a),h=t?Qs:e?jt:We;return!e&&Ae(c,"iterate",Tt),a.forEach((d,p)=>o.call(r,h(d),h(p),i))}};return $e(s,e?{add:ds("add"),set:ds("set"),delete:ds("delete"),clear:ds("clear")}:{add(o){const r=se(this),i=us(r),a=se(o),c=!t&&!Ve(o)&&!pt(o)?a:o;return i.has.call(r,c)||et(o,c)&&i.has.call(r,o)||et(a,c)&&i.has.call(r,a)||(r.add(c),at(r,"add",c,c)),this},set(o,r){!t&&!Ve(r)&&!pt(r)&&(r=se(r));const i=se(this),{has:a,get:c}=us(i);let h=a.call(i,o);h||(o=se(o),h=a.call(i,o));const d=c.call(i,o);return i.set(o,r),h?et(r,d)&&at(i,"set",o,r):at(i,"add",o,r),this},delete(o){const r=se(this),{has:i,get:a}=us(r);let c=i.call(r,o);c||(o=se(o),c=i.call(r,o)),a&&a.call(r,o);const h=r.delete(o);return c&&at(r,"delete",o,void 0),h},clear(){const o=se(this),r=o.size!==0,i=o.clear();return r&&at(o,"clear",void 0,void 0),i}}),["keys","values","entries",Symbol.iterator].forEach(o=>{s[o]=Hr(o,e,t)}),s}function mn(e,t){const s=Ur(e,t);return(n,o,r)=>o==="__v_isReactive"?!e:o==="__v_isReadonly"?e:o==="__v_raw"?n:Reflect.get(ne(s,o)&&o in n?s:n,o,r)}const Br={get:mn(!1,!1)},Kr={get:mn(!1,!0)},Wr={get:mn(!0,!1)};const Io=new WeakMap,Mo=new WeakMap,Oo=new WeakMap,zr=new WeakMap;function Jr(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function qr(e){return e.__v_skip||!Object.isExtensible(e)?0:Jr(yr(e))}function gn(e){return pt(e)?e:xn(e,!1,Lr,Br,Io)}function Gr(e){return xn(e,!1,Vr,Kr,Mo)}function Xs(e){return xn(e,!0,Fr,Wr,Oo)}function xn(e,t,s,n,o){if(!ae(e)||e.__v_raw&&!(t&&e.__v_isReactive))return e;const r=qr(e);if(r===0)return e;const i=o.get(e);if(i)return i;const a=new Proxy(e,r===2?n:s);return o.set(e,a),a}function $t(e){return pt(e)?$t(e.__v_raw):!!(e&&e.__v_isReactive)}function pt(e){return!!(e&&e.__v_isReadonly)}function Ve(e){return!!(e&&e.__v_isShallow)}function vn(e){return e?!!e.__v_raw:!1}function se(e){const t=e&&e.__v_raw;return t?se(t):e}function Yr(e){return!ne(e,"__v_skip")&&Object.isExtensible(e)&&go(e,"__v_skip",!0),e}const We=e=>ae(e)?gn(e):e,jt=e=>ae(e)?Xs(e):e;function Pe(e){return e?e.__v_isRef===!0:!1}function j(e){return Zr(e,!1)}function Zr(e,t){return Pe(e)?e:new Qr(e,t)}class Qr{constructor(t,s){this.dep=new hn,this.__v_isRef=!0,this.__v_isShallow=!1,this._rawValue=s?t:se(t),this._value=s?t:We(t),this.__v_isShallow=s}get value(){return this.dep.track(),this._value}set value(t){const s=this._rawValue,n=this.__v_isShallow||Ve(t)||pt(t);t=n?t:se(t),et(t,s)&&(this._rawValue=t,this._value=n?t:We(t),this.dep.trigger())}}function Xr(e){return Pe(e)?e.value:e}const ei={get:(e,t,s)=>t==="__v_raw"?e:Xr(Reflect.get(e,t,s)),set:(e,t,s,n)=>{const o=e[t];return Pe(o)&&!Pe(s)?(o.value=s,!0):Reflect.set(e,t,s,n)}};function Do(e){return $t(e)?e:new Proxy(e,ei)}class ti{constructor(t,s,n){this.fn=t,this.setter=s,this._value=void 0,this.dep=new hn(this),this.__v_isRef=!0,this.deps=void 0,this.depsTail=void 0,this.flags=16,this.globalVersion=es-1,this.next=void 0,this.effect=this,this.__v_isReadonly=!s,this.isSSR=n}notify(){if(this.flags|=16,!(this.flags&8)&&pe!==this)return wo(this,!0),!0}get value(){const t=this.dep.track();return ko(this),t&&(t.version=this.dep.version),this._value}set value(t){this.setter&&this.setter(t)}}function si(e,t,s=!1){let n,o;return Z(e)?n=e:(n=e.get,o=e.set),new ti(n,o,s)}const fs={},ys=new WeakMap;let kt;function ni(e,t=!1,s=kt){if(s){let n=ys.get(s);n||ys.set(s,n=[]),n.push(e)}}function oi(e,t,s=ue){const{immediate:n,deep:o,once:r,scheduler:i,augmentJob:a,call:c}=s,h=F=>o?F:Ve(F)||o===!1||o===0?ct(F,1):ct(F);let d,p,m,k,V=!1,A=!1;if(Pe(e)?(p=()=>e.value,V=Ve(e)):$t(e)?(p=()=>h(e),V=!0):z(e)?(A=!0,V=e.some(F=>$t(F)||Ve(F)),p=()=>e.map(F=>{if(Pe(F))return F.value;if($t(F))return h(F);if(Z(F))return c?c(F,2):F()})):Z(e)?t?p=c?()=>c(e,2):e:p=()=>{if(m){dt();try{m()}finally{ft()}}const F=kt;kt=d;try{return c?c(e,3,[k]):e(k)}finally{kt=F}}:p=tt,t&&o){const F=p,re=o===!0?1/0:o;p=()=>ct(F(),re)}const H=Pr(),O=()=>{d.stop(),H&&H.active&&an(H.effects,d)};if(r&&t){const F=t;t=(...re)=>{F(...re),O()}}let L=A?new Array(e.length).fill(fs):fs;const W=F=>{if(!(!(d.flags&1)||!d.dirty&&!F))if(t){const re=d.run();if(o||V||(A?re.some((we,J)=>et(we,L[J])):et(re,L))){m&&m();const we=kt;kt=d;try{const J=[re,L===fs?void 0:A&&L[0]===fs?[]:L,k];L=re,c?c(t,3,J):t(...J)}finally{kt=we}}}else d.run()};return a&&a(W),d=new bo(p),d.scheduler=i?()=>i(W,!1):W,k=F=>ni(F,!1,d),m=d.onStop=()=>{const F=ys.get(d);if(F){if(c)c(F,4);else for(const re of F)re();ys.delete(d)}},t?n?W(!0):L=d.run():i?i(W.bind(null,!0),!0):d.run(),O.pause=d.pause.bind(d),O.resume=d.resume.bind(d),O.stop=O,O}function ct(e,t=1/0,s){if(t<=0||!ae(e)||e.__v_skip||(s=s||new Map,(s.get(e)||0)>=t))return e;if(s.set(e,t),t--,Pe(e))ct(e.value,t,s);else if(z(e))for(let n=0;n<e.length;n++)ct(e[n],t,s);else if(Ft(e)||Ot(e))e.forEach(n=>{ct(n,t,s)});else if(mo(e)){for(const n in e)ct(e[n],t,s);for(const n of Object.getOwnPropertySymbols(e))Object.prototype.propertyIsEnumerable.call(e,n)&&ct(e[n],t,s)}return e}/**
56
+ **/let je;class Er{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=je,!t&&je&&(this.index=(je.scopes||(je.scopes=[])).push(this)-1)}get active(){return this._active}pause(){if(this._active){this._isPaused=!0;let t,s;if(this.scopes)for(t=0,s=this.scopes.length;t<s;t++)this.scopes[t].pause();for(t=0,s=this.effects.length;t<s;t++)this.effects[t].pause()}}resume(){if(this._active&&this._isPaused){this._isPaused=!1;let t,s;if(this.scopes)for(t=0,s=this.scopes.length;t<s;t++)this.scopes[t].resume();for(t=0,s=this.effects.length;t<s;t++)this.effects[t].resume()}}run(t){if(this._active){const s=je;try{return je=this,t()}finally{je=s}}}on(){++this._on===1&&(this.prevScope=je,je=this)}off(){this._on>0&&--this._on===0&&(je=this.prevScope,this.prevScope=void 0)}stop(t){if(this._active){this._active=!1;let s,n;for(s=0,n=this.effects.length;s<n;s++)this.effects[s].stop();for(this.effects.length=0,s=0,n=this.cleanups.length;s<n;s++)this.cleanups[s]();if(this.cleanups.length=0,this.scopes){for(s=0,n=this.scopes.length;s<n;s++)this.scopes[s].stop(!0);this.scopes.length=0}if(!this.detached&&this.parent&&!t){const o=this.parent.scopes.pop();o&&o!==this&&(this.parent.scopes[this.index]=o,o.index=this.index)}this.parent=void 0}}}function Pr(){return je}let pe;const Us=new WeakSet;class bo{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,je&&je.active&&je.effects.push(this)}pause(){this.flags|=64}resume(){this.flags&64&&(this.flags&=-65,Us.has(this)&&(Us.delete(this),this.trigger()))}notify(){this.flags&2&&!(this.flags&32)||this.flags&8||wo(this)}run(){if(!(this.flags&1))return this.fn();this.flags|=2,Mn(this),So(this);const t=pe,s=Ke;pe=this,Ke=!0;try{return this.fn()}finally{Co(this),pe=t,Ke=s,this.flags&=-3}}stop(){if(this.flags&1){for(let t=this.deps;t;t=t.nextDep)pn(t);this.deps=this.depsTail=void 0,Mn(this),this.onStop&&this.onStop(),this.flags&=-2}}trigger(){this.flags&64?Us.add(this):this.scheduler?this.scheduler():this.runIfDirty()}runIfDirty(){Gs(this)&&this.run()}get dirty(){return Gs(this)}}let _o=0,qt,Gt;function wo(e,t=!1){if(e.flags|=8,t){e.next=Gt,Gt=e;return}e.next=qt,qt=e}function dn(){_o++}function fn(){if(--_o>0)return;if(Gt){let t=Gt;for(Gt=void 0;t;){const s=t.next;t.next=void 0,t.flags&=-9,t=s}}let e;for(;qt;){let t=qt;for(qt=void 0;t;){const s=t.next;if(t.next=void 0,t.flags&=-9,t.flags&1)try{t.trigger()}catch(n){e||(e=n)}t=s}}if(e)throw e}function So(e){for(let t=e.deps;t;t=t.nextDep)t.version=-1,t.prevActiveLink=t.dep.activeLink,t.dep.activeLink=t}function Co(e){let t,s=e.depsTail,n=s;for(;n;){const o=n.prevDep;n.version===-1?(n===s&&(s=o),pn(n),Mr(n)):t=n,n.dep.activeLink=n.prevActiveLink,n.prevActiveLink=void 0,n=o}e.deps=t,e.depsTail=s}function Gs(e){for(let t=e.deps;t;t=t.nextDep)if(t.dep.version!==t.version||t.dep.computed&&(ko(t.dep.computed)||t.dep.version!==t.version))return!0;return!!e._dirty}function ko(e){if(e.flags&4&&!(e.flags&16)||(e.flags&=-17,e.globalVersion===es)||(e.globalVersion=es,!e.isSSR&&e.flags&128&&(!e.deps&&!e._dirty||!Gs(e))))return;e.flags|=2;const t=e.dep,s=pe,n=Ke;pe=e,Ke=!0;try{So(e);const o=e.fn(e._value);(t.version===0||tt(o,e._value))&&(e.flags|=128,e._value=o,t.version++)}catch(o){throw t.version++,o}finally{pe=s,Ke=n,Co(e),e.flags&=-3}}function pn(e,t=!1){const{dep:s,prevSub:n,nextSub:o}=e;if(n&&(n.nextSub=o,e.prevSub=void 0),o&&(o.prevSub=n,e.nextSub=void 0),s.subs===e&&(s.subs=n,!n&&s.computed)){s.computed.flags&=-5;for(let r=s.computed.deps;r;r=r.nextDep)pn(r,!0)}!t&&!--s.sc&&s.map&&s.map.delete(s.key)}function Mr(e){const{prevDep:t,nextDep:s}=e;t&&(t.nextDep=s,e.prevDep=void 0),s&&(s.prevDep=t,e.nextDep=void 0)}let Ke=!0;const To=[];function ft(){To.push(Ke),Ke=!1}function pt(){const e=To.pop();Ke=e===void 0?!0:e}function Mn(e){const{cleanup:t}=e;if(e.cleanup=void 0,t){const s=pe;pe=void 0;try{t()}finally{pe=s}}}let es=0;class Ir{constructor(t,s){this.sub=t,this.dep=s,this.version=s.version,this.nextDep=this.prevDep=this.nextSub=this.prevSub=this.prevActiveLink=void 0}}class mn{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(!pe||!Ke||pe===this.computed)return;let s=this.activeLink;if(s===void 0||s.sub!==pe)s=this.activeLink=new Ir(pe,this),pe.deps?(s.prevDep=pe.depsTail,pe.depsTail.nextDep=s,pe.depsTail=s):pe.deps=pe.depsTail=s,$o(s);else if(s.version===-1&&(s.version=this.version,s.nextDep)){const n=s.nextDep;n.prevDep=s.prevDep,s.prevDep&&(s.prevDep.nextDep=n),s.prevDep=pe.depsTail,s.nextDep=void 0,pe.depsTail.nextDep=s,pe.depsTail=s,pe.deps===s&&(pe.deps=n)}return s}trigger(t){this.version++,es++,this.notify(t)}notify(t){dn();try{for(let s=this.subs;s;s=s.prevSub)s.sub.notify()&&s.sub.dep.notify()}finally{fn()}}}function $o(e){if(e.dep.sc++,e.sub.flags&4){const t=e.dep.computed;if(t&&!e.dep.subs){t.flags|=20;for(let n=t.deps;n;n=n.nextDep)$o(n)}const s=e.dep.subs;s!==e&&(e.prevSub=s,s&&(s.nextSub=e)),e.dep.subs=e}}const Ys=new WeakMap,Tt=Symbol(""),Zs=Symbol(""),ts=Symbol("");function Ae(e,t,s){if(Ke&&pe){let n=Ys.get(e);n||Ys.set(e,n=new Map);let o=n.get(s);o||(n.set(s,o=new mn),o.map=n,o.key=s),o.track()}}function ct(e,t,s,n,o,r){const l=Ys.get(e);if(!l){es++;return}const a=c=>{c&&c.trigger()};if(dn(),t==="clear")l.forEach(a);else{const c=J(e),p=c&&cn(s);if(c&&s==="length"){const d=Number(n);l.forEach((m,v)=>{(v==="length"||v===ts||!ot(v)&&v>=d)&&a(m)})}else switch((s!==void 0||l.has(void 0))&&a(l.get(s)),p&&a(l.get(ts)),t){case"add":c?p&&a(l.get("length")):(a(l.get(Tt)),Ot(e)&&a(l.get(Zs)));break;case"delete":c||(a(l.get(Tt)),Ot(e)&&a(l.get(Zs)));break;case"set":Ot(e)&&a(l.get(Tt));break}}fn()}function Pt(e){const t=oe(e);return t===e?t:(Ae(t,"iterate",ts),Ue(e)?t:t.map(ze))}function Is(e){return Ae(e=oe(e),"iterate",ts),e}function Xe(e,t){return mt(e)?jt($t(e)?ze(t):t):ze(t)}const Or={__proto__:null,[Symbol.iterator](){return Hs(this,Symbol.iterator,e=>Xe(this,e))},concat(...e){return Pt(this).concat(...e.map(t=>J(t)?Pt(t):t))},entries(){return Hs(this,"entries",e=>(e[1]=Xe(this,e[1]),e))},every(e,t){return it(this,"every",e,t,void 0,arguments)},filter(e,t){return it(this,"filter",e,t,s=>s.map(n=>Xe(this,n)),arguments)},find(e,t){return it(this,"find",e,t,s=>Xe(this,s),arguments)},findIndex(e,t){return it(this,"findIndex",e,t,void 0,arguments)},findLast(e,t){return it(this,"findLast",e,t,s=>Xe(this,s),arguments)},findLastIndex(e,t){return it(this,"findLastIndex",e,t,void 0,arguments)},forEach(e,t){return it(this,"forEach",e,t,void 0,arguments)},includes(...e){return Bs(this,"includes",e)},indexOf(...e){return Bs(this,"indexOf",e)},join(e){return Pt(this).join(e)},lastIndexOf(...e){return Bs(this,"lastIndexOf",e)},map(e,t){return it(this,"map",e,t,void 0,arguments)},pop(){return Ht(this,"pop")},push(...e){return Ht(this,"push",e)},reduce(e,...t){return In(this,"reduce",e,t)},reduceRight(e,...t){return In(this,"reduceRight",e,t)},shift(){return Ht(this,"shift")},some(e,t){return it(this,"some",e,t,void 0,arguments)},splice(...e){return Ht(this,"splice",e)},toReversed(){return Pt(this).toReversed()},toSorted(e){return Pt(this).toSorted(e)},toSpliced(...e){return Pt(this).toSpliced(...e)},unshift(...e){return Ht(this,"unshift",e)},values(){return Hs(this,"values",e=>Xe(this,e))}};function Hs(e,t,s){const n=Is(e),o=n[t]();return n!==e&&!Ue(e)&&(o._next=o.next,o.next=()=>{const r=o._next();return r.done||(r.value=s(r.value)),r}),o}const Dr=Array.prototype;function it(e,t,s,n,o,r){const l=Is(e),a=l!==e&&!Ue(e),c=l[t];if(c!==Dr[t]){const m=c.apply(e,r);return a?ze(m):m}let p=s;l!==e&&(a?p=function(m,v){return s.call(this,Xe(e,m),v,e)}:s.length>2&&(p=function(m,v){return s.call(this,m,v,e)}));const d=c.call(l,p,n);return a&&o?o(d):d}function In(e,t,s,n){const o=Is(e),r=o!==e&&!Ue(e);let l=s,a=!1;o!==e&&(r?(a=n.length===0,l=function(p,d,m){return a&&(a=!1,p=Xe(e,p)),s.call(this,p,Xe(e,d),m,e)}):s.length>3&&(l=function(p,d,m){return s.call(this,p,d,m,e)}));const c=o[t](l,...n);return a?Xe(e,c):c}function Bs(e,t,s){const n=oe(e);Ae(n,"iterate",ts);const o=n[t](...s);return(o===-1||o===!1)&&vn(s[0])?(s[0]=oe(s[0]),n[t](...s)):o}function Ht(e,t,s=[]){ft(),dn();const n=oe(e)[t].apply(e,s);return fn(),pt(),n}const Rr=ln("__proto__,__v_isRef,__isVue"),Ao=new Set(Object.getOwnPropertyNames(Symbol).filter(e=>e!=="arguments"&&e!=="caller").map(e=>Symbol[e]).filter(ot));function jr(e){ot(e)||(e=String(e));const t=oe(this);return Ae(t,"has",e),t.hasOwnProperty(e)}class Eo{constructor(t=!1,s=!1){this._isReadonly=t,this._isShallow=s}get(t,s,n){if(s==="__v_skip")return t.__v_skip;const o=this._isReadonly,r=this._isShallow;if(s==="__v_isReactive")return!o;if(s==="__v_isReadonly")return o;if(s==="__v_isShallow")return r;if(s==="__v_raw")return n===(o?r?zr:Oo:r?Io:Mo).get(t)||Object.getPrototypeOf(t)===Object.getPrototypeOf(n)?t:void 0;const l=J(t);if(!o){let c;if(l&&(c=Or[s]))return c;if(s==="hasOwnProperty")return jr}const a=Reflect.get(t,s,Pe(t)?t:n);if((ot(s)?Ao.has(s):Rr(s))||(o||Ae(t,"get",s),r))return a;if(Pe(a)){const c=l&&cn(s)?a:a.value;return o&&ae(c)?Xs(c):c}return ae(a)?o?Xs(a):gn(a):a}}class Po extends Eo{constructor(t=!1){super(!1,t)}set(t,s,n,o){let r=t[s];const l=J(t)&&cn(s);if(!this._isShallow){const p=mt(r);if(!Ue(n)&&!mt(n)&&(r=oe(r),n=oe(n)),!l&&Pe(r)&&!Pe(n))return p||(r.value=n),!0}const a=l?Number(s)<t.length:re(t,s),c=Reflect.set(t,s,n,Pe(t)?t:o);return t===oe(o)&&(a?tt(n,r)&&ct(t,"set",s,n):ct(t,"add",s,n)),c}deleteProperty(t,s){const n=re(t,s);t[s];const o=Reflect.deleteProperty(t,s);return o&&n&&ct(t,"delete",s,void 0),o}has(t,s){const n=Reflect.has(t,s);return(!ot(s)||!Ao.has(s))&&Ae(t,"has",s),n}ownKeys(t){return Ae(t,"iterate",J(t)?"length":Tt),Reflect.ownKeys(t)}}class Nr extends Eo{constructor(t=!1){super(!0,t)}set(t,s){return!0}deleteProperty(t,s){return!0}}const Lr=new Po,Fr=new Nr,Vr=new Po(!0);const Qs=e=>e,us=e=>Reflect.getPrototypeOf(e);function Ur(e,t,s){return function(...n){const o=this.__v_raw,r=oe(o),l=Ot(r),a=e==="entries"||e===Symbol.iterator&&l,c=e==="keys"&&l,p=o[e](...n),d=s?Qs:t?jt:ze;return!t&&Ae(r,"iterate",c?Zs:Tt),$e(Object.create(p),{next(){const{value:m,done:v}=p.next();return v?{value:m,done:v}:{value:a?[d(m[0]),d(m[1])]:d(m),done:v}}})}}function ds(e){return function(...t){return e==="delete"?!1:e==="clear"?void 0:this}}function Hr(e,t){const s={get(o){const r=this.__v_raw,l=oe(r),a=oe(o);e||(tt(o,a)&&Ae(l,"get",o),Ae(l,"get",a));const{has:c}=us(l),p=t?Qs:e?jt:ze;if(c.call(l,o))return p(r.get(o));if(c.call(l,a))return p(r.get(a));r!==l&&r.get(o)},get size(){const o=this.__v_raw;return!e&&Ae(oe(o),"iterate",Tt),o.size},has(o){const r=this.__v_raw,l=oe(r),a=oe(o);return e||(tt(o,a)&&Ae(l,"has",o),Ae(l,"has",a)),o===a?r.has(o):r.has(o)||r.has(a)},forEach(o,r){const l=this,a=l.__v_raw,c=oe(a),p=t?Qs:e?jt:ze;return!e&&Ae(c,"iterate",Tt),a.forEach((d,m)=>o.call(r,p(d),p(m),l))}};return $e(s,e?{add:ds("add"),set:ds("set"),delete:ds("delete"),clear:ds("clear")}:{add(o){const r=oe(this),l=us(r),a=oe(o),c=!t&&!Ue(o)&&!mt(o)?a:o;return l.has.call(r,c)||tt(o,c)&&l.has.call(r,o)||tt(a,c)&&l.has.call(r,a)||(r.add(c),ct(r,"add",c,c)),this},set(o,r){!t&&!Ue(r)&&!mt(r)&&(r=oe(r));const l=oe(this),{has:a,get:c}=us(l);let p=a.call(l,o);p||(o=oe(o),p=a.call(l,o));const d=c.call(l,o);return l.set(o,r),p?tt(r,d)&&ct(l,"set",o,r):ct(l,"add",o,r),this},delete(o){const r=oe(this),{has:l,get:a}=us(r);let c=l.call(r,o);c||(o=oe(o),c=l.call(r,o)),a&&a.call(r,o);const p=r.delete(o);return c&&ct(r,"delete",o,void 0),p},clear(){const o=oe(this),r=o.size!==0,l=o.clear();return r&&ct(o,"clear",void 0,void 0),l}}),["keys","values","entries",Symbol.iterator].forEach(o=>{s[o]=Ur(o,e,t)}),s}function hn(e,t){const s=Hr(e,t);return(n,o,r)=>o==="__v_isReactive"?!e:o==="__v_isReadonly"?e:o==="__v_raw"?n:Reflect.get(re(s,o)&&o in n?s:n,o,r)}const Br={get:hn(!1,!1)},Wr={get:hn(!1,!0)},Kr={get:hn(!0,!1)};const Mo=new WeakMap,Io=new WeakMap,Oo=new WeakMap,zr=new WeakMap;function Jr(e){switch(e){case"Object":case"Array":return 1;case"Map":case"Set":case"WeakMap":case"WeakSet":return 2;default:return 0}}function qr(e){return e.__v_skip||!Object.isExtensible(e)?0:Jr(yr(e))}function gn(e){return mt(e)?e:xn(e,!1,Lr,Br,Mo)}function Gr(e){return xn(e,!1,Vr,Wr,Io)}function Xs(e){return xn(e,!0,Fr,Kr,Oo)}function xn(e,t,s,n,o){if(!ae(e)||e.__v_raw&&!(t&&e.__v_isReactive))return e;const r=qr(e);if(r===0)return e;const l=o.get(e);if(l)return l;const a=new Proxy(e,r===2?n:s);return o.set(e,a),a}function $t(e){return mt(e)?$t(e.__v_raw):!!(e&&e.__v_isReactive)}function mt(e){return!!(e&&e.__v_isReadonly)}function Ue(e){return!!(e&&e.__v_isShallow)}function vn(e){return e?!!e.__v_raw:!1}function oe(e){const t=e&&e.__v_raw;return t?oe(t):e}function Yr(e){return!re(e,"__v_skip")&&Object.isExtensible(e)&&go(e,"__v_skip",!0),e}const ze=e=>ae(e)?gn(e):e,jt=e=>ae(e)?Xs(e):e;function Pe(e){return e?e.__v_isRef===!0:!1}function j(e){return Zr(e,!1)}function Zr(e,t){return Pe(e)?e:new Qr(e,t)}class Qr{constructor(t,s){this.dep=new mn,this.__v_isRef=!0,this.__v_isShallow=!1,this._rawValue=s?t:oe(t),this._value=s?t:ze(t),this.__v_isShallow=s}get value(){return this.dep.track(),this._value}set value(t){const s=this._rawValue,n=this.__v_isShallow||Ue(t)||mt(t);t=n?t:oe(t),tt(t,s)&&(this._rawValue=t,this._value=n?t:ze(t),this.dep.trigger())}}function Xr(e){return Pe(e)?e.value:e}const ei={get:(e,t,s)=>t==="__v_raw"?e:Xr(Reflect.get(e,t,s)),set:(e,t,s,n)=>{const o=e[t];return Pe(o)&&!Pe(s)?(o.value=s,!0):Reflect.set(e,t,s,n)}};function Do(e){return $t(e)?e:new Proxy(e,ei)}class ti{constructor(t,s,n){this.fn=t,this.setter=s,this._value=void 0,this.dep=new mn(this),this.__v_isRef=!0,this.deps=void 0,this.depsTail=void 0,this.flags=16,this.globalVersion=es-1,this.next=void 0,this.effect=this,this.__v_isReadonly=!s,this.isSSR=n}notify(){if(this.flags|=16,!(this.flags&8)&&pe!==this)return wo(this,!0),!0}get value(){const t=this.dep.track();return ko(this),t&&(t.version=this.dep.version),this._value}set value(t){this.setter&&this.setter(t)}}function si(e,t,s=!1){let n,o;return Z(e)?n=e:(n=e.get,o=e.set),new ti(n,o,s)}const fs={},ys=new WeakMap;let kt;function ni(e,t=!1,s=kt){if(s){let n=ys.get(s);n||ys.set(s,n=[]),n.push(e)}}function oi(e,t,s=ue){const{immediate:n,deep:o,once:r,scheduler:l,augmentJob:a,call:c}=s,p=V=>o?V:Ue(V)||o===!1||o===0?ut(V,1):ut(V);let d,m,v,P,U=!1,A=!1;if(Pe(e)?(m=()=>e.value,U=Ue(e)):$t(e)?(m=()=>p(e),U=!0):J(e)?(A=!0,U=e.some(V=>$t(V)||Ue(V)),m=()=>e.map(V=>{if(Pe(V))return V.value;if($t(V))return p(V);if(Z(V))return c?c(V,2):V()})):Z(e)?t?m=c?()=>c(e,2):e:m=()=>{if(v){ft();try{v()}finally{pt()}}const V=kt;kt=d;try{return c?c(e,3,[P]):e(P)}finally{kt=V}}:m=st,t&&o){const V=m,ee=o===!0?1/0:o;m=()=>ut(V(),ee)}const b=Pr(),E=()=>{d.stop(),b&&b.active&&an(b.effects,d)};if(r&&t){const V=t;t=(...ee)=>{V(...ee),E()}}let L=A?new Array(e.length).fill(fs):fs;const B=V=>{if(!(!(d.flags&1)||!d.dirty&&!V))if(t){const ee=d.run();if(o||U||(A?ee.some((ge,z)=>tt(ge,L[z])):tt(ee,L))){v&&v();const ge=kt;kt=d;try{const z=[ee,L===fs?void 0:A&&L[0]===fs?[]:L,P];L=ee,c?c(t,3,z):t(...z)}finally{kt=ge}}}else d.run()};return a&&a(B),d=new bo(m),d.scheduler=l?()=>l(B,!1):B,P=V=>ni(V,!1,d),v=d.onStop=()=>{const V=ys.get(d);if(V){if(c)c(V,4);else for(const ee of V)ee();ys.delete(d)}},t?n?B(!0):L=d.run():l?l(B.bind(null,!0),!0):d.run(),E.pause=d.pause.bind(d),E.resume=d.resume.bind(d),E.stop=E,E}function ut(e,t=1/0,s){if(t<=0||!ae(e)||e.__v_skip||(s=s||new Map,(s.get(e)||0)>=t))return e;if(s.set(e,t),t--,Pe(e))ut(e.value,t,s);else if(J(e))for(let n=0;n<e.length;n++)ut(e[n],t,s);else if(Ft(e)||Ot(e))e.forEach(n=>{ut(n,t,s)});else if(ho(e)){for(const n in e)ut(e[n],t,s);for(const n of Object.getOwnPropertySymbols(e))Object.prototype.propertyIsEnumerable.call(e,n)&&ut(e[n],t,s)}return e}/**
57
57
  * @vue/runtime-core v3.5.31
58
58
  * (c) 2018-present Yuxi (Evan) You and Vue contributors
59
59
  * @license MIT
60
- **/function as(e,t,s,n){try{return n?e(...n):e()}catch(o){Os(o,t,s)}}function ot(e,t,s,n){if(Z(e)){const o=as(e,t,s,n);return o&&po(o)&&o.catch(r=>{Os(r,t,s)}),o}if(z(e)){const o=[];for(let r=0;r<e.length;r++)o.push(ot(e[r],t,s,n));return o}}function Os(e,t,s,n=!0){const o=t?t.vnode:null,{errorHandler:r,throwUnhandledErrorInProduction:i}=t&&t.appContext.config||ue;if(t){let a=t.parent;const c=t.proxy,h=`https://vuejs.org/error-reference/#runtime-${s}`;for(;a;){const d=a.ec;if(d){for(let p=0;p<d.length;p++)if(d[p](e,c,h)===!1)return}a=a.parent}if(r){dt(),as(r,null,10,[e,c,h]),ft();return}}ri(e,s,o,n,i)}function ri(e,t,s,n=!0,o=!1){if(o)throw e;console.error(e)}const Oe=[];let Ze=-1;const Dt=[];let xt=null,It=0;const Ro=Promise.resolve();let bs=null;function jo(e){const t=bs||Ro;return e?t.then(this?e.bind(this):e):t}function ii(e){let t=Ze+1,s=Oe.length;for(;t<s;){const n=t+s>>>1,o=Oe[n],r=ss(o);r<e||r===e&&o.flags&2?t=n+1:s=n}return t}function yn(e){if(!(e.flags&1)){const t=ss(e),s=Oe[Oe.length-1];!s||!(e.flags&2)&&t>=ss(s)?Oe.push(e):Oe.splice(ii(t),0,e),e.flags|=1,No()}}function No(){bs||(bs=Ro.then(Fo))}function li(e){z(e)?Dt.push(...e):xt&&e.id===-1?xt.splice(It+1,0,e):e.flags&1||(Dt.push(e),e.flags|=1),No()}function On(e,t,s=Ze+1){for(;s<Oe.length;s++){const n=Oe[s];if(n&&n.flags&2){if(e&&n.id!==e.uid)continue;Oe.splice(s,1),s--,n.flags&4&&(n.flags&=-2),n(),n.flags&4||(n.flags&=-2)}}}function Lo(e){if(Dt.length){const t=[...new Set(Dt)].sort((s,n)=>ss(s)-ss(n));if(Dt.length=0,xt){xt.push(...t);return}for(xt=t,It=0;It<xt.length;It++){const s=xt[It];s.flags&4&&(s.flags&=-2),s.flags&8||s(),s.flags&=-2}xt=null,It=0}}const ss=e=>e.id==null?e.flags&2?-1:1/0:e.id;function Fo(e){try{for(Ze=0;Ze<Oe.length;Ze++){const t=Oe[Ze];t&&!(t.flags&8)&&(t.flags&4&&(t.flags&=-2),as(t,t.i,t.i?15:14),t.flags&4||(t.flags&=-2))}}finally{for(;Ze<Oe.length;Ze++){const t=Oe[Ze];t&&(t.flags&=-2)}Ze=-1,Oe.length=0,Lo(),bs=null,(Oe.length||Dt.length)&&Fo()}}let Le=null,Vo=null;function _s(e){const t=Le;return Le=e,Vo=e&&e.type.__scopeId||null,t}function ai(e,t=Le,s){if(!t||e._n)return e;const n=(...o)=>{n._d&&Wn(-1);const r=_s(t);let i;try{i=e(...o)}finally{_s(r),n._d&&Wn(1)}return i};return n._n=!0,n._c=!0,n._d=!0,n}function le(e,t){if(Le===null)return e;const s=Ns(Le),n=e.dirs||(e.dirs=[]);for(let o=0;o<t.length;o++){let[r,i,a,c=ue]=t[o];r&&(Z(r)&&(r={mounted:r,updated:r}),r.deep&&ct(i),n.push({dir:r,instance:s,value:i,oldValue:void 0,arg:a,modifiers:c}))}return e}function St(e,t,s,n){const o=e.dirs,r=t&&t.dirs;for(let i=0;i<o.length;i++){const a=o[i];r&&(a.oldValue=r[i].value);let c=a.dir[n];c&&(dt(),ot(c,s,8,[e.el,a,e,t]),ft())}}function ci(e,t){if(Ee){let s=Ee.provides;const n=Ee.parent&&Ee.parent.provides;n===s&&(s=Ee.provides=Object.create(n)),s[e]=t}}function ms(e,t,s=!1){const n=cl();if(n||Rt){let o=Rt?Rt._context.provides:n?n.parent==null||n.ce?n.vnode.appContext&&n.vnode.appContext.provides:n.parent.provides:void 0;if(o&&e in o)return o[e];if(arguments.length>1)return s&&Z(t)?t.call(n&&n.proxy):t}}const ui=Symbol.for("v-scx"),di=()=>ms(ui);function Ks(e,t,s){return Ho(e,t,s)}function Ho(e,t,s=ue){const{immediate:n,deep:o,flush:r,once:i}=s,a=$e({},s),c=t&&n||!t&&r!=="post";let h;if(os){if(r==="sync"){const k=di();h=k.__watcherHandles||(k.__watcherHandles=[])}else if(!c){const k=()=>{};return k.stop=tt,k.resume=tt,k.pause=tt,k}}const d=Ee;a.call=(k,V,A)=>ot(k,d,V,A);let p=!1;r==="post"?a.scheduler=k=>{Re(k,d&&d.suspense)}:r!=="sync"&&(p=!0,a.scheduler=(k,V)=>{V?k():yn(k)}),a.augmentJob=k=>{t&&(k.flags|=4),p&&(k.flags|=2,d&&(k.id=d.uid,k.i=d))};const m=oi(e,t,a);return os&&(h?h.push(m):c&&m()),m}function fi(e,t,s){const n=this.proxy,o=me(e)?e.includes(".")?Uo(n,e):()=>n[e]:e.bind(n,n);let r;Z(t)?r=t:(r=t.handler,s=t);const i=cs(this),a=Ho(o,r.bind(n),s);return i(),a}function Uo(e,t){const s=t.split(".");return()=>{let n=e;for(let o=0;o<s.length&&n;o++)n=n[s[o]];return n}}const pi=Symbol("_vte"),hi=e=>e.__isTeleport,mi=Symbol("_leaveCb");function bn(e,t){e.shapeFlag&6&&e.component?(e.transition=t,bn(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 At(e,t){return Z(e)?$e({name:e.name},t,{setup:e}):e}function Bo(e){e.ids=[e.ids[0]+e.ids[2]+++"-",0,0]}function Dn(e,t){let s;return!!((s=Object.getOwnPropertyDescriptor(e,t))&&!s.configurable)}const ws=new WeakMap;function Yt(e,t,s,n,o=!1){if(z(e)){e.forEach((A,H)=>Yt(A,t&&(z(t)?t[H]:t),s,n,o));return}if(Zt(n)&&!o){n.shapeFlag&512&&n.type.__asyncResolved&&n.component.subTree.component&&Yt(e,t,s,n.component.subTree);return}const r=n.shapeFlag&4?Ns(n.component):n.el,i=o?null:r,{i:a,r:c}=e,h=t&&t.r,d=a.refs===ue?a.refs={}:a.refs,p=a.setupState,m=se(p),k=p===ue?fo:A=>Dn(d,A)?!1:ne(m,A),V=(A,H)=>!(H&&Dn(d,H));if(h!=null&&h!==c){if(Rn(t),me(h))d[h]=null,k(h)&&(p[h]=null);else if(Pe(h)){const A=t;V(h,A.k)&&(h.value=null),A.k&&(d[A.k]=null)}}if(Z(c))as(c,a,12,[i,d]);else{const A=me(c),H=Pe(c);if(A||H){const O=()=>{if(e.f){const L=A?k(c)?p[c]:d[c]:V()||!e.k?c.value:d[e.k];if(o)z(L)&&an(L,r);else if(z(L))L.includes(r)||L.push(r);else if(A)d[c]=[r],k(c)&&(p[c]=d[c]);else{const W=[r];V(c,e.k)&&(c.value=W),e.k&&(d[e.k]=W)}}else A?(d[c]=i,k(c)&&(p[c]=i)):H&&(V(c,e.k)&&(c.value=i),e.k&&(d[e.k]=i))};if(i){const L=()=>{O(),ws.delete(e)};L.id=-1,ws.set(e,L),Re(L,s)}else Rn(e),O()}}}function Rn(e){const t=ws.get(e);t&&(t.flags|=8,ws.delete(e))}Ps().requestIdleCallback;Ps().cancelIdleCallback;const Zt=e=>!!e.type.__asyncLoader,Ko=e=>e.type.__isKeepAlive;function gi(e,t){Wo(e,"a",t)}function xi(e,t){Wo(e,"da",t)}function Wo(e,t,s=Ee){const n=e.__wdc||(e.__wdc=()=>{let o=s;for(;o;){if(o.isDeactivated)return;o=o.parent}return e()});if(Ds(t,n,s),s){let o=s.parent;for(;o&&o.parent;)Ko(o.parent.vnode)&&vi(n,t,s,o),o=o.parent}}function vi(e,t,s,n){const o=Ds(t,e,n,!0);_n(()=>{an(n[t],o)},s)}function Ds(e,t,s=Ee,n=!1){if(s){const o=s[e]||(s[e]=[]),r=t.__weh||(t.__weh=(...i)=>{dt();const a=cs(s),c=ot(t,s,e,i);return a(),ft(),c});return n?o.unshift(r):o.push(r),r}}const ht=e=>(t,s=Ee)=>{(!os||e==="sp")&&Ds(e,(...n)=>t(...n),s)},yi=ht("bm"),wt=ht("m"),bi=ht("bu"),_i=ht("u"),wi=ht("bum"),_n=ht("um"),Si=ht("sp"),Ci=ht("rtg"),ki=ht("rtc");function Ti(e,t=Ee){Ds("ec",e,t)}const $i="components",zo=Symbol.for("v-ndc");function Ai(e){return me(e)?Ei($i,e,!1)||e:e||zo}function Ei(e,t,s=!0,n=!1){const o=Le||Ee;if(o){const r=o.type;{const a=hl(r,!1);if(a&&(a===t||a===De(t)||a===As(De(t))))return r}const i=jn(o[e]||r[e],t)||jn(o.appContext[e],t);return!i&&n?r:i}}function jn(e,t){return e&&(e[t]||e[De(t)]||e[As(De(t))])}function be(e,t,s,n){let o;const r=s,i=z(e);if(i||me(e)){const a=i&&$t(e);let c=!1,h=!1;a&&(c=!Ve(e),h=pt(e),e=Ms(e)),o=new Array(e.length);for(let d=0,p=e.length;d<p;d++)o[d]=t(c?h?jt(We(e[d])):We(e[d]):e[d],d,void 0,r)}else if(typeof e=="number"){o=new Array(e);for(let a=0;a<e;a++)o[a]=t(a+1,a,void 0,r)}else if(ae(e))if(e[Symbol.iterator])o=Array.from(e,(a,c)=>t(a,c,void 0,r));else{const a=Object.keys(e);o=new Array(a.length);for(let c=0,h=a.length;c<h;c++){const d=a[c];o[c]=t(e[d],d,c,r)}}else o=[];return o}const en=e=>e?hr(e)?Ns(e):en(e.parent):null,Qt=$e(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=>en(e.parent),$root:e=>en(e.root),$host:e=>e.ce,$emit:e=>e.emit,$options:e=>qo(e),$forceUpdate:e=>e.f||(e.f=()=>{yn(e.update)}),$nextTick:e=>e.n||(e.n=jo.bind(e.proxy)),$watch:e=>fi.bind(e)}),Ws=(e,t)=>e!==ue&&!e.__isScriptSetup&&ne(e,t),Pi={get({_:e},t){if(t==="__v_skip")return!0;const{ctx:s,setupState:n,data:o,props:r,accessCache:i,type:a,appContext:c}=e;if(t[0]!=="$"){const m=i[t];if(m!==void 0)switch(m){case 1:return n[t];case 2:return o[t];case 4:return s[t];case 3:return r[t]}else{if(Ws(n,t))return i[t]=1,n[t];if(o!==ue&&ne(o,t))return i[t]=2,o[t];if(ne(r,t))return i[t]=3,r[t];if(s!==ue&&ne(s,t))return i[t]=4,s[t];tn&&(i[t]=0)}}const h=Qt[t];let d,p;if(h)return t==="$attrs"&&Ae(e.attrs,"get",""),h(e);if((d=a.__cssModules)&&(d=d[t]))return d;if(s!==ue&&ne(s,t))return i[t]=4,s[t];if(p=c.config.globalProperties,ne(p,t))return p[t]},set({_:e},t,s){const{data:n,setupState:o,ctx:r}=e;return Ws(o,t)?(o[t]=s,!0):n!==ue&&ne(n,t)?(n[t]=s,!0):ne(e.props,t)||t[0]==="$"&&t.slice(1)in e?!1:(r[t]=s,!0)},has({_:{data:e,setupState:t,accessCache:s,ctx:n,appContext:o,props:r,type:i}},a){let c;return!!(s[a]||e!==ue&&a[0]!=="$"&&ne(e,a)||Ws(t,a)||ne(r,a)||ne(n,a)||ne(Qt,a)||ne(o.config.globalProperties,a)||(c=i.__cssModules)&&c[a])},defineProperty(e,t,s){return s.get!=null?e._.accessCache[t]=0:ne(s,"value")&&this.set(e,t,s.value,null),Reflect.defineProperty(e,t,s)}};function Nn(e){return z(e)?e.reduce((t,s)=>(t[s]=null,t),{}):e}let tn=!0;function Ii(e){const t=qo(e),s=e.proxy,n=e.ctx;tn=!1,t.beforeCreate&&Ln(t.beforeCreate,e,"bc");const{data:o,computed:r,methods:i,watch:a,provide:c,inject:h,created:d,beforeMount:p,mounted:m,beforeUpdate:k,updated:V,activated:A,deactivated:H,beforeDestroy:O,beforeUnmount:L,destroyed:W,unmounted:F,render:re,renderTracked:we,renderTriggered:J,errorCaptured:M,serverPrefetch:K,expose:de,inheritAttrs:te,components:Se,directives:ke,filters:mt}=t;if(h&&Mi(h,n,null),i)for(const ie in i){const X=i[ie];Z(X)&&(n[ie]=X.bind(s))}if(o){const ie=o.call(s,s);ae(ie)&&(e.data=gn(ie))}if(tn=!0,r)for(const ie in r){const X=r[ie],He=Z(X)?X.bind(s,s):Z(X.get)?X.get.bind(s,s):tt,ze=!Z(X)&&Z(X.set)?X.set.bind(s):tt,Ie=Be({get:He,set:ze});Object.defineProperty(n,ie,{enumerable:!0,configurable:!0,get:()=>Ie.value,set:Ce=>Ie.value=Ce})}if(a)for(const ie in a)Jo(a[ie],n,s,ie);if(c){const ie=Z(c)?c.call(s):c;Reflect.ownKeys(ie).forEach(X=>{ci(X,ie[X])})}d&&Ln(d,e,"c");function ge(ie,X){z(X)?X.forEach(He=>ie(He.bind(s))):X&&ie(X.bind(s))}if(ge(yi,p),ge(wt,m),ge(bi,k),ge(_i,V),ge(gi,A),ge(xi,H),ge(Ti,M),ge(ki,we),ge(Ci,J),ge(wi,L),ge(_n,F),ge(Si,K),z(de))if(de.length){const ie=e.exposed||(e.exposed={});de.forEach(X=>{Object.defineProperty(ie,X,{get:()=>s[X],set:He=>s[X]=He,enumerable:!0})})}else e.exposed||(e.exposed={});re&&e.render===tt&&(e.render=re),te!=null&&(e.inheritAttrs=te),Se&&(e.components=Se),ke&&(e.directives=ke),K&&Bo(e)}function Mi(e,t,s=tt){z(e)&&(e=sn(e));for(const n in e){const o=e[n];let r;ae(o)?"default"in o?r=ms(o.from||n,o.default,!0):r=ms(o.from||n):r=ms(o),Pe(r)?Object.defineProperty(t,n,{enumerable:!0,configurable:!0,get:()=>r.value,set:i=>r.value=i}):t[n]=r}}function Ln(e,t,s){ot(z(e)?e.map(n=>n.bind(t.proxy)):e.bind(t.proxy),t,s)}function Jo(e,t,s,n){let o=n.includes(".")?Uo(s,n):()=>s[n];if(me(e)){const r=t[e];Z(r)&&Ks(o,r)}else if(Z(e))Ks(o,e.bind(s));else if(ae(e))if(z(e))e.forEach(r=>Jo(r,t,s,n));else{const r=Z(e.handler)?e.handler.bind(s):t[e.handler];Z(r)&&Ks(o,r,e)}}function qo(e){const t=e.type,{mixins:s,extends:n}=t,{mixins:o,optionsCache:r,config:{optionMergeStrategies:i}}=e.appContext,a=r.get(t);let c;return a?c=a:!o.length&&!s&&!n?c=t:(c={},o.length&&o.forEach(h=>Ss(c,h,i,!0)),Ss(c,t,i)),ae(t)&&r.set(t,c),c}function Ss(e,t,s,n=!1){const{mixins:o,extends:r}=t;r&&Ss(e,r,s,!0),o&&o.forEach(i=>Ss(e,i,s,!0));for(const i in t)if(!(n&&i==="expose")){const a=Oi[i]||s&&s[i];e[i]=a?a(e[i],t[i]):t[i]}return e}const Oi={data:Fn,props:Vn,emits:Vn,methods:Wt,computed:Wt,beforeCreate:Me,created:Me,beforeMount:Me,mounted:Me,beforeUpdate:Me,updated:Me,beforeDestroy:Me,beforeUnmount:Me,destroyed:Me,unmounted:Me,activated:Me,deactivated:Me,errorCaptured:Me,serverPrefetch:Me,components:Wt,directives:Wt,watch:Ri,provide:Fn,inject:Di};function Fn(e,t){return t?e?function(){return $e(Z(e)?e.call(this,this):e,Z(t)?t.call(this,this):t)}:t:e}function Di(e,t){return Wt(sn(e),sn(t))}function sn(e){if(z(e)){const t={};for(let s=0;s<e.length;s++)t[e[s]]=e[s];return t}return e}function Me(e,t){return e?[...new Set([].concat(e,t))]:t}function Wt(e,t){return e?$e(Object.create(null),e,t):t}function Vn(e,t){return e?z(e)&&z(t)?[...new Set([...e,...t])]:$e(Object.create(null),Nn(e),Nn(t??{})):t}function Ri(e,t){if(!e)return t;if(!t)return e;const s=$e(Object.create(null),e);for(const n in t)s[n]=Me(e[n],t[n]);return s}function Go(){return{app:null,config:{isNativeTag:fo,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 ji=0;function Ni(e,t){return function(n,o=null){Z(n)||(n=$e({},n)),o!=null&&!ae(o)&&(o=null);const r=Go(),i=new WeakSet,a=[];let c=!1;const h=r.app={_uid:ji++,_component:n,_props:o,_container:null,_context:r,_instance:null,version:gl,get config(){return r.config},set config(d){},use(d,...p){return i.has(d)||(d&&Z(d.install)?(i.add(d),d.install(h,...p)):Z(d)&&(i.add(d),d(h,...p))),h},mixin(d){return r.mixins.includes(d)||r.mixins.push(d),h},component(d,p){return p?(r.components[d]=p,h):r.components[d]},directive(d,p){return p?(r.directives[d]=p,h):r.directives[d]},mount(d,p,m){if(!c){const k=h._ceVNode||st(n,o);return k.appContext=r,m===!0?m="svg":m===!1&&(m=void 0),e(k,d,m),c=!0,h._container=d,d.__vue_app__=h,Ns(k.component)}},onUnmount(d){a.push(d)},unmount(){c&&(ot(a,h._instance,16),e(null,h._container),delete h._container.__vue_app__)},provide(d,p){return r.provides[d]=p,h},runWithContext(d){const p=Rt;Rt=h;try{return d()}finally{Rt=p}}};return h}}let Rt=null;const Li=(e,t)=>t==="modelValue"||t==="model-value"?e.modelModifiers:e[`${t}Modifiers`]||e[`${De(t)}Modifiers`]||e[`${_t(t)}Modifiers`];function Fi(e,t,...s){if(e.isUnmounted)return;const n=e.vnode.props||ue;let o=s;const r=t.startsWith("update:"),i=r&&Li(n,t.slice(7));i&&(i.trim&&(o=s.map(d=>me(d)?d.trim():d)),i.number&&(o=s.map(Es)));let a,c=n[a=Fs(t)]||n[a=Fs(De(t))];!c&&r&&(c=n[a=Fs(_t(t))]),c&&ot(c,e,6,o);const h=n[a+"Once"];if(h){if(!e.emitted)e.emitted={};else if(e.emitted[a])return;e.emitted[a]=!0,ot(h,e,6,o)}}const Vi=new WeakMap;function Yo(e,t,s=!1){const n=s?Vi:t.emitsCache,o=n.get(e);if(o!==void 0)return o;const r=e.emits;let i={},a=!1;if(!Z(e)){const c=h=>{const d=Yo(h,t,!0);d&&(a=!0,$e(i,d))};!s&&t.mixins.length&&t.mixins.forEach(c),e.extends&&c(e.extends),e.mixins&&e.mixins.forEach(c)}return!r&&!a?(ae(e)&&n.set(e,null),null):(z(r)?r.forEach(c=>i[c]=null):$e(i,r),ae(e)&&n.set(e,i),i)}function Rs(e,t){return!e||!ks(t)?!1:(t=t.slice(2).replace(/Once$/,""),ne(e,t[0].toLowerCase()+t.slice(1))||ne(e,_t(t))||ne(e,t))}function Hn(e){const{type:t,vnode:s,proxy:n,withProxy:o,propsOptions:[r],slots:i,attrs:a,emit:c,render:h,renderCache:d,props:p,data:m,setupState:k,ctx:V,inheritAttrs:A}=e,H=_s(e);let O,L;try{if(s.shapeFlag&4){const F=o||n,re=F;O=Xe(h.call(re,F,d,p,k,m,V)),L=a}else{const F=t;O=Xe(F.length>1?F(p,{attrs:a,slots:i,emit:c}):F(p,null)),L=t.props?a:Hi(a)}}catch(F){Xt.length=0,Os(F,e,1),O=st(bt)}let W=O;if(L&&A!==!1){const F=Object.keys(L),{shapeFlag:re}=W;F.length&&re&7&&(r&&F.some(Ts)&&(L=Ui(L,r)),W=Nt(W,L,!1,!0))}return s.dirs&&(W=Nt(W,null,!1,!0),W.dirs=W.dirs?W.dirs.concat(s.dirs):s.dirs),s.transition&&bn(W,s.transition),O=W,_s(H),O}const Hi=e=>{let t;for(const s in e)(s==="class"||s==="style"||ks(s))&&((t||(t={}))[s]=e[s]);return t},Ui=(e,t)=>{const s={};for(const n in e)(!Ts(n)||!(n.slice(9)in t))&&(s[n]=e[n]);return s};function Bi(e,t,s){const{props:n,children:o,component:r}=e,{props:i,children:a,patchFlag:c}=t,h=r.emitsOptions;if(t.dirs||t.transition)return!0;if(s&&c>=0){if(c&1024)return!0;if(c&16)return n?Un(n,i,h):!!i;if(c&8){const d=t.dynamicProps;for(let p=0;p<d.length;p++){const m=d[p];if(Zo(i,n,m)&&!Rs(h,m))return!0}}}else return(o||a)&&(!a||!a.$stable)?!0:n===i?!1:n?i?Un(n,i,h):!0:!!i;return!1}function Un(e,t,s){const n=Object.keys(t);if(n.length!==Object.keys(e).length)return!0;for(let o=0;o<n.length;o++){const r=n[o];if(Zo(t,e,r)&&!Rs(s,r))return!0}return!1}function Zo(e,t,s){const n=e[s],o=t[s];return s==="style"&&ae(n)&&ae(o)?!Vt(n,o):n!==o}function Ki({vnode:e,parent:t,suspense:s},n){for(;t;){const o=t.subTree;if(o.suspense&&o.suspense.activeBranch===e&&(o.suspense.vnode.el=o.el=n,e=o),o===e)(e=t.vnode).el=n,t=t.parent;else break}s&&s.activeBranch===e&&(s.vnode.el=n)}const Qo={},Xo=()=>Object.create(Qo),er=e=>Object.getPrototypeOf(e)===Qo;function Wi(e,t,s,n=!1){const o={},r=Xo();e.propsDefaults=Object.create(null),tr(e,t,o,r);for(const i in e.propsOptions[0])i in o||(o[i]=void 0);s?e.props=n?o:Gr(o):e.type.props?e.props=o:e.props=r,e.attrs=r}function zi(e,t,s,n){const{props:o,attrs:r,vnode:{patchFlag:i}}=e,a=se(o),[c]=e.propsOptions;let h=!1;if((n||i>0)&&!(i&16)){if(i&8){const d=e.vnode.dynamicProps;for(let p=0;p<d.length;p++){let m=d[p];if(Rs(e.emitsOptions,m))continue;const k=t[m];if(c)if(ne(r,m))k!==r[m]&&(r[m]=k,h=!0);else{const V=De(m);o[V]=nn(c,a,V,k,e,!1)}else k!==r[m]&&(r[m]=k,h=!0)}}}else{tr(e,t,o,r)&&(h=!0);let d;for(const p in a)(!t||!ne(t,p)&&((d=_t(p))===p||!ne(t,d)))&&(c?s&&(s[p]!==void 0||s[d]!==void 0)&&(o[p]=nn(c,a,p,void 0,e,!0)):delete o[p]);if(r!==a)for(const p in r)(!t||!ne(t,p))&&(delete r[p],h=!0)}h&&at(e.attrs,"set","")}function tr(e,t,s,n){const[o,r]=e.propsOptions;let i=!1,a;if(t)for(let c in t){if(Jt(c))continue;const h=t[c];let d;o&&ne(o,d=De(c))?!r||!r.includes(d)?s[d]=h:(a||(a={}))[d]=h:Rs(e.emitsOptions,c)||(!(c in n)||h!==n[c])&&(n[c]=h,i=!0)}if(r){const c=se(s),h=a||ue;for(let d=0;d<r.length;d++){const p=r[d];s[p]=nn(o,c,p,h[p],e,!ne(h,p))}}return i}function nn(e,t,s,n,o,r){const i=e[s];if(i!=null){const a=ne(i,"default");if(a&&n===void 0){const c=i.default;if(i.type!==Function&&!i.skipFactory&&Z(c)){const{propsDefaults:h}=o;if(s in h)n=h[s];else{const d=cs(o);n=h[s]=c.call(null,t),d()}}else n=c;o.ce&&o.ce._setProp(s,n)}i[0]&&(r&&!a?n=!1:i[1]&&(n===""||n===_t(s))&&(n=!0))}return n}const Ji=new WeakMap;function sr(e,t,s=!1){const n=s?Ji:t.propsCache,o=n.get(e);if(o)return o;const r=e.props,i={},a=[];let c=!1;if(!Z(e)){const d=p=>{c=!0;const[m,k]=sr(p,t,!0);$e(i,m),k&&a.push(...k)};!s&&t.mixins.length&&t.mixins.forEach(d),e.extends&&d(e.extends),e.mixins&&e.mixins.forEach(d)}if(!r&&!c)return ae(e)&&n.set(e,Mt),Mt;if(z(r))for(let d=0;d<r.length;d++){const p=De(r[d]);Bn(p)&&(i[p]=ue)}else if(r)for(const d in r){const p=De(d);if(Bn(p)){const m=r[d],k=i[p]=z(m)||Z(m)?{type:m}:$e({},m),V=k.type;let A=!1,H=!0;if(z(V))for(let O=0;O<V.length;++O){const L=V[O],W=Z(L)&&L.name;if(W==="Boolean"){A=!0;break}else W==="String"&&(H=!1)}else A=Z(V)&&V.name==="Boolean";k[0]=A,k[1]=H,(A||ne(k,"default"))&&a.push(p)}}const h=[i,a];return ae(e)&&n.set(e,h),h}function Bn(e){return e[0]!=="$"&&!Jt(e)}const wn=e=>e==="_"||e==="_ctx"||e==="$stable",Sn=e=>z(e)?e.map(Xe):[Xe(e)],qi=(e,t,s)=>{if(t._n)return t;const n=ai((...o)=>Sn(t(...o)),s);return n._c=!1,n},nr=(e,t,s)=>{const n=e._ctx;for(const o in e){if(wn(o))continue;const r=e[o];if(Z(r))t[o]=qi(o,r,n);else if(r!=null){const i=Sn(r);t[o]=()=>i}}},or=(e,t)=>{const s=Sn(t);e.slots.default=()=>s},rr=(e,t,s)=>{for(const n in t)(s||!wn(n))&&(e[n]=t[n])},Gi=(e,t,s)=>{const n=e.slots=Xo();if(e.vnode.shapeFlag&32){const o=t._;o?(rr(n,t,s),s&&go(n,"_",o,!0)):nr(t,n)}else t&&or(e,t)},Yi=(e,t,s)=>{const{vnode:n,slots:o}=e;let r=!0,i=ue;if(n.shapeFlag&32){const a=t._;a?s&&a===1?r=!1:rr(o,t,s):(r=!t.$stable,nr(t,o)),i=t}else t&&(or(e,t),i={default:1});if(r)for(const a in o)!wn(a)&&i[a]==null&&delete o[a]},Re=tl;function Zi(e){return Qi(e)}function Qi(e,t){const s=Ps();s.__VUE__=!0;const{insert:n,remove:o,patchProp:r,createElement:i,createText:a,createComment:c,setText:h,setElementText:d,parentNode:p,nextSibling:m,setScopeId:k=tt,insertStaticContent:V}=e,A=(u,f,v,T=null,b=null,w=null,D=void 0,I=null,E=!!f.dynamicChildren)=>{if(u===f)return;u&&!Bt(u,f)&&(T=q(u),Ce(u,b,w,!0),u=null),f.patchFlag===-2&&(E=!1,f.dynamicChildren=null);const{type:S,ref:B,shapeFlag:R}=f;switch(S){case js:H(u,f,v,T);break;case bt:O(u,f,v,T);break;case gs:u==null&&L(f,v,T,D);break;case oe:Se(u,f,v,T,b,w,D,I,E);break;default:R&1?re(u,f,v,T,b,w,D,I,E):R&6?ke(u,f,v,T,b,w,D,I,E):(R&64||R&128)&&S.process(u,f,v,T,b,w,D,I,E,gt)}B!=null&&b?Yt(B,u&&u.ref,w,f||u,!f):B==null&&u&&u.ref!=null&&Yt(u.ref,null,w,u,!0)},H=(u,f,v,T)=>{if(u==null)n(f.el=a(f.children),v,T);else{const b=f.el=u.el;f.children!==u.children&&h(b,f.children)}},O=(u,f,v,T)=>{u==null?n(f.el=c(f.children||""),v,T):f.el=u.el},L=(u,f,v,T)=>{[u.el,u.anchor]=V(u.children,f,v,T,u.el,u.anchor)},W=({el:u,anchor:f},v,T)=>{let b;for(;u&&u!==f;)b=m(u),n(u,v,T),u=b;n(f,v,T)},F=({el:u,anchor:f})=>{let v;for(;u&&u!==f;)v=m(u),o(u),u=v;o(f)},re=(u,f,v,T,b,w,D,I,E)=>{if(f.type==="svg"?D="svg":f.type==="math"&&(D="mathml"),u==null)we(f,v,T,b,w,D,I,E);else{const S=u.el&&u.el._isVueCE?u.el:null;try{S&&S._beginPatch(),K(u,f,b,w,D,I,E)}finally{S&&S._endPatch()}}},we=(u,f,v,T,b,w,D,I)=>{let E,S;const{props:B,shapeFlag:R,transition:U,dirs:G}=u;if(E=u.el=i(u.type,w,B&&B.is,B),R&8?d(E,u.children):R&16&&M(u.children,E,null,T,b,zs(u,w),D,I),G&&St(u,null,T,"created"),J(E,u,u.scopeId,D,T),B){for(const ce in B)ce!=="value"&&!Jt(ce)&&r(E,ce,null,B[ce],w,T);"value"in B&&r(E,"value",null,B.value,w),(S=B.onVnodeBeforeMount)&&Ye(S,T,u)}G&&St(u,null,T,"beforeMount");const ee=Xi(b,U);ee&&U.beforeEnter(E),n(E,f,v),((S=B&&B.onVnodeMounted)||ee||G)&&Re(()=>{try{S&&Ye(S,T,u),ee&&U.enter(E),G&&St(u,null,T,"mounted")}finally{}},b)},J=(u,f,v,T,b)=>{if(v&&k(u,v),T)for(let w=0;w<T.length;w++)k(u,T[w]);if(b){let w=b.subTree;if(f===w||cr(w.type)&&(w.ssContent===f||w.ssFallback===f)){const D=b.vnode;J(u,D,D.scopeId,D.slotScopeIds,b.parent)}}},M=(u,f,v,T,b,w,D,I,E=0)=>{for(let S=E;S<u.length;S++){const B=u[S]=I?lt(u[S]):Xe(u[S]);A(null,B,f,v,T,b,w,D,I)}},K=(u,f,v,T,b,w,D)=>{const I=f.el=u.el;let{patchFlag:E,dynamicChildren:S,dirs:B}=f;E|=u.patchFlag&16;const R=u.props||ue,U=f.props||ue;let G;if(v&&Ct(v,!1),(G=U.onVnodeBeforeUpdate)&&Ye(G,v,f,u),B&&St(f,u,v,"beforeUpdate"),v&&Ct(v,!0),(R.innerHTML&&U.innerHTML==null||R.textContent&&U.textContent==null)&&d(I,""),S?de(u.dynamicChildren,S,I,v,T,zs(f,b),w):D||X(u,f,I,null,v,T,zs(f,b),w,!1),E>0){if(E&16)te(I,R,U,v,b);else if(E&2&&R.class!==U.class&&r(I,"class",null,U.class,b),E&4&&r(I,"style",R.style,U.style,b),E&8){const ee=f.dynamicProps;for(let ce=0;ce<ee.length;ce++){const fe=ee[ce],xe=R[fe],Te=U[fe];(Te!==xe||fe==="value")&&r(I,fe,xe,Te,b,v)}}E&1&&u.children!==f.children&&d(I,f.children)}else!D&&S==null&&te(I,R,U,v,b);((G=U.onVnodeUpdated)||B)&&Re(()=>{G&&Ye(G,v,f,u),B&&St(f,u,v,"updated")},T)},de=(u,f,v,T,b,w,D)=>{for(let I=0;I<f.length;I++){const E=u[I],S=f[I],B=E.el&&(E.type===oe||!Bt(E,S)||E.shapeFlag&198)?p(E.el):v;A(E,S,B,null,T,b,w,D,!0)}},te=(u,f,v,T,b)=>{if(f!==v){if(f!==ue)for(const w in f)!Jt(w)&&!(w in v)&&r(u,w,f[w],null,b,T);for(const w in v){if(Jt(w))continue;const D=v[w],I=f[w];D!==I&&w!=="value"&&r(u,w,I,D,b,T)}"value"in v&&r(u,"value",f.value,v.value,b)}},Se=(u,f,v,T,b,w,D,I,E)=>{const S=f.el=u?u.el:a(""),B=f.anchor=u?u.anchor:a("");let{patchFlag:R,dynamicChildren:U,slotScopeIds:G}=f;G&&(I=I?I.concat(G):G),u==null?(n(S,v,T),n(B,v,T),M(f.children||[],v,B,b,w,D,I,E)):R>0&&R&64&&U&&u.dynamicChildren&&u.dynamicChildren.length===U.length?(de(u.dynamicChildren,U,v,b,w,D,I),(f.key!=null||b&&f===b.subTree)&&ir(u,f,!0)):X(u,f,v,B,b,w,D,I,E)},ke=(u,f,v,T,b,w,D,I,E)=>{f.slotScopeIds=I,u==null?f.shapeFlag&512?b.ctx.activate(f,v,T,D,E):mt(f,v,T,b,w,D,E):Et(u,f,E)},mt=(u,f,v,T,b,w,D)=>{const I=u.component=al(u,T,b);if(Ko(u)&&(I.ctx.renderer=gt),ul(I,!1,D),I.asyncDep){if(b&&b.registerDep(I,ge,D),!u.el){const E=I.subTree=st(bt);O(null,E,f,v),u.placeholder=E.el}}else ge(I,u,f,v,b,w,D)},Et=(u,f,v)=>{const T=f.component=u.component;if(Bi(u,f,v))if(T.asyncDep&&!T.asyncResolved){ie(T,f,v);return}else T.next=f,T.update();else f.el=u.el,T.vnode=f},ge=(u,f,v,T,b,w,D)=>{const I=()=>{if(u.isMounted){let{next:R,bu:U,u:G,parent:ee,vnode:ce}=u;{const qe=lr(u);if(qe){R&&(R.el=ce.el,ie(u,R,D)),qe.asyncDep.then(()=>{Re(()=>{u.isUnmounted||S()},b)});return}}let fe=R,xe;Ct(u,!1),R?(R.el=ce.el,ie(u,R,D)):R=ce,U&&hs(U),(xe=R.props&&R.props.onVnodeBeforeUpdate)&&Ye(xe,ee,R,ce),Ct(u,!0);const Te=Hn(u),Je=u.subTree;u.subTree=Te,A(Je,Te,p(Je.el),q(Je),u,b,w),R.el=Te.el,fe===null&&Ki(u,Te.el),G&&Re(G,b),(xe=R.props&&R.props.onVnodeUpdated)&&Re(()=>Ye(xe,ee,R,ce),b)}else{let R;const{el:U,props:G}=f,{bm:ee,m:ce,parent:fe,root:xe,type:Te}=u,Je=Zt(f);Ct(u,!1),ee&&hs(ee),!Je&&(R=G&&G.onVnodeBeforeMount)&&Ye(R,fe,f),Ct(u,!0);{xe.ce&&xe.ce._hasShadowRoot()&&xe.ce._injectChildStyle(Te,u.parent?u.parent.type:void 0);const qe=u.subTree=Hn(u);A(null,qe,v,T,u,b,w),f.el=qe.el}if(ce&&Re(ce,b),!Je&&(R=G&&G.onVnodeMounted)){const qe=f;Re(()=>Ye(R,fe,qe),b)}(f.shapeFlag&256||fe&&Zt(fe.vnode)&&fe.vnode.shapeFlag&256)&&u.a&&Re(u.a,b),u.isMounted=!0,f=v=T=null}};u.scope.on();const E=u.effect=new bo(I);u.scope.off();const S=u.update=E.run.bind(E),B=u.job=E.runIfDirty.bind(E);B.i=u,B.id=u.uid,E.scheduler=()=>yn(B),Ct(u,!0),S()},ie=(u,f,v)=>{f.component=u;const T=u.vnode.props;u.vnode=f,u.next=null,zi(u,f.props,T,v),Yi(u,f.children,v),dt(),On(u),ft()},X=(u,f,v,T,b,w,D,I,E=!1)=>{const S=u&&u.children,B=u?u.shapeFlag:0,R=f.children,{patchFlag:U,shapeFlag:G}=f;if(U>0){if(U&128){ze(S,R,v,T,b,w,D,I,E);return}else if(U&256){He(S,R,v,T,b,w,D,I,E);return}}G&8?(B&16&&x(S,b,w),R!==S&&d(v,R)):B&16?G&16?ze(S,R,v,T,b,w,D,I,E):x(S,b,w,!0):(B&8&&d(v,""),G&16&&M(R,v,T,b,w,D,I,E))},He=(u,f,v,T,b,w,D,I,E)=>{u=u||Mt,f=f||Mt;const S=u.length,B=f.length,R=Math.min(S,B);let U;for(U=0;U<R;U++){const G=f[U]=E?lt(f[U]):Xe(f[U]);A(u[U],G,v,null,b,w,D,I,E)}S>B?x(u,b,w,!0,!1,R):M(f,v,T,b,w,D,I,E,R)},ze=(u,f,v,T,b,w,D,I,E)=>{let S=0;const B=f.length;let R=u.length-1,U=B-1;for(;S<=R&&S<=U;){const G=u[S],ee=f[S]=E?lt(f[S]):Xe(f[S]);if(Bt(G,ee))A(G,ee,v,null,b,w,D,I,E);else break;S++}for(;S<=R&&S<=U;){const G=u[R],ee=f[U]=E?lt(f[U]):Xe(f[U]);if(Bt(G,ee))A(G,ee,v,null,b,w,D,I,E);else break;R--,U--}if(S>R){if(S<=U){const G=U+1,ee=G<B?f[G].el:T;for(;S<=U;)A(null,f[S]=E?lt(f[S]):Xe(f[S]),v,ee,b,w,D,I,E),S++}}else if(S>U)for(;S<=R;)Ce(u[S],b,w,!0),S++;else{const G=S,ee=S,ce=new Map;for(S=ee;S<=U;S++){const Ne=f[S]=E?lt(f[S]):Xe(f[S]);Ne.key!=null&&ce.set(Ne.key,S)}let fe,xe=0;const Te=U-ee+1;let Je=!1,qe=0;const Ht=new Array(Te);for(S=0;S<Te;S++)Ht[S]=0;for(S=G;S<=R;S++){const Ne=u[S];if(xe>=Te){Ce(Ne,b,w,!0);continue}let Ge;if(Ne.key!=null)Ge=ce.get(Ne.key);else for(fe=ee;fe<=U;fe++)if(Ht[fe-ee]===0&&Bt(Ne,f[fe])){Ge=fe;break}Ge===void 0?Ce(Ne,b,w,!0):(Ht[Ge-ee]=S+1,Ge>=qe?qe=Ge:Je=!0,A(Ne,f[Ge],v,null,b,w,D,I,E),xe++)}const Tn=Je?el(Ht):Mt;for(fe=Tn.length-1,S=Te-1;S>=0;S--){const Ne=ee+S,Ge=f[Ne],$n=f[Ne+1],An=Ne+1<B?$n.el||ar($n):T;Ht[S]===0?A(null,Ge,v,An,b,w,D,I,E):Je&&(fe<0||S!==Tn[fe]?Ie(Ge,v,An,2):fe--)}}},Ie=(u,f,v,T,b=null)=>{const{el:w,type:D,transition:I,children:E,shapeFlag:S}=u;if(S&6){Ie(u.component.subTree,f,v,T);return}if(S&128){u.suspense.move(f,v,T);return}if(S&64){D.move(u,f,v,gt);return}if(D===oe){n(w,f,v);for(let R=0;R<E.length;R++)Ie(E[R],f,v,T);n(u.anchor,f,v);return}if(D===gs){W(u,f,v);return}if(T!==2&&S&1&&I)if(T===0)I.beforeEnter(w),n(w,f,v),Re(()=>I.enter(w),b);else{const{leave:R,delayLeave:U,afterLeave:G}=I,ee=()=>{u.ctx.isUnmounted?o(w):n(w,f,v)},ce=()=>{w._isLeaving&&w[mi](!0),R(w,()=>{ee(),G&&G()})};U?U(w,ee,ce):ce()}else n(w,f,v)},Ce=(u,f,v,T=!1,b=!1)=>{const{type:w,props:D,ref:I,children:E,dynamicChildren:S,shapeFlag:B,patchFlag:R,dirs:U,cacheIndex:G,memo:ee}=u;if(R===-2&&(b=!1),I!=null&&(dt(),Yt(I,null,v,u,!0),ft()),G!=null&&(f.renderCache[G]=void 0),B&256){f.ctx.deactivate(u);return}const ce=B&1&&U,fe=!Zt(u);let xe;if(fe&&(xe=D&&D.onVnodeBeforeUnmount)&&Ye(xe,f,u),B&6)y(u.component,v,T);else{if(B&128){u.suspense.unmount(v,T);return}ce&&St(u,null,f,"beforeUnmount"),B&64?u.type.remove(u,f,v,gt,T):S&&!S.hasOnce&&(w!==oe||R>0&&R&64)?x(S,f,v,!1,!0):(w===oe&&R&384||!b&&B&16)&&x(E,f,v),T&&N(u)}const Te=ee!=null&&G==null;(fe&&(xe=D&&D.onVnodeUnmounted)||ce||Te)&&Re(()=>{xe&&Ye(xe,f,u),ce&&St(u,null,f,"unmounted"),Te&&(u.el=null)},v)},N=u=>{const{type:f,el:v,anchor:T,transition:b}=u;if(f===oe){g(v,T);return}if(f===gs){F(u);return}const w=()=>{o(v),b&&!b.persisted&&b.afterLeave&&b.afterLeave()};if(u.shapeFlag&1&&b&&!b.persisted){const{leave:D,delayLeave:I}=b,E=()=>D(v,w);I?I(u.el,w,E):E()}else w()},g=(u,f)=>{let v;for(;u!==f;)v=m(u),o(u),u=v;o(f)},y=(u,f,v)=>{const{bum:T,scope:b,job:w,subTree:D,um:I,m:E,a:S}=u;Kn(E),Kn(S),T&&hs(T),b.stop(),w&&(w.flags|=8,Ce(D,u,f,v)),I&&Re(I,f),Re(()=>{u.isUnmounted=!0},f)},x=(u,f,v,T=!1,b=!1,w=0)=>{for(let D=w;D<u.length;D++)Ce(u[D],f,v,T,b)},q=u=>{if(u.shapeFlag&6)return q(u.component.subTree);if(u.shapeFlag&128)return u.suspense.next();const f=m(u.anchor||u.el),v=f&&f[pi];return v?m(v):f};let ye=!1;const P=(u,f,v)=>{let T;u==null?f._vnode&&(Ce(f._vnode,null,null,!0),T=f._vnode.component):A(f._vnode||null,u,f,null,null,null,v),f._vnode=u,ye||(ye=!0,On(T),Lo(),ye=!1)},gt={p:A,um:Ce,m:Ie,r:N,mt,mc:M,pc:X,pbc:de,n:q,o:e};return{render:P,hydrate:void 0,createApp:Ni(P)}}function zs({type:e,props:t},s){return s==="svg"&&e==="foreignObject"||s==="mathml"&&e==="annotation-xml"&&t&&t.encoding&&t.encoding.includes("html")?void 0:s}function Ct({effect:e,job:t},s){s?(e.flags|=32,t.flags|=4):(e.flags&=-33,t.flags&=-5)}function Xi(e,t){return(!e||e&&!e.pendingBranch)&&t&&!t.persisted}function ir(e,t,s=!1){const n=e.children,o=t.children;if(z(n)&&z(o))for(let r=0;r<n.length;r++){const i=n[r];let a=o[r];a.shapeFlag&1&&!a.dynamicChildren&&((a.patchFlag<=0||a.patchFlag===32)&&(a=o[r]=lt(o[r]),a.el=i.el),!s&&a.patchFlag!==-2&&ir(i,a)),a.type===js&&(a.patchFlag===-1&&(a=o[r]=lt(a)),a.el=i.el),a.type===bt&&!a.el&&(a.el=i.el)}}function el(e){const t=e.slice(),s=[0];let n,o,r,i,a;const c=e.length;for(n=0;n<c;n++){const h=e[n];if(h!==0){if(o=s[s.length-1],e[o]<h){t[n]=o,s.push(n);continue}for(r=0,i=s.length-1;r<i;)a=r+i>>1,e[s[a]]<h?r=a+1:i=a;h<e[s[r]]&&(r>0&&(t[n]=s[r-1]),s[r]=n)}}for(r=s.length,i=s[r-1];r-- >0;)s[r]=i,i=t[i];return s}function lr(e){const t=e.subTree.component;if(t)return t.asyncDep&&!t.asyncResolved?t:lr(t)}function Kn(e){if(e)for(let t=0;t<e.length;t++)e[t].flags|=8}function ar(e){if(e.placeholder)return e.placeholder;const t=e.component;return t?ar(t.subTree):null}const cr=e=>e.__isSuspense;function tl(e,t){t&&t.pendingBranch?z(e)?t.effects.push(...e):t.effects.push(e):li(e)}const oe=Symbol.for("v-fgt"),js=Symbol.for("v-txt"),bt=Symbol.for("v-cmt"),gs=Symbol.for("v-stc"),Xt=[];let Fe=null;function _(e=!1){Xt.push(Fe=e?null:[])}function sl(){Xt.pop(),Fe=Xt[Xt.length-1]||null}let ns=1;function Wn(e,t=!1){ns+=e,e<0&&Fe&&t&&(Fe.hasOnce=!0)}function ur(e){return e.dynamicChildren=ns>0?Fe||Mt:null,sl(),ns>0&&Fe&&Fe.push(e),e}function C(e,t,s,n,o,r){return ur(l(e,t,s,n,o,r,!0))}function dr(e,t,s,n,o){return ur(st(e,t,s,n,o,!0))}function fr(e){return e?e.__v_isVNode===!0:!1}function Bt(e,t){return e.type===t.type&&e.key===t.key}const pr=({key:e})=>e??null,xs=({ref:e,ref_key:t,ref_for:s})=>(typeof e=="number"&&(e=""+e),e!=null?me(e)||Pe(e)||Z(e)?{i:Le,r:e,k:t,f:!!s}:e:null);function l(e,t=null,s=null,n=0,o=null,r=e===oe?0:1,i=!1,a=!1){const c={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&pr(t),ref:t&&xs(t),scopeId:Vo,slotScopeIds:null,children:s,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:r,patchFlag:n,dynamicProps:o,dynamicChildren:null,appContext:null,ctx:Le};return a?(Cn(c,s),r&128&&e.normalize(c)):s&&(c.shapeFlag|=me(s)?8:16),ns>0&&!i&&Fe&&(c.patchFlag>0||r&6)&&c.patchFlag!==32&&Fe.push(c),c}const st=nl;function nl(e,t=null,s=null,n=0,o=null,r=!1){if((!e||e===zo)&&(e=bt),fr(e)){const a=Nt(e,t,!0);return s&&Cn(a,s),ns>0&&!r&&Fe&&(a.shapeFlag&6?Fe[Fe.indexOf(e)]=a:Fe.push(a)),a.patchFlag=-2,a}if(ml(e)&&(e=e.__vccOpts),t){t=ol(t);let{class:a,style:c}=t;a&&!me(a)&&(t.class=Y(a)),ae(c)&&(vn(c)&&!z(c)&&(c=$e({},c)),t.style=Is(c))}const i=me(e)?1:cr(e)?128:hi(e)?64:ae(e)?4:Z(e)?2:0;return l(e,t,s,n,o,i,r,!0)}function ol(e){return e?vn(e)||er(e)?$e({},e):e:null}function Nt(e,t,s=!1,n=!1){const{props:o,ref:r,patchFlag:i,children:a,transition:c}=e,h=t?rl(o||{},t):o,d={__v_isVNode:!0,__v_skip:!0,type:e.type,props:h,key:h&&pr(h),ref:t&&t.ref?s&&r?z(r)?r.concat(xs(t)):[r,xs(t)]:xs(t):r,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:a,target:e.target,targetStart:e.targetStart,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==oe?i===-1?16:i|16:i,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:c,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&Nt(e.ssContent),ssFallback:e.ssFallback&&Nt(e.ssFallback),placeholder:e.placeholder,el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce};return c&&n&&bn(d,c.clone(d)),d}function vt(e=" ",t=0){return st(js,null,e,t)}function Ue(e,t){const s=st(gs,null,e);return s.staticCount=t,s}function Q(e="",t=!1){return t?(_(),dr(bt,null,e)):st(bt,null,e)}function Xe(e){return e==null||typeof e=="boolean"?st(bt):z(e)?st(oe,null,e.slice()):fr(e)?lt(e):st(js,null,String(e))}function lt(e){return e.el===null&&e.patchFlag!==-1||e.memo?e:Nt(e)}function Cn(e,t){let s=0;const{shapeFlag:n}=e;if(t==null)t=null;else if(z(t))s=16;else if(typeof t=="object")if(n&65){const o=t.default;o&&(o._c&&(o._d=!1),Cn(e,o()),o._c&&(o._d=!0));return}else{s=32;const o=t._;!o&&!er(t)?t._ctx=Le:o===3&&Le&&(Le.slots._===1?t._=1:(t._=2,e.patchFlag|=1024))}else Z(t)?(t={default:t,_ctx:Le},s=32):(t=String(t),n&64?(s=16,t=[vt(t)]):s=8);e.children=t,e.shapeFlag|=s}function rl(...e){const t={};for(let s=0;s<e.length;s++){const n=e[s];for(const o in n)if(o==="class")t.class!==n.class&&(t.class=Y([t.class,n.class]));else if(o==="style")t.style=Is([t.style,n.style]);else if(ks(o)){const r=t[o],i=n[o];i&&r!==i&&!(z(r)&&r.includes(i))?t[o]=r?[].concat(r,i):i:i==null&&r==null&&!Ts(o)&&(t[o]=i)}else o!==""&&(t[o]=n[o])}return t}function Ye(e,t,s,n=null){ot(e,t,7,[s,n])}const il=Go();let ll=0;function al(e,t,s){const n=e.type,o=(t?t.appContext:e.appContext)||il,r={uid:ll++,vnode:e,type:n,parent:t,appContext:o,root:null,next:null,subTree:null,effect:null,update:null,job:null,scope:new Er(!0),render:null,proxy:null,exposed:null,exposeProxy:null,withProxy:null,provides:t?t.provides:Object.create(o.provides),ids:t?t.ids:["",0,0],accessCache:null,renderCache:[],components:null,directives:null,propsOptions:sr(n,o),emitsOptions:Yo(n,o),emit:null,emitted:null,propsDefaults:ue,inheritAttrs:n.inheritAttrs,ctx:ue,data:ue,props:ue,attrs:ue,slots:ue,refs:ue,setupState:ue,setupContext:null,suspense:s,suspenseId:s?s.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 r.ctx={_:r},r.root=t?t.root:r,r.emit=Fi.bind(null,r),e.ce&&e.ce(r),r}let Ee=null;const cl=()=>Ee||Le;let Cs,on;{const e=Ps(),t=(s,n)=>{let o;return(o=e[s])||(o=e[s]=[]),o.push(n),r=>{o.length>1?o.forEach(i=>i(r)):o[0](r)}};Cs=t("__VUE_INSTANCE_SETTERS__",s=>Ee=s),on=t("__VUE_SSR_SETTERS__",s=>os=s)}const cs=e=>{const t=Ee;return Cs(e),e.scope.on(),()=>{e.scope.off(),Cs(t)}},zn=()=>{Ee&&Ee.scope.off(),Cs(null)};function hr(e){return e.vnode.shapeFlag&4}let os=!1;function ul(e,t=!1,s=!1){t&&on(t);const{props:n,children:o}=e.vnode,r=hr(e);Wi(e,n,r,t),Gi(e,o,s||t);const i=r?dl(e,t):void 0;return t&&on(!1),i}function dl(e,t){const s=e.type;e.accessCache=Object.create(null),e.proxy=new Proxy(e.ctx,Pi);const{setup:n}=s;if(n){dt();const o=e.setupContext=n.length>1?pl(e):null,r=cs(e),i=as(n,e,0,[e.props,o]),a=po(i);if(ft(),r(),(a||e.sp)&&!Zt(e)&&Bo(e),a){if(i.then(zn,zn),t)return i.then(c=>{Jn(e,c)}).catch(c=>{Os(c,e,0)});e.asyncDep=i}else Jn(e,i)}else mr(e)}function Jn(e,t,s){Z(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:ae(t)&&(e.setupState=Do(t)),mr(e)}function mr(e,t,s){const n=e.type;e.render||(e.render=n.render||tt);{const o=cs(e);dt();try{Ii(e)}finally{ft(),o()}}}const fl={get(e,t){return Ae(e,"get",""),e[t]}};function pl(e){const t=s=>{e.exposed=s||{}};return{attrs:new Proxy(e.attrs,fl),slots:e.slots,emit:e.emit,expose:t}}function Ns(e){return e.exposed?e.exposeProxy||(e.exposeProxy=new Proxy(Do(Yr(e.exposed)),{get(t,s){if(s in t)return t[s];if(s in Qt)return Qt[s](e)},has(t,s){return s in t||s in Qt}})):e.proxy}function hl(e,t=!0){return Z(e)?e.displayName||e.name:e.name||t&&e.__name}function ml(e){return Z(e)&&"__vccOpts"in e}const Be=(e,t)=>si(e,t,os),gl="3.5.31";/**
60
+ **/function as(e,t,s,n){try{return n?e(...n):e()}catch(o){Os(o,t,s)}}function rt(e,t,s,n){if(Z(e)){const o=as(e,t,s,n);return o&&po(o)&&o.catch(r=>{Os(r,t,s)}),o}if(J(e)){const o=[];for(let r=0;r<e.length;r++)o.push(rt(e[r],t,s,n));return o}}function Os(e,t,s,n=!0){const o=t?t.vnode:null,{errorHandler:r,throwUnhandledErrorInProduction:l}=t&&t.appContext.config||ue;if(t){let a=t.parent;const c=t.proxy,p=`https://vuejs.org/error-reference/#runtime-${s}`;for(;a;){const d=a.ec;if(d){for(let m=0;m<d.length;m++)if(d[m](e,c,p)===!1)return}a=a.parent}if(r){ft(),as(r,null,10,[e,c,p]),pt();return}}ri(e,s,o,n,l)}function ri(e,t,s,n=!0,o=!1){if(o)throw e;console.error(e)}const Oe=[];let Qe=-1;const Dt=[];let vt=null,Mt=0;const Ro=Promise.resolve();let bs=null;function jo(e){const t=bs||Ro;return e?t.then(this?e.bind(this):e):t}function ii(e){let t=Qe+1,s=Oe.length;for(;t<s;){const n=t+s>>>1,o=Oe[n],r=ss(o);r<e||r===e&&o.flags&2?t=n+1:s=n}return t}function yn(e){if(!(e.flags&1)){const t=ss(e),s=Oe[Oe.length-1];!s||!(e.flags&2)&&t>=ss(s)?Oe.push(e):Oe.splice(ii(t),0,e),e.flags|=1,No()}}function No(){bs||(bs=Ro.then(Fo))}function li(e){J(e)?Dt.push(...e):vt&&e.id===-1?vt.splice(Mt+1,0,e):e.flags&1||(Dt.push(e),e.flags|=1),No()}function On(e,t,s=Qe+1){for(;s<Oe.length;s++){const n=Oe[s];if(n&&n.flags&2){if(e&&n.id!==e.uid)continue;Oe.splice(s,1),s--,n.flags&4&&(n.flags&=-2),n(),n.flags&4||(n.flags&=-2)}}}function Lo(e){if(Dt.length){const t=[...new Set(Dt)].sort((s,n)=>ss(s)-ss(n));if(Dt.length=0,vt){vt.push(...t);return}for(vt=t,Mt=0;Mt<vt.length;Mt++){const s=vt[Mt];s.flags&4&&(s.flags&=-2),s.flags&8||s(),s.flags&=-2}vt=null,Mt=0}}const ss=e=>e.id==null?e.flags&2?-1:1/0:e.id;function Fo(e){try{for(Qe=0;Qe<Oe.length;Qe++){const t=Oe[Qe];t&&!(t.flags&8)&&(t.flags&4&&(t.flags&=-2),as(t,t.i,t.i?15:14),t.flags&4||(t.flags&=-2))}}finally{for(;Qe<Oe.length;Qe++){const t=Oe[Qe];t&&(t.flags&=-2)}Qe=-1,Oe.length=0,Lo(),bs=null,(Oe.length||Dt.length)&&Fo()}}let Le=null,Vo=null;function _s(e){const t=Le;return Le=e,Vo=e&&e.type.__scopeId||null,t}function ai(e,t=Le,s){if(!t||e._n)return e;const n=(...o)=>{n._d&&Kn(-1);const r=_s(t);let l;try{l=e(...o)}finally{_s(r),n._d&&Kn(1)}return l};return n._n=!0,n._c=!0,n._d=!0,n}function ne(e,t){if(Le===null)return e;const s=Ns(Le),n=e.dirs||(e.dirs=[]);for(let o=0;o<t.length;o++){let[r,l,a,c=ue]=t[o];r&&(Z(r)&&(r={mounted:r,updated:r}),r.deep&&ut(l),n.push({dir:r,instance:s,value:l,oldValue:void 0,arg:a,modifiers:c}))}return e}function St(e,t,s,n){const o=e.dirs,r=t&&t.dirs;for(let l=0;l<o.length;l++){const a=o[l];r&&(a.oldValue=r[l].value);let c=a.dir[n];c&&(ft(),rt(c,s,8,[e.el,a,e,t]),pt())}}function ci(e,t){if(Ee){let s=Ee.provides;const n=Ee.parent&&Ee.parent.provides;n===s&&(s=Ee.provides=Object.create(n)),s[e]=t}}function hs(e,t,s=!1){const n=cl();if(n||Rt){let o=Rt?Rt._context.provides:n?n.parent==null||n.ce?n.vnode.appContext&&n.vnode.appContext.provides:n.parent.provides:void 0;if(o&&e in o)return o[e];if(arguments.length>1)return s&&Z(t)?t.call(n&&n.proxy):t}}const ui=Symbol.for("v-scx"),di=()=>hs(ui);function Ws(e,t,s){return Uo(e,t,s)}function Uo(e,t,s=ue){const{immediate:n,deep:o,flush:r,once:l}=s,a=$e({},s),c=t&&n||!t&&r!=="post";let p;if(os){if(r==="sync"){const P=di();p=P.__watcherHandles||(P.__watcherHandles=[])}else if(!c){const P=()=>{};return P.stop=st,P.resume=st,P.pause=st,P}}const d=Ee;a.call=(P,U,A)=>rt(P,d,U,A);let m=!1;r==="post"?a.scheduler=P=>{Re(P,d&&d.suspense)}:r!=="sync"&&(m=!0,a.scheduler=(P,U)=>{U?P():yn(P)}),a.augmentJob=P=>{t&&(P.flags|=4),m&&(P.flags|=2,d&&(P.id=d.uid,P.i=d))};const v=oi(e,t,a);return os&&(p?p.push(v):c&&v()),v}function fi(e,t,s){const n=this.proxy,o=xe(e)?e.includes(".")?Ho(n,e):()=>n[e]:e.bind(n,n);let r;Z(t)?r=t:(r=t.handler,s=t);const l=cs(this),a=Uo(o,r.bind(n),s);return l(),a}function Ho(e,t){const s=t.split(".");return()=>{let n=e;for(let o=0;o<s.length&&n;o++)n=n[s[o]];return n}}const pi=Symbol("_vte"),mi=e=>e.__isTeleport,hi=Symbol("_leaveCb");function bn(e,t){e.shapeFlag&6&&e.component?(e.transition=t,bn(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 At(e,t){return Z(e)?$e({name:e.name},t,{setup:e}):e}function Bo(e){e.ids=[e.ids[0]+e.ids[2]+++"-",0,0]}function Dn(e,t){let s;return!!((s=Object.getOwnPropertyDescriptor(e,t))&&!s.configurable)}const ws=new WeakMap;function Yt(e,t,s,n,o=!1){if(J(e)){e.forEach((A,b)=>Yt(A,t&&(J(t)?t[b]:t),s,n,o));return}if(Zt(n)&&!o){n.shapeFlag&512&&n.type.__asyncResolved&&n.component.subTree.component&&Yt(e,t,s,n.component.subTree);return}const r=n.shapeFlag&4?Ns(n.component):n.el,l=o?null:r,{i:a,r:c}=e,p=t&&t.r,d=a.refs===ue?a.refs={}:a.refs,m=a.setupState,v=oe(m),P=m===ue?fo:A=>Dn(d,A)?!1:re(v,A),U=(A,b)=>!(b&&Dn(d,b));if(p!=null&&p!==c){if(Rn(t),xe(p))d[p]=null,P(p)&&(m[p]=null);else if(Pe(p)){const A=t;U(p,A.k)&&(p.value=null),A.k&&(d[A.k]=null)}}if(Z(c))as(c,a,12,[l,d]);else{const A=xe(c),b=Pe(c);if(A||b){const E=()=>{if(e.f){const L=A?P(c)?m[c]:d[c]:U()||!e.k?c.value:d[e.k];if(o)J(L)&&an(L,r);else if(J(L))L.includes(r)||L.push(r);else if(A)d[c]=[r],P(c)&&(m[c]=d[c]);else{const B=[r];U(c,e.k)&&(c.value=B),e.k&&(d[e.k]=B)}}else A?(d[c]=l,P(c)&&(m[c]=l)):b&&(U(c,e.k)&&(c.value=l),e.k&&(d[e.k]=l))};if(l){const L=()=>{E(),ws.delete(e)};L.id=-1,ws.set(e,L),Re(L,s)}else Rn(e),E()}}}function Rn(e){const t=ws.get(e);t&&(t.flags|=8,ws.delete(e))}Ps().requestIdleCallback;Ps().cancelIdleCallback;const Zt=e=>!!e.type.__asyncLoader,Wo=e=>e.type.__isKeepAlive;function gi(e,t){Ko(e,"a",t)}function xi(e,t){Ko(e,"da",t)}function Ko(e,t,s=Ee){const n=e.__wdc||(e.__wdc=()=>{let o=s;for(;o;){if(o.isDeactivated)return;o=o.parent}return e()});if(Ds(t,n,s),s){let o=s.parent;for(;o&&o.parent;)Wo(o.parent.vnode)&&vi(n,t,s,o),o=o.parent}}function vi(e,t,s,n){const o=Ds(t,e,n,!0);_n(()=>{an(n[t],o)},s)}function Ds(e,t,s=Ee,n=!1){if(s){const o=s[e]||(s[e]=[]),r=t.__weh||(t.__weh=(...l)=>{ft();const a=cs(s),c=rt(t,s,e,l);return a(),pt(),c});return n?o.unshift(r):o.push(r),r}}const ht=e=>(t,s=Ee)=>{(!os||e==="sp")&&Ds(e,(...n)=>t(...n),s)},yi=ht("bm"),wt=ht("m"),bi=ht("bu"),_i=ht("u"),wi=ht("bum"),_n=ht("um"),Si=ht("sp"),Ci=ht("rtg"),ki=ht("rtc");function Ti(e,t=Ee){Ds("ec",e,t)}const $i="components",zo=Symbol.for("v-ndc");function Ai(e){return xe(e)?Ei($i,e,!1)||e:e||zo}function Ei(e,t,s=!0,n=!1){const o=Le||Ee;if(o){const r=o.type;{const a=ml(r,!1);if(a&&(a===t||a===De(t)||a===As(De(t))))return r}const l=jn(o[e]||r[e],t)||jn(o.appContext[e],t);return!l&&n?r:l}}function jn(e,t){return e&&(e[t]||e[De(t)]||e[As(De(t))])}function _e(e,t,s,n){let o;const r=s,l=J(e);if(l||xe(e)){const a=l&&$t(e);let c=!1,p=!1;a&&(c=!Ue(e),p=mt(e),e=Is(e)),o=new Array(e.length);for(let d=0,m=e.length;d<m;d++)o[d]=t(c?p?jt(ze(e[d])):ze(e[d]):e[d],d,void 0,r)}else if(typeof e=="number"){o=new Array(e);for(let a=0;a<e;a++)o[a]=t(a+1,a,void 0,r)}else if(ae(e))if(e[Symbol.iterator])o=Array.from(e,(a,c)=>t(a,c,void 0,r));else{const a=Object.keys(e);o=new Array(a.length);for(let c=0,p=a.length;c<p;c++){const d=a[c];o[c]=t(e[d],d,c,r)}}else o=[];return o}const en=e=>e?mr(e)?Ns(e):en(e.parent):null,Qt=$e(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=>en(e.parent),$root:e=>en(e.root),$host:e=>e.ce,$emit:e=>e.emit,$options:e=>qo(e),$forceUpdate:e=>e.f||(e.f=()=>{yn(e.update)}),$nextTick:e=>e.n||(e.n=jo.bind(e.proxy)),$watch:e=>fi.bind(e)}),Ks=(e,t)=>e!==ue&&!e.__isScriptSetup&&re(e,t),Pi={get({_:e},t){if(t==="__v_skip")return!0;const{ctx:s,setupState:n,data:o,props:r,accessCache:l,type:a,appContext:c}=e;if(t[0]!=="$"){const v=l[t];if(v!==void 0)switch(v){case 1:return n[t];case 2:return o[t];case 4:return s[t];case 3:return r[t]}else{if(Ks(n,t))return l[t]=1,n[t];if(o!==ue&&re(o,t))return l[t]=2,o[t];if(re(r,t))return l[t]=3,r[t];if(s!==ue&&re(s,t))return l[t]=4,s[t];tn&&(l[t]=0)}}const p=Qt[t];let d,m;if(p)return t==="$attrs"&&Ae(e.attrs,"get",""),p(e);if((d=a.__cssModules)&&(d=d[t]))return d;if(s!==ue&&re(s,t))return l[t]=4,s[t];if(m=c.config.globalProperties,re(m,t))return m[t]},set({_:e},t,s){const{data:n,setupState:o,ctx:r}=e;return Ks(o,t)?(o[t]=s,!0):n!==ue&&re(n,t)?(n[t]=s,!0):re(e.props,t)||t[0]==="$"&&t.slice(1)in e?!1:(r[t]=s,!0)},has({_:{data:e,setupState:t,accessCache:s,ctx:n,appContext:o,props:r,type:l}},a){let c;return!!(s[a]||e!==ue&&a[0]!=="$"&&re(e,a)||Ks(t,a)||re(r,a)||re(n,a)||re(Qt,a)||re(o.config.globalProperties,a)||(c=l.__cssModules)&&c[a])},defineProperty(e,t,s){return s.get!=null?e._.accessCache[t]=0:re(s,"value")&&this.set(e,t,s.value,null),Reflect.defineProperty(e,t,s)}};function Nn(e){return J(e)?e.reduce((t,s)=>(t[s]=null,t),{}):e}let tn=!0;function Mi(e){const t=qo(e),s=e.proxy,n=e.ctx;tn=!1,t.beforeCreate&&Ln(t.beforeCreate,e,"bc");const{data:o,computed:r,methods:l,watch:a,provide:c,inject:p,created:d,beforeMount:m,mounted:v,beforeUpdate:P,updated:U,activated:A,deactivated:b,beforeDestroy:E,beforeUnmount:L,destroyed:B,unmounted:V,render:ee,renderTracked:ge,renderTriggered:z,errorCaptured:I,serverPrefetch:W,expose:de,inheritAttrs:se,components:Se,directives:ke,filters:gt}=t;if(p&&Ii(p,n,null),l)for(const le in l){const X=l[le];Z(X)&&(n[le]=X.bind(s))}if(o){const le=o.call(s,s);ae(le)&&(e.data=gn(le))}if(tn=!0,r)for(const le in r){const X=r[le],He=Z(X)?X.bind(s,s):Z(X.get)?X.get.bind(s,s):st,Je=!Z(X)&&Z(X.set)?X.set.bind(s):st,Me=We({get:He,set:Je});Object.defineProperty(n,le,{enumerable:!0,configurable:!0,get:()=>Me.value,set:Ce=>Me.value=Ce})}if(a)for(const le in a)Jo(a[le],n,s,le);if(c){const le=Z(c)?c.call(s):c;Reflect.ownKeys(le).forEach(X=>{ci(X,le[X])})}d&&Ln(d,e,"c");function ve(le,X){J(X)?X.forEach(He=>le(He.bind(s))):X&&le(X.bind(s))}if(ve(yi,m),ve(wt,v),ve(bi,P),ve(_i,U),ve(gi,A),ve(xi,b),ve(Ti,I),ve(ki,ge),ve(Ci,z),ve(wi,L),ve(_n,V),ve(Si,W),J(de))if(de.length){const le=e.exposed||(e.exposed={});de.forEach(X=>{Object.defineProperty(le,X,{get:()=>s[X],set:He=>s[X]=He,enumerable:!0})})}else e.exposed||(e.exposed={});ee&&e.render===st&&(e.render=ee),se!=null&&(e.inheritAttrs=se),Se&&(e.components=Se),ke&&(e.directives=ke),W&&Bo(e)}function Ii(e,t,s=st){J(e)&&(e=sn(e));for(const n in e){const o=e[n];let r;ae(o)?"default"in o?r=hs(o.from||n,o.default,!0):r=hs(o.from||n):r=hs(o),Pe(r)?Object.defineProperty(t,n,{enumerable:!0,configurable:!0,get:()=>r.value,set:l=>r.value=l}):t[n]=r}}function Ln(e,t,s){rt(J(e)?e.map(n=>n.bind(t.proxy)):e.bind(t.proxy),t,s)}function Jo(e,t,s,n){let o=n.includes(".")?Ho(s,n):()=>s[n];if(xe(e)){const r=t[e];Z(r)&&Ws(o,r)}else if(Z(e))Ws(o,e.bind(s));else if(ae(e))if(J(e))e.forEach(r=>Jo(r,t,s,n));else{const r=Z(e.handler)?e.handler.bind(s):t[e.handler];Z(r)&&Ws(o,r,e)}}function qo(e){const t=e.type,{mixins:s,extends:n}=t,{mixins:o,optionsCache:r,config:{optionMergeStrategies:l}}=e.appContext,a=r.get(t);let c;return a?c=a:!o.length&&!s&&!n?c=t:(c={},o.length&&o.forEach(p=>Ss(c,p,l,!0)),Ss(c,t,l)),ae(t)&&r.set(t,c),c}function Ss(e,t,s,n=!1){const{mixins:o,extends:r}=t;r&&Ss(e,r,s,!0),o&&o.forEach(l=>Ss(e,l,s,!0));for(const l in t)if(!(n&&l==="expose")){const a=Oi[l]||s&&s[l];e[l]=a?a(e[l],t[l]):t[l]}return e}const Oi={data:Fn,props:Vn,emits:Vn,methods:Kt,computed:Kt,beforeCreate:Ie,created:Ie,beforeMount:Ie,mounted:Ie,beforeUpdate:Ie,updated:Ie,beforeDestroy:Ie,beforeUnmount:Ie,destroyed:Ie,unmounted:Ie,activated:Ie,deactivated:Ie,errorCaptured:Ie,serverPrefetch:Ie,components:Kt,directives:Kt,watch:Ri,provide:Fn,inject:Di};function Fn(e,t){return t?e?function(){return $e(Z(e)?e.call(this,this):e,Z(t)?t.call(this,this):t)}:t:e}function Di(e,t){return Kt(sn(e),sn(t))}function sn(e){if(J(e)){const t={};for(let s=0;s<e.length;s++)t[e[s]]=e[s];return t}return e}function Ie(e,t){return e?[...new Set([].concat(e,t))]:t}function Kt(e,t){return e?$e(Object.create(null),e,t):t}function Vn(e,t){return e?J(e)&&J(t)?[...new Set([...e,...t])]:$e(Object.create(null),Nn(e),Nn(t??{})):t}function Ri(e,t){if(!e)return t;if(!t)return e;const s=$e(Object.create(null),e);for(const n in t)s[n]=Ie(e[n],t[n]);return s}function Go(){return{app:null,config:{isNativeTag:fo,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 ji=0;function Ni(e,t){return function(n,o=null){Z(n)||(n=$e({},n)),o!=null&&!ae(o)&&(o=null);const r=Go(),l=new WeakSet,a=[];let c=!1;const p=r.app={_uid:ji++,_component:n,_props:o,_container:null,_context:r,_instance:null,version:gl,get config(){return r.config},set config(d){},use(d,...m){return l.has(d)||(d&&Z(d.install)?(l.add(d),d.install(p,...m)):Z(d)&&(l.add(d),d(p,...m))),p},mixin(d){return r.mixins.includes(d)||r.mixins.push(d),p},component(d,m){return m?(r.components[d]=m,p):r.components[d]},directive(d,m){return m?(r.directives[d]=m,p):r.directives[d]},mount(d,m,v){if(!c){const P=p._ceVNode||nt(n,o);return P.appContext=r,v===!0?v="svg":v===!1&&(v=void 0),e(P,d,v),c=!0,p._container=d,d.__vue_app__=p,Ns(P.component)}},onUnmount(d){a.push(d)},unmount(){c&&(rt(a,p._instance,16),e(null,p._container),delete p._container.__vue_app__)},provide(d,m){return r.provides[d]=m,p},runWithContext(d){const m=Rt;Rt=p;try{return d()}finally{Rt=m}}};return p}}let Rt=null;const Li=(e,t)=>t==="modelValue"||t==="model-value"?e.modelModifiers:e[`${t}Modifiers`]||e[`${De(t)}Modifiers`]||e[`${_t(t)}Modifiers`];function Fi(e,t,...s){if(e.isUnmounted)return;const n=e.vnode.props||ue;let o=s;const r=t.startsWith("update:"),l=r&&Li(n,t.slice(7));l&&(l.trim&&(o=s.map(d=>xe(d)?d.trim():d)),l.number&&(o=s.map(Es)));let a,c=n[a=Fs(t)]||n[a=Fs(De(t))];!c&&r&&(c=n[a=Fs(_t(t))]),c&&rt(c,e,6,o);const p=n[a+"Once"];if(p){if(!e.emitted)e.emitted={};else if(e.emitted[a])return;e.emitted[a]=!0,rt(p,e,6,o)}}const Vi=new WeakMap;function Yo(e,t,s=!1){const n=s?Vi:t.emitsCache,o=n.get(e);if(o!==void 0)return o;const r=e.emits;let l={},a=!1;if(!Z(e)){const c=p=>{const d=Yo(p,t,!0);d&&(a=!0,$e(l,d))};!s&&t.mixins.length&&t.mixins.forEach(c),e.extends&&c(e.extends),e.mixins&&e.mixins.forEach(c)}return!r&&!a?(ae(e)&&n.set(e,null),null):(J(r)?r.forEach(c=>l[c]=null):$e(l,r),ae(e)&&n.set(e,l),l)}function Rs(e,t){return!e||!ks(t)?!1:(t=t.slice(2).replace(/Once$/,""),re(e,t[0].toLowerCase()+t.slice(1))||re(e,_t(t))||re(e,t))}function Un(e){const{type:t,vnode:s,proxy:n,withProxy:o,propsOptions:[r],slots:l,attrs:a,emit:c,render:p,renderCache:d,props:m,data:v,setupState:P,ctx:U,inheritAttrs:A}=e,b=_s(e);let E,L;try{if(s.shapeFlag&4){const V=o||n,ee=V;E=et(p.call(ee,V,d,m,P,v,U)),L=a}else{const V=t;E=et(V.length>1?V(m,{attrs:a,slots:l,emit:c}):V(m,null)),L=t.props?a:Ui(a)}}catch(V){Xt.length=0,Os(V,e,1),E=nt(bt)}let B=E;if(L&&A!==!1){const V=Object.keys(L),{shapeFlag:ee}=B;V.length&&ee&7&&(r&&V.some(Ts)&&(L=Hi(L,r)),B=Nt(B,L,!1,!0))}return s.dirs&&(B=Nt(B,null,!1,!0),B.dirs=B.dirs?B.dirs.concat(s.dirs):s.dirs),s.transition&&bn(B,s.transition),E=B,_s(b),E}const Ui=e=>{let t;for(const s in e)(s==="class"||s==="style"||ks(s))&&((t||(t={}))[s]=e[s]);return t},Hi=(e,t)=>{const s={};for(const n in e)(!Ts(n)||!(n.slice(9)in t))&&(s[n]=e[n]);return s};function Bi(e,t,s){const{props:n,children:o,component:r}=e,{props:l,children:a,patchFlag:c}=t,p=r.emitsOptions;if(t.dirs||t.transition)return!0;if(s&&c>=0){if(c&1024)return!0;if(c&16)return n?Hn(n,l,p):!!l;if(c&8){const d=t.dynamicProps;for(let m=0;m<d.length;m++){const v=d[m];if(Zo(l,n,v)&&!Rs(p,v))return!0}}}else return(o||a)&&(!a||!a.$stable)?!0:n===l?!1:n?l?Hn(n,l,p):!0:!!l;return!1}function Hn(e,t,s){const n=Object.keys(t);if(n.length!==Object.keys(e).length)return!0;for(let o=0;o<n.length;o++){const r=n[o];if(Zo(t,e,r)&&!Rs(s,r))return!0}return!1}function Zo(e,t,s){const n=e[s],o=t[s];return s==="style"&&ae(n)&&ae(o)?!Vt(n,o):n!==o}function Wi({vnode:e,parent:t,suspense:s},n){for(;t;){const o=t.subTree;if(o.suspense&&o.suspense.activeBranch===e&&(o.suspense.vnode.el=o.el=n,e=o),o===e)(e=t.vnode).el=n,t=t.parent;else break}s&&s.activeBranch===e&&(s.vnode.el=n)}const Qo={},Xo=()=>Object.create(Qo),er=e=>Object.getPrototypeOf(e)===Qo;function Ki(e,t,s,n=!1){const o={},r=Xo();e.propsDefaults=Object.create(null),tr(e,t,o,r);for(const l in e.propsOptions[0])l in o||(o[l]=void 0);s?e.props=n?o:Gr(o):e.type.props?e.props=o:e.props=r,e.attrs=r}function zi(e,t,s,n){const{props:o,attrs:r,vnode:{patchFlag:l}}=e,a=oe(o),[c]=e.propsOptions;let p=!1;if((n||l>0)&&!(l&16)){if(l&8){const d=e.vnode.dynamicProps;for(let m=0;m<d.length;m++){let v=d[m];if(Rs(e.emitsOptions,v))continue;const P=t[v];if(c)if(re(r,v))P!==r[v]&&(r[v]=P,p=!0);else{const U=De(v);o[U]=nn(c,a,U,P,e,!1)}else P!==r[v]&&(r[v]=P,p=!0)}}}else{tr(e,t,o,r)&&(p=!0);let d;for(const m in a)(!t||!re(t,m)&&((d=_t(m))===m||!re(t,d)))&&(c?s&&(s[m]!==void 0||s[d]!==void 0)&&(o[m]=nn(c,a,m,void 0,e,!0)):delete o[m]);if(r!==a)for(const m in r)(!t||!re(t,m))&&(delete r[m],p=!0)}p&&ct(e.attrs,"set","")}function tr(e,t,s,n){const[o,r]=e.propsOptions;let l=!1,a;if(t)for(let c in t){if(Jt(c))continue;const p=t[c];let d;o&&re(o,d=De(c))?!r||!r.includes(d)?s[d]=p:(a||(a={}))[d]=p:Rs(e.emitsOptions,c)||(!(c in n)||p!==n[c])&&(n[c]=p,l=!0)}if(r){const c=oe(s),p=a||ue;for(let d=0;d<r.length;d++){const m=r[d];s[m]=nn(o,c,m,p[m],e,!re(p,m))}}return l}function nn(e,t,s,n,o,r){const l=e[s];if(l!=null){const a=re(l,"default");if(a&&n===void 0){const c=l.default;if(l.type!==Function&&!l.skipFactory&&Z(c)){const{propsDefaults:p}=o;if(s in p)n=p[s];else{const d=cs(o);n=p[s]=c.call(null,t),d()}}else n=c;o.ce&&o.ce._setProp(s,n)}l[0]&&(r&&!a?n=!1:l[1]&&(n===""||n===_t(s))&&(n=!0))}return n}const Ji=new WeakMap;function sr(e,t,s=!1){const n=s?Ji:t.propsCache,o=n.get(e);if(o)return o;const r=e.props,l={},a=[];let c=!1;if(!Z(e)){const d=m=>{c=!0;const[v,P]=sr(m,t,!0);$e(l,v),P&&a.push(...P)};!s&&t.mixins.length&&t.mixins.forEach(d),e.extends&&d(e.extends),e.mixins&&e.mixins.forEach(d)}if(!r&&!c)return ae(e)&&n.set(e,It),It;if(J(r))for(let d=0;d<r.length;d++){const m=De(r[d]);Bn(m)&&(l[m]=ue)}else if(r)for(const d in r){const m=De(d);if(Bn(m)){const v=r[d],P=l[m]=J(v)||Z(v)?{type:v}:$e({},v),U=P.type;let A=!1,b=!0;if(J(U))for(let E=0;E<U.length;++E){const L=U[E],B=Z(L)&&L.name;if(B==="Boolean"){A=!0;break}else B==="String"&&(b=!1)}else A=Z(U)&&U.name==="Boolean";P[0]=A,P[1]=b,(A||re(P,"default"))&&a.push(m)}}const p=[l,a];return ae(e)&&n.set(e,p),p}function Bn(e){return e[0]!=="$"&&!Jt(e)}const wn=e=>e==="_"||e==="_ctx"||e==="$stable",Sn=e=>J(e)?e.map(et):[et(e)],qi=(e,t,s)=>{if(t._n)return t;const n=ai((...o)=>Sn(t(...o)),s);return n._c=!1,n},nr=(e,t,s)=>{const n=e._ctx;for(const o in e){if(wn(o))continue;const r=e[o];if(Z(r))t[o]=qi(o,r,n);else if(r!=null){const l=Sn(r);t[o]=()=>l}}},or=(e,t)=>{const s=Sn(t);e.slots.default=()=>s},rr=(e,t,s)=>{for(const n in t)(s||!wn(n))&&(e[n]=t[n])},Gi=(e,t,s)=>{const n=e.slots=Xo();if(e.vnode.shapeFlag&32){const o=t._;o?(rr(n,t,s),s&&go(n,"_",o,!0)):nr(t,n)}else t&&or(e,t)},Yi=(e,t,s)=>{const{vnode:n,slots:o}=e;let r=!0,l=ue;if(n.shapeFlag&32){const a=t._;a?s&&a===1?r=!1:rr(o,t,s):(r=!t.$stable,nr(t,o)),l=t}else t&&(or(e,t),l={default:1});if(r)for(const a in o)!wn(a)&&l[a]==null&&delete o[a]},Re=tl;function Zi(e){return Qi(e)}function Qi(e,t){const s=Ps();s.__VUE__=!0;const{insert:n,remove:o,patchProp:r,createElement:l,createText:a,createComment:c,setText:p,setElementText:d,parentNode:m,nextSibling:v,setScopeId:P=st,insertStaticContent:U}=e,A=(u,f,x,$=null,_=null,S=null,R=void 0,D=null,M=!!f.dynamicChildren)=>{if(u===f)return;u&&!Bt(u,f)&&($=q(u),Ce(u,_,S,!0),u=null),f.patchFlag===-2&&(M=!1,f.dynamicChildren=null);const{type:C,ref:K,shapeFlag:N}=f;switch(C){case js:b(u,f,x,$);break;case bt:E(u,f,x,$);break;case gs:u==null&&L(f,x,$,R);break;case ie:Se(u,f,x,$,_,S,R,D,M);break;default:N&1?ee(u,f,x,$,_,S,R,D,M):N&6?ke(u,f,x,$,_,S,R,D,M):(N&64||N&128)&&C.process(u,f,x,$,_,S,R,D,M,xt)}K!=null&&_?Yt(K,u&&u.ref,S,f||u,!f):K==null&&u&&u.ref!=null&&Yt(u.ref,null,S,u,!0)},b=(u,f,x,$)=>{if(u==null)n(f.el=a(f.children),x,$);else{const _=f.el=u.el;f.children!==u.children&&p(_,f.children)}},E=(u,f,x,$)=>{u==null?n(f.el=c(f.children||""),x,$):f.el=u.el},L=(u,f,x,$)=>{[u.el,u.anchor]=U(u.children,f,x,$,u.el,u.anchor)},B=({el:u,anchor:f},x,$)=>{let _;for(;u&&u!==f;)_=v(u),n(u,x,$),u=_;n(f,x,$)},V=({el:u,anchor:f})=>{let x;for(;u&&u!==f;)x=v(u),o(u),u=x;o(f)},ee=(u,f,x,$,_,S,R,D,M)=>{if(f.type==="svg"?R="svg":f.type==="math"&&(R="mathml"),u==null)ge(f,x,$,_,S,R,D,M);else{const C=u.el&&u.el._isVueCE?u.el:null;try{C&&C._beginPatch(),W(u,f,_,S,R,D,M)}finally{C&&C._endPatch()}}},ge=(u,f,x,$,_,S,R,D)=>{let M,C;const{props:K,shapeFlag:N,transition:H,dirs:G}=u;if(M=u.el=l(u.type,S,K&&K.is,K),N&8?d(M,u.children):N&16&&I(u.children,M,null,$,_,zs(u,S),R,D),G&&St(u,null,$,"created"),z(M,u,u.scopeId,R,$),K){for(const ce in K)ce!=="value"&&!Jt(ce)&&r(M,ce,null,K[ce],S,$);"value"in K&&r(M,"value",null,K.value,S),(C=K.onVnodeBeforeMount)&&Ze(C,$,u)}G&&St(u,null,$,"beforeMount");const te=Xi(_,H);te&&H.beforeEnter(M),n(M,f,x),((C=K&&K.onVnodeMounted)||te||G)&&Re(()=>{try{C&&Ze(C,$,u),te&&H.enter(M),G&&St(u,null,$,"mounted")}finally{}},_)},z=(u,f,x,$,_)=>{if(x&&P(u,x),$)for(let S=0;S<$.length;S++)P(u,$[S]);if(_){let S=_.subTree;if(f===S||cr(S.type)&&(S.ssContent===f||S.ssFallback===f)){const R=_.vnode;z(u,R,R.scopeId,R.slotScopeIds,_.parent)}}},I=(u,f,x,$,_,S,R,D,M=0)=>{for(let C=M;C<u.length;C++){const K=u[C]=D?at(u[C]):et(u[C]);A(null,K,f,x,$,_,S,R,D)}},W=(u,f,x,$,_,S,R)=>{const D=f.el=u.el;let{patchFlag:M,dynamicChildren:C,dirs:K}=f;M|=u.patchFlag&16;const N=u.props||ue,H=f.props||ue;let G;if(x&&Ct(x,!1),(G=H.onVnodeBeforeUpdate)&&Ze(G,x,f,u),K&&St(f,u,x,"beforeUpdate"),x&&Ct(x,!0),(N.innerHTML&&H.innerHTML==null||N.textContent&&H.textContent==null)&&d(D,""),C?de(u.dynamicChildren,C,D,x,$,zs(f,_),S):R||X(u,f,D,null,x,$,zs(f,_),S,!1),M>0){if(M&16)se(D,N,H,x,_);else if(M&2&&N.class!==H.class&&r(D,"class",null,H.class,_),M&4&&r(D,"style",N.style,H.style,_),M&8){const te=f.dynamicProps;for(let ce=0;ce<te.length;ce++){const fe=te[ce],ye=N[fe],Te=H[fe];(Te!==ye||fe==="value")&&r(D,fe,ye,Te,_,x)}}M&1&&u.children!==f.children&&d(D,f.children)}else!R&&C==null&&se(D,N,H,x,_);((G=H.onVnodeUpdated)||K)&&Re(()=>{G&&Ze(G,x,f,u),K&&St(f,u,x,"updated")},$)},de=(u,f,x,$,_,S,R)=>{for(let D=0;D<f.length;D++){const M=u[D],C=f[D],K=M.el&&(M.type===ie||!Bt(M,C)||M.shapeFlag&198)?m(M.el):x;A(M,C,K,null,$,_,S,R,!0)}},se=(u,f,x,$,_)=>{if(f!==x){if(f!==ue)for(const S in f)!Jt(S)&&!(S in x)&&r(u,S,f[S],null,_,$);for(const S in x){if(Jt(S))continue;const R=x[S],D=f[S];R!==D&&S!=="value"&&r(u,S,D,R,_,$)}"value"in x&&r(u,"value",f.value,x.value,_)}},Se=(u,f,x,$,_,S,R,D,M)=>{const C=f.el=u?u.el:a(""),K=f.anchor=u?u.anchor:a("");let{patchFlag:N,dynamicChildren:H,slotScopeIds:G}=f;G&&(D=D?D.concat(G):G),u==null?(n(C,x,$),n(K,x,$),I(f.children||[],x,K,_,S,R,D,M)):N>0&&N&64&&H&&u.dynamicChildren&&u.dynamicChildren.length===H.length?(de(u.dynamicChildren,H,x,_,S,R,D),(f.key!=null||_&&f===_.subTree)&&ir(u,f,!0)):X(u,f,x,K,_,S,R,D,M)},ke=(u,f,x,$,_,S,R,D,M)=>{f.slotScopeIds=D,u==null?f.shapeFlag&512?_.ctx.activate(f,x,$,R,M):gt(f,x,$,_,S,R,M):Et(u,f,M)},gt=(u,f,x,$,_,S,R)=>{const D=u.component=al(u,$,_);if(Wo(u)&&(D.ctx.renderer=xt),ul(D,!1,R),D.asyncDep){if(_&&_.registerDep(D,ve,R),!u.el){const M=D.subTree=nt(bt);E(null,M,f,x),u.placeholder=M.el}}else ve(D,u,f,x,_,S,R)},Et=(u,f,x)=>{const $=f.component=u.component;if(Bi(u,f,x))if($.asyncDep&&!$.asyncResolved){le($,f,x);return}else $.next=f,$.update();else f.el=u.el,$.vnode=f},ve=(u,f,x,$,_,S,R)=>{const D=()=>{if(u.isMounted){let{next:N,bu:H,u:G,parent:te,vnode:ce}=u;{const Ge=lr(u);if(Ge){N&&(N.el=ce.el,le(u,N,R)),Ge.asyncDep.then(()=>{Re(()=>{u.isUnmounted||C()},_)});return}}let fe=N,ye;Ct(u,!1),N?(N.el=ce.el,le(u,N,R)):N=ce,H&&ms(H),(ye=N.props&&N.props.onVnodeBeforeUpdate)&&Ze(ye,te,N,ce),Ct(u,!0);const Te=Un(u),qe=u.subTree;u.subTree=Te,A(qe,Te,m(qe.el),q(qe),u,_,S),N.el=Te.el,fe===null&&Wi(u,Te.el),G&&Re(G,_),(ye=N.props&&N.props.onVnodeUpdated)&&Re(()=>Ze(ye,te,N,ce),_)}else{let N;const{el:H,props:G}=f,{bm:te,m:ce,parent:fe,root:ye,type:Te}=u,qe=Zt(f);Ct(u,!1),te&&ms(te),!qe&&(N=G&&G.onVnodeBeforeMount)&&Ze(N,fe,f),Ct(u,!0);{ye.ce&&ye.ce._hasShadowRoot()&&ye.ce._injectChildStyle(Te,u.parent?u.parent.type:void 0);const Ge=u.subTree=Un(u);A(null,Ge,x,$,u,_,S),f.el=Ge.el}if(ce&&Re(ce,_),!qe&&(N=G&&G.onVnodeMounted)){const Ge=f;Re(()=>Ze(N,fe,Ge),_)}(f.shapeFlag&256||fe&&Zt(fe.vnode)&&fe.vnode.shapeFlag&256)&&u.a&&Re(u.a,_),u.isMounted=!0,f=x=$=null}};u.scope.on();const M=u.effect=new bo(D);u.scope.off();const C=u.update=M.run.bind(M),K=u.job=M.runIfDirty.bind(M);K.i=u,K.id=u.uid,M.scheduler=()=>yn(K),Ct(u,!0),C()},le=(u,f,x)=>{f.component=u;const $=u.vnode.props;u.vnode=f,u.next=null,zi(u,f.props,$,x),Yi(u,f.children,x),ft(),On(u),pt()},X=(u,f,x,$,_,S,R,D,M=!1)=>{const C=u&&u.children,K=u?u.shapeFlag:0,N=f.children,{patchFlag:H,shapeFlag:G}=f;if(H>0){if(H&128){Je(C,N,x,$,_,S,R,D,M);return}else if(H&256){He(C,N,x,$,_,S,R,D,M);return}}G&8?(K&16&&g(C,_,S),N!==C&&d(x,N)):K&16?G&16?Je(C,N,x,$,_,S,R,D,M):g(C,_,S,!0):(K&8&&d(x,""),G&16&&I(N,x,$,_,S,R,D,M))},He=(u,f,x,$,_,S,R,D,M)=>{u=u||It,f=f||It;const C=u.length,K=f.length,N=Math.min(C,K);let H;for(H=0;H<N;H++){const G=f[H]=M?at(f[H]):et(f[H]);A(u[H],G,x,null,_,S,R,D,M)}C>K?g(u,_,S,!0,!1,N):I(f,x,$,_,S,R,D,M,N)},Je=(u,f,x,$,_,S,R,D,M)=>{let C=0;const K=f.length;let N=u.length-1,H=K-1;for(;C<=N&&C<=H;){const G=u[C],te=f[C]=M?at(f[C]):et(f[C]);if(Bt(G,te))A(G,te,x,null,_,S,R,D,M);else break;C++}for(;C<=N&&C<=H;){const G=u[N],te=f[H]=M?at(f[H]):et(f[H]);if(Bt(G,te))A(G,te,x,null,_,S,R,D,M);else break;N--,H--}if(C>N){if(C<=H){const G=H+1,te=G<K?f[G].el:$;for(;C<=H;)A(null,f[C]=M?at(f[C]):et(f[C]),x,te,_,S,R,D,M),C++}}else if(C>H)for(;C<=N;)Ce(u[C],_,S,!0),C++;else{const G=C,te=C,ce=new Map;for(C=te;C<=H;C++){const Ne=f[C]=M?at(f[C]):et(f[C]);Ne.key!=null&&ce.set(Ne.key,C)}let fe,ye=0;const Te=H-te+1;let qe=!1,Ge=0;const Ut=new Array(Te);for(C=0;C<Te;C++)Ut[C]=0;for(C=G;C<=N;C++){const Ne=u[C];if(ye>=Te){Ce(Ne,_,S,!0);continue}let Ye;if(Ne.key!=null)Ye=ce.get(Ne.key);else for(fe=te;fe<=H;fe++)if(Ut[fe-te]===0&&Bt(Ne,f[fe])){Ye=fe;break}Ye===void 0?Ce(Ne,_,S,!0):(Ut[Ye-te]=C+1,Ye>=Ge?Ge=Ye:qe=!0,A(Ne,f[Ye],x,null,_,S,R,D,M),ye++)}const Tn=qe?el(Ut):It;for(fe=Tn.length-1,C=Te-1;C>=0;C--){const Ne=te+C,Ye=f[Ne],$n=f[Ne+1],An=Ne+1<K?$n.el||ar($n):$;Ut[C]===0?A(null,Ye,x,An,_,S,R,D,M):qe&&(fe<0||C!==Tn[fe]?Me(Ye,x,An,2):fe--)}}},Me=(u,f,x,$,_=null)=>{const{el:S,type:R,transition:D,children:M,shapeFlag:C}=u;if(C&6){Me(u.component.subTree,f,x,$);return}if(C&128){u.suspense.move(f,x,$);return}if(C&64){R.move(u,f,x,xt);return}if(R===ie){n(S,f,x);for(let N=0;N<M.length;N++)Me(M[N],f,x,$);n(u.anchor,f,x);return}if(R===gs){B(u,f,x);return}if($!==2&&C&1&&D)if($===0)D.beforeEnter(S),n(S,f,x),Re(()=>D.enter(S),_);else{const{leave:N,delayLeave:H,afterLeave:G}=D,te=()=>{u.ctx.isUnmounted?o(S):n(S,f,x)},ce=()=>{S._isLeaving&&S[hi](!0),N(S,()=>{te(),G&&G()})};H?H(S,te,ce):ce()}else n(S,f,x)},Ce=(u,f,x,$=!1,_=!1)=>{const{type:S,props:R,ref:D,children:M,dynamicChildren:C,shapeFlag:K,patchFlag:N,dirs:H,cacheIndex:G,memo:te}=u;if(N===-2&&(_=!1),D!=null&&(ft(),Yt(D,null,x,u,!0),pt()),G!=null&&(f.renderCache[G]=void 0),K&256){f.ctx.deactivate(u);return}const ce=K&1&&H,fe=!Zt(u);let ye;if(fe&&(ye=R&&R.onVnodeBeforeUnmount)&&Ze(ye,f,u),K&6)y(u.component,x,$);else{if(K&128){u.suspense.unmount(x,$);return}ce&&St(u,null,f,"beforeUnmount"),K&64?u.type.remove(u,f,x,xt,$):C&&!C.hasOnce&&(S!==ie||N>0&&N&64)?g(C,f,x,!1,!0):(S===ie&&N&384||!_&&K&16)&&g(M,f,x),$&&F(u)}const Te=te!=null&&G==null;(fe&&(ye=R&&R.onVnodeUnmounted)||ce||Te)&&Re(()=>{ye&&Ze(ye,f,u),ce&&St(u,null,f,"unmounted"),Te&&(u.el=null)},x)},F=u=>{const{type:f,el:x,anchor:$,transition:_}=u;if(f===ie){h(x,$);return}if(f===gs){V(u);return}const S=()=>{o(x),_&&!_.persisted&&_.afterLeave&&_.afterLeave()};if(u.shapeFlag&1&&_&&!_.persisted){const{leave:R,delayLeave:D}=_,M=()=>R(x,S);D?D(u.el,S,M):M()}else S()},h=(u,f)=>{let x;for(;u!==f;)x=v(u),o(u),u=x;o(f)},y=(u,f,x)=>{const{bum:$,scope:_,job:S,subTree:R,um:D,m:M,a:C}=u;Wn(M),Wn(C),$&&ms($),_.stop(),S&&(S.flags|=8,Ce(R,u,f,x)),D&&Re(D,f),Re(()=>{u.isUnmounted=!0},f)},g=(u,f,x,$=!1,_=!1,S=0)=>{for(let R=S;R<u.length;R++)Ce(u[R],f,x,$,_)},q=u=>{if(u.shapeFlag&6)return q(u.component.subTree);if(u.shapeFlag&128)return u.suspense.next();const f=v(u.anchor||u.el),x=f&&f[pi];return x?v(x):f};let be=!1;const O=(u,f,x)=>{let $;u==null?f._vnode&&(Ce(f._vnode,null,null,!0),$=f._vnode.component):A(f._vnode||null,u,f,null,null,null,x),f._vnode=u,be||(be=!0,On($),Lo(),be=!1)},xt={p:A,um:Ce,m:Me,r:F,mt:gt,mc:I,pc:X,pbc:de,n:q,o:e};return{render:O,hydrate:void 0,createApp:Ni(O)}}function zs({type:e,props:t},s){return s==="svg"&&e==="foreignObject"||s==="mathml"&&e==="annotation-xml"&&t&&t.encoding&&t.encoding.includes("html")?void 0:s}function Ct({effect:e,job:t},s){s?(e.flags|=32,t.flags|=4):(e.flags&=-33,t.flags&=-5)}function Xi(e,t){return(!e||e&&!e.pendingBranch)&&t&&!t.persisted}function ir(e,t,s=!1){const n=e.children,o=t.children;if(J(n)&&J(o))for(let r=0;r<n.length;r++){const l=n[r];let a=o[r];a.shapeFlag&1&&!a.dynamicChildren&&((a.patchFlag<=0||a.patchFlag===32)&&(a=o[r]=at(o[r]),a.el=l.el),!s&&a.patchFlag!==-2&&ir(l,a)),a.type===js&&(a.patchFlag===-1&&(a=o[r]=at(a)),a.el=l.el),a.type===bt&&!a.el&&(a.el=l.el)}}function el(e){const t=e.slice(),s=[0];let n,o,r,l,a;const c=e.length;for(n=0;n<c;n++){const p=e[n];if(p!==0){if(o=s[s.length-1],e[o]<p){t[n]=o,s.push(n);continue}for(r=0,l=s.length-1;r<l;)a=r+l>>1,e[s[a]]<p?r=a+1:l=a;p<e[s[r]]&&(r>0&&(t[n]=s[r-1]),s[r]=n)}}for(r=s.length,l=s[r-1];r-- >0;)s[r]=l,l=t[l];return s}function lr(e){const t=e.subTree.component;if(t)return t.asyncDep&&!t.asyncResolved?t:lr(t)}function Wn(e){if(e)for(let t=0;t<e.length;t++)e[t].flags|=8}function ar(e){if(e.placeholder)return e.placeholder;const t=e.component;return t?ar(t.subTree):null}const cr=e=>e.__isSuspense;function tl(e,t){t&&t.pendingBranch?J(e)?t.effects.push(...e):t.effects.push(e):li(e)}const ie=Symbol.for("v-fgt"),js=Symbol.for("v-txt"),bt=Symbol.for("v-cmt"),gs=Symbol.for("v-stc"),Xt=[];let Fe=null;function w(e=!1){Xt.push(Fe=e?null:[])}function sl(){Xt.pop(),Fe=Xt[Xt.length-1]||null}let ns=1;function Kn(e,t=!1){ns+=e,e<0&&Fe&&t&&(Fe.hasOnce=!0)}function ur(e){return e.dynamicChildren=ns>0?Fe||It:null,sl(),ns>0&&Fe&&Fe.push(e),e}function k(e,t,s,n,o,r){return ur(i(e,t,s,n,o,r,!0))}function dr(e,t,s,n,o){return ur(nt(e,t,s,n,o,!0))}function fr(e){return e?e.__v_isVNode===!0:!1}function Bt(e,t){return e.type===t.type&&e.key===t.key}const pr=({key:e})=>e??null,xs=({ref:e,ref_key:t,ref_for:s})=>(typeof e=="number"&&(e=""+e),e!=null?xe(e)||Pe(e)||Z(e)?{i:Le,r:e,k:t,f:!!s}:e:null);function i(e,t=null,s=null,n=0,o=null,r=e===ie?0:1,l=!1,a=!1){const c={__v_isVNode:!0,__v_skip:!0,type:e,props:t,key:t&&pr(t),ref:t&&xs(t),scopeId:Vo,slotScopeIds:null,children:s,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:r,patchFlag:n,dynamicProps:o,dynamicChildren:null,appContext:null,ctx:Le};return a?(Cn(c,s),r&128&&e.normalize(c)):s&&(c.shapeFlag|=xe(s)?8:16),ns>0&&!l&&Fe&&(c.patchFlag>0||r&6)&&c.patchFlag!==32&&Fe.push(c),c}const nt=nl;function nl(e,t=null,s=null,n=0,o=null,r=!1){if((!e||e===zo)&&(e=bt),fr(e)){const a=Nt(e,t,!0);return s&&Cn(a,s),ns>0&&!r&&Fe&&(a.shapeFlag&6?Fe[Fe.indexOf(e)]=a:Fe.push(a)),a.patchFlag=-2,a}if(hl(e)&&(e=e.__vccOpts),t){t=ol(t);let{class:a,style:c}=t;a&&!xe(a)&&(t.class=Y(a)),ae(c)&&(vn(c)&&!J(c)&&(c=$e({},c)),t.style=Ms(c))}const l=xe(e)?1:cr(e)?128:mi(e)?64:ae(e)?4:Z(e)?2:0;return i(e,t,s,n,o,l,r,!0)}function ol(e){return e?vn(e)||er(e)?$e({},e):e:null}function Nt(e,t,s=!1,n=!1){const{props:o,ref:r,patchFlag:l,children:a,transition:c}=e,p=t?rl(o||{},t):o,d={__v_isVNode:!0,__v_skip:!0,type:e.type,props:p,key:p&&pr(p),ref:t&&t.ref?s&&r?J(r)?r.concat(xs(t)):[r,xs(t)]:xs(t):r,scopeId:e.scopeId,slotScopeIds:e.slotScopeIds,children:a,target:e.target,targetStart:e.targetStart,targetAnchor:e.targetAnchor,staticCount:e.staticCount,shapeFlag:e.shapeFlag,patchFlag:t&&e.type!==ie?l===-1?16:l|16:l,dynamicProps:e.dynamicProps,dynamicChildren:e.dynamicChildren,appContext:e.appContext,dirs:e.dirs,transition:c,component:e.component,suspense:e.suspense,ssContent:e.ssContent&&Nt(e.ssContent),ssFallback:e.ssFallback&&Nt(e.ssFallback),placeholder:e.placeholder,el:e.el,anchor:e.anchor,ctx:e.ctx,ce:e.ce};return c&&n&&bn(d,c.clone(d)),d}function Ve(e=" ",t=0){return nt(js,null,e,t)}function Be(e,t){const s=nt(gs,null,e);return s.staticCount=t,s}function Q(e="",t=!1){return t?(w(),dr(bt,null,e)):nt(bt,null,e)}function et(e){return e==null||typeof e=="boolean"?nt(bt):J(e)?nt(ie,null,e.slice()):fr(e)?at(e):nt(js,null,String(e))}function at(e){return e.el===null&&e.patchFlag!==-1||e.memo?e:Nt(e)}function Cn(e,t){let s=0;const{shapeFlag:n}=e;if(t==null)t=null;else if(J(t))s=16;else if(typeof t=="object")if(n&65){const o=t.default;o&&(o._c&&(o._d=!1),Cn(e,o()),o._c&&(o._d=!0));return}else{s=32;const o=t._;!o&&!er(t)?t._ctx=Le:o===3&&Le&&(Le.slots._===1?t._=1:(t._=2,e.patchFlag|=1024))}else Z(t)?(t={default:t,_ctx:Le},s=32):(t=String(t),n&64?(s=16,t=[Ve(t)]):s=8);e.children=t,e.shapeFlag|=s}function rl(...e){const t={};for(let s=0;s<e.length;s++){const n=e[s];for(const o in n)if(o==="class")t.class!==n.class&&(t.class=Y([t.class,n.class]));else if(o==="style")t.style=Ms([t.style,n.style]);else if(ks(o)){const r=t[o],l=n[o];l&&r!==l&&!(J(r)&&r.includes(l))?t[o]=r?[].concat(r,l):l:l==null&&r==null&&!Ts(o)&&(t[o]=l)}else o!==""&&(t[o]=n[o])}return t}function Ze(e,t,s,n=null){rt(e,t,7,[s,n])}const il=Go();let ll=0;function al(e,t,s){const n=e.type,o=(t?t.appContext:e.appContext)||il,r={uid:ll++,vnode:e,type:n,parent:t,appContext:o,root:null,next:null,subTree:null,effect:null,update:null,job:null,scope:new Er(!0),render:null,proxy:null,exposed:null,exposeProxy:null,withProxy:null,provides:t?t.provides:Object.create(o.provides),ids:t?t.ids:["",0,0],accessCache:null,renderCache:[],components:null,directives:null,propsOptions:sr(n,o),emitsOptions:Yo(n,o),emit:null,emitted:null,propsDefaults:ue,inheritAttrs:n.inheritAttrs,ctx:ue,data:ue,props:ue,attrs:ue,slots:ue,refs:ue,setupState:ue,setupContext:null,suspense:s,suspenseId:s?s.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 r.ctx={_:r},r.root=t?t.root:r,r.emit=Fi.bind(null,r),e.ce&&e.ce(r),r}let Ee=null;const cl=()=>Ee||Le;let Cs,on;{const e=Ps(),t=(s,n)=>{let o;return(o=e[s])||(o=e[s]=[]),o.push(n),r=>{o.length>1?o.forEach(l=>l(r)):o[0](r)}};Cs=t("__VUE_INSTANCE_SETTERS__",s=>Ee=s),on=t("__VUE_SSR_SETTERS__",s=>os=s)}const cs=e=>{const t=Ee;return Cs(e),e.scope.on(),()=>{e.scope.off(),Cs(t)}},zn=()=>{Ee&&Ee.scope.off(),Cs(null)};function mr(e){return e.vnode.shapeFlag&4}let os=!1;function ul(e,t=!1,s=!1){t&&on(t);const{props:n,children:o}=e.vnode,r=mr(e);Ki(e,n,r,t),Gi(e,o,s||t);const l=r?dl(e,t):void 0;return t&&on(!1),l}function dl(e,t){const s=e.type;e.accessCache=Object.create(null),e.proxy=new Proxy(e.ctx,Pi);const{setup:n}=s;if(n){ft();const o=e.setupContext=n.length>1?pl(e):null,r=cs(e),l=as(n,e,0,[e.props,o]),a=po(l);if(pt(),r(),(a||e.sp)&&!Zt(e)&&Bo(e),a){if(l.then(zn,zn),t)return l.then(c=>{Jn(e,c)}).catch(c=>{Os(c,e,0)});e.asyncDep=l}else Jn(e,l)}else hr(e)}function Jn(e,t,s){Z(t)?e.type.__ssrInlineRender?e.ssrRender=t:e.render=t:ae(t)&&(e.setupState=Do(t)),hr(e)}function hr(e,t,s){const n=e.type;e.render||(e.render=n.render||st);{const o=cs(e);ft();try{Mi(e)}finally{pt(),o()}}}const fl={get(e,t){return Ae(e,"get",""),e[t]}};function pl(e){const t=s=>{e.exposed=s||{}};return{attrs:new Proxy(e.attrs,fl),slots:e.slots,emit:e.emit,expose:t}}function Ns(e){return e.exposed?e.exposeProxy||(e.exposeProxy=new Proxy(Do(Yr(e.exposed)),{get(t,s){if(s in t)return t[s];if(s in Qt)return Qt[s](e)},has(t,s){return s in t||s in Qt}})):e.proxy}function ml(e,t=!0){return Z(e)?e.displayName||e.name:e.name||t&&e.__name}function hl(e){return Z(e)&&"__vccOpts"in e}const We=(e,t)=>si(e,t,os),gl="3.5.31";/**
61
61
  * @vue/runtime-dom v3.5.31
62
62
  * (c) 2018-present Yuxi (Evan) You and Vue contributors
63
63
  * @license MIT
64
- **/let rn;const qn=typeof window<"u"&&window.trustedTypes;if(qn)try{rn=qn.createPolicy("vue",{createHTML:e=>e})}catch{}const gr=rn?e=>rn.createHTML(e):e=>e,xl="http://www.w3.org/2000/svg",vl="http://www.w3.org/1998/Math/MathML",it=typeof document<"u"?document:null,Gn=it&&it.createElement("template"),yl={insert:(e,t,s)=>{t.insertBefore(e,s||null)},remove:e=>{const t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,s,n)=>{const o=t==="svg"?it.createElementNS(xl,e):t==="mathml"?it.createElementNS(vl,e):s?it.createElement(e,{is:s}):it.createElement(e);return e==="select"&&n&&n.multiple!=null&&o.setAttribute("multiple",n.multiple),o},createText:e=>it.createTextNode(e),createComment:e=>it.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>it.querySelector(e),setScopeId(e,t){e.setAttribute(t,"")},insertStaticContent(e,t,s,n,o,r){const i=s?s.previousSibling:t.lastChild;if(o&&(o===r||o.nextSibling))for(;t.insertBefore(o.cloneNode(!0),s),!(o===r||!(o=o.nextSibling)););else{Gn.innerHTML=gr(n==="svg"?`<svg>${e}</svg>`:n==="mathml"?`<math>${e}</math>`:e);const a=Gn.content;if(n==="svg"||n==="mathml"){const c=a.firstChild;for(;c.firstChild;)a.appendChild(c.firstChild);a.removeChild(c)}t.insertBefore(a,s)}return[i?i.nextSibling:t.firstChild,s?s.previousSibling:t.lastChild]}},bl=Symbol("_vtc");function _l(e,t,s){const n=e[bl];n&&(t=(t?[t,...n]:[...n]).join(" ")),t==null?e.removeAttribute("class"):s?e.setAttribute("class",t):e.className=t}const Yn=Symbol("_vod"),wl=Symbol("_vsh"),Sl=Symbol(""),Cl=/(?:^|;)\s*display\s*:/;function kl(e,t,s){const n=e.style,o=me(s);let r=!1;if(s&&!o){if(t)if(me(t))for(const i of t.split(";")){const a=i.slice(0,i.indexOf(":")).trim();s[a]==null&&vs(n,a,"")}else for(const i in t)s[i]==null&&vs(n,i,"");for(const i in s)i==="display"&&(r=!0),vs(n,i,s[i])}else if(o){if(t!==s){const i=n[Sl];i&&(s+=";"+i),n.cssText=s,r=Cl.test(s)}}else t&&e.removeAttribute("style");Yn in e&&(e[Yn]=r?n.display:"",e[wl]&&(n.display="none"))}const Zn=/\s*!important$/;function vs(e,t,s){if(z(s))s.forEach(n=>vs(e,t,n));else if(s==null&&(s=""),t.startsWith("--"))e.setProperty(t,s);else{const n=Tl(e,t);Zn.test(s)?e.setProperty(_t(n),s.replace(Zn,""),"important"):e[n]=s}}const Qn=["Webkit","Moz","ms"],Js={};function Tl(e,t){const s=Js[t];if(s)return s;let n=De(t);if(n!=="filter"&&n in e)return Js[t]=n;n=As(n);for(let o=0;o<Qn.length;o++){const r=Qn[o]+n;if(r in e)return Js[t]=r}return t}const Xn="http://www.w3.org/1999/xlink";function eo(e,t,s,n,o,r=$r(t)){n&&t.startsWith("xlink:")?s==null?e.removeAttributeNS(Xn,t.slice(6,t.length)):e.setAttributeNS(Xn,t,s):s==null||r&&!xo(s)?e.removeAttribute(t):e.setAttribute(t,r?"":nt(s)?String(s):s)}function to(e,t,s,n,o){if(t==="innerHTML"||t==="textContent"){s!=null&&(e[t]=t==="innerHTML"?gr(s):s);return}const r=e.tagName;if(t==="value"&&r!=="PROGRESS"&&!r.includes("-")){const a=r==="OPTION"?e.getAttribute("value")||"":e.value,c=s==null?e.type==="checkbox"?"on":"":String(s);(a!==c||!("_value"in e))&&(e.value=c),s==null&&e.removeAttribute(t),e._value=s;return}let i=!1;if(s===""||s==null){const a=typeof e[t];a==="boolean"?s=xo(s):s==null&&a==="string"?(s="",i=!0):a==="number"&&(s=0,i=!0)}try{e[t]=s}catch{}i&&e.removeAttribute(o||t)}function yt(e,t,s,n){e.addEventListener(t,s,n)}function $l(e,t,s,n){e.removeEventListener(t,s,n)}const so=Symbol("_vei");function Al(e,t,s,n,o=null){const r=e[so]||(e[so]={}),i=r[t];if(n&&i)i.value=n;else{const[a,c]=El(t);if(n){const h=r[t]=Ml(n,o);yt(e,a,h,c)}else i&&($l(e,a,i,c),r[t]=void 0)}}const no=/(?:Once|Passive|Capture)$/;function El(e){let t;if(no.test(e)){t={};let n;for(;n=e.match(no);)e=e.slice(0,e.length-n[0].length),t[n[0].toLowerCase()]=!0}return[e[2]===":"?e.slice(3):_t(e.slice(2)),t]}let qs=0;const Pl=Promise.resolve(),Il=()=>qs||(Pl.then(()=>qs=0),qs=Date.now());function Ml(e,t){const s=n=>{if(!n._vts)n._vts=Date.now();else if(n._vts<=s.attached)return;ot(Ol(n,s.value),t,5,[n])};return s.value=e,s.attached=Il(),s}function Ol(e,t){if(z(t)){const s=e.stopImmediatePropagation;return e.stopImmediatePropagation=()=>{s.call(e),e._stopped=!0},t.map(n=>o=>!o._stopped&&n&&n(o))}else return t}const oo=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&e.charCodeAt(2)>96&&e.charCodeAt(2)<123,Dl=(e,t,s,n,o,r)=>{const i=o==="svg";t==="class"?_l(e,n,i):t==="style"?kl(e,s,n):ks(t)?Ts(t)||Al(e,t,s,n,r):(t[0]==="."?(t=t.slice(1),!0):t[0]==="^"?(t=t.slice(1),!1):Rl(e,t,n,i))?(to(e,t,n),!e.tagName.includes("-")&&(t==="value"||t==="checked"||t==="selected")&&eo(e,t,n,i,r,t!=="value")):e._isVueCE&&(jl(e,t)||e._def.__asyncLoader&&(/[A-Z]/.test(t)||!me(n)))?to(e,De(t),n,r,t):(t==="true-value"?e._trueValue=n:t==="false-value"&&(e._falseValue=n),eo(e,t,n,i))};function Rl(e,t,s,n){if(n)return!!(t==="innerHTML"||t==="textContent"||t in e&&oo(t)&&Z(s));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 o=e.tagName;if(o==="IMG"||o==="VIDEO"||o==="CANVAS"||o==="SOURCE")return!1}return oo(t)&&me(s)?!1:t in e}function jl(e,t){const s=e._def.props;if(!s)return!1;const n=De(t);return Array.isArray(s)?s.some(o=>De(o)===n):Object.keys(s).some(o=>De(o)===n)}const Lt=e=>{const t=e.props["onUpdate:modelValue"]||!1;return z(t)?s=>hs(t,s):t};function Nl(e){e.target.composing=!0}function ro(e){const t=e.target;t.composing&&(t.composing=!1,t.dispatchEvent(new Event("input")))}const ut=Symbol("_assign");function io(e,t,s){return t&&(e=e.trim()),s&&(e=Es(e)),e}const he={created(e,{modifiers:{lazy:t,trim:s,number:n}},o){e[ut]=Lt(o);const r=n||o.props&&o.props.type==="number";yt(e,t?"change":"input",i=>{i.target.composing||e[ut](io(e.value,s,r))}),(s||r)&&yt(e,"change",()=>{e.value=io(e.value,s,r)}),t||(yt(e,"compositionstart",Nl),yt(e,"compositionend",ro),yt(e,"change",ro))},mounted(e,{value:t}){e.value=t??""},beforeUpdate(e,{value:t,oldValue:s,modifiers:{lazy:n,trim:o,number:r}},i){if(e[ut]=Lt(i),e.composing)return;const a=(r||e.type==="number")&&!/^0\d/.test(e.value)?Es(e.value):e.value,c=t??"";if(a===c)return;const h=e.getRootNode();(h instanceof Document||h instanceof ShadowRoot)&&h.activeElement===e&&e.type!=="range"&&(n&&t===s||o&&e.value.trim()===c)||(e.value=c)}},lo={deep:!0,created(e,t,s){e[ut]=Lt(s),yt(e,"change",()=>{const n=e._modelValue,o=is(e),r=e.checked,i=e[ut];if(z(n)){const a=un(n,o),c=a!==-1;if(r&&!c)i(n.concat(o));else if(!r&&c){const h=[...n];h.splice(a,1),i(h)}}else if(Ft(n)){const a=new Set(n);r?a.add(o):a.delete(o),i(a)}else i(xr(e,r))})},mounted:ao,beforeUpdate(e,t,s){e[ut]=Lt(s),ao(e,t,s)}};function ao(e,{value:t,oldValue:s},n){e._modelValue=t;let o;if(z(t))o=un(t,n.props.value)>-1;else if(Ft(t))o=t.has(n.props.value);else{if(t===s)return;o=Vt(t,xr(e,!0))}e.checked!==o&&(e.checked=o)}const rs={deep:!0,created(e,{value:t,modifiers:{number:s}},n){const o=Ft(t);yt(e,"change",()=>{const r=Array.prototype.filter.call(e.options,i=>i.selected).map(i=>s?Es(is(i)):is(i));e[ut](e.multiple?o?new Set(r):r:r[0]),e._assigning=!0,jo(()=>{e._assigning=!1})}),e[ut]=Lt(n)},mounted(e,{value:t}){co(e,t)},beforeUpdate(e,t,s){e[ut]=Lt(s)},updated(e,{value:t}){e._assigning||co(e,t)}};function co(e,t){const s=e.multiple,n=z(t);if(!(s&&!n&&!Ft(t))){for(let o=0,r=e.options.length;o<r;o++){const i=e.options[o],a=is(i);if(s)if(n){const c=typeof a;c==="string"||c==="number"?i.selected=t.some(h=>String(h)===String(a)):i.selected=un(t,a)>-1}else i.selected=t.has(a);else if(Vt(is(i),t)){e.selectedIndex!==o&&(e.selectedIndex=o);return}}!s&&e.selectedIndex!==-1&&(e.selectedIndex=-1)}}function is(e){return"_value"in e?e._value:e.value}function xr(e,t){const s=t?"_trueValue":"_falseValue";return s in e?e[s]:t}const Ll={esc:"escape",space:" ",up:"arrow-up",left:"arrow-left",right:"arrow-right",down:"arrow-down",delete:"backspace"},zt=(e,t)=>{const s=e._withKeys||(e._withKeys={}),n=t.join(".");return s[n]||(s[n]=(o=>{if(!("key"in o))return;const r=_t(o.key);if(t.some(i=>i===r||Ll[i]===r))return e(o)}))},Fl=$e({patchProp:Dl},yl);let uo;function Vl(){return uo||(uo=Zi(Fl))}const Hl=((...e)=>{const t=Vl().createApp(...e),{mount:s}=t;return t.mount=n=>{const o=Bl(n);if(!o)return;const r=t._component;!Z(r)&&!r.render&&!r.template&&(r.template=o.innerHTML),o.nodeType===1&&(o.textContent="");const i=s(o,!1,Ul(o));return o instanceof Element&&(o.removeAttribute("v-cloak"),o.setAttribute("data-v-app","")),i},t});function Ul(e){if(e instanceof SVGElement)return"svg";if(typeof MathMLElement=="function"&&e instanceof MathMLElement)return"mathml"}function Bl(e){return me(e)?document.querySelector(e):e}let kn="";function Kt(e){kn=e}function _e(){return kn}async function ve(e,t){const s=await fetch(e,{...t,headers:{Authorization:`Bearer ${kn}`,"Content-Type":"application/json",...(t==null?void 0:t.headers)??{}}});if(!s.ok){const n=new Error(s.statusText);throw n.status=s.status,n}return s.json()}const Kl={class:"animate-fade-in"},Wl={key:0,class:"text-center py-12 text-textSecondary"},zl={key:1,class:"text-center text-textSecondary py-12"},Jl={key:2,class:"space-y-3"},ql={class:"flex items-center justify-between"},Gl={class:"flex items-center gap-3"},Yl={class:"font-medium"},Zl={class:"text-accentLight"},Ql={class:"text-textSecondary text-xs"},Xl={key:2,class:"text-muted italic"},ea={class:"text-xs text-textSecondary font-mono"},ta={class:"text-right"},sa={class:"flex items-center gap-2 justify-end"},na={class:"text-xs text-textSecondary"},oa=At({__name:"SessionsTab",props:{status:{}},setup(e){const t=e,s=j([]),n=j(!0);async function o(){n.value=!0;try{const h=await ve("/api/status");s.value=(h.sessions||[]).slice().sort((d,p)=>d.status==="active"&&p.status!=="active"?-1:d.status!=="active"&&p.status==="active"?1:p.lastActivity-d.lastActivity)}finally{n.value=!1}}const r=Be(()=>{var d;return(((d=t.status)==null?void 0:d.sessions)??s.value).slice().sort((p,m)=>p.status==="active"&&m.status!=="active"?-1:p.status!=="active"&&m.status==="active"?1:m.lastActivity-p.lastActivity)});function i(h){const d=Math.floor((Date.now()-h.lastActivity)/6e4);return h.status==="disconnected"?{label:`Disconnected${d>0?` — ${d}m ago`:""}`,color:"text-muted"}:d<5?{label:"Active",color:"text-success"}:d<30?{label:`Idle ${d}m`,color:"text-warn"}:{label:`Dormant ${d}m`,color:"text-danger"}}function a(h){if(!h.lastWaitCallAt)return"";const d=Math.floor((Date.now()-h.lastWaitCallAt)/6e4);return d<5?`Polling — ${d===0?"just now":d+"m ago"}`:`Last poll — ${d}m ago`}function c(h){return h.lastWaitCallAt?Math.floor((Date.now()-h.lastWaitCallAt)/6e4)<5?"text-success":"text-warn":""}return wt(o),(h,d)=>(_(),C("div",Kl,[n.value&&r.value.length===0?(_(),C("div",Wl,"Loading sessions...")):r.value.length===0?(_(),C("div",zl,"No sessions")):(_(),C("div",Jl,[(_(!0),C(oe,null,be(r.value,p=>(_(),C("div",{key:p.mcpSessionId,class:Y(["glass rounded-xl p-4 animate-slide-up",p.status==="disconnected"?"opacity-60":""])},[l("div",ql,[l("div",Gl,[l("span",{class:Y(["w-2.5 h-2.5 rounded-full",p.status==="disconnected"?"bg-muted":Math.floor((Date.now()-p.lastActivity)/6e4)<5?"bg-success":Math.floor((Date.now()-p.lastActivity)/6e4)<30?"bg-warn":"bg-danger"])},null,2),l("div",null,[l("div",Yl,[p.topicName?(_(),C(oe,{key:0},[l("span",Zl,$(p.topicName),1),l("span",Ql," (thread "+$(p.threadId)+")",1)],64)):p.threadId!=null?(_(),C(oe,{key:1},[vt("Thread "+$(p.threadId),1)],64)):(_(),C("span",Xl,"Awaiting start_session…"))]),l("div",ea,$(p.mcpSessionId.slice(0,12))+"...",1)])]),l("div",ta,[l("div",sa,[l("span",{class:Y(["text-sm font-medium",i(p).color])},$(i(p).label),3),a(p)?(_(),C("span",{key:0,class:Y(["text-xs ml-2",c(p)])},$(a(p)),3)):Q("",!0)]),l("div",na,$(p.transportType),1)])])],2))),128))]))]))}}),ra={class:"animate-fade-in"},ia={class:"flex flex-wrap items-center gap-3 mb-4"},la={key:0,class:"text-center py-12 text-textSecondary"},aa={key:1,class:"text-center py-12 text-textSecondary"},ca={key:2,class:"space-y-2"},ua={class:"flex items-start justify-between gap-3"},da={class:"flex-1 min-w-0"},fa={class:"flex items-center gap-2 mb-1"},pa={key:0,class:"type-badge",style:{background:"rgba(239,68,68,0.15)",color:"#f87171"}},ha={key:1,class:"type-badge",style:{background:"rgba(245,158,11,0.15)",color:"#fbbf24"}},ma={class:"text-xs text-textSecondary"},ga={class:"text-sm text-textPrimary leading-relaxed"},xa={class:"flex flex-wrap gap-1.5 mt-2"},va={class:"text-right shrink-0"},ya={class:"text-sm font-mono text-textSecondary"},ba={class:"text-xs text-muted"},_a={class:"text-xs text-muted"},wa=At({__name:"MemoryNotesTab",setup(e){const t=j([]),s=j(!1),n=j(""),o=j("created_at"),r=j("");let i=null;async function a(){s.value=!0;try{const d=r.value.trim();let p;if(d)p=await ve(`/api/search?q=${encodeURIComponent(d)}&limit=50`);else{const m=new URLSearchParams({limit:"50",sort:o.value});n.value&&m.set("type",n.value),p=await ve(`/api/notes?${m}`)}t.value=p}finally{s.value=!1}}function c(){i&&clearTimeout(i),i=setTimeout(a,300)}function h(d){if(!d)return"never";const p=Date.now()-new Date(d).getTime(),m=Math.floor(p/6e4);if(m<1)return"just now";if(m<60)return`${m}m ago`;const k=Math.floor(m/60);return k<24?`${k}h ago`:`${Math.floor(k/24)}d ago`}return wt(a),(d,p)=>(_(),C("div",ra,[l("div",ia,[le(l("input",{"onUpdate:modelValue":p[0]||(p[0]=m=>r.value=m),onInput:c,type:"text",placeholder:"Search notes...",class:"flex-1 min-w-[200px] px-4 py-2 rounded-xl bg-card border border-gray-700 text-sm text-textPrimary placeholder-muted focus:outline-none focus:border-accent transition"},null,544),[[he,r.value]]),le(l("select",{"onUpdate:modelValue":p[1]||(p[1]=m=>n.value=m),onChange:a,class:"px-3 py-2 rounded-xl bg-card border border-gray-700 text-sm text-textPrimary focus:outline-none"},[...p[3]||(p[3]=[Ue('<option value="">All types</option><option value="fact">Facts</option><option value="preference">Preferences</option><option value="pattern">Patterns</option><option value="entity">Entities</option><option value="relationship">Relationships</option>',6)])],544),[[rs,n.value]]),le(l("select",{"onUpdate:modelValue":p[2]||(p[2]=m=>o.value=m),onChange:a,class:"px-3 py-2 rounded-xl bg-card border border-gray-700 text-sm text-textPrimary focus:outline-none"},[...p[4]||(p[4]=[l("option",{value:"created_at"},"Newest",-1),l("option",{value:"confidence"},"Confidence",-1),l("option",{value:"access_count"},"Most accessed",-1)])],544),[[rs,o.value]])]),s.value?(_(),C("div",la,"Loading notes...")):t.value.length===0?(_(),C("div",aa,"No notes found")):(_(),C("div",ca,[(_(!0),C(oe,null,be(t.value,m=>(_(),C("div",{key:m.noteId,class:Y(["glass rounded-xl p-4 animate-fade-in",`priority-${m.priority||0}`])},[l("div",ua,[l("div",da,[l("div",fa,[l("span",{class:Y(["type-badge",`type-${m.type}`])},$(m.type),3),m.priority>=2?(_(),C("span",pa,"HIGH IMPORTANCE")):m.priority===1?(_(),C("span",ha,"NOTABLE")):Q("",!0),l("span",ma,$(m.noteId),1)]),l("p",ga,$(m.content),1),l("div",xa,[(_(!0),C(oe,null,be(m.keywords||[],k=>(_(),C("span",{key:k,class:"text-xs px-2 py-0.5 rounded-full bg-accent/10 text-accentLight"},$(k),1))),128))])]),l("div",va,[l("div",ya,$(((Number(m.confidence)||0)*100).toFixed(0))+"%",1),l("div",ba,$(h(m.createdAt)),1),l("div",_a,$(m.accessCount??0)+" hits",1)])])],2))),128))]))]))}}),Sa={class:"animate-fade-in space-y-6"},Ca={class:"glass rounded-xl p-4"},ka={class:"flex flex-wrap items-center gap-4 mb-4"},Ta={key:0,class:"text-sm text-success"},$a={class:"flex flex-wrap items-center gap-3"},Aa={key:0,class:"text-sm text-success"},Ea={class:"flex flex-wrap items-center gap-3 mb-4"},Pa={key:0,class:"text-sm text-success"},Ia={class:"glass rounded-xl p-6"},Ma={class:"flex flex-wrap items-center justify-between gap-4 mb-4"},Oa={class:"flex items-center gap-2"},Da={key:0,class:"text-sm text-success"},Ra={key:0,class:"mb-3"},ja={class:"mt-4"},Na=["innerHTML"],La={class:"glass rounded-xl p-6"},Fa={class:"flex flex-wrap items-center justify-between gap-4 mb-4"},Va={class:"flex items-center gap-2"},Ha={key:0,class:"text-sm text-success"},Ua={class:"flex gap-2 mb-4"},Ba=["onClick"],Ka={key:0,class:"mb-3"},Wa=["value","placeholder"],za={class:"glass rounded-xl p-6"},Ja={class:"flex flex-wrap items-center justify-between gap-4 mb-4"},qa={class:"flex items-center gap-2"},Ga={key:0,class:"text-sm text-success"},Ya={class:"mb-4 flex flex-wrap items-center gap-3"},Za={class:"flex items-center gap-2"},Qa={class:"font-mono text-sm text-textPrimary"},Xa={key:0,class:"mb-3"},ec={class:"flex flex-wrap gap-2 mb-3"},tc=["onClick"],sc={class:"mt-4"},nc=["innerHTML"],oc=At({__name:"TemplatesTab",setup(e){function t(N){return N.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/\{\{([A-Z_]+)\}\}/g,'<span class="text-accentLight" style="background:rgba(99,102,241,0.1);padding:0 2px;border-radius:3px">{{$1}}</span>')}const s=j("copilot"),n=j(""),o=j(""),r=j(""),i=j(50),a=j(""),c=j(""),h=j(!0),d=j(""),p=j(!1),m=j({}),k=j("copilot"),V=j(""),A=j(""),H=j(!0),O=j(""),L=j(!1),W=j([]),F=j("");async function re(){await Promise.all([we(),J(),M(),K(),de()])}async function we(){try{const N=await ve("/api/settings/agent-type");s.value=N.agentType||"copilot"}catch{}}async function J(){try{const N=await ve("/api/settings/claude-mcp-config");o.value=N.path||""}catch{}}async function M(){try{const N=await ve("/api/settings/bootstrap-message-count");i.value=N.count??50}catch{}}async function K(){try{const N=await ve("/api/templates");if(N.templates&&N.templates.length>0){const g=N.templates[0];c.value=g.content||"",h.value=g.isDefault??!0}N.agentReminders&&(m.value=N.agentReminders)}catch{}}async function de(){try{const[N,g,y]=await Promise.all([ve("/api/templates/drive"),ve("/api/templates/drive-presets"),ve("/api/settings/dmn-activation-hours")]);W.value=g.presets||[],F.value=String(y.value??"not set"),N.custom?(A.value=N.custom,H.value=!1):(A.value=N.default||"",H.value=!0)}catch{}}async function te(){try{await ve("/api/settings/agent-type",{method:"POST",body:JSON.stringify({agentType:s.value})}),await ve("/api/templates/reminders",{method:"DELETE"}),n.value="Saved ✓",setTimeout(()=>{n.value=""},3e3),await K()}catch(N){n.value="Error: "+N.message}}async function Se(){try{await ve("/api/settings/bootstrap-message-count",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({count:i.value})}),a.value="Saved ✓",setTimeout(()=>{a.value=""},3e3)}catch(N){a.value="Error: "+N.message}}async function ke(){const N=o.value.trim();if(!N){r.value="Path is empty",setTimeout(()=>{r.value=""},3e3);return}try{await ve("/api/settings/claude-mcp-config",{method:"POST",body:JSON.stringify({path:N})}),r.value="Saved ✓",setTimeout(()=>{r.value=""},3e3)}catch(g){r.value="Error: "+g.message}}async function mt(){try{const N=await fetch("/api/templates/reminders",{method:"POST",headers:{Authorization:`Bearer ${_e()}`,"Content-Type":"application/json"},body:JSON.stringify({content:c.value})});if(!N.ok)throw new Error(N.statusText);h.value=!1,d.value="Saved ✓",setTimeout(()=>{d.value=""},3e3)}catch(N){d.value="Error: "+N.message}}async function Et(){if(confirm("Reset to default template? Your customizations will be lost."))try{const N=await fetch("/api/templates/reminders",{method:"DELETE",headers:{Authorization:`Bearer ${_e()}`}});if(!N.ok)throw new Error(N.statusText);await K(),d.value="Reset to default ✓",setTimeout(()=>{d.value=""},3e3)}catch(N){d.value="Error: "+N.message}}async function ge(){var y;const N=k.value,g=((y=m.value[N])==null?void 0:y.content)??"";try{const x=await fetch(`/api/templates/reminders-${N}`,{method:"POST",headers:{Authorization:`Bearer ${_e()}`,"Content-Type":"application/json"},body:JSON.stringify({content:g})});if(!x.ok)throw new Error(x.statusText);m.value[N]={content:g,isDefault:!1},V.value=`Saved ${N} ✓`,setTimeout(()=>{V.value=""},3e3)}catch(x){V.value="Error: "+x.message}}async function ie(){const N=k.value;if(confirm(`Reset ${N} agent reminder? The custom template will be removed.`))try{const g=await fetch(`/api/templates/reminders-${N}`,{method:"DELETE",headers:{Authorization:`Bearer ${_e()}`}});if(!g.ok)throw new Error(g.statusText);await K(),V.value=`Reset ${N} ✓`,setTimeout(()=>{V.value=""},3e3)}catch(g){V.value="Error: "+g.message}}async function X(){const N=A.value;if(!N.trim()){O.value="Template is empty — load a preset first",setTimeout(()=>{O.value=""},3e3);return}try{const g=await fetch("/api/templates/drive",{method:"POST",headers:{Authorization:`Bearer ${_e()}`,"Content-Type":"application/json"},body:JSON.stringify({content:N})});if(!g.ok)throw new Error(g.statusText);H.value=!1,O.value="Saved ✓",setTimeout(()=>{O.value=""},3e3)}catch(g){O.value="Error: "+g.message}}async function He(){if(confirm("Reset drive template? The custom template will be removed."))try{const N=await fetch("/api/templates/drive",{method:"DELETE",headers:{Authorization:`Bearer ${_e()}`}});if(!N.ok)throw new Error(N.statusText);await de(),O.value="Reset to default ✓",setTimeout(()=>{O.value=""},3e3)}catch(N){O.value="Error: "+N.message}}function ze(N){A.value=N.content,H.value=!1}const Ie=Be(()=>t(c.value)),Ce=Be(()=>A.value?t(A.value):'<span style="color:#6b7280">(no template loaded)</span>');return wt(re),(N,g)=>{var y,x;return _(),C("div",Sa,[l("div",Ca,[l("div",ka,[g[9]||(g[9]=l("label",{class:"text-sm font-medium text-textSecondary"},"Agent Type",-1)),le(l("select",{"onUpdate:modelValue":g[0]||(g[0]=q=>s.value=q),onChange:te,class:"px-3 py-2 rounded-xl bg-card border border-gray-700 text-sm text-textPrimary focus:outline-none focus:border-accent transition"},[...g[8]||(g[8]=[Ue('<option value="copilot">Copilot</option><option value="copilot_claude">Copilot (Claude)</option><option value="copilot_codex">Copilot (Codex)</option><option value="claude">Claude</option><option value="cursor">Cursor</option><option value="codex">Codex</option><option value="openai_codex">OpenAI Codex</option>',7)])],544),[[rs,s.value]]),n.value?(_(),C("span",Ta,$(n.value),1)):Q("",!0),g[10]||(g[10]=l("span",{class:"text-xs text-muted"},"Changes which default reminders template is used",-1))]),l("div",$a,[g[11]||(g[11]=l("label",{class:"text-sm font-medium text-textSecondary"},"Claude MCP Config Path",-1)),le(l("input",{"onUpdate:modelValue":g[1]||(g[1]=q=>o.value=q),type:"text",placeholder:"~/.claude/settings.json",class:"flex-1 min-w-[260px] px-3 py-2 rounded-xl bg-card border border-gray-700 text-sm text-textPrimary placeholder-muted font-mono focus:outline-none focus:border-accent transition"},null,512),[[he,o.value]]),l("button",{onClick:ke,class:"px-4 py-2 rounded-xl bg-accent hover:bg-accentLight text-white text-sm font-medium transition"},"Save"),r.value?(_(),C("span",Aa,$(r.value),1)):Q("",!0)]),l("div",Ea,[g[12]||(g[12]=l("label",{class:"text-sm font-medium text-textSecondary"},"Bootstrap Messages",-1)),le(l("input",{"onUpdate:modelValue":g[2]||(g[2]=q=>i.value=q),type:"number",min:"0",max:"500",class:"w-24 px-3 py-2 rounded-xl bg-card border border-gray-700 text-text text-sm focus:border-accent focus:outline-none"},null,512),[[he,i.value,void 0,{number:!0}]]),l("button",{onClick:Se,class:"px-4 py-2 rounded-xl bg-accent text-white text-sm font-medium hover:bg-accent/80 transition-colors"},"Save"),a.value?(_(),C("span",Pa,$(a.value),1)):Q("",!0),g[13]||(g[13]=l("span",{class:"text-xs text-muted"},"Number of recent messages injected as warm context (0 = off)",-1))])]),l("div",Ia,[l("div",Ma,[g[14]||(g[14]=l("div",null,[l("h3",{class:"text-lg font-semibold"},"Reminders Template"),l("p",{class:"text-sm text-textSecondary mt-1"},"Edit the system prompt template sent with every reminder")],-1)),l("div",Oa,[d.value?(_(),C("span",Da,$(d.value),1)):Q("",!0),l("button",{onClick:Et,class:"px-4 py-2 rounded-xl bg-card hover:bg-cardHover border border-gray-700 text-sm text-textSecondary hover:text-textPrimary transition"},"Reset to Default"),l("button",{onClick:mt,class:"px-4 py-2 rounded-xl bg-accent hover:bg-accentLight text-white text-sm font-medium transition"},"Save")])]),h.value?(_(),C("div",Ra,[...g[15]||(g[15]=[l("span",{class:"type-badge",style:{background:"rgba(245,158,11,0.15)",color:"#fbbf24"}},"USING DEFAULT — edit and save to customize",-1)])])):Q("",!0),le(l("textarea",{"onUpdate:modelValue":g[3]||(g[3]=q=>c.value=q),rows:"20",spellcheck:"false",class:"w-full px-4 py-3 rounded-xl bg-surface border border-gray-700 text-textPrimary font-mono text-sm leading-relaxed focus:outline-none focus:border-accent focus:ring-1 focus:ring-accent transition resize-y",placeholder:"Loading..."},null,512),[[he,c.value]]),l("div",ja,[l("div",{class:"flex items-center gap-2 mb-2 cursor-pointer select-none",onClick:g[4]||(g[4]=q=>p.value=!p.value)},[(_(),C("svg",{class:Y(["w-4 h-4 text-textSecondary transition-transform",p.value?"rotate-90":""]),fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[...g[16]||(g[16]=[l("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M9 5l7 7-7 7"},null,-1)])],2)),g[17]||(g[17]=l("span",{class:"text-sm font-medium text-textSecondary"},"Preview with highlighted variables",-1))]),p.value?(_(),C("div",{key:0,class:"glass rounded-xl p-4 font-mono text-sm leading-relaxed whitespace-pre-wrap break-words",innerHTML:Ie.value},null,8,Na)):Q("",!0)]),g[18]||(g[18]=Ue('<details class="mt-4"><summary class="text-sm font-medium text-textSecondary cursor-pointer hover:text-textPrimary transition">Available Variables</summary><div class="mt-2 glass rounded-xl p-4 grid grid-cols-1 sm:grid-cols-2 gap-2 text-sm"><div><code class="text-accentLight">{{OPERATOR_MESSAGE}}</code> <span class="text-textSecondary">— latest operator message</span></div><div><code class="text-accentLight">{{THREAD_ID}}</code> <span class="text-textSecondary">— Telegram thread ID</span></div><div><code class="text-accentLight">{{TIME}}</code> <span class="text-textSecondary">— formatted timestamp</span></div><div><code class="text-accentLight">{{UPTIME}}</code> <span class="text-textSecondary">— session uptime</span></div><div><code class="text-accentLight">{{VERSION}}</code> <span class="text-textSecondary">— package version</span></div><div><code class="text-accentLight">{{MODE}}</code> <span class="text-textSecondary">— &quot;autonomous&quot; or &quot;standard&quot;</span></div></div></details>',1))]),l("div",La,[l("div",Fa,[g[19]||(g[19]=l("div",null,[l("h3",{class:"text-lg font-semibold"},"Agent-Specific Reminders"),l("p",{class:"text-sm text-textSecondary mt-1"},"Appended after the base reminders template — per agent type")],-1)),l("div",Va,[V.value?(_(),C("span",Ha,$(V.value),1)):Q("",!0),l("button",{onClick:ie,class:"px-4 py-2 rounded-xl bg-card hover:bg-cardHover border border-gray-700 text-sm text-textSecondary hover:text-textPrimary transition"},"Reset"),l("button",{onClick:ge,class:"px-4 py-2 rounded-xl bg-accent hover:bg-accentLight text-white text-sm font-medium transition"},"Save")])]),l("div",Ua,[(_(),C(oe,null,be(["copilot","claude","cursor","codex"],q=>l("button",{key:q,onClick:ye=>k.value=q,class:Y(["px-4 py-2 rounded-xl text-sm font-medium transition",k.value===q?"bg-accent text-white":"bg-card hover:bg-cardHover border border-gray-700 text-textSecondary hover:text-textPrimary"])},$(q.charAt(0).toUpperCase()+q.slice(1)),11,Ba)),64))]),((y=m.value[k.value])==null?void 0:y.isDefault)!==!1?(_(),C("div",Ka,[...g[20]||(g[20]=[l("span",{class:"type-badge",style:{background:"rgba(245,158,11,0.15)",color:"#fbbf24"}},"NO CUSTOM OVERRIDE — this agent uses only the base reminders",-1)])])):Q("",!0),l("textarea",{value:((x=m.value[k.value])==null?void 0:x.content)??"",onInput:g[5]||(g[5]=q=>{const ye=q.target;m.value[k.value]={content:ye.value,isDefault:!1}}),rows:"8",spellcheck:"false",class:"w-full px-4 py-3 rounded-xl bg-surface border border-gray-700 text-textPrimary font-mono text-sm leading-relaxed focus:outline-none focus:border-accent focus:ring-1 focus:ring-accent transition resize-y",placeholder:`Add ${k.value}-specific reminders (e.g. orchestrator hints, subagent policies)...`},null,40,Wa)]),l("div",za,[l("div",Ja,[g[21]||(g[21]=l("div",null,[l("h3",{class:"text-lg font-semibold"},"Drive Framing Template"),l("p",{class:"text-sm text-textSecondary mt-1"},"Customize the autonomous drive prompt sent when the operator is away")],-1)),l("div",qa,[O.value?(_(),C("span",Ga,$(O.value),1)):Q("",!0),l("button",{onClick:He,class:"px-4 py-2 rounded-xl bg-card hover:bg-cardHover border border-gray-700 text-sm text-textSecondary hover:text-textPrimary transition"},"Reset to Default"),l("button",{onClick:X,class:"px-4 py-2 rounded-xl bg-accent hover:bg-accentLight text-white text-sm font-medium transition"},"Save")])]),l("div",Ya,[g[23]||(g[23]=l("label",{class:"text-sm text-textSecondary"},"Drive Activation Period:",-1)),l("div",Za,[l("span",Qa,$(F.value),1),g[22]||(g[22]=l("span",{class:"text-sm text-textSecondary"},"hours",-1))]),g[24]||(g[24]=l("span",{class:"text-xs text-muted"},"(informational — set via DMN_ACTIVATION_HOURS env var)",-1))]),H.value?(_(),C("div",Xa,[...g[25]||(g[25]=[l("span",{class:"type-badge",style:{background:"rgba(245,158,11,0.15)",color:"#fbbf24"}},"(Default — edit to override)",-1)])])):Q("",!0),l("div",ec,[g[26]||(g[26]=l("span",{class:"text-sm text-textSecondary self-center"},"Presets:",-1)),(_(!0),C(oe,null,be(W.value,q=>(_(),C("button",{key:q.key,onClick:ye=>ze(q),class:"px-3 py-1.5 rounded-lg bg-card hover:bg-cardHover border border-gray-700 text-xs text-textSecondary hover:text-textPrimary transition"},$(q.label),9,tc))),128))]),le(l("textarea",{"onUpdate:modelValue":g[6]||(g[6]=q=>A.value=q),rows:"15",spellcheck:"false",class:"w-full px-4 py-3 rounded-xl bg-surface border border-gray-700 text-textPrimary font-mono text-sm leading-relaxed focus:outline-none focus:border-accent focus:ring-1 focus:ring-accent transition resize-y",placeholder:"Load a preset or type a custom drive template..."},null,512),[[he,A.value]]),l("div",sc,[l("div",{class:"flex items-center gap-2 mb-2 cursor-pointer select-none",onClick:g[7]||(g[7]=q=>L.value=!L.value)},[(_(),C("svg",{class:Y(["w-4 h-4 text-textSecondary transition-transform",L.value?"rotate-90":""]),fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[...g[27]||(g[27]=[l("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M9 5l7 7-7 7"},null,-1)])],2)),g[28]||(g[28]=l("span",{class:"text-sm font-medium text-textSecondary"},"Preview with sample values",-1))]),L.value?(_(),C("div",{key:0,class:"glass rounded-xl p-4 font-mono text-sm leading-relaxed whitespace-pre-wrap break-words",innerHTML:Ce.value},null,8,nc)):Q("",!0)]),g[29]||(g[29]=Ue('<details class="mt-4"><summary class="text-sm font-medium text-textSecondary cursor-pointer hover:text-textPrimary transition">Available Variables</summary><div class="mt-2 glass rounded-xl p-4 grid grid-cols-1 sm:grid-cols-2 gap-2 text-sm"><div><code class="text-accentLight">{{IDLE_HOURS}}</code> <span class="text-textSecondary">— hours since last operator interaction</span></div><div><code class="text-accentLight">{{TIME}}</code> <span class="text-textSecondary">— ISO timestamp</span></div><div><code class="text-accentLight">{{PROBABILITY}}</code> <span class="text-textSecondary">— drive activation probability (0.2–1.0)</span></div></div></details>',1))])])}}}),rc={class:"animate-fade-in"},ic={class:"glass rounded-xl p-6 mb-6"},lc={class:"flex flex-wrap items-center justify-between gap-4 mb-4"},ac={key:0,class:"glass rounded-xl p-4 mb-4 border border-accent/30"},cc={class:"grid grid-cols-1 sm:grid-cols-2 gap-3 mb-3"},uc={class:"flex items-center gap-4 mb-3"},dc={class:"flex items-center gap-2 text-sm text-textSecondary cursor-pointer"},fc={class:"flex items-center gap-2"},pc={key:0,class:"text-sm text-warn"},hc={key:1,class:"text-center py-8 text-textSecondary text-sm"},mc={key:2,class:"text-center text-textSecondary py-12"},gc={key:3,class:"space-y-2"},xc=["onClick"],vc={class:"flex items-start justify-between gap-3"},yc={class:"flex-1 min-w-0"},bc={class:"flex items-center gap-2 mb-1"},_c={class:"font-medium text-sm"},wc={key:0,class:"type-badge",style:{background:"rgba(245,158,11,0.15)",color:"#fbbf24"}},Sc={class:"flex flex-wrap gap-1.5 mt-1"},Cc=["title"],kc={key:0,class:"glass rounded-xl p-6"},Tc={class:"flex flex-wrap items-center justify-between gap-4 mb-4"},$c={class:"text-lg font-semibold"},Ac={class:"text-sm text-textSecondary mt-1"},Ec={class:"flex items-center gap-2"},Pc={key:0,class:"text-sm text-success"},Ic={key:1,class:"text-sm text-warn"},Mc={class:"grid grid-cols-1 sm:grid-cols-3 gap-3 mb-4"},Oc=["value"],Dc={class:"flex items-end"},Rc={class:"flex items-center gap-2 text-sm text-textSecondary cursor-pointer pb-2"},jc=At({__name:"SkillsTab",setup(e){const t=j([]),s=j(!0),n=j(null),o=j(""),r=j(""),i=j(!1),a=j(""),c=j(""),h=j(!1),d=j(""),p=j(""),m=j(!1),k=j("");async function V(){s.value=!0;try{const J=await ve("/api/skills");t.value=J.skills||[]}finally{s.value=!1}}function A(J){return J?J.includes(".remote-copilot-mcp")&&J.includes("skills")?"user":J.endsWith(".default.md")?"default":J.endsWith(".skill.md")?"project":"unknown":"unknown"}function H(J){const M={user:"background:rgba(99,102,241,0.15);color:#818cf8",default:"background:rgba(107,114,128,0.15);color:#9ca3af",project:"background:rgba(34,197,94,0.15);color:#4ade80",unknown:"background:rgba(107,114,128,0.15);color:#9ca3af"};return M[J]||M.unknown}function O(J){n.value=J,o.value=J.content,r.value=(J.triggers||[]).join(", "),i.value=!!J.replacesOrchestrator,h.value=!1}function L(){n.value=null,c.value=""}function W(J,M,K,de){let te=`---
65
- name: ${J}
64
+ **/let rn;const qn=typeof window<"u"&&window.trustedTypes;if(qn)try{rn=qn.createPolicy("vue",{createHTML:e=>e})}catch{}const gr=rn?e=>rn.createHTML(e):e=>e,xl="http://www.w3.org/2000/svg",vl="http://www.w3.org/1998/Math/MathML",lt=typeof document<"u"?document:null,Gn=lt&&lt.createElement("template"),yl={insert:(e,t,s)=>{t.insertBefore(e,s||null)},remove:e=>{const t=e.parentNode;t&&t.removeChild(e)},createElement:(e,t,s,n)=>{const o=t==="svg"?lt.createElementNS(xl,e):t==="mathml"?lt.createElementNS(vl,e):s?lt.createElement(e,{is:s}):lt.createElement(e);return e==="select"&&n&&n.multiple!=null&&o.setAttribute("multiple",n.multiple),o},createText:e=>lt.createTextNode(e),createComment:e=>lt.createComment(e),setText:(e,t)=>{e.nodeValue=t},setElementText:(e,t)=>{e.textContent=t},parentNode:e=>e.parentNode,nextSibling:e=>e.nextSibling,querySelector:e=>lt.querySelector(e),setScopeId(e,t){e.setAttribute(t,"")},insertStaticContent(e,t,s,n,o,r){const l=s?s.previousSibling:t.lastChild;if(o&&(o===r||o.nextSibling))for(;t.insertBefore(o.cloneNode(!0),s),!(o===r||!(o=o.nextSibling)););else{Gn.innerHTML=gr(n==="svg"?`<svg>${e}</svg>`:n==="mathml"?`<math>${e}</math>`:e);const a=Gn.content;if(n==="svg"||n==="mathml"){const c=a.firstChild;for(;c.firstChild;)a.appendChild(c.firstChild);a.removeChild(c)}t.insertBefore(a,s)}return[l?l.nextSibling:t.firstChild,s?s.previousSibling:t.lastChild]}},bl=Symbol("_vtc");function _l(e,t,s){const n=e[bl];n&&(t=(t?[t,...n]:[...n]).join(" ")),t==null?e.removeAttribute("class"):s?e.setAttribute("class",t):e.className=t}const Yn=Symbol("_vod"),wl=Symbol("_vsh"),Sl=Symbol(""),Cl=/(?:^|;)\s*display\s*:/;function kl(e,t,s){const n=e.style,o=xe(s);let r=!1;if(s&&!o){if(t)if(xe(t))for(const l of t.split(";")){const a=l.slice(0,l.indexOf(":")).trim();s[a]==null&&vs(n,a,"")}else for(const l in t)s[l]==null&&vs(n,l,"");for(const l in s)l==="display"&&(r=!0),vs(n,l,s[l])}else if(o){if(t!==s){const l=n[Sl];l&&(s+=";"+l),n.cssText=s,r=Cl.test(s)}}else t&&e.removeAttribute("style");Yn in e&&(e[Yn]=r?n.display:"",e[wl]&&(n.display="none"))}const Zn=/\s*!important$/;function vs(e,t,s){if(J(s))s.forEach(n=>vs(e,t,n));else if(s==null&&(s=""),t.startsWith("--"))e.setProperty(t,s);else{const n=Tl(e,t);Zn.test(s)?e.setProperty(_t(n),s.replace(Zn,""),"important"):e[n]=s}}const Qn=["Webkit","Moz","ms"],Js={};function Tl(e,t){const s=Js[t];if(s)return s;let n=De(t);if(n!=="filter"&&n in e)return Js[t]=n;n=As(n);for(let o=0;o<Qn.length;o++){const r=Qn[o]+n;if(r in e)return Js[t]=r}return t}const Xn="http://www.w3.org/1999/xlink";function eo(e,t,s,n,o,r=$r(t)){n&&t.startsWith("xlink:")?s==null?e.removeAttributeNS(Xn,t.slice(6,t.length)):e.setAttributeNS(Xn,t,s):s==null||r&&!xo(s)?e.removeAttribute(t):e.setAttribute(t,r?"":ot(s)?String(s):s)}function to(e,t,s,n,o){if(t==="innerHTML"||t==="textContent"){s!=null&&(e[t]=t==="innerHTML"?gr(s):s);return}const r=e.tagName;if(t==="value"&&r!=="PROGRESS"&&!r.includes("-")){const a=r==="OPTION"?e.getAttribute("value")||"":e.value,c=s==null?e.type==="checkbox"?"on":"":String(s);(a!==c||!("_value"in e))&&(e.value=c),s==null&&e.removeAttribute(t),e._value=s;return}let l=!1;if(s===""||s==null){const a=typeof e[t];a==="boolean"?s=xo(s):s==null&&a==="string"?(s="",l=!0):a==="number"&&(s=0,l=!0)}try{e[t]=s}catch{}l&&e.removeAttribute(o||t)}function yt(e,t,s,n){e.addEventListener(t,s,n)}function $l(e,t,s,n){e.removeEventListener(t,s,n)}const so=Symbol("_vei");function Al(e,t,s,n,o=null){const r=e[so]||(e[so]={}),l=r[t];if(n&&l)l.value=n;else{const[a,c]=El(t);if(n){const p=r[t]=Il(n,o);yt(e,a,p,c)}else l&&($l(e,a,l,c),r[t]=void 0)}}const no=/(?:Once|Passive|Capture)$/;function El(e){let t;if(no.test(e)){t={};let n;for(;n=e.match(no);)e=e.slice(0,e.length-n[0].length),t[n[0].toLowerCase()]=!0}return[e[2]===":"?e.slice(3):_t(e.slice(2)),t]}let qs=0;const Pl=Promise.resolve(),Ml=()=>qs||(Pl.then(()=>qs=0),qs=Date.now());function Il(e,t){const s=n=>{if(!n._vts)n._vts=Date.now();else if(n._vts<=s.attached)return;rt(Ol(n,s.value),t,5,[n])};return s.value=e,s.attached=Ml(),s}function Ol(e,t){if(J(t)){const s=e.stopImmediatePropagation;return e.stopImmediatePropagation=()=>{s.call(e),e._stopped=!0},t.map(n=>o=>!o._stopped&&n&&n(o))}else return t}const oo=e=>e.charCodeAt(0)===111&&e.charCodeAt(1)===110&&e.charCodeAt(2)>96&&e.charCodeAt(2)<123,Dl=(e,t,s,n,o,r)=>{const l=o==="svg";t==="class"?_l(e,n,l):t==="style"?kl(e,s,n):ks(t)?Ts(t)||Al(e,t,s,n,r):(t[0]==="."?(t=t.slice(1),!0):t[0]==="^"?(t=t.slice(1),!1):Rl(e,t,n,l))?(to(e,t,n),!e.tagName.includes("-")&&(t==="value"||t==="checked"||t==="selected")&&eo(e,t,n,l,r,t!=="value")):e._isVueCE&&(jl(e,t)||e._def.__asyncLoader&&(/[A-Z]/.test(t)||!xe(n)))?to(e,De(t),n,r,t):(t==="true-value"?e._trueValue=n:t==="false-value"&&(e._falseValue=n),eo(e,t,n,l))};function Rl(e,t,s,n){if(n)return!!(t==="innerHTML"||t==="textContent"||t in e&&oo(t)&&Z(s));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 o=e.tagName;if(o==="IMG"||o==="VIDEO"||o==="CANVAS"||o==="SOURCE")return!1}return oo(t)&&xe(s)?!1:t in e}function jl(e,t){const s=e._def.props;if(!s)return!1;const n=De(t);return Array.isArray(s)?s.some(o=>De(o)===n):Object.keys(s).some(o=>De(o)===n)}const Lt=e=>{const t=e.props["onUpdate:modelValue"]||!1;return J(t)?s=>ms(t,s):t};function Nl(e){e.target.composing=!0}function ro(e){const t=e.target;t.composing&&(t.composing=!1,t.dispatchEvent(new Event("input")))}const dt=Symbol("_assign");function io(e,t,s){return t&&(e=e.trim()),s&&(e=Es(e)),e}const me={created(e,{modifiers:{lazy:t,trim:s,number:n}},o){e[dt]=Lt(o);const r=n||o.props&&o.props.type==="number";yt(e,t?"change":"input",l=>{l.target.composing||e[dt](io(e.value,s,r))}),(s||r)&&yt(e,"change",()=>{e.value=io(e.value,s,r)}),t||(yt(e,"compositionstart",Nl),yt(e,"compositionend",ro),yt(e,"change",ro))},mounted(e,{value:t}){e.value=t??""},beforeUpdate(e,{value:t,oldValue:s,modifiers:{lazy:n,trim:o,number:r}},l){if(e[dt]=Lt(l),e.composing)return;const a=(r||e.type==="number")&&!/^0\d/.test(e.value)?Es(e.value):e.value,c=t??"";if(a===c)return;const p=e.getRootNode();(p instanceof Document||p instanceof ShadowRoot)&&p.activeElement===e&&e.type!=="range"&&(n&&t===s||o&&e.value.trim()===c)||(e.value=c)}},lo={deep:!0,created(e,t,s){e[dt]=Lt(s),yt(e,"change",()=>{const n=e._modelValue,o=is(e),r=e.checked,l=e[dt];if(J(n)){const a=un(n,o),c=a!==-1;if(r&&!c)l(n.concat(o));else if(!r&&c){const p=[...n];p.splice(a,1),l(p)}}else if(Ft(n)){const a=new Set(n);r?a.add(o):a.delete(o),l(a)}else l(xr(e,r))})},mounted:ao,beforeUpdate(e,t,s){e[dt]=Lt(s),ao(e,t,s)}};function ao(e,{value:t,oldValue:s},n){e._modelValue=t;let o;if(J(t))o=un(t,n.props.value)>-1;else if(Ft(t))o=t.has(n.props.value);else{if(t===s)return;o=Vt(t,xr(e,!0))}e.checked!==o&&(e.checked=o)}const rs={deep:!0,created(e,{value:t,modifiers:{number:s}},n){const o=Ft(t);yt(e,"change",()=>{const r=Array.prototype.filter.call(e.options,l=>l.selected).map(l=>s?Es(is(l)):is(l));e[dt](e.multiple?o?new Set(r):r:r[0]),e._assigning=!0,jo(()=>{e._assigning=!1})}),e[dt]=Lt(n)},mounted(e,{value:t}){co(e,t)},beforeUpdate(e,t,s){e[dt]=Lt(s)},updated(e,{value:t}){e._assigning||co(e,t)}};function co(e,t){const s=e.multiple,n=J(t);if(!(s&&!n&&!Ft(t))){for(let o=0,r=e.options.length;o<r;o++){const l=e.options[o],a=is(l);if(s)if(n){const c=typeof a;c==="string"||c==="number"?l.selected=t.some(p=>String(p)===String(a)):l.selected=un(t,a)>-1}else l.selected=t.has(a);else if(Vt(is(l),t)){e.selectedIndex!==o&&(e.selectedIndex=o);return}}!s&&e.selectedIndex!==-1&&(e.selectedIndex=-1)}}function is(e){return"_value"in e?e._value:e.value}function xr(e,t){const s=t?"_trueValue":"_falseValue";return s in e?e[s]:t}const Ll={esc:"escape",space:" ",up:"arrow-up",left:"arrow-left",right:"arrow-right",down:"arrow-down",delete:"backspace"},zt=(e,t)=>{const s=e._withKeys||(e._withKeys={}),n=t.join(".");return s[n]||(s[n]=(o=>{if(!("key"in o))return;const r=_t(o.key);if(t.some(l=>l===r||Ll[l]===r))return e(o)}))},Fl=$e({patchProp:Dl},yl);let uo;function Vl(){return uo||(uo=Zi(Fl))}const Ul=((...e)=>{const t=Vl().createApp(...e),{mount:s}=t;return t.mount=n=>{const o=Bl(n);if(!o)return;const r=t._component;!Z(r)&&!r.render&&!r.template&&(r.template=o.innerHTML),o.nodeType===1&&(o.textContent="");const l=s(o,!1,Hl(o));return o instanceof Element&&(o.removeAttribute("v-cloak"),o.setAttribute("data-v-app","")),l},t});function Hl(e){if(e instanceof SVGElement)return"svg";if(typeof MathMLElement=="function"&&e instanceof MathMLElement)return"mathml"}function Bl(e){return xe(e)?document.querySelector(e):e}let kn="";function Wt(e){kn=e}function we(){return kn}async function he(e,t){const s=await fetch(e,{...t,headers:{Authorization:`Bearer ${kn}`,"Content-Type":"application/json",...(t==null?void 0:t.headers)??{}}});if(!s.ok){const n=new Error(s.statusText);throw n.status=s.status,n}return s.json()}const Wl={class:"animate-fade-in"},Kl={key:0,class:"text-center py-12 text-textSecondary"},zl={key:1,class:"text-center text-textSecondary py-12"},Jl={key:2,class:"space-y-3"},ql={class:"flex items-center justify-between"},Gl={class:"flex items-center gap-3"},Yl={class:"font-medium"},Zl={class:"text-accentLight"},Ql={class:"text-textSecondary text-xs"},Xl={key:2,class:"text-muted italic"},ea={class:"text-xs text-textSecondary font-mono"},ta={class:"text-right"},sa={class:"flex items-center gap-2 justify-end"},na={class:"text-xs text-textSecondary"},oa=At({__name:"SessionsTab",props:{status:{}},setup(e){const t=e,s=j([]),n=j(!0);async function o(){n.value=!0;try{const p=await he("/api/status");s.value=(p.sessions||[]).slice().sort((d,m)=>d.status==="active"&&m.status!=="active"?-1:d.status!=="active"&&m.status==="active"?1:m.lastActivity-d.lastActivity)}finally{n.value=!1}}const r=We(()=>{var d;return(((d=t.status)==null?void 0:d.sessions)??s.value).slice().sort((m,v)=>m.status==="active"&&v.status!=="active"?-1:m.status!=="active"&&v.status==="active"?1:v.lastActivity-m.lastActivity)});function l(p){const d=Math.floor((Date.now()-p.lastActivity)/6e4);return p.status==="disconnected"?{label:`Disconnected${d>0?` — ${d}m ago`:""}`,color:"text-muted"}:d<5?{label:"Active",color:"text-success"}:d<30?{label:`Idle ${d}m`,color:"text-warn"}:{label:`Dormant ${d}m`,color:"text-danger"}}function a(p){if(!p.lastWaitCallAt)return"";const d=Math.floor((Date.now()-p.lastWaitCallAt)/6e4);return d<5?`Polling — ${d===0?"just now":d+"m ago"}`:`Last poll — ${d}m ago`}function c(p){return p.lastWaitCallAt?Math.floor((Date.now()-p.lastWaitCallAt)/6e4)<5?"text-success":"text-warn":""}return wt(o),(p,d)=>(w(),k("div",Wl,[n.value&&r.value.length===0?(w(),k("div",Kl,"Loading sessions...")):r.value.length===0?(w(),k("div",zl,"No sessions")):(w(),k("div",Jl,[(w(!0),k(ie,null,_e(r.value,m=>(w(),k("div",{key:m.mcpSessionId,class:Y(["glass rounded-xl p-4 animate-slide-up",m.status==="disconnected"?"opacity-60":""])},[i("div",ql,[i("div",Gl,[i("span",{class:Y(["w-2.5 h-2.5 rounded-full",m.status==="disconnected"?"bg-muted":Math.floor((Date.now()-m.lastActivity)/6e4)<5?"bg-success":Math.floor((Date.now()-m.lastActivity)/6e4)<30?"bg-warn":"bg-danger"])},null,2),i("div",null,[i("div",Yl,[m.topicName?(w(),k(ie,{key:0},[i("span",Zl,T(m.topicName),1),i("span",Ql," (thread "+T(m.threadId)+")",1)],64)):m.threadId!=null?(w(),k(ie,{key:1},[Ve("Thread "+T(m.threadId),1)],64)):(w(),k("span",Xl,"Awaiting start_session…"))]),i("div",ea,T(m.mcpSessionId.slice(0,12))+"...",1)])]),i("div",ta,[i("div",sa,[i("span",{class:Y(["text-sm font-medium",l(m).color])},T(l(m).label),3),a(m)?(w(),k("span",{key:0,class:Y(["text-xs ml-2",c(m)])},T(a(m)),3)):Q("",!0)]),i("div",na,T(m.transportType),1)])])],2))),128))]))]))}}),ra={class:"animate-fade-in"},ia={class:"flex flex-wrap items-center gap-3 mb-4"},la={key:0,class:"text-center py-12 text-textSecondary"},aa={key:1,class:"text-center py-12 text-textSecondary"},ca={key:2,class:"space-y-2"},ua={class:"flex items-start justify-between gap-3"},da={class:"flex-1 min-w-0"},fa={class:"flex items-center gap-2 mb-1"},pa={key:0,class:"type-badge",style:{background:"rgba(239,68,68,0.15)",color:"#f87171"}},ma={key:1,class:"type-badge",style:{background:"rgba(245,158,11,0.15)",color:"#fbbf24"}},ha={class:"text-xs text-textSecondary"},ga={class:"text-sm text-textPrimary leading-relaxed"},xa={class:"flex flex-wrap gap-1.5 mt-2"},va={class:"text-right shrink-0"},ya={class:"text-sm font-mono text-textSecondary"},ba={class:"text-xs text-muted"},_a={class:"text-xs text-muted"},wa=At({__name:"MemoryNotesTab",setup(e){const t=j([]),s=j(!1),n=j(""),o=j("created_at"),r=j("");let l=null;async function a(){s.value=!0;try{const d=r.value.trim();let m;if(d)m=await he(`/api/search?q=${encodeURIComponent(d)}&limit=50`);else{const v=new URLSearchParams({limit:"50",sort:o.value});n.value&&v.set("type",n.value),m=await he(`/api/notes?${v}`)}t.value=m}finally{s.value=!1}}function c(){l&&clearTimeout(l),l=setTimeout(a,300)}function p(d){if(!d)return"never";const m=Date.now()-new Date(d).getTime(),v=Math.floor(m/6e4);if(v<1)return"just now";if(v<60)return`${v}m ago`;const P=Math.floor(v/60);return P<24?`${P}h ago`:`${Math.floor(P/24)}d ago`}return wt(a),(d,m)=>(w(),k("div",ra,[i("div",ia,[ne(i("input",{"onUpdate:modelValue":m[0]||(m[0]=v=>r.value=v),onInput:c,type:"text",placeholder:"Search notes...",class:"flex-1 min-w-[200px] px-4 py-2 rounded-xl bg-card border border-gray-700 text-sm text-textPrimary placeholder-muted focus:outline-none focus:border-accent transition"},null,544),[[me,r.value]]),ne(i("select",{"onUpdate:modelValue":m[1]||(m[1]=v=>n.value=v),onChange:a,class:"px-3 py-2 rounded-xl bg-card border border-gray-700 text-sm text-textPrimary focus:outline-none"},[...m[3]||(m[3]=[Be('<option value="">All types</option><option value="fact">Facts</option><option value="preference">Preferences</option><option value="pattern">Patterns</option><option value="entity">Entities</option><option value="relationship">Relationships</option>',6)])],544),[[rs,n.value]]),ne(i("select",{"onUpdate:modelValue":m[2]||(m[2]=v=>o.value=v),onChange:a,class:"px-3 py-2 rounded-xl bg-card border border-gray-700 text-sm text-textPrimary focus:outline-none"},[...m[4]||(m[4]=[i("option",{value:"created_at"},"Newest",-1),i("option",{value:"confidence"},"Confidence",-1),i("option",{value:"access_count"},"Most accessed",-1)])],544),[[rs,o.value]])]),s.value?(w(),k("div",la,"Loading notes...")):t.value.length===0?(w(),k("div",aa,"No notes found")):(w(),k("div",ca,[(w(!0),k(ie,null,_e(t.value,v=>(w(),k("div",{key:v.noteId,class:Y(["glass rounded-xl p-4 animate-fade-in",`priority-${v.priority||0}`])},[i("div",ua,[i("div",da,[i("div",fa,[i("span",{class:Y(["type-badge",`type-${v.type}`])},T(v.type),3),v.priority>=2?(w(),k("span",pa,"HIGH IMPORTANCE")):v.priority===1?(w(),k("span",ma,"NOTABLE")):Q("",!0),i("span",ha,T(v.noteId),1)]),i("p",ga,T(v.content),1),i("div",xa,[(w(!0),k(ie,null,_e(v.keywords||[],P=>(w(),k("span",{key:P,class:"text-xs px-2 py-0.5 rounded-full bg-accent/10 text-accentLight"},T(P),1))),128))])]),i("div",va,[i("div",ya,T(((Number(v.confidence)||0)*100).toFixed(0))+"%",1),i("div",ba,T(p(v.createdAt)),1),i("div",_a,T(v.accessCount??0)+" hits",1)])])],2))),128))]))]))}}),Sa={class:"animate-fade-in space-y-6"},Ca={class:"glass rounded-xl p-4"},ka={class:"flex flex-wrap items-center gap-4 mb-4"},Ta={key:0,class:"text-sm text-success"},$a={class:"flex flex-wrap items-center gap-3"},Aa={key:0,class:"text-sm text-success"},Ea={class:"flex flex-wrap items-center gap-3 mb-4"},Pa={key:0,class:"text-sm text-success"},Ma={class:"glass rounded-xl p-6"},Ia={class:"flex flex-wrap items-center justify-between gap-4 mb-4"},Oa={class:"flex items-center gap-2"},Da={key:0,class:"text-sm text-success"},Ra={key:0,class:"mb-3"},ja={class:"mt-4"},Na=["innerHTML"],La={class:"glass rounded-xl p-6"},Fa={class:"flex flex-wrap items-center justify-between gap-4 mb-4"},Va={class:"flex items-center gap-2"},Ua={key:0,class:"text-sm text-success"},Ha={class:"flex gap-2 mb-4"},Ba=["onClick"],Wa={key:0,class:"mb-3"},Ka=["value","placeholder"],za={class:"glass rounded-xl p-6"},Ja={class:"flex flex-wrap items-center justify-between gap-4 mb-4"},qa={class:"flex items-center gap-2"},Ga={key:0,class:"text-sm text-success"},Ya={class:"mb-4 flex flex-wrap items-center gap-3"},Za={class:"flex items-center gap-2"},Qa={class:"font-mono text-sm text-textPrimary"},Xa={key:0,class:"mb-3"},ec={class:"flex flex-wrap gap-2 mb-3"},tc=["onClick"],sc={class:"mt-4"},nc=["innerHTML"],oc=At({__name:"TemplatesTab",setup(e){function t(F){return F.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/\{\{([A-Z_]+)\}\}/g,'<span class="text-accentLight" style="background:rgba(99,102,241,0.1);padding:0 2px;border-radius:3px">{{$1}}</span>')}const s=j("copilot"),n=j(""),o=j(""),r=j(""),l=j(50),a=j(""),c=j(""),p=j(!0),d=j(""),m=j(!1),v=j({}),P=j("copilot"),U=j(""),A=j(""),b=j(!0),E=j(""),L=j(!1),B=j([]),V=j("");async function ee(){await Promise.all([ge(),z(),I(),W(),de()])}async function ge(){try{const F=await he("/api/settings/agent-type");s.value=F.agentType||"copilot"}catch{}}async function z(){try{const F=await he("/api/settings/claude-mcp-config");o.value=F.path||""}catch{}}async function I(){try{const F=await he("/api/settings/bootstrap-message-count");l.value=F.count??50}catch{}}async function W(){try{const F=await he("/api/templates");if(F.templates&&F.templates.length>0){const h=F.templates[0];c.value=h.content||"",p.value=h.isDefault??!0}F.agentReminders&&(v.value=F.agentReminders)}catch{}}async function de(){try{const[F,h,y]=await Promise.all([he("/api/templates/drive"),he("/api/templates/drive-presets"),he("/api/settings/dmn-activation-hours")]);B.value=h.presets||[],V.value=String(y.value??"not set"),F.custom?(A.value=F.custom,b.value=!1):(A.value=F.default||"",b.value=!0)}catch{}}async function se(){try{await he("/api/settings/agent-type",{method:"POST",body:JSON.stringify({agentType:s.value})}),await he("/api/templates/reminders",{method:"DELETE"}),n.value="Saved ✓",setTimeout(()=>{n.value=""},3e3),await W()}catch(F){n.value="Error: "+F.message}}async function Se(){try{await he("/api/settings/bootstrap-message-count",{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({count:l.value})}),a.value="Saved ✓",setTimeout(()=>{a.value=""},3e3)}catch(F){a.value="Error: "+F.message}}async function ke(){const F=o.value.trim();if(!F){r.value="Path is empty",setTimeout(()=>{r.value=""},3e3);return}try{await he("/api/settings/claude-mcp-config",{method:"POST",body:JSON.stringify({path:F})}),r.value="Saved ✓",setTimeout(()=>{r.value=""},3e3)}catch(h){r.value="Error: "+h.message}}async function gt(){try{const F=await fetch("/api/templates/reminders",{method:"POST",headers:{Authorization:`Bearer ${we()}`,"Content-Type":"application/json"},body:JSON.stringify({content:c.value})});if(!F.ok)throw new Error(F.statusText);p.value=!1,d.value="Saved ✓",setTimeout(()=>{d.value=""},3e3)}catch(F){d.value="Error: "+F.message}}async function Et(){if(confirm("Reset to default template? Your customizations will be lost."))try{const F=await fetch("/api/templates/reminders",{method:"DELETE",headers:{Authorization:`Bearer ${we()}`}});if(!F.ok)throw new Error(F.statusText);await W(),d.value="Reset to default ✓",setTimeout(()=>{d.value=""},3e3)}catch(F){d.value="Error: "+F.message}}async function ve(){var y;const F=P.value,h=((y=v.value[F])==null?void 0:y.content)??"";try{const g=await fetch(`/api/templates/reminders-${F}`,{method:"POST",headers:{Authorization:`Bearer ${we()}`,"Content-Type":"application/json"},body:JSON.stringify({content:h})});if(!g.ok)throw new Error(g.statusText);v.value[F]={content:h,isDefault:!1},U.value=`Saved ${F} ✓`,setTimeout(()=>{U.value=""},3e3)}catch(g){U.value="Error: "+g.message}}async function le(){const F=P.value;if(confirm(`Reset ${F} agent reminder? The custom template will be removed.`))try{const h=await fetch(`/api/templates/reminders-${F}`,{method:"DELETE",headers:{Authorization:`Bearer ${we()}`}});if(!h.ok)throw new Error(h.statusText);await W(),U.value=`Reset ${F} ✓`,setTimeout(()=>{U.value=""},3e3)}catch(h){U.value="Error: "+h.message}}async function X(){const F=A.value;if(!F.trim()){E.value="Template is empty — load a preset first",setTimeout(()=>{E.value=""},3e3);return}try{const h=await fetch("/api/templates/drive",{method:"POST",headers:{Authorization:`Bearer ${we()}`,"Content-Type":"application/json"},body:JSON.stringify({content:F})});if(!h.ok)throw new Error(h.statusText);b.value=!1,E.value="Saved ✓",setTimeout(()=>{E.value=""},3e3)}catch(h){E.value="Error: "+h.message}}async function He(){if(confirm("Reset drive template? The custom template will be removed."))try{const F=await fetch("/api/templates/drive",{method:"DELETE",headers:{Authorization:`Bearer ${we()}`}});if(!F.ok)throw new Error(F.statusText);await de(),E.value="Reset to default ✓",setTimeout(()=>{E.value=""},3e3)}catch(F){E.value="Error: "+F.message}}function Je(F){A.value=F.content,b.value=!1}const Me=We(()=>t(c.value)),Ce=We(()=>A.value?t(A.value):'<span style="color:#6b7280">(no template loaded)</span>');return wt(ee),(F,h)=>{var y,g;return w(),k("div",Sa,[i("div",Ca,[i("div",ka,[h[9]||(h[9]=i("label",{class:"text-sm font-medium text-textSecondary"},"Agent Type",-1)),ne(i("select",{"onUpdate:modelValue":h[0]||(h[0]=q=>s.value=q),onChange:se,class:"px-3 py-2 rounded-xl bg-card border border-gray-700 text-sm text-textPrimary focus:outline-none focus:border-accent transition"},[...h[8]||(h[8]=[Be('<option value="copilot">Copilot</option><option value="copilot_claude">Copilot (Claude)</option><option value="copilot_codex">Copilot (Codex)</option><option value="claude">Claude</option><option value="cursor">Cursor</option><option value="codex">Codex</option><option value="openai_codex">OpenAI Codex</option>',7)])],544),[[rs,s.value]]),n.value?(w(),k("span",Ta,T(n.value),1)):Q("",!0),h[10]||(h[10]=i("span",{class:"text-xs text-muted"},"Changes which default reminders template is used",-1))]),i("div",$a,[h[11]||(h[11]=i("label",{class:"text-sm font-medium text-textSecondary"},"Claude MCP Config Path",-1)),ne(i("input",{"onUpdate:modelValue":h[1]||(h[1]=q=>o.value=q),type:"text",placeholder:"~/.claude/settings.json",class:"flex-1 min-w-[260px] px-3 py-2 rounded-xl bg-card border border-gray-700 text-sm text-textPrimary placeholder-muted font-mono focus:outline-none focus:border-accent transition"},null,512),[[me,o.value]]),i("button",{onClick:ke,class:"px-4 py-2 rounded-xl bg-accent hover:bg-accentLight text-white text-sm font-medium transition"},"Save"),r.value?(w(),k("span",Aa,T(r.value),1)):Q("",!0)]),i("div",Ea,[h[12]||(h[12]=i("label",{class:"text-sm font-medium text-textSecondary"},"Bootstrap Messages",-1)),ne(i("input",{"onUpdate:modelValue":h[2]||(h[2]=q=>l.value=q),type:"number",min:"0",max:"500",class:"w-24 px-3 py-2 rounded-xl bg-card border border-gray-700 text-text text-sm focus:border-accent focus:outline-none"},null,512),[[me,l.value,void 0,{number:!0}]]),i("button",{onClick:Se,class:"px-4 py-2 rounded-xl bg-accent text-white text-sm font-medium hover:bg-accent/80 transition-colors"},"Save"),a.value?(w(),k("span",Pa,T(a.value),1)):Q("",!0),h[13]||(h[13]=i("span",{class:"text-xs text-muted"},"Number of recent messages injected as warm context (0 = off)",-1))])]),i("div",Ma,[i("div",Ia,[h[14]||(h[14]=i("div",null,[i("h3",{class:"text-lg font-semibold"},"Reminders Template"),i("p",{class:"text-sm text-textSecondary mt-1"},"Edit the system prompt template sent with every reminder")],-1)),i("div",Oa,[d.value?(w(),k("span",Da,T(d.value),1)):Q("",!0),i("button",{onClick:Et,class:"px-4 py-2 rounded-xl bg-card hover:bg-cardHover border border-gray-700 text-sm text-textSecondary hover:text-textPrimary transition"},"Reset to Default"),i("button",{onClick:gt,class:"px-4 py-2 rounded-xl bg-accent hover:bg-accentLight text-white text-sm font-medium transition"},"Save")])]),p.value?(w(),k("div",Ra,[...h[15]||(h[15]=[i("span",{class:"type-badge",style:{background:"rgba(245,158,11,0.15)",color:"#fbbf24"}},"USING DEFAULT — edit and save to customize",-1)])])):Q("",!0),ne(i("textarea",{"onUpdate:modelValue":h[3]||(h[3]=q=>c.value=q),rows:"20",spellcheck:"false",class:"w-full px-4 py-3 rounded-xl bg-surface border border-gray-700 text-textPrimary font-mono text-sm leading-relaxed focus:outline-none focus:border-accent focus:ring-1 focus:ring-accent transition resize-y",placeholder:"Loading..."},null,512),[[me,c.value]]),i("div",ja,[i("div",{class:"flex items-center gap-2 mb-2 cursor-pointer select-none",onClick:h[4]||(h[4]=q=>m.value=!m.value)},[(w(),k("svg",{class:Y(["w-4 h-4 text-textSecondary transition-transform",m.value?"rotate-90":""]),fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[...h[16]||(h[16]=[i("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M9 5l7 7-7 7"},null,-1)])],2)),h[17]||(h[17]=i("span",{class:"text-sm font-medium text-textSecondary"},"Preview with highlighted variables",-1))]),m.value?(w(),k("div",{key:0,class:"glass rounded-xl p-4 font-mono text-sm leading-relaxed whitespace-pre-wrap break-words",innerHTML:Me.value},null,8,Na)):Q("",!0)]),h[18]||(h[18]=Be('<details class="mt-4"><summary class="text-sm font-medium text-textSecondary cursor-pointer hover:text-textPrimary transition">Available Variables</summary><div class="mt-2 glass rounded-xl p-4 grid grid-cols-1 sm:grid-cols-2 gap-2 text-sm"><div><code class="text-accentLight">{{OPERATOR_MESSAGE}}</code> <span class="text-textSecondary">— latest operator message</span></div><div><code class="text-accentLight">{{THREAD_ID}}</code> <span class="text-textSecondary">— Telegram thread ID</span></div><div><code class="text-accentLight">{{TIME}}</code> <span class="text-textSecondary">— formatted timestamp</span></div><div><code class="text-accentLight">{{UPTIME}}</code> <span class="text-textSecondary">— session uptime</span></div><div><code class="text-accentLight">{{VERSION}}</code> <span class="text-textSecondary">— package version</span></div><div><code class="text-accentLight">{{MODE}}</code> <span class="text-textSecondary">— &quot;autonomous&quot; or &quot;standard&quot;</span></div></div></details>',1))]),i("div",La,[i("div",Fa,[h[19]||(h[19]=i("div",null,[i("h3",{class:"text-lg font-semibold"},"Agent-Specific Reminders"),i("p",{class:"text-sm text-textSecondary mt-1"},"Appended after the base reminders template — per agent type")],-1)),i("div",Va,[U.value?(w(),k("span",Ua,T(U.value),1)):Q("",!0),i("button",{onClick:le,class:"px-4 py-2 rounded-xl bg-card hover:bg-cardHover border border-gray-700 text-sm text-textSecondary hover:text-textPrimary transition"},"Reset"),i("button",{onClick:ve,class:"px-4 py-2 rounded-xl bg-accent hover:bg-accentLight text-white text-sm font-medium transition"},"Save")])]),i("div",Ha,[(w(),k(ie,null,_e(["copilot","claude","cursor","codex"],q=>i("button",{key:q,onClick:be=>P.value=q,class:Y(["px-4 py-2 rounded-xl text-sm font-medium transition",P.value===q?"bg-accent text-white":"bg-card hover:bg-cardHover border border-gray-700 text-textSecondary hover:text-textPrimary"])},T(q.charAt(0).toUpperCase()+q.slice(1)),11,Ba)),64))]),((y=v.value[P.value])==null?void 0:y.isDefault)!==!1?(w(),k("div",Wa,[...h[20]||(h[20]=[i("span",{class:"type-badge",style:{background:"rgba(245,158,11,0.15)",color:"#fbbf24"}},"NO CUSTOM OVERRIDE — this agent uses only the base reminders",-1)])])):Q("",!0),i("textarea",{value:((g=v.value[P.value])==null?void 0:g.content)??"",onInput:h[5]||(h[5]=q=>{const be=q.target;v.value[P.value]={content:be.value,isDefault:!1}}),rows:"8",spellcheck:"false",class:"w-full px-4 py-3 rounded-xl bg-surface border border-gray-700 text-textPrimary font-mono text-sm leading-relaxed focus:outline-none focus:border-accent focus:ring-1 focus:ring-accent transition resize-y",placeholder:`Add ${P.value}-specific reminders (e.g. orchestrator hints, subagent policies)...`},null,40,Ka)]),i("div",za,[i("div",Ja,[h[21]||(h[21]=i("div",null,[i("h3",{class:"text-lg font-semibold"},"Drive Framing Template"),i("p",{class:"text-sm text-textSecondary mt-1"},"Customize the autonomous drive prompt sent when the operator is away")],-1)),i("div",qa,[E.value?(w(),k("span",Ga,T(E.value),1)):Q("",!0),i("button",{onClick:He,class:"px-4 py-2 rounded-xl bg-card hover:bg-cardHover border border-gray-700 text-sm text-textSecondary hover:text-textPrimary transition"},"Reset to Default"),i("button",{onClick:X,class:"px-4 py-2 rounded-xl bg-accent hover:bg-accentLight text-white text-sm font-medium transition"},"Save")])]),i("div",Ya,[h[23]||(h[23]=i("label",{class:"text-sm text-textSecondary"},"Drive Activation Period:",-1)),i("div",Za,[i("span",Qa,T(V.value),1),h[22]||(h[22]=i("span",{class:"text-sm text-textSecondary"},"hours",-1))]),h[24]||(h[24]=i("span",{class:"text-xs text-muted"},"(informational — set via DMN_ACTIVATION_HOURS env var)",-1))]),b.value?(w(),k("div",Xa,[...h[25]||(h[25]=[i("span",{class:"type-badge",style:{background:"rgba(245,158,11,0.15)",color:"#fbbf24"}},"(Default — edit to override)",-1)])])):Q("",!0),i("div",ec,[h[26]||(h[26]=i("span",{class:"text-sm text-textSecondary self-center"},"Presets:",-1)),(w(!0),k(ie,null,_e(B.value,q=>(w(),k("button",{key:q.key,onClick:be=>Je(q),class:"px-3 py-1.5 rounded-lg bg-card hover:bg-cardHover border border-gray-700 text-xs text-textSecondary hover:text-textPrimary transition"},T(q.label),9,tc))),128))]),ne(i("textarea",{"onUpdate:modelValue":h[6]||(h[6]=q=>A.value=q),rows:"15",spellcheck:"false",class:"w-full px-4 py-3 rounded-xl bg-surface border border-gray-700 text-textPrimary font-mono text-sm leading-relaxed focus:outline-none focus:border-accent focus:ring-1 focus:ring-accent transition resize-y",placeholder:"Load a preset or type a custom drive template..."},null,512),[[me,A.value]]),i("div",sc,[i("div",{class:"flex items-center gap-2 mb-2 cursor-pointer select-none",onClick:h[7]||(h[7]=q=>L.value=!L.value)},[(w(),k("svg",{class:Y(["w-4 h-4 text-textSecondary transition-transform",L.value?"rotate-90":""]),fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[...h[27]||(h[27]=[i("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M9 5l7 7-7 7"},null,-1)])],2)),h[28]||(h[28]=i("span",{class:"text-sm font-medium text-textSecondary"},"Preview with sample values",-1))]),L.value?(w(),k("div",{key:0,class:"glass rounded-xl p-4 font-mono text-sm leading-relaxed whitespace-pre-wrap break-words",innerHTML:Ce.value},null,8,nc)):Q("",!0)]),h[29]||(h[29]=Be('<details class="mt-4"><summary class="text-sm font-medium text-textSecondary cursor-pointer hover:text-textPrimary transition">Available Variables</summary><div class="mt-2 glass rounded-xl p-4 grid grid-cols-1 sm:grid-cols-2 gap-2 text-sm"><div><code class="text-accentLight">{{IDLE_HOURS}}</code> <span class="text-textSecondary">— hours since last operator interaction</span></div><div><code class="text-accentLight">{{TIME}}</code> <span class="text-textSecondary">— ISO timestamp</span></div><div><code class="text-accentLight">{{PROBABILITY}}</code> <span class="text-textSecondary">— drive activation probability (0.2–1.0)</span></div></div></details>',1))])])}}}),rc={class:"animate-fade-in"},ic={class:"glass rounded-xl p-6 mb-6"},lc={class:"flex flex-wrap items-center justify-between gap-4 mb-4"},ac={key:0,class:"glass rounded-xl p-4 mb-4 border border-accent/30"},cc={class:"grid grid-cols-1 sm:grid-cols-2 gap-3 mb-3"},uc={class:"flex items-center gap-4 mb-3"},dc={class:"flex items-center gap-2 text-sm text-textSecondary cursor-pointer"},fc={class:"flex items-center gap-2"},pc={key:0,class:"text-sm text-warn"},mc={key:1,class:"text-center py-8 text-textSecondary text-sm"},hc={key:2,class:"text-center text-textSecondary py-12"},gc={key:3,class:"space-y-2"},xc=["onClick"],vc={class:"flex items-start justify-between gap-3"},yc={class:"flex-1 min-w-0"},bc={class:"flex items-center gap-2 mb-1"},_c={class:"font-medium text-sm"},wc={key:0,class:"type-badge",style:{background:"rgba(245,158,11,0.15)",color:"#fbbf24"}},Sc={class:"flex flex-wrap gap-1.5 mt-1"},Cc=["title"],kc={key:0,class:"glass rounded-xl p-6"},Tc={class:"flex flex-wrap items-center justify-between gap-4 mb-4"},$c={class:"text-lg font-semibold"},Ac={class:"text-sm text-textSecondary mt-1"},Ec={class:"flex items-center gap-2"},Pc={key:0,class:"text-sm text-success"},Mc={key:1,class:"text-sm text-warn"},Ic={class:"grid grid-cols-1 sm:grid-cols-3 gap-3 mb-4"},Oc=["value"],Dc={class:"flex items-end"},Rc={class:"flex items-center gap-2 text-sm text-textSecondary cursor-pointer pb-2"},jc=At({__name:"SkillsTab",setup(e){const t=j([]),s=j(!0),n=j(null),o=j(""),r=j(""),l=j(!1),a=j(""),c=j(""),p=j(!1),d=j(""),m=j(""),v=j(!1),P=j("");async function U(){s.value=!0;try{const z=await he("/api/skills");t.value=z.skills||[]}finally{s.value=!1}}function A(z){return z?z.includes(".remote-copilot-mcp")&&z.includes("skills")?"user":z.endsWith(".default.md")?"default":z.endsWith(".skill.md")?"project":"unknown":"unknown"}function b(z){const I={user:"background:rgba(99,102,241,0.15);color:#818cf8",default:"background:rgba(107,114,128,0.15);color:#9ca3af",project:"background:rgba(34,197,94,0.15);color:#4ade80",unknown:"background:rgba(107,114,128,0.15);color:#9ca3af"};return I[z]||I.unknown}function E(z){n.value=z,o.value=z.content,r.value=(z.triggers||[]).join(", "),l.value=!!z.replacesOrchestrator,p.value=!1}function L(){n.value=null,c.value=""}function B(z,I,W,de){let se=`---
65
+ name: ${z}
66
66
  triggers:
67
- `;return M.forEach(Se=>{te+=` - ${Se.trim()}
68
- `}),K&&(te+=`replaces_orchestrator: true
69
- `),te+=`---
67
+ `;return I.forEach(Se=>{se+=` - ${Se.trim()}
68
+ `}),W&&(se+=`replaces_orchestrator: true
69
+ `),se+=`---
70
70
 
71
- `,te+de}async function F(){if(!n.value)return;const J=n.value.name;try{const M=r.value.split(",").map(Se=>Se.trim()).filter(Boolean),K=o.value;let de;K.trimStart().startsWith("---")?de=K:de=W(J,M,i.value,K);const te=await fetch(`/api/skills/${encodeURIComponent(J)}`,{method:"PUT",headers:{Authorization:`Bearer ${_e()}`,"Content-Type":"application/json"},body:JSON.stringify({content:de})});if(!te.ok)throw new Error(te.statusText);a.value="Saved ✓",setTimeout(()=>{a.value=""},3e3),await V()}catch(M){a.value="Error: "+M.message}}async function re(){if(!n.value)return;const J=n.value.name;try{const M=await fetch(`/api/skills/${encodeURIComponent(J)}`,{method:"DELETE",headers:{Authorization:`Bearer ${_e()}`}});if(!M.ok)throw new Error(M.statusText);L(),await V()}catch(M){c.value="Error: "+M.message}}async function we(){const J=d.value.trim(),M=p.value;if(!J){k.value="Name is required";return}const K=M.split(",").map(te=>te.trim()).filter(Boolean);if(!K.length){k.value="At least one trigger is required";return}const de=W(J,K,m.value,`\x3C!-- Write your skill instructions here -->
72
- `);try{const te=await fetch(`/api/skills/${encodeURIComponent(J)}`,{method:"PUT",headers:{Authorization:`Bearer ${_e()}`,"Content-Type":"application/json"},body:JSON.stringify({content:de})});if(!te.ok)throw new Error(te.statusText);k.value="Created ✓",h.value=!1,await V();const Se=t.value.find(ke=>ke.name===J);Se&&O(Se)}catch(te){k.value="Error: "+te.message}}return wt(V),(J,M)=>(_(),C("div",rc,[l("div",ic,[l("div",lc,[M[8]||(M[8]=l("div",null,[l("h3",{class:"text-lg font-semibold"},"Skill Library"),l("p",{class:"text-sm text-textSecondary mt-1"},"Manage intent-routing skills — user overrides, defaults, and project skills")],-1)),l("button",{onClick:M[0]||(M[0]=K=>{h.value=!h.value,n.value=null}),class:"px-4 py-2 rounded-xl bg-accent hover:bg-accentLight text-white text-sm font-medium transition"}," + New Skill ")]),h.value?(_(),C("div",ac,[M[12]||(M[12]=l("h4",{class:"text-sm font-semibold mb-3"},"Create New Skill",-1)),l("div",cc,[l("div",null,[M[9]||(M[9]=l("label",{class:"text-xs text-textSecondary block mb-1"},"Name",-1)),le(l("input",{"onUpdate:modelValue":M[1]||(M[1]=K=>d.value=K),type:"text",placeholder:"my-skill",class:"w-full px-3 py-2 rounded-lg bg-surface border border-gray-700 text-sm text-textPrimary font-mono focus:outline-none focus:border-accent transition"},null,512),[[he,d.value]])]),l("div",null,[M[10]||(M[10]=l("label",{class:"text-xs text-textSecondary block mb-1"},"Triggers (comma-separated)",-1)),le(l("input",{"onUpdate:modelValue":M[2]||(M[2]=K=>p.value=K),type:"text",placeholder:"trigger1, trigger2",class:"w-full px-3 py-2 rounded-lg bg-surface border border-gray-700 text-sm text-textPrimary focus:outline-none focus:border-accent transition"},null,512),[[he,p.value]])])]),l("div",uc,[l("label",dc,[le(l("input",{"onUpdate:modelValue":M[3]||(M[3]=K=>m.value=K),type:"checkbox",class:"rounded"},null,512),[[lo,m.value]]),M[11]||(M[11]=l("span",null,"Replaces orchestrator",-1))])]),l("div",fc,[l("button",{onClick:we,class:"px-4 py-2 rounded-xl bg-accent hover:bg-accentLight text-white text-sm font-medium transition"},"Create"),l("button",{onClick:M[4]||(M[4]=K=>h.value=!1),class:"px-4 py-2 rounded-xl bg-card hover:bg-cardHover border border-gray-700 text-sm text-textSecondary hover:text-textPrimary transition"},"Cancel"),k.value?(_(),C("span",pc,$(k.value),1)):Q("",!0)])])):Q("",!0),s.value?(_(),C("div",hc,"Loading...")):t.value.length===0?(_(),C("div",mc,"No skills loaded")):(_(),C("div",gc,[(_(!0),C(oe,null,be(t.value,K=>{var de;return _(),C("div",{key:K.name,onClick:te=>O(K),class:Y(["glass rounded-xl p-4 cursor-pointer hover:bg-cardHover transition border",((de=n.value)==null?void 0:de.name)===K.name?"border-accent":"border-transparent"])},[l("div",vc,[l("div",yc,[l("div",bc,[l("span",_c,$(K.name),1),l("span",{class:"type-badge",style:Is(H(A(K.source)))},$(A(K.source)),5),K.replacesOrchestrator?(_(),C("span",wc,"REPLACES ORCH")):Q("",!0)]),l("div",Sc,[(_(!0),C(oe,null,be(K.triggers||[],te=>(_(),C("span",{key:te,class:"text-xs px-2 py-0.5 rounded-full bg-accent/10 text-accentLight"},$(te),1))),128))])]),l("div",{class:"text-xs text-muted font-mono shrink-0 max-w-[200px] truncate",title:K.source||""},$((K.source||"").split(/[\\/]/).pop()||""),9,Cc)])],10,xc)}),128))]))]),n.value?(_(),C("div",kc,[l("div",Tc,[l("div",null,[l("h3",$c,"Edit: "+$(n.value.name),1),l("p",Ac,$(n.value.source||"(unknown source)"),1)]),l("div",Ec,[a.value?(_(),C("span",Pc,$(a.value),1)):Q("",!0),c.value?(_(),C("span",Ic,$(c.value),1)):Q("",!0),A(n.value.source)==="user"?(_(),C("button",{key:2,onClick:re,class:"px-4 py-2 rounded-xl bg-card hover:bg-red-900/40 border border-gray-700 hover:border-red-700 text-sm text-textSecondary hover:text-red-400 transition",title:"Remove user override (reverts to default)"},"Remove override")):Q("",!0),l("button",{onClick:L,class:"px-4 py-2 rounded-xl bg-card hover:bg-cardHover border border-gray-700 text-sm text-textSecondary hover:text-textPrimary transition"},"Close"),l("button",{onClick:F,class:"px-4 py-2 rounded-xl bg-accent hover:bg-accentLight text-white text-sm font-medium transition"},"Save")])]),l("div",Mc,[l("div",null,[M[13]||(M[13]=l("label",{class:"text-xs text-textSecondary block mb-1"},"Name",-1)),l("input",{value:n.value.name,type:"text",readonly:"",class:"w-full px-3 py-2 rounded-lg bg-surface border border-gray-700 text-sm text-textPrimary font-mono opacity-60 cursor-not-allowed"},null,8,Oc)]),l("div",null,[M[14]||(M[14]=l("label",{class:"text-xs text-textSecondary block mb-1"},"Triggers (comma-separated)",-1)),le(l("input",{"onUpdate:modelValue":M[5]||(M[5]=K=>r.value=K),type:"text",class:"w-full px-3 py-2 rounded-lg bg-surface border border-gray-700 text-sm text-textPrimary focus:outline-none focus:border-accent transition"},null,512),[[he,r.value]])]),l("div",Dc,[l("label",Rc,[le(l("input",{"onUpdate:modelValue":M[6]||(M[6]=K=>i.value=K),type:"checkbox",class:"rounded"},null,512),[[lo,i.value]]),M[15]||(M[15]=l("span",null,"Replaces orchestrator",-1))])])]),le(l("textarea",{"onUpdate:modelValue":M[7]||(M[7]=K=>o.value=K),rows:"20",spellcheck:"false",class:"w-full px-4 py-3 rounded-xl bg-surface border border-gray-700 text-textPrimary font-mono text-sm leading-relaxed focus:outline-none focus:border-accent focus:ring-1 focus:ring-accent transition resize-y",placeholder:"Skill body (markdown)..."},null,512),[[he,o.value]])])):Q("",!0)]))}}),Nc={class:"animate-fade-in space-y-6"},Lc={class:"glass rounded-xl p-6"},Fc={class:"flex flex-wrap items-center justify-between gap-4 mb-2"},Vc={class:"flex items-center gap-3"},Hc={key:0,class:"mt-4 p-4 rounded-xl bg-surface border border-gray-700/50 space-y-3"},Uc={class:"grid grid-cols-1 sm:grid-cols-3 gap-3"},Bc=["value"],Kc={class:"flex justify-end"},Wc=["disabled"],zc={key:0,class:"text-center py-12 text-textSecondary"},Jc={key:1,class:"text-center py-8 text-danger text-sm"},qc={key:2,class:"text-center py-12 text-textSecondary"},Gc={key:3},Yc={class:"space-y-3"},Zc={class:"p-4"},Qc={class:"flex flex-wrap items-center gap-3"},Xc=["onBlur"],eu=["onDblclick"],tu={class:"text-xs text-muted font-mono"},su=["value","onChange"],nu=["value"],ou={class:"text-xs text-muted"},ru=["onKeyup","onBlur"],iu=["title","onDblclick"],lu={class:"ml-auto flex items-center gap-3"},au={class:"flex items-center gap-1.5"},cu=["onClick"],uu={class:"flex items-center gap-1.5"},du=["onClick"],fu={class:"flex items-center gap-1.5"},pu=["onClick"],hu=["onClick"],mu=["onClick"],gu=["onClick"],xu={key:0,class:"mt-3 p-3 rounded-lg bg-surface border border-purple-500/20 space-y-2"},vu={class:"grid grid-cols-1 sm:grid-cols-3 gap-2"},yu=["value"],bu={class:"flex items-center gap-2"},_u=["onClick","disabled"],wu={key:0,class:"border-t border-gray-700/30 bg-surface/30 px-4 py-3 space-y-2"},Su={key:0,class:"text-xs text-muted py-1"},Cu={class:"text-sm font-medium"},ku={class:"text-xs text-muted font-mono"},Tu=["value","onChange"],$u=["value"],Au={class:"text-xs text-muted"},Eu={class:"ml-auto flex items-center gap-3"},Pu={key:0,class:"flex items-center gap-1.5"},Iu=["onClick"],Mu={key:1,class:"flex items-center gap-1.5"},Ou=["onClick"],Du=["onClick"],Ru={key:4},ju={class:"space-y-2"},Nu={class:"font-medium"},Lu={class:"text-xs text-muted font-mono"},Fu={class:"text-xs text-textSecondary"},Vu={class:"text-xs text-muted"},Hu=["onClick"],Uu={key:5},Bu={class:"space-y-2"},Ku={class:"font-medium"},Wu={class:"text-xs text-muted font-mono"},zu=["value","onChange"],Ju=["value"],qu={class:"text-xs text-muted"},Gu={class:"ml-auto flex items-center gap-3"},Yu={class:"flex items-center gap-1.5"},Zu=["onClick"],Qu={class:"flex items-center gap-1.5"},Xu=["onClick"],ed=["onClick"],td={key:6},sd={class:"space-y-2"},nd={class:"font-medium"},od={class:"text-xs text-muted font-mono"},rd=["value","onChange"],id=["value"],ld={class:"text-xs text-muted"},ad=["onClick"],cd=At({__name:"ThreadsTab",setup(e){const t=j([]),s=j(!0),n=j(""),o=j({}),r=j(new Set),i=j(!1),a=j({name:"",threadId:0,client:"claude",workingDirectory:""}),c=j(""),h=j(!1),d=j(null),p=j(""),m=j(null),k=j(""),V=j(null),A=j({name:"",threadId:0,client:"claude",workingDirectory:""}),H=j(""),O=j(!1),L=["claude","copilot","codex","openai_codex","copilot_claude","copilot_codex","cursor"],W={root:{emoji:"🟢",classes:"bg-green-500/20 text-green-400 border-green-500/30"},daily:{emoji:"🔵",classes:"bg-blue-500/20 text-blue-400 border-blue-500/30"},branch:{emoji:"🟣",classes:"bg-purple-500/20 text-purple-400 border-purple-500/30"},worker:{emoji:"🟡",classes:"bg-yellow-500/20 text-yellow-400 border-yellow-500/30"}},F=Be(()=>t.value.filter(g=>g.type==="root")),re=Be(()=>t.value.filter(g=>g.type==="daily")),we=Be(()=>t.value.filter(g=>g.type==="branch")),J=Be(()=>t.value.filter(g=>g.type==="worker"));async function M(){s.value=!0,n.value="";try{const g=await ve("/api/threads");t.value=g.threads??[]}catch(g){n.value=g.message||"Failed to load threads"}finally{s.value=!1}}async function K(g){try{const y=await ve(`/api/threads/${g}/children`);o.value[g]=y.threads??[]}catch{o.value[g]=[]}}function de(g){r.value.has(g)?r.value.delete(g):(r.value.add(g),K(g))}async function te(){if(!(!a.value.name.trim()||!a.value.threadId)){h.value=!0,c.value="";try{const g=await fetch("/api/threads",{method:"POST",headers:{Authorization:`Bearer ${_e()}`,"Content-Type":"application/json"},body:JSON.stringify({threadId:a.value.threadId,name:a.value.name.trim(),type:"root",client:a.value.client,keepAlive:!1,...a.value.workingDirectory.trim()?{workingDirectory:a.value.workingDirectory.trim()}:{}})});if(!g.ok){const y=await g.json().catch(()=>({error:g.statusText}));throw new Error(y.error??g.statusText)}c.value="Created ✓",a.value={name:"",threadId:0,client:"claude",workingDirectory:""},i.value=!1,setTimeout(()=>{c.value=""},3e3),await M()}catch(g){c.value="Error: "+g.message}finally{h.value=!1}}}async function Se(g){if(!(!A.value.name.trim()||!A.value.threadId)){O.value=!0,H.value="";try{const y=await fetch("/api/threads",{method:"POST",headers:{Authorization:`Bearer ${_e()}`,"Content-Type":"application/json"},body:JSON.stringify({threadId:A.value.threadId,name:A.value.name.trim(),type:"branch",rootThreadId:g,client:A.value.client,...A.value.workingDirectory.trim()?{workingDirectory:A.value.workingDirectory.trim()}:{}})});if(!y.ok){const x=await y.json().catch(()=>({error:y.statusText}));throw new Error(x.error??y.statusText)}H.value="Branch created ✓",A.value={name:"",threadId:0,client:"claude",workingDirectory:""},V.value=null,setTimeout(()=>{H.value=""},3e3),await M(),K(g)}catch(y){H.value="Error: "+y.message}finally{O.value=!1}}}function ke(g){d.value=g.threadId,p.value=g.name}async function mt(g){const y=p.value.trim();if(d.value=null,!!y)try{const x=await fetch(`/api/threads/${g}`,{method:"PATCH",headers:{Authorization:`Bearer ${_e()}`,"Content-Type":"application/json"},body:JSON.stringify({name:y})});if(!x.ok)throw new Error(x.statusText);await M()}catch(x){n.value="Failed to rename thread: "+x.message}}function Et(g){m.value=g.threadId,k.value=g.workingDirectory??""}async function ge(g){const y=k.value.trim();m.value=null;try{const x=await fetch(`/api/threads/${g}`,{method:"PATCH",headers:{Authorization:`Bearer ${_e()}`,"Content-Type":"application/json"},body:JSON.stringify({workingDirectory:y||null})});if(!x.ok)throw new Error(x.statusText);await M()}catch(x){n.value="Failed to update working directory: "+x.message}}async function ie(g){try{const y=await fetch(`/api/threads/${g.threadId}`,{method:"PATCH",headers:{Authorization:`Bearer ${_e()}`,"Content-Type":"application/json"},body:JSON.stringify({keepAlive:!g.keepAlive})});if(!y.ok)throw new Error(y.statusText);await M()}catch(y){n.value="Failed to toggle keep-alive: "+y.message}}async function X(g,y){try{const x=await fetch(`/api/threads/${g.threadId}`,{method:"PATCH",headers:{Authorization:`Bearer ${_e()}`,"Content-Type":"application/json"},body:JSON.stringify({client:y})});if(!x.ok)throw new Error(x.statusText);await M()}catch(x){n.value="Failed to change agent type: "+x.message}}async function He(g){try{const y=await fetch(`/api/threads/${g.threadId}`,{method:"PATCH",headers:{Authorization:`Bearer ${_e()}`,"Content-Type":"application/json"},body:JSON.stringify({dailyRotation:!g.dailyRotation})});if(!y.ok)throw new Error(y.statusText);await M()}catch(y){n.value="Failed to toggle daily rotation: "+y.message}}async function ze(g){try{const y=await fetch(`/api/threads/${g.threadId}`,{method:"PATCH",headers:{Authorization:`Bearer ${_e()}`,"Content-Type":"application/json"},body:JSON.stringify({autonomousMode:!g.autonomousMode})});if(!y.ok)throw new Error(y.statusText);await M()}catch(y){n.value="Failed to toggle autonomous mode: "+y.message}}async function Ie(g){if(confirm(`Archive thread "${g.name}" (${g.threadId})?`))try{const y=await fetch(`/api/threads/${g.threadId}`,{method:"DELETE",headers:{Authorization:`Bearer ${_e()}`}});if(!y.ok)throw new Error(y.statusText);await M()}catch(y){n.value="Failed to archive: "+y.message}}function Ce(g){if(!g)return"—";const y=new Date(g),q=Date.now()-y.getTime();return q<6e4?"just now":q<36e5?`${Math.floor(q/6e4)}m ago`:q<864e5?`${Math.floor(q/36e5)}h ago`:y.toLocaleDateString()}function N(g){return g==="active"?"text-success":g==="archived"?"text-muted":"text-warn"}return wt(M),(g,y)=>(_(),C("div",Nc,[l("div",Lc,[l("div",Fc,[y[14]||(y[14]=l("div",null,[l("h3",{class:"text-lg font-semibold"},"Thread Registry"),l("p",{class:"text-sm text-textSecondary mt-1"},"Manage conversation threads, branches, and daily sessions")],-1)),l("div",Vc,[c.value?(_(),C("span",{key:0,class:Y([c.value.startsWith("Error")?"text-danger":"text-success","text-sm"])},$(c.value),3)):Q("",!0),l("button",{onClick:y[0]||(y[0]=x=>i.value=!i.value),class:"px-4 py-2 rounded-xl bg-accent hover:bg-accentLight text-white text-sm font-medium transition"},$(i.value?"Cancel":"+ New Root Thread"),1),l("button",{onClick:M,class:"px-3 py-2 rounded-xl bg-card border border-gray-700 text-sm hover:bg-surface transition"}," ↻ Refresh ")])]),i.value?(_(),C("div",Hc,[l("div",Uc,[l("div",null,[y[15]||(y[15]=l("label",{class:"block text-xs text-textSecondary mb-1"},"Name",-1)),le(l("input",{"onUpdate:modelValue":y[1]||(y[1]=x=>a.value.name=x),type:"text",placeholder:"e.g. Main Workspace",class:"w-full px-3 py-2 rounded-lg bg-card border border-gray-700 text-sm text-textPrimary placeholder-muted focus:outline-none focus:border-accent transition"},null,512),[[he,a.value.name]])]),l("div",null,[y[16]||(y[16]=l("label",{class:"block text-xs text-textSecondary mb-1"},"Thread ID",-1)),le(l("input",{"onUpdate:modelValue":y[2]||(y[2]=x=>a.value.threadId=x),type:"number",min:"1",placeholder:"Telegram thread ID",class:"w-full px-3 py-2 rounded-lg bg-card border border-gray-700 text-sm text-textPrimary placeholder-muted focus:outline-none focus:border-accent transition"},null,512),[[he,a.value.threadId,void 0,{number:!0}]])]),l("div",null,[y[17]||(y[17]=l("label",{class:"block text-xs text-textSecondary mb-1"},"Client",-1)),le(l("select",{"onUpdate:modelValue":y[3]||(y[3]=x=>a.value.client=x),class:"w-full px-3 py-2 rounded-lg bg-card border border-gray-700 text-sm text-textPrimary focus:outline-none focus:border-accent transition appearance-none"},[(_(),C(oe,null,be(L,x=>l("option",{key:x,value:x},$(x),9,Bc)),64))],512),[[rs,a.value.client]])])]),l("div",null,[y[18]||(y[18]=l("label",{class:"block text-xs text-textSecondary mb-1"},"Working Directory (optional)",-1)),le(l("input",{"onUpdate:modelValue":y[4]||(y[4]=x=>a.value.workingDirectory=x),type:"text",placeholder:"e.g. C:\\src\\my-project",class:"w-full px-3 py-2 rounded-lg bg-card border border-gray-700 text-sm text-textPrimary placeholder-muted focus:outline-none focus:border-accent transition font-mono"},null,512),[[he,a.value.workingDirectory]])]),l("div",Kc,[l("button",{onClick:te,disabled:h.value||!a.value.name.trim()||!a.value.threadId,class:"px-4 py-2 rounded-xl bg-accent hover:bg-accentLight disabled:opacity-50 text-white text-sm font-medium transition"},$(h.value?"Creating…":"Create Root Thread"),9,Wc)])])):Q("",!0)]),s.value&&t.value.length===0?(_(),C("div",zc,"Loading threads…")):n.value?(_(),C("div",Jc,$(n.value),1)):t.value.length===0?(_(),C("div",qc,"No threads registered")):Q("",!0),F.value.length>0?(_(),C("div",Gc,[y[24]||(y[24]=l("h4",{class:"text-sm font-medium text-textSecondary uppercase tracking-wider mb-3"},"🟢 Root Threads",-1)),l("div",Yc,[(_(!0),C(oe,null,be(F.value,x=>{var q,ye;return _(),C("div",{key:x.id,class:"glass rounded-xl overflow-hidden"},[l("div",Zc,[l("div",Qc,[l("span",{class:Y(["inline-flex items-center gap-1 px-2 py-0.5 rounded-full text-xs font-medium border",(q=W[x.type])==null?void 0:q.classes])},$((ye=W[x.type])==null?void 0:ye.emoji)+" "+$(x.type.toUpperCase()),3),d.value===x.threadId?le((_(),C("input",{key:0,"onUpdate:modelValue":y[5]||(y[5]=P=>p.value=P),onBlur:P=>mt(x.threadId),onKeyup:[y[6]||(y[6]=zt(P=>P.target.blur(),["enter"])),y[7]||(y[7]=zt(P=>d.value=null,["escape"]))],class:"font-semibold bg-card border border-accent rounded px-1 py-0 text-textPrimary focus:outline-none w-40",ref_for:!0,ref:"nameInput"},null,40,Xc)),[[he,p.value]]):(_(),C("span",{key:1,class:"font-semibold cursor-pointer hover:text-accent transition",onDblclick:P=>ke(x),title:"Double-click to rename"},$(x.name),41,eu)),l("span",{class:Y(["text-xs font-medium",N(x.status)])},$(x.status),3),l("span",tu,"ID: "+$(x.threadId),1),l("select",{value:x.client,onChange:P=>X(x,P.target.value),class:"px-2 py-0.5 rounded-lg bg-card border border-gray-700 text-xs text-textPrimary focus:outline-none focus:border-accent transition appearance-none cursor-pointer",title:"Agent type"},[(_(),C(oe,null,be(L,P=>l("option",{key:P,value:P},$(P),9,nu)),64))],40,su),l("span",ou,$(Ce(x.lastActiveAt)),1),m.value===x.threadId?le((_(),C("input",{key:2,"onUpdate:modelValue":y[8]||(y[8]=P=>k.value=P),onKeyup:[zt(P=>ge(x.threadId),["enter"]),y[9]||(y[9]=zt(P=>m.value=null,["escape"]))],onBlur:P=>ge(x.threadId),type:"text",placeholder:"Set working directory…",class:"text-xs font-mono bg-card border border-accent rounded px-1 py-0 text-textPrimary focus:outline-none w-48"},null,40,ru)),[[he,k.value]]):(_(),C("span",{key:3,class:"text-xs text-muted font-mono truncate max-w-[200px] cursor-pointer hover:text-accent transition",title:(x.workingDirectory??"Click to set CWD")+" (dblclick to edit)",onDblclick:P=>Et(x)},"📁 "+$(x.workingDirectory??"—"),41,iu)),l("div",lu,[l("div",au,[l("button",{onClick:P=>ie(x),class:Y(["relative inline-flex h-5 w-9 items-center rounded-full transition-colors",x.keepAlive?"bg-accent":"bg-gray-700"]),title:"Toggle keep-alive"},[l("span",{class:Y(["inline-block h-3.5 w-3.5 transform rounded-full bg-white shadow transition-transform",x.keepAlive?"translate-x-4":"translate-x-0.5"])},null,2)],10,cu),y[19]||(y[19]=l("span",{class:"text-xs text-muted"},"Keep-alive",-1))]),l("div",uu,[l("button",{onClick:P=>He(x),class:Y(["relative inline-flex h-5 w-9 items-center rounded-full transition-colors",x.dailyRotation?"bg-blue-500":"bg-gray-700"]),title:"Toggle daily rotation"},[l("span",{class:Y(["inline-block h-3.5 w-3.5 transform rounded-full bg-white shadow transition-transform",x.dailyRotation?"translate-x-4":"translate-x-0.5"])},null,2)],10,du),y[20]||(y[20]=l("span",{class:"text-xs text-muted"},"Daily",-1))]),l("div",fu,[l("button",{onClick:P=>ze(x),class:Y(["relative inline-flex h-5 w-9 items-center rounded-full transition-colors",x.autonomousMode?"bg-orange-500":"bg-gray-700"]),title:"Toggle autonomous mode"},[l("span",{class:Y(["inline-block h-3.5 w-3.5 transform rounded-full bg-white shadow transition-transform",x.autonomousMode?"translate-x-4":"translate-x-0.5"])},null,2)],10,pu),y[21]||(y[21]=l("span",{class:"text-xs text-muted"},"Auto",-1))]),l("button",{onClick:P=>de(x.threadId),class:"px-2 py-1 rounded-lg text-xs bg-card border border-gray-700 hover:bg-surface transition"},$(r.value.has(x.threadId)?"▾ Children":"▸ Children"),9,hu),l("button",{onClick:P=>{V.value=V.value===x.threadId?null:x.threadId,A.value={name:"",threadId:0,client:"claude"},H.value=""},class:"px-2 py-1 rounded-lg text-xs bg-purple-500/20 text-purple-400 border border-purple-500/30 hover:bg-purple-500/30 transition"}," + Branch ",8,mu),l("button",{onClick:P=>Ie(x),class:"px-2 py-1 rounded-lg text-xs bg-red-500/20 text-red-400 border border-red-500/30 hover:bg-red-500/30 transition"}," Archive ",8,gu)])]),V.value===x.threadId?(_(),C("div",xu,[l("div",vu,[le(l("input",{"onUpdate:modelValue":y[10]||(y[10]=P=>A.value.name=P),type:"text",placeholder:"Branch name",class:"px-3 py-1.5 rounded-lg bg-card border border-gray-700 text-sm text-textPrimary placeholder-muted focus:outline-none focus:border-accent transition"},null,512),[[he,A.value.name]]),le(l("input",{"onUpdate:modelValue":y[11]||(y[11]=P=>A.value.threadId=P),type:"number",min:"1",placeholder:"Thread ID",class:"px-3 py-1.5 rounded-lg bg-card border border-gray-700 text-sm text-textPrimary placeholder-muted focus:outline-none focus:border-accent transition"},null,512),[[he,A.value.threadId,void 0,{number:!0}]]),le(l("select",{"onUpdate:modelValue":y[12]||(y[12]=P=>A.value.client=P),class:"px-3 py-1.5 rounded-lg bg-card border border-gray-700 text-sm text-textPrimary focus:outline-none focus:border-accent transition appearance-none"},[(_(),C(oe,null,be(L,P=>l("option",{key:P,value:P},$(P),9,yu)),64))],512),[[rs,A.value.client]])]),le(l("input",{"onUpdate:modelValue":y[13]||(y[13]=P=>A.value.workingDirectory=P),type:"text",placeholder:"Working directory (optional)",class:"w-full px-3 py-1.5 rounded-lg bg-card border border-gray-700 text-sm text-textPrimary placeholder-muted focus:outline-none focus:border-accent transition font-mono"},null,512),[[he,A.value.workingDirectory]]),l("div",bu,[l("button",{onClick:P=>Se(x.threadId),disabled:O.value||!A.value.name.trim()||!A.value.threadId,class:"px-3 py-1.5 rounded-lg bg-accent hover:bg-accentLight disabled:opacity-50 text-white text-xs font-medium transition"},$(O.value?"Creating…":"Create Branch"),9,_u),H.value?(_(),C("span",{key:0,class:Y([H.value.startsWith("Error")?"text-danger":"text-success","text-xs"])},$(H.value),3)):Q("",!0)])])):Q("",!0)]),r.value.has(x.threadId)&&o.value[x.threadId]?(_(),C("div",wu,[o.value[x.threadId].length===0?(_(),C("div",Su,"No children")):Q("",!0),(_(!0),C(oe,null,be(o.value[x.threadId],P=>{var gt,Ls;return _(),C("div",{key:P.id,class:"flex flex-wrap items-center gap-2 px-3 py-2 rounded-lg bg-card/50 border border-gray-700/30"},[l("span",{class:Y(["inline-flex items-center gap-1 px-1.5 py-0.5 rounded-full text-xs font-medium border",(gt=W[P.type])==null?void 0:gt.classes])},$((Ls=W[P.type])==null?void 0:Ls.emoji)+" "+$(P.type.toUpperCase()),3),l("span",Cu,$(P.name),1),l("span",{class:Y(["text-xs",N(P.status)])},$(P.status),3),l("span",ku,"ID: "+$(P.threadId),1),l("select",{value:P.client,onChange:u=>X(P,u.target.value),class:"px-2 py-0.5 rounded-lg bg-card border border-gray-700 text-xs text-textPrimary focus:outline-none focus:border-accent transition appearance-none cursor-pointer",title:"Agent type"},[(_(),C(oe,null,be(L,u=>l("option",{key:u,value:u},$(u),9,$u)),64))],40,Tu),l("span",Au,$(Ce(P.lastActiveAt)),1),l("div",Eu,[P.type==="branch"?(_(),C("div",Pu,[l("button",{onClick:u=>ie(P),class:Y(["relative inline-flex h-5 w-9 items-center rounded-full transition-colors",P.keepAlive?"bg-accent":"bg-gray-700"]),title:"Toggle keep-alive"},[l("span",{class:Y(["inline-block h-3.5 w-3.5 transform rounded-full bg-white shadow transition-transform",P.keepAlive?"translate-x-4":"translate-x-0.5"])},null,2)],10,Iu),y[22]||(y[22]=l("span",{class:"text-xs text-muted"},"Keep-alive",-1))])):Q("",!0),P.type==="branch"?(_(),C("div",Mu,[l("button",{onClick:u=>ze(P),class:Y(["relative inline-flex h-5 w-9 items-center rounded-full transition-colors",P.autonomousMode?"bg-orange-500":"bg-gray-700"]),title:"Toggle autonomous mode"},[l("span",{class:Y(["inline-block h-3.5 w-3.5 transform rounded-full bg-white shadow transition-transform",P.autonomousMode?"translate-x-4":"translate-x-0.5"])},null,2)],10,Ou),y[23]||(y[23]=l("span",{class:"text-xs text-muted"},"Auto",-1))])):Q("",!0),P.type!=="root"?(_(),C("button",{key:2,onClick:u=>Ie(P),class:"px-2 py-0.5 rounded-lg text-xs bg-red-500/10 text-red-400 border border-red-500/20 hover:bg-red-500/20 transition"}," Archive ",8,Du)):Q("",!0)])])}),128))])):Q("",!0)])}),128))])])):Q("",!0),re.value.length>0?(_(),C("div",Ru,[y[25]||(y[25]=l("h4",{class:"text-sm font-medium text-textSecondary uppercase tracking-wider mb-3"},"🔵 Daily Sessions",-1)),l("div",ju,[(_(!0),C(oe,null,be(re.value,x=>{var q,ye;return _(),C("div",{key:x.id,class:"glass rounded-xl p-4 flex flex-wrap items-center gap-3"},[l("span",{class:Y(["inline-flex items-center gap-1 px-2 py-0.5 rounded-full text-xs font-medium border",(q=W[x.type])==null?void 0:q.classes])},$((ye=W[x.type])==null?void 0:ye.emoji)+" "+$(x.type.toUpperCase()),3),l("span",Nu,$(x.name),1),l("span",{class:Y(["text-xs font-medium",N(x.status)])},$(x.status),3),l("span",Lu,"ID: "+$(x.threadId),1),l("span",Fu,$(x.client),1),l("span",Vu,$(Ce(x.lastActiveAt)),1),l("button",{onClick:P=>Ie(x),class:"ml-auto px-2 py-1 rounded-lg text-xs bg-red-500/10 text-red-400 border border-red-500/20 hover:bg-red-500/20 transition"}," Archive ",8,Hu)])}),128))])])):Q("",!0),we.value.length>0?(_(),C("div",Uu,[y[28]||(y[28]=l("h4",{class:"text-sm font-medium text-textSecondary uppercase tracking-wider mb-3"},"🟣 Branches",-1)),l("div",Bu,[(_(!0),C(oe,null,be(we.value,x=>{var q,ye;return _(),C("div",{key:x.id,class:"glass rounded-xl p-4 flex flex-wrap items-center gap-3"},[l("span",{class:Y(["inline-flex items-center gap-1 px-2 py-0.5 rounded-full text-xs font-medium border",(q=W[x.type])==null?void 0:q.classes])},$((ye=W[x.type])==null?void 0:ye.emoji)+" "+$(x.type.toUpperCase()),3),l("span",Ku,$(x.name),1),l("span",{class:Y(["text-xs font-medium",N(x.status)])},$(x.status),3),l("span",Wu,"ID: "+$(x.threadId),1),l("select",{value:x.client,onChange:P=>X(x,P.target.value),class:"px-2 py-0.5 rounded-lg bg-card border border-gray-700 text-xs text-textPrimary focus:outline-none focus:border-accent transition appearance-none cursor-pointer",title:"Agent type"},[(_(),C(oe,null,be(L,P=>l("option",{key:P,value:P},$(P),9,Ju)),64))],40,zu),l("span",qu,$(Ce(x.lastActiveAt)),1),l("div",Gu,[l("div",Yu,[l("button",{onClick:P=>ie(x),class:Y(["relative inline-flex h-5 w-9 items-center rounded-full transition-colors",x.keepAlive?"bg-accent":"bg-gray-700"]),title:"Toggle keep-alive"},[l("span",{class:Y(["inline-block h-3.5 w-3.5 transform rounded-full bg-white shadow transition-transform",x.keepAlive?"translate-x-4":"translate-x-0.5"])},null,2)],10,Zu),y[26]||(y[26]=l("span",{class:"text-xs text-muted"},"Keep-alive",-1))]),l("div",Qu,[l("button",{onClick:P=>ze(x),class:Y(["relative inline-flex h-5 w-9 items-center rounded-full transition-colors",x.autonomousMode?"bg-orange-500":"bg-gray-700"]),title:"Toggle autonomous mode"},[l("span",{class:Y(["inline-block h-3.5 w-3.5 transform rounded-full bg-white shadow transition-transform",x.autonomousMode?"translate-x-4":"translate-x-0.5"])},null,2)],10,Xu),y[27]||(y[27]=l("span",{class:"text-xs text-muted"},"Auto",-1))]),l("button",{onClick:P=>Ie(x),class:"px-2 py-1 rounded-lg text-xs bg-red-500/10 text-red-400 border border-red-500/20 hover:bg-red-500/20 transition"}," Archive ",8,ed)])])}),128))])])):Q("",!0),J.value.length>0?(_(),C("div",td,[y[29]||(y[29]=l("h4",{class:"text-sm font-medium text-textSecondary uppercase tracking-wider mb-3"},"🟡 Workers",-1)),l("div",sd,[(_(!0),C(oe,null,be(J.value,x=>{var q,ye;return _(),C("div",{key:x.id,class:"glass rounded-xl p-4 flex flex-wrap items-center gap-3"},[l("span",{class:Y(["inline-flex items-center gap-1 px-2 py-0.5 rounded-full text-xs font-medium border",(q=W[x.type])==null?void 0:q.classes])},$((ye=W[x.type])==null?void 0:ye.emoji)+" "+$(x.type.toUpperCase()),3),l("span",nd,$(x.name),1),l("span",{class:Y(["text-xs font-medium",N(x.status)])},$(x.status),3),l("span",od,"ID: "+$(x.threadId),1),l("select",{value:x.client,onChange:P=>X(x,P.target.value),class:"px-2 py-0.5 rounded-lg bg-card border border-gray-700 text-xs text-textPrimary focus:outline-none focus:border-accent transition appearance-none cursor-pointer",title:"Agent type"},[(_(),C(oe,null,be(L,P=>l("option",{key:P,value:P},$(P),9,id)),64))],40,rd),l("span",ld,$(Ce(x.lastActiveAt)),1),l("button",{onClick:P=>Ie(x),class:"ml-auto px-2 py-1 rounded-lg text-xs bg-red-500/10 text-red-400 border border-red-500/20 hover:bg-red-500/20 transition"}," Archive ",8,ad)])}),128))])])):Q("",!0)]))}}),ud={class:"animate-fade-in"},dd={class:"glass rounded-xl p-6 mb-6"},fd={class:"flex flex-wrap items-center justify-between gap-4 mb-6"},pd={class:"flex items-center gap-3"},hd=["disabled"],md={key:0,class:"text-center py-8 text-textSecondary text-sm"},gd={key:1,class:"space-y-6"},xd={class:"glass rounded-xl p-4 border border-gray-700/50"},vd={class:"flex items-center gap-4"},yd={class:"flex justify-between text-xs text-muted mt-2"},bd={class:"font-mono"},_d={key:0,class:"mt-3 px-3 py-2 rounded-lg bg-warn/10 border border-warn/20 text-xs text-warn"},wd={class:"glass rounded-xl p-4 border border-gray-700/50"},Sd={class:"flex items-center gap-4"},Cd={class:"flex justify-between text-xs text-muted mt-2"},kd={class:"font-mono"},Td={class:"glass rounded-xl p-4 border border-gray-700/30 bg-surface/30"},$d={class:"grid grid-cols-3 gap-4"},Ad={class:"text-sm font-medium text-textSecondary"},Ed=At({__name:"SettingsTab",setup(e){const t=j(!0),s=j(!1),n=j(""),o=j(50),r=j(50),i=j(1440),a=j(1440),c=Be(()=>o.value!==r.value||i.value!==a.value);async function h(){t.value=!0;try{const[p,m]=await Promise.all([ve("/api/settings/bootstrap-message-count"),ve("/api/settings/wait-timeout")]);o.value=p.count,r.value=p.count,i.value=m.minutes,a.value=m.minutes}finally{t.value=!1}}async function d(){s.value=!0,n.value="";try{const p={Authorization:`Bearer ${_e()}`,"Content-Type":"application/json"},[m,k]=await Promise.all([fetch("/api/settings/bootstrap-message-count",{method:"POST",headers:p,body:JSON.stringify({count:o.value})}),fetch("/api/settings/wait-timeout",{method:"POST",headers:p,body:JSON.stringify({minutes:i.value})})]);for(const H of[m,k])if(!H.ok){const O=await H.json().catch(()=>({error:H.statusText}));throw new Error(O.error??H.statusText)}const V=await m.json(),A=await k.json();r.value=V.count,o.value=V.count,a.value=A.minutes,i.value=A.minutes,n.value="Saved ✓",setTimeout(()=>{n.value=""},3e3)}catch(p){n.value="Error: "+p.message}finally{s.value=!1}}return wt(h),(p,m)=>(_(),C("div",ud,[l("div",dd,[l("div",fd,[m[4]||(m[4]=l("div",null,[l("h3",{class:"text-lg font-semibold"},"Settings"),l("p",{class:"text-sm text-textSecondary mt-1"},"Configure agent behavior and context injection")],-1)),l("div",pd,[n.value?(_(),C("span",{key:0,class:Y([n.value.startsWith("Error")?"text-danger":"text-success","text-sm"])},$(n.value),3)):Q("",!0),l("button",{onClick:d,disabled:s.value||t.value||!c.value,class:"px-4 py-2 rounded-xl bg-accent hover:bg-accentLight disabled:opacity-50 text-white text-sm font-medium transition"},$(s.value?"Saving…":"Save"),9,hd)])]),t.value?(_(),C("div",md,"Loading…")):(_(),C("div",gd,[l("div",xd,[m[8]||(m[8]=l("label",{class:"block text-sm font-medium mb-1"},"Recent Conversation Buffer",-1)),m[9]||(m[9]=l("p",{class:"text-xs text-textSecondary mb-3"},[vt(" Number of recent messages injected into the agent's bootstrap context. Set to "),l("span",{class:"font-mono text-accentLight"},"0"),vt(" to disable (useful when using VS Code, which maintains its own conversation history). ")],-1)),l("div",vd,[le(l("input",{"onUpdate:modelValue":m[0]||(m[0]=k=>o.value=k),type:"range",min:"0",max:"100",step:"5",class:"flex-1 accent-accent"},null,512),[[he,o.value,void 0,{number:!0}]]),le(l("input",{"onUpdate:modelValue":m[1]||(m[1]=k=>o.value=k),type:"number",min:"0",max:"200",class:"w-20 px-3 py-2 rounded-lg bg-surface border border-gray-700 text-sm text-textPrimary font-mono text-center focus:outline-none focus:border-accent transition"},null,512),[[he,o.value,void 0,{number:!0}]])]),l("div",yd,[m[5]||(m[5]=l("span",null,"Off",-1)),l("span",bd,$(o.value)+" messages",1),m[6]||(m[6]=l("span",null,"Max",-1))]),o.value===0?(_(),C("div",_d,[...m[7]||(m[7]=[vt(" Message buffer injection is ",-1),l("strong",null,"disabled",-1),vt(". The agent will not see recent conversation history in its bootstrap context. Use this when VS Code (or another IDE) already provides conversation history. ",-1)])])):Q("",!0)]),l("div",wd,[m[12]||(m[12]=l("label",{class:"block text-sm font-medium mb-1"},"Poll Timeout (wait_for_instructions)",-1)),m[13]||(m[13]=l("p",{class:"text-xs text-textSecondary mb-3"},[vt(" Maximum time (in minutes) a single "),l("span",{class:"font-mono text-accentLight"},"wait_for_instructions"),vt(" call will poll before timing out. Claude Code agents use the full value; Copilot agents are capped at 10 min. ")],-1)),l("div",Sd,[le(l("input",{"onUpdate:modelValue":m[2]||(m[2]=k=>i.value=k),type:"range",min:"1",max:"1440",step:"10",class:"flex-1 accent-accent"},null,512),[[he,i.value,void 0,{number:!0}]]),le(l("input",{"onUpdate:modelValue":m[3]||(m[3]=k=>i.value=k),type:"number",min:"1",max:"10080",class:"w-24 px-3 py-2 rounded-lg bg-surface border border-gray-700 text-sm text-textPrimary font-mono text-center focus:outline-none focus:border-accent transition"},null,512),[[he,i.value,void 0,{number:!0}]])]),l("div",Cd,[m[10]||(m[10]=l("span",null,"1 min",-1)),l("span",kd,$(i.value>=60?Math.floor(i.value/60)+"h "+i.value%60+"m":i.value+" min"),1),m[11]||(m[11]=l("span",null,"24h",-1))])]),l("div",Td,[m[17]||(m[17]=l("div",{class:"text-xs font-medium text-textSecondary uppercase tracking-wider mb-3"},"Current State",-1)),l("div",$d,[l("div",null,[m[14]||(m[14]=l("div",{class:"text-xs text-muted mb-1"},"Message Buffer",-1)),l("span",{class:Y(["text-sm font-medium",r.value>0?"text-success":"text-textSecondary"])},$(r.value>0?`${r.value} messages`:"Disabled"),3)]),l("div",null,[m[15]||(m[15]=l("div",{class:"text-xs text-muted mb-1"},"Poll Timeout",-1)),l("span",Ad,$(a.value>=60?Math.floor(a.value/60)+"h "+a.value%60+"m":a.value+" min"),1)]),l("div",null,[m[16]||(m[16]=l("div",{class:"text-xs text-muted mb-1"},"Status",-1)),l("span",{class:Y(["text-sm font-medium",c.value?"text-warn":"text-textSecondary"])},$(c.value?"Unsaved changes":"Saved"),3)])])])]))])]))}}),Pd={key:0,class:"fixed inset-0 z-50 flex items-center justify-center bg-surface/95 backdrop-blur-sm"},Id={class:"glass rounded-2xl p-8 max-w-md w-full mx-4 animate-slide-up"},Md=["disabled"],Od={key:0,class:"mt-3 text-sm text-danger"},Dd={key:1,class:"min-h-screen font-sans text-textPrimary animate-fade-in"},Rd={class:"glass sticky top-0 z-40 border-b border-gray-800/50"},jd={class:"max-w-7xl mx-auto px-4 sm:px-6 py-4 flex items-center justify-between"},Nd={class:"flex items-center gap-4"},Ld={class:"text-sm text-textSecondary font-mono"},Fd={class:"max-w-7xl mx-auto px-4 sm:px-6 py-6"},Vd={class:"grid grid-cols-2 sm:grid-cols-3 lg:grid-cols-6 gap-3"},Hd={class:"glass rounded-xl p-4 stat-glow animate-slide-up"},Ud={class:"text-2xl font-bold font-mono"},Bd={class:"glass rounded-xl p-4 stat-glow animate-slide-up"},Kd={class:"text-2xl font-bold font-mono"},Wd={class:"glass rounded-xl p-4 stat-glow animate-slide-up"},zd={class:"text-2xl font-bold font-mono"},Jd={class:"glass rounded-xl p-4 stat-glow animate-slide-up"},qd={class:"flex items-center gap-2 mb-2"},Gd={class:"text-2xl font-bold font-mono"},Yd={class:"glass rounded-xl p-4 stat-glow animate-slide-up"},Zd={class:"text-2xl font-bold font-mono"},Qd={class:"glass rounded-xl p-4 stat-glow animate-slide-up"},Xd={class:"text-2xl font-bold font-mono"},ef={class:"max-w-7xl mx-auto px-4 sm:px-6"},tf={class:"flex gap-6 border-b border-gray-800/50 mb-6"},sf=["onClick"],nf={class:"max-w-7xl mx-auto px-4 sm:px-6 pb-12"},ps="sensorium_token",of=At({__name:"App",setup(e){const t=j(!1),s=j(""),n=j(""),o=j(!1),r=j(null),i=j("sessions");let a=null;const c=[{id:"sessions",label:"Sessions"},{id:"notes",label:"Memory Notes"},{id:"templates",label:"Templates"},{id:"skills",label:"Skills"},{id:"threads",label:"Threads"},{id:"settings",label:"Settings"}],h={sessions:oa,notes:wa,templates:oc,skills:jc,threads:cd,settings:Ed},d=Be(()=>h[i.value]),p=Be(()=>{if(!r.value)return"—";const H=Math.floor(r.value.uptime),O=Math.floor(H/86400),L=Math.floor(H%86400/3600),W=Math.floor(H%3600/60);return O>0?`${O}d ${L}h`:L>0?`${L}h ${W}m`:`${W}m`});async function m(){const H=s.value.trim()||"no-auth";o.value=!0,n.value="";try{Kt(H),await V(),localStorage.setItem(ps,H),t.value=!0,A()}catch(O){const L=O;L.status===401?n.value="Invalid token":n.value=L.message??"Connection failed",Kt("")}finally{o.value=!1}}function k(){localStorage.removeItem(ps),t.value=!1,s.value="",r.value=null,a&&clearInterval(a),Kt("")}async function V(){r.value=await ve("/api/status")}function A(){a&&clearInterval(a),a=setInterval(V,3e4)}return wt(async()=>{const H=localStorage.getItem(ps);if(H){s.value=H;try{Kt(H),await V(),t.value=!0,A()}catch{localStorage.removeItem(ps),Kt("")}}}),_n(()=>{a&&clearInterval(a)}),(H,O)=>{var L,W,F,re,we,J,M,K,de,te,Se;return t.value?(_(),C("div",Dd,[l("header",Rd,[l("div",jd,[O[3]||(O[3]=Ue('<div class="flex items-center gap-3"><div class="w-8 h-8 rounded-lg bg-gradient-to-br from-accent to-purple-500 flex items-center justify-center"><span class="text-white text-sm font-bold">S</span></div><div><h1 class="text-lg font-semibold tracking-tight">Sensorium MCP</h1><p class="text-xs text-textSecondary">Agent Dashboard</p></div></div>',1)),l("div",Nd,[O[2]||(O[2]=l("div",{class:"flex items-center gap-2 text-sm"},[l("span",{class:"w-2 h-2 rounded-full bg-success animate-pulse-slow"}),l("span",{class:"text-textSecondary"},"Connected")],-1)),l("div",Ld,$(p.value),1),l("button",{onClick:k,class:"text-sm text-muted hover:text-textSecondary transition"},"Disconnect")])])]),l("div",Fd,[l("div",Vd,[l("div",Hd,[O[4]||(O[4]=Ue('<div class="flex items-center gap-2 mb-2"><span class="text-success"><svg class="w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M17 20h5v-2a3 3 0 00-5.356-1.857M17 20H7m10 0v-2c0-.656-.126-1.283-.356-1.857M7 20H2v-2a3 3 0 015.356-1.857M7 20v-2c0-.656.126-1.283.356-1.857m0 0a5.002 5.002 0 019.288 0M15 7a3 3 0 11-6 0 3 3 0 016 0z"></path></svg></span><span class="text-xs text-textSecondary font-medium uppercase tracking-wider">Sessions</span></div>',1)),l("div",Ud,$(((L=r.value)==null?void 0:L.activeSessions)??0),1)]),l("div",Bd,[O[5]||(O[5]=Ue('<div class="flex items-center gap-2 mb-2"><span class="text-accentLight"><svg class="w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 12h6m-6 4h6m2 5H7a2 2 0 01-2-2V5a2 2 0 012-2h5.586a1 1 0 01.707.293l5.414 5.414a1 1 0 01.293.707V19a2 2 0 01-2 2z"></path></svg></span><span class="text-xs text-textSecondary font-medium uppercase tracking-wider">Notes</span></div>',1)),l("div",Kd,$(((F=(W=r.value)==null?void 0:W.memory)==null?void 0:F.totalSemanticNotes)??0),1)]),l("div",Wd,[O[6]||(O[6]=Ue('<div class="flex items-center gap-2 mb-2"><span class="text-warn"><svg class="w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M13 10V3L4 14h7v7l9-11h-7z"></path></svg></span><span class="text-xs text-textSecondary font-medium uppercase tracking-wider">Episodes</span></div>',1)),l("div",zd,$(((we=(re=r.value)==null?void 0:re.memory)==null?void 0:we.totalEpisodes)??0),1)]),l("div",Jd,[l("div",qd,[l("span",{class:Y((((M=(J=r.value)==null?void 0:J.memory)==null?void 0:M.unconsolidatedEpisodes)??0)>10?"text-danger":"text-success")},[...O[7]||(O[7]=[l("svg",{class:"w-4 h-4",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[l("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M12 8v4l3 3m6-3a9 9 0 11-18 0 9 9 0 0118 0z"})],-1)])],2),O[8]||(O[8]=l("span",{class:"text-xs text-textSecondary font-medium uppercase tracking-wider"},"Unconsolidated",-1))]),l("div",Gd,$(((de=(K=r.value)==null?void 0:K.memory)==null?void 0:de.unconsolidatedEpisodes)??0),1)]),l("div",Yd,[O[9]||(O[9]=Ue('<div class="flex items-center gap-2 mb-2"><span class="text-accent"><svg class="w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M10.325 4.317c.426-1.756 2.924-1.756 3.35 0a1.724 1.724 0 002.573 1.066c1.543-.94 3.31.826 2.37 2.37a1.724 1.724 0 001.066 2.573c1.756.426 1.756 2.924 0 3.35a1.724 1.724 0 00-1.066 2.573c.94 1.543-.826 3.31-2.37 2.37a1.724 1.724 0 00-2.573 1.066c-.426 1.756-2.924 1.756-3.35 0a1.724 1.724 0 00-2.573-1.066c-1.543.94-3.31-.826-2.37-2.37a1.724 1.724 0 00-1.066-2.573c-1.756-.426-1.756-2.924 0-3.35a1.724 1.724 0 001.066-2.573c-.94-1.543.826-3.31 2.37-2.37.996.608 2.296.07 2.572-1.065z"></path><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M15 12a3 3 0 11-6 0 3 3 0 016 0z"></path></svg></span><span class="text-xs text-textSecondary font-medium uppercase tracking-wider">Procedures</span></div>',1)),l("div",Zd,$(((Se=(te=r.value)==null?void 0:te.memory)==null?void 0:Se.totalProcedures)??0),1)]),l("div",Qd,[O[10]||(O[10]=Ue('<div class="flex items-center gap-2 mb-2"><span class="text-success"><svg class="w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M5 12h14M12 5l7 7-7 7"></path></svg></span><span class="text-xs text-textSecondary font-medium uppercase tracking-wider">Uptime</span></div>',1)),l("div",Xd,$(p.value),1)])])]),l("div",ef,[l("nav",tf,[(_(),C(oe,null,be(c,ke=>l("button",{key:ke.id,onClick:mt=>i.value=ke.id,class:Y(["pb-3 text-sm font-medium transition",i.value===ke.id?"tab-active":"tab-inactive"])},$(ke.label),11,sf)),64))])]),l("div",nf,[(_(),dr(Ai(d.value),{status:r.value},null,8,["status"]))])])):(_(),C("div",Pd,[l("div",Id,[O[1]||(O[1]=Ue('<div class="flex items-center gap-3 mb-6"><div class="w-10 h-10 rounded-xl bg-accent/20 flex items-center justify-center"><svg class="w-5 h-5 text-accent" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M12 15v2m-6 4h12a2 2 0 002-2v-6a2 2 0 00-2-2H6a2 2 0 00-2 2v6a2 2 0 002 2zm10-10V7a4 4 0 00-8 0v4h8z"></path></svg></div><div><h2 class="text-lg font-semibold">Sensorium MCP</h2><p class="text-sm text-textSecondary">Enter your API token</p></div></div>',1)),le(l("input",{"onUpdate:modelValue":O[0]||(O[0]=ke=>s.value=ke),type:"password",placeholder:"MCP_HTTP_SECRET",class:"w-full px-4 py-3 rounded-xl bg-surface border border-gray-700 text-textPrimary placeholder-muted focus:outline-none focus:border-accent focus:ring-1 focus:ring-accent transition font-mono text-sm",onKeydown:zt(m,["enter"])},null,544),[[he,s.value]]),l("button",{onClick:m,disabled:o.value,class:"w-full mt-4 px-4 py-3 rounded-xl bg-accent hover:bg-accentLight disabled:opacity-50 text-white font-medium transition"},$(o.value?"Connecting...":"Connect"),9,Md),n.value?(_(),C("p",Od,$(n.value),1)):Q("",!0)])]))}}});Hl(of).mount("#app");</script>
71
+ `,se+de}async function V(){if(!n.value)return;const z=n.value.name;try{const I=r.value.split(",").map(Se=>Se.trim()).filter(Boolean),W=o.value;let de;W.trimStart().startsWith("---")?de=W:de=B(z,I,l.value,W);const se=await fetch(`/api/skills/${encodeURIComponent(z)}`,{method:"PUT",headers:{Authorization:`Bearer ${we()}`,"Content-Type":"application/json"},body:JSON.stringify({content:de})});if(!se.ok)throw new Error(se.statusText);a.value="Saved ✓",setTimeout(()=>{a.value=""},3e3),await U()}catch(I){a.value="Error: "+I.message}}async function ee(){if(!n.value)return;const z=n.value.name;try{const I=await fetch(`/api/skills/${encodeURIComponent(z)}`,{method:"DELETE",headers:{Authorization:`Bearer ${we()}`}});if(!I.ok)throw new Error(I.statusText);L(),await U()}catch(I){c.value="Error: "+I.message}}async function ge(){const z=d.value.trim(),I=m.value;if(!z){P.value="Name is required";return}const W=I.split(",").map(se=>se.trim()).filter(Boolean);if(!W.length){P.value="At least one trigger is required";return}const de=B(z,W,v.value,`\x3C!-- Write your skill instructions here -->
72
+ `);try{const se=await fetch(`/api/skills/${encodeURIComponent(z)}`,{method:"PUT",headers:{Authorization:`Bearer ${we()}`,"Content-Type":"application/json"},body:JSON.stringify({content:de})});if(!se.ok)throw new Error(se.statusText);P.value="Created ✓",p.value=!1,await U();const Se=t.value.find(ke=>ke.name===z);Se&&E(Se)}catch(se){P.value="Error: "+se.message}}return wt(U),(z,I)=>(w(),k("div",rc,[i("div",ic,[i("div",lc,[I[8]||(I[8]=i("div",null,[i("h3",{class:"text-lg font-semibold"},"Skill Library"),i("p",{class:"text-sm text-textSecondary mt-1"},"Manage intent-routing skills — user overrides, defaults, and project skills")],-1)),i("button",{onClick:I[0]||(I[0]=W=>{p.value=!p.value,n.value=null}),class:"px-4 py-2 rounded-xl bg-accent hover:bg-accentLight text-white text-sm font-medium transition"}," + New Skill ")]),p.value?(w(),k("div",ac,[I[12]||(I[12]=i("h4",{class:"text-sm font-semibold mb-3"},"Create New Skill",-1)),i("div",cc,[i("div",null,[I[9]||(I[9]=i("label",{class:"text-xs text-textSecondary block mb-1"},"Name",-1)),ne(i("input",{"onUpdate:modelValue":I[1]||(I[1]=W=>d.value=W),type:"text",placeholder:"my-skill",class:"w-full px-3 py-2 rounded-lg bg-surface border border-gray-700 text-sm text-textPrimary font-mono focus:outline-none focus:border-accent transition"},null,512),[[me,d.value]])]),i("div",null,[I[10]||(I[10]=i("label",{class:"text-xs text-textSecondary block mb-1"},"Triggers (comma-separated)",-1)),ne(i("input",{"onUpdate:modelValue":I[2]||(I[2]=W=>m.value=W),type:"text",placeholder:"trigger1, trigger2",class:"w-full px-3 py-2 rounded-lg bg-surface border border-gray-700 text-sm text-textPrimary focus:outline-none focus:border-accent transition"},null,512),[[me,m.value]])])]),i("div",uc,[i("label",dc,[ne(i("input",{"onUpdate:modelValue":I[3]||(I[3]=W=>v.value=W),type:"checkbox",class:"rounded"},null,512),[[lo,v.value]]),I[11]||(I[11]=i("span",null,"Replaces orchestrator",-1))])]),i("div",fc,[i("button",{onClick:ge,class:"px-4 py-2 rounded-xl bg-accent hover:bg-accentLight text-white text-sm font-medium transition"},"Create"),i("button",{onClick:I[4]||(I[4]=W=>p.value=!1),class:"px-4 py-2 rounded-xl bg-card hover:bg-cardHover border border-gray-700 text-sm text-textSecondary hover:text-textPrimary transition"},"Cancel"),P.value?(w(),k("span",pc,T(P.value),1)):Q("",!0)])])):Q("",!0),s.value?(w(),k("div",mc,"Loading...")):t.value.length===0?(w(),k("div",hc,"No skills loaded")):(w(),k("div",gc,[(w(!0),k(ie,null,_e(t.value,W=>{var de;return w(),k("div",{key:W.name,onClick:se=>E(W),class:Y(["glass rounded-xl p-4 cursor-pointer hover:bg-cardHover transition border",((de=n.value)==null?void 0:de.name)===W.name?"border-accent":"border-transparent"])},[i("div",vc,[i("div",yc,[i("div",bc,[i("span",_c,T(W.name),1),i("span",{class:"type-badge",style:Ms(b(A(W.source)))},T(A(W.source)),5),W.replacesOrchestrator?(w(),k("span",wc,"REPLACES ORCH")):Q("",!0)]),i("div",Sc,[(w(!0),k(ie,null,_e(W.triggers||[],se=>(w(),k("span",{key:se,class:"text-xs px-2 py-0.5 rounded-full bg-accent/10 text-accentLight"},T(se),1))),128))])]),i("div",{class:"text-xs text-muted font-mono shrink-0 max-w-[200px] truncate",title:W.source||""},T((W.source||"").split(/[\\/]/).pop()||""),9,Cc)])],10,xc)}),128))]))]),n.value?(w(),k("div",kc,[i("div",Tc,[i("div",null,[i("h3",$c,"Edit: "+T(n.value.name),1),i("p",Ac,T(n.value.source||"(unknown source)"),1)]),i("div",Ec,[a.value?(w(),k("span",Pc,T(a.value),1)):Q("",!0),c.value?(w(),k("span",Mc,T(c.value),1)):Q("",!0),A(n.value.source)==="user"?(w(),k("button",{key:2,onClick:ee,class:"px-4 py-2 rounded-xl bg-card hover:bg-red-900/40 border border-gray-700 hover:border-red-700 text-sm text-textSecondary hover:text-red-400 transition",title:"Remove user override (reverts to default)"},"Remove override")):Q("",!0),i("button",{onClick:L,class:"px-4 py-2 rounded-xl bg-card hover:bg-cardHover border border-gray-700 text-sm text-textSecondary hover:text-textPrimary transition"},"Close"),i("button",{onClick:V,class:"px-4 py-2 rounded-xl bg-accent hover:bg-accentLight text-white text-sm font-medium transition"},"Save")])]),i("div",Ic,[i("div",null,[I[13]||(I[13]=i("label",{class:"text-xs text-textSecondary block mb-1"},"Name",-1)),i("input",{value:n.value.name,type:"text",readonly:"",class:"w-full px-3 py-2 rounded-lg bg-surface border border-gray-700 text-sm text-textPrimary font-mono opacity-60 cursor-not-allowed"},null,8,Oc)]),i("div",null,[I[14]||(I[14]=i("label",{class:"text-xs text-textSecondary block mb-1"},"Triggers (comma-separated)",-1)),ne(i("input",{"onUpdate:modelValue":I[5]||(I[5]=W=>r.value=W),type:"text",class:"w-full px-3 py-2 rounded-lg bg-surface border border-gray-700 text-sm text-textPrimary focus:outline-none focus:border-accent transition"},null,512),[[me,r.value]])]),i("div",Dc,[i("label",Rc,[ne(i("input",{"onUpdate:modelValue":I[6]||(I[6]=W=>l.value=W),type:"checkbox",class:"rounded"},null,512),[[lo,l.value]]),I[15]||(I[15]=i("span",null,"Replaces orchestrator",-1))])])]),ne(i("textarea",{"onUpdate:modelValue":I[7]||(I[7]=W=>o.value=W),rows:"20",spellcheck:"false",class:"w-full px-4 py-3 rounded-xl bg-surface border border-gray-700 text-textPrimary font-mono text-sm leading-relaxed focus:outline-none focus:border-accent focus:ring-1 focus:ring-accent transition resize-y",placeholder:"Skill body (markdown)..."},null,512),[[me,o.value]])])):Q("",!0)]))}}),Nc={class:"animate-fade-in space-y-6"},Lc={class:"glass rounded-xl p-6"},Fc={class:"flex flex-wrap items-center justify-between gap-4 mb-2"},Vc={class:"flex items-center gap-3"},Uc={key:0,class:"mt-4 p-4 rounded-xl bg-surface border border-gray-700/50 space-y-3"},Hc={class:"grid grid-cols-1 sm:grid-cols-3 gap-3"},Bc=["value"],Wc={class:"flex justify-end"},Kc=["disabled"],zc={key:0,class:"text-center py-12 text-textSecondary"},Jc={key:1,class:"text-center py-8 text-danger text-sm"},qc={key:2,class:"text-center py-12 text-textSecondary"},Gc={key:3},Yc={class:"space-y-3"},Zc={class:"p-4"},Qc={class:"flex flex-wrap items-center gap-3"},Xc=["onBlur"],eu=["onDblclick"],tu={class:"text-xs text-muted font-mono"},su=["value","onChange"],nu=["value"],ou={class:"text-xs text-muted"},ru=["onKeyup","onBlur"],iu=["title","onDblclick"],lu={class:"ml-auto flex items-center gap-3"},au={class:"flex items-center gap-1.5"},cu=["onClick"],uu={class:"flex items-center gap-1.5"},du=["onClick"],fu={class:"flex items-center gap-1.5"},pu=["onClick"],mu=["onClick"],hu=["onClick"],gu=["onClick"],xu={key:0,class:"mt-3 p-3 rounded-lg bg-surface border border-purple-500/20 space-y-2"},vu={class:"grid grid-cols-1 sm:grid-cols-3 gap-2"},yu=["value"],bu={class:"flex items-center gap-2"},_u=["onClick","disabled"],wu={key:0,class:"border-t border-gray-700/30 bg-surface/30 px-4 py-3 space-y-2"},Su={key:0,class:"text-xs text-muted py-1"},Cu={class:"text-sm font-medium"},ku={class:"text-xs text-muted font-mono"},Tu=["value","onChange"],$u=["value"],Au={class:"text-xs text-muted"},Eu={class:"ml-auto flex items-center gap-3"},Pu={key:0,class:"flex items-center gap-1.5"},Mu=["onClick"],Iu={key:1,class:"flex items-center gap-1.5"},Ou=["onClick"],Du=["onClick"],Ru={key:4},ju={class:"space-y-2"},Nu={class:"font-medium"},Lu={class:"text-xs text-muted font-mono"},Fu={class:"text-xs text-textSecondary"},Vu={class:"text-xs text-muted"},Uu=["onClick"],Hu={key:5},Bu={class:"space-y-2"},Wu={class:"font-medium"},Ku={class:"text-xs text-muted font-mono"},zu=["value","onChange"],Ju=["value"],qu={class:"text-xs text-muted"},Gu={class:"ml-auto flex items-center gap-3"},Yu={class:"flex items-center gap-1.5"},Zu=["onClick"],Qu={class:"flex items-center gap-1.5"},Xu=["onClick"],ed=["onClick"],td={key:6},sd={class:"space-y-2"},nd={class:"font-medium"},od={class:"text-xs text-muted font-mono"},rd=["value","onChange"],id=["value"],ld={class:"text-xs text-muted"},ad=["onClick"],cd=At({__name:"ThreadsTab",setup(e){const t=j([]),s=j(!0),n=j(""),o=j({}),r=j(new Set),l=j(!1),a=j({name:"",threadId:0,client:"claude",workingDirectory:""}),c=j(""),p=j(!1),d=j(null),m=j(""),v=j(null),P=j(""),U=j(null),A=j({name:"",threadId:0,client:"claude",workingDirectory:""}),b=j(""),E=j(!1),L=["claude","copilot","codex","openai_codex","copilot_claude","copilot_codex","cursor"],B={root:{emoji:"🟢",classes:"bg-green-500/20 text-green-400 border-green-500/30"},daily:{emoji:"🔵",classes:"bg-blue-500/20 text-blue-400 border-blue-500/30"},branch:{emoji:"🟣",classes:"bg-purple-500/20 text-purple-400 border-purple-500/30"},worker:{emoji:"🟡",classes:"bg-yellow-500/20 text-yellow-400 border-yellow-500/30"}},V=We(()=>t.value.filter(h=>h.type==="root")),ee=We(()=>t.value.filter(h=>h.type==="daily")),ge=We(()=>t.value.filter(h=>h.type==="branch")),z=We(()=>t.value.filter(h=>h.type==="worker"));async function I(){s.value=!0,n.value="";try{const h=await he("/api/threads");t.value=h.threads??[]}catch(h){n.value=h.message||"Failed to load threads"}finally{s.value=!1}}async function W(h){try{const y=await he(`/api/threads/${h}/children`);o.value[h]=y.threads??[]}catch{o.value[h]=[]}}function de(h){r.value.has(h)?r.value.delete(h):(r.value.add(h),W(h))}async function se(){if(!(!a.value.name.trim()||!a.value.threadId)){p.value=!0,c.value="";try{const h=await fetch("/api/threads",{method:"POST",headers:{Authorization:`Bearer ${we()}`,"Content-Type":"application/json"},body:JSON.stringify({threadId:a.value.threadId,name:a.value.name.trim(),type:"root",client:a.value.client,keepAlive:!1,...a.value.workingDirectory.trim()?{workingDirectory:a.value.workingDirectory.trim()}:{}})});if(!h.ok){const y=await h.json().catch(()=>({error:h.statusText}));throw new Error(y.error??h.statusText)}c.value="Created ✓",a.value={name:"",threadId:0,client:"claude",workingDirectory:""},l.value=!1,setTimeout(()=>{c.value=""},3e3),await I()}catch(h){c.value="Error: "+h.message}finally{p.value=!1}}}async function Se(h){if(!(!A.value.name.trim()||!A.value.threadId)){E.value=!0,b.value="";try{const y=await fetch("/api/threads",{method:"POST",headers:{Authorization:`Bearer ${we()}`,"Content-Type":"application/json"},body:JSON.stringify({threadId:A.value.threadId,name:A.value.name.trim(),type:"branch",rootThreadId:h,client:A.value.client,...A.value.workingDirectory.trim()?{workingDirectory:A.value.workingDirectory.trim()}:{}})});if(!y.ok){const g=await y.json().catch(()=>({error:y.statusText}));throw new Error(g.error??y.statusText)}b.value="Branch created ✓",A.value={name:"",threadId:0,client:"claude",workingDirectory:""},U.value=null,setTimeout(()=>{b.value=""},3e3),await I(),W(h)}catch(y){b.value="Error: "+y.message}finally{E.value=!1}}}function ke(h){d.value=h.threadId,m.value=h.name}async function gt(h){const y=m.value.trim();if(d.value=null,!!y)try{const g=await fetch(`/api/threads/${h}`,{method:"PATCH",headers:{Authorization:`Bearer ${we()}`,"Content-Type":"application/json"},body:JSON.stringify({name:y})});if(!g.ok)throw new Error(g.statusText);await I()}catch(g){n.value="Failed to rename thread: "+g.message}}function Et(h){v.value=h.threadId,P.value=h.workingDirectory??""}async function ve(h){const y=P.value.trim();v.value=null;try{const g=await fetch(`/api/threads/${h}`,{method:"PATCH",headers:{Authorization:`Bearer ${we()}`,"Content-Type":"application/json"},body:JSON.stringify({workingDirectory:y||null})});if(!g.ok)throw new Error(g.statusText);await I()}catch(g){n.value="Failed to update working directory: "+g.message}}async function le(h){try{const y=await fetch(`/api/threads/${h.threadId}`,{method:"PATCH",headers:{Authorization:`Bearer ${we()}`,"Content-Type":"application/json"},body:JSON.stringify({keepAlive:!h.keepAlive})});if(!y.ok)throw new Error(y.statusText);await I()}catch(y){n.value="Failed to toggle keep-alive: "+y.message}}async function X(h,y){try{const g=await fetch(`/api/threads/${h.threadId}`,{method:"PATCH",headers:{Authorization:`Bearer ${we()}`,"Content-Type":"application/json"},body:JSON.stringify({client:y})});if(!g.ok)throw new Error(g.statusText);await I()}catch(g){n.value="Failed to change agent type: "+g.message}}async function He(h){try{const y=await fetch(`/api/threads/${h.threadId}`,{method:"PATCH",headers:{Authorization:`Bearer ${we()}`,"Content-Type":"application/json"},body:JSON.stringify({dailyRotation:!h.dailyRotation})});if(!y.ok)throw new Error(y.statusText);await I()}catch(y){n.value="Failed to toggle daily rotation: "+y.message}}async function Je(h){try{const y=await fetch(`/api/threads/${h.threadId}`,{method:"PATCH",headers:{Authorization:`Bearer ${we()}`,"Content-Type":"application/json"},body:JSON.stringify({autonomousMode:!h.autonomousMode})});if(!y.ok)throw new Error(y.statusText);await I()}catch(y){n.value="Failed to toggle autonomous mode: "+y.message}}async function Me(h){if(confirm(`Archive thread "${h.name}" (${h.threadId})?`))try{const y=await fetch(`/api/threads/${h.threadId}`,{method:"DELETE",headers:{Authorization:`Bearer ${we()}`}});if(!y.ok)throw new Error(y.statusText);await I()}catch(y){n.value="Failed to archive: "+y.message}}function Ce(h){if(!h)return"—";const y=new Date(h),q=Date.now()-y.getTime();return q<6e4?"just now":q<36e5?`${Math.floor(q/6e4)}m ago`:q<864e5?`${Math.floor(q/36e5)}h ago`:y.toLocaleDateString()}function F(h){return h==="active"?"text-success":h==="archived"?"text-muted":"text-warn"}return wt(I),(h,y)=>(w(),k("div",Nc,[i("div",Lc,[i("div",Fc,[y[14]||(y[14]=i("div",null,[i("h3",{class:"text-lg font-semibold"},"Thread Registry"),i("p",{class:"text-sm text-textSecondary mt-1"},"Manage conversation threads, branches, and daily sessions")],-1)),i("div",Vc,[c.value?(w(),k("span",{key:0,class:Y([c.value.startsWith("Error")?"text-danger":"text-success","text-sm"])},T(c.value),3)):Q("",!0),i("button",{onClick:y[0]||(y[0]=g=>l.value=!l.value),class:"px-4 py-2 rounded-xl bg-accent hover:bg-accentLight text-white text-sm font-medium transition"},T(l.value?"Cancel":"+ New Root Thread"),1),i("button",{onClick:I,class:"px-3 py-2 rounded-xl bg-card border border-gray-700 text-sm hover:bg-surface transition"}," ↻ Refresh ")])]),l.value?(w(),k("div",Uc,[i("div",Hc,[i("div",null,[y[15]||(y[15]=i("label",{class:"block text-xs text-textSecondary mb-1"},"Name",-1)),ne(i("input",{"onUpdate:modelValue":y[1]||(y[1]=g=>a.value.name=g),type:"text",placeholder:"e.g. Main Workspace",class:"w-full px-3 py-2 rounded-lg bg-card border border-gray-700 text-sm text-textPrimary placeholder-muted focus:outline-none focus:border-accent transition"},null,512),[[me,a.value.name]])]),i("div",null,[y[16]||(y[16]=i("label",{class:"block text-xs text-textSecondary mb-1"},"Thread ID",-1)),ne(i("input",{"onUpdate:modelValue":y[2]||(y[2]=g=>a.value.threadId=g),type:"number",min:"1",placeholder:"Telegram thread ID",class:"w-full px-3 py-2 rounded-lg bg-card border border-gray-700 text-sm text-textPrimary placeholder-muted focus:outline-none focus:border-accent transition"},null,512),[[me,a.value.threadId,void 0,{number:!0}]])]),i("div",null,[y[17]||(y[17]=i("label",{class:"block text-xs text-textSecondary mb-1"},"Client",-1)),ne(i("select",{"onUpdate:modelValue":y[3]||(y[3]=g=>a.value.client=g),class:"w-full px-3 py-2 rounded-lg bg-card border border-gray-700 text-sm text-textPrimary focus:outline-none focus:border-accent transition appearance-none"},[(w(),k(ie,null,_e(L,g=>i("option",{key:g,value:g},T(g),9,Bc)),64))],512),[[rs,a.value.client]])])]),i("div",null,[y[18]||(y[18]=i("label",{class:"block text-xs text-textSecondary mb-1"},"Working Directory (optional)",-1)),ne(i("input",{"onUpdate:modelValue":y[4]||(y[4]=g=>a.value.workingDirectory=g),type:"text",placeholder:"e.g. C:\\src\\my-project",class:"w-full px-3 py-2 rounded-lg bg-card border border-gray-700 text-sm text-textPrimary placeholder-muted focus:outline-none focus:border-accent transition font-mono"},null,512),[[me,a.value.workingDirectory]])]),i("div",Wc,[i("button",{onClick:se,disabled:p.value||!a.value.name.trim()||!a.value.threadId,class:"px-4 py-2 rounded-xl bg-accent hover:bg-accentLight disabled:opacity-50 text-white text-sm font-medium transition"},T(p.value?"Creating…":"Create Root Thread"),9,Kc)])])):Q("",!0)]),s.value&&t.value.length===0?(w(),k("div",zc,"Loading threads…")):n.value?(w(),k("div",Jc,T(n.value),1)):t.value.length===0?(w(),k("div",qc,"No threads registered")):Q("",!0),V.value.length>0?(w(),k("div",Gc,[y[24]||(y[24]=i("h4",{class:"text-sm font-medium text-textSecondary uppercase tracking-wider mb-3"},"🟢 Root Threads",-1)),i("div",Yc,[(w(!0),k(ie,null,_e(V.value,g=>{var q,be;return w(),k("div",{key:g.id,class:"glass rounded-xl overflow-hidden"},[i("div",Zc,[i("div",Qc,[i("span",{class:Y(["inline-flex items-center gap-1 px-2 py-0.5 rounded-full text-xs font-medium border",(q=B[g.type])==null?void 0:q.classes])},T((be=B[g.type])==null?void 0:be.emoji)+" "+T(g.type.toUpperCase()),3),d.value===g.threadId?ne((w(),k("input",{key:0,"onUpdate:modelValue":y[5]||(y[5]=O=>m.value=O),onBlur:O=>gt(g.threadId),onKeyup:[y[6]||(y[6]=zt(O=>O.target.blur(),["enter"])),y[7]||(y[7]=zt(O=>d.value=null,["escape"]))],class:"font-semibold bg-card border border-accent rounded px-1 py-0 text-textPrimary focus:outline-none w-40",ref_for:!0,ref:"nameInput"},null,40,Xc)),[[me,m.value]]):(w(),k("span",{key:1,class:"font-semibold cursor-pointer hover:text-accent transition",onDblclick:O=>ke(g),title:"Double-click to rename"},T(g.name),41,eu)),i("span",{class:Y(["text-xs font-medium",F(g.status)])},T(g.status),3),i("span",tu,"ID: "+T(g.threadId),1),i("select",{value:g.client,onChange:O=>X(g,O.target.value),class:"px-2 py-0.5 rounded-lg bg-card border border-gray-700 text-xs text-textPrimary focus:outline-none focus:border-accent transition appearance-none cursor-pointer",title:"Agent type"},[(w(),k(ie,null,_e(L,O=>i("option",{key:O,value:O},T(O),9,nu)),64))],40,su),i("span",ou,T(Ce(g.lastActiveAt)),1),v.value===g.threadId?ne((w(),k("input",{key:2,"onUpdate:modelValue":y[8]||(y[8]=O=>P.value=O),onKeyup:[zt(O=>ve(g.threadId),["enter"]),y[9]||(y[9]=zt(O=>v.value=null,["escape"]))],onBlur:O=>ve(g.threadId),type:"text",placeholder:"Set working directory…",class:"text-xs font-mono bg-card border border-accent rounded px-1 py-0 text-textPrimary focus:outline-none w-48"},null,40,ru)),[[me,P.value]]):(w(),k("span",{key:3,class:"text-xs text-muted font-mono truncate max-w-[200px] cursor-pointer hover:text-accent transition",title:(g.workingDirectory??"Click to set CWD")+" (dblclick to edit)",onDblclick:O=>Et(g)},"📁 "+T(g.workingDirectory??"—"),41,iu)),i("div",lu,[i("div",au,[i("button",{onClick:O=>le(g),class:Y(["relative inline-flex h-5 w-9 items-center rounded-full transition-colors",g.keepAlive?"bg-accent":"bg-gray-700"]),title:"Toggle keep-alive"},[i("span",{class:Y(["inline-block h-3.5 w-3.5 transform rounded-full bg-white shadow transition-transform",g.keepAlive?"translate-x-4":"translate-x-0.5"])},null,2)],10,cu),y[19]||(y[19]=i("span",{class:"text-xs text-muted"},"Keep-alive",-1))]),i("div",uu,[i("button",{onClick:O=>He(g),class:Y(["relative inline-flex h-5 w-9 items-center rounded-full transition-colors",g.dailyRotation?"bg-blue-500":"bg-gray-700"]),title:"Toggle daily rotation"},[i("span",{class:Y(["inline-block h-3.5 w-3.5 transform rounded-full bg-white shadow transition-transform",g.dailyRotation?"translate-x-4":"translate-x-0.5"])},null,2)],10,du),y[20]||(y[20]=i("span",{class:"text-xs text-muted"},"Daily",-1))]),i("div",fu,[i("button",{onClick:O=>Je(g),class:Y(["relative inline-flex h-5 w-9 items-center rounded-full transition-colors",g.autonomousMode?"bg-orange-500":"bg-gray-700"]),title:"Toggle autonomous mode"},[i("span",{class:Y(["inline-block h-3.5 w-3.5 transform rounded-full bg-white shadow transition-transform",g.autonomousMode?"translate-x-4":"translate-x-0.5"])},null,2)],10,pu),y[21]||(y[21]=i("span",{class:"text-xs text-muted"},"Auto",-1))]),i("button",{onClick:O=>de(g.threadId),class:"px-2 py-1 rounded-lg text-xs bg-card border border-gray-700 hover:bg-surface transition"},T(r.value.has(g.threadId)?"▾ Children":"▸ Children"),9,mu),i("button",{onClick:O=>{U.value=U.value===g.threadId?null:g.threadId,A.value={name:"",threadId:0,client:"claude"},b.value=""},class:"px-2 py-1 rounded-lg text-xs bg-purple-500/20 text-purple-400 border border-purple-500/30 hover:bg-purple-500/30 transition"}," + Branch ",8,hu),i("button",{onClick:O=>Me(g),class:"px-2 py-1 rounded-lg text-xs bg-red-500/20 text-red-400 border border-red-500/30 hover:bg-red-500/30 transition"}," Archive ",8,gu)])]),U.value===g.threadId?(w(),k("div",xu,[i("div",vu,[ne(i("input",{"onUpdate:modelValue":y[10]||(y[10]=O=>A.value.name=O),type:"text",placeholder:"Branch name",class:"px-3 py-1.5 rounded-lg bg-card border border-gray-700 text-sm text-textPrimary placeholder-muted focus:outline-none focus:border-accent transition"},null,512),[[me,A.value.name]]),ne(i("input",{"onUpdate:modelValue":y[11]||(y[11]=O=>A.value.threadId=O),type:"number",min:"1",placeholder:"Thread ID",class:"px-3 py-1.5 rounded-lg bg-card border border-gray-700 text-sm text-textPrimary placeholder-muted focus:outline-none focus:border-accent transition"},null,512),[[me,A.value.threadId,void 0,{number:!0}]]),ne(i("select",{"onUpdate:modelValue":y[12]||(y[12]=O=>A.value.client=O),class:"px-3 py-1.5 rounded-lg bg-card border border-gray-700 text-sm text-textPrimary focus:outline-none focus:border-accent transition appearance-none"},[(w(),k(ie,null,_e(L,O=>i("option",{key:O,value:O},T(O),9,yu)),64))],512),[[rs,A.value.client]])]),ne(i("input",{"onUpdate:modelValue":y[13]||(y[13]=O=>A.value.workingDirectory=O),type:"text",placeholder:"Working directory (optional)",class:"w-full px-3 py-1.5 rounded-lg bg-card border border-gray-700 text-sm text-textPrimary placeholder-muted focus:outline-none focus:border-accent transition font-mono"},null,512),[[me,A.value.workingDirectory]]),i("div",bu,[i("button",{onClick:O=>Se(g.threadId),disabled:E.value||!A.value.name.trim()||!A.value.threadId,class:"px-3 py-1.5 rounded-lg bg-accent hover:bg-accentLight disabled:opacity-50 text-white text-xs font-medium transition"},T(E.value?"Creating…":"Create Branch"),9,_u),b.value?(w(),k("span",{key:0,class:Y([b.value.startsWith("Error")?"text-danger":"text-success","text-xs"])},T(b.value),3)):Q("",!0)])])):Q("",!0)]),r.value.has(g.threadId)&&o.value[g.threadId]?(w(),k("div",wu,[o.value[g.threadId].length===0?(w(),k("div",Su,"No children")):Q("",!0),(w(!0),k(ie,null,_e(o.value[g.threadId],O=>{var xt,Ls;return w(),k("div",{key:O.id,class:"flex flex-wrap items-center gap-2 px-3 py-2 rounded-lg bg-card/50 border border-gray-700/30"},[i("span",{class:Y(["inline-flex items-center gap-1 px-1.5 py-0.5 rounded-full text-xs font-medium border",(xt=B[O.type])==null?void 0:xt.classes])},T((Ls=B[O.type])==null?void 0:Ls.emoji)+" "+T(O.type.toUpperCase()),3),i("span",Cu,T(O.name),1),i("span",{class:Y(["text-xs",F(O.status)])},T(O.status),3),i("span",ku,"ID: "+T(O.threadId),1),i("select",{value:O.client,onChange:u=>X(O,u.target.value),class:"px-2 py-0.5 rounded-lg bg-card border border-gray-700 text-xs text-textPrimary focus:outline-none focus:border-accent transition appearance-none cursor-pointer",title:"Agent type"},[(w(),k(ie,null,_e(L,u=>i("option",{key:u,value:u},T(u),9,$u)),64))],40,Tu),i("span",Au,T(Ce(O.lastActiveAt)),1),i("div",Eu,[O.type==="branch"?(w(),k("div",Pu,[i("button",{onClick:u=>le(O),class:Y(["relative inline-flex h-5 w-9 items-center rounded-full transition-colors",O.keepAlive?"bg-accent":"bg-gray-700"]),title:"Toggle keep-alive"},[i("span",{class:Y(["inline-block h-3.5 w-3.5 transform rounded-full bg-white shadow transition-transform",O.keepAlive?"translate-x-4":"translate-x-0.5"])},null,2)],10,Mu),y[22]||(y[22]=i("span",{class:"text-xs text-muted"},"Keep-alive",-1))])):Q("",!0),O.type==="branch"?(w(),k("div",Iu,[i("button",{onClick:u=>Je(O),class:Y(["relative inline-flex h-5 w-9 items-center rounded-full transition-colors",O.autonomousMode?"bg-orange-500":"bg-gray-700"]),title:"Toggle autonomous mode"},[i("span",{class:Y(["inline-block h-3.5 w-3.5 transform rounded-full bg-white shadow transition-transform",O.autonomousMode?"translate-x-4":"translate-x-0.5"])},null,2)],10,Ou),y[23]||(y[23]=i("span",{class:"text-xs text-muted"},"Auto",-1))])):Q("",!0),O.type!=="root"?(w(),k("button",{key:2,onClick:u=>Me(O),class:"px-2 py-0.5 rounded-lg text-xs bg-red-500/10 text-red-400 border border-red-500/20 hover:bg-red-500/20 transition"}," Archive ",8,Du)):Q("",!0)])])}),128))])):Q("",!0)])}),128))])])):Q("",!0),ee.value.length>0?(w(),k("div",Ru,[y[25]||(y[25]=i("h4",{class:"text-sm font-medium text-textSecondary uppercase tracking-wider mb-3"},"🔵 Daily Sessions",-1)),i("div",ju,[(w(!0),k(ie,null,_e(ee.value,g=>{var q,be;return w(),k("div",{key:g.id,class:"glass rounded-xl p-4 flex flex-wrap items-center gap-3"},[i("span",{class:Y(["inline-flex items-center gap-1 px-2 py-0.5 rounded-full text-xs font-medium border",(q=B[g.type])==null?void 0:q.classes])},T((be=B[g.type])==null?void 0:be.emoji)+" "+T(g.type.toUpperCase()),3),i("span",Nu,T(g.name),1),i("span",{class:Y(["text-xs font-medium",F(g.status)])},T(g.status),3),i("span",Lu,"ID: "+T(g.threadId),1),i("span",Fu,T(g.client),1),i("span",Vu,T(Ce(g.lastActiveAt)),1),i("button",{onClick:O=>Me(g),class:"ml-auto px-2 py-1 rounded-lg text-xs bg-red-500/10 text-red-400 border border-red-500/20 hover:bg-red-500/20 transition"}," Archive ",8,Uu)])}),128))])])):Q("",!0),ge.value.length>0?(w(),k("div",Hu,[y[28]||(y[28]=i("h4",{class:"text-sm font-medium text-textSecondary uppercase tracking-wider mb-3"},"🟣 Branches",-1)),i("div",Bu,[(w(!0),k(ie,null,_e(ge.value,g=>{var q,be;return w(),k("div",{key:g.id,class:"glass rounded-xl p-4 flex flex-wrap items-center gap-3"},[i("span",{class:Y(["inline-flex items-center gap-1 px-2 py-0.5 rounded-full text-xs font-medium border",(q=B[g.type])==null?void 0:q.classes])},T((be=B[g.type])==null?void 0:be.emoji)+" "+T(g.type.toUpperCase()),3),i("span",Wu,T(g.name),1),i("span",{class:Y(["text-xs font-medium",F(g.status)])},T(g.status),3),i("span",Ku,"ID: "+T(g.threadId),1),i("select",{value:g.client,onChange:O=>X(g,O.target.value),class:"px-2 py-0.5 rounded-lg bg-card border border-gray-700 text-xs text-textPrimary focus:outline-none focus:border-accent transition appearance-none cursor-pointer",title:"Agent type"},[(w(),k(ie,null,_e(L,O=>i("option",{key:O,value:O},T(O),9,Ju)),64))],40,zu),i("span",qu,T(Ce(g.lastActiveAt)),1),i("div",Gu,[i("div",Yu,[i("button",{onClick:O=>le(g),class:Y(["relative inline-flex h-5 w-9 items-center rounded-full transition-colors",g.keepAlive?"bg-accent":"bg-gray-700"]),title:"Toggle keep-alive"},[i("span",{class:Y(["inline-block h-3.5 w-3.5 transform rounded-full bg-white shadow transition-transform",g.keepAlive?"translate-x-4":"translate-x-0.5"])},null,2)],10,Zu),y[26]||(y[26]=i("span",{class:"text-xs text-muted"},"Keep-alive",-1))]),i("div",Qu,[i("button",{onClick:O=>Je(g),class:Y(["relative inline-flex h-5 w-9 items-center rounded-full transition-colors",g.autonomousMode?"bg-orange-500":"bg-gray-700"]),title:"Toggle autonomous mode"},[i("span",{class:Y(["inline-block h-3.5 w-3.5 transform rounded-full bg-white shadow transition-transform",g.autonomousMode?"translate-x-4":"translate-x-0.5"])},null,2)],10,Xu),y[27]||(y[27]=i("span",{class:"text-xs text-muted"},"Auto",-1))]),i("button",{onClick:O=>Me(g),class:"px-2 py-1 rounded-lg text-xs bg-red-500/10 text-red-400 border border-red-500/20 hover:bg-red-500/20 transition"}," Archive ",8,ed)])])}),128))])])):Q("",!0),z.value.length>0?(w(),k("div",td,[y[29]||(y[29]=i("h4",{class:"text-sm font-medium text-textSecondary uppercase tracking-wider mb-3"},"🟡 Workers",-1)),i("div",sd,[(w(!0),k(ie,null,_e(z.value,g=>{var q,be;return w(),k("div",{key:g.id,class:"glass rounded-xl p-4 flex flex-wrap items-center gap-3"},[i("span",{class:Y(["inline-flex items-center gap-1 px-2 py-0.5 rounded-full text-xs font-medium border",(q=B[g.type])==null?void 0:q.classes])},T((be=B[g.type])==null?void 0:be.emoji)+" "+T(g.type.toUpperCase()),3),i("span",nd,T(g.name),1),i("span",{class:Y(["text-xs font-medium",F(g.status)])},T(g.status),3),i("span",od,"ID: "+T(g.threadId),1),i("select",{value:g.client,onChange:O=>X(g,O.target.value),class:"px-2 py-0.5 rounded-lg bg-card border border-gray-700 text-xs text-textPrimary focus:outline-none focus:border-accent transition appearance-none cursor-pointer",title:"Agent type"},[(w(),k(ie,null,_e(L,O=>i("option",{key:O,value:O},T(O),9,id)),64))],40,rd),i("span",ld,T(Ce(g.lastActiveAt)),1),i("button",{onClick:O=>Me(g),class:"ml-auto px-2 py-1 rounded-lg text-xs bg-red-500/10 text-red-400 border border-red-500/20 hover:bg-red-500/20 transition"}," Archive ",8,ad)])}),128))])])):Q("",!0)]))}}),ud={class:"animate-fade-in"},dd={class:"glass rounded-xl p-6 mb-6"},fd={class:"flex flex-wrap items-center justify-between gap-4 mb-6"},pd={class:"flex items-center gap-3"},md=["disabled"],hd={key:0,class:"text-center py-8 text-textSecondary text-sm"},gd={key:1,class:"space-y-6"},xd={class:"glass rounded-xl p-4 border border-gray-700/50"},vd={class:"flex items-center gap-4"},yd={class:"flex justify-between text-xs text-muted mt-2"},bd={class:"font-mono"},_d={key:0,class:"mt-3 px-3 py-2 rounded-lg bg-warn/10 border border-warn/20 text-xs text-warn"},wd={class:"glass rounded-xl p-4 border border-gray-700/50"},Sd={class:"flex items-center gap-4"},Cd={class:"flex justify-between text-xs text-muted mt-2"},kd={class:"font-mono"},Td={class:"glass rounded-xl p-4 border border-gray-700/50"},$d={class:"glass rounded-xl p-4 border border-gray-700/50"},Ad={class:"glass rounded-xl p-4 border border-gray-700/30 bg-surface/30"},Ed={class:"grid grid-cols-2 gap-4"},Pd={class:"text-sm font-medium text-textSecondary"},Md={class:"text-sm font-medium font-mono text-textSecondary"},Id={class:"text-sm font-medium font-mono text-textSecondary"},Od={class:"mt-3"},Dd=At({__name:"SettingsTab",setup(e){const t=j(!0),s=j(!1),n=j(""),o=j(50),r=j(50),l=j(1440),a=j(1440),c=j("claude-opus-4-6"),p=j("claude-opus-4-6"),d=j("claude-sonnet-4-5"),m=j("claude-sonnet-4-5"),v=We(()=>o.value!==r.value||l.value!==a.value||c.value!==p.value||d.value!==m.value);async function P(){t.value=!0;try{const[A,b,E,L]=await Promise.all([he("/api/settings/bootstrap-message-count"),he("/api/settings/wait-timeout"),he("/api/settings/default-thread-model"),he("/api/settings/default-worker-model")]);o.value=A.count,r.value=A.count,l.value=b.minutes,a.value=b.minutes,c.value=E.defaultThreadModel,p.value=E.defaultThreadModel,d.value=L.defaultWorkerModel,m.value=L.defaultWorkerModel}finally{t.value=!1}}async function U(){if(s.value=!0,n.value="",!c.value){n.value="Error: Thread model cannot be empty",s.value=!1;return}if(!d.value){n.value="Error: Worker model cannot be empty",s.value=!1;return}try{const A={Authorization:`Bearer ${we()}`,"Content-Type":"application/json"},[b,E,L,B]=await Promise.all([fetch("/api/settings/bootstrap-message-count",{method:"POST",headers:A,body:JSON.stringify({count:o.value})}),fetch("/api/settings/wait-timeout",{method:"POST",headers:A,body:JSON.stringify({minutes:l.value})}),fetch("/api/settings/default-thread-model",{method:"POST",headers:A,body:JSON.stringify({model:c.value})}),fetch("/api/settings/default-worker-model",{method:"POST",headers:A,body:JSON.stringify({model:d.value})})]);for(const I of[b,E,L,B])if(!I.ok){const W=await I.json().catch(()=>({error:I.statusText}));throw new Error(W.error??I.statusText)}const V=await b.json(),ee=await E.json(),ge=await L.json(),z=await B.json();r.value=V.count,o.value=V.count,a.value=ee.minutes,l.value=ee.minutes,p.value=ge.defaultThreadModel,c.value=ge.defaultThreadModel,m.value=z.defaultWorkerModel,d.value=z.defaultWorkerModel,n.value="Saved ✓",setTimeout(()=>{n.value=""},3e3)}catch(A){n.value="Error: "+A.message}finally{s.value=!1}}return wt(P),(A,b)=>(w(),k("div",ud,[i("div",dd,[i("div",fd,[b[6]||(b[6]=i("div",null,[i("h3",{class:"text-lg font-semibold"},"Settings"),i("p",{class:"text-sm text-textSecondary mt-1"},"Configure agent behavior and context injection")],-1)),i("div",pd,[n.value?(w(),k("span",{key:0,class:Y([n.value.startsWith("Error")?"text-danger":"text-success","text-sm"])},T(n.value),3)):Q("",!0),i("button",{onClick:U,disabled:s.value||t.value||!v.value,class:"px-4 py-2 rounded-xl bg-accent hover:bg-accentLight disabled:opacity-50 text-white text-sm font-medium transition"},T(s.value?"Saving…":"Save"),9,md)])]),t.value?(w(),k("div",hd,"Loading…")):(w(),k("div",gd,[i("div",xd,[b[10]||(b[10]=i("label",{class:"block text-sm font-medium mb-1"},"Recent Conversation Buffer",-1)),b[11]||(b[11]=i("p",{class:"text-xs text-textSecondary mb-3"},[Ve(" Number of recent messages injected into the agent's bootstrap context. Set to "),i("span",{class:"font-mono text-accentLight"},"0"),Ve(" to disable (useful when using VS Code, which maintains its own conversation history). ")],-1)),i("div",vd,[ne(i("input",{"onUpdate:modelValue":b[0]||(b[0]=E=>o.value=E),type:"range",min:"0",max:"100",step:"5",class:"flex-1 accent-accent"},null,512),[[me,o.value,void 0,{number:!0}]]),ne(i("input",{"onUpdate:modelValue":b[1]||(b[1]=E=>o.value=E),type:"number",min:"0",max:"200",class:"w-20 px-3 py-2 rounded-lg bg-surface border border-gray-700 text-sm text-textPrimary font-mono text-center focus:outline-none focus:border-accent transition"},null,512),[[me,o.value,void 0,{number:!0}]])]),i("div",yd,[b[7]||(b[7]=i("span",null,"Off",-1)),i("span",bd,T(o.value)+" messages",1),b[8]||(b[8]=i("span",null,"Max",-1))]),o.value===0?(w(),k("div",_d,[...b[9]||(b[9]=[Ve(" Message buffer injection is ",-1),i("strong",null,"disabled",-1),Ve(". The agent will not see recent conversation history in its bootstrap context. Use this when VS Code (or another IDE) already provides conversation history. ",-1)])])):Q("",!0)]),i("div",wd,[b[14]||(b[14]=i("label",{class:"block text-sm font-medium mb-1"},"Poll Timeout (wait_for_instructions)",-1)),b[15]||(b[15]=i("p",{class:"text-xs text-textSecondary mb-3"},[Ve(" Maximum time (in minutes) a single "),i("span",{class:"font-mono text-accentLight"},"wait_for_instructions"),Ve(" call will poll before timing out. Claude Code agents use the full value; Copilot agents are capped at 10 min. ")],-1)),i("div",Sd,[ne(i("input",{"onUpdate:modelValue":b[2]||(b[2]=E=>l.value=E),type:"range",min:"1",max:"1440",step:"10",class:"flex-1 accent-accent"},null,512),[[me,l.value,void 0,{number:!0}]]),ne(i("input",{"onUpdate:modelValue":b[3]||(b[3]=E=>l.value=E),type:"number",min:"1",max:"10080",class:"w-24 px-3 py-2 rounded-lg bg-surface border border-gray-700 text-sm text-textPrimary font-mono text-center focus:outline-none focus:border-accent transition"},null,512),[[me,l.value,void 0,{number:!0}]])]),i("div",Cd,[b[12]||(b[12]=i("span",null,"1 min",-1)),i("span",kd,T(l.value>=60?Math.floor(l.value/60)+"h "+l.value%60+"m":l.value+" min"),1),b[13]||(b[13]=i("span",null,"24h",-1))])]),i("div",Td,[b[16]||(b[16]=i("label",{class:"block text-sm font-medium mb-1"},"Default Thread Model",-1)),b[17]||(b[17]=i("p",{class:"text-xs text-textSecondary mb-3"},[Ve(" Model used when spawning a normal (orchestrator) Claude thread. Overridden by the "),i("span",{class:"font-mono text-accentLight"},"CLAUDE_MODEL"),Ve(" env var if set. ")],-1)),ne(i("input",{"onUpdate:modelValue":b[4]||(b[4]=E=>c.value=E),type:"text",placeholder:"claude-opus-4-6",class:"w-full px-3 py-2 rounded-lg bg-surface border border-gray-700 text-sm text-textPrimary font-mono focus:outline-none focus:border-accent transition"},null,512),[[me,c.value,void 0,{trim:!0}]])]),i("div",$d,[b[18]||(b[18]=i("label",{class:"block text-sm font-medium mb-1"},"Default Worker Model",-1)),b[19]||(b[19]=i("p",{class:"text-xs text-textSecondary mb-3"},[Ve(" Model used when spawning a worker Claude thread. Overridden by the "),i("span",{class:"font-mono text-accentLight"},"CLAUDE_WORKER_MODEL"),Ve(" env var if set. ")],-1)),ne(i("input",{"onUpdate:modelValue":b[5]||(b[5]=E=>d.value=E),type:"text",placeholder:"claude-sonnet-4-5",class:"w-full px-3 py-2 rounded-lg bg-surface border border-gray-700 text-sm text-textPrimary font-mono focus:outline-none focus:border-accent transition"},null,512),[[me,d.value,void 0,{trim:!0}]])]),i("div",Ad,[b[24]||(b[24]=i("div",{class:"text-xs font-medium text-textSecondary uppercase tracking-wider mb-3"},"Current State",-1)),i("div",Ed,[i("div",null,[b[20]||(b[20]=i("div",{class:"text-xs text-muted mb-1"},"Message Buffer",-1)),i("span",{class:Y(["text-sm font-medium",r.value>0?"text-success":"text-textSecondary"])},T(r.value>0?`${r.value} messages`:"Disabled"),3)]),i("div",null,[b[21]||(b[21]=i("div",{class:"text-xs text-muted mb-1"},"Poll Timeout",-1)),i("span",Pd,T(a.value>=60?Math.floor(a.value/60)+"h "+a.value%60+"m":a.value+" min"),1)]),i("div",null,[b[22]||(b[22]=i("div",{class:"text-xs text-muted mb-1"},"Thread Model",-1)),i("span",Md,T(p.value),1)]),i("div",null,[b[23]||(b[23]=i("div",{class:"text-xs text-muted mb-1"},"Worker Model",-1)),i("span",Id,T(m.value),1)])]),i("div",Od,[i("span",{class:Y(["text-sm font-medium",v.value?"text-warn":"text-textSecondary"])},T(v.value?"Unsaved changes":"Saved"),3)])])]))])]))}}),Rd={key:0,class:"fixed inset-0 z-50 flex items-center justify-center bg-surface/95 backdrop-blur-sm"},jd={class:"glass rounded-2xl p-8 max-w-md w-full mx-4 animate-slide-up"},Nd=["disabled"],Ld={key:0,class:"mt-3 text-sm text-danger"},Fd={key:1,class:"min-h-screen font-sans text-textPrimary animate-fade-in"},Vd={class:"glass sticky top-0 z-40 border-b border-gray-800/50"},Ud={class:"max-w-7xl mx-auto px-4 sm:px-6 py-4 flex items-center justify-between"},Hd={class:"flex items-center gap-4"},Bd={class:"text-sm text-textSecondary font-mono"},Wd={class:"max-w-7xl mx-auto px-4 sm:px-6 py-6"},Kd={class:"grid grid-cols-2 sm:grid-cols-3 lg:grid-cols-6 gap-3"},zd={class:"glass rounded-xl p-4 stat-glow animate-slide-up"},Jd={class:"text-2xl font-bold font-mono"},qd={class:"glass rounded-xl p-4 stat-glow animate-slide-up"},Gd={class:"text-2xl font-bold font-mono"},Yd={class:"glass rounded-xl p-4 stat-glow animate-slide-up"},Zd={class:"text-2xl font-bold font-mono"},Qd={class:"glass rounded-xl p-4 stat-glow animate-slide-up"},Xd={class:"flex items-center gap-2 mb-2"},ef={class:"text-2xl font-bold font-mono"},tf={class:"glass rounded-xl p-4 stat-glow animate-slide-up"},sf={class:"text-2xl font-bold font-mono"},nf={class:"glass rounded-xl p-4 stat-glow animate-slide-up"},of={class:"text-2xl font-bold font-mono"},rf={class:"max-w-7xl mx-auto px-4 sm:px-6"},lf={class:"flex gap-6 border-b border-gray-800/50 mb-6"},af=["onClick"],cf={class:"max-w-7xl mx-auto px-4 sm:px-6 pb-12"},ps="sensorium_token",uf=At({__name:"App",setup(e){const t=j(!1),s=j(""),n=j(""),o=j(!1),r=j(null),l=j("sessions");let a=null;const c=[{id:"sessions",label:"Sessions"},{id:"notes",label:"Memory Notes"},{id:"templates",label:"Templates"},{id:"skills",label:"Skills"},{id:"threads",label:"Threads"},{id:"settings",label:"Settings"}],p={sessions:oa,notes:wa,templates:oc,skills:jc,threads:cd,settings:Dd},d=We(()=>p[l.value]),m=We(()=>{if(!r.value)return"—";const b=Math.floor(r.value.uptime),E=Math.floor(b/86400),L=Math.floor(b%86400/3600),B=Math.floor(b%3600/60);return E>0?`${E}d ${L}h`:L>0?`${L}h ${B}m`:`${B}m`});async function v(){const b=s.value.trim()||"no-auth";o.value=!0,n.value="";try{Wt(b),await U(),localStorage.setItem(ps,b),t.value=!0,A()}catch(E){const L=E;L.status===401?n.value="Invalid token":n.value=L.message??"Connection failed",Wt("")}finally{o.value=!1}}function P(){localStorage.removeItem(ps),t.value=!1,s.value="",r.value=null,a&&clearInterval(a),Wt("")}async function U(){r.value=await he("/api/status")}function A(){a&&clearInterval(a),a=setInterval(U,3e4)}return wt(async()=>{const b=localStorage.getItem(ps);if(b){s.value=b;try{Wt(b),await U(),t.value=!0,A()}catch{localStorage.removeItem(ps),Wt("")}}}),_n(()=>{a&&clearInterval(a)}),(b,E)=>{var L,B,V,ee,ge,z,I,W,de,se,Se;return t.value?(w(),k("div",Fd,[i("header",Vd,[i("div",Ud,[E[3]||(E[3]=Be('<div class="flex items-center gap-3"><div class="w-8 h-8 rounded-lg bg-gradient-to-br from-accent to-purple-500 flex items-center justify-center"><span class="text-white text-sm font-bold">S</span></div><div><h1 class="text-lg font-semibold tracking-tight">Sensorium MCP</h1><p class="text-xs text-textSecondary">Agent Dashboard</p></div></div>',1)),i("div",Hd,[E[2]||(E[2]=i("div",{class:"flex items-center gap-2 text-sm"},[i("span",{class:"w-2 h-2 rounded-full bg-success animate-pulse-slow"}),i("span",{class:"text-textSecondary"},"Connected")],-1)),i("div",Bd,T(m.value),1),i("button",{onClick:P,class:"text-sm text-muted hover:text-textSecondary transition"},"Disconnect")])])]),i("div",Wd,[i("div",Kd,[i("div",zd,[E[4]||(E[4]=Be('<div class="flex items-center gap-2 mb-2"><span class="text-success"><svg class="w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M17 20h5v-2a3 3 0 00-5.356-1.857M17 20H7m10 0v-2c0-.656-.126-1.283-.356-1.857M7 20H2v-2a3 3 0 015.356-1.857M7 20v-2c0-.656.126-1.283.356-1.857m0 0a5.002 5.002 0 019.288 0M15 7a3 3 0 11-6 0 3 3 0 016 0z"></path></svg></span><span class="text-xs text-textSecondary font-medium uppercase tracking-wider">Sessions</span></div>',1)),i("div",Jd,T(((L=r.value)==null?void 0:L.activeSessions)??0),1)]),i("div",qd,[E[5]||(E[5]=Be('<div class="flex items-center gap-2 mb-2"><span class="text-accentLight"><svg class="w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M9 12h6m-6 4h6m2 5H7a2 2 0 01-2-2V5a2 2 0 012-2h5.586a1 1 0 01.707.293l5.414 5.414a1 1 0 01.293.707V19a2 2 0 01-2 2z"></path></svg></span><span class="text-xs text-textSecondary font-medium uppercase tracking-wider">Notes</span></div>',1)),i("div",Gd,T(((V=(B=r.value)==null?void 0:B.memory)==null?void 0:V.totalSemanticNotes)??0),1)]),i("div",Yd,[E[6]||(E[6]=Be('<div class="flex items-center gap-2 mb-2"><span class="text-warn"><svg class="w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M13 10V3L4 14h7v7l9-11h-7z"></path></svg></span><span class="text-xs text-textSecondary font-medium uppercase tracking-wider">Episodes</span></div>',1)),i("div",Zd,T(((ge=(ee=r.value)==null?void 0:ee.memory)==null?void 0:ge.totalEpisodes)??0),1)]),i("div",Qd,[i("div",Xd,[i("span",{class:Y((((I=(z=r.value)==null?void 0:z.memory)==null?void 0:I.unconsolidatedEpisodes)??0)>10?"text-danger":"text-success")},[...E[7]||(E[7]=[i("svg",{class:"w-4 h-4",fill:"none",stroke:"currentColor",viewBox:"0 0 24 24"},[i("path",{"stroke-linecap":"round","stroke-linejoin":"round","stroke-width":"2",d:"M12 8v4l3 3m6-3a9 9 0 11-18 0 9 9 0 0118 0z"})],-1)])],2),E[8]||(E[8]=i("span",{class:"text-xs text-textSecondary font-medium uppercase tracking-wider"},"Unconsolidated",-1))]),i("div",ef,T(((de=(W=r.value)==null?void 0:W.memory)==null?void 0:de.unconsolidatedEpisodes)??0),1)]),i("div",tf,[E[9]||(E[9]=Be('<div class="flex items-center gap-2 mb-2"><span class="text-accent"><svg class="w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M10.325 4.317c.426-1.756 2.924-1.756 3.35 0a1.724 1.724 0 002.573 1.066c1.543-.94 3.31.826 2.37 2.37a1.724 1.724 0 001.066 2.573c1.756.426 1.756 2.924 0 3.35a1.724 1.724 0 00-1.066 2.573c.94 1.543-.826 3.31-2.37 2.37a1.724 1.724 0 00-2.573 1.066c-.426 1.756-2.924 1.756-3.35 0a1.724 1.724 0 00-2.573-1.066c-1.543.94-3.31-.826-2.37-2.37a1.724 1.724 0 00-1.066-2.573c-1.756-.426-1.756-2.924 0-3.35a1.724 1.724 0 001.066-2.573c-.94-1.543.826-3.31 2.37-2.37.996.608 2.296.07 2.572-1.065z"></path><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M15 12a3 3 0 11-6 0 3 3 0 016 0z"></path></svg></span><span class="text-xs text-textSecondary font-medium uppercase tracking-wider">Procedures</span></div>',1)),i("div",sf,T(((Se=(se=r.value)==null?void 0:se.memory)==null?void 0:Se.totalProcedures)??0),1)]),i("div",nf,[E[10]||(E[10]=Be('<div class="flex items-center gap-2 mb-2"><span class="text-success"><svg class="w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M5 12h14M12 5l7 7-7 7"></path></svg></span><span class="text-xs text-textSecondary font-medium uppercase tracking-wider">Uptime</span></div>',1)),i("div",of,T(m.value),1)])])]),i("div",rf,[i("nav",lf,[(w(),k(ie,null,_e(c,ke=>i("button",{key:ke.id,onClick:gt=>l.value=ke.id,class:Y(["pb-3 text-sm font-medium transition",l.value===ke.id?"tab-active":"tab-inactive"])},T(ke.label),11,af)),64))])]),i("div",cf,[(w(),dr(Ai(d.value),{status:r.value},null,8,["status"]))])])):(w(),k("div",Rd,[i("div",jd,[E[1]||(E[1]=Be('<div class="flex items-center gap-3 mb-6"><div class="w-10 h-10 rounded-xl bg-accent/20 flex items-center justify-center"><svg class="w-5 h-5 text-accent" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M12 15v2m-6 4h12a2 2 0 002-2v-6a2 2 0 00-2-2H6a2 2 0 00-2 2v6a2 2 0 002 2zm10-10V7a4 4 0 00-8 0v4h8z"></path></svg></div><div><h2 class="text-lg font-semibold">Sensorium MCP</h2><p class="text-sm text-textSecondary">Enter your API token</p></div></div>',1)),ne(i("input",{"onUpdate:modelValue":E[0]||(E[0]=ke=>s.value=ke),type:"password",placeholder:"MCP_HTTP_SECRET",class:"w-full px-4 py-3 rounded-xl bg-surface border border-gray-700 text-textPrimary placeholder-muted focus:outline-none focus:border-accent focus:ring-1 focus:ring-accent transition font-mono text-sm",onKeydown:zt(v,["enter"])},null,544),[[me,s.value]]),i("button",{onClick:v,disabled:o.value,class:"w-full mt-4 px-4 py-3 rounded-xl bg-accent hover:bg-accentLight disabled:opacity-50 text-white font-medium transition"},T(o.value?"Connecting...":"Connect"),9,Nd),n.value?(w(),k("p",Ld,T(n.value),1)):Q("",!0)])]))}}});Ul(uf).mount("#app");</script>
73
73
  <style rel="stylesheet" crossorigin>body{background:#0f1419}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:#1a1f2e}::-webkit-scrollbar-thumb{background:#374151;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#4b5563}.glass{background:#1a1f2ecc;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid rgba(99,102,241,.1)}.stat-glow{box-shadow:0 0 20px #6366f114}.priority-2{border-left:3px solid #ef4444}.priority-1{border-left:3px solid #f59e0b}.priority-0{border-left:3px solid transparent}.type-badge{font-size:.65rem;padding:2px 6px;border-radius:9999px;font-weight:600;text-transform:uppercase;letter-spacing:.05em}.type-fact{background:#3b82f626;color:#60a5fa}.type-preference{background:#a855f726;color:#c084fc}.type-pattern{background:#22c55e26;color:#4ade80}.type-entity{background:#fbbf2426;color:#fbbf24}.type-relationship{background:#f472b626;color:#f472b6}.tab-active{border-bottom:2px solid #6366f1;color:#e5e7eb}.tab-inactive{border-bottom:2px solid transparent;color:#6b7280}.tab-inactive:hover{color:#9ca3af}</style>
74
74
  </head>
75
75
  <body class="font-sans text-textPrimary min-h-screen">