From 88eb99e9afeeebe45653b8355c2eef800ab9ea41 Mon Sep 17 00:00:00 2001
From: mirivlad
Date: Mon, 15 Jun 2026 10:39:44 +0800
Subject: [PATCH] fix: verstak:// links in preview, case-insensitive search,
keyboard layout swap
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
1. Fix verstak:// links rendered as blocked/strikethrough in markdown preview:
- Changed href from 'javascript:void(0)' to hash-based '#verstak-type-id'
- DOMPurify no longer strips the link; click handler uses data-verstak-href
- CSS already handles .md-link--internal with cyan color, no strikethrough
2. Add markdown label escaping for internal link picker:
- New escapeMarkdownLabel() in markdown.ts escapes [ ] ( )
- Applied in InternalLinkPicker.selectResult() before inserting markdown
3. Fix case-insensitive search for RU/EN:
- Add title_lower column (migration 019) populated by Go strings.ToLower
- BackfillTitleLower() runs after migrations to populate existing rows
- Search() now queries title_lower with Go-level lowercase (Unicode-aware)
- insertNode() and UpdateTitle() populate title_lower automatically
- New migration 019 + BackfillTitleLower in storage.go
- Tests: TestSearchCaseInsensitive, TestSearchFindsCreatedNode
4. Add keyboard layout swap search support:
- New keyboardLayout.ts utility with RU↔EN QWERTY mapping
- expandKeyboardVariants() generates original + swapped + lowercased variants
- InternalLinkPicker.search() queries all variants in parallel, deduplicates by ID
- Examples: dthcnfr → верстак, руддщ → hello
Files changed:
- markdown.ts: hash href + escapeMarkdownLabel export
- InternalLinkPicker.svelte: label escaping + layout swap search
- keyboardLayout.ts: new RU/EN layout swap utility
- repository.go: title_lower in Search/insertNode/UpdateTitle
- storage.go: migration019 + BackfillTitleLower
- migrations_019.sql.go: new migration
- search_test.go, repository_test.go: new tests
---
.../{main-C5mYAmha.js => main-Dn9NERfF.js} | 48 ++++++------
cmd/verstak-gui/frontend-dist/index.html | 2 +-
.../notes/InternalLinkPicker.svelte | 37 +++++++--
frontend/src/lib/markdown/markdown.ts | 13 +++-
frontend/src/lib/util/keyboardLayout.ts | 77 +++++++++++++++++++
internal/core/nodes/repository.go | 16 ++--
internal/core/nodes/repository_test.go | 43 +++++++++++
internal/core/nodes/search_test.go | 23 ++++++
internal/core/storage/migrations_019.sql.go | 8 ++
internal/core/storage/storage.go | 38 +++++++++
10 files changed, 264 insertions(+), 41 deletions(-)
rename cmd/verstak-gui/frontend-dist/assets/{main-C5mYAmha.js => main-Dn9NERfF.js} (59%)
create mode 100644 frontend/src/lib/util/keyboardLayout.ts
create mode 100644 internal/core/nodes/search_test.go
create mode 100644 internal/core/storage/migrations_019.sql.go
diff --git a/cmd/verstak-gui/frontend-dist/assets/main-C5mYAmha.js b/cmd/verstak-gui/frontend-dist/assets/main-Dn9NERfF.js
similarity index 59%
rename from cmd/verstak-gui/frontend-dist/assets/main-C5mYAmha.js
rename to cmd/verstak-gui/frontend-dist/assets/main-Dn9NERfF.js
index 7bf577f..52be7ec 100644
--- a/cmd/verstak-gui/frontend-dist/assets/main-C5mYAmha.js
+++ b/cmd/verstak-gui/frontend-dist/assets/main-Dn9NERfF.js
@@ -1,23 +1,23 @@
-var xh=Object.defineProperty;var $h=(n,e,t)=>e in n?xh(n,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):n[e]=t;var et=(n,e,t)=>$h(n,typeof e!="symbol"?e+"":e,t);(function(){const e=document.createElement("link").relList;if(e&&e.supports&&e.supports("modulepreload"))return;for(const s of document.querySelectorAll('link[rel="modulepreload"]'))l(s);new MutationObserver(s=>{for(const o of s)if(o.type==="childList")for(const i of o.addedNodes)i.tagName==="LINK"&&i.rel==="modulepreload"&&l(i)}).observe(document,{childList:!0,subtree:!0});function t(s){const o={};return s.integrity&&(o.integrity=s.integrity),s.referrerPolicy&&(o.referrerPolicy=s.referrerPolicy),s.crossOrigin==="use-credentials"?o.credentials="include":s.crossOrigin==="anonymous"?o.credentials="omit":o.credentials="same-origin",o}function l(s){if(s.ep)return;s.ep=!0;const o=t(s);fetch(s.href,o)}})();function se(){}function e_(n,e){for(const t in e)n[t]=e[t];return n}function od(n){return n()}function vr(){return Object.create(null)}function Te(n){n.forEach(od)}function On(n){return typeof n=="function"}function ft(n,e){return n!=n?e==e:n!==e||n&&typeof n=="object"||typeof n=="function"}let Ns;function Fl(n,e){return n===e?!0:(Ns||(Ns=document.createElement("a")),Ns.href=e,n===Ns.href)}function t_(n){return Object.keys(n).length===0}function n_(n,e,t,l){if(n){const s=rd(n,e,t,l);return n[0](s)}}function rd(n,e,t,l){return n[1]&&l?e_(t.ctx.slice(),n[1](l(e))):t.ctx}function l_(n,e,t,l){if(n[2]&&l){const s=n[2](l(t));if(e.dirty===void 0)return s;if(typeof s=="object"){const o=[],i=Math.max(e.dirty.length,s.length);for(let c=0;c32){const e=[],t=n.ctx.length/32;for(let l=0;ln.removeEventListener(e,t,l)}function Ys(n){return function(e){return e.preventDefault(),n.call(this,e)}}function He(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 Ul(n){return n===""?null:+n}function o_(n){return Array.from(n.childNodes)}function Q(n,e){e=""+e,n.data!==e&&(n.data=e)}function Ie(n,e){n.value=e??""}function ln(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 s=n.$$.callbacks[e];if(s){const o=r_(e,t,{cancelable:l});return s.slice().forEach(i=>{i.call(n,o)}),!o.defaultPrevented}return!0}}function Ji(n,e){const t=n.$$.callbacks[e.type];t&&t.slice().forEach(l=>l.call(this,e))}const Pl=[],Dn=[];let Bl=[];const yr=[],ad=Promise.resolve();let Ui=!1;function cd(){Ui||(Ui=!0,ad.then(ud))}function a_(){return cd(),ad}function _l(n){Bl.push(n)}const Ni=new Set;let Il=0;function ud(){if(Il!==0)return;const n=os;do{try{for(;Iln.indexOf(l)===-1?e.push(l):t.push(l)),t.forEach(l=>l()),Bl=e}const Bs=new Set;let ml;function Tt(){ml={r:0,c:[],p:ml}}function St(){ml.r||Te(ml.c),ml=ml.p}function he(n,e){n&&n.i&&(Bs.delete(n),n.i(e))}function ye(n,e,t,l){if(n&&n.o){if(Bs.has(n))return;Bs.add(n),ml.c.push(()=>{Bs.delete(n),l&&(t&&n.d(1),l())}),n.o(e)}else l&&l()}function ve(n){return(n==null?void 0:n.length)!==void 0?n:Array.from(n)}function fd(n,e){ye(n,1,1,()=>{e.delete(n.key)})}function dd(n,e,t,l,s,o,i,c,u,d,m,g){let h=n.length,_=o.length,b=h;const k={};for(;b--;)k[n[b].key]=b;const E=[],w=new Map,T=new Map,N=[];for(b=_;b--;){const R=g(s,o,b),L=t(R);let B=i.get(L);B?N.push(()=>B.p(R,e)):(B=d(L,R),B.c()),w.set(L,E[b]=B),L in k&&T.set(L,Math.abs(b-k[L]))}const A=new Set,I=new Set;function M(R){he(R,1),R.m(c,m),i.set(R.key,R),m=R.first,_--}for(;h&&_;){const R=E[_-1],L=n[h-1],B=R.key,z=L.key;R===L?(m=R.first,h--,_--):w.has(z)?!i.has(B)||A.has(B)?M(R):I.has(z)?h--:T.get(B)>T.get(z)?(I.add(B),M(R)):(A.add(z),h--):(u(L,i),h--)}for(;h--;){const R=n[h];w.has(R.key)||u(R,i)}for(;_;)M(E[_-1]);return Te(N),E}function Qe(n){n&&n.c()}function Ye(n,e,t){const{fragment:l,after_update:s}=n.$$;l&&l.m(e,t),_l(()=>{const o=n.$$.on_mount.map(od).filter(On);n.$$.on_destroy?n.$$.on_destroy.push(...o):Te(o),n.$$.on_mount=[]}),s.forEach(_l)}function Xe(n,e){const t=n.$$;t.fragment!==null&&(u_(t.after_update),Te(t.on_destroy),t.fragment&&t.fragment.d(e),t.on_destroy=t.fragment=null,t.ctx=[])}function f_(n,e){n.$$.dirty[0]===-1&&(Pl.push(n),cd(),n.$$.dirty.fill(0)),n.$$.dirty[e/31|0]|=1<{const b=_.length?_[0]:h;return d.ctx&&s(d.ctx[g],d.ctx[g]=b)&&(!d.skip_bound&&d.bound[g]&&d.bound[g](b),m&&f_(n,g)),h}):[],d.update(),m=!0,Te(d.before_update),d.fragment=l?l(d.ctx):!1,e.target){if(e.hydrate){const g=o_(e.target);d.fragment&&d.fragment.l(g),g.forEach(S)}else d.fragment&&d.fragment.c();e.intro&&he(n.$$.fragment),Ye(n,e.target,e.anchor),ud()}is(u)}class pt{constructor(){et(this,"$$");et(this,"$$set")}$destroy(){Xe(this,1),this.$destroy=se}$on(e,t){if(!On(t))return se;const l=this.$$.callbacks[e]||(this.$$.callbacks[e]=[]);return l.push(t),()=>{const s=l.indexOf(t);s!==-1&&l.splice(s,1)}}$set(e){this.$$set&&!t_(e)&&(this.$$.skip_bound=!0,this.$$set(e),this.$$.skip_bound=!1)}}const d_="4";typeof window<"u"&&(window.__svelte||(window.__svelte={v:new Set})).v.add(d_);function p_(n){let e,t;return{c(){e=oe("path"),t=oe("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,s){C(l,e,s),C(l,t,s)},d(l){l&&(S(e),S(t))}}}function m_(n){let e,t,l,s,o;return{c(){e=oe("path"),t=oe("polyline"),l=oe("line"),s=oe("line"),o=oe("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(s,"x1","16"),r(s,"y1","17"),r(s,"x2","8"),r(s,"y2","17"),r(o,"points","10 9 9 9 8 9")},m(i,c){C(i,e,c),C(i,t,c),C(i,l,c),C(i,s,c),C(i,o,c)},d(i){i&&(S(e),S(t),S(l),S(s),S(o))}}}function g_(n){let e,t;return{c(){e=oe("polyline"),t=oe("polyline"),r(e,"points","16 18 22 12 16 6"),r(t,"points","8 6 2 12 8 18")},m(l,s){C(l,e,s),C(l,t,s)},d(l){l&&(S(e),S(t))}}}function h_(n){let e,t,l,s;return{c(){e=oe("path"),t=oe("polyline"),l=oe("line"),s=oe("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(s,"x","10"),r(s,"y","12"),r(s,"width","4"),r(s,"height","4"),r(s,"rx","1")},m(o,i){C(o,e,i),C(o,t,i),C(o,l,i),C(o,s,i)},d(o){o&&(S(e),S(t),S(l),S(s))}}}function __(n){let e,t,l,s,o;return{c(){e=oe("path"),t=oe("polyline"),l=oe("line"),s=oe("line"),o=oe("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(s,"x1","9"),r(s,"y1","15"),r(s,"x2","13"),r(s,"y2","15"),r(o,"x1","12"),r(o,"y1","15"),r(o,"x2","12"),r(o,"y2","18")},m(i,c){C(i,e,c),C(i,t,c),C(i,l,c),C(i,s,c),C(i,o,c)},d(i){i&&(S(e),S(t),S(l),S(s),S(o))}}}function b_(n){let e,t,l,s,o,i;return{c(){e=oe("path"),t=oe("polyline"),l=oe("line"),s=oe("line"),o=oe("line"),i=oe("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(s,"x1","8"),r(s,"y1","16"),r(s,"x2","16"),r(s,"y2","16"),r(o,"x1","8"),r(o,"y1","14"),r(o,"x2","12"),r(o,"y2","14"),r(i,"x1","12"),r(i,"y1","12"),r(i,"x2","12"),r(i,"y2","18")},m(c,u){C(c,e,u),C(c,t,u),C(c,l,u),C(c,s,u),C(c,o,u),C(c,i,u)},d(c){c&&(S(e),S(t),S(l),S(s),S(o),S(i))}}}function v_(n){let e,t,l,s;return{c(){e=oe("path"),t=oe("polyline"),l=oe("line"),s=oe("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(s,"x1","16"),r(s,"y1","17"),r(s,"x2","8"),r(s,"y2","17")},m(o,i){C(o,e,i),C(o,t,i),C(o,l,i),C(o,s,i)},d(o){o&&(S(e),S(t),S(l),S(s))}}}function k_(n){let e,t,l,s,o;return{c(){e=oe("path"),t=oe("polyline"),l=oe("line"),s=oe("line"),o=oe("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(s,"x1","8"),r(s,"y1","16"),r(s,"x2","16"),r(s,"y2","16"),r(o,"x1","8"),r(o,"y1","14"),r(o,"x2","12"),r(o,"y2","14")},m(i,c){C(i,e,c),C(i,t,c),C(i,l,c),C(i,s,c),C(i,o,c)},d(i){i&&(S(e),S(t),S(l),S(s),S(o))}}}function y_(n){let e,t,l;return{c(){e=oe("path"),t=oe("circle"),l=oe("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(s,o){C(s,e,o),C(s,t,o),C(s,l,o)},d(s){s&&(S(e),S(t),S(l))}}}function w_(n){let e,t;return{c(){e=oe("rect"),t=oe("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,s){C(l,e,s),C(l,t,s)},d(l){l&&(S(e),S(t))}}}function E_(n){let e,t,l;return{c(){e=oe("rect"),t=oe("circle"),l=oe("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(s,o){C(s,e,o),C(s,t,o),C(s,l,o)},d(s){s&&(S(e),S(t),S(l))}}}function T_(n){let e;return{c(){e=oe("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 S_(n){let e;function t(o,i){return o[0]==="folder"?T_:o[0]==="image"?E_:o[0]==="video"?w_:o[0]==="audio"?y_:o[0]==="pdf"?k_:o[0]==="document"?v_:o[0]==="spreadsheet"?b_:o[0]==="presentation"?__:o[0]==="archive"?h_:o[0]==="code"?g_:o[0]==="text"?m_:p_}let l=t(n),s=l(n);return{c(){e=oe("svg"),s.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,i){C(o,e,i),s.m(e,null)},p(o,[i]){l!==(l=t(o))&&(s.d(1),s=l(o),s&&(s.c(),s.m(e,null))),i&2&&r(e,"width",o[1]),i&2&&r(e,"height",o[1])},i:se,o:se,d(o){o&&S(e),s.d()}}}function C_(n,e,t){let{kind:l="generic"}=e,{size:s=20}=e;return n.$$set=o=>{"kind"in o&&t(0,l=o.kind),"size"in o&&t(1,s=o.size)},[l,s]}class pd extends pt{constructor(e){super(),dt(this,e,C_,S_,ft,{kind:0,size:1})}}const A_={"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.caseNotImplemented":"Переход к делу ещё не реализован","note.internal.noteNotImplemented":"Переход к заметке ещё не реализован","note.internal.fileNotImplemented":"Переход к файлу ещё не реализован","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":"Срок действия токена истёк"},N_={"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"},wr={ru:A_,en:N_};let Er="ru";function v(n,e){var s;const t=wr[Er];let l=t==null?void 0:t[n];if(l==null&&Er!=="ru"&&(l=(s=wr.ru)==null?void 0:s[n]),l==null&&(l=n),e!=null)for(const[o,i]of Object.entries(e))l=l.replace(`{${o}}`,String(i));return l}function Us(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 Hi={"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 Tr(n){return n?Hi[n]||n:v("mime.unknown")}function R_(n){if(n.type==="folder")return v("mime.folder");const e=(n.mime||"").toLowerCase();if(Hi[e])return Hi[e];const l=(n.name||"").toLowerCase().split(".").pop();return l?l.toUpperCase():v("mime.file")}function md(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 gd=["image/jpeg","image/png","image/gif","image/webp","image/bmp","image/tiff","image/avif","image/svg+xml"],hd=["text/plain","text/html","text/css","text/javascript","application/json","application/xml","application/x-yaml","text/x-shellscript"],_d=["txt","log","conf","ini","yaml","yml","json","xml","csv","sh","py","js","ts","css","html","md","markdown","cfg"],bd=["jpg","jpeg","png","gif","webp","bmp","tiff","tif","avif","svg"];function Ri(n){if(n.type==="folder")return!1;const e=(n.mime||"").toLowerCase(),l=(n.name||"").toLowerCase().split(".").pop();return!!(gd.includes(e)||bd.includes(l)||e.includes("pdf")||hd.includes(e)||_d.includes(l))}function vd(n){const e=(n.mime||"").toLowerCase(),l=(n.name||"").toLowerCase().split(".").pop();return gd.includes(e)||bd.includes(l)}function kd(n){const e=(n.mime||"").toLowerCase(),l=(n.name||"").toLowerCase().split(".").pop();return hd.includes(e)||_d.includes(l)&&l!=="md"&&l!=="markdown"}function yd(n){return(n.mime||"").toLowerCase().includes("pdf")}function wd(n){const e=(n.name||"").toLowerCase();return e.endsWith(".md")||e.endsWith(".markdown")}function I_(n){return vd(n)||yd(n)}function M_(n){return kd(n)||wd(n)}const{window:L_}=Yi;function O_(n){let e,t,l,s=Us(n[0].size)+"",o;return{c(){e=f("span"),e.textContent="·",t=y(),l=f("span"),o=j(s),r(e,"class","meta-sep svelte-1skuef2")},m(i,c){C(i,e,c),C(i,t,c),C(i,l,c),a(l,o)},p(i,c){c[0]&1&&s!==(s=Us(i[0].size)+"")&&Q(o,s)},d(i){i&&(S(e),S(t),S(l))}}}function D_(n){let e,t,l,s,o;return{c(){e=f("button"),e.innerHTML=' ',t=y(),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(i,c){C(i,e,c),C(i,t,c),C(i,l,c),s||(o=[O(e,"click",He(n[30])),O(l,"click",He(n[11]))],s=!0)},p:se,d(i){i&&(S(e),S(t),S(l)),s=!1,Te(o)}}}function P_(n){let e,t,l,s,o,i,c;return{c(){e=f("button"),e.innerHTML=' ',t=y(),l=f("button"),l.innerHTML=' ',s=y(),o=f("button"),o.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(o,"class","action-btn svelte-1skuef2"),r(o,"title",v("file.showInExplorer")),r(o,"aria-label",v("file.showInExplorer"))},m(u,d){C(u,e,d),C(u,t,d),C(u,l,d),C(u,s,d),C(u,o,d),i||(c=[O(e,"click",He(n[29])),O(l,"click",He(n[10])),O(o,"click",He(n[11]))],i=!0)},p:se,d(u){u&&(S(e),S(t),S(l),S(s),S(o)),i=!1,Te(c)}}}function Sr(n){let e,t,l,s,o,i,c,u,d=v("common.open")+"",m,g,h,_,b,k,E,w,T=v("file.openExternal")+"",N,A,I,M,R,L,B=v("file.showInExplorer")+"",z,U,W,K,q,Y,G,D,H,F=v("common.rename")+"",J,Z,X,$,te,ne,de,Ae=v("common.duplicate")+"",Pe,qe,Ne,ee,re,Se,ze,ge,We,mt=v("common.cut")+"",be,it,Oe,Ce,Fe,je,De,Be=v("common.copy")+"",ue,we,x,pe,me,Re,ot,Je,rt,tt=v("common.delete")+"",Ze,Ve,nt;return{c(){e=f("div"),t=y(),l=f("div"),s=f("button"),o=oe("svg"),i=oe("path"),c=oe("circle"),u=y(),m=j(d),g=y(),h=f("button"),_=oe("svg"),b=oe("path"),k=oe("polyline"),E=oe("line"),w=y(),N=j(T),A=y(),I=f("button"),M=oe("svg"),R=oe("path"),L=y(),z=j(B),U=y(),W=f("div"),K=y(),q=f("button"),Y=oe("svg"),G=oe("path"),D=oe("path"),H=y(),J=j(F),Z=y(),X=f("button"),$=oe("svg"),te=oe("rect"),ne=oe("path"),de=y(),Pe=j(Ae),qe=y(),Ne=f("button"),ee=oe("svg"),re=oe("circle"),Se=oe("circle"),ze=oe("line"),ge=oe("line"),We=y(),be=j(mt),it=y(),Oe=f("button"),Ce=oe("svg"),Fe=oe("rect"),je=oe("path"),De=y(),ue=j(Be),we=y(),x=f("div"),pe=y(),me=f("button"),Re=oe("svg"),ot=oe("polyline"),Je=oe("path"),rt=y(),Ze=j(tt),r(e,"class","menu-backdrop svelte-1skuef2"),r(e,"role","presentation"),r(i,"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(s,"class","menu-item svelte-1skuef2"),r(s,"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(E,"x1","10"),r(E,"y1","14"),r(E,"x2","21"),r(E,"y2","3"),r(_,"width","14"),r(_,"height","14"),r(_,"viewBox","0 0 24 24"),r(_,"fill","none"),r(_,"stroke","currentColor"),r(_,"stroke-width","2"),r(_,"stroke-linecap","round"),r(_,"stroke-linejoin","round"),r(h,"class","menu-item svelte-1skuef2"),r(h,"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(M,"width","14"),r(M,"height","14"),r(M,"viewBox","0 0 24 24"),r(M,"fill","none"),r(M,"stroke","currentColor"),r(M,"stroke-width","2"),r(M,"stroke-linecap","round"),r(M,"stroke-linejoin","round"),r(I,"class","menu-item svelte-1skuef2"),r(I,"role","menuitem"),r(W,"class","menu-sep svelte-1skuef2"),r(G,"d","M12 20h9"),r(D,"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(q,"class","menu-item svelte-1skuef2"),r(q,"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(ne,"d","M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1"),r($,"width","14"),r($,"height","14"),r($,"viewBox","0 0 24 24"),r($,"fill","none"),r($,"stroke","currentColor"),r($,"stroke-width","2"),r($,"stroke-linecap","round"),r($,"stroke-linejoin","round"),r(X,"class","menu-item svelte-1skuef2"),r(X,"role","menuitem"),r(re,"cx","6"),r(re,"cy","6"),r(re,"r","3"),r(Se,"cx","6"),r(Se,"cy","18"),r(Se,"r","3"),r(ze,"x1","20"),r(ze,"y1","4"),r(ze,"x2","8.12"),r(ze,"y2","15.88"),r(ge,"x1","8.12"),r(ge,"y1","8.12"),r(ge,"x2","20"),r(ge,"y2","20"),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(Ne,"class","menu-item svelte-1skuef2"),r(Ne,"role","menuitem"),r(Fe,"x","9"),r(Fe,"y","9"),r(Fe,"width","13"),r(Fe,"height","13"),r(Fe,"rx","2"),r(Fe,"ry","2"),r(je,"d","M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1"),r(Ce,"width","14"),r(Ce,"height","14"),r(Ce,"viewBox","0 0 24 24"),r(Ce,"fill","none"),r(Ce,"stroke","currentColor"),r(Ce,"stroke-width","2"),r(Ce,"stroke-linecap","round"),r(Ce,"stroke-linejoin","round"),r(Oe,"class","menu-item svelte-1skuef2"),r(Oe,"role","menuitem"),r(x,"class","menu-sep svelte-1skuef2"),r(ot,"points","3 6 5 6 21 6"),r(Je,"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"),ln(l,"left",n[3]+"px"),ln(l,"top",n[4]+"px"),ln(l,"position","fixed"),r(l,"role","menu"),r(l,"tabindex","-1")},m(fe,Me){C(fe,e,Me),C(fe,t,Me),C(fe,l,Me),a(l,s),a(s,o),a(o,i),a(o,c),a(s,u),a(s,m),a(l,g),a(l,h),a(h,_),a(_,b),a(_,k),a(_,E),a(h,w),a(h,N),a(l,A),a(l,I),a(I,M),a(M,R),a(I,L),a(I,z),a(l,U),a(l,W),a(l,K),a(l,q),a(q,Y),a(Y,G),a(Y,D),a(q,H),a(q,J),a(l,Z),a(l,X),a(X,$),a($,te),a($,ne),a(X,de),a(X,Pe),a(l,qe),a(l,Ne),a(Ne,ee),a(ee,re),a(ee,Se),a(ee,ze),a(ee,ge),a(Ne,We),a(Ne,be),a(l,it),a(l,Oe),a(Oe,Ce),a(Ce,Fe),a(Ce,je),a(Oe,De),a(Oe,ue),a(l,we),a(l,x),a(l,pe),a(l,me),a(me,Re),a(Re,ot),a(Re,Je),a(me,rt),a(me,Ze),Ve||(nt=[O(e,"click",He(n[19])),O(s,"click",n[17]),O(h,"click",n[10]),O(I,"click",n[11]),O(q,"click",n[13]),O(X,"click",n[14]),O(Ne,"click",n[15]),O(Oe,"click",n[16]),O(me,"click",n[12]),O(l,"click",He(n[28])),O(l,"keydown",n[31])],Ve=!0)},p(fe,Me){Me[0]&8&&ln(l,"left",fe[3]+"px"),Me[0]&16&&ln(l,"top",fe[4]+"px")},d(fe){fe&&(S(e),S(t),S(l)),Ve=!1,Te(nt)}}}function z_(n){let e,t,l,s,o,i,c=n[0].name+"",u,d,m,g,h,_,b,k,E,w,T,N,A,I,M,R,L,B,z,U,W,K;l=new pd({props:{kind:n[6],size:22}});let q=!n[7]&&O_(n);function Y(F,J){return F[7]?D_:P_}let D=Y(n)(n),H=n[2]&&Sr(n);return{c(){e=f("div"),t=f("div"),Qe(l.$$.fragment),s=y(),o=f("div"),i=f("div"),u=j(c),m=y(),g=f("div"),h=f("span"),h.textContent=`${n[8]}`,_=y(),q&&q.c(),b=y(),k=f("div"),D.c(),E=y(),w=f("button"),T=oe("svg"),N=oe("circle"),A=oe("circle"),I=oe("circle"),M=y(),R=f("button"),R.innerHTML=' ',B=y(),H&&H.c(),z=ht(),r(t,"class","file-row-icon svelte-1skuef2"),r(i,"class","file-row-name svelte-1skuef2"),r(i,"title",d=n[0].name),r(g,"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(w,"class","action-btn svelte-1skuef2"),r(w,"title",v("file.more")),r(w,"aria-label",v("file.more")),r(w,"aria-expanded",n[2]),r(R,"class","action-btn action-btn-danger svelte-1skuef2"),r(R,"title",v("common.delete")),r(R,"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",L=n[7]?v("file.ariaFolder")+" "+n[0].name:v("file.ariaFile")+" "+n[0].name),ce(e,"file-row--selected",n[1])},m(F,J){C(F,e,J),a(e,t),Ye(l,t,null),a(e,s),a(e,o),a(o,i),a(i,u),a(o,m),a(o,g),a(g,h),a(g,_),q&&q.m(g,null),a(e,b),a(e,k),D.m(k,null),a(k,E),a(k,w),a(w,T),a(T,N),a(T,A),a(T,I),a(k,M),a(k,R),C(F,B,J),H&&H.m(F,J),C(F,z,J),U=!0,W||(K=[O(L_,"click",n[19]),O(w,"click",He(n[18])),O(R,"click",He(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])],W=!0)},p(F,J){(!U||J[0]&1)&&c!==(c=F[0].name+"")&&Q(u,c),(!U||J[0]&1&&d!==(d=F[0].name))&&r(i,"title",d),F[7]||q.p(F,J),D.p(F,J),(!U||J[0]&4)&&r(w,"aria-expanded",F[2]),(!U||J[0]&1&&L!==(L=F[7]?v("file.ariaFolder")+" "+F[0].name:v("file.ariaFile")+" "+F[0].name))&&r(e,"aria-label",L),(!U||J[0]&2)&&ce(e,"file-row--selected",F[1]),F[2]?H?H.p(F,J):(H=Sr(F),H.c(),H.m(z.parentNode,z)):H&&(H.d(1),H=null)},i(F){U||(he(l.$$.fragment,F),U=!0)},o(F){ye(l.$$.fragment,F),U=!1},d(F){F&&(S(e),S(B),S(z)),Xe(l),q&&q.d(),D.d(),H&&H.d(F),W=!1,Te(K)}}}function B_(n,e,t){let{item:l}=e,{selected:s=!1}=e,{onDragStart:o}=e,{onDragOver:i}=e,{onDrop:c}=e;const u=Zn(),d=md(l),m=l.type==="folder",g=R_(l);let h=!1,_=0,b=0,k=null;function E(J){J.ctrlKey||J.metaKey?u("toggleSelect",l.id):J.shiftKey?u("rangeSelect",l.id):k?(clearTimeout(k),k=null,m?u("navigate",l.id):u("preview",l)):k=setTimeout(()=>{k=null,u("selectOne",l.id)},250)}function w(){u("openExternal",l.fileId)}function T(){t(2,h=!1),u("showInFolder",l.nodeId||l.id)}function N(){t(2,h=!1),u("delete",{id:l.id,type:l.type})}function A(){t(2,h=!1),u("rename",{id:l.id,name:l.name})}function I(){t(2,h=!1),u("duplicate",l.id)}function M(){t(2,h=!1),u("cut",l.id)}function R(){t(2,h=!1),u("copy",l.id)}function L(){t(2,h=!1),m?u("navigate",l.id):u("preview",l)}function B(){t(2,h=!h)}function z(){t(2,h=!1)}function U(J){o&&o(J,l.id)}function W(J){i&&m&&i(J,l.id)}function K(J){c&&m&&c(J,l.id)}function q(J){J.preventDefault(),t(3,_=Math.min(J.clientX,window.innerWidth-240)),t(4,b=Math.min(J.clientY,window.innerHeight-320)),t(2,h=!0)}function Y(J){(J.key==="Enter"||J.key===" ")&&(J.preventDefault(),E(J))}function G(J){Ji.call(this,n,J)}const D=()=>u("preview",l),H=()=>u("navigate",l.id),F=J=>{J.key==="Escape"&&(J.stopPropagation(),z())};return n.$$set=J=>{"item"in J&&t(0,l=J.item),"selected"in J&&t(1,s=J.selected),"onDragStart"in J&&t(25,o=J.onDragStart),"onDragOver"in J&&t(26,i=J.onDragOver),"onDrop"in J&&t(27,c=J.onDrop)},[l,s,h,_,b,u,d,m,g,E,w,T,N,A,I,M,R,L,B,z,U,W,K,q,Y,o,i,c,G,D,H,F]}class F_ extends pt{constructor(e){super(),dt(this,e,B_,z_,ft,{item:0,selected:1,onDragStart:25,onDragOver:26,onDrop:27},null,[-1,-1])}}function Cr(n,e,t){const l=n.slice();return l[4]=e[t],l[6]=t,l}function j_(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 U_(n){let e,t=n[4].name+"",l,s,o;function i(){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),s||(o=O(e,"click",i),s=!0)},p(c,u){n=c,u&1&&t!==(t=n[4].name+"")&&Q(l,t)},d(c){c&&S(e),s=!1,o()}}}function H_(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(s,o){C(s,e,o),a(e,l)},p(s,o){o&1&&t!==(t=s[4].name+"")&&Q(l,t)},d(s){s&&S(e)}}}function Ar(n){let e,t,l=n[6]>0&&j_();function s(c,u){return c[6]===c[0].length-1?H_:U_}let o=s(n),i=o(n);return{c(){l&&l.c(),e=y(),i.c(),t=ht()},m(c,u){l&&l.m(c,u),C(c,e,u),i.m(c,u),C(c,t,u)},p(c,u){o===(o=s(c))&&i?i.p(c,u):(i.d(1),i=o(c),i&&(i.c(),i.m(t.parentNode,t)))},d(c){c&&(S(e),S(t)),l&&l.d(c),i.d(c)}}}function W_(n){let e,t=ve(n[0]),l=[];for(let s=0;so(c);return n.$$set=c=>{"crumbs"in c&&t(0,l=c.crumbs)},[l,o,i]}class Ed extends pt{constructor(e){super(),dt(this,e,G_,W_,ft,{crumbs:0})}}function K_(n){let e,t,l,s,o,i;return{c(){e=f("div"),t=f("p"),t.textContent=`${v("file.previewUnavailable")}`,l=y(),s=f("button"),s.textContent=`${v("file.openExternal")}`,r(s,"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,s),o||(i=O(s,"click",n[9]),o=!0)},p:se,d(c){c&&S(e),o=!1,i()}}}function V_(n){let e,t;function l(i,c){return c&2&&(e=null),e==null&&(e=!!(i[1]&&i[1].startsWith("data:"))),e?Q_:J_}let s=l(n,-1),o=s(n);return{c(){o.c(),t=ht()},m(i,c){o.m(i,c),C(i,t,c)},p(i,c){s===(s=l(i,c))&&o?o.p(i,c):(o.d(1),o=s(i),o&&(o.c(),o.m(t.parentNode,t)))},d(i){i&&S(t),o.d(i)}}}function q_(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(s,o){C(s,e,o),a(e,t),a(t,l)},p(s,o){o&2&&Q(l,s[1])},d(s){s&&S(e)}}}function Z_(n){let e,t,l,s;return{c(){e=f("div"),t=f("img"),Fl(t.src,l=n[1])||r(t,"src",l),r(t,"alt",s=n[0].name),r(t,"class","preview-image svelte-1cw3u0m"),r(e,"class","preview-image-container svelte-1cw3u0m")},m(o,i){C(o,e,i),a(e,t)},p(o,i){i&2&&!Fl(t.src,l=o[1])&&r(t,"src",l),i&1&&s!==(s=o[0].name)&&r(t,"alt",s)},d(o){o&&S(e)}}}function Y_(n){let e,t,l,s,o,i,c;return{c(){e=f("div"),t=f("p"),l=j(n[3]),s=y(),o=f("button"),o.textContent=`${v("file.openExternal")}`,r(o,"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,s),a(e,o),i||(c=O(o,"click",n[9]),i=!0)},p(u,d){d&8&&Q(l,u[3])},d(u){u&&S(e),i=!1,c()}}}function X_(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,s){C(l,e,s),a(e,t)},p:se,d(l){l&&S(e)}}}function J_(n){let e,t,l,s,o,i;return{c(){e=f("div"),t=f("p"),t.textContent=`${v("file.pdfUnavailable")}`,l=y(),s=f("button"),s.textContent=`${v("file.openExternal")}`,r(s,"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,s),o||(i=O(s,"click",n[9]),o=!0)},p:se,d(c){c&&S(e),o=!1,i()}}}function Q_(n){let e,t,l;return{c(){e=f("div"),t=f("embed"),Fl(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(s,o){C(s,e,o),a(e,t)},p(s,o){o&2&&!Fl(t.src,l=s[1])&&r(t,"src",l)},d(s){s&&S(e)}}}function x_(n){let e,t,l,s,o,i,c,u=n[0].name+"",d,m,g,h,_=Us(n[0].size)+"",b,k,E=Tr(n[0].mime)+"",w,T,N,A,I,M,R,L,B,z,U;o=new pd({props:{kind:n[8],size:18}});function W(Y,G){return Y[2]?X_:Y[3]?Y_:Y[6]&&Y[1]?Z_:Y[5]&&Y[1]?q_:Y[4]?V_:K_}let K=W(n),q=K(n);return{c(){e=f("div"),t=f("div"),l=f("header"),s=f("div"),Qe(o.$$.fragment),i=y(),c=f("span"),d=j(u),g=y(),h=f("div"),b=j(_),k=j(" · "),w=j(E),T=y(),N=f("div"),A=f("button"),A.innerHTML=' ',I=y(),M=f("button"),M.innerHTML=' ',R=y(),L=f("div"),q.c(),r(c,"class","preview-name svelte-1cw3u0m"),r(c,"title",m=n[0].name),r(s,"class","preview-title svelte-1cw3u0m"),r(h,"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(M,"class","action-btn action-btn-close svelte-1cw3u0m"),r(M,"title","Close"),r(M,"aria-label","Close preview"),r(N,"class","preview-actions svelte-1cw3u0m"),r(l,"class","preview-header svelte-1cw3u0m"),r(L,"class","preview-body svelte-1cw3u0m"),r(t,"class","modal svelte-1cw3u0m"),r(e,"class","overlay svelte-1cw3u0m"),r(e,"role","presentation")},m(Y,G){C(Y,e,G),a(e,t),a(t,l),a(l,s),Ye(o,s,null),a(s,i),a(s,c),a(c,d),a(l,g),a(l,h),a(h,b),a(h,k),a(h,w),a(l,T),a(l,N),a(N,A),a(N,I),a(N,M),a(t,R),a(t,L),q.m(L,null),B=!0,z||(U=[O(A,"click",n[9]),O(M,"click",n[10]),O(e,"click",xt(n[11])),O(e,"keydown",n[12])],z=!0)},p(Y,[G]){(!B||G&1)&&u!==(u=Y[0].name+"")&&Q(d,u),(!B||G&1&&m!==(m=Y[0].name))&&r(c,"title",m),(!B||G&1)&&_!==(_=Us(Y[0].size)+"")&&Q(b,_),(!B||G&1)&&E!==(E=Tr(Y[0].mime)+"")&&Q(w,E),K===(K=W(Y))&&q?q.p(Y,G):(q.d(1),q=K(Y),q&&(q.c(),q.m(L,null)))},i(Y){B||(he(o.$$.fragment,Y),B=!0)},o(Y){ye(o.$$.fragment,Y),B=!1},d(Y){Y&&S(e),Xe(o),q.d(),z=!1,Te(U)}}}function $_(n,e,t){let l,s,o,{item:i}=e,{content:c=""}=e,{loading:u=!1}=e,{error:d=""}=e;const m=Zn(),g=md(i);function h(w){w.key==="Escape"&&m("close")}function _(){m("openExternal",i.fileId)}us(()=>{window.addEventListener("keydown",h)}),fs(()=>{window.removeEventListener("keydown",h)});const b=()=>m("close"),k=()=>m("close"),E=w=>{w.key==="Escape"&&(w.preventDefault(),m("close"))};return n.$$set=w=>{"item"in w&&t(0,i=w.item),"content"in w&&t(1,c=w.content),"loading"in w&&t(2,u=w.loading),"error"in w&&t(3,d=w.error)},n.$$.update=()=>{n.$$.dirty&3&&t(6,l=vd(i)&&c&&c.startsWith("data:")),n.$$.dirty&1&&t(5,s=kd(i)||wd(i)),n.$$.dirty&1&&t(4,o=yd(i))},[i,c,u,d,o,s,l,m,g,_,b,k,E]}class eb extends pt{constructor(e){super(),dt(this,e,$_,x_,ft,{item:0,content:1,loading:2,error:3})}}function tb(n){let e,t,l,s,o,i,c,u,d,m,g,h,_,b,k,E,w;return{c(){e=f("div"),t=f("div"),l=f("h3"),s=j(n[0]),o=y(),i=f("p"),c=j(n[1]),u=y(),d=f("div"),m=f("button"),g=j(n[2]),_=y(),b=f("button"),k=j(n[3]),r(l,"class","svelte-1fv6yyk"),r(i,"class","message svelte-1fv6yyk"),r(m,"class",h="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,s),a(t,o),a(t,i),a(i,c),a(t,u),a(t,d),a(d,m),a(m,g),a(d,_),a(d,b),a(b,k),E||(w=[O(m,"click",n[6]),O(b,"click",n[7]),O(e,"click",xt(n[8])),O(e,"keydown",n[9])],E=!0)},p(T,[N]){N&1&&Q(s,T[0]),N&2&&Q(c,T[1]),N&4&&Q(g,T[2]),N&16&&h!==(h="btn "+(T[4]?"btn-danger":"btn-primary")+" svelte-1fv6yyk")&&r(m,"class",h),N&8&&Q(k,T[3])},i:se,o:se,d(T){T&&S(e),E=!1,Te(w)}}}function nb(n,e,t){let{title:l=v("common.confirm")}=e,{message:s=""}=e,{confirmText:o=v("common.delete")}=e,{cancelText:i=v("common.cancel")}=e,{danger:c=!1}=e;const u=Zn(),d=()=>u("confirm"),m=()=>u("cancel"),g=()=>u("cancel"),h=_=>{_.key==="Escape"&&(_.preventDefault(),u("cancel"))};return n.$$set=_=>{"title"in _&&t(0,l=_.title),"message"in _&&t(1,s=_.message),"confirmText"in _&&t(2,o=_.confirmText),"cancelText"in _&&t(3,i=_.cancelText),"danger"in _&&t(4,c=_.danger)},[l,s,o,i,c,u,d,m,g,h]}class lb extends pt{constructor(e){super(),dt(this,e,nb,tb,ft,{title:0,message:1,confirmText:2,cancelText:3,danger:4})}}function sb(n){let e,t,l;return{c(){e=oe("circle"),t=oe("line"),l=oe("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(s,o){C(s,e,o),C(s,t,o),C(s,l,o)},d(s){s&&(S(e),S(t),S(l))}}}function ib(n){let e,t,l,s;return{c(){e=oe("rect"),t=oe("polyline"),l=oe("line"),s=oe("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(s,"x1","16"),r(s,"y1","5"),r(s,"x2","16"),r(s,"y2","19")},m(o,i){C(o,e,i),C(o,t,i),C(o,l,i),C(o,s,i)},d(o){o&&(S(e),S(t),S(l),S(s))}}}function ob(n){let e,t;return{c(){e=oe("path"),t=oe("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,s){C(l,e,s),C(l,t,s)},d(l){l&&(S(e),S(t))}}}function rb(n){let e,t;return{c(){e=oe("path"),t=oe("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,s){C(l,e,s),C(l,t,s)},d(l){l&&(S(e),S(t))}}}function ab(n){let e,t,l,s,o;return{c(){e=oe("path"),t=oe("path"),l=oe("line"),s=oe("line"),o=oe("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(s,"x1","8"),r(s,"y1","11"),r(s,"x2","14"),r(s,"y2","11"),r(o,"x1","8"),r(o,"y1","15"),r(o,"x2","12"),r(o,"y2","15")},m(i,c){C(i,e,c),C(i,t,c),C(i,l,c),C(i,s,c),C(i,o,c)},d(i){i&&(S(e),S(t),S(l),S(s),S(o))}}}function cb(n){let e,t,l,s;return{c(){e=oe("path"),t=oe("polyline"),l=oe("line"),s=oe("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(s,"x1","16"),r(s,"y1","17"),r(s,"x2","8"),r(s,"y2","17")},m(o,i){C(o,e,i),C(o,t,i),C(o,l,i),C(o,s,i)},d(o){o&&(S(e),S(t),S(l),S(s))}}}function ub(n){let e,t;return{c(){e=oe("path"),t=oe("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,s){C(l,e,s),C(l,t,s)},d(l){l&&(S(e),S(t))}}}function fb(n){let e,t,l,s;return{c(){e=oe("rect"),t=oe("rect"),l=oe("rect"),s=oe("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(s,"x","3"),r(s,"y","14"),r(s,"width","7"),r(s,"height","7"),r(s,"rx","1")},m(o,i){C(o,e,i),C(o,t,i),C(o,l,i),C(o,s,i)},d(o){o&&(S(e),S(t),S(l),S(s))}}}function db(n){let e;return{c(){e=oe("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 pb(n){let e;function t(o,i){return o[0]==="folder"?db:o[0]==="project"?fb:o[0]==="client"?ub:o[0]==="document"?cb:o[0]==="recipe"?ab:o[0]==="note"?rb:o[0]==="file"?ob:o[0]==="case"?ib:sb}let l=t(n),s=l(n);return{c(){e=oe("svg"),s.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,i){C(o,e,i),s.m(e,null)},p(o,[i]){l!==(l=t(o))&&(s.d(1),s=l(o),s&&(s.c(),s.m(e,null))),i&2&&r(e,"width",o[1]),i&2&&r(e,"height",o[1])},i:se,o:se,d(o){o&&S(e),s.d()}}}function mb(n,e,t){let{kind:l="generic"}=e,{size:s=18}=e;return n.$$set=o=>{"kind"in o&&t(0,l=o.kind),"size"in o&&t(1,s=o.size)},[l,s]}class Xs extends pt{constructor(e){super(),dt(this,e,mb,pb,ft,{kind:0,size:1})}}function Nr(n,e,t){const l=n.slice();return l[44]=e[t],l}function gb(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 hb(n){let e,t,l=n[1][n[44].id]?"▾":"▸",s,o,i;function c(){return n[25](n[44])}return{c(){e=f("button"),t=f("span"),s=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,s),o||(i=O(e,"click",He(c)),o=!0)},p(u,d){n=u,d[0]&3&&l!==(l=n[1][n[44].id]?"▾":"▸")&&Q(s,l)},d(u){u&&S(e),o=!1,i()}}}function Rr(n){let e,t;return e=new Td({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,s){Ye(e,l,s),t=!0},p(l,s){const o={};s[0]&1&&(o.nodes=l[44].children||[]),s[0]&2&&(o.expanded=l[1]),s[0]&4&&(o.selectedNodeId=l[2]),s[0]&8&&(o.level=l[3]+1),s[0]&16&&(o.onSelect=l[4]),s[0]&32&&(o.onToggle=l[5]),s[0]&64&&(o.onContextMenu=l[6]),s[0]&128&&(o.onDrop=l[7]),e.$set(o)},i(l){t||(he(e.$$.fragment,l),t=!0)},o(l){ye(e.$$.fragment,l),t=!1},d(l){Xe(e,l)}}}function Ir(n,e){let t,l,s,o,i,c,u,d=e[44].title+"",m,g,h=e[1][e[44].id]&&Wi(e[44]),_,b,k,E;function w(D,H){return H[0]&1&&(l=null),l==null&&(l=!!ts(D[44])),l?hb:gb}let T=w(e,[-1,-1]),N=T(e);i=new Xs({props:{kind:Mr(e[44]),size:16}});function A(...D){return e[26](e[44],...D)}function I(...D){return e[27](e[44],...D)}function M(){return e[28](e[44])}function R(...D){return e[29](e[44],...D)}function L(...D){return e[30](e[44],...D)}function B(...D){return e[31](e[44],...D)}function z(...D){return e[32](e[44],...D)}function U(...D){return e[33](e[44],...D)}function W(...D){return e[34](e[44],...D)}function K(...D){return e[35](e[44],...D)}function q(...D){return e[36](e[44],...D)}function Y(...D){return e[37](e[44],...D)}let G=h&&Rr(e);return{key:n,first:null,c(){t=f("div"),N.c(),s=y(),o=f("span"),Qe(i.$$.fragment),c=y(),u=f("span"),m=j(d),g=y(),G&&G.c(),_=ht(),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"),ln(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(D,H){C(D,t,H),N.m(t,null),a(t,s),a(t,o),Ye(i,o,null),a(t,c),a(t,u),a(u,m),C(D,g,H),G&&G.m(D,H),C(D,_,H),b=!0,k||(E=[O(o,"click",A),O(o,"keydown",I),O(o,"dblclick",He(e[24])),O(u,"click",He(M)),O(u,"keydown",R),O(t,"dragstart",L),O(t,"dragover",B),O(t,"dragleave",z),O(t,"drop",U),O(t,"click",W),O(t,"keydown",K),O(t,"dblclick",q),O(t,"contextmenu",Ys(Y))],k=!0)},p(D,H){e=D,T===(T=w(e,H))&&N?N.p(e,H):(N.d(1),N=T(e),N&&(N.c(),N.m(t,s)));const F={};H[0]&1&&(F.kind=Mr(e[44])),i.$set(F),(!b||H[0]&1)&&d!==(d=e[44].title+"")&&Q(m,d),(!b||H[0]&8)&&ln(t,"padding-left",e[3]*16+4+"px"),(!b||H[0]&5)&&ce(t,"selected",e[2]===e[44].id),(!b||H[0]&769)&&ce(t,"drop-valid",e[8]===e[44].id&&e[9][e[44].id]),(!b||H[0]&769)&&ce(t,"drop-invalid",e[8]===e[44].id&&!e[9][e[44].id]),H[0]&3&&(h=e[1][e[44].id]&&Wi(e[44])),h?G?(G.p(e,H),H[0]&3&&he(G,1)):(G=Rr(e),G.c(),he(G,1),G.m(_.parentNode,_)):G&&(Tt(),ye(G,1,1,()=>{G=null}),St())},i(D){b||(he(i.$$.fragment,D),he(G),b=!0)},o(D){ye(i.$$.fragment,D),ye(G),b=!1},d(D){D&&(S(t),S(g),S(_)),N.d(),Xe(i),G&&G.d(D),k=!1,Te(E)}}}function _b(n){let e=[],t=new Map,l,s,o,i,c=ve(n[0]);const u=d=>d[44].id;for(let d=0;d0:n.has_children===!0}function Lr(n){const e={};function t(l,s){for(const o of l)e[o.id]=s,o.children&&t(o.children,o.id)}return t(n,""),e}function Or(n){const e=[];function t(l){for(const s of l)e.push(s),s.children&&t(s.children)}return t(n),e}function bb(n){try{return n.dataTransfer.getData("text/plain")}catch{return""}}function vb(n,e,t){let l,s,o,{nodes:i=[]}=e,{expanded:c={}}=e,{selectedNodeId:u=""}=e,{level:d=0}=e,{onSelect:m=void 0}=e,{onToggle:g=void 0}=e,{onContextMenu:h=void 0}=e,{onDrop:_=void 0}=e,b={},k=null,E="",w="";const T=["folder","project","client","document","recipe","case"];fs(()=>{for(const ee of Object.keys(b))clearTimeout(b[ee]);k&&clearInterval(k)});function N(ee){return T.includes(ee.type)}function A(ee,re,Se){if(!ee||!re||re===ee.id||!N(ee))return!1;let ze=ee.id;for(;ze;){if(ze===re)return!1;ze=Se[ze]||""}return!0}function I(ee,re){ee.stopPropagation(),ee.dataTransfer.effectAllowed="move",ee.dataTransfer.setData("text/plain",re.id),t(21,E=re.id)}function M(ee,re){ee.preventDefault(),ee.stopPropagation(),ee.dataTransfer.dropEffect="move",w!==re.id&&t(8,w=re.id),ts(re)&&!c[re.id]&&!b[re.id]&&(b[re.id]=setTimeout(()=>{g&&g(re.id),delete b[re.id]},600));const Se=ee.currentTarget.closest(".workspace-tree-area");if(Se){const ze=Se.getBoundingClientRect(),ge=30;ee.clientY-ze.top{Se.scrollTop-=10},50)):ze.bottom-ee.clientY{Se.scrollTop+=10},50)):k&&(clearInterval(k),k=null)}}function R(ee,re){const Se=ee.relatedTarget;Se&&ee.currentTarget.contains(Se)||(w===re.id&&t(8,w=""),b[re.id]&&(clearTimeout(b[re.id]),delete b[re.id]),k&&(clearInterval(k),k=null))}function L(ee,re){ee.preventDefault(),ee.stopPropagation(),b[re.id]&&(clearTimeout(b[re.id]),delete b[re.id]),k&&(clearInterval(k),k=null);const Se=Or(i),ze=Lr(Se),ge=bb(ee);if(!A(re,ge,ze)){t(8,w=""),t(21,E="");return}_&&_(ge,re.id),t(8,w=""),t(21,E="")}function B(){t(8,w=""),t(21,E="");for(const ee of Object.keys(b))clearTimeout(b[ee]),delete b[ee];k&&(clearInterval(k),k=null)}function z(ee,re){ee.target.closest(".tree-toggle")||ee.target.closest(".tree-icon")||m&&m(re)}function U(ee,re){ts(re)&&g&&g(re.id)}function W(ee,re){(ee.key==="Enter"||ee.key===" ")&&(ee.preventDefault(),m&&m(re))}function K(ee,re){ee.stopPropagation(),ts(re)&&g&&g(re.id)}function q(ee,re){(ee.key==="Enter"||ee.key===" ")&&(ee.preventDefault(),ee.stopPropagation(),ts(re)&&g&&g(re.id))}function Y(ee,re){(ee.key==="Enter"||ee.key===" ")&&(ee.preventDefault(),m&&m(re))}function G(ee,re,Se){const ze={};function ge(We){for(const mt of We)ze[mt.id]=A(mt,re,Se),mt.children&&ge(mt.children)}return ge(ee),ze}function D(ee){Ji.call(this,n,ee)}const H=ee=>g&&g(ee.id),F=(ee,re)=>K(re,ee),J=(ee,re)=>q(re,ee),Z=ee=>m&&m(ee),X=(ee,re)=>Y(re,ee),$=(ee,re)=>I(re,ee),te=(ee,re)=>M(re,ee),ne=(ee,re)=>R(re,ee),de=(ee,re)=>L(re,ee),Ae=(ee,re)=>z(re,ee),Pe=(ee,re)=>W(re,ee),qe=(ee,re)=>U(re,ee),Ne=(ee,re)=>h&&h(re,ee);return n.$$set=ee=>{"nodes"in ee&&t(0,i=ee.nodes),"expanded"in ee&&t(1,c=ee.expanded),"selectedNodeId"in ee&&t(2,u=ee.selectedNodeId),"level"in ee&&t(3,d=ee.level),"onSelect"in ee&&t(4,m=ee.onSelect),"onToggle"in ee&&t(5,g=ee.onToggle),"onContextMenu"in ee&&t(6,h=ee.onContextMenu),"onDrop"in ee&&t(7,_=ee.onDrop)},n.$$.update=()=>{n.$$.dirty[0]&1&&t(23,l=Or(i)),n.$$.dirty[0]&8388608&&t(22,s=Lr(l)),n.$$.dirty[0]&14680064&&t(9,o=G(l,E,s))},[i,c,u,d,m,g,h,_,w,o,I,M,R,L,B,z,U,W,K,q,Y,E,s,l,D,H,F,J,Z,X,$,te,ne,de,Ae,Pe,qe,Ne]}class Td extends pt{constructor(e){super(),dt(this,e,vb,_b,ft,{nodes:0,expanded:1,selectedNodeId:2,level:3,onSelect:4,onToggle:5,onContextMenu:6,onDrop:7},null,[-1,-1])}}function Dr(n){let e,t;return{c(){e=f("div"),t=j(n[4]),r(e,"class","path-info svelte-a9f1pd")},m(l,s){C(l,e,s),a(e,t)},p(l,s){s&16&&Q(t,l[4])},d(l){l&&S(e)}}}function Pr(n){let e,t;return{c(){e=f("div"),t=j(n[3]),r(e,"class","error-msg svelte-a9f1pd")},m(l,s){C(l,e,s),a(e,t)},p(l,s){s&8&&Q(t,l[3])},d(l){l&&S(e)}}}function kb(n){let e,t,l,s,o,i,c,u,d,m,g,h,_,b,k,E,w,T=v("firstrun.browse")+"",N,A,I,M,R,L,B=(n[2]?v("firstrun.creating"):v("firstrun.create"))+"",z,U,W,K,q,Y,G=n[4]&&Dr(n),D=n[3]&&Pr(n);return{c(){e=f("div"),t=f("div"),l=f("img"),o=y(),i=f("h1"),i.textContent=`${v("firstrun.title")}`,c=y(),u=f("p"),u.textContent=`${v("firstrun.desc")}`,d=y(),m=f("div"),g=f("label"),g.textContent=`${v("firstrun.pathLabel")}`,h=y(),_=f("div"),b=f("input"),E=y(),w=f("button"),N=j(T),A=y(),G&&G.c(),I=y(),D&&D.c(),M=y(),R=f("div"),L=f("button"),z=j(B),W=y(),K=f("button"),K.textContent=`${v("firstrun.quit")}`,r(l,"class","first-run-logo svelte-a9f1pd"),Fl(l.src,s="/assets/app-icons/icon_64x64.png")||r(l,"src",s),r(l,"width","64"),r(l,"height","64"),r(l,"alt",""),r(i,"class","svelte-a9f1pd"),r(u,"class","first-run-desc svelte-a9f1pd"),r(g,"class","form-label svelte-a9f1pd"),r(g,"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(w,"class","btn"),w.disabled=n[2],r(_,"class","input-row svelte-a9f1pd"),r(m,"class","form-group svelte-a9f1pd"),r(L,"class","btn btn-primary btn-lg svelte-a9f1pd"),L.disabled=U=!n[0].trim()||n[2],r(K,"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(H,F){C(H,e,F),a(e,t),a(t,l),a(t,o),a(t,i),a(t,c),a(t,u),a(t,d),a(t,m),a(m,g),a(m,h),a(m,_),a(_,b),Ie(b,n[0]),a(_,E),a(_,w),a(w,N),a(t,A),G&&G.m(t,null),a(t,I),D&&D.m(t,null),a(t,M),a(t,R),a(R,L),a(L,z),a(R,W),a(R,K),q||(Y=[O(b,"input",n[12]),O(b,"input",n[6]),O(b,"keydown",n[9]),O(w,"click",n[5]),O(L,"click",n[7]),O(K,"click",n[8])],q=!0)},p(H,[F]){F&2&&k!==(k=H[1]||v("firstrun.defaultPath"))&&r(b,"placeholder",k),F&4&&(b.disabled=H[2]),F&1&&b.value!==H[0]&&Ie(b,H[0]),F&4&&(w.disabled=H[2]),H[4]?G?G.p(H,F):(G=Dr(H),G.c(),G.m(t,I)):G&&(G.d(1),G=null),H[3]?D?D.p(H,F):(D=Pr(H),D.c(),D.m(t,M)):D&&(D.d(1),D=null),F&4&&B!==(B=(H[2]?v("firstrun.creating"):v("firstrun.create"))+"")&&Q(z,B),F&5&&U!==(U=!H[0].trim()||H[2])&&(L.disabled=U)},i:se,o:se,d(H){H&&S(e),G&&G.d(),D&&D.d(),q=!1,Te(Y)}}}function Rs(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 yb(n,e,t){let{onComplete:l=null}=e,{onQuit:s=null}=e,o="",i="",c=!1,u="",d="",m=null;async function g(){try{const T=await Rs("GetDefaultVaultPath");t(1,i=T||""),t(0,o=i||""),o&&await _()}catch{t(1,i="")}}g();async function h(){try{const T=await Rs("PickDirectory");T&&(t(0,o=T),await _())}catch(T){t(3,u=String(T))}}async function _(){if(!o||!o.trim()){t(4,d=""),m=null;return}try{m=await Rs("CheckVaultPath",o.trim()),m&&t(4,d=m.description)}catch{t(4,d=""),m=null}}async function b(){if(!(!o||!o.trim())){if(t(2,c=!0),t(3,u=""),m&&!m.writable){t(3,u=v("firstrun.errorNoWrite")),t(2,c=!1);return}try{const T=await Rs("CreateVault",o.trim());T&&T.status==="ready"&&l&&l(T)}catch(T){t(3,u=String(T))}t(2,c=!1)}}function k(){s&&s()}function E(T){T.key==="Enter"&&!c&&o.trim()&&b()}function w(){o=this.value,t(0,o)}return n.$$set=T=>{"onComplete"in T&&t(10,l=T.onComplete),"onQuit"in T&&t(11,s=T.onQuit)},[o,i,c,u,d,h,_,b,k,E,l,s,w]}class wb extends pt{constructor(e){super(),dt(this,e,yb,kb,ft,{onComplete:10,onQuit:11})}}function zr(n){let e,t;return{c(){e=f("div"),t=j(n[2]),r(e,"class","error-msg svelte-s3o8c3")},m(l,s){C(l,e,s),a(e,t)},p(l,s){s&4&&Q(t,l[2])},d(l){l&&S(e)}}}function Br(n){let e,t,l,s,o,i,c,u,d=v("common.yes")+"",m,g,h,_,b;return{c(){e=f("div"),t=f("div"),l=f("h3"),l.textContent=`${v("recovery.createConfirmTitle")}`,s=y(),o=f("p"),o.textContent=`${v("recovery.createConfirm")}`,i=y(),c=f("div"),u=f("button"),m=j(d),g=y(),h=f("button"),h.textContent=`${v("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(h,"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,E){C(k,e,E),a(e,t),a(t,l),a(t,s),a(t,o),a(t,i),a(t,c),a(c,u),a(u,m),a(c,g),a(c,h),_||(b=[O(u,"click",n[6]),O(h,"click",n[7]),O(e,"click",xt(n[7])),O(e,"keydown",n[11])],_=!0)},p(k,E){E&2&&(u.disabled=k[1])},d(k){k&&S(e),_=!1,Te(b)}}}function Eb(n){let e,t,l,s,o,i,c,u,d,m=(n[0]||"—")+"",g,h,_,b,k,E=v("recovery.choose")+"",w,T,N,A=v("recovery.create")+"",I,M,R,L,B,z,U,W=n[2]&&zr(n),K=n[3]&&Br(n);return{c(){e=f("div"),t=f("div"),l=f("div"),l.textContent="⚠",s=y(),o=f("h1"),o.textContent=`${v("recovery.title")}`,i=y(),c=f("p"),c.textContent=`${v("recovery.expected")}:`,u=y(),d=f("code"),g=j(m),h=y(),W&&W.c(),_=y(),b=f("div"),k=f("button"),w=j(E),T=y(),N=f("button"),I=j(A),M=y(),R=f("button"),R.textContent=`${v("recovery.quit")}`,L=y(),K&&K.c(),B=ht(),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(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(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(q,Y){C(q,e,Y),a(e,t),a(t,l),a(t,s),a(t,o),a(t,i),a(t,c),a(t,u),a(t,d),a(d,g),a(t,h),W&&W.m(t,null),a(t,_),a(t,b),a(b,k),a(k,w),a(b,T),a(b,N),a(N,I),a(b,M),a(b,R),C(q,L,Y),K&&K.m(q,Y),C(q,B,Y),z||(U=[O(k,"click",n[4]),O(N,"click",n[5]),O(R,"click",n[8])],z=!0)},p(q,[Y]){Y&1&&m!==(m=(q[0]||"—")+"")&&Q(g,m),q[2]?W?W.p(q,Y):(W=zr(q),W.c(),W.m(t,_)):W&&(W.d(1),W=null),Y&2&&(k.disabled=q[1]),Y&2&&(N.disabled=q[1]),q[3]?K?K.p(q,Y):(K=Br(q),K.c(),K.m(B.parentNode,B)):K&&(K.d(1),K=null)},i:se,o:se,d(q){q&&(S(e),S(L),S(B)),W&&W.d(),K&&K.d(q),z=!1,Te(U)}}}function Ii(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 Tb(n,e,t){let{vaultPath:l=""}=e,{onComplete:s=null}=e,{onQuit:o=null}=e,i=!1,c="",u=!1;async function d(){try{const k=await Ii("PickDirectory");if(!k)return;t(1,i=!0),t(2,c="");const E=await Ii("OpenVault",k);E&&E.status==="ready"&&s&&s(E)}catch(k){t(2,c=String(k))}t(1,i=!1)}function m(){t(3,u=!0)}async function g(){t(3,u=!1),t(1,i=!0),t(2,c="");try{const k=await Ii("CreateVault",l);k&&k.status==="ready"&&s&&s(k)}catch(k){t(2,c=String(k))}t(1,i=!1)}function h(){t(3,u=!1)}function _(){o&&o()}const b=k=>k.key==="Enter"&&h();return n.$$set=k=>{"vaultPath"in k&&t(0,l=k.vaultPath),"onComplete"in k&&t(9,s=k.onComplete),"onQuit"in k&&t(10,o=k.onQuit)},[l,i,c,u,d,m,g,h,_,s,o,b]}class Sb extends pt{constructor(e){super(),dt(this,e,Tb,Eb,ft,{vaultPath:0,onComplete:9,onQuit:10})}}function Fr(n,e,t){const l=n.slice();return l[5]=e[t],l}function Cb(n){let e,t;return{c(){e=oe("circle"),t=oe("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,s){C(l,e,s),C(l,t,s)},d(l){l&&(S(e),S(t))}}}function Ab(n){let e,t,l;return{c(){e=oe("path"),t=oe("path"),l=oe("path"),r(e,"d","M5 4h12l2 2v14H5z"),r(t,"d","M8 4v6h8V4"),r(l,"d","M8 20v-6h8v6")},m(s,o){C(s,e,o),C(s,t,o),C(s,l,o)},d(s){s&&(S(e),S(t),S(l))}}}function Nb(n){let e,t,l,s;return{c(){e=oe("path"),t=oe("path"),l=oe("path"),s=oe("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(s,"d","M20 19v-4h-4")},m(o,i){C(o,e,i),C(o,t,i),C(o,l,i),C(o,s,i)},d(o){o&&(S(e),S(t),S(l),S(s))}}}function Rb(n){let e;return{c(){e=oe("path"),r(e,"d","M4 19V9M10 19V5M16 19v-7M22 19H2")},m(t,l){C(t,e,l)},d(t){t&&S(e)}}}function Ib(n){let e;return{c(){e=oe("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 Mb(n){let e,t;return{c(){e=oe("path"),t=oe("path"),r(e,"d","M9 3v5M15 3v5M7 8h10v3a5 5 0 0 1-10 0V8z"),r(t,"d","M12 16v5")},m(l,s){C(l,e,s),C(l,t,s)},d(l){l&&(S(e),S(t))}}}function Lb(n){let e,t;return{c(){e=oe("rect"),t=oe("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,s){C(l,e,s),C(l,t,s)},d(l){l&&(S(e),S(t))}}}function Ob(n){let e,t,l;return{c(){e=oe("path"),t=oe("path"),l=oe("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(s,o){C(s,e,o),C(s,t,o),C(s,l,o)},d(s){s&&(S(e),S(t),S(l))}}}function Db(n){let e,t;return{c(){e=oe("circle"),t=oe("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,s){C(l,e,s),C(l,t,s)},d(l){l&&(S(e),S(t))}}}function jr(n){let e,t,l,s,o,i,c,u;function d(_,b){if(_[5].id==="general")return Db;if(_[5].id==="workspace")return Ob;if(_[5].id==="templates")return Lb;if(_[5].id==="plugins")return Mb;if(_[5].id==="files")return Ib;if(_[5].id==="activity")return Rb;if(_[5].id==="sync")return Nb;if(_[5].id==="backup")return Ab;if(_[5].id==="browserBridge")return Cb}let m=d(n),g=m&&m(n);function h(){return n[4](n[5])}return{c(){e=f("button"),t=f("span"),l=oe("svg"),g&&g.c(),s=y(),o=f("span"),o.textContent=`${n[5].label}`,i=y(),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(_,b){C(_,e,b),a(e,t),a(t,l),g&&g.m(l,null),a(e,s),a(e,o),a(e,i),c||(u=O(e,"click",h),c=!0)},p(_,b){n=_,b&3&&ce(e,"active",n[0]===n[5].id)},d(_){_&&S(e),g&&g.d(),c=!1,u()}}}function Pb(n){let e,t=ve(n[1]),l=[];for(let s=0;si(u.id);return n.$$set=u=>{"activeSection"in u&&t(0,l=u.activeSection),"onSelect"in u&&t(3,s=u.onSelect)},[l,o,i,s,c]}class Bb extends pt{constructor(e){super(),dt(this,e,zb,Pb,ft,{activeSection:0,onSelect:3})}}function Ur(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 Fb(n){let e,t,l,s,o,i,c,u,d,m,g,h,_,b,k,E,w,T,N,A,I,M,R,L,B,z,U,W,K,q,Y,G,D,H=n[1]&&Ur();return{c(){e=f("div"),t=f("h2"),t.textContent=`${v("settings.general")}`,l=y(),s=f("p"),s.textContent=`${v("settings.generalDesc")}`,o=y(),i=f("div"),c=f("h3"),c.textContent=`${v("settings.appearance")}`,u=y(),d=f("div"),m=f("label"),g=f("span"),g.textContent=`${v("settings.theme")}`,h=y(),_=f("select"),b=f("option"),b.textContent=`${v("settings.themeSystem")}`,k=f("option"),k.textContent=`${v("settings.themeLight")} (${v("settings.langSoon")})`,E=f("option"),E.textContent=`${v("settings.themeDark")} (${v("settings.langSoon")})`,w=y(),T=f("div"),N=f("h3"),N.textContent=`${v("settings.localization")}`,A=y(),I=f("div"),M=f("label"),R=f("span"),R.textContent=`${v("settings.language")}`,L=y(),B=f("select"),z=f("option"),z.textContent=`${v("settings.langRu")}`,U=f("option"),U.textContent=`${v("settings.langEn")} (${v("settings.langSoon")})`,W=y(),K=f("div"),H&&H.c(),q=y(),Y=f("button"),Y.textContent=`${v("settings.save")}`,r(t,"class","svelte-1e2uhdh"),r(s,"class","section-desc svelte-1e2uhdh"),r(c,"class","card-title svelte-1e2uhdh"),r(g,"class","label-text svelte-1e2uhdh"),b.__value="system",Ie(b,b.__value),k.__value="light",Ie(k,k.__value),k.disabled=!0,E.__value="dark",Ie(E,E.__value),E.disabled=!0,n[0]===void 0&&_l(()=>n[5].call(_)),r(d,"class","form-group svelte-1e2uhdh"),r(i,"class","settings-card svelte-1e2uhdh"),r(N,"class","card-title svelte-1e2uhdh"),r(R,"class","label-text svelte-1e2uhdh"),z.__value="ru",Ie(z,z.__value),U.__value="en",Ie(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(K,"class","settings-actions svelte-1e2uhdh"),r(e,"class","settings-section svelte-1e2uhdh")},m(F,J){C(F,e,J),a(e,t),a(e,l),a(e,s),a(e,o),a(e,i),a(i,c),a(i,u),a(i,d),a(d,m),a(m,g),a(m,h),a(m,_),a(_,b),a(_,k),a(_,E),Vn(_,n[0],!0),a(e,w),a(e,T),a(T,N),a(T,A),a(T,I),a(I,M),a(M,R),a(M,L),a(M,B),a(B,z),a(B,U),a(e,W),a(e,K),H&&H.m(K,null),a(K,q),a(K,Y),G||(D=[O(_,"change",n[5]),O(Y,"click",n[2])],G=!0)},p(F,[J]){J&1&&Vn(_,F[0]),F[1]?H||(H=Ur(),H.c(),H.m(K,q)):H&&(H.d(1),H=null)},i:se,o:se,d(F){F&&S(e),H&&H.d(),G=!1,Te(D)}}}function jb(n,e,t){let{appConfig:l=null}=e,{onSave:s=null}=e,o="system",i=!1;function c(){l&&t(0,o=l.theme||"system")}async function u(){l&&(t(3,l.theme=o,l),s&&await s(l),t(1,i=!0),setTimeout(()=>t(1,i=!1),2e3))}function d(){o=zs(this),t(0,o)}return n.$$set=m=>{"appConfig"in m&&t(3,l=m.appConfig),"onSave"in m&&t(4,s=m.onSave)},n.$$.update=()=>{n.$$.dirty&8&&l&&c()},[o,i,u,l,s,d]}class Ub extends pt{constructor(e){super(),dt(this,e,jb,Fb,ft,{appConfig:3,onSave:4})}}function Hr(n){let e,t;return{c(){e=f("div"),t=j(n[1]),r(e,"class","notice svelte-1zbky3")},m(l,s){C(l,e,s),a(e,t)},p(l,s){s&2&&Q(t,l[1])},d(l){l&&S(e)}}}function Hb(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:se,d(t){t&&S(e)}}}function Wb(n){let e,t,l,s,o,i=n[0].path+"",c,u,d,m,g,h,_=n[0].dbPath+"",b,k,E,w=n[0].nodeCount!==void 0&&Wr(n),T=n[0].fileCount!==void 0&&Gr(n);return{c(){e=f("div"),t=f("div"),l=f("span"),l.textContent=`${v("settings.vaultPath")}`,s=y(),o=f("span"),c=j(i),u=y(),d=f("div"),m=f("span"),m.textContent="DB",g=y(),h=f("span"),b=j(_),k=y(),w&&w.c(),E=y(),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(m,"class","info-label svelte-1zbky3"),r(h,"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,s),a(t,o),a(o,c),a(e,u),a(e,d),a(d,m),a(d,g),a(d,h),a(h,b),a(e,k),w&&w.m(e,null),a(e,E),T&&T.m(e,null)},p(N,A){A&1&&i!==(i=N[0].path+"")&&Q(c,i),A&1&&_!==(_=N[0].dbPath+"")&&Q(b,_),N[0].nodeCount!==void 0?w?w.p(N,A):(w=Wr(N),w.c(),w.m(e,E)):w&&(w.d(1),w=null),N[0].fileCount!==void 0?T?T.p(N,A):(T=Gr(N),T.c(),T.m(e,null)):T&&(T.d(1),T=null)},d(N){N&&S(e),w&&w.d(),T&&T.d()}}}function Wr(n){let e,t,l,s,o=n[0].nodeCount+"",i;return{c(){e=f("div"),t=f("span"),t.textContent="Nodes",l=y(),s=f("span"),i=j(o),r(t,"class","info-label svelte-1zbky3"),r(s,"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,s),a(s,i)},p(c,u){u&1&&o!==(o=c[0].nodeCount+"")&&Q(i,o)},d(c){c&&S(e)}}}function Gr(n){let e,t,l,s,o=n[0].fileCount+"",i;return{c(){e=f("div"),t=f("span"),t.textContent="Files",l=y(),s=f("span"),i=j(o),r(t,"class","info-label svelte-1zbky3"),r(s,"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,s),a(s,i)},p(c,u){u&1&&o!==(o=c[0].fileCount+"")&&Q(i,o)},d(c){c&&S(e)}}}function Gb(n){let e,t,l,s,o,i,c,u,d,m,g,h,_,b,k,E,w=n[1]&&Hr(n);function T(I,M){return I[0]?Wb:Hb}let N=T(n),A=N(n);return{c(){e=f("div"),t=f("h2"),t.textContent=`${v("settings.workspace")}`,l=y(),s=f("p"),s.textContent=`${v("settings.workspaceDesc")}`,o=y(),w&&w.c(),i=y(),c=f("div"),A.c(),u=y(),d=f("div"),m=f("button"),m.textContent=`${v("settings.openVault")}`,g=y(),h=f("button"),h.textContent=`${v("settings.changeVault")}`,_=y(),b=f("button"),b.textContent=`${v("settings.checkIntegrity")}`,r(t,"class","svelte-1zbky3"),r(s,"class","section-desc svelte-1zbky3"),r(c,"class","settings-card svelte-1zbky3"),r(m,"class","btn svelte-1zbky3"),r(h,"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,M){C(I,e,M),a(e,t),a(e,l),a(e,s),a(e,o),w&&w.m(e,null),a(e,i),a(e,c),A.m(c,null),a(e,u),a(e,d),a(d,m),a(d,g),a(d,h),a(d,_),a(d,b),k||(E=[O(m,"click",n[2]),O(h,"click",n[4]),O(b,"click",n[3])],k=!0)},p(I,[M]){I[1]?w?w.p(I,M):(w=Hr(I),w.c(),w.m(e,i)):w&&(w.d(1),w=null),N===(N=T(I))&&A?A.p(I,M):(A.d(1),A=N(I),A&&(A.c(),A.m(c,null)))},i:se,o:se,d(I){I&&S(e),w&&w.d(),A.d(),k=!1,Te(E)}}}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 Kb(n,e,t){let{onRefresh:l=null}=e,s=null,o="";async function i(){try{t(0,s=await Ml("GetVaultInfo"))}catch{t(0,s=null)}}i();async function c(){try{await Ml("OpenVaultFolder")}catch(m){t(1,o=String(m))}}async function u(){try{const m=await Ml("VaultCheck");m.healthy?t(1,o="Vault healthy"):t(1,o="Issues found: "+(m.errors||[]).join("; "))}catch(m){t(1,o=String(m))}}async function d(){try{const m=await Ml("PickDirectory");if(!m)return;const g=await Ml("OpenVault",m);g&&g.status==="ready"&&(t(0,s=await Ml("GetVaultInfo")),l&&l())}catch(m){t(1,o=String(m))}}return n.$$set=m=>{"onRefresh"in m&&t(5,l=m.onRefresh)},[s,o,c,u,d,l]}class Vb extends pt{constructor(e){super(),dt(this,e,Kb,Gb,ft,{onRefresh:5})}}function Kr(n,e,t){const l=n.slice();return l[6]=e[t],l}function qb(n){let e,t=ve(n[0]),l=[];for(let s=0;sc(d);return n.$$set=d=>{"onRefresh"in d&&t(3,l=d.onRefresh)},[s,o,c,l,u]}class Qb extends pt{constructor(e){super(),dt(this,e,Jb,Xb,ft,{onRefresh:3})}}function Zr(n,e,t){const l=n.slice();return l[12]=e[t],l}function xb(n){let e,t=ve(n[0]),l=[];for(let s=0;sНет установленных плагинов.
Создайте папку .verstak/plugins/ в хранилище и добавьте туда плагины.
',r(e,"class","empty-state svelte-i9gngw")},m(t,l){C(t,e,l)},p:se,d(t){t&&S(e)}}}function ev(n){let e,t;return{c(){e=f("p"),t=j(n[2]),r(e,"class","error svelte-i9gngw")},m(l,s){C(l,e,s),a(e,t)},p(l,s){s&4&&Q(t,l[2])},d(l){l&&S(e)}}}function tv(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:se,d(t){t&&S(e)}}}function Yr(n){let e,t,l=n[12].version+"",s;return{c(){e=f("span"),t=j("v"),s=j(l),r(e,"class","plugin-version svelte-i9gngw")},m(o,i){C(o,e,i),a(e,t),a(e,s)},p(o,i){i&1&&l!==(l=o[12].version+"")&&Q(s,l)},d(o){o&&S(e)}}}function Xr(n){let e,t=n[12].description+"",l;return{c(){e=f("div"),l=j(t),r(e,"class","plugin-desc svelte-i9gngw")},m(s,o){C(s,e,o),a(e,l)},p(s,o){o&1&&t!==(t=s[12].description+"")&&Q(l,t)},d(s){s&&S(e)}}}function Jr(n){let e,t=(v("settings.author")||"Автор")+"",l,s,o=n[12].author+"",i;return{c(){e=f("span"),l=j(t),s=j(": "),i=j(o)},m(c,u){C(c,e,u),a(e,l),a(e,s),a(e,i)},p(c,u){u&1&&o!==(o=c[12].author+"")&&Q(i,o)},d(c){c&&S(e)}}}function Qr(n){let e,t=n[12].uiContribs.sidebarItems.length+"",l,s;return{c(){e=f("span"),l=j(t),s=j(" пункт(а) в сайдбаре")},m(o,i){C(o,e,i),a(e,l),a(e,s)},p(o,i){i&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,s;return{c(){e=f("span"),l=j(t),s=j(" вкладок(и) в карточке дела")},m(o,i){C(o,e,i),a(e,l),a(e,s)},p(o,i){i&1&&t!==(t=o[12].uiContribs.nodeTabs.length+"")&&Q(l,t)},d(o){o&&S(e)}}}function $r(n){let e;return{c(){e=f("span"),e.textContent="🗖 HTML-панель"},m(t,l){C(t,e,l)},d(t){t&&S(e)}}}function nv(n){let e,t,l,s,o,i,c,u;function d(){return n[8](n[12])}function m(){return n[9](n[12])}return{c(){e=f("div"),t=f("button"),l=f("span"),o=y(),i=f("button"),i.textContent="🗑",r(l,"class","toggle-knob svelte-i9gngw"),r(t,"class","toggle-btn svelte-i9gngw"),r(t,"role","switch"),r(t,"aria-checked",s=n[12].active),ce(t,"active",n[12].active),r(i,"class","uninstall-btn btn-sm svelte-i9gngw"),r(i,"title","Удалить плагин (очистить данные)"),r(e,"class","toggle-group svelte-i9gngw")},m(g,h){C(g,e,h),a(e,t),a(t,l),a(e,o),a(e,i),c||(u=[O(t,"click",d),O(i,"click",m)],c=!0)},p(g,h){n=g,h&1&&s!==(s=n[12].active)&&r(t,"aria-checked",s),h&1&&ce(t,"active",n[12].active)},d(g){g&&S(e),c=!1,Te(u)}}}function lv(n){let e,t,l;function s(){return n[7](n[12])}return{c(){e=f("button"),e.textContent="📦 Установить",r(e,"class","install-btn svelte-i9gngw")},m(o,i){C(o,e,i),t||(l=O(e,"click",s),t=!0)},p(o,i){n=o},d(o){o&&S(e),t=!1,l()}}}function ea(n){var B,z,U,W;let e,t,l,s=n[12].name+"",o,i,c,u,d,m,g,h,_,b,k,E=n[12].version&&Yr(n),w=n[12].description&&Xr(n),T=n[12].author&&Jr(n),N=((z=(B=n[12].uiContribs)==null?void 0:B.sidebarItems)==null?void 0:z.length)&&Qr(n),A=((W=(U=n[12].uiContribs)==null?void 0:U.nodeTabs)==null?void 0:W.length)&&xr(n),I=n[12].hasPanel&&$r();function M(K,q){return K[12].installed?nv:lv}let R=M(n),L=R(n);return{c(){e=f("div"),t=f("div"),l=f("div"),o=j(s),i=y(),E&&E.c(),c=y(),w&&w.c(),u=y(),d=f("div"),T&&T.c(),m=y(),N&&N.c(),g=y(),A&&A.c(),h=y(),I&&I.c(),_=y(),b=f("div"),L.c(),k=y(),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(K,q){C(K,e,q),a(e,t),a(t,l),a(l,o),a(l,i),E&&E.m(l,null),a(t,c),w&&w.m(t,null),a(t,u),a(t,d),T&&T.m(d,null),a(d,m),N&&N.m(d,null),a(d,g),A&&A.m(d,null),a(d,h),I&&I.m(d,null),a(e,_),a(e,b),L.m(b,null),a(e,k)},p(K,q){var Y,G,D,H;q&1&&s!==(s=K[12].name+"")&&Q(o,s),K[12].version?E?E.p(K,q):(E=Yr(K),E.c(),E.m(l,null)):E&&(E.d(1),E=null),K[12].description?w?w.p(K,q):(w=Xr(K),w.c(),w.m(t,u)):w&&(w.d(1),w=null),K[12].author?T?T.p(K,q):(T=Jr(K),T.c(),T.m(d,m)):T&&(T.d(1),T=null),(G=(Y=K[12].uiContribs)==null?void 0:Y.sidebarItems)!=null&&G.length?N?N.p(K,q):(N=Qr(K),N.c(),N.m(d,g)):N&&(N.d(1),N=null),(H=(D=K[12].uiContribs)==null?void 0:D.nodeTabs)!=null&&H.length?A?A.p(K,q):(A=xr(K),A.c(),A.m(d,h)):A&&(A.d(1),A=null),K[12].hasPanel?I||(I=$r(),I.c(),I.m(d,null)):I&&(I.d(1),I=null),R===(R=M(K))&&L?L.p(K,q):(L.d(1),L=R(K),L&&(L.c(),L.m(b,null)))},d(K){K&&S(e),E&&E.d(),w&&w.d(),T&&T.d(),N&&N.d(),A&&A.d(),I&&I.d(),L.d()}}}function sv(n){let e,t,l,s,o;function i(d,m){return d[1]?tv:d[2]?ev:d[0].length===0?$b:xb}let c=i(n),u=c(n);return{c(){e=f("div"),t=f("h3"),t.textContent=`${v("settings.plugins")||"Плагины"}`,l=y(),s=f("p"),s.textContent="Включение и отключение плагинов. Изменения применяются сразу.",o=y(),u.c(),r(t,"class","svelte-i9gngw"),r(s,"class","hint svelte-i9gngw"),r(e,"class","settings-plugins svelte-i9gngw")},m(d,m){C(d,e,m),a(e,t),a(e,l),a(e,s),a(e,o),u.m(e,null)},p(d,[m]){c===(c=i(d))&&u?u.p(d,m):(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 cl(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 iv(n,e,t){let{onPluginToggle:l=null}=e,s=[],o=!0,i="";us(async()=>{try{t(0,s=await cl("ListPlugins")||[])}catch(_){t(2,i=String(_))}t(1,o=!1)});async function c(_){const b=!_.active;try{await cl("SetPluginEnabled",_.name,b),t(0,s=await cl("ListPlugins")||[]),l&&l()}catch(k){t(2,i=String(k))}}async function u(_){t(2,i="");try{await cl("InstallPlugin",_.name),_.installed=!0,t(0,s=await cl("ListPlugins")||[]),l&&l()}catch(b){t(2,i=String(b))}}async function d(_){if(confirm(`Удалить плагин «${_.name}»? Все данные плагина будут очищены. Файлы плагина сохранятся.`)){t(2,i="");try{await cl("UninstallPlugin",_.name),_.installed=!1,_.active=!1,t(0,s=await cl("ListPlugins")||[]),l&&l()}catch(b){t(2,i=String(b))}}}const m=_=>u(_),g=_=>c(_),h=_=>d(_);return n.$$set=_=>{"onPluginToggle"in _&&t(6,l=_.onPluginToggle)},n.$$.update=()=>{n.$$.dirty&1&&s.reduce((_,b)=>{var k,E;return _+(((E=(k=b.uiContribs)==null?void 0:k.sidebarItems)==null?void 0:E.length)||0)},0),n.$$.dirty&1&&s.reduce((_,b)=>{var k,E;return _+(((E=(k=b.uiContribs)==null?void 0:k.nodeTabs)==null?void 0:E.length)||0)},0)},[s,o,i,c,u,d,l,m,g,h]}class ov extends pt{constructor(e){super(),dt(this,e,iv,sv,ft,{onPluginToggle:6})}}function rv(n){let e,t,l,s;return{c(){e=f("div"),t=f("h2"),t.textContent=`${v("settings.files")}`,l=y(),s=f("p"),s.textContent=`${v("settings.filesStub")}`,r(t,"class","svelte-19bo7bn"),r(s,"class","section-desc svelte-19bo7bn"),r(e,"class","settings-section svelte-19bo7bn")},m(o,i){C(o,e,i),a(e,t),a(e,l),a(e,s)},p:se,i:se,o:se,d(o){o&&S(e)}}}class av extends pt{constructor(e){super(),dt(this,e,null,rv,ft,{})}}function cv(n){let e,t,l,s;return{c(){e=f("div"),t=f("h2"),t.textContent=`${v("settings.activity")}`,l=y(),s=f("p"),s.textContent=`${v("settings.activityStub")}`,r(t,"class","svelte-19bo7bn"),r(s,"class","section-desc svelte-19bo7bn"),r(e,"class","settings-section svelte-19bo7bn")},m(o,i){C(o,e,i),a(e,t),a(e,l),a(e,s)},p:se,i:se,o:se,d(o){o&&S(e)}}}class uv extends pt{constructor(e){super(),dt(this,e,null,cv,ft,{})}}function ta(n){let e,t;return{c(){e=f("div"),t=j(n[2]),r(e,"class","error-msg svelte-1fx1e1e")},m(l,s){C(l,e,s),a(e,t)},p(l,s){s[0]&4&&Q(t,l[2])},d(l){l&&S(e)}}}function na(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,s){C(l,e,s),a(e,t)},p(l,s){s[0]&8&&Q(t,l[3]),s[0]&16&&ce(e,"warning",l[4]==="warning")},d(l){l&&S(e)}}}function fv(n){let e,t,l,s,o,i,c,u,d,m,g,h,_,b,k,E,w,T,N,A,I,M,R=v("settings.checkConnection")+"",L,B,z,U,W=v("common.connect")+"",K,q,Y,G,D,H=n[11]!==null&&la(n);return{c(){e=f("div"),t=f("div"),l=f("div"),s=f("label"),o=f("span"),o.textContent=`${v("settings.serverUrl")}`,i=y(),c=f("input"),u=y(),d=f("div"),m=f("label"),g=f("span"),g.textContent=`${v("sync.username")}`,h=y(),_=f("input"),b=y(),k=f("div"),E=f("label"),w=f("span"),w.textContent=`${v("sync.password")}`,T=y(),N=f("input"),A=y(),I=f("div"),M=f("button"),L=j(R),z=y(),U=f("button"),K=j(W),Y=y(),H&&H.c(),r(o,"class","label-text"),r(c,"type","text"),r(c,"placeholder","https://example.com"),r(l,"class","form-group svelte-1fx1e1e"),r(g,"class","label-text"),r(_,"type","text"),r(d,"class","form-group svelte-1fx1e1e"),r(w,"class","label-text"),r(N,"type","password"),r(k,"class","form-group svelte-1fx1e1e"),r(M,"class","btn"),M.disabled=B=n[1]||!n[5],r(U,"class","btn btn-primary"),U.disabled=q=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(F,J){C(F,e,J),a(e,t),a(t,l),a(l,s),a(s,o),a(s,i),a(s,c),Ie(c,n[5]),a(t,u),a(t,d),a(d,m),a(m,g),a(m,h),a(m,_),Ie(_,n[6]),a(t,b),a(t,k),a(k,E),a(E,w),a(E,T),a(E,N),Ie(N,n[7]),a(t,A),a(t,I),a(I,M),a(M,L),a(I,z),a(I,U),a(U,K),a(t,Y),H&&H.m(t,null),G||(D=[O(c,"input",n[23]),O(_,"input",n[24]),O(N,"input",n[25]),O(M,"click",n[12]),O(U,"click",n[13])],G=!0)},p(F,J){J[0]&32&&c.value!==F[5]&&Ie(c,F[5]),J[0]&64&&_.value!==F[6]&&Ie(_,F[6]),J[0]&128&&N.value!==F[7]&&Ie(N,F[7]),J[0]&34&&B!==(B=F[1]||!F[5])&&(M.disabled=B),J[0]&226&&q!==(q=F[1]||!F[5]||!F[6]||!F[7])&&(U.disabled=q),F[11]!==null?H?H.p(F,J):(H=la(F),H.c(),H.m(t,null)):H&&(H.d(1),H=null)},d(F){F&&S(e),H&&H.d(),G=!1,Te(D)}}}function dv(n){let e,t,l,s,o,i,c=n[20](n[0].lastStatus)+"",u,d,m,g,h,_,b,k,E,w=v("settings.syncNow")+"",T,N,A,I=v("settings.disconnect")+"",M,R,L,B=v("settings.resetKey")+"",z,U,W,K,q,Y,G,D,H,F,J,Z,X=n[0].serverUrl&&sa(n),$=n[0].deviceName&&ia(n),te=n[0].deviceId&&oa(n),ne=n[0].lastSyncAt&&ra(n),de=n[0].lastError&&aa(n);return{c(){e=f("div"),t=f("div"),l=f("div"),s=f("span"),s.textContent=`${v("settings.status")}`,o=y(),i=f("span"),u=j(c),d=y(),X&&X.c(),m=y(),$&&$.c(),g=y(),te&&te.c(),h=y(),ne&&ne.c(),_=y(),de&&de.c(),b=y(),k=f("div"),E=f("button"),T=j(w),N=y(),A=f("button"),M=j(I),R=y(),L=f("button"),z=j(B),U=y(),W=f("div"),K=f("label"),q=f("span"),q.textContent=`${v("sync.interval")}`,Y=y(),G=f("div"),D=f("input"),H=y(),F=f("button"),F.textContent=`${v("common.save")}`,r(s,"class","info-label svelte-1fx1e1e"),r(i,"class","info-value svelte-1fx1e1e"),ce(i,"status-ok",n[0].lastStatus==="connected"),ce(i,"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(E,"class","btn btn-primary"),E.disabled=n[1],r(A,"class","btn"),A.disabled=n[1],r(L,"class","btn"),L.disabled=n[1],r(k,"class","sync-actions svelte-1fx1e1e"),r(q,"class","label-text"),r(D,"type","number"),r(D,"min","0"),r(D,"placeholder","0"),r(D,"class","svelte-1fx1e1e"),r(F,"class","btn btn-sm"),r(G,"class","interval-row svelte-1fx1e1e"),r(W,"class","sync-interval svelte-1fx1e1e")},m(Ae,Pe){C(Ae,e,Pe),a(e,t),a(t,l),a(l,s),a(l,o),a(l,i),a(i,u),a(t,d),X&&X.m(t,null),a(t,m),$&&$.m(t,null),a(t,g),te&&te.m(t,null),a(t,h),ne&&ne.m(t,null),a(t,_),de&&de.m(t,null),C(Ae,b,Pe),C(Ae,k,Pe),a(k,E),a(E,T),a(k,N),a(k,A),a(A,M),a(k,R),a(k,L),a(L,z),C(Ae,U,Pe),C(Ae,W,Pe),a(W,K),a(K,q),a(K,Y),a(K,G),a(G,D),Ie(D,n[8]),a(G,H),a(G,F),J||(Z=[O(E,"click",n[14]),O(A,"click",n[16]),O(L,"click",n[18]),O(D,"input",n[22]),O(F,"click",n[15])],J=!0)},p(Ae,Pe){Pe[0]&1&&c!==(c=Ae[20](Ae[0].lastStatus)+"")&&Q(u,c),Pe[0]&1&&ce(i,"status-ok",Ae[0].lastStatus==="connected"),Pe[0]&1&&ce(i,"status-err",Ae[0].lastStatus==="error"||Ae[0].lastStatus==="revoked"),Ae[0].serverUrl?X?X.p(Ae,Pe):(X=sa(Ae),X.c(),X.m(t,m)):X&&(X.d(1),X=null),Ae[0].deviceName?$?$.p(Ae,Pe):($=ia(Ae),$.c(),$.m(t,g)):$&&($.d(1),$=null),Ae[0].deviceId?te?te.p(Ae,Pe):(te=oa(Ae),te.c(),te.m(t,h)):te&&(te.d(1),te=null),Ae[0].lastSyncAt?ne?ne.p(Ae,Pe):(ne=ra(Ae),ne.c(),ne.m(t,_)):ne&&(ne.d(1),ne=null),Ae[0].lastError?de?de.p(Ae,Pe):(de=aa(Ae),de.c(),de.m(t,null)):de&&(de.d(1),de=null),Pe[0]&2&&(E.disabled=Ae[1]),Pe[0]&2&&(A.disabled=Ae[1]),Pe[0]&2&&(L.disabled=Ae[1]),Pe[0]&256&&Ul(D.value)!==Ae[8]&&Ie(D,Ae[8])},d(Ae){Ae&&(S(e),S(b),S(k),S(U),S(W)),X&&X.d(),$&&$.d(),te&&te.d(),ne&&ne.d(),de&&de.d(),J=!1,Te(Z)}}}function la(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(s,o){C(s,e,o),a(e,l)},p(s,o){o[0]&2048&&t!==(t=(s[11]?v("common.test")+" OK":v("error.generic"))+"")&&Q(l,t),o[0]&2048&&ce(e,"ok",s[11]),o[0]&2048&&ce(e,"fail",!s[11])},d(s){s&&S(e)}}}function sa(n){let e,t,l,s,o=n[0].serverUrl+"",i;return{c(){e=f("div"),t=f("span"),t.textContent=`${v("settings.serverUrl")}`,l=y(),s=f("span"),i=j(o),r(t,"class","info-label svelte-1fx1e1e"),r(s,"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,s),a(s,i)},p(c,u){u[0]&1&&o!==(o=c[0].serverUrl+"")&&Q(i,o)},d(c){c&&S(e)}}}function ia(n){let e,t,l,s,o=n[0].deviceName+"",i;return{c(){e=f("div"),t=f("span"),t.textContent=`${v("settings.deviceName")}`,l=y(),s=f("span"),i=j(o),r(t,"class","info-label svelte-1fx1e1e"),r(s,"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,s),a(s,i)},p(c,u){u[0]&1&&o!==(o=c[0].deviceName+"")&&Q(i,o)},d(c){c&&S(e)}}}function oa(n){let e,t,l,s,o=n[0].deviceId+"",i;return{c(){e=f("div"),t=f("span"),t.textContent=`${v("settings.deviceId")}`,l=y(),s=f("span"),i=j(o),r(t,"class","info-label svelte-1fx1e1e"),r(s,"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,s),a(s,i)},p(c,u){u[0]&1&&o!==(o=c[0].deviceId+"")&&Q(i,o)},d(c){c&&S(e)}}}function ra(n){let e,t,l,s,o=n[0].lastSyncAt+"",i;return{c(){e=f("div"),t=f("span"),t.textContent=`${v("settings.lastSync")}`,l=y(),s=f("span"),i=j(o),r(t,"class","info-label svelte-1fx1e1e"),r(s,"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,s),a(s,i)},p(c,u){u[0]&1&&o!==(o=c[0].lastSyncAt+"")&&Q(i,o)},d(c){c&&S(e)}}}function aa(n){let e,t,l,s,o=n[0].lastError+"",i;return{c(){e=f("div"),t=f("span"),t.textContent=`${v("settings.lastError")}`,l=y(),s=f("span"),i=j(o),r(t,"class","info-label svelte-1fx1e1e"),r(s,"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,s),a(s,i)},p(c,u){u[0]&1&&o!==(o=c[0].lastError+"")&&Q(i,o)},d(c){c&&S(e)}}}function ca(n){let e,t,l,s,o,i,c,u,d,m,g,h;return{c(){e=f("button"),t=f("div"),l=f("h3"),l.textContent=`${v("settings.confirmDisconnect")}`,s=y(),o=f("p"),o.textContent=`${v("settings.confirmDisconnectDesc")}`,i=y(),c=f("div"),u=f("button"),u.textContent=`${v("common.disconnect")}`,d=y(),m=f("button"),m.textContent=`${v("common.cancel")}`,r(l,"class","svelte-1fx1e1e"),r(o,"class","modal-desc svelte-1fx1e1e"),r(u,"class","btn btn-danger"),r(m,"class","btn"),r(c,"class","modal-actions svelte-1fx1e1e"),r(t,"class","modal svelte-1fx1e1e"),r(e,"class","modal-overlay svelte-1fx1e1e")},m(_,b){C(_,e,b),a(e,t),a(t,l),a(t,s),a(t,o),a(t,i),a(t,c),a(c,u),a(c,d),a(c,m),g||(h=[O(u,"click",n[17]),O(m,"click",n[26]),O(e,"click",n[27])],g=!0)},p:se,d(_){_&&S(e),g=!1,Te(h)}}}function ua(n){let e,t,l,s,o,i,c,u,d,m,g,h;return{c(){e=f("button"),t=f("div"),l=f("h3"),l.textContent=`${v("settings.confirmResetKey")}`,s=y(),o=f("p"),o.textContent=`${v("settings.confirmResetKeyDesc")}`,i=y(),c=f("div"),u=f("button"),u.textContent=`${v("settings.resetKey")}`,d=y(),m=f("button"),m.textContent=`${v("common.cancel")}`,r(l,"class","svelte-1fx1e1e"),r(o,"class","modal-desc svelte-1fx1e1e"),r(u,"class","btn btn-danger"),r(m,"class","btn"),r(c,"class","modal-actions svelte-1fx1e1e"),r(t,"class","modal svelte-1fx1e1e"),r(e,"class","modal-overlay svelte-1fx1e1e")},m(_,b){C(_,e,b),a(e,t),a(t,l),a(t,s),a(t,o),a(t,i),a(t,c),a(c,u),a(c,d),a(c,m),g||(h=[O(u,"click",n[19]),O(m,"click",n[28]),O(e,"click",n[29])],g=!0)},p:se,d(_){_&&S(e),g=!1,Te(h)}}}function pv(n){let e,t,l,s,o,i,c,u,d,m,g=n[2]&&ta(n),h=n[3]&&!n[2]&&na(n);function _(T,N){return T[0]&&T[0].enabled?dv:fv}let b=_(n),k=b(n),E=n[9]&&ca(n),w=n[10]&&ua(n);return{c(){e=f("div"),t=f("h2"),t.textContent=`${v("settings.sync")}`,l=y(),s=f("p"),s.textContent=`${v("settings.syncDesc")}`,o=y(),g&&g.c(),i=y(),h&&h.c(),c=y(),k.c(),u=y(),E&&E.c(),d=y(),w&&w.c(),m=ht(),r(t,"class","svelte-1fx1e1e"),r(s,"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,s),a(e,o),g&&g.m(e,null),a(e,i),h&&h.m(e,null),a(e,c),k.m(e,null),C(T,u,N),E&&E.m(T,N),C(T,d,N),w&&w.m(T,N),C(T,m,N)},p(T,N){T[2]?g?g.p(T,N):(g=ta(T),g.c(),g.m(e,i)):g&&(g.d(1),g=null),T[3]&&!T[2]?h?h.p(T,N):(h=na(T),h.c(),h.m(e,c)):h&&(h.d(1),h=null),b===(b=_(T))&&k?k.p(T,N):(k.d(1),k=b(T),k&&(k.c(),k.m(e,null))),T[9]?E?E.p(T,N):(E=ca(T),E.c(),E.m(d.parentNode,d)):E&&(E.d(1),E=null),T[10]?w?w.p(T,N):(w=ua(T),w.c(),w.m(m.parentNode,m)):w&&(w.d(1),w=null)},i:se,o:se,d(T){T&&(S(e),S(u),S(d),S(m)),g&&g.d(),h&&h.d(),k.d(),E&&E.d(T),w&&w.d(T)}}}function ul(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 mv(n,e,t){let{onRefresh:l=null}=e,s=null,o=!1,i="",c="",u="",d="",m="",g="",h=0,_=!1,b=!1,k=null;async function E(){try{t(0,s=await ul("GetSyncSettings")),s&&(t(5,d=s.serverUrl||""),t(8,h=s.syncInterval||0))}catch{t(0,s=null)}}E();async function w(){t(1,o=!0),t(2,i=""),t(4,u=""),t(11,k=null);try{await ul("SyncTestConnection",d,m,g),t(11,k=!0),t(3,c="connection ok")}catch(F){t(11,k=!1),t(3,c="connection failed: "+String(F))}t(1,o=!1)}async function T(){t(1,o=!0),t(2,i=""),t(4,u="");try{await ul("SyncConfigure",d,m,g),t(3,c="configured"),t(6,m=""),t(7,g=""),await E(),l&&l()}catch(F){t(2,i=String(F))}t(1,o=!1)}function N(F){const J=Array.isArray(F==null?void 0:F.conflicts)?F.conflicts:[],Z=Array.isArray(F==null?void 0:F.applyErrors)?F.applyErrors:[],X=[];return J.length>0&&X.push(v("sync.conflictsCount",{count:J.length})),Z.length>0&&X.push(v("sync.applyErrorsCount",{count:Z.length})),X.join(" · ")}async function A(){t(1,o=!0),t(2,i=""),t(4,u="");try{const F=await ul("SyncNow"),J=v("sync.pushedPulled",{pushed:(F==null?void 0:F.pushed)||0,pulled:(F==null?void 0:F.pulled)||0}),Z=N(F);t(3,c=Z?J+" · "+Z:J),t(4,u=Z?"warning":""),await E(),l&&l()}catch(F){t(2,i=String(F))}t(1,o=!1)}async function I(){try{await ul("SyncSetInterval",h),t(3,c=v("sync.settingsSaved")),t(4,u="")}catch(F){t(2,i=String(F))}}function M(){t(9,_=!0)}async function R(){t(9,_=!1),t(1,o=!0),t(4,u="");try{await ul("SyncDisconnect"),t(3,c="disconnected"),await E(),l&&l()}catch(F){t(2,i=String(F))}t(1,o=!1)}function L(){t(10,b=!0)}async function B(){t(10,b=!1),t(1,o=!0),t(4,u="");try{await ul("ResetSyncKey"),t(3,c="key reset"),await E(),l&&l()}catch(F){t(2,i=String(F))}t(1,o=!1)}function z(F){return F?{connected:v("settings.connected"),disconnected:v("settings.disconnected"),disabled:v("settings.notConfigured"),error:v("settings.error"),revoked:v("settings.revoked")}[F]||F:v("settings.notConfigured")}function U(){h=Ul(this.value),t(8,h)}function W(){d=this.value,t(5,d)}function K(){m=this.value,t(6,m)}function q(){g=this.value,t(7,g)}const Y=()=>t(9,_=!1),G=()=>t(9,_=!1),D=()=>t(10,b=!1),H=()=>t(10,b=!1);return n.$$set=F=>{"onRefresh"in F&&t(21,l=F.onRefresh)},[s,o,i,c,u,d,m,g,h,_,b,k,w,T,A,I,M,R,L,B,z,l,U,W,K,q,Y,G,D,H]}class gv extends pt{constructor(e){super(),dt(this,e,mv,pv,ft,{onRefresh:21},null,[-1,-1])}}function hv(n){let e,t,l,s;return{c(){e=f("div"),t=f("h2"),t.textContent=`${v("settings.backup")}`,l=y(),s=f("p"),s.textContent=`${v("settings.backupStub")}`,r(t,"class","svelte-19bo7bn"),r(s,"class","section-desc svelte-19bo7bn"),r(e,"class","settings-section svelte-19bo7bn")},m(o,i){C(o,e,i),a(e,t),a(e,l),a(e,s)},p:se,i:se,o:se,d(o){o&&S(e)}}}class _v extends pt{constructor(e){super(),dt(this,e,null,hv,ft,{})}}function fa(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,s){C(l,e,s),a(e,t)},p(l,s){s&32&&Q(t,l[5]),s&64&&ce(e,"ok",l[6]==="ok"),s&64&&ce(e,"error",l[6]==="error")},d(l){l&&S(e)}}}function da(n){let e,t,l,s,o,i;return{c(){e=f("div"),t=f("span"),t.textContent="Активный порт",l=y(),s=f("span"),o=j("127.0.0.1:"),i=j(n[3]),r(t,"class","info-label svelte-13i6m7m"),r(s,"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,s),a(s,o),a(s,i)},p(c,u){u&8&&Q(i,c[3])},d(c){c&&S(e)}}}function pa(n){let e,t,l,s;return{c(){e=f("button"),t=j("Перезапустить сервер"),r(e,"class","btn"),e.disabled=n[4]},m(o,i){C(o,e,i),a(e,t),l||(s=O(e,"click",n[8]),l=!0)},p(o,i){i&16&&(e.disabled=o[4])},d(o){o&&S(e),l=!1,s()}}}function bv(n){let e,t,l,s,o,i,c,u,d,m,g,h,_,b,k,E,w,T,N,A,I,M,R,L,B,z,U,W=n[2]?"Запущен":"Остановлен",K,q,Y,G,D,H,F,J,Z,X=n[5]&&fa(n),$=n[2]&&n[3]&&da(n),te=n[0]&&pa(n);return{c(){e=f("div"),t=f("h2"),t.textContent="Browser Bridge",l=y(),s=f("p"),s.textContent=`Локальный HTTP-сервер для приёма событий от браузерного расширения Verstak Bridge.
- Работает только на 127.0.0.1.`,o=y(),X&&X.c(),i=y(),c=f("div"),u=f("div"),d=f("label"),m=f("input"),g=y(),h=f("span"),h.textContent="Включить Browser Bridge",_=y(),b=f("div"),k=f("label"),E=f("span"),E.textContent="Порт",w=y(),T=f("input"),A=y(),I=f("p"),I.textContent="По умолчанию: 9786. Требуется перезапуск сервера при изменении.",M=y(),R=f("div"),L=f("div"),B=f("span"),B.textContent="Статус",z=y(),U=f("span"),K=j(W),q=y(),$&&$.c(),Y=y(),G=f("div"),D=f("button"),H=j("Сохранить"),F=y(),te&&te.c(),r(t,"class","svelte-13i6m7m"),r(s,"class","section-desc svelte-13i6m7m"),r(m,"type","checkbox"),r(h,"class","toggle-text svelte-13i6m7m"),r(d,"class","toggle-label svelte-13i6m7m"),r(u,"class","form-group svelte-13i6m7m"),r(E,"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(L,"class","info-row svelte-13i6m7m"),r(R,"class","bridge-status svelte-13i6m7m"),r(c,"class","settings-card svelte-13i6m7m"),r(D,"class","btn btn-primary"),D.disabled=n[4],r(G,"class","actions svelte-13i6m7m"),r(e,"class","settings-section svelte-13i6m7m")},m(ne,de){C(ne,e,de),a(e,t),a(e,l),a(e,s),a(e,o),X&&X.m(e,null),a(e,i),a(e,c),a(c,u),a(u,d),a(d,m),m.checked=n[0],a(d,g),a(d,h),a(c,_),a(c,b),a(b,k),a(k,E),a(k,w),a(k,T),Ie(T,n[1]),a(b,A),a(b,I),a(c,M),a(c,R),a(R,L),a(L,B),a(L,z),a(L,U),a(U,K),a(R,q),$&&$.m(R,null),a(e,Y),a(e,G),a(G,D),a(D,H),a(G,F),te&&te.m(G,null),J||(Z=[O(m,"change",n[10]),O(T,"input",n[11]),O(D,"click",n[7])],J=!0)},p(ne,[de]){ne[5]?X?X.p(ne,de):(X=fa(ne),X.c(),X.m(e,i)):X&&(X.d(1),X=null),de&1&&(m.checked=ne[0]),de&1&&N!==(N=!ne[0])&&(T.disabled=N),de&2&&Ul(T.value)!==ne[1]&&Ie(T,ne[1]),de&4&&W!==(W=ne[2]?"Запущен":"Остановлен")&&Q(K,W),de&4&&ce(U,"status-ok",ne[2]),de&4&&ce(U,"status-off",!ne[2]),ne[2]&&ne[3]?$?$.p(ne,de):($=da(ne),$.c(),$.m(R,null)):$&&($.d(1),$=null),de&16&&(D.disabled=ne[4]),ne[0]?te?te.p(ne,de):(te=pa(ne),te.c(),te.m(G,null)):te&&(te.d(1),te=null)},i:se,o:se,d(ne){ne&&S(e),X&&X.d(),$&&$.d(),te&&te.d(),J=!1,Te(Z)}}}function vv(n,e,t){let{appConfig:l=null}=e,s=!1,o=9786,i=!1,c=0,u=!1,d="",m="";function g(){if(l&&l.vault&&l.vault.bridge){const w=l.vault.bridge;t(0,s=w.enabled!==!1),t(1,o=w.port||9786)}}async function h(){try{if(window.go&&window.go.main&&window.go.main.App){const w=await window.go.main.App.BridgeInfo();t(2,i=w.running||!1),t(3,c=w.port||0)}}catch{t(2,i=!1),t(3,c=0)}}g(),h();async function _(){t(4,u=!0),t(5,d=""),t(6,m="");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=s,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,m="ok"),await h()}catch(w){t(5,d=String(w)),t(6,m="error")}t(4,u=!1)}async function b(){t(4,u=!0),t(5,d=""),t(6,m="");try{window.go&&window.go.main&&window.go.main.App&&await window.go.main.App.RestartBridge(),t(5,d="bridge restarted"),t(6,m="ok"),await h()}catch(w){t(5,d=String(w)),t(6,m="error")}t(4,u=!1)}function k(){s=this.checked,t(0,s)}function E(){o=Ul(this.value),t(1,o)}return n.$$set=w=>{"appConfig"in w&&t(9,l=w.appConfig)},[s,o,i,c,u,d,m,_,b,l,k,E]}class kv extends pt{constructor(e){super(),dt(this,e,vv,bv,ft,{appConfig:9})}}const{window:yv}=Yi;function wv(n){let e,t;return e=new kv({props:{appConfig:n[2]}}),{c(){Qe(e.$$.fragment)},m(l,s){Ye(e,l,s),t=!0},p(l,s){const o={};s&4&&(o.appConfig=l[2]),e.$set(o)},i(l){t||(he(e.$$.fragment,l),t=!0)},o(l){ye(e.$$.fragment,l),t=!1},d(l){Xe(e,l)}}}function Ev(n){let e,t;return e=new _v({}),{c(){Qe(e.$$.fragment)},m(l,s){Ye(e,l,s),t=!0},p:se,i(l){t||(he(e.$$.fragment,l),t=!0)},o(l){ye(e.$$.fragment,l),t=!1},d(l){Xe(e,l)}}}function Tv(n){let e,t;return e=new gv({props:{onRefresh:n[7]}}),{c(){Qe(e.$$.fragment)},m(l,s){Ye(e,l,s),t=!0},p:se,i(l){t||(he(e.$$.fragment,l),t=!0)},o(l){ye(e.$$.fragment,l),t=!1},d(l){Xe(e,l)}}}function Sv(n){let e,t;return e=new uv({}),{c(){Qe(e.$$.fragment)},m(l,s){Ye(e,l,s),t=!0},p:se,i(l){t||(he(e.$$.fragment,l),t=!0)},o(l){ye(e.$$.fragment,l),t=!1},d(l){Xe(e,l)}}}function Cv(n){let e,t;return e=new av({}),{c(){Qe(e.$$.fragment)},m(l,s){Ye(e,l,s),t=!0},p:se,i(l){t||(he(e.$$.fragment,l),t=!0)},o(l){ye(e.$$.fragment,l),t=!1},d(l){Xe(e,l)}}}function Av(n){let e,t;return e=new ov({props:{onPluginToggle:n[0]}}),{c(){Qe(e.$$.fragment)},m(l,s){Ye(e,l,s),t=!0},p(l,s){const o={};s&1&&(o.onPluginToggle=l[0]),e.$set(o)},i(l){t||(he(e.$$.fragment,l),t=!0)},o(l){ye(e.$$.fragment,l),t=!1},d(l){Xe(e,l)}}}function Nv(n){let e,t;return e=new Qb({props:{onRefresh:n[3]}}),{c(){Qe(e.$$.fragment)},m(l,s){Ye(e,l,s),t=!0},p:se,i(l){t||(he(e.$$.fragment,l),t=!0)},o(l){ye(e.$$.fragment,l),t=!1},d(l){Xe(e,l)}}}function Rv(n){let e,t;return e=new Vb({props:{onRefresh:n[3]}}),{c(){Qe(e.$$.fragment)},m(l,s){Ye(e,l,s),t=!0},p:se,i(l){t||(he(e.$$.fragment,l),t=!0)},o(l){ye(e.$$.fragment,l),t=!1},d(l){Xe(e,l)}}}function Iv(n){let e,t;return e=new Ub({props:{appConfig:n[2],onSave:n[6]}}),{c(){Qe(e.$$.fragment)},m(l,s){Ye(e,l,s),t=!0},p(l,s){const o={};s&4&&(o.appConfig=l[2]),e.$set(o)},i(l){t||(he(e.$$.fragment,l),t=!0)},o(l){ye(e.$$.fragment,l),t=!1},d(l){Xe(e,l)}}}function Mv(n){let e,t,l,s,o,i,c,u,d,m,g,h,_,b,k,E;d=new Bb({props:{activeSection:n[1],onSelect:n[4]}});const w=[Iv,Rv,Nv,Av,Cv,Sv,Tv,Ev,wv],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~(h=N(n))&&(_=T[h]=w[h](n)),{c(){e=f("button"),t=f("div"),l=f("div"),s=f("h2"),s.textContent=`${v("settings.title")}`,o=y(),i=f("button"),i.innerHTML=' ',c=y(),u=f("div"),Qe(d.$$.fragment),m=y(),g=f("div"),_&&_.c(),r(s,"class","svelte-zf2zsc"),r(i,"class","close-btn svelte-zf2zsc"),r(i,"title",v("settings.close")),r(l,"class","settings-header svelte-zf2zsc"),r(g,"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,s),a(l,o),a(l,i),a(t,c),a(t,u),Ye(d,u,null),a(u,m),a(u,g),~h&&T[h].m(g,null),b=!0,k||(E=[O(yv,"keydown",n[8]),O(i,"click",n[5]),O(e,"click",xt(n[5]))],k=!0)},p(A,[I]){const M={};I&2&&(M.activeSection=A[1]),d.$set(M);let R=h;h=N(A),h===R?~h&&T[h].p(A,I):(_&&(Tt(),ye(T[R],1,1,()=>{T[R]=null}),St()),~h?(_=T[h],_?_.p(A,I):(_=T[h]=w[h](A),_.c()),he(_,1),_.m(g,null)):_=null)},i(A){b||(he(d.$$.fragment,A),he(_),b=!0)},o(A){ye(d.$$.fragment,A),ye(_),b=!1},d(A){A&&S(e),Xe(d),~h&&T[h].d(),k=!1,Te(E)}}}function ma(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 Lv(n,e,t){let{onClose:l=null}=e,{onSyncRefresh:s=null}=e,{onPluginToggle:o=null}=e,{initialSection:i="general"}=e,c=i,u=null;async function d(){try{t(2,u=await ma("GetAppConfig"))}catch{t(2,u=null)}}d();function m(k){t(1,c=k)}function g(){l&&l()}async function h(k){try{await ma("SaveAppConfig",k),t(2,u=k)}catch(E){console.error(E)}}function _(){s&&s()}function b(k){k.key==="Escape"&&g()}return n.$$set=k=>{"onClose"in k&&t(9,l=k.onClose),"onSyncRefresh"in k&&t(10,s=k.onSyncRefresh),"onPluginToggle"in k&&t(0,o=k.onPluginToggle),"initialSection"in k&&t(11,i=k.initialSection)},[o,c,u,d,m,g,h,_,b,l,s,i]}class Ov extends pt{constructor(e){super(),dt(this,e,Lv,Mv,ft,{onClose:9,onSyncRefresh:10,onPluginToggle:0,initialSection:11})}}function Dv(n){let e,t,l,s,o,i,c,u;return{c(){e=f("div"),t=f("span"),l=y(),s=f("span"),s.textContent=`${v("sync.status.disabled")}`,o=y(),i=f("button"),i.textContent=`${v("sync.configure")}`,r(t,"class","sync-dot dot-disabled svelte-1rxbx0"),r(s,"class","sync-label svelte-1rxbx0"),r(i,"class","btn btn-xs svelte-1rxbx0"),r(e,"class","sync-status-row svelte-1rxbx0")},m(d,m){C(d,e,m),a(e,t),a(e,l),a(e,s),a(e,o),a(e,i),c||(u=O(i,"click",function(){On(n[5])&&n[5].apply(this,arguments)}),c=!0)},p(d,m){n=d},d(d){d&&S(e),c=!1,u()}}}function Pv(n){let e,t,l,s,o,i=n[7](n[0])+"",c,u,d,m,g,h=(n[1]?v("sync.running"):v("sync.run"))+"",_,b,k,E,w,T,N,A=n[0].unpushedOps>0&&ga(n),I=n[2]&&ha(n);return{c(){e=f("div"),t=f("span"),s=y(),o=f("span"),c=j(i),u=y(),A&&A.c(),d=y(),m=f("div"),g=f("button"),_=j(h),b=y(),k=f("button"),k.textContent=`${v("sync.details")}`,E=y(),I&&I.c(),w=ht(),r(t,"class",l="sync-dot "+n[6](n[0])+" svelte-1rxbx0"),r(o,"class","sync-label svelte-1rxbx0"),r(g,"class","btn btn-xs svelte-1rxbx0"),g.disabled=n[1],r(k,"class","btn btn-xs btn-link svelte-1rxbx0"),r(m,"class","sync-actions-row svelte-1rxbx0"),r(e,"class","sync-status-row svelte-1rxbx0")},m(M,R){C(M,e,R),a(e,t),a(e,s),a(e,o),a(o,c),a(e,u),A&&A.m(e,null),a(e,d),a(e,m),a(m,g),a(g,_),a(m,b),a(m,k),C(M,E,R),I&&I.m(M,R),C(M,w,R),T||(N=[O(g,"click",function(){On(n[4])&&n[4].apply(this,arguments)}),O(k,"click",function(){On(n[5])&&n[5].apply(this,arguments)})],T=!0)},p(M,R){n=M,R&1&&l!==(l="sync-dot "+n[6](n[0])+" svelte-1rxbx0")&&r(t,"class",l),R&1&&i!==(i=n[7](n[0])+"")&&Q(c,i),n[0].unpushedOps>0?A?A.p(n,R):(A=ga(n),A.c(),A.m(e,d)):A&&(A.d(1),A=null),R&2&&h!==(h=(n[1]?v("sync.running"):v("sync.run"))+"")&&Q(_,h),R&2&&(g.disabled=n[1]),n[2]?I?I.p(n,R):(I=ha(n),I.c(),I.m(w.parentNode,w)):I&&(I.d(1),I=null)},d(M){M&&(S(e),S(E),S(w)),A&&A.d(),I&&I.d(M),T=!1,Te(N)}}}function ga(n){let e,t=n[0].unpushedOps+"",l,s,o=v("sync.changes")+"",i;return{c(){e=f("span"),l=j(t),s=y(),i=j(o),r(e,"class","sync-count svelte-1rxbx0")},m(c,u){C(c,e,u),a(e,l),a(e,s),a(e,i)},p(c,u){u&1&&t!==(t=c[0].unpushedOps+"")&&Q(l,t)},d(c){c&&S(e)}}}function ha(n){let e,t,l;return{c(){e=f("div"),t=j(n[2]),r(e,"class",l=kr(n[3]==="warning"?"sync-message sync-message-warning":"sync-message")+" svelte-1rxbx0")},m(s,o){C(s,e,o),a(e,t)},p(s,o){o&4&&Q(t,s[2]),o&8&&l!==(l=kr(s[3]==="warning"?"sync-message sync-message-warning":"sync-message")+" svelte-1rxbx0")&&r(e,"class",l)},d(s){s&&S(e)}}}function zv(n){let e;function t(o,i){var c;return(c=o[0])!=null&&c.configured?Pv:Dv}let l=t(n),s=l(n);return{c(){e=f("div"),s.c(),r(e,"class","sync-status-widget svelte-1rxbx0")},m(o,i){C(o,e,i),s.m(e,null)},p(o,[i]){l===(l=t(o))&&s?s.p(o,i):(s.d(1),s=l(o),s&&(s.c(),s.m(e,null)))},i:se,o:se,d(o){o&&S(e),s.d()}}}function Bv(n,e,t){let{syncStatus:l=null}=e,{syncLoading:s=!1}=e,{syncMessage:o=""}=e,{syncMessageKind:i=""}=e,{onSync:c=null}=e,{onOpenSettings:u=null}=e;function d(g){return!g||!g.configured?"dot-disabled":s?"dot-syncing":g.revoked?"dot-disabled":g.connected?"dot-connected":g.configured?"dot-warning":"dot-disabled"}function m(g){return!g||!g.configured?v("sync.status.disabled"):s?v("sync.status.syncing"):g.revoked?v("sync.status.error"):g.connected?v("sync.status.connected"):v("sync.status.disconnected")}return n.$$set=g=>{"syncStatus"in g&&t(0,l=g.syncStatus),"syncLoading"in g&&t(1,s=g.syncLoading),"syncMessage"in g&&t(2,o=g.syncMessage),"syncMessageKind"in g&&t(3,i=g.syncMessageKind),"onSync"in g&&t(4,c=g.onSync),"onOpenSettings"in g&&t(5,u=g.onOpenSettings)},[l,s,o,i,c,u,d,m]}class Fv extends pt{constructor(e){super(),dt(this,e,Bv,zv,ft,{syncStatus:0,syncLoading:1,syncMessage:2,syncMessageKind:3,onSync:4,onOpenSettings:5})}}function _a(n,e,t){const l=n.slice();return l[10]=e[t],l}function jv(n){let e,t=ve(n[0]),l=[];for(let s=0;s0&&ba(n),R=n[10].ts_start&&va(n),L=n[10].status!=="pending"&&ka(n),B=n[10].selected_text&&ya(n),z=n[10].status==="pending"&&wa(n);return{c(){e=f("div"),t=f("div"),s=j(l),o=y(),i=f("div"),c=f("div"),d=j(u),m=y(),g=f("div"),_=j(h),k=y(),E=f("div"),M&&M.c(),w=y(),R&&R.c(),T=y(),L&&L.c(),N=y(),B&&B.c(),A=y(),z&&z.c(),I=y(),r(t,"class","event-icon svelte-slao4o"),r(c,"class","event-domain svelte-slao4o"),r(g,"class","event-title svelte-slao4o"),r(g,"title",b=n[10].title),r(E,"class","event-meta svelte-slao4o"),r(i,"class","event-body svelte-slao4o"),r(e,"class","event-item svelte-slao4o"),ce(e,"pending",n[10].status==="pending")},m(U,W){C(U,e,W),a(e,t),a(t,s),a(e,o),a(e,i),a(i,c),a(c,d),a(i,m),a(i,g),a(g,_),a(i,k),a(i,E),M&&M.m(E,null),a(E,w),R&&R.m(E,null),a(E,T),L&&L.m(E,null),a(i,N),B&&B.m(i,null),a(e,A),z&&z.m(e,null),a(e,I)},p(U,W){W&1&&l!==(l=Ta(U[10].type)+"")&&Q(s,l),W&1&&u!==(u=(U[10].domain||"?")+"")&&Q(d,u),W&1&&h!==(h=Hs(U[10].title||U[10].url,80)+"")&&Q(_,h),W&1&&b!==(b=U[10].title)&&r(g,"title",b),U[10].active_seconds>0?M?M.p(U,W):(M=ba(U),M.c(),M.m(E,w)):M&&(M.d(1),M=null),U[10].ts_start?R?R.p(U,W):(R=va(U),R.c(),R.m(E,T)):R&&(R.d(1),R=null),U[10].status!=="pending"?L?L.p(U,W):(L=ka(U),L.c(),L.m(E,null)):L&&(L.d(1),L=null),U[10].selected_text?B?B.p(U,W):(B=ya(U),B.c(),B.m(i,null)):B&&(B.d(1),B=null),U[10].status==="pending"?z?z.p(U,W):(z=wa(U),z.c(),z.m(e,I)):z&&(z.d(1),z=null),W&1&&ce(e,"pending",U[10].status==="pending")},d(U){U&&S(e),M&&M.d(),R&&R.d(),L&&L.d(),B&&B.d(),z&&z.d()}}}function Hv(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 Wv(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 Gv(n){let e,t,l,s,o,i=n[1]?"⏳":"🔄",c,u,d,m;function g(b,k){return b[0].length===0?Uv:jv}let h=g(n),_=h(n);return{c(){e=f("div"),t=f("div"),l=f("h3"),l.textContent=`${v("browserEvents","События браузера")}`,s=y(),o=f("button"),c=j(i),u=y(),_.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,k){C(b,e,k),a(e,t),a(t,l),a(t,s),a(t,o),a(o,c),a(e,u),_.m(e,null),d||(m=O(o,"click",function(){On(n[5])&&n[5].apply(this,arguments)}),d=!0)},p(b,[k]){n=b,k&2&&i!==(i=n[1]?"⏳":"🔄")&&Q(c,i),k&2&&(o.disabled=n[1]),h===(h=g(n))&&_?_.p(n,k):(_.d(1),_=h(n),_&&(_.c(),_.m(e,null)))},i:se,o:se,d(b){b&&S(e),_.d(),d=!1,m()}}}function Ta(n){return n==="page_visit"?"🌐":n==="note_capture"?"📝":n==="screenshot"?"📸":"•"}function Hs(n,e){return n?n.length>e?n.substring(0,e)+"...":n:""}function Kv(n,e,t){let{events:l=[]}=e,{loading:s=!1}=e,{onAccept:o=_=>{}}=e,{onDismiss:i=_=>{}}=e,{onAttach:c=_=>{}}=e,{onRefresh:u=()=>{}}=e,{formatTime:d=_=>""}=e;const m=_=>o(_),g=_=>c(_),h=_=>i(_);return n.$$set=_=>{"events"in _&&t(0,l=_.events),"loading"in _&&t(1,s=_.loading),"onAccept"in _&&t(2,o=_.onAccept),"onDismiss"in _&&t(3,i=_.onDismiss),"onAttach"in _&&t(4,c=_.onAttach),"onRefresh"in _&&t(5,u=_.onRefresh),"formatTime"in _&&t(6,d=_.formatTime)},[l,s,o,i,c,u,d,m,g,h]}class Vv extends pt{constructor(e){super(),dt(this,e,Kv,Gv,ft,{events:0,loading:1,onAccept:2,onDismiss:3,onAttach:4,onRefresh:5,formatTime:6})}}function Sa(n,e,t){const l=n.slice();return l[69]=e[t],l}function Ca(n,e,t){const l=n.slice();return l[69]=e[t],l}function Aa(n,e,t){const l=n.slice();return l[64]=e[t],l[65]=e,l[66]=t,l}function Na(n,e,t){const l=n.slice();return l[61]=e[t],l}function Ra(n,e,t){const l=n.slice();return l[61]=e[t],l}function Ia(n){let e,t;return{c(){e=f("span"),t=j(n[4]),r(e,"class","tab-badge svelte-ii7vwz")},m(l,s){C(l,e,s),a(e,t)},p(l,s){s[0]&16&&Q(t,l[4])},d(l){l&&S(e)}}}function Ma(n){let e,t=n[3].length+"",l;return{c(){e=f("span"),l=j(t),r(e,"class","tab-badge svelte-ii7vwz")},m(s,o){C(s,e,o),a(e,l)},p(s,o){o[0]&8&&t!==(t=s[3].length+"")&&Q(l,t)},d(s){s&&S(e)}}}function La(n){let e,t=n[15].length+"",l;return{c(){e=f("span"),l=j(t),r(e,"class","tab-badge svelte-ii7vwz")},m(s,o){C(s,e,o),a(e,l)},p(s,o){o[0]&32768&&t!==(t=s[15].length+"")&&Q(l,t)},d(s){s&&S(e)}}}function qv(n){let e,t,l;return t=new Vv({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(s,o){C(s,e,o),Ye(t,e,null),l=!0},p(s,o){const i={};o[0]&32768&&(i.events=s[15]),o[0]&65536&&(i.loading=s[16]),o[0]&32&&(i.formatTime=s[5]),o[0]&131072&&(i.onAccept=s[17]),o[0]&262144&&(i.onDismiss=s[18]),o[0]&524288&&(i.onAttach=s[19]),o[0]&1048576&&(i.onRefresh=s[20]),t.$set(i)},i(s){l||(he(t.$$.fragment,s),l=!0)},o(s){ye(t.$$.fragment,s),l=!1},d(s){s&&S(e),Xe(t)}}}function Zv(n){let e,t,l,s,o,i,c,u,d,m,g=n[25]==="asc"?"↑":"↓",h,_,b,k;function E(N,A){return N[3].length===0?xv:Qv}let w=E(n),T=w(n);return{c(){e=f("div"),t=f("div"),l=f("div"),s=f("button"),s.textContent=`${v("today.sortByTime")}`,o=y(),i=f("button"),i.textContent=`${v("today.sortByName")}`,c=y(),u=f("button"),u.textContent=`${v("today.sortByType")}`,d=y(),m=f("span"),h=j(g),_=y(),T.c(),r(s,"class","sort-btn svelte-ii7vwz"),ce(s,"active",n[24]==="time"),r(i,"class","sort-btn svelte-ii7vwz"),ce(i,"active",n[24]==="name"),r(u,"class","sort-btn svelte-ii7vwz"),ce(u,"active",n[24]==="type"),r(m,"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,s),a(l,o),a(l,i),a(l,c),a(l,u),a(l,d),a(l,m),a(m,h),a(e,_),T.m(e,null),b||(k=[O(s,"click",n[56]),O(i,"click",n[57]),O(u,"click",n[58])],b=!0)},p(N,A){A[0]&16777216&&ce(s,"active",N[24]==="time"),A[0]&16777216&&ce(i,"active",N[24]==="name"),A[0]&16777216&&ce(u,"active",N[24]==="type"),A[0]&33554432&&g!==(g=N[25]==="asc"?"↑":"↓")&&Q(h,g),w===(w=E(N))&&T?T.p(N,A):(T.d(1),T=w(N),T&&(T.c(),T.m(e,null)))},i:se,o:se,d(N){N&&S(e),T.d(),b=!1,Te(k)}}}function Yv(n){let e,t,l,s,o,i,c,u,d,m,g=n[23]==="asc"?"↑":"↓",h,_,b,k;function E(N,A){return N[2].length===0?ek:$v}let w=E(n),T=w(n);return{c(){e=f("div"),t=f("div"),l=f("div"),s=f("button"),s.textContent=`${v("today.sortByTime")}`,o=y(),i=f("button"),i.textContent=`${v("today.sortByName")}`,c=y(),u=f("button"),u.textContent=`${v("today.sortByType")}`,d=y(),m=f("span"),h=j(g),_=y(),T.c(),r(s,"class","sort-btn svelte-ii7vwz"),ce(s,"active",n[22]==="time"),r(i,"class","sort-btn svelte-ii7vwz"),ce(i,"active",n[22]==="name"),r(u,"class","sort-btn svelte-ii7vwz"),ce(u,"active",n[22]==="type"),r(m,"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,s),a(l,o),a(l,i),a(l,c),a(l,u),a(l,d),a(l,m),a(m,h),a(e,_),T.m(e,null),b||(k=[O(s,"click",n[51]),O(i,"click",n[52]),O(u,"click",n[53])],b=!0)},p(N,A){A[0]&4194304&&ce(s,"active",N[22]==="time"),A[0]&4194304&&ce(i,"active",N[22]==="name"),A[0]&4194304&&ce(u,"active",N[22]==="type"),A[0]&8388608&&g!==(g=N[23]==="asc"?"↑":"↓")&&Q(h,g),w===(w=E(N))&&T?T.p(N,A):(T.d(1),T=w(N),T&&(T.c(),T.m(e,null)))},i:se,o:se,d(N){N&&S(e),T.d(),b=!1,Te(k)}}}function Xv(n){let e;function t(o,i){return o[0].length===0?nk:tk}let l=t(n),s=l(n);return{c(){e=f("div"),s.c(),r(e,"class","today-tab-content svelte-ii7vwz")},m(o,i){C(o,e,i),s.m(e,null)},p(o,i){l===(l=t(o))&&s?s.p(o,i):(s.d(1),s=l(o),s&&(s.c(),s.m(e,null)))},i:se,o:se,d(o){o&&S(e),s.d()}}}function Jv(n){let e;function t(o,i){return!o[1]||!o[1].events||o[1].events.length===0?sk:lk}let l=t(n),s=l(n);return{c(){e=f("div"),s.c(),r(e,"class","today-tab-content svelte-ii7vwz")},m(o,i){C(o,e,i),s.m(e,null)},p(o,i){l===(l=t(o))&&s?s.p(o,i):(s.d(1),s=l(o),s&&(s.c(),s.m(e,null)))},i:se,o:se,d(o){o&&S(e),s.d()}}}function Qv(n){let e,t=ve(Va(n[3],n[24],n[25])),l=[];for(let s=0;s0&&za(n);function te(...ee){return n[43](n[64],n[65],n[66],...ee)}function ne(){return n[44](n[64])}function de(){return n[45](n[64])}function Ae(){return n[46](n[64])}function Pe(){return n[47](n[64],n[65],n[66])}function qe(...ee){return n[48](n[64],n[65],n[66],...ee)}let Ne=n[64]._expanded&&n[64].events&&n[64].events.length>0&&Ba(n);return{c(){e=f("div"),t=f("div"),l=f("div"),s=f("button"),i=j(o),c=y(),u=f("span"),m=j(d),g=y(),h=f("span"),b=j(_),k=y(),w=j(E),$&&$.c(),T=y(),N=f("div"),A=f("span"),R=y(),L=f("input"),z=y(),U=f("span"),U.textContent=`${v("suggest.minutes")}`,W=y(),K=f("button"),K.textContent=`${v("suggest.edit")}`,q=y(),Y=f("button"),Y.textContent=`${v("suggest.apply")}`,G=y(),D=f("button"),D.textContent=`${v("common.delete")}`,H=y(),Ne&&Ne.c(),F=y(),r(s,"class","suggestion-node link-btn svelte-ii7vwz"),r(u,"class","suggestion-summary svelte-ii7vwz"),r(h,"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",M=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(L,"type","number"),r(L,"class","suggestion-min-input svelte-ii7vwz"),L.value=B=n[64].suggestedMin,r(L,"min","1"),r(L,"max","480"),r(U,"class","suggestion-min-label svelte-ii7vwz"),r(K,"class","btn btn-sm svelte-ii7vwz"),r(Y,"class","btn btn-sm btn-primary svelte-ii7vwz"),r(D,"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(ee,re){C(ee,e,re),a(e,t),a(t,l),a(l,s),a(s,i),a(l,c),a(l,u),a(u,m),a(l,g),a(l,h),a(h,b),a(h,k),a(h,w),$&&$.m(h,null),a(t,T),a(t,N),a(N,A),a(N,R),a(N,L),a(N,z),a(N,U),a(N,W),a(N,K),a(N,q),a(N,Y),a(N,G),a(N,D),a(e,H),Ne&&Ne.m(e,null),a(e,F),J||(Z=[O(s,"click",He(X)),O(L,"change",He(te)),O(K,"click",He(ne)),O(Y,"click",He(de)),O(D,"click",He(Ae)),O(t,"click",Pe),O(t,"keydown",qe)],J=!0)},p(ee,re){n=ee,re[0]&1&&o!==(o=n[64].nodeTitle+"")&&Q(i,o),re[0]&1&&d!==(d=n[64].summary+"")&&Q(m,d),re[0]&1&&_!==(_=n[64].suggestedMin+"")&&Q(b,_),n[64].events&&n[64].events.length>0?$?$.p(n,re):($=za(n),$.c(),$.m(h,null)):$&&($.d(1),$=null),re[0]&1&&I!==(I=v("suggest.confidence."+n[64].confidence))&&r(A,"title",I),re[0]&1&&M!==(M=v("suggest.confidence."+n[64].confidence))&&r(A,"aria-label",M),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)&&L.value!==B&&(L.value=B),n[64]._expanded&&n[64].events&&n[64].events.length>0?Ne?Ne.p(n,re):(Ne=Ba(n),Ne.c(),Ne.m(e,F)):Ne&&(Ne.d(1),Ne=null),re[0]&1&&ce(e,"expanded",n[64]._expanded)},d(ee){ee&&S(e),$&&$.d(),Ne&&Ne.d(),J=!1,Te(Z)}}}function lk(n){let e,t=ve(n[1].events),l=[];for(let s=0;s ',q=y(),r(t,"class","feed-icon svelte-ii7vwz"),r(u,"class","feed-type svelte-ii7vwz"),r(h,"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(i,"class","feed-body svelte-ii7vwz"),r(K,"class","feed-nav-btn svelte-ii7vwz"),r(K,"title",v("common.open")),r(e,"class","feed-item svelte-ii7vwz"),r(e,"role","button"),r(e,"tabindex","0")},m(Z,X){C(Z,e,X),a(e,t),a(t,s),a(e,o),a(e,i),a(i,c),a(c,u),a(u,m),a(c,g),a(c,h),a(c,_),a(c,b),a(b,E),a(i,w),a(i,T),D&&D.m(T,null),a(T,A),a(T,I),a(I,R),a(T,L),a(T,B),a(B,U),a(e,W),a(e,K),a(e,q),Y||(G=[O(K,"click",He(H)),O(e,"click",F),O(e,"keydown",J)],Y=!0)},p(Z,X){n=Z,X[0]&2&&l!==(l=Ka(n[61].eventType)+"")&&Q(s,l),X[0]&2&&d!==(d=n[28](n[61])+"")&&Q(m,d),X[0]&2&&k!==(k=(n[61].title||"")+"")&&Q(E,k),X[0]&2&&(N=Ws(n[61])),N?D?D.p(n,X):(D=Wa(n),D.c(),D.m(T,A)):D&&(D.d(1),D=null),X[0]&66&&M!==(M=n[6](n[61].eventType)+"")&&Q(R,M),X[0]&34&&z!==(z=n[5](n[61].createdAt)+"")&&Q(U,z)},d(Z){Z&&S(e),D&&D.d(),Y=!1,Te(G)}}}function ik(n){var J;let e,t,l,s=(((J=n[1])==null?void 0:J.date)||"")+"",o,i,c,u,d,m,g=v("today.suggestionsTab")+"",h,_,b,k,E,w,T=v("today.captured")+"",N,A,I,M,R,L,B,z,U,W,K,q=n[4]>0&&Ia(n),Y=n[3].length>0&&Ma(n),G=n[15].length>0&&La(n);const D=[Jv,Xv,Yv,Zv,qv],H=[];function F(Z,X){return Z[21]==="feed"?0:Z[21]==="suggestions"?1:Z[21]==="inprogress"?2:Z[21]==="captured"?3:Z[21]==="browser"?4:-1}return~(B=F(n))&&(z=H[B]=D[B](n)),{c(){e=f("div"),t=f("div"),l=f("span"),o=j(s),i=y(),c=f("div"),u=f("button"),u.textContent=`${v("today.feed")}`,d=y(),m=f("button"),h=j(g),_=y(),q&&q.c(),b=y(),k=f("button"),k.textContent=`${v("today.inProgress")}`,E=y(),w=f("button"),N=j(T),A=y(),Y&&Y.c(),I=y(),M=f("button"),R=j(`Браузер
- `),G&&G.c(),L=y(),z&&z.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(m,"class","today-tab svelte-ii7vwz"),ce(m,"active",n[21]==="suggestions"),r(k,"class","today-tab svelte-ii7vwz"),ce(k,"active",n[21]==="inprogress"),r(w,"class","today-tab svelte-ii7vwz"),ce(w,"active",n[21]==="captured"),r(M,"class","today-tab svelte-ii7vwz"),ce(M,"active",n[21]==="browser"),r(c,"class","today-tabs svelte-ii7vwz"),r(e,"class","today-screen svelte-ii7vwz")},m(Z,X){C(Z,e,X),a(e,t),a(t,l),a(l,o),a(e,i),a(e,c),a(c,u),a(c,d),a(c,m),a(m,h),a(m,_),q&&q.m(m,null),a(c,b),a(c,k),a(c,E),a(c,w),a(w,N),a(w,A),Y&&Y.m(w,null),a(c,I),a(c,M),a(M,R),G&&G.m(M,null),a(e,L),~B&&H[B].m(e,null),U=!0,W||(K=[O(u,"click",n[34]),O(m,"click",n[35]),O(k,"click",n[36]),O(w,"click",n[37]),O(M,"click",n[38])],W=!0)},p(Z,X){var te;(!U||X[0]&2)&&s!==(s=(((te=Z[1])==null?void 0:te.date)||"")+"")&&Q(o,s),(!U||X[0]&2097152)&&ce(u,"active",Z[21]==="feed"),Z[4]>0?q?q.p(Z,X):(q=Ia(Z),q.c(),q.m(m,null)):q&&(q.d(1),q=null),(!U||X[0]&2097152)&&ce(m,"active",Z[21]==="suggestions"),(!U||X[0]&2097152)&&ce(k,"active",Z[21]==="inprogress"),Z[3].length>0?Y?Y.p(Z,X):(Y=Ma(Z),Y.c(),Y.m(w,null)):Y&&(Y.d(1),Y=null),(!U||X[0]&2097152)&&ce(w,"active",Z[21]==="captured"),Z[15].length>0?G?G.p(Z,X):(G=La(Z),G.c(),G.m(M,null)):G&&(G.d(1),G=null),(!U||X[0]&2097152)&&ce(M,"active",Z[21]==="browser");let $=B;B=F(Z),B===$?~B&&H[B].p(Z,X):(z&&(Tt(),ye(H[$],1,1,()=>{H[$]=null}),St()),~B?(z=H[B],z?z.p(Z,X):(z=H[B]=D[B](Z),z.c()),he(z,1),z.m(e,null)):z=null)},i(Z){U||(he(z),U=!0)},o(Z){ye(z),U=!1},d(Z){Z&&S(e),q&&q.d(),Y&&Y.d(),G&&G.d(),~B&&H[B].d(),W=!1,Te(K)}}}function Ka(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 Ws(n){const e=[];return n.nodePath&&e.push(n.nodePath),e.length>0?e.join(" → "):""}function Va(n,e,t){const l=[...n];return l.sort((s,o)=>{let i=0;if(e==="name")i=(s.title||"").localeCompare(o.title||"");else if(e==="type"){const c=s.captureKind||s.sourceKind||"",u=o.captureKind||o.sourceKind||"";i=c.localeCompare(u)}else i=(s.capturedAt||s.createdAt||"").localeCompare(o.capturedAt||o.createdAt||"");return t==="asc"?i:-i}),l}function qa(n){return{text:"📝",url:"🔗",file:"📄",image:"🖼",folder:"📁"}[n]||"📦"}function ok(n,e,t){let{todayDashboard:l=null}=e,{suggestions:s=[]}=e,{inProgressItems:o=[]}=e,{todayCaptures:i=[]}=e,{suggestionCount:c=0}=e,{formatTime:u=x=>""}=e,{eventLabel:d=x=>x}=e,{eventIcon:m=x=>""}=e,{inboxMetaText:g=x=>""}=e,{onOpenNodeById:h=x=>{}}=e,{onOpenActivityEvent:_=x=>{}}=e,{onOpenActivityTarget:b=x=>{}}=e,{onOpenSuggestionWorklog:k=x=>{}}=e,{onAcceptSuggestion:E=x=>{}}=e,{onDeleteSuggestion:w=x=>{}}=e,{onOpenNodeFolder:T=x=>{}}=e,{onOpenInboxArtifact:N=x=>{}}=e,{onOpenTrashNode:A=x=>{}}=e,{browserEvents:I=[]}=e,{browserLoading:M=!1}=e,{onBrowserAccept:R=x=>{}}=e,{onBrowserDismiss:L=x=>{}}=e,{onBrowserAttach:B=x=>{}}=e,{onBrowserRefresh:z=()=>{}}=e,U="feed";function W(x){E(x)}function K(x){w(x)}function q(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&&h(x.nodeId);return}if(["note_created","note_updated","note_deleted"].includes(x.eventType)){x.targetType==="note"&&x.targetId?b(x):x.nodeId&&h(x.nodeId);return}if(x.eventType==="worklog_added"){x.nodeId&&h(x.nodeId);return}if(["action_created","action_done"].includes(x.eventType)){x.nodeId&&h(x.nodeId);return}(x.id||x.nodeId)&&_(x)}}function G(x,pe,me){const Re=[...x];return Re.sort((ot,Je)=>{let rt=0;return pe==="name"?rt=(ot.title||"").localeCompare(Je.title||""):pe==="type"?rt=(d(ot.eventType)||"").localeCompare(d(Je.eventType)||""):rt=(ot.createdAt||"").localeCompare(Je.createdAt||""),me==="asc"?rt:-rt}),Re}let D="time",H="desc",F="time",J="desc";const Z=()=>t(21,U="feed"),X=()=>t(21,U="suggestions"),$=()=>t(21,U="inprogress"),te=()=>t(21,U="captured"),ne=()=>t(21,U="browser"),de=x=>Y(x),Ae=x=>Y(x),Pe=(x,pe)=>pe.key==="Enter"&&Y(x),qe=x=>h(x.nodeId),Ne=(x,pe,me,Re)=>t(0,pe[me].suggestedMin=parseInt(Re.target.value),s),ee=x=>k(x),re=x=>W(x),Se=x=>K(x),ze=(x,pe,me)=>t(0,pe[me]._expanded=!x._expanded,s),ge=(x,pe,me,Re)=>Re.key==="Enter"&&t(0,pe[me]._expanded=!x._expanded,s),We=x=>b(x),mt=x=>T(x.nodeId),be=()=>{t(22,D="time"),t(23,H=D==="time"&&H==="desc"?"asc":"desc")},it=()=>{t(22,D="name"),t(23,H=D==="name"&&H==="desc"?"asc":"desc")},Oe=()=>{t(22,D="type"),t(23,H=D==="type"&&H==="desc"?"asc":"desc")},Ce=x=>_(x),Fe=(x,pe)=>pe.key==="Enter"&&_(x),je=()=>{t(24,F="time"),t(25,J=F==="time"&&J==="desc"?"asc":"desc")},De=()=>{t(24,F="name"),t(25,J=F==="name"&&J==="desc"?"asc":"desc")},Be=()=>{t(24,F="type"),t(25,J=F==="type"&&J==="desc"?"asc":"desc")},ue=x=>N(x),we=(x,pe)=>pe.key==="Enter"&&N(x);return n.$$set=x=>{"todayDashboard"in x&&t(1,l=x.todayDashboard),"suggestions"in x&&t(0,s=x.suggestions),"inProgressItems"in x&&t(2,o=x.inProgressItems),"todayCaptures"in x&&t(3,i=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,m=x.eventIcon),"inboxMetaText"in x&&t(8,g=x.inboxMetaText),"onOpenNodeById"in x&&t(9,h=x.onOpenNodeById),"onOpenActivityEvent"in x&&t(10,_=x.onOpenActivityEvent),"onOpenActivityTarget"in x&&t(11,b=x.onOpenActivityTarget),"onOpenSuggestionWorklog"in x&&t(12,k=x.onOpenSuggestionWorklog),"onAcceptSuggestion"in x&&t(31,E=x.onAcceptSuggestion),"onDeleteSuggestion"in x&&t(32,w=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,M=x.browserLoading),"onBrowserAccept"in x&&t(17,R=x.onBrowserAccept),"onBrowserDismiss"in x&&t(18,L=x.onBrowserDismiss),"onBrowserAttach"in x&&t(19,B=x.onBrowserAttach),"onBrowserRefresh"in x&&t(20,z=x.onBrowserRefresh)},[s,l,o,i,c,u,d,m,g,h,_,b,k,T,N,I,M,R,L,B,z,U,D,H,F,J,W,K,q,Y,G,E,w,A,Z,X,$,te,ne,de,Ae,Pe,qe,Ne,ee,re,Se,ze,ge,We,mt,be,it,Oe,Ce,Fe,je,De,Be,ue,we]}class rk extends pt{constructor(e){super(),dt(this,e,ok,ik,ft,{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 ak(n){let e,t,l,s,o=n[3]&&Za(n);return{c(){e=f("div"),o&&o.c(),t=y(),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",s=n[0]+" panel"),r(e,"class","plugin-frame-container svelte-xgfxht")},m(i,c){C(i,e,c),o&&o.m(e,null),a(e,t),a(e,l),n[9](l)},p(i,c){i[3]?o?o.p(i,c):(o=Za(i),o.c(),o.m(e,t)):o&&(o.d(1),o=null),c&2&&r(l,"srcdoc",i[1]),c&1&&s!==(s=i[0]+" panel")&&r(l,"title",s)},d(i){i&&S(e),o&&o.d(),n[9](null)}}}function ck(n){let e,t,l,s,o,i,c;return{c(){e=f("div"),t=f("p"),l=j("Плагин «"),s=j(n[0]),o=j("» активен, но HTML-панель не настроена."),i=y(),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,s),a(t,o),a(e,i),a(e,c)},p(u,d){d&1&&Q(s,u[0])},d(u){u&&S(e)}}}function uk(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 Za(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(s,o){C(s,e,o),a(e,t),a(e,l)},p(s,o){o&8&&Q(l,s[3])},d(s){s&&S(e)}}}function fk(n){let e;function t(o,i){return o[2]?uk:o[1]?ak:ck}let l=t(n),s=l(n);return{c(){e=f("div"),s.c(),r(e,"class","plugin-page svelte-xgfxht")},m(o,i){C(o,e,i),s.m(e,null)},p(o,[i]){l===(l=t(o))&&s?s.p(o,i):(s.d(1),s=l(o),s&&(s.c(),s.m(e,null)))},i:se,o:se,d(o){o&&S(e),s.d()}}}function fl(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 dk(n,e,t){let l,s,o,i,{sectionId:c=""}=e,u="",d=!0,m="",g=null,h=[],_=!1;function b(R){console.log("[CalendarPluginPage] postToIframe: iframeReady="+_+", hasEl="+!!g+", hasCW="+!!(g!=null&&g.contentWindow)),g&&g.contentWindow&&_?(console.log("[CalendarPluginPage] postToIframe: sending msg.type="+R.type),g.contentWindow.postMessage(R,"*")):(console.log("[CalendarPluginPage] postToIframe: queuing msg.type="+R.type),h.push(R))}function k(R){if(!g||!g.contentWindow||R.source!==g.contentWindow)return;const L=R.data;if(!(!L||typeof L!="object")&&!(!L.source||typeof L.source!="string")&&!(!L.action||typeof L.action!="string"))switch(L.action){case"ready":for(_=!0;h.length>0;)g.contentWindow.postMessage(h.shift(),"*");E();break;case"get-events":w(L.data);break;case"create-event":T(L.data);break;case"update-event":N(L.data);break;case"delete-event":A(L.data);break;default:console.log("[CalendarPluginPage] Unknown iframe action:",L.action)}}async function E(){try{console.log("[CalendarPluginPage] loadCalendarData: step 1");const R=new Date,L=R.getFullYear(),B=R.getMonth(),z=new Date(L,B,1).toISOString().slice(0,10)+"T00:00:00",U=new Date(L,B+1,0).toISOString().slice(0,10)+"T23:59:59";console.log("[CalendarPluginPage] loadCalendarData: step 2, start="+z+", end="+U),console.log("[CalendarPluginPage] loadCalendarData: step 3, calling get_events...");const W=fl("CallPluginFunction",s,i+"get_events",JSON.stringify({start:z,end:U}));console.log("[CalendarPluginPage] loadCalendarData: step 4, calling get_categories...");const K=fl("CallPluginFunction",s,i+"get_categories","{}");console.log("[CalendarPluginPage] loadCalendarData: step 5, awaiting Promise.all...");const[q,Y]=await Promise.all([W,K]);console.log("[CalendarPluginPage] loadCalendarData: step 6, got results, eventsRaw="+typeof q+", categoriesRaw="+typeof Y);const G=q?JSON.parse(q):[],D=Y?JSON.parse(Y):[];b({source:"verstak",type:"calendar-data",events:G,categories:D});try{window.go.main.App.WriteDebugLog("[CalendarPluginPage] calendar-data sent to iframe, events.len="+G.length+", categories.len="+((D==null?void 0:D.length)||0)+", typeof events="+typeof G+", typeof eventsRaw="+typeof q+", eventsRaw.length="+q.length+", eventsRaw.substr(0,10)="+String(q).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,m=String(R))}}async function w(R){try{const L=JSON.stringify({start:R.start,end:R.end}),B=await fl("CallPluginFunction",s,i+"get_events",L),z=B?JSON.parse(B):[];b({source:"verstak",type:"calendar-data",events:z})}catch(L){console.error("[CalendarPluginPage] get-events:",L)}}async function T(R){try{const L=JSON.stringify(R),B=await fl("CallPluginFunction",s,i+"create_event",L),z=B?JSON.parse(B):{};b({source:"verstak",type:"event-created",event:z}),E()}catch(L){console.error("[CalendarPluginPage] create-event:",L),b({source:"verstak",type:"error",message:String(L)})}}async function N(R){try{const L=JSON.stringify(R);await fl("CallPluginFunction",s,i+"update_event",L),b({source:"verstak",type:"event-updated",event:R}),E()}catch(L){console.error("[CalendarPluginPage] update-event:",L)}}async function A(R){try{const L=JSON.stringify({id:R.id});await fl("CallPluginFunction",s,i+"delete_event",L),b({source:"verstak",type:"event-deleted",id:R.id}),E()}catch(L){console.error("[CalendarPluginPage] delete-event:",L)}}us(async()=>{try{t(1,u=await fl("GetPluginPanelHTML",s)||"")}catch(R){t(3,m=String(R))}t(2,d=!1),window.addEventListener("message",k)}),fs(()=>{window.removeEventListener("message",k)});function I(R,L){b({source:"verstak",type:"drop",date:L,data:R})}function M(R){Dn[R?"unshift":"push"](()=>{g=R,t(4,g)})}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,s=l[1]||""),n.$$.dirty&256&&t(7,o=l[2]||"main"),n.$$.dirty&128&&o.charAt(0).toUpperCase()+o.slice(1),n.$$.dirty&1&&(i=s?s+".":"")},[s,u,d,m,g,c,I,o,l,M]}class pk extends pt{constructor(e){super(),dt(this,e,dk,fk,ft,{sectionId:5,handleDrop:6})}get handleDrop(){return this.$$.ctx[6]}}function Ya(n,e,t){const l=n.slice();return l[25]=e[t],l[27]=t,l}function Xa(n){let e;function t(o,i){return o[3]?hk:o[1].length===0?gk:mk}let l=t(n),s=l(n);return{c(){e=f("div"),s.c(),r(e,"class","global-search-results svelte-1dlr37h")},m(o,i){C(o,e,i),s.m(e,null)},p(o,i){l===(l=t(o))&&s?s.p(o,i):(s.d(1),s=l(o),s&&(s.c(),s.m(e,null)))},d(o){o&&S(e),s.d()}}}function mk(n){let e,t=ve(n[1]),l=[];for(let s=0;s[]}=e,{typeLabel:s=W=>W||""}=e;const o=Zn();let i="",c=[],u=!1,d=!1,m=0,g,h;function _(W){const K=[],q=s(W.type),Y=bk(W);return q&&K.push(q),Y&&K.push(Y),K.join(" · ")}async function b(){const W=Sd(i);if(W.length<2){t(1,c=[]),t(2,u=!1),t(3,d=!1);return}t(3,d=!0);try{t(1,c=await l("Search",W)||[]),t(4,m=0),t(2,u=!0)}catch{t(1,c=[]),t(2,u=!1)}finally{t(3,d=!1)}}function k(){clearTimeout(h),h=setTimeout(b,180)}function E(){t(2,u=!1),t(4,m=0)}function w(){t(0,i=""),t(1,c=[]),E()}function T(W){W&&(o("open",W),w(),g==null||g.blur())}function N(){k()}function A(W){if(W.key==="Escape"){W.preventDefault(),w(),g==null||g.blur();return}!u||c.length===0||(W.key==="ArrowDown"?(W.preventDefault(),t(4,m=Math.min(c.length-1,m+1))):W.key==="ArrowUp"?(W.preventDefault(),t(4,m=Math.max(0,m-1))):W.key==="Enter"&&(W.preventDefault(),T(c[m])))}async function I(){await a_(),g==null||g.focus(),g==null||g.select()}function M(W){if((W.ctrlKey||W.metaKey)&&W.key.toLowerCase()==="k"){W.preventDefault(),I();return}W.key==="/"&&!vk(W.target)&&(W.preventDefault(),I())}us(()=>{window.addEventListener("keydown",M)}),fs(()=>{window.removeEventListener("keydown",M),clearTimeout(h)});function R(W){Dn[W?"unshift":"push"](()=>{g=W,t(5,g)})}function L(){i=this.value,t(0,i)}const B=()=>{c.length>0&&t(2,u=!0)},z=()=>setTimeout(E,160),U=W=>T(W);return n.$$set=W=>{"wailsCall"in W&&t(11,l=W.wailsCall),"typeLabel"in W&&t(12,s=W.typeLabel)},[i,c,u,d,m,g,_,E,T,N,A,l,s,R,L,B,z,U]}class yk extends pt{constructor(e){super(),dt(this,e,kk,_k,ft,{wailsCall:11,typeLabel:12})}}const wk=n=>({}),$a=n=>({});function ec(n){let e,t;return{c(){e=f("span"),t=j(n[1]),r(e,"class","header-subtitle svelte-7x8q9h")},m(l,s){C(l,e,s),a(e,t)},p(l,s){s&2&&Q(t,l[1])},d(l){l&&S(e)}}}function Ek(n){let e,t,l,s=(n[0]||"")+"",o,i,c,u,d,m,g,h=n[1]&&ec(n);d=new yk({props:{wailsCall:n[2],typeLabel:n[3]}}),d.$on("open",n[7]);const _=n[6].actions,b=n_(_,n,n[5],$a);return{c(){e=f("header"),t=f("div"),l=f("span"),o=j(s),i=y(),h&&h.c(),c=y(),u=f("div"),Qe(d.$$.fragment),m=y(),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,E){C(k,e,E),a(e,t),a(t,l),a(l,o),a(t,i),h&&h.m(t,null),a(e,c),a(e,u),Ye(d,u,null),a(u,m),b&&b.m(u,null),g=!0},p(k,[E]){(!g||E&1)&&s!==(s=(k[0]||"")+"")&&Q(o,s),(!g||E&1)&&ce(l,"placeholder",!k[0]),k[1]?h?h.p(k,E):(h=ec(k),h.c(),h.m(t,null)):h&&(h.d(1),h=null);const w={};E&4&&(w.wailsCall=k[2]),E&8&&(w.typeLabel=k[3]),d.$set(w),b&&b.p&&(!g||E&32)&&s_(b,_,k,k[5],g?l_(_,k[5],E,wk):i_(k[5]),$a)},i(k){g||(he(d.$$.fragment,k),he(b,k),g=!0)},o(k){ye(d.$$.fragment,k),ye(b,k),g=!1},d(k){k&&S(e),h&&h.d(),Xe(d),b&&b.d(k)}}}function Tk(n,e,t){let{$$slots:l={},$$scope:s}=e,{title:o=""}=e,{subtitle:i=""}=e,{wailsCall:c=async()=>[]}=e,{typeLabel:u=g=>g||""}=e,{onOpenSearchResult:d=()=>{}}=e;const m=g=>d(g.detail);return n.$$set=g=>{"title"in g&&t(0,o=g.title),"subtitle"in g&&t(1,i=g.subtitle),"wailsCall"in g&&t(2,c=g.wailsCall),"typeLabel"in g&&t(3,u=g.typeLabel),"onOpenSearchResult"in g&&t(4,d=g.onOpenSearchResult),"$$scope"in g&&t(5,s=g.$$scope)},[o,i,c,u,d,s,l,m]}class Sk extends pt{constructor(e){super(),dt(this,e,Tk,Ek,ft,{title:0,subtitle:1,wailsCall:2,typeLabel:3,onOpenSearchResult:4})}}const Ck={open:' ',showInExplorer:' ',delete:' ',restore:' ',purge:' ',move:' ',attach:' ',back:' ',emptyTrash:' ',folder:' '};function Ct(n,e=16){return`${Ck[n]||""} `}function Ak(n){let e,t,l,s,o,i,c,u,d,m,g,h,_,b,k,E,w,T,N,A,I,M,R,L,B,z,U,W,K,q,Y,G,D,H,F,J,Z,X;return{c(){e=f("div"),t=f("div"),l=f("div"),s=f("button"),s.innerHTML='B ',o=y(),i=f("button"),i.innerHTML='I ',c=y(),u=f("button"),u.innerHTML='H ',d=y(),m=f("div"),g=y(),h=f("div"),_=f("button"),_.innerHTML=' ',b=y(),k=f("button"),k.innerHTML=' ',E=y(),w=f("button"),T=f("span"),T.textContent=">",N=y(),A=f("div"),I=y(),M=f("div"),R=f("button"),R.innerHTML=' ',L=y(),B=f("button"),B.innerHTML='1. ',z=y(),U=f("button"),U.innerHTML=' ',W=y(),K=f("button"),K.innerHTML='" ',q=y(),Y=f("div"),G=y(),D=f("div"),H=f("button"),H.innerHTML=' ',F=y(),J=f("textarea"),r(s,"type","button"),r(s,"class","md-toolbar-btn svelte-1etjgc1"),r(s,"title",v("note.toolbar.bold")),r(s,"aria-label",v("note.toolbar.bold")),r(i,"type","button"),r(i,"class","md-toolbar-btn svelte-1etjgc1"),r(i,"title",v("note.toolbar.italic")),r(i,"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(m,"class","md-toolbar-sep svelte-1etjgc1"),r(_,"type","button"),r(_,"class","md-toolbar-btn svelte-1etjgc1"),r(_,"title",v("note.toolbar.link")),r(_,"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(w,"type","button"),r(w,"class","md-toolbar-btn svelte-1etjgc1"),r(w,"title",v("note.toolbar.codeBlock")),r(w,"aria-label",v("note.toolbar.codeBlock")),r(h,"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",v("note.toolbar.bulletList")),r(R,"aria-label",v("note.toolbar.bulletList")),r(B,"type","button"),r(B,"class","md-toolbar-btn svelte-1etjgc1"),r(B,"title",v("note.toolbar.numberedList")),r(B,"aria-label",v("note.toolbar.numberedList")),r(U,"type","button"),r(U,"class","md-toolbar-btn svelte-1etjgc1"),r(U,"title",v("note.toolbar.checkbox")),r(U,"aria-label",v("note.toolbar.checkbox")),r(K,"type","button"),r(K,"class","md-toolbar-btn svelte-1etjgc1"),r(K,"title",v("note.toolbar.quote")),r(K,"aria-label",v("note.toolbar.quote")),r(M,"class","md-toolbar-group svelte-1etjgc1"),r(Y,"class","md-toolbar-sep svelte-1etjgc1"),r(H,"type","button"),r(H,"class","md-toolbar-btn md-toolbar-btn--internal svelte-1etjgc1"),r(H,"title",v("note.toolbar.internalLink")),r(H,"aria-label",v("note.toolbar.internalLink")),r(D,"class","md-toolbar-group svelte-1etjgc1"),r(t,"class","md-toolbar svelte-1etjgc1"),r(t,"role","toolbar"),r(t,"aria-label","Markdown formatting"),r(J,"class","md-textarea svelte-1etjgc1"),r(J,"placeholder",n[2]),r(J,"spellcheck","true"),r(e,"class","md-editor svelte-1etjgc1"),ce(e,"mode-edit",n[1]==="edit"||n[1]==="split")},m($,te){C($,e,te),a(e,t),a(t,l),a(l,s),a(l,o),a(l,i),a(l,c),a(l,u),a(t,d),a(t,m),a(t,g),a(t,h),a(h,_),a(h,b),a(h,k),a(h,E),a(h,w),a(w,T),a(t,N),a(t,A),a(t,I),a(t,M),a(M,R),a(M,L),a(M,B),a(M,z),a(M,U),a(M,W),a(M,K),a(t,q),a(t,Y),a(t,G),a(t,D),a(D,H),a(e,F),a(e,J),Ie(J,n[0]),n[19](J),Z||(X=[O(s,"click",n[4]),O(i,"click",n[5]),O(u,"click",n[8]),O(_,"click",n[7]),O(k,"click",n[6]),O(w,"click",n[13]),O(R,"click",n[10]),O(B,"click",n[11]),O(U,"click",n[12]),O(K,"click",n[9]),O(H,"click",n[14]),O(J,"input",n[18]),O(J,"input",n[15]),O(J,"keydown",n[16])],Z=!0)},p($,[te]){te&4&&r(J,"placeholder",$[2]),te&1&&Ie(J,$[0]),te&2&&ce(e,"mode-edit",$[1]==="edit"||$[1]==="split")},i:se,o:se,d($){$&&S(e),n[19](null),Z=!1,Te(X)}}}function Nk(n,e,t){let{content:l=""}=e,{viewMode:s="edit"}=e,{placeholder:o=""}=e;const i=Zn();let c;function u(z){const U=c;if(!U)return;const W=U.selectionStart,K=U.selectionEnd,q=l.substring(0,W),Y=l.substring(K),G=q+z+Y;t(0,l=G),i("content-change",{content:G}),requestAnimationFrame(()=>{U.focus(),U.selectionStart=U.selectionEnd=W+z.length})}function d(z,U="",W=""){const K=c;if(!K)return;const q=K.selectionStart,Y=K.selectionEnd,G=l.substring(q,Y),H=z+(G||W)+U,F=l.substring(0,q)+H+l.substring(Y);t(0,l=F),i("content-change",{content:F}),requestAnimationFrame(()=>{K.focus(),G?(K.selectionStart=q+z.length,K.selectionEnd=q+z.length+G.length):(K.selectionStart=q+z.length,K.selectionEnd=q+z.length+W.length)})}function m(z){const U=c;if(!U)return;const W=U.selectionStart,K=U.selectionEnd;let q=W;for(;q>0&&l[q-1]!==`
-`;)q--;let Y=K;for(;Ye in n?t_(n,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):n[e]=t;var et=(n,e,t)=>n_(n,typeof e!="symbol"?e+"":e,t);(function(){const e=document.createElement("link").relList;if(e&&e.supports&&e.supports("modulepreload"))return;for(const s of document.querySelectorAll('link[rel="modulepreload"]'))l(s);new MutationObserver(s=>{for(const o of s)if(o.type==="childList")for(const i of o.addedNodes)i.tagName==="LINK"&&i.rel==="modulepreload"&&l(i)}).observe(document,{childList:!0,subtree:!0});function t(s){const o={};return s.integrity&&(o.integrity=s.integrity),s.referrerPolicy&&(o.referrerPolicy=s.referrerPolicy),s.crossOrigin==="use-credentials"?o.credentials="include":s.crossOrigin==="anonymous"?o.credentials="omit":o.credentials="same-origin",o}function l(s){if(s.ep)return;s.ep=!0;const o=t(s);fetch(s.href,o)}})();function se(){}function l_(n,e){for(const t in e)n[t]=e[t];return n}function od(n){return n()}function vr(){return Object.create(null)}function Te(n){n.forEach(od)}function On(n){return typeof n=="function"}function ft(n,e){return n!=n?e==e:n!==e||n&&typeof n=="object"||typeof n=="function"}let Ns;function Fl(n,e){return n===e?!0:(Ns||(Ns=document.createElement("a")),Ns.href=e,n===Ns.href)}function s_(n){return Object.keys(n).length===0}function i_(n,e,t,l){if(n){const s=rd(n,e,t,l);return n[0](s)}}function rd(n,e,t,l){return n[1]&&l?l_(t.ctx.slice(),n[1](l(e))):t.ctx}function o_(n,e,t,l){if(n[2]&&l){const s=n[2](l(t));if(e.dirty===void 0)return s;if(typeof s=="object"){const o=[],i=Math.max(e.dirty.length,s.length);for(let c=0;c32){const e=[],t=n.ctx.length/32;for(let l=0;ln.removeEventListener(e,t,l)}function Ys(n){return function(e){return e.preventDefault(),n.call(this,e)}}function He(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 Ul(n){return n===""?null:+n}function c_(n){return Array.from(n.childNodes)}function Q(n,e){e=""+e,n.data!==e&&(n.data=e)}function Ie(n,e){n.value=e??""}function ln(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 s=n.$$.callbacks[e];if(s){const o=u_(e,t,{cancelable:l});return s.slice().forEach(i=>{i.call(n,o)}),!o.defaultPrevented}return!0}}function Ji(n,e){const t=n.$$.callbacks[e.type];t&&t.slice().forEach(l=>l.call(this,e))}const Pl=[],Dn=[];let Bl=[];const yr=[],ad=Promise.resolve();let Ui=!1;function cd(){Ui||(Ui=!0,ad.then(ud))}function f_(){return cd(),ad}function _l(n){Bl.push(n)}const Ni=new Set;let Il=0;function ud(){if(Il!==0)return;const n=os;do{try{for(;Iln.indexOf(l)===-1?e.push(l):t.push(l)),t.forEach(l=>l()),Bl=e}const Bs=new Set;let ml;function Tt(){ml={r:0,c:[],p:ml}}function St(){ml.r||Te(ml.c),ml=ml.p}function he(n,e){n&&n.i&&(Bs.delete(n),n.i(e))}function ye(n,e,t,l){if(n&&n.o){if(Bs.has(n))return;Bs.add(n),ml.c.push(()=>{Bs.delete(n),l&&(t&&n.d(1),l())}),n.o(e)}else l&&l()}function ve(n){return(n==null?void 0:n.length)!==void 0?n:Array.from(n)}function fd(n,e){ye(n,1,1,()=>{e.delete(n.key)})}function dd(n,e,t,l,s,o,i,c,u,d,m,g){let h=n.length,_=o.length,b=h;const k={};for(;b--;)k[n[b].key]=b;const E=[],w=new Map,T=new Map,N=[];for(b=_;b--;){const R=g(s,o,b),L=t(R);let B=i.get(L);B?N.push(()=>B.p(R,e)):(B=d(L,R),B.c()),w.set(L,E[b]=B),L in k&&T.set(L,Math.abs(b-k[L]))}const A=new Set,I=new Set;function M(R){he(R,1),R.m(c,m),i.set(R.key,R),m=R.first,_--}for(;h&&_;){const R=E[_-1],L=n[h-1],B=R.key,z=L.key;R===L?(m=R.first,h--,_--):w.has(z)?!i.has(B)||A.has(B)?M(R):I.has(z)?h--:T.get(B)>T.get(z)?(I.add(B),M(R)):(A.add(z),h--):(u(L,i),h--)}for(;h--;){const R=n[h];w.has(R.key)||u(R,i)}for(;_;)M(E[_-1]);return Te(N),E}function Qe(n){n&&n.c()}function Ye(n,e,t){const{fragment:l,after_update:s}=n.$$;l&&l.m(e,t),_l(()=>{const o=n.$$.on_mount.map(od).filter(On);n.$$.on_destroy?n.$$.on_destroy.push(...o):Te(o),n.$$.on_mount=[]}),s.forEach(_l)}function Xe(n,e){const t=n.$$;t.fragment!==null&&(p_(t.after_update),Te(t.on_destroy),t.fragment&&t.fragment.d(e),t.on_destroy=t.fragment=null,t.ctx=[])}function m_(n,e){n.$$.dirty[0]===-1&&(Pl.push(n),cd(),n.$$.dirty.fill(0)),n.$$.dirty[e/31|0]|=1<{const b=_.length?_[0]:h;return d.ctx&&s(d.ctx[g],d.ctx[g]=b)&&(!d.skip_bound&&d.bound[g]&&d.bound[g](b),m&&m_(n,g)),h}):[],d.update(),m=!0,Te(d.before_update),d.fragment=l?l(d.ctx):!1,e.target){if(e.hydrate){const g=c_(e.target);d.fragment&&d.fragment.l(g),g.forEach(S)}else d.fragment&&d.fragment.c();e.intro&&he(n.$$.fragment),Ye(n,e.target,e.anchor),ud()}is(u)}class pt{constructor(){et(this,"$$");et(this,"$$set")}$destroy(){Xe(this,1),this.$destroy=se}$on(e,t){if(!On(t))return se;const l=this.$$.callbacks[e]||(this.$$.callbacks[e]=[]);return l.push(t),()=>{const s=l.indexOf(t);s!==-1&&l.splice(s,1)}}$set(e){this.$$set&&!s_(e)&&(this.$$.skip_bound=!0,this.$$set(e),this.$$.skip_bound=!1)}}const g_="4";typeof window<"u"&&(window.__svelte||(window.__svelte={v:new Set})).v.add(g_);function h_(n){let e,t;return{c(){e=oe("path"),t=oe("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,s){C(l,e,s),C(l,t,s)},d(l){l&&(S(e),S(t))}}}function __(n){let e,t,l,s,o;return{c(){e=oe("path"),t=oe("polyline"),l=oe("line"),s=oe("line"),o=oe("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(s,"x1","16"),r(s,"y1","17"),r(s,"x2","8"),r(s,"y2","17"),r(o,"points","10 9 9 9 8 9")},m(i,c){C(i,e,c),C(i,t,c),C(i,l,c),C(i,s,c),C(i,o,c)},d(i){i&&(S(e),S(t),S(l),S(s),S(o))}}}function b_(n){let e,t;return{c(){e=oe("polyline"),t=oe("polyline"),r(e,"points","16 18 22 12 16 6"),r(t,"points","8 6 2 12 8 18")},m(l,s){C(l,e,s),C(l,t,s)},d(l){l&&(S(e),S(t))}}}function v_(n){let e,t,l,s;return{c(){e=oe("path"),t=oe("polyline"),l=oe("line"),s=oe("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(s,"x","10"),r(s,"y","12"),r(s,"width","4"),r(s,"height","4"),r(s,"rx","1")},m(o,i){C(o,e,i),C(o,t,i),C(o,l,i),C(o,s,i)},d(o){o&&(S(e),S(t),S(l),S(s))}}}function k_(n){let e,t,l,s,o;return{c(){e=oe("path"),t=oe("polyline"),l=oe("line"),s=oe("line"),o=oe("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(s,"x1","9"),r(s,"y1","15"),r(s,"x2","13"),r(s,"y2","15"),r(o,"x1","12"),r(o,"y1","15"),r(o,"x2","12"),r(o,"y2","18")},m(i,c){C(i,e,c),C(i,t,c),C(i,l,c),C(i,s,c),C(i,o,c)},d(i){i&&(S(e),S(t),S(l),S(s),S(o))}}}function y_(n){let e,t,l,s,o,i;return{c(){e=oe("path"),t=oe("polyline"),l=oe("line"),s=oe("line"),o=oe("line"),i=oe("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(s,"x1","8"),r(s,"y1","16"),r(s,"x2","16"),r(s,"y2","16"),r(o,"x1","8"),r(o,"y1","14"),r(o,"x2","12"),r(o,"y2","14"),r(i,"x1","12"),r(i,"y1","12"),r(i,"x2","12"),r(i,"y2","18")},m(c,u){C(c,e,u),C(c,t,u),C(c,l,u),C(c,s,u),C(c,o,u),C(c,i,u)},d(c){c&&(S(e),S(t),S(l),S(s),S(o),S(i))}}}function w_(n){let e,t,l,s;return{c(){e=oe("path"),t=oe("polyline"),l=oe("line"),s=oe("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(s,"x1","16"),r(s,"y1","17"),r(s,"x2","8"),r(s,"y2","17")},m(o,i){C(o,e,i),C(o,t,i),C(o,l,i),C(o,s,i)},d(o){o&&(S(e),S(t),S(l),S(s))}}}function E_(n){let e,t,l,s,o;return{c(){e=oe("path"),t=oe("polyline"),l=oe("line"),s=oe("line"),o=oe("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(s,"x1","8"),r(s,"y1","16"),r(s,"x2","16"),r(s,"y2","16"),r(o,"x1","8"),r(o,"y1","14"),r(o,"x2","12"),r(o,"y2","14")},m(i,c){C(i,e,c),C(i,t,c),C(i,l,c),C(i,s,c),C(i,o,c)},d(i){i&&(S(e),S(t),S(l),S(s),S(o))}}}function T_(n){let e,t,l;return{c(){e=oe("path"),t=oe("circle"),l=oe("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(s,o){C(s,e,o),C(s,t,o),C(s,l,o)},d(s){s&&(S(e),S(t),S(l))}}}function S_(n){let e,t;return{c(){e=oe("rect"),t=oe("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,s){C(l,e,s),C(l,t,s)},d(l){l&&(S(e),S(t))}}}function C_(n){let e,t,l;return{c(){e=oe("rect"),t=oe("circle"),l=oe("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(s,o){C(s,e,o),C(s,t,o),C(s,l,o)},d(s){s&&(S(e),S(t),S(l))}}}function A_(n){let e;return{c(){e=oe("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 N_(n){let e;function t(o,i){return o[0]==="folder"?A_:o[0]==="image"?C_:o[0]==="video"?S_:o[0]==="audio"?T_:o[0]==="pdf"?E_:o[0]==="document"?w_:o[0]==="spreadsheet"?y_:o[0]==="presentation"?k_:o[0]==="archive"?v_:o[0]==="code"?b_:o[0]==="text"?__:h_}let l=t(n),s=l(n);return{c(){e=oe("svg"),s.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,i){C(o,e,i),s.m(e,null)},p(o,[i]){l!==(l=t(o))&&(s.d(1),s=l(o),s&&(s.c(),s.m(e,null))),i&2&&r(e,"width",o[1]),i&2&&r(e,"height",o[1])},i:se,o:se,d(o){o&&S(e),s.d()}}}function R_(n,e,t){let{kind:l="generic"}=e,{size:s=20}=e;return n.$$set=o=>{"kind"in o&&t(0,l=o.kind),"size"in o&&t(1,s=o.size)},[l,s]}class pd extends pt{constructor(e){super(),dt(this,e,R_,N_,ft,{kind:0,size:1})}}const I_={"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.caseNotImplemented":"Переход к делу ещё не реализован","note.internal.noteNotImplemented":"Переход к заметке ещё не реализован","note.internal.fileNotImplemented":"Переход к файлу ещё не реализован","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":"Срок действия токена истёк"},M_={"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"},wr={ru:I_,en:M_};let Er="ru";function v(n,e){var s;const t=wr[Er];let l=t==null?void 0:t[n];if(l==null&&Er!=="ru"&&(l=(s=wr.ru)==null?void 0:s[n]),l==null&&(l=n),e!=null)for(const[o,i]of Object.entries(e))l=l.replace(`{${o}}`,String(i));return l}function Us(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 Hi={"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 Tr(n){return n?Hi[n]||n:v("mime.unknown")}function L_(n){if(n.type==="folder")return v("mime.folder");const e=(n.mime||"").toLowerCase();if(Hi[e])return Hi[e];const l=(n.name||"").toLowerCase().split(".").pop();return l?l.toUpperCase():v("mime.file")}function md(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 gd=["image/jpeg","image/png","image/gif","image/webp","image/bmp","image/tiff","image/avif","image/svg+xml"],hd=["text/plain","text/html","text/css","text/javascript","application/json","application/xml","application/x-yaml","text/x-shellscript"],_d=["txt","log","conf","ini","yaml","yml","json","xml","csv","sh","py","js","ts","css","html","md","markdown","cfg"],bd=["jpg","jpeg","png","gif","webp","bmp","tiff","tif","avif","svg"];function Ri(n){if(n.type==="folder")return!1;const e=(n.mime||"").toLowerCase(),l=(n.name||"").toLowerCase().split(".").pop();return!!(gd.includes(e)||bd.includes(l)||e.includes("pdf")||hd.includes(e)||_d.includes(l))}function vd(n){const e=(n.mime||"").toLowerCase(),l=(n.name||"").toLowerCase().split(".").pop();return gd.includes(e)||bd.includes(l)}function kd(n){const e=(n.mime||"").toLowerCase(),l=(n.name||"").toLowerCase().split(".").pop();return hd.includes(e)||_d.includes(l)&&l!=="md"&&l!=="markdown"}function yd(n){return(n.mime||"").toLowerCase().includes("pdf")}function wd(n){const e=(n.name||"").toLowerCase();return e.endsWith(".md")||e.endsWith(".markdown")}function O_(n){return vd(n)||yd(n)}function D_(n){return kd(n)||wd(n)}const{window:P_}=Yi;function z_(n){let e,t,l,s=Us(n[0].size)+"",o;return{c(){e=f("span"),e.textContent="·",t=y(),l=f("span"),o=j(s),r(e,"class","meta-sep svelte-1skuef2")},m(i,c){C(i,e,c),C(i,t,c),C(i,l,c),a(l,o)},p(i,c){c[0]&1&&s!==(s=Us(i[0].size)+"")&&Q(o,s)},d(i){i&&(S(e),S(t),S(l))}}}function B_(n){let e,t,l,s,o;return{c(){e=f("button"),e.innerHTML=' ',t=y(),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(i,c){C(i,e,c),C(i,t,c),C(i,l,c),s||(o=[O(e,"click",He(n[30])),O(l,"click",He(n[11]))],s=!0)},p:se,d(i){i&&(S(e),S(t),S(l)),s=!1,Te(o)}}}function F_(n){let e,t,l,s,o,i,c;return{c(){e=f("button"),e.innerHTML=' ',t=y(),l=f("button"),l.innerHTML=' ',s=y(),o=f("button"),o.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(o,"class","action-btn svelte-1skuef2"),r(o,"title",v("file.showInExplorer")),r(o,"aria-label",v("file.showInExplorer"))},m(u,d){C(u,e,d),C(u,t,d),C(u,l,d),C(u,s,d),C(u,o,d),i||(c=[O(e,"click",He(n[29])),O(l,"click",He(n[10])),O(o,"click",He(n[11]))],i=!0)},p:se,d(u){u&&(S(e),S(t),S(l),S(s),S(o)),i=!1,Te(c)}}}function Sr(n){let e,t,l,s,o,i,c,u,d=v("common.open")+"",m,g,h,_,b,k,E,w,T=v("file.openExternal")+"",N,A,I,M,R,L,B=v("file.showInExplorer")+"",z,U,W,K,V,Y,G,D,H,F=v("common.rename")+"",J,Z,X,$,te,ne,de,Ae=v("common.duplicate")+"",Pe,qe,Ne,ee,re,Se,ze,ge,We,mt=v("common.cut")+"",be,it,Oe,Ce,Fe,je,De,Be=v("common.copy")+"",ue,we,x,pe,me,Re,ot,Je,rt,tt=v("common.delete")+"",Ze,Ve,nt;return{c(){e=f("div"),t=y(),l=f("div"),s=f("button"),o=oe("svg"),i=oe("path"),c=oe("circle"),u=y(),m=j(d),g=y(),h=f("button"),_=oe("svg"),b=oe("path"),k=oe("polyline"),E=oe("line"),w=y(),N=j(T),A=y(),I=f("button"),M=oe("svg"),R=oe("path"),L=y(),z=j(B),U=y(),W=f("div"),K=y(),V=f("button"),Y=oe("svg"),G=oe("path"),D=oe("path"),H=y(),J=j(F),Z=y(),X=f("button"),$=oe("svg"),te=oe("rect"),ne=oe("path"),de=y(),Pe=j(Ae),qe=y(),Ne=f("button"),ee=oe("svg"),re=oe("circle"),Se=oe("circle"),ze=oe("line"),ge=oe("line"),We=y(),be=j(mt),it=y(),Oe=f("button"),Ce=oe("svg"),Fe=oe("rect"),je=oe("path"),De=y(),ue=j(Be),we=y(),x=f("div"),pe=y(),me=f("button"),Re=oe("svg"),ot=oe("polyline"),Je=oe("path"),rt=y(),Ze=j(tt),r(e,"class","menu-backdrop svelte-1skuef2"),r(e,"role","presentation"),r(i,"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(s,"class","menu-item svelte-1skuef2"),r(s,"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(E,"x1","10"),r(E,"y1","14"),r(E,"x2","21"),r(E,"y2","3"),r(_,"width","14"),r(_,"height","14"),r(_,"viewBox","0 0 24 24"),r(_,"fill","none"),r(_,"stroke","currentColor"),r(_,"stroke-width","2"),r(_,"stroke-linecap","round"),r(_,"stroke-linejoin","round"),r(h,"class","menu-item svelte-1skuef2"),r(h,"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(M,"width","14"),r(M,"height","14"),r(M,"viewBox","0 0 24 24"),r(M,"fill","none"),r(M,"stroke","currentColor"),r(M,"stroke-width","2"),r(M,"stroke-linecap","round"),r(M,"stroke-linejoin","round"),r(I,"class","menu-item svelte-1skuef2"),r(I,"role","menuitem"),r(W,"class","menu-sep svelte-1skuef2"),r(G,"d","M12 20h9"),r(D,"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(V,"class","menu-item svelte-1skuef2"),r(V,"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(ne,"d","M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1"),r($,"width","14"),r($,"height","14"),r($,"viewBox","0 0 24 24"),r($,"fill","none"),r($,"stroke","currentColor"),r($,"stroke-width","2"),r($,"stroke-linecap","round"),r($,"stroke-linejoin","round"),r(X,"class","menu-item svelte-1skuef2"),r(X,"role","menuitem"),r(re,"cx","6"),r(re,"cy","6"),r(re,"r","3"),r(Se,"cx","6"),r(Se,"cy","18"),r(Se,"r","3"),r(ze,"x1","20"),r(ze,"y1","4"),r(ze,"x2","8.12"),r(ze,"y2","15.88"),r(ge,"x1","8.12"),r(ge,"y1","8.12"),r(ge,"x2","20"),r(ge,"y2","20"),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(Ne,"class","menu-item svelte-1skuef2"),r(Ne,"role","menuitem"),r(Fe,"x","9"),r(Fe,"y","9"),r(Fe,"width","13"),r(Fe,"height","13"),r(Fe,"rx","2"),r(Fe,"ry","2"),r(je,"d","M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1"),r(Ce,"width","14"),r(Ce,"height","14"),r(Ce,"viewBox","0 0 24 24"),r(Ce,"fill","none"),r(Ce,"stroke","currentColor"),r(Ce,"stroke-width","2"),r(Ce,"stroke-linecap","round"),r(Ce,"stroke-linejoin","round"),r(Oe,"class","menu-item svelte-1skuef2"),r(Oe,"role","menuitem"),r(x,"class","menu-sep svelte-1skuef2"),r(ot,"points","3 6 5 6 21 6"),r(Je,"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"),ln(l,"left",n[3]+"px"),ln(l,"top",n[4]+"px"),ln(l,"position","fixed"),r(l,"role","menu"),r(l,"tabindex","-1")},m(fe,Me){C(fe,e,Me),C(fe,t,Me),C(fe,l,Me),a(l,s),a(s,o),a(o,i),a(o,c),a(s,u),a(s,m),a(l,g),a(l,h),a(h,_),a(_,b),a(_,k),a(_,E),a(h,w),a(h,N),a(l,A),a(l,I),a(I,M),a(M,R),a(I,L),a(I,z),a(l,U),a(l,W),a(l,K),a(l,V),a(V,Y),a(Y,G),a(Y,D),a(V,H),a(V,J),a(l,Z),a(l,X),a(X,$),a($,te),a($,ne),a(X,de),a(X,Pe),a(l,qe),a(l,Ne),a(Ne,ee),a(ee,re),a(ee,Se),a(ee,ze),a(ee,ge),a(Ne,We),a(Ne,be),a(l,it),a(l,Oe),a(Oe,Ce),a(Ce,Fe),a(Ce,je),a(Oe,De),a(Oe,ue),a(l,we),a(l,x),a(l,pe),a(l,me),a(me,Re),a(Re,ot),a(Re,Je),a(me,rt),a(me,Ze),Ve||(nt=[O(e,"click",He(n[19])),O(s,"click",n[17]),O(h,"click",n[10]),O(I,"click",n[11]),O(V,"click",n[13]),O(X,"click",n[14]),O(Ne,"click",n[15]),O(Oe,"click",n[16]),O(me,"click",n[12]),O(l,"click",He(n[28])),O(l,"keydown",n[31])],Ve=!0)},p(fe,Me){Me[0]&8&&ln(l,"left",fe[3]+"px"),Me[0]&16&&ln(l,"top",fe[4]+"px")},d(fe){fe&&(S(e),S(t),S(l)),Ve=!1,Te(nt)}}}function j_(n){let e,t,l,s,o,i,c=n[0].name+"",u,d,m,g,h,_,b,k,E,w,T,N,A,I,M,R,L,B,z,U,W,K;l=new pd({props:{kind:n[6],size:22}});let V=!n[7]&&z_(n);function Y(F,J){return F[7]?B_:F_}let D=Y(n)(n),H=n[2]&&Sr(n);return{c(){e=f("div"),t=f("div"),Qe(l.$$.fragment),s=y(),o=f("div"),i=f("div"),u=j(c),m=y(),g=f("div"),h=f("span"),h.textContent=`${n[8]}`,_=y(),V&&V.c(),b=y(),k=f("div"),D.c(),E=y(),w=f("button"),T=oe("svg"),N=oe("circle"),A=oe("circle"),I=oe("circle"),M=y(),R=f("button"),R.innerHTML=' ',B=y(),H&&H.c(),z=ht(),r(t,"class","file-row-icon svelte-1skuef2"),r(i,"class","file-row-name svelte-1skuef2"),r(i,"title",d=n[0].name),r(g,"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(w,"class","action-btn svelte-1skuef2"),r(w,"title",v("file.more")),r(w,"aria-label",v("file.more")),r(w,"aria-expanded",n[2]),r(R,"class","action-btn action-btn-danger svelte-1skuef2"),r(R,"title",v("common.delete")),r(R,"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",L=n[7]?v("file.ariaFolder")+" "+n[0].name:v("file.ariaFile")+" "+n[0].name),ce(e,"file-row--selected",n[1])},m(F,J){C(F,e,J),a(e,t),Ye(l,t,null),a(e,s),a(e,o),a(o,i),a(i,u),a(o,m),a(o,g),a(g,h),a(g,_),V&&V.m(g,null),a(e,b),a(e,k),D.m(k,null),a(k,E),a(k,w),a(w,T),a(T,N),a(T,A),a(T,I),a(k,M),a(k,R),C(F,B,J),H&&H.m(F,J),C(F,z,J),U=!0,W||(K=[O(P_,"click",n[19]),O(w,"click",He(n[18])),O(R,"click",He(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])],W=!0)},p(F,J){(!U||J[0]&1)&&c!==(c=F[0].name+"")&&Q(u,c),(!U||J[0]&1&&d!==(d=F[0].name))&&r(i,"title",d),F[7]||V.p(F,J),D.p(F,J),(!U||J[0]&4)&&r(w,"aria-expanded",F[2]),(!U||J[0]&1&&L!==(L=F[7]?v("file.ariaFolder")+" "+F[0].name:v("file.ariaFile")+" "+F[0].name))&&r(e,"aria-label",L),(!U||J[0]&2)&&ce(e,"file-row--selected",F[1]),F[2]?H?H.p(F,J):(H=Sr(F),H.c(),H.m(z.parentNode,z)):H&&(H.d(1),H=null)},i(F){U||(he(l.$$.fragment,F),U=!0)},o(F){ye(l.$$.fragment,F),U=!1},d(F){F&&(S(e),S(B),S(z)),Xe(l),V&&V.d(),D.d(),H&&H.d(F),W=!1,Te(K)}}}function U_(n,e,t){let{item:l}=e,{selected:s=!1}=e,{onDragStart:o}=e,{onDragOver:i}=e,{onDrop:c}=e;const u=Zn(),d=md(l),m=l.type==="folder",g=L_(l);let h=!1,_=0,b=0,k=null;function E(J){J.ctrlKey||J.metaKey?u("toggleSelect",l.id):J.shiftKey?u("rangeSelect",l.id):k?(clearTimeout(k),k=null,m?u("navigate",l.id):u("preview",l)):k=setTimeout(()=>{k=null,u("selectOne",l.id)},250)}function w(){u("openExternal",l.fileId)}function T(){t(2,h=!1),u("showInFolder",l.nodeId||l.id)}function N(){t(2,h=!1),u("delete",{id:l.id,type:l.type})}function A(){t(2,h=!1),u("rename",{id:l.id,name:l.name})}function I(){t(2,h=!1),u("duplicate",l.id)}function M(){t(2,h=!1),u("cut",l.id)}function R(){t(2,h=!1),u("copy",l.id)}function L(){t(2,h=!1),m?u("navigate",l.id):u("preview",l)}function B(){t(2,h=!h)}function z(){t(2,h=!1)}function U(J){o&&o(J,l.id)}function W(J){i&&m&&i(J,l.id)}function K(J){c&&m&&c(J,l.id)}function V(J){J.preventDefault(),t(3,_=Math.min(J.clientX,window.innerWidth-240)),t(4,b=Math.min(J.clientY,window.innerHeight-320)),t(2,h=!0)}function Y(J){(J.key==="Enter"||J.key===" ")&&(J.preventDefault(),E(J))}function G(J){Ji.call(this,n,J)}const D=()=>u("preview",l),H=()=>u("navigate",l.id),F=J=>{J.key==="Escape"&&(J.stopPropagation(),z())};return n.$$set=J=>{"item"in J&&t(0,l=J.item),"selected"in J&&t(1,s=J.selected),"onDragStart"in J&&t(25,o=J.onDragStart),"onDragOver"in J&&t(26,i=J.onDragOver),"onDrop"in J&&t(27,c=J.onDrop)},[l,s,h,_,b,u,d,m,g,E,w,T,N,A,I,M,R,L,B,z,U,W,K,V,Y,o,i,c,G,D,H,F]}class H_ extends pt{constructor(e){super(),dt(this,e,U_,j_,ft,{item:0,selected:1,onDragStart:25,onDragOver:26,onDrop:27},null,[-1,-1])}}function Cr(n,e,t){const l=n.slice();return l[4]=e[t],l[6]=t,l}function W_(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 G_(n){let e,t=n[4].name+"",l,s,o;function i(){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),s||(o=O(e,"click",i),s=!0)},p(c,u){n=c,u&1&&t!==(t=n[4].name+"")&&Q(l,t)},d(c){c&&S(e),s=!1,o()}}}function K_(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(s,o){C(s,e,o),a(e,l)},p(s,o){o&1&&t!==(t=s[4].name+"")&&Q(l,t)},d(s){s&&S(e)}}}function Ar(n){let e,t,l=n[6]>0&&W_();function s(c,u){return c[6]===c[0].length-1?K_:G_}let o=s(n),i=o(n);return{c(){l&&l.c(),e=y(),i.c(),t=ht()},m(c,u){l&&l.m(c,u),C(c,e,u),i.m(c,u),C(c,t,u)},p(c,u){o===(o=s(c))&&i?i.p(c,u):(i.d(1),i=o(c),i&&(i.c(),i.m(t.parentNode,t)))},d(c){c&&(S(e),S(t)),l&&l.d(c),i.d(c)}}}function V_(n){let e,t=ve(n[0]),l=[];for(let s=0;so(c);return n.$$set=c=>{"crumbs"in c&&t(0,l=c.crumbs)},[l,o,i]}class Ed extends pt{constructor(e){super(),dt(this,e,q_,V_,ft,{crumbs:0})}}function Z_(n){let e,t,l,s,o,i;return{c(){e=f("div"),t=f("p"),t.textContent=`${v("file.previewUnavailable")}`,l=y(),s=f("button"),s.textContent=`${v("file.openExternal")}`,r(s,"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,s),o||(i=O(s,"click",n[9]),o=!0)},p:se,d(c){c&&S(e),o=!1,i()}}}function Y_(n){let e,t;function l(i,c){return c&2&&(e=null),e==null&&(e=!!(i[1]&&i[1].startsWith("data:"))),e?eb:$_}let s=l(n,-1),o=s(n);return{c(){o.c(),t=ht()},m(i,c){o.m(i,c),C(i,t,c)},p(i,c){s===(s=l(i,c))&&o?o.p(i,c):(o.d(1),o=s(i),o&&(o.c(),o.m(t.parentNode,t)))},d(i){i&&S(t),o.d(i)}}}function X_(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(s,o){C(s,e,o),a(e,t),a(t,l)},p(s,o){o&2&&Q(l,s[1])},d(s){s&&S(e)}}}function J_(n){let e,t,l,s;return{c(){e=f("div"),t=f("img"),Fl(t.src,l=n[1])||r(t,"src",l),r(t,"alt",s=n[0].name),r(t,"class","preview-image svelte-1cw3u0m"),r(e,"class","preview-image-container svelte-1cw3u0m")},m(o,i){C(o,e,i),a(e,t)},p(o,i){i&2&&!Fl(t.src,l=o[1])&&r(t,"src",l),i&1&&s!==(s=o[0].name)&&r(t,"alt",s)},d(o){o&&S(e)}}}function Q_(n){let e,t,l,s,o,i,c;return{c(){e=f("div"),t=f("p"),l=j(n[3]),s=y(),o=f("button"),o.textContent=`${v("file.openExternal")}`,r(o,"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,s),a(e,o),i||(c=O(o,"click",n[9]),i=!0)},p(u,d){d&8&&Q(l,u[3])},d(u){u&&S(e),i=!1,c()}}}function x_(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,s){C(l,e,s),a(e,t)},p:se,d(l){l&&S(e)}}}function $_(n){let e,t,l,s,o,i;return{c(){e=f("div"),t=f("p"),t.textContent=`${v("file.pdfUnavailable")}`,l=y(),s=f("button"),s.textContent=`${v("file.openExternal")}`,r(s,"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,s),o||(i=O(s,"click",n[9]),o=!0)},p:se,d(c){c&&S(e),o=!1,i()}}}function eb(n){let e,t,l;return{c(){e=f("div"),t=f("embed"),Fl(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(s,o){C(s,e,o),a(e,t)},p(s,o){o&2&&!Fl(t.src,l=s[1])&&r(t,"src",l)},d(s){s&&S(e)}}}function tb(n){let e,t,l,s,o,i,c,u=n[0].name+"",d,m,g,h,_=Us(n[0].size)+"",b,k,E=Tr(n[0].mime)+"",w,T,N,A,I,M,R,L,B,z,U;o=new pd({props:{kind:n[8],size:18}});function W(Y,G){return Y[2]?x_:Y[3]?Q_:Y[6]&&Y[1]?J_:Y[5]&&Y[1]?X_:Y[4]?Y_:Z_}let K=W(n),V=K(n);return{c(){e=f("div"),t=f("div"),l=f("header"),s=f("div"),Qe(o.$$.fragment),i=y(),c=f("span"),d=j(u),g=y(),h=f("div"),b=j(_),k=j(" · "),w=j(E),T=y(),N=f("div"),A=f("button"),A.innerHTML=' ',I=y(),M=f("button"),M.innerHTML=' ',R=y(),L=f("div"),V.c(),r(c,"class","preview-name svelte-1cw3u0m"),r(c,"title",m=n[0].name),r(s,"class","preview-title svelte-1cw3u0m"),r(h,"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(M,"class","action-btn action-btn-close svelte-1cw3u0m"),r(M,"title","Close"),r(M,"aria-label","Close preview"),r(N,"class","preview-actions svelte-1cw3u0m"),r(l,"class","preview-header svelte-1cw3u0m"),r(L,"class","preview-body svelte-1cw3u0m"),r(t,"class","modal svelte-1cw3u0m"),r(e,"class","overlay svelte-1cw3u0m"),r(e,"role","presentation")},m(Y,G){C(Y,e,G),a(e,t),a(t,l),a(l,s),Ye(o,s,null),a(s,i),a(s,c),a(c,d),a(l,g),a(l,h),a(h,b),a(h,k),a(h,w),a(l,T),a(l,N),a(N,A),a(N,I),a(N,M),a(t,R),a(t,L),V.m(L,null),B=!0,z||(U=[O(A,"click",n[9]),O(M,"click",n[10]),O(e,"click",xt(n[11])),O(e,"keydown",n[12])],z=!0)},p(Y,[G]){(!B||G&1)&&u!==(u=Y[0].name+"")&&Q(d,u),(!B||G&1&&m!==(m=Y[0].name))&&r(c,"title",m),(!B||G&1)&&_!==(_=Us(Y[0].size)+"")&&Q(b,_),(!B||G&1)&&E!==(E=Tr(Y[0].mime)+"")&&Q(w,E),K===(K=W(Y))&&V?V.p(Y,G):(V.d(1),V=K(Y),V&&(V.c(),V.m(L,null)))},i(Y){B||(he(o.$$.fragment,Y),B=!0)},o(Y){ye(o.$$.fragment,Y),B=!1},d(Y){Y&&S(e),Xe(o),V.d(),z=!1,Te(U)}}}function nb(n,e,t){let l,s,o,{item:i}=e,{content:c=""}=e,{loading:u=!1}=e,{error:d=""}=e;const m=Zn(),g=md(i);function h(w){w.key==="Escape"&&m("close")}function _(){m("openExternal",i.fileId)}us(()=>{window.addEventListener("keydown",h)}),fs(()=>{window.removeEventListener("keydown",h)});const b=()=>m("close"),k=()=>m("close"),E=w=>{w.key==="Escape"&&(w.preventDefault(),m("close"))};return n.$$set=w=>{"item"in w&&t(0,i=w.item),"content"in w&&t(1,c=w.content),"loading"in w&&t(2,u=w.loading),"error"in w&&t(3,d=w.error)},n.$$.update=()=>{n.$$.dirty&3&&t(6,l=vd(i)&&c&&c.startsWith("data:")),n.$$.dirty&1&&t(5,s=kd(i)||wd(i)),n.$$.dirty&1&&t(4,o=yd(i))},[i,c,u,d,o,s,l,m,g,_,b,k,E]}class lb extends pt{constructor(e){super(),dt(this,e,nb,tb,ft,{item:0,content:1,loading:2,error:3})}}function sb(n){let e,t,l,s,o,i,c,u,d,m,g,h,_,b,k,E,w;return{c(){e=f("div"),t=f("div"),l=f("h3"),s=j(n[0]),o=y(),i=f("p"),c=j(n[1]),u=y(),d=f("div"),m=f("button"),g=j(n[2]),_=y(),b=f("button"),k=j(n[3]),r(l,"class","svelte-1fv6yyk"),r(i,"class","message svelte-1fv6yyk"),r(m,"class",h="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,s),a(t,o),a(t,i),a(i,c),a(t,u),a(t,d),a(d,m),a(m,g),a(d,_),a(d,b),a(b,k),E||(w=[O(m,"click",n[6]),O(b,"click",n[7]),O(e,"click",xt(n[8])),O(e,"keydown",n[9])],E=!0)},p(T,[N]){N&1&&Q(s,T[0]),N&2&&Q(c,T[1]),N&4&&Q(g,T[2]),N&16&&h!==(h="btn "+(T[4]?"btn-danger":"btn-primary")+" svelte-1fv6yyk")&&r(m,"class",h),N&8&&Q(k,T[3])},i:se,o:se,d(T){T&&S(e),E=!1,Te(w)}}}function ib(n,e,t){let{title:l=v("common.confirm")}=e,{message:s=""}=e,{confirmText:o=v("common.delete")}=e,{cancelText:i=v("common.cancel")}=e,{danger:c=!1}=e;const u=Zn(),d=()=>u("confirm"),m=()=>u("cancel"),g=()=>u("cancel"),h=_=>{_.key==="Escape"&&(_.preventDefault(),u("cancel"))};return n.$$set=_=>{"title"in _&&t(0,l=_.title),"message"in _&&t(1,s=_.message),"confirmText"in _&&t(2,o=_.confirmText),"cancelText"in _&&t(3,i=_.cancelText),"danger"in _&&t(4,c=_.danger)},[l,s,o,i,c,u,d,m,g,h]}class ob extends pt{constructor(e){super(),dt(this,e,ib,sb,ft,{title:0,message:1,confirmText:2,cancelText:3,danger:4})}}function rb(n){let e,t,l;return{c(){e=oe("circle"),t=oe("line"),l=oe("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(s,o){C(s,e,o),C(s,t,o),C(s,l,o)},d(s){s&&(S(e),S(t),S(l))}}}function ab(n){let e,t,l,s;return{c(){e=oe("rect"),t=oe("polyline"),l=oe("line"),s=oe("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(s,"x1","16"),r(s,"y1","5"),r(s,"x2","16"),r(s,"y2","19")},m(o,i){C(o,e,i),C(o,t,i),C(o,l,i),C(o,s,i)},d(o){o&&(S(e),S(t),S(l),S(s))}}}function cb(n){let e,t;return{c(){e=oe("path"),t=oe("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,s){C(l,e,s),C(l,t,s)},d(l){l&&(S(e),S(t))}}}function ub(n){let e,t;return{c(){e=oe("path"),t=oe("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,s){C(l,e,s),C(l,t,s)},d(l){l&&(S(e),S(t))}}}function fb(n){let e,t,l,s,o;return{c(){e=oe("path"),t=oe("path"),l=oe("line"),s=oe("line"),o=oe("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(s,"x1","8"),r(s,"y1","11"),r(s,"x2","14"),r(s,"y2","11"),r(o,"x1","8"),r(o,"y1","15"),r(o,"x2","12"),r(o,"y2","15")},m(i,c){C(i,e,c),C(i,t,c),C(i,l,c),C(i,s,c),C(i,o,c)},d(i){i&&(S(e),S(t),S(l),S(s),S(o))}}}function db(n){let e,t,l,s;return{c(){e=oe("path"),t=oe("polyline"),l=oe("line"),s=oe("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(s,"x1","16"),r(s,"y1","17"),r(s,"x2","8"),r(s,"y2","17")},m(o,i){C(o,e,i),C(o,t,i),C(o,l,i),C(o,s,i)},d(o){o&&(S(e),S(t),S(l),S(s))}}}function pb(n){let e,t;return{c(){e=oe("path"),t=oe("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,s){C(l,e,s),C(l,t,s)},d(l){l&&(S(e),S(t))}}}function mb(n){let e,t,l,s;return{c(){e=oe("rect"),t=oe("rect"),l=oe("rect"),s=oe("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(s,"x","3"),r(s,"y","14"),r(s,"width","7"),r(s,"height","7"),r(s,"rx","1")},m(o,i){C(o,e,i),C(o,t,i),C(o,l,i),C(o,s,i)},d(o){o&&(S(e),S(t),S(l),S(s))}}}function gb(n){let e;return{c(){e=oe("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 hb(n){let e;function t(o,i){return o[0]==="folder"?gb:o[0]==="project"?mb:o[0]==="client"?pb:o[0]==="document"?db:o[0]==="recipe"?fb:o[0]==="note"?ub:o[0]==="file"?cb:o[0]==="case"?ab:rb}let l=t(n),s=l(n);return{c(){e=oe("svg"),s.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,i){C(o,e,i),s.m(e,null)},p(o,[i]){l!==(l=t(o))&&(s.d(1),s=l(o),s&&(s.c(),s.m(e,null))),i&2&&r(e,"width",o[1]),i&2&&r(e,"height",o[1])},i:se,o:se,d(o){o&&S(e),s.d()}}}function _b(n,e,t){let{kind:l="generic"}=e,{size:s=18}=e;return n.$$set=o=>{"kind"in o&&t(0,l=o.kind),"size"in o&&t(1,s=o.size)},[l,s]}class Xs extends pt{constructor(e){super(),dt(this,e,_b,hb,ft,{kind:0,size:1})}}function Nr(n,e,t){const l=n.slice();return l[44]=e[t],l}function bb(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 vb(n){let e,t,l=n[1][n[44].id]?"▾":"▸",s,o,i;function c(){return n[25](n[44])}return{c(){e=f("button"),t=f("span"),s=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,s),o||(i=O(e,"click",He(c)),o=!0)},p(u,d){n=u,d[0]&3&&l!==(l=n[1][n[44].id]?"▾":"▸")&&Q(s,l)},d(u){u&&S(e),o=!1,i()}}}function Rr(n){let e,t;return e=new Td({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,s){Ye(e,l,s),t=!0},p(l,s){const o={};s[0]&1&&(o.nodes=l[44].children||[]),s[0]&2&&(o.expanded=l[1]),s[0]&4&&(o.selectedNodeId=l[2]),s[0]&8&&(o.level=l[3]+1),s[0]&16&&(o.onSelect=l[4]),s[0]&32&&(o.onToggle=l[5]),s[0]&64&&(o.onContextMenu=l[6]),s[0]&128&&(o.onDrop=l[7]),e.$set(o)},i(l){t||(he(e.$$.fragment,l),t=!0)},o(l){ye(e.$$.fragment,l),t=!1},d(l){Xe(e,l)}}}function Ir(n,e){let t,l,s,o,i,c,u,d=e[44].title+"",m,g,h=e[1][e[44].id]&&Wi(e[44]),_,b,k,E;function w(D,H){return H[0]&1&&(l=null),l==null&&(l=!!ts(D[44])),l?vb:bb}let T=w(e,[-1,-1]),N=T(e);i=new Xs({props:{kind:Mr(e[44]),size:16}});function A(...D){return e[26](e[44],...D)}function I(...D){return e[27](e[44],...D)}function M(){return e[28](e[44])}function R(...D){return e[29](e[44],...D)}function L(...D){return e[30](e[44],...D)}function B(...D){return e[31](e[44],...D)}function z(...D){return e[32](e[44],...D)}function U(...D){return e[33](e[44],...D)}function W(...D){return e[34](e[44],...D)}function K(...D){return e[35](e[44],...D)}function V(...D){return e[36](e[44],...D)}function Y(...D){return e[37](e[44],...D)}let G=h&&Rr(e);return{key:n,first:null,c(){t=f("div"),N.c(),s=y(),o=f("span"),Qe(i.$$.fragment),c=y(),u=f("span"),m=j(d),g=y(),G&&G.c(),_=ht(),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"),ln(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(D,H){C(D,t,H),N.m(t,null),a(t,s),a(t,o),Ye(i,o,null),a(t,c),a(t,u),a(u,m),C(D,g,H),G&&G.m(D,H),C(D,_,H),b=!0,k||(E=[O(o,"click",A),O(o,"keydown",I),O(o,"dblclick",He(e[24])),O(u,"click",He(M)),O(u,"keydown",R),O(t,"dragstart",L),O(t,"dragover",B),O(t,"dragleave",z),O(t,"drop",U),O(t,"click",W),O(t,"keydown",K),O(t,"dblclick",V),O(t,"contextmenu",Ys(Y))],k=!0)},p(D,H){e=D,T===(T=w(e,H))&&N?N.p(e,H):(N.d(1),N=T(e),N&&(N.c(),N.m(t,s)));const F={};H[0]&1&&(F.kind=Mr(e[44])),i.$set(F),(!b||H[0]&1)&&d!==(d=e[44].title+"")&&Q(m,d),(!b||H[0]&8)&&ln(t,"padding-left",e[3]*16+4+"px"),(!b||H[0]&5)&&ce(t,"selected",e[2]===e[44].id),(!b||H[0]&769)&&ce(t,"drop-valid",e[8]===e[44].id&&e[9][e[44].id]),(!b||H[0]&769)&&ce(t,"drop-invalid",e[8]===e[44].id&&!e[9][e[44].id]),H[0]&3&&(h=e[1][e[44].id]&&Wi(e[44])),h?G?(G.p(e,H),H[0]&3&&he(G,1)):(G=Rr(e),G.c(),he(G,1),G.m(_.parentNode,_)):G&&(Tt(),ye(G,1,1,()=>{G=null}),St())},i(D){b||(he(i.$$.fragment,D),he(G),b=!0)},o(D){ye(i.$$.fragment,D),ye(G),b=!1},d(D){D&&(S(t),S(g),S(_)),N.d(),Xe(i),G&&G.d(D),k=!1,Te(E)}}}function kb(n){let e=[],t=new Map,l,s,o,i,c=ve(n[0]);const u=d=>d[44].id;for(let d=0;d0:n.has_children===!0}function Lr(n){const e={};function t(l,s){for(const o of l)e[o.id]=s,o.children&&t(o.children,o.id)}return t(n,""),e}function Or(n){const e=[];function t(l){for(const s of l)e.push(s),s.children&&t(s.children)}return t(n),e}function yb(n){try{return n.dataTransfer.getData("text/plain")}catch{return""}}function wb(n,e,t){let l,s,o,{nodes:i=[]}=e,{expanded:c={}}=e,{selectedNodeId:u=""}=e,{level:d=0}=e,{onSelect:m=void 0}=e,{onToggle:g=void 0}=e,{onContextMenu:h=void 0}=e,{onDrop:_=void 0}=e,b={},k=null,E="",w="";const T=["folder","project","client","document","recipe","case"];fs(()=>{for(const ee of Object.keys(b))clearTimeout(b[ee]);k&&clearInterval(k)});function N(ee){return T.includes(ee.type)}function A(ee,re,Se){if(!ee||!re||re===ee.id||!N(ee))return!1;let ze=ee.id;for(;ze;){if(ze===re)return!1;ze=Se[ze]||""}return!0}function I(ee,re){ee.stopPropagation(),ee.dataTransfer.effectAllowed="move",ee.dataTransfer.setData("text/plain",re.id),t(21,E=re.id)}function M(ee,re){ee.preventDefault(),ee.stopPropagation(),ee.dataTransfer.dropEffect="move",w!==re.id&&t(8,w=re.id),ts(re)&&!c[re.id]&&!b[re.id]&&(b[re.id]=setTimeout(()=>{g&&g(re.id),delete b[re.id]},600));const Se=ee.currentTarget.closest(".workspace-tree-area");if(Se){const ze=Se.getBoundingClientRect(),ge=30;ee.clientY-ze.top{Se.scrollTop-=10},50)):ze.bottom-ee.clientY{Se.scrollTop+=10},50)):k&&(clearInterval(k),k=null)}}function R(ee,re){const Se=ee.relatedTarget;Se&&ee.currentTarget.contains(Se)||(w===re.id&&t(8,w=""),b[re.id]&&(clearTimeout(b[re.id]),delete b[re.id]),k&&(clearInterval(k),k=null))}function L(ee,re){ee.preventDefault(),ee.stopPropagation(),b[re.id]&&(clearTimeout(b[re.id]),delete b[re.id]),k&&(clearInterval(k),k=null);const Se=Or(i),ze=Lr(Se),ge=yb(ee);if(!A(re,ge,ze)){t(8,w=""),t(21,E="");return}_&&_(ge,re.id),t(8,w=""),t(21,E="")}function B(){t(8,w=""),t(21,E="");for(const ee of Object.keys(b))clearTimeout(b[ee]),delete b[ee];k&&(clearInterval(k),k=null)}function z(ee,re){ee.target.closest(".tree-toggle")||ee.target.closest(".tree-icon")||m&&m(re)}function U(ee,re){ts(re)&&g&&g(re.id)}function W(ee,re){(ee.key==="Enter"||ee.key===" ")&&(ee.preventDefault(),m&&m(re))}function K(ee,re){ee.stopPropagation(),ts(re)&&g&&g(re.id)}function V(ee,re){(ee.key==="Enter"||ee.key===" ")&&(ee.preventDefault(),ee.stopPropagation(),ts(re)&&g&&g(re.id))}function Y(ee,re){(ee.key==="Enter"||ee.key===" ")&&(ee.preventDefault(),m&&m(re))}function G(ee,re,Se){const ze={};function ge(We){for(const mt of We)ze[mt.id]=A(mt,re,Se),mt.children&&ge(mt.children)}return ge(ee),ze}function D(ee){Ji.call(this,n,ee)}const H=ee=>g&&g(ee.id),F=(ee,re)=>K(re,ee),J=(ee,re)=>V(re,ee),Z=ee=>m&&m(ee),X=(ee,re)=>Y(re,ee),$=(ee,re)=>I(re,ee),te=(ee,re)=>M(re,ee),ne=(ee,re)=>R(re,ee),de=(ee,re)=>L(re,ee),Ae=(ee,re)=>z(re,ee),Pe=(ee,re)=>W(re,ee),qe=(ee,re)=>U(re,ee),Ne=(ee,re)=>h&&h(re,ee);return n.$$set=ee=>{"nodes"in ee&&t(0,i=ee.nodes),"expanded"in ee&&t(1,c=ee.expanded),"selectedNodeId"in ee&&t(2,u=ee.selectedNodeId),"level"in ee&&t(3,d=ee.level),"onSelect"in ee&&t(4,m=ee.onSelect),"onToggle"in ee&&t(5,g=ee.onToggle),"onContextMenu"in ee&&t(6,h=ee.onContextMenu),"onDrop"in ee&&t(7,_=ee.onDrop)},n.$$.update=()=>{n.$$.dirty[0]&1&&t(23,l=Or(i)),n.$$.dirty[0]&8388608&&t(22,s=Lr(l)),n.$$.dirty[0]&14680064&&t(9,o=G(l,E,s))},[i,c,u,d,m,g,h,_,w,o,I,M,R,L,B,z,U,W,K,V,Y,E,s,l,D,H,F,J,Z,X,$,te,ne,de,Ae,Pe,qe,Ne]}class Td extends pt{constructor(e){super(),dt(this,e,wb,kb,ft,{nodes:0,expanded:1,selectedNodeId:2,level:3,onSelect:4,onToggle:5,onContextMenu:6,onDrop:7},null,[-1,-1])}}function Dr(n){let e,t;return{c(){e=f("div"),t=j(n[4]),r(e,"class","path-info svelte-a9f1pd")},m(l,s){C(l,e,s),a(e,t)},p(l,s){s&16&&Q(t,l[4])},d(l){l&&S(e)}}}function Pr(n){let e,t;return{c(){e=f("div"),t=j(n[3]),r(e,"class","error-msg svelte-a9f1pd")},m(l,s){C(l,e,s),a(e,t)},p(l,s){s&8&&Q(t,l[3])},d(l){l&&S(e)}}}function Eb(n){let e,t,l,s,o,i,c,u,d,m,g,h,_,b,k,E,w,T=v("firstrun.browse")+"",N,A,I,M,R,L,B=(n[2]?v("firstrun.creating"):v("firstrun.create"))+"",z,U,W,K,V,Y,G=n[4]&&Dr(n),D=n[3]&&Pr(n);return{c(){e=f("div"),t=f("div"),l=f("img"),o=y(),i=f("h1"),i.textContent=`${v("firstrun.title")}`,c=y(),u=f("p"),u.textContent=`${v("firstrun.desc")}`,d=y(),m=f("div"),g=f("label"),g.textContent=`${v("firstrun.pathLabel")}`,h=y(),_=f("div"),b=f("input"),E=y(),w=f("button"),N=j(T),A=y(),G&&G.c(),I=y(),D&&D.c(),M=y(),R=f("div"),L=f("button"),z=j(B),W=y(),K=f("button"),K.textContent=`${v("firstrun.quit")}`,r(l,"class","first-run-logo svelte-a9f1pd"),Fl(l.src,s="/assets/app-icons/icon_64x64.png")||r(l,"src",s),r(l,"width","64"),r(l,"height","64"),r(l,"alt",""),r(i,"class","svelte-a9f1pd"),r(u,"class","first-run-desc svelte-a9f1pd"),r(g,"class","form-label svelte-a9f1pd"),r(g,"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(w,"class","btn"),w.disabled=n[2],r(_,"class","input-row svelte-a9f1pd"),r(m,"class","form-group svelte-a9f1pd"),r(L,"class","btn btn-primary btn-lg svelte-a9f1pd"),L.disabled=U=!n[0].trim()||n[2],r(K,"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(H,F){C(H,e,F),a(e,t),a(t,l),a(t,o),a(t,i),a(t,c),a(t,u),a(t,d),a(t,m),a(m,g),a(m,h),a(m,_),a(_,b),Ie(b,n[0]),a(_,E),a(_,w),a(w,N),a(t,A),G&&G.m(t,null),a(t,I),D&&D.m(t,null),a(t,M),a(t,R),a(R,L),a(L,z),a(R,W),a(R,K),V||(Y=[O(b,"input",n[12]),O(b,"input",n[6]),O(b,"keydown",n[9]),O(w,"click",n[5]),O(L,"click",n[7]),O(K,"click",n[8])],V=!0)},p(H,[F]){F&2&&k!==(k=H[1]||v("firstrun.defaultPath"))&&r(b,"placeholder",k),F&4&&(b.disabled=H[2]),F&1&&b.value!==H[0]&&Ie(b,H[0]),F&4&&(w.disabled=H[2]),H[4]?G?G.p(H,F):(G=Dr(H),G.c(),G.m(t,I)):G&&(G.d(1),G=null),H[3]?D?D.p(H,F):(D=Pr(H),D.c(),D.m(t,M)):D&&(D.d(1),D=null),F&4&&B!==(B=(H[2]?v("firstrun.creating"):v("firstrun.create"))+"")&&Q(z,B),F&5&&U!==(U=!H[0].trim()||H[2])&&(L.disabled=U)},i:se,o:se,d(H){H&&S(e),G&&G.d(),D&&D.d(),V=!1,Te(Y)}}}function Rs(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 Tb(n,e,t){let{onComplete:l=null}=e,{onQuit:s=null}=e,o="",i="",c=!1,u="",d="",m=null;async function g(){try{const T=await Rs("GetDefaultVaultPath");t(1,i=T||""),t(0,o=i||""),o&&await _()}catch{t(1,i="")}}g();async function h(){try{const T=await Rs("PickDirectory");T&&(t(0,o=T),await _())}catch(T){t(3,u=String(T))}}async function _(){if(!o||!o.trim()){t(4,d=""),m=null;return}try{m=await Rs("CheckVaultPath",o.trim()),m&&t(4,d=m.description)}catch{t(4,d=""),m=null}}async function b(){if(!(!o||!o.trim())){if(t(2,c=!0),t(3,u=""),m&&!m.writable){t(3,u=v("firstrun.errorNoWrite")),t(2,c=!1);return}try{const T=await Rs("CreateVault",o.trim());T&&T.status==="ready"&&l&&l(T)}catch(T){t(3,u=String(T))}t(2,c=!1)}}function k(){s&&s()}function E(T){T.key==="Enter"&&!c&&o.trim()&&b()}function w(){o=this.value,t(0,o)}return n.$$set=T=>{"onComplete"in T&&t(10,l=T.onComplete),"onQuit"in T&&t(11,s=T.onQuit)},[o,i,c,u,d,h,_,b,k,E,l,s,w]}class Sb extends pt{constructor(e){super(),dt(this,e,Tb,Eb,ft,{onComplete:10,onQuit:11})}}function zr(n){let e,t;return{c(){e=f("div"),t=j(n[2]),r(e,"class","error-msg svelte-s3o8c3")},m(l,s){C(l,e,s),a(e,t)},p(l,s){s&4&&Q(t,l[2])},d(l){l&&S(e)}}}function Br(n){let e,t,l,s,o,i,c,u,d=v("common.yes")+"",m,g,h,_,b;return{c(){e=f("div"),t=f("div"),l=f("h3"),l.textContent=`${v("recovery.createConfirmTitle")}`,s=y(),o=f("p"),o.textContent=`${v("recovery.createConfirm")}`,i=y(),c=f("div"),u=f("button"),m=j(d),g=y(),h=f("button"),h.textContent=`${v("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(h,"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,E){C(k,e,E),a(e,t),a(t,l),a(t,s),a(t,o),a(t,i),a(t,c),a(c,u),a(u,m),a(c,g),a(c,h),_||(b=[O(u,"click",n[6]),O(h,"click",n[7]),O(e,"click",xt(n[7])),O(e,"keydown",n[11])],_=!0)},p(k,E){E&2&&(u.disabled=k[1])},d(k){k&&S(e),_=!1,Te(b)}}}function Cb(n){let e,t,l,s,o,i,c,u,d,m=(n[0]||"—")+"",g,h,_,b,k,E=v("recovery.choose")+"",w,T,N,A=v("recovery.create")+"",I,M,R,L,B,z,U,W=n[2]&&zr(n),K=n[3]&&Br(n);return{c(){e=f("div"),t=f("div"),l=f("div"),l.textContent="⚠",s=y(),o=f("h1"),o.textContent=`${v("recovery.title")}`,i=y(),c=f("p"),c.textContent=`${v("recovery.expected")}:`,u=y(),d=f("code"),g=j(m),h=y(),W&&W.c(),_=y(),b=f("div"),k=f("button"),w=j(E),T=y(),N=f("button"),I=j(A),M=y(),R=f("button"),R.textContent=`${v("recovery.quit")}`,L=y(),K&&K.c(),B=ht(),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(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(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(V,Y){C(V,e,Y),a(e,t),a(t,l),a(t,s),a(t,o),a(t,i),a(t,c),a(t,u),a(t,d),a(d,g),a(t,h),W&&W.m(t,null),a(t,_),a(t,b),a(b,k),a(k,w),a(b,T),a(b,N),a(N,I),a(b,M),a(b,R),C(V,L,Y),K&&K.m(V,Y),C(V,B,Y),z||(U=[O(k,"click",n[4]),O(N,"click",n[5]),O(R,"click",n[8])],z=!0)},p(V,[Y]){Y&1&&m!==(m=(V[0]||"—")+"")&&Q(g,m),V[2]?W?W.p(V,Y):(W=zr(V),W.c(),W.m(t,_)):W&&(W.d(1),W=null),Y&2&&(k.disabled=V[1]),Y&2&&(N.disabled=V[1]),V[3]?K?K.p(V,Y):(K=Br(V),K.c(),K.m(B.parentNode,B)):K&&(K.d(1),K=null)},i:se,o:se,d(V){V&&(S(e),S(L),S(B)),W&&W.d(),K&&K.d(V),z=!1,Te(U)}}}function Ii(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 Ab(n,e,t){let{vaultPath:l=""}=e,{onComplete:s=null}=e,{onQuit:o=null}=e,i=!1,c="",u=!1;async function d(){try{const k=await Ii("PickDirectory");if(!k)return;t(1,i=!0),t(2,c="");const E=await Ii("OpenVault",k);E&&E.status==="ready"&&s&&s(E)}catch(k){t(2,c=String(k))}t(1,i=!1)}function m(){t(3,u=!0)}async function g(){t(3,u=!1),t(1,i=!0),t(2,c="");try{const k=await Ii("CreateVault",l);k&&k.status==="ready"&&s&&s(k)}catch(k){t(2,c=String(k))}t(1,i=!1)}function h(){t(3,u=!1)}function _(){o&&o()}const b=k=>k.key==="Enter"&&h();return n.$$set=k=>{"vaultPath"in k&&t(0,l=k.vaultPath),"onComplete"in k&&t(9,s=k.onComplete),"onQuit"in k&&t(10,o=k.onQuit)},[l,i,c,u,d,m,g,h,_,s,o,b]}class Nb extends pt{constructor(e){super(),dt(this,e,Ab,Cb,ft,{vaultPath:0,onComplete:9,onQuit:10})}}function Fr(n,e,t){const l=n.slice();return l[5]=e[t],l}function Rb(n){let e,t;return{c(){e=oe("circle"),t=oe("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,s){C(l,e,s),C(l,t,s)},d(l){l&&(S(e),S(t))}}}function Ib(n){let e,t,l;return{c(){e=oe("path"),t=oe("path"),l=oe("path"),r(e,"d","M5 4h12l2 2v14H5z"),r(t,"d","M8 4v6h8V4"),r(l,"d","M8 20v-6h8v6")},m(s,o){C(s,e,o),C(s,t,o),C(s,l,o)},d(s){s&&(S(e),S(t),S(l))}}}function Mb(n){let e,t,l,s;return{c(){e=oe("path"),t=oe("path"),l=oe("path"),s=oe("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(s,"d","M20 19v-4h-4")},m(o,i){C(o,e,i),C(o,t,i),C(o,l,i),C(o,s,i)},d(o){o&&(S(e),S(t),S(l),S(s))}}}function Lb(n){let e;return{c(){e=oe("path"),r(e,"d","M4 19V9M10 19V5M16 19v-7M22 19H2")},m(t,l){C(t,e,l)},d(t){t&&S(e)}}}function Ob(n){let e;return{c(){e=oe("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 Db(n){let e,t;return{c(){e=oe("path"),t=oe("path"),r(e,"d","M9 3v5M15 3v5M7 8h10v3a5 5 0 0 1-10 0V8z"),r(t,"d","M12 16v5")},m(l,s){C(l,e,s),C(l,t,s)},d(l){l&&(S(e),S(t))}}}function Pb(n){let e,t;return{c(){e=oe("rect"),t=oe("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,s){C(l,e,s),C(l,t,s)},d(l){l&&(S(e),S(t))}}}function zb(n){let e,t,l;return{c(){e=oe("path"),t=oe("path"),l=oe("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(s,o){C(s,e,o),C(s,t,o),C(s,l,o)},d(s){s&&(S(e),S(t),S(l))}}}function Bb(n){let e,t;return{c(){e=oe("circle"),t=oe("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,s){C(l,e,s),C(l,t,s)},d(l){l&&(S(e),S(t))}}}function jr(n){let e,t,l,s,o,i,c,u;function d(_,b){if(_[5].id==="general")return Bb;if(_[5].id==="workspace")return zb;if(_[5].id==="templates")return Pb;if(_[5].id==="plugins")return Db;if(_[5].id==="files")return Ob;if(_[5].id==="activity")return Lb;if(_[5].id==="sync")return Mb;if(_[5].id==="backup")return Ib;if(_[5].id==="browserBridge")return Rb}let m=d(n),g=m&&m(n);function h(){return n[4](n[5])}return{c(){e=f("button"),t=f("span"),l=oe("svg"),g&&g.c(),s=y(),o=f("span"),o.textContent=`${n[5].label}`,i=y(),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(_,b){C(_,e,b),a(e,t),a(t,l),g&&g.m(l,null),a(e,s),a(e,o),a(e,i),c||(u=O(e,"click",h),c=!0)},p(_,b){n=_,b&3&&ce(e,"active",n[0]===n[5].id)},d(_){_&&S(e),g&&g.d(),c=!1,u()}}}function Fb(n){let e,t=ve(n[1]),l=[];for(let s=0;si(u.id);return n.$$set=u=>{"activeSection"in u&&t(0,l=u.activeSection),"onSelect"in u&&t(3,s=u.onSelect)},[l,o,i,s,c]}class Ub extends pt{constructor(e){super(),dt(this,e,jb,Fb,ft,{activeSection:0,onSelect:3})}}function Ur(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 Hb(n){let e,t,l,s,o,i,c,u,d,m,g,h,_,b,k,E,w,T,N,A,I,M,R,L,B,z,U,W,K,V,Y,G,D,H=n[1]&&Ur();return{c(){e=f("div"),t=f("h2"),t.textContent=`${v("settings.general")}`,l=y(),s=f("p"),s.textContent=`${v("settings.generalDesc")}`,o=y(),i=f("div"),c=f("h3"),c.textContent=`${v("settings.appearance")}`,u=y(),d=f("div"),m=f("label"),g=f("span"),g.textContent=`${v("settings.theme")}`,h=y(),_=f("select"),b=f("option"),b.textContent=`${v("settings.themeSystem")}`,k=f("option"),k.textContent=`${v("settings.themeLight")} (${v("settings.langSoon")})`,E=f("option"),E.textContent=`${v("settings.themeDark")} (${v("settings.langSoon")})`,w=y(),T=f("div"),N=f("h3"),N.textContent=`${v("settings.localization")}`,A=y(),I=f("div"),M=f("label"),R=f("span"),R.textContent=`${v("settings.language")}`,L=y(),B=f("select"),z=f("option"),z.textContent=`${v("settings.langRu")}`,U=f("option"),U.textContent=`${v("settings.langEn")} (${v("settings.langSoon")})`,W=y(),K=f("div"),H&&H.c(),V=y(),Y=f("button"),Y.textContent=`${v("settings.save")}`,r(t,"class","svelte-1e2uhdh"),r(s,"class","section-desc svelte-1e2uhdh"),r(c,"class","card-title svelte-1e2uhdh"),r(g,"class","label-text svelte-1e2uhdh"),b.__value="system",Ie(b,b.__value),k.__value="light",Ie(k,k.__value),k.disabled=!0,E.__value="dark",Ie(E,E.__value),E.disabled=!0,n[0]===void 0&&_l(()=>n[5].call(_)),r(d,"class","form-group svelte-1e2uhdh"),r(i,"class","settings-card svelte-1e2uhdh"),r(N,"class","card-title svelte-1e2uhdh"),r(R,"class","label-text svelte-1e2uhdh"),z.__value="ru",Ie(z,z.__value),U.__value="en",Ie(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(K,"class","settings-actions svelte-1e2uhdh"),r(e,"class","settings-section svelte-1e2uhdh")},m(F,J){C(F,e,J),a(e,t),a(e,l),a(e,s),a(e,o),a(e,i),a(i,c),a(i,u),a(i,d),a(d,m),a(m,g),a(m,h),a(m,_),a(_,b),a(_,k),a(_,E),Vn(_,n[0],!0),a(e,w),a(e,T),a(T,N),a(T,A),a(T,I),a(I,M),a(M,R),a(M,L),a(M,B),a(B,z),a(B,U),a(e,W),a(e,K),H&&H.m(K,null),a(K,V),a(K,Y),G||(D=[O(_,"change",n[5]),O(Y,"click",n[2])],G=!0)},p(F,[J]){J&1&&Vn(_,F[0]),F[1]?H||(H=Ur(),H.c(),H.m(K,V)):H&&(H.d(1),H=null)},i:se,o:se,d(F){F&&S(e),H&&H.d(),G=!1,Te(D)}}}function Wb(n,e,t){let{appConfig:l=null}=e,{onSave:s=null}=e,o="system",i=!1;function c(){l&&t(0,o=l.theme||"system")}async function u(){l&&(t(3,l.theme=o,l),s&&await s(l),t(1,i=!0),setTimeout(()=>t(1,i=!1),2e3))}function d(){o=zs(this),t(0,o)}return n.$$set=m=>{"appConfig"in m&&t(3,l=m.appConfig),"onSave"in m&&t(4,s=m.onSave)},n.$$.update=()=>{n.$$.dirty&8&&l&&c()},[o,i,u,l,s,d]}class Gb extends pt{constructor(e){super(),dt(this,e,Wb,Hb,ft,{appConfig:3,onSave:4})}}function Hr(n){let e,t;return{c(){e=f("div"),t=j(n[1]),r(e,"class","notice svelte-1zbky3")},m(l,s){C(l,e,s),a(e,t)},p(l,s){s&2&&Q(t,l[1])},d(l){l&&S(e)}}}function Kb(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:se,d(t){t&&S(e)}}}function Vb(n){let e,t,l,s,o,i=n[0].path+"",c,u,d,m,g,h,_=n[0].dbPath+"",b,k,E,w=n[0].nodeCount!==void 0&&Wr(n),T=n[0].fileCount!==void 0&&Gr(n);return{c(){e=f("div"),t=f("div"),l=f("span"),l.textContent=`${v("settings.vaultPath")}`,s=y(),o=f("span"),c=j(i),u=y(),d=f("div"),m=f("span"),m.textContent="DB",g=y(),h=f("span"),b=j(_),k=y(),w&&w.c(),E=y(),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(m,"class","info-label svelte-1zbky3"),r(h,"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,s),a(t,o),a(o,c),a(e,u),a(e,d),a(d,m),a(d,g),a(d,h),a(h,b),a(e,k),w&&w.m(e,null),a(e,E),T&&T.m(e,null)},p(N,A){A&1&&i!==(i=N[0].path+"")&&Q(c,i),A&1&&_!==(_=N[0].dbPath+"")&&Q(b,_),N[0].nodeCount!==void 0?w?w.p(N,A):(w=Wr(N),w.c(),w.m(e,E)):w&&(w.d(1),w=null),N[0].fileCount!==void 0?T?T.p(N,A):(T=Gr(N),T.c(),T.m(e,null)):T&&(T.d(1),T=null)},d(N){N&&S(e),w&&w.d(),T&&T.d()}}}function Wr(n){let e,t,l,s,o=n[0].nodeCount+"",i;return{c(){e=f("div"),t=f("span"),t.textContent="Nodes",l=y(),s=f("span"),i=j(o),r(t,"class","info-label svelte-1zbky3"),r(s,"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,s),a(s,i)},p(c,u){u&1&&o!==(o=c[0].nodeCount+"")&&Q(i,o)},d(c){c&&S(e)}}}function Gr(n){let e,t,l,s,o=n[0].fileCount+"",i;return{c(){e=f("div"),t=f("span"),t.textContent="Files",l=y(),s=f("span"),i=j(o),r(t,"class","info-label svelte-1zbky3"),r(s,"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,s),a(s,i)},p(c,u){u&1&&o!==(o=c[0].fileCount+"")&&Q(i,o)},d(c){c&&S(e)}}}function qb(n){let e,t,l,s,o,i,c,u,d,m,g,h,_,b,k,E,w=n[1]&&Hr(n);function T(I,M){return I[0]?Vb:Kb}let N=T(n),A=N(n);return{c(){e=f("div"),t=f("h2"),t.textContent=`${v("settings.workspace")}`,l=y(),s=f("p"),s.textContent=`${v("settings.workspaceDesc")}`,o=y(),w&&w.c(),i=y(),c=f("div"),A.c(),u=y(),d=f("div"),m=f("button"),m.textContent=`${v("settings.openVault")}`,g=y(),h=f("button"),h.textContent=`${v("settings.changeVault")}`,_=y(),b=f("button"),b.textContent=`${v("settings.checkIntegrity")}`,r(t,"class","svelte-1zbky3"),r(s,"class","section-desc svelte-1zbky3"),r(c,"class","settings-card svelte-1zbky3"),r(m,"class","btn svelte-1zbky3"),r(h,"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,M){C(I,e,M),a(e,t),a(e,l),a(e,s),a(e,o),w&&w.m(e,null),a(e,i),a(e,c),A.m(c,null),a(e,u),a(e,d),a(d,m),a(d,g),a(d,h),a(d,_),a(d,b),k||(E=[O(m,"click",n[2]),O(h,"click",n[4]),O(b,"click",n[3])],k=!0)},p(I,[M]){I[1]?w?w.p(I,M):(w=Hr(I),w.c(),w.m(e,i)):w&&(w.d(1),w=null),N===(N=T(I))&&A?A.p(I,M):(A.d(1),A=N(I),A&&(A.c(),A.m(c,null)))},i:se,o:se,d(I){I&&S(e),w&&w.d(),A.d(),k=!1,Te(E)}}}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 Zb(n,e,t){let{onRefresh:l=null}=e,s=null,o="";async function i(){try{t(0,s=await Ml("GetVaultInfo"))}catch{t(0,s=null)}}i();async function c(){try{await Ml("OpenVaultFolder")}catch(m){t(1,o=String(m))}}async function u(){try{const m=await Ml("VaultCheck");m.healthy?t(1,o="Vault healthy"):t(1,o="Issues found: "+(m.errors||[]).join("; "))}catch(m){t(1,o=String(m))}}async function d(){try{const m=await Ml("PickDirectory");if(!m)return;const g=await Ml("OpenVault",m);g&&g.status==="ready"&&(t(0,s=await Ml("GetVaultInfo")),l&&l())}catch(m){t(1,o=String(m))}}return n.$$set=m=>{"onRefresh"in m&&t(5,l=m.onRefresh)},[s,o,c,u,d,l]}class Yb extends pt{constructor(e){super(),dt(this,e,Zb,qb,ft,{onRefresh:5})}}function Kr(n,e,t){const l=n.slice();return l[6]=e[t],l}function Xb(n){let e,t=ve(n[0]),l=[];for(let s=0;sc(d);return n.$$set=d=>{"onRefresh"in d&&t(3,l=d.onRefresh)},[s,o,c,l,u]}class ev extends pt{constructor(e){super(),dt(this,e,$b,xb,ft,{onRefresh:3})}}function Zr(n,e,t){const l=n.slice();return l[12]=e[t],l}function tv(n){let e,t=ve(n[0]),l=[];for(let s=0;sНет установленных плагинов. Создайте папку .verstak/plugins/ в хранилище и добавьте туда плагины.
',r(e,"class","empty-state svelte-i9gngw")},m(t,l){C(t,e,l)},p:se,d(t){t&&S(e)}}}function lv(n){let e,t;return{c(){e=f("p"),t=j(n[2]),r(e,"class","error svelte-i9gngw")},m(l,s){C(l,e,s),a(e,t)},p(l,s){s&4&&Q(t,l[2])},d(l){l&&S(e)}}}function sv(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:se,d(t){t&&S(e)}}}function Yr(n){let e,t,l=n[12].version+"",s;return{c(){e=f("span"),t=j("v"),s=j(l),r(e,"class","plugin-version svelte-i9gngw")},m(o,i){C(o,e,i),a(e,t),a(e,s)},p(o,i){i&1&&l!==(l=o[12].version+"")&&Q(s,l)},d(o){o&&S(e)}}}function Xr(n){let e,t=n[12].description+"",l;return{c(){e=f("div"),l=j(t),r(e,"class","plugin-desc svelte-i9gngw")},m(s,o){C(s,e,o),a(e,l)},p(s,o){o&1&&t!==(t=s[12].description+"")&&Q(l,t)},d(s){s&&S(e)}}}function Jr(n){let e,t=(v("settings.author")||"Автор")+"",l,s,o=n[12].author+"",i;return{c(){e=f("span"),l=j(t),s=j(": "),i=j(o)},m(c,u){C(c,e,u),a(e,l),a(e,s),a(e,i)},p(c,u){u&1&&o!==(o=c[12].author+"")&&Q(i,o)},d(c){c&&S(e)}}}function Qr(n){let e,t=n[12].uiContribs.sidebarItems.length+"",l,s;return{c(){e=f("span"),l=j(t),s=j(" пункт(а) в сайдбаре")},m(o,i){C(o,e,i),a(e,l),a(e,s)},p(o,i){i&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,s;return{c(){e=f("span"),l=j(t),s=j(" вкладок(и) в карточке дела")},m(o,i){C(o,e,i),a(e,l),a(e,s)},p(o,i){i&1&&t!==(t=o[12].uiContribs.nodeTabs.length+"")&&Q(l,t)},d(o){o&&S(e)}}}function $r(n){let e;return{c(){e=f("span"),e.textContent="🗖 HTML-панель"},m(t,l){C(t,e,l)},d(t){t&&S(e)}}}function iv(n){let e,t,l,s,o,i,c,u;function d(){return n[8](n[12])}function m(){return n[9](n[12])}return{c(){e=f("div"),t=f("button"),l=f("span"),o=y(),i=f("button"),i.textContent="🗑",r(l,"class","toggle-knob svelte-i9gngw"),r(t,"class","toggle-btn svelte-i9gngw"),r(t,"role","switch"),r(t,"aria-checked",s=n[12].active),ce(t,"active",n[12].active),r(i,"class","uninstall-btn btn-sm svelte-i9gngw"),r(i,"title","Удалить плагин (очистить данные)"),r(e,"class","toggle-group svelte-i9gngw")},m(g,h){C(g,e,h),a(e,t),a(t,l),a(e,o),a(e,i),c||(u=[O(t,"click",d),O(i,"click",m)],c=!0)},p(g,h){n=g,h&1&&s!==(s=n[12].active)&&r(t,"aria-checked",s),h&1&&ce(t,"active",n[12].active)},d(g){g&&S(e),c=!1,Te(u)}}}function ov(n){let e,t,l;function s(){return n[7](n[12])}return{c(){e=f("button"),e.textContent="📦 Установить",r(e,"class","install-btn svelte-i9gngw")},m(o,i){C(o,e,i),t||(l=O(e,"click",s),t=!0)},p(o,i){n=o},d(o){o&&S(e),t=!1,l()}}}function ea(n){var B,z,U,W;let e,t,l,s=n[12].name+"",o,i,c,u,d,m,g,h,_,b,k,E=n[12].version&&Yr(n),w=n[12].description&&Xr(n),T=n[12].author&&Jr(n),N=((z=(B=n[12].uiContribs)==null?void 0:B.sidebarItems)==null?void 0:z.length)&&Qr(n),A=((W=(U=n[12].uiContribs)==null?void 0:U.nodeTabs)==null?void 0:W.length)&&xr(n),I=n[12].hasPanel&&$r();function M(K,V){return K[12].installed?iv:ov}let R=M(n),L=R(n);return{c(){e=f("div"),t=f("div"),l=f("div"),o=j(s),i=y(),E&&E.c(),c=y(),w&&w.c(),u=y(),d=f("div"),T&&T.c(),m=y(),N&&N.c(),g=y(),A&&A.c(),h=y(),I&&I.c(),_=y(),b=f("div"),L.c(),k=y(),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(K,V){C(K,e,V),a(e,t),a(t,l),a(l,o),a(l,i),E&&E.m(l,null),a(t,c),w&&w.m(t,null),a(t,u),a(t,d),T&&T.m(d,null),a(d,m),N&&N.m(d,null),a(d,g),A&&A.m(d,null),a(d,h),I&&I.m(d,null),a(e,_),a(e,b),L.m(b,null),a(e,k)},p(K,V){var Y,G,D,H;V&1&&s!==(s=K[12].name+"")&&Q(o,s),K[12].version?E?E.p(K,V):(E=Yr(K),E.c(),E.m(l,null)):E&&(E.d(1),E=null),K[12].description?w?w.p(K,V):(w=Xr(K),w.c(),w.m(t,u)):w&&(w.d(1),w=null),K[12].author?T?T.p(K,V):(T=Jr(K),T.c(),T.m(d,m)):T&&(T.d(1),T=null),(G=(Y=K[12].uiContribs)==null?void 0:Y.sidebarItems)!=null&&G.length?N?N.p(K,V):(N=Qr(K),N.c(),N.m(d,g)):N&&(N.d(1),N=null),(H=(D=K[12].uiContribs)==null?void 0:D.nodeTabs)!=null&&H.length?A?A.p(K,V):(A=xr(K),A.c(),A.m(d,h)):A&&(A.d(1),A=null),K[12].hasPanel?I||(I=$r(),I.c(),I.m(d,null)):I&&(I.d(1),I=null),R===(R=M(K))&&L?L.p(K,V):(L.d(1),L=R(K),L&&(L.c(),L.m(b,null)))},d(K){K&&S(e),E&&E.d(),w&&w.d(),T&&T.d(),N&&N.d(),A&&A.d(),I&&I.d(),L.d()}}}function rv(n){let e,t,l,s,o;function i(d,m){return d[1]?sv:d[2]?lv:d[0].length===0?nv:tv}let c=i(n),u=c(n);return{c(){e=f("div"),t=f("h3"),t.textContent=`${v("settings.plugins")||"Плагины"}`,l=y(),s=f("p"),s.textContent="Включение и отключение плагинов. Изменения применяются сразу.",o=y(),u.c(),r(t,"class","svelte-i9gngw"),r(s,"class","hint svelte-i9gngw"),r(e,"class","settings-plugins svelte-i9gngw")},m(d,m){C(d,e,m),a(e,t),a(e,l),a(e,s),a(e,o),u.m(e,null)},p(d,[m]){c===(c=i(d))&&u?u.p(d,m):(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 cl(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 av(n,e,t){let{onPluginToggle:l=null}=e,s=[],o=!0,i="";us(async()=>{try{t(0,s=await cl("ListPlugins")||[])}catch(_){t(2,i=String(_))}t(1,o=!1)});async function c(_){const b=!_.active;try{await cl("SetPluginEnabled",_.name,b),t(0,s=await cl("ListPlugins")||[]),l&&l()}catch(k){t(2,i=String(k))}}async function u(_){t(2,i="");try{await cl("InstallPlugin",_.name),_.installed=!0,t(0,s=await cl("ListPlugins")||[]),l&&l()}catch(b){t(2,i=String(b))}}async function d(_){if(confirm(`Удалить плагин «${_.name}»? Все данные плагина будут очищены. Файлы плагина сохранятся.`)){t(2,i="");try{await cl("UninstallPlugin",_.name),_.installed=!1,_.active=!1,t(0,s=await cl("ListPlugins")||[]),l&&l()}catch(b){t(2,i=String(b))}}}const m=_=>u(_),g=_=>c(_),h=_=>d(_);return n.$$set=_=>{"onPluginToggle"in _&&t(6,l=_.onPluginToggle)},n.$$.update=()=>{n.$$.dirty&1&&s.reduce((_,b)=>{var k,E;return _+(((E=(k=b.uiContribs)==null?void 0:k.sidebarItems)==null?void 0:E.length)||0)},0),n.$$.dirty&1&&s.reduce((_,b)=>{var k,E;return _+(((E=(k=b.uiContribs)==null?void 0:k.nodeTabs)==null?void 0:E.length)||0)},0)},[s,o,i,c,u,d,l,m,g,h]}class cv extends pt{constructor(e){super(),dt(this,e,av,rv,ft,{onPluginToggle:6})}}function uv(n){let e,t,l,s;return{c(){e=f("div"),t=f("h2"),t.textContent=`${v("settings.files")}`,l=y(),s=f("p"),s.textContent=`${v("settings.filesStub")}`,r(t,"class","svelte-19bo7bn"),r(s,"class","section-desc svelte-19bo7bn"),r(e,"class","settings-section svelte-19bo7bn")},m(o,i){C(o,e,i),a(e,t),a(e,l),a(e,s)},p:se,i:se,o:se,d(o){o&&S(e)}}}class fv extends pt{constructor(e){super(),dt(this,e,null,uv,ft,{})}}function dv(n){let e,t,l,s;return{c(){e=f("div"),t=f("h2"),t.textContent=`${v("settings.activity")}`,l=y(),s=f("p"),s.textContent=`${v("settings.activityStub")}`,r(t,"class","svelte-19bo7bn"),r(s,"class","section-desc svelte-19bo7bn"),r(e,"class","settings-section svelte-19bo7bn")},m(o,i){C(o,e,i),a(e,t),a(e,l),a(e,s)},p:se,i:se,o:se,d(o){o&&S(e)}}}class pv extends pt{constructor(e){super(),dt(this,e,null,dv,ft,{})}}function ta(n){let e,t;return{c(){e=f("div"),t=j(n[2]),r(e,"class","error-msg svelte-1fx1e1e")},m(l,s){C(l,e,s),a(e,t)},p(l,s){s[0]&4&&Q(t,l[2])},d(l){l&&S(e)}}}function na(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,s){C(l,e,s),a(e,t)},p(l,s){s[0]&8&&Q(t,l[3]),s[0]&16&&ce(e,"warning",l[4]==="warning")},d(l){l&&S(e)}}}function mv(n){let e,t,l,s,o,i,c,u,d,m,g,h,_,b,k,E,w,T,N,A,I,M,R=v("settings.checkConnection")+"",L,B,z,U,W=v("common.connect")+"",K,V,Y,G,D,H=n[11]!==null&&la(n);return{c(){e=f("div"),t=f("div"),l=f("div"),s=f("label"),o=f("span"),o.textContent=`${v("settings.serverUrl")}`,i=y(),c=f("input"),u=y(),d=f("div"),m=f("label"),g=f("span"),g.textContent=`${v("sync.username")}`,h=y(),_=f("input"),b=y(),k=f("div"),E=f("label"),w=f("span"),w.textContent=`${v("sync.password")}`,T=y(),N=f("input"),A=y(),I=f("div"),M=f("button"),L=j(R),z=y(),U=f("button"),K=j(W),Y=y(),H&&H.c(),r(o,"class","label-text"),r(c,"type","text"),r(c,"placeholder","https://example.com"),r(l,"class","form-group svelte-1fx1e1e"),r(g,"class","label-text"),r(_,"type","text"),r(d,"class","form-group svelte-1fx1e1e"),r(w,"class","label-text"),r(N,"type","password"),r(k,"class","form-group svelte-1fx1e1e"),r(M,"class","btn"),M.disabled=B=n[1]||!n[5],r(U,"class","btn btn-primary"),U.disabled=V=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(F,J){C(F,e,J),a(e,t),a(t,l),a(l,s),a(s,o),a(s,i),a(s,c),Ie(c,n[5]),a(t,u),a(t,d),a(d,m),a(m,g),a(m,h),a(m,_),Ie(_,n[6]),a(t,b),a(t,k),a(k,E),a(E,w),a(E,T),a(E,N),Ie(N,n[7]),a(t,A),a(t,I),a(I,M),a(M,L),a(I,z),a(I,U),a(U,K),a(t,Y),H&&H.m(t,null),G||(D=[O(c,"input",n[23]),O(_,"input",n[24]),O(N,"input",n[25]),O(M,"click",n[12]),O(U,"click",n[13])],G=!0)},p(F,J){J[0]&32&&c.value!==F[5]&&Ie(c,F[5]),J[0]&64&&_.value!==F[6]&&Ie(_,F[6]),J[0]&128&&N.value!==F[7]&&Ie(N,F[7]),J[0]&34&&B!==(B=F[1]||!F[5])&&(M.disabled=B),J[0]&226&&V!==(V=F[1]||!F[5]||!F[6]||!F[7])&&(U.disabled=V),F[11]!==null?H?H.p(F,J):(H=la(F),H.c(),H.m(t,null)):H&&(H.d(1),H=null)},d(F){F&&S(e),H&&H.d(),G=!1,Te(D)}}}function gv(n){let e,t,l,s,o,i,c=n[20](n[0].lastStatus)+"",u,d,m,g,h,_,b,k,E,w=v("settings.syncNow")+"",T,N,A,I=v("settings.disconnect")+"",M,R,L,B=v("settings.resetKey")+"",z,U,W,K,V,Y,G,D,H,F,J,Z,X=n[0].serverUrl&&sa(n),$=n[0].deviceName&&ia(n),te=n[0].deviceId&&oa(n),ne=n[0].lastSyncAt&&ra(n),de=n[0].lastError&&aa(n);return{c(){e=f("div"),t=f("div"),l=f("div"),s=f("span"),s.textContent=`${v("settings.status")}`,o=y(),i=f("span"),u=j(c),d=y(),X&&X.c(),m=y(),$&&$.c(),g=y(),te&&te.c(),h=y(),ne&&ne.c(),_=y(),de&&de.c(),b=y(),k=f("div"),E=f("button"),T=j(w),N=y(),A=f("button"),M=j(I),R=y(),L=f("button"),z=j(B),U=y(),W=f("div"),K=f("label"),V=f("span"),V.textContent=`${v("sync.interval")}`,Y=y(),G=f("div"),D=f("input"),H=y(),F=f("button"),F.textContent=`${v("common.save")}`,r(s,"class","info-label svelte-1fx1e1e"),r(i,"class","info-value svelte-1fx1e1e"),ce(i,"status-ok",n[0].lastStatus==="connected"),ce(i,"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(E,"class","btn btn-primary"),E.disabled=n[1],r(A,"class","btn"),A.disabled=n[1],r(L,"class","btn"),L.disabled=n[1],r(k,"class","sync-actions svelte-1fx1e1e"),r(V,"class","label-text"),r(D,"type","number"),r(D,"min","0"),r(D,"placeholder","0"),r(D,"class","svelte-1fx1e1e"),r(F,"class","btn btn-sm"),r(G,"class","interval-row svelte-1fx1e1e"),r(W,"class","sync-interval svelte-1fx1e1e")},m(Ae,Pe){C(Ae,e,Pe),a(e,t),a(t,l),a(l,s),a(l,o),a(l,i),a(i,u),a(t,d),X&&X.m(t,null),a(t,m),$&&$.m(t,null),a(t,g),te&&te.m(t,null),a(t,h),ne&&ne.m(t,null),a(t,_),de&&de.m(t,null),C(Ae,b,Pe),C(Ae,k,Pe),a(k,E),a(E,T),a(k,N),a(k,A),a(A,M),a(k,R),a(k,L),a(L,z),C(Ae,U,Pe),C(Ae,W,Pe),a(W,K),a(K,V),a(K,Y),a(K,G),a(G,D),Ie(D,n[8]),a(G,H),a(G,F),J||(Z=[O(E,"click",n[14]),O(A,"click",n[16]),O(L,"click",n[18]),O(D,"input",n[22]),O(F,"click",n[15])],J=!0)},p(Ae,Pe){Pe[0]&1&&c!==(c=Ae[20](Ae[0].lastStatus)+"")&&Q(u,c),Pe[0]&1&&ce(i,"status-ok",Ae[0].lastStatus==="connected"),Pe[0]&1&&ce(i,"status-err",Ae[0].lastStatus==="error"||Ae[0].lastStatus==="revoked"),Ae[0].serverUrl?X?X.p(Ae,Pe):(X=sa(Ae),X.c(),X.m(t,m)):X&&(X.d(1),X=null),Ae[0].deviceName?$?$.p(Ae,Pe):($=ia(Ae),$.c(),$.m(t,g)):$&&($.d(1),$=null),Ae[0].deviceId?te?te.p(Ae,Pe):(te=oa(Ae),te.c(),te.m(t,h)):te&&(te.d(1),te=null),Ae[0].lastSyncAt?ne?ne.p(Ae,Pe):(ne=ra(Ae),ne.c(),ne.m(t,_)):ne&&(ne.d(1),ne=null),Ae[0].lastError?de?de.p(Ae,Pe):(de=aa(Ae),de.c(),de.m(t,null)):de&&(de.d(1),de=null),Pe[0]&2&&(E.disabled=Ae[1]),Pe[0]&2&&(A.disabled=Ae[1]),Pe[0]&2&&(L.disabled=Ae[1]),Pe[0]&256&&Ul(D.value)!==Ae[8]&&Ie(D,Ae[8])},d(Ae){Ae&&(S(e),S(b),S(k),S(U),S(W)),X&&X.d(),$&&$.d(),te&&te.d(),ne&&ne.d(),de&&de.d(),J=!1,Te(Z)}}}function la(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(s,o){C(s,e,o),a(e,l)},p(s,o){o[0]&2048&&t!==(t=(s[11]?v("common.test")+" OK":v("error.generic"))+"")&&Q(l,t),o[0]&2048&&ce(e,"ok",s[11]),o[0]&2048&&ce(e,"fail",!s[11])},d(s){s&&S(e)}}}function sa(n){let e,t,l,s,o=n[0].serverUrl+"",i;return{c(){e=f("div"),t=f("span"),t.textContent=`${v("settings.serverUrl")}`,l=y(),s=f("span"),i=j(o),r(t,"class","info-label svelte-1fx1e1e"),r(s,"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,s),a(s,i)},p(c,u){u[0]&1&&o!==(o=c[0].serverUrl+"")&&Q(i,o)},d(c){c&&S(e)}}}function ia(n){let e,t,l,s,o=n[0].deviceName+"",i;return{c(){e=f("div"),t=f("span"),t.textContent=`${v("settings.deviceName")}`,l=y(),s=f("span"),i=j(o),r(t,"class","info-label svelte-1fx1e1e"),r(s,"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,s),a(s,i)},p(c,u){u[0]&1&&o!==(o=c[0].deviceName+"")&&Q(i,o)},d(c){c&&S(e)}}}function oa(n){let e,t,l,s,o=n[0].deviceId+"",i;return{c(){e=f("div"),t=f("span"),t.textContent=`${v("settings.deviceId")}`,l=y(),s=f("span"),i=j(o),r(t,"class","info-label svelte-1fx1e1e"),r(s,"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,s),a(s,i)},p(c,u){u[0]&1&&o!==(o=c[0].deviceId+"")&&Q(i,o)},d(c){c&&S(e)}}}function ra(n){let e,t,l,s,o=n[0].lastSyncAt+"",i;return{c(){e=f("div"),t=f("span"),t.textContent=`${v("settings.lastSync")}`,l=y(),s=f("span"),i=j(o),r(t,"class","info-label svelte-1fx1e1e"),r(s,"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,s),a(s,i)},p(c,u){u[0]&1&&o!==(o=c[0].lastSyncAt+"")&&Q(i,o)},d(c){c&&S(e)}}}function aa(n){let e,t,l,s,o=n[0].lastError+"",i;return{c(){e=f("div"),t=f("span"),t.textContent=`${v("settings.lastError")}`,l=y(),s=f("span"),i=j(o),r(t,"class","info-label svelte-1fx1e1e"),r(s,"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,s),a(s,i)},p(c,u){u[0]&1&&o!==(o=c[0].lastError+"")&&Q(i,o)},d(c){c&&S(e)}}}function ca(n){let e,t,l,s,o,i,c,u,d,m,g,h;return{c(){e=f("button"),t=f("div"),l=f("h3"),l.textContent=`${v("settings.confirmDisconnect")}`,s=y(),o=f("p"),o.textContent=`${v("settings.confirmDisconnectDesc")}`,i=y(),c=f("div"),u=f("button"),u.textContent=`${v("common.disconnect")}`,d=y(),m=f("button"),m.textContent=`${v("common.cancel")}`,r(l,"class","svelte-1fx1e1e"),r(o,"class","modal-desc svelte-1fx1e1e"),r(u,"class","btn btn-danger"),r(m,"class","btn"),r(c,"class","modal-actions svelte-1fx1e1e"),r(t,"class","modal svelte-1fx1e1e"),r(e,"class","modal-overlay svelte-1fx1e1e")},m(_,b){C(_,e,b),a(e,t),a(t,l),a(t,s),a(t,o),a(t,i),a(t,c),a(c,u),a(c,d),a(c,m),g||(h=[O(u,"click",n[17]),O(m,"click",n[26]),O(e,"click",n[27])],g=!0)},p:se,d(_){_&&S(e),g=!1,Te(h)}}}function ua(n){let e,t,l,s,o,i,c,u,d,m,g,h;return{c(){e=f("button"),t=f("div"),l=f("h3"),l.textContent=`${v("settings.confirmResetKey")}`,s=y(),o=f("p"),o.textContent=`${v("settings.confirmResetKeyDesc")}`,i=y(),c=f("div"),u=f("button"),u.textContent=`${v("settings.resetKey")}`,d=y(),m=f("button"),m.textContent=`${v("common.cancel")}`,r(l,"class","svelte-1fx1e1e"),r(o,"class","modal-desc svelte-1fx1e1e"),r(u,"class","btn btn-danger"),r(m,"class","btn"),r(c,"class","modal-actions svelte-1fx1e1e"),r(t,"class","modal svelte-1fx1e1e"),r(e,"class","modal-overlay svelte-1fx1e1e")},m(_,b){C(_,e,b),a(e,t),a(t,l),a(t,s),a(t,o),a(t,i),a(t,c),a(c,u),a(c,d),a(c,m),g||(h=[O(u,"click",n[19]),O(m,"click",n[28]),O(e,"click",n[29])],g=!0)},p:se,d(_){_&&S(e),g=!1,Te(h)}}}function hv(n){let e,t,l,s,o,i,c,u,d,m,g=n[2]&&ta(n),h=n[3]&&!n[2]&&na(n);function _(T,N){return T[0]&&T[0].enabled?gv:mv}let b=_(n),k=b(n),E=n[9]&&ca(n),w=n[10]&&ua(n);return{c(){e=f("div"),t=f("h2"),t.textContent=`${v("settings.sync")}`,l=y(),s=f("p"),s.textContent=`${v("settings.syncDesc")}`,o=y(),g&&g.c(),i=y(),h&&h.c(),c=y(),k.c(),u=y(),E&&E.c(),d=y(),w&&w.c(),m=ht(),r(t,"class","svelte-1fx1e1e"),r(s,"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,s),a(e,o),g&&g.m(e,null),a(e,i),h&&h.m(e,null),a(e,c),k.m(e,null),C(T,u,N),E&&E.m(T,N),C(T,d,N),w&&w.m(T,N),C(T,m,N)},p(T,N){T[2]?g?g.p(T,N):(g=ta(T),g.c(),g.m(e,i)):g&&(g.d(1),g=null),T[3]&&!T[2]?h?h.p(T,N):(h=na(T),h.c(),h.m(e,c)):h&&(h.d(1),h=null),b===(b=_(T))&&k?k.p(T,N):(k.d(1),k=b(T),k&&(k.c(),k.m(e,null))),T[9]?E?E.p(T,N):(E=ca(T),E.c(),E.m(d.parentNode,d)):E&&(E.d(1),E=null),T[10]?w?w.p(T,N):(w=ua(T),w.c(),w.m(m.parentNode,m)):w&&(w.d(1),w=null)},i:se,o:se,d(T){T&&(S(e),S(u),S(d),S(m)),g&&g.d(),h&&h.d(),k.d(),E&&E.d(T),w&&w.d(T)}}}function ul(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,s=null,o=!1,i="",c="",u="",d="",m="",g="",h=0,_=!1,b=!1,k=null;async function E(){try{t(0,s=await ul("GetSyncSettings")),s&&(t(5,d=s.serverUrl||""),t(8,h=s.syncInterval||0))}catch{t(0,s=null)}}E();async function w(){t(1,o=!0),t(2,i=""),t(4,u=""),t(11,k=null);try{await ul("SyncTestConnection",d,m,g),t(11,k=!0),t(3,c="connection ok")}catch(F){t(11,k=!1),t(3,c="connection failed: "+String(F))}t(1,o=!1)}async function T(){t(1,o=!0),t(2,i=""),t(4,u="");try{await ul("SyncConfigure",d,m,g),t(3,c="configured"),t(6,m=""),t(7,g=""),await E(),l&&l()}catch(F){t(2,i=String(F))}t(1,o=!1)}function N(F){const J=Array.isArray(F==null?void 0:F.conflicts)?F.conflicts:[],Z=Array.isArray(F==null?void 0:F.applyErrors)?F.applyErrors:[],X=[];return J.length>0&&X.push(v("sync.conflictsCount",{count:J.length})),Z.length>0&&X.push(v("sync.applyErrorsCount",{count:Z.length})),X.join(" · ")}async function A(){t(1,o=!0),t(2,i=""),t(4,u="");try{const F=await ul("SyncNow"),J=v("sync.pushedPulled",{pushed:(F==null?void 0:F.pushed)||0,pulled:(F==null?void 0:F.pulled)||0}),Z=N(F);t(3,c=Z?J+" · "+Z:J),t(4,u=Z?"warning":""),await E(),l&&l()}catch(F){t(2,i=String(F))}t(1,o=!1)}async function I(){try{await ul("SyncSetInterval",h),t(3,c=v("sync.settingsSaved")),t(4,u="")}catch(F){t(2,i=String(F))}}function M(){t(9,_=!0)}async function R(){t(9,_=!1),t(1,o=!0),t(4,u="");try{await ul("SyncDisconnect"),t(3,c="disconnected"),await E(),l&&l()}catch(F){t(2,i=String(F))}t(1,o=!1)}function L(){t(10,b=!0)}async function B(){t(10,b=!1),t(1,o=!0),t(4,u="");try{await ul("ResetSyncKey"),t(3,c="key reset"),await E(),l&&l()}catch(F){t(2,i=String(F))}t(1,o=!1)}function z(F){return F?{connected:v("settings.connected"),disconnected:v("settings.disconnected"),disabled:v("settings.notConfigured"),error:v("settings.error"),revoked:v("settings.revoked")}[F]||F:v("settings.notConfigured")}function U(){h=Ul(this.value),t(8,h)}function W(){d=this.value,t(5,d)}function K(){m=this.value,t(6,m)}function V(){g=this.value,t(7,g)}const Y=()=>t(9,_=!1),G=()=>t(9,_=!1),D=()=>t(10,b=!1),H=()=>t(10,b=!1);return n.$$set=F=>{"onRefresh"in F&&t(21,l=F.onRefresh)},[s,o,i,c,u,d,m,g,h,_,b,k,w,T,A,I,M,R,L,B,z,l,U,W,K,V,Y,G,D,H]}class bv extends pt{constructor(e){super(),dt(this,e,_v,hv,ft,{onRefresh:21},null,[-1,-1])}}function vv(n){let e,t,l,s;return{c(){e=f("div"),t=f("h2"),t.textContent=`${v("settings.backup")}`,l=y(),s=f("p"),s.textContent=`${v("settings.backupStub")}`,r(t,"class","svelte-19bo7bn"),r(s,"class","section-desc svelte-19bo7bn"),r(e,"class","settings-section svelte-19bo7bn")},m(o,i){C(o,e,i),a(e,t),a(e,l),a(e,s)},p:se,i:se,o:se,d(o){o&&S(e)}}}class kv extends pt{constructor(e){super(),dt(this,e,null,vv,ft,{})}}function fa(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,s){C(l,e,s),a(e,t)},p(l,s){s&32&&Q(t,l[5]),s&64&&ce(e,"ok",l[6]==="ok"),s&64&&ce(e,"error",l[6]==="error")},d(l){l&&S(e)}}}function da(n){let e,t,l,s,o,i;return{c(){e=f("div"),t=f("span"),t.textContent="Активный порт",l=y(),s=f("span"),o=j("127.0.0.1:"),i=j(n[3]),r(t,"class","info-label svelte-13i6m7m"),r(s,"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,s),a(s,o),a(s,i)},p(c,u){u&8&&Q(i,c[3])},d(c){c&&S(e)}}}function pa(n){let e,t,l,s;return{c(){e=f("button"),t=j("Перезапустить сервер"),r(e,"class","btn"),e.disabled=n[4]},m(o,i){C(o,e,i),a(e,t),l||(s=O(e,"click",n[8]),l=!0)},p(o,i){i&16&&(e.disabled=o[4])},d(o){o&&S(e),l=!1,s()}}}function yv(n){let e,t,l,s,o,i,c,u,d,m,g,h,_,b,k,E,w,T,N,A,I,M,R,L,B,z,U,W=n[2]?"Запущен":"Остановлен",K,V,Y,G,D,H,F,J,Z,X=n[5]&&fa(n),$=n[2]&&n[3]&&da(n),te=n[0]&&pa(n);return{c(){e=f("div"),t=f("h2"),t.textContent="Browser Bridge",l=y(),s=f("p"),s.textContent=`Локальный HTTP-сервер для приёма событий от браузерного расширения Verstak Bridge.
+ Работает только на 127.0.0.1.`,o=y(),X&&X.c(),i=y(),c=f("div"),u=f("div"),d=f("label"),m=f("input"),g=y(),h=f("span"),h.textContent="Включить Browser Bridge",_=y(),b=f("div"),k=f("label"),E=f("span"),E.textContent="Порт",w=y(),T=f("input"),A=y(),I=f("p"),I.textContent="По умолчанию: 9786. Требуется перезапуск сервера при изменении.",M=y(),R=f("div"),L=f("div"),B=f("span"),B.textContent="Статус",z=y(),U=f("span"),K=j(W),V=y(),$&&$.c(),Y=y(),G=f("div"),D=f("button"),H=j("Сохранить"),F=y(),te&&te.c(),r(t,"class","svelte-13i6m7m"),r(s,"class","section-desc svelte-13i6m7m"),r(m,"type","checkbox"),r(h,"class","toggle-text svelte-13i6m7m"),r(d,"class","toggle-label svelte-13i6m7m"),r(u,"class","form-group svelte-13i6m7m"),r(E,"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(L,"class","info-row svelte-13i6m7m"),r(R,"class","bridge-status svelte-13i6m7m"),r(c,"class","settings-card svelte-13i6m7m"),r(D,"class","btn btn-primary"),D.disabled=n[4],r(G,"class","actions svelte-13i6m7m"),r(e,"class","settings-section svelte-13i6m7m")},m(ne,de){C(ne,e,de),a(e,t),a(e,l),a(e,s),a(e,o),X&&X.m(e,null),a(e,i),a(e,c),a(c,u),a(u,d),a(d,m),m.checked=n[0],a(d,g),a(d,h),a(c,_),a(c,b),a(b,k),a(k,E),a(k,w),a(k,T),Ie(T,n[1]),a(b,A),a(b,I),a(c,M),a(c,R),a(R,L),a(L,B),a(L,z),a(L,U),a(U,K),a(R,V),$&&$.m(R,null),a(e,Y),a(e,G),a(G,D),a(D,H),a(G,F),te&&te.m(G,null),J||(Z=[O(m,"change",n[10]),O(T,"input",n[11]),O(D,"click",n[7])],J=!0)},p(ne,[de]){ne[5]?X?X.p(ne,de):(X=fa(ne),X.c(),X.m(e,i)):X&&(X.d(1),X=null),de&1&&(m.checked=ne[0]),de&1&&N!==(N=!ne[0])&&(T.disabled=N),de&2&&Ul(T.value)!==ne[1]&&Ie(T,ne[1]),de&4&&W!==(W=ne[2]?"Запущен":"Остановлен")&&Q(K,W),de&4&&ce(U,"status-ok",ne[2]),de&4&&ce(U,"status-off",!ne[2]),ne[2]&&ne[3]?$?$.p(ne,de):($=da(ne),$.c(),$.m(R,null)):$&&($.d(1),$=null),de&16&&(D.disabled=ne[4]),ne[0]?te?te.p(ne,de):(te=pa(ne),te.c(),te.m(G,null)):te&&(te.d(1),te=null)},i:se,o:se,d(ne){ne&&S(e),X&&X.d(),$&&$.d(),te&&te.d(),J=!1,Te(Z)}}}function wv(n,e,t){let{appConfig:l=null}=e,s=!1,o=9786,i=!1,c=0,u=!1,d="",m="";function g(){if(l&&l.vault&&l.vault.bridge){const w=l.vault.bridge;t(0,s=w.enabled!==!1),t(1,o=w.port||9786)}}async function h(){try{if(window.go&&window.go.main&&window.go.main.App){const w=await window.go.main.App.BridgeInfo();t(2,i=w.running||!1),t(3,c=w.port||0)}}catch{t(2,i=!1),t(3,c=0)}}g(),h();async function _(){t(4,u=!0),t(5,d=""),t(6,m="");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=s,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,m="ok"),await h()}catch(w){t(5,d=String(w)),t(6,m="error")}t(4,u=!1)}async function b(){t(4,u=!0),t(5,d=""),t(6,m="");try{window.go&&window.go.main&&window.go.main.App&&await window.go.main.App.RestartBridge(),t(5,d="bridge restarted"),t(6,m="ok"),await h()}catch(w){t(5,d=String(w)),t(6,m="error")}t(4,u=!1)}function k(){s=this.checked,t(0,s)}function E(){o=Ul(this.value),t(1,o)}return n.$$set=w=>{"appConfig"in w&&t(9,l=w.appConfig)},[s,o,i,c,u,d,m,_,b,l,k,E]}class Ev extends pt{constructor(e){super(),dt(this,e,wv,yv,ft,{appConfig:9})}}const{window:Tv}=Yi;function Sv(n){let e,t;return e=new Ev({props:{appConfig:n[2]}}),{c(){Qe(e.$$.fragment)},m(l,s){Ye(e,l,s),t=!0},p(l,s){const o={};s&4&&(o.appConfig=l[2]),e.$set(o)},i(l){t||(he(e.$$.fragment,l),t=!0)},o(l){ye(e.$$.fragment,l),t=!1},d(l){Xe(e,l)}}}function Cv(n){let e,t;return e=new kv({}),{c(){Qe(e.$$.fragment)},m(l,s){Ye(e,l,s),t=!0},p:se,i(l){t||(he(e.$$.fragment,l),t=!0)},o(l){ye(e.$$.fragment,l),t=!1},d(l){Xe(e,l)}}}function Av(n){let e,t;return e=new bv({props:{onRefresh:n[7]}}),{c(){Qe(e.$$.fragment)},m(l,s){Ye(e,l,s),t=!0},p:se,i(l){t||(he(e.$$.fragment,l),t=!0)},o(l){ye(e.$$.fragment,l),t=!1},d(l){Xe(e,l)}}}function Nv(n){let e,t;return e=new pv({}),{c(){Qe(e.$$.fragment)},m(l,s){Ye(e,l,s),t=!0},p:se,i(l){t||(he(e.$$.fragment,l),t=!0)},o(l){ye(e.$$.fragment,l),t=!1},d(l){Xe(e,l)}}}function Rv(n){let e,t;return e=new fv({}),{c(){Qe(e.$$.fragment)},m(l,s){Ye(e,l,s),t=!0},p:se,i(l){t||(he(e.$$.fragment,l),t=!0)},o(l){ye(e.$$.fragment,l),t=!1},d(l){Xe(e,l)}}}function Iv(n){let e,t;return e=new cv({props:{onPluginToggle:n[0]}}),{c(){Qe(e.$$.fragment)},m(l,s){Ye(e,l,s),t=!0},p(l,s){const o={};s&1&&(o.onPluginToggle=l[0]),e.$set(o)},i(l){t||(he(e.$$.fragment,l),t=!0)},o(l){ye(e.$$.fragment,l),t=!1},d(l){Xe(e,l)}}}function Mv(n){let e,t;return e=new ev({props:{onRefresh:n[3]}}),{c(){Qe(e.$$.fragment)},m(l,s){Ye(e,l,s),t=!0},p:se,i(l){t||(he(e.$$.fragment,l),t=!0)},o(l){ye(e.$$.fragment,l),t=!1},d(l){Xe(e,l)}}}function Lv(n){let e,t;return e=new Yb({props:{onRefresh:n[3]}}),{c(){Qe(e.$$.fragment)},m(l,s){Ye(e,l,s),t=!0},p:se,i(l){t||(he(e.$$.fragment,l),t=!0)},o(l){ye(e.$$.fragment,l),t=!1},d(l){Xe(e,l)}}}function Ov(n){let e,t;return e=new Gb({props:{appConfig:n[2],onSave:n[6]}}),{c(){Qe(e.$$.fragment)},m(l,s){Ye(e,l,s),t=!0},p(l,s){const o={};s&4&&(o.appConfig=l[2]),e.$set(o)},i(l){t||(he(e.$$.fragment,l),t=!0)},o(l){ye(e.$$.fragment,l),t=!1},d(l){Xe(e,l)}}}function Dv(n){let e,t,l,s,o,i,c,u,d,m,g,h,_,b,k,E;d=new Ub({props:{activeSection:n[1],onSelect:n[4]}});const w=[Ov,Lv,Mv,Iv,Rv,Nv,Av,Cv,Sv],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~(h=N(n))&&(_=T[h]=w[h](n)),{c(){e=f("button"),t=f("div"),l=f("div"),s=f("h2"),s.textContent=`${v("settings.title")}`,o=y(),i=f("button"),i.innerHTML=' ',c=y(),u=f("div"),Qe(d.$$.fragment),m=y(),g=f("div"),_&&_.c(),r(s,"class","svelte-zf2zsc"),r(i,"class","close-btn svelte-zf2zsc"),r(i,"title",v("settings.close")),r(l,"class","settings-header svelte-zf2zsc"),r(g,"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,s),a(l,o),a(l,i),a(t,c),a(t,u),Ye(d,u,null),a(u,m),a(u,g),~h&&T[h].m(g,null),b=!0,k||(E=[O(Tv,"keydown",n[8]),O(i,"click",n[5]),O(e,"click",xt(n[5]))],k=!0)},p(A,[I]){const M={};I&2&&(M.activeSection=A[1]),d.$set(M);let R=h;h=N(A),h===R?~h&&T[h].p(A,I):(_&&(Tt(),ye(T[R],1,1,()=>{T[R]=null}),St()),~h?(_=T[h],_?_.p(A,I):(_=T[h]=w[h](A),_.c()),he(_,1),_.m(g,null)):_=null)},i(A){b||(he(d.$$.fragment,A),he(_),b=!0)},o(A){ye(d.$$.fragment,A),ye(_),b=!1},d(A){A&&S(e),Xe(d),~h&&T[h].d(),k=!1,Te(E)}}}function ma(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 Pv(n,e,t){let{onClose:l=null}=e,{onSyncRefresh:s=null}=e,{onPluginToggle:o=null}=e,{initialSection:i="general"}=e,c=i,u=null;async function d(){try{t(2,u=await ma("GetAppConfig"))}catch{t(2,u=null)}}d();function m(k){t(1,c=k)}function g(){l&&l()}async function h(k){try{await ma("SaveAppConfig",k),t(2,u=k)}catch(E){console.error(E)}}function _(){s&&s()}function b(k){k.key==="Escape"&&g()}return n.$$set=k=>{"onClose"in k&&t(9,l=k.onClose),"onSyncRefresh"in k&&t(10,s=k.onSyncRefresh),"onPluginToggle"in k&&t(0,o=k.onPluginToggle),"initialSection"in k&&t(11,i=k.initialSection)},[o,c,u,d,m,g,h,_,b,l,s,i]}class zv extends pt{constructor(e){super(),dt(this,e,Pv,Dv,ft,{onClose:9,onSyncRefresh:10,onPluginToggle:0,initialSection:11})}}function Bv(n){let e,t,l,s,o,i,c,u;return{c(){e=f("div"),t=f("span"),l=y(),s=f("span"),s.textContent=`${v("sync.status.disabled")}`,o=y(),i=f("button"),i.textContent=`${v("sync.configure")}`,r(t,"class","sync-dot dot-disabled svelte-1rxbx0"),r(s,"class","sync-label svelte-1rxbx0"),r(i,"class","btn btn-xs svelte-1rxbx0"),r(e,"class","sync-status-row svelte-1rxbx0")},m(d,m){C(d,e,m),a(e,t),a(e,l),a(e,s),a(e,o),a(e,i),c||(u=O(i,"click",function(){On(n[5])&&n[5].apply(this,arguments)}),c=!0)},p(d,m){n=d},d(d){d&&S(e),c=!1,u()}}}function Fv(n){let e,t,l,s,o,i=n[7](n[0])+"",c,u,d,m,g,h=(n[1]?v("sync.running"):v("sync.run"))+"",_,b,k,E,w,T,N,A=n[0].unpushedOps>0&&ga(n),I=n[2]&&ha(n);return{c(){e=f("div"),t=f("span"),s=y(),o=f("span"),c=j(i),u=y(),A&&A.c(),d=y(),m=f("div"),g=f("button"),_=j(h),b=y(),k=f("button"),k.textContent=`${v("sync.details")}`,E=y(),I&&I.c(),w=ht(),r(t,"class",l="sync-dot "+n[6](n[0])+" svelte-1rxbx0"),r(o,"class","sync-label svelte-1rxbx0"),r(g,"class","btn btn-xs svelte-1rxbx0"),g.disabled=n[1],r(k,"class","btn btn-xs btn-link svelte-1rxbx0"),r(m,"class","sync-actions-row svelte-1rxbx0"),r(e,"class","sync-status-row svelte-1rxbx0")},m(M,R){C(M,e,R),a(e,t),a(e,s),a(e,o),a(o,c),a(e,u),A&&A.m(e,null),a(e,d),a(e,m),a(m,g),a(g,_),a(m,b),a(m,k),C(M,E,R),I&&I.m(M,R),C(M,w,R),T||(N=[O(g,"click",function(){On(n[4])&&n[4].apply(this,arguments)}),O(k,"click",function(){On(n[5])&&n[5].apply(this,arguments)})],T=!0)},p(M,R){n=M,R&1&&l!==(l="sync-dot "+n[6](n[0])+" svelte-1rxbx0")&&r(t,"class",l),R&1&&i!==(i=n[7](n[0])+"")&&Q(c,i),n[0].unpushedOps>0?A?A.p(n,R):(A=ga(n),A.c(),A.m(e,d)):A&&(A.d(1),A=null),R&2&&h!==(h=(n[1]?v("sync.running"):v("sync.run"))+"")&&Q(_,h),R&2&&(g.disabled=n[1]),n[2]?I?I.p(n,R):(I=ha(n),I.c(),I.m(w.parentNode,w)):I&&(I.d(1),I=null)},d(M){M&&(S(e),S(E),S(w)),A&&A.d(),I&&I.d(M),T=!1,Te(N)}}}function ga(n){let e,t=n[0].unpushedOps+"",l,s,o=v("sync.changes")+"",i;return{c(){e=f("span"),l=j(t),s=y(),i=j(o),r(e,"class","sync-count svelte-1rxbx0")},m(c,u){C(c,e,u),a(e,l),a(e,s),a(e,i)},p(c,u){u&1&&t!==(t=c[0].unpushedOps+"")&&Q(l,t)},d(c){c&&S(e)}}}function ha(n){let e,t,l;return{c(){e=f("div"),t=j(n[2]),r(e,"class",l=kr(n[3]==="warning"?"sync-message sync-message-warning":"sync-message")+" svelte-1rxbx0")},m(s,o){C(s,e,o),a(e,t)},p(s,o){o&4&&Q(t,s[2]),o&8&&l!==(l=kr(s[3]==="warning"?"sync-message sync-message-warning":"sync-message")+" svelte-1rxbx0")&&r(e,"class",l)},d(s){s&&S(e)}}}function jv(n){let e;function t(o,i){var c;return(c=o[0])!=null&&c.configured?Fv:Bv}let l=t(n),s=l(n);return{c(){e=f("div"),s.c(),r(e,"class","sync-status-widget svelte-1rxbx0")},m(o,i){C(o,e,i),s.m(e,null)},p(o,[i]){l===(l=t(o))&&s?s.p(o,i):(s.d(1),s=l(o),s&&(s.c(),s.m(e,null)))},i:se,o:se,d(o){o&&S(e),s.d()}}}function Uv(n,e,t){let{syncStatus:l=null}=e,{syncLoading:s=!1}=e,{syncMessage:o=""}=e,{syncMessageKind:i=""}=e,{onSync:c=null}=e,{onOpenSettings:u=null}=e;function d(g){return!g||!g.configured?"dot-disabled":s?"dot-syncing":g.revoked?"dot-disabled":g.connected?"dot-connected":g.configured?"dot-warning":"dot-disabled"}function m(g){return!g||!g.configured?v("sync.status.disabled"):s?v("sync.status.syncing"):g.revoked?v("sync.status.error"):g.connected?v("sync.status.connected"):v("sync.status.disconnected")}return n.$$set=g=>{"syncStatus"in g&&t(0,l=g.syncStatus),"syncLoading"in g&&t(1,s=g.syncLoading),"syncMessage"in g&&t(2,o=g.syncMessage),"syncMessageKind"in g&&t(3,i=g.syncMessageKind),"onSync"in g&&t(4,c=g.onSync),"onOpenSettings"in g&&t(5,u=g.onOpenSettings)},[l,s,o,i,c,u,d,m]}class Hv extends pt{constructor(e){super(),dt(this,e,Uv,jv,ft,{syncStatus:0,syncLoading:1,syncMessage:2,syncMessageKind:3,onSync:4,onOpenSettings:5})}}function _a(n,e,t){const l=n.slice();return l[10]=e[t],l}function Wv(n){let e,t=ve(n[0]),l=[];for(let s=0;s0&&ba(n),R=n[10].ts_start&&va(n),L=n[10].status!=="pending"&&ka(n),B=n[10].selected_text&&ya(n),z=n[10].status==="pending"&&wa(n);return{c(){e=f("div"),t=f("div"),s=j(l),o=y(),i=f("div"),c=f("div"),d=j(u),m=y(),g=f("div"),_=j(h),k=y(),E=f("div"),M&&M.c(),w=y(),R&&R.c(),T=y(),L&&L.c(),N=y(),B&&B.c(),A=y(),z&&z.c(),I=y(),r(t,"class","event-icon svelte-slao4o"),r(c,"class","event-domain svelte-slao4o"),r(g,"class","event-title svelte-slao4o"),r(g,"title",b=n[10].title),r(E,"class","event-meta svelte-slao4o"),r(i,"class","event-body svelte-slao4o"),r(e,"class","event-item svelte-slao4o"),ce(e,"pending",n[10].status==="pending")},m(U,W){C(U,e,W),a(e,t),a(t,s),a(e,o),a(e,i),a(i,c),a(c,d),a(i,m),a(i,g),a(g,_),a(i,k),a(i,E),M&&M.m(E,null),a(E,w),R&&R.m(E,null),a(E,T),L&&L.m(E,null),a(i,N),B&&B.m(i,null),a(e,A),z&&z.m(e,null),a(e,I)},p(U,W){W&1&&l!==(l=Ta(U[10].type)+"")&&Q(s,l),W&1&&u!==(u=(U[10].domain||"?")+"")&&Q(d,u),W&1&&h!==(h=Hs(U[10].title||U[10].url,80)+"")&&Q(_,h),W&1&&b!==(b=U[10].title)&&r(g,"title",b),U[10].active_seconds>0?M?M.p(U,W):(M=ba(U),M.c(),M.m(E,w)):M&&(M.d(1),M=null),U[10].ts_start?R?R.p(U,W):(R=va(U),R.c(),R.m(E,T)):R&&(R.d(1),R=null),U[10].status!=="pending"?L?L.p(U,W):(L=ka(U),L.c(),L.m(E,null)):L&&(L.d(1),L=null),U[10].selected_text?B?B.p(U,W):(B=ya(U),B.c(),B.m(i,null)):B&&(B.d(1),B=null),U[10].status==="pending"?z?z.p(U,W):(z=wa(U),z.c(),z.m(e,I)):z&&(z.d(1),z=null),W&1&&ce(e,"pending",U[10].status==="pending")},d(U){U&&S(e),M&&M.d(),R&&R.d(),L&&L.d(),B&&B.d(),z&&z.d()}}}function Kv(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 Vv(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 qv(n){let e,t,l,s,o,i=n[1]?"⏳":"🔄",c,u,d,m;function g(b,k){return b[0].length===0?Gv:Wv}let h=g(n),_=h(n);return{c(){e=f("div"),t=f("div"),l=f("h3"),l.textContent=`${v("browserEvents","События браузера")}`,s=y(),o=f("button"),c=j(i),u=y(),_.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,k){C(b,e,k),a(e,t),a(t,l),a(t,s),a(t,o),a(o,c),a(e,u),_.m(e,null),d||(m=O(o,"click",function(){On(n[5])&&n[5].apply(this,arguments)}),d=!0)},p(b,[k]){n=b,k&2&&i!==(i=n[1]?"⏳":"🔄")&&Q(c,i),k&2&&(o.disabled=n[1]),h===(h=g(n))&&_?_.p(n,k):(_.d(1),_=h(n),_&&(_.c(),_.m(e,null)))},i:se,o:se,d(b){b&&S(e),_.d(),d=!1,m()}}}function Ta(n){return n==="page_visit"?"🌐":n==="note_capture"?"📝":n==="screenshot"?"📸":"•"}function Hs(n,e){return n?n.length>e?n.substring(0,e)+"...":n:""}function Zv(n,e,t){let{events:l=[]}=e,{loading:s=!1}=e,{onAccept:o=_=>{}}=e,{onDismiss:i=_=>{}}=e,{onAttach:c=_=>{}}=e,{onRefresh:u=()=>{}}=e,{formatTime:d=_=>""}=e;const m=_=>o(_),g=_=>c(_),h=_=>i(_);return n.$$set=_=>{"events"in _&&t(0,l=_.events),"loading"in _&&t(1,s=_.loading),"onAccept"in _&&t(2,o=_.onAccept),"onDismiss"in _&&t(3,i=_.onDismiss),"onAttach"in _&&t(4,c=_.onAttach),"onRefresh"in _&&t(5,u=_.onRefresh),"formatTime"in _&&t(6,d=_.formatTime)},[l,s,o,i,c,u,d,m,g,h]}class Yv extends pt{constructor(e){super(),dt(this,e,Zv,qv,ft,{events:0,loading:1,onAccept:2,onDismiss:3,onAttach:4,onRefresh:5,formatTime:6})}}function Sa(n,e,t){const l=n.slice();return l[69]=e[t],l}function Ca(n,e,t){const l=n.slice();return l[69]=e[t],l}function Aa(n,e,t){const l=n.slice();return l[64]=e[t],l[65]=e,l[66]=t,l}function Na(n,e,t){const l=n.slice();return l[61]=e[t],l}function Ra(n,e,t){const l=n.slice();return l[61]=e[t],l}function Ia(n){let e,t;return{c(){e=f("span"),t=j(n[4]),r(e,"class","tab-badge svelte-ii7vwz")},m(l,s){C(l,e,s),a(e,t)},p(l,s){s[0]&16&&Q(t,l[4])},d(l){l&&S(e)}}}function Ma(n){let e,t=n[3].length+"",l;return{c(){e=f("span"),l=j(t),r(e,"class","tab-badge svelte-ii7vwz")},m(s,o){C(s,e,o),a(e,l)},p(s,o){o[0]&8&&t!==(t=s[3].length+"")&&Q(l,t)},d(s){s&&S(e)}}}function La(n){let e,t=n[15].length+"",l;return{c(){e=f("span"),l=j(t),r(e,"class","tab-badge svelte-ii7vwz")},m(s,o){C(s,e,o),a(e,l)},p(s,o){o[0]&32768&&t!==(t=s[15].length+"")&&Q(l,t)},d(s){s&&S(e)}}}function Xv(n){let e,t,l;return t=new Yv({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(s,o){C(s,e,o),Ye(t,e,null),l=!0},p(s,o){const i={};o[0]&32768&&(i.events=s[15]),o[0]&65536&&(i.loading=s[16]),o[0]&32&&(i.formatTime=s[5]),o[0]&131072&&(i.onAccept=s[17]),o[0]&262144&&(i.onDismiss=s[18]),o[0]&524288&&(i.onAttach=s[19]),o[0]&1048576&&(i.onRefresh=s[20]),t.$set(i)},i(s){l||(he(t.$$.fragment,s),l=!0)},o(s){ye(t.$$.fragment,s),l=!1},d(s){s&&S(e),Xe(t)}}}function Jv(n){let e,t,l,s,o,i,c,u,d,m,g=n[25]==="asc"?"↑":"↓",h,_,b,k;function E(N,A){return N[3].length===0?tk:ek}let w=E(n),T=w(n);return{c(){e=f("div"),t=f("div"),l=f("div"),s=f("button"),s.textContent=`${v("today.sortByTime")}`,o=y(),i=f("button"),i.textContent=`${v("today.sortByName")}`,c=y(),u=f("button"),u.textContent=`${v("today.sortByType")}`,d=y(),m=f("span"),h=j(g),_=y(),T.c(),r(s,"class","sort-btn svelte-ii7vwz"),ce(s,"active",n[24]==="time"),r(i,"class","sort-btn svelte-ii7vwz"),ce(i,"active",n[24]==="name"),r(u,"class","sort-btn svelte-ii7vwz"),ce(u,"active",n[24]==="type"),r(m,"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,s),a(l,o),a(l,i),a(l,c),a(l,u),a(l,d),a(l,m),a(m,h),a(e,_),T.m(e,null),b||(k=[O(s,"click",n[56]),O(i,"click",n[57]),O(u,"click",n[58])],b=!0)},p(N,A){A[0]&16777216&&ce(s,"active",N[24]==="time"),A[0]&16777216&&ce(i,"active",N[24]==="name"),A[0]&16777216&&ce(u,"active",N[24]==="type"),A[0]&33554432&&g!==(g=N[25]==="asc"?"↑":"↓")&&Q(h,g),w===(w=E(N))&&T?T.p(N,A):(T.d(1),T=w(N),T&&(T.c(),T.m(e,null)))},i:se,o:se,d(N){N&&S(e),T.d(),b=!1,Te(k)}}}function Qv(n){let e,t,l,s,o,i,c,u,d,m,g=n[23]==="asc"?"↑":"↓",h,_,b,k;function E(N,A){return N[2].length===0?lk:nk}let w=E(n),T=w(n);return{c(){e=f("div"),t=f("div"),l=f("div"),s=f("button"),s.textContent=`${v("today.sortByTime")}`,o=y(),i=f("button"),i.textContent=`${v("today.sortByName")}`,c=y(),u=f("button"),u.textContent=`${v("today.sortByType")}`,d=y(),m=f("span"),h=j(g),_=y(),T.c(),r(s,"class","sort-btn svelte-ii7vwz"),ce(s,"active",n[22]==="time"),r(i,"class","sort-btn svelte-ii7vwz"),ce(i,"active",n[22]==="name"),r(u,"class","sort-btn svelte-ii7vwz"),ce(u,"active",n[22]==="type"),r(m,"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,s),a(l,o),a(l,i),a(l,c),a(l,u),a(l,d),a(l,m),a(m,h),a(e,_),T.m(e,null),b||(k=[O(s,"click",n[51]),O(i,"click",n[52]),O(u,"click",n[53])],b=!0)},p(N,A){A[0]&4194304&&ce(s,"active",N[22]==="time"),A[0]&4194304&&ce(i,"active",N[22]==="name"),A[0]&4194304&&ce(u,"active",N[22]==="type"),A[0]&8388608&&g!==(g=N[23]==="asc"?"↑":"↓")&&Q(h,g),w===(w=E(N))&&T?T.p(N,A):(T.d(1),T=w(N),T&&(T.c(),T.m(e,null)))},i:se,o:se,d(N){N&&S(e),T.d(),b=!1,Te(k)}}}function xv(n){let e;function t(o,i){return o[0].length===0?ik:sk}let l=t(n),s=l(n);return{c(){e=f("div"),s.c(),r(e,"class","today-tab-content svelte-ii7vwz")},m(o,i){C(o,e,i),s.m(e,null)},p(o,i){l===(l=t(o))&&s?s.p(o,i):(s.d(1),s=l(o),s&&(s.c(),s.m(e,null)))},i:se,o:se,d(o){o&&S(e),s.d()}}}function $v(n){let e;function t(o,i){return!o[1]||!o[1].events||o[1].events.length===0?rk:ok}let l=t(n),s=l(n);return{c(){e=f("div"),s.c(),r(e,"class","today-tab-content svelte-ii7vwz")},m(o,i){C(o,e,i),s.m(e,null)},p(o,i){l===(l=t(o))&&s?s.p(o,i):(s.d(1),s=l(o),s&&(s.c(),s.m(e,null)))},i:se,o:se,d(o){o&&S(e),s.d()}}}function ek(n){let e,t=ve(Va(n[3],n[24],n[25])),l=[];for(let s=0;s0&&za(n);function te(...ee){return n[43](n[64],n[65],n[66],...ee)}function ne(){return n[44](n[64])}function de(){return n[45](n[64])}function Ae(){return n[46](n[64])}function Pe(){return n[47](n[64],n[65],n[66])}function qe(...ee){return n[48](n[64],n[65],n[66],...ee)}let Ne=n[64]._expanded&&n[64].events&&n[64].events.length>0&&Ba(n);return{c(){e=f("div"),t=f("div"),l=f("div"),s=f("button"),i=j(o),c=y(),u=f("span"),m=j(d),g=y(),h=f("span"),b=j(_),k=y(),w=j(E),$&&$.c(),T=y(),N=f("div"),A=f("span"),R=y(),L=f("input"),z=y(),U=f("span"),U.textContent=`${v("suggest.minutes")}`,W=y(),K=f("button"),K.textContent=`${v("suggest.edit")}`,V=y(),Y=f("button"),Y.textContent=`${v("suggest.apply")}`,G=y(),D=f("button"),D.textContent=`${v("common.delete")}`,H=y(),Ne&&Ne.c(),F=y(),r(s,"class","suggestion-node link-btn svelte-ii7vwz"),r(u,"class","suggestion-summary svelte-ii7vwz"),r(h,"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",M=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(L,"type","number"),r(L,"class","suggestion-min-input svelte-ii7vwz"),L.value=B=n[64].suggestedMin,r(L,"min","1"),r(L,"max","480"),r(U,"class","suggestion-min-label svelte-ii7vwz"),r(K,"class","btn btn-sm svelte-ii7vwz"),r(Y,"class","btn btn-sm btn-primary svelte-ii7vwz"),r(D,"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(ee,re){C(ee,e,re),a(e,t),a(t,l),a(l,s),a(s,i),a(l,c),a(l,u),a(u,m),a(l,g),a(l,h),a(h,b),a(h,k),a(h,w),$&&$.m(h,null),a(t,T),a(t,N),a(N,A),a(N,R),a(N,L),a(N,z),a(N,U),a(N,W),a(N,K),a(N,V),a(N,Y),a(N,G),a(N,D),a(e,H),Ne&&Ne.m(e,null),a(e,F),J||(Z=[O(s,"click",He(X)),O(L,"change",He(te)),O(K,"click",He(ne)),O(Y,"click",He(de)),O(D,"click",He(Ae)),O(t,"click",Pe),O(t,"keydown",qe)],J=!0)},p(ee,re){n=ee,re[0]&1&&o!==(o=n[64].nodeTitle+"")&&Q(i,o),re[0]&1&&d!==(d=n[64].summary+"")&&Q(m,d),re[0]&1&&_!==(_=n[64].suggestedMin+"")&&Q(b,_),n[64].events&&n[64].events.length>0?$?$.p(n,re):($=za(n),$.c(),$.m(h,null)):$&&($.d(1),$=null),re[0]&1&&I!==(I=v("suggest.confidence."+n[64].confidence))&&r(A,"title",I),re[0]&1&&M!==(M=v("suggest.confidence."+n[64].confidence))&&r(A,"aria-label",M),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)&&L.value!==B&&(L.value=B),n[64]._expanded&&n[64].events&&n[64].events.length>0?Ne?Ne.p(n,re):(Ne=Ba(n),Ne.c(),Ne.m(e,F)):Ne&&(Ne.d(1),Ne=null),re[0]&1&&ce(e,"expanded",n[64]._expanded)},d(ee){ee&&S(e),$&&$.d(),Ne&&Ne.d(),J=!1,Te(Z)}}}function ok(n){let e,t=ve(n[1].events),l=[];for(let s=0;s ',V=y(),r(t,"class","feed-icon svelte-ii7vwz"),r(u,"class","feed-type svelte-ii7vwz"),r(h,"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(i,"class","feed-body svelte-ii7vwz"),r(K,"class","feed-nav-btn svelte-ii7vwz"),r(K,"title",v("common.open")),r(e,"class","feed-item svelte-ii7vwz"),r(e,"role","button"),r(e,"tabindex","0")},m(Z,X){C(Z,e,X),a(e,t),a(t,s),a(e,o),a(e,i),a(i,c),a(c,u),a(u,m),a(c,g),a(c,h),a(c,_),a(c,b),a(b,E),a(i,w),a(i,T),D&&D.m(T,null),a(T,A),a(T,I),a(I,R),a(T,L),a(T,B),a(B,U),a(e,W),a(e,K),a(e,V),Y||(G=[O(K,"click",He(H)),O(e,"click",F),O(e,"keydown",J)],Y=!0)},p(Z,X){n=Z,X[0]&2&&l!==(l=Ka(n[61].eventType)+"")&&Q(s,l),X[0]&2&&d!==(d=n[28](n[61])+"")&&Q(m,d),X[0]&2&&k!==(k=(n[61].title||"")+"")&&Q(E,k),X[0]&2&&(N=Ws(n[61])),N?D?D.p(n,X):(D=Wa(n),D.c(),D.m(T,A)):D&&(D.d(1),D=null),X[0]&66&&M!==(M=n[6](n[61].eventType)+"")&&Q(R,M),X[0]&34&&z!==(z=n[5](n[61].createdAt)+"")&&Q(U,z)},d(Z){Z&&S(e),D&&D.d(),Y=!1,Te(G)}}}function ak(n){var J;let e,t,l,s=(((J=n[1])==null?void 0:J.date)||"")+"",o,i,c,u,d,m,g=v("today.suggestionsTab")+"",h,_,b,k,E,w,T=v("today.captured")+"",N,A,I,M,R,L,B,z,U,W,K,V=n[4]>0&&Ia(n),Y=n[3].length>0&&Ma(n),G=n[15].length>0&&La(n);const D=[$v,xv,Qv,Jv,Xv],H=[];function F(Z,X){return Z[21]==="feed"?0:Z[21]==="suggestions"?1:Z[21]==="inprogress"?2:Z[21]==="captured"?3:Z[21]==="browser"?4:-1}return~(B=F(n))&&(z=H[B]=D[B](n)),{c(){e=f("div"),t=f("div"),l=f("span"),o=j(s),i=y(),c=f("div"),u=f("button"),u.textContent=`${v("today.feed")}`,d=y(),m=f("button"),h=j(g),_=y(),V&&V.c(),b=y(),k=f("button"),k.textContent=`${v("today.inProgress")}`,E=y(),w=f("button"),N=j(T),A=y(),Y&&Y.c(),I=y(),M=f("button"),R=j(`Браузер
+ `),G&&G.c(),L=y(),z&&z.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(m,"class","today-tab svelte-ii7vwz"),ce(m,"active",n[21]==="suggestions"),r(k,"class","today-tab svelte-ii7vwz"),ce(k,"active",n[21]==="inprogress"),r(w,"class","today-tab svelte-ii7vwz"),ce(w,"active",n[21]==="captured"),r(M,"class","today-tab svelte-ii7vwz"),ce(M,"active",n[21]==="browser"),r(c,"class","today-tabs svelte-ii7vwz"),r(e,"class","today-screen svelte-ii7vwz")},m(Z,X){C(Z,e,X),a(e,t),a(t,l),a(l,o),a(e,i),a(e,c),a(c,u),a(c,d),a(c,m),a(m,h),a(m,_),V&&V.m(m,null),a(c,b),a(c,k),a(c,E),a(c,w),a(w,N),a(w,A),Y&&Y.m(w,null),a(c,I),a(c,M),a(M,R),G&&G.m(M,null),a(e,L),~B&&H[B].m(e,null),U=!0,W||(K=[O(u,"click",n[34]),O(m,"click",n[35]),O(k,"click",n[36]),O(w,"click",n[37]),O(M,"click",n[38])],W=!0)},p(Z,X){var te;(!U||X[0]&2)&&s!==(s=(((te=Z[1])==null?void 0:te.date)||"")+"")&&Q(o,s),(!U||X[0]&2097152)&&ce(u,"active",Z[21]==="feed"),Z[4]>0?V?V.p(Z,X):(V=Ia(Z),V.c(),V.m(m,null)):V&&(V.d(1),V=null),(!U||X[0]&2097152)&&ce(m,"active",Z[21]==="suggestions"),(!U||X[0]&2097152)&&ce(k,"active",Z[21]==="inprogress"),Z[3].length>0?Y?Y.p(Z,X):(Y=Ma(Z),Y.c(),Y.m(w,null)):Y&&(Y.d(1),Y=null),(!U||X[0]&2097152)&&ce(w,"active",Z[21]==="captured"),Z[15].length>0?G?G.p(Z,X):(G=La(Z),G.c(),G.m(M,null)):G&&(G.d(1),G=null),(!U||X[0]&2097152)&&ce(M,"active",Z[21]==="browser");let $=B;B=F(Z),B===$?~B&&H[B].p(Z,X):(z&&(Tt(),ye(H[$],1,1,()=>{H[$]=null}),St()),~B?(z=H[B],z?z.p(Z,X):(z=H[B]=D[B](Z),z.c()),he(z,1),z.m(e,null)):z=null)},i(Z){U||(he(z),U=!0)},o(Z){ye(z),U=!1},d(Z){Z&&S(e),V&&V.d(),Y&&Y.d(),G&&G.d(),~B&&H[B].d(),W=!1,Te(K)}}}function Ka(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 Ws(n){const e=[];return n.nodePath&&e.push(n.nodePath),e.length>0?e.join(" → "):""}function Va(n,e,t){const l=[...n];return l.sort((s,o)=>{let i=0;if(e==="name")i=(s.title||"").localeCompare(o.title||"");else if(e==="type"){const c=s.captureKind||s.sourceKind||"",u=o.captureKind||o.sourceKind||"";i=c.localeCompare(u)}else i=(s.capturedAt||s.createdAt||"").localeCompare(o.capturedAt||o.createdAt||"");return t==="asc"?i:-i}),l}function qa(n){return{text:"📝",url:"🔗",file:"📄",image:"🖼",folder:"📁"}[n]||"📦"}function ck(n,e,t){let{todayDashboard:l=null}=e,{suggestions:s=[]}=e,{inProgressItems:o=[]}=e,{todayCaptures:i=[]}=e,{suggestionCount:c=0}=e,{formatTime:u=x=>""}=e,{eventLabel:d=x=>x}=e,{eventIcon:m=x=>""}=e,{inboxMetaText:g=x=>""}=e,{onOpenNodeById:h=x=>{}}=e,{onOpenActivityEvent:_=x=>{}}=e,{onOpenActivityTarget:b=x=>{}}=e,{onOpenSuggestionWorklog:k=x=>{}}=e,{onAcceptSuggestion:E=x=>{}}=e,{onDeleteSuggestion:w=x=>{}}=e,{onOpenNodeFolder:T=x=>{}}=e,{onOpenInboxArtifact:N=x=>{}}=e,{onOpenTrashNode:A=x=>{}}=e,{browserEvents:I=[]}=e,{browserLoading:M=!1}=e,{onBrowserAccept:R=x=>{}}=e,{onBrowserDismiss:L=x=>{}}=e,{onBrowserAttach:B=x=>{}}=e,{onBrowserRefresh:z=()=>{}}=e,U="feed";function W(x){E(x)}function K(x){w(x)}function V(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&&h(x.nodeId);return}if(["note_created","note_updated","note_deleted"].includes(x.eventType)){x.targetType==="note"&&x.targetId?b(x):x.nodeId&&h(x.nodeId);return}if(x.eventType==="worklog_added"){x.nodeId&&h(x.nodeId);return}if(["action_created","action_done"].includes(x.eventType)){x.nodeId&&h(x.nodeId);return}(x.id||x.nodeId)&&_(x)}}function G(x,pe,me){const Re=[...x];return Re.sort((ot,Je)=>{let rt=0;return pe==="name"?rt=(ot.title||"").localeCompare(Je.title||""):pe==="type"?rt=(d(ot.eventType)||"").localeCompare(d(Je.eventType)||""):rt=(ot.createdAt||"").localeCompare(Je.createdAt||""),me==="asc"?rt:-rt}),Re}let D="time",H="desc",F="time",J="desc";const Z=()=>t(21,U="feed"),X=()=>t(21,U="suggestions"),$=()=>t(21,U="inprogress"),te=()=>t(21,U="captured"),ne=()=>t(21,U="browser"),de=x=>Y(x),Ae=x=>Y(x),Pe=(x,pe)=>pe.key==="Enter"&&Y(x),qe=x=>h(x.nodeId),Ne=(x,pe,me,Re)=>t(0,pe[me].suggestedMin=parseInt(Re.target.value),s),ee=x=>k(x),re=x=>W(x),Se=x=>K(x),ze=(x,pe,me)=>t(0,pe[me]._expanded=!x._expanded,s),ge=(x,pe,me,Re)=>Re.key==="Enter"&&t(0,pe[me]._expanded=!x._expanded,s),We=x=>b(x),mt=x=>T(x.nodeId),be=()=>{t(22,D="time"),t(23,H=D==="time"&&H==="desc"?"asc":"desc")},it=()=>{t(22,D="name"),t(23,H=D==="name"&&H==="desc"?"asc":"desc")},Oe=()=>{t(22,D="type"),t(23,H=D==="type"&&H==="desc"?"asc":"desc")},Ce=x=>_(x),Fe=(x,pe)=>pe.key==="Enter"&&_(x),je=()=>{t(24,F="time"),t(25,J=F==="time"&&J==="desc"?"asc":"desc")},De=()=>{t(24,F="name"),t(25,J=F==="name"&&J==="desc"?"asc":"desc")},Be=()=>{t(24,F="type"),t(25,J=F==="type"&&J==="desc"?"asc":"desc")},ue=x=>N(x),we=(x,pe)=>pe.key==="Enter"&&N(x);return n.$$set=x=>{"todayDashboard"in x&&t(1,l=x.todayDashboard),"suggestions"in x&&t(0,s=x.suggestions),"inProgressItems"in x&&t(2,o=x.inProgressItems),"todayCaptures"in x&&t(3,i=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,m=x.eventIcon),"inboxMetaText"in x&&t(8,g=x.inboxMetaText),"onOpenNodeById"in x&&t(9,h=x.onOpenNodeById),"onOpenActivityEvent"in x&&t(10,_=x.onOpenActivityEvent),"onOpenActivityTarget"in x&&t(11,b=x.onOpenActivityTarget),"onOpenSuggestionWorklog"in x&&t(12,k=x.onOpenSuggestionWorklog),"onAcceptSuggestion"in x&&t(31,E=x.onAcceptSuggestion),"onDeleteSuggestion"in x&&t(32,w=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,M=x.browserLoading),"onBrowserAccept"in x&&t(17,R=x.onBrowserAccept),"onBrowserDismiss"in x&&t(18,L=x.onBrowserDismiss),"onBrowserAttach"in x&&t(19,B=x.onBrowserAttach),"onBrowserRefresh"in x&&t(20,z=x.onBrowserRefresh)},[s,l,o,i,c,u,d,m,g,h,_,b,k,T,N,I,M,R,L,B,z,U,D,H,F,J,W,K,V,Y,G,E,w,A,Z,X,$,te,ne,de,Ae,Pe,qe,Ne,ee,re,Se,ze,ge,We,mt,be,it,Oe,Ce,Fe,je,De,Be,ue,we]}class uk extends pt{constructor(e){super(),dt(this,e,ck,ak,ft,{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 fk(n){let e,t,l,s,o=n[3]&&Za(n);return{c(){e=f("div"),o&&o.c(),t=y(),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",s=n[0]+" panel"),r(e,"class","plugin-frame-container svelte-xgfxht")},m(i,c){C(i,e,c),o&&o.m(e,null),a(e,t),a(e,l),n[9](l)},p(i,c){i[3]?o?o.p(i,c):(o=Za(i),o.c(),o.m(e,t)):o&&(o.d(1),o=null),c&2&&r(l,"srcdoc",i[1]),c&1&&s!==(s=i[0]+" panel")&&r(l,"title",s)},d(i){i&&S(e),o&&o.d(),n[9](null)}}}function dk(n){let e,t,l,s,o,i,c;return{c(){e=f("div"),t=f("p"),l=j("Плагин «"),s=j(n[0]),o=j("» активен, но HTML-панель не настроена."),i=y(),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,s),a(t,o),a(e,i),a(e,c)},p(u,d){d&1&&Q(s,u[0])},d(u){u&&S(e)}}}function pk(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 Za(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(s,o){C(s,e,o),a(e,t),a(e,l)},p(s,o){o&8&&Q(l,s[3])},d(s){s&&S(e)}}}function mk(n){let e;function t(o,i){return o[2]?pk:o[1]?fk:dk}let l=t(n),s=l(n);return{c(){e=f("div"),s.c(),r(e,"class","plugin-page svelte-xgfxht")},m(o,i){C(o,e,i),s.m(e,null)},p(o,[i]){l===(l=t(o))&&s?s.p(o,i):(s.d(1),s=l(o),s&&(s.c(),s.m(e,null)))},i:se,o:se,d(o){o&&S(e),s.d()}}}function fl(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 gk(n,e,t){let l,s,o,i,{sectionId:c=""}=e,u="",d=!0,m="",g=null,h=[],_=!1;function b(R){console.log("[CalendarPluginPage] postToIframe: iframeReady="+_+", hasEl="+!!g+", hasCW="+!!(g!=null&&g.contentWindow)),g&&g.contentWindow&&_?(console.log("[CalendarPluginPage] postToIframe: sending msg.type="+R.type),g.contentWindow.postMessage(R,"*")):(console.log("[CalendarPluginPage] postToIframe: queuing msg.type="+R.type),h.push(R))}function k(R){if(!g||!g.contentWindow||R.source!==g.contentWindow)return;const L=R.data;if(!(!L||typeof L!="object")&&!(!L.source||typeof L.source!="string")&&!(!L.action||typeof L.action!="string"))switch(L.action){case"ready":for(_=!0;h.length>0;)g.contentWindow.postMessage(h.shift(),"*");E();break;case"get-events":w(L.data);break;case"create-event":T(L.data);break;case"update-event":N(L.data);break;case"delete-event":A(L.data);break;default:console.log("[CalendarPluginPage] Unknown iframe action:",L.action)}}async function E(){try{console.log("[CalendarPluginPage] loadCalendarData: step 1");const R=new Date,L=R.getFullYear(),B=R.getMonth(),z=new Date(L,B,1).toISOString().slice(0,10)+"T00:00:00",U=new Date(L,B+1,0).toISOString().slice(0,10)+"T23:59:59";console.log("[CalendarPluginPage] loadCalendarData: step 2, start="+z+", end="+U),console.log("[CalendarPluginPage] loadCalendarData: step 3, calling get_events...");const W=fl("CallPluginFunction",s,i+"get_events",JSON.stringify({start:z,end:U}));console.log("[CalendarPluginPage] loadCalendarData: step 4, calling get_categories...");const K=fl("CallPluginFunction",s,i+"get_categories","{}");console.log("[CalendarPluginPage] loadCalendarData: step 5, awaiting Promise.all...");const[V,Y]=await Promise.all([W,K]);console.log("[CalendarPluginPage] loadCalendarData: step 6, got results, eventsRaw="+typeof V+", categoriesRaw="+typeof Y);const G=V?JSON.parse(V):[],D=Y?JSON.parse(Y):[];b({source:"verstak",type:"calendar-data",events:G,categories:D});try{window.go.main.App.WriteDebugLog("[CalendarPluginPage] calendar-data sent to iframe, events.len="+G.length+", categories.len="+((D==null?void 0:D.length)||0)+", typeof events="+typeof G+", typeof eventsRaw="+typeof V+", eventsRaw.length="+V.length+", eventsRaw.substr(0,10)="+String(V).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,m=String(R))}}async function w(R){try{const L=JSON.stringify({start:R.start,end:R.end}),B=await fl("CallPluginFunction",s,i+"get_events",L),z=B?JSON.parse(B):[];b({source:"verstak",type:"calendar-data",events:z})}catch(L){console.error("[CalendarPluginPage] get-events:",L)}}async function T(R){try{const L=JSON.stringify(R),B=await fl("CallPluginFunction",s,i+"create_event",L),z=B?JSON.parse(B):{};b({source:"verstak",type:"event-created",event:z}),E()}catch(L){console.error("[CalendarPluginPage] create-event:",L),b({source:"verstak",type:"error",message:String(L)})}}async function N(R){try{const L=JSON.stringify(R);await fl("CallPluginFunction",s,i+"update_event",L),b({source:"verstak",type:"event-updated",event:R}),E()}catch(L){console.error("[CalendarPluginPage] update-event:",L)}}async function A(R){try{const L=JSON.stringify({id:R.id});await fl("CallPluginFunction",s,i+"delete_event",L),b({source:"verstak",type:"event-deleted",id:R.id}),E()}catch(L){console.error("[CalendarPluginPage] delete-event:",L)}}us(async()=>{try{t(1,u=await fl("GetPluginPanelHTML",s)||"")}catch(R){t(3,m=String(R))}t(2,d=!1),window.addEventListener("message",k)}),fs(()=>{window.removeEventListener("message",k)});function I(R,L){b({source:"verstak",type:"drop",date:L,data:R})}function M(R){Dn[R?"unshift":"push"](()=>{g=R,t(4,g)})}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,s=l[1]||""),n.$$.dirty&256&&t(7,o=l[2]||"main"),n.$$.dirty&128&&o.charAt(0).toUpperCase()+o.slice(1),n.$$.dirty&1&&(i=s?s+".":"")},[s,u,d,m,g,c,I,o,l,M]}class hk extends pt{constructor(e){super(),dt(this,e,gk,mk,ft,{sectionId:5,handleDrop:6})}get handleDrop(){return this.$$.ctx[6]}}function Ya(n,e,t){const l=n.slice();return l[25]=e[t],l[27]=t,l}function Xa(n){let e;function t(o,i){return o[3]?vk:o[1].length===0?bk:_k}let l=t(n),s=l(n);return{c(){e=f("div"),s.c(),r(e,"class","global-search-results svelte-1dlr37h")},m(o,i){C(o,e,i),s.m(e,null)},p(o,i){l===(l=t(o))&&s?s.p(o,i):(s.d(1),s=l(o),s&&(s.c(),s.m(e,null)))},d(o){o&&S(e),s.d()}}}function _k(n){let e,t=ve(n[1]),l=[];for(let s=0;s[]}=e,{typeLabel:s=W=>W||""}=e;const o=Zn();let i="",c=[],u=!1,d=!1,m=0,g,h;function _(W){const K=[],V=s(W.type),Y=yk(W);return V&&K.push(V),Y&&K.push(Y),K.join(" · ")}async function b(){const W=Sd(i);if(W.length<2){t(1,c=[]),t(2,u=!1),t(3,d=!1);return}t(3,d=!0);try{t(1,c=await l("Search",W)||[]),t(4,m=0),t(2,u=!0)}catch{t(1,c=[]),t(2,u=!1)}finally{t(3,d=!1)}}function k(){clearTimeout(h),h=setTimeout(b,180)}function E(){t(2,u=!1),t(4,m=0)}function w(){t(0,i=""),t(1,c=[]),E()}function T(W){W&&(o("open",W),w(),g==null||g.blur())}function N(){k()}function A(W){if(W.key==="Escape"){W.preventDefault(),w(),g==null||g.blur();return}!u||c.length===0||(W.key==="ArrowDown"?(W.preventDefault(),t(4,m=Math.min(c.length-1,m+1))):W.key==="ArrowUp"?(W.preventDefault(),t(4,m=Math.max(0,m-1))):W.key==="Enter"&&(W.preventDefault(),T(c[m])))}async function I(){await f_(),g==null||g.focus(),g==null||g.select()}function M(W){if((W.ctrlKey||W.metaKey)&&W.key.toLowerCase()==="k"){W.preventDefault(),I();return}W.key==="/"&&!wk(W.target)&&(W.preventDefault(),I())}us(()=>{window.addEventListener("keydown",M)}),fs(()=>{window.removeEventListener("keydown",M),clearTimeout(h)});function R(W){Dn[W?"unshift":"push"](()=>{g=W,t(5,g)})}function L(){i=this.value,t(0,i)}const B=()=>{c.length>0&&t(2,u=!0)},z=()=>setTimeout(E,160),U=W=>T(W);return n.$$set=W=>{"wailsCall"in W&&t(11,l=W.wailsCall),"typeLabel"in W&&t(12,s=W.typeLabel)},[i,c,u,d,m,g,_,E,T,N,A,l,s,R,L,B,z,U]}class Tk extends pt{constructor(e){super(),dt(this,e,Ek,kk,ft,{wailsCall:11,typeLabel:12})}}const Sk=n=>({}),$a=n=>({});function ec(n){let e,t;return{c(){e=f("span"),t=j(n[1]),r(e,"class","header-subtitle svelte-7x8q9h")},m(l,s){C(l,e,s),a(e,t)},p(l,s){s&2&&Q(t,l[1])},d(l){l&&S(e)}}}function Ck(n){let e,t,l,s=(n[0]||"")+"",o,i,c,u,d,m,g,h=n[1]&&ec(n);d=new Tk({props:{wailsCall:n[2],typeLabel:n[3]}}),d.$on("open",n[7]);const _=n[6].actions,b=i_(_,n,n[5],$a);return{c(){e=f("header"),t=f("div"),l=f("span"),o=j(s),i=y(),h&&h.c(),c=y(),u=f("div"),Qe(d.$$.fragment),m=y(),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,E){C(k,e,E),a(e,t),a(t,l),a(l,o),a(t,i),h&&h.m(t,null),a(e,c),a(e,u),Ye(d,u,null),a(u,m),b&&b.m(u,null),g=!0},p(k,[E]){(!g||E&1)&&s!==(s=(k[0]||"")+"")&&Q(o,s),(!g||E&1)&&ce(l,"placeholder",!k[0]),k[1]?h?h.p(k,E):(h=ec(k),h.c(),h.m(t,null)):h&&(h.d(1),h=null);const w={};E&4&&(w.wailsCall=k[2]),E&8&&(w.typeLabel=k[3]),d.$set(w),b&&b.p&&(!g||E&32)&&r_(b,_,k,k[5],g?o_(_,k[5],E,Sk):a_(k[5]),$a)},i(k){g||(he(d.$$.fragment,k),he(b,k),g=!0)},o(k){ye(d.$$.fragment,k),ye(b,k),g=!1},d(k){k&&S(e),h&&h.d(),Xe(d),b&&b.d(k)}}}function Ak(n,e,t){let{$$slots:l={},$$scope:s}=e,{title:o=""}=e,{subtitle:i=""}=e,{wailsCall:c=async()=>[]}=e,{typeLabel:u=g=>g||""}=e,{onOpenSearchResult:d=()=>{}}=e;const m=g=>d(g.detail);return n.$$set=g=>{"title"in g&&t(0,o=g.title),"subtitle"in g&&t(1,i=g.subtitle),"wailsCall"in g&&t(2,c=g.wailsCall),"typeLabel"in g&&t(3,u=g.typeLabel),"onOpenSearchResult"in g&&t(4,d=g.onOpenSearchResult),"$$scope"in g&&t(5,s=g.$$scope)},[o,i,c,u,d,s,l,m]}class Nk extends pt{constructor(e){super(),dt(this,e,Ak,Ck,ft,{title:0,subtitle:1,wailsCall:2,typeLabel:3,onOpenSearchResult:4})}}const Rk={open:' ',showInExplorer:' ',delete:' ',restore:' ',purge:' ',move:' ',attach:' ',back:' ',emptyTrash:' ',folder:' '};function Ct(n,e=16){return`${Rk[n]||""} `}function Ik(n){let e,t,l,s,o,i,c,u,d,m,g,h,_,b,k,E,w,T,N,A,I,M,R,L,B,z,U,W,K,V,Y,G,D,H,F,J,Z,X;return{c(){e=f("div"),t=f("div"),l=f("div"),s=f("button"),s.innerHTML='B ',o=y(),i=f("button"),i.innerHTML='I ',c=y(),u=f("button"),u.innerHTML='H ',d=y(),m=f("div"),g=y(),h=f("div"),_=f("button"),_.innerHTML=' ',b=y(),k=f("button"),k.innerHTML=' ',E=y(),w=f("button"),T=f("span"),T.textContent=">",N=y(),A=f("div"),I=y(),M=f("div"),R=f("button"),R.innerHTML=' ',L=y(),B=f("button"),B.innerHTML='1. ',z=y(),U=f("button"),U.innerHTML=' ',W=y(),K=f("button"),K.innerHTML='" ',V=y(),Y=f("div"),G=y(),D=f("div"),H=f("button"),H.innerHTML=' ',F=y(),J=f("textarea"),r(s,"type","button"),r(s,"class","md-toolbar-btn svelte-1etjgc1"),r(s,"title",v("note.toolbar.bold")),r(s,"aria-label",v("note.toolbar.bold")),r(i,"type","button"),r(i,"class","md-toolbar-btn svelte-1etjgc1"),r(i,"title",v("note.toolbar.italic")),r(i,"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(m,"class","md-toolbar-sep svelte-1etjgc1"),r(_,"type","button"),r(_,"class","md-toolbar-btn svelte-1etjgc1"),r(_,"title",v("note.toolbar.link")),r(_,"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(w,"type","button"),r(w,"class","md-toolbar-btn svelte-1etjgc1"),r(w,"title",v("note.toolbar.codeBlock")),r(w,"aria-label",v("note.toolbar.codeBlock")),r(h,"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",v("note.toolbar.bulletList")),r(R,"aria-label",v("note.toolbar.bulletList")),r(B,"type","button"),r(B,"class","md-toolbar-btn svelte-1etjgc1"),r(B,"title",v("note.toolbar.numberedList")),r(B,"aria-label",v("note.toolbar.numberedList")),r(U,"type","button"),r(U,"class","md-toolbar-btn svelte-1etjgc1"),r(U,"title",v("note.toolbar.checkbox")),r(U,"aria-label",v("note.toolbar.checkbox")),r(K,"type","button"),r(K,"class","md-toolbar-btn svelte-1etjgc1"),r(K,"title",v("note.toolbar.quote")),r(K,"aria-label",v("note.toolbar.quote")),r(M,"class","md-toolbar-group svelte-1etjgc1"),r(Y,"class","md-toolbar-sep svelte-1etjgc1"),r(H,"type","button"),r(H,"class","md-toolbar-btn md-toolbar-btn--internal svelte-1etjgc1"),r(H,"title",v("note.toolbar.internalLink")),r(H,"aria-label",v("note.toolbar.internalLink")),r(D,"class","md-toolbar-group svelte-1etjgc1"),r(t,"class","md-toolbar svelte-1etjgc1"),r(t,"role","toolbar"),r(t,"aria-label","Markdown formatting"),r(J,"class","md-textarea svelte-1etjgc1"),r(J,"placeholder",n[2]),r(J,"spellcheck","true"),r(e,"class","md-editor svelte-1etjgc1"),ce(e,"mode-edit",n[1]==="edit"||n[1]==="split")},m($,te){C($,e,te),a(e,t),a(t,l),a(l,s),a(l,o),a(l,i),a(l,c),a(l,u),a(t,d),a(t,m),a(t,g),a(t,h),a(h,_),a(h,b),a(h,k),a(h,E),a(h,w),a(w,T),a(t,N),a(t,A),a(t,I),a(t,M),a(M,R),a(M,L),a(M,B),a(M,z),a(M,U),a(M,W),a(M,K),a(t,V),a(t,Y),a(t,G),a(t,D),a(D,H),a(e,F),a(e,J),Ie(J,n[0]),n[19](J),Z||(X=[O(s,"click",n[4]),O(i,"click",n[5]),O(u,"click",n[8]),O(_,"click",n[7]),O(k,"click",n[6]),O(w,"click",n[13]),O(R,"click",n[10]),O(B,"click",n[11]),O(U,"click",n[12]),O(K,"click",n[9]),O(H,"click",n[14]),O(J,"input",n[18]),O(J,"input",n[15]),O(J,"keydown",n[16])],Z=!0)},p($,[te]){te&4&&r(J,"placeholder",$[2]),te&1&&Ie(J,$[0]),te&2&&ce(e,"mode-edit",$[1]==="edit"||$[1]==="split")},i:se,o:se,d($){$&&S(e),n[19](null),Z=!1,Te(X)}}}function Mk(n,e,t){let{content:l=""}=e,{viewMode:s="edit"}=e,{placeholder:o=""}=e;const i=Zn();let c;function u(z){const U=c;if(!U)return;const W=U.selectionStart,K=U.selectionEnd,V=l.substring(0,W),Y=l.substring(K),G=V+z+Y;t(0,l=G),i("content-change",{content:G}),requestAnimationFrame(()=>{U.focus(),U.selectionStart=U.selectionEnd=W+z.length})}function d(z,U="",W=""){const K=c;if(!K)return;const V=K.selectionStart,Y=K.selectionEnd,G=l.substring(V,Y),H=z+(G||W)+U,F=l.substring(0,V)+H+l.substring(Y);t(0,l=F),i("content-change",{content:F}),requestAnimationFrame(()=>{K.focus(),G?(K.selectionStart=V+z.length,K.selectionEnd=V+z.length+G.length):(K.selectionStart=V+z.length,K.selectionEnd=V+z.length+W.length)})}function m(z){const U=c;if(!U)return;const W=U.selectionStart,K=U.selectionEnd;let V=W;for(;V>0&&l[V-1]!==`
+`;)V--;let Y=K;for(;YZ.startsWith(z)?Z:z+Z).join(`
-`),J=l.substring(0,q)+F+l.substring(Y);t(0,l=J),i("content-change",{content:J}),requestAnimationFrame(()=>{U.focus(),U.selectionStart=q,U.selectionEnd=q+F.length})}function g(){d("**","**","bold text")}function h(){d("*","*","italic text")}function _(){d("`","`","code")}function b(){i("insert-link")}function k(){m("## ")}function E(){m("> ")}function w(){m("- ")}function T(){const z=c;if(!z)return;let W=z.selectionStart;for(;W>0&&l[W-1]!==`
+`),J=l.substring(0,V)+F+l.substring(Y);t(0,l=J),i("content-change",{content:J}),requestAnimationFrame(()=>{U.focus(),U.selectionStart=V,U.selectionEnd=V+F.length})}function g(){d("**","**","bold text")}function h(){d("*","*","italic text")}function _(){d("`","`","code")}function b(){i("insert-link")}function k(){m("## ")}function E(){m("> ")}function w(){m("- ")}function T(){const z=c;if(!z)return;let W=z.selectionStart;for(;W>0&&l[W-1]!==`
`;)W--;let K=z.selectionEnd;for(;K{const Z=J.trim();return J.replace(/^\s*\d+\.\s*/,""),`${G++}. ${Z||"item"}`}).join(`
-`),F=l.substring(0,W)+H+l.substring(K);t(0,l=F),i("content-change",{content:F}),requestAnimationFrame(()=>{z.focus(),z.selectionStart=W,z.selectionEnd=W+H.length})}function N(){m("- [ ] ")}function A(){const z=c;if(!z)return;const U=z.selectionStart,W=z.selectionEnd,K=l.substring(U,W),q=K?"```\n"+K+"\n```":"```\ncode here\n```",Y=l.substring(0,U)+q+l.substring(W);t(0,l=Y),i("content-change",{content:Y}),requestAnimationFrame(()=>{z.focus(),K?(z.selectionStart=U+4,z.selectionEnd=U+4+K.length):(z.selectionStart=U+4,z.selectionEnd=U+4+9)})}function I(){i("insert-internal-link")}function M(z){t(0,l=z.target.value),i("content-change",{content:l})}function R(z){if((z.ctrlKey||z.metaKey)&&z.key==="s"){z.preventDefault(),i("save");return}if(z.key==="Tab"){z.preventDefault();const U=z.target,W=U.selectionStart,K=U.selectionEnd;if(z.shiftKey){let q=W;for(;q>0&&l[q-1]!==`
-`;)q--;let Y=K;for(;Y{U.focus(),U.selectionStart=q,U.selectionEnd=q+D.length})}else if(W===K){const q=l.substring(0,W)+" "+l.substring(K);t(0,l=q),i("content-change",{content:q}),requestAnimationFrame(()=>{U.focus(),U.selectionStart=U.selectionEnd=W+2})}else{let q=W;for(;q>0&&l[q-1]!==`
-`;)q--;let Y=K;for(;Y{U.focus(),U.selectionStart=q,U.selectionEnd=q+D.length})}}}function L(){l=this.value,t(0,l)}function B(z){Dn[z?"unshift":"push"](()=>{c=z,t(3,c)})}return n.$$set=z=>{"content"in z&&t(0,l=z.content),"viewMode"in z&&t(1,s=z.viewMode),"placeholder"in z&&t(2,o=z.placeholder)},[l,s,o,c,g,h,_,b,k,E,w,T,N,A,I,M,R,u,L,B]}class Cd extends pt{constructor(e){super(),dt(this,e,Nk,Ak,ft,{content:0,viewMode:1,placeholder:2,insertText:17})}get insertText(){return this.$$.ctx[17]}}function Qi(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}var vl=Qi();function Ad(n){vl=n}var pl={exec:()=>null};function Ll(n){let e=[];return t=>{let l=Math.max(0,Math.min(3,t-1)),s=e[l];return s||(s=n(l),e[l]=s),s}}function st(n,e=""){let t=typeof n=="string"?n:n.source,l={replace:(s,o)=>{let i=typeof o=="string"?o:o.source;return i=i.replace(Kt.caret,"$1"),t=t.replace(s,i),l},getRegex:()=>new RegExp(t,e)};return l}var Rk=((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:/^,endAngleBracket:/>$/,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:Ll(n=>new RegExp(`^ {0,${n}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`)),hrRegex:Ll(n=>new RegExp(`^ {0,${n}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`)),fencesBeginRegex:Ll(n=>new RegExp(`^ {0,${n}}(?:\`\`\`|~~~)`)),headingBeginRegex:Ll(n=>new RegExp(`^ {0,${n}}#`)),htmlBeginRegex:Ll(n=>new RegExp(`^ {0,${n}}<(?:[a-z].*>|!--)`,"i")),blockquoteBeginRegex:Ll(n=>new RegExp(`^ {0,${n}}>`))},Ik=/^(?:[ \t]*(?:\n|$))+/,Mk=/^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/,Lk=/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,ds=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,Ok=/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,xi=/ {0,3}(?:[*+-]|\d{1,9}[.)])/,Nd=/^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html|table))+?)\n {0,3}(=+|-+) *(?:\n+|$)/,Rd=st(Nd).replace(/bull/g,xi).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(),Dk=st(Nd).replace(/bull/g,xi).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(),$i=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,Pk=/^[^\n]+/,eo=/(?!\s*\])(?:\\[\s\S]|[^\[\]\\])+/,zk=st(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace("label",eo).replace("title",/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),Bk=st(/^(bull)([ \t][^\n]*?)?(?:\n|$)/).replace(/bull/g,xi).getRegex(),Js="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",to=/|$))/,Fk=st("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:\\1>[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|\\n*|$)|\\n*|$)|?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|(?!script|pre|style|textarea)[a-z][\\w-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$))","i").replace("comment",to).replace("tag",Js).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),Id=st($i).replace("hr",ds).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","?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",Js).getRegex(),jk=st(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph",Id).getRegex(),no={blockquote:jk,code:Mk,def:zk,fences:Lk,heading:Ok,hr:ds,html:Fk,lheading:Rd,list:Bk,newline:Ik,paragraph:Id,table:pl,text:Pk},tc=st("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr",ds).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","?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",Js).getRegex(),Uk={...no,lheading:Dk,table:tc,paragraph:st($i).replace("hr",ds).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("table",tc).replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)])[ \\t]+[^ \\t\\n]").replace("html","?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",Js).getRegex()},Hk={...no,html:st(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?\\1> *(?:\\n{2,}|\\s*$)| \\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace("comment",to).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:/^ *\[([^\]]+)\]: *([^\s>]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:pl,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:st($i).replace("hr",ds).replace("heading",` *#{1,6} *[^
-]`).replace("lheading",Rd).replace("|table","").replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").replace("|tag","").getRegex()},Wk=/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,Gk=/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,Md=/^( {2,}|\\)\n(?!\s*$)/,Kk=/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\`+)[^`]+\k (?!`))*?\]\((?:\\[\s\S]|[^\\\(\)]|\((?:\\[\s\S]|[^\\\(\)])*\))*\)/).replace("precode-",Rk?"(?`+)[^`]+\k(?!`)/).replace("html",/<(?! )[^<>]*?>/).getRegex(),Od=/^(?:\*+(?:((?!\*)punct)|([^\s*]))?)|^_+(?:((?!_)punct)|([^\s_]))?/,Xk=st(Od,"u").replace(/punct/g,Hl).getRegex(),Jk=st(Od,"u").replace(/punct/g,Ld).getRegex(),Dd="^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)punct(\\*+)(?=[\\s]|$)|notPunctSpace(\\*+)(?!\\*)(?=punctSpace|$)|(?!\\*)punctSpace(\\*+)(?=notPunctSpace)|[\\s](\\*+)(?!\\*)(?=punct)|(?!\\*)punct(\\*+)(?!\\*)(?=punct)|notPunctSpace(\\*+)(?=notPunctSpace)",Qk=st(Dd,"gu").replace(/notPunctSpace/g,lo).replace(/punctSpace/g,Qs).replace(/punct/g,Hl).getRegex(),xk=st(Dd,"gu").replace(/notPunctSpace/g,Zk).replace(/punctSpace/g,qk).replace(/punct/g,Ld).getRegex(),$k=st("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)punctSpace(_+)(?=notPunctSpace)|[\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)","gu").replace(/notPunctSpace/g,lo).replace(/punctSpace/g,Qs).replace(/punct/g,Hl).getRegex(),e0=st(/^~~?(?:((?!~)punct)|[^\s~])/,"u").replace(/punct/g,Hl).getRegex(),t0="^[^~]+(?=[^~])|(?!~)punct(~~?)(?=[\\s]|$)|notPunctSpace(~~?)(?!~)(?=punctSpace|$)|(?!~)punctSpace(~~?)(?=notPunctSpace)|[\\s](~~?)(?!~)(?=punct)|(?!~)punct(~~?)(?!~)(?=punct)|notPunctSpace(~~?)(?=notPunctSpace)",n0=st(t0,"gu").replace(/notPunctSpace/g,lo).replace(/punctSpace/g,Qs).replace(/punct/g,Hl).getRegex(),l0=st(/\\(punct)/,"gu").replace(/punct/g,Hl).getRegex(),s0=st(/^<(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(),i0=st(to).replace("(?:-->|$)","-->").getRegex(),o0=st("^comment|^[a-zA-Z][\\w:-]*\\s*>|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^|^").replace("comment",i0).replace("attribute",/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(),Gs=/(?:\[(?:\\[\s\S]|[^\[\]\\])*\]|\\[\s\S]|`+(?!`)[^`]*?`+(?!`)|``+(?=\])|[^\[\]\\`])*?/,r0=st(/^!?\[(label)\]\(\s*(href)(?:(?:[ \t]+(?:\n[ \t]*)?|\n[ \t]*)(title))?\s*\)/).replace("label",Gs).replace("href",/<(?:\\.|[^\n<>\\])+>|[^ \t\n\x00-\x1f]*/).replace("title",/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(),Pd=st(/^!?\[(label)\]\[(ref)\]/).replace("label",Gs).replace("ref",eo).getRegex(),zd=st(/^!?\[(ref)\](?:\[\])?/).replace("ref",eo).getRegex(),a0=st("reflink|nolink(?!\\()","g").replace("reflink",Pd).replace("nolink",zd).getRegex(),nc=/[hH][tT][tT][pP][sS]?|[fF][tT][pP]/,so={_backpedal:pl,anyPunctuation:l0,autolink:s0,blockSkip:Yk,br:Md,code:Gk,del:pl,delLDelim:pl,delRDelim:pl,emStrongLDelim:Xk,emStrongRDelimAst:Qk,emStrongRDelimUnd:$k,escape:Wk,link:r0,nolink:zd,punctuation:Vk,reflink:Pd,reflinkSearch:a0,tag:o0,text:Kk,url:pl},c0={...so,link:st(/^!?\[(label)\]\((.*?)\)/).replace("label",Gs).getRegex(),reflink:st(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",Gs).getRegex()},Gi={...so,emStrongRDelimAst:xk,emStrongLDelim:Jk,delLDelim:e0,delRDelim:n0,url:st(/^((?:protocol):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/).replace("protocol",nc).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:st(/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\":">",'"':""","'":"'"},lc=n=>f0[n];function En(n,e){if(e){if(Kt.escapeTest.test(n))return n.replace(Kt.escapeReplace,lc)}else if(Kt.escapeTestNoEncode.test(n))return n.replace(Kt.escapeReplaceNoEncode,lc);return n}function sc(n){try{n=encodeURI(n).replace(Kt.percentDecode,"%")}catch{return null}return n}function ic(n,e){var o;let t=n.replace(Kt.findPipe,(i,c,u)=>{let d=!1,m=c;for(;--m>=0&&u[m]==="\\";)d=!d;return d?"|":" |"}),l=t.split(Kt.splitPipe),s=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{z.focus(),z.selectionStart=W,z.selectionEnd=W+H.length})}function N(){m("- [ ] ")}function A(){const z=c;if(!z)return;const U=z.selectionStart,W=z.selectionEnd,K=l.substring(U,W),V=K?"```\n"+K+"\n```":"```\ncode here\n```",Y=l.substring(0,U)+V+l.substring(W);t(0,l=Y),i("content-change",{content:Y}),requestAnimationFrame(()=>{z.focus(),K?(z.selectionStart=U+4,z.selectionEnd=U+4+K.length):(z.selectionStart=U+4,z.selectionEnd=U+4+9)})}function I(){i("insert-internal-link")}function M(z){t(0,l=z.target.value),i("content-change",{content:l})}function R(z){if((z.ctrlKey||z.metaKey)&&z.key==="s"){z.preventDefault(),i("save");return}if(z.key==="Tab"){z.preventDefault();const U=z.target,W=U.selectionStart,K=U.selectionEnd;if(z.shiftKey){let V=W;for(;V>0&&l[V-1]!==`
+`;)V--;let Y=K;for(;Y{U.focus(),U.selectionStart=V,U.selectionEnd=V+D.length})}else if(W===K){const V=l.substring(0,W)+" "+l.substring(K);t(0,l=V),i("content-change",{content:V}),requestAnimationFrame(()=>{U.focus(),U.selectionStart=U.selectionEnd=W+2})}else{let V=W;for(;V>0&&l[V-1]!==`
+`;)V--;let Y=K;for(;Y{U.focus(),U.selectionStart=V,U.selectionEnd=V+D.length})}}}function L(){l=this.value,t(0,l)}function B(z){Dn[z?"unshift":"push"](()=>{c=z,t(3,c)})}return n.$$set=z=>{"content"in z&&t(0,l=z.content),"viewMode"in z&&t(1,s=z.viewMode),"placeholder"in z&&t(2,o=z.placeholder)},[l,s,o,c,g,h,_,b,k,E,w,T,N,A,I,M,R,u,L,B]}class Cd extends pt{constructor(e){super(),dt(this,e,Mk,Ik,ft,{content:0,viewMode:1,placeholder:2,insertText:17})}get insertText(){return this.$$.ctx[17]}}function Qi(){return{async:!1,breaks:!1,extensions:null,gfm:!0,hooks:null,pedantic:!1,renderer:null,silent:!1,tokenizer:null,walkTokens:null}}var vl=Qi();function Ad(n){vl=n}var pl={exec:()=>null};function Ll(n){let e=[];return t=>{let l=Math.max(0,Math.min(3,t-1)),s=e[l];return s||(s=n(l),e[l]=s),s}}function st(n,e=""){let t=typeof n=="string"?n:n.source,l={replace:(s,o)=>{let i=typeof o=="string"?o:o.source;return i=i.replace(Kt.caret,"$1"),t=t.replace(s,i),l},getRegex:()=>new RegExp(t,e)};return l}var Lk=((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:/^,endAngleBracket:/>$/,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:Ll(n=>new RegExp(`^ {0,${n}}(?:[*+-]|\\d{1,9}[.)])((?:[ ][^\\n]*)?(?:\\n|$))`)),hrRegex:Ll(n=>new RegExp(`^ {0,${n}}((?:- *){3,}|(?:_ *){3,}|(?:\\* *){3,})(?:\\n+|$)`)),fencesBeginRegex:Ll(n=>new RegExp(`^ {0,${n}}(?:\`\`\`|~~~)`)),headingBeginRegex:Ll(n=>new RegExp(`^ {0,${n}}#`)),htmlBeginRegex:Ll(n=>new RegExp(`^ {0,${n}}<(?:[a-z].*>|!--)`,"i")),blockquoteBeginRegex:Ll(n=>new RegExp(`^ {0,${n}}>`))},Ok=/^(?:[ \t]*(?:\n|$))+/,Dk=/^((?: {4}| {0,3}\t)[^\n]+(?:\n(?:[ \t]*(?:\n|$))*)?)+/,Pk=/^ {0,3}(`{3,}(?=[^`\n]*(?:\n|$))|~{3,})([^\n]*)(?:\n|$)(?:|([\s\S]*?)(?:\n|$))(?: {0,3}\1[~`]* *(?=\n|$)|$)/,ds=/^ {0,3}((?:-[\t ]*){3,}|(?:_[ \t]*){3,}|(?:\*[ \t]*){3,})(?:\n+|$)/,zk=/^ {0,3}(#{1,6})(?=\s|$)(.*)(?:\n+|$)/,xi=/ {0,3}(?:[*+-]|\d{1,9}[.)])/,Nd=/^(?!bull |blockCode|fences|blockquote|heading|html|table)((?:.|\n(?!\s*?\n|bull |blockCode|fences|blockquote|heading|html|table))+?)\n {0,3}(=+|-+) *(?:\n+|$)/,Rd=st(Nd).replace(/bull/g,xi).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=st(Nd).replace(/bull/g,xi).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(),$i=/^([^\n]+(?:\n(?!hr|heading|lheading|blockquote|fences|list|html|table| +\n)[^\n]+)*)/,Fk=/^[^\n]+/,eo=/(?!\s*\])(?:\\[\s\S]|[^\[\]\\])+/,jk=st(/^ {0,3}\[(label)\]: *(?:\n[ \t]*)?([^<\s][^\s]*|<.*?>)(?:(?: +(?:\n[ \t]*)?| *\n[ \t]*)(title))? *(?:\n+|$)/).replace("label",eo).replace("title",/(?:"(?:\\"?|[^"\\])*"|'[^'\n]*(?:\n[^'\n]+)*\n?'|\([^()]*\))/).getRegex(),Uk=st(/^(bull)([ \t][^\n]*?)?(?:\n|$)/).replace(/bull/g,xi).getRegex(),Js="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",to=/|$))/,Hk=st("^ {0,3}(?:<(script|pre|style|textarea)[\\s>][\\s\\S]*?(?:\\1>[^\\n]*\\n+|$)|comment[^\\n]*(\\n+|$)|<\\?[\\s\\S]*?(?:\\?>\\n*|$)|\\n*|$)|\\n*|$)|?(tag)(?: +|\\n|/?>)[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|<(?!script|pre|style|textarea)([a-z][\\w-]*)(?:attribute)*? */?>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$)|(?!script|pre|style|textarea)[a-z][\\w-]*\\s*>(?=[ \\t]*(?:\\n|$))[\\s\\S]*?(?:(?:\\n[ ]*)+\\n|$))","i").replace("comment",to).replace("tag",Js).replace("attribute",/ +[a-zA-Z:_][\w.:-]*(?: *= *"[^"\n]*"| *= *'[^'\n]*'| *= *[^\s"'=<>`]+)?/).getRegex(),Id=st($i).replace("hr",ds).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","?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",Js).getRegex(),Wk=st(/^( {0,3}> ?(paragraph|[^\n]*)(?:\n|$))+/).replace("paragraph",Id).getRegex(),no={blockquote:Wk,code:Dk,def:jk,fences:Pk,heading:zk,hr:ds,html:Hk,lheading:Rd,list:Uk,newline:Ok,paragraph:Id,table:pl,text:Fk},tc=st("^ *([^\\n ].*)\\n {0,3}((?:\\| *)?:?-+:? *(?:\\| *:?-+:? *)*(?:\\| *)?)(?:\\n((?:(?! *\\n|hr|heading|blockquote|code|fences|list|html).*(?:\\n|$))*)\\n*|$)").replace("hr",ds).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","?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",Js).getRegex(),Gk={...no,lheading:Bk,table:tc,paragraph:st($i).replace("hr",ds).replace("heading"," {0,3}#{1,6}(?:\\s|$)").replace("|lheading","").replace("table",tc).replace("blockquote"," {0,3}>").replace("fences"," {0,3}(?:`{3,}(?=[^`\\n]*\\n)|~{3,})[^\\n]*\\n").replace("list"," {0,3}(?:[*+-]|1[.)])[ \\t]+[^ \\t\\n]").replace("html","?(?:tag)(?: +|\\n|/?>)|<(?:script|pre|style|textarea|!--)").replace("tag",Js).getRegex()},Kk={...no,html:st(`^ *(?:comment *(?:\\n|\\s*$)|<(tag)[\\s\\S]+?\\1> *(?:\\n{2,}|\\s*$)| \\s]*)*?/?> *(?:\\n{2,}|\\s*$))`).replace("comment",to).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:/^ *\[([^\]]+)\]: *([^\s>]+)>?(?: +(["(][^\n]+[")]))? *(?:\n+|$)/,heading:/^(#{1,6})(.*)(?:\n+|$)/,fences:pl,lheading:/^(.+?)\n {0,3}(=+|-+) *(?:\n+|$)/,paragraph:st($i).replace("hr",ds).replace("heading",` *#{1,6} *[^
+]`).replace("lheading",Rd).replace("|table","").replace("blockquote"," {0,3}>").replace("|fences","").replace("|list","").replace("|html","").replace("|tag","").getRegex()},Vk=/^\\([!"#$%&'()*+,\-./:;<=>?@\[\]\\^_`{|}~])/,qk=/^(`+)([^`]|[^`][\s\S]*?[^`])\1(?!`)/,Md=/^( {2,}|\\)\n(?!\s*$)/,Zk=/^(`+|[^`])(?:(?= {2,}\n)|[\s\S]*?(?:(?=[\\`+)[^`]+\k (?!`))*?\]\((?:\\[\s\S]|[^\\\(\)]|\((?:\\[\s\S]|[^\\\(\)])*\))*\)/).replace("precode-",Lk?"(?`+)[^`]+\k(?!`)/).replace("html",/<(?! )[^<>]*?>/).getRegex(),Od=/^(?:\*+(?:((?!\*)punct)|([^\s*]))?)|^_+(?:((?!_)punct)|([^\s_]))?/,xk=st(Od,"u").replace(/punct/g,Hl).getRegex(),$k=st(Od,"u").replace(/punct/g,Ld).getRegex(),Dd="^[^_*]*?__[^_*]*?\\*[^_*]*?(?=__)|[^*]+(?=[^*])|(?!\\*)punct(\\*+)(?=[\\s]|$)|notPunctSpace(\\*+)(?!\\*)(?=punctSpace|$)|(?!\\*)punctSpace(\\*+)(?=notPunctSpace)|[\\s](\\*+)(?!\\*)(?=punct)|(?!\\*)punct(\\*+)(?!\\*)(?=punct)|notPunctSpace(\\*+)(?=notPunctSpace)",e0=st(Dd,"gu").replace(/notPunctSpace/g,lo).replace(/punctSpace/g,Qs).replace(/punct/g,Hl).getRegex(),t0=st(Dd,"gu").replace(/notPunctSpace/g,Jk).replace(/punctSpace/g,Xk).replace(/punct/g,Ld).getRegex(),n0=st("^[^_*]*?\\*\\*[^_*]*?_[^_*]*?(?=\\*\\*)|[^_]+(?=[^_])|(?!_)punct(_+)(?=[\\s]|$)|notPunctSpace(_+)(?!_)(?=punctSpace|$)|(?!_)punctSpace(_+)(?=notPunctSpace)|[\\s](_+)(?!_)(?=punct)|(?!_)punct(_+)(?!_)(?=punct)","gu").replace(/notPunctSpace/g,lo).replace(/punctSpace/g,Qs).replace(/punct/g,Hl).getRegex(),l0=st(/^~~?(?:((?!~)punct)|[^\s~])/,"u").replace(/punct/g,Hl).getRegex(),s0="^[^~]+(?=[^~])|(?!~)punct(~~?)(?=[\\s]|$)|notPunctSpace(~~?)(?!~)(?=punctSpace|$)|(?!~)punctSpace(~~?)(?=notPunctSpace)|[\\s](~~?)(?!~)(?=punct)|(?!~)punct(~~?)(?!~)(?=punct)|notPunctSpace(~~?)(?=notPunctSpace)",i0=st(s0,"gu").replace(/notPunctSpace/g,lo).replace(/punctSpace/g,Qs).replace(/punct/g,Hl).getRegex(),o0=st(/\\(punct)/,"gu").replace(/punct/g,Hl).getRegex(),r0=st(/^<(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(),a0=st(to).replace("(?:-->|$)","-->").getRegex(),c0=st("^comment|^[a-zA-Z][\\w:-]*\\s*>|^<[a-zA-Z][\\w-]*(?:attribute)*?\\s*/?>|^<\\?[\\s\\S]*?\\?>|^|^").replace("comment",a0).replace("attribute",/\s+[a-zA-Z:_][\w.:-]*(?:\s*=\s*"[^"]*"|\s*=\s*'[^']*'|\s*=\s*[^\s"'=<>`]+)?/).getRegex(),Gs=/(?:\[(?:\\[\s\S]|[^\[\]\\])*\]|\\[\s\S]|`+(?!`)[^`]*?`+(?!`)|``+(?=\])|[^\[\]\\`])*?/,u0=st(/^!?\[(label)\]\(\s*(href)(?:(?:[ \t]+(?:\n[ \t]*)?|\n[ \t]*)(title))?\s*\)/).replace("label",Gs).replace("href",/<(?:\\.|[^\n<>\\])+>|[^ \t\n\x00-\x1f]*/).replace("title",/"(?:\\"?|[^"\\])*"|'(?:\\'?|[^'\\])*'|\((?:\\\)?|[^)\\])*\)/).getRegex(),Pd=st(/^!?\[(label)\]\[(ref)\]/).replace("label",Gs).replace("ref",eo).getRegex(),zd=st(/^!?\[(ref)\](?:\[\])?/).replace("ref",eo).getRegex(),f0=st("reflink|nolink(?!\\()","g").replace("reflink",Pd).replace("nolink",zd).getRegex(),nc=/[hH][tT][tT][pP][sS]?|[fF][tT][pP]/,so={_backpedal:pl,anyPunctuation:o0,autolink:r0,blockSkip:Qk,br:Md,code:qk,del:pl,delLDelim:pl,delRDelim:pl,emStrongLDelim:xk,emStrongRDelimAst:e0,emStrongRDelimUnd:n0,escape:Vk,link:u0,nolink:zd,punctuation:Yk,reflink:Pd,reflinkSearch:f0,tag:c0,text:Zk,url:pl},d0={...so,link:st(/^!?\[(label)\]\((.*?)\)/).replace("label",Gs).getRegex(),reflink:st(/^!?\[(label)\]\s*\[([^\]]*)\]/).replace("label",Gs).getRegex()},Gi={...so,emStrongRDelimAst:t0,emStrongLDelim:$k,delLDelim:l0,delRDelim:i0,url:st(/^((?:protocol):\/\/|www\.)(?:[a-zA-Z0-9\-]+\.?)+[^\s<]*|^email/).replace("protocol",nc).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:st(/^([`~]+|[^`~])(?:(?= {2,}\n)|(?=[a-zA-Z0-9.!#$%&'*+\/=?_`{\|}~-]+@)|[\s\S]*?(?:(?=[\\":">",'"':""","'":"'"},lc=n=>m0[n];function En(n,e){if(e){if(Kt.escapeTest.test(n))return n.replace(Kt.escapeReplace,lc)}else if(Kt.escapeTestNoEncode.test(n))return n.replace(Kt.escapeReplaceNoEncode,lc);return n}function sc(n){try{n=encodeURI(n).replace(Kt.percentDecode,"%")}catch{return null}return n}function ic(n,e){var o;let t=n.replace(Kt.findPipe,(i,c,u)=>{let d=!1,m=c;for(;--m>=0&&u[m]==="\\";)d=!d;return d?"|":" |"}),l=t.split(Kt.splitPipe),s=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&&Kt.blankLine.test(e[t]);)t--;return e.length-t<=2?n:e.slice(0,t+1).join(`
-`)}function d0(n,e){if(n.indexOf(e[1])===-1)return-1;let t=0;for(let l=0;l0?-2:-1}function p0(n,e=0){let t=e,l="";for(let s of n)if(s===" "){let o=4-t%4;l+=" ".repeat(o),t+=o}else l+=s,t++;return l}function rc(n,e,t,l,s){let o=e.href,i=e.title||null,c=n[1].replace(s.other.outputLinkReplace,"$1");l.state.inLink=!0;let u={type:n[0].charAt(0)==="!"?"image":"link",raw:t,href:o,title:i,text:c,tokens:l.inlineTokens(c)};return l.state.inLink=!1,u}function m0(n,e,t){let l=n.match(t.other.indentCodeCompensation);if(l===null)return e;let s=l[1];return e.split(`
+`)}function g0(n,e){if(n.indexOf(e[1])===-1)return-1;let t=0;for(let l=0;l0?-2:-1}function h0(n,e=0){let t=e,l="";for(let s of n)if(s===" "){let o=4-t%4;l+=" ".repeat(o),t+=o}else l+=s,t++;return l}function rc(n,e,t,l,s){let o=e.href,i=e.title||null,c=n[1].replace(s.other.outputLinkReplace,"$1");l.state.inLink=!0;let u={type:n[0].charAt(0)==="!"?"image":"link",raw:t,href:o,title:i,text:c,tokens:l.inlineTokens(c)};return l.state.inLink=!1,u}function _0(n,e,t){let l=n.match(t.other.indentCodeCompensation);if(l===null)return e;let s=l[1];return e.split(`
`).map(o=>{let i=o.match(t.other.beginningSpace);if(i===null)return o;let[c]=i;return c.length>=s.length?o.slice(s.length):o}).join(`
-`)}var Ks=class{constructor(n){et(this,"options");et(this,"rules");et(this,"lexer");this.options=n||vl}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]:oc(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=m0(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],`
+`)}var Ks=class{constructor(n){et(this,"options");et(this,"rules");et(this,"lexer");this.options=n||vl}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]:oc(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=_0(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(`
@@ -30,7 +30,7 @@ ${m}`:m;let g=this.lexer.state.top;if(this.lexer.state.top=!0,this.lexer.blockTo
`),k=this.blockquote(b);o[o.length-1]=k,l=l.substring(0,l.length-_.raw.length)+k.raw,s=s.substring(0,s.length-_.text.length)+k.text;break}else if((h==null?void 0:h.type)==="list"){let _=h,b=_.raw+`
`+t.join(`
`),k=this.list(b);o[o.length-1]=k,l=l.substring(0,l.length-h.raw.length)+k.raw,s=s.substring(0,s.length-_.raw.length)+k.raw,t=b.substring(o.at(-1).raw.length).split(`
-`);continue}}return{type:"blockquote",raw:l,tokens:o,text:s}}}list(n){let e=this.rules.block.list.exec(n);if(e){let t=e[1].trim(),l=t.length>1,s={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),i=!1;for(;n;){let u=!1,d="",m="";if(!(e=o.exec(n))||this.rules.block.hr.test(n))break;d=e[0],n=n.substring(d.length);let g=p0(e[2].split(`
+`);continue}}return{type:"blockquote",raw:l,tokens:o,text:s}}}list(n){let e=this.rules.block.list.exec(n);if(e){let t=e[1].trim(),l=t.length>1,s={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),i=!1;for(;n;){let u=!1,d="",m="";if(!(e=o.exec(n))||this.rules.block.hr.test(n))break;d=e[0],n=n.substring(d.length);let g=h0(e[2].split(`
`,1)[0],e[1].length),h=n.split(`
`,1)[0],_=!g.trim(),b=0;if(this.options.pedantic?(b=2,m=g.trimStart()):_?b=e[1].length+1:(b=g.search(this.rules.other.nonSpaceChar),b=b>4?1:b,m=g.slice(b),b+=e[1].length),_&&this.rules.other.blankLine.test(h)&&(d+=h+`
`,n=n.substring(h.length+1),u=!0),!u){let k=this.rules.other.nextBulletRegex(b),E=this.rules.other.hrRegex(b),w=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(`
@@ -42,7 +42,7 @@ ${m}`:m;let g=this.lexer.state.top;if(this.lexer.state.top=!0,this.lexer.blockTo
`):[],o={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)?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: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 o=Hn(t.slice(0,-1),"\\");if((t.length-o.length)%2===0)return}else{let o=d0(e[2],"()");if(o===-2)return;if(o>-1){let i=(e[0].indexOf("!")===0?5:4)+e[1].length+o;e[2]=e[2].substring(0,o),e[0]=e[0].substring(0,i).trim(),e[3]=""}}let l=e[2],s="";if(this.options.pedantic){let o=this.rules.other.pedanticHrefTitle.exec(l);o&&(l=o[1],s=o[3])}else s=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)),rc(e,{href:l&&l.replace(this.rules.inline.anyPunctuation,"$1"),title:s&&s.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," "),s=e[l.toLowerCase()];if(!s){let o=t[0].charAt(0);return{type:"text",raw:o,text:o}}return rc(t,s,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 s=[...l[0]].length-1,o,i,c=s,u=0,d=l[0][0]==="*"?this.rules.inline.emStrongRDelimAst:this.rules.inline.emStrongRDelimUnd;for(d.lastIndex=0,e=e.slice(-1*n.length+s);(l=d.exec(e))!==null;){if(o=l[1]||l[2]||l[3]||l[4]||l[5]||l[6],!o)continue;if(i=[...o].length,l[3]||l[4]){c+=i;continue}else if((l[5]||l[6])&&s%3&&!((s+i)%3)){u+=i;continue}if(c-=i,c>0)continue;i=Math.min(i,i+c+u);let m=[...l[0]][0].length,g=n.slice(0,s+l.index+m+i);if(Math.min(s,i)%2){let _=g.slice(1,-1);return{type:"em",raw:g,text:_,tokens:this.lexer.inlineTokens(_)}}let h=g.slice(2,-2);return{type:"strong",raw:g,text:h,tokens:this.lexer.inlineTokens(h)}}}}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),s=this.rules.other.startingSpaceChar.test(t)&&this.rules.other.endingSpaceChar.test(t);return l&&s&&(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 s=[...l[0]].length-1,o,i,c=s,u=this.rules.inline.delRDelim;for(u.lastIndex=0,e=e.slice(-1*n.length+s);(l=u.exec(e))!==null;){if(o=l[1]||l[2]||l[3]||l[4]||l[5]||l[6],!o||(i=[...o].length,i!==s))continue;if(l[3]||l[4]){c+=i;continue}if(c-=i,c>0)continue;i=Math.min(i,i+c);let d=[...l[0]][0].length,m=n.slice(0,s+l.index+d+i),g=m.slice(s,-s);return{type:"del",raw:m,text:g,tokens:this.lexer.inlineTokens(g)}}}}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,s;if(e[2]==="@")l=e[0],s="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."?s="http://"+e[0]:s=e[0]}return{type:"link",raw:e[0],text:l,href:s,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}}}},mn=class Ki{constructor(e){et(this,"tokens");et(this,"options");et(this,"state");et(this,"inlineQueue");et(this,"tokenizer");this.tokens=[],this.tokens.links=Object.create(null),this.options=e||vl,this.options.tokenizer=this.options.tokenizer||new Ks,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:Kt,block:Is.normal,inline:Ql.normal};this.options.pedantic?(t.block=Is.pedantic,t.inline=Ql.pedantic):this.options.gfm&&(t.block=Is.gfm,this.options.breaks?t.inline=Ql.breaks:t.inline=Ql.gfm),this.tokenizer.rules=t}static get rules(){return{block:Is,inline:Ql}}static lex(e,t){return new Ki(t).lex(e)}static lexInline(e,t){return new Ki(t).inlineTokens(e)}lex(e){e=e.replace(Kt.carriageReturn,`
+`?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=Hn(t.slice(0,-1),"\\");if((t.length-o.length)%2===0)return}else{let o=g0(e[2],"()");if(o===-2)return;if(o>-1){let i=(e[0].indexOf("!")===0?5:4)+e[1].length+o;e[2]=e[2].substring(0,o),e[0]=e[0].substring(0,i).trim(),e[3]=""}}let l=e[2],s="";if(this.options.pedantic){let o=this.rules.other.pedanticHrefTitle.exec(l);o&&(l=o[1],s=o[3])}else s=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)),rc(e,{href:l&&l.replace(this.rules.inline.anyPunctuation,"$1"),title:s&&s.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," "),s=e[l.toLowerCase()];if(!s){let o=t[0].charAt(0);return{type:"text",raw:o,text:o}}return rc(t,s,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 s=[...l[0]].length-1,o,i,c=s,u=0,d=l[0][0]==="*"?this.rules.inline.emStrongRDelimAst:this.rules.inline.emStrongRDelimUnd;for(d.lastIndex=0,e=e.slice(-1*n.length+s);(l=d.exec(e))!==null;){if(o=l[1]||l[2]||l[3]||l[4]||l[5]||l[6],!o)continue;if(i=[...o].length,l[3]||l[4]){c+=i;continue}else if((l[5]||l[6])&&s%3&&!((s+i)%3)){u+=i;continue}if(c-=i,c>0)continue;i=Math.min(i,i+c+u);let m=[...l[0]][0].length,g=n.slice(0,s+l.index+m+i);if(Math.min(s,i)%2){let _=g.slice(1,-1);return{type:"em",raw:g,text:_,tokens:this.lexer.inlineTokens(_)}}let h=g.slice(2,-2);return{type:"strong",raw:g,text:h,tokens:this.lexer.inlineTokens(h)}}}}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),s=this.rules.other.startingSpaceChar.test(t)&&this.rules.other.endingSpaceChar.test(t);return l&&s&&(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 s=[...l[0]].length-1,o,i,c=s,u=this.rules.inline.delRDelim;for(u.lastIndex=0,e=e.slice(-1*n.length+s);(l=u.exec(e))!==null;){if(o=l[1]||l[2]||l[3]||l[4]||l[5]||l[6],!o||(i=[...o].length,i!==s))continue;if(l[3]||l[4]){c+=i;continue}if(c-=i,c>0)continue;i=Math.min(i,i+c);let d=[...l[0]][0].length,m=n.slice(0,s+l.index+d+i),g=m.slice(s,-s);return{type:"del",raw:m,text:g,tokens:this.lexer.inlineTokens(g)}}}}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,s;if(e[2]==="@")l=e[0],s="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."?s="http://"+e[0]:s=e[0]}return{type:"link",raw:e[0],text:l,href:s,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}}}},mn=class Ki{constructor(e){et(this,"tokens");et(this,"options");et(this,"state");et(this,"inlineQueue");et(this,"tokenizer");this.tokens=[],this.tokens.links=Object.create(null),this.options=e||vl,this.options.tokenizer=this.options.tokenizer||new Ks,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:Kt,block:Is.normal,inline:Ql.normal};this.options.pedantic?(t.block=Is.pedantic,t.inline=Ql.pedantic):this.options.gfm&&(t.block=Is.gfm,this.options.breaks?t.inline=Ql.breaks:t.inline=Ql.gfm),this.tokenizer.rules=t}static get rules(){return{block:Is,inline:Ql}}static lex(e,t){return new Ki(t).lex(e)}static lexInline(e,t){return new Ki(t).inlineTokens(e)}lex(e){e=e.replace(Kt.carriageReturn,`
`),this.blockTokens(e,this.tokens);for(let t=0;t(u=m.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 m=t.at(-1);u.raw.length===1&&m!==void 0?m.raw+=`
`:t.push(u);continue}if(u=this.tokenizer.code(e)){e=e.substring(u.raw.length);let m=t.at(-1);(m==null?void 0:m.type)==="paragraph"||(m==null?void 0:m.type)==="text"?(m.raw+=(m.raw.endsWith(`
`)?"":`
@@ -74,14 +74,14 @@ ${this.parser.parse(n)}
`}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+`${t}>
-`}strong({tokens:n}){return`${this.parser.parseInline(n)} `}em({tokens:n}){return`${this.parser.parseInline(n)} `}codespan({text:n}){return`${En(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),s=sc(n);if(s===null)return l;n=s;let o='"+l+" ",o}image({href:n,title:e,text:t,tokens:l}){l&&(t=this.parser.parseInline(l,this.parser.textRenderer));let s=sc(n);if(s===null)return En(t);n=s;let o=` ",o}text(n){return"tokens"in n&&n.tokens?this.parser.parseInline(n.tokens):"escaped"in n&&n.escaped?n.text:En(n.text)}},io=class{strong({text:n}){return n}em({text:n}){return n}codespan({text:n}){return n}del({text:n}){return n}html({text:n}){return n}text({text:n}){return n}link({text:n}){return""+n}image({text:n}){return""+n}br(){return""}checkbox({raw:n}){return n}},gn=class Vi{constructor(e){et(this,"options");et(this,"renderer");et(this,"textRenderer");this.options=e||vl,this.options.renderer=this.options.renderer||new Vs,this.renderer=this.options.renderer,this.renderer.options=this.options,this.renderer.parser=this,this.textRenderer=new io}static parse(e,t){return new Vi(t).parse(e)}static parseInline(e,t){return new Vi(t).parseInline(e)}parse(e){var l,s;this.renderer.parser=this;let t="";for(let o=0;o{let u=i[c].flat(1/0);t=t.concat(this.walkTokens(u,e))}):i.tokens&&(t=t.concat(this.walkTokens(i.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(s=>{if(!s.name)throw new Error("extension name required");if("renderer"in s){let o=e.renderers[s.name];o?e.renderers[s.name]=function(...i){let c=s.renderer.apply(this,i);return c===!1&&(c=o.apply(this,i)),c}:e.renderers[s.name]=s.renderer}if("tokenizer"in s){if(!s.level||s.level!=="block"&&s.level!=="inline")throw new Error("extension level must be 'block' or 'inline'");let o=e[s.level];o?o.unshift(s.tokenizer):e[s.level]=[s.tokenizer],s.start&&(s.level==="block"?e.startBlock?e.startBlock.push(s.start):e.startBlock=[s.start]:s.level==="inline"&&(e.startInline?e.startInline.push(s.start):e.startInline=[s.start]))}"childTokens"in s&&s.childTokens&&(e.childTokens[s.name]=s.childTokens)}),l.extensions=e),t.renderer){let s=this.defaults.renderer||new Vs(this.defaults);for(let o in t.renderer){if(!(o in s))throw new Error(`renderer '${o}' does not exist`);if(["options","parser"].includes(o))continue;let i=o,c=t.renderer[i],u=s[i];s[i]=(...d)=>{let m=c.apply(s,d);return m===!1&&(m=u.apply(s,d)),m||""}}l.renderer=s}if(t.tokenizer){let s=this.defaults.tokenizer||new Ks(this.defaults);for(let o in t.tokenizer){if(!(o in s))throw new Error(`tokenizer '${o}' does not exist`);if(["options","rules","lexer"].includes(o))continue;let i=o,c=t.tokenizer[i],u=s[i];s[i]=(...d)=>{let m=c.apply(s,d);return m===!1&&(m=u.apply(s,d)),m}}l.tokenizer=s}if(t.hooks){let s=this.defaults.hooks||new ns;for(let o in t.hooks){if(!(o in s))throw new Error(`hook '${o}' does not exist`);if(["options","block"].includes(o))continue;let i=o,c=t.hooks[i],u=s[i];ns.passThroughHooks.has(o)?s[i]=d=>{if(this.defaults.async&&ns.passThroughHooksRespectAsync.has(o))return(async()=>{let g=await c.call(s,d);return u.call(s,g)})();let m=c.call(s,d);return u.call(s,m)}:s[i]=(...d)=>{if(this.defaults.async)return(async()=>{let g=await c.apply(s,d);return g===!1&&(g=await u.apply(s,d)),g})();let m=c.apply(s,d);return m===!1&&(m=u.apply(s,d)),m}}l.hooks=s}if(t.walkTokens){let s=this.defaults.walkTokens,o=t.walkTokens;l.walkTokens=function(i){let c=[];return c.push(o.call(this,i)),s&&(c=c.concat(s.call(this,i))),c}}this.defaults={...this.defaults,...l}}),this}setOptions(n){return this.defaults={...this.defaults,...n},this}lexer(n,e){return mn.lex(n,e??this.defaults)}parser(n,e){return gn.parse(n,e??this.defaults)}parseMarkdown(n){return(e,t)=>{let l={...t},s={...this.defaults,...l},o=this.onError(!!s.silent,!!s.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(s.hooks&&(s.hooks.options=s,s.hooks.block=n),s.async)return(async()=>{let i=s.hooks?await s.hooks.preprocess(e):e,c=await(s.hooks?await s.hooks.provideLexer(n):n?mn.lex:mn.lexInline)(i,s),u=s.hooks?await s.hooks.processAllTokens(c):c;s.walkTokens&&await Promise.all(this.walkTokens(u,s.walkTokens));let d=await(s.hooks?await s.hooks.provideParser(n):n?gn.parse:gn.parseInline)(u,s);return s.hooks?await s.hooks.postprocess(d):d})().catch(o);try{s.hooks&&(e=s.hooks.preprocess(e));let i=(s.hooks?s.hooks.provideLexer(n):n?mn.lex:mn.lexInline)(e,s);s.hooks&&(i=s.hooks.processAllTokens(i)),s.walkTokens&&this.walkTokens(i,s.walkTokens);let c=(s.hooks?s.hooks.provideParser(n):n?gn.parse:gn.parseInline)(i,s);return s.hooks&&(c=s.hooks.postprocess(c)),c}catch(i){return o(i)}}}onError(n,e){return t=>{if(t.message+=`
-Please report this to https://github.com/markedjs/marked.`,n){let l="An error occurred:
"+En(t.message+"",!0)+" ";return e?Promise.resolve(l):l}if(e)return Promise.reject(t);throw t}}},bl=new g0;function ut(n,e){return bl.parse(n,e)}ut.options=ut.setOptions=function(n){return bl.setOptions(n),ut.defaults=bl.defaults,Ad(ut.defaults),ut};ut.getDefaults=Qi;ut.defaults=vl;ut.use=function(...n){return bl.use(...n),ut.defaults=bl.defaults,Ad(ut.defaults),ut};ut.walkTokens=function(n,e){return bl.walkTokens(n,e)};ut.parseInline=bl.parseInline;ut.Parser=gn;ut.parser=gn.parse;ut.Renderer=Vs;ut.TextRenderer=io;ut.Lexer=mn;ut.lexer=mn.lex;ut.Tokenizer=Ks;ut.Hooks=ns;ut.parse=ut;ut.options;ut.setOptions;ut.use;ut.walkTokens;ut.parseInline;gn.parse;mn.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 ac(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),s=1;s"u"?null:Nt(BigInt.prototype.toString),mc=typeof Symbol>"u"?null:Nt(Symbol.prototype.toString),Yt=Nt(Object.prototype.hasOwnProperty),es=Nt(Object.prototype.toString),Pt=Nt(RegExp.prototype.test),dl=R0(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),s=1;s2&&arguments[2]!==void 0?arguments[2]:ls;if(cc&&cc(n,null),!Kn(e))return n;let l=e.length;for(;l--;){let s=e[l];if(typeof s=="string"){const o=t(s);o!==s&&(y0(e)||(e[l]=o),s=o)}n[s]=!0}return n}function I0(n){for(let e=0;e/g),B0=Bt(/\${[\w\W]*/g),F0=Bt(/^data-[\-\w.\u00B7-\uFFFF]+$/),j0=Bt(/^aria-[\-\w]+$/),vc=Bt(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp|matrix):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),U0=Bt(/^(?:\w+script|data):/i),H0=Bt(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),W0=Bt(/^html$/i),G0=Bt(/^[a-z][.\w]*(-[.\w]+)+$/i),kc=Bt(/<[/\w!]/g),K0=Bt(/<[/\w]/g),V0=Bt(/<\/no(script|embed|frames)/i),q0=Bt(/\/>/i),wn={element:1,attribute:2,text:3,cdataSection:4,entityReference:5,entityNode:6,processingInstruction:7,comment:8,document:9,documentType:10,documentFragment:11,notation:12},Z0=function(){return typeof window>"u"?null:window},Y0=function(e,t){if(typeof e!="object"||typeof e.createPolicy!="function")return null;let l=null;const s="data-tt-policy-suffix";t&&t.hasAttribute(s)&&(l=t.getAttribute(s));const o="dompurify"+(l?"#"+l:"");try{return e.createPolicy(o,{createHTML(i){return i},createScriptURL(i){return i}})}catch{return console.warn("TrustedTypes policy "+o+" could not be created."),null}},yc=function(){return{afterSanitizeAttributes:[],afterSanitizeElements:[],afterSanitizeShadowDOM:[],beforeSanitizeAttributes:[],beforeSanitizeElements:[],beforeSanitizeShadowDOM:[],uponSanitizeAttribute:[],uponSanitizeElement:[],uponSanitizeShadowNode:[]}},Wn=function(e,t,l,s){return Yt(e,t)&&Kn(e[t])?lt(s.base?Zt(s.base):{},e[t],s.transform):l};function jd(){let n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:Z0();const e=Ee=>jd(Ee);if(e.version="3.4.10",e.removed=[],!n||!n.document||n.document.nodeType!==wn.document||!n.Element)return e.isSupported=!1,e;let t=n.document;const l=t,s=l.currentScript;n.DocumentFragment;const o=n.HTMLTemplateElement,i=n.Node,c=n.Element,u=n.NodeFilter,d=n.NamedNodeMap;d===void 0&&(n.NamedNodeMap||n.MozNamedAttrMap),n.HTMLFormElement;const m=n.DOMParser,g=n.trustedTypes,h=c.prototype,_=Tn(h,"cloneNode"),b=Tn(h,"remove"),k=Tn(h,"nextSibling"),E=Tn(h,"childNodes"),w=Tn(h,"parentNode"),T=Tn(h,"shadowRoot"),N=Tn(h,"attributes"),A=i&&i.prototype?Tn(i.prototype,"nodeType"):null,I=i&&i.prototype?Tn(i.prototype,"nodeName"):null;if(typeof o=="function"){const Ee=t.createElement("template");Ee.content&&Ee.content.ownerDocument&&(t=Ee.content.ownerDocument)}let M,R="",L,B=!1,z=0;const U=function(){if(z>0)throw dl('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.')},W=function(V){U(),z++;try{return M.createHTML(V)}finally{z--}},K=function(V){U(),z++;try{return M.createScriptURL(V)}finally{z--}},q=function(){return B||(L=Y0(g,s),B=!0),L},Y=t,G=Y.implementation,D=Y.createNodeIterator,H=Y.createDocumentFragment,F=Y.getElementsByTagName,J=l.importNode;let Z=yc();e.isSupported=typeof Bd=="function"&&typeof w=="function"&&G&&G.createHTMLDocument!==void 0;const X=P0,$=z0,te=B0,ne=F0,de=j0,Ae=U0,Pe=H0,qe=G0;let Ne=vc,ee=null;const re=lt({},[...gc,...Li,...Oi,...Di,...hc]);let Se=null;const ze=lt({},[..._c,...Pi,...bc,...Ms]);let ge=Object.seal(zl(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}})),We=null,mt=null;const be=Object.seal(zl(null,{tagCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeCheck:{writable:!0,configurable:!1,enumerable:!0,value:null}}));let it=!0,Oe=!0,Ce=!1,Fe=!0,je=!1,De=!0,Be=!1,ue=!1,we=!1,x=!1,pe=!1,me=!1,Re=!0,ot=!1;const Je="user-content-";let rt=!0,tt=!1,Ze={},Ve=null;const nt=lt({},["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 fe=null;const Me=lt({},["audio","video","img","source","image","track"]);let Ot=null;const Dt=lt({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),Ft="http://www.w3.org/1998/Math/MathML",Vt="http://www.w3.org/2000/svg",at="http://www.w3.org/1999/xhtml";let jt=at,hn=!1,Ut=null;const yl=lt({},[Ft,Vt,at],Mi),Mt=zt(["mi","mo","mn","ms","mtext"]);let Ht=lt({},Mt);const _t=zt(["annotation-xml"]);let wl=lt({},_t);const ps=lt({},["title","style","font","a","script"]);let Pn=null;const un=["application/xhtml+xml","text/html"],Gl="text/html";let ct=null,Wt=null;const Sn=t.createElement("form"),$t=function(V){return V instanceof RegExp||V instanceof Function},en=function(){let V=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if(Wt&&Wt===V)return;(!V||typeof V!="object")&&(V={}),V=Zt(V),Pn=un.indexOf(V.PARSER_MEDIA_TYPE)===-1?Gl:V.PARSER_MEDIA_TYPE,ct=Pn==="application/xhtml+xml"?Mi:ls,ee=Wn(V,"ALLOWED_TAGS",re,{transform:ct}),Se=Wn(V,"ALLOWED_ATTR",ze,{transform:ct}),Ut=Wn(V,"ALLOWED_NAMESPACES",yl,{transform:Mi}),Ot=Wn(V,"ADD_URI_SAFE_ATTR",Dt,{transform:ct,base:Dt}),fe=Wn(V,"ADD_DATA_URI_TAGS",Me,{transform:ct,base:Me}),Ve=Wn(V,"FORBID_CONTENTS",nt,{transform:ct}),We=Wn(V,"FORBID_TAGS",Zt({}),{transform:ct}),mt=Wn(V,"FORBID_ATTR",Zt({}),{transform:ct}),Ze=Yt(V,"USE_PROFILES")?V.USE_PROFILES&&typeof V.USE_PROFILES=="object"?Zt(V.USE_PROFILES):V.USE_PROFILES:!1,it=V.ALLOW_ARIA_ATTR!==!1,Oe=V.ALLOW_DATA_ATTR!==!1,Ce=V.ALLOW_UNKNOWN_PROTOCOLS||!1,Fe=V.ALLOW_SELF_CLOSE_IN_ATTR!==!1,je=V.SAFE_FOR_TEMPLATES||!1,De=V.SAFE_FOR_XML!==!1,Be=V.WHOLE_DOCUMENT||!1,x=V.RETURN_DOM||!1,pe=V.RETURN_DOM_FRAGMENT||!1,me=V.RETURN_TRUSTED_TYPE||!1,we=V.FORCE_BODY||!1,Re=V.SANITIZE_DOM!==!1,ot=V.SANITIZE_NAMED_PROPS||!1,rt=V.KEEP_CONTENT!==!1,tt=V.IN_PLACE||!1,Ne=L0(V.ALLOWED_URI_REGEXP)?V.ALLOWED_URI_REGEXP:vc,jt=typeof V.NAMESPACE=="string"?V.NAMESPACE:at,Ht=Yt(V,"MATHML_TEXT_INTEGRATION_POINTS")&&V.MATHML_TEXT_INTEGRATION_POINTS&&typeof V.MATHML_TEXT_INTEGRATION_POINTS=="object"?Zt(V.MATHML_TEXT_INTEGRATION_POINTS):lt({},Mt),wl=Yt(V,"HTML_INTEGRATION_POINTS")&&V.HTML_INTEGRATION_POINTS&&typeof V.HTML_INTEGRATION_POINTS=="object"?Zt(V.HTML_INTEGRATION_POINTS):lt({},_t);const le=Yt(V,"CUSTOM_ELEMENT_HANDLING")&&V.CUSTOM_ELEMENT_HANDLING&&typeof V.CUSTOM_ELEMENT_HANDLING=="object"?Zt(V.CUSTOM_ELEMENT_HANDLING):zl(null);if(ge=zl(null),Yt(le,"tagNameCheck")&&$t(le.tagNameCheck)&&(ge.tagNameCheck=le.tagNameCheck),Yt(le,"attributeNameCheck")&&$t(le.attributeNameCheck)&&(ge.attributeNameCheck=le.attributeNameCheck),Yt(le,"allowCustomizedBuiltInElements")&&typeof le.allowCustomizedBuiltInElements=="boolean"&&(ge.allowCustomizedBuiltInElements=le.allowCustomizedBuiltInElements),Bt(ge),je&&(Oe=!1),pe&&(x=!0),Ze&&(ee=lt({},hc),Se=zl(null),Ze.html===!0&&(lt(ee,gc),lt(Se,_c)),Ze.svg===!0&&(lt(ee,Li),lt(Se,Pi),lt(Se,Ms)),Ze.svgFilters===!0&&(lt(ee,Oi),lt(Se,Pi),lt(Se,Ms)),Ze.mathMl===!0&&(lt(ee,Di),lt(Se,bc),lt(Se,Ms))),be.tagCheck=null,be.attributeCheck=null,Yt(V,"ADD_TAGS")&&(typeof V.ADD_TAGS=="function"?be.tagCheck=V.ADD_TAGS:Kn(V.ADD_TAGS)&&(ee===re&&(ee=Zt(ee)),lt(ee,V.ADD_TAGS,ct))),Yt(V,"ADD_ATTR")&&(typeof V.ADD_ATTR=="function"?be.attributeCheck=V.ADD_ATTR:Kn(V.ADD_ATTR)&&(Se===ze&&(Se=Zt(Se)),lt(Se,V.ADD_ATTR,ct))),Yt(V,"ADD_URI_SAFE_ATTR")&&Kn(V.ADD_URI_SAFE_ATTR)&<(Ot,V.ADD_URI_SAFE_ATTR,ct),Yt(V,"FORBID_CONTENTS")&&Kn(V.FORBID_CONTENTS)&&(Ve===nt&&(Ve=Zt(Ve)),lt(Ve,V.FORBID_CONTENTS,ct)),Yt(V,"ADD_FORBID_CONTENTS")&&Kn(V.ADD_FORBID_CONTENTS)&&(Ve===nt&&(Ve=Zt(Ve)),lt(Ve,V.ADD_FORBID_CONTENTS,ct)),rt&&(ee["#text"]=!0),Be&<(ee,["html","head","body"]),ee.table&&(lt(ee,["tbody"]),delete We.tbody),V.TRUSTED_TYPES_POLICY){if(typeof V.TRUSTED_TYPES_POLICY.createHTML!="function")throw dl('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof V.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw dl('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');const ke=M;M=V.TRUSTED_TYPES_POLICY;try{R=W("")}catch(Le){throw M=ke,Le}}else V.TRUSTED_TYPES_POLICY===null?(M=void 0,R=""):(M===void 0&&(M=q()),M&&typeof R=="string"&&(R=W("")));(Z.uponSanitizeElement.length>0||Z.uponSanitizeAttribute.length>0)&&ee===re&&(ee=Zt(ee)),Z.uponSanitizeAttribute.length>0&&Se===ze&&(Se=Zt(Se)),zt&&zt(V),Wt=V},_n=lt({},[...Li,...Oi,...O0]),Xt=lt({},[...Di,...D0]),Yn=function(V,le,ke){return le.namespaceURI===at?V==="svg":le.namespaceURI===Ft?V==="svg"&&(ke==="annotation-xml"||Ht[ke]):!!_n[V]},bn=function(V,le,ke){return le.namespaceURI===at?V==="math":le.namespaceURI===Vt?V==="math"&&wl[ke]:!!Xt[V]},Xn=function(V,le,ke){return le.namespaceURI===Vt&&!wl[ke]||le.namespaceURI===Ft&&!Ht[ke]?!1:!Xt[V]&&(ps[V]||!_n[V])},vn=function(V){let le=w(V);(!le||!le.tagName)&&(le={namespaceURI:jt,tagName:"template"});const ke=ls(V.tagName),Le=ls(le.tagName);return Ut[V.namespaceURI]?V.namespaceURI===Vt?Yn(ke,le,Le):V.namespaceURI===Ft?bn(ke,le,Le):V.namespaceURI===at?Xn(ke,le,Le):!!(Pn==="application/xhtml+xml"&&Ut[V.namespaceURI]):!1},an=function(V){Ol(e.removed,{element:V});try{w(V).removeChild(V)}catch{if(b(V),!w(V))throw dl("a node selected for removal could not be detached from its tree and cannot be safely returned; refusing to sanitize in place")}},Cn=function(V){const le=E(V);if(le){const Le=[];xl(le,Ge=>{Ol(Le,Ge)}),xl(Le,Ge=>{try{b(Ge)}catch{}})}const ke=N(V);if(ke)for(let Le=ke.length-1;Le>=0;--Le){const Ge=ke[Le],xe=Ge&&Ge.name;if(typeof xe=="string")try{V.removeAttribute(xe)}catch{}}},fn=function(V,le){try{Ol(e.removed,{attribute:le.getAttributeNode(V),from:le})}catch{Ol(e.removed,{attribute:null,from:le})}if(le.removeAttribute(V),V==="is")if(x||pe)try{an(le)}catch{}else try{le.setAttribute(V,"")}catch{}},El=function(V){const le=N(V);if(le)for(let ke=le.length-1;ke>=0;--ke){const Le=le[ke],Ge=Le&&Le.name;if(!(typeof Ge!="string"||Se[ct(Ge)]))try{V.removeAttribute(Ge)}catch{}}},Jn=function(V){const le=[V];for(;le.length>0;){const ke=le.pop();(A?A(ke):ke.nodeType)===wn.element&&El(ke);const Ge=E(ke);if(Ge)for(let xe=Ge.length-1;xe>=0;--xe)le.push(Ge[xe])}},Tl=function(V){let le=null,ke=null;if(we)V=" "+V;else{const xe=fc(V,/^[\r\n\t ]+/);ke=xe&&xe[0]}Pn==="application/xhtml+xml"&&jt===at&&(V=''+V+"");const Le=M?W(V):V;if(jt===at)try{le=new m().parseFromString(Le,Pn)}catch{}if(!le||!le.documentElement){le=G.createDocument(jt,"template",null);try{le.documentElement.innerHTML=hn?R:Le}catch{}}const Ge=le.body||le.documentElement;return V&&ke&&Ge.insertBefore(t.createTextNode(ke),Ge.childNodes[0]||null),jt===at?F.call(le,Be?"html":"body")[0]:Be?le.documentElement:Ge},Kl=function(V){return D.call(V.ownerDocument||V,V,u.SHOW_ELEMENT|u.SHOW_COMMENT|u.SHOW_TEXT|u.SHOW_PROCESSING_INSTRUCTION|u.SHOW_CDATA_SECTION,null)},qt=function(V){return V=$l(V,X," "),V=$l(V,$," "),V=$l(V,te," "),V},Qn=function(V){var le;V.normalize();const ke=D.call(V.ownerDocument||V,V,u.SHOW_TEXT|u.SHOW_COMMENT|u.SHOW_CDATA_SECTION|u.SHOW_PROCESSING_INSTRUCTION,null);let Le=ke.nextNode();for(;Le;)Le.data=qt(Le.data),Le=ke.nextNode();const Ge=(le=V.querySelectorAll)===null||le===void 0?void 0:le.call(V,"template");Ge&&xl(Ge,xe=>{vt(xe.content)&&Qn(xe.content)})},bt=function(V){const le=I?I(V):null;return typeof le!="string"||ct(le)!=="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!==E(V)},vt=function(V){if(!A||typeof V!="object"||V===null)return!1;try{return A(V)===wn.documentFragment}catch{return!1}},gt=function(V){if(!A||typeof V!="object"||V===null)return!1;try{return typeof A(V)=="number"}catch{return!1}};function Rt(Ee,V,le){Ee.length!==0&&xl(Ee,ke=>{ke.call(e,V,le,Wt)})}const tn=function(V,le){return!!(De&&V.hasChildNodes()&&!gt(V.firstElementChild)&&Pt(kc,V.textContent)&&Pt(kc,V.innerHTML)||De&&V.namespaceURI===at&&le==="style"&>(V.firstElementChild)||V.nodeType===wn.processingInstruction||De&&V.nodeType===wn.comment&&Pt(K0,V.data))},xn=function(V,le){if(!We[le]&&Nn(le)&&(ge.tagNameCheck instanceof RegExp&&Pt(ge.tagNameCheck,le)||ge.tagNameCheck instanceof Function&&ge.tagNameCheck(le)))return!1;if(rt&&!Ve[le]){const ke=w(V),Le=E(V);if(Le&&ke){const Ge=Le.length;for(let xe=Ge-1;xe>=0;--xe){const yt=tt?Le[xe]:_(Le[xe],!0);ke.insertBefore(yt,k(V))}}}return an(V),!0},An=function(V){if(Rt(Z.beforeSanitizeElements,V,null),bt(V))return an(V),!0;const le=ct(I?I(V):V.nodeName);if(Rt(Z.uponSanitizeElement,V,{tagName:le,allowedTags:ee}),tn(V,le))return an(V),!0;if(We[le]||!(be.tagCheck instanceof Function&&be.tagCheck(le))&&!ee[le])return xn(V,le);if((A?A(V):V.nodeType)===wn.element&&!vn(V)||(le==="noscript"||le==="noembed"||le==="noframes")&&Pt(V0,V.innerHTML))return an(V),!0;if(je&&V.nodeType===wn.text){const Le=qt(V.textContent);V.textContent!==Le&&(Ol(e.removed,{element:V.cloneNode()}),V.textContent=Le)}return Rt(Z.afterSanitizeElements,V,null),!1},nn=function(V,le,ke){if(mt[le]||Re&&(le==="id"||le==="name")&&(ke in t||ke in Sn))return!1;const Le=Se[le]||be.attributeCheck instanceof Function&&be.attributeCheck(le,V);if(!(Oe&&Pt(ne,le))){if(!(it&&Pt(de,le))){if(Le){if(!Ot[le]){if(!Pt(Ne,$l(ke,Pe,""))){if(!((le==="src"||le==="xlink:href"||le==="href")&&V!=="script"&&dc(ke,"data:")===0&&fe[V])){if(!(Ce&&!Pt(Ae,$l(ke,Pe,"")))){if(ke)return!1}}}}}else if(!(Nn(V)&&(ge.tagNameCheck instanceof RegExp&&Pt(ge.tagNameCheck,V)||ge.tagNameCheck instanceof Function&&ge.tagNameCheck(V))&&(ge.attributeNameCheck instanceof RegExp&&Pt(ge.attributeNameCheck,le)||ge.attributeNameCheck instanceof Function&&ge.attributeNameCheck(le,V))||le==="is"&&ge.allowCustomizedBuiltInElements&&(ge.tagNameCheck instanceof RegExp&&Pt(ge.tagNameCheck,ke)||ge.tagNameCheck instanceof Function&&ge.tagNameCheck(ke))))return!1}}return!0},$e=lt({},["annotation-xml","color-profile","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","missing-glyph"]),Nn=function(V){return!$e[ls(V)]&&Pt(qe,V)},Vl=function(V,le,ke,Le){if(M&&typeof g=="object"&&typeof g.getAttributeType=="function"&&!ke)switch(g.getAttributeType(V,le)){case"TrustedHTML":return W(Le);case"TrustedScriptURL":return K(Le)}return Le},$n=function(V,le,ke,Le){try{ke?V.setAttributeNS(ke,le,Le):V.setAttribute(le,Le),bt(V)?an(V):uc(e.removed)}catch{fn(le,V)}},Rn=function(V){Rt(Z.beforeSanitizeAttributes,V,null);const le=V.attributes;if(!le||bt(V))return;const ke={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:Se,forceKeepAttr:void 0};let Le=le.length;const Ge=ct(V.nodeName);for(;Le--;){const xe=le[Le],yt=xe.name,kt=xe.namespaceURI,It=xe.value,Gt=ct(yt),kn=It;let At=yt==="value"?kn:C0(kn);if(ke.attrName=Gt,ke.attrValue=At,ke.keepAttr=!0,ke.forceKeepAttr=void 0,Rt(Z.uponSanitizeAttribute,V,ke),At=ke.attrValue,ot&&(Gt==="id"||Gt==="name")&&dc(At,Je)!==0&&(fn(yt,V),At=Je+At),De&&Pt(/((--!?|])>)|<\/(style|script|title|xmp|textarea|noscript|iframe|noembed|noframes)/i,At)){fn(yt,V);continue}if(Gt==="attributename"&&fc(At,"href")){fn(yt,V);continue}if(!ke.forceKeepAttr){if(!ke.keepAttr){fn(yt,V);continue}if(!Fe&&Pt(q0,At)){fn(yt,V);continue}if(je&&(At=qt(At)),!nn(Ge,Gt,At)){fn(yt,V);continue}At=Vl(Ge,Gt,kt,At),At!==kn&&$n(V,yt,kt,At)}}Rt(Z.afterSanitizeAttributes,V,null)},zn=function(V){let le=null;const ke=Kl(V);for(Rt(Z.beforeSanitizeShadowDOM,V,null);le=ke.nextNode();)if(Rt(Z.uponSanitizeShadowNode,le,null),An(le),Rn(le),vt(le.content)&&zn(le.content),(A?A(le):le.nodeType)===wn.element){const Ge=T(le);vt(Ge)&&(In(Ge),zn(Ge))}Rt(Z.afterSanitizeShadowDOM,V,null)},In=function(V){const le=[{node:V,shadow:null}];for(;le.length>0;){const ke=le.pop();if(ke.shadow){zn(ke.shadow);continue}const Le=ke.node,xe=(A?A(Le):Le.nodeType)===wn.element,yt=E(Le);if(yt)for(let kt=yt.length-1;kt>=0;--kt)le.push({node:yt[kt],shadow:null});if(xe){const kt=I?I(Le):null;if(typeof kt=="string"&&ct(kt)==="template"){const It=Le.content;vt(It)&&le.push({node:It,shadow:null})}}if(xe){const kt=T(Le);vt(kt)&&le.push({node:null,shadow:kt},{node:kt,shadow:null})}}};return e.sanitize=function(Ee){let V=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},le=null,ke=null,Le=null,Ge=null;if(hn=!Ee,hn&&(Ee=""),typeof Ee!="string"&&!gt(Ee)&&(Ee=M0(Ee),typeof Ee!="string"))throw dl("dirty is not a string, aborting");if(!e.isSupported)return Ee;ue||en(V),e.removed=[];const xe=tt&&typeof Ee!="string"&>(Ee);if(xe){const It=I?I(Ee):Ee.nodeName;if(typeof It=="string"){const Gt=ct(It);if(!ee[Gt]||We[Gt])throw dl("root node is forbidden and cannot be sanitized in-place")}if(bt(Ee))throw dl("root node is clobbered and cannot be sanitized in-place");try{In(Ee)}catch(Gt){throw Cn(Ee),Gt}}else if(gt(Ee))le=Tl(""),ke=le.ownerDocument.importNode(Ee,!0),ke.nodeType===wn.element&&ke.nodeName==="BODY"||ke.nodeName==="HTML"?le=ke:le.appendChild(ke),In(ke);else{if(!x&&!je&&!Be&&Ee.indexOf("<")===-1)return M&&me?W(Ee):Ee;if(le=Tl(Ee),!le)return x?null:me?R:""}le&&we&&an(le.firstChild);const yt=Kl(xe?Ee:le);try{for(;Le=yt.nextNode();)An(Le),Rn(Le),vt(Le.content)&&zn(Le.content)}catch(It){throw xe&&Cn(Ee),It}if(xe)return xl(e.removed,It=>{It.element&&Jn(It.element)}),je&&Qn(Ee),Ee;if(x){if(je&&Qn(le),pe)for(Ge=H.call(le.ownerDocument);le.firstChild;)Ge.appendChild(le.firstChild);else Ge=le;return(Se.shadowroot||Se.shadowrootmode)&&(Ge=J.call(l,Ge,!0)),Ge}let kt=Be?le.outerHTML:le.innerHTML;return Be&&ee["!doctype"]&&le.ownerDocument&&le.ownerDocument.doctype&&le.ownerDocument.doctype.name&&Pt(W0,le.ownerDocument.doctype.name)&&(kt="
-`+kt),je&&(kt=qt(kt)),M&&me?W(kt):kt},e.setConfig=function(){let Ee=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};en(Ee),ue=!0},e.clearConfig=function(){Wt=null,ue=!1,M=L,R=""},e.isValidAttribute=function(Ee,V,le){Wt||en({});const ke=ct(Ee),Le=ct(V);return nn(ke,Le,le)},e.addHook=function(Ee,V){typeof V=="function"&&Ol(Z[Ee],V)},e.removeHook=function(Ee,V){if(V!==void 0){const le=T0(Z[Ee],V);return le===-1?void 0:S0(Z[Ee],le,1)[0]}return uc(Z[Ee])},e.removeHooks=function(Ee){Z[Ee]=[]},e.removeAllHooks=function(){Z=yc()},e}var Ud=jd();function X0(n){return n&&n.__esModule&&Object.prototype.hasOwnProperty.call(n,"default")?n.default:n}function Hd(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)&&Hd(t)}),n}class wc{constructor(e){e.data===void 0&&(e.data={}),this.data=e.data,this.isMatchIgnored=!1}ignoreMatch(){this.isMatchIgnored=!0}}function Wd(n){return n.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")}function qn(n,...e){const t=Object.create(null);for(const l in n)t[l]=n[l];return e.forEach(function(l){for(const s in l)t[s]=l[s]}),t}const J0="",Ec=n=>!!n.scope,Q0=(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,s)=>`${l}${"_".repeat(s+1)}`)].join(" ")}return`${e}${n}`};class x0{constructor(e,t){this.buffer="",this.classPrefix=t.classPrefix,e.walk(this)}addText(e){this.buffer+=Wd(e)}openNode(e){if(!Ec(e))return;const t=Q0(e.scope,{prefix:this.classPrefix});this.span(t)}closeNode(e){Ec(e)&&(this.buffer+=J0)}value(){return this.buffer}span(e){this.buffer+=``}}const Tc=(n={})=>{const e={children:[]};return Object.assign(e,n),e};class oo{constructor(){this.rootNode=Tc(),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=Tc({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=>{oo._collapse(t)}))}}class $0 extends oo{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 x0(this,this.options).value()}finalize(){return this.closeAllNodes(),!0}}function rs(n){return n?typeof n=="string"?n:n.source:null}function Gd(n){return kl("(?=",n,")")}function e2(n){return kl("(?:",n,")*")}function t2(n){return kl("(?:",n,")?")}function kl(...n){return n.map(t=>rs(t)).join("")}function n2(n){const e=n[n.length-1];return typeof e=="object"&&e.constructor===Object?(n.splice(n.length-1,1),e):{}}function ro(...n){return"("+(n2(n).capture?"":"?:")+n.map(l=>rs(l)).join("|")+")"}function Kd(n){return new RegExp(n.toString()+"|").exec("").length-1}function l2(n,e){const t=n&&n.exec(e);return t&&t.index===0}const s2=/\[(?:[^\\\]]|\\.)*\]|\(\??|\\([1-9][0-9]*)|\\./;function ao(n,{joinWith:e}){let t=0;return n.map(l=>{t+=1;const s=t;let o=rs(l),i="";for(;o.length>0;){const c=s2.exec(o);if(!c){i+=o;break}i+=o.substring(0,c.index),o=o.substring(c.index+c[0].length),c[0][0]==="\\"&&c[1]?i+="\\"+String(Number(c[1])+s):(i+=c[0],c[0]==="("&&t++)}return i}).map(l=>`(${l})`).join(e)}const i2=/\b\B/,Vd="[a-zA-Z]\\w*",co="[a-zA-Z_]\\w*",qd="\\b\\d+(\\.\\d+)?",Zd="(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",Yd="\\b(0b[01]+)",o2="!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~",r2=(n={})=>{const e=/^#![ ]*\//;return n.binary&&(n.begin=kl(e,/.*\b/,n.binary,/\b.*/)),qn({scope:"meta",begin:e,end:/$/,relevance:0,"on:begin":(t,l)=>{t.index!==0&&l.ignoreMatch()}},n)},as={begin:"\\\\[\\s\\S]",relevance:0},a2={scope:"string",begin:"'",end:"'",illegal:"\\n",contains:[as]},c2={scope:"string",begin:'"',end:'"',illegal:"\\n",contains:[as]},u2={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/},xs=function(n,e,t={}){const l=qn({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 s=ro("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:kl(/[ ]+/,"(",s,/[.]?[:]?([.][ ]|[ ])/,"){3}")}),l},f2=xs("//","$"),d2=xs("/\\*","\\*/"),p2=xs("#","$"),m2={scope:"number",begin:qd,relevance:0},g2={scope:"number",begin:Zd,relevance:0},h2={scope:"number",begin:Yd,relevance:0},_2={scope:"regexp",begin:/\/(?=[^/\n]*\/)/,end:/\/[gimuy]*/,contains:[as,{begin:/\[/,end:/\]/,relevance:0,contains:[as]}]},b2={scope:"title",begin:Vd,relevance:0},v2={scope:"title",begin:co,relevance:0},k2={begin:"\\.\\s*"+co,relevance:0},y2=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 Ls=Object.freeze({__proto__:null,APOS_STRING_MODE:a2,BACKSLASH_ESCAPE:as,BINARY_NUMBER_MODE:h2,BINARY_NUMBER_RE:Yd,COMMENT:xs,C_BLOCK_COMMENT_MODE:d2,C_LINE_COMMENT_MODE:f2,C_NUMBER_MODE:g2,C_NUMBER_RE:Zd,END_SAME_AS_BEGIN:y2,HASH_COMMENT_MODE:p2,IDENT_RE:Vd,MATCH_NOTHING_RE:i2,METHOD_GUARD:k2,NUMBER_MODE:m2,NUMBER_RE:qd,PHRASAL_WORDS_MODE:u2,QUOTE_STRING_MODE:c2,REGEXP_MODE:_2,RE_STARTERS_RE:o2,SHEBANG:r2,TITLE_MODE:b2,UNDERSCORE_IDENT_RE:co,UNDERSCORE_TITLE_MODE:v2});function w2(n,e){n.input[n.index-1]==="."&&e.ignoreMatch()}function E2(n,e){n.className!==void 0&&(n.scope=n.className,delete n.className)}function T2(n,e){e&&n.beginKeywords&&(n.begin="\\b("+n.beginKeywords.split(" ").join("|")+")(?!\\.)(?=\\b|\\s)",n.__beforeBegin=w2,n.keywords=n.keywords||n.beginKeywords,delete n.beginKeywords,n.relevance===void 0&&(n.relevance=0))}function S2(n,e){Array.isArray(n.illegal)&&(n.illegal=ro(...n.illegal))}function C2(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 A2(n,e){n.relevance===void 0&&(n.relevance=1)}const N2=(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=kl(t.beforeMatch,Gd(t.begin)),n.starts={relevance:0,contains:[Object.assign(t,{endsParent:!0})]},n.relevance=0,delete t.beforeMatch},R2=["of","and","for","in","not","or","if","then","parent","list","value"],I2="keyword";function Xd(n,e,t=I2){const l=Object.create(null);return typeof n=="string"?s(t,n.split(" ")):Array.isArray(n)?s(t,n):Object.keys(n).forEach(function(o){Object.assign(l,Xd(n[o],e,o))}),l;function s(o,i){e&&(i=i.map(c=>c.toLowerCase())),i.forEach(function(c){const u=c.split("|");l[u[0]]=[o,M2(u[0],u[1])]})}}function M2(n,e){return e?Number(e):L2(n)?0:1}function L2(n){return R2.includes(n.toLowerCase())}const Sc={},hl=n=>{console.error(n)},Cc=(n,...e)=>{console.log(`WARN: ${n}`,...e)},Dl=(n,e)=>{Sc[`${n}/${e}`]||(console.log(`Deprecated as of ${n}. ${e}`),Sc[`${n}/${e}`]=!0)},qs=new Error;function Jd(n,e,{key:t}){let l=0;const s=n[t],o={},i={};for(let c=1;c<=e.length;c++)i[c+l]=s[c],o[c+l]=!0,l+=Kd(e[c-1]);n[t]=i,n[t]._emit=o,n[t]._multi=!0}function O2(n){if(Array.isArray(n.begin)){if(n.skip||n.excludeBegin||n.returnBegin)throw hl("skip, excludeBegin, returnBegin not compatible with beginScope: {}"),qs;if(typeof n.beginScope!="object"||n.beginScope===null)throw hl("beginScope must be object"),qs;Jd(n,n.begin,{key:"beginScope"}),n.begin=ao(n.begin,{joinWith:""})}}function D2(n){if(Array.isArray(n.end)){if(n.skip||n.excludeEnd||n.returnEnd)throw hl("skip, excludeEnd, returnEnd not compatible with endScope: {}"),qs;if(typeof n.endScope!="object"||n.endScope===null)throw hl("endScope must be object"),qs;Jd(n,n.end,{key:"endScope"}),n.end=ao(n.end,{joinWith:""})}}function P2(n){n.scope&&typeof n.scope=="object"&&n.scope!==null&&(n.beginScope=n.scope,delete n.scope)}function z2(n){P2(n),typeof n.beginScope=="string"&&(n.beginScope={_wrap:n.beginScope}),typeof n.endScope=="string"&&(n.endScope={_wrap:n.endScope}),O2(n),D2(n)}function B2(n){function e(i,c){return new RegExp(rs(i),"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+=Kd(c)+1}compile(){this.regexes.length===0&&(this.exec=()=>null);const c=this.regexes.map(u=>u[1]);this.matcherRe=e(ao(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((g,h)=>h>0&&g!==void 0),m=this.matchIndexes[d];return u.splice(0,d),Object.assign(u,m)}}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,m])=>u.addRule(d,m)),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 m=this.getMatcher(0);m.lastIndex=this.lastIndex+1,d=m.exec(c)}return d&&(this.regexIndex+=d.position+1,this.regexIndex===this.count&&this.considerAll()),d}}function s(i){const c=new l;return i.contains.forEach(u=>c.addRule(u.begin,{rule:u,type:"begin"})),i.terminatorEnd&&c.addRule(i.terminatorEnd,{type:"end"}),i.illegal&&c.addRule(i.illegal,{type:"illegal"}),c}function o(i,c){const u=i;if(i.isCompiled)return u;[E2,C2,z2,N2].forEach(m=>m(i,c)),n.compilerExtensions.forEach(m=>m(i,c)),i.__beforeBegin=null,[T2,S2,A2].forEach(m=>m(i,c)),i.isCompiled=!0;let d=null;return typeof i.keywords=="object"&&i.keywords.$pattern&&(i.keywords=Object.assign({},i.keywords),d=i.keywords.$pattern,delete i.keywords.$pattern),d=d||/\w+/,i.keywords&&(i.keywords=Xd(i.keywords,n.case_insensitive)),u.keywordPatternRe=e(d,!0),c&&(i.begin||(i.begin=/\B|\b/),u.beginRe=e(u.begin),!i.end&&!i.endsWithParent&&(i.end=/\B|\b/),i.end&&(u.endRe=e(u.end)),u.terminatorEnd=rs(u.end)||"",i.endsWithParent&&c.terminatorEnd&&(u.terminatorEnd+=(i.end?"|":"")+c.terminatorEnd)),i.illegal&&(u.illegalRe=e(i.illegal)),i.contains||(i.contains=[]),i.contains=[].concat(...i.contains.map(function(m){return F2(m==="self"?i:m)})),i.contains.forEach(function(m){o(m,u)}),i.starts&&o(i.starts,c),u.matcher=s(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=qn(n.classNameAliases||{}),o(n)}function Qd(n){return n?n.endsWithParent||Qd(n.starts):!1}function F2(n){return n.variants&&!n.cachedVariants&&(n.cachedVariants=n.variants.map(function(e){return qn(n,{variants:null},e)})),n.cachedVariants?n.cachedVariants:Qd(n)?qn(n,{starts:n.starts?qn(n.starts):null}):Object.isFrozen(n)?qn(n):n}var j2="11.11.1";class U2 extends Error{constructor(e,t){super(e),this.name="HTMLInjectionError",this.html=t}}const zi=Wd,Ac=qn,Nc=Symbol("nomatch"),H2=7,xd=function(n){const e=Object.create(null),t=Object.create(null),l=[];let s=!0;const o="Could not find the language '{}', did you forget to load/include a language module?",i={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:$0};function u(G){return c.noHighlightRe.test(G)}function d(G){let D=G.className+" ";D+=G.parentNode?G.parentNode.className:"";const H=c.languageDetectRe.exec(D);if(H){const F=L(H[1]);return F||(Cc(o.replace("{}",H[1])),Cc("Falling back to no-highlight mode for this block.",G)),F?H[1]:"no-highlight"}return D.split(/\s+/).find(F=>u(F)||L(F))}function m(G,D,H){let F="",J="";typeof D=="object"?(F=G,H=D.ignoreIllegals,J=D.language):(Dl("10.7.0","highlight(lang, code, ...args) has been deprecated."),Dl("10.7.0",`Please use highlight(code, options) instead.
-https://github.com/highlightjs/highlight.js/issues/2277`),J=G,F=D),H===void 0&&(H=!0);const Z={code:F,language:J};q("before:highlight",Z);const X=Z.result?Z.result:g(Z.language,Z.code,H);return X.code=Z.code,q("after:highlight",X),X}function g(G,D,H,F){const J=Object.create(null);function Z(ue,we){return ue.keywords[we]}function X(){if(!be.keywords){Oe.addText(Ce);return}let ue=0;be.keywordPatternRe.lastIndex=0;let we=be.keywordPatternRe.exec(Ce),x="";for(;we;){x+=Ce.substring(ue,we.index);const pe=ge.case_insensitive?we[0].toLowerCase():we[0],me=Z(be,pe);if(me){const[Re,ot]=me;if(Oe.addText(x),x="",J[pe]=(J[pe]||0)+1,J[pe]<=H2&&(Fe+=ot),Re.startsWith("_"))x+=we[0];else{const Je=ge.classNameAliases[Re]||Re;ne(we[0],Je)}}else x+=we[0];ue=be.keywordPatternRe.lastIndex,we=be.keywordPatternRe.exec(Ce)}x+=Ce.substring(ue),Oe.addText(x)}function $(){if(Ce==="")return;let ue=null;if(typeof be.subLanguage=="string"){if(!e[be.subLanguage]){Oe.addText(Ce);return}ue=g(be.subLanguage,Ce,!0,it[be.subLanguage]),it[be.subLanguage]=ue._top}else ue=_(Ce,be.subLanguage.length?be.subLanguage:null);be.relevance>0&&(Fe+=ue.relevance),Oe.__addSublanguage(ue._emitter,ue.language)}function te(){be.subLanguage!=null?$():X(),Ce=""}function ne(ue,we){ue!==""&&(Oe.startScope(we),Oe.addText(ue),Oe.endScope())}function de(ue,we){let x=1;const pe=we.length-1;for(;x<=pe;){if(!ue._emit[x]){x++;continue}const me=ge.classNameAliases[ue[x]]||ue[x],Re=we[x];me?ne(Re,me):(Ce=Re,X(),Ce=""),x++}}function Ae(ue,we){return ue.scope&&typeof ue.scope=="string"&&Oe.openNode(ge.classNameAliases[ue.scope]||ue.scope),ue.beginScope&&(ue.beginScope._wrap?(ne(Ce,ge.classNameAliases[ue.beginScope._wrap]||ue.beginScope._wrap),Ce=""):ue.beginScope._multi&&(de(ue.beginScope,we),Ce="")),be=Object.create(ue,{parent:{value:be}}),be}function Pe(ue,we,x){let pe=l2(ue.endRe,x);if(pe){if(ue["on:end"]){const me=new wc(ue);ue["on:end"](we,me),me.isMatchIgnored&&(pe=!1)}if(pe){for(;ue.endsParent&&ue.parent;)ue=ue.parent;return ue}}if(ue.endsWithParent)return Pe(ue.parent,we,x)}function qe(ue){return be.matcher.regexIndex===0?(Ce+=ue[0],1):(Be=!0,0)}function Ne(ue){const we=ue[0],x=ue.rule,pe=new wc(x),me=[x.__beforeBegin,x["on:begin"]];for(const Re of me)if(Re&&(Re(ue,pe),pe.isMatchIgnored))return qe(we);return x.skip?Ce+=we:(x.excludeBegin&&(Ce+=we),te(),!x.returnBegin&&!x.excludeBegin&&(Ce=we)),Ae(x,ue),x.returnBegin?0:we.length}function ee(ue){const we=ue[0],x=D.substring(ue.index),pe=Pe(be,ue,x);if(!pe)return Nc;const me=be;be.endScope&&be.endScope._wrap?(te(),ne(we,be.endScope._wrap)):be.endScope&&be.endScope._multi?(te(),de(be.endScope,ue)):me.skip?Ce+=we:(me.returnEnd||me.excludeEnd||(Ce+=we),te(),me.excludeEnd&&(Ce=we));do be.scope&&Oe.closeNode(),!be.skip&&!be.subLanguage&&(Fe+=be.relevance),be=be.parent;while(be!==pe.parent);return pe.starts&&Ae(pe.starts,ue),me.returnEnd?0:we.length}function re(){const ue=[];for(let we=be;we!==ge;we=we.parent)we.scope&&ue.unshift(we.scope);ue.forEach(we=>Oe.openNode(we))}let Se={};function ze(ue,we){const x=we&&we[0];if(Ce+=ue,x==null)return te(),0;if(Se.type==="begin"&&we.type==="end"&&Se.index===we.index&&x===""){if(Ce+=D.slice(we.index,we.index+1),!s){const pe=new Error(`0 width match regex (${G})`);throw pe.languageName=G,pe.badRule=Se.rule,pe}return 1}if(Se=we,we.type==="begin")return Ne(we);if(we.type==="illegal"&&!H){const pe=new Error('Illegal lexeme "'+x+'" for mode "'+(be.scope||"")+'"');throw pe.mode=be,pe}else if(we.type==="end"){const pe=ee(we);if(pe!==Nc)return pe}if(we.type==="illegal"&&x==="")return Ce+=`
-`,1;if(De>1e5&&De>we.index*3)throw new Error("potential infinite loop, way more iterations than matches");return Ce+=x,x.length}const ge=L(G);if(!ge)throw hl(o.replace("{}",G)),new Error('Unknown language: "'+G+'"');const We=B2(ge);let mt="",be=F||We;const it={},Oe=new c.__emitter(c);re();let Ce="",Fe=0,je=0,De=0,Be=!1;try{if(ge.__emitTokens)ge.__emitTokens(D,Oe);else{for(be.matcher.considerAll();;){De++,Be?Be=!1:be.matcher.considerAll(),be.matcher.lastIndex=je;const ue=be.matcher.exec(D);if(!ue)break;const we=D.substring(je,ue.index),x=ze(we,ue);je=ue.index+x}ze(D.substring(je))}return Oe.finalize(),mt=Oe.toHTML(),{language:G,value:mt,relevance:Fe,illegal:!1,_emitter:Oe,_top:be}}catch(ue){if(ue.message&&ue.message.includes("Illegal"))return{language:G,value:zi(D),illegal:!0,relevance:0,_illegalBy:{message:ue.message,index:je,context:D.slice(je-100,je+100),mode:ue.mode,resultSoFar:mt},_emitter:Oe};if(s)return{language:G,value:zi(D),illegal:!1,relevance:0,errorRaised:ue,_emitter:Oe,_top:be};throw ue}}function h(G){const D={value:zi(G),illegal:!1,relevance:0,_top:i,_emitter:new c.__emitter(c)};return D._emitter.addText(G),D}function _(G,D){D=D||c.languages||Object.keys(e);const H=h(G),F=D.filter(L).filter(z).map(te=>g(te,G,!1));F.unshift(H);const J=F.sort((te,ne)=>{if(te.relevance!==ne.relevance)return ne.relevance-te.relevance;if(te.language&&ne.language){if(L(te.language).supersetOf===ne.language)return 1;if(L(ne.language).supersetOf===te.language)return-1}return 0}),[Z,X]=J,$=Z;return $.secondBest=X,$}function b(G,D,H){const F=D&&t[D]||H;G.classList.add("hljs"),G.classList.add(`language-${F}`)}function k(G){let D=null;const H=d(G);if(u(H))return;if(q("before:highlightElement",{el:G,language:H}),G.dataset.highlighted){console.log("Element previously highlighted. To highlight again, first unset `dataset.highlighted`.",G);return}if(G.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(G)),c.throwUnescapedHTML))throw new U2("One of your code blocks includes unescaped HTML.",G.innerHTML);D=G;const F=D.textContent,J=H?m(F,{language:H,ignoreIllegals:!0}):_(F);G.innerHTML=J.value,G.dataset.highlighted="yes",b(G,H,J.language),G.result={language:J.language,re:J.relevance,relevance:J.relevance},J.secondBest&&(G.secondBest={language:J.secondBest.language,relevance:J.secondBest.relevance}),q("after:highlightElement",{el:G,result:J,text:F})}function E(G){c=Ac(c,G)}const w=()=>{A(),Dl("10.6.0","initHighlighting() deprecated. Use highlightAll() now.")};function T(){A(),Dl("10.6.0","initHighlightingOnLoad() deprecated. Use highlightAll() now.")}let N=!1;function A(){function G(){A()}if(document.readyState==="loading"){N||window.addEventListener("DOMContentLoaded",G,!1),N=!0;return}document.querySelectorAll(c.cssSelector).forEach(k)}function I(G,D){let H=null;try{H=D(n)}catch(F){if(hl("Language definition for '{}' could not be registered.".replace("{}",G)),s)hl(F);else throw F;H=i}H.name||(H.name=G),e[G]=H,H.rawDefinition=D.bind(null,n),H.aliases&&B(H.aliases,{languageName:G})}function M(G){delete e[G];for(const D of Object.keys(t))t[D]===G&&delete t[D]}function R(){return Object.keys(e)}function L(G){return G=(G||"").toLowerCase(),e[G]||e[t[G]]}function B(G,{languageName:D}){typeof G=="string"&&(G=[G]),G.forEach(H=>{t[H.toLowerCase()]=D})}function z(G){const D=L(G);return D&&!D.disableAutodetect}function U(G){G["before:highlightBlock"]&&!G["before:highlightElement"]&&(G["before:highlightElement"]=D=>{G["before:highlightBlock"](Object.assign({block:D.el},D))}),G["after:highlightBlock"]&&!G["after:highlightElement"]&&(G["after:highlightElement"]=D=>{G["after:highlightBlock"](Object.assign({block:D.el},D))})}function W(G){U(G),l.push(G)}function K(G){const D=l.indexOf(G);D!==-1&&l.splice(D,1)}function q(G,D){const H=G;l.forEach(function(F){F[H]&&F[H](D)})}function Y(G){return Dl("10.7.0","highlightBlock will be removed entirely in v12.0"),Dl("10.7.0","Please use highlightElement now."),k(G)}Object.assign(n,{highlight:m,highlightAuto:_,highlightAll:A,highlightElement:k,highlightBlock:Y,configure:E,initHighlighting:w,initHighlightingOnLoad:T,registerLanguage:I,unregisterLanguage:M,listLanguages:R,getLanguage:L,registerAliases:B,autoDetection:z,inherit:Ac,addPlugin:W,removePlugin:K}),n.debugMode=function(){s=!1},n.safeMode=function(){s=!0},n.versionString=j2,n.regex={concat:kl,lookahead:Gd,either:ro,optional:t2,anyNumberOfTimes:e2};for(const G in Ls)typeof Ls[G]=="object"&&Hd(Ls[G]);return Object.assign(n,Ls),n},jl=xd({});jl.newInstance=()=>xd({});var W2=jl;jl.HighlightJS=jl;jl.default=jl;const sn=X0(W2),Rc="[A-Za-z$_][0-9A-Za-z$_]*",G2=["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"],K2=["true","false","null","undefined","NaN","Infinity"],$d=["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"],ep=["Error","EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"],tp=["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],V2=["arguments","this","super","console","window","document","localStorage","sessionStorage","module","global"],q2=[].concat(tp,$d,ep);function Z2(n){const e=n.regex,t=(H,{after:F})=>{const J=""+H[0].slice(1);return H.input.indexOf(J,F)!==-1},l=Rc,s={begin:"<>",end:">"},o=/<[A-Za-z0-9\\._:-]+\s*\/>/,i={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:(H,F)=>{const J=H[0].length+H.index,Z=H.input[J];if(Z==="<"||Z===","){F.ignoreMatch();return}Z===">"&&(t(H,{after:J})||F.ignoreMatch());let X;const $=H.input.substring(J);if(X=$.match(/^\s*=/)){F.ignoreMatch();return}if((X=$.match(/^\s+extends\s+/))&&X.index===0){F.ignoreMatch();return}}},c={$pattern:Rc,keyword:G2,literal:K2,built_in:q2,"variable.language":V2},u="[0-9](_?[0-9])*",d=`\\.(${u})`,m="0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*",g={className:"number",variants:[{begin:`(\\b(${m})((${d})|\\.)?|(${d}))[eE][+-]?(${u})\\b`},{begin:`\\b(${m})\\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},h={className:"subst",begin:"\\$\\{",end:"\\}",keywords:c,contains:[]},_={begin:".?html`",end:"",starts:{end:"`",returnEnd:!1,contains:[n.BACKSLASH_ESCAPE,h],subLanguage:"xml"}},b={begin:".?css`",end:"",starts:{end:"`",returnEnd:!1,contains:[n.BACKSLASH_ESCAPE,h],subLanguage:"css"}},k={begin:".?gql`",end:"",starts:{end:"`",returnEnd:!1,contains:[n.BACKSLASH_ESCAPE,h],subLanguage:"graphql"}},E={className:"string",begin:"`",end:"`",contains:[n.BACKSLASH_ESCAPE,h]},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,_,b,k,E,{match:/\$\d+/},g];h.contains=N.concat({begin:/\{/,end:/\}/,keywords:c,contains:["self"].concat(N)});const A=[].concat(T,h.contains),I=A.concat([{begin:/(\s*)\(/,end:/\)/,keywords:c,contains:["self"].concat(A)}]),M={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"}}]},L={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:{_:[...$d,...ep]}},B={label:"use_strict",className:"meta",relevance:10,begin:/^\s*['"]use (strict|asm)['"]/},z={variants:[{match:[/function/,/\s+/,l,/(?=\s*\()/]},{match:[/function/,/\s*(?=\()/]}],className:{1:"keyword",3:"title.function"},label:"func.def",contains:[M],illegal:/%/},U={relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"};function W(H){return e.concat("(?!",H.join("|"),")")}const K={match:e.concat(/\b/,W([...tp,"super","import"].map(H=>`${H}\\s*\\(`)),l,e.lookahead(/\s*\(/)),className:"title.function",relevance:0},q={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:/\(\)/},M]},G="(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|"+n.UNDERSCORE_IDENT_RE+")\\s*=>",D={match:[/const|var|let/,/\s+/,l,/\s*/,/=\s*/,/(async\s*)?/,e.lookahead(G)],keywords:"async",className:{1:"keyword",3:"title.function"},contains:[M]};return{name:"JavaScript",aliases:["js","jsx","mjs","cjs"],keywords:c,exports:{PARAMS_CONTAINS:I,CLASS_REFERENCE:L},illegal:/#(?![$_A-z])/,contains:[n.SHEBANG({label:"shebang",binary:"node",relevance:5}),B,n.APOS_STRING_MODE,n.QUOTE_STRING_MODE,_,b,k,E,T,{match:/\$\d+/},g,L,{scope:"attr",match:l+e.lookahead(":"),relevance:0},D,{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:G,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:s.begin,end:s.end},{match:o},{begin:i.begin,"on:begin":i.isTrulyOpeningTag,end:i.end}],subLanguage:"xml",contains:[{begin:i.begin,end:i.end,skip:!0,contains:["self"]}]}]},z,{beginKeywords:"while if switch catch for"},{begin:"\\b(?!function)"+n.UNDERSCORE_IDENT_RE+"\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{",returnBegin:!0,label:"func.def",contains:[M,n.inherit(n.TITLE_MODE,{begin:l,className:"title.function"})]},{match:/\.\.\./,relevance:0},q,{match:"\\$"+l,relevance:0},{match:[/\bconstructor(?=\s*\()/],className:{1:"title.function"},contains:[M]},K,U,R,Y,{match:/\$[(.]/}]}}const Zs="[A-Za-z$_][0-9A-Za-z$_]*",np=["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"],lp=["true","false","null","undefined","NaN","Infinity"],sp=["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"],ip=["Error","EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"],op=["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],rp=["arguments","this","super","console","window","document","localStorage","sessionStorage","module","global"],ap=[].concat(op,sp,ip);function Y2(n){const e=n.regex,t=(H,{after:F})=>{const J=""+H[0].slice(1);return H.input.indexOf(J,F)!==-1},l=Zs,s={begin:"<>",end:">"},o=/<[A-Za-z0-9\\._:-]+\s*\/>/,i={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/,isTrulyOpeningTag:(H,F)=>{const J=H[0].length+H.index,Z=H.input[J];if(Z==="<"||Z===","){F.ignoreMatch();return}Z===">"&&(t(H,{after:J})||F.ignoreMatch());let X;const $=H.input.substring(J);if(X=$.match(/^\s*=/)){F.ignoreMatch();return}if((X=$.match(/^\s+extends\s+/))&&X.index===0){F.ignoreMatch();return}}},c={$pattern:Zs,keyword:np,literal:lp,built_in:ap,"variable.language":rp},u="[0-9](_?[0-9])*",d=`\\.(${u})`,m="0|[1-9](_?[0-9])*|0[0-7]*[89][0-9]*",g={className:"number",variants:[{begin:`(\\b(${m})((${d})|\\.)?|(${d}))[eE][+-]?(${u})\\b`},{begin:`\\b(${m})\\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},h={className:"subst",begin:"\\$\\{",end:"\\}",keywords:c,contains:[]},_={begin:".?html`",end:"",starts:{end:"`",returnEnd:!1,contains:[n.BACKSLASH_ESCAPE,h],subLanguage:"xml"}},b={begin:".?css`",end:"",starts:{end:"`",returnEnd:!1,contains:[n.BACKSLASH_ESCAPE,h],subLanguage:"css"}},k={begin:".?gql`",end:"",starts:{end:"`",returnEnd:!1,contains:[n.BACKSLASH_ESCAPE,h],subLanguage:"graphql"}},E={className:"string",begin:"`",end:"`",contains:[n.BACKSLASH_ESCAPE,h]},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,_,b,k,E,{match:/\$\d+/},g];h.contains=N.concat({begin:/\{/,end:/\}/,keywords:c,contains:["self"].concat(N)});const A=[].concat(T,h.contains),I=A.concat([{begin:/(\s*)\(/,end:/\)/,keywords:c,contains:["self"].concat(A)}]),M={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"}}]},L={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:{_:[...sp,...ip]}},B={label:"use_strict",className:"meta",relevance:10,begin:/^\s*['"]use (strict|asm)['"]/},z={variants:[{match:[/function/,/\s+/,l,/(?=\s*\()/]},{match:[/function/,/\s*(?=\()/]}],className:{1:"keyword",3:"title.function"},label:"func.def",contains:[M],illegal:/%/},U={relevance:0,match:/\b[A-Z][A-Z_0-9]+\b/,className:"variable.constant"};function W(H){return e.concat("(?!",H.join("|"),")")}const K={match:e.concat(/\b/,W([...op,"super","import"].map(H=>`${H}\\s*\\(`)),l,e.lookahead(/\s*\(/)),className:"title.function",relevance:0},q={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:/\(\)/},M]},G="(\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)|"+n.UNDERSCORE_IDENT_RE+")\\s*=>",D={match:[/const|var|let/,/\s+/,l,/\s*/,/=\s*/,/(async\s*)?/,e.lookahead(G)],keywords:"async",className:{1:"keyword",3:"title.function"},contains:[M]};return{name:"JavaScript",aliases:["js","jsx","mjs","cjs"],keywords:c,exports:{PARAMS_CONTAINS:I,CLASS_REFERENCE:L},illegal:/#(?![$_A-z])/,contains:[n.SHEBANG({label:"shebang",binary:"node",relevance:5}),B,n.APOS_STRING_MODE,n.QUOTE_STRING_MODE,_,b,k,E,T,{match:/\$\d+/},g,L,{scope:"attr",match:l+e.lookahead(":"),relevance:0},D,{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:G,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:s.begin,end:s.end},{match:o},{begin:i.begin,"on:begin":i.isTrulyOpeningTag,end:i.end}],subLanguage:"xml",contains:[{begin:i.begin,end:i.end,skip:!0,contains:["self"]}]}]},z,{beginKeywords:"while if switch catch for"},{begin:"\\b(?!function)"+n.UNDERSCORE_IDENT_RE+"\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{",returnBegin:!0,label:"func.def",contains:[M,n.inherit(n.TITLE_MODE,{begin:l,className:"title.function"})]},{match:/\.\.\./,relevance:0},q,{match:"\\$"+l,relevance:0},{match:[/\bconstructor(?=\s*\()/],className:{1:"title.function"},contains:[M]},K,U,R,Y,{match:/\$[(.]/}]}}function X2(n){const e=n.regex,t=Y2(n),l=Zs,s=["any","void","number","boolean","string","object","never","symbol","bigint","unknown"],o={begin:[/namespace/,/\s+/,n.IDENT_RE],beginScope:{1:"keyword",3:"title.class"}},i={beginKeywords:"interface",end:/\{/,excludeEnd:!0,keywords:{keyword:"interface extends",built_in:s},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:Zs,keyword:np.concat(u),literal:lp,built_in:ap.concat(s),"variable.language":rp},m={className:"meta",begin:"@"+l},g=(k,E,w)=>{const T=k.contains.findIndex(N=>N.label===E);if(T===-1)throw new Error("can not find mode to replace");k.contains.splice(T,1,w)};Object.assign(t.keywords,d),t.exports.PARAMS_CONTAINS.push(m);const h=t.contains.find(k=>k.scope==="attr"),_=Object.assign({},h,{match:e.concat(l,e.lookahead(/\s*\?:/))});t.exports.PARAMS_CONTAINS.push([t.exports.CLASS_REFERENCE,h,_]),t.contains=t.contains.concat([m,o,i,_]),g(t,"shebang",n.SHEBANG()),g(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 J2(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:/#/},m={begin:/\{\{/,relevance:0},g={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,m,d]},{begin:/([fF][rR]|[rR][fF]|[fF])"""/,end:/"""/,contains:[n.BACKSLASH_ESCAPE,u,m,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,m,d]},{begin:/([fF][rR]|[rR][fF]|[fF])"/,end:/"/,contains:[n.BACKSLASH_ESCAPE,m,d]},n.APOS_STRING_MODE,n.QUOTE_STRING_MODE]},h="[0-9](_?[0-9])*",_=`(\\b(${h}))?\\.(${h})|\\b(${h})\\.`,b=`\\b|${l.join("|")}`,k={className:"number",relevance:0,variants:[{begin:`(\\b(${h})|(${_}))[eE][+-]?(${h})[jJ]?(?=${b})`},{begin:`(${_})[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(${h})[jJ](?=${b})`}]},E={className:"comment",begin:e.lookahead(/# type:/),end:/$/,keywords:c,contains:[{begin:/# type:/},{begin:/#/,end:/\b\B/,endsWithParent:!0}]},w={className:"params",variants:[{className:"",begin:/\(\s*\)/,skip:!0},{begin:/\(/,end:/\)/,excludeBegin:!0,excludeEnd:!0,keywords:c,contains:["self",u,k,g,n.HASH_COMMENT_MODE]}]};return d.contains=[g,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"},g,E,n.HASH_COMMENT_MODE,{match:[/\bdef/,/\s+/,t],scope:{1:"keyword",3:"title.function"},contains:[w]},{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,w,g]}]}}function Q2(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:"",contains:[n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE,{className:"string",variants:[n.QUOTE_STRING_MODE,n.APOS_STRING_MODE,{begin:"`",end:"`"}]},{className:"number",variants:[{match:/-?\b0[xX]\.[a-fA-F0-9](_?[a-fA-F0-9])*[pP][+-]?\d(_?\d)*i?/,relevance:0},{match:/-?\b0[xX](_?[a-fA-F0-9])+((\.([a-fA-F0-9](_?[a-fA-F0-9])*)?)?[pP][+-]?\d(_?\d)*)?i?/,relevance:0},{match:/-?\b0[oO](_?[0-7])*i?/,relevance:0},{match:/-?\.\d(_?\d)*([eE][+-]?\d(_?\d)*)?i?/,relevance:0},{match:/-?\b\d(_?\d)*(\.(\d(_?\d)*)?)?([eE][+-]?\d(_?\d)*)?i?/,relevance:0}]},{begin:/:=/},{className:"function",beginKeywords:"func",end:"\\s*(\\{|$)",excludeEnd:!0,contains:[n.TITLE_MODE,{className:"params",begin:/\(/,end:/\)/,endsParent:!0,keywords:o,illegal:/["']/}]}]}}function x2(n){const e=n.regex,t={},l={begin:/\$\{/,end:/\}/,contains:["self",{begin:/:-/,contains:[t]}]};Object.assign(t,{className:"variable",variants:[{begin:e.concat(/\$[\w\d#@][\w\d_]*/,"(?![\\w\\d])(?![$])")},l]});const s={className:"subst",begin:/\$\(/,end:/\)/,contains:[n.BACKSLASH_ESCAPE]},o=n.inherit(n.COMMENT(),{match:[/(^|\s)/,/#.*$/],scope:{2:"comment"}}),i={begin:/<<-?\s*(?=\w+)/,starts:{contains:[n.END_SAME_AS_BEGIN({begin:/(\w+)/,end:/(\w+)/,className:"string"})]}},c={className:"string",begin:/"/,end:/"/,contains:[n.BACKSLASH_ESCAPE,t,s]};s.contains.push(c);const u={match:/\\"/},d={className:"string",begin:/'/,end:/'/},m={match:/\\'/},g={begin:/\$?\(\(/,end:/\)\)/,contains:[{begin:/\d+#[0-9a-f]+/,className:"number"},n.NUMBER_MODE,t]},h=["fish","bash","zsh","sh","csh","ksh","tcsh","dash","scsh"],_=n.SHEBANG({binary:`(${h.join("|")})`,relevance:10}),b={className:"function",begin:/\w[\w\d_]*\s*\(\s*\)\s*\{/,returnBegin:!0,contains:[n.inherit(n.TITLE_MODE,{begin:/\w[\w\d_]*/})],relevance:0},k=["if","then","else","elif","fi","time","for","while","until","in","do","done","case","esac","coproc","function","select"],E=["true","false"],w={match:/(\/[a-z._-]+)+/},T=["break","cd","continue","eval","exec","exit","export","getopts","hash","pwd","readonly","return","shift","test","times","trap","umask","unset"],N=["alias","bind","builtin","caller","command","declare","echo","enable","help","let","local","logout","mapfile","printf","read","readarray","source","sudo","type","typeset","ulimit","unalias"],A=["autoload","bg","bindkey","bye","cap","chdir","clone","comparguments","compcall","compctl","compdescribe","compfiles","compgroups","compquote","comptags","comptry","compvalues","dirs","disable","disown","echotc","echoti","emulate","fc","fg","float","functions","getcap","getln","history","integer","jobs","kill","limit","log","noglob","popd","print","pushd","pushln","rehash","sched","setcap","setopt","stat","suspend","ttyctl","unfunction","unhash","unlimit","unsetopt","vared","wait","whence","where","which","zcompile","zformat","zftp","zle","zmodload","zparseopts","zprof","zpty","zregexparse","zsocket","zstyle","ztcp"],I=["chcon","chgrp","chown","chmod","cp","dd","df","dir","dircolors","ln","ls","mkdir","mkfifo","mknod","mktemp","mv","realpath","rm","rmdir","shred","sync","touch","truncate","vdir","b2sum","base32","base64","cat","cksum","comm","csplit","cut","expand","fmt","fold","head","join","md5sum","nl","numfmt","od","paste","ptx","pr","sha1sum","sha224sum","sha256sum","sha384sum","sha512sum","shuf","sort","split","sum","tac","tail","tr","tsort","unexpand","uniq","wc","arch","basename","chroot","date","dirname","du","echo","env","expr","factor","groups","hostid","id","link","logname","nice","nohup","nproc","pathchk","pinky","printenv","printf","pwd","readlink","runcon","seq","sleep","stat","stdbuf","stty","tee","test","timeout","tty","uname","unlink","uptime","users","who","whoami","yes"];return{name:"Bash",aliases:["sh","zsh"],keywords:{$pattern:/\b[a-z][a-z0-9._-]+\b/,keyword:k,literal:E,built_in:[...T,...N,"set","shopt",...A,...I]},contains:[_,n.SHEBANG(),b,g,o,i,w,c,u,d,m,t]}}function $2(n){const e={className:"attr",begin:/"(\\.|[^\\"\r\n])*"(?=\s*:)/,relevance:1.01},t={match:/[{}[\],:]/,className:"punctuation",relevance:0},l=["true","false","null"],s={scope:"literal",beginKeywords:l.join(" ")};return{name:"JSON",aliases:["jsonc"],keywords:{literal:l},contains:[e,t,n.QUOTE_STRING_MODE,s,n.C_NUMBER_MODE,n.C_LINE_COMMENT_MODE,n.C_BLOCK_COMMENT_MODE],illegal:"\\S"}}function ey(n){const e="true false yes no null",t="[\\w#;/?:@&=+$,.~*'()[\\]]+",l={className:"attr",variants:[{begin:/[\w*@][\w*@ :()\./-]*:(?=[ \t]|$)/},{begin:/"[\w*@][\w*@ :()\./-]*":(?=[ \t]|$)/},{begin:/'[\w*@][\w*@ :()\./-]*':(?=[ \t]|$)/}]},s={className:"template-variable",variants:[{begin:/\{\{/,end:/\}\}/},{begin:/%\{/,end:/\}/}]},o={className:"string",relevance:0,begin:/'/,end:/'/,contains:[{match:/''/,scope:"char.escape",relevance:0}]},i={className:"string",relevance:0,variants:[{begin:/"/,end:/"/},{begin:/\S+/}],contains:[n.BACKSLASH_ESCAPE,s]},c=n.inherit(i,{variants:[{begin:/'/,end:/'/,contains:[{begin:/''/,relevance:0}]},{begin:/"/,end:/"/},{begin:/[^\s,{}[\]]+/}]}),h={className:"number",begin:"\\b"+"[0-9]{4}(-[0-9][0-9]){0,2}"+"([Tt \\t][0-9][0-9]?(:[0-9][0-9]){2})?"+"(\\.[0-9]*)?"+"([ \\t])*(Z|[-+][0-9][0-9]?(:[0-9][0-9])?)?"+"\\b"},_={end:",",endsWithParent:!0,excludeEnd:!0,keywords:e,relevance:0},b={begin:/\{/,end:/\}/,contains:[_],illegal:"\\n",relevance:0},k={begin:"\\[",end:"\\]",contains:[_],illegal:"\\n",relevance:0},E=[l,{className:"meta",begin:"^---\\s*$",relevance:10},{className:"string",begin:"[\\|>]([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}},h,{className:"number",begin:n.C_NUMBER_RE+"\\b",relevance:0},b,k,o,i],w=[...E];return w.pop(),w.push(c),_.contains=w,{name:"YAML",case_insensitive:!0,aliases:["yml"],contains:E}}function ty(n){const e=n.regex,t={begin:/<\/?[A-Za-z_]/,end:">",subLanguage:"xml",relevance:0},l={begin:"^[-\\*]{3,}",end:"$"},s={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},i={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}/}]},m={className:"emphasis",contains:[],variants:[{begin:/\*(?![*\s])/,end:/\*/},{begin:/_(?![_\s])/,end:/_/,relevance:0}]},g=n.inherit(d,{contains:[]}),h=n.inherit(m,{contains:[]});d.contains.push(h),m.contains.push(g);let _=[t,u];return[d,m,g,h].forEach(w=>{w.contains=w.contains.concat(_)}),_=_.concat(d,m),{name:"Markdown",aliases:["md","mkdown","mkd"],contains:[{className:"section",variants:[{begin:"^#{1,6}",end:"$",contains:_},{begin:"(?=^.+?\\n[=-]{2,}$)",contains:[{begin:"^[=-]*$"},{begin:"^",end:"\\n",contains:_}]}]},t,o,d,m,{className:"quote",begin:"^>\\s+",contains:_,end:"$"},s,l,u,i,{scope:"literal",match:/&([a-zA-Z0-9]+|#[0-9]{1,7}|#[Xx][0-9a-fA-F]{1,6});/}]}}const ny=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_-]*/}}),ly=["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"],sy=["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"],iy=[...ly,...sy],oy=["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(),ry=["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(),ay=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"].sort().reverse(),cy=["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 uy(n){const e=n.regex,t=ny(n),l={begin:/-(webkit|moz|ms|o)-(?=[a-z])/},s="and or not only",o=/@-?\w[\w]*(-\w+)*/,i="[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:"\\."+i,relevance:0},t.ATTRIBUTE_SELECTOR_MODE,{className:"selector-pseudo",variants:[{begin:":("+ry.join("|")+")"},{begin:":(:)?("+ay.join("|")+")"}]},t.CSS_VARIABLE,{className:"attribute",begin:"\\b("+cy.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:s,attribute:oy.join(" ")},contains:[{begin:/[a-z-]+(?=:)/,className:"attribute"},...c,t.CSS_NUMBER_MODE]}]},{className:"selector-tag",begin:"\\b("+iy.join("|")+")\\b"}]}}function fy(n){const e=n.regex,t=n.COMMENT("--","$"),l={scope:"string",variants:[{begin:/'/,end:/'/,contains:[{match:/''/}]}]},s={begin:/"/,end:/"/,contains:[{match:/""/}]},o=["true","false","unknown"],i=["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"],m=["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"],g=["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"],h=["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"],_=m,b=[...d,...u].filter(I=>!m.includes(I)),k={scope:"variable",match:/@[a-z0-9][a-z0-9_]*/},E={scope:"operator",match:/[-+*/=%^~]|&&?|\|\|?|!=?|<(?:=>?|<|>)?|>[>=]?/,relevance:0},w={match:e.concat(/\b/,e.either(..._),/\s*\(/),relevance:0,keywords:{built_in:_}};function T(I){return e.concat(/\b/,e.either(...I.map(M=>M.replace(/\s+/,"\\s+"))),/\b/)}const N={scope:"keyword",match:T(h),relevance:0};function A(I,{exceptions:M,when:R}={}){const L=R;return M=M||[],I.map(B=>B.match(/\|\d+$/)||M.includes(B)?B:L(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:g},contains:[{scope:"type",match:T(i)},N,w,k,l,s,n.C_NUMBER_MODE,n.C_BLOCK_COMMENT_MODE,t,E]}}function dy(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,s={className:"symbol",begin:/&[a-z]+;|[0-9]+;|[a-f0-9]+;/},o={begin:/\s/,contains:[{className:"keyword",begin:/#?[a-z_][a-z1-9_-]+/,illegal:/\n/}]},i=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:/,relevance:0,contains:[{className:"attr",begin:l,relevance:0},{begin:/=\s*/,relevance:0,contains:[{className:"string",endsParent:!0,variants:[{begin:/"/,end:/"/,contains:[s]},{begin:/'/,end:/'/,contains:[s]},{begin:/[^\s"'=<>`]+/}]}]}]};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,i,{begin:/\[/,end:/\]/,contains:[{className:"meta",begin://,contains:[o,i,u,c]}]}]},n.COMMENT(//,{relevance:10}),{begin://,relevance:10},s,{className:"meta",end:/\?>/,variants:[{begin:/<\?xml/,relevance:10,contains:[u]},{begin:/<\?[a-z][a-z0-9]+/}]},{className:"tag",begin:/
-
+
diff --git a/frontend/src/lib/components/notes/InternalLinkPicker.svelte b/frontend/src/lib/components/notes/InternalLinkPicker.svelte
index c336a9b..8c49f1e 100644
--- a/frontend/src/lib/components/notes/InternalLinkPicker.svelte
+++ b/frontend/src/lib/components/notes/InternalLinkPicker.svelte
@@ -1,5 +1,7 @@