'+(n?i:U(i,!0))+`
-`:""+(n?i:U(i,!0))+`
+`+s.text,this.inlineQueue.pop(),this.inlineQueue.at(-1).src=l.text):n.push(s);continue}if(e){let l="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(l);break}else throw new Error(l)}}return this.state.top=!0,n}inline(e,n=[]){return this.inlineQueue.push({src:e,tokens:n}),n}inlineTokens(e,n=[]){var c,l,p,m,u,h;let r=e,i=null;if(this.tokens.links){let d=Object.keys(this.tokens.links);if(d.length>0)for(;(i=this.tokenizer.rules.inline.reflinkSearch.exec(r))!=null;)d.includes(i[0].slice(i[0].lastIndexOf("[")+1,-1))&&(r=r.slice(0,i.index)+"["+"a".repeat(i[0].length-2)+"]"+r.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;(i=this.tokenizer.rules.inline.anyPunctuation.exec(r))!=null;)r=r.slice(0,i.index)+"++"+r.slice(this.tokenizer.rules.inline.anyPunctuation.lastIndex);let o;for(;(i=this.tokenizer.rules.inline.blockSkip.exec(r))!=null;)o=i[2]?i[2].length:0,r=r.slice(0,i.index+o)+"["+"a".repeat(i[0].length-o-2)+"]"+r.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);r=(p=(l=(c=this.options.hooks)==null?void 0:c.emStrongMask)==null?void 0:l.call({lexer:this},r))!=null?p:r;let a=!1,s="";for(;e;){a||(s=""),a=!1;let d;if((u=(m=this.options.extensions)==null?void 0:m.inline)!=null&&u.some(g=>(d=g.call({lexer:this},e,n))?(e=e.substring(d.raw.length),n.push(d),!0):!1))continue;if(d=this.tokenizer.escape(e)){e=e.substring(d.raw.length),n.push(d);continue}if(d=this.tokenizer.tag(e)){e=e.substring(d.raw.length),n.push(d);continue}if(d=this.tokenizer.link(e)){e=e.substring(d.raw.length),n.push(d);continue}if(d=this.tokenizer.reflink(e,this.tokens.links)){e=e.substring(d.raw.length);let g=n.at(-1);d.type==="text"&&(g==null?void 0:g.type)==="text"?(g.raw+=d.raw,g.text+=d.text):n.push(d);continue}if(d=this.tokenizer.emStrong(e,r,s)){e=e.substring(d.raw.length),n.push(d);continue}if(d=this.tokenizer.codespan(e)){e=e.substring(d.raw.length),n.push(d);continue}if(d=this.tokenizer.br(e)){e=e.substring(d.raw.length),n.push(d);continue}if(d=this.tokenizer.del(e,r,s)){e=e.substring(d.raw.length),n.push(d);continue}if(d=this.tokenizer.autolink(e)){e=e.substring(d.raw.length),n.push(d);continue}if(!this.state.inLink&&(d=this.tokenizer.url(e))){e=e.substring(d.raw.length),n.push(d);continue}let w=e;if((h=this.options.extensions)!=null&&h.startInline){let g=1/0,k=e.slice(1),y;this.options.extensions.startInline.forEach(H=>{y=H.call({lexer:this},k),typeof y=="number"&&y>=0&&(g=Math.min(g,y))}),g<1/0&&g>=0&&(w=e.substring(0,g+1))}if(d=this.tokenizer.inlineText(w)){e=e.substring(d.raw.length),d.raw.slice(-1)!=="_"&&(s=d.raw.slice(-1)),a=!0;let g=n.at(-1);(g==null?void 0:g.type)==="text"?(g.raw+=d.raw,g.text+=d.text):n.push(d);continue}if(e){let g="Infinite loop on byte: "+e.charCodeAt(0);if(this.options.silent){console.error(g);break}else throw new Error(g)}}return n}},Te=class{constructor(t){B(this,"options");B(this,"parser");this.options=t||ce}space(t){return""}code({text:t,lang:e,escaped:n}){var o;let r=(o=(e||"").match(Q.notSpaceStart))==null?void 0:o[0],i=t.replace(Q.endingNewline,"")+`
+`;return r?''+(n?i:te(i,!0))+`
+`:""+(n?i:te(i,!0))+`
`}blockquote({tokens:t}){return`${this.parser.parse(t)}`}html({text:t}){return t}def(t){return""}heading({tokens:t,depth:e}){return`
${U(t,!0)}`}br(t){return"An error occurred:
"+U(n.message+"",!0)+"";return e?Promise.resolve(r):r}if(e)return Promise.reject(n);throw n}}},se=new xr;function A(t,e){return se.parse(t,e)}A.options=A.setOptions=function(t){return se.setOptions(t),A.defaults=se.defaults,dt(A.defaults),A};A.getDefaults=$e;A.defaults=ae;A.use=function(...t){return se.use(...t),A.defaults=se.defaults,dt(A.defaults),A};A.walkTokens=function(t,e){return se.walkTokens(t,e)};A.parseInline=se.parseInline;A.Parser=q;A.parser=q.parse;A.Renderer=ye;A.TextRenderer=ze;A.Lexer=O;A.lexer=O.lex;A.Tokenizer=be;A.Hooks=pe;A.parse=A;var si=A.options,ai=A.setOptions,li=A.use,ci=A.walkTokens,ui=A.parseInline;var di=q.parse,pi=O.lex;function ge(t){return(t||"").trim().replace(/^#+/,"").replace(/[^\w\-/]+/g,"").toLowerCase()}function vr(t){if(!t.startsWith("---"))return"";let e=t.indexOf(` ----`,3);return e===-1?"":t.slice(3,e).trim()}function Sr(t){let e=new Set,n=t.split(` -`);for(let i of n){let o=i.match(/^\s*tags\s*:\s*\[(.*)\]\s*$/i);if(!o)continue;let a=o[1].split(",").map(s=>ge(s.replace(/["']/g,"")));for(let s of a)s&&e.add(s)}let r=!1;for(let i of n){if(/^\s*tags\s*:\s*$/i.test(i)){r=!0;continue}if(!r)continue;let o=i.match(/^\s*-\s*(.+)\s*$/);if(o){let a=ge(o[1].replace(/["']/g,""));a&&e.add(a);continue}i.trim()!==""&&!/^\s+/.test(i)&&(r=!1)}return e}function St(t){let e=new Set,n=vr(t);if(n){let i=Sr(n);for(let o of i)e.add(o)}let r=t.match(/\B#([a-zA-Z0-9][\w\-/]{1,50})\b/g);if(r)for(let i of r){let o=ge(i);o&&e.add(o)}return e}function M(t){let e=document.getElementById(t);if(!e)throw new Error(`Missing required element: #${t}`);return e}function Lt(){return{app:M("app"),menuBar:M("menuBar"),workspaceSidebar:M("workspaceSidebar"),sidebarToggleBtn:M("sidebarToggleBtn"),refreshBtn:M("refreshBtn"),sortBtn:M("sortBtn"),searchInput:M("searchInput"),webmcpNoteModal:M("webmcpNoteModal"),webmcpNoteModalBackdrop:M("webmcpNoteModalBackdrop"),webmcpNoteModalCloseBtn:M("webmcpNoteModalCloseBtn"),webmcpNoteForm:M("webmcpNoteForm"),webmcpTitleInput:M("webmcpTitleInput"),webmcpBodyInput:M("webmcpBodyInput"),webmcpTagInput:M("webmcpTagInput"),tree:M("tree"),tagRow:M("tagRow"),workspaceName:M("workspaceName"),countsPill:M("countsPill"),editor:M("editor"),editorSplit:M("editorSplit"),editorPane:M("editorPane"),previewPane:M("previewPane"),editorViewModeGroup:M("editorViewModeGroup"),editorViewSourceBtn:M("editorViewSourceBtn"),editorViewSplitBtn:M("editorViewSplitBtn"),editorViewPreviewBtn:M("editorViewPreviewBtn"),preview:M("preview"),currentFilename:M("currentFilename"),dirtyDot:M("dirtyDot"),statusBadge:M("statusBadge"),toast:M("toast"),toastMsg:M("toastMsg"),toastCloseBtn:M("toastCloseBtn"),temporarySessionBadge:M("temporarySessionBadge"),cogitoToggleBtn:M("cogitoToggleBtn"),cogitoPanel:M("cogitoPanel"),cogitoLiteBtn:M("cogitoLiteBtn"),cogitoDeepBtn:M("cogitoDeepBtn"),cogitoGenerateBtn:M("cogitoGenerateBtn"),cogitoStatus:M("cogitoStatus"),cogitoQuestionList:M("cogitoQuestionList"),documentLinterToggleBtn:M("documentLinterToggleBtn"),documentLinterPanel:M("documentLinterPanel"),documentLinterAnalyzeBtn:M("documentLinterAnalyzeBtn"),documentLinterExportBtn:M("documentLinterExportBtn"),documentLinterAutoRunToggle:M("documentLinterAutoRunToggle"),documentLinterStatus:M("documentLinterStatus"),documentLinterResults:M("documentLinterResults")}}function Tt(){return!!(window.showDirectoryPicker&&window.FileSystemHandle)}async function _e(t,e="read"){if(!t)return!1;if(!t.queryPermission||!t.requestPermission)return!0;let n={mode:e};return await t.queryPermission(n)==="granted"?!0:await t.requestPermission(n)==="granted"}function Mt({state:t,ensurePermission:e,rescanWorkspace:n,showToast:r,setStatus:i}){function o(){s(),t.autoRefreshTimer=setInterval(()=>{a().catch(c=>{r(`Auto-refresh failed: ${String(c)}`,{persist:!0}),i("Auto-refresh failed","err")})},t.autoRefreshMs)}async function a(){if(t.workspaceHandle){try{if(!await e(t.workspaceHandle,"read"))throw new Error("Folder permission revoked.")}catch(c){s(),r("Auto-refresh stopped: folder permission revoked.",{persist:!0}),i("Permission revoked","err");return}t.isDirty||await n({silent:!0})}}function s(){t.autoRefreshTimer&&(clearInterval(t.autoRefreshTimer),t.autoRefreshTimer=null)}return{startAutoRefresh:o,stopAutoRefresh:s}}function G(t){return String(t).replaceAll("&","&").replaceAll("<","<").replaceAll(">",">").replaceAll('"',""").replaceAll("'","'")}var Et="ink-editor-view-mode",Lr=["split","source","preview"];function Tr(t){return t==="source"||t==="preview"?t:"split"}function Rt(){try{return Tr(localStorage.getItem(Et))}catch(t){return"split"}}function We(t,e){t.editorSplit.classList.toggle("view-split",e==="split"),t.editorSplit.classList.toggle("view-source",e==="source"),t.editorSplit.classList.toggle("view-preview",e==="preview"),t.editorPane.hidden=e==="preview",t.previewPane.hidden=e==="source",[[t.editorViewSourceBtn,"source"],[t.editorViewSplitBtn,"split"],[t.editorViewPreviewBtn,"preview"]].forEach(([r,i])=>{let o=i===e;r.classList.toggle("active",o),r.setAttribute("aria-pressed",String(o))})}function Ct(t,e,n){if(Lr.includes(n)){e.editorViewMode=n,We(t,n);try{localStorage.setItem(Et,n)}catch(r){}}}function Oe(t,e){try{t.preview.innerHTML=A.parse(e||"")}catch(n){let r=n instanceof Error?n.message:String(n);t.preview.innerHTML=`
${G(r)}`}}function Se(t,e,n){t.dirtyDot.classList.toggle("show",e.isDirty);let r=e.currentRelPath?e.currentRelPath.split("/").pop():"No note open";t.currentFilename.textContent=`${r}${e.isDirty?" \u2022 Unsaved":""}`,e.isDirty&&n("Unsaved changes","warn")}var Le=["default","classic","cobalt","monokai","office","twilight","xcode"];function qe(t){if(!Le.includes(t))return;t==="default"?document.documentElement.removeAttribute("data-theme"):document.documentElement.setAttribute("data-theme",t);try{localStorage.setItem("ink-theme",t)}catch(n){}document.querySelectorAll(".menu-theme-check").forEach(n=>{n.classList.remove("active")});let e=document.getElementById(`themeCheck-${t}`);e&&e.classList.add("active")}function At(){var e;let t="default";try{t=(e=localStorage.getItem("ink-theme"))!=null?e:"default"}catch(n){}qe(Le.includes(t)?t:"default")}function $t(t,e){let n=e?"Cmd":"Ctrl";t.menuBar.querySelectorAll(".menu-shortcut").forEach(i=>{let o=i.textContent;o&&(o.includes("Cmd/Ctrl")?i.textContent=o.replace("Cmd/Ctrl",n):o.includes("Ctrl")&&(i.textContent=o.replace("Ctrl",n)))})}function Nt({state:t,els:e,showToast:n,renderTree:r,callbacks:i}){function o(){t.sortMode=t.sortMode==="name"?"modified":"name",e.sortBtn.textContent=`Sort: ${t.sortMode==="name"?"Name":"Last modified"}`;let c=document.querySelector('[data-action="sort"] .menu-label-text');c&&(c.textContent=`Sort: ${t.sortMode==="name"?"Name":"Modified"}`),r().catch(l=>{n(`Sort render failed: ${String(l)}`,{persist:!0})})}function a(){t.isDirty&&!confirm("You have unsaved changes. Are you sure you want to exit?")||window.close()}function s(c){switch(c){case"new-note":i.createNewNote().catch(l=>{n(`Create note failed: ${String(l)}`,{persist:!0})});break;case"new-folder":i.createNewFolder().catch(l=>{n(`Create folder failed: ${String(l)}`,{persist:!0})});break;case"open-workspace":i.openWorkspace().catch(l=>{n(`Failed to open workspace: ${String(l)}`,{persist:!0})});break;case"close-workspace":i.closeWorkspace();break;case"exit":a();break;case"save":i.saveCurrentNote().catch(l=>{n(`Save failed: ${String(l)}`,{persist:!0})});break;case"save-as":i.saveAsNewNote().catch(l=>{n(`Save As failed: ${String(l)}`,{persist:!0})});break;case"refresh":i.handleRefresh();break;case"sort":o();break;case"collapse-sidebar":i.setSidebarCollapsed(!t.isSidebarCollapsed);break;case"export-json":i.exportAsJson();break;case"export-markdown":i.exportAsMarkdown();break;case"theme-default":case"theme-classic":case"theme-cobalt":case"theme-monokai":case"theme-office":case"theme-twilight":case"theme-xcode":{let l=c.replace("theme-","");Le.includes(l)&&qe(l);break}}}return{toggleSort:o,handleMenuAction:s,handleExit:a}}function je(t,e){let n=e.isSidebarCollapsed;t.app.classList.toggle("sidebar-collapsed",n),t.workspaceSidebar.classList.toggle("collapsed",n),t.sidebarToggleBtn.setAttribute("aria-expanded",String(!n)),t.sidebarToggleBtn.setAttribute("aria-label",n?"Expand sidebar":"Collapse sidebar"),t.sidebarToggleBtn.title=n?"Expand sidebar":"Collapse sidebar",t.sidebarToggleBtn.textContent=n?"\u25BC Expand":"\u25B6 Collapse"}function Qe(t,e,n){e.isSidebarCollapsed=n,je(t,e)}function ee(t,e,n="neutral"){t.statusBadge.textContent=e,t.statusBadge.classList.remove("ok","warn","err"),n!=="neutral"&&t.statusBadge.classList.add(n)}function Pt(t,e){function n(i,o={}){t.toastMsg.textContent=i,t.toast.classList.add("show"),e.current&&(clearTimeout(e.current),e.current=null),o.persist||(e.current=setTimeout(()=>{t.toast.classList.remove("show")},3500))}function r(){t.toast.classList.remove("show")}return{showToast:n,hideToast:r}}var me={folder:()=>'',folderOpen:()=>'',fileText:()=>'',library:()=>'',check:()=>''};function Dt({state:t,els:e,handlers:n,showToast:r}){function i(){let u=new Map,h=t.isTemporarySession?t.inMemoryNotes:t.notes;for(let m of h)for(let w of m.tags)u.set(w,(u.get(w)||0)+1);let p=[...u.entries()].sort((m,w)=>w[1]-m[1]||m[0].localeCompare(w[0])).slice(0,50);if(e.tagRow.innerHTML="",p.length===0)return;let b=document.createElement("button");b.className=`tag${t.tagFilter?"":" active"}`,b.textContent="All",b.title="Clear tag filter",b.addEventListener("click",()=>{t.tagFilter="",i(),t.isTemporarySession?l():a().catch(m=>{r(`Tag render failed: ${String(m)}`,{persist:!0})})}),e.tagRow.appendChild(b);for(let[m,w]of p){let g=document.createElement("button");g.className=`tag${t.tagFilter===m?" active":""}`,g.textContent=`#${m}`,g.title=`${w} note${w===1?"":"s"} tagged #${m}`,g.addEventListener("click",()=>{t.tagFilter=t.tagFilter===m?"":m,i(),t.isTemporarySession?l():a().catch(S=>{r(`Tag render failed: ${String(S)}`,{persist:!0})})}),e.tagRow.appendChild(g)}}async function o(){let u=[...t.notes];t.tagFilter&&(u=u.filter(b=>b.tags.has(t.tagFilter))),t.sortMode==="modified"?u.sort((b,m)=>(m.lastModified||0)-(b.lastModified||0)):u.sort((b,m)=>b.relPath.localeCompare(m.relPath));let h=t.searchQuery.trim().toLowerCase();if(!h)return new Set(u.map(b=>b.relPath));let p=new Set;for(let b of u){if(b.relPath.toLowerCase().includes(h)){p.add(b.relPath);continue}try{(await(await b.handle.getFile()).text()).toLowerCase().includes(h)&&p.add(b.relPath)}catch(m){}}return p}async function a(){if(!t.fileTree){e.tree.innerHTML='${te(t,!0)}`}br(t){return"An error occurred:
"+te(n.message+"",!0)+"";return e?Promise.resolve(r):r}if(e)return Promise.reject(n);throw n}}},le=new $r;function P(t,e){return le.parse(t,e)}P.options=P.setOptions=function(t){return le.setOptions(t),P.defaults=le.defaults,kt(P.defaults),P};P.getDefaults=Ie;P.defaults=ce;P.use=function(...t){return le.use(...t),P.defaults=le.defaults,kt(P.defaults),P};P.walkTokens=function(t,e){return le.walkTokens(t,e)};P.parseInline=le.parseInline;P.Parser=Y;P.parser=Y.parse;P.Renderer=Te;P.TextRenderer=je;P.Lexer=Z;P.lexer=Z.lex;P.Tokenizer=Le;P.Hooks=fe;P.parse=P;var Si=P.options,Li=P.setOptions,Ti=P.use,Ei=P.walkTokens,Mi=P.parseInline;var Ai=Y.parse,Ri=Z.lex;function we(t){return(t||"").trim().replace(/^#+/,"").replace(/[^\w\-/]+/g,"").toLowerCase()}function Pr(t){if(!t.startsWith("---"))return"";let e=t.indexOf(` +---`,3);return e===-1?"":t.slice(3,e).trim()}function Dr(t){let e=new Set,n=t.split(` +`);for(let i of n){let o=i.match(/^\s*tags\s*:\s*\[(.*)\]\s*$/i);if(!o)continue;let a=o[1].split(",").map(s=>we(s.replace(/["']/g,"")));for(let s of a)s&&e.add(s)}let r=!1;for(let i of n){if(/^\s*tags\s*:\s*$/i.test(i)){r=!0;continue}if(!r)continue;let o=i.match(/^\s*-\s*(.+)\s*$/);if(o){let a=we(o[1].replace(/["']/g,""));a&&e.add(a);continue}i.trim()!==""&&!/^\s+/.test(i)&&(r=!1)}return e}function Rt(t){let e=new Set,n=Pr(t);if(n){let i=Dr(n);for(let o of i)e.add(o)}let r=t.match(/\B#([a-zA-Z0-9][\w\-/]{1,50})\b/g);if(r)for(let i of r){let o=we(i);o&&e.add(o)}return e}function E(t){let e=document.getElementById(t);if(!e)throw new Error(`Missing required element: #${t}`);return e}function Ct(){return{app:E("app"),menuBar:E("menuBar"),workspaceSidebar:E("workspaceSidebar"),sidebarToggleBtn:E("sidebarToggleBtn"),refreshBtn:E("refreshBtn"),sortBtn:E("sortBtn"),searchInput:E("searchInput"),webmcpNoteModal:E("webmcpNoteModal"),webmcpNoteModalBackdrop:E("webmcpNoteModalBackdrop"),webmcpNoteModalCloseBtn:E("webmcpNoteModalCloseBtn"),webmcpNoteForm:E("webmcpNoteForm"),webmcpTitleInput:E("webmcpTitleInput"),webmcpBodyInput:E("webmcpBodyInput"),webmcpTagInput:E("webmcpTagInput"),tree:E("tree"),tagRow:E("tagRow"),workspaceName:E("workspaceName"),countsPill:E("countsPill"),editor:E("editor"),editorSplit:E("editorSplit"),editorPane:E("editorPane"),previewPane:E("previewPane"),editorViewModeGroup:E("editorViewModeGroup"),editorViewSourceBtn:E("editorViewSourceBtn"),editorViewSplitBtn:E("editorViewSplitBtn"),editorViewPreviewBtn:E("editorViewPreviewBtn"),preview:E("preview"),currentFilename:E("currentFilename"),dirtyDot:E("dirtyDot"),statusBadge:E("statusBadge"),toast:E("toast"),toastMsg:E("toastMsg"),toastCloseBtn:E("toastCloseBtn"),temporarySessionBadge:E("temporarySessionBadge"),cogitoToggleBtn:E("cogitoToggleBtn"),cogitoPanel:E("cogitoPanel"),cogitoLiteBtn:E("cogitoLiteBtn"),cogitoDeepBtn:E("cogitoDeepBtn"),cogitoGenerateBtn:E("cogitoGenerateBtn"),cogitoStatus:E("cogitoStatus"),cogitoQuestionList:E("cogitoQuestionList"),documentLinterAnalyzeBtn:E("documentLinterAnalyzeBtn"),documentLinterExportBtn:E("documentLinterExportBtn"),documentLinterAutoRunToggle:E("documentLinterAutoRunToggle"),documentLinterStatus:E("documentLinterStatus"),documentLinterResults:E("documentLinterResults")}}function Nt(){return!!(window.showDirectoryPicker&&window.FileSystemHandle)}async function Qe(t,e="read"){if(!t)return!1;if(!t.queryPermission||!t.requestPermission)return!0;let n={mode:e};return await t.queryPermission(n)==="granted"?!0:await t.requestPermission(n)==="granted"}function $t({state:t,ensurePermission:e,rescanWorkspace:n,showToast:r,setStatus:i}){function o(){s(),t.autoRefreshTimer=setInterval(()=>{a().catch(c=>{r(`Auto-refresh failed: ${String(c)}`,{persist:!0}),i("Auto-refresh failed","err")})},t.autoRefreshMs)}async function a(){if(t.workspaceHandle&&!t.isDirty&&!(Date.now()-t.lastWorkspaceInteractionAt<5e3)){try{if(!await e(t.workspaceHandle,"read"))throw new Error("Folder permission revoked.")}catch(c){s(),r("Auto-refresh stopped: folder permission revoked.",{persist:!0}),i("Permission revoked","err");return}await n({silent:!0})}}function s(){t.autoRefreshTimer&&(clearInterval(t.autoRefreshTimer),t.autoRefreshTimer=null)}return{startAutoRefresh:o,stopAutoRefresh:s,runAutoRefresh:a}}function ne(t){return String(t).replaceAll("&","&").replaceAll("<","<").replaceAll(">",">").replaceAll('"',""").replaceAll("'","'")}var Pt="ink-editor-view-mode",Br=["split","source","preview"];function Ir(t){return t==="source"||t==="preview"?t:"split"}function Dt(){try{return Ir(localStorage.getItem(Pt))}catch(t){return"split"}}function Ve(t,e){t.editorSplit.classList.toggle("view-split",e==="split"),t.editorSplit.classList.toggle("view-source",e==="source"),t.editorSplit.classList.toggle("view-preview",e==="preview"),t.editorPane.hidden=e==="preview",t.previewPane.hidden=e==="source",[[t.editorViewSourceBtn,"source"],[t.editorViewSplitBtn,"split"],[t.editorViewPreviewBtn,"preview"]].forEach(([r,i])=>{let o=i===e;r.classList.toggle("active",o),r.setAttribute("aria-pressed",String(o))})}function Bt(t,e,n){if(Br.includes(n)){e.editorViewMode=n,Ve(t,n);try{localStorage.setItem(Pt,n)}catch(r){}}}function Ue(t,e){try{t.preview.innerHTML=P.parse(e||"")}catch(n){let r=n instanceof Error?n.message:String(n);t.preview.innerHTML=`
${ne(r)}`}}function Ae(t,e,n){t.dirtyDot.classList.toggle("show",e.isDirty);let r=e.currentRelPath?e.currentRelPath.split("/").pop():"No note open";t.currentFilename.textContent=`${r}${e.isDirty?" \u2022 Unsaved":""}`,e.isDirty&&n("Unsaved changes","warn")}var Re=["default","classic","cobalt","monokai","office","twilight","xcode"];function Ge(t){if(!Re.includes(t))return;t==="default"?document.documentElement.removeAttribute("data-theme"):document.documentElement.setAttribute("data-theme",t);try{localStorage.setItem("ink-theme",t)}catch(n){}document.querySelectorAll(".menu-theme-check").forEach(n=>{n.classList.remove("active")});let e=document.getElementById(`themeCheck-${t}`);e&&e.classList.add("active")}function It(){var e;let t="default";try{t=(e=localStorage.getItem("ink-theme"))!=null?e:"default"}catch(n){}Ge(Re.includes(t)?t:"default")}function Ht(t,e){let n=e?"Cmd":"Ctrl";t.menuBar.querySelectorAll(".menu-shortcut").forEach(i=>{let o=i.textContent;o&&(o.includes("Cmd/Ctrl")?i.textContent=o.replace("Cmd/Ctrl",n):o.includes("Ctrl")&&(i.textContent=o.replace("Ctrl",n)))})}function _t({state:t,els:e,showToast:n,renderTree:r,callbacks:i}){function o(){t.sortMode=t.sortMode==="name"?"modified":"name",e.sortBtn.textContent=`Sort: ${t.sortMode==="name"?"Name":"Last modified"}`;let c=document.querySelector('[data-action="sort"] .menu-label-text');c&&(c.textContent=`Sort: ${t.sortMode==="name"?"Name":"Modified"}`),r().catch(l=>{n(`Sort render failed: ${String(l)}`,{persist:!0})})}function a(){t.isDirty&&!confirm("You have unsaved changes. Are you sure you want to exit?")||window.close()}function s(c){switch(c){case"new-note":i.createNewNote().catch(l=>{n(`Create note failed: ${String(l)}`,{persist:!0})});break;case"new-folder":i.createNewFolder().catch(l=>{n(`Create folder failed: ${String(l)}`,{persist:!0})});break;case"open-workspace":i.openWorkspace().catch(l=>{n(`Failed to open workspace: ${String(l)}`,{persist:!0})});break;case"close-workspace":i.closeWorkspace();break;case"exit":a();break;case"save":i.saveCurrentNote().catch(l=>{n(`Save failed: ${String(l)}`,{persist:!0})});break;case"save-as":i.saveAsNewNote().catch(l=>{n(`Save As failed: ${String(l)}`,{persist:!0})});break;case"refresh":i.handleRefresh();break;case"sort":o();break;case"collapse-sidebar":i.setSidebarCollapsed(!t.isSidebarCollapsed);break;case"export-json":i.exportAsJson();break;case"export-markdown":i.exportAsMarkdown();break;case"theme-default":case"theme-classic":case"theme-cobalt":case"theme-monokai":case"theme-office":case"theme-twilight":case"theme-xcode":{let l=c.replace("theme-","");Re.includes(l)&&Ge(l);break}}}return{toggleSort:o,handleMenuAction:s,handleExit:a}}function Ke(t,e){let n=e.isSidebarCollapsed;t.app.classList.toggle("sidebar-collapsed",n),t.workspaceSidebar.classList.toggle("collapsed",n),t.sidebarToggleBtn.setAttribute("aria-expanded",String(!n)),t.sidebarToggleBtn.setAttribute("aria-label",n?"Expand sidebar":"Collapse sidebar"),t.sidebarToggleBtn.title=n?"Expand sidebar":"Collapse sidebar",t.sidebarToggleBtn.textContent=n?"\u25BC Expand":"\u25B6 Collapse"}function Ze(t,e,n){e.isSidebarCollapsed=n,Ke(t,e)}function se(t,e,n="neutral"){t.statusBadge.textContent=e,t.statusBadge.classList.remove("ok","warn","err"),n!=="neutral"&&t.statusBadge.classList.add(n)}function Ft(t,e){function n(i,o={}){t.toastMsg.textContent=i,t.toast.classList.add("show"),e.current&&(clearTimeout(e.current),e.current=null),o.persist||(e.current=setTimeout(()=>{t.toast.classList.remove("show")},3500))}function r(){t.toast.classList.remove("show")}return{showToast:n,hideToast:r}}var be={folder:()=>'',folderOpen:()=>'',fileText:()=>'',library:()=>'',check:()=>''};function zt({state:t,els:e,handlers:n,showToast:r}){function i(){let u=new Map,h=t.isTemporarySession?t.inMemoryNotes:t.notes;for(let g of h)for(let k of g.tags)u.set(k,(u.get(k)||0)+1);let d=[...u.entries()].sort((g,k)=>k[1]-g[1]||g[0].localeCompare(k[0])).slice(0,50);if(e.tagRow.innerHTML="",d.length===0)return;let w=document.createElement("button");w.className=`tag${t.tagFilter?"":" active"}`,w.textContent="All",w.title="Clear tag filter",w.addEventListener("click",()=>{t.tagFilter="",i(),t.isTemporarySession?l():a().catch(g=>{r(`Tag render failed: ${String(g)}`,{persist:!0})})}),e.tagRow.appendChild(w);for(let[g,k]of d){let y=document.createElement("button");y.className=`tag${t.tagFilter===g?" active":""}`,y.textContent=`#${g}`,y.title=`${k} note${k===1?"":"s"} tagged #${g}`,y.addEventListener("click",()=>{t.tagFilter=t.tagFilter===g?"":g,i(),t.isTemporarySession?l():a().catch(H=>{r(`Tag render failed: ${String(H)}`,{persist:!0})})}),e.tagRow.appendChild(y)}}async function o(){let u=[...t.notes];t.tagFilter&&(u=u.filter(w=>w.tags.has(t.tagFilter))),t.sortMode==="modified"?u.sort((w,g)=>(g.lastModified||0)-(w.lastModified||0)):u.sort((w,g)=>w.relPath.localeCompare(g.relPath));let h=t.searchQuery.trim().toLowerCase();if(!h)return new Set(u.map(w=>w.relPath));let d=new Set;for(let w of u){if(w.relPath.toLowerCase().includes(h)){d.add(w.relPath);continue}try{(await(await w.handle.getFile()).text()).toLowerCase().includes(h)&&d.add(w.relPath)}catch(g){}}return d}async function a(){if(!t.fileTree){e.tree.innerHTML='Enable Document Linter and analyze your document.
- -Analyze first for more focused coaching, or generate from your latest sentence now.
+