chainlesschain 0.162.138 → 0.162.139
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +2 -2
- package/src/assets/web-panel/assets/{AIOps-CuPMTsPl.js → AIOps-BjyqpVik.js} +1 -1
- package/src/assets/web-panel/assets/{ActionButton-Pcw6Nehr.js → ActionButton-CwYOOFLa.js} +1 -1
- package/src/assets/web-panel/assets/{Analytics-CieGgEDR.js → Analytics-C7E0r1E5.js} +3 -3
- package/src/assets/web-panel/assets/{AppLayout-zb-Tuj8P.js → AppLayout-D1pRDTB8.js} +4 -4
- package/src/assets/web-panel/assets/{Audit-Bl5hU9qI.js → Audit-DpQ2GKOz.js} +1 -1
- package/src/assets/web-panel/assets/{Backup-DNaYxZ6v.js → Backup-BHkVhyPi.js} +1 -1
- package/src/assets/web-panel/assets/{BaseInput-dPZ-dsTl.js → BaseInput-CbWO-eSy.js} +1 -1
- package/src/assets/web-panel/assets/{Chat-BVcgPDj1.js → Chat-Bs8s2aYH.js} +6 -6
- package/src/assets/web-panel/assets/{ChatBubbleRenderer-44XDb8oI.js → ChatBubbleRenderer-BACaNfN5.js} +1 -1
- package/src/assets/web-panel/assets/{Checkbox-aLXs1uti.js → Checkbox-Df0A-YX2.js} +1 -1
- package/src/assets/web-panel/assets/Codegen-BewJ66ux.js +1 -0
- package/src/assets/web-panel/assets/{Col-CYZ20nTQ.js → Col-DP_3MVb9.js} +1 -1
- package/src/assets/web-panel/assets/{Community-Ba30bSgI.js → Community-9E27WhY8.js} +1 -1
- package/src/assets/web-panel/assets/{Compact-5ZdU4Ot5.js → Compact-DYMqRqFR.js} +1 -1
- package/src/assets/web-panel/assets/Compliance-DAcZb1fK.js +1 -0
- package/src/assets/web-panel/assets/{Cowork-hJEAO23w.js → Cowork-Bf5NdhK8.js} +3 -3
- package/src/assets/web-panel/assets/{Cron-DUZqmMSA.js → Cron-CfAVKHcY.js} +2 -2
- package/src/assets/web-panel/assets/{Crosschain-CeZm2yl1.js → Crosschain-Dvp2UgPD.js} +1 -1
- package/src/assets/web-panel/assets/{DID-CuG0n4cE.js → DID-D7LNrQls.js} +2 -2
- package/src/assets/web-panel/assets/{Dashboard-93Wb_kK4.js → Dashboard-DAmnaDs0.js} +2 -2
- package/src/assets/web-panel/assets/{Dropdown-CKGGkbfB.js → Dropdown-ZmLJqePq.js} +1 -1
- package/src/assets/web-panel/assets/{EmailListRenderer-BscT321c.js → EmailListRenderer-L3usdFtq.js} +1 -1
- package/src/assets/web-panel/assets/{FamilyGuardDashboard-DbhWii9j.js → FamilyGuardDashboard-Deq_yrUl.js} +1 -1
- package/src/assets/web-panel/assets/{Federation-DrDD75GW.js → Federation-CgELVFo8.js} +1 -1
- package/src/assets/web-panel/assets/{FormItemContext-DnZFhXQk.js → FormItemContext-DlqAcWWQ.js} +1 -1
- package/src/assets/web-panel/assets/{GenericCardRenderer-Cm9-z_vw.js → GenericCardRenderer-DK4UTN4g.js} +1 -1
- package/src/assets/web-panel/assets/{Git-D1glGFmw.js → Git-CyKfkp5-.js} +2 -2
- package/src/assets/web-panel/assets/{Governance-Xf75VdIY.js → Governance-cbooBGs5.js} +1 -1
- package/src/assets/web-panel/assets/{Inference-BWBSGdwG.js → Inference-CksFTYsi.js} +1 -1
- package/src/assets/web-panel/assets/{KnowledgeGraph-DwwINSlm.js → KnowledgeGraph-BO1uxy5K.js} +1 -1
- package/src/assets/web-panel/assets/{Logs-UIkOQs5w.js → Logs-BSru6YEf.js} +2 -2
- package/src/assets/web-panel/assets/{Marketplace-D9yeS1ZW.js → Marketplace-X1EnfKEG.js} +1 -1
- package/src/assets/web-panel/assets/{McpTools-CKmxSse5.js → McpTools-DQ8AF2Eq.js} +5 -5
- package/src/assets/web-panel/assets/{Memory-DQffKFFc.js → Memory-gs49JsHg.js} +2 -2
- package/src/assets/web-panel/assets/{MobileBridge-DAyR8I8a.js → MobileBridge-CqlQE5io.js} +1 -1
- package/src/assets/web-panel/assets/{MobileProjects-DpfoO5f8.js → MobileProjects-DZSDnhmK.js} +1 -1
- package/src/assets/web-panel/assets/{Mtc-D6C8LSpp.js → Mtc-B634Rhkr.js} +3 -3
- package/src/assets/web-panel/assets/{MtcAudit-Da3wssbR.js → MtcAudit-69JQnSR0.js} +2 -2
- package/src/assets/web-panel/assets/{Multisig-BHDgke1X.js → Multisig-tTCGyjGm.js} +3 -3
- package/src/assets/web-panel/assets/{NLProgramming-BDx3P3ux.js → NLProgramming-1FqwFVcW.js} +1 -1
- package/src/assets/web-panel/assets/{Notes-jeSS-7PQ.js → Notes-DID405ur.js} +3 -3
- package/src/assets/web-panel/assets/{NotificationSettings-DdN4hWFL.js → NotificationSettings-CXNYx0cZ.js} +1 -1
- package/src/assets/web-panel/assets/{OrderTableRenderer-CdZIdIMR.js → OrderTableRenderer-A9C3HW72.js} +1 -1
- package/src/assets/web-panel/assets/{Organization-CBYxcerk.js → Organization-DMgQH-CU.js} +4 -4
- package/src/assets/web-panel/assets/{Overflow-B10ibcqr.js → Overflow-CHN1EPl9.js} +1 -1
- package/src/assets/web-panel/assets/{P2P-Mi93j-hW.js → P2P-BYFj-dLm.js} +2 -2
- package/src/assets/web-panel/assets/{PdhVaultBrowser-CJ-izVgS.js → PdhVaultBrowser-BvZGpyDM.js} +3 -3
- package/src/assets/web-panel/assets/{Permissions-H_VgO3BD.js → Permissions-2Oi6VKc2.js} +4 -4
- package/src/assets/web-panel/assets/{PersonalDataHub-DqNumQ9u.js → PersonalDataHub-DolPU_Np.js} +3 -3
- package/src/assets/web-panel/assets/{Pipeline-D76DlVwj.js → Pipeline-YHNszkpa.js} +1 -1
- package/src/assets/web-panel/assets/{Privacy-COjrBObM.js → Privacy-tYviPRQA.js} +1 -1
- package/src/assets/web-panel/assets/{ProjectInit-C_BzcMTx.js → ProjectInit-CxccbXHo.js} +2 -2
- package/src/assets/web-panel/assets/{ProjectSettings-DjSiszub.js → ProjectSettings-BdOH1BtD.js} +2 -2
- package/src/assets/web-panel/assets/{Projects-CksWRc0_.js → Projects-BX22DGjc.js} +1 -1
- package/src/assets/web-panel/assets/{Providers-DSkUQSJy.js → Providers-3d8IuDnm.js} +1 -1
- package/src/assets/web-panel/assets/{QuickAsk-vkWxqNXN.js → QuickAsk-4RjMMPk0.js} +1 -1
- package/src/assets/web-panel/assets/Recommend-EHvzZEIn.js +1 -0
- package/src/assets/web-panel/assets/{Reputation-BTpPsrWX.js → Reputation-DuEWW6kj.js} +1 -1
- package/src/assets/web-panel/assets/{Row-UkpIdv_5.js → Row-D7Nvl2TM.js} +1 -1
- package/src/assets/web-panel/assets/{RssFeed-CShx4Tof.js → RssFeed-DmJRXG-h.js} +2 -2
- package/src/assets/web-panel/assets/{Search-y_gmCTbc.js → Search-DMS8_dfI.js} +1 -1
- package/src/assets/web-panel/assets/{Security-DOevA2tP.js → Security-Drc58EcJ.js} +3 -3
- package/src/assets/web-panel/assets/{Services-vTNSkBu8.js → Services-75Vnut74.js} +2 -2
- package/src/assets/web-panel/assets/{Skeleton-BJqUn750.js → Skeleton-MGLhe_9D.js} +1 -1
- package/src/assets/web-panel/assets/{Skills-DVIOCnHU.js → Skills-DN86vUQ1.js} +1 -1
- package/src/assets/web-panel/assets/{Sla-1gL55FO0.js → Sla-BNYmcD3q.js} +1 -1
- package/src/assets/web-panel/assets/{SpeechSettings-41p-Y13I.js → SpeechSettings-BGMi1Tt0.js} +1 -1
- package/src/assets/web-panel/assets/{SyncSettings-DqlKeekk.js → SyncSettings-znvFAtDh.js} +2 -2
- package/src/assets/web-panel/assets/{Tasks-DnYAmxUK.js → Tasks-ilsYfEIT.js} +1 -1
- package/src/assets/web-panel/assets/{Templates-7mQ2Y5aY.js → Templates-BjeAPG46.js} +1 -1
- package/src/assets/web-panel/assets/{Tenant-UOv9tHlz.js → Tenant-Dis7v-gZ.js} +1 -1
- package/src/assets/web-panel/assets/{Terminal-Dc5aH3eZ.js → Terminal-CIM4YqMO.js} +2 -2
- package/src/assets/web-panel/assets/{TimelineRenderer-CkXcX7Kx.js → TimelineRenderer-CI8rAk8p.js} +1 -1
- package/src/assets/web-panel/assets/{Tokens-CFpwWXql.js → Tokens-By8BU_jE.js} +1 -1
- package/src/assets/web-panel/assets/{Trigger-C-qdyoCA.js → Trigger-DGPdwVSb.js} +1 -1
- package/src/assets/web-panel/assets/{Trust-GQgHeP6y.js → Trust-B2KgLrWz.js} +1 -1
- package/src/assets/web-panel/assets/{UkeySign-L3QNRCBa.js → UkeySign-C9-Gi7Q8.js} +1 -1
- package/src/assets/web-panel/assets/{VideoEditing-o9IEduZP.js → VideoEditing-B_MYHXNA.js} +1 -1
- package/src/assets/web-panel/assets/{Wallet-CAF8ulAR.js → Wallet-DEElZ9iy.js} +4 -4
- package/src/assets/web-panel/assets/{WebAuthn-C0173yjI.js → WebAuthn-DGfX5M4M.js} +4 -4
- package/src/assets/web-panel/assets/{WorkflowEditor-ACXCzyXq.js → WorkflowEditor-CzobPnEl.js} +1 -1
- package/src/assets/web-panel/assets/{chat-BS7lGBHP.js → chat-CGfNyZ1i.js} +1 -1
- package/src/assets/web-panel/assets/{colors-BfEp5UAL.js → colors-eugx7Mvr.js} +1 -1
- package/src/assets/web-panel/assets/{compact-item-q8OE4Ozt.js → compact-item-Bwa6U-T2.js} +1 -1
- package/src/assets/web-panel/assets/{createContext-CKFXnLud.js → createContext-C1FYu9LP.js} +1 -1
- package/src/assets/web-panel/assets/devWarning-8JQMOwWk.js +1 -0
- package/src/assets/web-panel/assets/{hasIn-Cf5DP_7f.js → hasIn-DPxP5l0C.js} +1 -1
- package/src/assets/web-panel/assets/{index-CS05FAIM.js → index-7zLoKDTe.js} +1 -1
- package/src/assets/web-panel/assets/{index-CSkHnOBN.js → index-B53g2Clv.js} +1 -1
- package/src/assets/web-panel/assets/{index-eY22W8SN.js → index-BGHo1o4s.js} +1 -1
- package/src/assets/web-panel/assets/{index-DyGGUw_t.js → index-BS1xu0rQ.js} +1 -1
- package/src/assets/web-panel/assets/{index-1Da3-9ns.js → index-BS70dGYO.js} +1 -1
- package/src/assets/web-panel/assets/{index-B6ZMEstH.js → index-Bb2ty5sk.js} +1 -1
- package/src/assets/web-panel/assets/index-BeB3IJgK.js +1 -0
- package/src/assets/web-panel/assets/{index-DetDuxlQ.js → index-BmQJc3ln.js} +1 -1
- package/src/assets/web-panel/assets/{index-DAT9P_Mp.js → index-BupQygiJ.js} +1 -1
- package/src/assets/web-panel/assets/{index-5DxIt-Ur.js → index-BvmW7wzo.js} +1 -1
- package/src/assets/web-panel/assets/{index-DCIFLx2r.js → index-CF3uLxNL.js} +1 -1
- package/src/assets/web-panel/assets/{index-CcQdzuQg.js → index-CPqP2PfJ.js} +1 -1
- package/src/assets/web-panel/assets/{index-BcGfUFmL.js → index-CT5L_CXh.js} +1 -1
- package/src/assets/web-panel/assets/{index-Dh8r6PnR.js → index-CZHhVBuI.js} +3 -3
- package/src/assets/web-panel/assets/{index-DyRQ99wF.js → index-CdLjkrB6.js} +1 -1
- package/src/assets/web-panel/assets/{index-CdjHqYqj.js → index-CfQ5PTd1.js} +1 -1
- package/src/assets/web-panel/assets/{index-8d4lYAnX.js → index-CjZdkGfn.js} +1 -1
- package/src/assets/web-panel/assets/{index-CbiOsq_p.js → index-CrmLWCQz.js} +1 -1
- package/src/assets/web-panel/assets/{index-grDQGSH_.js → index-CsBxXZxP.js} +1 -1
- package/src/assets/web-panel/assets/{index-DAJEOleL.js → index-DCEL0Sq5.js} +1 -1
- package/src/assets/web-panel/assets/{index-cnkpL_jy.js → index-DEqpRGWL.js} +1 -1
- package/src/assets/web-panel/assets/{index-C3AVANs9.js → index-DGCKks8H.js} +1 -1
- package/src/assets/web-panel/assets/{index-BXfWxqTR.js → index-DGLs7RCU.js} +1 -1
- package/src/assets/web-panel/assets/{index-DEL2Cxkq.js → index-DIS4kjG5.js} +1 -1
- package/src/assets/web-panel/assets/{index-nU0xnvE9.js → index-DUPZt5qj.js} +1 -1
- package/src/assets/web-panel/assets/{index--jzP01Dj.js → index-DYJU7kh5.js} +1 -1
- package/src/assets/web-panel/assets/{index-D-UN86XJ.js → index-DgHp4B_U.js} +1 -1
- package/src/assets/web-panel/assets/{index-DYKqvq8V.js → index-DjnV59Xj.js} +1 -1
- package/src/assets/web-panel/assets/{index-ByhdfDtv.js → index-DlWMZkiT.js} +1 -1
- package/src/assets/web-panel/assets/{index-xM4jUoHW.js → index-DmItMTIG.js} +1 -1
- package/src/assets/web-panel/assets/{index-DJUlI6gf.js → index-DpxSmG35.js} +1 -1
- package/src/assets/web-panel/assets/{index-CzE1DfQ_.js → index-Dy4579Ij.js} +1 -1
- package/src/assets/web-panel/assets/{index-c5-WuEIH.js → index-F8cVavdx.js} +1 -1
- package/src/assets/web-panel/assets/index-GPeMXjim.js +1 -0
- package/src/assets/web-panel/assets/{index-DH0vQxUe.js → index-IV3sYwYT.js} +1 -1
- package/src/assets/web-panel/assets/{index-r7ZY3ffW.js → index-l3Xqk-Qy.js} +1 -1
- package/src/assets/web-panel/assets/{index-DnVxM_pX.js → index-nlcITZNH.js} +1 -1
- package/src/assets/web-panel/assets/{index-D7oq_59Y.js → index-tuzP0VQ3.js} +1 -1
- package/src/assets/web-panel/assets/{index-CHnc9BTl.js → index-wSXZmjm4.js} +1 -1
- package/src/assets/web-panel/assets/{initDefaultProps-Usi907C-.js → initDefaultProps-DIrcKmPt.js} +1 -1
- package/src/assets/web-panel/assets/{motion-BisW42Zx.js → motion-DTovTuAU.js} +1 -1
- package/src/assets/web-panel/assets/{move-DiQ9MJiV.js → move-DKgvKHE6.js} +1 -1
- package/src/assets/web-panel/assets/{mtc-parser-2gfA5DGK.js → mtc-parser-mPObl7Tk.js} +1 -1
- package/src/assets/web-panel/assets/{omit-DV6-xyI5.js → omit-yGhlbd2A.js} +1 -1
- package/src/assets/web-panel/assets/{pickAttrs-CEa1NSzc.js → pickAttrs-DWnGB1v7.js} +1 -1
- package/src/assets/web-panel/assets/{placementArrow-CRtBgFKf.js → placementArrow-Cu1EqR5y.js} +1 -1
- package/src/assets/web-panel/assets/{responsiveObserve-BcHZcnQx.js → responsiveObserve-BTFVhoF6.js} +1 -1
- package/src/assets/web-panel/assets/{slide-PfuTm9Ex.js → slide-qH4krUK2.js} +1 -1
- package/src/assets/web-panel/assets/{statusUtils-8IX7oIFo.js → statusUtils-BWzw9lgU.js} +1 -1
- package/src/assets/web-panel/assets/{styleChecker-B4pe7rFW.js → styleChecker-DNfk_Lx8.js} +1 -1
- package/src/assets/web-panel/assets/{useFlexGapSupport-C7bjaPsk.js → useFlexGapSupport-jJbSjNNH.js} +1 -1
- package/src/assets/web-panel/assets/{useFs-BNvL4beQ.js → useFs-DDCsRxaf.js} +1 -1
- package/src/assets/web-panel/assets/{usePersonalDataHub-Sj42Z-Ua.js → usePersonalDataHub-Dh3sqQDu.js} +1 -1
- package/src/assets/web-panel/assets/{vnode-x93SN88L.js → vnode-dGvThiJe.js} +1 -1
- package/src/assets/web-panel/assets/{zoom-CRzwdeCE.js → zoom-CXfp55gs.js} +1 -1
- package/src/assets/web-panel/index.html +1 -1
- package/src/assets/web-panel/assets/Codegen-CwGpkO2P.js +0 -1
- package/src/assets/web-panel/assets/Compliance-DoFMYDEx.js +0 -1
- package/src/assets/web-panel/assets/Recommend-CaHJ5YjP.js +0 -1
- package/src/assets/web-panel/assets/devWarning-W_a4Dw4t.js +0 -1
- package/src/assets/web-panel/assets/index-CZL0e3aH.js +0 -1
- package/src/assets/web-panel/assets/index-DipwHsBu.js +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
import{u as d}from"./index-
|
|
1
|
+
import{u as d}from"./index-CZHhVBuI.js";import{u as c}from"./useShellMode-CgR0wCYM.js";function u({accept:l=""}={}){return new Promise(a=>{if(typeof document>"u"){a({canceled:!0,path:null,content:null});return}const n=document.createElement("input");n.type="file",l&&(n.accept=l),n.style.display="none",document.body.appendChild(n);let o=!1;const i=()=>{n.parentNode&&n.parentNode.removeChild(n)},r=()=>{if(o)return;o=!0;const e=n.files&&n.files[0];if(!e){i(),a({canceled:!0,path:null,content:null});return}const t=new FileReader;t.onload=()=>{i(),a({canceled:!1,path:e.name,size:e.size,content:typeof t.result=="string"?t.result:""})},t.onerror=()=>{i(),a({canceled:!1,path:e.name,size:e.size,content:null,reason:"read_failed"})},t.readAsText(e)};n.addEventListener("change",r),n.click()})}function f(l,{defaultPath:a="download.txt"}={}){if(typeof document>"u")return{canceled:!0,path:null};const n=new Blob([l],{type:"text/plain"}),o=URL.createObjectURL(n),i=document.createElement("a");return i.href=o,i.download=a,document.body.appendChild(i),i.click(),document.body.removeChild(i),URL.revokeObjectURL(o),{canceled:!1,path:a}}function p(l){if(!Array.isArray(l))return"";const a=[];for(const n of l)if(Array.isArray(n.extensions))for(const o of n.extensions)a.push(`.${o.replace(/^\./,"")}`);return a.join(",")}function m(){const l=d();async function a(r={}){if(c().isEmbedded){const e=await l.sendRaw({type:"fs.openDialog",title:r.title,filters:r.filters},6e4);if(e&&e.ok===!1)throw new Error(e.error||"fs.openDialog failed");const t=e?.result??e;return{canceled:!!t.canceled,path:t.path??null,content:t.content??null,size:t.size,reason:t.reason}}return u({accept:p(r.filters)})}async function n(r,e={}){if(typeof r!="string")throw new Error("content must be a string");if(c().isEmbedded){const t=await l.sendRaw({type:"fs.saveDialog",title:e.title,defaultPath:e.defaultPath,filters:e.filters,content:r},6e4);if(t&&t.ok===!1)throw new Error(t.error||"fs.saveDialog failed");const s=t?.result??t;return{canceled:!!s.canceled,path:s.path??null}}return f(r,{defaultPath:e.defaultPath})}async function o(r,e={}){const t=JSON.stringify(r,null,2),s={...e,defaultPath:e.defaultPath||"data.json",filters:e.filters||[{name:"JSON",extensions:["json"]}]};return n(t,s)}async function i(r={}){if(!c().isEmbedded)return{canceled:!0,path:null,initialized:!1,unsupported:!0};const e=await l.sendRaw({type:"fs.openDirectory",title:r.title},6e4);if(e&&e.ok===!1)throw new Error(e.error||"fs.openDirectory failed");const t=e?.result??e;return{canceled:!!t.canceled,path:t.path??null,initialized:!!t.initialized}}return{pickFileText:a,saveText:n,saveJson:o,pickDirectory:i}}export{m as u};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{u as f}from"./index-
|
|
1
|
+
import{u as f}from"./index-CZHhVBuI.js";function d(n){if(!n)return n;if(n.error)throw new Error(n.error);return n.result!==void 0?n.result:n}function p(n,t,a,e,r){return typeof n.onMessage!="function"||typeof n.sendRaw!="function"?n.sendRaw({type:t,...a},r).then(d):new Promise((u,s)=>{const l=typeof crypto<"u"&&crypto.randomUUID?crypto.randomUUID():`${Date.now()}-${Math.random().toString(36).slice(2)}`,w=`${t}.event`,g=`${t}.end`;let c=!1,y=()=>{};const o=(i,b)=>{if(!c){c=!0,clearTimeout(m);try{y()}catch{}i(b)}},m=setTimeout(()=>{o(s,new Error(`stream timeout (${r}ms): ${t}`))},r),h=n.onMessage(i=>{if(!(c||!i)&&!(i.id!==l&&i.requestId!==l)){if(i.type===w){if(typeof e=="function")try{e(i.event||i)}catch{}return}if(i.type===g){o(u,d(i));return}i.type==="error"&&o(s,new Error(i.message||"stream error"))}});y=typeof h=="function"?h:()=>{},Promise.resolve(n.sendRaw({id:l,type:t,...a},r)).catch(()=>{})})}function D(){const n=f(),t=(a,e={},r=3e4)=>n.sendRaw({type:a,...e},r).then(d);return{async health(){return await t("personal-data-hub.health",{},8e3)},async stats(){return await t("personal-data-hub.stats",{},8e3)},async listAdapters(){return await t("personal-data-hub.list-adapters",{},5e3)},async pickFile(a={}){try{const e=await n.sendRaw({type:"fs.openDialog",title:a.title,filters:a.filters},6e4),r=e&&e.result!==void 0?e.result:e;return r&&r.ok&&typeof r.filePath=="string"?r.filePath:null}catch{return null}},async adapterReadiness(a){return await t("personal-data-hub.adapter-readiness",Number.isInteger(a)?{timeoutMs:a}:{},15e3)},async syncAdapter(a,e={}){return await t("personal-data-hub.sync-adapter",{name:a,options:e},12e4)},async syncAll(a={}){return await t("personal-data-hub.sync-all",{options:a},6e5)},async registerMock({name:a="mock",count:e=20,seed:r=1}={}){return await t("personal-data-hub.register-mock",{name:a,count:e,seed:r})},async unregister(a){return await t("personal-data-hub.unregister",{name:a})},async ask(a,e={}){return await t("personal-data-hub.ask",{question:a,options:e},18e4)},async queryEvents(a={}){return await t("personal-data-hub.query-events",a,1e4)},async recentAudit(a={}){return await t("personal-data-hub.recent-audit",a,1e4)},async searchEvents(a={}){return await t("personal-data-hub.search-events",a,15e3)},async facetCounts(a={}){return await t("personal-data-hub.facet-counts",a,1e4)},async testEmailAuth(a){return await t("personal-data-hub.test-email-auth",{account:a},3e4)},async registerEmail(a,e={}){return await t("personal-data-hub.register-email",{account:a,opts:e},15e3)},async unregisterEmail(a){return await t("personal-data-hub.unregister-email",{email:a},5e3)},async listEmailAccounts(){return await t("personal-data-hub.list-email-accounts",{},5e3)},async eventDetail(a){return await t("personal-data-hub.event-detail",{eventId:a},5e3)},async syncAdapterStream(a,e={},r){return await p(n,"personal-data-hub.sync-adapter-stream",{name:a,options:e},r,6e5)},async syncAllStream(a={},e){return await p(n,"personal-data-hub.sync-all-stream",{options:a},e,9e5)},async registerAlipay(a,e={}){return await t("personal-data-hub.register-alipay",{account:a,opts:e},15e3)},async unregisterAlipay(a){return await t("personal-data-hub.unregister-alipay",{email:a},5e3)},async listAlipayAccounts(){return await t("personal-data-hub.list-alipay-accounts",{},5e3)},async importAlipayBill({zipPath:a,csvPath:e,zipPassword:r}={}){return await t("personal-data-hub.import-alipay-bill",{zipPath:a,csvPath:e,zipPassword:r},3e5)},async reviewQueueList(a=50){return await t("personal-data-hub.review-queue-list",{limit:a},5e3)},async reviewDecision(a,e){return await t("personal-data-hub.review-decision",{reviewId:a,decision:e},5e3)},async manualMerge(a,e){return await t("personal-data-hub.manual-merge",{aId:a,bId:e},5e3)},async manualUnmerge(a){return await t("personal-data-hub.manual-unmerge",{personId:a},5e3)},async resolverDrain(a=50){return await t("personal-data-hub.resolver-drain",{limit:a},18e4)},async resolverStats(){return await t("personal-data-hub.resolver-stats",{},5e3)},async skillsList(){return await t("personal-data-hub.skills-list",{},5e3)},async runSkill(a,e={}){return await t("personal-data-hub.run-skill",{name:a,options:e},12e4)},async openAichatLogin(a,e={}){return await t("personal-data-hub.aichat-open-login",{vendor:a,opts:e},1e4)},async probeAichatCookies(a,e){return await t("personal-data-hub.aichat-probe-cookies",{vendor:a,cookieHeader:e},1e4)},async registerAichatVendor(a,e,r={}){return await t("personal-data-hub.aichat-register-vendor",{vendor:a,cookies:e,opts:r},3e4)},async rotateAichatLogin(a){return await t("personal-data-hub.aichat-rotate-login",{vendor:a},1e4)},async listAichatAccounts(){return await t("personal-data-hub.list-aichat-accounts",{},5e3)},async unregisterAichat(a){return await t("personal-data-hub.unregister-aichat",{vendor:a},5e3)},async aichatHealthCheckOnce(){return await t("personal-data-hub.aichat-health-check-once",{},3e4)},async probeWechatEnv(){return await t("personal-data-hub.wechat-env-probe",{},15e3)},async registerWechat({account:a,dbPath:e,wechatDataPath:r,fridaOpts:u,keyProviderOverride:s}={}){return await t("personal-data-hub.register-wechat",{account:a,dbPath:e,wechatDataPath:r,fridaOpts:u,keyProviderOverride:s},45e3)},async listWechatAccounts(){return await t("personal-data-hub.list-wechat-accounts",{},5e3)},async unregisterWechat(a){return await t("personal-data-hub.unregister-wechat",{uin:a},5e3)},async bilibiliAdbSync(a={}){return await t("personal-data-hub.bilibili-adb-sync",{limits:a.limits,stagingDir:a.stagingDir,displayName:a.displayName},12e4)},async bilibiliAdbDoctor(){return await t("personal-data-hub.bilibili-adb-doctor",{},15e3)},async weiboAdbSync(a={}){return await t("personal-data-hub.weibo-adb-sync",{limits:a.limits,stagingDir:a.stagingDir,displayName:a.displayName},6e4)},async xhsAdbSync(a={}){return await t("personal-data-hub.xhs-adb-sync",{limits:a.limits,stagingDir:a.stagingDir,displayName:a.displayName},6e4)},async toutiaoAdbSync(a={}){return await t("personal-data-hub.toutiao-adb-sync",{limits:a.limits,stagingDir:a.stagingDir,displayName:a.displayName},9e4)},async kuaishouAdbSync(a={}){return await t("personal-data-hub.kuaishou-adb-sync",{limits:a.limits,stagingDir:a.stagingDir,displayName:a.displayName},12e4)},async bridgeDoctor(){return await t("personal-data-hub.bridge-doctor",{},6e4)},async douyinAdbSync(a={}){return await t("personal-data-hub.douyin-adb-sync",{uid:a.uid,limits:a.limits,stagingDir:a.stagingDir,displayName:a.displayName},6e4)}}}export{D as u};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{N as i,h as a,w as l}from"./index-
|
|
1
|
+
import{N as i,h as a,w as l}from"./index-CZHhVBuI.js";import{a7 as o,k as g,C as d,F as f,A as p}from"./vendor-BvqAck49.js";function c(e){let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0,s=arguments.length>3&&arguments[3]!==void 0?arguments[3]:!1,u=e;if(Array.isArray(e)&&(u=i(e)[0]),!u)return null;const n=o(u,r,s);return n.props=t?a(a({},n.props),r):n.props,l(typeof n.props.class!="object","class must be string"),n}function V(e){let r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},t=arguments.length>2&&arguments[2]!==void 0?arguments[2]:!0;return e.map(s=>c(s,r,t))}function v(e,r,t){p(o(e,a({},r)),t)}const m=e=>(e||[]).some(r=>g(r)?!(r.type===d||r.type===f&&!m(r.children)):!0)?e:null;function h(e,r,t,s){var u;const n=(u=e[r])===null||u===void 0?void 0:u.call(e,t);return m(n)?n:s?.()}export{h as a,V as b,c,v as t};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{K as o}from"./index-
|
|
1
|
+
import{K as o}from"./index-CZHhVBuI.js";import{i as f}from"./motion-DTovTuAU.js";const c=new o("antZoomIn",{"0%":{transform:"scale(0.2)",opacity:0},"100%":{transform:"scale(1)",opacity:1}}),y=new o("antZoomOut",{"0%":{transform:"scale(1)"},"100%":{transform:"scale(0.2)",opacity:0}}),a=new o("antZoomBigIn",{"0%":{transform:"scale(0.8)",opacity:0},"100%":{transform:"scale(1)",opacity:1}}),s=new o("antZoomBigOut",{"0%":{transform:"scale(1)"},"100%":{transform:"scale(0.8)",opacity:0}}),g=new o("antZoomUpIn",{"0%":{transform:"scale(0.8)",transformOrigin:"50% 0%",opacity:0},"100%":{transform:"scale(1)",transformOrigin:"50% 0%"}}),O=new o("antZoomUpOut",{"0%":{transform:"scale(1)",transformOrigin:"50% 0%"},"100%":{transform:"scale(0.8)",transformOrigin:"50% 0%",opacity:0}}),l=new o("antZoomLeftIn",{"0%":{transform:"scale(0.8)",transformOrigin:"0% 50%",opacity:0},"100%":{transform:"scale(1)",transformOrigin:"0% 50%"}}),u=new o("antZoomLeftOut",{"0%":{transform:"scale(1)",transformOrigin:"0% 50%"},"100%":{transform:"scale(0.8)",transformOrigin:"0% 50%",opacity:0}}),p=new o("antZoomRightIn",{"0%":{transform:"scale(0.8)",transformOrigin:"100% 50%",opacity:0},"100%":{transform:"scale(1)",transformOrigin:"100% 50%"}}),z=new o("antZoomRightOut",{"0%":{transform:"scale(1)",transformOrigin:"100% 50%"},"100%":{transform:"scale(0.8)",transformOrigin:"100% 50%",opacity:0}}),K=new o("antZoomDownIn",{"0%":{transform:"scale(0.8)",transformOrigin:"50% 100%",opacity:0},"100%":{transform:"scale(1)",transformOrigin:"50% 100%"}}),w=new o("antZoomDownOut",{"0%":{transform:"scale(1)",transformOrigin:"50% 100%"},"100%":{transform:"scale(0.8)",transformOrigin:"50% 100%",opacity:0}}),I={zoom:{inKeyframes:c,outKeyframes:y},"zoom-big":{inKeyframes:a,outKeyframes:s},"zoom-big-fast":{inKeyframes:a,outKeyframes:s},"zoom-left":{inKeyframes:l,outKeyframes:u},"zoom-right":{inKeyframes:p,outKeyframes:z},"zoom-up":{inKeyframes:g,outKeyframes:O},"zoom-down":{inKeyframes:K,outKeyframes:w}},h=(n,r)=>{const{antCls:m}=n,t=`${m}-${r}`,{inKeyframes:i,outKeyframes:e}=I[r];return[f(t,i,e,r==="zoom-big-fast"?n.motionDurationFast:n.motionDurationMid),{[`
|
|
2
2
|
${t}-enter,
|
|
3
3
|
${t}-appear
|
|
4
4
|
`]:{transform:"scale(0)",opacity:0,animationTimingFunction:n.motionEaseOutCirc,"&-prepare":{transform:"none"}},[`${t}-leave`]:{animationTimingFunction:n.motionEaseInOutCirc}}]};export{h as i,c as z};
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
// Injected by web-ui-server.js at serve time
|
|
9
9
|
window.__CC_CONFIG__ = __CC_CONFIG_PLACEHOLDER__;
|
|
10
10
|
</script>
|
|
11
|
-
<script type="module" crossorigin src="./assets/index-
|
|
11
|
+
<script type="module" crossorigin src="./assets/index-CZHhVBuI.js"></script>
|
|
12
12
|
<link rel="modulepreload" crossorigin href="./assets/vendor-BvqAck49.js">
|
|
13
13
|
<link rel="modulepreload" crossorigin href="./assets/icons-DP3uiYxy.js">
|
|
14
14
|
<link rel="stylesheet" crossorigin href="./assets/index-Cq93VfoF.css">
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{I as m,J as f,U as v,R as i,c as o,K as a,V as c,o as me,a as te,b as J,r as w,P as d,Q as g,F as A,Z,S as k,$ as ve}from"./vendor-BvqAck49.js";import{t as V,_ as Oe,u as pe,b as ye,E as _e,d as R}from"./index-Dh8r6PnR.js";import{a6 as je,aZ as Ee,f as Le,am as Pe,A as Me,Q as De,r as Ne,as as Ue,R as Be}from"./icons-DP3uiYxy.js";const Fe=Object.freeze(["react","vue","express","fastapi","spring_boot"]),ue=Object.freeze(["critical","high","medium","low","info"]);function x(t,n=0){return typeof t=="number"&&Number.isFinite(t)?t:n}function be(t,n=null){if(t==null)return n;if(typeof t!="string")return t;try{return JSON.parse(t)}catch{return n}}function Je(t,n=0){if(!t||typeof t!="object")return null;const s=t.id||"";return s?{key:s,id:s,prompt:String(t.prompt||""),language:t.language??"",framework:t.framework??"",generatedCode:t.generated_code??t.generatedCode??"",fileCount:x(t.file_count??t.fileCount,0),tokenCount:x(t.token_count??t.tokenCount,0),metadata:t.metadata??null,createdAt:t.created_at??t.createdAt??null,_idx:n}:null}function we(t){const n=V(t);return Array.isArray(n)?n.map(Je).filter(Boolean):[]}function Ve(t,n=0){return!t||typeof t!="object"?null:{key:n,rule:String(t.rule||""),severity:String(t.severity||"info").toLowerCase(),match:String(t.match||""),pattern:String(t.pattern||"")}}function qe(t,n=0){if(!t||typeof t!="object")return null;const s=t.id||"";if(!s)return null;const e=be(t.severity_summary??t.severitySummary,null)??t.severity_summary??t.severitySummary,z={};for(const L of ue)z[L]=0;if(e&&typeof e=="object"&&!Array.isArray(e))for(const[L,P]of Object.entries(e))typeof P=="number"&&Number.isFinite(P)&&(z[L]=P);const O=be(t.issues_detail??t.issuesDetail,null)??t.issues_detail??t.issuesDetail,S=Array.isArray(O)?O.map(Ve).filter(Boolean):[];return{key:s,id:s,generationId:t.generation_id??t.generationId??"",codeHash:String(t.code_hash??t.codeHash??""),language:t.language??"",issuesFound:x(t.issues_found??t.issuesFound,0),securityIssues:x(t.security_issues??t.securityIssues,0),severitySummary:z,issuesDetail:S,reviewedAt:t.reviewed_at??t.reviewedAt??null,_idx:n}}function ke(t){const n=V(t);return Array.isArray(n)?n.map(qe).filter(Boolean):[]}function he(t){const n={};for(const O of ue)n[O]=0;const s=V(t);if(!s||typeof s!="object"||Array.isArray(s))return{ok:!1,reviewId:null,reason:"",issuesFound:0,securityIssues:0,severitySummary:n};const e=!!s.reviewId,z={...n};if(s.severitySummary&&typeof s.severitySummary=="object"&&!Array.isArray(s.severitySummary))for(const[O,S]of Object.entries(s.severitySummary))typeof S=="number"&&Number.isFinite(S)&&(z[O]=S);return{ok:e,reviewId:s.reviewId?String(s.reviewId):null,reason:s.reason?String(s.reason):"",issuesFound:x(s.issuesFound,0),securityIssues:x(s.securityIssues,0),severitySummary:z}}function We(t,n=0){if(!t||typeof t!="object")return null;const s=t.id||"";return s?{key:s,id:s,template:String(t.template||""),projectName:t.project_name??t.projectName??"",options:t.options??null,filesGenerated:x(t.files_generated??t.filesGenerated,0),outputPath:t.output_path??t.outputPath??"",createdAt:t.created_at??t.createdAt??null,_idx:n}:null}function Se(t){const n=V(t);return Array.isArray(n)?n.map(We).filter(Boolean):[]}const He={generations:{total:0,totalTokens:0,totalFiles:0,uniqueLanguages:0},reviews:{total:0,totalIssues:0,totalSecurityIssues:0,avgIssuesPerReview:0},scaffolds:{total:0,byTemplate:{}}};function Ce(t){const n=JSON.parse(JSON.stringify(He));for(const e of Fe)n.scaffolds.byTemplate[e]=0;const s=V(t);if(!s||typeof s!="object"||Array.isArray(s))return n;if(s.generations&&typeof s.generations=="object"&&(n.generations.total=x(s.generations.total,0),n.generations.totalTokens=x(s.generations.totalTokens,0),n.generations.totalFiles=x(s.generations.totalFiles,0),n.generations.uniqueLanguages=x(s.generations.uniqueLanguages,0)),s.reviews&&typeof s.reviews=="object"&&(n.reviews.total=x(s.reviews.total,0),n.reviews.totalIssues=x(s.reviews.totalIssues,0),n.reviews.totalSecurityIssues=x(s.reviews.totalSecurityIssues,0),n.reviews.avgIssuesPerReview=x(s.reviews.avgIssuesPerReview,0)),s.scaffolds&&typeof s.scaffolds=="object"&&(n.scaffolds.total=x(s.scaffolds.total,0),s.scaffolds.byTemplate&&typeof s.scaffolds.byTemplate=="object"))for(const[e,z]of Object.entries(s.scaffolds.byTemplate))typeof z=="number"&&Number.isFinite(z)&&(n.scaffolds.byTemplate[e]=z);return n}function de(t){const n=V(t);if(!n||typeof n!="object"||Array.isArray(n))return{ok:!1,id:null,reason:""};const s=n.generationId||n.scaffoldId||n.reviewId||null;return{ok:!!s,id:s?String(s):null,reason:n.reason?String(n.reason):""}}function Ke(t){if(t==null||t==="")return"—";const n=typeof t=="number"?new Date(t):new Date(String(t));return isNaN(n.getTime())?String(t):n.toLocaleString("zh-CN",{hour12:!1})}const Ze={__name:"Codegen",setup(t,{expose:n}){n();const s=pe(),{t:e}=ye(),z=_e.PRESENTED_IMAGE_SIMPLE,O=w(!1),S=w(!1),L=w(!1),P=w(!1),q=w([]),W=w([]),T=w([]),M=w({generations:{total:0,totalTokens:0,totalFiles:0,uniqueLanguages:0},reviews:{total:0,totalIssues:0,totalSecurityIssues:0,avgIssuesPerReview:0},scaffolds:{total:0,byTemplate:{}}}),j=w("generations"),N=w(""),h=w(""),G=w(""),U=w(!1),B=w(!1),H=w(!1),Q=w(!1),Y=w(!1),y=te({prompt:"",language:"",framework:"",code:"",files:0,tokens:0}),p=te({generationId:"",language:"",code:""}),b=te({template:"react",projectName:"",optionsJson:"",files:0,outputPath:""}),I=w(null),D=w(null),X=w(null),oe=J(()=>[{title:e("codegen.generationCols.prompt"),key:"prompt"},{title:e("codegen.generationCols.language"),key:"language",width:"110px"},{title:e("codegen.generationCols.framework"),key:"framework",width:"110px"},{title:e("codegen.generationCols.fileCount"),key:"fileCount",width:"70px"},{title:e("codegen.generationCols.tokenCount"),key:"tokenCount",width:"110px"},{title:e("codegen.generationCols.createdAt"),key:"createdAt",width:"160px"},{title:e("codegen.generationCols.action"),key:"action",width:"140px"}]),ae=J(()=>[{title:e("codegen.reviewCols.codeHash"),key:"codeHash",width:"180px"},{title:e("codegen.reviewCols.language"),key:"language",width:"110px"},{title:e("codegen.reviewCols.issuesFound"),key:"issuesFound",width:"90px"},{title:e("codegen.reviewCols.securityIssues"),key:"securityIssues",width:"90px"},{title:e("codegen.reviewCols.severityBreak"),key:"severityBreak"},{title:e("codegen.reviewCols.reviewedAt"),key:"reviewedAt",width:"160px"},{title:e("codegen.reviewCols.action"),key:"action",width:"90px"}]),le=J(()=>[{title:e("codegen.scaffoldCols.projectName"),key:"projectName"},{title:e("codegen.scaffoldCols.template"),key:"template",width:"120px"},{title:e("codegen.scaffoldCols.filesGenerated"),key:"filesGenerated",width:"90px"},{title:e("codegen.scaffoldCols.outputPath"),key:"outputPath",width:"300px"},{title:e("codegen.scaffoldCols.createdAt"),key:"createdAt",width:"160px"}]),ne=J(()=>{let r=q.value;if(N.value.trim()){const _=N.value.trim().toLowerCase();r=r.filter(F=>(F.language||"").toLowerCase().includes(_))}if(h.value.trim()){const _=h.value.trim().toLowerCase();r=r.filter(F=>(F.framework||"").toLowerCase().includes(_))}return r}),C=J(()=>G.value?T.value.filter(r=>r.template===G.value):T.value);function $(r){return{react:"cyan",vue:"green",express:"gold",fastapi:"magenta",spring_boot:"red"}[r]||"default"}function re(r){return{react:"#13c2c2",vue:"#52c41a",express:"#faad14",fastapi:"#eb2f96",spring_boot:"#ff4d4f"}[r]||"#888"}function ie(r){const _=`codegen.severityLabels.${r}`,F=e(_);return F===_?r:F}function se(r){return{critical:"red",high:"orange",medium:"gold",low:"default",info:"blue"}[r]||"default"}function l(r){return{critical:"#ff4d4f",high:"#fa8c16",medium:"#faad14",low:"#888",info:"#1677ff"}[r]||"#888"}function u(r,_){return _?Math.round(r/_*100):0}function ee(r,_){return r?r.length<=_?r:r.slice(0,_)+"…":""}function E(r){return`"${String(r).replace(/"/g,'\\"')}"`}async function K(){O.value=!0;try{const[r,_,F,Ge]=await Promise.all([s.execute("codegen list --limit 200 --json",1e4).catch(()=>({output:""})),s.execute("codegen reviews --limit 200 --json",1e4).catch(()=>({output:""})),s.execute("codegen scaffolds --limit 200 --json",1e4).catch(()=>({output:""})),s.execute("codegen stats --json",8e3).catch(()=>({output:""}))]);q.value=we(r.output),W.value=ke(_.output),T.value=Se(F.output),M.value=Ce(Ge.output)}catch(r){R.error(e("codegen.msg.loadFailed")+": "+(r?.message||r))}finally{O.value=!1}}async function Re(){if(!y.prompt.trim()){R.warning(e("codegen.msg.promptEmpty"));return}S.value=!0;try{const r=[`codegen generate -p ${E(y.prompt.trim())}`];y.language.trim()&&r.push(`-l ${E(y.language.trim())}`),y.framework.trim()&&r.push(`-f ${E(y.framework.trim())}`),y.code.trim()&&r.push(`--code ${E(y.code.trim())}`),y.files>0&&r.push(`--files ${y.files}`),y.tokens>0&&r.push(`--tokens ${y.tokens}`),r.push("--json");const{output:_}=await s.execute(r.join(" "),1e4),F=de(_);if(!F.ok){R.error(e("codegen.msg.generateFailed")+": "+(F.reason||_.slice(0,120)));return}R.success(e("codegen.msg.generateSuccess",{id:F.id?.slice(0,8)})),U.value=!1,ce(),await K()}catch(r){R.error(e("codegen.msg.generateFailed")+": "+(r?.message||r))}finally{S.value=!1}}async function xe(){if(!p.code.trim()){R.warning(e("codegen.msg.codeEmpty"));return}L.value=!0,I.value=null;try{const r=[`codegen review -c ${E(p.code)}`];p.language.trim()&&r.push(`-l ${E(p.language.trim())}`),p.generationId.trim()&&r.push(`-g ${E(p.generationId.trim())}`),r.push("--json");const{output:_}=await s.execute(r.join(" "),1e4);I.value=he(_),!I.value.ok&&I.value.reason?R.error(e("codegen.msg.reviewFailed")+": "+I.value.reason):I.value.ok?(R.success(e("codegen.msg.reviewSuccess",{n:I.value.issuesFound,sec:I.value.securityIssues})),await K()):R.error(e("codegen.msg.reviewFailed")+": "+_.slice(0,120))}catch(r){R.error(e("codegen.msg.reviewFailed")+": "+(r?.message||r))}finally{L.value=!1}}async function Ie(r){p.generationId=r.id,p.language=r.language||"",p.code=r.generatedCode||"",I.value=null,B.value=!0}async function Ae(){if(!b.projectName.trim()){R.warning(e("codegen.msg.projectEmpty"));return}if(b.optionsJson.trim())try{JSON.parse(b.optionsJson)}catch{R.warning(e("codegen.msg.optionsBadJson"));return}P.value=!0;try{const r=[`codegen scaffold -t ${b.template}`,`-n ${E(b.projectName.trim())}`];b.optionsJson.trim()&&r.push(`-o ${E(b.optionsJson.trim())}`),b.files>0&&r.push(`--files ${b.files}`),b.outputPath.trim()&&r.push(`--output ${E(b.outputPath.trim())}`),r.push("--json");const{output:_}=await s.execute(r.join(" "),1e4),F=de(_);if(!F.ok){R.error(e("codegen.msg.scaffoldFailed")+": "+(F.reason||_.slice(0,120)));return}R.success(e("codegen.msg.scaffoldSuccess",{id:F.id?.slice(0,8)})),H.value=!1,fe(),await K()}catch(r){R.error(e("codegen.msg.scaffoldFailed")+": "+(r?.message||r))}finally{P.value=!1}}function ze(r){D.value=r,Q.value=!0}function Te(r){X.value=r,Y.value=!0}function ce(){y.prompt="",y.language="",y.framework="",y.code="",y.files=0,y.tokens=0}function fe(){b.template="react",b.projectName="",b.optionsJson="",b.files=0,b.outputPath=""}me(K);const ge={ws:s,t:e,EMPTY_IMG:z,loading:O,generating:S,reviewing:L,scaffolding:P,generations:q,reviews:W,scaffolds:T,stats:M,activeTab:j,languageFilter:N,frameworkFilter:h,templateFilter:G,showGenerateModal:U,showReviewModal:B,showScaffoldModal:H,showGenDetailsModal:Q,showReviewDetailsModal:Y,generateForm:y,reviewForm:p,scaffoldForm:b,reviewResult:I,currentGen:D,currentReview:X,generationColumns:oe,reviewColumns:ae,scaffoldColumns:le,filteredGenerations:ne,filteredScaffolds:C,tmplColor:$,tmplBarColor:re,severityLabel:ie,severityColor:se,severityBarColor:l,pctOfTotal:u,truncate:ee,shellQuote:E,loadAll:K,submitGenerate:Re,submitReview:xe,reviewGeneration:Ie,submitScaffold:Ae,viewGenerationDetails:ze,viewReviewDetails:Te,resetGenerateForm:ce,resetScaffoldForm:fe,ref:w,computed:J,onMounted:me,reactive:te,get ReloadOutlined(){return Be},get PlusOutlined(){return Ue},get SafetyOutlined(){return Ne},get CodeOutlined(){return De},get AuditOutlined(){return Me},get WarningOutlined(){return Pe},get CheckCircleOutlined(){return Le},get AppstoreAddOutlined(){return Ee},get GlobalOutlined(){return je},get message(){return R},get Empty(){return _e},get useI18n(){return ye},get useWsStore(){return pe},get parseGenerations(){return we},get parseReviews(){return ke},get parseReviewResult(){return he},get parseScaffolds(){return Se},get parseStats(){return Ce},get parseActionResult(){return de},get formatCodegenTime(){return Ke},get SCAFFOLD_TEMPLATES(){return Fe},get REVIEW_SEVERITIES(){return ue}};return Object.defineProperty(ge,"__isScriptSetup",{enumerable:!1,value:!0}),ge}},Qe={style:{display:"flex","align-items":"center","justify-content":"space-between","margin-bottom":"24px"}},Ye={class:"page-title"},Xe={class:"page-sub"},$e={class:"tmpl-count"},et={class:"filter-bar"},tt={style:{color:"var(--text-primary)","font-weight":"500"}},ot={style:{color:"var(--text-muted)","font-size":"11px","font-family":"monospace","margin-top":"2px"}},at={key:1,style:{color:"var(--text-muted)"}},lt={key:1,style:{color:"var(--text-muted)"}},nt={key:3,style:{color:"var(--text-secondary)"}},rt={key:4,style:{color:"var(--text-secondary)","font-family":"monospace","font-size":"12px"}},it={key:5,style:{color:"var(--text-secondary)","font-size":"11px"}},st={style:{padding:"40px",color:"var(--text-muted)","text-align":"center"}},dt={style:{color:"var(--text-primary)","font-family":"monospace","font-size":"12px"}},ut={style:{color:"var(--text-muted)","font-size":"11px","font-family":"monospace","margin-top":"2px"}},ct={key:1,style:{color:"var(--text-muted)"}},ft={key:4,class:"sev-mini"},gt={key:0,style:{color:"#ff4d4f"}},mt={key:1,style:{color:"#fa8c16"}},vt={key:2,style:{color:"#faad14"}},pt={key:3,style:{color:"#888"}},yt={key:4,style:{color:"#1677ff"}},_t={key:5,style:{color:"#52c41a"}},bt={key:5,style:{color:"var(--text-secondary)","font-size":"11px"}},wt={style:{padding:"40px",color:"var(--text-muted)","text-align":"center"}},kt={class:"filter-bar"},ht={style:{color:"var(--text-primary)","font-weight":"500"}},St={style:{color:"var(--text-muted)","font-size":"11px","font-family":"monospace","margin-top":"2px"}},Ct={key:2,style:{color:"var(--text-secondary)"}},Ft={key:0,style:{color:"var(--text-secondary)","font-family":"monospace","font-size":"11px"}},Rt={key:1,style:{color:"var(--text-muted)"}},xt={key:4,style:{color:"var(--text-secondary)","font-size":"11px"}},It={style:{padding:"40px",color:"var(--text-muted)","text-align":"center"}},At={style:{"padding-top":"8px"}},zt={key:1},Tt={style:{color:"var(--text-primary)","font-size":"12px",margin:"12px 0 6px"}},Gt={key:0,style:{"padding-top":"8px"}},Ot={style:{"font-family":"monospace","font-size":"12px"}},jt={key:1,style:{color:"var(--text-muted)"}},Et={key:1,style:{color:"var(--text-muted)"}},Lt={class:"code-pre"},Pt={class:"code-pre"},Mt={key:0,style:{"padding-top":"8px"}},Dt={style:{"font-family":"monospace","font-size":"12px"}},Nt={style:{"font-family":"monospace","font-size":"12px"}},Ut={style:{"font-family":"monospace","font-size":"12px"}},Bt={key:1,style:{color:"var(--text-muted)"}},Jt={style:{color:"var(--text-primary)","font-size":"13px",margin:"16px 0 8px"}},Vt={key:0,style:{color:"var(--text-primary)","font-size":"13px",margin:"16px 0 8px"}},qt={style:{"margin-left":"8px","font-family":"monospace","font-size":"12px"}},Wt={style:{"margin-left":"8px",padding:"1px 6px",background:"var(--bg-base)","border-radius":"3px","font-size":"11px"}};function Ht(t,n,s,e,z,O){const S=m("a-button"),L=m("a-menu-item"),P=m("a-menu"),q=m("a-dropdown"),W=m("a-space"),T=m("a-statistic"),M=m("a-card"),j=m("a-col"),N=m("a-row"),h=m("a-tag"),G=m("a-input"),U=m("a-table"),B=m("a-tab-pane"),H=m("a-radio-button"),Q=m("a-radio-group"),Y=m("a-tabs"),y=m("a-textarea"),p=m("a-form-item"),b=m("a-input-number"),I=m("a-form"),D=m("a-modal"),X=m("a-divider"),oe=m("a-empty"),ae=m("a-alert"),le=m("a-select-option"),ne=m("a-select"),C=m("a-descriptions-item"),$=m("a-descriptions"),re=m("a-progress"),ie=m("a-list-item"),se=m("a-list");return d(),f("div",null,[v("div",Qe,[v("div",null,[v("h2",Ye,i(t.$t("codegen.title")),1),v("p",Xe,i(t.$t("codegen.subtitle")),1)]),o(W,null,{default:a(()=>[o(S,{loading:e.loading,onClick:e.loadAll},{icon:a(()=>[o(e.ReloadOutlined)]),default:a(()=>[g(" "+i(t.$t("codegen.refresh")),1)]),_:1},8,["loading"]),o(S,{onClick:n[0]||(n[0]=l=>e.showReviewModal=!0)},{icon:a(()=>[o(e.SafetyOutlined)]),default:a(()=>[g(" "+i(t.$t("codegen.review")),1)]),_:1}),o(q,null,{overlay:a(()=>[o(P,null,{default:a(()=>[o(L,{key:"generate",onClick:n[1]||(n[1]=l=>e.showGenerateModal=!0)},{default:a(()=>[g(i(t.$t("codegen.actions.generate")),1)]),_:1}),o(L,{key:"scaffold",onClick:n[2]||(n[2]=l=>e.showScaffoldModal=!0)},{default:a(()=>[g(i(t.$t("codegen.actions.scaffold")),1)]),_:1})]),_:1})]),default:a(()=>[o(S,{type:"primary"},{icon:a(()=>[o(e.PlusOutlined)]),default:a(()=>[g(" "+i(t.$t("codegen.newDropdown")),1)]),_:1})]),_:1})]),_:1})]),c(" Stat cards "),o(N,{gutter:[16,16],style:{"margin-bottom":"20px"}},{default:a(()=>[o(j,{xs:12,sm:8,lg:5},{default:a(()=>[o(M,{style:{background:"var(--bg-card)","border-color":"var(--border-color)"}},{default:a(()=>[o(T,{title:t.$t("codegen.stats.generations"),value:e.stats.generations.total,"value-style":{color:"#1677ff",fontSize:"20px"}},{prefix:a(()=>[o(e.CodeOutlined)]),_:1},8,["title","value"])]),_:1})]),_:1}),o(j,{xs:12,sm:8,lg:5},{default:a(()=>[o(M,{style:{background:"var(--bg-card)","border-color":"var(--border-color)"}},{default:a(()=>[o(T,{title:t.$t("codegen.stats.reviews"),value:e.stats.reviews.total,"value-style":{color:"#13c2c2",fontSize:"20px"}},{prefix:a(()=>[o(e.AuditOutlined)]),_:1},8,["title","value"])]),_:1})]),_:1}),o(j,{xs:12,sm:8,lg:5},{default:a(()=>[o(M,{style:{background:"var(--bg-card)","border-color":"var(--border-color)"}},{default:a(()=>[o(T,{title:t.$t("codegen.stats.securityIssues"),value:e.stats.reviews.totalSecurityIssues,"value-style":{color:e.stats.reviews.totalSecurityIssues>0?"#ff4d4f":"#52c41a",fontSize:"20px"}},{prefix:a(()=>[o(e.WarningOutlined)]),_:1},8,["title","value","value-style"])]),_:1})]),_:1}),o(j,{xs:12,sm:8,lg:5},{default:a(()=>[o(M,{style:{background:"var(--bg-card)","border-color":"var(--border-color)"}},{default:a(()=>[o(T,{title:t.$t("codegen.stats.scaffolds"),value:e.stats.scaffolds.total,"value-style":{color:"#722ed1",fontSize:"20px"}},{prefix:a(()=>[o(e.AppstoreAddOutlined)]),_:1},8,["title","value"])]),_:1})]),_:1}),o(j,{xs:24,sm:8,lg:4},{default:a(()=>[o(M,{style:{background:"var(--bg-card)","border-color":"var(--border-color)"}},{default:a(()=>[o(T,{title:t.$t("codegen.stats.languages"),value:e.stats.generations.uniqueLanguages,"value-style":{color:"#faad14",fontSize:"20px"}},{prefix:a(()=>[o(e.GlobalOutlined)]),_:1},8,["title","value"])]),_:1})]),_:1})]),_:1}),c(" Template catalogue "),o(M,{title:t.$t("codegen.templatesCard"),size:"small",style:{background:"var(--bg-card)","border-color":"var(--border-color)","margin-bottom":"20px"},"body-style":{padding:"12px 16px"}},{default:a(()=>[o(N,{gutter:[12,12]},{default:a(()=>[(d(!0),f(A,null,Z(e.SCAFFOLD_TEMPLATES,l=>(d(),k(j,{key:l,xs:12,sm:8,lg:4},{default:a(()=>[v("div",{class:"tmpl-pill",style:ve({borderLeftColor:e.tmplBarColor(l)})},[o(h,{color:e.tmplColor(l),style:{"font-family":"monospace"}},{default:a(()=>[g(i(l),1)]),_:2},1032,["color"]),v("span",$e,i(e.stats.scaffolds.byTemplate[l]||0),1)],4)]),_:2},1024))),128))]),_:1})]),_:1},8,["title"]),c(" Tabs "),o(Y,{activeKey:e.activeTab,"onUpdate:activeKey":n[6]||(n[6]=l=>e.activeTab=l),class:"codegen-tabs"},{default:a(()=>[c(" ── Generations tab ────────────────────────────────────── "),o(B,{key:"generations",tab:t.$t("codegen.tabs.generations")},{default:a(()=>[v("div",et,[o(G,{value:e.languageFilter,"onUpdate:value":n[3]||(n[3]=l=>e.languageFilter=l),placeholder:t.$t("codegen.filter.languagePlaceholder"),"allow-clear":"",size:"small",style:{"max-width":"180px"}},null,8,["value","placeholder"]),o(G,{value:e.frameworkFilter,"onUpdate:value":n[4]||(n[4]=l=>e.frameworkFilter=l),placeholder:t.$t("codegen.filter.frameworkPlaceholder"),"allow-clear":"",size:"small",style:{"max-width":"180px"}},null,8,["value","placeholder"])]),o(U,{columns:e.generationColumns,"data-source":e.filteredGenerations,pagination:{pageSize:20,showTotal:l=>t.$t("codegen.table.totalSuffix",{n:l})},size:"small",loading:e.loading,style:{background:"var(--bg-card)"}},{bodyCell:a(({column:l,record:u})=>[l.key==="prompt"?(d(),f(A,{key:0},[v("span",tt,i(e.truncate(u.prompt,60)),1),v("div",ot,i(u.id.slice(0,16)),1)],64)):c("v-if",!0),l.key==="language"?(d(),f(A,{key:1},[u.language?(d(),k(h,{key:0,color:"blue",style:{"font-family":"monospace"}},{default:a(()=>[g(i(u.language),1)]),_:2},1024)):(d(),f("span",at,"—"))],64)):c("v-if",!0),l.key==="framework"?(d(),f(A,{key:2},[u.framework?(d(),k(h,{key:0,color:"purple",style:{"font-family":"monospace"}},{default:a(()=>[g(i(u.framework),1)]),_:2},1024)):(d(),f("span",lt,"—"))],64)):c("v-if",!0),l.key==="fileCount"?(d(),f("span",nt,i(u.fileCount),1)):c("v-if",!0),l.key==="tokenCount"?(d(),f("span",rt,i(u.tokenCount),1)):c("v-if",!0),l.key==="createdAt"?(d(),f("span",it,i(e.formatCodegenTime(u.createdAt)),1)):c("v-if",!0),l.key==="action"?(d(),f(A,{key:6},[o(S,{size:"small",type:"link",onClick:ee=>e.viewGenerationDetails(u)},{default:a(()=>[g(i(t.$t("codegen.table.actionDetails")),1)]),_:1},8,["onClick"]),u.generatedCode?(d(),k(S,{key:0,size:"small",type:"link",onClick:ee=>e.reviewGeneration(u)},{default:a(()=>[g(i(t.$t("codegen.table.actionReview")),1)]),_:1},8,["onClick"])):c("v-if",!0)],64)):c("v-if",!0)]),emptyText:a(()=>[v("div",st,[o(e.CodeOutlined,{style:{"font-size":"36px","margin-bottom":"10px",display:"block"}}),g(" "+i(e.languageFilter||e.frameworkFilter?t.$t("codegen.table.emptyGenerationsFiltered"):t.$t("codegen.table.emptyGenerations")),1)])]),_:1},8,["columns","data-source","pagination","loading"])]),_:1},8,["tab"]),c(" ── Reviews tab ───────────────────────────────────────── "),o(B,{key:"reviews",tab:t.$t("codegen.tabs.reviews")},{default:a(()=>[o(U,{columns:e.reviewColumns,"data-source":e.reviews,pagination:{pageSize:20,showTotal:l=>t.$t("codegen.table.totalSuffix",{n:l})},size:"small",loading:e.loading,style:{background:"var(--bg-card)"}},{bodyCell:a(({column:l,record:u})=>[l.key==="codeHash"?(d(),f(A,{key:0},[v("span",dt,i(u.codeHash),1),v("div",ut,i(u.id.slice(0,16)),1)],64)):c("v-if",!0),l.key==="language"?(d(),f(A,{key:1},[u.language?(d(),k(h,{key:0,color:"blue",style:{"font-family":"monospace"}},{default:a(()=>[g(i(u.language),1)]),_:2},1024)):(d(),f("span",ct,"—"))],64)):c("v-if",!0),l.key==="issuesFound"?(d(),k(h,{key:2,color:u.issuesFound===0?"green":u.issuesFound>5?"red":"orange"},{default:a(()=>[g(i(t.$t("codegen.table.issuesSuffix",{n:u.issuesFound})),1)]),_:2},1032,["color"])):c("v-if",!0),l.key==="securityIssues"?(d(),f(A,{key:3},[u.securityIssues>0?(d(),k(h,{key:0,color:"red"},{default:a(()=>[o(e.WarningOutlined),g(" "+i(u.securityIssues),1)]),_:2},1024)):(d(),k(h,{key:1,color:"green"},{default:a(()=>[o(e.CheckCircleOutlined),n[26]||(n[26]=g(" 0 ",-1))]),_:1}))],64)):c("v-if",!0),l.key==="severityBreak"?(d(),f("span",ft,[u.severitySummary.critical>0?(d(),f("span",gt,"C:"+i(u.severitySummary.critical),1)):c("v-if",!0),u.severitySummary.high>0?(d(),f("span",mt,"H:"+i(u.severitySummary.high),1)):c("v-if",!0),u.severitySummary.medium>0?(d(),f("span",vt,"M:"+i(u.severitySummary.medium),1)):c("v-if",!0),u.severitySummary.low>0?(d(),f("span",pt,"L:"+i(u.severitySummary.low),1)):c("v-if",!0),u.severitySummary.info>0?(d(),f("span",yt,"I:"+i(u.severitySummary.info),1)):c("v-if",!0),u.issuesFound===0?(d(),f("span",_t,i(t.$t("codegen.table.noIssues")),1)):c("v-if",!0)])):c("v-if",!0),l.key==="reviewedAt"?(d(),f("span",bt,i(e.formatCodegenTime(u.reviewedAt)),1)):c("v-if",!0),l.key==="action"?(d(),k(S,{key:6,size:"small",type:"link",onClick:ee=>e.viewReviewDetails(u)},{default:a(()=>[g(i(t.$t("codegen.table.actionDetails")),1)]),_:1},8,["onClick"])):c("v-if",!0)]),emptyText:a(()=>[v("div",wt,[o(e.SafetyOutlined,{style:{"font-size":"36px","margin-bottom":"10px",display:"block"}}),g(" "+i(t.$t("codegen.table.emptyReviews")),1)])]),_:1},8,["columns","data-source","pagination","loading"])]),_:1},8,["tab"]),c(" ── Scaffolds tab ─────────────────────────────────────── "),o(B,{key:"scaffolds",tab:t.$t("codegen.tabs.scaffolds")},{default:a(()=>[v("div",kt,[o(Q,{value:e.templateFilter,"onUpdate:value":n[5]||(n[5]=l=>e.templateFilter=l),size:"small","button-style":"solid"},{default:a(()=>[o(H,{value:""},{default:a(()=>[g(i(t.$t("codegen.filter.allTemplates")),1)]),_:1}),(d(!0),f(A,null,Z(e.SCAFFOLD_TEMPLATES,l=>(d(),k(H,{key:l,value:l},{default:a(()=>[g(i(l),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value"])]),o(U,{columns:e.scaffoldColumns,"data-source":e.filteredScaffolds,pagination:{pageSize:20,showTotal:l=>t.$t("codegen.table.totalSuffix",{n:l})},size:"small",loading:e.loading,style:{background:"var(--bg-card)"}},{bodyCell:a(({column:l,record:u})=>[l.key==="projectName"?(d(),f(A,{key:0},[v("span",ht,i(u.projectName||t.$t("codegen.table.unnamed")),1),v("div",St,i(u.id.slice(0,16)),1)],64)):c("v-if",!0),l.key==="template"?(d(),k(h,{key:1,color:e.tmplColor(u.template),style:{"font-family":"monospace"}},{default:a(()=>[g(i(u.template),1)]),_:2},1032,["color"])):c("v-if",!0),l.key==="filesGenerated"?(d(),f("span",Ct,i(u.filesGenerated),1)):c("v-if",!0),l.key==="outputPath"?(d(),f(A,{key:3},[u.outputPath?(d(),f("span",Ft,i(e.truncate(u.outputPath,40)),1)):(d(),f("span",Rt,"—"))],64)):c("v-if",!0),l.key==="createdAt"?(d(),f("span",xt,i(e.formatCodegenTime(u.createdAt)),1)):c("v-if",!0)]),emptyText:a(()=>[v("div",It,[o(e.AppstoreAddOutlined,{style:{"font-size":"36px","margin-bottom":"10px",display:"block"}}),g(" "+i(e.templateFilter?t.$t("codegen.table.emptyScaffoldsFiltered"):t.$t("codegen.table.emptyScaffolds")),1)])]),_:1},8,["columns","data-source","pagination","loading"])]),_:1},8,["tab"])]),_:1},8,["activeKey"]),c(" ── Generate modal ──────────────────────────────────────── "),o(D,{open:e.showGenerateModal,"onUpdate:open":n[13]||(n[13]=l=>e.showGenerateModal=l),title:t.$t("codegen.generate_modal.title"),"confirm-loading":e.generating,width:560,"ok-text":t.$t("codegen.generate_modal.ok"),"cancel-text":t.$t("codegen.generate_modal.cancel"),onOk:e.submitGenerate,onCancel:e.resetGenerateForm},{default:a(()=>[o(I,{"label-col":{span:5},"wrapper-col":{span:19},style:{"margin-top":"16px"}},{default:a(()=>[o(p,{label:t.$t("codegen.generate_modal.promptLabel"),required:""},{default:a(()=>[o(y,{value:e.generateForm.prompt,"onUpdate:value":n[7]||(n[7]=l=>e.generateForm.prompt=l),placeholder:t.$t("codegen.generate_modal.promptPlaceholder"),"auto-size":{minRows:2,maxRows:5}},null,8,["value","placeholder"])]),_:1},8,["label"]),o(p,{label:t.$t("codegen.generate_modal.languageLabel")},{default:a(()=>[o(G,{value:e.generateForm.language,"onUpdate:value":n[8]||(n[8]=l=>e.generateForm.language=l),placeholder:t.$t("codegen.generate_modal.languagePlaceholder")},null,8,["value","placeholder"])]),_:1},8,["label"]),o(p,{label:t.$t("codegen.generate_modal.frameworkLabel")},{default:a(()=>[o(G,{value:e.generateForm.framework,"onUpdate:value":n[9]||(n[9]=l=>e.generateForm.framework=l),placeholder:t.$t("codegen.generate_modal.frameworkPlaceholder")},null,8,["value","placeholder"])]),_:1},8,["label"]),o(p,{label:t.$t("codegen.generate_modal.codeLabel")},{default:a(()=>[o(y,{value:e.generateForm.code,"onUpdate:value":n[10]||(n[10]=l=>e.generateForm.code=l),placeholder:t.$t("codegen.generate_modal.codePlaceholder"),"auto-size":{minRows:3,maxRows:10}},null,8,["value","placeholder"])]),_:1},8,["label"]),o(p,{label:t.$t("codegen.generate_modal.filesLabel")},{default:a(()=>[o(b,{value:e.generateForm.files,"onUpdate:value":n[11]||(n[11]=l=>e.generateForm.files=l),min:0,style:{width:"120px"}},null,8,["value"])]),_:1},8,["label"]),o(p,{label:t.$t("codegen.generate_modal.tokensLabel")},{default:a(()=>[o(b,{value:e.generateForm.tokens,"onUpdate:value":n[12]||(n[12]=l=>e.generateForm.tokens=l),min:0,style:{width:"160px"}},null,8,["value"])]),_:1},8,["label"])]),_:1})]),_:1},8,["open","title","confirm-loading","ok-text","cancel-text"]),c(" ── Review modal ────────────────────────────────────────── "),o(D,{open:e.showReviewModal,"onUpdate:open":n[17]||(n[17]=l=>e.showReviewModal=l),title:t.$t("codegen.review_modal.title"),width:720,footer:null},{default:a(()=>[v("div",At,[o(I,{"label-col":{span:5},"wrapper-col":{span:19}},{default:a(()=>[o(p,{label:t.$t("codegen.review_modal.languageLabel")},{default:a(()=>[o(G,{value:e.reviewForm.language,"onUpdate:value":n[14]||(n[14]=l=>e.reviewForm.language=l),placeholder:t.$t("codegen.review_modal.languagePlaceholder")},null,8,["value","placeholder"])]),_:1},8,["label"]),o(p,{label:t.$t("codegen.review_modal.generationIdLabel")},{default:a(()=>[o(G,{value:e.reviewForm.generationId,"onUpdate:value":n[15]||(n[15]=l=>e.reviewForm.generationId=l),placeholder:t.$t("codegen.review_modal.generationIdPlaceholder")},null,8,["value","placeholder"])]),_:1},8,["label"]),o(p,{label:t.$t("codegen.review_modal.codeLabel"),required:""},{default:a(()=>[o(y,{value:e.reviewForm.code,"onUpdate:value":n[16]||(n[16]=l=>e.reviewForm.code=l),placeholder:t.$t("codegen.review_modal.codePlaceholder"),"auto-size":{minRows:6,maxRows:16}},null,8,["value","placeholder"])]),_:1},8,["label"]),o(p,{"wrapper-col":{offset:5,span:19}},{default:a(()=>[o(S,{type:"primary",loading:e.reviewing,onClick:e.submitReview},{icon:a(()=>[o(e.SafetyOutlined)]),default:a(()=>[g(" "+i(t.$t("codegen.review_modal.submit")),1)]),_:1},8,["loading"])]),_:1})]),_:1}),o(X),e.reviewResult?(d(),f("div",zt,[o(N,{gutter:12,style:{"margin-bottom":"12px"}},{default:a(()=>[o(j,{span:8},{default:a(()=>[o(T,{title:t.$t("codegen.review_modal.issuesStat"),value:e.reviewResult.issuesFound,"value-style":{color:e.reviewResult.issuesFound>0?"#fa8c16":"#52c41a",fontSize:"18px"}},null,8,["title","value","value-style"])]),_:1}),o(j,{span:8},{default:a(()=>[o(T,{title:t.$t("codegen.review_modal.securityStat"),value:e.reviewResult.securityIssues,"value-style":{color:e.reviewResult.securityIssues>0?"#ff4d4f":"#52c41a",fontSize:"18px"}},null,8,["title","value","value-style"])]),_:1}),o(j,{span:8},{default:a(()=>[o(T,{title:t.$t("codegen.review_modal.reviewIdStat"),value:e.reviewResult.reviewId?e.reviewResult.reviewId.slice(0,8):"—","value-style":{fontSize:"14px",fontFamily:"monospace"}},null,8,["title","value"])]),_:1})]),_:1}),v("h5",Tt,i(t.$t("codegen.review_modal.bySeverity")),1),o(W,null,{default:a(()=>[(d(!0),f(A,null,Z(e.REVIEW_SEVERITIES,l=>(d(),k(h,{key:l,color:e.severityColor(l)},{default:a(()=>[g(i(e.severityLabel(l))+": "+i(e.reviewResult.severitySummary[l]||0),1)]),_:2},1032,["color"]))),128))]),_:1}),e.reviewResult.reason?(d(),k(ae,{key:0,type:"warning","show-icon":"",message:t.$t("codegen.review_modal.failedReason",{reason:e.reviewResult.reason}),style:{"margin-top":"12px"}},null,8,["message"])):c("v-if",!0)])):(d(),k(oe,{key:0,description:t.$t("codegen.review_modal.notReviewed"),image:e.EMPTY_IMG},null,8,["description","image"]))])]),_:1},8,["open","title"]),c(" ── Scaffold modal ──────────────────────────────────────── "),o(D,{open:e.showScaffoldModal,"onUpdate:open":n[23]||(n[23]=l=>e.showScaffoldModal=l),title:t.$t("codegen.scaffold_modal.title"),"confirm-loading":e.scaffolding,width:560,"ok-text":t.$t("codegen.scaffold_modal.ok"),"cancel-text":t.$t("codegen.scaffold_modal.cancel"),onOk:e.submitScaffold,onCancel:e.resetScaffoldForm},{default:a(()=>[o(I,{"label-col":{span:5},"wrapper-col":{span:19},style:{"margin-top":"16px"}},{default:a(()=>[o(p,{label:t.$t("codegen.scaffold_modal.templateLabel"),required:""},{default:a(()=>[o(ne,{value:e.scaffoldForm.template,"onUpdate:value":n[18]||(n[18]=l=>e.scaffoldForm.template=l)},{default:a(()=>[(d(!0),f(A,null,Z(e.SCAFFOLD_TEMPLATES,l=>(d(),k(le,{key:l,value:l},{default:a(()=>[g(i(l),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value"])]),_:1},8,["label"]),o(p,{label:t.$t("codegen.scaffold_modal.projectLabel"),required:""},{default:a(()=>[o(G,{value:e.scaffoldForm.projectName,"onUpdate:value":n[19]||(n[19]=l=>e.scaffoldForm.projectName=l),placeholder:t.$t("codegen.scaffold_modal.projectPlaceholder")},null,8,["value","placeholder"])]),_:1},8,["label"]),o(p,{label:t.$t("codegen.scaffold_modal.optionsLabel")},{default:a(()=>[o(y,{value:e.scaffoldForm.optionsJson,"onUpdate:value":n[20]||(n[20]=l=>e.scaffoldForm.optionsJson=l),placeholder:t.$t("codegen.scaffold_modal.optionsPlaceholder"),"auto-size":{minRows:2,maxRows:4}},null,8,["value","placeholder"])]),_:1},8,["label"]),o(p,{label:t.$t("codegen.scaffold_modal.filesLabel")},{default:a(()=>[o(b,{value:e.scaffoldForm.files,"onUpdate:value":n[21]||(n[21]=l=>e.scaffoldForm.files=l),min:0,style:{width:"120px"}},null,8,["value"])]),_:1},8,["label"]),o(p,{label:t.$t("codegen.scaffold_modal.outputLabel")},{default:a(()=>[o(G,{value:e.scaffoldForm.outputPath,"onUpdate:value":n[22]||(n[22]=l=>e.scaffoldForm.outputPath=l),placeholder:t.$t("codegen.scaffold_modal.outputPlaceholder")},null,8,["value","placeholder"])]),_:1},8,["label"])]),_:1})]),_:1},8,["open","title","confirm-loading","ok-text","cancel-text"]),c(" ── Generation details modal ───────────────────────────── "),o(D,{open:e.showGenDetailsModal,"onUpdate:open":n[24]||(n[24]=l=>e.showGenDetailsModal=l),title:t.$t("codegen.gen_details.title",{id:e.currentGen?.id?.slice(0,12)||""}),width:780,footer:null},{default:a(()=>[e.currentGen?(d(),f("div",Gt,[o($,{column:2,size:"small",bordered:""},{default:a(()=>[o(C,{label:t.$t("codegen.gen_details.id"),span:2},{default:a(()=>[v("span",Ot,i(e.currentGen.id),1)]),_:1},8,["label"]),o(C,{label:t.$t("codegen.gen_details.language")},{default:a(()=>[e.currentGen.language?(d(),k(h,{key:0,color:"blue"},{default:a(()=>[g(i(e.currentGen.language),1)]),_:1})):(d(),f("span",jt,"—"))]),_:1},8,["label"]),o(C,{label:t.$t("codegen.gen_details.framework")},{default:a(()=>[e.currentGen.framework?(d(),k(h,{key:0,color:"purple"},{default:a(()=>[g(i(e.currentGen.framework),1)]),_:1})):(d(),f("span",Et,"—"))]),_:1},8,["label"]),o(C,{label:t.$t("codegen.gen_details.fileCount")},{default:a(()=>[g(i(e.currentGen.fileCount),1)]),_:1},8,["label"]),o(C,{label:t.$t("codegen.gen_details.tokenCount")},{default:a(()=>[g(i(e.currentGen.tokenCount),1)]),_:1},8,["label"]),o(C,{label:t.$t("codegen.gen_details.createdAt"),span:2},{default:a(()=>[g(i(e.formatCodegenTime(e.currentGen.createdAt)),1)]),_:1},8,["label"]),o(C,{label:t.$t("codegen.gen_details.prompt"),span:2},{default:a(()=>[v("pre",Lt,i(e.currentGen.prompt),1)]),_:1},8,["label"]),e.currentGen.generatedCode?(d(),k(C,{key:0,label:t.$t("codegen.gen_details.code"),span:2},{default:a(()=>[v("pre",Pt,i(e.truncate(e.currentGen.generatedCode,2e3)),1)]),_:1},8,["label"])):c("v-if",!0)]),_:1})])):c("v-if",!0)]),_:1},8,["open","title"]),c(" ── Review details modal ──────────────────────────────── "),o(D,{open:e.showReviewDetailsModal,"onUpdate:open":n[25]||(n[25]=l=>e.showReviewDetailsModal=l),title:t.$t("codegen.review_details.title",{id:e.currentReview?.id?.slice(0,12)||""}),width:720,footer:null},{default:a(()=>[e.currentReview?(d(),f("div",Mt,[o($,{column:2,size:"small",bordered:""},{default:a(()=>[o(C,{label:t.$t("codegen.review_details.id"),span:2},{default:a(()=>[v("span",Dt,i(e.currentReview.id),1)]),_:1},8,["label"]),o(C,{label:t.$t("codegen.review_details.codeHash"),span:2},{default:a(()=>[v("span",Nt,i(e.currentReview.codeHash),1)]),_:1},8,["label"]),e.currentReview.generationId?(d(),k(C,{key:0,label:t.$t("codegen.review_details.generationId"),span:2},{default:a(()=>[v("span",Ut,i(e.currentReview.generationId),1)]),_:1},8,["label"])):c("v-if",!0),o(C,{label:t.$t("codegen.review_details.language")},{default:a(()=>[e.currentReview.language?(d(),k(h,{key:0,color:"blue"},{default:a(()=>[g(i(e.currentReview.language),1)]),_:1})):(d(),f("span",Bt,"—"))]),_:1},8,["label"]),o(C,{label:t.$t("codegen.review_details.reviewedAt")},{default:a(()=>[g(i(e.formatCodegenTime(e.currentReview.reviewedAt)),1)]),_:1},8,["label"]),o(C,{label:t.$t("codegen.review_details.issuesFound")},{default:a(()=>[g(i(e.currentReview.issuesFound),1)]),_:1},8,["label"]),o(C,{label:t.$t("codegen.review_details.securityIssues")},{default:a(()=>[v("span",{style:ve({color:e.currentReview.securityIssues>0?"#ff4d4f":"#52c41a"})},i(e.currentReview.securityIssues),5)]),_:1},8,["label"])]),_:1}),v("h4",Jt,i(t.$t("codegen.review_details.bySeverity")),1),(d(!0),f(A,null,Z(e.REVIEW_SEVERITIES,l=>(d(),f("div",{key:l,class:"bd-row"},[o(h,{color:e.severityColor(l),style:{"min-width":"70px","text-align":"center"}},{default:a(()=>[g(i(e.severityLabel(l)),1)]),_:2},1032,["color"]),o(re,{percent:e.pctOfTotal(e.currentReview.severitySummary[l]||0,e.currentReview.issuesFound),"stroke-color":e.severityBarColor(l),format:()=>`${e.currentReview.severitySummary[l]||0}`,size:"small",style:{flex:"1","margin-left":"12px"}},null,8,["percent","stroke-color","format"])]))),128)),e.currentReview.issuesDetail.length?(d(),f("h4",Vt,i(t.$t("codegen.review_details.issues")),1)):c("v-if",!0),e.currentReview.issuesDetail.length?(d(),k(se,{key:1,size:"small","data-source":e.currentReview.issuesDetail,pagination:{pageSize:8}},{renderItem:a(({item:l})=>[o(ie,null,{default:a(()=>[o(h,{color:e.severityColor(l.severity),style:{"min-width":"60px","text-align":"center"}},{default:a(()=>[g(i(e.severityLabel(l.severity)),1)]),_:2},1032,["color"]),v("span",qt,i(l.rule),1),v("code",Wt,i(e.truncate(l.match,60)),1)]),_:2},1024)]),_:1},8,["data-source"])):c("v-if",!0)])):c("v-if",!0)]),_:1},8,["open","title"])])}const Yt=Oe(Ze,[["render",Ht],["__scopeId","data-v-b0047198"],["__file","/tmp/cc-web-panel-2pZejZ/repo/packages/web-panel/src/views/Codegen.vue"]]);export{Yt as default};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{I as p,J as m,U as g,R as r,c as a,K as o,V as c,S as _,o as ne,a as X,b as E,r as h,P as s,Q as b,F as R,Z,$ as ie}from"./vendor-BvqAck49.js";import{t as J,_ as he,u as re,b as se,d as v}from"./index-Dh8r6PnR.js";import{s as _e,am as ke,ak as xe,G as ze,Z as Ae,b2 as Se,D as Te,b3 as Ce,as as Oe,R as Fe}from"./icons-DP3uiYxy.js";const Re=Object.freeze(["file-md5","file-sha1","file-sha256","file-sha512","ipv4","ipv6","domain","url","email"]);function T(e,l=0){return typeof e=="number"&&Number.isFinite(e)?e:l}function ye(e,l=0){if(!e||typeof e!="object")return null;const d=e.id||"";if(!d)return null;const t=Array.isArray(e.labels)?e.labels:[];return{key:d,id:d,type:String(e.type||""),value:String(e.value||""),labels:t,confidence:e.confidence!=null?T(e.confidence,null):null,sourceId:e.sourceId??e.source_id??null,sourceName:e.sourceName??e.source_name??null,validFrom:e.validFrom??e.valid_from??null,validUntil:e.validUntil??e.valid_until??null,firstSeenAt:e.firstSeenAt??e.first_seen_at??null,lastSeenAt:e.lastSeenAt??e.last_seen_at??null,_idx:l}}function ce(e){const l=J(e);return Array.isArray(l)?l.map(ye).filter(Boolean):[]}function ue(e){const l=J(e);return!l||typeof l!="object"||Array.isArray(l)?null:{matched:!!l.matched,type:String(l.type||"unknown"),indicator:l.indicator?ye(l.indicator):null}}function de(e){const l={total:0,byType:{}},d=J(e);if(!d||typeof d!="object"||Array.isArray(d))return l;if(l.total=T(d.total,0),d.byType&&typeof d.byType=="object")for(const[t,C]of Object.entries(d.byType))typeof C=="number"&&Number.isFinite(C)&&(l.byType[t]=C);return l}function we(e,l=0){if(!e||typeof e!="object")return null;const d=e.entity||"";return d?{key:d,entity:d,eventCount:T(e.eventCount??e.event_count,0),failureRate:T(e.failureRate??e.failure_rate,0),uniqueResources:T(e.uniqueResources??e.unique_resources,0),uniqueActions:T(e.uniqueActions??e.unique_actions,0),burstiness:T(e.burstiness,0),riskScore:T(e.riskScore??e.risk_score,0),_idx:l}:null}function me(e){const l=J(e);return Array.isArray(l)?l.map(we).filter(Boolean):[]}function Ue(e,l=0){return!e||typeof e!="object"?null:{key:l,score:T(e.score,0),reasons:Array.isArray(e.reasons)?e.reasons:[],event:e.event&&typeof e.event=="object"?e.event:null,_idx:l}}function pe(e){const l=J(e);return Array.isArray(l)?l.map(Ue).filter(Boolean):[]}function $(e){if(!e)return{noAuditLog:!1,error:""};const l=/no such table:\s*audit_log/i.test(e),d=e.match(/Failed:\s*(.+?)(?:\r?\n|$)/i);return{noAuditLog:l,error:d?d[1].trim():""}}function je(e){if(e==null||e==="")return"—";const l=typeof e=="number"?new Date(e):new Date(String(e));return isNaN(l.getTime())?String(e):l.toLocaleString("zh-CN",{hour12:!1})}const Be={__name:"Compliance",setup(e,{expose:l}){l();const d=re(),{t}=se(),C=h(!1),G=h(!1),w=h(!1),U=h(!1),I=h([]),M=h({total:0,byType:{}}),L=h([]),z=h([]),k=h({noAuditLog:!1,error:""}),S=h("threat"),D=h(""),x=h(!1),j=h(!1),N=h(!1),H=X({observable:""}),B=h(null),O=X({entity:"",days:30}),A=X({entity:"",threshold:.7,days:1}),ee=E(()=>[{title:t("compliance.cols.type"),key:"type",width:"120px"},{title:t("compliance.cols.value"),key:"value"},{title:t("compliance.cols.labels"),key:"labels",width:"160px"},{title:t("compliance.cols.confidence"),key:"confidence",width:"90px"},{title:t("compliance.cols.source"),key:"source",width:"160px"},{title:t("compliance.cols.lastSeen"),key:"lastSeen",width:"160px"},{title:t("compliance.cols.action"),key:"action",width:"90px"}]),te=E(()=>[{title:t("compliance.cols.entity"),key:"entity",width:"180px"},{title:t("compliance.cols.riskScore"),key:"riskScore"},{title:t("compliance.cols.eventCount"),key:"eventCount",width:"90px"},{title:t("compliance.cols.failureRate"),key:"failureRate",width:"90px"},{title:t("compliance.cols.uniqueResources"),key:"uniqueResources",width:"90px"},{title:t("compliance.cols.burstiness"),key:"burstiness",width:"90px"}]),ae=E(()=>D.value?I.value.filter(i=>i.type===D.value):I.value),oe=E(()=>Object.keys(M.value.byType).length),W=E(()=>Object.entries(M.value.byType).sort((i,y)=>y[1]-i[1])),F=E(()=>L.value.filter(i=>i.riskScore>=70).length),P={ipv4:"blue",ipv6:"cyan",domain:"purple",url:"magenta",email:"gold","file-md5":"orange","file-sha1":"orange","file-sha256":"red","file-sha512":"red",unknown:"default"};function V(i){return P[i]||"default"}function K(i){return i>=80?"#ff4d4f":i>=50?"#faad14":"#52c41a"}function n(i){return i>=70?"#ff4d4f":i>=40?"#faad14":"#52c41a"}function u(i,y){return i?i.length>y?i.slice(0,y)+"...":i:""}function Y({key:i}){i==="match"?(B.value=null,x.value=!0):i==="ueba-build"?j.value=!0:i==="ueba-analyze"&&(N.value=!0)}async function Q(){C.value=!0;try{const[i,y,f]=await Promise.all([d.execute("compliance threat-intel list --limit 200 --json",1e4).catch(()=>({output:""})),d.execute("compliance threat-intel stats --json",8e3).catch(()=>({output:""})),d.execute("compliance ueba top --top-k 20 --json",1e4).catch(()=>({output:""}))]);I.value=ce(i.output),M.value=de(y.output),k.value=$(f.output),L.value=k.value.noAuditLog?[]:me(f.output)}catch(i){v.error(t("compliance.msg.loadFailed")+": "+(i?.message||i))}finally{C.value=!1}}async function fe(){const i=H.observable.trim();if(!i){v.warning(t("compliance.msg.matchEmpty"));return}G.value=!0,B.value=null;try{const y=`compliance threat-intel match "${i.replace(/"/g,'\\"')}" --json`,{output:f}=await d.execute(y,8e3),q=ue(f);if(!q){v.error(t("compliance.msg.matchFailed")+": "+f.slice(0,120));return}B.value=q,q.matched?v.warning(t("compliance.msg.matchHit",{type:q.type})):q.type==="unknown"?v.info(t("compliance.msg.matchUnknownType")):v.success(t("compliance.msg.matchMiss",{type:q.type}))}catch(y){v.error(t("compliance.msg.matchFailed")+": "+(y?.message||y))}finally{G.value=!1}}async function be(i){try{const y=`compliance threat-intel remove ${i.type} "${i.value.replace(/"/g,'\\"')}" --json`,{output:f}=await d.execute(y,8e3);if(/error|失败/i.test(f)&&!/"removed"/.test(f)){v.error(t("compliance.msg.deleteFailed")+": "+f.slice(0,120));return}v.success(t("compliance.msg.deleteSuccess")),await Q()}catch(y){v.error(t("compliance.msg.deleteFailed")+": "+(y?.message||y))}}async function ve(){w.value=!0;try{const i=["compliance ueba baseline"];O.entity.trim()&&i.push(`--entity "${O.entity.trim().replace(/"/g,'\\"')}"`),O.days!=null&&i.push(`--days ${O.days}`),i.push("--json");const{output:y}=await d.execute(i.join(" "),3e4),f=$(y);if(f.noAuditLog){k.value=f,v.warning(t("compliance.msg.auditEmptyBuild")),j.value=!1;return}if(f.error){v.error(t("compliance.msg.buildFailed")+": "+f.error);return}v.success(t("compliance.msg.buildSuccess")),j.value=!1,S.value="ueba",await Q()}catch(i){v.error(t("compliance.msg.buildFailed")+": "+(i?.message||i))}finally{w.value=!1}}async function ge(){U.value=!0;try{const i=["compliance ueba analyze"];A.entity.trim()&&i.push(`--entity "${A.entity.trim().replace(/"/g,'\\"')}"`),A.threshold!=null&&i.push(`--threshold ${A.threshold}`),A.days!=null&&i.push(`--days ${A.days}`),i.push("--json");const{output:y}=await d.execute(i.join(" "),3e4),f=$(y);if(f.noAuditLog){k.value=f,v.warning(t("compliance.msg.auditEmptyAnalyze")),N.value=!1;return}if(f.error&&!y.includes("[")){v.error(t("compliance.msg.analyzeFailed")+": "+f.error);return}z.value=pe(y),v.success(t("compliance.msg.analyzeSuccess",{n:z.value.length})),N.value=!1,S.value="ueba"}catch(i){v.error(t("compliance.msg.analyzeFailed")+": "+(i?.message||i))}finally{U.value=!1}}ne(Q);const le={ws:d,t,loading:C,matching:G,building:w,analyzing:U,indicators:I,threatStats:M,uebaTop:L,anomalies:z,uebaError:k,activeTab:S,iocTypeFilter:D,showMatchModal:x,showBuildModal:j,showAnalyzeModal:N,matchForm:H,matchResult:B,buildForm:O,analyzeForm:A,indicatorColumns:ee,uebaColumns:te,filteredIndicators:ae,threatTypeCount:oe,typeBreakdown:W,highRiskCount:F,IOC_TYPE_COLORS:P,iocTypeColor:V,confidenceColor:K,riskColor:n,truncate:u,handleNewClick:Y,loadAll:Q,matchObservable:fe,removeIndicator:be,buildBaseline:ve,runAnalyze:ge,ref:h,computed:E,onMounted:ne,reactive:X,get ReloadOutlined(){return Fe},get PlusOutlined(){return Oe},get AimOutlined(){return Ce},get DatabaseOutlined(){return Te},get FundOutlined(){return Se},get SafetyCertificateOutlined(){return Ae},get BlockOutlined(){return ze},get UserOutlined(){return xe},get WarningOutlined(){return ke},get AlertOutlined(){return _e},get message(){return v},get useI18n(){return se},get useWsStore(){return re},get parseIndicators(){return ce},get parseMatchResult(){return ue},get parseThreatIntelStats(){return de},get parseUebaTop(){return me},get parseAnomalies(){return pe},get detectUebaError(){return $},get formatComplianceTime(){return je},get IOC_TYPES(){return Re}};return Object.defineProperty(le,"__isScriptSetup",{enumerable:!1,value:!0}),le}},Ee={style:{display:"flex","align-items":"center","justify-content":"space-between","margin-bottom":"24px"}},Ie={class:"page-title"},Me={class:"page-sub"},Le={class:"filter-bar"},Ne={key:1,style:{color:"var(--text-primary)","font-family":"monospace","font-size":"12px","word-break":"break-all"}},Pe={key:0,style:{color:"var(--text-muted)"}},qe={key:1,style:{color:"var(--text-muted)"}},De={key:0,style:{color:"var(--text-secondary)","font-size":"12px"}},We={key:1,style:{color:"var(--text-muted)"}},Ve={key:5,style:{color:"var(--text-secondary)","font-size":"11px"}},Ke={style:{padding:"40px",color:"var(--text-muted)","text-align":"center"}},Ye={style:{color:"var(--text-primary)",margin:"16px 0 8px","font-size":"14px"}},Ze={key:0,style:{color:"var(--text-primary)","font-family":"monospace","font-weight":"500"}},Je={key:2,style:{color:"var(--text-secondary)"}},Ge={key:5,style:{color:"var(--text-secondary)","font-family":"monospace","font-size":"11px"}},He={style:{padding:"30px",color:"var(--text-muted)","text-align":"center"}},Qe={key:2,style:{color:"var(--text-primary)",margin:"24px 0 8px","font-size":"14px"}},Xe={style:{flex:"1"}},$e={style:{display:"flex",gap:"8px","align-items":"center"}},et={key:0,style:{color:"var(--text-primary)","font-family":"monospace","font-size":"12px"}},tt={key:1,style:{color:"var(--text-secondary)","font-size":"11px"}},at={key:0,style:{"margin-top":"4px"}},ot={style:{"margin-top":"8px","font-size":"12px",color:"var(--text-secondary)"}},lt={key:0,style:{"margin-top":"12px","font-size":"12px"}},nt={style:{color:"var(--text-secondary)"}},it={style:{color:"var(--text-secondary)"}},rt={key:0,style:{"margin-top":"4px"}},st={style:{color:"var(--text-secondary)","font-size":"12px",margin:"0"}},ct={style:{color:"var(--text-secondary)","font-size":"12px",margin:"0"}};function ut(e,l,d,t,C,G){const w=p("a-button"),U=p("a-menu-item"),I=p("a-menu"),M=p("a-dropdown"),L=p("a-space"),z=p("a-statistic"),k=p("a-card"),S=p("a-col"),D=p("a-row"),x=p("a-tag"),j=p("a-radio-button"),N=p("a-radio-group"),H=p("a-popconfirm"),B=p("a-table"),O=p("a-tab-pane"),A=p("a-alert"),ee=p("a-progress"),te=p("a-list-item"),ae=p("a-list"),oe=p("a-tabs"),W=p("a-input"),F=p("a-form-item"),P=p("a-form"),V=p("a-modal"),K=p("a-input-number");return s(),m("div",null,[g("div",Ee,[g("div",null,[g("h2",Ie,r(e.$t("compliance.title")),1),g("p",Me,r(e.$t("compliance.subtitle")),1)]),a(L,null,{default:o(()=>[a(w,{loading:t.loading,onClick:t.loadAll},{icon:o(()=>[a(t.ReloadOutlined)]),default:o(()=>[b(" "+r(e.$t("compliance.refresh")),1)]),_:1},8,["loading"]),a(M,{trigger:["click"]},{overlay:o(()=>[a(I,{onClick:t.handleNewClick},{default:o(()=>[a(U,{key:"match"},{default:o(()=>[a(t.AimOutlined),b(" "+r(e.$t("compliance.actions.match")),1)]),_:1}),a(U,{key:"ueba-build"},{default:o(()=>[a(t.DatabaseOutlined),b(" "+r(e.$t("compliance.actions.uebaBuild")),1)]),_:1}),a(U,{key:"ueba-analyze"},{default:o(()=>[a(t.FundOutlined),b(" "+r(e.$t("compliance.actions.uebaAnalyze")),1)]),_:1})]),_:1})]),default:o(()=>[a(w,{type:"primary"},{icon:o(()=>[a(t.PlusOutlined)]),default:o(()=>[b(" "+r(e.$t("compliance.actionDropdown")),1)]),_:1})]),_:1})]),_:1})]),c(" Stats overview "),a(D,{gutter:[16,16],style:{"margin-bottom":"20px"}},{default:o(()=>[a(S,{xs:12,sm:8,lg:5},{default:o(()=>[a(k,{style:{background:"var(--bg-card)","border-color":"var(--border-color)"}},{default:o(()=>[a(z,{title:e.$t("compliance.stats.iocTotal"),value:t.threatStats.total,"value-style":{color:"#1677ff",fontSize:"20px"}},{prefix:o(()=>[a(t.SafetyCertificateOutlined)]),_:1},8,["title","value"])]),_:1})]),_:1}),a(S,{xs:12,sm:8,lg:5},{default:o(()=>[a(k,{style:{background:"var(--bg-card)","border-color":"var(--border-color)"}},{default:o(()=>[a(z,{title:e.$t("compliance.stats.iocTypes"),value:t.threatTypeCount,"value-style":{color:"#13c2c2",fontSize:"20px"}},{prefix:o(()=>[a(t.BlockOutlined)]),_:1},8,["title","value"])]),_:1})]),_:1}),a(S,{xs:12,sm:8,lg:5},{default:o(()=>[a(k,{style:{background:"var(--bg-card)","border-color":"var(--border-color)"}},{default:o(()=>[a(z,{title:e.$t("compliance.stats.riskEntities"),value:t.uebaTop.length,"value-style":{color:"#722ed1",fontSize:"20px"}},{prefix:o(()=>[a(t.UserOutlined)]),_:1},8,["title","value"])]),_:1})]),_:1}),a(S,{xs:12,sm:8,lg:5},{default:o(()=>[a(k,{style:{background:"var(--bg-card)","border-color":"var(--border-color)"}},{default:o(()=>[a(z,{title:e.$t("compliance.stats.highRisk"),value:t.highRiskCount,"value-style":{color:t.highRiskCount>0?"#ff4d4f":"#52c41a",fontSize:"20px"}},{prefix:o(()=>[a(t.WarningOutlined)]),_:1},8,["title","value","value-style"])]),_:1})]),_:1}),a(S,{xs:24,sm:8,lg:4},{default:o(()=>[a(k,{style:{background:"var(--bg-card)","border-color":"var(--border-color)"}},{default:o(()=>[a(z,{title:e.$t("compliance.stats.recentAnomalies"),value:t.anomalies.length,"value-style":{color:"#faad14",fontSize:"20px"}},{prefix:o(()=>[a(t.AlertOutlined)]),_:1},8,["title","value"])]),_:1})]),_:1})]),_:1}),c(" Type breakdown "),t.threatStats.total>0?(s(),_(k,{key:0,title:e.$t("compliance.typeBreakdown"),size:"small",style:{background:"var(--bg-card)","border-color":"var(--border-color)","margin-bottom":"20px"},"body-style":{padding:"12px 16px"}},{default:o(()=>[a(L,{size:[12,8],wrap:""},{default:o(()=>[(s(!0),m(R,null,Z(t.typeBreakdown,([n,u])=>(s(),_(x,{key:n,color:t.iocTypeColor(n)},{default:o(()=>[b(r(n)+": "+r(u),1)]),_:2},1032,["color"]))),128))]),_:1})]),_:1},8,["title"])):c("v-if",!0),c(" Tabs "),a(oe,{activeKey:t.activeTab,"onUpdate:activeKey":l[1]||(l[1]=n=>t.activeTab=n),class:"compliance-tabs"},{default:o(()=>[c(" ── Threat Intel tab ──────────────────────────────────────── "),a(O,{key:"threat",tab:e.$t("compliance.tabs.threat")},{default:o(()=>[g("div",Le,[a(N,{value:t.iocTypeFilter,"onUpdate:value":l[0]||(l[0]=n=>t.iocTypeFilter=n),size:"small"},{default:o(()=>[a(j,{value:""},{default:o(()=>[b(r(e.$t("compliance.filter.all")),1)]),_:1}),(s(!0),m(R,null,Z(t.IOC_TYPES,n=>(s(),_(j,{key:n,value:n},{default:o(()=>[b(r(n),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value"])]),a(B,{columns:t.indicatorColumns,"data-source":t.filteredIndicators,pagination:{pageSize:20,showTotal:n=>e.$t("compliance.table.totalSuffix",{n})},size:"small",loading:t.loading,style:{background:"var(--bg-card)"}},{bodyCell:o(({column:n,record:u})=>[n.key==="type"?(s(),_(x,{key:0,color:t.iocTypeColor(u.type),style:{"font-family":"monospace"}},{default:o(()=>[b(r(u.type),1)]),_:2},1032,["color"])):c("v-if",!0),n.key==="value"?(s(),m("span",Ne,r(t.truncate(u.value,64)),1)):c("v-if",!0),n.key==="labels"?(s(),m(R,{key:2},[(s(!0),m(R,null,Z(u.labels,Y=>(s(),_(x,{key:Y,color:"orange",style:{"font-size":"10px",margin:"1px"}},{default:o(()=>[b(r(Y),1)]),_:2},1024))),128)),u.labels.length?c("v-if",!0):(s(),m("span",Pe,"—"))],64)):c("v-if",!0),n.key==="confidence"?(s(),m(R,{key:3},[u.confidence!=null?(s(),m("span",{key:0,style:ie({color:t.confidenceColor(u.confidence),fontWeight:500})},r(u.confidence),5)):(s(),m("span",qe,"—"))],64)):c("v-if",!0),n.key==="source"?(s(),m(R,{key:4},[u.sourceName?(s(),m("span",De,r(u.sourceName),1)):(s(),m("span",We,"—"))],64)):c("v-if",!0),n.key==="lastSeen"?(s(),m("span",Ve,r(t.formatComplianceTime(u.lastSeenAt)),1)):c("v-if",!0),n.key==="action"?(s(),_(H,{key:6,title:e.$t("compliance.table.deleteConfirm"),"ok-text":e.$t("compliance.table.deleteOk"),"cancel-text":e.$t("compliance.table.cancel"),onConfirm:Y=>t.removeIndicator(u)},{default:o(()=>[a(w,{size:"small",type:"link",danger:""},{default:o(()=>[b(r(e.$t("compliance.table.delete")),1)]),_:1})]),_:1},8,["title","ok-text","cancel-text","onConfirm"])):c("v-if",!0)]),emptyText:o(()=>[g("div",Ke,[a(t.SafetyCertificateOutlined,{style:{"font-size":"36px","margin-bottom":"10px",display:"block"}}),b(" "+r(e.$t("compliance.table.emptyThreatsLine1"))+" ",1),l[11]||(l[11]=g("code",{style:{"font-size":"11px"}},"cc compliance threat-intel import <file.json>",-1))])]),_:1},8,["columns","data-source","pagination","loading"])]),_:1},8,["tab"]),c(" ── UEBA tab ──────────────────────────────────────────────── "),a(O,{key:"ueba",tab:e.$t("compliance.tabs.ueba")},{default:o(()=>[t.uebaError.noAuditLog?(s(),_(A,{key:0,type:"info","show-icon":"",message:e.$t("compliance.ueba.noAuditLog"),description:e.$t("compliance.ueba.noAuditLogDesc"),style:{"margin-bottom":"16px"}},null,8,["message","description"])):t.uebaError.error?(s(),_(A,{key:1,type:"error","show-icon":"",message:e.$t("compliance.ueba.errorMessage",{err:t.uebaError.error}),style:{"margin-bottom":"16px"}},null,8,["message"])):c("v-if",!0),g("h3",Ye,r(e.$t("compliance.ueba.topRiskTitle",{count:t.uebaTop.length})),1),a(B,{columns:t.uebaColumns,"data-source":t.uebaTop,pagination:!1,size:"small",loading:t.loading,style:{background:"var(--bg-card)"}},{bodyCell:o(({column:n,record:u})=>[n.key==="entity"?(s(),m("span",Ze,r(u.entity),1)):c("v-if",!0),n.key==="riskScore"?(s(),_(ee,{key:1,percent:Math.min(u.riskScore,100),"stroke-color":t.riskColor(u.riskScore),size:"small",format:()=>u.riskScore.toFixed(1)},null,8,["percent","stroke-color","format"])):c("v-if",!0),n.key==="eventCount"?(s(),m("span",Je,r(u.eventCount),1)):c("v-if",!0),n.key==="failureRate"?(s(),m("span",{key:3,style:ie({color:u.failureRate>.3?"#ff4d4f":"var(--text-secondary)",fontFamily:"monospace"})},r((u.failureRate*100).toFixed(1))+"% ",5)):c("v-if",!0),n.key==="uniqueResources"?(s(),_(x,{key:4,color:"cyan",style:{"font-size":"11px"}},{default:o(()=>[b(r(u.uniqueResources),1)]),_:2},1024)):c("v-if",!0),n.key==="burstiness"?(s(),m("span",Ge,r((u.burstiness*100).toFixed(0))+"% ",1)):c("v-if",!0)]),emptyText:o(()=>[g("div",He,[a(t.UserOutlined,{style:{"font-size":"32px","margin-bottom":"8px",display:"block"}}),b(" "+r(t.uebaError.noAuditLog?e.$t("compliance.table.emptyAuditEntities"):e.$t("compliance.table.emptyRiskEntities")),1)])]),_:1},8,["columns","data-source","loading"]),t.anomalies.length?(s(),m("h3",Qe,r(e.$t("compliance.ueba.anomalyTitle",{count:t.anomalies.length})),1)):c("v-if",!0),t.anomalies.length?(s(),_(ae,{key:3,size:"small","data-source":t.anomalies,locale:{emptyText:e.$t("compliance.table.noAnomalies")}},{renderItem:o(({item:n})=>[a(te,{style:{background:"var(--bg-card)",padding:"10px 16px"}},{default:o(()=>[g("div",Xe,[g("div",$e,[a(x,{color:t.riskColor(n.score*100)},{default:o(()=>[b("score "+r(n.score.toFixed(2)),1)]),_:2},1032,["color"]),n.event?.entity?(s(),m("span",et,r(n.event.entity),1)):c("v-if",!0),n.event?.action?(s(),m("span",tt," → "+r(n.event.action),1)):c("v-if",!0)]),n.reasons.length?(s(),m("div",at,[(s(!0),m(R,null,Z(n.reasons,u=>(s(),_(x,{key:u,color:"volcano",style:{"font-size":"10px",margin:"1px"}},{default:o(()=>[b(r(u),1)]),_:2},1024))),128))])):c("v-if",!0)])]),_:2},1024)]),_:1},8,["data-source","locale"])):c("v-if",!0)]),_:1},8,["tab"])]),_:1},8,["activeKey"]),c(" ── Match modal ───────────────────────────────────────────── "),a(V,{open:t.showMatchModal,"onUpdate:open":l[3]||(l[3]=n=>t.showMatchModal=n),title:e.$t("compliance.match.modalTitle"),"confirm-loading":t.matching,width:500,"ok-text":e.$t("compliance.match.ok"),"cancel-text":e.$t("compliance.match.close"),onOk:t.matchObservable},{default:o(()=>[a(P,{"label-col":{span:5},"wrapper-col":{span:19},style:{"margin-top":"16px"}},{default:o(()=>[a(F,{label:e.$t("compliance.match.label"),required:""},{default:o(()=>[a(W,{value:t.matchForm.observable,"onUpdate:value":l[2]||(l[2]=n=>t.matchForm.observable=n),placeholder:e.$t("compliance.match.placeholder"),"allow-clear":""},null,8,["value","placeholder"])]),_:1},8,["label"])]),_:1}),t.matchResult?(s(),_(k,{key:0,size:"small",style:{background:"var(--bg-base)","margin-top":"8px"}},{default:o(()=>[a(z,{title:e.$t("compliance.match.result"),value:t.matchResult.matched?e.$t("compliance.match.hit"):e.$t("compliance.match.miss"),"value-style":{color:t.matchResult.matched?"#ff4d4f":"#52c41a"}},null,8,["title","value","value-style"]),g("div",ot,[b(r(e.$t("compliance.match.detectType"))+" ",1),a(x,{color:t.iocTypeColor(t.matchResult.type)},{default:o(()=>[b(r(t.matchResult.type),1)]),_:1},8,["color"])]),t.matchResult.indicator?(s(),m("div",lt,[g("div",nt,r(e.$t("compliance.match.sourcePrefix"))+" "+r(t.matchResult.indicator.sourceName||"—"),1),g("div",it,r(e.$t("compliance.match.confidencePrefix"))+" "+r(t.matchResult.indicator.confidence??"—"),1),t.matchResult.indicator.labels.length?(s(),m("div",rt,[(s(!0),m(R,null,Z(t.matchResult.indicator.labels,n=>(s(),_(x,{key:n,color:"orange",style:{"font-size":"10px"}},{default:o(()=>[b(r(n),1)]),_:2},1024))),128))])):c("v-if",!0)])):c("v-if",!0)]),_:1})):c("v-if",!0)]),_:1},8,["open","title","confirm-loading","ok-text","cancel-text"]),c(" ── UEBA build baseline modal ─────────────────────────────── "),a(V,{open:t.showBuildModal,"onUpdate:open":l[6]||(l[6]=n=>t.showBuildModal=n),title:e.$t("compliance.build.modalTitle"),"confirm-loading":t.building,width:480,"ok-text":e.$t("compliance.build.ok"),"cancel-text":e.$t("compliance.build.cancel"),onOk:t.buildBaseline},{default:o(()=>[a(P,{"label-col":{span:6},"wrapper-col":{span:18},style:{"margin-top":"16px"}},{default:o(()=>[a(F,{label:e.$t("compliance.build.entityLabel")},{default:o(()=>[a(W,{value:t.buildForm.entity,"onUpdate:value":l[4]||(l[4]=n=>t.buildForm.entity=n),placeholder:e.$t("compliance.build.entityPlaceholder")},null,8,["value","placeholder"])]),_:1},8,["label"]),a(F,{label:e.$t("compliance.build.daysLabel")},{default:o(()=>[a(K,{value:t.buildForm.days,"onUpdate:value":l[5]||(l[5]=n=>t.buildForm.days=n),min:1,max:365,placeholder:e.$t("compliance.build.daysPlaceholder"),style:{width:"100%"}},null,8,["value","placeholder"])]),_:1},8,["label"])]),_:1}),g("p",st,r(e.$t("compliance.build.footnote")),1)]),_:1},8,["open","title","confirm-loading","ok-text","cancel-text"]),c(" ── UEBA analyze modal ────────────────────────────────────── "),a(V,{open:t.showAnalyzeModal,"onUpdate:open":l[10]||(l[10]=n=>t.showAnalyzeModal=n),title:e.$t("compliance.analyze.modalTitle"),"confirm-loading":t.analyzing,width:480,"ok-text":e.$t("compliance.analyze.ok"),"cancel-text":e.$t("compliance.analyze.cancel"),onOk:t.runAnalyze},{default:o(()=>[a(P,{"label-col":{span:6},"wrapper-col":{span:18},style:{"margin-top":"16px"}},{default:o(()=>[a(F,{label:e.$t("compliance.analyze.entityLabel")},{default:o(()=>[a(W,{value:t.analyzeForm.entity,"onUpdate:value":l[7]||(l[7]=n=>t.analyzeForm.entity=n),placeholder:e.$t("compliance.analyze.entityPlaceholder")},null,8,["value","placeholder"])]),_:1},8,["label"]),a(F,{label:e.$t("compliance.analyze.thresholdLabel")},{default:o(()=>[a(K,{value:t.analyzeForm.threshold,"onUpdate:value":l[8]||(l[8]=n=>t.analyzeForm.threshold=n),min:0,max:1,step:.05,style:{width:"100%"}},null,8,["value"])]),_:1},8,["label"]),a(F,{label:e.$t("compliance.analyze.daysLabel")},{default:o(()=>[a(K,{value:t.analyzeForm.days,"onUpdate:value":l[9]||(l[9]=n=>t.analyzeForm.days=n),min:1,max:30,style:{width:"100%"}},null,8,["value"])]),_:1},8,["label"])]),_:1}),g("p",ct,r(e.$t("compliance.analyze.footnote")),1)]),_:1},8,["open","title","confirm-loading","ok-text","cancel-text"])])}const yt=he(Be,[["render",ut],["__scopeId","data-v-d3ffc3f8"],["__file","/tmp/cc-web-panel-2pZejZ/repo/packages/web-panel/src/views/Compliance.vue"]]);export{yt as default};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{I as y,J as _,U as b,R as i,c as n,K as r,V as u,o as ce,a as de,b as K,r as h,P as d,Q as p,S as k,F as A,Z,$ as Pe}from"./vendor-BvqAck49.js";import{t as W,_ as Ae,b as me,u as ue,E as fe,d as g}from"./index-Dh8r6PnR.js";import{o as Ue,aV as ze,aA as Re,aT as Ee,aW as Me,F as je,ak as Ne,aP as Je,R as De}from"./icons-DP3uiYxy.js";const Le=Object.freeze(["note","post","article","document"]),Be=Object.freeze(["pending","viewed","dismissed"]);function I(l,a=0){return typeof l=="number"&&Number.isFinite(l)?l:a}function pe(l){if(!l||typeof l!="object"||Array.isArray(l))return{};const a={};for(const[t,e]of Object.entries(l))typeof e=="number"&&Number.isFinite(e)&&(a[t]=e);return a}function We(l,a=0){if(!l||typeof l!="object")return null;const t=l.user_id??l.userId??"";if(!t)return null;const e=l.topics&&typeof l.topics=="object"&&!Array.isArray(l.topics)?pe(l.topics):{},z=l.interaction_weights??l.interactionWeights,M=z&&typeof z=="object"&&!Array.isArray(z)?pe(z):{};return{key:t,id:String(l.id||""),userId:t,topics:e,topicCount:Object.keys(e).length,interactionWeights:M,decayFactor:I(l.decay_factor??l.decayFactor,.9),lastUpdated:l.last_updated??l.lastUpdated??null,updateCount:I(l.update_count??l.updateCount,0),_idx:a}}function ye(l){const a=W(l);return Array.isArray(a)?a.map(We).filter(Boolean):[]}function Ye(l,a=0){if(!l||typeof l!="object")return null;const t=l.id||"";return t?{key:t,id:t,userId:l.user_id??l.userId??"",contentId:l.content_id??l.contentId??"",contentType:String(l.content_type??l.contentType??"note").toLowerCase(),title:String(l.title||""),score:I(l.score,0),reason:String(l.reason||""),source:String(l.source||"heuristic"),status:String(l.status||"pending").toLowerCase(),feedback:l.feedback??null,createdAt:l.created_at??l.createdAt??null,viewedAt:l.viewed_at??l.viewedAt??null,_idx:a}:null}function ge(l){const a=W(l);return Array.isArray(a)?a.map(Ye).filter(Boolean):[]}const Ve={total:0,pending:0,viewed:0,dismissed:0,feedbackCount:0,feedbackRate:0,avgScore:0};function _e(l){const a={...Ve},t=W(l);return!t||typeof t!="object"||Array.isArray(t)||(a.total=I(t.total,0),a.pending=I(t.pending,0),a.viewed=I(t.viewed,0),a.dismissed=I(t.dismissed,0),a.feedbackCount=I(t.feedbackCount,0),a.feedbackRate=I(t.feedbackRate,0),a.avgScore=I(t.avgScore,0)),a}function ve(l){const a=W(l);return Array.isArray(a)?a.filter(t=>t&&typeof t=="object"&&typeof t.topic=="string").map((t,e)=>({key:`${t.topic}-${e}`,topic:t.topic,weight:I(t.weight,0)})):[]}function ke(l){const a=W(l);return Array.isArray(a)?a.filter(t=>t&&typeof t=="object"&&typeof t.topic=="string"&&typeof t.action=="string").map((t,e)=>({key:`${t.topic}-${e}`,topic:t.topic,action:t.action,amount:I(t.amount,0)})):[]}function E(l){const a=W(l);return!a||typeof a!="object"||Array.isArray(a)?{ok:!1,reason:"",profileId:null,topicCount:null}:{ok:!!(a.updated||a.deleted||a.marked||a.dismissed||a.recorded||a.applied||a.profileId),reason:a.reason?String(a.reason):"",profileId:a.profileId?String(a.profileId):null,topicCount:typeof a.topicCount=="number"?a.topicCount:null}}function Ge(l){if(l==null||l==="")return"—";const a=typeof l=="number"?new Date(l):new Date(String(l));return isNaN(a.getTime())?String(l):a.toLocaleString("zh-CN",{hour12:!1})}const Ke={__name:"Recommend",setup(l,{expose:a}){a();const{t}=me(),e=ue(),z=fe.PRESENTED_IMAGE_SIMPLE,M=h(!1),w=h(!1),Y=h(!1),j=h([]),S=h([]),O=h({total:0,pending:0,viewed:0,dismissed:0,feedbackCount:0,feedbackRate:0,avgScore:0}),T=h([]),F=h([]),v=h(null),U=h("recs"),N=h(""),P=h(""),J=h(!1),D=h(!1),x=de({userId:"",topicsJson:"",weightsJson:""}),q=h(null),Q=K(()=>j.value.map(o=>({value:o.userId,label:`${o.userId} (${t("recommend.userBar.topicSuffix",{count:o.topicCount})})`}))),H=K(()=>[{title:t("recommend.recColumns.title"),key:"title"},{title:t("recommend.recColumns.contentType"),key:"contentType",width:"110px"},{title:t("recommend.recColumns.score"),key:"score",width:"180px"},{title:t("recommend.recColumns.reason"),key:"reason",width:"220px"},{title:t("recommend.recColumns.status"),key:"status",width:"100px"},{title:t("recommend.recColumns.feedback"),key:"feedback",width:"90px"},{title:t("recommend.recColumns.action"),key:"action",width:"210px"}]),V=K(()=>[{title:t("recommend.profileColumns.userId"),key:"userId"},{title:t("recommend.profileColumns.topicCount"),key:"topicCount",width:"110px"},{title:t("recommend.profileColumns.decayFactor"),key:"decayFactor",width:"110px"},{title:t("recommend.profileColumns.updateCount"),key:"updateCount",width:"110px"},{title:t("recommend.profileColumns.lastUpdated"),key:"lastUpdated",width:"180px"},{title:t("recommend.profileColumns.action"),key:"action",width:"200px"}]),ee=K(()=>{let o=S.value;return N.value&&(o=o.filter(c=>c.status===N.value)),P.value&&(o=o.filter(c=>c.contentType===P.value)),o});function te(o){const c=`recommend.type.${o}`,f=t(c);return f===c?o:f}function oe(o){return{note:"blue",post:"green",article:"purple",document:"orange"}[o]||"default"}function re(o){return{note:"#1677ff",post:"#52c41a",article:"#722ed1",document:"#fa8c16"}[o]||"#888"}function G(o){const c=`recommend.status.${o}`,f=t(c);return f===c?o:f}function X(o){return{pending:"processing",viewed:"green",dismissed:"default"}[o]||"default"}function ne(o){const c=`recommend.feedbackLabel.${o}`,f=t(c);return f===c?o:f}function $(o){return{like:"green",dislike:"red",later:"gold"}[o]||"default"}function R(o){return o>=.7?"#52c41a":o>=.4?"#1677ff":o>=.2?"#faad14":"#ff4d4f"}function ae(o){return o>=.7?"#52c41a":o>=.4?"#1677ff":o>=.2?"#faad14":"#888"}function s(o){try{return JSON.stringify(o,null,2)}catch{return String(o)}}async function m(){M.value=!0;try{const{output:o}=await e.execute("recommend profiles --json",1e4).catch(()=>({output:""}));j.value=ye(o),v.value&&!j.value.find(c=>c.userId===v.value)&&(v.value=null),v.value&&await C()}catch(o){g.error(t("recommend.messages.loadProfilesFailed",{err:o?.message||o}))}finally{M.value=!1}}async function C(){if(!v.value){S.value=[],O.value={total:0,pending:0,viewed:0,dismissed:0,feedbackCount:0,feedbackRate:0,avgScore:0},T.value=[];return}w.value=!0;try{const o=L(v.value),[c,f,B]=await Promise.all([e.execute(`recommend list ${o} --limit 200 --json`,1e4).catch(()=>({output:""})),e.execute(`recommend stats ${o} --json`,8e3).catch(()=>({output:""})),e.execute(`recommend top-interests ${o} --limit 30 --json`,8e3).catch(()=>({output:""}))]);S.value=ge(c.output),O.value=_e(f.output),T.value=ve(B.output)}catch(o){g.error(t("recommend.messages.loadUserFailed",{err:o?.message||o}))}finally{w.value=!1}}function L(o){return`"${String(o).replace(/"/g,'\\"')}"`}function be(){F.value=[],C()}function xe(o){v.value=o,U.value="recs",C()}async function he(){if(!x.userId.trim()){g.warning(t("recommend.messages.userIdRequired"));return}if(x.topicsJson.trim())try{JSON.parse(x.topicsJson)}catch{g.warning(t("recommend.messages.topicsJsonInvalid"));return}if(x.weightsJson.trim())try{JSON.parse(x.weightsJson)}catch{g.warning(t("recommend.messages.weightsJsonInvalid"));return}Y.value=!0;try{const o=[`recommend create-profile ${L(x.userId.trim())}`];x.topicsJson.trim()&&o.push(`-t ${se(x.topicsJson.trim())}`),x.weightsJson.trim()&&o.push(`-w ${se(x.weightsJson.trim())}`),o.push("--json");const{output:c}=await e.execute(o.join(" "),1e4),f=E(c);if(!f.ok){g.error(t("recommend.messages.createFailed",{err:f.reason||c.slice(0,120)}));return}g.success(t("recommend.messages.createOk",{id:f.profileId?.slice(0,8)||""})),J.value=!1;const B=x.userId.trim();le(),await m(),v.value=B,await C()}catch(o){g.error(t("recommend.messages.createFailed",{err:o?.message||o}))}finally{Y.value=!1}}function se(o){return`'${String(o).replace(/'/g,"'\\''")}'`}async function Ce(){if(v.value)try{const{output:o}=await e.execute(`recommend decay ${L(v.value)} --json`,8e3),c=E(o);if(!c.ok){g.error(t("recommend.messages.decayFailed",{err:c.reason||o.slice(0,120)}));return}g.success(c.topicCount!==null?t("recommend.messages.decayOkTopics",{count:c.topicCount}):t("recommend.messages.decayOk")),await m()}catch(o){g.error(t("recommend.messages.decayFailed",{err:o?.message||o}))}}async function we(){if(v.value)try{const{output:o}=await e.execute(`recommend suggest ${L(v.value)} --json`,8e3);F.value=ke(o),U.value="interests",F.value.length?g.success(t("recommend.messages.suggestFound",{count:F.value.length})):g.info(t("recommend.messages.suggestNone"))}catch(o){g.error(t("recommend.messages.loadSuggestFailed",{err:o?.message||o}))}}async function Se(o){try{const{output:c}=await e.execute(`recommend delete-profile ${L(o.userId)} --json`,8e3),f=E(c);if(!f.ok){g.error(t("recommend.messages.deleteFailed",{err:f.reason||c.slice(0,120)}));return}g.success(t("recommend.messages.deleteOk")),v.value===o.userId&&(v.value=null),await m()}catch(c){g.error(t("recommend.messages.deleteFailed",{err:c?.message||c}))}}function Te(o){q.value=o,D.value=!0}async function Ie(o){try{const{output:c}=await e.execute(`recommend view ${o.id} --json`,8e3),f=E(c);if(!f.ok){g.error(t("recommend.messages.viewFailed",{err:f.reason||c.slice(0,120)}));return}g.success(t("recommend.messages.viewOk")),await C()}catch(c){g.error(t("recommend.messages.viewFailed",{err:c?.message||c}))}}async function Oe(o,c){try{const{output:f}=await e.execute(`recommend feedback ${o.id} ${c} --json`,8e3),B=E(f);if(!B.ok){g.error(t("recommend.messages.feedbackFailed",{err:B.reason||f.slice(0,120)}));return}g.success(t("recommend.messages.feedbackOk")),await C()}catch(f){g.error(t("recommend.messages.feedbackFailed",{err:f?.message||f}))}}async function Fe(o){try{const{output:c}=await e.execute(`recommend dismiss ${o.id} --json`,8e3),f=E(c);if(!f.ok){g.error(t("recommend.messages.dismissFailed",{err:f.reason||c.slice(0,120)}));return}g.success(t("recommend.messages.dismissOk")),await C()}catch(c){g.error(t("recommend.messages.dismissFailed",{err:c?.message||c}))}}function le(){x.userId="",x.topicsJson="",x.weightsJson=""}ce(m);const ie={t,ws:e,EMPTY_IMG:z,loading:M,loadingRecs:w,creating:Y,profiles:j,recs:S,userStats:O,topInterests:T,suggestions:F,selectedUser:v,activeTab:U,statusFilter:N,typeFilter:P,showCreateProfileModal:J,showDetailsModal:D,createForm:x,currentProfile:q,userOptions:Q,recColumns:H,profileColumns:V,filteredRecs:ee,typeLabel:te,typeColor:oe,typeBarColor:re,statusLabel:G,statusColor:X,feedbackLabel:ne,feedbackColor:$,scoreColor:R,weightColor:ae,formatJson:s,loadAll:m,loadUserData:C,encodeArg:L,onUserChange:be,selectAndSwitch:xe,submitCreateProfile:he,shellQuote:se,applyDecay:Ce,loadSuggestions:we,deleteProfile:Se,viewProfileDetails:Te,markViewed:Ie,provideFeedback:Oe,dismissRec:Fe,resetCreateForm:le,ref:h,computed:K,onMounted:ce,reactive:de,get useI18n(){return me},get ReloadOutlined(){return De},get UserAddOutlined(){return Je},get UserOutlined(){return Ne},get FireOutlined(){return je},get EyeInvisibleOutlined(){return Me},get LikeOutlined(){return Ee},get StarOutlined(){return Re},get FieldTimeOutlined(){return ze},get BulbOutlined(){return Ue},get message(){return g},get Empty(){return fe},get useWsStore(){return ue},get parseProfiles(){return ye},get parseRecommendations(){return ge},get parseUserStats(){return _e},get parseTopInterests(){return ve},get parseSuggestions(){return ke},get parseActionResult(){return E},get formatRecommendTime(){return Ge},get CONTENT_TYPE_IDS(){return Le},get RECOMMENDATION_STATUSES(){return Be}};return Object.defineProperty(ie,"__isScriptSetup",{enumerable:!1,value:!0}),ie}},Ze={style:{display:"flex","align-items":"center","justify-content":"space-between","margin-bottom":"24px"}},qe={class:"page-title"},Qe={class:"page-sub"},He={style:{display:"flex","align-items":"center",gap:"12px","flex-wrap":"wrap"}},Xe={style:{color:"var(--text-secondary)","font-size":"12px"}},$e={class:"type-name"},et={class:"filter-bar"},tt={style:{color:"var(--text-primary)","font-weight":"500"}},ot={style:{color:"var(--text-muted)","font-size":"11px","margin-top":"2px"}},rt={key:3,style:{color:"var(--text-secondary)","font-size":"12px"}},nt={key:1,style:{color:"var(--text-muted)"}},at={style:{padding:"40px",color:"var(--text-muted)","text-align":"center"}},st={key:0,style:{color:"var(--text-primary)","font-family":"monospace","font-weight":"500"}},lt={key:2,style:{color:"var(--text-secondary)","font-family":"monospace","font-size":"12px"}},it={key:3,style:{color:"var(--text-secondary)"}},ct={key:4,style:{color:"var(--text-secondary)","font-size":"11px"}},dt={style:{padding:"40px",color:"var(--text-muted)","text-align":"center"}},mt={key:1},ut={class:"interest-topic"},ft={style:{"margin-left":"8px","font-family":"monospace",color:"var(--text-primary)"}},pt={style:{"margin-left":"auto",color:"var(--text-secondary)","font-size":"12px"}},yt={key:0,style:{"padding-top":"8px"}},gt={style:{"font-family":"monospace","font-size":"12px"}},_t={style:{color:"var(--text-primary)","font-size":"13px",margin:"16px 0 8px"}},vt={key:1},kt={class:"interest-topic"},bt={key:2,style:{color:"var(--text-primary)","font-size":"13px",margin:"16px 0 8px"}},xt={key:3,class:"weights-pre"};function ht(l,a,t,e,z,M){const w=y("a-button"),Y=y("a-space"),j=y("a-select"),S=y("a-card"),O=y("a-statistic"),T=y("a-col"),F=y("a-row"),v=y("a-tag"),U=y("a-radio-button"),N=y("a-radio-group"),P=y("a-empty"),J=y("a-progress"),D=y("a-menu-item"),x=y("a-menu"),q=y("a-dropdown"),Q=y("a-popconfirm"),H=y("a-table"),V=y("a-tab-pane"),ee=y("a-list-item"),te=y("a-list"),oe=y("a-tabs"),re=y("a-input"),G=y("a-form-item"),X=y("a-textarea"),ne=y("a-form"),$=y("a-modal"),R=y("a-descriptions-item"),ae=y("a-descriptions");return d(),_("div",null,[b("div",Ze,[b("div",null,[b("h2",qe,i(e.t("recommend.title")),1),b("p",Qe,i(e.t("recommend.subtitle")),1)]),n(Y,null,{default:r(()=>[n(w,{loading:e.loading,onClick:e.loadAll},{icon:r(()=>[n(e.ReloadOutlined)]),default:r(()=>[p(" "+i(e.t("recommend.refresh")),1)]),_:1},8,["loading"]),n(w,{type:"primary",onClick:a[0]||(a[0]=s=>e.showCreateProfileModal=!0)},{icon:r(()=>[n(e.UserAddOutlined)]),default:r(()=>[p(" "+i(e.t("recommend.createProfile")),1)]),_:1})]),_:1})]),u(" User selector "),n(S,{size:"small",style:{background:"var(--bg-card)","border-color":"var(--border-color)","margin-bottom":"16px"},"body-style":{padding:"10px 16px"}},{default:r(()=>[b("div",He,[b("span",Xe,i(e.t("recommend.userBar.currentUser")),1),n(j,{value:e.selectedUser,"onUpdate:value":a[1]||(a[1]=s=>e.selectedUser=s),options:e.userOptions,placeholder:e.t("recommend.userBar.selectPlaceholder"),style:{"min-width":"280px"},"allow-clear":"","show-search":"",onChange:e.onUserChange},null,8,["value","options","placeholder"]),e.selectedUser?(d(),k(w,{key:0,size:"small",onClick:e.applyDecay},{icon:r(()=>[n(e.FieldTimeOutlined)]),default:r(()=>[p(" "+i(e.t("recommend.userBar.applyDecay")),1)]),_:1})):u("v-if",!0),e.selectedUser?(d(),k(w,{key:1,size:"small",onClick:e.loadSuggestions},{icon:r(()=>[n(e.BulbOutlined)]),default:r(()=>[p(" "+i(e.t("recommend.userBar.suggest")),1)]),_:1})):u("v-if",!0)])]),_:1}),u(" Stat cards "),n(F,{gutter:[16,16],style:{"margin-bottom":"20px"}},{default:r(()=>[n(T,{xs:12,sm:8,lg:5},{default:r(()=>[n(S,{style:{background:"var(--bg-card)","border-color":"var(--border-color)"}},{default:r(()=>[n(O,{title:e.t("recommend.stats.profiles"),value:e.profiles.length,"value-style":{color:"#1677ff",fontSize:"20px"}},{prefix:r(()=>[n(e.UserOutlined)]),_:1},8,["title","value"])]),_:1})]),_:1}),n(T,{xs:12,sm:8,lg:5},{default:r(()=>[n(S,{style:{background:"var(--bg-card)","border-color":"var(--border-color)"}},{default:r(()=>[n(O,{title:e.t("recommend.stats.totalRecs"),value:e.userStats.total,"value-style":{color:"#722ed1",fontSize:"20px"}},{prefix:r(()=>[n(e.FireOutlined)]),_:1},8,["title","value"])]),_:1})]),_:1}),n(T,{xs:12,sm:8,lg:5},{default:r(()=>[n(S,{style:{background:"var(--bg-card)","border-color":"var(--border-color)"}},{default:r(()=>[n(O,{title:e.t("recommend.stats.pending"),value:e.userStats.pending,"value-style":{color:e.userStats.pending>0?"#faad14":"#888",fontSize:"20px"}},{prefix:r(()=>[n(e.EyeInvisibleOutlined)]),_:1},8,["title","value","value-style"])]),_:1})]),_:1}),n(T,{xs:12,sm:8,lg:5},{default:r(()=>[n(S,{style:{background:"var(--bg-card)","border-color":"var(--border-color)"}},{default:r(()=>[n(O,{title:e.t("recommend.stats.feedbackRate"),value:e.userStats.feedbackRate*100,suffix:"%",precision:1,"value-style":{color:"#13c2c2",fontSize:"20px"}},{prefix:r(()=>[n(e.LikeOutlined)]),_:1},8,["title","value"])]),_:1})]),_:1}),n(T,{xs:24,sm:8,lg:4},{default:r(()=>[n(S,{style:{background:"var(--bg-card)","border-color":"var(--border-color)"}},{default:r(()=>[n(O,{title:e.t("recommend.stats.avgScore"),value:e.userStats.avgScore,precision:3,"value-style":{color:e.scoreColor(e.userStats.avgScore),fontSize:"20px"}},{prefix:r(()=>[n(e.StarOutlined)]),_:1},8,["title","value","value-style"])]),_:1})]),_:1})]),_:1}),u(" Content type catalogue "),n(S,{title:e.t("recommend.typeCatalogue"),size:"small",style:{background:"var(--bg-card)","border-color":"var(--border-color)","margin-bottom":"20px"},"body-style":{padding:"12px 16px"}},{default:r(()=>[n(F,{gutter:[12,12]},{default:r(()=>[(d(!0),_(A,null,Z(e.CONTENT_TYPE_IDS,s=>(d(),k(T,{key:s,xs:12,sm:6},{default:r(()=>[b("div",{class:"type-pill",style:Pe({borderLeftColor:e.typeBarColor(s)})},[n(v,{color:e.typeColor(s),style:{"font-family":"monospace"}},{default:r(()=>[p(i(s),1)]),_:2},1032,["color"]),b("div",$e,i(e.typeLabel(s)),1)],4)]),_:2},1024))),128))]),_:1})]),_:1},8,["title"]),u(" Tabs "),n(oe,{activeKey:e.activeTab,"onUpdate:activeKey":a[4]||(a[4]=s=>e.activeTab=s),class:"recommend-tabs"},{default:r(()=>[u(" ── Recommendations tab ────────────────────────────────── "),n(V,{key:"recs",tab:e.t("recommend.tabs.recs")},{default:r(()=>[b("div",et,[n(N,{value:e.statusFilter,"onUpdate:value":a[2]||(a[2]=s=>e.statusFilter=s),size:"small","button-style":"solid"},{default:r(()=>[n(U,{value:""},{default:r(()=>[p(i(e.t("recommend.filter.allStatuses")),1)]),_:1}),(d(!0),_(A,null,Z(e.RECOMMENDATION_STATUSES,s=>(d(),k(U,{key:s,value:s},{default:r(()=>[p(i(e.statusLabel(s)),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value"]),n(N,{value:e.typeFilter,"onUpdate:value":a[3]||(a[3]=s=>e.typeFilter=s),size:"small"},{default:r(()=>[n(U,{value:""},{default:r(()=>[p(i(e.t("recommend.filter.allTypes")),1)]),_:1}),(d(!0),_(A,null,Z(e.CONTENT_TYPE_IDS,s=>(d(),k(U,{key:s,value:s},{default:r(()=>[p(i(e.typeLabel(s)),1)]),_:2},1032,["value"]))),128))]),_:1},8,["value"])]),e.selectedUser?(d(),k(H,{key:1,columns:e.recColumns,"data-source":e.filteredRecs,pagination:{pageSize:20,showTotal:s=>e.t("recommend.totals.rows",{count:s})},size:"small",loading:e.loadingRecs,style:{background:"var(--bg-card)"}},{bodyCell:r(({column:s,record:m})=>[s.key==="title"?(d(),_(A,{key:0},[b("span",tt,i(m.title||e.t("recommend.noTitle")),1),b("div",ot,i(m.contentId),1)],64)):u("v-if",!0),s.key==="contentType"?(d(),k(v,{key:1,color:e.typeColor(m.contentType),style:{"font-family":"monospace"}},{default:r(()=>[p(i(m.contentType),1)]),_:2},1032,["color"])):u("v-if",!0),s.key==="score"?(d(),k(J,{key:2,percent:Math.round(m.score*100),"stroke-color":e.scoreColor(m.score),size:"small",format:()=>m.score.toFixed(3)},null,8,["percent","stroke-color","format"])):u("v-if",!0),s.key==="reason"?(d(),_("span",rt,i(m.reason),1)):u("v-if",!0),s.key==="status"?(d(),k(v,{key:4,color:e.statusColor(m.status)},{default:r(()=>[p(i(e.statusLabel(m.status)),1)]),_:2},1032,["color"])):u("v-if",!0),s.key==="feedback"?(d(),_(A,{key:5},[m.feedback?(d(),k(v,{key:0,color:e.feedbackColor(m.feedback)},{default:r(()=>[p(i(e.feedbackLabel(m.feedback)),1)]),_:2},1032,["color"])):(d(),_("span",nt,"—"))],64)):u("v-if",!0),s.key==="action"?(d(),_(A,{key:6},[m.status==="pending"?(d(),k(w,{key:0,size:"small",type:"link",onClick:C=>e.markViewed(m)},{default:r(()=>[p(i(e.t("recommend.rowActions.view")),1)]),_:1},8,["onClick"])):u("v-if",!0),m.status!=="dismissed"?(d(),k(q,{key:1},{overlay:r(()=>[n(x,{onClick:({key:C})=>e.provideFeedback(m,C)},{default:r(()=>[n(D,{key:"like",style:{color:"#52c41a"}},{default:r(()=>[p(i(e.t("recommend.feedbackMenu.like")),1)]),_:1}),n(D,{key:"dislike",style:{color:"#ff4d4f"}},{default:r(()=>[p(i(e.t("recommend.feedbackMenu.dislike")),1)]),_:1}),n(D,{key:"later"},{default:r(()=>[p(i(e.t("recommend.feedbackMenu.later")),1)]),_:1})]),_:1},8,["onClick"])]),default:r(()=>[n(w,{size:"small",type:"link"},{default:r(()=>[p(i(e.t("recommend.feedbackDropdown")),1)]),_:1})]),_:2},1024)):u("v-if",!0),m.status!=="dismissed"?(d(),k(Q,{key:2,title:e.t("recommend.rowActions.dismissConfirmTitle"),"ok-text":e.t("recommend.rowActions.dismissOk"),"cancel-text":e.t("common.cancel"),onConfirm:C=>e.dismissRec(m)},{default:r(()=>[n(w,{size:"small",type:"link",danger:""},{default:r(()=>[p(i(e.t("recommend.rowActions.dismiss")),1)]),_:1})]),_:1},8,["title","ok-text","cancel-text","onConfirm"])):u("v-if",!0)],64)):u("v-if",!0)]),emptyText:r(()=>[b("div",at,[n(e.FireOutlined,{style:{"font-size":"36px","margin-bottom":"10px",display:"block"}}),p(" "+i(e.statusFilter||e.typeFilter?e.t("recommend.empty.filtered"):e.t("recommend.empty.noRecsHint")),1)])]),_:1},8,["columns","data-source","pagination","loading"])):(d(),k(P,{key:0,description:e.t("recommend.empty.selectUser"),image:e.EMPTY_IMG,style:{padding:"40px 0"}},null,8,["description","image"]))]),_:1},8,["tab"]),u(" ── Profiles tab ───────────────────────────────────────── "),n(V,{key:"profiles",tab:e.t("recommend.tabs.profiles")},{default:r(()=>[n(H,{columns:e.profileColumns,"data-source":e.profiles,pagination:{pageSize:20,showTotal:s=>e.t("recommend.totals.profiles",{count:s})},size:"small",loading:e.loading,style:{background:"var(--bg-card)"}},{bodyCell:r(({column:s,record:m})=>[s.key==="userId"?(d(),_("span",st,i(m.userId),1)):u("v-if",!0),s.key==="topicCount"?(d(),k(v,{key:1,color:"blue"},{default:r(()=>[p(i(e.t("recommend.topicTagSuffix",{count:m.topicCount})),1)]),_:2},1024)):u("v-if",!0),s.key==="decayFactor"?(d(),_("span",lt,i(m.decayFactor.toFixed(2)),1)):u("v-if",!0),s.key==="updateCount"?(d(),_("span",it,i(m.updateCount),1)):u("v-if",!0),s.key==="lastUpdated"?(d(),_("span",ct,i(e.formatRecommendTime(m.lastUpdated)),1)):u("v-if",!0),s.key==="action"?(d(),_(A,{key:5},[n(w,{size:"small",type:"link",onClick:C=>e.viewProfileDetails(m)},{default:r(()=>[p(i(e.t("recommend.rowActions.details")),1)]),_:1},8,["onClick"]),n(w,{size:"small",type:"link",onClick:C=>e.selectAndSwitch(m.userId)},{default:r(()=>[p(i(e.t("recommend.rowActions.switch")),1)]),_:1},8,["onClick"]),n(Q,{title:e.t("recommend.rowActions.deleteConfirmTitle"),"ok-text":e.t("recommend.rowActions.deleteOk"),"cancel-text":e.t("common.cancel"),onConfirm:C=>e.deleteProfile(m)},{default:r(()=>[n(w,{size:"small",type:"link",danger:""},{default:r(()=>[p(i(e.t("recommend.rowActions.delete")),1)]),_:1})]),_:1},8,["title","ok-text","cancel-text","onConfirm"])],64)):u("v-if",!0)]),emptyText:r(()=>[b("div",dt,[n(e.UserOutlined,{style:{"font-size":"36px","margin-bottom":"10px",display:"block"}}),p(" "+i(e.t("recommend.empty.noProfiles")),1)])]),_:1},8,["columns","data-source","pagination","loading"])]),_:1},8,["tab"]),u(" ── Top interests tab ──────────────────────────────────── "),n(V,{key:"interests",tab:e.t("recommend.tabs.interests")},{default:r(()=>[e.selectedUser?(d(),k(F,{key:1,gutter:[16,16]},{default:r(()=>[n(T,{xs:24,lg:14},{default:r(()=>[n(S,{title:e.t("recommend.interest.topicWeights"),size:"small",style:{background:"var(--bg-card)","border-color":"var(--border-color)"}},{default:r(()=>[e.topInterests.length?(d(),_("div",mt,[(d(!0),_(A,null,Z(e.topInterests,s=>(d(),_("div",{key:s.key,class:"interest-row"},[b("span",ut,i(s.topic),1),n(J,{percent:Math.round(s.weight*100),"stroke-color":e.weightColor(s.weight),format:()=>s.weight.toFixed(3),size:"small",style:{flex:"1","margin-left":"12px"}},null,8,["percent","stroke-color","format"])]))),128))])):(d(),k(P,{key:0,description:e.t("recommend.empty.noInterests"),image:e.EMPTY_IMG},null,8,["description","image"]))]),_:1},8,["title"])]),_:1}),n(T,{xs:24,lg:10},{default:r(()=>[n(S,{title:e.t("recommend.interest.feedbackSuggest"),size:"small",style:{background:"var(--bg-card)","border-color":"var(--border-color)"}},{default:r(()=>[e.suggestions.length?(d(),k(te,{key:1,size:"small","data-source":e.suggestions},{renderItem:r(({item:s})=>[n(ee,null,{default:r(()=>[n(v,{color:s.action==="boost"?"green":"orange"},{default:r(()=>[p(i(s.action==="boost"?e.t("recommend.interest.boost"):e.t("recommend.interest.lower")),1)]),_:2},1032,["color"]),b("span",ft,i(s.topic),1),b("span",pt,"±"+i(s.amount),1)]),_:2},1024)]),_:1},8,["data-source"])):(d(),k(P,{key:0,description:e.t("recommend.empty.noSuggestions"),image:e.EMPTY_IMG},null,8,["description","image"]))]),_:1},8,["title"])]),_:1})]),_:1})):(d(),k(P,{key:0,description:e.t("recommend.empty.selectUser"),image:e.EMPTY_IMG,style:{padding:"40px 0"}},null,8,["description","image"]))]),_:1},8,["tab"])]),_:1},8,["activeKey"]),u(" ── Create profile modal ───────────────────────────────── "),n($,{open:e.showCreateProfileModal,"onUpdate:open":a[8]||(a[8]=s=>e.showCreateProfileModal=s),title:e.t("recommend.create.title"),"confirm-loading":e.creating,width:560,"ok-text":e.t("recommend.create.ok"),"cancel-text":e.t("common.cancel"),onOk:e.submitCreateProfile,onCancel:e.resetCreateForm},{default:r(()=>[n(ne,{"label-col":{span:5},"wrapper-col":{span:19},style:{"margin-top":"16px"}},{default:r(()=>[n(G,{label:e.t("recommend.create.userIdLabel"),required:""},{default:r(()=>[n(re,{value:e.createForm.userId,"onUpdate:value":a[5]||(a[5]=s=>e.createForm.userId=s),placeholder:e.t("recommend.create.userIdPlaceholder")},null,8,["value","placeholder"])]),_:1},8,["label"]),n(G,{label:e.t("recommend.create.topicsLabel")},{default:r(()=>[n(X,{value:e.createForm.topicsJson,"onUpdate:value":a[6]||(a[6]=s=>e.createForm.topicsJson=s),placeholder:e.t("recommend.create.topicsPlaceholder"),"auto-size":{minRows:2,maxRows:5}},null,8,["value","placeholder"])]),_:1},8,["label"]),n(G,{label:e.t("recommend.create.weightsLabel")},{default:r(()=>[n(X,{value:e.createForm.weightsJson,"onUpdate:value":a[7]||(a[7]=s=>e.createForm.weightsJson=s),placeholder:e.t("recommend.create.weightsPlaceholder"),"auto-size":{minRows:2,maxRows:5}},null,8,["value","placeholder"])]),_:1},8,["label"])]),_:1})]),_:1},8,["open","title","confirm-loading","ok-text","cancel-text"]),u(" ── Profile details modal ──────────────────────────────── "),n($,{open:e.showDetailsModal,"onUpdate:open":a[9]||(a[9]=s=>e.showDetailsModal=s),title:e.t("recommend.details.title",{userId:e.currentProfile?.userId||""}),width:680,footer:null},{default:r(()=>[e.currentProfile?(d(),_("div",yt,[n(ae,{column:2,size:"small",bordered:""},{default:r(()=>[n(R,{label:e.t("recommend.details.id"),span:2},{default:r(()=>[b("span",gt,i(e.currentProfile.id),1)]),_:1},8,["label"]),n(R,{label:e.t("recommend.details.topicCount")},{default:r(()=>[p(i(e.currentProfile.topicCount),1)]),_:1},8,["label"]),n(R,{label:e.t("recommend.details.decayFactor")},{default:r(()=>[p(i(e.currentProfile.decayFactor.toFixed(2)),1)]),_:1},8,["label"]),n(R,{label:e.t("recommend.details.updateCount")},{default:r(()=>[p(i(e.currentProfile.updateCount),1)]),_:1},8,["label"]),n(R,{label:e.t("recommend.details.lastUpdated")},{default:r(()=>[p(i(e.formatRecommendTime(e.currentProfile.lastUpdated)),1)]),_:1},8,["label"])]),_:1}),b("h4",_t,i(e.t("recommend.details.topicWeights")),1),Object.keys(e.currentProfile.topics).length?(d(),_("div",vt,[(d(!0),_(A,null,Z(e.currentProfile.topics,(s,m)=>(d(),_("div",{key:m,class:"interest-row"},[b("span",kt,i(m),1),n(J,{percent:Math.round(s*100),"stroke-color":e.weightColor(s),format:()=>s.toFixed(3),size:"small",style:{flex:"1","margin-left":"12px"}},null,8,["percent","stroke-color","format"])]))),128))])):(d(),k(P,{key:0,description:e.t("recommend.empty.noTopics"),image:e.EMPTY_IMG},null,8,["description","image"])),Object.keys(e.currentProfile.interactionWeights).length?(d(),_("h4",bt,i(e.t("recommend.details.interactionWeights")),1)):u("v-if",!0),Object.keys(e.currentProfile.interactionWeights).length?(d(),_("pre",xt,i(e.formatJson(e.currentProfile.interactionWeights)),1)):u("v-if",!0)])):u("v-if",!0)]),_:1},8,["open","title"])])}const Tt=Ae(Ke,[["render",ht],["__scopeId","data-v-9cfd9dba"],["__file","/tmp/cc-web-panel-2pZejZ/repo/packages/web-panel/src/views/Recommend.vue"]]);export{Tt as default};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{Q as r}from"./index-Dh8r6PnR.js";const o=((n,a,e)=>{r(n,`[ant-design-vue: ${a}] ${e}`)});export{o as d};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{C as o}from"./Col-CYZ20nTQ.js";import{a0 as t}from"./index-Dh8r6PnR.js";import"./vendor-BvqAck49.js";import"./index-DJUlI6gf.js";import"./icons-DP3uiYxy.js";const s=t(o);export{s as default};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{A as o}from"./Row-UkpIdv_5.js";import{a0 as t}from"./index-Dh8r6PnR.js";import"./vendor-BvqAck49.js";import"./responsiveObserve-BcHZcnQx.js";import"./useFlexGapSupport-C7bjaPsk.js";import"./styleChecker-B4pe7rFW.js";import"./index-DJUlI6gf.js";import"./icons-DP3uiYxy.js";const l=t(o);export{l as default};
|