botmux 3.12.1 → 3.13.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.
- package/dist/.runtime-build-id +1 -1
- package/dist/bot-registry.d.ts +7 -0
- package/dist/bot-registry.d.ts.map +1 -1
- package/dist/bot-registry.js +46 -13
- package/dist/bot-registry.js.map +1 -1
- package/dist/core/config-dir.d.ts +167 -0
- package/dist/core/config-dir.d.ts.map +1 -0
- package/dist/core/config-dir.js +152 -0
- package/dist/core/config-dir.js.map +1 -0
- package/dist/core/dashboard-ipc-server.d.ts.map +1 -1
- package/dist/core/dashboard-ipc-server.js +48 -0
- package/dist/core/dashboard-ipc-server.js.map +1 -1
- package/dist/core/per-bot-env.d.ts.map +1 -1
- package/dist/core/per-bot-env.js +9 -0
- package/dist/core/per-bot-env.js.map +1 -1
- package/dist/core/session-discovery.d.ts.map +1 -1
- package/dist/core/session-discovery.js +19 -2
- package/dist/core/session-discovery.js.map +1 -1
- package/dist/core/session-manager.d.ts.map +1 -1
- package/dist/core/session-manager.js +44 -3
- package/dist/core/session-manager.js.map +1 -1
- package/dist/core/trigger-session.d.ts.map +1 -1
- package/dist/core/trigger-session.js +499 -63
- package/dist/core/trigger-session.js.map +1 -1
- package/dist/core/types.d.ts +26 -4
- package/dist/core/types.d.ts.map +1 -1
- package/dist/core/types.js.map +1 -1
- package/dist/core/worker-pool.d.ts +64 -0
- package/dist/core/worker-pool.d.ts.map +1 -1
- package/dist/core/worker-pool.js +301 -10
- package/dist/core/worker-pool.js.map +1 -1
- package/dist/daemon.d.ts.map +1 -1
- package/dist/daemon.js +13 -6
- package/dist/daemon.js.map +1 -1
- package/dist/dashboard/auth.d.ts +8 -0
- package/dist/dashboard/auth.d.ts.map +1 -1
- package/dist/dashboard/auth.js +16 -11
- package/dist/dashboard/auth.js.map +1 -1
- package/dist/dashboard/web/bot-multi-select.d.ts +33 -0
- package/dist/dashboard/web/bot-multi-select.d.ts.map +1 -0
- package/dist/dashboard/web/bot-multi-select.js +34 -0
- package/dist/dashboard/web/bot-multi-select.js.map +1 -0
- package/dist/dashboard/web/groups-page.d.ts +13 -0
- package/dist/dashboard/web/groups-page.d.ts.map +1 -1
- package/dist/dashboard/web/groups-page.js +25 -7
- package/dist/dashboard/web/groups-page.js.map +1 -1
- package/dist/dashboard/web/i18n.d.ts.map +1 -1
- package/dist/dashboard/web/i18n.js +8 -4
- package/dist/dashboard/web/i18n.js.map +1 -1
- package/dist/dashboard/web/sessions-page.d.ts.map +1 -1
- package/dist/dashboard/web/sessions-page.js +15 -23
- package/dist/dashboard/web/sessions-page.js.map +1 -1
- package/dist/dashboard/web/sessions.d.ts +13 -0
- package/dist/dashboard/web/sessions.d.ts.map +1 -1
- package/dist/dashboard/web/sessions.js +25 -0
- package/dist/dashboard/web/sessions.js.map +1 -1
- package/dist/dashboard-web/app.js +1 -1
- package/dist/dashboard-web/chunks/{bot-defaults-page-HL655CNR.js → bot-defaults-page-NQJFJ45Z.js} +1 -1
- package/dist/dashboard-web/chunks/{chunk-BFUTTYVK.js → chunk-5QJB24I2.js} +1 -1
- package/dist/dashboard-web/chunks/{chunk-ELL53D62.js → chunk-6JTZJRQJ.js} +2 -2
- package/dist/dashboard-web/chunks/{chunk-5ZL7NLR5.js → chunk-CU4SUKK3.js} +1 -1
- package/dist/dashboard-web/chunks/{chunk-5PAYQ3KT.js → chunk-KEEYQ3WF.js} +1 -1
- package/dist/dashboard-web/chunks/chunk-WLIVBPJC.js +1 -0
- package/dist/dashboard-web/chunks/{connectors-page-3QQACF23.js → connectors-page-HADHZXXZ.js} +1 -1
- package/dist/dashboard-web/chunks/groups-page-5TYF46RS.js +8 -0
- package/dist/dashboard-web/chunks/{insights-page-ZZ3JEJ6L.js → insights-page-EVGGJI5L.js} +1 -1
- package/dist/dashboard-web/chunks/{monitor-room-ROJ5GZ4N.js → monitor-room-HRGR2ENP.js} +1 -1
- package/dist/dashboard-web/chunks/{monitoring-page-IATV7KJF.js → monitoring-page-LBU7TTTW.js} +1 -1
- package/dist/dashboard-web/chunks/{office-page-TYO5OIIT.js → office-page-DF6RRBMN.js} +1 -1
- package/dist/dashboard-web/chunks/{overview-page-VJUULZF2.js → overview-page-ZB6QH2EX.js} +1 -1
- package/dist/dashboard-web/chunks/{roles-page-7RJJKZGK.js → roles-page-ZBZGHIIF.js} +1 -1
- package/dist/dashboard-web/chunks/{schedules-page-JTEJ5IXW.js → schedules-page-NQVQC3QY.js} +1 -1
- package/dist/dashboard-web/chunks/sessions-page-DXBCDWCS.js +8 -0
- package/dist/dashboard-web/chunks/{settings-page-7CTTFBRS.js → settings-page-E7NN4NVQ.js} +1 -1
- package/dist/dashboard-web/chunks/{skills-page-57NZECJ3.js → skills-page-2QAVB2SA.js} +1 -1
- package/dist/dashboard-web/chunks/{team-federation-page-6YYIMJG3.js → team-federation-page-VGWL53AE.js} +1 -1
- package/dist/dashboard-web/chunks/{v3-page-ZGKBSBK3.js → v3-page-AY35LKCX.js} +1 -1
- package/dist/dashboard-web/chunks/{whiteboards-page-AACJF6DB.js → whiteboards-page-BNWUU4KG.js} +1 -1
- package/dist/dashboard-web/style.css +61 -53
- package/dist/features/codex-notifier/internal-turn.d.ts +1 -2
- package/dist/features/codex-notifier/internal-turn.d.ts.map +1 -1
- package/dist/features/codex-notifier/internal-turn.js +1 -13
- package/dist/features/codex-notifier/internal-turn.js.map +1 -1
- package/dist/i18n/en.js +2 -2
- package/dist/i18n/en.js.map +1 -1
- package/dist/i18n/zh.js +2 -2
- package/dist/i18n/zh.js.map +1 -1
- package/dist/platform/secure-host-file.d.ts +63 -0
- package/dist/platform/secure-host-file.d.ts.map +1 -1
- package/dist/platform/secure-host-file.js +90 -25
- package/dist/platform/secure-host-file.js.map +1 -1
- package/dist/services/async-trigger-store.d.ts +24 -4
- package/dist/services/async-trigger-store.d.ts.map +1 -1
- package/dist/services/async-trigger-store.js +81 -19
- package/dist/services/async-trigger-store.js.map +1 -1
- package/dist/services/codex-session-meta.d.ts +4 -0
- package/dist/services/codex-session-meta.d.ts.map +1 -0
- package/dist/services/codex-session-meta.js +15 -0
- package/dist/services/codex-session-meta.js.map +1 -0
- package/dist/services/idempotency-store.d.ts +18 -3
- package/dist/services/idempotency-store.d.ts.map +1 -1
- package/dist/services/idempotency-store.js +30 -12
- package/dist/services/idempotency-store.js.map +1 -1
- package/dist/services/traex-transcript.d.ts +7 -5
- package/dist/services/traex-transcript.d.ts.map +1 -1
- package/dist/services/traex-transcript.js +139 -33
- package/dist/services/traex-transcript.js.map +1 -1
- package/dist/services/trigger-types.d.ts +14 -1
- package/dist/services/trigger-types.d.ts.map +1 -1
- package/dist/services/trigger-types.js +35 -0
- package/dist/services/trigger-types.js.map +1 -1
- package/dist/types.d.ts +2 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/utils/child-env.d.ts +1 -1
- package/dist/utils/child-env.d.ts.map +1 -1
- package/dist/utils/child-env.js +18 -0
- package/dist/utils/child-env.js.map +1 -1
- package/dist/worker.js +35 -2
- package/dist/worker.js.map +1 -1
- package/package.json +1 -1
- package/dist/dashboard-web/chunks/chunk-6ALR252E.js +0 -1
- package/dist/dashboard-web/chunks/groups-page-SDZMJ7UV.js +0 -8
- package/dist/dashboard-web/chunks/sessions-page-KD7HDT3U.js +0 -8
|
@@ -48,6 +48,19 @@ export declare function repoBasename(workingDir: unknown): string;
|
|
|
48
48
|
export declare function sessionDirectChatText(s: any): string;
|
|
49
49
|
export declare function sessionLocationText(s: any): string;
|
|
50
50
|
export declare function isUnknownChatSession(s: any, resolveTitle?: (session: any) => string | null): boolean;
|
|
51
|
+
/** True when a chat-filter label still falls back to the raw `chatId` (no
|
|
52
|
+
* human-readable name resolved). Used to demote unresolved labels during
|
|
53
|
+
* option dedup so a named session always wins over an id-only one. */
|
|
54
|
+
export declare function chatFilterLabelIsUnresolved(label: string, chatId: string): boolean;
|
|
55
|
+
/** Pick the better of two chat-filter labels for the same `chatId`. A label
|
|
56
|
+
* that resolved to a real name beats one that still shows the raw id; when both
|
|
57
|
+
* are equally (un)resolved, fall back to a deterministic lexicographic pick so
|
|
58
|
+
* option ordering stays stable across renders.
|
|
59
|
+
*
|
|
60
|
+
* Fixes the dedup bug where `label < existing` alone let a raw-id label
|
|
61
|
+
* (ASCII `oc_…`, which sorts before CJK names) mask an already-resolved name
|
|
62
|
+
* such as `单聊 · 韩毅 - Nil-RD`. */
|
|
63
|
+
export declare function preferChatFilterLabel(existing: string | undefined, candidate: string, chatId: string): string;
|
|
51
64
|
export declare function sessionLocationTitle(s: any): string;
|
|
52
65
|
export declare function sessionSearchText(s: any): string;
|
|
53
66
|
export type SessionTopicKind = 'thread' | 'chat' | 'session';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sessions.d.ts","sourceRoot":"","sources":["../../../src/dashboard/web/sessions.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"sessions.d.ts","sourceRoot":"","sources":["../../../src/dashboard/web/sessions.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAG5D,wBAAgB,UAAU,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAExD;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAGvD;AAED,MAAM,WAAW,sBAAsB;IACrC,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;CACrB;AAqBD;;uDAEuD;AACvD,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,sBAAsB,CAgBvF;AAED;;;;;;oDAMoD;AACpD,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,OAAO,CAAC;IACd,gFAAgF;IAChF,iBAAiB,EAAE,OAAO,CAAC;CAC5B;AAED,MAAM,MAAM,oBAAoB,GAAG,MAAM,GAAG,OAAO,GAAG,OAAO,GAAG,gBAAgB,GAAG,QAAQ,CAAC;AAE5F,eAAO,MAAM,0BAA0B,EAAE,mBAA+D,CAAC;AAEzG,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,mBAAmB,EAAE,MAAM,EAAE,oBAAoB,GAAG,mBAAmB,CAiBnH;AAKD,eAAO,MAAM,kBAAkB,UAA6C,CAAC;AAI7E,MAAM,MAAM,aAAa,GAAG,WAAW,GAAG,SAAS,GAAG,MAAM,GAAG,MAAM,CAAC;AAEtE,eAAO,MAAM,aAAa,EAAE,KAAK,CAAC;IAAE,EAAE,EAAE,aAAa,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAKzF,CAAC;AAEF,wBAAgB,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAE/C;AAED,eAAO,MAAM,sBAAsB,UAUlC,CAAC;AAEF,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,CAKzD;AAED,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,QAAQ,CAAC,GAAG,CAAC,GAAG;IACzD,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;CACjB,CAWA;AAED,wBAAgB,YAAY,CAAC,UAAU,EAAE,OAAO,GAAG,MAAM,CAKxD;AAMD;;iCAEiC;AACjC,wBAAgB,qBAAqB,CAAC,CAAC,EAAE,GAAG,GAAG,MAAM,CAOpD;AAED,wBAAgB,mBAAmB,CAAC,CAAC,EAAE,GAAG,GAAG,MAAM,CAYlD;AAED,wBAAgB,oBAAoB,CAClC,CAAC,EAAE,GAAG,EACN,YAAY,GAAE,CAAC,OAAO,EAAE,GAAG,KAAK,MAAM,GAAG,IAAuB,GAC/D,OAAO,CAGT;AAED;;sEAEsE;AACtE,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAGlF;AAED;;;;;;;iCAOiC;AACjC,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAQ7G;AAED,wBAAgB,oBAAoB,CAAC,CAAC,EAAE,GAAG,GAAG,MAAM,CAInD;AAED,wBAAgB,iBAAiB,CAAC,CAAC,EAAE,GAAG,GAAG,MAAM,CAEhD;AAED,MAAM,MAAM,gBAAgB,GAAG,QAAQ,GAAG,MAAM,GAAG,SAAS,CAAC;AAE7D;;;;;;GAMG;AACH,MAAM,WAAW,iBAAiB,CAAC,CAAC,GAAG,GAAG;IACxC,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,gBAAgB,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,CAAC,EAAE,CAAC;IACV,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,qBAAqB,EAAE,MAAM,CAAC;IAC9B,gBAAgB,EAAE,MAAM,CAAC;IACzB,QAAQ,EAAE,OAAO,CAAC;IAClB,oBAAoB,EAAE,OAAO,CAAC;CAC/B;AAaD;;wDAEwD;AACxD,wBAAgB,eAAe,CAAC,CAAC,EAAE,GAAG,GAAG,MAAM,CAS9C;AAWD;;gBAEgB;AAChB,wBAAgB,oBAAoB,CAAC,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,IAAI,EAAE,SAAS,CAAC,EAAE,GAAG,iBAAiB,CAAC,CAAC,CAAC,EAAE,CA6C9G;AAED,eAAO,MAAM,YAAY,4BAAsB,CAAC;AAEhD,wBAAgB,0BAA0B,CAAC,KAAK,GAAE;IAAE,MAAM,EAAE,OAAO,CAAC;IAAC,cAAc,EAAE,OAAO,CAAA;CAAO,GAAG,OAAO,CAI5G;AAKD,eAAO,MAAM,IAAI;;;;;;;;;;;;;;CAchB,CAAC;AAEF,wBAAgB,eAAe,CAAC,CAAC,EAAE,GAAG,GAAG,MAAM,CAE9C;AAID,wBAAsB,aAAa,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC,CAoBlF;AAMD,wBAAsB,gBAAgB,CAAC,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC,CAqBrF;AAED,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,GAAG,GAAG,MAAM,CAMrD;AAED,wBAAgB,wBAAwB,CAAC,CAAC,EAAE,GAAG,GAAG,aAAa,GAAG,IAAI,CAUrE;AAED,sDAAsD;AACtD,wBAAgB,YAAY,CAAC,CAAC,EAAE,GAAG,GAAG,OAAO,CAG5C;AAED,wBAAgB,qBAAqB,CAAC,CAAC,EAAE,GAAG,GAAG,MAAM,CAYpD;AAED,wBAAgB,iBAAiB,CAAC,CAAC,EAAE,GAAG,GAAG,OAAO,CAEjD;AAED,MAAM,WAAW,SAAS;IAAG,SAAS,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;CAAE;AAElE,wBAAsB,eAAe,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC,CAe5D"}
|
|
@@ -152,6 +152,31 @@ export function isUnknownChatSession(s, resolveTitle = chatDisplayTitle) {
|
|
|
152
152
|
const chatId = String(s?.chatId ?? '').trim();
|
|
153
153
|
return !!chatId && !resolveTitle(s);
|
|
154
154
|
}
|
|
155
|
+
/** True when a chat-filter label still falls back to the raw `chatId` (no
|
|
156
|
+
* human-readable name resolved). Used to demote unresolved labels during
|
|
157
|
+
* option dedup so a named session always wins over an id-only one. */
|
|
158
|
+
export function chatFilterLabelIsUnresolved(label, chatId) {
|
|
159
|
+
const id = String(chatId ?? '').trim();
|
|
160
|
+
return !!id && String(label ?? '').includes(id);
|
|
161
|
+
}
|
|
162
|
+
/** Pick the better of two chat-filter labels for the same `chatId`. A label
|
|
163
|
+
* that resolved to a real name beats one that still shows the raw id; when both
|
|
164
|
+
* are equally (un)resolved, fall back to a deterministic lexicographic pick so
|
|
165
|
+
* option ordering stays stable across renders.
|
|
166
|
+
*
|
|
167
|
+
* Fixes the dedup bug where `label < existing` alone let a raw-id label
|
|
168
|
+
* (ASCII `oc_…`, which sorts before CJK names) mask an already-resolved name
|
|
169
|
+
* such as `单聊 · 韩毅 - Nil-RD`. */
|
|
170
|
+
export function preferChatFilterLabel(existing, candidate, chatId) {
|
|
171
|
+
if (existing === undefined)
|
|
172
|
+
return candidate;
|
|
173
|
+
const existingUnresolved = chatFilterLabelIsUnresolved(existing, chatId);
|
|
174
|
+
const candidateUnresolved = chatFilterLabelIsUnresolved(candidate, chatId);
|
|
175
|
+
if (existingUnresolved !== candidateUnresolved) {
|
|
176
|
+
return existingUnresolved ? candidate : existing;
|
|
177
|
+
}
|
|
178
|
+
return candidate < existing ? candidate : existing;
|
|
179
|
+
}
|
|
155
180
|
export function sessionLocationTitle(s) {
|
|
156
181
|
const label = sessionLocationText(s);
|
|
157
182
|
const chatId = String(s?.chatId ?? '').trim();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sessions.js","sourceRoot":"","sources":["../../../src/dashboard/web/sessions.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"sessions.js","sourceRoot":"","sources":["../../../src/dashboard/web/sessions.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{a as pt,b as ht}from"./chunks/chunk-BFUTTYVK.js";import{b as Te,d as dt,e as ct,g as ut}from"./chunks/chunk-AGCPF6MT.js";import{a as ot}from"./chunks/chunk-BD3PZGH2.js";import{a as ue,b as it,c as lt}from"./chunks/chunk-5ZL7NLR5.js";import{i as at,j as st}from"./chunks/chunk-5CJMHTT4.js";import{D as et,F as tt,I as nt,J as ce,a as le,b as Ye,e as de,t as g,u as s,v as Ze,w as Qe}from"./chunks/chunk-ELL53D62.js";import{a as sn,b as ln,c as dn,d as rt}from"./chunks/chunk-5THX4DI2.js";import{c as X}from"./chunks/chunk-7SZRL6FY.js";var zt=X(ln(),1),qt=X(dn(),1),p=X(sn(),1);var Ne="botmux:close-theme-menu",cn={palette:'<circle cx="13.5" cy="6.5" r=".5" fill="currentColor"/><circle cx="17.5" cy="10.5" r=".5" fill="currentColor"/><circle cx="8.5" cy="7.5" r=".5" fill="currentColor"/><circle cx="6.5" cy="12.5" r=".5" fill="currentColor"/><path d="M12 2a10 10 0 0 0 0 20h1.7a2.3 2.3 0 0 0 1.6-4c-.5-.5-.2-1.3.5-1.3H17a5 5 0 0 0 5-5 9.7 9.7 0 0 0-10-9.7z"/>',monitor:'<rect width="20" height="14" x="2" y="3" rx="2"/><line x1="8" x2="16" y1="21" y2="21"/><line x1="12" x2="12" y1="17" y2="21"/>',sun:'<circle cx="12" cy="12" r="4"/><path d="M12 2v2"/><path d="M12 20v2"/><path d="m4.93 4.93 1.41 1.41"/><path d="m17.66 17.66 1.41 1.41"/><path d="M2 12h2"/><path d="M20 12h2"/><path d="m6.34 17.66-1.41 1.41"/><path d="m19.07 4.93-1.41 1.41"/>',moon:'<path d="M20.985 12.486a9 9 0 1 1-9.473-9.472c.405-.022.617.46.402.803a6 6 0 0 0 8.268 8.268c.344-.215.825-.004.803.401"/>',cpu:'<path d="M12 20v2"/><path d="M12 2v2"/><path d="M17 20v2"/><path d="M17 2v2"/><path d="M2 12h2"/><path d="M2 17h2"/><path d="M2 7h2"/><path d="M20 12h2"/><path d="M20 17h2"/><path d="M20 7h2"/><path d="M7 20v2"/><path d="M7 2v2"/><rect x="4" y="4" width="16" height="16" rx="2"/><rect x="8" y="8" width="8" height="8" rx="1"/>',zap:'<path d="M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z"/>',chevron:'<path d="m6 9 6 6 6-6"/>'},ft=[{labelKey:"theme.base",options:[{value:"system",labelKey:"status.system",icon:"monitor"},{value:"light",labelKey:"status.light",icon:"sun"},{value:"dark",labelKey:"status.dark",icon:"moon"}]},{labelKey:"theme.skins",options:[{value:"cyber",labelKey:"skin.cyber",icon:"cpu"},{value:"fallout",labelKey:"skin.fallout",icon:"zap"}]}],mt=ft.flatMap(e=>e.options),T=!1,Y=null,Z=null,un=70,pn=120;function Se(e){return`<svg class="tm-svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true">${cn[e]??""}</svg>`}function hn(e){return e.replace(/[&<>"]/g,t=>({"&":"&","<":"<",">":">",'"':"""})[t])}function bt(){let e=document.getElementById("theme-menu"),t=document.getElementById("theme-menu-btn"),o=document.getElementById("theme-menu-pop");if(!e||!t||!o||e.dataset.themeMenuInit==="1")return;e.dataset.themeMenuInit="1",o.innerHTML=ft.map(c=>`<div class="tm-group" data-label-key="${c.labelKey}"></div>`+c.options.map(f=>`<button type="button" class="tm-item" role="option" data-value="${f.value}"><span class="tm-ic">${Se(f.icon)}</span><span class="tm-label" data-label-key="${f.labelKey}"></span></button>`).join("")).join("");let r=()=>{if(!T)return;let c=t.getBoundingClientRect(),f=12,h=Math.min(Math.max(o.offsetWidth||216,216),Math.max(0,window.innerWidth-f*2)),M=f+h/2,y=window.innerWidth-f-h/2,x=c.left+c.width/2,L=Math.min(Math.max(x,M),Math.max(M,y)),k=Math.max(180,window.innerHeight-c.bottom-20);o.style.setProperty("--theme-menu-pop-left",`${Math.round(L)}px`),o.style.setProperty("--theme-menu-pop-top",`${Math.round(c.bottom+8)}px`),o.style.setProperty("--theme-menu-pop-max-height",`${Math.round(k)}px`)},a=c=>{Y!=null&&(window.clearTimeout(Y),Y=null),Z!=null&&(window.clearTimeout(Z),Z=null),T=c,t.setAttribute("aria-expanded",String(T)),document.body.classList.toggle("theme-menu-open",T),T?(o.hidden=!1,r(),window.requestAnimationFrame(()=>e.classList.add("open"))):(e.classList.remove("open"),Z=window.setTimeout(()=>{Z=null,T||(o.hidden=!0)},pn))},i=()=>a(!0),l=()=>{Y==null&&(Y=window.setTimeout(()=>a(!1),un))},m=c=>{c.pointerType!=="touch"&&i()},d=c=>{c.pointerType!=="touch"&&l()};e.addEventListener("pointerenter",m),e.addEventListener("pointerleave",d),o.addEventListener("pointerenter",m),o.addEventListener("pointerleave",d),t.addEventListener("click",c=>{c.stopPropagation(),a(!T)}),t.addEventListener("focus",()=>{t.matches(":focus-visible")&&i()}),e.addEventListener("focusout",c=>{let f=c.relatedTarget;(!(f instanceof Node)||!e.contains(f))&&l()}),o.addEventListener("click",c=>{let f=c.target.closest(".tm-item");f&&(g.setTheme(f.dataset.value??"system"),a(!1))}),document.addEventListener("click",c=>{T&&!e.contains(c.target)&&a(!1)}),document.addEventListener("pointermove",c=>{if(!T||c.pointerType==="touch")return;let f=c.target;f instanceof Node&&e.contains(f)||l()}),document.addEventListener("keydown",c=>{c.key==="Escape"&&T&&a(!1)}),window.addEventListener("resize",r),window.addEventListener("scroll",r,!0),window.addEventListener(Ne,()=>{T&&a(!1)}),Pe()}function Pe(){let e=document.getElementById("theme-menu-btn");if(!e)return;let t=mt.find(o=>o.value===g.theme)??mt[0];e.innerHTML=`<span class="tm-ic">${Se("palette")}</span><span class="tm-current">${hn(s(t.labelKey))}</span><span class="tm-chev">${Se("chevron")}</span>`,document.querySelectorAll("#theme-menu-pop [data-label-key]").forEach(o=>{o.textContent=s(o.dataset.labelKey??"")}),document.querySelectorAll("#theme-menu-pop .tm-item").forEach(o=>{o.classList.toggle("active",o.dataset.value===g.theme)})}function b(e,t,o,r,a=!1){return{id:e,routePrefix:t,rerenderOnUiChange:a,load:async()=>(await o())[r]}}var mn=[{id:"plugins",routePrefix:"#/plugins",rerenderOnUiChange:!1,load:async()=>{let e=await import("./chunks/plugin-page-VEGTCEAS.js");return t=>e.renderPluginPage(t)}},b("workflows","#/workflows",()=>import("./chunks/v3-page-ZGKBSBK3.js"),"renderV3RunsPage"),b("groups","#/groups",()=>import("./chunks/groups-page-SDZMJ7UV.js"),"renderGroupsPage"),b("settings","#/settings",()=>import("./chunks/settings-page-7CTTFBRS.js"),"renderSettingsPage"),b("bot-defaults","#/bot-defaults",()=>import("./chunks/bot-defaults-page-HL655CNR.js"),"renderBotDefaultsPage"),b("skills","#/skills",()=>import("./chunks/skills-page-57NZECJ3.js"),"renderSkillsPage"),b("connectors-logs","#/connectors/logs",()=>import("./chunks/connectors-page-3QQACF23.js"),"renderConnectorsLogsPage"),b("webhook-logs","#/webhook-logs",()=>import("./chunks/connectors-page-3QQACF23.js"),"renderConnectorsLogsPage"),b("connectors","#/connectors",()=>import("./chunks/connectors-page-3QQACF23.js"),"renderConnectorsPage"),b("team-manage","#/team/manage",()=>import("./chunks/team-federation-page-6YYIMJG3.js"),"renderTeamManagePage"),b("team","#/team",()=>import("./chunks/team-federation-page-6YYIMJG3.js"),"renderTeamFederationPage"),b("roles-profile","#/roles/profile",()=>import("./chunks/roles-page-7RJJKZGK.js"),"renderRoleProfilesPage"),b("roles","#/roles",()=>import("./chunks/roles-page-7RJJKZGK.js"),"renderRolesPage"),b("schedules","#/schedules",()=>import("./chunks/schedules-page-JTEJ5IXW.js"),"renderSchedulesPage"),b("whiteboards","#/whiteboards",()=>import("./chunks/whiteboards-page-AACJF6DB.js"),"renderWhiteboardsPage"),b("monitoring","#/monitoring",()=>import("./chunks/monitoring-page-IATV7KJF.js"),"renderMonitoringPage"),b("sessions","#/sessions",()=>import("./chunks/sessions-page-KD7HDT3U.js"),"renderSessionsPage"),b("monitor-room","#/monitor-room",()=>import("./chunks/monitor-room-ROJ5GZ4N.js"),"renderMonitorRoomPage",!0),b("office","#/office",()=>import("./chunks/office-page-TYO5OIIT.js"),"renderOfficePage"),b("insights","#/insights",()=>import("./chunks/insights-page-ZZ3JEJ6L.js"),"renderInsightsPage")];function gt(e){return mn.find(t=>t.exact?e===t.routePrefix:e.startsWith(t.routePrefix))}async function vt(){let e=await import("./chunks/overview-page-VJUULZF2.js");return t=>e.renderOverviewPage(t)}function wt(){return{seq:0,pageDispose:null,rerenderOnUiChange:!0}}function xt(e){let t=++e.seq;return e.pageDispose&&(e.pageDispose(),e.pageDispose=null),t}function yt(e,t){return t===e.seq}async function kt(e,t,o,r,a={}){let i=await r();if(!yt(e,t))return!1;let l=i(o);return yt(e,t)?(e.pageDispose=typeof l=="function"?l:null,e.rerenderOnUiChange=a.rerenderOnUiChange??!0,!0):(typeof l=="function"&&l(),!1)}var fn="botmux.dashboard.stale-chunk-reload.v1:",bn=/Failed to fetch dynamically imported module|Importing a module script failed|error loading dynamically imported module|dynamically imported module/i,gn=/\b(?:https?:\/\/|\/assets\/)\S+?\.js\b/;function Et(e){return e instanceof Error?`${e.name}: ${e.message}`:String(e)}function Rt(e){return bn.test(Et(e))}function vn(e,t){let a=Et(e).match(gn)?.[0]||`${t.href}|${t.hash}`;return`${fn}${a.slice(-240)}`}function yn(e,t){if(!Rt(e))return!1;let o=vn(e,t);try{if(t.sessionStorage.getItem(o)==="1")return!1;t.sessionStorage.setItem(o,"1")}catch{return!1}return t.reload(),!0}function Mt(e,t){if(!Rt(e))return!1;let o;try{o=t.getSessionStorage()}catch{return!1}return yn(e,{...t,sessionStorage:o})}var wn=new Set(["auto","scroll","overlay"]),pe=28,P=3,$=6,Lt=!1,Ot=null,Tt=new WeakMap,C=new Map,St=null,Nt=null,Oe=0,Ce=0,Q=null;function xn(e){return e.closest("dialog[open]")??document.body}function kn(e){let t=Tt.get(e);if(t?.isConnected)return t;let o=document.createElement("div");return o.className="floating-scrollbar-layer",o.setAttribute("aria-hidden","true"),e.appendChild(o),Tt.set(e,o),o}function En(e){return wn.has(e)}function He(e,t){let o=getComputedStyle(e),r=t==="y"?o.overflowY:o.overflowX;return En(r)?t==="y"?e.scrollHeight-e.clientHeight>1:e.scrollWidth-e.clientWidth>1:!1}function Rn(e){if(!e.isConnected||e.closest("[hidden]"))return!1;let t=e.getBoundingClientRect();return t.width>0&&t.height>0&&t.bottom>0&&t.right>0&&t.top<window.innerHeight&&t.left<window.innerWidth}function Mn(e){return[e,...Array.from(e.querySelectorAll("*"))].filter(o=>Rn(o)&&(He(o,"x")||He(o,"y")))}function he(e){e.hideTimer!==void 0&&window.clearTimeout(e.hideTimer),e.track.remove()}function Ln(e,t){let o=C.get(e);o||(o={},C.set(e,o));let r=o[t],a=xn(e),i=kn(a);if(r?.track.parentElement===i)return r;r&&he(r);let l=document.createElement("div"),m=document.createElement("div");l.className=`floating-scrollbar floating-scrollbar-${t}`,m.className="floating-scrollbar-thumb",l.appendChild(m),i.appendChild(l);let d={target:e,axis:t,track:l,thumb:m,hideTimer:void 0};return o[t]=d,d}function De(e,t=!1){e.track.classList.add("is-visible"),e.hideTimer!==void 0&&window.clearTimeout(e.hideTimer),e.hideTimer=t?void 0:window.setTimeout(()=>{e.track.classList.remove("is-visible","is-active"),e.hideTimer=void 0},900)}function Tn(e){let{target:t,axis:o,track:r,thumb:a}=e,i=t.getBoundingClientRect();if(o==="y"){let M=Math.max(0,i.top+P),y=Math.min(window.innerHeight,i.bottom-P),x=Math.max(0,y-M);if(x<pe||t.scrollHeight<=t.clientHeight){r.hidden=!0;return}let L=Math.max(pe,Math.round(x*t.clientHeight/t.scrollHeight)),k=Math.max(1,t.scrollHeight-t.clientHeight),V=Math.round((x-L)*t.scrollTop/k);r.hidden=!1,r.style.left=`${Math.min(window.innerWidth-$-P,Math.max(P,i.right-$-P))}px`,r.style.top=`${M}px`,r.style.width=`${$}px`,r.style.height=`${x}px`,a.style.width="100%",a.style.height=`${L}px`,a.style.transform=`translate3d(0, ${V}px, 0)`;return}let l=Math.max(0,i.left+P),m=Math.min(window.innerWidth,i.right-P),d=Math.max(0,m-l);if(d<pe||t.scrollWidth<=t.clientWidth){r.hidden=!0;return}let c=Math.max(pe,Math.round(d*t.clientWidth/t.scrollWidth)),f=Math.max(1,t.scrollWidth-t.clientWidth),h=Math.round((d-c)*t.scrollLeft/f);r.hidden=!1,r.style.left=`${l}px`,r.style.top=`${Math.min(window.innerHeight-$-P,Math.max(P,i.bottom-$-P))}px`,r.style.width=`${d}px`,r.style.height=`${$}px`,a.style.width=`${c}px`,a.style.height="100%",a.style.transform=`translate3d(${h}px, 0, 0)`}function F(){Oe||(Oe=window.requestAnimationFrame(()=>{Oe=0,Nn()}))}function Sn(){Ce||(Ce=window.setTimeout(()=>{Ce=0,F()},120))}function Nn(){let e=Ot;if(!e)return;let t=new Set(Mn(e));for(let[o,r]of C)t.has(o)||(r.x&&he(r.x),r.y&&he(r.y),C.delete(o));for(let o of t){let r=o===Q;for(let a of["x","y"]){let i=C.get(o);if(!He(o,a)){let m=i?.[a];m&&(he(m),delete i?.[a]);continue}let l=Ln(o,a);Tn(l),r&&De(l,!0)}}}function Pn(e){if(!(e instanceof HTMLElement))return;let t=C.get(e);if(t)for(let o of Object.values(t))o&&(o.track.classList.add("is-active"),De(o))}function On(e){for(let t=e;t;t=t.parentElement)if(t instanceof HTMLElement&&C.has(t))return t;return null}function Pt(e){if(Q===e)return;let t=Q?C.get(Q):void 0;if(Q=e,t)for(let r of Object.values(t))r?.track.classList.remove("is-visible");let o=e?C.get(e):void 0;if(o)for(let r of Object.values(o))r&&De(r,!0)}function Ct(e){Lt||(Lt=!0,Ot=e,document.documentElement.classList.add("floating-scrollbars-on"),St=typeof ResizeObserver>"u"?null:new ResizeObserver(F),St?.observe(e),Nt=new MutationObserver(t=>{for(let o of t){let r=o.target;if(!(r instanceof Element&&r.closest(".floating-scrollbar-layer"))){Sn();return}}}),Nt.observe(e,{attributes:!0,attributeFilter:["class","style","hidden","open"],childList:!0,subtree:!0}),document.addEventListener("scroll",t=>{Pn(t.target),F()},!0),window.addEventListener("resize",F),window.addEventListener("hashchange",F),document.addEventListener("pointermove",t=>{Pt(On(document.elementFromPoint(t.clientX,t.clientY)))}),document.addEventListener("pointerleave",()=>Pt(null)),F())}var Ht=!1,_=null,me=null,W=null;function At(){if(_)return _;let e=document.createElement("div");return e.className="icon-tip",e.setAttribute("role","tooltip"),e.style.display="none",document.body.appendChild(e),_=e,e}function Cn(e){let t=At(),o=at(e,document.body);return t.parentNode!==o&&o.appendChild(t),t}function Hn(e){let t=At(),o=e.getBoundingClientRect(),r=t.offsetWidth,a=t.offsetHeight,i=8,l=o.top<a+i+4,m=o.left+o.width/2-r/2;m=Math.min(Math.max(m,6),window.innerWidth-r-6);let d=l?o.bottom+i:o.top-a-i;t.style.left=`${Math.round(m)}px`,t.style.top=`${Math.round(d)}px`,t.dataset.placement=l?"bottom":"top"}function ee(){W&&(clearTimeout(W),W=null),me=null,_&&(_.style.display="none",_.classList.remove("show"))}function Dt(e){let t=e.getAttribute("data-tip");if(!t)return;me=e;let o=Cn(e);o.textContent=t,o.style.display="block",o.classList.remove("show"),Hn(e),requestAnimationFrame(()=>{me===e&&o.classList.add("show")})}function Ae(e){return e instanceof Element?e.closest("[data-tip]"):null}function Bt(){Ht||typeof document>"u"||(Ht=!0,document.addEventListener("pointerover",e=>{let t=Ae(e.target);!t||t===me||(W&&clearTimeout(W),W=setTimeout(()=>Dt(t),120))}),document.addEventListener("pointerout",e=>{let t=Ae(e.target);if(!t)return;let o=e.relatedTarget instanceof Element?e.relatedTarget:null;o&&(o===t||t.contains(o))||ee()}),document.addEventListener("focusin",e=>{let t=Ae(e.target);t&&Dt(t)}),document.addEventListener("focusout",ee),document.addEventListener("click",ee,!0),window.addEventListener("scroll",ee,!0),window.addEventListener("resize",ee))}async function It(e){let t=await e.json().catch(()=>null);return t&&typeof t=="object"?t:{}}function Ut(e,t){let o=t.detail??t.error;return new Error(typeof o=="string"?o:`HTTP ${e.status}`)}async function Be(e,t=()=>{},o){t("updating");let r=await e(o?"/api/update/rollback":"/api/update/run",o?{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({version:o})}:{method:"POST"}),a=await It(r);if(!r.ok||a.ok===!1)throw Ut(r,a);if(a.ok!==!0||typeof a.oldVersion!="string"||typeof a.newVersion!="string"||typeof a.changed!="boolean")throw new Error("Invalid update response");if(o&&(a.newVersion!==o||a.changed!==!0))throw new Error("Invalid rollback response");let i={oldVersion:a.oldVersion,newVersion:a.newVersion,changed:a.changed,restarted:!1};if(t("restarting"),o)return{...i,restarted:!0};let l=await e("/api/update/restart",{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({update:{oldVersion:i.oldVersion,newVersion:i.newVersion}})}),m=await It(l);if(!l.ok||m.ok===!1)return{...i,restarted:!1,restartError:Ut(l,m).message};if(m.ok!==!0)throw new Error("Invalid restart response");return m.alreadyScheduled===!0?{...i,restarted:!0,alreadyScheduled:!0}:{...i,restarted:!0}}function Ie(e,t){if(e)try{let o=new URL(e);if(!["http:","https:"].includes(o.protocol)||o.username||o.password)return;let r=t.startsWith("#/")&&t.length<=4096&&!/[\u0000-\u001f\u007f]/.test(t)?t:"#/";return o.searchParams.set("next",`/${r}`),o.toString()}catch{return}}var n=X(rt(),1),Dn=["roles","role-profiles","bot-defaults","skills","plugins","team","connectors","insights","whiteboards"],$t=[{id:"overview",href:"#/",labelKey:"nav.overview",icon:(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("rect",{x:"1.5",y:"1.5",width:"5.4",height:"5.4",rx:"1.5"}),(0,n.jsx)("rect",{x:"9.1",y:"1.5",width:"5.4",height:"5.4",rx:"1.5"}),(0,n.jsx)("rect",{x:"1.5",y:"9.1",width:"5.4",height:"5.4",rx:"1.5"}),(0,n.jsx)("rect",{x:"9.1",y:"9.1",width:"5.4",height:"5.4",rx:"1.5"})]})},{id:"sessions",href:"#/sessions",labelKey:"nav.sessions",icon:(0,n.jsx)("path",{d:"M2 3.5h12v7H6l-3 3v-3H2z"})},{id:"groups",href:"#/groups",labelKey:"nav.groups",icon:(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("circle",{cx:"5.6",cy:"5.8",r:"2.4"}),(0,n.jsx)("circle",{cx:"11",cy:"6.8",r:"1.9"}),(0,n.jsx)("path",{d:"M1.8 13.2c.5-2.4 2-3.6 3.8-3.6s3.3 1.2 3.8 3.6M9.8 12.6c.4-1.7 1.5-2.6 2.8-2.6 1 0 1.9.5 2.4 1.6"})]})},{id:"roles",href:"#/roles",labelKey:"nav.roles",manage:!0,icon:(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("path",{d:"M8 1.8l5.2 2v3.4c0 3.4-2.2 5.9-5.2 7-3-1.1-5.2-3.6-5.2-7V3.8z"}),(0,n.jsx)("path",{d:"M5.8 8l1.6 1.6 2.8-3"})]})},{id:"monitoring",href:"#/monitoring",labelKey:"nav.monitoring",icon:(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("path",{d:"M2 9.2h2.3l1.3-4.8 2.5 8.4 1.8-5.1h4.1"}),(0,n.jsx)("path",{d:"M2 2.5h12v11H2z"})]})},{id:"insights",href:"#/insights",labelKey:"nav.insights",manage:!0,icon:(0,n.jsx)(n.Fragment,{children:(0,n.jsx)("path",{d:"M2 2v12h12M5 11V7M8.5 11V4.5M12 11V8.5"})})},{id:"workflows",href:"#/workflows",labelKey:"nav.workflows",icon:(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("circle",{cx:"3.4",cy:"3.6",r:"1.9"}),(0,n.jsx)("circle",{cx:"3.4",cy:"12.4",r:"1.9"}),(0,n.jsx)("circle",{cx:"12.6",cy:"8",r:"1.9"}),(0,n.jsx)("path",{d:"M5.2 4.4l5.6 2.8M5.2 11.6l5.6-2.8"})]})},{id:"schedules",href:"#/schedules",labelKey:"nav.schedules",icon:(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("circle",{cx:"8",cy:"8",r:"6.2"}),(0,n.jsx)("path",{d:"M8 4.5V8l2.4 1.6"})]})},{id:"whiteboards",href:"#/whiteboards",labelKey:"nav.whiteboards",manage:!0,icon:(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("rect",{x:"2.2",y:"2.2",width:"11.6",height:"11.6",rx:"2"}),(0,n.jsx)("path",{d:"M4.8 5.2h6.4M4.8 8h6.4M4.8 10.8h4"})]})},{id:"office",href:"#/office",labelKey:"nav.office",icon:(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("rect",{x:"3",y:"4",width:"10",height:"7",rx:"2"}),(0,n.jsx)("circle",{cx:"6",cy:"7.5",r:"1"}),(0,n.jsx)("circle",{cx:"10",cy:"7.5",r:"1"}),(0,n.jsx)("path",{d:"M8 4V2M4.5 11v2M11.5 11v2"})]})},{id:"bot-defaults",href:"#/bot-defaults",labelKey:"nav.botDefaults",manage:!0,icon:(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("rect",{x:"2.5",y:"5",width:"11",height:"8",rx:"2"}),(0,n.jsx)("circle",{cx:"5.8",cy:"9",r:"1"}),(0,n.jsx)("circle",{cx:"10.2",cy:"9",r:"1"}),(0,n.jsx)("path",{d:"M8 5V2.5M5.5 13v1.2M10.5 13v1.2"})]})},{id:"skills",href:"#/skills",labelKey:"nav.skills",manage:!0,icon:(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("path",{d:"M3 2.5h10v3H3zM3 7h10v6.5H3z"}),(0,n.jsx)("path",{d:"M5.4 9.2h5.2M5.4 11.2h3.8"})]})},{id:"plugins",href:"#/plugins",label:"\u63D2\u4EF6",manage:!0,icon:(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("path",{d:"M6.4 1.8h3.2v3h2.8v3.2H9.6v2.8H6.4V8H3.6V4.8h2.8z"}),(0,n.jsx)("path",{d:"M2.2 11.8h11.6v2.4H2.2z"})]})},{id:"team",href:"#/team",labelKey:"nav.team",manage:!0,icon:(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("circle",{cx:"8",cy:"8",r:"6.2"}),(0,n.jsx)("path",{d:"M1.8 8h12.4M8 1.8c-2 1.8-2 10.6 0 12.4 2-1.8 2-10.6 0-12.4z"})]})},{id:"connectors",href:"#/connectors",labelKey:"nav.connectors",manage:!0,icon:(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("path",{d:"M5.5 6.5v-3a2.5 2.5 0 0 1 5 0v3"}),(0,n.jsx)("rect",{x:"3.5",y:"6.5",width:"9",height:"7",rx:"2"})]})},{id:"settings",href:"#/settings",labelKey:"nav.settings",icon:(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("path",{d:"M8 1.75 9.35 2.05 10 3.28l1.38.3 1.04-.96.96.96-.96 1.04.3 1.38 1.23.65L14.25 8l-.3 1.35-1.23.65-.3 1.38.96 1.04-.96.96-1.04-.96-1.38.3-.65 1.23L8 14.25l-1.35-.3L6 12.72l-1.38-.3-1.04.96-.96-.96.96-1.04-.3-1.38-1.23-.65L1.75 8l.3-1.35 1.23-.65.3-1.38-.96-1.04.96-.96 1.04.96 1.38-.3.65-1.23z"}),(0,n.jsx)("circle",{cx:"8",cy:"8",r:"2"})]})}],ne=[],A=!0,We=!1,jt=location.hash||"#/",K=null,oe=!1,re=null,be=null,Gt=null,ge=null,Jt=null,D=wt(),Xt="botmux.ownerAvatar.v1",An=new Set(["working","analyzing","active","starting"]),Ke="botmux:auth-expired",Ve;function te(e){return(0,n.jsx)("svg",{viewBox:"0 0 16 16","aria-hidden":"true",children:e})}function Ft(e){return e.labelKey?s(e.labelKey):e.label??""}function Bn(e,t){let o=t||"#/";return e.id==="plugins"&&ne.some(r=>r.href===o||o.startsWith(`${r.href}?`)||o.startsWith(`${r.href}/`))?!1:e.id==="sessions"&&(o==="#/monitor-room"||o.startsWith("#/monitor-room?")||o.startsWith("#/monitor-room/"))||e.id==="connectors"&&(o==="#/webhook-logs"||o.startsWith("#/webhook-logs?")||o.startsWith("#/webhook-logs/"))?!0:e.href===o||e.href!=="#/"&&(o.startsWith(`${e.href}?`)||o.startsWith(`${e.href}/`))}function In(){let e=ct()?$t.filter(o=>o.id!=="workflows"):$t;if(ne.length===0)return e;let t=e.findIndex(o=>o.id==="plugins");return t<0?[...e,...ne]:[...e.slice(0,t+1),...ne,...e.slice(t+1)]}function Un(e){let t=[];return Bn(e,jt)&&t.push("active"),e.id==="settings"&&oe&&t.push("nav-has-update"),t.length?t.join(" "):void 0}function Yt(){let e=de(new URLSearchParams(location.search).get("locale"));if(e)return e;let t=location.hash.indexOf("?");return t<0?null:de(new URLSearchParams(location.hash.slice(t+1)).get("locale"))}function _t(){let e=Yt();return!e||e===g.locale?!1:(g.setLocale(e),!0)}function $n(){let e=location.hash.indexOf("?");return e<0?null:{path:location.hash.slice(0,e)||"#/",params:new URLSearchParams(location.hash.slice(e+1))}}function Fn(){let e=$n(),t=e?.params.get("open");if(!e||!t||t!=="bot-onboarding"&&t!=="create-session")return!1;e.params.delete("open");let o=e.params.toString();return history.replaceState(null,"",o?`${e.path}?${o}`:e.path),t==="bot-onboarding"?window.dispatchEvent(new Event(ue)):Te(),!0}function Wt(){let e=re?`v${re}`:"";return be==="runtime"?s("update.navRuntimeBadgeTitle",{version:e}):s("update.navBadgeTitle",{version:e})}function _n(e){ge=e}function Ue(){if(ge)return ge;let e=document.getElementById("root");if(!e)throw new Error("dashboard root is not mounted");return ge=e,e}function Wn(){return(0,p.useEffect)(()=>{bt()},[]),(0,p.useEffect)(()=>{Pe()}),(0,n.jsxs)("div",{className:"theme-menu",id:"theme-menu",children:[(0,n.jsx)("button",{type:"button",className:"theme-menu-btn",id:"theme-menu-btn","aria-haspopup":"listbox","aria-expanded":"false","aria-label":"Theme",children:(0,n.jsx)("span",{className:"tm-ic",children:(0,n.jsxs)("svg",{className:"tm-svg",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.75",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:[(0,n.jsx)("circle",{cx:"13.5",cy:"6.5",r:".5",fill:"currentColor"}),(0,n.jsx)("circle",{cx:"17.5",cy:"10.5",r:".5",fill:"currentColor"}),(0,n.jsx)("circle",{cx:"8.5",cy:"7.5",r:".5",fill:"currentColor"}),(0,n.jsx)("circle",{cx:"6.5",cy:"12.5",r:".5",fill:"currentColor"}),(0,n.jsx)("path",{d:"M12 2a10 10 0 0 0 0 20h1.7a2.3 2.3 0 0 0 1.6-4c-.5-.5-.2-1.3.5-1.3H17a5 5 0 0 0 5-5 9.7 9.7 0 0 0-10-9.7z"})]})})}),(0,n.jsx)("div",{className:"theme-menu-pop",id:"theme-menu-pop",role:"listbox",hidden:!0})]})}function Kn(){let e=[...le.sessions.values()],t=e.filter(d=>d.status!=="closed"),o=t.map(d=>({s:d,reason:nt(d)})).filter(d=>!!d.reason).sort((d,c)=>ce(d.s)-ce(c.s)),r=new Set(o.map(d=>String(d.s.sessionId??""))),a=t.filter(d=>An.has(String(d.status))&&!r.has(String(d.sessionId??""))).length,i=o[0]??null,l=ht(e).filter(d=>d.online||d.active.length>0).length,m=Math.max(0,t.length-o.length-a);return{working:a,attention:o.length,idle:m,onlineBots:l,attentionNotice:i?{count:o.length,time:Qe(ce(i.s)),bot:tt(i.s),reason:i.reason}:null}}function fe(e){return(0,n.jsxs)("div",{className:`topbar-status-row${e.hot?" topbar-status-row-hot":""}`,children:[(0,n.jsx)("span",{children:e.label}),(0,n.jsx)("b",{className:e.value>0?"status-count-on":void 0,children:e.value})]})}function Vn(e){let{attention:t,idle:o,working:r}=e.summary,a=r+t+o,i=a===0?"conic-gradient(var(--border) 0 360deg)":(()=>{let l=r/a*360,m=l+t/a*360;return`conic-gradient(var(--accent) 0 ${l}deg, var(--warning) ${l}deg ${m}deg, var(--success) ${m}deg 360deg)`})();return(0,n.jsxs)("div",{className:"topbar-status-donut-wrap","aria-hidden":"true",children:[(0,n.jsx)("div",{className:"topbar-status-donut",style:{background:i}}),(0,n.jsxs)("div",{className:"topbar-status-donut-center",children:[(0,n.jsx)("b",{children:a}),(0,n.jsx)("span",{children:s("overview.openSessions")})]})]})}function $e(){window.dispatchEvent(new Event(Ne))}function zn(e){let{autoOpen:t=!1,summary:o}=e,[r,a]=(0,p.useState)(!1),[i,l]=(0,p.useState)(!1),[m,d]=(0,p.useState)(!1),c=(0,p.useRef)(null),f=t&&!i,h=r||f;return(0,p.useEffect)(()=>{t||l(!1)},[t]),(0,p.useEffect)(()=>{if(!h)return;let y=x=>{let L=x.target;L instanceof Node&&c.current?.contains(L)||(a(!1),l(!0))};return document.addEventListener("pointerdown",y),()=>document.removeEventListener("pointerdown",y)},[h]),(0,n.jsxs)("div",{ref:c,className:`topbar-status-menu${f?" topbar-status-auto-open":""}${r?" is-open":""}${m?" suppress-hover":""}`,onPointerEnter:$e,onPointerLeave:()=>d(!1),onFocusCapture:$e,onBlur:y=>{let x=y.relatedTarget;(!(x instanceof Node)||!y.currentTarget.contains(x))&&a(!1)},onKeyDown:y=>{y.key==="Escape"&&(a(!1),l(!0),d(!0),y.currentTarget.querySelector("#status")?.focus())},children:[(0,n.jsx)("button",{type:"button",id:"status",className:"connection-status","aria-haspopup":"true","aria-expanded":h,onClick:()=>{if($e(),h){a(!1),l(!0),d(!0);return}d(!1),a(!0)},children:s("overview.sessionOverview")}),(0,n.jsxs)("div",{className:"topbar-status-pop",children:[o.attentionNotice?(0,n.jsxs)("a",{className:"topbar-attention-notice",href:"#/sessions",children:[(0,n.jsx)("span",{className:"topbar-attention-dot","aria-hidden":"true"}),(0,n.jsxs)("span",{className:"topbar-attention-copy",children:[(0,n.jsx)("b",{children:s("strip.pending",{count:o.attentionNotice.count})}),(0,n.jsx)("small",{children:s("strip.longestCompact",{time:o.attentionNotice.time,bot:o.attentionNotice.bot,reason:o.attentionNotice.reason})})]}),(0,n.jsx)("span",{className:"topbar-attention-action",children:s("strip.handle")})]}):null,(0,n.jsxs)("div",{className:"topbar-status-list",children:[(0,n.jsx)(fe,{label:s("overview.workingSessions"),value:o.working}),(0,n.jsx)(fe,{label:s("overview.idleSessions"),value:o.idle}),(0,n.jsx)(fe,{label:s("overview.attention"),value:o.attention,hot:o.attention>0}),(0,n.jsx)(fe,{label:s("overview.onlineBots"),value:o.onlineBots})]}),(0,n.jsx)(Vn,{summary:o})]})]})}function qn(e){if(!e.open)return null;let t=!!e.loginUrl;return(0,n.jsx)("div",{id:"auth-expired-overlay",className:"auth-expired-overlay",role:"presentation",onClick:o=>{o.target===o.currentTarget&&e.onClose()},children:(0,n.jsxs)("div",{className:"auth-expired-dialog",role:"dialog","aria-modal":"true","aria-labelledby":"auth-expired-title",children:[(0,n.jsx)("h2",{id:"auth-expired-title",children:t?"\u767B\u5F55 Dashboard":"\u8BBF\u95EE\u94FE\u63A5\u5DF2\u5931\u6548"}),(0,n.jsx)("p",{children:t?"\u5F53\u524D\u6D4F\u89C8\u5668\u5C1A\u672A\u767B\u5F55\u3002\u70B9\u51FB\u540E\u5C06\u901A\u8FC7 Botmux \u5E73\u53F0\u6821\u9A8C\u673A\u5668 owner \u6743\u9650\uFF0C\u5E76\u8FD4\u56DE\u5F53\u524D\u9875\u9762\uFF1B\u65E0\u6743\u9650\u8D26\u53F7\u4ECD\u4F1A\u88AB\u62D2\u7EDD\u3002":"\u5F53\u524D\u94FE\u63A5/\u8BBF\u95EE\u5DF2\u5931\u6548\uFF0C\u8BF7\u4F7F\u7528\u6700\u65B0\u6388\u6743\u94FE\u63A5\u91CD\u65B0\u8FDB\u5165\uFF08\u8FD0\u884C botmux dashboard \u83B7\u53D6\uFF09\u3002"}),(0,n.jsxs)("div",{className:"auth-expired-actions",children:[e.loginUrl?(0,n.jsx)("a",{id:"dashboard-one-click-login",className:"auth-login-link primary",href:e.loginUrl,target:"_top",rel:"noopener",children:"\u4E00\u952E\u767B\u5F55"}):null,(0,n.jsx)("button",{id:"auth-expired-dismiss",type:"button",className:t?"secondary":"primary",onClick:e.onClose,children:t?"\u6682\u4E0D\u767B\u5F55":"\u77E5\u9053\u4E86"})]})]})})}function jn(e){let t=new Date(e);if(Number.isNaN(t.getTime()))return e.slice(0,10);try{return new Intl.DateTimeFormat(g.locale==="zh"?"zh-CN":"en-US",{year:"numeric",month:"numeric",day:"numeric"}).format(t)}catch{return e.slice(0,10)}}async function Kt(){let e=await fetch("/__selfcheck",{cache:"no-store"}),t=await e.text();if(!e.ok||!t)throw new Error(s("update.healthCheckFailed"));return t}function Gn(e){let{status:t}=e,[o,r]=(0,p.useState)(!1),[a,i]=(0,p.useState)("idle"),[l,m]=(0,p.useState)(!1),[d,c]=(0,p.useState)(!1),[f,h]=(0,p.useState)(""),[M,y]=(0,p.useState)(!1),[x,L]=(0,p.useState)(!1),[k,V]=(0,p.useState)(!1),[z,se]=(0,p.useState)(!1),[q,qe]=(0,p.useState)([]),[w,ve]=(0,p.useState)(null),[H,ye]=(0,p.useState)(null),O=(0,p.useRef)(!1),j=(0,p.useRef)(null),je=(0,p.useRef)(null),we=(0,p.useRef)(null),xe=(0,p.useRef)(null),[G,Ge]=(0,p.useState)(null),Zt=()=>{j.current!==null&&(window.clearTimeout(j.current),j.current=null)};if((0,p.useEffect)(()=>{O.current=!1,i("idle"),m(!1),c(!1),h(""),y(!1),L(!1),V(!1),se(!1),qe([]),ve(null),ye(null)},[t?.current,t?.latest]),(0,p.useEffect)(()=>{t&&c(t.versionLookupOk===!1)},[t]),(0,p.useEffect)(()=>{o||y(!1)},[o]),(0,p.useEffect)(()=>{if(!o||!G)return;let u=window.requestAnimationFrame(()=>{xe.current?.querySelector('button:not([disabled]), a[href], input:not([disabled]), select:not([disabled]), textarea:not([disabled]), [tabindex]:not([tabindex="-1"])')?.focus()});return()=>window.cancelAnimationFrame(u)},[o,G!==null]),(0,p.useEffect)(()=>{if(!o){Ge(null);return}let u=()=>{let v=we.current;if(!v)return;let E=v.getBoundingClientRect(),N=Math.min(340,Math.max(0,window.innerWidth-32)),I=Math.max(16,Math.min(E.left,window.innerWidth-N-16));Ge({top:E.bottom+8,left:I})};return u(),window.addEventListener("resize",u),document.addEventListener("scroll",u,!0),()=>{window.removeEventListener("resize",u),document.removeEventListener("scroll",u,!0)}},[o]),(0,p.useEffect)(()=>()=>Zt(),[]),(0,p.useEffect)(()=>{if(!o)return;let u=E=>{let N=E.target;je.current?.contains(N)||xe.current?.contains(N)||r(!1)},v=E=>{E.key==="Escape"&&(r(!1),we.current?.focus())};return document.addEventListener("pointerdown",u),document.addEventListener("keydown",v),()=>{document.removeEventListener("pointerdown",u),document.removeEventListener("keydown",v)}},[o]),!t)return null;let B=t.behind&&!!t.latest,ke=!t.latest,Ee=B&&t.updateSupported&&!t.localDevInstall&&t.node.ok,Je=t.updateSupported&&!t.localDevInstall&&t.node.ok,S=a==="updating"||a==="restarting",Qt=t.updateCommand??"botmux update",Re=`v${t.current}`,en=t.latest?`v${t.latest}`:"",tn=t.localDevInstall?s("update.localDev"):t.updateSupported?t.node.ok?"":s("update.nodeWarn",{version:t.node.version,required:t.node.required}):s("update.unsupportedInstall"),Xe=u=>{let v=Date.now(),E=async()=>{try{let N=await fetch("/__selfcheck",{cache:"no-store"}),I=await N.text();if(N.ok&&I&&I!==u){location.reload();return}}catch{}if(Date.now()-v>9e4){O.current=!1,i("error"),h(s("update.restartSlow"));return}j.current=window.setTimeout(()=>{E()},2e3)};j.current=window.setTimeout(()=>{E()},3e3)},nn=async()=>{if(B){if(!Ee){r(!1),location.hash="#/settings";return}if(!O.current){O.current=!0,ye(null),c(!1),h("");try{let u=await Kt(),v=await Be(fetch,i);if(!v.restarted){O.current=!1,i("error"),h(s("update.restartFailed",{detail:v.restartError??"unknown"}));return}Xe(u)}catch(u){O.current=!1,i("error"),h(u instanceof Error?u.message:String(u))}}}},Me=async(u=!1)=>{if(k)return!z;V(!0),se(!1);try{let v=await fetch(`/api/update/versions${u?"?refresh=1":""}`,{cache:"no-store"}),E=await v.json().catch(()=>null);if(!E||!Array.isArray(E.versions))throw new Error("Invalid rollback versions response");let N=E.versions.filter(U=>{if(!U||typeof U!="object")return!1;let J=U;return typeof J.version=="string"&&(typeof J.publishedAt=="string"||J.publishedAt===null)}).slice(0,3);qe(N),ve(U=>N.some(J=>J.version===U)?U:null),L(!0);let I=v.ok&&E.ok===!0;return se(!I),I}catch{return L(!0),se(!0),!1}finally{V(!1)}},on=async()=>{if(!(!w||!Je||k||O.current)){O.current=!0,ye(w),c(!1),h("");try{let u=await Kt();await Be(fetch,i,w),Xe(u)}catch(u){O.current=!1,i("error"),h(u instanceof Error?u.message:String(u))}}},rn=async()=>{if(!(l||S)){m(!0),c(!1);try{let u=await e.onRefresh();M&&await Me(!0),c(!u)}finally{m(!1)}}},Le=a==="updating"?H?s("update.rollbackInstalling",{version:H}):s("update.updating",{command:Qt}):a==="restarting"?H?s("update.rollbackRestarting",{version:H}):s("update.restarting"):a==="error"?H?s("update.rollbackFailed",{detail:f}):s("update.updateFailed",{detail:f}):d?s("update.topbarRefreshFailed"):B?Ee?s("update.versionUpgradePrompt",{version:en}):tn:t.latest?s("update.upToDate"):s("update.checkUnavailable"),an=Ee?a==="error"?s("update.topbarRetry"):a==="idle"?s("update.topbarAction"):s("update.topbarWorking"):s("update.topbarReview"),ie=a==="error"||d&&ke?{className:"is-error",symbol:"!"}:B?{className:"has-update",symbol:"\u2191"}:ke?{className:"is-unknown",symbol:"?"}:{className:"is-current",symbol:"\u2713"};return(0,n.jsxs)("div",{ref:je,className:`dashboard-version-control${o?" is-open":""}`,children:[(0,n.jsxs)("button",{ref:we,type:"button",className:`dashboard-version-chip${B?" has-update":""}${ke?" is-unknown":""}${a==="error"?" is-error":""}`,"aria-haspopup":"dialog","aria-expanded":o,"aria-label":`${Re}. ${Le}`,title:Le,onClick:()=>r(u=>!u),children:[(0,n.jsx)("span",{children:Re}),S?(0,n.jsx)("span",{className:"dashboard-update-spinner","aria-hidden":"true"}):(0,n.jsx)("span",{className:`dashboard-version-state ${ie.className}`,"aria-hidden":"true",children:ie.symbol})]}),o&&G&&typeof document<"u"?(0,zt.createPortal)((0,n.jsxs)("section",{ref:xe,className:"dashboard-version-popover",role:"dialog","aria-modal":"false","aria-labelledby":"dashboard-version-title",style:{top:G.top,left:G.left},children:[(0,n.jsxs)("header",{className:"dashboard-version-popover-head",children:[(0,n.jsx)("strong",{id:"dashboard-version-title",children:s("update.current")}),(0,n.jsxs)("div",{className:"dashboard-version-head-actions",children:[(0,n.jsx)("button",{type:"button",className:`dashboard-version-refresh${l?" is-refreshing":""}`,"aria-label":s(l?"update.topbarRefreshing":"update.topbarRefresh"),title:s(l?"update.topbarRefreshing":"update.topbarRefresh"),disabled:l||k||S,onClick:()=>{rn()},children:(0,n.jsxs)("svg",{viewBox:"0 0 16 16","aria-hidden":"true",children:[(0,n.jsx)("path",{d:"M13.2 5.7A5.8 5.8 0 1 0 13 10.8"}),(0,n.jsx)("path",{d:"M13.2 2.8v2.9h-2.9"})]})}),(0,n.jsx)("button",{type:"button",className:"dashboard-version-close","aria-label":s("update.topbarClose"),onClick:()=>r(!1),children:"\xD7"})]})]}),(0,n.jsxs)("div",{className:"dashboard-version-popover-body",children:[(0,n.jsxs)("div",{className:"dashboard-version-current",children:[(0,n.jsx)("strong",{children:Re}),(0,n.jsx)("span",{className:ie.className,"aria-hidden":"true",children:S?(0,n.jsx)("span",{className:"dashboard-update-spinner"}):ie.symbol})]}),(0,n.jsx)("p",{className:`dashboard-version-message${a==="error"||d?" is-error":""}`,role:a==="error"||d?"alert":"status","aria-live":"polite",children:Le}),(0,n.jsxs)("a",{className:"dashboard-version-release-link",href:"https://github.com/deepcoldy/botmux/releases",target:"_blank",rel:"noopener noreferrer",children:[(0,n.jsx)("svg",{viewBox:"0 0 16 16","aria-hidden":"true",children:(0,n.jsx)("path",{d:"M8 1.5a6.5 6.5 0 0 0-2.1 12.65c.33.06.45-.14.45-.32v-1.26c-1.84.4-2.23-.78-2.23-.78-.3-.76-.73-.96-.73-.96-.6-.41.05-.4.05-.4.66.05 1 .68 1 .68.59 1 1.54.72 1.92.55.06-.42.23-.72.42-.88-1.47-.17-3.02-.74-3.02-3.28 0-.72.26-1.32.68-1.78-.07-.17-.3-.84.07-1.75 0 0 .56-.18 1.79.68A6.2 6.2 0 0 1 8 4.63a6.2 6.2 0 0 1 1.71.22c1.23-.86 1.79-.68 1.79-.68.37.91.14 1.58.07 1.75.42.46.68 1.06.68 1.78 0 2.55-1.55 3.11-3.03 3.28.24.21.45.61.45 1.23v1.62c0 .18.12.38.46.32A6.5 6.5 0 0 0 8 1.5Z"})}),(0,n.jsx)("span",{children:s("update.changelogViewOnGitHub")})]}),(B||M)&&t.installs.multiple?(0,n.jsxs)("details",{className:"dashboard-version-installs",children:[(0,n.jsx)("summary",{children:s("update.multiInstallWarn")}),(0,n.jsx)("ul",{children:t.installs.entries.map(u=>(0,n.jsx)("li",{children:u.binPath},u.binPath))})]}):null,Je?(0,n.jsxs)("details",{className:"dashboard-version-rollback",open:M,"aria-busy":k,onToggle:u=>{let v=u.currentTarget.open;y(v),v&&!x&&!k&&Me()},children:[(0,n.jsxs)("summary",{children:[(0,n.jsxs)("svg",{viewBox:"0 0 16 16","aria-hidden":"true",children:[(0,n.jsx)("circle",{cx:"8",cy:"8",r:"5.5"}),(0,n.jsx)("path",{d:"M8 4.8V8l2.2 1.3"})]}),(0,n.jsx)("span",{children:s("update.rollbackTitle")}),(0,n.jsx)("span",{className:"dashboard-version-rollback-chevron","aria-hidden":"true",children:"\u2304"})]}),(0,n.jsxs)("div",{className:"dashboard-version-rollback-body",children:[k&&q.length===0?(0,n.jsxs)("p",{className:"dashboard-version-rollback-status",role:"status","aria-live":"polite",children:[(0,n.jsx)("span",{className:"dashboard-update-spinner","aria-hidden":"true"}),s("update.rollbackLoading")]}):null,z?(0,n.jsxs)("p",{className:"dashboard-version-rollback-load-error",role:"alert",children:[(0,n.jsx)("span",{children:s("update.rollbackLoadFailed")}),(0,n.jsx)("button",{type:"button",disabled:k,onClick:()=>{Me(!0)},children:s("update.rollbackRetry")})]}):null,x&&!k&&!z&&q.length===0?(0,n.jsx)("p",{className:"dashboard-version-rollback-status",children:s("update.rollbackEmpty")}):null,q.length>0?(0,n.jsxs)("fieldset",{disabled:S||k||z,children:[(0,n.jsx)("legend",{children:s("update.rollbackHint")}),(0,n.jsx)("div",{className:"dashboard-version-rollback-options",children:q.map(u=>(0,n.jsxs)("label",{className:w===u.version?"is-selected":"",children:[(0,n.jsx)("input",{type:"radio",name:"dashboard-rollback-version",value:u.version,checked:w===u.version,onChange:()=>ve(u.version)}),(0,n.jsxs)("strong",{children:["v",u.version]}),u.publishedAt?(0,n.jsx)("time",{dateTime:u.publishedAt,children:jn(u.publishedAt)}):null]},u.version))})]}):null,w?(0,n.jsxs)("p",{id:"dashboard-version-rollback-risk",className:"dashboard-version-rollback-risk",role:"note",children:[(0,n.jsxs)("svg",{viewBox:"0 0 16 16","aria-hidden":"true",children:[(0,n.jsx)("path",{d:"M7.1 2.3 1.8 12a1 1 0 0 0 .9 1.5h10.6a1 1 0 0 0 .9-1.5L8.9 2.3a1 1 0 0 0-1.8 0Z"}),(0,n.jsx)("path",{d:"M8 5.5v3.6M8 11.6h.01"})]}),(0,n.jsxs)("span",{children:[s("update.rollbackRisk",{version:w})," ",(0,n.jsx)("a",{href:`https://github.com/deepcoldy/botmux/releases/tag/v${encodeURIComponent(w)}`,target:"_blank",rel:"noopener noreferrer","aria-label":s("update.rollbackReleaseNotesA11y",{version:w}),children:s("update.rollbackReleaseNotes",{version:w})})]})]}):null,q.length>0?(0,n.jsxs)("button",{type:"button",className:"dashboard-version-rollback-action",disabled:!w||k||z||S,"aria-describedby":w?"dashboard-version-rollback-risk":void 0,onClick:()=>{on()},children:[S&&H?(0,n.jsx)("span",{className:"dashboard-update-spinner","aria-hidden":"true"}):null,w?a==="error"&&H===w?s("update.rollbackRetry"):s("update.rollbackAction",{version:w}):s("update.rollbackSelect")]}):null]})]}):null]}),B&&!M&&!H?(0,n.jsxs)("footer",{className:"dashboard-version-popover-actions",children:[(0,n.jsx)("button",{type:"button",className:"dashboard-version-secondary",onClick:()=>r(!1),children:S?s("update.topbarClose"):s("update.topbarLater")}),(0,n.jsxs)("button",{type:"button",className:"dashboard-version-primary",disabled:S,onClick:()=>{nn()},children:[S?(0,n.jsx)("span",{className:"dashboard-update-spinner","aria-hidden":"true"}):null,an]})]}):null]}),document.body):null]})}function Jn(){let e=Kn(),[t,o]=(0,p.useState)(!1),[r,a]=(0,p.useState)(!1),[i,l]=(0,p.useState)(!1),m=(0,p.useRef)(e.attention),d=(0,p.useRef)(null),c=()=>{d.current!==null&&(window.clearTimeout(d.current),d.current=null)};(0,p.useEffect)(()=>{let h=()=>o(!0);return window.addEventListener(ue,h),()=>window.removeEventListener(ue,h)},[]),(0,p.useEffect)(()=>{let h=()=>a(!0);return window.addEventListener(Ke,h),ae&&a(!0),()=>window.removeEventListener(Ke,h)},[]),(0,p.useEffect)(()=>()=>c(),[]),(0,p.useEffect)(()=>{let h=m.current;if(m.current=e.attention,e.attention===0){c(),l(!1);return}h!==0||document.body.classList.contains("theme-menu-open")||(l(!0),c(),d.current=window.setTimeout(()=>{d.current=null,l(!1)},4e3))},[e.attention]);let f=()=>{ae=!1,a(!1)};return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsxs)("div",{className:"aurora","aria-hidden":"true",children:[(0,n.jsx)("i",{className:"a1"}),(0,n.jsx)("i",{className:"a2"}),(0,n.jsx)("i",{className:"a3"})]}),(0,n.jsxs)("div",{className:"app-shell",children:[(0,n.jsxs)("header",{className:"topbar",children:[(0,n.jsx)("div",{className:"topbar-left",children:(0,n.jsxs)("div",{className:"topbar-brand-block",children:[(0,n.jsxs)("a",{className:"brand",href:"#/",children:[(0,n.jsx)("span",{className:"brand-mark","aria-hidden":"true",children:(0,n.jsx)("img",{className:"brand-logo-img",src:"/assets/brand-logo.png",alt:"",decoding:"sync",loading:"eager",fetchPriority:"high"})}),(0,n.jsx)("strong",{className:"brand-wordmark",children:"Botmux"}),(0,n.jsx)("span",{className:"brand-product",children:"Dashboard"})]}),(0,n.jsx)(Gn,{status:Gt,onRefresh:()=>ze(!0)})]})}),(0,n.jsxs)("div",{className:"topbar-actions",children:[(0,n.jsx)(zn,{summary:e,autoOpen:i}),(0,n.jsxs)("div",{className:"topbar-tool-group",children:[(0,n.jsx)("button",{type:"button",className:"topbar-locale-toggle","aria-label":g.locale==="zh"?"Switch to English":"\u5207\u6362\u5230\u4E2D\u6587",title:g.locale==="zh"?"Switch to English":"\u5207\u6362\u5230\u4E2D\u6587",onClick:()=>Xn(g.locale==="zh"?"en":"zh"),children:g.locale==="zh"?"CN":"EN"}),(0,n.jsx)(Wn,{}),(0,n.jsxs)("a",{className:"topbar-docs-link",href:"https://bytedance.aiforce.cloud/app/app_4k9smq6rdxher/",target:"_blank",rel:"noopener noreferrer",title:s("nav.docs"),"aria-label":s("nav.docs"),children:[te((0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("rect",{x:"2.2",y:"2.2",width:"11.6",height:"11.6",rx:"2"}),(0,n.jsx)("path",{d:"M4.8 5.2h6.4M4.8 8h6.4M4.8 10.8h4"})]})),(0,n.jsx)("span",{children:s("nav.docs")})]})]}),(0,n.jsxs)("span",{className:"topbar-owner",title:K?.name,"aria-label":K?.name??"Owner",children:[(0,n.jsx)("span",{className:"topbar-owner-placeholder","aria-hidden":"true",children:te((0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("circle",{cx:"8",cy:"6",r:"2.4"}),(0,n.jsx)("path",{d:"M3.7 13c.7-2.5 2.2-3.7 4.3-3.7s3.6 1.2 4.3 3.7"})]}))}),K?.avatarUrl?(0,n.jsx)("img",{className:"topbar-owner-img",src:K.avatarUrl,alt:"",decoding:"async",referrerPolicy:"no-referrer",onError:h=>{h.currentTarget.remove()}}):null]})]})]}),(0,n.jsxs)("div",{className:"chrome-body",children:[(0,n.jsxs)("aside",{className:"sidebar",children:[A?(0,n.jsxs)("div",{className:"sidebar-create-actions",children:[(0,n.jsxs)("button",{type:"button",className:"sidebar-create-btn",onClick:()=>Te(),children:[te((0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("path",{d:"M2 3.5h12v7H6l-3 3v-3H2z"}),(0,n.jsx)("path",{d:"M8 4.9v4.2M5.9 7h4.2"})]})),(0,n.jsx)("span",{className:"sidebar-nav-label",children:s("nav.createSession")})]}),(0,n.jsxs)("button",{type:"button",className:"sidebar-create-btn",onClick:()=>{it()},children:[te((0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("rect",{x:"2.5",y:"6",width:"11",height:"7.5",rx:"2"}),(0,n.jsx)("circle",{cx:"5.8",cy:"9.75",r:"1"}),(0,n.jsx)("circle",{cx:"10.2",cy:"9.75",r:"1"}),(0,n.jsx)("path",{d:"M8 6V3.8M6.3 1.9h3.4"})]})),(0,n.jsx)("span",{className:"sidebar-nav-label",children:s("nav.createBot")})]})]}):null,(0,n.jsx)("nav",{className:"sidebar-nav","aria-label":"Dashboard",children:In().filter(h=>A||!h.manage).map(h=>(0,n.jsxs)("a",{href:h.href,"data-route":h.id,className:[Un(h),h.plugin?"sidebar-plugin-item":""].filter(Boolean).join(" ")||void 0,title:h.plugin?Ft(h):void 0,children:[te(h.icon),(0,n.jsx)("span",{className:"sidebar-nav-label",children:Ft(h)}),h.id==="settings"&&oe?(0,n.jsx)(st,{className:"nav-update-tip",label:Wt(),trigger:(0,n.jsx)("span",{className:"nav-update-dot","aria-hidden":"true"}),preventClick:!1,focusable:!1,children:Wt()}):null]},h.id))})]}),(0,n.jsxs)("div",{className:"workspace",children:[(0,n.jsx)("dialog",{id:"create-session-modal",className:"create-session-modal"}),(0,n.jsx)(lt,{open:t,onClose:()=>o(!1)}),(0,n.jsx)("main",{id:"root",ref:_n})]})]})]}),(0,n.jsx)(qn,{open:r,loginUrl:Ie(Ve,location.hash),onClose:f})]})}function R(){Jt?.render((0,n.jsx)(Jn,{}))}function Xn(e){g.setLocale(e),to(e)}var ae=!1;function Yn(e){let t=!!Ie(e,location.hash),o=t&&Ve!==e;t&&(Ve=e),ae&&o&&R(),!ae&&(ae=!0,window.dispatchEvent(new Event(Ke)))}var Fe;function Zn(){let e=document.getElementById("readonly-toast");e||(e=document.createElement("div"),e.id="readonly-toast",e.style.cssText="position:fixed;left:50%;bottom:28px;transform:translateX(-50%);z-index:9999;background:var(--fg,#1f2329);color:var(--bg,#fff);padding:10px 18px;border-radius:var(--radius-lg);font-size:13px;box-shadow:0 8px 24px rgba(0,0,0,.25)",document.body.appendChild(e)),e.textContent="\u5F53\u524D\u662F\u53EA\u8BFB\u8BBF\u95EE\uFF0C\u6B64\u64CD\u4F5C\u9700\u8981\u6388\u6743\u94FE\u63A5\uFF08\u8FD0\u884C botmux dashboard \u83B7\u53D6\uFF09",e.style.display="block",Fe&&window.clearTimeout(Fe),Fe=window.setTimeout(()=>{e.style.display="none"},4e3)}var Qn=window.fetch.bind(window);window.fetch=async function(...t){let o=await Qn(...t);if(o.status===401){let r=o.headers.get("x-botmux-login-url")??void 0,a=(t[1]?.method??"GET").toUpperCase();r||(a==="GET"||a==="HEAD")&&!We?Yn(r):Zn()}return o};async function eo(){try{let e=await fetch("/api/settings");if(e.ok){let t=await e.json();A=!!t.authed,g.authed=A,We=!!(t.settings&&t.settings.publicReadOnly),g.publicReadOnly=We;let o=Yt()??de(t.lang);o&&g.setLocale(o)}}catch{}}async function Vt(){try{let e=await fetch("/api/plugins/dashboard");if(!e.ok)return;let t=await e.json();ne=(Array.isArray(t?.plugins)?t.plugins:[]).filter(r=>r.pinned===!0&&typeof r.route=="string").map(r=>({id:`plugin:${r.pluginId}:${r.id}`,href:r.route,label:r.displayName||r.pluginId,manage:!0,plugin:!0,icon:(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("path",{d:"M5.2 2.2h5.6v3.1l1.7 1.7-1.4 1.4-1-1v6.4H5.9V7.4l-1 1L3.5 7l1.7-1.7z"}),(0,n.jsx)("path",{d:"M8 13.8v1"})]})})),R()}catch{}}async function to(e){if(A)try{await fetch("/api/settings",{method:"PUT",headers:{"content-type":"application/json"},body:JSON.stringify({lang:e})})}catch{}}async function ze(e=!1){if(!A)return!1;try{let t=await fetch(`/api/update/status${e?"?refresh=1":""}`,{cache:"no-store"});if(!t.ok)return!1;let o=await t.json();Gt=o;let r=Array.isArray(o.cliUpdates)?o.cliUpdates.find(a=>a?.updateAvailable===!0&&a?.latest):null;return o.behind===!0&&o.latest?(oe=!0,be="botmux",re=String(o.latest)):r?(oe=!0,be="runtime",re=String(r.latest)):(oe=!1,be=null,re=null),R(),o.versionLookupOk!==!1}catch{return!1}}function no(e){e.innerHTML='<section class="auth-required" style="max-width:520px;margin:64px auto;text-align:center;background:var(--surface);color:var(--fg);border:1px solid var(--border);border-radius:var(--radius-lg);padding:40px 36px;box-shadow:0 8px 28px rgba(0,0,0,.12)"><h2 style="margin:0 0 12px;font-size:20px;color:var(--fg)">\u6B64\u9875\u9700\u8981\u6388\u6743\u94FE\u63A5</h2><p style="margin:0 0 24px;line-height:1.7;color:var(--muted);font-size:14px">\u4F60\u5F53\u524D\u662F\u53EA\u8BFB\u8BBF\u95EE\uFF0C\u7BA1\u7406\u9875\uFF08\u7FA4\u89D2\u8272 / Profiles / Bot \u914D\u7F6E / \u56E2\u961F / Webhook\uFF09\u9700\u8981\u6388\u6743\u94FE\u63A5\u3002\u8FD0\u884C <code>botmux dashboard</code> \u83B7\u53D6\u6700\u65B0\u94FE\u63A5\u540E\u5373\u53EF\u7BA1\u7406\u3002</p><a href="#/" style="display:inline-block;padding:8px 22px;background:var(--accent);color:var(--on-accent);border-radius:var(--radius-lg);text-decoration:none;font-size:14px">\u8FD4\u56DE\u603B\u89C8</a></section>'}async function _e(){let e=xt(D),t=location.hash||"#/";jt=t,R();let o=ut(t);if(o){window.location.replace(o);return}if(!A&&Dn.some(r=>t.startsWith("#/"+r))){no(Ue()),D.rerenderOnUiChange=!0;return}if(t.startsWith("#/v3")){window.location.replace(`#/workflows${t.slice(4)}`);return}else if(t.startsWith("#/legacy-workflow")){window.location.replace("#/workflows");return}else if(/^#\/workflows(?:\/|-)catalog(?:[/?].*)?$/.test(t)){window.location.replace("#/workflows");return}if(t.startsWith("#/role-profiles")){window.location.replace(`#/roles/profile${t.slice(15)}`);return}try{let r=gt(t);await kt(D,e,Ue(),r?r.load:vt,{rerenderOnUiChange:r?r.rerenderOnUiChange:!1}),e===D.seq&&A&&Fn()}catch(r){if(e!==D.seq||Mt(r,{href:window.location.href,hash:t,getSessionStorage:()=>window.sessionStorage,reload:()=>window.location.reload()}))return;Ue().innerHTML=`<section class="page"><div class="empty">Dashboard route failed: ${Ze(String(r))}</div></section>`,D.pageDispose=null,D.rerenderOnUiChange=!0}}function oo(){try{let e=JSON.parse(window.localStorage.getItem(Xt)??"null");if(e?.avatarUrl)return{avatarUrl:String(e.avatarUrl),name:e.name?String(e.name):void 0}}catch{}return null}function ro(){K=oo(),R(),fetch("/api/owner-profile").then(e=>e.ok?e.json():null).then(e=>{if(!(!e?.ok||!e.avatarUrl)){K={avatarUrl:String(e.avatarUrl),name:e.name?String(e.name):void 0};try{window.localStorage.setItem(Xt,JSON.stringify({avatarUrl:e.avatarUrl,name:e.name??""}))}catch{}R()}}).catch(()=>{})}(async()=>{let e=dt(window.location.href);e&&window.history.replaceState(window.history.state,"",e),g.init(),_t();let t=document.getElementById("app-root");if(!t)throw new Error("missing dashboard app root");Ct(t),Bt(),Jt=(0,qt.createRoot)(t),R(),g.on(()=>{R(),D.rerenderOnUiChange&&_e()}),le.on(()=>{R()}),await eo(),R(),window.addEventListener(ot,()=>{Vt()}),Vt(),ze(),window.setInterval(()=>{document.hidden||ze()},30*6e4),ro();try{await Ye()}catch(o){console.error("botmux dashboard bootstrap failed",o),le.setOnline(!1)}et().then(R),pt().then(R),window.addEventListener("hashchange",()=>{_t()||_e()}),_e()})();export{Yn as showAuthExpiredOverlay,Zn as showReadOnlyToast};
|
|
1
|
+
import{a as pt,b as ht}from"./chunks/chunk-5QJB24I2.js";import{b as Te,d as dt,e as ct,g as ut}from"./chunks/chunk-AGCPF6MT.js";import{a as ot}from"./chunks/chunk-BD3PZGH2.js";import{a as ue,b as it,c as lt}from"./chunks/chunk-CU4SUKK3.js";import{i as at,j as st}from"./chunks/chunk-5CJMHTT4.js";import{D as et,F as tt,I as nt,J as ce,a as le,b as Ye,e as de,t as g,u as s,v as Ze,w as Qe}from"./chunks/chunk-6JTZJRQJ.js";import{a as sn,b as ln,c as dn,d as rt}from"./chunks/chunk-5THX4DI2.js";import{c as X}from"./chunks/chunk-7SZRL6FY.js";var zt=X(ln(),1),qt=X(dn(),1),p=X(sn(),1);var Ne="botmux:close-theme-menu",cn={palette:'<circle cx="13.5" cy="6.5" r=".5" fill="currentColor"/><circle cx="17.5" cy="10.5" r=".5" fill="currentColor"/><circle cx="8.5" cy="7.5" r=".5" fill="currentColor"/><circle cx="6.5" cy="12.5" r=".5" fill="currentColor"/><path d="M12 2a10 10 0 0 0 0 20h1.7a2.3 2.3 0 0 0 1.6-4c-.5-.5-.2-1.3.5-1.3H17a5 5 0 0 0 5-5 9.7 9.7 0 0 0-10-9.7z"/>',monitor:'<rect width="20" height="14" x="2" y="3" rx="2"/><line x1="8" x2="16" y1="21" y2="21"/><line x1="12" x2="12" y1="17" y2="21"/>',sun:'<circle cx="12" cy="12" r="4"/><path d="M12 2v2"/><path d="M12 20v2"/><path d="m4.93 4.93 1.41 1.41"/><path d="m17.66 17.66 1.41 1.41"/><path d="M2 12h2"/><path d="M20 12h2"/><path d="m6.34 17.66-1.41 1.41"/><path d="m19.07 4.93-1.41 1.41"/>',moon:'<path d="M20.985 12.486a9 9 0 1 1-9.473-9.472c.405-.022.617.46.402.803a6 6 0 0 0 8.268 8.268c.344-.215.825-.004.803.401"/>',cpu:'<path d="M12 20v2"/><path d="M12 2v2"/><path d="M17 20v2"/><path d="M17 2v2"/><path d="M2 12h2"/><path d="M2 17h2"/><path d="M2 7h2"/><path d="M20 12h2"/><path d="M20 17h2"/><path d="M20 7h2"/><path d="M7 20v2"/><path d="M7 2v2"/><rect x="4" y="4" width="16" height="16" rx="2"/><rect x="8" y="8" width="8" height="8" rx="1"/>',zap:'<path d="M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z"/>',chevron:'<path d="m6 9 6 6 6-6"/>'},ft=[{labelKey:"theme.base",options:[{value:"system",labelKey:"status.system",icon:"monitor"},{value:"light",labelKey:"status.light",icon:"sun"},{value:"dark",labelKey:"status.dark",icon:"moon"}]},{labelKey:"theme.skins",options:[{value:"cyber",labelKey:"skin.cyber",icon:"cpu"},{value:"fallout",labelKey:"skin.fallout",icon:"zap"}]}],mt=ft.flatMap(e=>e.options),T=!1,Y=null,Z=null,un=70,pn=120;function Se(e){return`<svg class="tm-svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round" aria-hidden="true">${cn[e]??""}</svg>`}function hn(e){return e.replace(/[&<>"]/g,t=>({"&":"&","<":"<",">":">",'"':"""})[t])}function bt(){let e=document.getElementById("theme-menu"),t=document.getElementById("theme-menu-btn"),o=document.getElementById("theme-menu-pop");if(!e||!t||!o||e.dataset.themeMenuInit==="1")return;e.dataset.themeMenuInit="1",o.innerHTML=ft.map(c=>`<div class="tm-group" data-label-key="${c.labelKey}"></div>`+c.options.map(f=>`<button type="button" class="tm-item" role="option" data-value="${f.value}"><span class="tm-ic">${Se(f.icon)}</span><span class="tm-label" data-label-key="${f.labelKey}"></span></button>`).join("")).join("");let r=()=>{if(!T)return;let c=t.getBoundingClientRect(),f=12,h=Math.min(Math.max(o.offsetWidth||216,216),Math.max(0,window.innerWidth-f*2)),M=f+h/2,y=window.innerWidth-f-h/2,x=c.left+c.width/2,L=Math.min(Math.max(x,M),Math.max(M,y)),k=Math.max(180,window.innerHeight-c.bottom-20);o.style.setProperty("--theme-menu-pop-left",`${Math.round(L)}px`),o.style.setProperty("--theme-menu-pop-top",`${Math.round(c.bottom+8)}px`),o.style.setProperty("--theme-menu-pop-max-height",`${Math.round(k)}px`)},a=c=>{Y!=null&&(window.clearTimeout(Y),Y=null),Z!=null&&(window.clearTimeout(Z),Z=null),T=c,t.setAttribute("aria-expanded",String(T)),document.body.classList.toggle("theme-menu-open",T),T?(o.hidden=!1,r(),window.requestAnimationFrame(()=>e.classList.add("open"))):(e.classList.remove("open"),Z=window.setTimeout(()=>{Z=null,T||(o.hidden=!0)},pn))},i=()=>a(!0),l=()=>{Y==null&&(Y=window.setTimeout(()=>a(!1),un))},m=c=>{c.pointerType!=="touch"&&i()},d=c=>{c.pointerType!=="touch"&&l()};e.addEventListener("pointerenter",m),e.addEventListener("pointerleave",d),o.addEventListener("pointerenter",m),o.addEventListener("pointerleave",d),t.addEventListener("click",c=>{c.stopPropagation(),a(!T)}),t.addEventListener("focus",()=>{t.matches(":focus-visible")&&i()}),e.addEventListener("focusout",c=>{let f=c.relatedTarget;(!(f instanceof Node)||!e.contains(f))&&l()}),o.addEventListener("click",c=>{let f=c.target.closest(".tm-item");f&&(g.setTheme(f.dataset.value??"system"),a(!1))}),document.addEventListener("click",c=>{T&&!e.contains(c.target)&&a(!1)}),document.addEventListener("pointermove",c=>{if(!T||c.pointerType==="touch")return;let f=c.target;f instanceof Node&&e.contains(f)||l()}),document.addEventListener("keydown",c=>{c.key==="Escape"&&T&&a(!1)}),window.addEventListener("resize",r),window.addEventListener("scroll",r,!0),window.addEventListener(Ne,()=>{T&&a(!1)}),Pe()}function Pe(){let e=document.getElementById("theme-menu-btn");if(!e)return;let t=mt.find(o=>o.value===g.theme)??mt[0];e.innerHTML=`<span class="tm-ic">${Se("palette")}</span><span class="tm-current">${hn(s(t.labelKey))}</span><span class="tm-chev">${Se("chevron")}</span>`,document.querySelectorAll("#theme-menu-pop [data-label-key]").forEach(o=>{o.textContent=s(o.dataset.labelKey??"")}),document.querySelectorAll("#theme-menu-pop .tm-item").forEach(o=>{o.classList.toggle("active",o.dataset.value===g.theme)})}function b(e,t,o,r,a=!1){return{id:e,routePrefix:t,rerenderOnUiChange:a,load:async()=>(await o())[r]}}var mn=[{id:"plugins",routePrefix:"#/plugins",rerenderOnUiChange:!1,load:async()=>{let e=await import("./chunks/plugin-page-VEGTCEAS.js");return t=>e.renderPluginPage(t)}},b("workflows","#/workflows",()=>import("./chunks/v3-page-AY35LKCX.js"),"renderV3RunsPage"),b("groups","#/groups",()=>import("./chunks/groups-page-5TYF46RS.js"),"renderGroupsPage"),b("settings","#/settings",()=>import("./chunks/settings-page-E7NN4NVQ.js"),"renderSettingsPage"),b("bot-defaults","#/bot-defaults",()=>import("./chunks/bot-defaults-page-NQJFJ45Z.js"),"renderBotDefaultsPage"),b("skills","#/skills",()=>import("./chunks/skills-page-2QAVB2SA.js"),"renderSkillsPage"),b("connectors-logs","#/connectors/logs",()=>import("./chunks/connectors-page-HADHZXXZ.js"),"renderConnectorsLogsPage"),b("webhook-logs","#/webhook-logs",()=>import("./chunks/connectors-page-HADHZXXZ.js"),"renderConnectorsLogsPage"),b("connectors","#/connectors",()=>import("./chunks/connectors-page-HADHZXXZ.js"),"renderConnectorsPage"),b("team-manage","#/team/manage",()=>import("./chunks/team-federation-page-VGWL53AE.js"),"renderTeamManagePage"),b("team","#/team",()=>import("./chunks/team-federation-page-VGWL53AE.js"),"renderTeamFederationPage"),b("roles-profile","#/roles/profile",()=>import("./chunks/roles-page-ZBZGHIIF.js"),"renderRoleProfilesPage"),b("roles","#/roles",()=>import("./chunks/roles-page-ZBZGHIIF.js"),"renderRolesPage"),b("schedules","#/schedules",()=>import("./chunks/schedules-page-NQVQC3QY.js"),"renderSchedulesPage"),b("whiteboards","#/whiteboards",()=>import("./chunks/whiteboards-page-BNWUU4KG.js"),"renderWhiteboardsPage"),b("monitoring","#/monitoring",()=>import("./chunks/monitoring-page-LBU7TTTW.js"),"renderMonitoringPage"),b("sessions","#/sessions",()=>import("./chunks/sessions-page-DXBCDWCS.js"),"renderSessionsPage"),b("monitor-room","#/monitor-room",()=>import("./chunks/monitor-room-HRGR2ENP.js"),"renderMonitorRoomPage",!0),b("office","#/office",()=>import("./chunks/office-page-DF6RRBMN.js"),"renderOfficePage"),b("insights","#/insights",()=>import("./chunks/insights-page-EVGGJI5L.js"),"renderInsightsPage")];function gt(e){return mn.find(t=>t.exact?e===t.routePrefix:e.startsWith(t.routePrefix))}async function vt(){let e=await import("./chunks/overview-page-ZB6QH2EX.js");return t=>e.renderOverviewPage(t)}function wt(){return{seq:0,pageDispose:null,rerenderOnUiChange:!0}}function xt(e){let t=++e.seq;return e.pageDispose&&(e.pageDispose(),e.pageDispose=null),t}function yt(e,t){return t===e.seq}async function kt(e,t,o,r,a={}){let i=await r();if(!yt(e,t))return!1;let l=i(o);return yt(e,t)?(e.pageDispose=typeof l=="function"?l:null,e.rerenderOnUiChange=a.rerenderOnUiChange??!0,!0):(typeof l=="function"&&l(),!1)}var fn="botmux.dashboard.stale-chunk-reload.v1:",bn=/Failed to fetch dynamically imported module|Importing a module script failed|error loading dynamically imported module|dynamically imported module/i,gn=/\b(?:https?:\/\/|\/assets\/)\S+?\.js\b/;function Et(e){return e instanceof Error?`${e.name}: ${e.message}`:String(e)}function Rt(e){return bn.test(Et(e))}function vn(e,t){let a=Et(e).match(gn)?.[0]||`${t.href}|${t.hash}`;return`${fn}${a.slice(-240)}`}function yn(e,t){if(!Rt(e))return!1;let o=vn(e,t);try{if(t.sessionStorage.getItem(o)==="1")return!1;t.sessionStorage.setItem(o,"1")}catch{return!1}return t.reload(),!0}function Mt(e,t){if(!Rt(e))return!1;let o;try{o=t.getSessionStorage()}catch{return!1}return yn(e,{...t,sessionStorage:o})}var wn=new Set(["auto","scroll","overlay"]),pe=28,P=3,$=6,Lt=!1,Ot=null,Tt=new WeakMap,C=new Map,St=null,Nt=null,Oe=0,Ce=0,Q=null;function xn(e){return e.closest("dialog[open]")??document.body}function kn(e){let t=Tt.get(e);if(t?.isConnected)return t;let o=document.createElement("div");return o.className="floating-scrollbar-layer",o.setAttribute("aria-hidden","true"),e.appendChild(o),Tt.set(e,o),o}function En(e){return wn.has(e)}function He(e,t){let o=getComputedStyle(e),r=t==="y"?o.overflowY:o.overflowX;return En(r)?t==="y"?e.scrollHeight-e.clientHeight>1:e.scrollWidth-e.clientWidth>1:!1}function Rn(e){if(!e.isConnected||e.closest("[hidden]"))return!1;let t=e.getBoundingClientRect();return t.width>0&&t.height>0&&t.bottom>0&&t.right>0&&t.top<window.innerHeight&&t.left<window.innerWidth}function Mn(e){return[e,...Array.from(e.querySelectorAll("*"))].filter(o=>Rn(o)&&(He(o,"x")||He(o,"y")))}function he(e){e.hideTimer!==void 0&&window.clearTimeout(e.hideTimer),e.track.remove()}function Ln(e,t){let o=C.get(e);o||(o={},C.set(e,o));let r=o[t],a=xn(e),i=kn(a);if(r?.track.parentElement===i)return r;r&&he(r);let l=document.createElement("div"),m=document.createElement("div");l.className=`floating-scrollbar floating-scrollbar-${t}`,m.className="floating-scrollbar-thumb",l.appendChild(m),i.appendChild(l);let d={target:e,axis:t,track:l,thumb:m,hideTimer:void 0};return o[t]=d,d}function De(e,t=!1){e.track.classList.add("is-visible"),e.hideTimer!==void 0&&window.clearTimeout(e.hideTimer),e.hideTimer=t?void 0:window.setTimeout(()=>{e.track.classList.remove("is-visible","is-active"),e.hideTimer=void 0},900)}function Tn(e){let{target:t,axis:o,track:r,thumb:a}=e,i=t.getBoundingClientRect();if(o==="y"){let M=Math.max(0,i.top+P),y=Math.min(window.innerHeight,i.bottom-P),x=Math.max(0,y-M);if(x<pe||t.scrollHeight<=t.clientHeight){r.hidden=!0;return}let L=Math.max(pe,Math.round(x*t.clientHeight/t.scrollHeight)),k=Math.max(1,t.scrollHeight-t.clientHeight),V=Math.round((x-L)*t.scrollTop/k);r.hidden=!1,r.style.left=`${Math.min(window.innerWidth-$-P,Math.max(P,i.right-$-P))}px`,r.style.top=`${M}px`,r.style.width=`${$}px`,r.style.height=`${x}px`,a.style.width="100%",a.style.height=`${L}px`,a.style.transform=`translate3d(0, ${V}px, 0)`;return}let l=Math.max(0,i.left+P),m=Math.min(window.innerWidth,i.right-P),d=Math.max(0,m-l);if(d<pe||t.scrollWidth<=t.clientWidth){r.hidden=!0;return}let c=Math.max(pe,Math.round(d*t.clientWidth/t.scrollWidth)),f=Math.max(1,t.scrollWidth-t.clientWidth),h=Math.round((d-c)*t.scrollLeft/f);r.hidden=!1,r.style.left=`${l}px`,r.style.top=`${Math.min(window.innerHeight-$-P,Math.max(P,i.bottom-$-P))}px`,r.style.width=`${d}px`,r.style.height=`${$}px`,a.style.width=`${c}px`,a.style.height="100%",a.style.transform=`translate3d(${h}px, 0, 0)`}function F(){Oe||(Oe=window.requestAnimationFrame(()=>{Oe=0,Nn()}))}function Sn(){Ce||(Ce=window.setTimeout(()=>{Ce=0,F()},120))}function Nn(){let e=Ot;if(!e)return;let t=new Set(Mn(e));for(let[o,r]of C)t.has(o)||(r.x&&he(r.x),r.y&&he(r.y),C.delete(o));for(let o of t){let r=o===Q;for(let a of["x","y"]){let i=C.get(o);if(!He(o,a)){let m=i?.[a];m&&(he(m),delete i?.[a]);continue}let l=Ln(o,a);Tn(l),r&&De(l,!0)}}}function Pn(e){if(!(e instanceof HTMLElement))return;let t=C.get(e);if(t)for(let o of Object.values(t))o&&(o.track.classList.add("is-active"),De(o))}function On(e){for(let t=e;t;t=t.parentElement)if(t instanceof HTMLElement&&C.has(t))return t;return null}function Pt(e){if(Q===e)return;let t=Q?C.get(Q):void 0;if(Q=e,t)for(let r of Object.values(t))r?.track.classList.remove("is-visible");let o=e?C.get(e):void 0;if(o)for(let r of Object.values(o))r&&De(r,!0)}function Ct(e){Lt||(Lt=!0,Ot=e,document.documentElement.classList.add("floating-scrollbars-on"),St=typeof ResizeObserver>"u"?null:new ResizeObserver(F),St?.observe(e),Nt=new MutationObserver(t=>{for(let o of t){let r=o.target;if(!(r instanceof Element&&r.closest(".floating-scrollbar-layer"))){Sn();return}}}),Nt.observe(e,{attributes:!0,attributeFilter:["class","style","hidden","open"],childList:!0,subtree:!0}),document.addEventListener("scroll",t=>{Pn(t.target),F()},!0),window.addEventListener("resize",F),window.addEventListener("hashchange",F),document.addEventListener("pointermove",t=>{Pt(On(document.elementFromPoint(t.clientX,t.clientY)))}),document.addEventListener("pointerleave",()=>Pt(null)),F())}var Ht=!1,_=null,me=null,W=null;function At(){if(_)return _;let e=document.createElement("div");return e.className="icon-tip",e.setAttribute("role","tooltip"),e.style.display="none",document.body.appendChild(e),_=e,e}function Cn(e){let t=At(),o=at(e,document.body);return t.parentNode!==o&&o.appendChild(t),t}function Hn(e){let t=At(),o=e.getBoundingClientRect(),r=t.offsetWidth,a=t.offsetHeight,i=8,l=o.top<a+i+4,m=o.left+o.width/2-r/2;m=Math.min(Math.max(m,6),window.innerWidth-r-6);let d=l?o.bottom+i:o.top-a-i;t.style.left=`${Math.round(m)}px`,t.style.top=`${Math.round(d)}px`,t.dataset.placement=l?"bottom":"top"}function ee(){W&&(clearTimeout(W),W=null),me=null,_&&(_.style.display="none",_.classList.remove("show"))}function Dt(e){let t=e.getAttribute("data-tip");if(!t)return;me=e;let o=Cn(e);o.textContent=t,o.style.display="block",o.classList.remove("show"),Hn(e),requestAnimationFrame(()=>{me===e&&o.classList.add("show")})}function Ae(e){return e instanceof Element?e.closest("[data-tip]"):null}function Bt(){Ht||typeof document>"u"||(Ht=!0,document.addEventListener("pointerover",e=>{let t=Ae(e.target);!t||t===me||(W&&clearTimeout(W),W=setTimeout(()=>Dt(t),120))}),document.addEventListener("pointerout",e=>{let t=Ae(e.target);if(!t)return;let o=e.relatedTarget instanceof Element?e.relatedTarget:null;o&&(o===t||t.contains(o))||ee()}),document.addEventListener("focusin",e=>{let t=Ae(e.target);t&&Dt(t)}),document.addEventListener("focusout",ee),document.addEventListener("click",ee,!0),window.addEventListener("scroll",ee,!0),window.addEventListener("resize",ee))}async function It(e){let t=await e.json().catch(()=>null);return t&&typeof t=="object"?t:{}}function Ut(e,t){let o=t.detail??t.error;return new Error(typeof o=="string"?o:`HTTP ${e.status}`)}async function Be(e,t=()=>{},o){t("updating");let r=await e(o?"/api/update/rollback":"/api/update/run",o?{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({version:o})}:{method:"POST"}),a=await It(r);if(!r.ok||a.ok===!1)throw Ut(r,a);if(a.ok!==!0||typeof a.oldVersion!="string"||typeof a.newVersion!="string"||typeof a.changed!="boolean")throw new Error("Invalid update response");if(o&&(a.newVersion!==o||a.changed!==!0))throw new Error("Invalid rollback response");let i={oldVersion:a.oldVersion,newVersion:a.newVersion,changed:a.changed,restarted:!1};if(t("restarting"),o)return{...i,restarted:!0};let l=await e("/api/update/restart",{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({update:{oldVersion:i.oldVersion,newVersion:i.newVersion}})}),m=await It(l);if(!l.ok||m.ok===!1)return{...i,restarted:!1,restartError:Ut(l,m).message};if(m.ok!==!0)throw new Error("Invalid restart response");return m.alreadyScheduled===!0?{...i,restarted:!0,alreadyScheduled:!0}:{...i,restarted:!0}}function Ie(e,t){if(e)try{let o=new URL(e);if(!["http:","https:"].includes(o.protocol)||o.username||o.password)return;let r=t.startsWith("#/")&&t.length<=4096&&!/[\u0000-\u001f\u007f]/.test(t)?t:"#/";return o.searchParams.set("next",`/${r}`),o.toString()}catch{return}}var n=X(rt(),1),Dn=["roles","role-profiles","bot-defaults","skills","plugins","team","connectors","insights","whiteboards"],$t=[{id:"overview",href:"#/",labelKey:"nav.overview",icon:(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("rect",{x:"1.5",y:"1.5",width:"5.4",height:"5.4",rx:"1.5"}),(0,n.jsx)("rect",{x:"9.1",y:"1.5",width:"5.4",height:"5.4",rx:"1.5"}),(0,n.jsx)("rect",{x:"1.5",y:"9.1",width:"5.4",height:"5.4",rx:"1.5"}),(0,n.jsx)("rect",{x:"9.1",y:"9.1",width:"5.4",height:"5.4",rx:"1.5"})]})},{id:"sessions",href:"#/sessions",labelKey:"nav.sessions",icon:(0,n.jsx)("path",{d:"M2 3.5h12v7H6l-3 3v-3H2z"})},{id:"groups",href:"#/groups",labelKey:"nav.groups",icon:(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("circle",{cx:"5.6",cy:"5.8",r:"2.4"}),(0,n.jsx)("circle",{cx:"11",cy:"6.8",r:"1.9"}),(0,n.jsx)("path",{d:"M1.8 13.2c.5-2.4 2-3.6 3.8-3.6s3.3 1.2 3.8 3.6M9.8 12.6c.4-1.7 1.5-2.6 2.8-2.6 1 0 1.9.5 2.4 1.6"})]})},{id:"roles",href:"#/roles",labelKey:"nav.roles",manage:!0,icon:(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("path",{d:"M8 1.8l5.2 2v3.4c0 3.4-2.2 5.9-5.2 7-3-1.1-5.2-3.6-5.2-7V3.8z"}),(0,n.jsx)("path",{d:"M5.8 8l1.6 1.6 2.8-3"})]})},{id:"monitoring",href:"#/monitoring",labelKey:"nav.monitoring",icon:(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("path",{d:"M2 9.2h2.3l1.3-4.8 2.5 8.4 1.8-5.1h4.1"}),(0,n.jsx)("path",{d:"M2 2.5h12v11H2z"})]})},{id:"insights",href:"#/insights",labelKey:"nav.insights",manage:!0,icon:(0,n.jsx)(n.Fragment,{children:(0,n.jsx)("path",{d:"M2 2v12h12M5 11V7M8.5 11V4.5M12 11V8.5"})})},{id:"workflows",href:"#/workflows",labelKey:"nav.workflows",icon:(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("circle",{cx:"3.4",cy:"3.6",r:"1.9"}),(0,n.jsx)("circle",{cx:"3.4",cy:"12.4",r:"1.9"}),(0,n.jsx)("circle",{cx:"12.6",cy:"8",r:"1.9"}),(0,n.jsx)("path",{d:"M5.2 4.4l5.6 2.8M5.2 11.6l5.6-2.8"})]})},{id:"schedules",href:"#/schedules",labelKey:"nav.schedules",icon:(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("circle",{cx:"8",cy:"8",r:"6.2"}),(0,n.jsx)("path",{d:"M8 4.5V8l2.4 1.6"})]})},{id:"whiteboards",href:"#/whiteboards",labelKey:"nav.whiteboards",manage:!0,icon:(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("rect",{x:"2.2",y:"2.2",width:"11.6",height:"11.6",rx:"2"}),(0,n.jsx)("path",{d:"M4.8 5.2h6.4M4.8 8h6.4M4.8 10.8h4"})]})},{id:"office",href:"#/office",labelKey:"nav.office",icon:(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("rect",{x:"3",y:"4",width:"10",height:"7",rx:"2"}),(0,n.jsx)("circle",{cx:"6",cy:"7.5",r:"1"}),(0,n.jsx)("circle",{cx:"10",cy:"7.5",r:"1"}),(0,n.jsx)("path",{d:"M8 4V2M4.5 11v2M11.5 11v2"})]})},{id:"bot-defaults",href:"#/bot-defaults",labelKey:"nav.botDefaults",manage:!0,icon:(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("rect",{x:"2.5",y:"5",width:"11",height:"8",rx:"2"}),(0,n.jsx)("circle",{cx:"5.8",cy:"9",r:"1"}),(0,n.jsx)("circle",{cx:"10.2",cy:"9",r:"1"}),(0,n.jsx)("path",{d:"M8 5V2.5M5.5 13v1.2M10.5 13v1.2"})]})},{id:"skills",href:"#/skills",labelKey:"nav.skills",manage:!0,icon:(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("path",{d:"M3 2.5h10v3H3zM3 7h10v6.5H3z"}),(0,n.jsx)("path",{d:"M5.4 9.2h5.2M5.4 11.2h3.8"})]})},{id:"plugins",href:"#/plugins",label:"\u63D2\u4EF6",manage:!0,icon:(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("path",{d:"M6.4 1.8h3.2v3h2.8v3.2H9.6v2.8H6.4V8H3.6V4.8h2.8z"}),(0,n.jsx)("path",{d:"M2.2 11.8h11.6v2.4H2.2z"})]})},{id:"team",href:"#/team",labelKey:"nav.team",manage:!0,icon:(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("circle",{cx:"8",cy:"8",r:"6.2"}),(0,n.jsx)("path",{d:"M1.8 8h12.4M8 1.8c-2 1.8-2 10.6 0 12.4 2-1.8 2-10.6 0-12.4z"})]})},{id:"connectors",href:"#/connectors",labelKey:"nav.connectors",manage:!0,icon:(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("path",{d:"M5.5 6.5v-3a2.5 2.5 0 0 1 5 0v3"}),(0,n.jsx)("rect",{x:"3.5",y:"6.5",width:"9",height:"7",rx:"2"})]})},{id:"settings",href:"#/settings",labelKey:"nav.settings",icon:(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("path",{d:"M8 1.75 9.35 2.05 10 3.28l1.38.3 1.04-.96.96.96-.96 1.04.3 1.38 1.23.65L14.25 8l-.3 1.35-1.23.65-.3 1.38.96 1.04-.96.96-1.04-.96-1.38.3-.65 1.23L8 14.25l-1.35-.3L6 12.72l-1.38-.3-1.04.96-.96-.96.96-1.04-.3-1.38-1.23-.65L1.75 8l.3-1.35 1.23-.65.3-1.38-.96-1.04.96-.96 1.04.96 1.38-.3.65-1.23z"}),(0,n.jsx)("circle",{cx:"8",cy:"8",r:"2"})]})}],ne=[],A=!0,We=!1,jt=location.hash||"#/",K=null,oe=!1,re=null,be=null,Gt=null,ge=null,Jt=null,D=wt(),Xt="botmux.ownerAvatar.v1",An=new Set(["working","analyzing","active","starting"]),Ke="botmux:auth-expired",Ve;function te(e){return(0,n.jsx)("svg",{viewBox:"0 0 16 16","aria-hidden":"true",children:e})}function Ft(e){return e.labelKey?s(e.labelKey):e.label??""}function Bn(e,t){let o=t||"#/";return e.id==="plugins"&&ne.some(r=>r.href===o||o.startsWith(`${r.href}?`)||o.startsWith(`${r.href}/`))?!1:e.id==="sessions"&&(o==="#/monitor-room"||o.startsWith("#/monitor-room?")||o.startsWith("#/monitor-room/"))||e.id==="connectors"&&(o==="#/webhook-logs"||o.startsWith("#/webhook-logs?")||o.startsWith("#/webhook-logs/"))?!0:e.href===o||e.href!=="#/"&&(o.startsWith(`${e.href}?`)||o.startsWith(`${e.href}/`))}function In(){let e=ct()?$t.filter(o=>o.id!=="workflows"):$t;if(ne.length===0)return e;let t=e.findIndex(o=>o.id==="plugins");return t<0?[...e,...ne]:[...e.slice(0,t+1),...ne,...e.slice(t+1)]}function Un(e){let t=[];return Bn(e,jt)&&t.push("active"),e.id==="settings"&&oe&&t.push("nav-has-update"),t.length?t.join(" "):void 0}function Yt(){let e=de(new URLSearchParams(location.search).get("locale"));if(e)return e;let t=location.hash.indexOf("?");return t<0?null:de(new URLSearchParams(location.hash.slice(t+1)).get("locale"))}function _t(){let e=Yt();return!e||e===g.locale?!1:(g.setLocale(e),!0)}function $n(){let e=location.hash.indexOf("?");return e<0?null:{path:location.hash.slice(0,e)||"#/",params:new URLSearchParams(location.hash.slice(e+1))}}function Fn(){let e=$n(),t=e?.params.get("open");if(!e||!t||t!=="bot-onboarding"&&t!=="create-session")return!1;e.params.delete("open");let o=e.params.toString();return history.replaceState(null,"",o?`${e.path}?${o}`:e.path),t==="bot-onboarding"?window.dispatchEvent(new Event(ue)):Te(),!0}function Wt(){let e=re?`v${re}`:"";return be==="runtime"?s("update.navRuntimeBadgeTitle",{version:e}):s("update.navBadgeTitle",{version:e})}function _n(e){ge=e}function Ue(){if(ge)return ge;let e=document.getElementById("root");if(!e)throw new Error("dashboard root is not mounted");return ge=e,e}function Wn(){return(0,p.useEffect)(()=>{bt()},[]),(0,p.useEffect)(()=>{Pe()}),(0,n.jsxs)("div",{className:"theme-menu",id:"theme-menu",children:[(0,n.jsx)("button",{type:"button",className:"theme-menu-btn",id:"theme-menu-btn","aria-haspopup":"listbox","aria-expanded":"false","aria-label":"Theme",children:(0,n.jsx)("span",{className:"tm-ic",children:(0,n.jsxs)("svg",{className:"tm-svg",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:"1.75",strokeLinecap:"round",strokeLinejoin:"round","aria-hidden":"true",children:[(0,n.jsx)("circle",{cx:"13.5",cy:"6.5",r:".5",fill:"currentColor"}),(0,n.jsx)("circle",{cx:"17.5",cy:"10.5",r:".5",fill:"currentColor"}),(0,n.jsx)("circle",{cx:"8.5",cy:"7.5",r:".5",fill:"currentColor"}),(0,n.jsx)("circle",{cx:"6.5",cy:"12.5",r:".5",fill:"currentColor"}),(0,n.jsx)("path",{d:"M12 2a10 10 0 0 0 0 20h1.7a2.3 2.3 0 0 0 1.6-4c-.5-.5-.2-1.3.5-1.3H17a5 5 0 0 0 5-5 9.7 9.7 0 0 0-10-9.7z"})]})})}),(0,n.jsx)("div",{className:"theme-menu-pop",id:"theme-menu-pop",role:"listbox",hidden:!0})]})}function Kn(){let e=[...le.sessions.values()],t=e.filter(d=>d.status!=="closed"),o=t.map(d=>({s:d,reason:nt(d)})).filter(d=>!!d.reason).sort((d,c)=>ce(d.s)-ce(c.s)),r=new Set(o.map(d=>String(d.s.sessionId??""))),a=t.filter(d=>An.has(String(d.status))&&!r.has(String(d.sessionId??""))).length,i=o[0]??null,l=ht(e).filter(d=>d.online||d.active.length>0).length,m=Math.max(0,t.length-o.length-a);return{working:a,attention:o.length,idle:m,onlineBots:l,attentionNotice:i?{count:o.length,time:Qe(ce(i.s)),bot:tt(i.s),reason:i.reason}:null}}function fe(e){return(0,n.jsxs)("div",{className:`topbar-status-row${e.hot?" topbar-status-row-hot":""}`,children:[(0,n.jsx)("span",{children:e.label}),(0,n.jsx)("b",{className:e.value>0?"status-count-on":void 0,children:e.value})]})}function Vn(e){let{attention:t,idle:o,working:r}=e.summary,a=r+t+o,i=a===0?"conic-gradient(var(--border) 0 360deg)":(()=>{let l=r/a*360,m=l+t/a*360;return`conic-gradient(var(--accent) 0 ${l}deg, var(--warning) ${l}deg ${m}deg, var(--success) ${m}deg 360deg)`})();return(0,n.jsxs)("div",{className:"topbar-status-donut-wrap","aria-hidden":"true",children:[(0,n.jsx)("div",{className:"topbar-status-donut",style:{background:i}}),(0,n.jsxs)("div",{className:"topbar-status-donut-center",children:[(0,n.jsx)("b",{children:a}),(0,n.jsx)("span",{children:s("overview.openSessions")})]})]})}function $e(){window.dispatchEvent(new Event(Ne))}function zn(e){let{autoOpen:t=!1,summary:o}=e,[r,a]=(0,p.useState)(!1),[i,l]=(0,p.useState)(!1),[m,d]=(0,p.useState)(!1),c=(0,p.useRef)(null),f=t&&!i,h=r||f;return(0,p.useEffect)(()=>{t||l(!1)},[t]),(0,p.useEffect)(()=>{if(!h)return;let y=x=>{let L=x.target;L instanceof Node&&c.current?.contains(L)||(a(!1),l(!0))};return document.addEventListener("pointerdown",y),()=>document.removeEventListener("pointerdown",y)},[h]),(0,n.jsxs)("div",{ref:c,className:`topbar-status-menu${f?" topbar-status-auto-open":""}${r?" is-open":""}${m?" suppress-hover":""}`,onPointerEnter:$e,onPointerLeave:()=>d(!1),onFocusCapture:$e,onBlur:y=>{let x=y.relatedTarget;(!(x instanceof Node)||!y.currentTarget.contains(x))&&a(!1)},onKeyDown:y=>{y.key==="Escape"&&(a(!1),l(!0),d(!0),y.currentTarget.querySelector("#status")?.focus())},children:[(0,n.jsx)("button",{type:"button",id:"status",className:"connection-status","aria-haspopup":"true","aria-expanded":h,onClick:()=>{if($e(),h){a(!1),l(!0),d(!0);return}d(!1),a(!0)},children:s("overview.sessionOverview")}),(0,n.jsxs)("div",{className:"topbar-status-pop",children:[o.attentionNotice?(0,n.jsxs)("a",{className:"topbar-attention-notice",href:"#/sessions",children:[(0,n.jsx)("span",{className:"topbar-attention-dot","aria-hidden":"true"}),(0,n.jsxs)("span",{className:"topbar-attention-copy",children:[(0,n.jsx)("b",{children:s("strip.pending",{count:o.attentionNotice.count})}),(0,n.jsx)("small",{children:s("strip.longestCompact",{time:o.attentionNotice.time,bot:o.attentionNotice.bot,reason:o.attentionNotice.reason})})]}),(0,n.jsx)("span",{className:"topbar-attention-action",children:s("strip.handle")})]}):null,(0,n.jsxs)("div",{className:"topbar-status-list",children:[(0,n.jsx)(fe,{label:s("overview.workingSessions"),value:o.working}),(0,n.jsx)(fe,{label:s("overview.idleSessions"),value:o.idle}),(0,n.jsx)(fe,{label:s("overview.attention"),value:o.attention,hot:o.attention>0}),(0,n.jsx)(fe,{label:s("overview.onlineBots"),value:o.onlineBots})]}),(0,n.jsx)(Vn,{summary:o})]})]})}function qn(e){if(!e.open)return null;let t=!!e.loginUrl;return(0,n.jsx)("div",{id:"auth-expired-overlay",className:"auth-expired-overlay",role:"presentation",onClick:o=>{o.target===o.currentTarget&&e.onClose()},children:(0,n.jsxs)("div",{className:"auth-expired-dialog",role:"dialog","aria-modal":"true","aria-labelledby":"auth-expired-title",children:[(0,n.jsx)("h2",{id:"auth-expired-title",children:t?"\u767B\u5F55 Dashboard":"\u8BBF\u95EE\u94FE\u63A5\u5DF2\u5931\u6548"}),(0,n.jsx)("p",{children:t?"\u5F53\u524D\u6D4F\u89C8\u5668\u5C1A\u672A\u767B\u5F55\u3002\u70B9\u51FB\u540E\u5C06\u901A\u8FC7 Botmux \u5E73\u53F0\u6821\u9A8C\u673A\u5668 owner \u6743\u9650\uFF0C\u5E76\u8FD4\u56DE\u5F53\u524D\u9875\u9762\uFF1B\u65E0\u6743\u9650\u8D26\u53F7\u4ECD\u4F1A\u88AB\u62D2\u7EDD\u3002":"\u5F53\u524D\u94FE\u63A5/\u8BBF\u95EE\u5DF2\u5931\u6548\uFF0C\u8BF7\u4F7F\u7528\u6700\u65B0\u6388\u6743\u94FE\u63A5\u91CD\u65B0\u8FDB\u5165\uFF08\u8FD0\u884C botmux dashboard \u83B7\u53D6\uFF09\u3002"}),(0,n.jsxs)("div",{className:"auth-expired-actions",children:[e.loginUrl?(0,n.jsx)("a",{id:"dashboard-one-click-login",className:"auth-login-link primary",href:e.loginUrl,target:"_top",rel:"noopener",children:"\u4E00\u952E\u767B\u5F55"}):null,(0,n.jsx)("button",{id:"auth-expired-dismiss",type:"button",className:t?"secondary":"primary",onClick:e.onClose,children:t?"\u6682\u4E0D\u767B\u5F55":"\u77E5\u9053\u4E86"})]})]})})}function jn(e){let t=new Date(e);if(Number.isNaN(t.getTime()))return e.slice(0,10);try{return new Intl.DateTimeFormat(g.locale==="zh"?"zh-CN":"en-US",{year:"numeric",month:"numeric",day:"numeric"}).format(t)}catch{return e.slice(0,10)}}async function Kt(){let e=await fetch("/__selfcheck",{cache:"no-store"}),t=await e.text();if(!e.ok||!t)throw new Error(s("update.healthCheckFailed"));return t}function Gn(e){let{status:t}=e,[o,r]=(0,p.useState)(!1),[a,i]=(0,p.useState)("idle"),[l,m]=(0,p.useState)(!1),[d,c]=(0,p.useState)(!1),[f,h]=(0,p.useState)(""),[M,y]=(0,p.useState)(!1),[x,L]=(0,p.useState)(!1),[k,V]=(0,p.useState)(!1),[z,se]=(0,p.useState)(!1),[q,qe]=(0,p.useState)([]),[w,ve]=(0,p.useState)(null),[H,ye]=(0,p.useState)(null),O=(0,p.useRef)(!1),j=(0,p.useRef)(null),je=(0,p.useRef)(null),we=(0,p.useRef)(null),xe=(0,p.useRef)(null),[G,Ge]=(0,p.useState)(null),Zt=()=>{j.current!==null&&(window.clearTimeout(j.current),j.current=null)};if((0,p.useEffect)(()=>{O.current=!1,i("idle"),m(!1),c(!1),h(""),y(!1),L(!1),V(!1),se(!1),qe([]),ve(null),ye(null)},[t?.current,t?.latest]),(0,p.useEffect)(()=>{t&&c(t.versionLookupOk===!1)},[t]),(0,p.useEffect)(()=>{o||y(!1)},[o]),(0,p.useEffect)(()=>{if(!o||!G)return;let u=window.requestAnimationFrame(()=>{xe.current?.querySelector('button:not([disabled]), a[href], input:not([disabled]), select:not([disabled]), textarea:not([disabled]), [tabindex]:not([tabindex="-1"])')?.focus()});return()=>window.cancelAnimationFrame(u)},[o,G!==null]),(0,p.useEffect)(()=>{if(!o){Ge(null);return}let u=()=>{let v=we.current;if(!v)return;let E=v.getBoundingClientRect(),N=Math.min(340,Math.max(0,window.innerWidth-32)),I=Math.max(16,Math.min(E.left,window.innerWidth-N-16));Ge({top:E.bottom+8,left:I})};return u(),window.addEventListener("resize",u),document.addEventListener("scroll",u,!0),()=>{window.removeEventListener("resize",u),document.removeEventListener("scroll",u,!0)}},[o]),(0,p.useEffect)(()=>()=>Zt(),[]),(0,p.useEffect)(()=>{if(!o)return;let u=E=>{let N=E.target;je.current?.contains(N)||xe.current?.contains(N)||r(!1)},v=E=>{E.key==="Escape"&&(r(!1),we.current?.focus())};return document.addEventListener("pointerdown",u),document.addEventListener("keydown",v),()=>{document.removeEventListener("pointerdown",u),document.removeEventListener("keydown",v)}},[o]),!t)return null;let B=t.behind&&!!t.latest,ke=!t.latest,Ee=B&&t.updateSupported&&!t.localDevInstall&&t.node.ok,Je=t.updateSupported&&!t.localDevInstall&&t.node.ok,S=a==="updating"||a==="restarting",Qt=t.updateCommand??"botmux update",Re=`v${t.current}`,en=t.latest?`v${t.latest}`:"",tn=t.localDevInstall?s("update.localDev"):t.updateSupported?t.node.ok?"":s("update.nodeWarn",{version:t.node.version,required:t.node.required}):s("update.unsupportedInstall"),Xe=u=>{let v=Date.now(),E=async()=>{try{let N=await fetch("/__selfcheck",{cache:"no-store"}),I=await N.text();if(N.ok&&I&&I!==u){location.reload();return}}catch{}if(Date.now()-v>9e4){O.current=!1,i("error"),h(s("update.restartSlow"));return}j.current=window.setTimeout(()=>{E()},2e3)};j.current=window.setTimeout(()=>{E()},3e3)},nn=async()=>{if(B){if(!Ee){r(!1),location.hash="#/settings";return}if(!O.current){O.current=!0,ye(null),c(!1),h("");try{let u=await Kt(),v=await Be(fetch,i);if(!v.restarted){O.current=!1,i("error"),h(s("update.restartFailed",{detail:v.restartError??"unknown"}));return}Xe(u)}catch(u){O.current=!1,i("error"),h(u instanceof Error?u.message:String(u))}}}},Me=async(u=!1)=>{if(k)return!z;V(!0),se(!1);try{let v=await fetch(`/api/update/versions${u?"?refresh=1":""}`,{cache:"no-store"}),E=await v.json().catch(()=>null);if(!E||!Array.isArray(E.versions))throw new Error("Invalid rollback versions response");let N=E.versions.filter(U=>{if(!U||typeof U!="object")return!1;let J=U;return typeof J.version=="string"&&(typeof J.publishedAt=="string"||J.publishedAt===null)}).slice(0,3);qe(N),ve(U=>N.some(J=>J.version===U)?U:null),L(!0);let I=v.ok&&E.ok===!0;return se(!I),I}catch{return L(!0),se(!0),!1}finally{V(!1)}},on=async()=>{if(!(!w||!Je||k||O.current)){O.current=!0,ye(w),c(!1),h("");try{let u=await Kt();await Be(fetch,i,w),Xe(u)}catch(u){O.current=!1,i("error"),h(u instanceof Error?u.message:String(u))}}},rn=async()=>{if(!(l||S)){m(!0),c(!1);try{let u=await e.onRefresh();M&&await Me(!0),c(!u)}finally{m(!1)}}},Le=a==="updating"?H?s("update.rollbackInstalling",{version:H}):s("update.updating",{command:Qt}):a==="restarting"?H?s("update.rollbackRestarting",{version:H}):s("update.restarting"):a==="error"?H?s("update.rollbackFailed",{detail:f}):s("update.updateFailed",{detail:f}):d?s("update.topbarRefreshFailed"):B?Ee?s("update.versionUpgradePrompt",{version:en}):tn:t.latest?s("update.upToDate"):s("update.checkUnavailable"),an=Ee?a==="error"?s("update.topbarRetry"):a==="idle"?s("update.topbarAction"):s("update.topbarWorking"):s("update.topbarReview"),ie=a==="error"||d&&ke?{className:"is-error",symbol:"!"}:B?{className:"has-update",symbol:"\u2191"}:ke?{className:"is-unknown",symbol:"?"}:{className:"is-current",symbol:"\u2713"};return(0,n.jsxs)("div",{ref:je,className:`dashboard-version-control${o?" is-open":""}`,children:[(0,n.jsxs)("button",{ref:we,type:"button",className:`dashboard-version-chip${B?" has-update":""}${ke?" is-unknown":""}${a==="error"?" is-error":""}`,"aria-haspopup":"dialog","aria-expanded":o,"aria-label":`${Re}. ${Le}`,title:Le,onClick:()=>r(u=>!u),children:[(0,n.jsx)("span",{children:Re}),S?(0,n.jsx)("span",{className:"dashboard-update-spinner","aria-hidden":"true"}):(0,n.jsx)("span",{className:`dashboard-version-state ${ie.className}`,"aria-hidden":"true",children:ie.symbol})]}),o&&G&&typeof document<"u"?(0,zt.createPortal)((0,n.jsxs)("section",{ref:xe,className:"dashboard-version-popover",role:"dialog","aria-modal":"false","aria-labelledby":"dashboard-version-title",style:{top:G.top,left:G.left},children:[(0,n.jsxs)("header",{className:"dashboard-version-popover-head",children:[(0,n.jsx)("strong",{id:"dashboard-version-title",children:s("update.current")}),(0,n.jsxs)("div",{className:"dashboard-version-head-actions",children:[(0,n.jsx)("button",{type:"button",className:`dashboard-version-refresh${l?" is-refreshing":""}`,"aria-label":s(l?"update.topbarRefreshing":"update.topbarRefresh"),title:s(l?"update.topbarRefreshing":"update.topbarRefresh"),disabled:l||k||S,onClick:()=>{rn()},children:(0,n.jsxs)("svg",{viewBox:"0 0 16 16","aria-hidden":"true",children:[(0,n.jsx)("path",{d:"M13.2 5.7A5.8 5.8 0 1 0 13 10.8"}),(0,n.jsx)("path",{d:"M13.2 2.8v2.9h-2.9"})]})}),(0,n.jsx)("button",{type:"button",className:"dashboard-version-close","aria-label":s("update.topbarClose"),onClick:()=>r(!1),children:"\xD7"})]})]}),(0,n.jsxs)("div",{className:"dashboard-version-popover-body",children:[(0,n.jsxs)("div",{className:"dashboard-version-current",children:[(0,n.jsx)("strong",{children:Re}),(0,n.jsx)("span",{className:ie.className,"aria-hidden":"true",children:S?(0,n.jsx)("span",{className:"dashboard-update-spinner"}):ie.symbol})]}),(0,n.jsx)("p",{className:`dashboard-version-message${a==="error"||d?" is-error":""}`,role:a==="error"||d?"alert":"status","aria-live":"polite",children:Le}),(0,n.jsxs)("a",{className:"dashboard-version-release-link",href:"https://github.com/deepcoldy/botmux/releases",target:"_blank",rel:"noopener noreferrer",children:[(0,n.jsx)("svg",{viewBox:"0 0 16 16","aria-hidden":"true",children:(0,n.jsx)("path",{d:"M8 1.5a6.5 6.5 0 0 0-2.1 12.65c.33.06.45-.14.45-.32v-1.26c-1.84.4-2.23-.78-2.23-.78-.3-.76-.73-.96-.73-.96-.6-.41.05-.4.05-.4.66.05 1 .68 1 .68.59 1 1.54.72 1.92.55.06-.42.23-.72.42-.88-1.47-.17-3.02-.74-3.02-3.28 0-.72.26-1.32.68-1.78-.07-.17-.3-.84.07-1.75 0 0 .56-.18 1.79.68A6.2 6.2 0 0 1 8 4.63a6.2 6.2 0 0 1 1.71.22c1.23-.86 1.79-.68 1.79-.68.37.91.14 1.58.07 1.75.42.46.68 1.06.68 1.78 0 2.55-1.55 3.11-3.03 3.28.24.21.45.61.45 1.23v1.62c0 .18.12.38.46.32A6.5 6.5 0 0 0 8 1.5Z"})}),(0,n.jsx)("span",{children:s("update.changelogViewOnGitHub")})]}),(B||M)&&t.installs.multiple?(0,n.jsxs)("details",{className:"dashboard-version-installs",children:[(0,n.jsx)("summary",{children:s("update.multiInstallWarn")}),(0,n.jsx)("ul",{children:t.installs.entries.map(u=>(0,n.jsx)("li",{children:u.binPath},u.binPath))})]}):null,Je?(0,n.jsxs)("details",{className:"dashboard-version-rollback",open:M,"aria-busy":k,onToggle:u=>{let v=u.currentTarget.open;y(v),v&&!x&&!k&&Me()},children:[(0,n.jsxs)("summary",{children:[(0,n.jsxs)("svg",{viewBox:"0 0 16 16","aria-hidden":"true",children:[(0,n.jsx)("circle",{cx:"8",cy:"8",r:"5.5"}),(0,n.jsx)("path",{d:"M8 4.8V8l2.2 1.3"})]}),(0,n.jsx)("span",{children:s("update.rollbackTitle")}),(0,n.jsx)("span",{className:"dashboard-version-rollback-chevron","aria-hidden":"true",children:"\u2304"})]}),(0,n.jsxs)("div",{className:"dashboard-version-rollback-body",children:[k&&q.length===0?(0,n.jsxs)("p",{className:"dashboard-version-rollback-status",role:"status","aria-live":"polite",children:[(0,n.jsx)("span",{className:"dashboard-update-spinner","aria-hidden":"true"}),s("update.rollbackLoading")]}):null,z?(0,n.jsxs)("p",{className:"dashboard-version-rollback-load-error",role:"alert",children:[(0,n.jsx)("span",{children:s("update.rollbackLoadFailed")}),(0,n.jsx)("button",{type:"button",disabled:k,onClick:()=>{Me(!0)},children:s("update.rollbackRetry")})]}):null,x&&!k&&!z&&q.length===0?(0,n.jsx)("p",{className:"dashboard-version-rollback-status",children:s("update.rollbackEmpty")}):null,q.length>0?(0,n.jsxs)("fieldset",{disabled:S||k||z,children:[(0,n.jsx)("legend",{children:s("update.rollbackHint")}),(0,n.jsx)("div",{className:"dashboard-version-rollback-options",children:q.map(u=>(0,n.jsxs)("label",{className:w===u.version?"is-selected":"",children:[(0,n.jsx)("input",{type:"radio",name:"dashboard-rollback-version",value:u.version,checked:w===u.version,onChange:()=>ve(u.version)}),(0,n.jsxs)("strong",{children:["v",u.version]}),u.publishedAt?(0,n.jsx)("time",{dateTime:u.publishedAt,children:jn(u.publishedAt)}):null]},u.version))})]}):null,w?(0,n.jsxs)("p",{id:"dashboard-version-rollback-risk",className:"dashboard-version-rollback-risk",role:"note",children:[(0,n.jsxs)("svg",{viewBox:"0 0 16 16","aria-hidden":"true",children:[(0,n.jsx)("path",{d:"M7.1 2.3 1.8 12a1 1 0 0 0 .9 1.5h10.6a1 1 0 0 0 .9-1.5L8.9 2.3a1 1 0 0 0-1.8 0Z"}),(0,n.jsx)("path",{d:"M8 5.5v3.6M8 11.6h.01"})]}),(0,n.jsxs)("span",{children:[s("update.rollbackRisk",{version:w})," ",(0,n.jsx)("a",{href:`https://github.com/deepcoldy/botmux/releases/tag/v${encodeURIComponent(w)}`,target:"_blank",rel:"noopener noreferrer","aria-label":s("update.rollbackReleaseNotesA11y",{version:w}),children:s("update.rollbackReleaseNotes",{version:w})})]})]}):null,q.length>0?(0,n.jsxs)("button",{type:"button",className:"dashboard-version-rollback-action",disabled:!w||k||z||S,"aria-describedby":w?"dashboard-version-rollback-risk":void 0,onClick:()=>{on()},children:[S&&H?(0,n.jsx)("span",{className:"dashboard-update-spinner","aria-hidden":"true"}):null,w?a==="error"&&H===w?s("update.rollbackRetry"):s("update.rollbackAction",{version:w}):s("update.rollbackSelect")]}):null]})]}):null]}),B&&!M&&!H?(0,n.jsxs)("footer",{className:"dashboard-version-popover-actions",children:[(0,n.jsx)("button",{type:"button",className:"dashboard-version-secondary",onClick:()=>r(!1),children:S?s("update.topbarClose"):s("update.topbarLater")}),(0,n.jsxs)("button",{type:"button",className:"dashboard-version-primary",disabled:S,onClick:()=>{nn()},children:[S?(0,n.jsx)("span",{className:"dashboard-update-spinner","aria-hidden":"true"}):null,an]})]}):null]}),document.body):null]})}function Jn(){let e=Kn(),[t,o]=(0,p.useState)(!1),[r,a]=(0,p.useState)(!1),[i,l]=(0,p.useState)(!1),m=(0,p.useRef)(e.attention),d=(0,p.useRef)(null),c=()=>{d.current!==null&&(window.clearTimeout(d.current),d.current=null)};(0,p.useEffect)(()=>{let h=()=>o(!0);return window.addEventListener(ue,h),()=>window.removeEventListener(ue,h)},[]),(0,p.useEffect)(()=>{let h=()=>a(!0);return window.addEventListener(Ke,h),ae&&a(!0),()=>window.removeEventListener(Ke,h)},[]),(0,p.useEffect)(()=>()=>c(),[]),(0,p.useEffect)(()=>{let h=m.current;if(m.current=e.attention,e.attention===0){c(),l(!1);return}h!==0||document.body.classList.contains("theme-menu-open")||(l(!0),c(),d.current=window.setTimeout(()=>{d.current=null,l(!1)},4e3))},[e.attention]);let f=()=>{ae=!1,a(!1)};return(0,n.jsxs)(n.Fragment,{children:[(0,n.jsxs)("div",{className:"aurora","aria-hidden":"true",children:[(0,n.jsx)("i",{className:"a1"}),(0,n.jsx)("i",{className:"a2"}),(0,n.jsx)("i",{className:"a3"})]}),(0,n.jsxs)("div",{className:"app-shell",children:[(0,n.jsxs)("header",{className:"topbar",children:[(0,n.jsx)("div",{className:"topbar-left",children:(0,n.jsxs)("div",{className:"topbar-brand-block",children:[(0,n.jsxs)("a",{className:"brand",href:"#/",children:[(0,n.jsx)("span",{className:"brand-mark","aria-hidden":"true",children:(0,n.jsx)("img",{className:"brand-logo-img",src:"/assets/brand-logo.png",alt:"",decoding:"sync",loading:"eager",fetchPriority:"high"})}),(0,n.jsx)("strong",{className:"brand-wordmark",children:"Botmux"}),(0,n.jsx)("span",{className:"brand-product",children:"Dashboard"})]}),(0,n.jsx)(Gn,{status:Gt,onRefresh:()=>ze(!0)})]})}),(0,n.jsxs)("div",{className:"topbar-actions",children:[(0,n.jsx)(zn,{summary:e,autoOpen:i}),(0,n.jsxs)("div",{className:"topbar-tool-group",children:[(0,n.jsx)("button",{type:"button",className:"topbar-locale-toggle","aria-label":g.locale==="zh"?"Switch to English":"\u5207\u6362\u5230\u4E2D\u6587",title:g.locale==="zh"?"Switch to English":"\u5207\u6362\u5230\u4E2D\u6587",onClick:()=>Xn(g.locale==="zh"?"en":"zh"),children:g.locale==="zh"?"CN":"EN"}),(0,n.jsx)(Wn,{}),(0,n.jsxs)("a",{className:"topbar-docs-link",href:"https://bytedance.aiforce.cloud/app/app_4k9smq6rdxher/",target:"_blank",rel:"noopener noreferrer",title:s("nav.docs"),"aria-label":s("nav.docs"),children:[te((0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("rect",{x:"2.2",y:"2.2",width:"11.6",height:"11.6",rx:"2"}),(0,n.jsx)("path",{d:"M4.8 5.2h6.4M4.8 8h6.4M4.8 10.8h4"})]})),(0,n.jsx)("span",{children:s("nav.docs")})]})]}),(0,n.jsxs)("span",{className:"topbar-owner",title:K?.name,"aria-label":K?.name??"Owner",children:[(0,n.jsx)("span",{className:"topbar-owner-placeholder","aria-hidden":"true",children:te((0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("circle",{cx:"8",cy:"6",r:"2.4"}),(0,n.jsx)("path",{d:"M3.7 13c.7-2.5 2.2-3.7 4.3-3.7s3.6 1.2 4.3 3.7"})]}))}),K?.avatarUrl?(0,n.jsx)("img",{className:"topbar-owner-img",src:K.avatarUrl,alt:"",decoding:"async",referrerPolicy:"no-referrer",onError:h=>{h.currentTarget.remove()}}):null]})]})]}),(0,n.jsxs)("div",{className:"chrome-body",children:[(0,n.jsxs)("aside",{className:"sidebar",children:[A?(0,n.jsxs)("div",{className:"sidebar-create-actions",children:[(0,n.jsxs)("button",{type:"button",className:"sidebar-create-btn",onClick:()=>Te(),children:[te((0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("path",{d:"M2 3.5h12v7H6l-3 3v-3H2z"}),(0,n.jsx)("path",{d:"M8 4.9v4.2M5.9 7h4.2"})]})),(0,n.jsx)("span",{className:"sidebar-nav-label",children:s("nav.createSession")})]}),(0,n.jsxs)("button",{type:"button",className:"sidebar-create-btn",onClick:()=>{it()},children:[te((0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("rect",{x:"2.5",y:"6",width:"11",height:"7.5",rx:"2"}),(0,n.jsx)("circle",{cx:"5.8",cy:"9.75",r:"1"}),(0,n.jsx)("circle",{cx:"10.2",cy:"9.75",r:"1"}),(0,n.jsx)("path",{d:"M8 6V3.8M6.3 1.9h3.4"})]})),(0,n.jsx)("span",{className:"sidebar-nav-label",children:s("nav.createBot")})]})]}):null,(0,n.jsx)("nav",{className:"sidebar-nav","aria-label":"Dashboard",children:In().filter(h=>A||!h.manage).map(h=>(0,n.jsxs)("a",{href:h.href,"data-route":h.id,className:[Un(h),h.plugin?"sidebar-plugin-item":""].filter(Boolean).join(" ")||void 0,title:h.plugin?Ft(h):void 0,children:[te(h.icon),(0,n.jsx)("span",{className:"sidebar-nav-label",children:Ft(h)}),h.id==="settings"&&oe?(0,n.jsx)(st,{className:"nav-update-tip",label:Wt(),trigger:(0,n.jsx)("span",{className:"nav-update-dot","aria-hidden":"true"}),preventClick:!1,focusable:!1,children:Wt()}):null]},h.id))})]}),(0,n.jsxs)("div",{className:"workspace",children:[(0,n.jsx)("dialog",{id:"create-session-modal",className:"create-session-modal"}),(0,n.jsx)(lt,{open:t,onClose:()=>o(!1)}),(0,n.jsx)("main",{id:"root",ref:_n})]})]})]}),(0,n.jsx)(qn,{open:r,loginUrl:Ie(Ve,location.hash),onClose:f})]})}function R(){Jt?.render((0,n.jsx)(Jn,{}))}function Xn(e){g.setLocale(e),to(e)}var ae=!1;function Yn(e){let t=!!Ie(e,location.hash),o=t&&Ve!==e;t&&(Ve=e),ae&&o&&R(),!ae&&(ae=!0,window.dispatchEvent(new Event(Ke)))}var Fe;function Zn(){let e=document.getElementById("readonly-toast");e||(e=document.createElement("div"),e.id="readonly-toast",e.style.cssText="position:fixed;left:50%;bottom:28px;transform:translateX(-50%);z-index:9999;background:var(--fg,#1f2329);color:var(--bg,#fff);padding:10px 18px;border-radius:var(--radius-lg);font-size:13px;box-shadow:0 8px 24px rgba(0,0,0,.25)",document.body.appendChild(e)),e.textContent="\u5F53\u524D\u662F\u53EA\u8BFB\u8BBF\u95EE\uFF0C\u6B64\u64CD\u4F5C\u9700\u8981\u6388\u6743\u94FE\u63A5\uFF08\u8FD0\u884C botmux dashboard \u83B7\u53D6\uFF09",e.style.display="block",Fe&&window.clearTimeout(Fe),Fe=window.setTimeout(()=>{e.style.display="none"},4e3)}var Qn=window.fetch.bind(window);window.fetch=async function(...t){let o=await Qn(...t);if(o.status===401){let r=o.headers.get("x-botmux-login-url")??void 0,a=(t[1]?.method??"GET").toUpperCase();r||(a==="GET"||a==="HEAD")&&!We?Yn(r):Zn()}return o};async function eo(){try{let e=await fetch("/api/settings");if(e.ok){let t=await e.json();A=!!t.authed,g.authed=A,We=!!(t.settings&&t.settings.publicReadOnly),g.publicReadOnly=We;let o=Yt()??de(t.lang);o&&g.setLocale(o)}}catch{}}async function Vt(){try{let e=await fetch("/api/plugins/dashboard");if(!e.ok)return;let t=await e.json();ne=(Array.isArray(t?.plugins)?t.plugins:[]).filter(r=>r.pinned===!0&&typeof r.route=="string").map(r=>({id:`plugin:${r.pluginId}:${r.id}`,href:r.route,label:r.displayName||r.pluginId,manage:!0,plugin:!0,icon:(0,n.jsxs)(n.Fragment,{children:[(0,n.jsx)("path",{d:"M5.2 2.2h5.6v3.1l1.7 1.7-1.4 1.4-1-1v6.4H5.9V7.4l-1 1L3.5 7l1.7-1.7z"}),(0,n.jsx)("path",{d:"M8 13.8v1"})]})})),R()}catch{}}async function to(e){if(A)try{await fetch("/api/settings",{method:"PUT",headers:{"content-type":"application/json"},body:JSON.stringify({lang:e})})}catch{}}async function ze(e=!1){if(!A)return!1;try{let t=await fetch(`/api/update/status${e?"?refresh=1":""}`,{cache:"no-store"});if(!t.ok)return!1;let o=await t.json();Gt=o;let r=Array.isArray(o.cliUpdates)?o.cliUpdates.find(a=>a?.updateAvailable===!0&&a?.latest):null;return o.behind===!0&&o.latest?(oe=!0,be="botmux",re=String(o.latest)):r?(oe=!0,be="runtime",re=String(r.latest)):(oe=!1,be=null,re=null),R(),o.versionLookupOk!==!1}catch{return!1}}function no(e){e.innerHTML='<section class="auth-required" style="max-width:520px;margin:64px auto;text-align:center;background:var(--surface);color:var(--fg);border:1px solid var(--border);border-radius:var(--radius-lg);padding:40px 36px;box-shadow:0 8px 28px rgba(0,0,0,.12)"><h2 style="margin:0 0 12px;font-size:20px;color:var(--fg)">\u6B64\u9875\u9700\u8981\u6388\u6743\u94FE\u63A5</h2><p style="margin:0 0 24px;line-height:1.7;color:var(--muted);font-size:14px">\u4F60\u5F53\u524D\u662F\u53EA\u8BFB\u8BBF\u95EE\uFF0C\u7BA1\u7406\u9875\uFF08\u7FA4\u89D2\u8272 / Profiles / Bot \u914D\u7F6E / \u56E2\u961F / Webhook\uFF09\u9700\u8981\u6388\u6743\u94FE\u63A5\u3002\u8FD0\u884C <code>botmux dashboard</code> \u83B7\u53D6\u6700\u65B0\u94FE\u63A5\u540E\u5373\u53EF\u7BA1\u7406\u3002</p><a href="#/" style="display:inline-block;padding:8px 22px;background:var(--accent);color:var(--on-accent);border-radius:var(--radius-lg);text-decoration:none;font-size:14px">\u8FD4\u56DE\u603B\u89C8</a></section>'}async function _e(){let e=xt(D),t=location.hash||"#/";jt=t,R();let o=ut(t);if(o){window.location.replace(o);return}if(!A&&Dn.some(r=>t.startsWith("#/"+r))){no(Ue()),D.rerenderOnUiChange=!0;return}if(t.startsWith("#/v3")){window.location.replace(`#/workflows${t.slice(4)}`);return}else if(t.startsWith("#/legacy-workflow")){window.location.replace("#/workflows");return}else if(/^#\/workflows(?:\/|-)catalog(?:[/?].*)?$/.test(t)){window.location.replace("#/workflows");return}if(t.startsWith("#/role-profiles")){window.location.replace(`#/roles/profile${t.slice(15)}`);return}try{let r=gt(t);await kt(D,e,Ue(),r?r.load:vt,{rerenderOnUiChange:r?r.rerenderOnUiChange:!1}),e===D.seq&&A&&Fn()}catch(r){if(e!==D.seq||Mt(r,{href:window.location.href,hash:t,getSessionStorage:()=>window.sessionStorage,reload:()=>window.location.reload()}))return;Ue().innerHTML=`<section class="page"><div class="empty">Dashboard route failed: ${Ze(String(r))}</div></section>`,D.pageDispose=null,D.rerenderOnUiChange=!0}}function oo(){try{let e=JSON.parse(window.localStorage.getItem(Xt)??"null");if(e?.avatarUrl)return{avatarUrl:String(e.avatarUrl),name:e.name?String(e.name):void 0}}catch{}return null}function ro(){K=oo(),R(),fetch("/api/owner-profile").then(e=>e.ok?e.json():null).then(e=>{if(!(!e?.ok||!e.avatarUrl)){K={avatarUrl:String(e.avatarUrl),name:e.name?String(e.name):void 0};try{window.localStorage.setItem(Xt,JSON.stringify({avatarUrl:e.avatarUrl,name:e.name??""}))}catch{}R()}}).catch(()=>{})}(async()=>{let e=dt(window.location.href);e&&window.history.replaceState(window.history.state,"",e),g.init(),_t();let t=document.getElementById("app-root");if(!t)throw new Error("missing dashboard app root");Ct(t),Bt(),Jt=(0,qt.createRoot)(t),R(),g.on(()=>{R(),D.rerenderOnUiChange&&_e()}),le.on(()=>{R()}),await eo(),R(),window.addEventListener(ot,()=>{Vt()}),Vt(),ze(),window.setInterval(()=>{document.hidden||ze()},30*6e4),ro();try{await Ye()}catch(o){console.error("botmux dashboard bootstrap failed",o),le.setOnline(!1)}et().then(R),pt().then(R),window.addEventListener("hashchange",()=>{_t()||_e()}),_e()})();export{Yn as showAuthExpiredOverlay,Zn as showReadOnlyToast};
|