chainlesschain 0.161.10 → 0.161.12
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/package.json +4 -1
- package/src/assets/web-panel/.build-hash +1 -1
- package/src/assets/web-panel/assets/{AIOps-CmCGAwDv.js → AIOps-B1dwBvzW.js} +1 -1
- package/src/assets/web-panel/assets/{ActionButton-eeaISbP3.js → ActionButton-DfR4oLvh.js} +1 -1
- package/src/assets/web-panel/assets/{Analytics-CJEX10hA.js → Analytics-D3ZYGXjr.js} +1 -1
- package/src/assets/web-panel/assets/AppLayout-CsmOoh-7.js +3 -0
- package/src/assets/web-panel/assets/{AppLayout-BpbfrB7k.css → AppLayout-DBgtkmP7.css} +1 -1
- package/src/assets/web-panel/assets/{Audit-B4BUSPse.js → Audit-B4gwDm63.js} +1 -1
- package/src/assets/web-panel/assets/{Backup-DIDcWoL9.js → Backup-T42uSArV.js} +1 -1
- package/src/assets/web-panel/assets/BaseInput-CFi52nMs.js +1 -0
- package/src/assets/web-panel/assets/{Chat-D-yEkssi.js → Chat-D7Vvok1V.js} +1 -1
- package/src/assets/web-panel/assets/{Checkbox-Bww7tFNj.js → Checkbox-Dwaflpww.js} +1 -1
- package/src/assets/web-panel/assets/{Codegen-D9k-kRxr.js → Codegen-BIqx3G0b.js} +1 -1
- package/src/assets/web-panel/assets/{Col-CWhmQejT.js → Col-DzIUYUNu.js} +1 -1
- package/src/assets/web-panel/assets/{Community-Ck1ojsb1.js → Community-DKePtzhk.js} +1 -1
- package/src/assets/web-panel/assets/Compact-CirVV9Wq.js +1 -0
- package/src/assets/web-panel/assets/{Compliance-BSOLLyKA.js → Compliance-CrXOr0sy.js} +1 -1
- package/src/assets/web-panel/assets/{Cowork-BiOMErjG.js → Cowork-BEBP6Tht.js} +1 -1
- package/src/assets/web-panel/assets/{Cron-DnVm70q-.js → Cron-k7nNUuqh.js} +1 -1
- package/src/assets/web-panel/assets/{Crosschain-CqIVrbR9.js → Crosschain-CBnX0Dhq.js} +1 -1
- package/src/assets/web-panel/assets/{DID-DS9MUwUx.js → DID-B48FszWS.js} +1 -1
- package/src/assets/web-panel/assets/{Dashboard-BlrXX2bG.js → Dashboard-Pb3qfFpp.js} +2 -2
- package/src/assets/web-panel/assets/{Dropdown-CqBG_led.js → Dropdown-pUHy4CQ2.js} +1 -1
- package/src/assets/web-panel/assets/Federation-CT0Qs-kR.js +1 -0
- package/src/assets/web-panel/assets/{FormItemContext-DQUjKw5j.js → FormItemContext-CbJJp5BR.js} +1 -1
- package/src/assets/web-panel/assets/{Git-pitws4KW.js → Git-B3mGNLQe.js} +1 -1
- package/src/assets/web-panel/assets/{Governance-BNG31zqe.js → Governance-BKf4733q.js} +1 -1
- package/src/assets/web-panel/assets/{Inference-W32jdXsU.js → Inference-DZjU541G.js} +1 -1
- package/src/assets/web-panel/assets/{KnowledgeGraph-_qBNRolE.js → KnowledgeGraph-C8L-7Dd1.js} +1 -1
- package/src/assets/web-panel/assets/{Logs-BnnANM_j.js → Logs-CwDwOiKv.js} +1 -1
- package/src/assets/web-panel/assets/{Marketplace-C6OwNTw7.js → Marketplace-C2YWWU0M.js} +1 -1
- package/src/assets/web-panel/assets/{McpTools-D7cbYTwR.js → McpTools-dIbkOypF.js} +1 -1
- package/src/assets/web-panel/assets/{Memory-7kL8dh9_.js → Memory-7eF8WzcY.js} +1 -1
- package/src/assets/web-panel/assets/{MobileBridge-B5ZSxpt9.js → MobileBridge-C74GHLbX.js} +3 -3
- package/src/assets/web-panel/assets/{MobileBridge-DkkMCDx9.css → MobileBridge-DwxX55b_.css} +1 -1
- package/src/assets/web-panel/assets/{Mtc-DOm5jweE.js → Mtc-CSEDo5Fo.js} +1 -1
- package/src/assets/web-panel/assets/{MtcAudit-D9rDFqWR.js → MtcAudit-DiJXxOrB.js} +6 -6
- package/src/assets/web-panel/assets/{Multisig-CVqb7ayL.js → Multisig-FZTU5ri6.js} +1 -1
- package/src/assets/web-panel/assets/{NLProgramming-BETAJaqD.js → NLProgramming-DjF-gIUw.js} +1 -1
- package/src/assets/web-panel/assets/{Notes-CUJ1PDmG.js → Notes-BUE5CvMO.js} +1 -1
- package/src/assets/web-panel/assets/{NotificationSettings-BauSiotO.js → NotificationSettings-Dfbrobje.js} +1 -1
- package/src/assets/web-panel/assets/{Organization-B0T5PGg4.js → Organization-C6YvqjQB.js} +1 -1
- package/src/assets/web-panel/assets/{Overflow-CHLIn241.js → Overflow-BvHNhdMR.js} +1 -1
- package/src/assets/web-panel/assets/{OverrideContext-DYxbd09I.js → OverrideContext-x9ZzjLwk.js} +1 -1
- package/src/assets/web-panel/assets/{P2P-yqfDCE9U.js → P2P-BO0hQHFS.js} +1 -1
- package/src/assets/web-panel/assets/{Permissions-DWu7ec_n.js → Permissions-CCPlrJeP.js} +1 -1
- package/src/assets/web-panel/assets/{Pipeline-BPXGoHep.js → Pipeline-DTCL3FjJ.js} +1 -1
- package/src/assets/web-panel/assets/{Privacy-B2fRmhNs.js → Privacy-08DYgOe_.js} +1 -1
- package/src/assets/web-panel/assets/{ProjectInit-dPr0sgSZ.js → ProjectInit-B7j-Z8sa.js} +2 -2
- package/src/assets/web-panel/assets/{ProjectSettings-dKjwdfXX.js → ProjectSettings-CFqLhV1w.js} +1 -1
- package/src/assets/web-panel/assets/Projects-0OrfK90x.css +1 -0
- package/src/assets/web-panel/assets/Projects-BPlpx2UN.js +1 -0
- package/src/assets/web-panel/assets/{Providers-OpB_FLki.js → Providers-BCBPbVbF.js} +1 -1
- package/src/assets/web-panel/assets/{QuickAsk-B0gFMvI8.js → QuickAsk-C8Job6zl.js} +1 -1
- package/src/assets/web-panel/assets/{Recommend-C2NwxWiR.js → Recommend-DOV_Aje-.js} +1 -1
- package/src/assets/web-panel/assets/{Reputation-CTBtQ8Bi.js → Reputation-DOgK_dIK.js} +1 -1
- package/src/assets/web-panel/assets/Row-8jdU1xYg.js +1 -0
- package/src/assets/web-panel/assets/{RssFeed-ChOug33H.js → RssFeed-B289OgNZ.js} +1 -1
- package/src/assets/web-panel/assets/{Search-DrlVYajZ.js → Search-cr0AndFE.js} +1 -1
- package/src/assets/web-panel/assets/{Security-BxWm_HMW.js → Security-w4diykaE.js} +1 -1
- package/src/assets/web-panel/assets/{Services-Bq__zdi1.js → Services-dTxAI5cG.js} +2 -2
- package/src/assets/web-panel/assets/{Skeleton-D2BPihBx.js → Skeleton-B3FiUiRo.js} +1 -1
- package/src/assets/web-panel/assets/{Skills-Q1ZtavwR.js → Skills-DgtBTAFC.js} +1 -1
- package/src/assets/web-panel/assets/{Sla-CyIKjjSg.js → Sla-B4Y6bvbL.js} +1 -1
- package/src/assets/web-panel/assets/{SpeechSettings-DPddWDCV.js → SpeechSettings-C8FEvArc.js} +1 -1
- package/src/assets/web-panel/assets/{SyncSettings-CY-Fdii1.js → SyncSettings-CHvV5L0m.js} +1 -1
- package/src/assets/web-panel/assets/{Tasks-DAWxFePY.js → Tasks-B4Py5ORS.js} +1 -1
- package/src/assets/web-panel/assets/{Templates-CuIQmfXP.js → Templates-MeTyXM5u.js} +1 -1
- package/src/assets/web-panel/assets/{Tenant-CYsUC_mL.js → Tenant-Doiz7wyQ.js} +1 -1
- package/src/assets/web-panel/assets/Terminal-DSEAdwWN.js +3 -0
- package/src/assets/web-panel/assets/Terminal-G1DrFtKr.css +1 -0
- package/src/assets/web-panel/assets/{Tokens-DpwM8qKh.js → Tokens-BBrtaEKt.js} +1 -1
- package/src/assets/web-panel/assets/{Trigger-CBHUHnc-.js → Trigger-nPvjho27.js} +1 -1
- package/src/assets/web-panel/assets/{Trust-DfQZgxcX.js → Trust-BFwPyS_6.js} +1 -1
- package/src/assets/web-panel/assets/{UkeySign-BcOnuHWe.js → UkeySign-DFsHoY1J.js} +1 -1
- package/src/assets/web-panel/assets/{VideoEditing-Ci-c6HHb.js → VideoEditing-FkSKqHE9.js} +1 -1
- package/src/assets/web-panel/assets/{Wallet-DBuVM9t_.js → Wallet-AXo-_4-w.js} +4 -4
- package/src/assets/web-panel/assets/{WebAuthn-Dc3XC6-l.js → WebAuthn-DoScnQ-4.js} +1 -1
- package/src/assets/web-panel/assets/{WorkflowEditor-BFBZCgWB.js → WorkflowEditor-IEMfIax-.js} +1 -1
- package/src/assets/web-panel/assets/addon-fit-CK6X9sAG.js +1 -0
- package/src/assets/web-panel/assets/{chat-tqUunmHQ.js → chat-pc1ciH6T.js} +1 -1
- package/src/assets/web-panel/assets/{collapseMotion-CZQhO80h.js → collapseMotion-CjFH_Jop.js} +1 -1
- package/src/assets/web-panel/assets/{colors-7dfqj18R.js → colors-CjkIkB0e.js} +1 -1
- package/src/assets/web-panel/assets/{compact-item-_8YefjuR.js → compact-item-CQZnkP5p.js} +1 -1
- package/src/assets/web-panel/assets/{createContext-CPZ59Zcw.js → createContext-B1McGnV-.js} +1 -1
- package/src/assets/web-panel/assets/{echarts-TwhxblyG.js → echarts-Bq-n0MtJ.js} +1 -1
- package/src/assets/web-panel/assets/{hasIn-BidaS7SK.js → hasIn-CbkA6peP.js} +1 -1
- package/src/assets/web-panel/assets/{icons-Q99MnhG8.js → icons-NT6gy8Ee.js} +2 -2
- package/src/assets/web-panel/assets/{index-Ds3hIeDc.js → index-5c4JzwY3.js} +1 -1
- package/src/assets/web-panel/assets/{index-51Z_iRMU.js → index-B8r6OBuk.js} +2 -2
- package/src/assets/web-panel/assets/{index-Ca0EAS0W.js → index-BNLeseG1.js} +2 -2
- package/src/assets/web-panel/assets/index-BTyhXFDW.js +1 -0
- package/src/assets/web-panel/assets/index-BXfePRef.js +1 -0
- package/src/assets/web-panel/assets/index-Bs-romIz.js +1 -0
- package/src/assets/web-panel/assets/index-C052wi94.js +1 -0
- package/src/assets/web-panel/assets/{index-Dev3hWia.js → index-C0Lj7Yl0.js} +1 -1
- package/src/assets/web-panel/assets/{index-B3-Fdfqy.js → index-C5mpCgak.js} +1 -1
- package/src/assets/web-panel/assets/{index-B_pQvbuN.js → index-CEENN81t.js} +1 -1
- package/src/assets/web-panel/assets/{index-CLceS3rm.js → index-CFCQl1hk.js} +2 -2
- package/src/assets/web-panel/assets/{index-DTwrQg1G.js → index-CGke5qZp.js} +1 -1
- package/src/assets/web-panel/assets/index-CJbqE5Sw.js +1 -0
- package/src/assets/web-panel/assets/index-CJr12ypE.js +21 -0
- package/src/assets/web-panel/assets/{index-CG0swGFV.js → index-CKledOCh.js} +1 -1
- package/src/assets/web-panel/assets/index-CKwkP66s.js +13 -0
- package/src/assets/web-panel/assets/{index-DfHN8qWn.js → index-ChCCGHwz.js} +1 -1
- package/src/assets/web-panel/assets/{index-CW90j-dZ.js → index-CzZ3LxPK.js} +1 -1
- package/src/assets/web-panel/assets/{index-CzARuKje.js → index-D4rhVRSV.js} +1 -1
- package/src/assets/web-panel/assets/index-DGb36exe.js +3 -0
- package/src/assets/web-panel/assets/{index-DccwP9Op.js → index-DHpwwlmv.js} +1 -1
- package/src/assets/web-panel/assets/index-DHtiecyM.js +1 -0
- package/src/assets/web-panel/assets/{index-Cxwyyzpd.js → index-DJWYN-AT.js} +2 -2
- package/src/assets/web-panel/assets/{index-DJfKgyA-.js → index-DMjPzhsp.js} +2 -2
- package/src/assets/web-panel/assets/{index-BqsvxElz.js → index-DPzT5L14.js} +4 -4
- package/src/assets/web-panel/assets/{index-D8upWkW0.js → index-DWq64zmv.js} +1 -1
- package/src/assets/web-panel/assets/{index-DTmWBWkJ.js → index-DYAWIXFt.js} +1 -1
- package/src/assets/web-panel/assets/index-Dc4fj_Ys.js +1 -0
- package/src/assets/web-panel/assets/{index-Cw1VkvZr.js → index-DcSe5y5O.js} +1 -1
- package/src/assets/web-panel/assets/{index-Xg1JWxyg.js → index-Di5tuS0d.js} +2 -2
- package/src/assets/web-panel/assets/{index-D95E7B-a.js → index-DjM0jsm1.js} +2 -2
- package/src/assets/web-panel/assets/{index-CvkR7sYL.js → index-DjxVsyn_.js} +1 -1
- package/src/assets/web-panel/assets/index-Dn7SHV2e.js +55 -0
- package/src/assets/web-panel/assets/index-DsChgzu2.js +12 -0
- package/src/assets/web-panel/assets/{index-CAUH-6ta.js → index-Dzfj71tf.js} +2 -2
- package/src/assets/web-panel/assets/index-NRWBOo4F.js +1 -0
- package/src/assets/web-panel/assets/{index-Cxy6yDHf.js → index-fqI1KnP_.js} +8 -8
- package/src/assets/web-panel/assets/{index-DJa3dvQf.js → index-uWvLy_3T.js} +6 -6
- package/src/assets/web-panel/assets/{index-BUlPL2uR.js → index-wwQ_ZkWN.js} +1 -1
- package/src/assets/web-panel/assets/{initDefaultProps-DBQ94EVq.js → initDefaultProps-BTloFqyf.js} +1 -1
- package/src/assets/web-panel/assets/{motion-BAgV2nZt.js → motion-44iMBc1o.js} +2 -2
- package/src/assets/web-panel/assets/{move-CPhu8BHp.js → move-CyWQI5eW.js} +1 -1
- package/src/assets/web-panel/assets/{omit-BKpLUN0q.js → omit-CXfJtuFy.js} +1 -1
- package/src/assets/web-panel/assets/{pickAttrs-BicOrtU0.js → pickAttrs-ANFpSZes.js} +1 -1
- package/src/assets/web-panel/assets/{placementArrow-D2-Ct0PH.js → placementArrow-CigX-url.js} +1 -1
- package/src/assets/web-panel/assets/responsiveObserve-Ch48RA0m.js +1 -0
- package/src/assets/web-panel/assets/{slide-C7zAHcKr.js → slide-BEz3LORF.js} +1 -1
- package/src/assets/web-panel/assets/{statusUtils-ByfnDIgi.js → statusUtils-D9EniG8V.js} +1 -1
- package/src/assets/web-panel/assets/{styleChecker-C-ldcMcB.js → styleChecker-C1IvuY3L.js} +1 -1
- package/src/assets/web-panel/assets/useFlexGapSupport-C92oHeXB.js +1 -0
- package/src/assets/web-panel/assets/{useFs-yX-MUKbZ.js → useFs-CJhvFpgB.js} +1 -1
- package/src/assets/web-panel/assets/{useMergedState-D3PX36GT.js → useMergedState-O7QXt4P5.js} +1 -1
- package/src/assets/web-panel/assets/{useRefs-opfcK7Pm.js → useRefs-0J6m8UWN.js} +1 -1
- package/src/assets/web-panel/assets/{useState-Cp5WlLTS.js → useState-CSzR8F8O.js} +1 -1
- package/src/assets/web-panel/assets/{vendor-BVLz_z7V.js → vendor-M5lGV-wr.js} +1 -1
- package/src/assets/web-panel/assets/{vnode-CW-Z-Xwr.js → vnode-BPkyunN_.js} +1 -1
- package/src/assets/web-panel/assets/xterm-BZcWGsqw.js +9 -0
- package/src/assets/web-panel/assets/xterm-DFuMZ0ql.css +1 -0
- package/src/assets/web-panel/assets/{zoom-DR60LSPO.js → zoom-B6Ipb64r.js} +1 -1
- package/src/assets/web-panel/index.html +3 -3
- package/src/gateways/terminal/PtyManager.js +248 -0
- package/src/gateways/terminal/RingBuffer.js +61 -0
- package/src/gateways/terminal/terminal-handlers.js +121 -0
- package/src/gateways/ws/topic-handler-attachment.js +211 -0
- package/src/runtime/agent-runtime.js +33 -0
- package/src/assets/web-panel/assets/AppLayout-CrYEU1PZ.js +0 -3
- package/src/assets/web-panel/assets/BaseInput-CuJjCIcU.js +0 -1
- package/src/assets/web-panel/assets/Compact-CuDFE-4P.js +0 -1
- package/src/assets/web-panel/assets/Federation-DCBYjpOX.js +0 -1
- package/src/assets/web-panel/assets/Projects-C34BWmmy.css +0 -1
- package/src/assets/web-panel/assets/Projects-fRCTrULX.js +0 -1
- package/src/assets/web-panel/assets/Row-CQ36tMlO.js +0 -1
- package/src/assets/web-panel/assets/index-BJmJfXGw.js +0 -1
- package/src/assets/web-panel/assets/index-BtBRkcWM.js +0 -1
- package/src/assets/web-panel/assets/index-C0MN4j0q.js +0 -12
- package/src/assets/web-panel/assets/index-Ca5Qc31r.js +0 -1
- package/src/assets/web-panel/assets/index-CmCovo5r.js +0 -55
- package/src/assets/web-panel/assets/index-D7yjk-E8.js +0 -3
- package/src/assets/web-panel/assets/index-DMRsx5W4.js +0 -1
- package/src/assets/web-panel/assets/index-DP7namG9.js +0 -21
- package/src/assets/web-panel/assets/index-DWSEcCO0.js +0 -1
- package/src/assets/web-panel/assets/index-D_vErh-N.js +0 -13
- package/src/assets/web-panel/assets/index-DsykGbFs.js +0 -1
- package/src/assets/web-panel/assets/index-OZ08PLpO.js +0 -1
- package/src/assets/web-panel/assets/index-QVPLcn-I.js +0 -1
- package/src/assets/web-panel/assets/responsiveObserve-DGFr293p.js +0 -1
- package/src/assets/web-panel/assets/useFlexGapSupport-CKCvqfWX.js +0 -1
|
@@ -15,6 +15,9 @@ import { startAgentRepl } from "../gateways/repl/agent-repl.js";
|
|
|
15
15
|
import { startChatRepl } from "../gateways/repl/chat-repl.js";
|
|
16
16
|
import { ChainlessChainWSServer } from "../gateways/ws/ws-server.js";
|
|
17
17
|
import { WSSessionManager } from "../gateways/ws/ws-session-gateway.js";
|
|
18
|
+
import { attachTopicHandlers } from "../gateways/ws/topic-handler-attachment.js";
|
|
19
|
+
import { PtyManager } from "../gateways/terminal/PtyManager.js";
|
|
20
|
+
import { createTerminalHandlers } from "../gateways/terminal/terminal-handlers.js";
|
|
18
21
|
import { createWebUIServer } from "../gateways/ui/web-ui-server.js";
|
|
19
22
|
import { MCPClient, MCPServerConfig } from "../harness/mcp-client.js";
|
|
20
23
|
import sharedManagedToolPolicy from "./coding-agent-managed-tool-policy.cjs";
|
|
@@ -525,6 +528,32 @@ export class AgentRuntime {
|
|
|
525
528
|
|
|
526
529
|
const actualWsPort = wsServer.port;
|
|
527
530
|
|
|
531
|
+
// Plan A remote-terminal mirror (cc ui parity with desktop web-shell):
|
|
532
|
+
// attach terminal.* topic handlers to the freshly-started server. The
|
|
533
|
+
// attachTopicHandlers helper mutates server._dispatcher to route
|
|
534
|
+
// matching topics through `terminalHandlers.handlers`, falling back to
|
|
535
|
+
// the original CLI dispatcher for everything else.
|
|
536
|
+
const wsBroadcastRef = { current: null };
|
|
537
|
+
const ptyManager = new PtyManager();
|
|
538
|
+
const terminal = createTerminalHandlers({
|
|
539
|
+
ptyManager,
|
|
540
|
+
broadcast: (frame) => wsBroadcastRef.current?.(frame),
|
|
541
|
+
});
|
|
542
|
+
const attached = attachTopicHandlers(wsServer, {
|
|
543
|
+
handlers: terminal.handlers,
|
|
544
|
+
});
|
|
545
|
+
wsBroadcastRef.current = attached.broadcast;
|
|
546
|
+
terminal.attachServerEvents();
|
|
547
|
+
// Stash for SIGINT cleanup below (PtyManager.shutdown kills all PTYs;
|
|
548
|
+
// important on Ctrl+C so node-pty children don't outlive cc ui).
|
|
549
|
+
this._terminalCleanup = () => {
|
|
550
|
+
try {
|
|
551
|
+
ptyManager.shutdown();
|
|
552
|
+
} catch {
|
|
553
|
+
/* best effort during teardown */
|
|
554
|
+
}
|
|
555
|
+
};
|
|
556
|
+
|
|
528
557
|
const httpServer = this.deps.createWebServer({
|
|
529
558
|
wsPort: actualWsPort,
|
|
530
559
|
wsToken: this.policy.token,
|
|
@@ -610,6 +639,10 @@ export class AgentRuntime {
|
|
|
610
639
|
if (mcpClient && typeof mcpClient.disconnectAll === "function") {
|
|
611
640
|
await mcpClient.disconnectAll().catch(() => undefined);
|
|
612
641
|
}
|
|
642
|
+
// Kill all PTY sessions before WS so the SPA gets clean terminal.exit
|
|
643
|
+
// frames; without this, node-pty children would outlive cc ui until
|
|
644
|
+
// their OS parent (the cc ui process) actually exits.
|
|
645
|
+
this._terminalCleanup?.();
|
|
613
646
|
await Promise.all([
|
|
614
647
|
new Promise((resolve) => httpServer.close(resolve)),
|
|
615
648
|
wsServer.stop(),
|
|
@@ -1,3 +0,0 @@
|
|
|
1
|
-
import{f as O,r as K,o as fe,x as dt,K as d,L as c,M as g,c as e,N as t,u as a,R as l,O as i,P as s,Q as C,F as V,Y as at,Z as J,S as I,I as ot,e as pt,_ as yt,w as mt,H as ft,$ as _t}from"./vendor-BVLz_z7V.js";import{u as _e,_ as ke,E as kt,a as gt,b as vt,T as ht,c as bt,d as G}from"./index-BqsvxElz.js";import{u as q}from"./useShellMode-CgR0wCYM.js";import{B as ye,R as wt,M as me,F as Y,G as ee,D as te,h as ve,i as ae,j as he,k as oe,A as be,N as we,l as $e,m as Le,n as Oe,o as Se,S as Ce,p as Ee,q as Re,r as ne,s as Ae,t as Ne,u as Te,v as je,w as Be,x as Me,y as Ie,P as Pe,z as se,K as ie,H as D,J as Ue,O as le,Q as De,U as Ke,W as ze,V as re,X as Fe,Y as Ve,Z as ce,_ as qe,$ as We,a0 as He,a1 as Je,a2 as Ge,a3 as Ye,a4 as Ze,a5 as Qe,a6 as Xe,a7 as xe,a8 as $t,a9 as et,e as Lt,aa as Ot}from"./icons-Q99MnhG8.js";import St from"./index-B_pQvbuN.js";import"./KeyCode-D63Tfrq7.js";import"./omit-BKpLUN0q.js";import"./pickAttrs-BicOrtU0.js";import"./initDefaultProps-DBQ94EVq.js";import"./motion-BAgV2nZt.js";import"./raf-Deuc0E8-.js";import"./index-Cw1VkvZr.js";import"./index-DWSEcCO0.js";import"./isVisible-C7tPsqfj.js";import"./useState-Cp5WlLTS.js";import"./devWarning-CNIS3FrJ.js";import"./warning-Pq00owYb.js";import"./compact-item-_8YefjuR.js";import"./createContext-CPZ59Zcw.js";import"./Compact-CuDFE-4P.js";import"./_getTag-BVc6NQ_K.js";import"./styleChecker-C-ldcMcB.js";import"./zoom-DR60LSPO.js";import"./ActionButton-eeaISbP3.js";import"./vnode-CW-Z-Xwr.js";const Ct=""+new URL("logo-DBCYUiWP.png",import.meta.url).href,L={notifications:K([]),unreadCount:K(0)};function Z(h){if(h&&h.ok===!1)throw new Error(h.error||"notification handler failed");return h?.result??h}function Et(){const h=_e();async function j({limit:r=50,offset:u=0,isRead:_}={}){if(!q().isEmbedded)return L.notifications.value=[],L.unreadCount.value=0,L.notifications.value;const y=await h.sendRaw({type:"notification.list",limit:r,offset:u,isRead:_},15e3),w=Z(y);if(w?.success===!1)throw new Error(w.error||"notification.list failed");return L.notifications.value=Array.isArray(w?.notifications)?w.notifications:[],await E(),L.notifications.value}async function E(){if(!q().isEmbedded)return L.unreadCount.value=0,0;const r=await h.sendRaw({type:"notification.unread-count"},1e4),u=Z(r);return L.unreadCount.value=Number(u?.count)||0,L.unreadCount.value}async function k(r){if(r==null||r==="")throw new Error("id is required");if(!q().isEmbedded)return;const u=await h.sendRaw({type:"notification.mark-read",id:r},1e4),_=Z(u);if(_?.success===!1)throw new Error(_.error||"notification.mark-read failed");const y=L.notifications.value.find(w=>w.id===r);y&&(y.is_read=1),await E()}async function S(){if(!q().isEmbedded)return;const r=await h.sendRaw({type:"notification.mark-all-read"},1e4),u=Z(r);if(u?.success===!1)throw new Error(u.error||"notification.mark-all-read failed");for(const _ of L.notifications.value)_.is_read=1;L.unreadCount.value=0}async function b(r,u=""){if(!q().isEmbedded)throw new Error("桌面通知仅在嵌入式 web-shell 中可用");const _=await h.sendRaw({type:"notification.send-desktop",title:r,body:u},1e4),y=Z(_);if(y?.success===!1)throw new Error(y.error||"notification.send-desktop failed")}return{notifications:O(()=>L.notifications.value),unreadCount:O(()=>L.unreadCount.value),refresh:j,refreshUnreadCount:E,markRead:k,markAllRead:S,sendDesktop:b}}const Rt={class:"notif-toolbar"},At={class:"notif-body"},Nt={key:2,class:"notif-list"},Tt=["onClick"],jt={class:"notif-row"},Bt={class:"notif-title"},Mt={class:"notif-time"},It={key:0,class:"notif-message"},Pt={__name:"NotificationBell",setup(h){const j=K(!1),E=K("all"),k=K(!1),{notifications:S,unreadCount:b,refresh:r,markRead:u,markAllRead:_}=Et();function y(){N()}fe(()=>{window.addEventListener("cc:open-notification-drawer",y)}),dt(()=>{window.removeEventListener("cc:open-notification-drawer",y)});const w=O(()=>E.value==="unread"?S.value.filter(m=>!m.is_read):S.value);async function R(){if(q().isEmbedded){k.value=!0;try{await r({limit:100})}catch{}finally{k.value=!1}}}async function N(){j.value=!0,await R()}async function T(m){if(!m.is_read)try{await u(m.id)}catch{}}async function $(){try{await _()}catch(m){console.warn("[NotificationBell] markAllRead failed:",m?.message||m)}}function A(m){if(!m)return"";const f=typeof m=="string"?Date.parse(m):Number(m);if(!Number.isFinite(f))return String(m);const B=Date.now()-f,z=6e4,P=60*z,W=24*P;return B<z?"刚刚":B<P?`${Math.floor(B/z)} 分钟前`:B<W?`${Math.floor(B/P)} 小时前`:new Date(f).toLocaleDateString()}return(m,f)=>{const B=d("a-badge"),z=d("a-tooltip"),P=d("a-radio-button"),W=d("a-radio-group"),H=d("a-space"),Q=d("a-button"),ue=d("a-empty"),de=d("a-spin"),pe=d("a-drawer");return c(),g(V,null,[e(z,{title:"通知"},{default:t(()=>[e(B,{count:a(b),"overflow-count":99,offset:[-4,4]},{default:t(()=>[l("button",{type:"button",class:"notif-bell-btn","aria-label":"通知",onClick:N},[e(a(ye))])]),_:1},8,["count"])]),_:1}),e(pe,{open:j.value,"onUpdate:open":f[1]||(f[1]=v=>j.value=v),title:"通知中心",placement:"right",width:400,"body-style":{padding:0}},{default:t(()=>[l("div",Rt,[e(H,null,{default:t(()=>[e(W,{value:E.value,"onUpdate:value":f[0]||(f[0]=v=>E.value=v),size:"small","button-style":"solid"},{default:t(()=>[e(P,{value:"all"},{default:t(()=>[i("全部 ("+s(a(S).length)+")",1)]),_:1}),e(P,{value:"unread"},{default:t(()=>[i("未读 ("+s(a(b))+")",1)]),_:1})]),_:1},8,["value"])]),_:1}),e(H,null,{default:t(()=>[e(Q,{size:"small",loading:k.value,onClick:R},{icon:t(()=>[e(a(wt))]),_:1},8,["loading"]),e(Q,{size:"small",disabled:a(b)===0,onClick:$},{default:t(()=>[...f[2]||(f[2]=[i(" 全部已读 ",-1)])]),_:1},8,["disabled"])]),_:1})]),l("div",At,[!k.value&&w.value.length===0?(c(),C(ue,{key:0,description:"暂无通知",image:a(kt).PRESENTED_IMAGE_SIMPLE,style:{padding:"60px 0"}},null,8,["image"])):k.value?(c(),C(de,{key:1,style:{display:"block",padding:"60px"}})):(c(),g("ul",Nt,[(c(!0),g(V,null,at(w.value,v=>(c(),g("li",{key:v.id,class:J(["notif-item",{unread:!v.is_read}]),onClick:n=>T(v)},[l("div",jt,[l("div",Bt,s(v.title||v.message||"(无标题)"),1),l("span",Mt,s(A(v.created_at)),1)]),v.message&&v.title?(c(),g("div",It,s(v.message),1)):I("",!0)],10,Tt))),128))]))])]),_:1},8,["open"])],64)}}},Ut=ke(Pt,[["__scopeId","data-v-af539070"]]),Dt={key:0,class:"mbh-count"},Kt={__name:"MobileBridgeHeaderStatus",setup(h){function j(R){if(!R)return[];try{return JSON.parse(R)}catch{}const N=String(R).split(`
|
|
2
|
-
`),T=N.findIndex($=>{const A=$.trim();if(!A)return!1;const m=A[0];if(m!=="["&&m!=="{")return!1;if(A.length===1)return!0;const f=A[1];return!(f>="A"&&f<="Z"||f>="a"&&f<="z")});if(T<0)return[];for(let $=N.length-1;$>=T;$--){const A=N[$].trim();if(/^[\]\}]/.test(A)&&!/^[\]\}][A-Za-z]/.test(A))try{return JSON.parse(N.slice(T,$+1).join(`
|
|
3
|
-
`))}catch{return[]}}return[]}const E=ot(),k=_e(),S=K([]);let b=null;const r=O(()=>S.value.length),u=O(()=>r.value===0?"var(--text-muted, #999)":"#52c41a"),_=O(()=>r.value===0?"尚未配对任何手机 — 点击进入配对":`已配对 ${r.value} 台手机 — 点击进入管理`);async function y(){if(k.status==="connected")try{const{output:R}=await k.execute("p2p devices --type mobile --json",1e4);S.value=j(R)||[]}catch{}}function w(){E.push("/mobile-bridge")}return fe(()=>{y(),b=setInterval(y,5e3)}),pt(()=>{b&&(clearInterval(b),b=null)}),(R,N)=>{const T=d("a-badge"),$=d("a-tooltip");return c(),C($,{title:_.value},{default:t(()=>[e(T,{count:r.value,"show-zero":!1,"overflow-count":9,offset:[-2,4]},{default:t(()=>[l("button",{type:"button",class:J(["mbh-btn",{"mbh-btn--active":r.value>0}]),onClick:w},[e(a(me),{style:yt({color:u.value,fontSize:"14px"})},null,8,["style"]),r.value>0?(c(),g("span",Dt,s(r.value),1)):I("",!0)],2)]),_:1},8,["count"])]),_:1},8,["title"])}}},zt=ke(Kt,[["__scopeId","data-v-05eb475d"]]),Ft=["src"],Vt={key:0,class:"logo-text"},qt={key:0,class:"mode-banner project"},Wt={class:"banner-info"},Ht={class:"banner-name"},Jt={class:"banner-sub"},Gt={key:1,class:"mode-banner global"},Yt={class:"banner-name"},Zt=["title"],Qt={class:"group-label"},Xt={class:"group-label"},xt={class:"group-label"},ea={class:"group-label"},ta={class:"group-label"},aa={class:"group-label"},oa={class:"group-label"},na={class:"group-label"},sa={class:"group-label"},ia={key:0,class:"footer-text"},la={class:"header-left"},ra={class:"header-right"},ca={class:"theme-switcher"},ua=["data-theme-key","onClick"],da=["data-locale"],pa={class:"lang-switch-label"},ya={class:"version-tag"},tt="cc.web-panel.sidebar.openKeys",ma={__name:"AppLayout",setup(h){const j=ot(),E=ft(),k=_e(),S=gt(),{t:b}=vt(),r=q(),u=K(!1),_=window.__CC_CONFIG__||{},y=O(()=>_.mode==="project"),w="v5.0.3.50",R=O(()=>S.current),N=O(()=>S.config.vars["--menu-mode"]),T=O(()=>{const n=E.name?.toLowerCase()||"dashboard";return[{mcptools:"mcp",quickask:"quick-ask",ukeysign:"ukey-sign"}[n]||n]}),$=["g-overview","g-config","g-data","g-advanced","g-enterprise","g-social","g-media","g-extension"];function A(){try{const n=localStorage.getItem(tt);if(n){const p=JSON.parse(n);if(Array.isArray(p))return p.filter(o=>$.includes(o))}}catch{}return[...$]}const m=K(A());mt(m,n=>{try{localStorage.setItem(tt,JSON.stringify(n))}catch{}},{deep:!0});const f=O(()=>k.status),B=O(()=>({connected:"success",connecting:"processing",error:"error",disconnected:"default"})[k.status]||"default"),z=O(()=>{const n=`appLayout.footerStatus.${k.status}`,p=b(n);return p===n?b("appLayout.footerStatus.unknown"):p});function P(n){S.setTheme(n)}const{current:W,supported:H,setLocale:Q}=bt();function ue(){const n=H[(H.indexOf(W.value)+1)%H.length];Q(n)}async function de(n){try{const p=await k.sendRaw({type:"window.open",role:n},1e4);if(p?.ok===!1){G.error(`打开失败:${p.error||"未知"}`);return}const o=p?.result??p;o?.reason==="role_reserved"?G.warning("该窗口角色被保留"):o?.reason}catch(p){G.error(`打开桌面窗口失败:${p.message||p}`)}}async function pe(){St.confirm({title:"切换到桌面壳?",content:"回到 V5/V6 桌面壳。完整 electronAPI 表面(UKey 硬件 / 原生对话框 / 系统设置等)会重新可用,但失去 web-panel 的 SPA 体验。保存后需要重启应用才生效。",okText:"切换并重启",cancelText:"取消",centered:!0,async onOk(){try{const n=await k.sendRaw({type:"shell.switch",target:"desktop"},5e3);if(n?.ok===!1)throw new Error(n.error||"shell.switch returned failure");G.loading({content:"正在重启…",duration:0})}catch(n){const p=n instanceof Error?n.message:String(n);G.error("切换失败:"+p)}}})}function v({key:n}){if(typeof n=="string"&&n.startsWith("desktop:")){de(n);return}j.push({mcp:"/mcp"}[n]||`/${n}`)}return fe(()=>k.connect()),(n,p)=>{const o=d("a-menu-item"),M=d("a-sub-menu"),F=d("a-menu-divider"),nt=d("a-menu"),st=d("a-badge"),it=d("a-layout-sider"),X=d("a-tooltip"),lt=d("a-tag"),rt=d("a-layout-header"),ct=d("router-view"),ut=d("a-layout-content"),ge=d("a-layout");return c(),C(ge,{class:"app-root"},{default:t(()=>[e(it,{collapsed:u.value,"onUpdate:collapsed":p[2]||(p[2]=U=>u.value=U),collapsible:"","collapsed-width":56,width:216,class:"sidebar"},{default:t(()=>[l("div",{class:J(["logo",{collapsed:u.value}])},[l("img",{src:a(Ct),alt:"ChainlessChain",class:"logo-icon"},null,8,Ft),u.value?I("",!0):(c(),g("span",Vt,"ChainlessChain"))],2),u.value?(c(),g("div",{key:1,class:"mode-icon-sm",title:y.value?a(_).projectName:n.$t("appLayout.scope.global")},[y.value?(c(),C(a(Y),{key:0,style:{color:"#1677ff"}})):(c(),C(a(ee),{key:1,style:{color:"#722ed1"}}))],8,Zt)):(c(),g(V,{key:0},[y.value?(c(),g("div",qt,[e(a(Y),{class:"banner-icon"}),l("div",Wt,[l("div",Ht,s(a(_).projectName||n.$t("appLayout.scope.fallbackProject")),1),l("div",Jt,s(n.$t("appLayout.scope.projectPanel")),1)])])):(c(),g("div",Gt,[e(a(ee),{class:"banner-icon"}),l("span",Yt,s(n.$t("appLayout.scope.global")),1)]))],64)),e(nt,{selectedKeys:T.value,"onUpdate:selectedKeys":p[0]||(p[0]=U=>T.value=U),openKeys:m.value,"onUpdate:openKeys":p[1]||(p[1]=U=>m.value=U),theme:N.value,mode:"inline","inline-collapsed":u.value,class:"side-menu",onClick:v},{default:t(()=>[u.value?(c(),g(V,{key:1},[e(o,{key:"dashboard"},{icon:t(()=>[e(a(te))]),_:1}),e(o,{key:"chat"},{icon:t(()=>[e(a(ve))]),_:1}),e(o,{key:"quick-ask"},{icon:t(()=>[e(a(ae))]),_:1}),e(o,{key:"cowork"},{icon:t(()=>[e(a(he))]),_:1}),e(o,{key:"services"},{icon:t(()=>[e(a(oe))]),_:1}),e(o,{key:"aiops"},{icon:t(()=>[e(a(be))]),_:1}),e(o,{key:"tokens"},{icon:t(()=>[e(a(we))]),_:1}),e(o,{key:"logs"},{icon:t(()=>[e(a($e))]),_:1}),e(F,{class:"divider-sm"}),e(o,{key:"skills"},{icon:t(()=>[e(a(Le))]),_:1}),e(o,{key:"providers"},{icon:t(()=>[e(a(Oe))]),_:1}),e(o,{key:"mcp"},{icon:t(()=>[e(a(Se))]),_:1}),e(o,{key:"project-settings"},{icon:t(()=>[e(a(Y))]),_:1}),e(o,{key:"speech-settings"},{icon:t(()=>[e(a(Ce))]),_:1}),e(o,{key:"notification-settings"},{icon:t(()=>[e(a(ye))]),_:1}),e(o,{key:"sync-settings"},{icon:t(()=>[e(a(Ee))]),_:1}),e(o,{key:"nlprog"},{icon:t(()=>[e(a(Re))]),_:1}),e(o,{key:"codegen"},{icon:t(()=>[e(a(ne))]),_:1}),e(F,{class:"divider-sm"}),e(o,{key:"notes"},{icon:t(()=>[e(a(Ae))]),_:1}),e(o,{key:"search"},{icon:t(()=>[e(a(Ne))]),_:1}),e(o,{key:"memory"},{icon:t(()=>[e(a(Te))]),_:1}),e(o,{key:"knowledge"},{icon:t(()=>[e(a(je))]),_:1}),e(o,{key:"marketplace"},{icon:t(()=>[e(a(Be))]),_:1}),e(o,{key:"cron"},{icon:t(()=>[e(a(Me))]),_:1}),e(o,{key:"workflow"},{icon:t(()=>[e(a(Ie))]),_:1}),e(o,{key:"pipeline"},{icon:t(()=>[e(a(Pe))]),_:1}),e(o,{key:"tasks"},{icon:t(()=>[e(a(ae))]),_:1}),e(F,{class:"divider-sm"}),e(o,{key:"security"},{icon:t(()=>[e(a(se))]),_:1}),e(o,{key:"ukey-sign"},{icon:t(()=>[e(a(ie))]),_:1}),e(o,{key:"trust"},{icon:t(()=>[e(a(D))]),_:1}),e(o,{key:"audit"},{icon:t(()=>[e(a(Ue))]),_:1}),e(o,{key:"mtc"},{icon:t(()=>[e(a(D))]),_:1}),e(o,{key:"mtc-audit"},{icon:t(()=>[e(a(D))]),_:1}),e(o,{key:"multisig"},{icon:t(()=>[e(a(le))]),_:1}),e(o,{key:"did"},{icon:t(()=>[e(a(De))]),_:1}),e(o,{key:"permissions"},{icon:t(()=>[e(a(Ke))]),_:1}),e(o,{key:"p2p"},{icon:t(()=>[e(a(ze))]),_:1}),e(o,{key:"mobile-bridge"},{icon:t(()=>[e(a(me))]),_:1}),e(o,{key:"backup"},{icon:t(()=>[e(a(re))]),_:1}),e(o,{key:"git"},{icon:t(()=>[e(a(ne))]),_:1}),e(o,{key:"projects"},{icon:t(()=>[e(a(Fe))]),_:1}),e(o,{key:"crosschain"},{icon:t(()=>[e(a(Ve))]),_:1}),e(o,{key:"compliance"},{icon:t(()=>[e(a(D))]),_:1}),e(o,{key:"privacy"},{icon:t(()=>[e(a(ce))]),_:1}),e(o,{key:"inference"},{icon:t(()=>[e(a(qe))]),_:1}),e(o,{key:"federation"},{icon:t(()=>[e(a(We))]),_:1}),e(F,{class:"divider-sm"}),e(o,{key:"wallet"},{icon:t(()=>[e(a(He))]),_:1}),e(o,{key:"organization"},{icon:t(()=>[e(a(le))]),_:1}),e(o,{key:"tenant"},{icon:t(()=>[e(a(Je))]),_:1}),e(o,{key:"sla"},{icon:t(()=>[e(a(te))]),_:1}),e(o,{key:"analytics"},{icon:t(()=>[e(a(Ge))]),_:1}),e(o,{key:"templates"},{icon:t(()=>[e(a(Ye))]),_:1}),e(F,{class:"divider-sm"}),e(o,{key:"community"},{icon:t(()=>[e(a(Ze))]),_:1}),e(o,{key:"governance"},{icon:t(()=>[e(a(Qe))]),_:1}),e(o,{key:"reputation"},{icon:t(()=>[e(a(Xe))]),_:1}),e(o,{key:"recommend"},{icon:t(()=>[e(a(xe))]),_:1}),e(F,{class:"divider-sm"}),e(o,{key:"rssfeed"},{icon:t(()=>[e(a(et))]),_:1}),e(o,{key:"webauthn"},{icon:t(()=>[e(a(ie))]),_:1}),a(r).isEmbedded?(c(),g(V,{key:0},[e(F,{class:"divider-sm"}),e(o,{key:"desktop:hardware-wallet"},{icon:t(()=>[e(a(se))]),_:1}),e(o,{key:"desktop:backup-dashboard"},{icon:t(()=>[e(a(re))]),_:1}),e(o,{key:"desktop:llm-test-chat"},{icon:t(()=>[e(a(ce))]),_:1}),e(o,{key:"desktop:settings"},{icon:t(()=>[e(a(oe))]),_:1})],64)):I("",!0)],64)):(c(),g(V,{key:0},[e(M,{key:"g-overview"},{title:t(()=>[l("span",Qt,s(n.$t("appLayout.groups.overview")),1)]),default:t(()=>[e(o,{key:"dashboard"},{icon:t(()=>[e(a(te))]),default:t(()=>[i(s(n.$t("appLayout.items.dashboard")),1)]),_:1}),e(o,{key:"chat"},{icon:t(()=>[e(a(ve))]),default:t(()=>[i(s(n.$t("appLayout.items.chat")),1)]),_:1}),e(o,{key:"quick-ask"},{icon:t(()=>[e(a(ae))]),default:t(()=>[i(s(n.$t("appLayout.items.quickAsk")),1)]),_:1}),e(o,{key:"cowork"},{icon:t(()=>[e(a(he))]),default:t(()=>[i(s(n.$t("appLayout.items.cowork")),1)]),_:1}),e(o,{key:"services"},{icon:t(()=>[e(a(oe))]),default:t(()=>[i(s(n.$t("appLayout.items.services")),1)]),_:1}),e(o,{key:"aiops"},{icon:t(()=>[e(a(be))]),default:t(()=>[i(s(n.$t("appLayout.items.aiops")),1)]),_:1}),e(o,{key:"tokens"},{icon:t(()=>[e(a(we))]),default:t(()=>[i(s(n.$t("appLayout.items.tokens")),1)]),_:1}),e(o,{key:"logs"},{icon:t(()=>[e(a($e))]),default:t(()=>[i(s(n.$t("appLayout.items.logs")),1)]),_:1})]),_:1}),e(M,{key:"g-config"},{title:t(()=>[l("span",Xt,s(n.$t("appLayout.groups.config")),1)]),default:t(()=>[e(o,{key:"skills"},{icon:t(()=>[e(a(Le))]),default:t(()=>[i(s(n.$t("appLayout.items.skills")),1)]),_:1}),e(o,{key:"providers"},{icon:t(()=>[e(a(Oe))]),default:t(()=>[i(s(n.$t("appLayout.items.providers")),1)]),_:1}),e(o,{key:"mcp"},{icon:t(()=>[e(a(Se))]),default:t(()=>[i(s(n.$t("appLayout.items.mcp")),1)]),_:1}),e(o,{key:"project-settings"},{icon:t(()=>[e(a(Y))]),default:t(()=>[i(s(n.$t("appLayout.items.projectSettings")),1)]),_:1}),e(o,{key:"speech-settings"},{icon:t(()=>[e(a(Ce))]),default:t(()=>[i(s(n.$t("appLayout.items.speechSettings")),1)]),_:1}),e(o,{key:"notification-settings"},{icon:t(()=>[e(a(ye))]),default:t(()=>[i(s(n.$t("appLayout.items.notificationSettings")),1)]),_:1}),e(o,{key:"sync-settings"},{icon:t(()=>[e(a(Ee))]),default:t(()=>[i(s(n.$t("appLayout.items.syncSettings")),1)]),_:1}),e(o,{key:"nlprog"},{icon:t(()=>[e(a(Re))]),default:t(()=>[i(s(n.$t("appLayout.items.nlprog")),1)]),_:1}),e(o,{key:"codegen"},{icon:t(()=>[e(a(ne))]),default:t(()=>[i(s(n.$t("appLayout.items.codegen")),1)]),_:1})]),_:1}),e(M,{key:"g-data"},{title:t(()=>[l("span",xt,s(n.$t("appLayout.groups.data")),1)]),default:t(()=>[e(o,{key:"notes"},{icon:t(()=>[e(a(Ae))]),default:t(()=>[i(s(n.$t("appLayout.items.notes")),1)]),_:1}),e(o,{key:"search"},{icon:t(()=>[e(a(Ne))]),default:t(()=>[i(s(n.$t("appLayout.items.search")),1)]),_:1}),e(o,{key:"memory"},{icon:t(()=>[e(a(Te))]),default:t(()=>[i(s(n.$t("appLayout.items.memory")),1)]),_:1}),e(o,{key:"knowledge"},{icon:t(()=>[e(a(je))]),default:t(()=>[i(s(n.$t("appLayout.items.knowledge")),1)]),_:1}),e(o,{key:"marketplace"},{icon:t(()=>[e(a(Be))]),default:t(()=>[i(s(n.$t("appLayout.items.marketplace")),1)]),_:1}),e(o,{key:"cron"},{icon:t(()=>[e(a(Me))]),default:t(()=>[i(s(n.$t("appLayout.items.cron")),1)]),_:1}),e(o,{key:"workflow"},{icon:t(()=>[e(a(Ie))]),default:t(()=>[i(s(n.$t("appLayout.items.workflow")),1)]),_:1}),e(o,{key:"pipeline"},{icon:t(()=>[e(a(Pe))]),default:t(()=>[i(s(n.$t("appLayout.items.pipeline")),1)]),_:1}),e(o,{key:"tasks"},{icon:t(()=>[e(a(ae))]),default:t(()=>[i(s(n.$t("appLayout.items.tasks")),1)]),_:1})]),_:1}),e(M,{key:"g-advanced"},{title:t(()=>[l("span",ea,s(n.$t("appLayout.groups.advanced")),1)]),default:t(()=>[e(o,{key:"security"},{icon:t(()=>[e(a(se))]),default:t(()=>[i(s(n.$t("appLayout.items.security")),1)]),_:1}),e(o,{key:"ukey-sign"},{icon:t(()=>[e(a(ie))]),default:t(()=>[i(s(n.$t("appLayout.items.ukeySign")),1)]),_:1}),e(o,{key:"trust"},{icon:t(()=>[e(a(D))]),default:t(()=>[i(s(n.$t("appLayout.items.trust")),1)]),_:1}),e(o,{key:"audit"},{icon:t(()=>[e(a(Ue))]),default:t(()=>[i(s(n.$t("appLayout.items.audit")),1)]),_:1}),e(o,{key:"mtc"},{icon:t(()=>[e(a(D))]),default:t(()=>[i(s(n.$t("appLayout.items.mtc")),1)]),_:1}),e(o,{key:"mtc-audit"},{icon:t(()=>[e(a(D))]),default:t(()=>[i(s(n.$t("appLayout.items.mtcAudit","MTC 审计")),1)]),_:1}),e(o,{key:"multisig"},{icon:t(()=>[e(a(le))]),default:t(()=>[i(s(n.$t("appLayout.items.multisig","M-of-N 多签")),1)]),_:1}),e(o,{key:"did"},{icon:t(()=>[e(a(De))]),default:t(()=>[i(s(n.$t("appLayout.items.did")),1)]),_:1}),e(o,{key:"permissions"},{icon:t(()=>[e(a(Ke))]),default:t(()=>[i(s(n.$t("appLayout.items.permissions")),1)]),_:1}),e(o,{key:"p2p"},{icon:t(()=>[e(a(ze))]),default:t(()=>[i(s(n.$t("appLayout.items.p2p")),1)]),_:1}),e(o,{key:"mobile-bridge"},{icon:t(()=>[e(a(me))]),default:t(()=>[i(s(n.$t("appLayout.items.mobileBridge","移动桥")),1)]),_:1}),e(o,{key:"backup"},{icon:t(()=>[e(a(re))]),default:t(()=>[i(s(n.$t("appLayout.items.backup")),1)]),_:1}),e(o,{key:"git"},{icon:t(()=>[e(a(ne))]),default:t(()=>[i(s(n.$t("appLayout.items.git")),1)]),_:1}),e(o,{key:"projects"},{icon:t(()=>[e(a(Fe))]),default:t(()=>[i(s(n.$t("appLayout.items.projects")),1)]),_:1}),e(o,{key:"crosschain"},{icon:t(()=>[e(a(Ve))]),default:t(()=>[i(s(n.$t("appLayout.items.crosschain")),1)]),_:1}),e(o,{key:"compliance"},{icon:t(()=>[e(a(D))]),default:t(()=>[i(s(n.$t("appLayout.items.compliance")),1)]),_:1}),e(o,{key:"privacy"},{icon:t(()=>[e(a(ce))]),default:t(()=>[i(s(n.$t("appLayout.items.privacy")),1)]),_:1}),e(o,{key:"inference"},{icon:t(()=>[e(a(qe))]),default:t(()=>[i(s(n.$t("appLayout.items.inference")),1)]),_:1}),e(o,{key:"federation"},{icon:t(()=>[e(a(We))]),default:t(()=>[i(s(n.$t("appLayout.items.federation")),1)]),_:1})]),_:1}),e(M,{key:"g-enterprise"},{title:t(()=>[l("span",ta,s(n.$t("appLayout.groups.enterprise")),1)]),default:t(()=>[e(o,{key:"wallet"},{icon:t(()=>[e(a(He))]),default:t(()=>[i(s(n.$t("appLayout.items.wallet")),1)]),_:1}),e(o,{key:"organization"},{icon:t(()=>[e(a(le))]),default:t(()=>[i(s(n.$t("appLayout.items.organization")),1)]),_:1}),e(o,{key:"tenant"},{icon:t(()=>[e(a(Je))]),default:t(()=>[i(s(n.$t("appLayout.items.tenant")),1)]),_:1}),e(o,{key:"sla"},{icon:t(()=>[e(a(te))]),default:t(()=>[i(s(n.$t("appLayout.items.sla")),1)]),_:1}),e(o,{key:"analytics"},{icon:t(()=>[e(a(Ge))]),default:t(()=>[i(s(n.$t("appLayout.items.analytics")),1)]),_:1}),e(o,{key:"templates"},{icon:t(()=>[e(a(Ye))]),default:t(()=>[i(s(n.$t("appLayout.items.templates")),1)]),_:1})]),_:1}),e(M,{key:"g-social"},{title:t(()=>[l("span",aa,s(n.$t("appLayout.groups.social")),1)]),default:t(()=>[e(o,{key:"community"},{icon:t(()=>[e(a(Ze))]),default:t(()=>[i(s(n.$t("appLayout.items.community")),1)]),_:1}),e(o,{key:"governance"},{icon:t(()=>[e(a(Qe))]),default:t(()=>[i(s(n.$t("appLayout.items.governance")),1)]),_:1}),e(o,{key:"reputation"},{icon:t(()=>[e(a(Xe))]),default:t(()=>[i(s(n.$t("appLayout.items.reputation")),1)]),_:1}),e(o,{key:"recommend"},{icon:t(()=>[e(a(xe))]),default:t(()=>[i(s(n.$t("appLayout.items.recommend")),1)]),_:1})]),_:1}),e(M,{key:"g-media"},{title:t(()=>[l("span",oa,s(n.$t("appLayout.groups.media")),1)]),default:t(()=>[e(o,{key:"video"},{icon:t(()=>[e(a($t))]),default:t(()=>[i(s(n.$t("appLayout.items.video")),1)]),_:1})]),_:1}),e(M,{key:"g-extension"},{title:t(()=>[l("span",na,s(n.$t("appLayout.groups.extension")),1)]),default:t(()=>[e(o,{key:"rssfeed"},{icon:t(()=>[e(a(et))]),default:t(()=>[i(s(n.$t("appLayout.items.rssfeed")),1)]),_:1}),e(o,{key:"webauthn"},{icon:t(()=>[e(a(ie))]),default:t(()=>[i(s(n.$t("appLayout.items.webauthn")),1)]),_:1})]),_:1}),a(r).isEmbedded?(c(),C(M,{key:"g-desktop"},{title:t(()=>[l("span",sa,s(n.$t("appLayout.groups.desktop")),1)]),default:t(()=>[e(o,{key:"desktop:hardware-wallet"},{icon:t(()=>[e(a(se))]),default:t(()=>[i(s(n.$t("appLayout.items.desktopHardware")),1)]),_:1}),e(o,{key:"desktop:backup-dashboard"},{icon:t(()=>[e(a(re))]),default:t(()=>[i(s(n.$t("appLayout.items.desktopBackup")),1)]),_:1}),e(o,{key:"desktop:llm-test-chat"},{icon:t(()=>[e(a(ce))]),default:t(()=>[i(s(n.$t("appLayout.items.desktopLlmTest")),1)]),_:1}),e(o,{key:"desktop:settings"},{icon:t(()=>[e(a(oe))]),default:t(()=>[i(s(n.$t("appLayout.items.desktopSettings")),1)]),_:1})]),_:1})):I("",!0)],64))]),_:1},8,["selectedKeys","openKeys","theme","inline-collapsed"]),l("div",{class:J(["sidebar-footer",{collapsed:u.value}])},[e(st,{status:B.value},null,8,["status"]),u.value?I("",!0):(c(),g("span",ia,s(z.value),1))],2)]),_:1},8,["collapsed"]),e(ge,{class:"main-area"},{default:t(()=>[e(rt,{class:"app-header"},{default:t(()=>[l("div",la,[l("div",{class:J(["scope-tag",y.value?"project":"global"])},[(c(),C(_t(y.value?a(Y):a(ee)))),l("span",null,s(y.value?a(_).projectName||n.$t("appLayout.scope.fallbackProject"):n.$t("appLayout.scope.global")),1),y.value&&a(_).projectRoot?(c(),C(X,{key:0,title:a(_).projectRoot},{default:t(()=>[e(a(Lt),{class:"info-icon"})]),_:1},8,["title"])):I("",!0)],2)]),l("div",ra,[l("div",ca,[(c(!0),g(V,null,at(a(ht),(U,x)=>(c(),C(X,{key:x,title:U.label},{default:t(()=>[l("button",{class:J(["theme-btn",{active:R.value===x}]),"data-theme-key":x,onClick:fa=>P(x)},s(U.icon),11,ua)]),_:2},1032,["title"]))),128))]),e(X,{title:n.$t("language.label")},{default:t(()=>[l("button",{class:"lang-switch-btn","data-locale":a(W),onClick:ue},[e(a(ee),{class:"lang-switch-icon"}),l("span",pa,s(n.$t("language.switch")),1)],8,da)]),_:1},8,["title"]),e(zt),a(r).isEmbedded?(c(),C(Ut,{key:0})):I("",!0),l("span",ya,s(a(w)),1),a(r).isEmbedded?(c(),C(X,{key:1,title:n.$t("appLayout.shellSwitch")},{default:t(()=>[l("button",{type:"button",class:"shell-switch-btn",onClick:pe},[e(a(Ot))])]),_:1},8,["title"])):I("",!0),e(lt,{color:f.value==="connected"?"green":f.value==="connecting"?"orange":"red",class:"ws-tag"},{default:t(()=>[i(s(f.value==="connected"?n.$t("appLayout.wsStatus.connected"):f.value==="connecting"?n.$t("appLayout.wsStatus.connecting"):n.$t("appLayout.wsStatus.disconnected")),1)]),_:1},8,["color"])])]),_:1}),e(ut,{class:"page-content"},{default:t(()=>[e(ct)]),_:1})]),_:1})]),_:1})}}},za=ke(ma,[["__scopeId","data-v-bc1f16e9"]]);export{za as default};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{P as s,e as f}from"./index-BqsvxElz.js";import{d as w,c as O,s as h,w as k,f as b,r as S}from"./vendor-BVLz_z7V.js";var z=function(n,u){var o={};for(var t in n)Object.prototype.hasOwnProperty.call(n,t)&&u.indexOf(t)<0&&(o[t]=n[t]);if(n!=null&&typeof Object.getOwnPropertySymbols=="function")for(var r=0,t=Object.getOwnPropertySymbols(n);r<t.length;r++)u.indexOf(t[r])<0&&Object.prototype.propertyIsEnumerable.call(n,t[r])&&(o[t[r]]=n[t[r]]);return o};const K=w({compatConfig:{MODE:3},props:{disabled:s.looseBool,type:s.string,value:s.any,tag:{type:String,default:"input"},size:s.string,onChange:Function,onInput:Function,onBlur:Function,onFocus:Function,onKeydown:Function,onCompositionstart:Function,onCompositionend:Function,onKeyup:Function,onPaste:Function,onMousedown:Function},emits:["change","input","blur","keydown","focus","compositionstart","compositionend","keyup","paste","mousedown"],setup(n,u){let{expose:o}=u;const t=h(null);return o({focus:()=>{t.value&&t.value.focus()},blur:()=>{t.value&&t.value.blur()},input:t,setSelectionRange:(l,c,d)=>{var v;(v=t.value)===null||v===void 0||v.setSelectionRange(l,c,d)},select:()=>{var l;(l=t.value)===null||l===void 0||l.select()},getSelectionStart:()=>{var l;return(l=t.value)===null||l===void 0?void 0:l.selectionStart},getSelectionEnd:()=>{var l;return(l=t.value)===null||l===void 0?void 0:l.selectionEnd},getScrollTop:()=>{var l;return(l=t.value)===null||l===void 0?void 0:l.scrollTop}}),()=>{const{tag:l,value:c}=n,d=z(n,["tag","value"]);return O(l,f(f({},d),{},{ref:t,value:c}),null)}}});function D(n){const u=n.getBoundingClientRect(),o=document.documentElement;return{left:u.left+(window.scrollX||o.scrollLeft)-(o.clientLeft||document.body.clientLeft||0),top:u.top+(window.scrollY||o.scrollTop)-(o.clientTop||document.body.clientTop||0)}}function N(n){return Array.prototype.slice.apply(n).map(o=>`${o}: ${n.getPropertyValue(o)};`).join("")}function M(n){return Object.keys(n).reduce((u,o)=>{const t=n[o];return typeof t>"u"||t===null||(u+=`${o}: ${n[o]};`),u},"")}var $=function(n,u){var o={};for(var t in n)Object.prototype.hasOwnProperty.call(n,t)&&u.indexOf(t)<0&&(o[t]=n[t]);if(n!=null&&typeof Object.getOwnPropertySymbols=="function")for(var r=0,t=Object.getOwnPropertySymbols(n);r<t.length;r++)u.indexOf(t[r])<0&&Object.prototype.propertyIsEnumerable.call(n,t[r])&&(o[t[r]]=n[t[r]]);return o};const A=w({compatConfig:{MODE:3},inheritAttrs:!1,props:{disabled:s.looseBool,type:s.string,value:s.any,lazy:s.bool.def(!0),tag:{type:String,default:"input"},size:s.string,style:s.oneOfType([String,Object]),class:s.string},emits:["change","input","blur","keydown","focus","compositionstart","compositionend","keyup","paste","mousedown"],setup(n,u){let{emit:o,attrs:t,expose:r}=u;const a=h(null),y=S(),i=S(!1);k([()=>n.value,i],()=>{i.value||(y.value=n.value)},{immediate:!0});const l=e=>{o("change",e)},c=e=>{i.value=!0,e.target.composing=!0,o("compositionstart",e)},d=e=>{i.value=!1,e.target.composing=!1,o("compositionend",e);const p=document.createEvent("HTMLEvents");p.initEvent("input",!0,!0),e.target.dispatchEvent(p),l(e)},v=e=>{if(i.value&&n.lazy){y.value=e.target.value;return}o("input",e)},_=e=>{o("blur",e)},C=e=>{o("focus",e)},E=()=>{a.value&&a.value.focus()},P=()=>{a.value&&a.value.blur()},j=e=>{o("keydown",e)},F=e=>{o("keyup",e)},T=(e,p,g)=>{var m;(m=a.value)===null||m===void 0||m.setSelectionRange(e,p,g)},B=()=>{var e;(e=a.value)===null||e===void 0||e.select()};r({focus:E,blur:P,input:b(()=>{var e;return(e=a.value)===null||e===void 0?void 0:e.input}),setSelectionRange:T,select:B,getSelectionStart:()=>{var e;return(e=a.value)===null||e===void 0?void 0:e.getSelectionStart()},getSelectionEnd:()=>{var e;return(e=a.value)===null||e===void 0?void 0:e.getSelectionEnd()},getScrollTop:()=>{var e;return(e=a.value)===null||e===void 0?void 0:e.getScrollTop()}});const R=e=>{o("mousedown",e)},x=e=>{o("paste",e)},I=b(()=>n.style&&typeof n.style!="string"?M(n.style):n.style);return()=>{const{style:e,lazy:p}=n,g=$(n,["style","lazy"]);return O(K,f(f(f({},g),t),{},{style:I.value,onInput:v,onChange:l,onBlur:_,onFocus:C,ref:a,value:y.value,onCompositionstart:c,onCompositionend:d,onKeyup:F,onKeydown:j,onPaste:x,onMousedown:R}),null)}}});export{A as B,D as g,N as s};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{k,h,p as j,I as D,e as I,F as S,P as v,N as y}from"./index-BqsvxElz.js";import{c as N}from"./createContext-CPZ59Zcw.js";import{i as A,a as O,b as T,c as _,d as F,g as L,e as w,f as B}from"./_getTag-BVc6NQ_K.js";import{f as s,d as g,c as b}from"./vendor-BVLz_z7V.js";const E=t=>{const{componentCls:o}=t;return{[o]:{display:"inline-flex","&-block":{display:"flex",width:"100%"},"&-vertical":{flexDirection:"column"}}}},H=t=>{const{componentCls:o}=t;return{[o]:{display:"inline-flex","&-rtl":{direction:"rtl"},"&-vertical":{flexDirection:"column"},"&-align":{flexDirection:"column","&-center":{alignItems:"center"},"&-start":{alignItems:"flex-start"},"&-end":{alignItems:"flex-end"},"&-baseline":{alignItems:"baseline"}},[`${o}-item`]:{"&:empty":{display:"none"}}}}},K=k("Space",t=>[H(t),E(t)]);var M="[object Map]",R="[object Set]",V=Object.prototype,q=V.hasOwnProperty;function x(t){if(t==null)return!0;if(A(t)&&(O(t)||typeof t=="string"||typeof t.splice=="function"||T(t)||_(t)||F(t)))return!t.length;var o=L(t);if(o==M||o==R)return!t.size;if(w(t))return!B(t).length;for(var e in t)if(q.call(t,e))return!1;return!0}const G=()=>({compactSize:String,compactDirection:v.oneOf(y("horizontal","vertical")).def("horizontal"),isFirstItem:S(),isLastItem:S()}),i=N(null),Z=(t,o)=>{const e=i.useInject(),a=s(()=>{if(!e||x(e))return"";const{compactDirection:r,isFirstItem:l,isLastItem:n}=e,c=r==="vertical"?"-vertical-":"-";return h({[`${t.value}-compact${c}item`]:!0,[`${t.value}-compact${c}first-item`]:l,[`${t.value}-compact${c}last-item`]:n,[`${t.value}-compact${c}item-rtl`]:o.value==="rtl"})});return{compactSize:s(()=>e?.compactSize),compactDirection:s(()=>e?.compactDirection),compactItemClassnames:a}},tt=g({name:"NoCompactStyle",setup(t,o){let{slots:e}=o;return i.useProvide(null),()=>{var a;return(a=e.default)===null||a===void 0?void 0:a.call(e)}}}),J=()=>({prefixCls:String,size:{type:String},direction:v.oneOf(y("horizontal","vertical")).def("horizontal"),align:v.oneOf(y("start","end","center","baseline")),block:{type:Boolean,default:void 0}}),Q=g({name:"CompactItem",props:G(),setup(t,o){let{slots:e}=o;return i.useProvide(t),()=>{var a;return(a=e.default)===null||a===void 0?void 0:a.call(e)}}}),et=g({name:"ASpaceCompact",inheritAttrs:!1,props:J(),setup(t,o){let{attrs:e,slots:a}=o;const{prefixCls:r,direction:l}=j("space-compact",t),n=i.useInject(),[c,$]=K(r),z=s(()=>h(r.value,$.value,{[`${r.value}-rtl`]:l.value==="rtl",[`${r.value}-block`]:t.block,[`${r.value}-vertical`]:t.direction==="vertical"}));return()=>{var m;const p=D(((m=a.default)===null||m===void 0?void 0:m.call(a))||[]);return p.length===0?null:c(b("div",I(I({},e),{},{class:[z.value,e.class]}),[p.map((u,d)=>{var f;const P=u&&u.key||`${r.value}-item-${d}`,C=!n||x(n);return b(Q,{key:P,compactSize:(f=t.size)!==null&&f!==void 0?f:"middle",compactDirection:t.direction,isFirstItem:d===0&&(C||n?.isFirstItem),isLastItem:d===p.length-1&&(C||n?.isLastItem)},{default:()=>[u]})})]))}}});export{et as C,tt as N,K as a,Z as u};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{_ as et,b as tt,u as at,E as ot,d as h}from"./index-BqsvxElz.js";import{s as nt}from"./community-parser-CO25nZFt.js";import{R as st,aq as lt,$ as rt,aL as it,n as ut,ak as ct,f as dt,t as ft}from"./icons-Q99MnhG8.js";import{o as pt,M as I,R as A,P as c,u as s,c as t,N as a,K as m,r as x,L as f,O as p,F as D,Y as J,Q as T,S as K,f as R,a as ve}from"./vendor-BVLz_z7V.js";function P(l){const e=nt(l);if(!e)return null;try{return JSON.parse(e)}catch{}const i=e.match(/\{[\s\S]*\}|\[[\s\S]*\]/);if(!i)return null;try{return JSON.parse(i[0])}catch{return null}}const Fe=Object.freeze(["closed","open","half_open"]),be=Object.freeze(["healthy","degraded","unhealthy","unknown"]),$e=Object.freeze(["heartbeat","latency","success_rate","cpu_usage","memory_usage"]);function k(l,e=0){return typeof l=="number"&&Number.isFinite(l)?l:e}function mt(l,e=0){if(!l||typeof l!="object")return null;const i=l.node_id??l.nodeId??"";if(!i)return null;const b=String(l.state||"closed").toLowerCase();return{key:i,nodeId:i,state:b,failureCount:k(l.failure_count??l.failureCount,0),successCount:k(l.success_count??l.successCount,0),failureThreshold:k(l.failure_threshold??l.failureThreshold,0),successThreshold:k(l.success_threshold??l.successThreshold,0),openTimeout:k(l.open_timeout??l.openTimeout,0),lastFailureTime:l.last_failure_time??l.lastFailureTime??null,lastSuccessTime:l.last_success_time??l.lastSuccessTime??null,stateChangedAt:l.state_changed_at??l.stateChangedAt??null,metadata:l.metadata??null,createdAt:l.created_at??l.createdAt??null,updatedAt:l.updated_at??l.updatedAt??null,_idx:e}}function ht(l){const e=P(l);return Array.isArray(e)?e.map(mt).filter(Boolean):[]}function kt(l,e=0){if(!l||typeof l!="object")return null;const i=l.check_id??l.checkId??"";return i?{key:i,checkId:i,nodeId:l.node_id??l.nodeId??"",checkType:String(l.check_type??l.checkType??"").toLowerCase(),status:String(l.status||"unknown").toLowerCase(),metrics:l.metrics??null,checkedAt:l.checked_at??l.checkedAt??null,_idx:e}:null}function yt(l){const e=P(l);return Array.isArray(e)?e.map(kt).filter(Boolean):[]}function vt(l,e=0){if(!l||typeof l!="object")return null;const i=l.nodeId??l.node_id??"";return i?{key:i,nodeId:i,minConnections:k(l.minConnections,0),maxConnections:k(l.maxConnections,0),idleTimeout:k(l.idleTimeout,0),activeConnections:k(l.activeConnections,0),idleConnections:k(l.idleConnections,0),totalCreated:k(l.totalCreated,0),totalDestroyed:k(l.totalDestroyed,0),waitingRequests:k(l.waitingRequests,0),createdAt:l.createdAt??null,_idx:e}:null}function _t(l){const e=P(l);return Array.isArray(e)?e.map(vt).filter(Boolean):[]}function bt(l){const e=P(l);if(!e||typeof e!="object"||Array.isArray(e))return{nodeId:"",status:"unknown",checks:0,latestChecks:[]};const b=(Array.isArray(e.latestChecks)?e.latestChecks:[]).filter(y=>y&&typeof y=="object").map(y=>({checkType:String(y.checkType??y.check_type??"").toLowerCase(),status:String(y.status||"unknown").toLowerCase(),checkedAt:y.checkedAt??y.checked_at??null}));return{nodeId:e.nodeId??e.node_id??"",status:String(e.status||"unknown").toLowerCase(),checks:k(e.checks,0),latestChecks:b}}function _e(l){const e=P(l);if(!e||typeof e!="object"||Array.isArray(e))return{ok:!1,id:null,reason:""};const i=!!(e.registered||e.recorded||e.initialized),b=e.nodeId??e.checkId??null;return{ok:i,id:b?String(b):null,reason:e.reason?String(e.reason):""}}function gt(l){const e=P(l);return!e||typeof e!="object"||Array.isArray(e)?{ok:!1,state:"",previousState:"",failureCount:0,successCount:0,remainingMs:0,reason:""}:{ok:!!(e.updated||e.reset),state:String(e.state||""),previousState:String(e.previousState||""),failureCount:k(e.failureCount,0),successCount:k(e.successCount,0),remainingMs:k(e.remainingMs,0),reason:e.reason?String(e.reason):""}}function Ct(l){const e=P(l);return!e||typeof e!="object"||Array.isArray(e)?{ok:!1,active:0,idle:0,waiting:0,reason:""}:{ok:!!(e.acquired||e.released||e.destroyed),active:k(e.active,0),idle:k(e.idle,0),waiting:k(e.waiting,0),reason:e.reason?String(e.reason):""}}function xt(l){const e=P(l);return!e||typeof e!="object"||Array.isArray(e)?{ok:!1,reason:""}:{ok:!!e.removed,reason:e.reason?String(e.reason):""}}const Tt={circuitBreakers:{total:0,byState:{}},healthChecks:{total:0,byStatus:{}},connectionPools:{total:0,totalActive:0,totalIdle:0,totalConnections:0}};function St(l){const e=JSON.parse(JSON.stringify(Tt));for(const b of Fe)e.circuitBreakers.byState[b]=0;for(const b of be)e.healthChecks.byStatus[b]=0;const i=P(l);if(!i||typeof i!="object"||Array.isArray(i))return e;if(i.circuitBreakers&&typeof i.circuitBreakers=="object"&&(e.circuitBreakers.total=k(i.circuitBreakers.total,0),i.circuitBreakers.byState&&typeof i.circuitBreakers.byState=="object"))for(const[b,y]of Object.entries(i.circuitBreakers.byState))typeof y=="number"&&Number.isFinite(y)&&(e.circuitBreakers.byState[b]=y);if(i.healthChecks&&typeof i.healthChecks=="object"&&(e.healthChecks.total=k(i.healthChecks.total,0),i.healthChecks.byStatus&&typeof i.healthChecks.byStatus=="object"))for(const[b,y]of Object.entries(i.healthChecks.byStatus))typeof y=="number"&&Number.isFinite(y)&&(e.healthChecks.byStatus[b]=y);return i.connectionPools&&typeof i.connectionPools=="object"&&(e.connectionPools.total=k(i.connectionPools.total,0),e.connectionPools.totalActive=k(i.connectionPools.totalActive,0),e.connectionPools.totalIdle=k(i.connectionPools.totalIdle,0),e.connectionPools.totalConnections=k(i.connectionPools.totalConnections,0)),e}function ie(l){if(l==null||l==="")return"—";const e=typeof l=="number"?new Date(l):new Date(String(l));return isNaN(e.getTime())?String(l):e.toLocaleString("zh-CN",{hour12:!1})}const It={style:{display:"flex","align-items":"center","justify-content":"space-between","margin-bottom":"24px"}},At={class:"page-title"},wt={class:"page-sub"},zt={class:"stat-sub"},jt={class:"stat-sub"},Pt={class:"stat-sub"},$t={class:"stat-sub"},Ft={class:"filter-bar"},Lt={key:1},Rt={key:2},Bt={key:3,class:"muted"},Ot={class:"filter-bar"},Mt={key:0,style:{"font-family":"monospace","font-size":"12px"}},qt={key:3,class:"muted",style:{"font-family":"monospace","font-size":"11px"}},Ut={key:4,class:"muted"},Nt={key:1,class:"muted"},Et={style:{"font-family":"monospace"}},Ht={style:{"margin-top":"16px"}},Dt={style:{color:"var(--text-primary)","margin-bottom":"8px"}},Jt={key:2,class:"muted"},Kt={__name:"Federation",setup(l){const{t:e}=tt(),i=at(),b=ot.PRESENTED_IMAGE_SIMPLE,y=x(!1),z=x(!1),ue=x(!1),ce=x([]),ge=x([]),Ce=x([]),S=x({circuitBreakers:{total:0,byState:{closed:0,open:0,half_open:0}},healthChecks:{total:0,byStatus:{healthy:0,degraded:0,unhealthy:0,unknown:0}},connectionPools:{total:0,totalActive:0,totalIdle:0,totalConnections:0}}),xe=x("breakers"),V=x(""),G=x(""),Q=x(""),W=x(!1),Y=x(!1),X=x(!1),v=ve({nodeId:"",failureThreshold:5,successThreshold:2,openTimeout:6e4}),g=ve({nodeId:"",checkType:"heartbeat",status:"healthy",metrics:""}),_=ve({nodeId:"",min:5,max:50,idleTimeout:3e5}),Z=x(""),$=x(null),Le=R(()=>[{title:e("federation.breakerColumns.node"),key:"nodeId",dataIndex:"nodeId",width:"200px"},{title:e("federation.breakerColumns.state"),key:"state",width:"100px"},{title:e("federation.breakerColumns.failure"),key:"failure",width:"120px"},{title:e("federation.breakerColumns.success"),key:"success",width:"120px"},{title:e("federation.breakerColumns.openTimeout"),key:"openTimeout",dataIndex:"openTimeout",width:"110px"},{title:e("federation.breakerColumns.updatedAt"),key:"updatedAt",width:"170px"},{title:e("federation.breakerColumns.action"),key:"action",width:"340px"}]),Re=R(()=>[{title:e("federation.checkColumns.id"),key:"checkId",width:"130px"},{title:e("federation.checkColumns.node"),key:"nodeId",dataIndex:"nodeId",width:"180px"},{title:e("federation.checkColumns.metric"),key:"checkType",width:"120px"},{title:e("federation.checkColumns.status"),key:"status",width:"100px"},{title:e("federation.checkColumns.metrics"),key:"metrics"},{title:e("federation.checkColumns.checkedAt"),key:"checkedAt",width:"170px"}]),Be=R(()=>[{title:e("federation.poolColumns.node"),key:"nodeId",dataIndex:"nodeId",width:"200px"},{title:e("federation.poolColumns.active"),key:"activeConnections",dataIndex:"activeConnections",width:"90px"},{title:e("federation.poolColumns.idle"),key:"idleConnections",dataIndex:"idleConnections",width:"90px"},{title:e("federation.poolColumns.max"),key:"maxConnections",dataIndex:"maxConnections",width:"90px"},{title:e("federation.poolColumns.utilization"),key:"utilization",width:"160px"},{title:e("federation.poolColumns.waiting"),key:"waitingRequests",dataIndex:"waitingRequests",width:"90px"},{title:e("federation.poolColumns.totalCreated"),key:"totalCreated",dataIndex:"totalCreated",width:"90px"},{title:e("federation.poolColumns.createdAt"),key:"createdAt",width:"170px"},{title:e("federation.poolColumns.action"),key:"action",width:"240px"}]),Oe=R(()=>[{title:e("federation.latestColumns.metric"),key:"checkType",width:"160px"},{title:e("federation.latestColumns.status"),key:"status",width:"120px"},{title:e("federation.latestColumns.checkedAt"),key:"checkedAt"}]),Me=R(()=>V.value?ce.value.filter(r=>r.state===V.value):ce.value),qe=R(()=>{let r=ge.value;return G.value&&(r=r.filter(n=>n.checkType===G.value)),Q.value&&(r=r.filter(n=>n.status===Q.value)),r}),Te=R(()=>(S.value.circuitBreakers.byState.open||0)+(S.value.circuitBreakers.byState.half_open||0)),Se=R(()=>{const r=S.value.circuitBreakers.total;return r?(S.value.circuitBreakers.byState.closed||0)/r*100:100});function Ie(r){return r.maxConnections?Math.round(r.activeConnections/r.maxConnections*100):0}function ee(r){const n=`federation.state.${r}`,u=e(n);return u===n?r:u}function Ue(r){return{closed:"green",open:"red",half_open:"gold"}[r]||"default"}function te(r){const n=`federation.metric.${r}`,u=e(n);return u===n?r:u}function N(r){const n=`federation.health.${r}`,u=e(n);return u===n?r:u}function de(r){return{healthy:"green",degraded:"gold",unhealthy:"red",unknown:"default"}[r]||"default"}function Ae(r){return r>=95?"#52c41a":r>=80?"#1677ff":r>=60?"#faad14":"#ff4d4f"}function Ne(r,n){return r?r.length<=n?r:r.slice(0,n)+"…":""}function F(r){return`"${String(r).replace(/"/g,'\\"')}"`}async function L(){y.value=!0;try{const[r,n,u,j]=await Promise.all([i.execute("federation breakers --limit 200 --json",1e4).catch(()=>({output:""})),i.execute("federation checks --limit 200 --json",1e4).catch(()=>({output:""})),i.execute("federation pools --json",8e3).catch(()=>({output:""})),i.execute("federation stats --json",8e3).catch(()=>({output:""}))]);ce.value=ht(r.output),ge.value=yt(n.output),Ce.value=_t(u.output),S.value=St(j.output)}catch(r){h.error(e("federation.messages.loadFailed",{err:r?.message||r}))}finally{y.value=!1}}async function Ee(){if(!v.nodeId.trim()){h.warning(e("federation.messages.nodeIdRequired"));return}z.value=!0;try{const r=[`federation register ${F(v.nodeId.trim())}`];v.failureThreshold&&r.push(`-f ${v.failureThreshold}`),v.successThreshold&&r.push(`-s ${v.successThreshold}`),v.openTimeout&&r.push(`-t ${v.openTimeout}`),r.push("--json");const{output:n}=await i.execute(r.join(" "),1e4),u=_e(n);if(!u.ok){h.error(e("federation.messages.registerFailed",{err:u.reason||n.slice(0,120)}));return}h.success(e("federation.messages.registerOk",{id:u.id})),W.value=!1,Ke(),await L()}catch(r){h.error(e("federation.messages.registerFailed",{err:r?.message||r}))}finally{z.value=!1}}async function He(){if(!g.nodeId.trim()){h.warning(e("federation.messages.nodeIdRequired"));return}z.value=!0;try{const r=[`federation check ${F(g.nodeId.trim())}`];r.push(`-t ${g.checkType}`),r.push(`-s ${g.status}`),g.metrics.trim()&&r.push(`-m ${F(g.metrics.trim())}`),r.push("--json");const{output:n}=await i.execute(r.join(" "),1e4),u=_e(n);if(!u.ok){h.error(e("federation.messages.checkFailed",{err:u.reason||n.slice(0,120)}));return}h.success(e("federation.messages.checkOk",{id:u.id?.slice(0,8)})),Y.value=!1,Ve(),await L()}catch(r){h.error(e("federation.messages.checkFailed",{err:r?.message||r}))}finally{z.value=!1}}async function De(){if(!_.nodeId.trim()){h.warning(e("federation.messages.nodeIdRequired"));return}z.value=!0;try{const r=[`federation pool-init ${F(_.nodeId.trim())}`];_.min&&r.push(`--min ${_.min}`),_.max&&r.push(`--max ${_.max}`),_.idleTimeout&&r.push(`--idle-timeout ${_.idleTimeout}`),r.push("--json");const{output:n}=await i.execute(r.join(" "),1e4),u=_e(n);if(!u.ok){h.error(e("federation.messages.poolFailed",{err:u.reason||n.slice(0,120)}));return}h.success(e("federation.messages.poolOk",{id:u.id})),X.value=!1,Ge(),await L()}catch(r){h.error(e("federation.messages.poolFailed",{err:r?.message||r}))}finally{z.value=!1}}async function ae(r,n){try{const u=`federation ${n} ${F(r.nodeId)} --json`,{output:j}=await i.execute(u,8e3),C=gt(j);if(!C.ok){h.warning(C.remainingMs?e("federation.messages.operationCooldown",{ms:C.remainingMs}):C.reason||e("federation.messages.operationNoEffect"));return}C.previousState&&C.state&&C.previousState!==C.state?h.success(e("federation.messages.transitionMsg",{from:ee(C.previousState),to:ee(C.state)})):h.success(e(n==="reset"?"federation.messages.resetMsg":"federation.messages.recordedMsg")),await L()}catch(u){h.error(e("federation.messages.operationFailed",{err:u?.message||u}))}}async function Je(r){try{const{output:n}=await i.execute(`federation remove ${F(r.nodeId)} --json`,8e3),u=xt(n);if(!u.ok){h.error(e("federation.messages.removeFailed",{err:u.reason||n.slice(0,120)}));return}h.success(e("federation.messages.removeOk")),await L()}catch(n){h.error(e("federation.messages.removeFailed",{err:n?.message||n}))}}async function fe(r,n){try{const u={acquire:"pool-acquire",release:"pool-release",destroy:"pool-destroy"}[n],{output:j}=await i.execute(`federation ${u} ${F(r.nodeId)} --json`,8e3),C=Ct(j);if(!C.ok){h.warning(C.reason||e("federation.messages.operationNoEffect"));return}if(n==="destroy")h.success(e("federation.messages.destroyMsg"));else{const pe=n==="acquire"?"federation.messages.acquireMsg":"federation.messages.releaseMsg";h.success(e(pe,{active:C.active,idle:C.idle}))}await L()}catch(u){h.error(e("federation.messages.operationFailed",{err:u?.message||u}))}}async function we(){if(!Z.value.trim()){h.warning(e("federation.messages.nodeIdRequired"));return}ue.value=!0;try{const{output:r}=await i.execute(`federation node-health ${F(Z.value.trim())} --json`,8e3);$.value=bt(r)}catch(r){h.error(e("federation.messages.queryFailed",{err:r?.message||r}))}finally{ue.value=!1}}function Ke(){v.nodeId="",v.failureThreshold=5,v.successThreshold=2,v.openTimeout=6e4}function Ve(){g.nodeId="",g.checkType="heartbeat",g.status="healthy",g.metrics=""}function Ge(){_.nodeId="",_.min=5,_.max=50,_.idleTimeout=3e5}return pt(L),(r,n)=>{const u=m("a-button"),j=m("a-menu-item"),C=m("a-menu"),pe=m("a-dropdown"),oe=m("a-space"),E=m("a-statistic"),B=m("a-card"),H=m("a-col"),Qe=m("a-row"),M=m("a-radio-button"),me=m("a-radio-group"),q=m("a-tag"),ze=m("a-popconfirm"),ne=m("a-empty"),se=m("a-table"),le=m("a-tab-pane"),We=m("a-progress"),re=m("a-input"),he=m("a-descriptions-item"),Ye=m("a-descriptions"),Xe=m("a-tabs"),w=m("a-form-item"),U=m("a-input-number"),ke=m("a-form"),ye=m("a-modal"),je=m("a-select-option"),Pe=m("a-select"),Ze=m("a-textarea");return f(),I("div",null,[A("div",It,[A("div",null,[A("h2",At,c(s(e)("federation.title")),1),A("p",wt,c(s(e)("federation.subtitle")),1)]),t(oe,null,{default:a(()=>[t(u,{loading:y.value,onClick:L},{icon:a(()=>[t(s(st))]),default:a(()=>[p(" "+c(s(e)("federation.refresh")),1)]),_:1},8,["loading"]),t(pe,null,{overlay:a(()=>[t(C,null,{default:a(()=>[t(j,{key:"register",onClick:n[0]||(n[0]=o=>W.value=!0)},{default:a(()=>[p(c(s(e)("federation.newMenu.register")),1)]),_:1}),t(j,{key:"check",onClick:n[1]||(n[1]=o=>Y.value=!0)},{default:a(()=>[p(c(s(e)("federation.newMenu.check")),1)]),_:1}),t(j,{key:"pool",onClick:n[2]||(n[2]=o=>X.value=!0)},{default:a(()=>[p(c(s(e)("federation.newMenu.pool")),1)]),_:1})]),_:1})]),default:a(()=>[t(u,{type:"primary"},{icon:a(()=>[t(s(lt))]),default:a(()=>[p(" "+c(s(e)("federation.newDropdown")),1)]),_:1})]),_:1})]),_:1})]),t(Qe,{gutter:[16,16],style:{"margin-bottom":"20px"}},{default:a(()=>[t(H,{xs:12,sm:8,lg:5},{default:a(()=>[t(B,{style:{background:"var(--bg-card)","border-color":"var(--border-color)"}},{default:a(()=>[t(E,{title:s(e)("federation.stats.breakers"),value:S.value.circuitBreakers.total,"value-style":{color:"#1677ff",fontSize:"20px"}},{prefix:a(()=>[t(s(rt))]),_:1},8,["title","value"]),A("div",zt,c(s(e)("federation.stats.breakerSub",{closed:S.value.circuitBreakers.byState.closed||0,open:S.value.circuitBreakers.byState.open||0})),1)]),_:1})]),_:1}),t(H,{xs:12,sm:8,lg:5},{default:a(()=>[t(B,{style:{background:"var(--bg-card)","border-color":"var(--border-color)"}},{default:a(()=>[t(E,{title:s(e)("federation.stats.checks"),value:S.value.healthChecks.total,"value-style":{color:"#52c41a",fontSize:"20px"}},{prefix:a(()=>[t(s(it))]),_:1},8,["title","value"]),A("div",jt,c(s(e)("federation.stats.checkSub",{healthy:S.value.healthChecks.byStatus.healthy||0,unhealthy:S.value.healthChecks.byStatus.unhealthy||0})),1)]),_:1})]),_:1}),t(H,{xs:12,sm:8,lg:5},{default:a(()=>[t(B,{style:{background:"var(--bg-card)","border-color":"var(--border-color)"}},{default:a(()=>[t(E,{title:s(e)("federation.stats.pools"),value:S.value.connectionPools.total,"value-style":{color:"#13c2c2",fontSize:"20px"}},{prefix:a(()=>[t(s(ut))]),_:1},8,["title","value"]),A("div",Pt,c(s(e)("federation.stats.poolSub",{active:S.value.connectionPools.totalActive,idle:S.value.connectionPools.totalIdle})),1)]),_:1})]),_:1}),t(H,{xs:12,sm:8,lg:5},{default:a(()=>[t(B,{style:{background:"var(--bg-card)","border-color":"var(--border-color)"}},{default:a(()=>[t(E,{title:s(e)("federation.stats.degraded"),value:Te.value,"value-style":{color:Te.value>0?"#faad14":"#8c8c8c",fontSize:"20px"}},{prefix:a(()=>[t(s(ct))]),_:1},8,["title","value","value-style"]),A("div",$t,c(s(e)("federation.stats.degradedSub",{halfOpen:S.value.circuitBreakers.byState.half_open||0})),1)]),_:1})]),_:1}),t(H,{xs:24,sm:8,lg:4},{default:a(()=>[t(B,{style:{background:"var(--bg-card)","border-color":"var(--border-color)"}},{default:a(()=>[t(E,{title:s(e)("federation.stats.availability"),value:Se.value,suffix:"%",precision:0,"value-style":{color:Ae(Se.value),fontSize:"20px"}},{prefix:a(()=>[t(s(dt))]),_:1},8,["title","value","value-style"])]),_:1})]),_:1})]),_:1}),t(Xe,{activeKey:xe.value,"onUpdate:activeKey":n[7]||(n[7]=o=>xe.value=o),class:"fed-tabs"},{default:a(()=>[t(le,{key:"breakers",tab:s(e)("federation.tabs.breakers")},{default:a(()=>[A("div",Ft,[t(me,{value:V.value,"onUpdate:value":n[3]||(n[3]=o=>V.value=o),size:"small","button-style":"solid"},{default:a(()=>[t(M,{value:""},{default:a(()=>[p(c(s(e)("federation.filter.allStates")),1)]),_:1}),(f(!0),I(D,null,J(s(Fe),o=>(f(),T(M,{key:o,value:o},{default:a(()=>[p(c(ee(o)),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value"])]),t(se,{columns:Le.value,"data-source":Me.value,pagination:{pageSize:20,showTotal:o=>s(e)("federation.totals.rows",{count:o})},size:"small",loading:y.value,"row-key":"key",style:{background:"var(--bg-card)"}},{bodyCell:a(({column:o,record:d})=>[o.key==="state"?(f(),T(q,{key:0,color:Ue(d.state)},{default:a(()=>[p(c(ee(d.state)),1)]),_:2},1032,["color"])):o.key==="failure"?(f(),I("span",Lt,c(d.failureCount)+" / "+c(d.failureThreshold),1)):o.key==="success"?(f(),I("span",Rt,c(d.successCount)+" / "+c(d.successThreshold),1)):o.key==="updatedAt"?(f(),I("span",Bt,c(s(ie)(d.updatedAt)),1)):o.key==="action"?(f(),T(oe,{key:4,size:4},{default:a(()=>[t(u,{size:"small",danger:"",onClick:O=>ae(d,"failure")},{default:a(()=>[p(c(s(e)("federation.breakerActions.failure")),1)]),_:1},8,["onClick"]),t(u,{size:"small",onClick:O=>ae(d,"success")},{default:a(()=>[p(c(s(e)("federation.breakerActions.success")),1)]),_:1},8,["onClick"]),t(u,{size:"small",type:"dashed",onClick:O=>ae(d,"half-open")},{default:a(()=>[p(c(s(e)("federation.breakerActions.halfOpen")),1)]),_:1},8,["onClick"]),t(u,{size:"small",onClick:O=>ae(d,"reset")},{default:a(()=>[p(c(s(e)("federation.breakerActions.reset")),1)]),_:1},8,["onClick"]),t(ze,{title:s(e)("federation.breakerActions.removeConfirm"),onConfirm:O=>Je(d)},{default:a(()=>[t(u,{size:"small",danger:"",type:"text"},{default:a(()=>[p(c(s(e)("federation.breakerActions.remove")),1)]),_:1})]),_:1},8,["title","onConfirm"])]),_:2},1024)):K("",!0)]),emptyText:a(()=>[t(ne,{image:s(b),description:s(e)("federation.empty.breakers")},null,8,["image","description"])]),_:1},8,["columns","data-source","pagination","loading"])]),_:1},8,["tab"]),t(le,{key:"checks",tab:s(e)("federation.tabs.checks")},{default:a(()=>[A("div",Ot,[t(me,{value:G.value,"onUpdate:value":n[4]||(n[4]=o=>G.value=o),size:"small","button-style":"solid"},{default:a(()=>[t(M,{value:""},{default:a(()=>[p(c(s(e)("federation.filter.allMetrics")),1)]),_:1}),(f(!0),I(D,null,J(s($e),o=>(f(),T(M,{key:o,value:o},{default:a(()=>[p(c(te(o)),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value"]),t(me,{value:Q.value,"onUpdate:value":n[5]||(n[5]=o=>Q.value=o),size:"small"},{default:a(()=>[t(M,{value:""},{default:a(()=>[p(c(s(e)("federation.filter.allStates")),1)]),_:1}),(f(!0),I(D,null,J(s(be),o=>(f(),T(M,{key:o,value:o},{default:a(()=>[p(c(N(o)),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value"])]),t(se,{columns:Re.value,"data-source":qe.value,pagination:{pageSize:20,showTotal:o=>s(e)("federation.totals.rows",{count:o})},size:"small",loading:y.value,"row-key":"key",style:{background:"var(--bg-card)"}},{bodyCell:a(({column:o,record:d})=>[o.key==="checkId"?(f(),I("span",Mt,c(d.checkId.slice(0,12)),1)):o.key==="checkType"?(f(),T(q,{key:1,color:"blue"},{default:a(()=>[p(c(te(d.checkType)),1)]),_:2},1024)):o.key==="status"?(f(),T(q,{key:2,color:de(d.status)},{default:a(()=>[p(c(N(d.status)),1)]),_:2},1032,["color"])):o.key==="metrics"?(f(),I("span",qt,c(Ne(d.metrics||"",50)),1)):o.key==="checkedAt"?(f(),I("span",Ut,c(s(ie)(d.checkedAt)),1)):K("",!0)]),emptyText:a(()=>[t(ne,{image:s(b),description:s(e)("federation.empty.checks")},null,8,["image","description"])]),_:1},8,["columns","data-source","pagination","loading"])]),_:1},8,["tab"]),t(le,{key:"pools",tab:s(e)("federation.tabs.pools")},{default:a(()=>[t(se,{columns:Be.value,"data-source":Ce.value,pagination:{pageSize:20,showTotal:o=>s(e)("federation.totals.rows",{count:o})},size:"small",loading:y.value,"row-key":"key",style:{background:"var(--bg-card)"}},{bodyCell:a(({column:o,record:d})=>[o.key==="utilization"?(f(),T(We,{key:0,percent:Ie(d),"stroke-color":Ae(Ie(d)),size:"small"},null,8,["percent","stroke-color"])):o.key==="createdAt"?(f(),I("span",Nt,c(s(ie)(d.createdAt)),1)):o.key==="action"?(f(),T(oe,{key:2,size:4},{default:a(()=>[t(u,{size:"small",type:"primary",onClick:O=>fe(d,"acquire")},{default:a(()=>[p(c(s(e)("federation.poolActions.acquire")),1)]),_:1},8,["onClick"]),t(u,{size:"small",onClick:O=>fe(d,"release")},{default:a(()=>[p(c(s(e)("federation.poolActions.release")),1)]),_:1},8,["onClick"]),t(ze,{title:s(e)("federation.poolActions.destroyConfirm"),onConfirm:O=>fe(d,"destroy")},{default:a(()=>[t(u,{size:"small",danger:"",type:"text"},{default:a(()=>[p(c(s(e)("federation.poolActions.destroy")),1)]),_:1})]),_:1},8,["title","onConfirm"])]),_:2},1024)):K("",!0)]),emptyText:a(()=>[t(ne,{image:s(b),description:s(e)("federation.empty.pools")},null,8,["image","description"])]),_:1},8,["columns","data-source","pagination","loading"])]),_:1},8,["tab"]),t(le,{key:"node-health",tab:s(e)("federation.tabs.nodeHealth")},{default:a(()=>[t(B,{style:{background:"var(--bg-card)","border-color":"var(--border-color)","margin-bottom":"16px"}},{default:a(()=>[t(oe,null,{default:a(()=>[t(re,{value:Z.value,"onUpdate:value":n[6]||(n[6]=o=>Z.value=o),placeholder:s(e)("federation.nodeHealth.inputPlaceholder"),style:{width:"240px"},"allow-clear":"",onPressEnter:we},null,8,["value","placeholder"]),t(u,{type:"primary",loading:ue.value,onClick:we},{icon:a(()=>[t(s(ft))]),default:a(()=>[p(" "+c(s(e)("federation.nodeHealth.query")),1)]),_:1},8,["loading"])]),_:1})]),_:1}),$.value?(f(),T(B,{key:0,style:{background:"var(--bg-card)","border-color":"var(--border-color)"}},{default:a(()=>[t(Ye,{column:3,size:"small",bordered:""},{default:a(()=>[t(he,{label:s(e)("federation.nodeHealth.node")},{default:a(()=>[A("span",Et,c($.value.nodeId),1)]),_:1},8,["label"]),t(he,{label:s(e)("federation.nodeHealth.status")},{default:a(()=>[t(q,{color:de($.value.status)},{default:a(()=>[p(c(N($.value.status)),1)]),_:1},8,["color"])]),_:1},8,["label"]),t(he,{label:s(e)("federation.nodeHealth.checkCount")},{default:a(()=>[p(c($.value.checks),1)]),_:1},8,["label"])]),_:1}),A("div",Ht,[A("h4",Dt,c(s(e)("federation.nodeHealth.latestTitle")),1),$.value.latestChecks.length?(f(),T(se,{key:1,columns:Oe.value,"data-source":$.value.latestChecks,pagination:!1,size:"small","row-key":"checkType",style:{background:"var(--bg-card)"}},{bodyCell:a(({column:o,record:d})=>[o.key==="checkType"?(f(),T(q,{key:0,color:"blue"},{default:a(()=>[p(c(te(d.checkType)),1)]),_:2},1024)):o.key==="status"?(f(),T(q,{key:1,color:de(d.status)},{default:a(()=>[p(c(N(d.status)),1)]),_:2},1032,["color"])):o.key==="checkedAt"?(f(),I("span",Jt,c(s(ie)(d.checkedAt)),1)):K("",!0)]),_:1},8,["columns","data-source"])):(f(),T(ne,{key:0,image:s(b),description:s(e)("federation.empty.noLatest")},null,8,["image","description"]))])]),_:1})):K("",!0)]),_:1},8,["tab"])]),_:1},8,["activeKey"]),t(ye,{open:W.value,"onUpdate:open":n[12]||(n[12]=o=>W.value=o),title:s(e)("federation.register.title"),"confirm-loading":z.value,onOk:Ee},{default:a(()=>[t(ke,{layout:"vertical"},{default:a(()=>[t(w,{label:s(e)("federation.register.nodeIdLabel"),required:""},{default:a(()=>[t(re,{value:v.nodeId,"onUpdate:value":n[8]||(n[8]=o=>v.nodeId=o),placeholder:s(e)("federation.register.nodeIdPlaceholder")},null,8,["value","placeholder"])]),_:1},8,["label"]),t(w,{label:s(e)("federation.register.failureThresholdLabel")},{default:a(()=>[t(U,{value:v.failureThreshold,"onUpdate:value":n[9]||(n[9]=o=>v.failureThreshold=o),min:1,max:100,style:{width:"100%"}},null,8,["value"])]),_:1},8,["label"]),t(w,{label:s(e)("federation.register.successThresholdLabel")},{default:a(()=>[t(U,{value:v.successThreshold,"onUpdate:value":n[10]||(n[10]=o=>v.successThreshold=o),min:1,max:100,style:{width:"100%"}},null,8,["value"])]),_:1},8,["label"]),t(w,{label:s(e)("federation.register.openTimeoutLabel")},{default:a(()=>[t(U,{value:v.openTimeout,"onUpdate:value":n[11]||(n[11]=o=>v.openTimeout=o),min:1e3,step:1e3,style:{width:"100%"}},null,8,["value"])]),_:1},8,["label"])]),_:1})]),_:1},8,["open","title","confirm-loading"]),t(ye,{open:Y.value,"onUpdate:open":n[17]||(n[17]=o=>Y.value=o),title:s(e)("federation.check.title"),"confirm-loading":z.value,onOk:He},{default:a(()=>[t(ke,{layout:"vertical"},{default:a(()=>[t(w,{label:s(e)("federation.check.nodeIdLabel"),required:""},{default:a(()=>[t(re,{value:g.nodeId,"onUpdate:value":n[13]||(n[13]=o=>g.nodeId=o),placeholder:s(e)("federation.check.nodeIdPlaceholder")},null,8,["value","placeholder"])]),_:1},8,["label"]),t(w,{label:s(e)("federation.check.metricLabel"),required:""},{default:a(()=>[t(Pe,{value:g.checkType,"onUpdate:value":n[14]||(n[14]=o=>g.checkType=o)},{default:a(()=>[(f(!0),I(D,null,J(s($e),o=>(f(),T(je,{key:o,value:o},{default:a(()=>[p(c(te(o)),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value"])]),_:1},8,["label"]),t(w,{label:s(e)("federation.check.statusLabel"),required:""},{default:a(()=>[t(Pe,{value:g.status,"onUpdate:value":n[15]||(n[15]=o=>g.status=o)},{default:a(()=>[(f(!0),I(D,null,J(s(be),o=>(f(),T(je,{key:o,value:o},{default:a(()=>[p(c(N(o)),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value"])]),_:1},8,["label"]),t(w,{label:s(e)("federation.check.metricsLabel")},{default:a(()=>[t(Ze,{value:g.metrics,"onUpdate:value":n[16]||(n[16]=o=>g.metrics=o),rows:3,placeholder:s(e)("federation.check.metricsPlaceholder")},null,8,["value","placeholder"])]),_:1},8,["label"])]),_:1})]),_:1},8,["open","title","confirm-loading"]),t(ye,{open:X.value,"onUpdate:open":n[22]||(n[22]=o=>X.value=o),title:s(e)("federation.pool.title"),"confirm-loading":z.value,onOk:De},{default:a(()=>[t(ke,{layout:"vertical"},{default:a(()=>[t(w,{label:s(e)("federation.pool.nodeIdLabel"),required:""},{default:a(()=>[t(re,{value:_.nodeId,"onUpdate:value":n[18]||(n[18]=o=>_.nodeId=o),placeholder:s(e)("federation.pool.nodeIdPlaceholder")},null,8,["value","placeholder"])]),_:1},8,["label"]),t(w,{label:s(e)("federation.pool.minLabel")},{default:a(()=>[t(U,{value:_.min,"onUpdate:value":n[19]||(n[19]=o=>_.min=o),min:1,max:500,style:{width:"100%"}},null,8,["value"])]),_:1},8,["label"]),t(w,{label:s(e)("federation.pool.maxLabel")},{default:a(()=>[t(U,{value:_.max,"onUpdate:value":n[20]||(n[20]=o=>_.max=o),min:1,max:500,style:{width:"100%"}},null,8,["value"])]),_:1},8,["label"]),t(w,{label:s(e)("federation.pool.idleTimeoutLabel")},{default:a(()=>[t(U,{value:_.idleTimeout,"onUpdate:value":n[21]||(n[21]=o=>_.idleTimeout=o),min:1e3,step:1e3,style:{width:"100%"}},null,8,["value"])]),_:1},8,["label"])]),_:1})]),_:1},8,["open","title","confirm-loading"])])}}},Yt=et(Kt,[["__scopeId","data-v-45647e41"]]);export{Yt as default};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
.page-title[data-v-597f34ed]{margin:0 0 4px;font-size:20px}.page-sub[data-v-597f34ed]{margin:0;color:#888;font-size:13px}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{o as we,M as y,R as g,O as o,c as t,N as a,Q as _,S as z,K as n,r as f,f as G,L as i,u as S,P as u,F as H,a1 as xe}from"./vendor-BVLz_z7V.js";import{_ as je,u as Ce,d as k}from"./index-BqsvxElz.js";import{u as ze}from"./useShellMode-CgR0wCYM.js";import{R as Se,aq as Pe,F as Oe,f as $e,l as Fe,aE as Ie}from"./icons-Q99MnhG8.js";const Ue={style:{display:"flex","align-items":"center","justify-content":"space-between","margin-bottom":"24px"}},Ae={class:"page-sub"},Le={class:"filter-bar",style:{"margin-bottom":"12px",display:"flex",gap:"12px","align-items":"center"}},Be={key:0,style:{"font-size":"12px",color:"#888"}},De={key:0,style:{color:"#888","font-size":"12px"}},Ne={key:0},Re={key:1,style:{color:"#888"}},Ee={key:0,style:{color:"#888","font-size":"12px"}},Te={__name:"Projects",setup(Ve){const M=Ce(),{isEmbedded:X}=ze();async function $(l,e,q,w=8e3){if(X){const j=await M.sendRaw({type:l,...e},w);if(!j?.ok){const m=j?.error;throw new Error(typeof m=="string"?m:m?.message||`${l} failed`)}return j.result}return M.executeJson(q,w)}const x=f(!1),b=f([]),F=f(""),I=f(""),U=f(!1),r=f(null),P=f([]),A=f(!1),L=f(!1),E=f(!1),d=f({name:"",description:"",type:"document",rootPath:""}),Y=[{title:"ID",key:"id",width:110},{title:"名称",key:"name"},{title:"类型",key:"project_type",width:120},{title:"状态",key:"status",width:100},{title:"同步",key:"sync_status",width:100},{title:"更新",key:"updated_at",width:160},{title:"操作",key:"actions",width:180,fixed:"right"}],T=G(()=>{const l={active:0,draft:0,completed:0,archived:0};for(const e of b.value)l[e.status]!==void 0&&(l[e.status]+=1);return l}),Z=G(()=>b.value.filter(l=>!(F.value&&l.status!==F.value||I.value&&!l.name.toLowerCase().includes(I.value.toLowerCase()))));function W(l){switch(l){case"active":return"green";case"draft":return"default";case"completed":return"cyan";case"archived":return"gold";default:return"default"}}function J(l){switch(l){case"synced":return"green";case"pending":return"orange";case"conflict":return"red";case"error":return"red";default:return"default"}}function V(l){return!l&&l!==0?"-":new Date(typeof l=="number"?l:parseInt(l,10)).toLocaleString("zh-CN",{hour12:!1})}async function B(){x.value=!0;try{const l=await $("project.list",{limit:500},"project list --limit 500 --json",1e4);b.value=Array.isArray(l?.projects)?l.projects:Array.isArray(l)?l:[]}catch(l){k.error("加载失败: "+(l.message||l)),b.value=[]}finally{x.value=!1}}function h(l){return{onClick:()=>K(l)}}async function K(l){r.value=l,U.value=!0,A.value=!0,P.value=[];try{const e=await $("project.listFiles",{projectId:l.id,limit:200},`project list-files ${l.id} --json`,8e3);P.value=Array.isArray(e?.files)?e.files:[]}catch{P.value=[]}finally{A.value=!1}}async function ee(l){try{(await $("project.delete",{id:l.id},`project delete ${l.id} --json`,8e3))?.ok?(k.success(`已删除项目 '${l.name}'`),U.value=!1,await B()):k.error("删除失败")}catch(e){k.error(e.message||String(e))}}function te(){d.value={name:"",description:"",type:"document",rootPath:""},L.value=!0}async function ae(){if(!d.value.name.trim()){k.warning("请输入项目名称");return}E.value=!0;try{const l=await $("project.init",{name:d.value.name.trim(),description:d.value.description||null,type:d.value.type,rootPath:d.value.rootPath||null},`project init "${d.value.name.trim()}" --type ${d.value.type} --json`,8e3);l?.id?(k.success(`已创建项目 '${l.name}'`),L.value=!1,await B()):k.error("创建失败")}catch(l){k.error(l.message||String(l))}finally{E.value=!1}}return we(()=>{B()}),(l,e)=>{const q=n("router-link"),w=n("a-button"),j=n("a-space"),m=n("a-statistic"),D=n("a-card"),N=n("a-col"),le=n("a-row"),O=n("a-radio-button"),oe=n("a-radio-group"),ne=n("a-input-search"),se=n("a-alert"),C=n("a-tag"),ue=n("a-popconfirm"),re=n("a-table"),c=n("a-descriptions-item"),ie=n("a-descriptions"),de=n("a-divider"),pe=n("a-empty"),ce=n("a-list-item"),fe=n("a-list"),ve=n("a-spin"),_e=n("a-drawer"),Q=n("a-input"),R=n("a-form-item"),me=n("a-textarea"),v=n("a-select-option"),ye=n("a-select"),ge=n("a-form"),ke=n("a-modal");return i(),y("div",null,[g("div",Ue,[g("div",null,[e[12]||(e[12]=g("h2",{class:"page-title"},"项目",-1)),g("p",Ae,[e[10]||(e[10]=o("桌面 / CLI / 手机 三端共享同一份项目数据,Phase 3d sync 自动同步 (",-1)),t(q,{to:"/project-init"},{default:a(()=>[...e[9]||(e[9]=[o("项目初始化 / 环境设置",-1)])]),_:1}),e[11]||(e[11]=o(")",-1))])]),t(j,null,{default:a(()=>[t(w,{loading:x.value,onClick:B},{icon:a(()=>[t(S(Se))]),default:a(()=>[e[13]||(e[13]=o(" 刷新 ",-1))]),_:1},8,["loading"]),t(w,{type:"primary",onClick:te},{icon:a(()=>[t(S(Pe))]),default:a(()=>[e[14]||(e[14]=o(" 新建项目 ",-1))]),_:1})]),_:1})]),t(le,{gutter:[16,16],style:{"margin-bottom":"20px"}},{default:a(()=>[t(N,{xs:12,sm:8,lg:6},{default:a(()=>[t(D,{style:{background:"var(--bg-card)","border-color":"var(--border-color)"}},{default:a(()=>[t(m,{title:"总项目",value:b.value.length,"value-style":{color:"#1677ff",fontSize:"20px"}},{prefix:a(()=>[t(S(Oe))]),_:1},8,["value"])]),_:1})]),_:1}),t(N,{xs:12,sm:8,lg:6},{default:a(()=>[t(D,{style:{background:"var(--bg-card)","border-color":"var(--border-color)"}},{default:a(()=>[t(m,{title:"活跃",value:T.value.active,"value-style":{color:"#52c41a",fontSize:"20px"}},{prefix:a(()=>[t(S($e))]),_:1},8,["value"])]),_:1})]),_:1}),t(N,{xs:12,sm:8,lg:6},{default:a(()=>[t(D,{style:{background:"var(--bg-card)","border-color":"var(--border-color)"}},{default:a(()=>[t(m,{title:"草稿",value:T.value.draft,"value-style":{color:"#8c8c8c",fontSize:"20px"}},{prefix:a(()=>[t(S(Fe))]),_:1},8,["value"])]),_:1})]),_:1}),t(N,{xs:12,sm:8,lg:6},{default:a(()=>[t(D,{style:{background:"var(--bg-card)","border-color":"var(--border-color)"}},{default:a(()=>[t(m,{title:"已完成",value:T.value.completed,"value-style":{color:"#13c2c2",fontSize:"20px"}},{prefix:a(()=>[t(S(Ie))]),_:1},8,["value"])]),_:1})]),_:1})]),_:1}),g("div",Le,[t(oe,{value:F.value,"onUpdate:value":e[0]||(e[0]=s=>F.value=s),size:"small","button-style":"solid"},{default:a(()=>[t(O,{value:""},{default:a(()=>[...e[15]||(e[15]=[o("全部",-1)])]),_:1}),t(O,{value:"active"},{default:a(()=>[...e[16]||(e[16]=[o("活跃",-1)])]),_:1}),t(O,{value:"draft"},{default:a(()=>[...e[17]||(e[17]=[o("草稿",-1)])]),_:1}),t(O,{value:"completed"},{default:a(()=>[...e[18]||(e[18]=[o("已完成",-1)])]),_:1}),t(O,{value:"archived"},{default:a(()=>[...e[19]||(e[19]=[o("已归档",-1)])]),_:1})]),_:1},8,["value"]),t(ne,{value:I.value,"onUpdate:value":e[1]||(e[1]=s=>I.value=s),placeholder:"按名称过滤",style:{"max-width":"260px"},"allow-clear":""},null,8,["value"])]),!b.value.length&&!x.value?(i(),_(se,{key:0,type:"info",message:"还没有项目",description:'运行 `cc project init <name>` 或点击右上角"新建项目"按钮创建。桌面 / CLI / 手机三端共享同一份数据。',"show-icon":"",style:{"margin-bottom":"16px"}})):z("",!0),b.value.length||x.value?(i(),_(re,{key:1,columns:Y,"data-source":Z.value,loading:x.value,pagination:{pageSize:20,showSizeChanger:!0},"row-key":"id","custom-row":h},{bodyCell:a(({column:s,record:p})=>[s.key==="id"?(i(),y("code",Be,u(p.id.slice(0,8))+"…",1)):s.key==="name"?(i(),y(H,{key:1},[g("strong",null,u(p.name),1),p.description?(i(),y("div",De,u(p.description),1)):z("",!0)],64)):s.key==="project_type"?(i(),_(C,{key:2},{default:a(()=>[o(u(p.project_type),1)]),_:2},1024)):s.key==="status"?(i(),_(C,{key:3,color:W(p.status)},{default:a(()=>[o(u(p.status),1)]),_:2},1032,["color"])):s.key==="sync_status"?(i(),_(C,{key:4,color:J(p.sync_status)},{default:a(()=>[o(u(p.sync_status||"unknown"),1)]),_:2},1032,["color"])):s.key==="updated_at"?(i(),y(H,{key:5},[o(u(V(p.updated_at)),1)],64)):s.key==="actions"?(i(),_(j,{key:6,onClick:e[2]||(e[2]=xe(()=>{},["stop"]))},{default:a(()=>[t(w,{size:"small",onClick:be=>K(p)},{default:a(()=>[...e[20]||(e[20]=[o("详情",-1)])]),_:1},8,["onClick"]),t(ue,{title:`删除项目 '${p.name}' ?`,"ok-text":"删除","ok-type":"danger","cancel-text":"取消",onConfirm:be=>ee(p)},{default:a(()=>[t(w,{size:"small",danger:""},{default:a(()=>[...e[21]||(e[21]=[o("删除",-1)])]),_:1})]),_:1},8,["title","onConfirm"])]),_:2},1024)):z("",!0)]),_:1},8,["data-source","loading"])):z("",!0),t(_e,{open:U.value,"onUpdate:open":e[3]||(e[3]=s=>U.value=s),title:r.value?.name||"项目详情",width:"640",placement:"right"},{default:a(()=>[r.value?(i(),_(ie,{key:0,column:1,bordered:"",size:"small"},{default:a(()=>[t(c,{label:"ID"},{default:a(()=>[g("code",null,u(r.value.id),1)]),_:1}),t(c,{label:"名称"},{default:a(()=>[o(u(r.value.name),1)]),_:1}),t(c,{label:"描述"},{default:a(()=>[o(u(r.value.description||"-"),1)]),_:1}),t(c,{label:"类型"},{default:a(()=>[t(C,null,{default:a(()=>[o(u(r.value.project_type),1)]),_:1})]),_:1}),t(c,{label:"状态"},{default:a(()=>[t(C,{color:W(r.value.status)},{default:a(()=>[o(u(r.value.status),1)]),_:1},8,["color"])]),_:1}),t(c,{label:"同步状态"},{default:a(()=>[t(C,{color:J(r.value.sync_status)},{default:a(()=>[o(u(r.value.sync_status||"unknown"),1)]),_:1},8,["color"])]),_:1}),t(c,{label:"用户"},{default:a(()=>[o(u(r.value.user_id),1)]),_:1}),t(c,{label:"根路径"},{default:a(()=>[r.value.root_path?(i(),y("code",Ne,u(r.value.root_path),1)):(i(),y("span",Re,"(无)"))]),_:1}),t(c,{label:"文件数"},{default:a(()=>[o(u(r.value.file_count||0),1)]),_:1}),t(c,{label:"创建"},{default:a(()=>[o(u(V(r.value.created_at)),1)]),_:1}),t(c,{label:"更新"},{default:a(()=>[o(u(V(r.value.updated_at)),1)]),_:1})]),_:1})):z("",!0),t(de,null,{default:a(()=>[...e[22]||(e[22]=[o("文件",-1)])]),_:1}),t(ve,{spinning:A.value},{default:a(()=>[!P.value.length&&!A.value?(i(),_(pe,{key:0,description:"无文件 (仅元数据项目)"})):(i(),_(fe,{key:1,size:"small","data-source":P.value},{renderItem:a(({item:s})=>[t(ce,null,{extra:a(()=>[s.file_size?(i(),y("span",Ee,u(s.file_size)+" B",1)):z("",!0)]),default:a(()=>[g("span",null,u(s.is_folder?"📁":"📄")+" "+u(s.file_path),1)]),_:2},1024)]),_:1},8,["data-source"]))]),_:1},8,["spinning"])]),_:1},8,["open","title"]),t(ke,{open:L.value,"onUpdate:open":e[8]||(e[8]=s=>L.value=s),title:"新建项目","confirm-loading":E.value,"ok-text":"创建","cancel-text":"取消",onOk:ae},{default:a(()=>[t(ge,{layout:"vertical"},{default:a(()=>[t(R,{label:"项目名称",required:""},{default:a(()=>[t(Q,{value:d.value.name,"onUpdate:value":e[4]||(e[4]=s=>d.value.name=s),placeholder:"例如:旅行计划-上海"},null,8,["value"])]),_:1}),t(R,{label:"描述"},{default:a(()=>[t(me,{value:d.value.description,"onUpdate:value":e[5]||(e[5]=s=>d.value.description=s),rows:2},null,8,["value"])]),_:1}),t(R,{label:"类型"},{default:a(()=>[t(ye,{value:d.value.type,"onUpdate:value":e[6]||(e[6]=s=>d.value.type=s)},{default:a(()=>[t(v,{value:"document"},{default:a(()=>[...e[23]||(e[23]=[o("文档 (document)",-1)])]),_:1}),t(v,{value:"data"},{default:a(()=>[...e[24]||(e[24]=[o("数据 (data)",-1)])]),_:1}),t(v,{value:"web"},{default:a(()=>[...e[25]||(e[25]=[o("Web",-1)])]),_:1}),t(v,{value:"app"},{default:a(()=>[...e[26]||(e[26]=[o("应用 (app)",-1)])]),_:1}),t(v,{value:"presentation"},{default:a(()=>[...e[27]||(e[27]=[o("演示文稿",-1)])]),_:1}),t(v,{value:"spreadsheet"},{default:a(()=>[...e[28]||(e[28]=[o("表格",-1)])]),_:1}),t(v,{value:"design"},{default:a(()=>[...e[29]||(e[29]=[o("设计",-1)])]),_:1}),t(v,{value:"code"},{default:a(()=>[...e[30]||(e[30]=[o("代码",-1)])]),_:1}),t(v,{value:"workflow"},{default:a(()=>[...e[31]||(e[31]=[o("工作流",-1)])]),_:1}),t(v,{value:"knowledge"},{default:a(()=>[...e[32]||(e[32]=[o("知识库",-1)])]),_:1})]),_:1},8,["value"])]),_:1}),t(R,{label:"根路径 (可选)"},{default:a(()=>[t(Q,{value:d.value.rootPath,"onUpdate:value":e[7]||(e[7]=s=>d.value.rootPath=s),placeholder:"留空则仅元数据"},null,8,["value"])]),_:1})]),_:1})]),_:1},8,["open","confirm-loading"])])}}},Ke=je(Te,[["__scopeId","data-v-597f34ed"]]);export{Ke as default};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{p as z,e as S,f as $,$ as f,h as N}from"./index-BqsvxElz.js";import{u as _,r as u}from"./responsiveObserve-DGFr293p.js";import{u as E}from"./useFlexGapSupport-CKCvqfWX.js";import{u as F,a as I}from"./index-CzARuKje.js";import{d as M,o as T,e as V,c as D,r as h,f as o}from"./vendor-BVLz_z7V.js";const J=()=>({align:f([String,Object]),justify:f([String,Object]),prefixCls:String,gutter:f([Number,Array,Object],0),wrap:{type:Boolean,default:void 0}}),P=M({compatConfig:{MODE:3},name:"ARow",inheritAttrs:!1,props:J(),setup(s,G){let{slots:d,attrs:l}=G;const{prefixCls:a,direction:R}=z("row",s),[O,C]=F(a);let m;const v=_(),p=h({xs:!0,sm:!0,md:!0,lg:!0,xl:!0,xxl:!0}),y=h({xs:!1,sm:!1,md:!1,lg:!1,xl:!1,xxl:!1}),g=e=>o(()=>{if(typeof s[e]=="string")return s[e];if(typeof s[e]!="object")return"";for(let t=0;t<u.length;t++){const n=u[t];if(!y.value[n])continue;const r=s[e][n];if(r!==void 0)return r}return""}),b=g("align"),x=g("justify"),w=E();T(()=>{m=v.value.subscribe(e=>{y.value=e;const t=s.gutter||0;(!Array.isArray(t)&&typeof t=="object"||Array.isArray(t)&&(typeof t[0]=="object"||typeof t[1]=="object"))&&(p.value=e)})}),V(()=>{v.value.unsubscribe(m)});const A=o(()=>{const e=[void 0,void 0],{gutter:t=0}=s;return(Array.isArray(t)?t:[t,void 0]).forEach((r,j)=>{if(typeof r=="object")for(let i=0;i<u.length;i++){const c=u[i];if(p.value[c]&&r[c]!==void 0){e[j]=r[c];break}}else e[j]=r}),e});I({gutter:A,supportFlexGap:w,wrap:o(()=>s.wrap)});const k=o(()=>N(a.value,{[`${a.value}-no-wrap`]:s.wrap===!1,[`${a.value}-${x.value}`]:x.value,[`${a.value}-${b.value}`]:b.value,[`${a.value}-rtl`]:R.value==="rtl"},l.class,C.value)),B=o(()=>{const e=A.value,t={},n=e[0]!=null&&e[0]>0?`${e[0]/-2}px`:void 0,r=e[1]!=null&&e[1]>0?`${e[1]/-2}px`:void 0;return n&&(t.marginLeft=n,t.marginRight=n),w.value?t.rowGap=`${e[1]}px`:r&&(t.marginTop=r,t.marginBottom=r),t});return()=>{var e;return O(D("div",S(S({},l),{},{class:k.value,style:$($({},B.value),l.style)}),[(e=d.default)===null||e===void 0?void 0:e.call(d)]))}}});export{P as A};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{k as L,m as lo,f as c,r as io,R as M,w as F,p as V,h as K,e as b,q,L as W,a4 as x,o as so,y as co,s as R,Z as po}from"./index-BqsvxElz.js";import{T as uo,t as X,a as Z}from"./index-DfHN8qWn.js";import{o as G}from"./omit-BKpLUN0q.js";import{i as mo}from"./zoom-DR60LSPO.js";import{g as vo}from"./placementArrow-D2-Ct0PH.js";import{P as fo}from"./colors-7dfqj18R.js";import{i as U}from"./initDefaultProps-DBQ94EVq.js";import{d as J,c as d,r as Q,f as N,F as go,a8 as Co}from"./vendor-BVLz_z7V.js";import{c as H,B as yo}from"./index-Cw1VkvZr.js";import{E as xo}from"./icons-Q99MnhG8.js";import{u as Po}from"./useMergedState-D3PX36GT.js";import{K as bo}from"./KeyCode-D63Tfrq7.js";import{b as ho}from"./vnode-CW-Z-Xwr.js";import{A as $o}from"./ActionButton-eeaISbP3.js";import"./Trigger-CBHUHnc-.js";import"./raf-Deuc0E8-.js";import"./motion-BAgV2nZt.js";import"./isVisible-C7tPsqfj.js";import"./ResizeObserver.es-D6qJbdzf.js";import"./_getTag-BVc6NQ_K.js";import"./firstNotUndefined-CLFzEa0p.js";import"./index-DWSEcCO0.js";import"./useState-Cp5WlLTS.js";import"./devWarning-CNIS3FrJ.js";import"./warning-Pq00owYb.js";import"./compact-item-_8YefjuR.js";import"./createContext-CPZ59Zcw.js";import"./Compact-CuDFE-4P.js";const So=o=>{const{componentCls:e,popoverBg:t,popoverColor:n,width:a,fontWeightStrong:f,popoverPadding:i,boxShadowSecondary:p,colorTextHeading:g,borderRadiusLG:m,zIndexPopup:C,marginXS:y,colorBgElevated:s}=o;return[{[e]:c(c({},io(o)),{position:"absolute",top:0,left:{_skip_check_:!0,value:0},zIndex:C,fontWeight:"normal",whiteSpace:"normal",textAlign:"start",cursor:"auto",userSelect:"text","--antd-arrow-background-color":s,"&-rtl":{direction:"rtl"},"&-hidden":{display:"none"},[`${e}-content`]:{position:"relative"},[`${e}-inner`]:{backgroundColor:t,backgroundClip:"padding-box",borderRadius:m,boxShadow:p,padding:i},[`${e}-title`]:{minWidth:a,marginBottom:y,color:g,fontWeight:f},[`${e}-inner-content`]:{color:n}})},vo(o,{colorBg:"var(--antd-arrow-background-color)"}),{[`${e}-pure`]:{position:"relative",maxWidth:"none",[`${e}-content`]:{display:"inline-block"}}}]},ko=o=>{const{componentCls:e}=o;return{[e]:fo.map(t=>{const n=o[`${t}-6`];return{[`&${e}-${t}`]:{"--antd-arrow-background-color":n,[`${e}-inner`]:{backgroundColor:n},[`${e}-arrow`]:{background:"transparent"}}}})}},To=o=>{const{componentCls:e,lineWidth:t,lineType:n,colorSplit:a,paddingSM:f,controlHeight:i,fontSize:p,lineHeight:g,padding:m}=o,C=i-Math.round(p*g),y=C/2,s=C/2-t,v=m;return{[e]:{[`${e}-inner`]:{padding:0},[`${e}-title`]:{margin:0,padding:`${y}px ${v}px ${s}px`,borderBottom:`${t}px ${n} ${a}`},[`${e}-inner-content`]:{padding:`${f}px ${v}px`}}}},Bo=L("Popover",o=>{const{colorBgElevated:e,colorText:t,wireframe:n}=o,a=lo(o,{popoverBg:e,popoverColor:t,popoverPadding:12});return[So(a),ko(a),n&&To(a),mo(a,"zoom-big")]},o=>{let{zIndexPopupBase:e}=o;return{zIndexPopup:e+30,width:177}}),wo=()=>c(c({},Z()),{content:x(),title:x()}),_o=J({compatConfig:{MODE:3},name:"APopover",inheritAttrs:!1,props:U(wo(),c(c({},X()),{trigger:"hover",placement:"top",mouseEnterDelay:.1,mouseLeaveDelay:.1})),setup(o,e){let{expose:t,slots:n,attrs:a}=e;const f=Q();F(o.visible===void 0),t({getPopupDomNode:()=>{var s,v;return(v=(s=f.value)===null||s===void 0?void 0:s.getPopupDomNode)===null||v===void 0?void 0:v.call(s)}});const{prefixCls:i,configProvider:p}=V("popover",o),[g,m]=Bo(i),C=N(()=>p.getPrefixCls()),y=()=>{var s,v;const{title:P=W((s=n.title)===null||s===void 0?void 0:s.call(n)),content:u=W((v=n.content)===null||v===void 0?void 0:v.call(n))}=o,h=!!(Array.isArray(P)?P.length:P),B=!!(Array.isArray(u)?u.length:P);return!h&&!B?null:d(go,null,[h&&d("div",{class:`${i.value}-title`},[P]),d("div",{class:`${i.value}-inner-content`},[u])])};return()=>{const s=K(o.overlayClassName,m.value);return g(d(uo,b(b(b({},G(o,["title","content"])),a),{},{prefixCls:i.value,ref:f,overlayClassName:s,transitionName:q(C.value,"zoom-big",o.transitionName),"data-popover-inject":!0}),{title:y,default:n.default}))}}}),Oo=M(_o),No=o=>{const{componentCls:e,iconCls:t,zIndexPopup:n,colorText:a,colorWarning:f,marginXS:i,fontSize:p,fontWeightStrong:g,lineHeight:m}=o;return{[e]:{zIndex:n,[`${e}-inner-content`]:{color:a},[`${e}-message`]:{position:"relative",marginBottom:i,color:a,fontSize:p,display:"flex",flexWrap:"nowrap",alignItems:"start",[`> ${e}-message-icon ${t}`]:{color:f,fontSize:p,flex:"none",lineHeight:1,paddingTop:(Math.round(p*m)-p)/2},"&-title":{flex:"auto",marginInlineStart:i},"&-title-only":{fontWeight:g}},[`${e}-description`]:{position:"relative",marginInlineStart:p+i,marginBottom:i,color:a,fontSize:p},[`${e}-buttons`]:{textAlign:"end",button:{marginInlineStart:i}}}}},zo=L("Popconfirm",o=>No(o),o=>{const{zIndexPopupBase:e}=o;return{zIndexPopup:e+60}});var Io=function(o,e){var t={};for(var n in o)Object.prototype.hasOwnProperty.call(o,n)&&e.indexOf(n)<0&&(t[n]=o[n]);if(o!=null&&typeof Object.getOwnPropertySymbols=="function")for(var a=0,n=Object.getOwnPropertySymbols(o);a<n.length;a++)e.indexOf(n[a])<0&&Object.prototype.propertyIsEnumerable.call(o,n[a])&&(t[n[a]]=o[n[a]]);return t};const Ao=()=>c(c({},Z()),{prefixCls:String,content:x(),title:x(),description:x(),okType:po("primary"),disabled:{type:Boolean,default:!1},okText:x(),cancelText:x(),icon:x(),okButtonProps:R(),cancelButtonProps:R(),showCancel:{type:Boolean,default:!0},onConfirm:Function,onCancel:Function}),Do=J({compatConfig:{MODE:3},name:"APopconfirm",inheritAttrs:!1,props:U(Ao(),c(c({},X()),{trigger:"click",placement:"top",mouseEnterDelay:.1,mouseLeaveDelay:.1,arrowPointAtCenter:!1,autoAdjustOverflow:!0,okType:"primary",disabled:!1})),slots:Object,setup(o,e){let{slots:t,emit:n,expose:a,attrs:f}=e;const i=Q();F(o.visible===void 0),a({getPopupDomNode:()=>{var r,l;return(l=(r=i.value)===null||r===void 0?void 0:r.getPopupDomNode)===null||l===void 0?void 0:l.call(r)}});const[p,g]=Po(!1,{value:Co(o,"open")}),m=(r,l)=>{o.open===void 0&&g(r),n("update:open",r),n("openChange",r,l)},C=r=>{m(!1,r)},y=r=>{var l;return(l=o.onConfirm)===null||l===void 0?void 0:l.call(o,r)},s=r=>{var l;m(!1,r),(l=o.onCancel)===null||l===void 0||l.call(o,r)},v=r=>{r.keyCode===bo.ESC&&p&&m(!1,r)},P=r=>{const{disabled:l}=o;l||m(r)},{prefixCls:u,getPrefixCls:h}=V("popconfirm",o),B=N(()=>h()),Y=N(()=>h("btn")),[oo]=zo(u),[z]=so("Popconfirm",co.Popconfirm),eo=()=>{var r,l,$,S,k;const{okButtonProps:T,cancelButtonProps:w,title:_=(r=t.title)===null||r===void 0?void 0:r.call(t),description:O=(l=t.description)===null||l===void 0?void 0:l.call(t),cancelText:to=($=t.cancel)===null||$===void 0?void 0:$.call(t),okText:no=(S=t.okText)===null||S===void 0?void 0:S.call(t),okType:I,icon:A=((k=t.icon)===null||k===void 0?void 0:k.call(t))||d(xo,null,null),showCancel:ro=!0}=o,{cancelButton:D,okButton:E}=t,j=c({onClick:s,size:"small"},w),ao=c(c(c({onClick:y},H(I)),{size:"small"}),T);return d("div",{class:`${u.value}-inner-content`},[d("div",{class:`${u.value}-message`},[A&&d("span",{class:`${u.value}-message-icon`},[A]),d("div",{class:[`${u.value}-message-title`,{[`${u.value}-message-title-only`]:!!O}]},[_])]),O&&d("div",{class:`${u.value}-description`},[O]),d("div",{class:`${u.value}-buttons`},[ro?D?D(j):d(yo,j,{default:()=>[to||z.value.cancelText]}):null,E?E(ao):d($o,{buttonProps:c(c({size:"small"},H(I)),T),actionFn:y,close:C,prefixCls:Y.value,quitOnNullishReturnValue:!0,emitEvent:!0},{default:()=>[no||z.value.okText]})])])};return()=>{var r;const{placement:l,overlayClassName:$,trigger:S="click"}=o,k=Io(o,["placement","overlayClassName","trigger"]),T=G(k,["title","content","cancelText","okText","onUpdate:open","onConfirm","onCancel","prefixCls"]),w=K(u.value,$);return oo(d(Oo,b(b(b({},T),f),{},{trigger:S,placement:l,onOpenChange:P,open:p.value,overlayClassName:w,transitionName:q(B.value,"zoom-big",o.transitionName),ref:i,"data-popover-inject":!0}),{default:()=>[ho(((r=t.default)===null||r===void 0?void 0:r.call(t))||[],{onKeydown:_=>{v(_)}},!1)],content:eo}))}}}),pe=M(Do);export{pe as default,Ao as popconfirmProps};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{k as j,m as M,f as p,r as O,p as U,e as y,F as A,ac as $,a4 as B,U as P,$ as N}from"./index-BqsvxElz.js";import{i as R}from"./initDefaultProps-DBQ94EVq.js";import{c as m,d as _,o as L,q as V,e as X,r as D}from"./vendor-BVLz_z7V.js";import{S as q}from"./Skeleton-D2BPihBx.js";import{o as Y}from"./omit-BKpLUN0q.js";import"./icons-Q99MnhG8.js";const k=t=>{const{value:n,formatter:e,precision:a,decimalSeparator:s,groupSeparator:u="",prefixCls:r}=t;let c;if(typeof e=="function")c=e({value:n});else{const i=String(n),f=i.match(/^(-?)(\d*)(\.(\d+))?$/);if(!f)c=i;else{const d=f[1];let o=f[2]||"0",l=f[4]||"";o=o.replace(/\B(?=(\d{3})+(?!\d))/g,u),typeof a=="number"&&(l=l.padEnd(a,"0").slice(0,a>0?a:0)),l&&(l=`${s}${l}`),c=[m("span",{key:"int",class:`${r}-content-value-int`},[d,o]),l&&m("span",{key:"decimal",class:`${r}-content-value-decimal`},[l])]}}return m("span",{class:`${r}-content-value`},[c])};k.displayName="StatisticNumber";const G=t=>{const{componentCls:n,marginXXS:e,padding:a,colorTextDescription:s,statisticTitleFontSize:u,colorTextHeading:r,statisticContentFontSize:c,statisticFontFamily:i}=t;return{[`${n}`]:p(p({},O(t)),{[`${n}-title`]:{marginBottom:e,color:s,fontSize:u},[`${n}-skeleton`]:{paddingTop:a},[`${n}-content`]:{color:r,fontSize:c,fontFamily:i,[`${n}-content-value`]:{display:"inline-block",direction:"ltr"},[`${n}-content-prefix, ${n}-content-suffix`]:{display:"inline-block"},[`${n}-content-prefix`]:{marginInlineEnd:e},[`${n}-content-suffix`]:{marginInlineStart:e}}})}},J=j("Statistic",t=>{const{fontSizeHeading3:n,fontSize:e,fontFamily:a}=t,s=M(t,{statisticTitleFontSize:e,statisticContentFontSize:n,statisticFontFamily:a});return[G(s)]}),z=()=>({prefixCls:String,decimalSeparator:String,groupSeparator:String,format:String,value:N([Number,String,Object]),valueStyle:{type:Object,default:void 0},valueRender:P(),formatter:B(),precision:Number,prefix:$(),suffix:$(),title:$(),loading:A()}),v=_({compatConfig:{MODE:3},name:"AStatistic",inheritAttrs:!1,props:R(z(),{decimalSeparator:".",groupSeparator:",",loading:!1}),slots:Object,setup(t,n){let{slots:e,attrs:a}=n;const{prefixCls:s,direction:u}=U("statistic",t),[r,c]=J(s);return()=>{var i,f,d,o,l,g,S;const{value:E=0,valueStyle:H,valueRender:T}=t,x=s.value,h=(i=t.title)!==null&&i!==void 0?i:(f=e.title)===null||f===void 0?void 0:f.call(e),F=(d=t.prefix)!==null&&d!==void 0?d:(o=e.prefix)===null||o===void 0?void 0:o.call(e),b=(l=t.suffix)!==null&&l!==void 0?l:(g=e.suffix)===null||g===void 0?void 0:g.call(e),I=(S=t.formatter)!==null&&S!==void 0?S:e.formatter;let C=m(k,y({"data-for-update":Date.now()},p(p({},t),{prefixCls:x,value:E,formatter:I})),null);return T&&(C=T(C)),r(m("div",y(y({},a),{},{class:[x,{[`${x}-rtl`]:u.value==="rtl"},a.class,c.value]}),[h&&m("div",{class:`${x}-title`},[h]),m(q,{paragraph:!1,loading:t.loading},{default:()=>[m("div",{style:H,class:`${x}-content`},[F&&m("span",{class:`${x}-content-prefix`},[F]),C,b&&m("span",{class:`${x}-content-suffix`},[b])])]})]))}}}),K=[["Y",1e3*60*60*24*365],["M",1e3*60*60*24*30],["D",1e3*60*60*24],["H",1e3*60*60],["m",1e3*60],["s",1e3],["S",1]];function Q(t,n){let e=t;const a=/\[[^\]]*]/g,s=(n.match(a)||[]).map(i=>i.slice(1,-1)),u=n.replace(a,"[]"),r=K.reduce((i,f)=>{let[d,o]=f;if(i.includes(d)){const l=Math.floor(e/o);return e-=l*o,i.replace(new RegExp(`${d}+`,"g"),g=>{const S=g.length;return l.toString().padStart(S,"0")})}return i},u);let c=0;return r.replace(a,()=>{const i=s[c];return c+=1,i})}function W(t,n){const{format:e=""}=n,a=new Date(t).getTime(),s=Date.now(),u=Math.max(a-s,0);return Q(u,e)}const Z=1e3/30;function w(t){return new Date(t).getTime()}const tt=()=>p(p({},z()),{value:N([Number,String,Object]),format:String,onFinish:Function,onChange:Function}),et=_({compatConfig:{MODE:3},name:"AStatisticCountdown",props:R(tt(),{format:"HH:mm:ss"}),setup(t,n){let{emit:e,slots:a}=n;const s=D(),u=D(),r=()=>{const{value:o}=t;w(o)>=Date.now()?c():i()},c=()=>{if(s.value)return;const o=w(t.value);s.value=setInterval(()=>{u.value.$forceUpdate(),o>Date.now()&&e("change",o-Date.now()),r()},Z)},i=()=>{const{value:o}=t;s.value&&(clearInterval(s.value),s.value=void 0,w(o)<Date.now()&&e("finish"))},f=o=>{let{value:l,config:g}=o;const{format:S}=t;return W(l,p(p({},g),{format:S}))},d=o=>o;return L(()=>{r()}),V(()=>{r()}),X(()=>{i()}),()=>{const o=t.value;return m(v,y({ref:u},p(p({},Y(t,["onFinish","onChange"])),{value:o,valueRender:d,formatter:f})),a)}}});v.Countdown=et;v.install=function(t){return t.component(v.name,v),t.component(v.Countdown.name,v.Countdown),t};const rt=v.Countdown;export{rt as StatisticCountdown,v as default};
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import{f,h as j,S as $e,e as P,P as g,a5 as Ce,ai as Y,au as Ve,k as Be,m as we,r as Me,R as Te,p as Pe,U as z,$ as D,F as N,Z as He,s as Oe}from"./index-BqsvxElz.js";import{B as J}from"./Trigger-CBHUHnc-.js";import{c as B,d as I,o as ke,e as ie,s as Q,f as le,w as Fe,aa as Le,r as U}from"./vendor-BVLz_z7V.js";import{s as ue,a as G}from"./motion-BAgV2nZt.js";import{K as E}from"./KeyCode-D63Tfrq7.js";import{i as de}from"./initDefaultProps-DBQ94EVq.js";import{T as Ne,b as Ee}from"./index-DfHN8qWn.js";import{w as ee}from"./raf-Deuc0E8-.js";import{a as De}from"./FormItemContext-DQUjKw5j.js";import{T as Re}from"./icons-Q99MnhG8.js";import"./vnode-CW-Z-Xwr.js";import"./isVisible-C7tPsqfj.js";import"./ResizeObserver.es-D6qJbdzf.js";import"./_getTag-BVc6NQ_K.js";import"./placementArrow-D2-Ct0PH.js";import"./firstNotUndefined-CLFzEa0p.js";import"./colors-7dfqj18R.js";import"./zoom-DR60LSPO.js";import"./createContext-CPZ59Zcw.js";const Z=(e,o)=>{let{attrs:t}=o;const{included:n,vertical:s,style:a,class:r}=t;let{length:i,offset:l,reverse:u}=t;i<0&&(u=!u,i=Math.abs(i),l=100-l);const d=s?{[u?"top":"bottom"]:`${l}%`,[u?"bottom":"top"]:"auto",height:`${i}%`}:{[u?"right":"left"]:`${l}%`,[u?"left":"right"]:"auto",width:`${i}%`},m=f(f({},a),d);return n?B("div",{class:r,style:m},null):null};Z.inheritAttrs=!1;const je=(e,o,t,n,s,a)=>{const r=Object.keys(o).map(parseFloat).sort((i,l)=>i-l);if(t&&n)for(let i=s;i<=a;i+=n)r.indexOf(i)===-1&&r.push(i);return r},ce=(e,o)=>{let{attrs:t}=o;const{prefixCls:n,vertical:s,reverse:a,marks:r,dots:i,step:l,included:u,lowerBound:d,upperBound:m,max:b,min:C,dotStyle:y,activeDotStyle:w}=t,h=b-C,S=je(s,r,i,l,C,b).map(c=>{const $=`${Math.abs(c-C)/h*100}%`,V=!u&&c===m||u&&c<=m&&c>=d;let x=s?f(f({},y),{[a?"top":"bottom"]:$}):f(f({},y),{[a?"right":"left"]:$});V&&(x=f(f({},x),w));const v=j({[`${n}-dot`]:!0,[`${n}-dot-active`]:V,[`${n}-dot-reverse`]:a});return B("span",{class:v,style:x,key:c},null)});return B("div",{class:`${n}-step`},[S])};ce.inheritAttrs=!1;const he=(e,o)=>{let{attrs:t,slots:n}=o;const{class:s,vertical:a,reverse:r,marks:i,included:l,upperBound:u,lowerBound:d,max:m,min:b,onClickLabel:C}=t,y=Object.keys(i),w=n.mark,h=m-b,S=y.map(parseFloat).sort((c,$)=>c-$).map(c=>{const $=typeof i[c]=="function"?i[c]():i[c],V=typeof $=="object"&&!$e($);let x=V?$.label:$;if(!x&&x!==0)return null;w&&(x=w({point:c,label:x}));const v=!l&&c===u||l&&c<=u&&c>=d,p=j({[`${s}-text`]:!0,[`${s}-text-active`]:v}),M={marginBottom:"-50%",[r?"top":"bottom"]:`${(c-b)/h*100}%`},O={transform:`translateX(${r?"50%":"-50%"})`,msTransform:`translateX(${r?"50%":"-50%"})`,[r?"right":"left"]:`${(c-b)/h*100}%`},T=a?M:O,L=V?f(f({},T),$.style):T,H={[ue?"onTouchstartPassive":"onTouchstart"]:k=>C(k,c)};return B("span",P({class:p,style:L,key:c,onMousedown:k=>C(k,c)},H),[x])});return B("div",{class:s},[S])};he.inheritAttrs=!1;const fe=I({compatConfig:{MODE:3},name:"Handle",inheritAttrs:!1,props:{prefixCls:String,vertical:{type:Boolean,default:void 0},offset:Number,disabled:{type:Boolean,default:void 0},min:Number,max:Number,value:Number,tabindex:g.oneOfType([g.number,g.string]),reverse:{type:Boolean,default:void 0},ariaLabel:String,ariaLabelledBy:String,ariaValueTextFormatter:Function,onMouseenter:{type:Function},onMouseleave:{type:Function},onMousedown:{type:Function}},setup(e,o){let{attrs:t,emit:n,expose:s}=o;const a=Q(!1),r=Q(),i=()=>{document.activeElement===r.value&&(a.value=!0)},l=h=>{a.value=!1,n("blur",h)},u=()=>{a.value=!1},d=()=>{var h;(h=r.value)===null||h===void 0||h.focus()},m=()=>{var h;(h=r.value)===null||h===void 0||h.blur()},b=()=>{a.value=!0,d()},C=h=>{h.preventDefault(),d(),n("mousedown",h)};s({focus:d,blur:m,clickFocus:b,ref:r});let y=null;ke(()=>{y=G(document,"mouseup",i)}),ie(()=>{y?.remove()});const w=le(()=>{const{vertical:h,offset:S,reverse:c}=e;return h?{[c?"top":"bottom"]:`${S}%`,[c?"bottom":"top"]:"auto",transform:c?null:"translateY(+50%)"}:{[c?"right":"left"]:`${S}%`,[c?"left":"right"]:"auto",transform:`translateX(${c?"+":"-"}50%)`}});return()=>{const{prefixCls:h,disabled:S,min:c,max:$,value:V,tabindex:x,ariaLabel:v,ariaLabelledBy:p,ariaValueTextFormatter:M,onMouseenter:O,onMouseleave:T}=e,L=j(t.class,{[`${h}-handle-click-focused`]:a.value}),H={"aria-valuemin":c,"aria-valuemax":$,"aria-valuenow":V,"aria-disabled":!!S},k=[t.style,w.value];let F=x||0;(S||x===null)&&(F=null);let W;M&&(W=M(V));const K=f(f(f(f({},t),{role:"slider",tabindex:F}),H),{class:L,onBlur:l,onKeydown:u,onMousedown:C,onMouseenter:O,onMouseleave:T,ref:r,style:k});return B("div",P(P({},K),{},{"aria-label":v,"aria-labelledby":p,"aria-valuetext":W}),null)}}});function X(e,o){try{return Object.keys(o).some(t=>e.target===o[t].ref)}catch{return!1}}function pe(e,o){let{min:t,max:n}=o;return e<t||e>n}function te(e){return e.touches.length>1||e.type.toLowerCase()==="touchend"&&e.touches.length>0}function ne(e,o){let{marks:t,step:n,min:s,max:a}=o;const r=Object.keys(t).map(parseFloat);if(n!==null){const l=Math.pow(10,me(n)),u=Math.floor((a*l-s*l)/(n*l)),d=Math.min((e-s)/n,u),m=Math.round(d)*n+s;r.push(m)}const i=r.map(l=>Math.abs(e-l));return r[i.indexOf(Math.min(...i))]}function me(e){const o=e.toString();let t=0;return o.indexOf(".")>=0&&(t=o.length-o.indexOf(".")-1),t}function oe(e,o){let t=1;return window.visualViewport&&(t=+(window.visualViewport.width/document.body.getBoundingClientRect().width).toFixed(2)),(e?o.clientY:o.pageX)/t}function se(e,o){let t=1;return window.visualViewport&&(t=+(window.visualViewport.width/document.body.getBoundingClientRect().width).toFixed(2)),(e?o.touches[0].clientY:o.touches[0].pageX)/t}function ae(e,o){const t=o.getBoundingClientRect();return e?t.top+t.height*.5:window.scrollX+t.left+t.width*.5}function q(e,o){let{max:t,min:n}=o;return e<=n?n:e>=t?t:e}function ge(e,o){const{step:t}=o,n=isFinite(ne(e,o))?ne(e,o):0;return t===null?n:parseFloat(n.toFixed(me(t)))}function A(e){e.stopPropagation(),e.preventDefault()}function ze(e,o,t){const n={increase:(r,i)=>r+i,decrease:(r,i)=>r-i},s=n[e](Object.keys(t.marks).indexOf(JSON.stringify(o)),1),a=Object.keys(t.marks)[s];return t.step?n[e](o,t.step):Object.keys(t.marks).length&&t.marks[a]?t.marks[a]:o}function ve(e,o,t){const n="increase",s="decrease";let a=n;switch(e.keyCode){case E.UP:a=o&&t?s:n;break;case E.RIGHT:a=!o&&t?s:n;break;case E.DOWN:a=o&&t?n:s;break;case E.LEFT:a=!o&&t?n:s;break;case E.END:return(r,i)=>i.max;case E.HOME:return(r,i)=>i.min;case E.PAGE_UP:return(r,i)=>r+i.step*2;case E.PAGE_DOWN:return(r,i)=>r-i.step*2;default:return}return(r,i)=>ze(a,r,i)}var Ae=function(e,o){var t={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&o.indexOf(n)<0&&(t[n]=e[n]);if(e!=null&&typeof Object.getOwnPropertySymbols=="function")for(var s=0,n=Object.getOwnPropertySymbols(e);s<n.length;s++)o.indexOf(n[s])<0&&Object.prototype.propertyIsEnumerable.call(e,n[s])&&(t[n[s]]=e[n[s]]);return t};function R(){}function be(e){const o={id:String,min:Number,max:Number,step:Number,marks:g.object,included:{type:Boolean,default:void 0},prefixCls:String,disabled:{type:Boolean,default:void 0},handle:Function,dots:{type:Boolean,default:void 0},vertical:{type:Boolean,default:void 0},reverse:{type:Boolean,default:void 0},minimumTrackStyle:g.object,maximumTrackStyle:g.object,handleStyle:g.oneOfType([g.object,g.arrayOf(g.object)]),trackStyle:g.oneOfType([g.object,g.arrayOf(g.object)]),railStyle:g.object,dotStyle:g.object,activeDotStyle:g.object,autofocus:{type:Boolean,default:void 0},draggableTrack:{type:Boolean,default:void 0}};return I({compatConfig:{MODE:3},name:"CreateSlider",mixins:[J,e],inheritAttrs:!1,props:de(o,{prefixCls:"rc-slider",min:0,max:100,step:1,marks:{},included:!0,disabled:!1,dots:!1,vertical:!1,reverse:!1,trackStyle:[{}],handleStyle:[{}],railStyle:{},dotStyle:{},activeDotStyle:{}}),emits:["change","blur","focus"],data(){const{step:t,max:n,min:s}=this;return this.handlesRefs={},{}},mounted(){this.$nextTick(()=>{this.document=this.sliderRef&&this.sliderRef.ownerDocument;const{autofocus:t,disabled:n}=this;t&&!n&&this.focus()})},beforeUnmount(){this.$nextTick(()=>{this.removeDocumentEvents()})},methods:{defaultHandle(t){var{index:n,directives:s,className:a,style:r}=t,i=Ae(t,["index","directives","className","style"]);if(delete i.dragging,i.value===null)return null;const l=f(f({},i),{class:a,style:r,key:n});return B(fe,l,null)},onDown(t,n){let s=n;const{draggableTrack:a,vertical:r}=this.$props,{bounds:i}=this.$data,l=a&&this.positionGetValue?this.positionGetValue(s)||[]:[],u=X(t,this.handlesRefs);if(this.dragTrack=a&&i.length>=2&&!u&&!l.map((d,m)=>{const b=m?!0:d>=i[m];return m===l.length-1?d<=i[m]:b}).some(d=>!d),this.dragTrack)this.dragOffset=s,this.startBounds=[...i];else{if(!u)this.dragOffset=0;else{const d=ae(r,t.target);this.dragOffset=s-d,s=d}this.onStart(s)}},onMouseDown(t){if(t.button!==0)return;this.removeDocumentEvents();const n=this.$props.vertical,s=oe(n,t);this.onDown(t,s),this.addDocumentMouseEvents()},onTouchStart(t){if(te(t))return;const n=this.vertical,s=se(n,t);this.onDown(t,s),this.addDocumentTouchEvents(),A(t)},onFocus(t){const{vertical:n}=this;if(X(t,this.handlesRefs)&&!this.dragTrack){const s=ae(n,t.target);this.dragOffset=0,this.onStart(s),A(t),this.$emit("focus",t)}},onBlur(t){this.dragTrack||this.onEnd(),this.$emit("blur",t)},onMouseUp(){this.handlesRefs[this.prevMovedHandleIndex]&&this.handlesRefs[this.prevMovedHandleIndex].clickFocus()},onMouseMove(t){if(!this.sliderRef){this.onEnd();return}const n=oe(this.vertical,t);this.onMove(t,n-this.dragOffset,this.dragTrack,this.startBounds)},onTouchMove(t){if(te(t)||!this.sliderRef){this.onEnd();return}const n=se(this.vertical,t);this.onMove(t,n-this.dragOffset,this.dragTrack,this.startBounds)},onKeyDown(t){this.sliderRef&&X(t,this.handlesRefs)&&this.onKeyboard(t)},onClickMarkLabel(t,n){t.stopPropagation(),this.onChange({sValue:n}),this.setState({sValue:n},()=>this.onEnd(!0))},getSliderStart(){const t=this.sliderRef,{vertical:n,reverse:s}=this,a=t.getBoundingClientRect();return n?s?a.bottom:a.top:window.scrollX+(s?a.right:a.left)},getSliderLength(){const t=this.sliderRef;if(!t)return 0;const n=t.getBoundingClientRect();return this.vertical?n.height:n.width},addDocumentTouchEvents(){this.onTouchMoveListener=G(this.document,"touchmove",this.onTouchMove),this.onTouchUpListener=G(this.document,"touchend",this.onEnd)},addDocumentMouseEvents(){this.onMouseMoveListener=G(this.document,"mousemove",this.onMouseMove),this.onMouseUpListener=G(this.document,"mouseup",this.onEnd)},removeDocumentEvents(){this.onTouchMoveListener&&this.onTouchMoveListener.remove(),this.onTouchUpListener&&this.onTouchUpListener.remove(),this.onMouseMoveListener&&this.onMouseMoveListener.remove(),this.onMouseUpListener&&this.onMouseUpListener.remove()},focus(){var t;this.$props.disabled||(t=this.handlesRefs[0])===null||t===void 0||t.focus()},blur(){this.$props.disabled||Object.keys(this.handlesRefs).forEach(t=>{var n,s;(s=(n=this.handlesRefs[t])===null||n===void 0?void 0:n.blur)===null||s===void 0||s.call(n)})},calcValue(t){const{vertical:n,min:s,max:a}=this,r=Math.abs(Math.max(t,0)/this.getSliderLength());return n?(1-r)*(a-s)+s:r*(a-s)+s},calcValueByPos(t){const s=(this.reverse?-1:1)*(t-this.getSliderStart());return this.trimAlignValue(this.calcValue(s))},calcOffset(t){const{min:n,max:s}=this,a=(t-n)/(s-n);return Math.max(0,a*100)},saveSlider(t){this.sliderRef=t},saveHandle(t,n){this.handlesRefs[t]=n}},render(){const{prefixCls:t,marks:n,dots:s,step:a,included:r,disabled:i,vertical:l,reverse:u,min:d,max:m,maximumTrackStyle:b,railStyle:C,dotStyle:y,activeDotStyle:w,id:h}=this,{class:S,style:c}=this.$attrs,{tracks:$,handles:V}=this.renderSlider(),x=j(t,S,{[`${t}-with-marks`]:Object.keys(n).length,[`${t}-disabled`]:i,[`${t}-vertical`]:l,[`${t}-horizontal`]:!l}),v={vertical:l,marks:n,included:r,lowerBound:this.getLowerBound(),upperBound:this.getUpperBound(),max:m,min:d,reverse:u,class:`${t}-mark`,onClickLabel:i?R:this.onClickMarkLabel},p={[ue?"onTouchstartPassive":"onTouchstart"]:i?R:this.onTouchStart};return B("div",P(P({id:h,ref:this.saveSlider,tabindex:"-1",class:x},p),{},{onMousedown:i?R:this.onMouseDown,onMouseup:i?R:this.onMouseUp,onKeydown:i?R:this.onKeyDown,onFocus:i?R:this.onFocus,onBlur:i?R:this.onBlur,style:c}),[B("div",{class:`${t}-rail`,style:f(f({},b),C)},null),$,B(ce,{prefixCls:t,vertical:l,reverse:u,marks:n,dots:s,step:a,included:r,lowerBound:this.getLowerBound(),upperBound:this.getUpperBound(),max:m,min:d,dotStyle:y,activeDotStyle:w},null),V,B(he,v,{mark:this.$slots.mark}),Ce(this)])}})}const Ie=I({compatConfig:{MODE:3},name:"Slider",mixins:[J],inheritAttrs:!1,props:{defaultValue:Number,value:Number,disabled:{type:Boolean,default:void 0},autofocus:{type:Boolean,default:void 0},tabindex:g.oneOfType([g.number,g.string]),reverse:{type:Boolean,default:void 0},min:Number,max:Number,ariaLabelForHandle:String,ariaLabelledByForHandle:String,ariaValueTextFormatterForHandle:String,startPoint:Number},emits:["beforeChange","afterChange","change"],data(){const e=this.defaultValue!==void 0?this.defaultValue:this.min,o=this.value!==void 0?this.value:e;return{sValue:this.trimAlignValue(o),dragging:!1}},watch:{value:{handler(e){this.setChangeValue(e)},deep:!0},min(){const{sValue:e}=this;this.setChangeValue(e)},max(){const{sValue:e}=this;this.setChangeValue(e)}},methods:{setChangeValue(e){const o=e!==void 0?e:this.sValue,t=this.trimAlignValue(o,this.$props);t!==this.sValue&&(this.setState({sValue:t}),pe(o,this.$props)&&this.$emit("change",t))},onChange(e){const o=!Y(this,"value"),t=e.sValue>this.max?f(f({},e),{sValue:this.max}):e;o&&this.setState(t);const n=t.sValue;this.$emit("change",n)},onStart(e){this.setState({dragging:!0});const{sValue:o}=this;this.$emit("beforeChange",o);const t=this.calcValueByPos(e);this.startValue=t,this.startPosition=e,t!==o&&(this.prevMovedHandleIndex=0,this.onChange({sValue:t}))},onEnd(e){const{dragging:o}=this;this.removeDocumentEvents(),(o||e)&&this.$emit("afterChange",this.sValue),this.setState({dragging:!1})},onMove(e,o){A(e);const{sValue:t}=this,n=this.calcValueByPos(o);n!==t&&this.onChange({sValue:n})},onKeyboard(e){const{reverse:o,vertical:t}=this.$props,n=ve(e,t,o);if(n){A(e);const{sValue:s}=this,a=n(s,this.$props),r=this.trimAlignValue(a);if(r===s)return;this.onChange({sValue:r}),this.$emit("afterChange",r),this.onEnd()}},getLowerBound(){const e=this.$props.startPoint||this.$props.min;return this.$data.sValue>e?e:this.$data.sValue},getUpperBound(){return this.$data.sValue<this.$props.startPoint?this.$props.startPoint:this.$data.sValue},trimAlignValue(e){let o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(e===null)return null;const t=f(f({},this.$props),o),n=q(e,t);return ge(n,t)},getTrack(e){let{prefixCls:o,reverse:t,vertical:n,included:s,minimumTrackStyle:a,mergedTrackStyle:r,length:i,offset:l}=e;return B(Z,{class:`${o}-track`,vertical:n,included:s,offset:l,reverse:t,length:i,style:f(f({},a),r)},null)},renderSlider(){const{prefixCls:e,vertical:o,included:t,disabled:n,minimumTrackStyle:s,trackStyle:a,handleStyle:r,tabindex:i,ariaLabelForHandle:l,ariaLabelledByForHandle:u,ariaValueTextFormatterForHandle:d,min:m,max:b,startPoint:C,reverse:y,handle:w,defaultHandle:h}=this,S=w||h,{sValue:c,dragging:$}=this,V=this.calcOffset(c),x=S({class:`${e}-handle`,prefixCls:e,vertical:o,offset:V,value:c,dragging:$,disabled:n,min:m,max:b,reverse:y,index:0,tabindex:i,ariaLabel:l,ariaLabelledBy:u,ariaValueTextFormatter:d,style:r[0]||r,ref:M=>this.saveHandle(0,M),onFocus:this.onFocus,onBlur:this.onBlur}),v=C!==void 0?this.calcOffset(C):0,p=a[0]||a;return{tracks:this.getTrack({prefixCls:e,reverse:y,vertical:o,included:t,offset:v,minimumTrackStyle:s,mergedTrackStyle:p,length:V-v}),handles:x}}}}),We=be(Ie),_=e=>{let{value:o,handle:t,bounds:n,props:s}=e;const{allowCross:a,pushable:r}=s,i=Number(r),l=q(o,s);let u=l;return!a&&t!=null&&n!==void 0&&(t>0&&l<=n[t-1]+i&&(u=n[t-1]+i),t<n.length-1&&l>=n[t+1]-i&&(u=n[t+1]-i)),ge(u,s)},_e={defaultValue:g.arrayOf(g.number),value:g.arrayOf(g.number),count:Number,pushable:Ve(g.oneOfType([g.looseBool,g.number])),allowCross:{type:Boolean,default:void 0},disabled:{type:Boolean,default:void 0},reverse:{type:Boolean,default:void 0},tabindex:g.arrayOf(g.number),prefixCls:String,min:Number,max:Number,autofocus:{type:Boolean,default:void 0},ariaLabelGroupForHandles:Array,ariaLabelledByGroupForHandles:Array,ariaValueTextFormatterGroupForHandles:Array,draggableTrack:{type:Boolean,default:void 0}},Ge=I({compatConfig:{MODE:3},name:"Range",mixins:[J],inheritAttrs:!1,props:de(_e,{count:1,allowCross:!0,pushable:!1,tabindex:[],draggableTrack:!1,ariaLabelGroupForHandles:[],ariaLabelledByGroupForHandles:[],ariaValueTextFormatterGroupForHandles:[]}),emits:["beforeChange","afterChange","change"],displayName:"Range",data(){const{count:e,min:o,max:t}=this,n=Array(...Array(e+1)).map(()=>o),s=Y(this,"defaultValue")?this.defaultValue:n;let{value:a}=this;a===void 0&&(a=s);const r=a.map((l,u)=>_({value:l,handle:u,props:this.$props}));return{sHandle:null,recent:r[0]===t?0:r.length-1,bounds:r}},watch:{value:{handler(e){const{bounds:o}=this;this.setChangeValue(e||o)},deep:!0},min(){const{value:e}=this;this.setChangeValue(e||this.bounds)},max(){const{value:e}=this;this.setChangeValue(e||this.bounds)}},methods:{setChangeValue(e){const{bounds:o}=this;let t=e.map((n,s)=>_({value:n,handle:s,bounds:o,props:this.$props}));if(o.length===t.length){if(t.every((n,s)=>n===o[s]))return null}else t=e.map((n,s)=>_({value:n,handle:s,props:this.$props}));if(this.setState({bounds:t}),e.some(n=>pe(n,this.$props))){const n=e.map(s=>q(s,this.$props));this.$emit("change",n)}},onChange(e){if(!Y(this,"value"))this.setState(e);else{const s={};["sHandle","recent"].forEach(a=>{e[a]!==void 0&&(s[a]=e[a])}),Object.keys(s).length&&this.setState(s)}const n=f(f({},this.$data),e).bounds;this.$emit("change",n)},positionGetValue(e){const o=this.getValue(),t=this.calcValueByPos(e),n=this.getClosestBound(t),s=this.getBoundNeedMoving(t,n),a=o[s];if(t===a)return null;const r=[...o];return r[s]=t,r},onStart(e){const{bounds:o}=this;this.$emit("beforeChange",o);const t=this.calcValueByPos(e);this.startValue=t,this.startPosition=e;const n=this.getClosestBound(t);this.prevMovedHandleIndex=this.getBoundNeedMoving(t,n),this.setState({sHandle:this.prevMovedHandleIndex,recent:this.prevMovedHandleIndex});const s=o[this.prevMovedHandleIndex];if(t===s)return;const a=[...o];a[this.prevMovedHandleIndex]=t,this.onChange({bounds:a})},onEnd(e){const{sHandle:o}=this;this.removeDocumentEvents(),o||(this.dragTrack=!1),(o!==null||e)&&this.$emit("afterChange",this.bounds),this.setState({sHandle:null})},onMove(e,o,t,n){A(e);const{$data:s,$props:a}=this,r=a.max||100,i=a.min||0;if(t){let b=a.vertical?-o:o;b=a.reverse?-b:b;const C=r-Math.max(...n),y=i-Math.min(...n),w=Math.min(Math.max(b/(this.getSliderLength()/100),y),C),h=n.map(S=>Math.floor(Math.max(Math.min(S+w,r),i)));s.bounds.map((S,c)=>S===h[c]).some(S=>!S)&&this.onChange({bounds:h});return}const{bounds:l,sHandle:u}=this,d=this.calcValueByPos(o),m=l[u];d!==m&&this.moveTo(d)},onKeyboard(e){const{reverse:o,vertical:t}=this.$props,n=ve(e,t,o);if(n){A(e);const{bounds:s,sHandle:a}=this,r=s[a===null?this.recent:a],i=n(r,this.$props),l=_({value:i,handle:a,bounds:s,props:this.$props});if(l===r)return;this.moveTo(l,!0)}},getClosestBound(e){const{bounds:o}=this;let t=0;for(let n=1;n<o.length-1;n+=1)e>=o[n]&&(t=n);return Math.abs(o[t+1]-e)<Math.abs(o[t]-e)&&(t+=1),t},getBoundNeedMoving(e,o){const{bounds:t,recent:n}=this;let s=o;const a=t[o+1]===t[o];return a&&t[n]===t[o]&&(s=n),a&&e!==t[o+1]&&(s=e<t[o+1]?o:o+1),s},getLowerBound(){return this.bounds[0]},getUpperBound(){const{bounds:e}=this;return e[e.length-1]},getPoints(){const{marks:e,step:o,min:t,max:n}=this,s=this.internalPointsCache;if(!s||s.marks!==e||s.step!==o){const a=f({},e);if(o!==null)for(let i=t;i<=n;i+=o)a[i]=i;const r=Object.keys(a).map(parseFloat);r.sort((i,l)=>i-l),this.internalPointsCache={marks:e,step:o,points:r}}return this.internalPointsCache.points},moveTo(e,o){const t=[...this.bounds],{sHandle:n,recent:s}=this,a=n===null?s:n;t[a]=e;let r=a;this.$props.pushable!==!1?this.pushSurroundingHandles(t,r):this.$props.allowCross&&(t.sort((i,l)=>i-l),r=t.indexOf(e)),this.onChange({recent:r,sHandle:r,bounds:t}),o&&(this.$emit("afterChange",t),this.setState({},()=>{this.handlesRefs[r].focus()}),this.onEnd())},pushSurroundingHandles(e,o){const t=e[o],{pushable:n}=this,s=Number(n);let a=0;if(e[o+1]-t<s&&(a=1),t-e[o-1]<s&&(a=-1),a===0)return;const r=o+a,i=a*(e[r]-t);this.pushHandle(e,r,a,s-i)||(e[o]=e[r]-a*s)},pushHandle(e,o,t,n){const s=e[o];let a=e[o];for(;t*(a-s)<n;){if(!this.pushHandleOnePoint(e,o,t))return e[o]=s,!1;a=e[o]}return!0},pushHandleOnePoint(e,o,t){const n=this.getPoints(),a=n.indexOf(e[o])+t;if(a>=n.length||a<0)return!1;const r=o+t,i=n[a],{pushable:l}=this,u=Number(l),d=t*(e[r]-i);return this.pushHandle(e,r,t,u-d)?(e[o]=i,!0):!1},trimAlignValue(e){const{sHandle:o,bounds:t}=this;return _({value:e,handle:o,bounds:t,props:this.$props})},ensureValueNotConflict(e,o,t){let{allowCross:n,pushable:s}=t;const a=this.$data||{},{bounds:r}=a;if(e=e===void 0?a.sHandle:e,s=Number(s),!n&&e!=null&&r!==void 0){if(e>0&&o<=r[e-1]+s)return r[e-1]+s;if(e<r.length-1&&o>=r[e+1]-s)return r[e+1]-s}return o},getTrack(e){let{bounds:o,prefixCls:t,reverse:n,vertical:s,included:a,offsets:r,trackStyle:i}=e;return o.slice(0,-1).map((l,u)=>{const d=u+1,m=j({[`${t}-track`]:!0,[`${t}-track-${d}`]:!0});return B(Z,{class:m,vertical:s,reverse:n,included:a,offset:r[d-1],length:r[d]-r[d-1],style:i[u],key:d},null)})},renderSlider(){const{sHandle:e,bounds:o,prefixCls:t,vertical:n,included:s,disabled:a,min:r,max:i,reverse:l,handle:u,defaultHandle:d,trackStyle:m,handleStyle:b,tabindex:C,ariaLabelGroupForHandles:y,ariaLabelledByGroupForHandles:w,ariaValueTextFormatterGroupForHandles:h}=this,S=u||d,c=o.map(x=>this.calcOffset(x)),$=`${t}-handle`,V=o.map((x,v)=>{let p=C[v]||0;(a||C[v]===null)&&(p=null);const M=e===v;return S({class:j({[$]:!0,[`${$}-${v+1}`]:!0,[`${$}-dragging`]:M}),prefixCls:t,vertical:n,dragging:M,offset:c[v],value:x,index:v,tabindex:p,min:r,max:i,reverse:l,disabled:a,style:b[v],ref:O=>this.saveHandle(v,O),onFocus:this.onFocus,onBlur:this.onBlur,ariaLabel:y[v],ariaLabelledBy:w[v],ariaValueTextFormatter:h[v]})});return{tracks:this.getTrack({bounds:o,prefixCls:t,reverse:l,vertical:n,included:s,offsets:c,trackStyle:m}),handles:V}}}}),Ue=be(Ge),Ke=I({compatConfig:{MODE:3},name:"SliderTooltip",inheritAttrs:!1,props:Ee(),setup(e,o){let{attrs:t,slots:n}=o;const s=U(null),a=U(null);function r(){ee.cancel(a.value),a.value=null}function i(){a.value=ee(()=>{var u;(u=s.value)===null||u===void 0||u.forcePopupAlign(),a.value=null})}const l=()=>{r(),e.open&&i()};return Fe([()=>e.open,()=>e.title],()=>{l()},{flush:"post",immediate:!0}),Le(()=>{l()}),ie(()=>{r()}),()=>B(Ne,P(P({ref:s},e),t),n)}}),Xe=e=>{const{componentCls:o,controlSize:t,dotSize:n,marginFull:s,marginPart:a,colorFillContentHover:r}=e;return{[o]:f(f({},Me(e)),{position:"relative",height:t,margin:`${a}px ${s}px`,padding:0,cursor:"pointer",touchAction:"none","&-vertical":{margin:`${s}px ${a}px`},[`${o}-rail`]:{position:"absolute",backgroundColor:e.colorFillTertiary,borderRadius:e.borderRadiusXS,transition:`background-color ${e.motionDurationMid}`},[`${o}-track`]:{position:"absolute",backgroundColor:e.colorPrimaryBorder,borderRadius:e.borderRadiusXS,transition:`background-color ${e.motionDurationMid}`},"&:hover":{[`${o}-rail`]:{backgroundColor:e.colorFillSecondary},[`${o}-track`]:{backgroundColor:e.colorPrimaryBorderHover},[`${o}-dot`]:{borderColor:r},[`${o}-handle::after`]:{boxShadow:`0 0 0 ${e.handleLineWidth}px ${e.colorPrimaryBorderHover}`},[`${o}-dot-active`]:{borderColor:e.colorPrimary}},[`${o}-handle`]:{position:"absolute",width:e.handleSize,height:e.handleSize,outline:"none",[`${o}-dragging`]:{zIndex:1},"&::before":{content:'""',position:"absolute",insetInlineStart:-e.handleLineWidth,insetBlockStart:-e.handleLineWidth,width:e.handleSize+e.handleLineWidth*2,height:e.handleSize+e.handleLineWidth*2,backgroundColor:"transparent"},"&::after":{content:'""',position:"absolute",insetBlockStart:0,insetInlineStart:0,width:e.handleSize,height:e.handleSize,backgroundColor:e.colorBgElevated,boxShadow:`0 0 0 ${e.handleLineWidth}px ${e.colorPrimaryBorder}`,borderRadius:"50%",cursor:"pointer",transition:`
|
|
2
|
-
inset-inline-start ${e.motionDurationMid},
|
|
3
|
-
inset-block-start ${e.motionDurationMid},
|
|
4
|
-
width ${e.motionDurationMid},
|
|
5
|
-
height ${e.motionDurationMid},
|
|
6
|
-
box-shadow ${e.motionDurationMid}
|
|
7
|
-
`},"&:hover, &:active, &:focus":{"&::before":{insetInlineStart:-((e.handleSizeHover-e.handleSize)/2+e.handleLineWidthHover),insetBlockStart:-((e.handleSizeHover-e.handleSize)/2+e.handleLineWidthHover),width:e.handleSizeHover+e.handleLineWidthHover*2,height:e.handleSizeHover+e.handleLineWidthHover*2},"&::after":{boxShadow:`0 0 0 ${e.handleLineWidthHover}px ${e.colorPrimary}`,width:e.handleSizeHover,height:e.handleSizeHover,insetInlineStart:(e.handleSize-e.handleSizeHover)/2,insetBlockStart:(e.handleSize-e.handleSizeHover)/2}}},[`${o}-mark`]:{position:"absolute",fontSize:e.fontSize},[`${o}-mark-text`]:{position:"absolute",display:"inline-block",color:e.colorTextDescription,textAlign:"center",wordBreak:"keep-all",cursor:"pointer",userSelect:"none","&-active":{color:e.colorText}},[`${o}-step`]:{position:"absolute",background:"transparent",pointerEvents:"none"},[`${o}-dot`]:{position:"absolute",width:n,height:n,backgroundColor:e.colorBgElevated,border:`${e.handleLineWidth}px solid ${e.colorBorderSecondary}`,borderRadius:"50%",cursor:"pointer",transition:`border-color ${e.motionDurationSlow}`,"&-active":{borderColor:e.colorPrimaryBorder}},[`&${o}-disabled`]:{cursor:"not-allowed",[`${o}-rail`]:{backgroundColor:`${e.colorFillSecondary} !important`},[`${o}-track`]:{backgroundColor:`${e.colorTextDisabled} !important`},[`
|
|
8
|
-
${o}-dot
|
|
9
|
-
`]:{backgroundColor:e.colorBgElevated,borderColor:e.colorTextDisabled,boxShadow:"none",cursor:"not-allowed"},[`${o}-handle::after`]:{backgroundColor:e.colorBgElevated,cursor:"not-allowed",width:e.handleSize,height:e.handleSize,boxShadow:`0 0 0 ${e.handleLineWidth}px ${new Re(e.colorTextDisabled).onBackground(e.colorBgContainer).toHexString()}`,insetInlineStart:0,insetBlockStart:0},[`
|
|
10
|
-
${o}-mark-text,
|
|
11
|
-
${o}-dot
|
|
12
|
-
`]:{cursor:"not-allowed !important"}}})}},ye=(e,o)=>{const{componentCls:t,railSize:n,handleSize:s,dotSize:a}=e,r=o?"paddingBlock":"paddingInline",i=o?"width":"height",l=o?"height":"width",u=o?"insetBlockStart":"insetInlineStart",d=o?"top":"insetInlineStart";return{[r]:n,[l]:n*3,[`${t}-rail`]:{[i]:"100%",[l]:n},[`${t}-track`]:{[l]:n},[`${t}-handle`]:{[u]:(n*3-s)/2},[`${t}-mark`]:{insetInlineStart:0,top:0,[d]:s,[i]:"100%"},[`${t}-step`]:{insetInlineStart:0,top:0,[d]:n,[i]:"100%",[l]:n},[`${t}-dot`]:{position:"absolute",[u]:(n-a)/2}}},Ye=e=>{const{componentCls:o,marginPartWithMark:t}=e;return{[`${o}-horizontal`]:f(f({},ye(e,!0)),{[`&${o}-with-marks`]:{marginBottom:t}})}},Je=e=>{const{componentCls:o}=e;return{[`${o}-vertical`]:f(f({},ye(e,!1)),{height:"100%"})}},Ze=Be("Slider",e=>{const o=we(e,{marginPart:(e.controlHeight-e.controlSize)/2,marginFull:e.controlSize/2,marginPartWithMark:e.controlHeightLG-e.controlSize});return[Xe(o),Ye(o),Je(o)]},e=>{const t=e.controlHeightLG/4,n=e.controlHeightSM/2,s=e.lineWidth+1,a=e.lineWidth+3;return{controlSize:t,railSize:4,handleSize:t,handleSizeHover:n,dotSize:8,handleLineWidth:s,handleLineWidthHover:a}});var re=function(e,o){var t={};for(var n in e)Object.prototype.hasOwnProperty.call(e,n)&&o.indexOf(n)<0&&(t[n]=e[n]);if(e!=null&&typeof Object.getOwnPropertySymbols=="function")for(var s=0,n=Object.getOwnPropertySymbols(e);s<n.length;s++)o.indexOf(n[s])<0&&Object.prototype.propertyIsEnumerable.call(e,n[s])&&(t[n[s]]=e[n[s]]);return t};const qe=e=>typeof e=="number"?e.toString():"",Qe=()=>({id:String,prefixCls:String,tooltipPrefixCls:String,range:D([Boolean,Object]),reverse:N(),min:Number,max:Number,step:D([Object,Number]),marks:Oe(),dots:N(),value:D([Array,Number]),defaultValue:D([Array,Number]),included:N(),disabled:N(),vertical:N(),tipFormatter:D([Function,Object],()=>qe),tooltipOpen:N(),tooltipVisible:N(),tooltipPlacement:He(),getTooltipPopupContainer:z(),autofocus:N(),handleStyle:D([Array,Object]),trackStyle:D([Array,Object]),onChange:z(),onAfterChange:z(),onFocus:z(),onBlur:z(),"onUpdate:value":z()}),et=I({compatConfig:{MODE:3},name:"ASlider",inheritAttrs:!1,props:Qe(),slots:Object,setup(e,o){let{attrs:t,slots:n,emit:s,expose:a}=o;const{prefixCls:r,rootPrefixCls:i,direction:l,getPopupContainer:u,configProvider:d}=Pe("slider",e),[m,b]=Ze(r),C=De(),y=U(),w=U({}),h=(p,M)=>{w.value[p]=M},S=le(()=>e.tooltipPlacement?e.tooltipPlacement:e.vertical?l.value==="rtl"?"left":"right":"top"),c=()=>{var p;(p=y.value)===null||p===void 0||p.focus()},$=()=>{var p;(p=y.value)===null||p===void 0||p.blur()},V=p=>{s("update:value",p),s("change",p),C.onFieldChange()},x=p=>{s("blur",p)};a({focus:c,blur:$});const v=p=>{var{tooltipPrefixCls:M}=p,O=p.info,{value:T,dragging:L,index:H}=O,k=re(O,["value","dragging","index"]);const{tipFormatter:F,tooltipOpen:W=e.tooltipVisible,getTooltipPopupContainer:K}=e,Se=F?w.value[H]||L:!1,xe=W||W===void 0&&Se;return B(Ke,{prefixCls:M,title:F?F(T):"",open:xe,placement:S.value,transitionName:`${i.value}-zoom-down`,key:H,overlayClassName:`${r.value}-tooltip`,getPopupContainer:K||u?.value},{default:()=>[B(fe,P(P({},k),{},{value:T,onMouseenter:()=>h(H,!0),onMouseleave:()=>h(H,!1)}),null)]})};return()=>{const{tooltipPrefixCls:p,range:M,id:O=C.id.value}=e,T=re(e,["tooltipPrefixCls","range","id"]),L=d.getPrefixCls("tooltip",p),H=j(t.class,{[`${r.value}-rtl`]:l.value==="rtl"},b.value);l.value==="rtl"&&!T.vertical&&(T.reverse=!T.reverse);let k;return typeof M=="object"&&(k=M.draggableTrack),m(M?B(Ue,P(P(P({},t),T),{},{step:T.step,draggableTrack:k,class:H,ref:y,handle:F=>v({tooltipPrefixCls:L,prefixCls:r.value,info:F}),prefixCls:r.value,onChange:V,onBlur:x}),{mark:n.mark}):B(We,P(P(P({},t),T),{},{id:O,step:T.step,class:H,ref:y,handle:F=>v({tooltipPrefixCls:L,prefixCls:r.value,info:F}),prefixCls:r.value,onChange:V,onBlur:x}),{mark:n.mark}))}}}),St=Te(et);export{St as default,Qe as sliderProps};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{A as o}from"./Row-CQ36tMlO.js";import{R as t}from"./index-BqsvxElz.js";import"./responsiveObserve-DGFr293p.js";import"./vendor-BVLz_z7V.js";import"./useFlexGapSupport-CKCvqfWX.js";import"./styleChecker-C-ldcMcB.js";import"./index-CzARuKje.js";import"./icons-Q99MnhG8.js";const l=t(o);export{l as default};
|