@xopcai/xopc 0.0.199 → 0.0.201
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-DYVN1hRp.js → activity-store-DOhnAQOQ.js} +1 -1
- package/dist/gateway/static/root/assets/{agent-avatar-dicebear-Bt70bZjv.js → agent-avatar-dicebear-D8Cw0Mve.js} +1 -1
- package/dist/gateway/static/root/assets/agents-ANavi648.js +68 -0
- package/dist/gateway/static/root/assets/{api-B8mzbAle.js → api-E9Bk-Idp.js} +1 -1
- package/dist/gateway/static/root/assets/{app-management-settings-panel-B4x7JfL8.js → app-management-settings-panel-BubrReXg.js} +1 -1
- package/dist/gateway/static/root/assets/{appearance-settings-Dwdagf-Q.js → appearance-settings-BY5Az2p4.js} +1 -1
- package/dist/gateway/static/root/assets/{apps-page-DkTiesxe.js → apps-page-CFh9MBxc.js} +1 -1
- package/dist/gateway/static/root/assets/{archive-plugin-Cv0VXKLm.js → archive-plugin-BY8843mB.js} +1 -1
- package/dist/gateway/static/root/assets/{attachment-load-CgidKrXn.js → attachment-load-DG45KScf.js} +1 -1
- package/dist/gateway/static/root/assets/automations-page-751CeNI3.js +6 -0
- package/dist/gateway/static/root/assets/{binary-plugins-DN3CQgIq.js → binary-plugins-DGIF2ZAv.js} +1 -1
- package/dist/gateway/static/root/assets/{block-editor-BwkSl1F_.js → block-editor-C1Qktr1g.js} +5 -5
- package/dist/gateway/static/root/assets/browser-settings-page-CGAWs-TT.js +8 -0
- package/dist/gateway/static/root/assets/{browser-workflow-inputs-_ndaecsf.js → browser-workflow-inputs-D_jnndyz.js} +1 -1
- package/dist/gateway/static/root/assets/{browser-workflows-page-C_I31wLm.js → browser-workflows-page-DyIRvPaq.js} +2 -2
- package/dist/gateway/static/root/assets/capabilities-settings-panel-CghUK68J.js +7 -0
- package/dist/gateway/static/root/assets/{capability-presets-api-Dy1jZJKs.js → capability-presets-api--tz0mGLY.js} +1 -1
- package/dist/gateway/static/root/assets/capability-presets-settings-panel-XsTfkvUn.js +3 -0
- package/dist/gateway/static/root/assets/{channel-recipient-api-D-9qiuio.js → channel-recipient-api-CkOKF9nc.js} +1 -1
- package/dist/gateway/static/root/assets/{channels-settings-DV5BhAeu.js → channels-settings-DkoAZZMe.js} +1 -1
- package/dist/gateway/static/root/assets/channels-status-swr-DNDvMWpl.js +1 -0
- package/dist/gateway/static/root/assets/{connectors-api-5FEBYguL.js → connectors-api-FBOe9SWC.js} +1 -1
- package/dist/gateway/static/root/assets/connectors-page-e4vekkAu.js +2 -0
- package/dist/gateway/static/root/assets/{cron-expression-SEFx5rnr.js → cron-expression-Q4QaYjpI.js} +1 -1
- package/dist/gateway/static/root/assets/{date-picker-D4zCUQJL.js → date-picker-Dtn7e6TW.js} +1 -1
- package/dist/gateway/static/root/assets/{dependency-picker-DpQAxS2k.js → dependency-picker-Br6nPaM6.js} +1 -1
- package/dist/gateway/static/root/assets/{desktop-pet-B_5G3lQl.js → desktop-pet-DzTM6aH8.js} +1 -1
- package/dist/gateway/static/root/assets/{desktop-pet-settings-ClEyoUJe.js → desktop-pet-settings-FDmaty3P.js} +1 -1
- package/dist/gateway/static/root/assets/{directory-picker-path-field-AsFWmOjG.js → directory-picker-path-field-X2e8xn8j.js} +1 -1
- package/dist/gateway/static/root/assets/{extension-debug-page-C22Y2o5l.js → extension-debug-page-Dx4MBfga.js} +1 -1
- package/dist/gateway/static/root/assets/{extension-page-C61Ikawk.js → extension-page-Bf_FEDhM.js} +1 -1
- package/dist/gateway/static/root/assets/{extension-settings-page-WlWWcDFr.js → extension-settings-page-CrOgZxkf.js} +1 -1
- package/dist/gateway/static/root/assets/{gateway-config-api-ByIOMQdc.js → gateway-config-api-CZ4r-7qT.js} +1 -1
- package/dist/gateway/static/root/assets/{gateway-config-swr-jB0hAhWO.js → gateway-config-swr-Cv2ywpdb.js} +1 -1
- package/dist/gateway/static/root/assets/{gateway-settings-CzzS9A17.js → gateway-settings-DpWmVi0w.js} +1 -1
- package/dist/gateway/static/root/assets/{gateway-startup-retry-C-fRlHCL.js → gateway-startup-retry-undf-k5g.js} +1 -1
- package/dist/gateway/static/root/assets/heartbeat-settings-DSQZhSvT.js +1 -0
- package/dist/gateway/static/root/assets/home-page-L0uHiu0T.js +3 -0
- package/dist/gateway/static/root/assets/{index-CR233S0Q.css → index-Bp8I_eX4.css} +1 -1
- package/dist/gateway/static/root/assets/index-DRrjYYzZ.js +152 -0
- package/dist/gateway/static/root/assets/{keyboard-shortcuts-settings-BD_TFz0_.js → keyboard-shortcuts-settings-Bc3Quw42.js} +1 -1
- package/dist/gateway/static/root/assets/local-app-workbench-page-Copi3sdP.js +2 -0
- package/dist/gateway/static/root/assets/{local-apps-page-BwbUeLfm.js → local-apps-page-CP9X_vtz.js} +1 -1
- package/dist/gateway/static/root/assets/{locale-store-xULEcFVs.js → locale-store-CnamlR07.js} +1 -1
- package/dist/gateway/static/root/assets/logs-page-DMKq6e29.js +2 -0
- package/dist/gateway/static/root/assets/{management-settings-CW2VpqtT.js → management-settings-CJmcaVje.js} +1 -1
- package/dist/gateway/static/root/assets/{markdown-split-B1M9KO16.js → markdown-split-AcuFp0TH.js} +1 -1
- package/dist/gateway/static/root/assets/{media-plugins-B_QlNdqZ.js → media-plugins-BvFgsiJL.js} +1 -1
- package/dist/gateway/static/root/assets/messages-D7kOD_o_.js +3 -0
- package/dist/gateway/static/root/assets/{notes-page-BTbD4GmH.js → notes-page-IW7IQ9nJ.js} +1 -1
- package/dist/gateway/static/root/assets/notes-workbench-Zb8U0anO.js +4 -0
- package/dist/gateway/static/root/assets/{preview-open-alternatives-CeqtArlZ.js → preview-open-alternatives-C-b34dgQ.js} +1 -1
- package/dist/gateway/static/root/assets/{product-open-page-DnalBZZs.js → product-open-page-CWEzLykF.js} +1 -1
- package/dist/gateway/static/root/assets/project-detail-page-BuIbLnan.js +1 -0
- package/dist/gateway/static/root/assets/projects-page-BwUfRqNV.js +1 -0
- package/dist/gateway/static/root/assets/remote-access-hub-BTaXxcEi.js +1 -0
- package/dist/gateway/static/root/assets/{runtime-tools-settings-panel-cGkBEfg4.js → runtime-tools-settings-panel-DAohEZrX.js} +2 -2
- package/dist/gateway/static/root/assets/{schema-form-CmsrLlxu.js → schema-form-C_OBW8A5.js} +1 -1
- package/dist/gateway/static/root/assets/sessions-page-BnHoTCD3.js +1 -0
- package/dist/gateway/static/root/assets/settings-advanced-gate-BTB_fxjt.js +1 -0
- package/dist/gateway/static/root/assets/{settings-form-section-DUWCbaMJ.js → settings-form-section-C7w2WS-A.js} +1 -1
- package/dist/gateway/static/root/assets/{settings-loading-skeleton-Bvy5rdMY.js → settings-loading-skeleton-zwibve4m.js} +1 -1
- package/dist/gateway/static/root/assets/{settings-page-cZSAwsRR.js → settings-page-B9W03dSW.js} +1 -1
- package/dist/gateway/static/root/assets/setup-status-panel-C8Hec2Af.js +1 -0
- package/dist/gateway/static/root/assets/{share-preview-page-BzA2NCAH.js → share-preview-page-6e3ks2be.js} +1 -1
- package/dist/gateway/static/root/assets/shares-settings-Bwc5HfLI.js +1 -0
- package/dist/gateway/static/root/assets/skill-reload-api-D7kunhqy.js +1 -0
- package/dist/gateway/static/root/assets/{skills-page-Bvde7_i5.js → skills-page-WgkaNzpc.js} +1 -1
- package/dist/gateway/static/root/assets/{skills-page.utils-vXSqHR7g.js → skills-page.utils-D9QT5cxj.js} +1 -1
- package/dist/gateway/static/root/assets/{system-settings-panel-9cQGOGCK.js → system-settings-panel-c1HVtv1Y.js} +1 -1
- package/dist/gateway/static/root/assets/task-detail-page-CjP-6WVU.js +1 -0
- package/dist/gateway/static/root/assets/{theme-store-CHQRiuCF.js → theme-store-BDyUTObE.js} +1 -1
- package/dist/gateway/static/root/assets/{use-autosave-7XfKULPI.js → use-autosave-D6UkH_Ga.js} +1 -1
- package/dist/gateway/static/root/assets/{user-context-page-CZ9m9aC_.js → user-context-page-D8ZhPDNF.js} +1 -1
- package/dist/gateway/static/root/assets/{voice-api-key-field-DXr21v-3.js → voice-api-key-field-BOxkKbGh.js} +1 -1
- package/dist/gateway/static/root/assets/{work-discovery-overlay-CeG7g_DZ.js → work-discovery-overlay-Dd19yK9t.js} +1 -1
- package/dist/gateway/static/root/assets/work-discovery-page-DUkdJl1e.js +1 -0
- package/dist/gateway/static/root/assets/{workflow-run-setup-panel-DSQQZP9T.js → workflow-run-setup-panel-ZA3bP65I.js} +2 -2
- package/dist/gateway/static/root/assets/workflows-page-C2b5W5bw.js +5 -0
- package/dist/gateway/static/root/assets/{working-directory-picker-modal-D-IgcHPp.js → working-directory-picker-modal-BcyiDXU3.js} +1 -1
- package/dist/gateway/static/root/index.html +9 -9
- package/dist/package.js +1 -1
- package/dist/packages/gateway-contract/src/tasks.js +51 -9
- package/dist/src/agent/context/execution-scope.js +3 -1
- package/dist/src/agent/tasks/task-judge-service.d.ts +1 -1
- package/dist/src/agent/tasks/task-judge-service.js +3 -2
- package/dist/src/agent/tools/xopc-use-tool.js +13 -3
- package/dist/src/auth/oauth/types.d.ts +2 -0
- package/dist/src/auth/oauth/xopc-cloud.js +24 -2
- package/dist/src/automations/domain/validation.d.ts +0 -12
- package/dist/src/automations/draft/automation-draft-validator.d.ts +0 -3
- package/dist/src/cli/commands/doctor/checks/database-schema.js +1 -1
- package/dist/src/gateway/hono/app.js +1 -1
- package/dist/src/gateway/hono/oauth-async.js +2 -0
- package/dist/src/gateway/hono/routes/agent-stream.js +2 -74
- package/dist/src/gateway/hono/routes/session-input-handler.d.ts +62 -0
- package/dist/src/gateway/hono/routes/session-input-handler.js +82 -0
- package/dist/src/gateway/hono/routes/tasks.js +161 -2
- package/dist/src/gateway/service/task-conversation-query-service.d.ts +58 -0
- package/dist/src/gateway/service/task-conversation-query-service.js +84 -0
- package/dist/src/gateway/service.d.ts +10 -0
- package/dist/src/gateway/service.js +75 -42
- package/dist/src/projects/project-agent.js +1 -1
- package/dist/src/storage/sqlite/migrations/120_task_conversation.sql +112 -0
- package/dist/src/storage/sqlite/migrations/runner.d.ts +1 -1
- package/dist/src/storage/sqlite/migrations/runner.js +3 -3
- package/dist/src/storage/sqlite/migrations/runner.ts +1 -1
- package/dist/src/storage/sqlite/schema.js +1 -1
- package/dist/src/tasks/execution-context.js +8 -4
- package/dist/src/tasks/index.d.ts +2 -0
- package/dist/src/tasks/index.js +3 -1
- package/dist/src/tasks/task-application-service.js +10 -17
- package/dist/src/tasks/task-context-assembler.js +9 -4
- package/dist/src/tasks/task-context-repository.d.ts +0 -6
- package/dist/src/tasks/task-context-repository.js +0 -4
- package/dist/src/tasks/task-conversation-repository.d.ts +71 -0
- package/dist/src/tasks/task-conversation-repository.js +194 -0
- package/dist/src/tasks/task-handoff-service.d.ts +31 -0
- package/dist/src/tasks/task-handoff-service.js +143 -0
- package/dist/src/tasks/task-read-model-projector.js +1 -5
- package/dist/src/tasks/task-repository.d.ts +0 -2
- package/dist/src/tasks/task-repository.js +2 -9
- package/dist/src/tasks/task-run-coordinator.js +3 -1
- package/dist/src/workflows/service/workflow-run-service.js +4 -2
- package/package.json +2 -2
- package/dist/gateway/static/root/assets/agents-D19uNmJf.js +0 -68
- package/dist/gateway/static/root/assets/automations-page-BR6qMOVr.js +0 -6
- package/dist/gateway/static/root/assets/browser-settings-page-CDFQWAxI.js +0 -8
- package/dist/gateway/static/root/assets/capabilities-settings-panel-D41mssOq.js +0 -7
- package/dist/gateway/static/root/assets/capability-presets-settings-panel-BXgCyuu2.js +0 -3
- package/dist/gateway/static/root/assets/channels-status-swr-B4Rbh3bM.js +0 -1
- package/dist/gateway/static/root/assets/connectors-page-C_qkEN0T.js +0 -2
- package/dist/gateway/static/root/assets/heartbeat-settings-B4A_CXUL.js +0 -1
- package/dist/gateway/static/root/assets/home-page-FVGYYPWo.js +0 -3
- package/dist/gateway/static/root/assets/index-CGbKTCST.js +0 -152
- package/dist/gateway/static/root/assets/local-app-workbench-page-BNpkigNb.js +0 -2
- package/dist/gateway/static/root/assets/logs-page-DXP9OQQt.js +0 -2
- package/dist/gateway/static/root/assets/messages-3qRsLZuX.js +0 -3
- package/dist/gateway/static/root/assets/notes-workbench-JRiq7QDW.js +0 -4
- package/dist/gateway/static/root/assets/project-detail-page-CjWA13aE.js +0 -1
- package/dist/gateway/static/root/assets/projects-page-jsCkScbG.js +0 -1
- package/dist/gateway/static/root/assets/remote-access-hub-CGPJTEkM.js +0 -1
- package/dist/gateway/static/root/assets/sessions-page-BBHzziMd.js +0 -1
- package/dist/gateway/static/root/assets/settings-advanced-gate-2cGg8-9h.js +0 -1
- package/dist/gateway/static/root/assets/setup-status-panel-Cf06b66-.js +0 -1
- package/dist/gateway/static/root/assets/shares-settings-xlNKydYY.js +0 -1
- package/dist/gateway/static/root/assets/skill-reload-api-C5Xu93c_.js +0 -1
- package/dist/gateway/static/root/assets/task-detail-page-Bkno4tTe.js +0 -1
- package/dist/gateway/static/root/assets/work-discovery-page-CQWZD03N.js +0 -1
- package/dist/gateway/static/root/assets/workflows-page-Cs-MXFJ1.js +0 -5
|
@@ -0,0 +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{d as i,f as a,t as o}from"./chunk-KS7C4IRE-BMhrPKJC.js";import{n as s,r as c}from"./popover-select-BzdnTy3h.js";import{t as l}from"./external-link-DjqjBmc3.js";import{t as u}from"./cn-JdwAhgNB.js";import{t as d}from"./button-CSEbl4zT.js";import{l as f,n as ee}from"./locale-store-CnamlR07.js";import{i as te,n as p,o as ne,r as re,s as m,t as ie}from"./dist-BPoKqzeH.js";import{A as ae,Ei as h,Gt as g,H as _,K as oe,Ks as v,Kt as y,M as b,Ma as se,Na as x,Qi as ce,Qs as S,R as le,Ti as C,Tl as w,W as T,Wa as E,Yo as D,Zr as O,_l as k,ci as A,dr as j,fr as M,gr as ue,ha as de,lc as fe,mr as pe,n as me,nl as he,pr as ge,q as _e,qc as ve,ql as ye,qt as be,si as N,vl as P}from"./index-DRrjYYzZ.js";import{t as xe}from"./date-picker-Dtn7e6TW.js";import{t as Se}from"./dependency-picker-Br6nPaM6.js";var F=e(t(),1),I=n();function Ce(e,t,n,r){return!!(e&&t!==e.version&&n!==e.value&&r!==n)}function we(e,t){let n={...e.task};t.title!==void 0&&(n.title=t.title),t.priority!==void 0&&(n.priority=t.priority);for(let e of[`body`,`projectId`,`milestoneId`,`parentTaskId`,`dueAt`,`ownerId`]){let r=t[e];r!==void 0&&(r===null?delete n[e]:Object.assign(n,{[e]:r}))}return n.version+=1,n.updatedAt=Date.now(),{...e,task:n}}var L=r();function Te(e,t){return(t===`zh`?{backlog:`待规划`,ready:`就绪`,active:`进行中`,review:`待验收`,closed:`已完成`}:{backlog:`Backlog`,ready:`Ready`,active:`Active`,review:`Review`,closed:`Completed`})[e]}function Ee(){let e=(0,I.c)(1),t;return e[0]===Symbol.for(`react.memo_cache_sentinel`)?(t=(0,L.jsxs)(`div`,{className:`space-y-4`,"aria-busy":!0,children:[(0,L.jsx)(x,{className:`h-32 rounded-2xl`}),(0,L.jsx)(x,{className:`h-52 rounded-2xl`}),(0,L.jsx)(x,{className:`h-40 rounded-2xl`})]}),e[0]=t):t=e[0],t}function De(e){if(e===void 0)return``;let t=new Date(e);return new Date(t.getTime()-t.getTimezoneOffset()*6e4).toISOString().slice(0,10)}function Oe(e){return e?new Date(`${e}T23:59:59.999`).getTime():null}var ke=`xopc.taskDetail.chatPanelPercent`,R=42;function Ae(e,t){let n=Math.max(30,352/Math.max(t,1)*100),r=Math.min(60,(t-480)/Math.max(t,1)*100);return r<n?R:Math.min(r,Math.max(n,e))}function je(){try{let e=Number(window.localStorage.getItem(ke));return Number.isFinite(e)&&e>=30&&e<=60?e:R}catch{return R}}function Me(e){return e.task.phase===`closed`?e.task.resolution===`done`?`completed`:`ended`:e.attention.some(e=>e.kind===`input_required`||e.kind===`approval_required`)?`needsUser`:e.operationalState===`idle`?e.task.phase===`backlog`?`captured`:e.task.phase===`ready`?`ready`:e.task.phase===`review`?`review`:`paused`:e.operationalState}function z(e){let t=(0,I.c)(9),{items:n,empty:r,verificationByCriterion:i}=e;if(n.length===0){let e;return t[0]===r?e=t[1]:(e=(0,L.jsx)(`p`,{className:`text-sm leading-6 text-fg-muted`,children:r}),t[0]=r,t[1]=e),e}let a;if(t[2]!==n||t[3]!==i){let e;t[5]===i?e=t[6]:(e=e=>{let t=i?.get(e)??`unverified`;return(0,L.jsxs)(`li`,{className:`flex gap-2 text-sm leading-6 text-fg`,children:[(0,L.jsx)(t===`passed`?w:t===`failed`?P:k,{className:t===`passed`?`mt-1 size-4 shrink-0 text-success`:t===`failed`?`mt-1 size-4 shrink-0 text-danger`:`mt-1 size-4 shrink-0 text-fg-subtle`}),(0,L.jsx)(`span`,{children:e})]},e)},t[5]=i,t[6]=e),a=n.map(e),t[2]=n,t[3]=i,t[4]=a}else a=t[4];let o;return t[7]===a?o=t[8]:(o=(0,L.jsx)(`ul`,{className:`space-y-2`,children:a}),t[7]=a,t[8]=o),o}function Ne({taskId:e,presentation:t,backgroundPath:n}){let[r]=a(),i=ee(e=>e.language),te=f(e=>e.token),p=(0,F.useMemo)(()=>_e(i),[i]),ne=E(e=>e.setPageHeader),re=E(e=>e.clearPageHeader),{data:m,error:ie,mutate:x,lastChange:D,conversationLoading:k,conversationError:A}=ae(e),[be,N]=(0,F.useState)(null),[P,I]=(0,F.useState)(!1),[Ne,B]=(0,F.useState)([]),[V,Pe]=(0,F.useState)(null),[Fe,Ie]=(0,F.useState)([]),[Le,H]=(0,F.useState)(!1),[Re,U]=(0,F.useState)(``),[ze,W]=(0,F.useState)(!1),[G,Be]=(0,F.useState)(``),[K,Ve]=(0,F.useState)(je),[He,Ue]=(0,F.useState)(!1),We=(0,F.useRef)(null),Ge=(0,F.useRef)(!1),Ke=(0,F.useRef)(!1),qe=(0,F.useRef)(``),Je=(0,F.useRef)(null),Ye=(0,F.useRef)(null),Xe=(0,F.useRef)(null),[Ze,q]=(0,F.useState)(null),[Qe,$e]=(0,F.useState)(null),et=m?.dependencies.map(e=>`${e.id}:${e.title}`).join(`\0`)??``,tt=(0,F.useMemo)(()=>C(r.get(`returnTo`),`/`,[`/projects`,`/chat`,`/notes`,`/tasks`]),[r]);(0,F.useEffect)(()=>{N(null),q(null),H(!1),W(!1),$e(null)},[e]),(0,F.useEffect)(()=>{let e=!0;return se().then(t=>{e&&Ie(t.items)}).catch(()=>void 0),()=>{e=!1}},[te]),(0,F.useEffect)(()=>{if(!D||D.source===`user`)return;$e(D);let e=window.setTimeout(()=>$e(null),3500);return()=>window.clearTimeout(e)},[D]),(0,F.useEffect)(()=>{let t=m?.task.projectId,n=m?.dependencies??[];if(!t){Xe.current=null,Pe(null),B(n);return}Xe.current!==t&&(Xe.current=t,Pe(null));let r=!0;return de(t).then(t=>{if(!r)return;Pe(t.project.name);let i=new Map;for(let r of[...t.tasks,...n])r.id!==e&&i.set(r.id,{id:r.id,title:r.title});B([...i.values()])}).catch(()=>{r&&B(n)}),()=>{r=!1}},[et,m?.task.projectId,e]);let J=async t=>{if(m){I(!0),N(null);try{await x(await b(e,t,m.task.version),{revalidate:!1})}catch{N(p.actionFailed)}finally{I(!1)}}},Y=async t=>{if(!m)return!1;I(!0),N(null);try{return await x(T(e,t,m.task.version),{optimisticData:we(m,t),populateCache:!0,revalidate:!1,rollbackOnError:!0}),!0}catch{return N(p.actionFailed),!1}finally{I(!1)}},nt=async()=>{if(!m)return;if(Ge.current){Ge.current=!1;return}let e=Re.trim(),t=Je.current;if(Ce(t,m.task.version,m.task.title,e)){q(`title`);return}if(!e||e===m.task.title){U(m.task.title),H(!1);return}await Y({title:e})&&(q(null),H(!1))},rt=async()=>{if(!m)return;if(Ke.current){Ke.current=!1;return}let e=G.trim(),t=Ye.current;if(Ce(t,m.task.version,m.task.body??``,e)){q(`description`);return}if(G===qe.current||e===(m.task.body??``).trim()){W(!1);return}await Y({body:e||null})&&(q(null),W(!1))},it=async e=>{if(!(!m||e===m.task.phase)){if(m.task.phase===`closed`){await J({type:`reopen`,phase:e===`closed`?`ready`:e});return}if(e===`closed`){await J({type:`close`,resolution:`done`});return}await J({type:`move`,phase:e})}},X=(0,F.useCallback)(e=>{Ve(e);try{window.localStorage.setItem(ke,String(e))}catch{}},[]),at=(0,F.useCallback)(e=>{if(e.key!==`ArrowLeft`&&e.key!==`ArrowRight`&&e.key!==`Home`)return;e.preventDefault();let t=We.current?.clientWidth??0;X(Ae(e.key===`Home`?R:K+(e.key===`ArrowLeft`?2:-2),t))},[K,X]),ot=(0,F.useCallback)(e=>{if(!window.matchMedia(`(min-width: 1024px)`).matches)return;let t=We.current;if(!t)return;e.preventDefault();let n=e.currentTarget,r=e.pointerId;n.setPointerCapture(r),Ue(!0);let i=K,a=0,o=()=>{a=0,t.style.setProperty(`--task-chat-panel-width`,`${i}%`)},s=e=>{let n=t.getBoundingClientRect();i=Ae((n.right-e.clientX)/n.width*100,n.width),a===0&&(a=window.requestAnimationFrame(o))},c=()=>{a!==0&&(window.cancelAnimationFrame(a),o());try{n.releasePointerCapture(r)}catch{}Ue(!1),X(i),window.removeEventListener(`pointermove`,s),window.removeEventListener(`pointerup`,c),window.removeEventListener(`pointercancel`,c)};window.addEventListener(`pointermove`,s),window.addEventListener(`pointerup`,c),window.addEventListener(`pointercancel`,c)},[K,X]),st=async t=>{if(m){I(!0),N(null);try{await x(await oe(e,t,m.task.version),{revalidate:!1})}catch{N(p.dependencyUpdateFailed)}finally{I(!1)}}},ct=async t=>{if(!(!m||!t||t===m.conversation.currentExecutorAgentId)){I(!0),N(null);try{await x(await le(e,t,m.task.version),{revalidate:!1})}catch{N(p.actionFailed)}finally{I(!1)}}};if((0,F.useLayoutEffect)(()=>{if(t!==`modal`)return ne({startExtra:(0,L.jsx)(o,{to:tt,className:`flex size-9 items-center justify-center rounded-lg text-fg-muted hover:bg-surface-hover`,"aria-label":p.backToWork,children:(0,L.jsx)(ye,{className:`size-4`})}),main:m?(0,L.jsxs)(`div`,{className:`min-w-0`,children:[(0,L.jsx)(`p`,{className:`truncate text-sm font-semibold text-fg`,children:V?`${V} / ${p.taskLabel}`:p.taskLabel}),(0,L.jsx)(`p`,{className:`text-xs text-fg-muted`,children:p.detailStatuses[Me(m)]})]}):null,end:null}),re},[re,p.backToWork,p.detailStatuses,p.taskLabel,m,t,V,tt,ne]),ie&&!m)return(0,L.jsx)(`div`,{className:t===`modal`?`p-5 text-sm text-danger`:`mx-auto max-w-3xl p-6 text-sm text-danger`,children:p.taskNotFound});if(!m)return(0,L.jsx)(`div`,{className:t===`modal`?`p-5`:`mx-auto max-w-4xl p-4 sm:p-6`,children:(0,L.jsx)(Ee,{})});let lt=m.waits[0],ut=lt?.kind===`paused`?lt:void 0,Z=m.receipts[0],dt=p.detailStatuses[Me(m)],ft=p.detailStatusDescriptions[Me(m)],pt=m.task.body?.trim()||m.task.contract?.objective.trim(),mt=new Map(Z?.verification.checks.map(e=>[e.criterion,e.status])),ht=m.allowedCommands.includes(`mark_ready`),gt=m.allowedCommands.includes(`start`),_t=m.allowedCommands.includes(`add_wait`),vt=m.task.phase===`review`&&m.allowedCommands.includes(`close`),yt=m.allowedCommands.includes(`reopen`),bt=m.conversation.activeSessionKey,Q=m.conversation.currentExecutorAgentId??m.task.delegateAgentId??m.task.ownerId,xt=Fe.find(e=>e.id===Q),St=m.attention.some(e=>e.kind===`input_required`||e.kind===`approval_required`),Ct=m.task.contract?.acceptanceCriteria??[],wt=Ct.filter(e=>mt.get(e)===`passed`).length,Tt=m.task.contract?.expectedOutputs??[],Et=m.task.contract?.constraints??[],Dt=m.task.contract?.approvalRequired??[],Ot=m.task.contract?.assumptions??[],kt=m.task.contract?.risks??[],$=(...e)=>!!Qe?.changedFields.some(t=>e.includes(t)),At=e=>t===`modal`&&n?y(n,e):h(`/tasks/${e}`,tt),jt=m.allowedCommands.includes(`move`),Mt=e=>e!==m.task.phase&&(e===`closed`?!vt:m.task.phase===`closed`?!yt:!jt),Nt=(0,L.jsxs)(`div`,{className:`flex flex-wrap gap-2`,children:[ht?(0,L.jsxs)(d,{variant:`primary`,disabled:P,onClick:()=>void J({type:`mark_ready`}),children:[(0,L.jsx)(v,{className:`size-4`}),p.scheduleTask]}):null,ut?(0,L.jsxs)(d,{variant:`primary`,disabled:P,onClick:()=>void J({type:`resolve_wait`,waitId:ut.id}),children:[(0,L.jsx)(v,{className:`size-4`}),p.resumeTask]}):null,!lt&>&&Q?(0,L.jsxs)(d,{variant:`primary`,disabled:P,onClick:()=>void J({type:`start`,executor:{kind:`agent`,agentId:Q}}),children:[(0,L.jsx)(v,{className:`size-4`}),p.runTask]}):null,vt?(0,L.jsxs)(d,{variant:`primary`,disabled:P,onClick:()=>void J({type:`close`,resolution:`done`}),children:[(0,L.jsx)(w,{className:`size-4`}),p.approveTask]}):null,yt?(0,L.jsxs)(d,{variant:`primary`,disabled:P,onClick:()=>void J({type:`reopen`,phase:`ready`}),children:[(0,L.jsx)(v,{className:`size-4`}),p.reopenTask]}):null,!lt&&_t?(0,L.jsxs)(d,{variant:`secondary`,className:`border-0 bg-surface-hover shadow-none`,disabled:P,onClick:()=>void J({type:`add_wait`,wait:{kind:`paused`,reason:`Paused by user`,condition:{}}}),children:[(0,L.jsx)(S,{className:`size-4`}),p.pauseTask]}):null,m.task.phase===`closed`?null:(0,L.jsxs)(pe,{children:[(0,L.jsx)(ue,{asChild:!0,children:(0,L.jsx)(d,{type:`button`,variant:`ghost`,className:`size-9 p-0`,disabled:P,"aria-label":p.moreActions,children:(0,L.jsx)(he,{className:`size-4`,"aria-hidden":!0})})}),(0,L.jsx)(ge,{children:(0,L.jsx)(j,{align:`end`,sideOffset:6,className:`z-[100] min-w-40 rounded-lg border border-edge bg-surface-panel p-1 shadow-popover`,children:(0,L.jsx)(M,{className:`cursor-pointer rounded-md px-3 py-2 text-sm text-danger outline-none hover:bg-surface-hover focus:bg-surface-hover`,onSelect:()=>void J({type:`close`,resolution:`cancelled`}),children:p.cancelTask})})})]})]});return(0,L.jsxs)(`div`,{ref:We,className:`${t===`modal`?`flex h-full min-h-0 flex-col lg:flex-row`:`flex min-h-[calc(100dvh-8rem)] flex-col overflow-hidden lg:flex-row`} ${He?`lg:cursor-col-resize lg:select-none`:``}`,style:{"--task-chat-panel-width":`${K}%`},children:[(0,L.jsxs)(`section`,{className:`task-detail-scroll min-w-0 flex-1 overflow-y-auto overscroll-contain p-5 sm:p-6`,children:[(0,L.jsxs)(`header`,{className:u(`px-4 pb-5`,$(`title`)&&`task-detail-live-update`),children:[(0,L.jsx)(`div`,{className:`flex flex-wrap items-start justify-between gap-4`,children:(0,L.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,L.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2 text-xs text-fg-muted`,children:[V?(0,L.jsxs)(`span`,{className:`inline-flex items-center gap-1.5`,children:[(0,L.jsx)(ve,{className:`size-3.5`,"aria-hidden":!0}),V]}):null,(0,L.jsx)(`span`,{children:`/`}),(0,L.jsx)(`span`,{children:p.taskLabel}),Qe?(0,L.jsx)(`span`,{className:`rounded-full bg-accent-soft px-2 py-0.5 text-[11px] font-medium text-accent-fg`,role:`status`,children:Qe.source===`agent`?i===`zh`?`Agent 刚刚更新`:`Updated by Agent`:i===`zh`?`执行结果已同步`:`Execution result synced`}):null]}),Le?(0,L.jsx)(`input`,{autoFocus:!0,"data-task-inline-editor":!0,value:Re,onChange:e=>U(e.target.value),onBlur:()=>void nt(),onKeyDown:e=>{e.key===`Enter`&&e.currentTarget.blur(),e.key===`Escape`&&(e.preventDefault(),e.stopPropagation(),Ge.current=!0,U(m.task.title),H(!1),queueMicrotask(()=>{Ge.current=!1}))},className:`mt-3 w-full max-w-3xl rounded-lg bg-surface-hover px-3 py-2 text-2xl font-semibold leading-8 text-fg outline-none ring-2 ring-accent/30 focus:ring-accent/60`}):(0,L.jsx)(`button`,{type:`button`,className:`mt-3 block max-w-3xl rounded-lg text-left outline-none hover:bg-surface-hover focus-visible:bg-surface-hover`,onClick:()=>{Je.current={value:m.task.title,version:m.task.version},q(null),U(m.task.title),H(!0)},children:(0,L.jsx)(`h1`,{className:`text-2xl font-semibold leading-8 text-fg`,children:m.task.title})}),Ze===`title`?(0,L.jsxs)(`div`,{className:`mt-2 flex flex-wrap items-center gap-2 text-xs text-warning`,role:`alert`,children:[(0,L.jsx)(`span`,{children:i===`zh`?`Agent 在你编辑期间更新了标题。`:`The Agent updated the title while you were editing.`}),(0,L.jsx)(`button`,{type:`button`,className:`rounded-md bg-surface-hover px-2 py-1 text-fg`,onClick:()=>{U(m.task.title),q(null),H(!1)},children:i===`zh`?`使用 Agent 版本`:`Use Agent version`}),(0,L.jsx)(`button`,{type:`button`,className:`rounded-md bg-accent-soft px-2 py-1 text-accent-fg`,onClick:()=>void Y({title:Re.trim()}).then(e=>{e&&(q(null),H(!1))}),children:i===`zh`?`保留我的修改`:`Keep my changes`})]}):null]})}),be?(0,L.jsx)(`p`,{className:`mt-3 text-sm text-danger`,children:be}):null]}),(0,L.jsxs)(`div`,{className:`mt-5 flex flex-col gap-5`,children:[(0,L.jsxs)(`main`,{className:`order-2 min-w-0 space-y-5`,children:[(0,L.jsxs)(`section`,{className:u(`rounded-xl bg-surface-panel p-4`,$(`body`)&&`task-detail-live-update`),children:[(0,L.jsx)(`h2`,{className:`font-medium text-fg`,children:p.taskDescription}),ze?(0,L.jsx)(`textarea`,{autoFocus:!0,"data-task-inline-editor":!0,rows:6,value:G,onChange:e=>Be(e.target.value),onBlur:()=>void rt(),onKeyDown:e=>{e.key===`Escape`&&(e.preventDefault(),e.stopPropagation(),Ke.current=!0,Be(m.task.body??m.task.contract?.objective??``),W(!1),queueMicrotask(()=>{Ke.current=!1}))},className:`mt-3 w-full resize-y rounded-lg bg-surface-hover px-3 py-2 text-sm leading-6 text-fg outline-none ring-2 ring-accent/20 focus:ring-accent/50`}):(0,L.jsx)(`button`,{type:`button`,className:`-mx-1 mt-2 block w-[calc(100%+0.5rem)] rounded-lg px-1 py-1 text-left outline-none hover:bg-surface-hover focus-visible:bg-surface-hover`,onClick:()=>{let e=m.task.body??m.task.contract?.objective??``;qe.current=e,Ye.current={value:m.task.body??``,version:m.task.version},q(null),Be(e),W(!0)},children:(0,L.jsx)(`span`,{className:`whitespace-pre-wrap text-sm leading-6 text-fg-muted`,children:pt&&pt!==m.task.title?pt:p.noTaskDescription})}),Ze===`description`?(0,L.jsxs)(`div`,{className:`mt-2 flex flex-wrap items-center gap-2 text-xs text-warning`,role:`alert`,children:[(0,L.jsx)(`span`,{children:i===`zh`?`Agent 在你编辑期间更新了描述。`:`The Agent updated the description while you were editing.`}),(0,L.jsx)(`button`,{type:`button`,className:`rounded-md bg-surface-hover px-2 py-1 text-fg`,onClick:()=>{Be(m.task.body??``),q(null),W(!1)},children:i===`zh`?`使用 Agent 版本`:`Use Agent version`}),(0,L.jsx)(`button`,{type:`button`,className:`rounded-md bg-accent-soft px-2 py-1 text-accent-fg`,onClick:()=>void Y({body:G.trim()||null}).then(e=>{e&&(q(null),W(!1))}),children:i===`zh`?`保留我的修改`:`Keep my changes`})]}):null]}),m.attention.length>0?(0,L.jsxs)(`section`,{className:u(`rounded-xl bg-warning/10 p-4`,$(`attention`)&&`task-detail-live-update`),children:[(0,L.jsx)(`h3`,{className:`font-medium text-fg`,children:St?p.needsAttention:p.waitingStatus}),(0,L.jsx)(`ul`,{className:`mt-3 space-y-2 text-sm text-fg-muted`,children:m.attention.map((e,t)=>(0,L.jsx)(`li`,{children:e.summary},`${e.kind}-${t}`))})]}):null,(0,L.jsxs)(`section`,{className:u(`rounded-xl bg-surface-panel p-4`,$(`contract`)&&`task-detail-live-update`),children:[(0,L.jsx)(`h2`,{className:`font-medium text-fg`,children:p.taskDefinition}),(0,L.jsxs)(`div`,{className:`mt-5`,children:[(0,L.jsxs)(`div`,{className:`flex items-center justify-between gap-3`,children:[(0,L.jsx)(`h3`,{className:`text-sm font-medium text-fg`,children:p.successDefinition}),Ct.length>0?(0,L.jsx)(`span`,{className:`text-xs text-fg-subtle`,children:p.criteriaProgress.replace(`{{verified}}`,String(wt)).replace(`{{total}}`,String(Ct.length))}):null]}),(0,L.jsx)(`div`,{className:`mt-3`,children:(0,L.jsx)(z,{items:Ct,empty:p.noDefinition,verificationByCriterion:mt})})]}),Tt.length>0?(0,L.jsxs)(`div`,{className:`mt-5 rounded-lg bg-surface-hover p-4`,children:[(0,L.jsx)(`h3`,{className:`text-sm font-medium text-fg`,children:p.expectedOutputs}),(0,L.jsx)(`div`,{className:`mt-3`,children:(0,L.jsx)(z,{items:Tt,empty:p.noDefinition})})]}):null,Et.length>0?(0,L.jsxs)(`details`,{className:`mt-4 rounded-lg bg-surface-hover p-4`,children:[(0,L.jsx)(`summary`,{className:`cursor-pointer text-sm font-medium text-fg`,children:p.constraints}),(0,L.jsx)(`div`,{className:`mt-3`,children:(0,L.jsx)(z,{items:Et,empty:p.noDefinition})})]}):null,Dt.length>0?(0,L.jsxs)(`details`,{className:`mt-4 rounded-lg bg-surface-hover p-4`,children:[(0,L.jsx)(`summary`,{className:`cursor-pointer text-sm font-medium text-fg`,children:p.approvalRequired}),(0,L.jsx)(`div`,{className:`mt-3`,children:(0,L.jsx)(z,{items:Dt,empty:p.noDefinition})})]}):null,Ot.length>0?(0,L.jsxs)(`details`,{className:`mt-4 rounded-lg bg-surface-hover p-4`,children:[(0,L.jsx)(`summary`,{className:`cursor-pointer text-sm font-medium text-fg`,children:p.contextAssumptions}),(0,L.jsx)(`div`,{className:`mt-3`,children:(0,L.jsx)(z,{items:Ot,empty:p.noDefinition})})]}):null,kt.length>0?(0,L.jsxs)(`details`,{className:`mt-4 rounded-lg bg-surface-hover p-4`,children:[(0,L.jsx)(`summary`,{className:`cursor-pointer text-sm font-medium text-fg`,children:p.contextRisks}),(0,L.jsx)(`div`,{className:`mt-3`,children:(0,L.jsx)(z,{items:kt,empty:p.noDefinition})})]}):null]}),Z?(0,L.jsxs)(`section`,{className:u(`rounded-xl bg-surface-panel p-4`,$(`runs`,`receipts`)&&`task-detail-live-update`),children:[(0,L.jsxs)(`div`,{className:`flex flex-wrap items-start justify-between gap-3`,children:[(0,L.jsxs)(`div`,{children:[(0,L.jsx)(`h2`,{className:`font-medium text-fg`,children:p.latestResult}),(0,L.jsx)(`p`,{className:`mt-2 text-sm leading-6 text-fg`,children:Z.summary})]}),(0,L.jsxs)(`span`,{className:`rounded-full bg-surface-hover px-2.5 py-1 text-xs text-fg-muted`,children:[p.receiptStatuses[Z.status],` · `,p.verificationStatuses[Z.verification.status]]})]}),Z.remainingWork.length>0?(0,L.jsxs)(`div`,{className:`mt-4`,children:[(0,L.jsx)(`h3`,{className:`text-xs font-medium text-fg-muted`,children:p.remainingWork}),(0,L.jsx)(`div`,{className:`mt-2`,children:(0,L.jsx)(z,{items:Z.remainingWork,empty:p.noRemainingWork})})]}):null,Z.nextAction?(0,L.jsxs)(`div`,{className:`mt-4 rounded-lg bg-surface-hover p-3`,children:[(0,L.jsx)(`p`,{className:`text-xs font-medium text-fg-muted`,children:p.nextAction}),(0,L.jsx)(`p`,{className:`mt-1 text-sm text-fg`,children:Z.nextAction})]}):null,(0,L.jsxs)(`div`,{className:`mt-4 flex flex-wrap items-center gap-2`,children:[(0,L.jsx)(d,{className:`border-0 bg-surface-hover px-2 py-1 text-xs shadow-none`,variant:`secondary`,onClick:()=>void _(Z.runId,`helpful`),children:p.doneWell}),(0,L.jsx)(d,{className:`px-2 py-1 text-xs`,variant:`ghost`,onClick:()=>void _(Z.runId,`not_helpful`),children:p.needsFix}),Z.evidence.filter(e=>e.uri).map(e=>(0,L.jsxs)(`a`,{className:`ml-auto inline-flex items-center gap-1 text-xs text-accent hover:underline`,href:e.uri,children:[(0,L.jsx)(l,{className:`size-3`}),e.title]},`${e.title}-${e.uri}`))]}),m.receipts.length>1?(0,L.jsxs)(`details`,{className:`mt-4 rounded-lg bg-surface-hover p-4`,children:[(0,L.jsx)(`summary`,{className:`cursor-pointer text-sm font-medium text-fg-muted`,children:p.executionHistory.replace(`{{count}}`,String(m.receipts.length-1))}),(0,L.jsx)(`div`,{className:`mt-3 space-y-3`,children:m.receipts.slice(1).map(e=>(0,L.jsx)(`article`,{className:`rounded-lg bg-surface-active p-3`,children:(0,L.jsxs)(`div`,{className:`flex items-start justify-between gap-3`,children:[(0,L.jsx)(`p`,{className:`text-sm text-fg`,children:e.summary}),(0,L.jsx)(`span`,{className:`shrink-0 text-xs text-fg-subtle`,children:p.receiptStatuses[e.status]})]})},e.runId))})]}):null]}):null,m.context.length>0?(0,L.jsxs)(`section`,{className:u(`rounded-xl bg-surface-panel p-4`,$(`context`)&&`task-detail-live-update`),children:[(0,L.jsx)(`h2`,{className:`font-medium text-fg`,children:p.contextUsed}),(0,L.jsx)(`ul`,{className:`mt-4 grid gap-2 sm:grid-cols-2`,children:m.context.map(e=>(0,L.jsxs)(`li`,{className:`min-w-0 rounded-lg bg-surface-hover p-2.5`,children:[(0,L.jsxs)(`span`,{className:`text-[11px] text-fg-subtle`,children:[p.contextRoleLabels[e.role],` · `,p.contextKindLabels[e.targetKind]]}),e.targetKind===`url`&&/^https?:\/\//.test(e.targetId)?(0,L.jsx)(`a`,{className:`mt-1 block break-all text-sm text-accent hover:underline`,href:e.targetId,target:`_blank`,rel:`noreferrer`,children:e.title??e.targetId}):(0,L.jsx)(`p`,{className:`mt-1 break-words text-sm text-fg`,children:e.title??e.targetId})]},e.id))})]}):null]}),(0,L.jsxs)(`aside`,{className:`order-1 min-w-0 space-y-4`,children:[(0,L.jsxs)(`section`,{className:u(`rounded-xl bg-surface-subtle p-4`,$(`phase`,`resolution`,`priority`,`dueAt`,`delegateAgentId`)&&`task-detail-live-update`),children:[(0,L.jsx)(`h2`,{className:`font-medium text-fg`,children:p.taskProperties}),(0,L.jsxs)(`div`,{className:`mt-4 grid gap-4 sm:grid-cols-2`,children:[(0,L.jsxs)(`label`,{className:`grid gap-1.5 text-xs text-fg-muted`,children:[(0,L.jsx)(`span`,{children:p.taskPhase}),(0,L.jsx)(s,{triggerClassName:`border-0 bg-surface-hover shadow-none focus-visible:ring-2 focus-visible:ring-accent/30`,contentClassName:`border-0`,value:m.task.phase,disabled:P,onChange:e=>void it(e.target.value),children:[`backlog`,`ready`,`active`,`review`,`closed`].map(e=>(0,L.jsx)(c,{value:e,disabled:Mt(e),children:Te(e,i)},e))})]}),(0,L.jsxs)(`label`,{className:`grid gap-1.5 text-xs text-fg-muted`,children:[(0,L.jsx)(`span`,{children:p.priority}),(0,L.jsx)(s,{triggerClassName:`border-0 bg-surface-hover shadow-none focus-visible:ring-2 focus-visible:ring-accent/30`,contentClassName:`border-0`,value:m.task.priority,disabled:P,onChange:e=>void Y({priority:e.target.value}),children:[`low`,`normal`,`high`,`critical`].map(e=>(0,L.jsx)(c,{value:e,children:p.priorityLabels[e]},e))})]}),(0,L.jsxs)(`label`,{className:`grid gap-1.5 text-xs text-fg-muted`,children:[(0,L.jsx)(`span`,{children:p.dueDate}),(0,L.jsx)(xe,{disabled:P,value:De(m.task.dueAt),onChange:e=>void Y({dueAt:Oe(e)}),ariaLabel:p.dueDate})]}),(0,L.jsxs)(`label`,{className:`grid gap-1.5 text-xs text-fg-muted`,children:[(0,L.jsx)(`span`,{children:p.executorLabel}),(0,L.jsxs)(s,{triggerClassName:`border-0 bg-surface-hover shadow-none focus-visible:ring-2 focus-visible:ring-accent/30`,contentClassName:`border-0`,value:m.conversation.currentExecutorAgentId??``,disabled:P,onChange:e=>void ct(e.target.value),children:[(0,L.jsx)(c,{value:``,disabled:!0,children:p.unassigned}),Fe.map(e=>(0,L.jsx)(c,{value:e.id,children:e.name||e.id},e.id))]})]}),V?(0,L.jsxs)(`div`,{className:`grid gap-1 text-xs text-fg-muted`,children:[(0,L.jsx)(`span`,{children:p.projectLabel}),(0,L.jsxs)(`span`,{className:`flex items-center gap-1.5 rounded-lg bg-surface-hover px-3 py-2 text-sm text-fg`,children:[(0,L.jsx)(ve,{className:`size-3.5`}),V]})]}):null]}),(0,L.jsxs)(`div`,{className:`mt-4 rounded-lg bg-surface-hover p-3 text-xs leading-5 text-fg-subtle`,children:[(0,L.jsx)(`p`,{children:dt}),(0,L.jsx)(`p`,{children:ft}),(0,L.jsx)(`p`,{className:`mt-2`,children:p.updatedAt.replace(`{{date}}`,O(m.task.updatedAt,i))})]})]}),(0,L.jsxs)(`section`,{className:u(`rounded-xl bg-surface-panel p-4`,$(`dependencies`)&&`task-detail-live-update`),children:[(0,L.jsx)(`h2`,{className:`font-medium text-fg`,children:p.taskRelations}),(0,L.jsxs)(`div`,{className:`mt-4 space-y-4`,children:[(0,L.jsxs)(`div`,{children:[(0,L.jsx)(`p`,{className:`mb-2 text-xs text-fg-muted`,children:p.dependencies}),(0,L.jsx)(Se,{borderless:!0,candidates:Ne,selectedIds:m.dependencies.map(e=>e.id),disabled:P,onChange:e=>void st(e),labels:{link:p.linkDependencies,linked:p.linkedDependencies,searchPlaceholder:p.dependencySearchPlaceholder,noMatches:p.noDependencyMatches,noCandidates:p.noDependencyCandidates,remove:p.removeDependency}})]}),(0,L.jsxs)(`div`,{children:[(0,L.jsx)(`p`,{className:`mb-2 text-xs text-fg-muted`,children:p.dependents}),m.dependents.length>0?(0,L.jsx)(`div`,{className:`space-y-1.5`,children:m.dependents.map(e=>(0,L.jsx)(o,{to:At(e.id),className:`block rounded-lg bg-surface-hover p-2.5 text-sm text-accent hover:underline`,children:e.title},e.id))}):(0,L.jsx)(`p`,{className:`text-sm text-fg-subtle`,children:p.noDependents})]})]})]})]})]})]}),(0,L.jsx)(`div`,{role:`separator`,"aria-orientation":`vertical`,"aria-label":i===`zh`?`调整任务信息和 Agent 对话的宽度`:`Resize task details and Agent chat`,"aria-valuemin":30,"aria-valuemax":60,"aria-valuenow":Math.round(K),tabIndex:0,onPointerDown:ot,onKeyDown:at,onDoubleClick:()=>X(R),className:`group hidden w-2 shrink-0 cursor-col-resize touch-none items-stretch justify-center bg-surface-panel outline-none transition-colors hover:bg-surface-hover focus-visible:bg-surface-hover lg:flex ${He?`bg-surface-hover`:``}`,children:(0,L.jsx)(`div`,{className:`my-3 w-px rounded-full bg-edge-strong/70 transition-colors group-hover:bg-accent group-focus-visible:bg-accent`})}),(0,L.jsxs)(`aside`,{className:`flex min-h-[34rem] min-w-0 flex-col bg-surface-panel lg:min-h-0 lg:w-[var(--task-chat-panel-width)] lg:shrink-0`,children:[(0,L.jsxs)(`div`,{className:`flex shrink-0 flex-wrap items-center justify-between gap-3 bg-surface-subtle px-4 py-3.5`,children:[(0,L.jsx)(`div`,{className:`min-w-0`,children:(0,L.jsxs)(`div`,{className:`flex items-center gap-2.5`,children:[Q?(0,L.jsx)(ce,{agentId:Q,avatar:xt?.avatar,size:28,className:`shrink-0`}):null,(0,L.jsxs)(`div`,{className:`min-w-0`,children:[(0,L.jsx)(`p`,{className:`truncate text-sm font-medium text-fg`,children:i===`zh`?`Agent 执行与对话`:`Agent execution and chat`}),(0,L.jsxs)(`p`,{className:`mt-0.5 truncate text-xs text-fg-muted`,children:[xt?.name??Q??p.unassigned,` · `,dt]})]})]})}),(0,L.jsxs)(`div`,{className:`flex flex-wrap items-center justify-end gap-2`,children:[Nt,bt?(0,L.jsx)(d,{asChild:!0,variant:`ghost`,className:`h-8 shrink-0 px-2 text-xs`,children:(0,L.jsxs)(o,{to:g(e),children:[(0,L.jsx)(l,{className:`size-3.5`}),i===`zh`?`全屏`:`Full screen`]})}):null]})]}),bt?(0,L.jsx)(`div`,{className:`min-h-0 flex-1`,children:(0,L.jsx)(me,{embedded:!0,sessionKey:bt,taskId:e})}):k?(0,L.jsx)(`div`,{className:`flex min-h-0 flex-1 items-center justify-center p-8 text-center`,children:(0,L.jsxs)(`div`,{className:`max-w-xs`,children:[(0,L.jsx)(fe,{className:`mx-auto size-8 animate-pulse text-fg-subtle`}),(0,L.jsx)(`p`,{className:`mt-3 text-sm font-medium text-fg`,children:i===`zh`?`正在创建任务会话`:`Creating task conversation`})]})}):A?(0,L.jsx)(`div`,{className:`flex min-h-0 flex-1 items-center justify-center p-8 text-center`,children:(0,L.jsxs)(`div`,{className:`max-w-xs`,children:[(0,L.jsx)(fe,{className:`mx-auto size-8 text-danger`}),(0,L.jsx)(`p`,{className:`mt-3 text-sm font-medium text-fg`,children:i===`zh`?`任务会话创建失败`:`Could not create task conversation`}),(0,L.jsx)(`p`,{className:`mt-2 text-xs leading-5 text-fg-muted`,children:A instanceof Error?A.message:String(A)})]})}):(0,L.jsx)(`div`,{className:`flex min-h-0 flex-1 items-center justify-center p-8 text-center`,children:(0,L.jsxs)(`div`,{className:`max-w-xs`,children:[(0,L.jsx)(fe,{className:`mx-auto size-8 text-fg-subtle`}),(0,L.jsx)(`p`,{className:`mt-3 text-sm font-medium text-fg`,children:i===`zh`?`等待任务会话`:`Waiting for a task conversation`}),(0,L.jsx)(`p`,{className:`mt-2 text-xs leading-5 text-fg-muted`,children:i===`zh`?`安排或开始任务后,Agent 的执行过程和持续对话会显示在这里。`:`Schedule or start the task to see the agent run and continue the conversation here.`})]})})]})]})}function B(){let e=(0,I.c)(2),{taskId:t}=i(),n=t===void 0?``:t,r;return e[0]===n?r=e[1]:(r=(0,L.jsx)(Ne,{taskId:n,presentation:`page`}),e[0]=n,e[1]=r),r}function V(e){let t=(0,I.c)(43),{taskId:n,backgroundPath:r,onClose:i}=e,a=ee(ze),o=A(U),s=A(Re),c=A(H),l=N(Le),u=N(Ie),d=o?s:0,f;t[0]!==i||t[1]!==u?(f=e=>{e||(u(null),i())},t[0]=i,t[1]=u,t[2]=f):f=t[2];let ae=a===`zh`?`关闭任务详情`:`Close task details`,h;t[3]!==i||t[4]!==u?(h=()=>{u(null),i()},t[3]=i,t[4]=u,t[5]=h):h=t[5];let g;t[6]!==ae||t[7]!==h?(g=(0,L.jsx)(`button`,{type:`button`,tabIndex:-1,"data-task-modal-backdrop":!0,className:`fixed inset-0 z-[80] bg-black/45 backdrop-blur-[1px]`,"aria-label":ae,onClick:h}),t[6]=ae,t[7]=h,t[8]=g):g=t[8];let _=o?`true`:`false`,oe=`${d/2}px`,v=`${d}px`,y;t[9]!==oe||t[10]!==v?(y={"--task-detail-workspace-offset":oe,"--task-detail-workspace-width":v},t[9]=oe,t[10]=v,t[11]=y):y=t[11];let b=y,se=a===`zh`?`任务详情`:`Task details`,x;t[12]===se?x=t[13]:(x=(0,L.jsx)(m,{className:`font-medium text-fg`,children:se}),t[12]=se,t[13]=x);let ce=a===`zh`?`查看并操作任务详情`:`View and manage task details`,S;t[14]===ce?S=t[15]:(S=(0,L.jsx)(te,{className:`sr-only`,children:ce}),t[14]=ce,t[15]=S);let le=a===`zh`?`关闭任务详情`:`Close task details`,C;t[16]===Symbol.for(`react.memo_cache_sentinel`)?(C=(0,L.jsx)(D,{className:`size-4`,"aria-hidden":!0}),t[16]=C):C=t[16];let w;t[17]===le?w=t[18]:(w=(0,L.jsx)(p,{className:`flex size-8 items-center justify-center rounded-lg text-fg-muted hover:bg-surface-hover hover:text-fg`,"aria-label":le,children:C}),t[17]=le,t[18]=w);let T;t[19]!==x||t[20]!==S||t[21]!==w?(T=(0,L.jsxs)(`header`,{className:`flex shrink-0 items-center justify-between gap-3 bg-surface-panel px-5 py-3.5`,children:[x,S,w]}),t[19]=x,t[20]=S,t[21]=w,t[22]=T):T=t[22];let E;t[23]!==r||t[24]!==n?(E=(0,L.jsx)(`div`,{className:`min-h-0 flex-1 overflow-hidden`,children:(0,L.jsx)(Ne,{taskId:n,presentation:`modal`,backgroundPath:r})}),t[23]=r,t[24]=n,t[25]=E):E=t[25];let O;t[26]!==T||t[27]!==E||t[28]!==_||t[29]!==b?(O=(0,L.jsxs)(re,{className:`task-detail-modal-content fixed top-1/2 z-[90] flex h-[min(54rem,calc(100dvh-2rem))] -translate-x-1/2 -translate-y-1/2 flex-col overflow-hidden rounded-2xl bg-surface-base shadow-float focus:outline-none`,"data-workspace-panel-open":_,style:b,onEscapeKeyDown:Fe,onInteractOutside:Pe,children:[T,E]}),t[26]=T,t[27]=E,t[28]=_,t[29]=b,t[30]=O):O=t[30];let k;t[31]!==l||t[32]!==o||t[33]!==s||t[34]!==c?(k=l?(0,L.jsx)(`div`,{className:`fixed inset-y-0 left-0 z-[100] flex min-h-0 min-w-0 overflow-hidden bg-surface-panel transition-[right] duration-200 ease-out motion-reduce:transition-none`,style:{right:o?s:0},children:(0,L.jsx)(be,{allowOutsideChat:!0,sessionKey:c??void 0})}):null,t[31]=l,t[32]=o,t[33]=s,t[34]=c,t[35]=k):k=t[35];let j;t[36]!==O||t[37]!==k||t[38]!==g?(j=(0,L.jsxs)(ne,{children:[g,O,k]}),t[36]=O,t[37]=k,t[38]=g,t[39]=j):j=t[39];let M;return t[40]!==f||t[41]!==j?(M=(0,L.jsx)(ie,{modal:!1,open:!0,onOpenChange:f,children:j}),t[40]=f,t[41]=j,t[42]=M):M=t[42],M}function Pe(e){let t=e.detail.originalEvent.target;t instanceof Element&&t.closest(`#app-workspace-panel, [data-task-modal-backdrop]`)&&e.preventDefault()}function Fe(e){let t=e.target;t instanceof HTMLElement&&t.closest(`[data-task-inline-editor]`)&&e.preventDefault()}function Ie(e){return e.setPath}function Le(e){return e.path}function H(e){return e.sessionKeyOverride}function Re(e){return e.widthPx}function U(e){return e.open}function ze(e){return e.language}export{V as TaskDetailModal,B as TaskDetailPage};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{p as e}from"./locale-store-
|
|
1
|
+
import{p as e}from"./locale-store-CnamlR07.js";import{t}from"./middleware-Pd0e8Igk.js";var n=`default`,r={light:{default:`#ffffff`,emerald:`#f0fdf4`,mono:`#ffffff`,clay:`#fffaf0`},dark:{default:`#0a0a0a`,emerald:`#000000`,mono:`#101010`,clay:`#0a1a1a`}};function i(e,t){let n=document.head;if(!n)return;let i=n.querySelector(`meta[name="theme-color"][data-xopc-theme-color="true"]`);i||(i=document.createElement(`meta`),i.setAttribute(`name`,`theme-color`),i.setAttribute(`data-xopc-theme-color`,`true`),n.appendChild(i)),i.setAttribute(`content`,r[e][t])}function a(){return globalThis.matchMedia?.(`(prefers-color-scheme: dark)`).matches??!1}function o(e){return e===`system`?a()?`dark`:`light`:e}function s(){return globalThis.matchMedia?.(`(prefers-reduced-motion: reduce)`).matches??!1}function c(e){return e===`cal`?`mono`:e==="default"||e===`emerald`||e===`mono`||e===`clay`?e:n}function l(e,t,n){let r=document.documentElement,a=()=>{r.classList.toggle(`dark`,e===`dark`),r.dataset.theme=e,r.dataset.colorScheme=t,i(e,t)},o=document;n&&!s()&&typeof o.startViewTransition==`function`?o.startViewTransition(a):a()}function u(){try{let e=localStorage.getItem(`xopc-web-theme`),t=`system`,r=n;if(e){let n=JSON.parse(e);n.state?.preference&&(t=n.state.preference),n.state&&`colorScheme`in n.state&&(r=c(n.state.colorScheme))}l(o(t),r,!1)}catch{l(o(`system`),`default`,!1)}}var d=e(t((e,t)=>({preference:`system`,colorScheme:n,resolved:o(`system`),setPreference:n=>{let r=o(n),{resolved:i,colorScheme:a}=t();l(r,a,r!==i),e({preference:n,resolved:r})},setColorScheme:n=>{let{resolved:r}=t();l(r,n,!0),e({colorScheme:n})}}),{name:`xopc-web-theme`,merge:(e,t)=>{let n=e??{};return{...t,...n,colorScheme:c(n.colorScheme)}}}));function f(){let{preference:e,colorScheme:t}=d.getState(),n=o(e);l(n,t,!1),d.setState({resolved:n})}function p(){let e=globalThis.matchMedia?.(`(prefers-color-scheme: dark)`);if(!e)return()=>{};let t=()=>{let{preference:e,colorScheme:t}=d.getState();if(e!==`system`)return;let n=o(`system`),r=d.getState().resolved;l(n,t,n!==r),d.setState({resolved:n})};return e.addEventListener(`change`,t),()=>e.removeEventListener(`change`,t)}export{d as i,p as n,f as r,u as t};
|
package/dist/gateway/static/root/assets/{use-autosave-7XfKULPI.js → use-autosave-D6UkH_Ga.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"./check-DUBLcKHA.js";import{t as a}from"./loader-circle-CifKLtgG.js";import{t as o}from"./cn-JdwAhgNB.js";import{n as s}from"./locale-store-
|
|
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"./check-DUBLcKHA.js";import{t as a}from"./loader-circle-CifKLtgG.js";import{t as o}from"./cn-JdwAhgNB.js";import{n as s}from"./locale-store-CnamlR07.js";import{Dl as c}from"./index-DRrjYYzZ.js";var l=n(),u=r();function d(e){let t=(0,l.c)(21),{status:n,error:r,className:d}=e,p=s(f)===`zh`,m=n===`saving`?p?`正在保存…`:`Saving…`:n===`saved`?p?`已自动保存`:`Saved automatically`:n===`error`?r||(p?`自动保存失败`:`Autosave failed`):n===`dirty`?p?`编辑中,将自动保存`:`Editing — autosave pending`:p?`自动保存`:`Autosave`,h=n===`error`?`text-danger`:n===`saved`?`text-success`:`text-fg-subtle`,g;t[0]!==d||t[1]!==h?(g=o(`inline-flex min-w-0 items-center gap-1.5 text-xs`,h,d),t[0]=d,t[1]=h,t[2]=g):g=t[2];let _;t[3]===n?_=t[4]:(_=n===`saving`?(0,u.jsx)(a,{className:`size-3.5 shrink-0 animate-spin`,"aria-hidden":!0}):null,t[3]=n,t[4]=_);let v;t[5]===n?v=t[6]:(v=n===`saved`?(0,u.jsx)(i,{className:`size-3.5 shrink-0`,"aria-hidden":!0}):null,t[5]=n,t[6]=v);let y;t[7]===n?y=t[8]:(y=n===`error`?(0,u.jsx)(c,{className:`size-3.5 shrink-0`,"aria-hidden":!0}):null,t[7]=n,t[8]=y);let b;t[9]===n?b=t[10]:(b=n===`dirty`?(0,u.jsx)(`span`,{className:`size-1.5 shrink-0 rounded-full bg-current`,"aria-hidden":!0}):null,t[9]=n,t[10]=b);let x;t[11]===m?x=t[12]:(x=(0,u.jsx)(`span`,{className:`truncate`,children:m}),t[11]=m,t[12]=x);let S;return t[13]!==m||t[14]!==g||t[15]!==_||t[16]!==v||t[17]!==y||t[18]!==b||t[19]!==x?(S=(0,u.jsxs)(`span`,{className:g,role:`status`,"aria-live":`polite`,title:m,children:[_,v,y,b,x]}),t[13]=m,t[14]=g,t[15]=_,t[16]=v,t[17]=y,t[18]=b,t[19]=x,t[20]=S):S=t[20],S}function f(e){return e.language}var p=e(t(),1);function m({value:e,dirty:t,onSave:n,enabled:r=!0,delayMs:i=700,validate:a,serialize:o=JSON.stringify}){let[s,c]=(0,p.useState)(`idle`),[l,u]=(0,p.useState)(null),d=(0,p.useRef)(e),f=(0,p.useRef)(n),m=(0,p.useRef)(a),h=(0,p.useRef)(o),g=(0,p.useRef)(null),_=(0,p.useRef)(!1),v=(0,p.useRef)(null),y=(0,p.useRef)(null),b=(0,p.useRef)(null),x=(0,p.useRef)(!0);d.current=e,f.current=n,m.current=a,h.current=o;let S=(0,p.useCallback)(()=>{g.current!==null&&(window.clearTimeout(g.current),g.current=null)},[]),C=(0,p.useCallback)(async e=>{S();let t=h.current(e);b.current=t;let n=m.current?.(e)??null;if(n){u(n),c(`error`);return}if(_.current){v.current=e;return}_.current=!0,u(null),c(`saving`);try{await f.current(e),y.current=t,x.current&&c(`saved`)}catch(e){x.current&&(u(e instanceof Error?e.message:String(e)),c(`error`))}finally{_.current=!1;let e=v.current;v.current=null,e&&h.current(e)!==y.current&&C(e)}},[S]),w=(0,p.useCallback)(()=>{let e=d.current;!r||!t||e===null||C(e)},[t,r,C]),T=(0,p.useCallback)(e=>{let t=e??d.current;!r||t===null||C(t)},[r,C]);return(0,p.useEffect)(()=>{if(!r||!t||e===null){S(),!t&&s===`dirty`&&c(`idle`);return}let n=o(e);if(n!==y.current&&!(s===`error`&&n===b.current))return c(e=>e===`saving`?e:`dirty`),S(),g.current=window.setTimeout(()=>void C(e),i),S},[S,i,t,r,C,o,s,e]),(0,p.useEffect)(()=>(x.current=!0,()=>{x.current=!1,S()}),[S]),{status:s,error:l,flush:w,saveNow:T,retry:w,onBlurCapture:w}}export{d as n,m as t};
|
|
@@ -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{f as i,t as a}from"./chunk-KS7C4IRE-BMhrPKJC.js";import{n as o,r as s}from"./popover-select-BzdnTy3h.js";import{t as c}from"./external-link-DjqjBmc3.js";import{t as l}from"./loader-circle-CifKLtgG.js";import{t as u}from"./button-CSEbl4zT.js";import{n as d}from"./locale-store-xULEcFVs.js";import{a as f,i as p,n as m,o as h,r as g,s as _,t as v}from"./dist-BPoKqzeH.js";import{i as y}from"./vendor-swr-BIWyz7Rc.js";import{Aa as b,Al as x,Ko as S,Rc as C,Tl as w,Va as T,Vs as E,_o as D,ao as O,co as k,do as A,fo as j,gl as M,go as N,ho as P,io as F,jl as I,lo as L,mo as R,no as z,oo as B,os as V,po as H,qs as U,rl as W,ro as G,so as K,tc as q,to as J,uo as Y,ws as X}from"./index-CGbKTCST.js";import{n as ee,t as te}from"./use-autosave-7XfKULPI.js";import{t as ne}from"./page-tabs-BaEQMYm_.js";import{F as re,a as ie,i as ae}from"./connectors-api-5FEBYguL.js";var Z=n(),Q=e(t(),1),$=r(),oe=new Set([`profile`,`understanding`,`collaboration`,`sources`,`dreaming`,`privacy`]),se=`w-full rounded-xl border border-edge bg-surface-panel px-3 py-2 text-sm text-fg outline-none placeholder:text-fg-subtle focus:border-accent/60 focus:ring-2 focus:ring-accent/20`,ce={en:{title:`About You`,subtitle:`What xopc knows, why it knows it, and how it should work with you.`,profile:`Profile`,understanding:`Understanding`,collaboration:`Working agreement`,sources:`Sources`,dreaming:`Background review`,privacy:`Privacy`,profileHint:`Facts you provide directly. These are available across conversations.`,done:`Done`,required:`This field cannot be empty.`,callName:`What should xopc call you?`,callNamePlaceholder:`For example: Alex, Joyce, or Dr. Chen`,role:`Your role`,rolePlaceholder:`For example: product designer, founder, or engineer`,primaryGoal:`What are you mainly trying to achieve?`,primaryGoalPlaceholder:`The outcome you want xopc to optimize for`,pronouns:`Pronouns (optional)`,pronounsPlaceholder:`For example: she/her, he/him, they/them`,timezone:`Timezone`,locale:`Language / locale`,detect:`Use this device`,understoodHint:`Reviewable beliefs learned from your conversations and work. Inferences stay pending until confirmed.`,addUnderstanding:`Add understanding`,statement:`What should xopc understand?`,kind:`Type`,add:`Add`,cancel:`Cancel`,active:`Active`,review:`Needs review`,confirm:`Confirm`,reject:`Wrong`,edit:`Edit`,delete:`Delete`,confirmDelete:`Delete now`,rulesHint:`Explicit instructions for how xopc should collaborate with you. Rules outrank inferred understanding.`,addRule:`Add rule`,ruleStatement:`How should xopc work with you?`,category:`Category`,disable:`Disable`,enable:`Enable`,emptyUnderstanding:`Nothing here yet. Tell xopc something explicitly, or confirm a suggestion after it learns one.`,qualityTitle:`Learning quality`,qualityActive:`Confirmed`,qualityPending:`Pending review`,qualityAcceptance:`30-day acceptance`,qualityRecall:`Helpful recall`,qualityNoData:`Not enough feedback yet`,emptyRules:`No working agreements yet.`,sourceExplicit:`You said this directly`,sourceInferred:`Inferred — may be wrong`,sourceObserved:`Observed across prior work`,sourcesHint:`Review every granted source, its access mode, retention, and last collection. Revoking stops future learning.`,manageSources:`Connect another source`,authorizedSources:`Authorized sources`,connectorsTitle:`Connectors`,openConnector:`Open connector`,noSources:`No sources are authorized.`,noConnectors:`No connectors are installed.`,connected:`Connected`,unavailable:`Needs attention`,revoke:`Revoke source`,revokeHint:`Revoke this source and remove its derived understanding`,confirmRevoke:`Confirm revoke`,revoking:`Revoking…`,revokeDone:`Source revoked and derived understanding removed.`,refresh:`Update`,refreshing:`Updating…`,refreshStarted:`Update started.`,actionFailed:`Action failed`,once:`One-time`,continuous:`Continuous`,localOnly:`Local only`,derivedOnly:`Derived understanding only`,focuses:`Current focuses`,focusHint:`Candidate focuses never activate until you confirm them.`,activate:`Activate`,pause:`Pause`,complete:`Complete`,noFocuses:`No focus candidates yet.`,focusCandidate:`Suggested`,focusActive:`Active`,focusPaused:`Paused`,focusCompleted:`Completed`,confidence:`Confidence`,confidenceHigh:`High`,confidenceMedium:`Medium`,confidenceLow:`Low`,dreamingHint:`A deterministic daily review checks expiry, contradictory evidence, and corroborated candidates. It never auto-activates an inference.`,mode:`Background review`,on:`On — propose for review`,off:`Off`,reviewTime:`Daily review time`,evidenceThreshold:`Supporting evidence required`,scanLimit:`Maximum items per run`,lastRun:`Last review`,neverRun:`Not run yet`,runCompleted:`Completed`,runFailed:`Failed`,runRunning:`Running`,runItems:`items`,privacyHint:`Choose how generic memory providers handle sensitive content. Structured user understanding applies stricter rules of its own.`,sensitivePolicy:`Sensitive memory writes`,policyDeny:`Do not store`,policyConfirm:`Ask before storing`,policyAllow:`Store when relevant`,privacyWarning:`Secret and regulated content is never stored as structured user understanding, regardless of this setting.`,error:`Could not load your context.`,retry:`Try again`},zh:{title:`关于你`,subtitle:`清楚查看 xopc 知道什么、为什么知道,以及应该如何与你协作。`,profile:`个人资料`,understanding:`对你的理解`,collaboration:`协作约定`,sources:`数据来源`,dreaming:`后台复核`,privacy:`隐私`,profileHint:`由你直接提供的事实,会在不同对话中使用。`,done:`完成`,required:`此项不能为空。`,callName:`希望 xopc 如何称呼你?`,callNamePlaceholder:`例如:Mic、Joyce、张老师`,role:`你的角色`,rolePlaceholder:`例如:产品设计师、创业者、工程师`,primaryGoal:`你目前最想达成什么?`,primaryGoalPlaceholder:`希望 xopc 优先帮助你实现的结果`,pronouns:`代词(可选)`,pronounsPlaceholder:`例如:she/her、he/him、they/them`,timezone:`时区`,locale:`语言 / 地区`,detect:`使用本机时区`,understoodHint:`从对话和工作中形成、可复核的理解。推断内容在你确认前保持待审核。`,addUnderstanding:`添加理解`,statement:`希望 xopc 了解什么?`,kind:`类型`,add:`添加`,cancel:`取消`,active:`使用中`,review:`待审核`,confirm:`确认`,reject:`不正确`,edit:`编辑`,delete:`删除`,confirmDelete:`确认删除`,rulesHint:`你明确设定的协作方式。协作约定的优先级高于推断出的理解。`,addRule:`添加约定`,ruleStatement:`希望 xopc 如何与你协作?`,category:`类别`,disable:`停用`,enable:`启用`,emptyUnderstanding:`还没有内容。你可以直接告诉 xopc,或在它学到建议后进行确认。`,emptyRules:`还没有协作约定。`,qualityTitle:`学习质量`,qualityActive:`已确认`,qualityPending:`待审核`,qualityAcceptance:`30 天采纳率`,qualityRecall:`有效召回`,qualityNoData:`反馈数据还不足`,sourceExplicit:`由你直接告知`,sourceInferred:`推断内容,可能有误`,sourceObserved:`从过往工作中观察到`,sourcesHint:`查看每项授权的访问方式、保留策略和最近采集时间;撤销后将停止后续学习。`,manageSources:`连接其他来源`,authorizedSources:`已授权数据来源`,connectorsTitle:`连接器`,openConnector:`打开连接器`,noSources:`尚未授权任何来源。`,noConnectors:`尚未安装连接器。`,connected:`已连接`,unavailable:`需要处理`,revoke:`撤销来源`,revokeHint:`撤销此来源并删除由它产生的理解`,confirmRevoke:`确认撤销`,revoking:`正在撤销…`,revokeDone:`已撤销来源并删除派生理解。`,refresh:`更新`,refreshing:`正在更新…`,refreshStarted:`更新任务已开始。`,actionFailed:`操作失败`,once:`仅一次`,continuous:`持续更新`,localOnly:`仅本地处理`,derivedOnly:`仅保留派生理解`,focuses:`当前关注`,focusHint:`候选关注不会自动生效,只有你确认后才会启用。`,activate:`启用`,pause:`暂停`,complete:`完成`,noFocuses:`还没有候选关注。`,focusCandidate:`待确认`,focusActive:`进行中`,focusPaused:`已暂停`,focusCompleted:`已完成`,confidence:`置信度`,confidenceHigh:`高`,confidenceMedium:`中`,confidenceLow:`低`,dreamingHint:`每天进行一次确定性复核,检查过期、矛盾证据和得到佐证的候选理解;推断内容不会自动生效。`,mode:`后台复核`,on:`开启并生成待审核项`,off:`关闭`,reviewTime:`每日复核时间`,evidenceThreshold:`所需支持证据数`,scanLimit:`每次最多检查`,lastRun:`最近一次复核`,neverRun:`尚未运行`,runCompleted:`已完成`,runFailed:`失败`,runRunning:`运行中`,runItems:`项`,privacyHint:`选择通用记忆服务如何处理敏感内容;结构化用户理解有独立且更严格的规则。`,sensitivePolicy:`敏感记忆写入`,policyDeny:`不保存`,policyConfirm:`保存前询问`,policyAllow:`相关时允许保存`,privacyWarning:`无论这里如何设置,秘密和受监管内容都不会保存为结构化用户理解。`,error:`无法加载用户上下文。`,retry:`重试`}},le={preference:{en:`Preference`,zh:`偏好`},boundary:{en:`Boundary`,zh:`边界`},relationship:{en:`Relationship`,zh:`关系`},routine:{en:`Routine`,zh:`习惯`},current_state:{en:`Current state`,zh:`当前状态`},long_term_goal:{en:`Long-term goal`,zh:`长期目标`},project_context:{en:`Project context`,zh:`项目背景`},task_lesson:{en:`Task lesson`,zh:`任务经验`},derived_insight:{en:`Insight`,zh:`洞察`}},ue={communication:{en:`Communication`,zh:`沟通`},execution:{en:`Execution`,zh:`执行`},boundary:{en:`Boundary`,zh:`边界`},routine:{en:`Routine`,zh:`习惯`},proactive:{en:`Proactive help`,zh:`主动协助`}};function de(e){let t=(0,Z.c)(2),{children:n}=e,r;return t[0]===n?r=t[1]:(r=(0,$.jsx)(`section`,{className:`rounded-2xl border border-edge bg-surface-panel p-4 sm:p-5`,children:n}),t[0]=n,t[1]=r),r}function fe(e){let t=(0,Z.c)(2),{children:n}=e,r;return t[0]===n?r=t[1]:(r=(0,$.jsx)(`div`,{className:`rounded-2xl border border-dashed border-edge px-5 py-10 text-center text-sm text-fg-muted`,children:n}),t[0]=n,t[1]=r),r}function pe(e){let t=(0,Z.c)(33),{open:n,onOpenChange:r,title:i,description:a,submitLabel:o,cancelLabel:s,submitDisabled:c,onSubmit:l,children:d}=e,y;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(y=(0,$.jsx)(f,{className:`fixed inset-0 z-[80] bg-scrim backdrop-blur-[2px]`}),t[0]=y):y=t[0];let b;t[1]===i?b=t[2]:(b=(0,$.jsx)(_,{className:`text-base font-semibold text-fg`,children:i}),t[1]=i,t[2]=b);let x;t[3]===a?x=t[4]:(x=(0,$.jsx)(p,{className:`mt-1 text-xs leading-5 text-fg-muted`,children:a}),t[3]=a,t[4]=x);let C;t[5]!==b||t[6]!==x?(C=(0,$.jsxs)(`div`,{className:`min-w-0`,children:[b,x]}),t[5]=b,t[6]=x,t[7]=C):C=t[7];let w;t[8]===Symbol.for(`react.memo_cache_sentinel`)?(w=(0,$.jsx)(S,{className:`size-4`}),t[8]=w):w=t[8];let T;t[9]===s?T=t[10]:(T=(0,$.jsx)(m,{asChild:!0,children:(0,$.jsx)(u,{type:`button`,variant:`ghost`,className:`size-8 shrink-0 p-0`,"aria-label":s,children:w})}),t[9]=s,t[10]=T);let E;t[11]!==C||t[12]!==T?(E=(0,$.jsxs)(`header`,{className:`flex shrink-0 items-start justify-between gap-3 border-b border-edge px-5 py-4`,children:[C,T]}),t[11]=C,t[12]=T,t[13]=E):E=t[13];let D;t[14]===d?D=t[15]:(D=(0,$.jsx)(`div`,{className:`min-h-0 flex-1 space-y-4 overflow-y-auto p-5`,children:d}),t[14]=d,t[15]=D);let O;t[16]===s?O=t[17]:(O=(0,$.jsx)(m,{asChild:!0,children:(0,$.jsx)(u,{type:`button`,children:s})}),t[16]=s,t[17]=O);let k;t[18]!==c||t[19]!==o?(k=(0,$.jsx)(u,{type:`submit`,variant:`primary`,disabled:c,children:o}),t[18]=c,t[19]=o,t[20]=k):k=t[20];let A;t[21]!==k||t[22]!==O?(A=(0,$.jsxs)(`footer`,{className:`flex shrink-0 justify-end gap-2 border-t border-edge px-5 py-3`,children:[O,k]}),t[21]=k,t[22]=O,t[23]=A):A=t[23];let j;t[24]!==l||t[25]!==A||t[26]!==E||t[27]!==D?(j=(0,$.jsxs)(h,{children:[y,(0,$.jsx)(g,{className:`fixed left-1/2 top-1/2 z-[90] h-[min(30rem,calc(100vh-2rem))] w-[min(36rem,calc(100vw-2rem))] -translate-x-1/2 -translate-y-1/2 overflow-hidden rounded-2xl border border-edge bg-surface-panel shadow-popover outline-none`,children:(0,$.jsxs)(`form`,{className:`flex h-full min-h-0 flex-col`,onSubmit:l,children:[E,D,A]})})]}),t[24]=l,t[25]=A,t[26]=E,t[27]=D,t[28]=j):j=t[28];let M;return t[29]!==r||t[30]!==n||t[31]!==j?(M=(0,$.jsx)(v,{open:n,onOpenChange:r,children:j}),t[29]=r,t[30]=n,t[31]=j,t[32]=M):M=t[32],M}function me(e){return JSON.stringify(e)}function he(e){let t=(0,Z.c)(10),[n,r]=(0,Q.useState)(e),i;t[0]===e?i=t[1]:(i=me(e),t[0]=e,t[1]=i);let a=(0,Q.useRef)(i),o;t[2]===e?o=t[3]:(o=me(e),t[2]=e,t[3]=o);let s=o,c,l;t[4]!==e||t[5]!==s?(c=()=>{if(s===a.current)return;let t=a.current;a.current=s,r(n=>me(n)===t?e:n)},l=[e,s],t[4]=e,t[5]=s,t[6]=c,t[7]=l):(c=t[6],l=t[7]),(0,Q.useEffect)(c,l);let u;return t[8]===n?u=t[9]:(u=[n,r],t[8]=n,t[9]=u),u}function ge(e){return{callName:e.callName,role:e.role,primaryGoal:e.primaryGoal,pronouns:e.pronouns,timezone:e.timezone,locale:e.locale}}function _e(){let e=(0,Z.c)(87),t=d(xe),n=ce[t],[r,a]=i(),o;if(e[0]!==r){let t=r.get(`tab`);o=t&&oe.has(t)?t:`profile`,e[0]=r,e[1]=o}else o=e[1];let s=o,c=T(be),l=T(ye),{data:u,error:f,isLoading:p,mutate:m}=y(`/api/you`,k),h;e[2]!==l||e[3]!==c||e[4]!==n.subtitle||e[5]!==n.title?(h=()=>(c({startExtra:null,main:(0,$.jsxs)(`div`,{children:[(0,$.jsx)(`h1`,{className:`text-base font-semibold text-fg`,children:n.title}),(0,$.jsx)(`p`,{className:`hidden text-xs text-fg-muted sm:block`,children:n.subtitle})]}),end:null}),l),e[2]=l,e[3]=c,e[4]=n.subtitle,e[5]=n.title,e[6]=h):h=e[6];let g;if(e[7]!==l||e[8]!==c||e[9]!==n?(g=[l,c,n],e[7]=l,e[8]=c,e[9]=n,e[10]=g):g=e[10],(0,Q.useEffect)(h,g),p){let t;return e[11]===Symbol.for(`react.memo_cache_sentinel`)?(t=(0,$.jsxs)(`div`,{className:`space-y-4 p-4 sm:p-6`,children:[(0,$.jsx)(b,{className:`h-10 w-96 max-w-full`}),(0,$.jsx)(b,{className:`h-72 rounded-2xl`})]}),e[11]=t):t=e[11],t}if(f||!u){let t;e[12]===m?t=e[13]:(t=()=>void m(),e[12]=m,e[13]=t);let r;e[14]!==n.retry||e[15]!==t?(r=(0,$.jsx)(`button`,{className:`text-accent hover:underline`,onClick:t,children:n.retry}),e[14]=n.retry,e[15]=t,e[16]=r):r=e[16];let i;return e[17]!==n.error||e[18]!==r?(i=(0,$.jsx)(`div`,{className:`p-6`,children:(0,$.jsxs)(fe,{children:[n.error,` `,r]})}),e[17]=n.error,e[18]=r,e[19]=i):i=e[19],i}let _=n.title,v;e[20]===a?v=e[21]:(v=e=>a({tab:e}),e[20]=a,e[21]=v);let S;e[22]===n.profile?S=e[23]:(S={id:`profile`,label:n.profile,icon:M},e[22]=n.profile,e[23]=S);let w;e[24]!==u.understandings.length||e[25]!==n.understanding?(w={id:`understanding`,label:n.understanding,icon:I,count:u.understandings.length},e[24]=u.understandings.length,e[25]=n.understanding,e[26]=w):w=e[26];let E=n.collaboration,D;e[27]===u.rules?D=e[28]:(D=u.rules.filter(ve),e[27]=u.rules,e[28]=D);let O;e[29]!==n.collaboration||e[30]!==D.length?(O={id:`collaboration`,label:E,icon:C,count:D.length},e[29]=n.collaboration,e[30]=D.length,e[31]=O):O=e[31];let A;e[32]===n.sources?A=e[33]:(A={id:`sources`,label:n.sources,icon:x},e[32]=n.sources,e[33]=A);let j;e[34]===n.dreaming?j=e[35]:(j={id:`dreaming`,label:n.dreaming,icon:q},e[34]=n.dreaming,e[35]=j);let N;e[36]===n.privacy?N=e[37]:(N={id:`privacy`,label:n.privacy,icon:X},e[36]=n.privacy,e[37]=N);let P;e[38]!==A||e[39]!==j||e[40]!==N||e[41]!==S||e[42]!==w||e[43]!==O?(P=[S,w,O,A,j,N],e[38]=A,e[39]=j,e[40]=N,e[41]=S,e[42]=w,e[43]=O,e[44]=P):P=e[44];let F;e[45]!==n.title||e[46]!==P||e[47]!==v||e[48]!==s?(F=(0,$.jsx)(ne,{ariaLabel:_,activeTab:s,onChange:v,items:P}),e[45]=n.title,e[46]=P,e[47]=v,e[48]=s,e[49]=F):F=e[49];let L;e[50]!==u.profile||e[51]!==t||e[52]!==m||e[53]!==n||e[54]!==s?(L=s===`profile`?(0,$.jsx)(Se,{profile:u.profile,language:t,t:n,onChanged:e=>m(t=>t&&{...t,profile:e},{revalidate:!1})}):null,e[50]=u.profile,e[51]=t,e[52]=m,e[53]=n,e[54]=s,e[55]=L):L=e[55];let R;e[56]!==u.quality||e[57]!==u.understandings||e[58]!==t||e[59]!==m||e[60]!==n||e[61]!==s?(R=s===`understanding`?(0,$.jsx)(we,{items:u.understandings,quality:u.quality,language:t,t:n,onChanged:e=>e?m(t=>t&&{...t,understandings:t.understandings.map(t=>t.id===e.id?e:t)},{revalidate:!0}):m()}):null,e[56]=u.quality,e[57]=u.understandings,e[58]=t,e[59]=m,e[60]=n,e[61]=s,e[62]=R):R=e[62];let z;e[63]!==u.rules||e[64]!==t||e[65]!==m||e[66]!==n||e[67]!==s?(z=s===`collaboration`?(0,$.jsx)(Me,{rules:u.rules,language:t,t:n,onChanged:()=>m()}):null,e[63]=u.rules,e[64]=t,e[65]=m,e[66]=n,e[67]=s,e[68]=z):z=e[68];let B;e[69]!==n||e[70]!==s?(B=s===`sources`?(0,$.jsx)(Fe,{t:n}):null,e[69]=n,e[70]=s,e[71]=B):B=e[71];let V;e[72]!==u.consolidation?.lastRun||e[73]!==n||e[74]!==s?(V=s===`dreaming`?(0,$.jsx)(Ie,{lastRun:u.consolidation?.lastRun??null,t:n}):null,e[72]=u.consolidation?.lastRun,e[73]=n,e[74]=s,e[75]=V):V=e[75];let H;e[76]!==n||e[77]!==s?(H=s===`privacy`?(0,$.jsx)(Re,{t:n}):null,e[76]=n,e[77]=s,e[78]=H):H=e[78];let U;return e[79]!==F||e[80]!==L||e[81]!==R||e[82]!==z||e[83]!==B||e[84]!==V||e[85]!==H?(U=(0,$.jsxs)(`div`,{className:`mx-auto w-full max-w-5xl space-y-5 p-4 sm:p-6`,children:[F,L,R,z,B,V,H]}),e[79]=F,e[80]=L,e[81]=R,e[82]=z,e[83]=B,e[84]=V,e[85]=H,e[86]=U):U=e[86],U}function ve(e){return e.status===`active`}function ye(e){return e.clearPageHeader}function be(e){return e.setPageHeader}function xe(e){return e.language}function Se(e){let t=(0,Z.c)(78),{profile:n,language:r,t:i,onChanged:a}=e,o;t[0]===n?o=t[1]:(o=ge(n),t[0]=n,t[1]=o);let s=o,[c,l]=he(s),d;t[2]===c?d=t[3]:(d=me(c),t[2]=c,t[3]=d);let f;t[4]===s?f=t[5]:(f=me(s),t[4]=s,t[5]=f);let p=d!==f,m;t[6]!==a||t[7]!==n?(m=async e=>{await a((await D({...e,accessibility:n.accessibility})).profile)},t[6]=a,t[7]=n,t[8]=m):m=t[8];let h;t[9]!==c||t[10]!==p||t[11]!==m?(h={value:c,dirty:p,delayMs:500,onSave:m},t[9]=c,t[10]=p,t[11]=m,t[12]=h):h=t[12];let g=te(h),_;t[13]!==c||t[14]!==l?(_=(e,t,n)=>(0,$.jsxs)(`label`,{className:`space-y-1.5 text-sm`,children:[(0,$.jsx)(`span`,{className:`font-medium text-fg`,children:t}),(0,$.jsx)(`input`,{className:se,placeholder:n,value:c[e],onChange:t=>l(n=>({...n,[e]:t.target.value}))})]}),t[13]=c,t[14]=l,t[15]=_):_=t[15];let v=_,y=g.onBlurCapture,b;t[16]===i.profileHint?b=t[17]:(b=(0,$.jsx)(`p`,{className:`mb-5 text-sm leading-6 text-fg-muted`,children:i.profileHint}),t[16]=i.profileHint,t[17]=b);let x;t[18]!==v||t[19]!==i.callName||t[20]!==i.callNamePlaceholder?(x=v(`callName`,i.callName,i.callNamePlaceholder),t[18]=v,t[19]=i.callName,t[20]=i.callNamePlaceholder,t[21]=x):x=t[21];let S;t[22]!==v||t[23]!==i.role||t[24]!==i.rolePlaceholder?(S=v(`role`,i.role,i.rolePlaceholder),t[22]=v,t[23]=i.role,t[24]=i.rolePlaceholder,t[25]=S):S=t[25];let C;t[26]===i.primaryGoal?C=t[27]:(C=(0,$.jsx)(`span`,{className:`font-medium text-fg`,children:i.primaryGoal}),t[26]=i.primaryGoal,t[27]=C);let w;t[28]===l?w=t[29]:(w=e=>l(t=>({...t,primaryGoal:e.target.value})),t[28]=l,t[29]=w);let T;t[30]!==c.primaryGoal||t[31]!==i.primaryGoalPlaceholder||t[32]!==w?(T=(0,$.jsx)(`textarea`,{className:se,rows:3,placeholder:i.primaryGoalPlaceholder,value:c.primaryGoal,onChange:w}),t[30]=c.primaryGoal,t[31]=i.primaryGoalPlaceholder,t[32]=w,t[33]=T):T=t[33];let E;t[34]!==C||t[35]!==T?(E=(0,$.jsxs)(`label`,{className:`space-y-1.5 text-sm sm:col-span-2`,children:[C,T]}),t[34]=C,t[35]=T,t[36]=E):E=t[36];let O;t[37]!==v||t[38]!==r||t[39]!==i.pronouns||t[40]!==i.pronounsPlaceholder?(O=r===`en`?v(`pronouns`,i.pronouns,i.pronounsPlaceholder):null,t[37]=v,t[38]=r,t[39]=i.pronouns,t[40]=i.pronounsPlaceholder,t[41]=O):O=t[41];let k;t[42]===i.timezone?k=t[43]:(k=(0,$.jsx)(`span`,{className:`font-medium text-fg`,children:i.timezone}),t[42]=i.timezone,t[43]=k);let A;t[44]===l?A=t[45]:(A=e=>l(t=>({...t,timezone:e.target.value})),t[44]=l,t[45]=A);let j;t[46]!==c.timezone||t[47]!==A?(j=(0,$.jsx)(`input`,{className:`${se} min-w-0 flex-1`,value:c.timezone,onChange:A}),t[46]=c.timezone,t[47]=A,t[48]=j):j=t[48];let M;t[49]===l?M=t[50]:(M=()=>l(Ce),t[49]=l,t[50]=M);let N;t[51]!==i.detect||t[52]!==M?(N=(0,$.jsx)(u,{className:`shrink-0 whitespace-nowrap`,onClick:M,children:i.detect}),t[51]=i.detect,t[52]=M,t[53]=N):N=t[53];let P;t[54]!==j||t[55]!==N?(P=(0,$.jsxs)(`div`,{className:`flex gap-2`,children:[j,N]}),t[54]=j,t[55]=N,t[56]=P):P=t[56];let F;t[57]!==k||t[58]!==P?(F=(0,$.jsxs)(`label`,{className:`space-y-1.5 text-sm`,children:[k,P]}),t[57]=k,t[58]=P,t[59]=F):F=t[59];let I;t[60]!==v||t[61]!==i.locale?(I=v(`locale`,i.locale),t[60]=v,t[61]=i.locale,t[62]=I):I=t[62];let L;t[63]!==x||t[64]!==S||t[65]!==E||t[66]!==O||t[67]!==F||t[68]!==I?(L=(0,$.jsxs)(`div`,{className:`grid gap-4 sm:grid-cols-2`,children:[x,S,E,O,F,I]}),t[63]=x,t[64]=S,t[65]=E,t[66]=O,t[67]=F,t[68]=I,t[69]=L):L=t[69];let R;t[70]!==g.error||t[71]!==g.status?(R=(0,$.jsx)(`div`,{className:`mt-5 flex justify-end`,children:(0,$.jsx)(ee,{status:g.status,error:g.error})}),t[70]=g.error,t[71]=g.status,t[72]=R):R=t[72];let z;return t[73]!==g.onBlurCapture||t[74]!==L||t[75]!==R||t[76]!==b?(z=(0,$.jsx)(de,{children:(0,$.jsxs)(`div`,{onBlurCapture:y,children:[b,L,R]})}),t[73]=g.onBlurCapture,t[74]=L,t[75]=R,t[76]=b,t[77]=z):z=t[77],z}function Ce(e){return{...e,timezone:B()}}function we(e){let t=(0,Z.c)(78),{items:n,quality:r,language:i,t:a,onChanged:c}=e,[l,d]=(0,Q.useState)(!1),[f,p]=(0,Q.useState)(``),[m,h]=(0,Q.useState)(`preference`),g;t[0]===n?g=t[1]:(g=n.filter(Ee),t[0]=n,t[1]=g);let _=g,v;t[2]===n?v=t[3]:(v=n.filter(Te),t[2]=n,t[3]=v);let y=v,b;t[4]!==m||t[5]!==c||t[6]!==f?(b=async e=>{e.preventDefault(),f.trim()&&(await z({statement:f,kind:m}),p(``),d(!1),await c())},t[4]=m,t[5]=c,t[6]=f,t[7]=b):b=t[7];let x=b,S;t[8]===a.understoodHint?S=t[9]:(S=(0,$.jsx)(`p`,{className:`max-w-2xl text-sm leading-6 text-fg-muted`,children:a.understoodHint}),t[8]=a.understoodHint,t[9]=S);let C,w;t[10]===Symbol.for(`react.memo_cache_sentinel`)?(C=()=>d(!0),w=(0,$.jsx)(E,{className:`size-4`}),t[10]=C,t[11]=w):(C=t[10],w=t[11]);let T;t[12]===a.addUnderstanding?T=t[13]:(T=(0,$.jsxs)(u,{variant:`primary`,onClick:C,children:[w,a.addUnderstanding]}),t[12]=a.addUnderstanding,t[13]=T);let D;t[14]!==S||t[15]!==T?(D=(0,$.jsxs)(`div`,{className:`flex items-start justify-between gap-4`,children:[S,T]}),t[14]=S,t[15]=T,t[16]=D):D=t[16];let O=a.addUnderstanding,k=a.understoodHint,A=a.add,j=a.cancel,M;t[17]===f?M=t[18]:(M=f.trim(),t[17]=f,t[18]=M);let N=!M,P;t[19]===a.statement?P=t[20]:(P=(0,$.jsx)(`span`,{className:`font-medium text-fg`,children:a.statement}),t[19]=a.statement,t[20]=P);let F;t[21]===Symbol.for(`react.memo_cache_sentinel`)?(F=e=>p(e.target.value),t[21]=F):F=t[21];let I;t[22]!==f||t[23]!==a.statement?(I=(0,$.jsx)(`textarea`,{autoFocus:!0,className:se,rows:4,placeholder:a.statement,value:f,onChange:F}),t[22]=f,t[23]=a.statement,t[24]=I):I=t[24];let L;t[25]!==P||t[26]!==I?(L=(0,$.jsxs)(`label`,{className:`block space-y-1.5 text-sm`,children:[P,I]}),t[25]=P,t[26]=I,t[27]=L):L=t[27];let R;t[28]===a.kind?R=t[29]:(R=(0,$.jsx)(`span`,{className:`font-medium text-fg`,children:a.kind}),t[28]=a.kind,t[29]=R);let B,V;t[30]===Symbol.for(`react.memo_cache_sentinel`)?(B=e=>h(e.target.value),V=Object.entries(le),t[30]=B,t[31]=V):(B=t[30],V=t[31]);let H;t[32]===i?H=t[33]:(H=V.map(e=>{let[t,n]=e;return(0,$.jsx)(s,{value:t,children:n[i]},t)}),t[32]=i,t[33]=H);let U;t[34]!==m||t[35]!==H?(U=(0,$.jsx)(o,{value:m,onChange:B,children:H}),t[34]=m,t[35]=H,t[36]=U):U=t[36];let W;t[37]!==R||t[38]!==U?(W=(0,$.jsxs)(`label`,{className:`block space-y-1.5 text-sm`,children:[R,U]}),t[37]=R,t[38]=U,t[39]=W):W=t[39];let G;t[40]!==l||t[41]!==x||t[42]!==a.add||t[43]!==a.addUnderstanding||t[44]!==a.cancel||t[45]!==a.understoodHint||t[46]!==N||t[47]!==L||t[48]!==W?(G=(0,$.jsxs)(pe,{open:l,onOpenChange:d,title:O,description:k,submitLabel:A,cancelLabel:j,submitDisabled:N,onSubmit:x,children:[L,W]}),t[40]=l,t[41]=x,t[42]=a.add,t[43]=a.addUnderstanding,t[44]=a.cancel,t[45]=a.understoodHint,t[46]=N,t[47]=L,t[48]=W,t[49]=G):G=t[49];let K;t[50]!==r||t[51]!==a?(K=(0,$.jsx)(De,{quality:r,t:a}),t[50]=r,t[51]=a,t[52]=K):K=t[52];let q;t[53]===a?q=t[54]:(q=(0,$.jsx)(Ae,{t:a}),t[53]=a,t[54]=q);let J;t[55]!==i||t[56]!==c||t[57]!==y||t[58]!==a?(J=y.length?(0,$.jsxs)(`section`,{className:`space-y-2`,children:[(0,$.jsxs)(`h2`,{className:`text-sm font-semibold text-fg`,children:[a.review,` · `,y.length]}),(0,$.jsx)(`div`,{className:`divide-y divide-edge overflow-hidden rounded-2xl border border-edge bg-surface-panel`,children:y.map(e=>(0,$.jsx)(ke,{item:e,language:i,t:a,onChanged:c},e.id))})]}):null,t[55]=i,t[56]=c,t[57]=y,t[58]=a,t[59]=J):J=t[59];let Y;t[60]!==_.length||t[61]!==a.active?(Y=(0,$.jsxs)(`h2`,{className:`text-sm font-semibold text-fg`,children:[a.active,` · `,_.length]}),t[60]=_.length,t[61]=a.active,t[62]=Y):Y=t[62];let X;t[63]!==_||t[64]!==i||t[65]!==c||t[66]!==a?(X=_.length?(0,$.jsx)(`div`,{className:`divide-y divide-edge overflow-hidden rounded-2xl border border-edge bg-surface-panel`,children:_.map(e=>(0,$.jsx)(ke,{item:e,language:i,t:a,onChanged:c},e.id))}):(0,$.jsx)(fe,{children:a.emptyUnderstanding}),t[63]=_,t[64]=i,t[65]=c,t[66]=a,t[67]=X):X=t[67];let ee;t[68]!==Y||t[69]!==X?(ee=(0,$.jsxs)(`section`,{className:`space-y-2`,children:[Y,X]}),t[68]=Y,t[69]=X,t[70]=ee):ee=t[70];let te;return t[71]!==G||t[72]!==K||t[73]!==q||t[74]!==J||t[75]!==ee||t[76]!==D?(te=(0,$.jsxs)(`div`,{className:`space-y-5`,children:[D,G,K,q,J,ee]}),t[71]=G,t[72]=K,t[73]=q,t[74]=J,t[75]=ee,t[76]=D,t[77]=te):te=t[77],te}function Te(e){return[`candidate`,`needs_review`,`stale`].includes(e.status)}function Ee(e){return e.status===`active`}function De(e){let t=(0,Z.c)(32),{quality:n,t:r}=e,i;t[0]===r.qualityNoData?i=t[1]:(i=e=>e==null?r.qualityNoData:`${Math.round(e*100)}%`,t[0]=r.qualityNoData,t[1]=i);let a=i,o=r.qualityActive,s=String(n.records.active),c;t[2]!==r.qualityActive||t[3]!==s?(c=[o,s],t[2]=r.qualityActive,t[3]=s,t[4]=c):c=t[4];let l=r.qualityPending,u=String(n.records.candidate+n.records.needsReview),d;t[5]!==r.qualityPending||t[6]!==u?(d=[l,u],t[5]=r.qualityPending,t[6]=u,t[7]=d):d=t[7];let f=r.qualityAcceptance,p;t[8]!==n.decisions.acceptanceRate||t[9]!==a?(p=a(n.decisions.acceptanceRate),t[8]=n.decisions.acceptanceRate,t[9]=a,t[10]=p):p=t[10];let m;t[11]!==r.qualityAcceptance||t[12]!==p?(m=[f,p],t[11]=r.qualityAcceptance,t[12]=p,t[13]=m):m=t[13];let h=r.qualityRecall,g;t[14]!==n.recall.helpfulRate||t[15]!==a?(g=a(n.recall.helpfulRate),t[14]=n.recall.helpfulRate,t[15]=a,t[16]=g):g=t[16];let _;t[17]!==r.qualityRecall||t[18]!==g?(_=[h,g],t[17]=r.qualityRecall,t[18]=g,t[19]=_):_=t[19];let v;t[20]!==m||t[21]!==_||t[22]!==c||t[23]!==d?(v=[c,d,m,_],t[20]=m,t[21]=_,t[22]=c,t[23]=d,t[24]=v):v=t[24];let y=v,b;t[25]===r.qualityTitle?b=t[26]:(b=(0,$.jsx)(`h2`,{className:`text-xs font-medium text-fg-muted`,children:r.qualityTitle}),t[25]=r.qualityTitle,t[26]=b);let x;t[27]===y?x=t[28]:(x=y.map(Oe),t[27]=y,t[28]=x);let S;return t[29]!==b||t[30]!==x?(S=(0,$.jsxs)(`section`,{className:`flex flex-wrap items-center gap-x-5 gap-y-2 rounded-xl bg-surface-muted px-3 py-2.5`,children:[b,x]}),t[29]=b,t[30]=x,t[31]=S):S=t[31],S}function Oe(e){let[t,n]=e;return(0,$.jsxs)(`div`,{className:`flex items-baseline gap-1.5 text-xs`,children:[(0,$.jsx)(`span`,{className:`text-fg-subtle`,children:t}),(0,$.jsx)(`span`,{className:`font-semibold text-fg`,children:n})]},t)}function ke(e){let t=(0,Z.c)(60),{item:n,language:r,t:i,onChanged:a}=e,[o,s]=(0,Q.useState)(!1),[c,l]=(0,Q.useState)(!1),[d,f]=he(n.statement),p=d!==n.statement,m;t[0]===i.required?m=t[1]:(m=e=>e.trim()?null:i.required,t[0]=i.required,t[1]=m);let h;t[2]!==n.id||t[3]!==a?(h=async e=>{await a((await R(n.id,{statement:e})).understanding)},t[2]=n.id,t[3]=a,t[4]=h):h=t[4];let g;t[5]!==d||t[6]!==o||t[7]!==p||t[8]!==m||t[9]!==h?(g={value:d,dirty:p,enabled:o,delayMs:500,validate:m,onSave:h},t[5]=d,t[6]=o,t[7]=p,t[8]=m,t[9]=h,t[10]=g):g=t[10];let _=te(g),v;t[11]!==d||t[12]!==o||t[13]!==f?(v=o?(0,$.jsx)(`textarea`,{autoFocus:!0,className:se,value:d,onChange:e=>f(e.target.value),rows:3}):(0,$.jsx)(`p`,{className:`text-sm leading-6 text-fg`,children:d}),t[11]=d,t[12]=o,t[13]=f,t[14]=v):v=t[14];let y=le[n.kind][r],b;t[15]===y?b=t[16]:(b=(0,$.jsx)(`span`,{children:y}),t[15]=y,t[16]=b);let x;t[17]===Symbol.for(`react.memo_cache_sentinel`)?(x=(0,$.jsx)(`span`,{children:`·`}),t[17]=x):x=t[17];let S=n.explicitness===`explicit`?i.sourceExplicit:n.explicitness===`observed`?i.sourceObserved:i.sourceInferred,C;t[18]===S?C=t[19]:(C=(0,$.jsx)(`span`,{children:S}),t[18]=S,t[19]=C);let w;t[20]!==C||t[21]!==b?(w=(0,$.jsxs)(`div`,{className:`mt-1 flex flex-wrap items-center gap-2 text-[11px] text-fg-subtle`,children:[b,x,C]}),t[20]=C,t[21]=b,t[22]=w):w=t[22];let T;t[23]!==w||t[24]!==v?(T=(0,$.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[v,w]}),t[23]=w,t[24]=v,t[25]=T):T=t[25];let E;t[26]!==_||t[27]!==o||t[28]!==i.done||t[29]!==i.edit?(E=o?(0,$.jsx)(u,{variant:`ghost`,onClick:()=>{_.flush(),s(!1)},children:i.done}):(0,$.jsxs)(u,{variant:`ghost`,onClick:()=>s(!0),children:[(0,$.jsx)(U,{className:`size-3.5`}),i.edit]}),t[26]=_,t[27]=o,t[28]=i.done,t[29]=i.edit,t[30]=E):E=t[30];let D;t[31]!==n.id||t[32]!==n.status||t[33]!==a||t[34]!==i.confirm||t[35]!==i.reject?(D=n.status===`active`?null:(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(u,{variant:`primary`,onClick:async()=>{await a((await R(n.id,{status:`active`})).understanding)},children:i.confirm}),(0,$.jsx)(u,{onClick:async()=>{await a((await R(n.id,{status:`rejected`})).understanding)},children:i.reject})]}),t[31]=n.id,t[32]=n.status,t[33]=a,t[34]=i.confirm,t[35]=i.reject,t[36]=D):D=t[36];let O;t[37]!==c||t[38]!==n.id||t[39]!==a?(O=async()=>{if(!c){l(!0);return}await F(n.id),l(!1),await a()},t[37]=c,t[38]=n.id,t[39]=a,t[40]=O):O=t[40];let k;t[41]===Symbol.for(`react.memo_cache_sentinel`)?(k=(0,$.jsx)(V,{className:`size-3.5`}),t[41]=k):k=t[41];let A=c?i.confirmDelete:i.delete,j;t[42]!==O||t[43]!==A?(j=(0,$.jsxs)(u,{variant:`ghost`,className:`text-danger`,onClick:O,children:[k,A]}),t[42]=O,t[43]=A,t[44]=j):j=t[44];let M;t[45]!==E||t[46]!==D||t[47]!==j?(M=(0,$.jsxs)(`div`,{className:`flex shrink-0 flex-wrap items-center gap-1 sm:justify-end`,children:[E,D,j]}),t[45]=E,t[46]=D,t[47]=j,t[48]=M):M=t[48];let N;t[49]!==T||t[50]!==M?(N=(0,$.jsxs)(`div`,{className:`flex flex-col gap-2 sm:flex-row sm:items-start sm:gap-4`,children:[T,M]}),t[49]=T,t[50]=M,t[51]=N):N=t[51];let P;t[52]!==_.error||t[53]!==_.status||t[54]!==o?(P=o||_.status!==`idle`?(0,$.jsx)(ee,{className:`mt-2`,status:_.status,error:_.error}):null,t[52]=_.error,t[53]=_.status,t[54]=o,t[55]=P):P=t[55];let I;return t[56]!==_.onBlurCapture||t[57]!==N||t[58]!==P?(I=(0,$.jsx)(`article`,{className:`px-4 py-3 sm:px-5`,children:(0,$.jsxs)(`div`,{onBlurCapture:_.onBlurCapture,children:[N,P]})}),t[56]=_.onBlurCapture,t[57]=N,t[58]=P,t[59]=I):I=t[59],I}function Ae(e){let t=(0,Z.c)(35),{t:n}=e,{data:r,error:i,isLoading:a,mutate:o}=y(`you-focuses`,Y),[s,c]=(0,Q.useState)(null);if(a){let e;return t[0]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,$.jsx)(b,{className:`h-40 rounded-2xl`}),t[0]=e):e=t[0],e}if(i){let e;return t[1]===n.error?e=t[2]:(e=(0,$.jsx)(fe,{children:n.error}),t[1]=n.error,t[2]=e),e}let l;if(t[3]!==r||t[4]!==s||t[5]!==o||t[6]!==n.activate||t[7]!==n.complete||t[8]!==n.confidence||t[9]!==n.confidenceHigh||t[10]!==n.confidenceLow||t[11]!==n.confidenceMedium||t[12]!==n.confirmDelete||t[13]!==n.delete||t[14]!==n.focusActive||t[15]!==n.focusCandidate||t[16]!==n.focusCompleted||t[17]!==n.focusHint||t[18]!==n.focusPaused||t[19]!==n.focuses||t[20]!==n.noFocuses||t[21]!==n.pause||t[22]!==n.reject){let e=(r??[]).filter(je),i;t[24]!==n.focusActive||t[25]!==n.focusCandidate||t[26]!==n.focusCompleted||t[27]!==n.focusPaused?(i=e=>e===`candidate`?n.focusCandidate:e===`active`?n.focusActive:e===`paused`?n.focusPaused:n.focusCompleted,t[24]=n.focusActive,t[25]=n.focusCandidate,t[26]=n.focusCompleted,t[27]=n.focusPaused,t[28]=i):i=t[28];let a=i,d;t[29]!==n.confidenceHigh||t[30]!==n.confidenceLow||t[31]!==n.confidenceMedium?(d=e=>e>=.85?n.confidenceHigh:e>=.65?n.confidenceMedium:n.confidenceLow,t[29]=n.confidenceHigh,t[30]=n.confidenceLow,t[31]=n.confidenceMedium,t[32]=d):d=t[32];let f=d,p;t[33]===n.focusHint?p=t[34]:(p=(0,$.jsx)(`p`,{className:`mt-1 text-xs leading-5 text-fg-muted`,children:n.focusHint}),t[33]=n.focusHint,t[34]=p),l=(0,$.jsxs)(`section`,{className:`space-y-2`,children:[(0,$.jsxs)(`div`,{children:[(0,$.jsxs)(`h2`,{className:`text-sm font-semibold text-fg`,children:[n.focuses,` · `,e.length]}),p]}),e.length?(0,$.jsx)(`div`,{className:`divide-y divide-edge overflow-hidden rounded-2xl border border-edge bg-surface-panel`,children:e.map(e=>(0,$.jsxs)(`article`,{className:`flex flex-col gap-3 px-4 py-3 sm:flex-row sm:items-center sm:px-5`,children:[(0,$.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,$.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,$.jsx)(`p`,{className:`text-sm font-medium text-fg`,children:e.title}),(0,$.jsx)(`span`,{className:`rounded-full bg-surface-muted px-2 py-0.5 text-[11px] text-fg-muted`,children:a(e.status)}),(0,$.jsxs)(`span`,{className:`text-[11px] text-fg-subtle`,children:[n.confidence,` · `,f(e.confidence)]})]}),(0,$.jsx)(`p`,{className:`mt-1 text-sm leading-5 text-fg-muted`,children:e.summary})]}),(0,$.jsxs)(`div`,{className:`flex shrink-0 flex-wrap gap-1 sm:justify-end`,children:[e.status===`active`?(0,$.jsx)(u,{onClick:async()=>{await N(e.id,`paused`),await o()},children:n.pause}):(0,$.jsx)(u,{variant:`primary`,onClick:async()=>{await N(e.id,`active`),await o()},children:n.activate}),(0,$.jsx)(u,{variant:`ghost`,onClick:async()=>{await N(e.id,`completed`),await o()},children:n.complete}),e.status===`candidate`?(0,$.jsx)(u,{variant:`ghost`,className:`text-danger`,onClick:async()=>{await N(e.id,`rejected`),await o()},children:n.reject}):null,(0,$.jsxs)(u,{variant:`ghost`,className:`text-danger`,onClick:async()=>{if(s!==e.id){c(e.id);return}await O(e.id),c(null),await o()},children:[(0,$.jsx)(V,{className:`size-3.5`}),s===e.id?n.confirmDelete:n.delete]})]})]},e.id))}):(0,$.jsx)(fe,{children:n.noFocuses})]}),t[3]=r,t[4]=s,t[5]=o,t[6]=n.activate,t[7]=n.complete,t[8]=n.confidence,t[9]=n.confidenceHigh,t[10]=n.confidenceLow,t[11]=n.confidenceMedium,t[12]=n.confirmDelete,t[13]=n.delete,t[14]=n.focusActive,t[15]=n.focusCandidate,t[16]=n.focusCompleted,t[17]=n.focusHint,t[18]=n.focusPaused,t[19]=n.focuses,t[20]=n.noFocuses,t[21]=n.pause,t[22]=n.reject,t[23]=l}else l=t[23];return l}function je(e){return e.status!==`rejected`}function Me(e){let t=(0,Z.c)(80),{rules:n,language:r,t:i,onChanged:a}=e,[c,l]=(0,Q.useState)(!1),[d,f]=(0,Q.useState)(``),[p,m]=(0,Q.useState)(`communication`),[h,g]=(0,Q.useState)(null),_,v,y,b,x,S;if(t[0]!==c||t[1]!==p||t[2]!==h||t[3]!==r||t[4]!==a||t[5]!==n||t[6]!==d||t[7]!==i.add||t[8]!==i.addRule||t[9]!==i.cancel||t[10]!==i.category||t[11]!==i.collaboration||t[12]!==i.confirmDelete||t[13]!==i.delete||t[14]!==i.disable||t[15]!==i.emptyRules||t[16]!==i.enable||t[17]!==i.ruleStatement||t[18]!==i.rulesHint){let e=n.filter(Ne),C;t[25]!==p||t[26]!==a||t[27]!==d?(C=async e=>{e.preventDefault(),d.trim()&&(await J({statement:d,category:p}),f(``),l(!1),await a())},t[25]=p,t[26]=a,t[27]=d,t[28]=C):C=t[28];let w=C;b=`space-y-5`;let T;t[29]===i.rulesHint?T=t[30]:(T=(0,$.jsx)(`p`,{className:`max-w-2xl text-sm leading-6 text-fg-muted`,children:i.rulesHint}),t[29]=i.rulesHint,t[30]=T);let D,O;t[31]===Symbol.for(`react.memo_cache_sentinel`)?(O=()=>l(!0),D=(0,$.jsx)(E,{className:`size-4`}),t[31]=D,t[32]=O):(D=t[31],O=t[32]);let k;t[33]===i.addRule?k=t[34]:(k=(0,$.jsxs)(u,{variant:`primary`,onClick:O,children:[D,i.addRule]}),t[33]=i.addRule,t[34]=k),t[35]!==k||t[36]!==T?(x=(0,$.jsxs)(`div`,{className:`flex items-start justify-between gap-4`,children:[T,k]}),t[35]=k,t[36]=T,t[37]=x):x=t[37];let A=i.addRule,j=i.rulesHint,M=i.add,N=i.cancel,P;t[38]===d?P=t[39]:(P=d.trim(),t[38]=d,t[39]=P);let F=!P,I;t[40]===i.ruleStatement?I=t[41]:(I=(0,$.jsx)(`span`,{className:`font-medium text-fg`,children:i.ruleStatement}),t[40]=i.ruleStatement,t[41]=I);let L;t[42]===Symbol.for(`react.memo_cache_sentinel`)?(L=e=>f(e.target.value),t[42]=L):L=t[42];let R;t[43]!==d||t[44]!==i.ruleStatement?(R=(0,$.jsx)(`textarea`,{autoFocus:!0,className:se,rows:4,placeholder:i.ruleStatement,value:d,onChange:L}),t[43]=d,t[44]=i.ruleStatement,t[45]=R):R=t[45];let z;t[46]!==I||t[47]!==R?(z=(0,$.jsxs)(`label`,{className:`block space-y-1.5 text-sm`,children:[I,R]}),t[46]=I,t[47]=R,t[48]=z):z=t[48];let B;t[49]===i.category?B=t[50]:(B=(0,$.jsx)(`span`,{className:`font-medium text-fg`,children:i.category}),t[49]=i.category,t[50]=B);let U,W;t[51]===Symbol.for(`react.memo_cache_sentinel`)?(U=e=>m(e.target.value),W=Object.entries(ue),t[51]=U,t[52]=W):(U=t[51],W=t[52]);let K;t[53]===r?K=t[54]:(K=W.map(e=>{let[t,n]=e;return(0,$.jsx)(s,{value:t,children:n[r]},t)}),t[53]=r,t[54]=K);let q;t[55]!==p||t[56]!==K?(q=(0,$.jsx)(o,{value:p,onChange:U,children:K}),t[55]=p,t[56]=K,t[57]=q):q=t[57];let Y;t[58]!==B||t[59]!==q?(Y=(0,$.jsxs)(`label`,{className:`block space-y-1.5 text-sm`,children:[B,q]}),t[58]=B,t[59]=q,t[60]=Y):Y=t[60],t[61]!==c||t[62]!==w||t[63]!==i.add||t[64]!==i.addRule||t[65]!==i.cancel||t[66]!==i.rulesHint||t[67]!==F||t[68]!==z||t[69]!==Y?(S=(0,$.jsxs)(pe,{open:c,onOpenChange:l,title:A,description:j,submitLabel:M,cancelLabel:N,submitDisabled:F,onSubmit:w,children:[z,Y]}),t[61]=c,t[62]=w,t[63]=i.add,t[64]=i.addRule,t[65]=i.cancel,t[66]=i.rulesHint,t[67]=F,t[68]=z,t[69]=Y,t[70]=S):S=t[70],_=`space-y-2`,v=(0,$.jsxs)(`h2`,{className:`text-sm font-semibold text-fg`,children:[i.collaboration,` · `,e.length]}),y=e.length?(0,$.jsx)(`div`,{className:`divide-y divide-edge overflow-hidden rounded-2xl border border-edge bg-surface-panel`,children:e.map(e=>(0,$.jsxs)(`article`,{className:`flex flex-col gap-2 px-4 py-3 sm:flex-row sm:items-start sm:gap-4 sm:px-5`,children:[(0,$.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,$.jsx)(`p`,{className:`text-sm leading-6 ${e.status===`disabled`?`text-fg-subtle line-through`:`text-fg`}`,children:e.statement}),(0,$.jsxs)(`div`,{className:`mt-1 flex flex-wrap items-center gap-2 text-[11px] text-fg-subtle`,children:[(0,$.jsx)(`span`,{children:ue[e.category][r]}),(0,$.jsx)(`span`,{children:`·`}),(0,$.jsxs)(`span`,{children:[`P`,e.priority]}),e.status===`disabled`?(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(`span`,{children:`·`}),(0,$.jsx)(`span`,{children:i.disable})]}):null]})]}),(0,$.jsxs)(`div`,{className:`flex shrink-0 flex-wrap items-center gap-1 sm:justify-end`,children:[(0,$.jsx)(u,{variant:`ghost`,onClick:async()=>{await H(e.id,{status:e.status===`active`?`disabled`:`active`}),await a()},children:e.status===`active`?i.disable:i.enable}),(0,$.jsxs)(u,{variant:`ghost`,className:`text-danger`,onClick:async()=>{if(h!==e.id){g(e.id);return}await G(e.id),g(null),await a()},children:[(0,$.jsx)(V,{className:`size-3.5`}),h===e.id?i.confirmDelete:i.delete]})]})]},e.id))}):(0,$.jsx)(fe,{children:i.emptyRules}),t[0]=c,t[1]=p,t[2]=h,t[3]=r,t[4]=a,t[5]=n,t[6]=d,t[7]=i.add,t[8]=i.addRule,t[9]=i.cancel,t[10]=i.category,t[11]=i.collaboration,t[12]=i.confirmDelete,t[13]=i.delete,t[14]=i.disable,t[15]=i.emptyRules,t[16]=i.enable,t[17]=i.ruleStatement,t[18]=i.rulesHint,t[19]=_,t[20]=v,t[21]=y,t[22]=b,t[23]=x,t[24]=S}else _=t[19],v=t[20],y=t[21],b=t[22],x=t[23],S=t[24];let C;t[71]!==_||t[72]!==v||t[73]!==y?(C=(0,$.jsxs)(`section`,{className:_,children:[v,y]}),t[71]=_,t[72]=v,t[73]=y,t[74]=C):C=t[74];let w;return t[75]!==b||t[76]!==x||t[77]!==S||t[78]!==C?(w=(0,$.jsxs)(`div`,{className:b,children:[x,S,C]}),t[75]=b,t[76]=x,t[77]=S,t[78]=C,t[79]=w):w=t[79],w}function Ne(e){return e.status!==`archived`}async function Pe(){let[e,t,n]=await Promise.all([K(),ie(),ae()]);return{grants:e,connectors:t,catalog:n}}function Fe({t:e}){let{data:t,error:n,isLoading:r,mutate:i}=y(`you-understanding-sources`,Pe),[o,s]=(0,Q.useState)(null),[d,f]=(0,Q.useState)(null),[p,m]=(0,Q.useState)(null);if(r)return(0,$.jsx)(b,{className:`h-64 rounded-2xl`});if(n)return(0,$.jsxs)(fe,{children:[e.error,` `,(0,$.jsx)(`button`,{className:`text-accent hover:underline`,onClick:()=>void i(),children:e.retry})]});let h=t?.grants??[],g=t?.connectors??[],_=new Map((t?.catalog??[]).map(e=>[e.id,e])),v=e=>{let t=e.displayName.trim().toLocaleLowerCase(),n=g.find(e=>e.displayName.trim().toLocaleLowerCase()===t);return n?_.get(n.connectorId):[..._.values()].find(n=>n.displayName.trim().toLocaleLowerCase()===t||e.sourceKey.toLocaleLowerCase().includes(n.id.toLocaleLowerCase()))},x=t=>`${e.actionFailed}: ${t instanceof Error?t.message:String(t)}`,S=async t=>{m(null),f(null),s({grantId:t.id,kind:`refresh`});try{await A(t.id),await i().catch(()=>void 0),m({tone:`success`,message:`${t.displayName}: ${e.refreshStarted}`})}catch(e){m({tone:`error`,message:x(e)})}finally{s(null)}},C=async t=>{if(d!==t.id){f(t.id),m(null);return}s({grantId:t.id,kind:`revoke`});try{await j(t.id),await i().catch(()=>void 0),f(null),m({tone:`success`,message:`${t.displayName}: ${e.revokeDone}`})}catch(e){m({tone:`error`,message:x(e)})}finally{s(null)}};return(0,$.jsxs)(`div`,{className:`space-y-5`,children:[(0,$.jsxs)(`div`,{className:`flex items-start justify-between gap-4`,children:[(0,$.jsx)(`p`,{className:`max-w-2xl text-sm leading-6 text-fg-muted`,children:e.sourcesHint}),(0,$.jsx)(u,{asChild:!0,variant:`primary`,children:(0,$.jsxs)(a,{to:`/connectors?understanding=1&returnTo=%2Fyou%3Ftab%3Dsources`,children:[e.manageSources,(0,$.jsx)(c,{className:`size-4`})]})})]}),p?(0,$.jsx)(`p`,{role:`status`,"aria-live":`polite`,className:`rounded-xl px-3 py-2 text-sm ${p.tone===`success`?`bg-success-soft text-success`:`bg-danger/10 text-danger`}`,children:p.message}):null,(0,$.jsxs)(`section`,{className:`space-y-2`,children:[(0,$.jsxs)(`h2`,{className:`text-sm font-semibold text-fg`,children:[e.authorizedSources,` · `,h.length]}),h.length?(0,$.jsx)(`div`,{className:`grid gap-3 sm:grid-cols-2`,children:h.map(t=>{let n=v(t);return(0,$.jsxs)(`article`,{className:`flex min-h-28 items-start gap-3 rounded-2xl border border-edge bg-surface-panel p-4`,children:[n?(0,$.jsx)(re,{connector:n,size:`sm`}):(0,$.jsx)(`span`,{className:`flex size-9 shrink-0 items-center justify-center rounded-lg border border-edge bg-surface-base`,children:(0,$.jsx)(W,{className:`size-4 text-fg-muted`})}),(0,$.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,$.jsx)(`p`,{className:`truncate text-sm font-medium text-fg`,children:t.displayName}),(0,$.jsxs)(`p`,{className:`mt-1 text-xs leading-5 text-fg-subtle`,children:[t.accessMode===`continuous`?e.continuous:e.once,` · `,t.processingPolicy===`local_only`?e.localOnly:t.retentionPolicy===`derived_only`?e.derivedOnly:t.retentionPolicy]}),t.lastCollectedAt?(0,$.jsx)(`p`,{className:`mt-1 text-xs text-fg-subtle`,children:new Date(t.lastCollectedAt).toLocaleString()}):null]}),(0,$.jsxs)(`div`,{className:`flex shrink-0 flex-wrap items-center justify-end gap-1`,children:[t.accessMode===`continuous`?(0,$.jsx)(u,{variant:`ghost`,disabled:o!==null,"aria-busy":o?.grantId===t.id&&o.kind===`refresh`,onClick:()=>void S(t),children:o?.grantId===t.id&&o.kind===`refresh`?(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(l,{className:`size-4 animate-spin`}),e.refreshing]}):e.refresh}):null,(0,$.jsx)(u,{variant:`ghost`,className:`text-danger`,title:e.revokeHint,"aria-label":`${e.revoke}: ${t.displayName}`,disabled:o!==null,"aria-busy":o?.grantId===t.id&&o.kind===`revoke`,onClick:()=>void C(t),children:o?.grantId===t.id&&o.kind===`revoke`?(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(l,{className:`size-4 animate-spin`}),e.revoking]}):d===t.id?e.confirmRevoke:e.revoke})]})]},t.id)})}):(0,$.jsx)(fe,{children:e.noSources})]}),(0,$.jsxs)(`section`,{className:`space-y-2`,children:[(0,$.jsxs)(`h2`,{className:`text-sm font-semibold text-fg`,children:[e.connectorsTitle,` · `,g.length]}),g.length?(0,$.jsx)(`div`,{className:`grid gap-3 sm:grid-cols-2`,children:g.map(t=>{let n=t.enabled&&(t.status===`connected`||t.connectionStatus===`connected`||t.authStatus===`connected`),r=_.get(t.connectorId);return(0,$.jsxs)(a,{to:`/connectors?tab=connected&instance=${encodeURIComponent(t.instanceId)}`,"aria-label":`${e.openConnector}: ${t.displayName}`,className:`group flex min-h-24 items-center gap-3 rounded-2xl border border-edge bg-surface-panel p-4 transition-colors hover:border-edge-strong hover:bg-surface-hover focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent/40`,children:[(0,$.jsx)(re,{connector:r??{displayName:t.displayName}}),(0,$.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,$.jsx)(`p`,{className:`truncate text-sm font-medium text-fg`,children:t.displayName}),(0,$.jsx)(`p`,{className:`mt-1 truncate text-xs text-fg-subtle`,children:t.connectorId})]}),(0,$.jsx)(`span`,{className:`shrink-0 rounded-full px-2 py-1 text-xs ${n?`bg-success-soft text-success`:`bg-warning-soft text-warning`}`,children:n?e.connected:e.unavailable}),(0,$.jsx)(w,{className:`size-4 shrink-0 text-fg-subtle transition-transform group-hover:translate-x-0.5`})]},t.instanceId)})}):(0,$.jsx)(fe,{children:e.noConnectors})]})]})}function Ie(e){let t=(0,Z.c)(112),{lastRun:n,t:r}=e,{data:i,error:a,isLoading:c,mutate:l}=y(`you-context-settings`,L),d=i?.dreaming??null,[f,p]=he(d),m;t[0]!==f||t[1]!==d?(m=f&&d&&me(f)!==me(d),t[0]=f,t[1]=d,t[2]=m):m=t[2];let h=!!m,g;t[3]===l?g=t[4]:(g=async e=>{await P({dreaming:e}),await l()},t[3]=l,t[4]=g);let _;t[5]!==f||t[6]!==h||t[7]!==g?(_={value:f,dirty:h,delayMs:500,onSave:g},t[5]=f,t[6]=h,t[7]=g,t[8]=_):_=t[8];let v=te(_);if(a){let e;t[9]===l?e=t[10]:(e=()=>void l(),t[9]=l,t[10]=e);let n;t[11]!==r.retry||t[12]!==e?(n=(0,$.jsx)(`button`,{className:`text-accent hover:underline`,onClick:e,children:r.retry}),t[11]=r.retry,t[12]=e,t[13]=n):n=t[13];let i;return t[14]!==r.error||t[15]!==n?(i=(0,$.jsxs)(fe,{children:[r.error,` `,n]}),t[14]=r.error,t[15]=n,t[16]=i):i=t[16],i}if(c||!f){let e;return t[17]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,$.jsx)(b,{className:`h-72 rounded-2xl`}),t[17]=e):e=t[17],e}let x=n?.status===`completed`?r.runCompleted:n?.status===`failed`?r.runFailed:r.runRunning,S;t[18]===r.dreamingHint?S=t[19]:(S=(0,$.jsx)(`p`,{className:`max-w-2xl text-sm leading-6 text-fg-muted`,children:r.dreamingHint}),t[18]=r.dreamingHint,t[19]=S);let C=v.onBlurCapture,w;t[20]===r.mode?w=t[21]:(w=(0,$.jsx)(`span`,{className:`font-medium text-fg`,children:r.mode}),t[20]=r.mode,t[21]=w);let T;t[22]===p?T=t[23]:(T=e=>p(t=>t&&{...t,mode:e.target.value}),t[22]=p,t[23]=T);let E;t[24]===r.on?E=t[25]:(E=(0,$.jsx)(s,{value:`review`,children:r.on}),t[24]=r.on,t[25]=E);let D;t[26]===r.off?D=t[27]:(D=(0,$.jsx)(s,{value:`off`,children:r.off}),t[26]=r.off,t[27]=D);let O;t[28]!==f.mode||t[29]!==D||t[30]!==T||t[31]!==E?(O=(0,$.jsxs)(o,{value:f.mode,onChange:T,children:[E,D]}),t[28]=f.mode,t[29]=D,t[30]=T,t[31]=E,t[32]=O):O=t[32];let k;t[33]!==O||t[34]!==w?(k=(0,$.jsxs)(`label`,{className:`space-y-1.5 text-sm`,children:[w,O]}),t[33]=O,t[34]=w,t[35]=k):k=t[35];let A;t[36]===r.reviewTime?A=t[37]:(A=(0,$.jsx)(`span`,{className:`font-medium text-fg`,children:r.reviewTime}),t[36]=r.reviewTime,t[37]=A);let j;t[38]===p?j=t[39]:(j=e=>p(t=>t&&{...t,schedule:{time:e.target.value}}),t[38]=p,t[39]=j);let M;t[40]!==f.schedule.time||t[41]!==j?(M=(0,$.jsx)(`input`,{type:`time`,className:se,value:f.schedule.time,onChange:j}),t[40]=f.schedule.time,t[41]=j,t[42]=M):M=t[42];let N;t[43]!==A||t[44]!==M?(N=(0,$.jsxs)(`label`,{className:`space-y-1.5 text-sm`,children:[A,M]}),t[43]=A,t[44]=M,t[45]=N):N=t[45];let F;t[46]===r.timezone?F=t[47]:(F=(0,$.jsx)(`span`,{className:`font-medium text-fg`,children:r.timezone}),t[46]=r.timezone,t[47]=F);let I=f.timezone??``,R;t[48]===Symbol.for(`react.memo_cache_sentinel`)?(R=B(),t[48]=R):R=t[48];let z;t[49]===p?z=t[50]:(z=e=>p(t=>t&&{...t,timezone:e.target.value||void 0}),t[49]=p,t[50]=z);let V;t[51]!==I||t[52]!==z?(V=(0,$.jsx)(`input`,{className:`${se} min-w-0 flex-1`,value:I,placeholder:R,onChange:z}),t[51]=I,t[52]=z,t[53]=V):V=t[53];let H;t[54]===p?H=t[55]:(H=()=>p(Le),t[54]=p,t[55]=H);let U;t[56]!==r.detect||t[57]!==H?(U=(0,$.jsx)(u,{className:`shrink-0 whitespace-nowrap`,onClick:H,children:r.detect}),t[56]=r.detect,t[57]=H,t[58]=U):U=t[58];let W;t[59]!==V||t[60]!==U?(W=(0,$.jsxs)(`div`,{className:`flex gap-2`,children:[V,U]}),t[59]=V,t[60]=U,t[61]=W):W=t[61];let G;t[62]!==F||t[63]!==W?(G=(0,$.jsxs)(`label`,{className:`space-y-1.5 text-sm sm:col-span-2`,children:[F,W]}),t[62]=F,t[63]=W,t[64]=G):G=t[64];let K;t[65]===r.evidenceThreshold?K=t[66]:(K=(0,$.jsx)(`span`,{className:`font-medium text-fg`,children:r.evidenceThreshold}),t[65]=r.evidenceThreshold,t[66]=K);let q;t[67]===p?q=t[68]:(q=e=>p(t=>t&&{...t,minEvidenceSources:Number(e.target.value)}),t[67]=p,t[68]=q);let J;t[69]!==f.minEvidenceSources||t[70]!==q?(J=(0,$.jsx)(`input`,{type:`number`,min:2,max:10,className:se,value:f.minEvidenceSources,onChange:q}),t[69]=f.minEvidenceSources,t[70]=q,t[71]=J):J=t[71];let Y;t[72]!==K||t[73]!==J?(Y=(0,$.jsxs)(`label`,{className:`space-y-1.5 text-sm`,children:[K,J]}),t[72]=K,t[73]=J,t[74]=Y):Y=t[74];let X;t[75]===r.scanLimit?X=t[76]:(X=(0,$.jsx)(`span`,{className:`font-medium text-fg`,children:r.scanLimit}),t[75]=r.scanLimit,t[76]=X);let ne;t[77]===p?ne=t[78]:(ne=e=>p(t=>t&&{...t,limit:Number(e.target.value)}),t[77]=p,t[78]=ne);let re;t[79]!==f.limit||t[80]!==ne?(re=(0,$.jsx)(`input`,{type:`number`,min:1,max:2e3,className:se,value:f.limit,onChange:ne}),t[79]=f.limit,t[80]=ne,t[81]=re):re=t[81];let ie;t[82]!==X||t[83]!==re?(ie=(0,$.jsxs)(`label`,{className:`space-y-1.5 text-sm`,children:[X,re]}),t[82]=X,t[83]=re,t[84]=ie):ie=t[84];let ae;t[85]!==k||t[86]!==N||t[87]!==G||t[88]!==Y||t[89]!==ie?(ae=(0,$.jsxs)(`div`,{className:`grid gap-4 sm:grid-cols-2`,children:[k,N,G,Y,ie]}),t[85]=k,t[86]=N,t[87]=G,t[88]=Y,t[89]=ie,t[90]=ae):ae=t[90];let Q;t[91]!==v.error||t[92]!==v.status?(Q=(0,$.jsx)(`div`,{className:`mt-5 flex justify-end`,children:(0,$.jsx)(ee,{status:v.status,error:v.error})}),t[91]=v.error,t[92]=v.status,t[93]=Q):Q=t[93];let oe;t[94]!==v.onBlurCapture||t[95]!==ae||t[96]!==Q?(oe=(0,$.jsx)(de,{children:(0,$.jsxs)(`div`,{onBlurCapture:C,children:[ae,Q]})}),t[94]=v.onBlurCapture,t[95]=ae,t[96]=Q,t[97]=oe):oe=t[97];let ce;t[98]===r.lastRun?ce=t[99]:(ce=(0,$.jsx)(`p`,{className:`text-sm font-medium text-fg`,children:r.lastRun}),t[98]=r.lastRun,t[99]=ce);let le;t[100]!==n||t[101]!==x||t[102]!==r.neverRun||t[103]!==r.runItems?(le=n?(0,$.jsxs)(`div`,{className:`mt-2 flex flex-wrap items-center gap-2 text-sm text-fg-muted`,children:[(0,$.jsx)(`span`,{children:x}),(0,$.jsx)(`span`,{children:`·`}),(0,$.jsx)(`time`,{children:new Date(n.startedAt).toLocaleString()}),typeof n.metrics.scanned==`number`?(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(`span`,{children:`·`}),(0,$.jsxs)(`span`,{children:[String(n.metrics.scanned),` `,r.runItems]})]}):null]}):(0,$.jsx)(`p`,{className:`mt-2 text-sm text-fg-muted`,children:r.neverRun}),t[100]=n,t[101]=x,t[102]=r.neverRun,t[103]=r.runItems,t[104]=le):le=t[104];let ue;t[105]!==ce||t[106]!==le?(ue=(0,$.jsxs)(de,{children:[ce,le]}),t[105]=ce,t[106]=le,t[107]=ue):ue=t[107];let pe;return t[108]!==oe||t[109]!==ue||t[110]!==S?(pe=(0,$.jsxs)(`div`,{className:`space-y-5`,children:[S,oe,ue]}),t[108]=oe,t[109]=ue,t[110]=S,t[111]=pe):pe=t[111],pe}function Le(e){return e&&{...e,timezone:B()}}function Re(e){let t=(0,Z.c)(49),{t:n}=e,{data:r,error:i,isLoading:a,mutate:c}=y(`you-context-settings`,L),l=r?.privacy.sensitiveWritePolicy??null,[u,d]=he(l),f=!!(u&&l&&u!==l),p;t[0]===c?p=t[1]:(p=async e=>{await P({privacy:{sensitiveWritePolicy:e}}),await c()},t[0]=c,t[1]=p);let m;t[2]!==u||t[3]!==f||t[4]!==p?(m={value:u,dirty:f,delayMs:350,onSave:p},t[2]=u,t[3]=f,t[4]=p,t[5]=m):m=t[5];let h=te(m);if(i){let e;t[6]===c?e=t[7]:(e=()=>void c(),t[6]=c,t[7]=e);let r;t[8]!==n.retry||t[9]!==e?(r=(0,$.jsx)(`button`,{className:`text-accent hover:underline`,onClick:e,children:n.retry}),t[8]=n.retry,t[9]=e,t[10]=r):r=t[10];let i;return t[11]!==n.error||t[12]!==r?(i=(0,$.jsxs)(fe,{children:[n.error,` `,r]}),t[11]=n.error,t[12]=r,t[13]=i):i=t[13],i}if(a||!u){let e;return t[14]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,$.jsx)(b,{className:`h-56 rounded-2xl`}),t[14]=e):e=t[14],e}let g;t[15]===n.privacyHint?g=t[16]:(g=(0,$.jsx)(`p`,{className:`max-w-2xl text-sm leading-6 text-fg-muted`,children:n.privacyHint}),t[15]=n.privacyHint,t[16]=g);let _;t[17]===n.sensitivePolicy?_=t[18]:(_=(0,$.jsx)(`span`,{className:`font-medium text-fg`,children:n.sensitivePolicy}),t[17]=n.sensitivePolicy,t[18]=_);let v;t[19]===d?v=t[20]:(v=e=>d(e.target.value),t[19]=d,t[20]=v);let x;t[21]===n.policyDeny?x=t[22]:(x=(0,$.jsx)(s,{value:`deny`,children:n.policyDeny}),t[21]=n.policyDeny,t[22]=x);let S;t[23]===n.policyConfirm?S=t[24]:(S=(0,$.jsx)(s,{value:`confirm`,children:n.policyConfirm}),t[23]=n.policyConfirm,t[24]=S);let C;t[25]===n.policyAllow?C=t[26]:(C=(0,$.jsx)(s,{value:`allow`,children:n.policyAllow}),t[25]=n.policyAllow,t[26]=C);let w;t[27]!==u||t[28]!==v||t[29]!==x||t[30]!==S||t[31]!==C?(w=(0,$.jsxs)(o,{value:u,onChange:v,children:[x,S,C]}),t[27]=u,t[28]=v,t[29]=x,t[30]=S,t[31]=C,t[32]=w):w=t[32];let T;t[33]!==w||t[34]!==_?(T=(0,$.jsxs)(`label`,{className:`block max-w-xl space-y-1.5 text-sm`,children:[_,w]}),t[33]=w,t[34]=_,t[35]=T):T=t[35];let E;t[36]===n.privacyWarning?E=t[37]:(E=(0,$.jsx)(`p`,{className:`mt-3 max-w-2xl text-xs leading-5 text-fg-subtle`,children:n.privacyWarning}),t[36]=n.privacyWarning,t[37]=E);let D;t[38]!==h.error||t[39]!==h.status?(D=(0,$.jsx)(`div`,{className:`mt-5 flex justify-end`,children:(0,$.jsx)(ee,{status:h.status,error:h.error})}),t[38]=h.error,t[39]=h.status,t[40]=D):D=t[40];let O;t[41]!==h.onBlurCapture||t[42]!==T||t[43]!==E||t[44]!==D?(O=(0,$.jsx)(de,{children:(0,$.jsxs)(`div`,{onBlurCapture:h.onBlurCapture,children:[T,E,D]})}),t[41]=h.onBlurCapture,t[42]=T,t[43]=E,t[44]=D,t[45]=O):O=t[45];let k;return t[46]!==O||t[47]!==g?(k=(0,$.jsxs)(`div`,{className:`space-y-5`,children:[g,O]}),t[46]=O,t[47]=g,t[48]=k):k=t[48],k}export{_e as UserContextPage};
|
|
1
|
+
import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{a as t,n,t as r}from"./vendor-react-BOUWij0V.js";import{f as i,t as a}from"./chunk-KS7C4IRE-BMhrPKJC.js";import{n as o,r as s}from"./popover-select-BzdnTy3h.js";import{t as c}from"./external-link-DjqjBmc3.js";import{t as l}from"./loader-circle-CifKLtgG.js";import{t as u}from"./button-CSEbl4zT.js";import{n as d}from"./locale-store-CnamlR07.js";import{a as f,i as p,n as m,o as h,r as g,s as _,t as v}from"./dist-BPoKqzeH.js";import{i as y}from"./vendor-swr-BIWyz7Rc.js";import{Ds as b,Na as x,Nl as S,Ol as C,Pl as w,Vc as T,Wa as E,Ws as D,Xs as O,Yo as k,_o as A,ao as j,bo as M,co as N,do as P,fo as F,go as I,ho as L,ic as R,io as z,lo as B,ls as V,mo as H,ol as U,oo as W,po as G,so as K,uo as q,vo as J,yl as Y,yo as X}from"./index-DRrjYYzZ.js";import{n as ee,t as te}from"./use-autosave-D6UkH_Ga.js";import{t as ne}from"./page-tabs-BaEQMYm_.js";import{F as re,a as ie,i as ae}from"./connectors-api-FBOe9SWC.js";var Z=n(),Q=e(t(),1),$=r(),oe=new Set([`profile`,`understanding`,`collaboration`,`sources`,`dreaming`,`privacy`]),se=`w-full rounded-xl border border-edge bg-surface-panel px-3 py-2 text-sm text-fg outline-none placeholder:text-fg-subtle focus:border-accent/60 focus:ring-2 focus:ring-accent/20`,ce={en:{title:`About You`,subtitle:`What xopc knows, why it knows it, and how it should work with you.`,profile:`Profile`,understanding:`Understanding`,collaboration:`Working agreement`,sources:`Sources`,dreaming:`Background review`,privacy:`Privacy`,profileHint:`Facts you provide directly. These are available across conversations.`,done:`Done`,required:`This field cannot be empty.`,callName:`What should xopc call you?`,callNamePlaceholder:`For example: Alex, Joyce, or Dr. Chen`,role:`Your role`,rolePlaceholder:`For example: product designer, founder, or engineer`,primaryGoal:`What are you mainly trying to achieve?`,primaryGoalPlaceholder:`The outcome you want xopc to optimize for`,pronouns:`Pronouns (optional)`,pronounsPlaceholder:`For example: she/her, he/him, they/them`,timezone:`Timezone`,locale:`Language / locale`,detect:`Use this device`,understoodHint:`Reviewable beliefs learned from your conversations and work. Inferences stay pending until confirmed.`,addUnderstanding:`Add understanding`,statement:`What should xopc understand?`,kind:`Type`,add:`Add`,cancel:`Cancel`,active:`Active`,review:`Needs review`,confirm:`Confirm`,reject:`Wrong`,edit:`Edit`,delete:`Delete`,confirmDelete:`Delete now`,rulesHint:`Explicit instructions for how xopc should collaborate with you. Rules outrank inferred understanding.`,addRule:`Add rule`,ruleStatement:`How should xopc work with you?`,category:`Category`,disable:`Disable`,enable:`Enable`,emptyUnderstanding:`Nothing here yet. Tell xopc something explicitly, or confirm a suggestion after it learns one.`,qualityTitle:`Learning quality`,qualityActive:`Confirmed`,qualityPending:`Pending review`,qualityAcceptance:`30-day acceptance`,qualityRecall:`Helpful recall`,qualityNoData:`Not enough feedback yet`,emptyRules:`No working agreements yet.`,sourceExplicit:`You said this directly`,sourceInferred:`Inferred — may be wrong`,sourceObserved:`Observed across prior work`,sourcesHint:`Review every granted source, its access mode, retention, and last collection. Revoking stops future learning.`,manageSources:`Connect another source`,authorizedSources:`Authorized sources`,connectorsTitle:`Connectors`,openConnector:`Open connector`,noSources:`No sources are authorized.`,noConnectors:`No connectors are installed.`,connected:`Connected`,unavailable:`Needs attention`,revoke:`Revoke source`,revokeHint:`Revoke this source and remove its derived understanding`,confirmRevoke:`Confirm revoke`,revoking:`Revoking…`,revokeDone:`Source revoked and derived understanding removed.`,refresh:`Update`,refreshing:`Updating…`,refreshStarted:`Update started.`,actionFailed:`Action failed`,once:`One-time`,continuous:`Continuous`,localOnly:`Local only`,derivedOnly:`Derived understanding only`,focuses:`Current focuses`,focusHint:`Candidate focuses never activate until you confirm them.`,activate:`Activate`,pause:`Pause`,complete:`Complete`,noFocuses:`No focus candidates yet.`,focusCandidate:`Suggested`,focusActive:`Active`,focusPaused:`Paused`,focusCompleted:`Completed`,confidence:`Confidence`,confidenceHigh:`High`,confidenceMedium:`Medium`,confidenceLow:`Low`,dreamingHint:`A deterministic daily review checks expiry, contradictory evidence, and corroborated candidates. It never auto-activates an inference.`,mode:`Background review`,on:`On — propose for review`,off:`Off`,reviewTime:`Daily review time`,evidenceThreshold:`Supporting evidence required`,scanLimit:`Maximum items per run`,lastRun:`Last review`,neverRun:`Not run yet`,runCompleted:`Completed`,runFailed:`Failed`,runRunning:`Running`,runItems:`items`,privacyHint:`Choose how generic memory providers handle sensitive content. Structured user understanding applies stricter rules of its own.`,sensitivePolicy:`Sensitive memory writes`,policyDeny:`Do not store`,policyConfirm:`Ask before storing`,policyAllow:`Store when relevant`,privacyWarning:`Secret and regulated content is never stored as structured user understanding, regardless of this setting.`,error:`Could not load your context.`,retry:`Try again`},zh:{title:`关于你`,subtitle:`清楚查看 xopc 知道什么、为什么知道,以及应该如何与你协作。`,profile:`个人资料`,understanding:`对你的理解`,collaboration:`协作约定`,sources:`数据来源`,dreaming:`后台复核`,privacy:`隐私`,profileHint:`由你直接提供的事实,会在不同对话中使用。`,done:`完成`,required:`此项不能为空。`,callName:`希望 xopc 如何称呼你?`,callNamePlaceholder:`例如:Mic、Joyce、张老师`,role:`你的角色`,rolePlaceholder:`例如:产品设计师、创业者、工程师`,primaryGoal:`你目前最想达成什么?`,primaryGoalPlaceholder:`希望 xopc 优先帮助你实现的结果`,pronouns:`代词(可选)`,pronounsPlaceholder:`例如:she/her、he/him、they/them`,timezone:`时区`,locale:`语言 / 地区`,detect:`使用本机时区`,understoodHint:`从对话和工作中形成、可复核的理解。推断内容在你确认前保持待审核。`,addUnderstanding:`添加理解`,statement:`希望 xopc 了解什么?`,kind:`类型`,add:`添加`,cancel:`取消`,active:`使用中`,review:`待审核`,confirm:`确认`,reject:`不正确`,edit:`编辑`,delete:`删除`,confirmDelete:`确认删除`,rulesHint:`你明确设定的协作方式。协作约定的优先级高于推断出的理解。`,addRule:`添加约定`,ruleStatement:`希望 xopc 如何与你协作?`,category:`类别`,disable:`停用`,enable:`启用`,emptyUnderstanding:`还没有内容。你可以直接告诉 xopc,或在它学到建议后进行确认。`,emptyRules:`还没有协作约定。`,qualityTitle:`学习质量`,qualityActive:`已确认`,qualityPending:`待审核`,qualityAcceptance:`30 天采纳率`,qualityRecall:`有效召回`,qualityNoData:`反馈数据还不足`,sourceExplicit:`由你直接告知`,sourceInferred:`推断内容,可能有误`,sourceObserved:`从过往工作中观察到`,sourcesHint:`查看每项授权的访问方式、保留策略和最近采集时间;撤销后将停止后续学习。`,manageSources:`连接其他来源`,authorizedSources:`已授权数据来源`,connectorsTitle:`连接器`,openConnector:`打开连接器`,noSources:`尚未授权任何来源。`,noConnectors:`尚未安装连接器。`,connected:`已连接`,unavailable:`需要处理`,revoke:`撤销来源`,revokeHint:`撤销此来源并删除由它产生的理解`,confirmRevoke:`确认撤销`,revoking:`正在撤销…`,revokeDone:`已撤销来源并删除派生理解。`,refresh:`更新`,refreshing:`正在更新…`,refreshStarted:`更新任务已开始。`,actionFailed:`操作失败`,once:`仅一次`,continuous:`持续更新`,localOnly:`仅本地处理`,derivedOnly:`仅保留派生理解`,focuses:`当前关注`,focusHint:`候选关注不会自动生效,只有你确认后才会启用。`,activate:`启用`,pause:`暂停`,complete:`完成`,noFocuses:`还没有候选关注。`,focusCandidate:`待确认`,focusActive:`进行中`,focusPaused:`已暂停`,focusCompleted:`已完成`,confidence:`置信度`,confidenceHigh:`高`,confidenceMedium:`中`,confidenceLow:`低`,dreamingHint:`每天进行一次确定性复核,检查过期、矛盾证据和得到佐证的候选理解;推断内容不会自动生效。`,mode:`后台复核`,on:`开启并生成待审核项`,off:`关闭`,reviewTime:`每日复核时间`,evidenceThreshold:`所需支持证据数`,scanLimit:`每次最多检查`,lastRun:`最近一次复核`,neverRun:`尚未运行`,runCompleted:`已完成`,runFailed:`失败`,runRunning:`运行中`,runItems:`项`,privacyHint:`选择通用记忆服务如何处理敏感内容;结构化用户理解有独立且更严格的规则。`,sensitivePolicy:`敏感记忆写入`,policyDeny:`不保存`,policyConfirm:`保存前询问`,policyAllow:`相关时允许保存`,privacyWarning:`无论这里如何设置,秘密和受监管内容都不会保存为结构化用户理解。`,error:`无法加载用户上下文。`,retry:`重试`}},le={preference:{en:`Preference`,zh:`偏好`},boundary:{en:`Boundary`,zh:`边界`},relationship:{en:`Relationship`,zh:`关系`},routine:{en:`Routine`,zh:`习惯`},current_state:{en:`Current state`,zh:`当前状态`},long_term_goal:{en:`Long-term goal`,zh:`长期目标`},project_context:{en:`Project context`,zh:`项目背景`},task_lesson:{en:`Task lesson`,zh:`任务经验`},derived_insight:{en:`Insight`,zh:`洞察`}},ue={communication:{en:`Communication`,zh:`沟通`},execution:{en:`Execution`,zh:`执行`},boundary:{en:`Boundary`,zh:`边界`},routine:{en:`Routine`,zh:`习惯`},proactive:{en:`Proactive help`,zh:`主动协助`}};function de(e){let t=(0,Z.c)(2),{children:n}=e,r;return t[0]===n?r=t[1]:(r=(0,$.jsx)(`section`,{className:`rounded-2xl border border-edge bg-surface-panel p-4 sm:p-5`,children:n}),t[0]=n,t[1]=r),r}function fe(e){let t=(0,Z.c)(2),{children:n}=e,r;return t[0]===n?r=t[1]:(r=(0,$.jsx)(`div`,{className:`rounded-2xl border border-dashed border-edge px-5 py-10 text-center text-sm text-fg-muted`,children:n}),t[0]=n,t[1]=r),r}function pe(e){let t=(0,Z.c)(33),{open:n,onOpenChange:r,title:i,description:a,submitLabel:o,cancelLabel:s,submitDisabled:c,onSubmit:l,children:d}=e,y;t[0]===Symbol.for(`react.memo_cache_sentinel`)?(y=(0,$.jsx)(f,{className:`fixed inset-0 z-[80] bg-scrim backdrop-blur-[2px]`}),t[0]=y):y=t[0];let b;t[1]===i?b=t[2]:(b=(0,$.jsx)(_,{className:`text-base font-semibold text-fg`,children:i}),t[1]=i,t[2]=b);let x;t[3]===a?x=t[4]:(x=(0,$.jsx)(p,{className:`mt-1 text-xs leading-5 text-fg-muted`,children:a}),t[3]=a,t[4]=x);let S;t[5]!==b||t[6]!==x?(S=(0,$.jsxs)(`div`,{className:`min-w-0`,children:[b,x]}),t[5]=b,t[6]=x,t[7]=S):S=t[7];let C;t[8]===Symbol.for(`react.memo_cache_sentinel`)?(C=(0,$.jsx)(k,{className:`size-4`}),t[8]=C):C=t[8];let w;t[9]===s?w=t[10]:(w=(0,$.jsx)(m,{asChild:!0,children:(0,$.jsx)(u,{type:`button`,variant:`ghost`,className:`size-8 shrink-0 p-0`,"aria-label":s,children:C})}),t[9]=s,t[10]=w);let T;t[11]!==S||t[12]!==w?(T=(0,$.jsxs)(`header`,{className:`flex shrink-0 items-start justify-between gap-3 border-b border-edge px-5 py-4`,children:[S,w]}),t[11]=S,t[12]=w,t[13]=T):T=t[13];let E;t[14]===d?E=t[15]:(E=(0,$.jsx)(`div`,{className:`min-h-0 flex-1 space-y-4 overflow-y-auto p-5`,children:d}),t[14]=d,t[15]=E);let D;t[16]===s?D=t[17]:(D=(0,$.jsx)(m,{asChild:!0,children:(0,$.jsx)(u,{type:`button`,children:s})}),t[16]=s,t[17]=D);let O;t[18]!==c||t[19]!==o?(O=(0,$.jsx)(u,{type:`submit`,variant:`primary`,disabled:c,children:o}),t[18]=c,t[19]=o,t[20]=O):O=t[20];let A;t[21]!==O||t[22]!==D?(A=(0,$.jsxs)(`footer`,{className:`flex shrink-0 justify-end gap-2 border-t border-edge px-5 py-3`,children:[D,O]}),t[21]=O,t[22]=D,t[23]=A):A=t[23];let j;t[24]!==l||t[25]!==A||t[26]!==T||t[27]!==E?(j=(0,$.jsxs)(h,{children:[y,(0,$.jsx)(g,{className:`fixed left-1/2 top-1/2 z-[90] h-[min(30rem,calc(100vh-2rem))] w-[min(36rem,calc(100vw-2rem))] -translate-x-1/2 -translate-y-1/2 overflow-hidden rounded-2xl border border-edge bg-surface-panel shadow-popover outline-none`,children:(0,$.jsxs)(`form`,{className:`flex h-full min-h-0 flex-col`,onSubmit:l,children:[T,E,A]})})]}),t[24]=l,t[25]=A,t[26]=T,t[27]=E,t[28]=j):j=t[28];let M;return t[29]!==r||t[30]!==n||t[31]!==j?(M=(0,$.jsx)(v,{open:n,onOpenChange:r,children:j}),t[29]=r,t[30]=n,t[31]=j,t[32]=M):M=t[32],M}function me(e){return JSON.stringify(e)}function he(e){let t=(0,Z.c)(10),[n,r]=(0,Q.useState)(e),i;t[0]===e?i=t[1]:(i=me(e),t[0]=e,t[1]=i);let a=(0,Q.useRef)(i),o;t[2]===e?o=t[3]:(o=me(e),t[2]=e,t[3]=o);let s=o,c,l;t[4]!==e||t[5]!==s?(c=()=>{if(s===a.current)return;let t=a.current;a.current=s,r(n=>me(n)===t?e:n)},l=[e,s],t[4]=e,t[5]=s,t[6]=c,t[7]=l):(c=t[6],l=t[7]),(0,Q.useEffect)(c,l);let u;return t[8]===n?u=t[9]:(u=[n,r],t[8]=n,t[9]=u),u}function ge(e){return{callName:e.callName,role:e.role,primaryGoal:e.primaryGoal,pronouns:e.pronouns,timezone:e.timezone,locale:e.locale}}function _e(){let e=(0,Z.c)(87),t=d(xe),n=ce[t],[r,a]=i(),o;if(e[0]!==r){let t=r.get(`tab`);o=t&&oe.has(t)?t:`profile`,e[0]=r,e[1]=o}else o=e[1];let s=o,c=E(be),l=E(ye),{data:u,error:f,isLoading:p,mutate:m}=y(`/api/you`,P),h;e[2]!==l||e[3]!==c||e[4]!==n.subtitle||e[5]!==n.title?(h=()=>(c({startExtra:null,main:(0,$.jsxs)(`div`,{children:[(0,$.jsx)(`h1`,{className:`text-base font-semibold text-fg`,children:n.title}),(0,$.jsx)(`p`,{className:`hidden text-xs text-fg-muted sm:block`,children:n.subtitle})]}),end:null}),l),e[2]=l,e[3]=c,e[4]=n.subtitle,e[5]=n.title,e[6]=h):h=e[6];let g;if(e[7]!==l||e[8]!==c||e[9]!==n?(g=[l,c,n],e[7]=l,e[8]=c,e[9]=n,e[10]=g):g=e[10],(0,Q.useEffect)(h,g),p){let t;return e[11]===Symbol.for(`react.memo_cache_sentinel`)?(t=(0,$.jsxs)(`div`,{className:`space-y-4 p-4 sm:p-6`,children:[(0,$.jsx)(x,{className:`h-10 w-96 max-w-full`}),(0,$.jsx)(x,{className:`h-72 rounded-2xl`})]}),e[11]=t):t=e[11],t}if(f||!u){let t;e[12]===m?t=e[13]:(t=()=>void m(),e[12]=m,e[13]=t);let r;e[14]!==n.retry||e[15]!==t?(r=(0,$.jsx)(`button`,{className:`text-accent hover:underline`,onClick:t,children:n.retry}),e[14]=n.retry,e[15]=t,e[16]=r):r=e[16];let i;return e[17]!==n.error||e[18]!==r?(i=(0,$.jsx)(`div`,{className:`p-6`,children:(0,$.jsxs)(fe,{children:[n.error,` `,r]})}),e[17]=n.error,e[18]=r,e[19]=i):i=e[19],i}let _=n.title,v;e[20]===a?v=e[21]:(v=e=>a({tab:e}),e[20]=a,e[21]=v);let C;e[22]===n.profile?C=e[23]:(C={id:`profile`,label:n.profile,icon:Y},e[22]=n.profile,e[23]=C);let D;e[24]!==u.understandings.length||e[25]!==n.understanding?(D={id:`understanding`,label:n.understanding,icon:w,count:u.understandings.length},e[24]=u.understandings.length,e[25]=n.understanding,e[26]=D):D=e[26];let O=n.collaboration,k;e[27]===u.rules?k=e[28]:(k=u.rules.filter(ve),e[27]=u.rules,e[28]=k);let A;e[29]!==n.collaboration||e[30]!==k.length?(A={id:`collaboration`,label:O,icon:T,count:k.length},e[29]=n.collaboration,e[30]=k.length,e[31]=A):A=e[31];let j;e[32]===n.sources?j=e[33]:(j={id:`sources`,label:n.sources,icon:S},e[32]=n.sources,e[33]=j);let M;e[34]===n.dreaming?M=e[35]:(M={id:`dreaming`,label:n.dreaming,icon:R},e[34]=n.dreaming,e[35]=M);let N;e[36]===n.privacy?N=e[37]:(N={id:`privacy`,label:n.privacy,icon:b},e[36]=n.privacy,e[37]=N);let F;e[38]!==j||e[39]!==M||e[40]!==N||e[41]!==C||e[42]!==D||e[43]!==A?(F=[C,D,A,j,M,N],e[38]=j,e[39]=M,e[40]=N,e[41]=C,e[42]=D,e[43]=A,e[44]=F):F=e[44];let I;e[45]!==n.title||e[46]!==F||e[47]!==v||e[48]!==s?(I=(0,$.jsx)(ne,{ariaLabel:_,activeTab:s,onChange:v,items:F}),e[45]=n.title,e[46]=F,e[47]=v,e[48]=s,e[49]=I):I=e[49];let L;e[50]!==u.profile||e[51]!==t||e[52]!==m||e[53]!==n||e[54]!==s?(L=s===`profile`?(0,$.jsx)(Se,{profile:u.profile,language:t,t:n,onChanged:e=>m(t=>t&&{...t,profile:e},{revalidate:!1})}):null,e[50]=u.profile,e[51]=t,e[52]=m,e[53]=n,e[54]=s,e[55]=L):L=e[55];let z;e[56]!==u.quality||e[57]!==u.understandings||e[58]!==t||e[59]!==m||e[60]!==n||e[61]!==s?(z=s===`understanding`?(0,$.jsx)(we,{items:u.understandings,quality:u.quality,language:t,t:n,onChanged:e=>e?m(t=>t&&{...t,understandings:t.understandings.map(t=>t.id===e.id?e:t)},{revalidate:!0}):m()}):null,e[56]=u.quality,e[57]=u.understandings,e[58]=t,e[59]=m,e[60]=n,e[61]=s,e[62]=z):z=e[62];let B;e[63]!==u.rules||e[64]!==t||e[65]!==m||e[66]!==n||e[67]!==s?(B=s===`collaboration`?(0,$.jsx)(Me,{rules:u.rules,language:t,t:n,onChanged:()=>m()}):null,e[63]=u.rules,e[64]=t,e[65]=m,e[66]=n,e[67]=s,e[68]=B):B=e[68];let V;e[69]!==n||e[70]!==s?(V=s===`sources`?(0,$.jsx)(Fe,{t:n}):null,e[69]=n,e[70]=s,e[71]=V):V=e[71];let H;e[72]!==u.consolidation?.lastRun||e[73]!==n||e[74]!==s?(H=s===`dreaming`?(0,$.jsx)(Ie,{lastRun:u.consolidation?.lastRun??null,t:n}):null,e[72]=u.consolidation?.lastRun,e[73]=n,e[74]=s,e[75]=H):H=e[75];let U;e[76]!==n||e[77]!==s?(U=s===`privacy`?(0,$.jsx)(Re,{t:n}):null,e[76]=n,e[77]=s,e[78]=U):U=e[78];let W;return e[79]!==I||e[80]!==L||e[81]!==z||e[82]!==B||e[83]!==V||e[84]!==H||e[85]!==U?(W=(0,$.jsxs)(`div`,{className:`mx-auto w-full max-w-5xl space-y-5 p-4 sm:p-6`,children:[I,L,z,B,V,H,U]}),e[79]=I,e[80]=L,e[81]=z,e[82]=B,e[83]=V,e[84]=H,e[85]=U,e[86]=W):W=e[86],W}function ve(e){return e.status===`active`}function ye(e){return e.clearPageHeader}function be(e){return e.setPageHeader}function xe(e){return e.language}function Se(e){let t=(0,Z.c)(78),{profile:n,language:r,t:i,onChanged:a}=e,o;t[0]===n?o=t[1]:(o=ge(n),t[0]=n,t[1]=o);let s=o,[c,l]=he(s),d;t[2]===c?d=t[3]:(d=me(c),t[2]=c,t[3]=d);let f;t[4]===s?f=t[5]:(f=me(s),t[4]=s,t[5]=f);let p=d!==f,m;t[6]!==a||t[7]!==n?(m=async e=>{await a((await M({...e,accessibility:n.accessibility})).profile)},t[6]=a,t[7]=n,t[8]=m):m=t[8];let h;t[9]!==c||t[10]!==p||t[11]!==m?(h={value:c,dirty:p,delayMs:500,onSave:m},t[9]=c,t[10]=p,t[11]=m,t[12]=h):h=t[12];let g=te(h),_;t[13]!==c||t[14]!==l?(_=(e,t,n)=>(0,$.jsxs)(`label`,{className:`space-y-1.5 text-sm`,children:[(0,$.jsx)(`span`,{className:`font-medium text-fg`,children:t}),(0,$.jsx)(`input`,{className:se,placeholder:n,value:c[e],onChange:t=>l(n=>({...n,[e]:t.target.value}))})]}),t[13]=c,t[14]=l,t[15]=_):_=t[15];let v=_,y=g.onBlurCapture,b;t[16]===i.profileHint?b=t[17]:(b=(0,$.jsx)(`p`,{className:`mb-5 text-sm leading-6 text-fg-muted`,children:i.profileHint}),t[16]=i.profileHint,t[17]=b);let x;t[18]!==v||t[19]!==i.callName||t[20]!==i.callNamePlaceholder?(x=v(`callName`,i.callName,i.callNamePlaceholder),t[18]=v,t[19]=i.callName,t[20]=i.callNamePlaceholder,t[21]=x):x=t[21];let S;t[22]!==v||t[23]!==i.role||t[24]!==i.rolePlaceholder?(S=v(`role`,i.role,i.rolePlaceholder),t[22]=v,t[23]=i.role,t[24]=i.rolePlaceholder,t[25]=S):S=t[25];let C;t[26]===i.primaryGoal?C=t[27]:(C=(0,$.jsx)(`span`,{className:`font-medium text-fg`,children:i.primaryGoal}),t[26]=i.primaryGoal,t[27]=C);let w;t[28]===l?w=t[29]:(w=e=>l(t=>({...t,primaryGoal:e.target.value})),t[28]=l,t[29]=w);let T;t[30]!==c.primaryGoal||t[31]!==i.primaryGoalPlaceholder||t[32]!==w?(T=(0,$.jsx)(`textarea`,{className:se,rows:3,placeholder:i.primaryGoalPlaceholder,value:c.primaryGoal,onChange:w}),t[30]=c.primaryGoal,t[31]=i.primaryGoalPlaceholder,t[32]=w,t[33]=T):T=t[33];let E;t[34]!==C||t[35]!==T?(E=(0,$.jsxs)(`label`,{className:`space-y-1.5 text-sm sm:col-span-2`,children:[C,T]}),t[34]=C,t[35]=T,t[36]=E):E=t[36];let D;t[37]!==v||t[38]!==r||t[39]!==i.pronouns||t[40]!==i.pronounsPlaceholder?(D=r===`en`?v(`pronouns`,i.pronouns,i.pronounsPlaceholder):null,t[37]=v,t[38]=r,t[39]=i.pronouns,t[40]=i.pronounsPlaceholder,t[41]=D):D=t[41];let O;t[42]===i.timezone?O=t[43]:(O=(0,$.jsx)(`span`,{className:`font-medium text-fg`,children:i.timezone}),t[42]=i.timezone,t[43]=O);let k;t[44]===l?k=t[45]:(k=e=>l(t=>({...t,timezone:e.target.value})),t[44]=l,t[45]=k);let A;t[46]!==c.timezone||t[47]!==k?(A=(0,$.jsx)(`input`,{className:`${se} min-w-0 flex-1`,value:c.timezone,onChange:k}),t[46]=c.timezone,t[47]=k,t[48]=A):A=t[48];let j;t[49]===l?j=t[50]:(j=()=>l(Ce),t[49]=l,t[50]=j);let N;t[51]!==i.detect||t[52]!==j?(N=(0,$.jsx)(u,{className:`shrink-0 whitespace-nowrap`,onClick:j,children:i.detect}),t[51]=i.detect,t[52]=j,t[53]=N):N=t[53];let P;t[54]!==A||t[55]!==N?(P=(0,$.jsxs)(`div`,{className:`flex gap-2`,children:[A,N]}),t[54]=A,t[55]=N,t[56]=P):P=t[56];let F;t[57]!==O||t[58]!==P?(F=(0,$.jsxs)(`label`,{className:`space-y-1.5 text-sm`,children:[O,P]}),t[57]=O,t[58]=P,t[59]=F):F=t[59];let I;t[60]!==v||t[61]!==i.locale?(I=v(`locale`,i.locale),t[60]=v,t[61]=i.locale,t[62]=I):I=t[62];let L;t[63]!==x||t[64]!==S||t[65]!==E||t[66]!==D||t[67]!==F||t[68]!==I?(L=(0,$.jsxs)(`div`,{className:`grid gap-4 sm:grid-cols-2`,children:[x,S,E,D,F,I]}),t[63]=x,t[64]=S,t[65]=E,t[66]=D,t[67]=F,t[68]=I,t[69]=L):L=t[69];let R;t[70]!==g.error||t[71]!==g.status?(R=(0,$.jsx)(`div`,{className:`mt-5 flex justify-end`,children:(0,$.jsx)(ee,{status:g.status,error:g.error})}),t[70]=g.error,t[71]=g.status,t[72]=R):R=t[72];let z;return t[73]!==g.onBlurCapture||t[74]!==L||t[75]!==R||t[76]!==b?(z=(0,$.jsx)(de,{children:(0,$.jsxs)(`div`,{onBlurCapture:y,children:[b,L,R]})}),t[73]=g.onBlurCapture,t[74]=L,t[75]=R,t[76]=b,t[77]=z):z=t[77],z}function Ce(e){return{...e,timezone:B()}}function we(e){let t=(0,Z.c)(78),{items:n,quality:r,language:i,t:a,onChanged:c}=e,[l,d]=(0,Q.useState)(!1),[f,p]=(0,Q.useState)(``),[m,h]=(0,Q.useState)(`preference`),g;t[0]===n?g=t[1]:(g=n.filter(Ee),t[0]=n,t[1]=g);let _=g,v;t[2]===n?v=t[3]:(v=n.filter(Te),t[2]=n,t[3]=v);let y=v,b;t[4]!==m||t[5]!==c||t[6]!==f?(b=async e=>{e.preventDefault(),f.trim()&&(await j({statement:f,kind:m}),p(``),d(!1),await c())},t[4]=m,t[5]=c,t[6]=f,t[7]=b):b=t[7];let x=b,S;t[8]===a.understoodHint?S=t[9]:(S=(0,$.jsx)(`p`,{className:`max-w-2xl text-sm leading-6 text-fg-muted`,children:a.understoodHint}),t[8]=a.understoodHint,t[9]=S);let C,w;t[10]===Symbol.for(`react.memo_cache_sentinel`)?(C=()=>d(!0),w=(0,$.jsx)(D,{className:`size-4`}),t[10]=C,t[11]=w):(C=t[10],w=t[11]);let T;t[12]===a.addUnderstanding?T=t[13]:(T=(0,$.jsxs)(u,{variant:`primary`,onClick:C,children:[w,a.addUnderstanding]}),t[12]=a.addUnderstanding,t[13]=T);let E;t[14]!==S||t[15]!==T?(E=(0,$.jsxs)(`div`,{className:`flex items-start justify-between gap-4`,children:[S,T]}),t[14]=S,t[15]=T,t[16]=E):E=t[16];let O=a.addUnderstanding,k=a.understoodHint,A=a.add,M=a.cancel,N;t[17]===f?N=t[18]:(N=f.trim(),t[17]=f,t[18]=N);let P=!N,F;t[19]===a.statement?F=t[20]:(F=(0,$.jsx)(`span`,{className:`font-medium text-fg`,children:a.statement}),t[19]=a.statement,t[20]=F);let I;t[21]===Symbol.for(`react.memo_cache_sentinel`)?(I=e=>p(e.target.value),t[21]=I):I=t[21];let L;t[22]!==f||t[23]!==a.statement?(L=(0,$.jsx)(`textarea`,{autoFocus:!0,className:se,rows:4,placeholder:a.statement,value:f,onChange:I}),t[22]=f,t[23]=a.statement,t[24]=L):L=t[24];let R;t[25]!==F||t[26]!==L?(R=(0,$.jsxs)(`label`,{className:`block space-y-1.5 text-sm`,children:[F,L]}),t[25]=F,t[26]=L,t[27]=R):R=t[27];let z;t[28]===a.kind?z=t[29]:(z=(0,$.jsx)(`span`,{className:`font-medium text-fg`,children:a.kind}),t[28]=a.kind,t[29]=z);let B,V;t[30]===Symbol.for(`react.memo_cache_sentinel`)?(B=e=>h(e.target.value),V=Object.entries(le),t[30]=B,t[31]=V):(B=t[30],V=t[31]);let H;t[32]===i?H=t[33]:(H=V.map(e=>{let[t,n]=e;return(0,$.jsx)(s,{value:t,children:n[i]},t)}),t[32]=i,t[33]=H);let U;t[34]!==m||t[35]!==H?(U=(0,$.jsx)(o,{value:m,onChange:B,children:H}),t[34]=m,t[35]=H,t[36]=U):U=t[36];let W;t[37]!==z||t[38]!==U?(W=(0,$.jsxs)(`label`,{className:`block space-y-1.5 text-sm`,children:[z,U]}),t[37]=z,t[38]=U,t[39]=W):W=t[39];let G;t[40]!==l||t[41]!==x||t[42]!==a.add||t[43]!==a.addUnderstanding||t[44]!==a.cancel||t[45]!==a.understoodHint||t[46]!==P||t[47]!==R||t[48]!==W?(G=(0,$.jsxs)(pe,{open:l,onOpenChange:d,title:O,description:k,submitLabel:A,cancelLabel:M,submitDisabled:P,onSubmit:x,children:[R,W]}),t[40]=l,t[41]=x,t[42]=a.add,t[43]=a.addUnderstanding,t[44]=a.cancel,t[45]=a.understoodHint,t[46]=P,t[47]=R,t[48]=W,t[49]=G):G=t[49];let K;t[50]!==r||t[51]!==a?(K=(0,$.jsx)(De,{quality:r,t:a}),t[50]=r,t[51]=a,t[52]=K):K=t[52];let q;t[53]===a?q=t[54]:(q=(0,$.jsx)(Ae,{t:a}),t[53]=a,t[54]=q);let J;t[55]!==i||t[56]!==c||t[57]!==y||t[58]!==a?(J=y.length?(0,$.jsxs)(`section`,{className:`space-y-2`,children:[(0,$.jsxs)(`h2`,{className:`text-sm font-semibold text-fg`,children:[a.review,` · `,y.length]}),(0,$.jsx)(`div`,{className:`divide-y divide-edge overflow-hidden rounded-2xl border border-edge bg-surface-panel`,children:y.map(e=>(0,$.jsx)(ke,{item:e,language:i,t:a,onChanged:c},e.id))})]}):null,t[55]=i,t[56]=c,t[57]=y,t[58]=a,t[59]=J):J=t[59];let Y;t[60]!==_.length||t[61]!==a.active?(Y=(0,$.jsxs)(`h2`,{className:`text-sm font-semibold text-fg`,children:[a.active,` · `,_.length]}),t[60]=_.length,t[61]=a.active,t[62]=Y):Y=t[62];let X;t[63]!==_||t[64]!==i||t[65]!==c||t[66]!==a?(X=_.length?(0,$.jsx)(`div`,{className:`divide-y divide-edge overflow-hidden rounded-2xl border border-edge bg-surface-panel`,children:_.map(e=>(0,$.jsx)(ke,{item:e,language:i,t:a,onChanged:c},e.id))}):(0,$.jsx)(fe,{children:a.emptyUnderstanding}),t[63]=_,t[64]=i,t[65]=c,t[66]=a,t[67]=X):X=t[67];let ee;t[68]!==Y||t[69]!==X?(ee=(0,$.jsxs)(`section`,{className:`space-y-2`,children:[Y,X]}),t[68]=Y,t[69]=X,t[70]=ee):ee=t[70];let te;return t[71]!==G||t[72]!==K||t[73]!==q||t[74]!==J||t[75]!==ee||t[76]!==E?(te=(0,$.jsxs)(`div`,{className:`space-y-5`,children:[E,G,K,q,J,ee]}),t[71]=G,t[72]=K,t[73]=q,t[74]=J,t[75]=ee,t[76]=E,t[77]=te):te=t[77],te}function Te(e){return[`candidate`,`needs_review`,`stale`].includes(e.status)}function Ee(e){return e.status===`active`}function De(e){let t=(0,Z.c)(32),{quality:n,t:r}=e,i;t[0]===r.qualityNoData?i=t[1]:(i=e=>e==null?r.qualityNoData:`${Math.round(e*100)}%`,t[0]=r.qualityNoData,t[1]=i);let a=i,o=r.qualityActive,s=String(n.records.active),c;t[2]!==r.qualityActive||t[3]!==s?(c=[o,s],t[2]=r.qualityActive,t[3]=s,t[4]=c):c=t[4];let l=r.qualityPending,u=String(n.records.candidate+n.records.needsReview),d;t[5]!==r.qualityPending||t[6]!==u?(d=[l,u],t[5]=r.qualityPending,t[6]=u,t[7]=d):d=t[7];let f=r.qualityAcceptance,p;t[8]!==n.decisions.acceptanceRate||t[9]!==a?(p=a(n.decisions.acceptanceRate),t[8]=n.decisions.acceptanceRate,t[9]=a,t[10]=p):p=t[10];let m;t[11]!==r.qualityAcceptance||t[12]!==p?(m=[f,p],t[11]=r.qualityAcceptance,t[12]=p,t[13]=m):m=t[13];let h=r.qualityRecall,g;t[14]!==n.recall.helpfulRate||t[15]!==a?(g=a(n.recall.helpfulRate),t[14]=n.recall.helpfulRate,t[15]=a,t[16]=g):g=t[16];let _;t[17]!==r.qualityRecall||t[18]!==g?(_=[h,g],t[17]=r.qualityRecall,t[18]=g,t[19]=_):_=t[19];let v;t[20]!==m||t[21]!==_||t[22]!==c||t[23]!==d?(v=[c,d,m,_],t[20]=m,t[21]=_,t[22]=c,t[23]=d,t[24]=v):v=t[24];let y=v,b;t[25]===r.qualityTitle?b=t[26]:(b=(0,$.jsx)(`h2`,{className:`text-xs font-medium text-fg-muted`,children:r.qualityTitle}),t[25]=r.qualityTitle,t[26]=b);let x;t[27]===y?x=t[28]:(x=y.map(Oe),t[27]=y,t[28]=x);let S;return t[29]!==b||t[30]!==x?(S=(0,$.jsxs)(`section`,{className:`flex flex-wrap items-center gap-x-5 gap-y-2 rounded-xl bg-surface-muted px-3 py-2.5`,children:[b,x]}),t[29]=b,t[30]=x,t[31]=S):S=t[31],S}function Oe(e){let[t,n]=e;return(0,$.jsxs)(`div`,{className:`flex items-baseline gap-1.5 text-xs`,children:[(0,$.jsx)(`span`,{className:`text-fg-subtle`,children:t}),(0,$.jsx)(`span`,{className:`font-semibold text-fg`,children:n})]},t)}function ke(e){let t=(0,Z.c)(60),{item:n,language:r,t:i,onChanged:a}=e,[o,s]=(0,Q.useState)(!1),[c,l]=(0,Q.useState)(!1),[d,f]=he(n.statement),p=d!==n.statement,m;t[0]===i.required?m=t[1]:(m=e=>e.trim()?null:i.required,t[0]=i.required,t[1]=m);let h;t[2]!==n.id||t[3]!==a?(h=async e=>{await a((await A(n.id,{statement:e})).understanding)},t[2]=n.id,t[3]=a,t[4]=h):h=t[4];let g;t[5]!==d||t[6]!==o||t[7]!==p||t[8]!==m||t[9]!==h?(g={value:d,dirty:p,enabled:o,delayMs:500,validate:m,onSave:h},t[5]=d,t[6]=o,t[7]=p,t[8]=m,t[9]=h,t[10]=g):g=t[10];let _=te(g),v;t[11]!==d||t[12]!==o||t[13]!==f?(v=o?(0,$.jsx)(`textarea`,{autoFocus:!0,className:se,value:d,onChange:e=>f(e.target.value),rows:3}):(0,$.jsx)(`p`,{className:`text-sm leading-6 text-fg`,children:d}),t[11]=d,t[12]=o,t[13]=f,t[14]=v):v=t[14];let y=le[n.kind][r],b;t[15]===y?b=t[16]:(b=(0,$.jsx)(`span`,{children:y}),t[15]=y,t[16]=b);let x;t[17]===Symbol.for(`react.memo_cache_sentinel`)?(x=(0,$.jsx)(`span`,{children:`·`}),t[17]=x):x=t[17];let S=n.explicitness===`explicit`?i.sourceExplicit:n.explicitness===`observed`?i.sourceObserved:i.sourceInferred,C;t[18]===S?C=t[19]:(C=(0,$.jsx)(`span`,{children:S}),t[18]=S,t[19]=C);let w;t[20]!==C||t[21]!==b?(w=(0,$.jsxs)(`div`,{className:`mt-1 flex flex-wrap items-center gap-2 text-[11px] text-fg-subtle`,children:[b,x,C]}),t[20]=C,t[21]=b,t[22]=w):w=t[22];let T;t[23]!==w||t[24]!==v?(T=(0,$.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[v,w]}),t[23]=w,t[24]=v,t[25]=T):T=t[25];let E;t[26]!==_||t[27]!==o||t[28]!==i.done||t[29]!==i.edit?(E=o?(0,$.jsx)(u,{variant:`ghost`,onClick:()=>{_.flush(),s(!1)},children:i.done}):(0,$.jsxs)(u,{variant:`ghost`,onClick:()=>s(!0),children:[(0,$.jsx)(O,{className:`size-3.5`}),i.edit]}),t[26]=_,t[27]=o,t[28]=i.done,t[29]=i.edit,t[30]=E):E=t[30];let D;t[31]!==n.id||t[32]!==n.status||t[33]!==a||t[34]!==i.confirm||t[35]!==i.reject?(D=n.status===`active`?null:(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(u,{variant:`primary`,onClick:async()=>{await a((await A(n.id,{status:`active`})).understanding)},children:i.confirm}),(0,$.jsx)(u,{onClick:async()=>{await a((await A(n.id,{status:`rejected`})).understanding)},children:i.reject})]}),t[31]=n.id,t[32]=n.status,t[33]=a,t[34]=i.confirm,t[35]=i.reject,t[36]=D):D=t[36];let k;t[37]!==c||t[38]!==n.id||t[39]!==a?(k=async()=>{if(!c){l(!0);return}await K(n.id),l(!1),await a()},t[37]=c,t[38]=n.id,t[39]=a,t[40]=k):k=t[40];let j;t[41]===Symbol.for(`react.memo_cache_sentinel`)?(j=(0,$.jsx)(V,{className:`size-3.5`}),t[41]=j):j=t[41];let M=c?i.confirmDelete:i.delete,N;t[42]!==k||t[43]!==M?(N=(0,$.jsxs)(u,{variant:`ghost`,className:`text-danger`,onClick:k,children:[j,M]}),t[42]=k,t[43]=M,t[44]=N):N=t[44];let P;t[45]!==E||t[46]!==D||t[47]!==N?(P=(0,$.jsxs)(`div`,{className:`flex shrink-0 flex-wrap items-center gap-1 sm:justify-end`,children:[E,D,N]}),t[45]=E,t[46]=D,t[47]=N,t[48]=P):P=t[48];let F;t[49]!==T||t[50]!==P?(F=(0,$.jsxs)(`div`,{className:`flex flex-col gap-2 sm:flex-row sm:items-start sm:gap-4`,children:[T,P]}),t[49]=T,t[50]=P,t[51]=F):F=t[51];let I;t[52]!==_.error||t[53]!==_.status||t[54]!==o?(I=o||_.status!==`idle`?(0,$.jsx)(ee,{className:`mt-2`,status:_.status,error:_.error}):null,t[52]=_.error,t[53]=_.status,t[54]=o,t[55]=I):I=t[55];let L;return t[56]!==_.onBlurCapture||t[57]!==F||t[58]!==I?(L=(0,$.jsx)(`article`,{className:`px-4 py-3 sm:px-5`,children:(0,$.jsxs)(`div`,{onBlurCapture:_.onBlurCapture,children:[F,I]})}),t[56]=_.onBlurCapture,t[57]=F,t[58]=I,t[59]=L):L=t[59],L}function Ae(e){let t=(0,Z.c)(35),{t:n}=e,{data:r,error:i,isLoading:a,mutate:o}=y(`you-focuses`,G),[s,c]=(0,Q.useState)(null);if(a){let e;return t[0]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,$.jsx)(x,{className:`h-40 rounded-2xl`}),t[0]=e):e=t[0],e}if(i){let e;return t[1]===n.error?e=t[2]:(e=(0,$.jsx)(fe,{children:n.error}),t[1]=n.error,t[2]=e),e}let l;if(t[3]!==r||t[4]!==s||t[5]!==o||t[6]!==n.activate||t[7]!==n.complete||t[8]!==n.confidence||t[9]!==n.confidenceHigh||t[10]!==n.confidenceLow||t[11]!==n.confidenceMedium||t[12]!==n.confirmDelete||t[13]!==n.delete||t[14]!==n.focusActive||t[15]!==n.focusCandidate||t[16]!==n.focusCompleted||t[17]!==n.focusHint||t[18]!==n.focusPaused||t[19]!==n.focuses||t[20]!==n.noFocuses||t[21]!==n.pause||t[22]!==n.reject){let e=(r??[]).filter(je),i;t[24]!==n.focusActive||t[25]!==n.focusCandidate||t[26]!==n.focusCompleted||t[27]!==n.focusPaused?(i=e=>e===`candidate`?n.focusCandidate:e===`active`?n.focusActive:e===`paused`?n.focusPaused:n.focusCompleted,t[24]=n.focusActive,t[25]=n.focusCandidate,t[26]=n.focusCompleted,t[27]=n.focusPaused,t[28]=i):i=t[28];let a=i,d;t[29]!==n.confidenceHigh||t[30]!==n.confidenceLow||t[31]!==n.confidenceMedium?(d=e=>e>=.85?n.confidenceHigh:e>=.65?n.confidenceMedium:n.confidenceLow,t[29]=n.confidenceHigh,t[30]=n.confidenceLow,t[31]=n.confidenceMedium,t[32]=d):d=t[32];let f=d,p;t[33]===n.focusHint?p=t[34]:(p=(0,$.jsx)(`p`,{className:`mt-1 text-xs leading-5 text-fg-muted`,children:n.focusHint}),t[33]=n.focusHint,t[34]=p),l=(0,$.jsxs)(`section`,{className:`space-y-2`,children:[(0,$.jsxs)(`div`,{children:[(0,$.jsxs)(`h2`,{className:`text-sm font-semibold text-fg`,children:[n.focuses,` · `,e.length]}),p]}),e.length?(0,$.jsx)(`div`,{className:`divide-y divide-edge overflow-hidden rounded-2xl border border-edge bg-surface-panel`,children:e.map(e=>(0,$.jsxs)(`article`,{className:`flex flex-col gap-3 px-4 py-3 sm:flex-row sm:items-center sm:px-5`,children:[(0,$.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,$.jsxs)(`div`,{className:`flex flex-wrap items-center gap-2`,children:[(0,$.jsx)(`p`,{className:`text-sm font-medium text-fg`,children:e.title}),(0,$.jsx)(`span`,{className:`rounded-full bg-surface-muted px-2 py-0.5 text-[11px] text-fg-muted`,children:a(e.status)}),(0,$.jsxs)(`span`,{className:`text-[11px] text-fg-subtle`,children:[n.confidence,` · `,f(e.confidence)]})]}),(0,$.jsx)(`p`,{className:`mt-1 text-sm leading-5 text-fg-muted`,children:e.summary})]}),(0,$.jsxs)(`div`,{className:`flex shrink-0 flex-wrap gap-1 sm:justify-end`,children:[e.status===`active`?(0,$.jsx)(u,{onClick:async()=>{await X(e.id,`paused`),await o()},children:n.pause}):(0,$.jsx)(u,{variant:`primary`,onClick:async()=>{await X(e.id,`active`),await o()},children:n.activate}),(0,$.jsx)(u,{variant:`ghost`,onClick:async()=>{await X(e.id,`completed`),await o()},children:n.complete}),e.status===`candidate`?(0,$.jsx)(u,{variant:`ghost`,className:`text-danger`,onClick:async()=>{await X(e.id,`rejected`),await o()},children:n.reject}):null,(0,$.jsxs)(u,{variant:`ghost`,className:`text-danger`,onClick:async()=>{if(s!==e.id){c(e.id);return}await N(e.id),c(null),await o()},children:[(0,$.jsx)(V,{className:`size-3.5`}),s===e.id?n.confirmDelete:n.delete]})]})]},e.id))}):(0,$.jsx)(fe,{children:n.noFocuses})]}),t[3]=r,t[4]=s,t[5]=o,t[6]=n.activate,t[7]=n.complete,t[8]=n.confidence,t[9]=n.confidenceHigh,t[10]=n.confidenceLow,t[11]=n.confidenceMedium,t[12]=n.confirmDelete,t[13]=n.delete,t[14]=n.focusActive,t[15]=n.focusCandidate,t[16]=n.focusCompleted,t[17]=n.focusHint,t[18]=n.focusPaused,t[19]=n.focuses,t[20]=n.noFocuses,t[21]=n.pause,t[22]=n.reject,t[23]=l}else l=t[23];return l}function je(e){return e.status!==`rejected`}function Me(e){let t=(0,Z.c)(80),{rules:n,language:r,t:i,onChanged:a}=e,[c,l]=(0,Q.useState)(!1),[d,f]=(0,Q.useState)(``),[p,m]=(0,Q.useState)(`communication`),[h,g]=(0,Q.useState)(null),_,v,y,b,x,S;if(t[0]!==c||t[1]!==p||t[2]!==h||t[3]!==r||t[4]!==a||t[5]!==n||t[6]!==d||t[7]!==i.add||t[8]!==i.addRule||t[9]!==i.cancel||t[10]!==i.category||t[11]!==i.collaboration||t[12]!==i.confirmDelete||t[13]!==i.delete||t[14]!==i.disable||t[15]!==i.emptyRules||t[16]!==i.enable||t[17]!==i.ruleStatement||t[18]!==i.rulesHint){let e=n.filter(Ne),C;t[25]!==p||t[26]!==a||t[27]!==d?(C=async e=>{e.preventDefault(),d.trim()&&(await z({statement:d,category:p}),f(``),l(!1),await a())},t[25]=p,t[26]=a,t[27]=d,t[28]=C):C=t[28];let w=C;b=`space-y-5`;let T;t[29]===i.rulesHint?T=t[30]:(T=(0,$.jsx)(`p`,{className:`max-w-2xl text-sm leading-6 text-fg-muted`,children:i.rulesHint}),t[29]=i.rulesHint,t[30]=T);let E,O;t[31]===Symbol.for(`react.memo_cache_sentinel`)?(O=()=>l(!0),E=(0,$.jsx)(D,{className:`size-4`}),t[31]=E,t[32]=O):(E=t[31],O=t[32]);let k;t[33]===i.addRule?k=t[34]:(k=(0,$.jsxs)(u,{variant:`primary`,onClick:O,children:[E,i.addRule]}),t[33]=i.addRule,t[34]=k),t[35]!==k||t[36]!==T?(x=(0,$.jsxs)(`div`,{className:`flex items-start justify-between gap-4`,children:[T,k]}),t[35]=k,t[36]=T,t[37]=x):x=t[37];let A=i.addRule,j=i.rulesHint,M=i.add,N=i.cancel,P;t[38]===d?P=t[39]:(P=d.trim(),t[38]=d,t[39]=P);let F=!P,L;t[40]===i.ruleStatement?L=t[41]:(L=(0,$.jsx)(`span`,{className:`font-medium text-fg`,children:i.ruleStatement}),t[40]=i.ruleStatement,t[41]=L);let R;t[42]===Symbol.for(`react.memo_cache_sentinel`)?(R=e=>f(e.target.value),t[42]=R):R=t[42];let B;t[43]!==d||t[44]!==i.ruleStatement?(B=(0,$.jsx)(`textarea`,{autoFocus:!0,className:se,rows:4,placeholder:i.ruleStatement,value:d,onChange:R}),t[43]=d,t[44]=i.ruleStatement,t[45]=B):B=t[45];let H;t[46]!==L||t[47]!==B?(H=(0,$.jsxs)(`label`,{className:`block space-y-1.5 text-sm`,children:[L,B]}),t[46]=L,t[47]=B,t[48]=H):H=t[48];let U;t[49]===i.category?U=t[50]:(U=(0,$.jsx)(`span`,{className:`font-medium text-fg`,children:i.category}),t[49]=i.category,t[50]=U);let G,K;t[51]===Symbol.for(`react.memo_cache_sentinel`)?(G=e=>m(e.target.value),K=Object.entries(ue),t[51]=G,t[52]=K):(G=t[51],K=t[52]);let q;t[53]===r?q=t[54]:(q=K.map(e=>{let[t,n]=e;return(0,$.jsx)(s,{value:t,children:n[r]},t)}),t[53]=r,t[54]=q);let J;t[55]!==p||t[56]!==q?(J=(0,$.jsx)(o,{value:p,onChange:G,children:q}),t[55]=p,t[56]=q,t[57]=J):J=t[57];let Y;t[58]!==U||t[59]!==J?(Y=(0,$.jsxs)(`label`,{className:`block space-y-1.5 text-sm`,children:[U,J]}),t[58]=U,t[59]=J,t[60]=Y):Y=t[60],t[61]!==c||t[62]!==w||t[63]!==i.add||t[64]!==i.addRule||t[65]!==i.cancel||t[66]!==i.rulesHint||t[67]!==F||t[68]!==H||t[69]!==Y?(S=(0,$.jsxs)(pe,{open:c,onOpenChange:l,title:A,description:j,submitLabel:M,cancelLabel:N,submitDisabled:F,onSubmit:w,children:[H,Y]}),t[61]=c,t[62]=w,t[63]=i.add,t[64]=i.addRule,t[65]=i.cancel,t[66]=i.rulesHint,t[67]=F,t[68]=H,t[69]=Y,t[70]=S):S=t[70],_=`space-y-2`,v=(0,$.jsxs)(`h2`,{className:`text-sm font-semibold text-fg`,children:[i.collaboration,` · `,e.length]}),y=e.length?(0,$.jsx)(`div`,{className:`divide-y divide-edge overflow-hidden rounded-2xl border border-edge bg-surface-panel`,children:e.map(e=>(0,$.jsxs)(`article`,{className:`flex flex-col gap-2 px-4 py-3 sm:flex-row sm:items-start sm:gap-4 sm:px-5`,children:[(0,$.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,$.jsx)(`p`,{className:`text-sm leading-6 ${e.status===`disabled`?`text-fg-subtle line-through`:`text-fg`}`,children:e.statement}),(0,$.jsxs)(`div`,{className:`mt-1 flex flex-wrap items-center gap-2 text-[11px] text-fg-subtle`,children:[(0,$.jsx)(`span`,{children:ue[e.category][r]}),(0,$.jsx)(`span`,{children:`·`}),(0,$.jsxs)(`span`,{children:[`P`,e.priority]}),e.status===`disabled`?(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(`span`,{children:`·`}),(0,$.jsx)(`span`,{children:i.disable})]}):null]})]}),(0,$.jsxs)(`div`,{className:`flex shrink-0 flex-wrap items-center gap-1 sm:justify-end`,children:[(0,$.jsx)(u,{variant:`ghost`,onClick:async()=>{await I(e.id,{status:e.status===`active`?`disabled`:`active`}),await a()},children:e.status===`active`?i.disable:i.enable}),(0,$.jsxs)(u,{variant:`ghost`,className:`text-danger`,onClick:async()=>{if(h!==e.id){g(e.id);return}await W(e.id),g(null),await a()},children:[(0,$.jsx)(V,{className:`size-3.5`}),h===e.id?i.confirmDelete:i.delete]})]})]},e.id))}):(0,$.jsx)(fe,{children:i.emptyRules}),t[0]=c,t[1]=p,t[2]=h,t[3]=r,t[4]=a,t[5]=n,t[6]=d,t[7]=i.add,t[8]=i.addRule,t[9]=i.cancel,t[10]=i.category,t[11]=i.collaboration,t[12]=i.confirmDelete,t[13]=i.delete,t[14]=i.disable,t[15]=i.emptyRules,t[16]=i.enable,t[17]=i.ruleStatement,t[18]=i.rulesHint,t[19]=_,t[20]=v,t[21]=y,t[22]=b,t[23]=x,t[24]=S}else _=t[19],v=t[20],y=t[21],b=t[22],x=t[23],S=t[24];let C;t[71]!==_||t[72]!==v||t[73]!==y?(C=(0,$.jsxs)(`section`,{className:_,children:[v,y]}),t[71]=_,t[72]=v,t[73]=y,t[74]=C):C=t[74];let w;return t[75]!==b||t[76]!==x||t[77]!==S||t[78]!==C?(w=(0,$.jsxs)(`div`,{className:b,children:[x,S,C]}),t[75]=b,t[76]=x,t[77]=S,t[78]=C,t[79]=w):w=t[79],w}function Ne(e){return e.status!==`archived`}async function Pe(){let[e,t,n]=await Promise.all([q(),ie(),ae()]);return{grants:e,connectors:t,catalog:n}}function Fe({t:e}){let{data:t,error:n,isLoading:r,mutate:i}=y(`you-understanding-sources`,Pe),[o,s]=(0,Q.useState)(null),[d,f]=(0,Q.useState)(null),[p,m]=(0,Q.useState)(null);if(r)return(0,$.jsx)(x,{className:`h-64 rounded-2xl`});if(n)return(0,$.jsxs)(fe,{children:[e.error,` `,(0,$.jsx)(`button`,{className:`text-accent hover:underline`,onClick:()=>void i(),children:e.retry})]});let h=t?.grants??[],g=t?.connectors??[],_=new Map((t?.catalog??[]).map(e=>[e.id,e])),v=e=>{let t=e.displayName.trim().toLocaleLowerCase(),n=g.find(e=>e.displayName.trim().toLocaleLowerCase()===t);return n?_.get(n.connectorId):[..._.values()].find(n=>n.displayName.trim().toLocaleLowerCase()===t||e.sourceKey.toLocaleLowerCase().includes(n.id.toLocaleLowerCase()))},b=t=>`${e.actionFailed}: ${t instanceof Error?t.message:String(t)}`,S=async t=>{m(null),f(null),s({grantId:t.id,kind:`refresh`});try{await H(t.id),await i().catch(()=>void 0),m({tone:`success`,message:`${t.displayName}: ${e.refreshStarted}`})}catch(e){m({tone:`error`,message:b(e)})}finally{s(null)}},w=async t=>{if(d!==t.id){f(t.id),m(null);return}s({grantId:t.id,kind:`revoke`});try{await L(t.id),await i().catch(()=>void 0),f(null),m({tone:`success`,message:`${t.displayName}: ${e.revokeDone}`})}catch(e){m({tone:`error`,message:b(e)})}finally{s(null)}};return(0,$.jsxs)(`div`,{className:`space-y-5`,children:[(0,$.jsxs)(`div`,{className:`flex items-start justify-between gap-4`,children:[(0,$.jsx)(`p`,{className:`max-w-2xl text-sm leading-6 text-fg-muted`,children:e.sourcesHint}),(0,$.jsx)(u,{asChild:!0,variant:`primary`,children:(0,$.jsxs)(a,{to:`/connectors?understanding=1&returnTo=%2Fyou%3Ftab%3Dsources`,children:[e.manageSources,(0,$.jsx)(c,{className:`size-4`})]})})]}),p?(0,$.jsx)(`p`,{role:`status`,"aria-live":`polite`,className:`rounded-xl px-3 py-2 text-sm ${p.tone===`success`?`bg-success-soft text-success`:`bg-danger/10 text-danger`}`,children:p.message}):null,(0,$.jsxs)(`section`,{className:`space-y-2`,children:[(0,$.jsxs)(`h2`,{className:`text-sm font-semibold text-fg`,children:[e.authorizedSources,` · `,h.length]}),h.length?(0,$.jsx)(`div`,{className:`grid gap-3 sm:grid-cols-2`,children:h.map(t=>{let n=v(t);return(0,$.jsxs)(`article`,{className:`flex min-h-28 items-start gap-3 rounded-2xl border border-edge bg-surface-panel p-4`,children:[n?(0,$.jsx)(re,{connector:n,size:`sm`}):(0,$.jsx)(`span`,{className:`flex size-9 shrink-0 items-center justify-center rounded-lg border border-edge bg-surface-base`,children:(0,$.jsx)(U,{className:`size-4 text-fg-muted`})}),(0,$.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,$.jsx)(`p`,{className:`truncate text-sm font-medium text-fg`,children:t.displayName}),(0,$.jsxs)(`p`,{className:`mt-1 text-xs leading-5 text-fg-subtle`,children:[t.accessMode===`continuous`?e.continuous:e.once,` · `,t.processingPolicy===`local_only`?e.localOnly:t.retentionPolicy===`derived_only`?e.derivedOnly:t.retentionPolicy]}),t.lastCollectedAt?(0,$.jsx)(`p`,{className:`mt-1 text-xs text-fg-subtle`,children:new Date(t.lastCollectedAt).toLocaleString()}):null]}),(0,$.jsxs)(`div`,{className:`flex shrink-0 flex-wrap items-center justify-end gap-1`,children:[t.accessMode===`continuous`?(0,$.jsx)(u,{variant:`ghost`,disabled:o!==null,"aria-busy":o?.grantId===t.id&&o.kind===`refresh`,onClick:()=>void S(t),children:o?.grantId===t.id&&o.kind===`refresh`?(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(l,{className:`size-4 animate-spin`}),e.refreshing]}):e.refresh}):null,(0,$.jsx)(u,{variant:`ghost`,className:`text-danger`,title:e.revokeHint,"aria-label":`${e.revoke}: ${t.displayName}`,disabled:o!==null,"aria-busy":o?.grantId===t.id&&o.kind===`revoke`,onClick:()=>void w(t),children:o?.grantId===t.id&&o.kind===`revoke`?(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(l,{className:`size-4 animate-spin`}),e.revoking]}):d===t.id?e.confirmRevoke:e.revoke})]})]},t.id)})}):(0,$.jsx)(fe,{children:e.noSources})]}),(0,$.jsxs)(`section`,{className:`space-y-2`,children:[(0,$.jsxs)(`h2`,{className:`text-sm font-semibold text-fg`,children:[e.connectorsTitle,` · `,g.length]}),g.length?(0,$.jsx)(`div`,{className:`grid gap-3 sm:grid-cols-2`,children:g.map(t=>{let n=t.enabled&&(t.status===`connected`||t.connectionStatus===`connected`||t.authStatus===`connected`),r=_.get(t.connectorId);return(0,$.jsxs)(a,{to:`/connectors?tab=connected&instance=${encodeURIComponent(t.instanceId)}`,"aria-label":`${e.openConnector}: ${t.displayName}`,className:`group flex min-h-24 items-center gap-3 rounded-2xl border border-edge bg-surface-panel p-4 transition-colors hover:border-edge-strong hover:bg-surface-hover focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-accent/40`,children:[(0,$.jsx)(re,{connector:r??{displayName:t.displayName}}),(0,$.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,$.jsx)(`p`,{className:`truncate text-sm font-medium text-fg`,children:t.displayName}),(0,$.jsx)(`p`,{className:`mt-1 truncate text-xs text-fg-subtle`,children:t.connectorId})]}),(0,$.jsx)(`span`,{className:`shrink-0 rounded-full px-2 py-1 text-xs ${n?`bg-success-soft text-success`:`bg-warning-soft text-warning`}`,children:n?e.connected:e.unavailable}),(0,$.jsx)(C,{className:`size-4 shrink-0 text-fg-subtle transition-transform group-hover:translate-x-0.5`})]},t.instanceId)})}):(0,$.jsx)(fe,{children:e.noConnectors})]})]})}function Ie(e){let t=(0,Z.c)(112),{lastRun:n,t:r}=e,{data:i,error:a,isLoading:c,mutate:l}=y(`you-context-settings`,F),d=i?.dreaming??null,[f,p]=he(d),m;t[0]!==f||t[1]!==d?(m=f&&d&&me(f)!==me(d),t[0]=f,t[1]=d,t[2]=m):m=t[2];let h=!!m,g;t[3]===l?g=t[4]:(g=async e=>{await J({dreaming:e}),await l()},t[3]=l,t[4]=g);let _;t[5]!==f||t[6]!==h||t[7]!==g?(_={value:f,dirty:h,delayMs:500,onSave:g},t[5]=f,t[6]=h,t[7]=g,t[8]=_):_=t[8];let v=te(_);if(a){let e;t[9]===l?e=t[10]:(e=()=>void l(),t[9]=l,t[10]=e);let n;t[11]!==r.retry||t[12]!==e?(n=(0,$.jsx)(`button`,{className:`text-accent hover:underline`,onClick:e,children:r.retry}),t[11]=r.retry,t[12]=e,t[13]=n):n=t[13];let i;return t[14]!==r.error||t[15]!==n?(i=(0,$.jsxs)(fe,{children:[r.error,` `,n]}),t[14]=r.error,t[15]=n,t[16]=i):i=t[16],i}if(c||!f){let e;return t[17]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,$.jsx)(x,{className:`h-72 rounded-2xl`}),t[17]=e):e=t[17],e}let b=n?.status===`completed`?r.runCompleted:n?.status===`failed`?r.runFailed:r.runRunning,S;t[18]===r.dreamingHint?S=t[19]:(S=(0,$.jsx)(`p`,{className:`max-w-2xl text-sm leading-6 text-fg-muted`,children:r.dreamingHint}),t[18]=r.dreamingHint,t[19]=S);let C=v.onBlurCapture,w;t[20]===r.mode?w=t[21]:(w=(0,$.jsx)(`span`,{className:`font-medium text-fg`,children:r.mode}),t[20]=r.mode,t[21]=w);let T;t[22]===p?T=t[23]:(T=e=>p(t=>t&&{...t,mode:e.target.value}),t[22]=p,t[23]=T);let E;t[24]===r.on?E=t[25]:(E=(0,$.jsx)(s,{value:`review`,children:r.on}),t[24]=r.on,t[25]=E);let D;t[26]===r.off?D=t[27]:(D=(0,$.jsx)(s,{value:`off`,children:r.off}),t[26]=r.off,t[27]=D);let O;t[28]!==f.mode||t[29]!==D||t[30]!==T||t[31]!==E?(O=(0,$.jsxs)(o,{value:f.mode,onChange:T,children:[E,D]}),t[28]=f.mode,t[29]=D,t[30]=T,t[31]=E,t[32]=O):O=t[32];let k;t[33]!==O||t[34]!==w?(k=(0,$.jsxs)(`label`,{className:`space-y-1.5 text-sm`,children:[w,O]}),t[33]=O,t[34]=w,t[35]=k):k=t[35];let A;t[36]===r.reviewTime?A=t[37]:(A=(0,$.jsx)(`span`,{className:`font-medium text-fg`,children:r.reviewTime}),t[36]=r.reviewTime,t[37]=A);let j;t[38]===p?j=t[39]:(j=e=>p(t=>t&&{...t,schedule:{time:e.target.value}}),t[38]=p,t[39]=j);let M;t[40]!==f.schedule.time||t[41]!==j?(M=(0,$.jsx)(`input`,{type:`time`,className:se,value:f.schedule.time,onChange:j}),t[40]=f.schedule.time,t[41]=j,t[42]=M):M=t[42];let N;t[43]!==A||t[44]!==M?(N=(0,$.jsxs)(`label`,{className:`space-y-1.5 text-sm`,children:[A,M]}),t[43]=A,t[44]=M,t[45]=N):N=t[45];let P;t[46]===r.timezone?P=t[47]:(P=(0,$.jsx)(`span`,{className:`font-medium text-fg`,children:r.timezone}),t[46]=r.timezone,t[47]=P);let I=f.timezone??``,L;t[48]===Symbol.for(`react.memo_cache_sentinel`)?(L=B(),t[48]=L):L=t[48];let R;t[49]===p?R=t[50]:(R=e=>p(t=>t&&{...t,timezone:e.target.value||void 0}),t[49]=p,t[50]=R);let z;t[51]!==I||t[52]!==R?(z=(0,$.jsx)(`input`,{className:`${se} min-w-0 flex-1`,value:I,placeholder:L,onChange:R}),t[51]=I,t[52]=R,t[53]=z):z=t[53];let V;t[54]===p?V=t[55]:(V=()=>p(Le),t[54]=p,t[55]=V);let H;t[56]!==r.detect||t[57]!==V?(H=(0,$.jsx)(u,{className:`shrink-0 whitespace-nowrap`,onClick:V,children:r.detect}),t[56]=r.detect,t[57]=V,t[58]=H):H=t[58];let U;t[59]!==z||t[60]!==H?(U=(0,$.jsxs)(`div`,{className:`flex gap-2`,children:[z,H]}),t[59]=z,t[60]=H,t[61]=U):U=t[61];let W;t[62]!==P||t[63]!==U?(W=(0,$.jsxs)(`label`,{className:`space-y-1.5 text-sm sm:col-span-2`,children:[P,U]}),t[62]=P,t[63]=U,t[64]=W):W=t[64];let G;t[65]===r.evidenceThreshold?G=t[66]:(G=(0,$.jsx)(`span`,{className:`font-medium text-fg`,children:r.evidenceThreshold}),t[65]=r.evidenceThreshold,t[66]=G);let K;t[67]===p?K=t[68]:(K=e=>p(t=>t&&{...t,minEvidenceSources:Number(e.target.value)}),t[67]=p,t[68]=K);let q;t[69]!==f.minEvidenceSources||t[70]!==K?(q=(0,$.jsx)(`input`,{type:`number`,min:2,max:10,className:se,value:f.minEvidenceSources,onChange:K}),t[69]=f.minEvidenceSources,t[70]=K,t[71]=q):q=t[71];let Y;t[72]!==G||t[73]!==q?(Y=(0,$.jsxs)(`label`,{className:`space-y-1.5 text-sm`,children:[G,q]}),t[72]=G,t[73]=q,t[74]=Y):Y=t[74];let X;t[75]===r.scanLimit?X=t[76]:(X=(0,$.jsx)(`span`,{className:`font-medium text-fg`,children:r.scanLimit}),t[75]=r.scanLimit,t[76]=X);let ne;t[77]===p?ne=t[78]:(ne=e=>p(t=>t&&{...t,limit:Number(e.target.value)}),t[77]=p,t[78]=ne);let re;t[79]!==f.limit||t[80]!==ne?(re=(0,$.jsx)(`input`,{type:`number`,min:1,max:2e3,className:se,value:f.limit,onChange:ne}),t[79]=f.limit,t[80]=ne,t[81]=re):re=t[81];let ie;t[82]!==X||t[83]!==re?(ie=(0,$.jsxs)(`label`,{className:`space-y-1.5 text-sm`,children:[X,re]}),t[82]=X,t[83]=re,t[84]=ie):ie=t[84];let ae;t[85]!==k||t[86]!==N||t[87]!==W||t[88]!==Y||t[89]!==ie?(ae=(0,$.jsxs)(`div`,{className:`grid gap-4 sm:grid-cols-2`,children:[k,N,W,Y,ie]}),t[85]=k,t[86]=N,t[87]=W,t[88]=Y,t[89]=ie,t[90]=ae):ae=t[90];let Q;t[91]!==v.error||t[92]!==v.status?(Q=(0,$.jsx)(`div`,{className:`mt-5 flex justify-end`,children:(0,$.jsx)(ee,{status:v.status,error:v.error})}),t[91]=v.error,t[92]=v.status,t[93]=Q):Q=t[93];let oe;t[94]!==v.onBlurCapture||t[95]!==ae||t[96]!==Q?(oe=(0,$.jsx)(de,{children:(0,$.jsxs)(`div`,{onBlurCapture:C,children:[ae,Q]})}),t[94]=v.onBlurCapture,t[95]=ae,t[96]=Q,t[97]=oe):oe=t[97];let ce;t[98]===r.lastRun?ce=t[99]:(ce=(0,$.jsx)(`p`,{className:`text-sm font-medium text-fg`,children:r.lastRun}),t[98]=r.lastRun,t[99]=ce);let le;t[100]!==n||t[101]!==b||t[102]!==r.neverRun||t[103]!==r.runItems?(le=n?(0,$.jsxs)(`div`,{className:`mt-2 flex flex-wrap items-center gap-2 text-sm text-fg-muted`,children:[(0,$.jsx)(`span`,{children:b}),(0,$.jsx)(`span`,{children:`·`}),(0,$.jsx)(`time`,{children:new Date(n.startedAt).toLocaleString()}),typeof n.metrics.scanned==`number`?(0,$.jsxs)($.Fragment,{children:[(0,$.jsx)(`span`,{children:`·`}),(0,$.jsxs)(`span`,{children:[String(n.metrics.scanned),` `,r.runItems]})]}):null]}):(0,$.jsx)(`p`,{className:`mt-2 text-sm text-fg-muted`,children:r.neverRun}),t[100]=n,t[101]=b,t[102]=r.neverRun,t[103]=r.runItems,t[104]=le):le=t[104];let ue;t[105]!==ce||t[106]!==le?(ue=(0,$.jsxs)(de,{children:[ce,le]}),t[105]=ce,t[106]=le,t[107]=ue):ue=t[107];let pe;return t[108]!==oe||t[109]!==ue||t[110]!==S?(pe=(0,$.jsxs)(`div`,{className:`space-y-5`,children:[S,oe,ue]}),t[108]=oe,t[109]=ue,t[110]=S,t[111]=pe):pe=t[111],pe}function Le(e){return e&&{...e,timezone:B()}}function Re(e){let t=(0,Z.c)(49),{t:n}=e,{data:r,error:i,isLoading:a,mutate:c}=y(`you-context-settings`,F),l=r?.privacy.sensitiveWritePolicy??null,[u,d]=he(l),f=!!(u&&l&&u!==l),p;t[0]===c?p=t[1]:(p=async e=>{await J({privacy:{sensitiveWritePolicy:e}}),await c()},t[0]=c,t[1]=p);let m;t[2]!==u||t[3]!==f||t[4]!==p?(m={value:u,dirty:f,delayMs:350,onSave:p},t[2]=u,t[3]=f,t[4]=p,t[5]=m):m=t[5];let h=te(m);if(i){let e;t[6]===c?e=t[7]:(e=()=>void c(),t[6]=c,t[7]=e);let r;t[8]!==n.retry||t[9]!==e?(r=(0,$.jsx)(`button`,{className:`text-accent hover:underline`,onClick:e,children:n.retry}),t[8]=n.retry,t[9]=e,t[10]=r):r=t[10];let i;return t[11]!==n.error||t[12]!==r?(i=(0,$.jsxs)(fe,{children:[n.error,` `,r]}),t[11]=n.error,t[12]=r,t[13]=i):i=t[13],i}if(a||!u){let e;return t[14]===Symbol.for(`react.memo_cache_sentinel`)?(e=(0,$.jsx)(x,{className:`h-56 rounded-2xl`}),t[14]=e):e=t[14],e}let g;t[15]===n.privacyHint?g=t[16]:(g=(0,$.jsx)(`p`,{className:`max-w-2xl text-sm leading-6 text-fg-muted`,children:n.privacyHint}),t[15]=n.privacyHint,t[16]=g);let _;t[17]===n.sensitivePolicy?_=t[18]:(_=(0,$.jsx)(`span`,{className:`font-medium text-fg`,children:n.sensitivePolicy}),t[17]=n.sensitivePolicy,t[18]=_);let v;t[19]===d?v=t[20]:(v=e=>d(e.target.value),t[19]=d,t[20]=v);let b;t[21]===n.policyDeny?b=t[22]:(b=(0,$.jsx)(s,{value:`deny`,children:n.policyDeny}),t[21]=n.policyDeny,t[22]=b);let S;t[23]===n.policyConfirm?S=t[24]:(S=(0,$.jsx)(s,{value:`confirm`,children:n.policyConfirm}),t[23]=n.policyConfirm,t[24]=S);let C;t[25]===n.policyAllow?C=t[26]:(C=(0,$.jsx)(s,{value:`allow`,children:n.policyAllow}),t[25]=n.policyAllow,t[26]=C);let w;t[27]!==u||t[28]!==v||t[29]!==b||t[30]!==S||t[31]!==C?(w=(0,$.jsxs)(o,{value:u,onChange:v,children:[b,S,C]}),t[27]=u,t[28]=v,t[29]=b,t[30]=S,t[31]=C,t[32]=w):w=t[32];let T;t[33]!==w||t[34]!==_?(T=(0,$.jsxs)(`label`,{className:`block max-w-xl space-y-1.5 text-sm`,children:[_,w]}),t[33]=w,t[34]=_,t[35]=T):T=t[35];let E;t[36]===n.privacyWarning?E=t[37]:(E=(0,$.jsx)(`p`,{className:`mt-3 max-w-2xl text-xs leading-5 text-fg-subtle`,children:n.privacyWarning}),t[36]=n.privacyWarning,t[37]=E);let D;t[38]!==h.error||t[39]!==h.status?(D=(0,$.jsx)(`div`,{className:`mt-5 flex justify-end`,children:(0,$.jsx)(ee,{status:h.status,error:h.error})}),t[38]=h.error,t[39]=h.status,t[40]=D):D=t[40];let O;t[41]!==h.onBlurCapture||t[42]!==T||t[43]!==E||t[44]!==D?(O=(0,$.jsx)(de,{children:(0,$.jsxs)(`div`,{onBlurCapture:h.onBlurCapture,children:[T,E,D]})}),t[41]=h.onBlurCapture,t[42]=T,t[43]=E,t[44]=D,t[45]=O):O=t[45];let k;return t[46]!==O||t[47]!==g?(k=(0,$.jsxs)(`div`,{className:`space-y-5`,children:[g,O]}),t[46]=O,t[47]=g,t[48]=k):k=t[48],k}export{_e as UserContextPage};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import"./rolldown-runtime-aKtaBQYM.js";import{a as e,n as t,t as n}from"./vendor-react-BOUWij0V.js";import{t as r}from"./cn-JdwAhgNB.js";import{r as i,s as a}from"./locale-store-
|
|
1
|
+
import"./rolldown-runtime-aKtaBQYM.js";import{a as e,n as t,t as n}from"./vendor-react-BOUWij0V.js";import{t as r}from"./cn-JdwAhgNB.js";import{r as i,s as a}from"./locale-store-CnamlR07.js";import{n as o}from"./gateway-config-swr-Cv2ywpdb.js";import{Go as s}from"./index-DRrjYYzZ.js";e();var c=t();async function l(e,t){return(await a(i(`/api/voice/tts-voices?${new URLSearchParams({provider:e,model:t}).toString()}`))).payload?.voices??[]}function u(){return{enabled:!0,provider:`xopc-local`,providers:{"xopc-local":{model:`sensevoice-small`},alibaba:{model:`qwen-audio-3.0-asr-flash`},openai:{model:`gpt-4o-mini-transcribe`},groq:{model:`whisper-large-v3-turbo`}},fallback:{enabled:!1,order:[`xopc-local`]}}}function d(){return{enabled:!0,provider:`edge`,trigger:`inbound`,maxTextLength:512,timeoutMs:6e4,providers:{alibaba:{model:`qwen-tts`,voice:`Cherry`},openai:{model:`tts-1`,voice:`alloy`},edge:{voice:`zh-CN-XiaoxiaoNeural`,lang:`zh-CN`},minimax:{model:`speech-2.8-hd`,voice:`male-qn-qingse`},"tts-local-cli":{command:``,outputFormat:`wav`}}}}function f(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}function p(e){return typeof e==`string`&&e.trim().length>0?e.trim():`xopc-local`}function m(e){let t=u();if(!f(e))return t;let n=p(e.provider),r=t.fallback??{enabled:!1,order:[`xopc-local`]};if(f(e.fallback)){let t=Array.isArray(e.fallback.order)?e.fallback.order.filter(e=>typeof e==`string`&&e.trim().length>0):r.order;r={enabled:typeof e.fallback.enabled==`boolean`?e.fallback.enabled:r.enabled,order:t.length?t:r.order}}let i={...t.providers??{},...f(e.providers)?Object.fromEntries(Object.entries(e.providers).map(([e,t])=>[e,f(t)?{...t}:{}])):{}};return{enabled:!!e.enabled,provider:n,providers:i,fallback:r}}function h(e){return typeof e==`string`&&e.trim().length>0?e.trim():`edge`}function g(e){let t=d();if(!f(e))return t;let n=h(e.provider),r=e.trigger===`off`||e.trigger===`always`||e.trigger===`inbound`||e.trigger===`tagged`?e.trigger:`inbound`,i={...t.providers??{},...f(e.providers)?Object.fromEntries(Object.entries(e.providers).map(([e,t])=>[e,f(t)?{...t}:{}])):{}};return{enabled:!!e.enabled,provider:n,trigger:r,maxTextLength:typeof e.maxTextLength==`number`&&Number.isFinite(e.maxTextLength)?e.maxTextLength:t.maxTextLength,timeoutMs:typeof e.timeoutMs==`number`&&Number.isFinite(e.timeoutMs)?e.timeoutMs:t.timeoutMs,providers:i}}function _(e){return{...e}}function v(e){return{...e}}function y(e){let t=f(e)?e:{},n=f(t.voice)?t.voice:{},r=f(n.input)?n.input:{},i=f(r.refinement)?r.refinement:{},a=i.mode===`punctuation`||i.mode===`light`||i.mode===`custom`?i.mode:`off`;return{stt:m(t.stt),tts:g(t.tts),voice:{languageMode:n.languageMode===`manual`?`manual`:`auto`,language:n.language===`zh`?`zh`:`en`,input:{refinement:{mode:a,...typeof i.model==`string`&&i.model.trim()?{model:i.model.trim()}:{},...typeof i.customInstruction==`string`?{customInstruction:i.customInstruction}:{}}}}}}async function b(){return y((await a(i(`/api/config`))).payload?.config??{})}async function x(e){await a(i(`/api/config`),{method:`PATCH`,body:JSON.stringify({stt:_(e.stt),tts:v(e.tts),voice:e.voice})}),e.voice.languageMode===`auto`&&await a(i(`/api/voice/language`),{method:`POST`,body:JSON.stringify({language:e.voice.language})}),typeof window<`u`&&window.dispatchEvent(new Event(`voice-config-changed`)),o()}async function S(){let e=await a(i(`/api/voice/models`));if(!e.payload?.models)throw Error(`Missing voice models payload`);return e.payload.models}async function C(){let e=await a(i(`/api/voice/providers`));if(!e.payload?.providers)throw Error(`Missing voice providers payload`);return e.payload}async function w(){let e=await a(i(`/api/voice/stt-providers`));if(!e.payload?.providers)throw Error(`Missing STT providers payload`);return e.payload}async function T(){let e=await a(i(`/api/voice/local/status`));if(!e.payload)throw Error(`Missing local voice status payload`);return e.payload}async function E(e){await a(i(`/api/voice/local/models/${encodeURIComponent(e)}/install`),{method:`POST`,body:`{}`})}async function D(e){await a(i(`/api/voice/local/models/${encodeURIComponent(e)}`),{method:`DELETE`})}async function O(e){let t=await a(i(`/api/voice/tts-test`),{method:`POST`,body:JSON.stringify(e)});if(t.ok===!1){let e=typeof t.error==`string`?t.error:t.error?.message;throw Error(e||`TTS test failed`)}if(!t.payload||typeof t.payload.audio!=`string`||!t.payload.audio.trim())throw Error(`TTS test returned no audio. Check the selected voice engine and try again.`);return t.payload}async function k(e){let t=await a(i(`/api/voice/reveal-api-key`),{method:`POST`,body:JSON.stringify(e)});if(!t.payload)throw Error(`Missing reveal payload`);return t.payload}var A=n();function j(e){let t=(0,c.c)(15),{kind:n,providerId:i,fieldId:a,value:o,onChange:l,labels:u,placeholder:d,className:f}=e,p=d===void 0?`sk-...`:d,m;t[0]!==n||t[1]!==i?(m=()=>k({kind:n,provider:i}).then(M),t[0]=n,t[1]=i,t[2]=m):m=t[2];let h=m,g;t[3]===f?g=t[4]:(g=r(`flex min-w-0 flex-col gap-1.5`,f),t[3]=f,t[4]=g);let _;t[5]!==a||t[6]!==u||t[7]!==l||t[8]!==p||t[9]!==h||t[10]!==o?(_=(0,A.jsx)(s,{id:a,value:o,onChange:l,placeholder:p,labels:u,reveal:h,loadFailedLabel:u.loadFailed,maskedHelp:u.maskedHelp,notInConfigFile:u.notInConfigFile,inputClassName:`text-xs`}),t[5]=a,t[6]=u,t[7]=l,t[8]=p,t[9]=h,t[10]=o,t[11]=_):_=t[11];let v;return t[12]!==g||t[13]!==_?(v=(0,A.jsx)(`div`,{className:g,children:_}),t[12]=g,t[13]=_,t[14]=v):v=t[14],v}function M(e){return e.apiKey??null}export{C as a,E as c,D as d,O as f,S as i,y as l,T as n,b as o,l as r,w as s,j as t,x as u};
|
|
@@ -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"./button-CSEbl4zT.js";import{t as a}from"./messages-
|
|
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"./button-CSEbl4zT.js";import{t as a}from"./messages-D7kOD_o_.js";import{n as o}from"./locale-store-CnamlR07.js";import{a as s,i as c,o as l,r as u,s as d,t as f}from"./dist-BPoKqzeH.js";import{Ga as p,Yo as m,qo as h}from"./index-DRrjYYzZ.js";import{WorkDiscoveryPage as g}from"./work-discovery-page-DUkdJl1e.js";var _=n(),v=e(t(),1),y=r(),b=180;function x(e){let t=(0,_.c)(40),{requestedOpen:n,onExited:r}=e,x=o(C),w=p(S),[T,E]=(0,v.useState)(!0),D=(0,v.useRef)(!1),O=(0,v.useRef)(null),k;t[0]===x?k=t[1]:(k=a(x),t[0]=x,t[1]=k);let A=k.onboarding.workDiscovery,j=w?x===`zh`?`在后台继续`:`Continue in background`:x===`zh`?`稍后再说`:`Maybe later`,M;t[2]===r?M=t[3]:(M=()=>{if(D.current)return;D.current=!0,E(!1);let e=window.matchMedia(`(prefers-reduced-motion: reduce)`).matches?0:b;O.current=window.setTimeout(r,e)},t[2]=r,t[3]=M);let N=M,P,F;t[4]!==N||t[5]!==n?(P=()=>{n||N()},F=[N,n],t[4]=N,t[5]=n,t[6]=P,t[7]=F):(P=t[6],F=t[7]),(0,v.useEffect)(P,F);let I,L;t[8]===Symbol.for(`react.memo_cache_sentinel`)?(I=()=>()=>{O.current!==null&&window.clearTimeout(O.current)},L=[],t[8]=I,t[9]=L):(I=t[8],L=t[9]),(0,v.useEffect)(I,L);let R;t[10]===N?R=t[11]:(R=e=>{e||N()},t[10]=N,t[11]=R);let z;t[12]===Symbol.for(`react.memo_cache_sentinel`)?(z=(0,y.jsx)(s,{className:`xopc-dialog-overlay fixed inset-0 z-[75] bg-scrim backdrop-blur-[1px]`}),t[12]=z):z=t[12];let B;t[13]===Symbol.for(`react.memo_cache_sentinel`)?(B=(0,y.jsx)(h,{className:`size-7 shrink-0`,"aria-hidden":!0}),t[13]=B):B=t[13];let V;t[14]===A.title?V=t[15]:(V=(0,y.jsx)(d,{className:`truncate text-sm font-semibold text-fg`,children:A.title}),t[14]=A.title,t[15]=V);let H;t[16]===A.subtitle?H=t[17]:(H=(0,y.jsx)(c,{className:`sr-only`,children:A.subtitle}),t[16]=A.subtitle,t[17]=H);let U;t[18]!==V||t[19]!==H?(U=(0,y.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2.5`,children:[B,V,H]}),t[18]=V,t[19]=H,t[20]=U):U=t[20];let W;t[21]===j?W=t[22]:(W=(0,y.jsx)(`span`,{className:`hidden text-xs sm:inline`,children:j}),t[21]=j,t[22]=W);let G;t[23]===Symbol.for(`react.memo_cache_sentinel`)?(G=(0,y.jsx)(m,{className:`size-4`,"aria-hidden":!0}),t[23]=G):G=t[23];let K;t[24]!==j||t[25]!==N||t[26]!==W?(K=(0,y.jsxs)(i,{type:`button`,variant:`ghost`,className:`h-9 shrink-0 gap-1.5 px-2.5 text-fg-muted`,title:j,"aria-label":j,onClick:N,children:[W,G]}),t[24]=j,t[25]=N,t[26]=W,t[27]=K):K=t[27];let q;t[28]!==U||t[29]!==K?(q=(0,y.jsxs)(`header`,{className:`flex h-14 shrink-0 items-center justify-between gap-4 border-b border-edge bg-surface-panel px-4 sm:px-5`,children:[U,K]}),t[28]=U,t[29]=K,t[30]=q):q=t[30];let J;t[31]===N?J=t[32]:(J=(0,y.jsx)(`div`,{className:`min-h-0 flex-1 overflow-hidden`,children:(0,y.jsx)(g,{embedded:!0,onRequestClose:N})}),t[31]=N,t[32]=J);let Y;t[33]!==q||t[34]!==J?(Y=(0,y.jsxs)(l,{children:[z,(0,y.jsx)(u,{className:`xopc-work-discovery-dialog pointer-events-none fixed inset-0 z-[76] flex items-center justify-center p-3 outline-none sm:p-6`,children:(0,y.jsxs)(`section`,{className:`xopc-work-discovery-panel pointer-events-auto flex h-[min(47.5rem,calc(100dvh-1.5rem))] w-[min(45rem,calc(100vw-1.5rem))] flex-col overflow-hidden rounded-2xl border border-edge bg-surface-base shadow-float sm:h-[min(47.5rem,calc(100dvh-3rem))] sm:w-[min(45rem,calc(100vw-3rem))]`,children:[q,J]})})]}),t[33]=q,t[34]=J,t[35]=Y):Y=t[35];let X;return t[36]!==T||t[37]!==Y||t[38]!==R?(X=(0,y.jsx)(f,{open:T,onOpenChange:R,children:Y}),t[36]=T,t[37]=Y,t[38]=R,t[39]=X):X=t[39],X}function S(e){return e.status===`running`}function C(e){return e.language}export{x as WorkDiscoveryOverlay};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{i as e}from"./rolldown-runtime-aKtaBQYM.js";import{a as t,t as n}from"./vendor-react-BOUWij0V.js";import{f as r,l as i}from"./chunk-KS7C4IRE-BMhrPKJC.js";import{t as a}from"./check-DUBLcKHA.js";import{n as o,t as ee}from"./working-directory-picker-modal-BcyiDXU3.js";import{t as s}from"./loader-circle-CifKLtgG.js";import{t as te}from"./cn-JdwAhgNB.js";import{t as c}from"./button-CSEbl4zT.js";import{t as l}from"./messages-D7kOD_o_.js";import{n as ne}from"./locale-store-CnamlR07.js";import{$a as re,Al as ie,Ds as u,Ga as d,Hc as ae,Ja as oe,Ka as se,Kc as f,Na as p,Ol as m,Qa as ce,Xa as h,Ya as le,Yo as g,Za as _,Zc as ue,eo as de,ml as fe,no as v,qa as pe,qo as me,ro as he,to as ge}from"./index-DRrjYYzZ.js";var y=e(t(),1),b=new Set([`completed`,`failed`,`canceled`]);function _e(){return new Promise(e=>window.setTimeout(e,1200))}async function ve(e,t){let n=[],r=t.wait??_e;for(let i=0;i<e.length&&!t.shouldStop?.();i+=1){let a=e[i];if(a)try{await t.grantDirectory(a.rootPath);let o=await t.startRun(a.rootPath);for(t.onRun(o,i,e.length);!b.has(o.status)&&!t.shouldStop?.();)await r(),o=await t.fetchRun(o.id),t.onRun(o,i,e.length);if(n.push(o),o.status===`canceled`||t.shouldStop?.())break}catch(e){if(t.onError?.(e,a,i),t.shouldStop?.())break}}return n}var x=new Set([`local-recent-files`,`chromium-bookmarks`,`apple-notes`,`apple-calendar`,`apple-reminders`]);function ye(e){return new Set(e.filter(e=>e.availability===`available`&&x.has(e.id)).map(e=>e.id))}var S=n(),be=[`folder_structure`,`recent_progress`,`next_steps`];function C(e){return e instanceof Error?e.message:String(e)}function xe({embedded:e=!1,onRequestClose:t}={}){let n=ne(e=>e.language),b=l(n).onboarding.workDiscovery,_e=l(n).chat.workingDirectory,x=i(),[xe]=r(),Se=e||xe.get(`new`)===`1`,[w,T]=(0,y.useState)(`loading`),[E,D]=(0,y.useState)(null),[O,k]=(0,y.useState)(null),[A,j]=(0,y.useState)(!1),[M,N]=(0,y.useState)(null),[Ce,P]=(0,y.useState)(!1),[F,I]=(0,y.useState)(``),[L,R]=(0,y.useState)(!1),[we,z]=(0,y.useState)(()=>new Set),[B,Te]=(0,y.useState)([]),[V,Ee]=(0,y.useState)(()=>new Set),[De,H]=(0,y.useState)([]),[Oe,ke]=(0,y.useState)(!1),[U,W]=(0,y.useState)({current:0,total:0}),[Ae,je]=(0,y.useState)([]),[G,Me]=(0,y.useState)(()=>new Set),K=(0,y.useRef)(!1),Ne=e=>{Me(t=>{let n=new Set(t);return n.has(e)?n.delete(e):n.add(e),n})};(0,y.useEffect)(()=>{let e=!1;return window.electronAPI?.understandingSources?.catalog().then(t=>{e||(je(t),Me(ye(t)))}),()=>{e=!0}},[]);let q=(0,y.useCallback)(e=>{d.getState().updateDirectoryRun(e),k(e),e.status===`completed`?(z(new Set(e.result?.profileCandidates?.filter(e=>e.status===`pending`).map(e=>e.id)??[])),T(e.feedback?.recognitionDecision===`confirmed`?`recommendation`:`recognition`)):e.status===`failed`||e.status===`canceled`?T(`error`):T(`running`)},[]),Pe=async()=>{j(!0),N(null);try{let e=await pe();if(!e.length){N(b.noCandidates);return}Te(e),Ee(new Set([e[0].rootPath])),T(`candidates`)}catch(e){N(C(e))}finally{j(!1)}},Fe=e=>{Ee(t=>{let n=new Set(t);return n.has(e)?n.delete(e):n.add(e),n})},Ie=(0,y.useCallback)((e,t,n)=>{d.getState().updateDirectoryRun(e),k(e),W({current:t+1,total:n}),H(n=>{let r=[...n];return r[t]=e,r}),T(`running`)},[]),Le=(0,y.useCallback)(e=>{H(t=>t.map(t=>t?.id===e.id?e:t))},[]),Re=async()=>{let e=B.filter(e=>V.has(e.rootPath));if(!e.length)return;j(!0),N(null),H([]),W({current:1,total:e.length}),ke(!0),K.current=!1;let t=!1;try{let n=await ve(e,{grantDirectory:_,startRun:ge,fetchRun:h,shouldStop:()=>K.current,onRun:(e,n,r)=>{Ie(e,n,r),t||(t=!0,d.getState().collectSources(e.id,[...G]))},onError:(t,n,r)=>{W({current:r+1,total:e.length}),N(b.folderAnalysisFailed.replace(`{{folder}}`,n.displayName).replace(`{{error}}`,C(t)))}});if(K.current)return;let r=n.find(e=>e.status===`completed`)??n.at(-1);r?q(r):T(`candidates`)}catch(e){N(C(e)),T(`candidates`)}finally{ke(!1),j(!1)}},J=o({onPicked:(0,y.useCallback)(async e=>{j(!0),N(null);try{D(await ce(e)),T(`consent`)}catch(e){N(C(e)),T(`intro`)}finally{j(!1)}},[])});(0,y.useEffect)(()=>{let e=!1;return le().then(async({enabled:n,state:r})=>{if(!e){if(!n){t?t():x(`/chat`,{replace:!0});return}if(!Se&&r.activeRunId)try{let t=await h(r.activeRunId);e||q(t);return}catch{}e||T(`intro`)}}).catch(t=>{e||(N(C(t)),T(`intro`))}),()=>{e=!0}},[q,x,t,Se]),(0,y.useEffect)(()=>{if(!O||w!==`running`||Oe)return;let e=!1,t=async()=>{try{let t=await h(O.id);e||q(t)}catch{}},n=window.setInterval(()=>void t(),1200),r=e=>{let n=e.detail;(!n?.runId||n.runId===O.id)&&t()};for(let e of[`work-discovery-progress`,`work-discovery-completed`,`work-discovery-failed`,`work-discovery-canceled`])window.addEventListener(e,r);return()=>{e=!0,window.clearInterval(n);for(let e of[`work-discovery-progress`,`work-discovery-completed`,`work-discovery-failed`,`work-discovery-canceled`])window.removeEventListener(e,r)}},[q,Oe,w,O]);let ze=async()=>{j(!0);try{await oe()}finally{t?t():x(`/chat`,{replace:!0})}},Be=async()=>{if(E){j(!0),N(null),H([]),W({current:0,total:0});try{await _(E.canonicalRootPath);let e=await ge(E.canonicalRootPath);q(e),d.getState().collectSources(e.id,[...G])}catch(e){N(C(e)),T(`consent`)}finally{j(!1)}}},Y=(e,t)=>{let n=t?`?draft=${encodeURIComponent(t)}`:``;x(`/chat/${encodeURIComponent(e)}${n}`)},Ve=e=>{k(e),P(!1),R(!1),z(new Set(e.result?.profileCandidates?.filter(e=>e.status===`pending`).map(e=>e.id)??[])),e.status===`completed`?T(e.feedback?.recognitionDecision===`confirmed`?`recommendation`:`recognition`):e.status===`failed`||e.status===`canceled`?T(`error`):T(`running`)},He=async()=>{O&&(K.current=!0,q(await se(O.id)))},X=async(e,t)=>{if(!O)return;await de(O.id,e.id).catch(()=>{});let r=t?`${n===`zh`?`先帮我评估这个方向,不要修改文件:`:`First assess this direction without changing files:`}\n\n${e.actionPrompt}`:e.actionPrompt;Y(O.sessionKey,r)},Ue=async()=>{if(O){j(!0),N(null);try{let e=O.result?.profileCandidates??[],t=await v((e.length>0?await he(O.id,e.map(e=>({id:e.id,status:we.has(e.id)?`accepted`:`rejected`}))):O).id,`confirmed`);k(t),Le(t),T(`recommendation`)}catch(e){N(C(e))}finally{j(!1)}}},Z=async e=>{if(!(!O||!F.trim())){j(!0),N(null);try{let t=await v(O.id,e,F.trim());k(t),Y(t.sessionKey,F.trim())}catch(e){N(C(e)),j(!1)}}},We=async()=>{if(O){j(!0);try{Y((await v(O.id,`dismissed`)).sessionKey)}catch(e){N(C(e)),j(!1)}}},Q=O?.result?.suggestions.find(e=>e.id===O.result?.primarySuggestionId)??O?.result?.suggestions[0],Ge=O?.result?.suggestions.filter(e=>e.id!==Q?.id)??[],Ke=e=>e===`command`?b.riskCommand:e===`file_write`?b.riskFileWrite:b.riskAnalysis,qe=De.filter(e=>e?.status===`completed`),Je=e&&w===`candidates`,$=qe.length>1?(0,S.jsxs)(`div`,{className:`mt-6 rounded-xl border border-edge bg-surface-panel p-2`,children:[(0,S.jsx)(`p`,{className:`px-2 pb-2 text-xs font-medium text-fg-muted`,children:b.analysisResults}),(0,S.jsx)(`div`,{className:`flex flex-wrap gap-2`,children:qe.map(e=>{let t=B.find(t=>t.rootPath===e.rootPath)?.displayName??e.rootPath.split(/[\\/]/).filter(Boolean).at(-1)??e.rootPath;return(0,S.jsx)(`button`,{type:`button`,className:`rounded-lg px-3 py-2 text-sm font-medium transition ${e.id===O?.id?`bg-accent text-white`:`bg-surface-muted text-fg hover:bg-surface-hover`}`,onClick:()=>Ve(e),children:t},e.id)})})]}):null;return(0,S.jsxs)(`div`,{className:e?`flex h-full min-h-0 flex-1 flex-col overflow-hidden bg-surface-base`:`flex min-h-full flex-1 flex-col bg-surface-base`,children:[(0,S.jsxs)(`main`,{className:e?`mx-auto flex h-full min-h-0 w-full max-w-[40rem] flex-1 flex-col px-5 py-7 sm:px-8 sm:py-9 ${Je?`overflow-hidden`:`overflow-y-auto [scrollbar-gutter:stable]`}`:`mx-auto flex w-full max-w-[40rem] flex-1 flex-col px-5 py-10 sm:px-8 sm:py-16`,children:[e?null:(0,S.jsx)(`div`,{className:`mb-10 flex items-center justify-center`,children:(0,S.jsx)(me,{className:`size-11`})}),w===`loading`?(0,S.jsxs)(`div`,{className:`mx-auto flex min-h-[26rem] w-full max-w-md flex-col items-center`,"aria-busy":!0,children:[(0,S.jsx)(p,{className:`h-8 w-64 max-w-full`}),(0,S.jsx)(p,{className:`mt-4 h-4 w-full max-w-sm`}),(0,S.jsx)(p,{className:`mt-2 h-4 w-4/5 max-w-xs`}),(0,S.jsx)(p,{className:`mt-10 h-12 w-full rounded-xl`}),(0,S.jsx)(p,{className:`mt-3 h-11 w-full rounded-xl`}),(0,S.jsx)(p,{className:`mt-5 h-4 w-3/5 max-w-56`})]}):null,w===`intro`?(0,S.jsxs)(`section`,{className:`flex flex-1 flex-col text-center`,"aria-labelledby":`work-discovery-title`,children:[(0,S.jsxs)(`div`,{className:`mx-auto max-w-[36rem]`,children:[(0,S.jsx)(`h1`,{id:`work-discovery-title`,className:`text-2xl font-semibold tracking-tight text-fg`,children:b.title}),(0,S.jsx)(`p`,{className:`mx-auto mt-3 max-w-[34rem] text-[0.95rem] leading-7 text-fg-muted`,children:b.subtitle})]}),(0,S.jsxs)(`div`,{className:`mx-auto mt-9 w-full max-w-md`,children:[Ae.length?(0,S.jsxs)(`div`,{className:`mb-5 rounded-xl border border-edge bg-surface-panel p-3 text-left`,children:[(0,S.jsx)(`p`,{className:`text-sm font-medium text-fg`,children:b.localSourcesTitle}),(0,S.jsx)(`p`,{className:`mt-1 text-xs leading-5 text-fg-muted`,children:b.localSourcesSubtitle}),(0,S.jsx)(`div`,{className:`mt-3 grid grid-cols-2 gap-2 sm:grid-cols-3`,children:Ae.map(e=>{let t=G.has(e.id);return(0,S.jsxs)(`button`,{type:`button`,className:te(`flex min-h-16 flex-col items-center justify-center gap-1 rounded-lg border px-2 py-2 text-xs font-medium transition-colors`,t?`border-accent/40 bg-accent-soft text-accent-fg`:`border-edge bg-surface-base text-fg-muted hover:bg-surface-hover hover:text-fg`),"aria-pressed":t,onClick:()=>Ne(e.id),children:[(0,S.jsx)(`span`,{className:te(`flex size-4 items-center justify-center rounded-full border`,t?`border-accent bg-accent text-white`:`border-edge`),children:t?(0,S.jsx)(a,{className:`size-3`,"aria-hidden":!0}):null}),e.displayName]},e.id)})})]}):null,(0,S.jsxs)(c,{type:`button`,className:`h-12 w-full gap-2 bg-accent text-white hover:bg-accent-hover`,onClick:()=>void Pe(),disabled:A||J.picking,children:[A?(0,S.jsx)(s,{className:`size-4 animate-spin`}):(0,S.jsx)(u,{className:`size-4`}),b.quickScan]}),(0,S.jsxs)(c,{type:`button`,variant:`secondary`,className:`mt-3 h-11 w-full gap-2`,onClick:J.pick,disabled:A||J.picking,children:[J.picking?(0,S.jsx)(s,{className:`size-4 animate-spin`}):(0,S.jsx)(f,{className:`size-4`}),b.chooseFolderManually]}),(0,S.jsxs)(`div`,{className:`mt-4 flex items-start justify-center gap-2 text-xs leading-5 text-fg-muted`,children:[(0,S.jsx)(u,{className:`mt-0.5 size-4 shrink-0 text-accent-fg`}),(0,S.jsx)(`span`,{children:b.quickScanNote})]}),(0,S.jsx)(`button`,{type:`button`,className:`mt-4 text-sm font-medium text-accent-fg hover:underline`,onClick:()=>x(`/connectors?understanding=1&returnTo=%2Fonboarding%2Fworkspace`),children:b.connectCloudSource}),M?(0,S.jsx)(`p`,{className:`mt-4 text-sm text-danger`,role:`alert`,children:M}):null]}),(0,S.jsx)(`button`,{type:`button`,className:`mx-auto mt-auto pt-10 text-sm text-fg-muted hover:text-fg hover:underline`,onClick:()=>void ze(),disabled:A,children:b.skip})]}):null,w===`candidates`?(0,S.jsxs)(`section`,{className:e?`flex h-full min-h-0 flex-col`:void 0,"aria-labelledby":`work-discovery-candidates-title`,children:[(0,S.jsxs)(`div`,{className:e?`shrink-0 text-center`:`text-center`,children:[(0,S.jsx)(`h1`,{id:`work-discovery-candidates-title`,className:`text-2xl font-semibold tracking-tight text-fg`,children:b.candidatesTitle}),(0,S.jsx)(`p`,{className:`mt-3 text-[0.95rem] leading-7 text-fg-muted`,children:b.candidatesSubtitle})]}),(0,S.jsx)(`div`,{className:e?`mt-5 min-h-0 flex-1 space-y-2 overflow-y-auto overscroll-contain pr-1 [scrollbar-gutter:stable]`:`mt-7 space-y-2`,children:B.map((e,t)=>{let n=V.has(e.rootPath);return(0,S.jsxs)(`button`,{type:`button`,"aria-pressed":n,className:`flex w-full items-start gap-3 rounded-xl border p-4 text-left transition ${n?`border-accent bg-accent-soft/45`:`border-edge bg-surface-panel hover:border-edge-strong`}`,onClick:()=>Fe(e.rootPath),children:[(0,S.jsx)(`span`,{className:`mt-0.5 flex size-5 shrink-0 items-center justify-center rounded-md border ${n?`border-accent bg-accent text-white`:`border-edge bg-surface-base text-transparent`}`,children:(0,S.jsx)(a,{className:`size-3.5`})}),(0,S.jsx)(f,{className:`mt-0.5 size-5 shrink-0 text-accent-fg`}),(0,S.jsxs)(`span`,{className:`min-w-0 flex-1`,children:[(0,S.jsxs)(`span`,{className:`flex flex-wrap items-center gap-2`,children:[(0,S.jsx)(`span`,{className:`truncate text-sm font-medium text-fg`,children:e.displayName}),t===0?(0,S.jsx)(`span`,{className:`rounded-full bg-accent-soft px-2 py-0.5 text-[0.7rem] font-medium text-accent-fg`,children:b.recommendedCandidate}):null]}),(0,S.jsx)(`span`,{className:`mt-1 block truncate font-mono text-xs text-fg-muted`,children:e.rootPath}),(0,S.jsxs)(`span`,{className:`mt-2 flex flex-wrap gap-x-3 gap-y-1 text-xs text-fg-muted`,children:[(0,S.jsx)(`span`,{children:e.projectKind===`coding`?b.codingProject:e.projectKind===`general`?b.generalProject:b.unknownProject}),e.branch?(0,S.jsx)(`span`,{children:b.branchValue.replace(`{{branch}}`,e.branch)}):null,e.changedFileCount>0?(0,S.jsx)(`span`,{children:b.changedFiles.replace(`{{count}}`,String(e.changedFileCount))}):null]})]})]},e.id)})}),(0,S.jsxs)(`div`,{className:e?`shrink-0 border-t border-edge-subtle pt-4`:void 0,children:[(0,S.jsxs)(`div`,{className:`${e?``:`mt-5 `}flex items-start gap-2 rounded-xl border border-edge-subtle bg-surface-panel px-4 py-3 text-xs leading-5 text-fg-muted`,children:[(0,S.jsx)(u,{className:`mt-0.5 size-4 shrink-0 text-accent-fg`}),(0,S.jsx)(`span`,{children:b.multiFolderPrivacyNote})]}),M?(0,S.jsx)(`p`,{className:`mt-3 text-sm text-danger`,role:`alert`,children:M}):null,(0,S.jsxs)(`div`,{className:`${e?`mt-4`:`mt-7`} flex flex-col gap-3 sm:flex-row-reverse`,children:[(0,S.jsxs)(c,{type:`button`,className:`h-11 flex-1 bg-accent text-white hover:bg-accent-hover`,disabled:A||V.size===0,onClick:()=>void Re(),children:[A?(0,S.jsx)(s,{className:`mr-2 size-4 animate-spin`}):null,b.analyzeSelected.replace(`{{count}}`,String(V.size))]}),(0,S.jsx)(c,{type:`button`,variant:`secondary`,className:`h-11 flex-1`,disabled:A,onClick:J.pick,children:b.chooseFolderManually})]}),(0,S.jsx)(`button`,{type:`button`,className:`${e?`mt-3`:`mt-6`} mx-auto block text-sm text-fg-muted hover:text-fg hover:underline`,onClick:()=>T(`intro`),children:b.back})]})]}):null,w===`consent`&&E?(0,S.jsxs)(`section`,{"aria-labelledby":`work-discovery-consent-title`,children:[(0,S.jsxs)(`div`,{className:`text-center`,children:[(0,S.jsx)(`h1`,{id:`work-discovery-consent-title`,className:`text-2xl font-semibold tracking-tight text-fg`,children:b.selectedTitle}),(0,S.jsx)(`p`,{className:`mt-3 text-[0.95rem] leading-7 text-fg-muted`,children:b.selectedSubtitle})]}),(0,S.jsxs)(`div`,{className:`mt-8 overflow-hidden rounded-xl border border-edge bg-surface-panel`,children:[(0,S.jsxs)(`div`,{className:`flex items-center gap-3 border-b border-edge-subtle px-4 py-3.5`,children:[(0,S.jsx)(f,{className:`size-5 shrink-0 text-accent-fg`}),(0,S.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,S.jsx)(`p`,{className:`truncate text-sm font-medium text-fg`,children:E.displayName}),(0,S.jsx)(`p`,{className:`truncate font-mono text-xs text-fg-muted`,children:E.canonicalRootPath})]}),(0,S.jsx)(`span`,{className:`rounded-full bg-accent-soft px-2.5 py-1 text-xs font-medium text-accent-fg`,children:E.projectKind===`coding`?b.codingProject:E.projectKind===`general`?b.generalProject:b.unknownProject})]}),(0,S.jsxs)(`div`,{className:`grid gap-3 border-b border-edge-subtle bg-surface-base/60 p-4 sm:grid-cols-2`,children:[(0,S.jsxs)(`div`,{children:[(0,S.jsx)(`p`,{className:`text-xs font-medium text-fg-muted`,children:b.localFingerprint}),(0,S.jsx)(`p`,{className:`mt-1 text-sm text-fg`,children:E.fingerprint.branch?b.branchValue.replace(`{{branch}}`,E.fingerprint.branch):b.noGitBranch})]}),(0,S.jsxs)(`div`,{children:[(0,S.jsx)(`p`,{className:`text-xs font-medium text-fg-muted`,children:b.recentActivity}),(0,S.jsx)(`p`,{className:`mt-1 text-sm text-fg`,children:b.changedFiles.replace(`{{count}}`,String(E.fingerprint.changedFileCount))})]}),E.fingerprint.recentAreas.length>0?(0,S.jsxs)(`div`,{className:`sm:col-span-2`,children:[(0,S.jsx)(`p`,{className:`text-xs font-medium text-fg-muted`,children:b.recentAreas}),(0,S.jsx)(`div`,{className:`mt-2 flex flex-wrap gap-1.5`,children:E.fingerprint.recentAreas.map(e=>(0,S.jsx)(`code`,{className:`rounded-md bg-surface-muted px-2 py-1 text-xs text-fg`,children:e},e))})]}):null]}),(0,S.jsxs)(`div`,{className:`divide-y divide-edge-subtle px-4`,children:[(0,S.jsxs)(`div`,{className:`flex gap-3 py-4`,children:[(0,S.jsx)(ue,{className:`mt-0.5 size-4 shrink-0 text-fg-muted`}),(0,S.jsxs)(`div`,{children:[(0,S.jsx)(`p`,{className:`text-sm font-medium text-fg`,children:b.willRead}),(0,S.jsx)(`p`,{className:`mt-1 text-sm leading-6 text-fg-muted`,children:b.willReadValue})]})]}),(0,S.jsxs)(`div`,{className:`flex gap-3 py-4`,children:[(0,S.jsx)(g,{className:`mt-0.5 size-4 shrink-0 text-fg-muted`}),(0,S.jsxs)(`div`,{children:[(0,S.jsx)(`p`,{className:`text-sm font-medium text-fg`,children:b.willIgnore}),(0,S.jsx)(`p`,{className:`mt-1 text-sm leading-6 text-fg-muted`,children:b.willIgnoreValue})]})]}),(0,S.jsxs)(`div`,{className:`flex gap-3 py-4`,children:[(0,S.jsx)(u,{className:`mt-0.5 size-4 shrink-0 text-accent-fg`}),(0,S.jsx)(`p`,{className:`text-sm leading-6 text-fg-muted`,children:E.remoteModel?b.providerDisclosure.replace(`{{provider}}`,E.provider):b.localDisclosure})]})]})]}),M?(0,S.jsx)(`p`,{className:`mt-4 text-sm text-danger`,role:`alert`,children:M}):null,(0,S.jsxs)(`div`,{className:`mt-7 flex flex-col gap-3 sm:flex-row-reverse`,children:[(0,S.jsxs)(c,{type:`button`,className:`h-11 flex-1 bg-accent text-white hover:bg-accent-hover`,disabled:A,onClick:()=>void Be(),children:[A?(0,S.jsx)(s,{className:`mr-2 size-4 animate-spin`}):null,b.startAnalysis]}),(0,S.jsx)(c,{type:`button`,variant:`secondary`,className:`h-11 flex-1`,disabled:A,onClick:J.pick,children:b.changeFolder})]}),(0,S.jsx)(`button`,{type:`button`,className:`mx-auto mt-6 block text-sm text-fg-muted hover:text-fg hover:underline`,onClick:()=>void ze(),children:b.skip})]}):null,w===`running`&&O?(0,S.jsxs)(`section`,{"aria-labelledby":`work-discovery-running-title`,"aria-live":`polite`,children:[(0,S.jsxs)(`div`,{className:`text-center`,children:[(0,S.jsx)(`h1`,{id:`work-discovery-running-title`,className:`text-2xl font-semibold tracking-tight text-fg`,children:b.analyzingTitle}),(0,S.jsx)(`p`,{className:`mt-3 text-[0.95rem] leading-7 text-fg-muted`,children:b.analyzingSubtitle}),U.total>1?(0,S.jsx)(`p`,{className:`mt-2 text-sm font-medium text-accent-fg`,children:b.analyzingFolderProgress.replace(`{{current}}`,String(U.current)).replace(`{{total}}`,String(U.total))}):null]}),(0,S.jsx)(`div`,{className:`mt-9 rounded-xl border border-edge bg-surface-panel px-5 py-2`,children:be.map((e,t)=>{let n=Math.max(0,be.indexOf(O.stage??`folder_structure`)),r=t<n,i=t===n;return(0,S.jsxs)(`div`,{className:`flex items-center gap-4 border-b border-edge-subtle py-4 last:border-b-0`,children:[(0,S.jsx)(`span`,{className:`flex size-7 items-center justify-center rounded-full ${r?`bg-accent text-white`:i?`bg-accent-soft text-accent-fg`:`bg-surface-muted text-fg-subtle`}`,children:r?(0,S.jsx)(a,{className:`size-4`}):i?(0,S.jsx)(s,{className:`size-4 animate-spin motion-reduce:animate-none`}):(0,S.jsx)(`span`,{className:`size-1.5 rounded-full bg-current`})}),(0,S.jsx)(`span`,{className:i||r?`text-sm font-medium text-fg`:`text-sm text-fg-muted`,children:b.stages[e]})]},e)})}),(0,S.jsx)(`p`,{className:`mt-4 truncate text-center font-mono text-xs text-fg-muted`,children:O.rootPath}),(0,S.jsxs)(`div`,{className:`mx-auto mt-7 flex max-w-md flex-col gap-3`,children:[(0,S.jsx)(c,{type:`button`,variant:`secondary`,className:`h-11 w-full`,onClick:()=>x(`/chat`),children:b.continueInBackground}),(0,S.jsx)(`button`,{type:`button`,className:`mx-auto text-sm text-fg-muted hover:text-danger hover:underline`,onClick:()=>void He(),children:b.cancelAnalysis})]})]}):null,w===`recognition`&&O?.result?(0,S.jsxs)(`section`,{"aria-labelledby":`work-discovery-recognition-title`,children:[(0,S.jsxs)(`div`,{className:`text-center`,children:[(0,S.jsx)(`p`,{className:`text-xs font-semibold uppercase tracking-[0.16em] text-accent-fg`,children:b.recognitionEyebrow}),(0,S.jsx)(`h1`,{id:`work-discovery-recognition-title`,className:`mt-2 text-2xl font-semibold tracking-tight text-fg`,children:O.result.lowConfidence?b.lowConfidenceTitle:b.recognitionTitle})]}),$,(0,S.jsxs)(`div`,{className:`mt-7 rounded-2xl border border-accent/25 bg-gradient-to-br from-accent-soft/45 via-surface-panel to-surface-panel p-5 sm:p-6`,children:[(0,S.jsx)(`p`,{className:`text-base font-medium leading-7 text-fg`,children:O.result.projectSummary}),(0,S.jsx)(`p`,{className:`mt-3 text-sm leading-6 text-fg-muted`,children:O.result.currentState}),!O.result.lowConfidence&&Q?.evidence.length?(0,S.jsx)(`ul`,{className:`mt-5 space-y-2 border-t border-edge-subtle pt-4`,children:Q.evidence.slice(0,3).map((e,t)=>(0,S.jsxs)(`li`,{className:`flex gap-2 text-xs leading-5 text-fg-muted`,children:[(0,S.jsx)(ae,{className:`mt-0.5 size-3.5 shrink-0 text-accent-fg`}),(0,S.jsxs)(`span`,{children:[e.path?(0,S.jsxs)(S.Fragment,{children:[(0,S.jsx)(`code`,{className:`font-mono text-fg`,children:e.path}),`: `]}):null,e.observation]})]},`${Q.id}-recognition-${t}`))}):null]}),O.result.workThreads?.length?(0,S.jsxs)(`div`,{className:`mt-5 rounded-xl border border-edge bg-surface-panel p-4`,children:[(0,S.jsx)(`p`,{className:`text-sm font-medium text-fg`,children:b.workThreadsTitle}),(0,S.jsx)(`p`,{className:`mt-1 text-xs leading-5 text-fg-muted`,children:b.workThreadsSubtitle}),(0,S.jsx)(`div`,{className:`mt-3 divide-y divide-edge-subtle`,children:O.result.workThreads.map(e=>(0,S.jsxs)(`div`,{className:`py-3 first:pt-0 last:pb-0`,children:[(0,S.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,S.jsx)(`span`,{className:`rounded-full bg-accent-soft px-2 py-0.5 text-[0.7rem] font-medium text-accent-fg`,children:e.horizon===`current`?b.workThreadCurrent:e.horizon===`ongoing`?b.workThreadOngoing:b.workThreadLongTerm}),(0,S.jsx)(`span`,{className:`text-sm font-medium text-fg`,children:e.title})]}),(0,S.jsx)(`p`,{className:`mt-1.5 text-xs leading-5 text-fg-muted`,children:e.summary})]},e.id))})]}):null,O.result.profileCandidates?.length?(0,S.jsxs)(`div`,{className:`mt-5 rounded-xl border border-edge bg-surface-panel p-4`,children:[(0,S.jsx)(`p`,{className:`text-sm font-medium text-fg`,children:b.profileCandidatesTitle}),(0,S.jsx)(`p`,{className:`mt-1 text-xs leading-5 text-fg-muted`,children:b.profileCandidatesSubtitle}),(0,S.jsx)(`div`,{className:`mt-3 space-y-2`,children:O.result.profileCandidates.map(e=>(0,S.jsxs)(`label`,{className:`flex cursor-pointer items-start gap-3 rounded-lg px-2 py-2 hover:bg-surface-muted`,children:[(0,S.jsx)(`input`,{type:`checkbox`,className:`mt-0.5 size-4 rounded border-edge accent-accent`,checked:we.has(e.id),onChange:()=>z(t=>{let n=new Set(t);return n.has(e.id)?n.delete(e.id):n.add(e.id),n})}),(0,S.jsx)(`span`,{className:`text-sm leading-5 text-fg`,children:e.statement})]},e.id))})]}):null,O.result.lowConfidence?(0,S.jsxs)(`div`,{className:`mt-5`,children:[(0,S.jsx)(`p`,{className:`text-sm font-medium leading-6 text-fg`,children:O.result.contextQuestion}),(0,S.jsx)(`textarea`,{value:F,onChange:e=>I(e.target.value),placeholder:b.correctionPlaceholder,className:`mt-3 min-h-24 w-full resize-y rounded-xl border border-edge bg-surface-panel px-3 py-2.5 text-sm text-fg outline-none placeholder:text-fg-subtle focus:border-accent focus:ring-2 focus:ring-accent/15`}),(0,S.jsx)(c,{className:`mt-3 w-full bg-accent text-white hover:bg-accent-hover`,disabled:A||!F.trim(),onClick:()=>void Z(`different_goal`),children:b.continueWithCorrection})]}):(0,S.jsxs)(S.Fragment,{children:[(0,S.jsxs)(`div`,{className:`mt-6 flex flex-col gap-3 sm:flex-row-reverse`,children:[(0,S.jsxs)(c,{className:`h-11 flex-1 bg-accent text-white hover:bg-accent-hover`,disabled:A,onClick:()=>void Ue(),children:[A?(0,S.jsx)(s,{className:`size-4 animate-spin`}):(0,S.jsx)(a,{className:`size-4`}),b.confirmUnderstanding]}),(0,S.jsx)(c,{variant:`secondary`,className:`h-11 flex-1`,disabled:A,onClick:()=>P(e=>!e),children:b.notQuiteRight})]}),Ce?(0,S.jsxs)(`div`,{className:`mt-4 rounded-xl border border-edge bg-surface-panel p-4`,children:[(0,S.jsx)(`label`,{className:`text-sm font-medium text-fg`,htmlFor:`work-discovery-correction`,children:b.correctionLabel}),(0,S.jsx)(`textarea`,{id:`work-discovery-correction`,value:F,onChange:e=>I(e.target.value),placeholder:b.correctionPlaceholder,className:`mt-2 min-h-24 w-full resize-y rounded-lg border border-edge bg-surface-base px-3 py-2.5 text-sm text-fg outline-none placeholder:text-fg-subtle focus:border-accent focus:ring-2 focus:ring-accent/15`}),(0,S.jsxs)(`div`,{className:`mt-3 flex flex-wrap justify-end gap-2`,children:[(0,S.jsx)(c,{variant:`ghost`,disabled:A||!F.trim(),onClick:()=>void Z(`different_goal`),children:b.differentGoal}),(0,S.jsx)(c,{variant:`primary`,disabled:A||!F.trim(),onClick:()=>void Z(`corrected`),children:b.useCorrection})]})]}):null]}),M?(0,S.jsx)(`p`,{className:`mt-4 text-sm text-danger`,role:`alert`,children:M}):null,(0,S.jsx)(`button`,{type:`button`,disabled:A,className:`mx-auto mt-6 block text-sm text-fg-muted hover:text-fg hover:underline disabled:opacity-60`,onClick:()=>void We(),children:b.openConversation})]}):null,w===`recommendation`&&O?.result&&Q?(0,S.jsxs)(`section`,{"aria-labelledby":`work-discovery-recommendation-title`,children:[(0,S.jsxs)(`div`,{className:`text-center`,children:[(0,S.jsx)(`p`,{className:`text-xs font-semibold uppercase tracking-[0.16em] text-accent-fg`,children:b.understandingConfirmed}),(0,S.jsx)(`h1`,{id:`work-discovery-recommendation-title`,className:`mt-2 text-2xl font-semibold tracking-tight text-fg`,children:b.primaryRecommendationTitle})]}),$,(0,S.jsx)(`article`,{className:`mt-7 rounded-2xl border border-accent/30 bg-surface-panel p-5 sm:p-6`,children:(0,S.jsxs)(`div`,{className:`flex items-start gap-3`,children:[(0,S.jsx)(`div`,{className:`flex size-9 shrink-0 items-center justify-center rounded-xl bg-accent-soft text-accent-fg`,children:(0,S.jsx)(m,{className:`size-5`})}),(0,S.jsxs)(`div`,{className:`min-w-0 flex-1`,children:[(0,S.jsx)(`h2`,{className:`text-lg font-semibold text-fg`,children:Q.title}),(0,S.jsx)(`p`,{className:`mt-2 text-sm leading-6 text-fg-muted`,children:Q.rationale}),(0,S.jsxs)(`div`,{className:`mt-4 flex flex-wrap gap-2 text-xs`,children:[(0,S.jsxs)(`span`,{className:`inline-flex items-center gap-1.5 rounded-full bg-surface-muted px-2.5 py-1 text-fg-muted`,children:[(0,S.jsx)(fe,{className:`size-3.5`}),b.estimatedMinutes.replace(`{{count}}`,String(Q.estimatedMinutes))]}),(0,S.jsx)(`span`,{className:`rounded-full bg-surface-muted px-2.5 py-1 text-fg-muted`,children:Ke(Q.risk)})]}),(0,S.jsxs)(`div`,{className:`mt-4 rounded-xl bg-surface-base px-4 py-3`,children:[(0,S.jsx)(`p`,{className:`text-xs font-medium text-fg-muted`,children:b.expectedTask}),(0,S.jsx)(`p`,{className:`mt-1 text-sm leading-6 text-fg`,children:Q.expectedTask})]}),(0,S.jsxs)(`div`,{className:`mt-5 flex flex-wrap gap-2`,children:[(0,S.jsx)(c,{className:`h-10 bg-accent px-4 text-white hover:bg-accent-hover`,onClick:()=>void X(Q,!1),children:b.startRecommendedAction}),(0,S.jsx)(c,{className:`h-10 px-4`,variant:`secondary`,onClick:()=>void X(Q,!0),children:b.explainFirst})]})]})]})}),Ge.length>0?(0,S.jsxs)(`div`,{className:`mt-5 border-t border-edge-subtle pt-4`,children:[(0,S.jsxs)(`button`,{type:`button`,className:`flex w-full items-center justify-between py-2 text-sm font-medium text-fg-muted hover:text-fg`,onClick:()=>R(e=>!e),children:[b.otherDirections,(0,S.jsx)(ie,{className:`size-4 transition-transform ${L?`rotate-180`:``}`})]}),L?(0,S.jsx)(`div`,{className:`mt-2 divide-y divide-edge-subtle rounded-xl border border-edge bg-surface-panel px-4`,children:Ge.map(e=>(0,S.jsxs)(`button`,{type:`button`,className:`flex w-full items-start gap-3 py-4 text-left`,onClick:()=>void X(e,!0),children:[(0,S.jsx)(m,{className:`mt-0.5 size-4 shrink-0 text-fg-subtle`}),(0,S.jsxs)(`span`,{children:[(0,S.jsx)(`span`,{className:`block text-sm font-medium text-fg`,children:e.title}),(0,S.jsx)(`span`,{className:`mt-1 block text-xs leading-5 text-fg-muted`,children:e.expectedTask})]})]},e.id))}):null]}):null,(0,S.jsxs)(`div`,{className:`mt-6 flex flex-wrap items-center justify-center gap-x-5 gap-y-3`,children:[(0,S.jsx)(`button`,{type:`button`,className:`text-sm text-fg-muted hover:text-fg hover:underline`,onClick:()=>Y(O.sessionKey),children:b.doSomethingElse}),(0,S.jsx)(`button`,{type:`button`,className:`text-sm text-fg-muted hover:text-fg hover:underline`,onClick:()=>{P(!0),T(`recognition`)},children:b.correctUnderstanding})]})]}):null,w===`error`&&O?(0,S.jsxs)(`section`,{className:`text-center`,"aria-labelledby":`work-discovery-error-title`,children:[(0,S.jsx)(`div`,{className:`mx-auto flex size-11 items-center justify-center rounded-xl bg-danger-soft text-danger`,children:(0,S.jsx)(g,{className:`size-5`})}),(0,S.jsx)(`h1`,{id:`work-discovery-error-title`,className:`mt-5 text-2xl font-semibold tracking-tight text-fg`,children:b.errorTitle}),(0,S.jsx)(`p`,{className:`mx-auto mt-3 max-w-lg text-sm leading-6 text-fg-muted`,children:O.errorMessage}),(0,S.jsxs)(`div`,{className:`mx-auto mt-7 flex max-w-md flex-col gap-3 sm:flex-row-reverse`,children:[(0,S.jsx)(c,{className:`h-11 flex-1 bg-accent text-white hover:bg-accent-hover`,onClick:()=>void re(O.id).then(q),children:b.retry}),(0,S.jsx)(c,{variant:`secondary`,className:`h-11 flex-1`,onClick:()=>{k(null),D(null),T(`intro`)},children:b.chooseDifferent})]}),(0,S.jsx)(`button`,{type:`button`,className:`mt-6 text-sm text-fg-muted hover:text-fg hover:underline`,onClick:()=>Y(O.sessionKey),children:b.openConversation})]}):null]}),J.hasNativePicker?null:(0,S.jsx)(ee,{open:J.modalOpen,onOpenChange:J.setModalOpen,initialAbsolutePath:E?.canonicalRootPath,onConfirm:J.confirmPick,wd:_e})]})}export{xe as WorkDiscoveryPage};
|