PageSourceSearch

https://recork.org/_app/immutable/nodes/30.B8ck2vTx.js

js recork.org collected 2026-09-25 21:06:37 UTC 33,914 bytes, 25 lines download raw bytes

1import"../chunks/CWj6FrbW.js";import"../chunks/69_IOA4Y.js";import{p as Ge,o as mt,A as Pt,h as Ne,i as be,l as e,a as $,b as Je,m as S,k as i,c as h,r as p,f as W,t as q,E as Dt,g as Mt,aD as ya,n as M,z as w,d as ae,q as re,e as X,s as vt,D as Re,x as Te,B as we,y as $a,j as ka,$ as Ca,aC as Na,aG as O,u as R,C as lt}from"../chunks/7a2fV5I9.js";import{i as J}from"../chunks/Dw-yaK-_.js";import{a as Pe,s as De,c as Ut,r as Sa}from"../chunks/3tOhmI7k.js";import{i as qe}from"../chunks/CWFN-V6k.js";import{g as Nt}from"../chunks/BnvOT63w.js";import{p as Ia}from"../chunks/BewnZnAa.js";import{l as Ea,e as Aa,c as za,d as Ta,W as Pa,n as Da,p as je,m as Ma,u as Ua,a as ut}from"../chunks/C33EP41Y.js";import{h as j,r as Ba,q as it,u as St,v as It,J as Oa,K as Wa,d as Fa}from"../chunks/DKKyCjZm.js";import"../chunks/Dud3ypWW.js";import{t as D}from"../chunks/B1RxOmHW.js";import{e as Ra}from"../chunks/CDs8OzhH.js";import{h as ja}from"../chunks/DKaByr9K.js";import{b as Ha}from"../chunks/DrctxlrS.js";import{p as de,b as La}from"../chunks/DPBuKmzL.js";import{f as Ga}from"../chunks/C2xu3muT.js";import{e as Ja,S as qa}from"../chunks/BT3KsyEE.js";import{c as Ya}from"../chunks/Dl-d2Zw7.js";import{d as Va}from"../chunks/BENXhQd9.js";import{u as Ka,g as Za}from"../chunks/Bj-uvTK_.js";import{a as Qa}from"../chunks/CyHtxK_t.js";import{d as Xa}from"../chunks/DoUcuJfl.js";import{M as Bt,C as er}from"../chunks/CS9gMiwt.js";import{s as ft}from"../chunks/CiyEWm25.js";import{D as tr}from"../chunks/CUjOl_fs.js";import{R as ar,a as rr}from"../chunks/BLIvb_Zf.js";import{A as or,a as nr}from"../chunks/COtx-31z.js";import{a as Et,b as sr,e as dt,f as At,d as lr,g as ct,u as ir,t as dr,h as cr}from"../chunks/O_hrTqd7.js";import{F as ur}from"../chunks/mlsCSI-c.js";import{S as zt}from"../chunks/2p5Upk8k.js";import{V as fr}from"../chunks/Cit4_yd8.js";import{C as mr}from"../chunks/B_imf6jD.js";import{F as vr}from"../chunks/DY4eQMHP.js";import{D as pr}from"../chunks/DhS58ybw.js";import{D as hr}from"../chunks/CboLYV0R.js";import{C as gr,N as _r}from"../chunks/Bk9sf_h4.js";import{E as wr}from"../chunks/D8XsQTRR.js";import{T as He}from"../chunks/WwSz7SIr.js";import{A as br}from"../chunks/B-57Pf3K.js";import{S as xr}from"../chunks/242QKLwC.js";import{C as yr}from"../chunks/B5EGbFFc.js";var $r=W('<div class="h-screen max-h-dvh flex flex-col"><!></div>'),kr=W('<div class="flex h-full max-h-full min-h-full"><div class="w-full bg-white dark:bg-gray-900 z-40 pointer-events-auto overflow-hidden scrollbar-hidden flex flex-col"><!></div></div>');function Cr(oe,U){Ge(U,!1);let s=de(U,"show",12,!1),H,F=S(!1),V=S(350);const Y=T=>{i(F,T.matches)};mt(()=>{H=window.matchMedia("(min-width: 1000px)"),H.addEventListener("change",Y),Y(H)}),Pt(()=>{H==null||H.removeEventListener("change",Y)}),qe();var ne=Ne(),z=be(ne);{var ve=T=>{var B=Ne(),se=be(B);{var ee=le=>{tr(le,{get show(){return s()},onClose:()=>{s(!1)},children:($e,Se)=>{var L=$r(),b=h(L);ft(b,U,"default",{},null),p(L),$($e,L)},$$slots:{default:!0}})};J(se,le=>{s()&&le(ee)})}$(T,B)},K=T=>{ar(T,{minWidth:350,minSiblingWidth:360,closeOnDragBelowMinWidth:!0,className:"h-full z-10",get open(){return s()},set open(B){s(B)},get width(){return e(V)},set width(B){i(V,B)},children:(B,se)=>{var ee=kr(),le=h(ee),$e=h(le);ft($e,U,"default",{},null),p(le),p(ee),$(B,ee)},$$slots:{default:!0},$$legacy:!0})};J(z,T=>{e(F)?T(K,-1):T(ve)})}$(oe,ne),Je()}var Nr=Dt('<svg aria-hidden="true" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor"><path stroke-linecap="round" stroke-linejoin="round" d="M15.042 21.672 13.684 16.6m0 0-2.51 2.225.569-9.47 5.227 7.917-3.286-.672ZM12 2.25V4.5m5.834.166-1.591 1.591M20.25 10.5H18M7.757 14.743l-1.59 1.59M6 10.5H3.75m4.007-4.243-1.59-1.59"></path></svg>');function Sr(oe,U){let s=de(U,"className",8,"size-4"),H=de(U,"strokeWidth",8,"1.5");var F=Nr();q(()=>{Pe(F,"stroke-width",H()),De(F,0,Ut(s()))}),$(oe,F)}var Ir=W('<button class="flex h-[1.6875rem] w-full items-center gap-2 rounded-xl bg-transparent px-2 text-[0.8125rem] transition hover:text-gray-900 dark:hover:text-gray-100">
1<div class="self-center"><!></div> <div class=" self-center truncate"> </div></button> <button class="flex h-[1.6875rem] w-full items-center gap-2 rounded-xl bg-transparent px-2 text-[0.8125rem] transition hover:text-gray-900 dark:hover:text-gray-100"><div class="self-center"><!></div> <div class=" self-center truncate"> </div></button> <button class="flex h-[1.6875rem] w-full items-center gap-2 rounded-xl bg-transparent px-2 text-[0.8125rem] transition hover:text-gray-900 dark:hover:text-gray-100"><div class="self-center"><!></div> <div class=" self-center truncate"> </div></button>',1),Er=W('<div slot="content"><!></div>');function Ar(oe,U){Ge(U,!1);const s=()=>X(V,"$i18n",H),[H,F]=vt(),V=Mt("i18n");let Y=de(U,"show",12,!1);de(U,"className",8,"max-w-[10.625rem]");let ne=de(U,"onRecord",8,()=>{}),z=de(U,"onCaptureAudio",8,()=>{}),ve=de(U,"onUpload",8,()=>{});const K=ya();qe(),pr(oe,{align:"end",sideOffset:8,onOpenChange:T=>{K("change",T)},get show(){return Y()},set show(T){Y(T)},children:(T,B)=>{var se=Ne(),ee=be(se);ft(ee,U,"default",{},null),$(T,se)},$$slots:{default:!0,content:(T,B)=>{var se=Er(),ee=h(se);hr(ee,{className:"min-w-[10.625rem] ",children:(le,$e)=>{var Se=Ir(),L=be(Se),b=h(L),a=h(b);Bt(a,{className:"size-3.5",strokeWidth:"2"}),p(b);var y=M(b,2),Ie=h(y,!0);p(y),p(L);var pe=M(L,2),he=h(pe),te=h(he);Sr(te,{className:"size-3.5",strokeWidth:"2"}),p(he);var ce=M(he,2),xe=h(ce,!0);p(ce),p(pe);var ie=M(pe,2),Z=h(ie),ge=h(Z);gr(ge,{className:"size-3.5",strokeWidth:"2"}),p(Z);var ue=M(Z,2),ke=h(ue,!0);p(ue),p(ie),q((Ee,_e,Ce)=>{ae(Ie,Ee),ae(xe,_e),ae(ke,Ce)},[()=>(s(),w(()=>s().t("Record"))),()=>(s(),w(()=>s().t("Capture Audio"))),()=>(s(),w(()=>s().t("Upload Audio")))]),re("click",L,async()=>{ne()(),Y(!1)}),re("click",pe,()=>{z()(),Y(!1)}),re("click",ie,()=>{ve()(),Y(!1)}),$(le,Se)},$$slots:{default:!0}}),p(se),$(T,se)}},$$legacy:!0}),Je(),F()}var zr=Dt('<svg aria-hidden="true" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor"><path stroke-linecap="round" stroke-linejoin="round" d="m15 15 6-6m0 0-6-6m6 6H9a6 6 0 0 0 0 12h3"></path></svg>');function Tr(oe,U){let s=de(U,"className",8,"size-4"),H=de(U,"strokeWidth",8,"1.5");var F=zr();q(()=>{Pe(F,"stroke-width",H()),De(F,0,Ut(s()))}),$(oe,F)}var Pr=W('<div class=" text-sm text-gray-500"> <span class="  font-normal"> </span>.</div>'),Dr=W('<div class=" absolute top-0 bottom-0 left-0 right-0 flex"><div class="m-auto"><!></div></div>'),Mr=W('<button id="sidebar-toggle-button" class=" cursor-pointer flex rounded-lg hover:bg-gray-100 dark:hover:bg-gray-850 transition cursor-" type="button"><div class=" self-center p-1.5"><!></div></button>'),Ur=W('<button class="flex size-5 items-center justify-center self-center dark:hover:text-white transition disabled:cursor-not-allowed" id="generate-title-button"><!></button>'),Br=W('<div class="flex self-center items-center space-x-1.5 z-10 translate-y-[0.5px] -translate-x-[0.5px] pl-2 pr-0.5"><!></div>'),Or=W('<div><div class="flex items-center gap-0.5 self-center min-w-fit" dir="ltr">
1<button class="self-center p-1 hover:enabled:bg-black/5 dark:hover:enabled:bg-white/5 dark:hover:enabled:text-white hover:enabled:text-black rounded-md transition disabled:cursor-not-allowed disabled:text-gray-500 disabled:hover:text-gray-500"><!></button> <button class="self-center p-1 hover:enabled:bg-black/5 dark:hover:enabled:bg-white/5 dark:hover:enabled:text-white hover:enabled:text-black rounded-md transition disabled:cursor-not-allowed disabled:text-gray-500 disabled:hover:text-gray-500"><!></button></div></div>'),Wr=W('<button type="button" class="p-1 bg-transparent hover:bg-white/5 transition rounded-lg"><!></button>'),Tt=W('<div class="p-1 bg-transparent hover:bg-white/5 transition rounded-lg"><!></div>'),Fr=W('<div class="ml-1.5"><!></div>'),Rr=W('<div class="shrink-0 text-xs text-gray-500 px-2 py-1"> </div>'),Le=W("<span> </span>"),jr=W('<div class="flex items-center gap-1 px-1 min-w-fit"><div> </div> <div> </div></div>'),Hr=W('<div class="shrink-0 flex flex-wrap gap-1.5 px-0.5 pt-1.5 pb-2"></div>'),Lr=W('<div><div class="shrink-0 w-full flex justify-between items-center px-3"><div class="w-full min-w-0 flex items-center"><!> <input type="text" required=""/> <!> <div class="flex items-center gap-0.5 shrink-0"><!> <!> <!> <!> <!></div></div></div> <div class="  px-1.5"><div class=" flex w-full bg-transparent overflow-x-auto scrollbar-none"><div class="flex gap-0.5 items-center text-xs font-normal text-gray-500 dark:text-gray-500 w-fit"><button class=" flex items-center gap-1 w-fit py-1 px-1.5 rounded-lg min-w-fit"><!></button> <!></div></div></div> <div class=" flex-1 w-full h-full overflow-auto px-3 relative flex flex-col" id="note-content-container"><!> <!></div></div>'),Gr=W('<div class="absolute z-50 bottom-0 right-0 p-3.5 flex select-none"><div class="flex-1 w-full"><!></div></div>'),Jr=W('<div class="flex h-full items-center justify-center"><!></div>'),qr=W('<!> <!> <!> <div class="w-full h-full flex"><div class="h-full flex flex-col min-w-0 flex-1 relative"><div class="relative flex-1 w-full h-full flex justify-center pt-2" id="note-editor"><!></div> <!></div> <!></div>',1);function Yr(oe,U){Ge(U,!1);const s=()=>X($e,"$i18n",B),H=()=>X(Ea,"$socket",B),F=()=>X(Aa,"$settings",B),V=()=>X(za,"$config",B),Y=()=>X(Ta,"$models",B),ne=()=>X(Pa,"$WEBUI_NAME",B),z=()=>X(Ua,"$user",B),ve=()=>X(Ma,"$mobile",B),K=()=>X(ut,"$showSidebar",B),T=()=>X(je,"$pinnedNotes",B),[B,se]=vt(),ee=S(),{saveAs:le}=Ga,$e=Mt("i18n");j.extend(Ya),j.extend(Va),j.extend(Ba);async function Se(t){for(const r of t)try{j.locale(r);break}catch(n){`${r}`}}let L=de(U,"id",8,null),b=S(null),a=S(null),y=S([]),Ie=S(0),pe=S(0),he=S(null),te=null,ce=S(!1),xe=S(!1),ie=S(!1),Z=S(null),ge=S(!1),ue=S([]),ke=S(""),Ee=!1,_e=S(null),Ce=S([]),pt=S([]),Ye=null,Ae=null,ht=S(0),Me=S(!1),Ve=S(!1),Ke=S(!1),Ue=S(!1),me=S(!1),Ot=S(!1),Be=S(!1),Ze=S(null);const Wt=async()=>{var r,n,d,o;i(Be,!0);const t=await Et(localStorage.token,L()).catch(u=>(D.error(`${u}`),null));if(t)i(a,t),Array.isArray((r=e(a))==null?void 0:r.access_grants)||O(a,e(a).access_grants=[]),i(y,t.data.files||[]),(n=H())==null||n.emit("join-note",{note_id:L(),auth:{token:localStorage.token}}),(d=H())==null||d.off("events:note",et),(o=H())==null||o.on("events:note",et);else{Nt("/");return}i(Be,!1)};let Qe=null;const ze=()=>{Qe&&clearTimeout(Qe),Qe=setTimeout(async()=>{var r,n;await cr(localStorage.token,L(),{title:((r=e(a))==null?void 0:r.title)===""?s().t("Untitled"):e(a).title,data:{files:e(y)},access_grants:((n=e(a))==null?void 0:n.access_grants)??[]}).catch(d=>{D.error(`${d}`)})&&je.set(await ct(localStorage.token).catch(()=>[]))},200)},gt=async t=>{var A,N,P,x,G;const r=(A=t.data)==null?void 0:A.content,n=((N=r==null?void 0:r.md)==null?void 0:N.length)??((P=r==null?void 0:r.html)==null?void 0:P.length)??0;if(console.info("[note-chat] external note event apply requested",{noteId:t.id,eventUpdatedAt:t.updated_at,currentUpdatedAt:(x=e(a))==null?void 0:x.updated_at,editorPresent:!!e(b),contentLength:n}),t.updated_at&&((G=e(a))!=null&&G.updated_at)&&t.updated_at<e(a).updated_at)return console.info("[note-chat] external note event skipped",{noteId:t.id,reason:"stale",eventUpdatedAt:t.updated_at,currentUpdatedAt:e(a).updated_at,contentLength:n}),!1;const d=Date.now()-e(ht);if(d<800)return Ye=t,Ae&&clearTimeout(Ae),Ae=setTimeout(async()=>{const Q=Ye;Ye=null,Q&&await gt(Q)},850-d),console.info("[note-chat] external note event deferred",{noteId:t.id,reason:"local-edit-settling",eventUpdatedAt:t.updated_at,contentLength:n}),!1;if(O(a,e(a).data.content={...e(a).data.content,...r}),t.updated_at&&O(a,e(a).updated_at=t.updated_at),!e(b))return console.info("[note-chat] external note event applied",{noteId:t.id,reason:"no-editor",eventUpdatedAt:t.updated_at,contentLength:n}),!0;const o=e(b).state.selection;e(b).commands.setContent(r.html||it.parse(r.md??"")),await Re();
1const u=e(b).state.doc.content.size,c=Math.min(o.from,u),g=Math.min(o.to,u);if(c<g){e(b).commands.setTextSelection({from:c,to:g});const Q=e(b).state.doc.textBetween(c,g," ");i(_e,Q?{text:Q,from:c,to:g}:null)}else i(_e,null);return console.info("[note-chat] external note event applied",{noteId:t.id,reason:"content",eventUpdatedAt:t.updated_at,contentLength:n}),!0};function Ft(t,r){return Ja(t,r)}function Rt(t){var d;const r={json:t.data.content.json,html:t.data.content.html,md:t.data.content.md},n=(d=t.data.versions)==null?void 0:d.at(-1);return!n||!Ft(n,r)?(t.data.versions=(t.data.versions??[]).concat(r),!0):!1}const jt=async()=>{var o,u;const r=`### Task:
2Generate a concise title summarizing the content in the content's primary language.
3### Guidelines:
4- The title should clearly represent the main theme or subject of the content.
5- Keep it short: 2-4 words is best.
6- Do not use emojis, quotation marks, or special formatting.
7- Write the title in the content's primary language.
8- Prioritize accuracy over creativity.
9- Your entire response must consist solely of the JSON object, without any introductory or concluding text.
10- The output must be a single, raw JSON object, without any markdown code fences or other encapsulating text.
11- Ensure no conversational text, affirmations, or explanations precede or follow the raw JSON output, as this will cause direct parsing failure.
12### Output:
13JSON format: { "title": "your concise title here" }
14### Examples:
15- { "title": "Stock Trends" },
16- { "title": "Chocolate Chip Cookies" },
17- { "title": "Music Streaming" },
18- { "title": "Remote Work" }
19### Content:
20<content>
21${e(a).data.content.md}
22</content>`,n=JSON.parse(JSON.stringify(e(a).title));O(a,e(a).title=""),i(me,!0);const d=await Qa(localStorage.token,{model:te,stream:!1,messages:[{role:"user",content:r}]},`${Fa}/api`);if(d){const c=((u=(o=d==null?void 0:d.choices[0])==null?void 0:o.message)==null?void 0:u.content)??"";try{const g=c.indexOf("{"),A=c.lastIndexOf("}");if(g!==-1&&A!==-1){const N=c.substring(g,A+1),P=JSON.parse(N);P&&P.title&&O(a,e(a).title=P.title.trim())}}catch(g){D.error(s().t("Failed to generate title"))}}e(a).title||O(a,e(a).title=n),i(me,!1),await Re(),ze()},Xe=async t=>{var d,o,u,c,g,A,N;const r=It(),n={type:"file",file:"",id:null,url:"",name:t.name,collection_name:"",status:"uploading",size:t.size,error:"",itemId:r};if(n.size==0)return D.error(s().t("You cannot upload an empty file.")),null;i(y,[...e(y),n]);try{let P=null;(t.type.startsWith("audio/")||t.type.startsWith("video/"))&&((u=(o=(d=F())==null?void 0:d.audio)==null?void 0:o.stt)!=null&&u.language)&&(P={language:(A=(g=(c=F())==null?void 0:c.audio)==null?void 0:g.stt)==null?void 0:A.language});const x=await Ka(localStorage.token,t,P);x?(x.error&&(console.warn("File upload warning:",x.error),D.warning(x.error)),n.status="uploaded",n.file=await Za(localStorage.token,x.id).catch(G=>(D.error(`${G}`),null)),n.id=x.id,n.collection_name=((N=x==null?void 0:x.meta)==null?void 0:N.collection_name)||(x==null?void 0:x.collection_name),n.url=`${x.id}`,i(y,e(y))):i(y,e(y).filter(G=>(G==null?void 0:G.itemId)!==r))}catch(P){D.error(`${P}`),i(y,e(y).filter(x=>(x==null?void 0:x.itemId)!==r))}return e(y).length>0?O(a,e(a).data.files=e(y)):O(a,e(a).data.files=null),e(b)&&O(b,e(b).storage.files=e(y)),ze(),n},Ht=async(t,r={},n={})=>{var A,N,P,x,G,Q;const d=(r==null?void 0:r.imageCompression)??!1,o=((N=(A=n==null?void 0:n.file)==null?void 0:A.image_compression)==null?void 0:N.width)??null,u=((x=(P=n==null?void 0:n.file)==null?void 0:P.image_compression)==null?void 0:x.height)??null;if(!d&&!o&&!u)return t;let c=null,g=null;return d&&(c=((G=r==null?void 0:r.imageCompressionSize)==null?void 0:G.width)??null,g=((Q=r==null?void 0:r.imageCompressionSize)==null?void 0:Q.height)??null),o&&(c===null||c>o)&&(c=o),u&&(g===null||g>u)&&(g=u),c||g?await Wa(t,c,g):t},Oe=async t=>{var r,n,d,o,u,c,g,A;if(t.name,t.type,t.size,t.name.split(".").at(-1),(((n=(r=V())==null?void 0:r.file)==null?void 0:n.max_size)??null)!==null&&t.size>(((o=(d=V())==null?void 0:d.file)==null?void 0:o.max_size)??0)*1024*1024){t.size,(((c=(u=V())==null?void 0:u.file)==null?void 0:c.max_size)??0)*1024*1024,D.error(s().t("File size should not exceed {{maxSize}} MB.",{maxSize:(A=(g=V())==null?void 0:g.file)==null?void 0:A.max_size}));return}return t.type.startsWith("image/")?await new Promise(async(P,x)=>{let G=new FileReader;G.onload=async Q=>{try{let ye=Q.target.result;ye=await Ht(ye,F(),V());const We={id:It(),type:"image",url:`${ye}`};i(y,[...e(y),We]),O(a,e(a).data.files=e(y)),e(b)&&O(b,e(b).storage.files=e(y)),ze(),P(We)}catch(ye){x(ye)}}
22,G.readAsDataURL(t.type==="image/heic"?await Oa(t):t)}):await Xe(t)},Lt=async t=>{t.forEach(async r=>{await Oe(r)})},Gt=()=>{const t=document.createElement("input");t.type="file",t.multiple=!0,t.click(),t.onchange=async()=>{const r=Array.from(t.files??[]);r.length>0&&await Lt(r)}},Jt=async()=>{var n,d;if(console.info("[note-chat] open requested",{noteId:(n=e(a))==null?void 0:n.id,alreadyLoading:e(ge),currentChatId:e(Z),sidebarOpen:e(ie)}),!((d=e(a))!=null&&d.id)||e(ge))return;i(ge,!0);const t=await At(localStorage.token,e(a).id).catch(o=>{var u;return(u=e(a))==null||u.id,D.error(`${o}`),null}),r=t?await dt(localStorage.token,e(a).id).catch(o=>{var u;return(u=e(a))==null||u.id,null}):null;i(ge,!1),t!=null&&t.id?(console.info("[note-chat] open resolved",{noteId:e(a).id,chatId:t.id,title:t.title,hasChatPayload:!!t.chat}),i(Z,t.id),i(ue,r??[t]),i(ie,!0)):console.warn("[note-chat] open returned no chat id",{noteId:e(a).id,chat:t})},qt=async()=>{var t;!((t=e(a))!=null&&t.id)||e(ge)||(i(Z,null),i(ke,`${Date.now()}`),i(ie,!0))},Yt=async()=>{var t;if(!((t=e(a))!=null&&t.id)||Ee)return null;Ee=!0;try{const r=await sr(localStorage.token,e(a).id).catch(d=>{var o;return(o=e(a))==null||o.id,D.error(`${d}`),null}),n=r?await dt(localStorage.token,e(a).id).catch(d=>{var o;return(o=e(a))==null||o.id,null}):null;return r!=null&&r.id&&(i(ue,n??[r,...e(ue).filter(d=>d.id!==r.id)]),i(ie,!0)),r}finally{Ee=!1}},Vt=async t=>{var d;if(!((d=e(a))!=null&&d.id)||!t||!await Da(localStorage.token,t).catch(o=>{var u;return(u=e(a))==null||u.id,D.error(`${o}`),null}))return;let n=await dt(localStorage.token,e(a).id).catch(o=>{var u;return(u=e(a))==null||u.id,null})??[];if(e(Z)===t){let o=n[0];o||(o=await At(localStorage.token,e(a).id).catch(u=>{var c;return(c=e(a))==null||c.id,D.error(`${u}`),null}),n=o?[o]:[]),i(Z,(o==null?void 0:o.id)??null)}i(ue,n)},Kt=async t=>{if(t==="txt"){const r=new Blob([e(a).data.content.md],{type:"text/plain"});le(r,`${e(a).title}.txt`)}else if(t==="md"){const r=new Blob([e(a).data.content.md],{type:"text/markdown"});le(r,`${e(a).title}.md`)}else if(t==="pdf")try{await Xa(e(a))}catch(r){D.error(`${r}`)}},Zt=async t=>{await lr(localStorage.token,t).catch(n=>(D.error(`${n}`),null))?(je.set(await ct(localStorage.token).catch(()=>[])),D.success(s().t("Note deleted successfully")),Nt("/notes")):D.error(s().t("Failed to delete note"))},Qt=t=>{var r;Rt(e(a)),(r=e(Ze))==null||r.insertContent(t)},et=async t=>{var r,n,d,o,u,c,g,A;if(t.id===L()){if(t.updated_at&&((r=e(a))!=null&&r.updated_at)&&t.updated_at<e(a).updated_at){console.info("[note-chat] external note event skipped",{noteId:t.id,reason:"stale-event",eventUpdatedAt:t.updated_at,currentUpdatedAt:e(a).updated_at,contentLength:((o=(d=(n=t.data)==null?void 0:n.content)==null?void 0:d.md)==null?void 0:o.length)??((g=(c=(u=t.data)==null?void 0:u.content)==null?void 0:c.html)==null?void 0:g.length)??0});return}t.access_grants&&t.access_grants!==e(a).access_grants&&O(a,e(a).access_grants=t.access_grants),t.data&&"files"in t.data&&(i(y,t.data.files??[]),O(a,e(a).data.files=e(y).length>0?e(y):null)),(A=t.data)!=null&&A.content&&await gt(t),t.title&&t.title&&O(a,e(a).title=t.title),t.updated_at&&O(a,e(a).updated_at=t.updated_at),e(b)&&O(b,e(b).storage.files=e(y)),await Re();for(const N of e(y))if(N.type==="image"||((N==null?void 0:N.content_type)??"").startsWith("image/")){const P=new CustomEvent("data",{files:e(y)}),x=document.getElementById(`image:${N.id}`);x&&x.dispatchEvent(P)}}};mt(async()=>{var t,r,n,d,o;await Re(),(t=F())!=null&&t.models?te=(r=F())==null?void 0:r.models[0]:(n=V())!=null&&n.default_models?te=(d=V())==null?void 0:d.default_models.split(",")[0]:te="",te&&(Y().filter(c=>{var g,A;return c.id===te&&!(((A=(g=c==null?void 0:c.info)==null?void 0:g.meta)==null?void 0:A.hidden)??!1)}).find(c=>c.id===te)||(te="")),te||(te=((o=Y().filter(u=>{var c,g;return!(((g=(c=u==null?void 0:u.info)==null?void 0:c.meta)==null?void 0:g.hidden)??!1)}).at(0))==null?void 0:o.id)||""),document.getElementById("note-editor")}),Pt(()=>{var t;(t=H())==null||t.off("events:note",et),Ae&&clearTimeout(Ae),document.getElementById("note-editor")}),Te(()=>s(),()=>{Se(s().languages)}),Te(()=>e(y),()=>{i(Ce,(e(y)??[]).filter(t=>(t==null?void 0:t.type)!=="image"&&!((t==null?void 0:t.content_type)??"").startsWith("image/")))}),Te(()=>s(),()=>{i(pt,[s().t("Enhance this note and update it."),s().t("Summarize this note."),s().t("Extract action items from this note."),s().t("Rewrite the selected text.")])}),Te(()=>(e(a),it),()=>{var t,r,n,d,o,u;i(ee,((n=(r=(t=e(a))==null?void 0:t.data)==null?void 0:r.content)==null?void 0:n.html)||((u=(o=(d=e(a))==null?void 0:d.data)==null?void 0:o.content)!=null&&u.md?it.parse(e(a).data.content.md):""))}),Te(()=>we(L()),()=>{L()&&Wt()}),$a(),qe();var _t=qr();ja("okwkxt",t=>{ka(r=>{Ca.title=`
23		${r??""}
24	`},[()=>(e(a),ne(),w(()=>{var r,n,d,o;return(r=e(a))!=null&&r.title?`${((n=e(a))==null?void 0:n.title.length)>30?`${(d=e(a))==null?void 0:d.title.slice(0,30)}...`:(o=e(a))==null?void 0:o.title} / ${ne()}`:`${ne()}`}))])});var wt=be(_t);{var Xt=t=>{{let r=R(()=>(z(),w(()=>{var o,u,c,g;return((c=(u=(o=z())==null?void 0:o.permissions)==null?void 0:u.sharing)==null?void 0:c.notes)||((g=z())==null?void 0:g.role)==="admin"}))),n=R(()=>(z(),w(()=>{var o,u,c,g;return((c=(u=(o=z())==null?void 0:o.permissions)==null?void 0:u.sharing)==null?void 0:c.public_notes)||((g=z())==null?void 0:g.role)==="admin"}))),d=R(()=>(z(),w(()=>{var o,u,c,g;return(((c=(u=(o=z())==null?void 0:o.permissions)==null?void 0:u.access_grants)==null?void 0:c.allow_users)??!0)||((g=z())==null?void 0:g.role)==="admin"})));or(t,{accessRoles:["read","write"],get share(){return e(r)},get sharePublic(){return e(n)},get shareUsers(){return e(d)},onChange:async()=>
24{if(L())try{await ir(localStorage.token,L(),e(a).access_grants??[]),D.success(s().t("Saved"))}catch(o){D.error(`${o}`)}},get show(){return e(Ve)},set show(o){i(Ve,o)},get accessGrants(){return e(a).access_grants},set accessGrants(o){O(a,e(a).access_grants=o)},$$legacy:!0})}};J(wt,t=>{e(a)&&t(Xt)})}var bt=M(wt,2);vr(bt,{get show(){return e(Ot)}});var xt=M(bt,2);{let t=R(()=>(s(),w(()=>s().t("Delete note?"))));mr(xt,{get title(){return e(t)},get show(){return e(Me)},set show(r){i(Me,r)},$$events:{confirm:()=>{Zt(e(a).id),i(Me,!1)}},children:(r,n)=>{var d=Pr(),o=h(d),u=M(o),c=h(u,!0);p(u),Na(),p(d),q(g=>{ae(o,`${g??""} `),ae(c,(e(a),w(()=>e(a).title)))},[()=>(s(),w(()=>s().t("This will delete")))]),$(r,d)},$$slots:{default:!0},$$legacy:!0})}var yt=M(xt,2),tt=h(yt),at=h(tt),ea=h(at);{var ta=t=>{var r=Dr(),n=h(r),d=h(n);zt(d,{className:"size-5"}),p(n),p(r),$(t,r)},aa=t=>{var r=Lr(),n=h(r),d=h(n),o=h(d);{var u=f=>{{let l=R(()=>(K(),s(),w(()=>K()?s().t("Close Sidebar"):s().t("Open Sidebar"))));He(f,{get content(){return e(l)},children:(m,v)=>{var _=Mr(),C=h(_),k=h(C);xr(k,{className:"size-4"}),p(C),p(_),q(I=>Pe(_,"aria-label",I),[()=>(K(),s(),w(()=>K()?s().t("Close Sidebar"):s().t("Open Sidebar")))]),re("click",_,()=>{ut.set(!K())}),$(m,_)},$$slots:{default:!0}})}};J(o,f=>{ve()&&f(u)})}var c=M(o,2);Sa(c);var g=M(c,2);{var A=f=>{var l=Br(),m=h(l);{let v=R(()=>(s(),w(()=>s().t("Generate"))));He(m,{get content(){return e(v)},children:(_,C)=>{var k=Ur(),I=h(k);qa(I,{strokeWidth:"1.5"}),p(k),q(()=>k.disabled=(e(a),z(),e(me),w(()=>{var E,fe,Fe;return((E=e(a))==null?void 0:E.user_id)!==((fe=z())==null?void 0:fe.id)&&((Fe=z())==null?void 0:Fe.role)!=="admin"||e(me)}))),re("mouseenter",k,()=>{i(Ke,!0)}),re("click",k,E=>{E.preventDefault(),E.stopImmediatePropagation(),E.stopPropagation(),jt(),i(Ue,!1)}),$(_,k)},$$slots:{default:!0}})}p(l),$(f,l)};J(g,f=>{e(Ue)&&!e(me)&&f(A)})}var N=M(g,2),P=h(N);{var x=f=>{var l=Ne(),m=be(l);{var v=_=>{var C=Or(),k=h(C),I=h(k),E=h(I);br(E,{className:"size-4"}),p(I);var fe=M(I,2),Fe=h(fe);Tr(Fe,{className:"size-4"}),p(fe),p(k),p(C),q((ba,xa)=>{I.disabled=ba,fe.disabled=xa,k.dir=k.dir},[()=>(e(b),w(()=>!e(b).can().undo())),()=>(e(b),w(()=>!e(b).can().redo()))]),re("click",I,()=>{e(b).chain().focus().undo().run()}),re("click",fe,()=>{e(b).chain().focus().redo().run()}),$(_,C)};J(m,_=>{e(b)&&_(v)})}$(f,l)};J(P,f=>{e(a),w(()=>{var l;return(l=e(a))==null?void 0:l.write_access})&&f(x)})}var G=M(P,2);{let f=R(()=>(s(),w(()=>s().t("Chat"))));He(G,{get content(){return e(f)},placement:"top",children:(l,m)=>{var v=Wr(),_=h(v);yr(_,{className:"size-4",strokeWidth:"1.8"}),p(v),q(C=>Pe(v,"aria-label",C),[()=>(s(),w(()=>s().t("Chat")))]),re("click",v,Jt),$(l,v)},$$slots:{default:!0}})}var Q=M(G,2);{var ye=f=>{Ar(f,{onRecord:async()=>{i(xe,!1);try{let l=await navigator.mediaDevices.getUserMedia({audio:!0}).catch(function(m){return D.error(s().t("Permission denied when accessing microphone: {{error}}",{error:m})),null});l&&(i(ce,!0),l.getTracks().forEach(v=>v.stop())),l=null}catch{D.error(s().t("Permission denied when accessing microphone"))}},onCaptureAudio:async()=>{i(xe,!0),i(ce,!0)},onUpload:async()=>{const l=document.createElement("input");l.type="file",l.accept="audio/*",l.multiple=!1,l.click(),l.onchange=async m=>{const v=m.target.files;v&&v.length>0&&await Xe(v[0])}},children:(l,m)=>{{let v=R(()=>(s(),w(()=>s().t("Record"))));He(l,{get content(){return e(v)},placement:"top",children:(_,C)=>{var k=Tt(),I=h(k);Bt(I,{className:"size-4"}),p(k),$(_,k)},$$slots:{default:!0}})}},$$slots:{default:!0}})};J(Q,f=>{e(a),w(()=>{var l;return(l=e(a))==null?void 0:l.write_access})&&f(ye)})}var rt=M(Q,2);{let f=R(()=>(e(a),w(()=>{var m;return(m=e(a))!=null&&m.write_access?Gt:null}))),l=R(()=>(T(),e(a),w(()=>T().some(m=>m.id===e(a).id))));_r(rt,{get onUploadFiles(){return e(f)},onDownload:m=>{Kt(m)},onCopyLink:async()=>{const m=window.location.origin;await St(`${m}/notes/${e(a).id}`)?D.success(s().t("Copied link to clipboard")):D.error(s().t("Failed to copy link"))},onCopyToClipboard:async()=>{await St(e(a).data.content.md,e(a).data.content.html,!0).catch(v=>(D.error(`${v}`),null))&&D.success(s().t("Copied to clipboard"))},onDelete:()=>{i(Me,!0)},get isPinned(){return e(l)},onPin:async()=>{await dr(localStorage.token,e(a).id),i(a,await Et(localStorage.token,e(a).id)),je.set(await ct(localStorage.token).catch(()=>[]))},children:(m,v)=>{var _=Tt(),C=h(_);wr(C,{className:"size-5"}),p(_),$(m,_)},$$slots:{default:!0}})}var We=M(rt,2);{var sa=f=>{var l=Fr(),m=h(l);{let v=R(()=>(e(a),z(),w(()=>{var _,C,k;return((_=e(a))==null?void 0:_.user_id)!==((C=z())==null?void 0:C.id)&&((k=z())==null?void 0:k.role)!=="admin"})));nr(m,{get disabled(){return e(v)},$$events:{click:()=>{i(Ve,!0)}}})}p(l),$(f,l)},la=f=>{var l=Rr(),m=h(l,!0);p(l),q(v=>ae(m,v),[()=>(s(),w(()=>s().t("Read-Only Access")))]),$(f,l)};J(We,f=>{e(a),w(()=>{var l;return(l=e(a))==null?void 0:l.write_access})?f(sa):f(la,-1)})}p(N),p(d),p(n);var ot=M(n,2),nt=h(ot),$t=h(nt),st=h($t),ia=h(st);{var da=f=>{var l=Le(),m=h(l,!0);p(l),q(v=>ae(m,v),[()=>(we(j),e(a),s(),w(()=>j(e(a).created_at/1e6).format(s().t("[Today at] h:mm A"))))]),$(f,l)},ca=lt(()=>(we(j),e(a),w(()=>j(e(a).created_at/1e6).isSame(j(),"day")))),ua=f=>{var l=Le(),m=h(l,!0);p(l),q(v=>ae(m,v),[()=>(we(j),e(a),s(),w(()=>j(e(a).created_at/1e6).format(s().t("[Yesterday at] h:mm A"))))]),$(f,l)},fa=lt(()=>(we(j),e(a),w(()=>j(e(a).created_at/1e6).isSame(j().subtract(1,"day"),"day")))),ma=f=>{var l=Le(),m=h(l,!0);p(l),q(v=>ae(m,v),[()=>(we(j),e(a),s(),w(()=>j(e(a).created_at/1e6).format(s().t("[Last] dddd [at] h:mm A"))))]),$(f,l)},va=lt(()=>(we(j),e(a),w(()=>j(e(a).created_at/1e6).isSame(j().subtract(1,"week"),"week")))),pa=f=>{var l=Le(),m=h(l,!0);p(l),q(v=>ae(m,v),[()=>(we(j),e(a),s(),w(()=>j(e(a).created_at/1e6).format(s().t("DD/MM/YYYY"))))]),$(f,l)};J(ia,f=>{e(ca)?f(da):e(fa)?f(ua,1):e(va)?f(ma,2):f(pa,-1)})}p(st);var ha=M(st,2);{var ga=f=>{var l=jr(),m=h(l),v=h(m,!0);p(m);var _=M(m,2),C=h(_,!0);p(_),p(l),q((k,I)=>{ae(v,k),ae(C,I)},[()=>(s(),e(Ie),w(()=>s().t("{{COUNT}} words",{COUNT:e(Ie)}))),()=>(s(),e(pe),w(()=>s().t("{{COUNT}} characters",{COUNT:e(pe)})))]),$(f,l)};J(ha,f=>{e(b)&&f(ga)})}p($t),p(nt),p(ot);var kt=M(ot,2),Ct=h(kt);{var _a=f=>{var l=Hr();Ra(l,7,()=>e(Ce),(m,v)=>(m==null?void 0:m.id)??(m==null?void 0:m.itemId)??(m==null?void 0:m.url)??v,(m,v)=>{{let _=R(()=>(e(v),w(()=>{var E;return(E=e(v))==null?void 0:E.size}))),C=R(()=>(e(v),w(()=>e(v).status==="uploading"))),k=R(()=>(e(he),e(a),w(()=>{var E;return e(he)===null&&((E=e(a))==null?void 0:E.write_access)}))),I=R(()=>(e(v),w(()=>{var E;return["file","collection"].includes((E=e(v))==null?void 0:E.type)})));ur(m,{get item(){return e(v)},get name(){return e(v),w(()=>e(v).name)},get type(){return e(v),w(()=>e(v).type)},get size(){return e(_)},get loading(){return e(C)},get dismissible(){return e(k)},edit:!0,small:!0,get modal(){return e(I)},className:"w-56 max-w-full",colorClassName:"bg-gray-50/60 dark:bg-white/[0.03] border border-gray-100/80 dark:border-white/5",$$events:{dismiss:()=>{i(y,e(y).filter(E=>E!==e(v))),O(a,e(a).data.files=e(y).length>0?e(y):null),e(b)&&O(b,e(b).storage.files=e(y)),ze()}}})}}),p(l),$(f,l)};J(Ct,f=>{e(Ce),w(()=>e(Ce).length>0)&&f(_a)})}var wa=M(Ct,2);{let f=R(()=>(e(a),w(()=>`note-${e(a).id}`))),l=R(()=>(e(a),w(()=>`note:${e(a).id}`))),m=R(()=>(s(),w(()=>s().t("Write something...")))),v=R(()=>(e(he),e(a),w(()=>{var _;return e(he)===null&&((_=e(a))==null?void 0:_.write_access)})));La(rr(wa,{get id(){return e(f)},className:"input-prose-sm px-0.5 flex-1 min-h-[12rem]",json:!0,get html(){return e(ee)},get documentId(){return e(l)},collaboration:!0,get socket(){return H()},get user(){return z()},dragHandle:!0,link:!0,image:!0,get files(){return e(y)},get placeholder(){return e(m)},get editable(){return e(v)},onSelectionUpdate:({editor:_})=>{const{from:C,to:k}=_.state.selection,I=_.state.doc.textBetween(C,k," ");I.length===0?i(_e,null):i(_e,{text:I,from:C,to:k})},onChange:_=>{i(ht,Date.now()),O(a,e(a).data.content.html=_.html),O(a,e(a).data.content.md=_.md),e(b)&&(i(Ie,e(b).storage.characterCount.words()),i(pe,e(b).storage.characterCount.characters()))},fileHandler:!0,onFileDrop:(_,C,k)=>
24{C.forEach(async I=>{const E=await Oe(I).catch(fe=>null);(E==null?void 0:E.type)==="image"&&_.chain().insertContentAt(k,{type:"image",attrs:{src:`data://${E.id}`}}).focus().run()})},onFilePaste:()=>{},get editor(){return e(b)},set editor(_){i(b,_)},get value(){return e(a).data.content.json},set value(_){O(a,e(a).data.content.json=_)},$$events:{paste:async _=>{var k;_=_.detail.event||_;const C=_.clipboardData||window.clipboardData;if(C&&C.items){C.items;for(const I of C.items)if(I.type.indexOf("image")!==-1){const E=I.getAsFile(),fe=await Oe(E);e(b)&&((k=e(b))==null||k.chain().insertContentAt(e(b).state.selection.$anchor.pos,{type:"image",attrs:{src:`data://${fe.id}`}}).focus().run())}else if((I==null?void 0:I.kind)==="file"){const E=I.getAsFile();await Oe(E),_.preventDefault()}}}},$$legacy:!0}),_=>i(Ze,_),()=>e(Ze))}p(kt),p(r),q(f=>{De(r,1,` w-full flex flex-col ${e(Be)?"opacity-20":""}`),De(c,1,`w-full text-sm font-normal bg-transparent outline-hidden ${ve()?"ml-1":""}`),Pe(c,"placeholder",f),c.disabled=(e(a),z(),e(me),w(()=>{var l,m,v;return((l=e(a))==null?void 0:l.user_id)!==((m=z())==null?void 0:m.id)&&((v=z())==null?void 0:v.role)!=="admin"||e(me)}))},[()=>(e(me),s(),w(()=>e(me)?s().t("Generating..."):s().t("Title")))]),Ha(c,()=>e(a).title,f=>O(a,e(a).title=f)),re("focus",c,()=>{i(Ue,!0)}),re("blur",c,f=>{if(e(Ke)){i(Ke,!1);return}i(Ue,!1),ze()}),re("wheel",nt,f=>{f.deltaY!==0&&(f.preventDefault(),f.currentTarget.scrollLeft+=f.deltaY)}),$(t,r)};J(ea,t=>{e(Be)?t(ta):t(aa,-1)})}p(at);var ra=M(at,2);{var oa=t=>{var r=Gr(),n=h(r),d=h(n);fr(d,{className:"p-1 w-full max-w-full",transcribe:!1,get displayMedia(){return e(xe)},echoCancellation:!1,noiseSuppression:!1,onCancel:()=>{i(ce,!1),i(xe,!1)},onConfirm:o=>{o!=null&&o.file&&Xe(o==null?void 0:o.file),i(ce,!1),i(xe,!1)},get recording(){return e(ce)},set recording(o){i(ce,o)},$$legacy:!0}),p(n),p(r),$(t,r)};J(ra,t=>{e(ce)&&t(oa)})}p(tt);var na=M(tt,2);Cr(na,{get show(){return e(ie)},set show(t){i(ie,t)},children:(t,r)=>{var n=Ne(),d=be(n);{var o=c=>{var g=Jr(),A=h(g);zt(A,{className:"size-5"}),p(g),$(c,g)},u=c=>{{let g=R(()=>e(Z)??""),A=R(()=>(e(_e),w(()=>{var N;return((N=e(_e))==null?void 0:N.text)??""})));er(c,{embedded:!0,get chatIdProp(){return e(g)},get embeddedChats(){return e(ue)},get embeddedDraftKey(){return e(ke)},get suggestedPrompts(){return e(pt)},get selectedText(){return e(A)},onInsertToNote:Qt,onNewEmbeddedChat:qt,onCreateEmbeddedChat:Yt,onSelectEmbeddedChat:N=>{!N||N===e(Z)||(i(Z,N),i(ke,""))},onDeleteEmbeddedChat:Vt,onEmbeddedChatTitle:(N,P)=>{i(ue,e(ue).map(x=>x.id===N?{...x,title:P,chat:{...x.chat??{},title:P}}:x))},onCloseEmbedded:()=>{i(ie,!1)}})}};J(d,c=>{e(ge)?c(o):(e(Z)||e(ke))&&c(u,1)})}$(t,n)},$$slots:{default:!0},$$legacy:!0}),p(yt),$(oe,_t),Je(),se()}var Vr=W('<div id="note-container"><!></div>');function Wo(oe,U){Ge(U,!1);const s=()=>X(ut,"$showSidebar",F),H=()=>X(Ia,"$page",F),[F,V]=vt();let Y=S(!1);mt(async()=>{i(Y,!0)}),qe();var ne=Ne(),z=be(ne);{var ve=K=>{var T=Vr(),B=h(T);Yr(B,{get id(){return H().params.id}}),p(T),q(()=>De(T,1,`w-full h-full ${s()?"md:max-w-[calc(100%-var(--sidebar-width))]":""}`)),$(K,T)};J(z,K=>{e(Y)&&K(ve)})}$(oe,ne),Je(),V()}export{Wo as component};
25//# sourceMappingURL=30.B8ck2vTx.js.map

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.