fuli-context 0.11.1 → 0.12.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (152) hide show
  1. package/dist/web/assets/AboutPage-BAD0iPVX.js +1 -0
  2. package/dist/web/assets/AgentConversations-1iGTd4sz.js +2 -0
  3. package/dist/web/assets/AgentHand-D_RafKOM.js +1 -0
  4. package/dist/web/assets/AgentName-B5LKQ09q.js +1 -0
  5. package/dist/web/assets/AgentProfilePage-CioOdkBM.js +1 -0
  6. package/dist/web/assets/AgentsDirectoryPage--1A9nvNA.js +1 -0
  7. package/dist/web/assets/AgentsDirectoryPage-C7OUQH9v.css +1 -0
  8. package/dist/web/assets/ConnectionsPage-Tr2rRVOZ.js +1 -0
  9. package/dist/web/assets/EmployeeRecruitDialog-1QevD4Qv.js +1 -0
  10. package/dist/web/assets/EmployeeWorkbenchPage-B0vQIgwA.js +3 -0
  11. package/dist/web/assets/EmployeeWorkbenchPage-BQes4L1f.css +1 -0
  12. package/dist/web/assets/KnowledgeEditDialog-ClnrfPZi.js +1 -0
  13. package/dist/web/assets/KnowledgeInspector-Te1hJZbx.js +1 -0
  14. package/dist/web/assets/KnowledgeOrganizerPage-CCCrWl6Y.js +1 -0
  15. package/dist/web/assets/KnowledgeOrganizerPage-ccgscrPd.css +1 -0
  16. package/dist/web/assets/KnowledgePage-DGOcBwr8.js +1 -0
  17. package/dist/web/assets/KnowledgeWorkspace-cKn1NCRe.js +4 -0
  18. package/dist/web/assets/NotFoundPage-fetSnp0N.js +1 -0
  19. package/dist/web/assets/OverviewPage-BD4yY2Xz.js +1 -0
  20. package/dist/web/assets/PersonalProfilePage-DGJVP_VB.js +1 -0
  21. package/dist/web/assets/PersonalProjectsPage-D25HYMgD.js +1 -0
  22. package/dist/web/assets/ProjectAgentFirstTask-BcxqmKXQ.js +1 -0
  23. package/dist/web/assets/ProjectAgentsPage-BWDJBESb.js +12 -0
  24. package/dist/web/assets/ProjectScopePicker-yodM7lF_.js +1 -0
  25. package/dist/web/assets/PublicProjectsPage-CyNxVzW3.js +1 -0
  26. package/dist/web/assets/ReviewPage-Cy0Rt4CO.js +1 -0
  27. package/dist/web/assets/RoundtablesPage-BjVhvwMc.js +1 -0
  28. package/dist/web/assets/SettingsPage-CCZqZtnH.js +1 -0
  29. package/dist/web/assets/SettingsPage-DYz5bTwa.css +1 -0
  30. package/dist/web/assets/SharedJefaReportPage-C56kPciB.js +1 -0
  31. package/dist/web/assets/UiDialog-CvDxg3B1.js +1 -0
  32. package/dist/web/assets/UiDisclosure-D0iMTplF.js +1 -0
  33. package/dist/web/assets/UiSegmented-DIJW6wv3.js +1 -0
  34. package/dist/web/assets/UiSelect-CMR0QqF6.js +1 -0
  35. package/dist/web/assets/WritingTastePage-QgNzssfF.js +1 -0
  36. package/dist/web/assets/agent-pins-BcJ_qr8n.js +1 -0
  37. package/dist/web/assets/agent-work-summary-C-yW7x7A.js +1 -0
  38. package/dist/web/assets/{attention-store-D-qIFRIb.js → attention-store-B1DI8wmd.js} +1 -1
  39. package/dist/web/assets/{catalog-UDv854JN.js → catalog-DbXv0_bR.js} +1 -1
  40. package/dist/web/assets/client-CR-W5Wzp.js +1 -0
  41. package/dist/web/assets/console-D7GHOMEC.js +1 -0
  42. package/dist/web/assets/conversation-launcher-settings-Dj2GMzCI.js +1 -0
  43. package/dist/web/assets/{i18n-b14l2pQA.js → i18n-CVFhT_k7.js} +2 -2
  44. package/dist/web/assets/{identity-BWbPmZZf.js → identity-CM6Dmy00.js} +1 -1
  45. package/dist/web/assets/index-CJ6Jmok9.css +1 -0
  46. package/dist/web/assets/index-CRa3GnYi.js +5 -0
  47. package/dist/web/assets/judgment-types-CJBEyJs1.js +1 -0
  48. package/dist/web/assets/model-WFhQZ3v_.js +1 -0
  49. package/dist/web/assets/{personal-profile-graph-BPTtMJTZ.js → personal-profile-graph-BwCh2M9G.js} +1 -1
  50. package/dist/web/assets/shared-report-CeIvrL9a.js +1 -0
  51. package/dist/web/assets/{agent-work-summary-LeW-Al_S.js → task-evidence-DTiPCs7r.js} +1 -1
  52. package/dist/web/assets/useAgentRoster-DCArHlxK.js +1 -0
  53. package/dist/web/assets/{useApi-CROJJdhE-CEQAEuug.js → useApi-CROJJdhE-BYhbjaZB.js} +1 -1
  54. package/dist/web/assets/vue-router-DaxrQwX3.js +1 -0
  55. package/dist/web/index.html +16 -12
  56. package/docs/employee-agents.md +1 -1
  57. package/docs/judgment-and-autonomy.md +33 -0
  58. package/graph-provider/fuli_graph/ai_review.py +154 -0
  59. package/graph-provider/fuli_graph/common_knowledge.py +12 -0
  60. package/graph-provider/fuli_graph/graph_models.py +14 -0
  61. package/graph-provider/fuli_graph/graph_query.py +217 -0
  62. package/graph-provider/fuli_graph/knowledge_audit.py +6 -0
  63. package/graph-provider/fuli_graph/knowledge_batch_confirmation.py +6 -0
  64. package/graph-provider/fuli_graph/knowledge_management.py +23 -0
  65. package/graph-provider/fuli_graph/knowledge_review.py +383 -4
  66. package/graph-provider/fuli_graph/knowledge_review_models.py +61 -2
  67. package/graph-provider/fuli_graph/personal_global_preferences.py +5 -1
  68. package/graph-provider/fuli_graph/preference_conflicts.py +91 -1
  69. package/graph-provider/fuli_graph/project_agent_task_models.py +2 -0
  70. package/graph-provider/fuli_graph/project_knowledge.py +41 -0
  71. package/graph-provider/fuli_graph/runtime.py +8 -0
  72. package/graph-provider/fuli_graph/store_agent_verification.py +12 -5
  73. package/graph-provider/fuli_graph/store_knowledge.py +98 -58
  74. package/graph-provider/fuli_graph/store_project_agent_attention.py +1 -1
  75. package/graph-provider/fuli_graph/store_project_agent_task_activity.py +26 -0
  76. package/graph-provider/fuli_graph/store_project_agent_task_staffing.py +2 -1
  77. package/graph-provider/fuli_graph/system_agents.py +20 -1
  78. package/graph-provider/fuli_graph/system_hr_identity.py +19 -5
  79. package/graph-provider/pyproject.toml +1 -1
  80. package/npm-shrinkwrap.json +2 -2
  81. package/package.json +3 -2
  82. package/src/agent-tools/graph-definitions.js +2 -0
  83. package/src/agent-tools/graph-handlers.js +7 -0
  84. package/src/agent-tools/interface-catalog.js +6 -0
  85. package/src/agent-tools/judgment-definitions.js +12 -0
  86. package/src/agents/claude-code/wake.js +7 -0
  87. package/src/agents/codex/wake.js +7 -0
  88. package/src/employees/catalog/tonborg.json +20 -0
  89. package/src/employees/manifest.js +2 -2
  90. package/src/employees/recruitment.js +20 -1
  91. package/src/graphiti/agent-collaboration.js +8 -2
  92. package/src/graphiti/federated-application.js +6 -1
  93. package/src/graphiti/knowledge-review.js +7 -3
  94. package/src/graphiti/project-agent-mapping.js +2 -0
  95. package/src/graphiti/project-agent-task-entry.js +2 -2
  96. package/src/graphiti/task-entry-preferences.js +5 -0
  97. package/src/http/api-router.js +2 -0
  98. package/src/judgment/acceptance.js +91 -0
  99. package/src/judgment/engine.js +168 -0
  100. package/src/judgment/http.js +24 -0
  101. package/src/judgment/model.js +24 -0
  102. package/src/judgment/routing.js +96 -0
  103. package/src/judgment/scheduler.js +25 -0
  104. package/src/judgment/service.js +66 -0
  105. package/src/judgment/store.js +123 -0
  106. package/src/mcp/session-id.js +1 -0
  107. package/src/mcp/tool-annotations.js +4 -2
  108. package/src/server.js +9 -2
  109. package/dist/web/assets/AboutPage-cW9hDghN.js +0 -1
  110. package/dist/web/assets/AgentConversations-CGznTWuV.js +0 -2
  111. package/dist/web/assets/AgentHand-DkyF4vgk.js +0 -1
  112. package/dist/web/assets/AgentName-C1mAVr-v.js +0 -1
  113. package/dist/web/assets/AgentProfilePage-pKUR0rfj.js +0 -1
  114. package/dist/web/assets/AgentsDirectoryPage-CUlbT2hD.js +0 -1
  115. package/dist/web/assets/AgentsDirectoryPage-yRWktiin.css +0 -1
  116. package/dist/web/assets/ConnectionsPage-CuDHIJXu.js +0 -1
  117. package/dist/web/assets/EmployeeRecruitDialog-D9QfGipd.js +0 -1
  118. package/dist/web/assets/EmployeeWorkbenchPage-D-c_Jm2z.css +0 -1
  119. package/dist/web/assets/EmployeeWorkbenchPage-DAtvGney.js +0 -3
  120. package/dist/web/assets/KnowledgeEditDialog-a-5rasG0.js +0 -1
  121. package/dist/web/assets/KnowledgeInspector-BGsqjNY2.js +0 -1
  122. package/dist/web/assets/KnowledgeOrganizerPage-BndgUsHS.js +0 -1
  123. package/dist/web/assets/KnowledgeOrganizerPage-DeL7Jp34.css +0 -1
  124. package/dist/web/assets/KnowledgePage-CQweO0YJ.js +0 -1
  125. package/dist/web/assets/KnowledgeWorkspace-BtUjKTLb.js +0 -4
  126. package/dist/web/assets/NotFoundPage-BmQTTqQn.js +0 -1
  127. package/dist/web/assets/OverviewPage-C73HyTsM.js +0 -1
  128. package/dist/web/assets/PersonalProfilePage-BMuOrppx.js +0 -1
  129. package/dist/web/assets/PersonalProjectsPage-Cq9_kFvs.js +0 -1
  130. package/dist/web/assets/ProjectAgentFirstTask-CaHvOjkp.js +0 -1
  131. package/dist/web/assets/ProjectAgentsPage-WVcNdzVi.js +0 -12
  132. package/dist/web/assets/ProjectScopePicker-zAgiaZKL.js +0 -1
  133. package/dist/web/assets/PublicProjectsPage-DL093f65.js +0 -1
  134. package/dist/web/assets/ReviewPage-D_NIhPx8.js +0 -1
  135. package/dist/web/assets/RoundtablesPage-CdVVyZE-.js +0 -1
  136. package/dist/web/assets/SettingsPage-BmYkLul4.css +0 -1
  137. package/dist/web/assets/SettingsPage-CbLaau8Q.js +0 -1
  138. package/dist/web/assets/SharedJefaReportPage-aygd6wvb.js +0 -1
  139. package/dist/web/assets/UiDialog-Q7fsJUoO.js +0 -1
  140. package/dist/web/assets/UiDisclosure-BS-muK5j.js +0 -1
  141. package/dist/web/assets/UiSegmented-CT28bxqw.js +0 -1
  142. package/dist/web/assets/UiSelect-DcGpPQQo.js +0 -1
  143. package/dist/web/assets/WritingTastePage-CYlwAFqV.js +0 -1
  144. package/dist/web/assets/client-DLS5FZBI.js +0 -1
  145. package/dist/web/assets/console-CqzwSo7a.js +0 -1
  146. package/dist/web/assets/conversation-launcher-settings-DRoIz42V.js +0 -1
  147. package/dist/web/assets/index-D1OHIz4c.js +0 -5
  148. package/dist/web/assets/index-kPB0Cf8Q.css +0 -1
  149. package/dist/web/assets/model-DupZy8Qb.js +0 -1
  150. package/dist/web/assets/shared-report-BYnLhmCZ.js +0 -1
  151. package/dist/web/assets/useAgentRoster-ep7SpKv1.js +0 -1
  152. package/dist/web/assets/vue-router-B6ZjK-Br.js +0 -1
