chainlesschain 0.166.68 → 0.166.69

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (163) hide show
  1. package/README.md +5 -5
  2. package/package.json +1 -1
  3. package/src/assets/web-panel/assets/{AIOps-CXkSNOGY.js → AIOps-FhevRfL6.js} +1 -1
  4. package/src/assets/web-panel/assets/{ActionButton-ysMR6gTs.js → ActionButton-rOeOykx5.js} +1 -1
  5. package/src/assets/web-panel/assets/{Analytics-WGZ0sWuw.js → Analytics-BK_wYlfz.js} +3 -3
  6. package/src/assets/web-panel/assets/{AppLayout-Cs2iRlQG.js → AppLayout-_2cCtZKV.js} +5 -5
  7. package/src/assets/web-panel/assets/{Artifacts-5IdfxWz0.js → Artifacts-D5MSvVzk.js} +1 -1
  8. package/src/assets/web-panel/assets/{Audit-U9V434QX.js → Audit-yd-Ah-A3.js} +1 -1
  9. package/src/assets/web-panel/assets/{BackgroundAgents-BvFwxPlC.js → BackgroundAgents-yCaw_Gu_.js} +1 -1
  10. package/src/assets/web-panel/assets/{Backup-C9yTr9hO.js → Backup-G3ADD4N-.js} +1 -1
  11. package/src/assets/web-panel/assets/{BaseInput-BdsSwUgE.js → BaseInput-ByDhkLbF.js} +1 -1
  12. package/src/assets/web-panel/assets/{Chat-BB_2oBgH.js → Chat-BMrc7qjz.js} +5 -5
  13. package/src/assets/web-panel/assets/{ChatBubbleRenderer-Bpf1hDUl.js → ChatBubbleRenderer-nA7n0I6S.js} +1 -1
  14. package/src/assets/web-panel/assets/{Checkbox-v6M5m7dK.js → Checkbox-BHYgyZWA.js} +1 -1
  15. package/src/assets/web-panel/assets/{Codegen-CtouWSIz.js → Codegen-DJfcy0jC.js} +1 -1
  16. package/src/assets/web-panel/assets/{Col-CqQJ4ORW.js → Col-C27zROxc.js} +1 -1
  17. package/src/assets/web-panel/assets/{Community-BO__QCOy.js → Community-CuS5tq_1.js} +1 -1
  18. package/src/assets/web-panel/assets/{Compact-D0Kq4xlH.js → Compact-BrYJNe7Q.js} +1 -1
  19. package/src/assets/web-panel/assets/{Compliance-BSLKKBjA.js → Compliance-8hfahYHT.js} +1 -1
  20. package/src/assets/web-panel/assets/{Cowork-VsujXW5o.js → Cowork-DdE0n2lp.js} +3 -3
  21. package/src/assets/web-panel/assets/{Cron-j8DbLGi5.js → Cron-CUq3aSiX.js} +2 -2
  22. package/src/assets/web-panel/assets/{Crosschain-DWpYH1yN.js → Crosschain-BM4XSPWG.js} +1 -1
  23. package/src/assets/web-panel/assets/{DID-mLaRxLQh.js → DID-CdaBY57N.js} +2 -2
  24. package/src/assets/web-panel/assets/{Dashboard-Cff033Jr.js → Dashboard-Cwtd52So.js} +2 -2
  25. package/src/assets/web-panel/assets/{Dropdown-B1Upt6fP.js → Dropdown-BvlObh6U.js} +1 -1
  26. package/src/assets/web-panel/assets/{EmailListRenderer-CPtb8joV.js → EmailListRenderer-e3fLhjnX.js} +1 -1
  27. package/src/assets/web-panel/assets/{EvolutionSettings-CVh4Uv4g.js → EvolutionSettings-CTtk1Zo8.js} +1 -1
  28. package/src/assets/web-panel/assets/{FamilyGuardDashboard-CrD1PhbF.js → FamilyGuardDashboard-BpPJUnCU.js} +1 -1
  29. package/src/assets/web-panel/assets/{Federation-ftxrvqW5.js → Federation-vzjZ6_nQ.js} +1 -1
  30. package/src/assets/web-panel/assets/{FormItemContext-9O80slC1.js → FormItemContext-DEDNLhkE.js} +1 -1
  31. package/src/assets/web-panel/assets/{GenericCardRenderer-DaYvYIj9.js → GenericCardRenderer-DEl2Te5f.js} +1 -1
  32. package/src/assets/web-panel/assets/{Git-BKZh0YE5.js → Git-BzsYQnCq.js} +2 -2
  33. package/src/assets/web-panel/assets/{Governance-vWbN873j.js → Governance-zxJs6Y8s.js} +1 -1
  34. package/src/assets/web-panel/assets/{Inference-BN6RR-l8.js → Inference-5JUsrmF1.js} +1 -1
  35. package/src/assets/web-panel/assets/{KnowledgeGraph-x49x9m7Q.js → KnowledgeGraph-Br8b5Htz.js} +1 -1
  36. package/src/assets/web-panel/assets/{Logs-Co2EPLsJ.js → Logs-D-tubDMJ.js} +2 -2
  37. package/src/assets/web-panel/assets/{MarkdownRenderer-D7wIB-c7.js → MarkdownRenderer-In4itZX2.js} +1 -1
  38. package/src/assets/web-panel/assets/{Marketplace-DpPu6XQp.js → Marketplace-s8MmWkS9.js} +1 -1
  39. package/src/assets/web-panel/assets/{McpTools-BR0ksiax.js → McpTools-Wu-WRg4M.js} +3 -3
  40. package/src/assets/web-panel/assets/{Memory-BXznJ5-C.js → Memory-B_i-eX9w.js} +2 -2
  41. package/src/assets/web-panel/assets/{MobileBridge-BHSOpfv7.js → MobileBridge-Ca64kjVx.js} +1 -1
  42. package/src/assets/web-panel/assets/{MobileProjects-DdWmgIup.js → MobileProjects-Cq9AFiO4.js} +1 -1
  43. package/src/assets/web-panel/assets/{Mtc-D9Rk_IGT.js → Mtc-DKvGmG3y.js} +4 -4
  44. package/src/assets/web-panel/assets/{MtcAudit--i8q1lKc.js → MtcAudit-BVvWx8pF.js} +2 -2
  45. package/src/assets/web-panel/assets/{Multisig-BHnNG7R9.js → Multisig-wqeJ2O9x.js} +3 -3
  46. package/src/assets/web-panel/assets/{NLProgramming-Duo1ij2_.js → NLProgramming-DX87ysYu.js} +1 -1
  47. package/src/assets/web-panel/assets/{Notes-B44Le73p.js → Notes-ChenGdu0.js} +3 -3
  48. package/src/assets/web-panel/assets/{NotificationSettings-C3oy_7Gf.js → NotificationSettings-BZRa68-x.js} +1 -1
  49. package/src/assets/web-panel/assets/{OrderTableRenderer-Da_73SI5.js → OrderTableRenderer-DZ6xG1M6.js} +1 -1
  50. package/src/assets/web-panel/assets/{Organization-ChsSwKxT.js → Organization-BWJp4VPX.js} +2 -2
  51. package/src/assets/web-panel/assets/{Overflow-DR5G_cCn.js → Overflow-BoM4bYt5.js} +1 -1
  52. package/src/assets/web-panel/assets/{P2P-yfaobqow.js → P2P-Cvi8YV09.js} +2 -2
  53. package/src/assets/web-panel/assets/PdhVaultBrowser-CNVC1NIj.js +7 -0
  54. package/src/assets/web-panel/assets/{Permissions-DhinFvtE.js → Permissions-DNd1MRjW.js} +4 -4
  55. package/src/assets/web-panel/assets/{PersonalDataHub-CfeNVic1.js → PersonalDataHub-DGSBYZ5-.js} +4 -4
  56. package/src/assets/web-panel/assets/{Pipeline-CGKO26Nk.js → Pipeline-DkcoGMBo.js} +1 -1
  57. package/src/assets/web-panel/assets/{Privacy-CxxfYEJh.js → Privacy-DltwvMAW.js} +1 -1
  58. package/src/assets/web-panel/assets/{ProjectInit-CZsaAab9.js → ProjectInit-ChYbpHg8.js} +2 -2
  59. package/src/assets/web-panel/assets/{ProjectSettings-BUm_6clQ.js → ProjectSettings-B8FWiHTJ.js} +2 -2
  60. package/src/assets/web-panel/assets/{Projects-Capr8bVq.js → Projects-DuyhtSm4.js} +1 -1
  61. package/src/assets/web-panel/assets/{Providers-D28VqPja.js → Providers-Bo18Tx_6.js} +1 -1
  62. package/src/assets/web-panel/assets/{QrScannerModal-Cj200vUb.js → QrScannerModal-6W85KlsG.js} +1 -1
  63. package/src/assets/web-panel/assets/{QuickAsk-BGpnEiam.js → QuickAsk-DznRUedP.js} +1 -1
  64. package/src/assets/web-panel/assets/{Recommend-Ix79Tpni.js → Recommend-CQDN3_p-.js} +1 -1
  65. package/src/assets/web-panel/assets/{RemoteSession-BdGAFbIk.js → RemoteSession-CiJgokEj.js} +2 -2
  66. package/src/assets/web-panel/assets/{Reputation-B1Lis0Wk.js → Reputation-DexzGH7E.js} +1 -1
  67. package/src/assets/web-panel/assets/{Row-Ba_okwOW.js → Row-BgZOIvSi.js} +1 -1
  68. package/src/assets/web-panel/assets/{RssFeed-DDbEuI-m.js → RssFeed-BWIZJ_Jr.js} +3 -3
  69. package/src/assets/web-panel/assets/{Search-D89wAkMy.js → Search-B376EwWJ.js} +1 -1
  70. package/src/assets/web-panel/assets/{Security-CJKCKAU-.js → Security-92mUR5OD.js} +4 -4
  71. package/src/assets/web-panel/assets/{Services-mitEc1XV.js → Services-ClSEAOHk.js} +2 -2
  72. package/src/assets/web-panel/assets/{Skeleton-CnBjLDfX.js → Skeleton-DVhLbv99.js} +1 -1
  73. package/src/assets/web-panel/assets/{Skills-DSzDYvH3.js → Skills-JTcXs_xI.js} +1 -1
  74. package/src/assets/web-panel/assets/{Sla-CglJ_4p3.js → Sla-DnKY9zy9.js} +1 -1
  75. package/src/assets/web-panel/assets/SpeechSettings-GO1JefAH.js +1 -0
  76. package/src/assets/web-panel/assets/{SyncSettings-Cq7o6fmr.js → SyncSettings-jX5tB2St.js} +2 -2
  77. package/src/assets/web-panel/assets/{Tasks-DOxFOBpU.js → Tasks-BxRBzhUc.js} +1 -1
  78. package/src/assets/web-panel/assets/{Templates-bY0wSbQM.js → Templates-CAVkbTG1.js} +1 -1
  79. package/src/assets/web-panel/assets/{Tenant-BAyyl0qX.js → Tenant-5Y7sHBkz.js} +1 -1
  80. package/src/assets/web-panel/assets/{Terminal-BGBhSpqc.js → Terminal-CbbLShYb.js} +2 -2
  81. package/src/assets/web-panel/assets/{TimelineRenderer-BvW5lXYz.js → TimelineRenderer-2HptWihL.js} +1 -1
  82. package/src/assets/web-panel/assets/{Tokens-Ua_LIx8-.js → Tokens-B-jGxzHl.js} +1 -1
  83. package/src/assets/web-panel/assets/{Trigger-BGwb2KL1.js → Trigger-9DGa90DT.js} +1 -1
  84. package/src/assets/web-panel/assets/{Trust-CD2IEHvj.js → Trust-BSJEkEOO.js} +1 -1
  85. package/src/assets/web-panel/assets/{UkeySign-D5LetK6P.js → UkeySign-C807So5R.js} +1 -1
  86. package/src/assets/web-panel/assets/{VideoEditing-oP7ehFgR.js → VideoEditing-ByiieAv-.js} +1 -1
  87. package/src/assets/web-panel/assets/{Wallet-BBtu4-xa.js → Wallet-BixbIOUv.js} +3 -3
  88. package/src/assets/web-panel/assets/{WebAuthn-iSPRU4Ht.js → WebAuthn-z7akhor4.js} +2 -2
  89. package/src/assets/web-panel/assets/{WorkflowEditor-DuEDhQmB.js → WorkflowEditor-KvijuUuR.js} +1 -1
  90. package/src/assets/web-panel/assets/{chat-DGDgqvvm.js → chat-BYKoh0YG.js} +1 -1
  91. package/src/assets/web-panel/assets/{colors-DGQMWa1-.js → colors-CLT8IYBt.js} +1 -1
  92. package/src/assets/web-panel/assets/{compact-item-COVznBL4.js → compact-item-DlBIyYHF.js} +1 -1
  93. package/src/assets/web-panel/assets/{createContext-DIxVeHXI.js → createContext-5XmAnNLr.js} +1 -1
  94. package/src/assets/web-panel/assets/devWarning-BmcCIHwY.js +1 -0
  95. package/src/assets/web-panel/assets/{hasIn-DkxZO3E9.js → hasIn-rPdRhm7K.js} +1 -1
  96. package/src/assets/web-panel/assets/{index-ClQVcrFt.js → index-8un-eUDI.js} +1 -1
  97. package/src/assets/web-panel/assets/{index-jo7DbU0w.js → index-B-0nAxf5.js} +1 -1
  98. package/src/assets/web-panel/assets/{index-BOTshZNx.js → index-B1VfBUPB.js} +1 -1
  99. package/src/assets/web-panel/assets/{index-vXrktF3e.js → index-BBt2CSAx.js} +1 -1
  100. package/src/assets/web-panel/assets/{index-BBw2MLIe.js → index-BDtlwjSr.js} +1 -1
  101. package/src/assets/web-panel/assets/{index-Bv0_u0ze.js → index-BIRl2Ii5.js} +1 -1
  102. package/src/assets/web-panel/assets/{index-BY6MSbWT.js → index-BgevTkUv.js} +1 -1
  103. package/src/assets/web-panel/assets/{index-BAlrovUm.js → index-Bve7Wsgf.js} +1 -1
  104. package/src/assets/web-panel/assets/{index-BUqwlzc8.js → index-Bzd0sFkp.js} +1 -1
  105. package/src/assets/web-panel/assets/{index-ECoDhyH3.js → index-C2sFDVb_.js} +1 -1
  106. package/src/assets/web-panel/assets/{index-usmG13jq.js → index-CErvHCDe.js} +1 -1
  107. package/src/assets/web-panel/assets/{index-BQm7ntcn.js → index-CM_a9spK.js} +1 -1
  108. package/src/assets/web-panel/assets/{index-DmduvOYT.js → index-CY6TMc2m.js} +1 -1
  109. package/src/assets/web-panel/assets/{index-ZcqTvPnt.js → index-ChlzaTV3.js} +1 -1
  110. package/src/assets/web-panel/assets/{index-CcNGQWum.js → index-CsnbOKdI.js} +1 -1
  111. package/src/assets/web-panel/assets/{index-CyMHF2Bi.js → index-D3-NL-x-.js} +1 -1
  112. package/src/assets/web-panel/assets/{index-CpZxDiVK.js → index-D3f9Jzx2.js} +1 -1
  113. package/src/assets/web-panel/assets/{index-BAL2p7YC.js → index-DCDSycWo.js} +1 -1
  114. package/src/assets/web-panel/assets/{index-b_0qTo8O.js → index-DIVrVGvf.js} +1 -1
  115. package/src/assets/web-panel/assets/{index-0ToBFsvW.js → index-DI_tYFBe.js} +1 -1
  116. package/src/assets/web-panel/assets/{index-2JZizEPc.js → index-DPS4mWnI.js} +1 -1
  117. package/src/assets/web-panel/assets/{index-DaWQSp5a.js → index-DTslLzPJ.js} +1 -1
  118. package/src/assets/web-panel/assets/{index-BgM-3a1w.js → index-DW8vozBS.js} +1 -1
  119. package/src/assets/web-panel/assets/index-DY8rmd6x.js +1 -0
  120. package/src/assets/web-panel/assets/{index-C3XeNS82.js → index-DZiSMYoD.js} +3 -3
  121. package/src/assets/web-panel/assets/{index-C3bN6751.js → index-DZjGcIGU.js} +1 -1
  122. package/src/assets/web-panel/assets/{index-DU1ArKl5.js → index-Dea32nOK.js} +1 -1
  123. package/src/assets/web-panel/assets/{index-BHH95jcm.js → index-Djd7uqwM.js} +1 -1
  124. package/src/assets/web-panel/assets/{index-Cligb-Dl.js → index-Dntid6oj.js} +1 -1
  125. package/src/assets/web-panel/assets/{index-CV0KnNqR.js → index-DqZU4_7J.js} +1 -1
  126. package/src/assets/web-panel/assets/{index-DV0H83eS.js → index-DuvweiCz.js} +1 -1
  127. package/src/assets/web-panel/assets/{index-b2_M6o20.js → index-DzExCCLS.js} +1 -1
  128. package/src/assets/web-panel/assets/{index-Ci34vbh0.js → index-LKT-Ol0A.js} +1 -1
  129. package/src/assets/web-panel/assets/{index-DDwPBGdA.js → index-akwXS-FF.js} +1 -1
  130. package/src/assets/web-panel/assets/{index-CokrhbY2.js → index-b-rQCMkx.js} +1 -1
  131. package/src/assets/web-panel/assets/{index-BY9Ossof.js → index-eHbr3f5I.js} +1 -1
  132. package/src/assets/web-panel/assets/{index-dfYkGovV.js → index-kx6zDWew.js} +1 -1
  133. package/src/assets/web-panel/assets/{index-CNRRrP3-.js → index-rRuCGdKW.js} +1 -1
  134. package/src/assets/web-panel/assets/index-sbwcUeRS.js +1 -0
  135. package/src/assets/web-panel/assets/{initDefaultProps-CkSeiBwL.js → initDefaultProps-a8411LiK.js} +1 -1
  136. package/src/assets/web-panel/assets/{motion-CSzhDP0s.js → motion-oVcQdpCm.js} +1 -1
  137. package/src/assets/web-panel/assets/{move-mgCt4iC6.js → move-B-eyzzzL.js} +1 -1
  138. package/src/assets/web-panel/assets/{mtc-parser-BEZBLcKt.js → mtc-parser-BCYIxuG7.js} +1 -1
  139. package/src/assets/web-panel/assets/{omit-BsHctMEr.js → omit-DuFtWiYh.js} +1 -1
  140. package/src/assets/web-panel/assets/{pickAttrs-1BHamnGW.js → pickAttrs-CVAoJhGu.js} +1 -1
  141. package/src/assets/web-panel/assets/{placementArrow--Vb4Bd7l.js → placementArrow-Y2iub2bO.js} +1 -1
  142. package/src/assets/web-panel/assets/{responsiveObserve-DD33SqCm.js → responsiveObserve-BHenWIVD.js} +1 -1
  143. package/src/assets/web-panel/assets/{slide-DfrLtxgK.js → slide-CKrMaL29.js} +1 -1
  144. package/src/assets/web-panel/assets/{statusUtils-D9Pe_gXW.js → statusUtils-w8eb_1da.js} +1 -1
  145. package/src/assets/web-panel/assets/{styleChecker-0NY5iMun.js → styleChecker-CCVi_Ww3.js} +1 -1
  146. package/src/assets/web-panel/assets/{useFlexGapSupport-DSsZstwg.js → useFlexGapSupport-BsmR_q0r.js} +1 -1
  147. package/src/assets/web-panel/assets/{useFs-BU8HyH59.js → useFs-a8GMBjnc.js} +1 -1
  148. package/src/assets/web-panel/assets/{usePersonalDataHub-D_xttink.js → usePersonalDataHub-BMUYSPn-.js} +1 -1
  149. package/src/assets/web-panel/assets/{vnode-39VhX2lM.js → vnode-DL2pI31V.js} +1 -1
  150. package/src/assets/web-panel/assets/{zoom-D5KQ8Pks.js → zoom-Cbi8fISi.js} +1 -1
  151. package/src/assets/web-panel/index.html +1 -1
  152. package/src/data/changelog.json +13 -0
  153. package/src/lib/evolution/evolution-deployment-loader.js +39 -0
  154. package/src/lib/evolution/skill-writer-inventory-manifest.js +0 -39
  155. package/src/lib/evolution/volcengine-function-execution-authority.js +2949 -0
  156. package/src/lib/evolution/volcengine-function-process-executor.js +615 -0
  157. package/src/lib/evolution/volcengine-function-replay-store.js +836 -0
  158. package/src/lib/evolution/volcengine-function-revocation-status-floor-store.js +480 -0
  159. package/src/assets/web-panel/assets/PdhVaultBrowser-DgimH6Jp.js +0 -7
  160. package/src/assets/web-panel/assets/SpeechSettings-BicWJS7f.js +0 -1
  161. package/src/assets/web-panel/assets/devWarning-CjR9h-Z_.js +0 -1
  162. package/src/assets/web-panel/assets/index-D_nxBMX5.js +0 -1
  163. package/src/assets/web-panel/assets/index-z_cTUMX-.js +0 -1
