2 lines
5.1 KiB
JavaScript
2 lines
5.1 KiB
JavaScript
import{y as N,r as p,z as A,d as j,j as q,u as E,p as F,o as T,c as D,a,f as S,g as b,w as z,e as K,v as L,t as w,l as y,T as P,h as Q,b as G}from"./index-BuR1WXAD.js";import{_ as J}from"./Button-BgP1U8Po.js";const oe=N("documents",()=>{const s=p(null),d=p([]),i=p(!1),c=p(null),l=p(!1),r=A();async function k(e){i.value=!0,c.value=null;try{s.value=await r.get(`/documents/${e}`)}catch(t){throw c.value=t instanceof Error?t.message:"Failed to fetch document",t}finally{i.value=!1}}async function C(e,t,n="",u=null){const f={title:t,content:n};return u&&(f.folder_id=u),await r.post(`/projects/${e}/documents`,f)}async function o(e,t,n){var x;const u={title:t};n!==void 0&&(u.folder_id=n);const f=await r.put(`/documents/${e}`,u);return((x=s.value)==null?void 0:x.id)===e&&(s.value=f),f}async function $(e,t){var n;l.value=!0;try{await r.put(`/documents/${e}/content`,{content:t}),((n=s.value)==null?void 0:n.id)===e&&(s.value.content=t)}finally{l.value=!1}}async function v(e){var t;await r.delete(`/documents/${e}`),((t=s.value)==null?void 0:t.id)===e&&(s.value=null)}async function _(){try{d.value=await r.get("/tags")}catch(e){console.error("Failed to fetch tags:",e)}}async function m(e,t){const n=await r.post("/tags",{name:e,color:t});return d.value.push(n),n}async function h(e,t){var n;await r.put(`/documents/${e}/tags`,{tag_ids:t}),((n=s.value)==null?void 0:n.id)===e&&(s.value.tags=d.value.filter(u=>t.includes(u.id)))}async function g(e,t){var n;await r.delete(`/documents/${e}/tags/${t}`),((n=s.value)==null?void 0:n.id)===e&&(s.value.tags=s.value.tags.filter(u=>u.id!==t))}async function B(e,t){var n;l.value=!0;try{await r.put(`/documents/${e}/content`,{content:t,format:"tiptap"}),((n=s.value)==null?void 0:n.id)===e&&(s.value.tiptap_content=t)}finally{l.value=!1}}async function M(e){try{return(await r.get(`/documents/${e}/content?format=tiptap`)).content}catch{return null}}async function V(e){try{return await r.get(`/documents/${e}/reasoning-panel`)}catch{return null}}async function R(e,t){var u;const n=await r.put(`/documents/${e}/reasoning`,t);return((u=s.value)==null?void 0:u.id)===e&&(s.value.reasoning=n),n}async function U(e,t,n){try{return await r.post(`/documents/${e}/reasoning-steps`,{thought:t,conclusion:n})}catch{return null}}async function H(e,t){await r.delete(`/documents/${e}/reasoning-steps/${t}`)}return{currentDocument:s,tags:d,loading:i,error:c,saving:l,fetchDocument:k,createDocument:C,updateDocument:o,updateDocumentContent:$,updateDocumentTipTapContent:B,fetchTipTapContent:M,fetchReasoningPanel:V,updateReasoning:R,addReasoningStep:U,deleteReasoningStep:H,deleteDocument:v,fetchTags:_,createTag:m,assignTags:h,removeTag:g}}),O={class:"header"},W={class:"header__left"},X={class:"header__center"},Y={class:"header__right"},Z={class:"header__avatar"},I={class:"header__username"},ee={key:0,class:"header__dropdown"},te={class:"header__dropdown-item header__dropdown-item--info"},ae=j({__name:"Header",setup(s){const d=q(),i=E(),c=p(""),l=p(!1);function r(){c.value.trim()&&d.push({name:"dashboard",query:{q:c.value}})}function k(){i.logout(),d.push("/login")}return(C,o)=>{var v,_,m;const $=F("router-link");return T(),D("header",O,[a("div",W,[S($,{to:"/dashboard",class:"header__logo"},{default:b(()=>[...o[2]||(o[2]=[a("svg",{width:"28",height:"28",viewBox:"0 0 28 28",fill:"none"},[a("rect",{width:"28",height:"28",rx:"6",fill:"var(--accent)"}),a("path",{d:"M8 10h12M8 14h8M8 18h10",stroke:"white","stroke-width":"2","stroke-linecap":"round"})],-1),a("span",{class:"header__title"},"Claudia Docs",-1)])]),_:1})]),a("div",X,[a("form",{class:"header__search",onSubmit:z(r,["prevent"])},[o[3]||(o[3]=a("svg",{class:"header__search-icon",width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2"},[a("circle",{cx:"11",cy:"11",r:"8"}),a("path",{d:"m21 21-4.35-4.35"})],-1)),K(a("input",{"onUpdate:modelValue":o[0]||(o[0]=h=>c.value=h),type:"text",placeholder:"Search documents...",class:"header__search-input"},null,512),[[L,c.value]]),o[4]||(o[4]=a("kbd",{class:"header__kbd"},"⌘K",-1))],32)]),a("div",Y,[a("div",{class:"header__user",onClick:o[1]||(o[1]=h=>l.value=!l.value)},[a("div",Z,w(((_=(v=y(i).user)==null?void 0:v.username)==null?void 0:_.charAt(0).toUpperCase())||"U"),1),a("span",I,w(((m=y(i).user)==null?void 0:m.username)||"User"),1),o[7]||(o[7]=a("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2"},[a("path",{d:"m6 9 6 6 6-6"})],-1)),S(P,{name:"fade"},{default:b(()=>{var h,g;return[l.value?(T(),D("div",ee,[a("div",te,[a("span",null,w((h=y(i).user)==null?void 0:h.username),1),a("small",null,w((g=y(i).user)==null?void 0:g.role),1)]),o[6]||(o[6]=a("hr",{class:"header__dropdown-divider"},null,-1)),a("button",{class:"header__dropdown-item",onClick:k},[...o[5]||(o[5]=[a("svg",{width:"16",height:"16",viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":"2"},[a("path",{d:"M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4"}),a("polyline",{points:"16 17 21 12 16 7"}),a("line",{x1:"21",y1:"12",x2:"9",y2:"12"})],-1),Q(" Logout ",-1)])])])):G("",!0)]}),_:1})])])])}}}),re=J(ae,[["__scopeId","data-v-0d1f0999"]]);export{re as H,oe as u};
|