@xopcai/xopc 0.0.295 → 0.0.296
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/browser-ext/manifest.json +1 -1
- package/dist/extensions/telegram/xopc.extension.json +1 -1
- package/dist/gateway/static/root/assets/{activity-store-6lmzUBEr.js → activity-store-DKWpcUF7.js} +1 -1
- package/dist/gateway/static/root/assets/{agent-avatar-dicebear-CdaEBfdU.js → agent-avatar-dicebear-BCKaf8i6.js} +1 -1
- package/dist/gateway/static/root/assets/agent-defaults-settings-panel-mqojcrab.js +1 -0
- package/dist/gateway/static/root/assets/agents-DeHJUcOp.js +1 -0
- package/dist/gateway/static/root/assets/{api-D6yepxBp.js → api-Bq0dy2ht.js} +1 -1
- package/dist/gateway/static/root/assets/api-DPVNGtF-.js +1 -0
- package/dist/gateway/static/root/assets/{app-management-settings-panel-BeucVbqM.js → app-management-settings-panel-BKD7hlU4.js} +1 -1
- package/dist/gateway/static/root/assets/{appearance-settings-D9QdN7OM.js → appearance-settings-Bk5reOD9.js} +1 -1
- package/dist/gateway/static/root/assets/apps-page-B9DyOYwB.js +1 -0
- package/dist/gateway/static/root/assets/{archive-plugin-fRMLP9dL.js → archive-plugin-DZbe2bJP.js} +1 -1
- package/dist/gateway/static/root/assets/{attachment-load-DVYW2whr.js → attachment-load-CoMeh7-l.js} +1 -1
- package/dist/gateway/static/root/assets/{automations-page-iS1Wmdlc.js → automations-page-BlJgwSUG.js} +1 -1
- package/dist/gateway/static/root/assets/automations-workspace-ORSqorgI.js +6 -0
- package/dist/gateway/static/root/assets/{binary-plugins-Bj3KFtIt.js → binary-plugins-CG5vb8MG.js} +1 -1
- package/dist/gateway/static/root/assets/{block-editor-BLs4IKoH.js → block-editor-CzLz3nS0.js} +3 -3
- package/dist/gateway/static/root/assets/{browser-automation-inputs-Cq4sIJt2.js → browser-automation-inputs-Ba7bkmFQ.js} +1 -1
- package/dist/gateway/static/root/assets/{browser-automations-page-BntIB4a1.js → browser-automations-page-CK__2t2k.js} +2 -2
- package/dist/gateway/static/root/assets/browser-settings-page-IWkMJk8D.js +8 -0
- package/dist/gateway/static/root/assets/capabilities-settings-panel-BLivAgAc.js +8 -0
- package/dist/gateway/static/root/assets/channels-settings-DiFTm5lF.js +1 -0
- package/dist/gateway/static/root/assets/{channels-status-swr-CVzEYBpX.js → channels-status-swr-Czx0fIBL.js} +1 -1
- package/dist/gateway/static/root/assets/{chat-terminal-dock-DH36RVtb.js → chat-terminal-dock-BuotPHE9.js} +2 -2
- package/dist/gateway/static/root/assets/{computer-model-settings-CH8z1kz0.js → computer-model-settings-CqH6YVvk.js} +1 -1
- package/dist/gateway/static/root/assets/computer-settings-page-DZDnkWIw.js +1 -0
- package/dist/gateway/static/root/assets/connectors-page-d4saaZj7.js +2 -0
- package/dist/gateway/static/root/assets/cron-expression-Ch_GmsmU.js +2 -0
- package/dist/gateway/static/root/assets/{date-picker-BEZDMNzZ.js → date-picker-BUcTJm_i.js} +1 -1
- package/dist/gateway/static/root/assets/{dependency-picker-DC8V8-Zp.js → dependency-picker-BA_2cNuR.js} +1 -1
- package/dist/gateway/static/root/assets/{desktop-pet-CJloB255.js → desktop-pet-CCGNh6Cv.js} +1 -1
- package/dist/gateway/static/root/assets/{desktop-pet-settings-B97XYYYn.js → desktop-pet-settings-Cg8tGIti.js} +1 -1
- package/dist/gateway/static/root/assets/device-pairing-wizard-DMlY9mim.js +1 -0
- package/dist/gateway/static/root/assets/electron-env-Dit0bHgy.js +1 -0
- package/dist/gateway/static/root/assets/{extension-debug-page-BTrK__r7.js → extension-debug-page-BGDVRcYY.js} +1 -1
- package/dist/gateway/static/root/assets/{extension-page-DgvpFyGJ.js → extension-page-BZUOzMV9.js} +1 -1
- package/dist/gateway/static/root/assets/{extension-settings-page-DjfuFesA.js → extension-settings-page-BaXUodRm.js} +1 -1
- package/dist/gateway/static/root/assets/{gateway-config-swr-BBovMBQ1.js → gateway-config-swr-Dkc1As9z.js} +1 -1
- package/dist/gateway/static/root/assets/gateway-settings-CRb71ODi.js +1 -0
- package/dist/gateway/static/root/assets/{gateway-startup-retry-NXDtzZED.js → gateway-startup-retry-DnLnaPev.js} +1 -1
- package/dist/gateway/static/root/assets/heartbeat-settings-BfSCOyxZ.js +1 -0
- package/dist/gateway/static/root/assets/home-page-DEsvYGCC.js +1 -0
- package/dist/gateway/static/root/assets/{image-generation-api-D01ieqGC.js → image-generation-api-DTXI5ZGN.js} +1 -1
- package/dist/gateway/static/root/assets/{imports-page-DJG1BJzd.js → imports-page-DTqPlG9Z.js} +1 -1
- package/dist/gateway/static/root/assets/{index-Ds8Q4MZJ.css → index-CdrKvNSO.css} +1 -1
- package/dist/gateway/static/root/assets/index-D5RrehFN.js +75 -0
- package/dist/gateway/static/root/assets/keyboard-shortcuts-settings-cLUFwjrj.js +1 -0
- package/dist/gateway/static/root/assets/local-app-workbench-page-DAbQW7rx.js +2 -0
- package/dist/gateway/static/root/assets/{local-apps-page-C10gURTO.js → local-apps-page-BIi49k0U.js} +1 -1
- package/dist/gateway/static/root/assets/{locale-store-eliqUnBr.js → locale-store-Bvh7i-qf.js} +1 -1
- package/dist/gateway/static/root/assets/{logs-page-Dg9Ma1sl.js → logs-page-CGIXxwnD.js} +2 -2
- package/dist/gateway/static/root/assets/{management-settings-Bx1sNion.js → management-settings-CM3_MVK2.js} +1 -1
- package/dist/gateway/static/root/assets/markdown-view-D5qRss8E.js +201 -0
- package/dist/gateway/static/root/assets/{media-plugins-BNoJCDvT.js → media-plugins-C9D_2SV4.js} +1 -1
- package/dist/gateway/static/root/assets/messages-CRy5Dn65.js +3 -0
- package/dist/gateway/static/root/assets/note-detail-panel-CajzGnJk.js +5 -0
- package/dist/gateway/static/root/assets/notes-page-BfU7eXZI.js +8 -0
- package/dist/gateway/static/root/assets/{page-tabs-B604dteb.js → page-tabs-5xvBmNLr.js} +1 -1
- package/dist/gateway/static/root/assets/{preview-open-alternatives-Cp8vT7M-.js → preview-open-alternatives-CYEcUwgQ.js} +1 -1
- package/dist/gateway/static/root/assets/{proactive-page-afUn4Km7.js → proactive-page-zCxlG2wm.js} +1 -1
- package/dist/gateway/static/root/assets/{product-open-page-DtgWUAwT.js → product-open-page-DZkUoQug.js} +1 -1
- package/dist/gateway/static/root/assets/project-detail-page-BiH4CX5l.js +1 -0
- package/dist/gateway/static/root/assets/projects-page-D7zEue9F.js +1 -0
- package/dist/gateway/static/root/assets/{registry-api-Dpm3N2h0.js → registry-api-Z5aZS7Pw.js} +1 -1
- package/dist/gateway/static/root/assets/remote-access-hub-DgIU9Ky0.js +1 -0
- package/dist/gateway/static/root/assets/{runtime-tools-settings-panel-B5EkdFYg.js → runtime-tools-settings-panel-DKw6dReE.js} +2 -2
- package/dist/gateway/static/root/assets/{schema-form-BGMXczAd.js → schema-form-DjLqmO4e.js} +1 -1
- package/dist/gateway/static/root/assets/sessions-page-Dnok69Zz.js +1 -0
- package/dist/gateway/static/root/assets/settings-advanced-gate-CHo2l_qK.js +1 -0
- package/dist/gateway/static/root/assets/{settings-form-section-Dzhqip3r.js → settings-form-section-CbMZBzsX.js} +1 -1
- package/dist/gateway/static/root/assets/{settings-page-DduNxMxn.js → settings-page-BLfyLSxD.js} +1 -1
- package/dist/gateway/static/root/assets/setup-status-panel-CJ39WC3I.js +1 -0
- package/dist/gateway/static/root/assets/{share-preview-page-CpreOM1V.js → share-preview-page-CrlCpfnx.js} +1 -1
- package/dist/gateway/static/root/assets/shares-settings-FXKzrMu5.js +1 -0
- package/dist/gateway/static/root/assets/skill-reload-api-D7482ITF.js +1 -0
- package/dist/gateway/static/root/assets/{skills-page-ClFiDnDu.js → skills-page-CAB6alxk.js} +1 -1
- package/dist/gateway/static/root/assets/{skills-page.utils-BR4q22o3.js → skills-page.utils-C62EqcM6.js} +1 -1
- package/dist/gateway/static/root/assets/{system-settings-panel-BaXq-D5z.js → system-settings-panel-Bl5STF6Q.js} +1 -1
- package/dist/gateway/static/root/assets/task-detail-page-Dfsqavai.js +1 -0
- package/dist/gateway/static/root/assets/{theme-store-DUHPzKzv.js → theme-store-DBrRX9jz.js} +1 -1
- package/dist/gateway/static/root/assets/{tunnel-api-Dl9H37se.js → tunnel-api-D47wWIM6.js} +1 -1
- package/dist/gateway/static/root/assets/{use-autosave-CTEqUAxS.js → use-autosave-BUGKjFH9.js} +1 -1
- package/dist/gateway/static/root/assets/user-model-page-CXEqmdT7.js +2 -0
- package/dist/gateway/static/root/assets/{voice-api-key-field-CVCnJKQC.js → voice-api-key-field-DrkwfDvA.js} +1 -1
- package/dist/gateway/static/root/assets/{voice-config-api-Bjy8EFqi.js → voice-config-api-CzjqrH53.js} +1 -1
- package/dist/gateway/static/root/assets/{work-discovery-overlay-C8pcp5_j.js → work-discovery-overlay-DwR3i5Fb.js} +1 -1
- package/dist/gateway/static/root/assets/{workflow-run-setup-panel-CvayjHzR.js → workflow-run-setup-panel-dLH85qC7.js} +2 -2
- package/dist/gateway/static/root/assets/workflows-page-CYreRGKh.js +6 -0
- package/dist/gateway/static/root/index.html +11 -15
- package/dist/package.js +1 -1
- package/dist/src/agent/agent-manager.js +4 -4
- package/dist/src/agent/background-review/run-background-review.js +1 -1
- package/dist/src/agent/embedded/model-runtime.js +1 -1
- package/dist/src/agent/embedded/run-for-session.js +1 -1
- package/dist/src/agent/image/tool-model-config.js +1 -1
- package/dist/src/agent/mcp/oauth/mcp-oauth-store.js +1 -1
- package/dist/src/agent/service.js +2 -2
- package/dist/src/agent/session/session-inspector.js +1 -1
- package/dist/src/agent/skills/hub-lock.js +1 -1
- package/dist/src/agent/tasks/task-judge-service.js +3 -3
- package/dist/src/ai-assist/text-assist.js +1 -1
- package/dist/src/auth/credentials.js +2 -2
- package/dist/src/auth/oauth/xopc-cloud.js +1 -1
- package/dist/src/auth/profiles/store.js +1 -1
- package/dist/src/auth/sync-provider-auth.js +2 -2
- package/dist/src/browser/providers/browser-ext-install.js +1 -1
- package/dist/src/chat-commands/agent-edit.js +1 -1
- package/dist/src/cli/commands/agent.js +1 -1
- package/dist/src/cli/commands/doctor/checks/provider-auth.js +3 -3
- package/dist/src/cli/commands/models.js +1 -1
- package/dist/src/computer/runtime.js +1 -1
- package/dist/src/config/index.js +4 -4
- package/dist/src/config/loader.js +2 -2
- package/dist/src/config/models-json.js +2 -2
- package/dist/src/config/schema.js +1 -1
- package/dist/src/extensions/lockfile.js +1 -1
- package/dist/src/gateway/agents-admin.js +1 -1
- package/dist/src/gateway/file-path-classifier.js +1 -1
- package/dist/src/gateway/heartbeat/service.js +2 -2
- package/dist/src/gateway/hono/lib/config-payload.js +1 -1
- package/dist/src/gateway/hono/routes/models.js +1 -1
- package/dist/src/gateway/service/config-coordinator.js +1 -1
- package/dist/src/gateway/service.js +5 -5
- package/dist/src/heartbeat/index.js +1 -1
- package/dist/src/providers/auth-runtime/resolve-auth.js +1 -1
- package/dist/src/providers/index.js +2 -2
- package/dist/src/providers/model-catalog-persistence.js +1 -1
- package/dist/src/providers/model-registry.js +1 -1
- package/dist/src/providers/register-runtime-providers.js +1 -1
- package/dist/src/tui/backends/embedded-backend.js +1 -1
- package/dist/src/tui/tui-commands.js +1 -1
- package/dist/src/tui/tui-startup-resources.js +1 -1
- package/dist/src/tui/tui.js +2 -2
- package/dist/src/work-discovery/service.js +2 -2
- package/dist/src/workflows/service/workflow-run-service.js +1 -1
- package/package.json +2 -2
- package/dist/gateway/static/root/assets/agent-defaults-settings-panel-CVunPl7p.js +0 -1
- package/dist/gateway/static/root/assets/agents-DessO-kK.js +0 -1
- package/dist/gateway/static/root/assets/api-Dnfnl1Gd.js +0 -1
- package/dist/gateway/static/root/assets/apps-page-CbawVYBT.js +0 -1
- package/dist/gateway/static/root/assets/automations-workspace-ClZiIDCC.js +0 -6
- package/dist/gateway/static/root/assets/browser-settings-page-BMd_-Dq1.js +0 -8
- package/dist/gateway/static/root/assets/capabilities-settings-panel-Cpb0KBZc.js +0 -8
- package/dist/gateway/static/root/assets/channels-settings-DoRAjGiN.js +0 -1
- package/dist/gateway/static/root/assets/clock-3-DnrAnuyZ.js +0 -1
- package/dist/gateway/static/root/assets/computer-settings-page-D8oeOhou.js +0 -1
- package/dist/gateway/static/root/assets/connectors-page-BpEEyOGa.js +0 -2
- package/dist/gateway/static/root/assets/cron-expression-GDPX4NxC.js +0 -2
- package/dist/gateway/static/root/assets/device-pairing-wizard-Cci5K_bT.js +0 -1
- package/dist/gateway/static/root/assets/electron-env-DH5wF8X8.js +0 -1
- package/dist/gateway/static/root/assets/gateway-settings-BsbofCP6.js +0 -1
- package/dist/gateway/static/root/assets/git-branch-Dh9uxTot.js +0 -1
- package/dist/gateway/static/root/assets/heartbeat-settings-BXxtbvha.js +0 -1
- package/dist/gateway/static/root/assets/home-page-DErKqiEK.js +0 -1
- package/dist/gateway/static/root/assets/index-CEkw-fGy.js +0 -75
- package/dist/gateway/static/root/assets/keyboard-shortcuts-settings-B7E6CgtA.js +0 -1
- package/dist/gateway/static/root/assets/local-app-workbench-page-CQsTUpog.js +0 -2
- package/dist/gateway/static/root/assets/markdown-view-BIg7cei7.js +0 -201
- package/dist/gateway/static/root/assets/message-circle-Badhj-4D.js +0 -1
- package/dist/gateway/static/root/assets/message-square-fVE7Ghj1.js +0 -1
- package/dist/gateway/static/root/assets/messages-NYDOR8-j.js +0 -3
- package/dist/gateway/static/root/assets/note-detail-panel-Bsiuk-2U.js +0 -5
- package/dist/gateway/static/root/assets/notes-page-BvAj-wx0.js +0 -8
- package/dist/gateway/static/root/assets/project-detail-page-D6DLiVAL.js +0 -1
- package/dist/gateway/static/root/assets/projects-page-Cq9hR-e_.js +0 -1
- package/dist/gateway/static/root/assets/remote-access-hub-rAPyndf3.js +0 -1
- package/dist/gateway/static/root/assets/sessions-page-DwLbo0cX.js +0 -1
- package/dist/gateway/static/root/assets/settings-advanced-gate-XmB-Qb44.js +0 -1
- package/dist/gateway/static/root/assets/setup-status-panel-ClmdhFhE.js +0 -1
- package/dist/gateway/static/root/assets/shares-settings-CHkRyFET.js +0 -1
- package/dist/gateway/static/root/assets/skill-reload-api-DWVyUbv4.js +0 -1
- package/dist/gateway/static/root/assets/task-detail-page-CJnZCq6v.js +0 -1
- package/dist/gateway/static/root/assets/user-model-page-DOA5rAgd.js +0 -2
- package/dist/gateway/static/root/assets/workflows-page-D7pBtuZt.js +0 -6
package/dist/gateway/static/root/assets/{imports-page-DJG1BJzd.js → imports-page-DTqPlG9Z.js}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{a as t,n,t as r}from"./vendor-react-BOUWij0V.js";import{t as i}from"./chunk-KS7C4IRE-Cq1tE_3b.js";import{t as a}from"./check-DUBLcKHA.js";import{t as o}from"./download-Dk-ZjtO6.js";import{t as s}from"./x-B_N4OPjy.js";import{a as c,n as ee,r as l}from"./locale-store-eliqUnBr.js";import{t as te}from"./messages-NYDOR8-j.js";import{a as u,i as d,n as f,o as p,r as m,s as h,t as g}from"./dist-BGTk37IG.js";import{t as _}from"./button-CGlRPNzi.js";import{i as v,o as y}from"./settings-shell-dialog-layer-BU3UuiJr.js";import{n as b,r as x}from"./settings-page-layout-CsUQKRq0.js";import{n as ne}from"./settings-loading-skeleton-CAmWMaOT.js";var S=e(t(),1);async function C(e,t,n){return(await c(l(`/api/imports${e}`),{...t===void 0?{}:{method:`POST`,body:JSON.stringify(t)},signal:n})).data}var w=n();function T(e){return e.status===`ready`||e.status===`conflict`||e.kind===`project`&&e.status===`existing`}function E(e,t,n,r){let i=new Set(t);if(!T(n))return i;if(r){if(i.add(n.id),n.parentId&&i.add(n.parentId),n.kind===`project`)for(let t of e.candidates)t.parentId===n.id&&t.kind===`skill`&&t.suggested&&T(t)&&i.add(t.id)}else if(i.delete(n.id),n.kind===`project`)for(let t of e.candidates)t.parentId===n.id&&i.delete(t.id);return i}var D=r();function O(e){let t=(0,w.c)(45),{open:n,sourceName:r,inventory:i,selected:a,onSelected:o,busy:c,locked:l,error:b,onClose:x,onRefresh:C,onSubmit:O}=e,R=te(ee(re)).imports,[z,ae]=(0,S.useState)(``),oe;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(oe=()=>ae(``),t[0]=oe):oe=t[0];let se=i?.id,B;t[1]===se?B=t[2]:(B=[se],t[1]=se,t[2]=B),(0,S.useEffect)(oe,B);let V;t[3]===z?V=t[4]:(V=e=>`${e.name} ${e.description} ${e.displayPath}`.toLowerCase().includes(z.toLowerCase().trim()),t[3]=z,t[4]=V);let H=V,U=i?.candidates.filter(e=>a.has(e.id))??[],ce=R.selected.replace(`{skills}`,String(U.filter(L).length)).replace(`{context}`,String(U.filter(I).length)).replace(`{projects}`,String(U.filter(F).length)),W;t[5]!==i||t[6]!==o||t[7]!==a?(W=(e,t)=>{i&&o(E(i,a,e,t))},t[5]=i,t[6]=o,t[7]=a,t[8]=W):W=t[8];let le=W,ue=e=>{let t=i.candidates.filter(t=>t.kind===e&&!t.parentId);if(!t.length)return null;let n=t.filter(H);return(0,D.jsxs)(`section`,{className:`space-y-2`,"aria-label":R.kinds[e],children:[(0,D.jsxs)(`div`,{className:`flex items-center justify-between gap-2`,children:[(0,D.jsxs)(`h3`,{className:`text-sm font-medium text-fg`,children:[R.kinds[e],` · `,t.filter(e=>a.has(e.id)).length,`/`,t.length]}),(0,D.jsxs)(`div`,{className:`flex gap-2`,children:[(0,D.jsx)(_,{variant:`ghost`,disabled:l||!n.some(T),onClick:()=>{let e=new Set(a);n.filter(T).forEach(t=>e.add(t.id)),o(e)},children:R.selectVisible}),(0,D.jsx)(_,{variant:`ghost`,disabled:l,onClick:()=>{let e=new Set(a);n.forEach(t=>e.delete(t.id)),o(e)},children:R.clearVisible})]})]}),n.map(e=>(0,D.jsx)(ie,{inventoryId:i.id,item:e,checked:a.has(e.id),disabled:l,onChange:t=>le(e,t)},e.id))]})},G;t[9]===x?G=t[10]:(G=e=>{e||x()},t[9]=x,t[10]=G);let K;t[11]===Symbol.for(`react.memo_cache_sentinel`)?(K=(0,D.jsx)(u,{className:`fixed inset-0 bg-scrim ${y}`}),t[11]=K):K=t[11];let de;t[12]===Symbol.for(`react.memo_cache_sentinel`)?(de=(0,D.jsx)(s,{className:`h-4 w-4`}),t[12]=de):de=t[12];let fe;t[13]===Symbol.for(`react.memo_cache_sentinel`)?(fe=e=>ae(e.target.value),t[13]=fe):fe=t[13];let pe=b&&(0,D.jsxs)(`div`,{role:`alert`,className:`space-y-2 rounded-lg border border-edge p-3 text-sm text-fg`,children:[(0,D.jsx)(`p`,{children:b}),(0,D.jsx)(_,{variant:`secondary`,disabled:l,onClick:C,children:R.refresh})]}),q;t[14]!==b||t[15]!==i?(q=!i&&!b&&(0,D.jsx)(ne,{sections:2}),t[14]=b,t[15]=i,t[16]=q):q=t[16];let me=i&&(0,D.jsxs)(D.Fragment,{children:[!i.complete&&(0,D.jsx)(`p`,{className:`text-sm text-fg-muted`,children:R.incomplete}),ue(`skill`),ue(`context`),(0,D.jsxs)(`section`,{"aria-label":R.kinds.project,className:`space-y-2`,children:[(0,D.jsxs)(`h3`,{className:`text-sm font-medium text-fg`,children:[R.kinds.project,` · `,U.filter(P).length,`/`,i.candidates.filter(N).length]}),(0,D.jsx)(`p`,{className:`text-xs text-fg-muted`,children:R.projectHint}),i.candidates.filter(M).map(e=>{let t=i.candidates.filter(t=>t.parentId===e.id);return!H(e)&&!t.some(H)?null:(0,D.jsxs)(`div`,{className:`rounded-xl border border-edge p-3`,children:[(0,D.jsx)(ie,{inventoryId:i.id,item:e,checked:a.has(e.id),disabled:l,onChange:t=>le(e,t)}),t.length?(0,D.jsxs)(`details`,{open:z.trim()?!0:void 0,className:`mt-2 text-sm text-fg-muted`,children:[(0,D.jsxs)(`summary`,{className:`cursor-pointer`,children:[R.projectContents.replace(`{skills}`,String(t.filter(j).length)).replace(`{context}`,String(t.filter(A).length)),` · `,R.chosenCount.replace(`{count}`,String(t.filter(e=>a.has(e.id)).length))]}),(0,D.jsx)(`div`,{className:`mt-2 space-y-2 border-l border-edge pl-3`,children:t.filter(t=>H(e)||H(t)).map(e=>(0,D.jsx)(ie,{inventoryId:i.id,item:e,checked:a.has(e.id),disabled:l,onChange:t=>le(e,t)},e.id))})]}):(0,D.jsx)(`p`,{className:`pl-7 text-xs text-fg-muted`,children:R.directoryOnly})]},e.id)})]}),!i.candidates.length&&(0,D.jsx)(`p`,{className:`text-sm text-fg-muted`,children:R.noContent}),!!i.notices.length&&(0,D.jsxs)(`details`,{className:`text-sm text-fg-muted`,children:[(0,D.jsxs)(`summary`,{className:`cursor-pointer`,children:[R.scanNotices,` (`,i.notices.length,`)`]}),(0,D.jsx)(`ul`,{className:`mt-2 space-y-2`,children:i.notices.map(k)})]})]}),he;t[17]!==pe||t[18]!==q||t[19]!==me?(he=(0,D.jsxs)(`div`,{className:`min-h-0 flex-1 space-y-5 overflow-y-auto p-4 sm:p-5`,children:[pe,q,me]}),t[17]=pe,t[18]=q,t[19]=me,t[20]=he):he=t[20];let J;t[21]===ce?J=t[22]:(J=(0,D.jsx)(`p`,{"aria-live":`polite`,className:`text-sm text-fg-muted`,children:ce}),t[21]=ce,t[22]=J);let Y;t[23]!==c||t[24]!==R.runningHint?(Y=c&&(0,D.jsx)(`p`,{className:`text-xs text-fg-muted`,children:R.runningHint}),t[23]=c,t[24]=R.runningHint,t[25]=Y):Y=t[25];let X;t[26]!==c||t[27]!==l||t[28]!==R.retryHint?(X=l&&!c&&(0,D.jsx)(`p`,{className:`text-xs text-fg-muted`,children:R.retryHint}),t[26]=c,t[27]=l,t[28]=R.retryHint,t[29]=X):X=t[29];let ge=c?R.close:R.cancel,Z;t[30]!==x||t[31]!==ge?(Z=(0,D.jsx)(_,{variant:`ghost`,onClick:x,children:ge}),t[30]=x,t[31]=ge,t[32]=Z):Z=t[32];let _e=!i||!a.size||c,ve=c?R.importing:l?R.retry:R.importSelected,Q;t[33]!==O||t[34]!==_e||t[35]!==ve?(Q=(0,D.jsx)(_,{disabled:_e,onClick:O,children:ve}),t[33]=O,t[34]=_e,t[35]=ve,t[36]=Q):Q=t[36];let $;t[37]!==Z||t[38]!==Q?($=(0,D.jsxs)(`div`,{className:`flex justify-end gap-2`,children:[Z,Q]}),t[37]=Z,t[38]=Q,t[39]=$):$=t[39];let ye;return t[40]!==J||t[41]!==Y||t[42]!==X||t[43]!==$?(ye=(0,D.jsxs)(`footer`,{className:`shrink-0 space-y-3 border-t border-edge p-4 sm:p-5`,children:[J,Y,X,$]}),t[40]=J,t[41]=Y,t[42]=X,t[43]=$,t[44]=ye):ye=t[44],(0,D.jsx)(g,{open:n,onOpenChange:G,children:(0,D.jsxs)(p,{children:[K,(0,D.jsxs)(m,{className:`fixed left-1/2 top-1/2 flex h-[min(calc(100dvh-2rem),760px)] w-[min(calc(100%-2rem),760px)] -translate-x-1/2 -translate-y-1/2 flex-col overflow-hidden rounded-2xl border border-edge bg-surface-panel outline-none ${v}`,children:[(0,D.jsxs)(`header`,{className:`shrink-0 space-y-2 border-b border-edge p-4 sm:p-5`,children:[(0,D.jsxs)(`div`,{className:`flex items-center justify-between gap-2`,children:[(0,D.jsx)(h,{className:`text-lg font-semibold text-fg`,children:R.chooseTitle.replace(`{source}`,r)}),(0,D.jsx)(f,{asChild:!0,children:(0,D.jsx)(_,{variant:`ghost`,"aria-label":R.close,className:`h-8 w-8 shrink-0 p-0`,children:de})})]}),(0,D.jsx)(d,{className:`text-sm text-fg-muted`,children:R.chooseHint}),(0,D.jsx)(`input`,{"aria-label":R.search,placeholder:R.search,value:z,onChange:fe,className:`w-full rounded-lg border border-edge bg-surface-base px-3 py-2 text-sm text-fg`})]}),he,ye]})]})})}function k(e,t){return(0,D.jsx)(`li`,{className:`break-words`,children:e},t)}function A(e){return e.kind===`context`}function j(e){return e.kind===`skill`}function M(e){return e.kind===`project`}function N(e){return e.kind===`project`}function P(e){return e.kind===`project`}function F(e){return e.kind===`project`}function I(e){return e.kind===`context`}function L(e){return e.kind===`skill`}function re(e){return e.language}function ie(e){let t=(0,w.c)(54),{inventoryId:n,item:r,checked:i,disabled:a,onChange:o}=e,s=ee(z),c;t[0]===s?c=t[1]:(c=te(s),t[0]=s,t[1]=c);let l=c.imports,[u,d]=(0,S.useState)(),[f,p]=(0,S.useState)(``),[m,h]=(0,S.useState)(!1),g;t[2]!==n||t[3]!==r.id||t[4]!==u?(g=async function(){if(h(R),!u)try{d(await C(`/inventories/${n}/items/${r.id}/preview`))}catch(e){let t=e;p(t instanceof Error?t.message:String(t))}},t[2]=n,t[3]=r.id,t[4]=u,t[5]=g):g=t[5];let v=g,y;t[6]!==a||t[7]!==r?(y=a||!T(r),t[6]=a,t[7]=r,t[8]=y):y=t[8];let b;t[9]===o?b=t[10]:(b=e=>o(e.target.checked),t[9]=o,t[10]=b);let x;t[11]!==i||t[12]!==y||t[13]!==b?(x=(0,D.jsx)(`input`,{type:`checkbox`,className:`mt-1 h-4 w-4 shrink-0 accent-accent`,checked:i,disabled:y,onChange:b}),t[11]=i,t[12]=y,t[13]=b,t[14]=x):x=t[14];let E;t[15]===r.name?E=t[16]:(E=(0,D.jsx)(`span`,{className:`block break-words text-sm font-medium text-fg`,children:r.name}),t[15]=r.name,t[16]=E);let O;t[17]===r.displayPath?O=t[18]:(O=(0,D.jsx)(`span`,{className:`block break-all text-xs text-fg-muted`,children:r.displayPath}),t[17]=r.displayPath,t[18]=O);let k;t[19]!==E||t[20]!==O?(k=(0,D.jsxs)(`span`,{className:`min-w-0`,children:[E,O]}),t[19]=E,t[20]=O,t[21]=k):k=t[21];let A;t[22]!==x||t[23]!==k?(A=(0,D.jsxs)(`label`,{className:`flex min-w-0 flex-1 cursor-pointer items-start gap-3`,children:[x,k]}),t[22]=x,t[23]=k,t[24]=A):A=t[24];let j;t[25]!==r.kind||t[26]!==r.name||t[27]!==r.status||t[28]!==l||t[29]!==v?(j=r.kind!==`project`&&r.status!==`blocked`&&(0,D.jsx)(_,{variant:`ghost`,"aria-label":`${l.preview}: ${r.name}`,onClick:()=>void v(),children:l.preview}),t[25]=r.kind,t[26]=r.name,t[27]=r.status,t[28]=l,t[29]=v,t[30]=j):j=t[30];let M;t[31]!==A||t[32]!==j?(M=(0,D.jsxs)(`div`,{className:`flex items-start gap-2`,children:[A,j]}),t[31]=A,t[32]=j,t[33]=M):M=t[33];let N;t[34]===r.description?N=t[35]:(N=r.description&&(0,D.jsx)(`p`,{className:`pl-7 text-xs text-fg-muted`,children:r.description}),t[34]=r.description,t[35]=N);let P;t[36]!==r.kind||t[37]!==r.status||t[38]!==r.targetName||t[39]!==l?(P=r.status!==`ready`&&(0,D.jsxs)(`p`,{className:`pl-7 text-xs text-fg-muted`,children:[r.kind===`project`&&r.status===`existing`?l.existingProject:l.statuses[r.status],r.status===`conflict`?` → ${r.targetName}`:``]}),t[36]=r.kind,t[37]=r.status,t[38]=r.targetName,t[39]=l,t[40]=P):P=t[40];let F;t[41]===r.reason?F=t[42]:(F=r.reason&&(0,D.jsx)(`p`,{className:`break-words pl-7 text-xs text-fg-muted`,children:r.reason}),t[41]=r.reason,t[42]=F);let I;t[43]!==u||t[44]!==f||t[45]!==m||t[46]!==l?(I=m&&(0,D.jsx)(`div`,{className:`ml-7 rounded-lg border border-edge p-3`,children:f?(0,D.jsx)(`p`,{role:`alert`,className:`text-sm text-fg-muted`,children:f}):u?(0,D.jsxs)(D.Fragment,{children:[(0,D.jsx)(`pre`,{className:`max-h-60 overflow-auto whitespace-pre-wrap break-words text-xs text-fg`,children:u.text}),u.truncated&&(0,D.jsx)(`p`,{className:`mt-2 text-xs text-fg-muted`,children:l.previewTruncated})]}):(0,D.jsx)(ne,{sections:1})}),t[43]=u,t[44]=f,t[45]=m,t[46]=l,t[47]=I):I=t[47];let L;return t[48]!==M||t[49]!==N||t[50]!==P||t[51]!==F||t[52]!==I?(L=(0,D.jsxs)(`div`,{className:`min-w-0 space-y-1 rounded-lg p-1`,children:[M,N,P,F,I]}),t[48]=M,t[49]=N,t[50]=P,t[51]=F,t[52]=I,t[53]=L):L=t[53],L}function R(e){return!e}function z(e){return e.language}function ae(){let e=te(ee(e=>e.language)).imports,[t,n]=(0,S.useState)(),[r,s]=(0,S.useState)(),[c,l]=(0,S.useState)(!1),[u,d]=(0,S.useState)(),[f,p]=(0,S.useState)(new Set),[m,h]=(0,S.useState)(!1),[g,v]=(0,S.useState)(),[y,w]=(0,S.useState)(),[T,E]=(0,S.useState)(``),[k,A]=(0,S.useState)(``),[j,M]=(0,S.useState)(0),N=(0,S.useRef)(null),P=(0,S.useRef)(!1);(0,S.useEffect)(()=>{let e=new AbortController;return E(``),C(`/sources`,void 0,e.signal).then(e=>n(e.sources)).catch(t=>{e.signal.aborted||E(t instanceof Error?t.message:String(t))}),()=>{e.abort(),N.current?.abort()}},[j]);let F=(t?.flatMap(e=>e.lastImport?.status===`running`?[e.lastImport.id]:[])??[]).join(`,`);(0,S.useEffect)(()=>{if(!F)return;let e=new AbortController,t,n=async()=>{for(let t of F.split(`,`))try{let n=await C(`/runs/${t}`,void 0,e.signal);e.signal.aborted||I(n)}catch{}e.signal.aborted||(t=setTimeout(()=>void n(),3e3))};return t=setTimeout(()=>void n(),1500),()=>{e.abort(),clearTimeout(t)}},[F]);function I(e){n(t=>t?.map(t=>t.id===e.source?{...t,lastImport:e}:t)),e.status!==`running`&&v(t=>t?.requestId===e.id?void 0:t)}async function L(e){N.current?.abort();let t=new AbortController;N.current=t,s(e),l(!0),d(void 0),p(new Set),A(``),w(void 0),v(void 0);try{let n=await C(`/sources/${e}/scan`,{},t.signal);t.signal.aborted||(d(n),p(new Set(n.candidates.filter(e=>!e.parentId&&e.suggested).map(e=>e.id))))}catch(e){t.signal.aborted||A(e instanceof Error?e.message:String(e))}}async function re(){if(!u||!f.size||P.current)return;P.current=!0,h(!0),A(``),E(``);let e=g??{inventoryId:u.id,candidateIds:[...f],requestId:crypto.randomUUID(),retryOf:y};v(e);try{I(await C(`/runs`,e)),l(!1)}catch(e){let t=e instanceof Error?e.message:String(e);A(t),E(t);let n=e.body?.code;n&&[`invalid_input`,`inventory_stale`,`invalid_selection`,`missing_parent`,`not_found`,`conflict`].includes(n)&&v(void 0)}finally{P.current=!1,h(!1)}}async function ie(e){s(e.source),l(!0),d(void 0),p(new Set),A(``),v(void 0),w(e.id),N.current?.abort();let t=new AbortController;N.current=t;try{let n=await C(`/inventories/${e.inventoryId}`,void 0,t.signal);if(t.signal.aborted)return;let r=new Set(e.items.filter(e=>e.status===`failed`).map(e=>e.candidateId));n.candidates.forEach(e=>{r.has(e.id)&&e.parentId&&r.add(e.parentId)}),d({...n,candidates:n.candidates.filter(e=>r.has(e.id))}),p(r)}catch(e){t.signal.aborted||A(e instanceof Error?e.message:String(e))}}let R=t?.filter(e=>e.detected||e.lastImport);return(0,D.jsxs)(x,{children:[(0,D.jsx)(b,{title:e.title,subtitle:e.subtitle}),T&&(0,D.jsxs)(`div`,{role:`alert`,className:`rounded-xl border border-edge p-4 text-sm text-fg`,children:[(0,D.jsx)(`p`,{children:T}),!t&&(0,D.jsx)(_,{variant:`ghost`,onClick:()=>M(e=>e+1),children:e.retry})]}),!t&&!T&&(0,D.jsx)(ne,{sections:1}),t&&(0,D.jsxs)(`section`,{className:`space-y-4`,children:[(0,D.jsxs)(`div`,{children:[(0,D.jsx)(`h2`,{className:`text-base font-medium text-fg`,children:e.apps}),(0,D.jsx)(`p`,{className:`mt-1 text-sm text-fg-muted`,children:e.detectedHint})]}),R?.length?(0,D.jsx)(`div`,{className:`divide-y divide-edge overflow-hidden rounded-2xl border border-edge`,children:R.map(t=>(0,D.jsxs)(`article`,{className:`space-y-3 p-5 sm:p-6`,children:[(0,D.jsxs)(`div`,{className:`flex items-center gap-4`,children:[(0,D.jsx)(`div`,{"aria-hidden":`true`,className:`flex h-11 w-11 shrink-0 items-center justify-center rounded-xl bg-surface-hover text-fg`,children:(0,D.jsx)(o,{className:`h-5 w-5`})}),(0,D.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,D.jsx)(`h3`,{className:`font-medium text-fg`,children:t.name}),(0,D.jsx)(`p`,{className:`mt-1 text-xs text-fg-muted`,children:e.includes})]}),(0,D.jsx)(_,{variant:`secondary`,disabled:m||!t.detected||!!g&&r!==t.id||t.lastImport?.status===`running`,onClick:()=>{E(``),g&&r===t.id?l(!0):L(t.id)},children:m&&r===t.id?e.importing:g&&r===t.id?e.retry:t.lastImport?e.importAgain:e.import})]}),t.lastImport&&(0,D.jsxs)(`div`,{role:`status`,className:`space-y-2 text-sm text-fg-muted`,children:[(0,D.jsxs)(`p`,{className:`flex items-center gap-2`,children:[(0,D.jsx)(a,{className:`h-4 w-4 shrink-0`}),t.lastImport.status===`running`?e.importing:t.lastImport.issues.length?e.finishedWithIssues:e.finished]}),(0,D.jsxs)(`p`,{children:[e.summary.replace(`{skills}`,String(t.lastImport.skills)).replace(`{context}`,String(t.lastImport.context)).replace(`{projects}`,String(t.lastImport.projects)),t.lastImport.skipped>0&&` · ${e.skipped.replace(`{count}`,String(t.lastImport.skipped))}`]}),!!t.lastImport.issues.length&&(0,D.jsxs)(`details`,{children:[(0,D.jsxs)(`summary`,{className:`cursor-pointer text-fg`,children:[e.details,` (`,t.lastImport.issues.length,`)`]}),(0,D.jsx)(`ul`,{className:`mt-2 space-y-2`,children:t.lastImport.issues.map((e,t)=>(0,D.jsxs)(`li`,{className:`break-words`,children:[(0,D.jsx)(`span`,{className:`font-medium`,children:e.name}),` — `,e.reason]},t))})]}),t.lastImport.status===`partial`&&(0,D.jsx)(_,{variant:`ghost`,disabled:m||!!g,onClick:()=>void ie(t.lastImport),children:e.retryFailed})]})]},t.id))}):(0,D.jsxs)(`div`,{className:`rounded-2xl border border-edge p-6 text-sm text-fg-muted`,children:[(0,D.jsx)(`p`,{children:e.empty}),(0,D.jsx)(_,{variant:`ghost`,className:`mt-3`,onClick:()=>M(e=>e+1),children:e.refresh})]}),(0,D.jsx)(`p`,{className:`text-xs leading-relaxed text-fg-muted`,children:e.footnote}),R?.some(e=>e.lastImport)&&(0,D.jsxs)(`div`,{className:`flex gap-4 text-sm`,children:[(0,D.jsx)(i,{className:`text-accent`,to:`/skills`,children:e.openSkills}),(0,D.jsx)(i,{className:`text-accent`,to:`/projects`,children:e.openProjects}),(0,D.jsx)(i,{className:`text-accent`,to:`/connectors`,children:e.connections})]})]}),(0,D.jsx)(O,{open:c,sourceName:t?.find(e=>e.id===r)?.name??``,inventory:u,selected:f,onSelected:p,busy:m,locked:m||!!g,error:k,onClose:()=>{N.current?.abort(),l(!1)},onRefresh:()=>{r&&L(r)},onSubmit:()=>void re()})]})}export{ae as ImportsPage};
|
|
1
|
+
import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{a as t,n,t as r}from"./vendor-react-BOUWij0V.js";import{t as i}from"./chunk-KS7C4IRE-Cq1tE_3b.js";import{t as a}from"./check-DUBLcKHA.js";import{t as o}from"./download-Dk-ZjtO6.js";import{t as s}from"./x-B_N4OPjy.js";import{a as c,n as ee,r as l}from"./locale-store-Bvh7i-qf.js";import{t as te}from"./messages-CRy5Dn65.js";import{a as u,i as d,n as f,o as p,r as m,s as h,t as g}from"./dist-BGTk37IG.js";import{t as _}from"./button-CGlRPNzi.js";import{i as v,o as y}from"./settings-shell-dialog-layer-BU3UuiJr.js";import{n as b,r as x}from"./settings-page-layout-CsUQKRq0.js";import{n as ne}from"./settings-loading-skeleton-CAmWMaOT.js";var S=e(t(),1);async function C(e,t,n){return(await c(l(`/api/imports${e}`),{...t===void 0?{}:{method:`POST`,body:JSON.stringify(t)},signal:n})).data}var w=n();function T(e){return e.status===`ready`||e.status===`conflict`||e.kind===`project`&&e.status===`existing`}function E(e,t,n,r){let i=new Set(t);if(!T(n))return i;if(r){if(i.add(n.id),n.parentId&&i.add(n.parentId),n.kind===`project`)for(let t of e.candidates)t.parentId===n.id&&t.kind===`skill`&&t.suggested&&T(t)&&i.add(t.id)}else if(i.delete(n.id),n.kind===`project`)for(let t of e.candidates)t.parentId===n.id&&i.delete(t.id);return i}var D=r();function O(e){let t=(0,w.c)(45),{open:n,sourceName:r,inventory:i,selected:a,onSelected:o,busy:c,locked:l,error:b,onClose:x,onRefresh:C,onSubmit:O}=e,R=te(ee(re)).imports,[z,ae]=(0,S.useState)(``),oe;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(oe=()=>ae(``),t[0]=oe):oe=t[0];let se=i?.id,B;t[1]===se?B=t[2]:(B=[se],t[1]=se,t[2]=B),(0,S.useEffect)(oe,B);let V;t[3]===z?V=t[4]:(V=e=>`${e.name} ${e.description} ${e.displayPath}`.toLowerCase().includes(z.toLowerCase().trim()),t[3]=z,t[4]=V);let H=V,U=i?.candidates.filter(e=>a.has(e.id))??[],ce=R.selected.replace(`{skills}`,String(U.filter(L).length)).replace(`{context}`,String(U.filter(I).length)).replace(`{projects}`,String(U.filter(F).length)),W;t[5]!==i||t[6]!==o||t[7]!==a?(W=(e,t)=>{i&&o(E(i,a,e,t))},t[5]=i,t[6]=o,t[7]=a,t[8]=W):W=t[8];let le=W,ue=e=>{let t=i.candidates.filter(t=>t.kind===e&&!t.parentId);if(!t.length)return null;let n=t.filter(H);return(0,D.jsxs)(`section`,{className:`space-y-2`,"aria-label":R.kinds[e],children:[(0,D.jsxs)(`div`,{className:`flex items-center justify-between gap-2`,children:[(0,D.jsxs)(`h3`,{className:`text-sm font-medium text-fg`,children:[R.kinds[e],` · `,t.filter(e=>a.has(e.id)).length,`/`,t.length]}),(0,D.jsxs)(`div`,{className:`flex gap-2`,children:[(0,D.jsx)(_,{variant:`ghost`,disabled:l||!n.some(T),onClick:()=>{let e=new Set(a);n.filter(T).forEach(t=>e.add(t.id)),o(e)},children:R.selectVisible}),(0,D.jsx)(_,{variant:`ghost`,disabled:l,onClick:()=>{let e=new Set(a);n.forEach(t=>e.delete(t.id)),o(e)},children:R.clearVisible})]})]}),n.map(e=>(0,D.jsx)(ie,{inventoryId:i.id,item:e,checked:a.has(e.id),disabled:l,onChange:t=>le(e,t)},e.id))]})},G;t[9]===x?G=t[10]:(G=e=>{e||x()},t[9]=x,t[10]=G);let K;t[11]===Symbol.for(`react.memo_cache_sentinel`)?(K=(0,D.jsx)(u,{className:`fixed inset-0 bg-scrim ${y}`}),t[11]=K):K=t[11];let de;t[12]===Symbol.for(`react.memo_cache_sentinel`)?(de=(0,D.jsx)(s,{className:`h-4 w-4`}),t[12]=de):de=t[12];let fe;t[13]===Symbol.for(`react.memo_cache_sentinel`)?(fe=e=>ae(e.target.value),t[13]=fe):fe=t[13];let pe=b&&(0,D.jsxs)(`div`,{role:`alert`,className:`space-y-2 rounded-lg border border-edge p-3 text-sm text-fg`,children:[(0,D.jsx)(`p`,{children:b}),(0,D.jsx)(_,{variant:`secondary`,disabled:l,onClick:C,children:R.refresh})]}),q;t[14]!==b||t[15]!==i?(q=!i&&!b&&(0,D.jsx)(ne,{sections:2}),t[14]=b,t[15]=i,t[16]=q):q=t[16];let me=i&&(0,D.jsxs)(D.Fragment,{children:[!i.complete&&(0,D.jsx)(`p`,{className:`text-sm text-fg-muted`,children:R.incomplete}),ue(`skill`),ue(`context`),(0,D.jsxs)(`section`,{"aria-label":R.kinds.project,className:`space-y-2`,children:[(0,D.jsxs)(`h3`,{className:`text-sm font-medium text-fg`,children:[R.kinds.project,` · `,U.filter(P).length,`/`,i.candidates.filter(N).length]}),(0,D.jsx)(`p`,{className:`text-xs text-fg-muted`,children:R.projectHint}),i.candidates.filter(M).map(e=>{let t=i.candidates.filter(t=>t.parentId===e.id);return!H(e)&&!t.some(H)?null:(0,D.jsxs)(`div`,{className:`rounded-xl border border-edge p-3`,children:[(0,D.jsx)(ie,{inventoryId:i.id,item:e,checked:a.has(e.id),disabled:l,onChange:t=>le(e,t)}),t.length?(0,D.jsxs)(`details`,{open:z.trim()?!0:void 0,className:`mt-2 text-sm text-fg-muted`,children:[(0,D.jsxs)(`summary`,{className:`cursor-pointer`,children:[R.projectContents.replace(`{skills}`,String(t.filter(j).length)).replace(`{context}`,String(t.filter(A).length)),` · `,R.chosenCount.replace(`{count}`,String(t.filter(e=>a.has(e.id)).length))]}),(0,D.jsx)(`div`,{className:`mt-2 space-y-2 border-l border-edge pl-3`,children:t.filter(t=>H(e)||H(t)).map(e=>(0,D.jsx)(ie,{inventoryId:i.id,item:e,checked:a.has(e.id),disabled:l,onChange:t=>le(e,t)},e.id))})]}):(0,D.jsx)(`p`,{className:`pl-7 text-xs text-fg-muted`,children:R.directoryOnly})]},e.id)})]}),!i.candidates.length&&(0,D.jsx)(`p`,{className:`text-sm text-fg-muted`,children:R.noContent}),!!i.notices.length&&(0,D.jsxs)(`details`,{className:`text-sm text-fg-muted`,children:[(0,D.jsxs)(`summary`,{className:`cursor-pointer`,children:[R.scanNotices,` (`,i.notices.length,`)`]}),(0,D.jsx)(`ul`,{className:`mt-2 space-y-2`,children:i.notices.map(k)})]})]}),he;t[17]!==pe||t[18]!==q||t[19]!==me?(he=(0,D.jsxs)(`div`,{className:`min-h-0 flex-1 space-y-5 overflow-y-auto p-4 sm:p-5`,children:[pe,q,me]}),t[17]=pe,t[18]=q,t[19]=me,t[20]=he):he=t[20];let J;t[21]===ce?J=t[22]:(J=(0,D.jsx)(`p`,{"aria-live":`polite`,className:`text-sm text-fg-muted`,children:ce}),t[21]=ce,t[22]=J);let Y;t[23]!==c||t[24]!==R.runningHint?(Y=c&&(0,D.jsx)(`p`,{className:`text-xs text-fg-muted`,children:R.runningHint}),t[23]=c,t[24]=R.runningHint,t[25]=Y):Y=t[25];let X;t[26]!==c||t[27]!==l||t[28]!==R.retryHint?(X=l&&!c&&(0,D.jsx)(`p`,{className:`text-xs text-fg-muted`,children:R.retryHint}),t[26]=c,t[27]=l,t[28]=R.retryHint,t[29]=X):X=t[29];let ge=c?R.close:R.cancel,Z;t[30]!==x||t[31]!==ge?(Z=(0,D.jsx)(_,{variant:`ghost`,onClick:x,children:ge}),t[30]=x,t[31]=ge,t[32]=Z):Z=t[32];let _e=!i||!a.size||c,ve=c?R.importing:l?R.retry:R.importSelected,Q;t[33]!==O||t[34]!==_e||t[35]!==ve?(Q=(0,D.jsx)(_,{disabled:_e,onClick:O,children:ve}),t[33]=O,t[34]=_e,t[35]=ve,t[36]=Q):Q=t[36];let $;t[37]!==Z||t[38]!==Q?($=(0,D.jsxs)(`div`,{className:`flex justify-end gap-2`,children:[Z,Q]}),t[37]=Z,t[38]=Q,t[39]=$):$=t[39];let ye;return t[40]!==J||t[41]!==Y||t[42]!==X||t[43]!==$?(ye=(0,D.jsxs)(`footer`,{className:`shrink-0 space-y-3 border-t border-edge p-4 sm:p-5`,children:[J,Y,X,$]}),t[40]=J,t[41]=Y,t[42]=X,t[43]=$,t[44]=ye):ye=t[44],(0,D.jsx)(g,{open:n,onOpenChange:G,children:(0,D.jsxs)(p,{children:[K,(0,D.jsxs)(m,{className:`fixed left-1/2 top-1/2 flex h-[min(calc(100dvh-2rem),760px)] w-[min(calc(100%-2rem),760px)] -translate-x-1/2 -translate-y-1/2 flex-col overflow-hidden rounded-2xl border border-edge bg-surface-panel outline-none ${v}`,children:[(0,D.jsxs)(`header`,{className:`shrink-0 space-y-2 border-b border-edge p-4 sm:p-5`,children:[(0,D.jsxs)(`div`,{className:`flex items-center justify-between gap-2`,children:[(0,D.jsx)(h,{className:`text-lg font-semibold text-fg`,children:R.chooseTitle.replace(`{source}`,r)}),(0,D.jsx)(f,{asChild:!0,children:(0,D.jsx)(_,{variant:`ghost`,"aria-label":R.close,className:`h-8 w-8 shrink-0 p-0`,children:de})})]}),(0,D.jsx)(d,{className:`text-sm text-fg-muted`,children:R.chooseHint}),(0,D.jsx)(`input`,{"aria-label":R.search,placeholder:R.search,value:z,onChange:fe,className:`w-full rounded-lg border border-edge bg-surface-base px-3 py-2 text-sm text-fg`})]}),he,ye]})]})})}function k(e,t){return(0,D.jsx)(`li`,{className:`break-words`,children:e},t)}function A(e){return e.kind===`context`}function j(e){return e.kind===`skill`}function M(e){return e.kind===`project`}function N(e){return e.kind===`project`}function P(e){return e.kind===`project`}function F(e){return e.kind===`project`}function I(e){return e.kind===`context`}function L(e){return e.kind===`skill`}function re(e){return e.language}function ie(e){let t=(0,w.c)(54),{inventoryId:n,item:r,checked:i,disabled:a,onChange:o}=e,s=ee(z),c;t[0]===s?c=t[1]:(c=te(s),t[0]=s,t[1]=c);let l=c.imports,[u,d]=(0,S.useState)(),[f,p]=(0,S.useState)(``),[m,h]=(0,S.useState)(!1),g;t[2]!==n||t[3]!==r.id||t[4]!==u?(g=async function(){if(h(R),!u)try{d(await C(`/inventories/${n}/items/${r.id}/preview`))}catch(e){let t=e;p(t instanceof Error?t.message:String(t))}},t[2]=n,t[3]=r.id,t[4]=u,t[5]=g):g=t[5];let v=g,y;t[6]!==a||t[7]!==r?(y=a||!T(r),t[6]=a,t[7]=r,t[8]=y):y=t[8];let b;t[9]===o?b=t[10]:(b=e=>o(e.target.checked),t[9]=o,t[10]=b);let x;t[11]!==i||t[12]!==y||t[13]!==b?(x=(0,D.jsx)(`input`,{type:`checkbox`,className:`mt-1 h-4 w-4 shrink-0 accent-accent`,checked:i,disabled:y,onChange:b}),t[11]=i,t[12]=y,t[13]=b,t[14]=x):x=t[14];let E;t[15]===r.name?E=t[16]:(E=(0,D.jsx)(`span`,{className:`block break-words text-sm font-medium text-fg`,children:r.name}),t[15]=r.name,t[16]=E);let O;t[17]===r.displayPath?O=t[18]:(O=(0,D.jsx)(`span`,{className:`block break-all text-xs text-fg-muted`,children:r.displayPath}),t[17]=r.displayPath,t[18]=O);let k;t[19]!==E||t[20]!==O?(k=(0,D.jsxs)(`span`,{className:`min-w-0`,children:[E,O]}),t[19]=E,t[20]=O,t[21]=k):k=t[21];let A;t[22]!==x||t[23]!==k?(A=(0,D.jsxs)(`label`,{className:`flex min-w-0 flex-1 cursor-pointer items-start gap-3`,children:[x,k]}),t[22]=x,t[23]=k,t[24]=A):A=t[24];let j;t[25]!==r.kind||t[26]!==r.name||t[27]!==r.status||t[28]!==l||t[29]!==v?(j=r.kind!==`project`&&r.status!==`blocked`&&(0,D.jsx)(_,{variant:`ghost`,"aria-label":`${l.preview}: ${r.name}`,onClick:()=>void v(),children:l.preview}),t[25]=r.kind,t[26]=r.name,t[27]=r.status,t[28]=l,t[29]=v,t[30]=j):j=t[30];let M;t[31]!==A||t[32]!==j?(M=(0,D.jsxs)(`div`,{className:`flex items-start gap-2`,children:[A,j]}),t[31]=A,t[32]=j,t[33]=M):M=t[33];let N;t[34]===r.description?N=t[35]:(N=r.description&&(0,D.jsx)(`p`,{className:`pl-7 text-xs text-fg-muted`,children:r.description}),t[34]=r.description,t[35]=N);let P;t[36]!==r.kind||t[37]!==r.status||t[38]!==r.targetName||t[39]!==l?(P=r.status!==`ready`&&(0,D.jsxs)(`p`,{className:`pl-7 text-xs text-fg-muted`,children:[r.kind===`project`&&r.status===`existing`?l.existingProject:l.statuses[r.status],r.status===`conflict`?` → ${r.targetName}`:``]}),t[36]=r.kind,t[37]=r.status,t[38]=r.targetName,t[39]=l,t[40]=P):P=t[40];let F;t[41]===r.reason?F=t[42]:(F=r.reason&&(0,D.jsx)(`p`,{className:`break-words pl-7 text-xs text-fg-muted`,children:r.reason}),t[41]=r.reason,t[42]=F);let I;t[43]!==u||t[44]!==f||t[45]!==m||t[46]!==l?(I=m&&(0,D.jsx)(`div`,{className:`ml-7 rounded-lg border border-edge p-3`,children:f?(0,D.jsx)(`p`,{role:`alert`,className:`text-sm text-fg-muted`,children:f}):u?(0,D.jsxs)(D.Fragment,{children:[(0,D.jsx)(`pre`,{className:`max-h-60 overflow-auto whitespace-pre-wrap break-words text-xs text-fg`,children:u.text}),u.truncated&&(0,D.jsx)(`p`,{className:`mt-2 text-xs text-fg-muted`,children:l.previewTruncated})]}):(0,D.jsx)(ne,{sections:1})}),t[43]=u,t[44]=f,t[45]=m,t[46]=l,t[47]=I):I=t[47];let L;return t[48]!==M||t[49]!==N||t[50]!==P||t[51]!==F||t[52]!==I?(L=(0,D.jsxs)(`div`,{className:`min-w-0 space-y-1 rounded-lg p-1`,children:[M,N,P,F,I]}),t[48]=M,t[49]=N,t[50]=P,t[51]=F,t[52]=I,t[53]=L):L=t[53],L}function R(e){return!e}function z(e){return e.language}function ae(){let e=te(ee(e=>e.language)).imports,[t,n]=(0,S.useState)(),[r,s]=(0,S.useState)(),[c,l]=(0,S.useState)(!1),[u,d]=(0,S.useState)(),[f,p]=(0,S.useState)(new Set),[m,h]=(0,S.useState)(!1),[g,v]=(0,S.useState)(),[y,w]=(0,S.useState)(),[T,E]=(0,S.useState)(``),[k,A]=(0,S.useState)(``),[j,M]=(0,S.useState)(0),N=(0,S.useRef)(null),P=(0,S.useRef)(!1);(0,S.useEffect)(()=>{let e=new AbortController;return E(``),C(`/sources`,void 0,e.signal).then(e=>n(e.sources)).catch(t=>{e.signal.aborted||E(t instanceof Error?t.message:String(t))}),()=>{e.abort(),N.current?.abort()}},[j]);let F=(t?.flatMap(e=>e.lastImport?.status===`running`?[e.lastImport.id]:[])??[]).join(`,`);(0,S.useEffect)(()=>{if(!F)return;let e=new AbortController,t,n=async()=>{for(let t of F.split(`,`))try{let n=await C(`/runs/${t}`,void 0,e.signal);e.signal.aborted||I(n)}catch{}e.signal.aborted||(t=setTimeout(()=>void n(),3e3))};return t=setTimeout(()=>void n(),1500),()=>{e.abort(),clearTimeout(t)}},[F]);function I(e){n(t=>t?.map(t=>t.id===e.source?{...t,lastImport:e}:t)),e.status!==`running`&&v(t=>t?.requestId===e.id?void 0:t)}async function L(e){N.current?.abort();let t=new AbortController;N.current=t,s(e),l(!0),d(void 0),p(new Set),A(``),w(void 0),v(void 0);try{let n=await C(`/sources/${e}/scan`,{},t.signal);t.signal.aborted||(d(n),p(new Set(n.candidates.filter(e=>!e.parentId&&e.suggested).map(e=>e.id))))}catch(e){t.signal.aborted||A(e instanceof Error?e.message:String(e))}}async function re(){if(!u||!f.size||P.current)return;P.current=!0,h(!0),A(``),E(``);let e=g??{inventoryId:u.id,candidateIds:[...f],requestId:crypto.randomUUID(),retryOf:y};v(e);try{I(await C(`/runs`,e)),l(!1)}catch(e){let t=e instanceof Error?e.message:String(e);A(t),E(t);let n=e.body?.code;n&&[`invalid_input`,`inventory_stale`,`invalid_selection`,`missing_parent`,`not_found`,`conflict`].includes(n)&&v(void 0)}finally{P.current=!1,h(!1)}}async function ie(e){s(e.source),l(!0),d(void 0),p(new Set),A(``),v(void 0),w(e.id),N.current?.abort();let t=new AbortController;N.current=t;try{let n=await C(`/inventories/${e.inventoryId}`,void 0,t.signal);if(t.signal.aborted)return;let r=new Set(e.items.filter(e=>e.status===`failed`).map(e=>e.candidateId));n.candidates.forEach(e=>{r.has(e.id)&&e.parentId&&r.add(e.parentId)}),d({...n,candidates:n.candidates.filter(e=>r.has(e.id))}),p(r)}catch(e){t.signal.aborted||A(e instanceof Error?e.message:String(e))}}let R=t?.filter(e=>e.detected||e.lastImport);return(0,D.jsxs)(x,{children:[(0,D.jsx)(b,{title:e.title,subtitle:e.subtitle}),T&&(0,D.jsxs)(`div`,{role:`alert`,className:`rounded-xl border border-edge p-4 text-sm text-fg`,children:[(0,D.jsx)(`p`,{children:T}),!t&&(0,D.jsx)(_,{variant:`ghost`,onClick:()=>M(e=>e+1),children:e.retry})]}),!t&&!T&&(0,D.jsx)(ne,{sections:1}),t&&(0,D.jsxs)(`section`,{className:`space-y-4`,children:[(0,D.jsxs)(`div`,{children:[(0,D.jsx)(`h2`,{className:`text-base font-medium text-fg`,children:e.apps}),(0,D.jsx)(`p`,{className:`mt-1 text-sm text-fg-muted`,children:e.detectedHint})]}),R?.length?(0,D.jsx)(`div`,{className:`divide-y divide-edge overflow-hidden rounded-2xl border border-edge`,children:R.map(t=>(0,D.jsxs)(`article`,{className:`space-y-3 p-5 sm:p-6`,children:[(0,D.jsxs)(`div`,{className:`flex items-center gap-4`,children:[(0,D.jsx)(`div`,{"aria-hidden":`true`,className:`flex h-11 w-11 shrink-0 items-center justify-center rounded-xl bg-surface-hover text-fg`,children:(0,D.jsx)(o,{className:`h-5 w-5`})}),(0,D.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,D.jsx)(`h3`,{className:`font-medium text-fg`,children:t.name}),(0,D.jsx)(`p`,{className:`mt-1 text-xs text-fg-muted`,children:e.includes})]}),(0,D.jsx)(_,{variant:`secondary`,disabled:m||!t.detected||!!g&&r!==t.id||t.lastImport?.status===`running`,onClick:()=>{E(``),g&&r===t.id?l(!0):L(t.id)},children:m&&r===t.id?e.importing:g&&r===t.id?e.retry:t.lastImport?e.importAgain:e.import})]}),t.lastImport&&(0,D.jsxs)(`div`,{role:`status`,className:`space-y-2 text-sm text-fg-muted`,children:[(0,D.jsxs)(`p`,{className:`flex items-center gap-2`,children:[(0,D.jsx)(a,{className:`h-4 w-4 shrink-0`}),t.lastImport.status===`running`?e.importing:t.lastImport.issues.length?e.finishedWithIssues:e.finished]}),(0,D.jsxs)(`p`,{children:[e.summary.replace(`{skills}`,String(t.lastImport.skills)).replace(`{context}`,String(t.lastImport.context)).replace(`{projects}`,String(t.lastImport.projects)),t.lastImport.skipped>0&&` · ${e.skipped.replace(`{count}`,String(t.lastImport.skipped))}`]}),!!t.lastImport.issues.length&&(0,D.jsxs)(`details`,{children:[(0,D.jsxs)(`summary`,{className:`cursor-pointer text-fg`,children:[e.details,` (`,t.lastImport.issues.length,`)`]}),(0,D.jsx)(`ul`,{className:`mt-2 space-y-2`,children:t.lastImport.issues.map((e,t)=>(0,D.jsxs)(`li`,{className:`break-words`,children:[(0,D.jsx)(`span`,{className:`font-medium`,children:e.name}),` — `,e.reason]},t))})]}),t.lastImport.status===`partial`&&(0,D.jsx)(_,{variant:`ghost`,disabled:m||!!g,onClick:()=>void ie(t.lastImport),children:e.retryFailed})]})]},t.id))}):(0,D.jsxs)(`div`,{className:`rounded-2xl border border-edge p-6 text-sm text-fg-muted`,children:[(0,D.jsx)(`p`,{children:e.empty}),(0,D.jsx)(_,{variant:`ghost`,className:`mt-3`,onClick:()=>M(e=>e+1),children:e.refresh})]}),(0,D.jsx)(`p`,{className:`text-xs leading-relaxed text-fg-muted`,children:e.footnote}),R?.some(e=>e.lastImport)&&(0,D.jsxs)(`div`,{className:`flex gap-4 text-sm`,children:[(0,D.jsx)(i,{className:`text-accent`,to:`/skills`,children:e.openSkills}),(0,D.jsx)(i,{className:`text-accent`,to:`/projects`,children:e.openProjects}),(0,D.jsx)(i,{className:`text-accent`,to:`/connectors`,children:e.connections})]})]}),(0,D.jsx)(O,{open:c,sourceName:t?.find(e=>e.id===r)?.name??``,inventory:u,selected:f,onSelected:p,busy:m,locked:m||!!g,error:k,onClose:()=>{N.current?.abort(),l(!1)},onRefresh:()=>{r&&L(r)},onSubmit:()=>void re()})]})}export{ae as ImportsPage};
|