chainlesschain 0.161.2 → 0.161.3

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 (185) hide show
  1. package/bin/chainlesschain.js +0 -0
  2. package/package.json +6 -6
  3. package/src/assets/web-panel/.build-hash +1 -1
  4. package/src/assets/web-panel/assets/AIOps-FON6GZIt.js +1 -0
  5. package/src/assets/web-panel/assets/{ActionButton-BvMi4awy.js → ActionButton-Byb_P_P9.js} +1 -1
  6. package/src/assets/web-panel/assets/{Analytics-hRk2ziup.js → Analytics-CDG1OwOr.js} +2 -2
  7. package/src/assets/web-panel/assets/AppLayout-lM1Y2Wgo.js +1 -0
  8. package/src/assets/web-panel/assets/Audit-p4krng5l.js +1 -0
  9. package/src/assets/web-panel/assets/Backup-G6AQe6k8.js +1 -0
  10. package/src/assets/web-panel/assets/{BaseInput-NAp5_OPY.js → BaseInput-tUASXi57.js} +1 -1
  11. package/src/assets/web-panel/assets/Chat-B46MHHAs.js +2 -0
  12. package/src/assets/web-panel/assets/{Checkbox-C9dkWb-7.js → Checkbox-CfDbHGdU.js} +1 -1
  13. package/src/assets/web-panel/assets/Codegen-D1mQ03ap.js +1 -0
  14. package/src/assets/web-panel/assets/{Col-JyQOivHb.js → Col-C0wS_dvU.js} +1 -1
  15. package/src/assets/web-panel/assets/Community-CB4KQIpB.js +1 -0
  16. package/src/assets/web-panel/assets/Compact-CuVvz3Zf.js +1 -0
  17. package/src/assets/web-panel/assets/Compliance-D6bnHyjs.js +1 -0
  18. package/src/assets/web-panel/assets/{Cowork-V-tDxtrt.js → Cowork-Dh3yt9pL.js} +2 -2
  19. package/src/assets/web-panel/assets/{Cron-YgEeQvdV.js → Cron-DiuKXbnA.js} +2 -2
  20. package/src/assets/web-panel/assets/Crosschain-BFgMa5sQ.js +1 -0
  21. package/src/assets/web-panel/assets/{DID-swdBCdMZ.js → DID-Dx7CFjrq.js} +2 -2
  22. package/src/assets/web-panel/assets/Dashboard-D3QHFHex.js +3 -0
  23. package/src/assets/web-panel/assets/{Dropdown-mlITwb7d.js → Dropdown-sMGnnzUo.js} +1 -1
  24. package/src/assets/web-panel/assets/Federation-CGt7CYhN.js +1 -0
  25. package/src/assets/web-panel/assets/{FormItemContext-BYmWDwAT.js → FormItemContext-DuVk39z3.js} +1 -1
  26. package/src/assets/web-panel/assets/{Git-Du1k1iHz.js → Git-glb99UzZ.js} +2 -2
  27. package/src/assets/web-panel/assets/Governance-CQXGee_r.js +1 -0
  28. package/src/assets/web-panel/assets/Inference-Czm-Q3w3.js +1 -0
  29. package/src/assets/web-panel/assets/KnowledgeGraph-DFrr-B78.js +1 -0
  30. package/src/assets/web-panel/assets/{Logs-CElvIBBJ.js → Logs-ChGXdo0Q.js} +2 -2
  31. package/src/assets/web-panel/assets/Marketplace-DW6P2uIY.js +1 -0
  32. package/src/assets/web-panel/assets/{McpTools-BpHkrlka.js → McpTools-ChOwY-wy.js} +2 -2
  33. package/src/assets/web-panel/assets/{Memory-DeU9ys_m.js → Memory-vIbbUTel.js} +2 -2
  34. package/src/assets/web-panel/assets/{Mtc-CCJZpnJo.js → Mtc-60jSuMAz.js} +6 -6
  35. package/src/assets/web-panel/assets/NLProgramming-fRrjhjpW.js +1 -0
  36. package/src/assets/web-panel/assets/{Notes-BcpuirPj.js → Notes-C0zhC6_B.js} +3 -3
  37. package/src/assets/web-panel/assets/{Organization-B_SHESSc.js → Organization-Bebfm6lF.js} +4 -4
  38. package/src/assets/web-panel/assets/{Overflow-R2SOGT0l.js → Overflow-D8ZjaRpc.js} +1 -1
  39. package/src/assets/web-panel/assets/{P2P-IYYy3cEd.js → P2P-BjgamPxI.js} +2 -2
  40. package/src/assets/web-panel/assets/{Permissions-CR1N42yW.js → Permissions-uwoi4HnY.js} +2 -2
  41. package/src/assets/web-panel/assets/Pipeline-C2aHcq6n.js +1 -0
  42. package/src/assets/web-panel/assets/Privacy-lU34k_c5.js +1 -0
  43. package/src/assets/web-panel/assets/{ProjectSettings-CEDhpgbs.js → ProjectSettings-Dy-Iie9L.js} +2 -2
  44. package/src/assets/web-panel/assets/{Projects-DABi6ylb.js → Projects-B4Vt0iiH.js} +2 -2
  45. package/src/assets/web-panel/assets/{Providers-HzrcE8ma.js → Providers-Cu9uRsVk.js} +2 -2
  46. package/src/assets/web-panel/assets/QuickAsk-BE29MB0d.js +1 -0
  47. package/src/assets/web-panel/assets/Recommend-DJ9nU8HM.js +1 -0
  48. package/src/assets/web-panel/assets/Reputation-ThffxFwr.js +1 -0
  49. package/src/assets/web-panel/assets/{Row-2akLU3YS.js → Row-CqBtO8lC.js} +1 -1
  50. package/src/assets/web-panel/assets/{RssFeed-D6qNq6Ht.js → RssFeed-DaxFEUe6.js} +3 -3
  51. package/src/assets/web-panel/assets/Search-4zVFnx_Y.js +1 -0
  52. package/src/assets/web-panel/assets/{Security-DdW4hu_4.js → Security-BEfSoaTM.js} +2 -2
  53. package/src/assets/web-panel/assets/{Services-CnzEzGFN.js → Services-DTAaoYJC.js} +2 -2
  54. package/src/assets/web-panel/assets/{Skeleton-D6RevdW2.js → Skeleton-CIZErmoY.js} +2 -2
  55. package/src/assets/web-panel/assets/Skills-CacIwBCt.js +1 -0
  56. package/src/assets/web-panel/assets/Sla-Si0g7a0u.js +1 -0
  57. package/src/assets/web-panel/assets/SpeechSettings-H19DqdAG.js +1 -0
  58. package/src/assets/web-panel/assets/SyncSettings-C6cDrwDR.css +1 -0
  59. package/src/assets/web-panel/assets/SyncSettings-bsC4-4rU.js +1 -0
  60. package/src/assets/web-panel/assets/Tasks-Bxlj8OVW.js +1 -0
  61. package/src/assets/web-panel/assets/Templates-B9YsJQcb.js +1 -0
  62. package/src/assets/web-panel/assets/Tenant-D4YncKb7.js +1 -0
  63. package/src/assets/web-panel/assets/Tokens-B2wJjOdI.js +1 -0
  64. package/src/assets/web-panel/assets/{Trigger-DkSZjOlY.js → Trigger-DU9-3gN9.js} +1 -1
  65. package/src/assets/web-panel/assets/Trust-_yan18qg.js +1 -0
  66. package/src/assets/web-panel/assets/UkeySign-CZ7Xrq96.js +1 -0
  67. package/src/assets/web-panel/assets/VideoEditing-CUgere5i.js +1 -0
  68. package/src/assets/web-panel/assets/{Wallet-DHbi5dHt.js → Wallet-DSnzYVqY.js} +2 -2
  69. package/src/assets/web-panel/assets/{WebAuthn-BkGDI33-.js → WebAuthn-De4aHZ87.js} +2 -2
  70. package/src/assets/web-panel/assets/WorkflowEditor-C-QNGwia.js +1 -0
  71. package/src/assets/web-panel/assets/chat-DFt6UJUS.js +1 -0
  72. package/src/assets/web-panel/assets/{colors-D2tTvuDI.js → colors-CHuBSydj.js} +1 -1
  73. package/src/assets/web-panel/assets/{compact-item-CqCEUZiy.js → compact-item-DtCmGKIm.js} +1 -1
  74. package/src/assets/web-panel/assets/{createContext-C6HFlAQP.js → createContext-Cetup5Fb.js} +1 -1
  75. package/src/assets/web-panel/assets/{hasIn-yp2CbhYc.js → hasIn-Q509tIlQ.js} +1 -1
  76. package/src/assets/web-panel/assets/icons-zXb7lDZs.js +57 -0
  77. package/src/assets/web-panel/assets/{index-B74gWYqD.js → index-0KFwdHZg.js} +1 -1
  78. package/src/assets/web-panel/assets/{index-CXf0zL5i.js → index-7kdZ5ox5.js} +1 -1
  79. package/src/assets/web-panel/assets/index-B2f4ltyM.js +65 -0
  80. package/src/assets/web-panel/assets/{index-CucxAdwN.js → index-B5d7Dkyp.js} +2 -2
  81. package/src/assets/web-panel/assets/index-BDK2Fkgd.js +13 -0
  82. package/src/assets/web-panel/assets/index-BJFH7IlV.js +21 -0
  83. package/src/assets/web-panel/assets/{index-Blq49aTW.js → index-BTwIwesN.js} +1 -1
  84. package/src/assets/web-panel/assets/index-Bjz1Y3Gs.js +1 -0
  85. package/src/assets/web-panel/assets/index-BlPG_vWg.js +55 -0
  86. package/src/assets/web-panel/assets/{index-B0jkl2Zb.js → index-BmHsGJ8F.js} +1 -1
  87. package/src/assets/web-panel/assets/{index-DnehXcB-.js → index-BvAwpPN9.js} +1 -1
  88. package/src/assets/web-panel/assets/{index-B2qFUwGb.js → index-C2y5MxfU.js} +2 -2
  89. package/src/assets/web-panel/assets/{index-CrEEL63u.js → index-C61WQXE3.js} +1 -1
  90. package/src/assets/web-panel/assets/{index-CcwZodUl.js → index-C7baQwUM.js} +1 -1
  91. package/src/assets/web-panel/assets/{index-D34iabcS.js → index-C8agLSzC.js} +8 -8
  92. package/src/assets/web-panel/assets/{index-Cd6m6ynF.js → index-CJjwnpac.js} +1 -1
  93. package/src/assets/web-panel/assets/index-CRZ8WjUK.js +1 -0
  94. package/src/assets/web-panel/assets/index-CX7WO0g5.js +12 -0
  95. package/src/assets/web-panel/assets/index-CbQ3AZcJ.js +3 -0
  96. package/src/assets/web-panel/assets/{index-DEKuiAPQ.js → index-CeXoNBLu.js} +2 -2
  97. package/src/assets/web-panel/assets/{index-w1xShUDf.js → index-Ctdt2gEP.js} +1 -1
  98. package/src/assets/web-panel/assets/index-Cxk-8scO.js +1 -0
  99. package/src/assets/web-panel/assets/index-D0oJF6nX.js +7 -0
  100. package/src/assets/web-panel/assets/index-D7Smgwky.js +1 -0
  101. package/src/assets/web-panel/assets/index-DGAGIqDR.js +1 -0
  102. package/src/assets/web-panel/assets/index-DKWvx42k.js +1 -0
  103. package/src/assets/web-panel/assets/{index-Dj4P0iWm.js → index-DVQSXYwb.js} +1 -1
  104. package/src/assets/web-panel/assets/{index-BxSsO6Sm.js → index-DaMTgJkE.js} +2 -2
  105. package/src/assets/web-panel/assets/index-Dd68wDHG.js +12 -0
  106. package/src/assets/web-panel/assets/{index-KdFFI-p3.js → index-Dem-mhfD.js} +1 -1
  107. package/src/assets/web-panel/assets/{index-BTL2yIvT.js → index-Dq6E-pj8.js} +1 -1
  108. package/src/assets/web-panel/assets/{index-nzDx0JAR.js → index-DuQfQVBe.js} +1 -1
  109. package/src/assets/web-panel/assets/{index-CFoFkVUt.js → index-HqJ94PSG.js} +4 -4
  110. package/src/assets/web-panel/assets/{index-DlgMVieO.js → index-R5D_-l07.js} +1 -1
  111. package/src/assets/web-panel/assets/{index-NNymVAza.js → index-SR2lFA_W.js} +2 -2
  112. package/src/assets/web-panel/assets/{index-B8Qxu0q2.js → index-hSpRlh93.js} +1 -1
  113. package/src/assets/web-panel/assets/index-jfzI94IT.js +1 -0
  114. package/src/assets/web-panel/assets/{index-BlVnFOFL.js → index-nfLO3XrF.js} +1 -1
  115. package/src/assets/web-panel/assets/{initDefaultProps-DfdVxwz6.js → initDefaultProps-D7iOaKOY.js} +1 -1
  116. package/src/assets/web-panel/assets/{motion-CL0bdvJg.js → motion-CvCFk7sy.js} +1 -1
  117. package/src/assets/web-panel/assets/{move-Bo9Fgzv7.js → move-BVj5YZrV.js} +1 -1
  118. package/src/assets/web-panel/assets/{omit-C-cc6wHr.js → omit-N_JDguMt.js} +1 -1
  119. package/src/assets/web-panel/assets/{pickAttrs-CjLp5RN-.js → pickAttrs-BWcuLN5j.js} +1 -1
  120. package/src/assets/web-panel/assets/{placementArrow-CJa8gsqa.js → placementArrow--1l0FzZx.js} +1 -1
  121. package/src/assets/web-panel/assets/{responsiveObserve-CcDj3P-p.js → responsiveObserve-CGX6EYRt.js} +1 -1
  122. package/src/assets/web-panel/assets/{slide-CpvbHO26.js → slide-B3hJzlWm.js} +1 -1
  123. package/src/assets/web-panel/assets/{statusUtils-BK69kP1U.js → statusUtils-BJuExZuw.js} +1 -1
  124. package/src/assets/web-panel/assets/{styleChecker-CDvBRzsG.js → styleChecker-pshnIK0r.js} +1 -1
  125. package/src/assets/web-panel/assets/{useFlexGapSupport-CRN_hzJt.js → useFlexGapSupport-3FQZdpBd.js} +1 -1
  126. package/src/assets/web-panel/assets/useFs-BW1piLQM.js +1 -0
  127. package/src/assets/web-panel/assets/{vnode-Bzp-FsbB.js → vnode-D98L6HI1.js} +1 -1
  128. package/src/assets/web-panel/assets/{zoom-BHqpWXJV.js → zoom-DnmMtXgZ.js} +1 -1
  129. package/src/assets/web-panel/index.html +2 -2
  130. package/src/lib/config-manager.js +3 -1
  131. package/src/lib/governance-v2-helpers.js +1 -1
  132. package/src/lib/sync-manager.js +119 -25
  133. package/src/assets/web-panel/assets/AIOps-CoZ9bIqF.js +0 -1
  134. package/src/assets/web-panel/assets/AppLayout-_JR3Gko8.js +0 -1
  135. package/src/assets/web-panel/assets/Audit-D8WmaHdX.js +0 -1
  136. package/src/assets/web-panel/assets/Backup-CogYVeiE.js +0 -1
  137. package/src/assets/web-panel/assets/Chat-DkQnhjfk.js +0 -2
  138. package/src/assets/web-panel/assets/Codegen-BHyJ3j-p.js +0 -1
  139. package/src/assets/web-panel/assets/Community-UMq5QuBA.js +0 -1
  140. package/src/assets/web-panel/assets/Compact-DGlwooBJ.js +0 -1
  141. package/src/assets/web-panel/assets/Compliance-2rWGO55k.js +0 -1
  142. package/src/assets/web-panel/assets/Crosschain-Cgd5cRKn.js +0 -1
  143. package/src/assets/web-panel/assets/Dashboard-ClnWtxsT.js +0 -3
  144. package/src/assets/web-panel/assets/Federation-DtUN3wQa.js +0 -1
  145. package/src/assets/web-panel/assets/Governance-B2TFaWsf.js +0 -1
  146. package/src/assets/web-panel/assets/Inference-Cm_hmXla.js +0 -1
  147. package/src/assets/web-panel/assets/KnowledgeGraph-DLaLMo4r.js +0 -1
  148. package/src/assets/web-panel/assets/Marketplace-BlR3RCDV.js +0 -1
  149. package/src/assets/web-panel/assets/NLProgramming-B_Tie6j1.js +0 -1
  150. package/src/assets/web-panel/assets/Pipeline-nwFpKsU_.js +0 -1
  151. package/src/assets/web-panel/assets/Privacy-BGpz72PX.js +0 -1
  152. package/src/assets/web-panel/assets/QuickAsk-6FgX9DC6.js +0 -1
  153. package/src/assets/web-panel/assets/Recommend-BPhQwye7.js +0 -1
  154. package/src/assets/web-panel/assets/Reputation-BL6hTN1s.js +0 -1
  155. package/src/assets/web-panel/assets/Search-R_b-u9oL.js +0 -1
  156. package/src/assets/web-panel/assets/Skills-DD5ReHH7.js +0 -1
  157. package/src/assets/web-panel/assets/Sla-CaQOOsjD.js +0 -1
  158. package/src/assets/web-panel/assets/SpeechSettings-D-pGIn9Z.js +0 -1
  159. package/src/assets/web-panel/assets/Tasks-BbdO_i4Q.js +0 -1
  160. package/src/assets/web-panel/assets/Templates-CupAugDn.js +0 -1
  161. package/src/assets/web-panel/assets/Tenant-rseAzHcY.js +0 -1
  162. package/src/assets/web-panel/assets/Tokens-DXMokNbR.js +0 -1
  163. package/src/assets/web-panel/assets/Trust-CKb7QDH1.js +0 -1
  164. package/src/assets/web-panel/assets/UkeySign-Cux8_Ib_.js +0 -1
  165. package/src/assets/web-panel/assets/VideoEditing-CSOjdBZg.js +0 -1
  166. package/src/assets/web-panel/assets/WorkflowEditor-BFZ3RYva.js +0 -1
  167. package/src/assets/web-panel/assets/chat-BQ-Nk2XY.js +0 -1
  168. package/src/assets/web-panel/assets/icons-DvZE-RKs.js +0 -57
  169. package/src/assets/web-panel/assets/index-4cn1LmJ9.js +0 -1
  170. package/src/assets/web-panel/assets/index-B9b_mz4I.js +0 -55
  171. package/src/assets/web-panel/assets/index-BAA1SFp1.js +0 -1
  172. package/src/assets/web-panel/assets/index-BJeE7n_I.js +0 -12
  173. package/src/assets/web-panel/assets/index-BJoK7MkB.js +0 -13
  174. package/src/assets/web-panel/assets/index-CA3g3EpL.js +0 -1
  175. package/src/assets/web-panel/assets/index-CWhXxdyo.js +0 -1
  176. package/src/assets/web-panel/assets/index-Cfy9l115.js +0 -1
  177. package/src/assets/web-panel/assets/index-CijiVpfO.js +0 -1
  178. package/src/assets/web-panel/assets/index-Cpfx7-LN.js +0 -12
  179. package/src/assets/web-panel/assets/index-CvuBD5TK.js +0 -3
  180. package/src/assets/web-panel/assets/index-Cw4v7ezB.js +0 -65
  181. package/src/assets/web-panel/assets/index-DjeNNVwu.js +0 -1
  182. package/src/assets/web-panel/assets/index-JszcDpsT.js +0 -7
  183. package/src/assets/web-panel/assets/index-aw2DwKj-.js +0 -21
  184. package/src/assets/web-panel/assets/useFs-BD-YRwbU.js +0 -1
  185. package/src/assets/web-panel/assets/ws-D_5-FRIb.js +0 -1