@@ -1 +0,0 @@
1
- import{C as e,M as t,P as n,S as r,_ as i,a,b as o,g as s,it as c,m as l,tt as u,w as d}from"./i18n-b14l2pQA.js";import{t as f}from"./_plugin-vue_export-helper-BDNMzG2s.js";import{t as p}from"./fuli-logo-Bu9WBuQe.js";var m=[`aria-label`],ee={class:`label-dimension-strip`},h=[`data-dimension`],g={class:`label-guide-sheet`},_={class:`label-guide-section profile-guide`},v={class:`label-definition-list`},y=[`data-kind`],b={class:`label-guide-section quadrant-guide`},x={class:`quadrant-explainer`},S={class:`quadrant-y-axis`,"aria-hidden":`true`},C=[`aria-label`],w=[`data-quadrant`],T={class:`quadrant-x-axis`,"aria-hidden":`true`},E={class:`quadrant-notes`},D={class:`label-guide-section confirmation-guide`},O={class:`status-table-wrap`},k={class:`status-definition-table`},A={scope:`col`},j={scope:`col`},M={scope:`col`},N={scope:`row`},P=[`data-status`],F=[`data-label`],I=[`data-label`],L={class:`status-boundaries`},R={class:`label-example`},z={class:`label-example-tags`,"aria-hidden":`true`},B={class:`label-token profile-token`,"data-kind":`taste`},V={class:`label-token origin-token`},H={class:`label-token status-token`,"data-status":`confirmed`},U={class:`label-all-note`},W=f(d({__name:`LabelGuide`,setup(e){let d=s(()=>[{key:`profile`,title:a(`about.dimensions.profile.title`),question:a(`about.dimensions.profile.question`),timing:a(`about.dimensions.profile.timing`)},{key:`origin`,title:a(`about.dimensions.origin.title`),question:a(`about.dimensions.origin.question`),timing:a(`about.dimensions.origin.timing`)},{key:`confirmation`,title:a(`about.dimensions.confirmation.title`),question:a(`about.dimensions.confirmation.question`),timing:a(`about.dimensions.confirmation.timing`)}]),f=s(()=>[{key:`taste`,label:a(`about.profiles.taste.label`),short:a(`about.profiles.taste.short`),description:a(`about.profiles.taste.description`)},{key:`personality`,label:a(`about.profiles.personality.label`),short:a(`about.profiles.personality.short`),description:a(`about.profiles.personality.description`)},{key:`judgment`,label:a(`about.profiles.judgment.label`),short:a(`about.profiles.judgment.short`),description:a(`about.profiles.judgment.description`)}]),p=s(()=>[{key:`known-unknown`,label:a(`about.quadrants.knownUnknown.label`),coordinate:a(`about.quadrants.knownUnknown.coordinate`),description:a(`about.quadrants.knownUnknown.description`)},{key:`known-known`,label:a(`about.quadrants.knownKnown.label`),coordinate:a(`about.quadrants.knownKnown.coordinate`),description:a(`about.quadrants.knownKnown.description`)},{key:`unknown-unknown`,label:a(`about.quadrants.unknownUnknown.label`),coordinate:a(`about.quadrants.unknownUnknown.coordinate`),description:a(`about.quadrants.unknownUnknown.description`)},{key:`unknown-known`,label:a(`about.quadrants.unknownKnown.label`),coordinate:a(`about.quadrants.unknownKnown.coordinate`),description:a(`about.quadrants.unknownKnown.description`)}]),W=s(()=>[{key:`pending`,label:a(`about.statuses.pending.label`),description:a(`about.statuses.pending.description`),rule:a(`about.statuses.pending.rule`)},{key:`agent-confirmed`,label:a(`about.statuses.agentConfirmed.label`),description:a(`about.statuses.agentConfirmed.description`),rule:a(`about.statuses.agentConfirmed.rule`)},{key:`confirmed`,label:a(`about.statuses.confirmed.label`),description:a(`about.statuses.confirmed.description`),rule:a(`about.statuses.confirmed.rule`)}]);return(e,s)=>(t(),o(`section`,{class:`label-guide`,"aria-label":u(a)(`about.labelsAria`)},[i(`div`,ee,[(t(!0),o(l,null,n(d.value,e=>(t(),o(`article`,{key:e.key,"data-dimension":e.key},[s[0]||=i(`i`,{"aria-hidden":`true`},null,-1),i(`dl`,null,[i(`dt`,null,c(e.title),1),i(`dd`,null,[r(c(e.question)+` `,1),i(`small`,null,c(e.timing),1)])])],8,h))),128))]),i(`div`,g,[i(`section`,_,[i(`header`,null,[i(`span`,null,c(u(a)(`about.sections.profile.index`)),1),i(`div`,null,[i(`h3`,null,c(u(a)(`about.sections.profile.title`)),1),i(`p`,null,c(u(a)(`about.sections.profile.meta`)),1)])]),i(`dl`,v,[(t(!0),o(l,null,n(f.value,e=>(t(),o(`div`,{key:e.key,class:`label-definition-row`},[i(`dt`,null,[i(`span`,{class:`label-token profile-token`,"data-kind":e.key},c(e.label),9,y)]),i(`dd`,null,[i(`strong`,null,c(e.short),1),i(`p`,null,c(e.description),1)])]))),128))])]),i(`section`,b,[i(`header`,null,[i(`span`,null,c(u(a)(`about.sections.origin.index`)),1),i(`div`,null,[i(`h3`,null,c(u(a)(`about.sections.origin.title`)),1),i(`p`,null,c(u(a)(`about.sections.origin.meta`)),1)])]),i(`div`,x,[i(`div`,S,[i(`span`,null,c(u(a)(`about.quadrants.aware`)),1),i(`strong`,null,c(u(a)(`about.quadrants.awareness`)),1),i(`span`,null,c(u(a)(`about.quadrants.unaware`)),1)]),i(`div`,{class:`quadrant-grid`,role:`group`,"aria-label":u(a)(`about.sections.origin.title`)},[(t(!0),o(l,null,n(p.value,e=>(t(),o(`article`,{key:e.key,"data-quadrant":e.key},[i(`span`,null,c(e.coordinate),1),i(`strong`,null,c(e.label),1),i(`p`,null,c(e.description),1)],8,w))),128))],8,C),i(`div`,T,[i(`span`,null,c(u(a)(`about.quadrants.unmastered`)),1),i(`strong`,null,c(u(a)(`about.quadrants.mastery`)),1),i(`span`,null,c(u(a)(`about.quadrants.mastered`)),1)]),i(`div`,E,[i(`p`,null,c(u(a)(`about.quadrants.immutable`)),1),i(`p`,null,c(u(a)(`about.quadrants.unclassified`)),1)])])]),i(`section`,D,[i(`header`,null,[i(`span`,null,c(u(a)(`about.sections.confirmation.index`)),1),i(`div`,null,[i(`h3`,null,c(u(a)(`about.sections.confirmation.title`)),1),i(`p`,null,c(u(a)(`about.sections.confirmation.meta`)),1)])]),i(`div`,O,[i(`table`,k,[i(`thead`,null,[i(`tr`,null,[i(`th`,A,c(u(a)(`about.sections.confirmation.title`)),1),i(`th`,j,c(u(a)(`about.statuses.descriptionHeader`)),1),i(`th`,M,c(u(a)(`about.statuses.entryCondition`)),1)])]),i(`tbody`,null,[(t(!0),o(l,null,n(W.value,e=>(t(),o(`tr`,{key:e.key,class:`status-definition-row`},[i(`th`,N,[i(`span`,{class:`label-token status-token`,"data-status":e.key},c(e.label),9,P)]),i(`td`,{"data-label":u(a)(`about.statuses.descriptionHeader`)},c(e.description),9,F),i(`td`,{"data-label":u(a)(`about.statuses.entryCondition`)},[i(`strong`,null,c(e.rule),1)],8,I)]))),128))])]),i(`div`,L,[i(`p`,null,c(u(a)(`about.statuses.usageBoundary`)),1),i(`p`,null,c(u(a)(`about.statuses.resetBoundary`)),1)])])]),i(`section`,R,[i(`div`,null,[i(`span`,null,c(u(a)(`about.example.title`)),1),i(`strong`,null,c(u(a)(`about.example.item`)),1)]),i(`div`,z,[i(`span`,B,c(u(a)(`about.example.profile`)),1),i(`span`,V,c(u(a)(`about.example.origin`)),1),i(`span`,H,c(u(a)(`about.example.status`)),1)]),i(`p`,null,c(u(a)(`about.example.description`)),1)]),i(`p`,U,c(u(a)(`about.allFilter`)),1)])],8,m))}}),[[`__scopeId`,`data-v-234eb38f`]]),G={class:`open-source-credits`,"aria-labelledby":`credits-title`},K={class:`credits-heading`},q={id:`credits-title`},J={class:`credit-list`},Y=[`href`],X={class:`credit-role`},te={class:`credit-name`},Z={class:`credit-source-note`},Q={class:`fuli-finale`},ne={class:`finale-logo-plate`},re=[`src`],ie={class:`finale-brand`},ae={class:`finale-site-link`,"data-testid":`about-website-link`,href:`https://xn--8ovp9s.xn--m8txu.com/fuli/`,target:`_blank`,rel:`noreferrer`},oe=f(d({__name:`OpenSourceCredits`,setup(e){let r=s(()=>[{name:`Vue.js`,role:a(`about.credits.roles.vue`),url:`https://vuejs.org/`},{name:`Vite`,role:a(`about.credits.roles.vite`),url:`https://vite.dev/`},{name:`Pinia`,role:a(`about.credits.roles.pinia`),url:`https://pinia.vuejs.org/`},{name:`D3.js`,role:a(`about.credits.roles.d3`),url:`https://d3js.org/`},{name:`Vitest`,role:a(`about.credits.roles.vitest`),url:`https://vitest.dev/`},{name:`Hono`,role:a(`about.credits.roles.hono`),url:`https://hono.dev/`},{name:`Neo4j`,role:a(`about.credits.roles.neo4j`),url:`https://neo4j.com/`},{name:`Zod`,role:a(`about.credits.roles.zod`),url:`https://zod.dev/`},{name:`FastAPI`,role:a(`about.credits.roles.fastapi`),url:`https://fastapi.tiangolo.com/`},{name:`Graphiti`,role:a(`about.credits.roles.graphiti`),url:`https://github.com/getzep/graphiti`},{name:`Model Context Protocol`,role:a(`about.credits.roles.mcp`),url:`https://modelcontextprotocol.io/`}]);return(e,s)=>(t(),o(`section`,G,[i(`header`,K,[s[0]||=i(`span`,{class:`credits-index`,"aria-hidden":`true`},`03`,-1),i(`div`,null,[i(`h2`,q,c(u(a)(`about.credits.title`)),1),i(`p`,null,c(u(a)(`about.credits.description`)),1)])]),i(`ul`,J,[(t(!0),o(l,null,n(r.value,e=>(t(),o(`li`,{key:e.name,class:`credit-item`},[i(`a`,{class:`credit-row`,href:e.url,target:`_blank`,rel:`noreferrer`},[i(`span`,X,c(e.role),1),i(`span`,te,[i(`strong`,null,c(e.name),1),s[1]||=i(`span`,{class:`credit-arrow`,"aria-hidden":`true`},`↗`,-1)])],8,Y)]))),128))]),i(`p`,Z,c(u(a)(`about.credits.sourceNote`)),1),i(`footer`,Q,[i(`span`,ne,[i(`img`,{src:u(p),alt:``,"aria-hidden":`true`},null,8,re)]),i(`div`,ie,[i(`strong`,null,c(u(a)(`common.brand`)),1),s[2]||=i(`span`,null,`Context Graph`,-1)]),i(`p`,null,c(u(a)(`about.credits.finale`)),1),i(`a`,ae,c(u(a)(`about.credits.website`)),1)])]))}}),[[`__scopeId`,`data-v-6191d078`]]),se={class:`product-principles`,"aria-labelledby":`principles-title`},ce={class:`principles-heading`},le={id:`principles-title`},ue={class:`principle-sequence`},de={class:`principle-boundaries`},fe=[`data-boundary`],pe=f(d({__name:`ProductPrinciples`,setup(e){let r=s(()=>[{key:`capture`,index:a(`about.philosophy.capture.index`),title:a(`about.philosophy.capture.title`),description:a(`about.philosophy.capture.description`)},{key:`project`,index:a(`about.philosophy.project.index`),title:a(`about.philosophy.project.title`),description:a(`about.philosophy.project.description`)},{key:`review`,index:a(`about.philosophy.review.index`),title:a(`about.philosophy.review.title`),description:a(`about.philosophy.review.description`)},{key:`reuse`,index:a(`about.philosophy.reuse.index`),title:a(`about.philosophy.reuse.title`),description:a(`about.philosophy.reuse.description`)}]),d=s(()=>[{key:`local`,title:a(`about.philosophy.local.title`),description:a(`about.philosophy.local.description`)},{key:`authority`,title:a(`about.philosophy.authority.title`),description:a(`about.philosophy.authority.description`)},{key:`scope`,title:a(`about.philosophy.scope.title`),description:a(`about.philosophy.scope.description`)}]);return(e,s)=>(t(),o(`section`,se,[i(`header`,ce,[s[0]||=i(`span`,{class:`principles-index`,"aria-hidden":`true`},`01`,-1),i(`div`,null,[i(`h2`,le,c(u(a)(`about.philosophy.sectionTitle`)),1),i(`p`,null,c(u(a)(`about.philosophy.support`)),1)])]),i(`div`,ue,[(t(!0),o(l,null,n(r.value,e=>(t(),o(`article`,{key:e.key},[i(`span`,null,c(e.index),1),i(`div`,null,[i(`h3`,null,c(e.title),1),i(`p`,null,c(e.description),1)])]))),128))]),i(`div`,de,[i(`h3`,null,c(u(a)(`about.philosophy.boundariesTitle`)),1),i(`div`,null,[(t(!0),o(l,null,n(d.value,e=>(t(),o(`article`,{key:e.key},[i(`i`,{"data-boundary":e.key,"aria-hidden":`true`},null,8,fe),i(`h4`,null,c(e.title),1),i(`p`,null,c(e.description),1)]))),128))])])]))}}),[[`__scopeId`,`data-v-6089df60`]]),me=[`aria-label`],he={class:`about-content`},ge={class:`about-opening`},_e={class:`about-brand-lockup`},ve={class:`about-logo-plate`},ye=[`src`],be={class:`about-brand-name`},$={class:`about-opening-claim`},xe={class:`about-opening-copy`},Se={class:`about-labels-section`,"aria-labelledby":`about-labels-title`},Ce={class:`about-section-heading`},we={id:`about-labels-title`},Te=f(d({__name:`AboutPage`,setup(n){return(n,r)=>(t(),o(`section`,{class:`view about-view`,"aria-label":u(a)(`about.aria`)},[i(`div`,he,[i(`header`,ge,[i(`div`,_e,[i(`span`,ve,[i(`img`,{"data-testid":`about-opening-logo`,src:u(p),alt:``,"aria-hidden":`true`},null,8,ye)]),i(`span`,be,c(u(a)(`common.brand`)),1)]),i(`p`,$,c(u(a)(`about.philosophy.title`)),1),i(`p`,xe,c(u(a)(`about.philosophy.intro`)),1)]),e(pe),i(`section`,Se,[i(`header`,Ce,[r[0]||=i(`span`,{class:`about-section-index`,"aria-hidden":`true`},`02`,-1),i(`div`,null,[i(`h2`,we,c(u(a)(`about.labelsIntro.title`)),1),i(`p`,null,c(u(a)(`about.labelsIntro.description`)),1)])]),e(W)]),e(oe)])],8,me))}}),[[`__scopeId`,`data-v-a41cabd8`]]);export{Te as default};
@@ -1,2 +0,0 @@
1
- import{M as e,P as t,R as n,S as r,V as i,X as a,_ as o,a as s,b as c,c as ee,it as l,m as u,n as te,p as d,tt as f,u as p,v as m,w as h,y as g}from"./i18n-b14l2pQA.js";import{a as ne,i as _,o as v}from"./client-DLS5FZBI.js";import{t as y}from"./_plugin-vue_export-helper-BDNMzG2s.js";import{t as re}from"./UiSelect-DcGpPQQo.js";var ie={class:`conversation-hint`},ae={key:2,role:`alert`},oe={key:3,class:`conversation-list`},se=[`aria-pressed`,`disabled`,`onClick`],ce=[`datetime`],le=[`data-copy-continuation`,`onClick`],ue={key:1,"data-continuation-feedback":``},b={key:0,role:`status`,class:`conversation-hint`},de={role:`alert`,class:`conversation-hint`},fe=[`aria-label`,`value`],pe={key:2,class:`conversation-messages`},me={key:0,class:`conversation-hint`},he={key:2,role:`alert`},ge=[`onClick`],x=[`onClick`],S={key:4,class:`conversation-hint`},_e={key:4},ve=[`disabled`],ye={class:`capture-toggle`},be={class:`conversation-hint`},xe={class:`quiet-button`,type:`submit`},Se={key:1},Ce={key:2,role:`alert`},we={key:3,role:`status`},C=y(h({__name:`AgentConversations`,props:{personalSpaceId:{},agentId:{},projects:{}},setup(h){let y=h,C=a(``),w=a(!1),T=a(!1),E=a([]),D=a(!1),O=a(``),k=a(``),A=a([]),j=a(!1),M=a(``),N=a(),P=a(!1),F=a(!1),I=a(!1),L=a(``),R=a(!1),z=a(!1),B=a(64),V=a(4e3),H=a(!0),U=a(),W=0,G=0,K=0,q=0;function J(){return{personalSpaceId:y.personalSpaceId,personalProjectId:C.value,agentId:y.agentId}}function Y(e){return e instanceof Error?e.message:s(`projectAgents.conversations.loadFailed`)}n(()=>[y.agentId,y.personalSpaceId,y.projects.map(e=>e.id).join(`
2
- `)],()=>{let e=y.projects.some(e=>e.id===C.value)?C.value:y.projects[0]?.id??``;e===C.value?X():C.value=e},{immediate:!0}),n(C,()=>void X());async function X(){let e=++W;if(++G,++K,++q,E.value=[],A.value=[],k.value=``,O.value=``,M.value=``,U.value=void 0,F.value=!1,I.value=!1,L.value=``,z.value=!1,R.value=!1,D.value=!1,j.value=!1,P.value=!1,!(!w.value||!C.value)){D.value=!0,T.value&&$();try{let t=await _(`/api/agent-conversations/query`,{...J(),mode:`list`,limit:20});e===W&&(E.value=t.conversations)}catch(t){e===W&&(O.value=Y(t))}finally{e===W&&(D.value=!1)}}}function Te(e){let t=e.target.open;t!==w.value&&(w.value=t,t?X():(++W,++G,++K,++q,U.value=void 0,T.value=!1))}async function Z(e,t=!1){if(j.value||!C.value)return;let n=++G;k.value=e,M.value=``,j.value=!0,t||(A.value=[],N.value=void 0,P.value=!1);try{let r=await _(`/api/agent-conversations/query`,{...J(),mode:`events`,conversationId:e,limit:20,...t&&N.value!==void 0?{after:N.value}:{}});if(n!==G)return;A.value=t?[...A.value,...r.events]:r.events,N.value=r.next_cursor,P.value=r.has_more===!0&&r.next_cursor!==void 0}catch(e){n===G&&(M.value=Y(e))}finally{n===G&&(j.value=!1)}}function Ee(e){T.value=e.target.open,T.value&&!F.value&&!I.value&&w.value&&$()}function Q(e){B.value=e.compact_after_kb,V.value=e.context_budget,H.value=e.enabled}async function $(){let e=++K;I.value=!0,L.value=``,z.value=!1;try{let t=await _(`/api/agent-conversations/query`,{...J(),mode:`policy`});e===K&&(Q(t),F.value=!0)}catch(t){e===K&&(L.value=Y(t))}finally{e===K&&(I.value=!1)}}async function De(){if(R.value||!F.value)return;if(z.value=!1,L.value=``,!Number.isInteger(B.value)||B.value<8||B.value>1024||!Number.isInteger(V.value)||V.value<512||V.value>16e3){L.value=s(`projectAgents.conversations.invalidPolicy`);return}let e=K;R.value=!0;try{let t=await ne(`/api/agent-conversations/policy`,{...J(),compactAfterKb:B.value,contextBudget:V.value,enabled:H.value});e===K&&(Q(t),z.value=!0)}catch(t){e===K&&(L.value=Y(t))}finally{e===K&&(R.value=!1)}}function Oe(e){let t=new Date(e);return Number.isNaN(t.getTime())?s(`projectAgents.notReported`):new Intl.DateTimeFormat(te(),{dateStyle:`short`,timeStyle:`short`}).format(t)}function ke(e){return[`user`,`assistant`,`tool`].includes(e)?s(`projectAgents.conversations.${e}`):e}function Ae(e){return typeof e==`string`?e:JSON.stringify(e,null,2)}async function je(e){let t=e.continuation_prompt;if(!t)return;let n=++q,r=C.value;U.value=void 0;try{let i=globalThis.navigator?.clipboard;if(!i?.writeText)throw Error(`Clipboard unavailable`);await i.writeText(t),n===q&&r===C.value&&(U.value={conversationId:e.id,state:`copied`})}catch{n===q&&r===C.value&&(U.value={conversationId:e.id,state:`fallback`})}}function Me(e){e.target.select()}return(n,a)=>(e(),c(`details`,{class:`agent-conversations`,onToggle:Te},[o(`summary`,null,l(f(s)(`projectAgents.conversations.title`)),1),w.value?(e(),c(u,{key:0},[h.projects.length?(e(),m(re,{key:0,modelValue:C.value,"onUpdate:modelValue":a[0]||=e=>C.value=e,field:``,label:f(s)(`projectAgents.fields.project`),options:h.projects.map(e=>({value:e.id,label:e.name}))},null,8,[`modelValue`,`label`,`options`])):g(``,!0),o(`p`,ie,l(f(s)(`projectAgents.conversations.hint`)),1),D.value?(e(),m(v,{key:1,variant:`compact`,label:f(s)(`projectAgents.conversations.loading`)},null,8,[`label`])):O.value?(e(),c(`div`,ae,[o(`p`,null,l(O.value),1),o(`button`,{"data-retry-list":``,class:`quiet-button`,type:`button`,onClick:X},l(f(s)(`projectAgents.retry`)),1)])):E.value.length?(e(),c(`ol`,oe,[(e(!0),c(u,null,t(E.value,n=>(e(),c(`li`,{key:n.id},[o(`button`,{"data-read-conversation":``,class:`conversation-link`,type:`button`,"aria-pressed":k.value===n.id,disabled:j.value,onClick:e=>Z(n.id)},[o(`strong`,null,l(n.summary||f(s)(`projectAgents.conversations.untitled`)),1),o(`span`,null,[r(l(n.compacted_through>0?f(s)(`projectAgents.conversations.compacted`):f(s)(`projectAgents.conversations.recent`))+` · `,1),o(`time`,{datetime:n.last_activity},l(Oe(n.last_activity)),9,ce)])],8,se),n.continuation_prompt?(e(),c(`button`,{key:0,"data-copy-continuation":n.id,class:`quiet-button continuation-copy`,type:`button`,onClick:e=>je(n)},l(f(s)(`projectAgents.conversations.copyContinuation`)),9,le)):g(``,!0),U.value?.conversationId===n.id?(e(),c(`div`,ue,[U.value.state===`copied`?(e(),c(`p`,b,l(f(s)(`projectAgents.conversations.copiedContinuation`)),1)):(e(),c(u,{key:1},[o(`p`,de,l(f(s)(`projectAgents.conversations.copyContinuationFailed`)),1),o(`textarea`,{"data-continuation-fallback":``,readonly:``,rows:`3`,"aria-label":f(s)(`projectAgents.conversations.manualContinuation`),value:n.continuation_prompt,onFocus:Me},null,40,fe)],64))])):g(``,!0),k.value===n.id?(e(),c(`div`,pe,[n.raw_retained?(e(),c(`p`,me,l(f(s)(`projectAgents.conversations.rawRetained`)),1)):g(``,!0),o(`ol`,null,[(e(!0),c(u,null,t(A.value,t=>(e(),c(`li`,{key:t.sequence},[o(`strong`,null,l(ke(t.role)),1),o(`pre`,null,l(Ae(t.content)),1)]))),128))]),j.value?(e(),m(v,{key:1,variant:`compact`,label:f(s)(`projectAgents.conversations.loadingMessages`)},null,8,[`label`])):M.value?(e(),c(`div`,he,[o(`p`,null,l(M.value),1),o(`button`,{class:`quiet-button`,type:`button`,onClick:e=>Z(n.id,A.value.length>0)},l(f(s)(`projectAgents.retry`)),9,ge)])):P.value?(e(),c(`button`,{key:3,"data-more-messages":``,class:`quiet-button`,type:`button`,onClick:e=>Z(n.id,!0)},l(f(s)(`projectAgents.conversations.more`)),9,x)):A.value.length?g(``,!0):(e(),c(`p`,S,l(f(s)(`projectAgents.conversations.noMessages`)),1))])):g(``,!0)]))),128))])):(e(),c(`p`,_e,l(f(s)(`projectAgents.conversations.empty`)),1)),C.value?(e(),c(`details`,{key:5,"data-memory-settings":``,onToggle:d(Ee,[`stop`])},[o(`summary`,null,l(f(s)(`projectAgents.conversations.settings`)),1),I.value?(e(),m(v,{key:0,variant:`compact`,label:f(s)(`projectAgents.conversations.loadingPolicy`)},null,8,[`label`])):g(``,!0),F.value?(e(),c(`form`,{key:1,onSubmit:d(De,[`prevent`])},[o(`fieldset`,{disabled:R.value},[o(`label`,ye,[i(o(`input`,{"onUpdate:modelValue":a[1]||=e=>H.value=e,type:`checkbox`},null,512),[[ee,H.value]]),r(l(f(s)(`projectAgents.conversations.capture`)),1)]),o(`label`,null,[r(l(f(s)(`projectAgents.conversations.compactAfterKb`)),1),i(o(`input`,{"onUpdate:modelValue":a[2]||=e=>B.value=e,name:`compactAfterKb`,type:`number`,min:`8`,max:`1024`,required:``},null,512),[[p,B.value,void 0,{number:!0}]])]),o(`label`,null,[r(l(f(s)(`projectAgents.conversations.budget`)),1),i(o(`input`,{"onUpdate:modelValue":a[3]||=e=>V.value=e,name:`contextBudget`,type:`number`,min:`512`,max:`16000`,required:``},null,512),[[p,V.value,void 0,{number:!0}]])]),o(`p`,be,l(f(s)(`projectAgents.conversations.budgetHint`)),1),o(`button`,xe,[R.value?(e(),m(v,{key:0,variant:`inline`,label:f(s)(`projectAgents.conversations.saving`)},null,8,[`label`])):(e(),c(`span`,Se,l(f(s)(`projectAgents.conversations.save`)),1))])],8,ve)],32)):g(``,!0),L.value?(e(),c(`div`,Ce,[o(`p`,null,l(L.value),1),F.value?g(``,!0):(e(),c(`button`,{key:0,class:`quiet-button`,type:`button`,onClick:$},l(f(s)(`projectAgents.retry`)),1))])):g(``,!0),z.value?(e(),c(`p`,we,l(f(s)(`projectAgents.conversations.saved`)),1)):g(``,!0)],32)):g(``,!0)],64)):g(``,!0)],32))}}),[[`__scopeId`,`data-v-d822789b`]]);export{C as t};
@@ -1 +0,0 @@
1
- import{B as e,I as t,M as n,_ as r,a as i,b as a,g as o,it as s,tt as c,v as l,w as u,y as d}from"./i18n-b14l2pQA.js";import{t as f}from"./_plugin-vue_export-helper-BDNMzG2s.js";import{n as p}from"./attention-store-D-qIFRIb.js";var m={key:0,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.7`,"stroke-linecap":`round`,"stroke-linejoin":`round`,"aria-hidden":`true`},h={"aria-hidden":`true`},g=f(u({__name:`AgentHand`,props:{agentId:{},passive:{type:Boolean},countOnly:{type:Boolean}},setup(u){let f=u,g=p(),_=o(()=>f.agentId?g.counts[f.agentId]??0:g.total);function v(e){f.passive||(e.preventDefault(),e.stopPropagation(),g.show(f.agentId))}return(o,f)=>_.value?(n(),l(t(u.passive?`span`:`button`),{key:0,type:u.passive?void 0:`button`,class:`agent-hand`,"aria-label":c(i)(`attention.count`,{count:_.value}),title:c(i)(`attention.count`,{count:_.value}),onClick:v},{default:e(()=>[u.countOnly?d(``,!0):(n(),a(`svg`,m,[...f[0]||=[r(`path`,{d:`M8 13V5a1.5 1.5 0 0 1 3 0v6-8a1.5 1.5 0 0 1 3 0v8-6a1.5 1.5 0 0 1 3 0v7-3a1.5 1.5 0 0 1 3 0v6c0 4-2 7-6 7h-1c-3 0-4-1-6-4l-3-4a1.6 1.6 0 0 1 2.5-2z`},null,-1)]])),r(`span`,h,s(_.value),1)]),_:1},8,[`type`,`aria-label`,`title`])):d(``,!0)}}),[[`__scopeId`,`data-v-5bcf651a`]]);export{g as t};
@@ -1 +0,0 @@
1
- import{B as e,M as t,S as n,it as r,tt as i,v as a,w as o}from"./i18n-b14l2pQA.js";import{t as s}from"./_plugin-vue_export-helper-BDNMzG2s.js";import{t as c}from"./vue-router-B6ZjK-Br.js";import{n as l}from"./profile-model-BQO4zNs9.js";var u=s(o({__name:`AgentName`,props:{spaceId:{},agentId:{},name:{}},setup(o){return(s,u)=>(t(),a(i(c),{class:`agent-name-link`,to:i(l)(o.spaceId,o.agentId)},{default:e(()=>[n(r(o.name),1)]),_:1},8,[`to`]))}}),[[`__scopeId`,`data-v-4c868995`]]);export{u as t};
@@ -1 +0,0 @@
1
- import{B as e,C as t,M as n,P as r,R as i,S as a,V as o,X as s,_ as c,a as l,b as u,d,g as f,it as p,j as m,k as ee,m as h,nt as g,p as te,tt as _,u as v,v as y,w as b,y as x}from"./i18n-b14l2pQA.js";import{t as S}from"./console-CqzwSo7a.js";import{a as C,n as w,o as T}from"./client-DLS5FZBI.js";import{m as E}from"./useApi-CROJJdhE-CEQAEuug.js";import{t as D}from"./vue-router-B6ZjK-Br.js";import{t as O}from"./UiSelect-DcGpPQQo.js";import{t as k}from"./UiDisclosure-BS-muK5j.js";import{n as A}from"./paths-CDREouhi.js";import{a as j,r as M,t as N}from"./profile-model-BQO4zNs9.js";import{t as P}from"./AgentName-C1mAVr-v.js";import{t as F}from"./AgentConversations-CGznTWuV.js";import{d as ne,i as I,m as re,r as ie,t as ae,v as oe,w as se}from"./agent-work-summary-LeW-Al_S.js";import{t as ce}from"./useAgentRoster-ep7SpKv1.js";import{a as le}from"./catalog-UDv854JN.js";/* empty css */var ue={key:1,class:`agent-locked-platforms`},L={key:2,class:`agent-platform-field`},de=[`disabled`,`placeholder`],R=[`onUpdate:modelValue`,`disabled`],fe={key:3,role:`alert`},pe={key:4,role:`status`},z=[`disabled`],me=b({__name:`AgentProfileSettings`,props:{agent:{}},emits:[`saved`],setup(e,{emit:d}){let m=e,ee=d,g=s([]),b=s(!1),S=s(!1),E=s(``),D=s(!1),k=``,A=s(``),j=s(``),M=s({judgment:``,taste:``,personality:``}),N=f(()=>m.agent.profile.executorPolicy?.mode===`locked`),P=f(()=>{let e=m.agent.profile.executorPolicy;return(e?.lockedExecutorIds?.length?e.lockedExecutorIds:(e?.allowList??[]).map(e=>e.executorId)).map(e=>g.value.find(t=>t.executorId===e)?.displayName||e)}),F=f(()=>g.value.filter(e=>e.registrationStatus===`registered`&&e.permissionStatus===`authorized`&&e.preflightStatus===`passed`&&e.workspacePermission&&e.healthStatus!==`unhealthy`&&(!e.healthRequired||e.healthStatus===`healthy`))),ne=f(()=>[{value:``,label:l(`agentProfiles.automatic`)},...A.value&&!F.value.some(e=>e.executorId===A.value)?[{value:A.value,label:l(`agentProfiles.platformUnavailable`),disabled:!0}]:[],...F.value.map(e=>({value:e.executorId,label:e.displayName||e.executorId}))]),I=0;i(()=>`${m.agent.personalSpaceId}/${m.agent.agentId}`,async()=>{let e=m.agent,t=++I;j.value=e.profile.expectations??``,M.value={judgment:``,taste:``,personality:``,...e.profile.character},A.value=e.profile.executorPolicy?.preferredExecutorIds?.[0]??``,k=A.value,E.value=``,D.value=!1,S.value=!1,b.value=!0,g.value=[];try{let n=await w(`/api/executors?${new URLSearchParams({personalSpaceId:e.personalSpaceId})}`);t===I&&(g.value=Array.isArray(n)?n:n.executors)}catch{t===I&&(E.value=l(`agentProfiles.platformUnavailable`))}finally{t===I&&(b.value=!1)}},{immediate:!0});async function re(){if(S.value)return;let e=I,t=m.agent;S.value=!0,E.value=``,D.value=!1;let n=t.profile.executorPolicy;try{let r=await C(`/api/project-agents`,{personalSpaceId:t.personalSpaceId,personalProjectId:t.personalProjectId??null,agentId:t.agentId,profile:{...t.profile,character:{...M.value},expectations:j.value,executorPolicy:N.value||A.value===k?n:{...n,mode:`flexible`,preferredExecutorIds:A.value?[A.value]:[]}}});e===I&&(k=A.value,ee(`saved`,r),D.value=!0)}catch(t){e===I&&(E.value=t instanceof Error?t.message:l(`agentProfiles.saveError`))}finally{e===I&&(S.value=!1)}}return(e,i)=>(n(),u(`form`,{class:`agent-simple-settings`,onSubmit:te(re,[`prevent`])},[c(`h3`,null,p(_(l)(`agentProfiles.settings`)),1),b.value?(n(),y(T,{key:0,variant:`compact`,label:_(l)(`agentProfiles.settingsLoading`)},null,8,[`label`])):N.value?(n(),u(`div`,ue,[c(`h4`,null,p(_(l)(`agentProfiles.platform`)),1),c(`p`,null,p(P.value.join(` · `)||_(l)(`agentProfiles.platformUnavailable`)),1),c(`small`,null,p(_(l)(`agentProfiles.locked`)),1)])):(n(),u(`div`,L,[t(O,{modelValue:A.value,"onUpdate:modelValue":i[0]||=e=>A.value=e,field:``,label:_(l)(`agentProfiles.platform`),options:ne.value,disabled:N.value||S.value},null,8,[`modelValue`,`label`,`options`,`disabled`]),c(`small`,null,p(_(l)(N.value?`agentProfiles.locked`:`agentProfiles.platformHint`)),1)])),c(`label`,null,[a(p(_(l)(`agentProfiles.expectations`)),1),o(c(`textarea`,{"onUpdate:modelValue":i[1]||=e=>j.value=e,rows:`3`,maxlength:`4096`,disabled:S.value,placeholder:_(l)(`agentProfiles.expectationsPlaceholder`)},null,8,de),[[v,j.value]])]),c(`details`,null,[c(`summary`,null,p(_(l)(`agentProfiles.editCharacter`)),1),(n(),u(h,null,r([`judgment`,`taste`,`personality`],e=>c(`label`,{key:e},[a(p(_(l)(`agentProfiles.${e}`)),1),o(c(`textarea`,{"onUpdate:modelValue":t=>M.value[e]=t,rows:`2`,maxlength:`2048`,disabled:S.value},null,8,R),[[v,M.value[e]]])])),64))]),E.value?(n(),u(`p`,fe,p(E.value),1)):x(``,!0),D.value?(n(),u(`p`,pe,p(_(l)(`agentProfiles.saved`)),1)):x(``,!0),c(`button`,{class:`primary-button`,disabled:S.value||b.value,type:`submit`},[S.value?(n(),y(T,{key:0,variant:`inline`,label:_(l)(`agentProfiles.saving`)},null,8,[`label`])):(n(),u(h,{key:1},[a(p(_(l)(`agentProfiles.save`)),1)],64))],8,z)],32))}}),he=[`aria-label`],ge={key:1,class:`ui-card ui-empty agent-profile-empty`,role:`alert`},_e={key:2,class:`ui-card ui-empty agent-profile-empty`},ve={class:`ui-card agent-resume-header`},ye={class:`agent-portrait`,"aria-hidden":`true`},be={class:`agent-resume-intro`},xe={class:`agent-resume-name-row`},Se={key:0,class:`ui-badge fla-employee-number`},Ce={class:`agent-resume-meta`},we={class:`agent-profile-actions`},Te=[`aria-expanded`],Ee={key:1,class:`agent-profile-refresh-status`,role:`status`},De=[`aria-label`],Oe=[`id`,`aria-selected`,`aria-controls`,`tabindex`,`onClick`,`onKeydown`],ke={key:4,class:`agent-profile-partial`,role:`status`},Ae=[`aria-hidden`],je={class:`agent-profile-primary-grid`},Me={class:`ui-card agent-resume-section agent-current-work-section`},Ne={class:`agent-section-heading`},Pe={key:0},Fe={key:0,class:`agent-current-work-list`},Ie={class:`ui-badge`},Le={key:1,class:`agent-muted`},Re={key:2,class:`agent-muted`},ze={class:`ui-card agent-resume-section agent-projects-section`},Be={class:`agent-section-heading`},Ve={class:`agent-resume-list agent-current-project-list`},He={key:0,class:`agent-project-responsibility`},Ue={class:`agent-resume-list`},We={key:0,class:`agent-project-responsibility`},Ge={key:1,class:`agent-muted`},Ke=[`aria-hidden`],qe={class:`ui-card agent-resume-section`},Je={key:0,class:`ui-disclosure`,open:``},Ye={class:`agent-resume-list`},Xe={key:1,class:`agent-muted`},Ze={class:`ui-card agent-resume-section`},Qe={class:`agent-muted`},$e={class:`agent-work-timeline`},et={class:`agent-section-heading`},tt={key:0},nt={key:0},rt={key:0},it={key:0,class:`agent-muted`},at=[`aria-hidden`],ot={class:`ui-card agent-resume-section`},st={class:`agent-character`},ct={key:0,class:`agent-expectation`},lt={class:`agent-strengths`},ut={class:`agent-inline-skills`},dt={key:0},ft=[`aria-hidden`],pt={class:`ui-card agent-resume-section`},mt={class:`agent-section-heading`},ht={key:0,role:`status`},gt={key:0,class:`agent-org-lead`},_t={key:1,class:`agent-org-reporting`},vt={key:2,class:`agent-org-members`},yt={key:2,class:`agent-muted`},bt={key:0,class:`agent-muted`},xt={class:`ui-card agent-resume-section`},St={class:`agent-collaborators`},Ct={key:0,class:`agent-muted`},wt=[`aria-hidden`],Tt={class:`ui-card agent-resume-section`},Et=[`aria-hidden`],Dt={class:`ui-card agent-resume-section agent-management-card`},Ot={class:`agent-muted`},kt={class:`agent-profile-management-links`},At={class:`agent-profile-footer`},B=b({__name:`AgentProfilePage`,setup(te){let v=E(),b=S(),C=f(()=>b.activePersonalSpace?.id??``),{agents:O,loading:ue,error:L,load:de}=ce(C),R=f(()=>v.params.spaceId===C.value?O.value.find(e=>e.personalSpaceId===C.value&&(e.agentId===v.params.agentId||e.legacyAgentIds?.includes(String(v.params.agentId)))):void 0),fe=f(()=>(b.state?.personalProjects??[]).filter(e=>e.personal_space_id===C.value)),pe=f(()=>fe.value.map(e=>({id:e.project_id,name:e.profile.name}))),z=e=>fe.value.find(t=>t.project_id===e)?.profile.name||e,B=e=>{let t=O.value.find(t=>t.agentId===e);return t?N(t):e},V=s([]),H=s(void 0),U=s([]),W=s(!1),G=s(!1),K=s(!1),q=s(`overview`),J=f(()=>{let e=[{id:`overview`,label:l(`agentProfiles.working`)},{id:`history`,label:l(`agentProfiles.experience`)},{id:`style`,label:l(`agentProfiles.about`)},{id:`collaborators`,label:l(`agentProfiles.collaborators`)},{id:`management`,label:l(`agentProfiles.advanced`)}];return R.value?.memoryScope===`reviewed_agent`&&e.splice(4,0,{id:`conversations`,label:l(`projectAgents.conversations.title`)}),e}),jt=f(()=>R.value?M(R.value.agentId,V.value):[]),Y=f(()=>R.value?j({...R.value,assignments:H.value??R.value.assignments}):[]),Mt=f(()=>Y.value.slice(0,4)),Nt=f(()=>Y.value.slice(4)),Pt=f(()=>(H.value??[]).filter(e=>e.status!==`active`)),X=f(()=>V.value.filter(e=>I.has(e.status)).slice(0,6)),Z=f(()=>le.value.find(e=>e.agentId===R.value?.agentId)),Q=e=>e&&!Number.isNaN(Date.parse(e))?new Date(e).toLocaleDateString():l(`agentProfiles.timeUnknown`),$=e=>{let t=H.value?.find(t=>t.personalProjectId===e&&t.status===`active`)?.responsibility?.trim(),n=R.value?.profile.responsibility.trim();return t&&t!==n?t:``},Ft=f(()=>{let e=`agentRedesign.projects.more`,t=l(e,{count:Y.value.length});return t===e?`All projects (${Y.value.length})`:t}),It=0;i(()=>R.value?`${R.value.personalSpaceId}/${R.value.agentId}`:``,async()=>{let e=R.value,t=++It;if(V.value=[],H.value=void 0,U.value=[],G.value=!1,W.value=!1,K.value=!1,q.value=`overview`,!e)return;W.value=!0,H.value=e.assignments;let n=new URLSearchParams({personalSpaceId:e.personalSpaceId}),r=new URLSearchParams({personalSpaceId:e.personalSpaceId,agentId:e.agentId}),i=await Promise.allSettled([w(`/api/project-agent-tasks?${n}&limit=200`),w(`/api/project-agent-assignments?${r}`)]);if(t!==It)return;let[a,o]=i;if(a.status===`fulfilled`){let t=a.value,n=se(t);G.value=!ae(t),V.value=ne(Array.isArray(t)?t:n.tasks??n.items).map(oe).filter(t=>!!(t&&(!t.personalSpaceId||t.personalSpaceId===e.personalSpaceId)&&ie(t,e.agentId))).sort((e,t)=>(t.updatedAt??t.createdAt??``).localeCompare(e.updatedAt??e.createdAt??``))}else G.value=!0;if(o.status===`fulfilled`){let t=o.value,n=se(t);H.value=ne(Array.isArray(t)?t:n.assignments??n.items).map(t=>re(t,e)).filter(t=>!!(t&&t.agentId===e.agentId&&t.personalSpaceId===e.personalSpaceId))}else G.value=!0;let s=j({...e,assignments:H.value??e.assignments}),c=await Promise.all(s.map(async t=>{try{return{projectId:t,policy:await w(`/api/project-agent-coordination-policy?${new URLSearchParams({personalSpaceId:e.personalSpaceId,personalProjectId:t})}`),error:!1}}catch{return{projectId:t,policy:null,error:!0}}}));t===It&&(U.value=c,W.value=!1)},{immediate:!0});function Lt(e){let t=O.value.findIndex(t=>t.agentId===e.agentId);t>=0&&(O.value[t]={...O.value[t],...e})}function Rt(e){q.value=e}function zt(e,t){let n=e.key;if(![`ArrowLeft`,`ArrowRight`,`Home`,`End`].includes(n))return;let r=e.currentTarget;e.preventDefault();let i=J.value.length,a=n===`Home`?0:n===`End`?i-1:(t+(n===`ArrowRight`?1:-1)+i)%i,o=J.value[a];o&&(Rt(o.id),ee(()=>{let e=(r?.closest(`[role="tablist"]`))?.querySelectorAll(`[role="tab"]`)[a];e?.focus(),e?.scrollIntoView?.({block:`nearest`,inline:`nearest`})}))}return m(()=>{b.runtimeStatus===`idle`&&b.refresh()}),(i,s)=>(n(),u(`section`,{class:`view agent-profile-page`,"aria-label":_(l)(`agentProfiles.profile`)},[t(_(D),{class:`agent-profile-back`,to:`/project-agents`},{default:e(()=>[a(` ← `+p(_(l)(`agentProfiles.back`)),1)]),_:1}),(_(ue)||_(b).runtimeStatus===`loading`)&&!R.value?(n(),y(T,{key:0,label:_(l)(`agentProfiles.loading`)},null,8,[`label`])):(_(L)||_(b).runtimeStatus===`error`)&&!R.value?(n(),u(`div`,ge,[c(`p`,null,p(_(L)||_(l)(`agentProfiles.loadError`)),1),c(`button`,{class:`quiet-button`,type:`button`,onClick:s[0]||=e=>_(b).state?_(de)():_(b).refresh()},p(_(l)(`agentProfiles.retry`)),1)])):R.value?(n(),u(h,{key:3},[c(`header`,ve,[c(`span`,ye,p(R.value.profile.occupationEmoji||_(N)(R.value).slice(0,1)),1),c(`div`,be,[c(`div`,xe,[c(`h1`,null,p(_(N)(R.value)),1),R.value.employeeNumber?(n(),u(`span`,Se,`FLA `+p(R.value.employeeNumber),1)):x(``,!0),c(`span`,{class:g([`ui-badge agent-profile-membership`,`is-${R.value.profile.status}`])},p(_(l)(`projectAgents.status.${R.value.profile.status}`)),3)]),c(`p`,null,p(R.value.profile.responsibility),1),c(`div`,Ce,[c(`span`,null,p(_(l)(R.value.recruitedAt?`agentProfiles.joined`:`agentProfiles.created`))+` · `+p(Q(R.value.recruitedAt||R.value.createdAt)),1)])]),c(`div`,we,[Z.value?(n(),y(_(D),{key:0,class:`quiet-button`,to:`/employees/${encodeURIComponent(Z.value.id)}`},{default:e(()=>[a(p(_(l)(`agentProfiles.workbench`)),1)]),_:1},8,[`to`])):x(``,!0),c(`button`,{class:`quiet-button`,type:`button`,"aria-expanded":K.value,onClick:s[1]||=e=>K.value=!K.value},p(_(l)(`agentProfiles.settings`)),9,Te),t(_(D),{class:`quiet-button`,to:{path:`/employees/bole`,query:{q:_(N)(R.value)}}},{default:e(()=>[a(p(_(l)(`agentProfiles.askHR`)),1)]),_:1},8,[`to`])])]),_(ue)||_(b).runtimeStatus===`loading`?(n(),y(T,{key:0,variant:`compact`,label:_(l)(`agentProfiles.loading`)},null,8,[`label`])):x(``,!0),_(L)?(n(),u(`p`,Ee,p(_(L)),1)):x(``,!0),K.value?(n(),y(me,{key:R.value.agentId,agent:R.value,onSaved:Lt},null,8,[`agent`])):x(``,!0),W.value?(n(),y(T,{key:3,variant:`compact`,label:_(l)(`agentProfiles.detailLoading`)},null,8,[`label`])):x(``,!0),c(`nav`,{class:`agent-profile-tabs`,role:`tablist`,"aria-label":_(l)(`agentProfiles.profile`)},[(n(!0),u(h,null,r(J.value,e=>(n(),u(`button`,{id:`agent-tab-${e.id}`,key:e.id,class:`agent-profile-tab`,type:`button`,role:`tab`,"aria-selected":q.value===e.id,"aria-controls":`agent-panel-${e.id}`,tabindex:q.value===e.id?0:-1,onClick:t=>Rt(e.id),onKeydown:t=>zt(t,J.value.findIndex(t=>t.id===e.id))},p(e.label),41,Oe))),128))],8,De),G.value?(n(),u(`p`,ke,p(_(l)(`agentProfiles.partial`)),1)):x(``,!0),o(c(`section`,{id:`agent-panel-overview`,class:`agent-profile-panel`,role:`tabpanel`,"aria-labelledby":`agent-tab-overview`,"aria-hidden":q.value!==`overview`,tabindex:`0`},[c(`div`,je,[c(`section`,Me,[c(`div`,Ne,[c(`h2`,null,p(_(l)(`agentProfiles.working`)),1),X.value.length?(n(),u(`span`,Pe,p(X.value.length),1)):x(``,!0)]),X.value.length?(n(),u(`ul`,Fe,[(n(!0),u(h,null,r(X.value,r=>(n(),u(`li`,{key:r.taskId},[t(_(D),{to:{path:`/project-agents/manage`,query:{agent:R.value.agentId,task:r.taskId}}},{default:e(()=>[a(p(r.title),1)]),_:2},1032,[`to`]),c(`span`,Ie,p(_(l)(`projectAgents.taskStatus.${r.status}`)),1)]))),128))])):!W.value&&!G.value?(n(),u(`p`,Le,p(_(l)(`agentProfiles.idle`)),1)):W.value?x(``,!0):(n(),u(`p`,Re,p(_(l)(`agentProfiles.partial`)),1))]),c(`section`,ze,[c(`div`,Be,[c(`h2`,null,p(_(l)(`agentProfiles.projects`)),1),c(`span`,null,p(Y.value.length),1)]),c(`ul`,Ve,[(n(!0),u(h,null,r(Mt.value,r=>(n(),u(`li`,{key:r,class:`agent-project-item`},[c(`h3`,null,[t(_(D),{class:`agent-project-link`,to:_(A)(C.value,`graph`,r)},{default:e(()=>[a(p(z(r)),1)]),_:2},1032,[`to`])]),$(r)?(n(),u(`p`,He,p($(r)),1)):x(``,!0)]))),128))]),Nt.value.length?(n(),y(k,{key:0,class:`agent-project-overflow`,title:Ft.value},{default:e(()=>[c(`ul`,Ue,[(n(!0),u(h,null,r(Nt.value,r=>(n(),u(`li`,{key:r,class:`agent-project-item`},[c(`h3`,null,[t(_(D),{class:`agent-project-link`,to:_(A)(C.value,`graph`,r)},{default:e(()=>[a(p(z(r)),1)]),_:2},1032,[`to`])]),$(r)?(n(),u(`p`,We,p($(r)),1)):x(``,!0)]))),128))])]),_:1},8,[`title`])):x(``,!0),!W.value&&!Y.value.length?(n(),u(`p`,Ge,p(_(l)(`agentProfiles.noProject`)),1)):x(``,!0)])])],8,Ae),[[d,q.value===`overview`]]),o(c(`section`,{id:`agent-panel-history`,class:`agent-profile-panel`,role:`tabpanel`,"aria-labelledby":`agent-tab-history`,"aria-hidden":q.value!==`history`,tabindex:`0`},[c(`section`,qe,[c(`h2`,null,p(_(l)(`agentProfiles.projects`)),1),Pt.value.length?(n(),u(`details`,Je,[c(`summary`,null,p(_(l)(`agentProfiles.projectHistory`)),1),c(`ul`,Ye,[(n(!0),u(h,null,r(Pt.value,r=>(n(),u(`li`,{key:r.assignmentId},[c(`h3`,null,[t(_(D),{class:`agent-project-link`,to:_(A)(C.value,`graph`,r.personalProjectId)},{default:e(()=>[a(p(z(r.personalProjectId)),1)]),_:2},1032,[`to`])]),c(`p`,null,p(r.responsibility),1),c(`small`,null,p(Q(r.assignedAt))+` – `+p(Q(r.endedAt)),1)]))),128))])])):W.value?x(``,!0):(n(),u(`p`,Xe,p(_(l)(`agentProfiles.noProject`)),1))]),c(`section`,Ze,[c(`h2`,null,p(_(l)(`agentProfiles.experience`)),1),c(`p`,Qe,p(_(l)(`agentProfiles.recent`)),1),c(`ol`,$e,[(n(!0),u(h,null,r(V.value.slice(0,12),r=>(n(),u(`li`,{key:r.taskId},[c(`div`,et,[t(_(D),{to:{path:`/project-agents/manage`,query:{agent:R.value.agentId,task:r.taskId}}},{default:e(()=>[a(p(r.title),1)]),_:2},1032,[`to`]),c(`span`,null,p(_(l)(`projectAgents.taskStatus.${r.status}`)),1)]),r.resultSummary?(n(),u(`p`,tt,p(r.resultSummary),1)):x(``,!0),c(`small`,null,p(Q(r.completedAt||r.updatedAt||r.createdAt)),1)]))),128)),R.value.recruitedAt||R.value.recruitmentReason?(n(),u(`li`,nt,[c(`h3`,null,p(_(l)(`agentProfiles.recruitment`)),1),R.value.recruitmentReason?(n(),u(`p`,rt,p(R.value.recruitmentReason),1)):x(``,!0),c(`small`,null,p(Q(R.value.recruitedAt)),1)])):x(``,!0)]),!W.value&&!V.value.length&&!R.value.recruitmentReason&&!R.value.recruitedAt?(n(),u(`p`,it,p(_(l)(`agentProfiles.noExperience`)),1)):x(``,!0)])],8,Ke),[[d,q.value===`history`]]),o(c(`section`,{id:`agent-panel-style`,class:`agent-profile-panel`,role:`tabpanel`,"aria-labelledby":`agent-tab-style`,"aria-hidden":q.value!==`style`,tabindex:`0`},[c(`section`,ot,[c(`h2`,null,p(_(l)(`agentProfiles.about`)),1),c(`div`,st,[(n(),u(h,null,r([`judgment`,`taste`,`personality`],e=>c(`div`,{key:e},[c(`h3`,null,p(_(l)(`agentProfiles.${e}`)),1),c(`p`,{class:g({"agent-muted":!R.value.profile.character?.[e]})},p(R.value.profile.character?.[e]||_(l)(`agentProfiles.characterEmpty`)),3)])),64))]),R.value.profile.expectations?(n(),u(`p`,ct,[c(`strong`,null,p(_(l)(`agentProfiles.expectations`)),1),a(` `+p(R.value.profile.expectations),1)])):x(``,!0),c(`div`,lt,[c(`h3`,null,p(_(l)(`agentProfiles.strengths`)),1),c(`div`,ut,[(n(!0),u(h,null,r(R.value.profile.capabilities,e=>(n(),u(`span`,{key:e},p(e),1))),128)),R.value.profile.capabilities.length?x(``,!0):(n(),u(`span`,dt,p(_(l)(`agentProfiles.noSkills`)),1))])])])],8,at),[[d,q.value===`style`]]),o(c(`section`,{id:`agent-panel-collaborators`,class:`agent-profile-panel`,role:`tabpanel`,"aria-labelledby":`agent-tab-collaborators`,"aria-hidden":q.value!==`collaborators`,tabindex:`0`},[c(`section`,pt,[c(`div`,mt,[c(`h2`,null,p(_(l)(`agentProfiles.organization`)),1),t(_(D),{to:{path:`/employees/bole`,query:{q:_(N)(R.value)}}},{default:e(()=>[a(p(_(l)(`agentProfiles.hr`)),1)]),_:1},8,[`to`])]),(n(!0),u(h,null,r(U.value,e=>(n(),u(`div`,{key:e.projectId,class:`agent-organization`},[c(`h3`,null,p(z(e.projectId)),1),e.error?(n(),u(`p`,ht,p(_(l)(`agentProfiles.teamUnavailable`)),1)):e.policy?.teamLeadAgentId||e.policy?.teamMemberAgentIds?.length?(n(),u(h,{key:1},[e.policy.teamLeadAgentId?(n(),u(`div`,gt,[c(`span`,null,p(_(l)(`agentProfiles.lead`)),1),t(P,{"space-id":C.value,"agent-id":e.policy.teamLeadAgentId,name:B(e.policy.teamLeadAgentId)},null,8,[`space-id`,`agent-id`,`name`])])):x(``,!0),e.policy.teamLeadAgentId?(n(),u(`p`,_t,p(_(l)(`agentProfiles.reporting`)),1)):x(``,!0),e.policy.teamMemberAgentIds?.length?(n(),u(`div`,vt,[c(`span`,null,p(_(l)(`agentProfiles.teammates`)),1),c(`ul`,null,[(n(!0),u(h,null,r([...new Set(e.policy.teamMemberAgentIds)].filter(t=>t!==e.policy?.teamLeadAgentId),e=>(n(),u(`li`,{key:e},[t(P,{"space-id":C.value,"agent-id":e,name:B(e)},null,8,[`space-id`,`agent-id`,`name`])]))),128))])])):x(``,!0)],64)):(n(),u(`p`,yt,p(_(l)(`agentProfiles.teamUnset`)),1))]))),128)),!W.value&&!U.value.length?(n(),u(`p`,bt,p(_(l)(`agentProfiles.noProject`)),1)):x(``,!0)]),c(`section`,xt,[c(`h2`,null,p(_(l)(`agentProfiles.collaborators`)),1),c(`ul`,St,[(n(!0),u(h,null,r(jt.value,e=>(n(),u(`li`,{key:e.agentId},[t(P,{"space-id":C.value,"agent-id":e.agentId,name:B(e.agentId)},null,8,[`space-id`,`agent-id`,`name`]),c(`span`,null,p(_(l)(`agentProfiles.sharedTasks`,{count:e.count})),1)]))),128))]),!W.value&&!jt.value.length?(n(),u(`p`,Ct,p(_(l)(`agentProfiles.noCollaborators`)),1)):x(``,!0)])],8,ft),[[d,q.value===`collaborators`]]),R.value.memoryScope===`reviewed_agent`?o((n(),u(`section`,{key:5,id:`agent-panel-conversations`,class:`agent-profile-panel`,role:`tabpanel`,"aria-labelledby":`agent-tab-conversations`,"aria-hidden":q.value!==`conversations`,tabindex:`0`},[c(`section`,Tt,[(n(),y(F,{key:R.value.agentId,"personal-space-id":C.value,"agent-id":R.value.agentId,projects:pe.value},null,8,[`personal-space-id`,`agent-id`,`projects`]))])],8,wt)),[[d,q.value===`conversations`]]):x(``,!0),o(c(`section`,{id:`agent-panel-management`,class:`agent-profile-panel`,role:`tabpanel`,"aria-labelledby":`agent-tab-management`,"aria-hidden":q.value!==`management`,tabindex:`0`},[c(`section`,Dt,[c(`h2`,null,p(_(l)(`agentProfiles.advanced`)),1),c(`p`,Ot,p(_(l)(`agentProfiles.locked`)),1),c(`div`,kt,[Z.value?(n(),y(_(D),{key:0,class:`quiet-button`,to:`/employees/${encodeURIComponent(Z.value.id)}`},{default:e(()=>[a(p(_(l)(`agentProfiles.workbench`)),1)]),_:1},8,[`to`])):x(``,!0),t(_(D),{class:`quiet-button`,to:{path:`/project-agents/manage`,query:{agent:R.value.agentId}}},{default:e(()=>[a(p(_(l)(`agentProfiles.advanced`)),1)]),_:1},8,[`to`])])])],8,Et),[[d,q.value===`management`]]),c(`footer`,At,[Z.value?(n(),y(_(D),{key:0,to:`/employees/${encodeURIComponent(Z.value.id)}`},{default:e(()=>[a(p(_(l)(`agentProfiles.workbench`)),1)]),_:1},8,[`to`])):x(``,!0),t(_(D),{to:{path:`/project-agents/manage`,query:{agent:R.value.agentId}}},{default:e(()=>[a(p(_(l)(`agentProfiles.advanced`)),1)]),_:1},8,[`to`])])],64)):(n(),u(`p`,_e,p(_(l)(`agentProfiles.unavailable`)),1))],8,he))}});export{B as default};
@@ -1 +0,0 @@
1
- import{B as e,C as t,M as n,P as r,R as i,S as a,V as o,X as s,_ as c,a as l,b as u,d,g as f,it as p,j as m,m as h,nt as g,tt as _,u as v,v as y,w as b,y as x}from"./i18n-b14l2pQA.js";import{t as S}from"./console-CqzwSo7a.js";import{n as C,o as w}from"./client-DLS5FZBI.js";import{t as T}from"./_plugin-vue_export-helper-BDNMzG2s.js";import{h as E,m as D}from"./useApi-CROJJdhE-CEQAEuug.js";import{t as O}from"./vue-router-B6ZjK-Br.js";import{t as k}from"./UiSelect-DcGpPQQo.js";import{t as A}from"./AgentHand-DkyF4vgk.js";import{a as j,i as ee,n as M,t as N}from"./profile-model-BQO4zNs9.js";import{n as P,t as F}from"./agent-work-summary-LeW-Al_S.js";import{t as te}from"./useAgentRoster-ep7SpKv1.js";import{a as I,s as L}from"./catalog-UDv854JN.js";/* empty css */import{t as ne}from"./ProjectAgentFirstTask-CaHvOjkp.js";import{n as R,t as re}from"./EmployeeRecruitDialog-D9QfGipd.js";var z={class:`ui-card agent-card`},B={class:`agent-card-topline`},V={class:`agent-portrait small`,"aria-hidden":`true`},H={class:`agent-directory-name`},U={key:0,class:`ui-badge fla-employee-number`},W={key:1,class:`ui-badge ui-badge--accent agent-card-role`},G=[`data-membership-status`],K=[`data-work-status`,`aria-label`],q={class:`agent-card-responsibility`},J={key:0,class:`agent-inline-skills`},Y={class:`agent-card-meta`},X={class:`agent-card-projects`},Z={key:0,class:`agent-card-project-list`},Q={key:0,class:`ui-badge agent-card-project-count`},$={key:1,class:`ui-badge`},ie={key:2,class:`agent-card-no-project`},ae=b({__name:`AgentCard`,props:{agent:{},spaceId:{},projectNames:{},managesAllProjects:{type:Boolean},workSummary:{},workState:{}},setup(i){let o=i,s=f(()=>N(o.agent)),d=f(()=>j(o.agent)),m=f(()=>d.value.slice(0,2).map(e=>o.projectNames?.[e]||e)),v=f(()=>Math.max(d.value.length-2,0)),y=f(()=>o.agent.profile.capabilities.slice(0,3)),b=f(()=>`is-${o.agent.profile.status}`),S=f(()=>l(`projectAgents.status.${o.agent.profile.status}`)),C=f(()=>o.workSummary?o.workSummary.status:o.workState===`loading`?`loading`:o.workState===`error`?`unavailable`:o.workState===`incomplete`?`unreported`:`none`),w=f(()=>`is-${C.value}`),T=f(()=>({coordinator:l(`agentProfiles.roles.projectManager`),hr:l(`agentProfiles.roles.hr`)})[o.agent.profile.agentType]??``);function E(e,t,n){let r=l(e,n);return r===e?t:r}let D=f(()=>E(`agentRedesign.membershipStatus`,`Member · ${S.value}`,{status:S.value})),k=f(()=>{let e={awaiting_recruitment:`Awaiting recruitment`,queued:`Queued`,running:`Running`,paused:`Paused`,awaiting_review:`Awaiting review`,blocked:`Blocked`,none:l(`agentProfiles.idle`),loading:`Loading work status`,unreported:`Partial status`,unavailable:`Unavailable`}[C.value];return E(`agentRedesign.workStatus.${C.value}`,e??`Work status unavailable`)});return(o,d)=>(n(),u(`article`,z,[c(`div`,B,[c(`span`,V,p(i.agent.profile.occupationEmoji||s.value.slice(0,1)),1),c(`div`,H,[t(_(O),{to:_(M)(i.spaceId,i.agent.agentId),"aria-label":`${s.value} · ${_(l)(`agentProfiles.profile`)}`},{default:e(()=>[a(p(s.value),1)]),_:1},8,[`to`,`aria-label`]),i.agent.employeeNumber?(n(),u(`span`,U,`FLA `+p(i.agent.employeeNumber),1)):x(``,!0),T.value?(n(),u(`span`,W,p(T.value),1)):x(``,!0),t(A,{"agent-id":i.agent.agentId},null,8,[`agent-id`])]),i.agent.profile.status===`active`?x(``,!0):(n(),u(`span`,{key:0,class:g([`ui-badge agent-card-status agent-card-membership-status`,b.value]),"data-membership-status":i.agent.profile.status},p(D.value),11,G)),i.agent.profile.status===`active`||![`none`,`loading`].includes(C.value)?(n(),u(`span`,{key:1,class:g([`agent-card-work-status`,w.value]),"data-work-status":C.value,"aria-label":`${_(l)(`agentRedesign.workStatus.label`)} · ${k.value}`},p(k.value),11,K)):x(``,!0)]),c(`p`,q,p(i.agent.profile.responsibility),1),y.value.length?(n(),u(`div`,J,[(n(!0),u(h,null,r(y.value,e=>(n(),u(`span`,{key:e},p(e),1))),128))])):x(``,!0),c(`div`,Y,[c(`div`,X,[m.value.length?(n(),u(`div`,Z,[(n(!0),u(h,null,r(m.value,e=>(n(),u(`span`,{key:e,class:`ui-badge`},p(e),1))),128)),v.value?(n(),u(`span`,Q,` +`+p(v.value),1)):x(``,!0)])):i.managesAllProjects?(n(),u(`span`,$,p(_(l)(`agentProfiles.allProjects`)),1)):(n(),u(`span`,ie,p(_(l)(`agentProfiles.noProject`)),1))]),t(_(O),{class:`agent-directory-open`,to:_(M)(i.spaceId,i.agent.agentId),"aria-label":`${s.value} · ${_(l)(`agentProfiles.profile`)}`},{default:e(()=>[a(p(_(l)(`agentProfiles.profile`))+` → `,1)]),_:1},8,[`to`,`aria-label`])])]))}});function oe(e){let t=s({}),n=s(!1),r=s(``),a=s(`idle`),o=new Map,c=0;async function u(){let i=++c,s=e.value;if(r.value=``,!s){t.value={},n.value=!1,a.value=`idle`;return}let u=o.get(s);u?t.value=u:Object.keys(t.value).length&&(t.value={}),n.value=!0,a.value=`loading`;try{let n=await C(`/api/project-agent-tasks?${new URLSearchParams({personalSpaceId:s,limit:`200`})}`);if(i!==c||e.value!==s)return;let r=P(n,s);o.set(s,r),t.value=r,a.value=F(n)?`ready`:`incomplete`}catch(t){if(i!==c||e.value!==s)return;r.value=t instanceof Error?t.message:l(`agentProfiles.loadError`),a.value=`error`}finally{i===c&&e.value===s&&(n.value=!1)}}return i(e,u,{immediate:!0}),{summaries:t,loading:n,error:r,state:a,load:u}}var se=[`src`],ce=T(b({__name:`EmployeeWorkbenchLinks`,props:{personalSpaceId:{}},setup(t){let o=t;i(()=>o.personalSpaceId,e=>{L(e===`current`?``:e)},{immediate:!0});let s=f(()=>I.value.filter(e=>e.agentId&&e.agentStatus===`active`&&(e.runtime||e.workbench?.kind===`native`)));return(t,i)=>(n(!0),u(h,null,r(s.value,t=>(n(),y(_(O),{key:t.id,class:`ui-button employee-workbench-link`,to:`/employees/${encodeURIComponent(t.id)}`,title:_(l)(`agentProfiles.workbench`)},{default:e(()=>[_(R)(t.id)?(n(),u(`img`,{key:0,src:_(R)(t.id),alt:``,"aria-hidden":`true`},null,8,se)):x(``,!0),a(` `+p(t.name)+` · `+p(t.role),1)]),_:2},1032,[`to`,`title`]))),128))}}),[[`__scopeId`,`data-v-4906fde1`]]),le=[`aria-label`],ue={class:`ui-toolbar agents-directory-heading`},de={key:0,class:`agents-directory-count`},fe={key:1,class:`agents-directory-count`,"aria-hidden":`true`},pe={class:`agent-profile-actions`},me=[`disabled`],he={key:1,class:`agent-directory-work-error`,role:`status`},ge={class:`ui-toolbar agents-directory-filters`},_e={class:`agents-directory-search`},ve={class:`sr-only`},ye=[`placeholder`],be={key:3,role:`alert`,class:`ui-card ui-empty agent-profile-empty`},xe={key:4,class:`ui-card ui-empty agent-profile-empty`},Se={key:5,class:`agents-directory-grid`},Ce=b({__name:`AgentsDirectoryPage`,setup(e){let a=S(),g=D(),b=E(),C=f(()=>a.activePersonalSpace?.id??``),{agents:T,loading:O,error:A,load:P}=te(C),{summaries:F,loading:L,error:R,state:z,load:B}=oe(C),V=s(typeof g.query.q==`string`?g.query.q:``),H=s(`all`),U=s(typeof g.query.project==`string`?[g.query.project]:[]),W=s(!1),G=f(()=>I.value.some(e=>!e.fixed)),K=e=>I.value.some(t=>t.agentId===e&&t.management?.mode===`all`),q=f(()=>(a.state?.personalProjects??[]).filter(e=>e.personal_space_id===C.value)),J=f(()=>q.value.map(e=>({value:e.project_id,label:e.profile.name}))),Y=f(()=>Object.fromEntries(J.value.map(e=>[e.value,e.label]))),X=f(()=>[{value:`all`,label:l(`agentProfiles.allStatus`)},...[`active`,`inactive`,`archived`].map(e=>({value:e,label:l(`projectAgents.status.${e}`)}))]),Z=f(()=>T.value.filter(e=>(H.value===`all`||e.profile.status===H.value)&&(!U.value.length||j(e).some(e=>U.value.includes(e)))&&ee([N(e),e.employeeNumber?`FLA ${e.employeeNumber}`:``,e.profile.responsibility,...e.profile.capabilities,...j(e).map(e=>Y.value[e]||e)].join(` `),V.value)).sort((e,t)=>N(e).localeCompare(N(t)))),Q=f(()=>O.value||L.value||a.runtimeStatus===`loading`),$=e=>F.value[e];m(()=>{a.runtimeStatus===`idle`&&a.refresh()}),i([C,()=>g.query.agent],([e,t])=>{if(e&&typeof t==`string`){let{agent:n,...r}=g.query;b.replace({path:typeof g.query.task==`string`?`/project-agents/manage`:M(e,t),query:typeof g.query.task==`string`?g.query:r})}},{immediate:!0}),i(C,(e,t)=>{t&&(V.value=``,U.value=[],H.value=`all`)});async function ie(e){W.value=!1,await b.push(M(C.value,e.agent.agentId))}async function se(){if(a.state){await Promise.allSettled([P(),B()]);return}await a.refresh(),await Promise.allSettled([P(),B()])}return(e,i)=>(n(),u(`section`,{class:`view agents-directory`,"aria-label":_(l)(`agentProfiles.title`)},[c(`header`,ue,[!Q.value||_(T).length?(n(),u(`p`,de,p(_(l)(`agentProfiles.members`,{count:_(T).length})),1)):(n(),u(`span`,fe,`\xA0`)),c(`div`,pe,[Q.value&&_(T).length?(n(),y(w,{key:0,variant:`inline`,label:_(l)(`agentRedesign.refreshing`)},null,8,[`label`])):x(``,!0),t(ce,{"personal-space-id":C.value||`current`},null,8,[`personal-space-id`]),G.value?(n(),u(`button`,{key:1,type:`button`,class:`primary-button`,disabled:!C.value,onClick:i[0]||=e=>W.value=!0},p(_(l)(`employees.recruit`)),9,me)):x(``,!0)])]),!Q.value&&!_(A)&&_(a).runtimeStatus===`ready`&&!q.value.length?(n(),y(ne,{key:0,"personal-space-id":C.value},null,8,[`personal-space-id`])):x(``,!0),_(R)?(n(),u(`p`,he,[c(`span`,null,p(_(l)(`agentRedesign.workStatus.refreshError`)),1),c(`button`,{class:`quiet-button`,type:`button`,onClick:i[1]||=(...e)=>_(B)&&_(B)(...e)},p(_(l)(`agentProfiles.retry`)),1)])):x(``,!0),c(`div`,ge,[c(`label`,_e,[c(`span`,ve,p(_(l)(`agentProfiles.search`)),1),o(c(`input`,{"onUpdate:modelValue":i[2]||=e=>V.value=e,type:`search`,maxlength:`160`,placeholder:_(l)(`agentProfiles.search`)},null,8,ye),[[v,V.value]])]),t(k,{modelValue:U.value,"onUpdate:modelValue":i[3]||=e=>U.value=e,class:`agents-directory-select`,multiple:``,options:J.value,label:_(l)(`employees.filterLabel`),placeholder:_(l)(`employees.allProjectsFilter`)},null,8,[`modelValue`,`options`,`label`,`placeholder`]),t(k,{modelValue:H.value,"onUpdate:modelValue":i[4]||=e=>H.value=e,class:`agents-directory-select`,options:X.value,label:_(l)(`projectAgents.fields.status`)},null,8,[`modelValue`,`options`,`label`])]),Q.value&&!_(T).length?(n(),y(w,{key:2,label:_(l)(`agentProfiles.loading`)},null,8,[`label`])):x(``,!0),_(A)||_(a).runtimeStatus===`error`?o((n(),u(`div`,be,[c(`p`,null,p(_(A)||_(l)(`agentProfiles.loadError`)),1),c(`button`,{class:`quiet-button`,type:`button`,onClick:se},p(_(l)(`agentProfiles.retry`)),1)],512)),[[d,!Q.value||_(T).length===0]]):x(``,!0),!Q.value&&!Z.value.length&&!_(A)&&_(a).runtimeStatus!==`error`?(n(),u(`p`,xe,p(_(l)(_(T).length?`agentProfiles.noMatch`:`agentProfiles.noAgents`)),1)):x(``,!0),Z.value.length?(n(),u(`ul`,Se,[(n(!0),u(h,null,r(Z.value,e=>(n(),u(`li`,{key:e.agentId},[t(ae,{agent:e,"space-id":C.value,"project-names":Y.value,"manages-all-projects":K(e.agentId),"work-summary":$(e.agentId),"work-state":_(z)},null,8,[`agent`,`space-id`,`project-names`,`manages-all-projects`,`work-summary`,`work-state`])]))),128))])):x(``,!0),t(re,{open:W.value,"personal-space-id":C.value,projects:q.value,"default-project-ids":U.value??[],onClose:i[5]||=e=>W.value=!1,onRecruited:ie},null,8,[`open`,`personal-space-id`,`projects`,`default-project-ids`])],8,le))}});export{Ce as default};
@@ -1 +0,0 @@
1
- .employee-workbench-link img[data-v-4906fde1]{object-fit:cover;border-radius:5px;width:18px;height:18px}
@@ -1 +0,0 @@
1
- import{A as e,B as t,C as n,J as r,M as i,O as ee,P as a,R as o,S as te,X as s,_ as c,a as l,b as u,g as d,it as f,j as ne,m as p,n as re,p as ie,tt as m,v as h,w as g,y as _}from"./i18n-b14l2pQA.js";import{t as ae}from"./console-CqzwSo7a.js";import{i as v,n as y,o as b,r as oe,t as se}from"./client-DLS5FZBI.js";import{t as x}from"./_plugin-vue_export-helper-BDNMzG2s.js";import{t as S}from"./UiSelect-DcGpPQQo.js";import{t as C}from"./UiDisclosure-BS-muK5j.js";import{r as ce,t as le}from"./identity-BWbPmZZf.js";var w={class:`text-field`},T=[`id`,`value`,`name`,`placeholder`,`disabled`,`required`,`rows`],E=[`id`,`value`,`name`,`type`,`placeholder`,`disabled`,`required`],D=x(g({inheritAttrs:!1,__name:`TextField`,props:{modelValue:{},label:{},controlId:{default:void 0},type:{default:`text`},placeholder:{default:void 0},disabled:{type:Boolean,default:!1},required:{type:Boolean,default:!1},multiline:{type:Boolean,default:!1},rows:{default:3},name:{default:void 0}},emits:[`update:modelValue`],setup(e,{emit:t}){let n=t;function r(e){n(`update:modelValue`,e.target.value)}return(t,n)=>(i(),u(`label`,w,[c(`span`,null,f(e.label),1),e.multiline?(i(),u(`textarea`,ee({key:0},t.$attrs,{id:e.controlId,value:e.modelValue,name:e.name,placeholder:e.placeholder,disabled:e.disabled,required:e.required,rows:e.rows,onInput:r}),null,16,T)):(i(),u(`input`,ee({key:1},t.$attrs,{id:e.controlId,value:e.modelValue,name:e.name,type:e.type,placeholder:e.placeholder,disabled:e.disabled,required:e.required,onInput:r}),null,16,E))]))}}),[[`__scopeId`,`data-v-8c90420d`]]),ue={class:`view connections-view`},de=[`aria-label`],fe=[`data-status`],pe={class:`service-state`},me=[`data-status`],he={class:`connection-title-row`},ge={class:`service-state`},_e={class:`external-knowledge-section`},ve={class:`section-title section-title-with-help`},ye=[`href`,`aria-label`,`title`],be={class:`external-binding-count`},xe={class:`external-binding-list`},Se=[`data-status`],Ce={class:`external-binding-copy`},we={class:`external-binding-targets`},Te=[`data-status`],Ee={key:0},De={key:1},Oe={class:`external-binding-actions`},ke=[`disabled`,`onClick`],Ae=[`disabled`,`onClick`],je=[`disabled`,`onClick`],Me=[`disabled`,`onClick`],Ne={key:0,class:`external-binding-editor`},Pe={class:`external-target-mode-list`},Fe={class:`external-binding-editor-actions`},Ie=[`disabled`],Le=[`disabled`,`onClick`],Re={key:0,class:`compact-empty`},ze={class:`wide-field`},Be={class:`trusted-code-badge`},Ve=[`disabled`],He={class:`section-title section-title-with-help`},Ue=[`href`,`aria-label`,`title`],We={class:`conflict-policy-controls`},Ge={key:2,role:`alert`},Ke={key:1,class:`connection-subscriptions`},qe={class:`section-title`},Je={class:`subscription-list`},Ye=[`disabled`,`onClick`],Xe={key:0,class:`empty-state`},Ze=[`disabled`],O=g({__name:`ConnectionsPage`,setup(ee){let g=ae(),x=s(``),w=s(!1),T=s(``),E=s([]),O=s([]),k=s(!1),A=s(!1),j=s(``),M=s(null),N=s([]),P=s({}),F=s(``),I=s(`ask_human`),L=s(!1),R=s(!1),z=s(!1),B=`ask_human`,V=0,H=null,U=r({name:``,connectorType:`mcp`,mode:`hybrid`,personalProjectIds:[],mcpTransport:`http`,mcpUrl:``,mcpCommand:``,mcpArgs:``,mcpTokenEnv:``,mcpResourcePrefix:``,notionTokenEnv:``,notionPageIds:``,notionDataSourceIds:``,feishuTokenEnv:``,feishuRegion:`cn`,feishuSpaceId:``,feishuRootNodeToken:``,feishuNodeTokens:``,feishuWebBaseUrl:``,retrievalUrl:``,retrievalTokenEnv:``,retrievalKnowledgeIds:``,retrievalScoreThreshold:`0.5`,customModule:``,customEnvironmentNames:``,customSourceJson:`{}`}),Qe=d(()=>g.state?.providers?.personal?.status===`ready`),$e=d(()=>g.state?.providers?.workspaces??[]),et=d(()=>$e.value.filter(({status:e})=>e===`ready`).length),tt=d(()=>{let e=g.state?.capabilities,t=[e?.browsePublicProjects?l(`pages.connections.publicCapability.discovery`):null,e?.subscribeProject?l(`pages.connections.publicCapability.subscription`):null,e?.publishProject?l(`pages.connections.publicCapability.publishing`):null,e?.submitKnowledge?l(`pages.connections.publicCapability.contribution`):null,e?.reviewProposals?l(`pages.connections.publicCapability.review`):null].filter(e=>!!e);return t.length?new Intl.ListFormat(re(),{style:`long`,type:`conjunction`}).format(t):l(`pages.connections.notAvailable`)}),W=d(()=>g.state?.subscriptions??[]),G=d(()=>g.state?.personalProjects??[]),nt=d(()=>Ft(`connect-external-knowledge`)),rt=d(()=>Ft(`external-knowledge-conflict-policy`)),it=d(()=>new Set(W.value.map(({provider_url:e,project_id:t})=>`${e}::${t}`))),at=d(()=>(g.state?.projects??[]).filter(e=>!it.value.has(q(e)))),ot=d(()=>at.value.map(e=>({value:q(e),label:e.name,meta:`#${le(e.id,26)}`,search:ce(e.id)}))),st=d(()=>E.value.map(e=>({value:e.type,label:e.name,meta:e.description}))),K=d(()=>G.value.map(e=>({value:e.project_id,label:e.profile.name,meta:`#${le(e.project_id,26)}`,search:ce(e.project_id)}))),ct=d(()=>[{value:`hybrid`,label:l(`pages.connections.mode.hybrid`),disabled:!Y(U.connectorType,`hybrid`)},{value:`mirror`,label:l(`pages.connections.mode.mirror`),disabled:!Y(U.connectorType,`mirror`)},{value:`live`,label:l(`pages.connections.mode.live`),disabled:!Y(U.connectorType,`live`)}]),lt=d(()=>[{value:`http`,label:`Streamable HTTP`},{value:`stdio`,label:`stdio`}]),ut=d(()=>[{value:`cn`,label:`Feishu`},{value:`global`,label:`Lark`}]),dt=d(()=>[{value:`ask_human`,label:l(`pages.connections.askHuman`)},{value:`agent_decide`,label:l(`pages.connections.agentDecide`)}]);o(G,e=>{let t=new Set(e.map(({project_id:e})=>e)),n=e[0]?.project_id??``;U.personalProjectIds=U.personalProjectIds.filter(e=>t.has(e)),!U.personalProjectIds.length&&n&&(U.personalProjectIds=[n]),N.value=N.value.filter(e=>t.has(e)),t.has(F.value)||(F.value=n)},{immediate:!0}),o(()=>[g.activePersonalSpace?.id,F.value],()=>void Tt(),{immediate:!0,flush:`sync`}),o(()=>U.connectorType,e=>{Y(e,U.mode)||(U.mode=Ot(e))}),ne(()=>void J()),e(()=>{V+=1,H?.abort()});function q(e){return`${e.providerUrl}::${e.id}`}async function ft(){let e=g.activePersonalSpace?.id,t=at.value.find(e=>q(e)===x.value);if(!(!e||!t||w.value)){w.value=!0,T.value=`pages.connections.subscribing`;try{await v(`/api/subscriptions`,{personalSpaceId:e,projectId:t.id,providerUrl:t.providerUrl,projectName:t.name}),x.value=``,g.notify(l(`pages.connections.subscribed`,{name:t.name})),T.value=`pages.connections.loadingSubscriptions`,await g.refresh()}catch(e){g.reportError(e)}finally{w.value=!1}}}async function pt(e){let t=g.activePersonalSpace?.id;if(!(!t||w.value)){w.value=!0,T.value=`pages.connections.unsubscribing`;try{let n=new URLSearchParams({personalSpaceId:t,providerUrl:e.provider_url});await se(`/api/subscriptions/${encodeURIComponent(e.project_id)}?${n}`),g.notify(l(`pages.connections.unsubscribed`,{name:e.project_name??e.project_id})),T.value=`pages.connections.loadingSubscriptions`,await g.refresh()}catch(e){g.reportError(e)}finally{w.value=!1}}}async function J(){A.value=!0;try{let[e,t]=await Promise.all([y(`/api/external-knowledge/connectors`),y(`/api/external-knowledge/bindings`)]);E.value=e,O.value=t}catch(e){g.reportError(e)}finally{A.value=!1}}async function mt(){let e=g.activePersonalSpace?.id;if(!(!e||!U.personalProjectIds.length||k.value)){k.value=!0,j.value=`pages.connections.creatingBinding`;try{let{connectorConfig:t,source:n}=ht();await v(`/api/external-knowledge/bindings`,{name:U.name.trim(),connectorType:U.connectorType,connectorConfig:t,source:n,targets:U.personalProjectIds.map(t=>({personalSpaceId:e,personalProjectId:t,mode:U.mode}))}),g.notify(l(`pages.connections.externalCreated`,{name:U.name.trim()})),U.name=``,await J()}catch(e){g.reportError(e)}finally{k.value=!1}}}function ht(){if(U.connectorType===`notion`)return{connectorConfig:{tokenEnv:$(U.notionTokenEnv,`Notion token env`)},source:{pageIds:Z(U.notionPageIds),dataSourceIds:Z(U.notionDataSourceIds)}};if(U.connectorType===`feishu`)return{connectorConfig:{accessTokenEnv:$(U.feishuTokenEnv,`Feishu token env`),region:U.feishuRegion},source:Q({spaceId:U.feishuSpaceId.trim(),rootNodeToken:U.feishuRootNodeToken.trim(),nodeTokens:Z(U.feishuNodeTokens),webBaseUrl:U.feishuWebBaseUrl.trim()})};if(U.connectorType===`retrieval_api`){let e=Number(U.retrievalScoreThreshold);if(!Number.isFinite(e)||e<0||e>1)throw TypeError(l(`pages.connections.scoreThresholdInvalid`));return{connectorConfig:Q({url:$(U.retrievalUrl,`Retrieval API URL`),tokenEnv:U.retrievalTokenEnv.trim(),scoreThreshold:e}),source:{knowledgeIds:Pt(U.retrievalKnowledgeIds,`Knowledge IDs`)}}}if(U.connectorType===`custom`){let e=JSON.parse(U.customSourceJson);if(!e||typeof e!=`object`||Array.isArray(e))throw TypeError(l(`pages.connections.customSourceObject`));return{connectorConfig:{module:$(U.customModule,`Custom connector module`),environmentNames:Z(U.customEnvironmentNames)},source:e}}return{connectorConfig:U.mcpTransport===`stdio`?Q({transport:`stdio`,command:U.mcpCommand.trim(),args:Z(U.mcpArgs)}):Q({transport:`http`,url:$(U.mcpUrl,`MCP URL`),tokenEnv:U.mcpTokenEnv.trim()}),source:Q({resourceUriPrefix:U.mcpResourcePrefix.trim()})}}async function gt(e){await vt(e,`check`)}async function _t(e){await vt(e,`sync`)}async function vt(e,t){if(!k.value){k.value=!0,j.value=t===`sync`?`pages.connections.syncingBinding`:`pages.connections.checkingBinding`;try{let n=await v(`/api/external-knowledge/bindings/${encodeURIComponent(e.id)}/${t}`,{});g.notify(l(t===`sync`&&n.skippedCredentials?`pages.connections.externalSyncedWithSkipped`:t===`sync`?`pages.connections.externalSynced`:`pages.connections.externalChecked`,{name:e.name,count:n.skippedCredentials??0})),await J()}catch(e){g.reportError(e)}finally{k.value=!1}}}async function yt(e){if(!k.value){k.value=!0,j.value=`pages.connections.disconnectingBinding`;try{await se(`/api/external-knowledge/bindings/${encodeURIComponent(e.id)}`),g.notify(l(`pages.connections.externalDeleted`,{name:e.name})),await J()}catch(e){g.reportError(e)}finally{k.value=!1}}}function bt(e){let t=X(e);M.value=e.id,N.value=t.map(({personalProjectId:e})=>e),P.value=Object.fromEntries(t.map(({personalProjectId:e,mode:t})=>[e,t]))}function xt(){M.value=null,N.value=[],P.value={}}function St(e){let t=O.value.find(({id:e})=>e===M.value);if(!t)return;let n=P.value,r=Ot(t.connectorType);P.value=Object.fromEntries(e.map(e=>[e,n[e]??t.mode??r]))}function Ct(e,t){P.value={...P.value,[e]:t}}async function wt(e){let t=g.activePersonalSpace?.id;if(!(!t||!N.value.length||k.value)){k.value=!0,j.value=`pages.connections.savingBindingTargets`;try{await oe(`/api/external-knowledge/bindings/${encodeURIComponent(e.id)}/targets`,{expectedTargetsVersion:e.targetsVersion,targets:N.value.map(n=>({personalSpaceId:t,personalProjectId:n,mode:P.value[n]??e.mode}))}),g.notify(l(`pages.connections.projectsUpdated`,{name:e.name})),xt(),await J()}catch(e){g.reportError(e)}finally{k.value=!1}}}async function Tt(){let e=++V;if(H?.abort(),H=null,I.value=`ask_human`,z.value=!1,R.value=!1,!g.activePersonalSpace?.id||!F.value)return;let t=new AbortController;H=t,R.value=!0;try{let n=await y(`/api/external-knowledge/conflict-policy?${new URLSearchParams({personalProjectId:F.value})}`,{signal:t.signal});if(e!==V)return;I.value=n.mode,B=n.mode}catch{if(e!==V)return;z.value=!0}finally{e===V&&(R.value=!1,H=null)}}async function Et(){let e=g.activePersonalSpace?.id;if(!e||!F.value||L.value||R.value||z.value)return;let t=V;L.value=!0;try{let n=await oe(`/api/external-knowledge/conflict-policy?${new URLSearchParams({personalProjectId:F.value})}`,{personalSpaceId:e,personalProjectId:F.value,mode:I.value});if(t!==V)return;I.value=n.mode,B=n.mode,g.notify(l(`pages.connections.conflictSaved`))}catch(e){if(t!==V)return;I.value=B,g.reportError(e)}finally{L.value=!1}}function Dt(e){return E.value.find(t=>t.type===e)?.name??e}function Y(e,t){let n=E.value.find(t=>t.type===e)?.capabilities;return!n?.length||(t===`live`||t===`hybrid`?n.includes(`retrieve`):!0)&&(t===`mirror`||t===`hybrid`?n.includes(`sync`):!0)}function Ot(e){return[`hybrid`,`mirror`,`live`].find(t=>Y(e,t))??`live`}function kt(e){return[`hybrid`,`mirror`,`live`].map(t=>({value:t,label:l(`pages.connections.mode.${t}`),disabled:!Y(e,t)}))}function X(e){return e.targets?.length?e.targets:[{id:e.id,...e.target,mode:e.mode,status:e.status,sync:e.sync}]}function At(e){return X(e).some(({mode:e})=>e!==`live`)}function jt(e){return G.value.find(({project_id:t})=>t===e)?.profile.name??e}function Mt(e){return X(e).find(({sync:e})=>e?.error)?.sync?.error??e.sync?.error}function Nt(e){return X(e).reduce((e,t)=>e+(t.sync?.skippedCredentials??0),0)}function Z(e){return[...new Set(e.split(`,`).map(e=>e.trim()).filter(Boolean))]}function Pt(e,t){let n=Z(e);if(!n.length)throw TypeError(`${t} is required`);return n}function Q(e){return Object.fromEntries(Object.entries(e).filter(([,e])=>e!==``&&(!Array.isArray(e)||e.length>0)))}function $(e,t){if(!e.trim())throw TypeError(`${t} is required`);return e.trim()}function Ft(e){return`https://github.com/JevonsCode/fuli/blob/main/${re()===`zh-CN`?`README.zh-CN.md`:`README.md`}#${e}`}return(e,r)=>(i(),u(`section`,ue,[c(`div`,{class:`service-connection-grid`,"aria-label":m(l)(`pages.connections.statusAria`)},[c(`article`,{class:`service-connection-card`,"data-status":Qe.value?`ready`:`error`},[c(`header`,null,[r[30]||=c(`span`,{class:`service-connection-icon local`,"aria-hidden":`true`},[c(`span`,{class:`nav-icon nav-icon-personal-project`})],-1),c(`div`,null,[c(`h3`,null,f(m(l)(`pages.connections.localGraphiti`)),1)]),c(`span`,pe,f(Qe.value?m(l)(`common.status.connected`):m(l)(`common.status.connectionError`)),1)]),n(C,{title:m(l)(`ui.connectionDetails`)},{default:t(()=>[c(`dl`,null,[c(`div`,null,[c(`dt`,null,f(m(l)(`pages.connections.storage`)),1),r[31]||=c(`dd`,null,`Neo4j`,-1)]),c(`div`,null,[c(`dt`,null,f(m(l)(`pages.connections.purpose`)),1),c(`dd`,null,f(m(l)(`pages.connections.localPurpose`)),1)])])]),_:1},8,[`title`])],8,fe),c(`article`,{class:`service-connection-card`,"data-status":m(g).publicRuntimeStatus},[c(`header`,null,[r[33]||=c(`span`,{class:`service-connection-icon public`,"aria-hidden":`true`},[c(`span`,{class:`nav-icon nav-icon-public-project`})],-1),c(`div`,he,[c(`h3`,null,f(m(l)(`pages.connections.publicService`)),1),r[32]||=c(`span`,{class:`feature-badge beta`},`BETA`,-1)]),c(`span`,ge,f(m(g).publicRuntimeStatus===`ready`?m(l)(`common.status.connected`):m(g).publicRuntimeStatus===`error`?m(l)(`common.status.connectionError`):m(l)(`common.status.notConnected`)),1)]),c(`dl`,null,[c(`div`,null,[c(`dt`,null,f(m(l)(`pages.connections.currentStatus`)),1),c(`dd`,null,f(m(g).publicRuntimeStatus===`ready`?m(l)(`pages.connections.sharedServicesReady`,{count:et.value||$e.value.length}):m(l)(`pages.connections.notAvailable`)),1)]),c(`div`,null,[c(`dt`,null,f(m(l)(`pages.connections.purpose`)),1),c(`dd`,null,f(tt.value),1)])])],8,me)],8,de),c(`section`,_e,[c(`div`,ve,[c(`h3`,null,f(m(l)(`pages.connections.externalTitle`)),1),c(`a`,{class:`section-help-link`,"data-testid":`external-knowledge-help`,href:nt.value,"aria-label":m(l)(`pages.connections.externalHelp`),title:m(l)(`pages.connections.externalHelp`),target:`_blank`,rel:`noreferrer`},`?`,8,ye),c(`span`,be,f(m(l)(`pages.connections.bindingCount`,{count:O.value.length})),1)]),A.value||k.value?(i(),h(b,{key:0,variant:`compact`,label:m(l)(A.value?`pages.connections.loadingBindings`:j.value)},null,8,[`label`])):_(``,!0),c(`div`,xe,[(i(!0),u(p,null,a(O.value,e=>(i(),u(`article`,{key:e.id,class:`external-binding-row`,"data-status":e.status},[r[34]||=c(`i`,{"aria-hidden":`true`},null,-1),c(`div`,Ce,[c(`strong`,null,f(e.name),1),c(`span`,null,f(Dt(e.connectorType)),1),c(`div`,we,[c(`b`,null,f(m(l)(`pages.connections.boundTo`)),1),(i(!0),u(p,null,a(X(e),e=>(i(),u(`span`,{key:e.id,class:`external-binding-target-chip`,"data-status":e.status},f(jt(e.personalProjectId))+` · `+f(m(l)(`pages.connections.mode.${e.mode}`)),9,Te))),128))]),Mt(e)?(i(),u(`small`,Ee,f(Mt(e)),1)):Nt(e)?(i(),u(`small`,De,f(m(l)(`pages.connections.credentialsSkipped`,{count:Nt(e)})),1)):_(``,!0)]),c(`div`,Oe,[c(`button`,{class:`quiet-button`,type:`button`,disabled:k.value,onClick:t=>gt(e)},f(m(l)(`pages.connections.check`)),9,ke),c(`button`,{class:`quiet-button external-sync-action`,type:`button`,disabled:k.value||!At(e),onClick:t=>_t(e)},f(m(l)(`pages.connections.sync`)),9,Ae),c(`button`,{class:`quiet-button`,type:`button`,disabled:k.value,onClick:t=>bt(e)},f(m(l)(`pages.connections.manageProjects`)),9,je),c(`button`,{class:`quiet-button danger`,type:`button`,disabled:k.value,onClick:t=>yt(e)},f(m(l)(`pages.connections.disconnect`)),9,Me)]),M.value===e.id?(i(),u(`div`,Ne,[c(`label`,null,[c(`span`,null,f(m(l)(`pages.connections.targetProjects`)),1),n(S,{multiple:``,modelValue:N.value,"onUpdate:modelValue":r[0]||=e=>N.value=e,"control-id":`external-projects-${e.id}`,label:m(l)(`pages.connections.targetProjects`),options:K.value,disabled:k.value,required:``,searchable:``,onChange:St},null,8,[`modelValue`,`control-id`,`label`,`options`,`disabled`])]),c(`div`,Pe,[(i(!0),u(p,null,a(N.value,t=>(i(),u(`div`,{key:t,class:`external-target-mode-row`},[c(`span`,null,f(jt(t)),1),n(S,{"model-value":P.value[t]??e.mode,"control-id":`external-target-mode-${e.id}-${t}`,label:m(l)(`pages.connections.bindingMode`),options:kt(e.connectorType),disabled:k.value,"onUpdate:modelValue":e=>Ct(t,e)},null,8,[`model-value`,`control-id`,`label`,`options`,`disabled`,`onUpdate:modelValue`])]))),128))]),c(`div`,Fe,[c(`button`,{class:`quiet-button`,type:`button`,disabled:k.value,onClick:xt},f(m(l)(`common.actions.cancel`)),9,Ie),c(`button`,{class:`primary-action`,type:`button`,disabled:k.value||!N.value.length,onClick:t=>wt(e)},f(m(l)(`pages.connections.saveProjects`)),9,Le)])])):_(``,!0)],8,Se))),128)),!A.value&&!O.value.length?(i(),u(`div`,Re,f(m(l)(`pages.connections.noExternalBindings`)),1)):_(``,!0)]),n(C,{title:m(l)(`pages.connections.connect`),open:!O.value.length},{default:t(()=>[c(`form`,{class:`external-binding-form`,onSubmit:ie(mt,[`prevent`])},[n(D,{modelValue:U.name,"onUpdate:modelValue":r[1]||=e=>U.name=e,label:m(l)(`pages.connections.bindingName`),"data-testid":`external-name`,required:``},null,8,[`modelValue`,`label`]),c(`label`,null,[c(`span`,null,f(m(l)(`pages.connections.connector`)),1),n(S,{modelValue:U.connectorType,"onUpdate:modelValue":r[2]||=e=>U.connectorType=e,"control-id":`external-connector`,label:m(l)(`pages.connections.connector`),options:st.value,disabled:k.value,required:``},null,8,[`modelValue`,`label`,`options`,`disabled`])]),c(`label`,null,[c(`span`,null,f(m(l)(`pages.connections.targetProjects`)),1),n(S,{multiple:``,modelValue:U.personalProjectIds,"onUpdate:modelValue":r[3]||=e=>U.personalProjectIds=e,"control-id":`external-projects`,label:m(l)(`pages.connections.targetProjects`),options:K.value,disabled:k.value,required:``,searchable:``},null,8,[`modelValue`,`label`,`options`,`disabled`])]),c(`label`,null,[c(`span`,null,f(m(l)(`pages.connections.bindingMode`)),1),n(S,{modelValue:U.mode,"onUpdate:modelValue":r[4]||=e=>U.mode=e,"control-id":`external-binding-mode`,label:m(l)(`pages.connections.bindingMode`),options:ct.value,disabled:k.value,required:``},null,8,[`modelValue`,`label`,`options`,`disabled`])]),U.connectorType===`mcp`?(i(),u(p,{key:0},[c(`label`,null,[c(`span`,null,f(m(l)(`pages.connections.transport`)),1),n(S,{modelValue:U.mcpTransport,"onUpdate:modelValue":r[5]||=e=>U.mcpTransport=e,"control-id":`external-mcp-transport`,label:m(l)(`pages.connections.transport`),options:lt.value,disabled:k.value,required:``},null,8,[`modelValue`,`label`,`options`,`disabled`])]),U.mcpTransport===`http`?(i(),h(D,{key:0,modelValue:U.mcpUrl,"onUpdate:modelValue":r[6]||=e=>U.mcpUrl=e,label:`MCP URL`,"data-testid":`mcp-url`,type:`url`,required:``},null,8,[`modelValue`])):(i(),h(D,{key:1,modelValue:U.mcpCommand,"onUpdate:modelValue":r[7]||=e=>U.mcpCommand=e,label:m(l)(`pages.connections.command`),required:``},null,8,[`modelValue`,`label`])),U.mcpTransport===`stdio`?(i(),h(D,{key:2,modelValue:U.mcpArgs,"onUpdate:modelValue":r[8]||=e=>U.mcpArgs=e,label:m(l)(`pages.connections.arguments`)},null,8,[`modelValue`,`label`])):(i(),h(D,{key:3,modelValue:U.mcpTokenEnv,"onUpdate:modelValue":r[9]||=e=>U.mcpTokenEnv=e,label:m(l)(`pages.connections.tokenEnv`),"data-testid":`mcp-token-env`},null,8,[`modelValue`,`label`])),n(D,{modelValue:U.mcpResourcePrefix,"onUpdate:modelValue":r[10]||=e=>U.mcpResourcePrefix=e,label:m(l)(`pages.connections.resourcePrefix`),"data-testid":`mcp-resource-prefix`},null,8,[`modelValue`,`label`])],64)):U.connectorType===`notion`?(i(),u(p,{key:1},[n(D,{modelValue:U.notionTokenEnv,"onUpdate:modelValue":r[11]||=e=>U.notionTokenEnv=e,label:m(l)(`pages.connections.tokenEnv`),required:``},null,8,[`modelValue`,`label`]),n(D,{modelValue:U.notionPageIds,"onUpdate:modelValue":r[12]||=e=>U.notionPageIds=e,label:`Page IDs`},null,8,[`modelValue`]),n(D,{modelValue:U.notionDataSourceIds,"onUpdate:modelValue":r[13]||=e=>U.notionDataSourceIds=e,label:`Data Source IDs`},null,8,[`modelValue`])],64)):U.connectorType===`feishu`?(i(),u(p,{key:2},[n(D,{modelValue:U.feishuTokenEnv,"onUpdate:modelValue":r[14]||=e=>U.feishuTokenEnv=e,label:m(l)(`pages.connections.tokenEnv`),required:``},null,8,[`modelValue`,`label`]),c(`label`,null,[c(`span`,null,f(m(l)(`pages.connections.region`)),1),n(S,{modelValue:U.feishuRegion,"onUpdate:modelValue":r[15]||=e=>U.feishuRegion=e,"control-id":`external-feishu-region`,label:m(l)(`pages.connections.region`),options:ut.value,disabled:k.value,required:``},null,8,[`modelValue`,`label`,`options`,`disabled`])]),n(D,{modelValue:U.feishuSpaceId,"onUpdate:modelValue":r[16]||=e=>U.feishuSpaceId=e,label:`Space ID`},null,8,[`modelValue`]),n(D,{modelValue:U.feishuRootNodeToken,"onUpdate:modelValue":r[17]||=e=>U.feishuRootNodeToken=e,label:`Root Node Token`},null,8,[`modelValue`]),n(D,{modelValue:U.feishuNodeTokens,"onUpdate:modelValue":r[18]||=e=>U.feishuNodeTokens=e,label:`Node Tokens`},null,8,[`modelValue`]),n(D,{modelValue:U.feishuWebBaseUrl,"onUpdate:modelValue":r[19]||=e=>U.feishuWebBaseUrl=e,label:`Web URL`,type:`url`},null,8,[`modelValue`])],64)):U.connectorType===`retrieval_api`?(i(),u(p,{key:3},[n(D,{modelValue:U.retrievalUrl,"onUpdate:modelValue":r[20]||=e=>U.retrievalUrl=e,label:m(l)(`pages.connections.retrievalUrl`),type:`url`,required:``},null,8,[`modelValue`,`label`]),n(D,{modelValue:U.retrievalTokenEnv,"onUpdate:modelValue":r[21]||=e=>U.retrievalTokenEnv=e,label:m(l)(`pages.connections.tokenEnv`)},null,8,[`modelValue`,`label`]),n(D,{modelValue:U.retrievalKnowledgeIds,"onUpdate:modelValue":r[22]||=e=>U.retrievalKnowledgeIds=e,label:m(l)(`pages.connections.knowledgeIds`),required:``},null,8,[`modelValue`,`label`]),n(D,{modelValue:U.retrievalScoreThreshold,"onUpdate:modelValue":r[23]||=e=>U.retrievalScoreThreshold=e,label:m(l)(`pages.connections.scoreThreshold`),inputmode:`decimal`,required:``},null,8,[`modelValue`,`label`])],64)):(i(),u(p,{key:4},[n(D,{modelValue:U.customModule,"onUpdate:modelValue":r[24]||=e=>U.customModule=e,label:m(l)(`pages.connections.module`),required:``},null,8,[`modelValue`,`label`]),n(D,{modelValue:U.customEnvironmentNames,"onUpdate:modelValue":r[25]||=e=>U.customEnvironmentNames=e,label:m(l)(`pages.connections.environmentNames`)},null,8,[`modelValue`,`label`]),c(`div`,ze,[n(D,{modelValue:U.customSourceJson,"onUpdate:modelValue":r[26]||=e=>U.customSourceJson=e,label:m(l)(`pages.connections.sourceJson`),multiline:``,required:``},null,8,[`modelValue`,`label`])]),c(`span`,Be,f(m(l)(`pages.connections.trustedCode`)),1)],64)),c(`button`,{class:`primary-action external-create-action`,type:`submit`,disabled:k.value||!G.value.length||!U.personalProjectIds.length},[r[35]||=c(`span`,{class:`external-create-action-icon`,"aria-hidden":`true`},null,-1),c(`span`,null,f(m(l)(`pages.connections.connect`)),1)],8,Ve)],32)]),_:1},8,[`title`,`open`])]),G.value.length?(i(),h(C,{key:0,class:`conflict-policy-section`,open:z.value,title:m(l)(`pages.connections.conflictTitle`)},{default:t(()=>[c(`div`,He,[c(`a`,{class:`section-help-link`,"data-testid":`conflict-policy-help`,href:rt.value,"aria-label":m(l)(`pages.connections.conflictHelp`),title:m(l)(`pages.connections.conflictHelp`),target:`_blank`,rel:`noreferrer`},`?`,8,Ue)]),c(`div`,We,[c(`label`,null,[c(`span`,null,f(m(l)(`pages.connections.targetProject`)),1),n(S,{modelValue:F.value,"onUpdate:modelValue":r[27]||=e=>F.value=e,"control-id":`external-conflict-project`,label:m(l)(`pages.connections.targetProject`),options:K.value,disabled:L.value,required:``},null,8,[`modelValue`,`label`,`options`,`disabled`])]),c(`label`,null,[c(`span`,null,f(m(l)(`pages.connections.conflictAction`)),1),n(S,{modelValue:I.value,"onUpdate:modelValue":r[28]||=e=>I.value=e,"control-id":`external-conflict-mode`,label:m(l)(`pages.connections.conflictAction`),options:dt.value,disabled:L.value||R.value||z.value||!F.value,required:``,onChange:Et},null,8,[`modelValue`,`label`,`options`,`disabled`])])]),R.value?(i(),h(b,{key:0,variant:`compact`,label:m(l)(`pages.connections.loadingConflictPolicy`)},null,8,[`label`])):_(``,!0),L.value?(i(),h(b,{key:1,variant:`inline`,label:m(l)(`pages.connections.savingConflictPolicy`)},null,8,[`label`])):z.value?(i(),u(`div`,Ge,[c(`p`,null,f(m(l)(`common.errors.loadFailed`)),1),c(`button`,{class:`secondary-action`,type:`button`,onClick:Tt},f(m(l)(`common.actions.retry`)),1)])):_(``,!0)]),_:1},8,[`open`,`title`])):_(``,!0),m(g).state?.capabilities?.subscribeProject?(i(),u(`section`,Ke,[c(`div`,qe,[c(`h3`,null,[te(f(m(l)(`pages.connections.subscriptionsTitle`))+` `,1),r[36]||=c(`span`,{class:`feature-badge beta`},`BETA`,-1)])]),w.value?(i(),h(b,{key:0,variant:`inline`,label:m(l)(T.value)},null,8,[`label`])):_(``,!0),c(`div`,Je,[(i(!0),u(p,null,a(W.value,e=>(i(),u(`div`,{key:`${e.provider_url}:${e.project_id}`,class:`subscription-row`},[r[37]||=c(`span`,null,`↗`,-1),c(`div`,null,[c(`strong`,null,f(e.project_name??e.project_id),1),c(`span`,null,f(m(l)(`pages.connections.sharedProject`)),1)]),c(`button`,{class:`secondary-action subscription-action`,type:`button`,disabled:w.value,onClick:t=>pt(e)},f(m(l)(`pages.connections.unsubscribe`)),9,Ye)]))),128)),W.value.length?_(``,!0):(i(),u(`div`,Xe,f(m(l)(`pages.connections.noSubscriptions`)),1))]),c(`form`,{class:`subscription-form`,onSubmit:ie(ft,[`prevent`])},[n(S,{modelValue:x.value,"onUpdate:modelValue":r[29]||=e=>x.value=e,options:ot.value,label:m(l)(`pages.connections.sharedProjectLabel`),placeholder:m(l)(`pages.connections.choosePublicProject`),searchable:``,required:``,disabled:w.value},null,8,[`modelValue`,`options`,`label`,`placeholder`,`disabled`]),c(`button`,{type:`submit`,disabled:w.value||!x.value||!m(g).activePersonalSpace},f(m(l)(`pages.connections.subscribe`)),9,Ze)],32)])):_(``,!0)]))}});export{O as default};
@@ -1 +0,0 @@
1
- import{B as e,C as t,M as n,P as r,R as i,S as a,X as o,_ as s,a as c,b as l,g as u,it as d,m as f,nt as ee,tt as p,v as m,w as h,x as te,y as g}from"./i18n-b14l2pQA.js";import{i as ne,o as re}from"./client-DLS5FZBI.js";import{t as _}from"./_plugin-vue_export-helper-BDNMzG2s.js";import{n as v,t as ie}from"./UiDialog-Q7fsJUoO.js";import{t as y}from"./vue-router-B6ZjK-Br.js";import{t as b}from"./UiSelect-DcGpPQQo.js";import{n as ae}from"./paths-CDREouhi.js";import{a as oe,o as se,r as ce,s as le}from"./catalog-UDv854JN.js";import{t as ue}from"./ProjectScopePicker-zAgiaZKL.js";var x={jefa:`/assets/jefa-avatar-Dew42td5.webp`,bole:`/assets/bole-avatar-CVIr-bU_.webp`};function S(e){return x[e]}var de={key:1,role:`alert`,class:`ui-dialog__error employee-message`},fe={key:2,class:`ui-muted`},pe={class:`employee-profile`},me={class:`employee-avatar`,"aria-hidden":`true`},he=[`src`],ge={class:`ui-meta`},_e={key:2,class:`employee-scope`},ve=[`aria-label`],ye=[`data-scope`,`aria-checked`,`tabindex`,`disabled`,`onClick`],be={class:`ui-meta`,role:`status`},xe={key:3,class:`ui-meta`},Se={key:4,class:`ui-meta`},Ce={key:5,class:`ui-meta`},we=[`aria-label`],Te={class:`employee-title-controls`},Ee={class:`ui-meta`},De={class:`employee-title-example`},Oe={class:`ui-meta`},ke=[`aria-label`],Ae={class:`ui-meta`},je={key:8,class:`ui-dialog__error`,role:`alert`},Me={key:10,class:`employee-success`,role:`status`},C=_(h({__name:`EmployeeRecruitDialog`,props:{open:{type:Boolean},personalSpaceId:{},projects:{},defaultProjectId:{},defaultProjectIds:{},templateId:{}},emits:[`close`,`recruited`],setup(h,{emit:_}){let x=h,C=_,w=o([]),T=o([]),E=o(`selected`),D=o([]),O=o(`auto`),k=o(`emoji`),A=o(``),j=o(``),M=o(!1),N=o(!1),P=o(``),F=o(!1),I=o(``),L=o(null),R=o([]),z=o(``),B=u(()=>x.templateId?R.value:R.value.filter(e=>!e.fixed)),V=u(()=>x.templateId?B.value.find(e=>e.id===x.templateId):B.value.find(e=>e.id===P.value)??B.value[0]),Ne=u({get:()=>V.value?.id??``,set:e=>{P.value=e}}),Pe=u(()=>V.value?.agentId?c(`employees.manageProjectsTitle`,{name:V.value.name}):c(`employees.recruit`)),H=u(()=>x.projects.filter(e=>e.profile.lifecycle!==`archived`).map(e=>({id:e.project_id,name:e.profile.name}))),U=u(()=>V.value?.management!==void 0),W=u({get:()=>E.value===`all`?H.value.filter(e=>!D.value.includes(e.id)).map(e=>e.id):w.value,set:e=>{if(E.value===`all`){let t=new Set(H.value.map(e=>e.id));D.value=[...D.value.filter(e=>!t.has(e)),...H.value.filter(t=>!e.includes(t.id)).map(e=>e.id)]}else w.value=e}}),G=u(()=>({mode:E.value,projectIds:E.value===`selected`?[...w.value].sort():[],excludedProjectIds:E.value===`all`?[...D.value].sort():[],titleMode:O.value,titleStyle:k.value})),Fe=u(()=>[`auto`,`suggest`,`off`].map(e=>({value:e,label:c(`employees.titles.${e}`)}))),Ie=u(()=>[`emoji`,`text`].map(e=>({value:e,label:c(`employees.titles.${e}`)}))),K=u(()=>new Set(T.value)),Le=u(()=>[...K.value].filter(e=>!W.value.includes(e))),Re=u(()=>!!(V.value?.agentStatus&&V.value.agentStatus!==`active`)),q=u(()=>V.value?.agentStatus===`active`&&(U.value?JSON.stringify(G.value)===A.value&&(E.value===`all`||w.value.length===K.value.size&&w.value.every(e=>K.value.has(e))):w.value.length===K.value.size&&w.value.every(e=>K.value.has(e)))),ze=u(()=>F.value?c(`employees.recruiting`):Re.value?c(`employees.rehire`,{name:V.value?.name??``}):q.value||V.value?.agentId?c(`employees.assign`):c(`employees.recruitName`,{name:V.value?.name??``})),J=u(()=>V.value&&W.value.length?`/employees/${encodeURIComponent(V.value.id)}?project=${encodeURIComponent(W.value[0])}`:``),Y=0;i([()=>x.open,()=>x.personalSpaceId,()=>x.templateId],([e])=>{Y+=1,e&&Z(!0)},{immediate:!0}),i(P,()=>{x.open&&!M.value&&X(!0)}),i(G,()=>{I.value=N.value?I.value:``,L.value=null},{flush:`sync`});function X(e=!1){let t=new Set(H.value.map(e=>e.id));T.value=[...new Set((V.value?.assignments??[]).filter(e=>e.status===`active`&&t.has(e.personalProjectId)).map(e=>e.personalProjectId))];let n=e&&!V.value?.agentId?x.defaultProjectIds??(x.defaultProjectId?[x.defaultProjectId]:[]):[];w.value=[...new Set([...T.value,...n.filter(e=>t.has(e))])];let r=V.value?.management;E.value=r?.mode??`selected`,D.value=[...r?.excludedProjectIds??[]],O.value=r?.titleMode??`auto`,k.value=r?.titleStyle??`emoji`,r?.mode===`selected`&&V.value?.agentId&&(w.value=r.projectIds.filter(e=>t.has(e))),r?.mode===`all`&&V.value?.agentId&&(T.value=[...W.value]),A.value=JSON.stringify(G.value),j.value=V.value?.assignmentsVersion??``,N.value=!1,I.value=``,L.value=null}async function Z(e=!1){let t=++Y;M.value=!0,R.value=[],z.value=``;try{let n=await se(x.personalSpaceId);if(t!==Y||!x.open)return;R.value=n,X(e)}catch(e){t===Y&&x.open&&(R.value=[],z.value=ce(e))}finally{t===Y&&(M.value=!1)}}function Q(){F.value||C(`close`)}async function Be(){if(!V.value||V.value.identityConflict||!x.personalSpaceId||F.value||M.value||N.value||!j.value||q.value)return;F.value=!0,I.value=``;let e=V.value.id;try{let t=await ne(`/api/employee-templates/${encodeURIComponent(e)}/recruit`,{personalSpaceId:x.personalSpaceId,...U.value?{management:G.value}:{personalProjectIds:[...w.value]},replaceAssignments:!0,expectedAssignmentsVersion:j.value,...Re.value?{reactivate:!0}:{}});await le(x.personalSpaceId),R.value=[...oe.value],X(),L.value=t,C(`recruited`,t)}catch(e){I.value=ce(e);try{let t=JSON.parse(e instanceof Error?e.message:``);N.value=t.code===`assignment_scope_conflict`||t.code===`assignment_update_incomplete`}catch{}}finally{F.value=!1}}function $(e){e===`selected`&&(w.value=[...W.value]),E.value=e}function Ve(e){if(!(F.value||M.value||N.value)&&[`ArrowLeft`,`ArrowRight`,`Home`,`End`].includes(e.key)){e.preventDefault();let t=e.key===`Home`?`all`:e.key===`End`||E.value===`all`?`selected`:`all`;$(t),e.currentTarget.querySelector(`[data-scope="${t}"]`)?.focus()}}return(i,o)=>(n(),m(ie,{open:h.open,class:`employee-recruit-dialog`,title:Pe.value,busy:F.value,form:``,onClose:Q,onSubmit:Be},te({default:e(()=>[M.value&&!B.value.length?(n(),m(re,{key:0,variant:`compact`,label:p(c)(`employees.loading`)},null,8,[`label`])):z.value?(n(),l(`div`,de,[s(`p`,null,d(z.value),1),t(v,{size:`sm`,onClick:o[0]||=e=>Z(!0)},{default:e(()=>[a(d(p(c)(`employees.retry`)),1)]),_:1})])):V.value?(n(),l(f,{key:3},[B.value.length>1&&!x.templateId?(n(),m(b,{key:0,modelValue:Ne.value,"onUpdate:modelValue":o[1]||=e=>Ne.value=e,field:``,"control-id":`employee-template`,label:p(c)(`employees.choose`),options:B.value.map(e=>({value:e.id,label:e.name,meta:e.role})),disabled:F.value||M.value},null,8,[`modelValue`,`label`,`options`,`disabled`])):g(``,!0),s(`div`,pe,[s(`span`,me,[p(S)(V.value.id)?(n(),l(`img`,{key:0,src:p(S)(V.value.id),alt:``},null,8,he)):(n(),l(f,{key:1},[a(d(V.value.name.slice(0,1)),1)],64))]),s(`div`,null,[s(`h3`,null,[a(d(V.value.name)+` `,1),s(`span`,null,d(V.value.role),1)]),s(`p`,null,d(V.value.description),1),s(`p`,ge,d(V.value.capabilities.join(` · `)),1)])]),M.value?(n(),m(re,{key:1,variant:`compact`,label:p(c)(`employees.loadingScope`)},null,8,[`label`])):g(``,!0),U.value?(n(),l(`div`,_e,[s(`div`,{class:`ui-segmented`,role:`radiogroup`,"aria-label":p(c)(`employees.scope.rule`),onKeydown:Ve},[(n(),l(f,null,r([`all`,`selected`],e=>s(`button`,{key:e,type:`button`,role:`radio`,"data-scope":e,"aria-checked":E.value===e,tabindex:E.value===e?0:-1,disabled:F.value||M.value||N.value,onClick:t=>$(e)},d(p(c)(`employees.scope.${e===`all`?`continuousAll`:`onlySelected`}`)),9,ye)),64))],40,ve),s(`p`,be,d(E.value===`all`?p(c)(`employees.scope.allHint`,{name:V.value.name}):p(c)(`employees.scope.selectedHint`)),1)])):g(``,!0),t(ue,{modelValue:W.value,"onUpdate:modelValue":o[2]||=e=>W.value=e,projects:H.value,inline:``,hint:E.value===`all`?p(c)(`employees.scope.excludeHint`):void 0,disabled:F.value||M.value||N.value},null,8,[`modelValue`,`projects`,`hint`,`disabled`]),E.value===`all`&&D.value.length?(n(),l(`p`,xe,d(p(c)(`employees.scope.excludedCount`,{count:D.value.length})),1)):g(``,!0),H.value.length?g(``,!0):(n(),l(`p`,Se,[a(d(p(c)(`employees.noProjects`))+` `,1),t(p(y),{to:p(ae)(h.personalSpaceId,`directory`),onClick:Q},{default:e(()=>[a(d(p(c)(`employees.createProject`)),1)]),_:1},8,[`to`])])),Le.value.length&&!L.value?(n(),l(`p`,Ce,d(p(c)(`employees.scopeRemoved`,{count:Le.value.length})),1)):g(``,!0),U.value&&V.value.permissions.includes(`session.title`)?(n(),l(`section`,{key:6,class:`employee-title-settings`,"aria-label":p(c)(`employees.titles.heading`)},[s(`h3`,null,d(p(c)(`employees.titles.heading`)),1),s(`div`,Te,[t(b,{modelValue:O.value,"onUpdate:modelValue":o[3]||=e=>O.value=e,field:``,"control-id":`employee-title-mode`,label:p(c)(`employees.titles.mode`),options:Fe.value,disabled:F.value||M.value||N.value},null,8,[`modelValue`,`label`,`options`,`disabled`]),t(b,{modelValue:k.value,"onUpdate:modelValue":o[4]||=e=>k.value=e,field:``,"control-id":`employee-title-style`,label:p(c)(`employees.titles.style`),options:Ie.value,disabled:F.value||M.value||N.value||O.value===`off`},null,8,[`modelValue`,`label`,`options`,`disabled`])]),s(`p`,Ee,[a(d(p(c)(`employees.titles.example`))+` `,1),s(`span`,De,`【P1|`+d(k.value===`emoji`?`🔧 `:``)+`FIX|`+d(p(c)(`employees.titles.exampleTask`))+`】`,1)]),s(`p`,Oe,d(p(c)(`employees.titles.boundary`)),1)],8,we)):g(``,!0),s(`section`,{class:`employee-permissions`,"aria-label":p(c)(`employees.permissions`)},[s(`strong`,null,d(p(c)(`employees.permissions`)),1),s(`ul`,null,[(n(!0),l(f,null,r(V.value.permissions,e=>(n(),l(`li`,{key:e},d(e===`board.read`?p(c)(`employees.boardRead`):e===`board.write`?p(c)(`employees.boardWrite`):e===`session.title`?p(c)(`employees.titles.heading`):e),1))),128))]),s(`p`,Ae,d(p(c)(`employees.noExecutor`)),1)],8,ke),V.value.runtime?(n(),l(`p`,{key:7,class:ee([`employee-runtime`,{"is-warning":V.value.runtimeStatus!==`ready`}])},d(V.value.runtimeStatus===`ready`?p(c)(`employees.hostReady`):p(c)(`employees.installRequired`)),3)):g(``,!0),I.value||V.value.identityConflict?(n(),l(`p`,je,d(I.value||p(c)(`employees.errors.identity_conflict`)),1)):g(``,!0),N.value?(n(),m(v,{key:9,size:`sm`,disabled:M.value,onClick:o[5]||=e=>Z()},{default:e(()=>[a(d(p(c)(`employees.reloadScope`)),1)]),_:1},8,[`disabled`])):g(``,!0),L.value?(n(),l(`div`,Me,[s(`strong`,null,d(p(c)(`employees.scopeSaved`)),1),s(`p`,null,d(E.value===`all`?p(c)(`employees.scope.successAll`,{count:W.value.length}):W.value.length?p(c)(`employees.successMultiple`,{count:W.value.length}):p(c)(`employees.successUnassigned`)),1)])):g(``,!0)],64)):(n(),l(`p`,fe,d(p(c)(`employees.noTemplates`)),1))]),_:2},[V.value&&!z.value?{name:`footer`,fn:e(()=>[t(v,{variant:`ghost`,disabled:F.value,onClick:Q},{default:e(()=>[a(d(p(c)(`employees.cancel`)),1)]),_:1},8,[`disabled`]),q.value&&J.value&&!F.value&&!M.value&&!N.value&&V.value.runtimeStatus===`ready`?(n(),m(p(y),{key:0,class:`ui-button ui-button--primary`,to:J.value,onClick:Q},{default:e(()=>[a(d(p(c)(`employees.open`)),1)]),_:1},8,[`to`])):(n(),m(v,{key:1,variant:`primary`,type:`submit`,busy:F.value,"busy-label":ze.value,disabled:M.value||N.value||!j.value||q.value||V.value.identityConflict||!h.personalSpaceId},{default:e(()=>[a(d(ze.value),1)]),_:1},8,[`busy`,`busy-label`,`disabled`]))]),key:`0`}:void 0]),1032,[`open`,`title`,`busy`]))}}),[[`__scopeId`,`data-v-4e6fb0a1`]]);export{S as n,C as t};
@@ -1 +0,0 @@
1
- .bole-panel[data-v-5c62fca6]{--bole-ink:var(--color-ink);--bole-muted:var(--color-muted);--bole-line:var(--color-surface-subtle);background:var(--color-surface);min-width:0;min-height:0;color:var(--bole-ink);flex-direction:column;flex:1;display:flex;overflow:hidden}.bole-header[data-v-5c62fca6],.bole-controls[data-v-5c62fca6]{flex:none;padding-inline:24px}.bole-header[data-v-5c62fca6]{border-bottom:1px solid var(--bole-line);background:var(--color-surface);flex-wrap:wrap;align-items:center;gap:4px 16px;padding-block:8px;display:flex}.bole-heading[data-v-5c62fca6]{flex-wrap:wrap;align-items:center;gap:4px 24px;display:flex}.bole-heading h2[data-v-5c62fca6]{margin:0;font-size:20px;font-weight:650;line-height:1.3}.bole-refresh[data-v-5c62fca6]:disabled{cursor:progress}.bole-summary[data-v-5c62fca6]{flex-wrap:wrap;gap:8px 16px;margin:0 0 0 auto;display:flex}.bole-summary div[data-v-5c62fca6]{align-items:baseline;gap:8px;display:flex}.bole-summary dt[data-v-5c62fca6]{color:var(--bole-muted);font-size:12px}.bole-summary dd[data-v-5c62fca6]{font-variant-numeric:tabular-nums;margin:0;font-size:15px;font-weight:650}.bole-controls[data-v-5c62fca6]{z-index:2;border-bottom:1px solid var(--bole-line);background:var(--color-surface);padding-bottom:12px}.bole-views[data-v-5c62fca6]{flex-wrap:wrap;gap:20px;display:flex}.bole-views button[data-v-5c62fca6]{min-height:44px;color:var(--bole-muted);background:0 0;border:0;align-items:center;gap:8px;padding:10px 0;font-size:14px;display:flex;position:relative}.bole-views button[aria-pressed=true][data-v-5c62fca6]{color:var(--color-ink);font-weight:650}.bole-views button[aria-pressed=true][data-v-5c62fca6]:after{background:var(--color-ink);content:"";height:2px;position:absolute;inset:auto 0 -1px}.bole-views span[data-v-5c62fca6]{color:var(--bole-muted);font-variant-numeric:tabular-nums;font-size:12px;font-weight:500}.bole-filters[data-v-5c62fca6]{flex-wrap:wrap;align-items:center;gap:12px;padding-top:12px;display:flex}.bole-search[data-v-5c62fca6]{flex:220px;min-width:0;min-height:44px}.bole-search[data-v-5c62fca6]::placeholder{color:var(--bole-muted)}.bole-filters .project-scope-picker[data-v-5c62fca6]{flex:0 260px}.bole-role-filters[data-v-5c62fca6]{flex-wrap:wrap;gap:4px 8px;margin-top:12px;display:flex}.bole-role-filters button[data-v-5c62fca6]:not(.bole-clear){border-radius:var(--radius-control);min-height:36px;color:var(--bole-muted);background:0 0;border:0;padding:8px 10px;font-size:12px}.bole-role-filters button:not(.bole-clear)[aria-pressed=true][data-v-5c62fca6]{color:var(--color-ink);background:var(--color-surface-subtle);font-weight:600}.bole-role-filters button[data-v-5c62fca6]:not(.bole-clear):hover{background:var(--color-surface-subtle)}.bole-role-filters span[data-v-5c62fca6]{font-variant-numeric:tabular-nums;margin-left:4px}.bole-role-filters .bole-clear[data-v-5c62fca6]{margin-left:auto}.bole-content[data-v-5c62fca6]{overscroll-behavior:contain;scrollbar-gutter:stable;flex:1;min-height:0;padding:16px 24px 32px;overflow:auto}.bole-result-count[data-v-5c62fca6]{color:var(--bole-muted);align-self:center;font-size:12px}.bole-table-heading[data-v-5c62fca6],.bole-agent-row[data-v-5c62fca6]{grid-template-columns:minmax(0,1fr) minmax(0,1.25fr) minmax(0,.8fr);gap:24px;padding:16px;display:grid}.bole-table-heading[data-v-5c62fca6]{background:var(--color-surface-subtle);color:var(--bole-muted);padding-block:12px;font-size:12px}.bole-agent-row[data-v-5c62fca6]{border-top:1px solid var(--bole-line);align-items:center}.bole-agent-row[data-v-5c62fca6]:hover{background:var(--color-surface)}.bole-agent-identity[data-v-5c62fca6]{align-items:center;gap:12px;min-width:0;display:flex}.bole-agent-identity>div[data-v-5c62fca6]{min-width:0}.bole-agent-mark[data-v-5c62fca6]{background:var(--color-surface-subtle);border-radius:10px;flex:0 0 36px;place-items:center;height:36px;font-size:18px;display:grid;overflow:hidden}.bole-agent-mark img[data-v-5c62fca6]{object-fit:cover;width:100%;height:100%}.bole-agent-identity strong[data-v-5c62fca6],.bole-recruitment-identity strong[data-v-5c62fca6]{overflow-wrap:anywhere;font-size:14px;font-weight:600;display:block}.bole-agent-identity small[data-v-5c62fca6],.bole-timeline small[data-v-5c62fca6]{color:var(--bole-muted);margin-top:4px;font-size:12px;line-height:1.5;display:block}.bole-agent-work p[data-v-5c62fca6]{overflow-wrap:anywhere;margin:6px 0 0;font-size:14px;line-height:1.55}.bole-agent-work .is-idle[data-v-5c62fca6]{color:var(--bole-muted);margin:0}.bole-status[data-v-5c62fca6]{white-space:nowrap}.bole-status[data-status=blocked][data-v-5c62fca6]{background:var(--color-danger-soft);color:var(--color-danger)}.bole-status[data-status=awaiting_review][data-v-5c62fca6]{background:var(--color-warning-soft);color:var(--color-warning)}.bole-agent-projects[data-v-5c62fca6]{min-width:0;color:var(--bole-muted);font-size:12px;line-height:1.6}.bole-agent-projects span[data-v-5c62fca6]{overflow-wrap:anywhere;display:block}.bole-agent-projects summary[data-v-5c62fca6]{cursor:pointer;width:fit-content;min-height:32px;color:var(--color-ink);padding-block:6px}.bole-timeline[data-v-5c62fca6]{margin:0;padding:0;list-style:none}.bole-timeline li[data-v-5c62fca6]{border-bottom:1px solid var(--bole-line);grid-template-columns:minmax(0,1fr) minmax(0,1.7fr) minmax(120px,.6fr);gap:24px;padding:20px 0;display:grid}.bole-recruitment-reason p[data-v-5c62fca6]{overflow-wrap:anywhere;max-width:70ch;margin:0;font-size:13px;line-height:1.7}.bole-timeline time[data-v-5c62fca6]{color:var(--bole-muted);font-size:12px;line-height:1.6}.bole-empty[data-v-5c62fca6]{color:var(--bole-muted)}.bole-alert[data-v-5c62fca6]{background:var(--color-danger-soft);color:var(--color-danger);flex:none;justify-content:space-between;align-items:center;gap:16px;padding:8px 24px;font-size:13px;display:flex}.bole-content[data-v-5c62fca6]:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}@media (width<=1100px){.bole-table-heading[data-v-5c62fca6],.bole-agent-row[data-v-5c62fca6]{grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);gap:16px}.bole-table-heading[data-v-5c62fca6]>:last-child{display:none}.bole-agent-projects[data-v-5c62fca6]{grid-column:2}.bole-timeline li[data-v-5c62fca6]{grid-template-columns:minmax(0,1fr) minmax(0,1.5fr);gap:12px 20px}.bole-timeline time[data-v-5c62fca6]{grid-column:2}}@media (width<=700px),(height<=560px){.bole-panel[data-v-5c62fca6]{overscroll-behavior:contain;overflow:auto}.bole-content[data-v-5c62fca6]{flex:none;overflow:visible}}@media (width<=700px){.bole-header[data-v-5c62fca6],.bole-controls[data-v-5c62fca6]{padding-inline:16px}.bole-content[data-v-5c62fca6]{padding:16px 16px 28px}.bole-heading[data-v-5c62fca6]{gap:4px 16px;width:100%}.bole-views[data-v-5c62fca6]{gap:16px}.bole-summary[data-v-5c62fca6]{gap:8px 16px;margin-left:0}.bole-refresh[data-v-5c62fca6]{margin-left:auto}.bole-filters[data-v-5c62fca6]{gap:8px}.bole-search[data-v-5c62fca6]{flex-basis:100%}.bole-filters .project-scope-picker[data-v-5c62fca6]{flex:180px}.bole-role-filters[data-v-5c62fca6]{gap:4px}.bole-table-heading[data-v-5c62fca6]{display:none}.bole-agent-row[data-v-5c62fca6]{grid-template-columns:minmax(0,1fr);gap:12px}.bole-agent-row[data-v-5c62fca6]:first-of-type{border-top:0}.bole-agent-projects[data-v-5c62fca6]{grid-column:auto;padding-left:48px}.bole-agent-work[data-v-5c62fca6]{padding-left:48px}.bole-timeline li[data-v-5c62fca6]{grid-template-columns:minmax(0,1fr);gap:12px}.bole-timeline time[data-v-5c62fca6]{grid-column:auto}.bole-alert[data-v-5c62fca6]{padding-inline:16px}}fieldset[data-v-50bf5065]{border:0;min-width:0;margin:0;padding:0}.employee-share-result[data-v-50bf5065]{gap:12px;display:grid}.employee-share-result>div[data-v-50bf5065]{align-items:center;gap:16px;display:flex}.employee-share-result a[data-v-50bf5065]{color:var(--color-ink);font-size:13px}.employee-share-preview[data-v-50bf5065]{color:var(--color-ink);justify-content:space-between;align-items:center;gap:12px;font-weight:600;display:flex}.employee-share-empty[data-v-50bf5065]{color:var(--color-warning);line-height:1.6}.employee-share-active[data-v-50bf5065]{border-top:1px solid var(--color-border);padding-top:16px}.employee-share-active h3[data-v-50bf5065]{margin:0 0 10px;font-size:14px}.employee-share-active>div[data-v-50bf5065]{justify-content:space-between;align-items:center;gap:12px;padding:6px 0;font-size:13px;display:flex}.employee-share-active span[data-v-50bf5065]{overflow-wrap:anywhere}.employee-dialog-count[data-v-50bf5065]{color:var(--color-muted);margin-right:auto;font-size:12px}.employee-workbench-view[data-v-424ede82]{background:var(--color-surface);flex-direction:column;flex:1;min-width:0;min-height:0;display:flex;overflow:hidden}.employee-workbench-toolbar[data-v-424ede82]{flex:none;justify-content:space-between;align-items:center;gap:20px;padding:16px 24px 10px;display:flex}.employee-workbench-identity[data-v-424ede82]{align-items:center;gap:10px;min-width:0;display:flex}.employee-workbench-mark[data-v-424ede82]{border-radius:var(--radius-control);background:var(--color-surface-subtle);height:32px;color:var(--color-ink);flex:0 0 32px;place-items:center;font-size:17px;font-weight:650;display:grid;overflow:hidden}.employee-workbench-mark img[data-v-424ede82]{object-fit:cover;width:100%;height:100%}.employee-share-button[data-v-424ede82]{border-radius:var(--radius-control);width:40px;height:40px;color:var(--color-ink);cursor:pointer;background:0 0;border:0;flex:0 0 40px;place-items:center;display:grid}.employee-share-button[data-v-424ede82]:hover{background:var(--color-surface-subtle)}.employee-share-button[data-v-424ede82]:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.employee-workbench-toolbar h1[data-v-424ede82]{color:var(--color-ink);overflow-wrap:anywhere;margin:0;font-size:18px;font-weight:650;line-height:1.4}.employee-workbench-toolbar h1 span[data-v-424ede82]{color:var(--color-muted);margin-left:8px;font-size:12px;font-weight:400}.employee-workbench-actions[data-v-424ede82]{align-items:center;gap:12px;min-width:0;display:flex}.employee-manage-projects[data-v-424ede82],.employee-back-to-all[data-v-424ede82]{border-radius:var(--radius-control);min-height:40px;color:var(--color-ink);font:inherit;cursor:pointer;white-space:nowrap;background:0 0;border:0;justify-content:center;align-items:center;gap:7px;padding:8px 10px;font-size:13px;display:inline-flex}.employee-manage-projects[data-v-424ede82]:hover:not(:disabled),.employee-back-to-all[data-v-424ede82]:hover{background:var(--color-surface-subtle)}.employee-manage-projects[data-v-424ede82]:disabled{color:var(--color-muted);cursor:default}.employee-manage-projects[data-v-424ede82]:focus-visible,.employee-back-to-all[data-v-424ede82]:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px}.employee-workbench-frame[data-v-424ede82]{border:0;flex:1;width:100%;height:100%;min-height:0}.employee-workbench-state[data-v-424ede82]{color:var(--color-muted);text-align:center;flex:1;place-content:center;justify-items:center;gap:14px;padding:30px;font-size:14px;display:grid}.employee-workbench-state a[data-v-424ede82]{color:var(--color-ink)}.employee-workbench-state h2[data-v-424ede82]{color:var(--color-ink);font-size:20px;font-weight:600}.employee-workbench-state p[data-v-424ede82]{max-width:48ch;margin:0;line-height:1.7}@media (width<=640px){.employee-workbench-toolbar[data-v-424ede82]{flex-wrap:wrap;gap:10px;padding:8px 16px 10px}.employee-workbench-actions[data-v-424ede82]{justify-content:flex-end;gap:8px;width:100%}.employee-workbench-toolbar h1 span[data-v-424ede82]{margin-left:6px}}
@@ -1,3 +0,0 @@
1
- import{B as e,C as t,M as n,P as r,R as i,S as a,V as o,X as s,_ as c,a as l,b as u,g as d,it as f,m as p,tt as m,u as h,v as g,w as _,y as v}from"./i18n-b14l2pQA.js";import{t as y}from"./console-CqzwSo7a.js";import{i as b,n as x,o as ee,r as S}from"./client-DLS5FZBI.js";import{t as C}from"./_plugin-vue_export-helper-BDNMzG2s.js";import{n as w,t as T}from"./UiDialog-Q7fsJUoO.js";import{h as E,m as D}from"./useApi-CROJJdhE-CEQAEuug.js";import{t as O}from"./vue-router-B6ZjK-Br.js";import{t as k}from"./UiSelect-DcGpPQQo.js";import{t as A}from"./AgentHand-DkyF4vgk.js";import{i as j}from"./profile-model-BQO4zNs9.js";import{t as M}from"./AgentName-C1mAVr-v.js";import{a as N,n as P,r as F,s as I,t as L}from"./catalog-UDv854JN.js";import{t as R}from"./ProjectScopePicker-zAgiaZKL.js";import{n as te,t as ne}from"./EmployeeRecruitDialog-D9QfGipd.js";import{i as z,r as B,t as V}from"./shared-report-BYnLhmCZ.js";import{t as H}from"./UiSegmented-CT28bxqw.js";var re=[`aria-busy`],ie={key:0,class:`bole-alert`,role:`alert`},ae={class:`bole-header`},oe={class:`bole-heading`},U={id:`bole-overview-title`},W=[`aria-label`],G=[`aria-pressed`],K={"data-testid":`people-total`},q=[`aria-pressed`],se=[`aria-label`],ce={"data-testid":`people-working`},le=[`disabled`],ue={class:`bole-controls`},J={class:`bole-filters`},de=[`aria-label`,`placeholder`],Y=[`aria-label`],fe=[`aria-pressed`],pe=[`aria-pressed`,`onClick`],me={key:1,class:`bole-result-count`,role:`status`},X=[`aria-label`],he={key:1,"aria-labelledby":`bole-work-title`},ge={key:0,class:`bole-empty`,role:`status`},Z={key:1,class:`ui-card bole-agent-list`},_e={class:`bole-table-heading`,"aria-hidden":`true`},ve={class:`bole-agent-identity`},ye={class:`bole-agent-mark`,"aria-hidden":`true`},be=[`src`],xe={class:`bole-agent-work`},Se=[`data-status`],Ce={key:1,class:`is-idle`},we={class:`bole-agent-projects`},Te={key:0},Ee={key:1},De={key:2,class:`ui-empty bole-empty`},Oe={key:2,"aria-labelledby":`bole-history-title`},ke={key:0,class:`ui-card bole-timeline`},Ae={class:`bole-recruitment-identity`},je={class:`bole-recruitment-reason`},Me=[`datetime`],Ne={key:1,class:`ui-empty bole-empty`},Pe=`__bole_unassigned__`,Fe=200,Ie=C(_({__name:`BolePeoplePanel`,props:{personalSpaceId:{},projects:{}},setup(e){let _=e,y=D(),b=s([]),S=s([]),C=s([]),w=s(!1),T=s(!1),E=s(`people`),O=s(``),k=s(``),N=s(`all`),P=d(()=>[{value:`all`,label:l(`employees.bole.allWork`)},{value:`working`,label:l(`employees.bole.workingNow`)},{value:`idle`,label:l(`employees.bole.withoutTask`)}]),F=s(null),I=s(null),L=d(()=>S.value.length>=Fe),ne=0,z=new Set([`awaiting_recruitment`,`queued`,`running`,`paused`,`awaiting_review`,`blocked`]),B=d(()=>new Map(_.projects.map(e=>[e.project_id,e.profile.name]))),V=d(()=>b.value.filter(e=>e.status===`active`)),Ie=d(()=>S.value.filter(e=>z.has(e.status))),Le=d(()=>new Set(Be.value.filter(e=>e.task).map(e=>e.id))),Re=d(()=>new Set(V.value.flatMap(e=>e.projectIds).filter(Boolean))),ze=d(()=>{let e=[`coordinator`,`durable`,`hr`,`temporary`],t=new Map;for(let e of V.value)t.set(e.type,(t.get(e.type)??0)+1);return[...t.entries()].sort(([t],[n])=>at(e,t)-at(e,n)).map(([e,t])=>({type:e,count:t,label:ot(e)}))}),Be=d(()=>V.value.map(e=>({...e,task:e.workStatus?z.has(e.workStatus)&&e.currentTaskId?S.value.find(t=>t.id===e.currentTaskId)??{id:e.currentTaskId,title:e.currentTaskId,status:e.workStatus,projectId:``,agentIds:[e.id],updatedAt:``}:void 0:Ie.value.filter(t=>t.agentIds.includes(e.id)).sort((e,t)=>t.updatedAt.localeCompare(e.updatedAt))[0]}))),Ve=d(()=>[...C.value].sort((e,t)=>t.createdAt.localeCompare(e.createdAt))),He=d(()=>[...new Set([..._.projects.map(e=>e.project_id),...b.value.flatMap(e=>e.projectIds),...S.value.map(e=>e.projectId),...C.value.map(e=>e.projectId)].filter(Boolean))].map(e=>({id:e,name:B.value.get(e)??e})).sort((e,t)=>e.name.localeCompare(t.name)).concat({id:Pe,name:l(`employees.bole.noProject`)})),Ue=d({get:()=>F.value??He.value.map(e=>e.id),set:e=>{F.value=e.length===He.value.length?null:e}}),We=d(()=>Be.value.filter(e=>{let t=[...e.projectIds,...e.task?.projectId?[e.task.projectId]:[]];return qe(t)&&(!k.value||e.type===k.value)&&(N.value===`all`||(N.value===`working`?!!e.task:!e.task))&&Je([e.name,e.responsibility,...e.searchTerms,e.task?.title??``,...t.map(lt)])}).sort((e,t)=>Number(!!t.task)-Number(!!e.task)||e.name.localeCompare(t.name))),Ge=d(()=>Ve.value.filter(e=>qe(e.projectId?[e.projectId]:[])&&(!k.value||e.positionKind===k.value)&&Je([...Ye(e.agentId),e.reason,e.workKind,lt(e.projectId)]))),Ke=d(()=>O.value||k.value||F.value!==null||E.value===`people`&&N.value!==`all`);function qe(e){return F.value===null||(e.length?e:[Pe]).some(e=>F.value?.includes(e))}function Je(e){return j(e.join(` `),O.value)}function Ye(e){let t=b.value.find(t=>t.id===e);return t?[t.name,t.responsibility,...t.searchTerms]:[e]}function Xe(){O.value=``,k.value=``,N.value=`all`,F.value=null}function Ze(e){return te(e.replace(/^employee\./,``))}i([E,O,k,N,F],()=>{I.value&&(I.value.scrollTop=0)}),i([()=>_.personalSpaceId,()=>y.query.q],([e,t],[n])=>{e===n?O.value=typeof t==`string`?t:``:(Xe(),n===void 0&&(O.value=typeof t==`string`?t:``),Qe())},{immediate:!0});async function Qe(){let e=++ne;if(b.value=[],S.value=[],C.value=[],T.value=!1,!_.personalSpaceId){w.value=!1;return}w.value=!0;let t=new URLSearchParams({personalSpaceId:_.personalSpaceId}),n=await Promise.allSettled([x(`/api/project-agents?${t}`),x(`/api/project-agent-tasks?${t}&limit=${Fe}`),x(`/api/project-agent-recruitments?${t}`)]);e===ne&&(n[0].status===`fulfilled`&&(b.value=$e(n[0].value,`agents`).map(tt).filter(it)),n[1].status===`fulfilled`&&(S.value=$e(n[1].value,`tasks`).map(nt).filter(it)),n[2].status===`fulfilled`&&(C.value=$e(n[2].value,`recruitments`).map(rt).filter(it)),T.value=n.some(e=>e.status===`rejected`),w.value=!1)}function Q(e){return e&&typeof e==`object`&&!Array.isArray(e)?e:{}}function $e(e,t){if(Array.isArray(e))return e;let n=Q(e),r=n[t]??n.items;return Array.isArray(r)?r:[]}function $(e,t,n=t){let r=e[t]??e[n];return typeof r==`string`?r:``}function et(e){return Array.isArray(e)?e:[]}function tt(e){let t=Q(e),n=Q(t.profile),r=$(t,`agentId`,`agent_id`);if(!r)return null;let i=et(t.assignments).flatMap(e=>{let t=Q(e),n=$(t,`status`),r=$(t,`personalProjectId`,`personal_project_id`);return n===`active`&&r?[r]:[]}),a=$(t,`personalProjectId`,`personal_project_id`);return{id:r,name:$(n,`displayName`,`display_name`)||$(n,`name`)||r,emoji:$(n,`occupationEmoji`,`occupation_emoji`)||`✦`,responsibility:$(n,`responsibility`),searchTerms:[$(n,`name`),...et(n.capabilities),...et(n.workKinds??n.work_kinds)].filter(e=>typeof e==`string`),type:$(n,`agentType`,`agent_type`)||`other`,status:$(n,`status`)||`active`,projectIds:[...new Set([...i,...a?[a]:[]])],currentTaskId:$(t,`currentTaskId`,`current_task_id`),workStatus:$(t,`workStatus`,`work_status`)}}function nt(e){let t=Q(e),n=$(t,`taskId`,`task_id`);if(!n)return null;let r=[$(t,`ownerAgentId`,`owner_agent_id`),$(t,`leadAgentId`,`lead_agent_id`)],i=et(t.participants).flatMap(e=>{let t=Q(e),n=$(t,`status`);return n&&!z.has(n)?[]:[$(t,`agentId`,`agent_id`)]});return{id:n,title:$(t,`title`)||n,status:$(t,`status`)||`queued`,projectId:$(t,`personalProjectId`,`personal_project_id`),agentIds:[...new Set([...r,...i].filter(Boolean))],updatedAt:$(t,`updatedAt`,`updated_at`)||$(t,`createdAt`,`created_at`)}}function rt(e){let t=Q(e),n=$(t,`recruitmentId`,`recruitment_id`);return n?{id:n,agentId:$(t,`recruitedAgentId`,`recruited_agent_id`)||$(t,`proposedAgentId`,`proposed_agent_id`),projectId:$(t,`personalProjectId`,`personal_project_id`),workKind:$(t,`workKind`,`work_kind`),positionKind:$(t,`positionKind`,`position_kind`),reason:$(t,`reason`)||$(t,`reasonCode`,`reason_code`),status:$(t,`status`),createdAt:$(t,`createdAt`,`created_at`)}:null}function it(e){return e!==null}function at(e,t){let n=e.indexOf(t);return n<0?e.length:n}function ot(e){return[`coordinator`,`durable`,`hr`,`temporary`].includes(e)?l(`employees.bole.types.${e}`):l(`employees.bole.types.other`)}function st(e){return[`awaiting_recruitment`,`queued`,`running`,`paused`,`failed`,`awaiting_review`,`blocked`].includes(e)?l(`employees.bole.status.${e}`):e}function ct(e){return b.value.find(t=>t.id===e)?.name??e}function lt(e){return B.value.get(e)??l(`employees.bole.noProject`)}function ut(e){if(!e)return l(`employees.bole.unknownTime`);let t=new Date(e);return Number.isNaN(t.getTime())?e:new Intl.DateTimeFormat(void 0,{dateStyle:`medium`,timeStyle:`short`}).format(t)}return(i,s)=>(n(),u(`div`,{class:`bole-panel`,"aria-busy":w.value},[T.value?(n(),u(`div`,ie,[c(`span`,null,f(m(l)(`employees.bole.partialError`)),1),c(`button`,{class:`quiet-button`,type:`button`,onClick:Qe},f(m(l)(`employees.retry`)),1)])):v(``,!0),c(`header`,ae,[c(`div`,oe,[c(`h2`,U,f(m(l)(`employees.bole.title`)),1),c(`nav`,{class:`bole-views`,"aria-label":m(l)(`employees.bole.viewLabel`)},[c(`button`,{id:`bole-work-title`,type:`button`,"aria-pressed":E.value===`people`,onClick:s[0]||=e=>E.value=`people`},[a(f(m(l)(`employees.bole.currentWork`))+` `,1),c(`span`,K,f(w.value?`—`:V.value.length),1)],8,G),c(`button`,{id:`bole-history-title`,type:`button`,"aria-pressed":E.value===`history`,onClick:s[1]||=e=>E.value=`history`},[a(f(m(l)(`employees.bole.recruitmentHistory`))+` `,1),c(`span`,null,f(w.value?`—`:C.value.length),1)],8,q)],8,W)]),c(`dl`,{class:`bole-summary`,"aria-label":m(l)(`employees.bole.overview`)},[c(`div`,ce,[c(`dt`,null,f(m(l)(`employees.bole.workingNow`)),1),c(`dd`,null,f(w.value?`—`:Le.value.size),1)]),c(`div`,null,[c(`dt`,null,f(m(l)(`employees.bole.coveredProjects`)),1),c(`dd`,null,f(w.value?`—`:Re.value.size),1)])],8,se),c(`button`,{class:`quiet-button bole-refresh`,type:`button`,disabled:w.value,onClick:Qe},f(m(l)(`common.actions.refresh`)),9,le)]),c(`div`,ue,[c(`div`,J,[o(c(`input`,{"onUpdate:modelValue":s[2]||=e=>O.value=e,type:`search`,class:`bole-search`,"aria-label":m(l)(`employees.bole.search`),placeholder:m(l)(`employees.bole.search`)},null,8,de),[[h,O.value]]),t(R,{modelValue:Ue.value,"onUpdate:modelValue":s[3]||=e=>Ue.value=e,projects:He.value,label:m(l)(`employees.allProjects.projectFilter`),"all-label":m(l)(`employees.bole.allProjects`),"empty-label":m(l)(`employees.filterEmpty`),compact:``,hint:``},null,8,[`modelValue`,`projects`,`label`,`all-label`,`empty-label`]),E.value===`people`?(n(),g(H,{key:0,modelValue:N.value,"onUpdate:modelValue":s[4]||=e=>N.value=e,label:m(l)(`employees.bole.workFilter`),options:P.value},null,8,[`modelValue`,`label`,`options`])):v(``,!0)]),c(`div`,{class:`bole-role-filters`,role:`group`,"aria-label":m(l)(`employees.bole.distribution`)},[c(`button`,{type:`button`,"aria-pressed":!k.value,onClick:s[5]||=e=>k.value=``},f(m(l)(`employees.bole.allRoles`)),9,fe),(n(!0),u(p,null,r(ze.value,e=>(n(),u(`button`,{key:e.type,type:`button`,"aria-pressed":k.value===e.type,onClick:t=>k.value=k.value===e.type?``:e.type},[a(f(e.label)+` `,1),c(`span`,null,f(e.count),1)],8,pe))),128)),Ke.value?(n(),u(`button`,{key:0,class:`quiet-button bole-clear`,type:`button`,onClick:Xe},f(m(l)(`employees.bole.clearFilters`)),1)):v(``,!0),Ke.value&&!w.value?(n(),u(`span`,me,f(m(l)(`employees.bole.resultCount`,{count:E.value===`people`?We.value.length:Ge.value.length})),1)):v(``,!0)],8,Y)]),c(`div`,{ref_key:`scrollRegion`,ref:I,class:`bole-content`,tabindex:`0`,role:`region`,"aria-label":m(l)(E.value===`people`?`employees.bole.currentWork`:`employees.bole.recruitmentHistory`)},[w.value?(n(),g(ee,{key:0,variant:`compact`,label:m(l)(`employees.bole.loading`)},null,8,[`label`])):E.value===`people`?(n(),u(`section`,he,[L.value?(n(),u(`p`,ge,f(m(l)(`employees.bole.taskLimit`)),1)):v(``,!0),We.value.length?(n(),u(`div`,Z,[c(`div`,_e,[c(`span`,null,f(m(l)(`projectAgents.title`)),1),c(`span`,null,f(m(l)(`employees.bole.taskColumn`)),1),c(`span`,null,f(m(l)(`employees.bole.projectsColumn`)),1)]),(n(!0),u(p,null,r(We.value,i=>(n(),u(`article`,{key:i.id,class:`bole-agent-row`},[c(`div`,ve,[c(`span`,ye,[Ze(i.id)?(n(),u(`img`,{key:0,src:Ze(i.id),alt:``},null,8,be)):(n(),u(p,{key:1},[a(f(i.emoji),1)],64))]),c(`div`,null,[c(`strong`,null,[t(M,{"space-id":e.personalSpaceId,"agent-id":i.id,name:i.name},null,8,[`space-id`,`agent-id`,`name`])]),t(A,{"agent-id":i.id},null,8,[`agent-id`]),c(`small`,null,f(i.responsibility||ot(i.type)),1)])]),c(`div`,xe,[i.task?(n(),u(p,{key:0},[c(`span`,{class:`ui-badge bole-status`,"data-status":i.task.status},f(st(i.task.status)),9,Se),c(`p`,null,f(i.task.title),1)],64)):(n(),u(`p`,Ce,f(m(l)(`employees.bole.idle`)),1))]),c(`div`,we,[i.projectIds.length?(n(),u(p,{key:0},[(n(!0),u(p,null,r(i.projectIds.slice(0,2),e=>(n(),u(`span`,{key:e},f(lt(e)),1))),128)),i.projectIds.length>2?(n(),u(`details`,Te,[c(`summary`,null,f(m(l)(`employees.bole.moreProjects`,{count:i.projectIds.length-2})),1),(n(!0),u(p,null,r(i.projectIds.slice(2),e=>(n(),u(`span`,{key:e},f(lt(e)),1))),128))])):v(``,!0)],64)):(n(),u(`span`,Ee,f(i.task?.projectId?lt(i.task.projectId):m(l)(`employees.bole.noProject`)),1))])]))),128))])):(n(),u(`p`,De,f(m(l)(Ke.value?`employees.bole.noMatch`:`employees.bole.noAgents`)),1))])):(n(),u(`section`,Oe,[Ge.value.length?(n(),u(`ol`,ke,[(n(!0),u(p,null,r(Ge.value,r=>(n(),u(`li`,{key:r.id},[c(`div`,Ae,[c(`strong`,null,[t(M,{"space-id":e.personalSpaceId,"agent-id":r.agentId,name:ct(r.agentId)},null,8,[`space-id`,`agent-id`,`name`])]),c(`small`,null,f(ot(r.positionKind))+` · `+f(lt(r.projectId)),1)]),c(`div`,je,[c(`p`,null,f(r.reason),1),c(`small`,null,f(r.workKind||r.status),1)]),c(`time`,{datetime:r.createdAt},f(ut(r.createdAt)),9,Me)]))),128))])):(n(),u(`p`,Ne,f(m(l)(Ke.value?`employees.bole.noMatch`:`employees.bole.noRecruitments`)),1))]))],8,X)],8,re))}}),[[`__scopeId`,`data-v-5c62fca6`]]),Le={key:1,class:`ui-dialog__error employee-dialog-error`,role:`alert`},Re={class:`ui-field`},ze=[`readonly`,`disabled`],Be={key:0,class:`ui-meta`},Ve={class:`ui-field`},He=[`readonly`,`disabled`],Ue={class:`ui-field`},We=[`readonly`,`disabled`],Ge={class:`ui-field`},Ke=[`readonly`,`disabled`],qe=_({__name:`EmployeeTaskDialog`,props:{open:{type:Boolean},item:{},projects:{},defaultProjectId:{},personalSpaceId:{},canWrite:{type:Boolean}},emits:[`close`,`saved`],setup(r,{emit:_}){let y=r,x=_,S=s(!1),C=s(!1),E=s(``),D=s(null),O=s(``),A=s(``),j=s(``),M=s(`medium`),N=s(``),P=s(``),I=0,L={signature:``,id:``},R=d(()=>y.canWrite&&!C.value&&!E.value&&!!O.value&&A.value.trim().length>=2),te=d(()=>y.projects.map(e=>({value:e.id,label:e.name}))),ne=d(()=>[`critical`,`high`,`medium`,`low`].map(e=>({value:e,label:l(`employees.task.priorities.${e}`)})));i([()=>y.open,()=>y.item,()=>y.personalSpaceId],()=>{B()},{immediate:!0});async function z(e,t){return b(`/api/employee-templates/jefa/call`,{personalSpaceId:y.personalSpaceId,personalProjectId:O.value,tool:e,arguments:t})}async function B(){let e=++I;if(y.open&&(E.value=``,D.value=null,L={signature:``,id:``},O.value=y.item?.projectId??y.defaultProjectId??``,A.value=``,j.value=``,M.value=`medium`,N.value=``,P.value=``,C.value=!!y.item,y.item))try{let t=await z(`get_task`,{workItemId:y.item.id});if(e!==I)return;if(t.item.id!==y.item.id||t.item.projectId!==O.value||!t.item.updatedAt)throw Error(l(`employees.loadError`));D.value=t.item,A.value=t.item.title,j.value=t.item.summary??``,M.value=t.item.priority??`medium`,N.value=t.item.acceptanceCriteria?.join(`
2
- `)??``,P.value=t.item.tags?.join(`, `)??``}catch(t){e===I&&(E.value=F(t))}finally{e===I&&(C.value=!1)}}async function V(){if(!R.value||S.value)return;S.value=!0;let e={title:A.value.trim(),summary:j.value.trim()||A.value.trim(),priority:M.value,acceptanceCriteria:N.value.split(`
3
- `).map(e=>e.trim()).filter(Boolean),tags:P.value.split(/[,,]/).map(e=>e.trim()).filter(Boolean)},t=JSON.stringify([O.value,D.value?.updatedAt,e]);L.signature!==t&&(L={signature:t,id:`board-edit-${crypto.randomUUID()}`});try{D.value?await z(`update_tasks`,{requestId:L.id,updates:[{id:D.value.id,expectedUpdatedAt:D.value.updatedAt,...e}]}):await z(`create_tasks`,{messageId:L.id,tasks:[e]}),x(`saved`),x(`close`)}catch(e){E.value=F(e)}finally{S.value=!1}}function H(){S.value||x(`close`)}return(i,s)=>(n(),g(T,{open:r.open,class:`employee-dialog`,title:m(l)(r.item?`employees.task.detail`:`employees.task.create`),busy:S.value,form:``,onClose:H,onSubmit:V},{footer:e(()=>[t(w,{disabled:S.value,onClick:H},{default:e(()=>[a(f(m(l)(`employees.close`)),1)]),_:1},8,[`disabled`]),r.canWrite?(n(),g(w,{key:0,variant:`primary`,type:`submit`,disabled:!R.value,busy:S.value,"busy-label":m(l)(`employees.task.saving`)},{default:e(()=>[a(f(m(l)(`employees.task.save`)),1)]),_:1},8,[`disabled`,`busy`,`busy-label`])):v(``,!0)]),default:e(()=>[C.value?(n(),g(ee,{key:0,variant:`compact`,label:m(l)(`employees.loadingTask`)},null,8,[`label`])):v(``,!0),E.value?(n(),u(`div`,Le,[c(`p`,null,f(E.value),1),t(w,{size:`sm`,disabled:S.value,onClick:B},{default:e(()=>[a(f(m(l)(`employees.task.reload`)),1)]),_:1},8,[`disabled`])])):v(``,!0),C.value?v(``,!0):(n(),u(p,{key:2},[t(k,{modelValue:O.value,"onUpdate:modelValue":s[0]||=e=>O.value=e,field:``,label:m(l)(`employees.task.project`),placeholder:m(l)(`employees.task.chooseProject`),options:te.value,disabled:!!r.item||S.value||!r.canWrite,required:``},null,8,[`modelValue`,`label`,`placeholder`,`options`,`disabled`]),c(`label`,Re,[a(f(m(l)(`employees.task.title`)),1),o(c(`input`,{"onUpdate:modelValue":s[1]||=e=>A.value=e,autofocus:``,minlength:`2`,maxlength:`180`,required:``,readonly:!r.canWrite,disabled:S.value},null,8,ze),[[h,A.value]])]),D.value?(n(),u(`p`,Be,f(m(l)(`employees.allProjects.status.${D.value.status}`)),1)):v(``,!0),c(`label`,Ve,[a(f(m(l)(`employees.task.summary`)),1),o(c(`textarea`,{"onUpdate:modelValue":s[2]||=e=>j.value=e,rows:`4`,maxlength:`2000`,readonly:!r.canWrite,disabled:S.value},null,8,He),[[h,j.value]])]),t(k,{modelValue:M.value,"onUpdate:modelValue":s[3]||=e=>M.value=e,field:``,label:m(l)(`employees.task.priority`),options:ne.value,disabled:!r.canWrite||S.value},null,8,[`modelValue`,`label`,`options`,`disabled`]),c(`label`,Ue,[a(f(m(l)(`employees.task.criteria`)),1),o(c(`textarea`,{"onUpdate:modelValue":s[4]||=e=>N.value=e,rows:`3`,readonly:!r.canWrite,disabled:S.value},null,8,We),[[h,N.value]])]),c(`label`,Ge,[a(f(m(l)(`employees.task.tags`)),1),o(c(`input`,{"onUpdate:modelValue":s[5]||=e=>P.value=e,readonly:!r.canWrite,disabled:S.value},null,8,Ke),[[h,P.value]])])],64))]),_:1},8,[`open`,`title`,`busy`]))}}),Je=[`disabled`],Ye={key:1,class:`employee-share-preview`,role:`status`},Xe={key:2,class:`employee-share-empty`},Ze={key:3,class:`ui-dialog__error employee-dialog-error`,role:`alert`},Qe={key:4,class:`employee-share-result`},Q={class:`ui-field`},$e=[`value`,`aria-label`],$=[`href`],et={key:5,class:`ui-meta`},tt={key:6,class:`employee-share-active`},nt={class:`employee-dialog-count`},rt=C(_({__name:`EmployeeShareDialog`,props:{open:{type:Boolean},projects:{}},emits:[`close`],setup(o,{emit:h}){let _=o,y=h,b=s([]),C=s({}),E=s({}),D=s(!1),O=s(!1),k=s(null),A=s(``),j=s(``),M=s(``),N=s(!1),P=0,I=d(()=>_.projects.filter(e=>C.value[e.id]?.publicShareEnabled)),L=d(()=>b.value.every(e=>E.value[e]!==void 0)?b.value.reduce((e,t)=>e+E.value[t],0):null),te=[`localhost`,`127.0.0.1`,`[::1]`].includes(window.location.hostname);i([()=>_.open,()=>JSON.stringify(_.projects.map(e=>e.id))],()=>{_.open?z():++P},{immediate:!0}),i(b,()=>{M.value=``,N.value=!1});function ne(e){return`/employee-workspaces/jefa/${encodeURIComponent(e)}/api`}async function z(e=!1){let t=++P;e||(b.value=[]),C.value={},E.value={},j.value=``,M.value=``,D.value=!0;let n=await Promise.allSettled(_.projects.map(async e=>{let t=(await x(`${ne(e.id)}/snapshot`)).snapshot.projects.find(t=>t.id===e.id);if(!t)throw Error(l(`employees.loadError`));let n=null,r=!1;if(t.publicShareEnabled&&t.publicShareSlug)try{n=(await V({id:e.id,slug:t.publicShareSlug})).items.length}catch{r=!0}return{state:t,count:n,previewFailed:r}}));if(t===P){for(let e of n)e.status===`fulfilled`&&(C.value[e.value.state.id]=e.value.state,e.value.count!==null&&(E.value[e.value.state.id]=e.value.count));n.some(e=>e.status===`rejected`||e.value.previewFailed)&&(j.value=l(`employees.share.loadFailed`)),D.value=!1}}async function H(){if(!b.value.length||O.value||D.value||L.value===0)return;O.value=!0,k.value=`generate`,A.value=``,j.value=``,M.value=``,N.value=!1;let e=P,t=b.value.filter(e=>_.projects.some(t=>t.id===e));try{let n=await Promise.allSettled(t.map(async t=>{if(!C.value[t])throw Error(l(`employees.share.loadFailed`));let n=C.value[t];if(!n.publicShareEnabled||!n.publicShareSlug){if(n=(await S(`/employee-workspaces/jefa/${encodeURIComponent(t)}/api/projects/${encodeURIComponent(t)}/sharing`,{publicShareEnabled:!0,acceptsPublicRequests:!1})).project,n.id!==t||!n.publicShareEnabled||!n.publicShareSlug)throw Error(l(`employees.loadError`));if(e!==P)throw Error(l(`employees.share.loadFailed`));C.value[t]=n}let r=(await V({id:t,slug:n.publicShareSlug})).items.length;if(e!==P)throw Error(l(`employees.share.loadFailed`));return E.value[t]=r,{id:t,slug:n.publicShareSlug}}));if(e!==P)return;if(n.some(e=>e.status===`rejected`))throw Error(l(`employees.share.partial`));if(t.every(e=>E.value[e]===0))throw Error(l(`employees.shareContent.emptySelection`));M.value=B(n.flatMap(e=>e.status===`fulfilled`?[e.value]:[]),window.location.origin)}catch(t){e===P&&(j.value=F(t))}finally{O.value=!1,k.value=null,A.value=``}}async function re(e){if(!O.value){O.value=!0,k.value=`revoke`,A.value=e,j.value=``,M.value=``,N.value=!1;try{let t=await S(`/employee-workspaces/jefa/${encodeURIComponent(e)}/api/projects/${encodeURIComponent(e)}/sharing`,{publicShareEnabled:!1,acceptsPublicRequests:!1});if(t.project.id!==e||t.project.publicShareEnabled)throw Error(l(`employees.loadError`));C.value[e]=t.project,delete E.value[e]}catch(e){j.value=F(e)}finally{O.value=!1,k.value=null,A.value=``}}}async function ie(){try{await navigator.clipboard.writeText(M.value),N.value=!0}catch{j.value=l(`employees.share.copyFailed`)}}function ae(){O.value||y(`close`)}return(i,s)=>(n(),g(T,{open:o.open,class:`employee-dialog employee-share-dialog`,title:m(l)(`employees.share.title`),description:m(l)(`employees.share.disclosure`),busy:O.value,onClose:ae},{footer:e(()=>[c(`span`,nt,f(m(l)(`employees.scope.count`,{selected:b.value.length,total:o.projects.length})),1),t(w,{variant:`primary`,disabled:!b.value.length||O.value||D.value||L.value===0,busy:k.value===`generate`,"busy-label":m(l)(`employees.share.generating`),onClick:H},{default:e(()=>[a(f(m(l)(`employees.share.generate`)),1)]),_:1},8,[`disabled`,`busy`,`busy-label`])]),default:e(()=>[D.value?(n(),g(ee,{key:0,variant:`compact`,label:m(l)(`employees.loadingShare`)},null,8,[`label`])):v(``,!0),c(`fieldset`,{disabled:O.value||D.value},[t(R,{modelValue:b.value,"onUpdate:modelValue":s[0]||=e=>b.value=e,projects:o.projects,disabled:O.value||D.value,inline:``,label:m(l)(`employees.share.projects`),hint:m(l)(`employees.share.scopeHint`)},null,8,[`modelValue`,`projects`,`disabled`,`label`,`hint`])],8,Je),b.value.length&&!D.value?(n(),u(`p`,Ye,[a(f(L.value===null?m(l)(`employees.shareContent.verifyContent`):m(l)(`employees.shareContent.publicCount`,{count:L.value}))+` `,1),t(w,{size:`sm`,variant:`ghost`,disabled:O.value||D.value,onClick:s[1]||=e=>z(!0)},{default:e(()=>[a(f(m(l)(`common.actions.refresh`)),1)]),_:1},8,[`disabled`])])):v(``,!0),b.value.length&&!D.value&&L.value===0?(n(),u(`p`,Xe,f(m(l)(`employees.shareContent.emptySelection`)),1)):v(``,!0),j.value?(n(),u(`div`,Ze,[c(`p`,null,f(j.value),1),O.value?v(``,!0):(n(),g(w,{key:0,size:`sm`,onClick:s[2]||=e=>z(!0)},{default:e(()=>[a(f(m(l)(`employees.retry`)),1)]),_:1}))])):v(``,!0),M.value?(n(),u(`div`,Qe,[c(`label`,Q,[a(f(m(l)(`employees.share.link`)),1),c(`input`,{value:M.value,readonly:``,"aria-label":m(l)(`employees.share.link`),onFocus:s[3]||=e=>e.target.select()},null,40,$e)]),c(`div`,null,[t(w,{size:`sm`,onClick:ie},{default:e(()=>[a(f(m(l)(N.value?`employees.share.copied`:`employees.share.copy`)),1)]),_:1}),c(`a`,{href:M.value,target:`_blank`,rel:`noreferrer`},f(m(l)(`employees.share.preview`)),9,$)])])):v(``,!0),m(te)?(n(),u(`p`,et,f(m(l)(`employees.share.local`)),1)):v(``,!0),I.value.length?(n(),u(`section`,tt,[c(`h3`,null,f(m(l)(`employees.share.active`)),1),(n(!0),u(p,null,r(I.value,r=>(n(),u(`div`,{key:r.id},[c(`span`,null,f(r.name),1),t(w,{size:`sm`,variant:`ghost`,disabled:O.value,busy:k.value===`revoke`&&A.value===r.id,"busy-label":m(l)(`employees.share.revoking`),onClick:e=>re(r.id)},{default:e(()=>[a(f(m(l)(`employees.share.revoke`)),1)]),_:1},8,[`disabled`,`busy`,`busy-label`,`onClick`])]))),128))])):v(``,!0)]),_:1},8,[`open`,`title`,`description`,`busy`]))}}),[[`__scopeId`,`data-v-50bf5065`]]);function it(e){return`fuli:jefa:project-filter:v1:${encodeURIComponent(e)}`}function at(e){let t=D(),n=E(),r=s(null),a=s(!1),o=s(!1),c=!1,l=``,u=!0;i([e.enabled,e.spaceId],([e,t])=>{let n=e?t:``;if(n!==l&&(u=!l||!n,l=n,r.value=null,c=!1,a.value=!1,o.value=!1,l))try{let e=localStorage.getItem(it(l));if(!e)return;let t=JSON.parse(e);t&&typeof t==`object`&&`version`in t&&t.version===1&&`projectIds`in t&&Array.isArray(t.projectIds)&&t.projectIds.every(e=>typeof e==`string`&&e.length>0&&e===e.trim())&&(r.value=[...new Set(t.projectIds)],c=!0)}catch(e){o.value=!(e instanceof SyntaxError)}},{immediate:!0,flush:`sync`});function f(){if(l)try{let e=it(l);r.value===null?localStorage.removeItem(e):localStorage.setItem(e,JSON.stringify({version:1,projectIds:r.value})),o.value=!1}catch{o.value=!0}}function p(){let e=t.query.project;return[...new Set((Array.isArray(e)?e:[e]).filter(e=>typeof e==`string`&&!!e))]}function m(){return[t.query.empty].flat().includes(`1`)}function h(e){return!e.length&&!m()||e.length===1&&[`all`,`__all__`].includes(e[0])}let g=d(()=>e.projectIds.value.filter(e=>r.value===null||r.value.includes(e)));function _(){if(!e.enabled.value||!l||!e.ready.value||!c)return;let i=g.value,a=p(),o=r.value===null||i.length>0&&i.length===e.projectIds.value.length;o&&t.query.project===`all`&&t.query.empty===void 0||r.value!==null&&!h(a)&&a.length===i.length&&a.every(e=>i.includes(e))&&(i.length>0||t.query.empty===`1`)||n.replace({query:{...t.query,project:o?`all`:i.length?i:``,empty:o||i.length?void 0:`1`}})}i([e.enabled,e.spaceId,e.ready,e.projectIds,()=>t.query.project,()=>t.query.empty],()=>{if(!(!e.enabled.value||!l||!e.ready.value)){if(!c){let t=p(),n=!u||h(t);if(a.value=!n&&t.some(t=>!e.projectIds.value.includes(t)),a.value)return;r.value=n?null:[...new Set(t)],c=!0,n||f()}_()}},{immediate:!0});let v=d({get:()=>g.value,set:t=>{if(!e.enabled.value||!l||!e.ready.value)return;let n=r.value?.filter(t=>!e.projectIds.value.includes(t))??[];r.value=[...new Set([...n,...t.filter(t=>e.projectIds.value.includes(t))])],c=!0,a.value=!1,f(),_()}});function y(){r.value=null,c=!0,a.value=!1,f(),_()}return{selection:v,reset:y,invalidScope:a,storageUnavailable:o}}var ot=[`aria-label`],st={class:`employee-workbench-toolbar`},ct={class:`employee-workbench-identity`},lt={class:`employee-workbench-mark`,"aria-hidden":`true`},ut=[`src`],dt=[`aria-label`,`title`],ft={class:`employee-workbench-actions`},pt=[`disabled`],mt={key:4,class:`employee-workbench-state`,role:`alert`},ht={key:5,class:`employee-workbench-state`},gt={key:7,class:`employee-workbench-state`},_t={key:8,class:`employee-workbench-state`},vt={key:10,class:`employee-workbench-state`},yt=[`src`,`title`],bt=`all`,xt=C(_({__name:`EmployeeWorkbenchPage`,setup(r){let o=D(),h=E(),_=y(),C=s(``),w=s(null),T=s([]),k=s([]),A=s([]),j=s([]),M=s(``),R=s(``),B=s(!1),V=s(!1),H=s(!1),re=s(!1),ie=s(!1),ae=s(!1),oe=s(null),U=d(()=>_.activePersonalSpace?.id??``),W=d(()=>String(o.params.templateId??``)),G=d(()=>N.value.find(e=>e.id===W.value)),K=d(()=>G.value?.workbench?.kind===`native`&&G.value.workbench.view===`people`),q=d(()=>W.value===`jefa`),se=d(()=>!_.state&&(_.runtimeStatus===`idle`||_.runtimeStatus===`loading`)||!V.value||B.value),ce=d(()=>_.state?P.value||!V.value?l(`employees.loading`):l(`employees.loadingBoard`):l(`common.status.loadingConsole`)),le=d(()=>!_.state&&_.runtimeStatus===`error`?_.feedback?.message||l(`employees.loadError`):``),ue=d(()=>le.value||L.value||(q.value&&Y.invalidScope.value?l(`employees.invalidScope`):R.value)),J=d(()=>G.value?.managedProjects===void 0?(G.value?.assignments??[]).filter(e=>e.status===`active`).map(e=>({value:e.personalProjectId,label:_.state?.personalProjects?.find(t=>t.project_id===e.personalProjectId)?.profile.name??e.personalProjectId})):G.value.managedProjects.map(e=>({value:e.id,label:e.name}))),de=d(()=>JSON.stringify([...new Set(J.value.map(e=>e.value))].sort()));i(U,e=>{V.value=!1,I(e)},{immediate:!0});let Y=at({enabled:q,spaceId:U,projectIds:d(()=>J.value.map(e=>e.value)),ready:d(()=>!P.value&&!L.value&&!!G.value)}),fe=d({get:()=>{if(q.value)return Y.selection.value;let e=new Set(A.value);return J.value.filter(t=>!e.has(t.value)).map(e=>e.value)},set:e=>{if(q.value){Y.selection.value=e;return}let t=new Set(J.value.map(e=>e.value)),n=new Set(e);A.value=[...A.value.filter(e=>!t.has(e)),...J.value.filter(e=>!n.has(e.value)).map(e=>e.value)]}}),pe=d(()=>{let e=new Set(fe.value);return T.value.filter(t=>e.has(t.project.id))}),me=d(()=>{let e=new Set(fe.value);return k.value.filter(t=>e.has(t)).length}),X=d(()=>G.value?.runtimeStatus===`ready`&&G.value.permissions.includes(`board.read`)&&J.value.length>0),he=d(()=>X.value?[{value:bt,label:l(`employees.allProjects.option`),meta:l(`employees.allProjects.optionMeta`,{count:J.value.length})},...J.value]:J.value),ge=0;i([W,U],()=>{A.value=[],ae.value=!1,ie.value=!1,oe.value=null}),i([he,()=>o.query.project,()=>o.query.empty,W,K],()=>{if(K.value){if(++ge,C.value=``,B.value=!1,R.value=``,o.query.project!==void 0){let{project:e,...t}=o.query;h.replace({query:t})}return}if(q.value){C.value=J.value.length?bt:``;return}let e=typeof o.query.project==`string`?o.query.project:``,t=he.value;C.value=e||(t.some(e=>e.value===C.value)?C.value:t[0]?.value??``),!e&&C.value&&h.replace({query:{...o.query,project:C.value}})},{immediate:!0}),i([W,C,U,X,V],()=>{!K.value&&V.value&&Z()},{immediate:!0}),i(P,e=>{if(!e){if(!V.value){V.value=!0;return}H.value&&(H.value=!1,Z())}},{immediate:!0}),i(Y.invalidScope,e=>{!e&&q.value&&V.value&&Z()}),i(de,(e,t)=>{e===t||!V.value||K.value||Z()});async function Z(){let e=++ge;if(w.value=null,T.value=[],k.value=[],M.value=``,R.value=``,K.value||!G.value||!C.value||!U.value){B.value=!1;return}if(q.value&&!X.value){B.value=!1;return}if(q.value&&Y.invalidScope.value){B.value=!1;return}if(P.value){H.value=!0,B.value=!0;return}H.value=!1;let t=W.value,n=C.value;B.value=!0;try{if(n===bt&&X.value){let n=await Promise.all(J.value.map(async e=>{try{let n=await b(`/api/employee-templates/${encodeURIComponent(t)}/call`,{personalSpaceId:U.value,personalProjectId:e.value,tool:`read_board`,arguments:{limit:100}}),r=Array.isArray(n.items)?n.items.filter(Se).filter(t=>t.projectId===e.value):[],i=n.truncated;if(t===`jefa`&&i)try{let t=await x(`/employee-workspaces/jefa/${encodeURIComponent(e.value)}/api/snapshot`);if(!Array.isArray(t.snapshot.workItems))throw Error(`Invalid board snapshot`);r=t.snapshot.workItems.filter(Se).filter(t=>t.projectId===e.value),i=!1}catch{}return{ok:!0,board:{...n,truncated:i,project:{id:e.value,name:e.label},items:r}}}catch(t){return{ok:!1,cause:t,projectId:e.value}}}));if(e!==ge)return;T.value=n.filter(e=>e.ok).map(e=>e.board),k.value=n.flatMap(e=>e.ok?[]:[e.projectId]),!T.value.length&&k.value.length&&(R.value=F(n.find(e=>!e.ok)?.cause));return}let r=await x(`/api/employee-templates/${encodeURIComponent(t)}/workspace?${new URLSearchParams({personalSpaceId:U.value,personalProjectId:n})}`),i=`/employee-workspaces/${encodeURIComponent(t)}/${encodeURIComponent(n)}/`;if(r.workbenchUrl!==i)throw Error(l(`employees.loadError`));e===ge&&(w.value=r)}catch(t){e===ge&&(R.value=F(t))}finally{e===ge&&(B.value=!1)}}function _e(e=null){oe.value=e,ae.value=!0}function ve(e){return`${e.projectId}:${e.id}`}function ye(e,t,n){T.value=T.value.map(r=>r.project.id===e?{...r,items:r.items.map(e=>e.id===t?n:e)}:r)}function be(){return`aggregate-board-move-${globalThis.crypto?.randomUUID?.()??`${Date.now()}-${Math.random().toString(36).slice(2)}`}`}async function xe(e,t){if(e.status===t)return;let n=ve(e);if(j.value.includes(n))return;let r=`${W.value}:${U.value}`,i={...e,status:t};M.value=``,j.value=[...j.value,n],ye(e.projectId,e.id,i);try{let n;if(W.value===`jefa`&&t===`done`)n=(await S(`/employee-workspaces/${encodeURIComponent(W.value)}/${encodeURIComponent(e.projectId)}/api/work-items/${encodeURIComponent(e.id)}/status`,{status:t})).workItem;else{if(!e.updatedAt)throw Error(l(`employees.allProjects.refreshRequired`));n=(await b(`/api/employee-templates/${encodeURIComponent(W.value)}/call`,{personalSpaceId:U.value,personalProjectId:e.projectId,tool:`update_tasks`,arguments:{requestId:be(),updates:[{id:e.id,expectedUpdatedAt:e.updatedAt,status:t}]}})).updatedWorkItems?.find(t=>t.id===e.id)}if(`${W.value}:${U.value}`!==r)return;if(!n||!Se(n)||n.projectId!==e.projectId||n.id!==e.id||!n.updatedAt)throw Error(l(`employees.allProjects.refreshRequired`));ye(e.projectId,e.id,n)}catch(t){if(`${W.value}:${U.value}`!==r)return;ye(e.projectId,e.id,e),M.value=l(`employees.allProjects.moveFailed`,{error:F(t)})}finally{j.value=j.value.filter(e=>e!==n)}}function Se(e){if(!e||typeof e!=`object`)return!1;let t=e;return typeof t.id==`string`&&typeof t.projectId==`string`&&typeof t.title==`string`&&[`planned`,`active`,`blocked`,`review`,`done`].includes(t.status??``)}async function Ce(){if(!_.state){await _.refresh();return}await I(U.value),L.value||await Z()}async function we(){if(q.value){await h.replace({query:{...o.query,project:bt,empty:void 0}}),await Z();return}let e=C.value===bt&&X.value?bt:J.value.find(e=>e.value===C.value)?.value??he.value[0]?.value;await h.replace({query:e?{project:e}:{}}),await Z()}return(r,i)=>(n(),u(`section`,{class:`employee-workbench-view`,"aria-label":G.value?.name??m(l)(`employees.workbench`)},[c(`header`,st,[c(`div`,ct,[c(`span`,lt,[m(te)(W.value)?(n(),u(`img`,{key:0,src:m(te)(W.value),alt:``},null,8,ut)):(n(),u(p,{key:1},[a(f(G.value?.name.slice(0,1)??`A`),1)],64))]),c(`h1`,null,[a(f(G.value?.name??m(l)(`employees.workbench`))+` `,1),c(`span`,null,f(G.value?.role),1)]),q.value&&X.value?(n(),u(`button`,{key:0,class:`employee-share-button`,type:`button`,"aria-label":m(l)(`employees.share.title`),title:m(l)(`employees.share.title`),onClick:i[0]||=e=>ie.value=!0},[...i[8]||=[c(`svg`,{width:`19`,height:`19`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.7`,"stroke-linecap":`round`,"stroke-linejoin":`round`,"aria-hidden":`true`},[c(`path`,{d:`M14 3h7v7m0-7-9 9M10 5H5a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-5`}),c(`path`,{d:`M7 16v-3m4 3v-1`})],-1)]],8,dt)):v(``,!0)]),c(`div`,ft,[G.value&&!K.value?(n(),u(`button`,{key:0,class:`employee-manage-projects`,type:`button`,disabled:!U.value,onClick:i[1]||=e=>re.value=!0},[i[9]||=c(`svg`,{width:`16`,height:`16`,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,"stroke-width":`1.6`,"stroke-linecap":`round`,"aria-hidden":`true`},[c(`path`,{d:`M4 7h9m4 0h3M4 17h3m4 0h9`}),c(`circle`,{cx:`15`,cy:`7`,r:`2`}),c(`circle`,{cx:`9`,cy:`17`,r:`2`})],-1),a(` `+f(m(l)(`employees.manageProjects`)),1)],8,pt)):v(``,!0)])]),K.value?v(``,!0):(n(),g(ne,{key:0,open:re.value,"personal-space-id":U.value,projects:m(_).state?.personalProjects??[],"template-id":W.value,onClose:i[2]||=e=>re.value=!1,onRecruited:we},null,8,[`open`,`personal-space-id`,`projects`,`template-id`])),q.value?(n(),g(qe,{key:1,open:ae.value,item:oe.value,projects:J.value.map(e=>({id:e.value,name:e.label})),"default-project-id":fe.value.length===1?fe.value[0]:void 0,"personal-space-id":U.value,"can-write":G.value?.permissions.includes(`board.write`)??!1,onClose:i[3]||=e=>ae.value=!1,onSaved:Z},null,8,[`open`,`item`,`projects`,`default-project-id`,`personal-space-id`,`can-write`])):v(``,!0),q.value?(n(),g(rt,{key:2,open:ie.value,projects:J.value.map(e=>({id:e.value,name:e.label})),onClose:i[4]||=e=>ie.value=!1},null,8,[`open`,`projects`])):v(``,!0),se.value?(n(),g(ee,{key:3,label:ce.value},null,8,[`label`])):ue.value?(n(),u(`div`,mt,[c(`p`,null,f(ue.value),1),c(`button`,{class:`quiet-button`,type:`button`,onClick:Ce},f(m(l)(`employees.retry`)),1)])):G.value?K.value?(n(),g(Ie,{key:6,"personal-space-id":U.value,projects:m(_).state?.personalProjects??[]},null,8,[`personal-space-id`,`projects`])):q.value&&G.value.runtimeStatus!==`ready`?(n(),u(`div`,gt,[c(`p`,null,f(m(l)(`employees.installRequired`)),1),c(`small`,null,f(m(l)(`employees.installHelp`)),1)])):C.value?C.value===bt&&X.value?(n(),g(z,{key:9,"visible-project-ids":fe.value,"onUpdate:visibleProjectIds":i[6]||=e=>fe.value=e,boards:pe.value,projects:J.value.map(e=>({id:e.value,name:e.label})),"failed-projects":me.value,"can-move-tasks":G.value.permissions.includes(`board.write`),"moving-item-keys":j.value,"action-error":M.value,"resettable-filter":q.value,"filter-storage-unavailable":m(Y).storageUnavailable.value,onResetProjectFilter:m(Y).reset,onMoveTask:xe,onSelectTask:_e,onCreateTask:i[7]||=e=>_e(),onRetry:Z},null,8,[`visible-project-ids`,`boards`,`projects`,`failed-projects`,`can-move-tasks`,`moving-item-keys`,`action-error`,`resettable-filter`,`filter-storage-unavailable`,`onResetProjectFilter`])):w.value&&w.value.runtimeStatus!==`ready`?(n(),u(`div`,vt,[c(`p`,null,f(m(l)(`employees.installRequired`)),1),c(`small`,null,f(m(l)(`employees.installHelp`)),1)])):w.value?(n(),u(`iframe`,{key:w.value.workbenchUrl,src:w.value.workbenchUrl,title:`${w.value.name} · ${w.value.project.name}`,class:`employee-workbench-frame`},null,8,yt)):v(``,!0):(n(),u(`div`,_t,[c(`h2`,null,f(m(l)(`employees.emptyWorkbench`)),1),c(`p`,null,f(m(l)(`employees.manageHint`)),1),c(`button`,{class:`quiet-button`,type:`button`,onClick:i[5]||=e=>re.value=!0},f(m(l)(`employees.manageProjects`)),1)])):(n(),u(`div`,ht,[c(`p`,null,f(m(l)(`employees.unavailable`)),1),t(m(O),{to:`/project-agents`},{default:e(()=>[a(f(m(l)(`employees.backToAgents`)),1)]),_:1})]))],8,ot))}}),[[`__scopeId`,`data-v-424ede82`]]);export{xt as default};
@@ -1 +0,0 @@
1
- import{A as e,B as t,C as n,J as r,M as i,R as a,S as o,V as s,X as c,Y as l,_ as u,a as d,b as f,c as p,g as m,it as h,m as g,p as _,tt as v,u as y,v as b,w as x,y as S}from"./i18n-b14l2pQA.js";import{t as C}from"./console-CqzwSo7a.js";import{i as w,r as T}from"./client-DLS5FZBI.js";import{t as E}from"./_plugin-vue_export-helper-BDNMzG2s.js";import{n as D,t as O}from"./UiDialog-Q7fsJUoO.js";import{t as k}from"./UiSelect-DcGpPQQo.js";import{r as A,t as j}from"./identity-BWbPmZZf.js";import{E as M,T as N}from"./model-DupZy8Qb.js";var P=`testLoading`;function F(e=typeof window>`u`?``:window.location.search){return new URLSearchParams(e).get(P)===`1`}function I(t,n=180){let r=c(!1),i=Math.max(0,n),o=F()?0:120,s=0,u=null,d=null,f=0,p=!1;function m(){f+=1,u!==null&&(clearTimeout(u),u=null),d!==null&&(clearTimeout(d),d=null)}function h(){if(o===0){if(p||!t.value||r.value)return;s=Date.now(),r.value=!0;return}let e=f;u=setTimeout(()=>{e===f&&(u=null,!(p||!t.value||r.value)&&(s=Date.now(),r.value=!0))},o)}function g(){let e=Math.max(0,i-(Date.now()-s));if(e===0){r.value=!1,s=0;return}let n=f;d=setTimeout(()=>{n===f&&(d=null,!(p||t.value)&&(r.value=!1,s=0))},e)}return a(t,e=>{if(m(),e){r.value||h();return}r.value&&g()},{immediate:!0,flush:`sync`}),e(()=>{p=!0,m()}),l(r)}var L={class:`knowledge-confirm-summary`},R={class:`ui-meta`},z={class:`ui-meta`},B={class:`ui-field`},V={class:`ui-field`},H={class:`ui-field`},U={class:`ui-check`},W=E(x({__name:`KnowledgeConfirmDialog`,props:{item:{},personalSpaceId:{},personalProjectId:{}},emits:[`close`,`saved`],setup(e,{emit:r}){let l=e,f=r,g=C(),_=c(``),x=c(``),w=c(``),E=c(!1),k=c(!1),A=c(``),j=c({kind:`import`,label:d(`knowledge.domain.actors.historicalRecord`)}),P=m(()=>l.item?.profileAspect?d(`knowledge.dialogs.confirm.preferenceSubject`):d(`knowledge.dialogs.confirm.knowledgeSubject`));a(()=>l.item,e=>{if(!e)return;let t=e.evidence.at(0),n=e.confirmationBasis;_.value=n?.existence_reason||t?.source_description||t?.summary||d(`knowledge.dialogs.confirm.sourceSupport`),x.value=n?.quadrant_reason||e.reasoningSummary||d(`knowledge.dialogs.confirm.quadrantReason`,{quadrant:M(e.originQuadrant),description:N(e.originQuadrant)}),j.value=n?.proposed_by??I(t),w.value=d(`knowledge.dialogs.confirm.confirmationReason`),E.value=!1,A.value=``},{immediate:!0});async function F(){let e=l.item;if(!(!e||k.value)){if(!e.classificationExplicit)return W(d(`knowledge.dialogs.confirm.errors.quadrantRequired`));if(!_.value.trim())return W(d(`knowledge.dialogs.confirm.errors.existenceRequired`));if(!x.value.trim())return W(d(`knowledge.dialogs.confirm.errors.quadrantReasonRequired`));if(!w.value.trim())return W(d(`knowledge.dialogs.confirm.errors.confirmationReasonRequired`));if(!E.value)return W(d(`knowledge.dialogs.confirm.errors.acknowledgmentRequired`));k.value=!0,A.value=``;try{await T(`/api/knowledge/${e.itemKind}/${encodeURIComponent(e.id)}`,{personalSpaceId:l.personalSpaceId,personalProjectId:l.personalProjectId,action:`confirm`,reason:w.value.trim(),confirmationStatus:`confirmed`,confirmationBasis:{existenceReason:_.value.trim(),quadrantReason:x.value.trim(),proposedBy:j.value,confirmedBy:{kind:`user`,label:d(`knowledge.domain.actors.currentUser`)},confirmedAt:new Date().toISOString()}}),g.notify(d(`knowledge.dialogs.confirm.confirmed`,{subject:P.value})),f(`saved`),f(`close`)}catch(e){A.value=e instanceof Error?e.message:d(`knowledge.dialogs.confirm.errors.failed`),g.reportError(e)}finally{k.value=!1}}}function I(e){let t={codex:`Codex`,claude:`Claude`,claude_code:`Claude Code`,cursor:`Cursor`,kiro:`Kiro`,other:d(`knowledge.domain.actors.otherAgent`)}[e?.source_application??``];return t?{kind:`agent`,label:t}:{kind:`import`,label:d(`knowledge.domain.actors.historicalRecord`)}}function W(e){A.value=e}return(r,a)=>e.item?(i(),b(O,{key:0,open:``,class:`knowledge-confirm-dialog`,size:`lg`,form:``,title:v(d)(`knowledge.dialogs.confirm.title`,{subject:P.value}),description:v(d)(`knowledge.dialogs.confirm.intro`),busy:k.value,error:A.value,onClose:a[5]||=e=>f(`close`),onSubmit:F},{footer:t(()=>[n(D,{variant:`ghost`,disabled:k.value,onClick:a[4]||=e=>f(`close`)},{default:t(()=>[o(h(v(d)(`common.actions.cancel`)),1)]),_:1},8,[`disabled`]),n(D,{variant:`primary`,type:`submit`,disabled:!E.value,busy:k.value,"busy-label":v(d)(`knowledge.dialogs.confirm.confirming`,{subject:P.value})},{default:t(()=>[o(h(v(d)(`knowledge.dialogs.confirm.confirmSubject`,{subject:P.value})),1)]),_:1},8,[`disabled`,`busy`,`busy-label`])]),default:t(()=>[u(`section`,L,[u(`span`,R,h(e.item.profileAspect?v(d)(`knowledge.dialogs.confirm.preference`):v(d)(`knowledge.dialogs.confirm.knowledge`)),1),u(`strong`,null,h(e.item.title),1),u(`p`,null,h(e.item.body),1),u(`small`,z,h(v(d)(`knowledge.dialogs.confirm.quadrant`,{quadrant:v(M)(e.item.originQuadrant)})),1)]),u(`label`,B,[o(h(v(d)(`knowledge.dialogs.confirm.whyExists`))+` `,1),s(u(`textarea`,{"onUpdate:modelValue":a[0]||=e=>_.value=e,name:`confirmation-existence-reason`,maxlength:`4096`,rows:`3`,required:``},null,512),[[y,_.value]])]),u(`label`,V,[o(h(v(d)(`knowledge.dialogs.confirm.whyQuadrant`))+` `,1),s(u(`textarea`,{"onUpdate:modelValue":a[1]||=e=>x.value=e,name:`confirmation-quadrant-reason`,maxlength:`4096`,rows:`3`,required:``},null,512),[[y,x.value]])]),u(`label`,H,[o(h(v(d)(`knowledge.dialogs.confirm.confirmationCopy`))+` `,1),s(u(`textarea`,{"onUpdate:modelValue":a[2]||=e=>w.value=e,name:`confirmation-reason`,maxlength:`2000`,rows:`2`,required:``},null,512),[[y,w.value]])]),u(`label`,U,[s(u(`input`,{"onUpdate:modelValue":a[3]||=e=>E.value=e,name:`confirmation-acknowledged`,type:`checkbox`},null,512),[[p,E.value]]),u(`span`,null,h(v(d)(`knowledge.dialogs.confirm.acknowledgment`)),1)])]),_:1},8,[`title`,`description`,`busy`,`error`])):S(``,!0)}}),[[`__scopeId`,`data-v-be145646`]]),ee={class:`knowledge-edit-columns`},te=[`disabled`],ne={key:0,class:`ui-field`},re={key:1,class:`ui-field`},ie={key:2,class:`ui-field`},ae={class:`knowledge-field-row`},oe={class:`ui-meta`},se={key:3,class:`knowledge-warning`},ce={class:`knowledge-editor-section`},le={class:`ui-field`},ue={class:`ui-field`},de={class:`knowledge-field-row knowledge-field-row--pair`},fe={class:`ui-field`},pe=[`placeholder`],me={class:`ui-field`},he=[`placeholder`],ge={class:`ui-meta`},_e={key:4,class:`knowledge-editor-section`},ve={class:`ui-meta`},ye={class:`knowledge-editor-section`},be={class:`ui-meta`},xe={class:`ui-field`},Se={class:`knowledge-editor-actions`},Ce={key:0},we={class:`ui-meta`},Te=[`disabled`],Ee={class:`ui-field`},De={class:`knowledge-editor-actions`},Oe={key:1},ke={class:`ui-meta`},Ae=[`disabled`],je={class:`ui-field`},Me={class:`knowledge-editor-actions`},G=E(x({__name:`KnowledgeEditDialog`,props:{item:{},personalSpaceId:{},personalProjectId:{},projects:{},replacementItems:{default:()=>[]}},emits:[`close`,`saved`],setup(e,{emit:l}){let p=e,x=l,E=C(),N=c(!1),P=c(null),F=c(``),I=c(``),L=c(``),R=c(`global`),z=c(``),B=c(``),V=c(``),H=c(``),U=r({name:``,summary:``,fact:``,currentQuadrant:``,confirmationStatus:`pending`,existenceReason:``,quadrantReason:``,proposedByKind:`agent`,proposedByLabel:``,confirmedByKind:`user`,confirmedByLabel:``,profileAspect:`none`,inheritanceMode:`local_only`,reason:``}),W=m(()=>p.item?.itemKind===`relationship`),G=m(()=>!!p.item?.invalidAt),K=m(()=>!!p.item?.raw.profile_aspect),q=m(()=>p.projects.map(e=>({value:e.project_id,label:e.profile.name,meta:`#${j(e.project_id,26)}`,search:A(e.project_id)}))),Ne=m(()=>[`known_known`,`known_unknown`,`unknown_known`,`unknown_unknown`].map(e=>({value:e,label:d(`knowledge.dialogs.edit.quadrants.${e}`)}))),Pe=m(()=>[{value:`pending`,label:d(`knowledge.dialogs.edit.confirmationStates.pending`)},{value:`confirmed`,label:d(`knowledge.dialogs.edit.confirmationStates.confirmed`)}]),Fe=m(()=>[{value:`local_only`,label:d(`knowledge.dialogs.edit.inheritance.local`)},{value:`descendants`,label:d(`knowledge.dialogs.edit.inheritance.descendants`)},{value:`selected_projects`,label:d(`knowledge.dialogs.edit.inheritance.selected`)}]),Ie=m(()=>[`user`,`agent`,`authoritative_source`,`import`].map(e=>({value:e,label:d(`knowledge.domain.actors.${e}`)}))),Le=m(()=>[`user`,`authoritative_source`].map(e=>({value:e,label:d(`knowledge.domain.actors.${e}`)}))),Re=m(()=>[{value:`none`,label:d(`knowledge.dialogs.edit.profiles.none`)},...[`taste`,`personality`,`judgment_preference`].map(e=>({value:e,label:d(`knowledge.domain.profiles.${e}`)}))]),ze=m(()=>[{value:`global`,label:d(`knowledge.dialogs.edit.scopes.global`)},{value:`project`,label:d(`knowledge.dialogs.edit.scopes.project`),disabled:p.projects.length===0}]),Be=m(()=>[{value:``,label:d(`knowledge.dialogs.edit.replacementNone`)},...p.replacementItems.filter(e=>!e.invalidAt&&(e.itemKind!==p.item?.itemKind||e.id!==p.item?.id)).map(e=>({value:Ge(e.itemKind,e.id),label:e.title,meta:e.type,search:`${e.body} ${e.id}`}))]),J=m(()=>{if(!H.value)return null;try{let[e,t]=JSON.parse(H.value);return e!==`entity`&&e!==`relationship`||typeof t!=`string`?null:{itemKind:e,id:t}}catch{return null}}),Y=m(()=>p.item?.assignments.at(0)?.project_id??p.item?.evidence.find(({personal_project_id:e})=>e)?.personal_project_id??p.personalProjectId??null);a(()=>p.item,e=>{if(!e)return;let t=e.raw;U.name=e.itemKind===`entity`?t.name:``,U.summary=e.itemKind===`entity`?t.summary??``:``,U.fact=e.itemKind===`relationship`?t.fact??``:``;let n=e.confirmationBasis,r=e.evidence.at(0);U.currentQuadrant=e.classificationExplicit?t.current_quadrant??t.origin_quadrant??`known_known`:``,U.confirmationStatus=e.confirmationStatus===`confirmed`?`confirmed`:`pending`,U.existenceReason=n?.existence_reason??r?.source_description??r?.summary??``,U.quadrantReason=n?.quadrant_reason??t.reasoning_summary??``,U.proposedByKind=n?.proposed_by.kind??`agent`,U.proposedByLabel=n?.proposed_by.label??``,U.confirmedByKind=n?.confirmed_by?.kind??`user`,U.confirmedByLabel=n?.confirmed_by?.label??``,U.profileAspect=t.profile_aspect??`none`,U.inheritanceMode=t.profile_aspect?`local_only`:t.inheritance_mode??`local_only`,V.value=t.inherited_project_ids?.at(0)??p.projects[0]?.project_id??``,U.reason=``,I.value=``,L.value=Y.value??p.projects[0]?.project_id??``,R.value=t.preference_scope??`global`,z.value=t.preference_project_id??p.projects[0]?.project_id??``,B.value=``,H.value=e.replacedByItemId&&e.replacedByItemKind?Ge(e.replacedByItemKind,e.replacedByItemId):``,F.value=``},{immediate:!0});async function Ve(){let e=p.item;if(!e)return;if(!U.reason.trim())return $(d(`knowledge.dialogs.edit.errors.reasonRequired`));if(!W.value&&!U.name.trim())return $(d(`knowledge.dialogs.edit.errors.nameRequired`));if(W.value&&!U.fact.trim())return $(d(`knowledge.dialogs.edit.errors.factRequired`));if(!U.currentQuadrant||!U.confirmationStatus)return $(d(`knowledge.dialogs.edit.errors.classificationRequired`));if(!U.existenceReason.trim())return $(d(`knowledge.dialogs.edit.errors.existenceRequired`));if(!U.quadrantReason.trim())return $(d(`knowledge.dialogs.edit.errors.quadrantRequired`));if(!U.proposedByKind)return $(d(`knowledge.dialogs.edit.errors.proposerRequired`));if(U.confirmationStatus===`confirmed`&&!U.confirmedByKind)return $(d(`knowledge.dialogs.edit.errors.confirmerRequired`));if(U.inheritanceMode===`selected_projects`&&!V.value)return $(d(`knowledge.dialogs.edit.errors.inheritedProjectsRequired`));let t={...Z(`update`),confirmationStatus:U.confirmationStatus,confirmationBasis:{existenceReason:U.existenceReason.trim(),quadrantReason:U.quadrantReason.trim(),proposedBy:{kind:U.proposedByKind,label:U.proposedByLabel.trim()||null},confirmedBy:U.confirmationStatus===`confirmed`?{kind:U.confirmedByKind,label:U.confirmedByLabel.trim()||null}:null,confirmedAt:U.confirmationStatus===`confirmed`?new Date().toISOString():null},profileAspect:U.profileAspect,inheritanceMode:U.profileAspect===`none`?U.inheritanceMode:`local_only`,inheritedProjectIds:U.profileAspect===`none`&&U.inheritanceMode===`selected_projects`?[V.value]:[],reasoningSummary:U.quadrantReason.trim()};p.item.classificationExplicit?t.currentQuadrant=U.currentQuadrant:t.originQuadrant=U.currentQuadrant,W.value?t.fact=U.fact.trim():(t.name=U.name.trim(),t.summary=U.summary.trim()),await Q(`correction`,async()=>{await T(`/api/knowledge/${e.itemKind}/${encodeURIComponent(e.id)}`,t),E.notify(d(`knowledge.dialogs.edit.notices.corrected`))})}async function X(e){let t=p.item;if(t){if(!U.reason.trim())return $(d(e===`invalidate`?`knowledge.dialogs.edit.errors.statusReasonRequired`:`knowledge.dialogs.edit.errors.restoreReasonRequired`));await Q(e===`invalidate`?`invalidate`:`restore`,async()=>{let n=Z(e);e===`invalidate`&&J.value&&(n.replacementItemId=J.value.id,n.replacementItemKind=J.value.itemKind),await T(`/api/knowledge/${t.itemKind}/${encodeURIComponent(t.id)}`,n),E.notify(e===`invalidate`?J.value?d(`knowledge.dialogs.edit.notices.invalidatedWithReplacement`):d(`knowledge.dialogs.edit.notices.invalidated`):d(`knowledge.dialogs.edit.notices.restored`))})}}async function He(){let e=p.item,t=J.value;if(!(!e||!G.value)){if(!t)return $(d(`knowledge.dialogs.edit.errors.replacementRequired`));if(!U.reason.trim())return $(d(`knowledge.dialogs.edit.errors.replacementReasonRequired`));await Q(`replacement`,async()=>{await T(`/api/knowledge/${e.itemKind}/${encodeURIComponent(e.id)}`,{...Z(`link_replacement`),replacementItemId:t.id,replacementItemKind:t.itemKind}),E.notify(d(`knowledge.dialogs.edit.notices.replacementSaved`))})}}async function Ue(){let e=p.item;if(e){if(!L.value)return $(d(`knowledge.dialogs.edit.errors.projectRequired`));if(!I.value.trim())return $(d(`knowledge.dialogs.edit.errors.assignmentReasonRequired`));if(L.value===Y.value)return $(d(`knowledge.dialogs.edit.errors.alreadyAssigned`));await Q(`ownership`,async()=>{await w(`/api/knowledge/${e.itemKind}/${encodeURIComponent(e.id)}/assignment`,{personalSpaceId:p.personalSpaceId,targetProjectId:L.value,reason:I.value.trim()}),E.notify(d(`knowledge.dialogs.edit.notices.assignmentChanged`))})}}async function We(){let e=p.item;if(!e)return;let t=R.value===`project`?z.value:null;if(R.value===`project`&&!t)return $(d(`knowledge.dialogs.edit.errors.preferenceProjectRequired`));if(!B.value.trim())return $(d(`knowledge.dialogs.edit.errors.preferenceReasonRequired`));await Q(`scope`,async()=>{await w(`/api/knowledge/${e.itemKind}/${encodeURIComponent(e.id)}/preference-scope`,{personalSpaceId:p.personalSpaceId,scope:R.value,projectId:t,reason:B.value.trim()}),E.notify(R.value===`global`?d(`knowledge.dialogs.edit.notices.preferenceGlobal`):d(`knowledge.dialogs.edit.notices.preferenceProject`))})}function Z(e){return{personalSpaceId:p.personalSpaceId,personalProjectId:p.personalProjectId,action:e,reason:U.reason.trim()}}function Ge(e,t){return JSON.stringify([e,t])}async function Q(e,t){if(!N.value){N.value=!0,P.value=e,F.value=``;try{await t(),x(`close`),x(`saved`)}catch(e){F.value=e instanceof Error?e.message:d(`knowledge.dialogs.edit.errors.saveFailed`),E.reportError(e)}finally{N.value=!1,P.value=null}}}function $(e){F.value=e}return(r,a)=>e.item?(i(),b(O,{key:0,open:``,class:`knowledge-edit-dialog`,size:`xl`,busy:N.value,error:F.value,title:G.value?v(d)(`knowledge.dialogs.edit.titleRestore`):v(d)(`knowledge.dialogs.edit.titleCorrect`),description:v(d)(`knowledge.dialogs.edit.intro`),onClose:a[23]||=e=>x(`close`)},{default:t(()=>[u(`div`,ee,[u(`section`,null,[u(`h3`,null,h(v(d)(`knowledge.dialogs.edit.currentContent`)),1),u(`form`,{class:`knowledge-editor-form`,onSubmit:_(Ve,[`prevent`])},[u(`fieldset`,{class:`knowledge-editor-group`,disabled:N.value},[W.value?S(``,!0):(i(),f(`label`,ne,[o(h(v(d)(`knowledge.dialogs.edit.name`)),1),s(u(`input`,{"onUpdate:modelValue":a[0]||=e=>U.name=e,maxlength:`512`},null,512),[[y,U.name]])])),W.value?(i(),f(`label`,ie,[o(h(v(d)(`knowledge.dialogs.edit.fact`)),1),s(u(`textarea`,{"onUpdate:modelValue":a[2]||=e=>U.fact=e,maxlength:`8192`,rows:`5`},null,512),[[y,U.fact]])])):(i(),f(`label`,re,[o(h(v(d)(`knowledge.dialogs.edit.description`)),1),s(u(`textarea`,{"onUpdate:modelValue":a[1]||=e=>U.summary=e,maxlength:`4096`,rows:`5`},null,512),[[y,U.summary]])])),u(`div`,ae,[n(k,{modelValue:U.currentQuadrant,"onUpdate:modelValue":a[3]||=e=>U.currentQuadrant=e,field:``,options:Ne.value,label:v(d)(`knowledge.dialogs.edit.classification`)},null,8,[`modelValue`,`options`,`label`]),n(k,{modelValue:U.confirmationStatus,"onUpdate:modelValue":a[4]||=e=>U.confirmationStatus=e,field:``,options:Pe.value,label:v(d)(`knowledge.dialogs.edit.confirmationStatus`)},null,8,[`modelValue`,`options`,`label`]),n(k,{modelValue:U.profileAspect,"onUpdate:modelValue":a[5]||=e=>U.profileAspect=e,field:``,options:Re.value,label:v(d)(`knowledge.dialogs.edit.preferenceDimension`)},null,8,[`modelValue`,`options`,`label`])]),u(`p`,oe,h(v(d)(`knowledge.dialogs.edit.originQuadrant`,{quadrant:v(M)(e.item.originQuadrant)})),1),e.item.classificationExplicit?S(``,!0):(i(),f(`p`,se,h(v(d)(`knowledge.dialogs.edit.missingQuadrant`)),1)),u(`fieldset`,ce,[u(`legend`,null,h(v(d)(`knowledge.dialogs.edit.basis`)),1),u(`label`,le,[o(h(v(d)(`knowledge.dialogs.edit.whyExists`)),1),s(u(`textarea`,{"onUpdate:modelValue":a[6]||=e=>U.existenceReason=e,maxlength:`4096`,rows:`3`,required:``},null,512),[[y,U.existenceReason]])]),u(`label`,ue,[o(h(v(d)(`knowledge.dialogs.edit.whyQuadrant`)),1),s(u(`textarea`,{"onUpdate:modelValue":a[7]||=e=>U.quadrantReason=e,maxlength:`4096`,rows:`3`,required:``},null,512),[[y,U.quadrantReason]])]),u(`div`,de,[n(k,{modelValue:U.proposedByKind,"onUpdate:modelValue":a[8]||=e=>U.proposedByKind=e,field:``,options:Ie.value,label:v(d)(`knowledge.dialogs.edit.proposer`)},null,8,[`modelValue`,`options`,`label`]),u(`label`,fe,[o(h(v(d)(`knowledge.dialogs.edit.proposerDescription`)),1),s(u(`input`,{"onUpdate:modelValue":a[9]||=e=>U.proposedByLabel=e,maxlength:`160`,placeholder:v(d)(`knowledge.dialogs.edit.proposerPlaceholder`)},null,8,pe),[[y,U.proposedByLabel]])]),U.confirmationStatus===`confirmed`?(i(),f(g,{key:0},[n(k,{modelValue:U.confirmedByKind,"onUpdate:modelValue":a[10]||=e=>U.confirmedByKind=e,field:``,options:Le.value,label:v(d)(`knowledge.dialogs.edit.confirmer`)},null,8,[`modelValue`,`options`,`label`]),u(`label`,me,[o(h(v(d)(`knowledge.dialogs.edit.confirmerDescription`)),1),s(u(`input`,{"onUpdate:modelValue":a[11]||=e=>U.confirmedByLabel=e,maxlength:`160`,placeholder:v(d)(`knowledge.dialogs.edit.confirmerPlaceholder`)},null,8,he),[[y,U.confirmedByLabel]])])],64)):S(``,!0)]),u(`p`,ge,h(v(d)(`knowledge.dialogs.edit.agentConfirmedBoundary`)),1)]),K.value?S(``,!0):(i(),f(`fieldset`,_e,[u(`legend`,null,h(v(d)(`knowledge.dialogs.edit.crossProjectInheritance`)),1),n(k,{modelValue:U.inheritanceMode,"onUpdate:modelValue":a[12]||=e=>U.inheritanceMode=e,field:``,options:Fe.value,label:v(d)(`knowledge.dialogs.edit.inheritanceScope`)},null,8,[`modelValue`,`options`,`label`]),U.inheritanceMode===`selected_projects`?(i(),b(k,{key:0,modelValue:V.value,"onUpdate:modelValue":a[13]||=e=>V.value=e,field:``,options:q.value,label:v(d)(`knowledge.dialogs.edit.inheritedProjects`),searchable:``},null,8,[`modelValue`,`options`,`label`])):S(``,!0),u(`p`,ve,h(v(d)(`knowledge.dialogs.edit.inheritanceBoundary`)),1)])),u(`fieldset`,ye,[u(`legend`,null,h(G.value?v(d)(`knowledge.dialogs.edit.replacement`):v(d)(`knowledge.dialogs.edit.optionalReplacement`)),1),n(k,{modelValue:H.value,"onUpdate:modelValue":a[14]||=e=>H.value=e,field:``,options:Be.value,searchable:``,label:G.value?v(d)(`knowledge.dialogs.edit.historicalReplacement`):v(d)(`knowledge.dialogs.edit.activeReplacement`)},null,8,[`modelValue`,`options`,`label`]),u(`p`,be,h(v(d)(`knowledge.dialogs.edit.replacementBoundary`)),1)]),u(`label`,xe,[o(h(v(d)(`knowledge.dialogs.edit.correctionReason`)),1),s(u(`textarea`,{"onUpdate:modelValue":a[15]||=e=>U.reason=e,maxlength:`2000`,rows:`3`,required:``},null,512),[[y,U.reason]])]),u(`div`,Se,[G.value?(i(),f(g,{key:1},[n(D,{busy:P.value===`restore`,"busy-label":v(d)(`knowledge.dialogs.edit.restoring`),onClick:a[17]||=e=>X(`restore`)},{default:t(()=>[o(h(v(d)(`knowledge.dialogs.edit.restore`)),1)]),_:1},8,[`busy`,`busy-label`]),n(D,{busy:P.value===`replacement`,"busy-label":v(d)(`knowledge.dialogs.edit.savingReplacement`),onClick:He},{default:t(()=>[o(h(v(d)(`knowledge.dialogs.edit.saveReplacement`)),1)]),_:1},8,[`busy`,`busy-label`])],64)):(i(),b(D,{key:0,variant:`danger`,busy:P.value===`invalidate`,"busy-label":v(d)(`knowledge.dialogs.edit.invalidating`),onClick:a[16]||=e=>X(`invalidate`)},{default:t(()=>[o(h(v(d)(`knowledge.dialogs.edit.invalidate`)),1)]),_:1},8,[`busy`,`busy-label`])),n(D,{variant:`primary`,type:`submit`,busy:P.value===`correction`,"busy-label":v(d)(U.confirmationStatus===`confirmed`?`knowledge.dialogs.edit.savingConfirmed`:`knowledge.dialogs.edit.savingPending`)},{default:t(()=>[o(h(U.confirmationStatus===`confirmed`?v(d)(`knowledge.dialogs.edit.saveConfirmed`):v(d)(`knowledge.dialogs.edit.savePending`)),1)]),_:1},8,[`busy`,`busy-label`])])],8,te)],32)]),K.value?(i(),f(`section`,Oe,[u(`h3`,null,h(v(d)(`knowledge.dialogs.edit.preferenceScope`)),1),u(`p`,ke,h(v(d)(`knowledge.dialogs.edit.preferenceScopeCopy`)),1),u(`form`,{class:`knowledge-editor-form`,onSubmit:_(We,[`prevent`])},[u(`fieldset`,{class:`knowledge-editor-group`,disabled:N.value},[n(k,{modelValue:R.value,"onUpdate:modelValue":a[20]||=e=>R.value=e,field:``,options:ze.value,label:v(d)(`knowledge.dialogs.edit.effectiveScope`)},null,8,[`modelValue`,`options`,`label`]),R.value===`project`?(i(),b(k,{key:0,modelValue:z.value,"onUpdate:modelValue":a[21]||=e=>z.value=e,field:``,options:q.value,label:v(d)(`knowledge.dialogs.edit.personalProject`),searchable:``},null,8,[`modelValue`,`options`,`label`])):S(``,!0),u(`label`,je,[o(h(v(d)(`knowledge.dialogs.edit.assignmentReason`)),1),s(u(`textarea`,{"onUpdate:modelValue":a[22]||=e=>B.value=e,maxlength:`2000`,rows:`3`,required:``},null,512),[[y,B.value]])]),u(`div`,Me,[n(D,{variant:`primary`,type:`submit`,busy:P.value===`scope`,"busy-label":v(d)(`knowledge.dialogs.edit.savingScope`)},{default:t(()=>[o(h(v(d)(`knowledge.dialogs.edit.saveScope`)),1)]),_:1},8,[`busy`,`busy-label`])])],8,Ae)],32)])):(i(),f(`section`,Ce,[u(`h3`,null,h(v(d)(`knowledge.dialogs.edit.projectOwnership`)),1),u(`p`,we,h(v(d)(`knowledge.dialogs.edit.ownershipCopy`)),1),u(`form`,{class:`knowledge-editor-form`,onSubmit:_(Ue,[`prevent`])},[u(`fieldset`,{class:`knowledge-editor-group`,disabled:N.value},[n(k,{modelValue:L.value,"onUpdate:modelValue":a[18]||=e=>L.value=e,field:``,options:q.value,label:v(d)(`knowledge.dialogs.edit.targetProject`),searchable:``,required:``},null,8,[`modelValue`,`options`,`label`]),u(`label`,Ee,[o(h(v(d)(`knowledge.dialogs.edit.assignmentReason`)),1),s(u(`textarea`,{"onUpdate:modelValue":a[19]||=e=>I.value=e,maxlength:`2000`,rows:`3`,required:``},null,512),[[y,I.value]])]),u(`div`,De,[n(D,{variant:`primary`,type:`submit`,disabled:e.projects.length===0,busy:P.value===`ownership`,"busy-label":v(d)(`knowledge.dialogs.edit.changingOwnership`)},{default:t(()=>[o(h(v(d)(`knowledge.dialogs.edit.adjustOwnership`)),1)]),_:1},8,[`disabled`,`busy`,`busy-label`])])],8,Te)],32)]))])]),_:1},8,[`busy`,`error`,`title`,`description`])):S(``,!0)}}),[[`__scopeId`,`data-v-85dc80ce`]]);export{I as i,W as n,F as r,G as t};
@@ -1 +0,0 @@
1
- import{A as e,F as t,M as n,P as r,R as i,X as a,_ as o,a as s,b as c,g as l,it as u,k as d,m as f,nt as p,rt as m,tt as h,w as g,y as _}from"./i18n-b14l2pQA.js";import{t as v}from"./_plugin-vue_export-helper-BDNMzG2s.js";import{C as y,D as b,E as x,O as S,S as C,T as w,_ as T,a as E,c as D,d as O,f as k,g as A,i as j,p as M,u as N,w as P}from"./model-DupZy8Qb.js";import{a as F,c as I,l as L,o as R,r as ee}from"./conversation-launcher-settings-DRoIz42V.js";var z=[`aria-label`],B=[`data-virtual-index`],V={class:`virtual-directory-list__content`},H=[`aria-label`],U=v(g({__name:`VirtualDirectoryList`,props:{items:{},rowHeight:{},label:{},minWidth:{default:`100%`},overscan:{default:8},resetKey:{default:void 0},activeIndex:{default:-1},itemKey:{type:Function,default:void 0}},setup(g,{expose:v}){let y=g,b=a(null),x=a(null),S=a(0),C=a(640),w=a(0),T=null,E=l(()=>y.items.length),D=l(()=>Math.max(3,String(E.value).length)),O=l(()=>E.value?Math.min(E.value,Math.floor(S.value/y.rowHeight)+1):0),k=l(()=>{let e=Math.max(0,Math.floor(S.value/y.rowHeight)-y.overscan),t=Math.ceil(C.value/y.rowHeight)+y.overscan*2;return{start:e,end:Math.min(E.value,e+t)}}),A=l(()=>Array.from({length:k.value.end-k.value.start},(e,t)=>k.value.start+t)),j=l(()=>({height:`${E.value*y.rowHeight}px`,minWidth:y.minWidth})),M=l(()=>({minWidth:y.minWidth}));i([b,x],([e,t])=>{T?.disconnect(),T=null,e&&(P(),typeof ResizeObserver==`function`&&(T=new ResizeObserver(P),T.observe(e),t&&T.observe(t)))},{flush:`post`}),i(()=>y.resetKey,async()=>{await d(),I()},{flush:`post`}),i(E,async()=>{await d();let e=b.value;if(!e)return;let t=Math.max(0,e.scrollHeight-e.clientHeight);e.scrollTop>t&&(e.scrollTop=t),P()}),i([b,()=>y.activeIndex],async([e,t])=>{!e||t<0||t>=E.value||(await d(),L(t))},{flush:`post`}),e(()=>T?.disconnect());function N(e){return String(e).padStart(D.value,`0`)}function P(){let e=b.value;e&&(S.value=e.scrollTop,C.value=e.clientHeight||C.value,w.value=x.value?.offsetHeight??0)}function F(e){let t=e.currentTarget;S.value=t.scrollTop}function I(){let e=b.value;e&&(e.scrollTop=0,S.value=0)}function L(e){let t=b.value;if(!t||e<0||e>=E.value)return;let n=e*y.rowHeight,r=n+y.rowHeight,i=t.scrollTop,a=i+t.clientHeight-w.value;n<i?t.scrollTop=n:t.clientHeight&&r>a&&(t.scrollTop=r-t.clientHeight+w.value),S.value=t.scrollTop}return v({scrollToStart:I,scrollIndexIntoView:L}),(e,i)=>(n(),c(`section`,{class:`virtual-directory-list`,"aria-label":g.label},[o(`div`,{ref_key:`scroller`,ref:b,class:`virtual-directory-list__scroller`,onScrollPassive:F},[e.$slots.header?(n(),c(`div`,{key:0,ref_key:`header`,ref:x,class:`virtual-directory-list__header`,style:m(M.value)},[t(e.$slots,`header`,{},void 0,!0)],4)):_(``,!0),o(`div`,{class:`virtual-directory-list__canvas`,style:m(j.value)},[(n(!0),c(f,null,r(A.value,r=>(n(),c(`div`,{key:g.itemKey?.(g.items[r],r)??r,class:p([`virtual-directory-list__row`,{"is-active":r===g.activeIndex}]),"data-virtual-index":r,style:m({height:`${g.rowHeight}px`,transform:`translateY(${r*g.rowHeight}px)`})},[o(`div`,V,[t(e.$slots,`default`,{item:g.items[r],index:r,formattedIndex:N(r+1)},void 0,!0)])],14,B))),128))],4),!E.value&&e.$slots.empty?(n(),c(`div`,{key:1,class:`virtual-directory-list__empty`,style:m(M.value)},[t(e.$slots,`empty`,{},void 0,!0)],4)):_(``,!0),e.$slots.footer?(n(),c(`div`,{key:2,class:`virtual-directory-list__footer`,style:m(M.value)},[t(e.$slots,`footer`,{},void 0,!0)],4)):_(``,!0)],544),E.value?(n(),c(`output`,{key:0,class:`virtual-directory-list__position`,"aria-label":h(s)(`common.counts.listPosition`,{current:O.value,total:E.value})},[o(`strong`,null,u(N(O.value)),1),o(`span`,null,`/ `+u(N(E.value)),1)],8,H)):_(``,!0)],8,z))}}),[[`__scopeId`,`data-v-9d919ca2`]]),te={class:`graph-inspector`},ne={class:`inspector-identity`},re={class:`muted`},ie={key:0,class:`inspector-project-material`},ae={key:3,class:`inspector-replacement`},oe={class:`inspector-replacement-heading`},se={key:1},ce={key:2},le={class:`inspector-meta`},ue={key:0},de={key:1},fe={key:2},pe={key:3},me={key:4},he={key:5},ge={key:6},_e={key:7},ve={key:8},ye={key:9},be={key:10},xe={key:12},Se={class:`inspector-subtitle`},Ce={key:0,class:`inspector-meta inspector-confirmation-basis`},we={key:0},Te={key:1,class:`inspector-reasoning`},Ee={class:`inspector-subtitle`},De={class:`inspector-meta inspector-attributes`},Oe={class:`inspector-subtitle`},ke={class:`inspector-reasoning`},Ae={key:7,class:`inspector-actions`},je={class:`inspector-subtitle`},Me={class:`inspector-relations`},Ne={class:`relation-type`},Pe={class:`relation-target`},Fe={class:`inspector-subtitle`},Ie={class:`inspector-evidence`},Le={key:0,class:`evidence-excerpt`},Re={key:1,class:`evidence-source-actions`},ze=[`onClick`],Be=[`href`,`title`],Ve={class:`inspector-subtitle`},He={class:`inspector-history`},Ue={class:`inspector-subtitle`},We={class:`inspector-history inspector-audit-history`},Ge={key:0},Ke={class:`inspector-placeholder`},W=g({__name:`KnowledgeInspector`,props:{item:{},graph:{},editable:{type:Boolean},currentProjectId:{},canPublishProject:{type:Boolean},canManageProject:{type:Boolean},mode:{},conversationLaunchers:{}},emits:[`confirm`,`edit`,`createProject`,`openProject`,`publishProject`,`openDirectory`,`openGraph`,`openReplacement`,`manageProject`],setup(e,{emit:t}){let i=e,d=t,m=l(()=>i.item?.itemKind===`entity`?i.item.raw:null),g=l(()=>i.item?.itemKind===`relationship`?i.item.raw:null),v=l(()=>new Map(i.graph?.nodes.map(e=>[e.id,e.name])??[])),z=l(()=>!m.value||!i.graph?[]:i.graph.edges.filter(e=>D(e.source)===m.value?.id||D(e.target)===m.value?.id).slice(0,12)),B=l(()=>Object.entries(i.item?.raw.attributes??{}).filter(([,e])=>e!=null&&e!==``)),V=l(()=>k(i.item)),H=l(()=>C(i.item)),U=l(()=>i.item?.itemKind===`entity`&&[`PersonalProject`,`RelatedPersonalProject`].includes(i.item.type)),W=l(()=>i.editable&&i.item?.itemKind===`entity`&&!i.item.invalidAt&&!i.item.profileAspect&&!V.value),G=l(()=>i.editable&&!V.value),K=l(()=>i.editable&&!V.value&&!i.item?.invalidAt&&!!i.item?.classificationExplicit&&J.value===`pending`),q=l(()=>V.value&&i.canManageProject&&i.item?.type!==`ExternalKnowledgeSource`),qe=l(()=>W.value||G.value||K.value||q.value||!!i.mode||U.value&&!!H.value&&H.value!==i.currentProjectId||U.value&&!!H.value&&i.canPublishProject),J=l(()=>i.item?T(i.item):`unclassified`),Je=l(()=>i.item?j(i.item):``),Y=l(()=>i.item?.confirmationBasis??null),X=a(``),Ye=ee(),Z=l(()=>i.conversationLaunchers??Ye.value),Q=l(()=>{let e=i.item?.replacedByItemId,t=i.item?.replacedByItemKind;return!e||!t?null:A(i.graph).find(n=>n.id===e&&n.itemKind===t)??null}),Xe=l(()=>{let e=i.item;return e?.humanEdited?e.humanChangeStatus===`unseen`?s(`knowledge.workspace.inspector.humanReview.unseen`):e.humanChangeStatus===`viewed`?s(`knowledge.workspace.inspector.humanReview.viewed`):s(`knowledge.workspace.inspector.humanReview.reviewed`):``});function Ze(e){return typeof e==`string`?e:JSON.stringify(e)}function Qe(e){return`${Math.round(e*100)}%`}function $e(e){return e.inheritanceMode===`descendants`?s(`knowledge.workspace.inspector.inheritance.descendants`):e.inheritanceMode===`selected_projects`?s(`knowledge.workspace.inspector.inheritance.selected`,{count:e.inheritedProjectIds.length}):s(`knowledge.workspace.inspector.inheritance.local`)}function et(e){if(e.preferenceScope!==`project`||!e.preferenceProjectId)return s(`knowledge.workspace.inspector.personalGlobal`);let t=e.preferenceProjectId,n=i.graph?.nodes.find(e=>e.attributes?.projectId===t)?.name;return s(`knowledge.workspace.inspector.selectedProject`,{project:n&&n.toLocaleLowerCase()!==t.toLocaleLowerCase()?`${n} (${t})`:t})}function tt(e){return L(e,Z.value)}function nt(e){return I(e,Z.value)}function $(e,t){return String(e.id??e.session_id??t)}async function rt(e,t){await F(e)&&(X.value=$(e,t))}return(t,i)=>(n(),c(`aside`,te,[e.item?(n(),c(f,{key:0},[o(`h3`,null,u(e.item.itemKind===`entity`?e.item.title:g.value?.type),1),o(`div`,ne,[o(`span`,null,u(V.value?h(s)(`knowledge.workspace.inspector.ids.projection`):e.item.itemKind===`entity`?h(s)(`knowledge.workspace.inspector.ids.node`):h(s)(`knowledge.workspace.inspector.ids.relationship`)),1),o(`code`,null,u(e.item.id),1)]),o(`p`,re,u(e.item.body),1),V.value?(n(),c(`section`,ie,[o(`div`,null,[o(`span`,null,u(h(s)(`knowledge.workspace.inspector.ownership`)),1),o(`strong`,null,u(h(P)(e.item)),1)]),o(`p`,null,u(h(s)(`knowledge.workspace.inspector.projectionCopy`)),1)])):(n(),c(`section`,{key:1,class:p([`inspector-classification`,`state-${J.value}`])},[o(`div`,null,[o(`span`,null,u(h(s)(`knowledge.workspace.inspector.currentJudgment`)),1),o(`strong`,null,u(h(b)(e.item)),1)]),o(`p`,null,u(Je.value),1)],2)),!V.value&&e.item.humanEdited?(n(),c(`section`,{key:2,class:p([`inspector-human-change`,`state-${e.item.humanChangeStatus}`])},[o(`div`,null,[o(`span`,null,u(h(s)(`knowledge.workspace.inspector.humanReviewTitle`)),1),o(`strong`,null,u(h(O)(e.item.humanChangeStatus)),1)]),o(`p`,null,u(Xe.value),1),o(`small`,null,u(h(s)(`knowledge.workspace.inspector.humanVersion`,{version:e.item.humanChangeVersion})),1)],2)):_(``,!0),!V.value&&e.item.invalidAt?(n(),c(`section`,ae,[o(`div`,oe,[o(`span`,null,u(h(s)(`knowledge.workspace.inspector.replacement`)),1),o(`strong`,null,u(Q.value?h(s)(`knowledge.workspace.inspector.replacedBy`):h(s)(`knowledge.workspace.inspector.noReplacement`)),1)]),Q.value?(n(),c(`button`,{key:0,class:`inspector-replacement-link`,type:`button`,onClick:i[0]||=e=>d(`openReplacement`,Q.value)},[o(`span`,null,[o(`strong`,null,u(Q.value.title),1),o(`small`,null,u(Q.value.body),1)]),o(`b`,null,u(h(s)(`knowledge.workspace.inspector.viewReplacement`)),1)])):e.item.replacedByItemId?(n(),c(`p`,se,u(h(s)(`knowledge.workspace.inspector.replacementOutOfScope`)),1)):(n(),c(`p`,ce,u(h(s)(`knowledge.workspace.inspector.missingReplacement`)),1))])):_(``,!0),o(`dl`,le,[o(`div`,null,[o(`dt`,null,u(h(s)(`knowledge.workspace.inspector.fields.type`)),1),o(`dd`,null,u(e.item.type),1)]),V.value?_(``,!0):(n(),c(`div`,ue,[o(`dt`,null,u(h(s)(`knowledge.workspace.inspector.fields.originQuadrant`)),1),o(`dd`,null,u(h(x)(e.item.originQuadrant)),1)])),V.value?_(``,!0):(n(),c(`div`,de,[o(`dt`,null,u(h(s)(`knowledge.workspace.inspector.fields.currentQuadrant`)),1),o(`dd`,null,u(h(x)(e.item.currentQuadrant)),1)])),V.value?_(``,!0):(n(),c(`div`,fe,[o(`dt`,null,u(h(s)(`knowledge.workspace.inspector.fields.quadrantExplanation`)),1),o(`dd`,null,u(h(w)(e.item.originQuadrant)),1)])),V.value?_(``,!0):(n(),c(`div`,pe,[o(`dt`,null,u(h(s)(`knowledge.workspace.inspector.fields.confirmationStatus`)),1),o(`dd`,null,u(h(b)(e.item)),1)])),V.value?_(``,!0):(n(),c(`div`,me,[o(`dt`,null,u(h(s)(`knowledge.workspace.inspector.fields.confidence`)),1),o(`dd`,null,u(Qe(e.item.confidenceScore)),1)])),V.value?_(``,!0):(n(),c(`div`,he,[o(`dt`,null,u(h(s)(`knowledge.workspace.inspector.fields.utility`)),1),o(`dd`,null,u(Qe(e.item.utilityScore)),1)])),V.value?_(``,!0):(n(),c(`div`,ge,[o(`dt`,null,u(h(s)(`knowledge.workspace.inspector.fields.materialUse`)),1),o(`dd`,null,u(h(s)(`knowledge.workspace.inspector.useCount`,{uses:e.item.qualifiedUseCount,tasks:e.item.distinctTaskCount})),1)])),V.value?_(``,!0):(n(),c(`div`,_e,[o(`dt`,null,u(h(s)(`knowledge.workspace.inspector.fields.recentUse`)),1),o(`dd`,null,u(h(N)(e.item.lastUsedAt)),1)])),!V.value&&!e.item.profileAspect?(n(),c(`div`,ve,[o(`dt`,null,u(h(s)(`knowledge.workspace.inspector.fields.inheritance`)),1),o(`dd`,null,u($e(e.item)),1)])):_(``,!0),!V.value&&e.item.profileAspect?(n(),c(`div`,ye,[o(`dt`,null,u(h(s)(`knowledge.workspace.inspector.fields.preference`)),1),o(`dd`,null,u(h(y)(e.item.profileAspect)),1)])):_(``,!0),!V.value&&e.item.profileAspect?(n(),c(`div`,be,[o(`dt`,null,u(h(s)(`knowledge.workspace.inspector.fields.effectiveScope`)),1),o(`dd`,null,u(et(e.item)),1)])):_(``,!0),g.value?(n(),c(f,{key:11},[o(`div`,null,[o(`dt`,null,u(h(s)(`knowledge.workspace.inspector.fields.source`)),1),o(`dd`,null,u(v.value.get(h(D)(g.value.source))??g.value.source_name??h(D)(g.value.source)),1)]),o(`div`,null,[o(`dt`,null,u(h(s)(`knowledge.workspace.inspector.fields.target`)),1),o(`dd`,null,u(v.value.get(h(D)(g.value.target))??g.value.target_name??h(D)(g.value.target)),1)])],64)):_(``,!0),V.value?_(``,!0):(n(),c(`div`,xe,[o(`dt`,null,u(h(s)(`knowledge.workspace.inspector.fields.status`)),1),o(`dd`,null,u(e.item.invalidAt?h(s)(`knowledge.workspace.inspector.historical`):h(s)(`common.status.current`)),1)]))]),V.value?_(``,!0):(n(),c(f,{key:4},[o(`h4`,Se,u(h(s)(`knowledge.workspace.inspector.basisTitle`)),1),Y.value?(n(),c(`dl`,Ce,[o(`div`,null,[o(`dt`,null,u(h(s)(`knowledge.workspace.inspector.basis.existence`)),1),o(`dd`,null,u(Y.value.existence_reason),1)]),o(`div`,null,[o(`dt`,null,u(h(s)(`knowledge.workspace.inspector.basis.quadrant`)),1),o(`dd`,null,u(Y.value.quadrant_reason),1)]),o(`div`,null,[o(`dt`,null,u(h(s)(`knowledge.workspace.inspector.basis.proposer`)),1),o(`dd`,null,u(h(E)(Y.value.proposed_by)),1)]),o(`div`,null,[o(`dt`,null,u(h(s)(`knowledge.workspace.inspector.basis.confirmer`)),1),o(`dd`,null,u(h(E)(Y.value.confirmed_by)),1)]),o(`div`,null,[o(`dt`,null,u(h(s)(`knowledge.workspace.inspector.basis.time`)),1),o(`dd`,null,u(h(N)(Y.value.confirmed_at)),1)]),Y.value.agent_policy_version?(n(),c(`div`,we,[o(`dt`,null,u(h(s)(`knowledge.workspace.inspector.basis.agentPolicy`)),1),o(`dd`,null,u(Y.value.agent_policy_version),1)])):_(``,!0)])):(n(),c(`p`,Te,u(h(s)(`knowledge.workspace.inspector.legacyBasis`)),1))],64)),B.value.length?(n(),c(f,{key:5},[o(`h4`,Ee,u(h(s)(`knowledge.workspace.inspector.contentDetails`)),1),o(`dl`,De,[(n(!0),c(f,null,r(B.value,([e,t])=>(n(),c(`div`,{key:e},[o(`dt`,null,u(e),1),o(`dd`,null,u(Ze(t)),1)]))),128))])],64)):_(``,!0),e.item.reasoningSummary?(n(),c(f,{key:6},[o(`h4`,Oe,u(h(s)(`knowledge.workspace.inspector.formation`)),1),o(`p`,ke,u(e.item.reasoningSummary),1)],64)):_(``,!0),qe.value?(n(),c(`div`,Ae,[K.value?(n(),c(`button`,{key:0,class:`primary-action inspector-confirm-action`,type:`button`,onClick:i[1]||=t=>d(`confirm`,e.item)},u(e.item.profileAspect?h(s)(`knowledge.workspace.inspector.confirmPreference`):h(s)(`knowledge.workspace.inspector.confirmKnowledge`)),1)):_(``,!0),q.value?(n(),c(`button`,{key:1,class:`primary-action`,type:`button`,onClick:i[2]||=t=>d(`manageProject`,e.item)},u(h(s)(`knowledge.workspace.inspector.editMaterials`)),1)):_(``,!0),e.mode===`graph`?(n(),c(`button`,{key:2,class:`secondary-action`,type:`button`,onClick:i[3]||=t=>d(`openDirectory`,e.item)},u(h(s)(`knowledge.workspace.inspector.locateDirectory`)),1)):_(``,!0),e.mode===`directory`?(n(),c(`button`,{key:3,class:`secondary-action`,type:`button`,onClick:i[4]||=t=>d(`openGraph`,e.item)},u(h(s)(`knowledge.workspace.inspector.locateGraph`)),1)):_(``,!0),U.value&&H.value&&H.value!==e.currentProjectId?(n(),c(`button`,{key:4,class:`primary-action`,type:`button`,onClick:i[5]||=e=>d(`openProject`,H.value)},u(h(s)(`knowledge.workspace.inspector.enterProject`)),1)):_(``,!0),U.value&&H.value&&e.canPublishProject?(n(),c(`button`,{key:5,class:`secondary-action`,type:`button`,onClick:i[6]||=e=>d(`publishProject`,H.value)},u(h(s)(`knowledge.workspace.inspector.publish`)),1)):_(``,!0),W.value?(n(),c(`button`,{key:6,class:`primary-action`,type:`button`,onClick:i[7]||=t=>d(`createProject`,e.item)},u(h(s)(`knowledge.workspace.inspector.createProject`)),1)):_(``,!0),G.value?(n(),c(`button`,{key:7,class:`secondary-action inspector-edit-action`,type:`button`,onClick:i[8]||=t=>d(`edit`,e.item)},u(e.item.profileAspect?h(s)(`knowledge.workspace.inspector.correctPreference`):h(s)(`knowledge.workspace.inspector.correctOrAssign`)),1)):_(``,!0)])):_(``,!0),z.value.length?(n(),c(f,{key:8},[o(`h4`,je,u(h(s)(`knowledge.workspace.inspector.relations`)),1),o(`div`,Me,[(n(!0),c(f,null,r(z.value,e=>(n(),c(`div`,{key:e.id,class:`inspector-relation`},[o(`strong`,Ne,u(e.type),1),o(`p`,Pe,u(e.fact||h(s)(`knowledge.workspace.inspector.relationshipFallback`)),1)]))),128))])],64)):_(``,!0),e.item.evidence.length?(n(),c(f,{key:9},[o(`h4`,Fe,u(h(s)(`knowledge.workspace.inspector.evidence`)),1),o(`div`,Ie,[(n(!0),c(f,null,r(e.item.evidence,(e,t)=>(n(),c(`article`,{key:$(e,t),class:`evidence-card`},[o(`strong`,null,u(e.name||e.source_description||h(s)(`knowledge.workspace.inspector.sourceRecord`)),1),o(`p`,null,u(e.summary||e.source_description),1),o(`span`,null,u(h(R)(e))+` · `+u(e.source_kind||h(s)(`knowledge.workspace.inspector.source`))+` · `+u(h(N)(e.reference_time||e.created_at)),1),e.source_excerpt?(n(),c(`p`,Le,u(e.source_excerpt),1)):_(``,!0),e.session_id?(n(),c(`div`,Re,[o(`button`,{class:`evidence-source-action`,type:`button`,onClick:n=>rt(e,t)},u(X.value===$(e,t)?h(s)(`knowledge.workspace.inspector.copiedSessionId`):h(s)(`knowledge.workspace.inspector.copySessionId`)),9,ze),tt(e)?(n(),c(`a`,{key:0,class:`evidence-source-action`,href:tt(e)??void 0,title:h(s)(`knowledge.workspace.inspector.openConversationWith`,{app:nt(e)??h(R)(e)})},u(h(s)(`knowledge.workspace.inspector.openConversation`)),9,Be)):_(``,!0)])):_(``,!0)]))),128))])],64)):_(``,!0),e.item.revisions.length?(n(),c(f,{key:10},[o(`h4`,Ve,u(h(s)(`knowledge.workspace.inspector.revisions`)),1),o(`div`,He,[(n(!0),c(f,null,r(e.item.revisions,(e,t)=>(n(),c(`article`,{key:String(e.id??t),class:`history-row`},[o(`strong`,null,u(h(S)(e.action)),1),o(`p`,null,u(e.reason??e.summary??h(s)(`knowledge.workspace.inspector.noRevisionCopy`)),1),o(`span`,null,u(h(N)(e.created_at)),1)]))),128))])],64)):_(``,!0),e.item.auditEvents.length?(n(),c(f,{key:11},[o(`h4`,Ue,u(h(s)(`knowledge.workspace.inspector.audit`)),1),o(`div`,We,[(n(!0),c(f,null,r(e.item.auditEvents,e=>(n(),c(`article`,{key:e.id,class:`history-row`},[o(`strong`,null,u(h(M)(e.action)),1),o(`p`,null,u(e.reason),1),o(`span`,null,u(h(s)(`knowledge.workspace.inspector.version`,{version:e.human_change_version}))+` · `+u(h(N)(e.created_at)),1),e.action===`agent_review`?(n(),c(`small`,Ge,u(h(s)(`knowledge.workspace.inspector.conflictClassification`,{conflict:e.conflict_check===`no_conflict`?h(s)(`knowledge.workspace.inspector.conflictNone`):h(s)(`knowledge.workspace.inspector.conflictFound`),classification:e.classification_check===`reasonable`?h(s)(`knowledge.workspace.inspector.classificationReasonable`):h(s)(`knowledge.workspace.inspector.classificationAdjust`)})),1)):_(``,!0)]))),128))])],64)):_(``,!0)],64)):(n(),c(f,{key:1},[o(`h3`,null,u(h(s)(`knowledge.workspace.inspector.placeholderTitle`)),1),o(`p`,Ke,u(h(s)(`knowledge.workspace.inspector.placeholderCopy`)),1)],64))]))}});export{U as n,W as t};
@@ -1 +0,0 @@
1
- import{A as e,B as t,C as n,M as r,P as i,R as a,S as o,V as s,X as c,_ as l,a as u,b as d,c as ee,g as f,it as p,k as te,m as ne,nt as m,tt as h,u as g,v as _,w as v,y}from"./i18n-b14l2pQA.js";import{t as re}from"./console-CqzwSo7a.js";import{i as b,n as x,o as S}from"./client-DLS5FZBI.js";import{t as C}from"./_plugin-vue_export-helper-BDNMzG2s.js";import{n as w,t as T}from"./UiDialog-Q7fsJUoO.js";import{t as E}from"./UiSelect-DcGpPQQo.js";import{r as D,t as O}from"./identity-BWbPmZZf.js";import{n as k,t as A}from"./KnowledgeInspector-BGsqjNY2.js";import{i as j,n as M,r as N,t as P}from"./KnowledgeEditDialog-a-5rasG0.js";import{D as F,E as I,_ as L,g as R,n as z,o as B,r as V,t as ie,u as ae,v as H}from"./model-DupZy8Qb.js";var U={class:`batch-confirm-layout`},W={class:`batch-confirm-controls`},oe={key:0,class:`batch-group-summary`},se={class:`ui-meta`},ce={class:`ui-meta`},G={class:`batch-confirmer-fields`},le={class:`ui-field`},K=[`required`,`placeholder`],q={class:`ui-field`},J=[`placeholder`],ue={class:`ui-meta`},de={class:`batch-confirm-review`},Y={class:`batch-review-heading`},fe={class:`ui-meta`},X={key:0,class:`ui-meta`},pe={class:`batch-review-list`},me=[`value`],Z={class:`ui-check batch-confirm-acknowledgement`},he=C(v({__name:`KnowledgeBatchConfirmDialog`,props:{groups:{},personalSpaceId:{}},emits:[`close`,`saved`],setup(e,{emit:te}){let m=e,v=te,x=re(),S=c(``),C=c([]),k=c(`user`),A=c(``),j=c(``),M=c(!1),N=c(!1),P=c(``),F=f(()=>m.groups.map(e=>({value:e.key,label:e.label,meta:u(`knowledge.dialogs.batch.groupMeta`,{kind:e.kind===`source`?u(`knowledge.dialogs.batch.sameSource`):u(`knowledge.dialogs.batch.sameSession`),count:e.items.length}),search:`${D(e.value)} ${e.description}`}))),L=f(()=>m.groups.find(({key:e})=>e===S.value)??null),R=f(()=>L.value?.items.slice(0,200)??[]),B=f(()=>{let e=new Set(C.value);return R.value.filter(t=>e.has(H(t)))}),V=f(()=>R.value.length>0&&B.value.length===R.value.length),ie=f(()=>!N.value&&B.value.length>=2&&!!j.value.trim()&&M.value&&(k.value!==`authoritative_source`||!!A.value.trim())),ae=f(()=>[{value:`user`,label:u(`knowledge.domain.actors.user`)},{value:`authoritative_source`,label:u(`knowledge.domain.actors.authoritative_source`)}]);a(()=>m.groups,e=>{e.some(({key:e})=>e===S.value)||(S.value=e[0]?.key??``)},{immediate:!0}),a(S,()=>{C.value=R.value.map(H),M.value=!1,P.value=``},{immediate:!0});function H(e){return`${e.itemKind}:${e.id}`}function he(){C.value=V.value?[]:R.value.map(H),M.value=!1}function Q(e){let t=L.value;return t?z(e,t):null}async function ge(){if(N.value)return;let e=L.value;if(!e)return $(u(`knowledge.dialogs.batch.errors.groupRequired`));if(B.value.length<2)return $(u(`knowledge.dialogs.batch.errors.itemsRequired`));if(!j.value.trim())return $(u(`knowledge.dialogs.batch.errors.reasonRequired`));if(k.value===`authoritative_source`&&!A.value.trim())return $(u(`knowledge.dialogs.batch.errors.sourceNameRequired`));if(!M.value)return $(u(`knowledge.dialogs.batch.errors.acknowledgmentRequired`));N.value=!0,P.value=``;try{let t=await b(`/api/knowledge/batch-confirmation`,{personalSpaceId:m.personalSpaceId,groupKind:e.kind,groupValue:e.value,reason:j.value.trim(),confirmer:{kind:k.value,label:A.value.trim()||null},items:B.value.map(e=>{let t=Q(e);return{itemId:e.id,itemKind:e.itemKind,existenceReason:t.existenceReason,quadrantReason:t.quadrantReason,proposedBy:t.proposedBy}})});x.notify(u(`knowledge.dialogs.batch.confirmed`,{count:t.confirmed_count})),v(`saved`),v(`close`)}catch(e){P.value=e instanceof Error?e.message:u(`knowledge.dialogs.batch.errors.failed`),x.reportError(e)}finally{N.value=!1}}function $(e){P.value=e}return(e,a)=>(r(),_(T,{open:``,class:`batch-confirm-dialog`,size:`xl`,form:``,title:h(u)(`knowledge.dialogs.batch.title`),description:h(u)(`knowledge.dialogs.batch.intro`),busy:N.value,error:P.value,onClose:a[7]||=e=>v(`close`),onSubmit:ge},{footer:t(()=>[n(w,{variant:`ghost`,disabled:N.value,onClick:a[6]||=e=>v(`close`)},{default:t(()=>[o(p(h(u)(`common.actions.cancel`)),1)]),_:1},8,[`disabled`]),n(w,{variant:`primary`,type:`submit`,disabled:!ie.value,busy:N.value,"busy-label":h(u)(`knowledge.dialogs.batch.confirming`)},{default:t(()=>[o(p(h(u)(`knowledge.dialogs.batch.confirmItems`,{count:B.value.length})),1)]),_:1},8,[`disabled`,`busy`,`busy-label`])]),default:t(()=>[l(`div`,U,[l(`section`,W,[n(E,{modelValue:S.value,"onUpdate:modelValue":a[0]||=e=>S.value=e,field:``,options:F.value,label:h(u)(`knowledge.dialogs.batch.range`),searchable:``},null,8,[`modelValue`,`options`,`label`]),L.value?(r(),d(`div`,oe,[l(`span`,se,p(L.value.kind===`source`?h(u)(`knowledge.dialogs.batch.sameSource`):h(u)(`knowledge.dialogs.batch.sameSession`)),1),l(`strong`,null,p(L.value.label),1),l(`p`,null,p(L.value.description),1),l(`small`,ce,`#`+p(h(O)(L.value.value,28)),1)])):y(``,!0),l(`div`,G,[n(E,{modelValue:k.value,"onUpdate:modelValue":a[1]||=e=>k.value=e,field:``,options:ae.value,label:h(u)(`knowledge.dialogs.batch.confirmer`)},null,8,[`modelValue`,`options`,`label`]),l(`label`,le,[o(p(h(u)(`knowledge.dialogs.batch.confirmerDescription`))+` `,1),s(l(`input`,{"onUpdate:modelValue":a[2]||=e=>A.value=e,maxlength:`160`,required:k.value===`authoritative_source`,placeholder:k.value===`user`?h(u)(`knowledge.dialogs.batch.userPlaceholder`):h(u)(`knowledge.dialogs.batch.sourcePlaceholder`)},null,8,K),[[g,A.value]])])]),l(`label`,q,[o(p(h(u)(`knowledge.dialogs.batch.basis`))+` `,1),s(l(`textarea`,{"onUpdate:modelValue":a[3]||=e=>j.value=e,maxlength:`2000`,rows:`3`,required:``,placeholder:h(u)(`knowledge.dialogs.batch.basisPlaceholder`)},null,8,J),[[g,j.value]])]),l(`p`,ue,p(h(u)(`knowledge.dialogs.batch.agentBoundary`)),1)]),l(`section`,de,[l(`div`,Y,[l(`div`,null,[l(`h3`,null,p(h(u)(`knowledge.dialogs.batch.itemReview`)),1),l(`p`,fe,p(h(u)(`knowledge.dialogs.batch.selected`,{selected:B.value.length,total:R.value.length})),1)]),n(w,{size:`sm`,variant:`ghost`,onClick:he},{default:t(()=>[o(p(V.value?h(u)(`knowledge.dialogs.batch.clearAll`):h(u)(`knowledge.dialogs.batch.selectAll`)),1)]),_:1})]),(L.value?.items.length??0)>200?(r(),d(`p`,X,p(h(u)(`knowledge.dialogs.batch.limit`)),1)):y(``,!0),l(`div`,pe,[(r(!0),d(ne,null,i(R.value,e=>(r(),d(`label`,{key:H(e),class:`batch-review-item`},[s(l(`input`,{"onUpdate:modelValue":a[4]||=e=>C.value=e,type:`checkbox`,value:H(e)},null,8,me),[[ee,C.value]]),l(`span`,null,[l(`strong`,null,p(e.title),1),l(`small`,null,p(h(I)(e.originQuadrant))+` · `+p(e.type),1),l(`em`,null,p(Q(e)?.existenceReason),1),l(`em`,null,p(Q(e)?.quadrantReason),1)])]))),128))]),l(`label`,Z,[s(l(`input`,{"onUpdate:modelValue":a[5]||=e=>M.value=e,type:`checkbox`},null,512),[[ee,M.value]]),l(`span`,null,p(h(u)(`knowledge.dialogs.batch.acknowledgment`)),1)])])])]),_:1},8,[`title`,`description`,`busy`,`error`]))}}),[[`__scopeId`,`data-v-debfea5c`]]),Q={class:`view knowledge-organizer`},ge={class:`organizer-toolbar`},$={class:`organizer-search`},_e=[`placeholder`],ve=[`aria-label`],ye=[`aria-pressed`],be=[`data-quadrant`,`aria-pressed`,`title`,`onClick`],xe=[`aria-label`],Se=[`aria-pressed`],Ce=[`data-review-state`,`aria-pressed`,`title`,`onClick`],we={class:`organizer-toolbar-actions`},Te={class:`organizer-result-summary`},Ee={key:0},De=[`disabled`],Oe={key:2,class:`view-loading`,"aria-busy":`true`},ke={class:`organizer-table-head`,"aria-hidden":`true`},Ae=[`onClick`],je={class:`organizer-item-copy`},Me={class:`organizer-basis`},Ne={class:`empty-state`},Pe=100,Fe=68,Ie=C(v({__name:`KnowledgeOrganizerPage`,setup(ee){let v=re(),b=c(null),C=c(!1),w=c(!1),T=c(``),E=c(`all`),D=c(`all`),O=c(null),z=c(null),U=c(null),W=c(!1),oe=N(),se=f(()=>oe||C.value&&!b.value),ce=j(se),G=0,le=f(()=>[{value:`known_unknown`,short:u(`knowledge.workspace.organizer.quadrants.known_unknown.short`),coordinate:u(`knowledge.workspace.organizer.quadrants.known_unknown.coordinate`)},{value:`known_known`,short:u(`knowledge.workspace.organizer.quadrants.known_known.short`),coordinate:u(`knowledge.workspace.organizer.quadrants.known_known.coordinate`)},{value:`unknown_unknown`,short:u(`knowledge.workspace.organizer.quadrants.unknown_unknown.short`),coordinate:u(`knowledge.workspace.organizer.quadrants.unknown_unknown.coordinate`)},{value:`unknown_known`,short:u(`knowledge.workspace.organizer.quadrants.unknown_known.short`),coordinate:u(`knowledge.workspace.organizer.quadrants.unknown_known.coordinate`)}]),K=f(()=>[{value:`pending`,label:u(`knowledge.domain.reviewStates.pending`),hint:u(`knowledge.workspace.organizer.review.pendingHint`)},{value:`agent_confirmed`,label:u(`knowledge.domain.reviewStates.agent_confirmed`),hint:u(`knowledge.workspace.organizer.review.agentConfirmedHint`)},{value:`confirmed`,label:u(`knowledge.domain.reviewStates.confirmed`),hint:u(`knowledge.workspace.organizer.review.confirmedHint`)}]),q=f(()=>R(b.value)),J=f(()=>V(q.value)),ue=f(()=>Object.fromEntries([...le.value.map(({value:e})=>e),`unclassified`].map(e=>[e,q.value.filter(t=>t.originQuadrant===e).length]))),de=f(()=>E.value!==`all`),Y=f(()=>de.value?q.value.filter(e=>e.originQuadrant===E.value):q.value),fe=f(()=>Object.fromEntries(K.value.map(({value:e})=>[e,Y.value.filter(t=>L(t)===e).length]))),X=f(()=>{let e=T.value.trim().toLocaleLowerCase();return q.value.filter(t=>E.value!==`all`&&t.originQuadrant!==E.value||D.value!==`all`&&L(t)!==D.value?!1:!e||[t.title,t.body,t.type,I(t.originQuadrant),F(t),...t.evidence.flatMap(e=>[e.name,e.summary,e.source_description])].filter(Boolean).join(` `).toLocaleLowerCase().includes(e))}),pe=f(()=>`${T.value}\u0000${E.value}\u0000${D.value}`),me=f(()=>O.value?X.value.findIndex(({id:e,itemKind:t})=>e===O.value?.id&&t===O.value?.itemKind):-1);a(()=>v.activePersonalSpace?.id,e=>{e&&Z(e)},{immediate:!0}),a(X,e=>{O.value&&!e.some(({id:e,itemKind:t})=>e===O.value?.id&&t===O.value?.itemKind)&&(O.value=null)}),e(()=>{G+=1});async function Z(e=v.activePersonalSpace?.id){if(!e)return;let t=++G;C.value=!0,w.value=!1;let n=!1;try{let r=0;for(;t===G;){let i=await x(`/api/graph?${new URLSearchParams({spaceId:e,limit:String(Pe),offset:String(r)})}`);if(t!==G)return;if(b.value=n?ie(b.value,i):i,n=!0,O.value&&=q.value.find(({id:e,itemKind:t})=>e===O.value?.id&&t===O.value?.itemKind)??null,C.value=!1,!i.truncated)break;let a=i.next_offset;if(!Number.isInteger(a)||a<=r)throw Error(u(`knowledge.workspace.organizer.paginationError`));r=a,w.value=!0,await te()}}catch(e){n||(b.value=null),v.reportError(e)}finally{t===G&&(C.value=!1,w.value=!1)}}function Ie(e){return`${e.itemKind}:${e.id}`}function Le(e){E.value=E.value===e?`all`:e}function Re(e){D.value=e}function ze(e){T.value=``,E.value=e.originQuadrant,D.value=`all`,O.value=e}return(e,a)=>(r(),d(`section`,Q,[l(`div`,ge,[l(`label`,$,[l(`span`,null,p(h(u)(`knowledge.workspace.organizer.filterKnowledge`)),1),s(l(`input`,{"onUpdate:modelValue":a[0]||=e=>T.value=e,type:`search`,placeholder:h(u)(`knowledge.workspace.organizer.searchPlaceholder`)},null,8,_e),[[g,T.value]])]),l(`div`,{class:`quadrant-filter`,"aria-label":h(u)(`knowledge.workspace.organizer.quadrantFilterAria`)},[l(`span`,null,p(h(u)(`knowledge.workspace.organizer.discoverySource`)),1),l(`button`,{type:`button`,"data-quadrant":`all`,class:m({active:E.value===`all`}),"aria-pressed":E.value===`all`,onClick:a[1]||=e=>E.value=`all`},[o(p(h(u)(`common.status.all`))+` `,1),l(`strong`,null,p(q.value.length),1)],10,ye),(r(!0),d(ne,null,i(le.value,e=>(r(),d(`button`,{key:e.value,type:`button`,"data-quadrant":e.value,class:m({active:E.value===e.value}),"aria-pressed":E.value===e.value,title:e.coordinate,onClick:t=>Le(e.value)},[o(p(e.short)+` `,1),l(`strong`,null,p(ue.value[e.value]),1)],10,be))),128))],8,ve),l(`div`,{class:`review-state-filter`,"aria-label":h(u)(`knowledge.workspace.organizer.reviewFilterAria`)},[l(`span`,null,p(h(u)(`knowledge.workspace.organizer.reviewStatus`)),1),l(`button`,{type:`button`,"data-review-state":`all`,class:m({active:D.value===`all`}),"aria-pressed":D.value===`all`,onClick:a[2]||=e=>Re(`all`)},[o(p(h(u)(`common.status.all`))+` `,1),l(`strong`,null,p(Y.value.length),1)],10,Se),(r(!0),d(ne,null,i(K.value,e=>(r(),d(`button`,{key:e.value,type:`button`,"data-review-state":e.value,class:m([`state-${e.value}`,{active:D.value===e.value}]),"aria-pressed":D.value===e.value,title:e.hint,onClick:t=>Re(e.value)},[o(p(e.label)+` `,1),l(`strong`,null,p(fe.value[e.value]),1)],10,Ce))),128))],8,xe),l(`div`,we,[l(`p`,Te,[o(p(h(u)(`knowledge.workspace.organizer.showing`,{visible:X.value.length,total:Y.value.length}))+` `,1),D.value===`all`?y(``,!0):(r(),d(`span`,Ee,` · `+p(K.value.find(({value:e})=>e===D.value)?.label),1))]),J.value.length?(r(),d(`button`,{key:0,class:`toolbar-action batch-confirm-action`,type:`button`,onClick:a[3]||=e=>W.value=!0},p(h(u)(`knowledge.workspace.organizer.batchConfirm`,{count:J.value.length})),1)):y(``,!0),l(`button`,{class:`toolbar-action`,type:`button`,disabled:C.value||w.value,onClick:a[4]||=e=>Z()},p(h(u)(`common.actions.refresh`)),9,De)])]),C.value&&b.value&&!w.value&&!h(ce)?(r(),_(S,{key:0,variant:`inline`,label:h(u)(`common.status.loadingKnowledge`)},null,8,[`label`])):y(``,!0),h(ce)?(r(),_(S,{key:1,label:h(u)(`common.status.loadingKnowledge`)},null,8,[`label`])):se.value?(r(),d(`div`,Oe)):(r(),d(`div`,{key:3,class:m([`organizer-layout`,{"has-selection":O.value}])},[n(k,{class:`organizer-directory`,items:X.value,"row-height":Fe,"active-index":me.value,"reset-key":pe.value,"item-key":Ie,"min-width":`var(--organizer-list-min-width)`,label:h(u)(`knowledge.workspace.organizer.directoryAria`)},{header:t(()=>[l(`div`,ke,[l(`span`,null,p(h(u)(`knowledge.workspace.workspace.view.knowledgeContent`)),1),l(`span`,null,p(h(u)(`knowledge.workspace.workspace.view.columns.quadrant`)),1),l(`span`,null,p(h(u)(`knowledge.workspace.workspace.view.columns.review`)),1),l(`span`,null,p(h(u)(`knowledge.workspace.organizer.confirmationBasis`)),1),l(`span`,null,p(h(u)(`knowledge.workspace.organizer.updated`)),1)])]),default:t(({item:e})=>[l(`button`,{type:`button`,class:m([`organizer-row`,{selected:O.value?.id===e.id}]),onClick:t=>O.value=e},[l(`span`,je,[l(`strong`,null,p(e.title),1),l(`small`,null,p(e.body),1)]),l(`span`,{class:m([`quadrant-chip`,e.originQuadrant])},p(h(I)(e.originQuadrant)),3),l(`span`,{class:m([`review-chip`,`state-${h(L)(e)}`])},p(h(F)(e)),3),l(`span`,Me,p(h(B)(e)),1),l(`time`,null,p(h(ae)(h(H)(e))),1)],10,Ae)]),footer:t(()=>[w.value?(r(),_(S,{key:0,variant:`compact`,label:h(u)(`knowledge.workspace.organizer.loadingMore`)},null,8,[`label`])):y(``,!0)]),empty:t(()=>[l(`div`,Ne,p(q.value.length?h(u)(`knowledge.workspace.organizer.noFilteredContent`):h(u)(`knowledge.workspace.organizer.noContent`)),1)]),_:1},8,[`items`,`active-index`,`reset-key`,`label`]),n(A,{item:O.value,graph:b.value,editable:``,onConfirm:a[5]||=e=>z.value=e,onEdit:a[6]||=e=>U.value=e,onOpenReplacement:ze},null,8,[`item`,`graph`])],2)),n(P,{item:U.value,"personal-space-id":h(v).activePersonalSpace?.id??``,"personal-project-id":null,projects:h(v).state?.personalProjects??[],"replacement-items":q.value,onClose:a[7]||=e=>U.value=null,onSaved:a[8]||=e=>Z()},null,8,[`item`,`personal-space-id`,`projects`,`replacement-items`]),n(M,{item:z.value,"personal-space-id":h(v).activePersonalSpace?.id??``,"personal-project-id":null,onClose:a[9]||=e=>z.value=null,onSaved:a[10]||=e=>Z()},null,8,[`item`,`personal-space-id`]),W.value?(r(),_(he,{key:4,groups:J.value,"personal-space-id":h(v).activePersonalSpace?.id??``,onClose:a[11]||=e=>W.value=!1,onSaved:a[12]||=e=>Z()},null,8,[`groups`,`personal-space-id`])):y(``,!0)]))}}),[[`__scopeId`,`data-v-5ef05bf7`]]);export{Ie as default};
@@ -1 +0,0 @@
1
- .batch-confirm-layout[data-v-debfea5c]{grid-template-columns:320px minmax(0,1fr);gap:24px;display:grid}.batch-confirm-controls[data-v-debfea5c]{align-content:start;gap:14px;display:grid}.batch-group-summary[data-v-debfea5c]{border-radius:var(--radius-control);background:var(--color-surface-subtle);gap:2px;padding:10px 12px;font-size:12px;display:grid}.batch-group-summary p[data-v-debfea5c]{color:var(--color-muted);margin:0;line-height:1.5}.batch-confirmer-fields[data-v-debfea5c]{grid-template-columns:120px minmax(0,1fr);gap:8px;display:grid}.batch-confirm-review[data-v-debfea5c]{border-left:1px solid var(--color-border);align-content:start;gap:10px;min-width:0;padding-left:24px;display:grid}.batch-review-heading[data-v-debfea5c]{justify-content:space-between;align-items:center;gap:16px;display:flex}.batch-review-heading h3[data-v-debfea5c]{margin:0;font-size:13px;font-weight:600}.batch-review-list[data-v-debfea5c]{border-block:1px solid var(--color-border);max-height:410px;overflow:auto}.batch-review-item[data-v-debfea5c]{border-bottom:1px solid var(--color-border);cursor:pointer;grid-template-columns:auto minmax(0,1fr);gap:9px;padding:10px 2px;display:grid}.batch-review-item[data-v-debfea5c]:last-child{border-bottom:0}.batch-review-item>span[data-v-debfea5c]{gap:3px;min-width:0;font-size:12px;display:grid}.batch-review-item small[data-v-debfea5c],.batch-review-item em[data-v-debfea5c]{color:var(--color-muted)}.batch-review-item em[data-v-debfea5c]{text-overflow:ellipsis;white-space:nowrap;font-style:normal;overflow:hidden}@media (width<=820px){.batch-confirm-layout[data-v-debfea5c]{grid-template-columns:1fr}.batch-confirm-review[data-v-debfea5c]{border-left:0;padding:0}}.knowledge-organizer[data-v-5ef05bf7]{flex-direction:column;gap:12px;padding:18px 24px 20px;display:flex;overflow:hidden}.organizer-toolbar[data-v-5ef05bf7]{flex-wrap:wrap;align-content:center;align-items:center;gap:6px 8px;min-width:0;min-height:34px;display:flex}.organizer-search[data-v-5ef05bf7]{flex:300px;min-width:180px;max-width:360px}.organizer-search>span[data-v-5ef05bf7]{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}.organizer-search input[data-v-5ef05bf7]{width:100%}.review-state-filter[data-v-5ef05bf7],.quadrant-filter[data-v-5ef05bf7]{border:1px solid var(--color-border);border-radius:var(--radius-control);background:var(--color-surface-subtle);white-space:nowrap;flex:0 auto;align-items:center;gap:2px;min-width:0;max-width:100%;height:31px;padding:2px;display:flex;overflow:auto hidden}.quadrant-filter[data-v-5ef05bf7]{max-width:470px;overflow-x:auto}.review-state-filter>span[data-v-5ef05bf7],.quadrant-filter>span[data-v-5ef05bf7]{color:var(--color-muted);padding:0 6px;font-size:12px;font-weight:650}.review-state-filter button[data-v-5ef05bf7],.quadrant-filter button[data-v-5ef05bf7]{height:25px;color:var(--color-muted);white-space:nowrap;background:0 0;border:0;border-radius:5px;padding:0 7px;font-size:12px}.review-state-filter button[data-v-5ef05bf7]:hover,.quadrant-filter button[data-v-5ef05bf7]:hover{color:var(--color-ink);background:#ffffffa8}.review-state-filter button.active[data-v-5ef05bf7],.quadrant-filter button.active[data-v-5ef05bf7]{color:var(--color-ink);background:var(--color-surface);box-shadow:0 1px 3px #2f3d341f}.review-state-filter button.state-pending.active[data-v-5ef05bf7]{color:var(--color-warning)}.review-state-filter button.state-agent_confirmed.active[data-v-5ef05bf7],.review-state-filter button.state-confirmed.active[data-v-5ef05bf7]{color:var(--color-success)}.review-state-filter button strong[data-v-5ef05bf7],.quadrant-filter button strong[data-v-5ef05bf7]{margin-left:2px;font-size:12px;font-weight:720}.organizer-result-summary[data-v-5ef05bf7]{color:var(--color-muted);white-space:nowrap;flex:none;font-size:12px}.organizer-toolbar-actions[data-v-5ef05bf7]{white-space:nowrap;flex:none;align-items:center;gap:6px;min-width:0;margin-left:auto;display:flex}.organizer-toolbar-actions .toolbar-action[data-v-5ef05bf7]{white-space:nowrap;flex:none}.organizer-layout[data-v-5ef05bf7]{border:1px solid var(--color-border-strong);border-radius:var(--radius-control);background:var(--color-surface);flex:1;grid-template-columns:minmax(0,1fr);min-height:0;display:grid;overflow:hidden}.organizer-layout.has-selection[data-v-5ef05bf7]{grid-template-columns:minmax(0,1fr) 340px}.organizer-layout[data-v-5ef05bf7]:not(.has-selection) .graph-inspector{display:none}.organizer-directory[data-v-5ef05bf7]{--organizer-list-min-width:920px;min-width:0;min-height:0}.organizer-table-head[data-v-5ef05bf7],.organizer-row[data-v-5ef05bf7]{grid-template-columns:minmax(230px,1.35fr) 114px 130px minmax(160px,.8fr) 118px;align-items:center;gap:12px;display:grid}.organizer-table-head[data-v-5ef05bf7]{border-bottom:1px solid var(--color-border);color:var(--color-muted);background:var(--color-surface-subtle);padding:10px 15px;font-size:12px;font-weight:680}.organizer-row[data-v-5ef05bf7]{border:0;border-bottom:1px solid var(--color-border);width:100%;height:100%;color:var(--color-ink);background:var(--color-surface);text-align:left;padding:11px 15px;overflow:hidden}.organizer-row[data-v-5ef05bf7]:hover{background:var(--color-surface)}.organizer-row.selected[data-v-5ef05bf7]{background:var(--color-surface-subtle);box-shadow:inset 2px 0 var(--color-accent)}.organizer-item-copy[data-v-5ef05bf7]{gap:4px;min-width:0;display:grid}.organizer-item-copy strong[data-v-5ef05bf7],.organizer-item-copy small[data-v-5ef05bf7]{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.organizer-item-copy strong[data-v-5ef05bf7]{color:var(--color-ink);font-size:12px;font-weight:630}.organizer-item-copy small[data-v-5ef05bf7],.organizer-basis[data-v-5ef05bf7],.organizer-row time[data-v-5ef05bf7]{color:var(--color-muted);font-size:12px}.quadrant-chip[data-v-5ef05bf7],.review-chip[data-v-5ef05bf7]{white-space:nowrap;border-radius:999px;width:fit-content;padding:4px 7px;font-size:12px;font-weight:650}.quadrant-chip[data-v-5ef05bf7]{color:var(--color-muted);background:var(--color-surface-subtle);gap:1px;display:grid}.quadrant-chip small[data-v-5ef05bf7]{color:inherit;opacity:.75;font-size:7px;font-weight:520}.quadrant-chip.known_known[data-v-5ef05bf7]{color:var(--color-ink);background:var(--color-surface-subtle)}.quadrant-chip.known_unknown[data-v-5ef05bf7]{color:var(--color-warning);background:var(--color-warning-soft)}.quadrant-chip.unknown_known[data-v-5ef05bf7],.quadrant-chip.unknown_unknown[data-v-5ef05bf7]{color:var(--color-muted);background:var(--color-surface-subtle)}.review-chip.state-confirmed[data-v-5ef05bf7],.review-chip.state-agent_confirmed[data-v-5ef05bf7]{color:var(--color-success);background:var(--color-success-soft)}.review-chip.state-pending[data-v-5ef05bf7]{color:var(--color-warning);background:var(--color-warning-soft)}.organizer-basis[data-v-5ef05bf7]{overflow-wrap:anywhere;-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}@media (width<=1260px){.review-state-filter>span[data-v-5ef05bf7],.quadrant-filter>span[data-v-5ef05bf7],.organizer-result-summary[data-v-5ef05bf7]{display:none}.organizer-table-head[data-v-5ef05bf7],.organizer-row[data-v-5ef05bf7]{grid-template-columns:minmax(210px,1fr) 108px 104px minmax(140px,.8fr) 104px}.organizer-directory[data-v-5ef05bf7]{--organizer-list-min-width:760px}}@media (width<=1040px){.organizer-search[data-v-5ef05bf7]{flex-basis:100%;max-width:none}.review-state-filter[data-v-5ef05bf7],.quadrant-filter[data-v-5ef05bf7]{flex:auto}.organizer-toolbar-actions[data-v-5ef05bf7]{flex:1 0 100%;justify-content:flex-end}.organizer-layout.has-selection[data-v-5ef05bf7]{grid-template-columns:minmax(0,1fr) 280px}.organizer-table-head[data-v-5ef05bf7],.organizer-row[data-v-5ef05bf7]{grid-template-columns:minmax(210px,1fr) 108px 104px}.organizer-directory[data-v-5ef05bf7]{--organizer-list-min-width:470px}.organizer-table-head[data-v-5ef05bf7]>:nth-child(n+4),.organizer-basis[data-v-5ef05bf7],.organizer-row time[data-v-5ef05bf7]{display:none}}@media (width<=720px){.organizer-layout.has-selection[data-v-5ef05bf7]{grid-template-rows:minmax(160px,1fr) minmax(160px,.8fr);grid-template-columns:minmax(0,1fr)}.review-state-filter[data-v-5ef05bf7],.quadrant-filter[data-v-5ef05bf7]{flex-basis:100%;width:100%}}
@@ -1 +0,0 @@
1
- import{M as e,v as t,w as n}from"./i18n-b14l2pQA.js";import{t as r}from"./KnowledgeWorkspace-BtUjKTLb.js";var i=n({__name:`KnowledgePage`,setup(n){return(n,i)=>(e(),t(r))}});export{i as default};