fuli-context 0.7.3 → 0.7.4-beta.1

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 (107) hide show
  1. package/README.md +170 -18
  2. package/README.zh-CN.md +146 -12
  3. package/compose.graphiti.yml +2 -0
  4. package/dist/web/assets/{AboutPage-qeO_vm0T.js → AboutPage-CftRexSY.js} +1 -1
  5. package/dist/web/assets/{ConnectionsPage-DO0GR9Xg.js → ConnectionsPage-D5J91x6d.js} +1 -1
  6. package/dist/web/assets/{useMinimumLoadingDisplay-BpCyBeko.css → KnowledgeEditDialog-DWUV_NPp.css} +1 -1
  7. package/dist/web/assets/KnowledgeEditDialog-wotVahvr.js +1 -0
  8. package/dist/web/assets/{KnowledgeInspector-Bjhdu2mf.css → KnowledgeInspector--1NujtXW.css} +1 -1
  9. package/dist/web/assets/KnowledgeInspector-BzkW0mVs.js +1 -0
  10. package/dist/web/assets/KnowledgeOrganizerPage-BebUDiHt.js +1 -0
  11. package/dist/web/assets/KnowledgePage-OUT07aKH.js +1 -0
  12. package/dist/web/assets/KnowledgeWorkspace-1pHJ0MNZ.js +4 -0
  13. package/dist/web/assets/{OverviewPage-CmCcDCAs.js → OverviewPage-CHE6XhdS.js} +1 -1
  14. package/dist/web/assets/PersonalProfilePage-B7T09bow.css +1 -0
  15. package/dist/web/assets/PersonalProfilePage-CXXiabUy.js +1 -0
  16. package/dist/web/assets/PersonalProjectsPage-d2wYGW8n.js +1 -0
  17. package/dist/web/assets/PublicProjectsPage-hxLShtnZ.js +1 -0
  18. package/dist/web/assets/{ReviewPage-B3vnZ6gn.js → ReviewPage-DUeyu7E8.js} +1 -1
  19. package/dist/web/assets/{SearchableSelect-ih69qbcS.js → SearchableSelect-C5RiB5F8.js} +1 -1
  20. package/dist/web/assets/SettingsPage-BMuASSzQ.js +1 -0
  21. package/dist/web/assets/SettingsPage-CAfz4qiV.css +1 -0
  22. package/dist/web/assets/WritingTastePage-B9BCYIwQ.js +1 -0
  23. package/dist/web/assets/WritingTastePage-DSgvTH6x.css +1 -0
  24. package/dist/web/assets/{console-DE40hXGC.js → console-DMvHxKf9.js} +1 -1
  25. package/dist/web/assets/conversation-launcher-settings-Dnlcw7Rj.js +1 -0
  26. package/dist/web/assets/{i18n-CDxBs1sz.js → i18n-CWfd8Dtt.js} +1 -1
  27. package/dist/web/assets/{identity-BCxb1mcy.js → identity-C9mLdR8L.js} +1 -1
  28. package/dist/web/assets/index-F5e2sQ7p.js +2 -0
  29. package/dist/web/assets/{index-CCOGfZzE.css → index-X2j29j8i.css} +1 -1
  30. package/dist/web/assets/{model-CCMdt10Q.js → model-CsYAR8O3.js} +1 -1
  31. package/dist/web/assets/paths-CDREouhi.js +1 -0
  32. package/dist/web/assets/useApi-CROJJdhE-BLQiPVw0.js +1 -0
  33. package/dist/web/assets/vue-router-DN8x6iY1.js +1 -0
  34. package/dist/web/index.html +7 -6
  35. package/graph-provider/fuli_graph/app.py +238 -2
  36. package/graph-provider/fuli_graph/auth.py +18 -0
  37. package/graph-provider/fuli_graph/collaboration_context.py +253 -17
  38. package/graph-provider/fuli_graph/common_knowledge.py +6 -2
  39. package/graph-provider/fuli_graph/config.py +5 -0
  40. package/graph-provider/fuli_graph/graph_models.py +6 -0
  41. package/graph-provider/fuli_graph/graph_projection.py +14 -0
  42. package/graph-provider/fuli_graph/graph_query.py +27 -3
  43. package/graph-provider/fuli_graph/knowledge_management.py +19 -1
  44. package/graph-provider/fuli_graph/knowledge_search.py +11 -0
  45. package/graph-provider/fuli_graph/models.py +15 -2
  46. package/graph-provider/fuli_graph/personal_global_preference_models.py +234 -0
  47. package/graph-provider/fuli_graph/personal_global_preferences.py +1247 -0
  48. package/graph-provider/fuli_graph/project_action_models.py +22 -0
  49. package/graph-provider/fuli_graph/project_knowledge.py +121 -2
  50. package/graph-provider/fuli_graph/provider_values.py +24 -0
  51. package/graph-provider/fuli_graph/runtime.py +78 -0
  52. package/graph-provider/fuli_graph/search_projection.py +14 -1
  53. package/graph-provider/fuli_graph/store_knowledge.py +116 -2
  54. package/graph-provider/fuli_graph/workflow_candidate_models.py +168 -0
  55. package/graph-provider/fuli_graph/workflow_candidates.py +996 -0
  56. package/graph-provider/fuli_graph/workflow_observation_models.py +30 -0
  57. package/graph-provider/fuli_graph/workflow_observations.py +84 -0
  58. package/graph-provider/pyproject.toml +1 -1
  59. package/npm-shrinkwrap.json +18 -18
  60. package/package.json +4 -4
  61. package/skills/capturing-session-knowledge/SKILL.md +32 -5
  62. package/skills/flreview/SKILL.md +4 -3
  63. package/src/agent-tools/graph-definitions.js +136 -20
  64. package/src/agent-tools/graph-handlers.js +10 -4
  65. package/src/cli/command-registry.js +1 -1
  66. package/src/cli/local-runtime-command.js +69 -2
  67. package/src/graphiti/agent-knowledge-workflows.js +497 -16
  68. package/src/graphiti/collaboration-preference-projection.js +162 -0
  69. package/src/graphiti/federated-application.js +155 -161
  70. package/src/graphiti/federated-search-support.js +102 -0
  71. package/src/graphiti/knowledge-provider-mapping.js +15 -0
  72. package/src/graphiti/provider-client.js +162 -10
  73. package/src/graphiti/related-project-suggestions.js +109 -0
  74. package/src/graphiti/runtime-config.js +14 -0
  75. package/src/graphiti/source-marker.js +2 -2
  76. package/src/graphiti/user-taste-skill.js +241 -0
  77. package/src/graphiti/workflow-candidate-mapping.js +87 -0
  78. package/src/graphiti/workflow-observation.js +82 -0
  79. package/src/graphiti/writing-taste-profile-workflow.js +25 -0
  80. package/src/graphiti/writing-taste-profile.js +490 -0
  81. package/src/http/graph-api-router.js +15 -2
  82. package/src/mcp/context-resources.js +158 -0
  83. package/src/mcp/create-mcp-server.js +39 -5
  84. package/src/mcp/instructions.js +5 -7
  85. package/src/mcp/session-id.js +60 -0
  86. package/src/mcp/task-context-registry.js +15 -3
  87. package/src/mcp/tool-annotations.js +8 -1
  88. package/src/mcp/tool-result.js +28 -4
  89. package/src/server.js +0 -1
  90. package/src/setup/claude-code-config.js +17 -6
  91. package/src/setup/graph-runtime.js +20 -2
  92. package/src/system/runtime-settings.js +121 -2
  93. package/src/system/system-service.js +5 -1
  94. package/dist/web/assets/KnowledgeInspector-DEW5lA1m.js +0 -1
  95. package/dist/web/assets/KnowledgeOrganizerPage-BkM568Ld.js +0 -1
  96. package/dist/web/assets/KnowledgePage-BAT4aZIm.js +0 -1
  97. package/dist/web/assets/KnowledgeWorkspace-DyGtBz--.js +0 -4
  98. package/dist/web/assets/PersonalProfilePage-C42mwKN8.js +0 -1
  99. package/dist/web/assets/PersonalProfilePage-CdmEzyvZ.css +0 -1
  100. package/dist/web/assets/PersonalProjectsPage-BwaXR62K.js +0 -1
  101. package/dist/web/assets/PublicProjectsPage-egKBulOq.js +0 -1
  102. package/dist/web/assets/SettingsPage-C6ouU0sR.css +0 -1
  103. package/dist/web/assets/SettingsPage-oLE8mNs5.js +0 -1
  104. package/dist/web/assets/index-BzhNfzU_.js +0 -2
  105. package/dist/web/assets/paths-DwHeiGMT.js +0 -1
  106. package/dist/web/assets/useMinimumLoadingDisplay-HdI7XAmu.js +0 -1
  107. package/dist/web/assets/vue-router-Drfl1F8i.js +0 -1