@@ -0,0 +1 @@
1
+ import{_ as et,b as tt,u as at,N as ot,d as h}from"./index-B2f4ltyM.js";import{s as nt}from"./community-parser-CO25nZFt.js";import{R as st,al as lt,X as rt,aD as it,m as ut,af as ct,f as dt,q as ft}from"./icons-zXb7lDZs.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,_ as J,Q as T,S as K,f as B,a as ve}from"./vendor-B6ToihkA.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"},Rt={key:1},Bt={key:2},Lt={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),X=x(!1),Y=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),Re=B(()=>[{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"}]),Be=B(()=>[{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"}]),Le=B(()=>[{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=B(()=>[{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=B(()=>V.value?ce.value.filter(r=>r.state===V.value):ce.value),qe=B(()=>{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=B(()=>(S.value.circuitBreakers.byState.open||0)+(S.value.circuitBreakers.byState.half_open||0)),Se=B(()=>{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 R(){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 R()}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)})),X.value=!1,Ve(),await R()}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})),Y.value=!1,Ge(),await R()}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 R()}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 R()}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 R()}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(R),(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"),L=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"),Xe=m("a-descriptions"),Ye=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:R},{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=>X.value=!0)},{default:a(()=>[p(c(s(e)("federation.newMenu.check")),1)]),_:1}),t(j,{key:"pool",onClick:n[2]||(n[2]=o=>Y.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(L,{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(L,{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(L,{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(L,{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(L,{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(Ye,{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:Re.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",Rt,c(d.failureCount)+" / "+c(d.failureThreshold),1)):o.key==="success"?(f(),I("span",Bt,c(d.successCount)+" / "+c(d.successThreshold),1)):o.key==="updatedAt"?(f(),I("span",Lt,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:Be.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:Le.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(L,{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(L,{key:0,style:{background:"var(--bg-card)","border-color":"var(--border-color)"}},{default:a(()=>[t(Xe,{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:X.value,"onUpdate:open":n[17]||(n[17]=o=>X.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:Y.value,"onUpdate:open":n[22]||(n[22]=o=>Y.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"])])}}},Xt=et(Kt,[["__scopeId","data-v-45647e41"]]);export{Xt as default};
@@ -1 +1 @@
1
- import{c as I}from"./createContext-C6HFlAQP.js";import{d as i,i as u,e as p,w as C,g as f,f as c,r as x,p as a}from"./vendor-B6ToihkA.js";const r=Symbol("ContextProps"),s=Symbol("InternalContextProps"),S=function(n){let o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:c(()=>!0);const e=x(new Map),t=(m,v)=>{e.value.set(m,v),e.value=new Map(e.value)},F=m=>{e.value.delete(m),e.value=new Map(e.value)};C([o,e],()=>{}),a(r,n),a(s,{addFormItemField:t,removeFormItemField:F})},l={id:c(()=>{}),onFieldBlur:()=>{},onFieldChange:()=>{},clearValidate:()=>{}},d={addFormItemField:()=>{},removeFormItemField:()=>{}},b=()=>{const n=u(s,d),o=Symbol("FormItemFieldKey"),e=f();return n.addFormItemField(o,e.type),p(()=>{n.removeFormItemField(o)}),a(s,d),a(r,l),u(r,l)},K=i({compatConfig:{MODE:3},name:"AFormItemRest",setup(n,o){let{slots:e}=o;return a(s,d),a(r,l),()=>{var t;return(t=e.default)===null||t===void 0?void 0:t.call(e)}}}),g=I({}),M=i({name:"NoFormStatus",setup(n,o){let{slots:e}=o;return g.useProvide({}),()=>{var t;return(t=e.default)===null||t===void 0?void 0:t.call(e)}}});export{g as F,M as N,S as a,K as b,b as u};
1
+ import{c as I}from"./createContext-Cetup5Fb.js";import{d as i,i as u,e as p,w as C,g as f,f as c,r as x,p as a}from"./vendor-B6ToihkA.js";const r=Symbol("ContextProps"),s=Symbol("InternalContextProps"),S=function(n){let o=arguments.length>1&&arguments[1]!==void 0?arguments[1]:c(()=>!0);const e=x(new Map),t=(m,v)=>{e.value.set(m,v),e.value=new Map(e.value)},F=m=>{e.value.delete(m),e.value=new Map(e.value)};C([o,e],()=>{}),a(r,n),a(s,{addFormItemField:t,removeFormItemField:F})},l={id:c(()=>{}),onFieldBlur:()=>{},onFieldChange:()=>{},clearValidate:()=>{}},d={addFormItemField:()=>{},removeFormItemField:()=>{}},b=()=>{const n=u(s,d),o=Symbol("FormItemFieldKey"),e=f();return n.addFormItemField(o,e.type),p(()=>{n.removeFormItemField(o)}),a(s,d),a(r,l),u(r,l)},K=i({compatConfig:{MODE:3},name:"AFormItemRest",setup(n,o){let{slots:e}=o;return a(s,d),a(r,l),()=>{var t;return(t=e.default)===null||t===void 0?void 0:t.call(e)}}}),g=I({}),M=i({name:"NoFormStatus",setup(n,o){let{slots:e}=o;return g.useProvide({}),()=>{var t;return(t=e.default)===null||t===void 0?void 0:t.call(e)}}});export{g as F,M as N,S as a,K as b,b as u};
@@ -1,2 +1,2 @@
1
- import{_ as te,a as ae,c as f}from"./index-Cw4v7ezB.js";import{u as oe}from"./ws-D_5-FRIb.js";import{R as se,ar as le,r as G,as as q,at as ie}from"./icons-DvZE-RKs.js";import{M as j,R as n,P as i,u as a,c as s,N as o,r,K as p,L as g,O as d,Q as _,S as x}from"./vendor-B6ToihkA.js";const re={style:{display:"flex","align-items":"center","justify-content":"space-between","margin-bottom":"24px"}},ne={class:"page-title"},ue={class:"page-sub"},ce={key:0,style:{"margin-bottom":"16px"}},de={style:{"white-space":"pre-wrap","word-break":"break-all",color:"var(--text-primary)","font-family":"'Cascadia Code', 'Fira Code', Consolas, monospace","font-size":"13px","line-height":"1.7",margin:"0"}},pe={style:{display:"flex",gap:"12px","align-items":"flex-end","flex-wrap":"wrap"}},me={style:{flex:"1","min-width":"200px"}},ge={style:{display:"block","margin-bottom":"6px",color:"var(--text-secondary)","font-size":"13px"}},ve={style:{"min-width":"140px"}},fe={style:{display:"block","margin-bottom":"6px",color:"var(--text-secondary)","font-size":"13px"}},_e={style:{display:"flex",gap:"12px","align-items":"flex-end","flex-wrap":"wrap"}},ye={style:{flex:"1","min-width":"200px"}},be={style:{display:"block","margin-bottom":"6px",color:"var(--text-secondary)","font-size":"13px"}},xe={style:{"white-space":"pre-wrap","word-break":"break-all",color:"var(--text-primary)","font-family":"'Cascadia Code', 'Fira Code', Consolas, monospace","font-size":"13px","line-height":"1.7",margin:"0"}},he={style:{color:"var(--text-secondary)"}},ke={__name:"Git",setup(we){const{t:e}=ae(),L=oe(),V=r("git"),A=r(!1),C=r(""),D=r(""),O=r(0),R=r(!1),h=r(""),F=r(!1),P=r(!1),S=r(""),E=r("markdown"),I=r(!1),M=r("./site"),T=r(!1),v=r(""),k=r(!1),w=r("");function H(l){const t=l.split(`
2
- `);let u="",c=0;for(const y of t){const b=y.match(/On branch\s+(.+)/)||y.match(/分支\s+(.+)/);b&&(u=b[1].trim());const B=y.trim();/^(M|A|D|R|C|U|\?\?|MM|AM|AD)\s/.test(B)&&c++,/^(modified|new file|deleted|renamed):/i.test(B)&&c++}return{branch:u,changed:c}}async function z(){A.value=!0;try{const{output:l}=await L.execute("git status",15e3);C.value=l;const t=H(l);D.value=t.branch,O.value=t.changed}catch(l){f.error(e("git.messages.statusFailed",{err:l.message})),C.value=""}finally{A.value=!1}}function Q(){P.value=!0}async function W(){P.value=!1,R.value=!0,h.value="";try{const{output:l}=await L.execute("git auto-commit",3e4);h.value=l,F.value=!l.includes("✖")&&!l.toLowerCase().includes("error"),F.value&&f.success(e("git.messages.commitOk")),await z()}catch(l){h.value=e("git.messages.commitFailedDetail",{err:l.message}),F.value=!1,f.error(e("git.messages.commitFailedToast"))}finally{R.value=!1}}async function J(){const l=S.value.trim();if(!l){f.warning(e("git.messages.importPathRequired"));return}I.value=!0,v.value="",w.value="";try{const t=`import ${E.value} ${l}`,{output:u}=await L.execute(t,6e4);w.value=u;const c=u.includes("✖")||u.toLowerCase().includes("error");k.value=!c,v.value=e(c?"git.io.importIssue":"git.io.importDone"),c||f.success(e("git.messages.importOk"))}catch(t){v.value=e("git.messages.importFailedDetail",{err:t.message}),k.value=!1,f.error(e("git.messages.importFailed"))}finally{I.value=!1}}async function X(){const l=M.value.trim();if(!l){f.warning(e("git.messages.exportPathRequired"));return}T.value=!0,v.value="",w.value="";try{const t=`export site -o ${l}`,{output:u}=await L.execute(t,6e4);w.value=u;const c=u.includes("✖")||u.toLowerCase().includes("error");k.value=!c,v.value=e(c?"git.io.exportIssue":"git.io.exportDone"),c||f.success(e("git.messages.exportOk"))}catch(t){v.value=e("git.messages.exportFailedDetail",{err:t.message}),k.value=!1,f.error(e("git.messages.exportFailed"))}finally{T.value=!1}}return(l,t)=>{const u=p("a-button"),c=p("a-space"),y=p("a-tag"),b=p("a-card"),B=p("a-empty"),N=p("a-alert"),$=p("a-tab-pane"),K=p("a-input"),U=p("a-select-option"),Y=p("a-select"),Z=p("a-tabs"),ee=p("a-modal");return g(),j("div",null,[n("div",re,[n("div",null,[n("h2",ne,i(a(e)("git.title")),1),n("p",ue,i(a(e)("git.subtitle")),1)])]),s(Z,{activeKey:V.value,"onUpdate:activeKey":t[5]||(t[5]=m=>V.value=m),type:"card"},{default:o(()=>[s($,{key:"git"},{tab:o(()=>[s(a(G)),d(" "+i(a(e)("git.tabs.git")),1)]),default:o(()=>[s(c,{style:{"margin-bottom":"16px"}},{default:o(()=>[s(u,{type:"primary",loading:A.value,onClick:z},{icon:o(()=>[s(a(se))]),default:o(()=>[d(" "+i(a(e)("git.actions.refresh")),1)]),_:1},8,["loading"]),s(u,{loading:R.value,onClick:Q},{icon:o(()=>[s(a(le))]),default:o(()=>[d(" "+i(a(e)("git.actions.autoCommit")),1)]),_:1},8,["loading"])]),_:1}),D.value||O.value>0?(g(),j("div",ce,[s(c,null,{default:o(()=>[D.value?(g(),_(y,{key:0,color:"blue"},{default:o(()=>[s(a(G)),d(" "+i(D.value),1)]),_:1})):x("",!0),O.value>0?(g(),_(y,{key:1,color:"orange"},{default:o(()=>[d(i(a(e)("git.status.changedCount",{count:O.value})),1)]),_:1})):C.value&&O.value===0?(g(),_(y,{key:2,color:"green"},{default:o(()=>[d(i(a(e)("git.status.clean")),1)]),_:1})):x("",!0)]),_:1})])):x("",!0),C.value?(g(),_(b,{key:1,bordered:!1,style:{background:"var(--bg-base)",border:"1px solid var(--border-color)"}},{default:o(()=>[n("pre",de,i(C.value),1)]),_:1})):A.value?x("",!0):(g(),_(B,{key:2,description:a(e)("git.status.emptyHint"),style:{padding:"60px 0"}},null,8,["description"])),h.value?(g(),_(N,{key:3,message:F.value?a(e)("git.status.commitSuccessAlert"):a(e)("git.status.commitResultAlert"),description:h.value,type:F.value?"success":"info","show-icon":"",closable:"",style:{"margin-top":"16px"},onClose:t[0]||(t[0]=m=>h.value="")},null,8,["message","description","type"])):x("",!0)]),_:1}),s($,{key:"io"},{tab:o(()=>[s(a(q)),d(" "+i(a(e)("git.tabs.io")),1)]),default:o(()=>[s(b,{title:a(e)("git.import.cardTitle"),bordered:!1,style:{background:"var(--bg-card)",border:"1px solid var(--border-color)","margin-bottom":"16px"}},{default:o(()=>[n("div",pe,[n("div",me,[n("label",ge,i(a(e)("git.import.pathLabel")),1),s(K,{value:S.value,"onUpdate:value":t[1]||(t[1]=m=>S.value=m),placeholder:a(e)("git.import.pathPlaceholder"),"allow-clear":""},null,8,["value","placeholder"])]),n("div",ve,[n("label",fe,i(a(e)("git.import.formatLabel")),1),s(Y,{value:E.value,"onUpdate:value":t[2]||(t[2]=m=>E.value=m),style:{width:"140px"}},{default:o(()=>[s(U,{value:"markdown"},{default:o(()=>[...t[7]||(t[7]=[d("Markdown",-1)])]),_:1}),s(U,{value:"pdf"},{default:o(()=>[...t[8]||(t[8]=[d("PDF",-1)])]),_:1}),s(U,{value:"evernote"},{default:o(()=>[...t[9]||(t[9]=[d("Evernote",-1)])]),_:1})]),_:1},8,["value"])]),s(u,{type:"primary",loading:I.value,disabled:!S.value.trim(),onClick:J},{icon:o(()=>[s(a(q))]),default:o(()=>[d(" "+i(a(e)("git.import.submit")),1)]),_:1},8,["loading","disabled"])])]),_:1},8,["title"]),s(b,{title:a(e)("git.export.cardTitle"),bordered:!1,style:{background:"var(--bg-card)",border:"1px solid var(--border-color)","margin-bottom":"16px"}},{default:o(()=>[n("div",_e,[n("div",ye,[n("label",be,i(a(e)("git.export.pathLabel")),1),s(K,{value:M.value,"onUpdate:value":t[3]||(t[3]=m=>M.value=m),placeholder:a(e)("git.export.pathPlaceholder"),"allow-clear":""},null,8,["value","placeholder"])]),s(u,{type:"primary",loading:T.value,disabled:!M.value.trim(),onClick:X},{icon:o(()=>[s(a(ie))]),default:o(()=>[d(" "+i(a(e)("git.export.submit")),1)]),_:1},8,["loading","disabled"])])]),_:1},8,["title"]),v.value?(g(),_(N,{key:0,message:k.value?a(e)("git.io.successAlert"):a(e)("git.io.resultAlert"),description:v.value,type:k.value?"success":"info","show-icon":"",closable:"",style:{"margin-top":"16px"},onClose:t[4]||(t[4]=m=>v.value="")},null,8,["message","description","type"])):x("",!0),w.value?(g(),_(b,{key:1,title:a(e)("git.io.outputCardTitle"),bordered:!1,style:{background:"var(--bg-base)",border:"1px solid var(--border-color)","margin-top":"16px"}},{default:o(()=>[n("pre",xe,i(w.value),1)]),_:1},8,["title"])):x("",!0)]),_:1})]),_:1},8,["activeKey"]),s(ee,{open:P.value,"onUpdate:open":t[6]||(t[6]=m=>P.value=m),title:a(e)("git.confirm.title"),"ok-text":a(e)("git.confirm.ok"),"cancel-text":a(e)("common.cancel"),"confirm-loading":R.value,onOk:W},{default:o(()=>[n("p",he,[d(i(a(e)("git.confirm.intro1"))+" ",1),t[10]||(t[10]=n("code",null,"git auto-commit",-1)),d(" "+i(a(e)("git.confirm.intro2")),1)])]),_:1},8,["open","title","ok-text","cancel-text","confirm-loading"])])}}},Ae=te(ke,[["__scopeId","data-v-9c41946e"]]);export{Ae as default};
1
+ import{_ as te,b as ae,u as oe,d as f}from"./index-B2f4ltyM.js";import{R as se,at as le,r as G,au as q,av as ie}from"./icons-zXb7lDZs.js";import{M as j,R as r,P as i,u as a,c as s,N as o,r as n,K as p,L as g,O as d,Q as _,S as x}from"./vendor-B6ToihkA.js";const ne={style:{display:"flex","align-items":"center","justify-content":"space-between","margin-bottom":"24px"}},re={class:"page-title"},ue={class:"page-sub"},ce={key:0,style:{"margin-bottom":"16px"}},de={style:{"white-space":"pre-wrap","word-break":"break-all",color:"var(--text-primary)","font-family":"'Cascadia Code', 'Fira Code', Consolas, monospace","font-size":"13px","line-height":"1.7",margin:"0"}},pe={style:{display:"flex",gap:"12px","align-items":"flex-end","flex-wrap":"wrap"}},me={style:{flex:"1","min-width":"200px"}},ge={style:{display:"block","margin-bottom":"6px",color:"var(--text-secondary)","font-size":"13px"}},ve={style:{"min-width":"140px"}},fe={style:{display:"block","margin-bottom":"6px",color:"var(--text-secondary)","font-size":"13px"}},_e={style:{display:"flex",gap:"12px","align-items":"flex-end","flex-wrap":"wrap"}},ye={style:{flex:"1","min-width":"200px"}},be={style:{display:"block","margin-bottom":"6px",color:"var(--text-secondary)","font-size":"13px"}},xe={style:{"white-space":"pre-wrap","word-break":"break-all",color:"var(--text-primary)","font-family":"'Cascadia Code', 'Fira Code', Consolas, monospace","font-size":"13px","line-height":"1.7",margin:"0"}},he={style:{color:"var(--text-secondary)"}},ke={__name:"Git",setup(we){const{t:e}=ae(),L=oe(),V=n("git"),A=n(!1),C=n(""),D=n(""),O=n(0),R=n(!1),h=n(""),F=n(!1),P=n(!1),S=n(""),E=n("markdown"),I=n(!1),M=n("./site"),T=n(!1),v=n(""),k=n(!1),w=n("");function H(l){const t=l.split(`
2
+ `);let u="",c=0;for(const y of t){const b=y.match(/On branch\s+(.+)/)||y.match(/分支\s+(.+)/);b&&(u=b[1].trim());const B=y.trim();/^(M|A|D|R|C|U|\?\?|MM|AM|AD)\s/.test(B)&&c++,/^(modified|new file|deleted|renamed):/i.test(B)&&c++}return{branch:u,changed:c}}async function z(){A.value=!0;try{const{output:l}=await L.execute("git status",15e3);C.value=l;const t=H(l);D.value=t.branch,O.value=t.changed}catch(l){f.error(e("git.messages.statusFailed",{err:l.message})),C.value=""}finally{A.value=!1}}function Q(){P.value=!0}async function W(){P.value=!1,R.value=!0,h.value="";try{const{output:l}=await L.execute("git auto-commit",3e4);h.value=l,F.value=!l.includes("✖")&&!l.toLowerCase().includes("error"),F.value&&f.success(e("git.messages.commitOk")),await z()}catch(l){h.value=e("git.messages.commitFailedDetail",{err:l.message}),F.value=!1,f.error(e("git.messages.commitFailedToast"))}finally{R.value=!1}}async function J(){const l=S.value.trim();if(!l){f.warning(e("git.messages.importPathRequired"));return}I.value=!0,v.value="",w.value="";try{const t=`import ${E.value} ${l}`,{output:u}=await L.execute(t,6e4);w.value=u;const c=u.includes("✖")||u.toLowerCase().includes("error");k.value=!c,v.value=e(c?"git.io.importIssue":"git.io.importDone"),c||f.success(e("git.messages.importOk"))}catch(t){v.value=e("git.messages.importFailedDetail",{err:t.message}),k.value=!1,f.error(e("git.messages.importFailed"))}finally{I.value=!1}}async function X(){const l=M.value.trim();if(!l){f.warning(e("git.messages.exportPathRequired"));return}T.value=!0,v.value="",w.value="";try{const t=`export site -o ${l}`,{output:u}=await L.execute(t,6e4);w.value=u;const c=u.includes("✖")||u.toLowerCase().includes("error");k.value=!c,v.value=e(c?"git.io.exportIssue":"git.io.exportDone"),c||f.success(e("git.messages.exportOk"))}catch(t){v.value=e("git.messages.exportFailedDetail",{err:t.message}),k.value=!1,f.error(e("git.messages.exportFailed"))}finally{T.value=!1}}return(l,t)=>{const u=p("a-button"),c=p("a-space"),y=p("a-tag"),b=p("a-card"),B=p("a-empty"),N=p("a-alert"),$=p("a-tab-pane"),K=p("a-input"),U=p("a-select-option"),Y=p("a-select"),Z=p("a-tabs"),ee=p("a-modal");return g(),j("div",null,[r("div",ne,[r("div",null,[r("h2",re,i(a(e)("git.title")),1),r("p",ue,i(a(e)("git.subtitle")),1)])]),s(Z,{activeKey:V.value,"onUpdate:activeKey":t[5]||(t[5]=m=>V.value=m),type:"card"},{default:o(()=>[s($,{key:"git"},{tab:o(()=>[s(a(G)),d(" "+i(a(e)("git.tabs.git")),1)]),default:o(()=>[s(c,{style:{"margin-bottom":"16px"}},{default:o(()=>[s(u,{type:"primary",loading:A.value,onClick:z},{icon:o(()=>[s(a(se))]),default:o(()=>[d(" "+i(a(e)("git.actions.refresh")),1)]),_:1},8,["loading"]),s(u,{loading:R.value,onClick:Q},{icon:o(()=>[s(a(le))]),default:o(()=>[d(" "+i(a(e)("git.actions.autoCommit")),1)]),_:1},8,["loading"])]),_:1}),D.value||O.value>0?(g(),j("div",ce,[s(c,null,{default:o(()=>[D.value?(g(),_(y,{key:0,color:"blue"},{default:o(()=>[s(a(G)),d(" "+i(D.value),1)]),_:1})):x("",!0),O.value>0?(g(),_(y,{key:1,color:"orange"},{default:o(()=>[d(i(a(e)("git.status.changedCount",{count:O.value})),1)]),_:1})):C.value&&O.value===0?(g(),_(y,{key:2,color:"green"},{default:o(()=>[d(i(a(e)("git.status.clean")),1)]),_:1})):x("",!0)]),_:1})])):x("",!0),C.value?(g(),_(b,{key:1,bordered:!1,style:{background:"var(--bg-base)",border:"1px solid var(--border-color)"}},{default:o(()=>[r("pre",de,i(C.value),1)]),_:1})):A.value?x("",!0):(g(),_(B,{key:2,description:a(e)("git.status.emptyHint"),style:{padding:"60px 0"}},null,8,["description"])),h.value?(g(),_(N,{key:3,message:F.value?a(e)("git.status.commitSuccessAlert"):a(e)("git.status.commitResultAlert"),description:h.value,type:F.value?"success":"info","show-icon":"",closable:"",style:{"margin-top":"16px"},onClose:t[0]||(t[0]=m=>h.value="")},null,8,["message","description","type"])):x("",!0)]),_:1}),s($,{key:"io"},{tab:o(()=>[s(a(q)),d(" "+i(a(e)("git.tabs.io")),1)]),default:o(()=>[s(b,{title:a(e)("git.import.cardTitle"),bordered:!1,style:{background:"var(--bg-card)",border:"1px solid var(--border-color)","margin-bottom":"16px"}},{default:o(()=>[r("div",pe,[r("div",me,[r("label",ge,i(a(e)("git.import.pathLabel")),1),s(K,{value:S.value,"onUpdate:value":t[1]||(t[1]=m=>S.value=m),placeholder:a(e)("git.import.pathPlaceholder"),"allow-clear":""},null,8,["value","placeholder"])]),r("div",ve,[r("label",fe,i(a(e)("git.import.formatLabel")),1),s(Y,{value:E.value,"onUpdate:value":t[2]||(t[2]=m=>E.value=m),style:{width:"140px"}},{default:o(()=>[s(U,{value:"markdown"},{default:o(()=>[...t[7]||(t[7]=[d("Markdown",-1)])]),_:1}),s(U,{value:"pdf"},{default:o(()=>[...t[8]||(t[8]=[d("PDF",-1)])]),_:1}),s(U,{value:"evernote"},{default:o(()=>[...t[9]||(t[9]=[d("Evernote",-1)])]),_:1})]),_:1},8,["value"])]),s(u,{type:"primary",loading:I.value,disabled:!S.value.trim(),onClick:J},{icon:o(()=>[s(a(q))]),default:o(()=>[d(" "+i(a(e)("git.import.submit")),1)]),_:1},8,["loading","disabled"])])]),_:1},8,["title"]),s(b,{title:a(e)("git.export.cardTitle"),bordered:!1,style:{background:"var(--bg-card)",border:"1px solid var(--border-color)","margin-bottom":"16px"}},{default:o(()=>[r("div",_e,[r("div",ye,[r("label",be,i(a(e)("git.export.pathLabel")),1),s(K,{value:M.value,"onUpdate:value":t[3]||(t[3]=m=>M.value=m),placeholder:a(e)("git.export.pathPlaceholder"),"allow-clear":""},null,8,["value","placeholder"])]),s(u,{type:"primary",loading:T.value,disabled:!M.value.trim(),onClick:X},{icon:o(()=>[s(a(ie))]),default:o(()=>[d(" "+i(a(e)("git.export.submit")),1)]),_:1},8,["loading","disabled"])])]),_:1},8,["title"]),v.value?(g(),_(N,{key:0,message:k.value?a(e)("git.io.successAlert"):a(e)("git.io.resultAlert"),description:v.value,type:k.value?"success":"info","show-icon":"",closable:"",style:{"margin-top":"16px"},onClose:t[4]||(t[4]=m=>v.value="")},null,8,["message","description","type"])):x("",!0),w.value?(g(),_(b,{key:1,title:a(e)("git.io.outputCardTitle"),bordered:!1,style:{background:"var(--bg-base)",border:"1px solid var(--border-color)","margin-top":"16px"}},{default:o(()=>[r("pre",xe,i(w.value),1)]),_:1},8,["title"])):x("",!0)]),_:1})]),_:1},8,["activeKey"]),s(ee,{open:P.value,"onUpdate:open":t[6]||(t[6]=m=>P.value=m),title:a(e)("git.confirm.title"),"ok-text":a(e)("git.confirm.ok"),"cancel-text":a(e)("common.cancel"),"confirm-loading":R.value,onOk:W},{default:o(()=>[r("p",he,[d(i(a(e)("git.confirm.intro1"))+" ",1),t[10]||(t[10]=r("code",null,"git auto-commit",-1)),d(" "+i(a(e)("git.confirm.intro2")),1)])]),_:1},8,["open","title","ok-text","cancel-text","confirm-loading"])])}}},Le=te(ke,[["__scopeId","data-v-9c41946e"]]);export{Le as default};
@@ -0,0 +1 @@
1
+ import{_ as ot,u as nt,b as lt,N as rt,d as g}from"./index-B2f4ltyM.js";import{s as De}from"./community-parser-CO25nZFt.js";import{R as st,al as it,k as we,aj as ut,f as ct,d as dt,aF as pt,aG as vt}from"./icons-zXb7lDZs.js";import{o as ft,M as m,R as v,P as s,c as t,N as a,Q as _,S as b,K as f,r as h,L as u,O as d,u as k,F,_ as I,$ as yt,f as Le,a as Pe}from"./vendor-B6ToihkA.js";function V(i){const l=De(i);if(!l)return null;try{return JSON.parse(l)}catch{}const r=l.match(/\{[\s\S]*\}|\[[\s\S]*\]/);if(!r)return null;try{return JSON.parse(r[0])}catch{return null}}const fe=Object.freeze(["draft","active","passed","rejected","expired"]),oe=Object.freeze(["parameter_change","feature_request","policy_update","budget_allocation"]),mt=Object.freeze(["yes","no","abstain"]);function P(i,l=0){return typeof i=="number"&&Number.isFinite(i)?i:l}function R(i){if(!i)return{noDb:!1,error:""};const l=De(i),r=/Database not available/i.test(l);return{noDb:r,error:r?"Database not available":""}}function gt(i,l=0){if(!i||typeof i!="object")return null;const r=i.id||"";return r?{key:r,id:r,name:String(i.name||""),description:String(i.description||""),_idx:l}:null}function bt(i){const l=V(i);return Array.isArray(l)?l.map(gt).filter(Boolean):[]}function _t(i,l=0){if(!i||typeof i!="object")return null;const r=i.id||"";return r?{key:r,id:r,title:String(i.title||""),description:i.description??"",type:String(i.type||"feature_request"),proposerDid:i.proposerDid??"",status:String(i.status||"draft").toLowerCase(),impactLevel:i.impactLevel??"",impactAnalysis:i.impactAnalysis??null,voteYes:P(i.voteYes,0),voteNo:P(i.voteNo,0),voteAbstain:P(i.voteAbstain,0),votingStartsAt:i.votingStartsAt??null,votingEndsAt:i.votingEndsAt??null,metadata:i.metadata??null,createdAt:i.createdAt??null,_idx:l}:null}function kt(i){const l=V(i);return Array.isArray(l)?l.map(_t).filter(Boolean):[]}function $t(i,l=0){if(!i||typeof i!="object")return null;const r=i.id||"";if(!r)return null;const x=String(i.vote||"").toLowerCase();return{key:r,id:r,proposalId:String(i.proposalId||""),voterDid:String(i.voterDid||""),vote:(mt.includes(x),x),reason:i.reason??"",weight:P(i.weight,1),createdAt:i.createdAt??null,_idx:l}}function ht(i){const l=V(i);return Array.isArray(l)?l.map($t).filter(Boolean):[]}function St(i){const l=V(i);return!l||typeof l!="object"||Array.isArray(l)?null:{impactLevel:String(l.impactLevel||""),affectedComponents:Array.isArray(l.affectedComponents)?l.affectedComponents.filter(r=>typeof r=="string"):[],riskScore:P(l.riskScore,0),benefitScore:P(l.benefitScore,0),estimatedEffort:String(l.estimatedEffort||""),communitySentiment:String(l.communitySentiment||""),recommendations:Array.isArray(l.recommendations)?l.recommendations.filter(r=>typeof r=="string"):[],analyzedAt:l.analyzedAt??null}}function zt(i){const l=V(i);return!l||typeof l!="object"||Array.isArray(l)?null:{proposalId:String(l.proposalId||""),predictedOutcome:String(l.predictedOutcome||""),confidence:P(l.confidence,0),yesProb:P(l.yesProb,0),noProb:P(l.noProb,0),abstainProb:P(l.abstainProb,0),basedOn:String(l.basedOn||""),sampleSize:P(l.sampleSize,0)}}const Ct={proposalCount:0,voteCount:0,byStatus:{},byType:{}};function At(i){const l=JSON.parse(JSON.stringify(Ct));for(const x of fe)l.byStatus[x]=0;for(const x of oe)l.byType[x]=0;const r=V(i);if(!r||typeof r!="object"||Array.isArray(r))return l;if(l.proposalCount=P(r.proposalCount,0),l.voteCount=P(r.voteCount,0),r.byStatus&&typeof r.byStatus=="object")for(const[x,D]of Object.entries(r.byStatus))typeof D=="number"&&Number.isFinite(D)&&(l.byStatus[x]=D);if(r.byType&&typeof r.byType=="object")for(const[x,D]of Object.entries(r.byType))typeof D=="number"&&Number.isFinite(D)&&(l.byType[x]=D);return l}function W(i){if(i==null||i==="")return"—";const l=typeof i=="number"?new Date(i):new Date(String(i));return isNaN(l.getTime())?String(i):l.toLocaleString("zh-CN",{hour12:!1})}const xt={style:{display:"flex","align-items":"center","justify-content":"space-between","margin-bottom":"24px"}},wt={class:"page-title"},Lt={class:"page-sub"},Pt={class:"type-head"},Dt={class:"type-count"},Ot={class:"type-name"},jt={class:"type-desc"},Tt={class:"filter-bar"},Ft={style:{color:"var(--text-primary)","font-weight":"500"}},Nt={style:{color:"var(--text-secondary)","font-size":"11px","font-family":"monospace","margin-top":"2px"}},Et={style:{"font-family":"monospace","font-size":"12px"}},Ut={style:{color:"#52c41a"}},It={style:{color:"#ff4d4f"}},Mt={style:{color:"var(--text-muted)"}},Rt={key:1,style:{color:"var(--text-muted)"}},Vt={key:5,style:{color:"var(--text-secondary)","font-size":"11px"}},Bt={style:{padding:"40px",color:"var(--text-muted)","text-align":"center"}},Yt={style:{"margin-left":"8px",color:"var(--text-muted)","font-size":"12px"}},qt={key:0,style:{"padding-top":"8px"}},Gt={style:{"font-family":"monospace","font-size":"12px"}},Jt={key:0,style:{"font-family":"monospace","font-size":"12px"}},Kt={key:1,style:{color:"var(--text-muted)"}},Ht={key:0,style:{"white-space":"pre-wrap"}},Qt={key:1,style:{color:"var(--text-muted)"}},Wt={style:{color:"var(--text-primary)","font-size":"13px",margin:"20px 0 10px"}},Xt={style:{"margin-left":"8px",color:"var(--text-muted)","font-size":"11px"}},Zt={style:{"margin-left":"8px","font-family":"monospace","font-size":"11px",color:"var(--text-secondary)"}},ea={key:0,style:{"margin-left":"8px",color:"var(--text-secondary)","font-size":"12px"}},ta={style:{"margin-left":"auto",color:"var(--text-muted)","font-size":"11px"}},aa={key:0,style:{"padding-top":"8px"}},oa={style:{"margin-bottom":"8px"}},na={style:{color:"var(--text-secondary)","font-size":"12px"}},la={style:{color:"var(--text-secondary)","font-size":"12px"}},ra={key:0,style:{"padding-top":"8px"}},sa={style:{"text-align":"center","margin-bottom":"20px"}},ia={style:{color:"#52c41a"}},ua={style:{color:"#ff4d4f"}},ca={style:{color:"var(--text-muted)"}},da={__name:"Governance",setup(i){const l=nt(),{t:r}=lt(),x=rt.PRESENTED_IMAGE_SIMPLE,D=h(!1),ne=h(!1),le=h(!1),ye=h([]),me=h([]),A=h({proposalCount:0,voteCount:0,byStatus:{},byType:{}}),re=h({noDb:!1,error:""}),ge=h("proposals"),B=h(""),Y=h(""),X=h(!1),Z=h(!1),se=h(!1),ie=h(!1),ue=h(!1),$=Pe({title:"",type:"feature_request",proposerDid:"",description:""}),S=Pe({voterDid:"",value:"yes",weight:1,reason:""}),p=h(null),ee=h([]),w=h(null),L=h(null),Oe=Le(()=>[{title:r("governance.cols.title"),key:"title"},{title:r("governance.cols.type"),key:"type",width:"130px"},{title:r("governance.cols.status"),key:"status",width:"100px"},{title:r("governance.cols.tally"),key:"tally",width:"180px"},{title:r("governance.cols.impact"),key:"impact",width:"100px"},{title:r("governance.cols.createdAt"),key:"createdAt",width:"160px"},{title:r("governance.cols.action"),key:"action",width:"320px"}]),je=Le(()=>{let e=ye.value;return B.value&&(e=e.filter(o=>o.status===B.value)),Y.value&&(e=e.filter(o=>o.type===Y.value)),e});function te(e){const o=`governance.statusLabels.${e}`,c=r(o);return c===o?e:c}function ce(e){return{draft:"default",active:"processing",passed:"green",rejected:"red",expired:"default"}[e]||"default"}function Te(e){return{draft:"#888",active:"#1677ff",passed:"#52c41a",rejected:"#ff4d4f",expired:"#888"}[e]||"#888"}function q(e){const o=`governance.typeLabels.${e}`,c=r(o);return c===o?e:c}function G(e){return{parameter_change:"cyan",feature_request:"blue",policy_update:"purple",budget_allocation:"gold"}[e]||"default"}function Fe(e){return{parameter_change:"#13c2c2",feature_request:"#1677ff",policy_update:"#722ed1",budget_allocation:"#faad14"}[e]||"#888"}function de(e){const o=`governance.impactLabels.${e}`,c=r(o);return c===o?e:c}function be(e){return{low:"default",medium:"blue",high:"orange",critical:"red"}[e]||"default"}function Ne(e){return{low:"#888",medium:"#1677ff",high:"#faad14",critical:"#ff4d4f"}[e]||"#888"}function Ee(e){const o=`governance.voteLabels.${e}`,c=r(o);return c===o?e:c}function Ue(e){return{yes:"green",no:"red",abstain:"default"}[e]||"default"}function Ie(e){if(!e)return"—";const o=`governance.effortLabels.${e}`,c=r(o);return c===o?e:c}function Me(e){if(!e)return"—";const o=`governance.sentimentLabels.${e}`,c=r(o);return c===o?e:c}function Re(e){const o=e.voteYes+e.voteNo;return o?Math.round(e.voteYes/o*100):0}function _e(e,o){return o?Math.round(e/o*100):0}async function J(){D.value=!0,re.value={noDb:!1,error:""};try{const[e,o,c]=await Promise.all([l.execute("governance types --json",8e3).catch(()=>({output:""})),l.execute("governance list --json",1e4).catch(()=>({output:""})),l.execute("governance stats --json",8e3).catch(()=>({output:""}))]),O=[o,c].map(K=>R(K.output)).find(K=>K.noDb);O&&(re.value=O),me.value=bt(e.output),ye.value=kt(o.output),A.value=At(c.output)}catch(e){g.error(r("governance.msg.loadFailed")+": "+(e?.message||e))}finally{D.value=!1}}async function Ve(){if(!$.title.trim()){g.warning(r("governance.msg.titleEmpty"));return}ne.value=!0;try{const e=[`governance create "${$.title.trim().replace(/"/g,'\\"')}"`];e.push(`-t ${$.type}`),$.proposerDid.trim()&&e.push(`-p "${$.proposerDid.trim().replace(/"/g,'\\"')}"`),$.description.trim()&&e.push(`-d "${$.description.trim().replace(/"/g,'\\"')}"`),e.push("--json");const{output:o}=await l.execute(e.join(" "),1e4);if(R(o).noDb){g.error(r("governance.msg.needCcInit"));return}if(!/"id"/.test(o)){g.error(r("governance.msg.createFailed")+": "+o.slice(0,120));return}g.success(r("governance.msg.createSuccess")),X.value=!1,$e(),await J()}catch(e){g.error(r("governance.msg.createFailed")+": "+(e?.message||e))}finally{ne.value=!1}}async function Be(e){await ke(`governance activate ${e.id} --json`,r("governance.msg.activated"))}async function Ye(e){await ke(`governance close ${e.id} --json`,r("governance.msg.closed"))}async function ke(e,o){try{const{output:c}=await l.execute(e,1e4);if(R(c).noDb){g.error(r("governance.msg.needCcInit"));return}if(!/"id"|"proposalId"|"passed"/.test(c)){g.error(r("governance.msg.actionFailed")+": "+c.slice(0,120));return}g.success(o),await J()}catch(c){g.error(r("governance.msg.actionFailed")+": "+(c?.message||c))}}function qe(e){p.value=e,S.voterDid="",S.value="yes",S.weight=1,S.reason="",Z.value=!0}async function Ge(){if(p.value){if(!S.voterDid.trim()){g.warning(r("governance.msg.voterEmpty"));return}le.value=!0;try{const e=[`governance vote ${p.value.id}`,`"${S.voterDid.trim().replace(/"/g,'\\"')}"`,S.value,`-w ${S.weight}`];S.reason.trim()&&e.push(`-r "${S.reason.trim().replace(/"/g,'\\"')}"`),e.push("--json");const{output:o}=await l.execute(e.join(" "),8e3);if(R(o).noDb){g.error(r("governance.msg.needCcInit"));return}if(!/"id"/.test(o)){g.error(r("governance.msg.voteFailed")+": "+o.slice(0,120));return}g.success(r("governance.msg.voteSuccess")),Z.value=!1,await J()}catch(e){g.error(r("governance.msg.voteFailed")+": "+(e?.message||e))}finally{le.value=!1}}}async function Je(e){p.value=e,ee.value=[],se.value=!0;try{const{output:o}=await l.execute(`governance votes ${e.id} --json`,8e3);ee.value=ht(o)}catch{}}async function Ke(e){p.value=e,w.value=null;try{const{output:o}=await l.execute(`governance analyze ${e.id} --json`,8e3);if(R(o).noDb){g.error(r("governance.msg.needCcInit"));return}const O=St(o);if(!O){g.error(r("governance.msg.analyzeFailed")+": "+o.slice(0,120));return}w.value=O,ie.value=!0}catch(o){g.error(r("governance.msg.analyzeFailed")+": "+(o?.message||o))}}async function He(e){p.value=e,L.value=null;try{const{output:o}=await l.execute(`governance predict ${e.id} --json`,8e3);if(R(o).noDb){g.error(r("governance.msg.needCcInit"));return}const O=zt(o);if(!O){g.error(r("governance.msg.predictFailed")+": "+o.slice(0,120));return}L.value=O,ue.value=!0}catch(o){g.error(r("governance.msg.predictFailed")+": "+(o?.message||o))}}function $e(){$.title="",$.type="feature_request",$.proposerDid="",$.description=""}return ft(J),(e,o)=>{const c=f("a-button"),O=f("a-space"),K=f("a-alert"),N=f("a-statistic"),j=f("a-card"),T=f("a-col"),ae=f("a-row"),z=f("a-tag"),U=f("a-radio-button"),pe=f("a-radio-group"),M=f("a-progress"),Qe=f("a-popconfirm"),We=f("a-table"),he=f("a-tab-pane"),Xe=f("a-tabs"),ve=f("a-input"),E=f("a-form-item"),Ze=f("a-select-option"),et=f("a-select"),Se=f("a-textarea"),ze=f("a-form"),H=f("a-modal"),tt=f("a-input-number"),C=f("a-descriptions-item"),Ce=f("a-descriptions"),at=f("a-empty"),Ae=f("a-list-item"),xe=f("a-list");return u(),m("div",null,[v("div",xt,[v("div",null,[v("h2",wt,s(e.$t("governance.title")),1),v("p",Lt,s(e.$t("governance.subtitle")),1)]),t(O,null,{default:a(()=>[t(c,{loading:D.value,onClick:J},{icon:a(()=>[t(k(st))]),default:a(()=>[d(" "+s(e.$t("governance.refresh")),1)]),_:1},8,["loading"]),t(c,{type:"primary",onClick:o[0]||(o[0]=n=>X.value=!0)},{icon:a(()=>[t(k(it))]),default:a(()=>[d(" "+s(e.$t("governance.create")),1)]),_:1})]),_:1})]),re.value.noDb?(u(),_(K,{key:0,type:"info","show-icon":"",message:e.$t("governance.noDb.message"),description:e.$t("governance.noDb.description"),style:{"margin-bottom":"16px"}},null,8,["message","description"])):b("",!0),t(ae,{gutter:[16,16],style:{"margin-bottom":"20px"}},{default:a(()=>[t(T,{xs:12,sm:8,lg:5},{default:a(()=>[t(j,{style:{background:"var(--bg-card)","border-color":"var(--border-color)"}},{default:a(()=>[t(N,{title:e.$t("governance.stats.total"),value:A.value.proposalCount,"value-style":{color:"#1677ff",fontSize:"20px"}},{prefix:a(()=>[t(k(we))]),_:1},8,["title","value"])]),_:1})]),_:1}),t(T,{xs:12,sm:8,lg:5},{default:a(()=>[t(j,{style:{background:"var(--bg-card)","border-color":"var(--border-color)"}},{default:a(()=>[t(N,{title:e.$t("governance.stats.active"),value:A.value.byStatus.active||0,"value-style":{color:(A.value.byStatus.active||0)>0?"#1677ff":"#888",fontSize:"20px"}},{prefix:a(()=>[t(k(ut))]),_:1},8,["title","value","value-style"])]),_:1})]),_:1}),t(T,{xs:12,sm:8,lg:5},{default:a(()=>[t(j,{style:{background:"var(--bg-card)","border-color":"var(--border-color)"}},{default:a(()=>[t(N,{title:e.$t("governance.stats.passed"),value:A.value.byStatus.passed||0,"value-style":{color:"#52c41a",fontSize:"20px"}},{prefix:a(()=>[t(k(ct))]),_:1},8,["title","value"])]),_:1})]),_:1}),t(T,{xs:12,sm:8,lg:5},{default:a(()=>[t(j,{style:{background:"var(--bg-card)","border-color":"var(--border-color)"}},{default:a(()=>[t(N,{title:e.$t("governance.stats.rejected"),value:A.value.byStatus.rejected||0,"value-style":{color:"#ff4d4f",fontSize:"20px"}},{prefix:a(()=>[t(k(dt))]),_:1},8,["title","value"])]),_:1})]),_:1}),t(T,{xs:24,sm:8,lg:4},{default:a(()=>[t(j,{style:{background:"var(--bg-card)","border-color":"var(--border-color)"}},{default:a(()=>[t(N,{title:e.$t("governance.stats.votes"),value:A.value.voteCount,"value-style":{color:"#722ed1",fontSize:"20px"}},{prefix:a(()=>[t(k(pt))]),_:1},8,["title","value"])]),_:1})]),_:1})]),_:1}),t(j,{title:e.$t("governance.typesCard"),size:"small",style:{background:"var(--bg-card)","border-color":"var(--border-color)","margin-bottom":"20px"},"body-style":{padding:"12px 16px"}},{default:a(()=>[t(ae,{gutter:[12,12]},{default:a(()=>[(u(!0),m(F,null,I(me.value,n=>(u(),_(T,{key:n.id,xs:12,sm:12,lg:6},{default:a(()=>[v("div",{class:"type-pill",style:yt({borderLeftColor:G(n.id)})},[v("div",Pt,[t(z,{color:G(n.id),style:{"font-family":"monospace"}},{default:a(()=>[d(s(n.id),1)]),_:2},1032,["color"]),v("span",Dt,s(A.value.byType[n.id]||0),1)]),v("div",Ot,s(n.name),1),v("div",jt,s(n.description),1)],4)]),_:2},1024))),128))]),_:1})]),_:1},8,["title"]),t(Xe,{activeKey:ge.value,"onUpdate:activeKey":o[3]||(o[3]=n=>ge.value=n),class:"governance-tabs"},{default:a(()=>[t(he,{key:"proposals",tab:e.$t("governance.tabs.proposals")},{default:a(()=>[v("div",Tt,[t(pe,{value:B.value,"onUpdate:value":o[1]||(o[1]=n=>B.value=n),size:"small","button-style":"solid"},{default:a(()=>[t(U,{value:""},{default:a(()=>[d(s(e.$t("governance.filter.allStatuses")),1)]),_:1}),(u(!0),m(F,null,I(k(fe),n=>(u(),_(U,{key:n,value:n},{default:a(()=>[d(s(te(n)),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value"]),t(pe,{value:Y.value,"onUpdate:value":o[2]||(o[2]=n=>Y.value=n),size:"small"},{default:a(()=>[t(U,{value:""},{default:a(()=>[d(s(e.$t("governance.filter.allTypes")),1)]),_:1}),(u(!0),m(F,null,I(k(oe),n=>(u(),_(U,{key:n,value:n},{default:a(()=>[d(s(q(n)),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value"])]),t(We,{columns:Oe.value,"data-source":je.value,pagination:{pageSize:20,showTotal:n=>e.$t("governance.table.totalSuffix",{n})},size:"small",loading:D.value,style:{background:"var(--bg-card)"}},{bodyCell:a(({column:n,record:y})=>[n.key==="title"?(u(),m(F,{key:0},[v("span",Ft,s(y.title||e.$t("governance.table.unnamed")),1),v("div",Nt,s(y.id.slice(0,16)),1)],64)):b("",!0),n.key==="type"?(u(),_(z,{key:1,color:G(y.type),style:{"font-family":"monospace"}},{default:a(()=>[d(s(q(y.type)),1)]),_:2},1032,["color"])):b("",!0),n.key==="status"?(u(),_(z,{key:2,color:ce(y.status)},{default:a(()=>[d(s(te(y.status)),1)]),_:2},1032,["color"])):b("",!0),n.key==="tally"?(u(),m(F,{key:3},[v("span",Et,[v("span",Ut,"+"+s(y.voteYes),1),o[17]||(o[17]=d(" / ",-1)),v("span",It,"-"+s(y.voteNo),1),o[18]||(o[18]=d(" / ",-1)),v("span",Mt,"~"+s(y.voteAbstain),1)]),y.voteYes+y.voteNo>0?(u(),_(M,{key:0,percent:Re(y),size:"small","show-info":!1,"stroke-color":y.voteYes>=y.voteNo?"#52c41a":"#ff4d4f",style:{"margin-top":"4px"}},null,8,["percent","stroke-color"])):b("",!0)],64)):b("",!0),n.key==="impact"?(u(),m(F,{key:4},[y.impactLevel?(u(),_(z,{key:0,color:be(y.impactLevel)},{default:a(()=>[d(s(de(y.impactLevel)),1)]),_:2},1032,["color"])):(u(),m("span",Rt,"—"))],64)):b("",!0),n.key==="createdAt"?(u(),m("span",Vt,s(k(W)(y.createdAt)),1)):b("",!0),n.key==="action"?(u(),m(F,{key:6},[t(c,{size:"small",type:"link",onClick:Q=>Je(y)},{default:a(()=>[d(s(e.$t("governance.actions.details")),1)]),_:1},8,["onClick"]),y.status==="draft"?(u(),_(c,{key:0,size:"small",type:"link",onClick:Q=>Be(y)},{default:a(()=>[d(s(e.$t("governance.actions.activate")),1)]),_:1},8,["onClick"])):b("",!0),y.status==="active"?(u(),_(c,{key:1,size:"small",type:"link",style:{color:"#52c41a"},onClick:Q=>qe(y)},{default:a(()=>[d(s(e.$t("governance.actions.vote")),1)]),_:1},8,["onClick"])):b("",!0),y.status==="active"?(u(),_(Qe,{key:2,title:e.$t("governance.closeConfirm.title"),"ok-text":e.$t("governance.closeConfirm.ok"),"cancel-text":e.$t("governance.closeConfirm.cancel"),onConfirm:Q=>Ye(y)},{default:a(()=>[t(c,{size:"small",type:"link",danger:""},{default:a(()=>[d(s(e.$t("governance.actions.close")),1)]),_:1})]),_:1},8,["title","ok-text","cancel-text","onConfirm"])):b("",!0),t(c,{size:"small",type:"link",onClick:Q=>Ke(y)},{default:a(()=>[d(s(e.$t("governance.actions.analyze")),1)]),_:1},8,["onClick"]),t(c,{size:"small",type:"link",onClick:Q=>He(y)},{default:a(()=>[d(s(e.$t("governance.actions.predict")),1)]),_:1},8,["onClick"])],64)):b("",!0)]),emptyText:a(()=>[v("div",Bt,[t(k(we),{style:{"font-size":"36px","margin-bottom":"10px",display:"block"}}),d(" "+s(B.value||Y.value?e.$t("governance.table.emptyFiltered"):e.$t("governance.table.empty")),1)])]),_:1},8,["columns","data-source","pagination","loading"])]),_:1},8,["tab"]),t(he,{key:"breakdown",tab:e.$t("governance.tabs.breakdown")},{default:a(()=>[t(ae,{gutter:[16,16]},{default:a(()=>[t(T,{xs:24,lg:12},{default:a(()=>[t(j,{title:e.$t("governance.breakdown.byStatus"),size:"small",style:{background:"var(--bg-card)","border-color":"var(--border-color)"}},{default:a(()=>[(u(!0),m(F,null,I(k(fe),n=>(u(),m("div",{key:n,class:"bd-row"},[t(z,{color:ce(n),style:{"min-width":"60px","text-align":"center"}},{default:a(()=>[d(s(te(n)),1)]),_:2},1032,["color"]),t(M,{percent:_e(A.value.byStatus[n]||0,A.value.proposalCount),"stroke-color":Te(n),format:()=>`${A.value.byStatus[n]||0}`,size:"small",style:{flex:"1","margin-left":"12px"}},null,8,["percent","stroke-color","format"])]))),128))]),_:1},8,["title"])]),_:1}),t(T,{xs:24,lg:12},{default:a(()=>[t(j,{title:e.$t("governance.breakdown.byType"),size:"small",style:{background:"var(--bg-card)","border-color":"var(--border-color)"}},{default:a(()=>[(u(!0),m(F,null,I(k(oe),n=>(u(),m("div",{key:n,class:"bd-row"},[t(z,{color:G(n),style:{"min-width":"90px","text-align":"center"}},{default:a(()=>[d(s(q(n)),1)]),_:2},1032,["color"]),t(M,{percent:_e(A.value.byType[n]||0,A.value.proposalCount),"stroke-color":Fe(n),format:()=>`${A.value.byType[n]||0}`,size:"small",style:{flex:"1","margin-left":"12px"}},null,8,["percent","stroke-color","format"])]))),128))]),_:1},8,["title"])]),_:1})]),_:1})]),_:1},8,["tab"])]),_:1},8,["activeKey"]),t(H,{open:X.value,"onUpdate:open":o[8]||(o[8]=n=>X.value=n),title:e.$t("governance.create_modal.title"),"confirm-loading":ne.value,width:560,"ok-text":e.$t("governance.create_modal.ok"),"cancel-text":e.$t("governance.create_modal.cancel"),onOk:Ve,onCancel:$e},{default:a(()=>[t(ze,{"label-col":{span:5},"wrapper-col":{span:19},style:{"margin-top":"16px"}},{default:a(()=>[t(E,{label:e.$t("governance.create_modal.titleLabel"),required:""},{default:a(()=>[t(ve,{value:$.title,"onUpdate:value":o[4]||(o[4]=n=>$.title=n),placeholder:e.$t("governance.create_modal.titlePlaceholder")},null,8,["value","placeholder"])]),_:1},8,["label"]),t(E,{label:e.$t("governance.create_modal.typeLabel"),required:""},{default:a(()=>[t(et,{value:$.type,"onUpdate:value":o[5]||(o[5]=n=>$.type=n)},{default:a(()=>[(u(!0),m(F,null,I(k(oe),n=>(u(),_(Ze,{key:n,value:n},{default:a(()=>[d(s(q(n)),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value"])]),_:1},8,["label"]),t(E,{label:e.$t("governance.create_modal.proposerLabel")},{default:a(()=>[t(ve,{value:$.proposerDid,"onUpdate:value":o[6]||(o[6]=n=>$.proposerDid=n),placeholder:e.$t("governance.create_modal.proposerPlaceholder")},null,8,["value","placeholder"])]),_:1},8,["label"]),t(E,{label:e.$t("governance.create_modal.descLabel")},{default:a(()=>[t(Se,{value:$.description,"onUpdate:value":o[7]||(o[7]=n=>$.description=n),placeholder:e.$t("governance.create_modal.descPlaceholder"),"auto-size":{minRows:3,maxRows:8}},null,8,["value","placeholder"])]),_:1},8,["label"])]),_:1})]),_:1},8,["open","title","confirm-loading","ok-text","cancel-text"]),t(H,{open:Z.value,"onUpdate:open":o[13]||(o[13]=n=>Z.value=n),title:e.$t("governance.vote_modal.title",{title:p.value?.title||""}),"confirm-loading":le.value,width:540,"ok-text":e.$t("governance.vote_modal.ok"),"cancel-text":e.$t("governance.vote_modal.cancel"),onOk:Ge},{default:a(()=>[t(ze,{"label-col":{span:5},"wrapper-col":{span:19},style:{"margin-top":"16px"}},{default:a(()=>[t(E,{label:e.$t("governance.vote_modal.voterLabel"),required:""},{default:a(()=>[t(ve,{value:S.voterDid,"onUpdate:value":o[9]||(o[9]=n=>S.voterDid=n),placeholder:"did:key:..."},null,8,["value"])]),_:1},8,["label"]),t(E,{label:e.$t("governance.vote_modal.valueLabel"),required:""},{default:a(()=>[t(pe,{value:S.value,"onUpdate:value":o[10]||(o[10]=n=>S.value=n),"button-style":"solid"},{default:a(()=>[t(U,{value:"yes",style:{color:"#52c41a"}},{default:a(()=>[d(s(e.$t("governance.vote_modal.yes")),1)]),_:1}),t(U,{value:"no",style:{color:"#ff4d4f"}},{default:a(()=>[d(s(e.$t("governance.vote_modal.no")),1)]),_:1}),t(U,{value:"abstain"},{default:a(()=>[d(s(e.$t("governance.vote_modal.abstain")),1)]),_:1})]),_:1},8,["value"])]),_:1},8,["label"]),t(E,{label:e.$t("governance.vote_modal.weightLabel")},{default:a(()=>[t(tt,{value:S.weight,"onUpdate:value":o[11]||(o[11]=n=>S.weight=n),min:.1,step:.1,style:{width:"120px"}},null,8,["value"]),v("span",Yt,s(e.$t("governance.vote_modal.weightHint")),1)]),_:1},8,["label"]),t(E,{label:e.$t("governance.vote_modal.reasonLabel")},{default:a(()=>[t(Se,{value:S.reason,"onUpdate:value":o[12]||(o[12]=n=>S.reason=n),placeholder:e.$t("governance.vote_modal.reasonPlaceholder"),"auto-size":{minRows:2,maxRows:5}},null,8,["value","placeholder"])]),_:1},8,["label"])]),_:1})]),_:1},8,["open","title","confirm-loading","ok-text","cancel-text"]),t(H,{open:se.value,"onUpdate:open":o[14]||(o[14]=n=>se.value=n),title:e.$t("governance.details.title",{title:p.value?.title||""}),width:780,footer:null},{default:a(()=>[p.value?(u(),m("div",qt,[t(Ce,{column:2,size:"small",bordered:""},{default:a(()=>[t(C,{label:e.$t("governance.details.id"),span:2},{default:a(()=>[v("span",Gt,s(p.value.id),1)]),_:1},8,["label"]),t(C,{label:e.$t("governance.details.type")},{default:a(()=>[t(z,{color:G(p.value.type)},{default:a(()=>[d(s(q(p.value.type)),1)]),_:1},8,["color"])]),_:1},8,["label"]),t(C,{label:e.$t("governance.details.status")},{default:a(()=>[t(z,{color:ce(p.value.status)},{default:a(()=>[d(s(te(p.value.status)),1)]),_:1},8,["color"])]),_:1},8,["label"]),t(C,{label:e.$t("governance.details.proposer"),span:2},{default:a(()=>[p.value.proposerDid?(u(),m("span",Jt,s(p.value.proposerDid),1)):(u(),m("span",Kt,s(e.$t("governance.details.proposerUnset")),1))]),_:1},8,["label"]),t(C,{label:e.$t("governance.details.description"),span:2},{default:a(()=>[p.value.description?(u(),m("div",Ht,s(p.value.description),1)):(u(),m("span",Qt,"—"))]),_:1},8,["label"]),t(C,{label:e.$t("governance.details.tally"),span:2},{default:a(()=>[t(O,null,{default:a(()=>[t(z,{color:"green"},{default:a(()=>[d(s(e.$t("governance.details.tallyYes",{n:p.value.voteYes})),1)]),_:1}),t(z,{color:"red"},{default:a(()=>[d(s(e.$t("governance.details.tallyNo",{n:p.value.voteNo})),1)]),_:1}),t(z,null,{default:a(()=>[d(s(e.$t("governance.details.tallyAbstain",{n:p.value.voteAbstain})),1)]),_:1})]),_:1})]),_:1},8,["label"]),p.value.impactLevel?(u(),_(C,{key:0,label:e.$t("governance.details.impact")},{default:a(()=>[t(z,{color:be(p.value.impactLevel)},{default:a(()=>[d(s(de(p.value.impactLevel)),1)]),_:1},8,["color"])]),_:1},8,["label"])):b("",!0),t(C,{label:e.$t("governance.details.createdAt")},{default:a(()=>[d(s(k(W)(p.value.createdAt)),1)]),_:1},8,["label"]),p.value.votingStartsAt?(u(),_(C,{key:1,label:e.$t("governance.details.votingStartsAt")},{default:a(()=>[d(s(k(W)(p.value.votingStartsAt)),1)]),_:1},8,["label"])):b("",!0),p.value.votingEndsAt?(u(),_(C,{key:2,label:e.$t("governance.details.votingEndsAt")},{default:a(()=>[d(s(k(W)(p.value.votingEndsAt)),1)]),_:1},8,["label"])):b("",!0)]),_:1}),v("h4",Wt,s(e.$t("governance.details.votesHeader")),1),ee.value.length?(u(),_(xe,{key:1,size:"small","data-source":ee.value,pagination:{pageSize:8}},{renderItem:a(({item:n})=>[t(Ae,null,{default:a(()=>[t(z,{color:Ue(n.vote),style:{"min-width":"50px","text-align":"center"}},{default:a(()=>[d(s(Ee(n.vote)),1)]),_:2},1032,["color"]),v("span",Xt,"w="+s(n.weight),1),v("span",Zt,s(n.voterDid),1),n.reason?(u(),m("span",ea,"— "+s(n.reason),1)):b("",!0),v("span",ta,s(k(W)(n.createdAt)),1)]),_:2},1024)]),_:1},8,["data-source"])):(u(),_(at,{key:0,description:e.$t("governance.details.votesEmpty"),image:k(x)},null,8,["description","image"]))])):b("",!0)]),_:1},8,["open","title"]),t(H,{open:ie.value,"onUpdate:open":o[15]||(o[15]=n=>ie.value=n),title:e.$t("governance.analysis.title",{title:p.value?.title||""}),width:640,footer:null},{default:a(()=>[w.value?(u(),m("div",aa,[t(ae,{gutter:[12,12],style:{"margin-bottom":"16px"}},{default:a(()=>[t(T,{span:8},{default:a(()=>[t(N,{title:e.$t("governance.analysis.impactLevel"),value:de(w.value.impactLevel),"value-style":{color:Ne(w.value.impactLevel),fontSize:"16px"}},null,8,["title","value","value-style"])]),_:1}),t(T,{span:8},{default:a(()=>[t(N,{title:e.$t("governance.analysis.effort"),value:Ie(w.value.estimatedEffort),"value-style":{fontSize:"16px"}},null,8,["title","value"])]),_:1}),t(T,{span:8},{default:a(()=>[t(N,{title:e.$t("governance.analysis.sentiment"),value:Me(w.value.communitySentiment),"value-style":{fontSize:"16px"}},null,8,["title","value"])]),_:1})]),_:1}),t(j,{title:e.$t("governance.analysis.riskBenefit"),size:"small",style:{"margin-bottom":"12px"}},{default:a(()=>[v("div",oa,[v("span",na,s(e.$t("governance.analysis.riskScore")),1),t(M,{percent:Math.round(w.value.riskScore*100),"stroke-color":"#ff4d4f"},null,8,["percent"])]),v("div",null,[v("span",la,s(e.$t("governance.analysis.benefitScore")),1),t(M,{percent:Math.round(w.value.benefitScore*100),"stroke-color":"#52c41a"},null,8,["percent"])])]),_:1},8,["title"]),w.value.affectedComponents.length?(u(),_(j,{key:0,title:e.$t("governance.analysis.components"),size:"small",style:{"margin-bottom":"12px"}},{default:a(()=>[(u(!0),m(F,null,I(w.value.affectedComponents,n=>(u(),_(z,{key:n,color:"blue"},{default:a(()=>[d(s(n),1)]),_:2},1024))),128))]),_:1},8,["title"])):b("",!0),w.value.recommendations.length?(u(),_(j,{key:1,title:e.$t("governance.analysis.recommendations"),size:"small"},{default:a(()=>[t(xe,{size:"small","data-source":w.value.recommendations},{renderItem:a(({item:n})=>[t(Ae,null,{default:a(()=>[t(k(vt),{style:{color:"#faad14","margin-right":"8px"}}),d(" "+s(n),1)]),_:2},1024)]),_:1},8,["data-source"])]),_:1},8,["title"])):b("",!0)])):b("",!0)]),_:1},8,["open","title"]),t(H,{open:ue.value,"onUpdate:open":o[16]||(o[16]=n=>ue.value=n),title:e.$t("governance.prediction.title",{title:p.value?.title||""}),width:540,footer:null},{default:a(()=>[L.value?(u(),m("div",ra,[v("div",sa,[t(z,{color:L.value.predictedOutcome==="pass"?"green":"red",style:{"font-size":"16px",padding:"6px 14px"}},{default:a(()=>[d(s(L.value.predictedOutcome==="pass"?e.$t("governance.prediction.outcomePass"):e.$t("governance.prediction.outcomeReject")),1)]),_:1},8,["color"])]),t(Ce,{column:2,size:"small",bordered:""},{default:a(()=>[t(C,{label:e.$t("governance.prediction.confidence"),span:2},{default:a(()=>[t(M,{percent:Math.round(L.value.confidence*100),"stroke-color":L.value.confidence>=.6?"#52c41a":"#faad14"},null,8,["percent","stroke-color"])]),_:1},8,["label"]),t(C,{label:e.$t("governance.prediction.basedOn")},{default:a(()=>[t(z,{color:L.value.basedOn==="votes"?"blue":"orange"},{default:a(()=>[d(s(L.value.basedOn==="votes"?e.$t("governance.prediction.basedOnVotes"):e.$t("governance.prediction.basedOnHeuristic")),1)]),_:1},8,["color"])]),_:1},8,["label"]),t(C,{label:e.$t("governance.prediction.sampleSize")},{default:a(()=>[d(s(L.value.sampleSize),1)]),_:1},8,["label"]),t(C,{label:e.$t("governance.prediction.yesProb")},{default:a(()=>[v("span",ia,s((L.value.yesProb*100).toFixed(1))+"%",1)]),_:1},8,["label"]),t(C,{label:e.$t("governance.prediction.noProb")},{default:a(()=>[v("span",ua,s((L.value.noProb*100).toFixed(1))+"%",1)]),_:1},8,["label"]),t(C,{label:e.$t("governance.prediction.abstainProb"),span:2},{default:a(()=>[v("span",ca,s((L.value.abstainProb*100).toFixed(1))+"%",1)]),_:1},8,["label"])]),_:1})])):b("",!0)]),_:1},8,["open","title"])])}}},ma=ot(da,[["__scopeId","data-v-6b8682f4"]]);export{ma as default};
@@ -0,0 +1 @@
1
+ import{_ as He,b as Ee,u as Je,d as y}from"./index-B2f4ltyM.js";import{s as Ke}from"./community-parser-CO25nZFt.js";import{R as Ve,al as Ge,n as Z,h as ee,f as We,u as Qe}from"./icons-zXb7lDZs.js";import{o as Ye,M as m,R as z,P as u,u as o,c as a,N as n,Q as x,S as g,K as v,r as h,L as c,O as p,F as C,_ as I,$ as Xe,f as K,a as ge}from"./vendor-B6ToihkA.js";function te(l){const e=Ke(l);if(!e)return null;try{return JSON.parse(e)}catch{}const r=e.match(/\{[\s\S]*\}|\[[\s\S]*\]/);if(!r)return null;try{return JSON.parse(r[0])}catch{return null}}const ve=Object.freeze(["online","offline","busy","degraded"]),Ze=Object.freeze(["queued","dispatched","running","complete","failed"]),_e=Object.freeze(["standard","encrypted","federated"]);function w(l,e=0){return typeof l=="number"&&Number.isFinite(l)?l:e}function et(l){if(Array.isArray(l))return l.filter(e=>typeof e=="string");if(typeof l=="string")try{const e=JSON.parse(l);if(Array.isArray(e))return e.filter(r=>typeof r=="string")}catch{}return[]}function tt(l,e=0){if(!l||typeof l!="object")return null;const r=l.id||"";return r?{key:r,id:r,nodeId:l.nodeId??l.node_id??"",endpoint:l.endpoint||"",capabilities:et(l.capabilities),gpuMemoryMb:w(l.gpuMemoryMb??l.gpu_memory_mb,0),status:String(l.status||"offline").toLowerCase(),lastHeartbeat:l.lastHeartbeat??l.last_heartbeat??null,taskCount:w(l.taskCount??l.task_count,0),createdAt:l.createdAt??l.created_at??null,_idx:e}:null}function nt(l){const e=te(l);return Array.isArray(e)?e.map(tt).filter(Boolean):[]}function at(l,e=0){if(!l||typeof l!="object")return null;const r=l.id||"";return r?{key:r,id:r,model:String(l.model||""),input:l.input??"",output:l.output??"",privacyMode:String(l.privacyMode??l.privacy_mode??"standard").toLowerCase(),priority:w(l.priority,5),assignedNode:l.assignedNode??l.assigned_node??null,status:String(l.status||"queued").toLowerCase(),durationMs:l.durationMs??l.duration_ms??null,createdAt:l.createdAt??l.created_at??null,completedAt:l.completedAt??l.completed_at??null,_idx:e}:null}function ot(l){const e=te(l);return Array.isArray(e)?e.map(at).filter(Boolean):[]}const st={nodes:{total:0,online:0,offline:0,busy:0},tasks:{total:0,queued:0,completed:0,failed:0,avgDurationMs:0}};function it(l){const e=JSON.parse(JSON.stringify(st)),r=te(l);return!r||typeof r!="object"||Array.isArray(r)||(r.nodes&&typeof r.nodes=="object"&&(e.nodes.total=w(r.nodes.total,0),e.nodes.online=w(r.nodes.online,0),e.nodes.offline=w(r.nodes.offline,0),e.nodes.busy=w(r.nodes.busy,0)),r.tasks&&typeof r.tasks=="object"&&(e.tasks.total=w(r.tasks.total,0),e.tasks.queued=w(r.tasks.queued,0),e.tasks.completed=w(r.tasks.completed,0),e.tasks.failed=w(r.tasks.failed,0),e.tasks.avgDurationMs=w(r.tasks.avgDurationMs??r.tasks.avg_duration_ms,0))),e}function ke(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 lt={style:{display:"flex","align-items":"center","justify-content":"space-between","margin-bottom":"24px"}},rt={class:"page-title"},ut={class:"page-sub"},ct={style:{color:"var(--text-secondary)","font-size":"12px","margin-left":"8px"}},dt={class:"filter-bar"},ft={style:{color:"var(--text-primary)","font-family":"monospace","font-weight":"500"}},pt={key:0,style:{color:"var(--text-secondary)","font-size":"11px","margin-top":"2px"}},mt={key:1,style:{color:"var(--text-muted)"}},yt={key:0,style:{color:"var(--text-secondary)","font-family":"monospace"}},gt={key:1,style:{color:"var(--text-muted)"}},vt={key:5,style:{color:"var(--text-secondary)","font-size":"11px"}},_t={style:{padding:"40px",color:"var(--text-muted)","text-align":"center"}},kt={class:"filter-bar"},bt={style:{color:"var(--text-primary)","font-family":"monospace","font-weight":"500"}},xt={key:0,style:{color:"var(--text-secondary)","font-size":"11px","margin-top":"2px"}},ht={key:0,style:{color:"var(--text-secondary)","font-family":"monospace","font-size":"11px"}},Ct={key:1,style:{color:"var(--text-muted)"}},St={key:0,style:{"font-family":"monospace",color:"var(--text-secondary)","font-size":"12px"}},wt={key:1,style:{color:"var(--text-muted)"}},zt={key:6,style:{color:"var(--text-secondary)","font-size":"11px"}},Mt={style:{padding:"40px",color:"var(--text-muted)","text-align":"center"}},At={__name:"Inference",setup(l){const{t:e}=Ee(),r=Je(),$=h(!1),V=h(!1),G=h(!1),W=h(""),Q=h(""),R=h([]),ne=h([]),b=h({nodes:{total:0,online:0,offline:0,busy:0},tasks:{total:0,queued:0,completed:0,failed:0,avgDurationMs:0}}),Y=h("nodes"),j=h(""),L=h(""),U=h(""),P=h(!1),B=h(!1),_=ge({nodeId:"",endpoint:"",capabilities:"",gpuMemory:null}),k=ge({model:"",input:"",priority:5,mode:"standard"}),be=K(()=>[{title:e("inference.nodeColumns.nodeId"),key:"nodeId"},{title:e("inference.nodeColumns.capabilities"),key:"capabilities",width:"220px"},{title:e("inference.nodeColumns.gpu"),key:"gpu",width:"100px"},{title:e("inference.nodeColumns.status"),key:"status",width:"100px"},{title:e("inference.nodeColumns.taskCount"),key:"taskCount",width:"90px"},{title:e("inference.nodeColumns.lastHeartbeat"),key:"lastHeartbeat",width:"160px"},{title:e("inference.nodeColumns.action"),key:"action",width:"210px"}]),xe=K(()=>[{title:e("inference.taskColumns.model"),key:"model"},{title:e("inference.taskColumns.privacyMode"),key:"privacyMode",width:"110px"},{title:e("inference.taskColumns.priority"),key:"priority",width:"80px"},{title:e("inference.taskColumns.assignedNode"),key:"assignedNode",width:"140px"},{title:e("inference.taskColumns.status"),key:"status",width:"110px"},{title:e("inference.taskColumns.duration"),key:"duration",width:"110px"},{title:e("inference.taskColumns.createdAt"),key:"createdAt",width:"160px"},{title:e("inference.taskColumns.action"),key:"action",width:"140px"}]),he=K(()=>j.value?R.value.filter(s=>s.status===j.value):R.value),Ce=K(()=>{let s=ne.value;return L.value&&(s=s.filter(t=>t.status===L.value)),U.value&&(s=s.filter(t=>t.privacyMode===U.value)),s});function H(s){const t=`inference.nodeStatus.${s}`,f=e(t);return f===t?s:f}function Se(s){return{online:"green",offline:"default",busy:"orange",degraded:"red"}[s]||"default"}function ae(s){const t=`inference.taskStatus.${s}`,f=e(t);return f===t?s:f}function we(s){return{queued:"default",dispatched:"processing",running:"cyan",complete:"green",failed:"red"}[s]||"default"}function X(s){const t=`inference.privacy.${s}`,f=e(t);return f===t?s:f}function ze(s){return{standard:"default",encrypted:"purple",federated:"cyan"}[s]||"default"}function Me(s){return s>=8?"#ff4d4f":s>=5?"#faad14":"#52c41a"}function Ae(s){const t=R.value.find(f=>f.id===s);return t?t.nodeId:s.slice(0,8)}function oe(s,t){return s?s.length>t?s.slice(0,t)+"...":s:""}function Ne(s){return s>=1024?`${(s/1024).toFixed(1)} GB`:`${s} MB`}function Fe(s){return s.status==="queued"||s.status==="dispatched"||s.status==="running"}function Oe(s){return s.status!=="complete"&&s.status!=="failed"}function Te({key:s}){s==="register"?P.value=!0:s==="submit"&&(B.value=!0)}async function M(){$.value=!0;try{const[s,t,f]=await Promise.all([r.execute("inference nodes --limit 200 --json",1e4).catch(()=>({output:""})),r.execute("inference tasks --limit 200 --json",1e4).catch(()=>({output:""})),r.execute("inference stats --json",8e3).catch(()=>({output:""}))]);R.value=nt(s.output),ne.value=ot(t.output),b.value=it(f.output)}catch(s){y.error(e("inference.messages.loadFailed",{err:s?.message||s}))}finally{$.value=!1}}async function Ie(){const s=_.nodeId.trim();if(!s){y.warning(e("inference.messages.nodeIdRequired"));return}V.value=!0;try{const t=[`inference register "${s.replace(/"/g,'\\"')}"`];if(_.endpoint.trim()&&t.push(`--endpoint "${_.endpoint.trim().replace(/"/g,'\\"')}"`),_.capabilities.trim()){const O=_.capabilities.split(/[,\s]+/).filter(Boolean).join(",");O&&t.push(`--capabilities "${O}"`)}_.gpuMemory!=null&&t.push(`--gpu ${_.gpuMemory}`),t.push("--json");const{output:f}=await r.execute(t.join(" "),1e4);if(/error|failed|失败/i.test(f)&&!/"nodeId"/.test(f)){y.error(e("inference.messages.registerFailed",{err:f.slice(0,120)}));return}y.success(e("inference.messages.registerOk")),P.value=!1,se(),await M()}catch(t){y.error(e("inference.messages.registerFailed",{err:t?.message||t}))}finally{V.value=!1}}async function $e(){const s=k.model.trim();if(!s){y.warning(e("inference.messages.modelRequired"));return}G.value=!0;try{const t=[`inference submit "${s.replace(/"/g,'\\"')}"`];k.input.trim()&&t.push(`--input "${k.input.trim().replace(/"/g,'\\"')}"`),k.priority!=null&&t.push(`--priority ${k.priority}`),t.push(`--mode ${k.mode}`),t.push("--json");const{output:f}=await r.execute(t.join(" "),12e3);if(/error|failed|失败/i.test(f)&&!/"taskId"/.test(f)){y.error(e("inference.messages.submitFailed",{err:f.slice(0,120)}));return}y.success(e("inference.messages.submitOk")),B.value=!1,ie(),Y.value="tasks",await M()}catch(t){y.error(e("inference.messages.submitFailed",{err:t?.message||t}))}finally{G.value=!1}}async function je(s){W.value=s.id;try{const{output:t}=await r.execute(`inference heartbeat ${s.id} --json`,8e3);if(/error/i.test(t)&&!/"updated"/.test(t)){y.error(e("inference.messages.heartbeatFailed",{err:t.slice(0,120)}));return}y.success(e("inference.messages.heartbeatOk")),await M()}catch(t){y.error(e("inference.messages.heartbeatFailed",{err:t?.message||t}))}finally{W.value=""}}async function Le(s,t){if(t!==s.status)try{const{output:f}=await r.execute(`inference node-status ${s.id} ${t} --json`,8e3);if(/error|invalid/i.test(f)&&!/"updated"/.test(f)){y.error(e("inference.messages.statusFailed",{err:f.slice(0,120)}));return}y.success(e("inference.messages.statusOk",{status:H(t)})),await M()}catch(f){y.error(e("inference.messages.statusFailed",{err:f?.message||f}))}}async function Ue(s){try{const{output:t}=await r.execute(`inference unregister ${s.id} --json`,8e3);if(/error/i.test(t)&&!/"removed"/.test(t)){y.error(e("inference.messages.unregisterFailed",{err:t.slice(0,120)}));return}y.success(e("inference.messages.unregisterOk")),await M()}catch(t){y.error(e("inference.messages.unregisterFailed",{err:t?.message||t}))}}async function qe(s){Q.value=s.id;try{const{output:t}=await r.execute(`inference complete ${s.id} --json`,1e4);if(/error|failed/i.test(t)&&!/"completed"/.test(t)){y.error(e("inference.messages.completeFailed",{err:t.slice(0,120)}));return}y.success(e("inference.messages.completeOk")),await M()}catch(t){y.error(e("inference.messages.completeFailed",{err:t?.message||t}))}finally{Q.value=""}}async function De(s){try{const{output:t}=await r.execute(`inference fail-task ${s.id} --json`,8e3);if(/error/i.test(t)&&!/"failed"/.test(t)){y.error(e("inference.messages.failFailed",{err:t.slice(0,120)}));return}y.success(e("inference.messages.failOk")),await M()}catch(t){y.error(e("inference.messages.failFailed",{err:t?.message||t}))}}function se(){_.nodeId="",_.endpoint="",_.capabilities="",_.gpuMemory=null}function ie(){k.model="",k.input="",k.priority=5,k.mode="standard"}return Ye(M),(s,t)=>{const f=v("a-button"),O=v("a-menu-item"),le=v("a-menu"),re=v("a-dropdown"),ue=v("a-space"),q=v("a-statistic"),T=v("a-card"),D=v("a-col"),Re=v("a-row"),A=v("a-tag"),F=v("a-radio-button"),E=v("a-radio-group"),ce=v("a-popconfirm"),de=v("a-table"),fe=v("a-tab-pane"),Pe=v("a-tabs"),J=v("a-input"),N=v("a-form-item"),pe=v("a-input-number"),me=v("a-form"),ye=v("a-modal"),Be=v("a-textarea");return c(),m("div",null,[z("div",lt,[z("div",null,[z("h2",rt,u(o(e)("inference.title")),1),z("p",ut,u(o(e)("inference.subtitle")),1)]),a(ue,null,{default:n(()=>[a(f,{loading:$.value,onClick:M},{icon:n(()=>[a(o(Ve))]),default:n(()=>[p(" "+u(o(e)("inference.refresh")),1)]),_:1},8,["loading"]),a(re,{trigger:["click"]},{overlay:n(()=>[a(le,{onClick:Te},{default:n(()=>[a(O,{key:"register"},{default:n(()=>[a(o(Z)),p(" "+u(o(e)("inference.actions.register")),1)]),_:1}),a(O,{key:"submit"},{default:n(()=>[a(o(ee)),p(" "+u(o(e)("inference.actions.submit")),1)]),_:1})]),_:1})]),default:n(()=>[a(f,{type:"primary"},{icon:n(()=>[a(o(Ge))]),default:n(()=>[p(" "+u(o(e)("inference.actionDropdown")),1)]),_:1})]),_:1})]),_:1})]),a(Re,{gutter:[16,16],style:{"margin-bottom":"20px"}},{default:n(()=>[a(D,{xs:12,sm:8,lg:5},{default:n(()=>[a(T,{style:{background:"var(--bg-card)","border-color":"var(--border-color)"}},{default:n(()=>[a(q,{title:o(e)("inference.stats.totalNodes"),value:b.value.nodes.total,"value-style":{color:"#1677ff",fontSize:"20px"}},{prefix:n(()=>[a(o(Z))]),_:1},8,["title","value"])]),_:1})]),_:1}),a(D,{xs:12,sm:8,lg:5},{default:n(()=>[a(T,{style:{background:"var(--bg-card)","border-color":"var(--border-color)"}},{default:n(()=>[a(q,{title:o(e)("inference.stats.onlineNodes"),value:b.value.nodes.online,"value-style":{color:b.value.nodes.online>0?"#52c41a":"#888",fontSize:"20px"}},{prefix:n(()=>[a(o(We))]),_:1},8,["title","value","value-style"])]),_:1})]),_:1}),a(D,{xs:12,sm:8,lg:5},{default:n(()=>[a(T,{style:{background:"var(--bg-card)","border-color":"var(--border-color)"}},{default:n(()=>[a(q,{title:o(e)("inference.stats.totalTasks"),value:b.value.tasks.total,"value-style":{color:"#722ed1",fontSize:"20px"}},{prefix:n(()=>[a(o(ee))]),_:1},8,["title","value"])]),_:1})]),_:1}),a(D,{xs:12,sm:8,lg:5},{default:n(()=>[a(T,{style:{background:"var(--bg-card)","border-color":"var(--border-color)"}},{default:n(()=>[a(q,{title:o(e)("inference.stats.queued"),value:b.value.tasks.queued,"value-style":{color:b.value.tasks.queued>0?"#faad14":"#52c41a",fontSize:"20px"}},{prefix:n(()=>[a(o(Qe))]),_:1},8,["title","value","value-style"])]),_:1})]),_:1}),a(D,{xs:24,sm:8,lg:4},{default:n(()=>[a(T,{style:{background:"var(--bg-card)","border-color":"var(--border-color)"}},{default:n(()=>[a(q,{title:o(e)("inference.stats.avgDuration"),value:b.value.tasks.avgDurationMs,suffix:"ms","value-style":{color:"#13c2c2",fontSize:"20px"}},null,8,["title","value"])]),_:1})]),_:1})]),_:1}),b.value.nodes.total>0?(c(),x(T,{key:0,title:o(e)("inference.breakdown.title"),size:"small",style:{background:"var(--bg-card)","border-color":"var(--border-color)","margin-bottom":"20px"},"body-style":{padding:"12px 16px"}},{default:n(()=>[a(ue,{size:[12,8],wrap:""},{default:n(()=>[a(A,{color:"green"},{default:n(()=>[p(u(o(e)("inference.breakdown.online",{count:b.value.nodes.online})),1)]),_:1}),a(A,{color:"orange"},{default:n(()=>[p(u(o(e)("inference.breakdown.busy",{count:b.value.nodes.busy})),1)]),_:1}),a(A,{color:"default"},{default:n(()=>[p(u(o(e)("inference.breakdown.offline",{count:b.value.nodes.offline})),1)]),_:1}),z("span",ct,u(o(e)("inference.breakdown.extra",{complete:b.value.tasks.completed,failed:b.value.tasks.failed})),1)]),_:1})]),_:1},8,["title"])):g("",!0),a(Pe,{activeKey:Y.value,"onUpdate:activeKey":t[3]||(t[3]=i=>Y.value=i),class:"inference-tabs"},{default:n(()=>[a(fe,{key:"nodes",tab:o(e)("inference.tabs.nodes")},{default:n(()=>[z("div",dt,[a(E,{value:j.value,"onUpdate:value":t[0]||(t[0]=i=>j.value=i),size:"small","button-style":"solid"},{default:n(()=>[a(F,{value:""},{default:n(()=>[p(u(o(e)("inference.filter.all")),1)]),_:1}),(c(!0),m(C,null,I(o(ve),i=>(c(),x(F,{key:i,value:i},{default:n(()=>[p(u(H(i)),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value"])]),a(de,{columns:be.value,"data-source":he.value,pagination:{pageSize:20,showTotal:i=>o(e)("inference.totals.rows",{count:i})},size:"small",loading:$.value,style:{background:"var(--bg-card)"}},{bodyCell:n(({column:i,record:d})=>[i.key==="nodeId"?(c(),m(C,{key:0},[z("span",ft,u(d.nodeId),1),d.endpoint?(c(),m("div",pt,u(oe(d.endpoint,50)),1)):g("",!0)],64)):g("",!0),i.key==="capabilities"?(c(),m(C,{key:1},[(c(!0),m(C,null,I(d.capabilities.slice(0,4),S=>(c(),x(A,{key:S,color:"blue",style:{"font-size":"10px",margin:"1px"}},{default:n(()=>[p(u(S),1)]),_:2},1024))),128)),d.capabilities.length>4?(c(),x(A,{key:0,color:"default",style:{"font-size":"10px"}},{default:n(()=>[p("+"+u(d.capabilities.length-4),1)]),_:2},1024)):g("",!0),d.capabilities.length?g("",!0):(c(),m("span",mt,"—"))],64)):g("",!0),i.key==="gpu"?(c(),m(C,{key:2},[d.gpuMemoryMb>0?(c(),m("span",yt,u(Ne(d.gpuMemoryMb)),1)):(c(),m("span",gt,"—"))],64)):g("",!0),i.key==="status"?(c(),x(A,{key:3,color:Se(d.status)},{default:n(()=>[p(u(H(d.status)),1)]),_:2},1032,["color"])):g("",!0),i.key==="taskCount"?(c(),x(A,{key:4,color:"purple",style:{"font-size":"11px"}},{default:n(()=>[p(u(d.taskCount),1)]),_:2},1024)):g("",!0),i.key==="lastHeartbeat"?(c(),m("span",vt,u(o(ke)(d.lastHeartbeat)),1)):g("",!0),i.key==="action"?(c(),m(C,{key:6},[a(f,{size:"small",type:"link",loading:W.value===d.id,onClick:S=>je(d)},{default:n(()=>[p(u(o(e)("inference.rowActions.heartbeat")),1)]),_:1},8,["loading","onClick"]),a(re,{trigger:["click"]},{overlay:n(()=>[a(le,{onClick:S=>Le(d,S.key)},{default:n(()=>[(c(!0),m(C,null,I(o(ve),S=>(c(),x(O,{key:S,disabled:S===d.status},{default:n(()=>[p(u(H(S)),1)]),_:2},1032,["disabled"]))),128))]),_:2},1032,["onClick"])]),default:n(()=>[a(f,{size:"small",type:"link"},{default:n(()=>[p(u(o(e)("inference.rowActions.statusDropdown")),1)]),_:1})]),_:2},1024),a(ce,{title:o(e)("inference.rowActions.unregisterConfirm"),"ok-text":o(e)("inference.rowActions.unregisterOk"),"cancel-text":o(e)("common.cancel"),onConfirm:S=>Ue(d)},{default:n(()=>[a(f,{size:"small",type:"link",danger:""},{default:n(()=>[p(u(o(e)("inference.rowActions.unregister")),1)]),_:1})]),_:1},8,["title","ok-text","cancel-text","onConfirm"])],64)):g("",!0)]),emptyText:n(()=>[z("div",_t,[a(o(Z),{style:{"font-size":"36px","margin-bottom":"10px",display:"block"}}),p(" "+u(j.value?o(e)("inference.empty.filteredNodes"):o(e)("inference.empty.noNodes")),1)])]),_:1},8,["columns","data-source","pagination","loading"])]),_:1},8,["tab"]),a(fe,{key:"tasks",tab:o(e)("inference.tabs.tasks")},{default:n(()=>[z("div",kt,[a(E,{value:L.value,"onUpdate:value":t[1]||(t[1]=i=>L.value=i),size:"small"},{default:n(()=>[a(F,{value:""},{default:n(()=>[p(u(o(e)("inference.filter.allStatuses")),1)]),_:1}),(c(!0),m(C,null,I(o(Ze),i=>(c(),x(F,{key:i,value:i},{default:n(()=>[p(u(ae(i)),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value"]),a(E,{value:U.value,"onUpdate:value":t[2]||(t[2]=i=>U.value=i),size:"small"},{default:n(()=>[a(F,{value:""},{default:n(()=>[p(u(o(e)("inference.filter.allModes")),1)]),_:1}),(c(!0),m(C,null,I(o(_e),i=>(c(),x(F,{key:i,value:i},{default:n(()=>[p(u(X(i)),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value"])]),a(de,{columns:xe.value,"data-source":Ce.value,pagination:{pageSize:20,showTotal:i=>o(e)("inference.totals.rows",{count:i})},size:"small",loading:$.value,style:{background:"var(--bg-card)"}},{bodyCell:n(({column:i,record:d})=>[i.key==="model"?(c(),m(C,{key:0},[z("span",bt,u(d.model),1),d.input?(c(),m("div",xt,u(oe(d.input,60)),1)):g("",!0)],64)):g("",!0),i.key==="privacyMode"?(c(),x(A,{key:1,color:ze(d.privacyMode)},{default:n(()=>[p(u(X(d.privacyMode)),1)]),_:2},1032,["color"])):g("",!0),i.key==="priority"?(c(),m("span",{key:2,style:Xe({color:Me(d.priority),fontWeight:500})},u(d.priority),5)):g("",!0),i.key==="assignedNode"?(c(),m(C,{key:3},[d.assignedNode?(c(),m("span",ht,u(Ae(d.assignedNode)),1)):(c(),m("span",Ct,"—"))],64)):g("",!0),i.key==="status"?(c(),x(A,{key:4,color:we(d.status)},{default:n(()=>[p(u(ae(d.status)),1)]),_:2},1032,["color"])):g("",!0),i.key==="duration"?(c(),m(C,{key:5},[d.durationMs!=null?(c(),m("span",St,u(d.durationMs)+" ms ",1)):(c(),m("span",wt,"—"))],64)):g("",!0),i.key==="createdAt"?(c(),m("span",zt,u(o(ke)(d.createdAt)),1)):g("",!0),i.key==="action"?(c(),m(C,{key:7},[Fe(d)?(c(),x(f,{key:0,size:"small",type:"link",loading:Q.value===d.id,onClick:S=>qe(d)},{default:n(()=>[p(u(o(e)("inference.rowActions.complete")),1)]),_:1},8,["loading","onClick"])):g("",!0),Oe(d)?(c(),x(ce,{key:1,title:o(e)("inference.rowActions.failConfirm"),"ok-text":o(e)("inference.rowActions.failOk"),"cancel-text":o(e)("common.cancel"),onConfirm:S=>De(d)},{default:n(()=>[a(f,{size:"small",type:"link",danger:""},{default:n(()=>[p(u(o(e)("inference.rowActions.fail")),1)]),_:1})]),_:1},8,["title","ok-text","cancel-text","onConfirm"])):g("",!0)],64)):g("",!0)]),emptyText:n(()=>[z("div",Mt,[a(o(ee),{style:{"font-size":"36px","margin-bottom":"10px",display:"block"}}),p(" "+u(L.value||U.value?o(e)("inference.empty.filteredTasks"):o(e)("inference.empty.noTasks")),1)])]),_:1},8,["columns","data-source","pagination","loading"])]),_:1},8,["tab"])]),_:1},8,["activeKey"]),a(ye,{open:P.value,"onUpdate:open":t[8]||(t[8]=i=>P.value=i),title:o(e)("inference.register.title"),"confirm-loading":V.value,width:520,"ok-text":o(e)("inference.register.ok"),"cancel-text":o(e)("common.cancel"),onOk:Ie,onCancel:se},{default:n(()=>[a(me,{"label-col":{span:6},"wrapper-col":{span:18},style:{"margin-top":"16px"}},{default:n(()=>[a(N,{label:o(e)("inference.register.nodeIdLabel"),required:""},{default:n(()=>[a(J,{value:_.nodeId,"onUpdate:value":t[4]||(t[4]=i=>_.nodeId=i),placeholder:o(e)("inference.register.nodeIdPlaceholder")},null,8,["value","placeholder"])]),_:1},8,["label"]),a(N,{label:o(e)("inference.register.endpointLabel")},{default:n(()=>[a(J,{value:_.endpoint,"onUpdate:value":t[5]||(t[5]=i=>_.endpoint=i),placeholder:o(e)("inference.register.endpointPlaceholder")},null,8,["value","placeholder"])]),_:1},8,["label"]),a(N,{label:o(e)("inference.register.capabilitiesLabel")},{default:n(()=>[a(J,{value:_.capabilities,"onUpdate:value":t[6]||(t[6]=i=>_.capabilities=i),placeholder:o(e)("inference.register.capabilitiesPlaceholder")},null,8,["value","placeholder"])]),_:1},8,["label"]),a(N,{label:o(e)("inference.register.gpuLabel")},{default:n(()=>[a(pe,{value:_.gpuMemory,"onUpdate:value":t[7]||(t[7]=i=>_.gpuMemory=i),min:0,max:2e5,style:{width:"100%"}},null,8,["value"])]),_:1},8,["label"])]),_:1})]),_:1},8,["open","title","confirm-loading","ok-text","cancel-text"]),a(ye,{open:B.value,"onUpdate:open":t[13]||(t[13]=i=>B.value=i),title:o(e)("inference.submit.title"),"confirm-loading":G.value,width:520,"ok-text":o(e)("inference.submit.ok"),"cancel-text":o(e)("common.cancel"),onOk:$e,onCancel:ie},{default:n(()=>[a(me,{"label-col":{span:6},"wrapper-col":{span:18},style:{"margin-top":"16px"}},{default:n(()=>[a(N,{label:o(e)("inference.submit.modelLabel"),required:""},{default:n(()=>[a(J,{value:k.model,"onUpdate:value":t[9]||(t[9]=i=>k.model=i),placeholder:o(e)("inference.submit.modelPlaceholder")},null,8,["value","placeholder"])]),_:1},8,["label"]),a(N,{label:o(e)("inference.submit.inputLabel")},{default:n(()=>[a(Be,{value:k.input,"onUpdate:value":t[10]||(t[10]=i=>k.input=i),"auto-size":{minRows:3,maxRows:6}},null,8,["value"])]),_:1},8,["label"]),a(N,{label:o(e)("inference.submit.priorityLabel")},{default:n(()=>[a(pe,{value:k.priority,"onUpdate:value":t[11]||(t[11]=i=>k.priority=i),min:1,max:10,style:{width:"100%"}},null,8,["value"])]),_:1},8,["label"]),a(N,{label:o(e)("inference.submit.modeLabel")},{default:n(()=>[a(E,{value:k.mode,"onUpdate:value":t[12]||(t[12]=i=>k.mode=i)},{default:n(()=>[(c(!0),m(C,null,I(o(_e),i=>(c(),x(F,{key:i,value:i},{default:n(()=>[p(u(X(i)),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value"])]),_:1},8,["label"])]),_:1})]),_:1},8,["open","title","confirm-loading","ok-text","cancel-text"])])}}},It=He(At,[["__scopeId","data-v-849fc966"]]);export{It as default};
@@ -0,0 +1 @@
1
+ import{_ as Be,u as Pe,b as Me,d as h}from"./index-B2f4ltyM.js";import{u as Ne,i as Ke,a as qe,b as Ve,c as Je,d as Qe,E as We}from"./echarts-DmBLM6YO.js";import{R as Ye,al as Ze,ar as le,V as ke,s as He,$ as Xe}from"./icons-zXb7lDZs.js";import{o as et,M as m,R as $,P as s,c as t,N as a,Q as R,S as G,K as p,r as v,L as d,O as c,u as S,F as A,_ as L,f as U,a as re}from"./vendor-B6ToihkA.js";function N(l){if(!l)return null;const i=l.trim();try{return JSON.parse(i)}catch{const n=i.match(/(\[[\s\S]*\]|\{[\s\S]*\})/);if(!n)return null;try{return JSON.parse(n[1])}catch{return null}}}function ie(l,i=0){if(!l||typeof l!="object")return null;const n=l.id||l.entity_id||"";if(!n)return null;const k=Array.isArray(l.tags)?l.tags:typeof l.tags=="string"&&l.tags.length>0?l.tags.split(",").map(_=>_.trim()).filter(Boolean):[];return{key:n,id:n,name:l.name||"",type:l.type||"",tags:k,properties:l.properties&&typeof l.properties=="object"?l.properties:null,createdAt:l.created_at||l.createdAt||"",updatedAt:l.updated_at||l.updatedAt||"",_idx:i}}function _e(l,i=0){if(!l||typeof l!="object")return null;const n=l.id||l.relation_id||"";if(!n)return null;const k=l.sourceId||l.source_id||"",_=l.targetId||l.target_id||"";if(!k||!_)return null;const T=typeof l.weight=="number"?l.weight:typeof l.weight=="string"?parseFloat(l.weight):1;return{key:n,id:n,sourceId:k,targetId:_,relationType:l.relationType||l.relation_type||"",weight:Number.isFinite(T)?T:1,properties:l.properties&&typeof l.properties=="object"?l.properties:null,createdAt:l.created_at||l.createdAt||"",_idx:i}}function tt(l){const i=N(l);return Array.isArray(i)?i.map(ie).filter(Boolean):i&&Array.isArray(i.entities)?i.entities.map(ie).filter(Boolean):[]}function at(l){const i=N(l);return Array.isArray(i)?i.map(_e).filter(Boolean):i&&Array.isArray(i.relations)?i.relations.map(_e).filter(Boolean):[]}function ot(l){const i=N(l);if(!i||typeof i!="object"||Array.isArray(i))return{entityCount:0,relationCount:0,avgDegree:0,density:0,typeDistribution:{},relationTypeDistribution:{}};const n=k=>{const _=typeof k=="number"?k:parseFloat(k);return Number.isFinite(_)?_:0};return{entityCount:n(i.entityCount??i.entity_count),relationCount:n(i.relationCount??i.relation_count),avgDegree:n(i.avgDegree??i.avg_degree),density:n(i.density),typeDistribution:i.typeDistribution||i.type_distribution||{},relationTypeDistribution:i.relationTypeDistribution||i.relation_type_distribution||{}}}function nt(l){const i=N(l);return Array.isArray(i)?i.map((n,k)=>{if(!n||typeof n!="object"||!n.entity)return null;const _=ie(n.entity,k);return _?{key:`${_.id}-${k}`,depth:typeof n.depth=="number"?n.depth:0,entity:_}:null}).filter(Boolean):[]}function lt(l){const i=N(l);return Array.isArray(i)?i.map(n=>!n||typeof n!="object"||!n.name?null:{name:String(n.name),description:String(n.description||"")}).filter(Boolean):[]}function rt(l,i){const n=new Map,k=[];for(const f of l)n.has(f.type)||(n.set(f.type,k.length),k.push({name:f.type||"unknown"}));const _=l.map(f=>({id:f.id,name:f.name||f.id.slice(0,8),category:n.get(f.type)??0,value:1,symbolSize:24})),T=new Set(l.map(f=>f.id)),O=[];for(const f of i)!T.has(f.sourceId)||!T.has(f.targetId)||O.push({source:f.sourceId,target:f.targetId,value:f.relationType,lineStyle:{width:Math.max(1,Math.min(6,f.weight*2))}});return{nodes:_,links:O,categories:k}}const it={style:{display:"flex","align-items":"center","justify-content":"space-between","margin-bottom":"24px"}},st={class:"page-title"},dt={class:"page-sub"},ut={key:0,style:{padding:"60px","text-align":"center"}},pt={key:1,style:{height:"540px"}},ct={key:0,style:{color:"#888","font-family":"monospace","font-size":"11px"}},yt={key:1,style:{color:"var(--text-primary)"}},gt={key:0,style:{color:"var(--text-muted)"}},mt={key:0,style:{color:"#888","font-family":"monospace","font-size":"11px"}},ft={key:1,style:{color:"var(--text-muted)"}},ht={key:2,style:{color:"#888","font-family":"monospace","font-size":"11px"}},vt={key:4,style:{color:"var(--text-secondary)","font-family":"monospace"}},kt={key:0,style:{padding:"40px","text-align":"center",color:"var(--text-muted)"}},_t={style:{display:"flex","justify-content":"space-between","margin-bottom":"4px"}},bt={style:{color:"var(--text-secondary)","font-family":"monospace"}},wt={key:0,style:{padding:"40px","text-align":"center",color:"var(--text-muted)"}},Gt={style:{display:"flex","justify-content":"space-between","margin-bottom":"4px"}},$t={style:{color:"var(--text-secondary)","font-family":"monospace"}},xt={style:{color:"var(--text-muted)","font-size":"11px"}},Ct={key:0,style:{padding:"30px","text-align":"center",color:"var(--text-muted)"}},St={style:{"margin-left":"12px",color:"var(--text-primary)"}},Tt={style:{"margin-left":"8px",color:"#888","font-family":"monospace","font-size":"11px"}},Rt={__name:"KnowledgeGraph",setup(l){Ne([Ke,qe,Ve,Je,Qe]);const i=Pe(),{t:n}=Me(),k=v(!1),_=v(!1),T=v(!1),O=v(!1),f=v(!1),Z=v(""),K=v(!1),se=v("graph"),x=v([]),B=v([]),H=v([]),E=v({entityCount:0,relationCount:0,avgDegree:0,density:0,typeDistribution:{},relationTypeDistribution:{}}),q=v(!1),V=v(!1),X=v(!1),b=re({name:"",type:"",tags:""}),y=re({sourceId:"",targetId:"",relationType:"",weight:1}),j=re({maxDepth:3,direction:"out"}),de=v(""),ue=v(""),P=v([]),be=U(()=>[{title:n("knowledgeGraph.entityCols.id"),key:"id",width:"120px"},{title:n("knowledgeGraph.entityCols.name"),key:"name",dataIndex:"name",ellipsis:!0},{title:n("knowledgeGraph.entityCols.type"),key:"type",dataIndex:"type",width:"140px"},{title:n("knowledgeGraph.entityCols.tags"),key:"tags",width:"200px"},{title:n("knowledgeGraph.entityCols.action"),key:"action",width:"160px"}]),we=U(()=>[{title:n("knowledgeGraph.relationCols.source"),key:"source",width:"120px"},{title:"",key:"arrow",width:"40px"},{title:n("knowledgeGraph.relationCols.target"),key:"target",width:"120px"},{title:n("knowledgeGraph.relationCols.relationType"),key:"relationType",width:"160px"},{title:n("knowledgeGraph.relationCols.weight"),key:"weight",width:"100px"}]),Ge={Person:"magenta",Organization:"blue",Project:"cyan",Technology:"geekblue",Document:"gold",Concept:"purple",Event:"volcano"};function ee(e){return Ge[e]||"default"}const $e=U(()=>{const e=new Map;for(const r of x.value)e.set(r.id,r.name||r.id.slice(0,8));return e});function pe(e){return $e.value.get(e)||e.slice(0,12)}function ce(e,r){return String(r?.children?.[0]?.children||"").toLowerCase().includes(String(e).toLowerCase())}const ye=U(()=>{const e=E.value.typeDistribution||{},r=Object.values(e).reduce((u,g)=>u+g,0)||1;return Object.entries(e).map(([u,g])=>({type:u,count:g,percent:Math.round(g/r*100)})).sort((u,g)=>g.count-u.count)}),ge=U(()=>{const e=E.value.relationTypeDistribution||{},r=Object.values(e).reduce((u,g)=>u+g,0)||1;return Object.entries(e).map(([u,g])=>({type:u,count:g,percent:Math.round(g/r*100)})).sort((u,g)=>g.count-u.count)}),xe=U(()=>{const{nodes:e,links:r,categories:u}=rt(x.value,B.value);return{tooltip:{show:!0},legend:[{data:u.map(g=>g.name),textStyle:{color:"#aaa"},bottom:0}],series:[{type:"graph",layout:"force",data:e,links:r,categories:u,roam:!0,label:{show:!0,position:"right",color:"#ddd",fontSize:11},lineStyle:{color:"source",curveness:.1,opacity:.6},emphasis:{focus:"adjacency",lineStyle:{width:4}},force:{repulsion:180,edgeLength:[60,140],gravity:.05}}]}});async function M(){_.value=!0;try{await Promise.all([Ce(),Se(),Te()])}finally{_.value=!1}}async function Ce(){try{const{output:e}=await i.execute("kg list --limit 500 --json",15e3);x.value=tt(e)}catch(e){h.error(n("knowledgeGraph.msg.loadEntitiesFailed")+": "+e.message),x.value=[]}}async function Se(){try{const{output:e}=await i.execute("kg relations --limit 1000 --json",15e3);B.value=at(e)}catch(e){h.error(n("knowledgeGraph.msg.loadRelationsFailed")+": "+e.message),B.value=[]}}async function Te(){try{const{output:e}=await i.execute("kg stats --json",1e4);E.value=ot(e)}catch(e){h.error(n("knowledgeGraph.msg.loadStatsFailed")+": "+e.message)}}async function Re(){if(!(H.value.length>0)){T.value=!0;try{const{output:e}=await i.execute("kg entity-types --json",1e4);H.value=lt(e)}catch(e){h.error(n("knowledgeGraph.msg.loadEntityTypesFailed")+": "+e.message)}finally{T.value=!1}}}async function Ee(){if(!b.name.trim()||!b.type){h.warning(n("knowledgeGraph.msg.addEntityEmpty"));return}O.value=!0;try{let r=`kg add "${b.name.trim().replace(/"/g,'\\"')}" ${b.type} --json`;b.tags.trim()&&(r+=` --tags "${b.tags.trim().replace(/"/g,'\\"')}"`);const{output:u,exitCode:g}=await i.execute(r,15e3);g!==0||/error|失败/i.test(u)?h.error(n("knowledgeGraph.msg.addEntityFailed")+": "+u.slice(0,120)):(h.success(n("knowledgeGraph.msg.addEntitySuccess")),q.value=!1,b.name="",b.type="",b.tags="",await M())}catch(e){h.error(n("knowledgeGraph.msg.addEntityFailed")+": "+e.message)}finally{O.value=!1}}async function Ie(){if(!y.sourceId||!y.targetId||!y.relationType.trim()){h.warning(n("knowledgeGraph.msg.addRelationEmpty"));return}if(y.sourceId===y.targetId){h.warning(n("knowledgeGraph.msg.addRelationSelfLoop"));return}f.value=!0;try{const e=y.relationType.trim().replace(/"/g,'\\"'),r=`kg add-relation ${y.sourceId} ${y.targetId} "${e}" --weight ${y.weight} --json`,{output:u,exitCode:g}=await i.execute(r,15e3);g!==0||/error|失败/i.test(u)?h.error(n("knowledgeGraph.msg.addRelationFailed")+": "+u.slice(0,120)):(h.success(n("knowledgeGraph.msg.addRelationSuccess")),V.value=!1,y.sourceId="",y.targetId="",y.relationType="",y.weight=1,await M())}catch(e){h.error(n("knowledgeGraph.msg.addRelationFailed")+": "+e.message)}finally{f.value=!1}}async function De(e){Z.value=e.id;try{const{output:r,exitCode:u}=await i.execute(`kg remove ${e.id}`,15e3);u!==0||/error|失败/i.test(r)?h.error(n("knowledgeGraph.msg.deleteFailed")+": "+r.slice(0,120)):(h.success(n("knowledgeGraph.msg.deleteSuccess")),await M())}catch(r){h.error(n("knowledgeGraph.msg.deleteFailed")+": "+r.message)}finally{Z.value=""}}function Ae(e){de.value=e.id,ue.value=e.name,P.value=[],X.value=!0}async function Oe(){K.value=!0;try{const e=`kg reason ${de.value} --max-depth ${j.maxDepth} --direction ${j.direction} --json`,{output:r}=await i.execute(e,15e3);P.value=nt(r),P.value.length===0&&h.info(n("knowledgeGraph.msg.reasonEmpty"))}catch(e){h.error(n("knowledgeGraph.msg.reasonFailed")+": "+e.message)}finally{K.value=!1}}return et(()=>{M(),Re()}),(e,r)=>{const u=p("a-button"),g=p("a-space"),J=p("a-statistic"),I=p("a-card"),z=p("a-col"),me=p("a-row"),je=p("a-alert"),te=p("a-empty"),Q=p("a-tab-pane"),D=p("a-tag"),ze=p("a-popconfirm"),fe=p("a-table"),he=p("a-progress"),Fe=p("a-tabs"),ae=p("a-input"),C=p("a-form-item"),F=p("a-select-option"),W=p("a-select"),oe=p("a-form"),ne=p("a-modal"),ve=p("a-input-number"),Le=p("a-list-item"),Ue=p("a-list");return d(),m("div",null,[$("div",it,[$("div",null,[$("h2",st,s(e.$t("knowledgeGraph.title")),1),$("p",dt,s(e.$t("knowledgeGraph.subtitle")),1)]),t(g,null,{default:a(()=>[t(u,{loading:_.value,onClick:M},{icon:a(()=>[t(S(Ye))]),default:a(()=>[c(" "+s(e.$t("knowledgeGraph.refresh")),1)]),_:1},8,["loading"]),t(u,{type:"primary",onClick:r[0]||(r[0]=o=>q.value=!0)},{icon:a(()=>[t(S(Ze))]),default:a(()=>[c(" "+s(e.$t("knowledgeGraph.addEntity")),1)]),_:1}),t(u,{onClick:r[1]||(r[1]=o=>V.value=!0),disabled:x.value.length<2},{icon:a(()=>[t(S(le))]),default:a(()=>[c(" "+s(e.$t("knowledgeGraph.addRelation")),1)]),_:1},8,["disabled"])]),_:1})]),t(me,{gutter:[16,16],style:{"margin-bottom":"20px"}},{default:a(()=>[t(z,{xs:24,sm:12,lg:6},{default:a(()=>[t(I,{style:{background:"var(--bg-card)","border-color":"var(--border-color)"}},{default:a(()=>[t(J,{title:e.$t("knowledgeGraph.stats.entityCount"),value:E.value.entityCount,"value-style":{color:"#1677ff",fontSize:"20px"}},{prefix:a(()=>[t(S(ke))]),_:1},8,["title","value"])]),_:1})]),_:1}),t(z,{xs:24,sm:12,lg:6},{default:a(()=>[t(I,{style:{background:"var(--bg-card)","border-color":"var(--border-color)"}},{default:a(()=>[t(J,{title:e.$t("knowledgeGraph.stats.relationCount"),value:E.value.relationCount,"value-style":{color:"#52c41a",fontSize:"20px"}},{prefix:a(()=>[t(S(le))]),_:1},8,["title","value"])]),_:1})]),_:1}),t(z,{xs:24,sm:12,lg:6},{default:a(()=>[t(I,{style:{background:"var(--bg-card)","border-color":"var(--border-color)"}},{default:a(()=>[t(J,{title:e.$t("knowledgeGraph.stats.avgDegree"),value:E.value.avgDegree,precision:2,"value-style":{color:"#faad14",fontSize:"20px"}},null,8,["title","value"])]),_:1})]),_:1}),t(z,{xs:24,sm:12,lg:6},{default:a(()=>[t(I,{style:{background:"var(--bg-card)","border-color":"var(--border-color)"}},{default:a(()=>[t(J,{title:e.$t("knowledgeGraph.stats.density"),value:E.value.density,precision:4,"value-style":{color:"#722ed1",fontSize:"20px"}},null,8,["title","value"])]),_:1})]),_:1})]),_:1}),k.value?G("",!0):(d(),R(je,{key:0,message:e.$t("knowledgeGraph.webOnly.message"),description:e.$t("knowledgeGraph.webOnly.description"),type:"info","show-icon":"",closable:"",style:{"margin-bottom":"16px"}},null,8,["message","description"])),t(Fe,{activeKey:se.value,"onUpdate:activeKey":r[2]||(r[2]=o=>se.value=o),type:"card"},{default:a(()=>[t(Q,{key:"graph"},{tab:a(()=>[t(S(He)),c(" "+s(e.$t("knowledgeGraph.tabs.graph")),1)]),default:a(()=>[t(I,{style:{background:"var(--bg-card)","border-color":"var(--border-color)"}},{default:a(()=>[x.value.length===0?(d(),m("div",ut,[t(te,{description:e.$t("knowledgeGraph.table.emptyGraph")},null,8,["description"])])):(d(),m("div",pt,[t(S(We),{option:xe.value,autoresize:""},null,8,["option"])]))]),_:1})]),_:1}),t(Q,{key:"entities"},{tab:a(()=>[t(S(ke)),c(" "+s(e.$t("knowledgeGraph.tabs.entities",{n:x.value.length})),1)]),default:a(()=>[t(fe,{columns:be.value,"data-source":x.value,pagination:{pageSize:20,showTotal:o=>e.$t("knowledgeGraph.table.totalSuffix",{n:o})},size:"small",style:{background:"var(--bg-card)"},"row-class-name":()=>"kg-row"},{bodyCell:a(({column:o,record:w})=>[o.key==="id"?(d(),m("span",ct,s(w.id.slice(0,12)),1)):G("",!0),o.key==="name"?(d(),m("span",yt,s(w.name),1)):G("",!0),o.key==="type"?(d(),R(D,{key:2,color:ee(w.type)},{default:a(()=>[c(s(w.type),1)]),_:2},1032,["color"])):G("",!0),o.key==="tags"?(d(),m(A,{key:3},[(d(!0),m(A,null,L(w.tags,Y=>(d(),R(D,{key:Y,color:"default"},{default:a(()=>[c(s(Y),1)]),_:2},1024))),128)),w.tags.length===0?(d(),m("span",gt,"-")):G("",!0)],64)):G("",!0),o.key==="action"?(d(),R(g,{key:4,size:"small"},{default:a(()=>[t(u,{size:"small",type:"link",onClick:Y=>Ae(w)},{default:a(()=>[c(s(e.$t("knowledgeGraph.actions.reason")),1)]),_:1},8,["onClick"]),t(ze,{title:e.$t("knowledgeGraph.deleteConfirm.title"),"ok-text":e.$t("knowledgeGraph.deleteConfirm.ok"),"ok-type":"danger","cancel-text":e.$t("knowledgeGraph.deleteConfirm.cancel"),onConfirm:Y=>De(w)},{default:a(()=>[t(u,{size:"small",type:"link",danger:"",loading:Z.value===w.id},{default:a(()=>[c(s(e.$t("knowledgeGraph.actions.delete")),1)]),_:1},8,["loading"])]),_:2},1032,["title","ok-text","cancel-text","onConfirm"])]),_:2},1024)):G("",!0)]),emptyText:a(()=>[t(te,{description:e.$t("knowledgeGraph.table.emptyEntities")},null,8,["description"])]),_:1},8,["columns","data-source","pagination"])]),_:1}),t(Q,{key:"relations"},{tab:a(()=>[t(S(le)),c(" "+s(e.$t("knowledgeGraph.tabs.relations",{n:B.value.length})),1)]),default:a(()=>[t(fe,{columns:we.value,"data-source":B.value,pagination:{pageSize:20,showTotal:o=>e.$t("knowledgeGraph.table.totalSuffix",{n:o})},size:"small",style:{background:"var(--bg-card)"},"row-class-name":()=>"kg-row"},{bodyCell:a(({column:o,record:w})=>[o.key==="source"?(d(),m("span",mt,s(pe(w.sourceId)),1)):G("",!0),o.key==="arrow"?(d(),m("span",ft,"→")):G("",!0),o.key==="target"?(d(),m("span",ht,s(pe(w.targetId)),1)):G("",!0),o.key==="relationType"?(d(),R(D,{key:3,color:"cyan"},{default:a(()=>[c(s(w.relationType),1)]),_:2},1024)):G("",!0),o.key==="weight"?(d(),m("span",vt,s(w.weight.toFixed(2)),1)):G("",!0)]),emptyText:a(()=>[t(te,{description:e.$t("knowledgeGraph.table.emptyRelations")},null,8,["description"])]),_:1},8,["columns","data-source","pagination"])]),_:1}),t(Q,{key:"distribution"},{tab:a(()=>[t(S(Xe)),c(" "+s(e.$t("knowledgeGraph.tabs.distribution")),1)]),default:a(()=>[t(me,{gutter:[24,24]},{default:a(()=>[t(z,{xs:24,md:12},{default:a(()=>[t(I,{title:e.$t("knowledgeGraph.distribution.entityTypes"),style:{background:"var(--bg-card)","border-color":"var(--border-color)"}},{default:a(()=>[ye.value.length===0?(d(),m("div",kt,s(e.$t("knowledgeGraph.table.emptyData")),1)):G("",!0),(d(!0),m(A,null,L(ye.value,o=>(d(),m("div",{key:o.type,style:{"margin-bottom":"8px"}},[$("div",_t,[t(D,{color:ee(o.type)},{default:a(()=>[c(s(o.type),1)]),_:2},1032,["color"]),$("span",bt,s(o.count),1)]),t(he,{percent:o.percent,"show-info":!1,"stroke-color":"#1677ff"},null,8,["percent"])]))),128))]),_:1},8,["title"])]),_:1}),t(z,{xs:24,md:12},{default:a(()=>[t(I,{title:e.$t("knowledgeGraph.distribution.relationTypes"),style:{background:"var(--bg-card)","border-color":"var(--border-color)"}},{default:a(()=>[ge.value.length===0?(d(),m("div",wt,s(e.$t("knowledgeGraph.table.emptyData")),1)):G("",!0),(d(!0),m(A,null,L(ge.value,o=>(d(),m("div",{key:o.type,style:{"margin-bottom":"8px"}},[$("div",Gt,[t(D,{color:"cyan"},{default:a(()=>[c(s(o.type),1)]),_:2},1024),$("span",$t,s(o.count),1)]),t(he,{percent:o.percent,"show-info":!1,"stroke-color":"#52c41a"},null,8,["percent"])]))),128))]),_:1},8,["title"])]),_:1})]),_:1})]),_:1})]),_:1},8,["activeKey"]),t(ne,{open:q.value,"onUpdate:open":r[6]||(r[6]=o=>q.value=o),title:e.$t("knowledgeGraph.addEntity_modal.title"),"confirm-loading":O.value,onOk:Ee,"ok-text":e.$t("knowledgeGraph.addEntity_modal.ok"),"cancel-text":e.$t("knowledgeGraph.addEntity_modal.cancel")},{default:a(()=>[t(oe,{"label-col":{span:6},"wrapper-col":{span:18},style:{"margin-top":"16px"}},{default:a(()=>[t(C,{label:e.$t("knowledgeGraph.addEntity_modal.nameLabel"),required:""},{default:a(()=>[t(ae,{value:b.name,"onUpdate:value":r[3]||(r[3]=o=>b.name=o),placeholder:e.$t("knowledgeGraph.addEntity_modal.namePlaceholder")},null,8,["value","placeholder"])]),_:1},8,["label"]),t(C,{label:e.$t("knowledgeGraph.addEntity_modal.typeLabel"),required:""},{default:a(()=>[t(W,{value:b.type,"onUpdate:value":r[4]||(r[4]=o=>b.type=o),placeholder:e.$t("knowledgeGraph.addEntity_modal.typePlaceholder"),loading:T.value},{default:a(()=>[(d(!0),m(A,null,L(H.value,o=>(d(),R(F,{key:o.name,value:o.name},{default:a(()=>[c(s(o.name)+" ",1),$("span",xt,"— "+s(o.description),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value","placeholder","loading"])]),_:1},8,["label"]),t(C,{label:e.$t("knowledgeGraph.addEntity_modal.tagsLabel")},{default:a(()=>[t(ae,{value:b.tags,"onUpdate:value":r[5]||(r[5]=o=>b.tags=o),placeholder:e.$t("knowledgeGraph.addEntity_modal.tagsPlaceholder")},null,8,["value","placeholder"])]),_:1},8,["label"])]),_:1})]),_:1},8,["open","title","confirm-loading","ok-text","cancel-text"]),t(ne,{open:V.value,"onUpdate:open":r[11]||(r[11]=o=>V.value=o),title:e.$t("knowledgeGraph.addRelation_modal.title"),"confirm-loading":f.value,onOk:Ie,"ok-text":e.$t("knowledgeGraph.addRelation_modal.ok"),"cancel-text":e.$t("knowledgeGraph.addRelation_modal.cancel")},{default:a(()=>[t(oe,{"label-col":{span:6},"wrapper-col":{span:18},style:{"margin-top":"16px"}},{default:a(()=>[t(C,{label:e.$t("knowledgeGraph.addRelation_modal.sourceLabel"),required:""},{default:a(()=>[t(W,{value:y.sourceId,"onUpdate:value":r[7]||(r[7]=o=>y.sourceId=o),placeholder:e.$t("knowledgeGraph.addRelation_modal.sourcePlaceholder"),"show-search":"","filter-option":ce},{default:a(()=>[(d(!0),m(A,null,L(x.value,o=>(d(),R(F,{key:o.id,value:o.id},{default:a(()=>[c(s(o.name)+" ("+s(o.type)+") ",1)]),_:2},1032,["value"]))),128))]),_:1},8,["value","placeholder"])]),_:1},8,["label"]),t(C,{label:e.$t("knowledgeGraph.addRelation_modal.targetLabel"),required:""},{default:a(()=>[t(W,{value:y.targetId,"onUpdate:value":r[8]||(r[8]=o=>y.targetId=o),placeholder:e.$t("knowledgeGraph.addRelation_modal.targetPlaceholder"),"show-search":"","filter-option":ce},{default:a(()=>[(d(!0),m(A,null,L(x.value,o=>(d(),R(F,{key:o.id,value:o.id,disabled:o.id===y.sourceId},{default:a(()=>[c(s(o.name)+" ("+s(o.type)+") ",1)]),_:2},1032,["value","disabled"]))),128))]),_:1},8,["value","placeholder"])]),_:1},8,["label"]),t(C,{label:e.$t("knowledgeGraph.addRelation_modal.relationTypeLabel"),required:""},{default:a(()=>[t(ae,{value:y.relationType,"onUpdate:value":r[9]||(r[9]=o=>y.relationType=o),placeholder:e.$t("knowledgeGraph.addRelation_modal.relationTypePlaceholder")},null,8,["value","placeholder"])]),_:1},8,["label"]),t(C,{label:e.$t("knowledgeGraph.addRelation_modal.weightLabel")},{default:a(()=>[t(ve,{value:y.weight,"onUpdate:value":r[10]||(r[10]=o=>y.weight=o),min:.1,max:10,step:.1,style:{width:"100%"}},null,8,["value"])]),_:1},8,["label"])]),_:1})]),_:1},8,["open","title","confirm-loading","ok-text","cancel-text"]),t(ne,{open:X.value,"onUpdate:open":r[14]||(r[14]=o=>X.value=o),title:e.$t("knowledgeGraph.reason_modal.title",{name:ue.value}),width:640,footer:null},{default:a(()=>[t(oe,{layout:"inline",style:{"margin-bottom":"16px"}},{default:a(()=>[t(C,{label:e.$t("knowledgeGraph.reason_modal.maxDepth")},{default:a(()=>[t(ve,{value:j.maxDepth,"onUpdate:value":r[12]||(r[12]=o=>j.maxDepth=o),min:1,max:10},null,8,["value"])]),_:1},8,["label"]),t(C,{label:e.$t("knowledgeGraph.reason_modal.direction")},{default:a(()=>[t(W,{value:j.direction,"onUpdate:value":r[13]||(r[13]=o=>j.direction=o),style:{width:"100px"}},{default:a(()=>[t(F,{value:"out"},{default:a(()=>[c(s(e.$t("knowledgeGraph.reason_modal.directionOut")),1)]),_:1}),t(F,{value:"in"},{default:a(()=>[c(s(e.$t("knowledgeGraph.reason_modal.directionIn")),1)]),_:1}),t(F,{value:"both"},{default:a(()=>[c(s(e.$t("knowledgeGraph.reason_modal.directionBoth")),1)]),_:1})]),_:1},8,["value"])]),_:1},8,["label"]),t(C,null,{default:a(()=>[t(u,{type:"primary",loading:K.value,onClick:Oe},{default:a(()=>[c(s(e.$t("knowledgeGraph.reason_modal.run")),1)]),_:1},8,["loading"])]),_:1})]),_:1}),P.value.length===0&&!K.value?(d(),m("div",Ct,s(e.$t("knowledgeGraph.reason_modal.hint")),1)):(d(),R(Ue,{key:1,"data-source":P.value,size:"small"},{renderItem:a(({item:o})=>[t(Le,null,{default:a(()=>[t(D,{color:"purple"},{default:a(()=>[c("depth="+s(o.depth),1)]),_:2},1024),t(D,{color:ee(o.entity.type),style:{"margin-left":"8px"}},{default:a(()=>[c(s(o.entity.type),1)]),_:2},1032,["color"]),$("span",St,s(o.entity.name),1),$("span",Tt,s(o.entity.id.slice(0,12)),1)]),_:2},1024)]),_:1},8,["data-source"]))]),_:1},8,["open","title"])])}}},Ot=Be(Rt,[["__scopeId","data-v-d675e73f"]]);export{Ot as default};
@@ -1,2 +1,2 @@
1
- import{u as E}from"./ws-D_5-FRIb.js";import{_ as U}from"./index-Cw4v7ezB.js";import{R as q}from"./icons-DvZE-RKs.js";import{w as z,o as A,M as i,R as o,c as a,N as d,Q as D,S as F,P as h,F as Q,_ as j,n as w,K as l,r,f as L,L as u,O as b,u as I,Y as P}from"./vendor-B6ToihkA.js";const Y={style:{display:"flex","align-items":"center","justify-content":"space-between","margin-bottom":"24px"}},G={style:{display:"flex",gap:"10px",margin:"12px 0"}},J={key:0,style:{"text-align":"center",padding:"40px",color:"var(--text-muted)"}},X={key:1,style:{"text-align":"center",padding:"40px",color:"var(--text-muted)"}},Z={key:2},ee=["innerHTML"],te={__name:"Logs",setup(ae){const C=E(),k=r("status"),v=r(!1),g=r(""),_=r(""),c=r(""),m=r(!0),n=r(null),T={status:"status",doctor:"doctor","skill-sources":"skill sources","llm-providers":"llm providers"},f=L(()=>_.value.split(`
2
- `)),p=L(()=>{if(!c.value)return f.value;const e=c.value.toLowerCase();return f.value.filter(t=>t.toLowerCase().includes(e))});function M(e){return e.includes("✖")||e.includes("error")||e.includes("Error")||e.includes("failed")?"line-error":e.includes("✔")||e.includes("✓")||e.includes("success")||e.includes("running")?"line-success":e.includes("warn")||e.includes("Warn")||e.includes("○")?"line-warn":e.startsWith(" ")||e.startsWith(" ")?"line-indent":""}function N(e){return e.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;")}function S(e){if(!c.value)return e;const t=c.value.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return e.replace(new RegExp(`(${t})`,"gi"),"<mark>$1</mark>")}async function x(){v.value=!0,g.value="",_.value="";const e=T[k.value]||"status";try{const{output:t}=await C.execute(e,3e4);_.value=t,m.value&&(await w(),n.value&&(n.value.scrollTop=n.value.scrollHeight))}catch(t){g.value=`执行失败: ${t.message}`,_.value=g.value}finally{v.value=!1}}return z(p,async()=>{m.value&&(await w(),n.value&&(n.value.scrollTop=n.value.scrollHeight))}),A(x),(e,t)=>{const B=l("a-checkbox"),H=l("a-button"),$=l("a-space"),y=l("a-tab-pane"),K=l("a-tabs"),O=l("a-input-search"),R=l("a-tag"),V=l("a-spin");return u(),i("div",null,[o("div",Y,[t[5]||(t[5]=o("div",null,[o("h2",{class:"page-title"},"日志查看"),o("p",{class:"page-sub"},"系统运行日志与诊断输出")],-1)),a($,null,{default:d(()=>[a(B,{checked:m.value,"onUpdate:checked":t[0]||(t[0]=s=>m.value=s)},{default:d(()=>[...t[3]||(t[3]=[b("自动滚动",-1)])]),_:1},8,["checked"]),a(H,{type:"primary",ghost:"",loading:v.value,onClick:x},{icon:d(()=>[a(I(q))]),default:d(()=>[t[4]||(t[4]=b(" 刷新 ",-1))]),_:1},8,["loading"])]),_:1})]),a(K,{activeKey:k.value,"onUpdate:activeKey":t[1]||(t[1]=s=>k.value=s),onChange:x,style:{"margin-bottom":"0"}},{default:d(()=>[a(y,{key:"status",tab:"系统状态"}),a(y,{key:"doctor",tab:"环境诊断"}),a(y,{key:"skill-sources",tab:"技能来源"}),a(y,{key:"llm-providers",tab:"LLM 提供商"})]),_:1},8,["activeKey"]),o("div",G,[a(O,{value:c.value,"onUpdate:value":t[2]||(t[2]=s=>c.value=s),placeholder:"搜索日志内容...","allow-clear":"",style:{flex:"1"}},null,8,["value"]),p.value.length!==f.value.length?(u(),D(R,{key:0,color:"blue"},{default:d(()=>[b(h(p.value.length)+" / "+h(f.value.length)+" 行 ",1)]),_:1})):F("",!0)]),o("div",{ref_key:"logContainer",ref:n,class:"log-box"},[v.value?(u(),i("div",J,[a(V,{size:"large"}),t[6]||(t[6]=o("div",{style:{"margin-top":"10px"}},"加载中...",-1))])):p.value.length?(u(),i("div",Z,[(u(!0),i(Q,null,j(p.value,(s,W)=>(u(),i("div",{key:W,class:P(["log-line",M(s)]),innerHTML:S(N(s))},null,10,ee))),128))])):(u(),i("div",X,h(g.value||"暂无日志内容,点击刷新加载"),1))],512)])}}},re=U(te,[["__scopeId","data-v-b316ead3"]]);export{re as default};
1
+ import{_ as E,u as U}from"./index-B2f4ltyM.js";import{R as q}from"./icons-zXb7lDZs.js";import{w as z,o as A,M as i,R as o,c as a,N as d,Q as D,S as F,P as h,F as Q,_ as j,n as w,K as l,r,f as L,L as u,O as b,u as I,Y as P}from"./vendor-B6ToihkA.js";const Y={style:{display:"flex","align-items":"center","justify-content":"space-between","margin-bottom":"24px"}},G={style:{display:"flex",gap:"10px",margin:"12px 0"}},J={key:0,style:{"text-align":"center",padding:"40px",color:"var(--text-muted)"}},X={key:1,style:{"text-align":"center",padding:"40px",color:"var(--text-muted)"}},Z={key:2},ee=["innerHTML"],te={__name:"Logs",setup(ae){const C=U(),k=r("status"),v=r(!1),g=r(""),_=r(""),c=r(""),m=r(!0),n=r(null),T={status:"status",doctor:"doctor","skill-sources":"skill sources","llm-providers":"llm providers"},f=L(()=>_.value.split(`
2
+ `)),p=L(()=>{if(!c.value)return f.value;const e=c.value.toLowerCase();return f.value.filter(t=>t.toLowerCase().includes(e))});function M(e){return e.includes("✖")||e.includes("error")||e.includes("Error")||e.includes("failed")?"line-error":e.includes("✔")||e.includes("✓")||e.includes("success")||e.includes("running")?"line-success":e.includes("warn")||e.includes("Warn")||e.includes("○")?"line-warn":e.startsWith(" ")||e.startsWith(" ")?"line-indent":""}function N(e){return e.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;")}function S(e){if(!c.value)return e;const t=c.value.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");return e.replace(new RegExp(`(${t})`,"gi"),"<mark>$1</mark>")}async function x(){v.value=!0,g.value="",_.value="";const e=T[k.value]||"status";try{const{output:t}=await C.execute(e,3e4);_.value=t,m.value&&(await w(),n.value&&(n.value.scrollTop=n.value.scrollHeight))}catch(t){g.value=`执行失败: ${t.message}`,_.value=g.value}finally{v.value=!1}}return z(p,async()=>{m.value&&(await w(),n.value&&(n.value.scrollTop=n.value.scrollHeight))}),A(x),(e,t)=>{const B=l("a-checkbox"),H=l("a-button"),$=l("a-space"),y=l("a-tab-pane"),K=l("a-tabs"),O=l("a-input-search"),R=l("a-tag"),V=l("a-spin");return u(),i("div",null,[o("div",Y,[t[5]||(t[5]=o("div",null,[o("h2",{class:"page-title"},"日志查看"),o("p",{class:"page-sub"},"系统运行日志与诊断输出")],-1)),a($,null,{default:d(()=>[a(B,{checked:m.value,"onUpdate:checked":t[0]||(t[0]=s=>m.value=s)},{default:d(()=>[...t[3]||(t[3]=[b("自动滚动",-1)])]),_:1},8,["checked"]),a(H,{type:"primary",ghost:"",loading:v.value,onClick:x},{icon:d(()=>[a(I(q))]),default:d(()=>[t[4]||(t[4]=b(" 刷新 ",-1))]),_:1},8,["loading"])]),_:1})]),a(K,{activeKey:k.value,"onUpdate:activeKey":t[1]||(t[1]=s=>k.value=s),onChange:x,style:{"margin-bottom":"0"}},{default:d(()=>[a(y,{key:"status",tab:"系统状态"}),a(y,{key:"doctor",tab:"环境诊断"}),a(y,{key:"skill-sources",tab:"技能来源"}),a(y,{key:"llm-providers",tab:"LLM 提供商"})]),_:1},8,["activeKey"]),o("div",G,[a(O,{value:c.value,"onUpdate:value":t[2]||(t[2]=s=>c.value=s),placeholder:"搜索日志内容...","allow-clear":"",style:{flex:"1"}},null,8,["value"]),p.value.length!==f.value.length?(u(),D(R,{key:0,color:"blue"},{default:d(()=>[b(h(p.value.length)+" / "+h(f.value.length)+" 行 ",1)]),_:1})):F("",!0)]),o("div",{ref_key:"logContainer",ref:n,class:"log-box"},[v.value?(u(),i("div",J,[a(V,{size:"large"}),t[6]||(t[6]=o("div",{style:{"margin-top":"10px"}},"加载中...",-1))])):p.value.length?(u(),i("div",Z,[(u(!0),i(Q,null,j(p.value,(s,W)=>(u(),i("div",{key:W,class:P(["log-line",M(s)]),innerHTML:S(N(s))},null,10,ee))),128))])):(u(),i("div",X,h(g.value||"暂无日志内容,点击刷新加载"),1))],512)])}}},oe=E(te,[["__scopeId","data-v-b316ead3"]]);export{oe as default};
@@ -0,0 +1 @@
1
+ import{_ as Fe,u as je,b as Ne,d as g}from"./index-B2f4ltyM.js";import{s as Pe}from"./community-parser-CO25nZFt.js";import{R as De,J as Be,l as ie,f as Ee,h as ue,aO as Ve,u as Je}from"./icons-zXb7lDZs.js";import{o as Ke,M as f,R as h,P as d,c as l,N as o,K as v,r as _,L as i,O as k,u as y,F as $,_ as P,Q as S,S as b,f as R,a as ce}from"./vendor-B6ToihkA.js";function Y(n){const r=Pe(n);if(!r)return null;try{return JSON.parse(r)}catch{}const s=r.match(/\{[\s\S]*\}|\[[\s\S]*\]/);if(!s)return null;try{return JSON.parse(s[0])}catch{return null}}const X=Object.freeze(["draft","published","deprecated","suspended"]),qe=Object.freeze(["pending","running","success","failed","timeout"]);function D(n,r=0){return typeof n=="number"&&Number.isFinite(n)?n:r}function Qe(n,r=0){if(!n||typeof n!="object")return null;const s=n.id||"";return s?{key:s,id:s,name:String(n.name||""),version:String(n.version||""),description:String(n.description||""),endpoint:n.endpoint||"",pricing:n.pricing??null,status:String(n.status||"draft").toLowerCase(),owner:n.owner||"",invocationCount:D(n.invocationCount??n.invocation_count,0),createdAt:n.createdAt??n.created_at??null,updatedAt:n.updatedAt??n.updated_at??null,_idx:r}:null}function We(n){const r=Y(n);return Array.isArray(r)?r.map(Qe).filter(Boolean):[]}function Ge(n,r=0){if(!n||typeof n!="object")return null;const s=n.id||"";return s?{key:s,id:s,serviceId:n.serviceId||n.service_id||"",callerId:n.callerId||n.caller_id||"",input:n.input??null,output:n.output??null,status:String(n.status||"success").toLowerCase(),durationMs:n.durationMs??n.duration_ms??null,error:n.error||"",createdAt:n.createdAt??n.created_at??null,_idx:r}:null}function He(n){const r=Y(n);return Array.isArray(r)?r.map(Ge).filter(Boolean):[]}function Xe(n){const r={total:0,counts:{success:0,failed:0,timeout:0,pending:0,running:0},successRate:0,avgDurationMs:0,scopedToService:null},s=Y(n);if(!s||typeof s!="object"||Array.isArray(s))return r;r.total=D(s.total,0),r.successRate=D(s.successRate??s.success_rate,0),r.avgDurationMs=D(s.avgDurationMs??s.avg_duration_ms,0),r.scopedToService=s.scopedToService??s.scoped_to_service??null;const C=s.counts&&typeof s.counts=="object"?s.counts:{};for(const w of Object.keys(r.counts))r.counts[w]=D(C[w],0);return r}function de(n){if(n==null||n==="")return"—";const r=typeof n=="number"?new Date(n):new Date(String(n));return isNaN(r.getTime())?String(n):r.toLocaleString("zh-CN",{hour12:!1})}const Ye={style:{display:"flex","align-items":"center","justify-content":"space-between","margin-bottom":"24px"}},Ze={class:"page-title"},et={class:"page-sub"},tt={class:"filter-bar"},at={style:{color:"var(--text-primary)","font-weight":"500"}},lt={key:1,style:{color:"var(--text-secondary)","font-size":"11px","margin-top":"2px"}},ot={key:2,style:{color:"#722ed1","font-weight":"500"}},nt={key:0,style:{color:"var(--text-secondary)","font-family":"monospace","font-size":"11px"}},st={key:1,style:{color:"var(--text-muted)"}},rt={key:4,style:{color:"var(--text-secondary)","font-size":"11px"}},it={style:{padding:"40px",color:"var(--text-muted)","text-align":"center"}},ut={class:"filter-bar"},ct={style:{color:"var(--text-primary)"}},dt={style:{color:"var(--text-muted)","font-size":"11px","font-family":"monospace"}},pt={key:0,style:{color:"var(--text-secondary)","font-family":"monospace","font-size":"11px"}},mt={key:1,style:{color:"var(--text-muted)"}},vt={key:0,style:{color:"var(--text-secondary)","font-size":"12px"}},ft={key:1,style:{color:"var(--text-muted)"}},kt={key:4,style:{color:"var(--text-secondary)","font-size":"11px"}},yt={style:{padding:"40px",color:"var(--text-muted)","text-align":"center"}},bt={__name:"Marketplace",setup(n){const r=je(),{t:s}=Ne(),C=_(!1),w=_(!1),J=_(!1),z=_([]),K=_([]),I=_({total:0,counts:{success:0,failed:0,timeout:0,pending:0,running:0},successRate:0,avgDurationMs:0,scopedToService:null}),q=_("services"),L=_(""),O=_(""),B=_(null),E=_(!1),V=_(!1),c=ce({name:"",version:"",description:"",endpoint:"",owner:"",status:"published"}),u=ce({serviceId:"",caller:"",status:"success",durationMs:null,error:""}),Q=_(""),pe=R(()=>[{title:s("marketplace.serviceCols.name"),key:"name"},{title:s("marketplace.serviceCols.status"),key:"status",width:"120px"},{title:s("marketplace.serviceCols.invocationCount"),key:"invocationCount",width:"110px"},{title:s("marketplace.serviceCols.owner"),key:"owner",width:"180px"},{title:s("marketplace.serviceCols.createdAt"),key:"createdAt",width:"160px"},{title:s("marketplace.serviceCols.action"),key:"action",width:"180px"}]),me=R(()=>[{title:s("marketplace.invocationCols.service"),key:"service"},{title:s("marketplace.invocationCols.caller"),key:"caller",width:"180px"},{title:s("marketplace.invocationCols.status"),key:"status",width:"100px"},{title:s("marketplace.invocationCols.durationMs"),key:"durationMs",width:"110px"},{title:s("marketplace.invocationCols.createdAt"),key:"createdAt",width:"160px"}]),ve=R(()=>z.value.filter(e=>e.status==="published").length),fe=R(()=>I.value.successRate*100),ke=R(()=>{let e=z.value;if(L.value&&(e=e.filter(t=>t.status===L.value)),O.value){const t=O.value.toLowerCase();e=e.filter(p=>p.name.toLowerCase().includes(t))}return e}),ye=R(()=>B.value?K.value.filter(e=>e.serviceId===B.value):K.value);function M(e){const t=`marketplace.serviceStatusLabels.${e}`,p=s(t);return p===t?e:p}function be(e){return{draft:"default",published:"green",deprecated:"orange",suspended:"red"}[e]||"default"}function Z(e){const t=`marketplace.invocationStatusLabels.${e}`,p=s(t);return p===t?e:p}function _e(e){return{pending:"default",running:"processing",success:"green",failed:"red",timeout:"orange"}[e]||"default"}function ee(e){return e?e.length>28?e.slice(0,16)+"..."+e.slice(-8):e:""}function ge(e,t){return e?e.length>t?e.slice(0,t)+"...":e:""}function he(e){const t=z.value.find(p=>p.id===e);return t?t.name:s("marketplace.deletedService")}async function T(){C.value=!0;try{const[e,t,p]=await Promise.all([r.execute("marketplace list --limit 200 --json",1e4).catch(()=>({output:""})),r.execute("marketplace invocations --limit 200 --json",1e4).catch(()=>({output:""})),r.execute("marketplace stats --json",1e4).catch(()=>({output:""}))]);z.value=We(e.output),K.value=He(t.output),I.value=Xe(p.output)}catch(e){g.error(s("marketplace.msg.loadFailed")+": "+(e?.message||e))}finally{C.value=!1}}async function $e(){const e=c.name.trim();if(!e){g.warning(s("marketplace.msg.publishEmpty"));return}w.value=!0;try{const t=[`marketplace publish "${e.replace(/"/g,'\\"')}"`];c.version.trim()&&t.push(`--version "${c.version.trim().replace(/"/g,'\\"')}"`),c.description.trim()&&t.push(`--description "${c.description.trim().replace(/"/g,'\\"')}"`),c.endpoint.trim()&&t.push(`--endpoint "${c.endpoint.trim().replace(/"/g,'\\"')}"`),c.owner.trim()&&t.push(`--owner "${c.owner.trim().replace(/"/g,'\\"')}"`),t.push(`--status ${c.status}`),t.push("--json");const{output:p}=await r.execute(t.join(" "),15e3);if(/error|failed|失败/i.test(p)&&!/"id"/.test(p)){g.error(s("marketplace.msg.publishFailed")+": "+p.slice(0,120));return}g.success(s("marketplace.msg.publishSuccess")),E.value=!1,te(),await T()}catch(t){g.error(s("marketplace.msg.publishFailed")+": "+(t?.message||t))}finally{w.value=!1}}function xe(e){if(e.status!=="published"){g.warning(s("marketplace.msg.recordOnlyPublished"));return}u.serviceId=e.id,u.caller="",u.status="success",u.durationMs=null,u.error="",Q.value=e.name,V.value=!0}async function Se(){J.value=!0;try{const e=[`marketplace record ${u.serviceId}`];u.caller.trim()&&e.push(`--caller "${u.caller.trim().replace(/"/g,'\\"')}"`),e.push(`--status ${u.status}`),u.durationMs!=null&&e.push(`--duration-ms ${u.durationMs}`),(u.status==="failed"||u.status==="timeout")&&u.error.trim()&&e.push(`--error "${u.error.trim().replace(/"/g,'\\"')}"`),e.push("--json");const{output:t}=await r.execute(e.join(" "),15e3);if(/error|failed|失败/i.test(t)&&!/"id"/.test(t)){g.error(s("marketplace.msg.recordFailed")+": "+t.slice(0,120));return}g.success(s("marketplace.msg.recordSuccess")),V.value=!1,q.value="invocations",await T()}catch(e){g.error(s("marketplace.msg.recordFailed")+": "+(e?.message||e))}finally{J.value=!1}}async function Ce(e,t){if(t!==e.status)try{const{output:p}=await r.execute(`marketplace status ${e.id} ${t} --json`,1e4);if(/error|invalid|失败/i.test(p)&&!/"status"/.test(p)){g.error(s("marketplace.msg.transitionFailed")+": "+p.slice(0,120));return}g.success(s("marketplace.msg.transitionSuccess",{label:M(t)})),await T()}catch(p){g.error(s("marketplace.msg.transitionFailed")+": "+(p?.message||p))}}function te(){c.name="",c.version="",c.description="",c.endpoint="",c.owner="",c.status="published"}function we(){u.serviceId="",u.caller="",u.status="success",u.durationMs=null,u.error="",Q.value=""}return Ke(T),(e,t)=>{const p=v("a-button"),ze=v("a-space"),U=v("a-statistic"),F=v("a-card"),j=v("a-col"),Me=v("a-row"),ae=v("a-radio-button"),Ae=v("a-radio-group"),Re=v("a-input-search"),W=v("a-tag"),Ie=v("a-menu-item"),Le=v("a-menu"),Oe=v("a-dropdown"),le=v("a-table"),oe=v("a-tab-pane"),G=v("a-select-option"),H=v("a-select"),Te=v("a-tabs"),N=v("a-input"),x=v("a-form-item"),ne=v("a-textarea"),se=v("a-form"),re=v("a-modal"),Ue=v("a-input-number");return i(),f("div",null,[h("div",Ye,[h("div",null,[h("h2",Ze,d(e.$t("marketplace.title")),1),h("p",et,d(e.$t("marketplace.subtitle")),1)]),l(ze,null,{default:o(()=>[l(p,{loading:C.value,onClick:T},{icon:o(()=>[l(y(De))]),default:o(()=>[k(" "+d(e.$t("marketplace.refresh")),1)]),_:1},8,["loading"]),l(p,{type:"primary",onClick:t[0]||(t[0]=a=>E.value=!0)},{icon:o(()=>[l(y(Be))]),default:o(()=>[k(" "+d(e.$t("marketplace.publish")),1)]),_:1})]),_:1})]),l(Me,{gutter:[16,16],style:{"margin-bottom":"20px"}},{default:o(()=>[l(j,{xs:12,sm:8,lg:5},{default:o(()=>[l(F,{style:{background:"var(--bg-card)","border-color":"var(--border-color)"}},{default:o(()=>[l(U,{title:e.$t("marketplace.stats.total"),value:z.value.length,"value-style":{color:"#1677ff",fontSize:"20px"}},{prefix:o(()=>[l(y(ie))]),_:1},8,["title","value"])]),_:1})]),_:1}),l(j,{xs:12,sm:8,lg:5},{default:o(()=>[l(F,{style:{background:"var(--bg-card)","border-color":"var(--border-color)"}},{default:o(()=>[l(U,{title:e.$t("marketplace.stats.published"),value:ve.value,"value-style":{color:"#52c41a",fontSize:"20px"}},{prefix:o(()=>[l(y(Ee))]),_:1},8,["title","value"])]),_:1})]),_:1}),l(j,{xs:12,sm:8,lg:5},{default:o(()=>[l(F,{style:{background:"var(--bg-card)","border-color":"var(--border-color)"}},{default:o(()=>[l(U,{title:e.$t("marketplace.stats.invocations"),value:I.value.total,"value-style":{color:"#722ed1",fontSize:"20px"}},{prefix:o(()=>[l(y(ue))]),_:1},8,["title","value"])]),_:1})]),_:1}),l(j,{xs:12,sm:8,lg:5},{default:o(()=>[l(F,{style:{background:"var(--bg-card)","border-color":"var(--border-color)"}},{default:o(()=>[l(U,{title:e.$t("marketplace.stats.successRate"),value:fe.value,suffix:"%",precision:1,"value-style":{color:I.value.successRate>=.9?"#52c41a":"#faad14",fontSize:"20px"}},{prefix:o(()=>[l(y(Ve))]),_:1},8,["title","value","value-style"])]),_:1})]),_:1}),l(j,{xs:24,sm:8,lg:4},{default:o(()=>[l(F,{style:{background:"var(--bg-card)","border-color":"var(--border-color)"}},{default:o(()=>[l(U,{title:e.$t("marketplace.stats.avgDuration"),value:I.value.avgDurationMs,suffix:"ms","value-style":{color:"#faad14",fontSize:"20px"}},{prefix:o(()=>[l(y(Je))]),_:1},8,["title","value"])]),_:1})]),_:1})]),_:1}),l(Te,{activeKey:q.value,"onUpdate:activeKey":t[4]||(t[4]=a=>q.value=a),class:"market-tabs"},{default:o(()=>[l(oe,{key:"services",tab:e.$t("marketplace.tabs.services")},{default:o(()=>[h("div",tt,[l(Ae,{value:L.value,"onUpdate:value":t[1]||(t[1]=a=>L.value=a),size:"small","button-style":"solid"},{default:o(()=>[l(ae,{value:""},{default:o(()=>[k(d(e.$t("marketplace.filter.all")),1)]),_:1}),(i(!0),f($,null,P(y(X),a=>(i(),S(ae,{key:a,value:a},{default:o(()=>[k(d(M(a)),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value"]),l(Re,{value:O.value,"onUpdate:value":t[2]||(t[2]=a=>O.value=a),placeholder:e.$t("marketplace.filter.namePlaceholder"),"allow-clear":"",style:{"max-width":"280px"}},null,8,["value","placeholder"])]),l(le,{columns:pe.value,"data-source":ke.value,pagination:{pageSize:20,showTotal:a=>e.$t("marketplace.table.totalSuffix",{n:a})},size:"small",loading:C.value,style:{background:"var(--bg-card)"}},{bodyCell:o(({column:a,record:m})=>[a.key==="name"?(i(),f($,{key:0},[h("span",at,d(m.name),1),m.version?(i(),S(W,{key:0,color:"blue",style:{"margin-left":"6px","font-size":"10px"}},{default:o(()=>[k(" v"+d(m.version),1)]),_:2},1024)):b("",!0),m.description?(i(),f("div",lt,d(ge(m.description,80)),1)):b("",!0)],64)):b("",!0),a.key==="status"?(i(),S(W,{key:1,color:be(m.status)},{default:o(()=>[k(d(M(m.status)),1)]),_:2},1032,["color"])):b("",!0),a.key==="invocationCount"?(i(),f("span",ot,d(m.invocationCount),1)):b("",!0),a.key==="owner"?(i(),f($,{key:3},[m.owner?(i(),f("span",nt,d(ee(m.owner)),1)):(i(),f("span",st,"—"))],64)):b("",!0),a.key==="createdAt"?(i(),f("span",rt,d(y(de)(m.createdAt)),1)):b("",!0),a.key==="action"?(i(),f($,{key:5},[l(p,{size:"small",type:"link",onClick:A=>xe(m)},{default:o(()=>[k(d(e.$t("marketplace.table.actionRecord")),1)]),_:1},8,["onClick"]),l(Oe,{trigger:["click"]},{overlay:o(()=>[l(Le,{onClick:A=>Ce(m,A.key)},{default:o(()=>[(i(!0),f($,null,P(y(X),A=>(i(),S(Ie,{key:A,disabled:A===m.status},{default:o(()=>[k(d(M(A)),1)]),_:2},1032,["disabled"]))),128))]),_:2},1032,["onClick"])]),default:o(()=>[l(p,{size:"small",type:"link"},{default:o(()=>[k(d(e.$t("marketplace.table.statusDropdown")),1)]),_:1})]),_:2},1024)],64)):b("",!0)]),emptyText:o(()=>[h("div",it,[l(y(ie),{style:{"font-size":"36px","margin-bottom":"10px",display:"block"}}),k(" "+d(L.value||O.value?e.$t("marketplace.table.emptyFiltered"):e.$t("marketplace.table.empty")),1)])]),_:1},8,["columns","data-source","pagination","loading"])]),_:1},8,["tab"]),l(oe,{key:"invocations",tab:e.$t("marketplace.tabs.invocations")},{default:o(()=>[h("div",ut,[l(H,{value:B.value,"onUpdate:value":t[3]||(t[3]=a=>B.value=a),placeholder:e.$t("marketplace.filter.byService"),"allow-clear":"",style:{width:"280px"},size:"small"},{default:o(()=>[(i(!0),f($,null,P(z.value,a=>(i(),S(G,{key:a.id,value:a.id},{default:o(()=>[k(d(a.name)+" ("+d(M(a.status))+") ",1)]),_:2},1032,["value"]))),128))]),_:1},8,["value","placeholder"])]),l(le,{columns:me.value,"data-source":ye.value,pagination:{pageSize:20,showTotal:a=>e.$t("marketplace.table.totalSuffix",{n:a})},size:"small",loading:C.value,style:{background:"var(--bg-card)"}},{bodyCell:o(({column:a,record:m})=>[a.key==="service"?(i(),f($,{key:0},[h("span",ct,d(he(m.serviceId)),1),h("div",dt,d(m.serviceId.slice(0,8)),1)],64)):b("",!0),a.key==="caller"?(i(),f($,{key:1},[m.callerId?(i(),f("span",pt,d(ee(m.callerId)),1)):(i(),f("span",mt,"—"))],64)):b("",!0),a.key==="status"?(i(),S(W,{key:2,color:_e(m.status)},{default:o(()=>[k(d(Z(m.status)),1)]),_:2},1032,["color"])):b("",!0),a.key==="durationMs"?(i(),f($,{key:3},[m.durationMs!=null?(i(),f("span",vt,d(m.durationMs)+" ms ",1)):(i(),f("span",ft,"—"))],64)):b("",!0),a.key==="createdAt"?(i(),f("span",kt,d(y(de)(m.createdAt)),1)):b("",!0)]),emptyText:o(()=>[h("div",yt,[l(y(ue),{style:{"font-size":"36px","margin-bottom":"10px",display:"block"}}),k(" "+d(e.$t("marketplace.table.emptyInvocations")),1)])]),_:1},8,["columns","data-source","pagination","loading"])]),_:1},8,["tab"])]),_:1},8,["activeKey"]),l(re,{open:E.value,"onUpdate:open":t[11]||(t[11]=a=>E.value=a),title:e.$t("marketplace.publish_modal.title"),"confirm-loading":w.value,width:560,"ok-text":e.$t("marketplace.publish_modal.ok"),"cancel-text":e.$t("marketplace.publish_modal.cancel"),onOk:$e,onCancel:te},{default:o(()=>[l(se,{"label-col":{span:5},"wrapper-col":{span:19},style:{"margin-top":"16px"}},{default:o(()=>[l(x,{label:e.$t("marketplace.publish_modal.nameLabel"),required:""},{default:o(()=>[l(N,{value:c.name,"onUpdate:value":t[5]||(t[5]=a=>c.name=a),placeholder:e.$t("marketplace.publish_modal.namePlaceholder")},null,8,["value","placeholder"])]),_:1},8,["label"]),l(x,{label:e.$t("marketplace.publish_modal.versionLabel")},{default:o(()=>[l(N,{value:c.version,"onUpdate:value":t[6]||(t[6]=a=>c.version=a),placeholder:e.$t("marketplace.publish_modal.versionPlaceholder")},null,8,["value","placeholder"])]),_:1},8,["label"]),l(x,{label:e.$t("marketplace.publish_modal.descLabel")},{default:o(()=>[l(ne,{value:c.description,"onUpdate:value":t[7]||(t[7]=a=>c.description=a),"auto-size":{minRows:2,maxRows:5}},null,8,["value"])]),_:1},8,["label"]),l(x,{label:e.$t("marketplace.publish_modal.endpointLabel")},{default:o(()=>[l(N,{value:c.endpoint,"onUpdate:value":t[8]||(t[8]=a=>c.endpoint=a),placeholder:e.$t("marketplace.publish_modal.endpointPlaceholder")},null,8,["value","placeholder"])]),_:1},8,["label"]),l(x,{label:e.$t("marketplace.publish_modal.ownerLabel")},{default:o(()=>[l(N,{value:c.owner,"onUpdate:value":t[9]||(t[9]=a=>c.owner=a),placeholder:e.$t("marketplace.publish_modal.ownerPlaceholder")},null,8,["value","placeholder"])]),_:1},8,["label"]),l(x,{label:e.$t("marketplace.publish_modal.statusLabel")},{default:o(()=>[l(H,{value:c.status,"onUpdate:value":t[10]||(t[10]=a=>c.status=a)},{default:o(()=>[(i(!0),f($,null,P(y(X),a=>(i(),S(G,{key:a,value:a},{default:o(()=>[k(d(M(a)),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value"])]),_:1},8,["label"])]),_:1})]),_:1},8,["open","title","confirm-loading","ok-text","cancel-text"]),l(re,{open:V.value,"onUpdate:open":t[16]||(t[16]=a=>V.value=a),title:e.$t("marketplace.record_modal.title",{name:Q.value}),"confirm-loading":J.value,width:520,"ok-text":e.$t("marketplace.record_modal.ok"),"cancel-text":e.$t("marketplace.record_modal.cancel"),onOk:Se,onCancel:we},{default:o(()=>[l(se,{"label-col":{span:5},"wrapper-col":{span:19},style:{"margin-top":"16px"}},{default:o(()=>[l(x,{label:e.$t("marketplace.record_modal.callerLabel")},{default:o(()=>[l(N,{value:u.caller,"onUpdate:value":t[12]||(t[12]=a=>u.caller=a),placeholder:e.$t("marketplace.record_modal.callerPlaceholder")},null,8,["value","placeholder"])]),_:1},8,["label"]),l(x,{label:e.$t("marketplace.record_modal.statusLabel")},{default:o(()=>[l(H,{value:u.status,"onUpdate:value":t[13]||(t[13]=a=>u.status=a)},{default:o(()=>[(i(!0),f($,null,P(y(qe),a=>(i(),S(G,{key:a,value:a},{default:o(()=>[k(d(Z(a)),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value"])]),_:1},8,["label"]),l(x,{label:e.$t("marketplace.record_modal.durationLabel")},{default:o(()=>[l(Ue,{value:u.durationMs,"onUpdate:value":t[14]||(t[14]=a=>u.durationMs=a),min:0,max:36e5,style:{width:"100%"}},null,8,["value"])]),_:1},8,["label"]),u.status==="failed"||u.status==="timeout"?(i(),S(x,{key:0,label:e.$t("marketplace.record_modal.errorLabel")},{default:o(()=>[l(ne,{value:u.error,"onUpdate:value":t[15]||(t[15]=a=>u.error=a),"auto-size":{minRows:2,maxRows:4}},null,8,["value"])]),_:1},8,["label"])):b("",!0)]),_:1})]),_:1},8,["open","title","confirm-loading","ok-text","cancel-text"])])}}},xt=Fe(bt,[["__scopeId","data-v-72a2b91d"]]);export{xt as default};