@@ -0,0 +1,480 @@
1
+ import { createHash } from "node:crypto";
2
+ import path from "node:path";
3
+ import { types } from "node:util";
4
+
5
+ import { createEvolutionLedgerFileManifestHeadBackend } from "./evolution-ledger-file-manifest-head-store.js";
6
+
7
+ export const VOLCENGINE_FUNCTION_REVOCATION_STATUS_FLOOR_STORE_SCHEMA =
8
+ "chainlesschain.volcengine-function-revocation-status-floor-store/v1";
9
+ export const VOLCENGINE_FUNCTION_REVOCATION_STATUS_FLOOR_MODE =
10
+ "cross-process-exclusive-file-fsync";
11
+ export const VOLCENGINE_FUNCTION_REVOCATION_STATUS_SNAPSHOT_SCHEMA =
12
+ "chainlesschain.volcengine-function-revocation-status-snapshot/v1";
13
+ export const VOLCENGINE_FUNCTION_REVOCATION_STATUS_ACK_SCHEMA =
14
+ "chainlesschain.volcengine-function-revocation-status-ack/v1";
15
+
16
+ const STATE_SCHEMA =
17
+ "chainlesschain.volcengine-function-revocation-status-floor-state/v1";
18
+ const DIGEST = /^sha256:[a-f0-9]{64}$/u;
19
+ const ID = /^[^\p{Cc}]{1,512}$/u;
20
+ const stores = new WeakMap();
21
+
22
+ function canonical(value) {
23
+ if (value === null || typeof value !== "object") return JSON.stringify(value);
24
+ if (Array.isArray(value)) return `[${value.map(canonical).join(",")}]`;
25
+ return `{${Object.keys(value)
26
+ .sort()
27
+ .map((key) => `${JSON.stringify(key)}:${canonical(value[key])}`)
28
+ .join(",")}}`;
29
+ }
30
+
31
+ function digest(domain, value) {
32
+ return `sha256:${createHash("sha256")
33
+ .update(`${domain}\0`)
34
+ .update(canonical(value))
35
+ .digest("hex")}`;
36
+ }
37
+
38
+ function exactData(value, keys, label) {
39
+ if (
40
+ !value ||
41
+ typeof value !== "object" ||
42
+ Array.isArray(value) ||
43
+ types.isProxy(value) ||
44
+ ![Object.prototype, null].includes(Object.getPrototypeOf(value)) ||
45
+ Reflect.ownKeys(value).length !== keys.length ||
46
+ keys.some((key) => {
47
+ const descriptor = Object.getOwnPropertyDescriptor(value, key);
48
+ return !descriptor?.enumerable || !Object.hasOwn(descriptor, "value");
49
+ })
50
+ ) {
51
+ throw new TypeError(`${label} has unexpected or accessor fields`);
52
+ }
53
+ }
54
+
55
+ function ownData(owner, name, label) {
56
+ const descriptor = Object.getOwnPropertyDescriptor(owner, name);
57
+ if (!descriptor || !Object.hasOwn(descriptor, "value")) {
58
+ throw new TypeError(`${label} must be plain data`);
59
+ }
60
+ return descriptor.value;
61
+ }
62
+
63
+ function normalizeDirectory(value) {
64
+ if (typeof value !== "string" || value.trim() === "") {
65
+ throw new TypeError(
66
+ "Volcengine function revocation status floor directory is invalid",
67
+ );
68
+ }
69
+ return path.resolve(value);
70
+ }
71
+
72
+ export function digestVolcengineFunctionRevocationStatusFloorRoot(value) {
73
+ return digest(
74
+ "chainlesschain.volcengine-function-revocation-status-floor-root/v1",
75
+ normalizeDirectory(value),
76
+ );
77
+ }
78
+
79
+ function normalizeDescriptor(value) {
80
+ exactData(
81
+ value,
82
+ [
83
+ "schema",
84
+ "storeId",
85
+ "tenantId",
86
+ "handlerArtifactDigest",
87
+ "revocationAuthorityId",
88
+ "trustRootDigest",
89
+ "stateRootDigest",
90
+ "mode",
91
+ ],
92
+ "Volcengine function revocation status floor store descriptor",
93
+ );
94
+ const descriptor = Object.freeze({
95
+ schema: ownData(
96
+ value,
97
+ "schema",
98
+ "Volcengine function revocation status floor store schema",
99
+ ),
100
+ storeId: ownData(
101
+ value,
102
+ "storeId",
103
+ "Volcengine function revocation status floor store identifier",
104
+ ),
105
+ tenantId: ownData(
106
+ value,
107
+ "tenantId",
108
+ "Volcengine function revocation status floor store tenant",
109
+ ),
110
+ handlerArtifactDigest: ownData(
111
+ value,
112
+ "handlerArtifactDigest",
113
+ "Volcengine function revocation status floor store artifact digest",
114
+ ),
115
+ revocationAuthorityId: ownData(
116
+ value,
117
+ "revocationAuthorityId",
118
+ "Volcengine function revocation status floor store authority",
119
+ ),
120
+ trustRootDigest: ownData(
121
+ value,
122
+ "trustRootDigest",
123
+ "Volcengine function revocation status floor store trust root",
124
+ ),
125
+ stateRootDigest: ownData(
126
+ value,
127
+ "stateRootDigest",
128
+ "Volcengine function revocation status floor state root",
129
+ ),
130
+ mode: ownData(
131
+ value,
132
+ "mode",
133
+ "Volcengine function revocation status floor store mode",
134
+ ),
135
+ });
136
+ if (
137
+ descriptor.schema !==
138
+ VOLCENGINE_FUNCTION_REVOCATION_STATUS_FLOOR_STORE_SCHEMA ||
139
+ !ID.test(descriptor.storeId) ||
140
+ !ID.test(descriptor.tenantId) ||
141
+ !DIGEST.test(descriptor.handlerArtifactDigest) ||
142
+ !ID.test(descriptor.revocationAuthorityId) ||
143
+ !DIGEST.test(descriptor.trustRootDigest) ||
144
+ !DIGEST.test(descriptor.stateRootDigest) ||
145
+ descriptor.mode !== VOLCENGINE_FUNCTION_REVOCATION_STATUS_FLOOR_MODE
146
+ ) {
147
+ throw new TypeError(
148
+ "Volcengine function revocation status floor store descriptor is invalid",
149
+ );
150
+ }
151
+ return descriptor;
152
+ }
153
+
154
+ export function digestVolcengineFunctionRevocationStatusFloorStoreDescriptor(
155
+ value,
156
+ ) {
157
+ return digest(
158
+ VOLCENGINE_FUNCTION_REVOCATION_STATUS_FLOOR_STORE_SCHEMA,
159
+ normalizeDescriptor(value),
160
+ );
161
+ }
162
+
163
+ function normalizeSnapshot(value, descriptor) {
164
+ exactData(
165
+ value,
166
+ [
167
+ "schema",
168
+ "storeId",
169
+ "tenantId",
170
+ "handlerArtifactDigest",
171
+ "revocationAuthorityId",
172
+ "trustRootDigest",
173
+ "revision",
174
+ "snapshotDigest",
175
+ "issuedAt",
176
+ "nextUpdate",
177
+ ],
178
+ "Volcengine function revocation status snapshot",
179
+ );
180
+ const snapshot = Object.freeze({
181
+ schema: ownData(
182
+ value,
183
+ "schema",
184
+ "Volcengine function revocation status snapshot schema",
185
+ ),
186
+ storeId: ownData(
187
+ value,
188
+ "storeId",
189
+ "Volcengine function revocation status snapshot store",
190
+ ),
191
+ tenantId: ownData(
192
+ value,
193
+ "tenantId",
194
+ "Volcengine function revocation status snapshot tenant",
195
+ ),
196
+ handlerArtifactDigest: ownData(
197
+ value,
198
+ "handlerArtifactDigest",
199
+ "Volcengine function revocation status snapshot artifact digest",
200
+ ),
201
+ revocationAuthorityId: ownData(
202
+ value,
203
+ "revocationAuthorityId",
204
+ "Volcengine function revocation status snapshot authority",
205
+ ),
206
+ trustRootDigest: ownData(
207
+ value,
208
+ "trustRootDigest",
209
+ "Volcengine function revocation status snapshot trust root",
210
+ ),
211
+ revision: ownData(
212
+ value,
213
+ "revision",
214
+ "Volcengine function revocation status snapshot revision",
215
+ ),
216
+ snapshotDigest: ownData(
217
+ value,
218
+ "snapshotDigest",
219
+ "Volcengine function revocation status snapshot digest",
220
+ ),
221
+ issuedAt: ownData(
222
+ value,
223
+ "issuedAt",
224
+ "Volcengine function revocation status snapshot issue time",
225
+ ),
226
+ nextUpdate: ownData(
227
+ value,
228
+ "nextUpdate",
229
+ "Volcengine function revocation status snapshot next update",
230
+ ),
231
+ });
232
+ const issuedAtMs = Date.parse(snapshot.issuedAt);
233
+ const nextUpdateMs = Date.parse(snapshot.nextUpdate);
234
+ if (
235
+ snapshot.schema !== VOLCENGINE_FUNCTION_REVOCATION_STATUS_SNAPSHOT_SCHEMA ||
236
+ snapshot.storeId !== descriptor.storeId ||
237
+ snapshot.tenantId !== descriptor.tenantId ||
238
+ snapshot.handlerArtifactDigest !== descriptor.handlerArtifactDigest ||
239
+ snapshot.revocationAuthorityId !== descriptor.revocationAuthorityId ||
240
+ snapshot.trustRootDigest !== descriptor.trustRootDigest ||
241
+ !Number.isSafeInteger(snapshot.revision) ||
242
+ snapshot.revision < 1 ||
243
+ !DIGEST.test(snapshot.snapshotDigest) ||
244
+ !Number.isFinite(issuedAtMs) ||
245
+ new Date(issuedAtMs).toISOString() !== snapshot.issuedAt ||
246
+ !Number.isFinite(nextUpdateMs) ||
247
+ new Date(nextUpdateMs).toISOString() !== snapshot.nextUpdate ||
248
+ nextUpdateMs <= issuedAtMs
249
+ ) {
250
+ throw new TypeError(
251
+ "Volcengine function revocation status snapshot is invalid",
252
+ );
253
+ }
254
+ return snapshot;
255
+ }
256
+
257
+ function normalizeState(value, descriptorDigest) {
258
+ if (value === null) return null;
259
+ exactData(
260
+ value,
261
+ [
262
+ "schema",
263
+ "descriptorDigest",
264
+ "revision",
265
+ "snapshotDigest",
266
+ "issuedAt",
267
+ "nextUpdate",
268
+ "headDigest",
269
+ ],
270
+ "Volcengine function revocation status floor state",
271
+ );
272
+ const core = Object.freeze({
273
+ schema: ownData(
274
+ value,
275
+ "schema",
276
+ "Volcengine function revocation status floor state schema",
277
+ ),
278
+ descriptorDigest: ownData(
279
+ value,
280
+ "descriptorDigest",
281
+ "Volcengine function revocation status floor descriptor digest",
282
+ ),
283
+ revision: ownData(
284
+ value,
285
+ "revision",
286
+ "Volcengine function revocation status floor revision",
287
+ ),
288
+ snapshotDigest: ownData(
289
+ value,
290
+ "snapshotDigest",
291
+ "Volcengine function revocation status floor snapshot digest",
292
+ ),
293
+ issuedAt: ownData(
294
+ value,
295
+ "issuedAt",
296
+ "Volcengine function revocation status floor issue time",
297
+ ),
298
+ nextUpdate: ownData(
299
+ value,
300
+ "nextUpdate",
301
+ "Volcengine function revocation status floor next update",
302
+ ),
303
+ });
304
+ const headDigest = ownData(
305
+ value,
306
+ "headDigest",
307
+ "Volcengine function revocation status floor head digest",
308
+ );
309
+ const issuedAtMs = Date.parse(core.issuedAt);
310
+ const nextUpdateMs = Date.parse(core.nextUpdate);
311
+ if (
312
+ core.schema !== STATE_SCHEMA ||
313
+ core.descriptorDigest !== descriptorDigest ||
314
+ !Number.isSafeInteger(core.revision) ||
315
+ core.revision < 1 ||
316
+ !DIGEST.test(core.snapshotDigest) ||
317
+ !Number.isFinite(issuedAtMs) ||
318
+ new Date(issuedAtMs).toISOString() !== core.issuedAt ||
319
+ !Number.isFinite(nextUpdateMs) ||
320
+ new Date(nextUpdateMs).toISOString() !== core.nextUpdate ||
321
+ nextUpdateMs <= issuedAtMs ||
322
+ headDigest !== digest(STATE_SCHEMA, core)
323
+ ) {
324
+ throw new Error(
325
+ "Volcengine function revocation status floor state is invalid",
326
+ );
327
+ }
328
+ return Object.freeze({ ...core, headDigest });
329
+ }
330
+
331
+ function rollbackError(received, floor) {
332
+ const error = new Error(
333
+ `Volcengine function revocation signer status rollback rejected: received ${received}, floor ${floor}`,
334
+ );
335
+ error.code = "CC_VOLCENGINE_FUNCTION_REVOCATION_STATUS_ROLLBACK";
336
+ return error;
337
+ }
338
+
339
+ export function createVolcengineFunctionRevocationStatusFloorStore(options) {
340
+ exactData(
341
+ options,
342
+ ["descriptor", "directoryPath"],
343
+ "Volcengine function revocation status floor store",
344
+ );
345
+ const descriptor = normalizeDescriptor(
346
+ ownData(
347
+ options,
348
+ "descriptor",
349
+ "Volcengine function revocation status floor store descriptor",
350
+ ),
351
+ );
352
+ const directoryPath = normalizeDirectory(
353
+ ownData(
354
+ options,
355
+ "directoryPath",
356
+ "Volcengine function revocation status floor directory",
357
+ ),
358
+ );
359
+ if (
360
+ descriptor.stateRootDigest !==
361
+ digestVolcengineFunctionRevocationStatusFloorRoot(directoryPath)
362
+ ) {
363
+ throw new TypeError(
364
+ "Volcengine function revocation status floor state root does not match descriptor",
365
+ );
366
+ }
367
+ const descriptorDigest = digest(
368
+ VOLCENGINE_FUNCTION_REVOCATION_STATUS_FLOOR_STORE_SCHEMA,
369
+ descriptor,
370
+ );
371
+ const backend = createEvolutionLedgerFileManifestHeadBackend({
372
+ directoryPath,
373
+ });
374
+ const store = Object.freeze({});
375
+ stores.set(store, { backend, descriptor, descriptorDigest });
376
+ return store;
377
+ }
378
+
379
+ export function inspectVolcengineFunctionRevocationStatusFloorStore(value) {
380
+ const captured = stores.get(value);
381
+ if (!captured) {
382
+ throw new TypeError(
383
+ "A branded Volcengine function revocation status floor store is required",
384
+ );
385
+ }
386
+ return Object.freeze({
387
+ descriptor: captured.descriptor,
388
+ descriptorDigest: captured.descriptorDigest,
389
+ });
390
+ }
391
+
392
+ export function captureVolcengineFunctionRevocationStatusFloorStore(value) {
393
+ const captured = stores.get(value);
394
+ if (!captured) {
395
+ throw new TypeError(
396
+ "A branded Volcengine function revocation status floor store is required",
397
+ );
398
+ }
399
+ const read = () =>
400
+ normalizeState(captured.backend.load(), captured.descriptorDigest);
401
+ return Object.freeze({
402
+ descriptor: captured.descriptor,
403
+ descriptorDigest: captured.descriptorDigest,
404
+ readFloor: read,
405
+ acceptSnapshot(input) {
406
+ const snapshot = normalizeSnapshot(input, captured.descriptor);
407
+ for (let attempt = 0; attempt < 16; attempt += 1) {
408
+ const current = read();
409
+ if (current && snapshot.revision < current.revision) {
410
+ throw rollbackError(snapshot.revision, current.revision);
411
+ }
412
+ if (current && snapshot.revision === current.revision) {
413
+ if (snapshot.snapshotDigest !== current.snapshotDigest) {
414
+ throw new Error(
415
+ "Volcengine function revocation signer status conflicts at the current revision",
416
+ );
417
+ }
418
+ return Object.freeze({
419
+ schema: VOLCENGINE_FUNCTION_REVOCATION_STATUS_ACK_SCHEMA,
420
+ storeId: captured.descriptor.storeId,
421
+ revision: current.revision,
422
+ snapshotDigest: current.snapshotDigest,
423
+ headDigest: current.headDigest,
424
+ durable: true,
425
+ readbackVerified: true,
426
+ });
427
+ }
428
+ if (
429
+ current &&
430
+ Date.parse(snapshot.issuedAt) <= Date.parse(current.issuedAt)
431
+ ) {
432
+ throw new Error(
433
+ "Volcengine function revocation signer status issue time did not advance",
434
+ );
435
+ }
436
+ const core = Object.freeze({
437
+ schema: STATE_SCHEMA,
438
+ descriptorDigest: captured.descriptorDigest,
439
+ revision: snapshot.revision,
440
+ snapshotDigest: snapshot.snapshotDigest,
441
+ issuedAt: snapshot.issuedAt,
442
+ nextUpdate: snapshot.nextUpdate,
443
+ });
444
+ const next = Object.freeze({
445
+ ...core,
446
+ headDigest: digest(STATE_SCHEMA, core),
447
+ });
448
+ const result = captured.backend.compareAndSet({
449
+ expectedHeadDigest: current?.headDigest ?? null,
450
+ nextHead: next,
451
+ });
452
+ if (!result.committed) continue;
453
+ const confirmed = normalizeState(
454
+ result.head,
455
+ captured.descriptorDigest,
456
+ );
457
+ if (
458
+ confirmed.revision !== snapshot.revision ||
459
+ confirmed.snapshotDigest !== snapshot.snapshotDigest
460
+ ) {
461
+ throw new Error(
462
+ "Volcengine function revocation status floor durable readback differs",
463
+ );
464
+ }
465
+ return Object.freeze({
466
+ schema: VOLCENGINE_FUNCTION_REVOCATION_STATUS_ACK_SCHEMA,
467
+ storeId: captured.descriptor.storeId,
468
+ revision: confirmed.revision,
469
+ snapshotDigest: confirmed.snapshotDigest,
470
+ headDigest: confirmed.headDigest,
471
+ durable: true,
472
+ readbackVerified: true,
473
+ });
474
+ }
475
+ throw new Error(
476
+ "Volcengine function revocation status floor contention did not settle",
477
+ );
478
+ },
479
+ });
480
+ }
@@ -1,7 +0,0 @@
1
- const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./ChatBubbleRenderer-Bpf1hDUl.js","./vendor-Bn1JzzAn.js","./index-C3XeNS82.js","./icons-DG5UD-6K.js","./index-Cq93VfoF.css","./ChatBubbleRenderer-gy5SDGw2.css","./OrderTableRenderer-Da_73SI5.js","./OrderTableRenderer-CfrDjSHT.css","./TimelineRenderer-BvW5lXYz.js","./TimelineRenderer-BlTAtkOc.css","./EmailListRenderer-CPtb8joV.js","./EmailListRenderer-DTPZPx_S.css","./GenericCardRenderer-DaYvYIj9.js","./GenericCardRenderer-o85VDYQS.css"])))=>i.map(i=>d[i]);
2
- import{E as ue,r as E,b as w,I as g,P as u,J as O,U as v,c,S as C,V as x,_ as M,F as V,Z as se,a0 as ae,R,K as m,Q as b,W as L,o as z}from"./vendor-Bn1JzzAn.js";import{u as J}from"./usePersonalDataHub-D_xttink.js";import{_ as D,e as F,d as q}from"./index-C3XeNS82.js";import{aa as P,ag as U,M as Q,aI as G,v as H,aH as K,aq as W,ac as Y,e as de,d as fe,k as pe,ai as me,aA as _e,R as ye}from"./icons-DG5UD-6K.js";import"./useShellMode-CgR0wCYM.js";const I=Object.freeze({q:"",category:null,adapter:null,subtype:null,since:null,until:null}),B=50,Z=300,X=ue("pdhBrowser",()=>{const r=E({...I}),t=E([]),n=E(null),e=E(!1),o=E(!1),a=E(null),l=E(null),s=E(!1),i=E({byCategory:{},byAdapter:{},bySubtype:{},total:0});let d=0,_=null;const j=w(()=>t.value.length>0),A=w(()=>n.value!=null);function h(S={}){const p={},f=r.value;return f.q&&f.q.trim()&&(p.q=f.q.trim()),f.category&&(p.category=f.category),f.adapter&&(p.adapter=f.adapter),f.subtype&&(p.subtype=f.subtype),Number.isFinite(f.since)&&(p.since=f.since),Number.isFinite(f.until)&&(p.until=f.until),{...p,...S}}async function y(){const S=++d;e.value=!0,a.value=null;const p=J();try{const[f,T]=await Promise.all([p.searchEvents(h({limit:B})),p.facetCounts({...r.value.q&&r.value.q.trim()?{q:r.value.q.trim()}:{},...Number.isFinite(r.value.since)?{since:r.value.since}:{},...Number.isFinite(r.value.until)?{until:r.value.until}:{}})]);if(S!==d)return;t.value=f.rows||[],n.value=f.nextCursor||null,l.value=f.mode||"like",s.value=!!f.shortQuery,i.value={byCategory:T.byCategory||{},byAdapter:T.byAdapter||{},bySubtype:T.bySubtype||{},total:T.total||0}}catch(f){if(S!==d)return;a.value=f&&f.message?f.message:String(f),t.value=[],n.value=null}finally{S===d&&(e.value=!1)}}async function k(){if(!n.value||o.value)return;o.value=!0,a.value=null;const S=J();try{const p=await S.searchEvents(h({cursor:n.value,limit:B}));t.value=t.value.concat(p.rows||[]),n.value=p.nextCursor||null,l.value=p.mode||l.value}catch(p){a.value=p&&p.message?p.message:String(p)}finally{o.value=!1}}function le(S,p){if(!(S in I))throw new Error(`pdhBrowser.setFilter: unknown key "${S}"`);r.value={...r.value,[S]:p},_&&clearTimeout(_),_=setTimeout(()=>{_=null,y()},Z)}function ie(S){return r.value={...I,...S},_&&(clearTimeout(_),_=null),y()}function ce(){r.value={...I},t.value=[],n.value=null,a.value=null,i.value={byCategory:{},byAdapter:{},bySubtype:{},total:0}}return{filters:r,results:t,cursor:n,isLoading:e,isAppending:o,error:a,mode:l,shortQuery:s,facets:i,hasResults:j,canLoadMore:A,search:y,loadMore:k,setFilter:le,setFilters:ie,reset:ce,PAGE_SIZE:B,SEARCH_DEBOUNCE_MS:Z}}),ge=Object.freeze(["chat","social","email","shopping","travel","system","ai-chat","other"]),ve=Object.freeze({chat:"社交聊天",social:"内容平台",email:"邮件",shopping:"支付订单",travel:"出行",system:"系统数据","ai-chat":"AI 对话",other:"其他"});function N(r){return ve[r]||r||"未知"}const be=Object.freeze([["wechat","chat"],["messaging-","chat"],["social-","social"],["email-","email"],["shopping-","shopping"],["alipay-","shopping"],["travel-","travel"],["system-data","system"],["browser-","system"],["meeting-","system"],["vscode","system"],["vscodium","system"],["jetbrains-ide","system"],["win-recent","system"],["git-activity","system"],["shell-history","system"],["hbuilderx","system"],["local-files","system"],["cursor","ai-chat"],["claude-code","ai-chat"],["ai-chat-","ai-chat"]]);function $(r){if(typeof r!="string"||r.length===0)return"other";for(const[t,n]of be)if(t.endsWith("-")||t==="system-data"){if(r.startsWith(t))return n}else if(r===t)return n;return"other"}const he={__name:"CategorySidebar",props:{selected:{type:String,default:null},facets:{type:Object,default:()=>({byCategory:{},total:0})}},emits:["select"],setup(r,{expose:t}){t();const n=r,e=w(()=>n.facets.total||0),o={chat:Y,social:W,email:K,shopping:H,travel:G,system:Q,"ai-chat":U,other:P};function a(i){return o[i]||P}function l(i){return i?{backgroundColor:"#fff",color:"#1677ff"}:{backgroundColor:"#f0f0f0",color:"#666"}}const s={props:n,total:e,ICONS:o,iconFor:a,badgeStyle:l,computed:w,get AppstoreOutlined(){return P},get MessageOutlined(){return Y},get PlayCircleOutlined(){return W},get MailOutlined(){return K},get ShoppingOutlined(){return H},get CarOutlined(){return G},get MobileOutlined(){return Q},get RobotOutlined(){return U},get CATEGORIES(){return ge},get categoryLabel(){return N}};return Object.defineProperty(s,"__isScriptSetup",{enumerable:!1,value:!0}),s}},Se={class:"pdh-sidebar"},Oe=["onClick"],we={class:"label"};function Ce(r,t,n,e,o,a){const l=g("a-badge");return u(),O("div",Se,[t[2]||(t[2]=v("div",{class:"sidebar-title"},"数据类型",-1)),v("div",{class:M(["cat-item",{active:n.selected===null}]),onClick:t[0]||(t[0]=s=>r.$emit("select",null))},[c(e.AppstoreOutlined,{class:"icon"}),t[1]||(t[1]=v("span",{class:"label"},"全部",-1)),e.total>0?(u(),C(l,{key:0,count:e.total,"number-style":e.badgeStyle(n.selected===null),"overflow-count":9999},null,8,["count","number-style"])):x("v-if",!0)],2),(u(!0),O(V,null,se(e.CATEGORIES,s=>(u(),O("div",{key:s,class:M(["cat-item",{active:n.selected===s,dim:!n.facets.byCategory[s]}]),onClick:i=>r.$emit("select",s)},[(u(),C(ae(e.iconFor(s)),{class:"icon"})),v("span",we,R(e.categoryLabel(s)),1),n.facets.byCategory[s]?(u(),C(l,{key:0,count:n.facets.byCategory[s],"number-style":e.badgeStyle(n.selected===s),"overflow-count":9999},null,8,["count","number-style"])):x("v-if",!0)],10,Oe))),128))])}const ke=D(he,[["render",Ce],["__scopeId","data-v-6b62a22e"],["__file","/tmp/cc-web-panel-ejxnqz/repo/packages/web-panel/src/components/pdh/CategorySidebar.vue"]]),xe={__name:"SearchFilterBar",props:{filters:{type:Object,required:!0},facets:{type:Object,default:()=>({byAdapter:{}})},isLoading:{type:Boolean,default:!1},mode:{type:String,default:null},shortQuery:{type:Boolean,default:!1}},emits:["set-filter","reset"],setup(r,{expose:t,emit:n}){t();const e=r,o=n,a=w(()=>e.filters.category?`在「${e.filters.category}」类目内搜索…`:"搜索关键词(如:支付宝、罗技、Kotlin)…"),l=w(()=>Object.entries(e.facets.byAdapter||{}).sort((y,k)=>k[1]-y[1]).map(([y,k])=>({value:y,label:`${y} (${k})`}))),s=w(()=>!e.filters.since&&!e.filters.until?null:[e.filters.since?new Date(e.filters.since):null,e.filters.until?new Date(e.filters.until):null]),i=w(()=>!!(e.filters.q||e.filters.adapter||e.filters.subtype||e.filters.since||e.filters.until));function d(h){o("set-filter","q",h||"")}function _(h){o("set-filter","q",h||"")}function j(h){if(!h||h.length===0){o("set-filter","since",null),o("set-filter","until",null);return}const[y,k]=h;o("set-filter","since",y?+y:null),o("set-filter","until",k?+k:null)}const A={props:e,emit:o,placeholderText:a,adapterOptions:l,dateRangeValue:s,hasActiveFilters:i,onQInput:d,onSearch:_,onDateChange:j,computed:w,get SearchOutlined(){return pe},get CloseCircleOutlined(){return fe},get InfoCircleOutlined(){return de}};return Object.defineProperty(A,"__isScriptSetup",{enumerable:!1,value:!0}),A}},Ee={class:"pdh-filter-bar"},Re={key:1,class:"hint"},je={key:2,class:"hint"};function Ae(r,t,n,e,o,a){const l=g("a-input-search"),s=g("a-select"),i=g("a-range-picker"),d=g("a-button");return u(),O("div",Ee,[c(l,{value:n.filters.q,placeholder:e.placeholderText,"enter-button":"搜索","allow-clear":"",loading:n.isLoading,style:{flex:"1","max-width":"480px"},"onUpdate:value":e.onQInput,onSearch:e.onSearch},{prefix:m(()=>[c(e.SearchOutlined)]),_:1},8,["value","placeholder","loading"]),c(s,{value:n.filters.adapter,placeholder:"所有 adapter","allow-clear":"",options:e.adapterOptions,style:{width:"200px"},"onUpdate:value":t[0]||(t[0]=_=>r.$emit("set-filter","adapter",_||null))},null,8,["value","options"]),c(i,{value:e.dateRangeValue,placeholder:["开始日期","结束日期"],style:{width:"280px"},"onUpdate:value":e.onDateChange},null,8,["value"]),e.hasActiveFilters?(u(),C(d,{key:0,type:"link",danger:"",onClick:t[1]||(t[1]=_=>r.$emit("reset"))},{icon:m(()=>[c(e.CloseCircleOutlined)]),default:m(()=>[t[2]||(t[2]=b(" 清空筛选 ",-1))]),_:1})):x("v-if",!0),n.shortQuery?(u(),O("span",Re,[c(e.InfoCircleOutlined),t[3]||(t[3]=b(" 关键词需至少 3 字 (FTS5 trigram 限制) ",-1))])):n.mode==="like"?(u(),O("span",je,[c(e.InfoCircleOutlined),t[4]||(t[4]=b(" 当前为 LIKE 兜底模式 ",-1))])):x("v-if",!0)])}const Le=D(xe,[["render",Ae],["__scopeId","data-v-d7cce6e9"],["__file","/tmp/cc-web-panel-ejxnqz/repo/packages/web-panel/src/components/pdh/SearchFilterBar.vue"]]),Fe={__name:"RendererDispatcher",props:{event:{type:Object,required:!0}},setup(r,{expose:t}){t();const n=L(()=>F(()=>import("./ChatBubbleRenderer-Bpf1hDUl.js"),__vite__mapDeps([0,1,2,3,4,5]),import.meta.url)),e=L(()=>F(()=>import("./OrderTableRenderer-Da_73SI5.js"),__vite__mapDeps([6,1,2,3,4,7]),import.meta.url)),o=L(()=>F(()=>import("./TimelineRenderer-BvW5lXYz.js"),__vite__mapDeps([8,1,2,3,4,9]),import.meta.url)),a=L(()=>F(()=>import("./EmailListRenderer-CPtb8joV.js"),__vite__mapDeps([10,1,2,3,4,11]),import.meta.url)),l=L(()=>F(()=>import("./GenericCardRenderer-DaYvYIj9.js"),__vite__mapDeps([12,1,2,3,4,13]),import.meta.url));function s(d){const _=d&&d.source&&d.source.adapter;switch($(_)){case"chat":case"ai-chat":return n;case"shopping":return e;case"travel":return o;case"email":return a;default:return l}}const i={ChatBubbleRenderer:n,OrderTableRenderer:e,TimelineRenderer:o,EmailListRenderer:a,GenericCardRenderer:l,rendererFor:s,defineAsyncComponent:L,get getCategory(){return $}};return Object.defineProperty(i,"__isScriptSetup",{enumerable:!1,value:!0}),i}};function De(r,t,n,e,o,a){return u(),C(ae(e.rendererFor(n.event)),{event:n.event},null,8,["event"])}const Te=D(Fe,[["render",De],["__file","/tmp/cc-web-panel-ejxnqz/repo/packages/web-panel/src/components/pdh/renderers/RendererDispatcher.vue"]]);function ee(r){return JSON.stringify(r,null,2)}function te(r){return r.map(t=>JSON.stringify(t)).join(`
3
- `)+`
4
- `}function ne(r){const n=["id","subtype","occurredAt","occurredAtIso","actor","place","adapter","summary","contentJson","extraJson"].join(","),e=r.map(o=>{const a=Number.isFinite(o.occurredAt)?o.occurredAt:null,l=a?new Date(a).toISOString():"",s=o.source&&o.source.adapter||"",i=o.content&&(o.content.text||o.content.title||o.content.subject)||"";return[o.id||"",o.subtype||"",a!=null?String(a):"",l,o.actor||"",o.place||"",s,i,o.content?JSON.stringify(o.content):"",o.extra?JSON.stringify(o.extra):""].map(Ie).join(",")});return[n,...e].join(`
5
- `)+`
6
- `}function Ie(r){const t=String(r??"");return t.includes(",")||t.includes('"')||t.includes(`
7
- `)||t.includes("\r")?'"'+t.replace(/"/g,'""')+'"':t}function re(r,t,n="application/octet-stream"){if(typeof window>"u"||typeof document>"u")return t;const e=new Blob([r],{type:n}),o=URL.createObjectURL(e),a=document.createElement("a");return a.href=o,a.download=t,document.body.appendChild(a),a.click(),document.body.removeChild(a),setTimeout(()=>URL.revokeObjectURL(o),1e3),t}function oe(r,t=null){const n=new Date,e=n.getFullYear(),o=String(n.getMonth()+1).padStart(2,"0"),a=String(n.getDate()).padStart(2,"0"),l=r==="ndjson"?"ndjson":r,s=t?`-${t}`:"";return`pdh-events-${e}-${o}-${a}${s}.${l}`}const qe={__name:"ExportDropdown",props:{events:{type:Array,required:!0},category:{type:String,default:null}},setup(r,{expose:t}){t();const n=r,e=w(()=>n.events.length>0),o={json:"application/json;charset=utf-8",ndjson:"application/x-ndjson;charset=utf-8",csv:"text/csv;charset=utf-8"};function a(i){switch(i){case"json":return ee(n.events);case"ndjson":return te(n.events);case"csv":return ne(n.events);default:throw new Error(`unknown format: ${i}`)}}function l({key:i}){try{const d=a(i),_=oe(i,n.category);re(d,_,o[i]),q.success(`已导出 ${n.events.length} 条到 ${_}`)}catch(d){q.error(`导出失败: ${d.message||d}`)}}const s={props:n,hasResults:e,MIME:o,serialize:a,onClick:l,computed:w,get DownloadOutlined(){return _e},get DownOutlined(){return me},get message(){return q},get eventsToJson(){return ee},get eventsToNdjson(){return te},get eventsToCsv(){return ne},get downloadAs(){return re},get suggestFilename(){return oe}};return Object.defineProperty(s,"__isScriptSetup",{enumerable:!1,value:!0}),s}};function Pe(r,t,n,e,o,a){const l=g("a-button"),s=g("a-menu-item"),i=g("a-menu"),d=g("a-dropdown");return u(),C(d,{disabled:!e.hasResults},{overlay:m(()=>[c(i,{onClick:e.onClick},{default:m(()=>[c(s,{key:"json"},{default:m(()=>[...t[0]||(t[0]=[b("JSON (.json)",-1)])]),_:1}),c(s,{key:"ndjson"},{default:m(()=>[...t[1]||(t[1]=[b("NDJSON (.ndjson)",-1)])]),_:1}),c(s,{key:"csv"},{default:m(()=>[...t[2]||(t[2]=[b("CSV (.csv)",-1)])]),_:1})]),_:1})]),default:m(()=>[c(l,{disabled:!e.hasResults},{icon:m(()=>[c(e.DownloadOutlined)]),default:m(()=>[b(" 导出 ("+R(n.events.length)+") ",1),c(e.DownOutlined)]),_:1},8,["disabled"])]),_:1},8,["disabled"])}const Be=D(qe,[["render",Pe],["__file","/tmp/cc-web-panel-ejxnqz/repo/packages/web-panel/src/components/pdh/ExportDropdown.vue"]]),Ve={__name:"PdhVaultBrowser",setup(r,{expose:t}){t();const n=X(),e=w(()=>n.filters.q?`没有匹配 "${n.filters.q}" 的事件 — 试试更短的关键词或换个类目`:n.filters.category?`「${N(n.filters.category)}」类目下还没有数据 — 去采集页同步对应 adapter`:"Vault 里还没有数据 — 去「个人数据中台」页面同步任意 adapter");function o(s){n.filters.category=s,n.search()}function a(s,i){n.setFilter(s,i)}z(()=>{!n.hasResults&&!n.isLoading&&n.search()});const l={store:n,emptyHint:e,onCategorySelect:o,onSetFilter:a,onMounted:z,computed:w,get ReloadOutlined(){return ye},get usePdhBrowserStore(){return X},get categoryLabel(){return N},CategorySidebar:ke,SearchFilterBar:Le,RendererDispatcher:Te,ExportDropdown:Be};return Object.defineProperty(l,"__isScriptSetup",{enumerable:!1,value:!0}),l}},Ne={class:"pdh-browser-page"},Me={class:"page-header"},ze={class:"main-pane"},Je={class:"results-summary"},Ue={key:0},Qe={key:0},Ge={key:1},He={class:"loaded-of"},Ke={class:"results-list"},We={key:2,class:"load-more"};function Ye(r,t,n,e,o,a){const l=g("a-tag"),s=g("a-button"),i=g("a-space"),d=g("a-col"),_=g("a-spin"),j=g("a-alert"),A=g("a-empty"),h=g("a-row");return u(),O("div",Ne,[v("div",Me,[t[6]||(t[6]=v("div",null,[v("h2",{class:"page-title"},"数据浏览器"),v("p",{class:"page-sub"}," Vault 里所有已采集的数据,按类目浏览 / 全文检索 / 时间窗口筛选。 完全离线,不外传。 ")],-1)),c(i,null,{default:m(()=>[e.store.mode==="fts5"?(u(),C(l,{key:0,color:"green"},{default:m(()=>[...t[3]||(t[3]=[b("FTS5 trigram",-1)])]),_:1})):e.store.mode==="like"?(u(),C(l,{key:1,color:"orange"},{default:m(()=>[...t[4]||(t[4]=[b("LIKE 兜底",-1)])]),_:1})):x("v-if",!0),c(e.ExportDropdown,{events:e.store.results,category:e.store.filters.category},null,8,["events","category"]),c(s,{onClick:t[0]||(t[0]=y=>e.store.search()),loading:e.store.isLoading},{icon:m(()=>[c(e.ReloadOutlined)]),default:m(()=>[t[5]||(t[5]=b(" 刷新 ",-1))]),_:1},8,["loading"])]),_:1})]),c(h,{gutter:16,class:"browser-layout"},{default:m(()=>[c(d,{xs:24,sm:24,md:6,lg:5,xl:4},{default:m(()=>[c(e.CategorySidebar,{selected:e.store.filters.category,facets:e.store.facets,onSelect:e.onCategorySelect},null,8,["selected","facets"])]),_:1}),c(d,{xs:24,sm:24,md:18,lg:19,xl:20},{default:m(()=>[v("div",ze,[c(e.SearchFilterBar,{filters:e.store.filters,facets:e.store.facets,"is-loading":e.store.isLoading,mode:e.store.mode,"short-query":e.store.shortQuery,onSetFilter:e.onSetFilter,onReset:t[1]||(t[1]=y=>{e.store.reset(),e.store.search()})},null,8,["filters","facets","is-loading","mode","short-query"]),v("div",Je,[e.store.isLoading&&e.store.results.length===0?(u(),O("span",Ue,[c(_,{size:"small"}),t[7]||(t[7]=b(" 载入中… ",-1))])):(u(),O(V,{key:1},[v("strong",null,R(e.store.facets.total),1),t[11]||(t[11]=b(" 条事件 ",-1)),e.store.filters.category?(u(),O("span",Qe,[t[8]||(t[8]=b(" / 当前类目 ",-1)),v("strong",null,R(e.categoryLabel(e.store.filters.category)),1),v("strong",null,R(e.store.facets.byCategory[e.store.filters.category]||0),1)])):x("v-if",!0),e.store.filters.q?(u(),O("span",Ge,[t[9]||(t[9]=b(' / 关键词 "',-1)),v("em",null,R(e.store.filters.q),1),t[10]||(t[10]=b('"',-1))])):x("v-if",!0),v("span",He," / 已显示 "+R(e.store.results.length),1)],64))]),e.store.error?(u(),C(j,{key:0,type:"error","show-icon":"",message:e.store.error,closable:"",style:{margin:"12px 0"}},null,8,["message"])):x("v-if",!0),!e.store.isLoading&&e.store.results.length===0&&!e.store.error?(u(),C(A,{key:1,description:e.emptyHint,style:{"margin-top":"40px"}},null,8,["description"])):x("v-if",!0),v("div",Ke,[(u(!0),O(V,null,se(e.store.results,(y,k)=>(u(),C(e.RendererDispatcher,{key:`r-${k}-${y.id}`,event:y},null,8,["event"]))),128))]),e.store.canLoadMore?(u(),O("div",We,[c(s,{loading:e.store.isAppending,onClick:t[2]||(t[2]=y=>e.store.loadMore()),block:""},{default:m(()=>[...t[12]||(t[12]=[b(" 加载下一页 (50 条) ",-1)])]),_:1},8,["loading"])])):x("v-if",!0)])]),_:1})]),_:1})])}const nt=D(Ve,[["render",Ye],["__scopeId","data-v-0f7c02cd"],["__file","/tmp/cc-web-panel-ejxnqz/repo/packages/web-panel/src/views/PdhVaultBrowser.vue"]]);export{nt as default};
@@ -1 +0,0 @@
1
- import{I as u,J,U as b,R as c,c as a,K as i,a as R,r as k,o as F,b as E,P as O,Q as p,S as z,V as C}from"./vendor-Bn1JzzAn.js";import{t as q,_ as M,b as K,u as T,d as S}from"./index-C3XeNS82.js";import{i as Q,R as X}from"./icons-DG5UD-6K.js";const v=Object.freeze({defaultEngine:"webspeech",webSpeech:{lang:"zh-CN"},whisperAPI:{apiKey:"",baseURL:"https://api.openai.com/v1",model:"whisper-1",language:"zh",timeout:6e4},whisperLocal:{serverUrl:"http://localhost:8002",modelSize:"base",device:"auto",timeout:12e4}}),Y=["webspeech","whisper-api","whisper-local"];function B(g,t){if(typeof g=="number"&&Number.isFinite(g))return g;const s=parseFloat(g);return Number.isFinite(s)?s:t}function Z(g){return JSON.parse(JSON.stringify(g))}function D(g){const t=Z(v);if(!g)return t;const s=g.trim();if(!s||/key not found/i.test(s))return t;const e=q(s);if(!e||typeof e!="object"||Array.isArray(e))return t;if(typeof e.defaultEngine=="string"&&Y.includes(e.defaultEngine)&&(t.defaultEngine=e.defaultEngine),e.webSpeech&&typeof e.webSpeech=="object"&&typeof e.webSpeech.lang=="string"&&e.webSpeech.lang&&(t.webSpeech.lang=e.webSpeech.lang),e.whisperAPI&&typeof e.whisperAPI=="object"){const l=e.whisperAPI;typeof l.apiKey=="string"&&(t.whisperAPI.apiKey=l.apiKey),typeof l.baseURL=="string"&&l.baseURL&&(t.whisperAPI.baseURL=l.baseURL),typeof l.model=="string"&&l.model&&(t.whisperAPI.model=l.model),typeof l.language=="string"&&l.language&&(t.whisperAPI.language=l.language),l.timeout!==void 0&&(t.whisperAPI.timeout=B(l.timeout,v.whisperAPI.timeout))}if(e.whisperLocal&&typeof e.whisperLocal=="object"){const l=e.whisperLocal;typeof l.serverUrl=="string"&&l.serverUrl&&(t.whisperLocal.serverUrl=l.serverUrl),typeof l.modelSize=="string"&&l.modelSize&&(t.whisperLocal.modelSize=l.modelSize),typeof l.device=="string"&&l.device&&(t.whisperLocal.device=l.device),l.timeout!==void 0&&(t.whisperLocal.timeout=B(l.timeout,v.whisperLocal.timeout))}return t}function j(g,t){const s={};g.defaultEngine!==t.defaultEngine&&(s.defaultEngine=t.defaultEngine);for(const e of["webSpeech","whisperAPI","whisperLocal"]){const l=g[e]||{},w=t[e]||{};for(const o of Object.keys(v[e]))l[o]!==w[o]&&(s[`${e}.${o}`]=w[o])}return s}const $={__name:"SpeechSettings",setup(g,{expose:t}){t();const{t:s}=K(),e=T(),l=k(!1),w=k(!1),o=R(JSON.parse(JSON.stringify(v))),h=k(JSON.parse(JSON.stringify(v))),y=E(()=>[{value:"webspeech",label:s("speechSettings.engineOptions.webspeech")},{value:"whisper-api",label:s("speechSettings.engineOptions.whisper-api")},{value:"whisper-local",label:s("speechSettings.engineOptions.whisper-local")}]),f=E(()=>{const d=`speechSettings.engineHint.${o.defaultEngine}`,n=s(d);return n===d?"":n}),_=E(()=>Object.keys(j(h.value,o)).length>0);function m(d){o.defaultEngine=d.defaultEngine,Object.assign(o.webSpeech,d.webSpeech),Object.assign(o.whisperAPI,d.whisperAPI),Object.assign(o.whisperLocal,d.whisperLocal),h.value=JSON.parse(JSON.stringify(d))}async function r(){l.value=!0;try{const{output:d}=await e.execute("config get speech",1e4);m(D(d))}catch(d){/key not found/i.test(d.message)?m(JSON.parse(JSON.stringify(v))):S.error(s("speechSettings.messages.loadFailed",{err:d.message}))}finally{l.value=!1}}function N(){m(h.value)}async function x(){const d=j(h.value,o),n=Object.keys(d);if(n.length===0){S.info(s("speechSettings.messages.noChanges"));return}w.value=!0;let P=0,I=0;for(const A of n){const H=d[A],V=String(H).replace(/"/g,'\\"'),W=`config set speech.${A} "${V}"`;try{const{output:U,exitCode:G}=await e.execute(W,1e4);G!==0||/error|failed|失败/i.test(U)?(I++,S.error(s("speechSettings.messages.saveItemFailed",{key:A,err:U.slice(0,80)}))):P++}catch(U){I++,S.error(s("speechSettings.messages.saveItemFailed",{key:A,err:U.message}))}}w.value=!1,I===0?(S.success(s("speechSettings.messages.saveOk",{count:P})),h.value=JSON.parse(JSON.stringify(o))):P>0&&(S.warning(s("speechSettings.messages.savePartial",{ok:P,fail:I})),await r())}F(()=>{r()});const L={t:s,ws:e,loading:l,saving:w,form:o,baseline:h,engineOptions:y,engineHint:f,isDirty:_,applyConfig:m,loadConfig:r,resetForm:N,saveConfig:x,reactive:R,ref:k,computed:E,onMounted:F,get useI18n(){return K},get ReloadOutlined(){return X},get SoundOutlined(){return Q},get message(){return S},get useWsStore(){return T},get parseSpeechConfig(){return D},get diffSpeechConfig(){return j},get SPEECH_DEFAULTS(){return v}};return Object.defineProperty(L,"__isScriptSetup",{enumerable:!1,value:!0}),L}},ee={style:{display:"flex","align-items":"center","justify-content":"space-between","margin-bottom":"24px"}},te={class:"page-title"},ae={class:"page-sub"},ie={style:{color:"var(--text-primary)"}},le={style:{color:"var(--text-muted)","font-size":"11px"}},ne={style:{color:"var(--text-primary)"}},se={style:{color:"var(--text-primary)"}},oe={style:{color:"var(--text-primary)"}},re={style:{display:"flex",gap:"12px","align-items":"center"}},de={key:0,style:{color:"#faad14","font-size":"12px"}};function pe(g,t,s,e,l,w){const o=u("a-button"),h=u("a-alert"),y=u("a-select"),f=u("a-form-item"),_=u("a-form"),m=u("a-card"),r=u("a-select-option"),N=u("a-input-password"),x=u("a-input"),L=u("a-input-number"),d=u("a-spin");return O(),J("div",null,[b("div",ee,[b("div",null,[b("h2",te,c(e.t("speechSettings.title")),1),b("p",ae,c(e.t("speechSettings.subtitle")),1)]),a(o,{loading:e.loading,onClick:e.loadConfig},{icon:i(()=>[a(e.ReloadOutlined)]),default:i(()=>[p(" "+c(e.t("speechSettings.refresh")),1)]),_:1},8,["loading"])]),a(h,{message:e.t("speechSettings.alert.message"),description:e.t("speechSettings.alert.description"),type:"info","show-icon":"",closable:"",style:{"margin-bottom":"16px"}},null,8,["message","description"]),a(d,{spinning:e.loading},{default:i(()=>[a(m,{style:{background:"var(--bg-card)","border-color":"var(--border-color)","margin-bottom":"16px"}},{title:i(()=>[b("span",ie,[a(e.SoundOutlined,{style:{"margin-right":"8px"}}),p(c(e.t("speechSettings.engineCardTitle")),1)])]),default:i(()=>[a(_,{"label-col":{span:6},"wrapper-col":{span:18},style:{"max-width":"720px"}},{default:i(()=>[a(f,{label:e.t("speechSettings.engineLabel")},{extra:i(()=>[b("span",le,c(e.engineHint),1)]),default:i(()=>[a(y,{value:e.form.defaultEngine,"onUpdate:value":t[0]||(t[0]=n=>e.form.defaultEngine=n),style:{width:"320px"},disabled:e.saving,options:e.engineOptions},null,8,["value","disabled","options"])]),_:1},8,["label"])]),_:1})]),_:1}),e.form.defaultEngine==="webspeech"?(O(),z(m,{key:0,style:{background:"var(--bg-card)","border-color":"var(--border-color)","margin-bottom":"16px"}},{title:i(()=>[b("span",ne,c(e.t("speechSettings.webSpeech.cardTitle")),1)]),default:i(()=>[a(_,{"label-col":{span:6},"wrapper-col":{span:18},style:{"max-width":"720px"}},{default:i(()=>[a(f,{label:e.t("speechSettings.webSpeech.langLabel")},{default:i(()=>[a(y,{value:e.form.webSpeech.lang,"onUpdate:value":t[1]||(t[1]=n=>e.form.webSpeech.lang=n),style:{width:"240px"},disabled:e.saving},{default:i(()=>[a(r,{value:"zh-CN"},{default:i(()=>[p(c(e.t("speechSettings.webSpeech.langOptions.zh-CN")),1)]),_:1}),a(r,{value:"zh-TW"},{default:i(()=>[p(c(e.t("speechSettings.webSpeech.langOptions.zh-TW")),1)]),_:1}),a(r,{value:"en-US"},{default:i(()=>[p(c(e.t("speechSettings.webSpeech.langOptions.en-US")),1)]),_:1}),a(r,{value:"en-GB"},{default:i(()=>[p(c(e.t("speechSettings.webSpeech.langOptions.en-GB")),1)]),_:1}),a(r,{value:"ja-JP"},{default:i(()=>[p(c(e.t("speechSettings.webSpeech.langOptions.ja-JP")),1)]),_:1}),a(r,{value:"ko-KR"},{default:i(()=>[p(c(e.t("speechSettings.webSpeech.langOptions.ko-KR")),1)]),_:1})]),_:1},8,["value","disabled"])]),_:1},8,["label"])]),_:1})]),_:1})):C("v-if",!0),e.form.defaultEngine==="whisper-api"?(O(),z(m,{key:1,style:{background:"var(--bg-card)","border-color":"var(--border-color)","margin-bottom":"16px"}},{title:i(()=>[b("span",se,c(e.t("speechSettings.whisperAPI.cardTitle")),1)]),default:i(()=>[a(_,{"label-col":{span:6},"wrapper-col":{span:18},style:{"max-width":"720px"}},{default:i(()=>[a(f,{label:e.t("speechSettings.whisperAPI.apiKeyLabel")},{default:i(()=>[a(N,{value:e.form.whisperAPI.apiKey,"onUpdate:value":t[2]||(t[2]=n=>e.form.whisperAPI.apiKey=n),placeholder:"sk-...",disabled:e.saving},null,8,["value","disabled"])]),_:1},8,["label"]),a(f,{label:e.t("speechSettings.whisperAPI.baseUrlLabel")},{default:i(()=>[a(x,{value:e.form.whisperAPI.baseURL,"onUpdate:value":t[3]||(t[3]=n=>e.form.whisperAPI.baseURL=n),disabled:e.saving},null,8,["value","disabled"])]),_:1},8,["label"]),a(f,{label:e.t("speechSettings.whisperAPI.modelLabel")},{default:i(()=>[a(x,{value:e.form.whisperAPI.model,"onUpdate:value":t[4]||(t[4]=n=>e.form.whisperAPI.model=n),disabled:e.saving},null,8,["value","disabled"])]),_:1},8,["label"]),a(f,{label:e.t("speechSettings.whisperAPI.languageLabel")},{default:i(()=>[a(x,{value:e.form.whisperAPI.language,"onUpdate:value":t[5]||(t[5]=n=>e.form.whisperAPI.language=n),disabled:e.saving},null,8,["value","disabled"])]),_:1},8,["label"]),a(f,{label:e.t("speechSettings.whisperAPI.timeoutLabel")},{default:i(()=>[a(L,{value:e.form.whisperAPI.timeout,"onUpdate:value":t[6]||(t[6]=n=>e.form.whisperAPI.timeout=n),min:1e3,max:6e5,step:1e3,style:{width:"200px"},disabled:e.saving},null,8,["value","disabled"])]),_:1},8,["label"])]),_:1})]),_:1})):C("v-if",!0),e.form.defaultEngine==="whisper-local"?(O(),z(m,{key:2,style:{background:"var(--bg-card)","border-color":"var(--border-color)","margin-bottom":"16px"}},{title:i(()=>[b("span",oe,c(e.t("speechSettings.whisperLocal.cardTitle")),1)]),default:i(()=>[a(_,{"label-col":{span:6},"wrapper-col":{span:18},style:{"max-width":"720px"}},{default:i(()=>[a(f,{label:e.t("speechSettings.whisperLocal.serverUrlLabel")},{default:i(()=>[a(x,{value:e.form.whisperLocal.serverUrl,"onUpdate:value":t[7]||(t[7]=n=>e.form.whisperLocal.serverUrl=n),placeholder:"http://localhost:8002",disabled:e.saving},null,8,["value","disabled"])]),_:1},8,["label"]),a(f,{label:e.t("speechSettings.whisperLocal.modelSizeLabel")},{default:i(()=>[a(y,{value:e.form.whisperLocal.modelSize,"onUpdate:value":t[8]||(t[8]=n=>e.form.whisperLocal.modelSize=n),style:{width:"180px"},disabled:e.saving},{default:i(()=>[a(r,{value:"tiny"},{default:i(()=>[...t[11]||(t[11]=[p("tiny",-1)])]),_:1}),a(r,{value:"base"},{default:i(()=>[...t[12]||(t[12]=[p("base",-1)])]),_:1}),a(r,{value:"small"},{default:i(()=>[...t[13]||(t[13]=[p("small",-1)])]),_:1}),a(r,{value:"medium"},{default:i(()=>[...t[14]||(t[14]=[p("medium",-1)])]),_:1}),a(r,{value:"large"},{default:i(()=>[...t[15]||(t[15]=[p("large",-1)])]),_:1})]),_:1},8,["value","disabled"])]),_:1},8,["label"]),a(f,{label:e.t("speechSettings.whisperLocal.deviceLabel")},{default:i(()=>[a(y,{value:e.form.whisperLocal.device,"onUpdate:value":t[9]||(t[9]=n=>e.form.whisperLocal.device=n),style:{width:"180px"},disabled:e.saving},{default:i(()=>[a(r,{value:"auto"},{default:i(()=>[...t[16]||(t[16]=[p("auto",-1)])]),_:1}),a(r,{value:"cpu"},{default:i(()=>[...t[17]||(t[17]=[p("cpu",-1)])]),_:1}),a(r,{value:"cuda"},{default:i(()=>[...t[18]||(t[18]=[p("cuda",-1)])]),_:1})]),_:1},8,["value","disabled"])]),_:1},8,["label"]),a(f,{label:e.t("speechSettings.whisperLocal.timeoutLabel")},{default:i(()=>[a(L,{value:e.form.whisperLocal.timeout,"onUpdate:value":t[10]||(t[10]=n=>e.form.whisperLocal.timeout=n),min:1e3,max:6e5,step:1e3,style:{width:"200px"},disabled:e.saving},null,8,["value","disabled"])]),_:1},8,["label"])]),_:1})]),_:1})):C("v-if",!0),b("div",re,[a(o,{onClick:e.resetForm,disabled:e.saving||e.loading},{default:i(()=>[p(c(e.t("speechSettings.buttons.reset")),1)]),_:1},8,["disabled"]),a(o,{type:"primary",loading:e.saving,disabled:!e.isDirty,onClick:e.saveConfig},{default:i(()=>[p(c(e.t("speechSettings.buttons.save")),1)]),_:1},8,["loading","disabled"]),e.isDirty?(O(),J("span",de,c(e.t("speechSettings.dirtyHint")),1)):C("v-if",!0)])]),_:1},8,["spinning"])])}const ue=M($,[["render",pe],["__scopeId","data-v-2b18ccaa"],["__file","/tmp/cc-web-panel-ejxnqz/repo/packages/web-panel/src/views/SpeechSettings.vue"]]);export{ue as default};
@@ -1 +0,0 @@
1
- import{Q as r}from"./index-C3XeNS82.js";const o=((n,a,e)=>{r(n,`[ant-design-vue: ${a}] ${e}`)});export{o as d};
@@ -1 +0,0 @@
1
- import{A as o}from"./Row-Ba_okwOW.js";import{a0 as t}from"./index-C3XeNS82.js";import"./vendor-Bn1JzzAn.js";import"./responsiveObserve-DD33SqCm.js";import"./useFlexGapSupport-DSsZstwg.js";import"./styleChecker-0NY5iMun.js";import"./index-DV0H83eS.js";import"./icons-DG5UD-6K.js";const l=t(o);export{l as default};
@@ -1 +0,0 @@
1
- import{C as o}from"./Col-CqQJ4ORW.js";import{a0 as t}from"./index-C3XeNS82.js";import"./vendor-Bn1JzzAn.js";import"./index-DV0H83eS.js";import"./icons-DG5UD-6K.js";const s=t(o);export{s as default};