@@ -1 +1 @@
1
- import{$ as e,D as t,E as n,F as r,G as i,O as ee,P as a,Q as o,R as s,T as c,_ as l,a as u,b as d,d as f,f as p,g as m,h,j as g,k as _,m as v,n as te,p as y,q as b,tt as x,u as S,x as C,y as w}from"./i18n-CDxBs1sz.js";import{a as T,i as E,n as D,r as O,t as k}from"./console-DE40hXGC.js";import{t as A}from"./_plugin-vue_export-helper-BDNMzG2s.js";import{t as j}from"./SearchableSelect-ih69qbcS.js";import{r as M,t as N}from"./identity-BCxb1mcy.js";var P=[`data-select-id`],F=[`aria-expanded`,`aria-controls`,`aria-label`,`aria-required`,`disabled`],I={class:`searchable-select-current`},L={class:`searchable-select-current-label`},R={key:0,class:`searchable-select-current-meta`},z=[`hidden`],ne={key:0,class:`searchable-select-search`},B=[`placeholder`,`aria-label`],V=[`id`],re=[`aria-selected`,`disabled`,`onClick`],ie={class:`searchable-select-option-copy`},ae={key:0},oe={key:1,class:`searchable-select-empty`},se=C({__name:`SearchableMultiSelect`,props:{modelValue:{},options:{},label:{},controlId:{default:void 0},placeholder:{default:void 0},searchPlaceholder:{default:void 0},searchable:{type:Boolean,default:void 0},disabled:{type:Boolean,default:!1},required:{type:Boolean,default:!1}},emits:[`update:modelValue`,`change`],setup(i,{emit:c}){let d=i,h=c,C=b(null),w=b(null),T=b(null),E=b(null),D=b(!1),O=b(!1),k=b(``),A=a().replace(/[^A-Za-z0-9_-]/g,``),j=y(()=>`${d.controlId||`searchable-multi-select-${A}`}-options`),M=y(()=>new Set(d.modelValue)),N=y(()=>d.options.filter(({value:e})=>M.value.has(e))),se=y(()=>N.value.length===0?d.placeholder??u(`common.searchableSelect.placeholder`):N.value.length===1?N.value[0].label:u(`common.searchableSelect.selectedCount`,{count:N.value.length})),ce=y(()=>d.searchPlaceholder??u(`common.searchableSelect.searchPlaceholder`)),H=y(()=>d.searchable??d.options.length>5),U=y(()=>{let e=te(),t=k.value.trim().toLocaleLowerCase(e);return t?d.options.filter(n=>[n.label,n.value,n.meta,n.search].filter(Boolean).join(` `).toLocaleLowerCase(e).includes(t)):d.options});r(()=>d.disabled,e=>{e&&G()}),ee(()=>document.addEventListener(`pointerdown`,me)),t(()=>document.removeEventListener(`pointerdown`,me));async function W(){D.value?G():await le()}async function le(){d.disabled||(k.value=``,_e(),D.value=!0,await n(),H.value?T.value?.focus():ge()?.focus())}function G({restoreFocus:e=!1}={}){D.value=!1,O.value=!1,k.value=``,e&&n(()=>w.value?.focus())}function ue(e){if(d.disabled||e.disabled)return;let t=M.value.has(e.value)?d.modelValue.filter(t=>t!==e.value):[...d.modelValue,e.value];h(`update:modelValue`,t),h(`change`,t)}function de(e){[`ArrowDown`,`Enter`,` `].includes(e.key)&&(e.preventDefault(),D.value&&[`Enter`,` `].includes(e.key)?G():le())}function fe(e){if(e.key===`Escape`){e.preventDefault(),G({restoreFocus:!0});return}if(e.key===`ArrowDown`){e.preventDefault(),q()?.focus();return}e.key===`Enter`&&(e.preventDefault(),q()?.click())}function pe(e){if(e.key===`Escape`){e.preventDefault(),G({restoreFocus:!0});return}if(![`ArrowDown`,`ArrowUp`,`Home`,`End`].includes(e.key))return;e.preventDefault();let t=K(),n=t.indexOf(e.currentTarget);t[e.key===`Home`?0:e.key===`End`?t.length-1:e.key===`ArrowDown`?Math.min(t.length-1,n+1):Math.max(0,n-1)]?.focus()}function me(e){D.value&&!C.value?.contains(e.target)&&G()}function he(e){let t=e.relatedTarget;t&&C.value?.contains(t)||queueMicrotask(()=>{D.value&&!C.value?.contains(document.activeElement)&&G()})}function K(){return[...E.value?.querySelectorAll(`.searchable-select-option:not(:disabled)`)??[]]}function q(){return K()[0]??null}function ge(){return K().find(e=>e.getAttribute(`aria-selected`)===`true`)??q()}function _e(){let e=w.value?.getBoundingClientRect();O.value=!!(e&&window.innerHeight-e.bottom<270&&e.top>270)}return(t,n)=>(_(),l(`div`,{ref_key:`root`,ref:C,class:e([`searchable-select searchable-multi-select`,{open:D.value,"open-up":O.value,disabled:i.disabled}]),"data-select-id":i.controlId,onFocusout:he},[v(`button`,{ref_key:`trigger`,ref:w,type:`button`,class:`searchable-select-trigger`,role:`combobox`,"aria-haspopup":`listbox`,"aria-expanded":D.value,"aria-controls":j.value,"aria-label":i.label,"aria-required":i.required,disabled:i.disabled,onPointerdown:n[0]||=f(()=>{},[`stop`]),onClick:f(W,[`stop`]),onKeydown:de},[v(`span`,I,[v(`span`,L,x(se.value),1),N.value.length>1?(_(),l(`small`,R,x(N.value.map(({label:e})=>e).join(` · `)),1)):m(``,!0)]),n[3]||=v(`i`,{class:`searchable-select-arrow`,"aria-hidden":`true`},null,-1)],40,F),v(`div`,{class:`searchable-select-panel`,hidden:!D.value},[H.value?(_(),l(`div`,ne,[s(v(`input`,{ref_key:`searchInput`,ref:T,"onUpdate:modelValue":n[1]||=e=>k.value=e,type:`search`,autocomplete:`off`,placeholder:ce.value,"aria-label":o(u)(`common.searchableSelect.searchAria`,{label:i.label}),onKeydown:fe},null,40,B),[[S,k.value]])])):m(``,!0),v(`div`,{id:j.value,ref_key:`optionsList`,ref:E,class:`searchable-select-options`,role:`listbox`,"aria-multiselectable":`true`},[(_(!0),l(p,null,g(U.value,e=>(_(),l(`button`,{key:e.value,type:`button`,class:`searchable-select-option`,role:`option`,"aria-selected":M.value.has(e.value),disabled:e.disabled,onMousedown:n[2]||=f(()=>{},[`prevent`]),onClick:t=>ue(e),onKeydown:pe},[v(`span`,ie,[v(`strong`,null,x(e.label),1),e.meta?(_(),l(`small`,ae,x(e.meta),1)):m(``,!0)]),n[4]||=v(`i`,{class:`searchable-select-check`,"aria-hidden":`true`},null,-1)],40,re))),128))],8,V),U.value.length===0?(_(),l(`p`,oe,x(o(u)(`common.searchableSelect.noMatches`)),1)):m(``,!0)],8,z)],42,P))}}),ce={class:`text-field`},H=[`id`,`value`,`name`,`placeholder`,`disabled`,`required`,`rows`],U=[`id`,`value`,`name`,`type`,`placeholder`,`disabled`,`required`],W=A(C({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)=>(_(),l(`label`,ce,[v(`span`,null,x(e.label),1),e.multiline?(_(),l(`textarea`,c({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,H)):(_(),l(`input`,c({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,U))]))}}),[[`__scopeId`,`data-v-6c32205a`]]),le={class:`view connections-view`},G={class:`connection-intro`},ue=[`aria-label`],de=[`data-status`],fe={class:`service-state`},pe=[`data-status`],me={class:`connection-title-row`},he={class:`service-state`},K={class:`external-knowledge-section`},q={class:`section-title section-title-with-help`},ge=[`href`,`aria-label`,`title`],_e={class:`external-binding-count`},ve={class:`external-binding-list`},ye=[`data-status`],be={class:`external-binding-copy`},xe={class:`external-binding-targets`},Se=[`data-status`],Ce={key:0},we={key:1},Te={class:`external-binding-actions`},Ee=[`disabled`,`onClick`],De=[`disabled`,`onClick`],Oe=[`disabled`,`onClick`],ke=[`disabled`,`onClick`],Ae={key:0,class:`external-binding-editor`},je={class:`external-target-mode-list`},Me={class:`external-binding-editor-actions`},Ne=[`disabled`],Pe=[`disabled`,`onClick`],Fe={key:0,class:`compact-empty`},Ie={class:`wide-field`},Le={class:`trusted-code-badge`},Re=[`disabled`],ze={key:0,class:`conflict-policy-section`},Be={class:`section-title section-title-with-help`},Ve=[`href`,`aria-label`,`title`],He={class:`conflict-policy-controls`},Ue={key:1,class:`connection-subscriptions`},We={class:`section-title`},Ge={class:`subscription-list`},Ke=[`onClick`],qe={key:0,class:`empty-state`},Je={type:`submit`},Ye=C({__name:`ConnectionsPage`,setup(e){let t=k(),n=b(``),a=b([]),s=b([]),c=b(!1),S=b(null),C=b([]),A=b({}),P=b(``),F=b(`ask_human`),I=b(!1),L=i({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:`{}`}),R=y(()=>t.state?.providers?.personal?.status===`ready`),z=y(()=>t.state?.providers?.workspaces??[]),ne=y(()=>z.value.filter(({status:e})=>e===`ready`).length),B=y(()=>t.state?.subscriptions??[]),V=y(()=>t.state?.personalProjects??[]),re=y(()=>Ct(`connect-external-knowledge`)),ie=y(()=>Ct(`external-knowledge-conflict-policy`)),ae=y(()=>new Set(B.value.map(({provider_url:e,project_id:t})=>`${e}::${t}`))),oe=y(()=>(t.state?.projects??[]).filter(e=>!ae.value.has($e(e)))),ce=y(()=>oe.value.map(e=>({value:$e(e),label:e.name,meta:`#${N(e.id,26)}`,search:M(e.id)}))),H=y(()=>a.value.map(e=>({value:e.type,label:e.name,meta:e.description}))),U=y(()=>V.value.map(e=>({value:e.project_id,label:e.profile.name,meta:`#${N(e.project_id,26)}`,search:M(e.project_id)}))),Ye=y(()=>[{value:`hybrid`,label:u(`pages.connections.mode.hybrid`),disabled:!Y(L.connectorType,`hybrid`)},{value:`mirror`,label:u(`pages.connections.mode.mirror`),disabled:!Y(L.connectorType,`mirror`)},{value:`live`,label:u(`pages.connections.mode.live`),disabled:!Y(L.connectorType,`live`)}]),Xe=y(()=>[{value:`http`,label:`Streamable HTTP`},{value:`stdio`,label:`stdio`}]),Ze=y(()=>[{value:`cn`,label:`Feishu`},{value:`global`,label:`Lark`}]),Qe=y(()=>[{value:`ask_human`,label:u(`pages.connections.askHuman`)},{value:`agent_decide`,label:u(`pages.connections.agentDecide`)}]);r(V,e=>{let t=new Set(e.map(({project_id:e})=>e)),n=e[0]?.project_id??``;L.personalProjectIds=L.personalProjectIds.filter(e=>t.has(e)),!L.personalProjectIds.length&&n&&(L.personalProjectIds=[n]),C.value=C.value.filter(e=>t.has(e)),t.has(P.value)||(P.value=n,n&&pt())},{immediate:!0}),r(()=>L.connectorType,e=>{Y(e,L.mode)||(L.mode=gt(e))}),ee(async()=>{await J(),P.value&&await pt()});function $e(e){return`${e.providerUrl}::${e.id}`}async function et(){let e=oe.value.find(e=>$e(e)===n.value);if(e)try{await T(`/api/subscriptions`,{personalSpaceId:t.activePersonalSpace?.id,projectId:e.id,providerUrl:e.providerUrl,projectName:e.name}),n.value=``,t.notify(u(`pages.connections.subscribed`,{name:e.name})),await t.refresh()}catch(e){t.reportError(e)}}async function tt(e){try{let n=new URLSearchParams({personalSpaceId:t.activePersonalSpace?.id??``,providerUrl:e.provider_url});await D(`/api/subscriptions/${encodeURIComponent(e.project_id)}?${n}`),t.notify(u(`pages.connections.unsubscribed`,{name:e.project_name??e.project_id})),await t.refresh()}catch(e){t.reportError(e)}}async function J(){try{let[e,t]=await Promise.all([O(`/api/external-knowledge/connectors`),O(`/api/external-knowledge/bindings`)]);a.value=e,s.value=t}catch(e){t.reportError(e)}}async function nt(){let e=t.activePersonalSpace?.id;if(!(!e||!L.personalProjectIds.length)){c.value=!0;try{let{connectorConfig:n,source:r}=rt();await T(`/api/external-knowledge/bindings`,{name:L.name.trim(),connectorType:L.connectorType,connectorConfig:n,source:r,targets:L.personalProjectIds.map(t=>({personalSpaceId:e,personalProjectId:t,mode:L.mode}))}),t.notify(u(`pages.connections.externalCreated`,{name:L.name.trim()})),L.name=``,await J()}catch(e){t.reportError(e)}finally{c.value=!1}}}function rt(){if(L.connectorType===`notion`)return{connectorConfig:{tokenEnv:$(L.notionTokenEnv,`Notion token env`)},source:{pageIds:Z(L.notionPageIds),dataSourceIds:Z(L.notionDataSourceIds)}};if(L.connectorType===`feishu`)return{connectorConfig:{accessTokenEnv:$(L.feishuTokenEnv,`Feishu token env`),region:L.feishuRegion},source:Q({spaceId:L.feishuSpaceId.trim(),rootNodeToken:L.feishuRootNodeToken.trim(),nodeTokens:Z(L.feishuNodeTokens),webBaseUrl:L.feishuWebBaseUrl.trim()})};if(L.connectorType===`retrieval_api`){let e=Number(L.retrievalScoreThreshold);if(!Number.isFinite(e)||e<0||e>1)throw TypeError(u(`pages.connections.scoreThresholdInvalid`));return{connectorConfig:Q({url:$(L.retrievalUrl,`Retrieval API URL`),tokenEnv:L.retrievalTokenEnv.trim(),scoreThreshold:e}),source:{knowledgeIds:St(L.retrievalKnowledgeIds,`Knowledge IDs`)}}}if(L.connectorType===`custom`){let e=JSON.parse(L.customSourceJson);if(!e||typeof e!=`object`||Array.isArray(e))throw TypeError(u(`pages.connections.customSourceObject`));return{connectorConfig:{module:$(L.customModule,`Custom connector module`),environmentNames:Z(L.customEnvironmentNames)},source:e}}return{connectorConfig:L.mcpTransport===`stdio`?Q({transport:`stdio`,command:L.mcpCommand.trim(),args:Z(L.mcpArgs)}):Q({transport:`http`,url:$(L.mcpUrl,`MCP URL`),tokenEnv:L.mcpTokenEnv.trim()}),source:Q({resourceUriPrefix:L.mcpResourcePrefix.trim()})}}async function it(e){await ot(e,`check`)}async function at(e){await ot(e,`sync`)}async function ot(e,n){c.value=!0;try{let r=await T(`/api/external-knowledge/bindings/${encodeURIComponent(e.id)}/${n}`,{});t.notify(u(n===`sync`&&r.skippedCredentials?`pages.connections.externalSyncedWithSkipped`:n===`sync`?`pages.connections.externalSynced`:`pages.connections.externalChecked`,{name:e.name,count:r.skippedCredentials??0})),await J()}catch(e){t.reportError(e)}finally{c.value=!1}}async function st(e){c.value=!0;try{await D(`/api/external-knowledge/bindings/${encodeURIComponent(e.id)}`),t.notify(u(`pages.connections.externalDeleted`,{name:e.name})),await J()}catch(e){t.reportError(e)}finally{c.value=!1}}function ct(e){let t=X(e);S.value=e.id,C.value=t.map(({personalProjectId:e})=>e),A.value=Object.fromEntries(t.map(({personalProjectId:e,mode:t})=>[e,t]))}function lt(){S.value=null,C.value=[],A.value={}}function ut(e){let t=s.value.find(({id:e})=>e===S.value);if(!t)return;let n=A.value,r=gt(t.connectorType);A.value=Object.fromEntries(e.map(e=>[e,n[e]??t.mode??r]))}function dt(e,t){A.value={...A.value,[e]:t}}async function ft(e){let n=t.activePersonalSpace?.id;if(!(!n||!C.value.length)){c.value=!0;try{await E(`/api/external-knowledge/bindings/${encodeURIComponent(e.id)}/targets`,{targets:C.value.map(t=>({personalSpaceId:n,personalProjectId:t,mode:A.value[t]??e.mode}))}),t.notify(u(`pages.connections.projectsUpdated`,{name:e.name})),lt(),await J()}catch(e){t.reportError(e)}finally{c.value=!1}}}async function pt(){if(P.value)try{let e=await O(`/api/external-knowledge/conflict-policy?${new URLSearchParams({personalProjectId:P.value})}`);F.value=e.mode}catch(e){t.reportError(e)}}async function mt(){let e=t.activePersonalSpace?.id;if(!(!e||!P.value)){I.value=!0;try{let n=await E(`/api/external-knowledge/conflict-policy?${new URLSearchParams({personalProjectId:P.value})}`,{personalSpaceId:e,personalProjectId:P.value,mode:F.value});F.value=n.mode,t.notify(u(`pages.connections.conflictSaved`))}catch(e){t.reportError(e)}finally{I.value=!1}}}function ht(e){return a.value.find(t=>t.type===e)?.name??e}function Y(e,t){let n=a.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 gt(e){return[`hybrid`,`mirror`,`live`].find(t=>Y(e,t))??`live`}function _t(e){return[`hybrid`,`mirror`,`live`].map(t=>({value:t,label:u(`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 vt(e){return X(e).some(({mode:e})=>e!==`live`)}function yt(e){return V.value.find(({project_id:t})=>t===e)?.profile.name??e}function bt(e){return X(e).find(({sync:e})=>e?.error)?.sync?.error??e.sync?.error}function xt(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 St(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 Ct(e){return`https://github.com/JevonsCode/fuli/blob/main/${te()===`zh-CN`?`README.zh-CN.md`:`README.md`}#${e}`}return(e,r)=>(_(),l(`section`,le,[v(`div`,G,[v(`h3`,null,x(o(u)(`pages.connections.title`)),1)]),v(`div`,{class:`service-connection-grid`,"aria-label":o(u)(`pages.connections.statusAria`)},[v(`article`,{class:`service-connection-card`,"data-status":R.value?`ready`:`error`},[v(`header`,null,[r[30]||=v(`span`,{class:`service-connection-icon local`,"aria-hidden":`true`},[v(`span`,{class:`nav-icon nav-icon-personal-project`})],-1),v(`div`,null,[v(`h3`,null,x(o(u)(`pages.connections.localGraphiti`)),1)]),v(`span`,fe,x(R.value?o(u)(`common.status.connected`):o(u)(`common.status.connectionError`)),1)]),v(`dl`,null,[v(`div`,null,[v(`dt`,null,x(o(u)(`pages.connections.storage`)),1),r[31]||=v(`dd`,null,`Neo4j`,-1)]),v(`div`,null,[v(`dt`,null,x(o(u)(`pages.connections.purpose`)),1),v(`dd`,null,x(o(u)(`pages.connections.localPurpose`)),1)])])],8,de),v(`article`,{class:`service-connection-card`,"data-status":o(t).publicRuntimeStatus},[v(`header`,null,[r[33]||=v(`span`,{class:`service-connection-icon public`,"aria-hidden":`true`},[v(`span`,{class:`nav-icon nav-icon-public-project`})],-1),v(`div`,me,[v(`h3`,null,x(o(u)(`pages.connections.publicService`)),1),r[32]||=v(`span`,{class:`feature-badge beta`},`BETA`,-1)]),v(`span`,he,x(o(t).publicRuntimeStatus===`ready`?o(u)(`common.status.connected`):o(t).publicRuntimeStatus===`error`?o(u)(`common.status.connectionError`):o(u)(`common.status.notConnected`)),1)]),v(`dl`,null,[v(`div`,null,[v(`dt`,null,x(o(u)(`pages.connections.currentStatus`)),1),v(`dd`,null,x(o(t).publicRuntimeStatus===`ready`?o(u)(`pages.connections.sharedServicesReady`,{count:ne.value||z.value.length}):o(u)(`pages.connections.notAvailable`)),1)]),v(`div`,null,[v(`dt`,null,x(o(u)(`pages.connections.purpose`)),1),v(`dd`,null,x(o(u)(`pages.connections.publicPurpose`)),1)])])],8,pe)],8,ue),v(`section`,K,[v(`div`,q,[v(`h3`,null,x(o(u)(`pages.connections.externalTitle`)),1),v(`a`,{class:`section-help-link`,"data-testid":`external-knowledge-help`,href:re.value,"aria-label":o(u)(`pages.connections.externalHelp`),title:o(u)(`pages.connections.externalHelp`),target:`_blank`,rel:`noreferrer`},`?`,8,ge),v(`span`,_e,x(o(u)(`pages.connections.bindingCount`,{count:s.value.length})),1)]),v(`div`,ve,[(_(!0),l(p,null,g(s.value,e=>(_(),l(`article`,{key:e.id,class:`external-binding-row`,"data-status":e.status},[r[34]||=v(`i`,{"aria-hidden":`true`},null,-1),v(`div`,be,[v(`strong`,null,x(e.name),1),v(`span`,null,x(ht(e.connectorType)),1),v(`div`,xe,[v(`b`,null,x(o(u)(`pages.connections.boundTo`)),1),(_(!0),l(p,null,g(X(e),e=>(_(),l(`span`,{key:e.id,class:`external-binding-target-chip`,"data-status":e.status},x(yt(e.personalProjectId))+` · `+x(o(u)(`pages.connections.mode.${e.mode}`)),9,Se))),128))]),bt(e)?(_(),l(`small`,Ce,x(bt(e)),1)):xt(e)?(_(),l(`small`,we,x(o(u)(`pages.connections.credentialsSkipped`,{count:xt(e)})),1)):m(``,!0)]),v(`div`,Te,[v(`button`,{class:`quiet-button`,type:`button`,disabled:c.value,onClick:t=>it(e)},x(o(u)(`pages.connections.check`)),9,Ee),v(`button`,{class:`quiet-button external-sync-action`,type:`button`,disabled:c.value||!vt(e),onClick:t=>at(e)},x(o(u)(`pages.connections.sync`)),9,De),v(`button`,{class:`quiet-button`,type:`button`,disabled:c.value,onClick:t=>ct(e)},x(o(u)(`pages.connections.manageProjects`)),9,Oe),v(`button`,{class:`quiet-button danger`,type:`button`,disabled:c.value,onClick:t=>st(e)},x(o(u)(`pages.connections.disconnect`)),9,ke)]),S.value===e.id?(_(),l(`div`,Ae,[v(`label`,null,[v(`span`,null,x(o(u)(`pages.connections.targetProjects`)),1),d(se,{modelValue:C.value,"onUpdate:modelValue":r[0]||=e=>C.value=e,"control-id":`external-projects-${e.id}`,label:o(u)(`pages.connections.targetProjects`),options:U.value,disabled:c.value,required:``,searchable:``,onChange:ut},null,8,[`modelValue`,`control-id`,`label`,`options`,`disabled`])]),v(`div`,je,[(_(!0),l(p,null,g(C.value,t=>(_(),l(`div`,{key:t,class:`external-target-mode-row`},[v(`span`,null,x(yt(t)),1),d(j,{"model-value":A.value[t]??e.mode,"control-id":`external-target-mode-${e.id}-${t}`,label:o(u)(`pages.connections.bindingMode`),options:_t(e.connectorType),disabled:c.value,"onUpdate:modelValue":e=>dt(t,e)},null,8,[`model-value`,`control-id`,`label`,`options`,`disabled`,`onUpdate:modelValue`])]))),128))]),v(`div`,Me,[v(`button`,{class:`quiet-button`,type:`button`,disabled:c.value,onClick:lt},x(o(u)(`common.actions.cancel`)),9,Ne),v(`button`,{class:`primary-action`,type:`button`,disabled:c.value||!C.value.length,onClick:t=>ft(e)},x(o(u)(`pages.connections.saveProjects`)),9,Pe)])])):m(``,!0)],8,ye))),128)),s.value.length?m(``,!0):(_(),l(`div`,Fe,x(o(u)(`pages.connections.noExternalBindings`)),1))]),v(`form`,{class:`external-binding-form`,onSubmit:f(nt,[`prevent`])},[d(W,{modelValue:L.name,"onUpdate:modelValue":r[1]||=e=>L.name=e,label:o(u)(`pages.connections.bindingName`),"data-testid":`external-name`,required:``},null,8,[`modelValue`,`label`]),v(`label`,null,[v(`span`,null,x(o(u)(`pages.connections.connector`)),1),d(j,{modelValue:L.connectorType,"onUpdate:modelValue":r[2]||=e=>L.connectorType=e,"control-id":`external-connector`,label:o(u)(`pages.connections.connector`),options:H.value,disabled:c.value,required:``},null,8,[`modelValue`,`label`,`options`,`disabled`])]),v(`label`,null,[v(`span`,null,x(o(u)(`pages.connections.targetProjects`)),1),d(se,{modelValue:L.personalProjectIds,"onUpdate:modelValue":r[3]||=e=>L.personalProjectIds=e,"control-id":`external-projects`,label:o(u)(`pages.connections.targetProjects`),options:U.value,disabled:c.value,required:``,searchable:``},null,8,[`modelValue`,`label`,`options`,`disabled`])]),v(`label`,null,[v(`span`,null,x(o(u)(`pages.connections.bindingMode`)),1),d(j,{modelValue:L.mode,"onUpdate:modelValue":r[4]||=e=>L.mode=e,"control-id":`external-binding-mode`,label:o(u)(`pages.connections.bindingMode`),options:Ye.value,disabled:c.value,required:``},null,8,[`modelValue`,`label`,`options`,`disabled`])]),L.connectorType===`mcp`?(_(),l(p,{key:0},[v(`label`,null,[v(`span`,null,x(o(u)(`pages.connections.transport`)),1),d(j,{modelValue:L.mcpTransport,"onUpdate:modelValue":r[5]||=e=>L.mcpTransport=e,"control-id":`external-mcp-transport`,label:o(u)(`pages.connections.transport`),options:Xe.value,disabled:c.value,required:``},null,8,[`modelValue`,`label`,`options`,`disabled`])]),L.mcpTransport===`http`?(_(),h(W,{key:0,modelValue:L.mcpUrl,"onUpdate:modelValue":r[6]||=e=>L.mcpUrl=e,label:`MCP URL`,"data-testid":`mcp-url`,type:`url`,required:``},null,8,[`modelValue`])):(_(),h(W,{key:1,modelValue:L.mcpCommand,"onUpdate:modelValue":r[7]||=e=>L.mcpCommand=e,label:o(u)(`pages.connections.command`),required:``},null,8,[`modelValue`,`label`])),L.mcpTransport===`stdio`?(_(),h(W,{key:2,modelValue:L.mcpArgs,"onUpdate:modelValue":r[8]||=e=>L.mcpArgs=e,label:o(u)(`pages.connections.arguments`)},null,8,[`modelValue`,`label`])):(_(),h(W,{key:3,modelValue:L.mcpTokenEnv,"onUpdate:modelValue":r[9]||=e=>L.mcpTokenEnv=e,label:o(u)(`pages.connections.tokenEnv`),"data-testid":`mcp-token-env`},null,8,[`modelValue`,`label`])),d(W,{modelValue:L.mcpResourcePrefix,"onUpdate:modelValue":r[10]||=e=>L.mcpResourcePrefix=e,label:o(u)(`pages.connections.resourcePrefix`),"data-testid":`mcp-resource-prefix`},null,8,[`modelValue`,`label`])],64)):L.connectorType===`notion`?(_(),l(p,{key:1},[d(W,{modelValue:L.notionTokenEnv,"onUpdate:modelValue":r[11]||=e=>L.notionTokenEnv=e,label:o(u)(`pages.connections.tokenEnv`),required:``},null,8,[`modelValue`,`label`]),d(W,{modelValue:L.notionPageIds,"onUpdate:modelValue":r[12]||=e=>L.notionPageIds=e,label:`Page IDs`},null,8,[`modelValue`]),d(W,{modelValue:L.notionDataSourceIds,"onUpdate:modelValue":r[13]||=e=>L.notionDataSourceIds=e,label:`Data Source IDs`},null,8,[`modelValue`])],64)):L.connectorType===`feishu`?(_(),l(p,{key:2},[d(W,{modelValue:L.feishuTokenEnv,"onUpdate:modelValue":r[14]||=e=>L.feishuTokenEnv=e,label:o(u)(`pages.connections.tokenEnv`),required:``},null,8,[`modelValue`,`label`]),v(`label`,null,[v(`span`,null,x(o(u)(`pages.connections.region`)),1),d(j,{modelValue:L.feishuRegion,"onUpdate:modelValue":r[15]||=e=>L.feishuRegion=e,"control-id":`external-feishu-region`,label:o(u)(`pages.connections.region`),options:Ze.value,disabled:c.value,required:``},null,8,[`modelValue`,`label`,`options`,`disabled`])]),d(W,{modelValue:L.feishuSpaceId,"onUpdate:modelValue":r[16]||=e=>L.feishuSpaceId=e,label:`Space ID`},null,8,[`modelValue`]),d(W,{modelValue:L.feishuRootNodeToken,"onUpdate:modelValue":r[17]||=e=>L.feishuRootNodeToken=e,label:`Root Node Token`},null,8,[`modelValue`]),d(W,{modelValue:L.feishuNodeTokens,"onUpdate:modelValue":r[18]||=e=>L.feishuNodeTokens=e,label:`Node Tokens`},null,8,[`modelValue`]),d(W,{modelValue:L.feishuWebBaseUrl,"onUpdate:modelValue":r[19]||=e=>L.feishuWebBaseUrl=e,label:`Web URL`,type:`url`},null,8,[`modelValue`])],64)):L.connectorType===`retrieval_api`?(_(),l(p,{key:3},[d(W,{modelValue:L.retrievalUrl,"onUpdate:modelValue":r[20]||=e=>L.retrievalUrl=e,label:o(u)(`pages.connections.retrievalUrl`),type:`url`,required:``},null,8,[`modelValue`,`label`]),d(W,{modelValue:L.retrievalTokenEnv,"onUpdate:modelValue":r[21]||=e=>L.retrievalTokenEnv=e,label:o(u)(`pages.connections.tokenEnv`)},null,8,[`modelValue`,`label`]),d(W,{modelValue:L.retrievalKnowledgeIds,"onUpdate:modelValue":r[22]||=e=>L.retrievalKnowledgeIds=e,label:o(u)(`pages.connections.knowledgeIds`),required:``},null,8,[`modelValue`,`label`]),d(W,{modelValue:L.retrievalScoreThreshold,"onUpdate:modelValue":r[23]||=e=>L.retrievalScoreThreshold=e,label:o(u)(`pages.connections.scoreThreshold`),inputmode:`decimal`,required:``},null,8,[`modelValue`,`label`])],64)):(_(),l(p,{key:4},[d(W,{modelValue:L.customModule,"onUpdate:modelValue":r[24]||=e=>L.customModule=e,label:o(u)(`pages.connections.module`),required:``},null,8,[`modelValue`,`label`]),d(W,{modelValue:L.customEnvironmentNames,"onUpdate:modelValue":r[25]||=e=>L.customEnvironmentNames=e,label:o(u)(`pages.connections.environmentNames`)},null,8,[`modelValue`,`label`]),v(`div`,Ie,[d(W,{modelValue:L.customSourceJson,"onUpdate:modelValue":r[26]||=e=>L.customSourceJson=e,label:o(u)(`pages.connections.sourceJson`),multiline:``,required:``},null,8,[`modelValue`,`label`])]),v(`span`,Le,x(o(u)(`pages.connections.trustedCode`)),1)],64)),v(`button`,{class:`primary-action external-create-action`,type:`submit`,disabled:c.value||!V.value.length||!L.personalProjectIds.length},[r[35]||=v(`span`,{class:`external-create-action-icon`,"aria-hidden":`true`},null,-1),v(`span`,null,x(o(u)(`pages.connections.connect`)),1)],8,Re)],32)]),V.value.length?(_(),l(`section`,ze,[v(`div`,Be,[v(`h3`,null,x(o(u)(`pages.connections.conflictTitle`)),1),v(`a`,{class:`section-help-link`,"data-testid":`conflict-policy-help`,href:ie.value,"aria-label":o(u)(`pages.connections.conflictHelp`),title:o(u)(`pages.connections.conflictHelp`),target:`_blank`,rel:`noreferrer`},`?`,8,Ve)]),v(`div`,He,[v(`label`,null,[v(`span`,null,x(o(u)(`pages.connections.targetProject`)),1),d(j,{modelValue:P.value,"onUpdate:modelValue":r[27]||=e=>P.value=e,"control-id":`external-conflict-project`,label:o(u)(`pages.connections.targetProject`),options:U.value,disabled:I.value,required:``,onChange:pt},null,8,[`modelValue`,`label`,`options`,`disabled`])]),v(`label`,null,[v(`span`,null,x(o(u)(`pages.connections.conflictAction`)),1),d(j,{modelValue:F.value,"onUpdate:modelValue":r[28]||=e=>F.value=e,"control-id":`external-conflict-mode`,label:o(u)(`pages.connections.conflictAction`),options:Qe.value,disabled:I.value,required:``,onChange:mt},null,8,[`modelValue`,`label`,`options`,`disabled`])])])])):m(``,!0),o(t).state?.capabilities?.subscribeProject?(_(),l(`section`,Ue,[v(`div`,We,[v(`h3`,null,[w(x(o(u)(`pages.connections.subscriptionsTitle`))+` `,1),r[36]||=v(`span`,{class:`feature-badge beta`},`BETA`,-1)])]),v(`div`,Ge,[(_(!0),l(p,null,g(B.value,e=>(_(),l(`div`,{key:`${e.provider_url}:${e.project_id}`,class:`subscription-row`},[r[37]||=v(`span`,null,`↗`,-1),v(`div`,null,[v(`strong`,null,x(e.project_name??e.project_id),1),v(`span`,null,x(o(u)(`pages.connections.sharedProject`)),1)]),v(`button`,{class:`secondary-action subscription-action`,type:`button`,onClick:t=>tt(e)},x(o(u)(`pages.connections.unsubscribe`)),9,Ke)]))),128)),B.value.length?m(``,!0):(_(),l(`div`,qe,x(o(u)(`pages.connections.noSubscriptions`)),1))]),v(`form`,{class:`subscription-form`,onSubmit:f(et,[`prevent`])},[d(j,{modelValue:n.value,"onUpdate:modelValue":r[29]||=e=>n.value=e,options:ce.value,label:o(u)(`pages.connections.sharedProjectLabel`),placeholder:o(u)(`pages.connections.choosePublicProject`),searchable:``,required:``},null,8,[`modelValue`,`options`,`label`,`placeholder`]),v(`button`,Je,x(o(u)(`pages.connections.subscribe`)),1)],32)])):m(``,!0)]))}});export{Ye as default};
1
+ import{$ as e,D as t,E as n,F as r,G as i,O as ee,P as a,Q as o,R as s,T as c,_ as l,a as u,b as d,d as f,f as p,g as m,h,j as g,k as _,m as v,n as te,p as y,q as b,tt as x,u as S,x as C,y as w}from"./i18n-CWfd8Dtt.js";import{a as T,i as E,n as D,r as O,t as k}from"./console-DMvHxKf9.js";import{t as A}from"./_plugin-vue_export-helper-BDNMzG2s.js";import{t as j}from"./SearchableSelect-C5RiB5F8.js";import{r as M,t as N}from"./identity-C9mLdR8L.js";var P=[`data-select-id`],F=[`aria-expanded`,`aria-controls`,`aria-label`,`aria-required`,`disabled`],I={class:`searchable-select-current`},L={class:`searchable-select-current-label`},R={key:0,class:`searchable-select-current-meta`},z=[`hidden`],ne={key:0,class:`searchable-select-search`},B=[`placeholder`,`aria-label`],V=[`id`],re=[`aria-selected`,`disabled`,`onClick`],ie={class:`searchable-select-option-copy`},ae={key:0},oe={key:1,class:`searchable-select-empty`},se=C({__name:`SearchableMultiSelect`,props:{modelValue:{},options:{},label:{},controlId:{default:void 0},placeholder:{default:void 0},searchPlaceholder:{default:void 0},searchable:{type:Boolean,default:void 0},disabled:{type:Boolean,default:!1},required:{type:Boolean,default:!1}},emits:[`update:modelValue`,`change`],setup(i,{emit:c}){let d=i,h=c,C=b(null),w=b(null),T=b(null),E=b(null),D=b(!1),O=b(!1),k=b(``),A=a().replace(/[^A-Za-z0-9_-]/g,``),j=y(()=>`${d.controlId||`searchable-multi-select-${A}`}-options`),M=y(()=>new Set(d.modelValue)),N=y(()=>d.options.filter(({value:e})=>M.value.has(e))),se=y(()=>N.value.length===0?d.placeholder??u(`common.searchableSelect.placeholder`):N.value.length===1?N.value[0].label:u(`common.searchableSelect.selectedCount`,{count:N.value.length})),ce=y(()=>d.searchPlaceholder??u(`common.searchableSelect.searchPlaceholder`)),H=y(()=>d.searchable??d.options.length>5),U=y(()=>{let e=te(),t=k.value.trim().toLocaleLowerCase(e);return t?d.options.filter(n=>[n.label,n.value,n.meta,n.search].filter(Boolean).join(` `).toLocaleLowerCase(e).includes(t)):d.options});r(()=>d.disabled,e=>{e&&G()}),ee(()=>document.addEventListener(`pointerdown`,me)),t(()=>document.removeEventListener(`pointerdown`,me));async function W(){D.value?G():await le()}async function le(){d.disabled||(k.value=``,_e(),D.value=!0,await n(),H.value?T.value?.focus():ge()?.focus())}function G({restoreFocus:e=!1}={}){D.value=!1,O.value=!1,k.value=``,e&&n(()=>w.value?.focus())}function ue(e){if(d.disabled||e.disabled)return;let t=M.value.has(e.value)?d.modelValue.filter(t=>t!==e.value):[...d.modelValue,e.value];h(`update:modelValue`,t),h(`change`,t)}function de(e){[`ArrowDown`,`Enter`,` `].includes(e.key)&&(e.preventDefault(),D.value&&[`Enter`,` `].includes(e.key)?G():le())}function fe(e){if(e.key===`Escape`){e.preventDefault(),G({restoreFocus:!0});return}if(e.key===`ArrowDown`){e.preventDefault(),q()?.focus();return}e.key===`Enter`&&(e.preventDefault(),q()?.click())}function pe(e){if(e.key===`Escape`){e.preventDefault(),G({restoreFocus:!0});return}if(![`ArrowDown`,`ArrowUp`,`Home`,`End`].includes(e.key))return;e.preventDefault();let t=K(),n=t.indexOf(e.currentTarget);t[e.key===`Home`?0:e.key===`End`?t.length-1:e.key===`ArrowDown`?Math.min(t.length-1,n+1):Math.max(0,n-1)]?.focus()}function me(e){D.value&&!C.value?.contains(e.target)&&G()}function he(e){let t=e.relatedTarget;t&&C.value?.contains(t)||queueMicrotask(()=>{D.value&&!C.value?.contains(document.activeElement)&&G()})}function K(){return[...E.value?.querySelectorAll(`.searchable-select-option:not(:disabled)`)??[]]}function q(){return K()[0]??null}function ge(){return K().find(e=>e.getAttribute(`aria-selected`)===`true`)??q()}function _e(){let e=w.value?.getBoundingClientRect();O.value=!!(e&&window.innerHeight-e.bottom<270&&e.top>270)}return(t,n)=>(_(),l(`div`,{ref_key:`root`,ref:C,class:e([`searchable-select searchable-multi-select`,{open:D.value,"open-up":O.value,disabled:i.disabled}]),"data-select-id":i.controlId,onFocusout:he},[v(`button`,{ref_key:`trigger`,ref:w,type:`button`,class:`searchable-select-trigger`,role:`combobox`,"aria-haspopup":`listbox`,"aria-expanded":D.value,"aria-controls":j.value,"aria-label":i.label,"aria-required":i.required,disabled:i.disabled,onPointerdown:n[0]||=f(()=>{},[`stop`]),onClick:f(W,[`stop`]),onKeydown:de},[v(`span`,I,[v(`span`,L,x(se.value),1),N.value.length>1?(_(),l(`small`,R,x(N.value.map(({label:e})=>e).join(` · `)),1)):m(``,!0)]),n[3]||=v(`i`,{class:`searchable-select-arrow`,"aria-hidden":`true`},null,-1)],40,F),v(`div`,{class:`searchable-select-panel`,hidden:!D.value},[H.value?(_(),l(`div`,ne,[s(v(`input`,{ref_key:`searchInput`,ref:T,"onUpdate:modelValue":n[1]||=e=>k.value=e,type:`search`,autocomplete:`off`,placeholder:ce.value,"aria-label":o(u)(`common.searchableSelect.searchAria`,{label:i.label}),onKeydown:fe},null,40,B),[[S,k.value]])])):m(``,!0),v(`div`,{id:j.value,ref_key:`optionsList`,ref:E,class:`searchable-select-options`,role:`listbox`,"aria-multiselectable":`true`},[(_(!0),l(p,null,g(U.value,e=>(_(),l(`button`,{key:e.value,type:`button`,class:`searchable-select-option`,role:`option`,"aria-selected":M.value.has(e.value),disabled:e.disabled,onMousedown:n[2]||=f(()=>{},[`prevent`]),onClick:t=>ue(e),onKeydown:pe},[v(`span`,ie,[v(`strong`,null,x(e.label),1),e.meta?(_(),l(`small`,ae,x(e.meta),1)):m(``,!0)]),n[4]||=v(`i`,{class:`searchable-select-check`,"aria-hidden":`true`},null,-1)],40,re))),128))],8,V),U.value.length===0?(_(),l(`p`,oe,x(o(u)(`common.searchableSelect.noMatches`)),1)):m(``,!0)],8,z)],42,P))}}),ce={class:`text-field`},H=[`id`,`value`,`name`,`placeholder`,`disabled`,`required`,`rows`],U=[`id`,`value`,`name`,`type`,`placeholder`,`disabled`,`required`],W=A(C({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)=>(_(),l(`label`,ce,[v(`span`,null,x(e.label),1),e.multiline?(_(),l(`textarea`,c({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,H)):(_(),l(`input`,c({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,U))]))}}),[[`__scopeId`,`data-v-6c32205a`]]),le={class:`view connections-view`},G={class:`connection-intro`},ue=[`aria-label`],de=[`data-status`],fe={class:`service-state`},pe=[`data-status`],me={class:`connection-title-row`},he={class:`service-state`},K={class:`external-knowledge-section`},q={class:`section-title section-title-with-help`},ge=[`href`,`aria-label`,`title`],_e={class:`external-binding-count`},ve={class:`external-binding-list`},ye=[`data-status`],be={class:`external-binding-copy`},xe={class:`external-binding-targets`},Se=[`data-status`],Ce={key:0},we={key:1},Te={class:`external-binding-actions`},Ee=[`disabled`,`onClick`],De=[`disabled`,`onClick`],Oe=[`disabled`,`onClick`],ke=[`disabled`,`onClick`],Ae={key:0,class:`external-binding-editor`},je={class:`external-target-mode-list`},Me={class:`external-binding-editor-actions`},Ne=[`disabled`],Pe=[`disabled`,`onClick`],Fe={key:0,class:`compact-empty`},Ie={class:`wide-field`},Le={class:`trusted-code-badge`},Re=[`disabled`],ze={key:0,class:`conflict-policy-section`},Be={class:`section-title section-title-with-help`},Ve=[`href`,`aria-label`,`title`],He={class:`conflict-policy-controls`},Ue={key:1,class:`connection-subscriptions`},We={class:`section-title`},Ge={class:`subscription-list`},Ke=[`onClick`],qe={key:0,class:`empty-state`},Je={type:`submit`},Ye=C({__name:`ConnectionsPage`,setup(e){let t=k(),n=b(``),a=b([]),s=b([]),c=b(!1),S=b(null),C=b([]),A=b({}),P=b(``),F=b(`ask_human`),I=b(!1),L=i({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:`{}`}),R=y(()=>t.state?.providers?.personal?.status===`ready`),z=y(()=>t.state?.providers?.workspaces??[]),ne=y(()=>z.value.filter(({status:e})=>e===`ready`).length),B=y(()=>t.state?.subscriptions??[]),V=y(()=>t.state?.personalProjects??[]),re=y(()=>Ct(`connect-external-knowledge`)),ie=y(()=>Ct(`external-knowledge-conflict-policy`)),ae=y(()=>new Set(B.value.map(({provider_url:e,project_id:t})=>`${e}::${t}`))),oe=y(()=>(t.state?.projects??[]).filter(e=>!ae.value.has($e(e)))),ce=y(()=>oe.value.map(e=>({value:$e(e),label:e.name,meta:`#${N(e.id,26)}`,search:M(e.id)}))),H=y(()=>a.value.map(e=>({value:e.type,label:e.name,meta:e.description}))),U=y(()=>V.value.map(e=>({value:e.project_id,label:e.profile.name,meta:`#${N(e.project_id,26)}`,search:M(e.project_id)}))),Ye=y(()=>[{value:`hybrid`,label:u(`pages.connections.mode.hybrid`),disabled:!Y(L.connectorType,`hybrid`)},{value:`mirror`,label:u(`pages.connections.mode.mirror`),disabled:!Y(L.connectorType,`mirror`)},{value:`live`,label:u(`pages.connections.mode.live`),disabled:!Y(L.connectorType,`live`)}]),Xe=y(()=>[{value:`http`,label:`Streamable HTTP`},{value:`stdio`,label:`stdio`}]),Ze=y(()=>[{value:`cn`,label:`Feishu`},{value:`global`,label:`Lark`}]),Qe=y(()=>[{value:`ask_human`,label:u(`pages.connections.askHuman`)},{value:`agent_decide`,label:u(`pages.connections.agentDecide`)}]);r(V,e=>{let t=new Set(e.map(({project_id:e})=>e)),n=e[0]?.project_id??``;L.personalProjectIds=L.personalProjectIds.filter(e=>t.has(e)),!L.personalProjectIds.length&&n&&(L.personalProjectIds=[n]),C.value=C.value.filter(e=>t.has(e)),t.has(P.value)||(P.value=n,n&&pt())},{immediate:!0}),r(()=>L.connectorType,e=>{Y(e,L.mode)||(L.mode=gt(e))}),ee(async()=>{await J(),P.value&&await pt()});function $e(e){return`${e.providerUrl}::${e.id}`}async function et(){let e=oe.value.find(e=>$e(e)===n.value);if(e)try{await T(`/api/subscriptions`,{personalSpaceId:t.activePersonalSpace?.id,projectId:e.id,providerUrl:e.providerUrl,projectName:e.name}),n.value=``,t.notify(u(`pages.connections.subscribed`,{name:e.name})),await t.refresh()}catch(e){t.reportError(e)}}async function tt(e){try{let n=new URLSearchParams({personalSpaceId:t.activePersonalSpace?.id??``,providerUrl:e.provider_url});await D(`/api/subscriptions/${encodeURIComponent(e.project_id)}?${n}`),t.notify(u(`pages.connections.unsubscribed`,{name:e.project_name??e.project_id})),await t.refresh()}catch(e){t.reportError(e)}}async function J(){try{let[e,t]=await Promise.all([O(`/api/external-knowledge/connectors`),O(`/api/external-knowledge/bindings`)]);a.value=e,s.value=t}catch(e){t.reportError(e)}}async function nt(){let e=t.activePersonalSpace?.id;if(!(!e||!L.personalProjectIds.length)){c.value=!0;try{let{connectorConfig:n,source:r}=rt();await T(`/api/external-knowledge/bindings`,{name:L.name.trim(),connectorType:L.connectorType,connectorConfig:n,source:r,targets:L.personalProjectIds.map(t=>({personalSpaceId:e,personalProjectId:t,mode:L.mode}))}),t.notify(u(`pages.connections.externalCreated`,{name:L.name.trim()})),L.name=``,await J()}catch(e){t.reportError(e)}finally{c.value=!1}}}function rt(){if(L.connectorType===`notion`)return{connectorConfig:{tokenEnv:$(L.notionTokenEnv,`Notion token env`)},source:{pageIds:Z(L.notionPageIds),dataSourceIds:Z(L.notionDataSourceIds)}};if(L.connectorType===`feishu`)return{connectorConfig:{accessTokenEnv:$(L.feishuTokenEnv,`Feishu token env`),region:L.feishuRegion},source:Q({spaceId:L.feishuSpaceId.trim(),rootNodeToken:L.feishuRootNodeToken.trim(),nodeTokens:Z(L.feishuNodeTokens),webBaseUrl:L.feishuWebBaseUrl.trim()})};if(L.connectorType===`retrieval_api`){let e=Number(L.retrievalScoreThreshold);if(!Number.isFinite(e)||e<0||e>1)throw TypeError(u(`pages.connections.scoreThresholdInvalid`));return{connectorConfig:Q({url:$(L.retrievalUrl,`Retrieval API URL`),tokenEnv:L.retrievalTokenEnv.trim(),scoreThreshold:e}),source:{knowledgeIds:St(L.retrievalKnowledgeIds,`Knowledge IDs`)}}}if(L.connectorType===`custom`){let e=JSON.parse(L.customSourceJson);if(!e||typeof e!=`object`||Array.isArray(e))throw TypeError(u(`pages.connections.customSourceObject`));return{connectorConfig:{module:$(L.customModule,`Custom connector module`),environmentNames:Z(L.customEnvironmentNames)},source:e}}return{connectorConfig:L.mcpTransport===`stdio`?Q({transport:`stdio`,command:L.mcpCommand.trim(),args:Z(L.mcpArgs)}):Q({transport:`http`,url:$(L.mcpUrl,`MCP URL`),tokenEnv:L.mcpTokenEnv.trim()}),source:Q({resourceUriPrefix:L.mcpResourcePrefix.trim()})}}async function it(e){await ot(e,`check`)}async function at(e){await ot(e,`sync`)}async function ot(e,n){c.value=!0;try{let r=await T(`/api/external-knowledge/bindings/${encodeURIComponent(e.id)}/${n}`,{});t.notify(u(n===`sync`&&r.skippedCredentials?`pages.connections.externalSyncedWithSkipped`:n===`sync`?`pages.connections.externalSynced`:`pages.connections.externalChecked`,{name:e.name,count:r.skippedCredentials??0})),await J()}catch(e){t.reportError(e)}finally{c.value=!1}}async function st(e){c.value=!0;try{await D(`/api/external-knowledge/bindings/${encodeURIComponent(e.id)}`),t.notify(u(`pages.connections.externalDeleted`,{name:e.name})),await J()}catch(e){t.reportError(e)}finally{c.value=!1}}function ct(e){let t=X(e);S.value=e.id,C.value=t.map(({personalProjectId:e})=>e),A.value=Object.fromEntries(t.map(({personalProjectId:e,mode:t})=>[e,t]))}function lt(){S.value=null,C.value=[],A.value={}}function ut(e){let t=s.value.find(({id:e})=>e===S.value);if(!t)return;let n=A.value,r=gt(t.connectorType);A.value=Object.fromEntries(e.map(e=>[e,n[e]??t.mode??r]))}function dt(e,t){A.value={...A.value,[e]:t}}async function ft(e){let n=t.activePersonalSpace?.id;if(!(!n||!C.value.length)){c.value=!0;try{await E(`/api/external-knowledge/bindings/${encodeURIComponent(e.id)}/targets`,{targets:C.value.map(t=>({personalSpaceId:n,personalProjectId:t,mode:A.value[t]??e.mode}))}),t.notify(u(`pages.connections.projectsUpdated`,{name:e.name})),lt(),await J()}catch(e){t.reportError(e)}finally{c.value=!1}}}async function pt(){if(P.value)try{let e=await O(`/api/external-knowledge/conflict-policy?${new URLSearchParams({personalProjectId:P.value})}`);F.value=e.mode}catch(e){t.reportError(e)}}async function mt(){let e=t.activePersonalSpace?.id;if(!(!e||!P.value)){I.value=!0;try{let n=await E(`/api/external-knowledge/conflict-policy?${new URLSearchParams({personalProjectId:P.value})}`,{personalSpaceId:e,personalProjectId:P.value,mode:F.value});F.value=n.mode,t.notify(u(`pages.connections.conflictSaved`))}catch(e){t.reportError(e)}finally{I.value=!1}}}function ht(e){return a.value.find(t=>t.type===e)?.name??e}function Y(e,t){let n=a.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 gt(e){return[`hybrid`,`mirror`,`live`].find(t=>Y(e,t))??`live`}function _t(e){return[`hybrid`,`mirror`,`live`].map(t=>({value:t,label:u(`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 vt(e){return X(e).some(({mode:e})=>e!==`live`)}function yt(e){return V.value.find(({project_id:t})=>t===e)?.profile.name??e}function bt(e){return X(e).find(({sync:e})=>e?.error)?.sync?.error??e.sync?.error}function xt(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 St(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 Ct(e){return`https://github.com/JevonsCode/fuli/blob/main/${te()===`zh-CN`?`README.zh-CN.md`:`README.md`}#${e}`}return(e,r)=>(_(),l(`section`,le,[v(`div`,G,[v(`h3`,null,x(o(u)(`pages.connections.title`)),1)]),v(`div`,{class:`service-connection-grid`,"aria-label":o(u)(`pages.connections.statusAria`)},[v(`article`,{class:`service-connection-card`,"data-status":R.value?`ready`:`error`},[v(`header`,null,[r[30]||=v(`span`,{class:`service-connection-icon local`,"aria-hidden":`true`},[v(`span`,{class:`nav-icon nav-icon-personal-project`})],-1),v(`div`,null,[v(`h3`,null,x(o(u)(`pages.connections.localGraphiti`)),1)]),v(`span`,fe,x(R.value?o(u)(`common.status.connected`):o(u)(`common.status.connectionError`)),1)]),v(`dl`,null,[v(`div`,null,[v(`dt`,null,x(o(u)(`pages.connections.storage`)),1),r[31]||=v(`dd`,null,`Neo4j`,-1)]),v(`div`,null,[v(`dt`,null,x(o(u)(`pages.connections.purpose`)),1),v(`dd`,null,x(o(u)(`pages.connections.localPurpose`)),1)])])],8,de),v(`article`,{class:`service-connection-card`,"data-status":o(t).publicRuntimeStatus},[v(`header`,null,[r[33]||=v(`span`,{class:`service-connection-icon public`,"aria-hidden":`true`},[v(`span`,{class:`nav-icon nav-icon-public-project`})],-1),v(`div`,me,[v(`h3`,null,x(o(u)(`pages.connections.publicService`)),1),r[32]||=v(`span`,{class:`feature-badge beta`},`BETA`,-1)]),v(`span`,he,x(o(t).publicRuntimeStatus===`ready`?o(u)(`common.status.connected`):o(t).publicRuntimeStatus===`error`?o(u)(`common.status.connectionError`):o(u)(`common.status.notConnected`)),1)]),v(`dl`,null,[v(`div`,null,[v(`dt`,null,x(o(u)(`pages.connections.currentStatus`)),1),v(`dd`,null,x(o(t).publicRuntimeStatus===`ready`?o(u)(`pages.connections.sharedServicesReady`,{count:ne.value||z.value.length}):o(u)(`pages.connections.notAvailable`)),1)]),v(`div`,null,[v(`dt`,null,x(o(u)(`pages.connections.purpose`)),1),v(`dd`,null,x(o(u)(`pages.connections.publicPurpose`)),1)])])],8,pe)],8,ue),v(`section`,K,[v(`div`,q,[v(`h3`,null,x(o(u)(`pages.connections.externalTitle`)),1),v(`a`,{class:`section-help-link`,"data-testid":`external-knowledge-help`,href:re.value,"aria-label":o(u)(`pages.connections.externalHelp`),title:o(u)(`pages.connections.externalHelp`),target:`_blank`,rel:`noreferrer`},`?`,8,ge),v(`span`,_e,x(o(u)(`pages.connections.bindingCount`,{count:s.value.length})),1)]),v(`div`,ve,[(_(!0),l(p,null,g(s.value,e=>(_(),l(`article`,{key:e.id,class:`external-binding-row`,"data-status":e.status},[r[34]||=v(`i`,{"aria-hidden":`true`},null,-1),v(`div`,be,[v(`strong`,null,x(e.name),1),v(`span`,null,x(ht(e.connectorType)),1),v(`div`,xe,[v(`b`,null,x(o(u)(`pages.connections.boundTo`)),1),(_(!0),l(p,null,g(X(e),e=>(_(),l(`span`,{key:e.id,class:`external-binding-target-chip`,"data-status":e.status},x(yt(e.personalProjectId))+` · `+x(o(u)(`pages.connections.mode.${e.mode}`)),9,Se))),128))]),bt(e)?(_(),l(`small`,Ce,x(bt(e)),1)):xt(e)?(_(),l(`small`,we,x(o(u)(`pages.connections.credentialsSkipped`,{count:xt(e)})),1)):m(``,!0)]),v(`div`,Te,[v(`button`,{class:`quiet-button`,type:`button`,disabled:c.value,onClick:t=>it(e)},x(o(u)(`pages.connections.check`)),9,Ee),v(`button`,{class:`quiet-button external-sync-action`,type:`button`,disabled:c.value||!vt(e),onClick:t=>at(e)},x(o(u)(`pages.connections.sync`)),9,De),v(`button`,{class:`quiet-button`,type:`button`,disabled:c.value,onClick:t=>ct(e)},x(o(u)(`pages.connections.manageProjects`)),9,Oe),v(`button`,{class:`quiet-button danger`,type:`button`,disabled:c.value,onClick:t=>st(e)},x(o(u)(`pages.connections.disconnect`)),9,ke)]),S.value===e.id?(_(),l(`div`,Ae,[v(`label`,null,[v(`span`,null,x(o(u)(`pages.connections.targetProjects`)),1),d(se,{modelValue:C.value,"onUpdate:modelValue":r[0]||=e=>C.value=e,"control-id":`external-projects-${e.id}`,label:o(u)(`pages.connections.targetProjects`),options:U.value,disabled:c.value,required:``,searchable:``,onChange:ut},null,8,[`modelValue`,`control-id`,`label`,`options`,`disabled`])]),v(`div`,je,[(_(!0),l(p,null,g(C.value,t=>(_(),l(`div`,{key:t,class:`external-target-mode-row`},[v(`span`,null,x(yt(t)),1),d(j,{"model-value":A.value[t]??e.mode,"control-id":`external-target-mode-${e.id}-${t}`,label:o(u)(`pages.connections.bindingMode`),options:_t(e.connectorType),disabled:c.value,"onUpdate:modelValue":e=>dt(t,e)},null,8,[`model-value`,`control-id`,`label`,`options`,`disabled`,`onUpdate:modelValue`])]))),128))]),v(`div`,Me,[v(`button`,{class:`quiet-button`,type:`button`,disabled:c.value,onClick:lt},x(o(u)(`common.actions.cancel`)),9,Ne),v(`button`,{class:`primary-action`,type:`button`,disabled:c.value||!C.value.length,onClick:t=>ft(e)},x(o(u)(`pages.connections.saveProjects`)),9,Pe)])])):m(``,!0)],8,ye))),128)),s.value.length?m(``,!0):(_(),l(`div`,Fe,x(o(u)(`pages.connections.noExternalBindings`)),1))]),v(`form`,{class:`external-binding-form`,onSubmit:f(nt,[`prevent`])},[d(W,{modelValue:L.name,"onUpdate:modelValue":r[1]||=e=>L.name=e,label:o(u)(`pages.connections.bindingName`),"data-testid":`external-name`,required:``},null,8,[`modelValue`,`label`]),v(`label`,null,[v(`span`,null,x(o(u)(`pages.connections.connector`)),1),d(j,{modelValue:L.connectorType,"onUpdate:modelValue":r[2]||=e=>L.connectorType=e,"control-id":`external-connector`,label:o(u)(`pages.connections.connector`),options:H.value,disabled:c.value,required:``},null,8,[`modelValue`,`label`,`options`,`disabled`])]),v(`label`,null,[v(`span`,null,x(o(u)(`pages.connections.targetProjects`)),1),d(se,{modelValue:L.personalProjectIds,"onUpdate:modelValue":r[3]||=e=>L.personalProjectIds=e,"control-id":`external-projects`,label:o(u)(`pages.connections.targetProjects`),options:U.value,disabled:c.value,required:``,searchable:``},null,8,[`modelValue`,`label`,`options`,`disabled`])]),v(`label`,null,[v(`span`,null,x(o(u)(`pages.connections.bindingMode`)),1),d(j,{modelValue:L.mode,"onUpdate:modelValue":r[4]||=e=>L.mode=e,"control-id":`external-binding-mode`,label:o(u)(`pages.connections.bindingMode`),options:Ye.value,disabled:c.value,required:``},null,8,[`modelValue`,`label`,`options`,`disabled`])]),L.connectorType===`mcp`?(_(),l(p,{key:0},[v(`label`,null,[v(`span`,null,x(o(u)(`pages.connections.transport`)),1),d(j,{modelValue:L.mcpTransport,"onUpdate:modelValue":r[5]||=e=>L.mcpTransport=e,"control-id":`external-mcp-transport`,label:o(u)(`pages.connections.transport`),options:Xe.value,disabled:c.value,required:``},null,8,[`modelValue`,`label`,`options`,`disabled`])]),L.mcpTransport===`http`?(_(),h(W,{key:0,modelValue:L.mcpUrl,"onUpdate:modelValue":r[6]||=e=>L.mcpUrl=e,label:`MCP URL`,"data-testid":`mcp-url`,type:`url`,required:``},null,8,[`modelValue`])):(_(),h(W,{key:1,modelValue:L.mcpCommand,"onUpdate:modelValue":r[7]||=e=>L.mcpCommand=e,label:o(u)(`pages.connections.command`),required:``},null,8,[`modelValue`,`label`])),L.mcpTransport===`stdio`?(_(),h(W,{key:2,modelValue:L.mcpArgs,"onUpdate:modelValue":r[8]||=e=>L.mcpArgs=e,label:o(u)(`pages.connections.arguments`)},null,8,[`modelValue`,`label`])):(_(),h(W,{key:3,modelValue:L.mcpTokenEnv,"onUpdate:modelValue":r[9]||=e=>L.mcpTokenEnv=e,label:o(u)(`pages.connections.tokenEnv`),"data-testid":`mcp-token-env`},null,8,[`modelValue`,`label`])),d(W,{modelValue:L.mcpResourcePrefix,"onUpdate:modelValue":r[10]||=e=>L.mcpResourcePrefix=e,label:o(u)(`pages.connections.resourcePrefix`),"data-testid":`mcp-resource-prefix`},null,8,[`modelValue`,`label`])],64)):L.connectorType===`notion`?(_(),l(p,{key:1},[d(W,{modelValue:L.notionTokenEnv,"onUpdate:modelValue":r[11]||=e=>L.notionTokenEnv=e,label:o(u)(`pages.connections.tokenEnv`),required:``},null,8,[`modelValue`,`label`]),d(W,{modelValue:L.notionPageIds,"onUpdate:modelValue":r[12]||=e=>L.notionPageIds=e,label:`Page IDs`},null,8,[`modelValue`]),d(W,{modelValue:L.notionDataSourceIds,"onUpdate:modelValue":r[13]||=e=>L.notionDataSourceIds=e,label:`Data Source IDs`},null,8,[`modelValue`])],64)):L.connectorType===`feishu`?(_(),l(p,{key:2},[d(W,{modelValue:L.feishuTokenEnv,"onUpdate:modelValue":r[14]||=e=>L.feishuTokenEnv=e,label:o(u)(`pages.connections.tokenEnv`),required:``},null,8,[`modelValue`,`label`]),v(`label`,null,[v(`span`,null,x(o(u)(`pages.connections.region`)),1),d(j,{modelValue:L.feishuRegion,"onUpdate:modelValue":r[15]||=e=>L.feishuRegion=e,"control-id":`external-feishu-region`,label:o(u)(`pages.connections.region`),options:Ze.value,disabled:c.value,required:``},null,8,[`modelValue`,`label`,`options`,`disabled`])]),d(W,{modelValue:L.feishuSpaceId,"onUpdate:modelValue":r[16]||=e=>L.feishuSpaceId=e,label:`Space ID`},null,8,[`modelValue`]),d(W,{modelValue:L.feishuRootNodeToken,"onUpdate:modelValue":r[17]||=e=>L.feishuRootNodeToken=e,label:`Root Node Token`},null,8,[`modelValue`]),d(W,{modelValue:L.feishuNodeTokens,"onUpdate:modelValue":r[18]||=e=>L.feishuNodeTokens=e,label:`Node Tokens`},null,8,[`modelValue`]),d(W,{modelValue:L.feishuWebBaseUrl,"onUpdate:modelValue":r[19]||=e=>L.feishuWebBaseUrl=e,label:`Web URL`,type:`url`},null,8,[`modelValue`])],64)):L.connectorType===`retrieval_api`?(_(),l(p,{key:3},[d(W,{modelValue:L.retrievalUrl,"onUpdate:modelValue":r[20]||=e=>L.retrievalUrl=e,label:o(u)(`pages.connections.retrievalUrl`),type:`url`,required:``},null,8,[`modelValue`,`label`]),d(W,{modelValue:L.retrievalTokenEnv,"onUpdate:modelValue":r[21]||=e=>L.retrievalTokenEnv=e,label:o(u)(`pages.connections.tokenEnv`)},null,8,[`modelValue`,`label`]),d(W,{modelValue:L.retrievalKnowledgeIds,"onUpdate:modelValue":r[22]||=e=>L.retrievalKnowledgeIds=e,label:o(u)(`pages.connections.knowledgeIds`),required:``},null,8,[`modelValue`,`label`]),d(W,{modelValue:L.retrievalScoreThreshold,"onUpdate:modelValue":r[23]||=e=>L.retrievalScoreThreshold=e,label:o(u)(`pages.connections.scoreThreshold`),inputmode:`decimal`,required:``},null,8,[`modelValue`,`label`])],64)):(_(),l(p,{key:4},[d(W,{modelValue:L.customModule,"onUpdate:modelValue":r[24]||=e=>L.customModule=e,label:o(u)(`pages.connections.module`),required:``},null,8,[`modelValue`,`label`]),d(W,{modelValue:L.customEnvironmentNames,"onUpdate:modelValue":r[25]||=e=>L.customEnvironmentNames=e,label:o(u)(`pages.connections.environmentNames`)},null,8,[`modelValue`,`label`]),v(`div`,Ie,[d(W,{modelValue:L.customSourceJson,"onUpdate:modelValue":r[26]||=e=>L.customSourceJson=e,label:o(u)(`pages.connections.sourceJson`),multiline:``,required:``},null,8,[`modelValue`,`label`])]),v(`span`,Le,x(o(u)(`pages.connections.trustedCode`)),1)],64)),v(`button`,{class:`primary-action external-create-action`,type:`submit`,disabled:c.value||!V.value.length||!L.personalProjectIds.length},[r[35]||=v(`span`,{class:`external-create-action-icon`,"aria-hidden":`true`},null,-1),v(`span`,null,x(o(u)(`pages.connections.connect`)),1)],8,Re)],32)]),V.value.length?(_(),l(`section`,ze,[v(`div`,Be,[v(`h3`,null,x(o(u)(`pages.connections.conflictTitle`)),1),v(`a`,{class:`section-help-link`,"data-testid":`conflict-policy-help`,href:ie.value,"aria-label":o(u)(`pages.connections.conflictHelp`),title:o(u)(`pages.connections.conflictHelp`),target:`_blank`,rel:`noreferrer`},`?`,8,Ve)]),v(`div`,He,[v(`label`,null,[v(`span`,null,x(o(u)(`pages.connections.targetProject`)),1),d(j,{modelValue:P.value,"onUpdate:modelValue":r[27]||=e=>P.value=e,"control-id":`external-conflict-project`,label:o(u)(`pages.connections.targetProject`),options:U.value,disabled:I.value,required:``,onChange:pt},null,8,[`modelValue`,`label`,`options`,`disabled`])]),v(`label`,null,[v(`span`,null,x(o(u)(`pages.connections.conflictAction`)),1),d(j,{modelValue:F.value,"onUpdate:modelValue":r[28]||=e=>F.value=e,"control-id":`external-conflict-mode`,label:o(u)(`pages.connections.conflictAction`),options:Qe.value,disabled:I.value,required:``,onChange:mt},null,8,[`modelValue`,`label`,`options`,`disabled`])])])])):m(``,!0),o(t).state?.capabilities?.subscribeProject?(_(),l(`section`,Ue,[v(`div`,We,[v(`h3`,null,[w(x(o(u)(`pages.connections.subscriptionsTitle`))+` `,1),r[36]||=v(`span`,{class:`feature-badge beta`},`BETA`,-1)])]),v(`div`,Ge,[(_(!0),l(p,null,g(B.value,e=>(_(),l(`div`,{key:`${e.provider_url}:${e.project_id}`,class:`subscription-row`},[r[37]||=v(`span`,null,`↗`,-1),v(`div`,null,[v(`strong`,null,x(e.project_name??e.project_id),1),v(`span`,null,x(o(u)(`pages.connections.sharedProject`)),1)]),v(`button`,{class:`secondary-action subscription-action`,type:`button`,onClick:t=>tt(e)},x(o(u)(`pages.connections.unsubscribe`)),9,Ke)]))),128)),B.value.length?m(``,!0):(_(),l(`div`,qe,x(o(u)(`pages.connections.noSubscriptions`)),1))]),v(`form`,{class:`subscription-form`,onSubmit:f(et,[`prevent`])},[d(j,{modelValue:n.value,"onUpdate:modelValue":r[29]||=e=>n.value=e,options:ce.value,label:o(u)(`pages.connections.sharedProjectLabel`),placeholder:o(u)(`pages.connections.choosePublicProject`),searchable:``,required:``},null,8,[`modelValue`,`options`,`label`,`placeholder`]),v(`button`,Je,x(o(u)(`pages.connections.subscribe`)),1)],32)])):m(``,!0)]))}});export{Ye as default};
@@ -1 +1 @@
1
- .growth-loading__content[data-v-f65da374]{justify-items:center;display:grid}.growth-loading__chart[data-v-f65da374]{contain:layout paint;justify-content:center;align-items:end;gap:7px;width:126px;height:70px;padding:0 8px 7px;display:flex;position:relative}.growth-loading__bar[data-v-f65da374]{--rest:20%;--peak:76%;--delay:0s;--tide-delay:0s;z-index:1;background:#ffffff7a;border:1px solid #46645226;border-radius:5px 5px 3px 3px;flex:0 0 15px;width:15px;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffffb8}.growth-loading__bar i[data-v-f65da374]{height:var(--rest);animation:growth-loading-rise-f65da374 3.2s cubic-bezier(.45, 0, .22, 1) var(--delay) infinite;will-change:height;background:linear-gradient(#8fae9c 0%,#5f836f 100%);border-radius:2px 2px 1px 1px;position:absolute;bottom:1px;left:1px;right:1px;box-shadow:0 -1px 4px #466d571f}.growth-loading__bar i[data-v-f65da374]:before{content:"";width:176%;height:7px;animation:growth-loading-tide-f65da374 1.35s ease-in-out var(--tide-delay) infinite alternate;background:#a5beaf;border-radius:50%;position:absolute;top:-3px;left:-38%;box-shadow:inset 0 1px #ffffff59}.growth-loading__bar--1[data-v-f65da374]{--rest:28%;--peak:62%;height:26px}.growth-loading__bar--2[data-v-f65da374]{--rest:22%;--peak:70%;--delay:.12s;--tide-delay:-.12s;height:35px}.growth-loading__bar--3[data-v-f65da374]{--rest:25%;--peak:78%;--delay:.24s;--tide-delay:-.24s;height:44px}.growth-loading__bar--4[data-v-f65da374]{--rest:20%;--peak:86%;--delay:.36s;--tide-delay:-.36s;height:53px}.growth-loading__bar--5[data-v-f65da374]{--rest:24%;--peak:94%;--delay:.48s;--tide-delay:-.48s;height:62px}.growth-loading__baseline[data-v-f65da374]{background:linear-gradient(90deg,#0000,#48675538 18% 82%,#0000);height:1px;position:absolute;bottom:6px;left:4px;right:4px;overflow:hidden}.growth-loading__baseline[data-v-f65da374]:after{content:"";background:linear-gradient(90deg,#0000,#ffffffeb,#0000);width:32%;animation:3.2s ease-in-out infinite growth-loading-reflection-f65da374;position:absolute;top:0;bottom:0;left:-32%}.growth-loading__label[data-v-f65da374]{color:#778079;margin-top:11px;font-size:12px;line-height:1.5}@keyframes growth-loading-rise-f65da374{0%,12%{height:var(--rest)}50%,68%{height:var(--peak)}to{height:var(--rest)}}@keyframes growth-loading-tide-f65da374{0%{transform:translate(-5%)rotate(-1deg)}to{transform:translate(5%)rotate(1deg)}}@keyframes growth-loading-reflection-f65da374{0%,18%{opacity:0;transform:translate(0)}38%,68%{opacity:.72}86%,to{opacity:0;transform:translate(420%)}}@media (prefers-reduced-motion:reduce){.growth-loading__bar i[data-v-f65da374]{height:var(--peak);animation:none}.growth-loading__bar i[data-v-f65da374]:before,.growth-loading__baseline[data-v-f65da374]:after{animation:none}}
1
+ .growth-loading__content[data-v-f65da374]{justify-items:center;display:grid}.growth-loading__chart[data-v-f65da374]{contain:layout paint;justify-content:center;align-items:end;gap:7px;width:126px;height:70px;padding:0 8px 7px;display:flex;position:relative}.growth-loading__bar[data-v-f65da374]{--rest:20%;--peak:76%;--delay:0s;--tide-delay:0s;z-index:1;background:#ffffff7a;border:1px solid #46645226;border-radius:5px 5px 3px 3px;flex:0 0 15px;width:15px;position:relative;overflow:hidden;box-shadow:inset 0 1px #ffffffb8}.growth-loading__bar i[data-v-f65da374]{height:var(--rest);animation:growth-loading-rise-f65da374 3.2s cubic-bezier(.45, 0, .22, 1) var(--delay) infinite;will-change:height;background:linear-gradient(#8fae9c 0%,#5f836f 100%);border-radius:2px 2px 1px 1px;position:absolute;bottom:1px;left:1px;right:1px;box-shadow:0 -1px 4px #466d571f}.growth-loading__bar i[data-v-f65da374]:before{content:"";width:176%;height:7px;animation:growth-loading-tide-f65da374 1.35s ease-in-out var(--tide-delay) infinite alternate;background:#a5beaf;border-radius:50%;position:absolute;top:-3px;left:-38%;box-shadow:inset 0 1px #ffffff59}.growth-loading__bar--1[data-v-f65da374]{--rest:28%;--peak:62%;height:26px}.growth-loading__bar--2[data-v-f65da374]{--rest:22%;--peak:70%;--delay:.12s;--tide-delay:-.12s;height:35px}.growth-loading__bar--3[data-v-f65da374]{--rest:25%;--peak:78%;--delay:.24s;--tide-delay:-.24s;height:44px}.growth-loading__bar--4[data-v-f65da374]{--rest:20%;--peak:86%;--delay:.36s;--tide-delay:-.36s;height:53px}.growth-loading__bar--5[data-v-f65da374]{--rest:24%;--peak:94%;--delay:.48s;--tide-delay:-.48s;height:62px}.growth-loading__baseline[data-v-f65da374]{background:linear-gradient(90deg,#0000,#48675538 18% 82%,#0000);height:1px;position:absolute;bottom:6px;left:4px;right:4px;overflow:hidden}.growth-loading__baseline[data-v-f65da374]:after{content:"";background:linear-gradient(90deg,#0000,#ffffffeb,#0000);width:32%;animation:3.2s ease-in-out infinite growth-loading-reflection-f65da374;position:absolute;top:0;bottom:0;left:-32%}.growth-loading__label[data-v-f65da374]{color:#778079;margin-top:11px;font-size:12px;line-height:1.5}@keyframes growth-loading-rise-f65da374{0%,12%{height:var(--rest)}50%,68%{height:var(--peak)}to{height:var(--rest)}}@keyframes growth-loading-tide-f65da374{0%{transform:translate(-5%)rotate(-1deg)}to{transform:translate(5%)rotate(1deg)}}@keyframes growth-loading-reflection-f65da374{0%,18%{opacity:0;transform:translate(0)}38%,68%{opacity:.72}86%,to{opacity:0;transform:translate(420%)}}@media (prefers-reduced-motion:reduce){.growth-loading__bar i[data-v-f65da374]{height:var(--peak);animation:none}.growth-loading__bar i[data-v-f65da374]:before,.growth-loading__baseline[data-v-f65da374]:after{animation:none}}.knowledge-confirm-dialog[data-v-26170b1a]{width:min(680px,100vw - 48px)}.knowledge-confirm-dialog-shell[data-v-26170b1a]{gap:18px;padding:24px;display:grid}.knowledge-confirm-summary[data-v-26170b1a]{border-top:1px solid #e1e5e2;border-bottom:1px solid #e1e5e2;gap:6px;padding:14px 0;display:grid}.knowledge-confirm-summary span[data-v-26170b1a],.knowledge-confirm-summary small[data-v-26170b1a]{color:#7d8780;font-size:10px}.knowledge-confirm-summary strong[data-v-26170b1a]{color:#29382f;font-size:16px}.knowledge-confirm-summary p[data-v-26170b1a]{color:#606b63;font-size:12px;line-height:1.65}.knowledge-confirm-fields[data-v-26170b1a]{gap:14px;display:grid}.knowledge-confirm-fields label[data-v-26170b1a]{color:#59645c;gap:6px;font-size:11px;font-weight:600;display:grid}.knowledge-confirm-acknowledgement[data-v-26170b1a]{color:#4e5c53;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:9px;font-size:11px;line-height:1.5;display:grid}
@@ -0,0 +1 @@
1
+ import{D as e,F as t,G as n,K as r,Q as i,R as a,_ as o,a as s,b as c,d as l,f as u,g as d,k as f,m as p,p as m,q as h,s as g,tt as _,u as v,v as y,x as b,y as x}from"./i18n-CWfd8Dtt.js";import{a as S,i as C,t as w}from"./console-DMvHxKf9.js";import{t as T}from"./_plugin-vue_export-helper-BDNMzG2s.js";import{t as E}from"./SearchableSelect-C5RiB5F8.js";import{r as D,t as O}from"./identity-C9mLdR8L.js";import{E as k,T as A}from"./model-CsYAR8O3.js";var j={class:`view-loading growth-loading`,role:`status`,"aria-live":`polite`,"aria-atomic":`true`},M={class:`growth-loading__content`},N={class:`growth-loading__label`},P=T(b({__name:`GrowthLoading`,props:{label:{}},setup(e){return(t,n)=>(f(),o(`div`,j,[p(`div`,M,[n[0]||=y(`<div class="growth-loading__chart" aria-hidden="true" data-v-f65da374><span class="growth-loading__bar growth-loading__bar--1" data-v-f65da374><i data-v-f65da374></i></span><span class="growth-loading__bar growth-loading__bar--2" data-v-f65da374><i data-v-f65da374></i></span><span class="growth-loading__bar growth-loading__bar--3" data-v-f65da374><i data-v-f65da374></i></span><span class="growth-loading__bar growth-loading__bar--4" data-v-f65da374><i data-v-f65da374></i></span><span class="growth-loading__bar growth-loading__bar--5" data-v-f65da374><i data-v-f65da374></i></span><span class="growth-loading__baseline" data-v-f65da374></span></div>`,1),p(`span`,N,_(e.label),1)])]))}}),[[`__scopeId`,`data-v-f65da374`]]),F=`testLoading`;function I(e=typeof window>`u`?``:window.location.search){return new URLSearchParams(e).get(F)===`1`}function L(n,i=500){let a=h(!1),o=0,s=null;function c(){s!==null&&(clearTimeout(s),s=null)}return t(n,e=>{if(c(),e){a.value||(o=Date.now()),a.value=!0;return}if(!a.value)return;let t=Math.max(0,i-(Date.now()-o));if(t===0){a.value=!1;return}s=setTimeout(()=>{s=null,a.value=!1},t)},{immediate:!0,flush:`sync`}),e(c),r(a)}var R={key:0,open:``,class:`knowledge-confirm-dialog vue-dialog`},z={class:`project-dialog-header`},B=[`disabled`],V={class:`knowledge-confirm-summary`},H={class:`knowledge-confirm-fields`},U={class:`knowledge-confirm-acknowledgement`},W={key:0,class:`publish-dialog-error`,role:`alert`},ee={class:`project-profile-dialog-actions`},te=[`disabled`],ne=[`disabled`],G=T(b({__name:`KnowledgeConfirmDialog`,props:{item:{},personalSpaceId:{},personalProjectId:{}},emits:[`close`,`saved`],setup(e,{emit:n}){let r=e,c=n,u=w(),y=h(``),b=h(``),x=h(``),S=h(!1),T=h(!1),E=h(``),D=h({kind:`import`,label:s(`knowledge.domain.actors.historicalRecord`)}),O=m(()=>r.item?.profileAspect?s(`knowledge.dialogs.confirm.preferenceSubject`):s(`knowledge.dialogs.confirm.knowledgeSubject`));t(()=>r.item,e=>{if(!e)return;let t=e.evidence.at(0),n=e.confirmationBasis;y.value=n?.existence_reason||t?.source_description||t?.summary||s(`knowledge.dialogs.confirm.sourceSupport`),b.value=n?.quadrant_reason||e.reasoningSummary||s(`knowledge.dialogs.confirm.quadrantReason`,{quadrant:k(e.originQuadrant),description:A(e.originQuadrant)}),D.value=n?.proposed_by??M(t),x.value=s(`knowledge.dialogs.confirm.confirmationReason`),S.value=!1,E.value=``},{immediate:!0});async function j(){let e=r.item;if(!(!e||T.value)){if(!e.classificationExplicit)return N(s(`knowledge.dialogs.confirm.errors.quadrantRequired`));if(!y.value.trim())return N(s(`knowledge.dialogs.confirm.errors.existenceRequired`));if(!b.value.trim())return N(s(`knowledge.dialogs.confirm.errors.quadrantReasonRequired`));if(!x.value.trim())return N(s(`knowledge.dialogs.confirm.errors.confirmationReasonRequired`));if(!S.value)return N(s(`knowledge.dialogs.confirm.errors.acknowledgmentRequired`));T.value=!0,E.value=``;try{await C(`/api/knowledge/${e.itemKind}/${encodeURIComponent(e.id)}`,{personalSpaceId:r.personalSpaceId,personalProjectId:r.personalProjectId,action:`confirm`,reason:x.value.trim(),confirmationStatus:`confirmed`,confirmationBasis:{existenceReason:y.value.trim(),quadrantReason:b.value.trim(),proposedBy:D.value,confirmedBy:{kind:`user`,label:s(`knowledge.domain.actors.currentUser`)},confirmedAt:new Date().toISOString()}}),u.notify(s(`knowledge.dialogs.confirm.confirmed`,{subject:O.value})),c(`saved`),c(`close`)}catch(e){E.value=e instanceof Error?e.message:s(`knowledge.dialogs.confirm.errors.failed`),u.reportError(e)}finally{T.value=!1}}}function M(e){let t={codex:`Codex`,claude_code:`Claude Code`,cursor:`Cursor`,kiro:`Kiro`,other:s(`knowledge.domain.actors.otherAgent`)}[e?.source_application??``];return t?{kind:`agent`,label:t}:{kind:`import`,label:s(`knowledge.domain.actors.historicalRecord`)}}function N(e){E.value=e}return(t,n)=>e.item?(f(),o(`dialog`,R,[p(`form`,{class:`knowledge-confirm-dialog-shell`,onSubmit:l(j,[`prevent`])},[p(`header`,z,[p(`div`,null,[n[6]||=p(`p`,{class:`eyebrow`},`KNOWLEDGE CONFIRMATION`,-1),p(`h3`,null,_(i(s)(`knowledge.dialogs.confirm.title`,{subject:O.value})),1),p(`p`,null,_(i(s)(`knowledge.dialogs.confirm.intro`)),1)]),p(`button`,{class:`secondary-action`,type:`button`,disabled:T.value,onClick:n[0]||=e=>c(`close`)},_(i(s)(`common.actions.close`)),9,B)]),p(`section`,V,[p(`span`,null,_(e.item.profileAspect?i(s)(`knowledge.dialogs.confirm.preference`):i(s)(`knowledge.dialogs.confirm.knowledge`)),1),p(`strong`,null,_(e.item.title),1),p(`p`,null,_(e.item.body),1),p(`small`,null,_(i(s)(`knowledge.dialogs.confirm.quadrant`,{quadrant:i(k)(e.item.originQuadrant)})),1)]),p(`div`,H,[p(`label`,null,[p(`span`,null,_(i(s)(`knowledge.dialogs.confirm.whyExists`)),1),a(p(`textarea`,{"onUpdate:modelValue":n[1]||=e=>y.value=e,name:`confirmation-existence-reason`,maxlength:`4096`,rows:`3`,required:``},null,512),[[v,y.value]])]),p(`label`,null,[p(`span`,null,_(i(s)(`knowledge.dialogs.confirm.whyQuadrant`)),1),a(p(`textarea`,{"onUpdate:modelValue":n[2]||=e=>b.value=e,name:`confirmation-quadrant-reason`,maxlength:`4096`,rows:`3`,required:``},null,512),[[v,b.value]])]),p(`label`,null,[p(`span`,null,_(i(s)(`knowledge.dialogs.confirm.confirmationCopy`)),1),a(p(`textarea`,{"onUpdate:modelValue":n[3]||=e=>x.value=e,name:`confirmation-reason`,maxlength:`2000`,rows:`2`,required:``},null,512),[[v,x.value]])])]),p(`label`,U,[a(p(`input`,{"onUpdate:modelValue":n[4]||=e=>S.value=e,name:`confirmation-acknowledged`,type:`checkbox`},null,512),[[g,S.value]]),p(`span`,null,_(i(s)(`knowledge.dialogs.confirm.acknowledgment`)),1)]),E.value?(f(),o(`p`,W,_(E.value),1)):d(``,!0),p(`footer`,ee,[p(`button`,{class:`secondary-action`,type:`button`,disabled:T.value,onClick:n[5]||=e=>c(`close`)},_(i(s)(`common.actions.cancel`)),9,te),p(`button`,{class:`primary-action`,type:`submit`,disabled:T.value||!S.value},_(T.value?i(s)(`knowledge.dialogs.confirm.confirming`):i(s)(`knowledge.dialogs.confirm.confirmSubject`,{subject:O.value})),9,ne)])],32)])):d(``,!0)}}),[[`__scopeId`,`data-v-26170b1a`]]),re={key:0,open:``,class:`project-dialog knowledge-edit-dialog vue-dialog`},ie={class:`project-dialog-shell`},ae={class:`project-dialog-header`},oe={class:`knowledge-edit-columns`},se={key:0},ce={key:1},le={key:2},ue={class:`knowledge-taxonomy-fields`},de={class:`knowledge-classification-warning`},fe={key:3,class:`knowledge-classification-warning`},pe={class:`knowledge-confirmation-fields`},me={class:`knowledge-taxonomy-fields`},he=[`placeholder`],ge=[`placeholder`],_e={key:4,class:`knowledge-replacement-fields`},ve={key:0},ye={class:`knowledge-replacement-fields`},be={key:5,class:`publish-dialog-error`,role:`alert`},xe={class:`knowledge-editor-actions`},Se=[`disabled`],Ce=[`disabled`],we=[`disabled`],Te=[`disabled`],Ee={key:0},De=[`disabled`],Oe={key:1},ke={key:0},Ae=[`disabled`],K=b({__name:`KnowledgeEditDialog`,props:{item:{},personalSpaceId:{},personalProjectId:{},projects:{},replacementItems:{default:()=>[]}},emits:[`close`,`saved`],setup(e,{emit:r}){let g=e,y=r,b=w(),T=h(!1),A=h(``),j=h(``),M=h(``),N=h(`global`),P=h(``),F=h(``),I=h(``),L=h(``),R=n({name:``,summary:``,fact:``,currentQuadrant:``,confirmationStatus:`pending`,existenceReason:``,quadrantReason:``,proposedByKind:`agent`,proposedByLabel:``,confirmedByKind:`user`,confirmedByLabel:``,profileAspect:`none`,inheritanceMode:`local_only`,reason:``}),z=m(()=>g.item?.itemKind===`relationship`),B=m(()=>!!g.item?.invalidAt),V=m(()=>!!g.item?.raw.profile_aspect),H=m(()=>g.projects.map(e=>({value:e.project_id,label:e.profile.name,meta:`#${O(e.project_id,26)}`,search:D(e.project_id)}))),U=m(()=>[`known_known`,`known_unknown`,`unknown_known`,`unknown_unknown`].map(e=>({value:e,label:s(`knowledge.dialogs.edit.quadrants.${e}`)}))),W=m(()=>[{value:`pending`,label:s(`knowledge.dialogs.edit.confirmationStates.pending`)},{value:`confirmed`,label:s(`knowledge.dialogs.edit.confirmationStates.confirmed`)}]),ee=m(()=>[{value:`local_only`,label:s(`knowledge.dialogs.edit.inheritance.local`)},{value:`descendants`,label:s(`knowledge.dialogs.edit.inheritance.descendants`)},{value:`selected_projects`,label:s(`knowledge.dialogs.edit.inheritance.selected`)}]),te=m(()=>[`user`,`agent`,`authoritative_source`,`import`].map(e=>({value:e,label:s(`knowledge.domain.actors.${e}`)}))),ne=m(()=>[`user`,`authoritative_source`].map(e=>({value:e,label:s(`knowledge.domain.actors.${e}`)}))),G=m(()=>[{value:`none`,label:s(`knowledge.dialogs.edit.profiles.none`)},...[`taste`,`personality`,`judgment_preference`].map(e=>({value:e,label:s(`knowledge.domain.profiles.${e}`)}))]),K=m(()=>[{value:`global`,label:s(`knowledge.dialogs.edit.scopes.global`)},{value:`project`,label:s(`knowledge.dialogs.edit.scopes.project`),disabled:g.projects.length===0}]),je=m(()=>[{value:``,label:s(`knowledge.dialogs.edit.replacementNone`)},...g.replacementItems.filter(e=>!e.invalidAt&&(e.itemKind!==g.item?.itemKind||e.id!==g.item?.id)).map(e=>({value:Z(e.itemKind,e.id),label:e.title,meta:e.type,search:`${e.body} ${e.id}`}))]),q=m(()=>{if(!L.value)return null;try{let[e,t]=JSON.parse(L.value);return e!==`entity`&&e!==`relationship`||typeof t!=`string`?null:{itemKind:e,id:t}}catch{return null}}),J=m(()=>g.item?.assignments.at(0)?.project_id??g.item?.evidence.find(({personal_project_id:e})=>e)?.personal_project_id??g.personalProjectId??null);t(()=>g.item,e=>{if(!e)return;let t=e.raw;R.name=e.itemKind===`entity`?t.name:``,R.summary=e.itemKind===`entity`?t.summary??``:``,R.fact=e.itemKind===`relationship`?t.fact??``:``;let n=e.confirmationBasis,r=e.evidence.at(0);R.currentQuadrant=e.classificationExplicit?t.current_quadrant??t.origin_quadrant??`known_known`:``,R.confirmationStatus=e.confirmationStatus===`confirmed`?`confirmed`:`pending`,R.existenceReason=n?.existence_reason??r?.source_description??r?.summary??``,R.quadrantReason=n?.quadrant_reason??t.reasoning_summary??``,R.proposedByKind=n?.proposed_by.kind??`agent`,R.proposedByLabel=n?.proposed_by.label??``,R.confirmedByKind=n?.confirmed_by?.kind??`user`,R.confirmedByLabel=n?.confirmed_by?.label??``,R.profileAspect=t.profile_aspect??`none`,R.inheritanceMode=t.profile_aspect?`local_only`:t.inheritance_mode??`local_only`,I.value=t.inherited_project_ids?.at(0)??g.projects[0]?.project_id??``,R.reason=``,j.value=``,M.value=J.value??g.projects[0]?.project_id??``,N.value=t.preference_scope??`global`,P.value=t.preference_project_id??g.projects[0]?.project_id??``,F.value=``,L.value=e.replacedByItemId&&e.replacedByItemKind?Z(e.replacedByItemKind,e.replacedByItemId):``,A.value=``},{immediate:!0});async function Me(){let e=g.item;if(!e)return;if(!R.reason.trim())return $(s(`knowledge.dialogs.edit.errors.reasonRequired`));if(!z.value&&!R.name.trim())return $(s(`knowledge.dialogs.edit.errors.nameRequired`));if(z.value&&!R.fact.trim())return $(s(`knowledge.dialogs.edit.errors.factRequired`));if(!R.currentQuadrant||!R.confirmationStatus)return $(s(`knowledge.dialogs.edit.errors.classificationRequired`));if(!R.existenceReason.trim())return $(s(`knowledge.dialogs.edit.errors.existenceRequired`));if(!R.quadrantReason.trim())return $(s(`knowledge.dialogs.edit.errors.quadrantRequired`));if(!R.proposedByKind)return $(s(`knowledge.dialogs.edit.errors.proposerRequired`));if(R.confirmationStatus===`confirmed`&&!R.confirmedByKind)return $(s(`knowledge.dialogs.edit.errors.confirmerRequired`));if(R.inheritanceMode===`selected_projects`&&!I.value)return $(s(`knowledge.dialogs.edit.errors.inheritedProjectsRequired`));let t={...X(`update`),confirmationStatus:R.confirmationStatus,confirmationBasis:{existenceReason:R.existenceReason.trim(),quadrantReason:R.quadrantReason.trim(),proposedBy:{kind:R.proposedByKind,label:R.proposedByLabel.trim()||null},confirmedBy:R.confirmationStatus===`confirmed`?{kind:R.confirmedByKind,label:R.confirmedByLabel.trim()||null}:null,confirmedAt:R.confirmationStatus===`confirmed`?new Date().toISOString():null},profileAspect:R.profileAspect,inheritanceMode:R.profileAspect===`none`?R.inheritanceMode:`local_only`,inheritedProjectIds:R.profileAspect===`none`&&R.inheritanceMode===`selected_projects`?[I.value]:[],reasoningSummary:R.quadrantReason.trim()};g.item.classificationExplicit?t.currentQuadrant=R.currentQuadrant:t.originQuadrant=R.currentQuadrant,z.value?t.fact=R.fact.trim():(t.name=R.name.trim(),t.summary=R.summary.trim()),await Q(async()=>{await C(`/api/knowledge/${e.itemKind}/${encodeURIComponent(e.id)}`,t),b.notify(s(`knowledge.dialogs.edit.notices.corrected`))})}async function Y(e){let t=g.item;if(t){if(!R.reason.trim())return $(s(e===`invalidate`?`knowledge.dialogs.edit.errors.statusReasonRequired`:`knowledge.dialogs.edit.errors.restoreReasonRequired`));await Q(async()=>{let n=X(e);e===`invalidate`&&q.value&&(n.replacementItemId=q.value.id,n.replacementItemKind=q.value.itemKind),await C(`/api/knowledge/${t.itemKind}/${encodeURIComponent(t.id)}`,n),b.notify(e===`invalidate`?q.value?s(`knowledge.dialogs.edit.notices.invalidatedWithReplacement`):s(`knowledge.dialogs.edit.notices.invalidated`):s(`knowledge.dialogs.edit.notices.restored`))})}}async function Ne(){let e=g.item,t=q.value;if(!(!e||!B.value)){if(!t)return $(s(`knowledge.dialogs.edit.errors.replacementRequired`));if(!R.reason.trim())return $(s(`knowledge.dialogs.edit.errors.replacementReasonRequired`));await Q(async()=>{await C(`/api/knowledge/${e.itemKind}/${encodeURIComponent(e.id)}`,{...X(`link_replacement`),replacementItemId:t.id,replacementItemKind:t.itemKind}),b.notify(s(`knowledge.dialogs.edit.notices.replacementSaved`))})}}async function Pe(){let e=g.item;if(e){if(!M.value)return $(s(`knowledge.dialogs.edit.errors.projectRequired`));if(!j.value.trim())return $(s(`knowledge.dialogs.edit.errors.assignmentReasonRequired`));if(M.value===J.value)return $(s(`knowledge.dialogs.edit.errors.alreadyAssigned`));await Q(async()=>{await S(`/api/knowledge/${e.itemKind}/${encodeURIComponent(e.id)}/assignment`,{personalSpaceId:g.personalSpaceId,targetProjectId:M.value,reason:j.value.trim()}),b.notify(s(`knowledge.dialogs.edit.notices.assignmentChanged`))})}}async function Fe(){let e=g.item;if(!e)return;let t=N.value===`project`?P.value:null;if(N.value===`project`&&!t)return $(s(`knowledge.dialogs.edit.errors.preferenceProjectRequired`));if(!F.value.trim())return $(s(`knowledge.dialogs.edit.errors.preferenceReasonRequired`));await Q(async()=>{await S(`/api/knowledge/${e.itemKind}/${encodeURIComponent(e.id)}/preference-scope`,{personalSpaceId:g.personalSpaceId,scope:N.value,projectId:t,reason:F.value.trim()}),b.notify(N.value===`global`?s(`knowledge.dialogs.edit.notices.preferenceGlobal`):s(`knowledge.dialogs.edit.notices.preferenceProject`))})}function X(e){return{personalSpaceId:g.personalSpaceId,personalProjectId:g.personalProjectId,action:e,reason:R.reason.trim()}}function Z(e,t){return JSON.stringify([e,t])}async function Q(e){T.value=!0,A.value=``;try{await e(),y(`close`),y(`saved`)}catch(e){A.value=e instanceof Error?e.message:s(`knowledge.dialogs.edit.errors.saveFailed`),b.reportError(e)}finally{T.value=!1}}function $(e){A.value=e}return(t,n)=>e.item?(f(),o(`dialog`,re,[p(`div`,ie,[p(`header`,ae,[p(`div`,null,[n[24]||=p(`p`,{class:`eyebrow`},`PERSONAL KNOWLEDGE`,-1),p(`h3`,null,_(B.value?i(s)(`knowledge.dialogs.edit.titleRestore`):i(s)(`knowledge.dialogs.edit.titleCorrect`)),1),p(`p`,null,_(i(s)(`knowledge.dialogs.edit.intro`)),1)]),p(`button`,{class:`secondary-action`,type:`button`,onClick:n[0]||=e=>y(`close`)},_(i(s)(`common.actions.close`)),1)]),p(`div`,oe,[p(`section`,null,[p(`h4`,null,_(i(s)(`knowledge.dialogs.edit.currentContent`)),1),p(`form`,{class:`knowledge-editor-form`,onSubmit:l(Me,[`prevent`])},[z.value?d(``,!0):(f(),o(`label`,se,[x(_(i(s)(`knowledge.dialogs.edit.name`)),1),a(p(`input`,{"onUpdate:modelValue":n[1]||=e=>R.name=e,maxlength:`512`},null,512),[[v,R.name]])])),z.value?(f(),o(`label`,le,[x(_(i(s)(`knowledge.dialogs.edit.fact`)),1),a(p(`textarea`,{"onUpdate:modelValue":n[3]||=e=>R.fact=e,maxlength:`8192`,rows:`5`},null,512),[[v,R.fact]])])):(f(),o(`label`,ce,[x(_(i(s)(`knowledge.dialogs.edit.description`)),1),a(p(`textarea`,{"onUpdate:modelValue":n[2]||=e=>R.summary=e,maxlength:`4096`,rows:`5`},null,512),[[v,R.summary]])])),p(`div`,ue,[p(`label`,null,[x(_(i(s)(`knowledge.dialogs.edit.classification`))+` `,1),c(E,{modelValue:R.currentQuadrant,"onUpdate:modelValue":n[4]||=e=>R.currentQuadrant=e,options:U.value,label:i(s)(`knowledge.dialogs.edit.classification`)},null,8,[`modelValue`,`options`,`label`])]),p(`label`,null,[x(_(i(s)(`knowledge.dialogs.edit.confirmationStatus`))+` `,1),c(E,{modelValue:R.confirmationStatus,"onUpdate:modelValue":n[5]||=e=>R.confirmationStatus=e,options:W.value,label:i(s)(`knowledge.dialogs.edit.confirmationStatus`)},null,8,[`modelValue`,`options`,`label`])]),p(`label`,null,[x(_(i(s)(`knowledge.dialogs.edit.preferenceDimension`))+` `,1),c(E,{modelValue:R.profileAspect,"onUpdate:modelValue":n[6]||=e=>R.profileAspect=e,options:G.value,label:i(s)(`knowledge.dialogs.edit.preferenceDimension`)},null,8,[`modelValue`,`options`,`label`])])]),p(`p`,de,_(i(s)(`knowledge.dialogs.edit.originQuadrant`,{quadrant:i(k)(e.item.originQuadrant)})),1),e.item.classificationExplicit?d(``,!0):(f(),o(`p`,fe,_(i(s)(`knowledge.dialogs.edit.missingQuadrant`)),1)),p(`fieldset`,pe,[p(`legend`,null,_(i(s)(`knowledge.dialogs.edit.basis`)),1),p(`label`,null,[x(_(i(s)(`knowledge.dialogs.edit.whyExists`))+` `,1),a(p(`textarea`,{"onUpdate:modelValue":n[7]||=e=>R.existenceReason=e,maxlength:`4096`,rows:`3`,required:``},null,512),[[v,R.existenceReason]])]),p(`label`,null,[x(_(i(s)(`knowledge.dialogs.edit.whyQuadrant`))+` `,1),a(p(`textarea`,{"onUpdate:modelValue":n[8]||=e=>R.quadrantReason=e,maxlength:`4096`,rows:`3`,required:``},null,512),[[v,R.quadrantReason]])]),p(`div`,me,[p(`label`,null,[x(_(i(s)(`knowledge.dialogs.edit.proposer`))+` `,1),c(E,{modelValue:R.proposedByKind,"onUpdate:modelValue":n[9]||=e=>R.proposedByKind=e,options:te.value,label:i(s)(`knowledge.dialogs.edit.proposer`)},null,8,[`modelValue`,`options`,`label`])]),p(`label`,null,[x(_(i(s)(`knowledge.dialogs.edit.proposerDescription`))+` `,1),a(p(`input`,{"onUpdate:modelValue":n[10]||=e=>R.proposedByLabel=e,maxlength:`160`,placeholder:i(s)(`knowledge.dialogs.edit.proposerPlaceholder`)},null,8,he),[[v,R.proposedByLabel]])]),R.confirmationStatus===`confirmed`?(f(),o(u,{key:0},[p(`label`,null,[x(_(i(s)(`knowledge.dialogs.edit.confirmer`))+` `,1),c(E,{modelValue:R.confirmedByKind,"onUpdate:modelValue":n[11]||=e=>R.confirmedByKind=e,options:ne.value,label:i(s)(`knowledge.dialogs.edit.confirmer`)},null,8,[`modelValue`,`options`,`label`])]),p(`label`,null,[x(_(i(s)(`knowledge.dialogs.edit.confirmerDescription`))+` `,1),a(p(`input`,{"onUpdate:modelValue":n[12]||=e=>R.confirmedByLabel=e,maxlength:`160`,placeholder:i(s)(`knowledge.dialogs.edit.confirmerPlaceholder`)},null,8,ge),[[v,R.confirmedByLabel]])])],64)):d(``,!0)]),p(`p`,null,_(i(s)(`knowledge.dialogs.edit.agentConfirmedBoundary`)),1)]),V.value?d(``,!0):(f(),o(`fieldset`,_e,[p(`legend`,null,_(i(s)(`knowledge.dialogs.edit.crossProjectInheritance`)),1),p(`label`,null,[x(_(i(s)(`knowledge.dialogs.edit.inheritanceScope`))+` `,1),c(E,{modelValue:R.inheritanceMode,"onUpdate:modelValue":n[13]||=e=>R.inheritanceMode=e,options:ee.value,label:i(s)(`knowledge.dialogs.edit.inheritanceScope`)},null,8,[`modelValue`,`options`,`label`])]),R.inheritanceMode===`selected_projects`?(f(),o(`label`,ve,[x(_(i(s)(`knowledge.dialogs.edit.inheritedProjects`))+` `,1),c(E,{modelValue:I.value,"onUpdate:modelValue":n[14]||=e=>I.value=e,options:H.value,label:i(s)(`knowledge.dialogs.edit.inheritedProjects`),searchable:``},null,8,[`modelValue`,`options`,`label`])])):d(``,!0),p(`p`,null,_(i(s)(`knowledge.dialogs.edit.inheritanceBoundary`)),1)])),p(`fieldset`,ye,[p(`legend`,null,_(B.value?i(s)(`knowledge.dialogs.edit.replacement`):i(s)(`knowledge.dialogs.edit.optionalReplacement`)),1),p(`label`,null,[x(_(B.value?i(s)(`knowledge.dialogs.edit.historicalReplacement`):i(s)(`knowledge.dialogs.edit.activeReplacement`))+` `,1),c(E,{modelValue:L.value,"onUpdate:modelValue":n[15]||=e=>L.value=e,options:je.value,label:i(s)(`knowledge.dialogs.edit.replacement`),searchable:``},null,8,[`modelValue`,`options`,`label`])]),p(`p`,null,_(i(s)(`knowledge.dialogs.edit.replacementBoundary`)),1)]),p(`label`,null,[x(_(i(s)(`knowledge.dialogs.edit.correctionReason`)),1),a(p(`textarea`,{"onUpdate:modelValue":n[16]||=e=>R.reason=e,maxlength:`2000`,rows:`3`,required:``},null,512),[[v,R.reason]])]),A.value?(f(),o(`p`,be,_(A.value),1)):d(``,!0),p(`div`,xe,[B.value?(f(),o(u,{key:1},[p(`button`,{class:`secondary-action`,type:`button`,disabled:T.value,onClick:n[18]||=e=>Y(`restore`)},_(i(s)(`knowledge.dialogs.edit.restore`)),9,Ce),p(`button`,{class:`secondary-action`,type:`button`,disabled:T.value,onClick:Ne},_(i(s)(`knowledge.dialogs.edit.saveReplacement`)),9,we)],64)):(f(),o(`button`,{key:0,class:`secondary-action`,type:`button`,disabled:T.value,onClick:n[17]||=e=>Y(`invalidate`)},_(i(s)(`knowledge.dialogs.edit.invalidate`)),9,Se)),p(`button`,{class:`primary-action`,type:`submit`,disabled:T.value},_(T.value?i(s)(`knowledge.dialogs.edit.saving`):R.confirmationStatus===`confirmed`?i(s)(`knowledge.dialogs.edit.saveConfirmed`):i(s)(`knowledge.dialogs.edit.savePending`)),9,Te)])],32)]),V.value?(f(),o(`section`,Oe,[p(`h4`,null,_(i(s)(`knowledge.dialogs.edit.preferenceScope`)),1),p(`p`,null,_(i(s)(`knowledge.dialogs.edit.preferenceScopeCopy`)),1),p(`form`,{class:`knowledge-editor-form`,onSubmit:l(Fe,[`prevent`])},[p(`label`,null,[x(_(i(s)(`knowledge.dialogs.edit.effectiveScope`))+` `,1),c(E,{modelValue:N.value,"onUpdate:modelValue":n[21]||=e=>N.value=e,options:K.value,label:i(s)(`knowledge.dialogs.edit.preferenceScope`)},null,8,[`modelValue`,`options`,`label`])]),N.value===`project`?(f(),o(`label`,ke,[x(_(i(s)(`knowledge.dialogs.edit.personalProject`))+` `,1),c(E,{modelValue:P.value,"onUpdate:modelValue":n[22]||=e=>P.value=e,options:H.value,label:i(s)(`knowledge.dialogs.edit.personalProject`),searchable:``},null,8,[`modelValue`,`options`,`label`])])):d(``,!0),p(`label`,null,[x(_(i(s)(`knowledge.dialogs.edit.assignmentReason`)),1),a(p(`textarea`,{"onUpdate:modelValue":n[23]||=e=>F.value=e,maxlength:`2000`,rows:`3`,required:``},null,512),[[v,F.value]])]),p(`button`,{class:`primary-action`,type:`submit`,disabled:T.value},_(i(s)(`knowledge.dialogs.edit.saveScope`)),9,Ae)],32)])):(f(),o(`section`,Ee,[p(`h4`,null,_(i(s)(`knowledge.dialogs.edit.projectOwnership`)),1),p(`p`,null,_(i(s)(`knowledge.dialogs.edit.ownershipCopy`)),1),p(`form`,{class:`knowledge-editor-form`,onSubmit:l(Pe,[`prevent`])},[p(`label`,null,[x(_(i(s)(`knowledge.dialogs.edit.targetProject`))+` `,1),c(E,{modelValue:M.value,"onUpdate:modelValue":n[19]||=e=>M.value=e,options:H.value,label:i(s)(`knowledge.dialogs.edit.targetProject`),searchable:``,required:``},null,8,[`modelValue`,`options`,`label`])]),p(`label`,null,[x(_(i(s)(`knowledge.dialogs.edit.assignmentReason`)),1),a(p(`textarea`,{"onUpdate:modelValue":n[20]||=e=>j.value=e,maxlength:`2000`,rows:`3`,required:``},null,512),[[v,j.value]])]),p(`button`,{class:`primary-action`,type:`submit`,disabled:T.value||e.projects.length===0},_(i(s)(`knowledge.dialogs.edit.adjustOwnership`)),9,De)],32)]))])])])):d(``,!0)}});export{P as a,L as i,G as n,I as r,K as t};
@@ -1 +1 @@
1
- .virtual-directory-list[data-v-dd2afd66]{min-width:0;height:100%;min-height:0;position:relative;overflow:hidden}.virtual-directory-list__scroller[data-v-dd2afd66]{overscroll-behavior:contain;width:100%;height:100%;overflow:auto}.virtual-directory-list__header[data-v-dd2afd66]{z-index:3;position:sticky;top:0}.virtual-directory-list__canvas[data-v-dd2afd66]{position:relative}.virtual-directory-list__row[data-v-dd2afd66]{isolation:isolate;will-change:transform;width:100%;position:absolute;top:0;left:0;overflow:hidden}.virtual-directory-list__content[data-v-dd2afd66]{width:100%;height:100%;position:relative}.virtual-directory-list__content[data-v-dd2afd66] button>*{z-index:2;position:relative}.virtual-directory-list__watermark[data-v-dd2afd66]{z-index:1;color:#2f39330e;letter-spacing:-.09em;pointer-events:none;-webkit-user-select:none;user-select:none;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:31px;font-weight:760;line-height:1;position:absolute;bottom:-7px;right:9px}.virtual-directory-list__row.is-active .virtual-directory-list__watermark[data-v-dd2afd66]{color:#35604714}.virtual-directory-list__position[data-v-dd2afd66]{z-index:4;color:#8b938d;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);pointer-events:none;background:#ffffffe0;border:1px solid #cfd7d1c7;border-radius:999px;align-items:baseline;gap:4px;padding:6px 9px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:9px;line-height:1;display:flex;position:absolute;bottom:12px;right:12px;box-shadow:0 3px 12px #2f393314}.virtual-directory-list__position strong[data-v-dd2afd66]{color:#425047;font-size:11px;font-weight:720}.knowledge-confirm-dialog[data-v-26170b1a]{width:min(680px,100vw - 48px)}.knowledge-confirm-dialog-shell[data-v-26170b1a]{gap:18px;padding:24px;display:grid}.knowledge-confirm-summary[data-v-26170b1a]{border-top:1px solid #e1e5e2;border-bottom:1px solid #e1e5e2;gap:6px;padding:14px 0;display:grid}.knowledge-confirm-summary span[data-v-26170b1a],.knowledge-confirm-summary small[data-v-26170b1a]{color:#7d8780;font-size:10px}.knowledge-confirm-summary strong[data-v-26170b1a]{color:#29382f;font-size:16px}.knowledge-confirm-summary p[data-v-26170b1a]{color:#606b63;font-size:12px;line-height:1.65}.knowledge-confirm-fields[data-v-26170b1a]{gap:14px;display:grid}.knowledge-confirm-fields label[data-v-26170b1a]{color:#59645c;gap:6px;font-size:11px;font-weight:600;display:grid}.knowledge-confirm-acknowledgement[data-v-26170b1a]{color:#4e5c53;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:9px;font-size:11px;line-height:1.5;display:grid}
1
+ .virtual-directory-list[data-v-dd2afd66]{min-width:0;height:100%;min-height:0;position:relative;overflow:hidden}.virtual-directory-list__scroller[data-v-dd2afd66]{overscroll-behavior:contain;width:100%;height:100%;overflow:auto}.virtual-directory-list__header[data-v-dd2afd66]{z-index:3;position:sticky;top:0}.virtual-directory-list__canvas[data-v-dd2afd66]{position:relative}.virtual-directory-list__row[data-v-dd2afd66]{isolation:isolate;will-change:transform;width:100%;position:absolute;top:0;left:0;overflow:hidden}.virtual-directory-list__content[data-v-dd2afd66]{width:100%;height:100%;position:relative}.virtual-directory-list__content[data-v-dd2afd66] button>*{z-index:2;position:relative}.virtual-directory-list__watermark[data-v-dd2afd66]{z-index:1;color:#2f39330e;letter-spacing:-.09em;pointer-events:none;-webkit-user-select:none;user-select:none;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:31px;font-weight:760;line-height:1;position:absolute;bottom:-7px;right:9px}.virtual-directory-list__row.is-active .virtual-directory-list__watermark[data-v-dd2afd66]{color:#35604714}.virtual-directory-list__position[data-v-dd2afd66]{z-index:4;color:#8b938d;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);pointer-events:none;background:#ffffffe0;border:1px solid #cfd7d1c7;border-radius:999px;align-items:baseline;gap:4px;padding:6px 9px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:9px;line-height:1;display:flex;position:absolute;bottom:12px;right:12px;box-shadow:0 3px 12px #2f393314}.virtual-directory-list__position strong[data-v-dd2afd66]{color:#425047;font-size:11px;font-weight:720}
@@ -0,0 +1 @@
1
+ import{$ as e,D as t,E as n,F as r,M as i,Q as a,_ as o,a as s,et as c,f as l,g as u,j as d,k as f,m as p,p as m,q as h,tt as g,x as _}from"./i18n-CWfd8Dtt.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-CsYAR8O3.js";import{a as F,c as I,i as L,n as ee,s as te}from"./conversation-launcher-settings-Dnlcw7Rj.js";var R=[`aria-label`],z=[`data-virtual-index`],B={class:`virtual-directory-list__content`},V={class:`virtual-directory-list__watermark`,"aria-hidden":`true`},H=[`aria-label`],U=v(_({__name:`VirtualDirectoryList`,props:{items:{},rowHeight:{},label:{},minWidth:{default:`100%`},overscan:{default:8},resetKey:{default:void 0},activeIndex:{default:-1},watermarkPrefix:{default:`#`},itemKey:{type:Function,default:void 0}},setup(_,{expose:v}){let y=_,b=h(null),x=h(null),S=h(0),C=h(640),w=h(0),T=null,E=m(()=>y.items.length),D=m(()=>Math.max(3,String(E.value).length)),O=m(()=>E.value?Math.min(E.value,Math.floor(S.value/y.rowHeight)+1):0),k=m(()=>{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=m(()=>Array.from({length:k.value.end-k.value.start},(e,t)=>k.value.start+t)),j=m(()=>({height:`${E.value*y.rowHeight}px`,minWidth:y.minWidth})),M=m(()=>({minWidth:y.minWidth}));r([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`}),r(()=>y.resetKey,async()=>{await n(),I()},{flush:`post`}),r(E,async()=>{await n();let e=b.value;if(!e)return;let t=Math.max(0,e.scrollHeight-e.clientHeight);e.scrollTop>t&&(e.scrollTop=t),P()}),r([b,()=>y.activeIndex],async([e,t])=>{!e||t<0||t>=E.value||(await n(),L(t))},{flush:`post`}),t(()=>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}),(t,n)=>(f(),o(`section`,{class:`virtual-directory-list`,"aria-label":_.label},[p(`div`,{ref_key:`scroller`,ref:b,class:`virtual-directory-list__scroller`,onScrollPassive:F},[t.$slots.header?(f(),o(`div`,{key:0,ref_key:`header`,ref:x,class:`virtual-directory-list__header`,style:c(M.value)},[i(t.$slots,`header`,{},void 0,!0)],4)):u(``,!0),p(`div`,{class:`virtual-directory-list__canvas`,style:c(j.value)},[(f(!0),o(l,null,d(A.value,n=>(f(),o(`div`,{key:_.itemKey?.(_.items[n],n)??n,class:e([`virtual-directory-list__row`,{"is-active":n===_.activeIndex}]),"data-virtual-index":n,style:c({height:`${_.rowHeight}px`,transform:`translateY(${n*_.rowHeight}px)`})},[p(`div`,B,[i(t.$slots,`default`,{item:_.items[n],index:n,formattedIndex:N(n+1)},void 0,!0)]),p(`span`,V,g(_.watermarkPrefix)+g(N(n+1)),1)],14,z))),128))],4),!E.value&&t.$slots.empty?(f(),o(`div`,{key:1,class:`virtual-directory-list__empty`,style:c(M.value)},[i(t.$slots,`empty`,{},void 0,!0)],4)):u(``,!0),t.$slots.footer?(f(),o(`div`,{key:2,class:`virtual-directory-list__footer`,style:c(M.value)},[i(t.$slots,`footer`,{},void 0,!0)],4)):u(``,!0)],544),E.value?(f(),o(`output`,{key:0,class:`virtual-directory-list__position`,"aria-label":a(s)(`common.counts.listPosition`,{current:O.value,total:E.value})},[p(`strong`,null,g(N(O.value)),1),p(`span`,null,`/ `+g(N(E.value)),1)],8,H)):u(``,!0)],8,R))}}),[[`__scopeId`,`data-v-dd2afd66`]]),ne={class:`graph-inspector`},re={class:`eyebrow`},ie={class:`inspector-identity`},ae={class:`muted`},oe={key:0,class:`inspector-project-material`},se={key:3,class:`inspector-replacement`},ce={class:`inspector-replacement-heading`},le={key:1},ue={key:2},de={class:`inspector-meta`},fe={key:0},pe={key:1},me={key:2},he={key:3},ge={key:4},_e={key:5},ve={key:6},ye={key:7},be={key:8},xe={key:9},Se={key:10},Ce={key:12},we={class:`inspector-subtitle`},Te={key:0,class:`inspector-meta inspector-confirmation-basis`},Ee={key:0},De={key:1,class:`inspector-reasoning`},Oe={class:`inspector-subtitle`},ke={class:`inspector-meta inspector-attributes`},Ae={class:`inspector-subtitle`},je={class:`inspector-reasoning`},Me={key:7,class:`inspector-actions`},Ne={class:`inspector-subtitle`},Pe={class:`inspector-relations`},Fe={class:`relation-type`},Ie={class:`relation-target`},Le={class:`inspector-subtitle`},Re={class:`inspector-evidence`},ze={key:0,class:`evidence-excerpt`},Be={key:1,class:`evidence-source-actions`},Ve=[`onClick`],He=[`href`,`title`],Ue={class:`inspector-subtitle`},We={class:`inspector-history`},Ge={class:`inspector-subtitle`},Ke={class:`inspector-history inspector-audit-history`},qe={key:0},Je={class:`eyebrow`},Ye={class:`inspector-placeholder`},W=_({__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(t,{emit:n}){let r=t,i=n,c=m(()=>r.item?.itemKind===`entity`?r.item.raw:null),_=m(()=>r.item?.itemKind===`relationship`?r.item.raw:null),v=m(()=>new Map(r.graph?.nodes.map(e=>[e.id,e.name])??[])),R=m(()=>!c.value||!r.graph?[]:r.graph.edges.filter(e=>D(e.source)===c.value?.id||D(e.target)===c.value?.id).slice(0,12)),z=m(()=>Object.entries(r.item?.raw.attributes??{}).filter(([,e])=>e!=null&&e!==``)),B=m(()=>k(r.item)),V=m(()=>C(r.item)),H=m(()=>r.item?.itemKind===`entity`&&[`PersonalProject`,`RelatedPersonalProject`].includes(r.item.type)),U=m(()=>r.editable&&r.item?.itemKind===`entity`&&!r.item.invalidAt&&!r.item.profileAspect&&!B.value),W=m(()=>r.editable&&!B.value),G=m(()=>r.editable&&!B.value&&!r.item?.invalidAt&&!!r.item?.classificationExplicit&&q.value===`pending`),K=m(()=>B.value&&r.canManageProject&&r.item?.type!==`ExternalKnowledgeSource`),Xe=m(()=>U.value||W.value||G.value||K.value||!!r.mode||H.value&&!!V.value&&V.value!==r.currentProjectId||H.value&&!!V.value&&r.canPublishProject),q=m(()=>r.item?T(r.item):`unclassified`),Ze=m(()=>r.item?j(r.item):``),J=m(()=>r.item?.confirmationBasis??null),Y=h(``),Qe=ee(),X=m(()=>r.conversationLaunchers??Qe.value),Z=m(()=>{let e=r.item?.replacedByItemId,t=r.item?.replacedByItemKind;return!e||!t?null:A(r.graph).find(n=>n.id===e&&n.itemKind===t)??null}),$e=m(()=>{let e=r.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 et(e){return typeof e==`string`?e:JSON.stringify(e)}function Q(e){return`${Math.round(e*100)}%`}function tt(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 nt(e){if(e.preferenceScope!==`project`||!e.preferenceProjectId)return s(`knowledge.workspace.inspector.personalGlobal`);let t=e.preferenceProjectId,n=r.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 rt(e){return I(e,X.value)}function it(e){return te(e,X.value)}function $(e,t){return String(e.id??e.session_id??t)}async function at(e,t){await L(e)&&(Y.value=$(e,t))}return(n,r)=>(f(),o(`aside`,ne,[t.item?(f(),o(l,{key:0},[p(`p`,re,g(B.value?`PROJECT MATERIAL`:t.item.itemKind===`entity`?`ENTITY`:`RELATIONSHIP`),1),p(`h3`,null,g(t.item.itemKind===`entity`?t.item.title:_.value?.type),1),p(`div`,ie,[p(`span`,null,g(B.value?a(s)(`knowledge.workspace.inspector.ids.projection`):t.item.itemKind===`entity`?a(s)(`knowledge.workspace.inspector.ids.node`):a(s)(`knowledge.workspace.inspector.ids.relationship`)),1),p(`code`,null,g(t.item.id),1)]),p(`p`,ae,g(t.item.body),1),B.value?(f(),o(`section`,oe,[p(`div`,null,[p(`span`,null,g(a(s)(`knowledge.workspace.inspector.ownership`)),1),p(`strong`,null,g(a(P)(t.item)),1)]),p(`p`,null,g(a(s)(`knowledge.workspace.inspector.projectionCopy`)),1)])):(f(),o(`section`,{key:1,class:e([`inspector-classification`,`state-${q.value}`])},[p(`div`,null,[p(`span`,null,g(a(s)(`knowledge.workspace.inspector.currentJudgment`)),1),p(`strong`,null,g(a(b)(t.item)),1)]),p(`p`,null,g(Ze.value),1)],2)),!B.value&&t.item.humanEdited?(f(),o(`section`,{key:2,class:e([`inspector-human-change`,`state-${t.item.humanChangeStatus}`])},[p(`div`,null,[p(`span`,null,g(a(s)(`knowledge.workspace.inspector.humanReviewTitle`)),1),p(`strong`,null,g(a(O)(t.item.humanChangeStatus)),1)]),p(`p`,null,g($e.value),1),p(`small`,null,g(a(s)(`knowledge.workspace.inspector.humanVersion`,{version:t.item.humanChangeVersion})),1)],2)):u(``,!0),!B.value&&t.item.invalidAt?(f(),o(`section`,se,[p(`div`,ce,[p(`span`,null,g(a(s)(`knowledge.workspace.inspector.replacement`)),1),p(`strong`,null,g(Z.value?a(s)(`knowledge.workspace.inspector.replacedBy`):a(s)(`knowledge.workspace.inspector.noReplacement`)),1)]),Z.value?(f(),o(`button`,{key:0,class:`inspector-replacement-link`,type:`button`,onClick:r[0]||=e=>i(`openReplacement`,Z.value)},[p(`span`,null,[p(`strong`,null,g(Z.value.title),1),p(`small`,null,g(Z.value.body),1)]),p(`b`,null,g(a(s)(`knowledge.workspace.inspector.viewReplacement`)),1)])):t.item.replacedByItemId?(f(),o(`p`,le,g(a(s)(`knowledge.workspace.inspector.replacementOutOfScope`)),1)):(f(),o(`p`,ue,g(a(s)(`knowledge.workspace.inspector.missingReplacement`)),1))])):u(``,!0),p(`dl`,de,[p(`div`,null,[p(`dt`,null,g(a(s)(`knowledge.workspace.inspector.fields.type`)),1),p(`dd`,null,g(t.item.type),1)]),B.value?u(``,!0):(f(),o(`div`,fe,[p(`dt`,null,g(a(s)(`knowledge.workspace.inspector.fields.originQuadrant`)),1),p(`dd`,null,g(a(x)(t.item.originQuadrant)),1)])),B.value?u(``,!0):(f(),o(`div`,pe,[p(`dt`,null,g(a(s)(`knowledge.workspace.inspector.fields.currentQuadrant`)),1),p(`dd`,null,g(a(x)(t.item.currentQuadrant)),1)])),B.value?u(``,!0):(f(),o(`div`,me,[p(`dt`,null,g(a(s)(`knowledge.workspace.inspector.fields.quadrantExplanation`)),1),p(`dd`,null,g(a(w)(t.item.originQuadrant)),1)])),B.value?u(``,!0):(f(),o(`div`,he,[p(`dt`,null,g(a(s)(`knowledge.workspace.inspector.fields.confirmationStatus`)),1),p(`dd`,null,g(a(b)(t.item)),1)])),B.value?u(``,!0):(f(),o(`div`,ge,[p(`dt`,null,g(a(s)(`knowledge.workspace.inspector.fields.confidence`)),1),p(`dd`,null,g(Q(t.item.confidenceScore)),1)])),B.value?u(``,!0):(f(),o(`div`,_e,[p(`dt`,null,g(a(s)(`knowledge.workspace.inspector.fields.utility`)),1),p(`dd`,null,g(Q(t.item.utilityScore)),1)])),B.value?u(``,!0):(f(),o(`div`,ve,[p(`dt`,null,g(a(s)(`knowledge.workspace.inspector.fields.materialUse`)),1),p(`dd`,null,g(a(s)(`knowledge.workspace.inspector.useCount`,{uses:t.item.qualifiedUseCount,tasks:t.item.distinctTaskCount})),1)])),B.value?u(``,!0):(f(),o(`div`,ye,[p(`dt`,null,g(a(s)(`knowledge.workspace.inspector.fields.recentUse`)),1),p(`dd`,null,g(a(N)(t.item.lastUsedAt)),1)])),!B.value&&!t.item.profileAspect?(f(),o(`div`,be,[p(`dt`,null,g(a(s)(`knowledge.workspace.inspector.fields.inheritance`)),1),p(`dd`,null,g(tt(t.item)),1)])):u(``,!0),!B.value&&t.item.profileAspect?(f(),o(`div`,xe,[p(`dt`,null,g(a(s)(`knowledge.workspace.inspector.fields.preference`)),1),p(`dd`,null,g(a(y)(t.item.profileAspect)),1)])):u(``,!0),!B.value&&t.item.profileAspect?(f(),o(`div`,Se,[p(`dt`,null,g(a(s)(`knowledge.workspace.inspector.fields.effectiveScope`)),1),p(`dd`,null,g(nt(t.item)),1)])):u(``,!0),_.value?(f(),o(l,{key:11},[p(`div`,null,[p(`dt`,null,g(a(s)(`knowledge.workspace.inspector.fields.source`)),1),p(`dd`,null,g(v.value.get(a(D)(_.value.source))??_.value.source_name??a(D)(_.value.source)),1)]),p(`div`,null,[p(`dt`,null,g(a(s)(`knowledge.workspace.inspector.fields.target`)),1),p(`dd`,null,g(v.value.get(a(D)(_.value.target))??_.value.target_name??a(D)(_.value.target)),1)])],64)):u(``,!0),B.value?u(``,!0):(f(),o(`div`,Ce,[p(`dt`,null,g(a(s)(`knowledge.workspace.inspector.fields.status`)),1),p(`dd`,null,g(t.item.invalidAt?a(s)(`knowledge.workspace.inspector.historical`):a(s)(`common.status.current`)),1)]))]),B.value?u(``,!0):(f(),o(l,{key:4},[p(`h4`,we,g(a(s)(`knowledge.workspace.inspector.basisTitle`)),1),J.value?(f(),o(`dl`,Te,[p(`div`,null,[p(`dt`,null,g(a(s)(`knowledge.workspace.inspector.basis.existence`)),1),p(`dd`,null,g(J.value.existence_reason),1)]),p(`div`,null,[p(`dt`,null,g(a(s)(`knowledge.workspace.inspector.basis.quadrant`)),1),p(`dd`,null,g(J.value.quadrant_reason),1)]),p(`div`,null,[p(`dt`,null,g(a(s)(`knowledge.workspace.inspector.basis.proposer`)),1),p(`dd`,null,g(a(E)(J.value.proposed_by)),1)]),p(`div`,null,[p(`dt`,null,g(a(s)(`knowledge.workspace.inspector.basis.confirmer`)),1),p(`dd`,null,g(a(E)(J.value.confirmed_by)),1)]),p(`div`,null,[p(`dt`,null,g(a(s)(`knowledge.workspace.inspector.basis.time`)),1),p(`dd`,null,g(a(N)(J.value.confirmed_at)),1)]),J.value.agent_policy_version?(f(),o(`div`,Ee,[p(`dt`,null,g(a(s)(`knowledge.workspace.inspector.basis.agentPolicy`)),1),p(`dd`,null,g(J.value.agent_policy_version),1)])):u(``,!0)])):(f(),o(`p`,De,g(a(s)(`knowledge.workspace.inspector.legacyBasis`)),1))],64)),z.value.length?(f(),o(l,{key:5},[p(`h4`,Oe,g(a(s)(`knowledge.workspace.inspector.contentDetails`)),1),p(`dl`,ke,[(f(!0),o(l,null,d(z.value,([e,t])=>(f(),o(`div`,{key:e},[p(`dt`,null,g(e),1),p(`dd`,null,g(et(t)),1)]))),128))])],64)):u(``,!0),t.item.reasoningSummary?(f(),o(l,{key:6},[p(`h4`,Ae,g(a(s)(`knowledge.workspace.inspector.formation`)),1),p(`p`,je,g(t.item.reasoningSummary),1)],64)):u(``,!0),Xe.value?(f(),o(`div`,Me,[G.value?(f(),o(`button`,{key:0,class:`primary-action inspector-confirm-action`,type:`button`,onClick:r[1]||=e=>i(`confirm`,t.item)},g(t.item.profileAspect?a(s)(`knowledge.workspace.inspector.confirmPreference`):a(s)(`knowledge.workspace.inspector.confirmKnowledge`)),1)):u(``,!0),K.value?(f(),o(`button`,{key:1,class:`primary-action`,type:`button`,onClick:r[2]||=e=>i(`manageProject`,t.item)},g(a(s)(`knowledge.workspace.inspector.editMaterials`)),1)):u(``,!0),t.mode===`graph`?(f(),o(`button`,{key:2,class:`secondary-action`,type:`button`,onClick:r[3]||=e=>i(`openDirectory`,t.item)},g(a(s)(`knowledge.workspace.inspector.locateDirectory`)),1)):u(``,!0),t.mode===`directory`?(f(),o(`button`,{key:3,class:`secondary-action`,type:`button`,onClick:r[4]||=e=>i(`openGraph`,t.item)},g(a(s)(`knowledge.workspace.inspector.locateGraph`)),1)):u(``,!0),H.value&&V.value&&V.value!==t.currentProjectId?(f(),o(`button`,{key:4,class:`primary-action`,type:`button`,onClick:r[5]||=e=>i(`openProject`,V.value)},g(a(s)(`knowledge.workspace.inspector.enterProject`)),1)):u(``,!0),H.value&&V.value&&t.canPublishProject?(f(),o(`button`,{key:5,class:`secondary-action`,type:`button`,onClick:r[6]||=e=>i(`publishProject`,V.value)},g(a(s)(`knowledge.workspace.inspector.publish`)),1)):u(``,!0),U.value?(f(),o(`button`,{key:6,class:`primary-action`,type:`button`,onClick:r[7]||=e=>i(`createProject`,t.item)},g(a(s)(`knowledge.workspace.inspector.createProject`)),1)):u(``,!0),W.value?(f(),o(`button`,{key:7,class:`secondary-action inspector-edit-action`,type:`button`,onClick:r[8]||=e=>i(`edit`,t.item)},g(t.item.profileAspect?a(s)(`knowledge.workspace.inspector.correctPreference`):a(s)(`knowledge.workspace.inspector.correctOrAssign`)),1)):u(``,!0)])):u(``,!0),R.value.length?(f(),o(l,{key:8},[p(`h4`,Ne,g(a(s)(`knowledge.workspace.inspector.relations`)),1),p(`div`,Pe,[(f(!0),o(l,null,d(R.value,e=>(f(),o(`div`,{key:e.id,class:`inspector-relation`},[p(`strong`,Fe,g(e.type),1),p(`p`,Ie,g(e.fact||a(s)(`knowledge.workspace.inspector.relationshipFallback`)),1)]))),128))])],64)):u(``,!0),t.item.evidence.length?(f(),o(l,{key:9},[p(`h4`,Le,g(a(s)(`knowledge.workspace.inspector.evidence`)),1),p(`div`,Re,[(f(!0),o(l,null,d(t.item.evidence,(e,t)=>(f(),o(`article`,{key:$(e,t),class:`evidence-card`},[p(`strong`,null,g(e.name||e.source_description||a(s)(`knowledge.workspace.inspector.sourceRecord`)),1),p(`p`,null,g(e.summary||e.source_description),1),p(`span`,null,g(a(F)(e))+` · `+g(e.source_kind||a(s)(`knowledge.workspace.inspector.source`))+` · `+g(a(N)(e.reference_time||e.created_at)),1),e.source_excerpt?(f(),o(`p`,ze,g(e.source_excerpt),1)):u(``,!0),e.session_id?(f(),o(`div`,Be,[p(`button`,{class:`evidence-source-action`,type:`button`,onClick:n=>at(e,t)},g(Y.value===$(e,t)?a(s)(`knowledge.workspace.inspector.copiedSessionId`):a(s)(`knowledge.workspace.inspector.copySessionId`)),9,Ve),rt(e)?(f(),o(`a`,{key:0,class:`evidence-source-action`,href:rt(e)??void 0,title:a(s)(`knowledge.workspace.inspector.openConversationWith`,{app:it(e)??a(F)(e)})},g(a(s)(`knowledge.workspace.inspector.openConversation`)),9,He)):u(``,!0)])):u(``,!0)]))),128))])],64)):u(``,!0),t.item.revisions.length?(f(),o(l,{key:10},[p(`h4`,Ue,g(a(s)(`knowledge.workspace.inspector.revisions`)),1),p(`div`,We,[(f(!0),o(l,null,d(t.item.revisions,(e,t)=>(f(),o(`article`,{key:String(e.id??t),class:`history-row`},[p(`strong`,null,g(a(S)(e.action)),1),p(`p`,null,g(e.reason??e.summary??a(s)(`knowledge.workspace.inspector.noRevisionCopy`)),1),p(`span`,null,g(a(N)(e.created_at)),1)]))),128))])],64)):u(``,!0),t.item.auditEvents.length?(f(),o(l,{key:11},[p(`h4`,Ge,g(a(s)(`knowledge.workspace.inspector.audit`)),1),p(`div`,Ke,[(f(!0),o(l,null,d(t.item.auditEvents,e=>(f(),o(`article`,{key:e.id,class:`history-row`},[p(`strong`,null,g(a(M)(e.action)),1),p(`p`,null,g(e.reason),1),p(`span`,null,g(a(s)(`knowledge.workspace.inspector.version`,{version:e.human_change_version}))+` · `+g(a(N)(e.created_at)),1),e.action===`agent_review`?(f(),o(`small`,qe,g(a(s)(`knowledge.workspace.inspector.conflictClassification`,{conflict:e.conflict_check===`no_conflict`?a(s)(`knowledge.workspace.inspector.conflictNone`):a(s)(`knowledge.workspace.inspector.conflictFound`),classification:e.classification_check===`reasonable`?a(s)(`knowledge.workspace.inspector.classificationReasonable`):a(s)(`knowledge.workspace.inspector.classificationAdjust`)})),1)):u(``,!0)]))),128))])],64)):u(``,!0)],64)):(f(),o(l,{key:1},[p(`p`,Je,g(a(s)(`knowledge.workspace.inspector.contentDetails`)),1),p(`h3`,null,g(a(s)(`knowledge.workspace.inspector.placeholderTitle`)),1),p(`p`,Ye,g(a(s)(`knowledge.workspace.inspector.placeholderCopy`)),1)],64))]))}});export{U as n,W as t};
@@ -0,0 +1 @@
1
+ import{$ as e,D as t,E as n,F as r,L as i,Q as a,R as o,_ as s,a as c,b as l,d as ee,f as u,g as d,h as f,j as p,k as m,m as h,p as g,q as _,s as v,tt as y,u as b,x,y as S}from"./i18n-CWfd8Dtt.js";import{a as C,r as w,t as te}from"./console-DMvHxKf9.js";import{t as T}from"./_plugin-vue_export-helper-BDNMzG2s.js";import{t as E}from"./SearchableSelect-C5RiB5F8.js";import{r as D,t as O}from"./identity-C9mLdR8L.js";import{a as k,i as A,n as j,r as M,t as N}from"./KnowledgeEditDialog-wotVahvr.js";import{n as ne,t as P}from"./KnowledgeInspector-BzkW0mVs.js";import{D as F,E as I,_ as L,g as R,n as z,o as re,r as ie,t as B,u as ae,v as V}from"./model-CsYAR8O3.js";var H={open:``,class:`project-dialog batch-confirm-dialog vue-dialog`},U={class:`project-dialog-shell`},W={class:`project-dialog-header`},oe={class:`batch-confirm-controls`},se={key:0,class:`batch-group-summary`},G={class:`batch-confirmer-fields`},K=[`required`,`placeholder`],q=[`placeholder`],J={class:`batch-confirm-rule`},Y={class:`batch-confirm-review`},ce={class:`batch-review-heading`},le={key:0,class:`batch-limit-note`},X={class:`batch-review-list`},ue=[`value`],Z={class:`batch-confirm-acknowledgement`},de={key:0,class:`publish-dialog-error`,role:`alert`},fe={class:`publish-dialog-actions`},Q=[`disabled`],pe=[`disabled`],me=T(x({__name:`KnowledgeBatchConfirmDialog`,props:{groups:{},personalSpaceId:{}},emits:[`close`,`saved`],setup(e,{emit:t}){let n=e,i=t,f=te(),x=_(``),w=_([]),T=_(`user`),k=_(``),A=_(``),j=_(!1),M=_(!1),N=_(``),ne=g(()=>n.groups.map(e=>({value:e.key,label:e.label,meta:c(`knowledge.dialogs.batch.groupMeta`,{kind:e.kind===`source`?c(`knowledge.dialogs.batch.sameSource`):c(`knowledge.dialogs.batch.sameSession`),count:e.items.length}),search:`${D(e.value)} ${e.description}`}))),P=g(()=>n.groups.find(({key:e})=>e===x.value)??null),F=g(()=>P.value?.items.slice(0,200)??[]),L=g(()=>{let e=new Set(w.value);return F.value.filter(t=>e.has(B(t)))}),R=g(()=>F.value.length>0&&L.value.length===F.value.length),re=g(()=>!M.value&&L.value.length>=2&&!!A.value.trim()&&j.value&&(T.value!==`authoritative_source`||!!k.value.trim())),ie=g(()=>[{value:`user`,label:c(`knowledge.domain.actors.user`)},{value:`authoritative_source`,label:c(`knowledge.domain.actors.authoritative_source`)}]);r(()=>n.groups,e=>{e.some(({key:e})=>e===x.value)||(x.value=e[0]?.key??``)},{immediate:!0}),r(x,()=>{w.value=F.value.map(B),j.value=!1,N.value=``},{immediate:!0});function B(e){return`${e.itemKind}:${e.id}`}function ae(){w.value=R.value?[]:F.value.map(B),j.value=!1}function V(e){let t=P.value;return t?z(e,t):null}async function me(){let e=P.value;if(!e)return $(c(`knowledge.dialogs.batch.errors.groupRequired`));if(L.value.length<2)return $(c(`knowledge.dialogs.batch.errors.itemsRequired`));if(!A.value.trim())return $(c(`knowledge.dialogs.batch.errors.reasonRequired`));if(T.value===`authoritative_source`&&!k.value.trim())return $(c(`knowledge.dialogs.batch.errors.sourceNameRequired`));if(!j.value)return $(c(`knowledge.dialogs.batch.errors.acknowledgmentRequired`));M.value=!0,N.value=``;try{let t=await C(`/api/knowledge/batch-confirmation`,{personalSpaceId:n.personalSpaceId,groupKind:e.kind,groupValue:e.value,reason:A.value.trim(),confirmer:{kind:T.value,label:k.value.trim()||null},items:L.value.map(e=>{let t=V(e);return{itemId:e.id,itemKind:e.itemKind,existenceReason:t.existenceReason,quadrantReason:t.quadrantReason,proposedBy:t.proposedBy}})});f.notify(c(`knowledge.dialogs.batch.confirmed`,{count:t.confirmed_count})),i(`saved`),i(`close`)}catch(e){N.value=e instanceof Error?e.message:c(`knowledge.dialogs.batch.errors.failed`),f.reportError(e)}finally{M.value=!1}}function $(e){N.value=e}return(e,t)=>(m(),s(`dialog`,H,[h(`div`,U,[h(`header`,W,[h(`div`,null,[t[8]||=h(`p`,{class:`eyebrow`},`BATCH CONFIRMATION`,-1),h(`h3`,null,y(a(c)(`knowledge.dialogs.batch.title`)),1),h(`p`,null,y(a(c)(`knowledge.dialogs.batch.intro`)),1)]),h(`button`,{class:`secondary-action`,type:`button`,onClick:t[0]||=e=>i(`close`)},y(a(c)(`common.actions.close`)),1)]),h(`form`,{class:`batch-confirm-form`,onSubmit:ee(me,[`prevent`])},[h(`section`,oe,[h(`label`,null,[S(y(a(c)(`knowledge.dialogs.batch.range`))+` `,1),l(E,{modelValue:x.value,"onUpdate:modelValue":t[1]||=e=>x.value=e,options:ne.value,label:a(c)(`knowledge.dialogs.batch.rangeLabel`),searchable:``},null,8,[`modelValue`,`options`,`label`])]),P.value?(m(),s(`div`,se,[h(`span`,null,y(P.value.kind===`source`?a(c)(`knowledge.dialogs.batch.sameSource`):a(c)(`knowledge.dialogs.batch.sameSession`)),1),h(`strong`,null,y(P.value.label),1),h(`p`,null,y(P.value.description),1),h(`small`,null,`#`+y(a(O)(P.value.value,28)),1)])):d(``,!0),h(`div`,G,[h(`label`,null,[S(y(a(c)(`knowledge.dialogs.batch.confirmer`))+` `,1),l(E,{modelValue:T.value,"onUpdate:modelValue":t[2]||=e=>T.value=e,options:ie.value,label:a(c)(`knowledge.dialogs.batch.confirmerLabel`)},null,8,[`modelValue`,`options`,`label`])]),h(`label`,null,[S(y(a(c)(`knowledge.dialogs.batch.confirmerDescription`))+` `,1),o(h(`input`,{"onUpdate:modelValue":t[3]||=e=>k.value=e,maxlength:`160`,required:T.value===`authoritative_source`,placeholder:T.value===`user`?a(c)(`knowledge.dialogs.batch.userPlaceholder`):a(c)(`knowledge.dialogs.batch.sourcePlaceholder`)},null,8,K),[[b,k.value]])])]),h(`label`,null,[S(y(a(c)(`knowledge.dialogs.batch.basis`))+` `,1),o(h(`textarea`,{"onUpdate:modelValue":t[4]||=e=>A.value=e,maxlength:`2000`,rows:`3`,required:``,placeholder:a(c)(`knowledge.dialogs.batch.basisPlaceholder`)},null,8,q),[[b,A.value]])]),h(`p`,J,y(a(c)(`knowledge.dialogs.batch.agentBoundary`)),1)]),h(`section`,Y,[h(`div`,ce,[h(`div`,null,[h(`h4`,null,y(a(c)(`knowledge.dialogs.batch.itemReview`)),1),h(`p`,null,y(a(c)(`knowledge.dialogs.batch.selected`,{selected:L.value.length,total:F.value.length})),1)]),h(`button`,{class:`secondary-action`,type:`button`,onClick:ae},y(R.value?a(c)(`knowledge.dialogs.batch.clearAll`):a(c)(`knowledge.dialogs.batch.selectAll`)),1)]),(P.value?.items.length??0)>200?(m(),s(`p`,le,y(a(c)(`knowledge.dialogs.batch.limit`)),1)):d(``,!0),h(`div`,X,[(m(!0),s(u,null,p(F.value,e=>(m(),s(`label`,{key:B(e),class:`batch-review-item`},[o(h(`input`,{"onUpdate:modelValue":t[5]||=e=>w.value=e,type:`checkbox`,value:B(e)},null,8,ue),[[v,w.value]]),h(`span`,null,[h(`strong`,null,y(e.title),1),h(`small`,null,y(a(I)(e.originQuadrant))+` · `+y(e.type),1),h(`em`,null,y(V(e)?.existenceReason),1),h(`em`,null,y(V(e)?.quadrantReason),1)])]))),128))]),h(`label`,Z,[o(h(`input`,{"onUpdate:modelValue":t[6]||=e=>j.value=e,type:`checkbox`},null,512),[[v,j.value]]),h(`span`,null,y(a(c)(`knowledge.dialogs.batch.acknowledgment`)),1)])]),N.value?(m(),s(`p`,de,y(N.value),1)):d(``,!0),h(`div`,fe,[h(`button`,{class:`secondary-action`,type:`button`,disabled:M.value,onClick:t[7]||=e=>i(`close`)},y(a(c)(`common.actions.cancel`)),9,Q),h(`button`,{class:`primary-action`,type:`submit`,disabled:!re.value},y(M.value?a(c)(`knowledge.dialogs.batch.confirming`):a(c)(`knowledge.dialogs.batch.confirmItems`,{count:L.value.length})),9,pe)])],32)])]))}}),[[`__scopeId`,`data-v-5b6ea24b`]]),$={class:`view knowledge-organizer`},he={class:`organizer-toolbar`},ge={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={class:`organizer-table-head`,"aria-hidden":`true`},Oe=[`onClick`],ke={class:`organizer-item-copy`},Ae={class:`organizer-basis`},je={key:0,class:`organizer-loading-inline`},Me={class:`empty-state`},Ne=100,Pe=68,Fe=T(x({__name:`KnowledgeOrganizerPage`,setup(ee){let v=te(),x=_(null),C=_(!1),T=_(!1),E=_(``),D=_(`all`),O=_(`all`),z=_(null),H=_(null),U=_(null),W=_(!1),oe=M(),se=A(g(()=>oe||C.value&&!x.value)),G=0,K=g(()=>[{value:`known_unknown`,short:c(`knowledge.workspace.organizer.quadrants.known_unknown.short`),coordinate:c(`knowledge.workspace.organizer.quadrants.known_unknown.coordinate`)},{value:`known_known`,short:c(`knowledge.workspace.organizer.quadrants.known_known.short`),coordinate:c(`knowledge.workspace.organizer.quadrants.known_known.coordinate`)},{value:`unknown_unknown`,short:c(`knowledge.workspace.organizer.quadrants.unknown_unknown.short`),coordinate:c(`knowledge.workspace.organizer.quadrants.unknown_unknown.coordinate`)},{value:`unknown_known`,short:c(`knowledge.workspace.organizer.quadrants.unknown_known.short`),coordinate:c(`knowledge.workspace.organizer.quadrants.unknown_known.coordinate`)}]),q=g(()=>[{value:`pending`,label:c(`knowledge.domain.reviewStates.pending`),hint:c(`knowledge.workspace.organizer.review.pendingHint`)},{value:`agent_confirmed`,label:c(`knowledge.domain.reviewStates.agent_confirmed`),hint:c(`knowledge.workspace.organizer.review.agentConfirmedHint`)},{value:`confirmed`,label:c(`knowledge.domain.reviewStates.confirmed`),hint:c(`knowledge.workspace.organizer.review.confirmedHint`)}]),J=g(()=>R(x.value)),Y=g(()=>ie(J.value)),ce=g(()=>Object.fromEntries([...K.value.map(({value:e})=>e),`unclassified`].map(e=>[e,J.value.filter(t=>t.originQuadrant===e).length]))),le=g(()=>D.value!==`all`),X=g(()=>le.value?J.value.filter(e=>e.originQuadrant===D.value):J.value),ue=g(()=>Object.fromEntries(q.value.map(({value:e})=>[e,X.value.filter(t=>L(t)===e).length]))),Z=g(()=>{let e=E.value.trim().toLocaleLowerCase();return J.value.filter(t=>D.value!==`all`&&t.originQuadrant!==D.value||O.value!==`all`&&L(t)!==O.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))}),de=g(()=>`${E.value}\u0000${D.value}\u0000${O.value}`),fe=g(()=>z.value?Z.value.findIndex(({id:e,itemKind:t})=>e===z.value?.id&&t===z.value?.itemKind):-1);r(()=>v.activePersonalSpace?.id,e=>{e&&Q(e)},{immediate:!0}),r(Z,e=>{z.value&&!e.some(({id:e,itemKind:t})=>e===z.value?.id&&t===z.value?.itemKind)&&(z.value=null)}),t(()=>{G+=1});async function Q(e=v.activePersonalSpace?.id){if(!e)return;let t=++G;C.value=!0,T.value=!1;let r=!1;try{let i=0;for(;t===G;){let a=await w(`/api/graph?${new URLSearchParams({spaceId:e,limit:String(Ne),offset:String(i)})}`);if(t!==G)return;if(x.value=r?B(x.value,a):a,r=!0,z.value&&=J.value.find(({id:e,itemKind:t})=>e===z.value?.id&&t===z.value?.itemKind)??null,C.value=!1,!a.truncated)break;let o=a.next_offset;if(!Number.isInteger(o)||o<=i)throw Error(c(`knowledge.workspace.organizer.paginationError`));i=o,T.value=!0,await n()}}catch(e){r||(x.value=null),v.reportError(e)}finally{t===G&&(C.value=!1,T.value=!1)}}function pe(e){return`${e.itemKind}:${e.id}`}function Fe(e){D.value=D.value===e?`all`:e}function Ie(e){O.value=e}function Le(e){E.value=``,D.value=e.originQuadrant,O.value=`all`,z.value=e}return(t,n)=>(m(),s(`section`,$,[h(`div`,he,[h(`label`,ge,[h(`span`,null,y(a(c)(`knowledge.workspace.organizer.filterKnowledge`)),1),o(h(`input`,{"onUpdate:modelValue":n[0]||=e=>E.value=e,type:`search`,placeholder:a(c)(`knowledge.workspace.organizer.searchPlaceholder`)},null,8,_e),[[b,E.value]])]),h(`div`,{class:`quadrant-filter`,"aria-label":a(c)(`knowledge.workspace.organizer.quadrantFilterAria`)},[h(`span`,null,y(a(c)(`knowledge.workspace.organizer.discoverySource`)),1),h(`button`,{type:`button`,"data-quadrant":`all`,class:e({active:D.value===`all`}),"aria-pressed":D.value===`all`,onClick:n[1]||=e=>D.value=`all`},[S(y(a(c)(`common.status.all`))+` `,1),h(`strong`,null,y(J.value.length),1)],10,ye),(m(!0),s(u,null,p(K.value,t=>(m(),s(`button`,{key:t.value,type:`button`,"data-quadrant":t.value,class:e({active:D.value===t.value}),"aria-pressed":D.value===t.value,title:t.coordinate,onClick:e=>Fe(t.value)},[S(y(t.short)+` `,1),h(`strong`,null,y(ce.value[t.value]),1)],10,be))),128))],8,ve),h(`div`,{class:`review-state-filter`,"aria-label":a(c)(`knowledge.workspace.organizer.reviewFilterAria`)},[h(`span`,null,y(a(c)(`knowledge.workspace.organizer.reviewStatus`)),1),h(`button`,{type:`button`,"data-review-state":`all`,class:e({active:O.value===`all`}),"aria-pressed":O.value===`all`,onClick:n[2]||=e=>Ie(`all`)},[S(y(a(c)(`common.status.all`))+` `,1),h(`strong`,null,y(X.value.length),1)],10,Se),(m(!0),s(u,null,p(q.value,t=>(m(),s(`button`,{key:t.value,type:`button`,"data-review-state":t.value,class:e([`state-${t.value}`,{active:O.value===t.value}]),"aria-pressed":O.value===t.value,title:t.hint,onClick:e=>Ie(t.value)},[S(y(t.label)+` `,1),h(`strong`,null,y(ue.value[t.value]),1)],10,Ce))),128))],8,xe),h(`div`,we,[h(`p`,Te,[S(y(a(c)(`knowledge.workspace.organizer.showing`,{visible:Z.value.length,total:X.value.length}))+` `,1),O.value===`all`?d(``,!0):(m(),s(`span`,Ee,` · `+y(q.value.find(({value:e})=>e===O.value)?.label),1))]),Y.value.length?(m(),s(`button`,{key:0,class:`toolbar-action batch-confirm-action`,type:`button`,onClick:n[3]||=e=>W.value=!0},y(a(c)(`knowledge.workspace.organizer.batchConfirm`,{count:Y.value.length})),1)):d(``,!0),h(`button`,{class:`toolbar-action`,type:`button`,onClick:n[4]||=e=>Q()},y(a(c)(`common.actions.refresh`)),1)])]),a(se)?(m(),f(k,{key:0,label:a(c)(`common.status.loadingKnowledge`)},null,8,[`label`])):(m(),s(`div`,{key:1,class:e([`organizer-layout`,{"has-selection":z.value}])},[l(ne,{class:`organizer-directory`,items:Z.value,"row-height":Pe,"active-index":fe.value,"reset-key":de.value,"item-key":pe,"min-width":`var(--organizer-list-min-width)`,label:a(c)(`knowledge.workspace.organizer.directoryAria`)},{header:i(()=>[h(`div`,De,[h(`span`,null,y(a(c)(`knowledge.workspace.workspace.view.knowledgeContent`)),1),h(`span`,null,y(a(c)(`knowledge.workspace.workspace.view.columns.quadrant`)),1),h(`span`,null,y(a(c)(`knowledge.workspace.workspace.view.columns.review`)),1),h(`span`,null,y(a(c)(`knowledge.workspace.organizer.confirmationBasis`)),1),h(`span`,null,y(a(c)(`knowledge.workspace.organizer.updated`)),1)])]),default:i(({item:t})=>[h(`button`,{type:`button`,class:e([`organizer-row`,{selected:z.value?.id===t.id}]),onClick:e=>z.value=t},[h(`span`,ke,[h(`strong`,null,y(t.title),1),h(`small`,null,y(t.body),1)]),h(`span`,{class:e([`quadrant-chip`,t.originQuadrant])},y(a(I)(t.originQuadrant)),3),h(`span`,{class:e([`review-chip`,`state-${a(L)(t)}`])},y(a(F)(t)),3),h(`span`,Ae,y(a(re)(t)),1),h(`time`,null,y(a(ae)(a(V)(t))),1)],10,Oe)]),footer:i(()=>[T.value?(m(),s(`div`,je,y(a(c)(`knowledge.workspace.organizer.loadingMore`)),1)):d(``,!0)]),empty:i(()=>[h(`div`,Me,y(J.value.length?a(c)(`knowledge.workspace.organizer.noFilteredContent`):a(c)(`knowledge.workspace.organizer.noContent`)),1)]),_:1},8,[`items`,`active-index`,`reset-key`,`label`]),l(P,{item:z.value,graph:x.value,editable:``,onConfirm:n[5]||=e=>H.value=e,onEdit:n[6]||=e=>U.value=e,onOpenReplacement:Le},null,8,[`item`,`graph`])],2)),l(N,{item:U.value,"personal-space-id":a(v).activePersonalSpace?.id??``,"personal-project-id":null,projects:a(v).state?.personalProjects??[],"replacement-items":J.value,onClose:n[7]||=e=>U.value=null,onSaved:n[8]||=e=>Q()},null,8,[`item`,`personal-space-id`,`projects`,`replacement-items`]),l(j,{item:H.value,"personal-space-id":a(v).activePersonalSpace?.id??``,"personal-project-id":null,onClose:n[9]||=e=>H.value=null,onSaved:n[10]||=e=>Q()},null,8,[`item`,`personal-space-id`]),W.value?(m(),f(me,{key:2,groups:Y.value,"personal-space-id":a(v).activePersonalSpace?.id??``,onClose:n[11]||=e=>W.value=!1,onSaved:n[12]||=e=>Q()},null,8,[`groups`,`personal-space-id`])):d(``,!0)]))}}),[[`__scopeId`,`data-v-0646b6aa`]]);export{Fe as default};
@@ -0,0 +1 @@
1
+ import{h as e,k as t,x as n}from"./i18n-CWfd8Dtt.js";import{t as r}from"./KnowledgeWorkspace-1pHJ0MNZ.js";var i=n({__name:`KnowledgePage`,setup(n){return(n,i)=>(t(),e(r))}});export{i as default};