From 82f59ab8da803379927161c3dd633b4ed195af13 Mon Sep 17 00:00:00 2001 From: mirivlad Date: Tue, 16 Jun 2026 09:08:13 +0800 Subject: [PATCH] fix: FilesTab empty state, button styles, text preview, menu positioning - Add reactive $: block in FilesTab to auto-load files on selectedNode change - Copy .btn/.btn-primary/.btn-sm styles into NotesTab.svelte and FilesTab.svelte (scoped CSS) - Fix FilePreviewModal: render .md with MarkdownPreview, text files in
, external open in footer
- Expand codeNames/textMimes in fileUtils.js to cover all text file types
- Add fallback text read for unknown file types in _openPreview
- Fix toggleMenu in FileTreeRow: position menu near button using getBoundingClientRect
- Add debug logs for file open flow and menu positioning
- Add tabindex+keydown to MarkdownPreview div (a11y partial fix)

Co-Authored-By: OWL (Hermes Agent) 
---
 .../frontend-dist/assets/main-C0_3Dz8C.js     | 87 -------------------
 .../frontend-dist/assets/main-DKrNFx34.css    |  1 +
 .../frontend-dist/assets/main-WcQPBFFT.js     | 87 +++++++++++++++++++
 .../frontend-dist/assets/main-t8j1WzN6.css    |  1 -
 cmd/verstak-gui/frontend-dist/index.html      |  4 +-
 docs/frontend-architecture.md                 | 86 +++++++++++++-----
 frontend/src/FileTreeRow.svelte               | 10 ++-
 frontend/src/lib/FilePreviewModal.svelte      | 36 ++++++--
 .../src/lib/components/files/FilesTab.svelte  | 36 ++++++++
 .../components/notes/MarkdownPreview.svelte   |  2 +-
 .../src/lib/components/notes/NotesTab.svelte  | 12 ++-
 frontend/src/lib/fileUtils.js                 |  4 +-
 12 files changed, 238 insertions(+), 128 deletions(-)
 delete mode 100644 cmd/verstak-gui/frontend-dist/assets/main-C0_3Dz8C.js
 create mode 100644 cmd/verstak-gui/frontend-dist/assets/main-DKrNFx34.css
 create mode 100644 cmd/verstak-gui/frontend-dist/assets/main-WcQPBFFT.js
 delete mode 100644 cmd/verstak-gui/frontend-dist/assets/main-t8j1WzN6.css

diff --git a/cmd/verstak-gui/frontend-dist/assets/main-C0_3Dz8C.js b/cmd/verstak-gui/frontend-dist/assets/main-C0_3Dz8C.js
deleted file mode 100644
index a04bbd8..0000000
--- a/cmd/verstak-gui/frontend-dist/assets/main-C0_3Dz8C.js
+++ /dev/null
@@ -1,87 +0,0 @@
-var tg=Object.defineProperty;var ng=(n,e,t)=>e in n?tg(n,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):n[e]=t;var lt=(n,e,t)=>ng(n,typeof e!="symbol"?e+"":e,t);(function(){const e=document.createElement("link").relList;if(e&&e.supports&&e.supports("modulepreload"))return;for(const i of document.querySelectorAll('link[rel="modulepreload"]'))l(i);new MutationObserver(i=>{for(const s of i)if(s.type==="childList")for(const o of s.addedNodes)o.tagName==="LINK"&&o.rel==="modulepreload"&&l(o)}).observe(document,{childList:!0,subtree:!0});function t(i){const s={};return i.integrity&&(s.integrity=i.integrity),i.referrerPolicy&&(s.referrerPolicy=i.referrerPolicy),i.crossOrigin==="use-credentials"?s.credentials="include":i.crossOrigin==="anonymous"?s.credentials="omit":s.credentials="same-origin",s}function l(i){if(i.ep)return;i.ep=!0;const s=t(i);fetch(i.href,s)}})();function oe(){}function lg(n,e){for(const t in e)n[t]=e[t];return n}function Lf(n){return n()}function jo(){return Object.create(null)}function Ce(n){n.forEach(Lf)}function dl(n){return typeof n=="function"}function at(n,e){return n!=n?e==e:n!==e||n&&typeof n=="object"||typeof n=="function"}let bi;function Ol(n,e){return n===e?!0:(bi||(bi=document.createElement("a")),bi.href=e,n===bi.href)}function ig(n){return Object.keys(n).length===0}function sg(n,e,t,l){if(n){const i=Df(n,e,t,l);return n[0](i)}}function Df(n,e,t,l){return n[1]&&l?lg(t.ctx.slice(),n[1](l(e))):t.ctx}function og(n,e,t,l){if(n[2]&&l){const i=n[2](l(t));if(e.dirty===void 0)return i;if(typeof i=="object"){const s=[],o=Math.max(e.dirty.length,i.length);for(let c=0;c32){const e=[],t=n.ctx.length/32;for(let l=0;ln.removeEventListener(e,t,l)}function Fi(n){return function(e){return e.preventDefault(),n.call(this,e)}}function We(n){return function(e){return e.stopPropagation(),n.call(this,e)}}function Qt(n){return function(e){e.target===this&&n.call(this,e)}}function r(n,e,t){t==null?n.removeAttribute(e):n.getAttribute(e)!==t&&n.setAttribute(e,t)}function Pl(n){return n===""?null:+n}function cg(n){return Array.from(n.childNodes)}function Q(n,e){e=""+e,n.data!==e&&(n.data=e)}function Re(n,e){n.value=e??""}function on(n,e,t,l){t==null?n.style.removeProperty(e):n.style.setProperty(e,t,"")}function Vn(n,e,t){for(let l=0;l{const i=n.$$.callbacks[e];if(i){const s=ug(e,t,{cancelable:l});return i.slice().forEach(o=>{o.call(n,s)}),!s.defaultPrevented}return!0}}function Ds(n,e){const t=n.$$.callbacks[e.type];t&&t.slice().forEach(l=>l.call(this,e))}const Rl=[],An=[];let Dl=[];const Ho=[],Of=Promise.resolve();let Es=!1;function qf(){Es||(Es=!0,Of.then(Pf))}function fg(){return qf(),Of}function pl(n){Dl.push(n)}const ds=new Set;let Cl=0;function Pf(){if(Cl!==0)return;const n=$l;do{try{for(;Cln.indexOf(l)===-1?e.push(l):t.push(l)),t.forEach(l=>l()),Dl=e}const Ai=new Set;let cl;function yt(){cl={r:0,c:[],p:cl}}function Et(){cl.r||Ce(cl.c),cl=cl.p}function ge(n,e){n&&n.i&&(Ai.delete(n),n.i(e))}function ke(n,e,t,l){if(n&&n.o){if(Ai.has(n))return;Ai.add(n),cl.c.push(()=>{Ai.delete(n),l&&(t&&n.d(1),l())}),n.o(e)}else l&&l()}function Te(n){return(n==null?void 0:n.length)!==void 0?n:Array.from(n)}function zf(n,e){ke(n,1,1,()=>{e.delete(n.key)})}function Bf(n,e,t,l,i,s,o,c,u,d,p,h){let m=n.length,g=s.length,b=m;const k={};for(;b--;)k[n[b].key]=b;const y=[],E=new Map,T=new Map,N=[];for(b=g;b--;){const M=h(i,s,b),D=t(M);let z=o.get(D);z?N.push(()=>z.p(M,e)):(z=d(D,M),z.c()),E.set(D,y[b]=z),D in k&&T.set(D,Math.abs(b-k[D]))}const A=new Set,I=new Set;function R(M){ge(M,1),M.m(c,p),o.set(M.key,M),p=M.first,g--}for(;m&&g;){const M=y[g-1],D=n[m-1],z=M.key,U=D.key;M===D?(p=M.first,m--,g--):E.has(U)?!o.has(z)||A.has(z)?R(M):I.has(U)?m--:T.get(z)>T.get(U)?(I.add(z),R(M)):(A.add(U),m--):(u(D,o),m--)}for(;m--;){const M=n[m];E.has(M.key)||u(M,o)}for(;g;)R(y[g-1]);return Ce(N),y}function xe(n){n&&n.c()}function Xe(n,e,t){const{fragment:l,after_update:i}=n.$$;l&&l.m(e,t),pl(()=>{const s=n.$$.on_mount.map(Lf).filter(dl);n.$$.on_destroy?n.$$.on_destroy.push(...s):Ce(s),n.$$.on_mount=[]}),i.forEach(pl)}function Je(n,e){const t=n.$$;t.fragment!==null&&(pg(t.after_update),Ce(t.on_destroy),t.fragment&&t.fragment.d(e),t.on_destroy=t.fragment=null,t.ctx=[])}function hg(n,e){n.$$.dirty[0]===-1&&(Rl.push(n),qf(),n.$$.dirty.fill(0)),n.$$.dirty[e/31|0]|=1<{const b=g.length?g[0]:m;return d.ctx&&i(d.ctx[h],d.ctx[h]=b)&&(!d.skip_bound&&d.bound[h]&&d.bound[h](b),p&&hg(n,h)),m}):[],d.update(),p=!0,Ce(d.before_update),d.fragment=l?l(d.ctx):!1,e.target){if(e.hydrate){const h=cg(e.target);d.fragment&&d.fragment.l(h),h.forEach(S)}else d.fragment&&d.fragment.c();e.intro&&ge(n.$$.fragment),Xe(n,e.target,e.anchor),Pf()}xl(u)}class ut{constructor(){lt(this,"$$");lt(this,"$$set")}$destroy(){Je(this,1),this.$destroy=oe}$on(e,t){if(!dl(t))return oe;const l=this.$$.callbacks[e]||(this.$$.callbacks[e]=[]);return l.push(t),()=>{const i=l.indexOf(t);i!==-1&&l.splice(i,1)}}$set(e){this.$$set&&!ig(e)&&(this.$$.skip_bound=!0,this.$$set(e),this.$$.skip_bound=!1)}}const mg="4";typeof window<"u"&&(window.__svelte||(window.__svelte={v:new Set})).v.add(mg);function gg(n){let e,t;return{c(){e=ae("path"),t=ae("polyline"),r(e,"d","M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"),r(t,"points","14 2 14 8 20 8")},m(l,i){C(l,e,i),C(l,t,i)},d(l){l&&(S(e),S(t))}}}function _g(n){let e,t,l,i,s;return{c(){e=ae("path"),t=ae("polyline"),l=ae("line"),i=ae("line"),s=ae("polyline"),r(e,"d","M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"),r(t,"points","14 2 14 8 20 8"),r(l,"x1","16"),r(l,"y1","13"),r(l,"x2","8"),r(l,"y2","13"),r(i,"x1","16"),r(i,"y1","17"),r(i,"x2","8"),r(i,"y2","17"),r(s,"points","10 9 9 9 8 9")},m(o,c){C(o,e,c),C(o,t,c),C(o,l,c),C(o,i,c),C(o,s,c)},d(o){o&&(S(e),S(t),S(l),S(i),S(s))}}}function bg(n){let e,t;return{c(){e=ae("polyline"),t=ae("polyline"),r(e,"points","16 18 22 12 16 6"),r(t,"points","8 6 2 12 8 18")},m(l,i){C(l,e,i),C(l,t,i)},d(l){l&&(S(e),S(t))}}}function kg(n){let e,t,l,i;return{c(){e=ae("path"),t=ae("polyline"),l=ae("line"),i=ae("rect"),r(e,"d","M21 8v13a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8"),r(t,"points","7 3 12 8 17 3"),r(l,"x1","3"),r(l,"y1","8"),r(l,"x2","21"),r(l,"y2","8"),r(i,"x","10"),r(i,"y","12"),r(i,"width","4"),r(i,"height","4"),r(i,"rx","1")},m(s,o){C(s,e,o),C(s,t,o),C(s,l,o),C(s,i,o)},d(s){s&&(S(e),S(t),S(l),S(i))}}}function vg(n){let e,t,l,i,s;return{c(){e=ae("path"),t=ae("polyline"),l=ae("line"),i=ae("line"),s=ae("line"),r(e,"d","M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"),r(t,"points","14 2 14 8 20 8"),r(l,"x1","9"),r(l,"y1","12"),r(l,"x2","15"),r(l,"y2","12"),r(i,"x1","9"),r(i,"y1","15"),r(i,"x2","13"),r(i,"y2","15"),r(s,"x1","12"),r(s,"y1","15"),r(s,"x2","12"),r(s,"y2","18")},m(o,c){C(o,e,c),C(o,t,c),C(o,l,c),C(o,i,c),C(o,s,c)},d(o){o&&(S(e),S(t),S(l),S(i),S(s))}}}function wg(n){let e,t,l,i,s,o;return{c(){e=ae("path"),t=ae("polyline"),l=ae("line"),i=ae("line"),s=ae("line"),o=ae("line"),r(e,"d","M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"),r(t,"points","14 2 14 8 20 8"),r(l,"x1","8"),r(l,"y1","12"),r(l,"x2","16"),r(l,"y2","12"),r(i,"x1","8"),r(i,"y1","16"),r(i,"x2","16"),r(i,"y2","16"),r(s,"x1","8"),r(s,"y1","14"),r(s,"x2","12"),r(s,"y2","14"),r(o,"x1","12"),r(o,"y1","12"),r(o,"x2","12"),r(o,"y2","18")},m(c,u){C(c,e,u),C(c,t,u),C(c,l,u),C(c,i,u),C(c,s,u),C(c,o,u)},d(c){c&&(S(e),S(t),S(l),S(i),S(s),S(o))}}}function yg(n){let e,t,l,i;return{c(){e=ae("path"),t=ae("polyline"),l=ae("line"),i=ae("line"),r(e,"d","M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"),r(t,"points","14 2 14 8 20 8"),r(l,"x1","16"),r(l,"y1","13"),r(l,"x2","8"),r(l,"y2","13"),r(i,"x1","16"),r(i,"y1","17"),r(i,"x2","8"),r(i,"y2","17")},m(s,o){C(s,e,o),C(s,t,o),C(s,l,o),C(s,i,o)},d(s){s&&(S(e),S(t),S(l),S(i))}}}function Eg(n){let e,t,l,i,s;return{c(){e=ae("path"),t=ae("polyline"),l=ae("line"),i=ae("line"),s=ae("line"),r(e,"d","M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"),r(t,"points","14 2 14 8 20 8"),r(l,"x1","8"),r(l,"y1","12"),r(l,"x2","16"),r(l,"y2","12"),r(i,"x1","8"),r(i,"y1","16"),r(i,"x2","16"),r(i,"y2","16"),r(s,"x1","8"),r(s,"y1","14"),r(s,"x2","12"),r(s,"y2","14")},m(o,c){C(o,e,c),C(o,t,c),C(o,l,c),C(o,i,c),C(o,s,c)},d(o){o&&(S(e),S(t),S(l),S(i),S(s))}}}function Tg(n){let e,t,l;return{c(){e=ae("path"),t=ae("circle"),l=ae("circle"),r(e,"d","M9 18V5l12-2v13"),r(t,"cx","6"),r(t,"cy","18"),r(t,"r","3"),r(l,"cx","18"),r(l,"cy","16"),r(l,"r","3")},m(i,s){C(i,e,s),C(i,t,s),C(i,l,s)},d(i){i&&(S(e),S(t),S(l))}}}function Sg(n){let e,t;return{c(){e=ae("rect"),t=ae("polyline"),r(e,"x","2"),r(e,"y","4"),r(e,"width","20"),r(e,"height","16"),r(e,"rx","2"),r(t,"points","10 9 16 12 10 15 10 9")},m(l,i){C(l,e,i),C(l,t,i)},d(l){l&&(S(e),S(t))}}}function Cg(n){let e,t,l;return{c(){e=ae("rect"),t=ae("circle"),l=ae("polyline"),r(e,"x","3"),r(e,"y","3"),r(e,"width","18"),r(e,"height","18"),r(e,"rx","2"),r(e,"ry","2"),r(t,"cx","8.5"),r(t,"cy","8.5"),r(t,"r","1.5"),r(l,"points","21 15 16 10 5 21")},m(i,s){C(i,e,s),C(i,t,s),C(i,l,s)},d(i){i&&(S(e),S(t),S(l))}}}function Ag(n){let e;return{c(){e=ae("path"),r(e,"d","M22 19a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h5l2 3h9a2 2 0 0 1 2 2z")},m(t,l){C(t,e,l)},d(t){t&&S(e)}}}function Ng(n){let e;function t(s,o){return s[0]==="folder"?Ag:s[0]==="image"?Cg:s[0]==="video"?Sg:s[0]==="audio"?Tg:s[0]==="pdf"?Eg:s[0]==="document"?yg:s[0]==="spreadsheet"?wg:s[0]==="presentation"?vg:s[0]==="archive"?kg:s[0]==="code"?bg:s[0]==="text"?_g:gg}let l=t(n),i=l(n);return{c(){e=ae("svg"),i.c(),r(e,"width",n[1]),r(e,"height",n[1]),r(e,"viewBox","0 0 24 24"),r(e,"fill","none"),r(e,"stroke","currentColor"),r(e,"stroke-width","1.5"),r(e,"stroke-linecap","round"),r(e,"stroke-linejoin","round"),r(e,"xmlns","http://www.w3.org/2000/svg")},m(s,o){C(s,e,o),i.m(e,null)},p(s,[o]){l!==(l=t(s))&&(i.d(1),i=l(s),i&&(i.c(),i.m(e,null))),o&2&&r(e,"width",s[1]),o&2&&r(e,"height",s[1])},i:oe,o:oe,d(s){s&&S(e),i.d()}}}function Ig(n,e,t){let{kind:l="generic"}=e,{size:i=20}=e;return n.$$set=s=>{"kind"in s&&t(0,l=s.kind),"size"in s&&t(1,i=s.size)},[l,i]}class Ff extends ut{constructor(e){super(),ct(this,e,Ig,Ng,at,{kind:0,size:1})}}const Mg={"nav.today":"Сегодня","nav.inbox":"Неразобранное","nav.trash":"Корзина","nav.activity":"Активность","nav.journal":"Журнал","nav.clients":"Клиенты","nav.projects":"Проекты","nav.recipes":"Рецепты","nav.documents":"Документы","nav.archive":"Архив","nav.sections":"Разделы","nav.cases":"Дела","nav.noCases":"Нет дел","nav.sync":"Синхронизация","nav.syncSettings":"Настройки синхронизации","nav.syncNow":"Синхронизировать","nav.selectPrompt":"Выберите раздел или дело","nav.brand":"Верстак","nav.system":"Системное","nav.workspace":"Рабочее пространство","nav.noNodes":"Нет узлов","nav.openFolder":"Открыть папку","nav.createInside":"Создать внутри","nav.createNode":"Создать элемент","nav.moveToRoot":"Переместить в корень","inbox.subtitle":"Захваченные материалы, которые нужно разложить по делам","inbox.sortByDate":"по дате","inbox.sortByName":"по имени","inbox.sortByType":"по типу","inbox.sortAsc":"по возрастанию","inbox.sortDesc":"по убыванию","inbox.groupByContext":"Группировать по месту захвата","inbox.noContext":"Без места захвата","inbox.empty":"Неразобранных элементов нет","inbox.pasteClipboard":"Вставить из буфера","inbox.captured":"Добавлено","inbox.clipboardEmpty":"Буфер обмена пуст","inbox.clipboardUnavailable":"Буфер обмена недоступен","inbox.assign":"Разложить","inbox.keepHere":"Прикрепить в захваченном месте","inbox.localEmpty":"Для этого дела неразобранных материалов нет","inbox.capturedIn":"Захвачено в","inbox.suggestedTarget":"Цель","inbox.assignTitle":"Разложить материал","inbox.assignTarget":"Дело","inbox.assignSearchPlaceholder":"Найти дело","inbox.assignSearchHint":"Начните набирать название Дела","inbox.deleteTitle":"Удалить материал","inbox.deleteConfirm":"Удалить «{title}» из неразобранного?","capture.kind.text":"Текст","capture.kind.url":"Ссылка","capture.kind.file":"Файл","capture.kind.folder":"Папка","capture.kind.image":"Изображение","capture.source.clipboard":"Буфер обмена","capture.source.clipboard_button":"Кнопка буфера","capture.source.drop":"Перетаскивание","capture.source.paste":"Вставка","capture.source.browser":"Браузер","capture.source.manual":"Вручную","capture.dropOverlayNode":"Будет добавлено в Неразобранное для: {title}","capture.dropOverlayGlobal":"Будет добавлено в глобальное Неразобранное","trash.openFolder":"Открыть папку корзины","trash.empty":"Корзина пуста","trash.emptyTrash":"Очистить корзину","trash.restore":"Восстановить","trash.deletedNodes":"Удаленные элементы","tab.overview":"Обзор","tab.notes":"Заметки","tab.files":"Файлы","tab.inbox":"Неразобранное","tab.links":"Ссылки","tab.actions":"Действия","tab.worklog":"Журнал","tab.activity":"Активность","common.save":"Сохранить","common.cancel":"Отмена","common.delete":"Удалить","common.rename":"Переименовать","common.close":"Закрыть","common.create":"Создать","common.confirm":"Подтверждение","common.back":"← Назад","common.backLabel":"Назад","common.loading":"Загрузка...","common.error":"Ошибка:","common.yes":"Да","common.ok":"OK","common.copy":"Копировать","common.cut":"Вырезать","common.paste":"Вставить","common.duplicate":"Дублировать","common.run":"Запустить","common.test":"Test","common.all":"Все","common.open":"Открыть","common.no":"Нет","common.date":"Дата","common.search":"Найти","common.testAgain":"Проверить","common.connect":"Подключиться","common.disconnect":"Отключиться","common.settings":"Настройки","common.name":"Название","common.type":"Тип","common.section":"Раздел","common.created":"Создано","common.empty":"Нет","common.newName":"Новое имя","search.placeholder":"Поиск по Верстаку...","search.noResults":"Ничего не найдено","welcome.title":"Верстак","welcome.selectSection":"Выберите раздел в боковой панели.","welcome.createCase":"Или создайте новое дело кнопкой «+».","welcome.addCase":"Добавить дело","event.noteCreated":"Заметка создана","event.noteUpdated":"Заметка изменена","event.fileAdded":"Файл добавлен","event.fileDeleted":"Файл удалён","event.fileRenamed":"Файл переименован","event.fileCopied":"Файл скопирован","event.fileMoved":"Файл перемещён","event.folderAdded":"Папка добавлена","event.folderDeleted":"Папка удалена","event.folderRenamed":"Папка переименована","event.caseCreated":"Дело создано","event.caseUpdated":"Дело изменено","event.noteDeleted":"Заметка удалена","event.folderMoved":"Папка перемещена","event.nodeDeleted":"Узел удалён","event.actionCreated":"Действие создано","event.actionDone":"Действие выполнено","event.worklogAdded":"Запись времени добавлена","kind.project":"Проект","kind.client":"Клиент","kind.document":"Документ","kind.recipe":"Рецепт","kind.folder":"Папка","kind.note":"Заметка","kind.file":"Файл","kind.archive":"Архив","kind.case":"Дело","kind.link":"Ссылка","kind.action":"Действие","links.empty":"Ссылок пока нет","links.editTitle":"Редактировать ссылку","links.note":"Заметка","links.copyUrl":"Копировать URL","links.copied":"URL скопирован","links.copyUnavailable":"Не удалось скопировать URL","links.deleteTitle":"Удалить ссылку","links.deleteConfirm":"Удалить ссылку «{title}»?","action.openUrl":"Открыть URL","action.openFile":"Открыть файл","action.openFolder":"Открыть папку","action.runCommand":"Запустить команду","action.runScript":"Запустить скрипт","action.openTerminal":"Открыть терминал","action.launchApp":"Запустить приложение","action.addAction":"+ Добавить действие","action.newAction":"Новое действие","action.noActions":"Действий пока нет","action.run":"Запустить","action.dataUrl":"URL","action.dataPath":"Путь","action.dataCommand":"Команда","action.urlPlaceholder":"https://example.com","action.pathPlaceholder":"/path/to/file","action.commandPlaceholder":"команда","action.namePlaceholder":"Например: Открыть сайт","note.add":"+ Добавить заметку","note.new":"Новая заметка","note.title":"Название заметки","note.noNotes":"Нет заметок","note.createFirst":"Создайте первую заметку для этого дела.","note.placeholder":"Начните писать...","note.unsavedTitle":"Несохранённые изменения","note.unsavedMessage":"Закрыть редактор? Все несохранённые изменения будут потеряны.","note.unsavedClose":"Закрыть","note.mode.edit":"Редактор","note.mode.preview":"Просмотр","note.mode.split":"Разделённый","note.toolbar.bold":"Жирный (Ctrl+B)","note.toolbar.italic":"Курсив (Ctrl+I)","note.toolbar.heading":"Заголовок","note.toolbar.link":"Ссылка","note.toolbar.code":"Код","note.toolbar.codeBlock":"Блок кода","note.toolbar.bulletList":"Маркированный список","note.toolbar.numberedList":"Нумерованный список","note.toolbar.checkbox":"Чекбокс","note.toolbar.quote":"Цитата","note.toolbar.internalLink":"Внутренняя ссылка Verstak","note.internal.secretNotImplemented":"Сейф доступов ещё не реализован","note.internal.caseNotFound":"Дело не найдено","note.internal.noteNotFound":"Заметка не найдена","note.internal.fileNotFound":"Файл не найден","note.internal.fileFound":"Файл найден: {title}","note.rename":"Переименовать заметку","note.deleteConfirm":"Удалить заметку «{title}»?","note.renameError":"Не удалось переименовать заметку","note.internalLink.title":"Вставить внутреннюю ссылку","note.internalLink.label":"Текст ссылки","note.internalLink.url":"Адрес ссылки","note.internalLink.labelPlaceholder":"Например: Админка","note.internalLink.urlPlaceholder":"verstak://secret/sec_...","note.preview.empty":"Пустая заметка. Переключитесь в режим редактора, чтобы начать писать.","note.preview.error":"Ошибка рендеринга markdown","link.label":"Текст ссылки","link.url":"URL или verstak:// ссылка","link.urlPlaceholder":"https://... или verstak://secret/sec_...","link.insert":"Вставить","file.addFile":"+ Добавить файл","file.addFolder":"+ Добавить папку","file.newFile":"+ Новый файл","file.addFileSimple":"Добавить файл","file.addFolderSimple":"Добавить папку","file.noFiles":"В этой папке пока нет файлов","file.noFilesCase":"В этом проекте пока нет файлов","file.hint":"Добавьте файл или папку, чтобы сохранить материалы проекта.","file.root":"Файлы","file.preview":"Предпросмотр","file.openExternal":"Открыть во внешней программе","file.openFolder":"Открыть папку","file.showInExplorer":"Показать в проводнике","file.more":"Ещё","file.delete":"Удалить","file.ariaFolder":"Папка","file.ariaFile":"Файл","file.scanning":"Сканирование...","file.pickSingle":"Выберите файл","file.pickMultiple":"Выберите файлы","file.pickDirectory":"Выберите папку","file.importTitle":"Добавить в","file.importFiles":"Файлов:","file.importFolders":"Папок:","file.importSize":"Размер:","file.importCopy":"Скопировать","file.importLink":"Привязать","file.selectCaseFirst":"Сначала выберите дело для добавления файлов","worklog.title":"Журнал","worklog.whatDone":"Что сделано","worklog.minutes":"Мин","worklog.min":"мин","worklog.log":"Записать","worklog.addEntry":"Добавить запись","worklog.acceptSuggestion":"Принять предложение","worklog.editEntry":"Редактировать запись","worklog.deleteEntry":"Удалить запись","worklog.deleteConfirm":"Удалить эту запись работы? Связанные события останутся в активности, но связь с записью будет удалена.","worklog.date":"Дата","worklog.empty":"Записей работы пока нет","worklog.details":"Детали","worklog.source":"Источник","worklog.sourceSuggestion":"Из предложения","worklog.sourceSuggestionNoEvents":"Из предложения, но связанные события отсутствуют","worklog.sourceManual":"Ручная запись","worklog.sourceUnknown":"Источник неизвестен","worklog.suggestions":"Предложения на сегодня","worklog.apply":"Применить","sync.title":"Синхронизация","sync.settings":"Настройки синхронизации","sync.status":"Статус","sync.server":"Сервер","sync.device":"Устройство","sync.deviceId":"ID устройства","sync.unpushed":"Неотправлено","sync.lastSync":"Последняя синх.","sync.revoked":"Отозвано","sync.connected":"Подключено","sync.notConnected":"Не подключено","sync.disabled":"Отключена","sync.serverUrl":"URL сервера","sync.serverUrlPlaceholder":"https://example.com:47732","sync.username":"Логин","sync.usernamePlaceholder":"username","sync.password":"Пароль","sync.passwordPlaceholder":"password","sync.interval":"Автосинхронизация (мин)","sync.saveInterval":"Сохранить интервал","sync.syncNow":"Синхронизировать","sync.disconnect":"Отключиться","sync.connect":"Подключиться","sync.test":"Проверить","sync.settingsSaved":"интервал сохранён","today.title":"Сегодня","today.changedCases":"Изменён сегодня","today.timeline":"Лента за сегодня","today.empty":"Сегодня пока тихо","today.emptyHint":"Здесь появятся дела, заметки, файлы и действия, с которыми вы работали сегодня.","today.plural.case_one":"дело","today.plural.case_few":"дела","today.plural.case_many":"дел","today.plural.note_one":"заметка","today.plural.note_few":"заметки","today.plural.note_many":"заметок","today.plural.file_one":"файл","today.plural.file_few":"файла","today.plural.file_many":"файлов","today.plural.event_one":"событие","today.plural.event_few":"события","today.plural.event_many":"событий","today.feed":"Лента","today.suggestionsTab":"Предложения","today.inProgress":"В работе","today.captured":"Захвачено","today.feedEmpty":"Сегодня событий нет","today.inProgressEmpty":"Сегодня ничего не изменяли","today.capturedEmpty":"Сегодня ничего не захвачено","today.feedHint":"События за сегодня: изменения файлов, заметок, действий и другие события.","today.sortByTime":"по времени","today.sortByName":"по имени","today.sortByType":"по типу","today.sortAsc":"по возрастанию","today.sortDesc":"по убыванию","journal.title":"Журнал работы","journal.worklogTab":"Журнал работы","journal.empty":"Нет записей за выбранный период","journal.dateFrom":"От","journal.dateTo":"До","journal.filter":"Фильтр","journal.total":"Всего","journal.exportCSV":"CSV","journal.exportMarkdown":"Markdown","journal.billable":"К оплате","journal.billableYes":"К оплате","journal.billableNo":"Не к оплате","journal.billableHint":"К оплате — можно включать в счёт клиенту","journal.approx":"Тип времени","journal.approxExact":"Точное","journal.approxEstimated":"Оценочное","journal.approxHint":"Оценочное — время предложено системой или введено как примерное","journal.includeChildrenDisabledHint":"Работает только при выбранном деле/клиенте/проекте","journal.node":"Дело","journal.path":"Путь","journal.byDay":"По дням","journal.byNode":"По делам","journal.includeChildren":"Учитывать вложенные дела","journal.nodeSearch":"Поиск дела...","journal.relatedEvents":"Связанные события","journal.filterHeading":"Фильтры","journal.exportHeading":"Экспорт отчёта","journal.reset":"Сбросить","suggest.title":"Предложения на сегодня","suggest.apply":"Записать","suggest.dismiss":"Скрыть","suggest.open":"Открыть","suggest.confidence.low":"Низкая уверенность","suggest.confidence.medium":"Средняя уверенность","suggest.confidence.high":"Высокая уверенность","suggest.minutes":"мин","suggest.edit":"Изменить","suggest.noSuggestions":"Нет предложений для журнала","suggest.detectedEvents":"Что обнаружено","activity.title":"Активность","activity.empty":"Активность пока не зафиксирована","activity.perCaseEmpty":"Активность пока не зафиксирована","overview.type":"Тип","overview.section":"Раздел","overview.created":"Создано","overview.newNote":"Новая заметка","overview.addFile":"Добавить файл","overview.addAction":"Добавить действие","overview.logTime":"Записать время","overview.recentNotes":"Последние заметки","overview.recentEntries":"Последние записи","rename.title":"Переименовать","rename.emptyError":"Имя не может быть пустым","rename.invalidError":"Недопустимое имя","delete.confirmTitle":"Удаление","delete.confirmMessage":"Удалить","delete.folder":"папку","delete.file":"файл","template.optionNone":"Пустое дело","template.optional":"Шаблон (опционально)","template.none.desc":"Без шаблона, простой узел-контейнер","template.folder":"Папка","template.folder.desc":"Папка для группировки элементов внутри рабочего пространства","template.project":"Проект","template.project.desc":"Отдельный проект или задача с файлами, заметками и журналом","template.client":"Клиент","template.client.desc":"Организация или человек, для которых ведутся работы","template.document":"Документ","template.document.desc":"Документ с описанием, заметками и файлами","template.recipe":"Рецепт","template.recipe.desc":"Повторяемая процедура или инструкция","template.note":"Заметка","template.file":"Файл","template.select":"Выберите тип","mime.jpeg":"Изображение JPEG","mime.png":"Изображение PNG","mime.gif":"Изображение GIF","mime.webp":"Изображение WebP","mime.svg":"Изображение SVG","mime.bmp":"Изображение BMP","mime.tiff":"Изображение TIFF","mime.avif":"Изображение AVIF","mime.pdf":"PDF документ","mime.word":"Документ Word","mime.excel":"Таблица Excel","mime.ppt":"Презентация PowerPoint","mime.zip":"ZIP архив","mime.gzip":"GZIP архив","mime.tar":"TAR архив","mime.sevenz":"7z архив","mime.rar":"RAR архив","mime.text":"Текстовый файл","mime.html":"HTML файл","mime.css":"CSS файл","mime.js":"JavaScript файл","mime.json":"JSON файл","mime.xml":"XML файл","mime.yaml":"YAML файл","mime.binary":"Бинарный файл","mime.executable":"Исполняемый файл","mime.folder":"Папка","mime.unknown":"Неизвестно","mime.file":"Файл","error.nameEmpty":"Имя не может быть пустым","error.nameInvalid":"Недопустимое имя","error.selectCaseFirst":"Сначала выберите дело","error.vaultNotOpen":"Хранилище не открыто","delete.files":"файлов ({count})","file.namePrompt":"Введите имя файла:","file.pdfUnavailable":"Предпросмотр PDF недоступен.","file.previewUnavailable":"Предпросмотр недоступен для этого типа файлов.","case.new":"Новое дело","case.namePlaceholder":"Название дела","settings.title":"Настройки","settings.general":"Общие","settings.generalDesc":"Основные настройки интерфейса.","settings.workspace":"Рабочее пространство","settings.workspaceDesc":"Управление хранилищем данных.","settings.appearance":"Внешний вид","settings.localization":"Локализация","settings.templates":"Шаблоны","settings.plugins":"Плагины","settings.files":"Файлы","settings.activity":"Активность","settings.sync":"Синхронизация","settings.backup":"Резервные копии","settings.close":"Закрыть настройки","settings.noPlugins":"Плагины пока не установлены.","settings.openPluginsDir":"Открыть папку plugins","settings.activityStub":"Здесь будут настройки отслеживания активности.","settings.backupStub":"Здесь будут настройки резервного копирования.","settings.theme":"Тема интерфейса","settings.themeSystem":"Системная","settings.themeLight":"Светлая","settings.themeDark":"Тёмная","settings.language":"Язык интерфейса","settings.langRu":"Русский","settings.langEn":"Английский","settings.langSoon":"будет доступно позже","settings.save":"Сохранить настройки","settings.saved":"Настройки сохранены","settings.vaultPath":"Путь к рабочему пространству","settings.noVaultInfo":"Нет информации о хранилище.","settings.vaultInfo":"Информация о рабочем пространстве","settings.openVault":"Открыть папку vault","settings.changeVault":"Изменить путь","settings.checkIntegrity":"Проверить целостность","settings.templatesDesc":"Включите или выключите шаблоны создания элементов.","settings.templateEnabled":"Включён","settings.templateDisabled":"Выключен","settings.filesStub":"Здесь будут настройки файлового хранилища.","settings.syncEnabled":"Синхронизация включена","settings.syncDisabled":"Синхронизация отключена","settings.syncDesc":"Настройте подключение к серверу синхронизации.","settings.serverUrl":"URL сервера","settings.deviceName":"Имя устройства","settings.deviceId":"ID устройства","settings.lastSync":"Последняя синхронизация","settings.lastError":"Последняя ошибка","settings.pendingChanges":"Ожидающие изменения","settings.checkConnection":"Проверить подключение","settings.syncNow":"Синхронизировать сейчас","settings.reconnect":"Переподключить","settings.disconnect":"Отключить устройство","settings.resetKey":"Сбросить ключ","settings.confirmDisconnect":"Вы уверены, что хотите отключить устройство?","settings.confirmDisconnectDesc":"Синхронизация будет остановлена. Для повторного подключения потребуется логин и пароль.","settings.confirmResetKey":"Сбросить ключ синхронизации?","settings.confirmResetKeyDesc":"Текущий ключ устройства будет удалён. Потребуется переподключение.","settings.connected":"Подключено","settings.disconnected":"Не подключено","settings.notConfigured":"Не настроено","settings.error":"Ошибка","settings.revoked":"Отозвано","settings.status":"Статус","firstrun.title":"Добро пожаловать в Верстак","firstrun.desc":"Верстак хранит данные в локальном рабочем пространстве — vault.","firstrun.pathLabel":"Путь к vault","firstrun.defaultPath":"Путь по умолчанию","firstrun.browse":"Выбрать папку","firstrun.create":"Создать рабочее пространство","firstrun.quit":"Выйти","firstrun.pathExists":"Папка существует. Будет создан новый vault.","firstrun.pathHasVault":"Найден существующий vault. Будет подключён.","firstrun.pathNew":"Путь не существует. Будет создан новый vault.","firstrun.errorNoWrite":"Нет прав на запись в выбранную папку.","firstrun.creating":"Создание рабочего пространства...","firstrun.created":"Рабочее пространство создано!","recovery.title":"Рабочее пространство не найдено","recovery.expected":"Ожидался путь","recovery.choose":"Выбрать другой vault","recovery.create":"Создать новый vault","recovery.settings":"Открыть настройки","recovery.quit":"Выйти","recovery.createConfirm":"Будет создано новое пустое рабочее пространство. Старый путь в настройках будет заменён.","recovery.createConfirmTitle":"Создать новое рабочее пространство?","sync.status.connected":"Синхронизация доступна","sync.status.disconnected":"Сервер недоступен","sync.status.disabled":"Синхронизация не настроена","sync.status.syncing":"Синхронизация...","sync.status.error":"Ошибка синхронизации","sync.changes":"изменений","sync.details":"Подробнее","sync.configure":"Настроить","sync.retry":"Повторить","sync.run":"Синхронизировать","sync.running":"Синхронизация...","sync.conflictsCount":"Конфликты: {count}","sync.applyErrorsCount":"Ошибки применения: {count}","sync.pushedPulled":"Отправлено: {pushed}, получено: {pulled}","error.generic":"Произошла ошибка","error.invalidCredentials":"Неверный логин или пароль","error.accountBlocked":"Аккаунт заблокирован","error.emailNotConfirmed":"Email не подтверждён","error.tokenInvalid":"Неверный или просроченный токен","error.tokenExpired":"Срок действия токена истёк"},Rg={"nav.today":"Today","nav.inbox":"Inbox","nav.trash":"Trash","nav.activity":"Activity","nav.journal":"Journal","nav.clients":"Clients","nav.projects":"Projects","nav.recipes":"Recipes","nav.documents":"Documents","nav.archive":"Archive","nav.sections":"Sections","nav.cases":"Cases","nav.noCases":"No cases","nav.sync":"Sync","nav.syncSettings":"Sync settings","nav.syncNow":"Sync now","nav.selectPrompt":"Select a section or case","nav.brand":"Verstak","nav.system":"System","nav.workspace":"Workspace","nav.noNodes":"No nodes","nav.openFolder":"Open folder","nav.createInside":"Create inside","nav.createNode":"Create element","nav.moveToRoot":"Move to root","inbox.subtitle":"Captured materials that still need to be assigned to cases","inbox.sortByDate":"by date","inbox.sortByName":"by name","inbox.sortByType":"by type","inbox.sortAsc":"ascending","inbox.sortDesc":"descending","inbox.groupByContext":"Group by capture location","inbox.noContext":"No capture location","inbox.empty":"No unprocessed items","inbox.pasteClipboard":"Paste from clipboard","inbox.captured":"Added","inbox.clipboardEmpty":"Clipboard is empty","inbox.clipboardUnavailable":"Clipboard is unavailable","inbox.assign":"Assign","inbox.keepHere":"Attach at captured location","inbox.localEmpty":"No unprocessed materials for this case","inbox.capturedIn":"Captured in","inbox.suggestedTarget":"Target","inbox.assignTitle":"Assign material","inbox.assignTarget":"Case","inbox.assignSearchPlaceholder":"Find case","inbox.assignSearchHint":"Start typing a Case name","inbox.deleteTitle":"Delete material","inbox.deleteConfirm":'Delete "{title}" from inbox?',"capture.kind.text":"Text","capture.kind.url":"Link","capture.kind.file":"File","capture.kind.folder":"Folder","capture.kind.image":"Image","capture.source.clipboard":"Clipboard","capture.source.clipboard_button":"Clipboard button","capture.source.drop":"Drop","capture.source.paste":"Paste","capture.source.browser":"Browser","capture.source.manual":"Manual","capture.dropOverlayNode":"Will be added to Inbox for: {title}","capture.dropOverlayGlobal":"Will be added to global Inbox","trash.openFolder":"Open trash folder","trash.empty":"Trash is empty","trash.emptyTrash":"Empty trash","trash.restore":"Restore","trash.deletedNodes":"Deleted items","tab.overview":"Overview","tab.notes":"Notes","tab.files":"Files","tab.inbox":"Inbox","tab.links":"Links","tab.actions":"Actions","tab.worklog":"Work Log","tab.activity":"Activity","common.save":"Save","common.cancel":"Cancel","common.delete":"Delete","common.rename":"Rename","common.close":"Close","common.create":"Create","common.confirm":"Confirm","common.back":"← Back","common.backLabel":"Back","common.loading":"Loading...","common.error":"Error:","common.yes":"Yes","common.ok":"OK","common.copy":"Copy","common.cut":"Cut","common.paste":"Paste","common.duplicate":"Duplicate","common.run":"Run","common.test":"Test","common.all":"All","common.open":"Open","common.no":"No","common.date":"Date","common.search":"Search","common.testAgain":"Check","common.connect":"Connect","common.disconnect":"Disconnect","common.settings":"Settings","common.name":"Name","common.type":"Type","common.section":"Section","common.created":"Created","common.empty":"None","common.newName":"New name","search.placeholder":"Search Verstak...","search.noResults":"No results found","welcome.title":"Verstak","welcome.selectSection":"Select a section in the sidebar.","welcome.createCase":"Or create a new case with the + button.","welcome.addCase":"Add case","event.noteCreated":"Note created","event.noteUpdated":"Note updated","event.fileAdded":"File added","event.fileDeleted":"File deleted","event.fileRenamed":"File renamed","event.fileCopied":"File copied","event.fileMoved":"File moved","event.folderAdded":"Folder added","event.folderDeleted":"Folder deleted","event.folderRenamed":"Folder renamed","event.caseCreated":"Case created","event.caseUpdated":"Case updated","event.noteDeleted":"Note deleted","event.folderMoved":"Folder moved","event.nodeDeleted":"Node deleted","event.actionCreated":"Action created","event.actionDone":"Action completed","event.worklogAdded":"Time entry added","kind.project":"Project","kind.client":"Client","kind.document":"Document","kind.recipe":"Recipe","kind.folder":"Folder","kind.note":"Note","kind.file":"File","kind.archive":"Archive","kind.case":"Case","kind.link":"Link","kind.action":"Action","links.empty":"No links yet","links.editTitle":"Edit link","links.note":"Note","links.copyUrl":"Copy URL","links.copied":"URL copied","links.copyUnavailable":"Could not copy URL","links.deleteTitle":"Delete link","links.deleteConfirm":'Delete link "{title}"?',"action.openUrl":"Open URL","action.openFile":"Open file","action.openFolder":"Open folder","action.runCommand":"Run command","action.runScript":"Run script","action.openTerminal":"Open terminal","action.launchApp":"Launch app","action.addAction":"+ Add action","action.newAction":"New action","action.noActions":"No actions yet","action.run":"Run","action.dataUrl":"URL","action.dataPath":"Path","action.dataCommand":"Command","action.urlPlaceholder":"https://example.com","action.pathPlaceholder":"/path/to/file","action.commandPlaceholder":"command","action.namePlaceholder":"Example: Open website","note.add":"+ Add note","note.new":"New note","note.title":"Note title","note.noNotes":"No notes","note.createFirst":"Create the first note for this case.","note.placeholder":"Start writing...","note.unsavedTitle":"Unsaved changes","note.unsavedMessage":"Close the editor? All unsaved changes will be lost.","note.unsavedClose":"Close","note.mode.edit":"Edit","note.mode.preview":"Preview","note.mode.split":"Split","note.toolbar.bold":"Bold (Ctrl+B)","note.toolbar.italic":"Italic (Ctrl+I)","note.toolbar.heading":"Heading","note.toolbar.link":"Link","note.toolbar.code":"Code","note.toolbar.codeBlock":"Code block","note.toolbar.bulletList":"Bullet list","note.toolbar.numberedList":"Numbered list","note.toolbar.checkbox":"Checkbox","note.toolbar.quote":"Quote","note.toolbar.internalLink":"Verstak internal link","note.internal.secretNotImplemented":"Secrets vault is not yet implemented","note.internal.caseNotImplemented":"Case navigation is not yet implemented","note.internal.noteNotImplemented":"Note navigation is not yet implemented","note.internal.fileNotImplemented":"File navigation is not yet implemented","note.rename":"Rename note","note.deleteConfirm":'Delete note "{title}"?',"note.renameError":"Failed to rename note","note.internalLink.title":"Insert internal link","note.internalLink.label":"Link text","note.internalLink.url":"Link address","note.internalLink.labelPlaceholder":"e.g. Admin panel","note.internalLink.urlPlaceholder":"verstak://secret/sec_...","note.preview.empty":"Empty note. Switch to edit mode to start writing.","note.preview.error":"Markdown render error","link.label":"Link text","link.url":"URL or verstak:// link","link.urlPlaceholder":"https://... or verstak://secret/sec_...","link.insert":"Insert","file.addFile":"+ Add file","file.addFolder":"+ Add folder","file.newFile":"+ New file","file.addFileSimple":"Add file","file.addFolderSimple":"Add folder","file.noFiles":"No files in this folder yet","file.noFilesCase":"No files in this project yet","file.hint":"Add a file or folder to store project materials.","file.root":"Files","file.preview":"Preview","file.openExternal":"Open in external program","file.openFolder":"Open folder","file.showInExplorer":"Show in explorer","file.more":"More","file.delete":"Delete","file.ariaFolder":"Folder","file.ariaFile":"File","file.scanning":"Scanning...","file.pickSingle":"Select file","file.pickMultiple":"Select files","file.pickDirectory":"Select folder","file.importTitle":"Add to","file.importFiles":"Files:","file.importFolders":"Folders:","file.importSize":"Size:","file.importCopy":"Copy","file.importLink":"Link","file.selectCaseFirst":"Select a case before adding files","worklog.title":"Work Log","worklog.whatDone":"What was done","worklog.minutes":"Min","worklog.min":"min","worklog.log":"Log","worklog.addEntry":"Add entry","worklog.acceptSuggestion":"Accept suggestion","worklog.editEntry":"Edit entry","worklog.deleteEntry":"Delete entry","worklog.deleteConfirm":"Delete this work entry? Related events stay in activity, but their link to this entry will be removed.","worklog.date":"Date","worklog.empty":"No work logged yet","worklog.details":"Details","worklog.source":"Source","worklog.sourceSuggestion":"From suggestion","worklog.sourceSuggestionNoEvents":"From suggestion, but related events missing","worklog.sourceManual":"Manual entry","worklog.sourceUnknown":"Unknown source","worklog.suggestions":"Suggestions for today","worklog.apply":"Apply","sync.title":"Sync","sync.settings":"Sync settings","sync.status":"Status","sync.server":"Server","sync.device":"Device","sync.deviceId":"Device ID","sync.unpushed":"Unpushed","sync.lastSync":"Last sync","sync.revoked":"Revoked","sync.connected":"Connected","sync.notConnected":"Not connected","sync.disabled":"Disabled","sync.serverUrl":"Server URL","sync.serverUrlPlaceholder":"https://example.com:47732","sync.username":"Username","sync.usernamePlaceholder":"username","sync.password":"Password","sync.passwordPlaceholder":"password","sync.interval":"Auto sync (min)","sync.saveInterval":"Save interval","sync.syncNow":"Sync now","sync.disconnect":"Disconnect","sync.connect":"Connect","sync.test":"Check","sync.settingsSaved":"interval saved","today.title":"Today","today.changedCases":"Changed today","today.timeline":"Timeline for today","today.empty":"Nothing happened today yet","today.emptyHint":"Cases, notes, files, and actions you worked with today will appear here.","today.plural.case_one":"case","today.plural.case_few":"cases","today.plural.case_many":"cases","today.plural.note_one":"note","today.plural.note_few":"notes","today.plural.note_many":"notes","today.plural.file_one":"file","today.plural.file_few":"files","today.plural.file_many":"files","today.plural.event_one":"event","today.plural.event_few":"events","today.plural.event_many":"events","today.feed":"Feed","today.suggestionsTab":"Suggestions","today.inProgress":"In Progress","today.captured":"Captured","today.feedEmpty":"No events today","today.inProgressEmpty":"Nothing modified today","today.capturedEmpty":"Nothing captured today","today.feedHint":"Today's events: file changes, notes, actions and other events.","today.sortByTime":"by time","today.sortByName":"by name","today.sortByType":"by type","today.sortAsc":"ascending","today.sortDesc":"descending","journal.title":"Work Log","journal.worklogTab":"Work Log","journal.empty":"No entries for the selected period","journal.dateFrom":"From","journal.dateTo":"To","journal.filter":"Filter","journal.total":"Total","journal.exportCSV":"CSV","journal.exportMarkdown":"Markdown","journal.billable":"Billable","journal.billableYes":"Billable","journal.billableNo":"Not billable","journal.billableHint":"Billable — can be included in client invoice","journal.approx":"Time type","journal.approxExact":"Exact","journal.approxEstimated":"Estimated","journal.approxHint":"Estimated — time suggested by the system or entered as approximate","journal.includeChildrenDisabledHint":"Only works when a case/client/project is selected","journal.node":"Case","journal.path":"Path","journal.byDay":"By day","journal.byNode":"By case","journal.includeChildren":"Include subtasks","journal.nodeSearch":"Search case...","journal.relatedEvents":"Related events","journal.filterHeading":"Filters","journal.exportHeading":"Export Report","journal.reset":"Reset","suggest.title":"Suggestions","suggest.apply":"Log","suggest.dismiss":"Dismiss","suggest.open":"Open","suggest.confidence.low":"Low confidence","suggest.confidence.medium":"Medium confidence","suggest.confidence.high":"High confidence","suggest.minutes":"min","suggest.edit":"Edit","suggest.noSuggestions":"No suggestions","suggest.detectedEvents":"What was detected","activity.title":"Activity","activity.empty":"No activity recorded yet","activity.perCaseEmpty":"No activity recorded yet","overview.type":"Type","overview.section":"Section","overview.created":"Created","overview.newNote":"New note","overview.addFile":"Add file","overview.addAction":"Add action","overview.logTime":"Log time","overview.recentNotes":"Recent notes","overview.recentEntries":"Recent entries","rename.title":"Rename","rename.emptyError":"Name cannot be empty","rename.invalidError":"Invalid name","delete.confirmTitle":"Delete","delete.confirmMessage":"Delete","delete.folder":"folder","delete.file":"file","template.optionNone":"Empty case","template.optional":"Template (optional)","template.none.desc":"No template, simple container node","template.folder":"Folder","template.folder.desc":"A folder to group items inside a workspace","template.project":"Project","template.project.desc":"A distinct project or task with files, notes and work log","template.client":"Client","template.client.desc":"An organization or person for whom work is performed","template.document":"Document","template.document.desc":"A document with description, notes and files","template.recipe":"Recipe","template.recipe.desc":"A repeatable procedure or instruction","template.note":"Note","template.file":"File","template.select":"Select type","mime.jpeg":"JPEG image","mime.png":"PNG image","mime.gif":"GIF image","mime.webp":"WebP image","mime.svg":"SVG image","mime.bmp":"BMP image","mime.tiff":"TIFF image","mime.avif":"AVIF image","mime.pdf":"PDF document","mime.word":"Word document","mime.excel":"Excel spreadsheet","mime.ppt":"PowerPoint presentation","mime.zip":"ZIP archive","mime.gzip":"GZIP archive","mime.tar":"TAR archive","mime.sevenz":"7z archive","mime.rar":"RAR archive","mime.text":"Text file","mime.html":"HTML file","mime.css":"CSS file","mime.js":"JavaScript file","mime.json":"JSON file","mime.xml":"XML file","mime.yaml":"YAML file","mime.binary":"Binary file","mime.executable":"Executable file","mime.folder":"Folder","mime.unknown":"Unknown","mime.file":"File","error.nameEmpty":"Name cannot be empty","error.nameInvalid":"Invalid name","error.selectCaseFirst":"Select a case first","error.vaultNotOpen":"Vault not open","delete.files":"files ({count})","file.namePrompt":"Enter file name:","file.pdfUnavailable":"PDF preview is unavailable.","file.previewUnavailable":"Preview is unavailable for this file type.","case.new":"New case","case.namePlaceholder":"Case name","settings.title":"Settings","settings.general":"General","settings.generalDesc":"Basic interface settings.","settings.workspace":"Workspace","settings.workspaceDesc":"Manage data storage.","settings.appearance":"Appearance","settings.localization":"Localization","settings.templates":"Templates","settings.plugins":"Plugins","settings.files":"Files","settings.activity":"Activity","settings.sync":"Sync","settings.backup":"Backups","settings.close":"Close settings","settings.noPlugins":"No plugins installed yet.","settings.openPluginsDir":"Open plugins folder","settings.activityStub":"Activity tracking settings will be here.","settings.backupStub":"Backup settings will be here.","settings.theme":"Interface theme","settings.themeSystem":"System","settings.themeLight":"Light","settings.themeDark":"Dark","settings.language":"Interface language","settings.langRu":"Russian","settings.langEn":"English","settings.langSoon":"coming soon","settings.save":"Save settings","settings.saved":"Settings saved","settings.vaultPath":"Workspace path","settings.noVaultInfo":"No workspace information.","settings.vaultInfo":"Workspace information","settings.openVault":"Open vault folder","settings.changeVault":"Change path","settings.checkIntegrity":"Check integrity","settings.templatesDesc":"Enable or disable templates for creating items.","settings.templateEnabled":"Enabled","settings.templateDisabled":"Disabled","settings.filesStub":"File storage settings will be here.","settings.syncEnabled":"Sync enabled","settings.syncDisabled":"Sync disabled","settings.syncDesc":"Configure connection to the sync server.","settings.serverUrl":"Server URL","settings.deviceName":"Device name","settings.deviceId":"Device ID","settings.lastSync":"Last sync","settings.lastError":"Last error","settings.pendingChanges":"Pending changes","settings.checkConnection":"Check connection","settings.syncNow":"Sync now","settings.reconnect":"Reconnect","settings.disconnect":"Disconnect device","settings.resetKey":"Reset key","settings.confirmDisconnect":"Are you sure you want to disconnect this device?","settings.confirmDisconnectDesc":"Sync will stop. Reconnecting will require username and password.","settings.confirmResetKey":"Reset sync key?","settings.confirmResetKeyDesc":"The current device key will be removed. Reconnection will be required.","settings.connected":"Connected","settings.disconnected":"Disconnected","settings.notConfigured":"Not configured","settings.error":"Error","settings.revoked":"Revoked","settings.status":"Status","firstrun.title":"Welcome to Verstak","firstrun.desc":"Verstak stores data in a local workspace called a vault.","firstrun.pathLabel":"Vault path","firstrun.defaultPath":"Default path","firstrun.browse":"Choose folder","firstrun.create":"Create workspace","firstrun.quit":"Quit","firstrun.pathExists":"The folder exists. A new vault will be created.","firstrun.pathHasVault":"Existing vault found. It will be connected.","firstrun.pathNew":"The path does not exist. A new vault will be created.","firstrun.errorNoWrite":"No write permission for the selected folder.","firstrun.creating":"Creating workspace...","firstrun.created":"Workspace created!","recovery.title":"Workspace not found","recovery.expected":"Expected path","recovery.choose":"Choose another vault","recovery.create":"Create new vault","recovery.settings":"Open settings","recovery.quit":"Quit","recovery.createConfirm":"A new empty workspace will be created. The old path in settings will be replaced.","recovery.createConfirmTitle":"Create a new workspace?","sync.status.connected":"Sync available","sync.status.disconnected":"Server unavailable","sync.status.disabled":"Sync is not configured","sync.status.syncing":"Syncing...","sync.status.error":"Sync error","sync.changes":"changes","sync.details":"Details","sync.configure":"Configure","sync.retry":"Retry","sync.run":"Sync","sync.running":"Syncing...","sync.conflictsCount":"Conflicts: {count}","sync.applyErrorsCount":"Apply errors: {count}","sync.pushedPulled":"Pushed: {pushed}, pulled: {pulled}","error.generic":"An error occurred","error.invalidCredentials":"Invalid username or password","error.accountBlocked":"Account blocked","error.emailNotConfirmed":"Email not confirmed","error.tokenInvalid":"Invalid or expired token","error.tokenExpired":"Token expired"},Wo={ru:Mg,en:Rg};let Go="ru";function v(n,e){var i;const t=Wo[Go];let l=t==null?void 0:t[n];if(l==null&&Go!=="ru"&&(l=(i=Wo.ru)==null?void 0:i[n]),l==null&&(l=n),e!=null)for(const[s,o]of Object.entries(e))l=l.replace(`{${s}}`,String(o));return l}function Ri(n){if(n==null||n<0)return"—";if(n===0)return"0 B";const e=["B","KB","MB","GB"],t=Math.min(Math.floor(Math.log(n)/Math.log(1024)),e.length-1),l=n/Math.pow(1024,t);return(t===0?l.toFixed(0):l.toFixed(1))+" "+e[t]}const Ts={"image/jpeg":v("mime.jpeg"),"image/png":v("mime.png"),"image/gif":v("mime.gif"),"image/webp":v("mime.webp"),"image/svg+xml":v("mime.svg"),"image/bmp":v("mime.bmp"),"image/tiff":v("mime.tiff"),"image/avif":v("mime.avif"),"application/pdf":v("mime.pdf"),"application/msword":v("mime.word"),"application/vnd.openxmlformats-officedocument.wordprocessingml.document":v("mime.word"),"application/vnd.ms-excel":v("mime.excel"),"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet":v("mime.excel"),"application/vnd.ms-powerpoint":v("mime.ppt"),"application/vnd.openxmlformats-officedocument.presentationml.presentation":v("mime.ppt"),"application/zip":v("mime.zip"),"application/gzip":v("mime.gzip"),"application/x-tar":v("mime.tar"),"application/x-7z-compressed":v("mime.sevenz"),"application/x-rar-compressed":v("mime.rar"),"text/plain":v("mime.text"),"text/html":v("mime.html"),"text/css":v("mime.css"),"text/javascript":v("mime.js"),"application/json":v("mime.json"),"application/xml":v("mime.xml"),"application/x-yaml":v("mime.yaml"),"application/octet-stream":v("mime.binary"),"application/x-msdos-program":v("mime.executable"),"inode/directory":v("mime.folder")};function Ko(n){return n?Ts[n]||n:v("mime.unknown")}function Lg(n){if(n.type==="folder")return v("mime.folder");const e=(n.mime||"").toLowerCase();if(Ts[e])return Ts[e];const l=(n.name||"").toLowerCase().split(".").pop();return l?l.toUpperCase():v("mime.file")}function jf(n){if(n.type==="folder")return"folder";const e=(n.mime||"").toLowerCase();if(e.startsWith("image/"))return"image";if(e.startsWith("video/"))return"video";if(e.startsWith("audio/"))return"audio";if(e.startsWith("text/"))return"text";if(e.includes("pdf"))return"pdf";if(e.includes("word")||e.includes("document"))return"document";if(e.includes("spreadsheet")||e.includes("excel"))return"spreadsheet";if(e.includes("presentation")||e.includes("powerpoint"))return"presentation";if(e.includes("zip")||e.includes("tar")||e.includes("gzip")||e.includes("rar")||e.includes("7z")||e.includes("compress"))return"archive";if(e.includes("json")||e.includes("xml")||e.includes("yaml")||e.includes("javascript")||e.includes("css")||e.includes("html"))return"code";const l=(n.name||"").toLowerCase().split(".").pop();return["js","ts","jsx","tsx","vue","svelte","py","rs","go","c","cpp","h","hpp","java","kt","swift","rb","php","pl","sh","bash","zsh","fish","yml","yaml","json","xml","toml","ini","cfg","conf","md","markdown","css","scss","less","sass","sql","graphql","proto","gradle","cmake","makefile","dockerfile","env","gitignore"].includes(l)?"code":"generic"}const Uf=["image/jpeg","image/png","image/gif","image/webp","image/bmp","image/tiff","image/avif","image/svg+xml"],Hf=["text/plain","text/html","text/css","text/javascript","application/json","application/xml","application/x-yaml","text/x-shellscript"],Wf=["txt","log","conf","ini","yaml","yml","json","xml","csv","sh","py","js","ts","css","html","md","markdown","cfg"],Gf=["jpg","jpeg","png","gif","webp","bmp","tiff","tif","avif","svg"];function Dg(n){const e=(n.mime||"").toLowerCase(),l=(n.name||"").toLowerCase().split(".").pop();return!!(Uf.includes(e)||Gf.includes(l)||e.includes("pdf")||Hf.includes(e)||Wf.includes(l))}function Kf(n){const e=(n.mime||"").toLowerCase(),l=(n.name||"").toLowerCase().split(".").pop();return Uf.includes(e)||Gf.includes(l)}function Vf(n){const e=(n.mime||"").toLowerCase(),l=(n.name||"").toLowerCase().split(".").pop();return Hf.includes(e)||Wf.includes(l)&&l!=="md"&&l!=="markdown"}function Zf(n){return(n.mime||"").toLowerCase().includes("pdf")}function Os(n){const e=(n.name||"").toLowerCase();return e.endsWith(".md")||e.endsWith(".markdown")}function Og(n){return Kf(n)||Zf(n)}function qg(n){return Vf(n)||Os(n)}const{window:Pg}=Rs;function zg(n){let e,t,l,i=Ri(n[0].size)+"",s;return{c(){e=f("span"),e.textContent="·",t=w(),l=f("span"),s=j(i),r(e,"class","meta-sep svelte-1skuef2")},m(o,c){C(o,e,c),C(o,t,c),C(o,l,c),a(l,s)},p(o,c){c[0]&1&&i!==(i=Ri(o[0].size)+"")&&Q(s,i)},d(o){o&&(S(e),S(t),S(l))}}}function Bg(n){let e,t,l,i,s;return{c(){e=f("button"),e.innerHTML='',t=w(),l=f("button"),l.innerHTML='',r(e,"class","action-btn svelte-1skuef2"),r(e,"title",v("file.openFolder")),r(e,"aria-label",v("file.openFolder")),r(l,"class","action-btn svelte-1skuef2"),r(l,"title",v("file.showInExplorer")),r(l,"aria-label",v("file.showInExplorer"))},m(o,c){C(o,e,c),C(o,t,c),C(o,l,c),i||(s=[O(e,"click",We(n[30])),O(l,"click",We(n[11]))],i=!0)},p:oe,d(o){o&&(S(e),S(t),S(l)),i=!1,Ce(s)}}}function Fg(n){let e,t,l,i,s,o,c;return{c(){e=f("button"),e.innerHTML='',t=w(),l=f("button"),l.innerHTML='',i=w(),s=f("button"),s.innerHTML='',r(e,"class","action-btn svelte-1skuef2"),r(e,"title",v("file.preview")),r(e,"aria-label",v("file.preview")),r(l,"class","action-btn svelte-1skuef2"),r(l,"title",v("file.openExternal")),r(l,"aria-label",v("file.openExternal")),r(s,"class","action-btn svelte-1skuef2"),r(s,"title",v("file.showInExplorer")),r(s,"aria-label",v("file.showInExplorer"))},m(u,d){C(u,e,d),C(u,t,d),C(u,l,d),C(u,i,d),C(u,s,d),o||(c=[O(e,"click",We(n[29])),O(l,"click",We(n[10])),O(s,"click",We(n[11]))],o=!0)},p:oe,d(u){u&&(S(e),S(t),S(l),S(i),S(s)),o=!1,Ce(c)}}}function Vo(n){let e,t,l,i,s,o,c,u,d=v("common.open")+"",p,h,m,g,b,k,y,E,T=v("file.openExternal")+"",N,A,I,R,M,D,z=v("file.showInExplorer")+"",U,H,B,W,G,V,F,L,q,P=v("common.rename")+"",X,Y,J,ee,ne,le,he,se=v("common.duplicate")+"",Be,Ke,Me,te,re,Ae,Fe,we,je,Qe=v("common.cut")+"",Ne,Ve,Ue,Se,He,Oe,Ge,qe=v("common.copy")+"",ue,be,x,ye,me,Ie,it,st,Ye,dt=v("common.delete")+"",Ze,pe,Pe;return{c(){e=f("div"),t=w(),l=f("div"),i=f("button"),s=ae("svg"),o=ae("path"),c=ae("circle"),u=w(),p=j(d),h=w(),m=f("button"),g=ae("svg"),b=ae("path"),k=ae("polyline"),y=ae("line"),E=w(),N=j(T),A=w(),I=f("button"),R=ae("svg"),M=ae("path"),D=w(),U=j(z),H=w(),B=f("div"),W=w(),G=f("button"),V=ae("svg"),F=ae("path"),L=ae("path"),q=w(),X=j(P),Y=w(),J=f("button"),ee=ae("svg"),ne=ae("rect"),le=ae("path"),he=w(),Be=j(se),Ke=w(),Me=f("button"),te=ae("svg"),re=ae("circle"),Ae=ae("circle"),Fe=ae("line"),we=ae("line"),je=w(),Ne=j(Qe),Ve=w(),Ue=f("button"),Se=ae("svg"),He=ae("rect"),Oe=ae("path"),Ge=w(),ue=j(qe),be=w(),x=f("div"),ye=w(),me=f("button"),Ie=ae("svg"),it=ae("polyline"),st=ae("path"),Ye=w(),Ze=j(dt),r(e,"class","menu-backdrop svelte-1skuef2"),r(e,"role","presentation"),r(o,"d","M1 12s4-8 11-8 11 8 11 8-4 8-11 8-11-8-11-8z"),r(c,"cx","12"),r(c,"cy","12"),r(c,"r","3"),r(s,"width","14"),r(s,"height","14"),r(s,"viewBox","0 0 24 24"),r(s,"fill","none"),r(s,"stroke","currentColor"),r(s,"stroke-width","2"),r(s,"stroke-linecap","round"),r(s,"stroke-linejoin","round"),r(i,"class","menu-item svelte-1skuef2"),r(i,"role","menuitem"),r(b,"d","M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6"),r(k,"points","15 3 21 3 21 9"),r(y,"x1","10"),r(y,"y1","14"),r(y,"x2","21"),r(y,"y2","3"),r(g,"width","14"),r(g,"height","14"),r(g,"viewBox","0 0 24 24"),r(g,"fill","none"),r(g,"stroke","currentColor"),r(g,"stroke-width","2"),r(g,"stroke-linecap","round"),r(g,"stroke-linejoin","round"),r(m,"class","menu-item svelte-1skuef2"),r(m,"role","menuitem"),r(M,"d","M22 19a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h5l2 3h9a2 2 0 0 1 2 2z"),r(R,"width","14"),r(R,"height","14"),r(R,"viewBox","0 0 24 24"),r(R,"fill","none"),r(R,"stroke","currentColor"),r(R,"stroke-width","2"),r(R,"stroke-linecap","round"),r(R,"stroke-linejoin","round"),r(I,"class","menu-item svelte-1skuef2"),r(I,"role","menuitem"),r(B,"class","menu-sep svelte-1skuef2"),r(F,"d","M12 20h9"),r(L,"d","M16.5 3.5a2.121 2.121 0 0 1 3 3L7 19l-4 1 1-4L16.5 3.5z"),r(V,"width","14"),r(V,"height","14"),r(V,"viewBox","0 0 24 24"),r(V,"fill","none"),r(V,"stroke","currentColor"),r(V,"stroke-width","2"),r(V,"stroke-linecap","round"),r(V,"stroke-linejoin","round"),r(G,"class","menu-item svelte-1skuef2"),r(G,"role","menuitem"),r(ne,"x","9"),r(ne,"y","9"),r(ne,"width","13"),r(ne,"height","13"),r(ne,"rx","2"),r(ne,"ry","2"),r(le,"d","M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1"),r(ee,"width","14"),r(ee,"height","14"),r(ee,"viewBox","0 0 24 24"),r(ee,"fill","none"),r(ee,"stroke","currentColor"),r(ee,"stroke-width","2"),r(ee,"stroke-linecap","round"),r(ee,"stroke-linejoin","round"),r(J,"class","menu-item svelte-1skuef2"),r(J,"role","menuitem"),r(re,"cx","6"),r(re,"cy","6"),r(re,"r","3"),r(Ae,"cx","6"),r(Ae,"cy","18"),r(Ae,"r","3"),r(Fe,"x1","20"),r(Fe,"y1","4"),r(Fe,"x2","8.12"),r(Fe,"y2","15.88"),r(we,"x1","8.12"),r(we,"y1","8.12"),r(we,"x2","20"),r(we,"y2","20"),r(te,"width","14"),r(te,"height","14"),r(te,"viewBox","0 0 24 24"),r(te,"fill","none"),r(te,"stroke","currentColor"),r(te,"stroke-width","2"),r(te,"stroke-linecap","round"),r(te,"stroke-linejoin","round"),r(Me,"class","menu-item svelte-1skuef2"),r(Me,"role","menuitem"),r(He,"x","9"),r(He,"y","9"),r(He,"width","13"),r(He,"height","13"),r(He,"rx","2"),r(He,"ry","2"),r(Oe,"d","M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1"),r(Se,"width","14"),r(Se,"height","14"),r(Se,"viewBox","0 0 24 24"),r(Se,"fill","none"),r(Se,"stroke","currentColor"),r(Se,"stroke-width","2"),r(Se,"stroke-linecap","round"),r(Se,"stroke-linejoin","round"),r(Ue,"class","menu-item svelte-1skuef2"),r(Ue,"role","menuitem"),r(x,"class","menu-sep svelte-1skuef2"),r(it,"points","3 6 5 6 21 6"),r(st,"d","M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6m3 0V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"),r(Ie,"width","14"),r(Ie,"height","14"),r(Ie,"viewBox","0 0 24 24"),r(Ie,"fill","none"),r(Ie,"stroke","currentColor"),r(Ie,"stroke-width","2"),r(Ie,"stroke-linecap","round"),r(Ie,"stroke-linejoin","round"),r(me,"class","menu-item menu-item-danger svelte-1skuef2"),r(me,"role","menuitem"),r(l,"class","menu svelte-1skuef2"),on(l,"left",n[3]+"px"),on(l,"top",n[4]+"px"),on(l,"position","fixed"),r(l,"role","menu"),r(l,"tabindex","-1")},m(ft,mt){C(ft,e,mt),C(ft,t,mt),C(ft,l,mt),a(l,i),a(i,s),a(s,o),a(s,c),a(i,u),a(i,p),a(l,h),a(l,m),a(m,g),a(g,b),a(g,k),a(g,y),a(m,E),a(m,N),a(l,A),a(l,I),a(I,R),a(R,M),a(I,D),a(I,U),a(l,H),a(l,B),a(l,W),a(l,G),a(G,V),a(V,F),a(V,L),a(G,q),a(G,X),a(l,Y),a(l,J),a(J,ee),a(ee,ne),a(ee,le),a(J,he),a(J,Be),a(l,Ke),a(l,Me),a(Me,te),a(te,re),a(te,Ae),a(te,Fe),a(te,we),a(Me,je),a(Me,Ne),a(l,Ve),a(l,Ue),a(Ue,Se),a(Se,He),a(Se,Oe),a(Ue,Ge),a(Ue,ue),a(l,be),a(l,x),a(l,ye),a(l,me),a(me,Ie),a(Ie,it),a(Ie,st),a(me,Ye),a(me,Ze),pe||(Pe=[O(e,"click",We(n[19])),O(i,"click",n[17]),O(m,"click",n[10]),O(I,"click",n[11]),O(G,"click",n[13]),O(J,"click",n[14]),O(Me,"click",n[15]),O(Ue,"click",n[16]),O(me,"click",n[12]),O(l,"click",We(n[28])),O(l,"keydown",n[31])],pe=!0)},p(ft,mt){mt[0]&8&&on(l,"left",ft[3]+"px"),mt[0]&16&&on(l,"top",ft[4]+"px")},d(ft){ft&&(S(e),S(t),S(l)),pe=!1,Ce(Pe)}}}function jg(n){let e,t,l,i,s,o,c=n[0].name+"",u,d,p,h,m,g,b,k,y,E,T,N,A,I,R,M,D,z,U,H,B,W;l=new Ff({props:{kind:n[6],size:22}});let G=!n[7]&&zg(n);function V(P,X){return P[7]?Bg:Fg}let L=V(n)(n),q=n[2]&&Vo(n);return{c(){e=f("div"),t=f("div"),xe(l.$$.fragment),i=w(),s=f("div"),o=f("div"),u=j(c),p=w(),h=f("div"),m=f("span"),m.textContent=`${n[8]}`,g=w(),G&&G.c(),b=w(),k=f("div"),L.c(),y=w(),E=f("button"),T=ae("svg"),N=ae("circle"),A=ae("circle"),I=ae("circle"),R=w(),M=f("button"),M.innerHTML='',z=w(),q&&q.c(),U=vt(),r(t,"class","file-row-icon svelte-1skuef2"),r(o,"class","file-row-name svelte-1skuef2"),r(o,"title",d=n[0].name),r(h,"class","file-row-meta svelte-1skuef2"),r(s,"class","file-row-body svelte-1skuef2"),r(N,"cx","12"),r(N,"cy","5"),r(N,"r","2"),r(A,"cx","12"),r(A,"cy","12"),r(A,"r","2"),r(I,"cx","12"),r(I,"cy","19"),r(I,"r","2"),r(T,"width","16"),r(T,"height","16"),r(T,"viewBox","0 0 24 24"),r(T,"fill","currentColor"),r(E,"class","action-btn svelte-1skuef2"),r(E,"title",v("file.more")),r(E,"aria-label",v("file.more")),r(E,"aria-expanded",n[2]),r(M,"class","action-btn action-btn-danger svelte-1skuef2"),r(M,"title",v("common.delete")),r(M,"aria-label",v("common.delete")),r(k,"class","file-row-actions svelte-1skuef2"),r(e,"class","file-row svelte-1skuef2"),r(e,"role","button"),r(e,"tabindex","0"),r(e,"draggable","true"),r(e,"aria-label",D=n[7]?v("file.ariaFolder")+" "+n[0].name:v("file.ariaFile")+" "+n[0].name),ce(e,"file-row--selected",n[1])},m(P,X){C(P,e,X),a(e,t),Xe(l,t,null),a(e,i),a(e,s),a(s,o),a(o,u),a(s,p),a(s,h),a(h,m),a(h,g),G&&G.m(h,null),a(e,b),a(e,k),L.m(k,null),a(k,y),a(k,E),a(E,T),a(T,N),a(T,A),a(T,I),a(k,R),a(k,M),C(P,z,X),q&&q.m(P,X),C(P,U,X),H=!0,B||(W=[O(Pg,"click",n[19]),O(E,"click",We(n[18])),O(M,"click",We(n[12])),O(e,"click",n[9]),O(e,"keydown",n[24]),O(e,"contextmenu",n[23]),O(e,"dragstart",n[20]),O(e,"dragover",n[21]),O(e,"drop",n[22])],B=!0)},p(P,X){(!H||X[0]&1)&&c!==(c=P[0].name+"")&&Q(u,c),(!H||X[0]&1&&d!==(d=P[0].name))&&r(o,"title",d),P[7]||G.p(P,X),L.p(P,X),(!H||X[0]&4)&&r(E,"aria-expanded",P[2]),(!H||X[0]&1&&D!==(D=P[7]?v("file.ariaFolder")+" "+P[0].name:v("file.ariaFile")+" "+P[0].name))&&r(e,"aria-label",D),(!H||X[0]&2)&&ce(e,"file-row--selected",P[1]),P[2]?q?q.p(P,X):(q=Vo(P),q.c(),q.m(U.parentNode,U)):q&&(q.d(1),q=null)},i(P){H||(ge(l.$$.fragment,P),H=!0)},o(P){ke(l.$$.fragment,P),H=!1},d(P){P&&(S(e),S(z),S(U)),Je(l),G&&G.d(),L.d(),q&&q.d(P),B=!1,Ce(W)}}}function Ug(n,e,t){let{item:l}=e,{selected:i=!1}=e,{onDragStart:s}=e,{onDragOver:o}=e,{onDrop:c}=e;const u=pn(),d=jf(l),p=l.type==="folder",h=Lg(l);let m=!1,g=0,b=0,k=null;function y(X){X.ctrlKey||X.metaKey?u("toggleSelect",l.id):X.shiftKey?u("rangeSelect",l.id):k?(clearTimeout(k),k=null,p?u("navigate",l.id):u("preview",l)):k=setTimeout(()=>{k=null,u("selectOne",l.id)},250)}function E(){u("openExternal",l.fileId)}function T(){t(2,m=!1),u("showInFolder",l.nodeId||l.id)}function N(){t(2,m=!1),u("delete",{id:l.id,type:l.type})}function A(){t(2,m=!1),u("rename",{id:l.id,name:l.name})}function I(){t(2,m=!1),u("duplicate",l.id)}function R(){t(2,m=!1),u("cut",l.id)}function M(){t(2,m=!1),u("copy",l.id)}function D(){t(2,m=!1),p?u("navigate",l.id):u("preview",l)}function z(){t(2,m=!m)}function U(){t(2,m=!1)}function H(X){s&&s(X,l.id)}function B(X){o&&p&&o(X,l.id)}function W(X){c&&p&&c(X,l.id)}function G(X){X.preventDefault(),t(3,g=Math.min(X.clientX,window.innerWidth-240)),t(4,b=Math.min(X.clientY,window.innerHeight-320)),t(2,m=!0)}function V(X){(X.key==="Enter"||X.key===" ")&&(X.preventDefault(),y(X))}function F(X){Ds.call(this,n,X)}const L=()=>u("preview",l),q=()=>u("navigate",l.id),P=X=>{X.key==="Escape"&&(X.stopPropagation(),U())};return n.$$set=X=>{"item"in X&&t(0,l=X.item),"selected"in X&&t(1,i=X.selected),"onDragStart"in X&&t(25,s=X.onDragStart),"onDragOver"in X&&t(26,o=X.onDragOver),"onDrop"in X&&t(27,c=X.onDrop)},[l,i,m,g,b,u,d,p,h,y,E,T,N,A,I,R,M,D,z,U,H,B,W,G,V,s,o,c,F,L,q,P]}class Hg extends ut{constructor(e){super(),ct(this,e,Ug,jg,at,{item:0,selected:1,onDragStart:25,onDragOver:26,onDrop:27},null,[-1,-1])}}function Zo(n,e,t){const l=n.slice();return l[4]=e[t],l[6]=t,l}function Wg(n){let e;return{c(){e=f("span"),e.textContent="/",r(e,"class","sep svelte-csi2lb")},m(t,l){C(t,e,l)},d(t){t&&S(e)}}}function Gg(n){let e,t=n[4].name+"",l,i,s;function o(){return n[2](n[6])}return{c(){e=f("button"),l=j(t),r(e,"class","crumb crumb--link svelte-csi2lb")},m(c,u){C(c,e,u),a(e,l),i||(s=O(e,"click",o),i=!0)},p(c,u){n=c,u&1&&t!==(t=n[4].name+"")&&Q(l,t)},d(c){c&&S(e),i=!1,s()}}}function Kg(n){let e,t=n[4].name+"",l;return{c(){e=f("span"),l=j(t),r(e,"class","crumb crumb--current svelte-csi2lb")},m(i,s){C(i,e,s),a(e,l)},p(i,s){s&1&&t!==(t=i[4].name+"")&&Q(l,t)},d(i){i&&S(e)}}}function Yo(n){let e,t,l=n[6]>0&&Wg();function i(c,u){return c[6]===c[0].length-1?Kg:Gg}let s=i(n),o=s(n);return{c(){l&&l.c(),e=w(),o.c(),t=vt()},m(c,u){l&&l.m(c,u),C(c,e,u),o.m(c,u),C(c,t,u)},p(c,u){s===(s=i(c))&&o?o.p(c,u):(o.d(1),o=s(c),o&&(o.c(),o.m(t.parentNode,t)))},d(c){c&&(S(e),S(t)),l&&l.d(c),o.d(c)}}}function Vg(n){let e,t=Te(n[0]),l=[];for(let i=0;is(c);return n.$$set=c=>{"crumbs"in c&&t(0,l=c.crumbs)},[l,s,o]}class Yf extends ut{constructor(e){super(),ct(this,e,Zg,Vg,at,{crumbs:0})}}function Yg(n){let e,t,l,i,s,o;return{c(){e=f("div"),t=f("p"),t.textContent=`${v("file.previewUnavailable")}`,l=w(),i=f("button"),i.textContent=`${v("file.openExternal")}`,r(i,"class","btn btn-sm svelte-1cw3u0m"),r(e,"class","preview-status svelte-1cw3u0m")},m(c,u){C(c,e,u),a(e,t),a(e,l),a(e,i),s||(o=O(i,"click",n[9]),s=!0)},p:oe,d(c){c&&S(e),s=!1,o()}}}function Xg(n){let e,t;function l(o,c){return c&2&&(e=null),e==null&&(e=!!(o[1]&&o[1].startsWith("data:"))),e?t_:e_}let i=l(n,-1),s=i(n);return{c(){s.c(),t=vt()},m(o,c){s.m(o,c),C(o,t,c)},p(o,c){i===(i=l(o,c))&&s?s.p(o,c):(s.d(1),s=i(o),s&&(s.c(),s.m(t.parentNode,t)))},d(o){o&&S(t),s.d(o)}}}function Jg(n){let e,t,l;return{c(){e=f("pre"),t=f("code"),l=j(n[1]),r(e,"class","preview-text svelte-1cw3u0m")},m(i,s){C(i,e,s),a(e,t),a(t,l)},p(i,s){s&2&&Q(l,i[1])},d(i){i&&S(e)}}}function Qg(n){let e,t,l,i;return{c(){e=f("div"),t=f("img"),Ol(t.src,l=n[1])||r(t,"src",l),r(t,"alt",i=n[0].name),r(t,"class","preview-image svelte-1cw3u0m"),r(e,"class","preview-image-container svelte-1cw3u0m")},m(s,o){C(s,e,o),a(e,t)},p(s,o){o&2&&!Ol(t.src,l=s[1])&&r(t,"src",l),o&1&&i!==(i=s[0].name)&&r(t,"alt",i)},d(s){s&&S(e)}}}function xg(n){let e,t,l,i,s,o,c;return{c(){e=f("div"),t=f("p"),l=j(n[3]),i=w(),s=f("button"),s.textContent=`${v("file.openExternal")}`,r(s,"class","btn btn-sm svelte-1cw3u0m"),r(e,"class","preview-status svelte-1cw3u0m")},m(u,d){C(u,e,d),a(e,t),a(t,l),a(e,i),a(e,s),o||(c=O(s,"click",n[9]),o=!0)},p(u,d){d&8&&Q(l,u[3])},d(u){u&&S(e),o=!1,c()}}}function $g(n){let e,t;return{c(){e=f("div"),t=f("p"),t.textContent=`${v("common.loading")}`,r(e,"class","preview-status svelte-1cw3u0m")},m(l,i){C(l,e,i),a(e,t)},p:oe,d(l){l&&S(e)}}}function e_(n){let e,t,l,i,s,o;return{c(){e=f("div"),t=f("p"),t.textContent=`${v("file.pdfUnavailable")}`,l=w(),i=f("button"),i.textContent=`${v("file.openExternal")}`,r(i,"class","btn btn-sm svelte-1cw3u0m"),r(e,"class","preview-status svelte-1cw3u0m")},m(c,u){C(c,e,u),a(e,t),a(e,l),a(e,i),s||(o=O(i,"click",n[9]),s=!0)},p:oe,d(c){c&&S(e),s=!1,o()}}}function t_(n){let e,t,l;return{c(){e=f("div"),t=f("embed"),Ol(t.src,l=n[1])||r(t,"src",l),r(t,"type","application/pdf"),r(t,"class","preview-pdf svelte-1cw3u0m"),r(e,"class","preview-pdf-container svelte-1cw3u0m")},m(i,s){C(i,e,s),a(e,t)},p(i,s){s&2&&!Ol(t.src,l=i[1])&&r(t,"src",l)},d(i){i&&S(e)}}}function n_(n){let e,t,l,i,s,o,c,u=n[0].name+"",d,p,h,m,g=Ri(n[0].size)+"",b,k,y=Ko(n[0].mime)+"",E,T,N,A,I,R,M,D,z,U,H;s=new Ff({props:{kind:n[8],size:18}});function B(V,F){return V[2]?$g:V[3]?xg:V[6]&&V[1]?Qg:V[5]&&V[1]?Jg:V[4]?Xg:Yg}let W=B(n),G=W(n);return{c(){e=f("div"),t=f("div"),l=f("header"),i=f("div"),xe(s.$$.fragment),o=w(),c=f("span"),d=j(u),h=w(),m=f("div"),b=j(g),k=j(" · "),E=j(y),T=w(),N=f("div"),A=f("button"),A.innerHTML='',I=w(),R=f("button"),R.innerHTML='',M=w(),D=f("div"),G.c(),r(c,"class","preview-name svelte-1cw3u0m"),r(c,"title",p=n[0].name),r(i,"class","preview-title svelte-1cw3u0m"),r(m,"class","preview-meta svelte-1cw3u0m"),r(A,"class","action-btn svelte-1cw3u0m"),r(A,"title",v("file.openExternal")),r(A,"aria-label",v("file.openExternal")),r(R,"class","action-btn action-btn-close svelte-1cw3u0m"),r(R,"title","Close"),r(R,"aria-label","Close preview"),r(N,"class","preview-actions svelte-1cw3u0m"),r(l,"class","preview-header svelte-1cw3u0m"),r(D,"class","preview-body svelte-1cw3u0m"),r(t,"class","modal svelte-1cw3u0m"),r(e,"class","overlay svelte-1cw3u0m"),r(e,"role","presentation")},m(V,F){C(V,e,F),a(e,t),a(t,l),a(l,i),Xe(s,i,null),a(i,o),a(i,c),a(c,d),a(l,h),a(l,m),a(m,b),a(m,k),a(m,E),a(l,T),a(l,N),a(N,A),a(N,I),a(N,R),a(t,M),a(t,D),G.m(D,null),z=!0,U||(H=[O(A,"click",n[9]),O(R,"click",n[10]),O(e,"click",Qt(n[11])),O(e,"keydown",n[12])],U=!0)},p(V,[F]){(!z||F&1)&&u!==(u=V[0].name+"")&&Q(d,u),(!z||F&1&&p!==(p=V[0].name))&&r(c,"title",p),(!z||F&1)&&g!==(g=Ri(V[0].size)+"")&&Q(b,g),(!z||F&1)&&y!==(y=Ko(V[0].mime)+"")&&Q(E,y),W===(W=B(V))&&G?G.p(V,F):(G.d(1),G=W(V),G&&(G.c(),G.m(D,null)))},i(V){z||(ge(s.$$.fragment,V),z=!0)},o(V){ke(s.$$.fragment,V),z=!1},d(V){V&&S(e),Je(s),G.d(),U=!1,Ce(H)}}}function l_(n,e,t){let l,i,s,{item:o}=e,{content:c=""}=e,{loading:u=!1}=e,{error:d=""}=e;const p=pn(),h=jf(o);function m(E){E.key==="Escape"&&p("close")}function g(){p("openExternal",o.fileId)}li(()=>{window.addEventListener("keydown",m)}),ii(()=>{window.removeEventListener("keydown",m)});const b=()=>p("close"),k=()=>p("close"),y=E=>{E.key==="Escape"&&(E.preventDefault(),p("close"))};return n.$$set=E=>{"item"in E&&t(0,o=E.item),"content"in E&&t(1,c=E.content),"loading"in E&&t(2,u=E.loading),"error"in E&&t(3,d=E.error)},n.$$.update=()=>{n.$$.dirty&3&&t(6,l=Kf(o)&&c&&c.startsWith("data:")),n.$$.dirty&1&&t(5,i=Vf(o)||Os(o)),n.$$.dirty&1&&t(4,s=Zf(o))},[o,c,u,d,s,i,l,p,h,g,b,k,y]}class Xf extends ut{constructor(e){super(),ct(this,e,l_,n_,at,{item:0,content:1,loading:2,error:3})}}function i_(n){let e,t,l,i,s,o,c,u,d,p,h,m,g,b,k,y,E;return{c(){e=f("div"),t=f("div"),l=f("h3"),i=j(n[0]),s=w(),o=f("p"),c=j(n[1]),u=w(),d=f("div"),p=f("button"),h=j(n[2]),g=w(),b=f("button"),k=j(n[3]),r(l,"class","svelte-1fv6yyk"),r(o,"class","message svelte-1fv6yyk"),r(p,"class",m="btn "+(n[4]?"btn-danger":"btn-primary")+" svelte-1fv6yyk"),r(b,"class","btn svelte-1fv6yyk"),r(d,"class","actions svelte-1fv6yyk"),r(t,"class","modal svelte-1fv6yyk"),r(e,"class","overlay svelte-1fv6yyk"),r(e,"role","presentation")},m(T,N){C(T,e,N),a(e,t),a(t,l),a(l,i),a(t,s),a(t,o),a(o,c),a(t,u),a(t,d),a(d,p),a(p,h),a(d,g),a(d,b),a(b,k),y||(E=[O(p,"click",n[6]),O(b,"click",n[7]),O(e,"click",Qt(n[8])),O(e,"keydown",n[9])],y=!0)},p(T,[N]){N&1&&Q(i,T[0]),N&2&&Q(c,T[1]),N&4&&Q(h,T[2]),N&16&&m!==(m="btn "+(T[4]?"btn-danger":"btn-primary")+" svelte-1fv6yyk")&&r(p,"class",m),N&8&&Q(k,T[3])},i:oe,o:oe,d(T){T&&S(e),y=!1,Ce(E)}}}function s_(n,e,t){let{title:l=v("common.confirm")}=e,{message:i=""}=e,{confirmText:s=v("common.delete")}=e,{cancelText:o=v("common.cancel")}=e,{danger:c=!1}=e;const u=pn(),d=()=>u("confirm"),p=()=>u("cancel"),h=()=>u("cancel"),m=g=>{g.key==="Escape"&&(g.preventDefault(),u("cancel"))};return n.$$set=g=>{"title"in g&&t(0,l=g.title),"message"in g&&t(1,i=g.message),"confirmText"in g&&t(2,s=g.confirmText),"cancelText"in g&&t(3,o=g.cancelText),"danger"in g&&t(4,c=g.danger)},[l,i,s,o,c,u,d,p,h,m]}class Jf extends ut{constructor(e){super(),ct(this,e,s_,i_,at,{title:0,message:1,confirmText:2,cancelText:3,danger:4})}}function o_(n){let e,t,l;return{c(){e=ae("circle"),t=ae("line"),l=ae("line"),r(e,"cx","12"),r(e,"cy","12"),r(e,"r","10"),r(t,"x1","12"),r(t,"y1","16"),r(t,"x2","12"),r(t,"y2","12"),r(l,"x1","12"),r(l,"y1","8"),r(l,"x2","12.01"),r(l,"y2","8")},m(i,s){C(i,e,s),C(i,t,s),C(i,l,s)},d(i){i&&(S(e),S(t),S(l))}}}function r_(n){let e,t,l,i;return{c(){e=ae("rect"),t=ae("polyline"),l=ae("line"),i=ae("line"),r(e,"x","3"),r(e,"y","5"),r(e,"width","18"),r(e,"height","14"),r(e,"rx","2"),r(t,"points","3 10 21 10"),r(l,"x1","8"),r(l,"y1","5"),r(l,"x2","8"),r(l,"y2","19"),r(i,"x1","16"),r(i,"y1","5"),r(i,"x2","16"),r(i,"y2","19")},m(s,o){C(s,e,o),C(s,t,o),C(s,l,o),C(s,i,o)},d(s){s&&(S(e),S(t),S(l),S(i))}}}function a_(n){let e,t;return{c(){e=ae("path"),t=ae("polyline"),r(e,"d","M13 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V9z"),r(t,"points","13 2 13 9 20 9")},m(l,i){C(l,e,i),C(l,t,i)},d(l){l&&(S(e),S(t))}}}function c_(n){let e,t;return{c(){e=ae("path"),t=ae("path"),r(e,"d","M12 20h9"),r(t,"d","M16.5 3.5a2.121 2.121 0 0 1 3 3L7 19l-4 1 1-4L16.5 3.5z")},m(l,i){C(l,e,i),C(l,t,i)},d(l){l&&(S(e),S(t))}}}function u_(n){let e,t,l,i,s;return{c(){e=ae("path"),t=ae("path"),l=ae("line"),i=ae("line"),s=ae("line"),r(e,"d","M4 19.5A2.5 2.5 0 0 1 6.5 17H20"),r(t,"d","M6.5 2H20v20H6.5A2.5 2.5 0 0 1 4 19.5v-15A2.5 2.5 0 0 1 6.5 2z"),r(l,"x1","8"),r(l,"y1","7"),r(l,"x2","16"),r(l,"y2","7"),r(i,"x1","8"),r(i,"y1","11"),r(i,"x2","14"),r(i,"y2","11"),r(s,"x1","8"),r(s,"y1","15"),r(s,"x2","12"),r(s,"y2","15")},m(o,c){C(o,e,c),C(o,t,c),C(o,l,c),C(o,i,c),C(o,s,c)},d(o){o&&(S(e),S(t),S(l),S(i),S(s))}}}function f_(n){let e,t,l,i;return{c(){e=ae("path"),t=ae("polyline"),l=ae("line"),i=ae("line"),r(e,"d","M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"),r(t,"points","14 2 14 8 20 8"),r(l,"x1","16"),r(l,"y1","13"),r(l,"x2","8"),r(l,"y2","13"),r(i,"x1","16"),r(i,"y1","17"),r(i,"x2","8"),r(i,"y2","17")},m(s,o){C(s,e,o),C(s,t,o),C(s,l,o),C(s,i,o)},d(s){s&&(S(e),S(t),S(l),S(i))}}}function d_(n){let e,t;return{c(){e=ae("path"),t=ae("circle"),r(e,"d","M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2"),r(t,"cx","12"),r(t,"cy","7"),r(t,"r","4")},m(l,i){C(l,e,i),C(l,t,i)},d(l){l&&(S(e),S(t))}}}function p_(n){let e,t,l,i;return{c(){e=ae("rect"),t=ae("rect"),l=ae("rect"),i=ae("rect"),r(e,"x","3"),r(e,"y","3"),r(e,"width","7"),r(e,"height","7"),r(e,"rx","1"),r(t,"x","14"),r(t,"y","3"),r(t,"width","7"),r(t,"height","4"),r(t,"rx","1"),r(l,"x","14"),r(l,"y","10"),r(l,"width","7"),r(l,"height","11"),r(l,"rx","1"),r(i,"x","3"),r(i,"y","14"),r(i,"width","7"),r(i,"height","7"),r(i,"rx","1")},m(s,o){C(s,e,o),C(s,t,o),C(s,l,o),C(s,i,o)},d(s){s&&(S(e),S(t),S(l),S(i))}}}function h_(n){let e;return{c(){e=ae("path"),r(e,"d","M22 19a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h5l2 3h9a2 2 0 0 1 2 2z")},m(t,l){C(t,e,l)},d(t){t&&S(e)}}}function m_(n){let e;function t(s,o){return s[0]==="folder"?h_:s[0]==="project"?p_:s[0]==="client"?d_:s[0]==="document"?f_:s[0]==="recipe"?u_:s[0]==="note"?c_:s[0]==="file"?a_:s[0]==="case"?r_:o_}let l=t(n),i=l(n);return{c(){e=ae("svg"),i.c(),r(e,"width",n[1]),r(e,"height",n[1]),r(e,"viewBox","0 0 24 24"),r(e,"fill","none"),r(e,"stroke","currentColor"),r(e,"stroke-width","1.5"),r(e,"stroke-linecap","round"),r(e,"stroke-linejoin","round"),r(e,"xmlns","http://www.w3.org/2000/svg")},m(s,o){C(s,e,o),i.m(e,null)},p(s,[o]){l!==(l=t(s))&&(i.d(1),i=l(s),i&&(i.c(),i.m(e,null))),o&2&&r(e,"width",s[1]),o&2&&r(e,"height",s[1])},i:oe,o:oe,d(s){s&&S(e),i.d()}}}function g_(n,e,t){let{kind:l="generic"}=e,{size:i=18}=e;return n.$$set=s=>{"kind"in s&&t(0,l=s.kind),"size"in s&&t(1,i=s.size)},[l,i]}class ji extends ut{constructor(e){super(),ct(this,e,g_,m_,at,{kind:0,size:1})}}function Xo(n,e,t){const l=n.slice();return l[44]=e[t],l}function __(n){let e;return{c(){e=f("span"),r(e,"class","tree-toggle-placeholder svelte-zj71cl")},m(t,l){C(t,e,l)},p:oe,d(t){t&&S(e)}}}function b_(n){let e,t,l=n[1][n[44].id]?"▾":"▸",i,s,o;function c(){return n[25](n[44])}return{c(){e=f("button"),t=f("span"),i=j(l),r(t,"class","tree-arrow"),r(e,"class","tree-toggle svelte-zj71cl")},m(u,d){C(u,e,d),a(e,t),a(t,i),s||(o=O(e,"click",We(c)),s=!0)},p(u,d){n=u,d[0]&3&&l!==(l=n[1][n[44].id]?"▾":"▸")&&Q(i,l)},d(u){u&&S(e),s=!1,o()}}}function Jo(n){let e,t;return e=new Qf({props:{nodes:n[44].children||[],expanded:n[1],selectedNodeId:n[2],level:n[3]+1,onSelect:n[4],onToggle:n[5],onContextMenu:n[6],onDrop:n[7]}}),{c(){xe(e.$$.fragment)},m(l,i){Xe(e,l,i),t=!0},p(l,i){const s={};i[0]&1&&(s.nodes=l[44].children||[]),i[0]&2&&(s.expanded=l[1]),i[0]&4&&(s.selectedNodeId=l[2]),i[0]&8&&(s.level=l[3]+1),i[0]&16&&(s.onSelect=l[4]),i[0]&32&&(s.onToggle=l[5]),i[0]&64&&(s.onContextMenu=l[6]),i[0]&128&&(s.onDrop=l[7]),e.$set(s)},i(l){t||(ge(e.$$.fragment,l),t=!0)},o(l){ke(e.$$.fragment,l),t=!1},d(l){Je(e,l)}}}function Qo(n,e){let t,l,i,s,o,c,u,d=e[44].title+"",p,h,m=e[1][e[44].id]&&Ss(e[44]),g,b,k,y;function E(L,q){return q[0]&1&&(l=null),l==null&&(l=!!Xl(L[44])),l?b_:__}let T=E(e,[-1,-1]),N=T(e);o=new ji({props:{kind:xo(e[44]),size:16}});function A(...L){return e[26](e[44],...L)}function I(...L){return e[27](e[44],...L)}function R(){return e[28](e[44])}function M(...L){return e[29](e[44],...L)}function D(...L){return e[30](e[44],...L)}function z(...L){return e[31](e[44],...L)}function U(...L){return e[32](e[44],...L)}function H(...L){return e[33](e[44],...L)}function B(...L){return e[34](e[44],...L)}function W(...L){return e[35](e[44],...L)}function G(...L){return e[36](e[44],...L)}function V(...L){return e[37](e[44],...L)}let F=m&&Jo(e);return{key:n,first:null,c(){t=f("div"),N.c(),i=w(),s=f("span"),xe(o.$$.fragment),c=w(),u=f("span"),p=j(d),h=w(),F&&F.c(),g=vt(),r(s,"class","tree-icon svelte-zj71cl"),r(s,"role","button"),r(s,"tabindex","-1"),r(u,"class","tree-label svelte-zj71cl"),r(u,"role","button"),r(u,"tabindex","-1"),r(t,"class","tree-item svelte-zj71cl"),on(t,"padding-left",e[3]*16+4+"px"),r(t,"draggable","true"),r(t,"role","button"),r(t,"tabindex","0"),ce(t,"selected",e[2]===e[44].id),ce(t,"drop-valid",e[8]===e[44].id&&e[9][e[44].id]),ce(t,"drop-invalid",e[8]===e[44].id&&!e[9][e[44].id]),this.first=t},m(L,q){C(L,t,q),N.m(t,null),a(t,i),a(t,s),Xe(o,s,null),a(t,c),a(t,u),a(u,p),C(L,h,q),F&&F.m(L,q),C(L,g,q),b=!0,k||(y=[O(s,"click",A),O(s,"keydown",I),O(s,"dblclick",We(e[24])),O(u,"click",We(R)),O(u,"keydown",M),O(t,"dragstart",D),O(t,"dragover",z),O(t,"dragleave",U),O(t,"drop",H),O(t,"click",B),O(t,"keydown",W),O(t,"dblclick",G),O(t,"contextmenu",Fi(V))],k=!0)},p(L,q){e=L,T===(T=E(e,q))&&N?N.p(e,q):(N.d(1),N=T(e),N&&(N.c(),N.m(t,i)));const P={};q[0]&1&&(P.kind=xo(e[44])),o.$set(P),(!b||q[0]&1)&&d!==(d=e[44].title+"")&&Q(p,d),(!b||q[0]&8)&&on(t,"padding-left",e[3]*16+4+"px"),(!b||q[0]&5)&&ce(t,"selected",e[2]===e[44].id),(!b||q[0]&769)&&ce(t,"drop-valid",e[8]===e[44].id&&e[9][e[44].id]),(!b||q[0]&769)&&ce(t,"drop-invalid",e[8]===e[44].id&&!e[9][e[44].id]),q[0]&3&&(m=e[1][e[44].id]&&Ss(e[44])),m?F?(F.p(e,q),q[0]&3&&ge(F,1)):(F=Jo(e),F.c(),ge(F,1),F.m(g.parentNode,g)):F&&(yt(),ke(F,1,1,()=>{F=null}),Et())},i(L){b||(ge(o.$$.fragment,L),ge(F),b=!0)},o(L){ke(o.$$.fragment,L),ke(F),b=!1},d(L){L&&(S(t),S(h),S(g)),N.d(),Je(o),F&&F.d(L),k=!1,Ce(y)}}}function k_(n){let e=[],t=new Map,l,i,s,o,c=Te(n[0]);const u=d=>d[44].id;for(let d=0;d0:n.has_children===!0}function $o(n){const e={};function t(l,i){for(const s of l)e[s.id]=i,s.children&&t(s.children,s.id)}return t(n,""),e}function er(n){const e=[];function t(l){for(const i of l)e.push(i),i.children&&t(i.children)}return t(n),e}function v_(n){try{return n.dataTransfer.getData("text/plain")}catch{return""}}function w_(n,e,t){let l,i,s,{nodes:o=[]}=e,{expanded:c={}}=e,{selectedNodeId:u=""}=e,{level:d=0}=e,{onSelect:p=void 0}=e,{onToggle:h=void 0}=e,{onContextMenu:m=void 0}=e,{onDrop:g=void 0}=e,b={},k=null,y="",E="";const T=["folder","project","client","document","recipe","case"];ii(()=>{for(const te of Object.keys(b))clearTimeout(b[te]);k&&clearInterval(k)});function N(te){return T.includes(te.type)}function A(te,re,Ae){if(!te||!re||re===te.id||!N(te))return!1;let Fe=te.id;for(;Fe;){if(Fe===re)return!1;Fe=Ae[Fe]||""}return!0}function I(te,re){te.stopPropagation(),te.dataTransfer.effectAllowed="move",te.dataTransfer.setData("text/plain",re.id),t(21,y=re.id)}function R(te,re){te.preventDefault(),te.stopPropagation(),te.dataTransfer.dropEffect="move",E!==re.id&&t(8,E=re.id),Xl(re)&&!c[re.id]&&!b[re.id]&&(b[re.id]=setTimeout(()=>{h&&h(re.id),delete b[re.id]},600));const Ae=te.currentTarget.closest(".workspace-tree-area");if(Ae){const Fe=Ae.getBoundingClientRect(),we=30;te.clientY-Fe.top{Ae.scrollTop-=10},50)):Fe.bottom-te.clientY{Ae.scrollTop+=10},50)):k&&(clearInterval(k),k=null)}}function M(te,re){const Ae=te.relatedTarget;Ae&&te.currentTarget.contains(Ae)||(E===re.id&&t(8,E=""),b[re.id]&&(clearTimeout(b[re.id]),delete b[re.id]),k&&(clearInterval(k),k=null))}function D(te,re){te.preventDefault(),te.stopPropagation(),b[re.id]&&(clearTimeout(b[re.id]),delete b[re.id]),k&&(clearInterval(k),k=null);const Ae=er(o),Fe=$o(Ae),we=v_(te);if(!A(re,we,Fe)){t(8,E=""),t(21,y="");return}g&&g(we,re.id),t(8,E=""),t(21,y="")}function z(){t(8,E=""),t(21,y="");for(const te of Object.keys(b))clearTimeout(b[te]),delete b[te];k&&(clearInterval(k),k=null)}function U(te,re){te.target.closest(".tree-toggle")||te.target.closest(".tree-icon")||p&&p(re)}function H(te,re){Xl(re)&&h&&h(re.id)}function B(te,re){(te.key==="Enter"||te.key===" ")&&(te.preventDefault(),p&&p(re))}function W(te,re){te.stopPropagation(),Xl(re)&&h&&h(re.id)}function G(te,re){(te.key==="Enter"||te.key===" ")&&(te.preventDefault(),te.stopPropagation(),Xl(re)&&h&&h(re.id))}function V(te,re){(te.key==="Enter"||te.key===" ")&&(te.preventDefault(),p&&p(re))}function F(te,re,Ae){const Fe={};function we(je){for(const Qe of je)Fe[Qe.id]=A(Qe,re,Ae),Qe.children&&we(Qe.children)}return we(te),Fe}function L(te){Ds.call(this,n,te)}const q=te=>h&&h(te.id),P=(te,re)=>W(re,te),X=(te,re)=>G(re,te),Y=te=>p&&p(te),J=(te,re)=>V(re,te),ee=(te,re)=>I(re,te),ne=(te,re)=>R(re,te),le=(te,re)=>M(re,te),he=(te,re)=>D(re,te),se=(te,re)=>U(re,te),Be=(te,re)=>B(re,te),Ke=(te,re)=>H(re,te),Me=(te,re)=>m&&m(re,te);return n.$$set=te=>{"nodes"in te&&t(0,o=te.nodes),"expanded"in te&&t(1,c=te.expanded),"selectedNodeId"in te&&t(2,u=te.selectedNodeId),"level"in te&&t(3,d=te.level),"onSelect"in te&&t(4,p=te.onSelect),"onToggle"in te&&t(5,h=te.onToggle),"onContextMenu"in te&&t(6,m=te.onContextMenu),"onDrop"in te&&t(7,g=te.onDrop)},n.$$.update=()=>{n.$$.dirty[0]&1&&t(23,l=er(o)),n.$$.dirty[0]&8388608&&t(22,i=$o(l)),n.$$.dirty[0]&14680064&&t(9,s=F(l,y,i))},[o,c,u,d,p,h,m,g,E,s,I,R,M,D,z,U,H,B,W,G,V,y,i,l,L,q,P,X,Y,J,ee,ne,le,he,se,Be,Ke,Me]}class Qf extends ut{constructor(e){super(),ct(this,e,w_,k_,at,{nodes:0,expanded:1,selectedNodeId:2,level:3,onSelect:4,onToggle:5,onContextMenu:6,onDrop:7},null,[-1,-1])}}function tr(n){let e,t;return{c(){e=f("div"),t=j(n[4]),r(e,"class","path-info svelte-a9f1pd")},m(l,i){C(l,e,i),a(e,t)},p(l,i){i&16&&Q(t,l[4])},d(l){l&&S(e)}}}function nr(n){let e,t;return{c(){e=f("div"),t=j(n[3]),r(e,"class","error-msg svelte-a9f1pd")},m(l,i){C(l,e,i),a(e,t)},p(l,i){i&8&&Q(t,l[3])},d(l){l&&S(e)}}}function y_(n){let e,t,l,i,s,o,c,u,d,p,h,m,g,b,k,y,E,T=v("firstrun.browse")+"",N,A,I,R,M,D,z=(n[2]?v("firstrun.creating"):v("firstrun.create"))+"",U,H,B,W,G,V,F=n[4]&&tr(n),L=n[3]&&nr(n);return{c(){e=f("div"),t=f("div"),l=f("img"),s=w(),o=f("h1"),o.textContent=`${v("firstrun.title")}`,c=w(),u=f("p"),u.textContent=`${v("firstrun.desc")}`,d=w(),p=f("div"),h=f("label"),h.textContent=`${v("firstrun.pathLabel")}`,m=w(),g=f("div"),b=f("input"),y=w(),E=f("button"),N=j(T),A=w(),F&&F.c(),I=w(),L&&L.c(),R=w(),M=f("div"),D=f("button"),U=j(z),B=w(),W=f("button"),W.textContent=`${v("firstrun.quit")}`,r(l,"class","first-run-logo svelte-a9f1pd"),Ol(l.src,i="/assets/app-icons/icon_64x64.png")||r(l,"src",i),r(l,"width","64"),r(l,"height","64"),r(l,"alt",""),r(o,"class","svelte-a9f1pd"),r(u,"class","first-run-desc svelte-a9f1pd"),r(h,"class","form-label svelte-a9f1pd"),r(h,"for","vault-path"),r(b,"id","vault-path"),r(b,"type","text"),r(b,"placeholder",k=n[1]||v("firstrun.defaultPath")),b.disabled=n[2],r(b,"class","svelte-a9f1pd"),r(E,"class","btn"),E.disabled=n[2],r(g,"class","input-row svelte-a9f1pd"),r(p,"class","form-group svelte-a9f1pd"),r(D,"class","btn btn-primary btn-lg svelte-a9f1pd"),D.disabled=H=!n[0].trim()||n[2],r(W,"class","btn btn-lg svelte-a9f1pd"),r(M,"class","first-run-actions svelte-a9f1pd"),r(t,"class","first-run-card svelte-a9f1pd"),r(e,"class","first-run-screen svelte-a9f1pd")},m(q,P){C(q,e,P),a(e,t),a(t,l),a(t,s),a(t,o),a(t,c),a(t,u),a(t,d),a(t,p),a(p,h),a(p,m),a(p,g),a(g,b),Re(b,n[0]),a(g,y),a(g,E),a(E,N),a(t,A),F&&F.m(t,null),a(t,I),L&&L.m(t,null),a(t,R),a(t,M),a(M,D),a(D,U),a(M,B),a(M,W),G||(V=[O(b,"input",n[12]),O(b,"input",n[6]),O(b,"keydown",n[9]),O(E,"click",n[5]),O(D,"click",n[7]),O(W,"click",n[8])],G=!0)},p(q,[P]){P&2&&k!==(k=q[1]||v("firstrun.defaultPath"))&&r(b,"placeholder",k),P&4&&(b.disabled=q[2]),P&1&&b.value!==q[0]&&Re(b,q[0]),P&4&&(E.disabled=q[2]),q[4]?F?F.p(q,P):(F=tr(q),F.c(),F.m(t,I)):F&&(F.d(1),F=null),q[3]?L?L.p(q,P):(L=nr(q),L.c(),L.m(t,R)):L&&(L.d(1),L=null),P&4&&z!==(z=(q[2]?v("firstrun.creating"):v("firstrun.create"))+"")&&Q(U,z),P&5&&H!==(H=!q[0].trim()||q[2])&&(D.disabled=H)},i:oe,o:oe,d(q){q&&S(e),F&&F.d(),L&&L.d(),G=!1,Ce(V)}}}function ki(n,...e){try{if(window.go&&window.go.main&&window.go.main.App){const t=window.go.main.App[n];if(typeof t=="function")return t(...e)}}catch(t){console.error("Wails error:",n,t)}return Promise.reject(new Error("Wails not connected: "+n))}function E_(n,e,t){let{onComplete:l=null}=e,{onQuit:i=null}=e,s="",o="",c=!1,u="",d="",p=null;async function h(){try{const T=await ki("GetDefaultVaultPath");t(1,o=T||""),t(0,s=o||""),s&&await g()}catch{t(1,o="")}}h();async function m(){try{const T=await ki("PickDirectory");T&&(t(0,s=T),await g())}catch(T){t(3,u=String(T))}}async function g(){if(!s||!s.trim()){t(4,d=""),p=null;return}try{p=await ki("CheckVaultPath",s.trim()),p&&t(4,d=p.description)}catch{t(4,d=""),p=null}}async function b(){if(!(!s||!s.trim())){if(t(2,c=!0),t(3,u=""),p&&!p.writable){t(3,u=v("firstrun.errorNoWrite")),t(2,c=!1);return}try{const T=await ki("CreateVault",s.trim());T&&T.status==="ready"&&l&&l(T)}catch(T){t(3,u=String(T))}t(2,c=!1)}}function k(){i&&i()}function y(T){T.key==="Enter"&&!c&&s.trim()&&b()}function E(){s=this.value,t(0,s)}return n.$$set=T=>{"onComplete"in T&&t(10,l=T.onComplete),"onQuit"in T&&t(11,i=T.onQuit)},[s,o,c,u,d,m,g,b,k,y,l,i,E]}class T_ extends ut{constructor(e){super(),ct(this,e,E_,y_,at,{onComplete:10,onQuit:11})}}function lr(n){let e,t;return{c(){e=f("div"),t=j(n[2]),r(e,"class","error-msg svelte-s3o8c3")},m(l,i){C(l,e,i),a(e,t)},p(l,i){i&4&&Q(t,l[2])},d(l){l&&S(e)}}}function ir(n){let e,t,l,i,s,o,c,u,d=v("common.yes")+"",p,h,m,g,b;return{c(){e=f("div"),t=f("div"),l=f("h3"),l.textContent=`${v("recovery.createConfirmTitle")}`,i=w(),s=f("p"),s.textContent=`${v("recovery.createConfirm")}`,o=w(),c=f("div"),u=f("button"),p=j(d),h=w(),m=f("button"),m.textContent=`${v("common.cancel")}`,r(l,"class","svelte-s3o8c3"),r(s,"class","modal-desc svelte-s3o8c3"),r(u,"class","btn btn-primary"),u.disabled=n[1],r(m,"class","btn"),r(c,"class","modal-actions svelte-s3o8c3"),r(t,"class","modal svelte-s3o8c3"),r(e,"class","modal-overlay svelte-s3o8c3"),r(e,"role","button"),r(e,"tabindex","0")},m(k,y){C(k,e,y),a(e,t),a(t,l),a(t,i),a(t,s),a(t,o),a(t,c),a(c,u),a(u,p),a(c,h),a(c,m),g||(b=[O(u,"click",n[6]),O(m,"click",n[7]),O(e,"click",Qt(n[7])),O(e,"keydown",n[11])],g=!0)},p(k,y){y&2&&(u.disabled=k[1])},d(k){k&&S(e),g=!1,Ce(b)}}}function S_(n){let e,t,l,i,s,o,c,u,d,p=(n[0]||"—")+"",h,m,g,b,k,y=v("recovery.choose")+"",E,T,N,A=v("recovery.create")+"",I,R,M,D,z,U,H,B=n[2]&&lr(n),W=n[3]&&ir(n);return{c(){e=f("div"),t=f("div"),l=f("div"),l.textContent="⚠",i=w(),s=f("h1"),s.textContent=`${v("recovery.title")}`,o=w(),c=f("p"),c.textContent=`${v("recovery.expected")}:`,u=w(),d=f("code"),h=j(p),m=w(),B&&B.c(),g=w(),b=f("div"),k=f("button"),E=j(y),T=w(),N=f("button"),I=j(A),R=w(),M=f("button"),M.textContent=`${v("recovery.quit")}`,D=w(),W&&W.c(),z=vt(),r(l,"class","recovery-icon svelte-s3o8c3"),r(s,"class","svelte-s3o8c3"),r(c,"class","recovery-desc svelte-s3o8c3"),r(d,"class","recovery-path svelte-s3o8c3"),r(k,"class","btn btn-primary btn-lg svelte-s3o8c3"),k.disabled=n[1],r(N,"class","btn btn-lg svelte-s3o8c3"),N.disabled=n[1],r(M,"class","btn btn-lg svelte-s3o8c3"),r(b,"class","recovery-actions svelte-s3o8c3"),r(t,"class","recovery-card svelte-s3o8c3"),r(e,"class","recovery-screen svelte-s3o8c3")},m(G,V){C(G,e,V),a(e,t),a(t,l),a(t,i),a(t,s),a(t,o),a(t,c),a(t,u),a(t,d),a(d,h),a(t,m),B&&B.m(t,null),a(t,g),a(t,b),a(b,k),a(k,E),a(b,T),a(b,N),a(N,I),a(b,R),a(b,M),C(G,D,V),W&&W.m(G,V),C(G,z,V),U||(H=[O(k,"click",n[4]),O(N,"click",n[5]),O(M,"click",n[8])],U=!0)},p(G,[V]){V&1&&p!==(p=(G[0]||"—")+"")&&Q(h,p),G[2]?B?B.p(G,V):(B=lr(G),B.c(),B.m(t,g)):B&&(B.d(1),B=null),V&2&&(k.disabled=G[1]),V&2&&(N.disabled=G[1]),G[3]?W?W.p(G,V):(W=ir(G),W.c(),W.m(z.parentNode,z)):W&&(W.d(1),W=null)},i:oe,o:oe,d(G){G&&(S(e),S(D),S(z)),B&&B.d(),W&&W.d(G),U=!1,Ce(H)}}}function ps(n,...e){try{if(window.go&&window.go.main&&window.go.main.App){const t=window.go.main.App[n];if(typeof t=="function")return t(...e)}}catch(t){console.error("Wails error:",n,t)}return Promise.reject(new Error("Wails not connected: "+n))}function C_(n,e,t){let{vaultPath:l=""}=e,{onComplete:i=null}=e,{onQuit:s=null}=e,o=!1,c="",u=!1;async function d(){try{const k=await ps("PickDirectory");if(!k)return;t(1,o=!0),t(2,c="");const y=await ps("OpenVault",k);y&&y.status==="ready"&&i&&i(y)}catch(k){t(2,c=String(k))}t(1,o=!1)}function p(){t(3,u=!0)}async function h(){t(3,u=!1),t(1,o=!0),t(2,c="");try{const k=await ps("CreateVault",l);k&&k.status==="ready"&&i&&i(k)}catch(k){t(2,c=String(k))}t(1,o=!1)}function m(){t(3,u=!1)}function g(){s&&s()}const b=k=>k.key==="Enter"&&m();return n.$$set=k=>{"vaultPath"in k&&t(0,l=k.vaultPath),"onComplete"in k&&t(9,i=k.onComplete),"onQuit"in k&&t(10,s=k.onQuit)},[l,o,c,u,d,p,h,m,g,i,s,b]}class A_ extends ut{constructor(e){super(),ct(this,e,C_,S_,at,{vaultPath:0,onComplete:9,onQuit:10})}}function sr(n,e,t){const l=n.slice();return l[5]=e[t],l}function N_(n){let e,t;return{c(){e=ae("circle"),t=ae("path"),r(e,"cx","12"),r(e,"cy","12"),r(e,"r","3"),r(t,"d","M12 1v2M12 21v2M4.22 4.22l1.42 1.42M18.36 18.36l1.42 1.42M1 12h2M21 12h2M4.22 19.78l1.42-1.42M18.36 5.64l1.42-1.42")},m(l,i){C(l,e,i),C(l,t,i)},d(l){l&&(S(e),S(t))}}}function I_(n){let e,t,l;return{c(){e=ae("path"),t=ae("path"),l=ae("path"),r(e,"d","M5 4h12l2 2v14H5z"),r(t,"d","M8 4v6h8V4"),r(l,"d","M8 20v-6h8v6")},m(i,s){C(i,e,s),C(i,t,s),C(i,l,s)},d(i){i&&(S(e),S(t),S(l))}}}function M_(n){let e,t,l,i;return{c(){e=ae("path"),t=ae("path"),l=ae("path"),i=ae("path"),r(e,"d","M20 11a8 8 0 0 0-14-4l-2 2"),r(t,"d","M4 5v4h4"),r(l,"d","M4 13a8 8 0 0 0 14 4l2-2"),r(i,"d","M20 19v-4h-4")},m(s,o){C(s,e,o),C(s,t,o),C(s,l,o),C(s,i,o)},d(s){s&&(S(e),S(t),S(l),S(i))}}}function R_(n){let e;return{c(){e=ae("path"),r(e,"d","M4 19V9M10 19V5M16 19v-7M22 19H2")},m(t,l){C(t,e,l)},d(t){t&&S(e)}}}function L_(n){let e;return{c(){e=ae("path"),r(e,"d","M3 6h6l2 2h10v10a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V6z")},m(t,l){C(t,e,l)},d(t){t&&S(e)}}}function D_(n){let e,t;return{c(){e=ae("path"),t=ae("path"),r(e,"d","M9 3v5M15 3v5M7 8h10v3a5 5 0 0 1-10 0V8z"),r(t,"d","M12 16v5")},m(l,i){C(l,e,i),C(l,t,i)},d(l){l&&(S(e),S(t))}}}function O_(n){let e,t;return{c(){e=ae("rect"),t=ae("path"),r(e,"x","4"),r(e,"y","3"),r(e,"width","16"),r(e,"height","18"),r(e,"rx","2"),r(t,"d","M8 7h8M8 11h8M8 15h5")},m(l,i){C(l,e,i),C(l,t,i)},d(l){l&&(S(e),S(t))}}}function q_(n){let e,t,l;return{c(){e=ae("path"),t=ae("path"),l=ae("path"),r(e,"d","M3 10.5 12 3l9 7.5"),r(t,"d","M5 9.5V21h14V9.5"),r(l,"d","M10 21v-6h4v6")},m(i,s){C(i,e,s),C(i,t,s),C(i,l,s)},d(i){i&&(S(e),S(t),S(l))}}}function P_(n){let e,t;return{c(){e=ae("circle"),t=ae("path"),r(e,"cx","12"),r(e,"cy","12"),r(e,"r","3"),r(t,"d","M19.4 15a1.7 1.7 0 0 0 .3 1.8l.1.1a2 2 0 0 1-2.8 2.8l-.1-.1a1.7 1.7 0 0 0-1.8-.3 1.7 1.7 0 0 0-1 1.5V22h-4v-.2a1.7 1.7 0 0 0-1-1.5 1.7 1.7 0 0 0-1.8.3l-.1.1a2 2 0 0 1-2.8-2.8l.1-.1a1.7 1.7 0 0 0 .3-1.8 1.7 1.7 0 0 0-1.5-1H2v-4h.2a1.7 1.7 0 0 0 1.5-1 1.7 1.7 0 0 0-.3-1.8l-.1-.1a2 2 0 0 1 2.8-2.8l.1.1a1.7 1.7 0 0 0 1.8.3 1.7 1.7 0 0 0 1-1.5V2h4v.2a1.7 1.7 0 0 0 1 1.5 1.7 1.7 0 0 0 1.8-.3l.1-.1a2 2 0 0 1 2.8 2.8l-.1.1a1.7 1.7 0 0 0-.3 1.8 1.7 1.7 0 0 0 1.5 1h.2v4h-.2a1.7 1.7 0 0 0-1.4 1z")},m(l,i){C(l,e,i),C(l,t,i)},d(l){l&&(S(e),S(t))}}}function or(n){let e,t,l,i,s,o,c,u;function d(g,b){if(g[5].id==="general")return P_;if(g[5].id==="workspace")return q_;if(g[5].id==="templates")return O_;if(g[5].id==="plugins")return D_;if(g[5].id==="files")return L_;if(g[5].id==="activity")return R_;if(g[5].id==="sync")return M_;if(g[5].id==="backup")return I_;if(g[5].id==="browserBridge")return N_}let p=d(n),h=p&&p(n);function m(){return n[4](n[5])}return{c(){e=f("button"),t=f("span"),l=ae("svg"),h&&h.c(),i=w(),s=f("span"),s.textContent=`${n[5].label}`,o=w(),r(l,"width","16"),r(l,"height","16"),r(l,"viewBox","0 0 24 24"),r(l,"fill","none"),r(l,"stroke","currentColor"),r(l,"stroke-width","1.8"),r(l,"stroke-linecap","round"),r(l,"stroke-linejoin","round"),r(l,"aria-hidden","true"),r(t,"class","settings-nav-icon svelte-8ag2z0"),r(s,"class","settings-nav-label svelte-8ag2z0"),r(e,"class","settings-nav-item svelte-8ag2z0"),ce(e,"active",n[0]===n[5].id),ce(e,"disabled",n[5].id==="files"||n[5].id==="activity"||n[5].id==="backup")},m(g,b){C(g,e,b),a(e,t),a(t,l),h&&h.m(l,null),a(e,i),a(e,s),a(e,o),c||(u=O(e,"click",m),c=!0)},p(g,b){n=g,b&3&&ce(e,"active",n[0]===n[5].id)},d(g){g&&S(e),h&&h.d(),c=!1,u()}}}function z_(n){let e,t=Te(n[1]),l=[];for(let i=0;io(u.id);return n.$$set=u=>{"activeSection"in u&&t(0,l=u.activeSection),"onSelect"in u&&t(3,i=u.onSelect)},[l,s,o,i,c]}class F_ extends ut{constructor(e){super(),ct(this,e,B_,z_,at,{activeSection:0,onSelect:3})}}function rr(n){let e;return{c(){e=f("div"),e.textContent=`${v("settings.saved")}`,r(e,"class","save-notice svelte-1e2uhdh")},m(t,l){C(t,e,l)},d(t){t&&S(e)}}}function j_(n){let e,t,l,i,s,o,c,u,d,p,h,m,g,b,k,y,E,T,N,A,I,R,M,D,z,U,H,B,W,G,V,F,L,q=n[1]&&rr();return{c(){e=f("div"),t=f("h2"),t.textContent=`${v("settings.general")}`,l=w(),i=f("p"),i.textContent=`${v("settings.generalDesc")}`,s=w(),o=f("div"),c=f("h3"),c.textContent=`${v("settings.appearance")}`,u=w(),d=f("div"),p=f("label"),h=f("span"),h.textContent=`${v("settings.theme")}`,m=w(),g=f("select"),b=f("option"),b.textContent=`${v("settings.themeSystem")}`,k=f("option"),k.textContent=`${v("settings.themeLight")} (${v("settings.langSoon")})`,y=f("option"),y.textContent=`${v("settings.themeDark")} (${v("settings.langSoon")})`,E=w(),T=f("div"),N=f("h3"),N.textContent=`${v("settings.localization")}`,A=w(),I=f("div"),R=f("label"),M=f("span"),M.textContent=`${v("settings.language")}`,D=w(),z=f("select"),U=f("option"),U.textContent=`${v("settings.langRu")}`,H=f("option"),H.textContent=`${v("settings.langEn")} (${v("settings.langSoon")})`,B=w(),W=f("div"),q&&q.c(),G=w(),V=f("button"),V.textContent=`${v("settings.save")}`,r(t,"class","svelte-1e2uhdh"),r(i,"class","section-desc svelte-1e2uhdh"),r(c,"class","card-title svelte-1e2uhdh"),r(h,"class","label-text svelte-1e2uhdh"),b.__value="system",Re(b,b.__value),k.__value="light",Re(k,k.__value),k.disabled=!0,y.__value="dark",Re(y,y.__value),y.disabled=!0,n[0]===void 0&&pl(()=>n[5].call(g)),r(d,"class","form-group svelte-1e2uhdh"),r(o,"class","settings-card svelte-1e2uhdh"),r(N,"class","card-title svelte-1e2uhdh"),r(M,"class","label-text svelte-1e2uhdh"),U.__value="ru",Re(U,U.__value),H.__value="en",Re(H,H.__value),z.disabled=!0,r(I,"class","form-group svelte-1e2uhdh"),r(T,"class","settings-card svelte-1e2uhdh"),r(V,"class","btn btn-primary"),r(W,"class","settings-actions svelte-1e2uhdh"),r(e,"class","settings-section svelte-1e2uhdh")},m(P,X){C(P,e,X),a(e,t),a(e,l),a(e,i),a(e,s),a(e,o),a(o,c),a(o,u),a(o,d),a(d,p),a(p,h),a(p,m),a(p,g),a(g,b),a(g,k),a(g,y),Vn(g,n[0],!0),a(e,E),a(e,T),a(T,N),a(T,A),a(T,I),a(I,R),a(R,M),a(R,D),a(R,z),a(z,U),a(z,H),a(e,B),a(e,W),q&&q.m(W,null),a(W,G),a(W,V),F||(L=[O(g,"change",n[5]),O(V,"click",n[2])],F=!0)},p(P,[X]){X&1&&Vn(g,P[0]),P[1]?q||(q=rr(),q.c(),q.m(W,G)):q&&(q.d(1),q=null)},i:oe,o:oe,d(P){P&&S(e),q&&q.d(),F=!1,Ce(L)}}}function U_(n,e,t){let{appConfig:l=null}=e,{onSave:i=null}=e,s="system",o=!1;function c(){l&&t(0,s=l.theme||"system")}async function u(){l&&(t(3,l.theme=s,l),i&&await i(l),t(1,o=!0),setTimeout(()=>t(1,o=!1),2e3))}function d(){s=Ci(this),t(0,s)}return n.$$set=p=>{"appConfig"in p&&t(3,l=p.appConfig),"onSave"in p&&t(4,i=p.onSave)},n.$$.update=()=>{n.$$.dirty&8&&l&&c()},[s,o,u,l,i,d]}class H_ extends ut{constructor(e){super(),ct(this,e,U_,j_,at,{appConfig:3,onSave:4})}}function ar(n){let e,t;return{c(){e=f("div"),t=j(n[1]),r(e,"class","notice svelte-1zbky3")},m(l,i){C(l,e,i),a(e,t)},p(l,i){i&2&&Q(t,l[1])},d(l){l&&S(e)}}}function W_(n){let e;return{c(){e=f("p"),e.textContent=`${v("settings.noVaultInfo")}`,r(e,"class","no-data svelte-1zbky3")},m(t,l){C(t,e,l)},p:oe,d(t){t&&S(e)}}}function G_(n){let e,t,l,i,s,o=n[0].path+"",c,u,d,p,h,m,g=n[0].dbPath+"",b,k,y,E=n[0].nodeCount!==void 0&&cr(n),T=n[0].fileCount!==void 0&&ur(n);return{c(){e=f("div"),t=f("div"),l=f("span"),l.textContent=`${v("settings.vaultPath")}`,i=w(),s=f("span"),c=j(o),u=w(),d=f("div"),p=f("span"),p.textContent="DB",h=w(),m=f("span"),b=j(g),k=w(),E&&E.c(),y=w(),T&&T.c(),r(l,"class","info-label svelte-1zbky3"),r(s,"class","info-value mono svelte-1zbky3"),r(t,"class","info-row svelte-1zbky3"),r(p,"class","info-label svelte-1zbky3"),r(m,"class","info-value mono small svelte-1zbky3"),r(d,"class","info-row svelte-1zbky3"),r(e,"class","vault-info svelte-1zbky3")},m(N,A){C(N,e,A),a(e,t),a(t,l),a(t,i),a(t,s),a(s,c),a(e,u),a(e,d),a(d,p),a(d,h),a(d,m),a(m,b),a(e,k),E&&E.m(e,null),a(e,y),T&&T.m(e,null)},p(N,A){A&1&&o!==(o=N[0].path+"")&&Q(c,o),A&1&&g!==(g=N[0].dbPath+"")&&Q(b,g),N[0].nodeCount!==void 0?E?E.p(N,A):(E=cr(N),E.c(),E.m(e,y)):E&&(E.d(1),E=null),N[0].fileCount!==void 0?T?T.p(N,A):(T=ur(N),T.c(),T.m(e,null)):T&&(T.d(1),T=null)},d(N){N&&S(e),E&&E.d(),T&&T.d()}}}function cr(n){let e,t,l,i,s=n[0].nodeCount+"",o;return{c(){e=f("div"),t=f("span"),t.textContent="Nodes",l=w(),i=f("span"),o=j(s),r(t,"class","info-label svelte-1zbky3"),r(i,"class","info-value svelte-1zbky3"),r(e,"class","info-row svelte-1zbky3")},m(c,u){C(c,e,u),a(e,t),a(e,l),a(e,i),a(i,o)},p(c,u){u&1&&s!==(s=c[0].nodeCount+"")&&Q(o,s)},d(c){c&&S(e)}}}function ur(n){let e,t,l,i,s=n[0].fileCount+"",o;return{c(){e=f("div"),t=f("span"),t.textContent="Files",l=w(),i=f("span"),o=j(s),r(t,"class","info-label svelte-1zbky3"),r(i,"class","info-value svelte-1zbky3"),r(e,"class","info-row svelte-1zbky3")},m(c,u){C(c,e,u),a(e,t),a(e,l),a(e,i),a(i,o)},p(c,u){u&1&&s!==(s=c[0].fileCount+"")&&Q(o,s)},d(c){c&&S(e)}}}function K_(n){let e,t,l,i,s,o,c,u,d,p,h,m,g,b,k,y,E=n[1]&&ar(n);function T(I,R){return I[0]?G_:W_}let N=T(n),A=N(n);return{c(){e=f("div"),t=f("h2"),t.textContent=`${v("settings.workspace")}`,l=w(),i=f("p"),i.textContent=`${v("settings.workspaceDesc")}`,s=w(),E&&E.c(),o=w(),c=f("div"),A.c(),u=w(),d=f("div"),p=f("button"),p.textContent=`${v("settings.openVault")}`,h=w(),m=f("button"),m.textContent=`${v("settings.changeVault")}`,g=w(),b=f("button"),b.textContent=`${v("settings.checkIntegrity")}`,r(t,"class","svelte-1zbky3"),r(i,"class","section-desc svelte-1zbky3"),r(c,"class","settings-card svelte-1zbky3"),r(p,"class","btn svelte-1zbky3"),r(m,"class","btn svelte-1zbky3"),r(b,"class","btn svelte-1zbky3"),r(d,"class","workspace-actions svelte-1zbky3"),r(e,"class","settings-section svelte-1zbky3")},m(I,R){C(I,e,R),a(e,t),a(e,l),a(e,i),a(e,s),E&&E.m(e,null),a(e,o),a(e,c),A.m(c,null),a(e,u),a(e,d),a(d,p),a(d,h),a(d,m),a(d,g),a(d,b),k||(y=[O(p,"click",n[2]),O(m,"click",n[4]),O(b,"click",n[3])],k=!0)},p(I,[R]){I[1]?E?E.p(I,R):(E=ar(I),E.c(),E.m(e,o)):E&&(E.d(1),E=null),N===(N=T(I))&&A?A.p(I,R):(A.d(1),A=N(I),A&&(A.c(),A.m(c,null)))},i:oe,o:oe,d(I){I&&S(e),E&&E.d(),A.d(),k=!1,Ce(y)}}}function Al(n,...e){try{if(window.go&&window.go.main&&window.go.main.App){const t=window.go.main.App[n];if(typeof t=="function")return t(...e)}}catch(t){console.error("Wails error:",n,t)}return Promise.reject(new Error("Wails not connected: "+n))}function V_(n,e,t){let{onRefresh:l=null}=e,i=null,s="";async function o(){try{t(0,i=await Al("GetVaultInfo"))}catch{t(0,i=null)}}o();async function c(){try{await Al("OpenVaultFolder")}catch(p){t(1,s=String(p))}}async function u(){try{const p=await Al("VaultCheck");p.healthy?t(1,s="Vault healthy"):t(1,s="Issues found: "+(p.errors||[]).join("; "))}catch(p){t(1,s=String(p))}}async function d(){try{const p=await Al("PickDirectory");if(!p)return;const h=await Al("OpenVault",p);h&&h.status==="ready"&&(t(0,i=await Al("GetVaultInfo")),l&&l())}catch(p){t(1,s=String(p))}}return n.$$set=p=>{"onRefresh"in p&&t(5,l=p.onRefresh)},[i,s,c,u,d,l]}class Z_ extends ut{constructor(e){super(),ct(this,e,V_,K_,at,{onRefresh:5})}}function fr(n,e,t){const l=n.slice();return l[6]=e[t],l}function Y_(n){let e,t=Te(n[0]),l=[];for(let i=0;ic(d);return n.$$set=d=>{"onRefresh"in d&&t(3,l=d.onRefresh)},[i,s,c,l,u]}class $_ extends ut{constructor(e){super(),ct(this,e,x_,Q_,at,{onRefresh:3})}}function hr(n,e,t){const l=n.slice();return l[12]=e[t],l}function eb(n){let e,t=Te(n[0]),l=[];for(let i=0;iНет установленных плагинов.

Создайте папку .verstak/plugins/ в хранилище и добавьте туда плагины.

',r(e,"class","empty-state svelte-i9gngw")},m(t,l){C(t,e,l)},p:oe,d(t){t&&S(e)}}}function nb(n){let e,t;return{c(){e=f("p"),t=j(n[2]),r(e,"class","error svelte-i9gngw")},m(l,i){C(l,e,i),a(e,t)},p(l,i){i&4&&Q(t,l[2])},d(l){l&&S(e)}}}function lb(n){let e;return{c(){e=f("p"),e.textContent=`${v("common.loading")}`,r(e,"class","loading svelte-i9gngw")},m(t,l){C(t,e,l)},p:oe,d(t){t&&S(e)}}}function mr(n){let e,t,l=n[12].version+"",i;return{c(){e=f("span"),t=j("v"),i=j(l),r(e,"class","plugin-version svelte-i9gngw")},m(s,o){C(s,e,o),a(e,t),a(e,i)},p(s,o){o&1&&l!==(l=s[12].version+"")&&Q(i,l)},d(s){s&&S(e)}}}function gr(n){let e,t=n[12].description+"",l;return{c(){e=f("div"),l=j(t),r(e,"class","plugin-desc svelte-i9gngw")},m(i,s){C(i,e,s),a(e,l)},p(i,s){s&1&&t!==(t=i[12].description+"")&&Q(l,t)},d(i){i&&S(e)}}}function _r(n){let e,t=(v("settings.author")||"Автор")+"",l,i,s=n[12].author+"",o;return{c(){e=f("span"),l=j(t),i=j(": "),o=j(s)},m(c,u){C(c,e,u),a(e,l),a(e,i),a(e,o)},p(c,u){u&1&&s!==(s=c[12].author+"")&&Q(o,s)},d(c){c&&S(e)}}}function br(n){let e,t=n[12].uiContribs.sidebarItems.length+"",l,i;return{c(){e=f("span"),l=j(t),i=j(" пункт(а) в сайдбаре")},m(s,o){C(s,e,o),a(e,l),a(e,i)},p(s,o){o&1&&t!==(t=s[12].uiContribs.sidebarItems.length+"")&&Q(l,t)},d(s){s&&S(e)}}}function kr(n){let e,t=n[12].uiContribs.nodeTabs.length+"",l,i;return{c(){e=f("span"),l=j(t),i=j(" вкладок(и) в карточке дела")},m(s,o){C(s,e,o),a(e,l),a(e,i)},p(s,o){o&1&&t!==(t=s[12].uiContribs.nodeTabs.length+"")&&Q(l,t)},d(s){s&&S(e)}}}function vr(n){let e;return{c(){e=f("span"),e.textContent="🗖 HTML-панель"},m(t,l){C(t,e,l)},d(t){t&&S(e)}}}function ib(n){let e,t,l,i,s,o,c,u;function d(){return n[8](n[12])}function p(){return n[9](n[12])}return{c(){e=f("div"),t=f("button"),l=f("span"),s=w(),o=f("button"),o.textContent="🗑",r(l,"class","toggle-knob svelte-i9gngw"),r(t,"class","toggle-btn svelte-i9gngw"),r(t,"role","switch"),r(t,"aria-checked",i=n[12].active),ce(t,"active",n[12].active),r(o,"class","uninstall-btn btn-sm svelte-i9gngw"),r(o,"title","Удалить плагин (очистить данные)"),r(e,"class","toggle-group svelte-i9gngw")},m(h,m){C(h,e,m),a(e,t),a(t,l),a(e,s),a(e,o),c||(u=[O(t,"click",d),O(o,"click",p)],c=!0)},p(h,m){n=h,m&1&&i!==(i=n[12].active)&&r(t,"aria-checked",i),m&1&&ce(t,"active",n[12].active)},d(h){h&&S(e),c=!1,Ce(u)}}}function sb(n){let e,t,l;function i(){return n[7](n[12])}return{c(){e=f("button"),e.textContent="📦 Установить",r(e,"class","install-btn svelte-i9gngw")},m(s,o){C(s,e,o),t||(l=O(e,"click",i),t=!0)},p(s,o){n=s},d(s){s&&S(e),t=!1,l()}}}function wr(n){var z,U,H,B;let e,t,l,i=n[12].name+"",s,o,c,u,d,p,h,m,g,b,k,y=n[12].version&&mr(n),E=n[12].description&&gr(n),T=n[12].author&&_r(n),N=((U=(z=n[12].uiContribs)==null?void 0:z.sidebarItems)==null?void 0:U.length)&&br(n),A=((B=(H=n[12].uiContribs)==null?void 0:H.nodeTabs)==null?void 0:B.length)&&kr(n),I=n[12].hasPanel&&vr();function R(W,G){return W[12].installed?ib:sb}let M=R(n),D=M(n);return{c(){e=f("div"),t=f("div"),l=f("div"),s=j(i),o=w(),y&&y.c(),c=w(),E&&E.c(),u=w(),d=f("div"),T&&T.c(),p=w(),N&&N.c(),h=w(),A&&A.c(),m=w(),I&&I.c(),g=w(),b=f("div"),D.c(),k=w(),r(l,"class","plugin-name svelte-i9gngw"),r(d,"class","plugin-meta svelte-i9gngw"),r(t,"class","plugin-info svelte-i9gngw"),r(b,"class","plugin-toggle svelte-i9gngw"),r(e,"class","plugin-card svelte-i9gngw")},m(W,G){C(W,e,G),a(e,t),a(t,l),a(l,s),a(l,o),y&&y.m(l,null),a(t,c),E&&E.m(t,null),a(t,u),a(t,d),T&&T.m(d,null),a(d,p),N&&N.m(d,null),a(d,h),A&&A.m(d,null),a(d,m),I&&I.m(d,null),a(e,g),a(e,b),D.m(b,null),a(e,k)},p(W,G){var V,F,L,q;G&1&&i!==(i=W[12].name+"")&&Q(s,i),W[12].version?y?y.p(W,G):(y=mr(W),y.c(),y.m(l,null)):y&&(y.d(1),y=null),W[12].description?E?E.p(W,G):(E=gr(W),E.c(),E.m(t,u)):E&&(E.d(1),E=null),W[12].author?T?T.p(W,G):(T=_r(W),T.c(),T.m(d,p)):T&&(T.d(1),T=null),(F=(V=W[12].uiContribs)==null?void 0:V.sidebarItems)!=null&&F.length?N?N.p(W,G):(N=br(W),N.c(),N.m(d,h)):N&&(N.d(1),N=null),(q=(L=W[12].uiContribs)==null?void 0:L.nodeTabs)!=null&&q.length?A?A.p(W,G):(A=kr(W),A.c(),A.m(d,m)):A&&(A.d(1),A=null),W[12].hasPanel?I||(I=vr(),I.c(),I.m(d,null)):I&&(I.d(1),I=null),M===(M=R(W))&&D?D.p(W,G):(D.d(1),D=M(W),D&&(D.c(),D.m(b,null)))},d(W){W&&S(e),y&&y.d(),E&&E.d(),T&&T.d(),N&&N.d(),A&&A.d(),I&&I.d(),D.d()}}}function ob(n){let e,t,l,i,s;function o(d,p){return d[1]?lb:d[2]?nb:d[0].length===0?tb:eb}let c=o(n),u=c(n);return{c(){e=f("div"),t=f("h3"),t.textContent=`${v("settings.plugins")||"Плагины"}`,l=w(),i=f("p"),i.textContent="Включение и отключение плагинов. Изменения применяются сразу.",s=w(),u.c(),r(t,"class","svelte-i9gngw"),r(i,"class","hint svelte-i9gngw"),r(e,"class","settings-plugins svelte-i9gngw")},m(d,p){C(d,e,p),a(e,t),a(e,l),a(e,i),a(e,s),u.m(e,null)},p(d,[p]){c===(c=o(d))&&u?u.p(d,p):(u.d(1),u=c(d),u&&(u.c(),u.m(e,null)))},i:oe,o:oe,d(d){d&&S(e),u.d()}}}function il(n,...e){try{if(window.go&&window.go.main&&window.go.main.App){const t=window.go.main.App[n];if(typeof t=="function")return t(...e)}}catch(t){console.error("Wails error:",n,t)}return Promise.reject(new Error("Wails not connected: "+n))}function rb(n,e,t){let{onPluginToggle:l=null}=e,i=[],s=!0,o="";li(async()=>{try{t(0,i=await il("ListPlugins")||[])}catch(g){t(2,o=String(g))}t(1,s=!1)});async function c(g){const b=!g.active;try{await il("SetPluginEnabled",g.name,b),t(0,i=await il("ListPlugins")||[]),l&&l()}catch(k){t(2,o=String(k))}}async function u(g){t(2,o="");try{await il("InstallPlugin",g.name),g.installed=!0,t(0,i=await il("ListPlugins")||[]),l&&l()}catch(b){t(2,o=String(b))}}async function d(g){if(confirm(`Удалить плагин «${g.name}»? Все данные плагина будут очищены. Файлы плагина сохранятся.`)){t(2,o="");try{await il("UninstallPlugin",g.name),g.installed=!1,g.active=!1,t(0,i=await il("ListPlugins")||[]),l&&l()}catch(b){t(2,o=String(b))}}}const p=g=>u(g),h=g=>c(g),m=g=>d(g);return n.$$set=g=>{"onPluginToggle"in g&&t(6,l=g.onPluginToggle)},n.$$.update=()=>{n.$$.dirty&1&&i.reduce((g,b)=>{var k,y;return g+(((y=(k=b.uiContribs)==null?void 0:k.sidebarItems)==null?void 0:y.length)||0)},0),n.$$.dirty&1&&i.reduce((g,b)=>{var k,y;return g+(((y=(k=b.uiContribs)==null?void 0:k.nodeTabs)==null?void 0:y.length)||0)},0)},[i,s,o,c,u,d,l,p,h,m]}class ab extends ut{constructor(e){super(),ct(this,e,rb,ob,at,{onPluginToggle:6})}}function cb(n){let e,t,l,i;return{c(){e=f("div"),t=f("h2"),t.textContent=`${v("settings.files")}`,l=w(),i=f("p"),i.textContent=`${v("settings.filesStub")}`,r(t,"class","svelte-19bo7bn"),r(i,"class","section-desc svelte-19bo7bn"),r(e,"class","settings-section svelte-19bo7bn")},m(s,o){C(s,e,o),a(e,t),a(e,l),a(e,i)},p:oe,i:oe,o:oe,d(s){s&&S(e)}}}class ub extends ut{constructor(e){super(),ct(this,e,null,cb,at,{})}}function fb(n){let e,t,l,i;return{c(){e=f("div"),t=f("h2"),t.textContent=`${v("settings.activity")}`,l=w(),i=f("p"),i.textContent=`${v("settings.activityStub")}`,r(t,"class","svelte-19bo7bn"),r(i,"class","section-desc svelte-19bo7bn"),r(e,"class","settings-section svelte-19bo7bn")},m(s,o){C(s,e,o),a(e,t),a(e,l),a(e,i)},p:oe,i:oe,o:oe,d(s){s&&S(e)}}}class db extends ut{constructor(e){super(),ct(this,e,null,fb,at,{})}}function yr(n){let e,t;return{c(){e=f("div"),t=j(n[2]),r(e,"class","error-msg svelte-1fx1e1e")},m(l,i){C(l,e,i),a(e,t)},p(l,i){i[0]&4&&Q(t,l[2])},d(l){l&&S(e)}}}function Er(n){let e,t;return{c(){e=f("div"),t=j(n[3]),r(e,"class","result-msg svelte-1fx1e1e"),ce(e,"warning",n[4]==="warning")},m(l,i){C(l,e,i),a(e,t)},p(l,i){i[0]&8&&Q(t,l[3]),i[0]&16&&ce(e,"warning",l[4]==="warning")},d(l){l&&S(e)}}}function pb(n){let e,t,l,i,s,o,c,u,d,p,h,m,g,b,k,y,E,T,N,A,I,R,M=v("settings.checkConnection")+"",D,z,U,H,B=v("common.connect")+"",W,G,V,F,L,q=n[11]!==null&&Tr(n);return{c(){e=f("div"),t=f("div"),l=f("div"),i=f("label"),s=f("span"),s.textContent=`${v("settings.serverUrl")}`,o=w(),c=f("input"),u=w(),d=f("div"),p=f("label"),h=f("span"),h.textContent=`${v("sync.username")}`,m=w(),g=f("input"),b=w(),k=f("div"),y=f("label"),E=f("span"),E.textContent=`${v("sync.password")}`,T=w(),N=f("input"),A=w(),I=f("div"),R=f("button"),D=j(M),U=w(),H=f("button"),W=j(B),V=w(),q&&q.c(),r(s,"class","label-text"),r(c,"type","text"),r(c,"placeholder","https://example.com"),r(l,"class","form-group svelte-1fx1e1e"),r(h,"class","label-text"),r(g,"type","text"),r(d,"class","form-group svelte-1fx1e1e"),r(E,"class","label-text"),r(N,"type","password"),r(k,"class","form-group svelte-1fx1e1e"),r(R,"class","btn"),R.disabled=z=n[1]||!n[5],r(H,"class","btn btn-primary"),H.disabled=G=n[1]||!n[5]||!n[6]||!n[7],r(I,"class","sync-setup-actions svelte-1fx1e1e"),r(t,"class","sync-setup svelte-1fx1e1e"),r(e,"class","settings-card svelte-1fx1e1e")},m(P,X){C(P,e,X),a(e,t),a(t,l),a(l,i),a(i,s),a(i,o),a(i,c),Re(c,n[5]),a(t,u),a(t,d),a(d,p),a(p,h),a(p,m),a(p,g),Re(g,n[6]),a(t,b),a(t,k),a(k,y),a(y,E),a(y,T),a(y,N),Re(N,n[7]),a(t,A),a(t,I),a(I,R),a(R,D),a(I,U),a(I,H),a(H,W),a(t,V),q&&q.m(t,null),F||(L=[O(c,"input",n[23]),O(g,"input",n[24]),O(N,"input",n[25]),O(R,"click",n[12]),O(H,"click",n[13])],F=!0)},p(P,X){X[0]&32&&c.value!==P[5]&&Re(c,P[5]),X[0]&64&&g.value!==P[6]&&Re(g,P[6]),X[0]&128&&N.value!==P[7]&&Re(N,P[7]),X[0]&34&&z!==(z=P[1]||!P[5])&&(R.disabled=z),X[0]&226&&G!==(G=P[1]||!P[5]||!P[6]||!P[7])&&(H.disabled=G),P[11]!==null?q?q.p(P,X):(q=Tr(P),q.c(),q.m(t,null)):q&&(q.d(1),q=null)},d(P){P&&S(e),q&&q.d(),F=!1,Ce(L)}}}function hb(n){let e,t,l,i,s,o,c=n[20](n[0].lastStatus)+"",u,d,p,h,m,g,b,k,y,E=v("settings.syncNow")+"",T,N,A,I=v("settings.disconnect")+"",R,M,D,z=v("settings.resetKey")+"",U,H,B,W,G,V,F,L,q,P,X,Y,J=n[0].serverUrl&&Sr(n),ee=n[0].deviceName&&Cr(n),ne=n[0].deviceId&&Ar(n),le=n[0].lastSyncAt&&Nr(n),he=n[0].lastError&&Ir(n);return{c(){e=f("div"),t=f("div"),l=f("div"),i=f("span"),i.textContent=`${v("settings.status")}`,s=w(),o=f("span"),u=j(c),d=w(),J&&J.c(),p=w(),ee&&ee.c(),h=w(),ne&&ne.c(),m=w(),le&&le.c(),g=w(),he&&he.c(),b=w(),k=f("div"),y=f("button"),T=j(E),N=w(),A=f("button"),R=j(I),M=w(),D=f("button"),U=j(z),H=w(),B=f("div"),W=f("label"),G=f("span"),G.textContent=`${v("sync.interval")}`,V=w(),F=f("div"),L=f("input"),q=w(),P=f("button"),P.textContent=`${v("common.save")}`,r(i,"class","info-label svelte-1fx1e1e"),r(o,"class","info-value svelte-1fx1e1e"),ce(o,"status-ok",n[0].lastStatus==="connected"),ce(o,"status-err",n[0].lastStatus==="error"||n[0].lastStatus==="revoked"),r(l,"class","info-row svelte-1fx1e1e"),r(t,"class","sync-info svelte-1fx1e1e"),r(e,"class","settings-card svelte-1fx1e1e"),r(y,"class","btn btn-primary"),y.disabled=n[1],r(A,"class","btn"),A.disabled=n[1],r(D,"class","btn"),D.disabled=n[1],r(k,"class","sync-actions svelte-1fx1e1e"),r(G,"class","label-text"),r(L,"type","number"),r(L,"min","0"),r(L,"placeholder","0"),r(L,"class","svelte-1fx1e1e"),r(P,"class","btn btn-sm"),r(F,"class","interval-row svelte-1fx1e1e"),r(B,"class","sync-interval svelte-1fx1e1e")},m(se,Be){C(se,e,Be),a(e,t),a(t,l),a(l,i),a(l,s),a(l,o),a(o,u),a(t,d),J&&J.m(t,null),a(t,p),ee&&ee.m(t,null),a(t,h),ne&&ne.m(t,null),a(t,m),le&&le.m(t,null),a(t,g),he&&he.m(t,null),C(se,b,Be),C(se,k,Be),a(k,y),a(y,T),a(k,N),a(k,A),a(A,R),a(k,M),a(k,D),a(D,U),C(se,H,Be),C(se,B,Be),a(B,W),a(W,G),a(W,V),a(W,F),a(F,L),Re(L,n[8]),a(F,q),a(F,P),X||(Y=[O(y,"click",n[14]),O(A,"click",n[16]),O(D,"click",n[18]),O(L,"input",n[22]),O(P,"click",n[15])],X=!0)},p(se,Be){Be[0]&1&&c!==(c=se[20](se[0].lastStatus)+"")&&Q(u,c),Be[0]&1&&ce(o,"status-ok",se[0].lastStatus==="connected"),Be[0]&1&&ce(o,"status-err",se[0].lastStatus==="error"||se[0].lastStatus==="revoked"),se[0].serverUrl?J?J.p(se,Be):(J=Sr(se),J.c(),J.m(t,p)):J&&(J.d(1),J=null),se[0].deviceName?ee?ee.p(se,Be):(ee=Cr(se),ee.c(),ee.m(t,h)):ee&&(ee.d(1),ee=null),se[0].deviceId?ne?ne.p(se,Be):(ne=Ar(se),ne.c(),ne.m(t,m)):ne&&(ne.d(1),ne=null),se[0].lastSyncAt?le?le.p(se,Be):(le=Nr(se),le.c(),le.m(t,g)):le&&(le.d(1),le=null),se[0].lastError?he?he.p(se,Be):(he=Ir(se),he.c(),he.m(t,null)):he&&(he.d(1),he=null),Be[0]&2&&(y.disabled=se[1]),Be[0]&2&&(A.disabled=se[1]),Be[0]&2&&(D.disabled=se[1]),Be[0]&256&&Pl(L.value)!==se[8]&&Re(L,se[8])},d(se){se&&(S(e),S(b),S(k),S(H),S(B)),J&&J.d(),ee&&ee.d(),ne&&ne.d(),le&&le.d(),he&&he.d(),X=!1,Ce(Y)}}}function Tr(n){let e,t=(n[11]?v("common.test")+" OK":v("error.generic"))+"",l;return{c(){e=f("div"),l=j(t),r(e,"class","connection-result svelte-1fx1e1e"),ce(e,"ok",n[11]),ce(e,"fail",!n[11])},m(i,s){C(i,e,s),a(e,l)},p(i,s){s[0]&2048&&t!==(t=(i[11]?v("common.test")+" OK":v("error.generic"))+"")&&Q(l,t),s[0]&2048&&ce(e,"ok",i[11]),s[0]&2048&&ce(e,"fail",!i[11])},d(i){i&&S(e)}}}function Sr(n){let e,t,l,i,s=n[0].serverUrl+"",o;return{c(){e=f("div"),t=f("span"),t.textContent=`${v("settings.serverUrl")}`,l=w(),i=f("span"),o=j(s),r(t,"class","info-label svelte-1fx1e1e"),r(i,"class","info-value mono svelte-1fx1e1e"),r(e,"class","info-row svelte-1fx1e1e")},m(c,u){C(c,e,u),a(e,t),a(e,l),a(e,i),a(i,o)},p(c,u){u[0]&1&&s!==(s=c[0].serverUrl+"")&&Q(o,s)},d(c){c&&S(e)}}}function Cr(n){let e,t,l,i,s=n[0].deviceName+"",o;return{c(){e=f("div"),t=f("span"),t.textContent=`${v("settings.deviceName")}`,l=w(),i=f("span"),o=j(s),r(t,"class","info-label svelte-1fx1e1e"),r(i,"class","info-value svelte-1fx1e1e"),r(e,"class","info-row svelte-1fx1e1e")},m(c,u){C(c,e,u),a(e,t),a(e,l),a(e,i),a(i,o)},p(c,u){u[0]&1&&s!==(s=c[0].deviceName+"")&&Q(o,s)},d(c){c&&S(e)}}}function Ar(n){let e,t,l,i,s=n[0].deviceId+"",o;return{c(){e=f("div"),t=f("span"),t.textContent=`${v("settings.deviceId")}`,l=w(),i=f("span"),o=j(s),r(t,"class","info-label svelte-1fx1e1e"),r(i,"class","info-value mono svelte-1fx1e1e"),r(e,"class","info-row svelte-1fx1e1e")},m(c,u){C(c,e,u),a(e,t),a(e,l),a(e,i),a(i,o)},p(c,u){u[0]&1&&s!==(s=c[0].deviceId+"")&&Q(o,s)},d(c){c&&S(e)}}}function Nr(n){let e,t,l,i,s=n[0].lastSyncAt+"",o;return{c(){e=f("div"),t=f("span"),t.textContent=`${v("settings.lastSync")}`,l=w(),i=f("span"),o=j(s),r(t,"class","info-label svelte-1fx1e1e"),r(i,"class","info-value svelte-1fx1e1e"),r(e,"class","info-row svelte-1fx1e1e")},m(c,u){C(c,e,u),a(e,t),a(e,l),a(e,i),a(i,o)},p(c,u){u[0]&1&&s!==(s=c[0].lastSyncAt+"")&&Q(o,s)},d(c){c&&S(e)}}}function Ir(n){let e,t,l,i,s=n[0].lastError+"",o;return{c(){e=f("div"),t=f("span"),t.textContent=`${v("settings.lastError")}`,l=w(),i=f("span"),o=j(s),r(t,"class","info-label svelte-1fx1e1e"),r(i,"class","info-value error svelte-1fx1e1e"),r(e,"class","info-row svelte-1fx1e1e")},m(c,u){C(c,e,u),a(e,t),a(e,l),a(e,i),a(i,o)},p(c,u){u[0]&1&&s!==(s=c[0].lastError+"")&&Q(o,s)},d(c){c&&S(e)}}}function Mr(n){let e,t,l,i,s,o,c,u,d,p,h,m;return{c(){e=f("button"),t=f("div"),l=f("h3"),l.textContent=`${v("settings.confirmDisconnect")}`,i=w(),s=f("p"),s.textContent=`${v("settings.confirmDisconnectDesc")}`,o=w(),c=f("div"),u=f("button"),u.textContent=`${v("common.disconnect")}`,d=w(),p=f("button"),p.textContent=`${v("common.cancel")}`,r(l,"class","svelte-1fx1e1e"),r(s,"class","modal-desc svelte-1fx1e1e"),r(u,"class","btn btn-danger"),r(p,"class","btn"),r(c,"class","modal-actions svelte-1fx1e1e"),r(t,"class","modal svelte-1fx1e1e"),r(e,"class","modal-overlay svelte-1fx1e1e")},m(g,b){C(g,e,b),a(e,t),a(t,l),a(t,i),a(t,s),a(t,o),a(t,c),a(c,u),a(c,d),a(c,p),h||(m=[O(u,"click",n[17]),O(p,"click",n[26]),O(e,"click",n[27])],h=!0)},p:oe,d(g){g&&S(e),h=!1,Ce(m)}}}function Rr(n){let e,t,l,i,s,o,c,u,d,p,h,m;return{c(){e=f("button"),t=f("div"),l=f("h3"),l.textContent=`${v("settings.confirmResetKey")}`,i=w(),s=f("p"),s.textContent=`${v("settings.confirmResetKeyDesc")}`,o=w(),c=f("div"),u=f("button"),u.textContent=`${v("settings.resetKey")}`,d=w(),p=f("button"),p.textContent=`${v("common.cancel")}`,r(l,"class","svelte-1fx1e1e"),r(s,"class","modal-desc svelte-1fx1e1e"),r(u,"class","btn btn-danger"),r(p,"class","btn"),r(c,"class","modal-actions svelte-1fx1e1e"),r(t,"class","modal svelte-1fx1e1e"),r(e,"class","modal-overlay svelte-1fx1e1e")},m(g,b){C(g,e,b),a(e,t),a(t,l),a(t,i),a(t,s),a(t,o),a(t,c),a(c,u),a(c,d),a(c,p),h||(m=[O(u,"click",n[19]),O(p,"click",n[28]),O(e,"click",n[29])],h=!0)},p:oe,d(g){g&&S(e),h=!1,Ce(m)}}}function mb(n){let e,t,l,i,s,o,c,u,d,p,h=n[2]&&yr(n),m=n[3]&&!n[2]&&Er(n);function g(T,N){return T[0]&&T[0].enabled?hb:pb}let b=g(n),k=b(n),y=n[9]&&Mr(n),E=n[10]&&Rr(n);return{c(){e=f("div"),t=f("h2"),t.textContent=`${v("settings.sync")}`,l=w(),i=f("p"),i.textContent=`${v("settings.syncDesc")}`,s=w(),h&&h.c(),o=w(),m&&m.c(),c=w(),k.c(),u=w(),y&&y.c(),d=w(),E&&E.c(),p=vt(),r(t,"class","svelte-1fx1e1e"),r(i,"class","section-desc svelte-1fx1e1e"),r(e,"class","settings-section svelte-1fx1e1e")},m(T,N){C(T,e,N),a(e,t),a(e,l),a(e,i),a(e,s),h&&h.m(e,null),a(e,o),m&&m.m(e,null),a(e,c),k.m(e,null),C(T,u,N),y&&y.m(T,N),C(T,d,N),E&&E.m(T,N),C(T,p,N)},p(T,N){T[2]?h?h.p(T,N):(h=yr(T),h.c(),h.m(e,o)):h&&(h.d(1),h=null),T[3]&&!T[2]?m?m.p(T,N):(m=Er(T),m.c(),m.m(e,c)):m&&(m.d(1),m=null),b===(b=g(T))&&k?k.p(T,N):(k.d(1),k=b(T),k&&(k.c(),k.m(e,null))),T[9]?y?y.p(T,N):(y=Mr(T),y.c(),y.m(d.parentNode,d)):y&&(y.d(1),y=null),T[10]?E?E.p(T,N):(E=Rr(T),E.c(),E.m(p.parentNode,p)):E&&(E.d(1),E=null)},i:oe,o:oe,d(T){T&&(S(e),S(u),S(d),S(p)),h&&h.d(),m&&m.d(),k.d(),y&&y.d(T),E&&E.d(T)}}}function sl(n,...e){try{if(window.go&&window.go.main&&window.go.main.App){const t=window.go.main.App[n];if(typeof t=="function")return t(...e)}}catch(t){console.error("Wails error:",n,t)}return Promise.reject(new Error("Wails not connected: "+n))}function gb(n,e,t){let{onRefresh:l=null}=e,i=null,s=!1,o="",c="",u="",d="",p="",h="",m=0,g=!1,b=!1,k=null;async function y(){try{t(0,i=await sl("GetSyncSettings")),i&&(t(5,d=i.serverUrl||""),t(8,m=i.syncInterval||0))}catch{t(0,i=null)}}y();async function E(){t(1,s=!0),t(2,o=""),t(4,u=""),t(11,k=null);try{await sl("SyncTestConnection",d,p,h),t(11,k=!0),t(3,c="connection ok")}catch(P){t(11,k=!1),t(3,c="connection failed: "+String(P))}t(1,s=!1)}async function T(){t(1,s=!0),t(2,o=""),t(4,u="");try{await sl("SyncConfigure",d,p,h),t(3,c="configured"),t(6,p=""),t(7,h=""),await y(),l&&l()}catch(P){t(2,o=String(P))}t(1,s=!1)}function N(P){const X=Array.isArray(P==null?void 0:P.conflicts)?P.conflicts:[],Y=Array.isArray(P==null?void 0:P.applyErrors)?P.applyErrors:[],J=[];return X.length>0&&J.push(v("sync.conflictsCount",{count:X.length})),Y.length>0&&J.push(v("sync.applyErrorsCount",{count:Y.length})),J.join(" · ")}async function A(){t(1,s=!0),t(2,o=""),t(4,u="");try{const P=await sl("SyncNow"),X=v("sync.pushedPulled",{pushed:(P==null?void 0:P.pushed)||0,pulled:(P==null?void 0:P.pulled)||0}),Y=N(P);t(3,c=Y?X+" · "+Y:X),t(4,u=Y?"warning":""),await y(),l&&l()}catch(P){t(2,o=String(P))}t(1,s=!1)}async function I(){try{await sl("SyncSetInterval",m),t(3,c=v("sync.settingsSaved")),t(4,u="")}catch(P){t(2,o=String(P))}}function R(){t(9,g=!0)}async function M(){t(9,g=!1),t(1,s=!0),t(4,u="");try{await sl("SyncDisconnect"),t(3,c="disconnected"),await y(),l&&l()}catch(P){t(2,o=String(P))}t(1,s=!1)}function D(){t(10,b=!0)}async function z(){t(10,b=!1),t(1,s=!0),t(4,u="");try{await sl("ResetSyncKey"),t(3,c="key reset"),await y(),l&&l()}catch(P){t(2,o=String(P))}t(1,s=!1)}function U(P){return P?{connected:v("settings.connected"),disconnected:v("settings.disconnected"),disabled:v("settings.notConfigured"),error:v("settings.error"),revoked:v("settings.revoked")}[P]||P:v("settings.notConfigured")}function H(){m=Pl(this.value),t(8,m)}function B(){d=this.value,t(5,d)}function W(){p=this.value,t(6,p)}function G(){h=this.value,t(7,h)}const V=()=>t(9,g=!1),F=()=>t(9,g=!1),L=()=>t(10,b=!1),q=()=>t(10,b=!1);return n.$$set=P=>{"onRefresh"in P&&t(21,l=P.onRefresh)},[i,s,o,c,u,d,p,h,m,g,b,k,E,T,A,I,R,M,D,z,U,l,H,B,W,G,V,F,L,q]}class _b extends ut{constructor(e){super(),ct(this,e,gb,mb,at,{onRefresh:21},null,[-1,-1])}}function bb(n){let e,t,l,i;return{c(){e=f("div"),t=f("h2"),t.textContent=`${v("settings.backup")}`,l=w(),i=f("p"),i.textContent=`${v("settings.backupStub")}`,r(t,"class","svelte-19bo7bn"),r(i,"class","section-desc svelte-19bo7bn"),r(e,"class","settings-section svelte-19bo7bn")},m(s,o){C(s,e,o),a(e,t),a(e,l),a(e,i)},p:oe,i:oe,o:oe,d(s){s&&S(e)}}}class kb extends ut{constructor(e){super(),ct(this,e,null,bb,at,{})}}function Lr(n){let e,t;return{c(){e=f("div"),t=j(n[5]),r(e,"class","status-msg svelte-13i6m7m"),ce(e,"ok",n[6]==="ok"),ce(e,"error",n[6]==="error")},m(l,i){C(l,e,i),a(e,t)},p(l,i){i&32&&Q(t,l[5]),i&64&&ce(e,"ok",l[6]==="ok"),i&64&&ce(e,"error",l[6]==="error")},d(l){l&&S(e)}}}function Dr(n){let e,t,l,i,s,o;return{c(){e=f("div"),t=f("span"),t.textContent="Активный порт",l=w(),i=f("span"),s=j("127.0.0.1:"),o=j(n[3]),r(t,"class","info-label svelte-13i6m7m"),r(i,"class","info-value mono svelte-13i6m7m"),r(e,"class","info-row svelte-13i6m7m")},m(c,u){C(c,e,u),a(e,t),a(e,l),a(e,i),a(i,s),a(i,o)},p(c,u){u&8&&Q(o,c[3])},d(c){c&&S(e)}}}function Or(n){let e,t,l,i;return{c(){e=f("button"),t=j("Перезапустить сервер"),r(e,"class","btn"),e.disabled=n[4]},m(s,o){C(s,e,o),a(e,t),l||(i=O(e,"click",n[8]),l=!0)},p(s,o){o&16&&(e.disabled=s[4])},d(s){s&&S(e),l=!1,i()}}}function vb(n){let e,t,l,i,s,o,c,u,d,p,h,m,g,b,k,y,E,T,N,A,I,R,M,D,z,U,H,B=n[2]?"Запущен":"Остановлен",W,G,V,F,L,q,P,X,Y,J=n[5]&&Lr(n),ee=n[2]&&n[3]&&Dr(n),ne=n[0]&&Or(n);return{c(){e=f("div"),t=f("h2"),t.textContent="Browser Bridge",l=w(),i=f("p"),i.textContent=`Локальный HTTP-сервер для приёма событий от браузерного расширения Verstak Bridge. - Работает только на 127.0.0.1.`,s=w(),J&&J.c(),o=w(),c=f("div"),u=f("div"),d=f("label"),p=f("input"),h=w(),m=f("span"),m.textContent="Включить Browser Bridge",g=w(),b=f("div"),k=f("label"),y=f("span"),y.textContent="Порт",E=w(),T=f("input"),A=w(),I=f("p"),I.textContent="По умолчанию: 9786. Требуется перезапуск сервера при изменении.",R=w(),M=f("div"),D=f("div"),z=f("span"),z.textContent="Статус",U=w(),H=f("span"),W=j(B),G=w(),ee&&ee.c(),V=w(),F=f("div"),L=f("button"),q=j("Сохранить"),P=w(),ne&&ne.c(),r(t,"class","svelte-13i6m7m"),r(i,"class","section-desc svelte-13i6m7m"),r(p,"type","checkbox"),r(m,"class","toggle-text svelte-13i6m7m"),r(d,"class","toggle-label svelte-13i6m7m"),r(u,"class","form-group svelte-13i6m7m"),r(y,"class","label-text svelte-13i6m7m"),r(T,"type","number"),r(T,"min","1024"),r(T,"max","65535"),T.disabled=N=!n[0],r(T,"class","svelte-13i6m7m"),r(I,"class","field-hint svelte-13i6m7m"),r(b,"class","form-group svelte-13i6m7m"),r(z,"class","info-label svelte-13i6m7m"),r(H,"class","info-value svelte-13i6m7m"),ce(H,"status-ok",n[2]),ce(H,"status-off",!n[2]),r(D,"class","info-row svelte-13i6m7m"),r(M,"class","bridge-status svelte-13i6m7m"),r(c,"class","settings-card svelte-13i6m7m"),r(L,"class","btn btn-primary"),L.disabled=n[4],r(F,"class","actions svelte-13i6m7m"),r(e,"class","settings-section svelte-13i6m7m")},m(le,he){C(le,e,he),a(e,t),a(e,l),a(e,i),a(e,s),J&&J.m(e,null),a(e,o),a(e,c),a(c,u),a(u,d),a(d,p),p.checked=n[0],a(d,h),a(d,m),a(c,g),a(c,b),a(b,k),a(k,y),a(k,E),a(k,T),Re(T,n[1]),a(b,A),a(b,I),a(c,R),a(c,M),a(M,D),a(D,z),a(D,U),a(D,H),a(H,W),a(M,G),ee&&ee.m(M,null),a(e,V),a(e,F),a(F,L),a(L,q),a(F,P),ne&&ne.m(F,null),X||(Y=[O(p,"change",n[10]),O(T,"input",n[11]),O(L,"click",n[7])],X=!0)},p(le,[he]){le[5]?J?J.p(le,he):(J=Lr(le),J.c(),J.m(e,o)):J&&(J.d(1),J=null),he&1&&(p.checked=le[0]),he&1&&N!==(N=!le[0])&&(T.disabled=N),he&2&&Pl(T.value)!==le[1]&&Re(T,le[1]),he&4&&B!==(B=le[2]?"Запущен":"Остановлен")&&Q(W,B),he&4&&ce(H,"status-ok",le[2]),he&4&&ce(H,"status-off",!le[2]),le[2]&&le[3]?ee?ee.p(le,he):(ee=Dr(le),ee.c(),ee.m(M,null)):ee&&(ee.d(1),ee=null),he&16&&(L.disabled=le[4]),le[0]?ne?ne.p(le,he):(ne=Or(le),ne.c(),ne.m(F,null)):ne&&(ne.d(1),ne=null)},i:oe,o:oe,d(le){le&&S(e),J&&J.d(),ee&&ee.d(),ne&&ne.d(),X=!1,Ce(Y)}}}function wb(n,e,t){let{appConfig:l=null}=e,i=!1,s=9786,o=!1,c=0,u=!1,d="",p="";function h(){if(l&&l.vault&&l.vault.bridge){const E=l.vault.bridge;t(0,i=E.enabled!==!1),t(1,s=E.port||9786)}}async function m(){try{if(window.go&&window.go.main&&window.go.main.App){const E=await window.go.main.App.BridgeInfo();t(2,o=E.running||!1),t(3,c=E.port||0)}}catch{t(2,o=!1),t(3,c=0)}}h(),m();async function g(){t(4,u=!0),t(5,d=""),t(6,p="");try{l||t(9,l={}),l.vault||t(9,l.vault={},l),l.vault.bridge||t(9,l.vault.bridge={},l),t(9,l.vault.bridge.enabled=i,l),t(9,l.vault.bridge.port=s,l),window.go&&window.go.main&&window.go.main.App&&await window.go.main.App.SaveAppConfig(l),t(5,d="saved"),t(6,p="ok"),await m()}catch(E){t(5,d=String(E)),t(6,p="error")}t(4,u=!1)}async function b(){t(4,u=!0),t(5,d=""),t(6,p="");try{window.go&&window.go.main&&window.go.main.App&&await window.go.main.App.RestartBridge(),t(5,d="bridge restarted"),t(6,p="ok"),await m()}catch(E){t(5,d=String(E)),t(6,p="error")}t(4,u=!1)}function k(){i=this.checked,t(0,i)}function y(){s=Pl(this.value),t(1,s)}return n.$$set=E=>{"appConfig"in E&&t(9,l=E.appConfig)},[i,s,o,c,u,d,p,g,b,l,k,y]}class yb extends ut{constructor(e){super(),ct(this,e,wb,vb,at,{appConfig:9})}}const{window:Eb}=Rs;function Tb(n){let e,t;return e=new yb({props:{appConfig:n[2]}}),{c(){xe(e.$$.fragment)},m(l,i){Xe(e,l,i),t=!0},p(l,i){const s={};i&4&&(s.appConfig=l[2]),e.$set(s)},i(l){t||(ge(e.$$.fragment,l),t=!0)},o(l){ke(e.$$.fragment,l),t=!1},d(l){Je(e,l)}}}function Sb(n){let e,t;return e=new kb({}),{c(){xe(e.$$.fragment)},m(l,i){Xe(e,l,i),t=!0},p:oe,i(l){t||(ge(e.$$.fragment,l),t=!0)},o(l){ke(e.$$.fragment,l),t=!1},d(l){Je(e,l)}}}function Cb(n){let e,t;return e=new _b({props:{onRefresh:n[7]}}),{c(){xe(e.$$.fragment)},m(l,i){Xe(e,l,i),t=!0},p:oe,i(l){t||(ge(e.$$.fragment,l),t=!0)},o(l){ke(e.$$.fragment,l),t=!1},d(l){Je(e,l)}}}function Ab(n){let e,t;return e=new db({}),{c(){xe(e.$$.fragment)},m(l,i){Xe(e,l,i),t=!0},p:oe,i(l){t||(ge(e.$$.fragment,l),t=!0)},o(l){ke(e.$$.fragment,l),t=!1},d(l){Je(e,l)}}}function Nb(n){let e,t;return e=new ub({}),{c(){xe(e.$$.fragment)},m(l,i){Xe(e,l,i),t=!0},p:oe,i(l){t||(ge(e.$$.fragment,l),t=!0)},o(l){ke(e.$$.fragment,l),t=!1},d(l){Je(e,l)}}}function Ib(n){let e,t;return e=new ab({props:{onPluginToggle:n[0]}}),{c(){xe(e.$$.fragment)},m(l,i){Xe(e,l,i),t=!0},p(l,i){const s={};i&1&&(s.onPluginToggle=l[0]),e.$set(s)},i(l){t||(ge(e.$$.fragment,l),t=!0)},o(l){ke(e.$$.fragment,l),t=!1},d(l){Je(e,l)}}}function Mb(n){let e,t;return e=new $_({props:{onRefresh:n[3]}}),{c(){xe(e.$$.fragment)},m(l,i){Xe(e,l,i),t=!0},p:oe,i(l){t||(ge(e.$$.fragment,l),t=!0)},o(l){ke(e.$$.fragment,l),t=!1},d(l){Je(e,l)}}}function Rb(n){let e,t;return e=new Z_({props:{onRefresh:n[3]}}),{c(){xe(e.$$.fragment)},m(l,i){Xe(e,l,i),t=!0},p:oe,i(l){t||(ge(e.$$.fragment,l),t=!0)},o(l){ke(e.$$.fragment,l),t=!1},d(l){Je(e,l)}}}function Lb(n){let e,t;return e=new H_({props:{appConfig:n[2],onSave:n[6]}}),{c(){xe(e.$$.fragment)},m(l,i){Xe(e,l,i),t=!0},p(l,i){const s={};i&4&&(s.appConfig=l[2]),e.$set(s)},i(l){t||(ge(e.$$.fragment,l),t=!0)},o(l){ke(e.$$.fragment,l),t=!1},d(l){Je(e,l)}}}function Db(n){let e,t,l,i,s,o,c,u,d,p,h,m,g,b,k,y;d=new F_({props:{activeSection:n[1],onSelect:n[4]}});const E=[Lb,Rb,Mb,Ib,Nb,Ab,Cb,Sb,Tb],T=[];function N(A,I){return A[1]==="general"?0:A[1]==="workspace"?1:A[1]==="templates"?2:A[1]==="plugins"?3:A[1]==="files"?4:A[1]==="activity"?5:A[1]==="sync"?6:A[1]==="backup"?7:A[1]==="browserBridge"?8:-1}return~(m=N(n))&&(g=T[m]=E[m](n)),{c(){e=f("button"),t=f("div"),l=f("div"),i=f("h2"),i.textContent=`${v("settings.title")}`,s=w(),o=f("button"),o.innerHTML='',c=w(),u=f("div"),xe(d.$$.fragment),p=w(),h=f("div"),g&&g.c(),r(i,"class","svelte-zf2zsc"),r(o,"class","close-btn svelte-zf2zsc"),r(o,"title",v("settings.close")),r(l,"class","settings-header svelte-zf2zsc"),r(h,"class","settings-content svelte-zf2zsc"),r(u,"class","settings-body svelte-zf2zsc"),r(t,"class","settings-window svelte-zf2zsc"),r(e,"class","settings-overlay svelte-zf2zsc")},m(A,I){C(A,e,I),a(e,t),a(t,l),a(l,i),a(l,s),a(l,o),a(t,c),a(t,u),Xe(d,u,null),a(u,p),a(u,h),~m&&T[m].m(h,null),b=!0,k||(y=[O(Eb,"keydown",n[8]),O(o,"click",n[5]),O(e,"click",Qt(n[5]))],k=!0)},p(A,[I]){const R={};I&2&&(R.activeSection=A[1]),d.$set(R);let M=m;m=N(A),m===M?~m&&T[m].p(A,I):(g&&(yt(),ke(T[M],1,1,()=>{T[M]=null}),Et()),~m?(g=T[m],g?g.p(A,I):(g=T[m]=E[m](A),g.c()),ge(g,1),g.m(h,null)):g=null)},i(A){b||(ge(d.$$.fragment,A),ge(g),b=!0)},o(A){ke(d.$$.fragment,A),ke(g),b=!1},d(A){A&&S(e),Je(d),~m&&T[m].d(),k=!1,Ce(y)}}}function qr(n,...e){try{if(window.go&&window.go.main&&window.go.main.App){const t=window.go.main.App[n];if(typeof t=="function")return t(...e)}}catch(t){console.error("Wails error:",n,t)}return Promise.reject(new Error("Wails not connected: "+n))}function Ob(n,e,t){let{onClose:l=null}=e,{onSyncRefresh:i=null}=e,{onPluginToggle:s=null}=e,{initialSection:o="general"}=e,c=o,u=null;async function d(){try{t(2,u=await qr("GetAppConfig"))}catch{t(2,u=null)}}d();function p(k){t(1,c=k)}function h(){l&&l()}async function m(k){try{await qr("SaveAppConfig",k),t(2,u=k)}catch(y){console.error(y)}}function g(){i&&i()}function b(k){k.key==="Escape"&&h()}return n.$$set=k=>{"onClose"in k&&t(9,l=k.onClose),"onSyncRefresh"in k&&t(10,i=k.onSyncRefresh),"onPluginToggle"in k&&t(0,s=k.onPluginToggle),"initialSection"in k&&t(11,o=k.initialSection)},[s,c,u,d,p,h,m,g,b,l,i,o]}class qb extends ut{constructor(e){super(),ct(this,e,Ob,Db,at,{onClose:9,onSyncRefresh:10,onPluginToggle:0,initialSection:11})}}function Pb(n){let e,t,l,i,s,o,c,u;return{c(){e=f("div"),t=f("span"),l=w(),i=f("span"),i.textContent=`${v("sync.status.disabled")}`,s=w(),o=f("button"),o.textContent=`${v("sync.configure")}`,r(t,"class","sync-dot dot-disabled svelte-1rxbx0"),r(i,"class","sync-label svelte-1rxbx0"),r(o,"class","btn btn-xs svelte-1rxbx0"),r(e,"class","sync-status-row svelte-1rxbx0")},m(d,p){C(d,e,p),a(e,t),a(e,l),a(e,i),a(e,s),a(e,o),c||(u=O(o,"click",function(){dl(n[5])&&n[5].apply(this,arguments)}),c=!0)},p(d,p){n=d},d(d){d&&S(e),c=!1,u()}}}function zb(n){let e,t,l,i,s,o=n[7](n[0])+"",c,u,d,p,h,m=(n[1]?v("sync.running"):v("sync.run"))+"",g,b,k,y,E,T,N,A=n[0].unpushedOps>0&&Pr(n),I=n[2]&&zr(n);return{c(){e=f("div"),t=f("span"),i=w(),s=f("span"),c=j(o),u=w(),A&&A.c(),d=w(),p=f("div"),h=f("button"),g=j(m),b=w(),k=f("button"),k.textContent=`${v("sync.details")}`,y=w(),I&&I.c(),E=vt(),r(t,"class",l="sync-dot "+n[6](n[0])+" svelte-1rxbx0"),r(s,"class","sync-label svelte-1rxbx0"),r(h,"class","btn btn-xs svelte-1rxbx0"),h.disabled=n[1],r(k,"class","btn btn-xs btn-link svelte-1rxbx0"),r(p,"class","sync-actions-row svelte-1rxbx0"),r(e,"class","sync-status-row svelte-1rxbx0")},m(R,M){C(R,e,M),a(e,t),a(e,i),a(e,s),a(s,c),a(e,u),A&&A.m(e,null),a(e,d),a(e,p),a(p,h),a(h,g),a(p,b),a(p,k),C(R,y,M),I&&I.m(R,M),C(R,E,M),T||(N=[O(h,"click",function(){dl(n[4])&&n[4].apply(this,arguments)}),O(k,"click",function(){dl(n[5])&&n[5].apply(this,arguments)})],T=!0)},p(R,M){n=R,M&1&&l!==(l="sync-dot "+n[6](n[0])+" svelte-1rxbx0")&&r(t,"class",l),M&1&&o!==(o=n[7](n[0])+"")&&Q(c,o),n[0].unpushedOps>0?A?A.p(n,M):(A=Pr(n),A.c(),A.m(e,d)):A&&(A.d(1),A=null),M&2&&m!==(m=(n[1]?v("sync.running"):v("sync.run"))+"")&&Q(g,m),M&2&&(h.disabled=n[1]),n[2]?I?I.p(n,M):(I=zr(n),I.c(),I.m(E.parentNode,E)):I&&(I.d(1),I=null)},d(R){R&&(S(e),S(y),S(E)),A&&A.d(),I&&I.d(R),T=!1,Ce(N)}}}function Pr(n){let e,t=n[0].unpushedOps+"",l,i,s=v("sync.changes")+"",o;return{c(){e=f("span"),l=j(t),i=w(),o=j(s),r(e,"class","sync-count svelte-1rxbx0")},m(c,u){C(c,e,u),a(e,l),a(e,i),a(e,o)},p(c,u){u&1&&t!==(t=c[0].unpushedOps+"")&&Q(l,t)},d(c){c&&S(e)}}}function zr(n){let e,t,l;return{c(){e=f("div"),t=j(n[2]),r(e,"class",l=Uo(n[3]==="warning"?"sync-message sync-message-warning":"sync-message")+" svelte-1rxbx0")},m(i,s){C(i,e,s),a(e,t)},p(i,s){s&4&&Q(t,i[2]),s&8&&l!==(l=Uo(i[3]==="warning"?"sync-message sync-message-warning":"sync-message")+" svelte-1rxbx0")&&r(e,"class",l)},d(i){i&&S(e)}}}function Bb(n){let e;function t(s,o){var c;return(c=s[0])!=null&&c.configured?zb:Pb}let l=t(n),i=l(n);return{c(){e=f("div"),i.c(),r(e,"class","sync-status-widget svelte-1rxbx0")},m(s,o){C(s,e,o),i.m(e,null)},p(s,[o]){l===(l=t(s))&&i?i.p(s,o):(i.d(1),i=l(s),i&&(i.c(),i.m(e,null)))},i:oe,o:oe,d(s){s&&S(e),i.d()}}}function Fb(n,e,t){let{syncStatus:l=null}=e,{syncLoading:i=!1}=e,{syncMessage:s=""}=e,{syncMessageKind:o=""}=e,{onSync:c=null}=e,{onOpenSettings:u=null}=e;function d(h){return!h||!h.configured?"dot-disabled":i?"dot-syncing":h.revoked?"dot-disabled":h.connected?"dot-connected":h.configured?"dot-warning":"dot-disabled"}function p(h){return!h||!h.configured?v("sync.status.disabled"):i?v("sync.status.syncing"):h.revoked?v("sync.status.error"):h.connected?v("sync.status.connected"):v("sync.status.disconnected")}return n.$$set=h=>{"syncStatus"in h&&t(0,l=h.syncStatus),"syncLoading"in h&&t(1,i=h.syncLoading),"syncMessage"in h&&t(2,s=h.syncMessage),"syncMessageKind"in h&&t(3,o=h.syncMessageKind),"onSync"in h&&t(4,c=h.onSync),"onOpenSettings"in h&&t(5,u=h.onOpenSettings)},[l,i,s,o,c,u,d,p]}class jb extends ut{constructor(e){super(),ct(this,e,Fb,Bb,at,{syncStatus:0,syncLoading:1,syncMessage:2,syncMessageKind:3,onSync:4,onOpenSettings:5})}}function Br(n,e,t){const l=n.slice();return l[10]=e[t],l}function Ub(n){let e,t=Te(n[0]),l=[];for(let i=0;i0&&Fr(n),M=n[10].ts_start&&jr(n),D=n[10].status!=="pending"&&Ur(n),z=n[10].selected_text&&Hr(n),U=n[10].status==="pending"&&Wr(n);return{c(){e=f("div"),t=f("div"),i=j(l),s=w(),o=f("div"),c=f("div"),d=j(u),p=w(),h=f("div"),g=j(m),k=w(),y=f("div"),R&&R.c(),E=w(),M&&M.c(),T=w(),D&&D.c(),N=w(),z&&z.c(),A=w(),U&&U.c(),I=w(),r(t,"class","event-icon svelte-slao4o"),r(c,"class","event-domain svelte-slao4o"),r(h,"class","event-title svelte-slao4o"),r(h,"title",b=n[10].title),r(y,"class","event-meta svelte-slao4o"),r(o,"class","event-body svelte-slao4o"),r(e,"class","event-item svelte-slao4o"),ce(e,"pending",n[10].status==="pending")},m(H,B){C(H,e,B),a(e,t),a(t,i),a(e,s),a(e,o),a(o,c),a(c,d),a(o,p),a(o,h),a(h,g),a(o,k),a(o,y),R&&R.m(y,null),a(y,E),M&&M.m(y,null),a(y,T),D&&D.m(y,null),a(o,N),z&&z.m(o,null),a(e,A),U&&U.m(e,null),a(e,I)},p(H,B){B&1&&l!==(l=Kr(H[10].type)+"")&&Q(i,l),B&1&&u!==(u=(H[10].domain||"?")+"")&&Q(d,u),B&1&&m!==(m=Li(H[10].title||H[10].url,80)+"")&&Q(g,m),B&1&&b!==(b=H[10].title)&&r(h,"title",b),H[10].active_seconds>0?R?R.p(H,B):(R=Fr(H),R.c(),R.m(y,E)):R&&(R.d(1),R=null),H[10].ts_start?M?M.p(H,B):(M=jr(H),M.c(),M.m(y,T)):M&&(M.d(1),M=null),H[10].status!=="pending"?D?D.p(H,B):(D=Ur(H),D.c(),D.m(y,null)):D&&(D.d(1),D=null),H[10].selected_text?z?z.p(H,B):(z=Hr(H),z.c(),z.m(o,null)):z&&(z.d(1),z=null),H[10].status==="pending"?U?U.p(H,B):(U=Wr(H),U.c(),U.m(e,I)):U&&(U.d(1),U=null),B&1&&ce(e,"pending",H[10].status==="pending")},d(H){H&&S(e),R&&R.d(),M&&M.d(),D&&D.d(),z&&z.d(),U&&U.d()}}}function Wb(n){let e;return{c(){e=f("p"),e.textContent=`${v("noBrowserEvents","Нет событий браузера")}`,r(e,"class","empty-text svelte-slao4o")},m(t,l){C(t,e,l)},d(t){t&&S(e)}}}function Gb(n){let e;return{c(){e=f("p"),e.textContent=`${v("loading","Загрузка...")}`,r(e,"class","loading svelte-slao4o")},m(t,l){C(t,e,l)},d(t){t&&S(e)}}}function Kb(n){let e,t,l,i,s,o=n[1]?"⏳":"🔄",c,u,d,p;function h(b,k){return b[0].length===0?Hb:Ub}let m=h(n),g=m(n);return{c(){e=f("div"),t=f("div"),l=f("h3"),l.textContent=`${v("browserEvents","События браузера")}`,i=w(),s=f("button"),c=j(o),u=w(),g.c(),r(l,"class","svelte-slao4o"),r(s,"class","refresh-btn svelte-slao4o"),s.disabled=n[1],r(t,"class","browser-header svelte-slao4o"),r(e,"class","browser-events svelte-slao4o")},m(b,k){C(b,e,k),a(e,t),a(t,l),a(t,i),a(t,s),a(s,c),a(e,u),g.m(e,null),d||(p=O(s,"click",function(){dl(n[5])&&n[5].apply(this,arguments)}),d=!0)},p(b,[k]){n=b,k&2&&o!==(o=n[1]?"⏳":"🔄")&&Q(c,o),k&2&&(s.disabled=n[1]),m===(m=h(n))&&g?g.p(n,k):(g.d(1),g=m(n),g&&(g.c(),g.m(e,null)))},i:oe,o:oe,d(b){b&&S(e),g.d(),d=!1,p()}}}function Kr(n){return n==="page_visit"?"🌐":n==="note_capture"?"📝":n==="screenshot"?"📸":"•"}function Li(n,e){return n?n.length>e?n.substring(0,e)+"...":n:""}function Vb(n,e,t){let{events:l=[]}=e,{loading:i=!1}=e,{onAccept:s=g=>{}}=e,{onDismiss:o=g=>{}}=e,{onAttach:c=g=>{}}=e,{onRefresh:u=()=>{}}=e,{formatTime:d=g=>""}=e;const p=g=>s(g),h=g=>c(g),m=g=>o(g);return n.$$set=g=>{"events"in g&&t(0,l=g.events),"loading"in g&&t(1,i=g.loading),"onAccept"in g&&t(2,s=g.onAccept),"onDismiss"in g&&t(3,o=g.onDismiss),"onAttach"in g&&t(4,c=g.onAttach),"onRefresh"in g&&t(5,u=g.onRefresh),"formatTime"in g&&t(6,d=g.formatTime)},[l,i,s,o,c,u,d,p,h,m]}class Zb extends ut{constructor(e){super(),ct(this,e,Vb,Kb,at,{events:0,loading:1,onAccept:2,onDismiss:3,onAttach:4,onRefresh:5,formatTime:6})}}function Vr(n,e,t){const l=n.slice();return l[69]=e[t],l}function Zr(n,e,t){const l=n.slice();return l[69]=e[t],l}function Yr(n,e,t){const l=n.slice();return l[64]=e[t],l[65]=e,l[66]=t,l}function Xr(n,e,t){const l=n.slice();return l[61]=e[t],l}function Jr(n,e,t){const l=n.slice();return l[61]=e[t],l}function Qr(n){let e,t;return{c(){e=f("span"),t=j(n[4]),r(e,"class","tab-badge svelte-ii7vwz")},m(l,i){C(l,e,i),a(e,t)},p(l,i){i[0]&16&&Q(t,l[4])},d(l){l&&S(e)}}}function xr(n){let e,t=n[3].length+"",l;return{c(){e=f("span"),l=j(t),r(e,"class","tab-badge svelte-ii7vwz")},m(i,s){C(i,e,s),a(e,l)},p(i,s){s[0]&8&&t!==(t=i[3].length+"")&&Q(l,t)},d(i){i&&S(e)}}}function $r(n){let e,t=n[15].length+"",l;return{c(){e=f("span"),l=j(t),r(e,"class","tab-badge svelte-ii7vwz")},m(i,s){C(i,e,s),a(e,l)},p(i,s){s[0]&32768&&t!==(t=i[15].length+"")&&Q(l,t)},d(i){i&&S(e)}}}function Yb(n){let e,t,l;return t=new Zb({props:{events:n[15],loading:n[16],formatTime:n[5],onAccept:n[17],onDismiss:n[18],onAttach:n[19],onRefresh:n[20]}}),{c(){e=f("div"),xe(t.$$.fragment),r(e,"class","today-tab-content svelte-ii7vwz")},m(i,s){C(i,e,s),Xe(t,e,null),l=!0},p(i,s){const o={};s[0]&32768&&(o.events=i[15]),s[0]&65536&&(o.loading=i[16]),s[0]&32&&(o.formatTime=i[5]),s[0]&131072&&(o.onAccept=i[17]),s[0]&262144&&(o.onDismiss=i[18]),s[0]&524288&&(o.onAttach=i[19]),s[0]&1048576&&(o.onRefresh=i[20]),t.$set(o)},i(i){l||(ge(t.$$.fragment,i),l=!0)},o(i){ke(t.$$.fragment,i),l=!1},d(i){i&&S(e),Je(t)}}}function Xb(n){let e,t,l,i,s,o,c,u,d,p,h=n[25]==="asc"?"↑":"↓",m,g,b,k;function y(N,A){return N[3].length===0?ek:$b}let E=y(n),T=E(n);return{c(){e=f("div"),t=f("div"),l=f("div"),i=f("button"),i.textContent=`${v("today.sortByTime")}`,s=w(),o=f("button"),o.textContent=`${v("today.sortByName")}`,c=w(),u=f("button"),u.textContent=`${v("today.sortByType")}`,d=w(),p=f("span"),m=j(h),g=w(),T.c(),r(i,"class","sort-btn svelte-ii7vwz"),ce(i,"active",n[24]==="time"),r(o,"class","sort-btn svelte-ii7vwz"),ce(o,"active",n[24]==="name"),r(u,"class","sort-btn svelte-ii7vwz"),ce(u,"active",n[24]==="type"),r(p,"class","sort-dir svelte-ii7vwz"),r(l,"class","sort-controls svelte-ii7vwz"),r(t,"class","tab-controls svelte-ii7vwz"),r(e,"class","today-tab-content svelte-ii7vwz")},m(N,A){C(N,e,A),a(e,t),a(t,l),a(l,i),a(l,s),a(l,o),a(l,c),a(l,u),a(l,d),a(l,p),a(p,m),a(e,g),T.m(e,null),b||(k=[O(i,"click",n[56]),O(o,"click",n[57]),O(u,"click",n[58])],b=!0)},p(N,A){A[0]&16777216&&ce(i,"active",N[24]==="time"),A[0]&16777216&&ce(o,"active",N[24]==="name"),A[0]&16777216&&ce(u,"active",N[24]==="type"),A[0]&33554432&&h!==(h=N[25]==="asc"?"↑":"↓")&&Q(m,h),E===(E=y(N))&&T?T.p(N,A):(T.d(1),T=E(N),T&&(T.c(),T.m(e,null)))},i:oe,o:oe,d(N){N&&S(e),T.d(),b=!1,Ce(k)}}}function Jb(n){let e,t,l,i,s,o,c,u,d,p,h=n[23]==="asc"?"↑":"↓",m,g,b,k;function y(N,A){return N[2].length===0?nk:tk}let E=y(n),T=E(n);return{c(){e=f("div"),t=f("div"),l=f("div"),i=f("button"),i.textContent=`${v("today.sortByTime")}`,s=w(),o=f("button"),o.textContent=`${v("today.sortByName")}`,c=w(),u=f("button"),u.textContent=`${v("today.sortByType")}`,d=w(),p=f("span"),m=j(h),g=w(),T.c(),r(i,"class","sort-btn svelte-ii7vwz"),ce(i,"active",n[22]==="time"),r(o,"class","sort-btn svelte-ii7vwz"),ce(o,"active",n[22]==="name"),r(u,"class","sort-btn svelte-ii7vwz"),ce(u,"active",n[22]==="type"),r(p,"class","sort-dir svelte-ii7vwz"),r(l,"class","sort-controls svelte-ii7vwz"),r(t,"class","tab-controls svelte-ii7vwz"),r(e,"class","today-tab-content svelte-ii7vwz")},m(N,A){C(N,e,A),a(e,t),a(t,l),a(l,i),a(l,s),a(l,o),a(l,c),a(l,u),a(l,d),a(l,p),a(p,m),a(e,g),T.m(e,null),b||(k=[O(i,"click",n[51]),O(o,"click",n[52]),O(u,"click",n[53])],b=!0)},p(N,A){A[0]&4194304&&ce(i,"active",N[22]==="time"),A[0]&4194304&&ce(o,"active",N[22]==="name"),A[0]&4194304&&ce(u,"active",N[22]==="type"),A[0]&8388608&&h!==(h=N[23]==="asc"?"↑":"↓")&&Q(m,h),E===(E=y(N))&&T?T.p(N,A):(T.d(1),T=E(N),T&&(T.c(),T.m(e,null)))},i:oe,o:oe,d(N){N&&S(e),T.d(),b=!1,Ce(k)}}}function Qb(n){let e;function t(s,o){return s[0].length===0?ik:lk}let l=t(n),i=l(n);return{c(){e=f("div"),i.c(),r(e,"class","today-tab-content svelte-ii7vwz")},m(s,o){C(s,e,o),i.m(e,null)},p(s,o){l===(l=t(s))&&i?i.p(s,o):(i.d(1),i=l(s),i&&(i.c(),i.m(e,null)))},i:oe,o:oe,d(s){s&&S(e),i.d()}}}function xb(n){let e;function t(s,o){return!s[1]||!s[1].events||s[1].events.length===0?ok:sk}let l=t(n),i=l(n);return{c(){e=f("div"),i.c(),r(e,"class","today-tab-content svelte-ii7vwz")},m(s,o){C(s,e,o),i.m(e,null)},p(s,o){l===(l=t(s))&&i?i.p(s,o):(i.d(1),i=l(s),i&&(i.c(),i.m(e,null)))},i:oe,o:oe,d(s){s&&S(e),i.d()}}}function $b(n){let e,t=Te(da(n[3],n[24],n[25])),l=[];for(let i=0;i0&&la(n);function ne(...te){return n[43](n[64],n[65],n[66],...te)}function le(){return n[44](n[64])}function he(){return n[45](n[64])}function se(){return n[46](n[64])}function Be(){return n[47](n[64],n[65],n[66])}function Ke(...te){return n[48](n[64],n[65],n[66],...te)}let Me=n[64]._expanded&&n[64].events&&n[64].events.length>0&&ia(n);return{c(){e=f("div"),t=f("div"),l=f("div"),i=f("button"),o=j(s),c=w(),u=f("span"),p=j(d),h=w(),m=f("span"),b=j(g),k=w(),E=j(y),ee&&ee.c(),T=w(),N=f("div"),A=f("span"),M=w(),D=f("input"),U=w(),H=f("span"),H.textContent=`${v("suggest.minutes")}`,B=w(),W=f("button"),W.textContent=`${v("suggest.edit")}`,G=w(),V=f("button"),V.textContent=`${v("suggest.apply")}`,F=w(),L=f("button"),L.textContent=`${v("common.delete")}`,q=w(),Me&&Me.c(),P=w(),r(i,"class","suggestion-node link-btn svelte-ii7vwz"),r(u,"class","suggestion-summary svelte-ii7vwz"),r(m,"class","suggestion-meta svelte-ii7vwz"),r(l,"class","suggestion-info svelte-ii7vwz"),r(A,"class","suggestion-confidence-dot svelte-ii7vwz"),r(A,"title",I=v("suggest.confidence."+n[64].confidence)),r(A,"aria-label",R=v("suggest.confidence."+n[64].confidence)),ce(A,"low",n[64].confidence==="low"),ce(A,"medium",n[64].confidence==="medium"),ce(A,"high",n[64].confidence==="high"),r(D,"type","number"),r(D,"class","suggestion-min-input svelte-ii7vwz"),D.value=z=n[64].suggestedMin,r(D,"min","1"),r(D,"max","480"),r(H,"class","suggestion-min-label svelte-ii7vwz"),r(W,"class","btn btn-sm svelte-ii7vwz"),r(V,"class","btn btn-sm btn-primary svelte-ii7vwz"),r(L,"class","btn btn-sm btn-danger svelte-ii7vwz"),r(N,"class","suggestion-actions svelte-ii7vwz"),r(t,"class","suggestion-main svelte-ii7vwz"),r(t,"role","button"),r(t,"tabindex","0"),r(e,"class","suggestion-card svelte-ii7vwz"),ce(e,"expanded",n[64]._expanded)},m(te,re){C(te,e,re),a(e,t),a(t,l),a(l,i),a(i,o),a(l,c),a(l,u),a(u,p),a(l,h),a(l,m),a(m,b),a(m,k),a(m,E),ee&&ee.m(m,null),a(t,T),a(t,N),a(N,A),a(N,M),a(N,D),a(N,U),a(N,H),a(N,B),a(N,W),a(N,G),a(N,V),a(N,F),a(N,L),a(e,q),Me&&Me.m(e,null),a(e,P),X||(Y=[O(i,"click",We(J)),O(D,"change",We(ne)),O(W,"click",We(le)),O(V,"click",We(he)),O(L,"click",We(se)),O(t,"click",Be),O(t,"keydown",Ke)],X=!0)},p(te,re){n=te,re[0]&1&&s!==(s=n[64].nodeTitle+"")&&Q(o,s),re[0]&1&&d!==(d=n[64].summary+"")&&Q(p,d),re[0]&1&&g!==(g=n[64].suggestedMin+"")&&Q(b,g),n[64].events&&n[64].events.length>0?ee?ee.p(n,re):(ee=la(n),ee.c(),ee.m(m,null)):ee&&(ee.d(1),ee=null),re[0]&1&&I!==(I=v("suggest.confidence."+n[64].confidence))&&r(A,"title",I),re[0]&1&&R!==(R=v("suggest.confidence."+n[64].confidence))&&r(A,"aria-label",R),re[0]&1&&ce(A,"low",n[64].confidence==="low"),re[0]&1&&ce(A,"medium",n[64].confidence==="medium"),re[0]&1&&ce(A,"high",n[64].confidence==="high"),re[0]&1&&z!==(z=n[64].suggestedMin)&&D.value!==z&&(D.value=z),n[64]._expanded&&n[64].events&&n[64].events.length>0?Me?Me.p(n,re):(Me=ia(n),Me.c(),Me.m(e,P)):Me&&(Me.d(1),Me=null),re[0]&1&&ce(e,"expanded",n[64]._expanded)},d(te){te&&S(e),ee&&ee.d(),Me&&Me.d(),X=!1,Ce(Y)}}}function sk(n){let e,t=Te(n[1].events),l=[];for(let i=0;i',G=w(),r(t,"class","feed-icon svelte-ii7vwz"),r(u,"class","feed-type svelte-ii7vwz"),r(m,"class","feed-colon svelte-ii7vwz"),r(b,"class","feed-title link-btn svelte-ii7vwz"),r(c,"class","feed-title-line svelte-ii7vwz"),r(I,"class","feed-event-type svelte-ii7vwz"),r(z,"class","feed-time svelte-ii7vwz"),r(T,"class","feed-meta-line svelte-ii7vwz"),r(o,"class","feed-body svelte-ii7vwz"),r(W,"class","feed-nav-btn svelte-ii7vwz"),r(W,"title",v("common.open")),r(e,"class","feed-item svelte-ii7vwz"),r(e,"role","button"),r(e,"tabindex","0")},m(Y,J){C(Y,e,J),a(e,t),a(t,i),a(e,s),a(e,o),a(o,c),a(c,u),a(u,p),a(c,h),a(c,m),a(c,g),a(c,b),a(b,y),a(o,E),a(o,T),L&&L.m(T,null),a(T,A),a(T,I),a(I,M),a(T,D),a(T,z),a(z,H),a(e,B),a(e,W),a(e,G),V||(F=[O(W,"click",We(q)),O(e,"click",P),O(e,"keydown",X)],V=!0)},p(Y,J){n=Y,J[0]&2&&l!==(l=fa(n[61].eventType)+"")&&Q(i,l),J[0]&2&&d!==(d=n[28](n[61])+"")&&Q(p,d),J[0]&2&&k!==(k=(n[61].title||"")+"")&&Q(y,k),J[0]&2&&(N=Di(n[61])),N?L?L.p(n,J):(L=ca(n),L.c(),L.m(T,A)):L&&(L.d(1),L=null),J[0]&66&&R!==(R=n[6](n[61].eventType)+"")&&Q(M,R),J[0]&34&&U!==(U=n[5](n[61].createdAt)+"")&&Q(H,U)},d(Y){Y&&S(e),L&&L.d(),V=!1,Ce(F)}}}function rk(n){var X;let e,t,l,i=(((X=n[1])==null?void 0:X.date)||"")+"",s,o,c,u,d,p,h=v("today.suggestionsTab")+"",m,g,b,k,y,E,T=v("today.captured")+"",N,A,I,R,M,D,z,U,H,B,W,G=n[4]>0&&Qr(n),V=n[3].length>0&&xr(n),F=n[15].length>0&&$r(n);const L=[xb,Qb,Jb,Xb,Yb],q=[];function P(Y,J){return Y[21]==="feed"?0:Y[21]==="suggestions"?1:Y[21]==="inprogress"?2:Y[21]==="captured"?3:Y[21]==="browser"?4:-1}return~(z=P(n))&&(U=q[z]=L[z](n)),{c(){e=f("div"),t=f("div"),l=f("span"),s=j(i),o=w(),c=f("div"),u=f("button"),u.textContent=`${v("today.feed")}`,d=w(),p=f("button"),m=j(h),g=w(),G&&G.c(),b=w(),k=f("button"),k.textContent=`${v("today.inProgress")}`,y=w(),E=f("button"),N=j(T),A=w(),V&&V.c(),I=w(),R=f("button"),M=j(`Браузер - `),F&&F.c(),D=w(),U&&U.c(),r(l,"class","today-date svelte-ii7vwz"),r(t,"class","today-header svelte-ii7vwz"),r(u,"class","today-tab svelte-ii7vwz"),ce(u,"active",n[21]==="feed"),r(p,"class","today-tab svelte-ii7vwz"),ce(p,"active",n[21]==="suggestions"),r(k,"class","today-tab svelte-ii7vwz"),ce(k,"active",n[21]==="inprogress"),r(E,"class","today-tab svelte-ii7vwz"),ce(E,"active",n[21]==="captured"),r(R,"class","today-tab svelte-ii7vwz"),ce(R,"active",n[21]==="browser"),r(c,"class","today-tabs svelte-ii7vwz"),r(e,"class","today-screen svelte-ii7vwz")},m(Y,J){C(Y,e,J),a(e,t),a(t,l),a(l,s),a(e,o),a(e,c),a(c,u),a(c,d),a(c,p),a(p,m),a(p,g),G&&G.m(p,null),a(c,b),a(c,k),a(c,y),a(c,E),a(E,N),a(E,A),V&&V.m(E,null),a(c,I),a(c,R),a(R,M),F&&F.m(R,null),a(e,D),~z&&q[z].m(e,null),H=!0,B||(W=[O(u,"click",n[34]),O(p,"click",n[35]),O(k,"click",n[36]),O(E,"click",n[37]),O(R,"click",n[38])],B=!0)},p(Y,J){var ne;(!H||J[0]&2)&&i!==(i=(((ne=Y[1])==null?void 0:ne.date)||"")+"")&&Q(s,i),(!H||J[0]&2097152)&&ce(u,"active",Y[21]==="feed"),Y[4]>0?G?G.p(Y,J):(G=Qr(Y),G.c(),G.m(p,null)):G&&(G.d(1),G=null),(!H||J[0]&2097152)&&ce(p,"active",Y[21]==="suggestions"),(!H||J[0]&2097152)&&ce(k,"active",Y[21]==="inprogress"),Y[3].length>0?V?V.p(Y,J):(V=xr(Y),V.c(),V.m(E,null)):V&&(V.d(1),V=null),(!H||J[0]&2097152)&&ce(E,"active",Y[21]==="captured"),Y[15].length>0?F?F.p(Y,J):(F=$r(Y),F.c(),F.m(R,null)):F&&(F.d(1),F=null),(!H||J[0]&2097152)&&ce(R,"active",Y[21]==="browser");let ee=z;z=P(Y),z===ee?~z&&q[z].p(Y,J):(U&&(yt(),ke(q[ee],1,1,()=>{q[ee]=null}),Et()),~z?(U=q[z],U?U.p(Y,J):(U=q[z]=L[z](Y),U.c()),ge(U,1),U.m(e,null)):U=null)},i(Y){H||(ge(U),H=!0)},o(Y){ke(U),H=!1},d(Y){Y&&S(e),G&&G.d(),V&&V.d(),F&&F.d(),~z&&q[z].d(),B=!1,Ce(W)}}}function fa(n){return n==="note_created"||n==="file_added"||n==="folder_added"||n==="node_created"?"+":n==="file_deleted"||n==="folder_deleted"?"×":n==="file_renamed"||n==="folder_renamed"||n==="node_updated"?"~":n==="file_copied"?"⧉":n==="file_moved"||n==="folder_moved"?"→":n==="note_updated"?"✎":n==="action_created"?"▶":n==="action_done"?"✓":n==="worklog_added"?"⏱":"•"}function Di(n){const e=[];return n.nodePath&&e.push(n.nodePath),e.length>0?e.join(" → "):""}function da(n,e,t){const l=[...n];return l.sort((i,s)=>{let o=0;if(e==="name")o=(i.title||"").localeCompare(s.title||"");else if(e==="type"){const c=i.captureKind||i.sourceKind||"",u=s.captureKind||s.sourceKind||"";o=c.localeCompare(u)}else o=(i.capturedAt||i.createdAt||"").localeCompare(s.capturedAt||s.createdAt||"");return t==="asc"?o:-o}),l}function pa(n){return{text:"📝",url:"🔗",file:"📄",image:"🖼",folder:"📁"}[n]||"📦"}function ak(n,e,t){let{todayDashboard:l=null}=e,{suggestions:i=[]}=e,{inProgressItems:s=[]}=e,{todayCaptures:o=[]}=e,{suggestionCount:c=0}=e,{formatTime:u=x=>""}=e,{eventLabel:d=x=>x}=e,{eventIcon:p=x=>""}=e,{inboxMetaText:h=x=>""}=e,{onOpenNodeById:m=x=>{}}=e,{onOpenActivityEvent:g=x=>{}}=e,{onOpenActivityTarget:b=x=>{}}=e,{onOpenSuggestionWorklog:k=x=>{}}=e,{onAcceptSuggestion:y=x=>{}}=e,{onDeleteSuggestion:E=x=>{}}=e,{onOpenNodeFolder:T=x=>{}}=e,{onOpenInboxArtifact:N=x=>{}}=e,{onOpenTrashNode:A=x=>{}}=e,{browserEvents:I=[]}=e,{browserLoading:R=!1}=e,{onBrowserAccept:M=x=>{}}=e,{onBrowserDismiss:D=x=>{}}=e,{onBrowserAttach:z=x=>{}}=e,{onBrowserRefresh:U=()=>{}}=e,H="feed";function B(x){y(x)}function W(x){E(x)}function G(x){return!x||!x.eventType?"":d(x.eventType)}function V(x){if(!(!x||!x.eventType)){if(x.eventType==="folder_deleted"){x.targetId&&A(x.targetId);return}if(["file_added","file_deleted","file_renamed","file_copied","file_moved","folder_added","folder_renamed","folder_moved"].includes(x.eventType)){x.targetId?b(x):x.nodeId&&m(x.nodeId);return}if(["note_created","note_updated","note_deleted"].includes(x.eventType)){x.targetType==="note"&&x.targetId?b(x):x.nodeId&&m(x.nodeId);return}if(x.eventType==="worklog_added"){x.nodeId&&m(x.nodeId);return}if(["action_created","action_done"].includes(x.eventType)){x.nodeId&&m(x.nodeId);return}(x.id||x.nodeId)&&g(x)}}function F(x,ye,me){const Ie=[...x];return Ie.sort((it,st)=>{let Ye=0;return ye==="name"?Ye=(it.title||"").localeCompare(st.title||""):ye==="type"?Ye=(d(it.eventType)||"").localeCompare(d(st.eventType)||""):Ye=(it.createdAt||"").localeCompare(st.createdAt||""),me==="asc"?Ye:-Ye}),Ie}let L="time",q="desc",P="time",X="desc";const Y=()=>t(21,H="feed"),J=()=>t(21,H="suggestions"),ee=()=>t(21,H="inprogress"),ne=()=>t(21,H="captured"),le=()=>t(21,H="browser"),he=x=>V(x),se=x=>V(x),Be=(x,ye)=>ye.key==="Enter"&&V(x),Ke=x=>m(x.nodeId),Me=(x,ye,me,Ie)=>t(0,ye[me].suggestedMin=parseInt(Ie.target.value),i),te=x=>k(x),re=x=>B(x),Ae=x=>W(x),Fe=(x,ye,me)=>t(0,ye[me]._expanded=!x._expanded,i),we=(x,ye,me,Ie)=>Ie.key==="Enter"&&t(0,ye[me]._expanded=!x._expanded,i),je=x=>b(x),Qe=x=>T(x.nodeId),Ne=()=>{t(22,L="time"),t(23,q=L==="time"&&q==="desc"?"asc":"desc")},Ve=()=>{t(22,L="name"),t(23,q=L==="name"&&q==="desc"?"asc":"desc")},Ue=()=>{t(22,L="type"),t(23,q=L==="type"&&q==="desc"?"asc":"desc")},Se=x=>g(x),He=(x,ye)=>ye.key==="Enter"&&g(x),Oe=()=>{t(24,P="time"),t(25,X=P==="time"&&X==="desc"?"asc":"desc")},Ge=()=>{t(24,P="name"),t(25,X=P==="name"&&X==="desc"?"asc":"desc")},qe=()=>{t(24,P="type"),t(25,X=P==="type"&&X==="desc"?"asc":"desc")},ue=x=>N(x),be=(x,ye)=>ye.key==="Enter"&&N(x);return n.$$set=x=>{"todayDashboard"in x&&t(1,l=x.todayDashboard),"suggestions"in x&&t(0,i=x.suggestions),"inProgressItems"in x&&t(2,s=x.inProgressItems),"todayCaptures"in x&&t(3,o=x.todayCaptures),"suggestionCount"in x&&t(4,c=x.suggestionCount),"formatTime"in x&&t(5,u=x.formatTime),"eventLabel"in x&&t(6,d=x.eventLabel),"eventIcon"in x&&t(7,p=x.eventIcon),"inboxMetaText"in x&&t(8,h=x.inboxMetaText),"onOpenNodeById"in x&&t(9,m=x.onOpenNodeById),"onOpenActivityEvent"in x&&t(10,g=x.onOpenActivityEvent),"onOpenActivityTarget"in x&&t(11,b=x.onOpenActivityTarget),"onOpenSuggestionWorklog"in x&&t(12,k=x.onOpenSuggestionWorklog),"onAcceptSuggestion"in x&&t(31,y=x.onAcceptSuggestion),"onDeleteSuggestion"in x&&t(32,E=x.onDeleteSuggestion),"onOpenNodeFolder"in x&&t(13,T=x.onOpenNodeFolder),"onOpenInboxArtifact"in x&&t(14,N=x.onOpenInboxArtifact),"onOpenTrashNode"in x&&t(33,A=x.onOpenTrashNode),"browserEvents"in x&&t(15,I=x.browserEvents),"browserLoading"in x&&t(16,R=x.browserLoading),"onBrowserAccept"in x&&t(17,M=x.onBrowserAccept),"onBrowserDismiss"in x&&t(18,D=x.onBrowserDismiss),"onBrowserAttach"in x&&t(19,z=x.onBrowserAttach),"onBrowserRefresh"in x&&t(20,U=x.onBrowserRefresh)},[i,l,s,o,c,u,d,p,h,m,g,b,k,T,N,I,R,M,D,z,U,H,L,q,P,X,B,W,G,V,F,y,E,A,Y,J,ee,ne,le,he,se,Be,Ke,Me,te,re,Ae,Fe,we,je,Qe,Ne,Ve,Ue,Se,He,Oe,Ge,qe,ue,be]}class ck extends ut{constructor(e){super(),ct(this,e,ak,rk,at,{todayDashboard:1,suggestions:0,inProgressItems:2,todayCaptures:3,suggestionCount:4,formatTime:5,eventLabel:6,eventIcon:7,inboxMetaText:8,onOpenNodeById:9,onOpenActivityEvent:10,onOpenActivityTarget:11,onOpenSuggestionWorklog:12,onAcceptSuggestion:31,onDeleteSuggestion:32,onOpenNodeFolder:13,onOpenInboxArtifact:14,onOpenTrashNode:33,browserEvents:15,browserLoading:16,onBrowserAccept:17,onBrowserDismiss:18,onBrowserAttach:19,onBrowserRefresh:20},null,[-1,-1,-1])}}function uk(n){let e,t,l,i,s=n[3]&&ha(n);return{c(){e=f("div"),s&&s.c(),t=w(),l=f("iframe"),r(l,"class","plugin-frame svelte-xgfxht"),r(l,"srcdoc",n[1]),r(l,"sandbox","allow-scripts allow-same-origin"),r(l,"title",i=n[0]+" panel"),r(e,"class","plugin-frame-container svelte-xgfxht")},m(o,c){C(o,e,c),s&&s.m(e,null),a(e,t),a(e,l),n[9](l)},p(o,c){o[3]?s?s.p(o,c):(s=ha(o),s.c(),s.m(e,t)):s&&(s.d(1),s=null),c&2&&r(l,"srcdoc",o[1]),c&1&&i!==(i=o[0]+" panel")&&r(l,"title",i)},d(o){o&&S(e),s&&s.d(),n[9](null)}}}function fk(n){let e,t,l,i,s,o,c;return{c(){e=f("div"),t=f("p"),l=j("Плагин «"),i=j(n[0]),s=j("» активен, но HTML-панель не настроена."),o=w(),c=f("p"),c.innerHTML='Для отображения контента добавьте поле panel в plugin.json.',r(c,"class","hint"),r(e,"class","empty-state svelte-xgfxht")},m(u,d){C(u,e,d),a(e,t),a(t,l),a(t,i),a(t,s),a(e,o),a(e,c)},p(u,d){d&1&&Q(i,u[0])},d(u){u&&S(e)}}}function dk(n){let e;return{c(){e=f("p"),e.textContent="Загрузка…",r(e,"class","loading svelte-xgfxht")},m(t,l){C(t,e,l)},p:oe,d(t){t&&S(e)}}}function ha(n){let e,t,l;return{c(){e=f("div"),t=j("⚠ "),l=j(n[3]),r(e,"class","plugin-error-bar svelte-xgfxht")},m(i,s){C(i,e,s),a(e,t),a(e,l)},p(i,s){s&8&&Q(l,i[3])},d(i){i&&S(e)}}}function pk(n){let e;function t(s,o){return s[2]?dk:s[1]?uk:fk}let l=t(n),i=l(n);return{c(){e=f("div"),i.c(),r(e,"class","plugin-page svelte-xgfxht")},m(s,o){C(s,e,o),i.m(e,null)},p(s,[o]){l===(l=t(s))&&i?i.p(s,o):(i.d(1),i=l(s),i&&(i.c(),i.m(e,null)))},i:oe,o:oe,d(s){s&&S(e),i.d()}}}function ol(n,...e){try{if(window.go&&window.go.main&&window.go.main.App){const t=window.go.main.App[n];if(typeof t=="function")return t(...e)}}catch(t){console.error("Wails error:",n,t)}return Promise.reject(new Error("Wails not connected: "+n))}function hk(n,e,t){let l,i,s,o,{sectionId:c=""}=e,u="",d=!0,p="",h=null,m=[],g=!1;function b(M){console.log("[CalendarPluginPage] postToIframe: iframeReady="+g+", hasEl="+!!h+", hasCW="+!!(h!=null&&h.contentWindow)),h&&h.contentWindow&&g?(console.log("[CalendarPluginPage] postToIframe: sending msg.type="+M.type),h.contentWindow.postMessage(M,"*")):(console.log("[CalendarPluginPage] postToIframe: queuing msg.type="+M.type),m.push(M))}function k(M){if(!h||!h.contentWindow||M.source!==h.contentWindow)return;const D=M.data;if(!(!D||typeof D!="object")&&!(!D.source||typeof D.source!="string")&&!(!D.action||typeof D.action!="string"))switch(D.action){case"ready":for(g=!0;m.length>0;)h.contentWindow.postMessage(m.shift(),"*");y();break;case"get-events":E(D.data);break;case"create-event":T(D.data);break;case"update-event":N(D.data);break;case"delete-event":A(D.data);break;default:console.log("[CalendarPluginPage] Unknown iframe action:",D.action)}}async function y(){try{console.log("[CalendarPluginPage] loadCalendarData: step 1");const M=new Date,D=M.getFullYear(),z=M.getMonth(),U=new Date(D,z,1).toISOString().slice(0,10)+"T00:00:00",H=new Date(D,z+1,0).toISOString().slice(0,10)+"T23:59:59";console.log("[CalendarPluginPage] loadCalendarData: step 2, start="+U+", end="+H),console.log("[CalendarPluginPage] loadCalendarData: step 3, calling get_events...");const B=ol("CallPluginFunction",i,o+"get_events",JSON.stringify({start:U,end:H}));console.log("[CalendarPluginPage] loadCalendarData: step 4, calling get_categories...");const W=ol("CallPluginFunction",i,o+"get_categories","{}");console.log("[CalendarPluginPage] loadCalendarData: step 5, awaiting Promise.all...");const[G,V]=await Promise.all([B,W]);console.log("[CalendarPluginPage] loadCalendarData: step 6, got results, eventsRaw="+typeof G+", categoriesRaw="+typeof V);const F=G?JSON.parse(G):[],L=V?JSON.parse(V):[];b({source:"verstak",type:"calendar-data",events:F,categories:L});try{window.go.main.App.WriteDebugLog("[CalendarPluginPage] calendar-data sent to iframe, events.len="+F.length+", categories.len="+((L==null?void 0:L.length)||0)+", typeof events="+typeof F+", typeof eventsRaw="+typeof G+", eventsRaw.length="+G.length+", eventsRaw.substr(0,10)="+String(G).substring(0,10))}catch{}}catch(M){console.error("[CalendarPluginPage] loadCalendarData:",M),console.log("[CalendarPluginPage] error details:",JSON.stringify({message:String(M),stack:M==null?void 0:M.stack})),t(3,p=String(M))}}async function E(M){try{const D=JSON.stringify({start:M.start,end:M.end}),z=await ol("CallPluginFunction",i,o+"get_events",D),U=z?JSON.parse(z):[];b({source:"verstak",type:"calendar-data",events:U})}catch(D){console.error("[CalendarPluginPage] get-events:",D)}}async function T(M){try{const D=JSON.stringify(M),z=await ol("CallPluginFunction",i,o+"create_event",D),U=z?JSON.parse(z):{};b({source:"verstak",type:"event-created",event:U}),y()}catch(D){console.error("[CalendarPluginPage] create-event:",D),b({source:"verstak",type:"error",message:String(D)})}}async function N(M){try{const D=JSON.stringify(M);await ol("CallPluginFunction",i,o+"update_event",D),b({source:"verstak",type:"event-updated",event:M}),y()}catch(D){console.error("[CalendarPluginPage] update-event:",D)}}async function A(M){try{const D=JSON.stringify({id:M.id});await ol("CallPluginFunction",i,o+"delete_event",D),b({source:"verstak",type:"event-deleted",id:M.id}),y()}catch(D){console.error("[CalendarPluginPage] delete-event:",D)}}li(async()=>{try{t(1,u=await ol("GetPluginPanelHTML",i)||"")}catch(M){t(3,p=String(M))}t(2,d=!1),window.addEventListener("message",k)}),ii(()=>{window.removeEventListener("message",k)});function I(M,D){b({source:"verstak",type:"drop",date:D,data:M})}function R(M){An[M?"unshift":"push"](()=>{h=M,t(4,h)})}return n.$$set=M=>{"sectionId"in M&&t(5,c=M.sectionId)},n.$$.update=()=>{n.$$.dirty&32&&t(8,l=c.split(":")),n.$$.dirty&256&&t(0,i=l[1]||""),n.$$.dirty&256&&t(7,s=l[2]||"main"),n.$$.dirty&128&&s.charAt(0).toUpperCase()+s.slice(1),n.$$.dirty&1&&(o=i?i+".":"")},[i,u,d,p,h,c,I,s,l,R]}class mk extends ut{constructor(e){super(),ct(this,e,hk,pk,at,{sectionId:5,handleDrop:6})}get handleDrop(){return this.$$.ctx[6]}}const xf={й:"q",ц:"w",у:"e",к:"r",е:"t",н:"y",г:"u",ш:"i",щ:"o",з:"p",х:"[",ъ:"]",ф:"a",ы:"s",в:"d",а:"f",п:"g",р:"h",о:"j",л:"k",д:"l",ж:";",э:"'",я:"z",ч:"x",с:"c",м:"v",и:"b",т:"n",ь:"m",ю:",",ё:"`",Й:"Q",Ц:"W",У:"E",К:"R",Е:"T",Н:"Y",Г:"U",Ш:"I",Щ:"O",З:"P",Х:"{",Ъ:"}",Ф:"A",Ы:"S",В:"D",А:"F",П:"G",Р:"H",О:"J",Л:"K",Д:"L",Ж:":",Э:'"',Я:"Z",Ч:"X",С:"C",М:"V",И:"B",Т:"N",Ь:"M",Ю:"<",Ё:"~"},$f={};for(const[n,e]of Object.entries(xf))$f[e]=n;function ed(n,e){let t="";for(const l of n)t+=e[l]??l;return t}function gk(n){return ed(n,xf)}function _k(n){return ed(n,$f)}function td(n){const e=new Set;e.add(n);const t=gk(n);t!==n&&e.add(t);const l=_k(n);l!==n&&e.add(l);const i=new Set;for(const s of e)i.add(s.toLowerCase());for(const s of i)e.add(s);return Array.from(e)}function ma(n,e,t){const l=n.slice();return l[25]=e[t],l[27]=t,l}function ga(n){let e;function t(s,o){return s[3]?vk:s[1].length===0?kk:bk}let l=t(n),i=l(n);return{c(){e=f("div"),i.c(),r(e,"class","global-search-results svelte-1dlr37h")},m(s,o){C(s,e,o),i.m(e,null)},p(s,o){l===(l=t(s))&&i?i.p(s,o):(i.d(1),i=l(s),i&&(i.c(),i.m(e,null)))},d(s){s&&S(e),i.d()}}}function bk(n){let e,t=Te(n[1]),l=[];for(let i=0;i[]}=e,{typeLabel:i=B=>B||""}=e;const s=pn();let o="",c=[],u=!1,d=!1,p=0,h,m;function g(B){const W=[],G=i(B.type),V=yk(B);return G&&W.push(G),V&&W.push(V),W.join(" · ")}async function b(){const B=nd(o);if(B.length<2){t(1,c=[]),t(2,u=!1),t(3,d=!1);return}t(3,d=!0);try{const W=td(B),G=new Set,V=[];for(const q of W)G.has(q)||(G.add(q),V.push(q));const F=await Promise.all(V.map(q=>l("Search",q).catch(()=>[]))),L=new Map;for(let q=0;q0)}catch{t(1,c=[]),t(2,u=!1)}finally{t(3,d=!1)}}function k(){clearTimeout(m),m=setTimeout(b,180)}function y(){t(2,u=!1),t(4,p=0)}function E(){t(0,o=""),t(1,c=[]),y()}function T(B){B&&(s("open",B),E(),h==null||h.blur())}function N(){k()}function A(B){if(B.key==="Escape"){B.preventDefault(),E(),h==null||h.blur();return}!u||c.length===0||(B.key==="ArrowDown"?(B.preventDefault(),t(4,p=Math.min(c.length-1,p+1))):B.key==="ArrowUp"?(B.preventDefault(),t(4,p=Math.max(0,p-1))):B.key==="Enter"&&(B.preventDefault(),T(c[p])))}async function I(){await fg(),h==null||h.focus(),h==null||h.select()}function R(B){if((B.ctrlKey||B.metaKey)&&B.key.toLowerCase()==="k"){B.preventDefault(),I();return}B.key==="/"&&!Ek(B.target)&&(B.preventDefault(),I())}li(()=>{window.addEventListener("keydown",R)}),ii(()=>{window.removeEventListener("keydown",R),clearTimeout(m)});function M(B){An[B?"unshift":"push"](()=>{h=B,t(5,h)})}function D(){o=this.value,t(0,o)}const z=()=>{c.length>0&&t(2,u=!0)},U=()=>setTimeout(y,160),H=B=>T(B);return n.$$set=B=>{"wailsCall"in B&&t(11,l=B.wailsCall),"typeLabel"in B&&t(12,i=B.typeLabel)},[o,c,u,d,p,h,g,y,T,N,A,l,i,M,D,z,U,H]}class Sk extends ut{constructor(e){super(),ct(this,e,Tk,wk,at,{wailsCall:11,typeLabel:12})}}const Ck=n=>({}),va=n=>({});function wa(n){let e,t;return{c(){e=f("span"),t=j(n[1]),r(e,"class","header-subtitle svelte-7x8q9h")},m(l,i){C(l,e,i),a(e,t)},p(l,i){i&2&&Q(t,l[1])},d(l){l&&S(e)}}}function Ak(n){let e,t,l,i=(n[0]||"")+"",s,o,c,u,d,p,h,m=n[1]&&wa(n);d=new Sk({props:{wailsCall:n[2],typeLabel:n[3]}}),d.$on("open",n[7]);const g=n[6].actions,b=sg(g,n,n[5],va);return{c(){e=f("header"),t=f("div"),l=f("span"),s=j(i),o=w(),m&&m.c(),c=w(),u=f("div"),xe(d.$$.fragment),p=w(),b&&b.c(),r(l,"class","header-title svelte-7x8q9h"),ce(l,"placeholder",!n[0]),r(t,"class","header-left svelte-7x8q9h"),r(u,"class","header-right svelte-7x8q9h"),r(e,"class","header svelte-7x8q9h")},m(k,y){C(k,e,y),a(e,t),a(t,l),a(l,s),a(t,o),m&&m.m(t,null),a(e,c),a(e,u),Xe(d,u,null),a(u,p),b&&b.m(u,null),h=!0},p(k,[y]){(!h||y&1)&&i!==(i=(k[0]||"")+"")&&Q(s,i),(!h||y&1)&&ce(l,"placeholder",!k[0]),k[1]?m?m.p(k,y):(m=wa(k),m.c(),m.m(t,null)):m&&(m.d(1),m=null);const E={};y&4&&(E.wailsCall=k[2]),y&8&&(E.typeLabel=k[3]),d.$set(E),b&&b.p&&(!h||y&32)&&rg(b,g,k,k[5],h?og(g,k[5],y,Ck):ag(k[5]),va)},i(k){h||(ge(d.$$.fragment,k),ge(b,k),h=!0)},o(k){ke(d.$$.fragment,k),ke(b,k),h=!1},d(k){k&&S(e),m&&m.d(),Je(d),b&&b.d(k)}}}function Nk(n,e,t){let{$$slots:l={},$$scope:i}=e,{title:s=""}=e,{subtitle:o=""}=e,{wailsCall:c=async()=>[]}=e,{typeLabel:u=h=>h||""}=e,{onOpenSearchResult:d=()=>{}}=e;const p=h=>d(h.detail);return n.$$set=h=>{"title"in h&&t(0,s=h.title),"subtitle"in h&&t(1,o=h.subtitle),"wailsCall"in h&&t(2,c=h.wailsCall),"typeLabel"in h&&t(3,u=h.typeLabel),"onOpenSearchResult"in h&&t(4,d=h.onOpenSearchResult),"$$scope"in h&&t(5,i=h.$$scope)},[s,o,c,u,d,i,l,p]}class Ik extends ut{constructor(e){super(),ct(this,e,Nk,Ak,at,{title:0,subtitle:1,wailsCall:2,typeLabel:3,onOpenSearchResult:4})}}const Mk={open:'',showInExplorer:'',delete:'',restore:'',purge:'',move:'',attach:'',back:'',emptyTrash:'',folder:''};function Tt(n,e=16){return`${Mk[n]||""}`}function Rk(n){let e,t,l,i,s,o,c,u,d,p,h,m,g,b,k,y,E,T,N,A,I,R,M,D,z,U,H,B,W,G,V,F,L,q,P,X,Y,J;return{c(){e=f("div"),t=f("div"),l=f("div"),i=f("button"),i.innerHTML='B',s=w(),o=f("button"),o.innerHTML='I',c=w(),u=f("button"),u.innerHTML='H',d=w(),p=f("div"),h=w(),m=f("div"),g=f("button"),g.innerHTML='',b=w(),k=f("button"),k.innerHTML='',y=w(),E=f("button"),T=f("span"),T.textContent="",N=w(),A=f("div"),I=w(),R=f("div"),M=f("button"),M.innerHTML='',D=w(),z=f("button"),z.innerHTML='1.',U=w(),H=f("button"),H.innerHTML='',B=w(),W=f("button"),W.innerHTML='"',G=w(),V=f("div"),F=w(),L=f("div"),q=f("button"),q.innerHTML='',P=w(),X=f("textarea"),r(i,"type","button"),r(i,"class","md-toolbar-btn svelte-1etjgc1"),r(i,"title",v("note.toolbar.bold")),r(i,"aria-label",v("note.toolbar.bold")),r(o,"type","button"),r(o,"class","md-toolbar-btn svelte-1etjgc1"),r(o,"title",v("note.toolbar.italic")),r(o,"aria-label",v("note.toolbar.italic")),r(u,"type","button"),r(u,"class","md-toolbar-btn svelte-1etjgc1"),r(u,"title",v("note.toolbar.heading")),r(u,"aria-label",v("note.toolbar.heading")),r(l,"class","md-toolbar-group svelte-1etjgc1"),r(p,"class","md-toolbar-sep svelte-1etjgc1"),r(g,"type","button"),r(g,"class","md-toolbar-btn svelte-1etjgc1"),r(g,"title",v("note.toolbar.link")),r(g,"aria-label",v("note.toolbar.link")),r(k,"type","button"),r(k,"class","md-toolbar-btn svelte-1etjgc1"),r(k,"title",v("note.toolbar.code")),r(k,"aria-label",v("note.toolbar.code")),r(T,"class","md-btn-label md-btn-sm svelte-1etjgc1"),r(E,"type","button"),r(E,"class","md-toolbar-btn svelte-1etjgc1"),r(E,"title",v("note.toolbar.codeBlock")),r(E,"aria-label",v("note.toolbar.codeBlock")),r(m,"class","md-toolbar-group svelte-1etjgc1"),r(A,"class","md-toolbar-sep svelte-1etjgc1"),r(M,"type","button"),r(M,"class","md-toolbar-btn svelte-1etjgc1"),r(M,"title",v("note.toolbar.bulletList")),r(M,"aria-label",v("note.toolbar.bulletList")),r(z,"type","button"),r(z,"class","md-toolbar-btn svelte-1etjgc1"),r(z,"title",v("note.toolbar.numberedList")),r(z,"aria-label",v("note.toolbar.numberedList")),r(H,"type","button"),r(H,"class","md-toolbar-btn svelte-1etjgc1"),r(H,"title",v("note.toolbar.checkbox")),r(H,"aria-label",v("note.toolbar.checkbox")),r(W,"type","button"),r(W,"class","md-toolbar-btn svelte-1etjgc1"),r(W,"title",v("note.toolbar.quote")),r(W,"aria-label",v("note.toolbar.quote")),r(R,"class","md-toolbar-group svelte-1etjgc1"),r(V,"class","md-toolbar-sep svelte-1etjgc1"),r(q,"type","button"),r(q,"class","md-toolbar-btn md-toolbar-btn--internal svelte-1etjgc1"),r(q,"title",v("note.toolbar.internalLink")),r(q,"aria-label",v("note.toolbar.internalLink")),r(L,"class","md-toolbar-group svelte-1etjgc1"),r(t,"class","md-toolbar svelte-1etjgc1"),r(t,"role","toolbar"),r(t,"aria-label","Markdown formatting"),r(X,"class","md-textarea svelte-1etjgc1"),r(X,"placeholder",n[2]),r(X,"spellcheck","true"),r(e,"class","md-editor svelte-1etjgc1"),ce(e,"mode-edit",n[1]==="edit"||n[1]==="split")},m(ee,ne){C(ee,e,ne),a(e,t),a(t,l),a(l,i),a(l,s),a(l,o),a(l,c),a(l,u),a(t,d),a(t,p),a(t,h),a(t,m),a(m,g),a(m,b),a(m,k),a(m,y),a(m,E),a(E,T),a(t,N),a(t,A),a(t,I),a(t,R),a(R,M),a(R,D),a(R,z),a(R,U),a(R,H),a(R,B),a(R,W),a(t,G),a(t,V),a(t,F),a(t,L),a(L,q),a(e,P),a(e,X),Re(X,n[0]),n[19](X),Y||(J=[O(i,"click",n[4]),O(o,"click",n[5]),O(u,"click",n[8]),O(g,"click",n[7]),O(k,"click",n[6]),O(E,"click",n[13]),O(M,"click",n[10]),O(z,"click",n[11]),O(H,"click",n[12]),O(W,"click",n[9]),O(q,"click",n[14]),O(X,"input",n[18]),O(X,"input",n[15]),O(X,"keydown",n[16])],Y=!0)},p(ee,[ne]){ne&4&&r(X,"placeholder",ee[2]),ne&1&&Re(X,ee[0]),ne&2&&ce(e,"mode-edit",ee[1]==="edit"||ee[1]==="split")},i:oe,o:oe,d(ee){ee&&S(e),n[19](null),Y=!1,Ce(J)}}}function Lk(n,e,t){let{content:l=""}=e,{viewMode:i="edit"}=e,{placeholder:s=""}=e;const o=pn();let c;function u(U){const H=c;if(!H)return;const B=H.selectionStart,W=H.selectionEnd,G=l.substring(0,B),V=l.substring(W),F=G+U+V;t(0,l=F),o("content-change",{content:F}),requestAnimationFrame(()=>{H.focus(),H.selectionStart=H.selectionEnd=B+U.length})}function d(U,H="",B=""){const W=c;if(!W)return;const G=W.selectionStart,V=W.selectionEnd,F=l.substring(G,V),q=U+(F||B)+H,P=l.substring(0,G)+q+l.substring(V);t(0,l=P),o("content-change",{content:P}),requestAnimationFrame(()=>{W.focus(),F?(W.selectionStart=G+U.length,W.selectionEnd=G+U.length+F.length):(W.selectionStart=G+U.length,W.selectionEnd=G+U.length+B.length)})}function p(U){const H=c;if(!H)return;const B=H.selectionStart,W=H.selectionEnd;let G=B;for(;G>0&&l[G-1]!==` -`;)G--;let V=W;for(;VY.startsWith(U)?Y:U+Y).join(` -`),X=l.substring(0,G)+P+l.substring(V);t(0,l=X),o("content-change",{content:X}),requestAnimationFrame(()=>{H.focus(),H.selectionStart=G,H.selectionEnd=G+P.length})}function h(){d("**","**","bold text")}function m(){d("*","*","italic text")}function g(){d("`","`","code")}function b(){o("insert-link")}function k(){p("## ")}function y(){p("> ")}function E(){p("- ")}function T(){const U=c;if(!U)return;let B=U.selectionStart;for(;B>0&&l[B-1]!==` -`;)B--;let W=U.selectionEnd;for(;W{const Y=X.trim();return X.replace(/^\s*\d+\.\s*/,""),`${F++}. ${Y||"item"}`}).join(` -`),P=l.substring(0,B)+q+l.substring(W);t(0,l=P),o("content-change",{content:P}),requestAnimationFrame(()=>{U.focus(),U.selectionStart=B,U.selectionEnd=B+q.length})}function N(){p("- [ ] ")}function A(){const U=c;if(!U)return;const H=U.selectionStart,B=U.selectionEnd,W=l.substring(H,B),G=W?"```\n"+W+"\n```":"```\ncode here\n```",V=l.substring(0,H)+G+l.substring(B);t(0,l=V),o("content-change",{content:V}),requestAnimationFrame(()=>{U.focus(),W?(U.selectionStart=H+4,U.selectionEnd=H+4+W.length):(U.selectionStart=H+4,U.selectionEnd=H+4+9)})}function I(){o("insert-internal-link")}function R(U){t(0,l=U.target.value),o("content-change",{content:l})}function M(U){if((U.ctrlKey||U.metaKey)&&U.key==="s"){U.preventDefault(),o("save");return}if(U.key==="Tab"){U.preventDefault();const H=U.target,B=H.selectionStart,W=H.selectionEnd;if(U.shiftKey){let G=B;for(;G>0&&l[G-1]!==` -`;)G--;let V=W;for(;V{H.focus(),H.selectionStart=G,H.selectionEnd=G+L.length})}else if(B===W){const G=l.substring(0,B)+" "+l.substring(W);t(0,l=G),o("content-change",{content:G}),requestAnimationFrame(()=>{H.focus(),H.selectionStart=H.selectionEnd=B+2})}else{let G=B;for(;G>0&&l[G-1]!==` -`;)G--;let V=W;for(;V{H.focus(),H.selectionStart=G,H.selectionEnd=G+L.length})}}}function D(){l=this.value,t(0,l)}function z(U){An[U?"unshift":"push"](()=>{c=U,t(3,c)})}return n.$$set=U=>{"content"in U&&t(0,l=U.content),"viewMode"in U&&t(1,i=U.viewMode),"placeholder"in U&&t(2,s=U.placeholder)},[l,i,s,c,h,m,g,b,k,y,E,T,N,A,I,R,M,u,D,z]}class ld extends ut{constructor(e){super(),ct(this,e,Lk,Rk,at,{content:0,viewMode:1,placeholder:2,insertText:17})}get insertText(){return this.$$.ctx[17]}}function qs(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}var ml=qs();function id(n){ml=n}var al={exec:()=>null};function Nl(n){let e=[];return t=>{let l=Math.max(0,Math.min(3,t-1)),i=e[l];return i||(i=n(l),e[l]=i),i}}function rt(n,e=""){let t=typeof n=="string"?n:n.source,l={replace:(i,s)=>{let o=typeof s=="string"?s:s.source;return o=o.replace(Zt.caret,"$1"),t=t.replace(i,o),l},getRegex:()=>new RegExp(t,e)};return l}var Dk=((n="")=>{try{return!!new RegExp("(?<=1)(?/,blockquoteSetextReplace:/\n {0,3}((?:=+|-+) *)(?=\n|$)/g,blockquoteSetextReplace2:/^ {0,3}>[ \t]?/gm,listReplaceNesting:/^ {1,4}(?=( {4})*[^ ])/g,listIsTask:/^\[[ xX]\] +\S/,listReplaceTask:/^\[[ xX]\] +/,listTaskCheckbox:/\[[ xX]\]/,anyLine:/\n.*\n/,hrefBrackets:/^<(.*)>$/,tableDelimiter:/[:|]/,tableAlignChars:/^\||\| *$/g,tableRowBlankLine:/\n[ \t]*$/,tableAlignRight:/^ *-+: *$/,tableAlignCenter:/^ *:-+: *$/,tableAlignLeft:/^ *:-+ *$/,startATag:/^/i,startPreScriptTag:/^<(pre|code|kbd|script)(\s|>)/i,endPreScriptTag:/^<\/(pre|code|kbd|script)(\s|>)/i,startAngleBracket:/^$/,pedanticHrefTitle:/^([^'"]*[^\s])\s+(['"])(.*)\2/,unicodeAlphaNumeric:/[\p{L}\p{N}]/u,escapeTest:/[&<>"']/,escapeReplace:/[&<>"']/g,escapeTestNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,escapeReplaceNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/g,caret:/(^|[^\[])\^/g,percentDecode:/%25/g,findPipe:/\|/g,splitPipe:/ \|/,slashPipe:/\\\|/g,carriageReturn:/\r\n|\r/g,spaceLine:/^ +$/gm,notSpaceStart:/^\S*/,endingNewline:/\n$/,listItemRegex:n=>new RegExp(`^( {0,3}${n})((?:[ ][^\\n]*)?(?:\\n|$))`),nextBulletRegex:Nl(n=>new RegExp(`^ {0,${n}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`)),hrRegex:Nl(n=>new RegExp(`^ {0,${n}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`)),fencesBeginRegex:Nl(n=>new RegExp(`^ {0,${n}}(?:\`\`\`|~~~)`)),headingBeginRegex:Nl(n=>new RegExp(`^ {0,${n}}#`)),htmlBeginRegex:Nl(n=>new RegExp(`^ {0,${n}}<(?:[a-z].*>|!--)`,"i")),blockquoteBeginRegex:Nl(n=>new RegExp(`^ {0,${n}}>`))},Ok=/^(?:[ \t]*(?:\n|$))+/,qk=/^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/,Pk=/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,si=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,zk=/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,Ps=/ {0,3}(?:[*+-]|\d{1,9}[.)])/,sd=/^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html|table))+?)\n {0,3}(=+|-+) *(?:\n+|$)/,od=rt(sd).replace(/bull/g,Ps).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/\|table/g,"").getRegex(),Bk=rt(sd).replace(/bull/g,Ps).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/table/g,/ {0,3}\|?(?:[:\- ]*\|)+[\:\- ]*\n/).getRegex(),zs=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,Fk=/^[^\n]+/,Bs=/(?!\s*\])(?:\\[\s\S]|[^\[\]\\])+/,jk=rt(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace("label",Bs).replace("title",/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),Uk=rt(/^(bull)([ \t][^\n]*?)?(?:\n|$)/).replace(/bull/g,Ps).getRegex(),Ui="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",Fs=/|$))/,Hk=rt("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|\\n*|$)|\\n*|$)|)[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$))","i").replace("comment",Fs).replace("tag",Ui).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),rd=rt(zs).replace("hr",si).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("|table","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)])[ \\t]+[^ \\t\\n]").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",Ui).getRegex(),Wk=rt(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph",rd).getRegex(),js={blockquote:Wk,code:qk,def:jk,fences:Pk,heading:zk,hr:si,html:Hk,lheading:od,list:Uk,newline:Ok,paragraph:rd,table:al,text:Fk},ya=rt("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr",si).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("blockquote"," {0,3}>").replace("code","(?: {4}| {0,3} )[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)])[ \\t]").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",Ui).getRegex(),Gk={...js,lheading:Bk,table:ya,paragraph:rt(zs).replace("hr",si).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("table",ya).replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)])[ \\t]+[^ \\t\\n]").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",Ui).getRegex()},Kk={...js,html:rt(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+? *(?:\\n{2,}|\\s*$)|\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace("comment",Fs).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:al,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:rt(zs).replace("hr",si).replace("heading",` *#{1,6} *[^ -]`).replace("lheading",od).replace("|table","").replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").replace("|tag","").getRegex()},Vk=/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,Zk=/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,ad=/^( {2,}|\\)\n(?!\s*$)/,Yk=/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\`+)[^`]+\k(?!`))*?\]\((?:\\[\s\S]|[^\\\(\)]|\((?:\\[\s\S]|[^\\\(\)])*\))*\)/).replace("precode-",Dk?"(?`+)[^`]+\k(?!`)/).replace("html",/<(?! )[^<>]*?>/).getRegex(),ud=/^(?:\*+(?:((?!\*)punct)|([^\s*]))?)|^_+(?:((?!_)punct)|([^\s_]))?/,$k=rt(ud,"u").replace(/punct/g,zl).getRegex(),ev=rt(ud,"u").replace(/punct/g,cd).getRegex(),fd="^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)punct(\\*+)(?=[\\s]|$)|notPunctSpace(\\*+)(?!\\*)(?=punctSpace|$)|(?!\\*)punctSpace(\\*+)(?=notPunctSpace)|[\\s](\\*+)(?!\\*)(?=punct)|(?!\\*)punct(\\*+)(?!\\*)(?=punct)|notPunctSpace(\\*+)(?=notPunctSpace)",tv=rt(fd,"gu").replace(/notPunctSpace/g,Us).replace(/punctSpace/g,Hi).replace(/punct/g,zl).getRegex(),nv=rt(fd,"gu").replace(/notPunctSpace/g,Qk).replace(/punctSpace/g,Jk).replace(/punct/g,cd).getRegex(),lv=rt("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)punctSpace(_+)(?=notPunctSpace)|[\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)","gu").replace(/notPunctSpace/g,Us).replace(/punctSpace/g,Hi).replace(/punct/g,zl).getRegex(),iv=rt(/^~~?(?:((?!~)punct)|[^\s~])/,"u").replace(/punct/g,zl).getRegex(),sv="^[^~]+(?=[^~])|(?!~)punct(~~?)(?=[\\s]|$)|notPunctSpace(~~?)(?!~)(?=punctSpace|$)|(?!~)punctSpace(~~?)(?=notPunctSpace)|[\\s](~~?)(?!~)(?=punct)|(?!~)punct(~~?)(?!~)(?=punct)|notPunctSpace(~~?)(?=notPunctSpace)",ov=rt(sv,"gu").replace(/notPunctSpace/g,Us).replace(/punctSpace/g,Hi).replace(/punct/g,zl).getRegex(),rv=rt(/\\(punct)/,"gu").replace(/punct/g,zl).getRegex(),av=rt(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace("scheme",/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace("email",/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(),cv=rt(Fs).replace("(?:-->|$)","-->").getRegex(),uv=rt("^comment|^|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^|^").replace("comment",cv).replace("attribute",/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(),Oi=/(?:\[(?:\\[\s\S]|[^\[\]\\])*\]|\\[\s\S]|`+(?!`)[^`]*?`+(?!`)|``+(?=\])|[^\[\]\\`])*?/,fv=rt(/^!?\[(label)\]\(\s*(href)(?:(?:[ \t]+(?:\n[ \t]*)?|\n[ \t]*)(title))?\s*\)/).replace("label",Oi).replace("href",/<(?:\\.|[^\n<>\\])+>|[^ \t\n\x00-\x1f]*/).replace("title",/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(),dd=rt(/^!?\[(label)\]\[(ref)\]/).replace("label",Oi).replace("ref",Bs).getRegex(),pd=rt(/^!?\[(ref)\](?:\[\])?/).replace("ref",Bs).getRegex(),dv=rt("reflink|nolink(?!\\()","g").replace("reflink",dd).replace("nolink",pd).getRegex(),Ea=/[hH][tT][tT][pP][sS]?|[fF][tT][pP]/,Hs={_backpedal:al,anyPunctuation:rv,autolink:av,blockSkip:xk,br:ad,code:Zk,del:al,delLDelim:al,delRDelim:al,emStrongLDelim:$k,emStrongRDelimAst:tv,emStrongRDelimUnd:lv,escape:Vk,link:fv,nolink:pd,punctuation:Xk,reflink:dd,reflinkSearch:dv,tag:uv,text:Yk,url:al},pv={...Hs,link:rt(/^!?\[(label)\]\((.*?)\)/).replace("label",Oi).getRegex(),reflink:rt(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",Oi).getRegex()},Cs={...Hs,emStrongRDelimAst:nv,emStrongLDelim:ev,delLDelim:iv,delRDelim:ov,url:rt(/^((?:protocol):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/).replace("protocol",Ea).replace("email",/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/).getRegex(),_backpedal:/(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])((?:\\[\s\S]|[^\\])*?(?:\\[\s\S]|[^\s~\\]))\1(?=[^~]|$)/,text:rt(/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\":">",'"':""","'":"'"},Ta=n=>mv[n];function Sn(n,e){if(e){if(Zt.escapeTest.test(n))return n.replace(Zt.escapeReplace,Ta)}else if(Zt.escapeTestNoEncode.test(n))return n.replace(Zt.escapeReplaceNoEncode,Ta);return n}function Sa(n){try{n=encodeURI(n).replace(Zt.percentDecode,"%")}catch{return null}return n}function Ca(n,e){var s;let t=n.replace(Zt.findPipe,(o,c,u)=>{let d=!1,p=c;for(;--p>=0&&u[p]==="\\";)d=!d;return d?"|":" |"}),l=t.split(Zt.splitPipe),i=0;if(l[0].trim()||l.shift(),l.length>0&&!((s=l.at(-1))!=null&&s.trim())&&l.pop(),e)if(l.length>e)l.splice(e);else for(;l.length=0&&Zt.blankLine.test(e[t]);)t--;return e.length-t<=2?n:e.slice(0,t+1).join(` -`)}function gv(n,e){if(n.indexOf(e[1])===-1)return-1;let t=0;for(let l=0;l0?-2:-1}function _v(n,e=0){let t=e,l="";for(let i of n)if(i===" "){let s=4-t%4;l+=" ".repeat(s),t+=s}else l+=i,t++;return l}function Na(n,e,t,l,i){let s=e.href,o=e.title||null,c=n[1].replace(i.other.outputLinkReplace,"$1");l.state.inLink=!0;let u={type:n[0].charAt(0)==="!"?"image":"link",raw:t,href:s,title:o,text:c,tokens:l.inlineTokens(c)};return l.state.inLink=!1,u}function bv(n,e,t){let l=n.match(t.other.indentCodeCompensation);if(l===null)return e;let i=l[1];return e.split(` -`).map(s=>{let o=s.match(t.other.beginningSpace);if(o===null)return s;let[c]=o;return c.length>=i.length?s.slice(i.length):s}).join(` -`)}var qi=class{constructor(n){lt(this,"options");lt(this,"rules");lt(this,"lexer");this.options=n||ml}space(n){let e=this.rules.block.newline.exec(n);if(e&&e[0].length>0)return{type:"space",raw:e[0]}}code(n){let e=this.rules.block.code.exec(n);if(e){let t=this.options.pedantic?e[0]:Aa(e[0]),l=t.replace(this.rules.other.codeRemoveIndent,"");return{type:"code",raw:t,codeBlockStyle:"indented",text:l}}}fences(n){let e=this.rules.block.fences.exec(n);if(e){let t=e[0],l=bv(t,e[3]||"",this.rules);return{type:"code",raw:t,lang:e[2]?e[2].trim().replace(this.rules.inline.anyPunctuation,"$1"):e[2],text:l}}}heading(n){let e=this.rules.block.heading.exec(n);if(e){let t=e[2].trim();if(this.rules.other.endingHash.test(t)){let l=Hn(t,"#");(this.options.pedantic||!l||this.rules.other.endingSpaceChar.test(l))&&(t=l.trim())}return{type:"heading",raw:Hn(e[0],` -`),depth:e[1].length,text:t,tokens:this.lexer.inline(t)}}}hr(n){let e=this.rules.block.hr.exec(n);if(e)return{type:"hr",raw:Hn(e[0],` -`)}}blockquote(n){let e=this.rules.block.blockquote.exec(n);if(e){let t=Hn(e[0],` -`).split(` -`),l="",i="",s=[];for(;t.length>0;){let o=!1,c=[],u;for(u=0;u1,i={type:"list",raw:"",ordered:l,start:l?+t.slice(0,-1):"",loose:!1,items:[]};t=l?`\\d{1,9}\\${t.slice(-1)}`:`\\${t}`,this.options.pedantic&&(t=l?t:"[*+-]");let s=this.rules.other.listItemRegex(t),o=!1;for(;n;){let u=!1,d="",p="";if(!(e=s.exec(n))||this.rules.block.hr.test(n))break;d=e[0],n=n.substring(d.length);let h=_v(e[2].split(` -`,1)[0],e[1].length),m=n.split(` -`,1)[0],g=!h.trim(),b=0;if(this.options.pedantic?(b=2,p=h.trimStart()):g?b=e[1].length+1:(b=h.search(this.rules.other.nonSpaceChar),b=b>4?1:b,p=h.slice(b),b+=e[1].length),g&&this.rules.other.blankLine.test(m)&&(d+=m+` -`,n=n.substring(m.length+1),u=!0),!u){let k=this.rules.other.nextBulletRegex(b),y=this.rules.other.hrRegex(b),E=this.rules.other.fencesBeginRegex(b),T=this.rules.other.headingBeginRegex(b),N=this.rules.other.htmlBeginRegex(b),A=this.rules.other.blockquoteBeginRegex(b);for(;n;){let I=n.split(` -`,1)[0],R;if(m=I,this.options.pedantic?(m=m.replace(this.rules.other.listReplaceNesting," "),R=m):R=m.replace(this.rules.other.tabCharGlobal," "),E.test(m)||T.test(m)||N.test(m)||A.test(m)||k.test(m)||y.test(m))break;if(R.search(this.rules.other.nonSpaceChar)>=b||!m.trim())p+=` -`+R.slice(b);else{if(g||h.replace(this.rules.other.tabCharGlobal," ").search(this.rules.other.nonSpaceChar)>=4||E.test(h)||T.test(h)||y.test(h))break;p+=` -`+m}g=!m.trim(),d+=I+` -`,n=n.substring(I.length+1),h=R.slice(b)}}i.loose||(o?i.loose=!0:this.rules.other.doubleBlankLine.test(d)&&(o=!0)),i.items.push({type:"list_item",raw:d,task:!!this.options.gfm&&this.rules.other.listIsTask.test(p),loose:!1,text:p,tokens:[]}),i.raw+=d}let c=i.items.at(-1);if(c)c.raw=c.raw.trimEnd(),c.text=c.text.trimEnd();else return;i.raw=i.raw.trimEnd();for(let u of i.items){this.lexer.state.top=!1,u.tokens=this.lexer.blockTokens(u.text,[]);let d=u.tokens[0];if(u.task&&((d==null?void 0:d.type)==="text"||(d==null?void 0:d.type)==="paragraph")){u.text=u.text.replace(this.rules.other.listReplaceTask,""),d.raw=d.raw.replace(this.rules.other.listReplaceTask,""),d.text=d.text.replace(this.rules.other.listReplaceTask,"");for(let h=this.lexer.inlineQueue.length-1;h>=0;h--)if(this.rules.other.listIsTask.test(this.lexer.inlineQueue[h].src)){this.lexer.inlineQueue[h].src=this.lexer.inlineQueue[h].src.replace(this.rules.other.listReplaceTask,"");break}let p=this.rules.other.listTaskCheckbox.exec(u.raw);if(p){let h={type:"checkbox",raw:p[0]+" ",checked:p[0]!=="[ ]"};u.checked=h.checked,i.loose?u.tokens[0]&&["paragraph","text"].includes(u.tokens[0].type)&&"tokens"in u.tokens[0]&&u.tokens[0].tokens?(u.tokens[0].raw=h.raw+u.tokens[0].raw,u.tokens[0].text=h.raw+u.tokens[0].text,u.tokens[0].tokens.unshift(h)):u.tokens.unshift({type:"paragraph",raw:h.raw,text:h.raw,tokens:[h]}):u.tokens.unshift(h)}}else u.task&&(u.task=!1);if(!i.loose){let p=u.tokens.filter(m=>m.type==="space"),h=p.length>0&&p.some(m=>this.rules.other.anyLine.test(m.raw));i.loose=h}}if(i.loose)for(let u of i.items){u.loose=!0;for(let d of u.tokens)d.type==="text"&&(d.type="paragraph")}return i}}html(n){let e=this.rules.block.html.exec(n);if(e){let t=Aa(e[0]);return{type:"html",block:!0,raw:t,pre:e[1]==="pre"||e[1]==="script"||e[1]==="style",text:t}}}def(n){let e=this.rules.block.def.exec(n);if(e){let t=e[1].toLowerCase().replace(this.rules.other.multipleSpaceGlobal," "),l=e[2]?e[2].replace(this.rules.other.hrefBrackets,"$1").replace(this.rules.inline.anyPunctuation,"$1"):"",i=e[3]?e[3].substring(1,e[3].length-1).replace(this.rules.inline.anyPunctuation,"$1"):e[3];return{type:"def",tag:t,raw:Hn(e[0],` -`),href:l,title:i}}}table(n){var o;let e=this.rules.block.table.exec(n);if(!e||!this.rules.other.tableDelimiter.test(e[2]))return;let t=Ca(e[1]),l=e[2].replace(this.rules.other.tableAlignChars,"").split("|"),i=(o=e[3])!=null&&o.trim()?e[3].replace(this.rules.other.tableRowBlankLine,"").split(` -`):[],s={type:"table",raw:Hn(e[0],` -`),header:[],align:[],rows:[]};if(t.length===l.length){for(let c of l)this.rules.other.tableAlignRight.test(c)?s.align.push("right"):this.rules.other.tableAlignCenter.test(c)?s.align.push("center"):this.rules.other.tableAlignLeft.test(c)?s.align.push("left"):s.align.push(null);for(let c=0;c({text:u,tokens:this.lexer.inline(u),header:!1,align:s.align[d]})));return s}}lheading(n){let e=this.rules.block.lheading.exec(n);if(e){let t=e[1].trim();return{type:"heading",raw:Hn(e[0],` -`),depth:e[2].charAt(0)==="="?1:2,text:t,tokens:this.lexer.inline(t)}}}paragraph(n){let e=this.rules.block.paragraph.exec(n);if(e){let t=e[1].charAt(e[1].length-1)===` -`?e[1].slice(0,-1):e[1];return{type:"paragraph",raw:e[0],text:t,tokens:this.lexer.inline(t)}}}text(n){let e=this.rules.block.text.exec(n);if(e)return{type:"text",raw:e[0],text:e[0],tokens:this.lexer.inline(e[0])}}escape(n){let e=this.rules.inline.escape.exec(n);if(e)return{type:"escape",raw:e[0],text:e[1]}}tag(n){let e=this.rules.inline.tag.exec(n);if(e)return!this.lexer.state.inLink&&this.rules.other.startATag.test(e[0])?this.lexer.state.inLink=!0:this.lexer.state.inLink&&this.rules.other.endATag.test(e[0])&&(this.lexer.state.inLink=!1),!this.lexer.state.inRawBlock&&this.rules.other.startPreScriptTag.test(e[0])?this.lexer.state.inRawBlock=!0:this.lexer.state.inRawBlock&&this.rules.other.endPreScriptTag.test(e[0])&&(this.lexer.state.inRawBlock=!1),{type:"html",raw:e[0],inLink:this.lexer.state.inLink,inRawBlock:this.lexer.state.inRawBlock,block:!1,text:e[0]}}link(n){let e=this.rules.inline.link.exec(n);if(e){let t=e[2].trim();if(!this.options.pedantic&&this.rules.other.startAngleBracket.test(t)){if(!this.rules.other.endAngleBracket.test(t))return;let s=Hn(t.slice(0,-1),"\\");if((t.length-s.length)%2===0)return}else{let s=gv(e[2],"()");if(s===-2)return;if(s>-1){let o=(e[0].indexOf("!")===0?5:4)+e[1].length+s;e[2]=e[2].substring(0,s),e[0]=e[0].substring(0,o).trim(),e[3]=""}}let l=e[2],i="";if(this.options.pedantic){let s=this.rules.other.pedanticHrefTitle.exec(l);s&&(l=s[1],i=s[3])}else i=e[3]?e[3].slice(1,-1):"";return l=l.trim(),this.rules.other.startAngleBracket.test(l)&&(this.options.pedantic&&!this.rules.other.endAngleBracket.test(t)?l=l.slice(1):l=l.slice(1,-1)),Na(e,{href:l&&l.replace(this.rules.inline.anyPunctuation,"$1"),title:i&&i.replace(this.rules.inline.anyPunctuation,"$1")},e[0],this.lexer,this.rules)}}reflink(n,e){let t;if((t=this.rules.inline.reflink.exec(n))||(t=this.rules.inline.nolink.exec(n))){let l=(t[2]||t[1]).replace(this.rules.other.multipleSpaceGlobal," "),i=e[l.toLowerCase()];if(!i){let s=t[0].charAt(0);return{type:"text",raw:s,text:s}}return Na(t,i,t[0],this.lexer,this.rules)}}emStrong(n,e,t=""){let l=this.rules.inline.emStrongLDelim.exec(n);if(!(!l||!l[1]&&!l[2]&&!l[3]&&!l[4]||l[4]&&t.match(this.rules.other.unicodeAlphaNumeric))&&(!(l[1]||l[3])||!t||this.rules.inline.punctuation.exec(t))){let i=[...l[0]].length-1,s,o,c=i,u=0,d=l[0][0]==="*"?this.rules.inline.emStrongRDelimAst:this.rules.inline.emStrongRDelimUnd;for(d.lastIndex=0,e=e.slice(-1*n.length+i);(l=d.exec(e))!==null;){if(s=l[1]||l[2]||l[3]||l[4]||l[5]||l[6],!s)continue;if(o=[...s].length,l[3]||l[4]){c+=o;continue}else if((l[5]||l[6])&&i%3&&!((i+o)%3)){u+=o;continue}if(c-=o,c>0)continue;o=Math.min(o,o+c+u);let p=[...l[0]][0].length,h=n.slice(0,i+l.index+p+o);if(Math.min(i,o)%2){let g=h.slice(1,-1);return{type:"em",raw:h,text:g,tokens:this.lexer.inlineTokens(g)}}let m=h.slice(2,-2);return{type:"strong",raw:h,text:m,tokens:this.lexer.inlineTokens(m)}}}}codespan(n){let e=this.rules.inline.code.exec(n);if(e){let t=e[2].replace(this.rules.other.newLineCharGlobal," "),l=this.rules.other.nonSpaceChar.test(t),i=this.rules.other.startingSpaceChar.test(t)&&this.rules.other.endingSpaceChar.test(t);return l&&i&&(t=t.substring(1,t.length-1)),{type:"codespan",raw:e[0],text:t}}}br(n){let e=this.rules.inline.br.exec(n);if(e)return{type:"br",raw:e[0]}}del(n,e,t=""){let l=this.rules.inline.delLDelim.exec(n);if(l&&(!l[1]||!t||this.rules.inline.punctuation.exec(t))){let i=[...l[0]].length-1,s,o,c=i,u=this.rules.inline.delRDelim;for(u.lastIndex=0,e=e.slice(-1*n.length+i);(l=u.exec(e))!==null;){if(s=l[1]||l[2]||l[3]||l[4]||l[5]||l[6],!s||(o=[...s].length,o!==i))continue;if(l[3]||l[4]){c+=o;continue}if(c-=o,c>0)continue;o=Math.min(o,o+c);let d=[...l[0]][0].length,p=n.slice(0,i+l.index+d+o),h=p.slice(i,-i);return{type:"del",raw:p,text:h,tokens:this.lexer.inlineTokens(h)}}}}autolink(n){let e=this.rules.inline.autolink.exec(n);if(e){let t,l;return e[2]==="@"?(t=e[1],l="mailto:"+t):(t=e[1],l=t),{type:"link",raw:e[0],text:t,href:l,tokens:[{type:"text",raw:t,text:t}]}}}url(n){var t;let e;if(e=this.rules.inline.url.exec(n)){let l,i;if(e[2]==="@")l=e[0],i="mailto:"+l;else{let s;do s=e[0],e[0]=((t=this.rules.inline._backpedal.exec(e[0]))==null?void 0:t[0])??"";while(s!==e[0]);l=e[0],e[1]==="www."?i="http://"+e[0]:i=e[0]}return{type:"link",raw:e[0],text:l,href:i,tokens:[{type:"text",raw:l,text:l}]}}}inlineText(n){let e=this.rules.inline.text.exec(n);if(e){let t=this.lexer.state.inRawBlock;return{type:"text",raw:e[0],text:e[0],escaped:t}}}},gn=class As{constructor(e){lt(this,"tokens");lt(this,"options");lt(this,"state");lt(this,"inlineQueue");lt(this,"tokenizer");this.tokens=[],this.tokens.links=Object.create(null),this.options=e||ml,this.options.tokenizer=this.options.tokenizer||new qi,this.tokenizer=this.options.tokenizer,this.tokenizer.options=this.options,this.tokenizer.lexer=this,this.inlineQueue=[],this.state={inLink:!1,inRawBlock:!1,top:!0};let t={other:Zt,block:vi.normal,inline:Kl.normal};this.options.pedantic?(t.block=vi.pedantic,t.inline=Kl.pedantic):this.options.gfm&&(t.block=vi.gfm,this.options.breaks?t.inline=Kl.breaks:t.inline=Kl.gfm),this.tokenizer.rules=t}static get rules(){return{block:vi,inline:Kl}}static lex(e,t){return new As(t).lex(e)}static lexInline(e,t){return new As(t).inlineTokens(e)}lex(e){e=e.replace(Zt.carriageReturn,` -`),this.blockTokens(e,this.tokens);for(let t=0;t(u=p.call({lexer:this},e,t))?(e=e.substring(u.raw.length),t.push(u),!0):!1))continue;if(u=this.tokenizer.space(e)){e=e.substring(u.raw.length);let p=t.at(-1);u.raw.length===1&&p!==void 0?p.raw+=` -`:t.push(u);continue}if(u=this.tokenizer.code(e)){e=e.substring(u.raw.length);let p=t.at(-1);(p==null?void 0:p.type)==="paragraph"||(p==null?void 0:p.type)==="text"?(p.raw+=(p.raw.endsWith(` -`)?"":` -`)+u.raw,p.text+=` -`+u.text,this.inlineQueue.at(-1).src=p.text):t.push(u);continue}if(u=this.tokenizer.fences(e)){e=e.substring(u.raw.length),t.push(u);continue}if(u=this.tokenizer.heading(e)){e=e.substring(u.raw.length),t.push(u);continue}if(u=this.tokenizer.hr(e)){e=e.substring(u.raw.length),t.push(u);continue}if(u=this.tokenizer.blockquote(e)){e=e.substring(u.raw.length),t.push(u);continue}if(u=this.tokenizer.list(e)){e=e.substring(u.raw.length),t.push(u);continue}if(u=this.tokenizer.html(e)){e=e.substring(u.raw.length),t.push(u);continue}if(u=this.tokenizer.def(e)){e=e.substring(u.raw.length);let p=t.at(-1);(p==null?void 0:p.type)==="paragraph"||(p==null?void 0:p.type)==="text"?(p.raw+=(p.raw.endsWith(` -`)?"":` -`)+u.raw,p.text+=` -`+u.raw,this.inlineQueue.at(-1).src=p.text):this.tokens.links[u.tag]||(this.tokens.links[u.tag]={href:u.href,title:u.title},t.push(u));continue}if(u=this.tokenizer.table(e)){e=e.substring(u.raw.length),t.push(u);continue}if(u=this.tokenizer.lheading(e)){e=e.substring(u.raw.length),t.push(u);continue}let d=e;if((c=this.options.extensions)!=null&&c.startBlock){let p=1/0,h=e.slice(1),m;this.options.extensions.startBlock.forEach(g=>{m=g.call({lexer:this},h),typeof m=="number"&&m>=0&&(p=Math.min(p,m))}),p<1/0&&p>=0&&(d=e.substring(0,p+1))}if(this.state.top&&(u=this.tokenizer.paragraph(d))){let p=t.at(-1);l&&(p==null?void 0:p.type)==="paragraph"?(p.raw+=(p.raw.endsWith(` -`)?"":` -`)+u.raw,p.text+=` -`+u.text,this.inlineQueue.pop(),this.inlineQueue.at(-1).src=p.text):t.push(u),l=d.length!==e.length,e=e.substring(u.raw.length);continue}if(u=this.tokenizer.text(e)){e=e.substring(u.raw.length);let p=t.at(-1);(p==null?void 0:p.type)==="text"?(p.raw+=(p.raw.endsWith(` -`)?"":` -`)+u.raw,p.text+=` -`+u.text,this.inlineQueue.pop(),this.inlineQueue.at(-1).src=p.text):t.push(u);continue}if(e){this.infiniteLoopError(e.charCodeAt(0));break}}return this.state.top=!0,t}inline(e,t=[]){return this.inlineQueue.push({src:e,tokens:t}),t}inlineTokens(e,t=[]){var d,p,h,m,g;this.tokenizer.lexer=this;let l=e,i=null;if(this.tokens.links){let b=Object.keys(this.tokens.links);if(b.length>0)for(;(i=this.tokenizer.rules.inline.reflinkSearch.exec(l))!==null;)b.includes(i[0].slice(i[0].lastIndexOf("[")+1,-1))&&(l=l.slice(0,i.index)+"["+"a".repeat(i[0].length-2)+"]"+l.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;(i=this.tokenizer.rules.inline.anyPunctuation.exec(l))!==null;)l=l.slice(0,i.index)+"++"+l.slice(this.tokenizer.rules.inline.anyPunctuation.lastIndex);let s;for(;(i=this.tokenizer.rules.inline.blockSkip.exec(l))!==null;)s=i[2]?i[2].length:0,l=l.slice(0,i.index+s)+"["+"a".repeat(i[0].length-s-2)+"]"+l.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);l=((p=(d=this.options.hooks)==null?void 0:d.emStrongMask)==null?void 0:p.call({lexer:this},l))??l;let o=!1,c="",u=1/0;for(;e;){if(e.length(b=y.call({lexer:this},e,t))?(e=e.substring(b.raw.length),t.push(b),!0):!1))continue;if(b=this.tokenizer.escape(e)){e=e.substring(b.raw.length),t.push(b);continue}if(b=this.tokenizer.tag(e)){e=e.substring(b.raw.length),t.push(b);continue}if(b=this.tokenizer.link(e)){e=e.substring(b.raw.length),t.push(b);continue}if(b=this.tokenizer.reflink(e,this.tokens.links)){e=e.substring(b.raw.length);let y=t.at(-1);b.type==="text"&&(y==null?void 0:y.type)==="text"?(y.raw+=b.raw,y.text+=b.text):t.push(b);continue}if(b=this.tokenizer.emStrong(e,l,c)){e=e.substring(b.raw.length),t.push(b);continue}if(b=this.tokenizer.codespan(e)){e=e.substring(b.raw.length),t.push(b);continue}if(b=this.tokenizer.br(e)){e=e.substring(b.raw.length),t.push(b);continue}if(b=this.tokenizer.del(e,l,c)){e=e.substring(b.raw.length),t.push(b);continue}if(b=this.tokenizer.autolink(e)){e=e.substring(b.raw.length),t.push(b);continue}if(!this.state.inLink&&(b=this.tokenizer.url(e))){e=e.substring(b.raw.length),t.push(b);continue}let k=e;if((g=this.options.extensions)!=null&&g.startInline){let y=1/0,E=e.slice(1),T;this.options.extensions.startInline.forEach(N=>{T=N.call({lexer:this},E),typeof T=="number"&&T>=0&&(y=Math.min(y,T))}),y<1/0&&y>=0&&(k=e.substring(0,y+1))}if(b=this.tokenizer.inlineText(k)){e=e.substring(b.raw.length),b.raw.slice(-1)!=="_"&&(c=b.raw.slice(-1)),o=!0;let y=t.at(-1);(y==null?void 0:y.type)==="text"?(y.raw+=b.raw,y.text+=b.text):t.push(b);continue}if(e){this.infiniteLoopError(e.charCodeAt(0));break}}return t}infiniteLoopError(e){let t="Infinite loop on byte: "+e;if(this.options.silent)console.error(t);else throw new Error(t)}},Pi=class{constructor(n){lt(this,"options");lt(this,"parser");this.options=n||ml}space(n){return""}code({text:n,lang:e,escaped:t}){var s;let l=(s=(e||"").match(Zt.notSpaceStart))==null?void 0:s[0],i=n.replace(Zt.endingNewline,"")+` -`;return l?'
'+(t?i:Sn(i,!0))+`
-`:"
"+(t?i:Sn(i,!0))+`
-`}blockquote({tokens:n}){return`
-${this.parser.parse(n)}
-`}html({text:n}){return n}def(n){return""}heading({tokens:n,depth:e}){return`${this.parser.parseInline(n)} -`}hr(n){return`
-`}list(n){let e=n.ordered,t=n.start,l="";for(let o=0;o -`+l+" -`}listitem(n){return`
  • ${this.parser.parse(n.tokens)}
  • -`}checkbox({checked:n}){return" '}paragraph({tokens:n}){return`

    ${this.parser.parseInline(n)}

    -`}table(n){let e="",t="";for(let i=0;i${l}`),` - -`+e+` -`+l+`
    -`}tablerow({text:n}){return` -${n} -`}tablecell(n){let e=this.parser.parseInline(n.tokens),t=n.header?"th":"td";return(n.align?`<${t} align="${n.align}">`:`<${t}>`)+e+` -`}strong({tokens:n}){return`${this.parser.parseInline(n)}`}em({tokens:n}){return`${this.parser.parseInline(n)}`}codespan({text:n}){return`${Sn(n,!0)}`}br(n){return"
    "}del({tokens:n}){return`${this.parser.parseInline(n)}`}link({href:n,title:e,tokens:t}){let l=this.parser.parseInline(t),i=Sa(n);if(i===null)return l;n=i;let s='
    ",s}image({href:n,title:e,text:t,tokens:l}){l&&(t=this.parser.parseInline(l,this.parser.textRenderer));let i=Sa(n);if(i===null)return Sn(t);n=i;let s=`${Sn(t)}{let u=o[c].flat(1/0);t=t.concat(this.walkTokens(u,e))}):o.tokens&&(t=t.concat(this.walkTokens(o.tokens,e)))}}return t}use(...n){let e=this.defaults.extensions||{renderers:{},childTokens:{}};return n.forEach(t=>{let l={...t};if(l.async=this.defaults.async||l.async||!1,t.extensions&&(t.extensions.forEach(i=>{if(!i.name)throw new Error("extension name required");if("renderer"in i){let s=e.renderers[i.name];s?e.renderers[i.name]=function(...o){let c=i.renderer.apply(this,o);return c===!1&&(c=s.apply(this,o)),c}:e.renderers[i.name]=i.renderer}if("tokenizer"in i){if(!i.level||i.level!=="block"&&i.level!=="inline")throw new Error("extension level must be 'block' or 'inline'");let s=e[i.level];s?s.unshift(i.tokenizer):e[i.level]=[i.tokenizer],i.start&&(i.level==="block"?e.startBlock?e.startBlock.push(i.start):e.startBlock=[i.start]:i.level==="inline"&&(e.startInline?e.startInline.push(i.start):e.startInline=[i.start]))}"childTokens"in i&&i.childTokens&&(e.childTokens[i.name]=i.childTokens)}),l.extensions=e),t.renderer){let i=this.defaults.renderer||new Pi(this.defaults);for(let s in t.renderer){if(!(s in i))throw new Error(`renderer '${s}' does not exist`);if(["options","parser"].includes(s))continue;let o=s,c=t.renderer[o],u=i[o];i[o]=(...d)=>{let p=c.apply(i,d);return p===!1&&(p=u.apply(i,d)),p||""}}l.renderer=i}if(t.tokenizer){let i=this.defaults.tokenizer||new qi(this.defaults);for(let s in t.tokenizer){if(!(s in i))throw new Error(`tokenizer '${s}' does not exist`);if(["options","rules","lexer"].includes(s))continue;let o=s,c=t.tokenizer[o],u=i[o];i[o]=(...d)=>{let p=c.apply(i,d);return p===!1&&(p=u.apply(i,d)),p}}l.tokenizer=i}if(t.hooks){let i=this.defaults.hooks||new Jl;for(let s in t.hooks){if(!(s in i))throw new Error(`hook '${s}' does not exist`);if(["options","block"].includes(s))continue;let o=s,c=t.hooks[o],u=i[o];Jl.passThroughHooks.has(s)?i[o]=d=>{if(this.defaults.async&&Jl.passThroughHooksRespectAsync.has(s))return(async()=>{let h=await c.call(i,d);return u.call(i,h)})();let p=c.call(i,d);return u.call(i,p)}:i[o]=(...d)=>{if(this.defaults.async)return(async()=>{let h=await c.apply(i,d);return h===!1&&(h=await u.apply(i,d)),h})();let p=c.apply(i,d);return p===!1&&(p=u.apply(i,d)),p}}l.hooks=i}if(t.walkTokens){let i=this.defaults.walkTokens,s=t.walkTokens;l.walkTokens=function(o){let c=[];return c.push(s.call(this,o)),i&&(c=c.concat(i.call(this,o))),c}}this.defaults={...this.defaults,...l}}),this}setOptions(n){return this.defaults={...this.defaults,...n},this}lexer(n,e){return gn.lex(n,e??this.defaults)}parser(n,e){return _n.parse(n,e??this.defaults)}parseMarkdown(n){return(e,t)=>{let l={...t},i={...this.defaults,...l},s=this.onError(!!i.silent,!!i.async);if(this.defaults.async===!0&&l.async===!1)return s(new Error("marked(): The async option was set to true by an extension. Remove async: false from the parse options object to return a Promise."));if(typeof e>"u"||e===null)return s(new Error("marked(): input parameter is undefined or null"));if(typeof e!="string")return s(new Error("marked(): input parameter is of type "+Object.prototype.toString.call(e)+", string expected"));if(i.hooks&&(i.hooks.options=i,i.hooks.block=n),i.async)return(async()=>{let o=i.hooks?await i.hooks.preprocess(e):e,c=await(i.hooks?await i.hooks.provideLexer(n):n?gn.lex:gn.lexInline)(o,i),u=i.hooks?await i.hooks.processAllTokens(c):c;i.walkTokens&&await Promise.all(this.walkTokens(u,i.walkTokens));let d=await(i.hooks?await i.hooks.provideParser(n):n?_n.parse:_n.parseInline)(u,i);return i.hooks?await i.hooks.postprocess(d):d})().catch(s);try{i.hooks&&(e=i.hooks.preprocess(e));let o=(i.hooks?i.hooks.provideLexer(n):n?gn.lex:gn.lexInline)(e,i);i.hooks&&(o=i.hooks.processAllTokens(o)),i.walkTokens&&this.walkTokens(o,i.walkTokens);let c=(i.hooks?i.hooks.provideParser(n):n?_n.parse:_n.parseInline)(o,i);return i.hooks&&(c=i.hooks.postprocess(c)),c}catch(o){return s(o)}}}onError(n,e){return t=>{if(t.message+=` -Please report this to https://github.com/markedjs/marked.`,n){let l="

    An error occurred:

    "+Sn(t.message+"",!0)+"
    ";return e?Promise.resolve(l):l}if(e)return Promise.reject(t);throw t}}},hl=new kv;function pt(n,e){return hl.parse(n,e)}pt.options=pt.setOptions=function(n){return hl.setOptions(n),pt.defaults=hl.defaults,id(pt.defaults),pt};pt.getDefaults=qs;pt.defaults=ml;pt.use=function(...n){return hl.use(...n),pt.defaults=hl.defaults,id(pt.defaults),pt};pt.walkTokens=function(n,e){return hl.walkTokens(n,e)};pt.parseInline=hl.parseInline;pt.Parser=_n;pt.parser=_n.parse;pt.Renderer=Pi;pt.TextRenderer=Ws;pt.Lexer=gn;pt.lexer=gn.lex;pt.Tokenizer=qi;pt.Hooks=Jl;pt.parse=pt;pt.options;pt.setOptions;pt.use;pt.walkTokens;pt.parseInline;_n.parse;gn.lex;/*! @license DOMPurify 3.4.10 | (c) Cure53 and other contributors | Released under the Apache license 2.0 and Mozilla Public License 2.0 | github.com/cure53/DOMPurify/blob/3.4.10/LICENSE */function Ia(n,e){(e==null||e>n.length)&&(e=n.length);for(var t=0,l=Array(e);t2?l-2:0),s=2;s1?t-1:0),i=1;i"u"?null:Nt(BigInt.prototype.toString),qa=typeof Symbol>"u"?null:Nt(Symbol.prototype.toString),Jt=Nt(Object.prototype.hasOwnProperty),Yl=Nt(Object.prototype.toString),zt=Nt(RegExp.prototype.test),rl=Dv(TypeError);function Nt(n){return function(e){e instanceof RegExp&&(e.lastIndex=0);for(var t=arguments.length,l=new Array(t>1?t-1:0),i=1;i2&&arguments[2]!==void 0?arguments[2]:Ql;if(Ma&&Ma(n,null),!Kn(e))return n;let l=e.length;for(;l--;){let i=e[l];if(typeof i=="string"){const s=t(i);s!==i&&(Sv(e)||(e[l]=s),i=s)}n[i]=!0}return n}function Ov(n){for(let e=0;e/g),Uv=Ft(/\${[\w\W]*/g),Hv=Ft(/^data-[\-\w.\u00B7-\uFFFF]+$/),Wv=Ft(/^aria-[\-\w]+$/),ja=Ft(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp|matrix):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),Gv=Ft(/^(?:\w+script|data):/i),Kv=Ft(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),Vv=Ft(/^html$/i),Zv=Ft(/^[a-z][.\w]*(-[.\w]+)+$/i),Ua=Ft(/<[/\w!]/g),Yv=Ft(/<[/\w]/g),Xv=Ft(/<\/no(script|embed|frames)/i),Jv=Ft(/\/>/i),Tn={element:1,attribute:2,text:3,cdataSection:4,entityReference:5,entityNode:6,processingInstruction:7,comment:8,document:9,documentType:10,documentFragment:11,notation:12},Qv=function(){return typeof window>"u"?null:window},xv=function(e,t){if(typeof e!="object"||typeof e.createPolicy!="function")return null;let l=null;const i="data-tt-policy-suffix";t&&t.hasAttribute(i)&&(l=t.getAttribute(i));const s="dompurify"+(l?"#"+l:"");try{return e.createPolicy(s,{createHTML(o){return o},createScriptURL(o){return o}})}catch{return console.warn("TrustedTypes policy "+s+" could not be created."),null}},Ha=function(){return{afterSanitizeAttributes:[],afterSanitizeElements:[],afterSanitizeShadowDOM:[],beforeSanitizeAttributes:[],beforeSanitizeElements:[],beforeSanitizeShadowDOM:[],uponSanitizeAttribute:[],uponSanitizeElement:[],uponSanitizeShadowNode:[]}},Wn=function(e,t,l,i){return Jt(e,t)&&Kn(e[t])?ot(i.base?Xt(i.base):{},e[t],i.transform):l};function gd(){let n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:Qv();const e=Ee=>gd(Ee);if(e.version="3.4.10",e.removed=[],!n||!n.document||n.document.nodeType!==Tn.document||!n.Element)return e.isSupported=!1,e;let t=n.document;const l=t,i=l.currentScript;n.DocumentFragment;const s=n.HTMLTemplateElement,o=n.Node,c=n.Element,u=n.NodeFilter,d=n.NamedNodeMap;d===void 0&&(n.NamedNodeMap||n.MozNamedAttrMap),n.HTMLFormElement;const p=n.DOMParser,h=n.trustedTypes,m=c.prototype,g=Cn(m,"cloneNode"),b=Cn(m,"remove"),k=Cn(m,"nextSibling"),y=Cn(m,"childNodes"),E=Cn(m,"parentNode"),T=Cn(m,"shadowRoot"),N=Cn(m,"attributes"),A=o&&o.prototype?Cn(o.prototype,"nodeType"):null,I=o&&o.prototype?Cn(o.prototype,"nodeName"):null;if(typeof s=="function"){const Ee=t.createElement("template");Ee.content&&Ee.content.ownerDocument&&(t=Ee.content.ownerDocument)}let R,M="",D,z=!1,U=0;const H=function(){if(U>0)throw rl('A configured TRUSTED_TYPES_POLICY callback (createHTML or createScriptURL) must not call DOMPurify.sanitize, as that causes infinite recursion. Do not pass a policy whose callbacks wrap DOMPurify as TRUSTED_TYPES_POLICY; see the "DOMPurify and Trusted Types" section of the README.')},B=function(Z){H(),U++;try{return R.createHTML(Z)}finally{U--}},W=function(Z){H(),U++;try{return R.createScriptURL(Z)}finally{U--}},G=function(){return z||(D=xv(h,i),z=!0),D},V=t,F=V.implementation,L=V.createNodeIterator,q=V.createDocumentFragment,P=V.getElementsByTagName,X=l.importNode;let Y=Ha();e.isSupported=typeof hd=="function"&&typeof E=="function"&&F&&F.createHTMLDocument!==void 0;const J=Fv,ee=jv,ne=Uv,le=Hv,he=Wv,se=Gv,Be=Kv,Ke=Zv;let Me=ja,te=null;const re=ot({},[...Pa,...ms,...gs,..._s,...za]);let Ae=null;const Fe=ot({},[...Ba,...bs,...Fa,...wi]);let we=Object.seal(Ll(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),je=null,Qe=null;const Ne=Object.seal(Ll(null,{tagCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeCheck:{writable:!0,configurable:!1,enumerable:!0,value:null}}));let Ve=!0,Ue=!0,Se=!1,He=!0,Oe=!1,Ge=!0,qe=!1,ue=!1,be=!1,x=!1,ye=!1,me=!1,Ie=!0,it=!1;const st="user-content-";let Ye=!0,dt=!1,Ze={},pe=null;const Pe=ot({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","selectedcontent","style","svg","template","thead","title","video","xmp"]);let ft=null;const mt=ot({},["audio","video","img","source","image","track"]);let At=null;const xt=ot({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),gt="http://www.w3.org/1998/Math/MathML",jt="http://www.w3.org/2000/svg",It="http://www.w3.org/1999/xhtml";let Ut=It,cn=!1,un=null;const Ht=ot({},[gt,jt,It],hs),Nn=Bt(["mi","mo","mn","ms","mtext"]);let Ct=ot({},Nn);const Lt=Bt(["annotation-xml"]);let _t=ot({},Lt);const _l=ot({},["title","style","font","a","script"]);let bn=null;const bl=["application/xhtml+xml","text/html"],en="text/html";let bt=null,Dt=null;const tn=t.createElement("form"),fn=function(Z){return Z instanceof RegExp||Z instanceof Function},Wt=function(){let Z=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if(Dt&&Dt===Z)return;(!Z||typeof Z!="object")&&(Z={}),Z=Xt(Z),bn=bl.indexOf(Z.PARSER_MEDIA_TYPE)===-1?en:Z.PARSER_MEDIA_TYPE,bt=bn==="application/xhtml+xml"?hs:Ql,te=Wn(Z,"ALLOWED_TAGS",re,{transform:bt}),Ae=Wn(Z,"ALLOWED_ATTR",Fe,{transform:bt}),un=Wn(Z,"ALLOWED_NAMESPACES",Ht,{transform:hs}),At=Wn(Z,"ADD_URI_SAFE_ATTR",xt,{transform:bt,base:xt}),ft=Wn(Z,"ADD_DATA_URI_TAGS",mt,{transform:bt,base:mt}),pe=Wn(Z,"FORBID_CONTENTS",Pe,{transform:bt}),je=Wn(Z,"FORBID_TAGS",Xt({}),{transform:bt}),Qe=Wn(Z,"FORBID_ATTR",Xt({}),{transform:bt}),Ze=Jt(Z,"USE_PROFILES")?Z.USE_PROFILES&&typeof Z.USE_PROFILES=="object"?Xt(Z.USE_PROFILES):Z.USE_PROFILES:!1,Ve=Z.ALLOW_ARIA_ATTR!==!1,Ue=Z.ALLOW_DATA_ATTR!==!1,Se=Z.ALLOW_UNKNOWN_PROTOCOLS||!1,He=Z.ALLOW_SELF_CLOSE_IN_ATTR!==!1,Oe=Z.SAFE_FOR_TEMPLATES||!1,Ge=Z.SAFE_FOR_XML!==!1,qe=Z.WHOLE_DOCUMENT||!1,x=Z.RETURN_DOM||!1,ye=Z.RETURN_DOM_FRAGMENT||!1,me=Z.RETURN_TRUSTED_TYPE||!1,be=Z.FORCE_BODY||!1,Ie=Z.SANITIZE_DOM!==!1,it=Z.SANITIZE_NAMED_PROPS||!1,Ye=Z.KEEP_CONTENT!==!1,dt=Z.IN_PLACE||!1,Me=Pv(Z.ALLOWED_URI_REGEXP)?Z.ALLOWED_URI_REGEXP:ja,Ut=typeof Z.NAMESPACE=="string"?Z.NAMESPACE:It,Ct=Jt(Z,"MATHML_TEXT_INTEGRATION_POINTS")&&Z.MATHML_TEXT_INTEGRATION_POINTS&&typeof Z.MATHML_TEXT_INTEGRATION_POINTS=="object"?Xt(Z.MATHML_TEXT_INTEGRATION_POINTS):ot({},Nn),_t=Jt(Z,"HTML_INTEGRATION_POINTS")&&Z.HTML_INTEGRATION_POINTS&&typeof Z.HTML_INTEGRATION_POINTS=="object"?Xt(Z.HTML_INTEGRATION_POINTS):ot({},Lt);const ie=Jt(Z,"CUSTOM_ELEMENT_HANDLING")&&Z.CUSTOM_ELEMENT_HANDLING&&typeof Z.CUSTOM_ELEMENT_HANDLING=="object"?Xt(Z.CUSTOM_ELEMENT_HANDLING):Ll(null);if(we=Ll(null),Jt(ie,"tagNameCheck")&&fn(ie.tagNameCheck)&&(we.tagNameCheck=ie.tagNameCheck),Jt(ie,"attributeNameCheck")&&fn(ie.attributeNameCheck)&&(we.attributeNameCheck=ie.attributeNameCheck),Jt(ie,"allowCustomizedBuiltInElements")&&typeof ie.allowCustomizedBuiltInElements=="boolean"&&(we.allowCustomizedBuiltInElements=ie.allowCustomizedBuiltInElements),Ft(we),Oe&&(Ue=!1),ye&&(x=!0),Ze&&(te=ot({},za),Ae=Ll(null),Ze.html===!0&&(ot(te,Pa),ot(Ae,Ba)),Ze.svg===!0&&(ot(te,ms),ot(Ae,bs),ot(Ae,wi)),Ze.svgFilters===!0&&(ot(te,gs),ot(Ae,bs),ot(Ae,wi)),Ze.mathMl===!0&&(ot(te,_s),ot(Ae,Fa),ot(Ae,wi))),Ne.tagCheck=null,Ne.attributeCheck=null,Jt(Z,"ADD_TAGS")&&(typeof Z.ADD_TAGS=="function"?Ne.tagCheck=Z.ADD_TAGS:Kn(Z.ADD_TAGS)&&(te===re&&(te=Xt(te)),ot(te,Z.ADD_TAGS,bt))),Jt(Z,"ADD_ATTR")&&(typeof Z.ADD_ATTR=="function"?Ne.attributeCheck=Z.ADD_ATTR:Kn(Z.ADD_ATTR)&&(Ae===Fe&&(Ae=Xt(Ae)),ot(Ae,Z.ADD_ATTR,bt))),Jt(Z,"ADD_URI_SAFE_ATTR")&&Kn(Z.ADD_URI_SAFE_ATTR)&&ot(At,Z.ADD_URI_SAFE_ATTR,bt),Jt(Z,"FORBID_CONTENTS")&&Kn(Z.FORBID_CONTENTS)&&(pe===Pe&&(pe=Xt(pe)),ot(pe,Z.FORBID_CONTENTS,bt)),Jt(Z,"ADD_FORBID_CONTENTS")&&Kn(Z.ADD_FORBID_CONTENTS)&&(pe===Pe&&(pe=Xt(pe)),ot(pe,Z.ADD_FORBID_CONTENTS,bt)),Ye&&(te["#text"]=!0),qe&&ot(te,["html","head","body"]),te.table&&(ot(te,["tbody"]),delete je.tbody),Z.TRUSTED_TYPES_POLICY){if(typeof Z.TRUSTED_TYPES_POLICY.createHTML!="function")throw rl('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof Z.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw rl('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');const ve=R;R=Z.TRUSTED_TYPES_POLICY;try{M=B("")}catch(De){throw R=ve,De}}else Z.TRUSTED_TYPES_POLICY===null?(R=void 0,M=""):(R===void 0&&(R=G()),R&&typeof M=="string"&&(M=B("")));(Y.uponSanitizeElement.length>0||Y.uponSanitizeAttribute.length>0)&&te===re&&(te=Xt(te)),Y.uponSanitizeAttribute.length>0&&Ae===Fe&&(Ae=Xt(Ae)),Bt&&Bt(Z),Dt=Z},$t=ot({},[...ms,...gs,...zv]),$=ot({},[..._s,...Bv]),_e=function(Z,ie,ve){return ie.namespaceURI===It?Z==="svg":ie.namespaceURI===gt?Z==="svg"&&(ve==="annotation-xml"||Ct[ve]):!!$t[Z]},tt=function(Z,ie,ve){return ie.namespaceURI===It?Z==="math":ie.namespaceURI===jt?Z==="math"&&_t[ve]:!!$[Z]},ht=function(Z,ie,ve){return ie.namespaceURI===jt&&!_t[ve]||ie.namespaceURI===gt&&!Ct[ve]?!1:!$[Z]&&(_l[Z]||!$t[Z])},In=function(Z){let ie=E(Z);(!ie||!ie.tagName)&&(ie={namespaceURI:Ut,tagName:"template"});const ve=Ql(Z.tagName),De=Ql(ie.tagName);return un[Z.namespaceURI]?Z.namespaceURI===jt?_e(ve,ie,De):Z.namespaceURI===gt?tt(ve,ie,De):Z.namespaceURI===It?ht(ve,ie,De):!!(bn==="application/xhtml+xml"&&un[Z.namespaceURI]):!1},Mt=function(Z){Il(e.removed,{element:Z});try{E(Z).removeChild(Z)}catch{if(b(Z),!E(Z))throw rl("a node selected for removal could not be detached from its tree and cannot be safely returned; refusing to sanitize in place")}},nn=function(Z){const ie=y(Z);if(ie){const De=[];Vl(ie,$e=>{Il(De,$e)}),Vl(De,$e=>{try{b($e)}catch{}})}const ve=N(Z);if(ve)for(let De=ve.length-1;De>=0;--De){const $e=ve[De],nt=$e&&$e.name;if(typeof nt=="string")try{Z.removeAttribute(nt)}catch{}}},Yt=function(Z,ie){try{Il(e.removed,{attribute:ie.getAttributeNode(Z),from:ie})}catch{Il(e.removed,{attribute:null,from:ie})}if(ie.removeAttribute(Z),Z==="is")if(x||ye)try{Mt(ie)}catch{}else try{ie.setAttribute(Z,"")}catch{}},Gt=function(Z){const ie=N(Z);if(ie)for(let ve=ie.length-1;ve>=0;--ve){const De=ie[ve],$e=De&&De.name;if(!(typeof $e!="string"||Ae[bt($e)]))try{Z.removeAttribute($e)}catch{}}},Fl=function(Z){const ie=[Z];for(;ie.length>0;){const ve=ie.pop();(A?A(ve):ve.nodeType)===Tn.element&&Gt(ve);const $e=y(ve);if($e)for(let nt=$e.length-1;nt>=0;--nt)ie.push($e[nt])}},Yn=function(Z){let ie=null,ve=null;if(be)Z=""+Z;else{const nt=La(Z,/^[\r\n\t ]+/);ve=nt&&nt[0]}bn==="application/xhtml+xml"&&Ut===It&&(Z=''+Z+"");const De=R?B(Z):Z;if(Ut===It)try{ie=new p().parseFromString(De,bn)}catch{}if(!ie||!ie.documentElement){ie=F.createDocument(Ut,"template",null);try{ie.documentElement.innerHTML=cn?M:De}catch{}}const $e=ie.body||ie.documentElement;return Z&&ve&&$e.insertBefore(t.createTextNode(ve),$e.childNodes[0]||null),Ut===It?P.call(ie,qe?"html":"body")[0]:qe?ie.documentElement:$e},kl=function(Z){return L.call(Z.ownerDocument||Z,Z,u.SHOW_ELEMENT|u.SHOW_COMMENT|u.SHOW_TEXT|u.SHOW_PROCESSING_INSTRUCTION|u.SHOW_CDATA_SECTION,null)},kn=function(Z){return Z=Zl(Z,J," "),Z=Zl(Z,ee," "),Z=Zl(Z,ne," "),Z},vn=function(Z){var ie;Z.normalize();const ve=L.call(Z.ownerDocument||Z,Z,u.SHOW_TEXT|u.SHOW_COMMENT|u.SHOW_CDATA_SECTION|u.SHOW_PROCESSING_INSTRUCTION,null);let De=ve.nextNode();for(;De;)De.data=kn(De.data),De=ve.nextNode();const $e=(ie=Z.querySelectorAll)===null||ie===void 0?void 0:ie.call(Z,"template");$e&&Vl($e,nt=>{dn(nt.content)&&vn(nt.content)})},zn=function(Z){const ie=I?I(Z):null;return typeof ie!="string"||bt(ie)!=="form"?!1:typeof Z.nodeName!="string"||typeof Z.textContent!="string"||typeof Z.removeChild!="function"||Z.attributes!==N(Z)||typeof Z.removeAttribute!="function"||typeof Z.setAttribute!="function"||typeof Z.namespaceURI!="string"||typeof Z.insertBefore!="function"||typeof Z.hasChildNodes!="function"||Z.nodeType!==A(Z)||Z.childNodes!==y(Z)},dn=function(Z){if(!A||typeof Z!="object"||Z===null)return!1;try{return A(Z)===Tn.documentFragment}catch{return!1}},Mn=function(Z){if(!A||typeof Z!="object"||Z===null)return!1;try{return typeof A(Z)=="number"}catch{return!1}};function Kt(Ee,Z,ie){Ee.length!==0&&Vl(Ee,ve=>{ve.call(e,Z,ie,Dt)})}const vl=function(Z,ie){return!!(Ge&&Z.hasChildNodes()&&!Mn(Z.firstElementChild)&&zt(Ua,Z.textContent)&&zt(Ua,Z.innerHTML)||Ge&&Z.namespaceURI===It&&ie==="style"&&Mn(Z.firstElementChild)||Z.nodeType===Tn.processingInstruction||Ge&&Z.nodeType===Tn.comment&&zt(Yv,Z.data))},oi=function(Z,ie){if(!je[ie]&&Xn(ie)&&(we.tagNameCheck instanceof RegExp&&zt(we.tagNameCheck,ie)||we.tagNameCheck instanceof Function&&we.tagNameCheck(ie)))return!1;if(Ye&&!pe[ie]){const ve=E(Z),De=y(Z);if(De&&ve){const $e=De.length;for(let nt=$e-1;nt>=0;--nt){const St=dt?De[nt]:g(De[nt],!0);ve.insertBefore(St,k(Z))}}}return Mt(Z),!0},jl=function(Z){if(Kt(Y.beforeSanitizeElements,Z,null),zn(Z))return Mt(Z),!0;const ie=bt(I?I(Z):Z.nodeName);if(Kt(Y.uponSanitizeElement,Z,{tagName:ie,allowedTags:te}),vl(Z,ie))return Mt(Z),!0;if(je[ie]||!(Ne.tagCheck instanceof Function&&Ne.tagCheck(ie))&&!te[ie])return oi(Z,ie);if((A?A(Z):Z.nodeType)===Tn.element&&!In(Z)||(ie==="noscript"||ie==="noembed"||ie==="noframes")&&zt(Xv,Z.innerHTML))return Mt(Z),!0;if(Oe&&Z.nodeType===Tn.text){const De=kn(Z.textContent);Z.textContent!==De&&(Il(e.removed,{element:Z.cloneNode()}),Z.textContent=De)}return Kt(Y.afterSanitizeElements,Z,null),!1},Ul=function(Z,ie,ve){if(Qe[ie]||Ie&&(ie==="id"||ie==="name")&&(ve in t||ve in tn))return!1;const De=Ae[ie]||Ne.attributeCheck instanceof Function&&Ne.attributeCheck(ie,Z);if(!(Ue&&zt(le,ie))){if(!(Ve&&zt(he,ie))){if(De){if(!At[ie]){if(!zt(Me,Zl(ve,Be,""))){if(!((ie==="src"||ie==="xlink:href"||ie==="href")&&Z!=="script"&&Da(ve,"data:")===0&&ft[Z])){if(!(Se&&!zt(se,Zl(ve,Be,"")))){if(ve)return!1}}}}}else if(!(Xn(Z)&&(we.tagNameCheck instanceof RegExp&&zt(we.tagNameCheck,Z)||we.tagNameCheck instanceof Function&&we.tagNameCheck(Z))&&(we.attributeNameCheck instanceof RegExp&&zt(we.attributeNameCheck,ie)||we.attributeNameCheck instanceof Function&&we.attributeNameCheck(ie,Z))||ie==="is"&&we.allowCustomizedBuiltInElements&&(we.tagNameCheck instanceof RegExp&&zt(we.tagNameCheck,ve)||we.tagNameCheck instanceof Function&&we.tagNameCheck(ve))))return!1}}return!0},ri=ot({},["annotation-xml","color-profile","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","missing-glyph"]),Xn=function(Z){return!ri[Ql(Z)]&&zt(Ke,Z)},wl=function(Z,ie,ve,De){if(R&&typeof h=="object"&&typeof h.getAttributeType=="function"&&!ve)switch(h.getAttributeType(Z,ie)){case"TrustedHTML":return B(De);case"TrustedScriptURL":return W(De)}return De},Bn=function(Z,ie,ve,De){try{ve?Z.setAttributeNS(ve,ie,De):Z.setAttribute(ie,De),zn(Z)?Mt(Z):Ra(e.removed)}catch{Yt(ie,Z)}},Jn=function(Z){Kt(Y.beforeSanitizeAttributes,Z,null);const ie=Z.attributes;if(!ie||zn(Z))return;const ve={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:Ae,forceKeepAttr:void 0};let De=ie.length;const $e=bt(Z.nodeName);for(;De--;){const nt=ie[De],St=nt.name,wt=nt.namespaceURI,Ot=nt.value,ln=bt(St),Qn=Ot;let qt=St==="value"?Qn:Mv(Qn);if(ve.attrName=ln,ve.attrValue=qt,ve.keepAttr=!0,ve.forceKeepAttr=void 0,Kt(Y.uponSanitizeAttribute,Z,ve),qt=ve.attrValue,it&&(ln==="id"||ln==="name")&&Da(qt,st)!==0&&(Yt(St,Z),qt=st+qt),Ge&&zt(/((--!?|])>)|<\/(style|script|title|xmp|textarea|noscript|iframe|noembed|noframes)/i,qt)){Yt(St,Z);continue}if(ln==="attributename"&&La(qt,"href")){Yt(St,Z);continue}if(!ve.forceKeepAttr){if(!ve.keepAttr){Yt(St,Z);continue}if(!He&&zt(Jv,qt)){Yt(St,Z);continue}if(Oe&&(qt=kn(qt)),!Ul($e,ln,qt)){Yt(St,Z);continue}qt=wl($e,ln,wt,qt),qt!==Qn&&Bn(Z,St,wt,qt)}}Kt(Y.afterSanitizeAttributes,Z,null)},hn=function(Z){let ie=null;const ve=kl(Z);for(Kt(Y.beforeSanitizeShadowDOM,Z,null);ie=ve.nextNode();)if(Kt(Y.uponSanitizeShadowNode,ie,null),jl(ie),Jn(ie),dn(ie.content)&&hn(ie.content),(A?A(ie):ie.nodeType)===Tn.element){const $e=T(ie);dn($e)&&(wn($e),hn($e))}Kt(Y.afterSanitizeShadowDOM,Z,null)},wn=function(Z){const ie=[{node:Z,shadow:null}];for(;ie.length>0;){const ve=ie.pop();if(ve.shadow){hn(ve.shadow);continue}const De=ve.node,nt=(A?A(De):De.nodeType)===Tn.element,St=y(De);if(St)for(let wt=St.length-1;wt>=0;--wt)ie.push({node:St[wt],shadow:null});if(nt){const wt=I?I(De):null;if(typeof wt=="string"&&bt(wt)==="template"){const Ot=De.content;dn(Ot)&&ie.push({node:Ot,shadow:null})}}if(nt){const wt=T(De);dn(wt)&&ie.push({node:null,shadow:wt},{node:wt,shadow:null})}}};return e.sanitize=function(Ee){let Z=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},ie=null,ve=null,De=null,$e=null;if(cn=!Ee,cn&&(Ee=""),typeof Ee!="string"&&!Mn(Ee)&&(Ee=qv(Ee),typeof Ee!="string"))throw rl("dirty is not a string, aborting");if(!e.isSupported)return Ee;ue||Wt(Z),e.removed=[];const nt=dt&&typeof Ee!="string"&&Mn(Ee);if(nt){const Ot=I?I(Ee):Ee.nodeName;if(typeof Ot=="string"){const ln=bt(Ot);if(!te[ln]||je[ln])throw rl("root node is forbidden and cannot be sanitized in-place")}if(zn(Ee))throw rl("root node is clobbered and cannot be sanitized in-place");try{wn(Ee)}catch(ln){throw nn(Ee),ln}}else if(Mn(Ee))ie=Yn(""),ve=ie.ownerDocument.importNode(Ee,!0),ve.nodeType===Tn.element&&ve.nodeName==="BODY"||ve.nodeName==="HTML"?ie=ve:ie.appendChild(ve),wn(ve);else{if(!x&&!Oe&&!qe&&Ee.indexOf("<")===-1)return R&&me?B(Ee):Ee;if(ie=Yn(Ee),!ie)return x?null:me?M:""}ie&&be&&Mt(ie.firstChild);const St=kl(nt?Ee:ie);try{for(;De=St.nextNode();)jl(De),Jn(De),dn(De.content)&&hn(De.content)}catch(Ot){throw nt&&nn(Ee),Ot}if(nt)return Vl(e.removed,Ot=>{Ot.element&&Fl(Ot.element)}),Oe&&vn(Ee),Ee;if(x){if(Oe&&vn(ie),ye)for($e=q.call(ie.ownerDocument);ie.firstChild;)$e.appendChild(ie.firstChild);else $e=ie;return(Ae.shadowroot||Ae.shadowrootmode)&&($e=X.call(l,$e,!0)),$e}let wt=qe?ie.outerHTML:ie.innerHTML;return qe&&te["!doctype"]&&ie.ownerDocument&&ie.ownerDocument.doctype&&ie.ownerDocument.doctype.name&&zt(Vv,ie.ownerDocument.doctype.name)&&(wt=" -`+wt),Oe&&(wt=kn(wt)),R&&me?B(wt):wt},e.setConfig=function(){let Ee=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};Wt(Ee),ue=!0},e.clearConfig=function(){Dt=null,ue=!1,R=D,M=""},e.isValidAttribute=function(Ee,Z,ie){Dt||Wt({});const ve=bt(Ee),De=bt(Z);return Ul(ve,De,ie)},e.addHook=function(Ee,Z){typeof Z=="function"&&Il(Y[Ee],Z)},e.removeHook=function(Ee,Z){if(Z!==void 0){const ie=Nv(Y[Ee],Z);return ie===-1?void 0:Iv(Y[Ee],ie,1)[0]}return Ra(Y[Ee])},e.removeHooks=function(Ee){Y[Ee]=[]},e.removeAllHooks=function(){Y=Ha()},e}var _d=gd();function $v(n){return n&&n.__esModule&&Object.prototype.hasOwnProperty.call(n,"default")?n.default:n}function bd(n){return n instanceof Map?n.clear=n.delete=n.set=function(){throw new Error("map is read-only")}:n instanceof Set&&(n.add=n.clear=n.delete=function(){throw new Error("set is read-only")}),Object.freeze(n),Object.getOwnPropertyNames(n).forEach(e=>{const t=n[e],l=typeof t;(l==="object"||l==="function")&&!Object.isFrozen(t)&&bd(t)}),n}class Wa{constructor(e){e.data===void 0&&(e.data={}),this.data=e.data,this.isMatchIgnored=!1}ignoreMatch(){this.isMatchIgnored=!0}}function kd(n){return n.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")}function Zn(n,...e){const t=Object.create(null);for(const l in n)t[l]=n[l];return e.forEach(function(l){for(const i in l)t[i]=l[i]}),t}const e0="",Ga=n=>!!n.scope,t0=(n,{prefix:e})=>{if(n.startsWith("language:"))return n.replace("language:","language-");if(n.includes(".")){const t=n.split(".");return[`${e}${t.shift()}`,...t.map((l,i)=>`${l}${"_".repeat(i+1)}`)].join(" ")}return`${e}${n}`};class n0{constructor(e,t){this.buffer="",this.classPrefix=t.classPrefix,e.walk(this)}addText(e){this.buffer+=kd(e)}openNode(e){if(!Ga(e))return;const t=t0(e.scope,{prefix:this.classPrefix});this.span(t)}closeNode(e){Ga(e)&&(this.buffer+=e0)}value(){return this.buffer}span(e){this.buffer+=``}}const Ka=(n={})=>{const e={children:[]};return Object.assign(e,n),e};class Gs{constructor(){this.rootNode=Ka(),this.stack=[this.rootNode]}get top(){return this.stack[this.stack.length-1]}get root(){return this.rootNode}add(e){this.top.children.push(e)}openNode(e){const t=Ka({scope:e});this.add(t),this.stack.push(t)}closeNode(){if(this.stack.length>1)return this.stack.pop()}closeAllNodes(){for(;this.closeNode(););}toJSON(){return JSON.stringify(this.rootNode,null,4)}walk(e){return this.constructor._walk(e,this.rootNode)}static _walk(e,t){return typeof t=="string"?e.addText(t):t.children&&(e.openNode(t),t.children.forEach(l=>this._walk(e,l)),e.closeNode(t)),e}static _collapse(e){typeof e!="string"&&e.children&&(e.children.every(t=>typeof t=="string")?e.children=[e.children.join("")]:e.children.forEach(t=>{Gs._collapse(t)}))}}class l0 extends Gs{constructor(e){super(),this.options=e}addText(e){e!==""&&this.add(e)}startScope(e){this.openNode(e)}endScope(){this.closeNode()}__addSublanguage(e,t){const l=e.root;t&&(l.scope=`language:${t}`),this.add(l)}toHTML(){return new n0(this,this.options).value()}finalize(){return this.closeAllNodes(),!0}}function ei(n){return n?typeof n=="string"?n:n.source:null}function vd(n){return gl("(?=",n,")")}function i0(n){return gl("(?:",n,")*")}function s0(n){return gl("(?:",n,")?")}function gl(...n){return n.map(t=>ei(t)).join("")}function o0(n){const e=n[n.length-1];return typeof e=="object"&&e.constructor===Object?(n.splice(n.length-1,1),e):{}}function Ks(...n){return"("+(o0(n).capture?"":"?:")+n.map(l=>ei(l)).join("|")+")"}function wd(n){return new RegExp(n.toString()+"|").exec("").length-1}function r0(n,e){const t=n&&n.exec(e);return t&&t.index===0}const a0=/\[(?:[^\\\]]|\\.)*\]|\(\??|\\([1-9][0-9]*)|\\./;function Vs(n,{joinWith:e}){let t=0;return n.map(l=>{t+=1;const i=t;let s=ei(l),o="";for(;s.length>0;){const c=a0.exec(s);if(!c){o+=s;break}o+=s.substring(0,c.index),s=s.substring(c.index+c[0].length),c[0][0]==="\\"&&c[1]?o+="\\"+String(Number(c[1])+i):(o+=c[0],c[0]==="("&&t++)}return o}).map(l=>`(${l})`).join(e)}const c0=/\b\B/,yd="[a-zA-Z]\\w*",Zs="[a-zA-Z_]\\w*",Ed="\\b\\d+(\\.\\d+)?",Td="(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",Sd="\\b(0b[01]+)",u0="!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~",f0=(n={})=>{const e=/^#![ ]*\//;return n.binary&&(n.begin=gl(e,/.*\b/,n.binary,/\b.*/)),Zn({scope:"meta",begin:e,end:/$/,relevance:0,"on:begin":(t,l)=>{t.index!==0&&l.ignoreMatch()}},n)},ti={begin:"\\\\[\\s\\S]",relevance:0},d0={scope:"string",begin:"'",end:"'",illegal:"\\n",contains:[ti]},p0={scope:"string",begin:'"',end:'"',illegal:"\\n",contains:[ti]},h0={begin:/\b(a|an|the|are|I'm|isn't|don't|doesn't|won't|but|just|should|pretty|simply|enough|gonna|going|wtf|so|such|will|you|your|they|like|more)\b/},Wi=function(n,e,t={}){const l=Zn({scope:"comment",begin:n,end:e,contains:[]},t);l.contains.push({scope:"doctag",begin:"[ ]*(?=(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):)",end:/(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):/,excludeBegin:!0,relevance:0});const i=Ks("I","a","is","so","us","to","at","if","in","it","on",/[A-Za-z]+['](d|ve|re|ll|t|s|n)/,/[A-Za-z]+[-][a-z]+/,/[A-Za-z][a-z]{2,}/);return l.contains.push({begin:gl(/[ ]+/,"(",i,/[.]?[:]?([.][ ]|[ ])/,"){3}")}),l},m0=Wi("//","$"),g0=Wi("/\\*","\\*/"),_0=Wi("#","$"),b0={scope:"number",begin:Ed,relevance:0},k0={scope:"number",begin:Td,relevance:0},v0={scope:"number",begin:Sd,relevance:0},w0={scope:"regexp",begin:/\/(?=[^/\n]*\/)/,end:/\/[gimuy]*/,contains:[ti,{begin:/\[/,end:/\]/,relevance:0,contains:[ti]}]},y0={scope:"title",begin:yd,relevance:0},E0={scope:"title",begin:Zs,relevance:0},T0={begin:"\\.\\s*"+Zs,relevance:0},S0=function(n){return Object.assign(n,{"on:begin":(e,t)=>{t.data._beginMatch=e[1]},"on:end":(e,t)=>{t.data._beginMatch!==e[1]&&t.ignoreMatch()}})};var yi=Object.freeze({__proto__:null,APOS_STRING_MODE:d0,BACKSLASH_ESCAPE:ti,BINARY_NUMBER_MODE:v0,BINARY_NUMBER_RE:Sd,COMMENT:Wi,C_BLOCK_COMMENT_MODE:g0,C_LINE_COMMENT_MODE:m0,C_NUMBER_MODE:k0,C_NUMBER_RE:Td,END_SAME_AS_BEGIN:S0,HASH_COMMENT_MODE:_0,IDENT_RE:yd,MATCH_NOTHING_RE:c0,METHOD_GUARD:T0,NUMBER_MODE:b0,NUMBER_RE:Ed,PHRASAL_WORDS_MODE:h0,QUOTE_STRING_MODE:p0,REGEXP_MODE:w0,RE_STARTERS_RE:u0,SHEBANG:f0,TITLE_MODE:y0,UNDERSCORE_IDENT_RE:Zs,UNDERSCORE_TITLE_MODE:E0});function C0(n,e){n.input[n.index-1]==="."&&e.ignoreMatch()}function A0(n,e){n.className!==void 0&&(n.scope=n.className,delete n.className)}function N0(n,e){e&&n.beginKeywords&&(n.begin="\\b("+n.beginKeywords.split(" ").join("|")+")(?!\\.)(?=\\b|\\s)",n.__beforeBegin=C0,n.keywords=n.keywords||n.beginKeywords,delete n.beginKeywords,n.relevance===void 0&&(n.relevance=0))}function I0(n,e){Array.isArray(n.illegal)&&(n.illegal=Ks(...n.illegal))}function M0(n,e){if(n.match){if(n.begin||n.end)throw new Error("begin & end are not supported with match");n.begin=n.match,delete n.match}}function R0(n,e){n.relevance===void 0&&(n.relevance=1)}const L0=(n,e)=>{if(!n.beforeMatch)return;if(n.starts)throw new Error("beforeMatch cannot be used with starts");const t=Object.assign({},n);Object.keys(n).forEach(l=>{delete n[l]}),n.keywords=t.keywords,n.begin=gl(t.beforeMatch,vd(t.begin)),n.starts={relevance:0,contains:[Object.assign(t,{endsParent:!0})]},n.relevance=0,delete t.beforeMatch},D0=["of","and","for","in","not","or","if","then","parent","list","value"],O0="keyword";function Cd(n,e,t=O0){const l=Object.create(null);return typeof n=="string"?i(t,n.split(" ")):Array.isArray(n)?i(t,n):Object.keys(n).forEach(function(s){Object.assign(l,Cd(n[s],e,s))}),l;function i(s,o){e&&(o=o.map(c=>c.toLowerCase())),o.forEach(function(c){const u=c.split("|");l[u[0]]=[s,q0(u[0],u[1])]})}}function q0(n,e){return e?Number(e):P0(n)?0:1}function P0(n){return D0.includes(n.toLowerCase())}const Va={},fl=n=>{console.error(n)},Za=(n,...e)=>{console.log(`WARN: ${n}`,...e)},Ml=(n,e)=>{Va[`${n}/${e}`]||(console.log(`Deprecated as of ${n}. ${e}`),Va[`${n}/${e}`]=!0)},zi=new Error;function Ad(n,e,{key:t}){let l=0;const i=n[t],s={},o={};for(let c=1;c<=e.length;c++)o[c+l]=i[c],s[c+l]=!0,l+=wd(e[c-1]);n[t]=o,n[t]._emit=s,n[t]._multi=!0}function z0(n){if(Array.isArray(n.begin)){if(n.skip||n.excludeBegin||n.returnBegin)throw fl("skip, excludeBegin, returnBegin not compatible with beginScope: {}"),zi;if(typeof n.beginScope!="object"||n.beginScope===null)throw fl("beginScope must be object"),zi;Ad(n,n.begin,{key:"beginScope"}),n.begin=Vs(n.begin,{joinWith:""})}}function B0(n){if(Array.isArray(n.end)){if(n.skip||n.excludeEnd||n.returnEnd)throw fl("skip, excludeEnd, returnEnd not compatible with endScope: {}"),zi;if(typeof n.endScope!="object"||n.endScope===null)throw fl("endScope must be object"),zi;Ad(n,n.end,{key:"endScope"}),n.end=Vs(n.end,{joinWith:""})}}function F0(n){n.scope&&typeof n.scope=="object"&&n.scope!==null&&(n.beginScope=n.scope,delete n.scope)}function j0(n){F0(n),typeof n.beginScope=="string"&&(n.beginScope={_wrap:n.beginScope}),typeof n.endScope=="string"&&(n.endScope={_wrap:n.endScope}),z0(n),B0(n)}function U0(n){function e(o,c){return new RegExp(ei(o),"m"+(n.case_insensitive?"i":"")+(n.unicodeRegex?"u":"")+(c?"g":""))}class t{constructor(){this.matchIndexes={},this.regexes=[],this.matchAt=1,this.position=0}addRule(c,u){u.position=this.position++,this.matchIndexes[this.matchAt]=u,this.regexes.push([u,c]),this.matchAt+=wd(c)+1}compile(){this.regexes.length===0&&(this.exec=()=>null);const c=this.regexes.map(u=>u[1]);this.matcherRe=e(Vs(c,{joinWith:"|"}),!0),this.lastIndex=0}exec(c){this.matcherRe.lastIndex=this.lastIndex;const u=this.matcherRe.exec(c);if(!u)return null;const d=u.findIndex((h,m)=>m>0&&h!==void 0),p=this.matchIndexes[d];return u.splice(0,d),Object.assign(u,p)}}class l{constructor(){this.rules=[],this.multiRegexes=[],this.count=0,this.lastIndex=0,this.regexIndex=0}getMatcher(c){if(this.multiRegexes[c])return this.multiRegexes[c];const u=new t;return this.rules.slice(c).forEach(([d,p])=>u.addRule(d,p)),u.compile(),this.multiRegexes[c]=u,u}resumingScanAtSamePosition(){return this.regexIndex!==0}considerAll(){this.regexIndex=0}addRule(c,u){this.rules.push([c,u]),u.type==="begin"&&this.count++}exec(c){const u=this.getMatcher(this.regexIndex);u.lastIndex=this.lastIndex;let d=u.exec(c);if(this.resumingScanAtSamePosition()&&!(d&&d.index===this.lastIndex)){const p=this.getMatcher(0);p.lastIndex=this.lastIndex+1,d=p.exec(c)}return d&&(this.regexIndex+=d.position+1,this.regexIndex===this.count&&this.considerAll()),d}}function i(o){const c=new l;return o.contains.forEach(u=>c.addRule(u.begin,{rule:u,type:"begin"})),o.terminatorEnd&&c.addRule(o.terminatorEnd,{type:"end"}),o.illegal&&c.addRule(o.illegal,{type:"illegal"}),c}function s(o,c){const u=o;if(o.isCompiled)return u;[A0,M0,j0,L0].forEach(p=>p(o,c)),n.compilerExtensions.forEach(p=>p(o,c)),o.__beforeBegin=null,[N0,I0,R0].forEach(p=>p(o,c)),o.isCompiled=!0;let d=null;return typeof o.keywords=="object"&&o.keywords.$pattern&&(o.keywords=Object.assign({},o.keywords),d=o.keywords.$pattern,delete o.keywords.$pattern),d=d||/\w+/,o.keywords&&(o.keywords=Cd(o.keywords,n.case_insensitive)),u.keywordPatternRe=e(d,!0),c&&(o.begin||(o.begin=/\B|\b/),u.beginRe=e(u.begin),!o.end&&!o.endsWithParent&&(o.end=/\B|\b/),o.end&&(u.endRe=e(u.end)),u.terminatorEnd=ei(u.end)||"",o.endsWithParent&&c.terminatorEnd&&(u.terminatorEnd+=(o.end?"|":"")+c.terminatorEnd)),o.illegal&&(u.illegalRe=e(o.illegal)),o.contains||(o.contains=[]),o.contains=[].concat(...o.contains.map(function(p){return H0(p==="self"?o:p)})),o.contains.forEach(function(p){s(p,u)}),o.starts&&s(o.starts,c),u.matcher=i(u),u}if(n.compilerExtensions||(n.compilerExtensions=[]),n.contains&&n.contains.includes("self"))throw new Error("ERR: contains `self` is not supported at the top-level of a language. See documentation.");return n.classNameAliases=Zn(n.classNameAliases||{}),s(n)}function Nd(n){return n?n.endsWithParent||Nd(n.starts):!1}function H0(n){return n.variants&&!n.cachedVariants&&(n.cachedVariants=n.variants.map(function(e){return Zn(n,{variants:null},e)})),n.cachedVariants?n.cachedVariants:Nd(n)?Zn(n,{starts:n.starts?Zn(n.starts):null}):Object.isFrozen(n)?Zn(n):n}var W0="11.11.1";class G0 extends Error{constructor(e,t){super(e),this.name="HTMLInjectionError",this.html=t}}const ks=kd,Ya=Zn,Xa=Symbol("nomatch"),K0=7,Id=function(n){const e=Object.create(null),t=Object.create(null),l=[];let i=!0;const s="Could not find the language '{}', did you forget to load/include a language module?",o={disableAutodetect:!0,name:"Plain text",contains:[]};let c={ignoreUnescapedHTML:!1,throwUnescapedHTML:!1,noHighlightRe:/^(no-?highlight)$/i,languageDetectRe:/\blang(?:uage)?-([\w-]+)\b/i,classPrefix:"hljs-",cssSelector:"pre code",languages:null,__emitter:l0};function u(F){return c.noHighlightRe.test(F)}function d(F){let L=F.className+" ";L+=F.parentNode?F.parentNode.className:"";const q=c.languageDetectRe.exec(L);if(q){const P=D(q[1]);return P||(Za(s.replace("{}",q[1])),Za("Falling back to no-highlight mode for this block.",F)),P?q[1]:"no-highlight"}return L.split(/\s+/).find(P=>u(P)||D(P))}function p(F,L,q){let P="",X="";typeof L=="object"?(P=F,q=L.ignoreIllegals,X=L.language):(Ml("10.7.0","highlight(lang, code, ...args) has been deprecated."),Ml("10.7.0",`Please use highlight(code, options) instead. -https://github.com/highlightjs/highlight.js/issues/2277`),X=F,P=L),q===void 0&&(q=!0);const Y={code:P,language:X};G("before:highlight",Y);const J=Y.result?Y.result:h(Y.language,Y.code,q);return J.code=Y.code,G("after:highlight",J),J}function h(F,L,q,P){const X=Object.create(null);function Y(ue,be){return ue.keywords[be]}function J(){if(!Ne.keywords){Ue.addText(Se);return}let ue=0;Ne.keywordPatternRe.lastIndex=0;let be=Ne.keywordPatternRe.exec(Se),x="";for(;be;){x+=Se.substring(ue,be.index);const ye=we.case_insensitive?be[0].toLowerCase():be[0],me=Y(Ne,ye);if(me){const[Ie,it]=me;if(Ue.addText(x),x="",X[ye]=(X[ye]||0)+1,X[ye]<=K0&&(He+=it),Ie.startsWith("_"))x+=be[0];else{const st=we.classNameAliases[Ie]||Ie;le(be[0],st)}}else x+=be[0];ue=Ne.keywordPatternRe.lastIndex,be=Ne.keywordPatternRe.exec(Se)}x+=Se.substring(ue),Ue.addText(x)}function ee(){if(Se==="")return;let ue=null;if(typeof Ne.subLanguage=="string"){if(!e[Ne.subLanguage]){Ue.addText(Se);return}ue=h(Ne.subLanguage,Se,!0,Ve[Ne.subLanguage]),Ve[Ne.subLanguage]=ue._top}else ue=g(Se,Ne.subLanguage.length?Ne.subLanguage:null);Ne.relevance>0&&(He+=ue.relevance),Ue.__addSublanguage(ue._emitter,ue.language)}function ne(){Ne.subLanguage!=null?ee():J(),Se=""}function le(ue,be){ue!==""&&(Ue.startScope(be),Ue.addText(ue),Ue.endScope())}function he(ue,be){let x=1;const ye=be.length-1;for(;x<=ye;){if(!ue._emit[x]){x++;continue}const me=we.classNameAliases[ue[x]]||ue[x],Ie=be[x];me?le(Ie,me):(Se=Ie,J(),Se=""),x++}}function se(ue,be){return ue.scope&&typeof ue.scope=="string"&&Ue.openNode(we.classNameAliases[ue.scope]||ue.scope),ue.beginScope&&(ue.beginScope._wrap?(le(Se,we.classNameAliases[ue.beginScope._wrap]||ue.beginScope._wrap),Se=""):ue.beginScope._multi&&(he(ue.beginScope,be),Se="")),Ne=Object.create(ue,{parent:{value:Ne}}),Ne}function Be(ue,be,x){let ye=r0(ue.endRe,x);if(ye){if(ue["on:end"]){const me=new Wa(ue);ue["on:end"](be,me),me.isMatchIgnored&&(ye=!1)}if(ye){for(;ue.endsParent&&ue.parent;)ue=ue.parent;return ue}}if(ue.endsWithParent)return Be(ue.parent,be,x)}function Ke(ue){return Ne.matcher.regexIndex===0?(Se+=ue[0],1):(qe=!0,0)}function Me(ue){const be=ue[0],x=ue.rule,ye=new Wa(x),me=[x.__beforeBegin,x["on:begin"]];for(const Ie of me)if(Ie&&(Ie(ue,ye),ye.isMatchIgnored))return Ke(be);return x.skip?Se+=be:(x.excludeBegin&&(Se+=be),ne(),!x.returnBegin&&!x.excludeBegin&&(Se=be)),se(x,ue),x.returnBegin?0:be.length}function te(ue){const be=ue[0],x=L.substring(ue.index),ye=Be(Ne,ue,x);if(!ye)return Xa;const me=Ne;Ne.endScope&&Ne.endScope._wrap?(ne(),le(be,Ne.endScope._wrap)):Ne.endScope&&Ne.endScope._multi?(ne(),he(Ne.endScope,ue)):me.skip?Se+=be:(me.returnEnd||me.excludeEnd||(Se+=be),ne(),me.excludeEnd&&(Se=be));do Ne.scope&&Ue.closeNode(),!Ne.skip&&!Ne.subLanguage&&(He+=Ne.relevance),Ne=Ne.parent;while(Ne!==ye.parent);return ye.starts&&se(ye.starts,ue),me.returnEnd?0:be.length}function re(){const ue=[];for(let be=Ne;be!==we;be=be.parent)be.scope&&ue.unshift(be.scope);ue.forEach(be=>Ue.openNode(be))}let Ae={};function Fe(ue,be){const x=be&&be[0];if(Se+=ue,x==null)return ne(),0;if(Ae.type==="begin"&&be.type==="end"&&Ae.index===be.index&&x===""){if(Se+=L.slice(be.index,be.index+1),!i){const ye=new Error(`0 width match regex (${F})`);throw ye.languageName=F,ye.badRule=Ae.rule,ye}return 1}if(Ae=be,be.type==="begin")return Me(be);if(be.type==="illegal"&&!q){const ye=new Error('Illegal lexeme "'+x+'" for mode "'+(Ne.scope||"")+'"');throw ye.mode=Ne,ye}else if(be.type==="end"){const ye=te(be);if(ye!==Xa)return ye}if(be.type==="illegal"&&x==="")return Se+=` -`,1;if(Ge>1e5&&Ge>be.index*3)throw new Error("potential infinite loop, way more iterations than matches");return Se+=x,x.length}const we=D(F);if(!we)throw fl(s.replace("{}",F)),new Error('Unknown language: "'+F+'"');const je=U0(we);let Qe="",Ne=P||je;const Ve={},Ue=new c.__emitter(c);re();let Se="",He=0,Oe=0,Ge=0,qe=!1;try{if(we.__emitTokens)we.__emitTokens(L,Ue);else{for(Ne.matcher.considerAll();;){Ge++,qe?qe=!1:Ne.matcher.considerAll(),Ne.matcher.lastIndex=Oe;const ue=Ne.matcher.exec(L);if(!ue)break;const be=L.substring(Oe,ue.index),x=Fe(be,ue);Oe=ue.index+x}Fe(L.substring(Oe))}return Ue.finalize(),Qe=Ue.toHTML(),{language:F,value:Qe,relevance:He,illegal:!1,_emitter:Ue,_top:Ne}}catch(ue){if(ue.message&&ue.message.includes("Illegal"))return{language:F,value:ks(L),illegal:!0,relevance:0,_illegalBy:{message:ue.message,index:Oe,context:L.slice(Oe-100,Oe+100),mode:ue.mode,resultSoFar:Qe},_emitter:Ue};if(i)return{language:F,value:ks(L),illegal:!1,relevance:0,errorRaised:ue,_emitter:Ue,_top:Ne};throw ue}}function m(F){const L={value:ks(F),illegal:!1,relevance:0,_top:o,_emitter:new c.__emitter(c)};return L._emitter.addText(F),L}function g(F,L){L=L||c.languages||Object.keys(e);const q=m(F),P=L.filter(D).filter(U).map(ne=>h(ne,F,!1));P.unshift(q);const X=P.sort((ne,le)=>{if(ne.relevance!==le.relevance)return le.relevance-ne.relevance;if(ne.language&&le.language){if(D(ne.language).supersetOf===le.language)return 1;if(D(le.language).supersetOf===ne.language)return-1}return 0}),[Y,J]=X,ee=Y;return ee.secondBest=J,ee}function b(F,L,q){const P=L&&t[L]||q;F.classList.add("hljs"),F.classList.add(`language-${P}`)}function k(F){let L=null;const q=d(F);if(u(q))return;if(G("before:highlightElement",{el:F,language:q}),F.dataset.highlighted){console.log("Element previously highlighted. To highlight again, first unset `dataset.highlighted`.",F);return}if(F.children.length>0&&(c.ignoreUnescapedHTML||(console.warn("One of your code blocks includes unescaped HTML. This is a potentially serious security risk."),console.warn("https://github.com/highlightjs/highlight.js/wiki/security"),console.warn("The element with unescaped HTML:"),console.warn(F)),c.throwUnescapedHTML))throw new G0("One of your code blocks includes unescaped HTML.",F.innerHTML);L=F;const P=L.textContent,X=q?p(P,{language:q,ignoreIllegals:!0}):g(P);F.innerHTML=X.value,F.dataset.highlighted="yes",b(F,q,X.language),F.result={language:X.language,re:X.relevance,relevance:X.relevance},X.secondBest&&(F.secondBest={language:X.secondBest.language,relevance:X.secondBest.relevance}),G("after:highlightElement",{el:F,result:X,text:P})}function y(F){c=Ya(c,F)}const E=()=>{A(),Ml("10.6.0","initHighlighting() deprecated. Use highlightAll() now.")};function T(){A(),Ml("10.6.0","initHighlightingOnLoad() deprecated. Use highlightAll() now.")}let N=!1;function A(){function F(){A()}if(document.readyState==="loading"){N||window.addEventListener("DOMContentLoaded",F,!1),N=!0;return}document.querySelectorAll(c.cssSelector).forEach(k)}function I(F,L){let q=null;try{q=L(n)}catch(P){if(fl("Language definition for '{}' could not be registered.".replace("{}",F)),i)fl(P);else throw P;q=o}q.name||(q.name=F),e[F]=q,q.rawDefinition=L.bind(null,n),q.aliases&&z(q.aliases,{languageName:F})}function R(F){delete e[F];for(const L of Object.keys(t))t[L]===F&&delete t[L]}function M(){return Object.keys(e)}function D(F){return F=(F||"").toLowerCase(),e[F]||e[t[F]]}function z(F,{languageName:L}){typeof F=="string"&&(F=[F]),F.forEach(q=>{t[q.toLowerCase()]=L})}function U(F){const L=D(F);return L&&!L.disableAutodetect}function H(F){F["before:highlightBlock"]&&!F["before:highlightElement"]&&(F["before:highlightElement"]=L=>{F["before:highlightBlock"](Object.assign({block:L.el},L))}),F["after:highlightBlock"]&&!F["after:highlightElement"]&&(F["after:highlightElement"]=L=>{F["after:highlightBlock"](Object.assign({block:L.el},L))})}function B(F){H(F),l.push(F)}function W(F){const L=l.indexOf(F);L!==-1&&l.splice(L,1)}function G(F,L){const q=F;l.forEach(function(P){P[q]&&P[q](L)})}function V(F){return Ml("10.7.0","highlightBlock will be removed entirely in v12.0"),Ml("10.7.0","Please use highlightElement now."),k(F)}Object.assign(n,{highlight:p,highlightAuto:g,highlightAll:A,highlightElement:k,highlightBlock:V,configure:y,initHighlighting:E,initHighlightingOnLoad:T,registerLanguage:I,unregisterLanguage:R,listLanguages:M,getLanguage:D,registerAliases:z,autoDetection:U,inherit:Ya,addPlugin:B,removePlugin:W}),n.debugMode=function(){i=!1},n.safeMode=function(){i=!0},n.versionString=W0,n.regex={concat:gl,lookahead:vd,either:Ks,optional:s0,anyNumberOfTimes:i0};for(const F in yi)typeof yi[F]=="object"&&bd(yi[F]);return Object.assign(n,yi),n},ql=Id({});ql.newInstance=()=>Id({});var V0=ql;ql.HighlightJS=ql;ql.default=ql;const rn=$v(V0),Ja="[A-Za-z$_][0-9A-Za-z$_]*",Z0=["as","in","of","if","for","while","finally","var","new","function","do","return","void","else","break","catch","instanceof","with","throw","case","default","try","switch","continue","typeof","delete","let","yield","const","class","debugger","async","await","static","import","from","export","extends","using"],Y0=["true","false","null","undefined","NaN","Infinity"],Md=["Object","Function","Boolean","Symbol","Math","Date","Number","BigInt","String","RegExp","Array","Float32Array","Float64Array","Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Int32Array","Uint16Array","Uint32Array","BigInt64Array","BigUint64Array","Set","Map","WeakSet","WeakMap","ArrayBuffer","SharedArrayBuffer","Atomics","DataView","JSON","Promise","Generator","GeneratorFunction","AsyncFunction","Reflect","Proxy","Intl","WebAssembly"],Rd=["Error","EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"],Ld=["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],X0=["arguments","this","super","console","window","document","localStorage","sessionStorage","module","global"],J0=[].concat(Ld,Md,Rd);function Q0(n){const e=n.regex,t=(q,{after:P})=>{const X="",end:""},s=/<[A-Za-z0-9\\._:-]+\s*\/>/,o={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:(q,P)=>{const X=q[0].length+q.index,Y=q.input[X];if(Y==="<"||Y===","){P.ignoreMatch();return}Y===">"&&(t(q,{after:X})||P.ignoreMatch());let J;const ee=q.input.substring(X);if(J=ee.match(/^\s*=/)){P.ignoreMatch();return}if((J=ee.match(/^\s+extends\s+/))&&J.index===0){P.ignoreMatch();return}}},c={$pattern:Ja,keyword:Z0,literal:Y0,built_in:J0,"variable.language":X0},u="[0-9](_?[0-9])*",d=`\\.(${u})`,p="0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*",h={className:"number",variants:[{begin:`(\\b(${p})((${d})|\\.)?|(${d}))[eE][+-]?(${u})\\b`},{begin:`\\b(${p})\\b((${d})\\b|\\.)?|(${d})\\b`},{begin:"\\b(0|[1-9](_?[0-9])*)n\\b"},{begin:"\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*n?\\b"},{begin:"\\b0[bB][0-1](_?[0-1])*n?\\b"},{begin:"\\b0[oO][0-7](_?[0-7])*n?\\b"},{begin:"\\b0[0-7]+n?\\b"}],relevance:0},m={className:"subst",begin:"\\$\\{",end:"\\}",keywords:c,contains:[]},g={begin:".?html`",end:"",starts:{end:"`",returnEnd:!1,contains:[n.BACKSLASH_ESCAPE,m],subLanguage:"xml"}},b={begin:".?css`",end:"",starts:{end:"`",returnEnd:!1,contains:[n.BACKSLASH_ESCAPE,m],subLanguage:"css"}},k={begin:".?gql`",end:"",starts:{end:"`",returnEnd:!1,contains:[n.BACKSLASH_ESCAPE,m],subLanguage:"graphql"}},y={className:"string",begin:"`",end:"`",contains:[n.BACKSLASH_ESCAPE,m]},T={className:"comment",variants:[n.COMMENT(/\/\*\*(?!\/)/,"\\*/",{relevance:0,contains:[{begin:"(?=@[A-Za-z]+)",relevance:0,contains:[{className:"doctag",begin:"@[A-Za-z]+"},{className:"type",begin:"\\{",end:"\\}",excludeEnd:!0,excludeBegin:!0,relevance:0},{className:"variable",begin:l+"(?=\\s*(-)|$)",endsParent:!0,relevance:0},{begin:/(?=[^\n])\s/,relevance:0}]}]}),n.C_BLOCK_COMMENT_MODE,n.C_LINE_COMMENT_MODE]},N=[n.APOS_STRING_MODE,n.QUOTE_STRING_MODE,g,b,k,y,{match:/\$\d+/},h];m.contains=N.concat({begin:/\{/,end:/\}/,keywords:c,contains:["self"].concat(N)});const A=[].concat(T,m.contains),I=A.concat([{begin:/(\s*)\(/,end:/\)/,keywords:c,contains:["self"].concat(A)}]),R={className:"params",begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:c,contains:I},M={variants:[{match:[/class/,/\s+/,l,/\s+/,/extends/,/\s+/,e.concat(l,"(",e.concat(/\./,l),")*")],scope:{1:"keyword",3:"title.class",5:"keyword",7:"title.class.inherited"}},{match:[/class/,/\s+/,l],scope:{1:"keyword",3:"title.class"}}]},D={relevance:0,match:e.either(/\bJSON/,/\b[A-Z][a-z]+([A-Z][a-z]*|\d)*/,/\b[A-Z]{2,}([A-Z][a-z]+|\d)+([A-Z][a-z]*)*/,/\b[A-Z]{2,}[a-z]+([A-Z][a-z]+|\d)*([A-Z][a-z]*)*/),className:"title.class",keywords:{_:[...Md,...Rd]}},z={label:"use_strict",className:"meta",relevance:10,begin:/^\s*['"]use (strict|asm)['"]/},U={variants:[{match:[/function/,/\s+/,l,/(?=\s*\()/]},{match:[/function/,/\s*(?=\()/]}],className:{1:"keyword",3:"title.function"},label:"func.def",contains:[R],illegal:/%/},H={relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"};function B(q){return e.concat("(?!",q.join("|"),")")}const W={match:e.concat(/\b/,B([...Ld,"super","import"].map(q=>`${q}\\s*\\(`)),l,e.lookahead(/\s*\(/)),className:"title.function",relevance:0},G={begin:e.concat(/\./,e.lookahead(e.concat(l,/(?![0-9A-Za-z$_(])/))),end:l,excludeBegin:!0,keywords:"prototype",className:"property",relevance:0},V={match:[/get|set/,/\s+/,l,/(?=\()/],className:{1:"keyword",3:"title.function"},contains:[{begin:/\(\)/},R]},F="(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|"+n.UNDERSCORE_IDENT_RE+")\\s*=>",L={match:[/const|var|let/,/\s+/,l,/\s*/,/=\s*/,/(async\s*)?/,e.lookahead(F)],keywords:"async",className:{1:"keyword",3:"title.function"},contains:[R]};return{name:"JavaScript",aliases:["js","jsx","mjs","cjs"],keywords:c,exports:{PARAMS_CONTAINS:I,CLASS_REFERENCE:D},illegal:/#(?![$_A-z])/,contains:[n.SHEBANG({label:"shebang",binary:"node",relevance:5}),z,n.APOS_STRING_MODE,n.QUOTE_STRING_MODE,g,b,k,y,T,{match:/\$\d+/},h,D,{scope:"attr",match:l+e.lookahead(":"),relevance:0},L,{begin:"("+n.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",keywords:"return throw case",relevance:0,contains:[T,n.REGEXP_MODE,{className:"function",begin:F,returnBegin:!0,end:"\\s*=>",contains:[{className:"params",variants:[{begin:n.UNDERSCORE_IDENT_RE,relevance:0},{className:null,begin:/\(\s*\)/,skip:!0},{begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:c,contains:I}]}]},{begin:/,/,relevance:0},{match:/\s+/,relevance:0},{variants:[{begin:i.begin,end:i.end},{match:s},{begin:o.begin,"on:begin":o.isTrulyOpeningTag,end:o.end}],subLanguage:"xml",contains:[{begin:o.begin,end:o.end,skip:!0,contains:["self"]}]}]},U,{beginKeywords:"while if switch catch for"},{begin:"\\b(?!function)"+n.UNDERSCORE_IDENT_RE+"\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{",returnBegin:!0,label:"func.def",contains:[R,n.inherit(n.TITLE_MODE,{begin:l,className:"title.function"})]},{match:/\.\.\./,relevance:0},G,{match:"\\$"+l,relevance:0},{match:[/\bconstructor(?=\s*\()/],className:{1:"title.function"},contains:[R]},W,H,M,V,{match:/\$[(.]/}]}}const Bi="[A-Za-z$_][0-9A-Za-z$_]*",Dd=["as","in","of","if","for","while","finally","var","new","function","do","return","void","else","break","catch","instanceof","with","throw","case","default","try","switch","continue","typeof","delete","let","yield","const","class","debugger","async","await","static","import","from","export","extends","using"],Od=["true","false","null","undefined","NaN","Infinity"],qd=["Object","Function","Boolean","Symbol","Math","Date","Number","BigInt","String","RegExp","Array","Float32Array","Float64Array","Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Int32Array","Uint16Array","Uint32Array","BigInt64Array","BigUint64Array","Set","Map","WeakSet","WeakMap","ArrayBuffer","SharedArrayBuffer","Atomics","DataView","JSON","Promise","Generator","GeneratorFunction","AsyncFunction","Reflect","Proxy","Intl","WebAssembly"],Pd=["Error","EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"],zd=["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],Bd=["arguments","this","super","console","window","document","localStorage","sessionStorage","module","global"],Fd=[].concat(zd,qd,Pd);function x0(n){const e=n.regex,t=(q,{after:P})=>{const X="",end:""},s=/<[A-Za-z0-9\\._:-]+\s*\/>/,o={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:(q,P)=>{const X=q[0].length+q.index,Y=q.input[X];if(Y==="<"||Y===","){P.ignoreMatch();return}Y===">"&&(t(q,{after:X})||P.ignoreMatch());let J;const ee=q.input.substring(X);if(J=ee.match(/^\s*=/)){P.ignoreMatch();return}if((J=ee.match(/^\s+extends\s+/))&&J.index===0){P.ignoreMatch();return}}},c={$pattern:Bi,keyword:Dd,literal:Od,built_in:Fd,"variable.language":Bd},u="[0-9](_?[0-9])*",d=`\\.(${u})`,p="0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*",h={className:"number",variants:[{begin:`(\\b(${p})((${d})|\\.)?|(${d}))[eE][+-]?(${u})\\b`},{begin:`\\b(${p})\\b((${d})\\b|\\.)?|(${d})\\b`},{begin:"\\b(0|[1-9](_?[0-9])*)n\\b"},{begin:"\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*n?\\b"},{begin:"\\b0[bB][0-1](_?[0-1])*n?\\b"},{begin:"\\b0[oO][0-7](_?[0-7])*n?\\b"},{begin:"\\b0[0-7]+n?\\b"}],relevance:0},m={className:"subst",begin:"\\$\\{",end:"\\}",keywords:c,contains:[]},g={begin:".?html`",end:"",starts:{end:"`",returnEnd:!1,contains:[n.BACKSLASH_ESCAPE,m],subLanguage:"xml"}},b={begin:".?css`",end:"",starts:{end:"`",returnEnd:!1,contains:[n.BACKSLASH_ESCAPE,m],subLanguage:"css"}},k={begin:".?gql`",end:"",starts:{end:"`",returnEnd:!1,contains:[n.BACKSLASH_ESCAPE,m],subLanguage:"graphql"}},y={className:"string",begin:"`",end:"`",contains:[n.BACKSLASH_ESCAPE,m]},T={className:"comment",variants:[n.COMMENT(/\/\*\*(?!\/)/,"\\*/",{relevance:0,contains:[{begin:"(?=@[A-Za-z]+)",relevance:0,contains:[{className:"doctag",begin:"@[A-Za-z]+"},{className:"type",begin:"\\{",end:"\\}",excludeEnd:!0,excludeBegin:!0,relevance:0},{className:"variable",begin:l+"(?=\\s*(-)|$)",endsParent:!0,relevance:0},{begin:/(?=[^\n])\s/,relevance:0}]}]}),n.C_BLOCK_COMMENT_MODE,n.C_LINE_COMMENT_MODE]},N=[n.APOS_STRING_MODE,n.QUOTE_STRING_MODE,g,b,k,y,{match:/\$\d+/},h];m.contains=N.concat({begin:/\{/,end:/\}/,keywords:c,contains:["self"].concat(N)});const A=[].concat(T,m.contains),I=A.concat([{begin:/(\s*)\(/,end:/\)/,keywords:c,contains:["self"].concat(A)}]),R={className:"params",begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:c,contains:I},M={variants:[{match:[/class/,/\s+/,l,/\s+/,/extends/,/\s+/,e.concat(l,"(",e.concat(/\./,l),")*")],scope:{1:"keyword",3:"title.class",5:"keyword",7:"title.class.inherited"}},{match:[/class/,/\s+/,l],scope:{1:"keyword",3:"title.class"}}]},D={relevance:0,match:e.either(/\bJSON/,/\b[A-Z][a-z]+([A-Z][a-z]*|\d)*/,/\b[A-Z]{2,}([A-Z][a-z]+|\d)+([A-Z][a-z]*)*/,/\b[A-Z]{2,}[a-z]+([A-Z][a-z]+|\d)*([A-Z][a-z]*)*/),className:"title.class",keywords:{_:[...qd,...Pd]}},z={label:"use_strict",className:"meta",relevance:10,begin:/^\s*['"]use (strict|asm)['"]/},U={variants:[{match:[/function/,/\s+/,l,/(?=\s*\()/]},{match:[/function/,/\s*(?=\()/]}],className:{1:"keyword",3:"title.function"},label:"func.def",contains:[R],illegal:/%/},H={relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"};function B(q){return e.concat("(?!",q.join("|"),")")}const W={match:e.concat(/\b/,B([...zd,"super","import"].map(q=>`${q}\\s*\\(`)),l,e.lookahead(/\s*\(/)),className:"title.function",relevance:0},G={begin:e.concat(/\./,e.lookahead(e.concat(l,/(?![0-9A-Za-z$_(])/))),end:l,excludeBegin:!0,keywords:"prototype",className:"property",relevance:0},V={match:[/get|set/,/\s+/,l,/(?=\()/],className:{1:"keyword",3:"title.function"},contains:[{begin:/\(\)/},R]},F="(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|"+n.UNDERSCORE_IDENT_RE+")\\s*=>",L={match:[/const|var|let/,/\s+/,l,/\s*/,/=\s*/,/(async\s*)?/,e.lookahead(F)],keywords:"async",className:{1:"keyword",3:"title.function"},contains:[R]};return{name:"JavaScript",aliases:["js","jsx","mjs","cjs"],keywords:c,exports:{PARAMS_CONTAINS:I,CLASS_REFERENCE:D},illegal:/#(?![$_A-z])/,contains:[n.SHEBANG({label:"shebang",binary:"node",relevance:5}),z,n.APOS_STRING_MODE,n.QUOTE_STRING_MODE,g,b,k,y,T,{match:/\$\d+/},h,D,{scope:"attr",match:l+e.lookahead(":"),relevance:0},L,{begin:"("+n.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",keywords:"return throw case",relevance:0,contains:[T,n.REGEXP_MODE,{className:"function",begin:F,returnBegin:!0,end:"\\s*=>",contains:[{className:"params",variants:[{begin:n.UNDERSCORE_IDENT_RE,relevance:0},{className:null,begin:/\(\s*\)/,skip:!0},{begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:c,contains:I}]}]},{begin:/,/,relevance:0},{match:/\s+/,relevance:0},{variants:[{begin:i.begin,end:i.end},{match:s},{begin:o.begin,"on:begin":o.isTrulyOpeningTag,end:o.end}],subLanguage:"xml",contains:[{begin:o.begin,end:o.end,skip:!0,contains:["self"]}]}]},U,{beginKeywords:"while if switch catch for"},{begin:"\\b(?!function)"+n.UNDERSCORE_IDENT_RE+"\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{",returnBegin:!0,label:"func.def",contains:[R,n.inherit(n.TITLE_MODE,{begin:l,className:"title.function"})]},{match:/\.\.\./,relevance:0},G,{match:"\\$"+l,relevance:0},{match:[/\bconstructor(?=\s*\()/],className:{1:"title.function"},contains:[R]},W,H,M,V,{match:/\$[(.]/}]}}function $0(n){const e=n.regex,t=x0(n),l=Bi,i=["any","void","number","boolean","string","object","never","symbol","bigint","unknown"],s={begin:[/namespace/,/\s+/,n.IDENT_RE],beginScope:{1:"keyword",3:"title.class"}},o={beginKeywords:"interface",end:/\{/,excludeEnd:!0,keywords:{keyword:"interface extends",built_in:i},contains:[t.exports.CLASS_REFERENCE]},c={className:"meta",relevance:10,begin:/^\s*['"]use strict['"]/},u=["type","interface","public","private","protected","implements","declare","abstract","readonly","enum","override","satisfies"],d={$pattern:Bi,keyword:Dd.concat(u),literal:Od,built_in:Fd.concat(i),"variable.language":Bd},p={className:"meta",begin:"@"+l},h=(k,y,E)=>{const T=k.contains.findIndex(N=>N.label===y);if(T===-1)throw new Error("can not find mode to replace");k.contains.splice(T,1,E)};Object.assign(t.keywords,d),t.exports.PARAMS_CONTAINS.push(p);const m=t.contains.find(k=>k.scope==="attr"),g=Object.assign({},m,{match:e.concat(l,e.lookahead(/\s*\?:/))});t.exports.PARAMS_CONTAINS.push([t.exports.CLASS_REFERENCE,m,g]),t.contains=t.contains.concat([p,s,o,g]),h(t,"shebang",n.SHEBANG()),h(t,"use_strict",c);const b=t.contains.find(k=>k.label==="func.def");return b.relevance=0,Object.assign(t,{name:"TypeScript",aliases:["ts","tsx","mts","cts"]}),t}function e2(n){const e=n.regex,t=new RegExp("[\\p{XID_Start}_]\\p{XID_Continue}*","u"),l=["and","as","assert","async","await","break","case","class","continue","def","del","elif","else","except","finally","for","from","global","if","import","in","is","lambda","match","nonlocal|10","not","or","pass","raise","return","try","while","with","yield"],c={$pattern:/[A-Za-z]\w+|__\w+__/,keyword:l,built_in:["__import__","abs","all","any","ascii","bin","bool","breakpoint","bytearray","bytes","callable","chr","classmethod","compile","complex","delattr","dict","dir","divmod","enumerate","eval","exec","filter","float","format","frozenset","getattr","globals","hasattr","hash","help","hex","id","input","int","isinstance","issubclass","iter","len","list","locals","map","max","memoryview","min","next","object","oct","open","ord","pow","print","property","range","repr","reversed","round","set","setattr","slice","sorted","staticmethod","str","sum","super","tuple","type","vars","zip"],literal:["__debug__","Ellipsis","False","None","NotImplemented","True"],type:["Any","Callable","Coroutine","Dict","List","Literal","Generic","Optional","Sequence","Set","Tuple","Type","Union"]},u={className:"meta",begin:/^(>>>|\.\.\.) /},d={className:"subst",begin:/\{/,end:/\}/,keywords:c,illegal:/#/},p={begin:/\{\{/,relevance:0},h={className:"string",contains:[n.BACKSLASH_ESCAPE],variants:[{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?'''/,end:/'''/,contains:[n.BACKSLASH_ESCAPE,u],relevance:10},{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?"""/,end:/"""/,contains:[n.BACKSLASH_ESCAPE,u],relevance:10},{begin:/([fF][rR]|[rR][fF]|[fF])'''/,end:/'''/,contains:[n.BACKSLASH_ESCAPE,u,p,d]},{begin:/([fF][rR]|[rR][fF]|[fF])"""/,end:/"""/,contains:[n.BACKSLASH_ESCAPE,u,p,d]},{begin:/([uU]|[rR])'/,end:/'/,relevance:10},{begin:/([uU]|[rR])"/,end:/"/,relevance:10},{begin:/([bB]|[bB][rR]|[rR][bB])'/,end:/'/},{begin:/([bB]|[bB][rR]|[rR][bB])"/,end:/"/},{begin:/([fF][rR]|[rR][fF]|[fF])'/,end:/'/,contains:[n.BACKSLASH_ESCAPE,p,d]},{begin:/([fF][rR]|[rR][fF]|[fF])"/,end:/"/,contains:[n.BACKSLASH_ESCAPE,p,d]},n.APOS_STRING_MODE,n.QUOTE_STRING_MODE]},m="[0-9](_?[0-9])*",g=`(\\b(${m}))?\\.(${m})|\\b(${m})\\.`,b=`\\b|${l.join("|")}`,k={className:"number",relevance:0,variants:[{begin:`(\\b(${m})|(${g}))[eE][+-]?(${m})[jJ]?(?=${b})`},{begin:`(${g})[jJ]?`},{begin:`\\b([1-9](_?[0-9])*|0+(_?0)*)[lLjJ]?(?=${b})`},{begin:`\\b0[bB](_?[01])+[lL]?(?=${b})`},{begin:`\\b0[oO](_?[0-7])+[lL]?(?=${b})`},{begin:`\\b0[xX](_?[0-9a-fA-F])+[lL]?(?=${b})`},{begin:`\\b(${m})[jJ](?=${b})`}]},y={className:"comment",begin:e.lookahead(/# type:/),end:/$/,keywords:c,contains:[{begin:/# type:/},{begin:/#/,end:/\b\B/,endsWithParent:!0}]},E={className:"params",variants:[{className:"",begin:/\(\s*\)/,skip:!0},{begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:c,contains:["self",u,k,h,n.HASH_COMMENT_MODE]}]};return d.contains=[h,k,u],{name:"Python",aliases:["py","gyp","ipython"],unicodeRegex:!0,keywords:c,illegal:/(<\/|\?)|=>/,contains:[u,k,{scope:"variable.language",match:/\bself\b/},{beginKeywords:"if",relevance:0},{match:/\bor\b/,scope:"keyword"},h,y,n.HASH_COMMENT_MODE,{match:[/\bdef/,/\s+/,t],scope:{1:"keyword",3:"title.function"},contains:[E]},{variants:[{match:[/\bclass/,/\s+/,t,/\s*/,/\(\s*/,t,/\s*\)/]},{match:[/\bclass/,/\s+/,t]}],scope:{1:"keyword",3:"title.class",6:"title.class.inherited"}},{className:"meta",begin:/^[\t ]*@/,end:/(?=#)|$/,contains:[k,E,h]}]}}function t2(n){const s={keyword:["break","case","chan","const","continue","default","defer","else","fallthrough","for","func","go","goto","if","import","interface","map","package","range","return","select","struct","switch","type","var"],type:["bool","byte","complex64","complex128","error","float32","float64","int8","int16","int32","int64","string","uint8","uint16","uint32","uint64","int","uint","uintptr","rune"],literal:["true","false","iota","nil"],built_in:["append","cap","close","complex","copy","imag","len","make","new","panic","print","println","real","recover","delete"]};return{name:"Go",aliases:["golang"],keywords:s,illegal:"]([1-9]?[+-])?[ ]*\\n( +)[^ ][^\\n]*\\n(\\2[^\\n]+\\n?)*"},{begin:"<%[%=-]?",end:"[%-]?%>",subLanguage:"ruby",excludeBegin:!0,excludeEnd:!0,relevance:0},{className:"type",begin:"!\\w+!"+t},{className:"type",begin:"!<"+t+">"},{className:"type",begin:"!"+t},{className:"type",begin:"!!"+t},{className:"meta",begin:"&"+n.UNDERSCORE_IDENT_RE+"$"},{className:"meta",begin:"\\*"+n.UNDERSCORE_IDENT_RE+"$"},{className:"bullet",begin:"-(?=[ ]|$)",relevance:0},n.HASH_COMMENT_MODE,{beginKeywords:e,keywords:{literal:e}},m,{className:"number",begin:n.C_NUMBER_RE+"\\b",relevance:0},b,k,s,o],E=[...y];return E.pop(),E.push(c),g.contains=E,{name:"YAML",case_insensitive:!0,aliases:["yml"],contains:y}}function s2(n){const e=n.regex,t={begin:/<\/?[A-Za-z_]/,end:">",subLanguage:"xml",relevance:0},l={begin:"^[-\\*]{3,}",end:"$"},i={className:"code",variants:[{begin:"(`{3,})[^`](.|\\n)*?\\1`*[ ]*"},{begin:"(~{3,})[^~](.|\\n)*?\\1~*[ ]*"},{begin:"```",end:"```+[ ]*$"},{begin:"~~~",end:"~~~+[ ]*$"},{begin:"`.+?`"},{begin:"(?=^( {4}|\\t))",contains:[{begin:"^( {4}|\\t)",end:"(\\n)$"}],relevance:0}]},s={className:"bullet",begin:"^[ ]*([*+-]|(\\d+\\.))(?=\\s+)",end:"\\s+",excludeEnd:!0},o={begin:/^\[[^\n]+\]:/,returnBegin:!0,contains:[{className:"symbol",begin:/\[/,end:/\]/,excludeBegin:!0,excludeEnd:!0},{className:"link",begin:/:\s*/,end:/$/,excludeBegin:!0}]},c=/[A-Za-z][A-Za-z0-9+.-]*/,u={variants:[{begin:/\[.+?\]\[.*?\]/,relevance:0},{begin:/\[.+?\]\(((data|javascript|mailto):|(?:http|ftp)s?:\/\/).*?\)/,relevance:2},{begin:e.concat(/\[.+?\]\(/,c,/:\/\/.*?\)/),relevance:2},{begin:/\[.+?\]\([./?&#].*?\)/,relevance:1},{begin:/\[.*?\]\(.*?\)/,relevance:0}],returnBegin:!0,contains:[{match:/\[(?=\])/},{className:"string",relevance:0,begin:"\\[",end:"\\]",excludeBegin:!0,returnEnd:!0},{className:"link",relevance:0,begin:"\\]\\(",end:"\\)",excludeBegin:!0,excludeEnd:!0},{className:"symbol",relevance:0,begin:"\\]\\[",end:"\\]",excludeBegin:!0,excludeEnd:!0}]},d={className:"strong",contains:[],variants:[{begin:/_{2}(?!\s)/,end:/_{2}/},{begin:/\*{2}(?!\s)/,end:/\*{2}/}]},p={className:"emphasis",contains:[],variants:[{begin:/\*(?![*\s])/,end:/\*/},{begin:/_(?![_\s])/,end:/_/,relevance:0}]},h=n.inherit(d,{contains:[]}),m=n.inherit(p,{contains:[]});d.contains.push(m),p.contains.push(h);let g=[t,u];return[d,p,h,m].forEach(E=>{E.contains=E.contains.concat(g)}),g=g.concat(d,p),{name:"Markdown",aliases:["md","mkdown","mkd"],contains:[{className:"section",variants:[{begin:"^#{1,6}",end:"$",contains:g},{begin:"(?=^.+?\\n[=-]{2,}$)",contains:[{begin:"^[=-]*$"},{begin:"^",end:"\\n",contains:g}]}]},t,s,d,p,{className:"quote",begin:"^>\\s+",contains:g,end:"$"},i,l,u,o,{scope:"literal",match:/&([a-zA-Z0-9]+|#[0-9]{1,7}|#[Xx][0-9a-fA-F]{1,6});/}]}}const o2=n=>({IMPORTANT:{scope:"meta",begin:"!important"},BLOCK_COMMENT:n.C_BLOCK_COMMENT_MODE,HEXCOLOR:{scope:"number",begin:/#(([0-9a-fA-F]{3,4})|(([0-9a-fA-F]{2}){3,4}))\b/},FUNCTION_DISPATCH:{className:"built_in",begin:/[\w-]+(?=\()/},ATTRIBUTE_SELECTOR_MODE:{scope:"selector-attr",begin:/\[/,end:/\]/,illegal:"$",contains:[n.APOS_STRING_MODE,n.QUOTE_STRING_MODE]},CSS_NUMBER_MODE:{scope:"number",begin:n.NUMBER_RE+"(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?",relevance:0},CSS_VARIABLE:{className:"attr",begin:/--[A-Za-z_][A-Za-z0-9_-]*/}}),r2=["a","abbr","address","article","aside","audio","b","blockquote","body","button","canvas","caption","cite","code","dd","del","details","dfn","div","dl","dt","em","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","header","hgroup","html","i","iframe","img","input","ins","kbd","label","legend","li","main","mark","menu","nav","object","ol","optgroup","option","p","picture","q","quote","samp","section","select","source","span","strong","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","tr","ul","var","video"],a2=["defs","g","marker","mask","pattern","svg","switch","symbol","feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feFlood","feGaussianBlur","feImage","feMerge","feMorphology","feOffset","feSpecularLighting","feTile","feTurbulence","linearGradient","radialGradient","stop","circle","ellipse","image","line","path","polygon","polyline","rect","text","use","textPath","tspan","foreignObject","clipPath"],c2=[...r2,...a2],u2=["any-hover","any-pointer","aspect-ratio","color","color-gamut","color-index","device-aspect-ratio","device-height","device-width","display-mode","forced-colors","grid","height","hover","inverted-colors","monochrome","orientation","overflow-block","overflow-inline","pointer","prefers-color-scheme","prefers-contrast","prefers-reduced-motion","prefers-reduced-transparency","resolution","scan","scripting","update","width","min-width","max-width","min-height","max-height"].sort().reverse(),f2=["active","any-link","blank","checked","current","default","defined","dir","disabled","drop","empty","enabled","first","first-child","first-of-type","fullscreen","future","focus","focus-visible","focus-within","has","host","host-context","hover","indeterminate","in-range","invalid","is","lang","last-child","last-of-type","left","link","local-link","not","nth-child","nth-col","nth-last-child","nth-last-col","nth-last-of-type","nth-of-type","only-child","only-of-type","optional","out-of-range","past","placeholder-shown","read-only","read-write","required","right","root","scope","target","target-within","user-invalid","valid","visited","where"].sort().reverse(),d2=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"].sort().reverse(),p2=["accent-color","align-content","align-items","align-self","alignment-baseline","all","anchor-name","animation","animation-composition","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-range","animation-range-end","animation-range-start","animation-timeline","animation-timing-function","appearance","aspect-ratio","backdrop-filter","backface-visibility","background","background-attachment","background-blend-mode","background-clip","background-color","background-image","background-origin","background-position","background-position-x","background-position-y","background-repeat","background-size","baseline-shift","block-size","border","border-block","border-block-color","border-block-end","border-block-end-color","border-block-end-style","border-block-end-width","border-block-start","border-block-start-color","border-block-start-style","border-block-start-width","border-block-style","border-block-width","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-end-end-radius","border-end-start-radius","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-inline","border-inline-color","border-inline-end","border-inline-end-color","border-inline-end-style","border-inline-end-width","border-inline-start","border-inline-start-color","border-inline-start-style","border-inline-start-width","border-inline-style","border-inline-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-start-end-radius","border-start-start-radius","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-align","box-decoration-break","box-direction","box-flex","box-flex-group","box-lines","box-ordinal-group","box-orient","box-pack","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","caret-color","clear","clip","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","color-scheme","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","contain","contain-intrinsic-block-size","contain-intrinsic-height","contain-intrinsic-inline-size","contain-intrinsic-size","contain-intrinsic-width","container","container-name","container-type","content","content-visibility","counter-increment","counter-reset","counter-set","cue","cue-after","cue-before","cursor","cx","cy","direction","display","dominant-baseline","empty-cells","enable-background","field-sizing","fill","fill-opacity","fill-rule","filter","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","flood-color","flood-opacity","flow","font","font-display","font-family","font-feature-settings","font-kerning","font-language-override","font-optical-sizing","font-palette","font-size","font-size-adjust","font-smooth","font-smoothing","font-stretch","font-style","font-synthesis","font-synthesis-position","font-synthesis-small-caps","font-synthesis-style","font-synthesis-weight","font-variant","font-variant-alternates","font-variant-caps","font-variant-east-asian","font-variant-emoji","font-variant-ligatures","font-variant-numeric","font-variant-position","font-variation-settings","font-weight","forced-color-adjust","gap","glyph-orientation-horizontal","glyph-orientation-vertical","grid","grid-area","grid-auto-columns","grid-auto-flow","grid-auto-rows","grid-column","grid-column-end","grid-column-start","grid-gap","grid-row","grid-row-end","grid-row-start","grid-template","grid-template-areas","grid-template-columns","grid-template-rows","hanging-punctuation","height","hyphenate-character","hyphenate-limit-chars","hyphens","icon","image-orientation","image-rendering","image-resolution","ime-mode","initial-letter","initial-letter-align","inline-size","inset","inset-area","inset-block","inset-block-end","inset-block-start","inset-inline","inset-inline-end","inset-inline-start","isolation","justify-content","justify-items","justify-self","kerning","left","letter-spacing","lighting-color","line-break","line-height","line-height-step","list-style","list-style-image","list-style-position","list-style-type","margin","margin-block","margin-block-end","margin-block-start","margin-bottom","margin-inline","margin-inline-end","margin-inline-start","margin-left","margin-right","margin-top","margin-trim","marker","marker-end","marker-mid","marker-start","marks","mask","mask-border","mask-border-mode","mask-border-outset","mask-border-repeat","mask-border-slice","mask-border-source","mask-border-width","mask-clip","mask-composite","mask-image","mask-mode","mask-origin","mask-position","mask-repeat","mask-size","mask-type","masonry-auto-flow","math-depth","math-shift","math-style","max-block-size","max-height","max-inline-size","max-width","min-block-size","min-height","min-inline-size","min-width","mix-blend-mode","nav-down","nav-index","nav-left","nav-right","nav-up","none","normal","object-fit","object-position","offset","offset-anchor","offset-distance","offset-path","offset-position","offset-rotate","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-anchor","overflow-block","overflow-clip-margin","overflow-inline","overflow-wrap","overflow-x","overflow-y","overlay","overscroll-behavior","overscroll-behavior-block","overscroll-behavior-inline","overscroll-behavior-x","overscroll-behavior-y","padding","padding-block","padding-block-end","padding-block-start","padding-bottom","padding-inline","padding-inline-end","padding-inline-start","padding-left","padding-right","padding-top","page","page-break-after","page-break-before","page-break-inside","paint-order","pause","pause-after","pause-before","perspective","perspective-origin","place-content","place-items","place-self","pointer-events","position","position-anchor","position-visibility","print-color-adjust","quotes","r","resize","rest","rest-after","rest-before","right","rotate","row-gap","ruby-align","ruby-position","scale","scroll-behavior","scroll-margin","scroll-margin-block","scroll-margin-block-end","scroll-margin-block-start","scroll-margin-bottom","scroll-margin-inline","scroll-margin-inline-end","scroll-margin-inline-start","scroll-margin-left","scroll-margin-right","scroll-margin-top","scroll-padding","scroll-padding-block","scroll-padding-block-end","scroll-padding-block-start","scroll-padding-bottom","scroll-padding-inline","scroll-padding-inline-end","scroll-padding-inline-start","scroll-padding-left","scroll-padding-right","scroll-padding-top","scroll-snap-align","scroll-snap-stop","scroll-snap-type","scroll-timeline","scroll-timeline-axis","scroll-timeline-name","scrollbar-color","scrollbar-gutter","scrollbar-width","shape-image-threshold","shape-margin","shape-outside","shape-rendering","speak","speak-as","src","stop-color","stop-opacity","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","tab-size","table-layout","text-align","text-align-all","text-align-last","text-anchor","text-combine-upright","text-decoration","text-decoration-color","text-decoration-line","text-decoration-skip","text-decoration-skip-ink","text-decoration-style","text-decoration-thickness","text-emphasis","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-indent","text-justify","text-orientation","text-overflow","text-rendering","text-shadow","text-size-adjust","text-transform","text-underline-offset","text-underline-position","text-wrap","text-wrap-mode","text-wrap-style","timeline-scope","top","touch-action","transform","transform-box","transform-origin","transform-style","transition","transition-behavior","transition-delay","transition-duration","transition-property","transition-timing-function","translate","unicode-bidi","user-modify","user-select","vector-effect","vertical-align","view-timeline","view-timeline-axis","view-timeline-inset","view-timeline-name","view-transition-name","visibility","voice-balance","voice-duration","voice-family","voice-pitch","voice-range","voice-rate","voice-stress","voice-volume","white-space","white-space-collapse","widows","width","will-change","word-break","word-spacing","word-wrap","writing-mode","x","y","z-index","zoom"].sort().reverse();function h2(n){const e=n.regex,t=o2(n),l={begin:/-(webkit|moz|ms|o)-(?=[a-z])/},i="and or not only",s=/@-?\w[\w]*(-\w+)*/,o="[a-zA-Z-][a-zA-Z0-9_-]*",c=[n.APOS_STRING_MODE,n.QUOTE_STRING_MODE];return{name:"CSS",case_insensitive:!0,illegal:/[=|'\$]/,keywords:{keyframePosition:"from to"},classNameAliases:{keyframePosition:"selector-tag"},contains:[t.BLOCK_COMMENT,l,t.CSS_NUMBER_MODE,{className:"selector-id",begin:/#[A-Za-z0-9_-]+/,relevance:0},{className:"selector-class",begin:"\\."+o,relevance:0},t.ATTRIBUTE_SELECTOR_MODE,{className:"selector-pseudo",variants:[{begin:":("+f2.join("|")+")"},{begin:":(:)?("+d2.join("|")+")"}]},t.CSS_VARIABLE,{className:"attribute",begin:"\\b("+p2.join("|")+")\\b"},{begin:/:/,end:/[;}{]/,contains:[t.BLOCK_COMMENT,t.HEXCOLOR,t.IMPORTANT,t.CSS_NUMBER_MODE,...c,{begin:/(url|data-uri)\(/,end:/\)/,relevance:0,keywords:{built_in:"url data-uri"},contains:[...c,{className:"string",begin:/[^)]/,endsWithParent:!0,excludeEnd:!0}]},t.FUNCTION_DISPATCH]},{begin:e.lookahead(/@/),end:"[{;]",relevance:0,illegal:/:/,contains:[{className:"keyword",begin:s},{begin:/\s/,endsWithParent:!0,excludeEnd:!0,relevance:0,keywords:{$pattern:/[a-z-]+/,keyword:i,attribute:u2.join(" ")},contains:[{begin:/[a-z-]+(?=:)/,className:"attribute"},...c,t.CSS_NUMBER_MODE]}]},{className:"selector-tag",begin:"\\b("+c2.join("|")+")\\b"}]}}function m2(n){const e=n.regex,t=n.COMMENT("--","$"),l={scope:"string",variants:[{begin:/'/,end:/'/,contains:[{match:/''/}]}]},i={begin:/"/,end:/"/,contains:[{match:/""/}]},s=["true","false","unknown"],o=["double precision","large object","with timezone","without timezone"],c=["bigint","binary","blob","boolean","char","character","clob","date","dec","decfloat","decimal","float","int","integer","interval","nchar","nclob","national","numeric","real","row","smallint","time","timestamp","varchar","varying","varbinary"],u=["add","asc","collation","desc","final","first","last","view"],d=["abs","acos","all","allocate","alter","and","any","are","array","array_agg","array_max_cardinality","as","asensitive","asin","asymmetric","at","atan","atomic","authorization","avg","begin","begin_frame","begin_partition","between","bigint","binary","blob","boolean","both","by","call","called","cardinality","cascaded","case","cast","ceil","ceiling","char","char_length","character","character_length","check","classifier","clob","close","coalesce","collate","collect","column","commit","condition","connect","constraint","contains","convert","copy","corr","corresponding","cos","cosh","count","covar_pop","covar_samp","create","cross","cube","cume_dist","current","current_catalog","current_date","current_default_transform_group","current_path","current_role","current_row","current_schema","current_time","current_timestamp","current_path","current_role","current_transform_group_for_type","current_user","cursor","cycle","date","day","deallocate","dec","decimal","decfloat","declare","default","define","delete","dense_rank","deref","describe","deterministic","disconnect","distinct","double","drop","dynamic","each","element","else","empty","end","end_frame","end_partition","end-exec","equals","escape","every","except","exec","execute","exists","exp","external","extract","false","fetch","filter","first_value","float","floor","for","foreign","frame_row","free","from","full","function","fusion","get","global","grant","group","grouping","groups","having","hold","hour","identity","in","indicator","initial","inner","inout","insensitive","insert","int","integer","intersect","intersection","interval","into","is","join","json_array","json_arrayagg","json_exists","json_object","json_objectagg","json_query","json_table","json_table_primitive","json_value","lag","language","large","last_value","lateral","lead","leading","left","like","like_regex","listagg","ln","local","localtime","localtimestamp","log","log10","lower","match","match_number","match_recognize","matches","max","member","merge","method","min","minute","mod","modifies","module","month","multiset","national","natural","nchar","nclob","new","no","none","normalize","not","nth_value","ntile","null","nullif","numeric","octet_length","occurrences_regex","of","offset","old","omit","on","one","only","open","or","order","out","outer","over","overlaps","overlay","parameter","partition","pattern","per","percent","percent_rank","percentile_cont","percentile_disc","period","portion","position","position_regex","power","precedes","precision","prepare","primary","procedure","ptf","range","rank","reads","real","recursive","ref","references","referencing","regr_avgx","regr_avgy","regr_count","regr_intercept","regr_r2","regr_slope","regr_sxx","regr_sxy","regr_syy","release","result","return","returns","revoke","right","rollback","rollup","row","row_number","rows","running","savepoint","scope","scroll","search","second","seek","select","sensitive","session_user","set","show","similar","sin","sinh","skip","smallint","some","specific","specifictype","sql","sqlexception","sqlstate","sqlwarning","sqrt","start","static","stddev_pop","stddev_samp","submultiset","subset","substring","substring_regex","succeeds","sum","symmetric","system","system_time","system_user","table","tablesample","tan","tanh","then","time","timestamp","timezone_hour","timezone_minute","to","trailing","translate","translate_regex","translation","treat","trigger","trim","trim_array","true","truncate","uescape","union","unique","unknown","unnest","update","upper","user","using","value","values","value_of","var_pop","var_samp","varbinary","varchar","varying","versioning","when","whenever","where","width_bucket","window","with","within","without","year"],p=["abs","acos","array_agg","asin","atan","avg","cast","ceil","ceiling","coalesce","corr","cos","cosh","count","covar_pop","covar_samp","cume_dist","dense_rank","deref","element","exp","extract","first_value","floor","json_array","json_arrayagg","json_exists","json_object","json_objectagg","json_query","json_table","json_table_primitive","json_value","lag","last_value","lead","listagg","ln","log","log10","lower","max","min","mod","nth_value","ntile","nullif","percent_rank","percentile_cont","percentile_disc","position","position_regex","power","rank","regr_avgx","regr_avgy","regr_count","regr_intercept","regr_r2","regr_slope","regr_sxx","regr_sxy","regr_syy","row_number","sin","sinh","sqrt","stddev_pop","stddev_samp","substring","substring_regex","sum","tan","tanh","translate","translate_regex","treat","trim","trim_array","unnest","upper","value_of","var_pop","var_samp","width_bucket"],h=["current_catalog","current_date","current_default_transform_group","current_path","current_role","current_schema","current_transform_group_for_type","current_user","session_user","system_time","system_user","current_time","localtime","current_timestamp","localtimestamp"],m=["create table","insert into","primary key","foreign key","not null","alter table","add constraint","grouping sets","on overflow","character set","respect nulls","ignore nulls","nulls first","nulls last","depth first","breadth first"],g=p,b=[...d,...u].filter(I=>!p.includes(I)),k={scope:"variable",match:/@[a-z0-9][a-z0-9_]*/},y={scope:"operator",match:/[-+*/=%^~]|&&?|\|\|?|!=?|<(?:=>?|<|>)?|>[>=]?/,relevance:0},E={match:e.concat(/\b/,e.either(...g),/\s*\(/),relevance:0,keywords:{built_in:g}};function T(I){return e.concat(/\b/,e.either(...I.map(R=>R.replace(/\s+/,"\\s+"))),/\b/)}const N={scope:"keyword",match:T(m),relevance:0};function A(I,{exceptions:R,when:M}={}){const D=M;return R=R||[],I.map(z=>z.match(/\|\d+$/)||R.includes(z)?z:D(z)?`${z}|0`:z)}return{name:"SQL",case_insensitive:!0,illegal:/[{}]|<\//,keywords:{$pattern:/\b[\w\.]+/,keyword:A(b,{when:I=>I.length<3}),literal:s,type:c,built_in:h},contains:[{scope:"type",match:T(o)},N,E,k,l,i,n.C_NUMBER_MODE,n.C_BLOCK_COMMENT_MODE,t,y]}}function g2(n){const e=n.regex,t=e.concat(/[\p{L}_]/u,e.optional(/[\p{L}0-9_.-]*:/u),/[\p{L}0-9_.-]*/u),l=/[\p{L}0-9._:-]+/u,i={className:"symbol",begin:/&[a-z]+;|&#[0-9]+;|&#x[a-f0-9]+;/},s={begin:/\s/,contains:[{className:"keyword",begin:/#?[a-z_][a-z1-9_-]+/,illegal:/\n/}]},o=n.inherit(s,{begin:/\(/,end:/\)/}),c=n.inherit(n.APOS_STRING_MODE,{className:"string"}),u=n.inherit(n.QUOTE_STRING_MODE,{className:"string"}),d={endsWithParent:!0,illegal:/`]+/}]}]}]};return{name:"HTML, XML",aliases:["html","xhtml","rss","atom","xjb","xsd","xsl","plist","wsf","svg"],case_insensitive:!0,unicodeRegex:!0,contains:[{className:"meta",begin://,relevance:10,contains:[s,u,c,o,{begin:/\[/,end:/\]/,contains:[{className:"meta",begin://,contains:[s,o,u,c]}]}]},n.COMMENT(//,{relevance:10}),{begin://,relevance:10},i,{className:"meta",end:/\?>/,variants:[{begin:/<\?xml/,relevance:10,contains:[u]},{begin:/<\?[a-z][a-z0-9]+/}]},{className:"tag",begin:/)/,end:/>/,keywords:{name:"style"},contains:[d],starts:{end:/<\/style>/,returnEnd:!0,subLanguage:["css","xml"]}},{className:"tag",begin:/)/,end:/>/,keywords:{name:"script"},contains:[d],starts:{end:/<\/script>/,returnEnd:!0,subLanguage:["javascript","handlebars","xml"]}},{className:"tag",begin:/<>|<\/>/},{className:"tag",begin:e.concat(//,/>/,/\s/)))),end:/\/?>/,contains:[{className:"name",begin:t,relevance:0,starts:d}]},{className:"tag",begin:e.concat(/<\//,e.lookahead(e.concat(t,/>/))),contains:[{className:"name",begin:t,relevance:0},{begin:/>/,relevance:0,endsParent:!0}]}]}}rn.registerLanguage("javascript",Q0);rn.registerLanguage("typescript",$0);rn.registerLanguage("python",e2);rn.registerLanguage("go",t2);rn.registerLanguage("bash",n2);rn.registerLanguage("json",l2);rn.registerLanguage("yaml",i2);rn.registerLanguage("markdown",s2);rn.registerLanguage("css",h2);rn.registerLanguage("sql",m2);rn.registerLanguage("xml",g2);const jd=/^(https?|mailto|verstak):/i,Ud=new Set(["case","note","file","secret"]);_d.addHook("afterSanitizeAttributes",n=>{if(n.tagName==="A"){const e=(n.getAttribute("href")||"").trim();if(n.hasAttribute("data-verstak-href"))return;jd.test(e)||(n.removeAttribute("href"),n.setAttribute("data-blocked-href",e),n.classList.add("md-link--blocked"),n.setAttribute("role","link"),n.setAttribute("aria-disabled","true"))}n.tagName==="IMG"&&n.remove()});const Bl=new pt.Renderer;Bl.link=function({href:n,title:e,text:t}){const l=(n||"").trim();if(!jd.test(l)){const c=ul(t);return`${c}`}if(l.startsWith("verstak://")){const c=Hd(l);if(c&&Ud.has(c.type)){const p=Gn(l),h=ul(t);return`
    ${h}`}const u=ul(t);return`${u}`}const i=Gn(l),s=ul(t),o=e?` title="${Gn(e)}"`:"";return`${s}`};Bl.image=function({href:n,title:e,text:t}){return`[Image: ${ul(t)}]`};Bl.code=function({text:n,lang:e}){const t=e&&rn.getLanguage(e)?e:"plaintext";let l;try{l=rn.highlight(n,{language:t}).value}catch{l=ul(n)}return`
    ${l}
    `};Bl.codespan=function({text:n}){return`${ul(n)}`};Bl.listitem=function({text:n,task:e,checked:t}){return e?`
  • ${n}
  • `:`
  • ${n}
  • `};pt.setOptions({renderer:Bl,gfm:!0,breaks:!1,pedantic:!1});function _2(n){const e=pt.parse(n);return _d.sanitize(e,{ADD_ATTR:["target","class","data-verstak-href","data-verstak-type","data-verstak-id","data-blocked-href","role","aria-disabled","checked"],ADD_TAGS:["input","span"],ALLOW_UNKNOWN_PROTOCOLS:!0})}function Hd(n){const e=n.match(/^verstak:\/\/([a-zA-Z_]+)\/(.+)$/);return e?{type:e[1],id:e[2]}:null}function b2(n){return n.replace(/([[\]()])/g,"\\$1")}function k2(n){return Ud.has(n)}function ul(n){return n.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")}function Gn(n){return n.replace(/"/g,""").replace(/'/g,"'")}function v2(n){let e,t;return{c(){e=new Mi(!1),t=vt(),e.a=t},m(l,i){e.m(n[1],l,i),C(l,t,i)},p(l,i){i&2&&e.p(l[1])},d(l){l&&(S(t),e.d())}}}function w2(n){let e;return{c(){e=f("div"),e.textContent=`${v("note.preview.empty")}`,r(e,"class","md-empty svelte-jdvhib")},m(t,l){C(t,e,l)},p:oe,d(t){t&&S(e)}}}function y2(n){let e,t,l,i,s;return{c(){e=f("div"),t=f("p"),t.textContent=`⚠️ ${v("note.preview.error")}`,l=w(),i=f("p"),s=j(n[2]),r(i,"class","md-error-detail svelte-jdvhib"),r(e,"class","md-error svelte-jdvhib")},m(o,c){C(o,e,c),a(e,t),a(e,l),a(e,i),a(i,s)},p(o,c){c&4&&Q(s,o[2])},d(o){o&&S(e)}}}function E2(n){let e,t,l,i;function s(u,d){var p;return d&1&&(t=null),u[2]?y2:(t==null&&(t=!((p=u[0])!=null&&p.trim())),t?w2:v2)}let o=s(n,-1),c=o(n);return{c(){e=f("div"),c.c(),r(e,"class","markdown-body svelte-jdvhib"),r(e,"role","article")},m(u,d){C(u,e,d),c.m(e,null),l||(i=O(e,"click",n[3]),l=!0)},p(u,[d]){o===(o=s(u,d))&&c?c.p(u,d):(c.d(1),c=o(u),c&&(c.c(),c.m(e,null)))},i:oe,o:oe,d(u){u&&S(e),c.d(),l=!1,i()}}}function T2(n,e,t){let{content:l=""}=e;const i=pn();let s="",o="";function c(u){const d=u.target.closest("[data-verstak-href]");if(!d)return;const p=d.getAttribute("data-verstak-href");if(!p)return;u.preventDefault(),u.stopPropagation();const h=Hd(p);!h||!k2(h.type)||i("verstak-link",{type:h.type,id:h.id,href:p})}return n.$$set=u=>{"content"in u&&t(0,l=u.content)},n.$$.update=()=>{if(n.$$.dirty&1)try{t(1,s=_2(l||"")),t(2,o="")}catch(u){t(2,o=String(u)),t(1,s="")}},[l,s,o,c]}class Wd extends ut{constructor(e){super(),ct(this,e,T2,E2,at,{content:0})}}function S2(n){let e,t,l,i,s,o,c,u={content:n[0],placeholder:n[2],viewMode:"split"};return l=new ld({props:u}),n[15](l),l.$on("content-change",n[5]),l.$on("save",n[6]),l.$on("insert-link",n[7]),l.$on("insert-internal-link",n[8]),o=new Wd({props:{content:n[0]}}),o.$on("verstak-link",n[9]),{c(){e=f("div"),t=f("div"),xe(l.$$.fragment),i=w(),s=f("div"),xe(o.$$.fragment),r(t,"class","split-editor svelte-8tdyp9"),r(s,"class","split-preview svelte-8tdyp9"),r(e,"class","split-pane svelte-8tdyp9")},m(d,p){C(d,e,p),a(e,t),Xe(l,t,null),a(e,i),a(e,s),Xe(o,s,null),c=!0},p(d,p){const h={};p&1&&(h.content=d[0]),p&4&&(h.placeholder=d[2]),l.$set(h);const m={};p&1&&(m.content=d[0]),o.$set(m)},i(d){c||(ge(l.$$.fragment,d),ge(o.$$.fragment,d),c=!0)},o(d){ke(l.$$.fragment,d),ke(o.$$.fragment,d),c=!1},d(d){d&&S(e),n[15](null),Je(l),Je(o)}}}function C2(n){let e,t,l;return t=new Wd({props:{content:n[0]}}),t.$on("verstak-link",n[9]),{c(){e=f("div"),xe(t.$$.fragment),r(e,"class","preview-pane svelte-8tdyp9")},m(i,s){C(i,e,s),Xe(t,e,null),l=!0},p(i,s){const o={};s&1&&(o.content=i[0]),t.$set(o)},i(i){l||(ge(t.$$.fragment,i),l=!0)},o(i){ke(t.$$.fragment,i),l=!1},d(i){i&&S(e),Je(t)}}}function A2(n){let e,t,l={content:n[0],placeholder:n[2],viewMode:"edit"};return e=new ld({props:l}),n[14](e),e.$on("content-change",n[5]),e.$on("save",n[6]),e.$on("insert-link",n[7]),e.$on("insert-internal-link",n[8]),{c(){xe(e.$$.fragment)},m(i,s){Xe(e,i,s),t=!0},p(i,s){const o={};s&1&&(o.content=i[0]),s&4&&(o.placeholder=i[2]),e.$set(o)},i(i){t||(ge(e.$$.fragment,i),t=!0)},o(i){ke(e.$$.fragment,i),t=!1},d(i){n[14](null),Je(e,i)}}}function N2(n){let e,t,l,i=v("note.mode.edit")+"",s,o,c,u,d=v("note.mode.preview")+"",p,h,m,g,b=v("note.mode.split")+"",k,y,E,T,N,A,I,R,M;const D=[A2,C2,S2],z=[];function U(H,B){return H[1]==="edit"?0:H[1]==="preview"?1:H[1]==="split"?2:-1}return~(N=U(n))&&(A=z[N]=D[N](n)),{c(){e=f("div"),t=f("div"),l=f("button"),s=j(i),c=w(),u=f("button"),p=j(d),m=w(),g=f("button"),k=j(b),E=w(),T=f("div"),A&&A.c(),r(l,"type","button"),r(l,"class","mode-btn svelte-8tdyp9"),r(l,"role","tab"),r(l,"aria-selected",o=n[1]==="edit"),ce(l,"active",n[1]==="edit"),r(u,"type","button"),r(u,"class","mode-btn svelte-8tdyp9"),r(u,"role","tab"),r(u,"aria-selected",h=n[1]==="preview"),ce(u,"active",n[1]==="preview"),r(g,"type","button"),r(g,"class","mode-btn svelte-8tdyp9"),r(g,"role","tab"),r(g,"aria-selected",y=n[1]==="split"),ce(g,"active",n[1]==="split"),r(t,"class","mode-switcher svelte-8tdyp9"),r(t,"role","tablist"),r(t,"aria-label","Note view mode"),r(T,"class","panel-content svelte-8tdyp9"),r(e,"class","note-editor-panel svelte-8tdyp9"),ce(e,"mode-edit",n[1]==="edit"),ce(e,"mode-preview",n[1]==="preview"),ce(e,"mode-split",n[1]==="split")},m(H,B){C(H,e,B),a(e,t),a(t,l),a(l,s),a(t,c),a(t,u),a(u,p),a(t,m),a(t,g),a(g,k),a(e,E),a(e,T),~N&&z[N].m(T,null),I=!0,R||(M=[O(l,"click",n[11]),O(u,"click",n[12]),O(g,"click",n[13])],R=!0)},p(H,[B]){(!I||B&2&&o!==(o=H[1]==="edit"))&&r(l,"aria-selected",o),(!I||B&2)&&ce(l,"active",H[1]==="edit"),(!I||B&2&&h!==(h=H[1]==="preview"))&&r(u,"aria-selected",h),(!I||B&2)&&ce(u,"active",H[1]==="preview"),(!I||B&2&&y!==(y=H[1]==="split"))&&r(g,"aria-selected",y),(!I||B&2)&&ce(g,"active",H[1]==="split");let W=N;N=U(H),N===W?~N&&z[N].p(H,B):(A&&(yt(),ke(z[W],1,1,()=>{z[W]=null}),Et()),~N?(A=z[N],A?A.p(H,B):(A=z[N]=D[N](H),A.c()),ge(A,1),A.m(T,null)):A=null),(!I||B&2)&&ce(e,"mode-edit",H[1]==="edit"),(!I||B&2)&&ce(e,"mode-preview",H[1]==="preview"),(!I||B&2)&&ce(e,"mode-split",H[1]==="split")},i(H){I||(ge(A),I=!0)},o(H){ke(A),I=!1},d(H){H&&S(e),~N&&z[N].d(),R=!1,Ce(M)}}}function I2(n,e,t){let{content:l=""}=e,{viewMode:i="edit"}=e,{placeholder:s=""}=e;const o=pn();let c;function u(A){o("mode-change",{mode:A})}function d(A){t(0,l=A.detail.content),o("content-change",A.detail)}function p(){o("save")}function h(){o("insert-link")}function m(){o("insert-internal-link")}function g(A){o("verstak-link",A.detail)}function b(A){c&&typeof c.insertText=="function"&&c.insertText(A)}const k=()=>u("edit"),y=()=>u("preview"),E=()=>u("split");function T(A){An[A?"unshift":"push"](()=>{c=A,t(3,c)})}function N(A){An[A?"unshift":"push"](()=>{c=A,t(3,c)})}return n.$$set=A=>{"content"in A&&t(0,l=A.content),"viewMode"in A&&t(1,i=A.viewMode),"placeholder"in A&&t(2,s=A.placeholder)},[l,i,s,c,u,d,p,h,m,g,b,k,y,E,T,N]}class M2 extends ut{constructor(e){super(),ct(this,e,I2,N2,at,{content:0,viewMode:1,placeholder:2,insertText:10})}get insertText(){return this.$$.ctx[10]}}function Qa(n,e,t){const l=n.slice();return l[25]=e[t],l[27]=t,l}function xa(n,e,t){const l=n.slice();return l[28]=e[t],l}function $a(n){let e,t,l,i,s,o,c,u,d,p,h,m,g=Te(n[10]),b=[];for(let T=0;T=2&&o[5].length===0&&!o[7]),t?O2:D2)}let i=l(n,-1),s=i(n);return{c(){e=f("div"),s.c(),r(e,"class","picker-results svelte-12kipyi"),r(e,"role","listbox")},m(o,c){C(o,e,c),s.m(e,null)},p(o,c){i===(i=l(o,c))&&s?s.p(o,c):(s.d(1),s=i(o),s&&(s.c(),s.m(e,null)))},d(o){o&&S(e),s.d()}}}function L2(n){let e;return{c(){e=f("div"),e.innerHTML="

    🔒 Сейф доступов ещё не реализован

    ",r(e,"class","picker-secret-placeholder svelte-12kipyi")},m(t,l){C(t,e,l)},p:oe,d(t){t&&S(e)}}}function D2(n){let e,t=Te(n[5]),l=[];for(let i=0;i0?"Нет результатов для этого типа":"Ничего не найдено",l;return{c(){e=f("div"),l=j(t),r(e,"class","picker-empty svelte-12kipyi")},m(i,s){C(i,e,s),a(e,l)},p(i,s){s&16&&t!==(t=i[4].length>0?"Нет результатов для этого типа":"Ничего не найдено")&&Q(l,t)},d(i){i&&S(e)}}}function q2(n){let e,t;return{c(){e=f("div"),t=j(n[8]),r(e,"class","picker-error svelte-12kipyi")},m(l,i){C(l,e,i),a(e,t)},p(l,i){i&256&&Q(t,l[8])},d(l){l&&S(e)}}}function P2(n){let e;return{c(){e=f("div"),e.textContent="Загрузка...",r(e,"class","picker-loading svelte-12kipyi")},m(t,l){C(t,e,l)},p:oe,d(t){t&&S(e)}}}function tc(n){let e,t=n[25].path+"",l;return{c(){e=f("span"),l=j(t),r(e,"class","picker-result-path svelte-12kipyi")},m(i,s){C(i,e,s),a(e,l)},p(i,s){s&32&&t!==(t=i[25].path+"")&&Q(l,t)},d(i){i&&S(e)}}}function nc(n){let e,t,l=n[25].title+"",i,s,o,c,u,d,p=n[25].path&&tc(n);function h(){return n[18](n[25])}return{c(){e=f("button"),t=f("span"),i=j(l),s=w(),p&&p.c(),o=w(),r(t,"class","picker-result-title svelte-12kipyi"),r(e,"type","button"),r(e,"class","picker-result svelte-12kipyi"),r(e,"role","option"),r(e,"aria-selected",c=n[27]===n[6]),ce(e,"selected",n[27]===n[6])},m(m,g){C(m,e,g),a(e,t),a(t,i),a(e,s),p&&p.m(e,null),a(e,o),u||(d=O(e,"click",h),u=!0)},p(m,g){n=m,g&32&&l!==(l=n[25].title+"")&&Q(i,l),n[25].path?p?p.p(n,g):(p=tc(n),p.c(),p.m(e,o)):p&&(p.d(1),p=null),g&64&&c!==(c=n[27]===n[6])&&r(e,"aria-selected",c),g&64&&ce(e,"selected",n[27]===n[6])},d(m){m&&S(e),p&&p.d(),u=!1,d()}}}function z2(n){let e,t=n[0]&&$a(n);return{c(){t&&t.c(),e=vt()},m(l,i){t&&t.m(l,i),C(l,e,i)},p(l,[i]){l[0]?t?t.p(l,i):(t=$a(l),t.c(),t.m(e.parentNode,e)):t&&(t.d(1),t=null)},i:oe,o:oe,d(l){l&&S(e),t&&t.d(l)}}}function lc(n){return n==="note"?"note":n==="file"?"file":n==="secret"?"secret":"case"}function B2(n,e,t){let{visible:l=!1}=e;const i=pn(),s=[{id:"case",label:"Дело"},{id:"note",label:"Заметка"},{id:"file",label:"Файл"},{id:"secret",label:"Секрет"}];let o="note",c="",u=[],d=[],p=0,h=!1,m="",g;function b(){t(5,d=u.filter(B=>lc(B.type)===o)),t(6,p=0)}async function k(){if(!c.trim()||c.trim().length<2){t(4,u=[]),t(5,d=[]);return}t(7,h=!0),t(8,m="");try{const B=td(c.trim()),W=new Set,G=[];for(const L of B)W.has(L)||(W.add(L),G.push(L));const V=await Promise.all(G.map(L=>window.go.main.App.SearchNodes(L).catch(()=>[]))),F=new Map;for(const L of V)for(const q of L||[])F.has(q.id)||F.set(q.id,q);t(4,u=Array.from(F.values())),b()}catch(B){t(8,m=String(B)),t(4,u=[]),t(5,d=[])}finally{t(7,h=!1)}}function y(){clearTimeout(A),A=setTimeout(k,250)}function E(B){B.key==="ArrowDown"?(B.preventDefault(),t(6,p=Math.min(p+1,d.length-1))):B.key==="ArrowUp"?(B.preventDefault(),t(6,p=Math.max(p-1,0))):B.key==="Enter"?(B.preventDefault(),d[p]&&T(d[p])):B.key==="Escape"&&i("close")}function T(B){const G=`[${b2(B.title||B.id)}](verstak://${lc(B.type)}/${B.id})`;i("insert",{markdown:G})}function N(B){t(2,o=B),b(),g&&g.focus()}let A;function I(B){An[B?"unshift":"push"](()=>{g=B,t(1,g)})}function R(){c=this.value,t(3,c)}const M=B=>B.id!=="secret"&&N(B.id),D=B=>T(B),z=()=>i("close"),U=()=>i("close"),H=B=>B.key==="Escape"&&i("close");return n.$$set=B=>{"visible"in B&&t(0,l=B.visible)},n.$$.update=()=>{n.$$.dirty&3&&l&&g&&setTimeout(()=>g.focus(),50)},[l,g,o,c,u,d,p,h,m,i,s,y,E,T,N,I,R,M,D,z,U,H]}class F2 extends ut{constructor(e){super(),ct(this,e,B2,z2,at,{visible:0})}}function ic(n,e,t){const l=n.slice();return l[18]=e[t],l}function sc(n){let e,t,l,i,s,o,c,u,d;return{c(){e=f("div"),t=f("input"),l=w(),i=f("div"),s=f("button"),s.textContent="Создать",o=w(),c=f("button"),c.textContent="Отмена",r(t,"type","text"),r(t,"placeholder","Название заметки"),r(t,"class","svelte-t8waqp"),r(s,"class","btn btn-primary"),r(c,"class","btn"),r(i,"class","form-actions svelte-t8waqp"),r(e,"class","create-form svelte-t8waqp")},m(p,h){C(p,e,h),a(e,t),Re(t,n[3]),a(e,l),a(e,i),a(i,s),a(i,o),a(i,c),u||(d=[O(t,"input",n[12]),O(t,"keydown",n[7]),O(s,"click",n[6]),O(c,"click",n[5])],u=!0)},p(p,h){h&8&&t.value!==p[3]&&Re(t,p[3])},d(p){p&&S(e),u=!1,Ce(d)}}}function j2(n){let e,t=Te(n[0]),l=[];for(let i=0;iНет заметок

    Создайте первую заметку

    ',r(e,"class","empty-state svelte-t8waqp")},m(t,l){C(t,e,l)},p:oe,d(t){t&&S(e)}}}function oc(n){let e,t,l,i=n[18].title+"",s,o,c,u=n[1](n[18].createdAt)+"",d,p,h,m,g,b,k,y,E;function T(){return n[13](n[18])}function N(){return n[14](n[18])}function A(){return n[15](n[18])}function I(...R){return n[16](n[18],...R)}return{c(){e=f("div"),t=f("div"),l=f("div"),s=j(i),o=w(),c=f("div"),d=j(u),p=w(),h=f("div"),m=f("button"),m.innerHTML='',g=w(),b=f("button"),b.innerHTML='',k=w(),r(l,"class","note-card-title svelte-t8waqp"),r(c,"class","note-card-date svelte-t8waqp"),r(t,"class","note-card-info svelte-t8waqp"),r(m,"class","note-action-btn svelte-t8waqp"),r(m,"title","Переименовать"),r(b,"class","note-action-btn note-action-danger svelte-t8waqp"),r(b,"title","Удалить"),r(h,"class","note-card-actions svelte-t8waqp"),r(e,"class","note-card svelte-t8waqp"),r(e,"role","button"),r(e,"tabindex","0")},m(R,M){C(R,e,M),a(e,t),a(t,l),a(l,s),a(t,o),a(t,c),a(c,d),a(e,p),a(e,h),a(h,m),a(h,g),a(h,b),a(e,k),y||(E=[O(m,"click",T),O(b,"click",N),O(h,"click",We(n[11])),O(e,"click",A),O(e,"keydown",I)],y=!0)},p(R,M){n=R,M&1&&i!==(i=n[18].title+"")&&Q(s,i),M&3&&u!==(u=n[1](n[18].createdAt)+"")&&Q(d,u)},d(R){R&&S(e),y=!1,Ce(E)}}}function H2(n){let e,t,l,i,s,o,c,u=n[2]&&sc(n);function d(m,g){if(m[0].length===0&&!m[2])return U2;if(m[0].length>0)return j2}let p=d(n),h=p&&p(n);return{c(){e=f("div"),t=f("div"),l=f("button"),l.textContent="Добавить заметку",i=w(),u&&u.c(),s=w(),h&&h.c(),r(l,"class","btn btn-primary"),r(t,"class","tab-toolbar svelte-t8waqp"),r(e,"class","notes-tab svelte-t8waqp")},m(m,g){C(m,e,g),a(e,t),a(t,l),a(e,i),u&&u.m(e,null),a(e,s),h&&h.m(e,null),o||(c=O(l,"click",n[4]),o=!0)},p(m,[g]){m[2]?u?u.p(m,g):(u=sc(m),u.c(),u.m(e,s)):u&&(u.d(1),u=null),p===(p=d(m))&&h?h.p(m,g):(h&&h.d(1),h=p&&p(m),h&&(h.c(),h.m(e,null)))},i:oe,o:oe,d(m){m&&S(e),u&&u.d(),h&&h.d(),o=!1,c()}}}function W2(n,e,t){let{notes:l=[]}=e,{formatDate:i=I=>""}=e;const s=pn();let o=!1,c="";function u(){t(2,o=!0),t(3,c="")}function d(){t(2,o=!1),t(3,c="")}function p(){c.trim()&&(s("submitCreateNote",{title:c.trim()}),t(2,o=!1),t(3,c=""))}function h(I){I.key==="Enter"&&p()}function m(I){s("openNote",{note:I})}function g(I,R){s("startRename",{noteId:I,currentTitle:R})}function b(I){s("deleteNote",{note:I})}function k(I){Ds.call(this,n,I)}function y(){c=this.value,t(3,c)}const E=I=>g(I.id,I.title),T=I=>b(I),N=I=>m(I),A=(I,R)=>R.key==="Enter"&&m(I);return n.$$set=I=>{"notes"in I&&t(0,l=I.notes),"formatDate"in I&&t(1,i=I.formatDate)},[l,i,o,c,u,d,p,h,m,g,b,k,y,E,T,N,A]}class G2 extends ut{constructor(e){super(),ct(this,e,W2,H2,at,{notes:0,formatDate:1})}}function rc(n,e,t){const l=n.slice();return l[13]=e[t],l}function ac(n,e,t){const l=n.slice();return l[16]=e[t],l}function cc(n){let e,t,l,i=Te(n[1].slice(0,5)),s=[];for(let o=0;o0&&cc(n),Ge=n[2].length>0&&fc(n);return{c(){e=f("div"),t=f("h2"),i=j(l),s=w(),o=f("div"),c=f("div"),u=f("span"),u.textContent=`${v("overview.type")}`,d=f("span"),h=j(p),m=w(),g=f("div"),b=f("span"),b.textContent=`${v("overview.section")}`,k=f("span"),E=j(y),T=w(),N=f("div"),A=f("span"),A.textContent=`${v("overview.created")}`,I=f("span"),M=j(R),D=w(),z=f("div"),U=f("button"),H=ae("svg"),B=ae("path"),W=ae("path"),G=w(),F=j(V),L=w(),q=f("button"),P=ae("svg"),X=ae("path"),Y=w(),ee=j(J),ne=w(),le=f("button"),he=ae("svg"),se=ae("polygon"),Be=w(),Me=j(Ke),te=w(),re=f("button"),Ae=ae("svg"),Fe=ae("circle"),we=ae("polyline"),je=w(),Ne=j(Qe),Ve=w(),Oe&&Oe.c(),Ue=w(),Ge&&Ge.c(),r(t,"class","svelte-3r30e3"),r(u,"class","meta-label svelte-3r30e3"),r(c,"class","meta-item svelte-3r30e3"),r(b,"class","meta-label svelte-3r30e3"),r(g,"class","meta-item svelte-3r30e3"),r(A,"class","meta-label svelte-3r30e3"),r(N,"class","meta-item svelte-3r30e3"),r(o,"class","meta-grid svelte-3r30e3"),r(B,"d","M12 20h9"),r(W,"d","M16.5 3.5a2.121 2.121 0 0 1 3 3L7 19l-4 1 1-4L16.5 3.5z"),r(H,"width","16"),r(H,"height","16"),r(H,"viewBox","0 0 24 24"),r(H,"fill","none"),r(H,"stroke","currentColor"),r(H,"stroke-width","2"),r(H,"stroke-linecap","round"),r(H,"stroke-linejoin","round"),r(U,"class","qa-btn svelte-3r30e3"),r(X,"d","M21.44 11.05l-9.19 9.19a6 6 0 0 1-8.49-8.49l9.19-9.19a4 4 0 0 1 5.66 5.66l-9.2 9.19a2 2 0 0 1-2.83-2.83l8.49-8.48"),r(P,"width","16"),r(P,"height","16"),r(P,"viewBox","0 0 24 24"),r(P,"fill","none"),r(P,"stroke","currentColor"),r(P,"stroke-width","2"),r(P,"stroke-linecap","round"),r(P,"stroke-linejoin","round"),r(q,"class","qa-btn svelte-3r30e3"),r(se,"points","13 2 3 14 12 14 11 22 21 10 12 10 13 2"),r(he,"width","16"),r(he,"height","16"),r(he,"viewBox","0 0 24 24"),r(he,"fill","none"),r(he,"stroke","currentColor"),r(he,"stroke-width","2"),r(he,"stroke-linecap","round"),r(he,"stroke-linejoin","round"),r(le,"class","qa-btn svelte-3r30e3"),r(Fe,"cx","12"),r(Fe,"cy","12"),r(Fe,"r","10"),r(we,"points","12 6 12 12 16 14"),r(Ae,"width","16"),r(Ae,"height","16"),r(Ae,"viewBox","0 0 24 24"),r(Ae,"fill","none"),r(Ae,"stroke","currentColor"),r(Ae,"stroke-width","2"),r(Ae,"stroke-linecap","round"),r(Ae,"stroke-linejoin","round"),r(re,"class","qa-btn svelte-3r30e3"),r(z,"class","quick-actions svelte-3r30e3"),r(e,"class","overview svelte-3r30e3")},m(qe,ue){C(qe,e,ue),a(e,t),a(t,i),a(e,s),a(e,o),a(o,c),a(c,u),a(c,d),a(d,h),a(o,m),a(o,g),a(g,b),a(g,k),a(k,E),a(o,T),a(o,N),a(N,A),a(N,I),a(I,M),a(e,D),a(e,z),a(z,U),a(U,H),a(H,B),a(H,W),a(U,G),a(U,F),a(z,L),a(z,q),a(q,P),a(P,X),a(q,Y),a(q,ee),a(z,ne),a(z,le),a(le,he),a(he,se),a(le,Be),a(le,Me),a(z,te),a(z,re),a(re,Ae),a(Ae,Fe),a(Ae,we),a(re,je),a(re,Ne),a(e,Ve),Oe&&Oe.m(e,null),a(e,Ue),Ge&&Ge.m(e,null),Se||(He=[O(U,"click",n[5]),O(q,"click",n[6]),O(le,"click",n[7]),O(re,"click",n[8])],Se=!0)},p(qe,[ue]){ue&1&&l!==(l=qe[0].title+"")&&Q(i,l),ue&17&&p!==(p=qe[4](qe[0].type)+"")&&Q(h,p),ue&1&&y!==(y=(qe[0].section||"—")+"")&&Q(E,y),ue&9&&R!==(R=qe[3](qe[0].createdAt)+"")&&Q(M,R),qe[1].length>0?Oe?Oe.p(qe,ue):(Oe=cc(qe),Oe.c(),Oe.m(e,Ue)):Oe&&(Oe.d(1),Oe=null),qe[2].length>0?Ge?Ge.p(qe,ue):(Ge=fc(qe),Ge.c(),Ge.m(e,null)):Ge&&(Ge.d(1),Ge=null)},i:oe,o:oe,d(qe){qe&&S(e),Oe&&Oe.d(),Ge&&Ge.d(),Se=!1,Ce(He)}}}function V2(n,e,t){let{selectedNode:l=null}=e,{notes:i=[]}=e,{worklog:s=[]}=e,{formatDate:o=y=>""}=e,{nodeKindLabel:c=y=>y||""}=e;const u=pn();function d(){u("createNote")}function p(){u("addFile")}function h(){u("createAction")}function m(){u("switchTab",{tab:"worklog"})}function g(y){u("openNote",{note:y})}const b=y=>g(y),k=(y,E)=>E.key==="Enter"&&g(y);return n.$$set=y=>{"selectedNode"in y&&t(0,l=y.selectedNode),"notes"in y&&t(1,i=y.notes),"worklog"in y&&t(2,s=y.worklog),"formatDate"in y&&t(3,o=y.formatDate),"nodeKindLabel"in y&&t(4,c=y.nodeKindLabel)},[l,i,s,o,c,d,p,h,m,g,b,k]}class Z2 extends ut{constructor(e){super(),ct(this,e,V2,K2,at,{selectedNode:0,notes:1,worklog:2,formatDate:3,nodeKindLabel:4})}}function pc(n,e,t){const l=n.slice();return l[98]=e[t],l}function hc(n){let e,t=v("common.paste")+"",l,i,s=n[10].items.length+"",o,c,u;return{c(){e=f("button"),l=j(t),i=w(),o=j(s),r(e,"class","btn")},m(d,p){C(d,e,p),a(e,l),a(e,i),a(e,o),c||(u=O(e,"click",n[36]),c=!0)},p(d,p){p[0]&1024&&s!==(s=d[10].items.length+"")&&Q(o,s)},d(d){d&&S(e),c=!1,u()}}}function Y2(n){let e,t,l,i,s,o,c;const u=[Q2,J2],d=[];function p(b,k){return b[4].length>0?0:1}e=p(n),t=d[e]=u[e](n);const h=[$2,x2],m=[];function g(b,k){return b[5].length===0?0:1}return i=g(n),s=m[i]=h[i](n),{c(){t.c(),l=w(),s.c(),o=vt()},m(b,k){d[e].m(b,k),C(b,l,k),m[i].m(b,k),C(b,o,k),c=!0},p(b,k){let y=e;e=p(b),e===y?d[e].p(b,k):(yt(),ke(d[y],1,1,()=>{d[y]=null}),Et(),t=d[e],t?t.p(b,k):(t=d[e]=u[e](b),t.c()),ge(t,1),t.m(l.parentNode,l));let E=i;i=g(b),i===E?m[i].p(b,k):(yt(),ke(m[E],1,1,()=>{m[E]=null}),Et(),s=m[i],s?s.p(b,k):(s=m[i]=h[i](b),s.c()),ge(s,1),s.m(o.parentNode,o))},i(b){c||(ge(t),ge(s),c=!0)},o(b){ke(t),ke(s),c=!1},d(b){b&&(S(l),S(o)),d[e].d(b),m[i].d(b)}}}function X2(n){let e,t;return{c(){e=f("div"),t=f("p"),t.textContent=`${v("common.loading")}`,r(e,"class","empty-state")},m(l,i){C(l,e,i),a(e,t)},p:oe,i:oe,o:oe,d(l){l&&S(e)}}}function J2(n){let e,t;return e=new Yf({props:{crumbs:[{name:v("file.root")}]}}),{c(){xe(e.$$.fragment)},m(l,i){Xe(e,l,i),t=!0},p:oe,i(l){t||(ge(e.$$.fragment,l),t=!0)},o(l){ke(e.$$.fragment,l),t=!1},d(l){Je(e,l)}}}function Q2(n){let e,t,l,i,s,o,c,u=v("common.backLabel")+"",d,p,h,m;return e=new Yf({props:{crumbs:[{name:v("file.root")},...n[4]]}}),e.$on("navigate",n[58]),{c(){xe(e.$$.fragment),t=w(),l=f("button"),i=ae("svg"),s=ae("line"),o=ae("polyline"),c=w(),d=j(u),r(s,"x1","19"),r(s,"y1","12"),r(s,"x2","5"),r(s,"y2","12"),r(o,"points","12 19 5 12 12 5"),r(i,"width","14"),r(i,"height","14"),r(i,"viewBox","0 0 24 24"),r(i,"fill","none"),r(i,"stroke","currentColor"),r(i,"stroke-width","2"),r(i,"stroke-linecap","round"),r(i,"stroke-linejoin","round"),r(l,"class","btn btn-sm back-btn svelte-1js0qn7")},m(g,b){Xe(e,g,b),C(g,t,b),C(g,l,b),a(l,i),a(i,s),a(i,o),a(l,c),a(l,d),p=!0,h||(m=O(l,"click",n[25]),h=!0)},p(g,b){const k={};b[0]&16&&(k.crumbs=[{name:v("file.root")},...g[4]]),e.$set(k)},i(g){p||(ge(e.$$.fragment,g),p=!0)},o(g){ke(e.$$.fragment,g),p=!1},d(g){g&&(S(t),S(l)),Je(e,g),h=!1,m()}}}function x2(n){let e,t=[],l=new Map,i,s=Te(n[5]);const o=c=>c[98].id;for(let c=0;c0?v("file.noFiles"):v("file.noFilesCase"))+"",o,c,u,d,p,h,m,g,b,k;return{c(){e=f("div"),t=f("div"),t.innerHTML='',l=w(),i=f("p"),o=j(s),c=w(),u=f("p"),u.textContent=`${v("file.hint")}`,d=w(),p=f("div"),h=f("button"),h.textContent=`${v("file.addFileSimple")}`,m=w(),g=f("button"),g.textContent=`${v("file.addFolderSimple")}`,r(t,"class","empty-icon"),r(u,"class","hint"),r(h,"class","btn btn-primary"),r(g,"class","btn"),r(p,"class","empty-actions"),r(e,"class","empty-state")},m(y,E){C(y,e,E),a(e,t),a(e,l),a(e,i),a(i,o),a(e,c),a(e,u),a(e,d),a(e,p),a(p,h),a(p,m),a(p,g),b||(k=[O(h,"click",n[29]),O(g,"click",n[30])],b=!0)},p(y,E){E[0]&16&&s!==(s=(y[4].length>0?v("file.noFiles"):v("file.noFilesCase"))+"")&&Q(o,s)},i:oe,o:oe,d(y){y&&S(e),b=!1,Ce(k)}}}function mc(n,e){let t,l,i;return l=new Hg({props:{item:e[98],selected:e[11].includes(e[98].id),onDragStart:e[40],onDragOver:e[41],onDrop:e[42]}}),l.$on("navigate",e[59]),l.$on("preview",e[60]),l.$on("openExternal",e[61]),l.$on("showInFolder",e[62]),l.$on("delete",e[63]),l.$on("rename",e[64]),l.$on("duplicate",e[65]),l.$on("cut",e[66]),l.$on("copy",e[67]),l.$on("selectOne",e[68]),l.$on("toggleSelect",e[69]),l.$on("rangeSelect",e[70]),{key:n,first:null,c(){t=vt(),xe(l.$$.fragment),this.first=t},m(s,o){C(s,t,o),Xe(l,s,o),i=!0},p(s,o){e=s;const c={};o[0]&32&&(c.item=e[98]),o[0]&2080&&(c.selected=e[11].includes(e[98].id)),l.$set(c)},i(s){i||(ge(l.$$.fragment,s),i=!0)},o(s){ke(l.$$.fragment,s),i=!1},d(s){s&&S(t),Je(l,s)}}}function gc(n){let e,t;return{c(){e=f("div"),t=f("p"),t.textContent=`${v("file.scanning")}`,r(e,"class","empty-state")},m(l,i){C(l,e,i),a(e,t)},d(l){l&&S(e)}}}function _c(n){let e,t,l,i,s,o,c,u,d,p,h,m,g,b,k,y,E,T=n[17]&&bc(n);return{c(){e=f("div"),t=f("div"),l=f("h3"),l.textContent=`${v("rename.title")}`,i=w(),s=f("div"),o=f("label"),c=f("span"),c.textContent=`${v("common.newName")}`,u=w(),d=f("input"),p=w(),T&&T.c(),h=w(),m=f("div"),g=f("button"),g.textContent=`${v("common.rename")}`,b=w(),k=f("button"),k.textContent=`${v("common.cancel")}`,r(c,"class","label-text"),r(d,"type","text"),r(s,"class","form-group"),r(g,"class","btn btn-primary"),r(k,"class","btn"),r(m,"class","modal-actions"),r(t,"class","modal"),r(e,"class","modal-overlay"),r(e,"role","button"),r(e,"tabindex","0")},m(N,A){C(N,e,A),a(e,t),a(t,l),a(t,i),a(t,s),a(s,o),a(o,c),a(o,u),a(o,d),Re(d,n[16]),a(t,p),T&&T.m(t,null),a(t,h),a(t,m),a(m,g),a(m,b),a(m,k),y||(E=[O(d,"input",n[71]),O(d,"keydown",n[45]),O(g,"click",n[43]),O(k,"click",n[44]),O(e,"click",Qt(n[44])),O(e,"keydown",n[72])],y=!0)},p(N,A){A[0]&65536&&d.value!==N[16]&&Re(d,N[16]),N[17]?T?T.p(N,A):(T=bc(N),T.c(),T.m(t,h)):T&&(T.d(1),T=null)},d(N){N&&S(e),T&&T.d(),y=!1,Ce(E)}}}function bc(n){let e,t;return{c(){e=f("div"),t=j(n[17]),r(e,"class","rename-error svelte-1js0qn7")},m(l,i){C(l,e,i),a(e,t)},p(l,i){i[0]&131072&&Q(t,l[17])},d(l){l&&S(e)}}}function kc(n){let e,t;return e=new Jf({props:{title:n[19],message:n[20],confirmText:n[22],danger:n[21]}}),e.$on("confirm",n[46]),e.$on("cancel",n[47]),{c(){xe(e.$$.fragment)},m(l,i){Xe(e,l,i),t=!0},p(l,i){const s={};i[0]&524288&&(s.title=l[19]),i[0]&1048576&&(s.message=l[20]),i[0]&4194304&&(s.confirmText=l[22]),i[0]&2097152&&(s.danger=l[21]),e.$set(s)},i(l){t||(ge(e.$$.fragment,l),t=!0)},o(l){ke(e.$$.fragment,l),t=!1},d(l){Je(e,l)}}}function vc(n){let e,t,l,i=v("file.importTitle")+"",s,o,c=(n[0]?n[0].title:"")+"",u,d,p,h,m,g,b,k=n[13].files+"",y,E,T,N,A,I=n[13].folders+"",R,M,D,z,U,H=(n[13].totalBytes/1024).toFixed(1)+"",B,W,G,V,F,L,q,P,X,Y,J,ee,ne=n[13].isDangerous&&wc(n);return{c(){e=f("div"),t=f("div"),l=f("h3"),s=j(i),o=j(" «"),u=j(c),d=j("»"),p=w(),h=f("div"),m=f("div"),g=f("span"),g.textContent=`${v("file.importFiles")}`,b=f("span"),y=j(k),E=w(),T=f("div"),N=f("span"),N.textContent=`${v("file.importFolders")}`,A=f("span"),R=j(I),M=w(),D=f("div"),z=f("span"),z.textContent=`${v("file.importSize")}`,U=f("span"),B=j(H),W=j(" KB"),G=w(),ne&&ne.c(),V=w(),F=f("div"),L=f("button"),L.textContent=`${v("file.importCopy")}`,q=w(),P=f("button"),P.textContent=`${v("file.importLink")}`,X=w(),Y=f("button"),Y.textContent=`${v("common.cancel")}`,r(m,"class","summary-row svelte-1js0qn7"),r(T,"class","summary-row svelte-1js0qn7"),r(D,"class","summary-row svelte-1js0qn7"),r(h,"class","import-summary svelte-1js0qn7"),r(L,"class","btn btn-primary"),r(P,"class","btn"),r(Y,"class","btn"),r(F,"class","modal-actions"),r(t,"class","modal"),r(e,"class","modal-overlay"),r(e,"role","button"),r(e,"tabindex","0")},m(le,he){C(le,e,he),a(e,t),a(t,l),a(l,s),a(l,o),a(l,u),a(l,d),a(t,p),a(t,h),a(h,m),a(m,g),a(m,b),a(b,y),a(h,E),a(h,T),a(T,N),a(T,A),a(A,R),a(h,M),a(h,D),a(D,z),a(D,U),a(U,B),a(U,W),a(h,G),ne&&ne.m(h,null),a(t,V),a(t,F),a(F,L),a(F,q),a(F,P),a(F,X),a(F,Y),J||(ee=[O(L,"click",n[73]),O(P,"click",n[74]),O(Y,"click",n[49]),O(e,"click",Qt(n[49])),O(e,"keydown",n[75])],J=!0)},p(le,he){he[0]&1&&c!==(c=(le[0]?le[0].title:"")+"")&&Q(u,c),he[0]&8192&&k!==(k=le[13].files+"")&&Q(y,k),he[0]&8192&&I!==(I=le[13].folders+"")&&Q(R,I),he[0]&8192&&H!==(H=(le[13].totalBytes/1024).toFixed(1)+"")&&Q(B,H),le[13].isDangerous?ne?ne.p(le,he):(ne=wc(le),ne.c(),ne.m(h,null)):ne&&(ne.d(1),ne=null)},d(le){le&&S(e),ne&&ne.d(),J=!1,Ce(ee)}}}function wc(n){let e,t,l,i,s,o,c=n[13].dangerReason+"",u;return{c(){e=f("div"),t=ae("svg"),l=ae("path"),i=ae("line"),s=ae("line"),o=w(),u=j(c),r(l,"d","M10.29 3.86L1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z"),r(i,"x1","12"),r(i,"y1","9"),r(i,"x2","12"),r(i,"y2","13"),r(s,"x1","12"),r(s,"y1","17"),r(s,"x2","12.01"),r(s,"y2","17"),r(t,"width","14"),r(t,"height","14"),r(t,"viewBox","0 0 24 24"),r(t,"fill","none"),r(t,"stroke","currentColor"),r(t,"stroke-width","2"),r(t,"stroke-linecap","round"),r(t,"stroke-linejoin","round"),r(e,"class","summary-warn svelte-1js0qn7")},m(d,p){C(d,e,p),a(e,t),a(t,l),a(t,i),a(t,s),a(e,o),a(e,u)},p(d,p){p[0]&8192&&c!==(c=d[13].dangerReason+"")&&Q(u,c)},d(d){d&&S(e)}}}function yc(n){let e,t;return e=new Xf({props:{item:n[6],content:n[7],loading:n[8],error:n[9]}}),e.$on("close",n[28]),e.$on("openExternal",n[76]),{c(){xe(e.$$.fragment)},m(l,i){Xe(e,l,i),t=!0},p(l,i){const s={};i[0]&64&&(s.item=l[6]),i[0]&128&&(s.content=l[7]),i[0]&256&&(s.loading=l[8]),i[0]&512&&(s.error=l[9]),e.$set(s)},i(l){t||(ge(e.$$.fragment,l),t=!0)},o(l){ke(e.$$.fragment,l),t=!1},d(l){Je(e,l)}}}function ew(n){let e,t,l,i=v("file.addFile")+"",s,o,c,u=v("file.addFolder")+"",d,p,h,m,g,b,k,y,E,T,N,A,I,R,M,D,z=n[10].items.length>0&&hc(n);const U=[X2,Y2],H=[];function B(q,P){return q[2]?0:1}b=B(n),k=H[b]=U[b](n);let W=n[12]&&!n[14]&&gc(),G=n[15]&&_c(n),V=n[18]&&kc(n),F=n[14]&&n[13]&&vc(n),L=n[6]&&yc(n);return{c(){e=f("div"),t=f("div"),l=f("button"),s=j(i),o=w(),c=f("button"),d=j(u),p=w(),h=f("button"),h.textContent=`${v("file.newFile")}`,m=w(),z&&z.c(),g=w(),k.c(),y=w(),W&&W.c(),E=w(),G&&G.c(),T=w(),V&&V.c(),N=w(),F&&F.c(),A=w(),L&&L.c(),I=vt(),r(l,"class","btn btn-primary"),l.disabled=n[12],r(c,"class","btn"),c.disabled=n[12],r(h,"class","btn"),r(t,"class","tab-toolbar svelte-1js0qn7"),r(e,"class","files-tab svelte-1js0qn7")},m(q,P){C(q,e,P),a(e,t),a(t,l),a(l,s),a(t,o),a(t,c),a(c,d),a(t,p),a(t,h),a(t,m),z&&z.m(t,null),a(e,g),H[b].m(e,null),a(e,y),W&&W.m(e,null),C(q,E,P),G&&G.m(q,P),C(q,T,P),V&&V.m(q,P),C(q,N,P),F&&F.m(q,P),C(q,A,P),L&&L.m(q,P),C(q,I,P),R=!0,M||(D=[O(l,"click",n[29]),O(c,"click",n[30]),O(h,"click",n[31])],M=!0)},p(q,P){(!R||P[0]&4096)&&(l.disabled=q[12]),(!R||P[0]&4096)&&(c.disabled=q[12]),q[10].items.length>0?z?z.p(q,P):(z=hc(q),z.c(),z.m(t,null)):z&&(z.d(1),z=null);let X=b;b=B(q),b===X?H[b].p(q,P):(yt(),ke(H[X],1,1,()=>{H[X]=null}),Et(),k=H[b],k?k.p(q,P):(k=H[b]=U[b](q),k.c()),ge(k,1),k.m(e,y)),q[12]&&!q[14]?W||(W=gc(),W.c(),W.m(e,null)):W&&(W.d(1),W=null),q[15]?G?G.p(q,P):(G=_c(q),G.c(),G.m(T.parentNode,T)):G&&(G.d(1),G=null),q[18]?V?(V.p(q,P),P[0]&262144&&ge(V,1)):(V=kc(q),V.c(),ge(V,1),V.m(N.parentNode,N)):V&&(yt(),ke(V,1,1,()=>{V=null}),Et()),q[14]&&q[13]?F?F.p(q,P):(F=vc(q),F.c(),F.m(A.parentNode,A)):F&&(F.d(1),F=null),q[6]?L?(L.p(q,P),P[0]&64&&ge(L,1)):(L=yc(q),L.c(),ge(L,1),L.m(I.parentNode,I)):L&&(yt(),ke(L,1,1,()=>{L=null}),Et())},i(q){R||(ge(k),ge(V),ge(L),R=!0)},o(q){ke(k),ke(V),ke(L),R=!1},d(q){q&&(S(e),S(E),S(T),S(N),S(A),S(I)),z&&z.d(),H[b].d(),W&&W.d(),G&&G.d(q),V&&V.d(q),F&&F.d(q),L&&L.d(q),M=!1,Ce(D)}}}function tw(n,e,t){let{selectedNode:l=null}=e,{wailsCall:i=async()=>{}}=e;const s=pn();let o=!1,c=null,u=[],d=[],p=null,h="",m=!1,g="",b={items:[],mode:"copy"},k=[],y=[],E=!1,T=null,N=!1,A="",I="",R=!1,M="",D="",z="",U=!1,H="",B="",W=!1,G=v("common.delete"),V=null,F=null;function L($){t(4,u=[]),t(3,c=null),t(11,k=[]),y=[],t(6,p=null),t(7,h=""),P($)}function q(){Be()}function P($){J($)}function X($){const _e=d.find(tt=>tt.id===$);_e&&he(_e)}function Y($){t(11,k=[$])}async function J($){t(2,o=!0);try{let _e=await i("ListItems",$)||[];_e.sort((tt,ht)=>tt.type!==ht.type?tt.type==="folder"?-1:1:(tt.name||"").localeCompare(ht.name||"")),t(5,d=_e)}catch{t(5,d=[])}t(2,o=!1)}async function ee($){if(l){try{const _e=await i("GetNodeDetail",$);_e&&t(4,u=[...u,{id:$,name:_e.title}])}catch{t(4,u=[...u,{id:$,name:"..."}])}t(3,c=$),await J($)}}function ne(){if(u.length<2)t(4,u=[]),t(3,c=null),l&&J(l.id);else{const $=u[u.length-2];t(4,u=u.slice(0,-1)),t(3,c=$.id),J($.id)}}function le($){const _e=u[$];t(4,u=u.slice(0,$+1)),t(3,c=_e.id),J(_e.id)}async function he($){if($&&$.fileId&&Os($))try{const _e=await i("CheckFileAction",$.fileId);if(_e.action==="note"){s("openNote",{id:_e.noteId,title:_e.noteTitle});return}if(_e.action==="external"){await i("OpenFile",$.fileId);return}}catch(_e){console.warn("CheckFileAction failed, falling back to preview:",_e)}t(6,p=$),t(7,h=""),t(9,g=""),t(8,m=!0);try{Og($)?t(7,h=await i("GetFileBase64",$.fileId)||""):qg($)&&t(7,h=await i("ReadFileText",$.fileId)||"")}catch(_e){t(9,g=String(_e))}t(8,m=!1)}function se(){t(6,p=null),t(7,h=""),t(9,g="")}async function Be(){const $=await i("PickFile");if(!$)return;const _e=c||l.id;await ft(_e,$)}async function Ke(){const $=await i("PickDirectory");if(!$)return;const _e=c||l.id;await ft(_e,$)}async function Me(){const $=prompt(v("file.namePrompt"));if(!(!$||!$.trim()))try{const _e=c||l.id;await i("CreateEmptyFile",_e,$.trim()),await J(_e),s("refreshParent",{nodeId:_e})}catch(_e){s("error",{message:String(_e)})}}async function te($){try{await i("DuplicateNode",$);const _e=c||l.id;await J(_e),s("refreshParent",{nodeId:_e})}catch(_e){s("error",{message:String(_e)})}}function re($){const _e=d.find(tt=>tt.id===$);_e&&Ie(_e.id,_e.name)}function Ae($){t(10,b={items:[$],mode:"cut"})}function Fe($){t(10,b={items:[$],mode:"copy"})}async function we(){if(b.items.length===0)return;const $=c||l.id;try{if(b.mode==="copy")for(const _e of b.items)await i("DuplicateNode",_e);else for(const _e of b.items)await i("MoveNode",_e,$);t(10,b={items:[],mode:"copy"}),await J($)}catch(_e){s("error",{message:String(_e)})}}function je($){k.includes($)?t(11,k=k.filter(_e=>_e!==$)):t(11,k=[...k,$])}function Qe($){t(11,k=[$])}function Ne(){t(11,k=d.map($=>$.id))}function Ve($){if(d.length===0)return;const _e=k.length>0?k[k.length-1]:d[0].id,tt=d.findIndex(Gt=>Gt.id===_e),ht=d.findIndex(Gt=>Gt.id===$);if(tt===-1||ht===-1)return;const In=Math.min(tt,ht),Mt=Math.max(tt,ht),nn=d.slice(In,Mt+1).map(Gt=>Gt.id),Yt=new Set(k);nn.forEach(Gt=>Yt.add(Gt)),t(11,k=[...Yt])}function Ue(){t(11,k=[])}function Se($){return $.length>0?$:d.map(_e=>_e.id)}async function He(){const $=Se(k),_e=d.find(ht=>ht.id===$[0]);let tt;$.length===1&&(_e==null?void 0:_e.type)==="folder"?tt=v("delete.folder"):$.length===1?tt=v("delete.file"):tt=v("delete.files",{count:$.length}),dt({title:v("delete.confirmTitle"),message:v("delete.confirmMessage")+" "+tt+"?",confirmText:v("common.delete"),danger:!0,onConfirm:async()=>{for(const In of $)try{await i("DeleteFileOrFolder",In)}catch(Mt){s("error",{message:String(Mt)})}t(11,k=[]);const ht=c||l.id;await J(ht)}})}function Oe(){const $=Se(k);t(10,b={items:$,mode:"cut"}),t(11,k=[])}function Ge(){const $=Se(k);t(10,b={items:$,mode:"copy"}),t(11,k=[])}function qe($,_e){$.stopPropagation();const tt=k.includes(_e)?k:[_e];y=tt,$.dataTransfer.effectAllowed="move",$.dataTransfer.setData("text/plain",tt.join(","))}function ue($,_e){const tt=d.find(ht=>ht.id===_e);tt&&tt.type==="folder"&&($.preventDefault(),$.stopPropagation(),$.dataTransfer.dropEffect="move")}async function be($,_e){if($.preventDefault(),$.stopPropagation(),y.length!==0){for(const tt of y)try{await i("MoveNode",tt,_e)}catch(ht){s("error",{message:String(ht)})}y=[],t(11,k=[]),await J(c||l.id)}}function x(){if(k.length===1){const $=d.find(_e=>_e.id===k[0]);$&&($.type==="folder"?ee($.id):he($))}}function ye(){if(k.length===1){const $=d.find(_e=>_e.id===k[0]);$&&$.fileId&&i("OpenFile",$.fileId)}}function me(){if(k.length===1){const $=d.find(_e=>_e.id===k[0]);$&&Ie($.id,$.name)}}function Ie($,_e){M=$,t(16,D=_e),t(17,z=""),t(15,R=!0)}async function it(){const $=D.trim();if(!$){t(17,z=v("rename.emptyError"));return}try{await i("ValidateName",$)}catch{t(17,z=v("rename.invalidError"));return}t(15,R=!1);const _e=M;M="";try{await i("RenameNode",_e,$),l&&l.id===_e&&t(0,l={...l,title:$}),s("refreshParent",{nodeId:c||l.id}),c&&await J(c)}catch(tt){s("error",{message:String(tt)})}}function st(){t(15,R=!1),M="",t(16,D=""),t(17,z="")}function Ye($){$.key==="Enter"?it():t(17,z="")}function dt($){t(19,H=$.title||v("common.confirm")),t(20,B=$.message||""),t(21,W=$.danger!==void 0?$.danger:!0),t(22,G=$.confirmText||v("common.delete")),V=$.onConfirm||null,F=$.onCancel||null,t(18,U=!0)}function Ze(){t(18,U=!1),V=null,F=null}function pe(){V&&V(),Ze()}function Pe(){F&&F(),Ze()}async function ft($,_e){t(12,E=!0);try{const tt=await i("PreviewImport",_e);t(13,T=tt),A=_e,I=$,t(14,N=!0)}catch(tt){s("error",{message:String(tt)})}t(12,E=!1)}async function mt($){try{const _e=I||l.id;$==="copy"?await i("AddPathCopy",_e,A):await i("AddPathLink",_e,A),t(14,N=!1),t(13,T=null),t(4,u=[]),t(3,c=null),await J(_e),s("refreshParent",{nodeId:_e})}catch(_e){s("error",{message:String(_e)})}}function At(){t(14,N=!1),t(13,T=null)}async function xt({id:$,type:_e}){const tt=v(_e==="folder"?"delete.folder":"delete.file");dt({title:v("delete.confirmTitle"),message:v("delete.confirmMessage")+" "+tt+"?",confirmText:v("common.delete"),danger:!0,onConfirm:async()=>{try{await i("DeleteFileOrFolder",$);const ht=c||l.id;await J(ht)}catch(ht){s("error",{message:String(ht)})}}})}function gt($){if($.ctrlKey||$.metaKey)$.key==="c"||$.key==="C"?($.preventDefault(),Ge()):$.key==="x"||$.key==="X"?($.preventDefault(),Oe()):$.key==="v"||$.key==="V"?($.preventDefault(),we()):$.key==="a"||$.key==="A"?($.preventDefault(),Ne()):$.key==="o"||$.key==="O"?($.preventDefault(),ye()):$.key==="Enter"&&($.preventDefault(),x());else if($.key==="Enter")$.preventDefault(),x();else if($.key==="Delete"){if(p){$.preventDefault(),se();return}if(k.length>0){$.preventDefault(),He();return}}else if($.key==="Escape"){if(p){se();return}if(k.length>0){Ue();return}}else $.key==="F2"&&($.preventDefault(),me())}function jt(){t(4,u=[]),t(3,c=null),t(5,d=[]),t(11,k=[]),y=[],t(6,p=null),t(7,h=""),t(9,g=""),t(10,b={items:[],mode:"copy"}),t(12,E=!1),t(13,T=null),t(14,N=!1),t(15,R=!1),t(18,U=!1)}const It=$=>{const _e=$.detail;_e===0?(t(4,u=[]),t(3,c=null),l&&J(l.id)):le(_e-1)},Ut=$=>ee($.detail),cn=$=>he($.detail),un=$=>i("OpenFile",$.detail),Ht=$=>i("OpenFolder",$.detail),Nn=$=>xt($.detail),Ct=$=>re($.detail.id),Lt=$=>te($.detail),_t=$=>Ae($.detail),_l=$=>Fe($.detail),bn=$=>Qe($.detail),bl=$=>je($.detail),en=$=>Ve($.detail);function bt(){D=this.value,t(16,D)}const Dt=$=>$.key==="Escape"&&st(),tn=()=>mt("copy"),fn=()=>mt("link"),Wt=$=>$.key==="Escape"&&At(),$t=$=>i("OpenFile",$.detail);return n.$$set=$=>{"selectedNode"in $&&t(0,l=$.selectedNode),"wailsCall"in $&&t(1,i=$.wailsCall)},[l,i,o,c,u,d,p,h,m,g,b,k,E,T,N,R,D,z,U,H,B,W,G,J,ee,ne,le,he,se,Be,Ke,Me,te,re,Ae,Fe,we,je,Qe,Ve,qe,ue,be,it,st,Ye,pe,Pe,mt,At,xt,L,q,P,X,Y,gt,jt,It,Ut,cn,un,Ht,Nn,Ct,Lt,_t,_l,bn,bl,en,bt,Dt,tn,fn,Wt,$t]}class nw extends ut{constructor(e){super(),ct(this,e,tw,ew,at,{selectedNode:0,wailsCall:1,resetToNode:51,addFile:52,loadFolder:53,openFileById:54,focusItem:55,handleFilesKeydown:56,resetState:57},null,[-1,-1,-1,-1])}get resetToNode(){return this.$$.ctx[51]}get addFile(){return this.$$.ctx[52]}get loadFolder(){return this.$$.ctx[53]}get openFileById(){return this.$$.ctx[54]}get focusItem(){return this.$$.ctx[55]}get handleFilesKeydown(){return this.$$.ctx[56]}get resetState(){return this.$$.ctx[57]}}const{Boolean:Gd}=Rs;function Ec(n,e,t){const l=n.slice();return l[463]=e[t],l}function Tc(n,e,t){const l=n.slice();return l[466]=e[t],l}function Sc(n,e,t){const l=n.slice();return l[469]=e[t],l}function Cc(n,e,t){const l=n.slice();return l[469]=e[t],l}function Ac(n,e,t){const l=n.slice();return l[486]=e[t],l}function Nc(n,e,t){const l=n.slice();return l[513]=e[t],l}function Ic(n,e,t){const l=n.slice();return l[486]=e[t],l}function Mc(n,e,t){const l=n.slice();return l[513]=e[t],l}function Rc(n,e,t){const l=n.slice();return l[520]=e[t],l}function Lc(n,e,t){const l=n.slice();return l[520]=e[t],l}function Dc(n,e,t){const l=n.slice();return l[489]=e[t],l[509]=e,l[510]=t,l}function Oc(n,e,t){const l=n.slice();return l[486]=e[t],l}function qc(n,e,t){const l=n.slice();return l[506]=e[t],l}function Pc(n,e,t){const l=n.slice();return l[474]=e[t],l}function zc(n,e,t){const l=n.slice();return l[499]=e[t],l}function Bc(n,e,t){const l=n.slice();return l[474]=e[t],l}function Fc(n,e,t){const l=n.slice();return l[486]=e[t],l}function jc(n,e,t){const l=n.slice();return l[483]=e[t],l}function Uc(n,e,t){const l=n.slice();return l[486]=e[t],l}function Hc(n,e,t){const l=n.slice();return l[489]=e[t],l[490]=e,l[491]=t,l}function Wc(n,e,t){const l=n.slice();return l[486]=e[t],l}function Gc(n,e,t){const l=n.slice();return l[480]=e[t],l}function Kc(n,e,t){const l=n.slice();return l[477]=e[t],l}function Vc(n,e,t){const l=n.slice();return l[474]=e[t],l}function Zc(n,e,t){const l=n.slice();return l[496]=e[t],l}function Yc(n,e,t){const l=n.slice();return l[527]=e[t],l}function lw(n){let e,t,l,i,s,o,c,u,d,p,h,m,g,b,k,y,E,T,N,A,I,R,M,D,z,U,H,B,W,G,V,F,L,q,P,X,Y,J,ee,ne,le,he,se,Be,Ke,Me,te,re,Ae,Fe,we,je,Qe=n[97]&&Xc(n),Ne=Te(n[0]),Ve=[];for(let pe=0;pe0?0:1}I=He(n),R=Se[I]=Ue[I](n),z=new jb({props:{syncStatus:n[112],syncLoading:n[113],syncMessage:n[114],syncMessageKind:n[115],onSync:n[228],onOpenSettings:n[234]}}),q=new Ik({props:{title:n[119],subtitle:n[118],wailsCall:de,typeLabel:n[196],onOpenSearchResult:n[223],$$slots:{actions:[uw]},$$scope:{ctx:n}}});let Oe=n[34]&&tu(n);const Ge=[kw,bw,_w,gw,mw,hw,pw,dw,fw],qe=[];function ue(pe,Pe){return Pe[0]&2&&(Y=null),pe[37]?0:pe[2]?1:pe[1]==="inbox"?2:pe[1]==="trash"?3:pe[1]==="journal"?4:pe[1]==="today"?5:pe[1]==="activity"?6:(Y==null&&(Y=!!(pe[1]&&pe[1].startsWith("plugin:"))),Y?7:8)}J=ue(n,[-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1]),ee=qe[J]=Ge[J](n);let be=n[80]&&of(n),x=n[84].visible&&cf(n),ye=n[51]&&pf(n),me=n[85]&&hf(n),Ie=n[104]&&gf(n),it=n[107]&&bf(n),st=n[70]&&yf(n),Ye=n[99]&&Tf(n),dt=n[91]&&Sf(n),Ze=n[13]&&Cf(n);return{c(){e=f("div"),Qe&&Qe.c(),t=w(),l=f("aside"),i=f("div"),s=f("img"),c=w(),u=f("span"),u.textContent=`${v("nav.brand")}`,d=w(),p=f("nav"),h=f("div"),m=f("div"),m.textContent=`${v("nav.system")}`,g=w();for(let pe=0;pe',W=w(),G=f("span"),V=j(n[33]),F=w(),L=f("main"),xe(q.$$.fragment),P=w(),Oe&&Oe.c(),X=w(),ee.c(),ne=w(),be&&be.c(),le=w(),x&&x.c(),he=w(),ye&&ye.c(),se=w(),me&&me.c(),Be=w(),Ie&&Ie.c(),Ke=w(),it&&it.c(),Me=w(),st&&st.c(),te=w(),Ye&&Ye.c(),re=w(),dt&&dt.c(),Ae=w(),Ze&&Ze.c(),r(s,"class","logo svelte-1uu9qhk"),Ol(s.src,o="/assets/app-icons/icon_32x32.png")||r(s,"src",o),r(s,"width","20"),r(s,"height","20"),r(s,"alt",""),r(u,"class","brand-name svelte-1uu9qhk"),r(i,"class","sidebar-brand svelte-1uu9qhk"),r(m,"class","nav-label svelte-1uu9qhk"),r(h,"class","nav-group svelte-1uu9qhk"),r(E,"class","svelte-1uu9qhk"),r(N,"class","nav-add-btn svelte-1uu9qhk"),r(N,"title",v("common.create")),r(y,"class","nav-label-row svelte-1uu9qhk"),r(k,"class","nav-group svelte-1uu9qhk"),r(p,"class","sidebar-nav svelte-1uu9qhk"),r(B,"class","sidebar-settings-btn svelte-1uu9qhk"),r(B,"title",v("common.settings")),r(G,"class","version svelte-1uu9qhk"),r(H,"class","sidebar-footer-row svelte-1uu9qhk"),r(D,"class","sidebar-footer svelte-1uu9qhk"),r(l,"class","sidebar svelte-1uu9qhk"),r(L,"class","main svelte-1uu9qhk"),r(e,"class","app svelte-1uu9qhk")},m(pe,Pe){C(pe,e,Pe),Qe&&Qe.m(e,null),a(e,t),a(e,l),a(l,i),a(i,s),a(i,c),a(i,u),a(l,d),a(l,p),a(p,h),a(h,m),a(h,g);for(let ft=0;ft{Se[ft]=null}),Et(),R=Se[I],R?R.p(pe,Pe):(R=Se[I]=Ue[I](pe),R.c()),ge(R,1),R.m(k,null));const mt={};Pe[3]&524288&&(mt.syncStatus=pe[112]),Pe[3]&1048576&&(mt.syncLoading=pe[113]),Pe[3]&2097152&&(mt.syncMessage=pe[114]),Pe[3]&4194304&&(mt.syncMessageKind=pe[115]),z.$set(mt),(!Fe||Pe[1]&4)&&Q(V,pe[33]);const At={};Pe[3]&67108864&&(At.title=pe[119]),Pe[3]&33554432&&(At.subtitle=pe[118]),Pe[0]&2|Pe[2]&16480|Pe[17]&8&&(At.$$scope={dirty:Pe,ctx:pe}),q.$set(At),pe[34]?Oe?Oe.p(pe,Pe):(Oe=tu(pe),Oe.c(),Oe.m(L,X)):Oe&&(Oe.d(1),Oe=null);let xt=J;J=ue(pe,Pe),J===xt?qe[J].p(pe,Pe):(yt(),ke(qe[xt],1,1,()=>{qe[xt]=null}),Et(),ee=qe[J],ee?ee.p(pe,Pe):(ee=qe[J]=Ge[J](pe),ee.c()),ge(ee,1),ee.m(L,ne)),pe[80]?be?(be.p(pe,Pe),Pe[2]&262144&&ge(be,1)):(be=of(pe),be.c(),ge(be,1),be.m(L,le)):be&&(yt(),ke(be,1,1,()=>{be=null}),Et()),pe[84].visible?x?(x.p(pe,Pe),Pe[2]&4194304&&ge(x,1)):(x=cf(pe),x.c(),ge(x,1),x.m(L,he)):x&&(yt(),ke(x,1,1,()=>{x=null}),Et()),pe[51]?ye?ye.p(pe,Pe):(ye=pf(pe),ye.c(),ye.m(L,se)):ye&&(ye.d(1),ye=null),pe[85]?me?me.p(pe,Pe):(me=hf(pe),me.c(),me.m(L,Be)):me&&(me.d(1),me=null),pe[104]?Ie?Ie.p(pe,Pe):(Ie=gf(pe),Ie.c(),Ie.m(L,Ke)):Ie&&(Ie.d(1),Ie=null),pe[107]?it?it.p(pe,Pe):(it=bf(pe),it.c(),it.m(L,Me)):it&&(it.d(1),it=null),pe[70]?st?st.p(pe,Pe):(st=yf(pe),st.c(),st.m(L,te)):st&&(st.d(1),st=null),pe[99]?Ye?(Ye.p(pe,Pe),Pe[3]&64&&ge(Ye,1)):(Ye=Tf(pe),Ye.c(),ge(Ye,1),Ye.m(L,re)):Ye&&(yt(),ke(Ye,1,1,()=>{Ye=null}),Et()),pe[91]?dt?(dt.p(pe,Pe),Pe[2]&536870912&&ge(dt,1)):(dt=Sf(pe),dt.c(),ge(dt,1),dt.m(L,Ae)):dt&&(yt(),ke(dt,1,1,()=>{dt=null}),Et()),pe[13]?Ze?(Ze.p(pe,Pe),Pe[0]&8192&&ge(Ze,1)):(Ze=Cf(pe),Ze.c(),ge(Ze,1),Ze.m(L,null)):Ze&&(yt(),ke(Ze,1,1,()=>{Ze=null}),Et())},i(pe){Fe||(ge(R),ge(z.$$.fragment,pe),ge(q.$$.fragment,pe),ge(ee),ge(be),ge(x),ge(Ye),ge(dt),ge(Ze),Fe=!0)},o(pe){ke(R),ke(z.$$.fragment,pe),ke(q.$$.fragment,pe),ke(ee),ke(be),ke(x),ke(Ye),ke(dt),ke(Ze),Fe=!1},d(pe){pe&&S(e),Qe&&Qe.d(),et(Ve,pe),Se[I].d(),Je(z),Je(q),Oe&&Oe.d(),qe[J].d(),be&&be.d(),x&&x.d(),ye&&ye.d(),me&&me.d(),Ie&&Ie.d(),it&&it.d(),st&&st.d(),Ye&&Ye.d(),dt&&dt.d(),Ze&&Ze.d(),we=!1,Ce(je)}}}function iw(n){var l;let e,t;return e=new A_({props:{vaultPath:((l=n[10])==null?void 0:l.vaultPath)||"",onComplete:n[230]}}),{c(){xe(e.$$.fragment)},m(i,s){Xe(e,i,s),t=!0},p(i,s){var c;const o={};s[0]&1024&&(o.vaultPath=((c=i[10])==null?void 0:c.vaultPath)||""),e.$set(o)},i(i){t||(ge(e.$$.fragment,i),t=!0)},o(i){ke(e.$$.fragment,i),t=!1},d(i){Je(e,i)}}}function sw(n){let e,t;return e=new T_({props:{onComplete:n[229]}}),{c(){xe(e.$$.fragment)},m(l,i){Xe(e,l,i),t=!0},p:oe,i(l){t||(ge(e.$$.fragment,l),t=!0)},o(l){ke(e.$$.fragment,l),t=!1},d(l){Je(e,l)}}}function Xc(n){let e,t,l;return{c(){e=f("div"),t=f("div"),l=j(n[98]),r(t,"class","capture-drop-box svelte-1uu9qhk"),r(e,"class","capture-drop-overlay svelte-1uu9qhk")},m(i,s){C(i,e,s),a(e,t),a(t,l)},p(i,s){s[3]&32&&Q(l,i[98])},d(i){i&&S(e)}}}function Jc(n){let e,t;return{c(){e=f("span"),t=j(n[61]),r(e,"class","nav-badge svelte-1uu9qhk")},m(l,i){C(l,e,i),a(e,t)},p(l,i){i[1]&1073741824&&Q(t,l[61])},d(l){l&&S(e)}}}function Qc(n){let e,t;return{c(){e=f("span"),t=j(n[75]),r(e,"class","nav-badge svelte-1uu9qhk")},m(l,i){C(l,e,i),a(e,t)},p(l,i){i[2]&8192&&Q(t,l[75])},d(l){l&&S(e)}}}function xc(n){let e,t=n[527].label+"",l,i,s,o,c,u,d,p=n[527].id==="journal"&&n[61]>0&&Jc(n),h=n[527].id==="trash"&&n[75]>0&&Qc(n);function m(){return n[233](n[527])}return{c(){e=f("button"),l=j(t),i=w(),p&&p.c(),s=w(),h&&h.c(),o=w(),r(e,"class",c="nav-item "+(n[1]===n[527].id?"selected":"")+" svelte-1uu9qhk")},m(g,b){C(g,e,b),a(e,l),a(e,i),p&&p.m(e,null),a(e,s),h&&h.m(e,null),a(e,o),u||(d=O(e,"click",m),u=!0)},p(g,b){n=g,b[0]&1&&t!==(t=n[527].label+"")&&Q(l,t),n[527].id==="journal"&&n[61]>0?p?p.p(n,b):(p=Jc(n),p.c(),p.m(e,s)):p&&(p.d(1),p=null),n[527].id==="trash"&&n[75]>0?h?h.p(n,b):(h=Qc(n),h.c(),h.m(e,o)):h&&(h.d(1),h=null),b[0]&3&&c!==(c="nav-item "+(n[1]===n[527].id?"selected":"")+" svelte-1uu9qhk")&&r(e,"class",c)},d(g){g&&S(e),p&&p.d(),h&&h.d(),u=!1,d()}}}function ow(n){let e;return{c(){e=f("div"),e.textContent=`${v("nav.noNodes")}`,r(e,"class","nav-empty svelte-1uu9qhk")},m(t,l){C(t,e,l)},p:oe,i:oe,o:oe,d(t){t&&S(e)}}}function rw(n){var o;let e,t,l,i,s;return t=new Qf({props:{nodes:n[14],expanded:n[90],selectedNodeId:((o=n[2])==null?void 0:o.id)||"",onSelect:n[125],onToggle:n[138],onContextMenu:n[136],onDrop:n[139]}}),{c(){e=f("div"),xe(t.$$.fragment),r(e,"class","workspace-tree-area svelte-1uu9qhk"),r(e,"role","region"),r(e,"aria-label",v("nav.workspace")),ce(e,"drop-valid",n[95])},m(c,u){C(c,e,u),Xe(t,e,null),l=!0,i||(s=[O(e,"dragover",Fi(n[141])),O(e,"dragleave",n[142]),O(e,"drop",n[140])],i=!0)},p(c,u){var p;const d={};u[0]&16384&&(d.nodes=c[14]),u[2]&268435456&&(d.expanded=c[90]),u[0]&4&&(d.selectedNodeId=((p=c[2])==null?void 0:p.id)||""),t.$set(d),(!l||u[3]&4)&&ce(e,"drop-valid",c[95])},i(c){l||(ge(t.$$.fragment,c),l=!0)},o(c){ke(t.$$.fragment,c),l=!1},d(c){c&&S(e),Je(t),i=!1,Ce(s)}}}function aw(n){let e,t,l,i=Tt("emptyTrash",14)+"",s,o=v("trash.emptyTrash")+"",c,u,d,p,h,m=n[76].length>0&&$c(n);return{c(){m&&m.c(),e=w(),t=f("button"),l=new Mi(!1),s=w(),c=j(o),u=w(),d=f("button"),d.textContent=`${v("trash.openFolder")}`,l.a=s,r(t,"class","btn btn-sm btn-danger svelte-1uu9qhk"),r(d,"class","btn btn-sm svelte-1uu9qhk")},m(g,b){m&&m.m(g,b),C(g,e,b),C(g,t,b),l.m(i,t),a(t,s),a(t,c),C(g,u,b),C(g,d,b),p||(h=[O(t,"click",n[177]),O(d,"click",n[238])],p=!0)},p(g,b){g[76].length>0?m?m.p(g,b):(m=$c(g),m.c(),m.m(e.parentNode,e)):m&&(m.d(1),m=null)},d(g){g&&(S(e),S(t),S(u),S(d)),m&&m.d(g),p=!1,Ce(h)}}}function cw(n){let e,t=(n[67]?v("common.loading"):v("inbox.pasteClipboard"))+"",l,i,s,o,c,u=n[68]&&eu(n);return{c(){e=f("button"),l=j(t),i=w(),u&&u.c(),s=vt(),r(e,"class","btn btn-primary svelte-1uu9qhk"),e.disabled=n[67]},m(d,p){C(d,e,p),a(e,l),C(d,i,p),u&&u.m(d,p),C(d,s,p),o||(c=O(e,"click",n[198]),o=!0)},p(d,p){p[2]&32&&t!==(t=(d[67]?v("common.loading"):v("inbox.pasteClipboard"))+"")&&Q(l,t),p[2]&32&&(e.disabled=d[67]),d[68]?u?u.p(d,p):(u=eu(d),u.c(),u.m(s.parentNode,s)):u&&(u.d(1),u=null)},d(d){d&&(S(e),S(i),S(s)),u&&u.d(d),o=!1,c()}}}function $c(n){let e,t,l=Tt("restore",14)+"",i,s=v("trash.restore")+"",o,c,u=n[76].length+"",d,p,h,m,g,b=Tt("purge",14)+"",k,y=v("common.delete")+"",E,T,N=n[76].length+"",A,I,R,M;return{c(){e=f("button"),t=new Mi(!1),i=w(),o=j(s),c=j(" ("),d=j(u),p=j(")"),h=w(),m=f("button"),g=new Mi(!1),k=w(),E=j(y),T=j(" ("),A=j(N),I=j(")"),t.a=i,r(e,"class","btn btn-sm btn-primary svelte-1uu9qhk"),g.a=k,r(m,"class","btn btn-sm btn-danger svelte-1uu9qhk")},m(D,z){C(D,e,z),t.m(l,e),a(e,i),a(e,o),a(e,c),a(e,d),a(e,p),C(D,h,z),C(D,m,z),g.m(b,m),a(m,k),a(m,E),a(m,T),a(m,A),a(m,I),R||(M=[O(e,"click",n[236]),O(m,"click",n[237])],R=!0)},p(D,z){z[2]&16384&&u!==(u=D[76].length+"")&&Q(d,u),z[2]&16384&&N!==(N=D[76].length+"")&&Q(A,N)},d(D){D&&(S(e),S(h),S(m)),R=!1,Ce(M)}}}function eu(n){let e,t;return{c(){e=f("span"),t=j(n[68]),r(e,"class","inbox-capture-status svelte-1uu9qhk")},m(l,i){C(l,e,i),a(e,t)},p(l,i){i[2]&64&&Q(t,l[68])},d(l){l&&S(e)}}}function uw(n){let e;function t(s,o){if(s[1]==="inbox")return cw;if(s[1]==="trash")return aw}let l=t(n),i=l&&l(n);return{c(){e=f("div"),i&&i.c(),r(e,"slot","actions"),r(e,"class","header-actions svelte-1uu9qhk")},m(s,o){C(s,e,o),i&&i.m(e,null)},p(s,o){l===(l=t(s))&&i?i.p(s,o):(i&&i.d(1),i=l&&l(s),i&&(i.c(),i.m(e,null)))},d(s){s&&S(e),i&&i.d()}}}function tu(n){let e,t=n[120](n[34])+"",l,i,s,o,c;return{c(){e=f("div"),l=j(t),i=w(),s=f("button"),s.innerHTML='',r(s,"class","dismiss-btn svelte-1uu9qhk"),r(s,"aria-label","Dismiss"),r(e,"class","error-banner svelte-1uu9qhk"),r(e,"role","button"),r(e,"tabindex","0")},m(u,d){C(u,e,d),a(e,l),a(e,i),a(e,s),o||(c=[O(s,"click",We(n[239])),O(e,"click",n[240]),O(e,"keydown",function(){dl(Pn(n[241]))&&Pn(n[241]).apply(this,arguments)})],o=!0)},p(u,d){n=u,d[1]&8&&t!==(t=n[120](n[34])+"")&&Q(l,t)},d(u){u&&S(e),o=!1,Ce(c)}}}function fw(n){let e,t,l;function i(c,u){if(c[89])return yw;if(c[0].length>0)return ww;if(c[34])return vw}let s=i(n),o=s&&s(n);return{c(){e=f("div"),t=f("h2"),t.textContent=`${v("welcome.title")}`,l=w(),o&&o.c(),r(t,"class","svelte-1uu9qhk"),r(e,"class","welcome svelte-1uu9qhk")},m(c,u){C(c,e,u),a(e,t),a(e,l),o&&o.m(e,null)},p(c,u){s===(s=i(c))&&o?o.p(c,u):(o&&o.d(1),o=s&&s(c),o&&(o.c(),o.m(e,null)))},i:oe,o:oe,d(c){c&&S(e),o&&o.d()}}}function dw(n){let e,t;return e=new mk({props:{sectionId:n[1]}}),{c(){xe(e.$$.fragment)},m(l,i){Xe(e,l,i),t=!0},p(l,i){const s={};i[0]&2&&(s.sectionId=l[1]),e.$set(s)},i(l){t||(ge(e.$$.fragment,l),t=!0)},o(l){ke(e.$$.fragment,l),t=!1},d(l){Je(e,l)}}}function pw(n){let e;function t(s,o){return s[17].length===0?Tw:Ew}let l=t(n),i=l(n);return{c(){e=f("div"),i.c(),r(e,"class","activity-feed svelte-1uu9qhk")},m(s,o){C(s,e,o),i.m(e,null)},p(s,o){l===(l=t(s))&&i?i.p(s,o):(i.d(1),i=l(s),i&&(i.c(),i.m(e,null)))},i:oe,o:oe,d(s){s&&S(e),i.d()}}}function hw(n){let e,t,l,i;const s=[Cw,Sw],o=[];function c(u,d){return u[16]?0:1}return e=c(n),t=o[e]=s[e](n),{c(){t.c(),l=vt()},m(u,d){o[e].m(u,d),C(u,l,d),i=!0},p(u,d){let p=e;e=c(u),e===p?o[e].p(u,d):(yt(),ke(o[p],1,1,()=>{o[p]=null}),Et(),t=o[e],t?t.p(u,d):(t=o[e]=s[e](u),t.c()),ge(t,1),t.m(l.parentNode,l))},i(u){i||(ge(t),i=!0)},o(u){ke(t),i=!1},d(u){u&&S(l),o[e].d(u)}}}function mw(n){let e,t,l,i=v("suggest.title")+"",s,o,c,u,d,p,h,m=n[61]>0&&iu(n);function g(y,E){return y[28]==="suggestions"?Nw:Aw}let b=g(n),k=b(n);return{c(){e=f("div"),t=f("div"),l=f("button"),s=j(i),o=w(),m&&m.c(),c=w(),u=f("button"),u.textContent=`${v("journal.worklogTab")}`,d=w(),k.c(),r(l,"class","journal-tab svelte-1uu9qhk"),ce(l,"active",n[28]==="suggestions"),r(u,"class","journal-tab svelte-1uu9qhk"),ce(u,"active",n[28]==="worklog"),r(t,"class","journal-tabs svelte-1uu9qhk"),r(e,"class","journal-screen svelte-1uu9qhk")},m(y,E){C(y,e,E),a(e,t),a(t,l),a(l,s),a(l,o),m&&m.m(l,null),a(t,c),a(t,u),a(e,d),k.m(e,null),p||(h=[O(l,"click",n[313]),O(u,"click",n[314])],p=!0)},p(y,E){y[61]>0?m?m.p(y,E):(m=iu(y),m.c(),m.m(l,null)):m&&(m.d(1),m=null),E[0]&268435456&&ce(l,"active",y[28]==="suggestions"),E[0]&268435456&&ce(u,"active",y[28]==="worklog"),b===(b=g(y))&&k?k.p(y,E):(k.d(1),k=b(y),k&&(k.c(),k.m(e,null)))},i:oe,o:oe,d(y){y&&S(e),m&&m.d(),k.d(),p=!1,Ce(h)}}}function gw(n){let e,t,l,i,s,o;function c(p,h){return!p[7]||(p[7].nodes||[]).length===0?Hw:Uw}let u=c(n),d=u(n);return{c(){e=f("div"),t=f("div"),l=f("div"),i=f("p"),s=j(n[78]),o=w(),d.c(),r(i,"class","svelte-1uu9qhk"),r(l,"class","svelte-1uu9qhk"),r(t,"class","trash-header svelte-1uu9qhk"),r(e,"class","trash-screen svelte-1uu9qhk")},m(p,h){C(p,e,h),a(e,t),a(t,l),a(l,i),a(i,s),a(e,o),d.m(e,null)},p(p,h){h[2]&65536&&Q(s,p[78]),u===(u=c(p))&&d?d.p(p,h):(d.d(1),d=u(p),d&&(d.c(),d.m(e,null)))},i:oe,o:oe,d(p){p&&S(e),d.d()}}}function _w(n){let e,t,l,i,s,o,c,u,d=n[3].length>0&&Iu(n);function p(g,b){return g[3].length===0?Zw:g[117]?Vw:Kw}let h=p(n),m=h(n);return{c(){e=f("div"),t=f("div"),l=f("div"),i=f("p"),i.textContent=`${v("inbox.subtitle")}`,s=w(),d&&d.c(),o=w(),m.c(),r(i,"class","svelte-1uu9qhk"),r(l,"class","svelte-1uu9qhk"),r(t,"class","inbox-header svelte-1uu9qhk"),r(e,"class","inbox-screen svelte-1uu9qhk"),r(e,"role","region"),r(e,"aria-label",v("nav.inbox")),ce(e,"drop-valid",n[96])},m(g,b){C(g,e,b),a(e,t),a(t,l),a(l,i),a(e,s),d&&d.m(e,null),a(e,o),m.m(e,null),c||(u=[O(e,"dragover",n[199]),O(e,"dragleave",n[200]),O(e,"drop",n[201])],c=!0)},p(g,b){g[3].length>0?d?d.p(g,b):(d=Iu(g),d.c(),d.m(e,o)):d&&(d.d(1),d=null),h===(h=p(g))&&m?m.p(g,b):(m.d(1),m=h(g),m&&(m.c(),m.m(e,null))),b[3]&8&&ce(e,"drop-valid",g[96])},i:oe,o:oe,d(g){g&&S(e),d&&d.d(),m.d(),c=!1,Ce(u)}}}function bw(n){let e,t,l,i,s,o,c=Te(n[122]),u=[];for(let m=0;m{p[b]=null}),Et()),~i?(s=p[i],s?s.p(m,g):(s=p[i]=d[i](m),s.c()),ge(s,1),s.m(l,null)):s=null)},i(m){o||(ge(s),o=!0)},o(m){ke(s),o=!1},d(m){m&&(S(e),S(t),S(l)),et(u,m),~i&&p[i].d()}}}function kw(n){let e,t,l,i,s,o,c,u,d,p,h,m;function g(E,T){return E[47]===E[37].id?Iy:Ny}let b=g(n),k=b(n),y={content:n[37].content,viewMode:n[40],placeholder:v("note.placeholder")};return d=new M2({props:y}),n[245](d),d.$on("content-change",n[161]),d.$on("mode-change",n[162]),d.$on("save",n[153]),d.$on("insert-link",n[163]),d.$on("insert-internal-link",n[164]),d.$on("verstak-link",n[160]),{c(){e=f("div"),t=f("div"),k.c(),l=w(),i=f("div"),s=f("button"),s.textContent=`${v("common.save")}`,o=w(),c=f("button"),c.textContent=`${v("common.close")}`,u=w(),xe(d.$$.fragment),r(s,"class","btn btn-primary svelte-1uu9qhk"),r(c,"class","btn svelte-1uu9qhk"),r(i,"class","note-editor-actions svelte-1uu9qhk"),r(t,"class","note-editor-header svelte-1uu9qhk"),r(e,"class","note-editor-wrapper svelte-1uu9qhk")},m(E,T){C(E,e,T),a(e,t),k.m(t,null),a(t,l),a(t,i),a(i,s),a(i,o),a(i,c),a(e,u),Xe(d,e,null),p=!0,h||(m=[O(s,"click",n[153]),O(c,"click",n[152])],h=!0)},p(E,T){b===(b=g(E))&&k?k.p(E,T):(k.d(1),k=b(E),k&&(k.c(),k.m(t,l)));const N={};T[1]&64&&(N.content=E[37].content),T[1]&512&&(N.viewMode=E[40]),d.$set(N)},i(E){p||(ge(d.$$.fragment,E),p=!0)},o(E){ke(d.$$.fragment,E),p=!1},d(E){E&&S(e),k.d(),n[245](null),Je(d),h=!1,Ce(m)}}}function vw(n){let e,t=v("common.error")+"",l,i,s;return{c(){e=f("p"),l=j(t),i=w(),s=j(n[34]),r(e,"class","error-text svelte-1uu9qhk")},m(o,c){C(o,e,c),a(e,l),a(e,i),a(e,s)},p(o,c){c[1]&8&&Q(s,o[34])},d(o){o&&S(e)}}}function ww(n){let e,t,l;return{c(){e=f("p"),e.textContent=`${v("welcome.selectSection")}`,t=w(),l=f("p"),l.textContent=`${v("welcome.createCase")}`,r(e,"class","svelte-1uu9qhk"),r(l,"class","hint svelte-1uu9qhk")},m(i,s){C(i,e,s),C(i,t,s),C(i,l,s)},p:oe,d(i){i&&(S(e),S(t),S(l))}}}function yw(n){let e;return{c(){e=f("p"),e.textContent=`${v("common.loading")}`,r(e,"class","svelte-1uu9qhk")},m(t,l){C(t,e,l)},p:oe,d(t){t&&S(e)}}}function Ew(n){let e,t=Te(n[17]),l=[];for(let i=0;in[334].call(Y)),r(q,"title",v("journal.billableHint")),r(q,"class","svelte-1uu9qhk"),r(se,"class","label-text svelte-1uu9qhk"),Me.__value="all",Re(Me,Me.__value),r(Me,"class","svelte-1uu9qhk"),te.__value="no",Re(te,te.__value),r(te,"class","svelte-1uu9qhk"),re.__value="yes",Re(re,re.__value),r(re,"class","svelte-1uu9qhk"),r(Ke,"class","svelte-1uu9qhk"),n[25]===void 0&&pl(()=>n[335].call(Ke)),r(he,"title",v("journal.approxHint")),r(he,"class","svelte-1uu9qhk"),r(Fe,"class","btn btn-sm svelte-1uu9qhk"),r(je,"class","btn btn-sm svelte-1uu9qhk"),r(E,"class","journal-filters-row svelte-1uu9qhk"),r(b,"class","journal-filter-section svelte-1uu9qhk"),r(t,"class","journal-header svelte-1uu9qhk")},m(me,Ie){Se&&Se.m(me,Ie),C(me,e,Ie),C(me,t,Ie),a(t,l),a(l,i),a(l,s),a(l,o),a(o,c),a(o,u),a(o,d),a(o,p),a(o,h),a(o,m),He&&He.m(o,null),a(t,g),a(t,b),a(b,k),a(b,y),a(b,E),a(E,T),a(T,N),a(T,A),a(T,I),Re(I,n[20]),a(E,R),a(E,M),a(M,D),a(M,z),a(M,U),Re(U,n[21]),a(E,H),a(E,B),a(B,W),a(B,G),a(B,V),qe.m(V,null),a(E,F),ue&&ue.m(E,null),a(E,L),a(E,q),a(q,P),a(q,X),a(q,Y),a(Y,J),a(Y,ee),a(Y,ne),Vn(Y,n[24],!0),a(E,le),a(E,he),a(he,se),a(he,Be),a(he,Ke),a(Ke,Me),a(Ke,te),a(Ke,re),Vn(Ke,n[25],!0),a(E,Ae),a(E,Fe),a(E,we),a(E,je),C(me,Qe,Ie),ye.m(me,Ie),C(me,Ne,Ie),Ve||(Ue=[O(c,"click",n[324]),O(d,"click",n[325]),O(h,"click",n[326]),O(I,"input",n[327]),O(U,"input",n[328]),O(Y,"change",n[334]),O(Ke,"change",n[335]),O(Fe,"click",n[186]),O(je,"click",n[193])],Ve=!0)},p(me,Ie){me[19]?Se?Se.p(me,Ie):(Se=su(me),Se.c(),Se.m(e.parentNode,e)):Se&&(Se.d(1),Se=null),me[27]?He?He.p(me,Ie):(He=uu(me),He.c(),He.m(o,null)):He&&(He.d(1),He=null),Ie[0]&1048576&&Re(I,me[20]),Ie[0]&2097152&&Re(U,me[21]),Ge===(Ge=Oe(me))&&qe?qe.p(me,Ie):(qe.d(1),qe=Ge(me),qe&&(qe.c(),qe.m(V,null))),me[23]?ue?ue.p(me,Ie):(ue=pu(me),ue.c(),ue.m(E,L)):ue&&(ue.d(1),ue=null),Ie[0]&16777216&&Vn(Y,me[24]),Ie[0]&33554432&&Vn(Ke,me[25]),x===(x=be(me))&&ye?ye.p(me,Ie):(ye.d(1),ye=x(me),ye&&(ye.c(),ye.m(Ne.parentNode,Ne)))},d(me){me&&(S(e),S(t),S(Qe),S(Ne)),Se&&Se.d(me),He&&He.d(),qe.d(),ue&&ue.d(),ye.d(me),Ve=!1,Ce(Ue)}}}function Nw(n){let e;function t(s,o){return s[60].length===0?jw:Fw}let l=t(n),i=l(n);return{c(){i.c(),e=vt()},m(s,o){i.m(s,o),C(s,e,o)},p(s,o){l===(l=t(s))&&i?i.p(s,o):(i.d(1),i=l(s),i&&(i.c(),i.m(e.parentNode,e)))},d(s){s&&S(e),i.d(s)}}}function su(n){let e,t,l=v("journal.total")+"",i,s,o=Math.floor(n[19].totalMinutes/60)+"",c,u,d=n[19].totalMinutes%60+"",p,h,m=n[19].totalEntries+"",g,b,k=v("worklog.min")+"",y,E,T,N,A=n[19].byDay&&n[19].byDay.length>0&&ou(n),I=n[19].byNode&&n[19].byNode.length>0&&au(n);return{c(){e=f("div"),t=f("div"),i=j(l),s=j(": "),c=j(o),u=j("ч "),p=j(d),h=j("м ("),g=j(m),b=w(),y=j(k),E=j(")"),T=w(),A&&A.c(),N=w(),I&&I.c(),r(t,"class","summary-total svelte-1uu9qhk"),r(e,"class","journal-summary svelte-1uu9qhk")},m(R,M){C(R,e,M),a(e,t),a(t,i),a(t,s),a(t,c),a(t,u),a(t,p),a(t,h),a(t,g),a(t,b),a(t,y),a(t,E),a(e,T),A&&A.m(e,null),a(e,N),I&&I.m(e,null)},p(R,M){M[0]&524288&&o!==(o=Math.floor(R[19].totalMinutes/60)+"")&&Q(c,o),M[0]&524288&&d!==(d=R[19].totalMinutes%60+"")&&Q(p,d),M[0]&524288&&m!==(m=R[19].totalEntries+"")&&Q(g,m),R[19].byDay&&R[19].byDay.length>0?A?A.p(R,M):(A=ou(R),A.c(),A.m(e,N)):A&&(A.d(1),A=null),R[19].byNode&&R[19].byNode.length>0?I?I.p(R,M):(I=au(R),I.c(),I.m(e,null)):I&&(I.d(1),I=null)},d(R){R&&S(e),A&&A.d(),I&&I.d()}}}function ou(n){let e,t,l,i=Te(n[19].byDay),s=[];for(let o=0;o0?zw:D[513].source==="suggestion"?Pw:D[513].source==="unknown"||D[513].source==="imported"?qw:D[513]._hasEvents?Ow:Dw}let I=A(n),R=I(n),M=n[513]._events&&bu(n);return{c(){e=f("tr"),t=f("td"),l=f("div"),i=f("div"),s=f("button"),s.textContent=`${v("worklog.editEntry")}`,o=w(),c=f("button"),c.textContent=`${v("worklog.deleteEntry")}`,u=w(),N&&N.c(),d=w(),p=f("div"),h=f("span"),h.textContent=`${v("worklog.source")}`,m=w(),R.c(),g=w(),M&&M.c(),b=w(),r(s,"class","btn btn-sm svelte-1uu9qhk"),r(c,"class","btn btn-sm btn-danger svelte-1uu9qhk"),r(i,"class","journal-detail-actions svelte-1uu9qhk"),r(h,"class","journal-detail-label svelte-1uu9qhk"),r(p,"class","journal-detail-section svelte-1uu9qhk"),r(l,"class","journal-detail-body svelte-1uu9qhk"),r(t,"colspan","8"),r(t,"class","svelte-1uu9qhk"),r(e,"class","journal-row-detail svelte-1uu9qhk")},m(D,z){C(D,e,z),a(e,t),a(t,l),a(l,i),a(i,s),a(i,o),a(i,c),a(l,u),N&&N.m(l,null),a(l,d),a(l,p),a(p,h),a(p,m),R.m(p,null),a(l,g),M&&M.m(l,null),a(e,b),k||(y=[O(s,"click",We(E)),O(c,"click",We(T))],k=!0)},p(D,z){n=D,n[513].details?N?N.p(n,z):(N=_u(n),N.c(),N.m(l,d)):N&&(N.d(1),N=null),I!==(I=A(n))&&(R.d(1),R=I(n),R&&(R.c(),R.m(p,null))),n[513]._events?M?M.p(n,z):(M=bu(n),M.c(),M.m(l,null)):M&&(M.d(1),M=null)},d(D){D&&S(e),N&&N.d(),R.d(),M&&M.d(),k=!1,Ce(y)}}}function _u(n){let e,t,l,i,s=n[513].details+"",o;return{c(){e=f("div"),t=f("span"),t.textContent=`${v("worklog.details")}`,l=w(),i=f("p"),o=j(s),r(t,"class","journal-detail-label svelte-1uu9qhk"),r(i,"class","svelte-1uu9qhk"),r(e,"class","journal-detail-section svelte-1uu9qhk")},m(c,u){C(c,e,u),a(e,t),a(e,l),a(e,i),a(i,o)},p(c,u){u[0]&262144&&s!==(s=c[513].details+"")&&Q(o,s)},d(c){c&&S(e)}}}function Dw(n){let e;return{c(){e=f("p"),e.textContent=`${v("worklog.sourceUnknown")}`,r(e,"class","svelte-1uu9qhk")},m(t,l){C(t,e,l)},d(t){t&&S(e)}}}function Ow(n){let e;return{c(){e=f("p"),e.textContent=`${v("worklog.sourceSuggestion")}`,r(e,"class","svelte-1uu9qhk")},m(t,l){C(t,e,l)},d(t){t&&S(e)}}}function qw(n){let e;return{c(){e=f("p"),e.textContent=`${v("worklog.sourceUnknown")}`,r(e,"class","svelte-1uu9qhk")},m(t,l){C(t,e,l)},d(t){t&&S(e)}}}function Pw(n){let e;return{c(){e=f("p"),e.textContent=`${v("worklog.sourceSuggestionNoEvents")}`,r(e,"class","svelte-1uu9qhk")},m(t,l){C(t,e,l)},d(t){t&&S(e)}}}function zw(n){let e;return{c(){e=f("p"),e.textContent=`${v("worklog.sourceSuggestion")}`,r(e,"class","svelte-1uu9qhk")},m(t,l){C(t,e,l)},d(t){t&&S(e)}}}function Bw(n){let e;return{c(){e=f("p"),e.textContent=`${v("worklog.sourceManual")}`,r(e,"class","svelte-1uu9qhk")},m(t,l){C(t,e,l)},d(t){t&&S(e)}}}function bu(n){let e,t,l,i=Te(n[513]._events),s=[];for(let o=0;o0&&wu(n);function ne(...te){return n[316](n[489],n[509],n[510],...te)}function le(){return n[317](n[489])}function he(){return n[318](n[489])}function se(){return n[319](n[489])}function Be(){return n[320](n[489],n[509],n[510])}function Ke(...te){return n[321](n[489],n[509],n[510],...te)}let Me=n[489]._expanded&&n[489].events&&n[489].events.length>0&&yu(n);return{c(){e=f("div"),t=f("div"),l=f("div"),i=f("button"),o=j(s),c=w(),u=f("span"),p=j(d),h=w(),m=f("span"),b=j(g),k=w(),E=j(y),ee&&ee.c(),T=w(),N=f("div"),A=f("span"),M=w(),D=f("input"),U=w(),H=f("span"),H.textContent=`${v("suggest.minutes")}`,B=w(),W=f("button"),W.textContent=`${v("suggest.edit")}`,G=w(),V=f("button"),V.textContent=`${v("suggest.apply")}`,F=w(),L=f("button"),L.textContent=`${v("common.delete")}`,q=w(),Me&&Me.c(),P=w(),r(i,"class","suggestion-node link-btn svelte-1uu9qhk"),r(u,"class","suggestion-summary svelte-1uu9qhk"),r(m,"class","suggestion-meta svelte-1uu9qhk"),r(l,"class","suggestion-info svelte-1uu9qhk"),r(A,"class","suggestion-confidence-dot svelte-1uu9qhk"),r(A,"title",I=v("suggest.confidence."+n[489].confidence)),r(A,"aria-label",R=v("suggest.confidence."+n[489].confidence)),ce(A,"low",n[489].confidence==="low"),ce(A,"medium",n[489].confidence==="medium"),ce(A,"high",n[489].confidence==="high"),r(D,"type","number"),r(D,"class","suggestion-min-input svelte-1uu9qhk"),D.value=z=n[489].suggestedMin,r(D,"min","1"),r(D,"max","480"),r(H,"class","suggestion-min-label svelte-1uu9qhk"),r(W,"class","btn btn-sm svelte-1uu9qhk"),r(V,"class","btn btn-sm btn-primary svelte-1uu9qhk"),r(L,"class","btn btn-sm btn-danger svelte-1uu9qhk"),r(N,"class","suggestion-actions svelte-1uu9qhk"),r(t,"class","suggestion-main svelte-1uu9qhk"),r(t,"role","button"),r(t,"tabindex","0"),r(e,"class","suggestion-card svelte-1uu9qhk"),ce(e,"expanded",n[489]._expanded)},m(te,re){C(te,e,re),a(e,t),a(t,l),a(l,i),a(i,o),a(l,c),a(l,u),a(u,p),a(l,h),a(l,m),a(m,b),a(m,k),a(m,E),ee&&ee.m(m,null),a(t,T),a(t,N),a(N,A),a(N,M),a(N,D),a(N,U),a(N,H),a(N,B),a(N,W),a(N,G),a(N,V),a(N,F),a(N,L),a(e,q),Me&&Me.m(e,null),a(e,P),X||(Y=[O(i,"click",We(J)),O(D,"change",We(ne)),O(W,"click",We(le)),O(V,"click",We(he)),O(L,"click",We(se)),O(t,"click",Be),O(t,"keydown",Ke)],X=!0)},p(te,re){n=te,re[1]&536870912&&s!==(s=n[489].nodeTitle+"")&&Q(o,s),re[1]&536870912&&d!==(d=n[489].summary+"")&&Q(p,d),re[1]&536870912&&g!==(g=n[489].suggestedMin+"")&&Q(b,g),n[489].events&&n[489].events.length>0?ee?ee.p(n,re):(ee=wu(n),ee.c(),ee.m(m,null)):ee&&(ee.d(1),ee=null),re[1]&536870912&&I!==(I=v("suggest.confidence."+n[489].confidence))&&r(A,"title",I),re[1]&536870912&&R!==(R=v("suggest.confidence."+n[489].confidence))&&r(A,"aria-label",R),re[1]&536870912&&ce(A,"low",n[489].confidence==="low"),re[1]&536870912&&ce(A,"medium",n[489].confidence==="medium"),re[1]&536870912&&ce(A,"high",n[489].confidence==="high"),re[1]&536870912&&z!==(z=n[489].suggestedMin)&&D.value!==z&&(D.value=z),n[489]._expanded&&n[489].events&&n[489].events.length>0?Me?Me.p(n,re):(Me=yu(n),Me.c(),Me.m(e,P)):Me&&(Me.d(1),Me=null),re[1]&536870912&&ce(e,"expanded",n[489]._expanded)},d(te){te&&S(e),ee&&ee.d(),Me&&Me.d(),X=!1,Ce(Y)}}}function Uw(n){let e,t,l,i,s,o,c,u,d,p,h,m=n[8]&&Au(n);function g(y,E){return y[77].length===0?Gw:Ww}let b=g(n),k=b(n);return{c(){e=f("div"),t=f("section"),l=f("div"),m&&m.c(),i=w(),s=f("div"),o=f("h3"),c=j(n[79]),u=w(),d=f("p"),p=j(n[78]),h=w(),k.c(),r(o,"class","svelte-1uu9qhk"),r(d,"class","svelte-1uu9qhk"),r(s,"class","svelte-1uu9qhk"),r(l,"class","trash-section-head svelte-1uu9qhk"),r(t,"class","trash-section svelte-1uu9qhk"),r(e,"class","trash-browser svelte-1uu9qhk")},m(y,E){C(y,e,E),a(e,t),a(t,l),m&&m.m(l,null),a(l,i),a(l,s),a(s,o),a(o,c),a(s,u),a(s,d),a(d,p),a(t,h),k.m(t,null)},p(y,E){y[8]?m?m.p(y,E):(m=Au(y),m.c(),m.m(l,i)):m&&(m.d(1),m=null),E[2]&131072&&Q(c,y[79]),E[2]&65536&&Q(p,y[78]),b===(b=g(y))&&k?k.p(y,E):(k.d(1),k=b(y),k&&(k.c(),k.m(t,null)))},d(y){y&&S(e),m&&m.d(),k.d()}}}function Hw(n){let e,t;return{c(){e=f("div"),t=f("p"),t.textContent=`${v("trash.empty")}`,r(t,"class","svelte-1uu9qhk"),r(e,"class","empty-state svelte-1uu9qhk")},m(l,i){C(l,e,i),a(e,t)},p:oe,d(l){l&&S(e)}}}function Au(n){let e,t=Tt("back")+"",l,i;return{c(){e=f("button"),r(e,"class","inbox-icon-btn svelte-1uu9qhk"),r(e,"title",v("common.backLabel")),r(e,"aria-label",v("common.backLabel"))},m(s,o){C(s,e,o),e.innerHTML=t,l||(i=O(e,"click",n[171]),l=!0)},p:oe,d(s){s&&S(e),l=!1,i()}}}function Ww(n){let e,t=Te(n[77]),l=[];for(let i=0;i0,o,c,u,d=s&&zu(n);function p(g,b){return g[50].length===0?hy:py}let h=p(n),m=h(n);return{c(){e=f("div"),t=f("div"),l=f("button"),l.textContent=`+ ${v("worklog.addEntry")}`,i=w(),d&&d.c(),o=w(),m.c(),r(l,"class","btn btn-primary btn-sm svelte-1uu9qhk"),r(t,"class","worklog-toolbar svelte-1uu9qhk"),r(e,"class","worklog-tab svelte-1uu9qhk")},m(g,b){C(g,e,b),a(e,t),a(t,l),a(e,i),d&&d.m(e,null),a(e,o),m.m(e,null),c||(u=O(l,"click",n[271]),c=!0)},p(g,b){b[0]&4|b[1]&536870912&&(s=g[2]&&g[60].filter(g[232]).length>0),s?d?d.p(g,b):(d=zu(g),d.c(),d.m(e,o)):d&&(d.d(1),d=null),h===(h=p(g))&&m?m.p(g,b):(m.d(1),m=h(g),m&&(m.c(),m.m(e,null)))},i:oe,o:oe,d(g){g&&S(e),d&&d.d(),m.d(),c=!1,u()}}}function sy(n){let e,t,l,i,s,o;function c(p,h){return p[49].length===0?wy:vy}let u=c(n),d=u(n);return{c(){e=f("div"),t=f("div"),l=f("button"),l.textContent=`${v("action.addAction")}`,i=w(),d.c(),r(l,"class","btn btn-primary svelte-1uu9qhk"),r(t,"class","tab-toolbar svelte-1uu9qhk"),r(e,"class","actions-tab svelte-1uu9qhk")},m(p,h){C(p,e,h),a(e,t),a(t,l),a(e,i),d.m(e,null),s||(o=O(l,"click",n[215]),s=!0)},p(p,h){u===(u=c(p))&&d?d.p(p,h):(d.d(1),d=u(p),d&&(d.c(),d.m(e,null)))},i:oe,o:oe,d(p){p&&S(e),d.d(),s=!1,o()}}}function oy(n){let e,t;function l(c,u){return c[69].length===0?Ey:yy}let i=l(n),s=i(n),o=n[74]&&nf(n);return{c(){e=f("div"),s.c(),t=w(),o&&o.c(),r(e,"class","links-tab svelte-1uu9qhk")},m(c,u){C(c,e,u),s.m(e,null),a(e,t),o&&o.m(e,null)},p(c,u){i===(i=l(c))&&s?s.p(c,u):(s.d(1),s=i(c),s&&(s.c(),s.m(e,t))),c[74]?o?o.p(c,u):(o=nf(c),o.c(),o.m(e,null)):o&&(o.d(1),o=null)},i:oe,o:oe,d(c){c&&S(e),s.d(),o&&o.d()}}}function ry(n){let e;function t(s,o){return s[66].length===0?Sy:Ty}let l=t(n),i=l(n);return{c(){e=f("div"),i.c(),r(e,"class","inbox-tab svelte-1uu9qhk")},m(s,o){C(s,e,o),i.m(e,null)},p(s,o){l===(l=t(s))&&i?i.p(s,o):(i.d(1),i=l(s),i&&(i.c(),i.m(e,null)))},i:oe,o:oe,d(s){s&&S(e),i.d()}}}function ay(n){let e,t,l={selectedNode:n[2],wailsCall:de};return e=new nw({props:l}),n[254](e),e.$on("openNote",n[255]),e.$on("refreshParent",n[256]),e.$on("error",n[257]),{c(){xe(e.$$.fragment)},m(i,s){Xe(e,i,s),t=!0},p(i,s){const o={};s[0]&4&&(o.selectedNode=i[2]),e.$set(o)},i(i){t||(ge(e.$$.fragment,i),t=!0)},o(i){ke(e.$$.fragment,i),t=!1},d(i){n[254](null),Je(e,i)}}}function cy(n){let e,t;return e=new G2({props:{notes:n[36],formatDate:qn}}),e.$on("submitCreateNote",n[250]),e.$on("openNote",n[251]),e.$on("startRename",n[252]),e.$on("deleteNote",n[253]),{c(){xe(e.$$.fragment)},m(l,i){Xe(e,l,i),t=!0},p(l,i){const s={};i[1]&32&&(s.notes=l[36]),e.$set(s)},i(l){t||(ge(e.$$.fragment,l),t=!0)},o(l){ke(e.$$.fragment,l),t=!1},d(l){Je(e,l)}}}function uy(n){let e,t;return e=new Z2({props:{selectedNode:n[2],notes:n[36],worklog:n[50],formatDate:qn,nodeKindLabel:n[195]}}),e.$on("createNote",n[247]),e.$on("addFile",n[248]),e.$on("createAction",n[215]),e.$on("openNote",n[249]),{c(){xe(e.$$.fragment)},m(l,i){Xe(e,l,i),t=!0},p(l,i){const s={};i[0]&4&&(s.selectedNode=l[2]),i[1]&32&&(s.notes=l[36]),i[1]&524288&&(s.worklog=l[50]),e.$set(s)},i(l){t||(ge(e.$$.fragment,l),t=!0)},o(l){ke(e.$$.fragment,l),t=!1},d(l){Je(e,l)}}}function fy(n){let e,t=Te(n[32]),l=[];for(let i=0;i0&&Bu(n);function G(){return n[273](n[489])}function V(){return n[274](n[489])}function F(){return n[275](n[489])}function L(){return n[276](n[489],n[490],n[491])}function q(...X){return n[277](n[489],n[490],n[491],...X)}let P=n[489]._expanded&&n[489].events&&n[489].events.length>0&&Fu(n);return{c(){e=f("div"),t=f("div"),l=f("div"),i=f("span"),o=j(s),c=w(),u=f("span"),p=j(d),h=w(),g=j(m),W&&W.c(),b=w(),k=f("div"),y=f("span"),N=w(),A=f("button"),A.textContent=`${v("suggest.edit")}`,I=w(),R=f("button"),R.textContent=`${v("worklog.apply")}`,M=w(),D=f("button"),D.textContent=`${v("common.delete")}`,z=w(),P&&P.c(),U=w(),r(i,"class","suggestion-summary svelte-1uu9qhk"),r(u,"class","suggestion-meta svelte-1uu9qhk"),r(l,"class","suggestion-info svelte-1uu9qhk"),r(y,"class","suggestion-confidence-dot svelte-1uu9qhk"),r(y,"title",E=v("suggest.confidence."+n[489].confidence)),r(y,"aria-label",T=v("suggest.confidence."+n[489].confidence)),ce(y,"low",n[489].confidence==="low"),ce(y,"medium",n[489].confidence==="medium"),ce(y,"high",n[489].confidence==="high"),r(A,"class","btn btn-sm svelte-1uu9qhk"),r(R,"class","btn btn-sm btn-primary svelte-1uu9qhk"),r(D,"class","btn btn-sm btn-danger svelte-1uu9qhk"),r(k,"class","suggestion-actions svelte-1uu9qhk"),r(t,"class","suggestion-main svelte-1uu9qhk"),r(t,"role","button"),r(t,"tabindex","0"),r(e,"class","suggestion-card svelte-1uu9qhk"),ce(e,"expanded",n[489]._expanded)},m(X,Y){C(X,e,Y),a(e,t),a(t,l),a(l,i),a(i,o),a(l,c),a(l,u),a(u,p),a(u,h),a(u,g),W&&W.m(u,null),a(t,b),a(t,k),a(k,y),a(k,N),a(k,A),a(k,I),a(k,R),a(k,M),a(k,D),a(e,z),P&&P.m(e,null),a(e,U),H||(B=[O(A,"click",We(G)),O(R,"click",We(V)),O(D,"click",We(F)),O(t,"click",L),O(t,"keydown",q)],H=!0)},p(X,Y){n=X,Y[0]&4|Y[1]&536870912&&s!==(s=n[489].summary+"")&&Q(o,s),Y[0]&4|Y[1]&536870912&&d!==(d=n[489].suggestedMin+"")&&Q(p,d),n[489].events&&n[489].events.length>0?W?W.p(n,Y):(W=Bu(n),W.c(),W.m(u,null)):W&&(W.d(1),W=null),Y[0]&4|Y[1]&536870912&&E!==(E=v("suggest.confidence."+n[489].confidence))&&r(y,"title",E),Y[0]&4|Y[1]&536870912&&T!==(T=v("suggest.confidence."+n[489].confidence))&&r(y,"aria-label",T),Y[0]&4|Y[1]&536870912&&ce(y,"low",n[489].confidence==="low"),Y[0]&4|Y[1]&536870912&&ce(y,"medium",n[489].confidence==="medium"),Y[0]&4|Y[1]&536870912&&ce(y,"high",n[489].confidence==="high"),n[489]._expanded&&n[489].events&&n[489].events.length>0?P?P.p(n,Y):(P=Fu(n),P.c(),P.m(e,U)):P&&(P.d(1),P=null),Y[0]&4|Y[1]&536870912&&ce(e,"expanded",n[489]._expanded)},d(X){X&&S(e),W&&W.d(),P&&P.d(),H=!1,Ce(B)}}}function py(n){let e,t=Te(n[50]),l=[];for(let i=0;i0?by:I[483].source==="suggestion"?_y:I[483].source==="unknown"||I[483].source==="imported"?gy:my}let T=E(n),N=T(n),A=n[483].source==="suggestion"&&n[483]._events&&n[483]._events.length>0&&Xu(n);return{c(){e=f("div"),t=f("div"),l=f("button"),l.textContent=`${v("worklog.editEntry")}`,i=w(),s=f("button"),s.textContent=`${v("worklog.deleteEntry")}`,o=w(),y&&y.c(),c=w(),u=f("div"),d=f("span"),d.textContent=`${v("worklog.source")}`,p=w(),N.c(),h=w(),A&&A.c(),r(l,"class","btn btn-sm svelte-1uu9qhk"),r(s,"class","btn btn-sm btn-danger svelte-1uu9qhk"),r(t,"class","worklog-entry-actions svelte-1uu9qhk"),r(d,"class","wl-detail-label svelte-1uu9qhk"),r(u,"class","wl-detail-section svelte-1uu9qhk"),r(e,"class","worklog-entry-detail svelte-1uu9qhk")},m(I,R){C(I,e,R),a(e,t),a(t,l),a(t,i),a(t,s),a(e,o),y&&y.m(e,null),a(e,c),a(e,u),a(u,d),a(u,p),N.m(u,null),a(e,h),A&&A.m(e,null),m||(g=[O(l,"click",We(b)),O(s,"click",We(k))],m=!0)},p(I,R){n=I,n[483].details?y?y.p(n,R):(y=Yu(n),y.c(),y.m(e,c)):y&&(y.d(1),y=null),T!==(T=E(n))&&(N.d(1),N=T(n),N&&(N.c(),N.m(u,null))),n[483].source==="suggestion"&&n[483]._events&&n[483]._events.length>0?A?A.p(n,R):(A=Xu(n),A.c(),A.m(e,null)):A&&(A.d(1),A=null)},d(I){I&&S(e),y&&y.d(),N.d(),A&&A.d(),m=!1,Ce(g)}}}function Yu(n){let e,t,l,i,s=n[483].details+"",o;return{c(){e=f("div"),t=f("span"),t.textContent=`${v("worklog.details")}`,l=w(),i=f("p"),o=j(s),r(t,"class","wl-detail-label svelte-1uu9qhk"),r(i,"class","svelte-1uu9qhk"),r(e,"class","wl-detail-section svelte-1uu9qhk")},m(c,u){C(c,e,u),a(e,t),a(e,l),a(e,i),a(i,o)},p(c,u){u[1]&524288&&s!==(s=c[483].details+"")&&Q(o,s)},d(c){c&&S(e)}}}function my(n){let e;return{c(){e=f("p"),e.textContent=`${v("worklog.sourceUnknown")}`,r(e,"class","svelte-1uu9qhk")},m(t,l){C(t,e,l)},d(t){t&&S(e)}}}function gy(n){let e;return{c(){e=f("p"),e.textContent=`${v("worklog.sourceUnknown")}`,r(e,"class","svelte-1uu9qhk")},m(t,l){C(t,e,l)},d(t){t&&S(e)}}}function _y(n){let e;return{c(){e=f("p"),e.textContent=`${v("worklog.sourceSuggestionNoEvents")}`,r(e,"class","svelte-1uu9qhk")},m(t,l){C(t,e,l)},d(t){t&&S(e)}}}function by(n){let e;return{c(){e=f("p"),e.textContent=`${v("worklog.sourceSuggestion")}`,r(e,"class","svelte-1uu9qhk")},m(t,l){C(t,e,l)},d(t){t&&S(e)}}}function ky(n){let e;return{c(){e=f("p"),e.textContent=`${v("worklog.sourceManual")}`,r(e,"class","svelte-1uu9qhk")},m(t,l){C(t,e,l)},d(t){t&&S(e)}}}function Xu(n){let e,t,l,i=Te(n[483]._events),s=[];for(let o=0;o',N=w(),r(l,"class","action-title svelte-1uu9qhk"),r(c,"class","action-type svelte-1uu9qhk"),r(h,"class","action-data svelte-1uu9qhk"),r(t,"class","action-info svelte-1uu9qhk"),r(y,"class","btn btn-sm svelte-1uu9qhk"),r(T,"class","btn btn-sm btn-danger svelte-1uu9qhk"),r(k,"class","action-btns svelte-1uu9qhk"),r(e,"class","action-card svelte-1uu9qhk")},m(D,z){C(D,e,z),a(e,t),a(t,l),a(l,s),a(t,o),a(t,c),a(c,d),a(t,p),a(t,h),a(h,g),a(e,b),a(e,k),a(k,y),a(k,E),a(k,T),a(e,N),A||(I=[O(y,"click",R),O(T,"click",M)],A=!0)},p(D,z){n=D,z[1]&262144&&i!==(i=n[480].title+"")&&Q(s,i),z[1]&262144&&u!==(u=n[219](n[480].type)+"")&&Q(d,u),z[1]&262144&&m!==(m=n[480].data+"")&&Q(g,m)},d(D){D&&S(e),A=!1,Ce(I)}}}function yy(n){let e,t=Te(n[69]),l=[];for(let i=0;i',o=w(),p&&p.c(),c=vt(),r(e,"class","note-title svelte-1uu9qhk"),r(s,"class","btn btn-sm note-rename-btn svelte-1uu9qhk"),r(s,"title",v("common.rename"))},m(h,m){C(h,e,m),a(e,l),C(h,i,m),C(h,s,m),C(h,o,m),p&&p.m(h,m),C(h,c,m),u||(d=O(s,"click",n[244]),u=!0)},p(h,m){m[1]&64&&t!==(t=h[37].title+"")&&Q(l,t),h[37].dirty?p||(p=sf(),p.c(),p.m(c.parentNode,c)):p&&(p.d(1),p=null)},d(h){h&&(S(e),S(i),S(s),S(o),S(c)),p&&p.d(h),u=!1,d()}}}function Iy(n){let e,t,l,i,s,o,c,u;return{c(){e=f("div"),t=f("input"),l=w(),i=f("button"),i.textContent=`${v("common.save")}`,s=w(),o=f("button"),o.textContent=`${v("common.cancel")}`,r(t,"type","text"),r(t,"class","note-rename-input svelte-1uu9qhk"),r(i,"class","btn btn-primary btn-sm svelte-1uu9qhk"),r(o,"class","btn btn-sm svelte-1uu9qhk"),r(e,"class","note-rename-inline svelte-1uu9qhk")},m(d,p){C(d,e,p),a(e,t),Re(t,n[48]),a(e,l),a(e,i),a(e,s),a(e,o),c||(u=[O(t,"input",n[242]),O(t,"keydown",n[243]),O(i,"click",n[159]),O(o,"click",n[158])],c=!0)},p(d,p){p[1]&131072&&t.value!==d[48]&&Re(t,d[48])},d(d){d&&S(e),c=!1,Ce(u)}}}function sf(n){let e;return{c(){e=f("span"),e.textContent="●",r(e,"class","dirty-mark svelte-1uu9qhk")},m(t,l){C(t,e,l)},d(t){t&&S(e)}}}function of(n){let e,t,l,i,s,o,c,u,d,p,h,m,g,b,k,y,E,T,N,A,I,R,M,D,z,U,H=v("common.create")+"",B,W,G,V,F,L,q,P=n[82]&&rf(n);h=new ji({props:{kind:"folder",size:24}});let X=Te(n[15]),Y=[];for(let ee=0;eeke(Y[ee],1,1,()=>{Y[ee]=null});return{c(){e=f("div"),t=f("div"),l=f("h3"),l.textContent=`${v("nav.createNode")}`,i=w(),P&&P.c(),s=w(),o=f("div"),c=f("span"),c.textContent=`${v("template.select")}`,u=w(),d=f("div"),p=f("button"),xe(h.$$.fragment),m=w(),g=f("div"),b=f("span"),b.textContent=`${v("template.optionNone")}`,k=w(),y=f("span"),y.textContent=`${v("template.none.desc")}`,E=w();for(let ee=0;ee{b=null}),Et()),y[84].node&&y[84].node.parent_id?k?k.p(y,E):(k=df(y),k.c(),k.m(t,s)):k&&(k.d(1),k=null),(!h||E[2]&4194304)&&on(t,"left",y[84].x+"px"),(!h||E[2]&4194304)&&on(t,"top",y[84].y+"px")},i(y){h||(ge(b),h=!0)},o(y){ke(b),h=!1},d(y){y&&S(e),b&&b.d(),k&&k.d(),m=!1,Ce(g)}}}function uf(n){let e,t,l,i,s,o=Te(n[15].length>0?n[15]:[{id:"",title:"template.optionNone",icon:"folder"}]),c=[];for(let d=0;dke(c[d],1,1,()=>{c[d]=null});return{c(){e=f("div"),e.textContent=`${v("common.create")}`,t=w();for(let d=0;d0?d[15]:[{id:"",title:"template.optionNone",icon:"folder"}]);let h;for(h=0;hn[370].call(k)),r(m,"class","svelte-1uu9qhk"),r(h,"class","form-group svelte-1uu9qhk"),r(N,"class","label-text svelte-1uu9qhk"),r(M,"type","text"),r(M,"placeholder",D=n[87]==="open_url"?v("action.urlPlaceholder"):n[87]==="open_folder"||n[87]==="open_file"?v("action.pathPlaceholder"):v("action.commandPlaceholder")),r(M,"class","svelte-1uu9qhk"),r(T,"class","svelte-1uu9qhk"),r(E,"class","form-group svelte-1uu9qhk"),r(H,"class","btn btn-primary svelte-1uu9qhk"),r(W,"class","btn svelte-1uu9qhk"),r(U,"class","modal-actions svelte-1uu9qhk"),r(t,"class","modal svelte-1uu9qhk"),r(e,"class","modal-overlay svelte-1uu9qhk"),r(e,"role","button"),r(e,"tabindex","0")},m(q,P){C(q,e,P),a(e,t),a(t,l),a(t,i),a(t,s),a(s,o),a(o,c),a(o,u),a(o,d),Re(d,n[86]),a(t,p),a(t,h),a(h,m),a(m,g),a(m,b),a(m,k);for(let X=0;X0&&kf(n),W=n[111]&&wf();return{c(){e=f("div"),t=f("div"),l=f("h3"),l.textContent=`${v("inbox.assignTitle")}`,i=w(),s=f("div"),c=j(o),u=w(),d=f("div"),p=f("label"),h=f("span"),h.textContent=`${v("inbox.assignTarget")}`,m=w(),g=f("input"),b=w(),k=f("div"),k.textContent=`${v("inbox.assignSearchHint")}`,y=w(),B&&B.c(),E=w(),W&&W.c(),T=w(),N=f("div"),A=f("button"),R=j(I),D=w(),z=f("button"),z.textContent=`${v("common.cancel")}`,r(l,"class","svelte-1uu9qhk"),r(s,"class","create-context svelte-1uu9qhk"),r(h,"class","label-text svelte-1uu9qhk"),r(g,"type","text"),r(g,"placeholder",v("inbox.assignSearchPlaceholder")),r(g,"class","svelte-1uu9qhk"),r(k,"class","assign-hint svelte-1uu9qhk"),r(p,"class","svelte-1uu9qhk"),r(d,"class","form-group assign-search svelte-1uu9qhk"),r(A,"class","btn btn-primary svelte-1uu9qhk"),A.disabled=M=!n[110],r(z,"class","btn svelte-1uu9qhk"),r(N,"class","modal-actions svelte-1uu9qhk"),r(t,"class","modal svelte-1uu9qhk"),r(e,"class","modal-overlay svelte-1uu9qhk"),r(e,"role","button"),r(e,"tabindex","0")},m(G,V){C(G,e,V),a(e,t),a(t,l),a(t,i),a(t,s),a(s,c),a(t,u),a(t,d),a(d,p),a(p,h),a(p,m),a(p,g),Re(g,n[108]),a(p,b),a(p,k),a(d,y),B&&B.m(d,null),a(t,E),W&&W.m(t,null),a(t,T),a(t,N),a(N,A),a(A,R),a(N,D),a(N,z),U||(H=[O(g,"input",n[374]),O(g,"input",n[204]),O(g,"keydown",n[375]),O(A,"click",n[206]),O(z,"click",n[203]),O(e,"click",Qt(n[203])),O(e,"keydown",Pn(n[203]))],U=!0)},p(G,V){V[3]&16384&&o!==(o=G[107].title+"")&&Q(c,o),V[3]&32768&&g.value!==G[108]&&Re(g,G[108]),G[109].length>0?B?B.p(G,V):(B=kf(G),B.c(),B.m(d,null)):B&&(B.d(1),B=null),G[111]?W||(W=wf(),W.c(),W.m(t,T)):W&&(W.d(1),W=null),V[3]&131072&&M!==(M=!G[110])&&(A.disabled=M)},d(G){G&&S(e),B&&B.d(),W&&W.d(),U=!1,Ce(H)}}}function kf(n){let e,t=Te(n[109]),l=[];for(let i=0;i{p[N]=null}),Et(),t=p[e],t?t.p(E,T):(t=p[e]=d[e](E),t.c()),ge(t,1),t.m(l.parentNode,l)),E[41]?m?m.p(E,T):(m=Af(E),m.c(),m.m(i.parentNode,i)):m&&(m.d(1),m=null),E[44]?g?(g.p(E,T),T[1]&8192&&ge(g,1)):(g=Nf(E),g.c(),ge(g,1),g.m(s.parentNode,s)):g&&(yt(),ke(g,1,1,()=>{g=null}),Et()),E[47]&&E[47]!==((A=E[37])==null?void 0:A.id)?b?b.p(E,T):(b=If(E),b.c(),b.m(o.parentNode,o)):b&&(b.d(1),b=null),E[45]?k?k.p(E,T):(k=Mf(E),k.c(),k.m(c.parentNode,c)):k&&(k.d(1),k=null)},i(E){u||(ge(t),ge(g),u=!0)},o(E){ke(t),ke(g),u=!1},d(E){E&&(S(l),S(i),S(s),S(o),S(c)),p[e].d(E),m&&m.d(E),g&&g.d(E),b&&b.d(E),k&&k.d(E)}}}function de(n,...e){try{if(window.go&&window.go.main&&window.go.main.App){const t=window.go.main.App[n];if(typeof t=="function")return t(...e)}}catch(t){console.error("Wails call error:",n,t)}return Promise.reject(new Error("Wails not connected: "+n))}function Ry(n,e,t){const l=[...n];return l.sort((i,s)=>{let o=0;if(e==="name")o=(i.title||"").localeCompare(s.title||"");else if(e==="type"){const c=i.captureKind||i.sourceKind||i.type||"",u=s.captureKind||s.sourceKind||s.type||"";o=c.localeCompare(u)}else o=(i.capturedAt||i.createdAt||"").localeCompare(s.capturedAt||s.createdAt||"");return t==="asc"?o:-o}),l}function Ly(n,e){return n.section===e.section&&n.nodeId===e.nodeId&&n.tab===e.tab&&n.trashFolderId===e.trashFolderId}function Ni(n){return!n||!(n instanceof Element)?!1:!!n.closest('input, textarea, select, [contenteditable="true"], [contenteditable=""]')}function Ii(n,e,t){for(const l of n){if(l.id===e)return l.children=t,l.has_children=t.length>0,!0;if(l.children&&Ii(l.children,e,t))return!0}return!1}function Kd(n){return(n==null?void 0:n.sourceKind)||(n==null?void 0:n.captureKind)||(n==null?void 0:n.type)||""}function Ys(n){return Kd(n)!=="url"&&(n==null?void 0:n.type)!=="link"}function Dy(n,e){return{id:n.id,nodeId:n.id,fileId:e.id||e.fileId,name:e.name||n.title,type:"file",size:e.size||0,mime:e.mime||""}}function Vd(n,e,t){for(const l of n){if(l.id===e)return l.children=t,l.has_children=t.length>0,!0;if(l.children&&Vd(l.children,e,t))return!0}return!1}function Oy(n,e){return e?n.filter(t=>vs(t)===e):n.filter(t=>!vs(t)||!n.some(l=>l.id===vs(t)))}function vs(n){return(n==null?void 0:n.parentId)||(n==null?void 0:n.parentID)||(n==null?void 0:n.parent_id)||""}function Ei(n){return n.eventIds&&n.eventIds.length?n.eventIds:n.events&&n.events.length?n.events.map(e=>e.id).filter(Boolean):[]}function Ti(n){try{de("WriteDebugLog",n)}catch{}}function ws(n){return n?n.map(e=>(e._expanded===void 0&&(e._expanded=!1),e)):[]}function an(n){return n?new Date(n).toLocaleTimeString("ru-RU",{hour:"2-digit",minute:"2-digit"}):""}function ni(n){return n==="note_created"||n==="file_added"||n==="folder_added"||n==="node_created"?"+":n==="file_deleted"||n==="folder_deleted"?"×":n==="file_renamed"||n==="folder_renamed"||n==="note_updated"||n==="node_updated"?"~":n==="file_copied"?"⧉":n==="file_moved"?"→":"•"}function qn(n){if(!n)return"";try{return new Date(n).toLocaleDateString("ru-RU",{day:"numeric",month:"short"})}catch{return n}}function ys(n){const e=String(n||"").trim();if(!e||/[\s]/.test(e)||e.includes("@"))return"";try{const t=new URL(e);return(t.protocol==="http:"||t.protocol==="https:")&&t.hostname?e:""}catch{try{const l=`https://${e}`,i=new URL(l);return i.hostname&&i.hostname.includes(".")?l:""}catch{return""}}}function qy(n){return{"image/png":"png","image/jpeg":"jpg","image/gif":"gif","image/webp":"webp"}[n]||"bin"}function Py(n){return new Promise((e,t)=>{const l=new FileReader;l.onload=()=>{const i=String(l.result||""),s=i.indexOf(",");e(s>=0?i.slice(s+1):i)},l.onerror=()=>t(l.error),l.readAsDataURL(n)})}function zy(n){const e=String(n||"").split(/\r?\n/).map(t=>t.trim()).filter(Boolean);return e.length?{url:e[0],title:e[1]||""}:null}function By(n){return String(n||"").split(/\r?\n/).map(t=>t.trim()).filter(t=>t&&!t.startsWith("#"))[0]||""}function Rf(n){const e=Array.from((n==null?void 0:n.types)||[]);return e.includes("Files")||e.includes("text/uri-list")||e.includes("text/x-moz-url")||e.includes("text/plain")&&!e.includes("application/x-verstak-node")}function Fy(n){return["case","client","project","folder","document","recipe"].includes(n.type)}function jy(n){return n.targetType==="note"&&n.targetId?{nodeId:n.nodeId,tab:"notes",targetId:n.targetId}:n.targetType==="file"?{nodeId:n.nodeId,tab:"files",targetId:n.targetId,targetPath:n.targetPath}:n.targetType==="folder"?{nodeId:n.nodeId,tab:"files",targetPath:n.targetPath||n.targetId}:{nodeId:n.nodeId}}function Pn(n){return e=>{Ni(e.target)||(e.key==="Enter"||e.key===" ")&&(e.preventDefault(),n())}}function Uy(n,e,t){var Fo;let l,i,s,o,c=null,u=!1,d=!1,p=!1,h=!1,m=[],g=[],b=[],k=null,y=[],E=0,T=!0,N=[],A=null,I="",R="",M=!1,D="",z="all",U="all",H="",B="",W="suggestions",G="",V=[],F=!1,L=[],q="",P="";function X(_){return{"vault not open":v("error.vaultNotOpen")}[_]||_}let Y="",J=null,ee="overview",ne=[],le=null,he,se,Be="edit",Ke=!1,Me="",te="",re=!1,Ae=!1,Fe="",we=null,je="",Qe="",Ne=[],Ve=[],Ue=[],Se=!1,He="",Oe="",Ge="",qe="",ue=!1,be=!1,x=null,ye=null,me=[],Ie=0,it=[],st=[],Ye=[],dt=!1,Ze=[],pe=[],Pe=!1,ft="",mt="date",At="desc",xt=!1,gt=[],jt=null,It="",Ut="",cn="",un="",Ht=null,Nn=0,Ct=[],Lt="",_t=[],_l=[],bn="",bl="",en=[],bt=!1,Dt=!1,tn="",fn=null,Wt=null,$t={visible:!1,x:0,y:0,node:null},$=!1,_e="",tt="open_url",ht="",In=[{id:"open_url",label:v("action.openUrl")},{id:"open_file",label:v("action.openFile")},{id:"open_folder",label:v("action.openFolder")},{id:"run_command",label:v("action.runCommand")},{id:"run_script",label:v("action.runScript")},{id:"open_terminal",label:v("action.openTerminal")},{id:"launch_app",label:v("action.launchApp")}],Mt=!0,nn={},Yt=null,Gt="",Fl=!1,Yn="",kl=!1,kn=!1,vn=!1,zn="",dn=0,Mn=0,Kt=null,vl=!1,oi="",jl="",Ul=!1,ri=v("common.delete"),Xn=null,wl=null,Bn=!1,Jn="",hn="",wn="",Ee=null,Z="",ie=[],ve=null,De=!1,$e,nt=null,St=!1,wt="",Ot="";const ln=[{id:"overview",label:v("tab.overview")},{id:"notes",label:v("tab.notes")},{id:"files",label:v("tab.files")},{id:"links",label:v("tab.links")},{id:"actions",label:v("tab.actions")},{id:"activity",label:v("tab.activity"),group:"service"},{id:"worklog",label:v("tab.worklog"),group:"service"},{id:"inbox",label:v("tab.inbox"),group:"service"}];let Qn=null;function qt(_){const K={};for(const Le of _){const ze=Le.captureContextLabel||v("inbox.noContext");K[ze]||(K[ze]=[]),K[ze].push(Le)}const fe=[];for(const[Le,ze]of Object.entries(K))fe.push({label:Le,items:ze});return fe.sort((Le,ze)=>Le.label.localeCompare(ze.label)),fe}function Zd(){return{section:Y||"",nodeId:(J==null?void 0:J.id)||"",tab:J?ee:"",trashFolderId:Y==="trash"?Lt:"",trashFolderStack:Y==="trash"?_t.map(_=>({id:_.id,title:_.title})):[]}}function yl(){if(bt)return;const _=Zd(),K=en[en.length-1];(!K||!Ly(K,_))&&(en=[...en,_].slice(-80))}function Gi(){t(8,Lt=""),t(231,_t=[]),t(76,Ct=[])}function Xs(){return vl?(Vi(),!0):h?(Bo(),!0):Yt?(xs(),!0):Ee?(rs(),!0):jt?(as(),!0):Bn?(t(104,Bn=!1),!0):Se?(fo(),!0):$?(qo(),!0):Dt?(to(),!0):$t.visible?(xn(),!0):le?(uo(),!0):!1}async function Yd(_){var K;bt=!0;try{if(_.nodeId){const fe=await de("GetNodeDetail",_.nodeId);return fe?(await Pt(fe),t(35,ee=_.tab||"overview"),ee==="files"&&((K=se==null?void 0:se.resetToNode)==null||K.call(se,fe.id)),!0):!1}else if(_.section)return m.some(fe=>fe.id===_.section)?(await ci(_.section),_.section==="trash"&&(t(8,Lt=_.trashFolderId||""),t(231,_t=_.trashFolderStack||[]),t(76,Ct=[]),await el()),!0):!1;return!1}catch{return!1}finally{bt=!1}}async function Js(){if(!Xs())for(;en.length>0;){const _=en[en.length-1];if(en=en.slice(0,-1),await Yd(_))return}}function ai(_){_.button!==3&&_.button!==4||Ni(_.target)||Xs()&&_.button===3||(_.preventDefault(),_.stopPropagation(),_.button===3&&Js())}function sn(_){var K;ee!==_&&(yl(),t(35,ee=_),_==="files"&&J&&((K=se==null?void 0:se.resetToNode)==null||K.call(se,J.id)))}li(async()=>{try{if(t(10,c=await de("GetStartupStatus")),u=!0,c.status==="first_run"){t(11,d=!0),t(89,Mt=!1);return}if(c.status==="recovery"){t(12,p=!0),t(89,Mt=!1);return}}catch(_){t(34,P=String(_))}try{t(33,q=await de("VerstakVersion")||"verstak-gui/v2"),t(0,m=await de("ListSystemViewsWithPlugins")||[]),t(14,g=await de("ListWorkspaceTree")||[]),t(15,b=await de("ListEnabledTemplates")||[])}catch(_){t(34,P=String(_)),t(0,m=[{id:"today",label:v("nav.today")},{id:"inbox",label:v("nav.inbox")},{id:"activity",label:v("nav.activity")}]),t(14,g=[]),t(15,b=[])}window.runtime&&window.runtime.EventsOn&&(window.runtime.EventsOn("files-dropped",Rp),Qn=()=>window.runtime.EventsOff("files-dropped")),window.addEventListener("keydown",$s),window.addEventListener("paste",ko),window.addEventListener("dragenter",Eo),window.addEventListener("dragover",To),window.addEventListener("dragleave",So),window.addEventListener("dragend",Rt),window.addEventListener("dragcancel",Rt),window.addEventListener("drop",Ao),window.addEventListener("mouseup",Rt),window.addEventListener("mouseleave",Rt),window.addEventListener("blur",Rt),document.addEventListener("visibilitychange",Co),window.addEventListener("auxclick",ai),window.addEventListener("mouseup",ai),t(89,Mt=!1),us(),xi()}),ii(()=>{Qn&&Qn(),window.removeEventListener("keydown",$s),window.removeEventListener("paste",ko),window.removeEventListener("dragenter",Eo),window.removeEventListener("dragover",To),window.removeEventListener("dragleave",So),window.removeEventListener("dragend",Rt),window.removeEventListener("dragcancel",Rt),window.removeEventListener("drop",Ao),window.removeEventListener("mouseup",Rt),window.removeEventListener("mouseleave",Rt),window.removeEventListener("blur",Rt),document.removeEventListener("visibilitychange",Co),window.removeEventListener("auxclick",ai),window.removeEventListener("mouseup",ai),vo()});async function ci(_){yl(),t(1,Y=_),t(2,J=null),t(35,ee="overview"),t(36,ne=[]),Ne=[],t(49,Ve=[]),t(50,Ue=[]),t(66,pe=[]),t(69,gt=[]),t(60,me=[]),t(3,Ze=[]),t(7,Ht=null),Gi(),t(80,Dt=!1),t(34,P=""),t(16,k=null),t(62,it=[]),t(63,st=[]),t(17,y=[]),E=0,T=!0,t(18,N=[]),t(19,A=null);try{_==="today"?(t(16,k=await de("ListTodayView")||{cases:[]}),t(60,me=await de("GetSuggestions")||[]),t(61,Ie=me.length),t(62,it=await de("ListTodayInProgress")||[]),t(63,st=await de("ListTodayCaptures")||[])):_==="inbox"?t(3,Ze=await de("ListInboxNodes")||[]):_==="trash"?await el():_==="journal"?await tl():_==="activity"&&(t(17,y=await de("ListActivityFeed",50,0)||[]),E=y.length,T=y.length===50)}catch(K){t(34,P=String(K)),t(16,k={cases:[]}),t(3,Ze=[]),t(7,Ht=null),t(17,y=[])}}async function Pt(_){yl(),t(2,J=_),t(1,Y=""),t(35,ee="overview"),t(36,ne=[]),Ne=[],t(49,Ve=[]),t(50,Ue=[]),t(60,me=[]),Gi(),t(37,le=null),t(80,Dt=!1),t(34,P=""),t(32,L=[]),await Ki(_.id)}async function Ki(_){try{t(36,ne=await de("ListNotes",_)||[])}catch{}try{Ne=await de("ListFiles",_)||[]}catch{}try{t(49,Ve=await de("ListActions",_)||[])}catch{}try{t(50,Ue=ws(await de("ListWorklog",_)))}catch{}try{t(66,pe=await de("ListInboxNodesForTarget",_)||[])}catch{t(66,pe=[])}try{t(69,gt=await de("ListLinks",_)||[])}catch{t(69,gt=[])}try{t(60,me=await de("GetSuggestions")||[]),t(61,Ie=me.length)}catch{t(60,me=[]),t(61,Ie=0)}try{t(32,L=await de("ListActivityByNode",_,50,0)||[])}catch{}}function Xd(_,K){Jn=_,t(105,hn=K),t(106,wn=""),t(104,Bn=!0)}async function Qs(){const _=hn.trim();if(!_){t(106,wn=v("rename.emptyError"));return}try{await de("ValidateName",_)}catch{t(106,wn=v("rename.invalidError"));return}t(104,Bn=!1);const K=Jn;Jn="";try{await de("RenameNode",K,_),J&&J.id===K&&t(2,J={...J,title:_}),await $n()}catch(fe){t(34,P=String(fe))}}function Jd(){t(104,Bn=!1),Jn="",t(105,hn=""),t(106,wn="")}function Qd(_){_.key==="Enter"?Qs():t(106,wn="")}function xs(){t(91,Yt=null),t(92,Gt=""),t(94,Yn="")}function $s(_){if(_.key==="Escape"&&vn){_.preventDefault(),Rt();return}if(!Ni(_.target)){if(_.key==="Backspace"||_.altKey&&_.key==="ArrowLeft"){_.preventDefault(),Js();return}if(ee==="files"&&se)return se.handleFilesKeydown(_)}}function Rn(_){t(100,oi=_.title||v("common.confirm")),t(101,jl=_.message||""),t(102,Ul=_.danger!==void 0?_.danger:!0),t(103,ri=_.confirmText||v("common.delete")),Xn=_.onConfirm||null,wl=_.onCancel||null,t(99,vl=!0)}function Vi(){t(99,vl=!1),Xn=null,wl=null}function xd(){Xn&&Xn(),Vi()}function $d(){wl&&wl(),Vi()}function eo(_){t(82,fn=$t.node),t(83,Wt=_),t(81,tn=""),t(80,Dt=!0),xn()}function ep(){t(82,fn=null),t(83,Wt=void 0),t(81,tn=""),t(80,Dt=!0)}function to(){t(80,Dt=!1),t(81,tn=""),t(82,fn=null),t(83,Wt=void 0)}async function no(){if(!(!tn.trim()||Wt===void 0))try{const _=fn?fn.id:"",K=Wt?Wt.id:"",fe=await de("CreateNodeFromTemplate",_,tn.trim(),K);t(80,Dt=!1),t(81,tn="");const Le=fe?fe.id:null;if(t(82,fn=null),t(83,Wt=void 0),_){t(90,nn={...nn,[_]:!0});const ze=await de("ListWorkspaceChildren",_)||[];Ii(g,_,ze),t(14,g=[...g])}else t(14,g=await de("ListWorkspaceTree")||g);if(Le){const ze=await de("GetNodeDetail",Le);ze&&(t(1,Y=""),Pt(ze))}}catch(_){t(34,P=String(_))}}function tp(_,K){t(84,$t={visible:!0,x:_.clientX,y:_.clientY,node:K})}function xn(){t(84,$t={visible:!1,x:0,y:0,node:null})}async function np(_){const K=!nn[_];if(t(90,nn={...nn,[_]:K}),!K)return;const fe=await de("ListWorkspaceChildren",_)||[];Ii(g,_,fe),t(14,g=[...g])}async function lp(_,K){if(!(!_||!K||_===K))try{const fe=await de("MoveNode",_,K);await $n();const Le=await de("GetNodeDetail",_);Le&&(t(1,Y=""),Pt(Le))}catch(fe){t(34,P=String(fe))}}async function ip(_){_.preventDefault(),_.stopPropagation();try{const K=_.dataTransfer.getData("text/plain");if(!K)return;const fe=await de("GetNodeDetail",K);if(!fe||!fe.parent_id)return;await de("MoveNode",K,""),await $n();const Le=await de("GetNodeDetail",K);Le&&(t(1,Y=""),Pt(Le))}catch(K){t(34,P=String(K))}}function sp(_){_.preventDefault(),_.dataTransfer.dropEffect="move",t(95,kl=!0)}function op(_){t(95,kl=!1)}function lo(_){Xd(_.id,_.title),xn()}function io(_){xn(),Rn({title:v("delete.confirmTitle"),message:v("delete.confirmMessage")+" "+_.title+"?",confirmText:v("common.delete"),danger:!0,onConfirm:async()=>{try{await de("DeleteNode",_.id),await $n(),await xi(),J&&J.id===_.id&&t(2,J=null)}catch(K){t(34,P=String(K))}}})}async function Ln(_){xn();const K=typeof _=="string"?_:_.id;try{await de("OpenFolder",K)}catch(fe){t(34,P=String(fe))}}async function mn(_){var fe,Le;const K=Kd(_);try{if(K==="url"||_.type==="link"){if(!_.url)throw new Error("url required");await de("OpenURL",_.url);return}if(K==="text"||_.type==="note"){const ze=await de("ReadNote",_.id);t(37,le={id:_.id,title:_.title,content:ze||"",dirty:!1});return}if(K==="folder"||_.type==="folder"){yl(),t(1,Y=""),t(2,J=_),t(35,ee="files"),await Ki(_.id),(fe=se==null?void 0:se.resetToNode)==null||fe.call(se,_.id);return}if(K==="file"||K==="image"||_.type==="file"){const kt=(await de("ListFiles",_.id)||[])[0];if(!kt)throw new Error("file record not found");const Vt=Dy(_,kt);Dg(Vt)?(t(35,ee="files"),(Le=se==null?void 0:se.openFileById)==null||Le.call(se,_.id)):await de("OpenFile",Vt.fileId);return}await Wl(_.id)}catch(ze){t(34,P=String(ze))}}async function so(_){xn();try{await de("MoveNode",_.id,""),await $n();const K=await de("GetNodeDetail",_.id);K&&(t(1,Y=""),Pt(K))}catch(K){t(34,P=String(K))}}async function $n(){const _=Object.keys(nn).filter(fe=>nn[fe]),K=await de("ListWorkspaceTree")||[];for(const fe of _){const ze=(await de("ListWorkspaceChildren",fe)||[]).map(kt=>({...kt}));Vd(K,fe,ze)}t(14,g=K)}async function oo(_){const K=await de("ListWorkspaceChildren",_)||[];Ii(g,_,K),t(14,g=[...g])}async function ro(_){if(!(!_.trim()||!J))try{const K=await de("CreateNote",J.id,_.trim());t(36,ne=[...ne,K&&K.id?K:{id:Date.now().toString(),title:_.trim(),createdAt:new Date().toISOString()}])}catch{const fe={id:Date.now().toString(),title:_.trim(),createdAt:new Date().toISOString()};t(36,ne=[...ne,fe])}}async function Fn(_){if(le&&le.dirty){Rn({title:v("note.unsavedTitle"),message:v("note.unsavedMessage"),confirmText:v("note.unsavedClose"),danger:!1,onConfirm:async()=>{await ao(_)}});return}await ao(_)}async function ao(_){try{const K=await de("ReadNote",_.id);t(37,le={id:_.id,title:_.title,content:K||"",dirty:!1})}catch{t(37,le={id:_.id,title:_.title,content:"# "+_.title+` - -`,dirty:!1})}}function co(_){Rn({title:v("common.delete"),message:v("note.deleteConfirm",{title:_.title})||`Удалить заметку «${_.title}»?`,confirmText:v("common.delete"),danger:!0,onConfirm:async()=>{try{await de("DeleteNote",_.id),t(36,ne=ne.filter(K=>K.id!==_.id)),le&&le.id===_.id&&t(37,le=null);try{await xi()}catch{}}catch(K){t(34,P=String(K))}}})}function uo(){if(le&&le.dirty){Rn({title:v("note.unsavedTitle"),message:v("note.unsavedMessage"),confirmText:v("note.unsavedClose"),danger:!1,onConfirm:()=>{t(37,le=null),t(40,Be="edit")}});return}t(37,le=null),t(40,Be="edit")}async function rp(){if(le)try{await de("SaveNote",le.id,le.content),t(37,le.dirty=!1,le)}catch{t(37,le.dirty=!1,le)}}function ap(){t(42,Me=""),t(43,te=""),t(41,Ke=!0)}function Zi(){if(!le){t(41,Ke=!1);return}const _=Me.trim()||te.trim()||"link",K=te.trim()||"#",fe=`[${_}](${K})`;t(37,le.content=le.content+(le.content.endsWith(` -`)?"":` -`)+fe+` -`,le),t(37,le.dirty=!0,le),t(41,Ke=!1)}function cp(){t(44,re=!0)}function up(_){const K=_.detail.markdown;he&&typeof he.insertText=="function"&&he.insertText(K),t(44,re=!1)}function fp(){t(44,re=!1)}function Yi(_,K){t(47,we=_),t(48,je=K),Qe=K}function jn(){t(47,we=null),t(48,je=""),Qe=""}async function Xi(){if(!we||!je.trim()){jn();return}if(je.trim()===Qe){jn();return}try{await de("RenameNote",we,je.trim()),t(36,ne=ne.map(_=>_.id===we?{..._,title:je.trim()}:_)),le&&le.id===we&&t(37,le.title=je.trim(),le),jn()}catch(_){t(34,P=String(_)),jn()}}async function dp(_){const{type:K,id:fe}=_.detail;if(fe)switch(K){case"case":await pp(fe);break;case"note":await hp(fe);break;case"file":await mp(fe);break;case"secret":Dn(v("note.internal.secretNotImplemented"));break;default:Dn(`verstak://${K}/${fe}`)}}async function pp(_){try{const K=await de("GetNodeDetail",_);if(!K){Dn(v("note.internal.caseNotFound"));return}await Pt(K)}catch{Dn(v("note.internal.caseNotFound"))}}async function hp(_){try{const K=await de("GetNodeDetail",_);if(!K){Dn(v("note.internal.noteNotFound"));return}const fe=K.parent_id||K.parentId||"";if(fe){const ze=await de("GetNodeDetail",fe);ze&&await Pt(ze)}sn("notes");const Le=ne.find(ze=>ze.id===_);Le?await Fn(Le):await Fn({id:K.id,title:K.title})}catch{Dn(v("note.internal.noteNotFound"))}}async function mp(_){var K,fe;try{const Le=await de("GetNodeDetail",_);if(!Le){Dn(v("note.internal.fileNotFound"));return}const ze=Le.parent_id||Le.parentId||"";if(ze){const kt=await de("GetNodeDetail",ze);kt&&await Pt(kt),sn("files"),(K=se==null?void 0:se.resetToNode)==null||K.call(se,ze),(fe=se==null?void 0:se.openFileById)==null||fe.call(se,_)}else Dn(v("note.internal.fileFound",{title:Le.title}))}catch{Dn(v("note.internal.fileNotFound"))}}function Dn(_){t(46,Fe=_),t(45,Ae=!0),setTimeout(()=>{t(45,Ae=!1)},3e3)}function gp(_){le&&(t(37,le.content=_.detail.content,le),t(37,le.dirty=!0,le))}function _p(_){t(40,Be=_.detail.mode)}function bp(){ap()}function kp(){cp()}function ui(_=null){t(58,x=_),t(59,ye=null),t(52,He=_?_.summary:""),t(53,Oe=_?String(_.minutes||""):""),t(54,Ge=_&&_.date||""),t(55,qe=_&&_.details||""),t(56,ue=_?!!_.billable:!1),t(57,be=_?!!_.approximate:!1),t(51,Se=!0)}function fo(){t(51,Se=!1),t(58,x=null),t(59,ye=null)}async function Ji(_=""){const K=_||(J?J.id:"");J&&J.id===K&&t(50,Ue=ws(await de("ListWorklog",J.id))||Ue),Y==="journal"&&await tl()}async function vp(){const _=parseInt(Oe,10);if(!(!He.trim()||isNaN(_)||_<=0)&&!(!ye&&!x&&!J)){try{if(ye){const K=JSON.stringify(Ei(ye));await de("AcceptSuggestionFull",ye.nodeId,He.trim(),qe,Ge,_,be,ue,K),await fi()}else x?(await de("UpdateWorklogEntry",x.id,He.trim(),qe,Ge,_,be,ue),await Ji(x.nodeId)):(await de("CreateWorklogFull",J.id,He.trim(),qe,Ge,_,be,ue),await Ji(J.id))}catch(K){t(34,P=String(K));return}t(51,Se=!1),t(58,x=null),t(59,ye=null)}}function Qi(_){Rn({title:v("worklog.deleteEntry"),message:v("worklog.deleteConfirm"),confirmText:v("common.delete"),danger:!0,onConfirm:async()=>{try{await de("DeleteWorklogEntry",_.id),await Ji(_.nodeId)}catch(K){t(34,P=String(K))}}})}async function fi(){t(60,me=await de("GetSuggestions")||[]),t(61,Ie=me.length),J&&t(50,Ue=ws(await de("ListWorklog",J.id))),Y==="journal"&&await tl()}async function el(){t(7,Ht=await de("ListTrash")||{nodes:[],entries:[],trashPath:"",count:0}),t(75,Nn=Ht.count||0);const _=Ht.nodes||[];t(76,Ct=Ct.filter(K=>_.some(fe=>fe.id===K))),Lt&&!_.some(K=>K.id===Lt)?Gi():_t.length>0&&(t(231,_t=_t.filter(K=>_.some(fe=>fe.id===K.id))),t(8,Lt=_t.length>0?_t[_t.length-1].id:""))}async function xi(){try{t(75,Nn=await de("TrashCount")||0)}catch{t(75,Nn=0)}}function wp(){return Lt&&(((Ht==null?void 0:Ht.nodes)||[]).find(_=>_.id===Lt)||_t[_t.length-1])||null}function El(_){yl(),t(8,Lt=_.id);const K=_t.findIndex(fe=>fe.id===_.id);K>=0?t(231,_t=_t.slice(0,K+1)):t(231,_t=[..._t,{id:_.id,title:_.title}]),t(76,Ct=[])}function yp(){if(_t.length===0)return;yl();const _=_t.slice(0,-1);t(231,_t=_),t(8,Lt=_.length>0?_[_.length-1].id:""),t(76,Ct=[])}async function Hl(_){t(91,Yt={name:_.title,type:"file",mime:"text/plain",size:0,fileId:_.id}),t(92,Gt=""),t(94,Yn=""),t(93,Fl=!0);try{_.trashFsPath?t(92,Gt=await de("ReadTrashFile",_.trashFsPath)||""):t(92,Gt=await de("ReadTrashFileContent",_.id)||"");const K=(_.title||"").split(".").pop().toLowerCase();["png","jpg","jpeg","gif","webp","bmp","svg"].includes(K)&&t(92,Gt="data:image/"+(K==="svg"?"svg+xml":K)+";base64,"+btoa(previewContent))}catch(K){t(94,Yn=String(K))}t(93,Fl=!1)}function po(_){t(76,Ct=Ct.includes(_)?Ct.filter(K=>K!==_):[...Ct,_])}function $i(_){return Ct.length>0?Ct:[_]}async function es(_){try{await de("RestoreTrashNodesJSON",JSON.stringify(_)),await $n(),await el()}catch(K){t(34,P=String(K))}}async function ts(_){Rn({title:v("delete.confirmTitle"),message:v("delete.confirmMessage")+" "+_.length+"?",confirmText:v("common.delete"),danger:!0,onConfirm:async()=>{try{await de("PurgeTrashNodesJSON",JSON.stringify(_)),await el()}catch(K){t(34,P=String(K))}}})}async function Ep(){Rn({title:v("delete.confirmTitle"),message:v("trash.empty")+"?",confirmText:v("common.delete"),danger:!0,onConfirm:async()=>{try{await de("EmptyTrash"),await el()}catch(_){t(34,P=String(_))}}})}function di(_){t(59,ye=_),t(58,x=null),t(52,He=_.summary||""),t(53,Oe=String(_.suggestedMin||"")),t(54,Ge=""),t(55,qe=""),t(56,ue=!1),t(57,be=!0),t(51,Se=!0)}async function pi(_){try{await de("DismissSuggestion",_.nodeId,JSON.stringify(Ei(_))),await fi()}catch(K){t(34,P=String(K))}}async function Tp(){t(65,dt=!0);try{const _=await de("ListBrowserEvents","pending",50,0);t(64,Ye=_||[])}catch(_){console.warn("[browser] load error:",_)}finally{t(65,dt=!1)}}async function Sp(_){await de("AcceptBrowserEvent",_.id,""),t(64,Ye=Ye.filter(K=>K.id!==_.id))}async function Cp(_){await de("DismissBrowserEvent",_.id),t(64,Ye=Ye.filter(K=>K.id!==_.id))}async function Ap(_){J&&J.id?(await de("AttachBrowserEventToNode",_.id,J.id),t(64,Ye=Ye.filter(K=>K.id!==_.id))):(await de("DismissBrowserEvent",_.id),t(64,Ye=Ye.filter(K=>K.id!==_.id)))}async function ns(_){try{const K=Ei(_),fe=JSON.stringify(K);Ti("acceptTodaySuggestion: nodeId="+_.nodeId+" eventIds="+fe+" events="+JSON.stringify((_.events||[]).map(Le=>({id:Le.id,type:Le.eventType,title:Le.title})))),await de("AcceptSuggestionWith",_.nodeId,_.summary,_.suggestedMin,"",fe),await fi()}catch(K){Ti("acceptTodaySuggestion error: "+K)}}async function ho(_){try{const K=Ei(_),fe=JSON.stringify(K);Ti("acceptJournalSuggestion: nodeId="+_.nodeId+" eventIds="+fe+" events="+JSON.stringify((_.events||[]).map(Le=>({id:Le.id,type:Le.eventType,title:Le.title})))),await de("AcceptSuggestionWith",_.nodeId,_.summary,_.suggestedMin,"",fe),await fi()}catch(K){Ti("acceptJournalSuggestion error: "+K)}}async function tl(){try{const[_,K,fe]=await Promise.all([de("ListWorklogReport",I,R,D,M,z,U),de("WorklogReportSummary",I,R,D,M,z,U),de("GetSuggestions")]);if(t(18,N=(_||[]).map(Le=>(Le._expanded===void 0&&(Le._expanded=!1),Le))),t(19,A=K||null),t(60,me=fe||[]),t(61,Ie=me.length),D&&!H)if(_&&_.length>0&&_[0].nodePath)t(26,H=_[0].nodePath);else try{t(26,H=await de("GetNodeTitle",D))}catch{t(26,H="")}}catch{t(18,N=[]),t(19,A=null),t(60,me=[]),t(61,Ie=0)}}async function hi(_){try{const K=await de("SaveWorklogReport",_,I,R,D,M,z,U);t(27,B=K),setTimeout(()=>t(27,B=""),4e3)}catch(K){if(String(K).includes("отменено"))return;t(27,B="Ошибка: "+String(K)),setTimeout(()=>t(27,B=""),6e3)}}let mo;async function ls(_){if(_._expanded=!_._expanded,t(18,N),_._expanded&&!_._events&&_._hasEvents===void 0)try{_._events=await de("GetWorklogEntryEvents",_.id)||[],_._hasEvents=_._events.length>0,t(18,N)}catch{_._events=[],_._hasEvents=!1,t(18,N)}}async function is(_){if(_._expanded=!_._expanded,_._expanded&&_.source==="suggestion"&&!_._events&&_._hasEvents===void 0)try{_._events=await de("GetWorklogEntryEvents",_.id)||[],_._hasEvents=_._events.length>0}catch(K){K._events=[],K._hasEvents=!1}t(50,Ue)}async function Np(){const _=G.trim();if(!_||_.length<2){t(30,V=[]),t(31,F=!1);return}try{t(30,V=await de("SearchNodes",_)||[]),t(31,F=V.length>0)}catch{t(30,V=[]),t(31,F=!1)}}function Ip(){clearTimeout(mo),mo=setTimeout(Np,200)}function go(_){t(23,D=_.id),t(26,H=_.path||_.title),t(22,M=!0),t(29,G=""),t(30,V=[]),t(31,F=!1),tl()}function _o(){t(23,D=""),t(22,M=!1),t(26,H=""),t(29,G=""),t(30,V=[]),t(31,F=!1),tl()}function Mp(){t(20,I=""),t(21,R=""),t(23,D=""),t(22,M=!1),t(24,z="all"),t(25,U="all"),t(26,H=""),t(29,G=""),t(30,V=[]),t(31,F=!1),tl()}async function Rp(_){try{if(!_||_.length===0)return;await Wp(_,"drop")}finally{Rt()}}function Lp(_){return{note_created:v("event.noteCreated"),note_updated:v("event.noteUpdated"),note_deleted:v("event.noteDeleted"),file_added:v("event.fileAdded"),file_deleted:v("event.fileDeleted"),file_renamed:v("event.fileRenamed"),file_copied:v("event.fileCopied"),file_moved:v("event.fileMoved"),folder_added:v("event.folderAdded"),folder_deleted:v("event.folderDeleted"),folder_renamed:v("event.folderRenamed"),folder_moved:v("event.folderMoved"),node_created:v("event.caseCreated"),node_updated:v("event.caseUpdated"),node_deleted:v("event.nodeDeleted"),action_created:v("event.actionCreated"),action_done:v("event.actionDone"),worklog_added:v("event.worklogAdded")}[_]||_}function ss(_){return{project:v("kind.project"),client:v("kind.client"),document:v("kind.document"),recipe:v("kind.recipe"),folder:v("kind.folder"),note:v("kind.note"),file:v("kind.file"),archive:v("kind.archive"),case:v("kind.case"),link:v("kind.link")}[_]||_||v("kind.case")}function Dp(_){return _==="action"?v("kind.action"):ss(_)}function Op(_){return _?v("capture.kind."+_):""}function qp(_){return _?v("capture.source."+_):""}function Pp(_){const K=[];return _.captureKind&&K.push(Op(_.captureKind)),_.captureSource&&K.push(qp(_.captureSource)),_.captureContextLabel&&K.push(`${v("inbox.capturedIn")}: ${_.captureContextLabel}`),_.suggestedTargetLabel&&K.push(`${v("inbox.suggestedTarget")}: ${_.suggestedTargetLabel}`),K.push(qn(_.capturedAt||_.createdAt)),K.filter(Boolean).join(" · ")}function zp(_){!_||!_.id||(t(3,Ze=[_,...Ze.filter(K=>K.id!==_.id)]),J&&(_.captureContextNodeId===J.id||_.suggestedTargetNodeId===J.id)&&t(66,pe=[_,...pe.filter(K=>K.id!==_.id)]))}function Bp(){return J&&J.id?{contextType:"node",nodeId:J.id,suggestedTargetNodeId:J.id}:Y?{contextType:"section",section:Y}:{contextType:"global",section:"root"}}function nl(){return JSON.stringify(Bp())}function Fp(){return J&&J.id?v("capture.dropOverlayNode",{title:J.title}):v("capture.dropOverlayGlobal")}async function Tl(_=null){_&&zp(_),Y==="inbox"&&t(3,Ze=await de("ListInboxNodes")||Ze)}async function jp(_,K){const fe=String(_||"").trim();if(!fe)return null;const Le=ys(fe),ze=Le?await de("CaptureURLWithContext",Le,"",K,nl()):await de("CaptureTextWithContext",fe,K,nl());return await Tl(ze),ze}async function bo(_,K,fe){const Le=String(_||"").trim();if(!Le)return null;const ze=await de("CaptureURLWithContext",Le,K||"",fe,nl());return await Tl(ze),ze}async function Up(_,K){if(!_)return null;const fe=_.path||_.webkitRelativePath||"";if(fe){const kt=await de("CapturePathWithContext",fe,K,nl());return await Tl(kt),kt}const Le=await Py(_),ze=await de("CaptureFileDataWithContext",_.name||`clipboard.${qy(_.type)}`,Le,K,nl());return await Tl(ze),ze}async function os(_,K){var Un,On,yn;if(!_)return!1;let fe=!1;const Le=Array.from(_.files||[]);for(const En of Le)await Up(En,K),fe=!0;const ze=(Un=_.getData)==null?void 0:Un.call(_,"text/x-moz-url");if(ze){const En=zy(ze),Gl=En?ys(En.url):"";if(Gl)return await bo(Gl,En.title,K),!0}const kt=(On=_.getData)==null?void 0:On.call(_,"text/uri-list");if(kt){const En=By(kt),Gl=ys(En);if(Gl)return await bo(Gl,"",K),!0}const Vt=(yn=_.getData)==null?void 0:yn.call(_,"text/plain");return String(Vt||"").trim()&&(await jp(Vt,K),fe=!0),fe}async function Hp(){if(!Pe){t(68,ft=""),t(67,Pe=!0);try{const _=await de("CaptureClipboardTextWithContext",nl());await Tl(_),t(68,ft=v("inbox.captured"))}catch(_){t(34,P=String(_).includes("clipboard is empty")?v("inbox.clipboardEmpty"):v("inbox.clipboardUnavailable"))}finally{t(67,Pe=!1)}}}async function Wp(_,K="drop"){if(!Pe){t(67,Pe=!0),t(68,ft="");try{for(const fe of _){const Le=await de("CapturePathWithContext",fe,K,nl());await Tl(Le)}t(68,ft=v("inbox.captured"))}catch(fe){t(34,P=String(fe))}finally{t(67,Pe=!1),t(96,kn=!1)}}}async function ko(_){if(!(d||p)&&!Ni(_.target)&&_.clipboardData)try{await os(_.clipboardData,"paste")&&(_.preventDefault(),t(68,ft=v("inbox.captured")))}catch(K){t(34,P=String(K))}}function vo(){Kt&&(clearTimeout(Kt),Kt=null)}function Rt(){dn=0,t(97,vn=!1),t(98,zn=""),Mn=0,t(96,kn=!1),vo()}function wo(){Kt||(Kt=setTimeout(()=>{Kt=null,vn&&Date.now()-Mn>2e3?Rt():vn&&wo()},2500))}function yo(_){return Rf(_)?(t(98,zn=Fp()),t(97,vn=!0),Mn=Date.now(),wo(),!0):!1}function Eo(_){yo(_.dataTransfer)&&(dn+=1)}function To(_){yo(_.dataTransfer)&&(_.preventDefault(),_.dataTransfer.dropEffect="copy")}function So(_){dn>0&&(dn-=1),(_.clientX<=0||_.clientY<=0||_.clientX>=window.innerWidth||_.clientY>=window.innerHeight||dn<=0)&&Rt()}function Co(){document.hidden&&Rt()}async function Ao(_){if(Rf(_.dataTransfer)){_.preventDefault();try{await os(_.dataTransfer,"drop")&&t(68,ft=v("inbox.captured"))}catch(K){t(34,P=String(K))}finally{Rt()}}}function Gp(_){_.preventDefault(),_.dataTransfer.dropEffect="copy",t(96,kn=!0)}function Kp(){t(96,kn=!1)}async function Vp(_){_.preventDefault(),_.stopPropagation();try{await os(_.dataTransfer,"drop")&&t(68,ft=v("inbox.captured"))}catch(K){t(34,P=String(K))}finally{Rt()}}function mi(_){t(107,Ee=_),t(108,Z=""),t(109,ie=[]),t(110,ve=null)}function rs(){t(107,Ee=null),t(108,Z=""),t(109,ie=[]),t(110,ve=null),t(111,De=!1)}async function Zp(){const _=Z.trim();if(!_||_.length<2){t(109,ie=[]);return}t(111,De=!0);try{const K=await de("SearchNodes",_)||[];t(109,ie=K.filter(fe=>Fy(fe)&&fe.id!==(Ee==null?void 0:Ee.id)))}catch{t(109,ie=[])}finally{t(111,De=!1)}}function Yp(_){t(108,Z=_.target.value),t(110,ve=null),clearTimeout($e),$e=setTimeout(Zp,200)}function No(_){t(110,ve=_),t(108,Z=_.path||_.title),t(109,ie=[])}async function Io(){if(!(!Ee||!ve))try{await Mo(Ee,ve.id),rs()}catch(_){t(34,P=String(_))}}async function Mo(_,K){!_||!K||(await de("ResolveInboxNode",_.id,K),t(3,Ze=Ze.filter(fe=>fe.id!==_.id)),t(66,pe=pe.filter(fe=>fe.id!==_.id)),await $n(),J&&await Ki(J.id))}async function gi(_){const K=(_==null?void 0:_.suggestedTargetNodeId)||(J==null?void 0:J.id)||"";if(K)try{await Mo(_,K)}catch(fe){t(34,P=String(fe))}}function _i(_){Rn({title:v("inbox.deleteTitle"),message:v("inbox.deleteConfirm",{title:_.title}),confirmText:v("common.delete"),danger:!0,onConfirm:async()=>{try{await de("DeleteInboxNode",_.id),t(3,Ze=Ze.filter(K=>K.id!==_.id)),t(66,pe=pe.filter(K=>K.id!==_.id))}catch(K){t(34,P=String(K))}}})}function Ro(_){t(70,jt=_),t(71,It=_.title||""),t(72,Ut=_.url||""),t(73,cn=_.note||""),t(74,un="")}function as(){t(70,jt=null),t(71,It=""),t(72,Ut=""),t(73,cn=""),t(74,un="")}async function Xp(){if(!(!jt||!Ut.trim()))try{const _=await de("UpdateLink",jt.id,It.trim(),Ut.trim(),cn);t(69,gt=gt.map(K=>K.id===_.id?_:K)),as()}catch(_){t(74,un=String(_))}}async function Lo(_){Rn({title:v("links.deleteTitle"),message:v("links.deleteConfirm",{title:_.title}),confirmText:v("common.delete"),danger:!0,onConfirm:async()=>{try{await de("DeleteLink",_.id),t(69,gt=gt.filter(K=>K.id!==_.id))}catch(K){t(34,P=String(K))}}})}async function Do(_){try{await de("OpenLink",_.id)}catch(K){t(34,P=String(K))}}async function Oo(_){var K,fe;try{await((fe=(K=navigator.clipboard)==null?void 0:K.writeText)==null?void 0:fe.call(K,_.url)),t(74,un=v("links.copied"))}catch{t(74,un=v("links.copyUnavailable"))}}function Jp(){t(85,$=!0),t(86,_e=""),t(87,tt="open_url"),t(88,ht="")}function qo(){t(85,$=!1),t(86,_e=""),t(88,ht="")}async function cs(){if(!(!_e.trim()||!ht.trim()||!J))try{const _=await de("CreateAction",J.id,tt,_e.trim(),ht.trim());_&&_.id&&t(49,Ve=[...Ve,_]),t(85,$=!1),t(86,_e=""),t(88,ht="")}catch(_){t(34,P=String(_))}}async function Po(_){try{await de("DeleteAction",_),t(49,Ve=Ve.filter(K=>K.id!==_))}catch(K){t(34,P=String(K))}}function Qp(_){const K=In.find(fe=>fe.id===_);return K?K.label:_}async function Wl(_){try{const K=await de("GetNodeDetail",_);K&&Pt(K)}catch(K){t(34,P=String(K))}}async function ll(_){var Le,ze,kt,Vt,Un;const K=jy(_),fe=K.nodeId;if(fe)try{const On=await de("GetNodeDetail",fe);if(!On)return;if(Pt(On),K.tab==="notes"){if(sn("notes"),K.targetId){try{t(36,ne=await de("ListNotes",fe)||[])}catch{}const yn=ne.find(En=>En.id===K.targetId);yn&&setTimeout(()=>Fn(yn),100)}}else if(K.tab==="files")if(sn("files"),K.targetId)try{const yn=await de("GetNodeDetail",K.targetId);yn&&yn.parent_id?((Le=se==null?void 0:se.resetToNode)==null||Le.call(se,yn.parent_id),(ze=se==null?void 0:se.openFileById)==null||ze.call(se,K.targetId)):(kt=se==null?void 0:se.resetToNode)==null||kt.call(se,fe)}catch{(Vt=se==null?void 0:se.resetToNode)==null||Vt.call(se,fe)}else(Un=se==null?void 0:se.resetToNode)==null||Un.call(se,fe)}catch(On){t(34,P=String(On))}}async function Sl(_){return ll(_)}async function xp(_){var K,fe,Le;if(!(!_||!_.nodeId))try{if(_.type==="link"){const kt=await de("GetNodeDetail",_.nodeId);kt&&(await Pt(kt),sn("links"));return}if(_.type==="action"){const kt=await de("GetNodeDetail",_.nodeId);kt&&(await Pt(kt),sn("actions"));return}const ze=await de("GetNodeDetail",_.nodeId);if(!ze)return;if(_.type==="note"){const kt=ze.parent_id||ze.parentId||"",Vt=kt?await de("GetNodeDetail",kt):null;if(Vt){await Pt(Vt),sn("notes"),t(36,ne=await de("ListNotes",Vt.id)||[]);const Un=ne.find(On=>On.id===ze.id);Un&&await Fn(Un)}return}if(_.type==="file"){const kt=ze.parent_id||ze.parentId||"",Vt=kt?await de("GetNodeDetail",kt):null;Vt&&(await Pt(Vt),sn("files"),(K=se==null?void 0:se.resetToNode)==null||K.call(se,Vt.id),(fe=se==null?void 0:se.openFileById)==null||fe.call(se,ze.id));return}if(_.type==="folder"){await Pt(ze),sn("files"),(Le=se==null?void 0:se.resetToNode)==null||Le.call(se,ze.id);return}await Pt(ze)}catch(ze){t(34,P=String(ze))}}async function us(){try{t(112,nt=await de("SyncStatus"))}catch{t(112,nt={configured:!1,serverUrl:"",deviceId:"",unpushedOps:0,lastSyncAt:"",syncInterval:0})}}let zo="general";function fs(_){t(116,zo=_||"general"),t(13,h=!0)}function Bo(){t(13,h=!1)}async function $p(){try{t(0,m=await de("ListSystemViewsWithPlugins")||[])}catch{}}function e1(_){const K=Array.isArray(_==null?void 0:_.conflicts)?_.conflicts:[],fe=Array.isArray(_==null?void 0:_.applyErrors)?_.applyErrors:[],Le=[];return K.length>0&&Le.push(v("sync.conflictsCount",{count:K.length})),fe.length>0&&Le.push(v("sync.applyErrorsCount",{count:fe.length})),Le.join(" · ")}async function t1(){t(113,St=!0),t(114,wt=""),t(115,Ot="");try{const _=await de("SyncNow");await us(),t(114,wt=e1(_)),t(115,Ot=wt?"warning":"")}catch(_){console.error("sync error:",_),t(114,wt=`${v("sync.status.error")}: ${(_==null?void 0:_.message)||_}`),t(115,Ot="warning")}finally{t(113,St=!1)}}function n1(_){t(11,d=!1),t(10,c=_),t(89,Mt=!1),window.location.reload()}function l1(_){t(12,p=!1),t(10,c=_),t(89,Mt=!1),window.location.reload()}const i1=_=>_.nodeId===J.id,s1=_=>ci(_.id),o1=()=>fs("sync"),r1=()=>fs(),a1=()=>es(Ct),c1=()=>ts(Ct),u1=()=>de("OpenTrashFolder"),f1=()=>t(34,P=""),d1=()=>t(34,P=""),p1=()=>t(34,P="");function h1(){je=this.value,t(48,je)}const m1=_=>{_.key==="Enter"&&Xi(),_.key==="Escape"&&jn()},g1=()=>Yi(le.id,le.title);function _1(_){An[_?"unshift":"push"](()=>{he=_,t(38,he)})}const b1=_=>sn(_.id),k1=()=>{sn("notes")},v1=()=>{sn("files"),se&&se.addFile()},w1=_=>Fn(_.detail.note),y1=_=>ro(_.detail.title),E1=_=>Fn(_.detail.note),T1=_=>Yi(_.detail.noteId,_.detail.currentTitle),S1=_=>co(_.detail.note);function C1(_){An[_?"unshift":"push"](()=>{se=_,t(39,se)})}const A1=_=>Fn(_.detail),N1=_=>oo(_.detail.nodeId),I1=_=>t(34,P=_.detail.message),M1=_=>gi(_),R1=_=>mi(_),L1=_=>mn(_),D1=_=>Ln(_),O1=_=>_i(_),q1=_=>mn(_),P1=(_,K)=>K.key==="Enter"&&mn(_),z1=_=>Do(_),B1=_=>Oo(_),F1=_=>Ro(_),j1=_=>Lo(_),U1=_=>de("RunAction",_.id),H1=_=>Po(_.id),W1=()=>ui(),G1=_=>_.nodeId===J.id,K1=_=>di(_),V1=_=>ns(_),Z1=_=>pi(_),Y1=(_,K,fe)=>t(60,K[fe]._expanded=!_._expanded,me,t(2,J)),X1=(_,K,fe,Le)=>Le.key==="Enter"&&t(60,K[fe]._expanded=!_._expanded,me,t(2,J)),J1=_=>ll(_),Q1=_=>Ln(_.nodeId),x1=_=>ui(_),$1=_=>Qi(_),eh=_=>ll(_),th=_=>Ln(_.nodeId),nh=_=>is(_),lh=(_,K)=>K.key==="Enter"&&is(_),ih=_=>Sl(_),sh=(_,K)=>K.key==="Enter"&&Sl(_),oh=()=>{t(4,mt="date"),t(5,At=mt==="date"&&At==="desc"?"asc":"desc")},rh=()=>{t(4,mt="name"),t(5,At=mt==="name"&&At==="desc"?"asc":"desc")},ah=()=>{t(4,mt="type"),t(5,At=mt==="type"&&At==="desc"?"asc":"desc")};function ch(){xt=this.checked,t(6,xt)}const uh=_=>gi(_),fh=_=>mi(_),dh=_=>mn(_),ph=_=>Ln(_),hh=_=>_i(_),mh=_=>mn(_),gh=(_,K)=>K.key==="Enter"&&mn(_),_h=_=>gi(_),bh=_=>mi(_),kh=_=>mn(_),vh=_=>Ln(_),wh=_=>_i(_),yh=_=>mn(_),Eh=(_,K)=>K.key==="Enter"&&mn(_),Th=_=>po(_.id),Sh=_=>_.type!=="file"?El(_):Hl(_),Ch=(_,K)=>K.key==="Enter"&&(_.type!=="file"?El(_):Hl(_)),Ah=_=>_.type!=="file"?El(_):Hl(_),Nh=(_,K)=>K.key==="Enter"&&(_.type!=="file"?El(_):Hl(_)),Ih=_=>es($i(_.id)),Mh=_=>ts($i(_.id)),Rh=()=>t(28,W="suggestions"),Lh=()=>t(28,W="worklog"),Dh=_=>Wl(_.nodeId),Oh=(_,K,fe,Le)=>t(60,K[fe].suggestedMin=parseInt(Le.target.value),me),qh=_=>di(_),Ph=_=>ho(_),zh=_=>pi(_),Bh=(_,K,fe)=>t(60,K[fe]._expanded=!_._expanded,me),Fh=(_,K,fe,Le)=>Le.key==="Enter"&&t(60,K[fe]._expanded=!_._expanded,me),jh=_=>ll(_),Uh=_=>Ln(_.nodeId),Hh=()=>hi("csv"),Wh=()=>hi("markdown"),Gh=()=>hi("pdf");function Kh(){I=this.value,t(20,I)}function Vh(){R=this.value,t(21,R)}const Zh=()=>{t(29,G=""),t(26,H=""),_o()};function Yh(){G=this.value,t(29,G)}const Xh=()=>setTimeout(()=>t(31,F=!1),200),Jh=_=>go(_);function Qh(){M=this.checked,t(22,M)}function xh(){z=Ci(this),t(24,z)}function $h(){U=Ci(this),t(25,U)}const em=_=>Wl(_.nodeId),tm=_=>ls(_),nm=(_,K)=>K.key==="Enter"&&ls(_),lm=_=>ui(_),im=_=>Qi(_),sm=_=>ll(_),om=_=>Wl(_),rm=_=>Sl(_),am=_=>ll(_),cm=_=>di(_),um=_=>ns(_),fm=_=>pi(_),dm=_=>Ln(_),pm=_=>mn(_),hm=_=>{ci("trash"),El({id:_,title:""}),el()},mm=_=>Sl(_),gm=(_,K)=>K.key==="Enter"&&Sl(_),_m=()=>t(83,Wt=null),bm=_=>t(83,Wt=_);function km(){tn=this.value,t(81,tn)}const vm=_=>_.key==="Enter"&&no(),wm=_=>eo(_),ym=()=>so($t.node),Em=()=>lo($t.node),Tm=()=>io($t.node),Sm=()=>Ln($t.node);function Cm(){Ge=this.value,t(54,Ge)}function Am(){He=this.value,t(52,He)}function Nm(){Oe=Pl(this.value),t(53,Oe)}function Im(){qe=this.value,t(55,qe)}function Mm(){ue=this.checked,t(56,ue)}function Rm(){be=this.checked,t(57,be)}function Lm(){_e=this.value,t(86,_e)}const Dm=_=>_.key==="Enter"&&cs();function Om(){tt=Ci(this),t(87,tt),t(121,In)}function qm(){ht=this.value,t(88,ht)}const Pm=_=>_.key==="Enter"&&cs();function zm(){hn=this.value,t(105,hn)}function Bm(){Z=this.value,t(108,Z)}const Fm=_=>_.key==="Enter"&&ve&&Io(),jm=_=>No(_);function Um(){It=this.value,t(71,It)}function Hm(){Ut=this.value,t(72,Ut)}function Wm(){cn=this.value,t(73,cn)}const Gm=_=>de("OpenFile",_.detail);function Km(){Me=this.value,t(42,Me)}const Vm=_=>{_.key==="Enter"&&Zi(),_.key==="Escape"&&t(41,Ke=!1)};function Zm(){te=this.value,t(43,te)}const Ym=_=>{_.key==="Enter"&&Zi(),_.key==="Escape"&&t(41,Ke=!1)},Xm=()=>t(41,Ke=!1),Jm=()=>t(41,Ke=!1),Qm=_=>_.key==="Escape"&&t(41,Ke=!1);function xm(){je=this.value,t(48,je)}const $m=_=>{_.key==="Enter"&&Xi(),_.key==="Escape"&&jn()},eg=_=>_.key==="Escape"&&jn();return n.$$.update=()=>{var _;n.$$.dirty[0]&384&&t(77,_l=Oy((Ht==null?void 0:Ht.nodes)||[],Lt)),n.$$.dirty[0]&7&&t(119,l=J?J.title:Y?((_=m.find(K=>K.id===Y))==null?void 0:_.label)||"":v("nav.selectPrompt")),n.$$.dirty[0]&4&&t(118,i=J?ss(J.type):""),n.$$.dirty[0]&56&&t(9,s=Ry(Ze,mt,At)),n.$$.dirty[0]&576&&t(117,o=xt?qt(s):null),n.$$.dirty[7]&16384&&t(78,bn=_t.length===0?v("nav.trash"):[v("nav.trash"),..._t.map(K=>K.title)].join(" / "))},t(79,bl=((Fo=wp())==null?void 0:Fo.title)||v("trash.deletedNodes")),[m,Y,J,Ze,mt,At,xt,Ht,Lt,s,c,d,p,h,g,b,k,y,N,A,I,R,M,D,z,U,H,B,W,G,V,F,L,q,P,ee,ne,le,he,se,Be,Ke,Me,te,re,Ae,Fe,we,je,Ve,Ue,Se,He,Oe,Ge,qe,ue,be,x,ye,me,Ie,it,st,Ye,dt,pe,Pe,ft,gt,jt,It,Ut,cn,un,Nn,Ct,_l,bn,bl,Dt,tn,fn,Wt,$t,$,_e,tt,ht,Mt,nn,Yt,Gt,Fl,Yn,kl,kn,vn,zn,vl,oi,jl,Ul,ri,Bn,hn,wn,Ee,Z,ie,ve,De,nt,St,wt,Ot,zo,o,i,l,X,In,ln,sn,ci,Pt,Qs,Jd,Qd,xs,xd,$d,eo,ep,to,no,tp,xn,np,lp,ip,sp,op,lo,io,Ln,mn,so,oo,ro,Fn,co,uo,rp,Zi,up,fp,Yi,jn,Xi,dp,gp,_p,bp,kp,ui,fo,vp,Qi,el,El,yp,Hl,po,$i,es,ts,Ep,di,pi,Tp,Sp,Cp,Ap,ns,ho,tl,hi,ls,is,Ip,go,_o,Mp,Lp,ss,Dp,Pp,Hp,Gp,Kp,Vp,mi,rs,Yp,No,Io,gi,_i,Ro,as,Xp,Lo,Do,Oo,Jp,qo,cs,Po,Qp,Wl,ll,Sl,xp,us,fs,Bo,$p,t1,n1,l1,_t,i1,s1,o1,r1,a1,c1,u1,f1,d1,p1,h1,m1,g1,_1,b1,k1,v1,w1,y1,E1,T1,S1,C1,A1,N1,I1,M1,R1,L1,D1,O1,q1,P1,z1,B1,F1,j1,U1,H1,W1,G1,K1,V1,Z1,Y1,X1,J1,Q1,x1,$1,eh,th,nh,lh,ih,sh,oh,rh,ah,ch,uh,fh,dh,ph,hh,mh,gh,_h,bh,kh,vh,wh,yh,Eh,Th,Sh,Ch,Ah,Nh,Ih,Mh,Rh,Lh,Dh,Oh,qh,Ph,zh,Bh,Fh,jh,Uh,Hh,Wh,Gh,Kh,Vh,Zh,Yh,Xh,Jh,Qh,xh,$h,em,tm,nm,lm,im,sm,om,rm,am,cm,um,fm,dm,pm,hm,mm,gm,_m,bm,km,vm,wm,ym,Em,Tm,Sm,Cm,Am,Nm,Im,Mm,Rm,Lm,Dm,Om,qm,Pm,zm,Bm,Fm,jm,Um,Hm,Wm,Gm,Km,Vm,Zm,Ym,Xm,Jm,Qm,xm,$m,eg]}class Hy extends ut{constructor(e){super(),ct(this,e,Uy,My,at,{},null,[-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1])}}window.addEventListener("error",n=>{const e=n.error?String(n.error):n.message,t=n.error&&n.error.stack?n.error.stack:"";console.error("[Frontend Error]",e,t);try{window.go&&window.go.main&&window.go.main.App&&typeof window.go.main.App.FrontendLog=="function"&&window.go.main.App.FrontendLog("error",e,t)}catch{}});window.addEventListener("unhandledrejection",n=>{const e=n.reason,t=e instanceof Error?String(e):JSON.stringify(e),l=e instanceof Error&&e.stack?e.stack:"";console.error("[Unhandled Promise Rejection]",t,l);try{window.go&&window.go.main&&window.go.main.App&&typeof window.go.main.App.FrontendLog=="function"&&window.go.main.App.FrontendLog("error","Unhandled rejection: "+t,l)}catch{}});try{new Hy({target:document.getElementById("app")})}catch(n){console.error("[Fatal] App mount failed:",n);const e=document.getElementById("app");e&&(e.innerHTML='

    Frontend Runtime Error

    '+String(n)+"

    "+(n.stack?"
    "+n.stack+"
    ":"")+"
    ")} diff --git a/cmd/verstak-gui/frontend-dist/assets/main-DKrNFx34.css b/cmd/verstak-gui/frontend-dist/assets/main-DKrNFx34.css new file mode 100644 index 0000000..095e052 --- /dev/null +++ b/cmd/verstak-gui/frontend-dist/assets/main-DKrNFx34.css @@ -0,0 +1 @@ +.file-row.svelte-1skuef2.svelte-1skuef2{display:flex;align-items:center;gap:10px;padding:8px 12px;border-radius:6px;cursor:default;transition:background .12s;min-height:52px;-webkit-user-select:none;user-select:none;position:relative}.file-row.svelte-1skuef2.svelte-1skuef2:hover{background:#1e1e30}.file-row--selected.svelte-1skuef2.svelte-1skuef2{background:#1e1e3a;outline:1px solid #3a3a6c}.file-row--selected.svelte-1skuef2.svelte-1skuef2:hover{background:#252545}.file-row.svelte-1skuef2.svelte-1skuef2:focus-visible{outline:2px solid #5588ff;outline-offset:-2px}.file-row-icon.svelte-1skuef2.svelte-1skuef2{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:32px;height:32px;color:#888}.file-row-body.svelte-1skuef2.svelte-1skuef2{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.file-row-name.svelte-1skuef2.svelte-1skuef2{font-size:13px;color:#ddd;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.3}.file-row-meta.svelte-1skuef2.svelte-1skuef2{display:flex;align-items:center;gap:4px;font-size:11px;color:#666}.meta-sep.svelte-1skuef2.svelte-1skuef2{color:#444}.file-row-actions.svelte-1skuef2.svelte-1skuef2{display:flex;gap:2px;align-items:center;opacity:0;transition:opacity .15s ease;flex-shrink:0}.file-row.svelte-1skuef2:hover .file-row-actions.svelte-1skuef2{opacity:1}.action-btn.svelte-1skuef2.svelte-1skuef2{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;border-radius:4px;background:transparent;color:#666;cursor:pointer;transition:background .12s,color .12s}.action-btn.svelte-1skuef2.svelte-1skuef2:hover{background:#2a2a3c;color:#ccc}.action-btn-danger.svelte-1skuef2.svelte-1skuef2:hover{background:#3a2222;color:#ff6b6b}.action-btn.svelte-1skuef2.svelte-1skuef2:focus-visible{outline:2px solid #5588ff;outline-offset:1px}.menu-backdrop.svelte-1skuef2.svelte-1skuef2{position:fixed;top:0;right:0;bottom:0;left:0;z-index:99}.menu.svelte-1skuef2.svelte-1skuef2{position:fixed;background:#1a1a28;border:1px solid #2a2a3c;border-radius:8px;padding:4px;z-index:100;min-width:220px;box-shadow:0 4px 16px #00000080}.menu-item.svelte-1skuef2.svelte-1skuef2{display:flex;align-items:center;gap:8px;width:100%;padding:7px 10px;border:none;background:transparent;color:#ccc;font-size:12px;text-align:left;cursor:pointer;border-radius:4px;font-family:inherit}.menu-item.svelte-1skuef2.svelte-1skuef2:hover{background:#2a2a3c;color:#fff}.menu-item-danger.svelte-1skuef2.svelte-1skuef2{color:#ff6b6b}.menu-item-danger.svelte-1skuef2.svelte-1skuef2:hover{background:#3a2222}.menu-item.svelte-1skuef2.svelte-1skuef2:focus-visible{outline:2px solid #5588ff;outline-offset:1px}.menu-sep.svelte-1skuef2.svelte-1skuef2{height:1px;background:#2a2a3c;margin:4px 8px}.breadcrumbs.svelte-csi2lb{display:flex;align-items:center;gap:4px;padding:8px 0;font-size:13px;color:#999}.sep.svelte-csi2lb{color:#444}.crumb.svelte-csi2lb{font-size:13px}.crumb--current.svelte-csi2lb{color:#ccc}.crumb--link.svelte-csi2lb{background:none;border:none;padding:2px 4px;color:#888;cursor:pointer;border-radius:3px;font-family:inherit;font-size:13px;transition:color .12s,background .12s}.crumb--link.svelte-csi2lb:hover{color:#ccc;background:#1e1e30}.crumb--link.svelte-csi2lb:focus-visible{outline:2px solid #5588ff;outline-offset:1px}.markdown-body.svelte-jdvhib{color:#e4e4ef;font-size:15px;line-height:1.7;word-wrap:break-word;overflow-wrap:break-word;max-width:720px}.md-empty.svelte-jdvhib{color:#555;font-style:italic;padding:24px 0}.md-error.svelte-jdvhib{background:#3a2222;border:1px solid #5a2a2a;border-radius:8px;padding:16px;color:#f88}.md-error-detail.svelte-jdvhib{font-size:12px;color:#c66;margin-top:8px}.markdown-body h1{font-size:28px;font-weight:700;margin:32px 0 16px;padding-bottom:8px;border-bottom:1px solid #2a2a3c;color:#f0f0f8}.markdown-body h2{font-size:22px;font-weight:600;margin:28px 0 14px;padding-bottom:6px;border-bottom:1px solid #22223a;color:#e8e8f0}.markdown-body h3{font-size:18px;font-weight:600;margin:24px 0 12px;color:#ddd}.markdown-body h4{font-size:16px;font-weight:600;margin:20px 0 10px;color:#ccc}.markdown-body h5,.markdown-body h6{font-size:14px;font-weight:600;margin:16px 0 8px;color:#bbb}.markdown-body p{margin:12px 0}.markdown-body .md-link{color:#818cf8;text-decoration:none;border-bottom:1px solid transparent;transition:border-color .15s,color .15s;cursor:pointer}.markdown-body .md-link:hover{color:#a5b4fc;border-bottom-color:#818cf8}.markdown-body .md-link--internal{color:#67e8f9;font-weight:500}.markdown-body .md-link--internal:hover{color:#a5f3fc;border-bottom-color:#67e8f9}.markdown-body .md-link--blocked{color:#666;text-decoration:line-through;cursor:not-allowed}.markdown-body strong{font-weight:700;color:#f0f0f8}.markdown-body em{font-style:italic}.markdown-body del{text-decoration:line-through;color:#888}.markdown-body ul{padding-left:24px;margin:12px 0;list-style-type:disc}.markdown-body ol{padding-left:24px;margin:12px 0;list-style-type:decimal}.markdown-body li{margin:4px 0;line-height:1.6}.markdown-body li>ul,.markdown-body li>ol{margin:4px 0}.markdown-body .md-task-item{list-style:none;display:flex;align-items:flex-start;gap:8px;margin:4px 0}.markdown-body .md-task-checkbox{margin-top:3px;flex-shrink:0;accent-color:#818cf8}.markdown-body .md-task-text{flex:1}.markdown-body blockquote{margin:16px 0;padding:12px 16px;border-left:3px solid #818cf8;background:#818cf80f;border-radius:0 6px 6px 0;color:#bbb;font-style:italic}.markdown-body blockquote p{margin:4px 0}.markdown-body .md-code-inline{background:#1e1e38;color:#f59e0b;padding:2px 6px;border-radius:4px;font-family:SF Mono,Fira Code,Cascadia Code,Consolas,monospace;font-size:13px}.markdown-body .md-code-block{background:#0d1117;border:1px solid #21262d;border-radius:8px;padding:16px;margin:16px 0;overflow-x:auto;font-family:SF Mono,Fira Code,Cascadia Code,Consolas,monospace;font-size:13px;line-height:1.55;color:#c9d1d9}.markdown-body .md-code-block code{background:none;padding:0;border-radius:0;font-size:inherit}.markdown-body .hljs{color:#c9d1d9}.markdown-body .hljs-comment{color:#8b949e}.markdown-body .hljs-keyword{color:#ff7b72}.markdown-body .hljs-string{color:#a5d6ff}.markdown-body .hljs-number{color:#79c0ff}.markdown-body .hljs-function{color:#d2a8ff}.markdown-body .hljs-class,.markdown-body .hljs-variable{color:#ffa657}.markdown-body .hljs-operator{color:#ff7b72}.markdown-body .hljs-punctuation{color:#c9d1d9}.markdown-body .hljs-tag{color:#7ee787}.markdown-body .hljs-attr{color:#79c0ff}.markdown-body .hljs-title{color:#d2a8ff}.markdown-body .hljs-built_in{color:#ffa657}.markdown-body .hljs-literal{color:#79c0ff}.markdown-body .hljs-type{color:#ffa657}.markdown-body .hljs-params{color:#c9d1d9}.markdown-body .hljs-property{color:#79c0ff}.markdown-body .hljs-regexp{color:#a5d6ff}.markdown-body .hljs-meta{color:#8b949e}.markdown-body .hljs-doctag{color:#ff7b72}.markdown-body .hljs-name{color:#7ee787}.markdown-body .hljs-section{color:#1f6feb;font-weight:700}.markdown-body .hljs-symbol{color:#79c0ff}.markdown-body .hljs-bullet{color:#f2cc60}.markdown-body .hljs-code{color:#c9d1d9}.markdown-body .hljs-emphasis{font-style:italic}.markdown-body .hljs-strong{font-weight:700}.markdown-body .hljs-addition{color:#aff5b4;background:#033a16}.markdown-body .hljs-deletion{color:#ffdcd7;background:#67060c}.markdown-body table{width:100%;border-collapse:collapse;margin:16px 0;font-size:14px}.markdown-body thead{background:#1a1a2e}.markdown-body th{padding:10px 14px;text-align:left;font-weight:600;color:#c4c4d4;border-bottom:2px solid #2a2a3c}.markdown-body td{padding:8px 14px;border-bottom:1px solid #1e1e30}.markdown-body tbody tr:hover{background:#818cf80a}.markdown-body hr{border:none;border-top:1px solid #2a2a3c;margin:24px 0}.markdown-body .md-image-blocked{display:inline-block;background:#1a1a2e;border:1px dashed #3a3a5c;border-radius:6px;padding:8px 14px;color:#666;font-size:13px;font-style:italic;margin:8px 0}.overlay.svelte-1h605ik{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000a6;display:flex;align-items:center;justify-content:center;z-index:1000}.modal.svelte-1h605ik{background:#14141f;border:1px solid #2a2a3c;border-radius:10px;width:90vw;max-width:900px;height:85vh;max-height:700px;display:flex;flex-direction:column;overflow:hidden}.preview-header.svelte-1h605ik{display:flex;align-items:center;gap:10px;padding:12px 16px;border-bottom:1px solid #2a2a3c;flex-shrink:0}.preview-title.svelte-1h605ik{display:flex;align-items:center;gap:8px;color:#ddd;font-size:14px;min-width:0}.preview-name.svelte-1h605ik{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.preview-meta.svelte-1h605ik{font-size:11px;color:#666;margin-left:auto;white-space:nowrap}.preview-actions.svelte-1h605ik{display:flex;gap:4px;flex-shrink:0;margin-left:8px}.action-btn.svelte-1h605ik{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border:none;border-radius:4px;background:transparent;color:#666;cursor:pointer;transition:background .12s,color .12s}.action-btn.svelte-1h605ik:hover{background:#2a2a3c;color:#ccc}.action-btn.svelte-1h605ik:focus-visible{outline:2px solid #5588ff;outline-offset:1px}.action-btn-close.svelte-1h605ik{color:#ff6b6b}.action-btn-close.svelte-1h605ik:hover{background:#3a2222;color:#f44}.preview-body.svelte-1h605ik{flex:1;overflow:auto;min-height:0}.preview-status.svelte-1h605ik{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:48px 24px;color:#888;font-size:14px}.preview-image-container.svelte-1h605ik{display:flex;align-items:center;justify-content:center;padding:16px;min-height:200px;background:#0e0e18}.preview-image.svelte-1h605ik{max-width:100%;max-height:calc(85vh - 100px);object-fit:contain;border-radius:4px}.preview-text.svelte-1h605ik{margin:0;padding:16px;font-family:SF Mono,Fira Code,Cascadia Code,Consolas,monospace;font-size:12px;line-height:1.5;color:#ccc;white-space:pre-wrap;word-wrap:break-word;overflow:auto}.preview-pdf-container.svelte-1h605ik{width:100%;height:100%}.preview-pdf.svelte-1h605ik{width:100%;height:100%;border:none}.btn-sm.svelte-1h605ik{padding:6px 14px;border:1px solid #2a2a3c;background:#1a1a28;color:#ccc;border-radius:6px;cursor:pointer;font-size:12px;font-family:inherit;transition:background .12s}.btn-sm.svelte-1h605ik:hover{background:#223}.preview-footer.svelte-1h605ik{display:flex;justify-content:flex-end;gap:8px;padding:10px 16px;border-top:1px solid #2a2a3c;flex-shrink:0}.preview-markdown-container.svelte-1h605ik{flex:1;overflow:auto;min-height:0;padding:16px}.overlay.svelte-1fv6yyk{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:200}.modal.svelte-1fv6yyk{background:#1a1a28;border:1px solid #2a2a3c;border-radius:12px;padding:24px;width:360px;max-width:90vw}h3.svelte-1fv6yyk{font-size:18px;margin-bottom:12px;color:#e4e4ef}.message.svelte-1fv6yyk{font-size:14px;color:#aaa;margin-bottom:20px;line-height:1.4}.actions.svelte-1fv6yyk{display:flex;gap:8px;justify-content:flex-end}.btn.svelte-1fv6yyk{padding:8px 16px;border:1px solid #2a2a3c;background:#1a1a28;color:#ccc;border-radius:6px;cursor:pointer;font-size:13px;font-family:inherit}.btn.svelte-1fv6yyk:hover{background:#223}.btn-primary.svelte-1fv6yyk{background:#6366f1;border-color:#6366f1;color:#fff}.btn-primary.svelte-1fv6yyk:hover{background:#4f46e5}.btn-danger.svelte-1fv6yyk{background:#dc2626;border-color:#dc2626;color:#fff}.btn-danger.svelte-1fv6yyk:hover{background:#b91c1c}.btn.svelte-1fv6yyk:focus-visible{outline:2px solid #5588ff;outline-offset:1px}.tree-item.svelte-zj71cl.svelte-zj71cl{display:flex;align-items:center;height:32px;padding-right:8px;cursor:default;font-size:13px;color:#ccc;-webkit-user-select:none;user-select:none}.tree-item.svelte-zj71cl.svelte-zj71cl:hover{background:#223}.tree-item.selected.svelte-zj71cl.svelte-zj71cl{background:#2a2a4a;color:#fff;font-weight:500}.tree-item.drop-valid.svelte-zj71cl.svelte-zj71cl{background:#1a3a1a;outline:1px solid #4ade80;outline-offset:-1px}.tree-item.drop-invalid.svelte-zj71cl.svelte-zj71cl{background:#3a1a1a;outline:1px solid #ff6b6b;outline-offset:-1px}.tree-toggle.svelte-zj71cl.svelte-zj71cl{background:none;border:none;color:#666;cursor:pointer;padding:0;width:20px;height:32px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;font-family:inherit;line-height:1;font-size:12px}.tree-toggle.svelte-zj71cl.svelte-zj71cl:hover{color:#a5b4fc}.tree-toggle-placeholder.svelte-zj71cl.svelte-zj71cl{display:inline-block;width:20px;flex-shrink:0}.tree-icon.svelte-zj71cl.svelte-zj71cl{display:inline-flex;align-items:center;justify-content:center;width:20px;height:32px;flex-shrink:0;color:#888;margin-right:4px;cursor:pointer}.tree-icon.svelte-zj71cl.svelte-zj71cl:hover,.tree-item.selected.svelte-zj71cl .tree-icon.svelte-zj71cl{color:#a5b4fc}.tree-label.svelte-zj71cl.svelte-zj71cl{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;line-height:32px}.first-run-screen.svelte-a9f1pd.svelte-a9f1pd{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:2rem;background:var(--bg, #13131f)}.first-run-card.svelte-a9f1pd.svelte-a9f1pd{max-width:520px;width:100%;padding:2.5rem;background:var(--surface, #1e1e2e);border-radius:12px;border:1px solid var(--border, #2a2a3e);text-align:center}.first-run-logo.svelte-a9f1pd.svelte-a9f1pd{display:block;width:64px;height:64px;margin:0 auto .5rem}.first-run-card.svelte-a9f1pd h1.svelte-a9f1pd{margin:0 0 .75rem;font-size:1.5rem;color:var(--text, #e0e0e0)}.first-run-desc.svelte-a9f1pd.svelte-a9f1pd{color:var(--text-dim, #888);margin-bottom:1.5rem;font-size:.9rem;line-height:1.5}.input-row.svelte-a9f1pd.svelte-a9f1pd{display:flex;gap:.5rem}.input-row.svelte-a9f1pd input.svelte-a9f1pd{flex:1}.path-info.svelte-a9f1pd.svelte-a9f1pd{text-align:left;font-size:.85rem;padding:.5rem .75rem;margin-top:.5rem;background:var(--surface-alt, #252538);border-radius:6px;color:var(--text-dim, #888)}.error-msg.svelte-a9f1pd.svelte-a9f1pd{text-align:left;font-size:.85rem;padding:.5rem .75rem;margin-top:.5rem;background:#ff6b6b1a;border:1px solid rgba(255,107,107,.3);border-radius:6px;color:#ff6b6b}.first-run-actions.svelte-a9f1pd.svelte-a9f1pd{display:flex;gap:.75rem;justify-content:center;margin-top:1.5rem}.btn-lg.svelte-a9f1pd.svelte-a9f1pd{padding:.65rem 1.5rem;font-size:1rem}.form-group.svelte-a9f1pd.svelte-a9f1pd{margin-bottom:1rem;text-align:left}.form-label.svelte-a9f1pd.svelte-a9f1pd{display:block;font-size:.85rem;color:var(--text-dim, #888);margin-bottom:.4rem}.recovery-screen.svelte-s3o8c3.svelte-s3o8c3{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:2rem;background:var(--bg, #13131f)}.recovery-card.svelte-s3o8c3.svelte-s3o8c3{max-width:480px;width:100%;padding:2.5rem;background:var(--surface, #1e1e2e);border-radius:12px;border:1px solid var(--border, #2a2a3e);text-align:center}.recovery-icon.svelte-s3o8c3.svelte-s3o8c3{font-size:2.5rem;margin-bottom:.5rem;color:#f59e0b}.recovery-card.svelte-s3o8c3 h1.svelte-s3o8c3{margin:0 0 .75rem;font-size:1.4rem;color:var(--text, #e0e0e0)}.recovery-desc.svelte-s3o8c3.svelte-s3o8c3{color:var(--text-dim, #888);margin-bottom:.5rem;font-size:.9rem}.recovery-path.svelte-s3o8c3.svelte-s3o8c3{display:block;padding:.5rem .75rem;background:var(--surface-alt, #252538);border-radius:6px;font-size:.85rem;color:var(--text-dim, #aaa);word-break:break-all;margin-bottom:1.5rem}.error-msg.svelte-s3o8c3.svelte-s3o8c3{padding:.5rem .75rem;margin-bottom:1rem;background:#ff6b6b1a;border:1px solid rgba(255,107,107,.3);border-radius:6px;color:#ff6b6b;font-size:.85rem}.recovery-actions.svelte-s3o8c3.svelte-s3o8c3{display:flex;flex-direction:column;gap:.6rem}.btn-lg.svelte-s3o8c3.svelte-s3o8c3{padding:.65rem 1.25rem;font-size:.95rem;width:100%}.modal-desc.svelte-s3o8c3.svelte-s3o8c3{color:var(--text-dim, #888);font-size:.9rem;line-height:1.5;margin-bottom:1rem}.modal-overlay.svelte-s3o8c3.svelte-s3o8c3{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000}.modal.svelte-s3o8c3.svelte-s3o8c3{background:var(--surface, #1e1e2e);border:1px solid var(--border, #2a2a3e);border-radius:10px;padding:1.5rem;max-width:420px;width:90%}.modal.svelte-s3o8c3 h3.svelte-s3o8c3{margin:0 0 .75rem}.modal-actions.svelte-s3o8c3.svelte-s3o8c3{display:flex;gap:.5rem;justify-content:flex-end}.settings-sidebar.svelte-8ag2z0{width:200px;min-width:200px;border-right:1px solid var(--border, #2a2a3e);padding:.75rem 0;overflow-y:auto;background:var(--surface, #1e1e2e)}.settings-nav-item.svelte-8ag2z0{display:flex;align-items:center;gap:.5rem;width:100%;padding:.55rem 1rem;border:none;background:transparent;color:var(--text-dim, #888);font-size:.9rem;cursor:pointer;text-align:left;transition:background .15s,color .15s;font-family:inherit}.settings-nav-item.svelte-8ag2z0:hover:not(.disabled){background:var(--surface-alt, #252538);color:var(--text, #e0e0e0)}.settings-nav-item.active.svelte-8ag2z0{background:var(--accent-bg, rgba(99, 102, 241, .15));color:var(--accent, #818cf8);font-weight:600;position:relative}.settings-nav-item.active.svelte-8ag2z0:before{content:"";position:absolute;left:0;top:4px;bottom:4px;width:3px;background:var(--accent, #818cf8);border-radius:0 2px 2px 0}.settings-nav-item.disabled.svelte-8ag2z0{opacity:.4;cursor:default}.settings-nav-icon.svelte-8ag2z0{width:1.4rem;height:1rem;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.settings-nav-label.svelte-8ag2z0{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.settings-section.svelte-1e2uhdh.svelte-1e2uhdh{padding:1.5rem;max-width:560px}.settings-section.svelte-1e2uhdh h2.svelte-1e2uhdh{margin:0 0 .25rem;font-size:1.2rem;color:var(--text, #e0e0e0)}.section-desc.svelte-1e2uhdh.svelte-1e2uhdh{color:var(--text-dim, #888);font-size:.85rem;margin-bottom:1.25rem;line-height:1.4}.settings-card.svelte-1e2uhdh.svelte-1e2uhdh{background:var(--surface-alt, #1e1e30);border:1px solid var(--border, #2a2a3e);border-radius:8px;padding:1rem 1.25rem;margin-bottom:1rem}.card-title.svelte-1e2uhdh.svelte-1e2uhdh{font-size:.9rem;font-weight:600;color:var(--text, #e0e0e0);margin:0 0 .75rem}.form-group.svelte-1e2uhdh.svelte-1e2uhdh{margin-bottom:0}.label-text.svelte-1e2uhdh.svelte-1e2uhdh{display:block;font-size:.85rem;color:var(--text-dim, #888);margin-bottom:.3rem}.settings-actions.svelte-1e2uhdh.svelte-1e2uhdh{display:flex;align-items:center;gap:.75rem;margin-top:1rem}.save-notice.svelte-1e2uhdh.svelte-1e2uhdh{padding:.4rem .75rem;background:#34d3991a;border:1px solid rgba(52,211,153,.3);border-radius:6px;color:#34d399;font-size:.85rem}.settings-section.svelte-1zbky3.svelte-1zbky3{padding:1.5rem;max-width:600px}.settings-section.svelte-1zbky3 h2.svelte-1zbky3{margin:0 0 .25rem;font-size:1.2rem;color:var(--text, #e0e0e0)}.section-desc.svelte-1zbky3.svelte-1zbky3{color:var(--text-dim, #888);font-size:.85rem;margin-bottom:1.25rem;line-height:1.4}.settings-card.svelte-1zbky3.svelte-1zbky3{background:var(--surface-alt, #1e1e30);border:1px solid var(--border, #2a2a3e);border-radius:8px;padding:1rem 1.25rem;margin-bottom:1rem}.notice.svelte-1zbky3.svelte-1zbky3{padding:.5rem .75rem;margin-bottom:.75rem;background:#ff6b6b1a;border:1px solid rgba(255,107,107,.3);border-radius:6px;color:#ff6b6b;font-size:.85rem}.info-row.svelte-1zbky3.svelte-1zbky3{display:flex;padding:.4rem 0;border-bottom:1px solid var(--border, #2a2a3e);font-size:.9rem}.info-row.svelte-1zbky3.svelte-1zbky3:last-child{border-bottom:none}.info-label.svelte-1zbky3.svelte-1zbky3{width:120px;min-width:120px;color:var(--text-dim, #888)}.info-value.svelte-1zbky3.svelte-1zbky3{color:var(--text, #e0e0e0);word-break:break-all}.info-value.mono.svelte-1zbky3.svelte-1zbky3{font-family:monospace;font-size:.85rem}.info-value.small.svelte-1zbky3.svelte-1zbky3{font-size:.8rem}.workspace-actions.svelte-1zbky3.svelte-1zbky3{display:flex;gap:.5rem;flex-wrap:wrap;margin-top:.5rem}.btn.svelte-1zbky3.svelte-1zbky3{padding:.45rem .8rem;border:1px solid var(--border, #2a2a3e);border-radius:6px;background:var(--surface-light, #232338);color:var(--text, #e0e0e0);font-size:.85rem;cursor:pointer}.btn.svelte-1zbky3.svelte-1zbky3:hover{background:var(--accent, #4a7c59);border-color:var(--accent, #4a7c59)}.no-data.svelte-1zbky3.svelte-1zbky3{color:var(--text-dim, #888);font-style:italic;margin:0}.settings-section.svelte-ksamnw.svelte-ksamnw{padding:1.5rem;max-width:560px}.settings-section.svelte-ksamnw h2.svelte-ksamnw{margin:0 0 .25rem;font-size:1.2rem;color:var(--text, #e0e0e0)}.section-desc.svelte-ksamnw.svelte-ksamnw{color:var(--text-dim, #888);font-size:.85rem;margin-bottom:1.25rem;line-height:1.4}.loading.svelte-ksamnw.svelte-ksamnw,.no-data.svelte-ksamnw.svelte-ksamnw{color:var(--text-dim, #888);font-style:italic}.template-list.svelte-ksamnw.svelte-ksamnw{display:flex;flex-direction:column;gap:.5rem}.template-item.svelte-ksamnw.svelte-ksamnw{display:flex;align-items:center;justify-content:space-between;padding:.6rem .75rem;background:var(--surface-alt, #252538);border-radius:6px;border:1px solid var(--border, #2a2a3e)}.template-info.svelte-ksamnw.svelte-ksamnw{display:flex;align-items:center;gap:.5rem}.template-name.svelte-ksamnw.svelte-ksamnw{color:var(--text, #e0e0e0);font-size:.9rem}.template-type.svelte-ksamnw.svelte-ksamnw{color:var(--text-dim, #888);font-size:.8rem}.toggle-label.svelte-ksamnw.svelte-ksamnw{display:flex;align-items:center;gap:.4rem;cursor:pointer}.toggle-text.svelte-ksamnw.svelte-ksamnw{font-size:.8rem;color:var(--text-dim, #888)}input[type=checkbox].svelte-ksamnw.svelte-ksamnw{accent-color:var(--accent, #818cf8)}.settings-plugins.svelte-i9gngw.svelte-i9gngw{padding:1.5rem}h3.svelte-i9gngw.svelte-i9gngw{margin:0 0 .25rem;font-size:1.1rem;color:var(--text, #e0e0e0)}.hint.svelte-i9gngw.svelte-i9gngw{margin:0 0 1rem;font-size:.85rem;color:var(--text-dim, #888)}.loading.svelte-i9gngw.svelte-i9gngw{color:var(--text-dim, #888)}.error.svelte-i9gngw.svelte-i9gngw{color:#f87171;background:#f871711a;padding:.5rem .75rem;border-radius:6px}.empty-state.svelte-i9gngw.svelte-i9gngw{text-align:center;padding:3rem 1rem;color:var(--text-dim, #888)}.empty-state.svelte-i9gngw code.svelte-i9gngw{background:var(--surface-alt, #252538);padding:.15rem .4rem;border-radius:3px;font-size:.85rem}.plugin-list.svelte-i9gngw.svelte-i9gngw{display:flex;flex-direction:column;gap:.5rem}.plugin-card.svelte-i9gngw.svelte-i9gngw{display:flex;align-items:center;justify-content:space-between;background:var(--surface, #1e1e2e);border:1px solid var(--border, #2a2a3e);border-radius:8px;padding:.75rem 1rem;gap:1rem}.plugin-info.svelte-i9gngw.svelte-i9gngw{flex:1;min-width:0}.plugin-name.svelte-i9gngw.svelte-i9gngw{font-weight:600;color:var(--text, #e0e0e0);display:flex;align-items:center;gap:.5rem}.plugin-version.svelte-i9gngw.svelte-i9gngw{font-size:.75rem;color:var(--text-dim, #888);font-weight:400}.plugin-desc.svelte-i9gngw.svelte-i9gngw{font-size:.85rem;color:var(--text-dim, #aaa);margin-top:.15rem}.plugin-meta.svelte-i9gngw.svelte-i9gngw{display:flex;flex-wrap:wrap;gap:.25rem .75rem;margin-top:.25rem;font-size:.75rem;color:var(--text-dim, #888)}.plugin-toggle.svelte-i9gngw.svelte-i9gngw{flex-shrink:0}.toggle-btn.svelte-i9gngw.svelte-i9gngw{position:relative;width:44px;height:24px;background:var(--surface-alt, #333);border-radius:12px;border:1px solid var(--border, #444);cursor:pointer;padding:0;transition:background .2s}.toggle-btn.active.svelte-i9gngw.svelte-i9gngw{background:#6366f1;border-color:#6366f1}.toggle-knob.svelte-i9gngw.svelte-i9gngw{position:absolute;top:2px;left:2px;width:18px;height:18px;background:#fff;border-radius:50%;transition:left .2s;box-shadow:0 1px 3px #0000004d}.toggle-btn.active.svelte-i9gngw .toggle-knob.svelte-i9gngw{left:22px}.toggle-group.svelte-i9gngw.svelte-i9gngw{display:flex;align-items:center;gap:6px}.install-btn.svelte-i9gngw.svelte-i9gngw{padding:6px 14px;background:#6366f1;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:13px;white-space:nowrap}.install-btn.svelte-i9gngw.svelte-i9gngw:hover{filter:brightness(1.15)}.uninstall-btn.svelte-i9gngw.svelte-i9gngw{width:28px;height:28px;background:var(--surface, #1a1a2e);color:#ef4444;border:1px solid rgba(239,68,68,.3);border-radius:6px;cursor:pointer;font-size:14px;display:flex;align-items:center;justify-content:center;opacity:.6;transition:all .15s}.uninstall-btn.svelte-i9gngw.svelte-i9gngw:hover{opacity:1;background:#ef44441a}.settings-section.svelte-1fx1e1e.svelte-1fx1e1e{padding:1.5rem;max-width:600px}.settings-section.svelte-1fx1e1e h2.svelte-1fx1e1e{margin:0 0 .25rem;font-size:1.2rem;color:var(--text, #e0e0e0)}.section-desc.svelte-1fx1e1e.svelte-1fx1e1e{color:var(--text-dim, #888);font-size:.85rem;margin-bottom:1.25rem;line-height:1.4}.settings-card.svelte-1fx1e1e.svelte-1fx1e1e{background:var(--surface-alt, #1e1e30);border:1px solid var(--border, #2a2a3e);border-radius:8px;padding:1rem 1.25rem;margin-bottom:1rem}.info-row.svelte-1fx1e1e.svelte-1fx1e1e{display:flex;padding:.4rem 0;border-bottom:1px solid var(--border, #2a2a3e);font-size:.9rem}.info-row.svelte-1fx1e1e.svelte-1fx1e1e:last-child{border-bottom:none}.info-label.svelte-1fx1e1e.svelte-1fx1e1e{width:180px;min-width:180px;color:var(--text-dim, #888)}.info-value.svelte-1fx1e1e.svelte-1fx1e1e{color:var(--text, #e0e0e0);word-break:break-all}.info-value.mono.svelte-1fx1e1e.svelte-1fx1e1e{font-family:monospace;font-size:.85rem}.info-value.error.svelte-1fx1e1e.svelte-1fx1e1e{color:#ff6b6b}.status-ok.svelte-1fx1e1e.svelte-1fx1e1e{color:#34d399;font-weight:600}.status-err.svelte-1fx1e1e.svelte-1fx1e1e{color:#ff6b6b}.sync-actions.svelte-1fx1e1e.svelte-1fx1e1e{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:1rem}.sync-interval.svelte-1fx1e1e.svelte-1fx1e1e{margin-bottom:0}.interval-row.svelte-1fx1e1e.svelte-1fx1e1e{display:flex;gap:.5rem;align-items:center}.interval-row.svelte-1fx1e1e input.svelte-1fx1e1e{width:100px}.sync-setup.svelte-1fx1e1e .form-group.svelte-1fx1e1e{margin-bottom:1rem}.sync-setup.svelte-1fx1e1e .form-group.svelte-1fx1e1e:last-of-type{margin-bottom:0}.sync-setup-actions.svelte-1fx1e1e.svelte-1fx1e1e{display:flex;gap:.5rem;margin-top:1rem}.connection-result.svelte-1fx1e1e.svelte-1fx1e1e{margin-top:.75rem;padding:.4rem .75rem;border-radius:6px;font-size:.85rem}.connection-result.ok.svelte-1fx1e1e.svelte-1fx1e1e{background:#34d3991a;border:1px solid rgba(52,211,153,.3);color:#34d399}.connection-result.fail.svelte-1fx1e1e.svelte-1fx1e1e{background:#ff6b6b1a;border:1px solid rgba(255,107,107,.3);color:#ff6b6b}.error-msg.svelte-1fx1e1e.svelte-1fx1e1e{padding:.5rem .75rem;margin-bottom:.75rem;background:#ff6b6b1a;border:1px solid rgba(255,107,107,.3);border-radius:6px;color:#ff6b6b;font-size:.85rem}.result-msg.svelte-1fx1e1e.svelte-1fx1e1e{padding:.5rem .75rem;margin-bottom:.75rem;background:#34d3991a;border:1px solid rgba(52,211,153,.3);border-radius:6px;color:#34d399;font-size:.85rem}.result-msg.warning.svelte-1fx1e1e.svelte-1fx1e1e{background:#f59e0b1a;border-color:#f59e0b4d;color:#f59e0b}.modal-overlay.svelte-1fx1e1e.svelte-1fx1e1e{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;border:none;padding:0;cursor:pointer;width:100%;color:inherit;font:inherit}.modal.svelte-1fx1e1e.svelte-1fx1e1e{background:var(--surface, #1e1e2e);border:1px solid var(--border, #2a2a3e);border-radius:10px;padding:1.5rem;max-width:420px;width:90%;cursor:default}.modal.svelte-1fx1e1e h3.svelte-1fx1e1e{margin:0 0 .75rem}.modal-desc.svelte-1fx1e1e.svelte-1fx1e1e{color:var(--text-dim, #888);font-size:.9rem;line-height:1.5;margin-bottom:1rem}.modal-actions.svelte-1fx1e1e.svelte-1fx1e1e{display:flex;gap:.5rem;justify-content:flex-end}.settings-section.svelte-19bo7bn.svelte-19bo7bn{padding:1.5rem;max-width:500px}.settings-section.svelte-19bo7bn h2.svelte-19bo7bn{margin:0 0 .5rem;font-size:1.2rem;color:var(--text, #e0e0e0)}.section-desc.svelte-19bo7bn.svelte-19bo7bn{color:var(--text-dim, #888);font-size:.85rem}.settings-section.svelte-13i6m7m.svelte-13i6m7m{padding:1.5rem;max-width:600px}.settings-section.svelte-13i6m7m h2.svelte-13i6m7m{margin:0 0 .25rem;font-size:1.2rem;color:var(--text, #e0e0e0)}.section-desc.svelte-13i6m7m.svelte-13i6m7m{color:var(--text-dim, #888);font-size:.85rem;margin-bottom:1.25rem;line-height:1.4}.settings-card.svelte-13i6m7m.svelte-13i6m7m{background:var(--surface-alt, #1e1e30);border:1px solid var(--border, #2a2a3e);border-radius:8px;padding:1rem 1.25rem;margin-bottom:1rem}.form-group.svelte-13i6m7m.svelte-13i6m7m{margin-bottom:1rem}.form-group.svelte-13i6m7m.svelte-13i6m7m:last-child{margin-bottom:0}.label-text.svelte-13i6m7m.svelte-13i6m7m{display:block;color:var(--text-dim, #888);font-size:.85rem;margin-bottom:.35rem}input[type=number].svelte-13i6m7m.svelte-13i6m7m{width:120px;padding:.4rem .6rem;background:var(--bg, #13131f);border:1px solid var(--border, #2a2a3e);border-radius:6px;color:var(--text, #e0e0e0);font-size:.9rem}input[type=number].svelte-13i6m7m.svelte-13i6m7m:disabled{opacity:.5}.field-hint.svelte-13i6m7m.svelte-13i6m7m{color:var(--text-dim, #666);font-size:.75rem;margin-top:.35rem}.toggle-label.svelte-13i6m7m.svelte-13i6m7m{display:flex;align-items:center;gap:.5rem;cursor:pointer}.toggle-text.svelte-13i6m7m.svelte-13i6m7m{color:var(--text, #e0e0e0);font-size:.9rem}.bridge-status.svelte-13i6m7m.svelte-13i6m7m{margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--border, #2a2a3e)}.info-row.svelte-13i6m7m.svelte-13i6m7m{display:flex;padding:.3rem 0;font-size:.85rem}.info-label.svelte-13i6m7m.svelte-13i6m7m{width:140px;min-width:140px;color:var(--text-dim, #888)}.info-value.svelte-13i6m7m.svelte-13i6m7m{color:var(--text, #e0e0e0)}.info-value.mono.svelte-13i6m7m.svelte-13i6m7m{font-family:monospace;font-size:.85rem}.status-ok.svelte-13i6m7m.svelte-13i6m7m{color:#34d399;font-weight:600}.status-off.svelte-13i6m7m.svelte-13i6m7m{color:#888}.actions.svelte-13i6m7m.svelte-13i6m7m{display:flex;gap:.5rem;flex-wrap:wrap}.status-msg.svelte-13i6m7m.svelte-13i6m7m{padding:.5rem .75rem;margin-bottom:.75rem;border-radius:6px;font-size:.85rem}.status-msg.ok.svelte-13i6m7m.svelte-13i6m7m{background:#34d3991a;border:1px solid rgba(52,211,153,.3);color:#34d399}.status-msg.error.svelte-13i6m7m.svelte-13i6m7m{background:#ff6b6b1a;border:1px solid rgba(255,107,107,.3);color:#ff6b6b}.settings-overlay.svelte-zf2zsc.svelte-zf2zsc{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:900;border:none;padding:0;cursor:pointer;width:100%;color:inherit;font:inherit}.settings-window.svelte-zf2zsc.svelte-zf2zsc{display:flex;flex-direction:column;width:800px;max-width:90vw;height:600px;max-height:85vh;background:var(--surface, #1e1e2e);border:1px solid var(--border, #2a2a3e);border-radius:12px;overflow:hidden;box-shadow:0 8px 32px #0006}.settings-header.svelte-zf2zsc.svelte-zf2zsc{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;border-bottom:1px solid var(--border, #2a2a3e);flex-shrink:0}.settings-header.svelte-zf2zsc h2.svelte-zf2zsc{margin:0;font-size:1.1rem;color:var(--text, #e0e0e0)}.close-btn.svelte-zf2zsc.svelte-zf2zsc{background:transparent;border:none;color:var(--text-dim, #888);cursor:pointer;padding:.25rem;border-radius:4px;display:flex;align-items:center}.close-btn.svelte-zf2zsc.svelte-zf2zsc:hover{color:var(--text, #e0e0e0);background:var(--surface-alt, #252538)}.settings-body.svelte-zf2zsc.svelte-zf2zsc{display:flex;flex:1;overflow:hidden}.settings-content.svelte-zf2zsc.svelte-zf2zsc{flex:1;overflow-y:auto;background:var(--bg, #13131f)}.sync-status-widget.svelte-1rxbx0{font-size:.8rem;padding:.4rem .5rem}.sync-status-row.svelte-1rxbx0{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap}.sync-dot.svelte-1rxbx0{width:8px;height:8px;border-radius:50%;flex-shrink:0}.dot-connected.svelte-1rxbx0{background:#34d399;box-shadow:0 0 4px #34d39966}.dot-warning.svelte-1rxbx0{background:#f59e0b}.dot-disabled.svelte-1rxbx0{background:#555}.dot-syncing.svelte-1rxbx0{background:#818cf8;animation:svelte-1rxbx0-pulse 1s infinite}@keyframes svelte-1rxbx0-pulse{0%,to{opacity:1}50%{opacity:.4}}.sync-label.svelte-1rxbx0{color:var(--text-dim, #888);white-space:nowrap}.sync-count.svelte-1rxbx0{color:var(--accent, #818cf8);font-weight:600}.sync-actions-row.svelte-1rxbx0{display:flex;gap:.3rem;margin-left:auto}.sync-message.svelte-1rxbx0{margin-top:.25rem;color:var(--text-dim, #888);line-height:1.25}.sync-message-warning.svelte-1rxbx0{color:#f59e0b}.btn-xs.svelte-1rxbx0{padding:.2rem .5rem;font-size:.75rem;border:1px solid var(--border, #2a2a3e);background:var(--surface-alt, #252538);color:var(--text-dim, #888);border-radius:4px;cursor:pointer;white-space:nowrap}.btn-xs.svelte-1rxbx0:hover{background:var(--border, #2a2a3e);color:var(--text, #e0e0e0)}.btn-xs.svelte-1rxbx0:disabled{opacity:.5;cursor:default}.btn-link.svelte-1rxbx0{border:none;background:transparent;color:var(--accent, #818cf8);text-decoration:underline}.btn-link.svelte-1rxbx0:hover{color:#a5b4fc;background:transparent}.browser-events.svelte-slao4o.svelte-slao4o{padding:8px 0}.browser-header.svelte-slao4o.svelte-slao4o{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;padding:0 4px}.browser-header.svelte-slao4o h3.svelte-slao4o{font-size:12px;text-transform:uppercase;letter-spacing:.5px;color:var(--text-dim, #8892b0);margin:0}.refresh-btn.svelte-slao4o.svelte-slao4o{background:var(--surface2, #1e2d50);border:none;border-radius:4px;padding:4px 8px;cursor:pointer;font-size:12px;transition:background .2s}.refresh-btn.svelte-slao4o.svelte-slao4o:hover{background:var(--surface, #16213e)}.empty-state.svelte-slao4o.svelte-slao4o{padding:24px;text-align:center}.empty-text.svelte-slao4o.svelte-slao4o,.loading.svelte-slao4o.svelte-slao4o{color:var(--text-dim, #8892b0);font-style:italic;font-size:12px}.event-list.svelte-slao4o.svelte-slao4o{display:flex;flex-direction:column;gap:4px}.event-item.svelte-slao4o.svelte-slao4o{display:flex;gap:8px;padding:6px 8px;background:var(--surface, #16213e);border-radius:6px;transition:background .15s}.event-item.pending.svelte-slao4o.svelte-slao4o{border-left:2px solid var(--accent, #0f9b8e)}.event-icon.svelte-slao4o.svelte-slao4o{font-size:16px;line-height:1.4;min-width:20px;text-align:center}.event-body.svelte-slao4o.svelte-slao4o{flex:1;min-width:0}.event-domain.svelte-slao4o.svelte-slao4o{font-size:11px;color:var(--accent, #0f9b8e);font-weight:500}.event-title.svelte-slao4o.svelte-slao4o{font-size:12px;color:var(--text, #e0e0e0);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.event-meta.svelte-slao4o.svelte-slao4o{display:flex;gap:8px;margin-top:2px}.duration.svelte-slao4o.svelte-slao4o,.time.svelte-slao4o.svelte-slao4o{font-size:10px;color:var(--text-dim, #8892b0)}.status-badge.svelte-slao4o.svelte-slao4o{font-size:9px;padding:1px 4px;border-radius:3px;text-transform:uppercase}.status-accepted.svelte-slao4o.svelte-slao4o{background:#2ecc7133;color:#2ecc71}.status-dismissed.svelte-slao4o.svelte-slao4o{background:#e74c3c33;color:#e74c3c}.status-attached.svelte-slao4o.svelte-slao4o{background:#3498db33;color:#3498db}.event-text.svelte-slao4o.svelte-slao4o{font-size:11px;color:var(--text-dim, #8892b0);font-style:italic;margin-top:2px;padding:2px 6px;background:#ffffff08;border-radius:3px}.event-actions.svelte-slao4o.svelte-slao4o{display:flex;gap:2px;align-items:flex-start}.event-actions.svelte-slao4o button.svelte-slao4o{background:none;border:1px solid var(--surface2, #1e2d50);border-radius:4px;width:24px;height:24px;cursor:pointer;font-size:11px;display:flex;align-items:center;justify-content:center;padding:0;transition:all .15s}.btn-accept.svelte-slao4o.svelte-slao4o:hover{background:#2ecc7133;border-color:#2ecc71}.btn-attach.svelte-slao4o.svelte-slao4o:hover{background:#3498db33;border-color:#3498db}.btn-dismiss.svelte-slao4o.svelte-slao4o:hover{background:#e74c3c33;border-color:#e74c3c}.today-screen.svelte-ii7vwz.svelte-ii7vwz{padding:24px;overflow-y:auto;flex:1}.today-header.svelte-ii7vwz.svelte-ii7vwz{display:flex;align-items:baseline;gap:12px;margin-bottom:16px;min-height:20px}.today-date.svelte-ii7vwz.svelte-ii7vwz{font-size:13px;color:#666}.today-tabs.svelte-ii7vwz.svelte-ii7vwz{display:flex;gap:0;border-bottom:1px solid #2a2a3c;margin-bottom:16px}.today-tab.svelte-ii7vwz.svelte-ii7vwz{padding:10px 16px;border:none;background:none;color:#888;font-size:13px;cursor:pointer;border-bottom:2px solid transparent;font-family:inherit;position:relative}.today-tab.svelte-ii7vwz.svelte-ii7vwz:hover{color:#a5b4fc}.today-tab.active.svelte-ii7vwz.svelte-ii7vwz{color:#e4e4ef;border-bottom-color:#818cf8;background:#6366f11f;font-weight:600}.tab-badge.svelte-ii7vwz.svelte-ii7vwz{background:#6366f1;color:#fff;font-size:10px;font-weight:700;border-radius:10px;padding:1px 6px;margin-left:6px;line-height:1.4;vertical-align:middle}.today-tab-content.svelte-ii7vwz.svelte-ii7vwz{flex:1}.today-empty.svelte-ii7vwz.svelte-ii7vwz{padding:48px 24px;text-align:center}.today-empty.svelte-ii7vwz p.svelte-ii7vwz{color:#666;font-size:14px;margin:0}.today-empty.svelte-ii7vwz .hint.svelte-ii7vwz{font-size:12px;color:#555;margin-top:8px}.tab-controls.svelte-ii7vwz.svelte-ii7vwz{margin-bottom:12px}.sort-controls.svelte-ii7vwz.svelte-ii7vwz{display:flex;align-items:center;gap:6px}.sort-btn.svelte-ii7vwz.svelte-ii7vwz{padding:4px 10px;border:1px solid #2a2a3c;background:#13131f;color:#888;border-radius:4px;font-size:12px;cursor:pointer;font-family:inherit}.sort-btn.svelte-ii7vwz.svelte-ii7vwz:hover{border-color:#3a3a5c;color:#ccc}.sort-btn.active.svelte-ii7vwz.svelte-ii7vwz{border-color:#6366f1;color:#a5b4fc;background:#6366f114}.sort-dir.svelte-ii7vwz.svelte-ii7vwz{font-size:12px;color:#8888a0;margin-left:4px}.feed-list.svelte-ii7vwz.svelte-ii7vwz{display:flex;flex-direction:column;gap:2px}.feed-item.svelte-ii7vwz.svelte-ii7vwz{display:flex;align-items:flex-start;gap:10px;padding:8px 12px;border-radius:8px;cursor:pointer}.feed-item.svelte-ii7vwz.svelte-ii7vwz:hover{background:#1a1a28}.feed-icon.svelte-ii7vwz.svelte-ii7vwz{width:20px;text-align:center;color:#6366f1;font-size:14px;flex-shrink:0;margin-top:2px}.feed-body.svelte-ii7vwz.svelte-ii7vwz{flex:1;min-width:0}.feed-title-line.svelte-ii7vwz.svelte-ii7vwz{display:flex;align-items:baseline;gap:4px;flex-wrap:wrap}.feed-type.svelte-ii7vwz.svelte-ii7vwz{font-size:13px;color:#8888a0}.feed-colon.svelte-ii7vwz.svelte-ii7vwz{color:#555}.feed-title.svelte-ii7vwz.svelte-ii7vwz{font-size:14px;color:#e4e4ef;font-weight:500}.feed-title.svelte-ii7vwz.svelte-ii7vwz:hover{text-decoration:underline}.feed-meta-line.svelte-ii7vwz.svelte-ii7vwz{display:flex;align-items:center;gap:8px;margin-top:2px}.feed-path.svelte-ii7vwz.svelte-ii7vwz{font-size:11px;color:#8ea0d8;max-width:280px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.feed-event-type.svelte-ii7vwz.svelte-ii7vwz{font-size:10px;color:#a5b4fc;background:#6366f11a;padding:2px 8px;border-radius:8px;font-weight:500}.feed-time.svelte-ii7vwz.svelte-ii7vwz{font-size:11px;color:#555;margin-left:auto;flex-shrink:0}.feed-nav-btn.svelte-ii7vwz.svelte-ii7vwz{background:none;border:none;color:#555;cursor:pointer;padding:4px;border-radius:4px;flex-shrink:0;margin-top:2px}.feed-nav-btn.svelte-ii7vwz.svelte-ii7vwz:hover{color:#a5b4fc;background:#1e1e30}.link-btn.svelte-ii7vwz.svelte-ii7vwz{background:none;border:none;padding:0;color:#a5b4fc;font:inherit;cursor:pointer;text-align:left}.link-btn.svelte-ii7vwz.svelte-ii7vwz:hover{text-decoration:underline}.suggestions-list.svelte-ii7vwz.svelte-ii7vwz{display:flex;flex-direction:column;gap:6px}.suggestion-card.svelte-ii7vwz.svelte-ii7vwz{display:flex;flex-direction:column;align-items:stretch;padding:0;background:#1e1e32;border-radius:6px;margin-bottom:6px;gap:0;border:1px solid transparent}.suggestion-card.svelte-ii7vwz.svelte-ii7vwz:last-child{margin-bottom:0}.suggestion-card.expanded.svelte-ii7vwz.svelte-ii7vwz{border-color:#3a3a5c}.suggestion-main.svelte-ii7vwz.svelte-ii7vwz{display:flex;align-items:center;justify-content:space-between;padding:7px 10px;cursor:pointer;gap:10px;min-height:38px}.suggestion-info.svelte-ii7vwz.svelte-ii7vwz{flex:1;display:flex;flex-direction:column;gap:2px}.suggestion-node.svelte-ii7vwz.svelte-ii7vwz{color:#a5b4fc;font-weight:600;font-size:13px;text-decoration:none;cursor:pointer}.suggestion-node.svelte-ii7vwz.svelte-ii7vwz:hover{text-decoration:underline}.suggestion-summary.svelte-ii7vwz.svelte-ii7vwz{font-size:14px;color:#e4e4ef}.suggestion-meta.svelte-ii7vwz.svelte-ii7vwz{font-size:12px;color:#8888a0;margin-top:2px}.suggestion-actions.svelte-ii7vwz.svelte-ii7vwz{display:flex;align-items:center;gap:6px;flex-shrink:0}.suggestion-min-input.svelte-ii7vwz.svelte-ii7vwz{width:54px;padding:3px 7px;border:1px solid #2a2a3c;background:#13131f;color:#e4e4ef;border-radius:4px;font-size:13px;text-align:center}.suggestion-min-label.svelte-ii7vwz.svelte-ii7vwz{font-size:12px;color:#8888a0}.suggestion-confidence-dot.svelte-ii7vwz.svelte-ii7vwz{width:9px;height:9px;border-radius:999px;background:#77798a;box-shadow:0 0 0 3px #77798a1f;flex:0 0 auto}.suggestion-confidence-dot.low.svelte-ii7vwz.svelte-ii7vwz{background:#ef4444;box-shadow:0 0 0 3px #ef44441f}.suggestion-confidence-dot.medium.svelte-ii7vwz.svelte-ii7vwz{background:#fbbf24;box-shadow:0 0 0 3px #fbbf241f}.suggestion-confidence-dot.high.svelte-ii7vwz.svelte-ii7vwz{background:#34d399;box-shadow:0 0 0 3px #34d3991f}.suggestion-detail.svelte-ii7vwz.svelte-ii7vwz{width:100%;padding:6px 10px 8px;border-top:1px solid #2a2a3c}.suggestion-detail-title.svelte-ii7vwz.svelte-ii7vwz{font-size:10px;font-weight:600;color:#a5b4fc;text-transform:uppercase;letter-spacing:.3px;padding:4px 0}.suggestion-detail-event.svelte-ii7vwz.svelte-ii7vwz{display:flex;align-items:center;gap:7px;padding:2px 0;font-size:12px;color:#b0b0c0}.suggestion-event-time.svelte-ii7vwz.svelte-ii7vwz{color:#a0a0b8;font-variant-numeric:tabular-nums;white-space:nowrap;min-width:48px}.suggestion-event-type.svelte-ii7vwz.svelte-ii7vwz{color:#8888a0;font-size:11px;background:#1a1a2e;padding:1px 6px;border-radius:3px}.suggestion-event-title.svelte-ii7vwz.svelte-ii7vwz{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.suggestion-event-path.svelte-ii7vwz.svelte-ii7vwz{max-width:220px;color:#8ea0d8;font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.btn.svelte-ii7vwz.svelte-ii7vwz{padding:8px 16px;border:1px solid #2a2a3c;background:#1a1a28;color:#ccc;border-radius:6px;cursor:pointer;font-size:13px;font-family:inherit;display:inline-flex;align-items:center;gap:6px}.btn.svelte-ii7vwz.svelte-ii7vwz:hover{background:#223}.btn-primary.svelte-ii7vwz.svelte-ii7vwz{background:#6366f1;border-color:#6366f1;color:#fff}.btn-primary.svelte-ii7vwz.svelte-ii7vwz:hover{background:#4f46e5}.btn-sm.svelte-ii7vwz.svelte-ii7vwz{padding:4px 10px;font-size:12px}.btn-danger.svelte-ii7vwz.svelte-ii7vwz{color:#ff6b6b;border-color:#4a2222}.btn-danger.svelte-ii7vwz.svelte-ii7vwz:hover{background:#3a2222}.ip-list.svelte-ii7vwz.svelte-ii7vwz{display:flex;flex-direction:column;gap:2px}.ip-item.svelte-ii7vwz.svelte-ii7vwz{display:flex;align-items:center;gap:10px;padding:8px 12px;border-radius:8px;cursor:pointer}.ip-item.svelte-ii7vwz.svelte-ii7vwz:hover{background:#1a1a28}.ip-icon.svelte-ii7vwz.svelte-ii7vwz{width:20px;text-align:center;color:#6366f1;font-size:13px;flex-shrink:0}.ip-body.svelte-ii7vwz.svelte-ii7vwz{flex:1;min-width:0}.ip-title.svelte-ii7vwz.svelte-ii7vwz{font-size:14px;color:#e4e4ef;display:block}.ip-path.svelte-ii7vwz.svelte-ii7vwz{font-size:11px;color:#8ea0d8;max-width:280px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block}.ip-type.svelte-ii7vwz.svelte-ii7vwz{font-size:11px;color:#666;flex-shrink:0}.ip-time.svelte-ii7vwz.svelte-ii7vwz{font-size:11px;color:#555;flex-shrink:0;margin-left:8px}.capture-list.svelte-ii7vwz.svelte-ii7vwz{display:flex;flex-direction:column;gap:6px}.capture-item.svelte-ii7vwz.svelte-ii7vwz{display:flex;align-items:center;gap:12px;padding:10px 12px;border:1px solid #2a2a3c;border-radius:8px;background:#1a1a28;cursor:pointer}.capture-item.svelte-ii7vwz.svelte-ii7vwz:hover{border-color:#3a3a5c;background:#1e1e32}.capture-icon.svelte-ii7vwz.svelte-ii7vwz{font-size:18px;width:28px;text-align:center;flex-shrink:0}.capture-body.svelte-ii7vwz.svelte-ii7vwz{flex:1;min-width:0}.capture-title.svelte-ii7vwz.svelte-ii7vwz{font-size:14px;color:#e4e4ef;font-weight:500;display:block}.capture-meta.svelte-ii7vwz.svelte-ii7vwz{font-size:12px;color:#8888a0;display:block;margin-top:2px}.capture-time.svelte-ii7vwz.svelte-ii7vwz{font-size:11px;color:#555;flex-shrink:0}.plugin-page.svelte-xgfxht.svelte-xgfxht{padding:1.5rem;height:100%;display:flex;flex-direction:column}.loading.svelte-xgfxht.svelte-xgfxht{color:var(--text-dim, #888)}.empty-state.svelte-xgfxht.svelte-xgfxht{text-align:center;padding:3rem 1rem;color:var(--text-dim, #888)}.empty-state.svelte-xgfxht code.svelte-xgfxht{background:var(--surface-alt, #252538);padding:.15rem .4rem;border-radius:3px;font-size:.85rem}.plugin-frame-container.svelte-xgfxht.svelte-xgfxht{flex:1;display:flex;flex-direction:column;min-height:0}.plugin-error-bar.svelte-xgfxht.svelte-xgfxht{padding:.5rem 1rem;background:#f871711f;border:1px solid #f87171;border-bottom:none;border-radius:8px 8px 0 0;color:#f87171;font-size:.85rem;flex-shrink:0}.plugin-frame.svelte-xgfxht.svelte-xgfxht{flex:1;border:1px solid var(--border, #2a2a3e);border-radius:8px;background:#fff;width:100%;min-height:400px;display:block}.plugin-frame-container.svelte-xgfxht .plugin-frame.svelte-xgfxht{border-radius:0 0 8px 8px;border-top:none}.global-search.svelte-1dlr37h{position:relative;flex:1 1 360px;min-width:180px;max-width:520px}.global-search-input.svelte-1dlr37h{width:100%;height:32px;padding:0 12px;border:1px solid #2a2a3c;border-radius:6px;background:#10101a;color:#e4e4ef;font:inherit;font-size:13px}.global-search-input.svelte-1dlr37h:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 2px #6366f12e}.global-search-results.svelte-1dlr37h{position:absolute;top:calc(100% + 6px);left:0;right:0;z-index:160;max-height:min(360px,calc(100vh - 88px));overflow-y:auto;background:#1a1a28;border:1px solid #2a2a3c;border-radius:8px;box-shadow:0 14px 36px #00000061;padding:4px}.global-search-result.svelte-1dlr37h{display:flex;flex-direction:column;gap:2px;width:100%;border:0;background:transparent;color:#e4e4ef;text-align:left;padding:8px 10px;border-radius:6px;cursor:pointer;font:inherit}.global-search-result.svelte-1dlr37h:hover,.global-search-result.selected.svelte-1dlr37h{background:#252545}.global-search-title.svelte-1dlr37h{font-size:13px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.global-search-meta.svelte-1dlr37h{font-size:11px;color:#a0a0bc;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.global-search-snippet.svelte-1dlr37h{font-size:12px;color:#767690;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.global-search-empty.svelte-1dlr37h{padding:10px 12px;color:#8888a0;font-size:12px}.header.svelte-7x8q9h{padding:10px 24px;border-bottom:1px solid #2a2a3c;display:flex;align-items:center;gap:16px;flex-shrink:0;min-height:52px}.header-left.svelte-7x8q9h{display:flex;align-items:center;gap:8px;min-width:120px;flex:0 1 auto;overflow:hidden}.header-title.svelte-7x8q9h{font-size:15px;font-weight:600;color:#e4e4ef;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.header-title.placeholder.svelte-7x8q9h{color:#666;font-weight:500}.header-subtitle.svelte-7x8q9h{font-size:11px;color:#8888a0;background:#1e1e2e;padding:2px 8px;border-radius:10px;white-space:nowrap}.header-right.svelte-7x8q9h{flex:1;min-width:0;display:flex;align-items:center;justify-content:flex-end;gap:8px}@media (max-width: 760px){.header.svelte-7x8q9h{padding:8px 12px;gap:10px;align-items:flex-start;flex-wrap:wrap}.header-left.svelte-7x8q9h{flex:1 1 100%}.header-right.svelte-7x8q9h{flex:1 1 100%;justify-content:stretch}}.md-editor.svelte-1etjgc1{display:flex;flex-direction:column;flex:1;min-height:0;height:100%}.md-editor.mode-edit.svelte-1etjgc1{height:auto}.md-toolbar.svelte-1etjgc1{display:flex;align-items:center;gap:2px;padding:5px 10px;border-bottom:1px solid #2a2a3c;background:#16161f;flex-shrink:0;flex-wrap:wrap}.md-toolbar-group.svelte-1etjgc1{display:flex;align-items:center;gap:1px}.md-toolbar-sep.svelte-1etjgc1{width:1px;height:18px;background:#2a2a3c;margin:0 4px;flex-shrink:0}.md-toolbar-btn.svelte-1etjgc1{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;border-radius:4px;background:transparent;color:#999;cursor:pointer;transition:background .12s,color .12s;padding:0}.md-toolbar-btn.svelte-1etjgc1:hover{background:#2a2a3c;color:#e4e4ef}.md-toolbar-btn.svelte-1etjgc1:active{background:#333350}.md-toolbar-btn.svelte-1etjgc1:focus-visible{outline:2px solid #818cf8;outline-offset:1px}.md-toolbar-btn--internal.svelte-1etjgc1{color:#67e8f9}.md-toolbar-btn--internal.svelte-1etjgc1:hover{background:#67e8f91a;color:#a5f3fc}.md-btn-label.svelte-1etjgc1{font-size:13px;font-weight:700;font-family:SF Mono,Fira Code,monospace;line-height:1}.md-btn-bold.svelte-1etjgc1{font-weight:900}.md-btn-italic.svelte-1etjgc1{font-style:italic;font-family:Georgia,serif}.md-btn-sm.svelte-1etjgc1{font-size:10px}.md-btn-quote.svelte-1etjgc1{font-size:16px;font-family:Georgia,serif}.md-textarea.svelte-1etjgc1{flex:1;width:100%;min-height:0;border:none;outline:none;background:#13131f;color:#e4e4ef;font-family:SF Mono,Fira Code,Cascadia Code,Consolas,monospace;font-size:14px;line-height:1.65;padding:16px 20px;resize:none;-moz-tab-size:2;tab-size:2;overflow-y:auto}.md-textarea.svelte-1etjgc1::placeholder{color:#444;font-style:italic}.note-editor-panel.svelte-8tdyp9.svelte-8tdyp9{display:flex;flex-direction:column;flex:1;min-height:0;height:100%}.mode-switcher.svelte-8tdyp9.svelte-8tdyp9{display:flex;align-items:center;gap:2px;padding:5px 12px;border-bottom:1px solid #2a2a3c;background:#14141f;flex-shrink:0}.mode-btn.svelte-8tdyp9.svelte-8tdyp9{padding:4px 12px;border:1px solid transparent;border-radius:4px;background:transparent;color:#888;font-size:12px;font-family:inherit;cursor:pointer;transition:background .12s,color .12s,border-color .12s}.mode-btn.svelte-8tdyp9.svelte-8tdyp9:hover{color:#ccc;background:#1e1e30}.mode-btn.active.svelte-8tdyp9.svelte-8tdyp9{color:#e4e4ef;background:#22223a;border-color:#333350;font-weight:500}.mode-btn.svelte-8tdyp9.svelte-8tdyp9:focus-visible{outline:2px solid #818cf8;outline-offset:1px}.panel-content.svelte-8tdyp9.svelte-8tdyp9{flex:1;display:flex;min-height:0;overflow:hidden}.mode-preview.svelte-8tdyp9 .panel-content.svelte-8tdyp9{overflow-y:auto}.preview-pane.svelte-8tdyp9.svelte-8tdyp9{flex:1;padding:24px;overflow-y:auto}.split-pane.svelte-8tdyp9.svelte-8tdyp9{flex:1;display:flex;min-height:0;overflow:hidden}.split-editor.svelte-8tdyp9.svelte-8tdyp9{flex:1;display:flex;flex-direction:column;min-width:0;border-right:1px solid #2a2a3c;overflow:hidden}.split-preview.svelte-8tdyp9.svelte-8tdyp9{flex:1;min-width:0;overflow-y:auto;padding:20px 24px;background:#11111c}.picker-modal-overlay.svelte-12kipyi{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:200}.picker-modal.svelte-12kipyi{background:#1a1a28;border:1px solid #2a2a3c;border-radius:12px;width:480px;max-width:90vw;max-height:70vh;display:flex;flex-direction:column;overflow:hidden}.picker-header.svelte-12kipyi{padding:12px 16px;border-bottom:1px solid #2a2a3c}.picker-search-input.svelte-12kipyi{width:100%;padding:8px 12px;border:1px solid #2a2a3c;border-radius:6px;background:#13131f;color:#e4e4ef;font-size:14px;font-family:inherit;outline:none;box-sizing:border-box}.picker-search-input.svelte-12kipyi:focus{border-color:#818cf8}.picker-types.svelte-12kipyi{display:flex;gap:4px;padding:8px 16px;border-bottom:1px solid #2a2a3c}.picker-type-btn.svelte-12kipyi{padding:4px 12px;border:1px solid #2a2a3c;border-radius:4px;background:#13131f;color:#999;font-size:12px;font-family:inherit;cursor:pointer}.picker-type-btn.svelte-12kipyi:hover:not(:disabled){background:#1e1e38;color:#ccc}.picker-type-btn.active.svelte-12kipyi{background:#2a2a4a;color:#e4e4ef;border-color:#6366f1}.picker-type-btn.disabled.svelte-12kipyi{opacity:.4;cursor:not-allowed}.picker-secret-placeholder.svelte-12kipyi{padding:32px;text-align:center;color:#666;font-size:14px}.picker-results.svelte-12kipyi{flex:1;overflow-y:auto;min-height:0;max-height:300px}.picker-loading.svelte-12kipyi,.picker-error.svelte-12kipyi,.picker-empty.svelte-12kipyi{padding:24px;text-align:center;color:#666;font-size:13px}.picker-error.svelte-12kipyi{color:#f88}.picker-result.svelte-12kipyi{display:flex;flex-direction:column;gap:2px;width:100%;padding:10px 16px;border:none;border-bottom:1px solid #1e1e30;background:transparent;color:#e4e4ef;font-size:13px;font-family:inherit;text-align:left;cursor:pointer}.picker-result.svelte-12kipyi:last-child{border-bottom:none}.picker-result.svelte-12kipyi:hover,.picker-result.selected.svelte-12kipyi{background:#1e1e38}.picker-result-title.svelte-12kipyi{font-weight:500}.picker-result-path.svelte-12kipyi{font-size:11px;color:#666;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.picker-footer.svelte-12kipyi{display:flex;justify-content:flex-end;gap:8px;padding:12px 16px;border-top:1px solid #2a2a3c}.notes-tab.svelte-1d78tu1.svelte-1d78tu1{padding:24px}.tab-toolbar.svelte-1d78tu1.svelte-1d78tu1{margin-bottom:16px}.create-form.svelte-1d78tu1.svelte-1d78tu1{background:#1a1a28;padding:16px;border-radius:8px;margin-bottom:16px}.create-form.svelte-1d78tu1 input.svelte-1d78tu1{width:100%;padding:8px 12px;border:1px solid #2a2a3c;background:#13131f;color:#e4e4ef;border-radius:4px;font-size:14px;font-family:inherit;margin-bottom:8px}.create-form.svelte-1d78tu1 input.svelte-1d78tu1:focus{outline:none;border-color:#6366f1}.form-actions.svelte-1d78tu1.svelte-1d78tu1{display:flex;gap:8px}.notes-list.svelte-1d78tu1.svelte-1d78tu1{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}.note-card.svelte-1d78tu1.svelte-1d78tu1{background:#1a1a28;border:1px solid #2a2a3c;border-radius:8px;padding:16px;cursor:pointer;position:relative}.note-card.svelte-1d78tu1.svelte-1d78tu1:hover{border-color:#3a3a5c}.note-card-info.svelte-1d78tu1.svelte-1d78tu1{flex:1;min-width:0}.note-card-title.svelte-1d78tu1.svelte-1d78tu1{font-size:14px;font-weight:500;margin-bottom:4px}.note-card-date.svelte-1d78tu1.svelte-1d78tu1{font-size:11px;color:#555}.note-card-actions.svelte-1d78tu1.svelte-1d78tu1{display:flex;gap:4px;opacity:0;transition:opacity .12s;position:absolute;top:8px;right:8px}.note-card.svelte-1d78tu1:hover .note-card-actions.svelte-1d78tu1{opacity:1}.note-action-btn.svelte-1d78tu1.svelte-1d78tu1{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border:none;border-radius:4px;background:transparent;color:#666;cursor:pointer;transition:background .12s,color .12s}.note-action-btn.svelte-1d78tu1.svelte-1d78tu1:hover{background:#2a2a3c;color:#ccc}.note-action-danger.svelte-1d78tu1.svelte-1d78tu1:hover{background:#ef444426;color:#f87171}.empty-state.svelte-1d78tu1.svelte-1d78tu1{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px;text-align:center}.empty-state.svelte-1d78tu1 p.svelte-1d78tu1{margin:0;font-size:14px;color:#666}.empty-state.svelte-1d78tu1 .hint.svelte-1d78tu1{font-size:12px;color:#555;margin-top:6px}.btn.svelte-1d78tu1.svelte-1d78tu1{padding:8px 16px;border:1px solid #2a2a3c;background:#1a1a28;color:#ccc;border-radius:6px;cursor:pointer;font-size:13px;font-family:inherit;display:inline-flex;align-items:center;gap:6px}.btn.svelte-1d78tu1.svelte-1d78tu1:hover{background:#223}.btn-primary.svelte-1d78tu1.svelte-1d78tu1{background:#6366f1;border-color:#6366f1;color:#fff}.btn-primary.svelte-1d78tu1.svelte-1d78tu1:hover{background:#4f46e5}.btn.svelte-1d78tu1.svelte-1d78tu1:disabled{opacity:.4;cursor:not-allowed}.overview.svelte-3r30e3.svelte-3r30e3{padding:24px}.overview.svelte-3r30e3 h2.svelte-3r30e3{font-size:24px;margin-bottom:16px}.meta-grid.svelte-3r30e3.svelte-3r30e3{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px;margin-bottom:24px}.meta-item.svelte-3r30e3.svelte-3r30e3{background:#1a1a28;padding:12px 16px;border-radius:8px}.meta-label.svelte-3r30e3.svelte-3r30e3{display:block;font-size:11px;color:#666;margin-bottom:4px;text-transform:uppercase}.quick-actions.svelte-3r30e3.svelte-3r30e3{display:flex;gap:8px;margin-bottom:24px;flex-wrap:wrap}.qa-btn.svelte-3r30e3.svelte-3r30e3{padding:10px 16px;border:1px solid #2a2a3c;background:#1a1a28;color:#ccc;border-radius:8px;cursor:pointer;font-size:13px;font-family:inherit;display:inline-flex;align-items:center;gap:6px}.qa-btn.svelte-3r30e3.svelte-3r30e3:hover{background:#223}.qa-btn.svelte-3r30e3.svelte-3r30e3:disabled{opacity:.4;cursor:not-allowed}.recent-section.svelte-3r30e3.svelte-3r30e3{margin-bottom:24px}.recent-section.svelte-3r30e3 h3.svelte-3r30e3{font-size:13px;color:#666;text-transform:uppercase;margin-bottom:8px}.recent-note.svelte-3r30e3.svelte-3r30e3{padding:8px 12px;border-radius:6px;cursor:pointer;display:flex;justify-content:space-between}.recent-note.svelte-3r30e3.svelte-3r30e3:hover{background:#1a1a28}.recent-date.svelte-3r30e3.svelte-3r30e3{font-size:11px;color:#555}.recent-entry.svelte-3r30e3.svelte-3r30e3{padding:6px 0;font-size:13px;color:#888;border-bottom:1px solid #1a1a28}.files-tab.svelte-1r5kjfz.svelte-1r5kjfz{padding:20px}.files-tab.svelte-1r5kjfz .tab-toolbar.svelte-1r5kjfz{display:flex;gap:8px;align-items:center;margin-bottom:16px}.file-list.svelte-1r5kjfz.svelte-1r5kjfz{display:flex;flex-direction:column}.back-btn.svelte-1r5kjfz.svelte-1r5kjfz{margin-bottom:4px;display:inline-flex;align-items:center;gap:4px}.import-summary.svelte-1r5kjfz.svelte-1r5kjfz{margin-bottom:16px}.summary-row.svelte-1r5kjfz.svelte-1r5kjfz{display:flex;justify-content:space-between;padding:6px 0;font-size:14px;border-bottom:1px solid #2a2a3c}.summary-warn.svelte-1r5kjfz.svelte-1r5kjfz{margin-top:8px;padding:8px 12px;background:#3a2a22;border-radius:6px;color:#fa6;font-size:13px}.rename-error.svelte-1r5kjfz.svelte-1r5kjfz{color:#ff6b6b;font-size:12px;margin-top:4px}.btn.svelte-1r5kjfz.svelte-1r5kjfz{padding:8px 16px;border:1px solid #2a2a3c;background:#1a1a28;color:#ccc;border-radius:6px;cursor:pointer;font-size:13px;font-family:inherit;display:inline-flex;align-items:center;gap:6px}.btn.svelte-1r5kjfz.svelte-1r5kjfz:hover{background:#223}.btn-primary.svelte-1r5kjfz.svelte-1r5kjfz{background:#6366f1;border-color:#6366f1;color:#fff}.btn-primary.svelte-1r5kjfz.svelte-1r5kjfz:hover{background:#4f46e5}.btn.svelte-1r5kjfz.svelte-1r5kjfz:disabled{opacity:.4;cursor:not-allowed}.btn-sm.svelte-1r5kjfz.svelte-1r5kjfz{padding:4px 10px;font-size:12px}.svelte-1uu9qhk.svelte-1uu9qhk,.svelte-1uu9qhk.svelte-1uu9qhk:before,.svelte-1uu9qhk.svelte-1uu9qhk:after{box-sizing:border-box;margin:0;padding:0}.app.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;width:100vw;height:100vh;overflow:hidden;background:#13131f;color:#e4e4ef;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:14px}.capture-drop-overlay.svelte-1uu9qhk.svelte-1uu9qhk{position:fixed;top:0;right:0;bottom:0;left:0;z-index:120;pointer-events:none;display:flex;align-items:center;justify-content:center;background:#13131f6b;border:2px dashed #818cf8}.capture-drop-box.svelte-1uu9qhk.svelte-1uu9qhk{max-width:min(520px,calc(100vw - 48px));padding:14px 18px;border:1px solid #3a3a5c;border-radius:8px;background:#1a1a28;color:#e4e4ef;font-size:14px;font-weight:600;box-shadow:0 12px 32px #00000059;text-align:center}.sidebar.svelte-1uu9qhk.svelte-1uu9qhk{width:260px;min-width:200px;height:100vh;display:flex;flex-direction:column;background:#1a1a28;border-right:1px solid #2a2a3c;flex-shrink:0;overflow:hidden}.sidebar-brand.svelte-1uu9qhk.svelte-1uu9qhk{padding:16px 20px;display:flex;align-items:center;gap:10px;border-bottom:1px solid #2a2a3c;flex-shrink:0}.logo.svelte-1uu9qhk.svelte-1uu9qhk{display:block;width:20px;height:20px;flex-shrink:0}.brand-name.svelte-1uu9qhk.svelte-1uu9qhk{font-size:16px;font-weight:600}.sidebar-nav.svelte-1uu9qhk.svelte-1uu9qhk{flex:1;overflow-y:auto;padding:12px 0}.nav-group.svelte-1uu9qhk.svelte-1uu9qhk{margin-bottom:16px}.nav-label.svelte-1uu9qhk.svelte-1uu9qhk{font-size:10px;text-transform:uppercase;letter-spacing:.5px;color:#666;padding:4px 20px;margin-bottom:4px}.nav-item.svelte-1uu9qhk.svelte-1uu9qhk{display:block;width:100%;padding:8px 20px;border:none;background:none;color:#ccc;font-size:13px;text-align:left;cursor:pointer;border-radius:0;font-family:inherit}.nav-item.svelte-1uu9qhk.svelte-1uu9qhk:hover{background:#223}.nav-item.selected.svelte-1uu9qhk.svelte-1uu9qhk{background:#2a2a4a;color:#fff;font-weight:500}.workspace-tree-area.svelte-1uu9qhk.svelte-1uu9qhk{min-height:32px}.workspace-tree-area.drop-valid.svelte-1uu9qhk.svelte-1uu9qhk{outline:2px dashed #4ade80;outline-offset:-2px;background:#4ade800d}.nav-empty.svelte-1uu9qhk.svelte-1uu9qhk{padding:8px 20px;color:#555;font-size:12px}.nav-label-row.svelte-1uu9qhk.svelte-1uu9qhk{font-size:10px;text-transform:uppercase;letter-spacing:.5px;color:#666;padding:4px 20px;margin-bottom:4px;display:flex;align-items:center;justify-content:space-between}.nav-add-btn.svelte-1uu9qhk.svelte-1uu9qhk{background:none;border:none;color:#666;cursor:pointer;font-size:16px;padding:0 4px;font-family:inherit;line-height:1}.nav-add-btn.svelte-1uu9qhk.svelte-1uu9qhk:hover{color:#ccc}.context-menu-backdrop.svelte-1uu9qhk.svelte-1uu9qhk{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200}.context-menu.svelte-1uu9qhk.svelte-1uu9qhk{position:fixed;background:#1a1a28;border:1px solid #2a2a3c;border-radius:8px;padding:4px;min-width:180px;box-shadow:0 8px 24px #0006}.context-menu-section.svelte-1uu9qhk.svelte-1uu9qhk{padding:6px 12px;font-size:10px;text-transform:uppercase;letter-spacing:.5px;color:#666}.context-menu-item.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;width:100%;padding:6px 12px;border:none;background:none;color:#ccc;font-size:13px;text-align:left;cursor:pointer;border-radius:4px;font-family:inherit;align-items:center;gap:6px}.context-menu-item.svelte-1uu9qhk.svelte-1uu9qhk:hover{background:#223;color:#fff}.context-menu-item.danger.svelte-1uu9qhk.svelte-1uu9qhk{color:#ff6b6b}.context-menu-item.danger.svelte-1uu9qhk.svelte-1uu9qhk:hover{background:#3a2222;color:#ff6b6b}.context-menu-divider.svelte-1uu9qhk.svelte-1uu9qhk{height:1px;background:#2a2a3c;margin:4px 0}.create-context.svelte-1uu9qhk.svelte-1uu9qhk{font-size:12px;color:#888;margin-bottom:12px}.sidebar-footer.svelte-1uu9qhk.svelte-1uu9qhk{padding:8px 12px;border-top:1px solid #2a2a3c;flex-shrink:0;display:flex;flex-direction:column;gap:4px}.sidebar-footer-row.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;align-items:center;justify-content:space-between}.version.svelte-1uu9qhk.svelte-1uu9qhk{font-size:11px;color:#555;text-align:center}.main.svelte-1uu9qhk.svelte-1uu9qhk{flex:1;display:flex;flex-direction:column;height:100vh;min-width:0;overflow:hidden;background:#13131f}.header-actions.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.sidebar-settings-btn.svelte-1uu9qhk.svelte-1uu9qhk{background:transparent;border:none;border-radius:6px;padding:6px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;color:#666;font-family:inherit;width:32px;height:32px}.sidebar-settings-btn.svelte-1uu9qhk.svelte-1uu9qhk:hover{background:#1e1e38;color:#a5b4fc}.sidebar-settings-btn.svelte-1uu9qhk.svelte-1uu9qhk:active{background:#252545;color:#818cf8}.error-banner.svelte-1uu9qhk.svelte-1uu9qhk{background:#3a2222;color:#f88;padding:8px 24px;font-size:12px;border-bottom:1px solid #4a2222;flex-shrink:0;cursor:pointer;display:flex;justify-content:space-between;align-items:center}.dismiss-btn.svelte-1uu9qhk.svelte-1uu9qhk{background:none;border:none;color:#f66;cursor:pointer;padding:2px;display:flex;align-items:center;border-radius:2px}.dismiss-btn.svelte-1uu9qhk.svelte-1uu9qhk:hover{color:#f44}.tabs.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;align-items:stretch;border-bottom:1px solid #2a2a3c;flex-shrink:0;padding:0 24px}.tab.svelte-1uu9qhk.svelte-1uu9qhk{padding:10px 16px;border:none;background:none;color:#888;font-size:13px;cursor:pointer;border-bottom:2px solid transparent;font-family:inherit}.tab.svelte-1uu9qhk.svelte-1uu9qhk:hover{color:#a5b4fc}.tab.active.svelte-1uu9qhk.svelte-1uu9qhk{color:#e4e4ef;border-bottom-color:#818cf8;background:#6366f11f;font-weight:600}.tab-separator.svelte-1uu9qhk.svelte-1uu9qhk{width:1px;height:22px;margin:8px 10px 0;background:#2a2a3c;flex-shrink:0}.tab-content.svelte-1uu9qhk.svelte-1uu9qhk{flex:1;overflow-y:auto}.note-editor-header.svelte-1uu9qhk.svelte-1uu9qhk{padding:12px 24px;border-bottom:1px solid #2a2a3c;display:flex;align-items:center;gap:12px;flex-shrink:0}.note-title.svelte-1uu9qhk.svelte-1uu9qhk{font-size:16px;font-weight:500}.dirty-mark.svelte-1uu9qhk.svelte-1uu9qhk{color:#f59e0b;font-size:10px}.note-editor-actions.svelte-1uu9qhk.svelte-1uu9qhk{margin-left:auto;display:flex;gap:8px}.note-rename-btn.svelte-1uu9qhk.svelte-1uu9qhk{opacity:0;margin-left:6px;color:#666}.note-editor-header.svelte-1uu9qhk:hover .note-rename-btn.svelte-1uu9qhk{opacity:1}.note-rename-btn.svelte-1uu9qhk.svelte-1uu9qhk:hover{color:#ccc}.note-rename-inline.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;align-items:center;gap:8px;flex:1}.note-rename-input.svelte-1uu9qhk.svelte-1uu9qhk{flex:1;padding:6px 10px;border:1px solid #2a2a3c;border-radius:4px;background:#13131f;color:#e4e4ef;font-size:14px;font-family:inherit;outline:none}.note-rename-input.svelte-1uu9qhk.svelte-1uu9qhk:focus{border-color:#818cf8}.form-group.svelte-1uu9qhk.svelte-1uu9qhk{margin-bottom:14px}.form-group.svelte-1uu9qhk label.svelte-1uu9qhk{display:block;font-size:12px;color:#888;margin-bottom:4px}.form-group.svelte-1uu9qhk input.svelte-1uu9qhk{width:100%;padding:8px 12px;border:1px solid #2a2a3c;border-radius:4px;background:#13131f;color:#e4e4ef;font-size:14px;font-family:inherit;outline:none;box-sizing:border-box}.form-group.svelte-1uu9qhk input.svelte-1uu9qhk:focus{border-color:#818cf8}.worklog-tab.svelte-1uu9qhk.svelte-1uu9qhk{padding:24px}.worklog-toolbar.svelte-1uu9qhk.svelte-1uu9qhk{margin-bottom:16px}.worklog-entry.svelte-1uu9qhk.svelte-1uu9qhk{padding:12px 0;border-bottom:1px solid #1a1a28}.suggestions-title.svelte-1uu9qhk.svelte-1uu9qhk{font-size:13px;font-weight:600;color:#a5b4fc;margin-bottom:12px;text-transform:uppercase;letter-spacing:.5px}.suggestion-summary.svelte-1uu9qhk.svelte-1uu9qhk{font-size:14px;color:#e4e4ef}.suggestion-meta.svelte-1uu9qhk.svelte-1uu9qhk{font-size:12px;color:#8888a0;margin-top:2px}.suggestion-main.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;align-items:center;justify-content:space-between;padding:7px 10px;cursor:pointer;gap:10px;min-height:38px}.suggestion-card.expanded.svelte-1uu9qhk.svelte-1uu9qhk{border-color:#3a3a5c}.suggestion-detail.svelte-1uu9qhk.svelte-1uu9qhk{width:100%;padding:6px 10px 8px;border-top:1px solid #2a2a3c}.suggestion-detail-title.svelte-1uu9qhk.svelte-1uu9qhk{font-size:10px;font-weight:600;color:#a5b4fc;text-transform:uppercase;letter-spacing:.3px;padding:4px 0}.suggestion-detail-event.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;align-items:center;gap:7px;padding:2px 0;font-size:12px;color:#b0b0c0}.suggestion-event-time.svelte-1uu9qhk.svelte-1uu9qhk{color:#a0a0b8;font-variant-numeric:tabular-nums;white-space:nowrap;min-width:48px}.suggestion-event-type.svelte-1uu9qhk.svelte-1uu9qhk{color:#8888a0;font-size:11px;background:#1a1a2e;padding:1px 6px;border-radius:3px}.suggestion-event-title.svelte-1uu9qhk.svelte-1uu9qhk{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.suggestion-event-path.svelte-1uu9qhk.svelte-1uu9qhk{max-width:220px;color:#8ea0d8;font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.suggestion-card.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;flex-direction:column;align-items:stretch;padding:0;background:#1e1e32;border-radius:6px;margin-bottom:6px;gap:0;border:1px solid transparent}.suggestion-card.svelte-1uu9qhk.svelte-1uu9qhk:last-child{margin-bottom:0}.suggestion-info.svelte-1uu9qhk.svelte-1uu9qhk{flex:1;display:flex;flex-direction:column;gap:2px}.suggestion-node.svelte-1uu9qhk.svelte-1uu9qhk{color:#a5b4fc;font-weight:600;font-size:13px;text-decoration:none;cursor:pointer}.suggestion-node.svelte-1uu9qhk.svelte-1uu9qhk:hover{text-decoration:underline}.suggestion-actions.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;align-items:center;gap:6px;flex-shrink:0}.suggestion-min-input.svelte-1uu9qhk.svelte-1uu9qhk{width:54px;padding:3px 7px;border:1px solid #2a2a3c;background:#13131f;color:#e4e4ef;border-radius:4px;font-size:13px;text-align:center}.suggestion-min-label.svelte-1uu9qhk.svelte-1uu9qhk{font-size:12px;color:#8888a0}.suggestion-confidence-dot.svelte-1uu9qhk.svelte-1uu9qhk{width:9px;height:9px;border-radius:999px;background:#77798a;box-shadow:0 0 0 3px #77798a1f;flex:0 0 auto}.suggestion-confidence-dot.low.svelte-1uu9qhk.svelte-1uu9qhk{background:#ef4444;box-shadow:0 0 0 3px #ef44441f}.suggestion-confidence-dot.medium.svelte-1uu9qhk.svelte-1uu9qhk{background:#fbbf24;box-shadow:0 0 0 3px #fbbf241f}.suggestion-confidence-dot.high.svelte-1uu9qhk.svelte-1uu9qhk{background:#34d399;box-shadow:0 0 0 3px #34d3991f}.inbox-screen.svelte-1uu9qhk.svelte-1uu9qhk{padding:24px;overflow-y:auto;flex:1}.inbox-screen.drop-valid.svelte-1uu9qhk.svelte-1uu9qhk{outline:2px dashed #4ade80;outline-offset:-4px;background:#4ade800a}.inbox-header.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px}.inbox-header.svelte-1uu9qhk p.svelte-1uu9qhk{margin:0;color:#a0a0b8;font-size:13px}.inbox-capture-status.svelte-1uu9qhk.svelte-1uu9qhk{color:#8ee6b1;font-size:12px}.inbox-list.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;flex-direction:column;gap:8px}.inbox-item.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid #2a2a3c;border-radius:8px;background:#1a1a28;cursor:pointer}.inbox-item.svelte-1uu9qhk.svelte-1uu9qhk:hover{border-color:#3a3a5c;background:#1e1e32}.inbox-item-main.svelte-1uu9qhk.svelte-1uu9qhk{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.inbox-item-title.svelte-1uu9qhk.svelte-1uu9qhk{color:#e4e4ef;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.inbox-item-meta.svelte-1uu9qhk.svelte-1uu9qhk{color:#8888a0;font-size:12px}.inbox-item-actions.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;gap:6px;flex-shrink:0;align-items:center}.inbox-icon-btn.svelte-1uu9qhk.svelte-1uu9qhk{width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;border:1px solid #2a2a3c;border-radius:6px;background:#13131f;color:#a0a0b8;cursor:pointer;transition:color .12s,border-color .12s,background .12s}.inbox-icon-slot.svelte-1uu9qhk.svelte-1uu9qhk{width:30px;height:30px;display:inline-block;flex:0 0 30px}.inbox-icon-btn.svelte-1uu9qhk.svelte-1uu9qhk:hover{color:#e4e4ef;border-color:#3a3a5c;background:#222238}.inbox-icon-btn-primary.svelte-1uu9qhk.svelte-1uu9qhk{color:#a5b4fc;border-color:#34346a}.inbox-icon-btn-primary.svelte-1uu9qhk.svelte-1uu9qhk:hover{color:#fff;border-color:#6366f1;background:#272750}.inbox-icon-btn-danger.svelte-1uu9qhk.svelte-1uu9qhk{color:#f87171;border-color:#4a252c}.inbox-icon-btn-danger.svelte-1uu9qhk.svelte-1uu9qhk:hover{color:#fff;border-color:#dc2626;background:#3a1f24}.inbox-tab.svelte-1uu9qhk.svelte-1uu9qhk{padding:24px}.inbox-controls.svelte-1uu9qhk.svelte-1uu9qhk{margin-bottom:12px}.inbox-sort-row.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.sort-btn.svelte-1uu9qhk.svelte-1uu9qhk{padding:4px 10px;border:1px solid #2a2a3c;background:#13131f;color:#888;border-radius:4px;font-size:12px;cursor:pointer;font-family:inherit}.sort-btn.svelte-1uu9qhk.svelte-1uu9qhk:hover{border-color:#3a3a5c;color:#ccc}.sort-btn.active.svelte-1uu9qhk.svelte-1uu9qhk{border-color:#6366f1;color:#a5b4fc;background:#6366f114}.sort-dir.svelte-1uu9qhk.svelte-1uu9qhk{font-size:12px;color:#8888a0;margin-left:2px}.inbox-controls-divider.svelte-1uu9qhk.svelte-1uu9qhk{width:1px;height:20px;background:#2a2a3c;margin:0 4px}.inbox-group.svelte-1uu9qhk.svelte-1uu9qhk{margin-bottom:16px}.inbox-group-header.svelte-1uu9qhk.svelte-1uu9qhk{font-size:12px;font-weight:600;color:#a5b4fc;text-transform:uppercase;letter-spacing:.5px;padding:8px 0 6px;margin-bottom:6px;border-bottom:1px solid #2a2a3c;display:flex;align-items:center;gap:8px}.inbox-group-count.svelte-1uu9qhk.svelte-1uu9qhk{font-size:10px;color:#8888a0;background:#1e1e30;padding:1px 6px;border-radius:8px}.links-tab.svelte-1uu9qhk.svelte-1uu9qhk{padding:24px}.links-list.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;flex-direction:column;gap:8px}.link-card.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid #2a2a3c;border-radius:8px;background:#1a1a28}.link-card.svelte-1uu9qhk.svelte-1uu9qhk:hover{border-color:#3a3a5c;background:#1e1e32}.link-main.svelte-1uu9qhk.svelte-1uu9qhk{flex:1;min-width:0;display:grid;grid-template-columns:minmax(160px,1fr) minmax(120px,220px) auto;gap:8px 12px;align-items:baseline}.link-title.svelte-1uu9qhk.svelte-1uu9qhk{color:#e4e4ef;font-weight:600;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.link-url.svelte-1uu9qhk.svelte-1uu9qhk{color:#a5b4fc;font-size:13px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.link-date.svelte-1uu9qhk.svelte-1uu9qhk{color:#8888a0;font-size:12px;white-space:nowrap}.link-note.svelte-1uu9qhk.svelte-1uu9qhk{grid-column:1 / -1;color:#8888a0;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.link-actions.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;gap:8px;flex-shrink:0}.link-status.svelte-1uu9qhk.svelte-1uu9qhk{margin-top:12px;color:#8ee6b1;font-size:12px}.trash-screen.svelte-1uu9qhk.svelte-1uu9qhk{padding:24px;overflow-y:auto;flex:1}.trash-header.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px}.trash-header.svelte-1uu9qhk p.svelte-1uu9qhk{margin:0;color:#8888a0;font-size:12px}.trash-browser.svelte-1uu9qhk.svelte-1uu9qhk{max-width:980px}.trash-section.svelte-1uu9qhk.svelte-1uu9qhk{min-width:0}.trash-section.svelte-1uu9qhk h3.svelte-1uu9qhk{margin:0 0 10px;font-size:13px;color:#a5b4fc;text-transform:uppercase;letter-spacing:.3px}.trash-section-head.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;align-items:center;gap:10px;margin-bottom:10px;min-height:36px}.trash-section-head.svelte-1uu9qhk h3.svelte-1uu9qhk{margin:0 0 2px}.trash-section-head.svelte-1uu9qhk p.svelte-1uu9qhk{margin:0;color:#8888a0;font-size:12px}.trash-row.svelte-1uu9qhk.svelte-1uu9qhk{display:grid;grid-template-columns:auto auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:9px 10px;border:1px solid #2a2a3c;border-radius:8px;background:#1a1a28;margin-bottom:8px}.trash-row.folder.svelte-1uu9qhk.svelte-1uu9qhk{background:#1b2132;border-color:#303856}.trash-row.selected.svelte-1uu9qhk.svelte-1uu9qhk{border-color:#6366f1;background:#20203a}.trash-row-icon.svelte-1uu9qhk.svelte-1uu9qhk{color:#a5b4fc;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;padding:4px;border-radius:4px;background:transparent;border:none}.trash-row-icon.svelte-1uu9qhk.svelte-1uu9qhk:hover{background:#222238;color:#e4e4ef}.trash-row-main.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;flex-direction:column;gap:2px;min-width:0;padding:2px 0;cursor:pointer;background:transparent;border:none;color:inherit;font:inherit;text-align:left;width:100%;border-radius:4px}.trash-row-main.svelte-1uu9qhk.svelte-1uu9qhk:hover{background:#ffffff08}.trash-row-main.svelte-1uu9qhk:hover .trash-row-title.svelte-1uu9qhk{color:#a5b4fc}.trash-row-main.svelte-1uu9qhk.svelte-1uu9qhk:focus-visible{outline:2px solid #6366f1;outline-offset:2px}.trash-row-title.svelte-1uu9qhk.svelte-1uu9qhk{min-width:0;color:#e4e4ef;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.trash-row-meta.svelte-1uu9qhk.svelte-1uu9qhk{color:#8ea0d8;font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.trash-row-date.svelte-1uu9qhk.svelte-1uu9qhk{color:#666;font-size:11px}.trash-row-actions.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;align-items:center;gap:6px;justify-content:flex-end}.trash-empty-line.svelte-1uu9qhk.svelte-1uu9qhk{color:#8888a0;font-size:13px;margin:0}.journal-screen.svelte-1uu9qhk.svelte-1uu9qhk{padding:24px;overflow-y:auto;flex:1}.journal-tabs.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;gap:0;border-bottom:1px solid #2a2a3c;margin-bottom:16px}.journal-tab.svelte-1uu9qhk.svelte-1uu9qhk{padding:10px 16px;border:none;background:none;color:#888;font-size:13px;cursor:pointer;border-bottom:2px solid transparent;font-family:inherit;position:relative}.journal-tab.svelte-1uu9qhk.svelte-1uu9qhk:hover{color:#a5b4fc}.journal-tab.active.svelte-1uu9qhk.svelte-1uu9qhk{color:#e4e4ef;border-bottom-color:#818cf8;background:#6366f11f;font-weight:600}.journal-header.svelte-1uu9qhk.svelte-1uu9qhk{margin-bottom:24px}.journal-summary.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;flex-wrap:wrap;gap:24px;margin-bottom:24px;padding:16px;background:#1a1a2e;border-radius:8px;border:1px solid #2a2a3c}.summary-total.svelte-1uu9qhk.svelte-1uu9qhk{font-size:18px;font-weight:700;color:#e4e4ef;width:100%;margin-bottom:4px}.summary-section.svelte-1uu9qhk.svelte-1uu9qhk{flex:1;min-width:200px}.summary-label.svelte-1uu9qhk.svelte-1uu9qhk{font-size:12px;font-weight:600;color:#a5b4fc;text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px}.summary-row.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;gap:8px;font-size:13px;padding:4px 0;border-bottom:1px solid #2a2a3c}.summary-row.svelte-1uu9qhk span.svelte-1uu9qhk:first-child{flex:1;color:#e4e4ef}.summary-count.svelte-1uu9qhk.svelte-1uu9qhk{color:#8888a0}.journal-table-wrap.svelte-1uu9qhk.svelte-1uu9qhk{overflow-x:auto}.journal-table.svelte-1uu9qhk.svelte-1uu9qhk{width:100%;border-collapse:collapse;font-size:13px}.journal-table.svelte-1uu9qhk th.svelte-1uu9qhk{text-align:left;padding:8px 12px;border-bottom:2px solid #2a2a3c;color:#b0b0c8;font-weight:600;font-size:12px;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}.journal-table.svelte-1uu9qhk td.svelte-1uu9qhk{padding:8px 12px;border-bottom:1px solid #1a1a28;color:#e4e4ef}.journal-table.svelte-1uu9qhk tr:hover td.svelte-1uu9qhk{background:#1e1e32}.journal-table.svelte-1uu9qhk .link-btn.svelte-1uu9qhk{color:#a5b4fc}.journal-path-cell.svelte-1uu9qhk.svelte-1uu9qhk{max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#a0a0b8;font-size:12px}.journal-min-cell.svelte-1uu9qhk.svelte-1uu9qhk{text-align:right;font-variant-numeric:tabular-nums}.journal-date-cell.svelte-1uu9qhk.svelte-1uu9qhk{color:#b0b0c0;white-space:nowrap}.journal-bool-cell.svelte-1uu9qhk.svelte-1uu9qhk{text-align:center;color:#a0a0b8}.journal-row.svelte-1uu9qhk.svelte-1uu9qhk{cursor:pointer}.journal-row.svelte-1uu9qhk:hover td.svelte-1uu9qhk{background:#1e1e32}.journal-row.expanded.svelte-1uu9qhk td.svelte-1uu9qhk{background:#1a1a30;border-bottom:none}.journal-summary-cell.svelte-1uu9qhk.svelte-1uu9qhk{max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.journal-row-detail.svelte-1uu9qhk td.svelte-1uu9qhk{padding:0 12px 12px;background:#16162a}.journal-detail-body.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;flex-direction:column;gap:12px;padding:8px 0}.journal-detail-actions.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;gap:8px;justify-content:flex-end}.journal-detail-section.svelte-1uu9qhk.svelte-1uu9qhk{font-size:13px}.journal-detail-label.svelte-1uu9qhk.svelte-1uu9qhk{font-size:11px;font-weight:600;color:#a5b4fc;text-transform:uppercase;letter-spacing:.3px;display:block;margin-bottom:4px}.journal-detail-section.svelte-1uu9qhk p.svelte-1uu9qhk{margin:0;color:#c0c0d0}.journal-event-row.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;align-items:center;gap:8px;padding:4px 0;font-size:13px;color:#b0b0c0}.journal-event-time.svelte-1uu9qhk.svelte-1uu9qhk{color:#a0a0b8;font-variant-numeric:tabular-nums;white-space:nowrap;min-width:48px}.journal-event-type.svelte-1uu9qhk.svelte-1uu9qhk{color:#8888a0;font-size:11px;background:#1a1a2e;padding:1px 6px;border-radius:3px}.journal-event-title.svelte-1uu9qhk.svelte-1uu9qhk{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.journal-node-picker.svelte-1uu9qhk input[type=text].svelte-1uu9qhk{padding:6px 10px;border:1px solid #2a2a3c;background:#13131f;color:#e4e4ef;border-radius:4px;font-size:13px;font-family:inherit;width:240px}.journal-search-dropdown.svelte-1uu9qhk.svelte-1uu9qhk{position:absolute;top:100%;left:0;right:0;z-index:50;background:#1a1a28;border:1px solid #2a2a3c;border-radius:6px;margin-top:4px;max-height:240px;overflow-y:auto;min-width:260px}.journal-search-item.svelte-1uu9qhk.svelte-1uu9qhk{display:block;width:100%;padding:8px 12px;border:none;background:transparent;color:#e4e4ef;cursor:pointer;font-family:inherit;font-size:13px;text-align:left}.journal-search-item.svelte-1uu9qhk.svelte-1uu9qhk:hover{background:#2a2a4a}.journal-search-title.svelte-1uu9qhk.svelte-1uu9qhk{display:block;font-weight:500}.journal-search-path.svelte-1uu9qhk.svelte-1uu9qhk{display:block;font-size:11px;color:#8888a0;margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.journal-selected-node.svelte-1uu9qhk.svelte-1uu9qhk{cursor:pointer;display:inline-flex;align-items:center;gap:6px;padding:6px 10px;background:#1e1e3a;border:1px solid #3a3a5c;border-radius:4px;font-size:13px;color:#a5b4fc;white-space:nowrap;font-family:inherit}.journal-selected-node.svelte-1uu9qhk.svelte-1uu9qhk:hover{background:#2a2a4a}.journal-node-clear.svelte-1uu9qhk.svelte-1uu9qhk{color:#8888a0;font-size:14px;margin-left:4px}.journal-status-msg.svelte-1uu9qhk.svelte-1uu9qhk{font-size:12px;color:#34d399;padding:4px 8px;background:#1a2a1e;border-radius:4px}.journal-include-chk.svelte-1uu9qhk.svelte-1uu9qhk{width:16px;height:16px;accent-color:#6366f1;cursor:pointer}.link-btn.svelte-1uu9qhk.svelte-1uu9qhk{background:none;border:none;padding:0;color:#a5b4fc;font:inherit;cursor:pointer;text-align:left}.link-btn.svelte-1uu9qhk.svelte-1uu9qhk:hover{text-decoration:underline}.nav-badge.svelte-1uu9qhk.svelte-1uu9qhk{background:#6366f1;color:#fff;font-size:10px;font-weight:700;border-radius:10px;padding:1px 6px;margin-left:6px;line-height:1.4}.actions-tab.svelte-1uu9qhk.svelte-1uu9qhk{padding:24px}.action-card.svelte-1uu9qhk.svelte-1uu9qhk{background:#1a1a28;padding:12px 16px;border-radius:8px;display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}.action-info.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;align-items:center;gap:8px;flex:1;min-width:0}.action-title.svelte-1uu9qhk.svelte-1uu9qhk{font-weight:500}.action-type.svelte-1uu9qhk.svelte-1uu9qhk{font-size:11px;color:#888;background:#223;padding:2px 8px;border-radius:10px;white-space:nowrap}.action-data.svelte-1uu9qhk.svelte-1uu9qhk{font-size:11px;color:#555;font-family:SF Mono,Fira Code,monospace;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:200px}.action-btns.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;gap:4px;flex-shrink:0}.action-btns.svelte-1uu9qhk .btn-danger.svelte-1uu9qhk{color:#ff6b6b;border-color:#4a2222;padding:4px 8px}.action-btns.svelte-1uu9qhk .btn-danger.svelte-1uu9qhk:hover{background:#3a2222}.empty-state.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px;text-align:center}.empty-state.svelte-1uu9qhk p.svelte-1uu9qhk{margin:0;font-size:14px;color:#666}.welcome.svelte-1uu9qhk.svelte-1uu9qhk{padding:48px 24px;text-align:center}.welcome.svelte-1uu9qhk h2.svelte-1uu9qhk{font-size:32px;font-weight:300;color:#8888a4;margin-bottom:16px}.welcome.svelte-1uu9qhk p.svelte-1uu9qhk{color:#666;font-size:14px}.error-text.svelte-1uu9qhk.svelte-1uu9qhk{color:#f88}.modal-overlay.svelte-1uu9qhk.svelte-1uu9qhk{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:100}.modal.svelte-1uu9qhk.svelte-1uu9qhk{background:#1a1a28;border:1px solid #2a2a3c;border-radius:12px;padding:24px;width:400px;max-width:90vw}.modal.svelte-1uu9qhk h3.svelte-1uu9qhk{font-size:18px;margin-bottom:16px}.modal.svelte-1uu9qhk textarea.svelte-1uu9qhk{width:100%;padding:8px 12px;border:1px solid #2a2a3c;background:#13131f;color:#e4e4ef;border-radius:4px;font-size:14px;font-family:inherit;min-height:60px;resize:vertical;box-sizing:border-box}.modal-worklog.svelte-1uu9qhk.svelte-1uu9qhk{width:460px}.form-group.svelte-1uu9qhk.svelte-1uu9qhk{margin-bottom:12px}.form-row.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;gap:16px;margin-bottom:12px}.form-group.svelte-1uu9qhk label.svelte-1uu9qhk{display:block}.form-group.svelte-1uu9qhk .label-text.svelte-1uu9qhk,.form-group.svelte-1uu9qhk .form-label.svelte-1uu9qhk{display:block;font-size:12px;color:#666;margin-bottom:4px}.form-group.svelte-1uu9qhk input.svelte-1uu9qhk,.form-group.svelte-1uu9qhk select.svelte-1uu9qhk{width:100%;padding:8px 12px;border:1px solid #2a2a3c;background:#13131f;color:#e4e4ef;border-radius:4px;font-size:14px;font-family:inherit}.form-group.svelte-1uu9qhk select.svelte-1uu9qhk{-moz-appearance:none;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23888' d='M2 4l4 4 4-4'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;padding-right:32px}.form-group.svelte-1uu9qhk input.svelte-1uu9qhk:focus,.form-group.svelte-1uu9qhk select.svelte-1uu9qhk:focus{outline:none;border-color:#6366f1}.modal-actions.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;gap:8px;justify-content:flex-end;margin-top:16px}.assign-search.svelte-1uu9qhk.svelte-1uu9qhk{position:relative}.assign-search-results.svelte-1uu9qhk.svelte-1uu9qhk{position:absolute;left:0;right:0;top:100%;z-index:110;margin-top:4px;background:#1a1a28;border:1px solid #2a2a3c;border-radius:6px;max-height:220px;overflow-y:auto}.assign-search-result.svelte-1uu9qhk.svelte-1uu9qhk{width:100%;display:flex;justify-content:space-between;gap:12px;padding:8px 10px;border:0;border-bottom:1px solid #24243a;background:transparent;color:#e4e4ef;text-align:left;cursor:pointer;font-family:inherit}.assign-search-result.svelte-1uu9qhk.svelte-1uu9qhk:hover{background:#222238}.assign-search-result.svelte-1uu9qhk span.svelte-1uu9qhk:last-child{color:#8888a0;font-size:12px;flex-shrink:0}.assign-hint.svelte-1uu9qhk.svelte-1uu9qhk{color:#8888a0;font-size:11px;margin-top:4px}.assign-status.svelte-1uu9qhk.svelte-1uu9qhk{color:#8888a0;font-size:12px}.btn.svelte-1uu9qhk.svelte-1uu9qhk{padding:8px 16px;border:1px solid #2a2a3c;background:#1a1a28;color:#ccc;border-radius:6px;cursor:pointer;font-size:13px;font-family:inherit;display:inline-flex;align-items:center;gap:6px}.btn.svelte-1uu9qhk svg,.inbox-icon-btn.svelte-1uu9qhk svg{flex-shrink:0}.btn.svelte-1uu9qhk.svelte-1uu9qhk:hover{background:#223}.btn-primary.svelte-1uu9qhk.svelte-1uu9qhk{background:#6366f1;border-color:#6366f1;color:#fff}.btn-primary.svelte-1uu9qhk.svelte-1uu9qhk:hover{background:#4f46e5}.btn.svelte-1uu9qhk.svelte-1uu9qhk:disabled{opacity:.4;cursor:not-allowed}.btn-sm.svelte-1uu9qhk.svelte-1uu9qhk{padding:4px 10px;font-size:12px}.btn-danger.svelte-1uu9qhk.svelte-1uu9qhk{color:#ff6b6b;border-color:#4a2222}.btn-danger.svelte-1uu9qhk.svelte-1uu9qhk:hover{background:#3a2222}.settings-section select,.settings-section input[type=text],.settings-section input[type=url],.settings-section input[type=number],.settings-section input[type=password]{appearance:none;-webkit-appearance:none;-moz-appearance:none;width:100%;padding:.5rem .75rem;background:#13131f;border:1px solid #2a2a3e;border-radius:6px;color:#e0e0e0;font-size:.9rem;font-family:inherit;transition:border-color .15s,box-shadow .15s}.settings-section select{padding-right:2rem;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23888' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .6rem center;background-size:.85rem}.settings-section select:hover,.settings-section input:hover{border-color:#3a3a5e}.settings-section select:focus,.settings-section input:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 2px #6366f133}.settings-section select:disabled,.settings-section input:disabled{opacity:.45;cursor:not-allowed;border-color:#2a2a3e}.settings-section select option{background:#1e1e2e;color:#e0e0e0}.template-cards.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;flex-direction:column;gap:6px;margin-bottom:8px}.template-card.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;align-items:center;gap:12px;padding:10px 14px;border:1px solid #2a2a3c;background:#13131f;color:#ccc;border-radius:8px;cursor:pointer;font-size:13px;font-family:inherit;width:100%;text-align:left}.template-card.svelte-1uu9qhk.svelte-1uu9qhk:hover{background:#1e1e30;border-color:#3a3a5c}.template-card.selected.svelte-1uu9qhk.svelte-1uu9qhk{background:#2a2a50;border-color:#6366f1;color:#e4e4ef}.template-card-text.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;flex-direction:column;gap:2px;min-width:0}.template-card-title.svelte-1uu9qhk.svelte-1uu9qhk{font-weight:500}.template-card-desc.svelte-1uu9qhk.svelte-1uu9qhk{font-size:11px;color:#888}.activity-tab.svelte-1uu9qhk.svelte-1uu9qhk{padding:24px}.activity-events.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;flex-direction:column;gap:2px}.activity-event.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:6px;font-size:13px;color:#b0b0c0;cursor:pointer}.activity-event.svelte-1uu9qhk.svelte-1uu9qhk:hover{background:#1a1a28;color:#e4e4ef}.activity-event-icon.svelte-1uu9qhk.svelte-1uu9qhk{width:18px;text-align:center;color:#6366f1;font-size:13px;flex-shrink:0}.activity-event-title.svelte-1uu9qhk.svelte-1uu9qhk{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.activity-event-path.svelte-1uu9qhk.svelte-1uu9qhk{max-width:240px;color:#8ea0d8;font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.activity-event-type.svelte-1uu9qhk.svelte-1uu9qhk{font-size:11px;color:#666;flex-shrink:0}.activity-event-target.svelte-1uu9qhk.svelte-1uu9qhk{font-size:10px;color:#555;background:#1e1e2e;padding:1px 6px;border-radius:8px;flex-shrink:0}.activity-event-time.svelte-1uu9qhk.svelte-1uu9qhk{font-size:11px;color:#555;margin-left:8px;flex-shrink:0}.activity-feed.svelte-1uu9qhk.svelte-1uu9qhk{padding:24px;overflow-y:auto;flex:1}.activity-feed-events.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;flex-direction:column;gap:2px}.activity-feed-event.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;align-items:flex-start;gap:10px;padding:8px 12px;border-radius:8px;cursor:pointer}.activity-feed-event.svelte-1uu9qhk.svelte-1uu9qhk:hover{background:#1a1a28;color:#e4e4ef}.activity-feed-icon.svelte-1uu9qhk.svelte-1uu9qhk{width:20px;text-align:center;color:#6366f1;font-size:14px;flex-shrink:0;margin-top:1px}.activity-feed-body.svelte-1uu9qhk.svelte-1uu9qhk{flex:1;min-width:0}.activity-feed-title.svelte-1uu9qhk.svelte-1uu9qhk{font-size:14px;color:#e4e4ef}.activity-feed-meta.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;align-items:center;gap:8px;margin-top:2px}.activity-feed-type.svelte-1uu9qhk.svelte-1uu9qhk{font-size:11px;color:#666}.activity-feed-target.svelte-1uu9qhk.svelte-1uu9qhk{font-size:10px;color:#555;background:#1e1e2e;padding:1px 6px;border-radius:8px}.activity-feed-time.svelte-1uu9qhk.svelte-1uu9qhk{font-size:11px;color:#555}.journal-filter-section.svelte-1uu9qhk.svelte-1uu9qhk{margin-bottom:12px;padding:12px 16px;background:#1a1a2e;border:1px solid #2a2a3c;border-radius:8px}.journal-filter-heading.svelte-1uu9qhk.svelte-1uu9qhk{font-size:11px;font-weight:600;color:#a5b4fc;text-transform:uppercase;letter-spacing:.3px;margin-bottom:8px}.journal-filters-row.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;flex-wrap:wrap;gap:8px 16px;align-items:flex-end}.journal-filters-row.svelte-1uu9qhk label.svelte-1uu9qhk{display:flex;flex-direction:column;gap:3px;font-size:12px;color:#8888a0}.journal-filters-row.svelte-1uu9qhk input[type=date].svelte-1uu9qhk{padding:5px 8px;border:1px solid #2a2a3c;background:#13131f;color:#e4e4ef;border-radius:4px;font-size:12px;font-family:inherit}.journal-filters-row.svelte-1uu9qhk .checkbox-label.svelte-1uu9qhk{flex-direction:row;align-items:center;gap:6px;cursor:pointer}.journal-filters-row.svelte-1uu9qhk .checkbox-label input.svelte-1uu9qhk{width:auto}.journal-export-section.svelte-1uu9qhk.svelte-1uu9qhk{padding:8px 16px;background:#1a1a2e;border:1px solid #2a2a3c;border-radius:8px}.journal-export-heading.svelte-1uu9qhk.svelte-1uu9qhk{font-size:11px;font-weight:600;color:#a5b4fc;text-transform:uppercase;letter-spacing:.3px;margin-bottom:6px}.journal-export-row.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;gap:8px;align-items:center}.journal-toggle-col.svelte-1uu9qhk.svelte-1uu9qhk{width:32px;min-width:32px;text-align:center;padding:8px 4px!important}.journal-toggle-icon.svelte-1uu9qhk.svelte-1uu9qhk{color:#6366f1;font-size:12px}.worklog-entry.svelte-1uu9qhk.svelte-1uu9qhk{padding:8px 12px;background:#1a1a28;border:1px solid #2a2a3c;border-radius:8px;margin-bottom:6px;cursor:pointer}.worklog-entry.svelte-1uu9qhk.svelte-1uu9qhk:hover{border-color:#3a3a5c}.worklog-entry.expanded.svelte-1uu9qhk.svelte-1uu9qhk{border-color:#6366f1}.worklog-entry-head.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;align-items:center;gap:8px;font-size:13px;color:#e4e4ef}.worklog-toggle.svelte-1uu9qhk.svelte-1uu9qhk{color:#6366f1;font-size:12px;width:16px;text-align:center;flex-shrink:0}.worklog-entry-summary.svelte-1uu9qhk.svelte-1uu9qhk{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.worklog-entry-path.svelte-1uu9qhk.svelte-1uu9qhk{max-width:240px;color:#8ea0d8;font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.worklog-entry-mins.svelte-1uu9qhk.svelte-1uu9qhk{color:#b0b0c8;font-variant-numeric:tabular-nums;white-space:nowrap}.worklog-entry-date.svelte-1uu9qhk.svelte-1uu9qhk{color:#b0b0c0;font-size:12px;white-space:nowrap}.worklog-entry-detail.svelte-1uu9qhk.svelte-1uu9qhk{margin-top:8px;padding-top:8px;border-top:1px solid #2a2a3c;display:flex;flex-direction:column;gap:8px}.worklog-entry-actions.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;gap:8px;justify-content:flex-end}.wl-detail-section.svelte-1uu9qhk.svelte-1uu9qhk{font-size:13px}.wl-detail-label.svelte-1uu9qhk.svelte-1uu9qhk{font-size:11px;font-weight:600;color:#a5b4fc;text-transform:uppercase;letter-spacing:.3px;display:block;margin-bottom:2px}.wl-detail-section.svelte-1uu9qhk p.svelte-1uu9qhk{margin:0;color:#c0c0d0}.wl-tag-billable.svelte-1uu9qhk.svelte-1uu9qhk{font-size:10px;color:#34d399;background:#1a2a1e;padding:1px 6px;border-radius:8px;white-space:nowrap}.wl-tag-approx.svelte-1uu9qhk.svelte-1uu9qhk{font-size:10px;color:#fbbf24;background:#2a2a1a;padding:1px 6px;border-radius:8px;white-space:nowrap}.checkbox-label-inline.svelte-1uu9qhk.svelte-1uu9qhk{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:#e4e4ef;cursor:pointer}.checkbox-label-inline.svelte-1uu9qhk input.svelte-1uu9qhk{width:auto}.note-editor-wrapper.svelte-1uu9qhk.svelte-1uu9qhk{flex:1;display:flex;flex-direction:column;min-height:0;overflow:hidden}.verstak-toast.svelte-1uu9qhk.svelte-1uu9qhk{position:fixed;bottom:24px;left:50%;transform:translate(-50%);background:#1e1e38;border:1px solid #3a3a5c;border-radius:8px;padding:12px 20px;color:#e4e4ef;font-size:13px;z-index:9999;box-shadow:0 4px 20px #0006;animation:svelte-1uu9qhk-toast-in .2s ease-out}@keyframes svelte-1uu9qhk-toast-in{0%{opacity:0;transform:translate(-50%) translateY(8px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.modal-overlay.svelte-1uu9qhk.svelte-1uu9qhk{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:9998}.modal-box.svelte-1uu9qhk.svelte-1uu9qhk{background:#1a1a2e;border:1px solid #2a2a3c;border-radius:10px;padding:24px;width:420px;max-width:90vw;display:flex;flex-direction:column;gap:14px}.modal-box.svelte-1uu9qhk h3.svelte-1uu9qhk{font-size:16px;font-weight:600;color:#e4e4ef;margin:0}.modal-box.svelte-1uu9qhk label.svelte-1uu9qhk{display:flex;flex-direction:column;gap:4px;font-size:12px;color:#888}.modal-box.svelte-1uu9qhk input[type=text].svelte-1uu9qhk{padding:8px 12px;border:1px solid #2a2a3c;border-radius:6px;background:#13131f;color:#e4e4ef;font-size:13px;font-family:inherit;outline:none}.modal-box.svelte-1uu9qhk input[type=text].svelte-1uu9qhk:focus{border-color:#818cf8}.modal-actions.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;gap:8px;justify-content:flex-end;margin-top:4px} diff --git a/cmd/verstak-gui/frontend-dist/assets/main-WcQPBFFT.js b/cmd/verstak-gui/frontend-dist/assets/main-WcQPBFFT.js new file mode 100644 index 0000000..d4ba7fc --- /dev/null +++ b/cmd/verstak-gui/frontend-dist/assets/main-WcQPBFFT.js @@ -0,0 +1,87 @@ +var tg=Object.defineProperty;var ng=(n,e,t)=>e in n?tg(n,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):n[e]=t;var lt=(n,e,t)=>ng(n,typeof e!="symbol"?e+"":e,t);(function(){const e=document.createElement("link").relList;if(e&&e.supports&&e.supports("modulepreload"))return;for(const i of document.querySelectorAll('link[rel="modulepreload"]'))l(i);new MutationObserver(i=>{for(const o of i)if(o.type==="childList")for(const s of o.addedNodes)s.tagName==="LINK"&&s.rel==="modulepreload"&&l(s)}).observe(document,{childList:!0,subtree:!0});function t(i){const o={};return i.integrity&&(o.integrity=i.integrity),i.referrerPolicy&&(o.referrerPolicy=i.referrerPolicy),i.crossOrigin==="use-credentials"?o.credentials="include":i.crossOrigin==="anonymous"?o.credentials="omit":o.credentials="same-origin",o}function l(i){if(i.ep)return;i.ep=!0;const o=t(i);fetch(i.href,o)}})();function se(){}function lg(n,e){for(const t in e)n[t]=e[t];return n}function Of(n){return n()}function Uo(){return Object.create(null)}function Ce(n){n.forEach(Of)}function pl(n){return typeof n=="function"}function at(n,e){return n!=n?e==e:n!==e||n&&typeof n=="object"||typeof n=="function"}let bi;function Pl(n,e){return n===e?!0:(bi||(bi=document.createElement("a")),bi.href=e,n===bi.href)}function ig(n){return Object.keys(n).length===0}function sg(n,e,t,l){if(n){const i=Df(n,e,t,l);return n[0](i)}}function Df(n,e,t,l){return n[1]&&l?lg(t.ctx.slice(),n[1](l(e))):t.ctx}function og(n,e,t,l){if(n[2]&&l){const i=n[2](l(t));if(e.dirty===void 0)return i;if(typeof i=="object"){const o=[],s=Math.max(e.dirty.length,i.length);for(let c=0;c32){const e=[],t=n.ctx.length/32;for(let l=0;ln.removeEventListener(e,t,l)}function ji(n){return function(e){return e.preventDefault(),n.call(this,e)}}function We(n){return function(e){return e.stopPropagation(),n.call(this,e)}}function xt(n){return function(e){e.target===this&&n.call(this,e)}}function r(n,e,t){t==null?n.removeAttribute(e):n.getAttribute(e)!==t&&n.setAttribute(e,t)}function zl(n){return n===""?null:+n}function cg(n){return Array.from(n.childNodes)}function Q(n,e){e=""+e,n.data!==e&&(n.data=e)}function Me(n,e){n.value=e??""}function sn(n,e,t,l){t==null?n.style.removeProperty(e):n.style.setProperty(e,t,"")}function Yn(n,e,t){for(let l=0;l{const i=n.$$.callbacks[e];if(i){const o=ug(e,t,{cancelable:l});return i.slice().forEach(s=>{s.call(n,o)}),!o.defaultPrevented}return!0}}function Ds(n,e){const t=n.$$.callbacks[e.type];t&&t.slice().forEach(l=>l.call(this,e))}const Ll=[],In=[];let Dl=[];const Wo=[],Pf=Promise.resolve();let Ts=!1;function qf(){Ts||(Ts=!0,Pf.then(zf))}function fg(){return qf(),Pf}function hl(n){Dl.push(n)}const ps=new Set;let Al=0;function zf(){if(Al!==0)return;const n=$l;do{try{for(;Aln.indexOf(l)===-1?e.push(l):t.push(l)),t.forEach(l=>l()),Dl=e}const Ai=new Set;let ul;function yt(){ul={r:0,c:[],p:ul}}function Et(){ul.r||Ce(ul.c),ul=ul.p}function ge(n,e){n&&n.i&&(Ai.delete(n),n.i(e))}function ke(n,e,t,l){if(n&&n.o){if(Ai.has(n))return;Ai.add(n),ul.c.push(()=>{Ai.delete(n),l&&(t&&n.d(1),l())}),n.o(e)}else l&&l()}function Te(n){return(n==null?void 0:n.length)!==void 0?n:Array.from(n)}function Bf(n,e){ke(n,1,1,()=>{e.delete(n.key)})}function Ff(n,e,t,l,i,o,s,c,u,d,p,h){let m=n.length,g=o.length,b=m;const v={};for(;b--;)v[n[b].key]=b;const y=[],E=new Map,T=new Map,N=[];for(b=g;b--;){const R=h(i,o,b),D=t(R);let B=s.get(D);B?N.push(()=>B.p(R,e)):(B=d(D,R),B.c()),E.set(D,y[b]=B),D in v&&T.set(D,Math.abs(b-v[D]))}const A=new Set,I=new Set;function O(R){ge(R,1),R.m(c,p),s.set(R.key,R),p=R.first,g--}for(;m&&g;){const R=y[g-1],D=n[m-1],B=R.key,j=D.key;R===D?(p=R.first,m--,g--):E.has(j)?!s.has(B)||A.has(B)?O(R):I.has(j)?m--:T.get(B)>T.get(j)?(I.add(B),O(R)):(A.add(j),m--):(u(D,s),m--)}for(;m--;){const R=n[m];E.has(R.key)||u(R,s)}for(;g;)O(y[g-1]);return Ce(N),y}function Qe(n){n&&n.c()}function Ye(n,e,t){const{fragment:l,after_update:i}=n.$$;l&&l.m(e,t),hl(()=>{const o=n.$$.on_mount.map(Of).filter(pl);n.$$.on_destroy?n.$$.on_destroy.push(...o):Ce(o),n.$$.on_mount=[]}),i.forEach(hl)}function Xe(n,e){const t=n.$$;t.fragment!==null&&(pg(t.after_update),Ce(t.on_destroy),t.fragment&&t.fragment.d(e),t.on_destroy=t.fragment=null,t.ctx=[])}function hg(n,e){n.$$.dirty[0]===-1&&(Ll.push(n),qf(),n.$$.dirty.fill(0)),n.$$.dirty[e/31|0]|=1<{const b=g.length?g[0]:m;return d.ctx&&i(d.ctx[h],d.ctx[h]=b)&&(!d.skip_bound&&d.bound[h]&&d.bound[h](b),p&&hg(n,h)),m}):[],d.update(),p=!0,Ce(d.before_update),d.fragment=l?l(d.ctx):!1,e.target){if(e.hydrate){const h=cg(e.target);d.fragment&&d.fragment.l(h),h.forEach(S)}else d.fragment&&d.fragment.c();e.intro&&ge(n.$$.fragment),Ye(n,e.target,e.anchor),zf()}xl(u)}class ut{constructor(){lt(this,"$$");lt(this,"$$set")}$destroy(){Xe(this,1),this.$destroy=se}$on(e,t){if(!pl(t))return se;const l=this.$$.callbacks[e]||(this.$$.callbacks[e]=[]);return l.push(t),()=>{const i=l.indexOf(t);i!==-1&&l.splice(i,1)}}$set(e){this.$$set&&!ig(e)&&(this.$$.skip_bound=!0,this.$$set(e),this.$$.skip_bound=!1)}}const mg="4";typeof window<"u"&&(window.__svelte||(window.__svelte={v:new Set})).v.add(mg);function gg(n){let e,t;return{c(){e=ae("path"),t=ae("polyline"),r(e,"d","M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"),r(t,"points","14 2 14 8 20 8")},m(l,i){C(l,e,i),C(l,t,i)},d(l){l&&(S(e),S(t))}}}function _g(n){let e,t,l,i,o;return{c(){e=ae("path"),t=ae("polyline"),l=ae("line"),i=ae("line"),o=ae("polyline"),r(e,"d","M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"),r(t,"points","14 2 14 8 20 8"),r(l,"x1","16"),r(l,"y1","13"),r(l,"x2","8"),r(l,"y2","13"),r(i,"x1","16"),r(i,"y1","17"),r(i,"x2","8"),r(i,"y2","17"),r(o,"points","10 9 9 9 8 9")},m(s,c){C(s,e,c),C(s,t,c),C(s,l,c),C(s,i,c),C(s,o,c)},d(s){s&&(S(e),S(t),S(l),S(i),S(o))}}}function bg(n){let e,t;return{c(){e=ae("polyline"),t=ae("polyline"),r(e,"points","16 18 22 12 16 6"),r(t,"points","8 6 2 12 8 18")},m(l,i){C(l,e,i),C(l,t,i)},d(l){l&&(S(e),S(t))}}}function kg(n){let e,t,l,i;return{c(){e=ae("path"),t=ae("polyline"),l=ae("line"),i=ae("rect"),r(e,"d","M21 8v13a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8"),r(t,"points","7 3 12 8 17 3"),r(l,"x1","3"),r(l,"y1","8"),r(l,"x2","21"),r(l,"y2","8"),r(i,"x","10"),r(i,"y","12"),r(i,"width","4"),r(i,"height","4"),r(i,"rx","1")},m(o,s){C(o,e,s),C(o,t,s),C(o,l,s),C(o,i,s)},d(o){o&&(S(e),S(t),S(l),S(i))}}}function vg(n){let e,t,l,i,o;return{c(){e=ae("path"),t=ae("polyline"),l=ae("line"),i=ae("line"),o=ae("line"),r(e,"d","M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"),r(t,"points","14 2 14 8 20 8"),r(l,"x1","9"),r(l,"y1","12"),r(l,"x2","15"),r(l,"y2","12"),r(i,"x1","9"),r(i,"y1","15"),r(i,"x2","13"),r(i,"y2","15"),r(o,"x1","12"),r(o,"y1","15"),r(o,"x2","12"),r(o,"y2","18")},m(s,c){C(s,e,c),C(s,t,c),C(s,l,c),C(s,i,c),C(s,o,c)},d(s){s&&(S(e),S(t),S(l),S(i),S(o))}}}function wg(n){let e,t,l,i,o,s;return{c(){e=ae("path"),t=ae("polyline"),l=ae("line"),i=ae("line"),o=ae("line"),s=ae("line"),r(e,"d","M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"),r(t,"points","14 2 14 8 20 8"),r(l,"x1","8"),r(l,"y1","12"),r(l,"x2","16"),r(l,"y2","12"),r(i,"x1","8"),r(i,"y1","16"),r(i,"x2","16"),r(i,"y2","16"),r(o,"x1","8"),r(o,"y1","14"),r(o,"x2","12"),r(o,"y2","14"),r(s,"x1","12"),r(s,"y1","12"),r(s,"x2","12"),r(s,"y2","18")},m(c,u){C(c,e,u),C(c,t,u),C(c,l,u),C(c,i,u),C(c,o,u),C(c,s,u)},d(c){c&&(S(e),S(t),S(l),S(i),S(o),S(s))}}}function yg(n){let e,t,l,i;return{c(){e=ae("path"),t=ae("polyline"),l=ae("line"),i=ae("line"),r(e,"d","M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"),r(t,"points","14 2 14 8 20 8"),r(l,"x1","16"),r(l,"y1","13"),r(l,"x2","8"),r(l,"y2","13"),r(i,"x1","16"),r(i,"y1","17"),r(i,"x2","8"),r(i,"y2","17")},m(o,s){C(o,e,s),C(o,t,s),C(o,l,s),C(o,i,s)},d(o){o&&(S(e),S(t),S(l),S(i))}}}function Eg(n){let e,t,l,i,o;return{c(){e=ae("path"),t=ae("polyline"),l=ae("line"),i=ae("line"),o=ae("line"),r(e,"d","M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"),r(t,"points","14 2 14 8 20 8"),r(l,"x1","8"),r(l,"y1","12"),r(l,"x2","16"),r(l,"y2","12"),r(i,"x1","8"),r(i,"y1","16"),r(i,"x2","16"),r(i,"y2","16"),r(o,"x1","8"),r(o,"y1","14"),r(o,"x2","12"),r(o,"y2","14")},m(s,c){C(s,e,c),C(s,t,c),C(s,l,c),C(s,i,c),C(s,o,c)},d(s){s&&(S(e),S(t),S(l),S(i),S(o))}}}function Tg(n){let e,t,l;return{c(){e=ae("path"),t=ae("circle"),l=ae("circle"),r(e,"d","M9 18V5l12-2v13"),r(t,"cx","6"),r(t,"cy","18"),r(t,"r","3"),r(l,"cx","18"),r(l,"cy","16"),r(l,"r","3")},m(i,o){C(i,e,o),C(i,t,o),C(i,l,o)},d(i){i&&(S(e),S(t),S(l))}}}function Sg(n){let e,t;return{c(){e=ae("rect"),t=ae("polyline"),r(e,"x","2"),r(e,"y","4"),r(e,"width","20"),r(e,"height","16"),r(e,"rx","2"),r(t,"points","10 9 16 12 10 15 10 9")},m(l,i){C(l,e,i),C(l,t,i)},d(l){l&&(S(e),S(t))}}}function Cg(n){let e,t,l;return{c(){e=ae("rect"),t=ae("circle"),l=ae("polyline"),r(e,"x","3"),r(e,"y","3"),r(e,"width","18"),r(e,"height","18"),r(e,"rx","2"),r(e,"ry","2"),r(t,"cx","8.5"),r(t,"cy","8.5"),r(t,"r","1.5"),r(l,"points","21 15 16 10 5 21")},m(i,o){C(i,e,o),C(i,t,o),C(i,l,o)},d(i){i&&(S(e),S(t),S(l))}}}function Ag(n){let e;return{c(){e=ae("path"),r(e,"d","M22 19a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h5l2 3h9a2 2 0 0 1 2 2z")},m(t,l){C(t,e,l)},d(t){t&&S(e)}}}function Ng(n){let e;function t(o,s){return o[0]==="folder"?Ag:o[0]==="image"?Cg:o[0]==="video"?Sg:o[0]==="audio"?Tg:o[0]==="pdf"?Eg:o[0]==="document"?yg:o[0]==="spreadsheet"?wg:o[0]==="presentation"?vg:o[0]==="archive"?kg:o[0]==="code"?bg:o[0]==="text"?_g:gg}let l=t(n),i=l(n);return{c(){e=ae("svg"),i.c(),r(e,"width",n[1]),r(e,"height",n[1]),r(e,"viewBox","0 0 24 24"),r(e,"fill","none"),r(e,"stroke","currentColor"),r(e,"stroke-width","1.5"),r(e,"stroke-linecap","round"),r(e,"stroke-linejoin","round"),r(e,"xmlns","http://www.w3.org/2000/svg")},m(o,s){C(o,e,s),i.m(e,null)},p(o,[s]){l!==(l=t(o))&&(i.d(1),i=l(o),i&&(i.c(),i.m(e,null))),s&2&&r(e,"width",o[1]),s&2&&r(e,"height",o[1])},i:se,o:se,d(o){o&&S(e),i.d()}}}function Ig(n,e,t){let{kind:l="generic"}=e,{size:i=20}=e;return n.$$set=o=>{"kind"in o&&t(0,l=o.kind),"size"in o&&t(1,i=o.size)},[l,i]}class jf extends ut{constructor(e){super(),ct(this,e,Ig,Ng,at,{kind:0,size:1})}}const Rg={"nav.today":"Сегодня","nav.inbox":"Неразобранное","nav.trash":"Корзина","nav.activity":"Активность","nav.journal":"Журнал","nav.clients":"Клиенты","nav.projects":"Проекты","nav.recipes":"Рецепты","nav.documents":"Документы","nav.archive":"Архив","nav.sections":"Разделы","nav.cases":"Дела","nav.noCases":"Нет дел","nav.sync":"Синхронизация","nav.syncSettings":"Настройки синхронизации","nav.syncNow":"Синхронизировать","nav.selectPrompt":"Выберите раздел или дело","nav.brand":"Верстак","nav.system":"Системное","nav.workspace":"Рабочее пространство","nav.noNodes":"Нет узлов","nav.openFolder":"Открыть папку","nav.createInside":"Создать внутри","nav.createNode":"Создать элемент","nav.moveToRoot":"Переместить в корень","inbox.subtitle":"Захваченные материалы, которые нужно разложить по делам","inbox.sortByDate":"по дате","inbox.sortByName":"по имени","inbox.sortByType":"по типу","inbox.sortAsc":"по возрастанию","inbox.sortDesc":"по убыванию","inbox.groupByContext":"Группировать по месту захвата","inbox.noContext":"Без места захвата","inbox.empty":"Неразобранных элементов нет","inbox.pasteClipboard":"Вставить из буфера","inbox.captured":"Добавлено","inbox.clipboardEmpty":"Буфер обмена пуст","inbox.clipboardUnavailable":"Буфер обмена недоступен","inbox.assign":"Разложить","inbox.keepHere":"Прикрепить в захваченном месте","inbox.localEmpty":"Для этого дела неразобранных материалов нет","inbox.capturedIn":"Захвачено в","inbox.suggestedTarget":"Цель","inbox.assignTitle":"Разложить материал","inbox.assignTarget":"Дело","inbox.assignSearchPlaceholder":"Найти дело","inbox.assignSearchHint":"Начните набирать название Дела","inbox.deleteTitle":"Удалить материал","inbox.deleteConfirm":"Удалить «{title}» из неразобранного?","capture.kind.text":"Текст","capture.kind.url":"Ссылка","capture.kind.file":"Файл","capture.kind.folder":"Папка","capture.kind.image":"Изображение","capture.source.clipboard":"Буфер обмена","capture.source.clipboard_button":"Кнопка буфера","capture.source.drop":"Перетаскивание","capture.source.paste":"Вставка","capture.source.browser":"Браузер","capture.source.manual":"Вручную","capture.dropOverlayNode":"Будет добавлено в Неразобранное для: {title}","capture.dropOverlayGlobal":"Будет добавлено в глобальное Неразобранное","trash.openFolder":"Открыть папку корзины","trash.empty":"Корзина пуста","trash.emptyTrash":"Очистить корзину","trash.restore":"Восстановить","trash.deletedNodes":"Удаленные элементы","tab.overview":"Обзор","tab.notes":"Заметки","tab.files":"Файлы","tab.inbox":"Неразобранное","tab.links":"Ссылки","tab.actions":"Действия","tab.worklog":"Журнал","tab.activity":"Активность","common.save":"Сохранить","common.cancel":"Отмена","common.delete":"Удалить","common.rename":"Переименовать","common.close":"Закрыть","common.create":"Создать","common.confirm":"Подтверждение","common.back":"← Назад","common.backLabel":"Назад","common.loading":"Загрузка...","common.error":"Ошибка:","common.yes":"Да","common.ok":"OK","common.copy":"Копировать","common.cut":"Вырезать","common.paste":"Вставить","common.duplicate":"Дублировать","common.run":"Запустить","common.test":"Test","common.all":"Все","common.open":"Открыть","common.no":"Нет","common.date":"Дата","common.search":"Найти","common.testAgain":"Проверить","common.connect":"Подключиться","common.disconnect":"Отключиться","common.settings":"Настройки","common.name":"Название","common.type":"Тип","common.section":"Раздел","common.created":"Создано","common.empty":"Нет","common.newName":"Новое имя","search.placeholder":"Поиск по Верстаку...","search.noResults":"Ничего не найдено","welcome.title":"Верстак","welcome.selectSection":"Выберите раздел в боковой панели.","welcome.createCase":"Или создайте новое дело кнопкой «+».","welcome.addCase":"Добавить дело","event.noteCreated":"Заметка создана","event.noteUpdated":"Заметка изменена","event.fileAdded":"Файл добавлен","event.fileDeleted":"Файл удалён","event.fileRenamed":"Файл переименован","event.fileCopied":"Файл скопирован","event.fileMoved":"Файл перемещён","event.folderAdded":"Папка добавлена","event.folderDeleted":"Папка удалена","event.folderRenamed":"Папка переименована","event.caseCreated":"Дело создано","event.caseUpdated":"Дело изменено","event.noteDeleted":"Заметка удалена","event.folderMoved":"Папка перемещена","event.nodeDeleted":"Узел удалён","event.actionCreated":"Действие создано","event.actionDone":"Действие выполнено","event.worklogAdded":"Запись времени добавлена","kind.project":"Проект","kind.client":"Клиент","kind.document":"Документ","kind.recipe":"Рецепт","kind.folder":"Папка","kind.note":"Заметка","kind.file":"Файл","kind.archive":"Архив","kind.case":"Дело","kind.link":"Ссылка","kind.action":"Действие","links.empty":"Ссылок пока нет","links.editTitle":"Редактировать ссылку","links.note":"Заметка","links.copyUrl":"Копировать URL","links.copied":"URL скопирован","links.copyUnavailable":"Не удалось скопировать URL","links.deleteTitle":"Удалить ссылку","links.deleteConfirm":"Удалить ссылку «{title}»?","action.openUrl":"Открыть URL","action.openFile":"Открыть файл","action.openFolder":"Открыть папку","action.runCommand":"Запустить команду","action.runScript":"Запустить скрипт","action.openTerminal":"Открыть терминал","action.launchApp":"Запустить приложение","action.addAction":"+ Добавить действие","action.newAction":"Новое действие","action.noActions":"Действий пока нет","action.run":"Запустить","action.dataUrl":"URL","action.dataPath":"Путь","action.dataCommand":"Команда","action.urlPlaceholder":"https://example.com","action.pathPlaceholder":"/path/to/file","action.commandPlaceholder":"команда","action.namePlaceholder":"Например: Открыть сайт","note.add":"+ Добавить заметку","note.new":"Новая заметка","note.title":"Название заметки","note.noNotes":"Нет заметок","note.createFirst":"Создайте первую заметку для этого дела.","note.placeholder":"Начните писать...","note.unsavedTitle":"Несохранённые изменения","note.unsavedMessage":"Закрыть редактор? Все несохранённые изменения будут потеряны.","note.unsavedClose":"Закрыть","note.mode.edit":"Редактор","note.mode.preview":"Просмотр","note.mode.split":"Разделённый","note.toolbar.bold":"Жирный (Ctrl+B)","note.toolbar.italic":"Курсив (Ctrl+I)","note.toolbar.heading":"Заголовок","note.toolbar.link":"Ссылка","note.toolbar.code":"Код","note.toolbar.codeBlock":"Блок кода","note.toolbar.bulletList":"Маркированный список","note.toolbar.numberedList":"Нумерованный список","note.toolbar.checkbox":"Чекбокс","note.toolbar.quote":"Цитата","note.toolbar.internalLink":"Внутренняя ссылка Verstak","note.internal.secretNotImplemented":"Сейф доступов ещё не реализован","note.internal.caseNotFound":"Дело не найдено","note.internal.noteNotFound":"Заметка не найдена","note.internal.fileNotFound":"Файл не найден","note.internal.fileFound":"Файл найден: {title}","note.rename":"Переименовать заметку","note.deleteConfirm":"Удалить заметку «{title}»?","note.renameError":"Не удалось переименовать заметку","note.internalLink.title":"Вставить внутреннюю ссылку","note.internalLink.label":"Текст ссылки","note.internalLink.url":"Адрес ссылки","note.internalLink.labelPlaceholder":"Например: Админка","note.internalLink.urlPlaceholder":"verstak://secret/sec_...","note.preview.empty":"Пустая заметка. Переключитесь в режим редактора, чтобы начать писать.","note.preview.error":"Ошибка рендеринга markdown","link.label":"Текст ссылки","link.url":"URL или verstak:// ссылка","link.urlPlaceholder":"https://... или verstak://secret/sec_...","link.insert":"Вставить","file.addFile":"+ Добавить файл","file.addFolder":"+ Добавить папку","file.newFile":"+ Новый файл","file.addFileSimple":"Добавить файл","file.addFolderSimple":"Добавить папку","file.noFiles":"В этой папке пока нет файлов","file.noFilesCase":"В этом проекте пока нет файлов","file.hint":"Добавьте файл или папку, чтобы сохранить материалы проекта.","file.root":"Файлы","file.preview":"Предпросмотр","file.openExternal":"Открыть во внешней программе","file.openFolder":"Открыть папку","file.showInExplorer":"Показать в проводнике","file.more":"Ещё","file.delete":"Удалить","file.ariaFolder":"Папка","file.ariaFile":"Файл","file.scanning":"Сканирование...","file.pickSingle":"Выберите файл","file.pickMultiple":"Выберите файлы","file.pickDirectory":"Выберите папку","file.importTitle":"Добавить в","file.importFiles":"Файлов:","file.importFolders":"Папок:","file.importSize":"Размер:","file.importCopy":"Скопировать","file.importLink":"Привязать","file.selectCaseFirst":"Сначала выберите дело для добавления файлов","worklog.title":"Журнал","worklog.whatDone":"Что сделано","worklog.minutes":"Мин","worklog.min":"мин","worklog.log":"Записать","worklog.addEntry":"Добавить запись","worklog.acceptSuggestion":"Принять предложение","worklog.editEntry":"Редактировать запись","worklog.deleteEntry":"Удалить запись","worklog.deleteConfirm":"Удалить эту запись работы? Связанные события останутся в активности, но связь с записью будет удалена.","worklog.date":"Дата","worklog.empty":"Записей работы пока нет","worklog.details":"Детали","worklog.source":"Источник","worklog.sourceSuggestion":"Из предложения","worklog.sourceSuggestionNoEvents":"Из предложения, но связанные события отсутствуют","worklog.sourceManual":"Ручная запись","worklog.sourceUnknown":"Источник неизвестен","worklog.suggestions":"Предложения на сегодня","worklog.apply":"Применить","sync.title":"Синхронизация","sync.settings":"Настройки синхронизации","sync.status":"Статус","sync.server":"Сервер","sync.device":"Устройство","sync.deviceId":"ID устройства","sync.unpushed":"Неотправлено","sync.lastSync":"Последняя синх.","sync.revoked":"Отозвано","sync.connected":"Подключено","sync.notConnected":"Не подключено","sync.disabled":"Отключена","sync.serverUrl":"URL сервера","sync.serverUrlPlaceholder":"https://example.com:47732","sync.username":"Логин","sync.usernamePlaceholder":"username","sync.password":"Пароль","sync.passwordPlaceholder":"password","sync.interval":"Автосинхронизация (мин)","sync.saveInterval":"Сохранить интервал","sync.syncNow":"Синхронизировать","sync.disconnect":"Отключиться","sync.connect":"Подключиться","sync.test":"Проверить","sync.settingsSaved":"интервал сохранён","today.title":"Сегодня","today.changedCases":"Изменён сегодня","today.timeline":"Лента за сегодня","today.empty":"Сегодня пока тихо","today.emptyHint":"Здесь появятся дела, заметки, файлы и действия, с которыми вы работали сегодня.","today.plural.case_one":"дело","today.plural.case_few":"дела","today.plural.case_many":"дел","today.plural.note_one":"заметка","today.plural.note_few":"заметки","today.plural.note_many":"заметок","today.plural.file_one":"файл","today.plural.file_few":"файла","today.plural.file_many":"файлов","today.plural.event_one":"событие","today.plural.event_few":"события","today.plural.event_many":"событий","today.feed":"Лента","today.suggestionsTab":"Предложения","today.inProgress":"В работе","today.captured":"Захвачено","today.feedEmpty":"Сегодня событий нет","today.inProgressEmpty":"Сегодня ничего не изменяли","today.capturedEmpty":"Сегодня ничего не захвачено","today.feedHint":"События за сегодня: изменения файлов, заметок, действий и другие события.","today.sortByTime":"по времени","today.sortByName":"по имени","today.sortByType":"по типу","today.sortAsc":"по возрастанию","today.sortDesc":"по убыванию","journal.title":"Журнал работы","journal.worklogTab":"Журнал работы","journal.empty":"Нет записей за выбранный период","journal.dateFrom":"От","journal.dateTo":"До","journal.filter":"Фильтр","journal.total":"Всего","journal.exportCSV":"CSV","journal.exportMarkdown":"Markdown","journal.billable":"К оплате","journal.billableYes":"К оплате","journal.billableNo":"Не к оплате","journal.billableHint":"К оплате — можно включать в счёт клиенту","journal.approx":"Тип времени","journal.approxExact":"Точное","journal.approxEstimated":"Оценочное","journal.approxHint":"Оценочное — время предложено системой или введено как примерное","journal.includeChildrenDisabledHint":"Работает только при выбранном деле/клиенте/проекте","journal.node":"Дело","journal.path":"Путь","journal.byDay":"По дням","journal.byNode":"По делам","journal.includeChildren":"Учитывать вложенные дела","journal.nodeSearch":"Поиск дела...","journal.relatedEvents":"Связанные события","journal.filterHeading":"Фильтры","journal.exportHeading":"Экспорт отчёта","journal.reset":"Сбросить","suggest.title":"Предложения на сегодня","suggest.apply":"Записать","suggest.dismiss":"Скрыть","suggest.open":"Открыть","suggest.confidence.low":"Низкая уверенность","suggest.confidence.medium":"Средняя уверенность","suggest.confidence.high":"Высокая уверенность","suggest.minutes":"мин","suggest.edit":"Изменить","suggest.noSuggestions":"Нет предложений для журнала","suggest.detectedEvents":"Что обнаружено","activity.title":"Активность","activity.empty":"Активность пока не зафиксирована","activity.perCaseEmpty":"Активность пока не зафиксирована","overview.type":"Тип","overview.section":"Раздел","overview.created":"Создано","overview.newNote":"Новая заметка","overview.addFile":"Добавить файл","overview.addAction":"Добавить действие","overview.logTime":"Записать время","overview.recentNotes":"Последние заметки","overview.recentEntries":"Последние записи","rename.title":"Переименовать","rename.emptyError":"Имя не может быть пустым","rename.invalidError":"Недопустимое имя","delete.confirmTitle":"Удаление","delete.confirmMessage":"Удалить","delete.folder":"папку","delete.file":"файл","template.optionNone":"Пустое дело","template.optional":"Шаблон (опционально)","template.none.desc":"Без шаблона, простой узел-контейнер","template.folder":"Папка","template.folder.desc":"Папка для группировки элементов внутри рабочего пространства","template.project":"Проект","template.project.desc":"Отдельный проект или задача с файлами, заметками и журналом","template.client":"Клиент","template.client.desc":"Организация или человек, для которых ведутся работы","template.document":"Документ","template.document.desc":"Документ с описанием, заметками и файлами","template.recipe":"Рецепт","template.recipe.desc":"Повторяемая процедура или инструкция","template.note":"Заметка","template.file":"Файл","template.select":"Выберите тип","mime.jpeg":"Изображение JPEG","mime.png":"Изображение PNG","mime.gif":"Изображение GIF","mime.webp":"Изображение WebP","mime.svg":"Изображение SVG","mime.bmp":"Изображение BMP","mime.tiff":"Изображение TIFF","mime.avif":"Изображение AVIF","mime.pdf":"PDF документ","mime.word":"Документ Word","mime.excel":"Таблица Excel","mime.ppt":"Презентация PowerPoint","mime.zip":"ZIP архив","mime.gzip":"GZIP архив","mime.tar":"TAR архив","mime.sevenz":"7z архив","mime.rar":"RAR архив","mime.text":"Текстовый файл","mime.html":"HTML файл","mime.css":"CSS файл","mime.js":"JavaScript файл","mime.json":"JSON файл","mime.xml":"XML файл","mime.yaml":"YAML файл","mime.binary":"Бинарный файл","mime.executable":"Исполняемый файл","mime.folder":"Папка","mime.unknown":"Неизвестно","mime.file":"Файл","error.nameEmpty":"Имя не может быть пустым","error.nameInvalid":"Недопустимое имя","error.selectCaseFirst":"Сначала выберите дело","error.vaultNotOpen":"Хранилище не открыто","delete.files":"файлов ({count})","file.namePrompt":"Введите имя файла:","file.pdfUnavailable":"Предпросмотр PDF недоступен.","file.previewUnavailable":"Предпросмотр недоступен для этого типа файлов.","case.new":"Новое дело","case.namePlaceholder":"Название дела","settings.title":"Настройки","settings.general":"Общие","settings.generalDesc":"Основные настройки интерфейса.","settings.workspace":"Рабочее пространство","settings.workspaceDesc":"Управление хранилищем данных.","settings.appearance":"Внешний вид","settings.localization":"Локализация","settings.templates":"Шаблоны","settings.plugins":"Плагины","settings.files":"Файлы","settings.activity":"Активность","settings.sync":"Синхронизация","settings.backup":"Резервные копии","settings.close":"Закрыть настройки","settings.noPlugins":"Плагины пока не установлены.","settings.openPluginsDir":"Открыть папку plugins","settings.activityStub":"Здесь будут настройки отслеживания активности.","settings.backupStub":"Здесь будут настройки резервного копирования.","settings.theme":"Тема интерфейса","settings.themeSystem":"Системная","settings.themeLight":"Светлая","settings.themeDark":"Тёмная","settings.language":"Язык интерфейса","settings.langRu":"Русский","settings.langEn":"Английский","settings.langSoon":"будет доступно позже","settings.save":"Сохранить настройки","settings.saved":"Настройки сохранены","settings.vaultPath":"Путь к рабочему пространству","settings.noVaultInfo":"Нет информации о хранилище.","settings.vaultInfo":"Информация о рабочем пространстве","settings.openVault":"Открыть папку vault","settings.changeVault":"Изменить путь","settings.checkIntegrity":"Проверить целостность","settings.templatesDesc":"Включите или выключите шаблоны создания элементов.","settings.templateEnabled":"Включён","settings.templateDisabled":"Выключен","settings.filesStub":"Здесь будут настройки файлового хранилища.","settings.syncEnabled":"Синхронизация включена","settings.syncDisabled":"Синхронизация отключена","settings.syncDesc":"Настройте подключение к серверу синхронизации.","settings.serverUrl":"URL сервера","settings.deviceName":"Имя устройства","settings.deviceId":"ID устройства","settings.lastSync":"Последняя синхронизация","settings.lastError":"Последняя ошибка","settings.pendingChanges":"Ожидающие изменения","settings.checkConnection":"Проверить подключение","settings.syncNow":"Синхронизировать сейчас","settings.reconnect":"Переподключить","settings.disconnect":"Отключить устройство","settings.resetKey":"Сбросить ключ","settings.confirmDisconnect":"Вы уверены, что хотите отключить устройство?","settings.confirmDisconnectDesc":"Синхронизация будет остановлена. Для повторного подключения потребуется логин и пароль.","settings.confirmResetKey":"Сбросить ключ синхронизации?","settings.confirmResetKeyDesc":"Текущий ключ устройства будет удалён. Потребуется переподключение.","settings.connected":"Подключено","settings.disconnected":"Не подключено","settings.notConfigured":"Не настроено","settings.error":"Ошибка","settings.revoked":"Отозвано","settings.status":"Статус","firstrun.title":"Добро пожаловать в Верстак","firstrun.desc":"Верстак хранит данные в локальном рабочем пространстве — vault.","firstrun.pathLabel":"Путь к vault","firstrun.defaultPath":"Путь по умолчанию","firstrun.browse":"Выбрать папку","firstrun.create":"Создать рабочее пространство","firstrun.quit":"Выйти","firstrun.pathExists":"Папка существует. Будет создан новый vault.","firstrun.pathHasVault":"Найден существующий vault. Будет подключён.","firstrun.pathNew":"Путь не существует. Будет создан новый vault.","firstrun.errorNoWrite":"Нет прав на запись в выбранную папку.","firstrun.creating":"Создание рабочего пространства...","firstrun.created":"Рабочее пространство создано!","recovery.title":"Рабочее пространство не найдено","recovery.expected":"Ожидался путь","recovery.choose":"Выбрать другой vault","recovery.create":"Создать новый vault","recovery.settings":"Открыть настройки","recovery.quit":"Выйти","recovery.createConfirm":"Будет создано новое пустое рабочее пространство. Старый путь в настройках будет заменён.","recovery.createConfirmTitle":"Создать новое рабочее пространство?","sync.status.connected":"Синхронизация доступна","sync.status.disconnected":"Сервер недоступен","sync.status.disabled":"Синхронизация не настроена","sync.status.syncing":"Синхронизация...","sync.status.error":"Ошибка синхронизации","sync.changes":"изменений","sync.details":"Подробнее","sync.configure":"Настроить","sync.retry":"Повторить","sync.run":"Синхронизировать","sync.running":"Синхронизация...","sync.conflictsCount":"Конфликты: {count}","sync.applyErrorsCount":"Ошибки применения: {count}","sync.pushedPulled":"Отправлено: {pushed}, получено: {pulled}","error.generic":"Произошла ошибка","error.invalidCredentials":"Неверный логин или пароль","error.accountBlocked":"Аккаунт заблокирован","error.emailNotConfirmed":"Email не подтверждён","error.tokenInvalid":"Неверный или просроченный токен","error.tokenExpired":"Срок действия токена истёк"},Mg={"nav.today":"Today","nav.inbox":"Inbox","nav.trash":"Trash","nav.activity":"Activity","nav.journal":"Journal","nav.clients":"Clients","nav.projects":"Projects","nav.recipes":"Recipes","nav.documents":"Documents","nav.archive":"Archive","nav.sections":"Sections","nav.cases":"Cases","nav.noCases":"No cases","nav.sync":"Sync","nav.syncSettings":"Sync settings","nav.syncNow":"Sync now","nav.selectPrompt":"Select a section or case","nav.brand":"Verstak","nav.system":"System","nav.workspace":"Workspace","nav.noNodes":"No nodes","nav.openFolder":"Open folder","nav.createInside":"Create inside","nav.createNode":"Create element","nav.moveToRoot":"Move to root","inbox.subtitle":"Captured materials that still need to be assigned to cases","inbox.sortByDate":"by date","inbox.sortByName":"by name","inbox.sortByType":"by type","inbox.sortAsc":"ascending","inbox.sortDesc":"descending","inbox.groupByContext":"Group by capture location","inbox.noContext":"No capture location","inbox.empty":"No unprocessed items","inbox.pasteClipboard":"Paste from clipboard","inbox.captured":"Added","inbox.clipboardEmpty":"Clipboard is empty","inbox.clipboardUnavailable":"Clipboard is unavailable","inbox.assign":"Assign","inbox.keepHere":"Attach at captured location","inbox.localEmpty":"No unprocessed materials for this case","inbox.capturedIn":"Captured in","inbox.suggestedTarget":"Target","inbox.assignTitle":"Assign material","inbox.assignTarget":"Case","inbox.assignSearchPlaceholder":"Find case","inbox.assignSearchHint":"Start typing a Case name","inbox.deleteTitle":"Delete material","inbox.deleteConfirm":'Delete "{title}" from inbox?',"capture.kind.text":"Text","capture.kind.url":"Link","capture.kind.file":"File","capture.kind.folder":"Folder","capture.kind.image":"Image","capture.source.clipboard":"Clipboard","capture.source.clipboard_button":"Clipboard button","capture.source.drop":"Drop","capture.source.paste":"Paste","capture.source.browser":"Browser","capture.source.manual":"Manual","capture.dropOverlayNode":"Will be added to Inbox for: {title}","capture.dropOverlayGlobal":"Will be added to global Inbox","trash.openFolder":"Open trash folder","trash.empty":"Trash is empty","trash.emptyTrash":"Empty trash","trash.restore":"Restore","trash.deletedNodes":"Deleted items","tab.overview":"Overview","tab.notes":"Notes","tab.files":"Files","tab.inbox":"Inbox","tab.links":"Links","tab.actions":"Actions","tab.worklog":"Work Log","tab.activity":"Activity","common.save":"Save","common.cancel":"Cancel","common.delete":"Delete","common.rename":"Rename","common.close":"Close","common.create":"Create","common.confirm":"Confirm","common.back":"← Back","common.backLabel":"Back","common.loading":"Loading...","common.error":"Error:","common.yes":"Yes","common.ok":"OK","common.copy":"Copy","common.cut":"Cut","common.paste":"Paste","common.duplicate":"Duplicate","common.run":"Run","common.test":"Test","common.all":"All","common.open":"Open","common.no":"No","common.date":"Date","common.search":"Search","common.testAgain":"Check","common.connect":"Connect","common.disconnect":"Disconnect","common.settings":"Settings","common.name":"Name","common.type":"Type","common.section":"Section","common.created":"Created","common.empty":"None","common.newName":"New name","search.placeholder":"Search Verstak...","search.noResults":"No results found","welcome.title":"Verstak","welcome.selectSection":"Select a section in the sidebar.","welcome.createCase":"Or create a new case with the + button.","welcome.addCase":"Add case","event.noteCreated":"Note created","event.noteUpdated":"Note updated","event.fileAdded":"File added","event.fileDeleted":"File deleted","event.fileRenamed":"File renamed","event.fileCopied":"File copied","event.fileMoved":"File moved","event.folderAdded":"Folder added","event.folderDeleted":"Folder deleted","event.folderRenamed":"Folder renamed","event.caseCreated":"Case created","event.caseUpdated":"Case updated","event.noteDeleted":"Note deleted","event.folderMoved":"Folder moved","event.nodeDeleted":"Node deleted","event.actionCreated":"Action created","event.actionDone":"Action completed","event.worklogAdded":"Time entry added","kind.project":"Project","kind.client":"Client","kind.document":"Document","kind.recipe":"Recipe","kind.folder":"Folder","kind.note":"Note","kind.file":"File","kind.archive":"Archive","kind.case":"Case","kind.link":"Link","kind.action":"Action","links.empty":"No links yet","links.editTitle":"Edit link","links.note":"Note","links.copyUrl":"Copy URL","links.copied":"URL copied","links.copyUnavailable":"Could not copy URL","links.deleteTitle":"Delete link","links.deleteConfirm":'Delete link "{title}"?',"action.openUrl":"Open URL","action.openFile":"Open file","action.openFolder":"Open folder","action.runCommand":"Run command","action.runScript":"Run script","action.openTerminal":"Open terminal","action.launchApp":"Launch app","action.addAction":"+ Add action","action.newAction":"New action","action.noActions":"No actions yet","action.run":"Run","action.dataUrl":"URL","action.dataPath":"Path","action.dataCommand":"Command","action.urlPlaceholder":"https://example.com","action.pathPlaceholder":"/path/to/file","action.commandPlaceholder":"command","action.namePlaceholder":"Example: Open website","note.add":"+ Add note","note.new":"New note","note.title":"Note title","note.noNotes":"No notes","note.createFirst":"Create the first note for this case.","note.placeholder":"Start writing...","note.unsavedTitle":"Unsaved changes","note.unsavedMessage":"Close the editor? All unsaved changes will be lost.","note.unsavedClose":"Close","note.mode.edit":"Edit","note.mode.preview":"Preview","note.mode.split":"Split","note.toolbar.bold":"Bold (Ctrl+B)","note.toolbar.italic":"Italic (Ctrl+I)","note.toolbar.heading":"Heading","note.toolbar.link":"Link","note.toolbar.code":"Code","note.toolbar.codeBlock":"Code block","note.toolbar.bulletList":"Bullet list","note.toolbar.numberedList":"Numbered list","note.toolbar.checkbox":"Checkbox","note.toolbar.quote":"Quote","note.toolbar.internalLink":"Verstak internal link","note.internal.secretNotImplemented":"Secrets vault is not yet implemented","note.internal.caseNotImplemented":"Case navigation is not yet implemented","note.internal.noteNotImplemented":"Note navigation is not yet implemented","note.internal.fileNotImplemented":"File navigation is not yet implemented","note.rename":"Rename note","note.deleteConfirm":'Delete note "{title}"?',"note.renameError":"Failed to rename note","note.internalLink.title":"Insert internal link","note.internalLink.label":"Link text","note.internalLink.url":"Link address","note.internalLink.labelPlaceholder":"e.g. Admin panel","note.internalLink.urlPlaceholder":"verstak://secret/sec_...","note.preview.empty":"Empty note. Switch to edit mode to start writing.","note.preview.error":"Markdown render error","link.label":"Link text","link.url":"URL or verstak:// link","link.urlPlaceholder":"https://... or verstak://secret/sec_...","link.insert":"Insert","file.addFile":"+ Add file","file.addFolder":"+ Add folder","file.newFile":"+ New file","file.addFileSimple":"Add file","file.addFolderSimple":"Add folder","file.noFiles":"No files in this folder yet","file.noFilesCase":"No files in this project yet","file.hint":"Add a file or folder to store project materials.","file.root":"Files","file.preview":"Preview","file.openExternal":"Open in external program","file.openFolder":"Open folder","file.showInExplorer":"Show in explorer","file.more":"More","file.delete":"Delete","file.ariaFolder":"Folder","file.ariaFile":"File","file.scanning":"Scanning...","file.pickSingle":"Select file","file.pickMultiple":"Select files","file.pickDirectory":"Select folder","file.importTitle":"Add to","file.importFiles":"Files:","file.importFolders":"Folders:","file.importSize":"Size:","file.importCopy":"Copy","file.importLink":"Link","file.selectCaseFirst":"Select a case before adding files","worklog.title":"Work Log","worklog.whatDone":"What was done","worklog.minutes":"Min","worklog.min":"min","worklog.log":"Log","worklog.addEntry":"Add entry","worklog.acceptSuggestion":"Accept suggestion","worklog.editEntry":"Edit entry","worklog.deleteEntry":"Delete entry","worklog.deleteConfirm":"Delete this work entry? Related events stay in activity, but their link to this entry will be removed.","worklog.date":"Date","worklog.empty":"No work logged yet","worklog.details":"Details","worklog.source":"Source","worklog.sourceSuggestion":"From suggestion","worklog.sourceSuggestionNoEvents":"From suggestion, but related events missing","worklog.sourceManual":"Manual entry","worklog.sourceUnknown":"Unknown source","worklog.suggestions":"Suggestions for today","worklog.apply":"Apply","sync.title":"Sync","sync.settings":"Sync settings","sync.status":"Status","sync.server":"Server","sync.device":"Device","sync.deviceId":"Device ID","sync.unpushed":"Unpushed","sync.lastSync":"Last sync","sync.revoked":"Revoked","sync.connected":"Connected","sync.notConnected":"Not connected","sync.disabled":"Disabled","sync.serverUrl":"Server URL","sync.serverUrlPlaceholder":"https://example.com:47732","sync.username":"Username","sync.usernamePlaceholder":"username","sync.password":"Password","sync.passwordPlaceholder":"password","sync.interval":"Auto sync (min)","sync.saveInterval":"Save interval","sync.syncNow":"Sync now","sync.disconnect":"Disconnect","sync.connect":"Connect","sync.test":"Check","sync.settingsSaved":"interval saved","today.title":"Today","today.changedCases":"Changed today","today.timeline":"Timeline for today","today.empty":"Nothing happened today yet","today.emptyHint":"Cases, notes, files, and actions you worked with today will appear here.","today.plural.case_one":"case","today.plural.case_few":"cases","today.plural.case_many":"cases","today.plural.note_one":"note","today.plural.note_few":"notes","today.plural.note_many":"notes","today.plural.file_one":"file","today.plural.file_few":"files","today.plural.file_many":"files","today.plural.event_one":"event","today.plural.event_few":"events","today.plural.event_many":"events","today.feed":"Feed","today.suggestionsTab":"Suggestions","today.inProgress":"In Progress","today.captured":"Captured","today.feedEmpty":"No events today","today.inProgressEmpty":"Nothing modified today","today.capturedEmpty":"Nothing captured today","today.feedHint":"Today's events: file changes, notes, actions and other events.","today.sortByTime":"by time","today.sortByName":"by name","today.sortByType":"by type","today.sortAsc":"ascending","today.sortDesc":"descending","journal.title":"Work Log","journal.worklogTab":"Work Log","journal.empty":"No entries for the selected period","journal.dateFrom":"From","journal.dateTo":"To","journal.filter":"Filter","journal.total":"Total","journal.exportCSV":"CSV","journal.exportMarkdown":"Markdown","journal.billable":"Billable","journal.billableYes":"Billable","journal.billableNo":"Not billable","journal.billableHint":"Billable — can be included in client invoice","journal.approx":"Time type","journal.approxExact":"Exact","journal.approxEstimated":"Estimated","journal.approxHint":"Estimated — time suggested by the system or entered as approximate","journal.includeChildrenDisabledHint":"Only works when a case/client/project is selected","journal.node":"Case","journal.path":"Path","journal.byDay":"By day","journal.byNode":"By case","journal.includeChildren":"Include subtasks","journal.nodeSearch":"Search case...","journal.relatedEvents":"Related events","journal.filterHeading":"Filters","journal.exportHeading":"Export Report","journal.reset":"Reset","suggest.title":"Suggestions","suggest.apply":"Log","suggest.dismiss":"Dismiss","suggest.open":"Open","suggest.confidence.low":"Low confidence","suggest.confidence.medium":"Medium confidence","suggest.confidence.high":"High confidence","suggest.minutes":"min","suggest.edit":"Edit","suggest.noSuggestions":"No suggestions","suggest.detectedEvents":"What was detected","activity.title":"Activity","activity.empty":"No activity recorded yet","activity.perCaseEmpty":"No activity recorded yet","overview.type":"Type","overview.section":"Section","overview.created":"Created","overview.newNote":"New note","overview.addFile":"Add file","overview.addAction":"Add action","overview.logTime":"Log time","overview.recentNotes":"Recent notes","overview.recentEntries":"Recent entries","rename.title":"Rename","rename.emptyError":"Name cannot be empty","rename.invalidError":"Invalid name","delete.confirmTitle":"Delete","delete.confirmMessage":"Delete","delete.folder":"folder","delete.file":"file","template.optionNone":"Empty case","template.optional":"Template (optional)","template.none.desc":"No template, simple container node","template.folder":"Folder","template.folder.desc":"A folder to group items inside a workspace","template.project":"Project","template.project.desc":"A distinct project or task with files, notes and work log","template.client":"Client","template.client.desc":"An organization or person for whom work is performed","template.document":"Document","template.document.desc":"A document with description, notes and files","template.recipe":"Recipe","template.recipe.desc":"A repeatable procedure or instruction","template.note":"Note","template.file":"File","template.select":"Select type","mime.jpeg":"JPEG image","mime.png":"PNG image","mime.gif":"GIF image","mime.webp":"WebP image","mime.svg":"SVG image","mime.bmp":"BMP image","mime.tiff":"TIFF image","mime.avif":"AVIF image","mime.pdf":"PDF document","mime.word":"Word document","mime.excel":"Excel spreadsheet","mime.ppt":"PowerPoint presentation","mime.zip":"ZIP archive","mime.gzip":"GZIP archive","mime.tar":"TAR archive","mime.sevenz":"7z archive","mime.rar":"RAR archive","mime.text":"Text file","mime.html":"HTML file","mime.css":"CSS file","mime.js":"JavaScript file","mime.json":"JSON file","mime.xml":"XML file","mime.yaml":"YAML file","mime.binary":"Binary file","mime.executable":"Executable file","mime.folder":"Folder","mime.unknown":"Unknown","mime.file":"File","error.nameEmpty":"Name cannot be empty","error.nameInvalid":"Invalid name","error.selectCaseFirst":"Select a case first","error.vaultNotOpen":"Vault not open","delete.files":"files ({count})","file.namePrompt":"Enter file name:","file.pdfUnavailable":"PDF preview is unavailable.","file.previewUnavailable":"Preview is unavailable for this file type.","case.new":"New case","case.namePlaceholder":"Case name","settings.title":"Settings","settings.general":"General","settings.generalDesc":"Basic interface settings.","settings.workspace":"Workspace","settings.workspaceDesc":"Manage data storage.","settings.appearance":"Appearance","settings.localization":"Localization","settings.templates":"Templates","settings.plugins":"Plugins","settings.files":"Files","settings.activity":"Activity","settings.sync":"Sync","settings.backup":"Backups","settings.close":"Close settings","settings.noPlugins":"No plugins installed yet.","settings.openPluginsDir":"Open plugins folder","settings.activityStub":"Activity tracking settings will be here.","settings.backupStub":"Backup settings will be here.","settings.theme":"Interface theme","settings.themeSystem":"System","settings.themeLight":"Light","settings.themeDark":"Dark","settings.language":"Interface language","settings.langRu":"Russian","settings.langEn":"English","settings.langSoon":"coming soon","settings.save":"Save settings","settings.saved":"Settings saved","settings.vaultPath":"Workspace path","settings.noVaultInfo":"No workspace information.","settings.vaultInfo":"Workspace information","settings.openVault":"Open vault folder","settings.changeVault":"Change path","settings.checkIntegrity":"Check integrity","settings.templatesDesc":"Enable or disable templates for creating items.","settings.templateEnabled":"Enabled","settings.templateDisabled":"Disabled","settings.filesStub":"File storage settings will be here.","settings.syncEnabled":"Sync enabled","settings.syncDisabled":"Sync disabled","settings.syncDesc":"Configure connection to the sync server.","settings.serverUrl":"Server URL","settings.deviceName":"Device name","settings.deviceId":"Device ID","settings.lastSync":"Last sync","settings.lastError":"Last error","settings.pendingChanges":"Pending changes","settings.checkConnection":"Check connection","settings.syncNow":"Sync now","settings.reconnect":"Reconnect","settings.disconnect":"Disconnect device","settings.resetKey":"Reset key","settings.confirmDisconnect":"Are you sure you want to disconnect this device?","settings.confirmDisconnectDesc":"Sync will stop. Reconnecting will require username and password.","settings.confirmResetKey":"Reset sync key?","settings.confirmResetKeyDesc":"The current device key will be removed. Reconnection will be required.","settings.connected":"Connected","settings.disconnected":"Disconnected","settings.notConfigured":"Not configured","settings.error":"Error","settings.revoked":"Revoked","settings.status":"Status","firstrun.title":"Welcome to Verstak","firstrun.desc":"Verstak stores data in a local workspace called a vault.","firstrun.pathLabel":"Vault path","firstrun.defaultPath":"Default path","firstrun.browse":"Choose folder","firstrun.create":"Create workspace","firstrun.quit":"Quit","firstrun.pathExists":"The folder exists. A new vault will be created.","firstrun.pathHasVault":"Existing vault found. It will be connected.","firstrun.pathNew":"The path does not exist. A new vault will be created.","firstrun.errorNoWrite":"No write permission for the selected folder.","firstrun.creating":"Creating workspace...","firstrun.created":"Workspace created!","recovery.title":"Workspace not found","recovery.expected":"Expected path","recovery.choose":"Choose another vault","recovery.create":"Create new vault","recovery.settings":"Open settings","recovery.quit":"Quit","recovery.createConfirm":"A new empty workspace will be created. The old path in settings will be replaced.","recovery.createConfirmTitle":"Create a new workspace?","sync.status.connected":"Sync available","sync.status.disconnected":"Server unavailable","sync.status.disabled":"Sync is not configured","sync.status.syncing":"Syncing...","sync.status.error":"Sync error","sync.changes":"changes","sync.details":"Details","sync.configure":"Configure","sync.retry":"Retry","sync.run":"Sync","sync.running":"Syncing...","sync.conflictsCount":"Conflicts: {count}","sync.applyErrorsCount":"Apply errors: {count}","sync.pushedPulled":"Pushed: {pushed}, pulled: {pulled}","error.generic":"An error occurred","error.invalidCredentials":"Invalid username or password","error.accountBlocked":"Account blocked","error.emailNotConfirmed":"Email not confirmed","error.tokenInvalid":"Invalid or expired token","error.tokenExpired":"Token expired"},Go={ru:Rg,en:Mg};let Ko="ru";function k(n,e){var i;const t=Go[Ko];let l=t==null?void 0:t[n];if(l==null&&Ko!=="ru"&&(l=(i=Go.ru)==null?void 0:i[n]),l==null&&(l=n),e!=null)for(const[o,s]of Object.entries(e))l=l.replace(`{${o}}`,String(s));return l}function Mi(n){if(n==null||n<0)return"—";if(n===0)return"0 B";const e=["B","KB","MB","GB"],t=Math.min(Math.floor(Math.log(n)/Math.log(1024)),e.length-1),l=n/Math.pow(1024,t);return(t===0?l.toFixed(0):l.toFixed(1))+" "+e[t]}const Ss={"image/jpeg":k("mime.jpeg"),"image/png":k("mime.png"),"image/gif":k("mime.gif"),"image/webp":k("mime.webp"),"image/svg+xml":k("mime.svg"),"image/bmp":k("mime.bmp"),"image/tiff":k("mime.tiff"),"image/avif":k("mime.avif"),"application/pdf":k("mime.pdf"),"application/msword":k("mime.word"),"application/vnd.openxmlformats-officedocument.wordprocessingml.document":k("mime.word"),"application/vnd.ms-excel":k("mime.excel"),"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet":k("mime.excel"),"application/vnd.ms-powerpoint":k("mime.ppt"),"application/vnd.openxmlformats-officedocument.presentationml.presentation":k("mime.ppt"),"application/zip":k("mime.zip"),"application/gzip":k("mime.gzip"),"application/x-tar":k("mime.tar"),"application/x-7z-compressed":k("mime.sevenz"),"application/x-rar-compressed":k("mime.rar"),"text/plain":k("mime.text"),"text/html":k("mime.html"),"text/css":k("mime.css"),"text/javascript":k("mime.js"),"application/json":k("mime.json"),"application/xml":k("mime.xml"),"application/x-yaml":k("mime.yaml"),"application/octet-stream":k("mime.binary"),"application/x-msdos-program":k("mime.executable"),"inode/directory":k("mime.folder")};function Vo(n){return n?Ss[n]||n:k("mime.unknown")}function Lg(n){if(n.type==="folder")return k("mime.folder");const e=(n.mime||"").toLowerCase();if(Ss[e])return Ss[e];const l=(n.name||"").toLowerCase().split(".").pop();return l?l.toUpperCase():k("mime.file")}function Uf(n){if(n.type==="folder")return"folder";const e=(n.mime||"").toLowerCase();if(e.startsWith("image/"))return"image";if(e.startsWith("video/"))return"video";if(e.startsWith("audio/"))return"audio";if(e.startsWith("text/"))return"text";if(e.includes("pdf"))return"pdf";if(e.includes("word")||e.includes("document"))return"document";if(e.includes("spreadsheet")||e.includes("excel"))return"spreadsheet";if(e.includes("presentation")||e.includes("powerpoint"))return"presentation";if(e.includes("zip")||e.includes("tar")||e.includes("gzip")||e.includes("rar")||e.includes("7z")||e.includes("compress"))return"archive";if(e.includes("json")||e.includes("xml")||e.includes("yaml")||e.includes("javascript")||e.includes("css")||e.includes("html"))return"code";const l=(n.name||"").toLowerCase().split(".").pop();return["js","ts","jsx","tsx","vue","svelte","py","rs","go","c","cpp","h","hpp","java","kt","swift","rb","php","pl","sh","bash","zsh","fish","yml","yaml","json","xml","toml","ini","cfg","conf","md","markdown","css","scss","less","sass","sql","graphql","proto","gradle","cmake","makefile","dockerfile","env","gitignore"].includes(l)?"code":"generic"}const Hf=["image/jpeg","image/png","image/gif","image/webp","image/bmp","image/tiff","image/avif","image/svg+xml"],Wf=["text/plain","text/html","text/css","text/javascript","application/json","application/xml","application/x-yaml","text/x-shellscript","text/csv","text/tab-separated-values","text/x-python","text/x-java","text/x-c","text/x-cpp","text/x-ruby","text/x-perl","text/x-php","text/x-go","text/x-rust","text/markdown"],Gf=["txt","log","conf","ini","yaml","yml","json","xml","csv","tsv","sh","py","js","ts","css","html","md","markdown","cfg","env","gitignore","dockerignore","toml","bat","cmd","ps1","sql","graphql","proto","gradle","cmake","makefile","dockerfile","vbs","lua","r","m","scala","kt","swift","dart","elm","erl","ex","exs","fs","fsi","fsx","hs","lhs","ml","mli","pl","pm","rb","rake","rs","scm","ss","clj","cljs","cljc","edn","lisp","lsp","el","vim","vimrc","zsh","bash","fish","csh","ksh","tcsh","awk","sed","make","mk","nim","nims","d","go","java","svelte","vue","jsx","tsx","coffee","litcoffee","scss","sass","less","styl","properties","dotenv","editorconfig","gitattributes","browserslistrc","htaccess","nginx","shader","glsl","vert","frag","asm","h","hpp","cxx","cc","cpp","capnp","flatbuf","prisma","dtd","xsl","xsd","sch","svg","vtt","srt","sub","m3u","m3u8","pls","xspf","cue","toc","nfo","diz","readme","changelog","copying","license","authors","contributors","setup","config","strings","po","pot","locale","translation"],Kf=["jpg","jpeg","png","gif","webp","bmp","tiff","tif","avif","svg"];function Og(n){const e=(n.mime||"").toLowerCase(),l=(n.name||"").toLowerCase().split(".").pop();return!!(Hf.includes(e)||Kf.includes(l)||e.includes("pdf")||Wf.includes(e)||Gf.includes(l))}function Vf(n){const e=(n.mime||"").toLowerCase(),l=(n.name||"").toLowerCase().split(".").pop();return Hf.includes(e)||Kf.includes(l)}function Zf(n){const e=(n.mime||"").toLowerCase(),l=(n.name||"").toLowerCase().split(".").pop();return Wf.includes(e)||Gf.includes(l)&&l!=="md"&&l!=="markdown"}function Yf(n){return(n.mime||"").toLowerCase().includes("pdf")}function Li(n){const e=(n.name||"").toLowerCase();return e.endsWith(".md")||e.endsWith(".markdown")}function Dg(n){return Vf(n)||Yf(n)}function Pg(n){return Zf(n)||Li(n)}const{window:qg}=Ls;function zg(n){let e,t,l,i=Mi(n[0].size)+"",o;return{c(){e=f("span"),e.textContent="·",t=w(),l=f("span"),o=H(i),r(e,"class","meta-sep svelte-1skuef2")},m(s,c){C(s,e,c),C(s,t,c),C(s,l,c),a(l,o)},p(s,c){c[0]&1&&i!==(i=Mi(s[0].size)+"")&&Q(o,i)},d(s){s&&(S(e),S(t),S(l))}}}function Bg(n){let e,t,l,i,o;return{c(){e=f("button"),e.innerHTML='',t=w(),l=f("button"),l.innerHTML='',r(e,"class","action-btn svelte-1skuef2"),r(e,"title",k("file.openFolder")),r(e,"aria-label",k("file.openFolder")),r(l,"class","action-btn svelte-1skuef2"),r(l,"title",k("file.showInExplorer")),r(l,"aria-label",k("file.showInExplorer"))},m(s,c){C(s,e,c),C(s,t,c),C(s,l,c),i||(o=[P(e,"click",We(n[30])),P(l,"click",We(n[11]))],i=!0)},p:se,d(s){s&&(S(e),S(t),S(l)),i=!1,Ce(o)}}}function Fg(n){let e,t,l,i,o,s,c;return{c(){e=f("button"),e.innerHTML='',t=w(),l=f("button"),l.innerHTML='',i=w(),o=f("button"),o.innerHTML='',r(e,"class","action-btn svelte-1skuef2"),r(e,"title",k("file.preview")),r(e,"aria-label",k("file.preview")),r(l,"class","action-btn svelte-1skuef2"),r(l,"title",k("file.openExternal")),r(l,"aria-label",k("file.openExternal")),r(o,"class","action-btn svelte-1skuef2"),r(o,"title",k("file.showInExplorer")),r(o,"aria-label",k("file.showInExplorer"))},m(u,d){C(u,e,d),C(u,t,d),C(u,l,d),C(u,i,d),C(u,o,d),s||(c=[P(e,"click",We(n[29])),P(l,"click",We(n[10])),P(o,"click",We(n[11]))],s=!0)},p:se,d(u){u&&(S(e),S(t),S(l),S(i),S(o)),s=!1,Ce(c)}}}function Zo(n){let e,t,l,i,o,s,c,u,d=k("common.open")+"",p,h,m,g,b,v,y,E,T=k("file.openExternal")+"",N,A,I,O,R,D,B=k("file.showInExplorer")+"",j,U,z,W,K,Y,F,L,M,q=k("common.rename")+"",X,Z,J,ee,te,le,_e,oe=k("common.duplicate")+"",ze,Ge,Ie,ne,re,Ne,Fe,we,je,xe=k("common.cut")+"",Ae,Ve,Ue,Se,He,Oe,Ke,Pe=k("common.copy")+"",ue,be,x,ye,me,Re,ft,it,Ze,dt=k("common.delete")+"",Je,pe,qe;return{c(){e=f("div"),t=w(),l=f("div"),i=f("button"),o=ae("svg"),s=ae("path"),c=ae("circle"),u=w(),p=H(d),h=w(),m=f("button"),g=ae("svg"),b=ae("path"),v=ae("polyline"),y=ae("line"),E=w(),N=H(T),A=w(),I=f("button"),O=ae("svg"),R=ae("path"),D=w(),j=H(B),U=w(),z=f("div"),W=w(),K=f("button"),Y=ae("svg"),F=ae("path"),L=ae("path"),M=w(),X=H(q),Z=w(),J=f("button"),ee=ae("svg"),te=ae("rect"),le=ae("path"),_e=w(),ze=H(oe),Ge=w(),Ie=f("button"),ne=ae("svg"),re=ae("circle"),Ne=ae("circle"),Fe=ae("line"),we=ae("line"),je=w(),Ae=H(xe),Ve=w(),Ue=f("button"),Se=ae("svg"),He=ae("rect"),Oe=ae("path"),Ke=w(),ue=H(Pe),be=w(),x=f("div"),ye=w(),me=f("button"),Re=ae("svg"),ft=ae("polyline"),it=ae("path"),Ze=w(),Je=H(dt),r(e,"class","menu-backdrop svelte-1skuef2"),r(e,"role","presentation"),r(s,"d","M1 12s4-8 11-8 11 8 11 8-4 8-11 8-11-8-11-8z"),r(c,"cx","12"),r(c,"cy","12"),r(c,"r","3"),r(o,"width","14"),r(o,"height","14"),r(o,"viewBox","0 0 24 24"),r(o,"fill","none"),r(o,"stroke","currentColor"),r(o,"stroke-width","2"),r(o,"stroke-linecap","round"),r(o,"stroke-linejoin","round"),r(i,"class","menu-item svelte-1skuef2"),r(i,"role","menuitem"),r(b,"d","M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6"),r(v,"points","15 3 21 3 21 9"),r(y,"x1","10"),r(y,"y1","14"),r(y,"x2","21"),r(y,"y2","3"),r(g,"width","14"),r(g,"height","14"),r(g,"viewBox","0 0 24 24"),r(g,"fill","none"),r(g,"stroke","currentColor"),r(g,"stroke-width","2"),r(g,"stroke-linecap","round"),r(g,"stroke-linejoin","round"),r(m,"class","menu-item svelte-1skuef2"),r(m,"role","menuitem"),r(R,"d","M22 19a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h5l2 3h9a2 2 0 0 1 2 2z"),r(O,"width","14"),r(O,"height","14"),r(O,"viewBox","0 0 24 24"),r(O,"fill","none"),r(O,"stroke","currentColor"),r(O,"stroke-width","2"),r(O,"stroke-linecap","round"),r(O,"stroke-linejoin","round"),r(I,"class","menu-item svelte-1skuef2"),r(I,"role","menuitem"),r(z,"class","menu-sep svelte-1skuef2"),r(F,"d","M12 20h9"),r(L,"d","M16.5 3.5a2.121 2.121 0 0 1 3 3L7 19l-4 1 1-4L16.5 3.5z"),r(Y,"width","14"),r(Y,"height","14"),r(Y,"viewBox","0 0 24 24"),r(Y,"fill","none"),r(Y,"stroke","currentColor"),r(Y,"stroke-width","2"),r(Y,"stroke-linecap","round"),r(Y,"stroke-linejoin","round"),r(K,"class","menu-item svelte-1skuef2"),r(K,"role","menuitem"),r(te,"x","9"),r(te,"y","9"),r(te,"width","13"),r(te,"height","13"),r(te,"rx","2"),r(te,"ry","2"),r(le,"d","M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1"),r(ee,"width","14"),r(ee,"height","14"),r(ee,"viewBox","0 0 24 24"),r(ee,"fill","none"),r(ee,"stroke","currentColor"),r(ee,"stroke-width","2"),r(ee,"stroke-linecap","round"),r(ee,"stroke-linejoin","round"),r(J,"class","menu-item svelte-1skuef2"),r(J,"role","menuitem"),r(re,"cx","6"),r(re,"cy","6"),r(re,"r","3"),r(Ne,"cx","6"),r(Ne,"cy","18"),r(Ne,"r","3"),r(Fe,"x1","20"),r(Fe,"y1","4"),r(Fe,"x2","8.12"),r(Fe,"y2","15.88"),r(we,"x1","8.12"),r(we,"y1","8.12"),r(we,"x2","20"),r(we,"y2","20"),r(ne,"width","14"),r(ne,"height","14"),r(ne,"viewBox","0 0 24 24"),r(ne,"fill","none"),r(ne,"stroke","currentColor"),r(ne,"stroke-width","2"),r(ne,"stroke-linecap","round"),r(ne,"stroke-linejoin","round"),r(Ie,"class","menu-item svelte-1skuef2"),r(Ie,"role","menuitem"),r(He,"x","9"),r(He,"y","9"),r(He,"width","13"),r(He,"height","13"),r(He,"rx","2"),r(He,"ry","2"),r(Oe,"d","M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1"),r(Se,"width","14"),r(Se,"height","14"),r(Se,"viewBox","0 0 24 24"),r(Se,"fill","none"),r(Se,"stroke","currentColor"),r(Se,"stroke-width","2"),r(Se,"stroke-linecap","round"),r(Se,"stroke-linejoin","round"),r(Ue,"class","menu-item svelte-1skuef2"),r(Ue,"role","menuitem"),r(x,"class","menu-sep svelte-1skuef2"),r(ft,"points","3 6 5 6 21 6"),r(it,"d","M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6m3 0V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"),r(Re,"width","14"),r(Re,"height","14"),r(Re,"viewBox","0 0 24 24"),r(Re,"fill","none"),r(Re,"stroke","currentColor"),r(Re,"stroke-width","2"),r(Re,"stroke-linecap","round"),r(Re,"stroke-linejoin","round"),r(me,"class","menu-item menu-item-danger svelte-1skuef2"),r(me,"role","menuitem"),r(l,"class","menu svelte-1skuef2"),sn(l,"left",n[3]+"px"),sn(l,"top",n[4]+"px"),sn(l,"position","fixed"),r(l,"role","menu"),r(l,"tabindex","-1")},m(pt,vt){C(pt,e,vt),C(pt,t,vt),C(pt,l,vt),a(l,i),a(i,o),a(o,s),a(o,c),a(i,u),a(i,p),a(l,h),a(l,m),a(m,g),a(g,b),a(g,v),a(g,y),a(m,E),a(m,N),a(l,A),a(l,I),a(I,O),a(O,R),a(I,D),a(I,j),a(l,U),a(l,z),a(l,W),a(l,K),a(K,Y),a(Y,F),a(Y,L),a(K,M),a(K,X),a(l,Z),a(l,J),a(J,ee),a(ee,te),a(ee,le),a(J,_e),a(J,ze),a(l,Ge),a(l,Ie),a(Ie,ne),a(ne,re),a(ne,Ne),a(ne,Fe),a(ne,we),a(Ie,je),a(Ie,Ae),a(l,Ve),a(l,Ue),a(Ue,Se),a(Se,He),a(Se,Oe),a(Ue,Ke),a(Ue,ue),a(l,be),a(l,x),a(l,ye),a(l,me),a(me,Re),a(Re,ft),a(Re,it),a(me,Ze),a(me,Je),pe||(qe=[P(e,"click",We(n[19])),P(i,"click",n[17]),P(m,"click",n[10]),P(I,"click",n[11]),P(K,"click",n[13]),P(J,"click",n[14]),P(Ie,"click",n[15]),P(Ue,"click",n[16]),P(me,"click",n[12]),P(l,"click",We(n[28])),P(l,"keydown",n[31])],pe=!0)},p(pt,vt){vt[0]&8&&sn(l,"left",pt[3]+"px"),vt[0]&16&&sn(l,"top",pt[4]+"px")},d(pt){pt&&(S(e),S(t),S(l)),pe=!1,Ce(qe)}}}function jg(n){let e,t,l,i,o,s,c=n[0].name+"",u,d,p,h,m,g,b,v,y,E,T,N,A,I,O,R,D,B,j,U,z,W;l=new jf({props:{kind:n[6],size:22}});let K=!n[7]&&zg(n);function Y(q,X){return q[7]?Bg:Fg}let L=Y(n)(n),M=n[2]&&Zo(n);return{c(){e=f("div"),t=f("div"),Qe(l.$$.fragment),i=w(),o=f("div"),s=f("div"),u=H(c),p=w(),h=f("div"),m=f("span"),m.textContent=`${n[8]}`,g=w(),K&&K.c(),b=w(),v=f("div"),L.c(),y=w(),E=f("button"),T=ae("svg"),N=ae("circle"),A=ae("circle"),I=ae("circle"),O=w(),R=f("button"),R.innerHTML='',B=w(),M&&M.c(),j=kt(),r(t,"class","file-row-icon svelte-1skuef2"),r(s,"class","file-row-name svelte-1skuef2"),r(s,"title",d=n[0].name),r(h,"class","file-row-meta svelte-1skuef2"),r(o,"class","file-row-body svelte-1skuef2"),r(N,"cx","12"),r(N,"cy","5"),r(N,"r","2"),r(A,"cx","12"),r(A,"cy","12"),r(A,"r","2"),r(I,"cx","12"),r(I,"cy","19"),r(I,"r","2"),r(T,"width","16"),r(T,"height","16"),r(T,"viewBox","0 0 24 24"),r(T,"fill","currentColor"),r(E,"class","action-btn svelte-1skuef2"),r(E,"title",k("file.more")),r(E,"aria-label",k("file.more")),r(E,"aria-expanded",n[2]),r(R,"class","action-btn action-btn-danger svelte-1skuef2"),r(R,"title",k("common.delete")),r(R,"aria-label",k("common.delete")),r(v,"class","file-row-actions svelte-1skuef2"),r(e,"class","file-row svelte-1skuef2"),r(e,"role","button"),r(e,"tabindex","0"),r(e,"draggable","true"),r(e,"aria-label",D=n[7]?k("file.ariaFolder")+" "+n[0].name:k("file.ariaFile")+" "+n[0].name),ce(e,"file-row--selected",n[1])},m(q,X){C(q,e,X),a(e,t),Ye(l,t,null),a(e,i),a(e,o),a(o,s),a(s,u),a(o,p),a(o,h),a(h,m),a(h,g),K&&K.m(h,null),a(e,b),a(e,v),L.m(v,null),a(v,y),a(v,E),a(E,T),a(T,N),a(T,A),a(T,I),a(v,O),a(v,R),C(q,B,X),M&&M.m(q,X),C(q,j,X),U=!0,z||(W=[P(qg,"click",n[19]),P(E,"click",We(n[18])),P(R,"click",We(n[12])),P(e,"click",n[9]),P(e,"keydown",n[24]),P(e,"contextmenu",n[23]),P(e,"dragstart",n[20]),P(e,"dragover",n[21]),P(e,"drop",n[22])],z=!0)},p(q,X){(!U||X[0]&1)&&c!==(c=q[0].name+"")&&Q(u,c),(!U||X[0]&1&&d!==(d=q[0].name))&&r(s,"title",d),q[7]||K.p(q,X),L.p(q,X),(!U||X[0]&4)&&r(E,"aria-expanded",q[2]),(!U||X[0]&1&&D!==(D=q[7]?k("file.ariaFolder")+" "+q[0].name:k("file.ariaFile")+" "+q[0].name))&&r(e,"aria-label",D),(!U||X[0]&2)&&ce(e,"file-row--selected",q[1]),q[2]?M?M.p(q,X):(M=Zo(q),M.c(),M.m(j.parentNode,j)):M&&(M.d(1),M=null)},i(q){U||(ge(l.$$.fragment,q),U=!0)},o(q){ke(l.$$.fragment,q),U=!1},d(q){q&&(S(e),S(B),S(j)),Xe(l),K&&K.d(),L.d(),M&&M.d(q),z=!1,Ce(W)}}}function Ug(n,e,t){let{item:l}=e,{selected:i=!1}=e,{onDragStart:o}=e,{onDragOver:s}=e,{onDrop:c}=e;const u=pn(),d=Uf(l),p=l.type==="folder",h=Lg(l);let m=!1,g=0,b=0,v=null;function y(X){X.ctrlKey||X.metaKey?u("toggleSelect",l.id):X.shiftKey?u("rangeSelect",l.id):v?(clearTimeout(v),v=null,p?u("navigate",l.id):u("preview",l)):v=setTimeout(()=>{v=null,u("selectOne",l.id)},250)}function E(){u("openExternal",l.fileId)}function T(){t(2,m=!1),u("showInFolder",l.nodeId||l.id)}function N(){t(2,m=!1),u("delete",{id:l.id,type:l.type})}function A(){t(2,m=!1),u("rename",{id:l.id,name:l.name})}function I(){t(2,m=!1),u("duplicate",l.id)}function O(){t(2,m=!1),u("cut",l.id)}function R(){t(2,m=!1),u("copy",l.id)}function D(){t(2,m=!1),p?u("navigate",l.id):u("preview",l)}function B(X){if(X){X.stopPropagation();const Z=X.currentTarget.getBoundingClientRect();t(3,g=Math.min(Z.right,window.innerWidth-240)),t(4,b=Math.min(Z.bottom,window.innerHeight-320)),console.log("[FileTreeRow] menu source=button x="+g+" y="+b)}t(2,m=!m)}function j(){t(2,m=!1)}function U(X){o&&o(X,l.id)}function z(X){s&&p&&s(X,l.id)}function W(X){c&&p&&c(X,l.id)}function K(X){X.preventDefault(),t(3,g=Math.min(X.clientX,window.innerWidth-240)),t(4,b=Math.min(X.clientY,window.innerHeight-320)),console.log("[FileTreeRow] menu source=contextmenu x="+g+" y="+b),t(2,m=!0)}function Y(X){(X.key==="Enter"||X.key===" ")&&(X.preventDefault(),y(X))}function F(X){Ds.call(this,n,X)}const L=()=>u("preview",l),M=()=>u("navigate",l.id),q=X=>{X.key==="Escape"&&(X.stopPropagation(),j())};return n.$$set=X=>{"item"in X&&t(0,l=X.item),"selected"in X&&t(1,i=X.selected),"onDragStart"in X&&t(25,o=X.onDragStart),"onDragOver"in X&&t(26,s=X.onDragOver),"onDrop"in X&&t(27,c=X.onDrop)},[l,i,m,g,b,u,d,p,h,y,E,T,N,A,I,O,R,D,B,j,U,z,W,K,Y,o,s,c,F,L,M,q]}class Hg extends ut{constructor(e){super(),ct(this,e,Ug,jg,at,{item:0,selected:1,onDragStart:25,onDragOver:26,onDrop:27},null,[-1,-1])}}function Yo(n,e,t){const l=n.slice();return l[4]=e[t],l[6]=t,l}function Wg(n){let e;return{c(){e=f("span"),e.textContent="/",r(e,"class","sep svelte-csi2lb")},m(t,l){C(t,e,l)},d(t){t&&S(e)}}}function Gg(n){let e,t=n[4].name+"",l,i,o;function s(){return n[2](n[6])}return{c(){e=f("button"),l=H(t),r(e,"class","crumb crumb--link svelte-csi2lb")},m(c,u){C(c,e,u),a(e,l),i||(o=P(e,"click",s),i=!0)},p(c,u){n=c,u&1&&t!==(t=n[4].name+"")&&Q(l,t)},d(c){c&&S(e),i=!1,o()}}}function Kg(n){let e,t=n[4].name+"",l;return{c(){e=f("span"),l=H(t),r(e,"class","crumb crumb--current svelte-csi2lb")},m(i,o){C(i,e,o),a(e,l)},p(i,o){o&1&&t!==(t=i[4].name+"")&&Q(l,t)},d(i){i&&S(e)}}}function Xo(n){let e,t,l=n[6]>0&&Wg();function i(c,u){return c[6]===c[0].length-1?Kg:Gg}let o=i(n),s=o(n);return{c(){l&&l.c(),e=w(),s.c(),t=kt()},m(c,u){l&&l.m(c,u),C(c,e,u),s.m(c,u),C(c,t,u)},p(c,u){o===(o=i(c))&&s?s.p(c,u):(s.d(1),s=o(c),s&&(s.c(),s.m(t.parentNode,t)))},d(c){c&&(S(e),S(t)),l&&l.d(c),s.d(c)}}}function Vg(n){let e,t=Te(n[0]),l=[];for(let i=0;io(c);return n.$$set=c=>{"crumbs"in c&&t(0,l=c.crumbs)},[l,o,s]}class Xf extends ut{constructor(e){super(),ct(this,e,Zg,Vg,at,{crumbs:0})}}function Ps(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}var gl=Ps();function Jf(n){gl=n}var cl={exec:()=>null};function Nl(n){let e=[];return t=>{let l=Math.max(0,Math.min(3,t-1)),i=e[l];return i||(i=n(l),e[l]=i),i}}function rt(n,e=""){let t=typeof n=="string"?n:n.source,l={replace:(i,o)=>{let s=typeof o=="string"?o:o.source;return s=s.replace(Vt.caret,"$1"),t=t.replace(i,s),l},getRegex:()=>new RegExp(t,e)};return l}var Yg=((n="")=>{try{return!!new RegExp("(?<=1)(?/,blockquoteSetextReplace:/\n {0,3}((?:=+|-+) *)(?=\n|$)/g,blockquoteSetextReplace2:/^ {0,3}>[ \t]?/gm,listReplaceNesting:/^ {1,4}(?=( {4})*[^ ])/g,listIsTask:/^\[[ xX]\] +\S/,listReplaceTask:/^\[[ xX]\] +/,listTaskCheckbox:/\[[ xX]\]/,anyLine:/\n.*\n/,hrefBrackets:/^<(.*)>$/,tableDelimiter:/[:|]/,tableAlignChars:/^\||\| *$/g,tableRowBlankLine:/\n[ \t]*$/,tableAlignRight:/^ *-+: *$/,tableAlignCenter:/^ *:-+: *$/,tableAlignLeft:/^ *:-+ *$/,startATag:/^/i,startPreScriptTag:/^<(pre|code|kbd|script)(\s|>)/i,endPreScriptTag:/^<\/(pre|code|kbd|script)(\s|>)/i,startAngleBracket:/^$/,pedanticHrefTitle:/^([^'"]*[^\s])\s+(['"])(.*)\2/,unicodeAlphaNumeric:/[\p{L}\p{N}]/u,escapeTest:/[&<>"']/,escapeReplace:/[&<>"']/g,escapeTestNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/,escapeReplaceNoEncode:/[<>"']|&(?!(#\d{1,7}|#[Xx][a-fA-F0-9]{1,6}|\w+);)/g,caret:/(^|[^\[])\^/g,percentDecode:/%25/g,findPipe:/\|/g,splitPipe:/ \|/,slashPipe:/\\\|/g,carriageReturn:/\r\n|\r/g,spaceLine:/^ +$/gm,notSpaceStart:/^\S*/,endingNewline:/\n$/,listItemRegex:n=>new RegExp(`^( {0,3}${n})((?:[ ][^\\n]*)?(?:\\n|$))`),nextBulletRegex:Nl(n=>new RegExp(`^ {0,${n}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`)),hrRegex:Nl(n=>new RegExp(`^ {0,${n}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`)),fencesBeginRegex:Nl(n=>new RegExp(`^ {0,${n}}(?:\`\`\`|~~~)`)),headingBeginRegex:Nl(n=>new RegExp(`^ {0,${n}}#`)),htmlBeginRegex:Nl(n=>new RegExp(`^ {0,${n}}<(?:[a-z].*>|!--)`,"i")),blockquoteBeginRegex:Nl(n=>new RegExp(`^ {0,${n}}>`))},Xg=/^(?:[ \t]*(?:\n|$))+/,Jg=/^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/,Qg=/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,si=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,xg=/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,qs=/ {0,3}(?:[*+-]|\d{1,9}[.)])/,Qf=/^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html|table))+?)\n {0,3}(=+|-+) *(?:\n+|$)/,xf=rt(Qf).replace(/bull/g,qs).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/\|table/g,"").getRegex(),$g=rt(Qf).replace(/bull/g,qs).replace(/blockCode/g,/(?: {4}| {0,3}\t)/).replace(/fences/g,/ {0,3}(?:`{3,}|~{3,})/).replace(/blockquote/g,/ {0,3}>/).replace(/heading/g,/ {0,3}#{1,6}/).replace(/html/g,/ {0,3}<[^\n>]+>\n/).replace(/table/g,/ {0,3}\|?(?:[:\- ]*\|)+[\:\- ]*\n/).getRegex(),zs=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,e_=/^[^\n]+/,Bs=/(?!\s*\])(?:\\[\s\S]|[^\[\]\\])+/,t_=rt(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace("label",Bs).replace("title",/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),n_=rt(/^(bull)([ \t][^\n]*?)?(?:\n|$)/).replace(/bull/g,qs).getRegex(),Ui="address|article|aside|base|basefont|blockquote|body|caption|center|col|colgroup|dd|details|dialog|dir|div|dl|dt|fieldset|figcaption|figure|footer|form|frame|frameset|h[1-6]|head|header|hr|html|iframe|legend|li|link|main|menu|menuitem|meta|nav|noframes|ol|optgroup|option|p|param|search|section|summary|table|tbody|td|tfoot|th|thead|title|tr|track|ul",Fs=/|$))/,l_=rt("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|\\n*|$)|\\n*|$)|)[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$))","i").replace("comment",Fs).replace("tag",Ui).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),$f=rt(zs).replace("hr",si).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("|table","").replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)])[ \\t]+[^ \\t\\n]").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",Ui).getRegex(),i_=rt(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph",$f).getRegex(),js={blockquote:i_,code:Jg,def:t_,fences:Qg,heading:xg,hr:si,html:l_,lheading:xf,list:n_,newline:Xg,paragraph:$f,table:cl,text:e_},Jo=rt("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr",si).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("blockquote"," {0,3}>").replace("code","(?: {4}| {0,3} )[^\\n]").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)])[ \\t]").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",Ui).getRegex(),s_={...js,lheading:$g,table:Jo,paragraph:rt(zs).replace("hr",si).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("table",Jo).replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)])[ \\t]+[^ \\t\\n]").replace("html",")|<(?:script|pre|style|textarea|!--)").replace("tag",Ui).getRegex()},o_={...js,html:rt(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+? *(?:\\n{2,}|\\s*$)|\\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace("comment",Fs).replace(/tag/g,"(?!(?:a|em|strong|small|s|cite|q|dfn|abbr|data|time|code|var|samp|kbd|sub|sup|i|b|u|mark|ruby|rt|rp|bdi|bdo|span|br|wbr|ins|del|img)\\b)\\w+(?!:|[^\\w\\s@]*@)\\b").getRegex(),def:/^ *\[([^\]]+)\]: *]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:cl,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:rt(zs).replace("hr",si).replace("heading",` *#{1,6} *[^ +]`).replace("lheading",xf).replace("|table","").replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").replace("|tag","").getRegex()},r_=/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,a_=/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,ed=/^( {2,}|\\)\n(?!\s*$)/,c_=/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\`+)[^`]+\k(?!`))*?\]\((?:\\[\s\S]|[^\\\(\)]|\((?:\\[\s\S]|[^\\\(\)])*\))*\)/).replace("precode-",Yg?"(?`+)[^`]+\k(?!`)/).replace("html",/<(?! )[^<>]*?>/).getRegex(),nd=/^(?:\*+(?:((?!\*)punct)|([^\s*]))?)|^_+(?:((?!_)punct)|([^\s_]))?/,h_=rt(nd,"u").replace(/punct/g,Bl).getRegex(),m_=rt(nd,"u").replace(/punct/g,td).getRegex(),ld="^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)punct(\\*+)(?=[\\s]|$)|notPunctSpace(\\*+)(?!\\*)(?=punctSpace|$)|(?!\\*)punctSpace(\\*+)(?=notPunctSpace)|[\\s](\\*+)(?!\\*)(?=punct)|(?!\\*)punct(\\*+)(?!\\*)(?=punct)|notPunctSpace(\\*+)(?=notPunctSpace)",g_=rt(ld,"gu").replace(/notPunctSpace/g,Us).replace(/punctSpace/g,Hi).replace(/punct/g,Bl).getRegex(),__=rt(ld,"gu").replace(/notPunctSpace/g,d_).replace(/punctSpace/g,f_).replace(/punct/g,td).getRegex(),b_=rt("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)punctSpace(_+)(?=notPunctSpace)|[\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)","gu").replace(/notPunctSpace/g,Us).replace(/punctSpace/g,Hi).replace(/punct/g,Bl).getRegex(),k_=rt(/^~~?(?:((?!~)punct)|[^\s~])/,"u").replace(/punct/g,Bl).getRegex(),v_="^[^~]+(?=[^~])|(?!~)punct(~~?)(?=[\\s]|$)|notPunctSpace(~~?)(?!~)(?=punctSpace|$)|(?!~)punctSpace(~~?)(?=notPunctSpace)|[\\s](~~?)(?!~)(?=punct)|(?!~)punct(~~?)(?!~)(?=punct)|notPunctSpace(~~?)(?=notPunctSpace)",w_=rt(v_,"gu").replace(/notPunctSpace/g,Us).replace(/punctSpace/g,Hi).replace(/punct/g,Bl).getRegex(),y_=rt(/\\(punct)/,"gu").replace(/punct/g,Bl).getRegex(),E_=rt(/^<(scheme:[^\s\x00-\x1f<>]*|email)>/).replace("scheme",/[a-zA-Z][a-zA-Z0-9+.-]{1,31}/).replace("email",/[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+(@)[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)+(?![-_])/).getRegex(),T_=rt(Fs).replace("(?:-->|$)","-->").getRegex(),S_=rt("^comment|^|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^|^").replace("comment",T_).replace("attribute",/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(),Oi=/(?:\[(?:\\[\s\S]|[^\[\]\\])*\]|\\[\s\S]|`+(?!`)[^`]*?`+(?!`)|``+(?=\])|[^\[\]\\`])*?/,C_=rt(/^!?\[(label)\]\(\s*(href)(?:(?:[ \t]+(?:\n[ \t]*)?|\n[ \t]*)(title))?\s*\)/).replace("label",Oi).replace("href",/<(?:\\.|[^\n<>\\])+>|[^ \t\n\x00-\x1f]*/).replace("title",/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(),id=rt(/^!?\[(label)\]\[(ref)\]/).replace("label",Oi).replace("ref",Bs).getRegex(),sd=rt(/^!?\[(ref)\](?:\[\])?/).replace("ref",Bs).getRegex(),A_=rt("reflink|nolink(?!\\()","g").replace("reflink",id).replace("nolink",sd).getRegex(),Qo=/[hH][tT][tT][pP][sS]?|[fF][tT][pP]/,Hs={_backpedal:cl,anyPunctuation:y_,autolink:E_,blockSkip:p_,br:ed,code:a_,del:cl,delLDelim:cl,delRDelim:cl,emStrongLDelim:h_,emStrongRDelimAst:g_,emStrongRDelimUnd:b_,escape:r_,link:C_,nolink:sd,punctuation:u_,reflink:id,reflinkSearch:A_,tag:S_,text:c_,url:cl},N_={...Hs,link:rt(/^!?\[(label)\]\((.*?)\)/).replace("label",Oi).getRegex(),reflink:rt(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",Oi).getRegex()},Cs={...Hs,emStrongRDelimAst:__,emStrongLDelim:m_,delLDelim:k_,delRDelim:w_,url:rt(/^((?:protocol):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/).replace("protocol",Qo).replace("email",/[A-Za-z0-9._+-]+(@)[a-zA-Z0-9-_]+(?:\.[a-zA-Z0-9-_]*[a-zA-Z0-9])+(?![-_])/).getRegex(),_backpedal:/(?:[^?!.,:;*_'"~()&]+|\([^)]*\)|&(?![a-zA-Z0-9]+;$)|[?!.,:;*_'"~)]+(?!$))+/,del:/^(~~?)(?=[^\s~])((?:\\[\s\S]|[^\\])*?(?:\\[\s\S]|[^\s~\\]))\1(?=[^~]|$)/,text:rt(/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\":">",'"':""","'":"'"},xo=n=>R_[n];function An(n,e){if(e){if(Vt.escapeTest.test(n))return n.replace(Vt.escapeReplace,xo)}else if(Vt.escapeTestNoEncode.test(n))return n.replace(Vt.escapeReplaceNoEncode,xo);return n}function $o(n){try{n=encodeURI(n).replace(Vt.percentDecode,"%")}catch{return null}return n}function er(n,e){var o;let t=n.replace(Vt.findPipe,(s,c,u)=>{let d=!1,p=c;for(;--p>=0&&u[p]==="\\";)d=!d;return d?"|":" |"}),l=t.split(Vt.splitPipe),i=0;if(l[0].trim()||l.shift(),l.length>0&&!((o=l.at(-1))!=null&&o.trim())&&l.pop(),e)if(l.length>e)l.splice(e);else for(;l.length=0&&Vt.blankLine.test(e[t]);)t--;return e.length-t<=2?n:e.slice(0,t+1).join(` +`)}function M_(n,e){if(n.indexOf(e[1])===-1)return-1;let t=0;for(let l=0;l0?-2:-1}function L_(n,e=0){let t=e,l="";for(let i of n)if(i===" "){let o=4-t%4;l+=" ".repeat(o),t+=o}else l+=i,t++;return l}function nr(n,e,t,l,i){let o=e.href,s=e.title||null,c=n[1].replace(i.other.outputLinkReplace,"$1");l.state.inLink=!0;let u={type:n[0].charAt(0)==="!"?"image":"link",raw:t,href:o,title:s,text:c,tokens:l.inlineTokens(c)};return l.state.inLink=!1,u}function O_(n,e,t){let l=n.match(t.other.indentCodeCompensation);if(l===null)return e;let i=l[1];return e.split(` +`).map(o=>{let s=o.match(t.other.beginningSpace);if(s===null)return o;let[c]=s;return c.length>=i.length?o.slice(i.length):o}).join(` +`)}var Di=class{constructor(n){lt(this,"options");lt(this,"rules");lt(this,"lexer");this.options=n||gl}space(n){let e=this.rules.block.newline.exec(n);if(e&&e[0].length>0)return{type:"space",raw:e[0]}}code(n){let e=this.rules.block.code.exec(n);if(e){let t=this.options.pedantic?e[0]:tr(e[0]),l=t.replace(this.rules.other.codeRemoveIndent,"");return{type:"code",raw:t,codeBlockStyle:"indented",text:l}}}fences(n){let e=this.rules.block.fences.exec(n);if(e){let t=e[0],l=O_(t,e[3]||"",this.rules);return{type:"code",raw:t,lang:e[2]?e[2].trim().replace(this.rules.inline.anyPunctuation,"$1"):e[2],text:l}}}heading(n){let e=this.rules.block.heading.exec(n);if(e){let t=e[2].trim();if(this.rules.other.endingHash.test(t)){let l=Gn(t,"#");(this.options.pedantic||!l||this.rules.other.endingSpaceChar.test(l))&&(t=l.trim())}return{type:"heading",raw:Gn(e[0],` +`),depth:e[1].length,text:t,tokens:this.lexer.inline(t)}}}hr(n){let e=this.rules.block.hr.exec(n);if(e)return{type:"hr",raw:Gn(e[0],` +`)}}blockquote(n){let e=this.rules.block.blockquote.exec(n);if(e){let t=Gn(e[0],` +`).split(` +`),l="",i="",o=[];for(;t.length>0;){let s=!1,c=[],u;for(u=0;u1,i={type:"list",raw:"",ordered:l,start:l?+t.slice(0,-1):"",loose:!1,items:[]};t=l?`\\d{1,9}\\${t.slice(-1)}`:`\\${t}`,this.options.pedantic&&(t=l?t:"[*+-]");let o=this.rules.other.listItemRegex(t),s=!1;for(;n;){let u=!1,d="",p="";if(!(e=o.exec(n))||this.rules.block.hr.test(n))break;d=e[0],n=n.substring(d.length);let h=L_(e[2].split(` +`,1)[0],e[1].length),m=n.split(` +`,1)[0],g=!h.trim(),b=0;if(this.options.pedantic?(b=2,p=h.trimStart()):g?b=e[1].length+1:(b=h.search(this.rules.other.nonSpaceChar),b=b>4?1:b,p=h.slice(b),b+=e[1].length),g&&this.rules.other.blankLine.test(m)&&(d+=m+` +`,n=n.substring(m.length+1),u=!0),!u){let v=this.rules.other.nextBulletRegex(b),y=this.rules.other.hrRegex(b),E=this.rules.other.fencesBeginRegex(b),T=this.rules.other.headingBeginRegex(b),N=this.rules.other.htmlBeginRegex(b),A=this.rules.other.blockquoteBeginRegex(b);for(;n;){let I=n.split(` +`,1)[0],O;if(m=I,this.options.pedantic?(m=m.replace(this.rules.other.listReplaceNesting," "),O=m):O=m.replace(this.rules.other.tabCharGlobal," "),E.test(m)||T.test(m)||N.test(m)||A.test(m)||v.test(m)||y.test(m))break;if(O.search(this.rules.other.nonSpaceChar)>=b||!m.trim())p+=` +`+O.slice(b);else{if(g||h.replace(this.rules.other.tabCharGlobal," ").search(this.rules.other.nonSpaceChar)>=4||E.test(h)||T.test(h)||y.test(h))break;p+=` +`+m}g=!m.trim(),d+=I+` +`,n=n.substring(I.length+1),h=O.slice(b)}}i.loose||(s?i.loose=!0:this.rules.other.doubleBlankLine.test(d)&&(s=!0)),i.items.push({type:"list_item",raw:d,task:!!this.options.gfm&&this.rules.other.listIsTask.test(p),loose:!1,text:p,tokens:[]}),i.raw+=d}let c=i.items.at(-1);if(c)c.raw=c.raw.trimEnd(),c.text=c.text.trimEnd();else return;i.raw=i.raw.trimEnd();for(let u of i.items){this.lexer.state.top=!1,u.tokens=this.lexer.blockTokens(u.text,[]);let d=u.tokens[0];if(u.task&&((d==null?void 0:d.type)==="text"||(d==null?void 0:d.type)==="paragraph")){u.text=u.text.replace(this.rules.other.listReplaceTask,""),d.raw=d.raw.replace(this.rules.other.listReplaceTask,""),d.text=d.text.replace(this.rules.other.listReplaceTask,"");for(let h=this.lexer.inlineQueue.length-1;h>=0;h--)if(this.rules.other.listIsTask.test(this.lexer.inlineQueue[h].src)){this.lexer.inlineQueue[h].src=this.lexer.inlineQueue[h].src.replace(this.rules.other.listReplaceTask,"");break}let p=this.rules.other.listTaskCheckbox.exec(u.raw);if(p){let h={type:"checkbox",raw:p[0]+" ",checked:p[0]!=="[ ]"};u.checked=h.checked,i.loose?u.tokens[0]&&["paragraph","text"].includes(u.tokens[0].type)&&"tokens"in u.tokens[0]&&u.tokens[0].tokens?(u.tokens[0].raw=h.raw+u.tokens[0].raw,u.tokens[0].text=h.raw+u.tokens[0].text,u.tokens[0].tokens.unshift(h)):u.tokens.unshift({type:"paragraph",raw:h.raw,text:h.raw,tokens:[h]}):u.tokens.unshift(h)}}else u.task&&(u.task=!1);if(!i.loose){let p=u.tokens.filter(m=>m.type==="space"),h=p.length>0&&p.some(m=>this.rules.other.anyLine.test(m.raw));i.loose=h}}if(i.loose)for(let u of i.items){u.loose=!0;for(let d of u.tokens)d.type==="text"&&(d.type="paragraph")}return i}}html(n){let e=this.rules.block.html.exec(n);if(e){let t=tr(e[0]);return{type:"html",block:!0,raw:t,pre:e[1]==="pre"||e[1]==="script"||e[1]==="style",text:t}}}def(n){let e=this.rules.block.def.exec(n);if(e){let t=e[1].toLowerCase().replace(this.rules.other.multipleSpaceGlobal," "),l=e[2]?e[2].replace(this.rules.other.hrefBrackets,"$1").replace(this.rules.inline.anyPunctuation,"$1"):"",i=e[3]?e[3].substring(1,e[3].length-1).replace(this.rules.inline.anyPunctuation,"$1"):e[3];return{type:"def",tag:t,raw:Gn(e[0],` +`),href:l,title:i}}}table(n){var s;let e=this.rules.block.table.exec(n);if(!e||!this.rules.other.tableDelimiter.test(e[2]))return;let t=er(e[1]),l=e[2].replace(this.rules.other.tableAlignChars,"").split("|"),i=(s=e[3])!=null&&s.trim()?e[3].replace(this.rules.other.tableRowBlankLine,"").split(` +`):[],o={type:"table",raw:Gn(e[0],` +`),header:[],align:[],rows:[]};if(t.length===l.length){for(let c of l)this.rules.other.tableAlignRight.test(c)?o.align.push("right"):this.rules.other.tableAlignCenter.test(c)?o.align.push("center"):this.rules.other.tableAlignLeft.test(c)?o.align.push("left"):o.align.push(null);for(let c=0;c({text:u,tokens:this.lexer.inline(u),header:!1,align:o.align[d]})));return o}}lheading(n){let e=this.rules.block.lheading.exec(n);if(e){let t=e[1].trim();return{type:"heading",raw:Gn(e[0],` +`),depth:e[2].charAt(0)==="="?1:2,text:t,tokens:this.lexer.inline(t)}}}paragraph(n){let e=this.rules.block.paragraph.exec(n);if(e){let t=e[1].charAt(e[1].length-1)===` +`?e[1].slice(0,-1):e[1];return{type:"paragraph",raw:e[0],text:t,tokens:this.lexer.inline(t)}}}text(n){let e=this.rules.block.text.exec(n);if(e)return{type:"text",raw:e[0],text:e[0],tokens:this.lexer.inline(e[0])}}escape(n){let e=this.rules.inline.escape.exec(n);if(e)return{type:"escape",raw:e[0],text:e[1]}}tag(n){let e=this.rules.inline.tag.exec(n);if(e)return!this.lexer.state.inLink&&this.rules.other.startATag.test(e[0])?this.lexer.state.inLink=!0:this.lexer.state.inLink&&this.rules.other.endATag.test(e[0])&&(this.lexer.state.inLink=!1),!this.lexer.state.inRawBlock&&this.rules.other.startPreScriptTag.test(e[0])?this.lexer.state.inRawBlock=!0:this.lexer.state.inRawBlock&&this.rules.other.endPreScriptTag.test(e[0])&&(this.lexer.state.inRawBlock=!1),{type:"html",raw:e[0],inLink:this.lexer.state.inLink,inRawBlock:this.lexer.state.inRawBlock,block:!1,text:e[0]}}link(n){let e=this.rules.inline.link.exec(n);if(e){let t=e[2].trim();if(!this.options.pedantic&&this.rules.other.startAngleBracket.test(t)){if(!this.rules.other.endAngleBracket.test(t))return;let o=Gn(t.slice(0,-1),"\\");if((t.length-o.length)%2===0)return}else{let o=M_(e[2],"()");if(o===-2)return;if(o>-1){let s=(e[0].indexOf("!")===0?5:4)+e[1].length+o;e[2]=e[2].substring(0,o),e[0]=e[0].substring(0,s).trim(),e[3]=""}}let l=e[2],i="";if(this.options.pedantic){let o=this.rules.other.pedanticHrefTitle.exec(l);o&&(l=o[1],i=o[3])}else i=e[3]?e[3].slice(1,-1):"";return l=l.trim(),this.rules.other.startAngleBracket.test(l)&&(this.options.pedantic&&!this.rules.other.endAngleBracket.test(t)?l=l.slice(1):l=l.slice(1,-1)),nr(e,{href:l&&l.replace(this.rules.inline.anyPunctuation,"$1"),title:i&&i.replace(this.rules.inline.anyPunctuation,"$1")},e[0],this.lexer,this.rules)}}reflink(n,e){let t;if((t=this.rules.inline.reflink.exec(n))||(t=this.rules.inline.nolink.exec(n))){let l=(t[2]||t[1]).replace(this.rules.other.multipleSpaceGlobal," "),i=e[l.toLowerCase()];if(!i){let o=t[0].charAt(0);return{type:"text",raw:o,text:o}}return nr(t,i,t[0],this.lexer,this.rules)}}emStrong(n,e,t=""){let l=this.rules.inline.emStrongLDelim.exec(n);if(!(!l||!l[1]&&!l[2]&&!l[3]&&!l[4]||l[4]&&t.match(this.rules.other.unicodeAlphaNumeric))&&(!(l[1]||l[3])||!t||this.rules.inline.punctuation.exec(t))){let i=[...l[0]].length-1,o,s,c=i,u=0,d=l[0][0]==="*"?this.rules.inline.emStrongRDelimAst:this.rules.inline.emStrongRDelimUnd;for(d.lastIndex=0,e=e.slice(-1*n.length+i);(l=d.exec(e))!==null;){if(o=l[1]||l[2]||l[3]||l[4]||l[5]||l[6],!o)continue;if(s=[...o].length,l[3]||l[4]){c+=s;continue}else if((l[5]||l[6])&&i%3&&!((i+s)%3)){u+=s;continue}if(c-=s,c>0)continue;s=Math.min(s,s+c+u);let p=[...l[0]][0].length,h=n.slice(0,i+l.index+p+s);if(Math.min(i,s)%2){let g=h.slice(1,-1);return{type:"em",raw:h,text:g,tokens:this.lexer.inlineTokens(g)}}let m=h.slice(2,-2);return{type:"strong",raw:h,text:m,tokens:this.lexer.inlineTokens(m)}}}}codespan(n){let e=this.rules.inline.code.exec(n);if(e){let t=e[2].replace(this.rules.other.newLineCharGlobal," "),l=this.rules.other.nonSpaceChar.test(t),i=this.rules.other.startingSpaceChar.test(t)&&this.rules.other.endingSpaceChar.test(t);return l&&i&&(t=t.substring(1,t.length-1)),{type:"codespan",raw:e[0],text:t}}}br(n){let e=this.rules.inline.br.exec(n);if(e)return{type:"br",raw:e[0]}}del(n,e,t=""){let l=this.rules.inline.delLDelim.exec(n);if(l&&(!l[1]||!t||this.rules.inline.punctuation.exec(t))){let i=[...l[0]].length-1,o,s,c=i,u=this.rules.inline.delRDelim;for(u.lastIndex=0,e=e.slice(-1*n.length+i);(l=u.exec(e))!==null;){if(o=l[1]||l[2]||l[3]||l[4]||l[5]||l[6],!o||(s=[...o].length,s!==i))continue;if(l[3]||l[4]){c+=s;continue}if(c-=s,c>0)continue;s=Math.min(s,s+c);let d=[...l[0]][0].length,p=n.slice(0,i+l.index+d+s),h=p.slice(i,-i);return{type:"del",raw:p,text:h,tokens:this.lexer.inlineTokens(h)}}}}autolink(n){let e=this.rules.inline.autolink.exec(n);if(e){let t,l;return e[2]==="@"?(t=e[1],l="mailto:"+t):(t=e[1],l=t),{type:"link",raw:e[0],text:t,href:l,tokens:[{type:"text",raw:t,text:t}]}}}url(n){var t;let e;if(e=this.rules.inline.url.exec(n)){let l,i;if(e[2]==="@")l=e[0],i="mailto:"+l;else{let o;do o=e[0],e[0]=((t=this.rules.inline._backpedal.exec(e[0]))==null?void 0:t[0])??"";while(o!==e[0]);l=e[0],e[1]==="www."?i="http://"+e[0]:i=e[0]}return{type:"link",raw:e[0],text:l,href:i,tokens:[{type:"text",raw:l,text:l}]}}}inlineText(n){let e=this.rules.inline.text.exec(n);if(e){let t=this.lexer.state.inRawBlock;return{type:"text",raw:e[0],text:e[0],escaped:t}}}},gn=class As{constructor(e){lt(this,"tokens");lt(this,"options");lt(this,"state");lt(this,"inlineQueue");lt(this,"tokenizer");this.tokens=[],this.tokens.links=Object.create(null),this.options=e||gl,this.options.tokenizer=this.options.tokenizer||new Di,this.tokenizer=this.options.tokenizer,this.tokenizer.options=this.options,this.tokenizer.lexer=this,this.inlineQueue=[],this.state={inLink:!1,inRawBlock:!1,top:!0};let t={other:Vt,block:ki.normal,inline:Kl.normal};this.options.pedantic?(t.block=ki.pedantic,t.inline=Kl.pedantic):this.options.gfm&&(t.block=ki.gfm,this.options.breaks?t.inline=Kl.breaks:t.inline=Kl.gfm),this.tokenizer.rules=t}static get rules(){return{block:ki,inline:Kl}}static lex(e,t){return new As(t).lex(e)}static lexInline(e,t){return new As(t).inlineTokens(e)}lex(e){e=e.replace(Vt.carriageReturn,` +`),this.blockTokens(e,this.tokens);for(let t=0;t(u=p.call({lexer:this},e,t))?(e=e.substring(u.raw.length),t.push(u),!0):!1))continue;if(u=this.tokenizer.space(e)){e=e.substring(u.raw.length);let p=t.at(-1);u.raw.length===1&&p!==void 0?p.raw+=` +`:t.push(u);continue}if(u=this.tokenizer.code(e)){e=e.substring(u.raw.length);let p=t.at(-1);(p==null?void 0:p.type)==="paragraph"||(p==null?void 0:p.type)==="text"?(p.raw+=(p.raw.endsWith(` +`)?"":` +`)+u.raw,p.text+=` +`+u.text,this.inlineQueue.at(-1).src=p.text):t.push(u);continue}if(u=this.tokenizer.fences(e)){e=e.substring(u.raw.length),t.push(u);continue}if(u=this.tokenizer.heading(e)){e=e.substring(u.raw.length),t.push(u);continue}if(u=this.tokenizer.hr(e)){e=e.substring(u.raw.length),t.push(u);continue}if(u=this.tokenizer.blockquote(e)){e=e.substring(u.raw.length),t.push(u);continue}if(u=this.tokenizer.list(e)){e=e.substring(u.raw.length),t.push(u);continue}if(u=this.tokenizer.html(e)){e=e.substring(u.raw.length),t.push(u);continue}if(u=this.tokenizer.def(e)){e=e.substring(u.raw.length);let p=t.at(-1);(p==null?void 0:p.type)==="paragraph"||(p==null?void 0:p.type)==="text"?(p.raw+=(p.raw.endsWith(` +`)?"":` +`)+u.raw,p.text+=` +`+u.raw,this.inlineQueue.at(-1).src=p.text):this.tokens.links[u.tag]||(this.tokens.links[u.tag]={href:u.href,title:u.title},t.push(u));continue}if(u=this.tokenizer.table(e)){e=e.substring(u.raw.length),t.push(u);continue}if(u=this.tokenizer.lheading(e)){e=e.substring(u.raw.length),t.push(u);continue}let d=e;if((c=this.options.extensions)!=null&&c.startBlock){let p=1/0,h=e.slice(1),m;this.options.extensions.startBlock.forEach(g=>{m=g.call({lexer:this},h),typeof m=="number"&&m>=0&&(p=Math.min(p,m))}),p<1/0&&p>=0&&(d=e.substring(0,p+1))}if(this.state.top&&(u=this.tokenizer.paragraph(d))){let p=t.at(-1);l&&(p==null?void 0:p.type)==="paragraph"?(p.raw+=(p.raw.endsWith(` +`)?"":` +`)+u.raw,p.text+=` +`+u.text,this.inlineQueue.pop(),this.inlineQueue.at(-1).src=p.text):t.push(u),l=d.length!==e.length,e=e.substring(u.raw.length);continue}if(u=this.tokenizer.text(e)){e=e.substring(u.raw.length);let p=t.at(-1);(p==null?void 0:p.type)==="text"?(p.raw+=(p.raw.endsWith(` +`)?"":` +`)+u.raw,p.text+=` +`+u.text,this.inlineQueue.pop(),this.inlineQueue.at(-1).src=p.text):t.push(u);continue}if(e){this.infiniteLoopError(e.charCodeAt(0));break}}return this.state.top=!0,t}inline(e,t=[]){return this.inlineQueue.push({src:e,tokens:t}),t}inlineTokens(e,t=[]){var d,p,h,m,g;this.tokenizer.lexer=this;let l=e,i=null;if(this.tokens.links){let b=Object.keys(this.tokens.links);if(b.length>0)for(;(i=this.tokenizer.rules.inline.reflinkSearch.exec(l))!==null;)b.includes(i[0].slice(i[0].lastIndexOf("[")+1,-1))&&(l=l.slice(0,i.index)+"["+"a".repeat(i[0].length-2)+"]"+l.slice(this.tokenizer.rules.inline.reflinkSearch.lastIndex))}for(;(i=this.tokenizer.rules.inline.anyPunctuation.exec(l))!==null;)l=l.slice(0,i.index)+"++"+l.slice(this.tokenizer.rules.inline.anyPunctuation.lastIndex);let o;for(;(i=this.tokenizer.rules.inline.blockSkip.exec(l))!==null;)o=i[2]?i[2].length:0,l=l.slice(0,i.index+o)+"["+"a".repeat(i[0].length-o-2)+"]"+l.slice(this.tokenizer.rules.inline.blockSkip.lastIndex);l=((p=(d=this.options.hooks)==null?void 0:d.emStrongMask)==null?void 0:p.call({lexer:this},l))??l;let s=!1,c="",u=1/0;for(;e;){if(e.length(b=y.call({lexer:this},e,t))?(e=e.substring(b.raw.length),t.push(b),!0):!1))continue;if(b=this.tokenizer.escape(e)){e=e.substring(b.raw.length),t.push(b);continue}if(b=this.tokenizer.tag(e)){e=e.substring(b.raw.length),t.push(b);continue}if(b=this.tokenizer.link(e)){e=e.substring(b.raw.length),t.push(b);continue}if(b=this.tokenizer.reflink(e,this.tokens.links)){e=e.substring(b.raw.length);let y=t.at(-1);b.type==="text"&&(y==null?void 0:y.type)==="text"?(y.raw+=b.raw,y.text+=b.text):t.push(b);continue}if(b=this.tokenizer.emStrong(e,l,c)){e=e.substring(b.raw.length),t.push(b);continue}if(b=this.tokenizer.codespan(e)){e=e.substring(b.raw.length),t.push(b);continue}if(b=this.tokenizer.br(e)){e=e.substring(b.raw.length),t.push(b);continue}if(b=this.tokenizer.del(e,l,c)){e=e.substring(b.raw.length),t.push(b);continue}if(b=this.tokenizer.autolink(e)){e=e.substring(b.raw.length),t.push(b);continue}if(!this.state.inLink&&(b=this.tokenizer.url(e))){e=e.substring(b.raw.length),t.push(b);continue}let v=e;if((g=this.options.extensions)!=null&&g.startInline){let y=1/0,E=e.slice(1),T;this.options.extensions.startInline.forEach(N=>{T=N.call({lexer:this},E),typeof T=="number"&&T>=0&&(y=Math.min(y,T))}),y<1/0&&y>=0&&(v=e.substring(0,y+1))}if(b=this.tokenizer.inlineText(v)){e=e.substring(b.raw.length),b.raw.slice(-1)!=="_"&&(c=b.raw.slice(-1)),s=!0;let y=t.at(-1);(y==null?void 0:y.type)==="text"?(y.raw+=b.raw,y.text+=b.text):t.push(b);continue}if(e){this.infiniteLoopError(e.charCodeAt(0));break}}return t}infiniteLoopError(e){let t="Infinite loop on byte: "+e;if(this.options.silent)console.error(t);else throw new Error(t)}},Pi=class{constructor(n){lt(this,"options");lt(this,"parser");this.options=n||gl}space(n){return""}code({text:n,lang:e,escaped:t}){var o;let l=(o=(e||"").match(Vt.notSpaceStart))==null?void 0:o[0],i=n.replace(Vt.endingNewline,"")+` +`;return l?'
    '+(t?i:An(i,!0))+`
    +`:"
    "+(t?i:An(i,!0))+`
    +`}blockquote({tokens:n}){return`
    +${this.parser.parse(n)}
    +`}html({text:n}){return n}def(n){return""}heading({tokens:n,depth:e}){return`${this.parser.parseInline(n)} +`}hr(n){return`
    +`}list(n){let e=n.ordered,t=n.start,l="";for(let s=0;s +`+l+" +`}listitem(n){return`
  • ${this.parser.parse(n.tokens)}
  • +`}checkbox({checked:n}){return" '}paragraph({tokens:n}){return`

    ${this.parser.parseInline(n)}

    +`}table(n){let e="",t="";for(let i=0;i${l}`),` + +`+e+` +`+l+`
    +`}tablerow({text:n}){return` +${n} +`}tablecell(n){let e=this.parser.parseInline(n.tokens),t=n.header?"th":"td";return(n.align?`<${t} align="${n.align}">`:`<${t}>`)+e+` +`}strong({tokens:n}){return`${this.parser.parseInline(n)}`}em({tokens:n}){return`${this.parser.parseInline(n)}`}codespan({text:n}){return`${An(n,!0)}`}br(n){return"
    "}del({tokens:n}){return`${this.parser.parseInline(n)}`}link({href:n,title:e,tokens:t}){let l=this.parser.parseInline(t),i=$o(n);if(i===null)return l;n=i;let o='
    ",o}image({href:n,title:e,text:t,tokens:l}){l&&(t=this.parser.parseInline(l,this.parser.textRenderer));let i=$o(n);if(i===null)return An(t);n=i;let o=`${An(t)}{let u=s[c].flat(1/0);t=t.concat(this.walkTokens(u,e))}):s.tokens&&(t=t.concat(this.walkTokens(s.tokens,e)))}}return t}use(...n){let e=this.defaults.extensions||{renderers:{},childTokens:{}};return n.forEach(t=>{let l={...t};if(l.async=this.defaults.async||l.async||!1,t.extensions&&(t.extensions.forEach(i=>{if(!i.name)throw new Error("extension name required");if("renderer"in i){let o=e.renderers[i.name];o?e.renderers[i.name]=function(...s){let c=i.renderer.apply(this,s);return c===!1&&(c=o.apply(this,s)),c}:e.renderers[i.name]=i.renderer}if("tokenizer"in i){if(!i.level||i.level!=="block"&&i.level!=="inline")throw new Error("extension level must be 'block' or 'inline'");let o=e[i.level];o?o.unshift(i.tokenizer):e[i.level]=[i.tokenizer],i.start&&(i.level==="block"?e.startBlock?e.startBlock.push(i.start):e.startBlock=[i.start]:i.level==="inline"&&(e.startInline?e.startInline.push(i.start):e.startInline=[i.start]))}"childTokens"in i&&i.childTokens&&(e.childTokens[i.name]=i.childTokens)}),l.extensions=e),t.renderer){let i=this.defaults.renderer||new Pi(this.defaults);for(let o in t.renderer){if(!(o in i))throw new Error(`renderer '${o}' does not exist`);if(["options","parser"].includes(o))continue;let s=o,c=t.renderer[s],u=i[s];i[s]=(...d)=>{let p=c.apply(i,d);return p===!1&&(p=u.apply(i,d)),p||""}}l.renderer=i}if(t.tokenizer){let i=this.defaults.tokenizer||new Di(this.defaults);for(let o in t.tokenizer){if(!(o in i))throw new Error(`tokenizer '${o}' does not exist`);if(["options","rules","lexer"].includes(o))continue;let s=o,c=t.tokenizer[s],u=i[s];i[s]=(...d)=>{let p=c.apply(i,d);return p===!1&&(p=u.apply(i,d)),p}}l.tokenizer=i}if(t.hooks){let i=this.defaults.hooks||new Xl;for(let o in t.hooks){if(!(o in i))throw new Error(`hook '${o}' does not exist`);if(["options","block"].includes(o))continue;let s=o,c=t.hooks[s],u=i[s];Xl.passThroughHooks.has(o)?i[s]=d=>{if(this.defaults.async&&Xl.passThroughHooksRespectAsync.has(o))return(async()=>{let h=await c.call(i,d);return u.call(i,h)})();let p=c.call(i,d);return u.call(i,p)}:i[s]=(...d)=>{if(this.defaults.async)return(async()=>{let h=await c.apply(i,d);return h===!1&&(h=await u.apply(i,d)),h})();let p=c.apply(i,d);return p===!1&&(p=u.apply(i,d)),p}}l.hooks=i}if(t.walkTokens){let i=this.defaults.walkTokens,o=t.walkTokens;l.walkTokens=function(s){let c=[];return c.push(o.call(this,s)),i&&(c=c.concat(i.call(this,s))),c}}this.defaults={...this.defaults,...l}}),this}setOptions(n){return this.defaults={...this.defaults,...n},this}lexer(n,e){return gn.lex(n,e??this.defaults)}parser(n,e){return _n.parse(n,e??this.defaults)}parseMarkdown(n){return(e,t)=>{let l={...t},i={...this.defaults,...l},o=this.onError(!!i.silent,!!i.async);if(this.defaults.async===!0&&l.async===!1)return o(new Error("marked(): The async option was set to true by an extension. Remove async: false from the parse options object to return a Promise."));if(typeof e>"u"||e===null)return o(new Error("marked(): input parameter is undefined or null"));if(typeof e!="string")return o(new Error("marked(): input parameter is of type "+Object.prototype.toString.call(e)+", string expected"));if(i.hooks&&(i.hooks.options=i,i.hooks.block=n),i.async)return(async()=>{let s=i.hooks?await i.hooks.preprocess(e):e,c=await(i.hooks?await i.hooks.provideLexer(n):n?gn.lex:gn.lexInline)(s,i),u=i.hooks?await i.hooks.processAllTokens(c):c;i.walkTokens&&await Promise.all(this.walkTokens(u,i.walkTokens));let d=await(i.hooks?await i.hooks.provideParser(n):n?_n.parse:_n.parseInline)(u,i);return i.hooks?await i.hooks.postprocess(d):d})().catch(o);try{i.hooks&&(e=i.hooks.preprocess(e));let s=(i.hooks?i.hooks.provideLexer(n):n?gn.lex:gn.lexInline)(e,i);i.hooks&&(s=i.hooks.processAllTokens(s)),i.walkTokens&&this.walkTokens(s,i.walkTokens);let c=(i.hooks?i.hooks.provideParser(n):n?_n.parse:_n.parseInline)(s,i);return i.hooks&&(c=i.hooks.postprocess(c)),c}catch(s){return o(s)}}}onError(n,e){return t=>{if(t.message+=` +Please report this to https://github.com/markedjs/marked.`,n){let l="

    An error occurred:

    "+An(t.message+"",!0)+"
    ";return e?Promise.resolve(l):l}if(e)return Promise.reject(t);throw t}}},ml=new D_;function ht(n,e){return ml.parse(n,e)}ht.options=ht.setOptions=function(n){return ml.setOptions(n),ht.defaults=ml.defaults,Jf(ht.defaults),ht};ht.getDefaults=Ps;ht.defaults=gl;ht.use=function(...n){return ml.use(...n),ht.defaults=ml.defaults,Jf(ht.defaults),ht};ht.walkTokens=function(n,e){return ml.walkTokens(n,e)};ht.parseInline=ml.parseInline;ht.Parser=_n;ht.parser=_n.parse;ht.Renderer=Pi;ht.TextRenderer=Ws;ht.Lexer=gn;ht.lexer=gn.lex;ht.Tokenizer=Di;ht.Hooks=Xl;ht.parse=ht;ht.options;ht.setOptions;ht.use;ht.walkTokens;ht.parseInline;_n.parse;gn.lex;/*! @license DOMPurify 3.4.10 | (c) Cure53 and other contributors | Released under the Apache license 2.0 and Mozilla Public License 2.0 | github.com/cure53/DOMPurify/blob/3.4.10/LICENSE */function lr(n,e){(e==null||e>n.length)&&(e=n.length);for(var t=0,l=Array(e);t2?l-2:0),o=2;o1?t-1:0),i=1;i"u"?null:Nt(BigInt.prototype.toString),cr=typeof Symbol>"u"?null:Nt(Symbol.prototype.toString),Qt=Nt(Object.prototype.hasOwnProperty),Yl=Nt(Object.prototype.toString),zt=Nt(RegExp.prototype.test),sl=Y_(TypeError);function Nt(n){return function(e){e instanceof RegExp&&(e.lastIndex=0);for(var t=arguments.length,l=new Array(t>1?t-1:0),i=1;i2&&arguments[2]!==void 0?arguments[2]:Jl;if(ir&&ir(n,null),!Zn(e))return n;let l=e.length;for(;l--;){let i=e[l];if(typeof i=="string"){const o=t(i);o!==i&&(j_(e)||(e[l]=o),i=o)}n[i]=!0}return n}function X_(n){for(let e=0;e/g),nb=Ft(/\${[\w\W]*/g),lb=Ft(/^data-[\-\w.\u00B7-\uFFFF]+$/),ib=Ft(/^aria-[\-\w]+$/),hr=Ft(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp|matrix):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),sb=Ft(/^(?:\w+script|data):/i),ob=Ft(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),rb=Ft(/^html$/i),ab=Ft(/^[a-z][.\w]*(-[.\w]+)+$/i),mr=Ft(/<[/\w!]/g),cb=Ft(/<[/\w]/g),ub=Ft(/<\/no(script|embed|frames)/i),fb=Ft(/\/>/i),Cn={element:1,attribute:2,text:3,cdataSection:4,entityReference:5,entityNode:6,processingInstruction:7,comment:8,document:9,documentType:10,documentFragment:11,notation:12},db=function(){return typeof window>"u"?null:window},pb=function(e,t){if(typeof e!="object"||typeof e.createPolicy!="function")return null;let l=null;const i="data-tt-policy-suffix";t&&t.hasAttribute(i)&&(l=t.getAttribute(i));const o="dompurify"+(l?"#"+l:"");try{return e.createPolicy(o,{createHTML(s){return s},createScriptURL(s){return s}})}catch{return console.warn("TrustedTypes policy "+o+" could not be created."),null}},gr=function(){return{afterSanitizeAttributes:[],afterSanitizeElements:[],afterSanitizeShadowDOM:[],beforeSanitizeAttributes:[],beforeSanitizeElements:[],beforeSanitizeShadowDOM:[],uponSanitizeAttribute:[],uponSanitizeElement:[],uponSanitizeShadowNode:[]}},Kn=function(e,t,l,i){return Qt(e,t)&&Zn(e[t])?ot(i.base?Jt(i.base):{},e[t],i.transform):l};function ad(){let n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:db();const e=Ee=>ad(Ee);if(e.version="3.4.10",e.removed=[],!n||!n.document||n.document.nodeType!==Cn.document||!n.Element)return e.isSupported=!1,e;let t=n.document;const l=t,i=l.currentScript;n.DocumentFragment;const o=n.HTMLTemplateElement,s=n.Node,c=n.Element,u=n.NodeFilter,d=n.NamedNodeMap;d===void 0&&(n.NamedNodeMap||n.MozNamedAttrMap),n.HTMLFormElement;const p=n.DOMParser,h=n.trustedTypes,m=c.prototype,g=Nn(m,"cloneNode"),b=Nn(m,"remove"),v=Nn(m,"nextSibling"),y=Nn(m,"childNodes"),E=Nn(m,"parentNode"),T=Nn(m,"shadowRoot"),N=Nn(m,"attributes"),A=s&&s.prototype?Nn(s.prototype,"nodeType"):null,I=s&&s.prototype?Nn(s.prototype,"nodeName"):null;if(typeof o=="function"){const Ee=t.createElement("template");Ee.content&&Ee.content.ownerDocument&&(t=Ee.content.ownerDocument)}let O,R="",D,B=!1,j=0;const U=function(){if(j>0)throw sl('A configured TRUSTED_TYPES_POLICY callback (createHTML or createScriptURL) must not call DOMPurify.sanitize, as that causes infinite recursion. Do not pass a policy whose callbacks wrap DOMPurify as TRUSTED_TYPES_POLICY; see the "DOMPurify and Trusted Types" section of the README.')},z=function(V){U(),j++;try{return O.createHTML(V)}finally{j--}},W=function(V){U(),j++;try{return O.createScriptURL(V)}finally{j--}},K=function(){return B||(D=pb(h,i),B=!0),D},Y=t,F=Y.implementation,L=Y.createNodeIterator,M=Y.createDocumentFragment,q=Y.getElementsByTagName,X=l.importNode;let Z=gr();e.isSupported=typeof od=="function"&&typeof E=="function"&&F&&F.createHTMLDocument!==void 0;const J=eb,ee=tb,te=nb,le=lb,_e=ib,oe=sb,ze=ob,Ge=ab;let Ie=hr,ne=null;const re=ot({},[...ur,...ms,...gs,..._s,...fr]);let Ne=null;const Fe=ot({},[...dr,...bs,...pr,...vi]);let we=Object.seal(Ol(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),je=null,xe=null;const Ae=Object.seal(Ol(null,{tagCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeCheck:{writable:!0,configurable:!1,enumerable:!0,value:null}}));let Ve=!0,Ue=!0,Se=!1,He=!0,Oe=!1,Ke=!0,Pe=!1,ue=!1,be=!1,x=!1,ye=!1,me=!1,Re=!0,ft=!1;const it="user-content-";let Ze=!0,dt=!1,Je={},pe=null;const qe=ot({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","selectedcontent","style","svg","template","thead","title","video","xmp"]);let pt=null;const vt=ot({},["audio","video","img","source","image","track"]);let At=null;const Zt=ot({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),mt="http://www.w3.org/1998/Math/MathML",Mt="http://www.w3.org/2000/svg",It="http://www.w3.org/1999/xhtml";let jt=It,an=!1,cn=null;const Ut=ot({},[mt,Mt,It],hs),Rn=Bt(["mi","mo","mn","ms","mtext"]);let Ct=ot({},Rn);const Lt=Bt(["annotation-xml"]);let gt=ot({},Lt);const bl=ot({},["title","style","font","a","script"]);let bn=null;const kl=["application/xhtml+xml","text/html"],en="text/html";let _t=null,Ot=null;const tn=t.createElement("form"),un=function(V){return V instanceof RegExp||V instanceof Function},Ht=function(){let V=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if(Ot&&Ot===V)return;(!V||typeof V!="object")&&(V={}),V=Jt(V),bn=kl.indexOf(V.PARSER_MEDIA_TYPE)===-1?en:V.PARSER_MEDIA_TYPE,_t=bn==="application/xhtml+xml"?hs:Jl,ne=Kn(V,"ALLOWED_TAGS",re,{transform:_t}),Ne=Kn(V,"ALLOWED_ATTR",Fe,{transform:_t}),cn=Kn(V,"ALLOWED_NAMESPACES",Ut,{transform:hs}),At=Kn(V,"ADD_URI_SAFE_ATTR",Zt,{transform:_t,base:Zt}),pt=Kn(V,"ADD_DATA_URI_TAGS",vt,{transform:_t,base:vt}),pe=Kn(V,"FORBID_CONTENTS",qe,{transform:_t}),je=Kn(V,"FORBID_TAGS",Jt({}),{transform:_t}),xe=Kn(V,"FORBID_ATTR",Jt({}),{transform:_t}),Je=Qt(V,"USE_PROFILES")?V.USE_PROFILES&&typeof V.USE_PROFILES=="object"?Jt(V.USE_PROFILES):V.USE_PROFILES:!1,Ve=V.ALLOW_ARIA_ATTR!==!1,Ue=V.ALLOW_DATA_ATTR!==!1,Se=V.ALLOW_UNKNOWN_PROTOCOLS||!1,He=V.ALLOW_SELF_CLOSE_IN_ATTR!==!1,Oe=V.SAFE_FOR_TEMPLATES||!1,Ke=V.SAFE_FOR_XML!==!1,Pe=V.WHOLE_DOCUMENT||!1,x=V.RETURN_DOM||!1,ye=V.RETURN_DOM_FRAGMENT||!1,me=V.RETURN_TRUSTED_TYPE||!1,be=V.FORCE_BODY||!1,Re=V.SANITIZE_DOM!==!1,ft=V.SANITIZE_NAMED_PROPS||!1,Ze=V.KEEP_CONTENT!==!1,dt=V.IN_PLACE||!1,Ie=Q_(V.ALLOWED_URI_REGEXP)?V.ALLOWED_URI_REGEXP:hr,jt=typeof V.NAMESPACE=="string"?V.NAMESPACE:It,Ct=Qt(V,"MATHML_TEXT_INTEGRATION_POINTS")&&V.MATHML_TEXT_INTEGRATION_POINTS&&typeof V.MATHML_TEXT_INTEGRATION_POINTS=="object"?Jt(V.MATHML_TEXT_INTEGRATION_POINTS):ot({},Rn),gt=Qt(V,"HTML_INTEGRATION_POINTS")&&V.HTML_INTEGRATION_POINTS&&typeof V.HTML_INTEGRATION_POINTS=="object"?Jt(V.HTML_INTEGRATION_POINTS):ot({},Lt);const ie=Qt(V,"CUSTOM_ELEMENT_HANDLING")&&V.CUSTOM_ELEMENT_HANDLING&&typeof V.CUSTOM_ELEMENT_HANDLING=="object"?Jt(V.CUSTOM_ELEMENT_HANDLING):Ol(null);if(we=Ol(null),Qt(ie,"tagNameCheck")&&un(ie.tagNameCheck)&&(we.tagNameCheck=ie.tagNameCheck),Qt(ie,"attributeNameCheck")&&un(ie.attributeNameCheck)&&(we.attributeNameCheck=ie.attributeNameCheck),Qt(ie,"allowCustomizedBuiltInElements")&&typeof ie.allowCustomizedBuiltInElements=="boolean"&&(we.allowCustomizedBuiltInElements=ie.allowCustomizedBuiltInElements),Ft(we),Oe&&(Ue=!1),ye&&(x=!0),Je&&(ne=ot({},fr),Ne=Ol(null),Je.html===!0&&(ot(ne,ur),ot(Ne,dr)),Je.svg===!0&&(ot(ne,ms),ot(Ne,bs),ot(Ne,vi)),Je.svgFilters===!0&&(ot(ne,gs),ot(Ne,bs),ot(Ne,vi)),Je.mathMl===!0&&(ot(ne,_s),ot(Ne,pr),ot(Ne,vi))),Ae.tagCheck=null,Ae.attributeCheck=null,Qt(V,"ADD_TAGS")&&(typeof V.ADD_TAGS=="function"?Ae.tagCheck=V.ADD_TAGS:Zn(V.ADD_TAGS)&&(ne===re&&(ne=Jt(ne)),ot(ne,V.ADD_TAGS,_t))),Qt(V,"ADD_ATTR")&&(typeof V.ADD_ATTR=="function"?Ae.attributeCheck=V.ADD_ATTR:Zn(V.ADD_ATTR)&&(Ne===Fe&&(Ne=Jt(Ne)),ot(Ne,V.ADD_ATTR,_t))),Qt(V,"ADD_URI_SAFE_ATTR")&&Zn(V.ADD_URI_SAFE_ATTR)&&ot(At,V.ADD_URI_SAFE_ATTR,_t),Qt(V,"FORBID_CONTENTS")&&Zn(V.FORBID_CONTENTS)&&(pe===qe&&(pe=Jt(pe)),ot(pe,V.FORBID_CONTENTS,_t)),Qt(V,"ADD_FORBID_CONTENTS")&&Zn(V.ADD_FORBID_CONTENTS)&&(pe===qe&&(pe=Jt(pe)),ot(pe,V.ADD_FORBID_CONTENTS,_t)),Ze&&(ne["#text"]=!0),Pe&&ot(ne,["html","head","body"]),ne.table&&(ot(ne,["tbody"]),delete je.tbody),V.TRUSTED_TYPES_POLICY){if(typeof V.TRUSTED_TYPES_POLICY.createHTML!="function")throw sl('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof V.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw sl('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');const ve=O;O=V.TRUSTED_TYPES_POLICY;try{R=z("")}catch(De){throw O=ve,De}}else V.TRUSTED_TYPES_POLICY===null?(O=void 0,R=""):(O===void 0&&(O=K()),O&&typeof R=="string"&&(R=z("")));(Z.uponSanitizeElement.length>0||Z.uponSanitizeAttribute.length>0)&&ne===re&&(ne=Jt(ne)),Z.uponSanitizeAttribute.length>0&&Ne===Fe&&(Ne=Jt(Ne)),Bt&&Bt(V),Ot=V},$t=ot({},[...ms,...gs,...x_]),kn=ot({},[..._s,...$_]),fn=function(V,ie,ve){return ie.namespaceURI===It?V==="svg":ie.namespaceURI===mt?V==="svg"&&(ve==="annotation-xml"||Ct[ve]):!!$t[V]},$=function(V,ie,ve){return ie.namespaceURI===It?V==="math":ie.namespaceURI===Mt?V==="math"&>[ve]:!!kn[V]},he=function(V,ie,ve){return ie.namespaceURI===Mt&&!gt[ve]||ie.namespaceURI===mt&&!Ct[ve]?!1:!kn[V]&&(bl[V]||!$t[V])},tt=function(V){let ie=E(V);(!ie||!ie.tagName)&&(ie={namespaceURI:jt,tagName:"template"});const ve=Jl(V.tagName),De=Jl(ie.tagName);return cn[V.namespaceURI]?V.namespaceURI===Mt?fn(ve,ie,De):V.namespaceURI===mt?$(ve,ie,De):V.namespaceURI===It?he(ve,ie,De):!!(bn==="application/xhtml+xml"&&cn[V.namespaceURI]):!1},st=function(V){Il(e.removed,{element:V});try{E(V).removeChild(V)}catch{if(b(V),!E(V))throw sl("a node selected for removal could not be detached from its tree and cannot be safely returned; refusing to sanitize in place")}},Yt=function(V){const ie=y(V);if(ie){const De=[];Vl(ie,$e=>{Il(De,$e)}),Vl(De,$e=>{try{b($e)}catch{}})}const ve=N(V);if(ve)for(let De=ve.length-1;De>=0;--De){const $e=ve[De],nt=$e&&$e.name;if(typeof nt=="string")try{V.removeAttribute(nt)}catch{}}},Wt=function(V,ie){try{Il(e.removed,{attribute:ie.getAttributeNode(V),from:ie})}catch{Il(e.removed,{attribute:null,from:ie})}if(ie.removeAttribute(V),V==="is")if(x||ye)try{st(ie)}catch{}else try{ie.setAttribute(V,"")}catch{}},vn=function(V){const ie=N(V);if(ie)for(let ve=ie.length-1;ve>=0;--ve){const De=ie[ve],$e=De&&De.name;if(!(typeof $e!="string"||Ne[_t($e)]))try{V.removeAttribute($e)}catch{}}},Bn=function(V){const ie=[V];for(;ie.length>0;){const ve=ie.pop();(A?A(ve):ve.nodeType)===Cn.element&&vn(ve);const $e=y(ve);if($e)for(let nt=$e.length-1;nt>=0;--nt)ie.push($e[nt])}},Xt=function(V){let ie=null,ve=null;if(be)V=""+V;else{const nt=or(V,/^[\r\n\t ]+/);ve=nt&&nt[0]}bn==="application/xhtml+xml"&&jt===It&&(V=''+V+"");const De=O?z(V):V;if(jt===It)try{ie=new p().parseFromString(De,bn)}catch{}if(!ie||!ie.documentElement){ie=F.createDocument(jt,"template",null);try{ie.documentElement.innerHTML=an?R:De}catch{}}const $e=ie.body||ie.documentElement;return V&&ve&&$e.insertBefore(t.createTextNode(ve),$e.childNodes[0]||null),jt===It?q.call(ie,Pe?"html":"body")[0]:Pe?ie.documentElement:$e},vl=function(V){return L.call(V.ownerDocument||V,V,u.SHOW_ELEMENT|u.SHOW_COMMENT|u.SHOW_TEXT|u.SHOW_PROCESSING_INSTRUCTION|u.SHOW_CDATA_SECTION,null)},wn=function(V){return V=Zl(V,J," "),V=Zl(V,ee," "),V=Zl(V,te," "),V},yn=function(V){var ie;V.normalize();const ve=L.call(V.ownerDocument||V,V,u.SHOW_TEXT|u.SHOW_COMMENT|u.SHOW_CDATA_SECTION|u.SHOW_PROCESSING_INSTRUCTION,null);let De=ve.nextNode();for(;De;)De.data=wn(De.data),De=ve.nextNode();const $e=(ie=V.querySelectorAll)===null||ie===void 0?void 0:ie.call(V,"template");$e&&Vl($e,nt=>{dn(nt.content)&&yn(nt.content)})},Fn=function(V){const ie=I?I(V):null;return typeof ie!="string"||_t(ie)!=="form"?!1:typeof V.nodeName!="string"||typeof V.textContent!="string"||typeof V.removeChild!="function"||V.attributes!==N(V)||typeof V.removeAttribute!="function"||typeof V.setAttribute!="function"||typeof V.namespaceURI!="string"||typeof V.insertBefore!="function"||typeof V.hasChildNodes!="function"||V.nodeType!==A(V)||V.childNodes!==y(V)},dn=function(V){if(!A||typeof V!="object"||V===null)return!1;try{return A(V)===Cn.documentFragment}catch{return!1}},Mn=function(V){if(!A||typeof V!="object"||V===null)return!1;try{return typeof A(V)=="number"}catch{return!1}};function Gt(Ee,V,ie){Ee.length!==0&&Vl(Ee,ve=>{ve.call(e,V,ie,Ot)})}const wl=function(V,ie){return!!(Ke&&V.hasChildNodes()&&!Mn(V.firstElementChild)&&zt(mr,V.textContent)&&zt(mr,V.innerHTML)||Ke&&V.namespaceURI===It&&ie==="style"&&Mn(V.firstElementChild)||V.nodeType===Cn.processingInstruction||Ke&&V.nodeType===Cn.comment&&zt(cb,V.data))},oi=function(V,ie){if(!je[ie]&&Jn(ie)&&(we.tagNameCheck instanceof RegExp&&zt(we.tagNameCheck,ie)||we.tagNameCheck instanceof Function&&we.tagNameCheck(ie)))return!1;if(Ze&&!pe[ie]){const ve=E(V),De=y(V);if(De&&ve){const $e=De.length;for(let nt=$e-1;nt>=0;--nt){const St=dt?De[nt]:g(De[nt],!0);ve.insertBefore(St,v(V))}}}return st(V),!0},jl=function(V){if(Gt(Z.beforeSanitizeElements,V,null),Fn(V))return st(V),!0;const ie=_t(I?I(V):V.nodeName);if(Gt(Z.uponSanitizeElement,V,{tagName:ie,allowedTags:ne}),wl(V,ie))return st(V),!0;if(je[ie]||!(Ae.tagCheck instanceof Function&&Ae.tagCheck(ie))&&!ne[ie])return oi(V,ie);if((A?A(V):V.nodeType)===Cn.element&&!tt(V)||(ie==="noscript"||ie==="noembed"||ie==="noframes")&&zt(ub,V.innerHTML))return st(V),!0;if(Oe&&V.nodeType===Cn.text){const De=wn(V.textContent);V.textContent!==De&&(Il(e.removed,{element:V.cloneNode()}),V.textContent=De)}return Gt(Z.afterSanitizeElements,V,null),!1},Ul=function(V,ie,ve){if(xe[ie]||Re&&(ie==="id"||ie==="name")&&(ve in t||ve in tn))return!1;const De=Ne[ie]||Ae.attributeCheck instanceof Function&&Ae.attributeCheck(ie,V);if(!(Ue&&zt(le,ie))){if(!(Ve&&zt(_e,ie))){if(De){if(!At[ie]){if(!zt(Ie,Zl(ve,ze,""))){if(!((ie==="src"||ie==="xlink:href"||ie==="href")&&V!=="script"&&rr(ve,"data:")===0&&pt[V])){if(!(Se&&!zt(oe,Zl(ve,ze,"")))){if(ve)return!1}}}}}else if(!(Jn(V)&&(we.tagNameCheck instanceof RegExp&&zt(we.tagNameCheck,V)||we.tagNameCheck instanceof Function&&we.tagNameCheck(V))&&(we.attributeNameCheck instanceof RegExp&&zt(we.attributeNameCheck,ie)||we.attributeNameCheck instanceof Function&&we.attributeNameCheck(ie,V))||ie==="is"&&we.allowCustomizedBuiltInElements&&(we.tagNameCheck instanceof RegExp&&zt(we.tagNameCheck,ve)||we.tagNameCheck instanceof Function&&we.tagNameCheck(ve))))return!1}}return!0},ri=ot({},["annotation-xml","color-profile","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","missing-glyph"]),Jn=function(V){return!ri[Jl(V)]&&zt(Ge,V)},yl=function(V,ie,ve,De){if(O&&typeof h=="object"&&typeof h.getAttributeType=="function"&&!ve)switch(h.getAttributeType(V,ie)){case"TrustedHTML":return z(De);case"TrustedScriptURL":return W(De)}return De},jn=function(V,ie,ve,De){try{ve?V.setAttributeNS(ve,ie,De):V.setAttribute(ie,De),Fn(V)?st(V):sr(e.removed)}catch{Wt(ie,V)}},Qn=function(V){Gt(Z.beforeSanitizeAttributes,V,null);const ie=V.attributes;if(!ie||Fn(V))return;const ve={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:Ne,forceKeepAttr:void 0};let De=ie.length;const $e=_t(V.nodeName);for(;De--;){const nt=ie[De],St=nt.name,wt=nt.namespaceURI,Dt=nt.value,nn=_t(St),xn=Dt;let Pt=St==="value"?xn:K_(xn);if(ve.attrName=nn,ve.attrValue=Pt,ve.keepAttr=!0,ve.forceKeepAttr=void 0,Gt(Z.uponSanitizeAttribute,V,ve),Pt=ve.attrValue,ft&&(nn==="id"||nn==="name")&&rr(Pt,it)!==0&&(Wt(St,V),Pt=it+Pt),Ke&&zt(/((--!?|])>)|<\/(style|script|title|xmp|textarea|noscript|iframe|noembed|noframes)/i,Pt)){Wt(St,V);continue}if(nn==="attributename"&&or(Pt,"href")){Wt(St,V);continue}if(!ve.forceKeepAttr){if(!ve.keepAttr){Wt(St,V);continue}if(!He&&zt(fb,Pt)){Wt(St,V);continue}if(Oe&&(Pt=wn(Pt)),!Ul($e,nn,Pt)){Wt(St,V);continue}Pt=yl($e,nn,wt,Pt),Pt!==xn&&jn(V,St,wt,Pt)}}Gt(Z.afterSanitizeAttributes,V,null)},hn=function(V){let ie=null;const ve=vl(V);for(Gt(Z.beforeSanitizeShadowDOM,V,null);ie=ve.nextNode();)if(Gt(Z.uponSanitizeShadowNode,ie,null),jl(ie),Qn(ie),dn(ie.content)&&hn(ie.content),(A?A(ie):ie.nodeType)===Cn.element){const $e=T(ie);dn($e)&&(En($e),hn($e))}Gt(Z.afterSanitizeShadowDOM,V,null)},En=function(V){const ie=[{node:V,shadow:null}];for(;ie.length>0;){const ve=ie.pop();if(ve.shadow){hn(ve.shadow);continue}const De=ve.node,nt=(A?A(De):De.nodeType)===Cn.element,St=y(De);if(St)for(let wt=St.length-1;wt>=0;--wt)ie.push({node:St[wt],shadow:null});if(nt){const wt=I?I(De):null;if(typeof wt=="string"&&_t(wt)==="template"){const Dt=De.content;dn(Dt)&&ie.push({node:Dt,shadow:null})}}if(nt){const wt=T(De);dn(wt)&&ie.push({node:null,shadow:wt},{node:wt,shadow:null})}}};return e.sanitize=function(Ee){let V=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},ie=null,ve=null,De=null,$e=null;if(an=!Ee,an&&(Ee=""),typeof Ee!="string"&&!Mn(Ee)&&(Ee=J_(Ee),typeof Ee!="string"))throw sl("dirty is not a string, aborting");if(!e.isSupported)return Ee;ue||Ht(V),e.removed=[];const nt=dt&&typeof Ee!="string"&&Mn(Ee);if(nt){const Dt=I?I(Ee):Ee.nodeName;if(typeof Dt=="string"){const nn=_t(Dt);if(!ne[nn]||je[nn])throw sl("root node is forbidden and cannot be sanitized in-place")}if(Fn(Ee))throw sl("root node is clobbered and cannot be sanitized in-place");try{En(Ee)}catch(nn){throw Yt(Ee),nn}}else if(Mn(Ee))ie=Xt(""),ve=ie.ownerDocument.importNode(Ee,!0),ve.nodeType===Cn.element&&ve.nodeName==="BODY"||ve.nodeName==="HTML"?ie=ve:ie.appendChild(ve),En(ve);else{if(!x&&!Oe&&!Pe&&Ee.indexOf("<")===-1)return O&&me?z(Ee):Ee;if(ie=Xt(Ee),!ie)return x?null:me?R:""}ie&&be&&st(ie.firstChild);const St=vl(nt?Ee:ie);try{for(;De=St.nextNode();)jl(De),Qn(De),dn(De.content)&&hn(De.content)}catch(Dt){throw nt&&Yt(Ee),Dt}if(nt)return Vl(e.removed,Dt=>{Dt.element&&Bn(Dt.element)}),Oe&&yn(Ee),Ee;if(x){if(Oe&&yn(ie),ye)for($e=M.call(ie.ownerDocument);ie.firstChild;)$e.appendChild(ie.firstChild);else $e=ie;return(Ne.shadowroot||Ne.shadowrootmode)&&($e=X.call(l,$e,!0)),$e}let wt=Pe?ie.outerHTML:ie.innerHTML;return Pe&&ne["!doctype"]&&ie.ownerDocument&&ie.ownerDocument.doctype&&ie.ownerDocument.doctype.name&&zt(rb,ie.ownerDocument.doctype.name)&&(wt=" +`+wt),Oe&&(wt=wn(wt)),O&&me?z(wt):wt},e.setConfig=function(){let Ee=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};Ht(Ee),ue=!0},e.clearConfig=function(){Ot=null,ue=!1,O=D,R=""},e.isValidAttribute=function(Ee,V,ie){Ot||Ht({});const ve=_t(Ee),De=_t(V);return Ul(ve,De,ie)},e.addHook=function(Ee,V){typeof V=="function"&&Il(Z[Ee],V)},e.removeHook=function(Ee,V){if(V!==void 0){const ie=W_(Z[Ee],V);return ie===-1?void 0:G_(Z[Ee],ie,1)[0]}return sr(Z[Ee])},e.removeHooks=function(Ee){Z[Ee]=[]},e.removeAllHooks=function(){Z=gr()},e}var cd=ad();function hb(n){return n&&n.__esModule&&Object.prototype.hasOwnProperty.call(n,"default")?n.default:n}function ud(n){return n instanceof Map?n.clear=n.delete=n.set=function(){throw new Error("map is read-only")}:n instanceof Set&&(n.add=n.clear=n.delete=function(){throw new Error("set is read-only")}),Object.freeze(n),Object.getOwnPropertyNames(n).forEach(e=>{const t=n[e],l=typeof t;(l==="object"||l==="function")&&!Object.isFrozen(t)&&ud(t)}),n}class _r{constructor(e){e.data===void 0&&(e.data={}),this.data=e.data,this.isMatchIgnored=!1}ignoreMatch(){this.isMatchIgnored=!0}}function fd(n){return n.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")}function Xn(n,...e){const t=Object.create(null);for(const l in n)t[l]=n[l];return e.forEach(function(l){for(const i in l)t[i]=l[i]}),t}const mb="",br=n=>!!n.scope,gb=(n,{prefix:e})=>{if(n.startsWith("language:"))return n.replace("language:","language-");if(n.includes(".")){const t=n.split(".");return[`${e}${t.shift()}`,...t.map((l,i)=>`${l}${"_".repeat(i+1)}`)].join(" ")}return`${e}${n}`};class _b{constructor(e,t){this.buffer="",this.classPrefix=t.classPrefix,e.walk(this)}addText(e){this.buffer+=fd(e)}openNode(e){if(!br(e))return;const t=gb(e.scope,{prefix:this.classPrefix});this.span(t)}closeNode(e){br(e)&&(this.buffer+=mb)}value(){return this.buffer}span(e){this.buffer+=``}}const kr=(n={})=>{const e={children:[]};return Object.assign(e,n),e};class Gs{constructor(){this.rootNode=kr(),this.stack=[this.rootNode]}get top(){return this.stack[this.stack.length-1]}get root(){return this.rootNode}add(e){this.top.children.push(e)}openNode(e){const t=kr({scope:e});this.add(t),this.stack.push(t)}closeNode(){if(this.stack.length>1)return this.stack.pop()}closeAllNodes(){for(;this.closeNode(););}toJSON(){return JSON.stringify(this.rootNode,null,4)}walk(e){return this.constructor._walk(e,this.rootNode)}static _walk(e,t){return typeof t=="string"?e.addText(t):t.children&&(e.openNode(t),t.children.forEach(l=>this._walk(e,l)),e.closeNode(t)),e}static _collapse(e){typeof e!="string"&&e.children&&(e.children.every(t=>typeof t=="string")?e.children=[e.children.join("")]:e.children.forEach(t=>{Gs._collapse(t)}))}}class bb extends Gs{constructor(e){super(),this.options=e}addText(e){e!==""&&this.add(e)}startScope(e){this.openNode(e)}endScope(){this.closeNode()}__addSublanguage(e,t){const l=e.root;t&&(l.scope=`language:${t}`),this.add(l)}toHTML(){return new _b(this,this.options).value()}finalize(){return this.closeAllNodes(),!0}}function ei(n){return n?typeof n=="string"?n:n.source:null}function dd(n){return _l("(?=",n,")")}function kb(n){return _l("(?:",n,")*")}function vb(n){return _l("(?:",n,")?")}function _l(...n){return n.map(t=>ei(t)).join("")}function wb(n){const e=n[n.length-1];return typeof e=="object"&&e.constructor===Object?(n.splice(n.length-1,1),e):{}}function Ks(...n){return"("+(wb(n).capture?"":"?:")+n.map(l=>ei(l)).join("|")+")"}function pd(n){return new RegExp(n.toString()+"|").exec("").length-1}function yb(n,e){const t=n&&n.exec(e);return t&&t.index===0}const Eb=/\[(?:[^\\\]]|\\.)*\]|\(\??|\\([1-9][0-9]*)|\\./;function Vs(n,{joinWith:e}){let t=0;return n.map(l=>{t+=1;const i=t;let o=ei(l),s="";for(;o.length>0;){const c=Eb.exec(o);if(!c){s+=o;break}s+=o.substring(0,c.index),o=o.substring(c.index+c[0].length),c[0][0]==="\\"&&c[1]?s+="\\"+String(Number(c[1])+i):(s+=c[0],c[0]==="("&&t++)}return s}).map(l=>`(${l})`).join(e)}const Tb=/\b\B/,hd="[a-zA-Z]\\w*",Zs="[a-zA-Z_]\\w*",md="\\b\\d+(\\.\\d+)?",gd="(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",_d="\\b(0b[01]+)",Sb="!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~",Cb=(n={})=>{const e=/^#![ ]*\//;return n.binary&&(n.begin=_l(e,/.*\b/,n.binary,/\b.*/)),Xn({scope:"meta",begin:e,end:/$/,relevance:0,"on:begin":(t,l)=>{t.index!==0&&l.ignoreMatch()}},n)},ti={begin:"\\\\[\\s\\S]",relevance:0},Ab={scope:"string",begin:"'",end:"'",illegal:"\\n",contains:[ti]},Nb={scope:"string",begin:'"',end:'"',illegal:"\\n",contains:[ti]},Ib={begin:/\b(a|an|the|are|I'm|isn't|don't|doesn't|won't|but|just|should|pretty|simply|enough|gonna|going|wtf|so|such|will|you|your|they|like|more)\b/},Wi=function(n,e,t={}){const l=Xn({scope:"comment",begin:n,end:e,contains:[]},t);l.contains.push({scope:"doctag",begin:"[ ]*(?=(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):)",end:/(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):/,excludeBegin:!0,relevance:0});const i=Ks("I","a","is","so","us","to","at","if","in","it","on",/[A-Za-z]+['](d|ve|re|ll|t|s|n)/,/[A-Za-z]+[-][a-z]+/,/[A-Za-z][a-z]{2,}/);return l.contains.push({begin:_l(/[ ]+/,"(",i,/[.]?[:]?([.][ ]|[ ])/,"){3}")}),l},Rb=Wi("//","$"),Mb=Wi("/\\*","\\*/"),Lb=Wi("#","$"),Ob={scope:"number",begin:md,relevance:0},Db={scope:"number",begin:gd,relevance:0},Pb={scope:"number",begin:_d,relevance:0},qb={scope:"regexp",begin:/\/(?=[^/\n]*\/)/,end:/\/[gimuy]*/,contains:[ti,{begin:/\[/,end:/\]/,relevance:0,contains:[ti]}]},zb={scope:"title",begin:hd,relevance:0},Bb={scope:"title",begin:Zs,relevance:0},Fb={begin:"\\.\\s*"+Zs,relevance:0},jb=function(n){return Object.assign(n,{"on:begin":(e,t)=>{t.data._beginMatch=e[1]},"on:end":(e,t)=>{t.data._beginMatch!==e[1]&&t.ignoreMatch()}})};var wi=Object.freeze({__proto__:null,APOS_STRING_MODE:Ab,BACKSLASH_ESCAPE:ti,BINARY_NUMBER_MODE:Pb,BINARY_NUMBER_RE:_d,COMMENT:Wi,C_BLOCK_COMMENT_MODE:Mb,C_LINE_COMMENT_MODE:Rb,C_NUMBER_MODE:Db,C_NUMBER_RE:gd,END_SAME_AS_BEGIN:jb,HASH_COMMENT_MODE:Lb,IDENT_RE:hd,MATCH_NOTHING_RE:Tb,METHOD_GUARD:Fb,NUMBER_MODE:Ob,NUMBER_RE:md,PHRASAL_WORDS_MODE:Ib,QUOTE_STRING_MODE:Nb,REGEXP_MODE:qb,RE_STARTERS_RE:Sb,SHEBANG:Cb,TITLE_MODE:zb,UNDERSCORE_IDENT_RE:Zs,UNDERSCORE_TITLE_MODE:Bb});function Ub(n,e){n.input[n.index-1]==="."&&e.ignoreMatch()}function Hb(n,e){n.className!==void 0&&(n.scope=n.className,delete n.className)}function Wb(n,e){e&&n.beginKeywords&&(n.begin="\\b("+n.beginKeywords.split(" ").join("|")+")(?!\\.)(?=\\b|\\s)",n.__beforeBegin=Ub,n.keywords=n.keywords||n.beginKeywords,delete n.beginKeywords,n.relevance===void 0&&(n.relevance=0))}function Gb(n,e){Array.isArray(n.illegal)&&(n.illegal=Ks(...n.illegal))}function Kb(n,e){if(n.match){if(n.begin||n.end)throw new Error("begin & end are not supported with match");n.begin=n.match,delete n.match}}function Vb(n,e){n.relevance===void 0&&(n.relevance=1)}const Zb=(n,e)=>{if(!n.beforeMatch)return;if(n.starts)throw new Error("beforeMatch cannot be used with starts");const t=Object.assign({},n);Object.keys(n).forEach(l=>{delete n[l]}),n.keywords=t.keywords,n.begin=_l(t.beforeMatch,dd(t.begin)),n.starts={relevance:0,contains:[Object.assign(t,{endsParent:!0})]},n.relevance=0,delete t.beforeMatch},Yb=["of","and","for","in","not","or","if","then","parent","list","value"],Xb="keyword";function bd(n,e,t=Xb){const l=Object.create(null);return typeof n=="string"?i(t,n.split(" ")):Array.isArray(n)?i(t,n):Object.keys(n).forEach(function(o){Object.assign(l,bd(n[o],e,o))}),l;function i(o,s){e&&(s=s.map(c=>c.toLowerCase())),s.forEach(function(c){const u=c.split("|");l[u[0]]=[o,Jb(u[0],u[1])]})}}function Jb(n,e){return e?Number(e):Qb(n)?0:1}function Qb(n){return Yb.includes(n.toLowerCase())}const vr={},dl=n=>{console.error(n)},wr=(n,...e)=>{console.log(`WARN: ${n}`,...e)},Rl=(n,e)=>{vr[`${n}/${e}`]||(console.log(`Deprecated as of ${n}. ${e}`),vr[`${n}/${e}`]=!0)},qi=new Error;function kd(n,e,{key:t}){let l=0;const i=n[t],o={},s={};for(let c=1;c<=e.length;c++)s[c+l]=i[c],o[c+l]=!0,l+=pd(e[c-1]);n[t]=s,n[t]._emit=o,n[t]._multi=!0}function xb(n){if(Array.isArray(n.begin)){if(n.skip||n.excludeBegin||n.returnBegin)throw dl("skip, excludeBegin, returnBegin not compatible with beginScope: {}"),qi;if(typeof n.beginScope!="object"||n.beginScope===null)throw dl("beginScope must be object"),qi;kd(n,n.begin,{key:"beginScope"}),n.begin=Vs(n.begin,{joinWith:""})}}function $b(n){if(Array.isArray(n.end)){if(n.skip||n.excludeEnd||n.returnEnd)throw dl("skip, excludeEnd, returnEnd not compatible with endScope: {}"),qi;if(typeof n.endScope!="object"||n.endScope===null)throw dl("endScope must be object"),qi;kd(n,n.end,{key:"endScope"}),n.end=Vs(n.end,{joinWith:""})}}function ek(n){n.scope&&typeof n.scope=="object"&&n.scope!==null&&(n.beginScope=n.scope,delete n.scope)}function tk(n){ek(n),typeof n.beginScope=="string"&&(n.beginScope={_wrap:n.beginScope}),typeof n.endScope=="string"&&(n.endScope={_wrap:n.endScope}),xb(n),$b(n)}function nk(n){function e(s,c){return new RegExp(ei(s),"m"+(n.case_insensitive?"i":"")+(n.unicodeRegex?"u":"")+(c?"g":""))}class t{constructor(){this.matchIndexes={},this.regexes=[],this.matchAt=1,this.position=0}addRule(c,u){u.position=this.position++,this.matchIndexes[this.matchAt]=u,this.regexes.push([u,c]),this.matchAt+=pd(c)+1}compile(){this.regexes.length===0&&(this.exec=()=>null);const c=this.regexes.map(u=>u[1]);this.matcherRe=e(Vs(c,{joinWith:"|"}),!0),this.lastIndex=0}exec(c){this.matcherRe.lastIndex=this.lastIndex;const u=this.matcherRe.exec(c);if(!u)return null;const d=u.findIndex((h,m)=>m>0&&h!==void 0),p=this.matchIndexes[d];return u.splice(0,d),Object.assign(u,p)}}class l{constructor(){this.rules=[],this.multiRegexes=[],this.count=0,this.lastIndex=0,this.regexIndex=0}getMatcher(c){if(this.multiRegexes[c])return this.multiRegexes[c];const u=new t;return this.rules.slice(c).forEach(([d,p])=>u.addRule(d,p)),u.compile(),this.multiRegexes[c]=u,u}resumingScanAtSamePosition(){return this.regexIndex!==0}considerAll(){this.regexIndex=0}addRule(c,u){this.rules.push([c,u]),u.type==="begin"&&this.count++}exec(c){const u=this.getMatcher(this.regexIndex);u.lastIndex=this.lastIndex;let d=u.exec(c);if(this.resumingScanAtSamePosition()&&!(d&&d.index===this.lastIndex)){const p=this.getMatcher(0);p.lastIndex=this.lastIndex+1,d=p.exec(c)}return d&&(this.regexIndex+=d.position+1,this.regexIndex===this.count&&this.considerAll()),d}}function i(s){const c=new l;return s.contains.forEach(u=>c.addRule(u.begin,{rule:u,type:"begin"})),s.terminatorEnd&&c.addRule(s.terminatorEnd,{type:"end"}),s.illegal&&c.addRule(s.illegal,{type:"illegal"}),c}function o(s,c){const u=s;if(s.isCompiled)return u;[Hb,Kb,tk,Zb].forEach(p=>p(s,c)),n.compilerExtensions.forEach(p=>p(s,c)),s.__beforeBegin=null,[Wb,Gb,Vb].forEach(p=>p(s,c)),s.isCompiled=!0;let d=null;return typeof s.keywords=="object"&&s.keywords.$pattern&&(s.keywords=Object.assign({},s.keywords),d=s.keywords.$pattern,delete s.keywords.$pattern),d=d||/\w+/,s.keywords&&(s.keywords=bd(s.keywords,n.case_insensitive)),u.keywordPatternRe=e(d,!0),c&&(s.begin||(s.begin=/\B|\b/),u.beginRe=e(u.begin),!s.end&&!s.endsWithParent&&(s.end=/\B|\b/),s.end&&(u.endRe=e(u.end)),u.terminatorEnd=ei(u.end)||"",s.endsWithParent&&c.terminatorEnd&&(u.terminatorEnd+=(s.end?"|":"")+c.terminatorEnd)),s.illegal&&(u.illegalRe=e(s.illegal)),s.contains||(s.contains=[]),s.contains=[].concat(...s.contains.map(function(p){return lk(p==="self"?s:p)})),s.contains.forEach(function(p){o(p,u)}),s.starts&&o(s.starts,c),u.matcher=i(u),u}if(n.compilerExtensions||(n.compilerExtensions=[]),n.contains&&n.contains.includes("self"))throw new Error("ERR: contains `self` is not supported at the top-level of a language. See documentation.");return n.classNameAliases=Xn(n.classNameAliases||{}),o(n)}function vd(n){return n?n.endsWithParent||vd(n.starts):!1}function lk(n){return n.variants&&!n.cachedVariants&&(n.cachedVariants=n.variants.map(function(e){return Xn(n,{variants:null},e)})),n.cachedVariants?n.cachedVariants:vd(n)?Xn(n,{starts:n.starts?Xn(n.starts):null}):Object.isFrozen(n)?Xn(n):n}var ik="11.11.1";class sk extends Error{constructor(e,t){super(e),this.name="HTMLInjectionError",this.html=t}}const ks=fd,yr=Xn,Er=Symbol("nomatch"),ok=7,wd=function(n){const e=Object.create(null),t=Object.create(null),l=[];let i=!0;const o="Could not find the language '{}', did you forget to load/include a language module?",s={disableAutodetect:!0,name:"Plain text",contains:[]};let c={ignoreUnescapedHTML:!1,throwUnescapedHTML:!1,noHighlightRe:/^(no-?highlight)$/i,languageDetectRe:/\blang(?:uage)?-([\w-]+)\b/i,classPrefix:"hljs-",cssSelector:"pre code",languages:null,__emitter:bb};function u(F){return c.noHighlightRe.test(F)}function d(F){let L=F.className+" ";L+=F.parentNode?F.parentNode.className:"";const M=c.languageDetectRe.exec(L);if(M){const q=D(M[1]);return q||(wr(o.replace("{}",M[1])),wr("Falling back to no-highlight mode for this block.",F)),q?M[1]:"no-highlight"}return L.split(/\s+/).find(q=>u(q)||D(q))}function p(F,L,M){let q="",X="";typeof L=="object"?(q=F,M=L.ignoreIllegals,X=L.language):(Rl("10.7.0","highlight(lang, code, ...args) has been deprecated."),Rl("10.7.0",`Please use highlight(code, options) instead. +https://github.com/highlightjs/highlight.js/issues/2277`),X=F,q=L),M===void 0&&(M=!0);const Z={code:q,language:X};K("before:highlight",Z);const J=Z.result?Z.result:h(Z.language,Z.code,M);return J.code=Z.code,K("after:highlight",J),J}function h(F,L,M,q){const X=Object.create(null);function Z(ue,be){return ue.keywords[be]}function J(){if(!Ae.keywords){Ue.addText(Se);return}let ue=0;Ae.keywordPatternRe.lastIndex=0;let be=Ae.keywordPatternRe.exec(Se),x="";for(;be;){x+=Se.substring(ue,be.index);const ye=we.case_insensitive?be[0].toLowerCase():be[0],me=Z(Ae,ye);if(me){const[Re,ft]=me;if(Ue.addText(x),x="",X[ye]=(X[ye]||0)+1,X[ye]<=ok&&(He+=ft),Re.startsWith("_"))x+=be[0];else{const it=we.classNameAliases[Re]||Re;le(be[0],it)}}else x+=be[0];ue=Ae.keywordPatternRe.lastIndex,be=Ae.keywordPatternRe.exec(Se)}x+=Se.substring(ue),Ue.addText(x)}function ee(){if(Se==="")return;let ue=null;if(typeof Ae.subLanguage=="string"){if(!e[Ae.subLanguage]){Ue.addText(Se);return}ue=h(Ae.subLanguage,Se,!0,Ve[Ae.subLanguage]),Ve[Ae.subLanguage]=ue._top}else ue=g(Se,Ae.subLanguage.length?Ae.subLanguage:null);Ae.relevance>0&&(He+=ue.relevance),Ue.__addSublanguage(ue._emitter,ue.language)}function te(){Ae.subLanguage!=null?ee():J(),Se=""}function le(ue,be){ue!==""&&(Ue.startScope(be),Ue.addText(ue),Ue.endScope())}function _e(ue,be){let x=1;const ye=be.length-1;for(;x<=ye;){if(!ue._emit[x]){x++;continue}const me=we.classNameAliases[ue[x]]||ue[x],Re=be[x];me?le(Re,me):(Se=Re,J(),Se=""),x++}}function oe(ue,be){return ue.scope&&typeof ue.scope=="string"&&Ue.openNode(we.classNameAliases[ue.scope]||ue.scope),ue.beginScope&&(ue.beginScope._wrap?(le(Se,we.classNameAliases[ue.beginScope._wrap]||ue.beginScope._wrap),Se=""):ue.beginScope._multi&&(_e(ue.beginScope,be),Se="")),Ae=Object.create(ue,{parent:{value:Ae}}),Ae}function ze(ue,be,x){let ye=yb(ue.endRe,x);if(ye){if(ue["on:end"]){const me=new _r(ue);ue["on:end"](be,me),me.isMatchIgnored&&(ye=!1)}if(ye){for(;ue.endsParent&&ue.parent;)ue=ue.parent;return ue}}if(ue.endsWithParent)return ze(ue.parent,be,x)}function Ge(ue){return Ae.matcher.regexIndex===0?(Se+=ue[0],1):(Pe=!0,0)}function Ie(ue){const be=ue[0],x=ue.rule,ye=new _r(x),me=[x.__beforeBegin,x["on:begin"]];for(const Re of me)if(Re&&(Re(ue,ye),ye.isMatchIgnored))return Ge(be);return x.skip?Se+=be:(x.excludeBegin&&(Se+=be),te(),!x.returnBegin&&!x.excludeBegin&&(Se=be)),oe(x,ue),x.returnBegin?0:be.length}function ne(ue){const be=ue[0],x=L.substring(ue.index),ye=ze(Ae,ue,x);if(!ye)return Er;const me=Ae;Ae.endScope&&Ae.endScope._wrap?(te(),le(be,Ae.endScope._wrap)):Ae.endScope&&Ae.endScope._multi?(te(),_e(Ae.endScope,ue)):me.skip?Se+=be:(me.returnEnd||me.excludeEnd||(Se+=be),te(),me.excludeEnd&&(Se=be));do Ae.scope&&Ue.closeNode(),!Ae.skip&&!Ae.subLanguage&&(He+=Ae.relevance),Ae=Ae.parent;while(Ae!==ye.parent);return ye.starts&&oe(ye.starts,ue),me.returnEnd?0:be.length}function re(){const ue=[];for(let be=Ae;be!==we;be=be.parent)be.scope&&ue.unshift(be.scope);ue.forEach(be=>Ue.openNode(be))}let Ne={};function Fe(ue,be){const x=be&&be[0];if(Se+=ue,x==null)return te(),0;if(Ne.type==="begin"&&be.type==="end"&&Ne.index===be.index&&x===""){if(Se+=L.slice(be.index,be.index+1),!i){const ye=new Error(`0 width match regex (${F})`);throw ye.languageName=F,ye.badRule=Ne.rule,ye}return 1}if(Ne=be,be.type==="begin")return Ie(be);if(be.type==="illegal"&&!M){const ye=new Error('Illegal lexeme "'+x+'" for mode "'+(Ae.scope||"")+'"');throw ye.mode=Ae,ye}else if(be.type==="end"){const ye=ne(be);if(ye!==Er)return ye}if(be.type==="illegal"&&x==="")return Se+=` +`,1;if(Ke>1e5&&Ke>be.index*3)throw new Error("potential infinite loop, way more iterations than matches");return Se+=x,x.length}const we=D(F);if(!we)throw dl(o.replace("{}",F)),new Error('Unknown language: "'+F+'"');const je=nk(we);let xe="",Ae=q||je;const Ve={},Ue=new c.__emitter(c);re();let Se="",He=0,Oe=0,Ke=0,Pe=!1;try{if(we.__emitTokens)we.__emitTokens(L,Ue);else{for(Ae.matcher.considerAll();;){Ke++,Pe?Pe=!1:Ae.matcher.considerAll(),Ae.matcher.lastIndex=Oe;const ue=Ae.matcher.exec(L);if(!ue)break;const be=L.substring(Oe,ue.index),x=Fe(be,ue);Oe=ue.index+x}Fe(L.substring(Oe))}return Ue.finalize(),xe=Ue.toHTML(),{language:F,value:xe,relevance:He,illegal:!1,_emitter:Ue,_top:Ae}}catch(ue){if(ue.message&&ue.message.includes("Illegal"))return{language:F,value:ks(L),illegal:!0,relevance:0,_illegalBy:{message:ue.message,index:Oe,context:L.slice(Oe-100,Oe+100),mode:ue.mode,resultSoFar:xe},_emitter:Ue};if(i)return{language:F,value:ks(L),illegal:!1,relevance:0,errorRaised:ue,_emitter:Ue,_top:Ae};throw ue}}function m(F){const L={value:ks(F),illegal:!1,relevance:0,_top:s,_emitter:new c.__emitter(c)};return L._emitter.addText(F),L}function g(F,L){L=L||c.languages||Object.keys(e);const M=m(F),q=L.filter(D).filter(j).map(te=>h(te,F,!1));q.unshift(M);const X=q.sort((te,le)=>{if(te.relevance!==le.relevance)return le.relevance-te.relevance;if(te.language&&le.language){if(D(te.language).supersetOf===le.language)return 1;if(D(le.language).supersetOf===te.language)return-1}return 0}),[Z,J]=X,ee=Z;return ee.secondBest=J,ee}function b(F,L,M){const q=L&&t[L]||M;F.classList.add("hljs"),F.classList.add(`language-${q}`)}function v(F){let L=null;const M=d(F);if(u(M))return;if(K("before:highlightElement",{el:F,language:M}),F.dataset.highlighted){console.log("Element previously highlighted. To highlight again, first unset `dataset.highlighted`.",F);return}if(F.children.length>0&&(c.ignoreUnescapedHTML||(console.warn("One of your code blocks includes unescaped HTML. This is a potentially serious security risk."),console.warn("https://github.com/highlightjs/highlight.js/wiki/security"),console.warn("The element with unescaped HTML:"),console.warn(F)),c.throwUnescapedHTML))throw new sk("One of your code blocks includes unescaped HTML.",F.innerHTML);L=F;const q=L.textContent,X=M?p(q,{language:M,ignoreIllegals:!0}):g(q);F.innerHTML=X.value,F.dataset.highlighted="yes",b(F,M,X.language),F.result={language:X.language,re:X.relevance,relevance:X.relevance},X.secondBest&&(F.secondBest={language:X.secondBest.language,relevance:X.secondBest.relevance}),K("after:highlightElement",{el:F,result:X,text:q})}function y(F){c=yr(c,F)}const E=()=>{A(),Rl("10.6.0","initHighlighting() deprecated. Use highlightAll() now.")};function T(){A(),Rl("10.6.0","initHighlightingOnLoad() deprecated. Use highlightAll() now.")}let N=!1;function A(){function F(){A()}if(document.readyState==="loading"){N||window.addEventListener("DOMContentLoaded",F,!1),N=!0;return}document.querySelectorAll(c.cssSelector).forEach(v)}function I(F,L){let M=null;try{M=L(n)}catch(q){if(dl("Language definition for '{}' could not be registered.".replace("{}",F)),i)dl(q);else throw q;M=s}M.name||(M.name=F),e[F]=M,M.rawDefinition=L.bind(null,n),M.aliases&&B(M.aliases,{languageName:F})}function O(F){delete e[F];for(const L of Object.keys(t))t[L]===F&&delete t[L]}function R(){return Object.keys(e)}function D(F){return F=(F||"").toLowerCase(),e[F]||e[t[F]]}function B(F,{languageName:L}){typeof F=="string"&&(F=[F]),F.forEach(M=>{t[M.toLowerCase()]=L})}function j(F){const L=D(F);return L&&!L.disableAutodetect}function U(F){F["before:highlightBlock"]&&!F["before:highlightElement"]&&(F["before:highlightElement"]=L=>{F["before:highlightBlock"](Object.assign({block:L.el},L))}),F["after:highlightBlock"]&&!F["after:highlightElement"]&&(F["after:highlightElement"]=L=>{F["after:highlightBlock"](Object.assign({block:L.el},L))})}function z(F){U(F),l.push(F)}function W(F){const L=l.indexOf(F);L!==-1&&l.splice(L,1)}function K(F,L){const M=F;l.forEach(function(q){q[M]&&q[M](L)})}function Y(F){return Rl("10.7.0","highlightBlock will be removed entirely in v12.0"),Rl("10.7.0","Please use highlightElement now."),v(F)}Object.assign(n,{highlight:p,highlightAuto:g,highlightAll:A,highlightElement:v,highlightBlock:Y,configure:y,initHighlighting:E,initHighlightingOnLoad:T,registerLanguage:I,unregisterLanguage:O,listLanguages:R,getLanguage:D,registerAliases:B,autoDetection:j,inherit:yr,addPlugin:z,removePlugin:W}),n.debugMode=function(){i=!1},n.safeMode=function(){i=!0},n.versionString=ik,n.regex={concat:_l,lookahead:dd,either:Ks,optional:vb,anyNumberOfTimes:kb};for(const F in wi)typeof wi[F]=="object"&&ud(wi[F]);return Object.assign(n,wi),n},ql=wd({});ql.newInstance=()=>wd({});var rk=ql;ql.HighlightJS=ql;ql.default=ql;const on=hb(rk),Tr="[A-Za-z$_][0-9A-Za-z$_]*",ak=["as","in","of","if","for","while","finally","var","new","function","do","return","void","else","break","catch","instanceof","with","throw","case","default","try","switch","continue","typeof","delete","let","yield","const","class","debugger","async","await","static","import","from","export","extends","using"],ck=["true","false","null","undefined","NaN","Infinity"],yd=["Object","Function","Boolean","Symbol","Math","Date","Number","BigInt","String","RegExp","Array","Float32Array","Float64Array","Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Int32Array","Uint16Array","Uint32Array","BigInt64Array","BigUint64Array","Set","Map","WeakSet","WeakMap","ArrayBuffer","SharedArrayBuffer","Atomics","DataView","JSON","Promise","Generator","GeneratorFunction","AsyncFunction","Reflect","Proxy","Intl","WebAssembly"],Ed=["Error","EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"],Td=["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],uk=["arguments","this","super","console","window","document","localStorage","sessionStorage","module","global"],fk=[].concat(Td,yd,Ed);function dk(n){const e=n.regex,t=(M,{after:q})=>{const X="",end:""},o=/<[A-Za-z0-9\\._:-]+\s*\/>/,s={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:(M,q)=>{const X=M[0].length+M.index,Z=M.input[X];if(Z==="<"||Z===","){q.ignoreMatch();return}Z===">"&&(t(M,{after:X})||q.ignoreMatch());let J;const ee=M.input.substring(X);if(J=ee.match(/^\s*=/)){q.ignoreMatch();return}if((J=ee.match(/^\s+extends\s+/))&&J.index===0){q.ignoreMatch();return}}},c={$pattern:Tr,keyword:ak,literal:ck,built_in:fk,"variable.language":uk},u="[0-9](_?[0-9])*",d=`\\.(${u})`,p="0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*",h={className:"number",variants:[{begin:`(\\b(${p})((${d})|\\.)?|(${d}))[eE][+-]?(${u})\\b`},{begin:`\\b(${p})\\b((${d})\\b|\\.)?|(${d})\\b`},{begin:"\\b(0|[1-9](_?[0-9])*)n\\b"},{begin:"\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*n?\\b"},{begin:"\\b0[bB][0-1](_?[0-1])*n?\\b"},{begin:"\\b0[oO][0-7](_?[0-7])*n?\\b"},{begin:"\\b0[0-7]+n?\\b"}],relevance:0},m={className:"subst",begin:"\\$\\{",end:"\\}",keywords:c,contains:[]},g={begin:".?html`",end:"",starts:{end:"`",returnEnd:!1,contains:[n.BACKSLASH_ESCAPE,m],subLanguage:"xml"}},b={begin:".?css`",end:"",starts:{end:"`",returnEnd:!1,contains:[n.BACKSLASH_ESCAPE,m],subLanguage:"css"}},v={begin:".?gql`",end:"",starts:{end:"`",returnEnd:!1,contains:[n.BACKSLASH_ESCAPE,m],subLanguage:"graphql"}},y={className:"string",begin:"`",end:"`",contains:[n.BACKSLASH_ESCAPE,m]},T={className:"comment",variants:[n.COMMENT(/\/\*\*(?!\/)/,"\\*/",{relevance:0,contains:[{begin:"(?=@[A-Za-z]+)",relevance:0,contains:[{className:"doctag",begin:"@[A-Za-z]+"},{className:"type",begin:"\\{",end:"\\}",excludeEnd:!0,excludeBegin:!0,relevance:0},{className:"variable",begin:l+"(?=\\s*(-)|$)",endsParent:!0,relevance:0},{begin:/(?=[^\n])\s/,relevance:0}]}]}),n.C_BLOCK_COMMENT_MODE,n.C_LINE_COMMENT_MODE]},N=[n.APOS_STRING_MODE,n.QUOTE_STRING_MODE,g,b,v,y,{match:/\$\d+/},h];m.contains=N.concat({begin:/\{/,end:/\}/,keywords:c,contains:["self"].concat(N)});const A=[].concat(T,m.contains),I=A.concat([{begin:/(\s*)\(/,end:/\)/,keywords:c,contains:["self"].concat(A)}]),O={className:"params",begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:c,contains:I},R={variants:[{match:[/class/,/\s+/,l,/\s+/,/extends/,/\s+/,e.concat(l,"(",e.concat(/\./,l),")*")],scope:{1:"keyword",3:"title.class",5:"keyword",7:"title.class.inherited"}},{match:[/class/,/\s+/,l],scope:{1:"keyword",3:"title.class"}}]},D={relevance:0,match:e.either(/\bJSON/,/\b[A-Z][a-z]+([A-Z][a-z]*|\d)*/,/\b[A-Z]{2,}([A-Z][a-z]+|\d)+([A-Z][a-z]*)*/,/\b[A-Z]{2,}[a-z]+([A-Z][a-z]+|\d)*([A-Z][a-z]*)*/),className:"title.class",keywords:{_:[...yd,...Ed]}},B={label:"use_strict",className:"meta",relevance:10,begin:/^\s*['"]use (strict|asm)['"]/},j={variants:[{match:[/function/,/\s+/,l,/(?=\s*\()/]},{match:[/function/,/\s*(?=\()/]}],className:{1:"keyword",3:"title.function"},label:"func.def",contains:[O],illegal:/%/},U={relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"};function z(M){return e.concat("(?!",M.join("|"),")")}const W={match:e.concat(/\b/,z([...Td,"super","import"].map(M=>`${M}\\s*\\(`)),l,e.lookahead(/\s*\(/)),className:"title.function",relevance:0},K={begin:e.concat(/\./,e.lookahead(e.concat(l,/(?![0-9A-Za-z$_(])/))),end:l,excludeBegin:!0,keywords:"prototype",className:"property",relevance:0},Y={match:[/get|set/,/\s+/,l,/(?=\()/],className:{1:"keyword",3:"title.function"},contains:[{begin:/\(\)/},O]},F="(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|"+n.UNDERSCORE_IDENT_RE+")\\s*=>",L={match:[/const|var|let/,/\s+/,l,/\s*/,/=\s*/,/(async\s*)?/,e.lookahead(F)],keywords:"async",className:{1:"keyword",3:"title.function"},contains:[O]};return{name:"JavaScript",aliases:["js","jsx","mjs","cjs"],keywords:c,exports:{PARAMS_CONTAINS:I,CLASS_REFERENCE:D},illegal:/#(?![$_A-z])/,contains:[n.SHEBANG({label:"shebang",binary:"node",relevance:5}),B,n.APOS_STRING_MODE,n.QUOTE_STRING_MODE,g,b,v,y,T,{match:/\$\d+/},h,D,{scope:"attr",match:l+e.lookahead(":"),relevance:0},L,{begin:"("+n.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",keywords:"return throw case",relevance:0,contains:[T,n.REGEXP_MODE,{className:"function",begin:F,returnBegin:!0,end:"\\s*=>",contains:[{className:"params",variants:[{begin:n.UNDERSCORE_IDENT_RE,relevance:0},{className:null,begin:/\(\s*\)/,skip:!0},{begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:c,contains:I}]}]},{begin:/,/,relevance:0},{match:/\s+/,relevance:0},{variants:[{begin:i.begin,end:i.end},{match:o},{begin:s.begin,"on:begin":s.isTrulyOpeningTag,end:s.end}],subLanguage:"xml",contains:[{begin:s.begin,end:s.end,skip:!0,contains:["self"]}]}]},j,{beginKeywords:"while if switch catch for"},{begin:"\\b(?!function)"+n.UNDERSCORE_IDENT_RE+"\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{",returnBegin:!0,label:"func.def",contains:[O,n.inherit(n.TITLE_MODE,{begin:l,className:"title.function"})]},{match:/\.\.\./,relevance:0},K,{match:"\\$"+l,relevance:0},{match:[/\bconstructor(?=\s*\()/],className:{1:"title.function"},contains:[O]},W,U,R,Y,{match:/\$[(.]/}]}}const zi="[A-Za-z$_][0-9A-Za-z$_]*",Sd=["as","in","of","if","for","while","finally","var","new","function","do","return","void","else","break","catch","instanceof","with","throw","case","default","try","switch","continue","typeof","delete","let","yield","const","class","debugger","async","await","static","import","from","export","extends","using"],Cd=["true","false","null","undefined","NaN","Infinity"],Ad=["Object","Function","Boolean","Symbol","Math","Date","Number","BigInt","String","RegExp","Array","Float32Array","Float64Array","Int8Array","Uint8Array","Uint8ClampedArray","Int16Array","Int32Array","Uint16Array","Uint32Array","BigInt64Array","BigUint64Array","Set","Map","WeakSet","WeakMap","ArrayBuffer","SharedArrayBuffer","Atomics","DataView","JSON","Promise","Generator","GeneratorFunction","AsyncFunction","Reflect","Proxy","Intl","WebAssembly"],Nd=["Error","EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"],Id=["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],Rd=["arguments","this","super","console","window","document","localStorage","sessionStorage","module","global"],Md=[].concat(Id,Ad,Nd);function pk(n){const e=n.regex,t=(M,{after:q})=>{const X="",end:""},o=/<[A-Za-z0-9\\._:-]+\s*\/>/,s={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:(M,q)=>{const X=M[0].length+M.index,Z=M.input[X];if(Z==="<"||Z===","){q.ignoreMatch();return}Z===">"&&(t(M,{after:X})||q.ignoreMatch());let J;const ee=M.input.substring(X);if(J=ee.match(/^\s*=/)){q.ignoreMatch();return}if((J=ee.match(/^\s+extends\s+/))&&J.index===0){q.ignoreMatch();return}}},c={$pattern:zi,keyword:Sd,literal:Cd,built_in:Md,"variable.language":Rd},u="[0-9](_?[0-9])*",d=`\\.(${u})`,p="0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*",h={className:"number",variants:[{begin:`(\\b(${p})((${d})|\\.)?|(${d}))[eE][+-]?(${u})\\b`},{begin:`\\b(${p})\\b((${d})\\b|\\.)?|(${d})\\b`},{begin:"\\b(0|[1-9](_?[0-9])*)n\\b"},{begin:"\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*n?\\b"},{begin:"\\b0[bB][0-1](_?[0-1])*n?\\b"},{begin:"\\b0[oO][0-7](_?[0-7])*n?\\b"},{begin:"\\b0[0-7]+n?\\b"}],relevance:0},m={className:"subst",begin:"\\$\\{",end:"\\}",keywords:c,contains:[]},g={begin:".?html`",end:"",starts:{end:"`",returnEnd:!1,contains:[n.BACKSLASH_ESCAPE,m],subLanguage:"xml"}},b={begin:".?css`",end:"",starts:{end:"`",returnEnd:!1,contains:[n.BACKSLASH_ESCAPE,m],subLanguage:"css"}},v={begin:".?gql`",end:"",starts:{end:"`",returnEnd:!1,contains:[n.BACKSLASH_ESCAPE,m],subLanguage:"graphql"}},y={className:"string",begin:"`",end:"`",contains:[n.BACKSLASH_ESCAPE,m]},T={className:"comment",variants:[n.COMMENT(/\/\*\*(?!\/)/,"\\*/",{relevance:0,contains:[{begin:"(?=@[A-Za-z]+)",relevance:0,contains:[{className:"doctag",begin:"@[A-Za-z]+"},{className:"type",begin:"\\{",end:"\\}",excludeEnd:!0,excludeBegin:!0,relevance:0},{className:"variable",begin:l+"(?=\\s*(-)|$)",endsParent:!0,relevance:0},{begin:/(?=[^\n])\s/,relevance:0}]}]}),n.C_BLOCK_COMMENT_MODE,n.C_LINE_COMMENT_MODE]},N=[n.APOS_STRING_MODE,n.QUOTE_STRING_MODE,g,b,v,y,{match:/\$\d+/},h];m.contains=N.concat({begin:/\{/,end:/\}/,keywords:c,contains:["self"].concat(N)});const A=[].concat(T,m.contains),I=A.concat([{begin:/(\s*)\(/,end:/\)/,keywords:c,contains:["self"].concat(A)}]),O={className:"params",begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:c,contains:I},R={variants:[{match:[/class/,/\s+/,l,/\s+/,/extends/,/\s+/,e.concat(l,"(",e.concat(/\./,l),")*")],scope:{1:"keyword",3:"title.class",5:"keyword",7:"title.class.inherited"}},{match:[/class/,/\s+/,l],scope:{1:"keyword",3:"title.class"}}]},D={relevance:0,match:e.either(/\bJSON/,/\b[A-Z][a-z]+([A-Z][a-z]*|\d)*/,/\b[A-Z]{2,}([A-Z][a-z]+|\d)+([A-Z][a-z]*)*/,/\b[A-Z]{2,}[a-z]+([A-Z][a-z]+|\d)*([A-Z][a-z]*)*/),className:"title.class",keywords:{_:[...Ad,...Nd]}},B={label:"use_strict",className:"meta",relevance:10,begin:/^\s*['"]use (strict|asm)['"]/},j={variants:[{match:[/function/,/\s+/,l,/(?=\s*\()/]},{match:[/function/,/\s*(?=\()/]}],className:{1:"keyword",3:"title.function"},label:"func.def",contains:[O],illegal:/%/},U={relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"};function z(M){return e.concat("(?!",M.join("|"),")")}const W={match:e.concat(/\b/,z([...Id,"super","import"].map(M=>`${M}\\s*\\(`)),l,e.lookahead(/\s*\(/)),className:"title.function",relevance:0},K={begin:e.concat(/\./,e.lookahead(e.concat(l,/(?![0-9A-Za-z$_(])/))),end:l,excludeBegin:!0,keywords:"prototype",className:"property",relevance:0},Y={match:[/get|set/,/\s+/,l,/(?=\()/],className:{1:"keyword",3:"title.function"},contains:[{begin:/\(\)/},O]},F="(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|"+n.UNDERSCORE_IDENT_RE+")\\s*=>",L={match:[/const|var|let/,/\s+/,l,/\s*/,/=\s*/,/(async\s*)?/,e.lookahead(F)],keywords:"async",className:{1:"keyword",3:"title.function"},contains:[O]};return{name:"JavaScript",aliases:["js","jsx","mjs","cjs"],keywords:c,exports:{PARAMS_CONTAINS:I,CLASS_REFERENCE:D},illegal:/#(?![$_A-z])/,contains:[n.SHEBANG({label:"shebang",binary:"node",relevance:5}),B,n.APOS_STRING_MODE,n.QUOTE_STRING_MODE,g,b,v,y,T,{match:/\$\d+/},h,D,{scope:"attr",match:l+e.lookahead(":"),relevance:0},L,{begin:"("+n.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*",keywords:"return throw case",relevance:0,contains:[T,n.REGEXP_MODE,{className:"function",begin:F,returnBegin:!0,end:"\\s*=>",contains:[{className:"params",variants:[{begin:n.UNDERSCORE_IDENT_RE,relevance:0},{className:null,begin:/\(\s*\)/,skip:!0},{begin:/(\s*)\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:c,contains:I}]}]},{begin:/,/,relevance:0},{match:/\s+/,relevance:0},{variants:[{begin:i.begin,end:i.end},{match:o},{begin:s.begin,"on:begin":s.isTrulyOpeningTag,end:s.end}],subLanguage:"xml",contains:[{begin:s.begin,end:s.end,skip:!0,contains:["self"]}]}]},j,{beginKeywords:"while if switch catch for"},{begin:"\\b(?!function)"+n.UNDERSCORE_IDENT_RE+"\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{",returnBegin:!0,label:"func.def",contains:[O,n.inherit(n.TITLE_MODE,{begin:l,className:"title.function"})]},{match:/\.\.\./,relevance:0},K,{match:"\\$"+l,relevance:0},{match:[/\bconstructor(?=\s*\()/],className:{1:"title.function"},contains:[O]},W,U,R,Y,{match:/\$[(.]/}]}}function hk(n){const e=n.regex,t=pk(n),l=zi,i=["any","void","number","boolean","string","object","never","symbol","bigint","unknown"],o={begin:[/namespace/,/\s+/,n.IDENT_RE],beginScope:{1:"keyword",3:"title.class"}},s={beginKeywords:"interface",end:/\{/,excludeEnd:!0,keywords:{keyword:"interface extends",built_in:i},contains:[t.exports.CLASS_REFERENCE]},c={className:"meta",relevance:10,begin:/^\s*['"]use strict['"]/},u=["type","interface","public","private","protected","implements","declare","abstract","readonly","enum","override","satisfies"],d={$pattern:zi,keyword:Sd.concat(u),literal:Cd,built_in:Md.concat(i),"variable.language":Rd},p={className:"meta",begin:"@"+l},h=(v,y,E)=>{const T=v.contains.findIndex(N=>N.label===y);if(T===-1)throw new Error("can not find mode to replace");v.contains.splice(T,1,E)};Object.assign(t.keywords,d),t.exports.PARAMS_CONTAINS.push(p);const m=t.contains.find(v=>v.scope==="attr"),g=Object.assign({},m,{match:e.concat(l,e.lookahead(/\s*\?:/))});t.exports.PARAMS_CONTAINS.push([t.exports.CLASS_REFERENCE,m,g]),t.contains=t.contains.concat([p,o,s,g]),h(t,"shebang",n.SHEBANG()),h(t,"use_strict",c);const b=t.contains.find(v=>v.label==="func.def");return b.relevance=0,Object.assign(t,{name:"TypeScript",aliases:["ts","tsx","mts","cts"]}),t}function mk(n){const e=n.regex,t=new RegExp("[\\p{XID_Start}_]\\p{XID_Continue}*","u"),l=["and","as","assert","async","await","break","case","class","continue","def","del","elif","else","except","finally","for","from","global","if","import","in","is","lambda","match","nonlocal|10","not","or","pass","raise","return","try","while","with","yield"],c={$pattern:/[A-Za-z]\w+|__\w+__/,keyword:l,built_in:["__import__","abs","all","any","ascii","bin","bool","breakpoint","bytearray","bytes","callable","chr","classmethod","compile","complex","delattr","dict","dir","divmod","enumerate","eval","exec","filter","float","format","frozenset","getattr","globals","hasattr","hash","help","hex","id","input","int","isinstance","issubclass","iter","len","list","locals","map","max","memoryview","min","next","object","oct","open","ord","pow","print","property","range","repr","reversed","round","set","setattr","slice","sorted","staticmethod","str","sum","super","tuple","type","vars","zip"],literal:["__debug__","Ellipsis","False","None","NotImplemented","True"],type:["Any","Callable","Coroutine","Dict","List","Literal","Generic","Optional","Sequence","Set","Tuple","Type","Union"]},u={className:"meta",begin:/^(>>>|\.\.\.) /},d={className:"subst",begin:/\{/,end:/\}/,keywords:c,illegal:/#/},p={begin:/\{\{/,relevance:0},h={className:"string",contains:[n.BACKSLASH_ESCAPE],variants:[{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?'''/,end:/'''/,contains:[n.BACKSLASH_ESCAPE,u],relevance:10},{begin:/([uU]|[bB]|[rR]|[bB][rR]|[rR][bB])?"""/,end:/"""/,contains:[n.BACKSLASH_ESCAPE,u],relevance:10},{begin:/([fF][rR]|[rR][fF]|[fF])'''/,end:/'''/,contains:[n.BACKSLASH_ESCAPE,u,p,d]},{begin:/([fF][rR]|[rR][fF]|[fF])"""/,end:/"""/,contains:[n.BACKSLASH_ESCAPE,u,p,d]},{begin:/([uU]|[rR])'/,end:/'/,relevance:10},{begin:/([uU]|[rR])"/,end:/"/,relevance:10},{begin:/([bB]|[bB][rR]|[rR][bB])'/,end:/'/},{begin:/([bB]|[bB][rR]|[rR][bB])"/,end:/"/},{begin:/([fF][rR]|[rR][fF]|[fF])'/,end:/'/,contains:[n.BACKSLASH_ESCAPE,p,d]},{begin:/([fF][rR]|[rR][fF]|[fF])"/,end:/"/,contains:[n.BACKSLASH_ESCAPE,p,d]},n.APOS_STRING_MODE,n.QUOTE_STRING_MODE]},m="[0-9](_?[0-9])*",g=`(\\b(${m}))?\\.(${m})|\\b(${m})\\.`,b=`\\b|${l.join("|")}`,v={className:"number",relevance:0,variants:[{begin:`(\\b(${m})|(${g}))[eE][+-]?(${m})[jJ]?(?=${b})`},{begin:`(${g})[jJ]?`},{begin:`\\b([1-9](_?[0-9])*|0+(_?0)*)[lLjJ]?(?=${b})`},{begin:`\\b0[bB](_?[01])+[lL]?(?=${b})`},{begin:`\\b0[oO](_?[0-7])+[lL]?(?=${b})`},{begin:`\\b0[xX](_?[0-9a-fA-F])+[lL]?(?=${b})`},{begin:`\\b(${m})[jJ](?=${b})`}]},y={className:"comment",begin:e.lookahead(/# type:/),end:/$/,keywords:c,contains:[{begin:/# type:/},{begin:/#/,end:/\b\B/,endsWithParent:!0}]},E={className:"params",variants:[{className:"",begin:/\(\s*\)/,skip:!0},{begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:c,contains:["self",u,v,h,n.HASH_COMMENT_MODE]}]};return d.contains=[h,v,u],{name:"Python",aliases:["py","gyp","ipython"],unicodeRegex:!0,keywords:c,illegal:/(<\/|\?)|=>/,contains:[u,v,{scope:"variable.language",match:/\bself\b/},{beginKeywords:"if",relevance:0},{match:/\bor\b/,scope:"keyword"},h,y,n.HASH_COMMENT_MODE,{match:[/\bdef/,/\s+/,t],scope:{1:"keyword",3:"title.function"},contains:[E]},{variants:[{match:[/\bclass/,/\s+/,t,/\s*/,/\(\s*/,t,/\s*\)/]},{match:[/\bclass/,/\s+/,t]}],scope:{1:"keyword",3:"title.class",6:"title.class.inherited"}},{className:"meta",begin:/^[\t ]*@/,end:/(?=#)|$/,contains:[v,E,h]}]}}function gk(n){const o={keyword:["break","case","chan","const","continue","default","defer","else","fallthrough","for","func","go","goto","if","import","interface","map","package","range","return","select","struct","switch","type","var"],type:["bool","byte","complex64","complex128","error","float32","float64","int8","int16","int32","int64","string","uint8","uint16","uint32","uint64","int","uint","uintptr","rune"],literal:["true","false","iota","nil"],built_in:["append","cap","close","complex","copy","imag","len","make","new","panic","print","println","real","recover","delete"]};return{name:"Go",aliases:["golang"],keywords:o,illegal:"]([1-9]?[+-])?[ ]*\\n( +)[^ ][^\\n]*\\n(\\2[^\\n]+\\n?)*"},{begin:"<%[%=-]?",end:"[%-]?%>",subLanguage:"ruby",excludeBegin:!0,excludeEnd:!0,relevance:0},{className:"type",begin:"!\\w+!"+t},{className:"type",begin:"!<"+t+">"},{className:"type",begin:"!"+t},{className:"type",begin:"!!"+t},{className:"meta",begin:"&"+n.UNDERSCORE_IDENT_RE+"$"},{className:"meta",begin:"\\*"+n.UNDERSCORE_IDENT_RE+"$"},{className:"bullet",begin:"-(?=[ ]|$)",relevance:0},n.HASH_COMMENT_MODE,{beginKeywords:e,keywords:{literal:e}},m,{className:"number",begin:n.C_NUMBER_RE+"\\b",relevance:0},b,v,o,s],E=[...y];return E.pop(),E.push(c),g.contains=E,{name:"YAML",case_insensitive:!0,aliases:["yml"],contains:y}}function vk(n){const e=n.regex,t={begin:/<\/?[A-Za-z_]/,end:">",subLanguage:"xml",relevance:0},l={begin:"^[-\\*]{3,}",end:"$"},i={className:"code",variants:[{begin:"(`{3,})[^`](.|\\n)*?\\1`*[ ]*"},{begin:"(~{3,})[^~](.|\\n)*?\\1~*[ ]*"},{begin:"```",end:"```+[ ]*$"},{begin:"~~~",end:"~~~+[ ]*$"},{begin:"`.+?`"},{begin:"(?=^( {4}|\\t))",contains:[{begin:"^( {4}|\\t)",end:"(\\n)$"}],relevance:0}]},o={className:"bullet",begin:"^[ ]*([*+-]|(\\d+\\.))(?=\\s+)",end:"\\s+",excludeEnd:!0},s={begin:/^\[[^\n]+\]:/,returnBegin:!0,contains:[{className:"symbol",begin:/\[/,end:/\]/,excludeBegin:!0,excludeEnd:!0},{className:"link",begin:/:\s*/,end:/$/,excludeBegin:!0}]},c=/[A-Za-z][A-Za-z0-9+.-]*/,u={variants:[{begin:/\[.+?\]\[.*?\]/,relevance:0},{begin:/\[.+?\]\(((data|javascript|mailto):|(?:http|ftp)s?:\/\/).*?\)/,relevance:2},{begin:e.concat(/\[.+?\]\(/,c,/:\/\/.*?\)/),relevance:2},{begin:/\[.+?\]\([./?&#].*?\)/,relevance:1},{begin:/\[.*?\]\(.*?\)/,relevance:0}],returnBegin:!0,contains:[{match:/\[(?=\])/},{className:"string",relevance:0,begin:"\\[",end:"\\]",excludeBegin:!0,returnEnd:!0},{className:"link",relevance:0,begin:"\\]\\(",end:"\\)",excludeBegin:!0,excludeEnd:!0},{className:"symbol",relevance:0,begin:"\\]\\[",end:"\\]",excludeBegin:!0,excludeEnd:!0}]},d={className:"strong",contains:[],variants:[{begin:/_{2}(?!\s)/,end:/_{2}/},{begin:/\*{2}(?!\s)/,end:/\*{2}/}]},p={className:"emphasis",contains:[],variants:[{begin:/\*(?![*\s])/,end:/\*/},{begin:/_(?![_\s])/,end:/_/,relevance:0}]},h=n.inherit(d,{contains:[]}),m=n.inherit(p,{contains:[]});d.contains.push(m),p.contains.push(h);let g=[t,u];return[d,p,h,m].forEach(E=>{E.contains=E.contains.concat(g)}),g=g.concat(d,p),{name:"Markdown",aliases:["md","mkdown","mkd"],contains:[{className:"section",variants:[{begin:"^#{1,6}",end:"$",contains:g},{begin:"(?=^.+?\\n[=-]{2,}$)",contains:[{begin:"^[=-]*$"},{begin:"^",end:"\\n",contains:g}]}]},t,o,d,p,{className:"quote",begin:"^>\\s+",contains:g,end:"$"},i,l,u,s,{scope:"literal",match:/&([a-zA-Z0-9]+|#[0-9]{1,7}|#[Xx][0-9a-fA-F]{1,6});/}]}}const wk=n=>({IMPORTANT:{scope:"meta",begin:"!important"},BLOCK_COMMENT:n.C_BLOCK_COMMENT_MODE,HEXCOLOR:{scope:"number",begin:/#(([0-9a-fA-F]{3,4})|(([0-9a-fA-F]{2}){3,4}))\b/},FUNCTION_DISPATCH:{className:"built_in",begin:/[\w-]+(?=\()/},ATTRIBUTE_SELECTOR_MODE:{scope:"selector-attr",begin:/\[/,end:/\]/,illegal:"$",contains:[n.APOS_STRING_MODE,n.QUOTE_STRING_MODE]},CSS_NUMBER_MODE:{scope:"number",begin:n.NUMBER_RE+"(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?",relevance:0},CSS_VARIABLE:{className:"attr",begin:/--[A-Za-z_][A-Za-z0-9_-]*/}}),yk=["a","abbr","address","article","aside","audio","b","blockquote","body","button","canvas","caption","cite","code","dd","del","details","dfn","div","dl","dt","em","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","header","hgroup","html","i","iframe","img","input","ins","kbd","label","legend","li","main","mark","menu","nav","object","ol","optgroup","option","p","picture","q","quote","samp","section","select","source","span","strong","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","tr","ul","var","video"],Ek=["defs","g","marker","mask","pattern","svg","switch","symbol","feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feFlood","feGaussianBlur","feImage","feMerge","feMorphology","feOffset","feSpecularLighting","feTile","feTurbulence","linearGradient","radialGradient","stop","circle","ellipse","image","line","path","polygon","polyline","rect","text","use","textPath","tspan","foreignObject","clipPath"],Tk=[...yk,...Ek],Sk=["any-hover","any-pointer","aspect-ratio","color","color-gamut","color-index","device-aspect-ratio","device-height","device-width","display-mode","forced-colors","grid","height","hover","inverted-colors","monochrome","orientation","overflow-block","overflow-inline","pointer","prefers-color-scheme","prefers-contrast","prefers-reduced-motion","prefers-reduced-transparency","resolution","scan","scripting","update","width","min-width","max-width","min-height","max-height"].sort().reverse(),Ck=["active","any-link","blank","checked","current","default","defined","dir","disabled","drop","empty","enabled","first","first-child","first-of-type","fullscreen","future","focus","focus-visible","focus-within","has","host","host-context","hover","indeterminate","in-range","invalid","is","lang","last-child","last-of-type","left","link","local-link","not","nth-child","nth-col","nth-last-child","nth-last-col","nth-last-of-type","nth-of-type","only-child","only-of-type","optional","out-of-range","past","placeholder-shown","read-only","read-write","required","right","root","scope","target","target-within","user-invalid","valid","visited","where"].sort().reverse(),Ak=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"].sort().reverse(),Nk=["accent-color","align-content","align-items","align-self","alignment-baseline","all","anchor-name","animation","animation-composition","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-range","animation-range-end","animation-range-start","animation-timeline","animation-timing-function","appearance","aspect-ratio","backdrop-filter","backface-visibility","background","background-attachment","background-blend-mode","background-clip","background-color","background-image","background-origin","background-position","background-position-x","background-position-y","background-repeat","background-size","baseline-shift","block-size","border","border-block","border-block-color","border-block-end","border-block-end-color","border-block-end-style","border-block-end-width","border-block-start","border-block-start-color","border-block-start-style","border-block-start-width","border-block-style","border-block-width","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-end-end-radius","border-end-start-radius","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-inline","border-inline-color","border-inline-end","border-inline-end-color","border-inline-end-style","border-inline-end-width","border-inline-start","border-inline-start-color","border-inline-start-style","border-inline-start-width","border-inline-style","border-inline-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-start-end-radius","border-start-start-radius","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-align","box-decoration-break","box-direction","box-flex","box-flex-group","box-lines","box-ordinal-group","box-orient","box-pack","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","caret-color","clear","clip","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","color-scheme","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","contain","contain-intrinsic-block-size","contain-intrinsic-height","contain-intrinsic-inline-size","contain-intrinsic-size","contain-intrinsic-width","container","container-name","container-type","content","content-visibility","counter-increment","counter-reset","counter-set","cue","cue-after","cue-before","cursor","cx","cy","direction","display","dominant-baseline","empty-cells","enable-background","field-sizing","fill","fill-opacity","fill-rule","filter","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","flood-color","flood-opacity","flow","font","font-display","font-family","font-feature-settings","font-kerning","font-language-override","font-optical-sizing","font-palette","font-size","font-size-adjust","font-smooth","font-smoothing","font-stretch","font-style","font-synthesis","font-synthesis-position","font-synthesis-small-caps","font-synthesis-style","font-synthesis-weight","font-variant","font-variant-alternates","font-variant-caps","font-variant-east-asian","font-variant-emoji","font-variant-ligatures","font-variant-numeric","font-variant-position","font-variation-settings","font-weight","forced-color-adjust","gap","glyph-orientation-horizontal","glyph-orientation-vertical","grid","grid-area","grid-auto-columns","grid-auto-flow","grid-auto-rows","grid-column","grid-column-end","grid-column-start","grid-gap","grid-row","grid-row-end","grid-row-start","grid-template","grid-template-areas","grid-template-columns","grid-template-rows","hanging-punctuation","height","hyphenate-character","hyphenate-limit-chars","hyphens","icon","image-orientation","image-rendering","image-resolution","ime-mode","initial-letter","initial-letter-align","inline-size","inset","inset-area","inset-block","inset-block-end","inset-block-start","inset-inline","inset-inline-end","inset-inline-start","isolation","justify-content","justify-items","justify-self","kerning","left","letter-spacing","lighting-color","line-break","line-height","line-height-step","list-style","list-style-image","list-style-position","list-style-type","margin","margin-block","margin-block-end","margin-block-start","margin-bottom","margin-inline","margin-inline-end","margin-inline-start","margin-left","margin-right","margin-top","margin-trim","marker","marker-end","marker-mid","marker-start","marks","mask","mask-border","mask-border-mode","mask-border-outset","mask-border-repeat","mask-border-slice","mask-border-source","mask-border-width","mask-clip","mask-composite","mask-image","mask-mode","mask-origin","mask-position","mask-repeat","mask-size","mask-type","masonry-auto-flow","math-depth","math-shift","math-style","max-block-size","max-height","max-inline-size","max-width","min-block-size","min-height","min-inline-size","min-width","mix-blend-mode","nav-down","nav-index","nav-left","nav-right","nav-up","none","normal","object-fit","object-position","offset","offset-anchor","offset-distance","offset-path","offset-position","offset-rotate","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-anchor","overflow-block","overflow-clip-margin","overflow-inline","overflow-wrap","overflow-x","overflow-y","overlay","overscroll-behavior","overscroll-behavior-block","overscroll-behavior-inline","overscroll-behavior-x","overscroll-behavior-y","padding","padding-block","padding-block-end","padding-block-start","padding-bottom","padding-inline","padding-inline-end","padding-inline-start","padding-left","padding-right","padding-top","page","page-break-after","page-break-before","page-break-inside","paint-order","pause","pause-after","pause-before","perspective","perspective-origin","place-content","place-items","place-self","pointer-events","position","position-anchor","position-visibility","print-color-adjust","quotes","r","resize","rest","rest-after","rest-before","right","rotate","row-gap","ruby-align","ruby-position","scale","scroll-behavior","scroll-margin","scroll-margin-block","scroll-margin-block-end","scroll-margin-block-start","scroll-margin-bottom","scroll-margin-inline","scroll-margin-inline-end","scroll-margin-inline-start","scroll-margin-left","scroll-margin-right","scroll-margin-top","scroll-padding","scroll-padding-block","scroll-padding-block-end","scroll-padding-block-start","scroll-padding-bottom","scroll-padding-inline","scroll-padding-inline-end","scroll-padding-inline-start","scroll-padding-left","scroll-padding-right","scroll-padding-top","scroll-snap-align","scroll-snap-stop","scroll-snap-type","scroll-timeline","scroll-timeline-axis","scroll-timeline-name","scrollbar-color","scrollbar-gutter","scrollbar-width","shape-image-threshold","shape-margin","shape-outside","shape-rendering","speak","speak-as","src","stop-color","stop-opacity","stroke","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke-width","tab-size","table-layout","text-align","text-align-all","text-align-last","text-anchor","text-combine-upright","text-decoration","text-decoration-color","text-decoration-line","text-decoration-skip","text-decoration-skip-ink","text-decoration-style","text-decoration-thickness","text-emphasis","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-indent","text-justify","text-orientation","text-overflow","text-rendering","text-shadow","text-size-adjust","text-transform","text-underline-offset","text-underline-position","text-wrap","text-wrap-mode","text-wrap-style","timeline-scope","top","touch-action","transform","transform-box","transform-origin","transform-style","transition","transition-behavior","transition-delay","transition-duration","transition-property","transition-timing-function","translate","unicode-bidi","user-modify","user-select","vector-effect","vertical-align","view-timeline","view-timeline-axis","view-timeline-inset","view-timeline-name","view-transition-name","visibility","voice-balance","voice-duration","voice-family","voice-pitch","voice-range","voice-rate","voice-stress","voice-volume","white-space","white-space-collapse","widows","width","will-change","word-break","word-spacing","word-wrap","writing-mode","x","y","z-index","zoom"].sort().reverse();function Ik(n){const e=n.regex,t=wk(n),l={begin:/-(webkit|moz|ms|o)-(?=[a-z])/},i="and or not only",o=/@-?\w[\w]*(-\w+)*/,s="[a-zA-Z-][a-zA-Z0-9_-]*",c=[n.APOS_STRING_MODE,n.QUOTE_STRING_MODE];return{name:"CSS",case_insensitive:!0,illegal:/[=|'\$]/,keywords:{keyframePosition:"from to"},classNameAliases:{keyframePosition:"selector-tag"},contains:[t.BLOCK_COMMENT,l,t.CSS_NUMBER_MODE,{className:"selector-id",begin:/#[A-Za-z0-9_-]+/,relevance:0},{className:"selector-class",begin:"\\."+s,relevance:0},t.ATTRIBUTE_SELECTOR_MODE,{className:"selector-pseudo",variants:[{begin:":("+Ck.join("|")+")"},{begin:":(:)?("+Ak.join("|")+")"}]},t.CSS_VARIABLE,{className:"attribute",begin:"\\b("+Nk.join("|")+")\\b"},{begin:/:/,end:/[;}{]/,contains:[t.BLOCK_COMMENT,t.HEXCOLOR,t.IMPORTANT,t.CSS_NUMBER_MODE,...c,{begin:/(url|data-uri)\(/,end:/\)/,relevance:0,keywords:{built_in:"url data-uri"},contains:[...c,{className:"string",begin:/[^)]/,endsWithParent:!0,excludeEnd:!0}]},t.FUNCTION_DISPATCH]},{begin:e.lookahead(/@/),end:"[{;]",relevance:0,illegal:/:/,contains:[{className:"keyword",begin:o},{begin:/\s/,endsWithParent:!0,excludeEnd:!0,relevance:0,keywords:{$pattern:/[a-z-]+/,keyword:i,attribute:Sk.join(" ")},contains:[{begin:/[a-z-]+(?=:)/,className:"attribute"},...c,t.CSS_NUMBER_MODE]}]},{className:"selector-tag",begin:"\\b("+Tk.join("|")+")\\b"}]}}function Rk(n){const e=n.regex,t=n.COMMENT("--","$"),l={scope:"string",variants:[{begin:/'/,end:/'/,contains:[{match:/''/}]}]},i={begin:/"/,end:/"/,contains:[{match:/""/}]},o=["true","false","unknown"],s=["double precision","large object","with timezone","without timezone"],c=["bigint","binary","blob","boolean","char","character","clob","date","dec","decfloat","decimal","float","int","integer","interval","nchar","nclob","national","numeric","real","row","smallint","time","timestamp","varchar","varying","varbinary"],u=["add","asc","collation","desc","final","first","last","view"],d=["abs","acos","all","allocate","alter","and","any","are","array","array_agg","array_max_cardinality","as","asensitive","asin","asymmetric","at","atan","atomic","authorization","avg","begin","begin_frame","begin_partition","between","bigint","binary","blob","boolean","both","by","call","called","cardinality","cascaded","case","cast","ceil","ceiling","char","char_length","character","character_length","check","classifier","clob","close","coalesce","collate","collect","column","commit","condition","connect","constraint","contains","convert","copy","corr","corresponding","cos","cosh","count","covar_pop","covar_samp","create","cross","cube","cume_dist","current","current_catalog","current_date","current_default_transform_group","current_path","current_role","current_row","current_schema","current_time","current_timestamp","current_path","current_role","current_transform_group_for_type","current_user","cursor","cycle","date","day","deallocate","dec","decimal","decfloat","declare","default","define","delete","dense_rank","deref","describe","deterministic","disconnect","distinct","double","drop","dynamic","each","element","else","empty","end","end_frame","end_partition","end-exec","equals","escape","every","except","exec","execute","exists","exp","external","extract","false","fetch","filter","first_value","float","floor","for","foreign","frame_row","free","from","full","function","fusion","get","global","grant","group","grouping","groups","having","hold","hour","identity","in","indicator","initial","inner","inout","insensitive","insert","int","integer","intersect","intersection","interval","into","is","join","json_array","json_arrayagg","json_exists","json_object","json_objectagg","json_query","json_table","json_table_primitive","json_value","lag","language","large","last_value","lateral","lead","leading","left","like","like_regex","listagg","ln","local","localtime","localtimestamp","log","log10","lower","match","match_number","match_recognize","matches","max","member","merge","method","min","minute","mod","modifies","module","month","multiset","national","natural","nchar","nclob","new","no","none","normalize","not","nth_value","ntile","null","nullif","numeric","octet_length","occurrences_regex","of","offset","old","omit","on","one","only","open","or","order","out","outer","over","overlaps","overlay","parameter","partition","pattern","per","percent","percent_rank","percentile_cont","percentile_disc","period","portion","position","position_regex","power","precedes","precision","prepare","primary","procedure","ptf","range","rank","reads","real","recursive","ref","references","referencing","regr_avgx","regr_avgy","regr_count","regr_intercept","regr_r2","regr_slope","regr_sxx","regr_sxy","regr_syy","release","result","return","returns","revoke","right","rollback","rollup","row","row_number","rows","running","savepoint","scope","scroll","search","second","seek","select","sensitive","session_user","set","show","similar","sin","sinh","skip","smallint","some","specific","specifictype","sql","sqlexception","sqlstate","sqlwarning","sqrt","start","static","stddev_pop","stddev_samp","submultiset","subset","substring","substring_regex","succeeds","sum","symmetric","system","system_time","system_user","table","tablesample","tan","tanh","then","time","timestamp","timezone_hour","timezone_minute","to","trailing","translate","translate_regex","translation","treat","trigger","trim","trim_array","true","truncate","uescape","union","unique","unknown","unnest","update","upper","user","using","value","values","value_of","var_pop","var_samp","varbinary","varchar","varying","versioning","when","whenever","where","width_bucket","window","with","within","without","year"],p=["abs","acos","array_agg","asin","atan","avg","cast","ceil","ceiling","coalesce","corr","cos","cosh","count","covar_pop","covar_samp","cume_dist","dense_rank","deref","element","exp","extract","first_value","floor","json_array","json_arrayagg","json_exists","json_object","json_objectagg","json_query","json_table","json_table_primitive","json_value","lag","last_value","lead","listagg","ln","log","log10","lower","max","min","mod","nth_value","ntile","nullif","percent_rank","percentile_cont","percentile_disc","position","position_regex","power","rank","regr_avgx","regr_avgy","regr_count","regr_intercept","regr_r2","regr_slope","regr_sxx","regr_sxy","regr_syy","row_number","sin","sinh","sqrt","stddev_pop","stddev_samp","substring","substring_regex","sum","tan","tanh","translate","translate_regex","treat","trim","trim_array","unnest","upper","value_of","var_pop","var_samp","width_bucket"],h=["current_catalog","current_date","current_default_transform_group","current_path","current_role","current_schema","current_transform_group_for_type","current_user","session_user","system_time","system_user","current_time","localtime","current_timestamp","localtimestamp"],m=["create table","insert into","primary key","foreign key","not null","alter table","add constraint","grouping sets","on overflow","character set","respect nulls","ignore nulls","nulls first","nulls last","depth first","breadth first"],g=p,b=[...d,...u].filter(I=>!p.includes(I)),v={scope:"variable",match:/@[a-z0-9][a-z0-9_]*/},y={scope:"operator",match:/[-+*/=%^~]|&&?|\|\|?|!=?|<(?:=>?|<|>)?|>[>=]?/,relevance:0},E={match:e.concat(/\b/,e.either(...g),/\s*\(/),relevance:0,keywords:{built_in:g}};function T(I){return e.concat(/\b/,e.either(...I.map(O=>O.replace(/\s+/,"\\s+"))),/\b/)}const N={scope:"keyword",match:T(m),relevance:0};function A(I,{exceptions:O,when:R}={}){const D=R;return O=O||[],I.map(B=>B.match(/\|\d+$/)||O.includes(B)?B:D(B)?`${B}|0`:B)}return{name:"SQL",case_insensitive:!0,illegal:/[{}]|<\//,keywords:{$pattern:/\b[\w\.]+/,keyword:A(b,{when:I=>I.length<3}),literal:o,type:c,built_in:h},contains:[{scope:"type",match:T(s)},N,E,v,l,i,n.C_NUMBER_MODE,n.C_BLOCK_COMMENT_MODE,t,y]}}function Mk(n){const e=n.regex,t=e.concat(/[\p{L}_]/u,e.optional(/[\p{L}0-9_.-]*:/u),/[\p{L}0-9_.-]*/u),l=/[\p{L}0-9._:-]+/u,i={className:"symbol",begin:/&[a-z]+;|&#[0-9]+;|&#x[a-f0-9]+;/},o={begin:/\s/,contains:[{className:"keyword",begin:/#?[a-z_][a-z1-9_-]+/,illegal:/\n/}]},s=n.inherit(o,{begin:/\(/,end:/\)/}),c=n.inherit(n.APOS_STRING_MODE,{className:"string"}),u=n.inherit(n.QUOTE_STRING_MODE,{className:"string"}),d={endsWithParent:!0,illegal:/`]+/}]}]}]};return{name:"HTML, XML",aliases:["html","xhtml","rss","atom","xjb","xsd","xsl","plist","wsf","svg"],case_insensitive:!0,unicodeRegex:!0,contains:[{className:"meta",begin://,relevance:10,contains:[o,u,c,s,{begin:/\[/,end:/\]/,contains:[{className:"meta",begin://,contains:[o,s,u,c]}]}]},n.COMMENT(//,{relevance:10}),{begin://,relevance:10},i,{className:"meta",end:/\?>/,variants:[{begin:/<\?xml/,relevance:10,contains:[u]},{begin:/<\?[a-z][a-z0-9]+/}]},{className:"tag",begin:/)/,end:/>/,keywords:{name:"style"},contains:[d],starts:{end:/<\/style>/,returnEnd:!0,subLanguage:["css","xml"]}},{className:"tag",begin:/)/,end:/>/,keywords:{name:"script"},contains:[d],starts:{end:/<\/script>/,returnEnd:!0,subLanguage:["javascript","handlebars","xml"]}},{className:"tag",begin:/<>|<\/>/},{className:"tag",begin:e.concat(//,/>/,/\s/)))),end:/\/?>/,contains:[{className:"name",begin:t,relevance:0,starts:d}]},{className:"tag",begin:e.concat(/<\//,e.lookahead(e.concat(t,/>/))),contains:[{className:"name",begin:t,relevance:0},{begin:/>/,relevance:0,endsParent:!0}]}]}}on.registerLanguage("javascript",dk);on.registerLanguage("typescript",hk);on.registerLanguage("python",mk);on.registerLanguage("go",gk);on.registerLanguage("bash",_k);on.registerLanguage("json",bk);on.registerLanguage("yaml",kk);on.registerLanguage("markdown",vk);on.registerLanguage("css",Ik);on.registerLanguage("sql",Rk);on.registerLanguage("xml",Mk);const Ld=/^(https?|mailto|verstak):/i,Od=new Set(["case","note","file","secret"]);cd.addHook("afterSanitizeAttributes",n=>{if(n.tagName==="A"){const e=(n.getAttribute("href")||"").trim();if(n.hasAttribute("data-verstak-href"))return;Ld.test(e)||(n.removeAttribute("href"),n.setAttribute("data-blocked-href",e),n.classList.add("md-link--blocked"),n.setAttribute("role","link"),n.setAttribute("aria-disabled","true"))}n.tagName==="IMG"&&n.remove()});const Fl=new ht.Renderer;Fl.link=function({href:n,title:e,text:t}){const l=(n||"").trim();if(!Ld.test(l)){const c=fl(t);return`${c}`}if(l.startsWith("verstak://")){const c=Dd(l);if(c&&Od.has(c.type)){const p=Vn(l),h=fl(t);return`
    ${h}`}const u=fl(t);return`${u}`}const i=Vn(l),o=fl(t),s=e?` title="${Vn(e)}"`:"";return`${o}`};Fl.image=function({href:n,title:e,text:t}){return`[Image: ${fl(t)}]`};Fl.code=function({text:n,lang:e}){const t=e&&on.getLanguage(e)?e:"plaintext";let l;try{l=on.highlight(n,{language:t}).value}catch{l=fl(n)}return`
    ${l}
    `};Fl.codespan=function({text:n}){return`${fl(n)}`};Fl.listitem=function({text:n,task:e,checked:t}){return e?`
  • ${n}
  • `:`
  • ${n}
  • `};ht.setOptions({renderer:Fl,gfm:!0,breaks:!1,pedantic:!1});function Lk(n){const e=ht.parse(n);return cd.sanitize(e,{ADD_ATTR:["target","class","data-verstak-href","data-verstak-type","data-verstak-id","data-blocked-href","role","aria-disabled","checked"],ADD_TAGS:["input","span"],ALLOW_UNKNOWN_PROTOCOLS:!0})}function Dd(n){const e=n.match(/^verstak:\/\/([a-zA-Z_]+)\/(.+)$/);return e?{type:e[1],id:e[2]}:null}function Ok(n){return n.replace(/([[\]()])/g,"\\$1")}function Dk(n){return Od.has(n)}function fl(n){return n.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")}function Vn(n){return n.replace(/"/g,""").replace(/'/g,"'")}function Pk(n){let e,t;return{c(){e=new Ri(!1),t=kt(),e.a=t},m(l,i){e.m(n[1],l,i),C(l,t,i)},p(l,i){i&2&&e.p(l[1])},d(l){l&&(S(t),e.d())}}}function qk(n){let e;return{c(){e=f("div"),e.textContent=`${k("note.preview.empty")}`,r(e,"class","md-empty svelte-jdvhib")},m(t,l){C(t,e,l)},p:se,d(t){t&&S(e)}}}function zk(n){let e,t,l,i,o;return{c(){e=f("div"),t=f("p"),t.textContent=`⚠️ ${k("note.preview.error")}`,l=w(),i=f("p"),o=H(n[2]),r(i,"class","md-error-detail svelte-jdvhib"),r(e,"class","md-error svelte-jdvhib")},m(s,c){C(s,e,c),a(e,t),a(e,l),a(e,i),a(i,o)},p(s,c){c&4&&Q(o,s[2])},d(s){s&&S(e)}}}function Bk(n){let e,t,l,i;function o(u,d){var p;return d&1&&(t=null),u[2]?zk:(t==null&&(t=!((p=u[0])!=null&&p.trim())),t?qk:Pk)}let s=o(n,-1),c=s(n);return{c(){e=f("div"),c.c(),r(e,"class","markdown-body svelte-jdvhib"),r(e,"role","article"),r(e,"tabindex","0")},m(u,d){C(u,e,d),c.m(e,null),l||(i=[P(e,"click",n[3]),P(e,"keydown",n[4])],l=!0)},p(u,[d]){s===(s=o(u,d))&&c?c.p(u,d):(c.d(1),c=s(u),c&&(c.c(),c.m(e,null)))},i:se,o:se,d(u){u&&S(e),c.d(),l=!1,Ce(i)}}}function Fk(n,e,t){let{content:l=""}=e;const i=pn();let o="",s="";function c(d){const p=d.target.closest("[data-verstak-href]");if(!p)return;const h=p.getAttribute("data-verstak-href");if(!h)return;d.preventDefault(),d.stopPropagation();const m=Dd(h);!m||!Dk(m.type)||i("verstak-link",{type:m.type,id:m.id,href:h})}const u=d=>{(d.key==="Enter"||d.key===" ")&&c(d)};return n.$$set=d=>{"content"in d&&t(0,l=d.content)},n.$$.update=()=>{if(n.$$.dirty&1)try{t(1,o=Lk(l||"")),t(2,s="")}catch(d){t(2,s=String(d)),t(1,o="")}},[l,o,s,c,u]}class Ys extends ut{constructor(e){super(),ct(this,e,Fk,Bk,at,{content:0})}}function jk(n){let e,t,l,i,o,s;return{c(){e=f("div"),t=f("p"),t.textContent=`${k("file.previewUnavailable")}`,l=w(),i=f("button"),i.textContent=`${k("file.openExternal")}`,r(i,"class","btn btn-sm svelte-1h605ik"),r(e,"class","preview-status svelte-1h605ik")},m(c,u){C(c,e,u),a(e,t),a(e,l),a(e,i),o||(s=P(i,"click",n[10]),o=!0)},p:se,i:se,o:se,d(c){c&&S(e),o=!1,s()}}}function Uk(n){let e,t;function l(s,c){return c&2&&(e=null),e==null&&(e=!!(s[1]&&s[1].startsWith("data:"))),e?Yk:Zk}let i=l(n,-1),o=i(n);return{c(){o.c(),t=kt()},m(s,c){o.m(s,c),C(s,t,c)},p(s,c){i===(i=l(s,c))&&o?o.p(s,c):(o.d(1),o=i(s),o&&(o.c(),o.m(t.parentNode,t)))},i:se,o:se,d(s){s&&S(t),o.d(s)}}}function Hk(n){let e,t,l;return{c(){e=f("pre"),t=f("code"),l=H(n[1]),r(e,"class","preview-text svelte-1h605ik")},m(i,o){C(i,e,o),a(e,t),a(t,l)},p(i,o){o&2&&Q(l,i[1])},i:se,o:se,d(i){i&&S(e)}}}function Wk(n){let e,t,l;return t=new Ys({props:{content:n[1]}}),{c(){e=f("div"),Qe(t.$$.fragment),r(e,"class","preview-markdown-container svelte-1h605ik")},m(i,o){C(i,e,o),Ye(t,e,null),l=!0},p(i,o){const s={};o&2&&(s.content=i[1]),t.$set(s)},i(i){l||(ge(t.$$.fragment,i),l=!0)},o(i){ke(t.$$.fragment,i),l=!1},d(i){i&&S(e),Xe(t)}}}function Gk(n){let e,t,l,i;return{c(){e=f("div"),t=f("img"),Pl(t.src,l=n[1])||r(t,"src",l),r(t,"alt",i=n[0].name),r(t,"class","preview-image svelte-1h605ik"),r(e,"class","preview-image-container svelte-1h605ik")},m(o,s){C(o,e,s),a(e,t)},p(o,s){s&2&&!Pl(t.src,l=o[1])&&r(t,"src",l),s&1&&i!==(i=o[0].name)&&r(t,"alt",i)},i:se,o:se,d(o){o&&S(e)}}}function Kk(n){let e,t,l,i,o,s,c;return{c(){e=f("div"),t=f("p"),l=H(n[3]),i=w(),o=f("button"),o.textContent=`${k("file.openExternal")}`,r(o,"class","btn btn-sm svelte-1h605ik"),r(e,"class","preview-status svelte-1h605ik")},m(u,d){C(u,e,d),a(e,t),a(t,l),a(e,i),a(e,o),s||(c=P(o,"click",n[10]),s=!0)},p(u,d){d&8&&Q(l,u[3])},i:se,o:se,d(u){u&&S(e),s=!1,c()}}}function Vk(n){let e,t;return{c(){e=f("div"),t=f("p"),t.textContent=`${k("common.loading")}`,r(e,"class","preview-status svelte-1h605ik")},m(l,i){C(l,e,i),a(e,t)},p:se,i:se,o:se,d(l){l&&S(e)}}}function Zk(n){let e,t,l,i,o,s;return{c(){e=f("div"),t=f("p"),t.textContent=`${k("file.pdfUnavailable")}`,l=w(),i=f("button"),i.textContent=`${k("file.openExternal")}`,r(i,"class","btn btn-sm svelte-1h605ik"),r(e,"class","preview-status svelte-1h605ik")},m(c,u){C(c,e,u),a(e,t),a(e,l),a(e,i),o||(s=P(i,"click",n[10]),o=!0)},p:se,d(c){c&&S(e),o=!1,s()}}}function Yk(n){let e,t,l;return{c(){e=f("div"),t=f("embed"),Pl(t.src,l=n[1])||r(t,"src",l),r(t,"type","application/pdf"),r(t,"class","preview-pdf svelte-1h605ik"),r(e,"class","preview-pdf-container svelte-1h605ik")},m(i,o){C(i,e,o),a(e,t)},p(i,o){o&2&&!Pl(t.src,l=i[1])&&r(t,"src",l)},d(i){i&&S(e)}}}function Xk(n){let e,t,l,i,o,s,c,u=n[0].name+"",d,p,h,m,g=Mi(n[0].size)+"",b,v,y=Vo(n[0].mime)+"",E,T,N,A,I,O,R,D,B,j,U,z,W,K;o=new jf({props:{kind:n[9],size:18}});const Y=[Vk,Kk,Gk,Wk,Hk,Uk,jk],F=[];function L(M,q){return M[2]?0:M[3]?1:M[7]&&M[1]?2:M[4]?3:M[6]?4:M[5]?5:6}return R=L(n),D=F[R]=Y[R](n),{c(){e=f("div"),t=f("div"),l=f("header"),i=f("div"),Qe(o.$$.fragment),s=w(),c=f("span"),d=H(u),h=w(),m=f("div"),b=H(g),v=H(" · "),E=H(y),T=w(),N=f("div"),A=f("button"),A.innerHTML='',I=w(),O=f("div"),D.c(),B=w(),j=f("footer"),U=f("button"),U.textContent=`${k("file.openExternal")}`,r(c,"class","preview-name svelte-1h605ik"),r(c,"title",p=n[0].name),r(i,"class","preview-title svelte-1h605ik"),r(m,"class","preview-meta svelte-1h605ik"),r(A,"class","action-btn action-btn-close svelte-1h605ik"),r(A,"title","Close"),r(A,"aria-label","Close preview"),r(N,"class","preview-actions svelte-1h605ik"),r(l,"class","preview-header svelte-1h605ik"),r(O,"class","preview-body svelte-1h605ik"),r(U,"class","btn btn-sm svelte-1h605ik"),r(j,"class","preview-footer svelte-1h605ik"),r(t,"class","modal svelte-1h605ik"),r(e,"class","overlay svelte-1h605ik"),r(e,"role","presentation")},m(M,q){C(M,e,q),a(e,t),a(t,l),a(l,i),Ye(o,i,null),a(i,s),a(i,c),a(c,d),a(l,h),a(l,m),a(m,b),a(m,v),a(m,E),a(l,T),a(l,N),a(N,A),a(t,I),a(t,O),F[R].m(O,null),a(t,B),a(t,j),a(j,U),z=!0,W||(K=[P(A,"click",n[11]),P(U,"click",n[10]),P(e,"click",xt(n[12])),P(e,"keydown",n[13])],W=!0)},p(M,[q]){(!z||q&1)&&u!==(u=M[0].name+"")&&Q(d,u),(!z||q&1&&p!==(p=M[0].name))&&r(c,"title",p),(!z||q&1)&&g!==(g=Mi(M[0].size)+"")&&Q(b,g),(!z||q&1)&&y!==(y=Vo(M[0].mime)+"")&&Q(E,y);let X=R;R=L(M),R===X?F[R].p(M,q):(yt(),ke(F[X],1,1,()=>{F[X]=null}),Et(),D=F[R],D?D.p(M,q):(D=F[R]=Y[R](M),D.c()),ge(D,1),D.m(O,null))},i(M){z||(ge(o.$$.fragment,M),ge(D),z=!0)},o(M){ke(o.$$.fragment,M),ke(D),z=!1},d(M){M&&S(e),Xe(o),F[R].d(),W=!1,Ce(K)}}}function Jk(n,e,t){let l,i,o,s,{item:c}=e,{content:u=""}=e,{loading:d=!1}=e,{error:p=""}=e;const h=pn(),m=Uf(c);function g(T){T.key==="Escape"&&h("close")}function b(){h("openExternal",c.fileId)}li(()=>{window.addEventListener("keydown",g)}),ii(()=>{window.removeEventListener("keydown",g)});const v=()=>h("close"),y=()=>h("close"),E=T=>{T.key==="Escape"&&(T.preventDefault(),h("close"))};return n.$$set=T=>{"item"in T&&t(0,c=T.item),"content"in T&&t(1,u=T.content),"loading"in T&&t(2,d=T.loading),"error"in T&&t(3,p=T.error)},n.$$.update=()=>{n.$$.dirty&3&&t(7,l=Vf(c)&&u&&u.startsWith("data:")),n.$$.dirty&3&&t(4,i=Li(c)&&u),n.$$.dirty&19&&t(6,o=(Zf(c)||Li(c))&&u&&!i),n.$$.dirty&1&&t(5,s=Yf(c))},[c,u,d,p,i,s,o,l,h,m,b,v,y,E]}class Pd extends ut{constructor(e){super(),ct(this,e,Jk,Xk,at,{item:0,content:1,loading:2,error:3})}}function Qk(n){let e,t,l,i,o,s,c,u,d,p,h,m,g,b,v,y,E;return{c(){e=f("div"),t=f("div"),l=f("h3"),i=H(n[0]),o=w(),s=f("p"),c=H(n[1]),u=w(),d=f("div"),p=f("button"),h=H(n[2]),g=w(),b=f("button"),v=H(n[3]),r(l,"class","svelte-1fv6yyk"),r(s,"class","message svelte-1fv6yyk"),r(p,"class",m="btn "+(n[4]?"btn-danger":"btn-primary")+" svelte-1fv6yyk"),r(b,"class","btn svelte-1fv6yyk"),r(d,"class","actions svelte-1fv6yyk"),r(t,"class","modal svelte-1fv6yyk"),r(e,"class","overlay svelte-1fv6yyk"),r(e,"role","presentation")},m(T,N){C(T,e,N),a(e,t),a(t,l),a(l,i),a(t,o),a(t,s),a(s,c),a(t,u),a(t,d),a(d,p),a(p,h),a(d,g),a(d,b),a(b,v),y||(E=[P(p,"click",n[6]),P(b,"click",n[7]),P(e,"click",xt(n[8])),P(e,"keydown",n[9])],y=!0)},p(T,[N]){N&1&&Q(i,T[0]),N&2&&Q(c,T[1]),N&4&&Q(h,T[2]),N&16&&m!==(m="btn "+(T[4]?"btn-danger":"btn-primary")+" svelte-1fv6yyk")&&r(p,"class",m),N&8&&Q(v,T[3])},i:se,o:se,d(T){T&&S(e),y=!1,Ce(E)}}}function xk(n,e,t){let{title:l=k("common.confirm")}=e,{message:i=""}=e,{confirmText:o=k("common.delete")}=e,{cancelText:s=k("common.cancel")}=e,{danger:c=!1}=e;const u=pn(),d=()=>u("confirm"),p=()=>u("cancel"),h=()=>u("cancel"),m=g=>{g.key==="Escape"&&(g.preventDefault(),u("cancel"))};return n.$$set=g=>{"title"in g&&t(0,l=g.title),"message"in g&&t(1,i=g.message),"confirmText"in g&&t(2,o=g.confirmText),"cancelText"in g&&t(3,s=g.cancelText),"danger"in g&&t(4,c=g.danger)},[l,i,o,s,c,u,d,p,h,m]}class qd extends ut{constructor(e){super(),ct(this,e,xk,Qk,at,{title:0,message:1,confirmText:2,cancelText:3,danger:4})}}function $k(n){let e,t,l;return{c(){e=ae("circle"),t=ae("line"),l=ae("line"),r(e,"cx","12"),r(e,"cy","12"),r(e,"r","10"),r(t,"x1","12"),r(t,"y1","16"),r(t,"x2","12"),r(t,"y2","12"),r(l,"x1","12"),r(l,"y1","8"),r(l,"x2","12.01"),r(l,"y2","8")},m(i,o){C(i,e,o),C(i,t,o),C(i,l,o)},d(i){i&&(S(e),S(t),S(l))}}}function ev(n){let e,t,l,i;return{c(){e=ae("rect"),t=ae("polyline"),l=ae("line"),i=ae("line"),r(e,"x","3"),r(e,"y","5"),r(e,"width","18"),r(e,"height","14"),r(e,"rx","2"),r(t,"points","3 10 21 10"),r(l,"x1","8"),r(l,"y1","5"),r(l,"x2","8"),r(l,"y2","19"),r(i,"x1","16"),r(i,"y1","5"),r(i,"x2","16"),r(i,"y2","19")},m(o,s){C(o,e,s),C(o,t,s),C(o,l,s),C(o,i,s)},d(o){o&&(S(e),S(t),S(l),S(i))}}}function tv(n){let e,t;return{c(){e=ae("path"),t=ae("polyline"),r(e,"d","M13 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V9z"),r(t,"points","13 2 13 9 20 9")},m(l,i){C(l,e,i),C(l,t,i)},d(l){l&&(S(e),S(t))}}}function nv(n){let e,t;return{c(){e=ae("path"),t=ae("path"),r(e,"d","M12 20h9"),r(t,"d","M16.5 3.5a2.121 2.121 0 0 1 3 3L7 19l-4 1 1-4L16.5 3.5z")},m(l,i){C(l,e,i),C(l,t,i)},d(l){l&&(S(e),S(t))}}}function lv(n){let e,t,l,i,o;return{c(){e=ae("path"),t=ae("path"),l=ae("line"),i=ae("line"),o=ae("line"),r(e,"d","M4 19.5A2.5 2.5 0 0 1 6.5 17H20"),r(t,"d","M6.5 2H20v20H6.5A2.5 2.5 0 0 1 4 19.5v-15A2.5 2.5 0 0 1 6.5 2z"),r(l,"x1","8"),r(l,"y1","7"),r(l,"x2","16"),r(l,"y2","7"),r(i,"x1","8"),r(i,"y1","11"),r(i,"x2","14"),r(i,"y2","11"),r(o,"x1","8"),r(o,"y1","15"),r(o,"x2","12"),r(o,"y2","15")},m(s,c){C(s,e,c),C(s,t,c),C(s,l,c),C(s,i,c),C(s,o,c)},d(s){s&&(S(e),S(t),S(l),S(i),S(o))}}}function iv(n){let e,t,l,i;return{c(){e=ae("path"),t=ae("polyline"),l=ae("line"),i=ae("line"),r(e,"d","M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"),r(t,"points","14 2 14 8 20 8"),r(l,"x1","16"),r(l,"y1","13"),r(l,"x2","8"),r(l,"y2","13"),r(i,"x1","16"),r(i,"y1","17"),r(i,"x2","8"),r(i,"y2","17")},m(o,s){C(o,e,s),C(o,t,s),C(o,l,s),C(o,i,s)},d(o){o&&(S(e),S(t),S(l),S(i))}}}function sv(n){let e,t;return{c(){e=ae("path"),t=ae("circle"),r(e,"d","M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2"),r(t,"cx","12"),r(t,"cy","7"),r(t,"r","4")},m(l,i){C(l,e,i),C(l,t,i)},d(l){l&&(S(e),S(t))}}}function ov(n){let e,t,l,i;return{c(){e=ae("rect"),t=ae("rect"),l=ae("rect"),i=ae("rect"),r(e,"x","3"),r(e,"y","3"),r(e,"width","7"),r(e,"height","7"),r(e,"rx","1"),r(t,"x","14"),r(t,"y","3"),r(t,"width","7"),r(t,"height","4"),r(t,"rx","1"),r(l,"x","14"),r(l,"y","10"),r(l,"width","7"),r(l,"height","11"),r(l,"rx","1"),r(i,"x","3"),r(i,"y","14"),r(i,"width","7"),r(i,"height","7"),r(i,"rx","1")},m(o,s){C(o,e,s),C(o,t,s),C(o,l,s),C(o,i,s)},d(o){o&&(S(e),S(t),S(l),S(i))}}}function rv(n){let e;return{c(){e=ae("path"),r(e,"d","M22 19a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h5l2 3h9a2 2 0 0 1 2 2z")},m(t,l){C(t,e,l)},d(t){t&&S(e)}}}function av(n){let e;function t(o,s){return o[0]==="folder"?rv:o[0]==="project"?ov:o[0]==="client"?sv:o[0]==="document"?iv:o[0]==="recipe"?lv:o[0]==="note"?nv:o[0]==="file"?tv:o[0]==="case"?ev:$k}let l=t(n),i=l(n);return{c(){e=ae("svg"),i.c(),r(e,"width",n[1]),r(e,"height",n[1]),r(e,"viewBox","0 0 24 24"),r(e,"fill","none"),r(e,"stroke","currentColor"),r(e,"stroke-width","1.5"),r(e,"stroke-linecap","round"),r(e,"stroke-linejoin","round"),r(e,"xmlns","http://www.w3.org/2000/svg")},m(o,s){C(o,e,s),i.m(e,null)},p(o,[s]){l!==(l=t(o))&&(i.d(1),i=l(o),i&&(i.c(),i.m(e,null))),s&2&&r(e,"width",o[1]),s&2&&r(e,"height",o[1])},i:se,o:se,d(o){o&&S(e),i.d()}}}function cv(n,e,t){let{kind:l="generic"}=e,{size:i=18}=e;return n.$$set=o=>{"kind"in o&&t(0,l=o.kind),"size"in o&&t(1,i=o.size)},[l,i]}class Gi extends ut{constructor(e){super(),ct(this,e,cv,av,at,{kind:0,size:1})}}function Sr(n,e,t){const l=n.slice();return l[44]=e[t],l}function uv(n){let e;return{c(){e=f("span"),r(e,"class","tree-toggle-placeholder svelte-zj71cl")},m(t,l){C(t,e,l)},p:se,d(t){t&&S(e)}}}function fv(n){let e,t,l=n[1][n[44].id]?"▾":"▸",i,o,s;function c(){return n[25](n[44])}return{c(){e=f("button"),t=f("span"),i=H(l),r(t,"class","tree-arrow"),r(e,"class","tree-toggle svelte-zj71cl")},m(u,d){C(u,e,d),a(e,t),a(t,i),o||(s=P(e,"click",We(c)),o=!0)},p(u,d){n=u,d[0]&3&&l!==(l=n[1][n[44].id]?"▾":"▸")&&Q(i,l)},d(u){u&&S(e),o=!1,s()}}}function Cr(n){let e,t;return e=new zd({props:{nodes:n[44].children||[],expanded:n[1],selectedNodeId:n[2],level:n[3]+1,onSelect:n[4],onToggle:n[5],onContextMenu:n[6],onDrop:n[7]}}),{c(){Qe(e.$$.fragment)},m(l,i){Ye(e,l,i),t=!0},p(l,i){const o={};i[0]&1&&(o.nodes=l[44].children||[]),i[0]&2&&(o.expanded=l[1]),i[0]&4&&(o.selectedNodeId=l[2]),i[0]&8&&(o.level=l[3]+1),i[0]&16&&(o.onSelect=l[4]),i[0]&32&&(o.onToggle=l[5]),i[0]&64&&(o.onContextMenu=l[6]),i[0]&128&&(o.onDrop=l[7]),e.$set(o)},i(l){t||(ge(e.$$.fragment,l),t=!0)},o(l){ke(e.$$.fragment,l),t=!1},d(l){Xe(e,l)}}}function Ar(n,e){let t,l,i,o,s,c,u,d=e[44].title+"",p,h,m=e[1][e[44].id]&&Ms(e[44]),g,b,v,y;function E(L,M){return M[0]&1&&(l=null),l==null&&(l=!!Ql(L[44])),l?fv:uv}let T=E(e,[-1,-1]),N=T(e);s=new Gi({props:{kind:Nr(e[44]),size:16}});function A(...L){return e[26](e[44],...L)}function I(...L){return e[27](e[44],...L)}function O(){return e[28](e[44])}function R(...L){return e[29](e[44],...L)}function D(...L){return e[30](e[44],...L)}function B(...L){return e[31](e[44],...L)}function j(...L){return e[32](e[44],...L)}function U(...L){return e[33](e[44],...L)}function z(...L){return e[34](e[44],...L)}function W(...L){return e[35](e[44],...L)}function K(...L){return e[36](e[44],...L)}function Y(...L){return e[37](e[44],...L)}let F=m&&Cr(e);return{key:n,first:null,c(){t=f("div"),N.c(),i=w(),o=f("span"),Qe(s.$$.fragment),c=w(),u=f("span"),p=H(d),h=w(),F&&F.c(),g=kt(),r(o,"class","tree-icon svelte-zj71cl"),r(o,"role","button"),r(o,"tabindex","-1"),r(u,"class","tree-label svelte-zj71cl"),r(u,"role","button"),r(u,"tabindex","-1"),r(t,"class","tree-item svelte-zj71cl"),sn(t,"padding-left",e[3]*16+4+"px"),r(t,"draggable","true"),r(t,"role","button"),r(t,"tabindex","0"),ce(t,"selected",e[2]===e[44].id),ce(t,"drop-valid",e[8]===e[44].id&&e[9][e[44].id]),ce(t,"drop-invalid",e[8]===e[44].id&&!e[9][e[44].id]),this.first=t},m(L,M){C(L,t,M),N.m(t,null),a(t,i),a(t,o),Ye(s,o,null),a(t,c),a(t,u),a(u,p),C(L,h,M),F&&F.m(L,M),C(L,g,M),b=!0,v||(y=[P(o,"click",A),P(o,"keydown",I),P(o,"dblclick",We(e[24])),P(u,"click",We(O)),P(u,"keydown",R),P(t,"dragstart",D),P(t,"dragover",B),P(t,"dragleave",j),P(t,"drop",U),P(t,"click",z),P(t,"keydown",W),P(t,"dblclick",K),P(t,"contextmenu",ji(Y))],v=!0)},p(L,M){e=L,T===(T=E(e,M))&&N?N.p(e,M):(N.d(1),N=T(e),N&&(N.c(),N.m(t,i)));const q={};M[0]&1&&(q.kind=Nr(e[44])),s.$set(q),(!b||M[0]&1)&&d!==(d=e[44].title+"")&&Q(p,d),(!b||M[0]&8)&&sn(t,"padding-left",e[3]*16+4+"px"),(!b||M[0]&5)&&ce(t,"selected",e[2]===e[44].id),(!b||M[0]&769)&&ce(t,"drop-valid",e[8]===e[44].id&&e[9][e[44].id]),(!b||M[0]&769)&&ce(t,"drop-invalid",e[8]===e[44].id&&!e[9][e[44].id]),M[0]&3&&(m=e[1][e[44].id]&&Ms(e[44])),m?F?(F.p(e,M),M[0]&3&&ge(F,1)):(F=Cr(e),F.c(),ge(F,1),F.m(g.parentNode,g)):F&&(yt(),ke(F,1,1,()=>{F=null}),Et())},i(L){b||(ge(s.$$.fragment,L),ge(F),b=!0)},o(L){ke(s.$$.fragment,L),ke(F),b=!1},d(L){L&&(S(t),S(h),S(g)),N.d(),Xe(s),F&&F.d(L),v=!1,Ce(y)}}}function dv(n){let e=[],t=new Map,l,i,o,s,c=Te(n[0]);const u=d=>d[44].id;for(let d=0;d0:n.has_children===!0}function Ir(n){const e={};function t(l,i){for(const o of l)e[o.id]=i,o.children&&t(o.children,o.id)}return t(n,""),e}function Rr(n){const e=[];function t(l){for(const i of l)e.push(i),i.children&&t(i.children)}return t(n),e}function pv(n){try{return n.dataTransfer.getData("text/plain")}catch{return""}}function hv(n,e,t){let l,i,o,{nodes:s=[]}=e,{expanded:c={}}=e,{selectedNodeId:u=""}=e,{level:d=0}=e,{onSelect:p=void 0}=e,{onToggle:h=void 0}=e,{onContextMenu:m=void 0}=e,{onDrop:g=void 0}=e,b={},v=null,y="",E="";const T=["folder","project","client","document","recipe","case"];ii(()=>{for(const ne of Object.keys(b))clearTimeout(b[ne]);v&&clearInterval(v)});function N(ne){return T.includes(ne.type)}function A(ne,re,Ne){if(!ne||!re||re===ne.id||!N(ne))return!1;let Fe=ne.id;for(;Fe;){if(Fe===re)return!1;Fe=Ne[Fe]||""}return!0}function I(ne,re){ne.stopPropagation(),ne.dataTransfer.effectAllowed="move",ne.dataTransfer.setData("text/plain",re.id),t(21,y=re.id)}function O(ne,re){ne.preventDefault(),ne.stopPropagation(),ne.dataTransfer.dropEffect="move",E!==re.id&&t(8,E=re.id),Ql(re)&&!c[re.id]&&!b[re.id]&&(b[re.id]=setTimeout(()=>{h&&h(re.id),delete b[re.id]},600));const Ne=ne.currentTarget.closest(".workspace-tree-area");if(Ne){const Fe=Ne.getBoundingClientRect(),we=30;ne.clientY-Fe.top{Ne.scrollTop-=10},50)):Fe.bottom-ne.clientY{Ne.scrollTop+=10},50)):v&&(clearInterval(v),v=null)}}function R(ne,re){const Ne=ne.relatedTarget;Ne&&ne.currentTarget.contains(Ne)||(E===re.id&&t(8,E=""),b[re.id]&&(clearTimeout(b[re.id]),delete b[re.id]),v&&(clearInterval(v),v=null))}function D(ne,re){ne.preventDefault(),ne.stopPropagation(),b[re.id]&&(clearTimeout(b[re.id]),delete b[re.id]),v&&(clearInterval(v),v=null);const Ne=Rr(s),Fe=Ir(Ne),we=pv(ne);if(!A(re,we,Fe)){t(8,E=""),t(21,y="");return}g&&g(we,re.id),t(8,E=""),t(21,y="")}function B(){t(8,E=""),t(21,y="");for(const ne of Object.keys(b))clearTimeout(b[ne]),delete b[ne];v&&(clearInterval(v),v=null)}function j(ne,re){ne.target.closest(".tree-toggle")||ne.target.closest(".tree-icon")||p&&p(re)}function U(ne,re){Ql(re)&&h&&h(re.id)}function z(ne,re){(ne.key==="Enter"||ne.key===" ")&&(ne.preventDefault(),p&&p(re))}function W(ne,re){ne.stopPropagation(),Ql(re)&&h&&h(re.id)}function K(ne,re){(ne.key==="Enter"||ne.key===" ")&&(ne.preventDefault(),ne.stopPropagation(),Ql(re)&&h&&h(re.id))}function Y(ne,re){(ne.key==="Enter"||ne.key===" ")&&(ne.preventDefault(),p&&p(re))}function F(ne,re,Ne){const Fe={};function we(je){for(const xe of je)Fe[xe.id]=A(xe,re,Ne),xe.children&&we(xe.children)}return we(ne),Fe}function L(ne){Ds.call(this,n,ne)}const M=ne=>h&&h(ne.id),q=(ne,re)=>W(re,ne),X=(ne,re)=>K(re,ne),Z=ne=>p&&p(ne),J=(ne,re)=>Y(re,ne),ee=(ne,re)=>I(re,ne),te=(ne,re)=>O(re,ne),le=(ne,re)=>R(re,ne),_e=(ne,re)=>D(re,ne),oe=(ne,re)=>j(re,ne),ze=(ne,re)=>z(re,ne),Ge=(ne,re)=>U(re,ne),Ie=(ne,re)=>m&&m(re,ne);return n.$$set=ne=>{"nodes"in ne&&t(0,s=ne.nodes),"expanded"in ne&&t(1,c=ne.expanded),"selectedNodeId"in ne&&t(2,u=ne.selectedNodeId),"level"in ne&&t(3,d=ne.level),"onSelect"in ne&&t(4,p=ne.onSelect),"onToggle"in ne&&t(5,h=ne.onToggle),"onContextMenu"in ne&&t(6,m=ne.onContextMenu),"onDrop"in ne&&t(7,g=ne.onDrop)},n.$$.update=()=>{n.$$.dirty[0]&1&&t(23,l=Rr(s)),n.$$.dirty[0]&8388608&&t(22,i=Ir(l)),n.$$.dirty[0]&14680064&&t(9,o=F(l,y,i))},[s,c,u,d,p,h,m,g,E,o,I,O,R,D,B,j,U,z,W,K,Y,y,i,l,L,M,q,X,Z,J,ee,te,le,_e,oe,ze,Ge,Ie]}class zd extends ut{constructor(e){super(),ct(this,e,hv,dv,at,{nodes:0,expanded:1,selectedNodeId:2,level:3,onSelect:4,onToggle:5,onContextMenu:6,onDrop:7},null,[-1,-1])}}function Mr(n){let e,t;return{c(){e=f("div"),t=H(n[4]),r(e,"class","path-info svelte-a9f1pd")},m(l,i){C(l,e,i),a(e,t)},p(l,i){i&16&&Q(t,l[4])},d(l){l&&S(e)}}}function Lr(n){let e,t;return{c(){e=f("div"),t=H(n[3]),r(e,"class","error-msg svelte-a9f1pd")},m(l,i){C(l,e,i),a(e,t)},p(l,i){i&8&&Q(t,l[3])},d(l){l&&S(e)}}}function mv(n){let e,t,l,i,o,s,c,u,d,p,h,m,g,b,v,y,E,T=k("firstrun.browse")+"",N,A,I,O,R,D,B=(n[2]?k("firstrun.creating"):k("firstrun.create"))+"",j,U,z,W,K,Y,F=n[4]&&Mr(n),L=n[3]&&Lr(n);return{c(){e=f("div"),t=f("div"),l=f("img"),o=w(),s=f("h1"),s.textContent=`${k("firstrun.title")}`,c=w(),u=f("p"),u.textContent=`${k("firstrun.desc")}`,d=w(),p=f("div"),h=f("label"),h.textContent=`${k("firstrun.pathLabel")}`,m=w(),g=f("div"),b=f("input"),y=w(),E=f("button"),N=H(T),A=w(),F&&F.c(),I=w(),L&&L.c(),O=w(),R=f("div"),D=f("button"),j=H(B),z=w(),W=f("button"),W.textContent=`${k("firstrun.quit")}`,r(l,"class","first-run-logo svelte-a9f1pd"),Pl(l.src,i="/assets/app-icons/icon_64x64.png")||r(l,"src",i),r(l,"width","64"),r(l,"height","64"),r(l,"alt",""),r(s,"class","svelte-a9f1pd"),r(u,"class","first-run-desc svelte-a9f1pd"),r(h,"class","form-label svelte-a9f1pd"),r(h,"for","vault-path"),r(b,"id","vault-path"),r(b,"type","text"),r(b,"placeholder",v=n[1]||k("firstrun.defaultPath")),b.disabled=n[2],r(b,"class","svelte-a9f1pd"),r(E,"class","btn"),E.disabled=n[2],r(g,"class","input-row svelte-a9f1pd"),r(p,"class","form-group svelte-a9f1pd"),r(D,"class","btn btn-primary btn-lg svelte-a9f1pd"),D.disabled=U=!n[0].trim()||n[2],r(W,"class","btn btn-lg svelte-a9f1pd"),r(R,"class","first-run-actions svelte-a9f1pd"),r(t,"class","first-run-card svelte-a9f1pd"),r(e,"class","first-run-screen svelte-a9f1pd")},m(M,q){C(M,e,q),a(e,t),a(t,l),a(t,o),a(t,s),a(t,c),a(t,u),a(t,d),a(t,p),a(p,h),a(p,m),a(p,g),a(g,b),Me(b,n[0]),a(g,y),a(g,E),a(E,N),a(t,A),F&&F.m(t,null),a(t,I),L&&L.m(t,null),a(t,O),a(t,R),a(R,D),a(D,j),a(R,z),a(R,W),K||(Y=[P(b,"input",n[12]),P(b,"input",n[6]),P(b,"keydown",n[9]),P(E,"click",n[5]),P(D,"click",n[7]),P(W,"click",n[8])],K=!0)},p(M,[q]){q&2&&v!==(v=M[1]||k("firstrun.defaultPath"))&&r(b,"placeholder",v),q&4&&(b.disabled=M[2]),q&1&&b.value!==M[0]&&Me(b,M[0]),q&4&&(E.disabled=M[2]),M[4]?F?F.p(M,q):(F=Mr(M),F.c(),F.m(t,I)):F&&(F.d(1),F=null),M[3]?L?L.p(M,q):(L=Lr(M),L.c(),L.m(t,O)):L&&(L.d(1),L=null),q&4&&B!==(B=(M[2]?k("firstrun.creating"):k("firstrun.create"))+"")&&Q(j,B),q&5&&U!==(U=!M[0].trim()||M[2])&&(D.disabled=U)},i:se,o:se,d(M){M&&S(e),F&&F.d(),L&&L.d(),K=!1,Ce(Y)}}}function yi(n,...e){try{if(window.go&&window.go.main&&window.go.main.App){const t=window.go.main.App[n];if(typeof t=="function")return t(...e)}}catch(t){console.error("Wails error:",n,t)}return Promise.reject(new Error("Wails not connected: "+n))}function gv(n,e,t){let{onComplete:l=null}=e,{onQuit:i=null}=e,o="",s="",c=!1,u="",d="",p=null;async function h(){try{const T=await yi("GetDefaultVaultPath");t(1,s=T||""),t(0,o=s||""),o&&await g()}catch{t(1,s="")}}h();async function m(){try{const T=await yi("PickDirectory");T&&(t(0,o=T),await g())}catch(T){t(3,u=String(T))}}async function g(){if(!o||!o.trim()){t(4,d=""),p=null;return}try{p=await yi("CheckVaultPath",o.trim()),p&&t(4,d=p.description)}catch{t(4,d=""),p=null}}async function b(){if(!(!o||!o.trim())){if(t(2,c=!0),t(3,u=""),p&&!p.writable){t(3,u=k("firstrun.errorNoWrite")),t(2,c=!1);return}try{const T=await yi("CreateVault",o.trim());T&&T.status==="ready"&&l&&l(T)}catch(T){t(3,u=String(T))}t(2,c=!1)}}function v(){i&&i()}function y(T){T.key==="Enter"&&!c&&o.trim()&&b()}function E(){o=this.value,t(0,o)}return n.$$set=T=>{"onComplete"in T&&t(10,l=T.onComplete),"onQuit"in T&&t(11,i=T.onQuit)},[o,s,c,u,d,m,g,b,v,y,l,i,E]}class _v extends ut{constructor(e){super(),ct(this,e,gv,mv,at,{onComplete:10,onQuit:11})}}function Or(n){let e,t;return{c(){e=f("div"),t=H(n[2]),r(e,"class","error-msg svelte-s3o8c3")},m(l,i){C(l,e,i),a(e,t)},p(l,i){i&4&&Q(t,l[2])},d(l){l&&S(e)}}}function Dr(n){let e,t,l,i,o,s,c,u,d=k("common.yes")+"",p,h,m,g,b;return{c(){e=f("div"),t=f("div"),l=f("h3"),l.textContent=`${k("recovery.createConfirmTitle")}`,i=w(),o=f("p"),o.textContent=`${k("recovery.createConfirm")}`,s=w(),c=f("div"),u=f("button"),p=H(d),h=w(),m=f("button"),m.textContent=`${k("common.cancel")}`,r(l,"class","svelte-s3o8c3"),r(o,"class","modal-desc svelte-s3o8c3"),r(u,"class","btn btn-primary"),u.disabled=n[1],r(m,"class","btn"),r(c,"class","modal-actions svelte-s3o8c3"),r(t,"class","modal svelte-s3o8c3"),r(e,"class","modal-overlay svelte-s3o8c3"),r(e,"role","button"),r(e,"tabindex","0")},m(v,y){C(v,e,y),a(e,t),a(t,l),a(t,i),a(t,o),a(t,s),a(t,c),a(c,u),a(u,p),a(c,h),a(c,m),g||(b=[P(u,"click",n[6]),P(m,"click",n[7]),P(e,"click",xt(n[7])),P(e,"keydown",n[11])],g=!0)},p(v,y){y&2&&(u.disabled=v[1])},d(v){v&&S(e),g=!1,Ce(b)}}}function bv(n){let e,t,l,i,o,s,c,u,d,p=(n[0]||"—")+"",h,m,g,b,v,y=k("recovery.choose")+"",E,T,N,A=k("recovery.create")+"",I,O,R,D,B,j,U,z=n[2]&&Or(n),W=n[3]&&Dr(n);return{c(){e=f("div"),t=f("div"),l=f("div"),l.textContent="⚠",i=w(),o=f("h1"),o.textContent=`${k("recovery.title")}`,s=w(),c=f("p"),c.textContent=`${k("recovery.expected")}:`,u=w(),d=f("code"),h=H(p),m=w(),z&&z.c(),g=w(),b=f("div"),v=f("button"),E=H(y),T=w(),N=f("button"),I=H(A),O=w(),R=f("button"),R.textContent=`${k("recovery.quit")}`,D=w(),W&&W.c(),B=kt(),r(l,"class","recovery-icon svelte-s3o8c3"),r(o,"class","svelte-s3o8c3"),r(c,"class","recovery-desc svelte-s3o8c3"),r(d,"class","recovery-path svelte-s3o8c3"),r(v,"class","btn btn-primary btn-lg svelte-s3o8c3"),v.disabled=n[1],r(N,"class","btn btn-lg svelte-s3o8c3"),N.disabled=n[1],r(R,"class","btn btn-lg svelte-s3o8c3"),r(b,"class","recovery-actions svelte-s3o8c3"),r(t,"class","recovery-card svelte-s3o8c3"),r(e,"class","recovery-screen svelte-s3o8c3")},m(K,Y){C(K,e,Y),a(e,t),a(t,l),a(t,i),a(t,o),a(t,s),a(t,c),a(t,u),a(t,d),a(d,h),a(t,m),z&&z.m(t,null),a(t,g),a(t,b),a(b,v),a(v,E),a(b,T),a(b,N),a(N,I),a(b,O),a(b,R),C(K,D,Y),W&&W.m(K,Y),C(K,B,Y),j||(U=[P(v,"click",n[4]),P(N,"click",n[5]),P(R,"click",n[8])],j=!0)},p(K,[Y]){Y&1&&p!==(p=(K[0]||"—")+"")&&Q(h,p),K[2]?z?z.p(K,Y):(z=Or(K),z.c(),z.m(t,g)):z&&(z.d(1),z=null),Y&2&&(v.disabled=K[1]),Y&2&&(N.disabled=K[1]),K[3]?W?W.p(K,Y):(W=Dr(K),W.c(),W.m(B.parentNode,B)):W&&(W.d(1),W=null)},i:se,o:se,d(K){K&&(S(e),S(D),S(B)),z&&z.d(),W&&W.d(K),j=!1,Ce(U)}}}function vs(n,...e){try{if(window.go&&window.go.main&&window.go.main.App){const t=window.go.main.App[n];if(typeof t=="function")return t(...e)}}catch(t){console.error("Wails error:",n,t)}return Promise.reject(new Error("Wails not connected: "+n))}function kv(n,e,t){let{vaultPath:l=""}=e,{onComplete:i=null}=e,{onQuit:o=null}=e,s=!1,c="",u=!1;async function d(){try{const v=await vs("PickDirectory");if(!v)return;t(1,s=!0),t(2,c="");const y=await vs("OpenVault",v);y&&y.status==="ready"&&i&&i(y)}catch(v){t(2,c=String(v))}t(1,s=!1)}function p(){t(3,u=!0)}async function h(){t(3,u=!1),t(1,s=!0),t(2,c="");try{const v=await vs("CreateVault",l);v&&v.status==="ready"&&i&&i(v)}catch(v){t(2,c=String(v))}t(1,s=!1)}function m(){t(3,u=!1)}function g(){o&&o()}const b=v=>v.key==="Enter"&&m();return n.$$set=v=>{"vaultPath"in v&&t(0,l=v.vaultPath),"onComplete"in v&&t(9,i=v.onComplete),"onQuit"in v&&t(10,o=v.onQuit)},[l,s,c,u,d,p,h,m,g,i,o,b]}class vv extends ut{constructor(e){super(),ct(this,e,kv,bv,at,{vaultPath:0,onComplete:9,onQuit:10})}}function Pr(n,e,t){const l=n.slice();return l[5]=e[t],l}function wv(n){let e,t;return{c(){e=ae("circle"),t=ae("path"),r(e,"cx","12"),r(e,"cy","12"),r(e,"r","3"),r(t,"d","M12 1v2M12 21v2M4.22 4.22l1.42 1.42M18.36 18.36l1.42 1.42M1 12h2M21 12h2M4.22 19.78l1.42-1.42M18.36 5.64l1.42-1.42")},m(l,i){C(l,e,i),C(l,t,i)},d(l){l&&(S(e),S(t))}}}function yv(n){let e,t,l;return{c(){e=ae("path"),t=ae("path"),l=ae("path"),r(e,"d","M5 4h12l2 2v14H5z"),r(t,"d","M8 4v6h8V4"),r(l,"d","M8 20v-6h8v6")},m(i,o){C(i,e,o),C(i,t,o),C(i,l,o)},d(i){i&&(S(e),S(t),S(l))}}}function Ev(n){let e,t,l,i;return{c(){e=ae("path"),t=ae("path"),l=ae("path"),i=ae("path"),r(e,"d","M20 11a8 8 0 0 0-14-4l-2 2"),r(t,"d","M4 5v4h4"),r(l,"d","M4 13a8 8 0 0 0 14 4l2-2"),r(i,"d","M20 19v-4h-4")},m(o,s){C(o,e,s),C(o,t,s),C(o,l,s),C(o,i,s)},d(o){o&&(S(e),S(t),S(l),S(i))}}}function Tv(n){let e;return{c(){e=ae("path"),r(e,"d","M4 19V9M10 19V5M16 19v-7M22 19H2")},m(t,l){C(t,e,l)},d(t){t&&S(e)}}}function Sv(n){let e;return{c(){e=ae("path"),r(e,"d","M3 6h6l2 2h10v10a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V6z")},m(t,l){C(t,e,l)},d(t){t&&S(e)}}}function Cv(n){let e,t;return{c(){e=ae("path"),t=ae("path"),r(e,"d","M9 3v5M15 3v5M7 8h10v3a5 5 0 0 1-10 0V8z"),r(t,"d","M12 16v5")},m(l,i){C(l,e,i),C(l,t,i)},d(l){l&&(S(e),S(t))}}}function Av(n){let e,t;return{c(){e=ae("rect"),t=ae("path"),r(e,"x","4"),r(e,"y","3"),r(e,"width","16"),r(e,"height","18"),r(e,"rx","2"),r(t,"d","M8 7h8M8 11h8M8 15h5")},m(l,i){C(l,e,i),C(l,t,i)},d(l){l&&(S(e),S(t))}}}function Nv(n){let e,t,l;return{c(){e=ae("path"),t=ae("path"),l=ae("path"),r(e,"d","M3 10.5 12 3l9 7.5"),r(t,"d","M5 9.5V21h14V9.5"),r(l,"d","M10 21v-6h4v6")},m(i,o){C(i,e,o),C(i,t,o),C(i,l,o)},d(i){i&&(S(e),S(t),S(l))}}}function Iv(n){let e,t;return{c(){e=ae("circle"),t=ae("path"),r(e,"cx","12"),r(e,"cy","12"),r(e,"r","3"),r(t,"d","M19.4 15a1.7 1.7 0 0 0 .3 1.8l.1.1a2 2 0 0 1-2.8 2.8l-.1-.1a1.7 1.7 0 0 0-1.8-.3 1.7 1.7 0 0 0-1 1.5V22h-4v-.2a1.7 1.7 0 0 0-1-1.5 1.7 1.7 0 0 0-1.8.3l-.1.1a2 2 0 0 1-2.8-2.8l.1-.1a1.7 1.7 0 0 0 .3-1.8 1.7 1.7 0 0 0-1.5-1H2v-4h.2a1.7 1.7 0 0 0 1.5-1 1.7 1.7 0 0 0-.3-1.8l-.1-.1a2 2 0 0 1 2.8-2.8l.1.1a1.7 1.7 0 0 0 1.8.3 1.7 1.7 0 0 0 1-1.5V2h4v.2a1.7 1.7 0 0 0 1 1.5 1.7 1.7 0 0 0 1.8-.3l.1-.1a2 2 0 0 1 2.8 2.8l-.1.1a1.7 1.7 0 0 0-.3 1.8 1.7 1.7 0 0 0 1.5 1h.2v4h-.2a1.7 1.7 0 0 0-1.4 1z")},m(l,i){C(l,e,i),C(l,t,i)},d(l){l&&(S(e),S(t))}}}function qr(n){let e,t,l,i,o,s,c,u;function d(g,b){if(g[5].id==="general")return Iv;if(g[5].id==="workspace")return Nv;if(g[5].id==="templates")return Av;if(g[5].id==="plugins")return Cv;if(g[5].id==="files")return Sv;if(g[5].id==="activity")return Tv;if(g[5].id==="sync")return Ev;if(g[5].id==="backup")return yv;if(g[5].id==="browserBridge")return wv}let p=d(n),h=p&&p(n);function m(){return n[4](n[5])}return{c(){e=f("button"),t=f("span"),l=ae("svg"),h&&h.c(),i=w(),o=f("span"),o.textContent=`${n[5].label}`,s=w(),r(l,"width","16"),r(l,"height","16"),r(l,"viewBox","0 0 24 24"),r(l,"fill","none"),r(l,"stroke","currentColor"),r(l,"stroke-width","1.8"),r(l,"stroke-linecap","round"),r(l,"stroke-linejoin","round"),r(l,"aria-hidden","true"),r(t,"class","settings-nav-icon svelte-8ag2z0"),r(o,"class","settings-nav-label svelte-8ag2z0"),r(e,"class","settings-nav-item svelte-8ag2z0"),ce(e,"active",n[0]===n[5].id),ce(e,"disabled",n[5].id==="files"||n[5].id==="activity"||n[5].id==="backup")},m(g,b){C(g,e,b),a(e,t),a(t,l),h&&h.m(l,null),a(e,i),a(e,o),a(e,s),c||(u=P(e,"click",m),c=!0)},p(g,b){n=g,b&3&&ce(e,"active",n[0]===n[5].id)},d(g){g&&S(e),h&&h.d(),c=!1,u()}}}function Rv(n){let e,t=Te(n[1]),l=[];for(let i=0;is(u.id);return n.$$set=u=>{"activeSection"in u&&t(0,l=u.activeSection),"onSelect"in u&&t(3,i=u.onSelect)},[l,o,s,i,c]}class Lv extends ut{constructor(e){super(),ct(this,e,Mv,Rv,at,{activeSection:0,onSelect:3})}}function zr(n){let e;return{c(){e=f("div"),e.textContent=`${k("settings.saved")}`,r(e,"class","save-notice svelte-1e2uhdh")},m(t,l){C(t,e,l)},d(t){t&&S(e)}}}function Ov(n){let e,t,l,i,o,s,c,u,d,p,h,m,g,b,v,y,E,T,N,A,I,O,R,D,B,j,U,z,W,K,Y,F,L,M=n[1]&&zr();return{c(){e=f("div"),t=f("h2"),t.textContent=`${k("settings.general")}`,l=w(),i=f("p"),i.textContent=`${k("settings.generalDesc")}`,o=w(),s=f("div"),c=f("h3"),c.textContent=`${k("settings.appearance")}`,u=w(),d=f("div"),p=f("label"),h=f("span"),h.textContent=`${k("settings.theme")}`,m=w(),g=f("select"),b=f("option"),b.textContent=`${k("settings.themeSystem")}`,v=f("option"),v.textContent=`${k("settings.themeLight")} (${k("settings.langSoon")})`,y=f("option"),y.textContent=`${k("settings.themeDark")} (${k("settings.langSoon")})`,E=w(),T=f("div"),N=f("h3"),N.textContent=`${k("settings.localization")}`,A=w(),I=f("div"),O=f("label"),R=f("span"),R.textContent=`${k("settings.language")}`,D=w(),B=f("select"),j=f("option"),j.textContent=`${k("settings.langRu")}`,U=f("option"),U.textContent=`${k("settings.langEn")} (${k("settings.langSoon")})`,z=w(),W=f("div"),M&&M.c(),K=w(),Y=f("button"),Y.textContent=`${k("settings.save")}`,r(t,"class","svelte-1e2uhdh"),r(i,"class","section-desc svelte-1e2uhdh"),r(c,"class","card-title svelte-1e2uhdh"),r(h,"class","label-text svelte-1e2uhdh"),b.__value="system",Me(b,b.__value),v.__value="light",Me(v,v.__value),v.disabled=!0,y.__value="dark",Me(y,y.__value),y.disabled=!0,n[0]===void 0&&hl(()=>n[5].call(g)),r(d,"class","form-group svelte-1e2uhdh"),r(s,"class","settings-card svelte-1e2uhdh"),r(N,"class","card-title svelte-1e2uhdh"),r(R,"class","label-text svelte-1e2uhdh"),j.__value="ru",Me(j,j.__value),U.__value="en",Me(U,U.__value),B.disabled=!0,r(I,"class","form-group svelte-1e2uhdh"),r(T,"class","settings-card svelte-1e2uhdh"),r(Y,"class","btn btn-primary"),r(W,"class","settings-actions svelte-1e2uhdh"),r(e,"class","settings-section svelte-1e2uhdh")},m(q,X){C(q,e,X),a(e,t),a(e,l),a(e,i),a(e,o),a(e,s),a(s,c),a(s,u),a(s,d),a(d,p),a(p,h),a(p,m),a(p,g),a(g,b),a(g,v),a(g,y),Yn(g,n[0],!0),a(e,E),a(e,T),a(T,N),a(T,A),a(T,I),a(I,O),a(O,R),a(O,D),a(O,B),a(B,j),a(B,U),a(e,z),a(e,W),M&&M.m(W,null),a(W,K),a(W,Y),F||(L=[P(g,"change",n[5]),P(Y,"click",n[2])],F=!0)},p(q,[X]){X&1&&Yn(g,q[0]),q[1]?M||(M=zr(),M.c(),M.m(W,K)):M&&(M.d(1),M=null)},i:se,o:se,d(q){q&&S(e),M&&M.d(),F=!1,Ce(L)}}}function Dv(n,e,t){let{appConfig:l=null}=e,{onSave:i=null}=e,o="system",s=!1;function c(){l&&t(0,o=l.theme||"system")}async function u(){l&&(t(3,l.theme=o,l),i&&await i(l),t(1,s=!0),setTimeout(()=>t(1,s=!1),2e3))}function d(){o=Ci(this),t(0,o)}return n.$$set=p=>{"appConfig"in p&&t(3,l=p.appConfig),"onSave"in p&&t(4,i=p.onSave)},n.$$.update=()=>{n.$$.dirty&8&&l&&c()},[o,s,u,l,i,d]}class Pv extends ut{constructor(e){super(),ct(this,e,Dv,Ov,at,{appConfig:3,onSave:4})}}function Br(n){let e,t;return{c(){e=f("div"),t=H(n[1]),r(e,"class","notice svelte-1zbky3")},m(l,i){C(l,e,i),a(e,t)},p(l,i){i&2&&Q(t,l[1])},d(l){l&&S(e)}}}function qv(n){let e;return{c(){e=f("p"),e.textContent=`${k("settings.noVaultInfo")}`,r(e,"class","no-data svelte-1zbky3")},m(t,l){C(t,e,l)},p:se,d(t){t&&S(e)}}}function zv(n){let e,t,l,i,o,s=n[0].path+"",c,u,d,p,h,m,g=n[0].dbPath+"",b,v,y,E=n[0].nodeCount!==void 0&&Fr(n),T=n[0].fileCount!==void 0&&jr(n);return{c(){e=f("div"),t=f("div"),l=f("span"),l.textContent=`${k("settings.vaultPath")}`,i=w(),o=f("span"),c=H(s),u=w(),d=f("div"),p=f("span"),p.textContent="DB",h=w(),m=f("span"),b=H(g),v=w(),E&&E.c(),y=w(),T&&T.c(),r(l,"class","info-label svelte-1zbky3"),r(o,"class","info-value mono svelte-1zbky3"),r(t,"class","info-row svelte-1zbky3"),r(p,"class","info-label svelte-1zbky3"),r(m,"class","info-value mono small svelte-1zbky3"),r(d,"class","info-row svelte-1zbky3"),r(e,"class","vault-info svelte-1zbky3")},m(N,A){C(N,e,A),a(e,t),a(t,l),a(t,i),a(t,o),a(o,c),a(e,u),a(e,d),a(d,p),a(d,h),a(d,m),a(m,b),a(e,v),E&&E.m(e,null),a(e,y),T&&T.m(e,null)},p(N,A){A&1&&s!==(s=N[0].path+"")&&Q(c,s),A&1&&g!==(g=N[0].dbPath+"")&&Q(b,g),N[0].nodeCount!==void 0?E?E.p(N,A):(E=Fr(N),E.c(),E.m(e,y)):E&&(E.d(1),E=null),N[0].fileCount!==void 0?T?T.p(N,A):(T=jr(N),T.c(),T.m(e,null)):T&&(T.d(1),T=null)},d(N){N&&S(e),E&&E.d(),T&&T.d()}}}function Fr(n){let e,t,l,i,o=n[0].nodeCount+"",s;return{c(){e=f("div"),t=f("span"),t.textContent="Nodes",l=w(),i=f("span"),s=H(o),r(t,"class","info-label svelte-1zbky3"),r(i,"class","info-value svelte-1zbky3"),r(e,"class","info-row svelte-1zbky3")},m(c,u){C(c,e,u),a(e,t),a(e,l),a(e,i),a(i,s)},p(c,u){u&1&&o!==(o=c[0].nodeCount+"")&&Q(s,o)},d(c){c&&S(e)}}}function jr(n){let e,t,l,i,o=n[0].fileCount+"",s;return{c(){e=f("div"),t=f("span"),t.textContent="Files",l=w(),i=f("span"),s=H(o),r(t,"class","info-label svelte-1zbky3"),r(i,"class","info-value svelte-1zbky3"),r(e,"class","info-row svelte-1zbky3")},m(c,u){C(c,e,u),a(e,t),a(e,l),a(e,i),a(i,s)},p(c,u){u&1&&o!==(o=c[0].fileCount+"")&&Q(s,o)},d(c){c&&S(e)}}}function Bv(n){let e,t,l,i,o,s,c,u,d,p,h,m,g,b,v,y,E=n[1]&&Br(n);function T(I,O){return I[0]?zv:qv}let N=T(n),A=N(n);return{c(){e=f("div"),t=f("h2"),t.textContent=`${k("settings.workspace")}`,l=w(),i=f("p"),i.textContent=`${k("settings.workspaceDesc")}`,o=w(),E&&E.c(),s=w(),c=f("div"),A.c(),u=w(),d=f("div"),p=f("button"),p.textContent=`${k("settings.openVault")}`,h=w(),m=f("button"),m.textContent=`${k("settings.changeVault")}`,g=w(),b=f("button"),b.textContent=`${k("settings.checkIntegrity")}`,r(t,"class","svelte-1zbky3"),r(i,"class","section-desc svelte-1zbky3"),r(c,"class","settings-card svelte-1zbky3"),r(p,"class","btn svelte-1zbky3"),r(m,"class","btn svelte-1zbky3"),r(b,"class","btn svelte-1zbky3"),r(d,"class","workspace-actions svelte-1zbky3"),r(e,"class","settings-section svelte-1zbky3")},m(I,O){C(I,e,O),a(e,t),a(e,l),a(e,i),a(e,o),E&&E.m(e,null),a(e,s),a(e,c),A.m(c,null),a(e,u),a(e,d),a(d,p),a(d,h),a(d,m),a(d,g),a(d,b),v||(y=[P(p,"click",n[2]),P(m,"click",n[4]),P(b,"click",n[3])],v=!0)},p(I,[O]){I[1]?E?E.p(I,O):(E=Br(I),E.c(),E.m(e,s)):E&&(E.d(1),E=null),N===(N=T(I))&&A?A.p(I,O):(A.d(1),A=N(I),A&&(A.c(),A.m(c,null)))},i:se,o:se,d(I){I&&S(e),E&&E.d(),A.d(),v=!1,Ce(y)}}}function Ml(n,...e){try{if(window.go&&window.go.main&&window.go.main.App){const t=window.go.main.App[n];if(typeof t=="function")return t(...e)}}catch(t){console.error("Wails error:",n,t)}return Promise.reject(new Error("Wails not connected: "+n))}function Fv(n,e,t){let{onRefresh:l=null}=e,i=null,o="";async function s(){try{t(0,i=await Ml("GetVaultInfo"))}catch{t(0,i=null)}}s();async function c(){try{await Ml("OpenVaultFolder")}catch(p){t(1,o=String(p))}}async function u(){try{const p=await Ml("VaultCheck");p.healthy?t(1,o="Vault healthy"):t(1,o="Issues found: "+(p.errors||[]).join("; "))}catch(p){t(1,o=String(p))}}async function d(){try{const p=await Ml("PickDirectory");if(!p)return;const h=await Ml("OpenVault",p);h&&h.status==="ready"&&(t(0,i=await Ml("GetVaultInfo")),l&&l())}catch(p){t(1,o=String(p))}}return n.$$set=p=>{"onRefresh"in p&&t(5,l=p.onRefresh)},[i,o,c,u,d,l]}class jv extends ut{constructor(e){super(),ct(this,e,Fv,Bv,at,{onRefresh:5})}}function Ur(n,e,t){const l=n.slice();return l[6]=e[t],l}function Uv(n){let e,t=Te(n[0]),l=[];for(let i=0;ic(d);return n.$$set=d=>{"onRefresh"in d&&t(3,l=d.onRefresh)},[i,o,c,l,u]}class Vv extends ut{constructor(e){super(),ct(this,e,Kv,Gv,at,{onRefresh:3})}}function Gr(n,e,t){const l=n.slice();return l[12]=e[t],l}function Zv(n){let e,t=Te(n[0]),l=[];for(let i=0;iНет установленных плагинов.

    Создайте папку .verstak/plugins/ в хранилище и добавьте туда плагины.

    ',r(e,"class","empty-state svelte-i9gngw")},m(t,l){C(t,e,l)},p:se,d(t){t&&S(e)}}}function Xv(n){let e,t;return{c(){e=f("p"),t=H(n[2]),r(e,"class","error svelte-i9gngw")},m(l,i){C(l,e,i),a(e,t)},p(l,i){i&4&&Q(t,l[2])},d(l){l&&S(e)}}}function Jv(n){let e;return{c(){e=f("p"),e.textContent=`${k("common.loading")}`,r(e,"class","loading svelte-i9gngw")},m(t,l){C(t,e,l)},p:se,d(t){t&&S(e)}}}function Kr(n){let e,t,l=n[12].version+"",i;return{c(){e=f("span"),t=H("v"),i=H(l),r(e,"class","plugin-version svelte-i9gngw")},m(o,s){C(o,e,s),a(e,t),a(e,i)},p(o,s){s&1&&l!==(l=o[12].version+"")&&Q(i,l)},d(o){o&&S(e)}}}function Vr(n){let e,t=n[12].description+"",l;return{c(){e=f("div"),l=H(t),r(e,"class","plugin-desc svelte-i9gngw")},m(i,o){C(i,e,o),a(e,l)},p(i,o){o&1&&t!==(t=i[12].description+"")&&Q(l,t)},d(i){i&&S(e)}}}function Zr(n){let e,t=(k("settings.author")||"Автор")+"",l,i,o=n[12].author+"",s;return{c(){e=f("span"),l=H(t),i=H(": "),s=H(o)},m(c,u){C(c,e,u),a(e,l),a(e,i),a(e,s)},p(c,u){u&1&&o!==(o=c[12].author+"")&&Q(s,o)},d(c){c&&S(e)}}}function Yr(n){let e,t=n[12].uiContribs.sidebarItems.length+"",l,i;return{c(){e=f("span"),l=H(t),i=H(" пункт(а) в сайдбаре")},m(o,s){C(o,e,s),a(e,l),a(e,i)},p(o,s){s&1&&t!==(t=o[12].uiContribs.sidebarItems.length+"")&&Q(l,t)},d(o){o&&S(e)}}}function Xr(n){let e,t=n[12].uiContribs.nodeTabs.length+"",l,i;return{c(){e=f("span"),l=H(t),i=H(" вкладок(и) в карточке дела")},m(o,s){C(o,e,s),a(e,l),a(e,i)},p(o,s){s&1&&t!==(t=o[12].uiContribs.nodeTabs.length+"")&&Q(l,t)},d(o){o&&S(e)}}}function Jr(n){let e;return{c(){e=f("span"),e.textContent="🗖 HTML-панель"},m(t,l){C(t,e,l)},d(t){t&&S(e)}}}function Qv(n){let e,t,l,i,o,s,c,u;function d(){return n[8](n[12])}function p(){return n[9](n[12])}return{c(){e=f("div"),t=f("button"),l=f("span"),o=w(),s=f("button"),s.textContent="🗑",r(l,"class","toggle-knob svelte-i9gngw"),r(t,"class","toggle-btn svelte-i9gngw"),r(t,"role","switch"),r(t,"aria-checked",i=n[12].active),ce(t,"active",n[12].active),r(s,"class","uninstall-btn btn-sm svelte-i9gngw"),r(s,"title","Удалить плагин (очистить данные)"),r(e,"class","toggle-group svelte-i9gngw")},m(h,m){C(h,e,m),a(e,t),a(t,l),a(e,o),a(e,s),c||(u=[P(t,"click",d),P(s,"click",p)],c=!0)},p(h,m){n=h,m&1&&i!==(i=n[12].active)&&r(t,"aria-checked",i),m&1&&ce(t,"active",n[12].active)},d(h){h&&S(e),c=!1,Ce(u)}}}function xv(n){let e,t,l;function i(){return n[7](n[12])}return{c(){e=f("button"),e.textContent="📦 Установить",r(e,"class","install-btn svelte-i9gngw")},m(o,s){C(o,e,s),t||(l=P(e,"click",i),t=!0)},p(o,s){n=o},d(o){o&&S(e),t=!1,l()}}}function Qr(n){var B,j,U,z;let e,t,l,i=n[12].name+"",o,s,c,u,d,p,h,m,g,b,v,y=n[12].version&&Kr(n),E=n[12].description&&Vr(n),T=n[12].author&&Zr(n),N=((j=(B=n[12].uiContribs)==null?void 0:B.sidebarItems)==null?void 0:j.length)&&Yr(n),A=((z=(U=n[12].uiContribs)==null?void 0:U.nodeTabs)==null?void 0:z.length)&&Xr(n),I=n[12].hasPanel&&Jr();function O(W,K){return W[12].installed?Qv:xv}let R=O(n),D=R(n);return{c(){e=f("div"),t=f("div"),l=f("div"),o=H(i),s=w(),y&&y.c(),c=w(),E&&E.c(),u=w(),d=f("div"),T&&T.c(),p=w(),N&&N.c(),h=w(),A&&A.c(),m=w(),I&&I.c(),g=w(),b=f("div"),D.c(),v=w(),r(l,"class","plugin-name svelte-i9gngw"),r(d,"class","plugin-meta svelte-i9gngw"),r(t,"class","plugin-info svelte-i9gngw"),r(b,"class","plugin-toggle svelte-i9gngw"),r(e,"class","plugin-card svelte-i9gngw")},m(W,K){C(W,e,K),a(e,t),a(t,l),a(l,o),a(l,s),y&&y.m(l,null),a(t,c),E&&E.m(t,null),a(t,u),a(t,d),T&&T.m(d,null),a(d,p),N&&N.m(d,null),a(d,h),A&&A.m(d,null),a(d,m),I&&I.m(d,null),a(e,g),a(e,b),D.m(b,null),a(e,v)},p(W,K){var Y,F,L,M;K&1&&i!==(i=W[12].name+"")&&Q(o,i),W[12].version?y?y.p(W,K):(y=Kr(W),y.c(),y.m(l,null)):y&&(y.d(1),y=null),W[12].description?E?E.p(W,K):(E=Vr(W),E.c(),E.m(t,u)):E&&(E.d(1),E=null),W[12].author?T?T.p(W,K):(T=Zr(W),T.c(),T.m(d,p)):T&&(T.d(1),T=null),(F=(Y=W[12].uiContribs)==null?void 0:Y.sidebarItems)!=null&&F.length?N?N.p(W,K):(N=Yr(W),N.c(),N.m(d,h)):N&&(N.d(1),N=null),(M=(L=W[12].uiContribs)==null?void 0:L.nodeTabs)!=null&&M.length?A?A.p(W,K):(A=Xr(W),A.c(),A.m(d,m)):A&&(A.d(1),A=null),W[12].hasPanel?I||(I=Jr(),I.c(),I.m(d,null)):I&&(I.d(1),I=null),R===(R=O(W))&&D?D.p(W,K):(D.d(1),D=R(W),D&&(D.c(),D.m(b,null)))},d(W){W&&S(e),y&&y.d(),E&&E.d(),T&&T.d(),N&&N.d(),A&&A.d(),I&&I.d(),D.d()}}}function $v(n){let e,t,l,i,o;function s(d,p){return d[1]?Jv:d[2]?Xv:d[0].length===0?Yv:Zv}let c=s(n),u=c(n);return{c(){e=f("div"),t=f("h3"),t.textContent=`${k("settings.plugins")||"Плагины"}`,l=w(),i=f("p"),i.textContent="Включение и отключение плагинов. Изменения применяются сразу.",o=w(),u.c(),r(t,"class","svelte-i9gngw"),r(i,"class","hint svelte-i9gngw"),r(e,"class","settings-plugins svelte-i9gngw")},m(d,p){C(d,e,p),a(e,t),a(e,l),a(e,i),a(e,o),u.m(e,null)},p(d,[p]){c===(c=s(d))&&u?u.p(d,p):(u.d(1),u=c(d),u&&(u.c(),u.m(e,null)))},i:se,o:se,d(d){d&&S(e),u.d()}}}function ol(n,...e){try{if(window.go&&window.go.main&&window.go.main.App){const t=window.go.main.App[n];if(typeof t=="function")return t(...e)}}catch(t){console.error("Wails error:",n,t)}return Promise.reject(new Error("Wails not connected: "+n))}function e0(n,e,t){let{onPluginToggle:l=null}=e,i=[],o=!0,s="";li(async()=>{try{t(0,i=await ol("ListPlugins")||[])}catch(g){t(2,s=String(g))}t(1,o=!1)});async function c(g){const b=!g.active;try{await ol("SetPluginEnabled",g.name,b),t(0,i=await ol("ListPlugins")||[]),l&&l()}catch(v){t(2,s=String(v))}}async function u(g){t(2,s="");try{await ol("InstallPlugin",g.name),g.installed=!0,t(0,i=await ol("ListPlugins")||[]),l&&l()}catch(b){t(2,s=String(b))}}async function d(g){if(confirm(`Удалить плагин «${g.name}»? Все данные плагина будут очищены. Файлы плагина сохранятся.`)){t(2,s="");try{await ol("UninstallPlugin",g.name),g.installed=!1,g.active=!1,t(0,i=await ol("ListPlugins")||[]),l&&l()}catch(b){t(2,s=String(b))}}}const p=g=>u(g),h=g=>c(g),m=g=>d(g);return n.$$set=g=>{"onPluginToggle"in g&&t(6,l=g.onPluginToggle)},n.$$.update=()=>{n.$$.dirty&1&&i.reduce((g,b)=>{var v,y;return g+(((y=(v=b.uiContribs)==null?void 0:v.sidebarItems)==null?void 0:y.length)||0)},0),n.$$.dirty&1&&i.reduce((g,b)=>{var v,y;return g+(((y=(v=b.uiContribs)==null?void 0:v.nodeTabs)==null?void 0:y.length)||0)},0)},[i,o,s,c,u,d,l,p,h,m]}class t0 extends ut{constructor(e){super(),ct(this,e,e0,$v,at,{onPluginToggle:6})}}function n0(n){let e,t,l,i;return{c(){e=f("div"),t=f("h2"),t.textContent=`${k("settings.files")}`,l=w(),i=f("p"),i.textContent=`${k("settings.filesStub")}`,r(t,"class","svelte-19bo7bn"),r(i,"class","section-desc svelte-19bo7bn"),r(e,"class","settings-section svelte-19bo7bn")},m(o,s){C(o,e,s),a(e,t),a(e,l),a(e,i)},p:se,i:se,o:se,d(o){o&&S(e)}}}class l0 extends ut{constructor(e){super(),ct(this,e,null,n0,at,{})}}function i0(n){let e,t,l,i;return{c(){e=f("div"),t=f("h2"),t.textContent=`${k("settings.activity")}`,l=w(),i=f("p"),i.textContent=`${k("settings.activityStub")}`,r(t,"class","svelte-19bo7bn"),r(i,"class","section-desc svelte-19bo7bn"),r(e,"class","settings-section svelte-19bo7bn")},m(o,s){C(o,e,s),a(e,t),a(e,l),a(e,i)},p:se,i:se,o:se,d(o){o&&S(e)}}}class s0 extends ut{constructor(e){super(),ct(this,e,null,i0,at,{})}}function xr(n){let e,t;return{c(){e=f("div"),t=H(n[2]),r(e,"class","error-msg svelte-1fx1e1e")},m(l,i){C(l,e,i),a(e,t)},p(l,i){i[0]&4&&Q(t,l[2])},d(l){l&&S(e)}}}function $r(n){let e,t;return{c(){e=f("div"),t=H(n[3]),r(e,"class","result-msg svelte-1fx1e1e"),ce(e,"warning",n[4]==="warning")},m(l,i){C(l,e,i),a(e,t)},p(l,i){i[0]&8&&Q(t,l[3]),i[0]&16&&ce(e,"warning",l[4]==="warning")},d(l){l&&S(e)}}}function o0(n){let e,t,l,i,o,s,c,u,d,p,h,m,g,b,v,y,E,T,N,A,I,O,R=k("settings.checkConnection")+"",D,B,j,U,z=k("common.connect")+"",W,K,Y,F,L,M=n[11]!==null&&ea(n);return{c(){e=f("div"),t=f("div"),l=f("div"),i=f("label"),o=f("span"),o.textContent=`${k("settings.serverUrl")}`,s=w(),c=f("input"),u=w(),d=f("div"),p=f("label"),h=f("span"),h.textContent=`${k("sync.username")}`,m=w(),g=f("input"),b=w(),v=f("div"),y=f("label"),E=f("span"),E.textContent=`${k("sync.password")}`,T=w(),N=f("input"),A=w(),I=f("div"),O=f("button"),D=H(R),j=w(),U=f("button"),W=H(z),Y=w(),M&&M.c(),r(o,"class","label-text"),r(c,"type","text"),r(c,"placeholder","https://example.com"),r(l,"class","form-group svelte-1fx1e1e"),r(h,"class","label-text"),r(g,"type","text"),r(d,"class","form-group svelte-1fx1e1e"),r(E,"class","label-text"),r(N,"type","password"),r(v,"class","form-group svelte-1fx1e1e"),r(O,"class","btn"),O.disabled=B=n[1]||!n[5],r(U,"class","btn btn-primary"),U.disabled=K=n[1]||!n[5]||!n[6]||!n[7],r(I,"class","sync-setup-actions svelte-1fx1e1e"),r(t,"class","sync-setup svelte-1fx1e1e"),r(e,"class","settings-card svelte-1fx1e1e")},m(q,X){C(q,e,X),a(e,t),a(t,l),a(l,i),a(i,o),a(i,s),a(i,c),Me(c,n[5]),a(t,u),a(t,d),a(d,p),a(p,h),a(p,m),a(p,g),Me(g,n[6]),a(t,b),a(t,v),a(v,y),a(y,E),a(y,T),a(y,N),Me(N,n[7]),a(t,A),a(t,I),a(I,O),a(O,D),a(I,j),a(I,U),a(U,W),a(t,Y),M&&M.m(t,null),F||(L=[P(c,"input",n[23]),P(g,"input",n[24]),P(N,"input",n[25]),P(O,"click",n[12]),P(U,"click",n[13])],F=!0)},p(q,X){X[0]&32&&c.value!==q[5]&&Me(c,q[5]),X[0]&64&&g.value!==q[6]&&Me(g,q[6]),X[0]&128&&N.value!==q[7]&&Me(N,q[7]),X[0]&34&&B!==(B=q[1]||!q[5])&&(O.disabled=B),X[0]&226&&K!==(K=q[1]||!q[5]||!q[6]||!q[7])&&(U.disabled=K),q[11]!==null?M?M.p(q,X):(M=ea(q),M.c(),M.m(t,null)):M&&(M.d(1),M=null)},d(q){q&&S(e),M&&M.d(),F=!1,Ce(L)}}}function r0(n){let e,t,l,i,o,s,c=n[20](n[0].lastStatus)+"",u,d,p,h,m,g,b,v,y,E=k("settings.syncNow")+"",T,N,A,I=k("settings.disconnect")+"",O,R,D,B=k("settings.resetKey")+"",j,U,z,W,K,Y,F,L,M,q,X,Z,J=n[0].serverUrl&&ta(n),ee=n[0].deviceName&&na(n),te=n[0].deviceId&&la(n),le=n[0].lastSyncAt&&ia(n),_e=n[0].lastError&&sa(n);return{c(){e=f("div"),t=f("div"),l=f("div"),i=f("span"),i.textContent=`${k("settings.status")}`,o=w(),s=f("span"),u=H(c),d=w(),J&&J.c(),p=w(),ee&&ee.c(),h=w(),te&&te.c(),m=w(),le&&le.c(),g=w(),_e&&_e.c(),b=w(),v=f("div"),y=f("button"),T=H(E),N=w(),A=f("button"),O=H(I),R=w(),D=f("button"),j=H(B),U=w(),z=f("div"),W=f("label"),K=f("span"),K.textContent=`${k("sync.interval")}`,Y=w(),F=f("div"),L=f("input"),M=w(),q=f("button"),q.textContent=`${k("common.save")}`,r(i,"class","info-label svelte-1fx1e1e"),r(s,"class","info-value svelte-1fx1e1e"),ce(s,"status-ok",n[0].lastStatus==="connected"),ce(s,"status-err",n[0].lastStatus==="error"||n[0].lastStatus==="revoked"),r(l,"class","info-row svelte-1fx1e1e"),r(t,"class","sync-info svelte-1fx1e1e"),r(e,"class","settings-card svelte-1fx1e1e"),r(y,"class","btn btn-primary"),y.disabled=n[1],r(A,"class","btn"),A.disabled=n[1],r(D,"class","btn"),D.disabled=n[1],r(v,"class","sync-actions svelte-1fx1e1e"),r(K,"class","label-text"),r(L,"type","number"),r(L,"min","0"),r(L,"placeholder","0"),r(L,"class","svelte-1fx1e1e"),r(q,"class","btn btn-sm"),r(F,"class","interval-row svelte-1fx1e1e"),r(z,"class","sync-interval svelte-1fx1e1e")},m(oe,ze){C(oe,e,ze),a(e,t),a(t,l),a(l,i),a(l,o),a(l,s),a(s,u),a(t,d),J&&J.m(t,null),a(t,p),ee&&ee.m(t,null),a(t,h),te&&te.m(t,null),a(t,m),le&&le.m(t,null),a(t,g),_e&&_e.m(t,null),C(oe,b,ze),C(oe,v,ze),a(v,y),a(y,T),a(v,N),a(v,A),a(A,O),a(v,R),a(v,D),a(D,j),C(oe,U,ze),C(oe,z,ze),a(z,W),a(W,K),a(W,Y),a(W,F),a(F,L),Me(L,n[8]),a(F,M),a(F,q),X||(Z=[P(y,"click",n[14]),P(A,"click",n[16]),P(D,"click",n[18]),P(L,"input",n[22]),P(q,"click",n[15])],X=!0)},p(oe,ze){ze[0]&1&&c!==(c=oe[20](oe[0].lastStatus)+"")&&Q(u,c),ze[0]&1&&ce(s,"status-ok",oe[0].lastStatus==="connected"),ze[0]&1&&ce(s,"status-err",oe[0].lastStatus==="error"||oe[0].lastStatus==="revoked"),oe[0].serverUrl?J?J.p(oe,ze):(J=ta(oe),J.c(),J.m(t,p)):J&&(J.d(1),J=null),oe[0].deviceName?ee?ee.p(oe,ze):(ee=na(oe),ee.c(),ee.m(t,h)):ee&&(ee.d(1),ee=null),oe[0].deviceId?te?te.p(oe,ze):(te=la(oe),te.c(),te.m(t,m)):te&&(te.d(1),te=null),oe[0].lastSyncAt?le?le.p(oe,ze):(le=ia(oe),le.c(),le.m(t,g)):le&&(le.d(1),le=null),oe[0].lastError?_e?_e.p(oe,ze):(_e=sa(oe),_e.c(),_e.m(t,null)):_e&&(_e.d(1),_e=null),ze[0]&2&&(y.disabled=oe[1]),ze[0]&2&&(A.disabled=oe[1]),ze[0]&2&&(D.disabled=oe[1]),ze[0]&256&&zl(L.value)!==oe[8]&&Me(L,oe[8])},d(oe){oe&&(S(e),S(b),S(v),S(U),S(z)),J&&J.d(),ee&&ee.d(),te&&te.d(),le&&le.d(),_e&&_e.d(),X=!1,Ce(Z)}}}function ea(n){let e,t=(n[11]?k("common.test")+" OK":k("error.generic"))+"",l;return{c(){e=f("div"),l=H(t),r(e,"class","connection-result svelte-1fx1e1e"),ce(e,"ok",n[11]),ce(e,"fail",!n[11])},m(i,o){C(i,e,o),a(e,l)},p(i,o){o[0]&2048&&t!==(t=(i[11]?k("common.test")+" OK":k("error.generic"))+"")&&Q(l,t),o[0]&2048&&ce(e,"ok",i[11]),o[0]&2048&&ce(e,"fail",!i[11])},d(i){i&&S(e)}}}function ta(n){let e,t,l,i,o=n[0].serverUrl+"",s;return{c(){e=f("div"),t=f("span"),t.textContent=`${k("settings.serverUrl")}`,l=w(),i=f("span"),s=H(o),r(t,"class","info-label svelte-1fx1e1e"),r(i,"class","info-value mono svelte-1fx1e1e"),r(e,"class","info-row svelte-1fx1e1e")},m(c,u){C(c,e,u),a(e,t),a(e,l),a(e,i),a(i,s)},p(c,u){u[0]&1&&o!==(o=c[0].serverUrl+"")&&Q(s,o)},d(c){c&&S(e)}}}function na(n){let e,t,l,i,o=n[0].deviceName+"",s;return{c(){e=f("div"),t=f("span"),t.textContent=`${k("settings.deviceName")}`,l=w(),i=f("span"),s=H(o),r(t,"class","info-label svelte-1fx1e1e"),r(i,"class","info-value svelte-1fx1e1e"),r(e,"class","info-row svelte-1fx1e1e")},m(c,u){C(c,e,u),a(e,t),a(e,l),a(e,i),a(i,s)},p(c,u){u[0]&1&&o!==(o=c[0].deviceName+"")&&Q(s,o)},d(c){c&&S(e)}}}function la(n){let e,t,l,i,o=n[0].deviceId+"",s;return{c(){e=f("div"),t=f("span"),t.textContent=`${k("settings.deviceId")}`,l=w(),i=f("span"),s=H(o),r(t,"class","info-label svelte-1fx1e1e"),r(i,"class","info-value mono svelte-1fx1e1e"),r(e,"class","info-row svelte-1fx1e1e")},m(c,u){C(c,e,u),a(e,t),a(e,l),a(e,i),a(i,s)},p(c,u){u[0]&1&&o!==(o=c[0].deviceId+"")&&Q(s,o)},d(c){c&&S(e)}}}function ia(n){let e,t,l,i,o=n[0].lastSyncAt+"",s;return{c(){e=f("div"),t=f("span"),t.textContent=`${k("settings.lastSync")}`,l=w(),i=f("span"),s=H(o),r(t,"class","info-label svelte-1fx1e1e"),r(i,"class","info-value svelte-1fx1e1e"),r(e,"class","info-row svelte-1fx1e1e")},m(c,u){C(c,e,u),a(e,t),a(e,l),a(e,i),a(i,s)},p(c,u){u[0]&1&&o!==(o=c[0].lastSyncAt+"")&&Q(s,o)},d(c){c&&S(e)}}}function sa(n){let e,t,l,i,o=n[0].lastError+"",s;return{c(){e=f("div"),t=f("span"),t.textContent=`${k("settings.lastError")}`,l=w(),i=f("span"),s=H(o),r(t,"class","info-label svelte-1fx1e1e"),r(i,"class","info-value error svelte-1fx1e1e"),r(e,"class","info-row svelte-1fx1e1e")},m(c,u){C(c,e,u),a(e,t),a(e,l),a(e,i),a(i,s)},p(c,u){u[0]&1&&o!==(o=c[0].lastError+"")&&Q(s,o)},d(c){c&&S(e)}}}function oa(n){let e,t,l,i,o,s,c,u,d,p,h,m;return{c(){e=f("button"),t=f("div"),l=f("h3"),l.textContent=`${k("settings.confirmDisconnect")}`,i=w(),o=f("p"),o.textContent=`${k("settings.confirmDisconnectDesc")}`,s=w(),c=f("div"),u=f("button"),u.textContent=`${k("common.disconnect")}`,d=w(),p=f("button"),p.textContent=`${k("common.cancel")}`,r(l,"class","svelte-1fx1e1e"),r(o,"class","modal-desc svelte-1fx1e1e"),r(u,"class","btn btn-danger"),r(p,"class","btn"),r(c,"class","modal-actions svelte-1fx1e1e"),r(t,"class","modal svelte-1fx1e1e"),r(e,"class","modal-overlay svelte-1fx1e1e")},m(g,b){C(g,e,b),a(e,t),a(t,l),a(t,i),a(t,o),a(t,s),a(t,c),a(c,u),a(c,d),a(c,p),h||(m=[P(u,"click",n[17]),P(p,"click",n[26]),P(e,"click",n[27])],h=!0)},p:se,d(g){g&&S(e),h=!1,Ce(m)}}}function ra(n){let e,t,l,i,o,s,c,u,d,p,h,m;return{c(){e=f("button"),t=f("div"),l=f("h3"),l.textContent=`${k("settings.confirmResetKey")}`,i=w(),o=f("p"),o.textContent=`${k("settings.confirmResetKeyDesc")}`,s=w(),c=f("div"),u=f("button"),u.textContent=`${k("settings.resetKey")}`,d=w(),p=f("button"),p.textContent=`${k("common.cancel")}`,r(l,"class","svelte-1fx1e1e"),r(o,"class","modal-desc svelte-1fx1e1e"),r(u,"class","btn btn-danger"),r(p,"class","btn"),r(c,"class","modal-actions svelte-1fx1e1e"),r(t,"class","modal svelte-1fx1e1e"),r(e,"class","modal-overlay svelte-1fx1e1e")},m(g,b){C(g,e,b),a(e,t),a(t,l),a(t,i),a(t,o),a(t,s),a(t,c),a(c,u),a(c,d),a(c,p),h||(m=[P(u,"click",n[19]),P(p,"click",n[28]),P(e,"click",n[29])],h=!0)},p:se,d(g){g&&S(e),h=!1,Ce(m)}}}function a0(n){let e,t,l,i,o,s,c,u,d,p,h=n[2]&&xr(n),m=n[3]&&!n[2]&&$r(n);function g(T,N){return T[0]&&T[0].enabled?r0:o0}let b=g(n),v=b(n),y=n[9]&&oa(n),E=n[10]&&ra(n);return{c(){e=f("div"),t=f("h2"),t.textContent=`${k("settings.sync")}`,l=w(),i=f("p"),i.textContent=`${k("settings.syncDesc")}`,o=w(),h&&h.c(),s=w(),m&&m.c(),c=w(),v.c(),u=w(),y&&y.c(),d=w(),E&&E.c(),p=kt(),r(t,"class","svelte-1fx1e1e"),r(i,"class","section-desc svelte-1fx1e1e"),r(e,"class","settings-section svelte-1fx1e1e")},m(T,N){C(T,e,N),a(e,t),a(e,l),a(e,i),a(e,o),h&&h.m(e,null),a(e,s),m&&m.m(e,null),a(e,c),v.m(e,null),C(T,u,N),y&&y.m(T,N),C(T,d,N),E&&E.m(T,N),C(T,p,N)},p(T,N){T[2]?h?h.p(T,N):(h=xr(T),h.c(),h.m(e,s)):h&&(h.d(1),h=null),T[3]&&!T[2]?m?m.p(T,N):(m=$r(T),m.c(),m.m(e,c)):m&&(m.d(1),m=null),b===(b=g(T))&&v?v.p(T,N):(v.d(1),v=b(T),v&&(v.c(),v.m(e,null))),T[9]?y?y.p(T,N):(y=oa(T),y.c(),y.m(d.parentNode,d)):y&&(y.d(1),y=null),T[10]?E?E.p(T,N):(E=ra(T),E.c(),E.m(p.parentNode,p)):E&&(E.d(1),E=null)},i:se,o:se,d(T){T&&(S(e),S(u),S(d),S(p)),h&&h.d(),m&&m.d(),v.d(),y&&y.d(T),E&&E.d(T)}}}function rl(n,...e){try{if(window.go&&window.go.main&&window.go.main.App){const t=window.go.main.App[n];if(typeof t=="function")return t(...e)}}catch(t){console.error("Wails error:",n,t)}return Promise.reject(new Error("Wails not connected: "+n))}function c0(n,e,t){let{onRefresh:l=null}=e,i=null,o=!1,s="",c="",u="",d="",p="",h="",m=0,g=!1,b=!1,v=null;async function y(){try{t(0,i=await rl("GetSyncSettings")),i&&(t(5,d=i.serverUrl||""),t(8,m=i.syncInterval||0))}catch{t(0,i=null)}}y();async function E(){t(1,o=!0),t(2,s=""),t(4,u=""),t(11,v=null);try{await rl("SyncTestConnection",d,p,h),t(11,v=!0),t(3,c="connection ok")}catch(q){t(11,v=!1),t(3,c="connection failed: "+String(q))}t(1,o=!1)}async function T(){t(1,o=!0),t(2,s=""),t(4,u="");try{await rl("SyncConfigure",d,p,h),t(3,c="configured"),t(6,p=""),t(7,h=""),await y(),l&&l()}catch(q){t(2,s=String(q))}t(1,o=!1)}function N(q){const X=Array.isArray(q==null?void 0:q.conflicts)?q.conflicts:[],Z=Array.isArray(q==null?void 0:q.applyErrors)?q.applyErrors:[],J=[];return X.length>0&&J.push(k("sync.conflictsCount",{count:X.length})),Z.length>0&&J.push(k("sync.applyErrorsCount",{count:Z.length})),J.join(" · ")}async function A(){t(1,o=!0),t(2,s=""),t(4,u="");try{const q=await rl("SyncNow"),X=k("sync.pushedPulled",{pushed:(q==null?void 0:q.pushed)||0,pulled:(q==null?void 0:q.pulled)||0}),Z=N(q);t(3,c=Z?X+" · "+Z:X),t(4,u=Z?"warning":""),await y(),l&&l()}catch(q){t(2,s=String(q))}t(1,o=!1)}async function I(){try{await rl("SyncSetInterval",m),t(3,c=k("sync.settingsSaved")),t(4,u="")}catch(q){t(2,s=String(q))}}function O(){t(9,g=!0)}async function R(){t(9,g=!1),t(1,o=!0),t(4,u="");try{await rl("SyncDisconnect"),t(3,c="disconnected"),await y(),l&&l()}catch(q){t(2,s=String(q))}t(1,o=!1)}function D(){t(10,b=!0)}async function B(){t(10,b=!1),t(1,o=!0),t(4,u="");try{await rl("ResetSyncKey"),t(3,c="key reset"),await y(),l&&l()}catch(q){t(2,s=String(q))}t(1,o=!1)}function j(q){return q?{connected:k("settings.connected"),disconnected:k("settings.disconnected"),disabled:k("settings.notConfigured"),error:k("settings.error"),revoked:k("settings.revoked")}[q]||q:k("settings.notConfigured")}function U(){m=zl(this.value),t(8,m)}function z(){d=this.value,t(5,d)}function W(){p=this.value,t(6,p)}function K(){h=this.value,t(7,h)}const Y=()=>t(9,g=!1),F=()=>t(9,g=!1),L=()=>t(10,b=!1),M=()=>t(10,b=!1);return n.$$set=q=>{"onRefresh"in q&&t(21,l=q.onRefresh)},[i,o,s,c,u,d,p,h,m,g,b,v,E,T,A,I,O,R,D,B,j,l,U,z,W,K,Y,F,L,M]}class u0 extends ut{constructor(e){super(),ct(this,e,c0,a0,at,{onRefresh:21},null,[-1,-1])}}function f0(n){let e,t,l,i;return{c(){e=f("div"),t=f("h2"),t.textContent=`${k("settings.backup")}`,l=w(),i=f("p"),i.textContent=`${k("settings.backupStub")}`,r(t,"class","svelte-19bo7bn"),r(i,"class","section-desc svelte-19bo7bn"),r(e,"class","settings-section svelte-19bo7bn")},m(o,s){C(o,e,s),a(e,t),a(e,l),a(e,i)},p:se,i:se,o:se,d(o){o&&S(e)}}}class d0 extends ut{constructor(e){super(),ct(this,e,null,f0,at,{})}}function aa(n){let e,t;return{c(){e=f("div"),t=H(n[5]),r(e,"class","status-msg svelte-13i6m7m"),ce(e,"ok",n[6]==="ok"),ce(e,"error",n[6]==="error")},m(l,i){C(l,e,i),a(e,t)},p(l,i){i&32&&Q(t,l[5]),i&64&&ce(e,"ok",l[6]==="ok"),i&64&&ce(e,"error",l[6]==="error")},d(l){l&&S(e)}}}function ca(n){let e,t,l,i,o,s;return{c(){e=f("div"),t=f("span"),t.textContent="Активный порт",l=w(),i=f("span"),o=H("127.0.0.1:"),s=H(n[3]),r(t,"class","info-label svelte-13i6m7m"),r(i,"class","info-value mono svelte-13i6m7m"),r(e,"class","info-row svelte-13i6m7m")},m(c,u){C(c,e,u),a(e,t),a(e,l),a(e,i),a(i,o),a(i,s)},p(c,u){u&8&&Q(s,c[3])},d(c){c&&S(e)}}}function ua(n){let e,t,l,i;return{c(){e=f("button"),t=H("Перезапустить сервер"),r(e,"class","btn"),e.disabled=n[4]},m(o,s){C(o,e,s),a(e,t),l||(i=P(e,"click",n[8]),l=!0)},p(o,s){s&16&&(e.disabled=o[4])},d(o){o&&S(e),l=!1,i()}}}function p0(n){let e,t,l,i,o,s,c,u,d,p,h,m,g,b,v,y,E,T,N,A,I,O,R,D,B,j,U,z=n[2]?"Запущен":"Остановлен",W,K,Y,F,L,M,q,X,Z,J=n[5]&&aa(n),ee=n[2]&&n[3]&&ca(n),te=n[0]&&ua(n);return{c(){e=f("div"),t=f("h2"),t.textContent="Browser Bridge",l=w(),i=f("p"),i.textContent=`Локальный HTTP-сервер для приёма событий от браузерного расширения Verstak Bridge. + Работает только на 127.0.0.1.`,o=w(),J&&J.c(),s=w(),c=f("div"),u=f("div"),d=f("label"),p=f("input"),h=w(),m=f("span"),m.textContent="Включить Browser Bridge",g=w(),b=f("div"),v=f("label"),y=f("span"),y.textContent="Порт",E=w(),T=f("input"),A=w(),I=f("p"),I.textContent="По умолчанию: 9786. Требуется перезапуск сервера при изменении.",O=w(),R=f("div"),D=f("div"),B=f("span"),B.textContent="Статус",j=w(),U=f("span"),W=H(z),K=w(),ee&&ee.c(),Y=w(),F=f("div"),L=f("button"),M=H("Сохранить"),q=w(),te&&te.c(),r(t,"class","svelte-13i6m7m"),r(i,"class","section-desc svelte-13i6m7m"),r(p,"type","checkbox"),r(m,"class","toggle-text svelte-13i6m7m"),r(d,"class","toggle-label svelte-13i6m7m"),r(u,"class","form-group svelte-13i6m7m"),r(y,"class","label-text svelte-13i6m7m"),r(T,"type","number"),r(T,"min","1024"),r(T,"max","65535"),T.disabled=N=!n[0],r(T,"class","svelte-13i6m7m"),r(I,"class","field-hint svelte-13i6m7m"),r(b,"class","form-group svelte-13i6m7m"),r(B,"class","info-label svelte-13i6m7m"),r(U,"class","info-value svelte-13i6m7m"),ce(U,"status-ok",n[2]),ce(U,"status-off",!n[2]),r(D,"class","info-row svelte-13i6m7m"),r(R,"class","bridge-status svelte-13i6m7m"),r(c,"class","settings-card svelte-13i6m7m"),r(L,"class","btn btn-primary"),L.disabled=n[4],r(F,"class","actions svelte-13i6m7m"),r(e,"class","settings-section svelte-13i6m7m")},m(le,_e){C(le,e,_e),a(e,t),a(e,l),a(e,i),a(e,o),J&&J.m(e,null),a(e,s),a(e,c),a(c,u),a(u,d),a(d,p),p.checked=n[0],a(d,h),a(d,m),a(c,g),a(c,b),a(b,v),a(v,y),a(v,E),a(v,T),Me(T,n[1]),a(b,A),a(b,I),a(c,O),a(c,R),a(R,D),a(D,B),a(D,j),a(D,U),a(U,W),a(R,K),ee&&ee.m(R,null),a(e,Y),a(e,F),a(F,L),a(L,M),a(F,q),te&&te.m(F,null),X||(Z=[P(p,"change",n[10]),P(T,"input",n[11]),P(L,"click",n[7])],X=!0)},p(le,[_e]){le[5]?J?J.p(le,_e):(J=aa(le),J.c(),J.m(e,s)):J&&(J.d(1),J=null),_e&1&&(p.checked=le[0]),_e&1&&N!==(N=!le[0])&&(T.disabled=N),_e&2&&zl(T.value)!==le[1]&&Me(T,le[1]),_e&4&&z!==(z=le[2]?"Запущен":"Остановлен")&&Q(W,z),_e&4&&ce(U,"status-ok",le[2]),_e&4&&ce(U,"status-off",!le[2]),le[2]&&le[3]?ee?ee.p(le,_e):(ee=ca(le),ee.c(),ee.m(R,null)):ee&&(ee.d(1),ee=null),_e&16&&(L.disabled=le[4]),le[0]?te?te.p(le,_e):(te=ua(le),te.c(),te.m(F,null)):te&&(te.d(1),te=null)},i:se,o:se,d(le){le&&S(e),J&&J.d(),ee&&ee.d(),te&&te.d(),X=!1,Ce(Z)}}}function h0(n,e,t){let{appConfig:l=null}=e,i=!1,o=9786,s=!1,c=0,u=!1,d="",p="";function h(){if(l&&l.vault&&l.vault.bridge){const E=l.vault.bridge;t(0,i=E.enabled!==!1),t(1,o=E.port||9786)}}async function m(){try{if(window.go&&window.go.main&&window.go.main.App){const E=await window.go.main.App.BridgeInfo();t(2,s=E.running||!1),t(3,c=E.port||0)}}catch{t(2,s=!1),t(3,c=0)}}h(),m();async function g(){t(4,u=!0),t(5,d=""),t(6,p="");try{l||t(9,l={}),l.vault||t(9,l.vault={},l),l.vault.bridge||t(9,l.vault.bridge={},l),t(9,l.vault.bridge.enabled=i,l),t(9,l.vault.bridge.port=o,l),window.go&&window.go.main&&window.go.main.App&&await window.go.main.App.SaveAppConfig(l),t(5,d="saved"),t(6,p="ok"),await m()}catch(E){t(5,d=String(E)),t(6,p="error")}t(4,u=!1)}async function b(){t(4,u=!0),t(5,d=""),t(6,p="");try{window.go&&window.go.main&&window.go.main.App&&await window.go.main.App.RestartBridge(),t(5,d="bridge restarted"),t(6,p="ok"),await m()}catch(E){t(5,d=String(E)),t(6,p="error")}t(4,u=!1)}function v(){i=this.checked,t(0,i)}function y(){o=zl(this.value),t(1,o)}return n.$$set=E=>{"appConfig"in E&&t(9,l=E.appConfig)},[i,o,s,c,u,d,p,g,b,l,v,y]}class m0 extends ut{constructor(e){super(),ct(this,e,h0,p0,at,{appConfig:9})}}const{window:g0}=Ls;function _0(n){let e,t;return e=new m0({props:{appConfig:n[2]}}),{c(){Qe(e.$$.fragment)},m(l,i){Ye(e,l,i),t=!0},p(l,i){const o={};i&4&&(o.appConfig=l[2]),e.$set(o)},i(l){t||(ge(e.$$.fragment,l),t=!0)},o(l){ke(e.$$.fragment,l),t=!1},d(l){Xe(e,l)}}}function b0(n){let e,t;return e=new d0({}),{c(){Qe(e.$$.fragment)},m(l,i){Ye(e,l,i),t=!0},p:se,i(l){t||(ge(e.$$.fragment,l),t=!0)},o(l){ke(e.$$.fragment,l),t=!1},d(l){Xe(e,l)}}}function k0(n){let e,t;return e=new u0({props:{onRefresh:n[7]}}),{c(){Qe(e.$$.fragment)},m(l,i){Ye(e,l,i),t=!0},p:se,i(l){t||(ge(e.$$.fragment,l),t=!0)},o(l){ke(e.$$.fragment,l),t=!1},d(l){Xe(e,l)}}}function v0(n){let e,t;return e=new s0({}),{c(){Qe(e.$$.fragment)},m(l,i){Ye(e,l,i),t=!0},p:se,i(l){t||(ge(e.$$.fragment,l),t=!0)},o(l){ke(e.$$.fragment,l),t=!1},d(l){Xe(e,l)}}}function w0(n){let e,t;return e=new l0({}),{c(){Qe(e.$$.fragment)},m(l,i){Ye(e,l,i),t=!0},p:se,i(l){t||(ge(e.$$.fragment,l),t=!0)},o(l){ke(e.$$.fragment,l),t=!1},d(l){Xe(e,l)}}}function y0(n){let e,t;return e=new t0({props:{onPluginToggle:n[0]}}),{c(){Qe(e.$$.fragment)},m(l,i){Ye(e,l,i),t=!0},p(l,i){const o={};i&1&&(o.onPluginToggle=l[0]),e.$set(o)},i(l){t||(ge(e.$$.fragment,l),t=!0)},o(l){ke(e.$$.fragment,l),t=!1},d(l){Xe(e,l)}}}function E0(n){let e,t;return e=new Vv({props:{onRefresh:n[3]}}),{c(){Qe(e.$$.fragment)},m(l,i){Ye(e,l,i),t=!0},p:se,i(l){t||(ge(e.$$.fragment,l),t=!0)},o(l){ke(e.$$.fragment,l),t=!1},d(l){Xe(e,l)}}}function T0(n){let e,t;return e=new jv({props:{onRefresh:n[3]}}),{c(){Qe(e.$$.fragment)},m(l,i){Ye(e,l,i),t=!0},p:se,i(l){t||(ge(e.$$.fragment,l),t=!0)},o(l){ke(e.$$.fragment,l),t=!1},d(l){Xe(e,l)}}}function S0(n){let e,t;return e=new Pv({props:{appConfig:n[2],onSave:n[6]}}),{c(){Qe(e.$$.fragment)},m(l,i){Ye(e,l,i),t=!0},p(l,i){const o={};i&4&&(o.appConfig=l[2]),e.$set(o)},i(l){t||(ge(e.$$.fragment,l),t=!0)},o(l){ke(e.$$.fragment,l),t=!1},d(l){Xe(e,l)}}}function C0(n){let e,t,l,i,o,s,c,u,d,p,h,m,g,b,v,y;d=new Lv({props:{activeSection:n[1],onSelect:n[4]}});const E=[S0,T0,E0,y0,w0,v0,k0,b0,_0],T=[];function N(A,I){return A[1]==="general"?0:A[1]==="workspace"?1:A[1]==="templates"?2:A[1]==="plugins"?3:A[1]==="files"?4:A[1]==="activity"?5:A[1]==="sync"?6:A[1]==="backup"?7:A[1]==="browserBridge"?8:-1}return~(m=N(n))&&(g=T[m]=E[m](n)),{c(){e=f("button"),t=f("div"),l=f("div"),i=f("h2"),i.textContent=`${k("settings.title")}`,o=w(),s=f("button"),s.innerHTML='',c=w(),u=f("div"),Qe(d.$$.fragment),p=w(),h=f("div"),g&&g.c(),r(i,"class","svelte-zf2zsc"),r(s,"class","close-btn svelte-zf2zsc"),r(s,"title",k("settings.close")),r(l,"class","settings-header svelte-zf2zsc"),r(h,"class","settings-content svelte-zf2zsc"),r(u,"class","settings-body svelte-zf2zsc"),r(t,"class","settings-window svelte-zf2zsc"),r(e,"class","settings-overlay svelte-zf2zsc")},m(A,I){C(A,e,I),a(e,t),a(t,l),a(l,i),a(l,o),a(l,s),a(t,c),a(t,u),Ye(d,u,null),a(u,p),a(u,h),~m&&T[m].m(h,null),b=!0,v||(y=[P(g0,"keydown",n[8]),P(s,"click",n[5]),P(e,"click",xt(n[5]))],v=!0)},p(A,[I]){const O={};I&2&&(O.activeSection=A[1]),d.$set(O);let R=m;m=N(A),m===R?~m&&T[m].p(A,I):(g&&(yt(),ke(T[R],1,1,()=>{T[R]=null}),Et()),~m?(g=T[m],g?g.p(A,I):(g=T[m]=E[m](A),g.c()),ge(g,1),g.m(h,null)):g=null)},i(A){b||(ge(d.$$.fragment,A),ge(g),b=!0)},o(A){ke(d.$$.fragment,A),ke(g),b=!1},d(A){A&&S(e),Xe(d),~m&&T[m].d(),v=!1,Ce(y)}}}function fa(n,...e){try{if(window.go&&window.go.main&&window.go.main.App){const t=window.go.main.App[n];if(typeof t=="function")return t(...e)}}catch(t){console.error("Wails error:",n,t)}return Promise.reject(new Error("Wails not connected: "+n))}function A0(n,e,t){let{onClose:l=null}=e,{onSyncRefresh:i=null}=e,{onPluginToggle:o=null}=e,{initialSection:s="general"}=e,c=s,u=null;async function d(){try{t(2,u=await fa("GetAppConfig"))}catch{t(2,u=null)}}d();function p(v){t(1,c=v)}function h(){l&&l()}async function m(v){try{await fa("SaveAppConfig",v),t(2,u=v)}catch(y){console.error(y)}}function g(){i&&i()}function b(v){v.key==="Escape"&&h()}return n.$$set=v=>{"onClose"in v&&t(9,l=v.onClose),"onSyncRefresh"in v&&t(10,i=v.onSyncRefresh),"onPluginToggle"in v&&t(0,o=v.onPluginToggle),"initialSection"in v&&t(11,s=v.initialSection)},[o,c,u,d,p,h,m,g,b,l,i,s]}class N0 extends ut{constructor(e){super(),ct(this,e,A0,C0,at,{onClose:9,onSyncRefresh:10,onPluginToggle:0,initialSection:11})}}function I0(n){let e,t,l,i,o,s,c,u;return{c(){e=f("div"),t=f("span"),l=w(),i=f("span"),i.textContent=`${k("sync.status.disabled")}`,o=w(),s=f("button"),s.textContent=`${k("sync.configure")}`,r(t,"class","sync-dot dot-disabled svelte-1rxbx0"),r(i,"class","sync-label svelte-1rxbx0"),r(s,"class","btn btn-xs svelte-1rxbx0"),r(e,"class","sync-status-row svelte-1rxbx0")},m(d,p){C(d,e,p),a(e,t),a(e,l),a(e,i),a(e,o),a(e,s),c||(u=P(s,"click",function(){pl(n[5])&&n[5].apply(this,arguments)}),c=!0)},p(d,p){n=d},d(d){d&&S(e),c=!1,u()}}}function R0(n){let e,t,l,i,o,s=n[7](n[0])+"",c,u,d,p,h,m=(n[1]?k("sync.running"):k("sync.run"))+"",g,b,v,y,E,T,N,A=n[0].unpushedOps>0&&da(n),I=n[2]&&pa(n);return{c(){e=f("div"),t=f("span"),i=w(),o=f("span"),c=H(s),u=w(),A&&A.c(),d=w(),p=f("div"),h=f("button"),g=H(m),b=w(),v=f("button"),v.textContent=`${k("sync.details")}`,y=w(),I&&I.c(),E=kt(),r(t,"class",l="sync-dot "+n[6](n[0])+" svelte-1rxbx0"),r(o,"class","sync-label svelte-1rxbx0"),r(h,"class","btn btn-xs svelte-1rxbx0"),h.disabled=n[1],r(v,"class","btn btn-xs btn-link svelte-1rxbx0"),r(p,"class","sync-actions-row svelte-1rxbx0"),r(e,"class","sync-status-row svelte-1rxbx0")},m(O,R){C(O,e,R),a(e,t),a(e,i),a(e,o),a(o,c),a(e,u),A&&A.m(e,null),a(e,d),a(e,p),a(p,h),a(h,g),a(p,b),a(p,v),C(O,y,R),I&&I.m(O,R),C(O,E,R),T||(N=[P(h,"click",function(){pl(n[4])&&n[4].apply(this,arguments)}),P(v,"click",function(){pl(n[5])&&n[5].apply(this,arguments)})],T=!0)},p(O,R){n=O,R&1&&l!==(l="sync-dot "+n[6](n[0])+" svelte-1rxbx0")&&r(t,"class",l),R&1&&s!==(s=n[7](n[0])+"")&&Q(c,s),n[0].unpushedOps>0?A?A.p(n,R):(A=da(n),A.c(),A.m(e,d)):A&&(A.d(1),A=null),R&2&&m!==(m=(n[1]?k("sync.running"):k("sync.run"))+"")&&Q(g,m),R&2&&(h.disabled=n[1]),n[2]?I?I.p(n,R):(I=pa(n),I.c(),I.m(E.parentNode,E)):I&&(I.d(1),I=null)},d(O){O&&(S(e),S(y),S(E)),A&&A.d(),I&&I.d(O),T=!1,Ce(N)}}}function da(n){let e,t=n[0].unpushedOps+"",l,i,o=k("sync.changes")+"",s;return{c(){e=f("span"),l=H(t),i=w(),s=H(o),r(e,"class","sync-count svelte-1rxbx0")},m(c,u){C(c,e,u),a(e,l),a(e,i),a(e,s)},p(c,u){u&1&&t!==(t=c[0].unpushedOps+"")&&Q(l,t)},d(c){c&&S(e)}}}function pa(n){let e,t,l;return{c(){e=f("div"),t=H(n[2]),r(e,"class",l=Ho(n[3]==="warning"?"sync-message sync-message-warning":"sync-message")+" svelte-1rxbx0")},m(i,o){C(i,e,o),a(e,t)},p(i,o){o&4&&Q(t,i[2]),o&8&&l!==(l=Ho(i[3]==="warning"?"sync-message sync-message-warning":"sync-message")+" svelte-1rxbx0")&&r(e,"class",l)},d(i){i&&S(e)}}}function M0(n){let e;function t(o,s){var c;return(c=o[0])!=null&&c.configured?R0:I0}let l=t(n),i=l(n);return{c(){e=f("div"),i.c(),r(e,"class","sync-status-widget svelte-1rxbx0")},m(o,s){C(o,e,s),i.m(e,null)},p(o,[s]){l===(l=t(o))&&i?i.p(o,s):(i.d(1),i=l(o),i&&(i.c(),i.m(e,null)))},i:se,o:se,d(o){o&&S(e),i.d()}}}function L0(n,e,t){let{syncStatus:l=null}=e,{syncLoading:i=!1}=e,{syncMessage:o=""}=e,{syncMessageKind:s=""}=e,{onSync:c=null}=e,{onOpenSettings:u=null}=e;function d(h){return!h||!h.configured?"dot-disabled":i?"dot-syncing":h.revoked?"dot-disabled":h.connected?"dot-connected":h.configured?"dot-warning":"dot-disabled"}function p(h){return!h||!h.configured?k("sync.status.disabled"):i?k("sync.status.syncing"):h.revoked?k("sync.status.error"):h.connected?k("sync.status.connected"):k("sync.status.disconnected")}return n.$$set=h=>{"syncStatus"in h&&t(0,l=h.syncStatus),"syncLoading"in h&&t(1,i=h.syncLoading),"syncMessage"in h&&t(2,o=h.syncMessage),"syncMessageKind"in h&&t(3,s=h.syncMessageKind),"onSync"in h&&t(4,c=h.onSync),"onOpenSettings"in h&&t(5,u=h.onOpenSettings)},[l,i,o,s,c,u,d,p]}class O0 extends ut{constructor(e){super(),ct(this,e,L0,M0,at,{syncStatus:0,syncLoading:1,syncMessage:2,syncMessageKind:3,onSync:4,onOpenSettings:5})}}function ha(n,e,t){const l=n.slice();return l[10]=e[t],l}function D0(n){let e,t=Te(n[0]),l=[];for(let i=0;i0&&ma(n),R=n[10].ts_start&&ga(n),D=n[10].status!=="pending"&&_a(n),B=n[10].selected_text&&ba(n),j=n[10].status==="pending"&&ka(n);return{c(){e=f("div"),t=f("div"),i=H(l),o=w(),s=f("div"),c=f("div"),d=H(u),p=w(),h=f("div"),g=H(m),v=w(),y=f("div"),O&&O.c(),E=w(),R&&R.c(),T=w(),D&&D.c(),N=w(),B&&B.c(),A=w(),j&&j.c(),I=w(),r(t,"class","event-icon svelte-slao4o"),r(c,"class","event-domain svelte-slao4o"),r(h,"class","event-title svelte-slao4o"),r(h,"title",b=n[10].title),r(y,"class","event-meta svelte-slao4o"),r(s,"class","event-body svelte-slao4o"),r(e,"class","event-item svelte-slao4o"),ce(e,"pending",n[10].status==="pending")},m(U,z){C(U,e,z),a(e,t),a(t,i),a(e,o),a(e,s),a(s,c),a(c,d),a(s,p),a(s,h),a(h,g),a(s,v),a(s,y),O&&O.m(y,null),a(y,E),R&&R.m(y,null),a(y,T),D&&D.m(y,null),a(s,N),B&&B.m(s,null),a(e,A),j&&j.m(e,null),a(e,I)},p(U,z){z&1&&l!==(l=wa(U[10].type)+"")&&Q(i,l),z&1&&u!==(u=(U[10].domain||"?")+"")&&Q(d,u),z&1&&m!==(m=Bi(U[10].title||U[10].url,80)+"")&&Q(g,m),z&1&&b!==(b=U[10].title)&&r(h,"title",b),U[10].active_seconds>0?O?O.p(U,z):(O=ma(U),O.c(),O.m(y,E)):O&&(O.d(1),O=null),U[10].ts_start?R?R.p(U,z):(R=ga(U),R.c(),R.m(y,T)):R&&(R.d(1),R=null),U[10].status!=="pending"?D?D.p(U,z):(D=_a(U),D.c(),D.m(y,null)):D&&(D.d(1),D=null),U[10].selected_text?B?B.p(U,z):(B=ba(U),B.c(),B.m(s,null)):B&&(B.d(1),B=null),U[10].status==="pending"?j?j.p(U,z):(j=ka(U),j.c(),j.m(e,I)):j&&(j.d(1),j=null),z&1&&ce(e,"pending",U[10].status==="pending")},d(U){U&&S(e),O&&O.d(),R&&R.d(),D&&D.d(),B&&B.d(),j&&j.d()}}}function q0(n){let e;return{c(){e=f("p"),e.textContent=`${k("noBrowserEvents","Нет событий браузера")}`,r(e,"class","empty-text svelte-slao4o")},m(t,l){C(t,e,l)},d(t){t&&S(e)}}}function z0(n){let e;return{c(){e=f("p"),e.textContent=`${k("loading","Загрузка...")}`,r(e,"class","loading svelte-slao4o")},m(t,l){C(t,e,l)},d(t){t&&S(e)}}}function B0(n){let e,t,l,i,o,s=n[1]?"⏳":"🔄",c,u,d,p;function h(b,v){return b[0].length===0?P0:D0}let m=h(n),g=m(n);return{c(){e=f("div"),t=f("div"),l=f("h3"),l.textContent=`${k("browserEvents","События браузера")}`,i=w(),o=f("button"),c=H(s),u=w(),g.c(),r(l,"class","svelte-slao4o"),r(o,"class","refresh-btn svelte-slao4o"),o.disabled=n[1],r(t,"class","browser-header svelte-slao4o"),r(e,"class","browser-events svelte-slao4o")},m(b,v){C(b,e,v),a(e,t),a(t,l),a(t,i),a(t,o),a(o,c),a(e,u),g.m(e,null),d||(p=P(o,"click",function(){pl(n[5])&&n[5].apply(this,arguments)}),d=!0)},p(b,[v]){n=b,v&2&&s!==(s=n[1]?"⏳":"🔄")&&Q(c,s),v&2&&(o.disabled=n[1]),m===(m=h(n))&&g?g.p(n,v):(g.d(1),g=m(n),g&&(g.c(),g.m(e,null)))},i:se,o:se,d(b){b&&S(e),g.d(),d=!1,p()}}}function wa(n){return n==="page_visit"?"🌐":n==="note_capture"?"📝":n==="screenshot"?"📸":"•"}function Bi(n,e){return n?n.length>e?n.substring(0,e)+"...":n:""}function F0(n,e,t){let{events:l=[]}=e,{loading:i=!1}=e,{onAccept:o=g=>{}}=e,{onDismiss:s=g=>{}}=e,{onAttach:c=g=>{}}=e,{onRefresh:u=()=>{}}=e,{formatTime:d=g=>""}=e;const p=g=>o(g),h=g=>c(g),m=g=>s(g);return n.$$set=g=>{"events"in g&&t(0,l=g.events),"loading"in g&&t(1,i=g.loading),"onAccept"in g&&t(2,o=g.onAccept),"onDismiss"in g&&t(3,s=g.onDismiss),"onAttach"in g&&t(4,c=g.onAttach),"onRefresh"in g&&t(5,u=g.onRefresh),"formatTime"in g&&t(6,d=g.formatTime)},[l,i,o,s,c,u,d,p,h,m]}class j0 extends ut{constructor(e){super(),ct(this,e,F0,B0,at,{events:0,loading:1,onAccept:2,onDismiss:3,onAttach:4,onRefresh:5,formatTime:6})}}function ya(n,e,t){const l=n.slice();return l[69]=e[t],l}function Ea(n,e,t){const l=n.slice();return l[69]=e[t],l}function Ta(n,e,t){const l=n.slice();return l[64]=e[t],l[65]=e,l[66]=t,l}function Sa(n,e,t){const l=n.slice();return l[61]=e[t],l}function Ca(n,e,t){const l=n.slice();return l[61]=e[t],l}function Aa(n){let e,t;return{c(){e=f("span"),t=H(n[4]),r(e,"class","tab-badge svelte-ii7vwz")},m(l,i){C(l,e,i),a(e,t)},p(l,i){i[0]&16&&Q(t,l[4])},d(l){l&&S(e)}}}function Na(n){let e,t=n[3].length+"",l;return{c(){e=f("span"),l=H(t),r(e,"class","tab-badge svelte-ii7vwz")},m(i,o){C(i,e,o),a(e,l)},p(i,o){o[0]&8&&t!==(t=i[3].length+"")&&Q(l,t)},d(i){i&&S(e)}}}function Ia(n){let e,t=n[15].length+"",l;return{c(){e=f("span"),l=H(t),r(e,"class","tab-badge svelte-ii7vwz")},m(i,o){C(i,e,o),a(e,l)},p(i,o){o[0]&32768&&t!==(t=i[15].length+"")&&Q(l,t)},d(i){i&&S(e)}}}function U0(n){let e,t,l;return t=new j0({props:{events:n[15],loading:n[16],formatTime:n[5],onAccept:n[17],onDismiss:n[18],onAttach:n[19],onRefresh:n[20]}}),{c(){e=f("div"),Qe(t.$$.fragment),r(e,"class","today-tab-content svelte-ii7vwz")},m(i,o){C(i,e,o),Ye(t,e,null),l=!0},p(i,o){const s={};o[0]&32768&&(s.events=i[15]),o[0]&65536&&(s.loading=i[16]),o[0]&32&&(s.formatTime=i[5]),o[0]&131072&&(s.onAccept=i[17]),o[0]&262144&&(s.onDismiss=i[18]),o[0]&524288&&(s.onAttach=i[19]),o[0]&1048576&&(s.onRefresh=i[20]),t.$set(s)},i(i){l||(ge(t.$$.fragment,i),l=!0)},o(i){ke(t.$$.fragment,i),l=!1},d(i){i&&S(e),Xe(t)}}}function H0(n){let e,t,l,i,o,s,c,u,d,p,h=n[25]==="asc"?"↑":"↓",m,g,b,v;function y(N,A){return N[3].length===0?Z0:V0}let E=y(n),T=E(n);return{c(){e=f("div"),t=f("div"),l=f("div"),i=f("button"),i.textContent=`${k("today.sortByTime")}`,o=w(),s=f("button"),s.textContent=`${k("today.sortByName")}`,c=w(),u=f("button"),u.textContent=`${k("today.sortByType")}`,d=w(),p=f("span"),m=H(h),g=w(),T.c(),r(i,"class","sort-btn svelte-ii7vwz"),ce(i,"active",n[24]==="time"),r(s,"class","sort-btn svelte-ii7vwz"),ce(s,"active",n[24]==="name"),r(u,"class","sort-btn svelte-ii7vwz"),ce(u,"active",n[24]==="type"),r(p,"class","sort-dir svelte-ii7vwz"),r(l,"class","sort-controls svelte-ii7vwz"),r(t,"class","tab-controls svelte-ii7vwz"),r(e,"class","today-tab-content svelte-ii7vwz")},m(N,A){C(N,e,A),a(e,t),a(t,l),a(l,i),a(l,o),a(l,s),a(l,c),a(l,u),a(l,d),a(l,p),a(p,m),a(e,g),T.m(e,null),b||(v=[P(i,"click",n[56]),P(s,"click",n[57]),P(u,"click",n[58])],b=!0)},p(N,A){A[0]&16777216&&ce(i,"active",N[24]==="time"),A[0]&16777216&&ce(s,"active",N[24]==="name"),A[0]&16777216&&ce(u,"active",N[24]==="type"),A[0]&33554432&&h!==(h=N[25]==="asc"?"↑":"↓")&&Q(m,h),E===(E=y(N))&&T?T.p(N,A):(T.d(1),T=E(N),T&&(T.c(),T.m(e,null)))},i:se,o:se,d(N){N&&S(e),T.d(),b=!1,Ce(v)}}}function W0(n){let e,t,l,i,o,s,c,u,d,p,h=n[23]==="asc"?"↑":"↓",m,g,b,v;function y(N,A){return N[2].length===0?X0:Y0}let E=y(n),T=E(n);return{c(){e=f("div"),t=f("div"),l=f("div"),i=f("button"),i.textContent=`${k("today.sortByTime")}`,o=w(),s=f("button"),s.textContent=`${k("today.sortByName")}`,c=w(),u=f("button"),u.textContent=`${k("today.sortByType")}`,d=w(),p=f("span"),m=H(h),g=w(),T.c(),r(i,"class","sort-btn svelte-ii7vwz"),ce(i,"active",n[22]==="time"),r(s,"class","sort-btn svelte-ii7vwz"),ce(s,"active",n[22]==="name"),r(u,"class","sort-btn svelte-ii7vwz"),ce(u,"active",n[22]==="type"),r(p,"class","sort-dir svelte-ii7vwz"),r(l,"class","sort-controls svelte-ii7vwz"),r(t,"class","tab-controls svelte-ii7vwz"),r(e,"class","today-tab-content svelte-ii7vwz")},m(N,A){C(N,e,A),a(e,t),a(t,l),a(l,i),a(l,o),a(l,s),a(l,c),a(l,u),a(l,d),a(l,p),a(p,m),a(e,g),T.m(e,null),b||(v=[P(i,"click",n[51]),P(s,"click",n[52]),P(u,"click",n[53])],b=!0)},p(N,A){A[0]&4194304&&ce(i,"active",N[22]==="time"),A[0]&4194304&&ce(s,"active",N[22]==="name"),A[0]&4194304&&ce(u,"active",N[22]==="type"),A[0]&8388608&&h!==(h=N[23]==="asc"?"↑":"↓")&&Q(m,h),E===(E=y(N))&&T?T.p(N,A):(T.d(1),T=E(N),T&&(T.c(),T.m(e,null)))},i:se,o:se,d(N){N&&S(e),T.d(),b=!1,Ce(v)}}}function G0(n){let e;function t(o,s){return o[0].length===0?Q0:J0}let l=t(n),i=l(n);return{c(){e=f("div"),i.c(),r(e,"class","today-tab-content svelte-ii7vwz")},m(o,s){C(o,e,s),i.m(e,null)},p(o,s){l===(l=t(o))&&i?i.p(o,s):(i.d(1),i=l(o),i&&(i.c(),i.m(e,null)))},i:se,o:se,d(o){o&&S(e),i.d()}}}function K0(n){let e;function t(o,s){return!o[1]||!o[1].events||o[1].events.length===0?$0:x0}let l=t(n),i=l(n);return{c(){e=f("div"),i.c(),r(e,"class","today-tab-content svelte-ii7vwz")},m(o,s){C(o,e,s),i.m(e,null)},p(o,s){l===(l=t(o))&&i?i.p(o,s):(i.d(1),i=l(o),i&&(i.c(),i.m(e,null)))},i:se,o:se,d(o){o&&S(e),i.d()}}}function V0(n){let e,t=Te(Ha(n[3],n[24],n[25])),l=[];for(let i=0;i0&&Oa(n);function te(...ne){return n[43](n[64],n[65],n[66],...ne)}function le(){return n[44](n[64])}function _e(){return n[45](n[64])}function oe(){return n[46](n[64])}function ze(){return n[47](n[64],n[65],n[66])}function Ge(...ne){return n[48](n[64],n[65],n[66],...ne)}let Ie=n[64]._expanded&&n[64].events&&n[64].events.length>0&&Da(n);return{c(){e=f("div"),t=f("div"),l=f("div"),i=f("button"),s=H(o),c=w(),u=f("span"),p=H(d),h=w(),m=f("span"),b=H(g),v=w(),E=H(y),ee&&ee.c(),T=w(),N=f("div"),A=f("span"),R=w(),D=f("input"),j=w(),U=f("span"),U.textContent=`${k("suggest.minutes")}`,z=w(),W=f("button"),W.textContent=`${k("suggest.edit")}`,K=w(),Y=f("button"),Y.textContent=`${k("suggest.apply")}`,F=w(),L=f("button"),L.textContent=`${k("common.delete")}`,M=w(),Ie&&Ie.c(),q=w(),r(i,"class","suggestion-node link-btn svelte-ii7vwz"),r(u,"class","suggestion-summary svelte-ii7vwz"),r(m,"class","suggestion-meta svelte-ii7vwz"),r(l,"class","suggestion-info svelte-ii7vwz"),r(A,"class","suggestion-confidence-dot svelte-ii7vwz"),r(A,"title",I=k("suggest.confidence."+n[64].confidence)),r(A,"aria-label",O=k("suggest.confidence."+n[64].confidence)),ce(A,"low",n[64].confidence==="low"),ce(A,"medium",n[64].confidence==="medium"),ce(A,"high",n[64].confidence==="high"),r(D,"type","number"),r(D,"class","suggestion-min-input svelte-ii7vwz"),D.value=B=n[64].suggestedMin,r(D,"min","1"),r(D,"max","480"),r(U,"class","suggestion-min-label svelte-ii7vwz"),r(W,"class","btn btn-sm svelte-ii7vwz"),r(Y,"class","btn btn-sm btn-primary svelte-ii7vwz"),r(L,"class","btn btn-sm btn-danger svelte-ii7vwz"),r(N,"class","suggestion-actions svelte-ii7vwz"),r(t,"class","suggestion-main svelte-ii7vwz"),r(t,"role","button"),r(t,"tabindex","0"),r(e,"class","suggestion-card svelte-ii7vwz"),ce(e,"expanded",n[64]._expanded)},m(ne,re){C(ne,e,re),a(e,t),a(t,l),a(l,i),a(i,s),a(l,c),a(l,u),a(u,p),a(l,h),a(l,m),a(m,b),a(m,v),a(m,E),ee&&ee.m(m,null),a(t,T),a(t,N),a(N,A),a(N,R),a(N,D),a(N,j),a(N,U),a(N,z),a(N,W),a(N,K),a(N,Y),a(N,F),a(N,L),a(e,M),Ie&&Ie.m(e,null),a(e,q),X||(Z=[P(i,"click",We(J)),P(D,"change",We(te)),P(W,"click",We(le)),P(Y,"click",We(_e)),P(L,"click",We(oe)),P(t,"click",ze),P(t,"keydown",Ge)],X=!0)},p(ne,re){n=ne,re[0]&1&&o!==(o=n[64].nodeTitle+"")&&Q(s,o),re[0]&1&&d!==(d=n[64].summary+"")&&Q(p,d),re[0]&1&&g!==(g=n[64].suggestedMin+"")&&Q(b,g),n[64].events&&n[64].events.length>0?ee?ee.p(n,re):(ee=Oa(n),ee.c(),ee.m(m,null)):ee&&(ee.d(1),ee=null),re[0]&1&&I!==(I=k("suggest.confidence."+n[64].confidence))&&r(A,"title",I),re[0]&1&&O!==(O=k("suggest.confidence."+n[64].confidence))&&r(A,"aria-label",O),re[0]&1&&ce(A,"low",n[64].confidence==="low"),re[0]&1&&ce(A,"medium",n[64].confidence==="medium"),re[0]&1&&ce(A,"high",n[64].confidence==="high"),re[0]&1&&B!==(B=n[64].suggestedMin)&&D.value!==B&&(D.value=B),n[64]._expanded&&n[64].events&&n[64].events.length>0?Ie?Ie.p(n,re):(Ie=Da(n),Ie.c(),Ie.m(e,q)):Ie&&(Ie.d(1),Ie=null),re[0]&1&&ce(e,"expanded",n[64]._expanded)},d(ne){ne&&S(e),ee&&ee.d(),Ie&&Ie.d(),X=!1,Ce(Z)}}}function x0(n){let e,t=Te(n[1].events),l=[];for(let i=0;i',K=w(),r(t,"class","feed-icon svelte-ii7vwz"),r(u,"class","feed-type svelte-ii7vwz"),r(m,"class","feed-colon svelte-ii7vwz"),r(b,"class","feed-title link-btn svelte-ii7vwz"),r(c,"class","feed-title-line svelte-ii7vwz"),r(I,"class","feed-event-type svelte-ii7vwz"),r(B,"class","feed-time svelte-ii7vwz"),r(T,"class","feed-meta-line svelte-ii7vwz"),r(s,"class","feed-body svelte-ii7vwz"),r(W,"class","feed-nav-btn svelte-ii7vwz"),r(W,"title",k("common.open")),r(e,"class","feed-item svelte-ii7vwz"),r(e,"role","button"),r(e,"tabindex","0")},m(Z,J){C(Z,e,J),a(e,t),a(t,i),a(e,o),a(e,s),a(s,c),a(c,u),a(u,p),a(c,h),a(c,m),a(c,g),a(c,b),a(b,y),a(s,E),a(s,T),L&&L.m(T,null),a(T,A),a(T,I),a(I,R),a(T,D),a(T,B),a(B,U),a(e,z),a(e,W),a(e,K),Y||(F=[P(W,"click",We(M)),P(e,"click",q),P(e,"keydown",X)],Y=!0)},p(Z,J){n=Z,J[0]&2&&l!==(l=Ua(n[61].eventType)+"")&&Q(i,l),J[0]&2&&d!==(d=n[28](n[61])+"")&&Q(p,d),J[0]&2&&v!==(v=(n[61].title||"")+"")&&Q(y,v),J[0]&2&&(N=Fi(n[61])),N?L?L.p(n,J):(L=Fa(n),L.c(),L.m(T,A)):L&&(L.d(1),L=null),J[0]&66&&O!==(O=n[6](n[61].eventType)+"")&&Q(R,O),J[0]&34&&j!==(j=n[5](n[61].createdAt)+"")&&Q(U,j)},d(Z){Z&&S(e),L&&L.d(),Y=!1,Ce(F)}}}function e2(n){var X;let e,t,l,i=(((X=n[1])==null?void 0:X.date)||"")+"",o,s,c,u,d,p,h=k("today.suggestionsTab")+"",m,g,b,v,y,E,T=k("today.captured")+"",N,A,I,O,R,D,B,j,U,z,W,K=n[4]>0&&Aa(n),Y=n[3].length>0&&Na(n),F=n[15].length>0&&Ia(n);const L=[K0,G0,W0,H0,U0],M=[];function q(Z,J){return Z[21]==="feed"?0:Z[21]==="suggestions"?1:Z[21]==="inprogress"?2:Z[21]==="captured"?3:Z[21]==="browser"?4:-1}return~(B=q(n))&&(j=M[B]=L[B](n)),{c(){e=f("div"),t=f("div"),l=f("span"),o=H(i),s=w(),c=f("div"),u=f("button"),u.textContent=`${k("today.feed")}`,d=w(),p=f("button"),m=H(h),g=w(),K&&K.c(),b=w(),v=f("button"),v.textContent=`${k("today.inProgress")}`,y=w(),E=f("button"),N=H(T),A=w(),Y&&Y.c(),I=w(),O=f("button"),R=H(`Браузер + `),F&&F.c(),D=w(),j&&j.c(),r(l,"class","today-date svelte-ii7vwz"),r(t,"class","today-header svelte-ii7vwz"),r(u,"class","today-tab svelte-ii7vwz"),ce(u,"active",n[21]==="feed"),r(p,"class","today-tab svelte-ii7vwz"),ce(p,"active",n[21]==="suggestions"),r(v,"class","today-tab svelte-ii7vwz"),ce(v,"active",n[21]==="inprogress"),r(E,"class","today-tab svelte-ii7vwz"),ce(E,"active",n[21]==="captured"),r(O,"class","today-tab svelte-ii7vwz"),ce(O,"active",n[21]==="browser"),r(c,"class","today-tabs svelte-ii7vwz"),r(e,"class","today-screen svelte-ii7vwz")},m(Z,J){C(Z,e,J),a(e,t),a(t,l),a(l,o),a(e,s),a(e,c),a(c,u),a(c,d),a(c,p),a(p,m),a(p,g),K&&K.m(p,null),a(c,b),a(c,v),a(c,y),a(c,E),a(E,N),a(E,A),Y&&Y.m(E,null),a(c,I),a(c,O),a(O,R),F&&F.m(O,null),a(e,D),~B&&M[B].m(e,null),U=!0,z||(W=[P(u,"click",n[34]),P(p,"click",n[35]),P(v,"click",n[36]),P(E,"click",n[37]),P(O,"click",n[38])],z=!0)},p(Z,J){var te;(!U||J[0]&2)&&i!==(i=(((te=Z[1])==null?void 0:te.date)||"")+"")&&Q(o,i),(!U||J[0]&2097152)&&ce(u,"active",Z[21]==="feed"),Z[4]>0?K?K.p(Z,J):(K=Aa(Z),K.c(),K.m(p,null)):K&&(K.d(1),K=null),(!U||J[0]&2097152)&&ce(p,"active",Z[21]==="suggestions"),(!U||J[0]&2097152)&&ce(v,"active",Z[21]==="inprogress"),Z[3].length>0?Y?Y.p(Z,J):(Y=Na(Z),Y.c(),Y.m(E,null)):Y&&(Y.d(1),Y=null),(!U||J[0]&2097152)&&ce(E,"active",Z[21]==="captured"),Z[15].length>0?F?F.p(Z,J):(F=Ia(Z),F.c(),F.m(O,null)):F&&(F.d(1),F=null),(!U||J[0]&2097152)&&ce(O,"active",Z[21]==="browser");let ee=B;B=q(Z),B===ee?~B&&M[B].p(Z,J):(j&&(yt(),ke(M[ee],1,1,()=>{M[ee]=null}),Et()),~B?(j=M[B],j?j.p(Z,J):(j=M[B]=L[B](Z),j.c()),ge(j,1),j.m(e,null)):j=null)},i(Z){U||(ge(j),U=!0)},o(Z){ke(j),U=!1},d(Z){Z&&S(e),K&&K.d(),Y&&Y.d(),F&&F.d(),~B&&M[B].d(),z=!1,Ce(W)}}}function Ua(n){return n==="note_created"||n==="file_added"||n==="folder_added"||n==="node_created"?"+":n==="file_deleted"||n==="folder_deleted"?"×":n==="file_renamed"||n==="folder_renamed"||n==="node_updated"?"~":n==="file_copied"?"⧉":n==="file_moved"||n==="folder_moved"?"→":n==="note_updated"?"✎":n==="action_created"?"▶":n==="action_done"?"✓":n==="worklog_added"?"⏱":"•"}function Fi(n){const e=[];return n.nodePath&&e.push(n.nodePath),e.length>0?e.join(" → "):""}function Ha(n,e,t){const l=[...n];return l.sort((i,o)=>{let s=0;if(e==="name")s=(i.title||"").localeCompare(o.title||"");else if(e==="type"){const c=i.captureKind||i.sourceKind||"",u=o.captureKind||o.sourceKind||"";s=c.localeCompare(u)}else s=(i.capturedAt||i.createdAt||"").localeCompare(o.capturedAt||o.createdAt||"");return t==="asc"?s:-s}),l}function Wa(n){return{text:"📝",url:"🔗",file:"📄",image:"🖼",folder:"📁"}[n]||"📦"}function t2(n,e,t){let{todayDashboard:l=null}=e,{suggestions:i=[]}=e,{inProgressItems:o=[]}=e,{todayCaptures:s=[]}=e,{suggestionCount:c=0}=e,{formatTime:u=x=>""}=e,{eventLabel:d=x=>x}=e,{eventIcon:p=x=>""}=e,{inboxMetaText:h=x=>""}=e,{onOpenNodeById:m=x=>{}}=e,{onOpenActivityEvent:g=x=>{}}=e,{onOpenActivityTarget:b=x=>{}}=e,{onOpenSuggestionWorklog:v=x=>{}}=e,{onAcceptSuggestion:y=x=>{}}=e,{onDeleteSuggestion:E=x=>{}}=e,{onOpenNodeFolder:T=x=>{}}=e,{onOpenInboxArtifact:N=x=>{}}=e,{onOpenTrashNode:A=x=>{}}=e,{browserEvents:I=[]}=e,{browserLoading:O=!1}=e,{onBrowserAccept:R=x=>{}}=e,{onBrowserDismiss:D=x=>{}}=e,{onBrowserAttach:B=x=>{}}=e,{onBrowserRefresh:j=()=>{}}=e,U="feed";function z(x){y(x)}function W(x){E(x)}function K(x){return!x||!x.eventType?"":d(x.eventType)}function Y(x){if(!(!x||!x.eventType)){if(x.eventType==="folder_deleted"){x.targetId&&A(x.targetId);return}if(["file_added","file_deleted","file_renamed","file_copied","file_moved","folder_added","folder_renamed","folder_moved"].includes(x.eventType)){x.targetId?b(x):x.nodeId&&m(x.nodeId);return}if(["note_created","note_updated","note_deleted"].includes(x.eventType)){x.targetType==="note"&&x.targetId?b(x):x.nodeId&&m(x.nodeId);return}if(x.eventType==="worklog_added"){x.nodeId&&m(x.nodeId);return}if(["action_created","action_done"].includes(x.eventType)){x.nodeId&&m(x.nodeId);return}(x.id||x.nodeId)&&g(x)}}function F(x,ye,me){const Re=[...x];return Re.sort((ft,it)=>{let Ze=0;return ye==="name"?Ze=(ft.title||"").localeCompare(it.title||""):ye==="type"?Ze=(d(ft.eventType)||"").localeCompare(d(it.eventType)||""):Ze=(ft.createdAt||"").localeCompare(it.createdAt||""),me==="asc"?Ze:-Ze}),Re}let L="time",M="desc",q="time",X="desc";const Z=()=>t(21,U="feed"),J=()=>t(21,U="suggestions"),ee=()=>t(21,U="inprogress"),te=()=>t(21,U="captured"),le=()=>t(21,U="browser"),_e=x=>Y(x),oe=x=>Y(x),ze=(x,ye)=>ye.key==="Enter"&&Y(x),Ge=x=>m(x.nodeId),Ie=(x,ye,me,Re)=>t(0,ye[me].suggestedMin=parseInt(Re.target.value),i),ne=x=>v(x),re=x=>z(x),Ne=x=>W(x),Fe=(x,ye,me)=>t(0,ye[me]._expanded=!x._expanded,i),we=(x,ye,me,Re)=>Re.key==="Enter"&&t(0,ye[me]._expanded=!x._expanded,i),je=x=>b(x),xe=x=>T(x.nodeId),Ae=()=>{t(22,L="time"),t(23,M=L==="time"&&M==="desc"?"asc":"desc")},Ve=()=>{t(22,L="name"),t(23,M=L==="name"&&M==="desc"?"asc":"desc")},Ue=()=>{t(22,L="type"),t(23,M=L==="type"&&M==="desc"?"asc":"desc")},Se=x=>g(x),He=(x,ye)=>ye.key==="Enter"&&g(x),Oe=()=>{t(24,q="time"),t(25,X=q==="time"&&X==="desc"?"asc":"desc")},Ke=()=>{t(24,q="name"),t(25,X=q==="name"&&X==="desc"?"asc":"desc")},Pe=()=>{t(24,q="type"),t(25,X=q==="type"&&X==="desc"?"asc":"desc")},ue=x=>N(x),be=(x,ye)=>ye.key==="Enter"&&N(x);return n.$$set=x=>{"todayDashboard"in x&&t(1,l=x.todayDashboard),"suggestions"in x&&t(0,i=x.suggestions),"inProgressItems"in x&&t(2,o=x.inProgressItems),"todayCaptures"in x&&t(3,s=x.todayCaptures),"suggestionCount"in x&&t(4,c=x.suggestionCount),"formatTime"in x&&t(5,u=x.formatTime),"eventLabel"in x&&t(6,d=x.eventLabel),"eventIcon"in x&&t(7,p=x.eventIcon),"inboxMetaText"in x&&t(8,h=x.inboxMetaText),"onOpenNodeById"in x&&t(9,m=x.onOpenNodeById),"onOpenActivityEvent"in x&&t(10,g=x.onOpenActivityEvent),"onOpenActivityTarget"in x&&t(11,b=x.onOpenActivityTarget),"onOpenSuggestionWorklog"in x&&t(12,v=x.onOpenSuggestionWorklog),"onAcceptSuggestion"in x&&t(31,y=x.onAcceptSuggestion),"onDeleteSuggestion"in x&&t(32,E=x.onDeleteSuggestion),"onOpenNodeFolder"in x&&t(13,T=x.onOpenNodeFolder),"onOpenInboxArtifact"in x&&t(14,N=x.onOpenInboxArtifact),"onOpenTrashNode"in x&&t(33,A=x.onOpenTrashNode),"browserEvents"in x&&t(15,I=x.browserEvents),"browserLoading"in x&&t(16,O=x.browserLoading),"onBrowserAccept"in x&&t(17,R=x.onBrowserAccept),"onBrowserDismiss"in x&&t(18,D=x.onBrowserDismiss),"onBrowserAttach"in x&&t(19,B=x.onBrowserAttach),"onBrowserRefresh"in x&&t(20,j=x.onBrowserRefresh)},[i,l,o,s,c,u,d,p,h,m,g,b,v,T,N,I,O,R,D,B,j,U,L,M,q,X,z,W,K,Y,F,y,E,A,Z,J,ee,te,le,_e,oe,ze,Ge,Ie,ne,re,Ne,Fe,we,je,xe,Ae,Ve,Ue,Se,He,Oe,Ke,Pe,ue,be]}class n2 extends ut{constructor(e){super(),ct(this,e,t2,e2,at,{todayDashboard:1,suggestions:0,inProgressItems:2,todayCaptures:3,suggestionCount:4,formatTime:5,eventLabel:6,eventIcon:7,inboxMetaText:8,onOpenNodeById:9,onOpenActivityEvent:10,onOpenActivityTarget:11,onOpenSuggestionWorklog:12,onAcceptSuggestion:31,onDeleteSuggestion:32,onOpenNodeFolder:13,onOpenInboxArtifact:14,onOpenTrashNode:33,browserEvents:15,browserLoading:16,onBrowserAccept:17,onBrowserDismiss:18,onBrowserAttach:19,onBrowserRefresh:20},null,[-1,-1,-1])}}function l2(n){let e,t,l,i,o=n[3]&&Ga(n);return{c(){e=f("div"),o&&o.c(),t=w(),l=f("iframe"),r(l,"class","plugin-frame svelte-xgfxht"),r(l,"srcdoc",n[1]),r(l,"sandbox","allow-scripts allow-same-origin"),r(l,"title",i=n[0]+" panel"),r(e,"class","plugin-frame-container svelte-xgfxht")},m(s,c){C(s,e,c),o&&o.m(e,null),a(e,t),a(e,l),n[9](l)},p(s,c){s[3]?o?o.p(s,c):(o=Ga(s),o.c(),o.m(e,t)):o&&(o.d(1),o=null),c&2&&r(l,"srcdoc",s[1]),c&1&&i!==(i=s[0]+" panel")&&r(l,"title",i)},d(s){s&&S(e),o&&o.d(),n[9](null)}}}function i2(n){let e,t,l,i,o,s,c;return{c(){e=f("div"),t=f("p"),l=H("Плагин «"),i=H(n[0]),o=H("» активен, но HTML-панель не настроена."),s=w(),c=f("p"),c.innerHTML='Для отображения контента добавьте поле panel в plugin.json.',r(c,"class","hint"),r(e,"class","empty-state svelte-xgfxht")},m(u,d){C(u,e,d),a(e,t),a(t,l),a(t,i),a(t,o),a(e,s),a(e,c)},p(u,d){d&1&&Q(i,u[0])},d(u){u&&S(e)}}}function s2(n){let e;return{c(){e=f("p"),e.textContent="Загрузка…",r(e,"class","loading svelte-xgfxht")},m(t,l){C(t,e,l)},p:se,d(t){t&&S(e)}}}function Ga(n){let e,t,l;return{c(){e=f("div"),t=H("⚠ "),l=H(n[3]),r(e,"class","plugin-error-bar svelte-xgfxht")},m(i,o){C(i,e,o),a(e,t),a(e,l)},p(i,o){o&8&&Q(l,i[3])},d(i){i&&S(e)}}}function o2(n){let e;function t(o,s){return o[2]?s2:o[1]?l2:i2}let l=t(n),i=l(n);return{c(){e=f("div"),i.c(),r(e,"class","plugin-page svelte-xgfxht")},m(o,s){C(o,e,s),i.m(e,null)},p(o,[s]){l===(l=t(o))&&i?i.p(o,s):(i.d(1),i=l(o),i&&(i.c(),i.m(e,null)))},i:se,o:se,d(o){o&&S(e),i.d()}}}function al(n,...e){try{if(window.go&&window.go.main&&window.go.main.App){const t=window.go.main.App[n];if(typeof t=="function")return t(...e)}}catch(t){console.error("Wails error:",n,t)}return Promise.reject(new Error("Wails not connected: "+n))}function r2(n,e,t){let l,i,o,s,{sectionId:c=""}=e,u="",d=!0,p="",h=null,m=[],g=!1;function b(R){console.log("[CalendarPluginPage] postToIframe: iframeReady="+g+", hasEl="+!!h+", hasCW="+!!(h!=null&&h.contentWindow)),h&&h.contentWindow&&g?(console.log("[CalendarPluginPage] postToIframe: sending msg.type="+R.type),h.contentWindow.postMessage(R,"*")):(console.log("[CalendarPluginPage] postToIframe: queuing msg.type="+R.type),m.push(R))}function v(R){if(!h||!h.contentWindow||R.source!==h.contentWindow)return;const D=R.data;if(!(!D||typeof D!="object")&&!(!D.source||typeof D.source!="string")&&!(!D.action||typeof D.action!="string"))switch(D.action){case"ready":for(g=!0;m.length>0;)h.contentWindow.postMessage(m.shift(),"*");y();break;case"get-events":E(D.data);break;case"create-event":T(D.data);break;case"update-event":N(D.data);break;case"delete-event":A(D.data);break;default:console.log("[CalendarPluginPage] Unknown iframe action:",D.action)}}async function y(){try{console.log("[CalendarPluginPage] loadCalendarData: step 1");const R=new Date,D=R.getFullYear(),B=R.getMonth(),j=new Date(D,B,1).toISOString().slice(0,10)+"T00:00:00",U=new Date(D,B+1,0).toISOString().slice(0,10)+"T23:59:59";console.log("[CalendarPluginPage] loadCalendarData: step 2, start="+j+", end="+U),console.log("[CalendarPluginPage] loadCalendarData: step 3, calling get_events...");const z=al("CallPluginFunction",i,s+"get_events",JSON.stringify({start:j,end:U}));console.log("[CalendarPluginPage] loadCalendarData: step 4, calling get_categories...");const W=al("CallPluginFunction",i,s+"get_categories","{}");console.log("[CalendarPluginPage] loadCalendarData: step 5, awaiting Promise.all...");const[K,Y]=await Promise.all([z,W]);console.log("[CalendarPluginPage] loadCalendarData: step 6, got results, eventsRaw="+typeof K+", categoriesRaw="+typeof Y);const F=K?JSON.parse(K):[],L=Y?JSON.parse(Y):[];b({source:"verstak",type:"calendar-data",events:F,categories:L});try{window.go.main.App.WriteDebugLog("[CalendarPluginPage] calendar-data sent to iframe, events.len="+F.length+", categories.len="+((L==null?void 0:L.length)||0)+", typeof events="+typeof F+", typeof eventsRaw="+typeof K+", eventsRaw.length="+K.length+", eventsRaw.substr(0,10)="+String(K).substring(0,10))}catch{}}catch(R){console.error("[CalendarPluginPage] loadCalendarData:",R),console.log("[CalendarPluginPage] error details:",JSON.stringify({message:String(R),stack:R==null?void 0:R.stack})),t(3,p=String(R))}}async function E(R){try{const D=JSON.stringify({start:R.start,end:R.end}),B=await al("CallPluginFunction",i,s+"get_events",D),j=B?JSON.parse(B):[];b({source:"verstak",type:"calendar-data",events:j})}catch(D){console.error("[CalendarPluginPage] get-events:",D)}}async function T(R){try{const D=JSON.stringify(R),B=await al("CallPluginFunction",i,s+"create_event",D),j=B?JSON.parse(B):{};b({source:"verstak",type:"event-created",event:j}),y()}catch(D){console.error("[CalendarPluginPage] create-event:",D),b({source:"verstak",type:"error",message:String(D)})}}async function N(R){try{const D=JSON.stringify(R);await al("CallPluginFunction",i,s+"update_event",D),b({source:"verstak",type:"event-updated",event:R}),y()}catch(D){console.error("[CalendarPluginPage] update-event:",D)}}async function A(R){try{const D=JSON.stringify({id:R.id});await al("CallPluginFunction",i,s+"delete_event",D),b({source:"verstak",type:"event-deleted",id:R.id}),y()}catch(D){console.error("[CalendarPluginPage] delete-event:",D)}}li(async()=>{try{t(1,u=await al("GetPluginPanelHTML",i)||"")}catch(R){t(3,p=String(R))}t(2,d=!1),window.addEventListener("message",v)}),ii(()=>{window.removeEventListener("message",v)});function I(R,D){b({source:"verstak",type:"drop",date:D,data:R})}function O(R){In[R?"unshift":"push"](()=>{h=R,t(4,h)})}return n.$$set=R=>{"sectionId"in R&&t(5,c=R.sectionId)},n.$$.update=()=>{n.$$.dirty&32&&t(8,l=c.split(":")),n.$$.dirty&256&&t(0,i=l[1]||""),n.$$.dirty&256&&t(7,o=l[2]||"main"),n.$$.dirty&128&&o.charAt(0).toUpperCase()+o.slice(1),n.$$.dirty&1&&(s=i?i+".":"")},[i,u,d,p,h,c,I,o,l,O]}class a2 extends ut{constructor(e){super(),ct(this,e,r2,o2,at,{sectionId:5,handleDrop:6})}get handleDrop(){return this.$$.ctx[6]}}const Bd={й:"q",ц:"w",у:"e",к:"r",е:"t",н:"y",г:"u",ш:"i",щ:"o",з:"p",х:"[",ъ:"]",ф:"a",ы:"s",в:"d",а:"f",п:"g",р:"h",о:"j",л:"k",д:"l",ж:";",э:"'",я:"z",ч:"x",с:"c",м:"v",и:"b",т:"n",ь:"m",ю:",",ё:"`",Й:"Q",Ц:"W",У:"E",К:"R",Е:"T",Н:"Y",Г:"U",Ш:"I",Щ:"O",З:"P",Х:"{",Ъ:"}",Ф:"A",Ы:"S",В:"D",А:"F",П:"G",Р:"H",О:"J",Л:"K",Д:"L",Ж:":",Э:'"',Я:"Z",Ч:"X",С:"C",М:"V",И:"B",Т:"N",Ь:"M",Ю:"<",Ё:"~"},Fd={};for(const[n,e]of Object.entries(Bd))Fd[e]=n;function jd(n,e){let t="";for(const l of n)t+=e[l]??l;return t}function c2(n){return jd(n,Bd)}function u2(n){return jd(n,Fd)}function Ud(n){const e=new Set;e.add(n);const t=c2(n);t!==n&&e.add(t);const l=u2(n);l!==n&&e.add(l);const i=new Set;for(const o of e)i.add(o.toLowerCase());for(const o of i)e.add(o);return Array.from(e)}function Ka(n,e,t){const l=n.slice();return l[25]=e[t],l[27]=t,l}function Va(n){let e;function t(o,s){return o[3]?p2:o[1].length===0?d2:f2}let l=t(n),i=l(n);return{c(){e=f("div"),i.c(),r(e,"class","global-search-results svelte-1dlr37h")},m(o,s){C(o,e,s),i.m(e,null)},p(o,s){l===(l=t(o))&&i?i.p(o,s):(i.d(1),i=l(o),i&&(i.c(),i.m(e,null)))},d(o){o&&S(e),i.d()}}}function f2(n){let e,t=Te(n[1]),l=[];for(let i=0;i[]}=e,{typeLabel:i=z=>z||""}=e;const o=pn();let s="",c=[],u=!1,d=!1,p=0,h,m;function g(z){const W=[],K=i(z.type),Y=m2(z);return K&&W.push(K),Y&&W.push(Y),W.join(" · ")}async function b(){const z=Hd(s);if(z.length<2){t(1,c=[]),t(2,u=!1),t(3,d=!1);return}t(3,d=!0);try{const W=Ud(z),K=new Set,Y=[];for(const M of W)K.has(M)||(K.add(M),Y.push(M));const F=await Promise.all(Y.map(M=>l("Search",M).catch(()=>[]))),L=new Map;for(let M=0;M0)}catch{t(1,c=[]),t(2,u=!1)}finally{t(3,d=!1)}}function v(){clearTimeout(m),m=setTimeout(b,180)}function y(){t(2,u=!1),t(4,p=0)}function E(){t(0,s=""),t(1,c=[]),y()}function T(z){z&&(o("open",z),E(),h==null||h.blur())}function N(){v()}function A(z){if(z.key==="Escape"){z.preventDefault(),E(),h==null||h.blur();return}!u||c.length===0||(z.key==="ArrowDown"?(z.preventDefault(),t(4,p=Math.min(c.length-1,p+1))):z.key==="ArrowUp"?(z.preventDefault(),t(4,p=Math.max(0,p-1))):z.key==="Enter"&&(z.preventDefault(),T(c[p])))}async function I(){await fg(),h==null||h.focus(),h==null||h.select()}function O(z){if((z.ctrlKey||z.metaKey)&&z.key.toLowerCase()==="k"){z.preventDefault(),I();return}z.key==="/"&&!g2(z.target)&&(z.preventDefault(),I())}li(()=>{window.addEventListener("keydown",O)}),ii(()=>{window.removeEventListener("keydown",O),clearTimeout(m)});function R(z){In[z?"unshift":"push"](()=>{h=z,t(5,h)})}function D(){s=this.value,t(0,s)}const B=()=>{c.length>0&&t(2,u=!0)},j=()=>setTimeout(y,160),U=z=>T(z);return n.$$set=z=>{"wailsCall"in z&&t(11,l=z.wailsCall),"typeLabel"in z&&t(12,i=z.typeLabel)},[s,c,u,d,p,h,g,y,T,N,A,l,i,R,D,B,j,U]}class b2 extends ut{constructor(e){super(),ct(this,e,_2,h2,at,{wailsCall:11,typeLabel:12})}}const k2=n=>({}),Ja=n=>({});function Qa(n){let e,t;return{c(){e=f("span"),t=H(n[1]),r(e,"class","header-subtitle svelte-7x8q9h")},m(l,i){C(l,e,i),a(e,t)},p(l,i){i&2&&Q(t,l[1])},d(l){l&&S(e)}}}function v2(n){let e,t,l,i=(n[0]||"")+"",o,s,c,u,d,p,h,m=n[1]&&Qa(n);d=new b2({props:{wailsCall:n[2],typeLabel:n[3]}}),d.$on("open",n[7]);const g=n[6].actions,b=sg(g,n,n[5],Ja);return{c(){e=f("header"),t=f("div"),l=f("span"),o=H(i),s=w(),m&&m.c(),c=w(),u=f("div"),Qe(d.$$.fragment),p=w(),b&&b.c(),r(l,"class","header-title svelte-7x8q9h"),ce(l,"placeholder",!n[0]),r(t,"class","header-left svelte-7x8q9h"),r(u,"class","header-right svelte-7x8q9h"),r(e,"class","header svelte-7x8q9h")},m(v,y){C(v,e,y),a(e,t),a(t,l),a(l,o),a(t,s),m&&m.m(t,null),a(e,c),a(e,u),Ye(d,u,null),a(u,p),b&&b.m(u,null),h=!0},p(v,[y]){(!h||y&1)&&i!==(i=(v[0]||"")+"")&&Q(o,i),(!h||y&1)&&ce(l,"placeholder",!v[0]),v[1]?m?m.p(v,y):(m=Qa(v),m.c(),m.m(t,null)):m&&(m.d(1),m=null);const E={};y&4&&(E.wailsCall=v[2]),y&8&&(E.typeLabel=v[3]),d.$set(E),b&&b.p&&(!h||y&32)&&rg(b,g,v,v[5],h?og(g,v[5],y,k2):ag(v[5]),Ja)},i(v){h||(ge(d.$$.fragment,v),ge(b,v),h=!0)},o(v){ke(d.$$.fragment,v),ke(b,v),h=!1},d(v){v&&S(e),m&&m.d(),Xe(d),b&&b.d(v)}}}function w2(n,e,t){let{$$slots:l={},$$scope:i}=e,{title:o=""}=e,{subtitle:s=""}=e,{wailsCall:c=async()=>[]}=e,{typeLabel:u=h=>h||""}=e,{onOpenSearchResult:d=()=>{}}=e;const p=h=>d(h.detail);return n.$$set=h=>{"title"in h&&t(0,o=h.title),"subtitle"in h&&t(1,s=h.subtitle),"wailsCall"in h&&t(2,c=h.wailsCall),"typeLabel"in h&&t(3,u=h.typeLabel),"onOpenSearchResult"in h&&t(4,d=h.onOpenSearchResult),"$$scope"in h&&t(5,i=h.$$scope)},[o,s,c,u,d,i,l,p]}class y2 extends ut{constructor(e){super(),ct(this,e,w2,v2,at,{title:0,subtitle:1,wailsCall:2,typeLabel:3,onOpenSearchResult:4})}}const E2={open:'',showInExplorer:'',delete:'',restore:'',purge:'',move:'',attach:'',back:'',emptyTrash:'',folder:''};function Tt(n,e=16){return`${E2[n]||""}`}function T2(n){let e,t,l,i,o,s,c,u,d,p,h,m,g,b,v,y,E,T,N,A,I,O,R,D,B,j,U,z,W,K,Y,F,L,M,q,X,Z,J;return{c(){e=f("div"),t=f("div"),l=f("div"),i=f("button"),i.innerHTML='B',o=w(),s=f("button"),s.innerHTML='I',c=w(),u=f("button"),u.innerHTML='H',d=w(),p=f("div"),h=w(),m=f("div"),g=f("button"),g.innerHTML='',b=w(),v=f("button"),v.innerHTML='',y=w(),E=f("button"),T=f("span"),T.textContent="",N=w(),A=f("div"),I=w(),O=f("div"),R=f("button"),R.innerHTML='',D=w(),B=f("button"),B.innerHTML='1.',j=w(),U=f("button"),U.innerHTML='',z=w(),W=f("button"),W.innerHTML='"',K=w(),Y=f("div"),F=w(),L=f("div"),M=f("button"),M.innerHTML='',q=w(),X=f("textarea"),r(i,"type","button"),r(i,"class","md-toolbar-btn svelte-1etjgc1"),r(i,"title",k("note.toolbar.bold")),r(i,"aria-label",k("note.toolbar.bold")),r(s,"type","button"),r(s,"class","md-toolbar-btn svelte-1etjgc1"),r(s,"title",k("note.toolbar.italic")),r(s,"aria-label",k("note.toolbar.italic")),r(u,"type","button"),r(u,"class","md-toolbar-btn svelte-1etjgc1"),r(u,"title",k("note.toolbar.heading")),r(u,"aria-label",k("note.toolbar.heading")),r(l,"class","md-toolbar-group svelte-1etjgc1"),r(p,"class","md-toolbar-sep svelte-1etjgc1"),r(g,"type","button"),r(g,"class","md-toolbar-btn svelte-1etjgc1"),r(g,"title",k("note.toolbar.link")),r(g,"aria-label",k("note.toolbar.link")),r(v,"type","button"),r(v,"class","md-toolbar-btn svelte-1etjgc1"),r(v,"title",k("note.toolbar.code")),r(v,"aria-label",k("note.toolbar.code")),r(T,"class","md-btn-label md-btn-sm svelte-1etjgc1"),r(E,"type","button"),r(E,"class","md-toolbar-btn svelte-1etjgc1"),r(E,"title",k("note.toolbar.codeBlock")),r(E,"aria-label",k("note.toolbar.codeBlock")),r(m,"class","md-toolbar-group svelte-1etjgc1"),r(A,"class","md-toolbar-sep svelte-1etjgc1"),r(R,"type","button"),r(R,"class","md-toolbar-btn svelte-1etjgc1"),r(R,"title",k("note.toolbar.bulletList")),r(R,"aria-label",k("note.toolbar.bulletList")),r(B,"type","button"),r(B,"class","md-toolbar-btn svelte-1etjgc1"),r(B,"title",k("note.toolbar.numberedList")),r(B,"aria-label",k("note.toolbar.numberedList")),r(U,"type","button"),r(U,"class","md-toolbar-btn svelte-1etjgc1"),r(U,"title",k("note.toolbar.checkbox")),r(U,"aria-label",k("note.toolbar.checkbox")),r(W,"type","button"),r(W,"class","md-toolbar-btn svelte-1etjgc1"),r(W,"title",k("note.toolbar.quote")),r(W,"aria-label",k("note.toolbar.quote")),r(O,"class","md-toolbar-group svelte-1etjgc1"),r(Y,"class","md-toolbar-sep svelte-1etjgc1"),r(M,"type","button"),r(M,"class","md-toolbar-btn md-toolbar-btn--internal svelte-1etjgc1"),r(M,"title",k("note.toolbar.internalLink")),r(M,"aria-label",k("note.toolbar.internalLink")),r(L,"class","md-toolbar-group svelte-1etjgc1"),r(t,"class","md-toolbar svelte-1etjgc1"),r(t,"role","toolbar"),r(t,"aria-label","Markdown formatting"),r(X,"class","md-textarea svelte-1etjgc1"),r(X,"placeholder",n[2]),r(X,"spellcheck","true"),r(e,"class","md-editor svelte-1etjgc1"),ce(e,"mode-edit",n[1]==="edit"||n[1]==="split")},m(ee,te){C(ee,e,te),a(e,t),a(t,l),a(l,i),a(l,o),a(l,s),a(l,c),a(l,u),a(t,d),a(t,p),a(t,h),a(t,m),a(m,g),a(m,b),a(m,v),a(m,y),a(m,E),a(E,T),a(t,N),a(t,A),a(t,I),a(t,O),a(O,R),a(O,D),a(O,B),a(O,j),a(O,U),a(O,z),a(O,W),a(t,K),a(t,Y),a(t,F),a(t,L),a(L,M),a(e,q),a(e,X),Me(X,n[0]),n[19](X),Z||(J=[P(i,"click",n[4]),P(s,"click",n[5]),P(u,"click",n[8]),P(g,"click",n[7]),P(v,"click",n[6]),P(E,"click",n[13]),P(R,"click",n[10]),P(B,"click",n[11]),P(U,"click",n[12]),P(W,"click",n[9]),P(M,"click",n[14]),P(X,"input",n[18]),P(X,"input",n[15]),P(X,"keydown",n[16])],Z=!0)},p(ee,[te]){te&4&&r(X,"placeholder",ee[2]),te&1&&Me(X,ee[0]),te&2&&ce(e,"mode-edit",ee[1]==="edit"||ee[1]==="split")},i:se,o:se,d(ee){ee&&S(e),n[19](null),Z=!1,Ce(J)}}}function S2(n,e,t){let{content:l=""}=e,{viewMode:i="edit"}=e,{placeholder:o=""}=e;const s=pn();let c;function u(j){const U=c;if(!U)return;const z=U.selectionStart,W=U.selectionEnd,K=l.substring(0,z),Y=l.substring(W),F=K+j+Y;t(0,l=F),s("content-change",{content:F}),requestAnimationFrame(()=>{U.focus(),U.selectionStart=U.selectionEnd=z+j.length})}function d(j,U="",z=""){const W=c;if(!W)return;const K=W.selectionStart,Y=W.selectionEnd,F=l.substring(K,Y),M=j+(F||z)+U,q=l.substring(0,K)+M+l.substring(Y);t(0,l=q),s("content-change",{content:q}),requestAnimationFrame(()=>{W.focus(),F?(W.selectionStart=K+j.length,W.selectionEnd=K+j.length+F.length):(W.selectionStart=K+j.length,W.selectionEnd=K+j.length+z.length)})}function p(j){const U=c;if(!U)return;const z=U.selectionStart,W=U.selectionEnd;let K=z;for(;K>0&&l[K-1]!==` +`;)K--;let Y=W;for(;YZ.startsWith(j)?Z:j+Z).join(` +`),X=l.substring(0,K)+q+l.substring(Y);t(0,l=X),s("content-change",{content:X}),requestAnimationFrame(()=>{U.focus(),U.selectionStart=K,U.selectionEnd=K+q.length})}function h(){d("**","**","bold text")}function m(){d("*","*","italic text")}function g(){d("`","`","code")}function b(){s("insert-link")}function v(){p("## ")}function y(){p("> ")}function E(){p("- ")}function T(){const j=c;if(!j)return;let z=j.selectionStart;for(;z>0&&l[z-1]!==` +`;)z--;let W=j.selectionEnd;for(;W{const Z=X.trim();return X.replace(/^\s*\d+\.\s*/,""),`${F++}. ${Z||"item"}`}).join(` +`),q=l.substring(0,z)+M+l.substring(W);t(0,l=q),s("content-change",{content:q}),requestAnimationFrame(()=>{j.focus(),j.selectionStart=z,j.selectionEnd=z+M.length})}function N(){p("- [ ] ")}function A(){const j=c;if(!j)return;const U=j.selectionStart,z=j.selectionEnd,W=l.substring(U,z),K=W?"```\n"+W+"\n```":"```\ncode here\n```",Y=l.substring(0,U)+K+l.substring(z);t(0,l=Y),s("content-change",{content:Y}),requestAnimationFrame(()=>{j.focus(),W?(j.selectionStart=U+4,j.selectionEnd=U+4+W.length):(j.selectionStart=U+4,j.selectionEnd=U+4+9)})}function I(){s("insert-internal-link")}function O(j){t(0,l=j.target.value),s("content-change",{content:l})}function R(j){if((j.ctrlKey||j.metaKey)&&j.key==="s"){j.preventDefault(),s("save");return}if(j.key==="Tab"){j.preventDefault();const U=j.target,z=U.selectionStart,W=U.selectionEnd;if(j.shiftKey){let K=z;for(;K>0&&l[K-1]!==` +`;)K--;let Y=W;for(;Y{U.focus(),U.selectionStart=K,U.selectionEnd=K+L.length})}else if(z===W){const K=l.substring(0,z)+" "+l.substring(W);t(0,l=K),s("content-change",{content:K}),requestAnimationFrame(()=>{U.focus(),U.selectionStart=U.selectionEnd=z+2})}else{let K=z;for(;K>0&&l[K-1]!==` +`;)K--;let Y=W;for(;Y{U.focus(),U.selectionStart=K,U.selectionEnd=K+L.length})}}}function D(){l=this.value,t(0,l)}function B(j){In[j?"unshift":"push"](()=>{c=j,t(3,c)})}return n.$$set=j=>{"content"in j&&t(0,l=j.content),"viewMode"in j&&t(1,i=j.viewMode),"placeholder"in j&&t(2,o=j.placeholder)},[l,i,o,c,h,m,g,b,v,y,E,T,N,A,I,O,R,u,D,B]}class Wd extends ut{constructor(e){super(),ct(this,e,S2,T2,at,{content:0,viewMode:1,placeholder:2,insertText:17})}get insertText(){return this.$$.ctx[17]}}function C2(n){let e,t,l,i,o,s,c,u={content:n[0],placeholder:n[2],viewMode:"split"};return l=new Wd({props:u}),n[15](l),l.$on("content-change",n[5]),l.$on("save",n[6]),l.$on("insert-link",n[7]),l.$on("insert-internal-link",n[8]),s=new Ys({props:{content:n[0]}}),s.$on("verstak-link",n[9]),{c(){e=f("div"),t=f("div"),Qe(l.$$.fragment),i=w(),o=f("div"),Qe(s.$$.fragment),r(t,"class","split-editor svelte-8tdyp9"),r(o,"class","split-preview svelte-8tdyp9"),r(e,"class","split-pane svelte-8tdyp9")},m(d,p){C(d,e,p),a(e,t),Ye(l,t,null),a(e,i),a(e,o),Ye(s,o,null),c=!0},p(d,p){const h={};p&1&&(h.content=d[0]),p&4&&(h.placeholder=d[2]),l.$set(h);const m={};p&1&&(m.content=d[0]),s.$set(m)},i(d){c||(ge(l.$$.fragment,d),ge(s.$$.fragment,d),c=!0)},o(d){ke(l.$$.fragment,d),ke(s.$$.fragment,d),c=!1},d(d){d&&S(e),n[15](null),Xe(l),Xe(s)}}}function A2(n){let e,t,l;return t=new Ys({props:{content:n[0]}}),t.$on("verstak-link",n[9]),{c(){e=f("div"),Qe(t.$$.fragment),r(e,"class","preview-pane svelte-8tdyp9")},m(i,o){C(i,e,o),Ye(t,e,null),l=!0},p(i,o){const s={};o&1&&(s.content=i[0]),t.$set(s)},i(i){l||(ge(t.$$.fragment,i),l=!0)},o(i){ke(t.$$.fragment,i),l=!1},d(i){i&&S(e),Xe(t)}}}function N2(n){let e,t,l={content:n[0],placeholder:n[2],viewMode:"edit"};return e=new Wd({props:l}),n[14](e),e.$on("content-change",n[5]),e.$on("save",n[6]),e.$on("insert-link",n[7]),e.$on("insert-internal-link",n[8]),{c(){Qe(e.$$.fragment)},m(i,o){Ye(e,i,o),t=!0},p(i,o){const s={};o&1&&(s.content=i[0]),o&4&&(s.placeholder=i[2]),e.$set(s)},i(i){t||(ge(e.$$.fragment,i),t=!0)},o(i){ke(e.$$.fragment,i),t=!1},d(i){n[14](null),Xe(e,i)}}}function I2(n){let e,t,l,i=k("note.mode.edit")+"",o,s,c,u,d=k("note.mode.preview")+"",p,h,m,g,b=k("note.mode.split")+"",v,y,E,T,N,A,I,O,R;const D=[N2,A2,C2],B=[];function j(U,z){return U[1]==="edit"?0:U[1]==="preview"?1:U[1]==="split"?2:-1}return~(N=j(n))&&(A=B[N]=D[N](n)),{c(){e=f("div"),t=f("div"),l=f("button"),o=H(i),c=w(),u=f("button"),p=H(d),m=w(),g=f("button"),v=H(b),E=w(),T=f("div"),A&&A.c(),r(l,"type","button"),r(l,"class","mode-btn svelte-8tdyp9"),r(l,"role","tab"),r(l,"aria-selected",s=n[1]==="edit"),ce(l,"active",n[1]==="edit"),r(u,"type","button"),r(u,"class","mode-btn svelte-8tdyp9"),r(u,"role","tab"),r(u,"aria-selected",h=n[1]==="preview"),ce(u,"active",n[1]==="preview"),r(g,"type","button"),r(g,"class","mode-btn svelte-8tdyp9"),r(g,"role","tab"),r(g,"aria-selected",y=n[1]==="split"),ce(g,"active",n[1]==="split"),r(t,"class","mode-switcher svelte-8tdyp9"),r(t,"role","tablist"),r(t,"aria-label","Note view mode"),r(T,"class","panel-content svelte-8tdyp9"),r(e,"class","note-editor-panel svelte-8tdyp9"),ce(e,"mode-edit",n[1]==="edit"),ce(e,"mode-preview",n[1]==="preview"),ce(e,"mode-split",n[1]==="split")},m(U,z){C(U,e,z),a(e,t),a(t,l),a(l,o),a(t,c),a(t,u),a(u,p),a(t,m),a(t,g),a(g,v),a(e,E),a(e,T),~N&&B[N].m(T,null),I=!0,O||(R=[P(l,"click",n[11]),P(u,"click",n[12]),P(g,"click",n[13])],O=!0)},p(U,[z]){(!I||z&2&&s!==(s=U[1]==="edit"))&&r(l,"aria-selected",s),(!I||z&2)&&ce(l,"active",U[1]==="edit"),(!I||z&2&&h!==(h=U[1]==="preview"))&&r(u,"aria-selected",h),(!I||z&2)&&ce(u,"active",U[1]==="preview"),(!I||z&2&&y!==(y=U[1]==="split"))&&r(g,"aria-selected",y),(!I||z&2)&&ce(g,"active",U[1]==="split");let W=N;N=j(U),N===W?~N&&B[N].p(U,z):(A&&(yt(),ke(B[W],1,1,()=>{B[W]=null}),Et()),~N?(A=B[N],A?A.p(U,z):(A=B[N]=D[N](U),A.c()),ge(A,1),A.m(T,null)):A=null),(!I||z&2)&&ce(e,"mode-edit",U[1]==="edit"),(!I||z&2)&&ce(e,"mode-preview",U[1]==="preview"),(!I||z&2)&&ce(e,"mode-split",U[1]==="split")},i(U){I||(ge(A),I=!0)},o(U){ke(A),I=!1},d(U){U&&S(e),~N&&B[N].d(),O=!1,Ce(R)}}}function R2(n,e,t){let{content:l=""}=e,{viewMode:i="edit"}=e,{placeholder:o=""}=e;const s=pn();let c;function u(A){s("mode-change",{mode:A})}function d(A){t(0,l=A.detail.content),s("content-change",A.detail)}function p(){s("save")}function h(){s("insert-link")}function m(){s("insert-internal-link")}function g(A){s("verstak-link",A.detail)}function b(A){c&&typeof c.insertText=="function"&&c.insertText(A)}const v=()=>u("edit"),y=()=>u("preview"),E=()=>u("split");function T(A){In[A?"unshift":"push"](()=>{c=A,t(3,c)})}function N(A){In[A?"unshift":"push"](()=>{c=A,t(3,c)})}return n.$$set=A=>{"content"in A&&t(0,l=A.content),"viewMode"in A&&t(1,i=A.viewMode),"placeholder"in A&&t(2,o=A.placeholder)},[l,i,o,c,u,d,p,h,m,g,b,v,y,E,T,N]}class M2 extends ut{constructor(e){super(),ct(this,e,R2,I2,at,{content:0,viewMode:1,placeholder:2,insertText:10})}get insertText(){return this.$$.ctx[10]}}function xa(n,e,t){const l=n.slice();return l[25]=e[t],l[27]=t,l}function $a(n,e,t){const l=n.slice();return l[28]=e[t],l}function ec(n){let e,t,l,i,o,s,c,u,d,p,h,m,g=Te(n[10]),b=[];for(let T=0;T=2&&s[5].length===0&&!s[7]),t?P2:D2)}let i=l(n,-1),o=i(n);return{c(){e=f("div"),o.c(),r(e,"class","picker-results svelte-12kipyi"),r(e,"role","listbox")},m(s,c){C(s,e,c),o.m(e,null)},p(s,c){i===(i=l(s,c))&&o?o.p(s,c):(o.d(1),o=i(s),o&&(o.c(),o.m(e,null)))},d(s){s&&S(e),o.d()}}}function O2(n){let e;return{c(){e=f("div"),e.innerHTML="

    🔒 Сейф доступов ещё не реализован

    ",r(e,"class","picker-secret-placeholder svelte-12kipyi")},m(t,l){C(t,e,l)},p:se,d(t){t&&S(e)}}}function D2(n){let e,t=Te(n[5]),l=[];for(let i=0;i0?"Нет результатов для этого типа":"Ничего не найдено",l;return{c(){e=f("div"),l=H(t),r(e,"class","picker-empty svelte-12kipyi")},m(i,o){C(i,e,o),a(e,l)},p(i,o){o&16&&t!==(t=i[4].length>0?"Нет результатов для этого типа":"Ничего не найдено")&&Q(l,t)},d(i){i&&S(e)}}}function q2(n){let e,t;return{c(){e=f("div"),t=H(n[8]),r(e,"class","picker-error svelte-12kipyi")},m(l,i){C(l,e,i),a(e,t)},p(l,i){i&256&&Q(t,l[8])},d(l){l&&S(e)}}}function z2(n){let e;return{c(){e=f("div"),e.textContent="Загрузка...",r(e,"class","picker-loading svelte-12kipyi")},m(t,l){C(t,e,l)},p:se,d(t){t&&S(e)}}}function nc(n){let e,t=n[25].path+"",l;return{c(){e=f("span"),l=H(t),r(e,"class","picker-result-path svelte-12kipyi")},m(i,o){C(i,e,o),a(e,l)},p(i,o){o&32&&t!==(t=i[25].path+"")&&Q(l,t)},d(i){i&&S(e)}}}function lc(n){let e,t,l=n[25].title+"",i,o,s,c,u,d,p=n[25].path&&nc(n);function h(){return n[18](n[25])}return{c(){e=f("button"),t=f("span"),i=H(l),o=w(),p&&p.c(),s=w(),r(t,"class","picker-result-title svelte-12kipyi"),r(e,"type","button"),r(e,"class","picker-result svelte-12kipyi"),r(e,"role","option"),r(e,"aria-selected",c=n[27]===n[6]),ce(e,"selected",n[27]===n[6])},m(m,g){C(m,e,g),a(e,t),a(t,i),a(e,o),p&&p.m(e,null),a(e,s),u||(d=P(e,"click",h),u=!0)},p(m,g){n=m,g&32&&l!==(l=n[25].title+"")&&Q(i,l),n[25].path?p?p.p(n,g):(p=nc(n),p.c(),p.m(e,s)):p&&(p.d(1),p=null),g&64&&c!==(c=n[27]===n[6])&&r(e,"aria-selected",c),g&64&&ce(e,"selected",n[27]===n[6])},d(m){m&&S(e),p&&p.d(),u=!1,d()}}}function B2(n){let e,t=n[0]&&ec(n);return{c(){t&&t.c(),e=kt()},m(l,i){t&&t.m(l,i),C(l,e,i)},p(l,[i]){l[0]?t?t.p(l,i):(t=ec(l),t.c(),t.m(e.parentNode,e)):t&&(t.d(1),t=null)},i:se,o:se,d(l){l&&S(e),t&&t.d(l)}}}function ic(n){return n==="note"?"note":n==="file"?"file":n==="secret"?"secret":"case"}function F2(n,e,t){let{visible:l=!1}=e;const i=pn(),o=[{id:"case",label:"Дело"},{id:"note",label:"Заметка"},{id:"file",label:"Файл"},{id:"secret",label:"Секрет"}];let s="note",c="",u=[],d=[],p=0,h=!1,m="",g;function b(){t(5,d=u.filter(z=>ic(z.type)===s)),t(6,p=0)}async function v(){if(!c.trim()||c.trim().length<2){t(4,u=[]),t(5,d=[]);return}t(7,h=!0),t(8,m="");try{const z=Ud(c.trim()),W=new Set,K=[];for(const L of z)W.has(L)||(W.add(L),K.push(L));const Y=await Promise.all(K.map(L=>window.go.main.App.SearchNodes(L).catch(()=>[]))),F=new Map;for(const L of Y)for(const M of L||[])F.has(M.id)||F.set(M.id,M);t(4,u=Array.from(F.values())),b()}catch(z){t(8,m=String(z)),t(4,u=[]),t(5,d=[])}finally{t(7,h=!1)}}function y(){clearTimeout(A),A=setTimeout(v,250)}function E(z){z.key==="ArrowDown"?(z.preventDefault(),t(6,p=Math.min(p+1,d.length-1))):z.key==="ArrowUp"?(z.preventDefault(),t(6,p=Math.max(p-1,0))):z.key==="Enter"?(z.preventDefault(),d[p]&&T(d[p])):z.key==="Escape"&&i("close")}function T(z){const K=`[${Ok(z.title||z.id)}](verstak://${ic(z.type)}/${z.id})`;i("insert",{markdown:K})}function N(z){t(2,s=z),b(),g&&g.focus()}let A;function I(z){In[z?"unshift":"push"](()=>{g=z,t(1,g)})}function O(){c=this.value,t(3,c)}const R=z=>z.id!=="secret"&&N(z.id),D=z=>T(z),B=()=>i("close"),j=()=>i("close"),U=z=>z.key==="Escape"&&i("close");return n.$$set=z=>{"visible"in z&&t(0,l=z.visible)},n.$$.update=()=>{n.$$.dirty&3&&l&&g&&setTimeout(()=>g.focus(),50)},[l,g,s,c,u,d,p,h,m,i,o,y,E,T,N,I,O,R,D,B,j,U]}class j2 extends ut{constructor(e){super(),ct(this,e,F2,B2,at,{visible:0})}}function sc(n,e,t){const l=n.slice();return l[18]=e[t],l}function oc(n){let e,t,l,i,o,s,c,u,d;return{c(){e=f("div"),t=f("input"),l=w(),i=f("div"),o=f("button"),o.textContent="Создать",s=w(),c=f("button"),c.textContent="Отмена",r(t,"type","text"),r(t,"placeholder","Название заметки"),r(t,"class","svelte-1d78tu1"),r(o,"class","btn btn-primary svelte-1d78tu1"),r(c,"class","btn svelte-1d78tu1"),r(i,"class","form-actions svelte-1d78tu1"),r(e,"class","create-form svelte-1d78tu1")},m(p,h){C(p,e,h),a(e,t),Me(t,n[3]),a(e,l),a(e,i),a(i,o),a(i,s),a(i,c),u||(d=[P(t,"input",n[12]),P(t,"keydown",n[7]),P(o,"click",n[6]),P(c,"click",n[5])],u=!0)},p(p,h){h&8&&t.value!==p[3]&&Me(t,p[3])},d(p){p&&S(e),u=!1,Ce(d)}}}function U2(n){let e,t=Te(n[0]),l=[];for(let i=0;iНет заметок

    Создайте первую заметку

    ',r(e,"class","empty-state svelte-1d78tu1")},m(t,l){C(t,e,l)},p:se,d(t){t&&S(e)}}}function rc(n){let e,t,l,i=n[18].title+"",o,s,c,u=n[1](n[18].createdAt)+"",d,p,h,m,g,b,v,y,E;function T(){return n[13](n[18])}function N(){return n[14](n[18])}function A(){return n[15](n[18])}function I(...O){return n[16](n[18],...O)}return{c(){e=f("div"),t=f("div"),l=f("div"),o=H(i),s=w(),c=f("div"),d=H(u),p=w(),h=f("div"),m=f("button"),m.innerHTML='',g=w(),b=f("button"),b.innerHTML='',v=w(),r(l,"class","note-card-title svelte-1d78tu1"),r(c,"class","note-card-date svelte-1d78tu1"),r(t,"class","note-card-info svelte-1d78tu1"),r(m,"class","note-action-btn svelte-1d78tu1"),r(m,"title","Переименовать"),r(b,"class","note-action-btn note-action-danger svelte-1d78tu1"),r(b,"title","Удалить"),r(h,"class","note-card-actions svelte-1d78tu1"),r(e,"class","note-card svelte-1d78tu1"),r(e,"role","button"),r(e,"tabindex","0")},m(O,R){C(O,e,R),a(e,t),a(t,l),a(l,o),a(t,s),a(t,c),a(c,d),a(e,p),a(e,h),a(h,m),a(h,g),a(h,b),a(e,v),y||(E=[P(m,"click",T),P(b,"click",N),P(h,"click",We(n[11])),P(e,"click",A),P(e,"keydown",I)],y=!0)},p(O,R){n=O,R&1&&i!==(i=n[18].title+"")&&Q(o,i),R&3&&u!==(u=n[1](n[18].createdAt)+"")&&Q(d,u)},d(O){O&&S(e),y=!1,Ce(E)}}}function W2(n){let e,t,l,i,o,s,c,u=n[2]&&oc(n);function d(m,g){if(m[0].length===0&&!m[2])return H2;if(m[0].length>0)return U2}let p=d(n),h=p&&p(n);return{c(){e=f("div"),t=f("div"),l=f("button"),l.textContent="Добавить заметку",i=w(),u&&u.c(),o=w(),h&&h.c(),r(l,"class","btn btn-primary svelte-1d78tu1"),r(t,"class","tab-toolbar svelte-1d78tu1"),r(e,"class","notes-tab svelte-1d78tu1")},m(m,g){C(m,e,g),a(e,t),a(t,l),a(e,i),u&&u.m(e,null),a(e,o),h&&h.m(e,null),s||(c=P(l,"click",n[4]),s=!0)},p(m,[g]){m[2]?u?u.p(m,g):(u=oc(m),u.c(),u.m(e,o)):u&&(u.d(1),u=null),p===(p=d(m))&&h?h.p(m,g):(h&&h.d(1),h=p&&p(m),h&&(h.c(),h.m(e,null)))},i:se,o:se,d(m){m&&S(e),u&&u.d(),h&&h.d(),s=!1,c()}}}function G2(n,e,t){let{notes:l=[]}=e,{formatDate:i=I=>""}=e;const o=pn();let s=!1,c="";function u(){t(2,s=!0),t(3,c="")}function d(){t(2,s=!1),t(3,c="")}function p(){c.trim()&&(o("submitCreateNote",{title:c.trim()}),t(2,s=!1),t(3,c=""))}function h(I){I.key==="Enter"&&p()}function m(I){o("openNote",{note:I})}function g(I,O){o("startRename",{noteId:I,currentTitle:O})}function b(I){o("deleteNote",{note:I})}function v(I){Ds.call(this,n,I)}function y(){c=this.value,t(3,c)}const E=I=>g(I.id,I.title),T=I=>b(I),N=I=>m(I),A=(I,O)=>O.key==="Enter"&&m(I);return n.$$set=I=>{"notes"in I&&t(0,l=I.notes),"formatDate"in I&&t(1,i=I.formatDate)},[l,i,s,c,u,d,p,h,m,g,b,v,y,E,T,N,A]}class K2 extends ut{constructor(e){super(),ct(this,e,G2,W2,at,{notes:0,formatDate:1})}}function ac(n,e,t){const l=n.slice();return l[13]=e[t],l}function cc(n,e,t){const l=n.slice();return l[16]=e[t],l}function uc(n){let e,t,l,i=Te(n[1].slice(0,5)),o=[];for(let s=0;s0&&uc(n),Ke=n[2].length>0&&dc(n);return{c(){e=f("div"),t=f("h2"),i=H(l),o=w(),s=f("div"),c=f("div"),u=f("span"),u.textContent=`${k("overview.type")}`,d=f("span"),h=H(p),m=w(),g=f("div"),b=f("span"),b.textContent=`${k("overview.section")}`,v=f("span"),E=H(y),T=w(),N=f("div"),A=f("span"),A.textContent=`${k("overview.created")}`,I=f("span"),R=H(O),D=w(),B=f("div"),j=f("button"),U=ae("svg"),z=ae("path"),W=ae("path"),K=w(),F=H(Y),L=w(),M=f("button"),q=ae("svg"),X=ae("path"),Z=w(),ee=H(J),te=w(),le=f("button"),_e=ae("svg"),oe=ae("polygon"),ze=w(),Ie=H(Ge),ne=w(),re=f("button"),Ne=ae("svg"),Fe=ae("circle"),we=ae("polyline"),je=w(),Ae=H(xe),Ve=w(),Oe&&Oe.c(),Ue=w(),Ke&&Ke.c(),r(t,"class","svelte-3r30e3"),r(u,"class","meta-label svelte-3r30e3"),r(c,"class","meta-item svelte-3r30e3"),r(b,"class","meta-label svelte-3r30e3"),r(g,"class","meta-item svelte-3r30e3"),r(A,"class","meta-label svelte-3r30e3"),r(N,"class","meta-item svelte-3r30e3"),r(s,"class","meta-grid svelte-3r30e3"),r(z,"d","M12 20h9"),r(W,"d","M16.5 3.5a2.121 2.121 0 0 1 3 3L7 19l-4 1 1-4L16.5 3.5z"),r(U,"width","16"),r(U,"height","16"),r(U,"viewBox","0 0 24 24"),r(U,"fill","none"),r(U,"stroke","currentColor"),r(U,"stroke-width","2"),r(U,"stroke-linecap","round"),r(U,"stroke-linejoin","round"),r(j,"class","qa-btn svelte-3r30e3"),r(X,"d","M21.44 11.05l-9.19 9.19a6 6 0 0 1-8.49-8.49l9.19-9.19a4 4 0 0 1 5.66 5.66l-9.2 9.19a2 2 0 0 1-2.83-2.83l8.49-8.48"),r(q,"width","16"),r(q,"height","16"),r(q,"viewBox","0 0 24 24"),r(q,"fill","none"),r(q,"stroke","currentColor"),r(q,"stroke-width","2"),r(q,"stroke-linecap","round"),r(q,"stroke-linejoin","round"),r(M,"class","qa-btn svelte-3r30e3"),r(oe,"points","13 2 3 14 12 14 11 22 21 10 12 10 13 2"),r(_e,"width","16"),r(_e,"height","16"),r(_e,"viewBox","0 0 24 24"),r(_e,"fill","none"),r(_e,"stroke","currentColor"),r(_e,"stroke-width","2"),r(_e,"stroke-linecap","round"),r(_e,"stroke-linejoin","round"),r(le,"class","qa-btn svelte-3r30e3"),r(Fe,"cx","12"),r(Fe,"cy","12"),r(Fe,"r","10"),r(we,"points","12 6 12 12 16 14"),r(Ne,"width","16"),r(Ne,"height","16"),r(Ne,"viewBox","0 0 24 24"),r(Ne,"fill","none"),r(Ne,"stroke","currentColor"),r(Ne,"stroke-width","2"),r(Ne,"stroke-linecap","round"),r(Ne,"stroke-linejoin","round"),r(re,"class","qa-btn svelte-3r30e3"),r(B,"class","quick-actions svelte-3r30e3"),r(e,"class","overview svelte-3r30e3")},m(Pe,ue){C(Pe,e,ue),a(e,t),a(t,i),a(e,o),a(e,s),a(s,c),a(c,u),a(c,d),a(d,h),a(s,m),a(s,g),a(g,b),a(g,v),a(v,E),a(s,T),a(s,N),a(N,A),a(N,I),a(I,R),a(e,D),a(e,B),a(B,j),a(j,U),a(U,z),a(U,W),a(j,K),a(j,F),a(B,L),a(B,M),a(M,q),a(q,X),a(M,Z),a(M,ee),a(B,te),a(B,le),a(le,_e),a(_e,oe),a(le,ze),a(le,Ie),a(B,ne),a(B,re),a(re,Ne),a(Ne,Fe),a(Ne,we),a(re,je),a(re,Ae),a(e,Ve),Oe&&Oe.m(e,null),a(e,Ue),Ke&&Ke.m(e,null),Se||(He=[P(j,"click",n[5]),P(M,"click",n[6]),P(le,"click",n[7]),P(re,"click",n[8])],Se=!0)},p(Pe,[ue]){ue&1&&l!==(l=Pe[0].title+"")&&Q(i,l),ue&17&&p!==(p=Pe[4](Pe[0].type)+"")&&Q(h,p),ue&1&&y!==(y=(Pe[0].section||"—")+"")&&Q(E,y),ue&9&&O!==(O=Pe[3](Pe[0].createdAt)+"")&&Q(R,O),Pe[1].length>0?Oe?Oe.p(Pe,ue):(Oe=uc(Pe),Oe.c(),Oe.m(e,Ue)):Oe&&(Oe.d(1),Oe=null),Pe[2].length>0?Ke?Ke.p(Pe,ue):(Ke=dc(Pe),Ke.c(),Ke.m(e,null)):Ke&&(Ke.d(1),Ke=null)},i:se,o:se,d(Pe){Pe&&S(e),Oe&&Oe.d(),Ke&&Ke.d(),Se=!1,Ce(He)}}}function Z2(n,e,t){let{selectedNode:l=null}=e,{notes:i=[]}=e,{worklog:o=[]}=e,{formatDate:s=y=>""}=e,{nodeKindLabel:c=y=>y||""}=e;const u=pn();function d(){u("createNote")}function p(){u("addFile")}function h(){u("createAction")}function m(){u("switchTab",{tab:"worklog"})}function g(y){u("openNote",{note:y})}const b=y=>g(y),v=(y,E)=>E.key==="Enter"&&g(y);return n.$$set=y=>{"selectedNode"in y&&t(0,l=y.selectedNode),"notes"in y&&t(1,i=y.notes),"worklog"in y&&t(2,o=y.worklog),"formatDate"in y&&t(3,s=y.formatDate),"nodeKindLabel"in y&&t(4,c=y.nodeKindLabel)},[l,i,o,s,c,d,p,h,m,g,b,v]}class Y2 extends ut{constructor(e){super(),ct(this,e,Z2,V2,at,{selectedNode:0,notes:1,worklog:2,formatDate:3,nodeKindLabel:4})}}function hc(n,e,t){const l=n.slice();return l[100]=e[t],l}function mc(n){let e,t=k("common.paste")+"",l,i,o=n[10].items.length+"",s,c,u;return{c(){e=f("button"),l=H(t),i=w(),s=H(o),r(e,"class","btn svelte-1r5kjfz")},m(d,p){C(d,e,p),a(e,l),a(e,i),a(e,s),c||(u=P(e,"click",n[36]),c=!0)},p(d,p){p[0]&1024&&o!==(o=d[10].items.length+"")&&Q(s,o)},d(d){d&&S(e),c=!1,u()}}}function X2(n){let e,t,l,i,o,s,c;const u=[x2,Q2],d=[];function p(b,v){return b[4].length>0?0:1}e=p(n),t=d[e]=u[e](n);const h=[ew,$2],m=[];function g(b,v){return b[5].length===0?0:1}return i=g(n),o=m[i]=h[i](n),{c(){t.c(),l=w(),o.c(),s=kt()},m(b,v){d[e].m(b,v),C(b,l,v),m[i].m(b,v),C(b,s,v),c=!0},p(b,v){let y=e;e=p(b),e===y?d[e].p(b,v):(yt(),ke(d[y],1,1,()=>{d[y]=null}),Et(),t=d[e],t?t.p(b,v):(t=d[e]=u[e](b),t.c()),ge(t,1),t.m(l.parentNode,l));let E=i;i=g(b),i===E?m[i].p(b,v):(yt(),ke(m[E],1,1,()=>{m[E]=null}),Et(),o=m[i],o?o.p(b,v):(o=m[i]=h[i](b),o.c()),ge(o,1),o.m(s.parentNode,s))},i(b){c||(ge(t),ge(o),c=!0)},o(b){ke(t),ke(o),c=!1},d(b){b&&(S(l),S(s)),d[e].d(b),m[i].d(b)}}}function J2(n){let e,t;return{c(){e=f("div"),t=f("p"),t.textContent=`${k("common.loading")}`,r(e,"class","empty-state")},m(l,i){C(l,e,i),a(e,t)},p:se,i:se,o:se,d(l){l&&S(e)}}}function Q2(n){let e,t;return e=new Xf({props:{crumbs:[{name:k("file.root")}]}}),{c(){Qe(e.$$.fragment)},m(l,i){Ye(e,l,i),t=!0},p:se,i(l){t||(ge(e.$$.fragment,l),t=!0)},o(l){ke(e.$$.fragment,l),t=!1},d(l){Xe(e,l)}}}function x2(n){let e,t,l,i,o,s,c,u=k("common.backLabel")+"",d,p,h,m;return e=new Xf({props:{crumbs:[{name:k("file.root")},...n[4]]}}),e.$on("navigate",n[59]),{c(){Qe(e.$$.fragment),t=w(),l=f("button"),i=ae("svg"),o=ae("line"),s=ae("polyline"),c=w(),d=H(u),r(o,"x1","19"),r(o,"y1","12"),r(o,"x2","5"),r(o,"y2","12"),r(s,"points","12 19 5 12 12 5"),r(i,"width","14"),r(i,"height","14"),r(i,"viewBox","0 0 24 24"),r(i,"fill","none"),r(i,"stroke","currentColor"),r(i,"stroke-width","2"),r(i,"stroke-linecap","round"),r(i,"stroke-linejoin","round"),r(l,"class","btn btn-sm back-btn svelte-1r5kjfz")},m(g,b){Ye(e,g,b),C(g,t,b),C(g,l,b),a(l,i),a(i,o),a(i,s),a(l,c),a(l,d),p=!0,h||(m=P(l,"click",n[25]),h=!0)},p(g,b){const v={};b[0]&16&&(v.crumbs=[{name:k("file.root")},...g[4]]),e.$set(v)},i(g){p||(ge(e.$$.fragment,g),p=!0)},o(g){ke(e.$$.fragment,g),p=!1},d(g){g&&(S(t),S(l)),Xe(e,g),h=!1,m()}}}function $2(n){let e,t=[],l=new Map,i,o=Te(n[5]);const s=c=>c[100].id;for(let c=0;c0?k("file.noFiles"):k("file.noFilesCase"))+"",s,c,u,d,p,h,m,g,b,v;return{c(){e=f("div"),t=f("div"),t.innerHTML='',l=w(),i=f("p"),s=H(o),c=w(),u=f("p"),u.textContent=`${k("file.hint")}`,d=w(),p=f("div"),h=f("button"),h.textContent=`${k("file.addFileSimple")}`,m=w(),g=f("button"),g.textContent=`${k("file.addFolderSimple")}`,r(t,"class","empty-icon"),r(u,"class","hint"),r(h,"class","btn btn-primary svelte-1r5kjfz"),r(g,"class","btn svelte-1r5kjfz"),r(p,"class","empty-actions"),r(e,"class","empty-state")},m(y,E){C(y,e,E),a(e,t),a(e,l),a(e,i),a(i,s),a(e,c),a(e,u),a(e,d),a(e,p),a(p,h),a(p,m),a(p,g),b||(v=[P(h,"click",n[29]),P(g,"click",n[30])],b=!0)},p(y,E){E[0]&16&&o!==(o=(y[4].length>0?k("file.noFiles"):k("file.noFilesCase"))+"")&&Q(s,o)},i:se,o:se,d(y){y&&S(e),b=!1,Ce(v)}}}function gc(n,e){let t,l,i;return l=new Hg({props:{item:e[100],selected:e[11].includes(e[100].id),onDragStart:e[40],onDragOver:e[41],onDrop:e[42]}}),l.$on("navigate",e[60]),l.$on("preview",e[61]),l.$on("openExternal",e[62]),l.$on("showInFolder",e[63]),l.$on("delete",e[64]),l.$on("rename",e[65]),l.$on("duplicate",e[66]),l.$on("cut",e[67]),l.$on("copy",e[68]),l.$on("selectOne",e[69]),l.$on("toggleSelect",e[70]),l.$on("rangeSelect",e[71]),{key:n,first:null,c(){t=kt(),Qe(l.$$.fragment),this.first=t},m(o,s){C(o,t,s),Ye(l,o,s),i=!0},p(o,s){e=o;const c={};s[0]&32&&(c.item=e[100]),s[0]&2080&&(c.selected=e[11].includes(e[100].id)),l.$set(c)},i(o){i||(ge(l.$$.fragment,o),i=!0)},o(o){ke(l.$$.fragment,o),i=!1},d(o){o&&S(t),Xe(l,o)}}}function _c(n){let e,t;return{c(){e=f("div"),t=f("p"),t.textContent=`${k("file.scanning")}`,r(e,"class","empty-state")},m(l,i){C(l,e,i),a(e,t)},d(l){l&&S(e)}}}function bc(n){let e,t,l,i,o,s,c,u,d,p,h,m,g,b,v,y,E,T=n[17]&&kc(n);return{c(){e=f("div"),t=f("div"),l=f("h3"),l.textContent=`${k("rename.title")}`,i=w(),o=f("div"),s=f("label"),c=f("span"),c.textContent=`${k("common.newName")}`,u=w(),d=f("input"),p=w(),T&&T.c(),h=w(),m=f("div"),g=f("button"),g.textContent=`${k("common.rename")}`,b=w(),v=f("button"),v.textContent=`${k("common.cancel")}`,r(c,"class","label-text"),r(d,"type","text"),r(o,"class","form-group"),r(g,"class","btn btn-primary svelte-1r5kjfz"),r(v,"class","btn svelte-1r5kjfz"),r(m,"class","modal-actions"),r(t,"class","modal"),r(e,"class","modal-overlay"),r(e,"role","button"),r(e,"tabindex","0")},m(N,A){C(N,e,A),a(e,t),a(t,l),a(t,i),a(t,o),a(o,s),a(s,c),a(s,u),a(s,d),Me(d,n[16]),a(t,p),T&&T.m(t,null),a(t,h),a(t,m),a(m,g),a(m,b),a(m,v),y||(E=[P(d,"input",n[72]),P(d,"keydown",n[45]),P(g,"click",n[43]),P(v,"click",n[44]),P(e,"click",xt(n[44])),P(e,"keydown",n[73])],y=!0)},p(N,A){A[0]&65536&&d.value!==N[16]&&Me(d,N[16]),N[17]?T?T.p(N,A):(T=kc(N),T.c(),T.m(t,h)):T&&(T.d(1),T=null)},d(N){N&&S(e),T&&T.d(),y=!1,Ce(E)}}}function kc(n){let e,t;return{c(){e=f("div"),t=H(n[17]),r(e,"class","rename-error svelte-1r5kjfz")},m(l,i){C(l,e,i),a(e,t)},p(l,i){i[0]&131072&&Q(t,l[17])},d(l){l&&S(e)}}}function vc(n){let e,t;return e=new qd({props:{title:n[19],message:n[20],confirmText:n[22],danger:n[21]}}),e.$on("confirm",n[46]),e.$on("cancel",n[47]),{c(){Qe(e.$$.fragment)},m(l,i){Ye(e,l,i),t=!0},p(l,i){const o={};i[0]&524288&&(o.title=l[19]),i[0]&1048576&&(o.message=l[20]),i[0]&4194304&&(o.confirmText=l[22]),i[0]&2097152&&(o.danger=l[21]),e.$set(o)},i(l){t||(ge(e.$$.fragment,l),t=!0)},o(l){ke(e.$$.fragment,l),t=!1},d(l){Xe(e,l)}}}function wc(n){let e,t,l,i=k("file.importTitle")+"",o,s,c=(n[0]?n[0].title:"")+"",u,d,p,h,m,g,b,v=n[13].files+"",y,E,T,N,A,I=n[13].folders+"",O,R,D,B,j,U=(n[13].totalBytes/1024).toFixed(1)+"",z,W,K,Y,F,L,M,q,X,Z,J,ee,te=n[13].isDangerous&&yc(n);return{c(){e=f("div"),t=f("div"),l=f("h3"),o=H(i),s=H(" «"),u=H(c),d=H("»"),p=w(),h=f("div"),m=f("div"),g=f("span"),g.textContent=`${k("file.importFiles")}`,b=f("span"),y=H(v),E=w(),T=f("div"),N=f("span"),N.textContent=`${k("file.importFolders")}`,A=f("span"),O=H(I),R=w(),D=f("div"),B=f("span"),B.textContent=`${k("file.importSize")}`,j=f("span"),z=H(U),W=H(" KB"),K=w(),te&&te.c(),Y=w(),F=f("div"),L=f("button"),L.textContent=`${k("file.importCopy")}`,M=w(),q=f("button"),q.textContent=`${k("file.importLink")}`,X=w(),Z=f("button"),Z.textContent=`${k("common.cancel")}`,r(m,"class","summary-row svelte-1r5kjfz"),r(T,"class","summary-row svelte-1r5kjfz"),r(D,"class","summary-row svelte-1r5kjfz"),r(h,"class","import-summary svelte-1r5kjfz"),r(L,"class","btn btn-primary svelte-1r5kjfz"),r(q,"class","btn svelte-1r5kjfz"),r(Z,"class","btn svelte-1r5kjfz"),r(F,"class","modal-actions"),r(t,"class","modal"),r(e,"class","modal-overlay"),r(e,"role","button"),r(e,"tabindex","0")},m(le,_e){C(le,e,_e),a(e,t),a(t,l),a(l,o),a(l,s),a(l,u),a(l,d),a(t,p),a(t,h),a(h,m),a(m,g),a(m,b),a(b,y),a(h,E),a(h,T),a(T,N),a(T,A),a(A,O),a(h,R),a(h,D),a(D,B),a(D,j),a(j,z),a(j,W),a(h,K),te&&te.m(h,null),a(t,Y),a(t,F),a(F,L),a(F,M),a(F,q),a(F,X),a(F,Z),J||(ee=[P(L,"click",n[74]),P(q,"click",n[75]),P(Z,"click",n[49]),P(e,"click",xt(n[49])),P(e,"keydown",n[76])],J=!0)},p(le,_e){_e[0]&1&&c!==(c=(le[0]?le[0].title:"")+"")&&Q(u,c),_e[0]&8192&&v!==(v=le[13].files+"")&&Q(y,v),_e[0]&8192&&I!==(I=le[13].folders+"")&&Q(O,I),_e[0]&8192&&U!==(U=(le[13].totalBytes/1024).toFixed(1)+"")&&Q(z,U),le[13].isDangerous?te?te.p(le,_e):(te=yc(le),te.c(),te.m(h,null)):te&&(te.d(1),te=null)},d(le){le&&S(e),te&&te.d(),J=!1,Ce(ee)}}}function yc(n){let e,t,l,i,o,s,c=n[13].dangerReason+"",u;return{c(){e=f("div"),t=ae("svg"),l=ae("path"),i=ae("line"),o=ae("line"),s=w(),u=H(c),r(l,"d","M10.29 3.86L1.82 18a2 2 0 0 0 1.71 3h16.94a2 2 0 0 0 1.71-3L13.71 3.86a2 2 0 0 0-3.42 0z"),r(i,"x1","12"),r(i,"y1","9"),r(i,"x2","12"),r(i,"y2","13"),r(o,"x1","12"),r(o,"y1","17"),r(o,"x2","12.01"),r(o,"y2","17"),r(t,"width","14"),r(t,"height","14"),r(t,"viewBox","0 0 24 24"),r(t,"fill","none"),r(t,"stroke","currentColor"),r(t,"stroke-width","2"),r(t,"stroke-linecap","round"),r(t,"stroke-linejoin","round"),r(e,"class","summary-warn svelte-1r5kjfz")},m(d,p){C(d,e,p),a(e,t),a(t,l),a(t,i),a(t,o),a(e,s),a(e,u)},p(d,p){p[0]&8192&&c!==(c=d[13].dangerReason+"")&&Q(u,c)},d(d){d&&S(e)}}}function Ec(n){let e,t;return e=new Pd({props:{item:n[6],content:n[7],loading:n[8],error:n[9]}}),e.$on("close",n[28]),e.$on("openExternal",n[77]),{c(){Qe(e.$$.fragment)},m(l,i){Ye(e,l,i),t=!0},p(l,i){const o={};i[0]&64&&(o.item=l[6]),i[0]&128&&(o.content=l[7]),i[0]&256&&(o.loading=l[8]),i[0]&512&&(o.error=l[9]),e.$set(o)},i(l){t||(ge(e.$$.fragment,l),t=!0)},o(l){ke(e.$$.fragment,l),t=!1},d(l){Xe(e,l)}}}function tw(n){let e,t,l,i=k("file.addFile")+"",o,s,c,u=k("file.addFolder")+"",d,p,h,m,g,b,v,y,E,T,N,A,I,O,R,D,B=n[10].items.length>0&&mc(n);const j=[J2,X2],U=[];function z(M,q){return M[2]?0:1}b=z(n),v=U[b]=j[b](n);let W=n[12]&&!n[14]&&_c(),K=n[15]&&bc(n),Y=n[18]&&vc(n),F=n[14]&&n[13]&&wc(n),L=n[6]&&Ec(n);return{c(){e=f("div"),t=f("div"),l=f("button"),o=H(i),s=w(),c=f("button"),d=H(u),p=w(),h=f("button"),h.textContent=`${k("file.newFile")}`,m=w(),B&&B.c(),g=w(),v.c(),y=w(),W&&W.c(),E=w(),K&&K.c(),T=w(),Y&&Y.c(),N=w(),F&&F.c(),A=w(),L&&L.c(),I=kt(),r(l,"class","btn btn-primary svelte-1r5kjfz"),l.disabled=n[12],r(c,"class","btn svelte-1r5kjfz"),c.disabled=n[12],r(h,"class","btn svelte-1r5kjfz"),r(t,"class","tab-toolbar svelte-1r5kjfz"),r(e,"class","files-tab svelte-1r5kjfz")},m(M,q){C(M,e,q),a(e,t),a(t,l),a(l,o),a(t,s),a(t,c),a(c,d),a(t,p),a(t,h),a(t,m),B&&B.m(t,null),a(e,g),U[b].m(e,null),a(e,y),W&&W.m(e,null),C(M,E,q),K&&K.m(M,q),C(M,T,q),Y&&Y.m(M,q),C(M,N,q),F&&F.m(M,q),C(M,A,q),L&&L.m(M,q),C(M,I,q),O=!0,R||(D=[P(l,"click",n[29]),P(c,"click",n[30]),P(h,"click",n[31])],R=!0)},p(M,q){(!O||q[0]&4096)&&(l.disabled=M[12]),(!O||q[0]&4096)&&(c.disabled=M[12]),M[10].items.length>0?B?B.p(M,q):(B=mc(M),B.c(),B.m(t,null)):B&&(B.d(1),B=null);let X=b;b=z(M),b===X?U[b].p(M,q):(yt(),ke(U[X],1,1,()=>{U[X]=null}),Et(),v=U[b],v?v.p(M,q):(v=U[b]=j[b](M),v.c()),ge(v,1),v.m(e,y)),M[12]&&!M[14]?W||(W=_c(),W.c(),W.m(e,null)):W&&(W.d(1),W=null),M[15]?K?K.p(M,q):(K=bc(M),K.c(),K.m(T.parentNode,T)):K&&(K.d(1),K=null),M[18]?Y?(Y.p(M,q),q[0]&262144&&ge(Y,1)):(Y=vc(M),Y.c(),ge(Y,1),Y.m(N.parentNode,N)):Y&&(yt(),ke(Y,1,1,()=>{Y=null}),Et()),M[14]&&M[13]?F?F.p(M,q):(F=wc(M),F.c(),F.m(A.parentNode,A)):F&&(F.d(1),F=null),M[6]?L?(L.p(M,q),q[0]&64&&ge(L,1)):(L=Ec(M),L.c(),ge(L,1),L.m(I.parentNode,I)):L&&(yt(),ke(L,1,1,()=>{L=null}),Et())},i(M){O||(ge(v),ge(Y),ge(L),O=!0)},o(M){ke(v),ke(Y),ke(L),O=!1},d(M){M&&(S(e),S(E),S(T),S(N),S(A),S(I)),B&&B.d(),U[b].d(),W&&W.d(),K&&K.d(M),Y&&Y.d(M),F&&F.d(M),L&&L.d(M),R=!1,Ce(D)}}}function nw(n,e,t){let{selectedNode:l=null}=e,{wailsCall:i=async()=>{}}=e;function o($){try{i("WriteDebugLog","[FilesTab] "+$)}catch{}}const s=pn();let c=!1,u=null,d=[],p=[],h=null,m="",g=!1,b="",v={items:[],mode:"copy"},y=[],E=[],T=!1,N=null,A=!1,I="",O="",R=!1,D="",B="",j="",U=!1,z="",W="",K=!1,Y=k("common.delete"),F=null,L=null;function M($){t(4,d=[]),t(3,u=null),t(11,y=[]),E=[],t(6,h=null),t(7,m=""),Z($)}let q=null;function X(){Ie()}function Z($){te($)}function J($){const he=p.find(tt=>tt.id===$);he&&ze(he)}function ee($){t(11,y=[$])}async function te($){t(2,c=!0);try{let he=await i("ListItems",$)||[];o("loadFolder nodeId="+$+" count="+he.length+" first="+(he[0]?JSON.stringify({id:he[0].id,name:he[0].name,type:he[0].type,fileId:he[0].fileId}):"none")),he.sort((tt,st)=>tt.type!==st.type?tt.type==="folder"?-1:1:(tt.name||"").localeCompare(st.name||"")),t(5,p=he)}catch(he){o("loadFolder ERROR nodeId="+$+" err="+String(he)),t(5,p=[])}t(2,c=!1)}async function le($){if(l){try{const he=await i("GetNodeDetail",$);he&&t(4,d=[...d,{id:$,name:he.title}])}catch{t(4,d=[...d,{id:$,name:"..."}])}t(3,u=$),await te($)}}function _e(){if(d.length<2)t(4,d=[]),t(3,u=null),l&&te(l.id);else{const $=d[d.length-2];t(4,d=d.slice(0,-1)),t(3,u=$.id),te($.id)}}function oe($){const he=d[$];t(4,d=d.slice(0,$+1)),t(3,u=he.id),te(he.id)}async function ze($){if(o("openPreview item="+JSON.stringify({id:$.id,name:$.name,type:$.type,fileId:$.fileId})),$&&$.fileId&&Li($)){o("isMarkdown=true fileId="+$.fileId);try{const he=await i("CheckFileAction",$.fileId);if(o("CheckFileAction result="+JSON.stringify(he)),he.action==="note"){s("openNote",{id:he.noteId,title:he.noteTitle});return}if(he.action==="external"){await i("OpenFile",$.fileId);return}}catch(he){o("CheckFileAction ERROR: "+String(he)),console.warn("CheckFileAction failed, falling back to preview:",he)}}else o("isMarkdown=false or no fileId, type="+$.type);t(6,h=$),t(7,m=""),t(9,b=""),t(8,g=!0);try{Dg($)?t(7,m=await i("GetFileBase64",$.fileId)||""):Pg($)?t(7,m=await i("ReadFileText",$.fileId)||""):$.fileId&&$.type!=="folder"&&(o("fallback text read for item="+$.name+" mime="+$.mime),t(7,m=await i("ReadFileText",$.fileId)||""))}catch(he){t(9,b=String(he))}t(8,g=!1)}function Ge(){t(6,h=null),t(7,m=""),t(9,b="")}async function Ie(){const $=await i("PickFile");if(!$)return;const he=u||l.id;await At(he,$)}async function ne(){const $=await i("PickDirectory");if(!$)return;const he=u||l.id;await At(he,$)}async function re(){const $=prompt(k("file.namePrompt"));if(!(!$||!$.trim()))try{const he=u||l.id;await i("CreateEmptyFile",he,$.trim()),await te(he),s("refreshParent",{nodeId:he})}catch(he){s("error",{message:String(he)})}}async function Ne($){try{await i("DuplicateNode",$);const he=u||l.id;await te(he),s("refreshParent",{nodeId:he})}catch(he){s("error",{message:String(he)})}}function Fe($){const he=p.find(tt=>tt.id===$);he&&it(he.id,he.name)}function we($){t(10,v={items:[$],mode:"cut"})}function je($){t(10,v={items:[$],mode:"copy"})}async function xe(){if(v.items.length===0)return;const $=u||l.id;try{if(v.mode==="copy")for(const he of v.items)await i("DuplicateNode",he);else for(const he of v.items)await i("MoveNode",he,$);t(10,v={items:[],mode:"copy"}),await te($)}catch(he){s("error",{message:String(he)})}}function Ae($){y.includes($)?t(11,y=y.filter(he=>he!==$)):t(11,y=[...y,$])}function Ve($){t(11,y=[$])}function Ue(){t(11,y=p.map($=>$.id))}function Se($){if(p.length===0)return;const he=y.length>0?y[y.length-1]:p[0].id,tt=p.findIndex(Xt=>Xt.id===he),st=p.findIndex(Xt=>Xt.id===$);if(tt===-1||st===-1)return;const Yt=Math.min(tt,st),Wt=Math.max(tt,st),vn=p.slice(Yt,Wt+1).map(Xt=>Xt.id),Bn=new Set(y);vn.forEach(Xt=>Bn.add(Xt)),t(11,y=[...Bn])}function He(){t(11,y=[])}function Oe($){return $.length>0?$:p.map(he=>he.id)}async function Ke(){const $=Oe(y),he=p.find(st=>st.id===$[0]);let tt;$.length===1&&(he==null?void 0:he.type)==="folder"?tt=k("delete.folder"):$.length===1?tt=k("delete.file"):tt=k("delete.files",{count:$.length}),pe({title:k("delete.confirmTitle"),message:k("delete.confirmMessage")+" "+tt+"?",confirmText:k("common.delete"),danger:!0,onConfirm:async()=>{for(const Yt of $)try{await i("DeleteFileOrFolder",Yt)}catch(Wt){s("error",{message:String(Wt)})}t(11,y=[]);const st=u||l.id;await te(st)}})}function Pe(){const $=Oe(y);t(10,v={items:$,mode:"cut"}),t(11,y=[])}function ue(){const $=Oe(y);t(10,v={items:$,mode:"copy"}),t(11,y=[])}function be($,he){$.stopPropagation();const tt=y.includes(he)?y:[he];E=tt,$.dataTransfer.effectAllowed="move",$.dataTransfer.setData("text/plain",tt.join(","))}function x($,he){const tt=p.find(st=>st.id===he);tt&&tt.type==="folder"&&($.preventDefault(),$.stopPropagation(),$.dataTransfer.dropEffect="move")}async function ye($,he){if($.preventDefault(),$.stopPropagation(),E.length!==0){for(const tt of E)try{await i("MoveNode",tt,he)}catch(st){s("error",{message:String(st)})}E=[],t(11,y=[]),await te(u||l.id)}}function me(){if(y.length===1){const $=p.find(he=>he.id===y[0]);$&&($.type==="folder"?le($.id):ze($))}}function Re(){if(y.length===1){const $=p.find(he=>he.id===y[0]);$&&$.fileId&&i("OpenFile",$.fileId)}}function ft(){if(y.length===1){const $=p.find(he=>he.id===y[0]);$&&it($.id,$.name)}}function it($,he){D=$,t(16,B=he),t(17,j=""),t(15,R=!0)}async function Ze(){const $=B.trim();if(!$){t(17,j=k("rename.emptyError"));return}try{await i("ValidateName",$)}catch{t(17,j=k("rename.invalidError"));return}t(15,R=!1);const he=D;D="";try{await i("RenameNode",he,$),l&&l.id===he&&t(0,l={...l,title:$}),s("refreshParent",{nodeId:u||l.id}),u&&await te(u)}catch(tt){s("error",{message:String(tt)})}}function dt(){t(15,R=!1),D="",t(16,B=""),t(17,j="")}function Je($){$.key==="Enter"?Ze():t(17,j="")}function pe($){t(19,z=$.title||k("common.confirm")),t(20,W=$.message||""),t(21,K=$.danger!==void 0?$.danger:!0),t(22,Y=$.confirmText||k("common.delete")),F=$.onConfirm||null,L=$.onCancel||null,t(18,U=!0)}function qe(){t(18,U=!1),F=null,L=null}function pt(){F&&F(),qe()}function vt(){L&&L(),qe()}async function At($,he){t(12,T=!0);try{const tt=await i("PreviewImport",he);t(13,N=tt),I=he,O=$,t(14,A=!0)}catch(tt){s("error",{message:String(tt)})}t(12,T=!1)}async function Zt($){try{const he=O||l.id;$==="copy"?await i("AddPathCopy",he,I):await i("AddPathLink",he,I),t(14,A=!1),t(13,N=null),t(4,d=[]),t(3,u=null),await te(he),s("refreshParent",{nodeId:he})}catch(he){s("error",{message:String(he)})}}function mt(){t(14,A=!1),t(13,N=null)}async function Mt({id:$,type:he}){const tt=k(he==="folder"?"delete.folder":"delete.file");pe({title:k("delete.confirmTitle"),message:k("delete.confirmMessage")+" "+tt+"?",confirmText:k("common.delete"),danger:!0,onConfirm:async()=>{try{await i("DeleteFileOrFolder",$);const st=u||l.id;await te(st)}catch(st){s("error",{message:String(st)})}}})}function It($){if($.ctrlKey||$.metaKey)$.key==="c"||$.key==="C"?($.preventDefault(),ue()):$.key==="x"||$.key==="X"?($.preventDefault(),Pe()):$.key==="v"||$.key==="V"?($.preventDefault(),xe()):$.key==="a"||$.key==="A"?($.preventDefault(),Ue()):$.key==="o"||$.key==="O"?($.preventDefault(),Re()):$.key==="Enter"&&($.preventDefault(),me());else if($.key==="Enter")$.preventDefault(),me();else if($.key==="Delete"){if(h){$.preventDefault(),Ge();return}if(y.length>0){$.preventDefault(),Ke();return}}else if($.key==="Escape"){if(h){Ge();return}if(y.length>0){He();return}}else $.key==="F2"&&($.preventDefault(),ft())}function jt(){t(4,d=[]),t(3,u=null),t(5,p=[]),t(11,y=[]),E=[],t(6,h=null),t(7,m=""),t(9,b=""),t(10,v={items:[],mode:"copy"}),t(12,T=!1),t(13,N=null),t(14,A=!1),t(15,R=!1),t(18,U=!1)}const an=$=>{const he=$.detail;he===0?(t(4,d=[]),t(3,u=null),l&&te(l.id)):oe(he-1)},cn=$=>le($.detail),Ut=$=>ze($.detail),Rn=$=>i("OpenFile",$.detail),Ct=$=>i("OpenFolder",$.detail),Lt=$=>Mt($.detail),gt=$=>Fe($.detail.id),bl=$=>Ne($.detail),bn=$=>we($.detail),kl=$=>je($.detail),en=$=>Ve($.detail),_t=$=>Ae($.detail),Ot=$=>Se($.detail);function tn(){B=this.value,t(16,B)}const un=$=>$.key==="Escape"&&dt(),Ht=()=>Zt("copy"),$t=()=>Zt("link"),kn=$=>$.key==="Escape"&&mt(),fn=$=>i("OpenFile",$.detail);return n.$$set=$=>{"selectedNode"in $&&t(0,l=$.selectedNode),"wailsCall"in $&&t(1,i=$.wailsCall)},n.$$.update=()=>{n.$$.dirty[0]&1|n.$$.dirty[1]&134217728&&l&&l.id&&l.id!==q&&(o("selectedNode changed: id="+l.id+" title="+l.title+" type="+l.type),t(58,q=l.id),M(l.id))},[l,i,c,u,d,p,h,m,g,b,v,y,T,N,A,R,B,j,U,z,W,K,Y,te,le,_e,oe,ze,Ge,Ie,ne,re,Ne,Fe,we,je,xe,Ae,Ve,Se,be,x,ye,Ze,dt,Je,pt,vt,Zt,mt,Mt,M,X,Z,J,ee,It,jt,q,an,cn,Ut,Rn,Ct,Lt,gt,bl,bn,kl,en,_t,Ot,tn,un,Ht,$t,kn,fn]}class lw extends ut{constructor(e){super(),ct(this,e,nw,tw,at,{selectedNode:0,wailsCall:1,resetToNode:51,addFile:52,loadFolder:53,openFileById:54,focusItem:55,handleFilesKeydown:56,resetState:57},null,[-1,-1,-1,-1])}get resetToNode(){return this.$$.ctx[51]}get addFile(){return this.$$.ctx[52]}get loadFolder(){return this.$$.ctx[53]}get openFileById(){return this.$$.ctx[54]}get focusItem(){return this.$$.ctx[55]}get handleFilesKeydown(){return this.$$.ctx[56]}get resetState(){return this.$$.ctx[57]}}const{Boolean:Gd}=Ls;function Tc(n,e,t){const l=n.slice();return l[463]=e[t],l}function Sc(n,e,t){const l=n.slice();return l[466]=e[t],l}function Cc(n,e,t){const l=n.slice();return l[469]=e[t],l}function Ac(n,e,t){const l=n.slice();return l[469]=e[t],l}function Nc(n,e,t){const l=n.slice();return l[486]=e[t],l}function Ic(n,e,t){const l=n.slice();return l[513]=e[t],l}function Rc(n,e,t){const l=n.slice();return l[486]=e[t],l}function Mc(n,e,t){const l=n.slice();return l[513]=e[t],l}function Lc(n,e,t){const l=n.slice();return l[520]=e[t],l}function Oc(n,e,t){const l=n.slice();return l[520]=e[t],l}function Dc(n,e,t){const l=n.slice();return l[489]=e[t],l[509]=e,l[510]=t,l}function Pc(n,e,t){const l=n.slice();return l[486]=e[t],l}function qc(n,e,t){const l=n.slice();return l[506]=e[t],l}function zc(n,e,t){const l=n.slice();return l[474]=e[t],l}function Bc(n,e,t){const l=n.slice();return l[499]=e[t],l}function Fc(n,e,t){const l=n.slice();return l[474]=e[t],l}function jc(n,e,t){const l=n.slice();return l[486]=e[t],l}function Uc(n,e,t){const l=n.slice();return l[483]=e[t],l}function Hc(n,e,t){const l=n.slice();return l[486]=e[t],l}function Wc(n,e,t){const l=n.slice();return l[489]=e[t],l[490]=e,l[491]=t,l}function Gc(n,e,t){const l=n.slice();return l[486]=e[t],l}function Kc(n,e,t){const l=n.slice();return l[480]=e[t],l}function Vc(n,e,t){const l=n.slice();return l[477]=e[t],l}function Zc(n,e,t){const l=n.slice();return l[474]=e[t],l}function Yc(n,e,t){const l=n.slice();return l[496]=e[t],l}function Xc(n,e,t){const l=n.slice();return l[527]=e[t],l}function iw(n){let e,t,l,i,o,s,c,u,d,p,h,m,g,b,v,y,E,T,N,A,I,O,R,D,B,j,U,z,W,K,Y,F,L,M,q,X,Z,J,ee,te,le,_e,oe,ze,Ge,Ie,ne,re,Ne,Fe,we,je,xe=n[97]&&Jc(n),Ae=Te(n[0]),Ve=[];for(let pe=0;pe0?0:1}I=He(n),O=Se[I]=Ue[I](n),B=new O0({props:{syncStatus:n[112],syncLoading:n[113],syncMessage:n[114],syncMessageKind:n[115],onSync:n[228],onOpenSettings:n[234]}}),M=new y2({props:{title:n[119],subtitle:n[118],wailsCall:de,typeLabel:n[196],onOpenSearchResult:n[223],$$slots:{actions:[fw]},$$scope:{ctx:n}}});let Oe=n[34]&&nu(n);const Ke=[vw,kw,bw,_w,gw,mw,hw,pw,dw],Pe=[];function ue(pe,qe){return qe[0]&2&&(Z=null),pe[37]?0:pe[2]?1:pe[1]==="inbox"?2:pe[1]==="trash"?3:pe[1]==="journal"?4:pe[1]==="today"?5:pe[1]==="activity"?6:(Z==null&&(Z=!!(pe[1]&&pe[1].startsWith("plugin:"))),Z?7:8)}J=ue(n,[-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1]),ee=Pe[J]=Ke[J](n);let be=n[80]&&rf(n),x=n[84].visible&&uf(n),ye=n[51]&&hf(n),me=n[85]&&mf(n),Re=n[104]&&_f(n),ft=n[107]&&kf(n),it=n[70]&&Ef(n),Ze=n[99]&&Sf(n),dt=n[91]&&Cf(n),Je=n[13]&&Af(n);return{c(){e=f("div"),xe&&xe.c(),t=w(),l=f("aside"),i=f("div"),o=f("img"),c=w(),u=f("span"),u.textContent=`${k("nav.brand")}`,d=w(),p=f("nav"),h=f("div"),m=f("div"),m.textContent=`${k("nav.system")}`,g=w();for(let pe=0;pe',W=w(),K=f("span"),Y=H(n[33]),F=w(),L=f("main"),Qe(M.$$.fragment),q=w(),Oe&&Oe.c(),X=w(),ee.c(),te=w(),be&&be.c(),le=w(),x&&x.c(),_e=w(),ye&&ye.c(),oe=w(),me&&me.c(),ze=w(),Re&&Re.c(),Ge=w(),ft&&ft.c(),Ie=w(),it&&it.c(),ne=w(),Ze&&Ze.c(),re=w(),dt&&dt.c(),Ne=w(),Je&&Je.c(),r(o,"class","logo svelte-1uu9qhk"),Pl(o.src,s="/assets/app-icons/icon_32x32.png")||r(o,"src",s),r(o,"width","20"),r(o,"height","20"),r(o,"alt",""),r(u,"class","brand-name svelte-1uu9qhk"),r(i,"class","sidebar-brand svelte-1uu9qhk"),r(m,"class","nav-label svelte-1uu9qhk"),r(h,"class","nav-group svelte-1uu9qhk"),r(E,"class","svelte-1uu9qhk"),r(N,"class","nav-add-btn svelte-1uu9qhk"),r(N,"title",k("common.create")),r(y,"class","nav-label-row svelte-1uu9qhk"),r(v,"class","nav-group svelte-1uu9qhk"),r(p,"class","sidebar-nav svelte-1uu9qhk"),r(z,"class","sidebar-settings-btn svelte-1uu9qhk"),r(z,"title",k("common.settings")),r(K,"class","version svelte-1uu9qhk"),r(U,"class","sidebar-footer-row svelte-1uu9qhk"),r(D,"class","sidebar-footer svelte-1uu9qhk"),r(l,"class","sidebar svelte-1uu9qhk"),r(L,"class","main svelte-1uu9qhk"),r(e,"class","app svelte-1uu9qhk")},m(pe,qe){C(pe,e,qe),xe&&xe.m(e,null),a(e,t),a(e,l),a(l,i),a(i,o),a(i,c),a(i,u),a(l,d),a(l,p),a(p,h),a(h,m),a(h,g);for(let pt=0;pt{Se[pt]=null}),Et(),O=Se[I],O?O.p(pe,qe):(O=Se[I]=Ue[I](pe),O.c()),ge(O,1),O.m(v,null));const vt={};qe[3]&524288&&(vt.syncStatus=pe[112]),qe[3]&1048576&&(vt.syncLoading=pe[113]),qe[3]&2097152&&(vt.syncMessage=pe[114]),qe[3]&4194304&&(vt.syncMessageKind=pe[115]),B.$set(vt),(!Fe||qe[1]&4)&&Q(Y,pe[33]);const At={};qe[3]&67108864&&(At.title=pe[119]),qe[3]&33554432&&(At.subtitle=pe[118]),qe[0]&2|qe[2]&16480|qe[17]&8&&(At.$$scope={dirty:qe,ctx:pe}),M.$set(At),pe[34]?Oe?Oe.p(pe,qe):(Oe=nu(pe),Oe.c(),Oe.m(L,X)):Oe&&(Oe.d(1),Oe=null);let Zt=J;J=ue(pe,qe),J===Zt?Pe[J].p(pe,qe):(yt(),ke(Pe[Zt],1,1,()=>{Pe[Zt]=null}),Et(),ee=Pe[J],ee?ee.p(pe,qe):(ee=Pe[J]=Ke[J](pe),ee.c()),ge(ee,1),ee.m(L,te)),pe[80]?be?(be.p(pe,qe),qe[2]&262144&&ge(be,1)):(be=rf(pe),be.c(),ge(be,1),be.m(L,le)):be&&(yt(),ke(be,1,1,()=>{be=null}),Et()),pe[84].visible?x?(x.p(pe,qe),qe[2]&4194304&&ge(x,1)):(x=uf(pe),x.c(),ge(x,1),x.m(L,_e)):x&&(yt(),ke(x,1,1,()=>{x=null}),Et()),pe[51]?ye?ye.p(pe,qe):(ye=hf(pe),ye.c(),ye.m(L,oe)):ye&&(ye.d(1),ye=null),pe[85]?me?me.p(pe,qe):(me=mf(pe),me.c(),me.m(L,ze)):me&&(me.d(1),me=null),pe[104]?Re?Re.p(pe,qe):(Re=_f(pe),Re.c(),Re.m(L,Ge)):Re&&(Re.d(1),Re=null),pe[107]?ft?ft.p(pe,qe):(ft=kf(pe),ft.c(),ft.m(L,Ie)):ft&&(ft.d(1),ft=null),pe[70]?it?it.p(pe,qe):(it=Ef(pe),it.c(),it.m(L,ne)):it&&(it.d(1),it=null),pe[99]?Ze?(Ze.p(pe,qe),qe[3]&64&&ge(Ze,1)):(Ze=Sf(pe),Ze.c(),ge(Ze,1),Ze.m(L,re)):Ze&&(yt(),ke(Ze,1,1,()=>{Ze=null}),Et()),pe[91]?dt?(dt.p(pe,qe),qe[2]&536870912&&ge(dt,1)):(dt=Cf(pe),dt.c(),ge(dt,1),dt.m(L,Ne)):dt&&(yt(),ke(dt,1,1,()=>{dt=null}),Et()),pe[13]?Je?(Je.p(pe,qe),qe[0]&8192&&ge(Je,1)):(Je=Af(pe),Je.c(),ge(Je,1),Je.m(L,null)):Je&&(yt(),ke(Je,1,1,()=>{Je=null}),Et())},i(pe){Fe||(ge(O),ge(B.$$.fragment,pe),ge(M.$$.fragment,pe),ge(ee),ge(be),ge(x),ge(Ze),ge(dt),ge(Je),Fe=!0)},o(pe){ke(O),ke(B.$$.fragment,pe),ke(M.$$.fragment,pe),ke(ee),ke(be),ke(x),ke(Ze),ke(dt),ke(Je),Fe=!1},d(pe){pe&&S(e),xe&&xe.d(),et(Ve,pe),Se[I].d(),Xe(B),Xe(M),Oe&&Oe.d(),Pe[J].d(),be&&be.d(),x&&x.d(),ye&&ye.d(),me&&me.d(),Re&&Re.d(),ft&&ft.d(),it&&it.d(),Ze&&Ze.d(),dt&&dt.d(),Je&&Je.d(),we=!1,Ce(je)}}}function sw(n){var l;let e,t;return e=new vv({props:{vaultPath:((l=n[10])==null?void 0:l.vaultPath)||"",onComplete:n[230]}}),{c(){Qe(e.$$.fragment)},m(i,o){Ye(e,i,o),t=!0},p(i,o){var c;const s={};o[0]&1024&&(s.vaultPath=((c=i[10])==null?void 0:c.vaultPath)||""),e.$set(s)},i(i){t||(ge(e.$$.fragment,i),t=!0)},o(i){ke(e.$$.fragment,i),t=!1},d(i){Xe(e,i)}}}function ow(n){let e,t;return e=new _v({props:{onComplete:n[229]}}),{c(){Qe(e.$$.fragment)},m(l,i){Ye(e,l,i),t=!0},p:se,i(l){t||(ge(e.$$.fragment,l),t=!0)},o(l){ke(e.$$.fragment,l),t=!1},d(l){Xe(e,l)}}}function Jc(n){let e,t,l;return{c(){e=f("div"),t=f("div"),l=H(n[98]),r(t,"class","capture-drop-box svelte-1uu9qhk"),r(e,"class","capture-drop-overlay svelte-1uu9qhk")},m(i,o){C(i,e,o),a(e,t),a(t,l)},p(i,o){o[3]&32&&Q(l,i[98])},d(i){i&&S(e)}}}function Qc(n){let e,t;return{c(){e=f("span"),t=H(n[61]),r(e,"class","nav-badge svelte-1uu9qhk")},m(l,i){C(l,e,i),a(e,t)},p(l,i){i[1]&1073741824&&Q(t,l[61])},d(l){l&&S(e)}}}function xc(n){let e,t;return{c(){e=f("span"),t=H(n[75]),r(e,"class","nav-badge svelte-1uu9qhk")},m(l,i){C(l,e,i),a(e,t)},p(l,i){i[2]&8192&&Q(t,l[75])},d(l){l&&S(e)}}}function $c(n){let e,t=n[527].label+"",l,i,o,s,c,u,d,p=n[527].id==="journal"&&n[61]>0&&Qc(n),h=n[527].id==="trash"&&n[75]>0&&xc(n);function m(){return n[233](n[527])}return{c(){e=f("button"),l=H(t),i=w(),p&&p.c(),o=w(),h&&h.c(),s=w(),r(e,"class",c="nav-item "+(n[1]===n[527].id?"selected":"")+" svelte-1uu9qhk")},m(g,b){C(g,e,b),a(e,l),a(e,i),p&&p.m(e,null),a(e,o),h&&h.m(e,null),a(e,s),u||(d=P(e,"click",m),u=!0)},p(g,b){n=g,b[0]&1&&t!==(t=n[527].label+"")&&Q(l,t),n[527].id==="journal"&&n[61]>0?p?p.p(n,b):(p=Qc(n),p.c(),p.m(e,o)):p&&(p.d(1),p=null),n[527].id==="trash"&&n[75]>0?h?h.p(n,b):(h=xc(n),h.c(),h.m(e,s)):h&&(h.d(1),h=null),b[0]&3&&c!==(c="nav-item "+(n[1]===n[527].id?"selected":"")+" svelte-1uu9qhk")&&r(e,"class",c)},d(g){g&&S(e),p&&p.d(),h&&h.d(),u=!1,d()}}}function rw(n){let e;return{c(){e=f("div"),e.textContent=`${k("nav.noNodes")}`,r(e,"class","nav-empty svelte-1uu9qhk")},m(t,l){C(t,e,l)},p:se,i:se,o:se,d(t){t&&S(e)}}}function aw(n){var s;let e,t,l,i,o;return t=new zd({props:{nodes:n[14],expanded:n[90],selectedNodeId:((s=n[2])==null?void 0:s.id)||"",onSelect:n[125],onToggle:n[138],onContextMenu:n[136],onDrop:n[139]}}),{c(){e=f("div"),Qe(t.$$.fragment),r(e,"class","workspace-tree-area svelte-1uu9qhk"),r(e,"role","region"),r(e,"aria-label",k("nav.workspace")),ce(e,"drop-valid",n[95])},m(c,u){C(c,e,u),Ye(t,e,null),l=!0,i||(o=[P(e,"dragover",ji(n[141])),P(e,"dragleave",n[142]),P(e,"drop",n[140])],i=!0)},p(c,u){var p;const d={};u[0]&16384&&(d.nodes=c[14]),u[2]&268435456&&(d.expanded=c[90]),u[0]&4&&(d.selectedNodeId=((p=c[2])==null?void 0:p.id)||""),t.$set(d),(!l||u[3]&4)&&ce(e,"drop-valid",c[95])},i(c){l||(ge(t.$$.fragment,c),l=!0)},o(c){ke(t.$$.fragment,c),l=!1},d(c){c&&S(e),Xe(t),i=!1,Ce(o)}}}function cw(n){let e,t,l,i=Tt("emptyTrash",14)+"",o,s=k("trash.emptyTrash")+"",c,u,d,p,h,m=n[76].length>0&&eu(n);return{c(){m&&m.c(),e=w(),t=f("button"),l=new Ri(!1),o=w(),c=H(s),u=w(),d=f("button"),d.textContent=`${k("trash.openFolder")}`,l.a=o,r(t,"class","btn btn-sm btn-danger svelte-1uu9qhk"),r(d,"class","btn btn-sm svelte-1uu9qhk")},m(g,b){m&&m.m(g,b),C(g,e,b),C(g,t,b),l.m(i,t),a(t,o),a(t,c),C(g,u,b),C(g,d,b),p||(h=[P(t,"click",n[177]),P(d,"click",n[238])],p=!0)},p(g,b){g[76].length>0?m?m.p(g,b):(m=eu(g),m.c(),m.m(e.parentNode,e)):m&&(m.d(1),m=null)},d(g){g&&(S(e),S(t),S(u),S(d)),m&&m.d(g),p=!1,Ce(h)}}}function uw(n){let e,t=(n[67]?k("common.loading"):k("inbox.pasteClipboard"))+"",l,i,o,s,c,u=n[68]&&tu(n);return{c(){e=f("button"),l=H(t),i=w(),u&&u.c(),o=kt(),r(e,"class","btn btn-primary svelte-1uu9qhk"),e.disabled=n[67]},m(d,p){C(d,e,p),a(e,l),C(d,i,p),u&&u.m(d,p),C(d,o,p),s||(c=P(e,"click",n[198]),s=!0)},p(d,p){p[2]&32&&t!==(t=(d[67]?k("common.loading"):k("inbox.pasteClipboard"))+"")&&Q(l,t),p[2]&32&&(e.disabled=d[67]),d[68]?u?u.p(d,p):(u=tu(d),u.c(),u.m(o.parentNode,o)):u&&(u.d(1),u=null)},d(d){d&&(S(e),S(i),S(o)),u&&u.d(d),s=!1,c()}}}function eu(n){let e,t,l=Tt("restore",14)+"",i,o=k("trash.restore")+"",s,c,u=n[76].length+"",d,p,h,m,g,b=Tt("purge",14)+"",v,y=k("common.delete")+"",E,T,N=n[76].length+"",A,I,O,R;return{c(){e=f("button"),t=new Ri(!1),i=w(),s=H(o),c=H(" ("),d=H(u),p=H(")"),h=w(),m=f("button"),g=new Ri(!1),v=w(),E=H(y),T=H(" ("),A=H(N),I=H(")"),t.a=i,r(e,"class","btn btn-sm btn-primary svelte-1uu9qhk"),g.a=v,r(m,"class","btn btn-sm btn-danger svelte-1uu9qhk")},m(D,B){C(D,e,B),t.m(l,e),a(e,i),a(e,s),a(e,c),a(e,d),a(e,p),C(D,h,B),C(D,m,B),g.m(b,m),a(m,v),a(m,E),a(m,T),a(m,A),a(m,I),O||(R=[P(e,"click",n[236]),P(m,"click",n[237])],O=!0)},p(D,B){B[2]&16384&&u!==(u=D[76].length+"")&&Q(d,u),B[2]&16384&&N!==(N=D[76].length+"")&&Q(A,N)},d(D){D&&(S(e),S(h),S(m)),O=!1,Ce(R)}}}function tu(n){let e,t;return{c(){e=f("span"),t=H(n[68]),r(e,"class","inbox-capture-status svelte-1uu9qhk")},m(l,i){C(l,e,i),a(e,t)},p(l,i){i[2]&64&&Q(t,l[68])},d(l){l&&S(e)}}}function fw(n){let e;function t(o,s){if(o[1]==="inbox")return uw;if(o[1]==="trash")return cw}let l=t(n),i=l&&l(n);return{c(){e=f("div"),i&&i.c(),r(e,"slot","actions"),r(e,"class","header-actions svelte-1uu9qhk")},m(o,s){C(o,e,s),i&&i.m(e,null)},p(o,s){l===(l=t(o))&&i?i.p(o,s):(i&&i.d(1),i=l&&l(o),i&&(i.c(),i.m(e,null)))},d(o){o&&S(e),i&&i.d()}}}function nu(n){let e,t=n[120](n[34])+"",l,i,o,s,c;return{c(){e=f("div"),l=H(t),i=w(),o=f("button"),o.innerHTML='',r(o,"class","dismiss-btn svelte-1uu9qhk"),r(o,"aria-label","Dismiss"),r(e,"class","error-banner svelte-1uu9qhk"),r(e,"role","button"),r(e,"tabindex","0")},m(u,d){C(u,e,d),a(e,l),a(e,i),a(e,o),s||(c=[P(o,"click",We(n[239])),P(e,"click",n[240]),P(e,"keydown",function(){pl(zn(n[241]))&&zn(n[241]).apply(this,arguments)})],s=!0)},p(u,d){n=u,d[1]&8&&t!==(t=n[120](n[34])+"")&&Q(l,t)},d(u){u&&S(e),s=!1,Ce(c)}}}function dw(n){let e,t,l;function i(c,u){if(c[89])return Ew;if(c[0].length>0)return yw;if(c[34])return ww}let o=i(n),s=o&&o(n);return{c(){e=f("div"),t=f("h2"),t.textContent=`${k("welcome.title")}`,l=w(),s&&s.c(),r(t,"class","svelte-1uu9qhk"),r(e,"class","welcome svelte-1uu9qhk")},m(c,u){C(c,e,u),a(e,t),a(e,l),s&&s.m(e,null)},p(c,u){o===(o=i(c))&&s?s.p(c,u):(s&&s.d(1),s=o&&o(c),s&&(s.c(),s.m(e,null)))},i:se,o:se,d(c){c&&S(e),s&&s.d()}}}function pw(n){let e,t;return e=new a2({props:{sectionId:n[1]}}),{c(){Qe(e.$$.fragment)},m(l,i){Ye(e,l,i),t=!0},p(l,i){const o={};i[0]&2&&(o.sectionId=l[1]),e.$set(o)},i(l){t||(ge(e.$$.fragment,l),t=!0)},o(l){ke(e.$$.fragment,l),t=!1},d(l){Xe(e,l)}}}function hw(n){let e;function t(o,s){return o[17].length===0?Sw:Tw}let l=t(n),i=l(n);return{c(){e=f("div"),i.c(),r(e,"class","activity-feed svelte-1uu9qhk")},m(o,s){C(o,e,s),i.m(e,null)},p(o,s){l===(l=t(o))&&i?i.p(o,s):(i.d(1),i=l(o),i&&(i.c(),i.m(e,null)))},i:se,o:se,d(o){o&&S(e),i.d()}}}function mw(n){let e,t,l,i;const o=[Aw,Cw],s=[];function c(u,d){return u[16]?0:1}return e=c(n),t=s[e]=o[e](n),{c(){t.c(),l=kt()},m(u,d){s[e].m(u,d),C(u,l,d),i=!0},p(u,d){let p=e;e=c(u),e===p?s[e].p(u,d):(yt(),ke(s[p],1,1,()=>{s[p]=null}),Et(),t=s[e],t?t.p(u,d):(t=s[e]=o[e](u),t.c()),ge(t,1),t.m(l.parentNode,l))},i(u){i||(ge(t),i=!0)},o(u){ke(t),i=!1},d(u){u&&S(l),s[e].d(u)}}}function gw(n){let e,t,l,i=k("suggest.title")+"",o,s,c,u,d,p,h,m=n[61]>0&&su(n);function g(y,E){return y[28]==="suggestions"?Iw:Nw}let b=g(n),v=b(n);return{c(){e=f("div"),t=f("div"),l=f("button"),o=H(i),s=w(),m&&m.c(),c=w(),u=f("button"),u.textContent=`${k("journal.worklogTab")}`,d=w(),v.c(),r(l,"class","journal-tab svelte-1uu9qhk"),ce(l,"active",n[28]==="suggestions"),r(u,"class","journal-tab svelte-1uu9qhk"),ce(u,"active",n[28]==="worklog"),r(t,"class","journal-tabs svelte-1uu9qhk"),r(e,"class","journal-screen svelte-1uu9qhk")},m(y,E){C(y,e,E),a(e,t),a(t,l),a(l,o),a(l,s),m&&m.m(l,null),a(t,c),a(t,u),a(e,d),v.m(e,null),p||(h=[P(l,"click",n[313]),P(u,"click",n[314])],p=!0)},p(y,E){y[61]>0?m?m.p(y,E):(m=su(y),m.c(),m.m(l,null)):m&&(m.d(1),m=null),E[0]&268435456&&ce(l,"active",y[28]==="suggestions"),E[0]&268435456&&ce(u,"active",y[28]==="worklog"),b===(b=g(y))&&v?v.p(y,E):(v.d(1),v=b(y),v&&(v.c(),v.m(e,null)))},i:se,o:se,d(y){y&&S(e),m&&m.d(),v.d(),p=!1,Ce(h)}}}function _w(n){let e,t,l,i,o,s;function c(p,h){return!p[7]||(p[7].nodes||[]).length===0?Ww:Hw}let u=c(n),d=u(n);return{c(){e=f("div"),t=f("div"),l=f("div"),i=f("p"),o=H(n[78]),s=w(),d.c(),r(i,"class","svelte-1uu9qhk"),r(l,"class","svelte-1uu9qhk"),r(t,"class","trash-header svelte-1uu9qhk"),r(e,"class","trash-screen svelte-1uu9qhk")},m(p,h){C(p,e,h),a(e,t),a(t,l),a(l,i),a(i,o),a(e,s),d.m(e,null)},p(p,h){h[2]&65536&&Q(o,p[78]),u===(u=c(p))&&d?d.p(p,h):(d.d(1),d=u(p),d&&(d.c(),d.m(e,null)))},i:se,o:se,d(p){p&&S(e),d.d()}}}function bw(n){let e,t,l,i,o,s,c,u,d=n[3].length>0&&Ru(n);function p(g,b){return g[3].length===0?Yw:g[117]?Zw:Vw}let h=p(n),m=h(n);return{c(){e=f("div"),t=f("div"),l=f("div"),i=f("p"),i.textContent=`${k("inbox.subtitle")}`,o=w(),d&&d.c(),s=w(),m.c(),r(i,"class","svelte-1uu9qhk"),r(l,"class","svelte-1uu9qhk"),r(t,"class","inbox-header svelte-1uu9qhk"),r(e,"class","inbox-screen svelte-1uu9qhk"),r(e,"role","region"),r(e,"aria-label",k("nav.inbox")),ce(e,"drop-valid",n[96])},m(g,b){C(g,e,b),a(e,t),a(t,l),a(l,i),a(e,o),d&&d.m(e,null),a(e,s),m.m(e,null),c||(u=[P(e,"dragover",n[199]),P(e,"dragleave",n[200]),P(e,"drop",n[201])],c=!0)},p(g,b){g[3].length>0?d?d.p(g,b):(d=Ru(g),d.c(),d.m(e,s)):d&&(d.d(1),d=null),h===(h=p(g))&&m?m.p(g,b):(m.d(1),m=h(g),m&&(m.c(),m.m(e,null))),b[3]&8&&ce(e,"drop-valid",g[96])},i:se,o:se,d(g){g&&S(e),d&&d.d(),m.d(),c=!1,Ce(u)}}}function kw(n){let e,t,l,i,o,s,c=Te(n[122]),u=[];for(let m=0;m{p[b]=null}),Et()),~i?(o=p[i],o?o.p(m,g):(o=p[i]=d[i](m),o.c()),ge(o,1),o.m(l,null)):o=null)},i(m){s||(ge(o),s=!0)},o(m){ke(o),s=!1},d(m){m&&(S(e),S(t),S(l)),et(u,m),~i&&p[i].d()}}}function vw(n){let e,t,l,i,o,s,c,u,d,p,h,m;function g(E,T){return E[47]===E[37].id?Ry:Iy}let b=g(n),v=b(n),y={content:n[37].content,viewMode:n[40],placeholder:k("note.placeholder")};return d=new M2({props:y}),n[245](d),d.$on("content-change",n[161]),d.$on("mode-change",n[162]),d.$on("save",n[153]),d.$on("insert-link",n[163]),d.$on("insert-internal-link",n[164]),d.$on("verstak-link",n[160]),{c(){e=f("div"),t=f("div"),v.c(),l=w(),i=f("div"),o=f("button"),o.textContent=`${k("common.save")}`,s=w(),c=f("button"),c.textContent=`${k("common.close")}`,u=w(),Qe(d.$$.fragment),r(o,"class","btn btn-primary svelte-1uu9qhk"),r(c,"class","btn svelte-1uu9qhk"),r(i,"class","note-editor-actions svelte-1uu9qhk"),r(t,"class","note-editor-header svelte-1uu9qhk"),r(e,"class","note-editor-wrapper svelte-1uu9qhk")},m(E,T){C(E,e,T),a(e,t),v.m(t,null),a(t,l),a(t,i),a(i,o),a(i,s),a(i,c),a(e,u),Ye(d,e,null),p=!0,h||(m=[P(o,"click",n[153]),P(c,"click",n[152])],h=!0)},p(E,T){b===(b=g(E))&&v?v.p(E,T):(v.d(1),v=b(E),v&&(v.c(),v.m(t,l)));const N={};T[1]&64&&(N.content=E[37].content),T[1]&512&&(N.viewMode=E[40]),d.$set(N)},i(E){p||(ge(d.$$.fragment,E),p=!0)},o(E){ke(d.$$.fragment,E),p=!1},d(E){E&&S(e),v.d(),n[245](null),Xe(d),h=!1,Ce(m)}}}function ww(n){let e,t=k("common.error")+"",l,i,o;return{c(){e=f("p"),l=H(t),i=w(),o=H(n[34]),r(e,"class","error-text svelte-1uu9qhk")},m(s,c){C(s,e,c),a(e,l),a(e,i),a(e,o)},p(s,c){c[1]&8&&Q(o,s[34])},d(s){s&&S(e)}}}function yw(n){let e,t,l;return{c(){e=f("p"),e.textContent=`${k("welcome.selectSection")}`,t=w(),l=f("p"),l.textContent=`${k("welcome.createCase")}`,r(e,"class","svelte-1uu9qhk"),r(l,"class","hint svelte-1uu9qhk")},m(i,o){C(i,e,o),C(i,t,o),C(i,l,o)},p:se,d(i){i&&(S(e),S(t),S(l))}}}function Ew(n){let e;return{c(){e=f("p"),e.textContent=`${k("common.loading")}`,r(e,"class","svelte-1uu9qhk")},m(t,l){C(t,e,l)},p:se,d(t){t&&S(e)}}}function Tw(n){let e,t=Te(n[17]),l=[];for(let i=0;in[334].call(Z)),r(M,"title",k("journal.billableHint")),r(M,"class","svelte-1uu9qhk"),r(oe,"class","label-text svelte-1uu9qhk"),Ie.__value="all",Me(Ie,Ie.__value),r(Ie,"class","svelte-1uu9qhk"),ne.__value="no",Me(ne,ne.__value),r(ne,"class","svelte-1uu9qhk"),re.__value="yes",Me(re,re.__value),r(re,"class","svelte-1uu9qhk"),r(Ge,"class","svelte-1uu9qhk"),n[25]===void 0&&hl(()=>n[335].call(Ge)),r(_e,"title",k("journal.approxHint")),r(_e,"class","svelte-1uu9qhk"),r(Fe,"class","btn btn-sm svelte-1uu9qhk"),r(je,"class","btn btn-sm svelte-1uu9qhk"),r(E,"class","journal-filters-row svelte-1uu9qhk"),r(b,"class","journal-filter-section svelte-1uu9qhk"),r(t,"class","journal-header svelte-1uu9qhk")},m(me,Re){Se&&Se.m(me,Re),C(me,e,Re),C(me,t,Re),a(t,l),a(l,i),a(l,o),a(l,s),a(s,c),a(s,u),a(s,d),a(s,p),a(s,h),a(s,m),He&&He.m(s,null),a(t,g),a(t,b),a(b,v),a(b,y),a(b,E),a(E,T),a(T,N),a(T,A),a(T,I),Me(I,n[20]),a(E,O),a(E,R),a(R,D),a(R,B),a(R,j),Me(j,n[21]),a(E,U),a(E,z),a(z,W),a(z,K),a(z,Y),Pe.m(Y,null),a(E,F),ue&&ue.m(E,null),a(E,L),a(E,M),a(M,q),a(M,X),a(M,Z),a(Z,J),a(Z,ee),a(Z,te),Yn(Z,n[24],!0),a(E,le),a(E,_e),a(_e,oe),a(_e,ze),a(_e,Ge),a(Ge,Ie),a(Ge,ne),a(Ge,re),Yn(Ge,n[25],!0),a(E,Ne),a(E,Fe),a(E,we),a(E,je),C(me,xe,Re),ye.m(me,Re),C(me,Ae,Re),Ve||(Ue=[P(c,"click",n[324]),P(d,"click",n[325]),P(h,"click",n[326]),P(I,"input",n[327]),P(j,"input",n[328]),P(Z,"change",n[334]),P(Ge,"change",n[335]),P(Fe,"click",n[186]),P(je,"click",n[193])],Ve=!0)},p(me,Re){me[19]?Se?Se.p(me,Re):(Se=ou(me),Se.c(),Se.m(e.parentNode,e)):Se&&(Se.d(1),Se=null),me[27]?He?He.p(me,Re):(He=fu(me),He.c(),He.m(s,null)):He&&(He.d(1),He=null),Re[0]&1048576&&Me(I,me[20]),Re[0]&2097152&&Me(j,me[21]),Ke===(Ke=Oe(me))&&Pe?Pe.p(me,Re):(Pe.d(1),Pe=Ke(me),Pe&&(Pe.c(),Pe.m(Y,null))),me[23]?ue?ue.p(me,Re):(ue=hu(me),ue.c(),ue.m(E,L)):ue&&(ue.d(1),ue=null),Re[0]&16777216&&Yn(Z,me[24]),Re[0]&33554432&&Yn(Ge,me[25]),x===(x=be(me))&&ye?ye.p(me,Re):(ye.d(1),ye=x(me),ye&&(ye.c(),ye.m(Ae.parentNode,Ae)))},d(me){me&&(S(e),S(t),S(xe),S(Ae)),Se&&Se.d(me),He&&He.d(),Pe.d(),ue&&ue.d(),ye.d(me),Ve=!1,Ce(Ue)}}}function Iw(n){let e;function t(o,s){return o[60].length===0?Uw:jw}let l=t(n),i=l(n);return{c(){i.c(),e=kt()},m(o,s){i.m(o,s),C(o,e,s)},p(o,s){l===(l=t(o))&&i?i.p(o,s):(i.d(1),i=l(o),i&&(i.c(),i.m(e.parentNode,e)))},d(o){o&&S(e),i.d(o)}}}function ou(n){let e,t,l=k("journal.total")+"",i,o,s=Math.floor(n[19].totalMinutes/60)+"",c,u,d=n[19].totalMinutes%60+"",p,h,m=n[19].totalEntries+"",g,b,v=k("worklog.min")+"",y,E,T,N,A=n[19].byDay&&n[19].byDay.length>0&&ru(n),I=n[19].byNode&&n[19].byNode.length>0&&cu(n);return{c(){e=f("div"),t=f("div"),i=H(l),o=H(": "),c=H(s),u=H("ч "),p=H(d),h=H("м ("),g=H(m),b=w(),y=H(v),E=H(")"),T=w(),A&&A.c(),N=w(),I&&I.c(),r(t,"class","summary-total svelte-1uu9qhk"),r(e,"class","journal-summary svelte-1uu9qhk")},m(O,R){C(O,e,R),a(e,t),a(t,i),a(t,o),a(t,c),a(t,u),a(t,p),a(t,h),a(t,g),a(t,b),a(t,y),a(t,E),a(e,T),A&&A.m(e,null),a(e,N),I&&I.m(e,null)},p(O,R){R[0]&524288&&s!==(s=Math.floor(O[19].totalMinutes/60)+"")&&Q(c,s),R[0]&524288&&d!==(d=O[19].totalMinutes%60+"")&&Q(p,d),R[0]&524288&&m!==(m=O[19].totalEntries+"")&&Q(g,m),O[19].byDay&&O[19].byDay.length>0?A?A.p(O,R):(A=ru(O),A.c(),A.m(e,N)):A&&(A.d(1),A=null),O[19].byNode&&O[19].byNode.length>0?I?I.p(O,R):(I=cu(O),I.c(),I.m(e,null)):I&&(I.d(1),I=null)},d(O){O&&S(e),A&&A.d(),I&&I.d()}}}function ru(n){let e,t,l,i=Te(n[19].byDay),o=[];for(let s=0;s0?Bw:D[513].source==="suggestion"?zw:D[513].source==="unknown"||D[513].source==="imported"?qw:D[513]._hasEvents?Pw:Dw}let I=A(n),O=I(n),R=n[513]._events&&ku(n);return{c(){e=f("tr"),t=f("td"),l=f("div"),i=f("div"),o=f("button"),o.textContent=`${k("worklog.editEntry")}`,s=w(),c=f("button"),c.textContent=`${k("worklog.deleteEntry")}`,u=w(),N&&N.c(),d=w(),p=f("div"),h=f("span"),h.textContent=`${k("worklog.source")}`,m=w(),O.c(),g=w(),R&&R.c(),b=w(),r(o,"class","btn btn-sm svelte-1uu9qhk"),r(c,"class","btn btn-sm btn-danger svelte-1uu9qhk"),r(i,"class","journal-detail-actions svelte-1uu9qhk"),r(h,"class","journal-detail-label svelte-1uu9qhk"),r(p,"class","journal-detail-section svelte-1uu9qhk"),r(l,"class","journal-detail-body svelte-1uu9qhk"),r(t,"colspan","8"),r(t,"class","svelte-1uu9qhk"),r(e,"class","journal-row-detail svelte-1uu9qhk")},m(D,B){C(D,e,B),a(e,t),a(t,l),a(l,i),a(i,o),a(i,s),a(i,c),a(l,u),N&&N.m(l,null),a(l,d),a(l,p),a(p,h),a(p,m),O.m(p,null),a(l,g),R&&R.m(l,null),a(e,b),v||(y=[P(o,"click",We(E)),P(c,"click",We(T))],v=!0)},p(D,B){n=D,n[513].details?N?N.p(n,B):(N=bu(n),N.c(),N.m(l,d)):N&&(N.d(1),N=null),I!==(I=A(n))&&(O.d(1),O=I(n),O&&(O.c(),O.m(p,null))),n[513]._events?R?R.p(n,B):(R=ku(n),R.c(),R.m(l,null)):R&&(R.d(1),R=null)},d(D){D&&S(e),N&&N.d(),O.d(),R&&R.d(),v=!1,Ce(y)}}}function bu(n){let e,t,l,i,o=n[513].details+"",s;return{c(){e=f("div"),t=f("span"),t.textContent=`${k("worklog.details")}`,l=w(),i=f("p"),s=H(o),r(t,"class","journal-detail-label svelte-1uu9qhk"),r(i,"class","svelte-1uu9qhk"),r(e,"class","journal-detail-section svelte-1uu9qhk")},m(c,u){C(c,e,u),a(e,t),a(e,l),a(e,i),a(i,s)},p(c,u){u[0]&262144&&o!==(o=c[513].details+"")&&Q(s,o)},d(c){c&&S(e)}}}function Dw(n){let e;return{c(){e=f("p"),e.textContent=`${k("worklog.sourceUnknown")}`,r(e,"class","svelte-1uu9qhk")},m(t,l){C(t,e,l)},d(t){t&&S(e)}}}function Pw(n){let e;return{c(){e=f("p"),e.textContent=`${k("worklog.sourceSuggestion")}`,r(e,"class","svelte-1uu9qhk")},m(t,l){C(t,e,l)},d(t){t&&S(e)}}}function qw(n){let e;return{c(){e=f("p"),e.textContent=`${k("worklog.sourceUnknown")}`,r(e,"class","svelte-1uu9qhk")},m(t,l){C(t,e,l)},d(t){t&&S(e)}}}function zw(n){let e;return{c(){e=f("p"),e.textContent=`${k("worklog.sourceSuggestionNoEvents")}`,r(e,"class","svelte-1uu9qhk")},m(t,l){C(t,e,l)},d(t){t&&S(e)}}}function Bw(n){let e;return{c(){e=f("p"),e.textContent=`${k("worklog.sourceSuggestion")}`,r(e,"class","svelte-1uu9qhk")},m(t,l){C(t,e,l)},d(t){t&&S(e)}}}function Fw(n){let e;return{c(){e=f("p"),e.textContent=`${k("worklog.sourceManual")}`,r(e,"class","svelte-1uu9qhk")},m(t,l){C(t,e,l)},d(t){t&&S(e)}}}function ku(n){let e,t,l,i=Te(n[513]._events),o=[];for(let s=0;s0&&yu(n);function te(...ne){return n[316](n[489],n[509],n[510],...ne)}function le(){return n[317](n[489])}function _e(){return n[318](n[489])}function oe(){return n[319](n[489])}function ze(){return n[320](n[489],n[509],n[510])}function Ge(...ne){return n[321](n[489],n[509],n[510],...ne)}let Ie=n[489]._expanded&&n[489].events&&n[489].events.length>0&&Eu(n);return{c(){e=f("div"),t=f("div"),l=f("div"),i=f("button"),s=H(o),c=w(),u=f("span"),p=H(d),h=w(),m=f("span"),b=H(g),v=w(),E=H(y),ee&&ee.c(),T=w(),N=f("div"),A=f("span"),R=w(),D=f("input"),j=w(),U=f("span"),U.textContent=`${k("suggest.minutes")}`,z=w(),W=f("button"),W.textContent=`${k("suggest.edit")}`,K=w(),Y=f("button"),Y.textContent=`${k("suggest.apply")}`,F=w(),L=f("button"),L.textContent=`${k("common.delete")}`,M=w(),Ie&&Ie.c(),q=w(),r(i,"class","suggestion-node link-btn svelte-1uu9qhk"),r(u,"class","suggestion-summary svelte-1uu9qhk"),r(m,"class","suggestion-meta svelte-1uu9qhk"),r(l,"class","suggestion-info svelte-1uu9qhk"),r(A,"class","suggestion-confidence-dot svelte-1uu9qhk"),r(A,"title",I=k("suggest.confidence."+n[489].confidence)),r(A,"aria-label",O=k("suggest.confidence."+n[489].confidence)),ce(A,"low",n[489].confidence==="low"),ce(A,"medium",n[489].confidence==="medium"),ce(A,"high",n[489].confidence==="high"),r(D,"type","number"),r(D,"class","suggestion-min-input svelte-1uu9qhk"),D.value=B=n[489].suggestedMin,r(D,"min","1"),r(D,"max","480"),r(U,"class","suggestion-min-label svelte-1uu9qhk"),r(W,"class","btn btn-sm svelte-1uu9qhk"),r(Y,"class","btn btn-sm btn-primary svelte-1uu9qhk"),r(L,"class","btn btn-sm btn-danger svelte-1uu9qhk"),r(N,"class","suggestion-actions svelte-1uu9qhk"),r(t,"class","suggestion-main svelte-1uu9qhk"),r(t,"role","button"),r(t,"tabindex","0"),r(e,"class","suggestion-card svelte-1uu9qhk"),ce(e,"expanded",n[489]._expanded)},m(ne,re){C(ne,e,re),a(e,t),a(t,l),a(l,i),a(i,s),a(l,c),a(l,u),a(u,p),a(l,h),a(l,m),a(m,b),a(m,v),a(m,E),ee&&ee.m(m,null),a(t,T),a(t,N),a(N,A),a(N,R),a(N,D),a(N,j),a(N,U),a(N,z),a(N,W),a(N,K),a(N,Y),a(N,F),a(N,L),a(e,M),Ie&&Ie.m(e,null),a(e,q),X||(Z=[P(i,"click",We(J)),P(D,"change",We(te)),P(W,"click",We(le)),P(Y,"click",We(_e)),P(L,"click",We(oe)),P(t,"click",ze),P(t,"keydown",Ge)],X=!0)},p(ne,re){n=ne,re[1]&536870912&&o!==(o=n[489].nodeTitle+"")&&Q(s,o),re[1]&536870912&&d!==(d=n[489].summary+"")&&Q(p,d),re[1]&536870912&&g!==(g=n[489].suggestedMin+"")&&Q(b,g),n[489].events&&n[489].events.length>0?ee?ee.p(n,re):(ee=yu(n),ee.c(),ee.m(m,null)):ee&&(ee.d(1),ee=null),re[1]&536870912&&I!==(I=k("suggest.confidence."+n[489].confidence))&&r(A,"title",I),re[1]&536870912&&O!==(O=k("suggest.confidence."+n[489].confidence))&&r(A,"aria-label",O),re[1]&536870912&&ce(A,"low",n[489].confidence==="low"),re[1]&536870912&&ce(A,"medium",n[489].confidence==="medium"),re[1]&536870912&&ce(A,"high",n[489].confidence==="high"),re[1]&536870912&&B!==(B=n[489].suggestedMin)&&D.value!==B&&(D.value=B),n[489]._expanded&&n[489].events&&n[489].events.length>0?Ie?Ie.p(n,re):(Ie=Eu(n),Ie.c(),Ie.m(e,q)):Ie&&(Ie.d(1),Ie=null),re[1]&536870912&&ce(e,"expanded",n[489]._expanded)},d(ne){ne&&S(e),ee&&ee.d(),Ie&&Ie.d(),X=!1,Ce(Z)}}}function Hw(n){let e,t,l,i,o,s,c,u,d,p,h,m=n[8]&&Nu(n);function g(y,E){return y[77].length===0?Kw:Gw}let b=g(n),v=b(n);return{c(){e=f("div"),t=f("section"),l=f("div"),m&&m.c(),i=w(),o=f("div"),s=f("h3"),c=H(n[79]),u=w(),d=f("p"),p=H(n[78]),h=w(),v.c(),r(s,"class","svelte-1uu9qhk"),r(d,"class","svelte-1uu9qhk"),r(o,"class","svelte-1uu9qhk"),r(l,"class","trash-section-head svelte-1uu9qhk"),r(t,"class","trash-section svelte-1uu9qhk"),r(e,"class","trash-browser svelte-1uu9qhk")},m(y,E){C(y,e,E),a(e,t),a(t,l),m&&m.m(l,null),a(l,i),a(l,o),a(o,s),a(s,c),a(o,u),a(o,d),a(d,p),a(t,h),v.m(t,null)},p(y,E){y[8]?m?m.p(y,E):(m=Nu(y),m.c(),m.m(l,i)):m&&(m.d(1),m=null),E[2]&131072&&Q(c,y[79]),E[2]&65536&&Q(p,y[78]),b===(b=g(y))&&v?v.p(y,E):(v.d(1),v=b(y),v&&(v.c(),v.m(t,null)))},d(y){y&&S(e),m&&m.d(),v.d()}}}function Ww(n){let e,t;return{c(){e=f("div"),t=f("p"),t.textContent=`${k("trash.empty")}`,r(t,"class","svelte-1uu9qhk"),r(e,"class","empty-state svelte-1uu9qhk")},m(l,i){C(l,e,i),a(e,t)},p:se,d(l){l&&S(e)}}}function Nu(n){let e,t=Tt("back")+"",l,i;return{c(){e=f("button"),r(e,"class","inbox-icon-btn svelte-1uu9qhk"),r(e,"title",k("common.backLabel")),r(e,"aria-label",k("common.backLabel"))},m(o,s){C(o,e,s),e.innerHTML=t,l||(i=P(e,"click",n[171]),l=!0)},p:se,d(o){o&&S(e),l=!1,i()}}}function Gw(n){let e,t=Te(n[77]),l=[];for(let i=0;i0,s,c,u,d=o&&Bu(n);function p(g,b){return g[50].length===0?my:hy}let h=p(n),m=h(n);return{c(){e=f("div"),t=f("div"),l=f("button"),l.textContent=`+ ${k("worklog.addEntry")}`,i=w(),d&&d.c(),s=w(),m.c(),r(l,"class","btn btn-primary btn-sm svelte-1uu9qhk"),r(t,"class","worklog-toolbar svelte-1uu9qhk"),r(e,"class","worklog-tab svelte-1uu9qhk")},m(g,b){C(g,e,b),a(e,t),a(t,l),a(e,i),d&&d.m(e,null),a(e,s),m.m(e,null),c||(u=P(l,"click",n[271]),c=!0)},p(g,b){b[0]&4|b[1]&536870912&&(o=g[2]&&g[60].filter(g[232]).length>0),o?d?d.p(g,b):(d=Bu(g),d.c(),d.m(e,s)):d&&(d.d(1),d=null),h===(h=p(g))&&m?m.p(g,b):(m.d(1),m=h(g),m&&(m.c(),m.m(e,null)))},i:se,o:se,d(g){g&&S(e),d&&d.d(),m.d(),c=!1,u()}}}function oy(n){let e,t,l,i,o,s;function c(p,h){return p[49].length===0?yy:wy}let u=c(n),d=u(n);return{c(){e=f("div"),t=f("div"),l=f("button"),l.textContent=`${k("action.addAction")}`,i=w(),d.c(),r(l,"class","btn btn-primary svelte-1uu9qhk"),r(t,"class","tab-toolbar svelte-1uu9qhk"),r(e,"class","actions-tab svelte-1uu9qhk")},m(p,h){C(p,e,h),a(e,t),a(t,l),a(e,i),d.m(e,null),o||(s=P(l,"click",n[215]),o=!0)},p(p,h){u===(u=c(p))&&d?d.p(p,h):(d.d(1),d=u(p),d&&(d.c(),d.m(e,null)))},i:se,o:se,d(p){p&&S(e),d.d(),o=!1,s()}}}function ry(n){let e,t;function l(c,u){return c[69].length===0?Ty:Ey}let i=l(n),o=i(n),s=n[74]&&lf(n);return{c(){e=f("div"),o.c(),t=w(),s&&s.c(),r(e,"class","links-tab svelte-1uu9qhk")},m(c,u){C(c,e,u),o.m(e,null),a(e,t),s&&s.m(e,null)},p(c,u){i===(i=l(c))&&o?o.p(c,u):(o.d(1),o=i(c),o&&(o.c(),o.m(e,t))),c[74]?s?s.p(c,u):(s=lf(c),s.c(),s.m(e,null)):s&&(s.d(1),s=null)},i:se,o:se,d(c){c&&S(e),o.d(),s&&s.d()}}}function ay(n){let e;function t(o,s){return o[66].length===0?Cy:Sy}let l=t(n),i=l(n);return{c(){e=f("div"),i.c(),r(e,"class","inbox-tab svelte-1uu9qhk")},m(o,s){C(o,e,s),i.m(e,null)},p(o,s){l===(l=t(o))&&i?i.p(o,s):(i.d(1),i=l(o),i&&(i.c(),i.m(e,null)))},i:se,o:se,d(o){o&&S(e),i.d()}}}function cy(n){let e,t,l={selectedNode:n[2],wailsCall:de};return e=new lw({props:l}),n[254](e),e.$on("openNote",n[255]),e.$on("refreshParent",n[256]),e.$on("error",n[257]),{c(){Qe(e.$$.fragment)},m(i,o){Ye(e,i,o),t=!0},p(i,o){const s={};o[0]&4&&(s.selectedNode=i[2]),e.$set(s)},i(i){t||(ge(e.$$.fragment,i),t=!0)},o(i){ke(e.$$.fragment,i),t=!1},d(i){n[254](null),Xe(e,i)}}}function uy(n){let e,t;return e=new K2({props:{notes:n[36],formatDate:qn}}),e.$on("submitCreateNote",n[250]),e.$on("openNote",n[251]),e.$on("startRename",n[252]),e.$on("deleteNote",n[253]),{c(){Qe(e.$$.fragment)},m(l,i){Ye(e,l,i),t=!0},p(l,i){const o={};i[1]&32&&(o.notes=l[36]),e.$set(o)},i(l){t||(ge(e.$$.fragment,l),t=!0)},o(l){ke(e.$$.fragment,l),t=!1},d(l){Xe(e,l)}}}function fy(n){let e,t;return e=new Y2({props:{selectedNode:n[2],notes:n[36],worklog:n[50],formatDate:qn,nodeKindLabel:n[195]}}),e.$on("createNote",n[247]),e.$on("addFile",n[248]),e.$on("createAction",n[215]),e.$on("openNote",n[249]),{c(){Qe(e.$$.fragment)},m(l,i){Ye(e,l,i),t=!0},p(l,i){const o={};i[0]&4&&(o.selectedNode=l[2]),i[1]&32&&(o.notes=l[36]),i[1]&524288&&(o.worklog=l[50]),e.$set(o)},i(l){t||(ge(e.$$.fragment,l),t=!0)},o(l){ke(e.$$.fragment,l),t=!1},d(l){Xe(e,l)}}}function dy(n){let e,t=Te(n[32]),l=[];for(let i=0;i0&&Fu(n);function K(){return n[273](n[489])}function Y(){return n[274](n[489])}function F(){return n[275](n[489])}function L(){return n[276](n[489],n[490],n[491])}function M(...X){return n[277](n[489],n[490],n[491],...X)}let q=n[489]._expanded&&n[489].events&&n[489].events.length>0&&ju(n);return{c(){e=f("div"),t=f("div"),l=f("div"),i=f("span"),s=H(o),c=w(),u=f("span"),p=H(d),h=w(),g=H(m),W&&W.c(),b=w(),v=f("div"),y=f("span"),N=w(),A=f("button"),A.textContent=`${k("suggest.edit")}`,I=w(),O=f("button"),O.textContent=`${k("worklog.apply")}`,R=w(),D=f("button"),D.textContent=`${k("common.delete")}`,B=w(),q&&q.c(),j=w(),r(i,"class","suggestion-summary svelte-1uu9qhk"),r(u,"class","suggestion-meta svelte-1uu9qhk"),r(l,"class","suggestion-info svelte-1uu9qhk"),r(y,"class","suggestion-confidence-dot svelte-1uu9qhk"),r(y,"title",E=k("suggest.confidence."+n[489].confidence)),r(y,"aria-label",T=k("suggest.confidence."+n[489].confidence)),ce(y,"low",n[489].confidence==="low"),ce(y,"medium",n[489].confidence==="medium"),ce(y,"high",n[489].confidence==="high"),r(A,"class","btn btn-sm svelte-1uu9qhk"),r(O,"class","btn btn-sm btn-primary svelte-1uu9qhk"),r(D,"class","btn btn-sm btn-danger svelte-1uu9qhk"),r(v,"class","suggestion-actions svelte-1uu9qhk"),r(t,"class","suggestion-main svelte-1uu9qhk"),r(t,"role","button"),r(t,"tabindex","0"),r(e,"class","suggestion-card svelte-1uu9qhk"),ce(e,"expanded",n[489]._expanded)},m(X,Z){C(X,e,Z),a(e,t),a(t,l),a(l,i),a(i,s),a(l,c),a(l,u),a(u,p),a(u,h),a(u,g),W&&W.m(u,null),a(t,b),a(t,v),a(v,y),a(v,N),a(v,A),a(v,I),a(v,O),a(v,R),a(v,D),a(e,B),q&&q.m(e,null),a(e,j),U||(z=[P(A,"click",We(K)),P(O,"click",We(Y)),P(D,"click",We(F)),P(t,"click",L),P(t,"keydown",M)],U=!0)},p(X,Z){n=X,Z[0]&4|Z[1]&536870912&&o!==(o=n[489].summary+"")&&Q(s,o),Z[0]&4|Z[1]&536870912&&d!==(d=n[489].suggestedMin+"")&&Q(p,d),n[489].events&&n[489].events.length>0?W?W.p(n,Z):(W=Fu(n),W.c(),W.m(u,null)):W&&(W.d(1),W=null),Z[0]&4|Z[1]&536870912&&E!==(E=k("suggest.confidence."+n[489].confidence))&&r(y,"title",E),Z[0]&4|Z[1]&536870912&&T!==(T=k("suggest.confidence."+n[489].confidence))&&r(y,"aria-label",T),Z[0]&4|Z[1]&536870912&&ce(y,"low",n[489].confidence==="low"),Z[0]&4|Z[1]&536870912&&ce(y,"medium",n[489].confidence==="medium"),Z[0]&4|Z[1]&536870912&&ce(y,"high",n[489].confidence==="high"),n[489]._expanded&&n[489].events&&n[489].events.length>0?q?q.p(n,Z):(q=ju(n),q.c(),q.m(e,j)):q&&(q.d(1),q=null),Z[0]&4|Z[1]&536870912&&ce(e,"expanded",n[489]._expanded)},d(X){X&&S(e),W&&W.d(),q&&q.d(),U=!1,Ce(z)}}}function hy(n){let e,t=Te(n[50]),l=[];for(let i=0;i0?ky:I[483].source==="suggestion"?by:I[483].source==="unknown"||I[483].source==="imported"?_y:gy}let T=E(n),N=T(n),A=n[483].source==="suggestion"&&n[483]._events&&n[483]._events.length>0&&Ju(n);return{c(){e=f("div"),t=f("div"),l=f("button"),l.textContent=`${k("worklog.editEntry")}`,i=w(),o=f("button"),o.textContent=`${k("worklog.deleteEntry")}`,s=w(),y&&y.c(),c=w(),u=f("div"),d=f("span"),d.textContent=`${k("worklog.source")}`,p=w(),N.c(),h=w(),A&&A.c(),r(l,"class","btn btn-sm svelte-1uu9qhk"),r(o,"class","btn btn-sm btn-danger svelte-1uu9qhk"),r(t,"class","worklog-entry-actions svelte-1uu9qhk"),r(d,"class","wl-detail-label svelte-1uu9qhk"),r(u,"class","wl-detail-section svelte-1uu9qhk"),r(e,"class","worklog-entry-detail svelte-1uu9qhk")},m(I,O){C(I,e,O),a(e,t),a(t,l),a(t,i),a(t,o),a(e,s),y&&y.m(e,null),a(e,c),a(e,u),a(u,d),a(u,p),N.m(u,null),a(e,h),A&&A.m(e,null),m||(g=[P(l,"click",We(b)),P(o,"click",We(v))],m=!0)},p(I,O){n=I,n[483].details?y?y.p(n,O):(y=Xu(n),y.c(),y.m(e,c)):y&&(y.d(1),y=null),T!==(T=E(n))&&(N.d(1),N=T(n),N&&(N.c(),N.m(u,null))),n[483].source==="suggestion"&&n[483]._events&&n[483]._events.length>0?A?A.p(n,O):(A=Ju(n),A.c(),A.m(e,null)):A&&(A.d(1),A=null)},d(I){I&&S(e),y&&y.d(),N.d(),A&&A.d(),m=!1,Ce(g)}}}function Xu(n){let e,t,l,i,o=n[483].details+"",s;return{c(){e=f("div"),t=f("span"),t.textContent=`${k("worklog.details")}`,l=w(),i=f("p"),s=H(o),r(t,"class","wl-detail-label svelte-1uu9qhk"),r(i,"class","svelte-1uu9qhk"),r(e,"class","wl-detail-section svelte-1uu9qhk")},m(c,u){C(c,e,u),a(e,t),a(e,l),a(e,i),a(i,s)},p(c,u){u[1]&524288&&o!==(o=c[483].details+"")&&Q(s,o)},d(c){c&&S(e)}}}function gy(n){let e;return{c(){e=f("p"),e.textContent=`${k("worklog.sourceUnknown")}`,r(e,"class","svelte-1uu9qhk")},m(t,l){C(t,e,l)},d(t){t&&S(e)}}}function _y(n){let e;return{c(){e=f("p"),e.textContent=`${k("worklog.sourceUnknown")}`,r(e,"class","svelte-1uu9qhk")},m(t,l){C(t,e,l)},d(t){t&&S(e)}}}function by(n){let e;return{c(){e=f("p"),e.textContent=`${k("worklog.sourceSuggestionNoEvents")}`,r(e,"class","svelte-1uu9qhk")},m(t,l){C(t,e,l)},d(t){t&&S(e)}}}function ky(n){let e;return{c(){e=f("p"),e.textContent=`${k("worklog.sourceSuggestion")}`,r(e,"class","svelte-1uu9qhk")},m(t,l){C(t,e,l)},d(t){t&&S(e)}}}function vy(n){let e;return{c(){e=f("p"),e.textContent=`${k("worklog.sourceManual")}`,r(e,"class","svelte-1uu9qhk")},m(t,l){C(t,e,l)},d(t){t&&S(e)}}}function Ju(n){let e,t,l,i=Te(n[483]._events),o=[];for(let s=0;s',N=w(),r(l,"class","action-title svelte-1uu9qhk"),r(c,"class","action-type svelte-1uu9qhk"),r(h,"class","action-data svelte-1uu9qhk"),r(t,"class","action-info svelte-1uu9qhk"),r(y,"class","btn btn-sm svelte-1uu9qhk"),r(T,"class","btn btn-sm btn-danger svelte-1uu9qhk"),r(v,"class","action-btns svelte-1uu9qhk"),r(e,"class","action-card svelte-1uu9qhk")},m(D,B){C(D,e,B),a(e,t),a(t,l),a(l,o),a(t,s),a(t,c),a(c,d),a(t,p),a(t,h),a(h,g),a(e,b),a(e,v),a(v,y),a(v,E),a(v,T),a(e,N),A||(I=[P(y,"click",O),P(T,"click",R)],A=!0)},p(D,B){n=D,B[1]&262144&&i!==(i=n[480].title+"")&&Q(o,i),B[1]&262144&&u!==(u=n[219](n[480].type)+"")&&Q(d,u),B[1]&262144&&m!==(m=n[480].data+"")&&Q(g,m)},d(D){D&&S(e),A=!1,Ce(I)}}}function Ey(n){let e,t=Te(n[69]),l=[];for(let i=0;i',s=w(),p&&p.c(),c=kt(),r(e,"class","note-title svelte-1uu9qhk"),r(o,"class","btn btn-sm note-rename-btn svelte-1uu9qhk"),r(o,"title",k("common.rename"))},m(h,m){C(h,e,m),a(e,l),C(h,i,m),C(h,o,m),C(h,s,m),p&&p.m(h,m),C(h,c,m),u||(d=P(o,"click",n[244]),u=!0)},p(h,m){m[1]&64&&t!==(t=h[37].title+"")&&Q(l,t),h[37].dirty?p||(p=of(),p.c(),p.m(c.parentNode,c)):p&&(p.d(1),p=null)},d(h){h&&(S(e),S(i),S(o),S(s),S(c)),p&&p.d(h),u=!1,d()}}}function Ry(n){let e,t,l,i,o,s,c,u;return{c(){e=f("div"),t=f("input"),l=w(),i=f("button"),i.textContent=`${k("common.save")}`,o=w(),s=f("button"),s.textContent=`${k("common.cancel")}`,r(t,"type","text"),r(t,"class","note-rename-input svelte-1uu9qhk"),r(i,"class","btn btn-primary btn-sm svelte-1uu9qhk"),r(s,"class","btn btn-sm svelte-1uu9qhk"),r(e,"class","note-rename-inline svelte-1uu9qhk")},m(d,p){C(d,e,p),a(e,t),Me(t,n[48]),a(e,l),a(e,i),a(e,o),a(e,s),c||(u=[P(t,"input",n[242]),P(t,"keydown",n[243]),P(i,"click",n[159]),P(s,"click",n[158])],c=!0)},p(d,p){p[1]&131072&&t.value!==d[48]&&Me(t,d[48])},d(d){d&&S(e),c=!1,Ce(u)}}}function of(n){let e;return{c(){e=f("span"),e.textContent="●",r(e,"class","dirty-mark svelte-1uu9qhk")},m(t,l){C(t,e,l)},d(t){t&&S(e)}}}function rf(n){let e,t,l,i,o,s,c,u,d,p,h,m,g,b,v,y,E,T,N,A,I,O,R,D,B,j,U=k("common.create")+"",z,W,K,Y,F,L,M,q=n[82]&&af(n);h=new Gi({props:{kind:"folder",size:24}});let X=Te(n[15]),Z=[];for(let ee=0;eeke(Z[ee],1,1,()=>{Z[ee]=null});return{c(){e=f("div"),t=f("div"),l=f("h3"),l.textContent=`${k("nav.createNode")}`,i=w(),q&&q.c(),o=w(),s=f("div"),c=f("span"),c.textContent=`${k("template.select")}`,u=w(),d=f("div"),p=f("button"),Qe(h.$$.fragment),m=w(),g=f("div"),b=f("span"),b.textContent=`${k("template.optionNone")}`,v=w(),y=f("span"),y.textContent=`${k("template.none.desc")}`,E=w();for(let ee=0;ee{b=null}),Et()),y[84].node&&y[84].node.parent_id?v?v.p(y,E):(v=pf(y),v.c(),v.m(t,o)):v&&(v.d(1),v=null),(!h||E[2]&4194304)&&sn(t,"left",y[84].x+"px"),(!h||E[2]&4194304)&&sn(t,"top",y[84].y+"px")},i(y){h||(ge(b),h=!0)},o(y){ke(b),h=!1},d(y){y&&S(e),b&&b.d(),v&&v.d(),m=!1,Ce(g)}}}function ff(n){let e,t,l,i,o,s=Te(n[15].length>0?n[15]:[{id:"",title:"template.optionNone",icon:"folder"}]),c=[];for(let d=0;dke(c[d],1,1,()=>{c[d]=null});return{c(){e=f("div"),e.textContent=`${k("common.create")}`,t=w();for(let d=0;d0?d[15]:[{id:"",title:"template.optionNone",icon:"folder"}]);let h;for(h=0;hn[370].call(v)),r(m,"class","svelte-1uu9qhk"),r(h,"class","form-group svelte-1uu9qhk"),r(N,"class","label-text svelte-1uu9qhk"),r(R,"type","text"),r(R,"placeholder",D=n[87]==="open_url"?k("action.urlPlaceholder"):n[87]==="open_folder"||n[87]==="open_file"?k("action.pathPlaceholder"):k("action.commandPlaceholder")),r(R,"class","svelte-1uu9qhk"),r(T,"class","svelte-1uu9qhk"),r(E,"class","form-group svelte-1uu9qhk"),r(U,"class","btn btn-primary svelte-1uu9qhk"),r(W,"class","btn svelte-1uu9qhk"),r(j,"class","modal-actions svelte-1uu9qhk"),r(t,"class","modal svelte-1uu9qhk"),r(e,"class","modal-overlay svelte-1uu9qhk"),r(e,"role","button"),r(e,"tabindex","0")},m(M,q){C(M,e,q),a(e,t),a(t,l),a(t,i),a(t,o),a(o,s),a(s,c),a(s,u),a(s,d),Me(d,n[86]),a(t,p),a(t,h),a(h,m),a(m,g),a(m,b),a(m,v);for(let X=0;X0&&vf(n),W=n[111]&&yf();return{c(){e=f("div"),t=f("div"),l=f("h3"),l.textContent=`${k("inbox.assignTitle")}`,i=w(),o=f("div"),c=H(s),u=w(),d=f("div"),p=f("label"),h=f("span"),h.textContent=`${k("inbox.assignTarget")}`,m=w(),g=f("input"),b=w(),v=f("div"),v.textContent=`${k("inbox.assignSearchHint")}`,y=w(),z&&z.c(),E=w(),W&&W.c(),T=w(),N=f("div"),A=f("button"),O=H(I),D=w(),B=f("button"),B.textContent=`${k("common.cancel")}`,r(l,"class","svelte-1uu9qhk"),r(o,"class","create-context svelte-1uu9qhk"),r(h,"class","label-text svelte-1uu9qhk"),r(g,"type","text"),r(g,"placeholder",k("inbox.assignSearchPlaceholder")),r(g,"class","svelte-1uu9qhk"),r(v,"class","assign-hint svelte-1uu9qhk"),r(p,"class","svelte-1uu9qhk"),r(d,"class","form-group assign-search svelte-1uu9qhk"),r(A,"class","btn btn-primary svelte-1uu9qhk"),A.disabled=R=!n[110],r(B,"class","btn svelte-1uu9qhk"),r(N,"class","modal-actions svelte-1uu9qhk"),r(t,"class","modal svelte-1uu9qhk"),r(e,"class","modal-overlay svelte-1uu9qhk"),r(e,"role","button"),r(e,"tabindex","0")},m(K,Y){C(K,e,Y),a(e,t),a(t,l),a(t,i),a(t,o),a(o,c),a(t,u),a(t,d),a(d,p),a(p,h),a(p,m),a(p,g),Me(g,n[108]),a(p,b),a(p,v),a(d,y),z&&z.m(d,null),a(t,E),W&&W.m(t,null),a(t,T),a(t,N),a(N,A),a(A,O),a(N,D),a(N,B),j||(U=[P(g,"input",n[374]),P(g,"input",n[204]),P(g,"keydown",n[375]),P(A,"click",n[206]),P(B,"click",n[203]),P(e,"click",xt(n[203])),P(e,"keydown",zn(n[203]))],j=!0)},p(K,Y){Y[3]&16384&&s!==(s=K[107].title+"")&&Q(c,s),Y[3]&32768&&g.value!==K[108]&&Me(g,K[108]),K[109].length>0?z?z.p(K,Y):(z=vf(K),z.c(),z.m(d,null)):z&&(z.d(1),z=null),K[111]?W||(W=yf(),W.c(),W.m(t,T)):W&&(W.d(1),W=null),Y[3]&131072&&R!==(R=!K[110])&&(A.disabled=R)},d(K){K&&S(e),z&&z.d(),W&&W.d(),j=!1,Ce(U)}}}function vf(n){let e,t=Te(n[109]),l=[];for(let i=0;i{p[N]=null}),Et(),t=p[e],t?t.p(E,T):(t=p[e]=d[e](E),t.c()),ge(t,1),t.m(l.parentNode,l)),E[41]?m?m.p(E,T):(m=Nf(E),m.c(),m.m(i.parentNode,i)):m&&(m.d(1),m=null),E[44]?g?(g.p(E,T),T[1]&8192&&ge(g,1)):(g=If(E),g.c(),ge(g,1),g.m(o.parentNode,o)):g&&(yt(),ke(g,1,1,()=>{g=null}),Et()),E[47]&&E[47]!==((A=E[37])==null?void 0:A.id)?b?b.p(E,T):(b=Rf(E),b.c(),b.m(s.parentNode,s)):b&&(b.d(1),b=null),E[45]?v?v.p(E,T):(v=Mf(E),v.c(),v.m(c.parentNode,c)):v&&(v.d(1),v=null)},i(E){u||(ge(t),ge(g),u=!0)},o(E){ke(t),ke(g),u=!1},d(E){E&&(S(l),S(i),S(o),S(s),S(c)),p[e].d(E),m&&m.d(E),g&&g.d(E),b&&b.d(E),v&&v.d(E)}}}function de(n,...e){try{if(window.go&&window.go.main&&window.go.main.App){const t=window.go.main.App[n];if(typeof t=="function")return t(...e)}}catch(t){console.error("Wails call error:",n,t)}return Promise.reject(new Error("Wails not connected: "+n))}function Ly(n,e,t){const l=[...n];return l.sort((i,o)=>{let s=0;if(e==="name")s=(i.title||"").localeCompare(o.title||"");else if(e==="type"){const c=i.captureKind||i.sourceKind||i.type||"",u=o.captureKind||o.sourceKind||o.type||"";s=c.localeCompare(u)}else s=(i.capturedAt||i.createdAt||"").localeCompare(o.capturedAt||o.createdAt||"");return t==="asc"?s:-s}),l}function Oy(n,e){return n.section===e.section&&n.nodeId===e.nodeId&&n.tab===e.tab&&n.trashFolderId===e.trashFolderId}function Ni(n){return!n||!(n instanceof Element)?!1:!!n.closest('input, textarea, select, [contenteditable="true"], [contenteditable=""]')}function Ii(n,e,t){for(const l of n){if(l.id===e)return l.children=t,l.has_children=t.length>0,!0;if(l.children&&Ii(l.children,e,t))return!0}return!1}function Kd(n){return(n==null?void 0:n.sourceKind)||(n==null?void 0:n.captureKind)||(n==null?void 0:n.type)||""}function Xs(n){return Kd(n)!=="url"&&(n==null?void 0:n.type)!=="link"}function Dy(n,e){return{id:n.id,nodeId:n.id,fileId:e.id||e.fileId,name:e.name||n.title,type:"file",size:e.size||0,mime:e.mime||""}}function Vd(n,e,t){for(const l of n){if(l.id===e)return l.children=t,l.has_children=t.length>0,!0;if(l.children&&Vd(l.children,e,t))return!0}return!1}function Py(n,e){return e?n.filter(t=>ws(t)===e):n.filter(t=>!ws(t)||!n.some(l=>l.id===ws(t)))}function ws(n){return(n==null?void 0:n.parentId)||(n==null?void 0:n.parentID)||(n==null?void 0:n.parent_id)||""}function Ei(n){return n.eventIds&&n.eventIds.length?n.eventIds:n.events&&n.events.length?n.events.map(e=>e.id).filter(Boolean):[]}function Ti(n){try{de("WriteDebugLog",n)}catch{}}function ys(n){return n?n.map(e=>(e._expanded===void 0&&(e._expanded=!1),e)):[]}function rn(n){return n?new Date(n).toLocaleTimeString("ru-RU",{hour:"2-digit",minute:"2-digit"}):""}function ni(n){return n==="note_created"||n==="file_added"||n==="folder_added"||n==="node_created"?"+":n==="file_deleted"||n==="folder_deleted"?"×":n==="file_renamed"||n==="folder_renamed"||n==="note_updated"||n==="node_updated"?"~":n==="file_copied"?"⧉":n==="file_moved"?"→":"•"}function qn(n){if(!n)return"";try{return new Date(n).toLocaleDateString("ru-RU",{day:"numeric",month:"short"})}catch{return n}}function Es(n){const e=String(n||"").trim();if(!e||/[\s]/.test(e)||e.includes("@"))return"";try{const t=new URL(e);return(t.protocol==="http:"||t.protocol==="https:")&&t.hostname?e:""}catch{try{const l=`https://${e}`,i=new URL(l);return i.hostname&&i.hostname.includes(".")?l:""}catch{return""}}}function qy(n){return{"image/png":"png","image/jpeg":"jpg","image/gif":"gif","image/webp":"webp"}[n]||"bin"}function zy(n){return new Promise((e,t)=>{const l=new FileReader;l.onload=()=>{const i=String(l.result||""),o=i.indexOf(",");e(o>=0?i.slice(o+1):i)},l.onerror=()=>t(l.error),l.readAsDataURL(n)})}function By(n){const e=String(n||"").split(/\r?\n/).map(t=>t.trim()).filter(Boolean);return e.length?{url:e[0],title:e[1]||""}:null}function Fy(n){return String(n||"").split(/\r?\n/).map(t=>t.trim()).filter(t=>t&&!t.startsWith("#"))[0]||""}function Lf(n){const e=Array.from((n==null?void 0:n.types)||[]);return e.includes("Files")||e.includes("text/uri-list")||e.includes("text/x-moz-url")||e.includes("text/plain")&&!e.includes("application/x-verstak-node")}function jy(n){return["case","client","project","folder","document","recipe"].includes(n.type)}function Uy(n){return n.targetType==="note"&&n.targetId?{nodeId:n.nodeId,tab:"notes",targetId:n.targetId}:n.targetType==="file"?{nodeId:n.nodeId,tab:"files",targetId:n.targetId,targetPath:n.targetPath}:n.targetType==="folder"?{nodeId:n.nodeId,tab:"files",targetPath:n.targetPath||n.targetId}:{nodeId:n.nodeId}}function zn(n){return e=>{Ni(e.target)||(e.key==="Enter"||e.key===" ")&&(e.preventDefault(),n())}}function Hy(n,e,t){var jo;let l,i,o,s,c=null,u=!1,d=!1,p=!1,h=!1,m=[],g=[],b=[],v=null,y=[],E=0,T=!0,N=[],A=null,I="",O="",R=!1,D="",B="all",j="all",U="",z="",W="suggestions",K="",Y=[],F=!1,L=[],M="",q="";function X(_){return{"vault not open":k("error.vaultNotOpen")}[_]||_}let Z="",J=null,ee="overview",te=[],le=null,_e,oe,ze="edit",Ge=!1,Ie="",ne="",re=!1,Ne=!1,Fe="",we=null,je="",xe="",Ae=[],Ve=[],Ue=[],Se=!1,He="",Oe="",Ke="",Pe="",ue=!1,be=!1,x=null,ye=null,me=[],Re=0,ft=[],it=[],Ze=[],dt=!1,Je=[],pe=[],qe=!1,pt="",vt="date",At="desc",Zt=!1,mt=[],Mt=null,It="",jt="",an="",cn="",Ut=null,Rn=0,Ct=[],Lt="",gt=[],bl=[],bn="",kl="",en=[],_t=!1,Ot=!1,tn="",un=null,Ht=null,$t={visible:!1,x:0,y:0,node:null},kn=!1,fn="",$="open_url",he="",tt=[{id:"open_url",label:k("action.openUrl")},{id:"open_file",label:k("action.openFile")},{id:"open_folder",label:k("action.openFolder")},{id:"run_command",label:k("action.runCommand")},{id:"run_script",label:k("action.runScript")},{id:"open_terminal",label:k("action.openTerminal")},{id:"launch_app",label:k("action.launchApp")}],st=!0,Yt={},Wt=null,vn="",Bn=!1,Xt="",vl=!1,wn=!1,yn=!1,Fn="",dn=0,Mn=0,Gt=null,wl=!1,oi="",jl="",Ul=!1,ri=k("common.delete"),Jn=null,yl=null,jn=!1,Qn="",hn="",En="",Ee=null,V="",ie=[],ve=null,De=!1,$e,nt=null,St=!1,wt="",Dt="";const nn=[{id:"overview",label:k("tab.overview")},{id:"notes",label:k("tab.notes")},{id:"files",label:k("tab.files")},{id:"links",label:k("tab.links")},{id:"actions",label:k("tab.actions")},{id:"activity",label:k("tab.activity"),group:"service"},{id:"worklog",label:k("tab.worklog"),group:"service"},{id:"inbox",label:k("tab.inbox"),group:"service"}];let xn=null;function Pt(_){const G={};for(const Le of _){const Be=Le.captureContextLabel||k("inbox.noContext");G[Be]||(G[Be]=[]),G[Be].push(Le)}const fe=[];for(const[Le,Be]of Object.entries(G))fe.push({label:Le,items:Be});return fe.sort((Le,Be)=>Le.label.localeCompare(Be.label)),fe}function Zd(){return{section:Z||"",nodeId:(J==null?void 0:J.id)||"",tab:J?ee:"",trashFolderId:Z==="trash"?Lt:"",trashFolderStack:Z==="trash"?gt.map(_=>({id:_.id,title:_.title})):[]}}function El(){if(_t)return;const _=Zd(),G=en[en.length-1];(!G||!Oy(G,_))&&(en=[...en,_].slice(-80))}function Ki(){t(8,Lt=""),t(231,gt=[]),t(76,Ct=[])}function Js(){return wl?(Zi(),!0):h?(Fo(),!0):Wt?($s(),!0):Ee?(as(),!0):Mt?(cs(),!0):jn?(t(104,jn=!1),!0):Se?(po(),!0):kn?(qo(),!0):Ot?(no(),!0):$t.visible?($n(),!0):le?(fo(),!0):!1}async function Yd(_){var G;_t=!0;try{if(_.nodeId){const fe=await de("GetNodeDetail",_.nodeId);return fe?(await qt(fe),t(35,ee=_.tab||"overview"),ee==="files"&&((G=oe==null?void 0:oe.resetToNode)==null||G.call(oe,fe.id)),!0):!1}else if(_.section)return m.some(fe=>fe.id===_.section)?(await ci(_.section),_.section==="trash"&&(t(8,Lt=_.trashFolderId||""),t(231,gt=_.trashFolderStack||[]),t(76,Ct=[]),await tl()),!0):!1;return!1}catch{return!1}finally{_t=!1}}async function Qs(){if(!Js())for(;en.length>0;){const _=en[en.length-1];if(en=en.slice(0,-1),await Yd(_))return}}function ai(_){_.button!==3&&_.button!==4||Ni(_.target)||Js()&&_.button===3||(_.preventDefault(),_.stopPropagation(),_.button===3&&Qs())}function ln(_){var G;ee!==_&&(El(),t(35,ee=_),_==="files"&&J&&((G=oe==null?void 0:oe.resetToNode)==null||G.call(oe,J.id)))}li(async()=>{try{if(t(10,c=await de("GetStartupStatus")),u=!0,c.status==="first_run"){t(11,d=!0),t(89,st=!1);return}if(c.status==="recovery"){t(12,p=!0),t(89,st=!1);return}}catch(_){t(34,q=String(_))}try{t(33,M=await de("VerstakVersion")||"verstak-gui/v2"),t(0,m=await de("ListSystemViewsWithPlugins")||[]),t(14,g=await de("ListWorkspaceTree")||[]),t(15,b=await de("ListEnabledTemplates")||[])}catch(_){t(34,q=String(_)),t(0,m=[{id:"today",label:k("nav.today")},{id:"inbox",label:k("nav.inbox")},{id:"activity",label:k("nav.activity")}]),t(14,g=[]),t(15,b=[])}window.runtime&&window.runtime.EventsOn&&(window.runtime.EventsOn("files-dropped",Mp),xn=()=>window.runtime.EventsOff("files-dropped")),window.addEventListener("keydown",eo),window.addEventListener("paste",vo),window.addEventListener("dragenter",To),window.addEventListener("dragover",So),window.addEventListener("dragleave",Co),window.addEventListener("dragend",Rt),window.addEventListener("dragcancel",Rt),window.addEventListener("drop",No),window.addEventListener("mouseup",Rt),window.addEventListener("mouseleave",Rt),window.addEventListener("blur",Rt),document.addEventListener("visibilitychange",Ao),window.addEventListener("auxclick",ai),window.addEventListener("mouseup",ai),t(89,st=!1),fs(),$i()}),ii(()=>{xn&&xn(),window.removeEventListener("keydown",eo),window.removeEventListener("paste",vo),window.removeEventListener("dragenter",To),window.removeEventListener("dragover",So),window.removeEventListener("dragleave",Co),window.removeEventListener("dragend",Rt),window.removeEventListener("dragcancel",Rt),window.removeEventListener("drop",No),window.removeEventListener("mouseup",Rt),window.removeEventListener("mouseleave",Rt),window.removeEventListener("blur",Rt),document.removeEventListener("visibilitychange",Ao),window.removeEventListener("auxclick",ai),window.removeEventListener("mouseup",ai),wo()});async function ci(_){El(),t(1,Z=_),t(2,J=null),t(35,ee="overview"),t(36,te=[]),Ae=[],t(49,Ve=[]),t(50,Ue=[]),t(66,pe=[]),t(69,mt=[]),t(60,me=[]),t(3,Je=[]),t(7,Ut=null),Ki(),t(80,Ot=!1),t(34,q=""),t(16,v=null),t(62,ft=[]),t(63,it=[]),t(17,y=[]),E=0,T=!0,t(18,N=[]),t(19,A=null);try{_==="today"?(t(16,v=await de("ListTodayView")||{cases:[]}),t(60,me=await de("GetSuggestions")||[]),t(61,Re=me.length),t(62,ft=await de("ListTodayInProgress")||[]),t(63,it=await de("ListTodayCaptures")||[])):_==="inbox"?t(3,Je=await de("ListInboxNodes")||[]):_==="trash"?await tl():_==="journal"?await nl():_==="activity"&&(t(17,y=await de("ListActivityFeed",50,0)||[]),E=y.length,T=y.length===50)}catch(G){t(34,q=String(G)),t(16,v={cases:[]}),t(3,Je=[]),t(7,Ut=null),t(17,y=[])}}async function qt(_){El(),t(2,J=_),t(1,Z=""),t(35,ee="overview"),t(36,te=[]),Ae=[],t(49,Ve=[]),t(50,Ue=[]),t(60,me=[]),Ki(),t(37,le=null),t(80,Ot=!1),t(34,q=""),t(32,L=[]),await Vi(_.id)}async function Vi(_){try{t(36,te=await de("ListNotes",_)||[])}catch{}try{Ae=await de("ListFiles",_)||[]}catch{}try{t(49,Ve=await de("ListActions",_)||[])}catch{}try{t(50,Ue=ys(await de("ListWorklog",_)))}catch{}try{t(66,pe=await de("ListInboxNodesForTarget",_)||[])}catch{t(66,pe=[])}try{t(69,mt=await de("ListLinks",_)||[])}catch{t(69,mt=[])}try{t(60,me=await de("GetSuggestions")||[]),t(61,Re=me.length)}catch{t(60,me=[]),t(61,Re=0)}try{t(32,L=await de("ListActivityByNode",_,50,0)||[])}catch{}}function Xd(_,G){Qn=_,t(105,hn=G),t(106,En=""),t(104,jn=!0)}async function xs(){const _=hn.trim();if(!_){t(106,En=k("rename.emptyError"));return}try{await de("ValidateName",_)}catch{t(106,En=k("rename.invalidError"));return}t(104,jn=!1);const G=Qn;Qn="";try{await de("RenameNode",G,_),J&&J.id===G&&t(2,J={...J,title:_}),await el()}catch(fe){t(34,q=String(fe))}}function Jd(){t(104,jn=!1),Qn="",t(105,hn=""),t(106,En="")}function Qd(_){_.key==="Enter"?xs():t(106,En="")}function $s(){t(91,Wt=null),t(92,vn=""),t(94,Xt="")}function eo(_){if(_.key==="Escape"&&yn){_.preventDefault(),Rt();return}if(!Ni(_.target)){if(_.key==="Backspace"||_.altKey&&_.key==="ArrowLeft"){_.preventDefault(),Qs();return}if(ee==="files"&&oe)return oe.handleFilesKeydown(_)}}function Ln(_){t(100,oi=_.title||k("common.confirm")),t(101,jl=_.message||""),t(102,Ul=_.danger!==void 0?_.danger:!0),t(103,ri=_.confirmText||k("common.delete")),Jn=_.onConfirm||null,yl=_.onCancel||null,t(99,wl=!0)}function Zi(){t(99,wl=!1),Jn=null,yl=null}function xd(){Jn&&Jn(),Zi()}function $d(){yl&&yl(),Zi()}function to(_){t(82,un=$t.node),t(83,Ht=_),t(81,tn=""),t(80,Ot=!0),$n()}function ep(){t(82,un=null),t(83,Ht=void 0),t(81,tn=""),t(80,Ot=!0)}function no(){t(80,Ot=!1),t(81,tn=""),t(82,un=null),t(83,Ht=void 0)}async function lo(){if(!(!tn.trim()||Ht===void 0))try{const _=un?un.id:"",G=Ht?Ht.id:"",fe=await de("CreateNodeFromTemplate",_,tn.trim(),G);t(80,Ot=!1),t(81,tn="");const Le=fe?fe.id:null;if(t(82,un=null),t(83,Ht=void 0),_){t(90,Yt={...Yt,[_]:!0});const Be=await de("ListWorkspaceChildren",_)||[];Ii(g,_,Be),t(14,g=[...g])}else t(14,g=await de("ListWorkspaceTree")||g);if(Le){const Be=await de("GetNodeDetail",Le);Be&&(t(1,Z=""),qt(Be))}}catch(_){t(34,q=String(_))}}function tp(_,G){t(84,$t={visible:!0,x:_.clientX,y:_.clientY,node:G})}function $n(){t(84,$t={visible:!1,x:0,y:0,node:null})}async function np(_){const G=!Yt[_];if(t(90,Yt={...Yt,[_]:G}),!G)return;const fe=await de("ListWorkspaceChildren",_)||[];Ii(g,_,fe),t(14,g=[...g])}async function lp(_,G){if(!(!_||!G||_===G))try{const fe=await de("MoveNode",_,G);await el();const Le=await de("GetNodeDetail",_);Le&&(t(1,Z=""),qt(Le))}catch(fe){t(34,q=String(fe))}}async function ip(_){_.preventDefault(),_.stopPropagation();try{const G=_.dataTransfer.getData("text/plain");if(!G)return;const fe=await de("GetNodeDetail",G);if(!fe||!fe.parent_id)return;await de("MoveNode",G,""),await el();const Le=await de("GetNodeDetail",G);Le&&(t(1,Z=""),qt(Le))}catch(G){t(34,q=String(G))}}function sp(_){_.preventDefault(),_.dataTransfer.dropEffect="move",t(95,vl=!0)}function op(_){t(95,vl=!1)}function io(_){Xd(_.id,_.title),$n()}function so(_){$n(),Ln({title:k("delete.confirmTitle"),message:k("delete.confirmMessage")+" "+_.title+"?",confirmText:k("common.delete"),danger:!0,onConfirm:async()=>{try{await de("DeleteNode",_.id),await el(),await $i(),J&&J.id===_.id&&t(2,J=null)}catch(G){t(34,q=String(G))}}})}async function On(_){$n();const G=typeof _=="string"?_:_.id;try{await de("OpenFolder",G)}catch(fe){t(34,q=String(fe))}}async function mn(_){var fe,Le;const G=Kd(_);try{if(G==="url"||_.type==="link"){if(!_.url)throw new Error("url required");await de("OpenURL",_.url);return}if(G==="text"||_.type==="note"){const Be=await de("ReadNote",_.id);t(37,le={id:_.id,title:_.title,content:Be||"",dirty:!1});return}if(G==="folder"||_.type==="folder"){El(),t(1,Z=""),t(2,J=_),t(35,ee="files"),await Vi(_.id),(fe=oe==null?void 0:oe.resetToNode)==null||fe.call(oe,_.id);return}if(G==="file"||G==="image"||_.type==="file"){const bt=(await de("ListFiles",_.id)||[])[0];if(!bt)throw new Error("file record not found");const Kt=Dy(_,bt);Og(Kt)?(t(35,ee="files"),(Le=oe==null?void 0:oe.openFileById)==null||Le.call(oe,_.id)):await de("OpenFile",Kt.fileId);return}await Wl(_.id)}catch(Be){t(34,q=String(Be))}}async function oo(_){$n();try{await de("MoveNode",_.id,""),await el();const G=await de("GetNodeDetail",_.id);G&&(t(1,Z=""),qt(G))}catch(G){t(34,q=String(G))}}async function el(){const _=Object.keys(Yt).filter(fe=>Yt[fe]),G=await de("ListWorkspaceTree")||[];for(const fe of _){const Be=(await de("ListWorkspaceChildren",fe)||[]).map(bt=>({...bt}));Vd(G,fe,Be)}t(14,g=G)}async function ro(_){const G=await de("ListWorkspaceChildren",_)||[];Ii(g,_,G),t(14,g=[...g])}async function ao(_){if(!(!_.trim()||!J))try{const G=await de("CreateNote",J.id,_.trim());t(36,te=[...te,G&&G.id?G:{id:Date.now().toString(),title:_.trim(),createdAt:new Date().toISOString()}])}catch{const fe={id:Date.now().toString(),title:_.trim(),createdAt:new Date().toISOString()};t(36,te=[...te,fe])}}async function Un(_){if(le&&le.dirty){Ln({title:k("note.unsavedTitle"),message:k("note.unsavedMessage"),confirmText:k("note.unsavedClose"),danger:!1,onConfirm:async()=>{await co(_)}});return}await co(_)}async function co(_){try{const G=await de("ReadNote",_.id);t(37,le={id:_.id,title:_.title,content:G||"",dirty:!1})}catch{t(37,le={id:_.id,title:_.title,content:"# "+_.title+` + +`,dirty:!1})}}function uo(_){Ln({title:k("common.delete"),message:k("note.deleteConfirm",{title:_.title})||`Удалить заметку «${_.title}»?`,confirmText:k("common.delete"),danger:!0,onConfirm:async()=>{try{await de("DeleteNote",_.id),t(36,te=te.filter(G=>G.id!==_.id)),le&&le.id===_.id&&t(37,le=null);try{await $i()}catch{}}catch(G){t(34,q=String(G))}}})}function fo(){if(le&&le.dirty){Ln({title:k("note.unsavedTitle"),message:k("note.unsavedMessage"),confirmText:k("note.unsavedClose"),danger:!1,onConfirm:()=>{t(37,le=null),t(40,ze="edit")}});return}t(37,le=null),t(40,ze="edit")}async function rp(){if(le)try{await de("SaveNote",le.id,le.content),t(37,le.dirty=!1,le)}catch{t(37,le.dirty=!1,le)}}function ap(){t(42,Ie=""),t(43,ne=""),t(41,Ge=!0)}function Yi(){if(!le){t(41,Ge=!1);return}const _=Ie.trim()||ne.trim()||"link",G=ne.trim()||"#",fe=`[${_}](${G})`;t(37,le.content=le.content+(le.content.endsWith(` +`)?"":` +`)+fe+` +`,le),t(37,le.dirty=!0,le),t(41,Ge=!1)}function cp(){t(44,re=!0)}function up(_){const G=_.detail.markdown;_e&&typeof _e.insertText=="function"&&_e.insertText(G),t(44,re=!1)}function fp(){t(44,re=!1)}function Xi(_,G){t(47,we=_),t(48,je=G),xe=G}function Hn(){t(47,we=null),t(48,je=""),xe=""}async function Ji(){if(!we||!je.trim()){Hn();return}if(je.trim()===xe){Hn();return}try{await de("RenameNote",we,je.trim()),t(36,te=te.map(_=>_.id===we?{..._,title:je.trim()}:_)),le&&le.id===we&&t(37,le.title=je.trim(),le),Hn()}catch(_){t(34,q=String(_)),Hn()}}async function dp(_){const{type:G,id:fe}=_.detail;if(fe)switch(G){case"case":await pp(fe);break;case"note":await hp(fe);break;case"file":await mp(fe);break;case"secret":Dn(k("note.internal.secretNotImplemented"));break;default:Dn(`verstak://${G}/${fe}`)}}async function pp(_){try{const G=await de("GetNodeDetail",_);if(!G){Dn(k("note.internal.caseNotFound"));return}await qt(G)}catch{Dn(k("note.internal.caseNotFound"))}}async function hp(_){try{const G=await de("GetNodeDetail",_);if(!G){Dn(k("note.internal.noteNotFound"));return}const fe=G.parent_id||G.parentId||"";if(fe){const Be=await de("GetNodeDetail",fe);Be&&await qt(Be)}ln("notes");const Le=te.find(Be=>Be.id===_);Le?await Un(Le):await Un({id:G.id,title:G.title})}catch{Dn(k("note.internal.noteNotFound"))}}async function mp(_){var G,fe;try{const Le=await de("GetNodeDetail",_);if(!Le){Dn(k("note.internal.fileNotFound"));return}const Be=Le.parent_id||Le.parentId||"";if(Be){const bt=await de("GetNodeDetail",Be);bt&&await qt(bt),ln("files"),(G=oe==null?void 0:oe.resetToNode)==null||G.call(oe,Be),(fe=oe==null?void 0:oe.openFileById)==null||fe.call(oe,_)}else Dn(k("note.internal.fileFound",{title:Le.title}))}catch{Dn(k("note.internal.fileNotFound"))}}function Dn(_){t(46,Fe=_),t(45,Ne=!0),setTimeout(()=>{t(45,Ne=!1)},3e3)}function gp(_){le&&(t(37,le.content=_.detail.content,le),t(37,le.dirty=!0,le))}function _p(_){t(40,ze=_.detail.mode)}function bp(){ap()}function kp(){cp()}function ui(_=null){t(58,x=_),t(59,ye=null),t(52,He=_?_.summary:""),t(53,Oe=_?String(_.minutes||""):""),t(54,Ke=_&&_.date||""),t(55,Pe=_&&_.details||""),t(56,ue=_?!!_.billable:!1),t(57,be=_?!!_.approximate:!1),t(51,Se=!0)}function po(){t(51,Se=!1),t(58,x=null),t(59,ye=null)}async function Qi(_=""){const G=_||(J?J.id:"");J&&J.id===G&&t(50,Ue=ys(await de("ListWorklog",J.id))||Ue),Z==="journal"&&await nl()}async function vp(){const _=parseInt(Oe,10);if(!(!He.trim()||isNaN(_)||_<=0)&&!(!ye&&!x&&!J)){try{if(ye){const G=JSON.stringify(Ei(ye));await de("AcceptSuggestionFull",ye.nodeId,He.trim(),Pe,Ke,_,be,ue,G),await fi()}else x?(await de("UpdateWorklogEntry",x.id,He.trim(),Pe,Ke,_,be,ue),await Qi(x.nodeId)):(await de("CreateWorklogFull",J.id,He.trim(),Pe,Ke,_,be,ue),await Qi(J.id))}catch(G){t(34,q=String(G));return}t(51,Se=!1),t(58,x=null),t(59,ye=null)}}function xi(_){Ln({title:k("worklog.deleteEntry"),message:k("worklog.deleteConfirm"),confirmText:k("common.delete"),danger:!0,onConfirm:async()=>{try{await de("DeleteWorklogEntry",_.id),await Qi(_.nodeId)}catch(G){t(34,q=String(G))}}})}async function fi(){t(60,me=await de("GetSuggestions")||[]),t(61,Re=me.length),J&&t(50,Ue=ys(await de("ListWorklog",J.id))),Z==="journal"&&await nl()}async function tl(){t(7,Ut=await de("ListTrash")||{nodes:[],entries:[],trashPath:"",count:0}),t(75,Rn=Ut.count||0);const _=Ut.nodes||[];t(76,Ct=Ct.filter(G=>_.some(fe=>fe.id===G))),Lt&&!_.some(G=>G.id===Lt)?Ki():gt.length>0&&(t(231,gt=gt.filter(G=>_.some(fe=>fe.id===G.id))),t(8,Lt=gt.length>0?gt[gt.length-1].id:""))}async function $i(){try{t(75,Rn=await de("TrashCount")||0)}catch{t(75,Rn=0)}}function wp(){return Lt&&(((Ut==null?void 0:Ut.nodes)||[]).find(_=>_.id===Lt)||gt[gt.length-1])||null}function Tl(_){El(),t(8,Lt=_.id);const G=gt.findIndex(fe=>fe.id===_.id);G>=0?t(231,gt=gt.slice(0,G+1)):t(231,gt=[...gt,{id:_.id,title:_.title}]),t(76,Ct=[])}function yp(){if(gt.length===0)return;El();const _=gt.slice(0,-1);t(231,gt=_),t(8,Lt=_.length>0?_[_.length-1].id:""),t(76,Ct=[])}async function Hl(_){t(91,Wt={name:_.title,type:"file",mime:"text/plain",size:0,fileId:_.id}),t(92,vn=""),t(94,Xt=""),t(93,Bn=!0);try{_.trashFsPath?t(92,vn=await de("ReadTrashFile",_.trashFsPath)||""):t(92,vn=await de("ReadTrashFileContent",_.id)||"");const G=(_.title||"").split(".").pop().toLowerCase();["png","jpg","jpeg","gif","webp","bmp","svg"].includes(G)&&t(92,vn="data:image/"+(G==="svg"?"svg+xml":G)+";base64,"+btoa(previewContent))}catch(G){t(94,Xt=String(G))}t(93,Bn=!1)}function ho(_){t(76,Ct=Ct.includes(_)?Ct.filter(G=>G!==_):[...Ct,_])}function es(_){return Ct.length>0?Ct:[_]}async function ts(_){try{await de("RestoreTrashNodesJSON",JSON.stringify(_)),await el(),await tl()}catch(G){t(34,q=String(G))}}async function ns(_){Ln({title:k("delete.confirmTitle"),message:k("delete.confirmMessage")+" "+_.length+"?",confirmText:k("common.delete"),danger:!0,onConfirm:async()=>{try{await de("PurgeTrashNodesJSON",JSON.stringify(_)),await tl()}catch(G){t(34,q=String(G))}}})}async function Ep(){Ln({title:k("delete.confirmTitle"),message:k("trash.empty")+"?",confirmText:k("common.delete"),danger:!0,onConfirm:async()=>{try{await de("EmptyTrash"),await tl()}catch(_){t(34,q=String(_))}}})}function di(_){t(59,ye=_),t(58,x=null),t(52,He=_.summary||""),t(53,Oe=String(_.suggestedMin||"")),t(54,Ke=""),t(55,Pe=""),t(56,ue=!1),t(57,be=!0),t(51,Se=!0)}async function pi(_){try{await de("DismissSuggestion",_.nodeId,JSON.stringify(Ei(_))),await fi()}catch(G){t(34,q=String(G))}}async function Tp(){t(65,dt=!0);try{const _=await de("ListBrowserEvents","pending",50,0);t(64,Ze=_||[])}catch(_){console.warn("[browser] load error:",_)}finally{t(65,dt=!1)}}async function Sp(_){await de("AcceptBrowserEvent",_.id,""),t(64,Ze=Ze.filter(G=>G.id!==_.id))}async function Cp(_){await de("DismissBrowserEvent",_.id),t(64,Ze=Ze.filter(G=>G.id!==_.id))}async function Ap(_){J&&J.id?(await de("AttachBrowserEventToNode",_.id,J.id),t(64,Ze=Ze.filter(G=>G.id!==_.id))):(await de("DismissBrowserEvent",_.id),t(64,Ze=Ze.filter(G=>G.id!==_.id)))}async function ls(_){try{const G=Ei(_),fe=JSON.stringify(G);Ti("acceptTodaySuggestion: nodeId="+_.nodeId+" eventIds="+fe+" events="+JSON.stringify((_.events||[]).map(Le=>({id:Le.id,type:Le.eventType,title:Le.title})))),await de("AcceptSuggestionWith",_.nodeId,_.summary,_.suggestedMin,"",fe),await fi()}catch(G){Ti("acceptTodaySuggestion error: "+G)}}async function mo(_){try{const G=Ei(_),fe=JSON.stringify(G);Ti("acceptJournalSuggestion: nodeId="+_.nodeId+" eventIds="+fe+" events="+JSON.stringify((_.events||[]).map(Le=>({id:Le.id,type:Le.eventType,title:Le.title})))),await de("AcceptSuggestionWith",_.nodeId,_.summary,_.suggestedMin,"",fe),await fi()}catch(G){Ti("acceptJournalSuggestion error: "+G)}}async function nl(){try{const[_,G,fe]=await Promise.all([de("ListWorklogReport",I,O,D,R,B,j),de("WorklogReportSummary",I,O,D,R,B,j),de("GetSuggestions")]);if(t(18,N=(_||[]).map(Le=>(Le._expanded===void 0&&(Le._expanded=!1),Le))),t(19,A=G||null),t(60,me=fe||[]),t(61,Re=me.length),D&&!U)if(_&&_.length>0&&_[0].nodePath)t(26,U=_[0].nodePath);else try{t(26,U=await de("GetNodeTitle",D))}catch{t(26,U="")}}catch{t(18,N=[]),t(19,A=null),t(60,me=[]),t(61,Re=0)}}async function hi(_){try{const G=await de("SaveWorklogReport",_,I,O,D,R,B,j);t(27,z=G),setTimeout(()=>t(27,z=""),4e3)}catch(G){if(String(G).includes("отменено"))return;t(27,z="Ошибка: "+String(G)),setTimeout(()=>t(27,z=""),6e3)}}let go;async function is(_){if(_._expanded=!_._expanded,t(18,N),_._expanded&&!_._events&&_._hasEvents===void 0)try{_._events=await de("GetWorklogEntryEvents",_.id)||[],_._hasEvents=_._events.length>0,t(18,N)}catch{_._events=[],_._hasEvents=!1,t(18,N)}}async function ss(_){if(_._expanded=!_._expanded,_._expanded&&_.source==="suggestion"&&!_._events&&_._hasEvents===void 0)try{_._events=await de("GetWorklogEntryEvents",_.id)||[],_._hasEvents=_._events.length>0}catch(G){G._events=[],G._hasEvents=!1}t(50,Ue)}async function Np(){const _=K.trim();if(!_||_.length<2){t(30,Y=[]),t(31,F=!1);return}try{t(30,Y=await de("SearchNodes",_)||[]),t(31,F=Y.length>0)}catch{t(30,Y=[]),t(31,F=!1)}}function Ip(){clearTimeout(go),go=setTimeout(Np,200)}function _o(_){t(23,D=_.id),t(26,U=_.path||_.title),t(22,R=!0),t(29,K=""),t(30,Y=[]),t(31,F=!1),nl()}function bo(){t(23,D=""),t(22,R=!1),t(26,U=""),t(29,K=""),t(30,Y=[]),t(31,F=!1),nl()}function Rp(){t(20,I=""),t(21,O=""),t(23,D=""),t(22,R=!1),t(24,B="all"),t(25,j="all"),t(26,U=""),t(29,K=""),t(30,Y=[]),t(31,F=!1),nl()}async function Mp(_){try{if(!_||_.length===0)return;await Wp(_,"drop")}finally{Rt()}}function Lp(_){return{note_created:k("event.noteCreated"),note_updated:k("event.noteUpdated"),note_deleted:k("event.noteDeleted"),file_added:k("event.fileAdded"),file_deleted:k("event.fileDeleted"),file_renamed:k("event.fileRenamed"),file_copied:k("event.fileCopied"),file_moved:k("event.fileMoved"),folder_added:k("event.folderAdded"),folder_deleted:k("event.folderDeleted"),folder_renamed:k("event.folderRenamed"),folder_moved:k("event.folderMoved"),node_created:k("event.caseCreated"),node_updated:k("event.caseUpdated"),node_deleted:k("event.nodeDeleted"),action_created:k("event.actionCreated"),action_done:k("event.actionDone"),worklog_added:k("event.worklogAdded")}[_]||_}function os(_){return{project:k("kind.project"),client:k("kind.client"),document:k("kind.document"),recipe:k("kind.recipe"),folder:k("kind.folder"),note:k("kind.note"),file:k("kind.file"),archive:k("kind.archive"),case:k("kind.case"),link:k("kind.link")}[_]||_||k("kind.case")}function Op(_){return _==="action"?k("kind.action"):os(_)}function Dp(_){return _?k("capture.kind."+_):""}function Pp(_){return _?k("capture.source."+_):""}function qp(_){const G=[];return _.captureKind&&G.push(Dp(_.captureKind)),_.captureSource&&G.push(Pp(_.captureSource)),_.captureContextLabel&&G.push(`${k("inbox.capturedIn")}: ${_.captureContextLabel}`),_.suggestedTargetLabel&&G.push(`${k("inbox.suggestedTarget")}: ${_.suggestedTargetLabel}`),G.push(qn(_.capturedAt||_.createdAt)),G.filter(Boolean).join(" · ")}function zp(_){!_||!_.id||(t(3,Je=[_,...Je.filter(G=>G.id!==_.id)]),J&&(_.captureContextNodeId===J.id||_.suggestedTargetNodeId===J.id)&&t(66,pe=[_,...pe.filter(G=>G.id!==_.id)]))}function Bp(){return J&&J.id?{contextType:"node",nodeId:J.id,suggestedTargetNodeId:J.id}:Z?{contextType:"section",section:Z}:{contextType:"global",section:"root"}}function ll(){return JSON.stringify(Bp())}function Fp(){return J&&J.id?k("capture.dropOverlayNode",{title:J.title}):k("capture.dropOverlayGlobal")}async function Sl(_=null){_&&zp(_),Z==="inbox"&&t(3,Je=await de("ListInboxNodes")||Je)}async function jp(_,G){const fe=String(_||"").trim();if(!fe)return null;const Le=Es(fe),Be=Le?await de("CaptureURLWithContext",Le,"",G,ll()):await de("CaptureTextWithContext",fe,G,ll());return await Sl(Be),Be}async function ko(_,G,fe){const Le=String(_||"").trim();if(!Le)return null;const Be=await de("CaptureURLWithContext",Le,G||"",fe,ll());return await Sl(Be),Be}async function Up(_,G){if(!_)return null;const fe=_.path||_.webkitRelativePath||"";if(fe){const bt=await de("CapturePathWithContext",fe,G,ll());return await Sl(bt),bt}const Le=await zy(_),Be=await de("CaptureFileDataWithContext",_.name||`clipboard.${qy(_.type)}`,Le,G,ll());return await Sl(Be),Be}async function rs(_,G){var Wn,Pn,Tn;if(!_)return!1;let fe=!1;const Le=Array.from(_.files||[]);for(const Sn of Le)await Up(Sn,G),fe=!0;const Be=(Wn=_.getData)==null?void 0:Wn.call(_,"text/x-moz-url");if(Be){const Sn=By(Be),Gl=Sn?Es(Sn.url):"";if(Gl)return await ko(Gl,Sn.title,G),!0}const bt=(Pn=_.getData)==null?void 0:Pn.call(_,"text/uri-list");if(bt){const Sn=Fy(bt),Gl=Es(Sn);if(Gl)return await ko(Gl,"",G),!0}const Kt=(Tn=_.getData)==null?void 0:Tn.call(_,"text/plain");return String(Kt||"").trim()&&(await jp(Kt,G),fe=!0),fe}async function Hp(){if(!qe){t(68,pt=""),t(67,qe=!0);try{const _=await de("CaptureClipboardTextWithContext",ll());await Sl(_),t(68,pt=k("inbox.captured"))}catch(_){t(34,q=String(_).includes("clipboard is empty")?k("inbox.clipboardEmpty"):k("inbox.clipboardUnavailable"))}finally{t(67,qe=!1)}}}async function Wp(_,G="drop"){if(!qe){t(67,qe=!0),t(68,pt="");try{for(const fe of _){const Le=await de("CapturePathWithContext",fe,G,ll());await Sl(Le)}t(68,pt=k("inbox.captured"))}catch(fe){t(34,q=String(fe))}finally{t(67,qe=!1),t(96,wn=!1)}}}async function vo(_){if(!(d||p)&&!Ni(_.target)&&_.clipboardData)try{await rs(_.clipboardData,"paste")&&(_.preventDefault(),t(68,pt=k("inbox.captured")))}catch(G){t(34,q=String(G))}}function wo(){Gt&&(clearTimeout(Gt),Gt=null)}function Rt(){dn=0,t(97,yn=!1),t(98,Fn=""),Mn=0,t(96,wn=!1),wo()}function yo(){Gt||(Gt=setTimeout(()=>{Gt=null,yn&&Date.now()-Mn>2e3?Rt():yn&&yo()},2500))}function Eo(_){return Lf(_)?(t(98,Fn=Fp()),t(97,yn=!0),Mn=Date.now(),yo(),!0):!1}function To(_){Eo(_.dataTransfer)&&(dn+=1)}function So(_){Eo(_.dataTransfer)&&(_.preventDefault(),_.dataTransfer.dropEffect="copy")}function Co(_){dn>0&&(dn-=1),(_.clientX<=0||_.clientY<=0||_.clientX>=window.innerWidth||_.clientY>=window.innerHeight||dn<=0)&&Rt()}function Ao(){document.hidden&&Rt()}async function No(_){if(Lf(_.dataTransfer)){_.preventDefault();try{await rs(_.dataTransfer,"drop")&&t(68,pt=k("inbox.captured"))}catch(G){t(34,q=String(G))}finally{Rt()}}}function Gp(_){_.preventDefault(),_.dataTransfer.dropEffect="copy",t(96,wn=!0)}function Kp(){t(96,wn=!1)}async function Vp(_){_.preventDefault(),_.stopPropagation();try{await rs(_.dataTransfer,"drop")&&t(68,pt=k("inbox.captured"))}catch(G){t(34,q=String(G))}finally{Rt()}}function mi(_){t(107,Ee=_),t(108,V=""),t(109,ie=[]),t(110,ve=null)}function as(){t(107,Ee=null),t(108,V=""),t(109,ie=[]),t(110,ve=null),t(111,De=!1)}async function Zp(){const _=V.trim();if(!_||_.length<2){t(109,ie=[]);return}t(111,De=!0);try{const G=await de("SearchNodes",_)||[];t(109,ie=G.filter(fe=>jy(fe)&&fe.id!==(Ee==null?void 0:Ee.id)))}catch{t(109,ie=[])}finally{t(111,De=!1)}}function Yp(_){t(108,V=_.target.value),t(110,ve=null),clearTimeout($e),$e=setTimeout(Zp,200)}function Io(_){t(110,ve=_),t(108,V=_.path||_.title),t(109,ie=[])}async function Ro(){if(!(!Ee||!ve))try{await Mo(Ee,ve.id),as()}catch(_){t(34,q=String(_))}}async function Mo(_,G){!_||!G||(await de("ResolveInboxNode",_.id,G),t(3,Je=Je.filter(fe=>fe.id!==_.id)),t(66,pe=pe.filter(fe=>fe.id!==_.id)),await el(),J&&await Vi(J.id))}async function gi(_){const G=(_==null?void 0:_.suggestedTargetNodeId)||(J==null?void 0:J.id)||"";if(G)try{await Mo(_,G)}catch(fe){t(34,q=String(fe))}}function _i(_){Ln({title:k("inbox.deleteTitle"),message:k("inbox.deleteConfirm",{title:_.title}),confirmText:k("common.delete"),danger:!0,onConfirm:async()=>{try{await de("DeleteInboxNode",_.id),t(3,Je=Je.filter(G=>G.id!==_.id)),t(66,pe=pe.filter(G=>G.id!==_.id))}catch(G){t(34,q=String(G))}}})}function Lo(_){t(70,Mt=_),t(71,It=_.title||""),t(72,jt=_.url||""),t(73,an=_.note||""),t(74,cn="")}function cs(){t(70,Mt=null),t(71,It=""),t(72,jt=""),t(73,an=""),t(74,cn="")}async function Xp(){if(!(!Mt||!jt.trim()))try{const _=await de("UpdateLink",Mt.id,It.trim(),jt.trim(),an);t(69,mt=mt.map(G=>G.id===_.id?_:G)),cs()}catch(_){t(74,cn=String(_))}}async function Oo(_){Ln({title:k("links.deleteTitle"),message:k("links.deleteConfirm",{title:_.title}),confirmText:k("common.delete"),danger:!0,onConfirm:async()=>{try{await de("DeleteLink",_.id),t(69,mt=mt.filter(G=>G.id!==_.id))}catch(G){t(34,q=String(G))}}})}async function Do(_){try{await de("OpenLink",_.id)}catch(G){t(34,q=String(G))}}async function Po(_){var G,fe;try{await((fe=(G=navigator.clipboard)==null?void 0:G.writeText)==null?void 0:fe.call(G,_.url)),t(74,cn=k("links.copied"))}catch{t(74,cn=k("links.copyUnavailable"))}}function Jp(){t(85,kn=!0),t(86,fn=""),t(87,$="open_url"),t(88,he="")}function qo(){t(85,kn=!1),t(86,fn=""),t(88,he="")}async function us(){if(!(!fn.trim()||!he.trim()||!J))try{const _=await de("CreateAction",J.id,$,fn.trim(),he.trim());_&&_.id&&t(49,Ve=[...Ve,_]),t(85,kn=!1),t(86,fn=""),t(88,he="")}catch(_){t(34,q=String(_))}}async function zo(_){try{await de("DeleteAction",_),t(49,Ve=Ve.filter(G=>G.id!==_))}catch(G){t(34,q=String(G))}}function Qp(_){const G=tt.find(fe=>fe.id===_);return G?G.label:_}async function Wl(_){try{const G=await de("GetNodeDetail",_);G&&qt(G)}catch(G){t(34,q=String(G))}}async function il(_){var Le,Be,bt,Kt,Wn;const G=Uy(_),fe=G.nodeId;if(fe)try{const Pn=await de("GetNodeDetail",fe);if(!Pn)return;if(qt(Pn),G.tab==="notes"){if(ln("notes"),G.targetId){try{t(36,te=await de("ListNotes",fe)||[])}catch{}const Tn=te.find(Sn=>Sn.id===G.targetId);Tn&&setTimeout(()=>Un(Tn),100)}}else if(G.tab==="files")if(ln("files"),G.targetId)try{const Tn=await de("GetNodeDetail",G.targetId);Tn&&Tn.parent_id?((Le=oe==null?void 0:oe.resetToNode)==null||Le.call(oe,Tn.parent_id),(Be=oe==null?void 0:oe.openFileById)==null||Be.call(oe,G.targetId)):(bt=oe==null?void 0:oe.resetToNode)==null||bt.call(oe,fe)}catch{(Kt=oe==null?void 0:oe.resetToNode)==null||Kt.call(oe,fe)}else(Wn=oe==null?void 0:oe.resetToNode)==null||Wn.call(oe,fe)}catch(Pn){t(34,q=String(Pn))}}async function Cl(_){return il(_)}async function xp(_){var G,fe,Le;if(!(!_||!_.nodeId))try{if(_.type==="link"){const bt=await de("GetNodeDetail",_.nodeId);bt&&(await qt(bt),ln("links"));return}if(_.type==="action"){const bt=await de("GetNodeDetail",_.nodeId);bt&&(await qt(bt),ln("actions"));return}const Be=await de("GetNodeDetail",_.nodeId);if(!Be)return;if(_.type==="note"){const bt=Be.parent_id||Be.parentId||"",Kt=bt?await de("GetNodeDetail",bt):null;if(Kt){await qt(Kt),ln("notes"),t(36,te=await de("ListNotes",Kt.id)||[]);const Wn=te.find(Pn=>Pn.id===Be.id);Wn&&await Un(Wn)}return}if(_.type==="file"){const bt=Be.parent_id||Be.parentId||"",Kt=bt?await de("GetNodeDetail",bt):null;Kt&&(await qt(Kt),ln("files"),(G=oe==null?void 0:oe.resetToNode)==null||G.call(oe,Kt.id),(fe=oe==null?void 0:oe.openFileById)==null||fe.call(oe,Be.id));return}if(_.type==="folder"){await qt(Be),ln("files"),(Le=oe==null?void 0:oe.resetToNode)==null||Le.call(oe,Be.id);return}await qt(Be)}catch(Be){t(34,q=String(Be))}}async function fs(){try{t(112,nt=await de("SyncStatus"))}catch{t(112,nt={configured:!1,serverUrl:"",deviceId:"",unpushedOps:0,lastSyncAt:"",syncInterval:0})}}let Bo="general";function ds(_){t(116,Bo=_||"general"),t(13,h=!0)}function Fo(){t(13,h=!1)}async function $p(){try{t(0,m=await de("ListSystemViewsWithPlugins")||[])}catch{}}function e1(_){const G=Array.isArray(_==null?void 0:_.conflicts)?_.conflicts:[],fe=Array.isArray(_==null?void 0:_.applyErrors)?_.applyErrors:[],Le=[];return G.length>0&&Le.push(k("sync.conflictsCount",{count:G.length})),fe.length>0&&Le.push(k("sync.applyErrorsCount",{count:fe.length})),Le.join(" · ")}async function t1(){t(113,St=!0),t(114,wt=""),t(115,Dt="");try{const _=await de("SyncNow");await fs(),t(114,wt=e1(_)),t(115,Dt=wt?"warning":"")}catch(_){console.error("sync error:",_),t(114,wt=`${k("sync.status.error")}: ${(_==null?void 0:_.message)||_}`),t(115,Dt="warning")}finally{t(113,St=!1)}}function n1(_){t(11,d=!1),t(10,c=_),t(89,st=!1),window.location.reload()}function l1(_){t(12,p=!1),t(10,c=_),t(89,st=!1),window.location.reload()}const i1=_=>_.nodeId===J.id,s1=_=>ci(_.id),o1=()=>ds("sync"),r1=()=>ds(),a1=()=>ts(Ct),c1=()=>ns(Ct),u1=()=>de("OpenTrashFolder"),f1=()=>t(34,q=""),d1=()=>t(34,q=""),p1=()=>t(34,q="");function h1(){je=this.value,t(48,je)}const m1=_=>{_.key==="Enter"&&Ji(),_.key==="Escape"&&Hn()},g1=()=>Xi(le.id,le.title);function _1(_){In[_?"unshift":"push"](()=>{_e=_,t(38,_e)})}const b1=_=>ln(_.id),k1=()=>{ln("notes")},v1=()=>{ln("files"),oe&&oe.addFile()},w1=_=>Un(_.detail.note),y1=_=>ao(_.detail.title),E1=_=>Un(_.detail.note),T1=_=>Xi(_.detail.noteId,_.detail.currentTitle),S1=_=>uo(_.detail.note);function C1(_){In[_?"unshift":"push"](()=>{oe=_,t(39,oe)})}const A1=_=>Un(_.detail),N1=_=>ro(_.detail.nodeId),I1=_=>t(34,q=_.detail.message),R1=_=>gi(_),M1=_=>mi(_),L1=_=>mn(_),O1=_=>On(_),D1=_=>_i(_),P1=_=>mn(_),q1=(_,G)=>G.key==="Enter"&&mn(_),z1=_=>Do(_),B1=_=>Po(_),F1=_=>Lo(_),j1=_=>Oo(_),U1=_=>de("RunAction",_.id),H1=_=>zo(_.id),W1=()=>ui(),G1=_=>_.nodeId===J.id,K1=_=>di(_),V1=_=>ls(_),Z1=_=>pi(_),Y1=(_,G,fe)=>t(60,G[fe]._expanded=!_._expanded,me,t(2,J)),X1=(_,G,fe,Le)=>Le.key==="Enter"&&t(60,G[fe]._expanded=!_._expanded,me,t(2,J)),J1=_=>il(_),Q1=_=>On(_.nodeId),x1=_=>ui(_),$1=_=>xi(_),eh=_=>il(_),th=_=>On(_.nodeId),nh=_=>ss(_),lh=(_,G)=>G.key==="Enter"&&ss(_),ih=_=>Cl(_),sh=(_,G)=>G.key==="Enter"&&Cl(_),oh=()=>{t(4,vt="date"),t(5,At=vt==="date"&&At==="desc"?"asc":"desc")},rh=()=>{t(4,vt="name"),t(5,At=vt==="name"&&At==="desc"?"asc":"desc")},ah=()=>{t(4,vt="type"),t(5,At=vt==="type"&&At==="desc"?"asc":"desc")};function ch(){Zt=this.checked,t(6,Zt)}const uh=_=>gi(_),fh=_=>mi(_),dh=_=>mn(_),ph=_=>On(_),hh=_=>_i(_),mh=_=>mn(_),gh=(_,G)=>G.key==="Enter"&&mn(_),_h=_=>gi(_),bh=_=>mi(_),kh=_=>mn(_),vh=_=>On(_),wh=_=>_i(_),yh=_=>mn(_),Eh=(_,G)=>G.key==="Enter"&&mn(_),Th=_=>ho(_.id),Sh=_=>_.type!=="file"?Tl(_):Hl(_),Ch=(_,G)=>G.key==="Enter"&&(_.type!=="file"?Tl(_):Hl(_)),Ah=_=>_.type!=="file"?Tl(_):Hl(_),Nh=(_,G)=>G.key==="Enter"&&(_.type!=="file"?Tl(_):Hl(_)),Ih=_=>ts(es(_.id)),Rh=_=>ns(es(_.id)),Mh=()=>t(28,W="suggestions"),Lh=()=>t(28,W="worklog"),Oh=_=>Wl(_.nodeId),Dh=(_,G,fe,Le)=>t(60,G[fe].suggestedMin=parseInt(Le.target.value),me),Ph=_=>di(_),qh=_=>mo(_),zh=_=>pi(_),Bh=(_,G,fe)=>t(60,G[fe]._expanded=!_._expanded,me),Fh=(_,G,fe,Le)=>Le.key==="Enter"&&t(60,G[fe]._expanded=!_._expanded,me),jh=_=>il(_),Uh=_=>On(_.nodeId),Hh=()=>hi("csv"),Wh=()=>hi("markdown"),Gh=()=>hi("pdf");function Kh(){I=this.value,t(20,I)}function Vh(){O=this.value,t(21,O)}const Zh=()=>{t(29,K=""),t(26,U=""),bo()};function Yh(){K=this.value,t(29,K)}const Xh=()=>setTimeout(()=>t(31,F=!1),200),Jh=_=>_o(_);function Qh(){R=this.checked,t(22,R)}function xh(){B=Ci(this),t(24,B)}function $h(){j=Ci(this),t(25,j)}const em=_=>Wl(_.nodeId),tm=_=>is(_),nm=(_,G)=>G.key==="Enter"&&is(_),lm=_=>ui(_),im=_=>xi(_),sm=_=>il(_),om=_=>Wl(_),rm=_=>Cl(_),am=_=>il(_),cm=_=>di(_),um=_=>ls(_),fm=_=>pi(_),dm=_=>On(_),pm=_=>mn(_),hm=_=>{ci("trash"),Tl({id:_,title:""}),tl()},mm=_=>Cl(_),gm=(_,G)=>G.key==="Enter"&&Cl(_),_m=()=>t(83,Ht=null),bm=_=>t(83,Ht=_);function km(){tn=this.value,t(81,tn)}const vm=_=>_.key==="Enter"&&lo(),wm=_=>to(_),ym=()=>oo($t.node),Em=()=>io($t.node),Tm=()=>so($t.node),Sm=()=>On($t.node);function Cm(){Ke=this.value,t(54,Ke)}function Am(){He=this.value,t(52,He)}function Nm(){Oe=zl(this.value),t(53,Oe)}function Im(){Pe=this.value,t(55,Pe)}function Rm(){ue=this.checked,t(56,ue)}function Mm(){be=this.checked,t(57,be)}function Lm(){fn=this.value,t(86,fn)}const Om=_=>_.key==="Enter"&&us();function Dm(){$=Ci(this),t(87,$),t(121,tt)}function Pm(){he=this.value,t(88,he)}const qm=_=>_.key==="Enter"&&us();function zm(){hn=this.value,t(105,hn)}function Bm(){V=this.value,t(108,V)}const Fm=_=>_.key==="Enter"&&ve&&Ro(),jm=_=>Io(_);function Um(){It=this.value,t(71,It)}function Hm(){jt=this.value,t(72,jt)}function Wm(){an=this.value,t(73,an)}const Gm=_=>de("OpenFile",_.detail);function Km(){Ie=this.value,t(42,Ie)}const Vm=_=>{_.key==="Enter"&&Yi(),_.key==="Escape"&&t(41,Ge=!1)};function Zm(){ne=this.value,t(43,ne)}const Ym=_=>{_.key==="Enter"&&Yi(),_.key==="Escape"&&t(41,Ge=!1)},Xm=()=>t(41,Ge=!1),Jm=()=>t(41,Ge=!1),Qm=_=>_.key==="Escape"&&t(41,Ge=!1);function xm(){je=this.value,t(48,je)}const $m=_=>{_.key==="Enter"&&Ji(),_.key==="Escape"&&Hn()},eg=_=>_.key==="Escape"&&Hn();return n.$$.update=()=>{var _;n.$$.dirty[0]&384&&t(77,bl=Py((Ut==null?void 0:Ut.nodes)||[],Lt)),n.$$.dirty[0]&7&&t(119,l=J?J.title:Z?((_=m.find(G=>G.id===Z))==null?void 0:_.label)||"":k("nav.selectPrompt")),n.$$.dirty[0]&4&&t(118,i=J?os(J.type):""),n.$$.dirty[0]&56&&t(9,o=Ly(Je,vt,At)),n.$$.dirty[0]&576&&t(117,s=Zt?Pt(o):null),n.$$.dirty[7]&16384&&t(78,bn=gt.length===0?k("nav.trash"):[k("nav.trash"),...gt.map(G=>G.title)].join(" / "))},t(79,kl=((jo=wp())==null?void 0:jo.title)||k("trash.deletedNodes")),[m,Z,J,Je,vt,At,Zt,Ut,Lt,o,c,d,p,h,g,b,v,y,N,A,I,O,R,D,B,j,U,z,W,K,Y,F,L,M,q,ee,te,le,_e,oe,ze,Ge,Ie,ne,re,Ne,Fe,we,je,Ve,Ue,Se,He,Oe,Ke,Pe,ue,be,x,ye,me,Re,ft,it,Ze,dt,pe,qe,pt,mt,Mt,It,jt,an,cn,Rn,Ct,bl,bn,kl,Ot,tn,un,Ht,$t,kn,fn,$,he,st,Yt,Wt,vn,Bn,Xt,vl,wn,yn,Fn,wl,oi,jl,Ul,ri,jn,hn,En,Ee,V,ie,ve,De,nt,St,wt,Dt,Bo,s,i,l,X,tt,nn,ln,ci,qt,xs,Jd,Qd,$s,xd,$d,to,ep,no,lo,tp,$n,np,lp,ip,sp,op,io,so,On,mn,oo,ro,ao,Un,uo,fo,rp,Yi,up,fp,Xi,Hn,Ji,dp,gp,_p,bp,kp,ui,po,vp,xi,tl,Tl,yp,Hl,ho,es,ts,ns,Ep,di,pi,Tp,Sp,Cp,Ap,ls,mo,nl,hi,is,ss,Ip,_o,bo,Rp,Lp,os,Op,qp,Hp,Gp,Kp,Vp,mi,as,Yp,Io,Ro,gi,_i,Lo,cs,Xp,Oo,Do,Po,Jp,qo,us,zo,Qp,Wl,il,Cl,xp,fs,ds,Fo,$p,t1,n1,l1,gt,i1,s1,o1,r1,a1,c1,u1,f1,d1,p1,h1,m1,g1,_1,b1,k1,v1,w1,y1,E1,T1,S1,C1,A1,N1,I1,R1,M1,L1,O1,D1,P1,q1,z1,B1,F1,j1,U1,H1,W1,G1,K1,V1,Z1,Y1,X1,J1,Q1,x1,$1,eh,th,nh,lh,ih,sh,oh,rh,ah,ch,uh,fh,dh,ph,hh,mh,gh,_h,bh,kh,vh,wh,yh,Eh,Th,Sh,Ch,Ah,Nh,Ih,Rh,Mh,Lh,Oh,Dh,Ph,qh,zh,Bh,Fh,jh,Uh,Hh,Wh,Gh,Kh,Vh,Zh,Yh,Xh,Jh,Qh,xh,$h,em,tm,nm,lm,im,sm,om,rm,am,cm,um,fm,dm,pm,hm,mm,gm,_m,bm,km,vm,wm,ym,Em,Tm,Sm,Cm,Am,Nm,Im,Rm,Mm,Lm,Om,Dm,Pm,qm,zm,Bm,Fm,jm,Um,Hm,Wm,Gm,Km,Vm,Zm,Ym,Xm,Jm,Qm,xm,$m,eg]}class Wy extends ut{constructor(e){super(),ct(this,e,Hy,My,at,{},null,[-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1])}}window.addEventListener("error",n=>{const e=n.error?String(n.error):n.message,t=n.error&&n.error.stack?n.error.stack:"";console.error("[Frontend Error]",e,t);try{window.go&&window.go.main&&window.go.main.App&&typeof window.go.main.App.FrontendLog=="function"&&window.go.main.App.FrontendLog("error",e,t)}catch{}});window.addEventListener("unhandledrejection",n=>{const e=n.reason,t=e instanceof Error?String(e):JSON.stringify(e),l=e instanceof Error&&e.stack?e.stack:"";console.error("[Unhandled Promise Rejection]",t,l);try{window.go&&window.go.main&&window.go.main.App&&typeof window.go.main.App.FrontendLog=="function"&&window.go.main.App.FrontendLog("error","Unhandled rejection: "+t,l)}catch{}});try{new Wy({target:document.getElementById("app")})}catch(n){console.error("[Fatal] App mount failed:",n);const e=document.getElementById("app");e&&(e.innerHTML='

    Frontend Runtime Error

    '+String(n)+"

    "+(n.stack?"
    "+n.stack+"
    ":"")+"
    ")} diff --git a/cmd/verstak-gui/frontend-dist/assets/main-t8j1WzN6.css b/cmd/verstak-gui/frontend-dist/assets/main-t8j1WzN6.css deleted file mode 100644 index 14d51ce..0000000 --- a/cmd/verstak-gui/frontend-dist/assets/main-t8j1WzN6.css +++ /dev/null @@ -1 +0,0 @@ -.file-row.svelte-1skuef2.svelte-1skuef2{display:flex;align-items:center;gap:10px;padding:8px 12px;border-radius:6px;cursor:default;transition:background .12s;min-height:52px;-webkit-user-select:none;user-select:none;position:relative}.file-row.svelte-1skuef2.svelte-1skuef2:hover{background:#1e1e30}.file-row--selected.svelte-1skuef2.svelte-1skuef2{background:#1e1e3a;outline:1px solid #3a3a6c}.file-row--selected.svelte-1skuef2.svelte-1skuef2:hover{background:#252545}.file-row.svelte-1skuef2.svelte-1skuef2:focus-visible{outline:2px solid #5588ff;outline-offset:-2px}.file-row-icon.svelte-1skuef2.svelte-1skuef2{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:32px;height:32px;color:#888}.file-row-body.svelte-1skuef2.svelte-1skuef2{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.file-row-name.svelte-1skuef2.svelte-1skuef2{font-size:13px;color:#ddd;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.3}.file-row-meta.svelte-1skuef2.svelte-1skuef2{display:flex;align-items:center;gap:4px;font-size:11px;color:#666}.meta-sep.svelte-1skuef2.svelte-1skuef2{color:#444}.file-row-actions.svelte-1skuef2.svelte-1skuef2{display:flex;gap:2px;align-items:center;opacity:0;transition:opacity .15s ease;flex-shrink:0}.file-row.svelte-1skuef2:hover .file-row-actions.svelte-1skuef2{opacity:1}.action-btn.svelte-1skuef2.svelte-1skuef2{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;border-radius:4px;background:transparent;color:#666;cursor:pointer;transition:background .12s,color .12s}.action-btn.svelte-1skuef2.svelte-1skuef2:hover{background:#2a2a3c;color:#ccc}.action-btn-danger.svelte-1skuef2.svelte-1skuef2:hover{background:#3a2222;color:#ff6b6b}.action-btn.svelte-1skuef2.svelte-1skuef2:focus-visible{outline:2px solid #5588ff;outline-offset:1px}.menu-backdrop.svelte-1skuef2.svelte-1skuef2{position:fixed;top:0;right:0;bottom:0;left:0;z-index:99}.menu.svelte-1skuef2.svelte-1skuef2{position:fixed;background:#1a1a28;border:1px solid #2a2a3c;border-radius:8px;padding:4px;z-index:100;min-width:220px;box-shadow:0 4px 16px #00000080}.menu-item.svelte-1skuef2.svelte-1skuef2{display:flex;align-items:center;gap:8px;width:100%;padding:7px 10px;border:none;background:transparent;color:#ccc;font-size:12px;text-align:left;cursor:pointer;border-radius:4px;font-family:inherit}.menu-item.svelte-1skuef2.svelte-1skuef2:hover{background:#2a2a3c;color:#fff}.menu-item-danger.svelte-1skuef2.svelte-1skuef2{color:#ff6b6b}.menu-item-danger.svelte-1skuef2.svelte-1skuef2:hover{background:#3a2222}.menu-item.svelte-1skuef2.svelte-1skuef2:focus-visible{outline:2px solid #5588ff;outline-offset:1px}.menu-sep.svelte-1skuef2.svelte-1skuef2{height:1px;background:#2a2a3c;margin:4px 8px}.breadcrumbs.svelte-csi2lb{display:flex;align-items:center;gap:4px;padding:8px 0;font-size:13px;color:#999}.sep.svelte-csi2lb{color:#444}.crumb.svelte-csi2lb{font-size:13px}.crumb--current.svelte-csi2lb{color:#ccc}.crumb--link.svelte-csi2lb{background:none;border:none;padding:2px 4px;color:#888;cursor:pointer;border-radius:3px;font-family:inherit;font-size:13px;transition:color .12s,background .12s}.crumb--link.svelte-csi2lb:hover{color:#ccc;background:#1e1e30}.crumb--link.svelte-csi2lb:focus-visible{outline:2px solid #5588ff;outline-offset:1px}.overlay.svelte-1cw3u0m{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000a6;display:flex;align-items:center;justify-content:center;z-index:1000}.modal.svelte-1cw3u0m{background:#14141f;border:1px solid #2a2a3c;border-radius:10px;width:90vw;max-width:900px;height:85vh;max-height:700px;display:flex;flex-direction:column;overflow:hidden}.preview-header.svelte-1cw3u0m{display:flex;align-items:center;gap:10px;padding:12px 16px;border-bottom:1px solid #2a2a3c;flex-shrink:0}.preview-title.svelte-1cw3u0m{display:flex;align-items:center;gap:8px;color:#ddd;font-size:14px;min-width:0}.preview-name.svelte-1cw3u0m{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.preview-meta.svelte-1cw3u0m{font-size:11px;color:#666;margin-left:auto;white-space:nowrap}.preview-actions.svelte-1cw3u0m{display:flex;gap:4px;flex-shrink:0;margin-left:8px}.action-btn.svelte-1cw3u0m{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border:none;border-radius:4px;background:transparent;color:#666;cursor:pointer;transition:background .12s,color .12s}.action-btn.svelte-1cw3u0m:hover{background:#2a2a3c;color:#ccc}.action-btn.svelte-1cw3u0m:focus-visible{outline:2px solid #5588ff;outline-offset:1px}.action-btn-close.svelte-1cw3u0m{color:#ff6b6b}.action-btn-close.svelte-1cw3u0m:hover{background:#3a2222;color:#f44}.preview-body.svelte-1cw3u0m{flex:1;overflow:auto;min-height:0}.preview-status.svelte-1cw3u0m{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:48px 24px;color:#888;font-size:14px}.preview-image-container.svelte-1cw3u0m{display:flex;align-items:center;justify-content:center;padding:16px;min-height:200px;background:#0e0e18}.preview-image.svelte-1cw3u0m{max-width:100%;max-height:calc(85vh - 100px);object-fit:contain;border-radius:4px}.preview-text.svelte-1cw3u0m{margin:0;padding:16px;font-family:SF Mono,Fira Code,Cascadia Code,Consolas,monospace;font-size:12px;line-height:1.5;color:#ccc;white-space:pre-wrap;word-wrap:break-word;overflow:auto}.preview-pdf-container.svelte-1cw3u0m{width:100%;height:100%}.preview-pdf.svelte-1cw3u0m{width:100%;height:100%;border:none}.btn-sm.svelte-1cw3u0m{padding:6px 14px;border:1px solid #2a2a3c;background:#1a1a28;color:#ccc;border-radius:6px;cursor:pointer;font-size:12px;font-family:inherit;transition:background .12s}.btn-sm.svelte-1cw3u0m:hover{background:#223}.overlay.svelte-1fv6yyk{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:200}.modal.svelte-1fv6yyk{background:#1a1a28;border:1px solid #2a2a3c;border-radius:12px;padding:24px;width:360px;max-width:90vw}h3.svelte-1fv6yyk{font-size:18px;margin-bottom:12px;color:#e4e4ef}.message.svelte-1fv6yyk{font-size:14px;color:#aaa;margin-bottom:20px;line-height:1.4}.actions.svelte-1fv6yyk{display:flex;gap:8px;justify-content:flex-end}.btn.svelte-1fv6yyk{padding:8px 16px;border:1px solid #2a2a3c;background:#1a1a28;color:#ccc;border-radius:6px;cursor:pointer;font-size:13px;font-family:inherit}.btn.svelte-1fv6yyk:hover{background:#223}.btn-primary.svelte-1fv6yyk{background:#6366f1;border-color:#6366f1;color:#fff}.btn-primary.svelte-1fv6yyk:hover{background:#4f46e5}.btn-danger.svelte-1fv6yyk{background:#dc2626;border-color:#dc2626;color:#fff}.btn-danger.svelte-1fv6yyk:hover{background:#b91c1c}.btn.svelte-1fv6yyk:focus-visible{outline:2px solid #5588ff;outline-offset:1px}.tree-item.svelte-zj71cl.svelte-zj71cl{display:flex;align-items:center;height:32px;padding-right:8px;cursor:default;font-size:13px;color:#ccc;-webkit-user-select:none;user-select:none}.tree-item.svelte-zj71cl.svelte-zj71cl:hover{background:#223}.tree-item.selected.svelte-zj71cl.svelte-zj71cl{background:#2a2a4a;color:#fff;font-weight:500}.tree-item.drop-valid.svelte-zj71cl.svelte-zj71cl{background:#1a3a1a;outline:1px solid #4ade80;outline-offset:-1px}.tree-item.drop-invalid.svelte-zj71cl.svelte-zj71cl{background:#3a1a1a;outline:1px solid #ff6b6b;outline-offset:-1px}.tree-toggle.svelte-zj71cl.svelte-zj71cl{background:none;border:none;color:#666;cursor:pointer;padding:0;width:20px;height:32px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;font-family:inherit;line-height:1;font-size:12px}.tree-toggle.svelte-zj71cl.svelte-zj71cl:hover{color:#a5b4fc}.tree-toggle-placeholder.svelte-zj71cl.svelte-zj71cl{display:inline-block;width:20px;flex-shrink:0}.tree-icon.svelte-zj71cl.svelte-zj71cl{display:inline-flex;align-items:center;justify-content:center;width:20px;height:32px;flex-shrink:0;color:#888;margin-right:4px;cursor:pointer}.tree-icon.svelte-zj71cl.svelte-zj71cl:hover,.tree-item.selected.svelte-zj71cl .tree-icon.svelte-zj71cl{color:#a5b4fc}.tree-label.svelte-zj71cl.svelte-zj71cl{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;line-height:32px}.first-run-screen.svelte-a9f1pd.svelte-a9f1pd{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:2rem;background:var(--bg, #13131f)}.first-run-card.svelte-a9f1pd.svelte-a9f1pd{max-width:520px;width:100%;padding:2.5rem;background:var(--surface, #1e1e2e);border-radius:12px;border:1px solid var(--border, #2a2a3e);text-align:center}.first-run-logo.svelte-a9f1pd.svelte-a9f1pd{display:block;width:64px;height:64px;margin:0 auto .5rem}.first-run-card.svelte-a9f1pd h1.svelte-a9f1pd{margin:0 0 .75rem;font-size:1.5rem;color:var(--text, #e0e0e0)}.first-run-desc.svelte-a9f1pd.svelte-a9f1pd{color:var(--text-dim, #888);margin-bottom:1.5rem;font-size:.9rem;line-height:1.5}.input-row.svelte-a9f1pd.svelte-a9f1pd{display:flex;gap:.5rem}.input-row.svelte-a9f1pd input.svelte-a9f1pd{flex:1}.path-info.svelte-a9f1pd.svelte-a9f1pd{text-align:left;font-size:.85rem;padding:.5rem .75rem;margin-top:.5rem;background:var(--surface-alt, #252538);border-radius:6px;color:var(--text-dim, #888)}.error-msg.svelte-a9f1pd.svelte-a9f1pd{text-align:left;font-size:.85rem;padding:.5rem .75rem;margin-top:.5rem;background:#ff6b6b1a;border:1px solid rgba(255,107,107,.3);border-radius:6px;color:#ff6b6b}.first-run-actions.svelte-a9f1pd.svelte-a9f1pd{display:flex;gap:.75rem;justify-content:center;margin-top:1.5rem}.btn-lg.svelte-a9f1pd.svelte-a9f1pd{padding:.65rem 1.5rem;font-size:1rem}.form-group.svelte-a9f1pd.svelte-a9f1pd{margin-bottom:1rem;text-align:left}.form-label.svelte-a9f1pd.svelte-a9f1pd{display:block;font-size:.85rem;color:var(--text-dim, #888);margin-bottom:.4rem}.recovery-screen.svelte-s3o8c3.svelte-s3o8c3{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:2rem;background:var(--bg, #13131f)}.recovery-card.svelte-s3o8c3.svelte-s3o8c3{max-width:480px;width:100%;padding:2.5rem;background:var(--surface, #1e1e2e);border-radius:12px;border:1px solid var(--border, #2a2a3e);text-align:center}.recovery-icon.svelte-s3o8c3.svelte-s3o8c3{font-size:2.5rem;margin-bottom:.5rem;color:#f59e0b}.recovery-card.svelte-s3o8c3 h1.svelte-s3o8c3{margin:0 0 .75rem;font-size:1.4rem;color:var(--text, #e0e0e0)}.recovery-desc.svelte-s3o8c3.svelte-s3o8c3{color:var(--text-dim, #888);margin-bottom:.5rem;font-size:.9rem}.recovery-path.svelte-s3o8c3.svelte-s3o8c3{display:block;padding:.5rem .75rem;background:var(--surface-alt, #252538);border-radius:6px;font-size:.85rem;color:var(--text-dim, #aaa);word-break:break-all;margin-bottom:1.5rem}.error-msg.svelte-s3o8c3.svelte-s3o8c3{padding:.5rem .75rem;margin-bottom:1rem;background:#ff6b6b1a;border:1px solid rgba(255,107,107,.3);border-radius:6px;color:#ff6b6b;font-size:.85rem}.recovery-actions.svelte-s3o8c3.svelte-s3o8c3{display:flex;flex-direction:column;gap:.6rem}.btn-lg.svelte-s3o8c3.svelte-s3o8c3{padding:.65rem 1.25rem;font-size:.95rem;width:100%}.modal-desc.svelte-s3o8c3.svelte-s3o8c3{color:var(--text-dim, #888);font-size:.9rem;line-height:1.5;margin-bottom:1rem}.modal-overlay.svelte-s3o8c3.svelte-s3o8c3{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000}.modal.svelte-s3o8c3.svelte-s3o8c3{background:var(--surface, #1e1e2e);border:1px solid var(--border, #2a2a3e);border-radius:10px;padding:1.5rem;max-width:420px;width:90%}.modal.svelte-s3o8c3 h3.svelte-s3o8c3{margin:0 0 .75rem}.modal-actions.svelte-s3o8c3.svelte-s3o8c3{display:flex;gap:.5rem;justify-content:flex-end}.settings-sidebar.svelte-8ag2z0{width:200px;min-width:200px;border-right:1px solid var(--border, #2a2a3e);padding:.75rem 0;overflow-y:auto;background:var(--surface, #1e1e2e)}.settings-nav-item.svelte-8ag2z0{display:flex;align-items:center;gap:.5rem;width:100%;padding:.55rem 1rem;border:none;background:transparent;color:var(--text-dim, #888);font-size:.9rem;cursor:pointer;text-align:left;transition:background .15s,color .15s;font-family:inherit}.settings-nav-item.svelte-8ag2z0:hover:not(.disabled){background:var(--surface-alt, #252538);color:var(--text, #e0e0e0)}.settings-nav-item.active.svelte-8ag2z0{background:var(--accent-bg, rgba(99, 102, 241, .15));color:var(--accent, #818cf8);font-weight:600;position:relative}.settings-nav-item.active.svelte-8ag2z0:before{content:"";position:absolute;left:0;top:4px;bottom:4px;width:3px;background:var(--accent, #818cf8);border-radius:0 2px 2px 0}.settings-nav-item.disabled.svelte-8ag2z0{opacity:.4;cursor:default}.settings-nav-icon.svelte-8ag2z0{width:1.4rem;height:1rem;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.settings-nav-label.svelte-8ag2z0{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.settings-section.svelte-1e2uhdh.svelte-1e2uhdh{padding:1.5rem;max-width:560px}.settings-section.svelte-1e2uhdh h2.svelte-1e2uhdh{margin:0 0 .25rem;font-size:1.2rem;color:var(--text, #e0e0e0)}.section-desc.svelte-1e2uhdh.svelte-1e2uhdh{color:var(--text-dim, #888);font-size:.85rem;margin-bottom:1.25rem;line-height:1.4}.settings-card.svelte-1e2uhdh.svelte-1e2uhdh{background:var(--surface-alt, #1e1e30);border:1px solid var(--border, #2a2a3e);border-radius:8px;padding:1rem 1.25rem;margin-bottom:1rem}.card-title.svelte-1e2uhdh.svelte-1e2uhdh{font-size:.9rem;font-weight:600;color:var(--text, #e0e0e0);margin:0 0 .75rem}.form-group.svelte-1e2uhdh.svelte-1e2uhdh{margin-bottom:0}.label-text.svelte-1e2uhdh.svelte-1e2uhdh{display:block;font-size:.85rem;color:var(--text-dim, #888);margin-bottom:.3rem}.settings-actions.svelte-1e2uhdh.svelte-1e2uhdh{display:flex;align-items:center;gap:.75rem;margin-top:1rem}.save-notice.svelte-1e2uhdh.svelte-1e2uhdh{padding:.4rem .75rem;background:#34d3991a;border:1px solid rgba(52,211,153,.3);border-radius:6px;color:#34d399;font-size:.85rem}.settings-section.svelte-1zbky3.svelte-1zbky3{padding:1.5rem;max-width:600px}.settings-section.svelte-1zbky3 h2.svelte-1zbky3{margin:0 0 .25rem;font-size:1.2rem;color:var(--text, #e0e0e0)}.section-desc.svelte-1zbky3.svelte-1zbky3{color:var(--text-dim, #888);font-size:.85rem;margin-bottom:1.25rem;line-height:1.4}.settings-card.svelte-1zbky3.svelte-1zbky3{background:var(--surface-alt, #1e1e30);border:1px solid var(--border, #2a2a3e);border-radius:8px;padding:1rem 1.25rem;margin-bottom:1rem}.notice.svelte-1zbky3.svelte-1zbky3{padding:.5rem .75rem;margin-bottom:.75rem;background:#ff6b6b1a;border:1px solid rgba(255,107,107,.3);border-radius:6px;color:#ff6b6b;font-size:.85rem}.info-row.svelte-1zbky3.svelte-1zbky3{display:flex;padding:.4rem 0;border-bottom:1px solid var(--border, #2a2a3e);font-size:.9rem}.info-row.svelte-1zbky3.svelte-1zbky3:last-child{border-bottom:none}.info-label.svelte-1zbky3.svelte-1zbky3{width:120px;min-width:120px;color:var(--text-dim, #888)}.info-value.svelte-1zbky3.svelte-1zbky3{color:var(--text, #e0e0e0);word-break:break-all}.info-value.mono.svelte-1zbky3.svelte-1zbky3{font-family:monospace;font-size:.85rem}.info-value.small.svelte-1zbky3.svelte-1zbky3{font-size:.8rem}.workspace-actions.svelte-1zbky3.svelte-1zbky3{display:flex;gap:.5rem;flex-wrap:wrap;margin-top:.5rem}.btn.svelte-1zbky3.svelte-1zbky3{padding:.45rem .8rem;border:1px solid var(--border, #2a2a3e);border-radius:6px;background:var(--surface-light, #232338);color:var(--text, #e0e0e0);font-size:.85rem;cursor:pointer}.btn.svelte-1zbky3.svelte-1zbky3:hover{background:var(--accent, #4a7c59);border-color:var(--accent, #4a7c59)}.no-data.svelte-1zbky3.svelte-1zbky3{color:var(--text-dim, #888);font-style:italic;margin:0}.settings-section.svelte-ksamnw.svelte-ksamnw{padding:1.5rem;max-width:560px}.settings-section.svelte-ksamnw h2.svelte-ksamnw{margin:0 0 .25rem;font-size:1.2rem;color:var(--text, #e0e0e0)}.section-desc.svelte-ksamnw.svelte-ksamnw{color:var(--text-dim, #888);font-size:.85rem;margin-bottom:1.25rem;line-height:1.4}.loading.svelte-ksamnw.svelte-ksamnw,.no-data.svelte-ksamnw.svelte-ksamnw{color:var(--text-dim, #888);font-style:italic}.template-list.svelte-ksamnw.svelte-ksamnw{display:flex;flex-direction:column;gap:.5rem}.template-item.svelte-ksamnw.svelte-ksamnw{display:flex;align-items:center;justify-content:space-between;padding:.6rem .75rem;background:var(--surface-alt, #252538);border-radius:6px;border:1px solid var(--border, #2a2a3e)}.template-info.svelte-ksamnw.svelte-ksamnw{display:flex;align-items:center;gap:.5rem}.template-name.svelte-ksamnw.svelte-ksamnw{color:var(--text, #e0e0e0);font-size:.9rem}.template-type.svelte-ksamnw.svelte-ksamnw{color:var(--text-dim, #888);font-size:.8rem}.toggle-label.svelte-ksamnw.svelte-ksamnw{display:flex;align-items:center;gap:.4rem;cursor:pointer}.toggle-text.svelte-ksamnw.svelte-ksamnw{font-size:.8rem;color:var(--text-dim, #888)}input[type=checkbox].svelte-ksamnw.svelte-ksamnw{accent-color:var(--accent, #818cf8)}.settings-plugins.svelte-i9gngw.svelte-i9gngw{padding:1.5rem}h3.svelte-i9gngw.svelte-i9gngw{margin:0 0 .25rem;font-size:1.1rem;color:var(--text, #e0e0e0)}.hint.svelte-i9gngw.svelte-i9gngw{margin:0 0 1rem;font-size:.85rem;color:var(--text-dim, #888)}.loading.svelte-i9gngw.svelte-i9gngw{color:var(--text-dim, #888)}.error.svelte-i9gngw.svelte-i9gngw{color:#f87171;background:#f871711a;padding:.5rem .75rem;border-radius:6px}.empty-state.svelte-i9gngw.svelte-i9gngw{text-align:center;padding:3rem 1rem;color:var(--text-dim, #888)}.empty-state.svelte-i9gngw code.svelte-i9gngw{background:var(--surface-alt, #252538);padding:.15rem .4rem;border-radius:3px;font-size:.85rem}.plugin-list.svelte-i9gngw.svelte-i9gngw{display:flex;flex-direction:column;gap:.5rem}.plugin-card.svelte-i9gngw.svelte-i9gngw{display:flex;align-items:center;justify-content:space-between;background:var(--surface, #1e1e2e);border:1px solid var(--border, #2a2a3e);border-radius:8px;padding:.75rem 1rem;gap:1rem}.plugin-info.svelte-i9gngw.svelte-i9gngw{flex:1;min-width:0}.plugin-name.svelte-i9gngw.svelte-i9gngw{font-weight:600;color:var(--text, #e0e0e0);display:flex;align-items:center;gap:.5rem}.plugin-version.svelte-i9gngw.svelte-i9gngw{font-size:.75rem;color:var(--text-dim, #888);font-weight:400}.plugin-desc.svelte-i9gngw.svelte-i9gngw{font-size:.85rem;color:var(--text-dim, #aaa);margin-top:.15rem}.plugin-meta.svelte-i9gngw.svelte-i9gngw{display:flex;flex-wrap:wrap;gap:.25rem .75rem;margin-top:.25rem;font-size:.75rem;color:var(--text-dim, #888)}.plugin-toggle.svelte-i9gngw.svelte-i9gngw{flex-shrink:0}.toggle-btn.svelte-i9gngw.svelte-i9gngw{position:relative;width:44px;height:24px;background:var(--surface-alt, #333);border-radius:12px;border:1px solid var(--border, #444);cursor:pointer;padding:0;transition:background .2s}.toggle-btn.active.svelte-i9gngw.svelte-i9gngw{background:#6366f1;border-color:#6366f1}.toggle-knob.svelte-i9gngw.svelte-i9gngw{position:absolute;top:2px;left:2px;width:18px;height:18px;background:#fff;border-radius:50%;transition:left .2s;box-shadow:0 1px 3px #0000004d}.toggle-btn.active.svelte-i9gngw .toggle-knob.svelte-i9gngw{left:22px}.toggle-group.svelte-i9gngw.svelte-i9gngw{display:flex;align-items:center;gap:6px}.install-btn.svelte-i9gngw.svelte-i9gngw{padding:6px 14px;background:#6366f1;color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:13px;white-space:nowrap}.install-btn.svelte-i9gngw.svelte-i9gngw:hover{filter:brightness(1.15)}.uninstall-btn.svelte-i9gngw.svelte-i9gngw{width:28px;height:28px;background:var(--surface, #1a1a2e);color:#ef4444;border:1px solid rgba(239,68,68,.3);border-radius:6px;cursor:pointer;font-size:14px;display:flex;align-items:center;justify-content:center;opacity:.6;transition:all .15s}.uninstall-btn.svelte-i9gngw.svelte-i9gngw:hover{opacity:1;background:#ef44441a}.settings-section.svelte-1fx1e1e.svelte-1fx1e1e{padding:1.5rem;max-width:600px}.settings-section.svelte-1fx1e1e h2.svelte-1fx1e1e{margin:0 0 .25rem;font-size:1.2rem;color:var(--text, #e0e0e0)}.section-desc.svelte-1fx1e1e.svelte-1fx1e1e{color:var(--text-dim, #888);font-size:.85rem;margin-bottom:1.25rem;line-height:1.4}.settings-card.svelte-1fx1e1e.svelte-1fx1e1e{background:var(--surface-alt, #1e1e30);border:1px solid var(--border, #2a2a3e);border-radius:8px;padding:1rem 1.25rem;margin-bottom:1rem}.info-row.svelte-1fx1e1e.svelte-1fx1e1e{display:flex;padding:.4rem 0;border-bottom:1px solid var(--border, #2a2a3e);font-size:.9rem}.info-row.svelte-1fx1e1e.svelte-1fx1e1e:last-child{border-bottom:none}.info-label.svelte-1fx1e1e.svelte-1fx1e1e{width:180px;min-width:180px;color:var(--text-dim, #888)}.info-value.svelte-1fx1e1e.svelte-1fx1e1e{color:var(--text, #e0e0e0);word-break:break-all}.info-value.mono.svelte-1fx1e1e.svelte-1fx1e1e{font-family:monospace;font-size:.85rem}.info-value.error.svelte-1fx1e1e.svelte-1fx1e1e{color:#ff6b6b}.status-ok.svelte-1fx1e1e.svelte-1fx1e1e{color:#34d399;font-weight:600}.status-err.svelte-1fx1e1e.svelte-1fx1e1e{color:#ff6b6b}.sync-actions.svelte-1fx1e1e.svelte-1fx1e1e{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:1rem}.sync-interval.svelte-1fx1e1e.svelte-1fx1e1e{margin-bottom:0}.interval-row.svelte-1fx1e1e.svelte-1fx1e1e{display:flex;gap:.5rem;align-items:center}.interval-row.svelte-1fx1e1e input.svelte-1fx1e1e{width:100px}.sync-setup.svelte-1fx1e1e .form-group.svelte-1fx1e1e{margin-bottom:1rem}.sync-setup.svelte-1fx1e1e .form-group.svelte-1fx1e1e:last-of-type{margin-bottom:0}.sync-setup-actions.svelte-1fx1e1e.svelte-1fx1e1e{display:flex;gap:.5rem;margin-top:1rem}.connection-result.svelte-1fx1e1e.svelte-1fx1e1e{margin-top:.75rem;padding:.4rem .75rem;border-radius:6px;font-size:.85rem}.connection-result.ok.svelte-1fx1e1e.svelte-1fx1e1e{background:#34d3991a;border:1px solid rgba(52,211,153,.3);color:#34d399}.connection-result.fail.svelte-1fx1e1e.svelte-1fx1e1e{background:#ff6b6b1a;border:1px solid rgba(255,107,107,.3);color:#ff6b6b}.error-msg.svelte-1fx1e1e.svelte-1fx1e1e{padding:.5rem .75rem;margin-bottom:.75rem;background:#ff6b6b1a;border:1px solid rgba(255,107,107,.3);border-radius:6px;color:#ff6b6b;font-size:.85rem}.result-msg.svelte-1fx1e1e.svelte-1fx1e1e{padding:.5rem .75rem;margin-bottom:.75rem;background:#34d3991a;border:1px solid rgba(52,211,153,.3);border-radius:6px;color:#34d399;font-size:.85rem}.result-msg.warning.svelte-1fx1e1e.svelte-1fx1e1e{background:#f59e0b1a;border-color:#f59e0b4d;color:#f59e0b}.modal-overlay.svelte-1fx1e1e.svelte-1fx1e1e{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;border:none;padding:0;cursor:pointer;width:100%;color:inherit;font:inherit}.modal.svelte-1fx1e1e.svelte-1fx1e1e{background:var(--surface, #1e1e2e);border:1px solid var(--border, #2a2a3e);border-radius:10px;padding:1.5rem;max-width:420px;width:90%;cursor:default}.modal.svelte-1fx1e1e h3.svelte-1fx1e1e{margin:0 0 .75rem}.modal-desc.svelte-1fx1e1e.svelte-1fx1e1e{color:var(--text-dim, #888);font-size:.9rem;line-height:1.5;margin-bottom:1rem}.modal-actions.svelte-1fx1e1e.svelte-1fx1e1e{display:flex;gap:.5rem;justify-content:flex-end}.settings-section.svelte-19bo7bn.svelte-19bo7bn{padding:1.5rem;max-width:500px}.settings-section.svelte-19bo7bn h2.svelte-19bo7bn{margin:0 0 .5rem;font-size:1.2rem;color:var(--text, #e0e0e0)}.section-desc.svelte-19bo7bn.svelte-19bo7bn{color:var(--text-dim, #888);font-size:.85rem}.settings-section.svelte-13i6m7m.svelte-13i6m7m{padding:1.5rem;max-width:600px}.settings-section.svelte-13i6m7m h2.svelte-13i6m7m{margin:0 0 .25rem;font-size:1.2rem;color:var(--text, #e0e0e0)}.section-desc.svelte-13i6m7m.svelte-13i6m7m{color:var(--text-dim, #888);font-size:.85rem;margin-bottom:1.25rem;line-height:1.4}.settings-card.svelte-13i6m7m.svelte-13i6m7m{background:var(--surface-alt, #1e1e30);border:1px solid var(--border, #2a2a3e);border-radius:8px;padding:1rem 1.25rem;margin-bottom:1rem}.form-group.svelte-13i6m7m.svelte-13i6m7m{margin-bottom:1rem}.form-group.svelte-13i6m7m.svelte-13i6m7m:last-child{margin-bottom:0}.label-text.svelte-13i6m7m.svelte-13i6m7m{display:block;color:var(--text-dim, #888);font-size:.85rem;margin-bottom:.35rem}input[type=number].svelte-13i6m7m.svelte-13i6m7m{width:120px;padding:.4rem .6rem;background:var(--bg, #13131f);border:1px solid var(--border, #2a2a3e);border-radius:6px;color:var(--text, #e0e0e0);font-size:.9rem}input[type=number].svelte-13i6m7m.svelte-13i6m7m:disabled{opacity:.5}.field-hint.svelte-13i6m7m.svelte-13i6m7m{color:var(--text-dim, #666);font-size:.75rem;margin-top:.35rem}.toggle-label.svelte-13i6m7m.svelte-13i6m7m{display:flex;align-items:center;gap:.5rem;cursor:pointer}.toggle-text.svelte-13i6m7m.svelte-13i6m7m{color:var(--text, #e0e0e0);font-size:.9rem}.bridge-status.svelte-13i6m7m.svelte-13i6m7m{margin-top:.75rem;padding-top:.75rem;border-top:1px solid var(--border, #2a2a3e)}.info-row.svelte-13i6m7m.svelte-13i6m7m{display:flex;padding:.3rem 0;font-size:.85rem}.info-label.svelte-13i6m7m.svelte-13i6m7m{width:140px;min-width:140px;color:var(--text-dim, #888)}.info-value.svelte-13i6m7m.svelte-13i6m7m{color:var(--text, #e0e0e0)}.info-value.mono.svelte-13i6m7m.svelte-13i6m7m{font-family:monospace;font-size:.85rem}.status-ok.svelte-13i6m7m.svelte-13i6m7m{color:#34d399;font-weight:600}.status-off.svelte-13i6m7m.svelte-13i6m7m{color:#888}.actions.svelte-13i6m7m.svelte-13i6m7m{display:flex;gap:.5rem;flex-wrap:wrap}.status-msg.svelte-13i6m7m.svelte-13i6m7m{padding:.5rem .75rem;margin-bottom:.75rem;border-radius:6px;font-size:.85rem}.status-msg.ok.svelte-13i6m7m.svelte-13i6m7m{background:#34d3991a;border:1px solid rgba(52,211,153,.3);color:#34d399}.status-msg.error.svelte-13i6m7m.svelte-13i6m7m{background:#ff6b6b1a;border:1px solid rgba(255,107,107,.3);color:#ff6b6b}.settings-overlay.svelte-zf2zsc.svelte-zf2zsc{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:900;border:none;padding:0;cursor:pointer;width:100%;color:inherit;font:inherit}.settings-window.svelte-zf2zsc.svelte-zf2zsc{display:flex;flex-direction:column;width:800px;max-width:90vw;height:600px;max-height:85vh;background:var(--surface, #1e1e2e);border:1px solid var(--border, #2a2a3e);border-radius:12px;overflow:hidden;box-shadow:0 8px 32px #0006}.settings-header.svelte-zf2zsc.svelte-zf2zsc{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;border-bottom:1px solid var(--border, #2a2a3e);flex-shrink:0}.settings-header.svelte-zf2zsc h2.svelte-zf2zsc{margin:0;font-size:1.1rem;color:var(--text, #e0e0e0)}.close-btn.svelte-zf2zsc.svelte-zf2zsc{background:transparent;border:none;color:var(--text-dim, #888);cursor:pointer;padding:.25rem;border-radius:4px;display:flex;align-items:center}.close-btn.svelte-zf2zsc.svelte-zf2zsc:hover{color:var(--text, #e0e0e0);background:var(--surface-alt, #252538)}.settings-body.svelte-zf2zsc.svelte-zf2zsc{display:flex;flex:1;overflow:hidden}.settings-content.svelte-zf2zsc.svelte-zf2zsc{flex:1;overflow-y:auto;background:var(--bg, #13131f)}.sync-status-widget.svelte-1rxbx0{font-size:.8rem;padding:.4rem .5rem}.sync-status-row.svelte-1rxbx0{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap}.sync-dot.svelte-1rxbx0{width:8px;height:8px;border-radius:50%;flex-shrink:0}.dot-connected.svelte-1rxbx0{background:#34d399;box-shadow:0 0 4px #34d39966}.dot-warning.svelte-1rxbx0{background:#f59e0b}.dot-disabled.svelte-1rxbx0{background:#555}.dot-syncing.svelte-1rxbx0{background:#818cf8;animation:svelte-1rxbx0-pulse 1s infinite}@keyframes svelte-1rxbx0-pulse{0%,to{opacity:1}50%{opacity:.4}}.sync-label.svelte-1rxbx0{color:var(--text-dim, #888);white-space:nowrap}.sync-count.svelte-1rxbx0{color:var(--accent, #818cf8);font-weight:600}.sync-actions-row.svelte-1rxbx0{display:flex;gap:.3rem;margin-left:auto}.sync-message.svelte-1rxbx0{margin-top:.25rem;color:var(--text-dim, #888);line-height:1.25}.sync-message-warning.svelte-1rxbx0{color:#f59e0b}.btn-xs.svelte-1rxbx0{padding:.2rem .5rem;font-size:.75rem;border:1px solid var(--border, #2a2a3e);background:var(--surface-alt, #252538);color:var(--text-dim, #888);border-radius:4px;cursor:pointer;white-space:nowrap}.btn-xs.svelte-1rxbx0:hover{background:var(--border, #2a2a3e);color:var(--text, #e0e0e0)}.btn-xs.svelte-1rxbx0:disabled{opacity:.5;cursor:default}.btn-link.svelte-1rxbx0{border:none;background:transparent;color:var(--accent, #818cf8);text-decoration:underline}.btn-link.svelte-1rxbx0:hover{color:#a5b4fc;background:transparent}.browser-events.svelte-slao4o.svelte-slao4o{padding:8px 0}.browser-header.svelte-slao4o.svelte-slao4o{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;padding:0 4px}.browser-header.svelte-slao4o h3.svelte-slao4o{font-size:12px;text-transform:uppercase;letter-spacing:.5px;color:var(--text-dim, #8892b0);margin:0}.refresh-btn.svelte-slao4o.svelte-slao4o{background:var(--surface2, #1e2d50);border:none;border-radius:4px;padding:4px 8px;cursor:pointer;font-size:12px;transition:background .2s}.refresh-btn.svelte-slao4o.svelte-slao4o:hover{background:var(--surface, #16213e)}.empty-state.svelte-slao4o.svelte-slao4o{padding:24px;text-align:center}.empty-text.svelte-slao4o.svelte-slao4o,.loading.svelte-slao4o.svelte-slao4o{color:var(--text-dim, #8892b0);font-style:italic;font-size:12px}.event-list.svelte-slao4o.svelte-slao4o{display:flex;flex-direction:column;gap:4px}.event-item.svelte-slao4o.svelte-slao4o{display:flex;gap:8px;padding:6px 8px;background:var(--surface, #16213e);border-radius:6px;transition:background .15s}.event-item.pending.svelte-slao4o.svelte-slao4o{border-left:2px solid var(--accent, #0f9b8e)}.event-icon.svelte-slao4o.svelte-slao4o{font-size:16px;line-height:1.4;min-width:20px;text-align:center}.event-body.svelte-slao4o.svelte-slao4o{flex:1;min-width:0}.event-domain.svelte-slao4o.svelte-slao4o{font-size:11px;color:var(--accent, #0f9b8e);font-weight:500}.event-title.svelte-slao4o.svelte-slao4o{font-size:12px;color:var(--text, #e0e0e0);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.event-meta.svelte-slao4o.svelte-slao4o{display:flex;gap:8px;margin-top:2px}.duration.svelte-slao4o.svelte-slao4o,.time.svelte-slao4o.svelte-slao4o{font-size:10px;color:var(--text-dim, #8892b0)}.status-badge.svelte-slao4o.svelte-slao4o{font-size:9px;padding:1px 4px;border-radius:3px;text-transform:uppercase}.status-accepted.svelte-slao4o.svelte-slao4o{background:#2ecc7133;color:#2ecc71}.status-dismissed.svelte-slao4o.svelte-slao4o{background:#e74c3c33;color:#e74c3c}.status-attached.svelte-slao4o.svelte-slao4o{background:#3498db33;color:#3498db}.event-text.svelte-slao4o.svelte-slao4o{font-size:11px;color:var(--text-dim, #8892b0);font-style:italic;margin-top:2px;padding:2px 6px;background:#ffffff08;border-radius:3px}.event-actions.svelte-slao4o.svelte-slao4o{display:flex;gap:2px;align-items:flex-start}.event-actions.svelte-slao4o button.svelte-slao4o{background:none;border:1px solid var(--surface2, #1e2d50);border-radius:4px;width:24px;height:24px;cursor:pointer;font-size:11px;display:flex;align-items:center;justify-content:center;padding:0;transition:all .15s}.btn-accept.svelte-slao4o.svelte-slao4o:hover{background:#2ecc7133;border-color:#2ecc71}.btn-attach.svelte-slao4o.svelte-slao4o:hover{background:#3498db33;border-color:#3498db}.btn-dismiss.svelte-slao4o.svelte-slao4o:hover{background:#e74c3c33;border-color:#e74c3c}.today-screen.svelte-ii7vwz.svelte-ii7vwz{padding:24px;overflow-y:auto;flex:1}.today-header.svelte-ii7vwz.svelte-ii7vwz{display:flex;align-items:baseline;gap:12px;margin-bottom:16px;min-height:20px}.today-date.svelte-ii7vwz.svelte-ii7vwz{font-size:13px;color:#666}.today-tabs.svelte-ii7vwz.svelte-ii7vwz{display:flex;gap:0;border-bottom:1px solid #2a2a3c;margin-bottom:16px}.today-tab.svelte-ii7vwz.svelte-ii7vwz{padding:10px 16px;border:none;background:none;color:#888;font-size:13px;cursor:pointer;border-bottom:2px solid transparent;font-family:inherit;position:relative}.today-tab.svelte-ii7vwz.svelte-ii7vwz:hover{color:#a5b4fc}.today-tab.active.svelte-ii7vwz.svelte-ii7vwz{color:#e4e4ef;border-bottom-color:#818cf8;background:#6366f11f;font-weight:600}.tab-badge.svelte-ii7vwz.svelte-ii7vwz{background:#6366f1;color:#fff;font-size:10px;font-weight:700;border-radius:10px;padding:1px 6px;margin-left:6px;line-height:1.4;vertical-align:middle}.today-tab-content.svelte-ii7vwz.svelte-ii7vwz{flex:1}.today-empty.svelte-ii7vwz.svelte-ii7vwz{padding:48px 24px;text-align:center}.today-empty.svelte-ii7vwz p.svelte-ii7vwz{color:#666;font-size:14px;margin:0}.today-empty.svelte-ii7vwz .hint.svelte-ii7vwz{font-size:12px;color:#555;margin-top:8px}.tab-controls.svelte-ii7vwz.svelte-ii7vwz{margin-bottom:12px}.sort-controls.svelte-ii7vwz.svelte-ii7vwz{display:flex;align-items:center;gap:6px}.sort-btn.svelte-ii7vwz.svelte-ii7vwz{padding:4px 10px;border:1px solid #2a2a3c;background:#13131f;color:#888;border-radius:4px;font-size:12px;cursor:pointer;font-family:inherit}.sort-btn.svelte-ii7vwz.svelte-ii7vwz:hover{border-color:#3a3a5c;color:#ccc}.sort-btn.active.svelte-ii7vwz.svelte-ii7vwz{border-color:#6366f1;color:#a5b4fc;background:#6366f114}.sort-dir.svelte-ii7vwz.svelte-ii7vwz{font-size:12px;color:#8888a0;margin-left:4px}.feed-list.svelte-ii7vwz.svelte-ii7vwz{display:flex;flex-direction:column;gap:2px}.feed-item.svelte-ii7vwz.svelte-ii7vwz{display:flex;align-items:flex-start;gap:10px;padding:8px 12px;border-radius:8px;cursor:pointer}.feed-item.svelte-ii7vwz.svelte-ii7vwz:hover{background:#1a1a28}.feed-icon.svelte-ii7vwz.svelte-ii7vwz{width:20px;text-align:center;color:#6366f1;font-size:14px;flex-shrink:0;margin-top:2px}.feed-body.svelte-ii7vwz.svelte-ii7vwz{flex:1;min-width:0}.feed-title-line.svelte-ii7vwz.svelte-ii7vwz{display:flex;align-items:baseline;gap:4px;flex-wrap:wrap}.feed-type.svelte-ii7vwz.svelte-ii7vwz{font-size:13px;color:#8888a0}.feed-colon.svelte-ii7vwz.svelte-ii7vwz{color:#555}.feed-title.svelte-ii7vwz.svelte-ii7vwz{font-size:14px;color:#e4e4ef;font-weight:500}.feed-title.svelte-ii7vwz.svelte-ii7vwz:hover{text-decoration:underline}.feed-meta-line.svelte-ii7vwz.svelte-ii7vwz{display:flex;align-items:center;gap:8px;margin-top:2px}.feed-path.svelte-ii7vwz.svelte-ii7vwz{font-size:11px;color:#8ea0d8;max-width:280px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.feed-event-type.svelte-ii7vwz.svelte-ii7vwz{font-size:10px;color:#a5b4fc;background:#6366f11a;padding:2px 8px;border-radius:8px;font-weight:500}.feed-time.svelte-ii7vwz.svelte-ii7vwz{font-size:11px;color:#555;margin-left:auto;flex-shrink:0}.feed-nav-btn.svelte-ii7vwz.svelte-ii7vwz{background:none;border:none;color:#555;cursor:pointer;padding:4px;border-radius:4px;flex-shrink:0;margin-top:2px}.feed-nav-btn.svelte-ii7vwz.svelte-ii7vwz:hover{color:#a5b4fc;background:#1e1e30}.link-btn.svelte-ii7vwz.svelte-ii7vwz{background:none;border:none;padding:0;color:#a5b4fc;font:inherit;cursor:pointer;text-align:left}.link-btn.svelte-ii7vwz.svelte-ii7vwz:hover{text-decoration:underline}.suggestions-list.svelte-ii7vwz.svelte-ii7vwz{display:flex;flex-direction:column;gap:6px}.suggestion-card.svelte-ii7vwz.svelte-ii7vwz{display:flex;flex-direction:column;align-items:stretch;padding:0;background:#1e1e32;border-radius:6px;margin-bottom:6px;gap:0;border:1px solid transparent}.suggestion-card.svelte-ii7vwz.svelte-ii7vwz:last-child{margin-bottom:0}.suggestion-card.expanded.svelte-ii7vwz.svelte-ii7vwz{border-color:#3a3a5c}.suggestion-main.svelte-ii7vwz.svelte-ii7vwz{display:flex;align-items:center;justify-content:space-between;padding:7px 10px;cursor:pointer;gap:10px;min-height:38px}.suggestion-info.svelte-ii7vwz.svelte-ii7vwz{flex:1;display:flex;flex-direction:column;gap:2px}.suggestion-node.svelte-ii7vwz.svelte-ii7vwz{color:#a5b4fc;font-weight:600;font-size:13px;text-decoration:none;cursor:pointer}.suggestion-node.svelte-ii7vwz.svelte-ii7vwz:hover{text-decoration:underline}.suggestion-summary.svelte-ii7vwz.svelte-ii7vwz{font-size:14px;color:#e4e4ef}.suggestion-meta.svelte-ii7vwz.svelte-ii7vwz{font-size:12px;color:#8888a0;margin-top:2px}.suggestion-actions.svelte-ii7vwz.svelte-ii7vwz{display:flex;align-items:center;gap:6px;flex-shrink:0}.suggestion-min-input.svelte-ii7vwz.svelte-ii7vwz{width:54px;padding:3px 7px;border:1px solid #2a2a3c;background:#13131f;color:#e4e4ef;border-radius:4px;font-size:13px;text-align:center}.suggestion-min-label.svelte-ii7vwz.svelte-ii7vwz{font-size:12px;color:#8888a0}.suggestion-confidence-dot.svelte-ii7vwz.svelte-ii7vwz{width:9px;height:9px;border-radius:999px;background:#77798a;box-shadow:0 0 0 3px #77798a1f;flex:0 0 auto}.suggestion-confidence-dot.low.svelte-ii7vwz.svelte-ii7vwz{background:#ef4444;box-shadow:0 0 0 3px #ef44441f}.suggestion-confidence-dot.medium.svelte-ii7vwz.svelte-ii7vwz{background:#fbbf24;box-shadow:0 0 0 3px #fbbf241f}.suggestion-confidence-dot.high.svelte-ii7vwz.svelte-ii7vwz{background:#34d399;box-shadow:0 0 0 3px #34d3991f}.suggestion-detail.svelte-ii7vwz.svelte-ii7vwz{width:100%;padding:6px 10px 8px;border-top:1px solid #2a2a3c}.suggestion-detail-title.svelte-ii7vwz.svelte-ii7vwz{font-size:10px;font-weight:600;color:#a5b4fc;text-transform:uppercase;letter-spacing:.3px;padding:4px 0}.suggestion-detail-event.svelte-ii7vwz.svelte-ii7vwz{display:flex;align-items:center;gap:7px;padding:2px 0;font-size:12px;color:#b0b0c0}.suggestion-event-time.svelte-ii7vwz.svelte-ii7vwz{color:#a0a0b8;font-variant-numeric:tabular-nums;white-space:nowrap;min-width:48px}.suggestion-event-type.svelte-ii7vwz.svelte-ii7vwz{color:#8888a0;font-size:11px;background:#1a1a2e;padding:1px 6px;border-radius:3px}.suggestion-event-title.svelte-ii7vwz.svelte-ii7vwz{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.suggestion-event-path.svelte-ii7vwz.svelte-ii7vwz{max-width:220px;color:#8ea0d8;font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.btn.svelte-ii7vwz.svelte-ii7vwz{padding:8px 16px;border:1px solid #2a2a3c;background:#1a1a28;color:#ccc;border-radius:6px;cursor:pointer;font-size:13px;font-family:inherit;display:inline-flex;align-items:center;gap:6px}.btn.svelte-ii7vwz.svelte-ii7vwz:hover{background:#223}.btn-primary.svelte-ii7vwz.svelte-ii7vwz{background:#6366f1;border-color:#6366f1;color:#fff}.btn-primary.svelte-ii7vwz.svelte-ii7vwz:hover{background:#4f46e5}.btn-sm.svelte-ii7vwz.svelte-ii7vwz{padding:4px 10px;font-size:12px}.btn-danger.svelte-ii7vwz.svelte-ii7vwz{color:#ff6b6b;border-color:#4a2222}.btn-danger.svelte-ii7vwz.svelte-ii7vwz:hover{background:#3a2222}.ip-list.svelte-ii7vwz.svelte-ii7vwz{display:flex;flex-direction:column;gap:2px}.ip-item.svelte-ii7vwz.svelte-ii7vwz{display:flex;align-items:center;gap:10px;padding:8px 12px;border-radius:8px;cursor:pointer}.ip-item.svelte-ii7vwz.svelte-ii7vwz:hover{background:#1a1a28}.ip-icon.svelte-ii7vwz.svelte-ii7vwz{width:20px;text-align:center;color:#6366f1;font-size:13px;flex-shrink:0}.ip-body.svelte-ii7vwz.svelte-ii7vwz{flex:1;min-width:0}.ip-title.svelte-ii7vwz.svelte-ii7vwz{font-size:14px;color:#e4e4ef;display:block}.ip-path.svelte-ii7vwz.svelte-ii7vwz{font-size:11px;color:#8ea0d8;max-width:280px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block}.ip-type.svelte-ii7vwz.svelte-ii7vwz{font-size:11px;color:#666;flex-shrink:0}.ip-time.svelte-ii7vwz.svelte-ii7vwz{font-size:11px;color:#555;flex-shrink:0;margin-left:8px}.capture-list.svelte-ii7vwz.svelte-ii7vwz{display:flex;flex-direction:column;gap:6px}.capture-item.svelte-ii7vwz.svelte-ii7vwz{display:flex;align-items:center;gap:12px;padding:10px 12px;border:1px solid #2a2a3c;border-radius:8px;background:#1a1a28;cursor:pointer}.capture-item.svelte-ii7vwz.svelte-ii7vwz:hover{border-color:#3a3a5c;background:#1e1e32}.capture-icon.svelte-ii7vwz.svelte-ii7vwz{font-size:18px;width:28px;text-align:center;flex-shrink:0}.capture-body.svelte-ii7vwz.svelte-ii7vwz{flex:1;min-width:0}.capture-title.svelte-ii7vwz.svelte-ii7vwz{font-size:14px;color:#e4e4ef;font-weight:500;display:block}.capture-meta.svelte-ii7vwz.svelte-ii7vwz{font-size:12px;color:#8888a0;display:block;margin-top:2px}.capture-time.svelte-ii7vwz.svelte-ii7vwz{font-size:11px;color:#555;flex-shrink:0}.plugin-page.svelte-xgfxht.svelte-xgfxht{padding:1.5rem;height:100%;display:flex;flex-direction:column}.loading.svelte-xgfxht.svelte-xgfxht{color:var(--text-dim, #888)}.empty-state.svelte-xgfxht.svelte-xgfxht{text-align:center;padding:3rem 1rem;color:var(--text-dim, #888)}.empty-state.svelte-xgfxht code.svelte-xgfxht{background:var(--surface-alt, #252538);padding:.15rem .4rem;border-radius:3px;font-size:.85rem}.plugin-frame-container.svelte-xgfxht.svelte-xgfxht{flex:1;display:flex;flex-direction:column;min-height:0}.plugin-error-bar.svelte-xgfxht.svelte-xgfxht{padding:.5rem 1rem;background:#f871711f;border:1px solid #f87171;border-bottom:none;border-radius:8px 8px 0 0;color:#f87171;font-size:.85rem;flex-shrink:0}.plugin-frame.svelte-xgfxht.svelte-xgfxht{flex:1;border:1px solid var(--border, #2a2a3e);border-radius:8px;background:#fff;width:100%;min-height:400px;display:block}.plugin-frame-container.svelte-xgfxht .plugin-frame.svelte-xgfxht{border-radius:0 0 8px 8px;border-top:none}.global-search.svelte-1dlr37h{position:relative;flex:1 1 360px;min-width:180px;max-width:520px}.global-search-input.svelte-1dlr37h{width:100%;height:32px;padding:0 12px;border:1px solid #2a2a3c;border-radius:6px;background:#10101a;color:#e4e4ef;font:inherit;font-size:13px}.global-search-input.svelte-1dlr37h:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 2px #6366f12e}.global-search-results.svelte-1dlr37h{position:absolute;top:calc(100% + 6px);left:0;right:0;z-index:160;max-height:min(360px,calc(100vh - 88px));overflow-y:auto;background:#1a1a28;border:1px solid #2a2a3c;border-radius:8px;box-shadow:0 14px 36px #00000061;padding:4px}.global-search-result.svelte-1dlr37h{display:flex;flex-direction:column;gap:2px;width:100%;border:0;background:transparent;color:#e4e4ef;text-align:left;padding:8px 10px;border-radius:6px;cursor:pointer;font:inherit}.global-search-result.svelte-1dlr37h:hover,.global-search-result.selected.svelte-1dlr37h{background:#252545}.global-search-title.svelte-1dlr37h{font-size:13px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.global-search-meta.svelte-1dlr37h{font-size:11px;color:#a0a0bc;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.global-search-snippet.svelte-1dlr37h{font-size:12px;color:#767690;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.global-search-empty.svelte-1dlr37h{padding:10px 12px;color:#8888a0;font-size:12px}.header.svelte-7x8q9h{padding:10px 24px;border-bottom:1px solid #2a2a3c;display:flex;align-items:center;gap:16px;flex-shrink:0;min-height:52px}.header-left.svelte-7x8q9h{display:flex;align-items:center;gap:8px;min-width:120px;flex:0 1 auto;overflow:hidden}.header-title.svelte-7x8q9h{font-size:15px;font-weight:600;color:#e4e4ef;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.header-title.placeholder.svelte-7x8q9h{color:#666;font-weight:500}.header-subtitle.svelte-7x8q9h{font-size:11px;color:#8888a0;background:#1e1e2e;padding:2px 8px;border-radius:10px;white-space:nowrap}.header-right.svelte-7x8q9h{flex:1;min-width:0;display:flex;align-items:center;justify-content:flex-end;gap:8px}@media (max-width: 760px){.header.svelte-7x8q9h{padding:8px 12px;gap:10px;align-items:flex-start;flex-wrap:wrap}.header-left.svelte-7x8q9h{flex:1 1 100%}.header-right.svelte-7x8q9h{flex:1 1 100%;justify-content:stretch}}.md-editor.svelte-1etjgc1{display:flex;flex-direction:column;flex:1;min-height:0;height:100%}.md-editor.mode-edit.svelte-1etjgc1{height:auto}.md-toolbar.svelte-1etjgc1{display:flex;align-items:center;gap:2px;padding:5px 10px;border-bottom:1px solid #2a2a3c;background:#16161f;flex-shrink:0;flex-wrap:wrap}.md-toolbar-group.svelte-1etjgc1{display:flex;align-items:center;gap:1px}.md-toolbar-sep.svelte-1etjgc1{width:1px;height:18px;background:#2a2a3c;margin:0 4px;flex-shrink:0}.md-toolbar-btn.svelte-1etjgc1{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;border-radius:4px;background:transparent;color:#999;cursor:pointer;transition:background .12s,color .12s;padding:0}.md-toolbar-btn.svelte-1etjgc1:hover{background:#2a2a3c;color:#e4e4ef}.md-toolbar-btn.svelte-1etjgc1:active{background:#333350}.md-toolbar-btn.svelte-1etjgc1:focus-visible{outline:2px solid #818cf8;outline-offset:1px}.md-toolbar-btn--internal.svelte-1etjgc1{color:#67e8f9}.md-toolbar-btn--internal.svelte-1etjgc1:hover{background:#67e8f91a;color:#a5f3fc}.md-btn-label.svelte-1etjgc1{font-size:13px;font-weight:700;font-family:SF Mono,Fira Code,monospace;line-height:1}.md-btn-bold.svelte-1etjgc1{font-weight:900}.md-btn-italic.svelte-1etjgc1{font-style:italic;font-family:Georgia,serif}.md-btn-sm.svelte-1etjgc1{font-size:10px}.md-btn-quote.svelte-1etjgc1{font-size:16px;font-family:Georgia,serif}.md-textarea.svelte-1etjgc1{flex:1;width:100%;min-height:0;border:none;outline:none;background:#13131f;color:#e4e4ef;font-family:SF Mono,Fira Code,Cascadia Code,Consolas,monospace;font-size:14px;line-height:1.65;padding:16px 20px;resize:none;-moz-tab-size:2;tab-size:2;overflow-y:auto}.md-textarea.svelte-1etjgc1::placeholder{color:#444;font-style:italic}.markdown-body.svelte-jdvhib{color:#e4e4ef;font-size:15px;line-height:1.7;word-wrap:break-word;overflow-wrap:break-word;max-width:720px}.md-empty.svelte-jdvhib{color:#555;font-style:italic;padding:24px 0}.md-error.svelte-jdvhib{background:#3a2222;border:1px solid #5a2a2a;border-radius:8px;padding:16px;color:#f88}.md-error-detail.svelte-jdvhib{font-size:12px;color:#c66;margin-top:8px}.markdown-body h1{font-size:28px;font-weight:700;margin:32px 0 16px;padding-bottom:8px;border-bottom:1px solid #2a2a3c;color:#f0f0f8}.markdown-body h2{font-size:22px;font-weight:600;margin:28px 0 14px;padding-bottom:6px;border-bottom:1px solid #22223a;color:#e8e8f0}.markdown-body h3{font-size:18px;font-weight:600;margin:24px 0 12px;color:#ddd}.markdown-body h4{font-size:16px;font-weight:600;margin:20px 0 10px;color:#ccc}.markdown-body h5,.markdown-body h6{font-size:14px;font-weight:600;margin:16px 0 8px;color:#bbb}.markdown-body p{margin:12px 0}.markdown-body .md-link{color:#818cf8;text-decoration:none;border-bottom:1px solid transparent;transition:border-color .15s,color .15s;cursor:pointer}.markdown-body .md-link:hover{color:#a5b4fc;border-bottom-color:#818cf8}.markdown-body .md-link--internal{color:#67e8f9;font-weight:500}.markdown-body .md-link--internal:hover{color:#a5f3fc;border-bottom-color:#67e8f9}.markdown-body .md-link--blocked{color:#666;text-decoration:line-through;cursor:not-allowed}.markdown-body strong{font-weight:700;color:#f0f0f8}.markdown-body em{font-style:italic}.markdown-body del{text-decoration:line-through;color:#888}.markdown-body ul{padding-left:24px;margin:12px 0;list-style-type:disc}.markdown-body ol{padding-left:24px;margin:12px 0;list-style-type:decimal}.markdown-body li{margin:4px 0;line-height:1.6}.markdown-body li>ul,.markdown-body li>ol{margin:4px 0}.markdown-body .md-task-item{list-style:none;display:flex;align-items:flex-start;gap:8px;margin:4px 0}.markdown-body .md-task-checkbox{margin-top:3px;flex-shrink:0;accent-color:#818cf8}.markdown-body .md-task-text{flex:1}.markdown-body blockquote{margin:16px 0;padding:12px 16px;border-left:3px solid #818cf8;background:#818cf80f;border-radius:0 6px 6px 0;color:#bbb;font-style:italic}.markdown-body blockquote p{margin:4px 0}.markdown-body .md-code-inline{background:#1e1e38;color:#f59e0b;padding:2px 6px;border-radius:4px;font-family:SF Mono,Fira Code,Cascadia Code,Consolas,monospace;font-size:13px}.markdown-body .md-code-block{background:#0d1117;border:1px solid #21262d;border-radius:8px;padding:16px;margin:16px 0;overflow-x:auto;font-family:SF Mono,Fira Code,Cascadia Code,Consolas,monospace;font-size:13px;line-height:1.55;color:#c9d1d9}.markdown-body .md-code-block code{background:none;padding:0;border-radius:0;font-size:inherit}.markdown-body .hljs{color:#c9d1d9}.markdown-body .hljs-comment{color:#8b949e}.markdown-body .hljs-keyword{color:#ff7b72}.markdown-body .hljs-string{color:#a5d6ff}.markdown-body .hljs-number{color:#79c0ff}.markdown-body .hljs-function{color:#d2a8ff}.markdown-body .hljs-class,.markdown-body .hljs-variable{color:#ffa657}.markdown-body .hljs-operator{color:#ff7b72}.markdown-body .hljs-punctuation{color:#c9d1d9}.markdown-body .hljs-tag{color:#7ee787}.markdown-body .hljs-attr{color:#79c0ff}.markdown-body .hljs-title{color:#d2a8ff}.markdown-body .hljs-built_in{color:#ffa657}.markdown-body .hljs-literal{color:#79c0ff}.markdown-body .hljs-type{color:#ffa657}.markdown-body .hljs-params{color:#c9d1d9}.markdown-body .hljs-property{color:#79c0ff}.markdown-body .hljs-regexp{color:#a5d6ff}.markdown-body .hljs-meta{color:#8b949e}.markdown-body .hljs-doctag{color:#ff7b72}.markdown-body .hljs-name{color:#7ee787}.markdown-body .hljs-section{color:#1f6feb;font-weight:700}.markdown-body .hljs-symbol{color:#79c0ff}.markdown-body .hljs-bullet{color:#f2cc60}.markdown-body .hljs-code{color:#c9d1d9}.markdown-body .hljs-emphasis{font-style:italic}.markdown-body .hljs-strong{font-weight:700}.markdown-body .hljs-addition{color:#aff5b4;background:#033a16}.markdown-body .hljs-deletion{color:#ffdcd7;background:#67060c}.markdown-body table{width:100%;border-collapse:collapse;margin:16px 0;font-size:14px}.markdown-body thead{background:#1a1a2e}.markdown-body th{padding:10px 14px;text-align:left;font-weight:600;color:#c4c4d4;border-bottom:2px solid #2a2a3c}.markdown-body td{padding:8px 14px;border-bottom:1px solid #1e1e30}.markdown-body tbody tr:hover{background:#818cf80a}.markdown-body hr{border:none;border-top:1px solid #2a2a3c;margin:24px 0}.markdown-body .md-image-blocked{display:inline-block;background:#1a1a2e;border:1px dashed #3a3a5c;border-radius:6px;padding:8px 14px;color:#666;font-size:13px;font-style:italic;margin:8px 0}.note-editor-panel.svelte-8tdyp9.svelte-8tdyp9{display:flex;flex-direction:column;flex:1;min-height:0;height:100%}.mode-switcher.svelte-8tdyp9.svelte-8tdyp9{display:flex;align-items:center;gap:2px;padding:5px 12px;border-bottom:1px solid #2a2a3c;background:#14141f;flex-shrink:0}.mode-btn.svelte-8tdyp9.svelte-8tdyp9{padding:4px 12px;border:1px solid transparent;border-radius:4px;background:transparent;color:#888;font-size:12px;font-family:inherit;cursor:pointer;transition:background .12s,color .12s,border-color .12s}.mode-btn.svelte-8tdyp9.svelte-8tdyp9:hover{color:#ccc;background:#1e1e30}.mode-btn.active.svelte-8tdyp9.svelte-8tdyp9{color:#e4e4ef;background:#22223a;border-color:#333350;font-weight:500}.mode-btn.svelte-8tdyp9.svelte-8tdyp9:focus-visible{outline:2px solid #818cf8;outline-offset:1px}.panel-content.svelte-8tdyp9.svelte-8tdyp9{flex:1;display:flex;min-height:0;overflow:hidden}.mode-preview.svelte-8tdyp9 .panel-content.svelte-8tdyp9{overflow-y:auto}.preview-pane.svelte-8tdyp9.svelte-8tdyp9{flex:1;padding:24px;overflow-y:auto}.split-pane.svelte-8tdyp9.svelte-8tdyp9{flex:1;display:flex;min-height:0;overflow:hidden}.split-editor.svelte-8tdyp9.svelte-8tdyp9{flex:1;display:flex;flex-direction:column;min-width:0;border-right:1px solid #2a2a3c;overflow:hidden}.split-preview.svelte-8tdyp9.svelte-8tdyp9{flex:1;min-width:0;overflow-y:auto;padding:20px 24px;background:#11111c}.picker-modal-overlay.svelte-12kipyi{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:200}.picker-modal.svelte-12kipyi{background:#1a1a28;border:1px solid #2a2a3c;border-radius:12px;width:480px;max-width:90vw;max-height:70vh;display:flex;flex-direction:column;overflow:hidden}.picker-header.svelte-12kipyi{padding:12px 16px;border-bottom:1px solid #2a2a3c}.picker-search-input.svelte-12kipyi{width:100%;padding:8px 12px;border:1px solid #2a2a3c;border-radius:6px;background:#13131f;color:#e4e4ef;font-size:14px;font-family:inherit;outline:none;box-sizing:border-box}.picker-search-input.svelte-12kipyi:focus{border-color:#818cf8}.picker-types.svelte-12kipyi{display:flex;gap:4px;padding:8px 16px;border-bottom:1px solid #2a2a3c}.picker-type-btn.svelte-12kipyi{padding:4px 12px;border:1px solid #2a2a3c;border-radius:4px;background:#13131f;color:#999;font-size:12px;font-family:inherit;cursor:pointer}.picker-type-btn.svelte-12kipyi:hover:not(:disabled){background:#1e1e38;color:#ccc}.picker-type-btn.active.svelte-12kipyi{background:#2a2a4a;color:#e4e4ef;border-color:#6366f1}.picker-type-btn.disabled.svelte-12kipyi{opacity:.4;cursor:not-allowed}.picker-secret-placeholder.svelte-12kipyi{padding:32px;text-align:center;color:#666;font-size:14px}.picker-results.svelte-12kipyi{flex:1;overflow-y:auto;min-height:0;max-height:300px}.picker-loading.svelte-12kipyi,.picker-error.svelte-12kipyi,.picker-empty.svelte-12kipyi{padding:24px;text-align:center;color:#666;font-size:13px}.picker-error.svelte-12kipyi{color:#f88}.picker-result.svelte-12kipyi{display:flex;flex-direction:column;gap:2px;width:100%;padding:10px 16px;border:none;border-bottom:1px solid #1e1e30;background:transparent;color:#e4e4ef;font-size:13px;font-family:inherit;text-align:left;cursor:pointer}.picker-result.svelte-12kipyi:last-child{border-bottom:none}.picker-result.svelte-12kipyi:hover,.picker-result.selected.svelte-12kipyi{background:#1e1e38}.picker-result-title.svelte-12kipyi{font-weight:500}.picker-result-path.svelte-12kipyi{font-size:11px;color:#666;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.picker-footer.svelte-12kipyi{display:flex;justify-content:flex-end;gap:8px;padding:12px 16px;border-top:1px solid #2a2a3c}.notes-tab.svelte-t8waqp.svelte-t8waqp{padding:24px}.tab-toolbar.svelte-t8waqp.svelte-t8waqp{margin-bottom:16px}.create-form.svelte-t8waqp.svelte-t8waqp{background:#1a1a28;padding:16px;border-radius:8px;margin-bottom:16px}.create-form.svelte-t8waqp input.svelte-t8waqp{width:100%;padding:8px 12px;border:1px solid #2a2a3c;background:#13131f;color:#e4e4ef;border-radius:4px;font-size:14px;font-family:inherit;margin-bottom:8px}.create-form.svelte-t8waqp input.svelte-t8waqp:focus{outline:none;border-color:#6366f1}.form-actions.svelte-t8waqp.svelte-t8waqp{display:flex;gap:8px}.notes-list.svelte-t8waqp.svelte-t8waqp{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}.note-card.svelte-t8waqp.svelte-t8waqp{background:#1a1a28;border:1px solid #2a2a3c;border-radius:8px;padding:16px;cursor:pointer;position:relative}.note-card.svelte-t8waqp.svelte-t8waqp:hover{border-color:#3a3a5c}.note-card-info.svelte-t8waqp.svelte-t8waqp{flex:1;min-width:0}.note-card-title.svelte-t8waqp.svelte-t8waqp{font-size:14px;font-weight:500;margin-bottom:4px}.note-card-date.svelte-t8waqp.svelte-t8waqp{font-size:11px;color:#555}.note-card-actions.svelte-t8waqp.svelte-t8waqp{display:flex;gap:4px;opacity:0;transition:opacity .12s}.note-card.svelte-t8waqp:hover .note-card-actions.svelte-t8waqp{opacity:1}.note-action-btn.svelte-t8waqp.svelte-t8waqp{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border:none;border-radius:4px;background:transparent;color:#666;cursor:pointer;transition:background .12s,color .12s}.note-action-btn.svelte-t8waqp.svelte-t8waqp:hover{background:#2a2a3c;color:#ccc}.note-action-danger.svelte-t8waqp.svelte-t8waqp:hover{background:#ef444426;color:#f87171}.empty-state.svelte-t8waqp.svelte-t8waqp{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px;text-align:center}.empty-state.svelte-t8waqp p.svelte-t8waqp{margin:0;font-size:14px;color:#666}.empty-state.svelte-t8waqp .hint.svelte-t8waqp{font-size:12px;color:#555;margin-top:6px}.overview.svelte-3r30e3.svelte-3r30e3{padding:24px}.overview.svelte-3r30e3 h2.svelte-3r30e3{font-size:24px;margin-bottom:16px}.meta-grid.svelte-3r30e3.svelte-3r30e3{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px;margin-bottom:24px}.meta-item.svelte-3r30e3.svelte-3r30e3{background:#1a1a28;padding:12px 16px;border-radius:8px}.meta-label.svelte-3r30e3.svelte-3r30e3{display:block;font-size:11px;color:#666;margin-bottom:4px;text-transform:uppercase}.quick-actions.svelte-3r30e3.svelte-3r30e3{display:flex;gap:8px;margin-bottom:24px;flex-wrap:wrap}.qa-btn.svelte-3r30e3.svelte-3r30e3{padding:10px 16px;border:1px solid #2a2a3c;background:#1a1a28;color:#ccc;border-radius:8px;cursor:pointer;font-size:13px;font-family:inherit;display:inline-flex;align-items:center;gap:6px}.qa-btn.svelte-3r30e3.svelte-3r30e3:hover{background:#223}.qa-btn.svelte-3r30e3.svelte-3r30e3:disabled{opacity:.4;cursor:not-allowed}.recent-section.svelte-3r30e3.svelte-3r30e3{margin-bottom:24px}.recent-section.svelte-3r30e3 h3.svelte-3r30e3{font-size:13px;color:#666;text-transform:uppercase;margin-bottom:8px}.recent-note.svelte-3r30e3.svelte-3r30e3{padding:8px 12px;border-radius:6px;cursor:pointer;display:flex;justify-content:space-between}.recent-note.svelte-3r30e3.svelte-3r30e3:hover{background:#1a1a28}.recent-date.svelte-3r30e3.svelte-3r30e3{font-size:11px;color:#555}.recent-entry.svelte-3r30e3.svelte-3r30e3{padding:6px 0;font-size:13px;color:#888;border-bottom:1px solid #1a1a28}.files-tab.svelte-1js0qn7.svelte-1js0qn7{padding:20px}.files-tab.svelte-1js0qn7 .tab-toolbar.svelte-1js0qn7{display:flex;gap:8px;align-items:center;margin-bottom:16px}.file-list.svelte-1js0qn7.svelte-1js0qn7{display:flex;flex-direction:column}.back-btn.svelte-1js0qn7.svelte-1js0qn7{margin-bottom:4px;display:inline-flex;align-items:center;gap:4px}.import-summary.svelte-1js0qn7.svelte-1js0qn7{margin-bottom:16px}.summary-row.svelte-1js0qn7.svelte-1js0qn7{display:flex;justify-content:space-between;padding:6px 0;font-size:14px;border-bottom:1px solid #2a2a3c}.summary-warn.svelte-1js0qn7.svelte-1js0qn7{margin-top:8px;padding:8px 12px;background:#3a2a22;border-radius:6px;color:#fa6;font-size:13px}.rename-error.svelte-1js0qn7.svelte-1js0qn7{color:#ff6b6b;font-size:12px;margin-top:4px}.svelte-1uu9qhk.svelte-1uu9qhk,.svelte-1uu9qhk.svelte-1uu9qhk:before,.svelte-1uu9qhk.svelte-1uu9qhk:after{box-sizing:border-box;margin:0;padding:0}.app.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;width:100vw;height:100vh;overflow:hidden;background:#13131f;color:#e4e4ef;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:14px}.capture-drop-overlay.svelte-1uu9qhk.svelte-1uu9qhk{position:fixed;top:0;right:0;bottom:0;left:0;z-index:120;pointer-events:none;display:flex;align-items:center;justify-content:center;background:#13131f6b;border:2px dashed #818cf8}.capture-drop-box.svelte-1uu9qhk.svelte-1uu9qhk{max-width:min(520px,calc(100vw - 48px));padding:14px 18px;border:1px solid #3a3a5c;border-radius:8px;background:#1a1a28;color:#e4e4ef;font-size:14px;font-weight:600;box-shadow:0 12px 32px #00000059;text-align:center}.sidebar.svelte-1uu9qhk.svelte-1uu9qhk{width:260px;min-width:200px;height:100vh;display:flex;flex-direction:column;background:#1a1a28;border-right:1px solid #2a2a3c;flex-shrink:0;overflow:hidden}.sidebar-brand.svelte-1uu9qhk.svelte-1uu9qhk{padding:16px 20px;display:flex;align-items:center;gap:10px;border-bottom:1px solid #2a2a3c;flex-shrink:0}.logo.svelte-1uu9qhk.svelte-1uu9qhk{display:block;width:20px;height:20px;flex-shrink:0}.brand-name.svelte-1uu9qhk.svelte-1uu9qhk{font-size:16px;font-weight:600}.sidebar-nav.svelte-1uu9qhk.svelte-1uu9qhk{flex:1;overflow-y:auto;padding:12px 0}.nav-group.svelte-1uu9qhk.svelte-1uu9qhk{margin-bottom:16px}.nav-label.svelte-1uu9qhk.svelte-1uu9qhk{font-size:10px;text-transform:uppercase;letter-spacing:.5px;color:#666;padding:4px 20px;margin-bottom:4px}.nav-item.svelte-1uu9qhk.svelte-1uu9qhk{display:block;width:100%;padding:8px 20px;border:none;background:none;color:#ccc;font-size:13px;text-align:left;cursor:pointer;border-radius:0;font-family:inherit}.nav-item.svelte-1uu9qhk.svelte-1uu9qhk:hover{background:#223}.nav-item.selected.svelte-1uu9qhk.svelte-1uu9qhk{background:#2a2a4a;color:#fff;font-weight:500}.workspace-tree-area.svelte-1uu9qhk.svelte-1uu9qhk{min-height:32px}.workspace-tree-area.drop-valid.svelte-1uu9qhk.svelte-1uu9qhk{outline:2px dashed #4ade80;outline-offset:-2px;background:#4ade800d}.nav-empty.svelte-1uu9qhk.svelte-1uu9qhk{padding:8px 20px;color:#555;font-size:12px}.nav-label-row.svelte-1uu9qhk.svelte-1uu9qhk{font-size:10px;text-transform:uppercase;letter-spacing:.5px;color:#666;padding:4px 20px;margin-bottom:4px;display:flex;align-items:center;justify-content:space-between}.nav-add-btn.svelte-1uu9qhk.svelte-1uu9qhk{background:none;border:none;color:#666;cursor:pointer;font-size:16px;padding:0 4px;font-family:inherit;line-height:1}.nav-add-btn.svelte-1uu9qhk.svelte-1uu9qhk:hover{color:#ccc}.context-menu-backdrop.svelte-1uu9qhk.svelte-1uu9qhk{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200}.context-menu.svelte-1uu9qhk.svelte-1uu9qhk{position:fixed;background:#1a1a28;border:1px solid #2a2a3c;border-radius:8px;padding:4px;min-width:180px;box-shadow:0 8px 24px #0006}.context-menu-section.svelte-1uu9qhk.svelte-1uu9qhk{padding:6px 12px;font-size:10px;text-transform:uppercase;letter-spacing:.5px;color:#666}.context-menu-item.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;width:100%;padding:6px 12px;border:none;background:none;color:#ccc;font-size:13px;text-align:left;cursor:pointer;border-radius:4px;font-family:inherit;align-items:center;gap:6px}.context-menu-item.svelte-1uu9qhk.svelte-1uu9qhk:hover{background:#223;color:#fff}.context-menu-item.danger.svelte-1uu9qhk.svelte-1uu9qhk{color:#ff6b6b}.context-menu-item.danger.svelte-1uu9qhk.svelte-1uu9qhk:hover{background:#3a2222;color:#ff6b6b}.context-menu-divider.svelte-1uu9qhk.svelte-1uu9qhk{height:1px;background:#2a2a3c;margin:4px 0}.create-context.svelte-1uu9qhk.svelte-1uu9qhk{font-size:12px;color:#888;margin-bottom:12px}.sidebar-footer.svelte-1uu9qhk.svelte-1uu9qhk{padding:8px 12px;border-top:1px solid #2a2a3c;flex-shrink:0;display:flex;flex-direction:column;gap:4px}.sidebar-footer-row.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;align-items:center;justify-content:space-between}.version.svelte-1uu9qhk.svelte-1uu9qhk{font-size:11px;color:#555;text-align:center}.main.svelte-1uu9qhk.svelte-1uu9qhk{flex:1;display:flex;flex-direction:column;height:100vh;min-width:0;overflow:hidden;background:#13131f}.header-actions.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end}.sidebar-settings-btn.svelte-1uu9qhk.svelte-1uu9qhk{background:transparent;border:none;border-radius:6px;padding:6px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;color:#666;font-family:inherit;width:32px;height:32px}.sidebar-settings-btn.svelte-1uu9qhk.svelte-1uu9qhk:hover{background:#1e1e38;color:#a5b4fc}.sidebar-settings-btn.svelte-1uu9qhk.svelte-1uu9qhk:active{background:#252545;color:#818cf8}.error-banner.svelte-1uu9qhk.svelte-1uu9qhk{background:#3a2222;color:#f88;padding:8px 24px;font-size:12px;border-bottom:1px solid #4a2222;flex-shrink:0;cursor:pointer;display:flex;justify-content:space-between;align-items:center}.dismiss-btn.svelte-1uu9qhk.svelte-1uu9qhk{background:none;border:none;color:#f66;cursor:pointer;padding:2px;display:flex;align-items:center;border-radius:2px}.dismiss-btn.svelte-1uu9qhk.svelte-1uu9qhk:hover{color:#f44}.tabs.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;align-items:stretch;border-bottom:1px solid #2a2a3c;flex-shrink:0;padding:0 24px}.tab.svelte-1uu9qhk.svelte-1uu9qhk{padding:10px 16px;border:none;background:none;color:#888;font-size:13px;cursor:pointer;border-bottom:2px solid transparent;font-family:inherit}.tab.svelte-1uu9qhk.svelte-1uu9qhk:hover{color:#a5b4fc}.tab.active.svelte-1uu9qhk.svelte-1uu9qhk{color:#e4e4ef;border-bottom-color:#818cf8;background:#6366f11f;font-weight:600}.tab-separator.svelte-1uu9qhk.svelte-1uu9qhk{width:1px;height:22px;margin:8px 10px 0;background:#2a2a3c;flex-shrink:0}.tab-content.svelte-1uu9qhk.svelte-1uu9qhk{flex:1;overflow-y:auto}.note-editor-header.svelte-1uu9qhk.svelte-1uu9qhk{padding:12px 24px;border-bottom:1px solid #2a2a3c;display:flex;align-items:center;gap:12px;flex-shrink:0}.note-title.svelte-1uu9qhk.svelte-1uu9qhk{font-size:16px;font-weight:500}.dirty-mark.svelte-1uu9qhk.svelte-1uu9qhk{color:#f59e0b;font-size:10px}.note-editor-actions.svelte-1uu9qhk.svelte-1uu9qhk{margin-left:auto;display:flex;gap:8px}.note-rename-btn.svelte-1uu9qhk.svelte-1uu9qhk{opacity:0;margin-left:6px;color:#666}.note-editor-header.svelte-1uu9qhk:hover .note-rename-btn.svelte-1uu9qhk{opacity:1}.note-rename-btn.svelte-1uu9qhk.svelte-1uu9qhk:hover{color:#ccc}.note-rename-inline.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;align-items:center;gap:8px;flex:1}.note-rename-input.svelte-1uu9qhk.svelte-1uu9qhk{flex:1;padding:6px 10px;border:1px solid #2a2a3c;border-radius:4px;background:#13131f;color:#e4e4ef;font-size:14px;font-family:inherit;outline:none}.note-rename-input.svelte-1uu9qhk.svelte-1uu9qhk:focus{border-color:#818cf8}.form-group.svelte-1uu9qhk.svelte-1uu9qhk{margin-bottom:14px}.form-group.svelte-1uu9qhk label.svelte-1uu9qhk{display:block;font-size:12px;color:#888;margin-bottom:4px}.form-group.svelte-1uu9qhk input.svelte-1uu9qhk{width:100%;padding:8px 12px;border:1px solid #2a2a3c;border-radius:4px;background:#13131f;color:#e4e4ef;font-size:14px;font-family:inherit;outline:none;box-sizing:border-box}.form-group.svelte-1uu9qhk input.svelte-1uu9qhk:focus{border-color:#818cf8}.worklog-tab.svelte-1uu9qhk.svelte-1uu9qhk{padding:24px}.worklog-toolbar.svelte-1uu9qhk.svelte-1uu9qhk{margin-bottom:16px}.worklog-entry.svelte-1uu9qhk.svelte-1uu9qhk{padding:12px 0;border-bottom:1px solid #1a1a28}.suggestions-title.svelte-1uu9qhk.svelte-1uu9qhk{font-size:13px;font-weight:600;color:#a5b4fc;margin-bottom:12px;text-transform:uppercase;letter-spacing:.5px}.suggestion-summary.svelte-1uu9qhk.svelte-1uu9qhk{font-size:14px;color:#e4e4ef}.suggestion-meta.svelte-1uu9qhk.svelte-1uu9qhk{font-size:12px;color:#8888a0;margin-top:2px}.suggestion-main.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;align-items:center;justify-content:space-between;padding:7px 10px;cursor:pointer;gap:10px;min-height:38px}.suggestion-card.expanded.svelte-1uu9qhk.svelte-1uu9qhk{border-color:#3a3a5c}.suggestion-detail.svelte-1uu9qhk.svelte-1uu9qhk{width:100%;padding:6px 10px 8px;border-top:1px solid #2a2a3c}.suggestion-detail-title.svelte-1uu9qhk.svelte-1uu9qhk{font-size:10px;font-weight:600;color:#a5b4fc;text-transform:uppercase;letter-spacing:.3px;padding:4px 0}.suggestion-detail-event.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;align-items:center;gap:7px;padding:2px 0;font-size:12px;color:#b0b0c0}.suggestion-event-time.svelte-1uu9qhk.svelte-1uu9qhk{color:#a0a0b8;font-variant-numeric:tabular-nums;white-space:nowrap;min-width:48px}.suggestion-event-type.svelte-1uu9qhk.svelte-1uu9qhk{color:#8888a0;font-size:11px;background:#1a1a2e;padding:1px 6px;border-radius:3px}.suggestion-event-title.svelte-1uu9qhk.svelte-1uu9qhk{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.suggestion-event-path.svelte-1uu9qhk.svelte-1uu9qhk{max-width:220px;color:#8ea0d8;font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.suggestion-card.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;flex-direction:column;align-items:stretch;padding:0;background:#1e1e32;border-radius:6px;margin-bottom:6px;gap:0;border:1px solid transparent}.suggestion-card.svelte-1uu9qhk.svelte-1uu9qhk:last-child{margin-bottom:0}.suggestion-info.svelte-1uu9qhk.svelte-1uu9qhk{flex:1;display:flex;flex-direction:column;gap:2px}.suggestion-node.svelte-1uu9qhk.svelte-1uu9qhk{color:#a5b4fc;font-weight:600;font-size:13px;text-decoration:none;cursor:pointer}.suggestion-node.svelte-1uu9qhk.svelte-1uu9qhk:hover{text-decoration:underline}.suggestion-actions.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;align-items:center;gap:6px;flex-shrink:0}.suggestion-min-input.svelte-1uu9qhk.svelte-1uu9qhk{width:54px;padding:3px 7px;border:1px solid #2a2a3c;background:#13131f;color:#e4e4ef;border-radius:4px;font-size:13px;text-align:center}.suggestion-min-label.svelte-1uu9qhk.svelte-1uu9qhk{font-size:12px;color:#8888a0}.suggestion-confidence-dot.svelte-1uu9qhk.svelte-1uu9qhk{width:9px;height:9px;border-radius:999px;background:#77798a;box-shadow:0 0 0 3px #77798a1f;flex:0 0 auto}.suggestion-confidence-dot.low.svelte-1uu9qhk.svelte-1uu9qhk{background:#ef4444;box-shadow:0 0 0 3px #ef44441f}.suggestion-confidence-dot.medium.svelte-1uu9qhk.svelte-1uu9qhk{background:#fbbf24;box-shadow:0 0 0 3px #fbbf241f}.suggestion-confidence-dot.high.svelte-1uu9qhk.svelte-1uu9qhk{background:#34d399;box-shadow:0 0 0 3px #34d3991f}.inbox-screen.svelte-1uu9qhk.svelte-1uu9qhk{padding:24px;overflow-y:auto;flex:1}.inbox-screen.drop-valid.svelte-1uu9qhk.svelte-1uu9qhk{outline:2px dashed #4ade80;outline-offset:-4px;background:#4ade800a}.inbox-header.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px}.inbox-header.svelte-1uu9qhk p.svelte-1uu9qhk{margin:0;color:#a0a0b8;font-size:13px}.inbox-capture-status.svelte-1uu9qhk.svelte-1uu9qhk{color:#8ee6b1;font-size:12px}.inbox-list.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;flex-direction:column;gap:8px}.inbox-item.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid #2a2a3c;border-radius:8px;background:#1a1a28;cursor:pointer}.inbox-item.svelte-1uu9qhk.svelte-1uu9qhk:hover{border-color:#3a3a5c;background:#1e1e32}.inbox-item-main.svelte-1uu9qhk.svelte-1uu9qhk{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.inbox-item-title.svelte-1uu9qhk.svelte-1uu9qhk{color:#e4e4ef;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.inbox-item-meta.svelte-1uu9qhk.svelte-1uu9qhk{color:#8888a0;font-size:12px}.inbox-item-actions.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;gap:6px;flex-shrink:0;align-items:center}.inbox-icon-btn.svelte-1uu9qhk.svelte-1uu9qhk{width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;border:1px solid #2a2a3c;border-radius:6px;background:#13131f;color:#a0a0b8;cursor:pointer;transition:color .12s,border-color .12s,background .12s}.inbox-icon-slot.svelte-1uu9qhk.svelte-1uu9qhk{width:30px;height:30px;display:inline-block;flex:0 0 30px}.inbox-icon-btn.svelte-1uu9qhk.svelte-1uu9qhk:hover{color:#e4e4ef;border-color:#3a3a5c;background:#222238}.inbox-icon-btn-primary.svelte-1uu9qhk.svelte-1uu9qhk{color:#a5b4fc;border-color:#34346a}.inbox-icon-btn-primary.svelte-1uu9qhk.svelte-1uu9qhk:hover{color:#fff;border-color:#6366f1;background:#272750}.inbox-icon-btn-danger.svelte-1uu9qhk.svelte-1uu9qhk{color:#f87171;border-color:#4a252c}.inbox-icon-btn-danger.svelte-1uu9qhk.svelte-1uu9qhk:hover{color:#fff;border-color:#dc2626;background:#3a1f24}.inbox-tab.svelte-1uu9qhk.svelte-1uu9qhk{padding:24px}.inbox-controls.svelte-1uu9qhk.svelte-1uu9qhk{margin-bottom:12px}.inbox-sort-row.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.sort-btn.svelte-1uu9qhk.svelte-1uu9qhk{padding:4px 10px;border:1px solid #2a2a3c;background:#13131f;color:#888;border-radius:4px;font-size:12px;cursor:pointer;font-family:inherit}.sort-btn.svelte-1uu9qhk.svelte-1uu9qhk:hover{border-color:#3a3a5c;color:#ccc}.sort-btn.active.svelte-1uu9qhk.svelte-1uu9qhk{border-color:#6366f1;color:#a5b4fc;background:#6366f114}.sort-dir.svelte-1uu9qhk.svelte-1uu9qhk{font-size:12px;color:#8888a0;margin-left:2px}.inbox-controls-divider.svelte-1uu9qhk.svelte-1uu9qhk{width:1px;height:20px;background:#2a2a3c;margin:0 4px}.inbox-group.svelte-1uu9qhk.svelte-1uu9qhk{margin-bottom:16px}.inbox-group-header.svelte-1uu9qhk.svelte-1uu9qhk{font-size:12px;font-weight:600;color:#a5b4fc;text-transform:uppercase;letter-spacing:.5px;padding:8px 0 6px;margin-bottom:6px;border-bottom:1px solid #2a2a3c;display:flex;align-items:center;gap:8px}.inbox-group-count.svelte-1uu9qhk.svelte-1uu9qhk{font-size:10px;color:#8888a0;background:#1e1e30;padding:1px 6px;border-radius:8px}.links-tab.svelte-1uu9qhk.svelte-1uu9qhk{padding:24px}.links-list.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;flex-direction:column;gap:8px}.link-card.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid #2a2a3c;border-radius:8px;background:#1a1a28}.link-card.svelte-1uu9qhk.svelte-1uu9qhk:hover{border-color:#3a3a5c;background:#1e1e32}.link-main.svelte-1uu9qhk.svelte-1uu9qhk{flex:1;min-width:0;display:grid;grid-template-columns:minmax(160px,1fr) minmax(120px,220px) auto;gap:8px 12px;align-items:baseline}.link-title.svelte-1uu9qhk.svelte-1uu9qhk{color:#e4e4ef;font-weight:600;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.link-url.svelte-1uu9qhk.svelte-1uu9qhk{color:#a5b4fc;font-size:13px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.link-date.svelte-1uu9qhk.svelte-1uu9qhk{color:#8888a0;font-size:12px;white-space:nowrap}.link-note.svelte-1uu9qhk.svelte-1uu9qhk{grid-column:1 / -1;color:#8888a0;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.link-actions.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;gap:8px;flex-shrink:0}.link-status.svelte-1uu9qhk.svelte-1uu9qhk{margin-top:12px;color:#8ee6b1;font-size:12px}.trash-screen.svelte-1uu9qhk.svelte-1uu9qhk{padding:24px;overflow-y:auto;flex:1}.trash-header.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px}.trash-header.svelte-1uu9qhk p.svelte-1uu9qhk{margin:0;color:#8888a0;font-size:12px}.trash-browser.svelte-1uu9qhk.svelte-1uu9qhk{max-width:980px}.trash-section.svelte-1uu9qhk.svelte-1uu9qhk{min-width:0}.trash-section.svelte-1uu9qhk h3.svelte-1uu9qhk{margin:0 0 10px;font-size:13px;color:#a5b4fc;text-transform:uppercase;letter-spacing:.3px}.trash-section-head.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;align-items:center;gap:10px;margin-bottom:10px;min-height:36px}.trash-section-head.svelte-1uu9qhk h3.svelte-1uu9qhk{margin:0 0 2px}.trash-section-head.svelte-1uu9qhk p.svelte-1uu9qhk{margin:0;color:#8888a0;font-size:12px}.trash-row.svelte-1uu9qhk.svelte-1uu9qhk{display:grid;grid-template-columns:auto auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:9px 10px;border:1px solid #2a2a3c;border-radius:8px;background:#1a1a28;margin-bottom:8px}.trash-row.folder.svelte-1uu9qhk.svelte-1uu9qhk{background:#1b2132;border-color:#303856}.trash-row.selected.svelte-1uu9qhk.svelte-1uu9qhk{border-color:#6366f1;background:#20203a}.trash-row-icon.svelte-1uu9qhk.svelte-1uu9qhk{color:#a5b4fc;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;padding:4px;border-radius:4px;background:transparent;border:none}.trash-row-icon.svelte-1uu9qhk.svelte-1uu9qhk:hover{background:#222238;color:#e4e4ef}.trash-row-main.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;flex-direction:column;gap:2px;min-width:0;padding:2px 0;cursor:pointer;background:transparent;border:none;color:inherit;font:inherit;text-align:left;width:100%;border-radius:4px}.trash-row-main.svelte-1uu9qhk.svelte-1uu9qhk:hover{background:#ffffff08}.trash-row-main.svelte-1uu9qhk:hover .trash-row-title.svelte-1uu9qhk{color:#a5b4fc}.trash-row-main.svelte-1uu9qhk.svelte-1uu9qhk:focus-visible{outline:2px solid #6366f1;outline-offset:2px}.trash-row-title.svelte-1uu9qhk.svelte-1uu9qhk{min-width:0;color:#e4e4ef;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.trash-row-meta.svelte-1uu9qhk.svelte-1uu9qhk{color:#8ea0d8;font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.trash-row-date.svelte-1uu9qhk.svelte-1uu9qhk{color:#666;font-size:11px}.trash-row-actions.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;align-items:center;gap:6px;justify-content:flex-end}.trash-empty-line.svelte-1uu9qhk.svelte-1uu9qhk{color:#8888a0;font-size:13px;margin:0}.journal-screen.svelte-1uu9qhk.svelte-1uu9qhk{padding:24px;overflow-y:auto;flex:1}.journal-tabs.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;gap:0;border-bottom:1px solid #2a2a3c;margin-bottom:16px}.journal-tab.svelte-1uu9qhk.svelte-1uu9qhk{padding:10px 16px;border:none;background:none;color:#888;font-size:13px;cursor:pointer;border-bottom:2px solid transparent;font-family:inherit;position:relative}.journal-tab.svelte-1uu9qhk.svelte-1uu9qhk:hover{color:#a5b4fc}.journal-tab.active.svelte-1uu9qhk.svelte-1uu9qhk{color:#e4e4ef;border-bottom-color:#818cf8;background:#6366f11f;font-weight:600}.journal-header.svelte-1uu9qhk.svelte-1uu9qhk{margin-bottom:24px}.journal-summary.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;flex-wrap:wrap;gap:24px;margin-bottom:24px;padding:16px;background:#1a1a2e;border-radius:8px;border:1px solid #2a2a3c}.summary-total.svelte-1uu9qhk.svelte-1uu9qhk{font-size:18px;font-weight:700;color:#e4e4ef;width:100%;margin-bottom:4px}.summary-section.svelte-1uu9qhk.svelte-1uu9qhk{flex:1;min-width:200px}.summary-label.svelte-1uu9qhk.svelte-1uu9qhk{font-size:12px;font-weight:600;color:#a5b4fc;text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px}.summary-row.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;gap:8px;font-size:13px;padding:4px 0;border-bottom:1px solid #2a2a3c}.summary-row.svelte-1uu9qhk span.svelte-1uu9qhk:first-child{flex:1;color:#e4e4ef}.summary-count.svelte-1uu9qhk.svelte-1uu9qhk{color:#8888a0}.journal-table-wrap.svelte-1uu9qhk.svelte-1uu9qhk{overflow-x:auto}.journal-table.svelte-1uu9qhk.svelte-1uu9qhk{width:100%;border-collapse:collapse;font-size:13px}.journal-table.svelte-1uu9qhk th.svelte-1uu9qhk{text-align:left;padding:8px 12px;border-bottom:2px solid #2a2a3c;color:#b0b0c8;font-weight:600;font-size:12px;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}.journal-table.svelte-1uu9qhk td.svelte-1uu9qhk{padding:8px 12px;border-bottom:1px solid #1a1a28;color:#e4e4ef}.journal-table.svelte-1uu9qhk tr:hover td.svelte-1uu9qhk{background:#1e1e32}.journal-table.svelte-1uu9qhk .link-btn.svelte-1uu9qhk{color:#a5b4fc}.journal-path-cell.svelte-1uu9qhk.svelte-1uu9qhk{max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#a0a0b8;font-size:12px}.journal-min-cell.svelte-1uu9qhk.svelte-1uu9qhk{text-align:right;font-variant-numeric:tabular-nums}.journal-date-cell.svelte-1uu9qhk.svelte-1uu9qhk{color:#b0b0c0;white-space:nowrap}.journal-bool-cell.svelte-1uu9qhk.svelte-1uu9qhk{text-align:center;color:#a0a0b8}.journal-row.svelte-1uu9qhk.svelte-1uu9qhk{cursor:pointer}.journal-row.svelte-1uu9qhk:hover td.svelte-1uu9qhk{background:#1e1e32}.journal-row.expanded.svelte-1uu9qhk td.svelte-1uu9qhk{background:#1a1a30;border-bottom:none}.journal-summary-cell.svelte-1uu9qhk.svelte-1uu9qhk{max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.journal-row-detail.svelte-1uu9qhk td.svelte-1uu9qhk{padding:0 12px 12px;background:#16162a}.journal-detail-body.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;flex-direction:column;gap:12px;padding:8px 0}.journal-detail-actions.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;gap:8px;justify-content:flex-end}.journal-detail-section.svelte-1uu9qhk.svelte-1uu9qhk{font-size:13px}.journal-detail-label.svelte-1uu9qhk.svelte-1uu9qhk{font-size:11px;font-weight:600;color:#a5b4fc;text-transform:uppercase;letter-spacing:.3px;display:block;margin-bottom:4px}.journal-detail-section.svelte-1uu9qhk p.svelte-1uu9qhk{margin:0;color:#c0c0d0}.journal-event-row.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;align-items:center;gap:8px;padding:4px 0;font-size:13px;color:#b0b0c0}.journal-event-time.svelte-1uu9qhk.svelte-1uu9qhk{color:#a0a0b8;font-variant-numeric:tabular-nums;white-space:nowrap;min-width:48px}.journal-event-type.svelte-1uu9qhk.svelte-1uu9qhk{color:#8888a0;font-size:11px;background:#1a1a2e;padding:1px 6px;border-radius:3px}.journal-event-title.svelte-1uu9qhk.svelte-1uu9qhk{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.journal-node-picker.svelte-1uu9qhk input[type=text].svelte-1uu9qhk{padding:6px 10px;border:1px solid #2a2a3c;background:#13131f;color:#e4e4ef;border-radius:4px;font-size:13px;font-family:inherit;width:240px}.journal-search-dropdown.svelte-1uu9qhk.svelte-1uu9qhk{position:absolute;top:100%;left:0;right:0;z-index:50;background:#1a1a28;border:1px solid #2a2a3c;border-radius:6px;margin-top:4px;max-height:240px;overflow-y:auto;min-width:260px}.journal-search-item.svelte-1uu9qhk.svelte-1uu9qhk{display:block;width:100%;padding:8px 12px;border:none;background:transparent;color:#e4e4ef;cursor:pointer;font-family:inherit;font-size:13px;text-align:left}.journal-search-item.svelte-1uu9qhk.svelte-1uu9qhk:hover{background:#2a2a4a}.journal-search-title.svelte-1uu9qhk.svelte-1uu9qhk{display:block;font-weight:500}.journal-search-path.svelte-1uu9qhk.svelte-1uu9qhk{display:block;font-size:11px;color:#8888a0;margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.journal-selected-node.svelte-1uu9qhk.svelte-1uu9qhk{cursor:pointer;display:inline-flex;align-items:center;gap:6px;padding:6px 10px;background:#1e1e3a;border:1px solid #3a3a5c;border-radius:4px;font-size:13px;color:#a5b4fc;white-space:nowrap;font-family:inherit}.journal-selected-node.svelte-1uu9qhk.svelte-1uu9qhk:hover{background:#2a2a4a}.journal-node-clear.svelte-1uu9qhk.svelte-1uu9qhk{color:#8888a0;font-size:14px;margin-left:4px}.journal-status-msg.svelte-1uu9qhk.svelte-1uu9qhk{font-size:12px;color:#34d399;padding:4px 8px;background:#1a2a1e;border-radius:4px}.journal-include-chk.svelte-1uu9qhk.svelte-1uu9qhk{width:16px;height:16px;accent-color:#6366f1;cursor:pointer}.link-btn.svelte-1uu9qhk.svelte-1uu9qhk{background:none;border:none;padding:0;color:#a5b4fc;font:inherit;cursor:pointer;text-align:left}.link-btn.svelte-1uu9qhk.svelte-1uu9qhk:hover{text-decoration:underline}.nav-badge.svelte-1uu9qhk.svelte-1uu9qhk{background:#6366f1;color:#fff;font-size:10px;font-weight:700;border-radius:10px;padding:1px 6px;margin-left:6px;line-height:1.4}.actions-tab.svelte-1uu9qhk.svelte-1uu9qhk{padding:24px}.action-card.svelte-1uu9qhk.svelte-1uu9qhk{background:#1a1a28;padding:12px 16px;border-radius:8px;display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}.action-info.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;align-items:center;gap:8px;flex:1;min-width:0}.action-title.svelte-1uu9qhk.svelte-1uu9qhk{font-weight:500}.action-type.svelte-1uu9qhk.svelte-1uu9qhk{font-size:11px;color:#888;background:#223;padding:2px 8px;border-radius:10px;white-space:nowrap}.action-data.svelte-1uu9qhk.svelte-1uu9qhk{font-size:11px;color:#555;font-family:SF Mono,Fira Code,monospace;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:200px}.action-btns.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;gap:4px;flex-shrink:0}.action-btns.svelte-1uu9qhk .btn-danger.svelte-1uu9qhk{color:#ff6b6b;border-color:#4a2222;padding:4px 8px}.action-btns.svelte-1uu9qhk .btn-danger.svelte-1uu9qhk:hover{background:#3a2222}.empty-state.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px;text-align:center}.empty-state.svelte-1uu9qhk p.svelte-1uu9qhk{margin:0;font-size:14px;color:#666}.welcome.svelte-1uu9qhk.svelte-1uu9qhk{padding:48px 24px;text-align:center}.welcome.svelte-1uu9qhk h2.svelte-1uu9qhk{font-size:32px;font-weight:300;color:#8888a4;margin-bottom:16px}.welcome.svelte-1uu9qhk p.svelte-1uu9qhk{color:#666;font-size:14px}.error-text.svelte-1uu9qhk.svelte-1uu9qhk{color:#f88}.modal-overlay.svelte-1uu9qhk.svelte-1uu9qhk{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:100}.modal.svelte-1uu9qhk.svelte-1uu9qhk{background:#1a1a28;border:1px solid #2a2a3c;border-radius:12px;padding:24px;width:400px;max-width:90vw}.modal.svelte-1uu9qhk h3.svelte-1uu9qhk{font-size:18px;margin-bottom:16px}.modal.svelte-1uu9qhk textarea.svelte-1uu9qhk{width:100%;padding:8px 12px;border:1px solid #2a2a3c;background:#13131f;color:#e4e4ef;border-radius:4px;font-size:14px;font-family:inherit;min-height:60px;resize:vertical;box-sizing:border-box}.modal-worklog.svelte-1uu9qhk.svelte-1uu9qhk{width:460px}.form-group.svelte-1uu9qhk.svelte-1uu9qhk{margin-bottom:12px}.form-row.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;gap:16px;margin-bottom:12px}.form-group.svelte-1uu9qhk label.svelte-1uu9qhk{display:block}.form-group.svelte-1uu9qhk .label-text.svelte-1uu9qhk,.form-group.svelte-1uu9qhk .form-label.svelte-1uu9qhk{display:block;font-size:12px;color:#666;margin-bottom:4px}.form-group.svelte-1uu9qhk input.svelte-1uu9qhk,.form-group.svelte-1uu9qhk select.svelte-1uu9qhk{width:100%;padding:8px 12px;border:1px solid #2a2a3c;background:#13131f;color:#e4e4ef;border-radius:4px;font-size:14px;font-family:inherit}.form-group.svelte-1uu9qhk select.svelte-1uu9qhk{-moz-appearance:none;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23888' d='M2 4l4 4 4-4'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;padding-right:32px}.form-group.svelte-1uu9qhk input.svelte-1uu9qhk:focus,.form-group.svelte-1uu9qhk select.svelte-1uu9qhk:focus{outline:none;border-color:#6366f1}.modal-actions.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;gap:8px;justify-content:flex-end;margin-top:16px}.assign-search.svelte-1uu9qhk.svelte-1uu9qhk{position:relative}.assign-search-results.svelte-1uu9qhk.svelte-1uu9qhk{position:absolute;left:0;right:0;top:100%;z-index:110;margin-top:4px;background:#1a1a28;border:1px solid #2a2a3c;border-radius:6px;max-height:220px;overflow-y:auto}.assign-search-result.svelte-1uu9qhk.svelte-1uu9qhk{width:100%;display:flex;justify-content:space-between;gap:12px;padding:8px 10px;border:0;border-bottom:1px solid #24243a;background:transparent;color:#e4e4ef;text-align:left;cursor:pointer;font-family:inherit}.assign-search-result.svelte-1uu9qhk.svelte-1uu9qhk:hover{background:#222238}.assign-search-result.svelte-1uu9qhk span.svelte-1uu9qhk:last-child{color:#8888a0;font-size:12px;flex-shrink:0}.assign-hint.svelte-1uu9qhk.svelte-1uu9qhk{color:#8888a0;font-size:11px;margin-top:4px}.assign-status.svelte-1uu9qhk.svelte-1uu9qhk{color:#8888a0;font-size:12px}.btn.svelte-1uu9qhk.svelte-1uu9qhk{padding:8px 16px;border:1px solid #2a2a3c;background:#1a1a28;color:#ccc;border-radius:6px;cursor:pointer;font-size:13px;font-family:inherit;display:inline-flex;align-items:center;gap:6px}.btn.svelte-1uu9qhk svg,.inbox-icon-btn.svelte-1uu9qhk svg{flex-shrink:0}.btn.svelte-1uu9qhk.svelte-1uu9qhk:hover{background:#223}.btn-primary.svelte-1uu9qhk.svelte-1uu9qhk{background:#6366f1;border-color:#6366f1;color:#fff}.btn-primary.svelte-1uu9qhk.svelte-1uu9qhk:hover{background:#4f46e5}.btn.svelte-1uu9qhk.svelte-1uu9qhk:disabled{opacity:.4;cursor:not-allowed}.btn-sm.svelte-1uu9qhk.svelte-1uu9qhk{padding:4px 10px;font-size:12px}.btn-danger.svelte-1uu9qhk.svelte-1uu9qhk{color:#ff6b6b;border-color:#4a2222}.btn-danger.svelte-1uu9qhk.svelte-1uu9qhk:hover{background:#3a2222}.settings-section select,.settings-section input[type=text],.settings-section input[type=url],.settings-section input[type=number],.settings-section input[type=password]{appearance:none;-webkit-appearance:none;-moz-appearance:none;width:100%;padding:.5rem .75rem;background:#13131f;border:1px solid #2a2a3e;border-radius:6px;color:#e0e0e0;font-size:.9rem;font-family:inherit;transition:border-color .15s,box-shadow .15s}.settings-section select{padding-right:2rem;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23888' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .6rem center;background-size:.85rem}.settings-section select:hover,.settings-section input:hover{border-color:#3a3a5e}.settings-section select:focus,.settings-section input:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 2px #6366f133}.settings-section select:disabled,.settings-section input:disabled{opacity:.45;cursor:not-allowed;border-color:#2a2a3e}.settings-section select option{background:#1e1e2e;color:#e0e0e0}.template-cards.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;flex-direction:column;gap:6px;margin-bottom:8px}.template-card.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;align-items:center;gap:12px;padding:10px 14px;border:1px solid #2a2a3c;background:#13131f;color:#ccc;border-radius:8px;cursor:pointer;font-size:13px;font-family:inherit;width:100%;text-align:left}.template-card.svelte-1uu9qhk.svelte-1uu9qhk:hover{background:#1e1e30;border-color:#3a3a5c}.template-card.selected.svelte-1uu9qhk.svelte-1uu9qhk{background:#2a2a50;border-color:#6366f1;color:#e4e4ef}.template-card-text.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;flex-direction:column;gap:2px;min-width:0}.template-card-title.svelte-1uu9qhk.svelte-1uu9qhk{font-weight:500}.template-card-desc.svelte-1uu9qhk.svelte-1uu9qhk{font-size:11px;color:#888}.activity-tab.svelte-1uu9qhk.svelte-1uu9qhk{padding:24px}.activity-events.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;flex-direction:column;gap:2px}.activity-event.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:6px;font-size:13px;color:#b0b0c0;cursor:pointer}.activity-event.svelte-1uu9qhk.svelte-1uu9qhk:hover{background:#1a1a28;color:#e4e4ef}.activity-event-icon.svelte-1uu9qhk.svelte-1uu9qhk{width:18px;text-align:center;color:#6366f1;font-size:13px;flex-shrink:0}.activity-event-title.svelte-1uu9qhk.svelte-1uu9qhk{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.activity-event-path.svelte-1uu9qhk.svelte-1uu9qhk{max-width:240px;color:#8ea0d8;font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.activity-event-type.svelte-1uu9qhk.svelte-1uu9qhk{font-size:11px;color:#666;flex-shrink:0}.activity-event-target.svelte-1uu9qhk.svelte-1uu9qhk{font-size:10px;color:#555;background:#1e1e2e;padding:1px 6px;border-radius:8px;flex-shrink:0}.activity-event-time.svelte-1uu9qhk.svelte-1uu9qhk{font-size:11px;color:#555;margin-left:8px;flex-shrink:0}.activity-feed.svelte-1uu9qhk.svelte-1uu9qhk{padding:24px;overflow-y:auto;flex:1}.activity-feed-events.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;flex-direction:column;gap:2px}.activity-feed-event.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;align-items:flex-start;gap:10px;padding:8px 12px;border-radius:8px;cursor:pointer}.activity-feed-event.svelte-1uu9qhk.svelte-1uu9qhk:hover{background:#1a1a28;color:#e4e4ef}.activity-feed-icon.svelte-1uu9qhk.svelte-1uu9qhk{width:20px;text-align:center;color:#6366f1;font-size:14px;flex-shrink:0;margin-top:1px}.activity-feed-body.svelte-1uu9qhk.svelte-1uu9qhk{flex:1;min-width:0}.activity-feed-title.svelte-1uu9qhk.svelte-1uu9qhk{font-size:14px;color:#e4e4ef}.activity-feed-meta.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;align-items:center;gap:8px;margin-top:2px}.activity-feed-type.svelte-1uu9qhk.svelte-1uu9qhk{font-size:11px;color:#666}.activity-feed-target.svelte-1uu9qhk.svelte-1uu9qhk{font-size:10px;color:#555;background:#1e1e2e;padding:1px 6px;border-radius:8px}.activity-feed-time.svelte-1uu9qhk.svelte-1uu9qhk{font-size:11px;color:#555}.journal-filter-section.svelte-1uu9qhk.svelte-1uu9qhk{margin-bottom:12px;padding:12px 16px;background:#1a1a2e;border:1px solid #2a2a3c;border-radius:8px}.journal-filter-heading.svelte-1uu9qhk.svelte-1uu9qhk{font-size:11px;font-weight:600;color:#a5b4fc;text-transform:uppercase;letter-spacing:.3px;margin-bottom:8px}.journal-filters-row.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;flex-wrap:wrap;gap:8px 16px;align-items:flex-end}.journal-filters-row.svelte-1uu9qhk label.svelte-1uu9qhk{display:flex;flex-direction:column;gap:3px;font-size:12px;color:#8888a0}.journal-filters-row.svelte-1uu9qhk input[type=date].svelte-1uu9qhk{padding:5px 8px;border:1px solid #2a2a3c;background:#13131f;color:#e4e4ef;border-radius:4px;font-size:12px;font-family:inherit}.journal-filters-row.svelte-1uu9qhk .checkbox-label.svelte-1uu9qhk{flex-direction:row;align-items:center;gap:6px;cursor:pointer}.journal-filters-row.svelte-1uu9qhk .checkbox-label input.svelte-1uu9qhk{width:auto}.journal-export-section.svelte-1uu9qhk.svelte-1uu9qhk{padding:8px 16px;background:#1a1a2e;border:1px solid #2a2a3c;border-radius:8px}.journal-export-heading.svelte-1uu9qhk.svelte-1uu9qhk{font-size:11px;font-weight:600;color:#a5b4fc;text-transform:uppercase;letter-spacing:.3px;margin-bottom:6px}.journal-export-row.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;gap:8px;align-items:center}.journal-toggle-col.svelte-1uu9qhk.svelte-1uu9qhk{width:32px;min-width:32px;text-align:center;padding:8px 4px!important}.journal-toggle-icon.svelte-1uu9qhk.svelte-1uu9qhk{color:#6366f1;font-size:12px}.worklog-entry.svelte-1uu9qhk.svelte-1uu9qhk{padding:8px 12px;background:#1a1a28;border:1px solid #2a2a3c;border-radius:8px;margin-bottom:6px;cursor:pointer}.worklog-entry.svelte-1uu9qhk.svelte-1uu9qhk:hover{border-color:#3a3a5c}.worklog-entry.expanded.svelte-1uu9qhk.svelte-1uu9qhk{border-color:#6366f1}.worklog-entry-head.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;align-items:center;gap:8px;font-size:13px;color:#e4e4ef}.worklog-toggle.svelte-1uu9qhk.svelte-1uu9qhk{color:#6366f1;font-size:12px;width:16px;text-align:center;flex-shrink:0}.worklog-entry-summary.svelte-1uu9qhk.svelte-1uu9qhk{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.worklog-entry-path.svelte-1uu9qhk.svelte-1uu9qhk{max-width:240px;color:#8ea0d8;font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.worklog-entry-mins.svelte-1uu9qhk.svelte-1uu9qhk{color:#b0b0c8;font-variant-numeric:tabular-nums;white-space:nowrap}.worklog-entry-date.svelte-1uu9qhk.svelte-1uu9qhk{color:#b0b0c0;font-size:12px;white-space:nowrap}.worklog-entry-detail.svelte-1uu9qhk.svelte-1uu9qhk{margin-top:8px;padding-top:8px;border-top:1px solid #2a2a3c;display:flex;flex-direction:column;gap:8px}.worklog-entry-actions.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;gap:8px;justify-content:flex-end}.wl-detail-section.svelte-1uu9qhk.svelte-1uu9qhk{font-size:13px}.wl-detail-label.svelte-1uu9qhk.svelte-1uu9qhk{font-size:11px;font-weight:600;color:#a5b4fc;text-transform:uppercase;letter-spacing:.3px;display:block;margin-bottom:2px}.wl-detail-section.svelte-1uu9qhk p.svelte-1uu9qhk{margin:0;color:#c0c0d0}.wl-tag-billable.svelte-1uu9qhk.svelte-1uu9qhk{font-size:10px;color:#34d399;background:#1a2a1e;padding:1px 6px;border-radius:8px;white-space:nowrap}.wl-tag-approx.svelte-1uu9qhk.svelte-1uu9qhk{font-size:10px;color:#fbbf24;background:#2a2a1a;padding:1px 6px;border-radius:8px;white-space:nowrap}.checkbox-label-inline.svelte-1uu9qhk.svelte-1uu9qhk{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:#e4e4ef;cursor:pointer}.checkbox-label-inline.svelte-1uu9qhk input.svelte-1uu9qhk{width:auto}.note-editor-wrapper.svelte-1uu9qhk.svelte-1uu9qhk{flex:1;display:flex;flex-direction:column;min-height:0;overflow:hidden}.verstak-toast.svelte-1uu9qhk.svelte-1uu9qhk{position:fixed;bottom:24px;left:50%;transform:translate(-50%);background:#1e1e38;border:1px solid #3a3a5c;border-radius:8px;padding:12px 20px;color:#e4e4ef;font-size:13px;z-index:9999;box-shadow:0 4px 20px #0006;animation:svelte-1uu9qhk-toast-in .2s ease-out}@keyframes svelte-1uu9qhk-toast-in{0%{opacity:0;transform:translate(-50%) translateY(8px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.modal-overlay.svelte-1uu9qhk.svelte-1uu9qhk{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:9998}.modal-box.svelte-1uu9qhk.svelte-1uu9qhk{background:#1a1a2e;border:1px solid #2a2a3c;border-radius:10px;padding:24px;width:420px;max-width:90vw;display:flex;flex-direction:column;gap:14px}.modal-box.svelte-1uu9qhk h3.svelte-1uu9qhk{font-size:16px;font-weight:600;color:#e4e4ef;margin:0}.modal-box.svelte-1uu9qhk label.svelte-1uu9qhk{display:flex;flex-direction:column;gap:4px;font-size:12px;color:#888}.modal-box.svelte-1uu9qhk input[type=text].svelte-1uu9qhk{padding:8px 12px;border:1px solid #2a2a3c;border-radius:6px;background:#13131f;color:#e4e4ef;font-size:13px;font-family:inherit;outline:none}.modal-box.svelte-1uu9qhk input[type=text].svelte-1uu9qhk:focus{border-color:#818cf8}.modal-actions.svelte-1uu9qhk.svelte-1uu9qhk{display:flex;gap:8px;justify-content:flex-end;margin-top:4px} diff --git a/cmd/verstak-gui/frontend-dist/index.html b/cmd/verstak-gui/frontend-dist/index.html index 90b20e9..0567b4c 100644 --- a/cmd/verstak-gui/frontend-dist/index.html +++ b/cmd/verstak-gui/frontend-dist/index.html @@ -19,8 +19,8 @@ background: #13131f; } - - + +
    diff --git a/docs/frontend-architecture.md b/docs/frontend-architecture.md index a7785bc..9c8a089 100644 --- a/docs/frontend-architecture.md +++ b/docs/frontend-architecture.md @@ -4,7 +4,7 @@ - **Framework**: Svelte 4 (runes-free, compiler-only) - **Build tool**: Vite 5 -- **GUI shell**: Wails v2 (Go backend + WebKit frontend) +- **GUI shell**: Wails v2 (Go backend + WebKit GTK frontend) - **Language**: Plain JavaScript (no TypeScript in Svelte files — `lang="ts"` is NOT used) ## Source Structure @@ -37,7 +37,11 @@ frontend/src/ markdown/ # Markdown rendering + internal links util/ # Keyboard layout helper components/ + OverviewTab.svelte # Overview tab: meta, quick actions, recent items + files/ + FilesTab.svelte # Files tab: file browser, preview, import, rename notes/ + NotesTab.svelte # Notes tab: note list, create form MarkdownEditor.svelte # Markdown textarea with toolbar MarkdownPreview.svelte # Rendered markdown preview NoteEditorPanel.svelte # Editor + preview layout, public API: insertText() @@ -51,13 +55,59 @@ frontend/src/ 1. **Global UI state**: sidebar (system views, workspace tree), active tab, selected node/section 2. **Lifecycle**: startup checks (GetStartupStatus, VerstakVersion, ListWorkspaceTree), event listeners -3. **Top-level modals**: confirm, rename, import, worklog, inbox assign, link edit, settings, file preview +3. **Top-level modals**: confirm, node rename, import (removed — now in FilesTab), worklog, inbox assign, link edit, settings, trash preview 4. **Cross-cutting concerns**: navigation history (goBack, rememberNavigation), keyboard shortcuts, drag-and-drop orchestration, capture/inbox flow +5. **Note editor lifecycle**: `noteEditor` state, `doOpenNote()`, `saveCurrentNote()`, `closeNoteEditor()`, link modal, internal link picker App.svelte is **NOT** responsible for: -- Individual tab content (Overview, Notes, Files) — these are inlined but should be extracted -- Note editor internals — `NoteEditorPanel.svelte` + `MarkdownEditor.svelte` handle this -- Settings sections — each has its own `Settings*.svelte` +- **Files tab** → `FilesTab.svelte` (owns all file browser state, preview, import, rename) +- **Notes tab list** → `NotesTab.svelte` (owns note list UI, create form; editor stays in App) +- **Overview tab** → `OverviewTab.svelte` (pure display: meta, quick actions, recent items) +- **Settings sections** → each has its own `Settings*.svelte` + +## Component Communication + +### Props (parent → child) +Data flows down via Svelte `export let prop` + +### Events (child → parent) +Children dispatch events via `createEventDispatcher()` + +### Public API (bind:this) +Parent gets imperative handle via `bind:this={ref}` and calls: +- `ref.publicMethod(args)` — guard with optional chaining: `ref?.method?.(args)` + +## Component Reference + +### OverviewTab (`lib/components/OverviewTab.svelte`) +**Props**: `selectedNode`, `notes`, `worklog`, `formatDate`, `nodeKindLabel` +**Events**: `createNote`, `addFile`, `createAction`, `switchTab`, `openNote` +**State**: None (pure display) + +### NotesTab (`lib/components/notes/NotesTab.svelte`) +**Props**: `notes`, `formatDate` +**Events**: `submitCreateNote`({title}), `openNote`({note}), `startRename`({noteId, currentTitle}), `deleteNote`({note}) +**State**: `showCreateNote`, `newNoteTitle` + +### FilesTab (`lib/components/files/FilesTab.svelte`) +**Props**: `selectedNode`, `wailsCall` +**Events**: `openNote`({id, title}), `refreshParent`({nodeId}), `error`({message}) +**Public API** (via bind:this): +- `resetToNode(nodeId)` — reset to root of given node +- `addFile()` — open file picker and import +- `loadFolder(folderId)` — load folder contents +- `openFileById(fileNodeId)` — find and preview file +- `focusItem(nodeId)` — select item by ID +- `handleFilesKeydown(e)` — delegate keyboard handling +- `resetState()` — full reset (on node change) + +**Internal state** (owned by FilesTab, NOT accessible from App): +- `loadingFiles`, `currentFolderId`, `folderStack`, `fileItems` +- `previewItem`, `previewContent`, `previewLoading`, `previewError` +- `clipboard`, `selectedIds`, `dragIds` +- `importing`, `importSummary`, `showImportDialog`, `pendingImportPath`, `pendingImportParent` +- `showRename`, `renameId`, `renameValue`, `renameError` +- `showConfirm`, `confirmTitle`, `confirmMessage`, `confirmAction`, `cancelAction` ## State Ownership Rules @@ -69,32 +119,20 @@ App.svelte is **NOT** responsible for: - `startupStatus`, `startupChecked` - Navigation state: `navHistory`, `restoringHistory` - Trash browser state: `trashInfo`, `trashCount`, `trashSelectedIds`, `trashFolderId`, `trashFolderStack` +- Trash preview: `trashPreviewItem`, `trashPreviewContent`, `trashPreviewLoading`, `trashPreviewError` - Journal state: `journalRows`, `journalSummary`, filters - Worklog modal state: `showWorklogModal`, `wlModal*` - Inbox: `inboxNodes`, `localInboxNodes`, capture state - Links: `links` - Sync: `syncStatus` - `error` (global error banner) +- `notes` (loaded by `loadTabData`, passed to NotesTab and OverviewTab as prop) +- `worklog` (loaded by `loadTabData`, passed to OverviewTab as prop) -### App.svelte must NOT directly own (after extraction): -- Files tab internal state → `FilesTab.svelte` -- Notes tab list UI state → `NotesTab.svelte` -- Overview tab content → `OverviewTab.svelte` - -## Component Communication - -### Props (parent → child) -Data flows down via Svelte `export let prop` - -### Events (child → parent) -Children dispatch events via `createEventDispatcher()` -- Suffix `:` in event names means handler in template: `on:openNote={handler}`, NOT call on mount -- All events should use `e.detail` to pass data - -### Public API (bind:this) -Parent gets imperative handle via `bind:this={ref}` and calls: -- `ref.publicMethod(args)` — guard with optional chaining: `ref?.publicMethod?.(args)` -- Methods are exposed via `export function` in child component +### App.svelte must NOT directly reference: +- Files tab internal state (all in FilesTab) +- Notes tab create form state (showCreateNote, newNoteTitle — in NotesTab) +- Any `fileItems`, `selectedIds`, `currentFolderId`, `folderStack`, etc. ## Services (Wails API) diff --git a/frontend/src/FileTreeRow.svelte b/frontend/src/FileTreeRow.svelte index 4c8cb18..92f26fb 100644 --- a/frontend/src/FileTreeRow.svelte +++ b/frontend/src/FileTreeRow.svelte @@ -88,7 +88,14 @@ } } - function toggleMenu() { + function toggleMenu(e) { + if (e) { + e.stopPropagation() + const rect = e.currentTarget.getBoundingClientRect() + menuX = Math.min(rect.right, window.innerWidth - 240) + menuY = Math.min(rect.bottom, window.innerHeight - 320) + console.log('[FileTreeRow] menu source=button x=' + menuX + ' y=' + menuY) + } menuOpen = !menuOpen } @@ -112,6 +119,7 @@ e.preventDefault() menuX = Math.min(e.clientX, window.innerWidth - 240) menuY = Math.min(e.clientY, window.innerHeight - 320) + console.log('[FileTreeRow] menu source=contextmenu x=' + menuX + ' y=' + menuY) menuOpen = true } diff --git a/frontend/src/lib/FilePreviewModal.svelte b/frontend/src/lib/FilePreviewModal.svelte index 6465b8a..9a8af2d 100644 --- a/frontend/src/lib/FilePreviewModal.svelte +++ b/frontend/src/lib/FilePreviewModal.svelte @@ -1,6 +1,7 @@ -
    +
    { if (e.key === 'Enter' || e.key === ' ') handleClick(e) }}> {#if error}

    ⚠️ {t('note.preview.error')}

    diff --git a/frontend/src/lib/components/notes/NotesTab.svelte b/frontend/src/lib/components/notes/NotesTab.svelte index bb5d2e4..dbef800 100644 --- a/frontend/src/lib/components/notes/NotesTab.svelte +++ b/frontend/src/lib/components/notes/NotesTab.svelte @@ -99,7 +99,7 @@ .note-card-info { flex: 1; min-width: 0; } .note-card-title { font-size: 14px; font-weight: 500; margin-bottom: 4px; } .note-card-date { font-size: 11px; color: #555; } - .note-card-actions { display: flex; gap: 4px; opacity: 0; transition: opacity 0.12s; } + .note-card-actions { display: flex; gap: 4px; opacity: 0; transition: opacity 0.12s; position: absolute; top: 8px; right: 8px; } .note-card:hover .note-card-actions { opacity: 1; } .note-action-btn { display: inline-flex; align-items: center; justify-content: center; width: 24px; height: 24px; border: none; border-radius: 4px; background: transparent; color: #666; cursor: pointer; transition: background 0.12s, color 0.12s; } .note-action-btn:hover { background: #2a2a3c; color: #ccc; } @@ -107,4 +107,14 @@ .empty-state { display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 48px 24px; text-align: center; } .empty-state p { margin: 0; font-size: 14px; color: #666; } .empty-state .hint { font-size: 12px; color: #555; margin-top: 6px; } + + /* Button styles (mirroring global App.svelte .btn) */ + .btn { padding: 8px 16px; border: 1px solid #2a2a3c; background: #1a1a28; color: #ccc; border-radius: 6px; cursor: pointer; font-size: 13px; font-family: inherit; display: inline-flex; align-items: center; gap: 6px; } + .btn:hover { background: #222233; } + .btn-primary { background: #6366f1; border-color: #6366f1; color: #fff; } + .btn-primary:hover { background: #4f46e5; } + .btn:disabled { opacity: 0.4; cursor: not-allowed; } + .btn-sm { padding: 4px 10px; font-size: 12px; } + .btn-danger { color: #ff6b6b; border-color: #4a2222; } + .btn-danger:hover { background: #3a2222; } diff --git a/frontend/src/lib/fileUtils.js b/frontend/src/lib/fileUtils.js index 0186f9e..a8e8db1 100644 --- a/frontend/src/lib/fileUtils.js +++ b/frontend/src/lib/fileUtils.js @@ -78,8 +78,8 @@ export function getFileKind(item) { } const imageMimes = ['image/jpeg','image/png','image/gif','image/webp','image/bmp','image/tiff','image/avif','image/svg+xml'] -const textMimes = ['text/plain','text/html','text/css','text/javascript','application/json','application/xml','application/x-yaml','text/x-shellscript'] -const codeNames = ['txt','log','conf','ini','yaml','yml','json','xml','csv','sh','py','js','ts','css','html','md','markdown','cfg'] +const textMimes = ['text/plain','text/html','text/css','text/javascript','application/json','application/xml','application/x-yaml','text/x-shellscript','text/csv','text/tab-separated-values','text/x-python','text/x-java','text/x-c','text/x-cpp','text/x-ruby','text/x-perl','text/x-php','text/x-go','text/x-rust','text/markdown'] +const codeNames = ['txt','log','conf','ini','yaml','yml','json','xml','csv','tsv','sh','py','js','ts','css','html','md','markdown','cfg','env','gitignore','dockerignore','toml','bat','cmd','ps1','sql','graphql','proto','gradle','cmake','makefile','dockerfile','vbs','lua','r','m','scala','kt','swift','dart','elm','erl','ex','exs','fs','fsi','fsx','hs','lhs','ml','mli','pl','pm','rb','rake','rs','scm','ss','clj','cljs','cljc','edn','lisp','lsp','el','vim','vimrc','zsh','bash','fish','csh','ksh','tcsh','awk','sed','make','mk','nim','nims','d','go','java','svelte','vue','jsx','tsx','coffee','litcoffee','scss','sass','less','styl','properties','dotenv','editorconfig','gitattributes','browserslistrc','htaccess','nginx','shader','glsl','vert','frag','asm','h','hpp','cxx','cc','cpp','capnp','flatbuf','prisma','dtd','xsl','xsd','sch','svg','vtt','srt','sub','m3u','m3u8','pls','xspf','cue','toc','nfo','diz','readme','changelog','copying','license','authors','contributors','setup','config','strings','po','pot','locale','translation'] const imageExts = ['jpg','jpeg','png','gif','webp','bmp','tiff','tif','avif','svg']