diff --git a/cmd/verstak-gui/bindings_activity.go b/cmd/verstak-gui/bindings_activity.go index beab05d..0c96812 100644 --- a/cmd/verstak-gui/bindings_activity.go +++ b/cmd/verstak-gui/bindings_activity.go @@ -19,6 +19,7 @@ func (a *App) ListSystemViews() []SystemViewDTO { return []SystemViewDTO{ {ID: "today", Label: i18n.TF("ru", "nav.today")}, {ID: "inbox", Label: i18n.TF("ru", "nav.inbox")}, + {ID: "trash", Label: i18n.TF("ru", "nav.trash")}, {ID: "journal", Label: i18n.TF("ru", "nav.journal")}, {ID: "activity", Label: i18n.TF("ru", "nav.activity")}, } diff --git a/cmd/verstak-gui/bindings_trash.go b/cmd/verstak-gui/bindings_trash.go new file mode 100644 index 0000000..fbb197a --- /dev/null +++ b/cmd/verstak-gui/bindings_trash.go @@ -0,0 +1,98 @@ +package main + +import ( + "os" + "os/exec" + "path/filepath" + "time" +) + +type TrashDTO struct { + TrashPath string `json:"trashPath"` + Nodes []TrashNodeDTO `json:"nodes"` + Entries []TrashEntryDTO `json:"entries"` +} + +type TrashNodeDTO struct { + ID string `json:"id"` + Title string `json:"title"` + Type string `json:"type"` + FsPath string `json:"fsPath"` + DeletedAt string `json:"deletedAt"` +} + +type TrashEntryDTO struct { + Name string `json:"name"` + Path string `json:"path"` + IsDir bool `json:"isDir"` + Size int64 `json:"size"` + ModifiedAt string `json:"modifiedAt"` +} + +func (a *App) ListTrash() (*TrashDTO, error) { + if err := a.requireVault(); err != nil { + return nil, err + } + trashPath := filepath.Join(a.vault, ".verstak", "trash") + + deleted, err := a.nodes.ListDeleted() + if err != nil { + return nil, err + } + nodes := make([]TrashNodeDTO, 0, len(deleted)) + for _, n := range deleted { + deletedAt := "" + if n.DeletedAt != nil { + deletedAt = n.DeletedAt.Format(time.RFC3339) + } + nodes = append(nodes, TrashNodeDTO{ + ID: n.ID, + Title: n.Title, + Type: n.Type, + FsPath: n.FsPath, + DeletedAt: deletedAt, + }) + } + + entries, err := listTrashEntries(trashPath) + if err != nil { + return nil, err + } + return &TrashDTO{TrashPath: trashPath, Nodes: nodes, Entries: entries}, nil +} + +func listTrashEntries(trashPath string) ([]TrashEntryDTO, error) { + if err := os.MkdirAll(trashPath, 0o750); err != nil { + return nil, err + } + dirEntries, err := os.ReadDir(trashPath) + if err != nil { + return nil, err + } + out := make([]TrashEntryDTO, 0, len(dirEntries)) + for _, entry := range dirEntries { + info, err := entry.Info() + if err != nil { + continue + } + out = append(out, TrashEntryDTO{ + Name: entry.Name(), + Path: filepath.Join(trashPath, entry.Name()), + IsDir: entry.IsDir(), + Size: info.Size(), + ModifiedAt: info.ModTime().UTC().Format(time.RFC3339), + }) + } + return out, nil +} + +func (a *App) OpenTrashFolder() error { + if err := a.requireVault(); err != nil { + return err + } + trashPath := filepath.Join(a.vault, ".verstak", "trash") + if err := os.MkdirAll(trashPath, 0o750); err != nil { + return err + } + return exec.Command("xdg-open", trashPath).Run() +} diff --git a/cmd/verstak-gui/frontend-dist/assets/main-4y6wyoK9.js b/cmd/verstak-gui/frontend-dist/assets/main-4y6wyoK9.js new file mode 100644 index 0000000..8d9bf05 --- /dev/null +++ b/cmd/verstak-gui/frontend-dist/assets/main-4y6wyoK9.js @@ -0,0 +1,3 @@ +var lf=Object.defineProperty;var nf=(l,e,t)=>e in l?lf(l,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):l[e]=t;var Fl=(l,e,t)=>nf(l,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"]'))n(s);new MutationObserver(s=>{for(const o of s)if(o.type==="childList")for(const r of o.addedNodes)r.tagName==="LINK"&&r.rel==="modulepreload"&&n(r)}).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 n(s){if(s.ep)return;s.ep=!0;const o=t(s);fetch(s.href,o)}})();function $(){}function Ao(l){return l()}function Dn(){return Object.create(null)}function me(l){l.forEach(Ao)}function vt(l){return typeof l=="function"}function Ze(l,e){return l!=l?e==e:l!==e||l&&typeof l=="object"||typeof l=="function"}let el;function il(l,e){return l===e?!0:(el||(el=document.createElement("a")),el.href=e,l===el.href)}function sf(l){return Object.keys(l).length===0}function Mn(l){return l??""}const Bl=typeof window<"u"?window:typeof globalThis<"u"?globalThis:global;function a(l,e){l.appendChild(e)}function S(l,e,t){l.insertBefore(e,t||null)}function C(l){l.parentNode&&l.parentNode.removeChild(l)}function Fe(l,e){for(let t=0;tl.removeEventListener(e,t,n)}function Hl(l){return function(e){return e.preventDefault(),l.call(this,e)}}function We(l){return function(e){return e.stopPropagation(),l.call(this,e)}}function mt(l){return function(e){e.target===this&&l.call(this,e)}}function i(l,e,t){t==null?l.removeAttribute(e):l.getAttribute(e)!==t&&l.setAttribute(e,t)}function rl(l){return l===""?null:+l}function of(l){return Array.from(l.childNodes)}function B(l,e){e=""+e,l.data!==e&&(l.data=e)}function be(l,e){l.value=e??""}function ct(l,e,t,n){t==null?l.style.removeProperty(e):l.style.setProperty(e,t,"")}function _t(l,e,t){for(let n=0;n{const s=l.$$.callbacks[e];if(s){const o=rf(e,t,{cancelable:n});return s.slice().forEach(r=>{r.call(l,o)}),!o.defaultPrevented}return!0}}function Po(l,e){const t=l.$$.callbacks[e.type];t&&t.slice().forEach(n=>n.call(this,e))}const Pt=[],In=[];let Lt=[];const An=[],af=Promise.resolve();let Ol=!1;function cf(){Ol||(Ol=!0,af.then(Lo))}function Et(l){Lt.push(l)}const Pl=new Set;let At=0;function Lo(){if(At!==0)return;const l=Ut;do{try{for(;Atl.indexOf(n)===-1?e.push(n):t.push(n)),t.forEach(n=>n()),Lt=e}const sl=new Set;let jt;function st(){jt={r:0,c:[],p:jt}}function it(){jt.r||me(jt.c),jt=jt.p}function ae(l,e){l&&l.i&&(sl.delete(l),l.i(e))}function de(l,e,t,n){if(l&&l.o){if(sl.has(l))return;sl.add(l),jt.c.push(()=>{sl.delete(l),n&&(t&&l.d(1),n())}),l.o(e)}else n&&n()}function ce(l){return(l==null?void 0:l.length)!==void 0?l:Array.from(l)}function Ro(l,e){de(l,1,1,()=>{e.delete(l.key)})}function zo(l,e,t,n,s,o,r,f,c,d,v,_){let h=l.length,k=o.length,b=h;const y={};for(;b--;)y[l[b].key]=b;const w=[],j=new Map,E=new Map,T=[];for(b=k;b--;){const M=_(s,o,b),R=t(M);let V=r.get(R);V?T.push(()=>V.p(M,e)):(V=d(R,M),V.c()),j.set(R,w[b]=V),R in y&&E.set(R,Math.abs(b-y[R]))}const N=new Set,D=new Set;function A(M){ae(M,1),M.m(f,v),r.set(M.key,M),v=M.first,k--}for(;h&&k;){const M=w[k-1],R=l[h-1],V=M.key,W=R.key;M===R?(v=M.first,h--,k--):j.has(W)?!r.has(V)||N.has(V)?A(M):D.has(W)?h--:E.get(V)>E.get(W)?(D.add(V),A(M)):(N.add(W),h--):(c(R,r),h--)}for(;h--;){const M=l[h];j.has(M.key)||c(M,r)}for(;k;)A(w[k-1]);return me(T),w}function Qe(l){l&&l.c()}function Je(l,e,t){const{fragment:n,after_update:s}=l.$$;n&&n.m(e,t),Et(()=>{const o=l.$$.on_mount.map(Ao).filter(vt);l.$$.on_destroy?l.$$.on_destroy.push(...o):me(o),l.$$.on_mount=[]}),s.forEach(Et)}function qe(l,e){const t=l.$$;t.fragment!==null&&(uf(t.after_update),me(t.on_destroy),t.fragment&&t.fragment.d(e),t.on_destroy=t.fragment=null,t.ctx=[])}function df(l,e){l.$$.dirty[0]===-1&&(Pt.push(l),cf(),l.$$.dirty.fill(0)),l.$$.dirty[e/31|0]|=1<{const b=k.length?k[0]:h;return d.ctx&&s(d.ctx[_],d.ctx[_]=b)&&(!d.skip_bound&&d.bound[_]&&d.bound[_](b),v&&df(l,_)),h}):[],d.update(),v=!0,me(d.before_update),d.fragment=n?n(d.ctx):!1,e.target){if(e.hydrate){const _=of(e.target);d.fragment&&d.fragment.l(_),_.forEach(C)}else d.fragment&&d.fragment.c();e.intro&&ae(l.$$.fragment),Je(l,e.target,e.anchor),Lo()}Ht(c)}class $e{constructor(){Fl(this,"$$");Fl(this,"$$set")}$destroy(){qe(this,1),this.$destroy=$}$on(e,t){if(!vt(t))return $;const n=this.$$.callbacks[e]||(this.$$.callbacks[e]=[]);return n.push(t),()=>{const s=n.indexOf(t);s!==-1&&n.splice(s,1)}}$set(e){this.$$set&&!sf(e)&&(this.$$.skip_bound=!0,this.$$set(e),this.$$.skip_bound=!1)}}const pf="4";typeof window<"u"&&(window.__svelte||(window.__svelte={v:new Set})).v.add(pf);function mf(l){let e,t;return{c(){e=Q("path"),t=Q("polyline"),i(e,"d","M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"),i(t,"points","14 2 14 8 20 8")},m(n,s){S(n,e,s),S(n,t,s)},d(n){n&&(C(e),C(t))}}}function _f(l){let e,t,n,s,o;return{c(){e=Q("path"),t=Q("polyline"),n=Q("line"),s=Q("line"),o=Q("polyline"),i(e,"d","M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"),i(t,"points","14 2 14 8 20 8"),i(n,"x1","16"),i(n,"y1","13"),i(n,"x2","8"),i(n,"y2","13"),i(s,"x1","16"),i(s,"y1","17"),i(s,"x2","8"),i(s,"y2","17"),i(o,"points","10 9 9 9 8 9")},m(r,f){S(r,e,f),S(r,t,f),S(r,n,f),S(r,s,f),S(r,o,f)},d(r){r&&(C(e),C(t),C(n),C(s),C(o))}}}function vf(l){let e,t;return{c(){e=Q("polyline"),t=Q("polyline"),i(e,"points","16 18 22 12 16 6"),i(t,"points","8 6 2 12 8 18")},m(n,s){S(n,e,s),S(n,t,s)},d(n){n&&(C(e),C(t))}}}function hf(l){let e,t,n,s;return{c(){e=Q("path"),t=Q("polyline"),n=Q("line"),s=Q("rect"),i(e,"d","M21 8v13a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8"),i(t,"points","7 3 12 8 17 3"),i(n,"x1","3"),i(n,"y1","8"),i(n,"x2","21"),i(n,"y2","8"),i(s,"x","10"),i(s,"y","12"),i(s,"width","4"),i(s,"height","4"),i(s,"rx","1")},m(o,r){S(o,e,r),S(o,t,r),S(o,n,r),S(o,s,r)},d(o){o&&(C(e),C(t),C(n),C(s))}}}function gf(l){let e,t,n,s,o;return{c(){e=Q("path"),t=Q("polyline"),n=Q("line"),s=Q("line"),o=Q("line"),i(e,"d","M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"),i(t,"points","14 2 14 8 20 8"),i(n,"x1","9"),i(n,"y1","12"),i(n,"x2","15"),i(n,"y2","12"),i(s,"x1","9"),i(s,"y1","15"),i(s,"x2","13"),i(s,"y2","15"),i(o,"x1","12"),i(o,"y1","15"),i(o,"x2","12"),i(o,"y2","18")},m(r,f){S(r,e,f),S(r,t,f),S(r,n,f),S(r,s,f),S(r,o,f)},d(r){r&&(C(e),C(t),C(n),C(s),C(o))}}}function bf(l){let e,t,n,s,o,r;return{c(){e=Q("path"),t=Q("polyline"),n=Q("line"),s=Q("line"),o=Q("line"),r=Q("line"),i(e,"d","M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"),i(t,"points","14 2 14 8 20 8"),i(n,"x1","8"),i(n,"y1","12"),i(n,"x2","16"),i(n,"y2","12"),i(s,"x1","8"),i(s,"y1","16"),i(s,"x2","16"),i(s,"y2","16"),i(o,"x1","8"),i(o,"y1","14"),i(o,"x2","12"),i(o,"y2","14"),i(r,"x1","12"),i(r,"y1","12"),i(r,"x2","12"),i(r,"y2","18")},m(f,c){S(f,e,c),S(f,t,c),S(f,n,c),S(f,s,c),S(f,o,c),S(f,r,c)},d(f){f&&(C(e),C(t),C(n),C(s),C(o),C(r))}}}function kf(l){let e,t,n,s;return{c(){e=Q("path"),t=Q("polyline"),n=Q("line"),s=Q("line"),i(e,"d","M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"),i(t,"points","14 2 14 8 20 8"),i(n,"x1","16"),i(n,"y1","13"),i(n,"x2","8"),i(n,"y2","13"),i(s,"x1","16"),i(s,"y1","17"),i(s,"x2","8"),i(s,"y2","17")},m(o,r){S(o,e,r),S(o,t,r),S(o,n,r),S(o,s,r)},d(o){o&&(C(e),C(t),C(n),C(s))}}}function yf(l){let e,t,n,s,o;return{c(){e=Q("path"),t=Q("polyline"),n=Q("line"),s=Q("line"),o=Q("line"),i(e,"d","M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"),i(t,"points","14 2 14 8 20 8"),i(n,"x1","8"),i(n,"y1","12"),i(n,"x2","16"),i(n,"y2","12"),i(s,"x1","8"),i(s,"y1","16"),i(s,"x2","16"),i(s,"y2","16"),i(o,"x1","8"),i(o,"y1","14"),i(o,"x2","12"),i(o,"y2","14")},m(r,f){S(r,e,f),S(r,t,f),S(r,n,f),S(r,s,f),S(r,o,f)},d(r){r&&(C(e),C(t),C(n),C(s),C(o))}}}function wf(l){let e,t,n;return{c(){e=Q("path"),t=Q("circle"),n=Q("circle"),i(e,"d","M9 18V5l12-2v13"),i(t,"cx","6"),i(t,"cy","18"),i(t,"r","3"),i(n,"cx","18"),i(n,"cy","16"),i(n,"r","3")},m(s,o){S(s,e,o),S(s,t,o),S(s,n,o)},d(s){s&&(C(e),C(t),C(n))}}}function Cf(l){let e,t;return{c(){e=Q("rect"),t=Q("polyline"),i(e,"x","2"),i(e,"y","4"),i(e,"width","20"),i(e,"height","16"),i(e,"rx","2"),i(t,"points","10 9 16 12 10 15 10 9")},m(n,s){S(n,e,s),S(n,t,s)},d(n){n&&(C(e),C(t))}}}function Sf(l){let e,t,n;return{c(){e=Q("rect"),t=Q("circle"),n=Q("polyline"),i(e,"x","3"),i(e,"y","3"),i(e,"width","18"),i(e,"height","18"),i(e,"rx","2"),i(e,"ry","2"),i(t,"cx","8.5"),i(t,"cy","8.5"),i(t,"r","1.5"),i(n,"points","21 15 16 10 5 21")},m(s,o){S(s,e,o),S(s,t,o),S(s,n,o)},d(s){s&&(C(e),C(t),C(n))}}}function jf(l){let e;return{c(){e=Q("path"),i(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,n){S(t,e,n)},d(t){t&&C(e)}}}function Ef(l){let e;function t(o,r){return o[0]==="folder"?jf:o[0]==="image"?Sf:o[0]==="video"?Cf:o[0]==="audio"?wf:o[0]==="pdf"?yf:o[0]==="document"?kf:o[0]==="spreadsheet"?bf:o[0]==="presentation"?gf:o[0]==="archive"?hf:o[0]==="code"?vf:o[0]==="text"?_f:mf}let n=t(l),s=n(l);return{c(){e=Q("svg"),s.c(),i(e,"width",l[1]),i(e,"height",l[1]),i(e,"viewBox","0 0 24 24"),i(e,"fill","none"),i(e,"stroke","currentColor"),i(e,"stroke-width","1.5"),i(e,"stroke-linecap","round"),i(e,"stroke-linejoin","round"),i(e,"xmlns","http://www.w3.org/2000/svg")},m(o,r){S(o,e,r),s.m(e,null)},p(o,[r]){n!==(n=t(o))&&(s.d(1),s=n(o),s&&(s.c(),s.m(e,null))),r&2&&i(e,"width",o[1]),r&2&&i(e,"height",o[1])},i:$,o:$,d(o){o&&C(e),s.d()}}}function Tf(l,e,t){let{kind:n="generic"}=e,{size:s=20}=e;return l.$$set=o=>{"kind"in o&&t(0,n=o.kind),"size"in o&&t(1,s=o.size)},[n,s]}class Oo extends $e{constructor(e){super(),xe(this,e,Tf,Ef,Ze,{kind:0,size:1})}}const Nf={"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.empty":"Неразобранных элементов нет","trash.openFolder":"Открыть папку корзины","trash.empty":"Корзина пуста","trash.deletedNodes":"Удаленные элементы","trash.physicalEntries":"Файлы в .verstak/trash","tab.overview":"Обзор","tab.notes":"Заметки","tab.files":"Файлы","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":"Новое имя","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":"Дело изменено","kind.project":"Проект","kind.client":"Клиент","kind.document":"Документ","kind.recipe":"Рецепт","kind.folder":"Папка","kind.note":"Заметка","kind.file":"Файл","kind.archive":"Архив","kind.case":"Дело","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":"Закрыть","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":"событий","journal.title":"Журнал работы","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":"Срок действия токена истёк"},Df={"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":"Root items without an assigned section","inbox.empty":"No unprocessed items","trash.openFolder":"Open trash folder","trash.empty":"Trash is empty","trash.deletedNodes":"Deleted items","trash.physicalEntries":"Files in .verstak/trash","tab.overview":"Overview","tab.notes":"Notes","tab.files":"Files","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","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","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","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","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","journal.title":"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"},Fn={ru:Nf,en:Df};let Pn="ru";function m(l,e){var s;const t=Fn[Pn];let n=t==null?void 0:t[l];if(n==null&&Pn!=="ru"&&(n=(s=Fn.ru)==null?void 0:s[l]),n==null&&(n=l),e!=null)for(const[o,r]of Object.entries(e))n=n.replace(`{${o}}`,String(r));return n}function ol(l){if(l==null||l<0)return"—";if(l===0)return"0 B";const e=["B","KB","MB","GB"],t=Math.min(Math.floor(Math.log(l)/Math.log(1024)),e.length-1),n=l/Math.pow(1024,t);return(t===0?n.toFixed(0):n.toFixed(1))+" "+e[t]}const Vl={"image/jpeg":m("mime.jpeg"),"image/png":m("mime.png"),"image/gif":m("mime.gif"),"image/webp":m("mime.webp"),"image/svg+xml":m("mime.svg"),"image/bmp":m("mime.bmp"),"image/tiff":m("mime.tiff"),"image/avif":m("mime.avif"),"application/pdf":m("mime.pdf"),"application/msword":m("mime.word"),"application/vnd.openxmlformats-officedocument.wordprocessingml.document":m("mime.word"),"application/vnd.ms-excel":m("mime.excel"),"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet":m("mime.excel"),"application/vnd.ms-powerpoint":m("mime.ppt"),"application/vnd.openxmlformats-officedocument.presentationml.presentation":m("mime.ppt"),"application/zip":m("mime.zip"),"application/gzip":m("mime.gzip"),"application/x-tar":m("mime.tar"),"application/x-7z-compressed":m("mime.sevenz"),"application/x-rar-compressed":m("mime.rar"),"text/plain":m("mime.text"),"text/html":m("mime.html"),"text/css":m("mime.css"),"text/javascript":m("mime.js"),"application/json":m("mime.json"),"application/xml":m("mime.xml"),"application/x-yaml":m("mime.yaml"),"application/octet-stream":m("mime.binary"),"application/x-msdos-program":m("mime.executable"),"inode/directory":m("mime.folder")};function Ln(l){return l?Vl[l]||l:m("mime.unknown")}function Mf(l){if(l.type==="folder")return m("mime.folder");const e=(l.mime||"").toLowerCase();if(Vl[e])return Vl[e];const n=(l.name||"").toLowerCase().split(".").pop();return n?n.toUpperCase():m("mime.file")}function Vo(l){if(l.type==="folder")return"folder";const e=(l.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 n=(l.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(n)?"code":"generic"}const Wo=["image/jpeg","image/png","image/gif","image/webp","image/bmp","image/tiff","image/avif","image/svg+xml"],Bo=["text/plain","text/html","text/css","text/javascript","application/json","application/xml","application/x-yaml","text/x-shellscript"],Ho=["txt","log","conf","ini","yaml","yml","json","xml","csv","sh","py","js","ts","css","html","md","markdown","cfg"],Uo=["jpg","jpeg","png","gif","webp","bmp","tiff","tif","avif","svg"];function If(l){if(l.type==="folder")return!1;const e=(l.mime||"").toLowerCase(),n=(l.name||"").toLowerCase().split(".").pop();return!!(Wo.includes(e)||Uo.includes(n)||e.includes("pdf")||Bo.includes(e)||Ho.includes(n))}function Ko(l){const e=(l.mime||"").toLowerCase(),n=(l.name||"").toLowerCase().split(".").pop();return Wo.includes(e)||Uo.includes(n)}function Go(l){const e=(l.mime||"").toLowerCase(),n=(l.name||"").toLowerCase().split(".").pop();return Bo.includes(e)||Ho.includes(n)&&n!=="md"&&n!=="markdown"}function Jo(l){return(l.mime||"").toLowerCase().includes("pdf")}function qo(l){const e=(l.name||"").toLowerCase();return e.endsWith(".md")||e.endsWith(".markdown")}function Af(l){return Ko(l)||Jo(l)}function Ff(l){return Go(l)||qo(l)}const{window:Pf}=Bl;function Lf(l){let e,t,n,s=ol(l[0].size)+"",o;return{c(){e=u("span"),e.textContent="·",t=g(),n=u("span"),o=F(s),i(e,"class","meta-sep svelte-1skuef2")},m(r,f){S(r,e,f),S(r,t,f),S(r,n,f),a(n,o)},p(r,f){f[0]&1&&s!==(s=ol(r[0].size)+"")&&B(o,s)},d(r){r&&(C(e),C(t),C(n))}}}function Rf(l){let e,t,n,s,o;return{c(){e=u("button"),e.innerHTML='',t=g(),n=u("button"),n.innerHTML='',i(e,"class","action-btn svelte-1skuef2"),i(e,"title",m("file.openFolder")),i(e,"aria-label",m("file.openFolder")),i(n,"class","action-btn svelte-1skuef2"),i(n,"title",m("file.showInExplorer")),i(n,"aria-label",m("file.showInExplorer"))},m(r,f){S(r,e,f),S(r,t,f),S(r,n,f),s||(o=[I(e,"click",We(l[30])),I(n,"click",We(l[11]))],s=!0)},p:$,d(r){r&&(C(e),C(t),C(n)),s=!1,me(o)}}}function zf(l){let e,t,n,s,o,r,f;return{c(){e=u("button"),e.innerHTML='',t=g(),n=u("button"),n.innerHTML='',s=g(),o=u("button"),o.innerHTML='',i(e,"class","action-btn svelte-1skuef2"),i(e,"title",m("file.preview")),i(e,"aria-label",m("file.preview")),i(n,"class","action-btn svelte-1skuef2"),i(n,"title",m("file.openExternal")),i(n,"aria-label",m("file.openExternal")),i(o,"class","action-btn svelte-1skuef2"),i(o,"title",m("file.showInExplorer")),i(o,"aria-label",m("file.showInExplorer"))},m(c,d){S(c,e,d),S(c,t,d),S(c,n,d),S(c,s,d),S(c,o,d),r||(f=[I(e,"click",We(l[29])),I(n,"click",We(l[10])),I(o,"click",We(l[11]))],r=!0)},p:$,d(c){c&&(C(e),C(t),C(n),C(s),C(o)),r=!1,me(f)}}}function Rn(l){let e,t,n,s,o,r,f,c,d=m("common.open")+"",v,_,h,k,b,y,w,j,E=m("file.openExternal")+"",T,N,D,A,M,R,V=m("file.showInExplorer")+"",W,J,q,Y,U,H,G,z,K,L=m("common.rename")+"",O,x,re,te,ne,le,oe,fe=m("common.duplicate")+"",ye,Be,Me,X,Z,ue,we,_e,Ce,Xe=m("common.cut")+"",Ke,lt,Ve,Ae,Pe,ge,He,Ee=m("common.copy")+"",Oe,ke,je,Te,Se,Ie,Ue,De,ve,ee=m("common.delete")+"",Ne,Le,Ge;return{c(){e=u("div"),t=g(),n=u("div"),s=u("button"),o=Q("svg"),r=Q("path"),f=Q("circle"),c=g(),v=F(d),_=g(),h=u("button"),k=Q("svg"),b=Q("path"),y=Q("polyline"),w=Q("line"),j=g(),T=F(E),N=g(),D=u("button"),A=Q("svg"),M=Q("path"),R=g(),W=F(V),J=g(),q=u("div"),Y=g(),U=u("button"),H=Q("svg"),G=Q("path"),z=Q("path"),K=g(),O=F(L),x=g(),re=u("button"),te=Q("svg"),ne=Q("rect"),le=Q("path"),oe=g(),ye=F(fe),Be=g(),Me=u("button"),X=Q("svg"),Z=Q("circle"),ue=Q("circle"),we=Q("line"),_e=Q("line"),Ce=g(),Ke=F(Xe),lt=g(),Ve=u("button"),Ae=Q("svg"),Pe=Q("rect"),ge=Q("path"),He=g(),Oe=F(Ee),ke=g(),je=u("div"),Te=g(),Se=u("button"),Ie=Q("svg"),Ue=Q("polyline"),De=Q("path"),ve=g(),Ne=F(ee),i(e,"class","menu-backdrop svelte-1skuef2"),i(e,"role","presentation"),i(r,"d","M1 12s4-8 11-8 11 8 11 8-4 8-11 8-11-8-11-8z"),i(f,"cx","12"),i(f,"cy","12"),i(f,"r","3"),i(o,"width","14"),i(o,"height","14"),i(o,"viewBox","0 0 24 24"),i(o,"fill","none"),i(o,"stroke","currentColor"),i(o,"stroke-width","2"),i(o,"stroke-linecap","round"),i(o,"stroke-linejoin","round"),i(s,"class","menu-item svelte-1skuef2"),i(s,"role","menuitem"),i(b,"d","M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6"),i(y,"points","15 3 21 3 21 9"),i(w,"x1","10"),i(w,"y1","14"),i(w,"x2","21"),i(w,"y2","3"),i(k,"width","14"),i(k,"height","14"),i(k,"viewBox","0 0 24 24"),i(k,"fill","none"),i(k,"stroke","currentColor"),i(k,"stroke-width","2"),i(k,"stroke-linecap","round"),i(k,"stroke-linejoin","round"),i(h,"class","menu-item svelte-1skuef2"),i(h,"role","menuitem"),i(M,"d","M22 19a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h5l2 3h9a2 2 0 0 1 2 2z"),i(A,"width","14"),i(A,"height","14"),i(A,"viewBox","0 0 24 24"),i(A,"fill","none"),i(A,"stroke","currentColor"),i(A,"stroke-width","2"),i(A,"stroke-linecap","round"),i(A,"stroke-linejoin","round"),i(D,"class","menu-item svelte-1skuef2"),i(D,"role","menuitem"),i(q,"class","menu-sep svelte-1skuef2"),i(G,"d","M12 20h9"),i(z,"d","M16.5 3.5a2.121 2.121 0 0 1 3 3L7 19l-4 1 1-4L16.5 3.5z"),i(H,"width","14"),i(H,"height","14"),i(H,"viewBox","0 0 24 24"),i(H,"fill","none"),i(H,"stroke","currentColor"),i(H,"stroke-width","2"),i(H,"stroke-linecap","round"),i(H,"stroke-linejoin","round"),i(U,"class","menu-item svelte-1skuef2"),i(U,"role","menuitem"),i(ne,"x","9"),i(ne,"y","9"),i(ne,"width","13"),i(ne,"height","13"),i(ne,"rx","2"),i(ne,"ry","2"),i(le,"d","M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1"),i(te,"width","14"),i(te,"height","14"),i(te,"viewBox","0 0 24 24"),i(te,"fill","none"),i(te,"stroke","currentColor"),i(te,"stroke-width","2"),i(te,"stroke-linecap","round"),i(te,"stroke-linejoin","round"),i(re,"class","menu-item svelte-1skuef2"),i(re,"role","menuitem"),i(Z,"cx","6"),i(Z,"cy","6"),i(Z,"r","3"),i(ue,"cx","6"),i(ue,"cy","18"),i(ue,"r","3"),i(we,"x1","20"),i(we,"y1","4"),i(we,"x2","8.12"),i(we,"y2","15.88"),i(_e,"x1","8.12"),i(_e,"y1","8.12"),i(_e,"x2","20"),i(_e,"y2","20"),i(X,"width","14"),i(X,"height","14"),i(X,"viewBox","0 0 24 24"),i(X,"fill","none"),i(X,"stroke","currentColor"),i(X,"stroke-width","2"),i(X,"stroke-linecap","round"),i(X,"stroke-linejoin","round"),i(Me,"class","menu-item svelte-1skuef2"),i(Me,"role","menuitem"),i(Pe,"x","9"),i(Pe,"y","9"),i(Pe,"width","13"),i(Pe,"height","13"),i(Pe,"rx","2"),i(Pe,"ry","2"),i(ge,"d","M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1"),i(Ae,"width","14"),i(Ae,"height","14"),i(Ae,"viewBox","0 0 24 24"),i(Ae,"fill","none"),i(Ae,"stroke","currentColor"),i(Ae,"stroke-width","2"),i(Ae,"stroke-linecap","round"),i(Ae,"stroke-linejoin","round"),i(Ve,"class","menu-item svelte-1skuef2"),i(Ve,"role","menuitem"),i(je,"class","menu-sep svelte-1skuef2"),i(Ue,"points","3 6 5 6 21 6"),i(De,"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"),i(Ie,"width","14"),i(Ie,"height","14"),i(Ie,"viewBox","0 0 24 24"),i(Ie,"fill","none"),i(Ie,"stroke","currentColor"),i(Ie,"stroke-width","2"),i(Ie,"stroke-linecap","round"),i(Ie,"stroke-linejoin","round"),i(Se,"class","menu-item menu-item-danger svelte-1skuef2"),i(Se,"role","menuitem"),i(n,"class","menu svelte-1skuef2"),ct(n,"left",l[3]+"px"),ct(n,"top",l[4]+"px"),ct(n,"position","fixed"),i(n,"role","menu"),i(n,"tabindex","-1")},m(Re,Ye){S(Re,e,Ye),S(Re,t,Ye),S(Re,n,Ye),a(n,s),a(s,o),a(o,r),a(o,f),a(s,c),a(s,v),a(n,_),a(n,h),a(h,k),a(k,b),a(k,y),a(k,w),a(h,j),a(h,T),a(n,N),a(n,D),a(D,A),a(A,M),a(D,R),a(D,W),a(n,J),a(n,q),a(n,Y),a(n,U),a(U,H),a(H,G),a(H,z),a(U,K),a(U,O),a(n,x),a(n,re),a(re,te),a(te,ne),a(te,le),a(re,oe),a(re,ye),a(n,Be),a(n,Me),a(Me,X),a(X,Z),a(X,ue),a(X,we),a(X,_e),a(Me,Ce),a(Me,Ke),a(n,lt),a(n,Ve),a(Ve,Ae),a(Ae,Pe),a(Ae,ge),a(Ve,He),a(Ve,Oe),a(n,ke),a(n,je),a(n,Te),a(n,Se),a(Se,Ie),a(Ie,Ue),a(Ie,De),a(Se,ve),a(Se,Ne),Le||(Ge=[I(e,"click",We(l[19])),I(s,"click",l[17]),I(h,"click",l[10]),I(D,"click",l[11]),I(U,"click",l[13]),I(re,"click",l[14]),I(Me,"click",l[15]),I(Ve,"click",l[16]),I(Se,"click",l[12]),I(n,"click",We(l[28])),I(n,"keydown",l[31])],Le=!0)},p(Re,Ye){Ye[0]&8&&ct(n,"left",Re[3]+"px"),Ye[0]&16&&ct(n,"top",Re[4]+"px")},d(Re){Re&&(C(e),C(t),C(n)),Le=!1,me(Ge)}}}function Of(l){let e,t,n,s,o,r,f=l[0].name+"",c,d,v,_,h,k,b,y,w,j,E,T,N,D,A,M,R,V,W,J,q,Y;n=new Oo({props:{kind:l[6],size:22}});let U=!l[7]&&Lf(l);function H(L,O){return L[7]?Rf:zf}let z=H(l)(l),K=l[2]&&Rn(l);return{c(){e=u("div"),t=u("div"),Qe(n.$$.fragment),s=g(),o=u("div"),r=u("div"),c=F(f),v=g(),_=u("div"),h=u("span"),h.textContent=`${l[8]}`,k=g(),U&&U.c(),b=g(),y=u("div"),z.c(),w=g(),j=u("button"),E=Q("svg"),T=Q("circle"),N=Q("circle"),D=Q("circle"),A=g(),M=u("button"),M.innerHTML='',V=g(),K&&K.c(),W=ot(),i(t,"class","file-row-icon svelte-1skuef2"),i(r,"class","file-row-name svelte-1skuef2"),i(r,"title",d=l[0].name),i(_,"class","file-row-meta svelte-1skuef2"),i(o,"class","file-row-body svelte-1skuef2"),i(T,"cx","12"),i(T,"cy","5"),i(T,"r","2"),i(N,"cx","12"),i(N,"cy","12"),i(N,"r","2"),i(D,"cx","12"),i(D,"cy","19"),i(D,"r","2"),i(E,"width","16"),i(E,"height","16"),i(E,"viewBox","0 0 24 24"),i(E,"fill","currentColor"),i(j,"class","action-btn svelte-1skuef2"),i(j,"title",m("file.more")),i(j,"aria-label",m("file.more")),i(j,"aria-expanded",l[2]),i(M,"class","action-btn action-btn-danger svelte-1skuef2"),i(M,"title",m("common.delete")),i(M,"aria-label",m("common.delete")),i(y,"class","file-row-actions svelte-1skuef2"),i(e,"class","file-row svelte-1skuef2"),i(e,"role","button"),i(e,"tabindex","0"),i(e,"draggable","true"),i(e,"aria-label",R=l[7]?m("file.ariaFolder")+" "+l[0].name:m("file.ariaFile")+" "+l[0].name),he(e,"file-row--selected",l[1])},m(L,O){S(L,e,O),a(e,t),Je(n,t,null),a(e,s),a(e,o),a(o,r),a(r,c),a(o,v),a(o,_),a(_,h),a(_,k),U&&U.m(_,null),a(e,b),a(e,y),z.m(y,null),a(y,w),a(y,j),a(j,E),a(E,T),a(E,N),a(E,D),a(y,A),a(y,M),S(L,V,O),K&&K.m(L,O),S(L,W,O),J=!0,q||(Y=[I(Pf,"click",l[19]),I(j,"click",We(l[18])),I(M,"click",We(l[12])),I(e,"click",l[9]),I(e,"keydown",l[24]),I(e,"contextmenu",l[23]),I(e,"dragstart",l[20]),I(e,"dragover",l[21]),I(e,"drop",l[22])],q=!0)},p(L,O){(!J||O[0]&1)&&f!==(f=L[0].name+"")&&B(c,f),(!J||O[0]&1&&d!==(d=L[0].name))&&i(r,"title",d),L[7]||U.p(L,O),z.p(L,O),(!J||O[0]&4)&&i(j,"aria-expanded",L[2]),(!J||O[0]&1&&R!==(R=L[7]?m("file.ariaFolder")+" "+L[0].name:m("file.ariaFile")+" "+L[0].name))&&i(e,"aria-label",R),(!J||O[0]&2)&&he(e,"file-row--selected",L[1]),L[2]?K?K.p(L,O):(K=Rn(L),K.c(),K.m(W.parentNode,W)):K&&(K.d(1),K=null)},i(L){J||(ae(n.$$.fragment,L),J=!0)},o(L){de(n.$$.fragment,L),J=!1},d(L){L&&(C(e),C(V),C(W)),qe(n),U&&U.d(),z.d(),K&&K.d(L),q=!1,me(Y)}}}function Vf(l,e,t){let{item:n}=e,{selected:s=!1}=e,{onDragStart:o}=e,{onDragOver:r}=e,{onDrop:f}=e;const c=al(),d=Vo(n),v=n.type==="folder",_=Mf(n);let h=!1,k=0,b=0,y=null;function w(O){O.ctrlKey||O.metaKey?c("toggleSelect",n.id):O.shiftKey?c("rangeSelect",n.id):y?(clearTimeout(y),y=null,v?c("navigate",n.id):c("preview",n)):y=setTimeout(()=>{y=null,c("selectOne",n.id)},250)}function j(){c("openExternal",n.fileId)}function E(){t(2,h=!1),c("showInFolder",n.nodeId||n.id)}function T(){t(2,h=!1),c("delete",{id:n.id,type:n.type})}function N(){t(2,h=!1),c("rename",{id:n.id,name:n.name})}function D(){t(2,h=!1),c("duplicate",n.id)}function A(){t(2,h=!1),c("cut",n.id)}function M(){t(2,h=!1),c("copy",n.id)}function R(){t(2,h=!1),v?c("navigate",n.id):c("preview",n)}function V(){t(2,h=!h)}function W(){t(2,h=!1)}function J(O){o&&o(O,n.id)}function q(O){r&&v&&r(O,n.id)}function Y(O){f&&v&&f(O,n.id)}function U(O){O.preventDefault(),t(3,k=Math.min(O.clientX,window.innerWidth-240)),t(4,b=Math.min(O.clientY,window.innerHeight-320)),t(2,h=!0)}function H(O){(O.key==="Enter"||O.key===" ")&&(O.preventDefault(),w(O))}function G(O){Po.call(this,l,O)}const z=()=>c("preview",n),K=()=>c("navigate",n.id),L=O=>{O.key==="Escape"&&(O.stopPropagation(),W())};return l.$$set=O=>{"item"in O&&t(0,n=O.item),"selected"in O&&t(1,s=O.selected),"onDragStart"in O&&t(25,o=O.onDragStart),"onDragOver"in O&&t(26,r=O.onDragOver),"onDrop"in O&&t(27,f=O.onDrop)},[n,s,h,k,b,c,d,v,_,w,j,E,T,N,D,A,M,R,V,W,J,q,Y,U,H,o,r,f,G,z,K,L]}class Wf extends $e{constructor(e){super(),xe(this,e,Vf,Of,Ze,{item:0,selected:1,onDragStart:25,onDragOver:26,onDrop:27},null,[-1,-1])}}function zn(l,e,t){const n=l.slice();return n[4]=e[t],n[6]=t,n}function Bf(l){let e;return{c(){e=u("span"),e.textContent="/",i(e,"class","sep svelte-csi2lb")},m(t,n){S(t,e,n)},d(t){t&&C(e)}}}function Hf(l){let e,t=l[4].name+"",n,s,o;function r(){return l[2](l[6])}return{c(){e=u("button"),n=F(t),i(e,"class","crumb crumb--link svelte-csi2lb")},m(f,c){S(f,e,c),a(e,n),s||(o=I(e,"click",r),s=!0)},p(f,c){l=f,c&1&&t!==(t=l[4].name+"")&&B(n,t)},d(f){f&&C(e),s=!1,o()}}}function Uf(l){let e,t=l[4].name+"",n;return{c(){e=u("span"),n=F(t),i(e,"class","crumb crumb--current svelte-csi2lb")},m(s,o){S(s,e,o),a(e,n)},p(s,o){o&1&&t!==(t=s[4].name+"")&&B(n,t)},d(s){s&&C(e)}}}function On(l){let e,t,n=l[6]>0&&Bf();function s(f,c){return f[6]===f[0].length-1?Uf:Hf}let o=s(l),r=o(l);return{c(){n&&n.c(),e=g(),r.c(),t=ot()},m(f,c){n&&n.m(f,c),S(f,e,c),r.m(f,c),S(f,t,c)},p(f,c){o===(o=s(f))&&r?r.p(f,c):(r.d(1),r=o(f),r&&(r.c(),r.m(t.parentNode,t)))},d(f){f&&(C(e),C(t)),n&&n.d(f),r.d(f)}}}function Kf(l){let e,t=ce(l[0]),n=[];for(let s=0;so(f);return l.$$set=f=>{"crumbs"in f&&t(0,n=f.crumbs)},[n,o,r]}class Yo extends $e{constructor(e){super(),xe(this,e,Gf,Kf,Ze,{crumbs:0})}}function Jf(l){let e,t,n,s,o,r;return{c(){e=u("div"),t=u("p"),t.textContent=`${m("file.previewUnavailable")}`,n=g(),s=u("button"),s.textContent=`${m("file.openExternal")}`,i(s,"class","btn btn-sm svelte-1cw3u0m"),i(e,"class","preview-status svelte-1cw3u0m")},m(f,c){S(f,e,c),a(e,t),a(e,n),a(e,s),o||(r=I(s,"click",l[9]),o=!0)},p:$,d(f){f&&C(e),o=!1,r()}}}function qf(l){let e,t;function n(r,f){return f&2&&(e=null),e==null&&(e=!!(r[1]&&r[1].startsWith("data:"))),e?$f:xf}let s=n(l,-1),o=s(l);return{c(){o.c(),t=ot()},m(r,f){o.m(r,f),S(r,t,f)},p(r,f){s===(s=n(r,f))&&o?o.p(r,f):(o.d(1),o=s(r),o&&(o.c(),o.m(t.parentNode,t)))},d(r){r&&C(t),o.d(r)}}}function Yf(l){let e,t,n;return{c(){e=u("pre"),t=u("code"),n=F(l[1]),i(e,"class","preview-text svelte-1cw3u0m")},m(s,o){S(s,e,o),a(e,t),a(t,n)},p(s,o){o&2&&B(n,s[1])},d(s){s&&C(e)}}}function Qf(l){let e,t,n,s;return{c(){e=u("div"),t=u("img"),il(t.src,n=l[1])||i(t,"src",n),i(t,"alt",s=l[0].name),i(t,"class","preview-image svelte-1cw3u0m"),i(e,"class","preview-image-container svelte-1cw3u0m")},m(o,r){S(o,e,r),a(e,t)},p(o,r){r&2&&!il(t.src,n=o[1])&&i(t,"src",n),r&1&&s!==(s=o[0].name)&&i(t,"alt",s)},d(o){o&&C(e)}}}function Xf(l){let e,t,n,s,o,r,f;return{c(){e=u("div"),t=u("p"),n=F(l[3]),s=g(),o=u("button"),o.textContent=`${m("file.openExternal")}`,i(o,"class","btn btn-sm svelte-1cw3u0m"),i(e,"class","preview-status svelte-1cw3u0m")},m(c,d){S(c,e,d),a(e,t),a(t,n),a(e,s),a(e,o),r||(f=I(o,"click",l[9]),r=!0)},p(c,d){d&8&&B(n,c[3])},d(c){c&&C(e),r=!1,f()}}}function Zf(l){let e,t;return{c(){e=u("div"),t=u("p"),t.textContent=`${m("common.loading")}`,i(e,"class","preview-status svelte-1cw3u0m")},m(n,s){S(n,e,s),a(e,t)},p:$,d(n){n&&C(e)}}}function xf(l){let e,t,n,s,o,r;return{c(){e=u("div"),t=u("p"),t.textContent=`${m("file.pdfUnavailable")}`,n=g(),s=u("button"),s.textContent=`${m("file.openExternal")}`,i(s,"class","btn btn-sm svelte-1cw3u0m"),i(e,"class","preview-status svelte-1cw3u0m")},m(f,c){S(f,e,c),a(e,t),a(e,n),a(e,s),o||(r=I(s,"click",l[9]),o=!0)},p:$,d(f){f&&C(e),o=!1,r()}}}function $f(l){let e,t,n;return{c(){e=u("div"),t=u("embed"),il(t.src,n=l[1])||i(t,"src",n),i(t,"type","application/pdf"),i(t,"class","preview-pdf svelte-1cw3u0m"),i(e,"class","preview-pdf-container svelte-1cw3u0m")},m(s,o){S(s,e,o),a(e,t)},p(s,o){o&2&&!il(t.src,n=s[1])&&i(t,"src",n)},d(s){s&&C(e)}}}function eu(l){let e,t,n,s,o,r,f,c=l[0].name+"",d,v,_,h,k=ol(l[0].size)+"",b,y,w=Ln(l[0].mime)+"",j,E,T,N,D,A,M,R,V,W,J;o=new Oo({props:{kind:l[8],size:18}});function q(H,G){return H[2]?Zf:H[3]?Xf:H[6]&&H[1]?Qf:H[5]&&H[1]?Yf:H[4]?qf:Jf}let Y=q(l),U=Y(l);return{c(){e=u("div"),t=u("div"),n=u("header"),s=u("div"),Qe(o.$$.fragment),r=g(),f=u("span"),d=F(c),_=g(),h=u("div"),b=F(k),y=F(" · "),j=F(w),E=g(),T=u("div"),N=u("button"),N.innerHTML='',D=g(),A=u("button"),A.innerHTML='',M=g(),R=u("div"),U.c(),i(f,"class","preview-name svelte-1cw3u0m"),i(f,"title",v=l[0].name),i(s,"class","preview-title svelte-1cw3u0m"),i(h,"class","preview-meta svelte-1cw3u0m"),i(N,"class","action-btn svelte-1cw3u0m"),i(N,"title",m("file.openExternal")),i(N,"aria-label",m("file.openExternal")),i(A,"class","action-btn action-btn-close svelte-1cw3u0m"),i(A,"title","Close"),i(A,"aria-label","Close preview"),i(T,"class","preview-actions svelte-1cw3u0m"),i(n,"class","preview-header svelte-1cw3u0m"),i(R,"class","preview-body svelte-1cw3u0m"),i(t,"class","modal svelte-1cw3u0m"),i(e,"class","overlay svelte-1cw3u0m"),i(e,"role","presentation")},m(H,G){S(H,e,G),a(e,t),a(t,n),a(n,s),Je(o,s,null),a(s,r),a(s,f),a(f,d),a(n,_),a(n,h),a(h,b),a(h,y),a(h,j),a(n,E),a(n,T),a(T,N),a(T,D),a(T,A),a(t,M),a(t,R),U.m(R,null),V=!0,W||(J=[I(N,"click",l[9]),I(A,"click",l[10]),I(e,"click",mt(l[11])),I(e,"keydown",l[12])],W=!0)},p(H,[G]){(!V||G&1)&&c!==(c=H[0].name+"")&&B(d,c),(!V||G&1&&v!==(v=H[0].name))&&i(f,"title",v),(!V||G&1)&&k!==(k=ol(H[0].size)+"")&&B(b,k),(!V||G&1)&&w!==(w=Ln(H[0].mime)+"")&&B(j,w),Y===(Y=q(H))&&U?U.p(H,G):(U.d(1),U=Y(H),U&&(U.c(),U.m(R,null)))},i(H){V||(ae(o.$$.fragment,H),V=!0)},o(H){de(o.$$.fragment,H),V=!1},d(H){H&&C(e),qe(o),U.d(),W=!1,me(J)}}}function tu(l,e,t){let n,s,o,{item:r}=e,{content:f=""}=e,{loading:c=!1}=e,{error:d=""}=e;const v=al(),_=Vo(r);function h(j){j.key==="Escape"&&v("close")}function k(){v("openExternal",r.fileId)}Fo(()=>{window.addEventListener("keydown",h)}),Kl(()=>{window.removeEventListener("keydown",h)});const b=()=>v("close"),y=()=>v("close"),w=j=>{j.key==="Escape"&&(j.preventDefault(),v("close"))};return l.$$set=j=>{"item"in j&&t(0,r=j.item),"content"in j&&t(1,f=j.content),"loading"in j&&t(2,c=j.loading),"error"in j&&t(3,d=j.error)},l.$$.update=()=>{l.$$.dirty&3&&t(6,n=Ko(r)&&f&&f.startsWith("data:")),l.$$.dirty&1&&t(5,s=Go(r)||qo(r)),l.$$.dirty&1&&t(4,o=Jo(r))},[r,f,c,d,o,s,n,v,_,k,b,y,w]}class lu extends $e{constructor(e){super(),xe(this,e,tu,eu,Ze,{item:0,content:1,loading:2,error:3})}}function nu(l){let e,t,n,s,o,r,f,c,d,v,_,h,k,b,y,w,j;return{c(){e=u("div"),t=u("div"),n=u("h3"),s=F(l[0]),o=g(),r=u("p"),f=F(l[1]),c=g(),d=u("div"),v=u("button"),_=F(l[2]),k=g(),b=u("button"),y=F(l[3]),i(n,"class","svelte-1fv6yyk"),i(r,"class","message svelte-1fv6yyk"),i(v,"class",h="btn "+(l[4]?"btn-danger":"btn-primary")+" svelte-1fv6yyk"),i(b,"class","btn svelte-1fv6yyk"),i(d,"class","actions svelte-1fv6yyk"),i(t,"class","modal svelte-1fv6yyk"),i(e,"class","overlay svelte-1fv6yyk"),i(e,"role","presentation")},m(E,T){S(E,e,T),a(e,t),a(t,n),a(n,s),a(t,o),a(t,r),a(r,f),a(t,c),a(t,d),a(d,v),a(v,_),a(d,k),a(d,b),a(b,y),w||(j=[I(v,"click",l[6]),I(b,"click",l[7]),I(e,"click",mt(l[8])),I(e,"keydown",l[9])],w=!0)},p(E,[T]){T&1&&B(s,E[0]),T&2&&B(f,E[1]),T&4&&B(_,E[2]),T&16&&h!==(h="btn "+(E[4]?"btn-danger":"btn-primary")+" svelte-1fv6yyk")&&i(v,"class",h),T&8&&B(y,E[3])},i:$,o:$,d(E){E&&C(e),w=!1,me(j)}}}function su(l,e,t){let{title:n=m("common.confirm")}=e,{message:s=""}=e,{confirmText:o=m("common.delete")}=e,{cancelText:r=m("common.cancel")}=e,{danger:f=!1}=e;const c=al(),d=()=>c("confirm"),v=()=>c("cancel"),_=()=>c("cancel"),h=k=>{k.key==="Escape"&&(k.preventDefault(),c("cancel"))};return l.$$set=k=>{"title"in k&&t(0,n=k.title),"message"in k&&t(1,s=k.message),"confirmText"in k&&t(2,o=k.confirmText),"cancelText"in k&&t(3,r=k.cancelText),"danger"in k&&t(4,f=k.danger)},[n,s,o,r,f,c,d,v,_,h]}class iu extends $e{constructor(e){super(),xe(this,e,su,nu,Ze,{title:0,message:1,confirmText:2,cancelText:3,danger:4})}}function ou(l){let e,t,n;return{c(){e=Q("circle"),t=Q("line"),n=Q("line"),i(e,"cx","12"),i(e,"cy","12"),i(e,"r","10"),i(t,"x1","12"),i(t,"y1","16"),i(t,"x2","12"),i(t,"y2","12"),i(n,"x1","12"),i(n,"y1","8"),i(n,"x2","12.01"),i(n,"y2","8")},m(s,o){S(s,e,o),S(s,t,o),S(s,n,o)},d(s){s&&(C(e),C(t),C(n))}}}function ru(l){let e,t,n,s;return{c(){e=Q("rect"),t=Q("polyline"),n=Q("line"),s=Q("line"),i(e,"x","3"),i(e,"y","5"),i(e,"width","18"),i(e,"height","14"),i(e,"rx","2"),i(t,"points","3 10 21 10"),i(n,"x1","8"),i(n,"y1","5"),i(n,"x2","8"),i(n,"y2","19"),i(s,"x1","16"),i(s,"y1","5"),i(s,"x2","16"),i(s,"y2","19")},m(o,r){S(o,e,r),S(o,t,r),S(o,n,r),S(o,s,r)},d(o){o&&(C(e),C(t),C(n),C(s))}}}function au(l){let e,t;return{c(){e=Q("path"),t=Q("polyline"),i(e,"d","M13 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V9z"),i(t,"points","13 2 13 9 20 9")},m(n,s){S(n,e,s),S(n,t,s)},d(n){n&&(C(e),C(t))}}}function cu(l){let e,t;return{c(){e=Q("path"),t=Q("path"),i(e,"d","M12 20h9"),i(t,"d","M16.5 3.5a2.121 2.121 0 0 1 3 3L7 19l-4 1 1-4L16.5 3.5z")},m(n,s){S(n,e,s),S(n,t,s)},d(n){n&&(C(e),C(t))}}}function fu(l){let e,t,n,s,o;return{c(){e=Q("path"),t=Q("path"),n=Q("line"),s=Q("line"),o=Q("line"),i(e,"d","M4 19.5A2.5 2.5 0 0 1 6.5 17H20"),i(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"),i(n,"x1","8"),i(n,"y1","7"),i(n,"x2","16"),i(n,"y2","7"),i(s,"x1","8"),i(s,"y1","11"),i(s,"x2","14"),i(s,"y2","11"),i(o,"x1","8"),i(o,"y1","15"),i(o,"x2","12"),i(o,"y2","15")},m(r,f){S(r,e,f),S(r,t,f),S(r,n,f),S(r,s,f),S(r,o,f)},d(r){r&&(C(e),C(t),C(n),C(s),C(o))}}}function uu(l){let e,t,n,s;return{c(){e=Q("path"),t=Q("polyline"),n=Q("line"),s=Q("line"),i(e,"d","M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"),i(t,"points","14 2 14 8 20 8"),i(n,"x1","16"),i(n,"y1","13"),i(n,"x2","8"),i(n,"y2","13"),i(s,"x1","16"),i(s,"y1","17"),i(s,"x2","8"),i(s,"y2","17")},m(o,r){S(o,e,r),S(o,t,r),S(o,n,r),S(o,s,r)},d(o){o&&(C(e),C(t),C(n),C(s))}}}function du(l){let e,t;return{c(){e=Q("path"),t=Q("circle"),i(e,"d","M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2"),i(t,"cx","12"),i(t,"cy","7"),i(t,"r","4")},m(n,s){S(n,e,s),S(n,t,s)},d(n){n&&(C(e),C(t))}}}function pu(l){let e,t,n,s;return{c(){e=Q("rect"),t=Q("rect"),n=Q("rect"),s=Q("rect"),i(e,"x","3"),i(e,"y","3"),i(e,"width","7"),i(e,"height","7"),i(e,"rx","1"),i(t,"x","14"),i(t,"y","3"),i(t,"width","7"),i(t,"height","4"),i(t,"rx","1"),i(n,"x","14"),i(n,"y","10"),i(n,"width","7"),i(n,"height","11"),i(n,"rx","1"),i(s,"x","3"),i(s,"y","14"),i(s,"width","7"),i(s,"height","7"),i(s,"rx","1")},m(o,r){S(o,e,r),S(o,t,r),S(o,n,r),S(o,s,r)},d(o){o&&(C(e),C(t),C(n),C(s))}}}function mu(l){let e;return{c(){e=Q("path"),i(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,n){S(t,e,n)},d(t){t&&C(e)}}}function _u(l){let e;function t(o,r){return o[0]==="folder"?mu:o[0]==="project"?pu:o[0]==="client"?du:o[0]==="document"?uu:o[0]==="recipe"?fu:o[0]==="note"?cu:o[0]==="file"?au:o[0]==="case"?ru:ou}let n=t(l),s=n(l);return{c(){e=Q("svg"),s.c(),i(e,"width",l[1]),i(e,"height",l[1]),i(e,"viewBox","0 0 24 24"),i(e,"fill","none"),i(e,"stroke","currentColor"),i(e,"stroke-width","1.5"),i(e,"stroke-linecap","round"),i(e,"stroke-linejoin","round"),i(e,"xmlns","http://www.w3.org/2000/svg")},m(o,r){S(o,e,r),s.m(e,null)},p(o,[r]){n!==(n=t(o))&&(s.d(1),s=n(o),s&&(s.c(),s.m(e,null))),r&2&&i(e,"width",o[1]),r&2&&i(e,"height",o[1])},i:$,o:$,d(o){o&&C(e),s.d()}}}function vu(l,e,t){let{kind:n="generic"}=e,{size:s=18}=e;return l.$$set=o=>{"kind"in o&&t(0,n=o.kind),"size"in o&&t(1,s=o.size)},[n,s]}class cl extends $e{constructor(e){super(),xe(this,e,vu,_u,Ze,{kind:0,size:1})}}function Vn(l,e,t){const n=l.slice();return n[44]=e[t],n}function hu(l){let e;return{c(){e=u("span"),i(e,"class","tree-toggle-placeholder svelte-zj71cl")},m(t,n){S(t,e,n)},p:$,d(t){t&&C(e)}}}function gu(l){let e,t,n=l[1][l[44].id]?"▾":"▸",s,o,r;function f(){return l[25](l[44])}return{c(){e=u("button"),t=u("span"),s=F(n),i(t,"class","tree-arrow"),i(e,"class","tree-toggle svelte-zj71cl")},m(c,d){S(c,e,d),a(e,t),a(t,s),o||(r=I(e,"click",We(f)),o=!0)},p(c,d){l=c,d[0]&3&&n!==(n=l[1][l[44].id]?"▾":"▸")&&B(s,n)},d(c){c&&C(e),o=!1,r()}}}function Wn(l){let e,t;return e=new Qo({props:{nodes:l[44].children||[],expanded:l[1],selectedNodeId:l[2],level:l[3]+1,onSelect:l[4],onToggle:l[5],onContextMenu:l[6],onDrop:l[7]}}),{c(){Qe(e.$$.fragment)},m(n,s){Je(e,n,s),t=!0},p(n,s){const o={};s[0]&1&&(o.nodes=n[44].children||[]),s[0]&2&&(o.expanded=n[1]),s[0]&4&&(o.selectedNodeId=n[2]),s[0]&8&&(o.level=n[3]+1),s[0]&16&&(o.onSelect=n[4]),s[0]&32&&(o.onToggle=n[5]),s[0]&64&&(o.onContextMenu=n[6]),s[0]&128&&(o.onDrop=n[7]),e.$set(o)},i(n){t||(ae(e.$$.fragment,n),t=!0)},o(n){de(e.$$.fragment,n),t=!1},d(n){qe(e,n)}}}function Bn(l,e){let t,n,s,o,r,f,c,d=e[44].title+"",v,_,h=e[1][e[44].id]&&Wl(e[44]),k,b,y,w;function j(z,K){return K[0]&1&&(n=null),n==null&&(n=!!Wt(z[44])),n?gu:hu}let E=j(e,[-1,-1]),T=E(e);r=new cl({props:{kind:Hn(e[44]),size:16}});function N(...z){return e[26](e[44],...z)}function D(...z){return e[27](e[44],...z)}function A(){return e[28](e[44])}function M(...z){return e[29](e[44],...z)}function R(...z){return e[30](e[44],...z)}function V(...z){return e[31](e[44],...z)}function W(...z){return e[32](e[44],...z)}function J(...z){return e[33](e[44],...z)}function q(...z){return e[34](e[44],...z)}function Y(...z){return e[35](e[44],...z)}function U(...z){return e[36](e[44],...z)}function H(...z){return e[37](e[44],...z)}let G=h&&Wn(e);return{key:l,first:null,c(){t=u("div"),T.c(),s=g(),o=u("span"),Qe(r.$$.fragment),f=g(),c=u("span"),v=F(d),_=g(),G&&G.c(),k=ot(),i(o,"class","tree-icon svelte-zj71cl"),i(o,"role","button"),i(o,"tabindex","-1"),i(c,"class","tree-label svelte-zj71cl"),i(c,"role","button"),i(c,"tabindex","-1"),i(t,"class","tree-item svelte-zj71cl"),ct(t,"padding-left",e[3]*16+4+"px"),i(t,"draggable","true"),i(t,"role","button"),i(t,"tabindex","0"),he(t,"selected",e[2]===e[44].id),he(t,"drop-valid",e[8]===e[44].id&&e[9][e[44].id]),he(t,"drop-invalid",e[8]===e[44].id&&!e[9][e[44].id]),this.first=t},m(z,K){S(z,t,K),T.m(t,null),a(t,s),a(t,o),Je(r,o,null),a(t,f),a(t,c),a(c,v),S(z,_,K),G&&G.m(z,K),S(z,k,K),b=!0,y||(w=[I(o,"click",N),I(o,"keydown",D),I(o,"dblclick",We(e[24])),I(c,"click",We(A)),I(c,"keydown",M),I(t,"dragstart",R),I(t,"dragover",V),I(t,"dragleave",W),I(t,"drop",J),I(t,"click",q),I(t,"keydown",Y),I(t,"dblclick",U),I(t,"contextmenu",Hl(H))],y=!0)},p(z,K){e=z,E===(E=j(e,K))&&T?T.p(e,K):(T.d(1),T=E(e),T&&(T.c(),T.m(t,s)));const L={};K[0]&1&&(L.kind=Hn(e[44])),r.$set(L),(!b||K[0]&1)&&d!==(d=e[44].title+"")&&B(v,d),(!b||K[0]&8)&&ct(t,"padding-left",e[3]*16+4+"px"),(!b||K[0]&5)&&he(t,"selected",e[2]===e[44].id),(!b||K[0]&769)&&he(t,"drop-valid",e[8]===e[44].id&&e[9][e[44].id]),(!b||K[0]&769)&&he(t,"drop-invalid",e[8]===e[44].id&&!e[9][e[44].id]),K[0]&3&&(h=e[1][e[44].id]&&Wl(e[44])),h?G?(G.p(e,K),K[0]&3&&ae(G,1)):(G=Wn(e),G.c(),ae(G,1),G.m(k.parentNode,k)):G&&(st(),de(G,1,1,()=>{G=null}),it())},i(z){b||(ae(r.$$.fragment,z),ae(G),b=!0)},o(z){de(r.$$.fragment,z),de(G),b=!1},d(z){z&&(C(t),C(_),C(k)),T.d(),qe(r),G&&G.d(z),y=!1,me(w)}}}function bu(l){let e=[],t=new Map,n,s,o,r,f=ce(l[0]);const c=d=>d[44].id;for(let d=0;d0:l.has_children===!0}function Un(l){const e={};function t(n,s){for(const o of n)e[o.id]=s,o.children&&t(o.children,o.id)}return t(l,""),e}function Kn(l){const e=[];function t(n){for(const s of n)e.push(s),s.children&&t(s.children)}return t(l),e}function ku(l){try{return l.dataTransfer.getData("text/plain")}catch{return""}}function yu(l,e,t){let n,s,o,{nodes:r=[]}=e,{expanded:f={}}=e,{selectedNodeId:c=""}=e,{level:d=0}=e,{onSelect:v=void 0}=e,{onToggle:_=void 0}=e,{onContextMenu:h=void 0}=e,{onDrop:k=void 0}=e,b={},y=null,w="",j="";const E=["folder","project","client","document","recipe","case"];Kl(()=>{for(const X of Object.keys(b))clearTimeout(b[X]);y&&clearInterval(y)});function T(X){return E.includes(X.type)}function N(X,Z,ue){if(!X||!Z||Z===X.id||!T(X))return!1;let we=X.id;for(;we;){if(we===Z)return!1;we=ue[we]||""}return!0}function D(X,Z){X.stopPropagation(),X.dataTransfer.effectAllowed="move",X.dataTransfer.setData("text/plain",Z.id),t(21,w=Z.id)}function A(X,Z){X.preventDefault(),X.stopPropagation(),X.dataTransfer.dropEffect="move",j!==Z.id&&t(8,j=Z.id),Wt(Z)&&!f[Z.id]&&!b[Z.id]&&(b[Z.id]=setTimeout(()=>{_&&_(Z.id),delete b[Z.id]},600));const ue=X.currentTarget.closest(".workspace-tree-area");if(ue){const we=ue.getBoundingClientRect(),_e=30;X.clientY-we.top<_e?y||(y=setInterval(()=>{ue.scrollTop-=10},50)):we.bottom-X.clientY<_e?y||(y=setInterval(()=>{ue.scrollTop+=10},50)):y&&(clearInterval(y),y=null)}}function M(X,Z){const ue=X.relatedTarget;ue&&X.currentTarget.contains(ue)||(j===Z.id&&t(8,j=""),b[Z.id]&&(clearTimeout(b[Z.id]),delete b[Z.id]),y&&(clearInterval(y),y=null))}function R(X,Z){X.preventDefault(),X.stopPropagation(),b[Z.id]&&(clearTimeout(b[Z.id]),delete b[Z.id]),y&&(clearInterval(y),y=null);const ue=Kn(r),we=Un(ue),_e=ku(X);if(!N(Z,_e,we)){t(8,j=""),t(21,w="");return}k&&k(_e,Z.id),t(8,j=""),t(21,w="")}function V(){t(8,j=""),t(21,w="");for(const X of Object.keys(b))clearTimeout(b[X]),delete b[X];y&&(clearInterval(y),y=null)}function W(X,Z){X.target.closest(".tree-toggle")||X.target.closest(".tree-icon")||v&&v(Z)}function J(X,Z){Wt(Z)&&_&&_(Z.id)}function q(X,Z){(X.key==="Enter"||X.key===" ")&&(X.preventDefault(),v&&v(Z))}function Y(X,Z){X.stopPropagation(),Wt(Z)&&_&&_(Z.id)}function U(X,Z){(X.key==="Enter"||X.key===" ")&&(X.preventDefault(),X.stopPropagation(),Wt(Z)&&_&&_(Z.id))}function H(X,Z){(X.key==="Enter"||X.key===" ")&&(X.preventDefault(),v&&v(Z))}function G(X,Z,ue){const we={};function _e(Ce){for(const Xe of Ce)we[Xe.id]=N(Xe,Z,ue),Xe.children&&_e(Xe.children)}return _e(X),we}function z(X){Po.call(this,l,X)}const K=X=>_&&_(X.id),L=(X,Z)=>Y(Z,X),O=(X,Z)=>U(Z,X),x=X=>v&&v(X),re=(X,Z)=>H(Z,X),te=(X,Z)=>D(Z,X),ne=(X,Z)=>A(Z,X),le=(X,Z)=>M(Z,X),oe=(X,Z)=>R(Z,X),fe=(X,Z)=>W(Z,X),ye=(X,Z)=>q(Z,X),Be=(X,Z)=>J(Z,X),Me=(X,Z)=>h&&h(Z,X);return l.$$set=X=>{"nodes"in X&&t(0,r=X.nodes),"expanded"in X&&t(1,f=X.expanded),"selectedNodeId"in X&&t(2,c=X.selectedNodeId),"level"in X&&t(3,d=X.level),"onSelect"in X&&t(4,v=X.onSelect),"onToggle"in X&&t(5,_=X.onToggle),"onContextMenu"in X&&t(6,h=X.onContextMenu),"onDrop"in X&&t(7,k=X.onDrop)},l.$$.update=()=>{l.$$.dirty[0]&1&&t(23,n=Kn(r)),l.$$.dirty[0]&8388608&&t(22,s=Un(n)),l.$$.dirty[0]&14680064&&t(9,o=G(n,w,s))},[r,f,c,d,v,_,h,k,j,o,D,A,M,R,V,W,J,q,Y,U,H,w,s,n,z,K,L,O,x,re,te,ne,le,oe,fe,ye,Be,Me]}class Qo extends $e{constructor(e){super(),xe(this,e,yu,bu,Ze,{nodes:0,expanded:1,selectedNodeId:2,level:3,onSelect:4,onToggle:5,onContextMenu:6,onDrop:7},null,[-1,-1])}}function Gn(l){let e,t;return{c(){e=u("div"),t=F(l[4]),i(e,"class","path-info svelte-11u707d")},m(n,s){S(n,e,s),a(e,t)},p(n,s){s&16&&B(t,n[4])},d(n){n&&C(e)}}}function Jn(l){let e,t;return{c(){e=u("div"),t=F(l[3]),i(e,"class","error-msg svelte-11u707d")},m(n,s){S(n,e,s),a(e,t)},p(n,s){s&8&&B(t,n[3])},d(n){n&&C(e)}}}function wu(l){let e,t,n,s,o,r,f,c,d,v,_,h,k,b,y,w,j=m("firstrun.browse")+"",E,T,N,D,A,M,R=(l[2]?m("firstrun.creating"):m("firstrun.create"))+"",V,W,J,q,Y,U,H=l[4]&&Gn(l),G=l[3]&&Jn(l);return{c(){e=u("div"),t=u("div"),n=u("div"),n.textContent="⚒",s=g(),o=u("h1"),o.textContent=`${m("firstrun.title")}`,r=g(),f=u("p"),f.textContent=`${m("firstrun.desc")}`,c=g(),d=u("div"),v=u("label"),v.textContent=`${m("firstrun.pathLabel")}`,_=g(),h=u("div"),k=u("input"),y=g(),w=u("button"),E=F(j),T=g(),H&&H.c(),N=g(),G&&G.c(),D=g(),A=u("div"),M=u("button"),V=F(R),J=g(),q=u("button"),q.textContent=`${m("firstrun.quit")}`,i(n,"class","first-run-logo svelte-11u707d"),i(o,"class","svelte-11u707d"),i(f,"class","first-run-desc svelte-11u707d"),i(v,"class","form-label svelte-11u707d"),i(v,"for","vault-path"),i(k,"id","vault-path"),i(k,"type","text"),i(k,"placeholder",b=l[1]||m("firstrun.defaultPath")),k.disabled=l[2],i(k,"class","svelte-11u707d"),i(w,"class","btn"),w.disabled=l[2],i(h,"class","input-row svelte-11u707d"),i(d,"class","form-group svelte-11u707d"),i(M,"class","btn btn-primary btn-lg svelte-11u707d"),M.disabled=W=!l[0].trim()||l[2],i(q,"class","btn btn-lg svelte-11u707d"),i(A,"class","first-run-actions svelte-11u707d"),i(t,"class","first-run-card svelte-11u707d"),i(e,"class","first-run-screen svelte-11u707d")},m(z,K){S(z,e,K),a(e,t),a(t,n),a(t,s),a(t,o),a(t,r),a(t,f),a(t,c),a(t,d),a(d,v),a(d,_),a(d,h),a(h,k),be(k,l[0]),a(h,y),a(h,w),a(w,E),a(t,T),H&&H.m(t,null),a(t,N),G&&G.m(t,null),a(t,D),a(t,A),a(A,M),a(M,V),a(A,J),a(A,q),Y||(U=[I(k,"input",l[12]),I(k,"input",l[6]),I(k,"keydown",l[9]),I(w,"click",l[5]),I(M,"click",l[7]),I(q,"click",l[8])],Y=!0)},p(z,[K]){K&2&&b!==(b=z[1]||m("firstrun.defaultPath"))&&i(k,"placeholder",b),K&4&&(k.disabled=z[2]),K&1&&k.value!==z[0]&&be(k,z[0]),K&4&&(w.disabled=z[2]),z[4]?H?H.p(z,K):(H=Gn(z),H.c(),H.m(t,N)):H&&(H.d(1),H=null),z[3]?G?G.p(z,K):(G=Jn(z),G.c(),G.m(t,D)):G&&(G.d(1),G=null),K&4&&R!==(R=(z[2]?m("firstrun.creating"):m("firstrun.create"))+"")&&B(V,R),K&5&&W!==(W=!z[0].trim()||z[2])&&(M.disabled=W)},i:$,o:$,d(z){z&&C(e),H&&H.d(),G&&G.d(),Y=!1,me(U)}}}function tl(l,...e){try{if(window.go&&window.go.main&&window.go.main.App){const t=window.go.main.App[l];if(typeof t=="function")return t(...e)}}catch(t){console.error("Wails error:",l,t)}return Promise.reject(new Error("Wails not connected: "+l))}function Cu(l,e,t){let{onComplete:n=null}=e,{onQuit:s=null}=e,o="",r="",f=!1,c="",d="",v=null;async function _(){try{const E=await tl("GetDefaultVaultPath");t(1,r=E||""),t(0,o=r||""),o&&await k()}catch{t(1,r="")}}_();async function h(){try{const E=await tl("PickDirectory");E&&(t(0,o=E),await k())}catch(E){t(3,c=String(E))}}async function k(){if(!o||!o.trim()){t(4,d=""),v=null;return}try{v=await tl("CheckVaultPath",o.trim()),v&&t(4,d=v.description)}catch{t(4,d=""),v=null}}async function b(){if(!(!o||!o.trim())){if(t(2,f=!0),t(3,c=""),v&&!v.writable){t(3,c=m("firstrun.errorNoWrite")),t(2,f=!1);return}try{const E=await tl("CreateVault",o.trim());E&&E.status==="ready"&&n&&n(E)}catch(E){t(3,c=String(E))}t(2,f=!1)}}function y(){s&&s()}function w(E){E.key==="Enter"&&!f&&o.trim()&&b()}function j(){o=this.value,t(0,o)}return l.$$set=E=>{"onComplete"in E&&t(10,n=E.onComplete),"onQuit"in E&&t(11,s=E.onQuit)},[o,r,f,c,d,h,k,b,y,w,n,s,j]}class Su extends $e{constructor(e){super(),xe(this,e,Cu,wu,Ze,{onComplete:10,onQuit:11})}}function qn(l){let e,t;return{c(){e=u("div"),t=F(l[2]),i(e,"class","error-msg svelte-s3o8c3")},m(n,s){S(n,e,s),a(e,t)},p(n,s){s&4&&B(t,n[2])},d(n){n&&C(e)}}}function Yn(l){let e,t,n,s,o,r,f,c,d=m("common.yes")+"",v,_,h,k,b;return{c(){e=u("div"),t=u("div"),n=u("h3"),n.textContent=`${m("recovery.createConfirmTitle")}`,s=g(),o=u("p"),o.textContent=`${m("recovery.createConfirm")}`,r=g(),f=u("div"),c=u("button"),v=F(d),_=g(),h=u("button"),h.textContent=`${m("common.cancel")}`,i(n,"class","svelte-s3o8c3"),i(o,"class","modal-desc svelte-s3o8c3"),i(c,"class","btn btn-primary"),c.disabled=l[1],i(h,"class","btn"),i(f,"class","modal-actions svelte-s3o8c3"),i(t,"class","modal svelte-s3o8c3"),i(e,"class","modal-overlay svelte-s3o8c3"),i(e,"role","button"),i(e,"tabindex","0")},m(y,w){S(y,e,w),a(e,t),a(t,n),a(t,s),a(t,o),a(t,r),a(t,f),a(f,c),a(c,v),a(f,_),a(f,h),k||(b=[I(c,"click",l[6]),I(h,"click",l[7]),I(e,"click",mt(l[7])),I(e,"keydown",l[11])],k=!0)},p(y,w){w&2&&(c.disabled=y[1])},d(y){y&&C(e),k=!1,me(b)}}}function ju(l){let e,t,n,s,o,r,f,c,d,v=(l[0]||"—")+"",_,h,k,b,y,w=m("recovery.choose")+"",j,E,T,N=m("recovery.create")+"",D,A,M,R,V,W,J,q=l[2]&&qn(l),Y=l[3]&&Yn(l);return{c(){e=u("div"),t=u("div"),n=u("div"),n.textContent="⚠",s=g(),o=u("h1"),o.textContent=`${m("recovery.title")}`,r=g(),f=u("p"),f.textContent=`${m("recovery.expected")}:`,c=g(),d=u("code"),_=F(v),h=g(),q&&q.c(),k=g(),b=u("div"),y=u("button"),j=F(w),E=g(),T=u("button"),D=F(N),A=g(),M=u("button"),M.textContent=`${m("recovery.quit")}`,R=g(),Y&&Y.c(),V=ot(),i(n,"class","recovery-icon svelte-s3o8c3"),i(o,"class","svelte-s3o8c3"),i(f,"class","recovery-desc svelte-s3o8c3"),i(d,"class","recovery-path svelte-s3o8c3"),i(y,"class","btn btn-primary btn-lg svelte-s3o8c3"),y.disabled=l[1],i(T,"class","btn btn-lg svelte-s3o8c3"),T.disabled=l[1],i(M,"class","btn btn-lg svelte-s3o8c3"),i(b,"class","recovery-actions svelte-s3o8c3"),i(t,"class","recovery-card svelte-s3o8c3"),i(e,"class","recovery-screen svelte-s3o8c3")},m(U,H){S(U,e,H),a(e,t),a(t,n),a(t,s),a(t,o),a(t,r),a(t,f),a(t,c),a(t,d),a(d,_),a(t,h),q&&q.m(t,null),a(t,k),a(t,b),a(b,y),a(y,j),a(b,E),a(b,T),a(T,D),a(b,A),a(b,M),S(U,R,H),Y&&Y.m(U,H),S(U,V,H),W||(J=[I(y,"click",l[4]),I(T,"click",l[5]),I(M,"click",l[8])],W=!0)},p(U,[H]){H&1&&v!==(v=(U[0]||"—")+"")&&B(_,v),U[2]?q?q.p(U,H):(q=qn(U),q.c(),q.m(t,k)):q&&(q.d(1),q=null),H&2&&(y.disabled=U[1]),H&2&&(T.disabled=U[1]),U[3]?Y?Y.p(U,H):(Y=Yn(U),Y.c(),Y.m(V.parentNode,V)):Y&&(Y.d(1),Y=null)},i:$,o:$,d(U){U&&(C(e),C(R),C(V)),q&&q.d(),Y&&Y.d(U),W=!1,me(J)}}}function Ll(l,...e){try{if(window.go&&window.go.main&&window.go.main.App){const t=window.go.main.App[l];if(typeof t=="function")return t(...e)}}catch(t){console.error("Wails error:",l,t)}return Promise.reject(new Error("Wails not connected: "+l))}function Eu(l,e,t){let{vaultPath:n=""}=e,{onComplete:s=null}=e,{onQuit:o=null}=e,r=!1,f="",c=!1;async function d(){try{const y=await Ll("PickDirectory");if(!y)return;t(1,r=!0),t(2,f="");const w=await Ll("OpenVault",y);w&&w.status==="ready"&&s&&s(w)}catch(y){t(2,f=String(y))}t(1,r=!1)}function v(){t(3,c=!0)}async function _(){t(3,c=!1),t(1,r=!0),t(2,f="");try{const y=await Ll("CreateVault",n);y&&y.status==="ready"&&s&&s(y)}catch(y){t(2,f=String(y))}t(1,r=!1)}function h(){t(3,c=!1)}function k(){o&&o()}const b=y=>y.key==="Enter"&&h();return l.$$set=y=>{"vaultPath"in y&&t(0,n=y.vaultPath),"onComplete"in y&&t(9,s=y.onComplete),"onQuit"in y&&t(10,o=y.onQuit)},[n,r,f,c,d,v,_,h,k,s,o,b]}class Tu extends $e{constructor(e){super(),xe(this,e,Eu,ju,Ze,{vaultPath:0,onComplete:9,onQuit:10})}}function Qn(l,e,t){const n=l.slice();return n[5]=e[t],n}function Nu(l){let e,t,n;return{c(){e=Q("path"),t=Q("path"),n=Q("path"),i(e,"d","M5 4h12l2 2v14H5z"),i(t,"d","M8 4v6h8V4"),i(n,"d","M8 20v-6h8v6")},m(s,o){S(s,e,o),S(s,t,o),S(s,n,o)},d(s){s&&(C(e),C(t),C(n))}}}function Du(l){let e,t,n,s;return{c(){e=Q("path"),t=Q("path"),n=Q("path"),s=Q("path"),i(e,"d","M20 11a8 8 0 0 0-14-4l-2 2"),i(t,"d","M4 5v4h4"),i(n,"d","M4 13a8 8 0 0 0 14 4l2-2"),i(s,"d","M20 19v-4h-4")},m(o,r){S(o,e,r),S(o,t,r),S(o,n,r),S(o,s,r)},d(o){o&&(C(e),C(t),C(n),C(s))}}}function Mu(l){let e;return{c(){e=Q("path"),i(e,"d","M4 19V9M10 19V5M16 19v-7M22 19H2")},m(t,n){S(t,e,n)},d(t){t&&C(e)}}}function Iu(l){let e;return{c(){e=Q("path"),i(e,"d","M3 6h6l2 2h10v10a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V6z")},m(t,n){S(t,e,n)},d(t){t&&C(e)}}}function Au(l){let e,t;return{c(){e=Q("path"),t=Q("path"),i(e,"d","M9 3v5M15 3v5M7 8h10v3a5 5 0 0 1-10 0V8z"),i(t,"d","M12 16v5")},m(n,s){S(n,e,s),S(n,t,s)},d(n){n&&(C(e),C(t))}}}function Fu(l){let e,t;return{c(){e=Q("rect"),t=Q("path"),i(e,"x","4"),i(e,"y","3"),i(e,"width","16"),i(e,"height","18"),i(e,"rx","2"),i(t,"d","M8 7h8M8 11h8M8 15h5")},m(n,s){S(n,e,s),S(n,t,s)},d(n){n&&(C(e),C(t))}}}function Pu(l){let e,t,n;return{c(){e=Q("path"),t=Q("path"),n=Q("path"),i(e,"d","M3 10.5 12 3l9 7.5"),i(t,"d","M5 9.5V21h14V9.5"),i(n,"d","M10 21v-6h4v6")},m(s,o){S(s,e,o),S(s,t,o),S(s,n,o)},d(s){s&&(C(e),C(t),C(n))}}}function Lu(l){let e,t;return{c(){e=Q("circle"),t=Q("path"),i(e,"cx","12"),i(e,"cy","12"),i(e,"r","3"),i(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(n,s){S(n,e,s),S(n,t,s)},d(n){n&&(C(e),C(t))}}}function Xn(l){let e,t,n,s,o,r,f,c;function d(k,b){if(k[5].id==="general")return Lu;if(k[5].id==="workspace")return Pu;if(k[5].id==="templates")return Fu;if(k[5].id==="plugins")return Au;if(k[5].id==="files")return Iu;if(k[5].id==="activity")return Mu;if(k[5].id==="sync")return Du;if(k[5].id==="backup")return Nu}let v=d(l),_=v&&v(l);function h(){return l[4](l[5])}return{c(){e=u("button"),t=u("span"),n=Q("svg"),_&&_.c(),s=g(),o=u("span"),o.textContent=`${l[5].label}`,r=g(),i(n,"width","16"),i(n,"height","16"),i(n,"viewBox","0 0 24 24"),i(n,"fill","none"),i(n,"stroke","currentColor"),i(n,"stroke-width","1.8"),i(n,"stroke-linecap","round"),i(n,"stroke-linejoin","round"),i(n,"aria-hidden","true"),i(t,"class","settings-nav-icon svelte-1uolm3f"),i(o,"class","settings-nav-label svelte-1uolm3f"),i(e,"class","settings-nav-item svelte-1uolm3f"),he(e,"active",l[0]===l[5].id),he(e,"disabled",l[5].id==="plugins"||l[5].id==="files"||l[5].id==="activity"||l[5].id==="backup")},m(k,b){S(k,e,b),a(e,t),a(t,n),_&&_.m(n,null),a(e,s),a(e,o),a(e,r),f||(c=I(e,"click",h),f=!0)},p(k,b){l=k,b&3&&he(e,"active",l[0]===l[5].id)},d(k){k&&C(e),_&&_.d(),f=!1,c()}}}function Ru(l){let e,t=ce(l[1]),n=[];for(let s=0;sr(c.id);return l.$$set=c=>{"activeSection"in c&&t(0,n=c.activeSection),"onSelect"in c&&t(3,s=c.onSelect)},[n,o,r,s,f]}class Ou extends $e{constructor(e){super(),xe(this,e,zu,Ru,Ze,{activeSection:0,onSelect:3})}}function Zn(l){let e;return{c(){e=u("div"),e.textContent=`${m("settings.saved")}`,i(e,"class","save-notice svelte-1e2uhdh")},m(t,n){S(t,e,n)},d(t){t&&C(e)}}}function Vu(l){let e,t,n,s,o,r,f,c,d,v,_,h,k,b,y,w,j,E,T,N,D,A,M,R,V,W,J,q,Y,U,H,G,z,K=l[1]&&Zn();return{c(){e=u("div"),t=u("h2"),t.textContent=`${m("settings.general")}`,n=g(),s=u("p"),s.textContent=`${m("settings.generalDesc")}`,o=g(),r=u("div"),f=u("h3"),f.textContent=`${m("settings.appearance")}`,c=g(),d=u("div"),v=u("label"),_=u("span"),_.textContent=`${m("settings.theme")}`,h=g(),k=u("select"),b=u("option"),b.textContent=`${m("settings.themeSystem")}`,y=u("option"),y.textContent=`${m("settings.themeLight")} (${m("settings.langSoon")})`,w=u("option"),w.textContent=`${m("settings.themeDark")} (${m("settings.langSoon")})`,j=g(),E=u("div"),T=u("h3"),T.textContent=`${m("settings.localization")}`,N=g(),D=u("div"),A=u("label"),M=u("span"),M.textContent=`${m("settings.language")}`,R=g(),V=u("select"),W=u("option"),W.textContent=`${m("settings.langRu")}`,J=u("option"),J.textContent=`${m("settings.langEn")} (${m("settings.langSoon")})`,q=g(),Y=u("div"),K&&K.c(),U=g(),H=u("button"),H.textContent=`${m("settings.save")}`,i(t,"class","svelte-1e2uhdh"),i(s,"class","section-desc svelte-1e2uhdh"),i(f,"class","card-title svelte-1e2uhdh"),i(_,"class","label-text svelte-1e2uhdh"),b.__value="system",be(b,b.__value),y.__value="light",be(y,y.__value),y.disabled=!0,w.__value="dark",be(w,w.__value),w.disabled=!0,l[0]===void 0&&Et(()=>l[5].call(k)),i(d,"class","form-group svelte-1e2uhdh"),i(r,"class","settings-card svelte-1e2uhdh"),i(T,"class","card-title svelte-1e2uhdh"),i(M,"class","label-text svelte-1e2uhdh"),W.__value="ru",be(W,W.__value),J.__value="en",be(J,J.__value),V.disabled=!0,i(D,"class","form-group svelte-1e2uhdh"),i(E,"class","settings-card svelte-1e2uhdh"),i(H,"class","btn btn-primary"),i(Y,"class","settings-actions svelte-1e2uhdh"),i(e,"class","settings-section svelte-1e2uhdh")},m(L,O){S(L,e,O),a(e,t),a(e,n),a(e,s),a(e,o),a(e,r),a(r,f),a(r,c),a(r,d),a(d,v),a(v,_),a(v,h),a(v,k),a(k,b),a(k,y),a(k,w),_t(k,l[0],!0),a(e,j),a(e,E),a(E,T),a(E,N),a(E,D),a(D,A),a(A,M),a(A,R),a(A,V),a(V,W),a(V,J),a(e,q),a(e,Y),K&&K.m(Y,null),a(Y,U),a(Y,H),G||(z=[I(k,"change",l[5]),I(H,"click",l[2])],G=!0)},p(L,[O]){O&1&&_t(k,L[0]),L[1]?K||(K=Zn(),K.c(),K.m(Y,U)):K&&(K.d(1),K=null)},i:$,o:$,d(L){L&&C(e),K&&K.d(),G=!1,me(z)}}}function Wu(l,e,t){let{appConfig:n=null}=e,{onSave:s=null}=e,o="system",r=!1;function f(){n&&t(0,o=n.theme||"system")}async function c(){n&&(t(3,n.theme=o,n),s&&await s(n),t(1,r=!0),setTimeout(()=>t(1,r=!1),2e3))}function d(){o=nl(this),t(0,o)}return l.$$set=v=>{"appConfig"in v&&t(3,n=v.appConfig),"onSave"in v&&t(4,s=v.onSave)},l.$$.update=()=>{l.$$.dirty&8&&n&&f()},[o,r,c,n,s,d]}class Bu extends $e{constructor(e){super(),xe(this,e,Wu,Vu,Ze,{appConfig:3,onSave:4})}}function xn(l){let e,t;return{c(){e=u("div"),t=F(l[1]),i(e,"class","notice svelte-1zbky3")},m(n,s){S(n,e,s),a(e,t)},p(n,s){s&2&&B(t,n[1])},d(n){n&&C(e)}}}function Hu(l){let e;return{c(){e=u("p"),e.textContent=`${m("settings.noVaultInfo")}`,i(e,"class","no-data svelte-1zbky3")},m(t,n){S(t,e,n)},p:$,d(t){t&&C(e)}}}function Uu(l){let e,t,n,s,o,r=l[0].path+"",f,c,d,v,_,h,k=l[0].dbPath+"",b,y,w,j=l[0].nodeCount!==void 0&&$n(l),E=l[0].fileCount!==void 0&&es(l);return{c(){e=u("div"),t=u("div"),n=u("span"),n.textContent=`${m("settings.vaultPath")}`,s=g(),o=u("span"),f=F(r),c=g(),d=u("div"),v=u("span"),v.textContent="DB",_=g(),h=u("span"),b=F(k),y=g(),j&&j.c(),w=g(),E&&E.c(),i(n,"class","info-label svelte-1zbky3"),i(o,"class","info-value mono svelte-1zbky3"),i(t,"class","info-row svelte-1zbky3"),i(v,"class","info-label svelte-1zbky3"),i(h,"class","info-value mono small svelte-1zbky3"),i(d,"class","info-row svelte-1zbky3"),i(e,"class","vault-info svelte-1zbky3")},m(T,N){S(T,e,N),a(e,t),a(t,n),a(t,s),a(t,o),a(o,f),a(e,c),a(e,d),a(d,v),a(d,_),a(d,h),a(h,b),a(e,y),j&&j.m(e,null),a(e,w),E&&E.m(e,null)},p(T,N){N&1&&r!==(r=T[0].path+"")&&B(f,r),N&1&&k!==(k=T[0].dbPath+"")&&B(b,k),T[0].nodeCount!==void 0?j?j.p(T,N):(j=$n(T),j.c(),j.m(e,w)):j&&(j.d(1),j=null),T[0].fileCount!==void 0?E?E.p(T,N):(E=es(T),E.c(),E.m(e,null)):E&&(E.d(1),E=null)},d(T){T&&C(e),j&&j.d(),E&&E.d()}}}function $n(l){let e,t,n,s,o=l[0].nodeCount+"",r;return{c(){e=u("div"),t=u("span"),t.textContent="Nodes",n=g(),s=u("span"),r=F(o),i(t,"class","info-label svelte-1zbky3"),i(s,"class","info-value svelte-1zbky3"),i(e,"class","info-row svelte-1zbky3")},m(f,c){S(f,e,c),a(e,t),a(e,n),a(e,s),a(s,r)},p(f,c){c&1&&o!==(o=f[0].nodeCount+"")&&B(r,o)},d(f){f&&C(e)}}}function es(l){let e,t,n,s,o=l[0].fileCount+"",r;return{c(){e=u("div"),t=u("span"),t.textContent="Files",n=g(),s=u("span"),r=F(o),i(t,"class","info-label svelte-1zbky3"),i(s,"class","info-value svelte-1zbky3"),i(e,"class","info-row svelte-1zbky3")},m(f,c){S(f,e,c),a(e,t),a(e,n),a(e,s),a(s,r)},p(f,c){c&1&&o!==(o=f[0].fileCount+"")&&B(r,o)},d(f){f&&C(e)}}}function Ku(l){let e,t,n,s,o,r,f,c,d,v,_,h,k,b,y,w,j=l[1]&&xn(l);function E(D,A){return D[0]?Uu:Hu}let T=E(l),N=T(l);return{c(){e=u("div"),t=u("h2"),t.textContent=`${m("settings.workspace")}`,n=g(),s=u("p"),s.textContent=`${m("settings.workspaceDesc")}`,o=g(),j&&j.c(),r=g(),f=u("div"),N.c(),c=g(),d=u("div"),v=u("button"),v.textContent=`${m("settings.openVault")}`,_=g(),h=u("button"),h.textContent=`${m("settings.changeVault")}`,k=g(),b=u("button"),b.textContent=`${m("settings.checkIntegrity")}`,i(t,"class","svelte-1zbky3"),i(s,"class","section-desc svelte-1zbky3"),i(f,"class","settings-card svelte-1zbky3"),i(v,"class","btn svelte-1zbky3"),i(h,"class","btn svelte-1zbky3"),i(b,"class","btn svelte-1zbky3"),i(d,"class","workspace-actions svelte-1zbky3"),i(e,"class","settings-section svelte-1zbky3")},m(D,A){S(D,e,A),a(e,t),a(e,n),a(e,s),a(e,o),j&&j.m(e,null),a(e,r),a(e,f),N.m(f,null),a(e,c),a(e,d),a(d,v),a(d,_),a(d,h),a(d,k),a(d,b),y||(w=[I(v,"click",l[2]),I(h,"click",l[4]),I(b,"click",l[3])],y=!0)},p(D,[A]){D[1]?j?j.p(D,A):(j=xn(D),j.c(),j.m(e,r)):j&&(j.d(1),j=null),T===(T=E(D))&&N?N.p(D,A):(N.d(1),N=T(D),N&&(N.c(),N.m(f,null)))},i:$,o:$,d(D){D&&C(e),j&&j.d(),N.d(),y=!1,me(w)}}}function Ft(l,...e){try{if(window.go&&window.go.main&&window.go.main.App){const t=window.go.main.App[l];if(typeof t=="function")return t(...e)}}catch(t){console.error("Wails error:",l,t)}return Promise.reject(new Error("Wails not connected: "+l))}function Gu(l,e,t){let{onRefresh:n=null}=e,s=null,o="";async function r(){try{t(0,s=await Ft("GetVaultInfo"))}catch{t(0,s=null)}}r();async function f(){try{await Ft("OpenVaultFolder")}catch(v){t(1,o=String(v))}}async function c(){try{const v=await Ft("VaultCheck");v.healthy?t(1,o="Vault healthy"):t(1,o="Issues found: "+(v.errors||[]).join("; "))}catch(v){t(1,o=String(v))}}async function d(){try{const v=await Ft("PickDirectory");if(!v)return;const _=await Ft("OpenVault",v);_&&_.status==="ready"&&(t(0,s=await Ft("GetVaultInfo")),n&&n())}catch(v){t(1,o=String(v))}}return l.$$set=v=>{"onRefresh"in v&&t(5,n=v.onRefresh)},[s,o,f,c,d,n]}class Ju extends $e{constructor(e){super(),xe(this,e,Gu,Ku,Ze,{onRefresh:5})}}function ts(l,e,t){const n=l.slice();return n[6]=e[t],n}function qu(l){let e,t=ce(l[0]),n=[];for(let s=0;sf(d);return l.$$set=d=>{"onRefresh"in d&&t(3,n=d.onRefresh)},[s,o,f,n,c]}class xu extends $e{constructor(e){super(),xe(this,e,Zu,Xu,Ze,{onRefresh:3})}}function $u(l){let e,t,n,s,o,r,f,c;return{c(){e=u("div"),t=u("h2"),t.textContent=`${m("settings.plugins")}`,n=g(),s=u("p"),s.textContent=`${m("settings.noPlugins")}`,o=g(),r=u("button"),r.textContent=`${m("settings.openPluginsDir")}`,i(t,"class","svelte-8jch95"),i(s,"class","section-desc svelte-8jch95"),i(r,"class","btn"),i(e,"class","settings-section svelte-8jch95")},m(d,v){S(d,e,v),a(e,t),a(e,n),a(e,s),a(e,o),a(e,r),f||(c=I(r,"click",td),f=!0)},p:$,i:$,o:$,d(d){d&&C(e),f=!1,c()}}}function ed(l,...e){try{if(window.go&&window.go.main&&window.go.main.App){const t=window.go.main.App[l];if(typeof t=="function")return t(...e)}}catch(t){console.error("Wails error:",l,t)}return Promise.reject(new Error("Wails not connected: "+l))}async function td(){try{await ed("OpenPluginsFolder")}catch{}}class ld extends $e{constructor(e){super(),xe(this,e,null,$u,Ze,{})}}function nd(l){let e,t,n,s;return{c(){e=u("div"),t=u("h2"),t.textContent=`${m("settings.files")}`,n=g(),s=u("p"),s.textContent=`${m("settings.filesStub")}`,i(t,"class","svelte-19bo7bn"),i(s,"class","section-desc svelte-19bo7bn"),i(e,"class","settings-section svelte-19bo7bn")},m(o,r){S(o,e,r),a(e,t),a(e,n),a(e,s)},p:$,i:$,o:$,d(o){o&&C(e)}}}class sd extends $e{constructor(e){super(),xe(this,e,null,nd,Ze,{})}}function id(l){let e,t,n,s;return{c(){e=u("div"),t=u("h2"),t.textContent=`${m("settings.activity")}`,n=g(),s=u("p"),s.textContent=`${m("settings.activityStub")}`,i(t,"class","svelte-19bo7bn"),i(s,"class","section-desc svelte-19bo7bn"),i(e,"class","settings-section svelte-19bo7bn")},m(o,r){S(o,e,r),a(e,t),a(e,n),a(e,s)},p:$,i:$,o:$,d(o){o&&C(e)}}}class od extends $e{constructor(e){super(),xe(this,e,null,id,Ze,{})}}function ss(l){let e,t;return{c(){e=u("div"),t=F(l[2]),i(e,"class","error-msg svelte-1fx1e1e")},m(n,s){S(n,e,s),a(e,t)},p(n,s){s[0]&4&&B(t,n[2])},d(n){n&&C(e)}}}function is(l){let e,t;return{c(){e=u("div"),t=F(l[3]),i(e,"class","result-msg svelte-1fx1e1e"),he(e,"warning",l[4]==="warning")},m(n,s){S(n,e,s),a(e,t)},p(n,s){s[0]&8&&B(t,n[3]),s[0]&16&&he(e,"warning",n[4]==="warning")},d(n){n&&C(e)}}}function rd(l){let e,t,n,s,o,r,f,c,d,v,_,h,k,b,y,w,j,E,T,N,D,A,M=m("settings.checkConnection")+"",R,V,W,J,q=m("common.connect")+"",Y,U,H,G,z,K=l[11]!==null&&os(l);return{c(){e=u("div"),t=u("div"),n=u("div"),s=u("label"),o=u("span"),o.textContent=`${m("settings.serverUrl")}`,r=g(),f=u("input"),c=g(),d=u("div"),v=u("label"),_=u("span"),_.textContent=`${m("sync.username")}`,h=g(),k=u("input"),b=g(),y=u("div"),w=u("label"),j=u("span"),j.textContent=`${m("sync.password")}`,E=g(),T=u("input"),N=g(),D=u("div"),A=u("button"),R=F(M),W=g(),J=u("button"),Y=F(q),H=g(),K&&K.c(),i(o,"class","label-text"),i(f,"type","text"),i(f,"placeholder","https://example.com"),i(n,"class","form-group svelte-1fx1e1e"),i(_,"class","label-text"),i(k,"type","text"),i(d,"class","form-group svelte-1fx1e1e"),i(j,"class","label-text"),i(T,"type","password"),i(y,"class","form-group svelte-1fx1e1e"),i(A,"class","btn"),A.disabled=V=l[1]||!l[5],i(J,"class","btn btn-primary"),J.disabled=U=l[1]||!l[5]||!l[6]||!l[7],i(D,"class","sync-setup-actions svelte-1fx1e1e"),i(t,"class","sync-setup svelte-1fx1e1e"),i(e,"class","settings-card svelte-1fx1e1e")},m(L,O){S(L,e,O),a(e,t),a(t,n),a(n,s),a(s,o),a(s,r),a(s,f),be(f,l[5]),a(t,c),a(t,d),a(d,v),a(v,_),a(v,h),a(v,k),be(k,l[6]),a(t,b),a(t,y),a(y,w),a(w,j),a(w,E),a(w,T),be(T,l[7]),a(t,N),a(t,D),a(D,A),a(A,R),a(D,W),a(D,J),a(J,Y),a(t,H),K&&K.m(t,null),G||(z=[I(f,"input",l[23]),I(k,"input",l[24]),I(T,"input",l[25]),I(A,"click",l[12]),I(J,"click",l[13])],G=!0)},p(L,O){O[0]&32&&f.value!==L[5]&&be(f,L[5]),O[0]&64&&k.value!==L[6]&&be(k,L[6]),O[0]&128&&T.value!==L[7]&&be(T,L[7]),O[0]&34&&V!==(V=L[1]||!L[5])&&(A.disabled=V),O[0]&226&&U!==(U=L[1]||!L[5]||!L[6]||!L[7])&&(J.disabled=U),L[11]!==null?K?K.p(L,O):(K=os(L),K.c(),K.m(t,null)):K&&(K.d(1),K=null)},d(L){L&&C(e),K&&K.d(),G=!1,me(z)}}}function ad(l){let e,t,n,s,o,r,f=l[20](l[0].lastStatus)+"",c,d,v,_,h,k,b,y,w,j=m("settings.syncNow")+"",E,T,N,D=m("settings.disconnect")+"",A,M,R,V=m("settings.resetKey")+"",W,J,q,Y,U,H,G,z,K,L,O,x,re=l[0].serverUrl&&rs(l),te=l[0].deviceName&&as(l),ne=l[0].deviceId&&cs(l),le=l[0].lastSyncAt&&fs(l),oe=l[0].lastError&&us(l);return{c(){e=u("div"),t=u("div"),n=u("div"),s=u("span"),s.textContent=`${m("settings.status")}`,o=g(),r=u("span"),c=F(f),d=g(),re&&re.c(),v=g(),te&&te.c(),_=g(),ne&&ne.c(),h=g(),le&&le.c(),k=g(),oe&&oe.c(),b=g(),y=u("div"),w=u("button"),E=F(j),T=g(),N=u("button"),A=F(D),M=g(),R=u("button"),W=F(V),J=g(),q=u("div"),Y=u("label"),U=u("span"),U.textContent=`${m("sync.interval")}`,H=g(),G=u("div"),z=u("input"),K=g(),L=u("button"),L.textContent=`${m("common.save")}`,i(s,"class","info-label svelte-1fx1e1e"),i(r,"class","info-value svelte-1fx1e1e"),he(r,"status-ok",l[0].lastStatus==="connected"),he(r,"status-err",l[0].lastStatus==="error"||l[0].lastStatus==="revoked"),i(n,"class","info-row svelte-1fx1e1e"),i(t,"class","sync-info svelte-1fx1e1e"),i(e,"class","settings-card svelte-1fx1e1e"),i(w,"class","btn btn-primary"),w.disabled=l[1],i(N,"class","btn"),N.disabled=l[1],i(R,"class","btn"),R.disabled=l[1],i(y,"class","sync-actions svelte-1fx1e1e"),i(U,"class","label-text"),i(z,"type","number"),i(z,"min","0"),i(z,"placeholder","0"),i(z,"class","svelte-1fx1e1e"),i(L,"class","btn btn-sm"),i(G,"class","interval-row svelte-1fx1e1e"),i(q,"class","sync-interval svelte-1fx1e1e")},m(fe,ye){S(fe,e,ye),a(e,t),a(t,n),a(n,s),a(n,o),a(n,r),a(r,c),a(t,d),re&&re.m(t,null),a(t,v),te&&te.m(t,null),a(t,_),ne&&ne.m(t,null),a(t,h),le&&le.m(t,null),a(t,k),oe&&oe.m(t,null),S(fe,b,ye),S(fe,y,ye),a(y,w),a(w,E),a(y,T),a(y,N),a(N,A),a(y,M),a(y,R),a(R,W),S(fe,J,ye),S(fe,q,ye),a(q,Y),a(Y,U),a(Y,H),a(Y,G),a(G,z),be(z,l[8]),a(G,K),a(G,L),O||(x=[I(w,"click",l[14]),I(N,"click",l[16]),I(R,"click",l[18]),I(z,"input",l[22]),I(L,"click",l[15])],O=!0)},p(fe,ye){ye[0]&1&&f!==(f=fe[20](fe[0].lastStatus)+"")&&B(c,f),ye[0]&1&&he(r,"status-ok",fe[0].lastStatus==="connected"),ye[0]&1&&he(r,"status-err",fe[0].lastStatus==="error"||fe[0].lastStatus==="revoked"),fe[0].serverUrl?re?re.p(fe,ye):(re=rs(fe),re.c(),re.m(t,v)):re&&(re.d(1),re=null),fe[0].deviceName?te?te.p(fe,ye):(te=as(fe),te.c(),te.m(t,_)):te&&(te.d(1),te=null),fe[0].deviceId?ne?ne.p(fe,ye):(ne=cs(fe),ne.c(),ne.m(t,h)):ne&&(ne.d(1),ne=null),fe[0].lastSyncAt?le?le.p(fe,ye):(le=fs(fe),le.c(),le.m(t,k)):le&&(le.d(1),le=null),fe[0].lastError?oe?oe.p(fe,ye):(oe=us(fe),oe.c(),oe.m(t,null)):oe&&(oe.d(1),oe=null),ye[0]&2&&(w.disabled=fe[1]),ye[0]&2&&(N.disabled=fe[1]),ye[0]&2&&(R.disabled=fe[1]),ye[0]&256&&rl(z.value)!==fe[8]&&be(z,fe[8])},d(fe){fe&&(C(e),C(b),C(y),C(J),C(q)),re&&re.d(),te&&te.d(),ne&&ne.d(),le&&le.d(),oe&&oe.d(),O=!1,me(x)}}}function os(l){let e,t=(l[11]?m("common.test")+" OK":m("error.generic"))+"",n;return{c(){e=u("div"),n=F(t),i(e,"class","connection-result svelte-1fx1e1e"),he(e,"ok",l[11]),he(e,"fail",!l[11])},m(s,o){S(s,e,o),a(e,n)},p(s,o){o[0]&2048&&t!==(t=(s[11]?m("common.test")+" OK":m("error.generic"))+"")&&B(n,t),o[0]&2048&&he(e,"ok",s[11]),o[0]&2048&&he(e,"fail",!s[11])},d(s){s&&C(e)}}}function rs(l){let e,t,n,s,o=l[0].serverUrl+"",r;return{c(){e=u("div"),t=u("span"),t.textContent=`${m("settings.serverUrl")}`,n=g(),s=u("span"),r=F(o),i(t,"class","info-label svelte-1fx1e1e"),i(s,"class","info-value mono svelte-1fx1e1e"),i(e,"class","info-row svelte-1fx1e1e")},m(f,c){S(f,e,c),a(e,t),a(e,n),a(e,s),a(s,r)},p(f,c){c[0]&1&&o!==(o=f[0].serverUrl+"")&&B(r,o)},d(f){f&&C(e)}}}function as(l){let e,t,n,s,o=l[0].deviceName+"",r;return{c(){e=u("div"),t=u("span"),t.textContent=`${m("settings.deviceName")}`,n=g(),s=u("span"),r=F(o),i(t,"class","info-label svelte-1fx1e1e"),i(s,"class","info-value svelte-1fx1e1e"),i(e,"class","info-row svelte-1fx1e1e")},m(f,c){S(f,e,c),a(e,t),a(e,n),a(e,s),a(s,r)},p(f,c){c[0]&1&&o!==(o=f[0].deviceName+"")&&B(r,o)},d(f){f&&C(e)}}}function cs(l){let e,t,n,s,o=l[0].deviceId+"",r;return{c(){e=u("div"),t=u("span"),t.textContent=`${m("settings.deviceId")}`,n=g(),s=u("span"),r=F(o),i(t,"class","info-label svelte-1fx1e1e"),i(s,"class","info-value mono svelte-1fx1e1e"),i(e,"class","info-row svelte-1fx1e1e")},m(f,c){S(f,e,c),a(e,t),a(e,n),a(e,s),a(s,r)},p(f,c){c[0]&1&&o!==(o=f[0].deviceId+"")&&B(r,o)},d(f){f&&C(e)}}}function fs(l){let e,t,n,s,o=l[0].lastSyncAt+"",r;return{c(){e=u("div"),t=u("span"),t.textContent=`${m("settings.lastSync")}`,n=g(),s=u("span"),r=F(o),i(t,"class","info-label svelte-1fx1e1e"),i(s,"class","info-value svelte-1fx1e1e"),i(e,"class","info-row svelte-1fx1e1e")},m(f,c){S(f,e,c),a(e,t),a(e,n),a(e,s),a(s,r)},p(f,c){c[0]&1&&o!==(o=f[0].lastSyncAt+"")&&B(r,o)},d(f){f&&C(e)}}}function us(l){let e,t,n,s,o=l[0].lastError+"",r;return{c(){e=u("div"),t=u("span"),t.textContent=`${m("settings.lastError")}`,n=g(),s=u("span"),r=F(o),i(t,"class","info-label svelte-1fx1e1e"),i(s,"class","info-value error svelte-1fx1e1e"),i(e,"class","info-row svelte-1fx1e1e")},m(f,c){S(f,e,c),a(e,t),a(e,n),a(e,s),a(s,r)},p(f,c){c[0]&1&&o!==(o=f[0].lastError+"")&&B(r,o)},d(f){f&&C(e)}}}function ds(l){let e,t,n,s,o,r,f,c,d,v,_,h;return{c(){e=u("button"),t=u("div"),n=u("h3"),n.textContent=`${m("settings.confirmDisconnect")}`,s=g(),o=u("p"),o.textContent=`${m("settings.confirmDisconnectDesc")}`,r=g(),f=u("div"),c=u("button"),c.textContent=`${m("common.disconnect")}`,d=g(),v=u("button"),v.textContent=`${m("common.cancel")}`,i(n,"class","svelte-1fx1e1e"),i(o,"class","modal-desc svelte-1fx1e1e"),i(c,"class","btn btn-danger"),i(v,"class","btn"),i(f,"class","modal-actions svelte-1fx1e1e"),i(t,"class","modal svelte-1fx1e1e"),i(e,"class","modal-overlay svelte-1fx1e1e")},m(k,b){S(k,e,b),a(e,t),a(t,n),a(t,s),a(t,o),a(t,r),a(t,f),a(f,c),a(f,d),a(f,v),_||(h=[I(c,"click",l[17]),I(v,"click",l[26]),I(e,"click",l[27])],_=!0)},p:$,d(k){k&&C(e),_=!1,me(h)}}}function ps(l){let e,t,n,s,o,r,f,c,d,v,_,h;return{c(){e=u("button"),t=u("div"),n=u("h3"),n.textContent=`${m("settings.confirmResetKey")}`,s=g(),o=u("p"),o.textContent=`${m("settings.confirmResetKeyDesc")}`,r=g(),f=u("div"),c=u("button"),c.textContent=`${m("settings.resetKey")}`,d=g(),v=u("button"),v.textContent=`${m("common.cancel")}`,i(n,"class","svelte-1fx1e1e"),i(o,"class","modal-desc svelte-1fx1e1e"),i(c,"class","btn btn-danger"),i(v,"class","btn"),i(f,"class","modal-actions svelte-1fx1e1e"),i(t,"class","modal svelte-1fx1e1e"),i(e,"class","modal-overlay svelte-1fx1e1e")},m(k,b){S(k,e,b),a(e,t),a(t,n),a(t,s),a(t,o),a(t,r),a(t,f),a(f,c),a(f,d),a(f,v),_||(h=[I(c,"click",l[19]),I(v,"click",l[28]),I(e,"click",l[29])],_=!0)},p:$,d(k){k&&C(e),_=!1,me(h)}}}function cd(l){let e,t,n,s,o,r,f,c,d,v,_=l[2]&&ss(l),h=l[3]&&!l[2]&&is(l);function k(E,T){return E[0]&&E[0].enabled?ad:rd}let b=k(l),y=b(l),w=l[9]&&ds(l),j=l[10]&&ps(l);return{c(){e=u("div"),t=u("h2"),t.textContent=`${m("settings.sync")}`,n=g(),s=u("p"),s.textContent=`${m("settings.syncDesc")}`,o=g(),_&&_.c(),r=g(),h&&h.c(),f=g(),y.c(),c=g(),w&&w.c(),d=g(),j&&j.c(),v=ot(),i(t,"class","svelte-1fx1e1e"),i(s,"class","section-desc svelte-1fx1e1e"),i(e,"class","settings-section svelte-1fx1e1e")},m(E,T){S(E,e,T),a(e,t),a(e,n),a(e,s),a(e,o),_&&_.m(e,null),a(e,r),h&&h.m(e,null),a(e,f),y.m(e,null),S(E,c,T),w&&w.m(E,T),S(E,d,T),j&&j.m(E,T),S(E,v,T)},p(E,T){E[2]?_?_.p(E,T):(_=ss(E),_.c(),_.m(e,r)):_&&(_.d(1),_=null),E[3]&&!E[2]?h?h.p(E,T):(h=is(E),h.c(),h.m(e,f)):h&&(h.d(1),h=null),b===(b=k(E))&&y?y.p(E,T):(y.d(1),y=b(E),y&&(y.c(),y.m(e,null))),E[9]?w?w.p(E,T):(w=ds(E),w.c(),w.m(d.parentNode,d)):w&&(w.d(1),w=null),E[10]?j?j.p(E,T):(j=ps(E),j.c(),j.m(v.parentNode,v)):j&&(j.d(1),j=null)},i:$,o:$,d(E){E&&(C(e),C(c),C(d),C(v)),_&&_.d(),h&&h.d(),y.d(),w&&w.d(E),j&&j.d(E)}}}function St(l,...e){try{if(window.go&&window.go.main&&window.go.main.App){const t=window.go.main.App[l];if(typeof t=="function")return t(...e)}}catch(t){console.error("Wails error:",l,t)}return Promise.reject(new Error("Wails not connected: "+l))}function fd(l,e,t){let{onRefresh:n=null}=e,s=null,o=!1,r="",f="",c="",d="",v="",_="",h=0,k=!1,b=!1,y=null;async function w(){try{t(0,s=await St("GetSyncSettings")),s&&(t(5,d=s.serverUrl||""),t(8,h=s.syncInterval||0))}catch{t(0,s=null)}}w();async function j(){t(1,o=!0),t(2,r=""),t(4,c=""),t(11,y=null);try{await St("SyncTestConnection",d,v,_),t(11,y=!0),t(3,f="connection ok")}catch(L){t(11,y=!1),t(3,f="connection failed: "+String(L))}t(1,o=!1)}async function E(){t(1,o=!0),t(2,r=""),t(4,c="");try{await St("SyncConfigure",d,v,_),t(3,f="configured"),t(6,v=""),t(7,_=""),await w(),n&&n()}catch(L){t(2,r=String(L))}t(1,o=!1)}function T(L){const O=Array.isArray(L==null?void 0:L.conflicts)?L.conflicts:[],x=Array.isArray(L==null?void 0:L.applyErrors)?L.applyErrors:[],re=[];return O.length>0&&re.push(m("sync.conflictsCount",{count:O.length})),x.length>0&&re.push(m("sync.applyErrorsCount",{count:x.length})),re.join(" · ")}async function N(){t(1,o=!0),t(2,r=""),t(4,c="");try{const L=await St("SyncNow"),O=m("sync.pushedPulled",{pushed:(L==null?void 0:L.pushed)||0,pulled:(L==null?void 0:L.pulled)||0}),x=T(L);t(3,f=x?O+" · "+x:O),t(4,c=x?"warning":""),await w(),n&&n()}catch(L){t(2,r=String(L))}t(1,o=!1)}async function D(){try{await St("SyncSetInterval",h),t(3,f=m("sync.settingsSaved")),t(4,c="")}catch(L){t(2,r=String(L))}}function A(){t(9,k=!0)}async function M(){t(9,k=!1),t(1,o=!0),t(4,c="");try{await St("SyncDisconnect"),t(3,f="disconnected"),await w(),n&&n()}catch(L){t(2,r=String(L))}t(1,o=!1)}function R(){t(10,b=!0)}async function V(){t(10,b=!1),t(1,o=!0),t(4,c="");try{await St("ResetSyncKey"),t(3,f="key reset"),await w(),n&&n()}catch(L){t(2,r=String(L))}t(1,o=!1)}function W(L){return L?{connected:m("settings.connected"),disconnected:m("settings.disconnected"),disabled:m("settings.notConfigured"),error:m("settings.error"),revoked:m("settings.revoked")}[L]||L:m("settings.notConfigured")}function J(){h=rl(this.value),t(8,h)}function q(){d=this.value,t(5,d)}function Y(){v=this.value,t(6,v)}function U(){_=this.value,t(7,_)}const H=()=>t(9,k=!1),G=()=>t(9,k=!1),z=()=>t(10,b=!1),K=()=>t(10,b=!1);return l.$$set=L=>{"onRefresh"in L&&t(21,n=L.onRefresh)},[s,o,r,f,c,d,v,_,h,k,b,y,j,E,N,D,A,M,R,V,W,n,J,q,Y,U,H,G,z,K]}class ud extends $e{constructor(e){super(),xe(this,e,fd,cd,Ze,{onRefresh:21},null,[-1,-1])}}function dd(l){let e,t,n,s;return{c(){e=u("div"),t=u("h2"),t.textContent=`${m("settings.backup")}`,n=g(),s=u("p"),s.textContent=`${m("settings.backupStub")}`,i(t,"class","svelte-19bo7bn"),i(s,"class","section-desc svelte-19bo7bn"),i(e,"class","settings-section svelte-19bo7bn")},m(o,r){S(o,e,r),a(e,t),a(e,n),a(e,s)},p:$,i:$,o:$,d(o){o&&C(e)}}}class pd extends $e{constructor(e){super(),xe(this,e,null,dd,Ze,{})}}const{window:md}=Bl;function _d(l){let e,t;return e=new pd({}),{c(){Qe(e.$$.fragment)},m(n,s){Je(e,n,s),t=!0},p:$,i(n){t||(ae(e.$$.fragment,n),t=!0)},o(n){de(e.$$.fragment,n),t=!1},d(n){qe(e,n)}}}function vd(l){let e,t;return e=new ud({props:{onRefresh:l[6]}}),{c(){Qe(e.$$.fragment)},m(n,s){Je(e,n,s),t=!0},p:$,i(n){t||(ae(e.$$.fragment,n),t=!0)},o(n){de(e.$$.fragment,n),t=!1},d(n){qe(e,n)}}}function hd(l){let e,t;return e=new od({}),{c(){Qe(e.$$.fragment)},m(n,s){Je(e,n,s),t=!0},p:$,i(n){t||(ae(e.$$.fragment,n),t=!0)},o(n){de(e.$$.fragment,n),t=!1},d(n){qe(e,n)}}}function gd(l){let e,t;return e=new sd({}),{c(){Qe(e.$$.fragment)},m(n,s){Je(e,n,s),t=!0},p:$,i(n){t||(ae(e.$$.fragment,n),t=!0)},o(n){de(e.$$.fragment,n),t=!1},d(n){qe(e,n)}}}function bd(l){let e,t;return e=new ld({}),{c(){Qe(e.$$.fragment)},m(n,s){Je(e,n,s),t=!0},p:$,i(n){t||(ae(e.$$.fragment,n),t=!0)},o(n){de(e.$$.fragment,n),t=!1},d(n){qe(e,n)}}}function kd(l){let e,t;return e=new xu({props:{onRefresh:l[2]}}),{c(){Qe(e.$$.fragment)},m(n,s){Je(e,n,s),t=!0},p:$,i(n){t||(ae(e.$$.fragment,n),t=!0)},o(n){de(e.$$.fragment,n),t=!1},d(n){qe(e,n)}}}function yd(l){let e,t;return e=new Ju({props:{onRefresh:l[2]}}),{c(){Qe(e.$$.fragment)},m(n,s){Je(e,n,s),t=!0},p:$,i(n){t||(ae(e.$$.fragment,n),t=!0)},o(n){de(e.$$.fragment,n),t=!1},d(n){qe(e,n)}}}function wd(l){let e,t;return e=new Bu({props:{appConfig:l[1],onSave:l[5]}}),{c(){Qe(e.$$.fragment)},m(n,s){Je(e,n,s),t=!0},p(n,s){const o={};s&2&&(o.appConfig=n[1]),e.$set(o)},i(n){t||(ae(e.$$.fragment,n),t=!0)},o(n){de(e.$$.fragment,n),t=!1},d(n){qe(e,n)}}}function Cd(l){let e,t,n,s,o,r,f,c,d,v,_,h,k,b,y,w;d=new Ou({props:{activeSection:l[0],onSelect:l[3]}});const j=[wd,yd,kd,bd,gd,hd,vd,_d],E=[];function T(N,D){return N[0]==="general"?0:N[0]==="workspace"?1:N[0]==="templates"?2:N[0]==="plugins"?3:N[0]==="files"?4:N[0]==="activity"?5:N[0]==="sync"?6:N[0]==="backup"?7:-1}return~(h=T(l))&&(k=E[h]=j[h](l)),{c(){e=u("button"),t=u("div"),n=u("div"),s=u("h2"),s.textContent=`${m("settings.title")}`,o=g(),r=u("button"),r.innerHTML='',f=g(),c=u("div"),Qe(d.$$.fragment),v=g(),_=u("div"),k&&k.c(),i(s,"class","svelte-zf2zsc"),i(r,"class","close-btn svelte-zf2zsc"),i(r,"title",m("settings.close")),i(n,"class","settings-header svelte-zf2zsc"),i(_,"class","settings-content svelte-zf2zsc"),i(c,"class","settings-body svelte-zf2zsc"),i(t,"class","settings-window svelte-zf2zsc"),i(e,"class","settings-overlay svelte-zf2zsc")},m(N,D){S(N,e,D),a(e,t),a(t,n),a(n,s),a(n,o),a(n,r),a(t,f),a(t,c),Je(d,c,null),a(c,v),a(c,_),~h&&E[h].m(_,null),b=!0,y||(w=[I(md,"keydown",l[7]),I(r,"click",l[4]),I(e,"click",mt(l[4]))],y=!0)},p(N,[D]){const A={};D&1&&(A.activeSection=N[0]),d.$set(A);let M=h;h=T(N),h===M?~h&&E[h].p(N,D):(k&&(st(),de(E[M],1,1,()=>{E[M]=null}),it()),~h?(k=E[h],k?k.p(N,D):(k=E[h]=j[h](N),k.c()),ae(k,1),k.m(_,null)):k=null)},i(N){b||(ae(d.$$.fragment,N),ae(k),b=!0)},o(N){de(d.$$.fragment,N),de(k),b=!1},d(N){N&&C(e),qe(d),~h&&E[h].d(),y=!1,me(w)}}}function ms(l,...e){try{if(window.go&&window.go.main&&window.go.main.App){const t=window.go.main.App[l];if(typeof t=="function")return t(...e)}}catch(t){console.error("Wails error:",l,t)}return Promise.reject(new Error("Wails not connected: "+l))}function Sd(l,e,t){let{onClose:n=null}=e,{onSyncRefresh:s=null}=e,{initialSection:o="general"}=e,r=o,f=null;async function c(){try{t(1,f=await ms("GetAppConfig"))}catch{t(1,f=null)}}c();function d(b){t(0,r=b)}function v(){n&&n()}async function _(b){try{await ms("SaveAppConfig",b),t(1,f=b)}catch(y){console.error(y)}}function h(){s&&s()}function k(b){b.key==="Escape"&&v()}return l.$$set=b=>{"onClose"in b&&t(8,n=b.onClose),"onSyncRefresh"in b&&t(9,s=b.onSyncRefresh),"initialSection"in b&&t(10,o=b.initialSection)},[r,f,c,d,v,_,h,k,n,s,o]}class jd extends $e{constructor(e){super(),xe(this,e,Sd,Cd,Ze,{onClose:8,onSyncRefresh:9,initialSection:10})}}function Ed(l){let e,t,n,s,o,r,f,c;return{c(){e=u("div"),t=u("span"),n=g(),s=u("span"),s.textContent=`${m("sync.status.disabled")}`,o=g(),r=u("button"),r.textContent=`${m("sync.configure")}`,i(t,"class","sync-dot dot-disabled svelte-1rxbx0"),i(s,"class","sync-label svelte-1rxbx0"),i(r,"class","btn btn-xs svelte-1rxbx0"),i(e,"class","sync-status-row svelte-1rxbx0")},m(d,v){S(d,e,v),a(e,t),a(e,n),a(e,s),a(e,o),a(e,r),f||(c=I(r,"click",function(){vt(l[5])&&l[5].apply(this,arguments)}),f=!0)},p(d,v){l=d},d(d){d&&C(e),f=!1,c()}}}function Td(l){let e,t,n,s,o,r=l[7](l[0])+"",f,c,d,v,_,h=(l[1]?m("sync.running"):m("sync.run"))+"",k,b,y,w,j,E,T,N=l[0].unpushedOps>0&&_s(l),D=l[2]&&vs(l);return{c(){e=u("div"),t=u("span"),s=g(),o=u("span"),f=F(r),c=g(),N&&N.c(),d=g(),v=u("div"),_=u("button"),k=F(h),b=g(),y=u("button"),y.textContent=`${m("sync.details")}`,w=g(),D&&D.c(),j=ot(),i(t,"class",n="sync-dot "+l[6](l[0])+" svelte-1rxbx0"),i(o,"class","sync-label svelte-1rxbx0"),i(_,"class","btn btn-xs svelte-1rxbx0"),_.disabled=l[1],i(y,"class","btn btn-xs btn-link svelte-1rxbx0"),i(v,"class","sync-actions-row svelte-1rxbx0"),i(e,"class","sync-status-row svelte-1rxbx0")},m(A,M){S(A,e,M),a(e,t),a(e,s),a(e,o),a(o,f),a(e,c),N&&N.m(e,null),a(e,d),a(e,v),a(v,_),a(_,k),a(v,b),a(v,y),S(A,w,M),D&&D.m(A,M),S(A,j,M),E||(T=[I(_,"click",function(){vt(l[4])&&l[4].apply(this,arguments)}),I(y,"click",function(){vt(l[5])&&l[5].apply(this,arguments)})],E=!0)},p(A,M){l=A,M&1&&n!==(n="sync-dot "+l[6](l[0])+" svelte-1rxbx0")&&i(t,"class",n),M&1&&r!==(r=l[7](l[0])+"")&&B(f,r),l[0].unpushedOps>0?N?N.p(l,M):(N=_s(l),N.c(),N.m(e,d)):N&&(N.d(1),N=null),M&2&&h!==(h=(l[1]?m("sync.running"):m("sync.run"))+"")&&B(k,h),M&2&&(_.disabled=l[1]),l[2]?D?D.p(l,M):(D=vs(l),D.c(),D.m(j.parentNode,j)):D&&(D.d(1),D=null)},d(A){A&&(C(e),C(w),C(j)),N&&N.d(),D&&D.d(A),E=!1,me(T)}}}function _s(l){let e,t=l[0].unpushedOps+"",n,s,o=m("sync.changes")+"",r;return{c(){e=u("span"),n=F(t),s=g(),r=F(o),i(e,"class","sync-count svelte-1rxbx0")},m(f,c){S(f,e,c),a(e,n),a(e,s),a(e,r)},p(f,c){c&1&&t!==(t=f[0].unpushedOps+"")&&B(n,t)},d(f){f&&C(e)}}}function vs(l){let e,t,n;return{c(){e=u("div"),t=F(l[2]),i(e,"class",n=Mn(l[3]==="warning"?"sync-message sync-message-warning":"sync-message")+" svelte-1rxbx0")},m(s,o){S(s,e,o),a(e,t)},p(s,o){o&4&&B(t,s[2]),o&8&&n!==(n=Mn(s[3]==="warning"?"sync-message sync-message-warning":"sync-message")+" svelte-1rxbx0")&&i(e,"class",n)},d(s){s&&C(e)}}}function Nd(l){let e;function t(o,r){var f;return(f=o[0])!=null&&f.configured?Td:Ed}let n=t(l),s=n(l);return{c(){e=u("div"),s.c(),i(e,"class","sync-status-widget svelte-1rxbx0")},m(o,r){S(o,e,r),s.m(e,null)},p(o,[r]){n===(n=t(o))&&s?s.p(o,r):(s.d(1),s=n(o),s&&(s.c(),s.m(e,null)))},i:$,o:$,d(o){o&&C(e),s.d()}}}function Dd(l,e,t){let{syncStatus:n=null}=e,{syncLoading:s=!1}=e,{syncMessage:o=""}=e,{syncMessageKind:r=""}=e,{onSync:f=null}=e,{onOpenSettings:c=null}=e;function d(_){return!_||!_.configured?"dot-disabled":s?"dot-syncing":_.revoked?"dot-disabled":_.connected?"dot-connected":_.configured?"dot-warning":"dot-disabled"}function v(_){return!_||!_.configured?m("sync.status.disabled"):s?m("sync.status.syncing"):_.revoked?m("sync.status.error"):_.connected?m("sync.status.connected"):m("sync.status.disconnected")}return l.$$set=_=>{"syncStatus"in _&&t(0,n=_.syncStatus),"syncLoading"in _&&t(1,s=_.syncLoading),"syncMessage"in _&&t(2,o=_.syncMessage),"syncMessageKind"in _&&t(3,r=_.syncMessageKind),"onSync"in _&&t(4,f=_.onSync),"onOpenSettings"in _&&t(5,c=_.onOpenSettings)},[n,s,o,r,f,c,d,v]}class Md extends $e{constructor(e){super(),xe(this,e,Dd,Nd,Ze,{syncStatus:0,syncLoading:1,syncMessage:2,syncMessageKind:3,onSync:4,onOpenSettings:5})}}const{Boolean:Xo}=Bl;function hs(l,e,t){const n=l.slice();return n[330]=e[t],n}function gs(l,e,t){const n=l.slice();return n[333]=e[t],n}function bs(l,e,t){const n=l.slice();return n[333]=e[t],n}function ks(l,e,t){const n=l.slice();return n[354]=e[t],n}function ys(l,e,t){const n=l.slice();return n[354]=e[t],n}function ws(l,e,t){const n=l.slice();return n[393]=e[t],n}function Cs(l,e,t){const n=l.slice();return n[354]=e[t],n}function Ss(l,e,t){const n=l.slice();return n[357]=e[t],n[398]=e,n[399]=t,n}function js(l,e,t){const n=l.slice();return n[354]=e[t],n}function Es(l,e,t){const n=l.slice();return n[375]=e[t],n}function Ts(l,e,t){const n=l.slice();return n[354]=e[t],n}function Ns(l,e,t){const n=l.slice();return n[380]=e[t],n}function Ds(l,e,t){const n=l.slice();return n[380]=e[t],n}function Ms(l,e,t){const n=l.slice();return n[357]=e[t],n[385]=e,n[386]=t,n}function Is(l,e,t){const n=l.slice();return n[354]=e[t],n}function As(l,e,t){const n=l.slice();return n[375]=e[t],n}function Fs(l,e,t){const n=l.slice();return n[369]=e[t],n}function Ps(l,e,t){const n=l.slice();return n[372]=e[t],n}function Ls(l,e,t){const n=l.slice();return n[346]=e[t],n}function Rs(l,e,t){const n=l.slice();return n[354]=e[t],n}function zs(l,e,t){const n=l.slice();return n[338]=e[t],n}function Os(l,e,t){const n=l.slice();return n[354]=e[t],n}function Vs(l,e,t){const n=l.slice();return n[357]=e[t],n[358]=e,n[359]=t,n}function Ws(l,e,t){const n=l.slice();return n[354]=e[t],n}function Bs(l,e,t){const n=l.slice();return n[349]=e[t],n}function Hs(l,e,t){const n=l.slice();return n[346]=e[t],n}function Us(l,e,t){const n=l.slice();return n[341]=e[t],n}function Ks(l,e,t){const n=l.slice();return n[338]=e[t],n}function Gs(l,e,t){const n=l.slice();return n[341]=e[t],n}function Js(l,e,t){const n=l.slice();return n[364]=e[t],n}function qs(l,e,t){const n=l.slice();return n[404]=e[t],n}function Ys(l,e,t){const n=l.slice();return n[407]=e[t],n}function Id(l){let e,t,n,s,o,r,f,c,d,v,_,h,k,b,y,w,j,E,T,N,D,A,M,R,V,W,J,q,Y,U,H,G,z,K,L,O,x,re,te,ne,le,oe,fe,ye,Be,Me,X,Z,ue,we,_e=ce(l[4]),Ce=[];for(let ee=0;ee<_e.length;ee+=1)Ce[ee]=Xs(Ys(l,_e,ee));const Xe=[Ld,Pd],Ke=[];function lt(ee,Ne){return ee[5].length>0?0:1}T=lt(l),N=Ke[T]=Xe[T](l),M=new Md({props:{syncStatus:l[80],syncLoading:l[81],syncMessage:l[82],syncMessageKind:l[83],onSync:l[168],onOpenSettings:l[173]}});function Ve(ee,Ne){return ee[26]?Od:ee[25]?zd:Rd}let Ae=Ve(l),Pe=Ae(l),ge=l[24]&&xs(l);const He=[Jd,Gd,Kd,Ud,Hd,Bd,Wd,Vd],Ee=[];function Oe(ee,Ne){return ee[29]?0:ee[26]?1:ee[25]==="inbox"?2:ee[25]==="trash"?3:ee[25]==="journal"?4:ee[25]==="today"&&ee[7]?5:ee[25]==="activity"?6:7}re=Oe(l),te=Ee[re]=He[re](l);let ke=l[45]&&vo(l),je=l[49].visible&&bo(l),Te=l[32]&&Co(l),Se=l[52]&&So(l),Ie=l[59]&&l[58]&&Eo(l),Ue=l[77]&&No(l),De=l[72]&&Mo(l),ve=l[3]&&Io(l);return{c(){e=u("div"),t=u("aside"),n=u("div"),s=u("span"),s.textContent="⚒",o=g(),r=u("span"),r.textContent=`${m("nav.brand")}`,f=g(),c=u("nav"),d=u("div"),v=u("div"),v.textContent=`${m("nav.system")}`,_=g();for(let ee=0;ee',J=g(),q=u("span"),Y=F(l[23]),U=g(),H=u("main"),G=u("header"),z=u("div"),Pe.c(),K=g(),L=u("div"),L.innerHTML="",O=g(),ge&&ge.c(),x=g(),te.c(),ne=g(),ke&&ke.c(),le=g(),je&&je.c(),oe=g(),Te&&Te.c(),fe=g(),Se&&Se.c(),ye=g(),Ie&&Ie.c(),Be=g(),Ue&&Ue.c(),Me=g(),De&&De.c(),X=g(),ve&&ve.c(),i(s,"class","logo svelte-14f54e4"),i(r,"class","brand-name svelte-14f54e4"),i(n,"class","sidebar-brand svelte-14f54e4"),i(v,"class","nav-label svelte-14f54e4"),i(d,"class","nav-group svelte-14f54e4"),i(y,"class","svelte-14f54e4"),i(j,"class","nav-add-btn svelte-14f54e4"),i(j,"title",m("common.create")),i(b,"class","nav-label-row svelte-14f54e4"),i(k,"class","nav-group svelte-14f54e4"),i(c,"class","sidebar-nav svelte-14f54e4"),i(W,"class","sidebar-settings-btn svelte-14f54e4"),i(W,"title",m("common.settings")),i(q,"class","version svelte-14f54e4"),i(V,"class","sidebar-footer-row svelte-14f54e4"),i(A,"class","sidebar-footer svelte-14f54e4"),i(t,"class","sidebar svelte-14f54e4"),i(z,"class","header-left svelte-14f54e4"),i(L,"class","header-right svelte-14f54e4"),i(G,"class","header svelte-14f54e4"),i(H,"class","main svelte-14f54e4"),i(e,"class","app svelte-14f54e4")},m(ee,Ne){S(ee,e,Ne),a(e,t),a(t,n),a(n,s),a(n,o),a(n,r),a(t,f),a(t,c),a(c,d),a(d,v),a(d,_);for(let Le=0;Le{Ke[Le]=null}),it(),N=Ke[T],N?N.p(ee,Ne):(N=Ke[T]=Xe[T](ee),N.c()),ae(N,1),N.m(k,null));const Ge={};Ne[2]&262144&&(Ge.syncStatus=ee[80]),Ne[2]&524288&&(Ge.syncLoading=ee[81]),Ne[2]&1048576&&(Ge.syncMessage=ee[82]),Ne[2]&2097152&&(Ge.syncMessageKind=ee[83]),M.$set(Ge),(!Z||Ne[0]&8388608)&&B(Y,ee[23]),Ae===(Ae=Ve(ee))&&Pe?Pe.p(ee,Ne):(Pe.d(1),Pe=Ae(ee),Pe&&(Pe.c(),Pe.m(z,null))),ee[24]?ge?ge.p(ee,Ne):(ge=xs(ee),ge.c(),ge.m(H,x)):ge&&(ge.d(1),ge=null);let Re=re;re=Oe(ee),re===Re?Ee[re].p(ee,Ne):(st(),de(Ee[Re],1,1,()=>{Ee[Re]=null}),it(),te=Ee[re],te?te.p(ee,Ne):(te=Ee[re]=He[re](ee),te.c()),ae(te,1),te.m(H,ne)),ee[45]?ke?(ke.p(ee,Ne),Ne[1]&16384&&ae(ke,1)):(ke=vo(ee),ke.c(),ae(ke,1),ke.m(H,le)):ke&&(st(),de(ke,1,1,()=>{ke=null}),it()),ee[49].visible?je?(je.p(ee,Ne),Ne[1]&262144&&ae(je,1)):(je=bo(ee),je.c(),ae(je,1),je.m(H,oe)):je&&(st(),de(je,1,1,()=>{je=null}),it()),ee[32]?Te?Te.p(ee,Ne):(Te=Co(ee),Te.c(),Te.m(H,fe)):Te&&(Te.d(1),Te=null),ee[52]?Se?Se.p(ee,Ne):(Se=So(ee),Se.c(),Se.m(H,ye)):Se&&(Se.d(1),Se=null),ee[59]&&ee[58]?Ie?Ie.p(ee,Ne):(Ie=Eo(ee),Ie.c(),Ie.m(H,Be)):Ie&&(Ie.d(1),Ie=null),ee[77]?Ue?Ue.p(ee,Ne):(Ue=No(ee),Ue.c(),Ue.m(H,Me)):Ue&&(Ue.d(1),Ue=null),ee[72]?De?(De.p(ee,Ne),Ne[2]&1024&&ae(De,1)):(De=Mo(ee),De.c(),ae(De,1),De.m(H,X)):De&&(st(),de(De,1,1,()=>{De=null}),it()),ee[3]?ve?(ve.p(ee,Ne),Ne[0]&8&&ae(ve,1)):(ve=Io(ee),ve.c(),ae(ve,1),ve.m(H,null)):ve&&(st(),de(ve,1,1,()=>{ve=null}),it())},i(ee){Z||(ae(N),ae(M.$$.fragment,ee),ae(te),ae(ke),ae(je),ae(De),ae(ve),Z=!0)},o(ee){de(N),de(M.$$.fragment,ee),de(te),de(ke),de(je),de(De),de(ve),Z=!1},d(ee){ee&&C(e),Fe(Ce,ee),Ke[T].d(),qe(M),Pe.d(),ge&&ge.d(),Ee[re].d(),ke&&ke.d(),je&&je.d(),Te&&Te.d(),Se&&Se.d(),Ie&&Ie.d(),Ue&&Ue.d(),De&&De.d(),ve&&ve.d(),ue=!1,me(we)}}}function Ad(l){var n;let e,t;return e=new Tu({props:{vaultPath:((n=l[0])==null?void 0:n.vaultPath)||"",onComplete:l[170]}}),{c(){Qe(e.$$.fragment)},m(s,o){Je(e,s,o),t=!0},p(s,o){var f;const r={};o[0]&1&&(r.vaultPath=((f=s[0])==null?void 0:f.vaultPath)||""),e.$set(r)},i(s){t||(ae(e.$$.fragment,s),t=!0)},o(s){de(e.$$.fragment,s),t=!1},d(s){qe(e,s)}}}function Fd(l){let e,t;return e=new Su({props:{onComplete:l[169]}}),{c(){Qe(e.$$.fragment)},m(n,s){Je(e,n,s),t=!0},p:$,i(n){t||(ae(e.$$.fragment,n),t=!0)},o(n){de(e.$$.fragment,n),t=!1},d(n){qe(e,n)}}}function Qs(l){let e,t;return{c(){e=u("span"),t=F(l[42]),i(e,"class","nav-badge svelte-14f54e4")},m(n,s){S(n,e,s),a(e,t)},p(n,s){s[1]&2048&&B(t,n[42])},d(n){n&&C(e)}}}function Xs(l){let e,t=l[407].label+"",n,s,o,r,f,c,d=l[407].id==="journal"&&l[42]>0&&Qs(l);function v(){return l[172](l[407])}return{c(){e=u("button"),n=F(t),s=g(),d&&d.c(),o=g(),i(e,"class",r="nav-item "+(l[25]===l[407].id?"selected":"")+" svelte-14f54e4")},m(_,h){S(_,e,h),a(e,n),a(e,s),d&&d.m(e,null),a(e,o),f||(c=I(e,"click",v),f=!0)},p(_,h){l=_,h[0]&16&&t!==(t=l[407].label+"")&&B(n,t),l[407].id==="journal"&&l[42]>0?d?d.p(l,h):(d=Qs(l),d.c(),d.m(e,o)):d&&(d.d(1),d=null),h[0]&33554448&&r!==(r="nav-item "+(l[25]===l[407].id?"selected":"")+" svelte-14f54e4")&&i(e,"class",r)},d(_){_&&C(e),d&&d.d(),f=!1,c()}}}function Pd(l){let e;return{c(){e=u("div"),e.textContent=`${m("nav.noNodes")}`,i(e,"class","nav-empty svelte-14f54e4")},m(t,n){S(t,e,n)},p:$,i:$,o:$,d(t){t&&C(e)}}}function Ld(l){var r;let e,t,n,s,o;return t=new Qo({props:{nodes:l[5],expanded:l[60],selectedNodeId:((r=l[26])==null?void 0:r.id)||"",onSelect:l[89],onToggle:l[119],onContextMenu:l[117],onDrop:l[120]}}),{c(){e=u("div"),Qe(t.$$.fragment),i(e,"class","workspace-tree-area svelte-14f54e4"),i(e,"role","region"),i(e,"aria-label",m("nav.workspace")),he(e,"drop-valid",l[71])},m(f,c){S(f,e,c),Je(t,e,null),n=!0,s||(o=[I(e,"dragover",Hl(l[122])),I(e,"dragleave",l[123]),I(e,"drop",l[121])],s=!0)},p(f,c){var v;const d={};c[0]&32&&(d.nodes=f[5]),c[1]&536870912&&(d.expanded=f[60]),c[0]&67108864&&(d.selectedNodeId=((v=f[26])==null?void 0:v.id)||""),t.$set(d),(!n||c[2]&512)&&he(e,"drop-valid",f[71])},i(f){n||(ae(t.$$.fragment,f),n=!0)},o(f){de(t.$$.fragment,f),n=!1},d(f){f&&C(e),qe(t),s=!1,me(o)}}}function Rd(l){let e;return{c(){e=u("span"),e.textContent=`${m("nav.selectPrompt")}`,i(e,"class","crumb placeholder svelte-14f54e4")},m(t,n){S(t,e,n)},p:$,d(t){t&&C(e)}}}function zd(l){let e,t=ce(l[4]),n=[];for(let s=0;s',i(o,"class","dismiss-btn svelte-14f54e4"),i(o,"aria-label","Dismiss"),i(e,"class","error-banner svelte-14f54e4"),i(e,"role","button"),i(e,"tabindex","0")},m(c,d){S(c,e,d),a(e,n),a(e,s),a(e,o),r||(f=[I(o,"click",We(l[175])),I(e,"click",l[176]),I(e,"keydown",function(){vt(ft(l[177]))&&ft(l[177]).apply(this,arguments)})],r=!0)},p(c,d){l=c,d[0]&16777216&&t!==(t=l[85](l[24])+"")&&B(n,t)},d(c){c&&C(e),r=!1,me(f)}}}function Vd(l){let e,t,n;function s(f,c){if(f[56])return Qd;if(f[4].length>0)return Yd;if(f[24])return qd}let o=s(l),r=o&&o(l);return{c(){e=u("div"),t=u("h2"),t.textContent=`${m("welcome.title")}`,n=g(),r&&r.c(),i(t,"class","svelte-14f54e4"),i(e,"class","welcome svelte-14f54e4")},m(f,c){S(f,e,c),a(e,t),a(e,n),r&&r.m(e,null)},p(f,c){o===(o=s(f))&&r?r.p(f,c):(r&&r.d(1),r=o&&o(f),r&&(r.c(),r.m(e,null)))},i:$,o:$,d(f){f&&C(e),r&&r.d()}}}function Wd(l){let e,t,n,s;function o(c,d){return c[8].length===0?Zd:Xd}let r=o(l),f=r(l);return{c(){e=u("div"),t=u("div"),n=u("h2"),n.textContent=`${m("activity.title")}`,s=g(),f.c(),i(n,"class","svelte-14f54e4"),i(t,"class","activity-feed-header svelte-14f54e4"),i(e,"class","activity-feed svelte-14f54e4")},m(c,d){S(c,e,d),a(e,t),a(t,n),a(e,s),f.m(e,null)},p(c,d){r===(r=o(c))&&f?f.p(c,d):(f.d(1),f=r(c),f&&(f.c(),f.m(e,null)))},i:$,o:$,d(c){c&&C(e),f.d()}}}function Bd(l){let e,t,n,s,o,r=l[7].date+"",f,c,d,v,_=l[7].summary&&ti(l),h=l[41].length>0&&ii(l);function k(w,j){return w[7].groups&&w[7].groups.length>0?$d:xd}let b=k(l),y=b(l);return{c(){e=u("div"),t=u("div"),n=u("h2"),n.textContent=`${m("today.title")}`,s=g(),o=u("span"),f=F(r),c=g(),_&&_.c(),d=g(),h&&h.c(),v=g(),y.c(),i(n,"class","svelte-14f54e4"),i(o,"class","today-date svelte-14f54e4"),i(t,"class","today-header svelte-14f54e4"),i(e,"class","today-dashboard svelte-14f54e4")},m(w,j){S(w,e,j),a(e,t),a(t,n),a(t,s),a(t,o),a(o,f),a(e,c),_&&_.m(e,null),a(e,d),h&&h.m(e,null),a(e,v),y.m(e,null)},p(w,j){j[0]&128&&r!==(r=w[7].date+"")&&B(f,r),w[7].summary?_?_.p(w,j):(_=ti(w),_.c(),_.m(e,d)):_&&(_.d(1),_=null),w[41].length>0?h?h.p(w,j):(h=ii(w),h.c(),h.m(e,v)):h&&(h.d(1),h=null),b===(b=k(w))&&y?y.p(w,j):(y.d(1),y=b(w),y&&(y.c(),y.m(e,null)))},i:$,o:$,d(w){w&&C(e),_&&_.d(),h&&h.d(),y.d()}}}function Hd(l){let e,t,n,s,o,r,f,c,d,v,_,h,k,b,y,w,j,E,T,N,D,A,M,R,V,W,J,q,Y,U,H,G,z,K,L,O,x,re,te,ne,le,oe,fe,ye,Be,Me,X,Z,ue,we,_e,Ce,Xe,Ke,lt,Ve,Ae,Pe,ge;function He(ve,ee){return ve[17]?n1:l1}let Ee=He(l),Oe=Ee(l),ke=l[14]&&gi(l),je=l[18]&&bi(l),Te=l[41].length>0&&ki(l),Se=l[10]&&ji(l);function Ie(ve,ee){return ve[9].length===0?i1:s1}let Ue=Ie(l),De=Ue(l);return{c(){e=u("div"),t=u("div"),n=u("h2"),n.textContent=`${m("journal.title")}`,s=g(),o=u("div"),r=u("div"),r.textContent=`${m("journal.filterHeading")}`,f=g(),c=u("div"),d=u("label"),v=u("span"),v.textContent=`${m("journal.dateFrom")}`,_=g(),h=u("input"),k=g(),b=u("label"),y=u("span"),y.textContent=`${m("journal.dateTo")}`,w=g(),j=u("input"),E=g(),T=u("label"),N=u("span"),N.textContent=`${m("journal.node")}`,D=g(),A=u("div"),Oe.c(),M=g(),ke&&ke.c(),R=g(),V=u("label"),W=u("span"),W.textContent=`${m("journal.billable")}`,J=g(),q=u("select"),Y=u("option"),Y.textContent=`${m("common.all")}`,U=u("option"),U.textContent=`${m("journal.billableYes")}`,H=u("option"),H.textContent=`${m("journal.billableNo")}`,G=g(),z=u("label"),K=u("span"),K.textContent=`${m("journal.approx")}`,L=g(),O=u("select"),x=u("option"),x.textContent=`${m("common.all")}`,re=u("option"),re.textContent=`${m("journal.approxExact")}`,te=u("option"),te.textContent=`${m("journal.approxEstimated")}`,ne=g(),le=u("button"),le.textContent=`${m("journal.filter")}`,oe=g(),fe=u("button"),fe.textContent=`${m("journal.reset")}`,ye=g(),Be=u("div"),Me=u("div"),Me.textContent=`${m("journal.exportHeading")}`,X=g(),Z=u("div"),ue=u("button"),ue.textContent=`${m("journal.exportCSV")}`,we=g(),_e=u("button"),_e.textContent=`${m("journal.exportMarkdown")}`,Ce=g(),Xe=u("button"),Xe.textContent="PDF",Ke=g(),je&&je.c(),lt=g(),Te&&Te.c(),Ve=g(),Se&&Se.c(),Ae=g(),De.c(),i(n,"class","svelte-14f54e4"),i(r,"class","journal-filter-heading svelte-14f54e4"),i(v,"class","label-text svelte-14f54e4"),i(h,"type","date"),i(h,"class","svelte-14f54e4"),i(d,"class","svelte-14f54e4"),i(y,"class","label-text svelte-14f54e4"),i(j,"type","date"),i(j,"class","svelte-14f54e4"),i(b,"class","svelte-14f54e4"),i(N,"class","label-text svelte-14f54e4"),i(A,"class","journal-node-picker svelte-14f54e4"),ct(A,"position","relative"),i(T,"class","svelte-14f54e4"),i(W,"class","label-text svelte-14f54e4"),Y.__value="all",be(Y,Y.__value),i(Y,"class","svelte-14f54e4"),U.__value="yes",be(U,U.__value),i(U,"class","svelte-14f54e4"),H.__value="no",be(H,H.__value),i(H,"class","svelte-14f54e4"),i(q,"class","svelte-14f54e4"),l[15]===void 0&&Et(()=>l[233].call(q)),i(V,"title",m("journal.billableHint")),i(V,"class","svelte-14f54e4"),i(K,"class","label-text svelte-14f54e4"),x.__value="all",be(x,x.__value),i(x,"class","svelte-14f54e4"),re.__value="no",be(re,re.__value),i(re,"class","svelte-14f54e4"),te.__value="yes",be(te,te.__value),i(te,"class","svelte-14f54e4"),i(O,"class","svelte-14f54e4"),l[16]===void 0&&Et(()=>l[234].call(O)),i(z,"title",m("journal.approxHint")),i(z,"class","svelte-14f54e4"),i(le,"class","btn btn-sm svelte-14f54e4"),i(fe,"class","btn btn-sm svelte-14f54e4"),i(c,"class","journal-filters-row svelte-14f54e4"),i(o,"class","journal-filter-section svelte-14f54e4"),i(Me,"class","journal-export-heading svelte-14f54e4"),i(ue,"class","btn btn-sm svelte-14f54e4"),i(_e,"class","btn btn-sm svelte-14f54e4"),i(Xe,"class","btn btn-sm svelte-14f54e4"),i(Z,"class","journal-export-row svelte-14f54e4"),i(Be,"class","journal-export-section svelte-14f54e4"),i(t,"class","journal-header svelte-14f54e4"),i(e,"class","journal-screen svelte-14f54e4")},m(ve,ee){S(ve,e,ee),a(e,t),a(t,n),a(t,s),a(t,o),a(o,r),a(o,f),a(o,c),a(c,d),a(d,v),a(d,_),a(d,h),be(h,l[11]),a(c,k),a(c,b),a(b,y),a(b,w),a(b,j),be(j,l[12]),a(c,E),a(c,T),a(T,N),a(T,D),a(T,A),Oe.m(A,null),a(c,M),ke&&ke.m(c,null),a(c,R),a(c,V),a(V,W),a(V,J),a(V,q),a(q,Y),a(q,U),a(q,H),_t(q,l[15],!0),a(c,G),a(c,z),a(z,K),a(z,L),a(z,O),a(O,x),a(O,re),a(O,te),_t(O,l[16],!0),a(c,ne),a(c,le),a(c,oe),a(c,fe),a(t,ye),a(t,Be),a(Be,Me),a(Be,X),a(Be,Z),a(Z,ue),a(Z,we),a(Z,_e),a(Z,Ce),a(Z,Xe),a(Z,Ke),je&&je.m(Z,null),a(e,lt),Te&&Te.m(e,null),a(e,Ve),Se&&Se.m(e,null),a(e,Ae),De.m(e,null),Pe||(ge=[I(h,"input",l[226]),I(j,"input",l[227]),I(q,"change",l[233]),I(O,"change",l[234]),I(le,"click",l[142]),I(fe,"click",l[149]),I(ue,"click",l[235]),I(_e,"click",l[236]),I(Xe,"click",l[237])],Pe=!0)},p(ve,ee){ee[0]&2048&&be(h,ve[11]),ee[0]&4096&&be(j,ve[12]),Ee===(Ee=He(ve))&&Oe?Oe.p(ve,ee):(Oe.d(1),Oe=Ee(ve),Oe&&(Oe.c(),Oe.m(A,null))),ve[14]?ke?ke.p(ve,ee):(ke=gi(ve),ke.c(),ke.m(c,R)):ke&&(ke.d(1),ke=null),ee[0]&32768&&_t(q,ve[15]),ee[0]&65536&&_t(O,ve[16]),ve[18]?je?je.p(ve,ee):(je=bi(ve),je.c(),je.m(Z,null)):je&&(je.d(1),je=null),ve[41].length>0?Te?Te.p(ve,ee):(Te=ki(ve),Te.c(),Te.m(e,Ve)):Te&&(Te.d(1),Te=null),ve[10]?Se?Se.p(ve,ee):(Se=ji(ve),Se.c(),Se.m(e,Ae)):Se&&(Se.d(1),Se=null),Ue===(Ue=Ie(ve))&&De?De.p(ve,ee):(De.d(1),De=Ue(ve),De&&(De.c(),De.m(e,null)))},i:$,o:$,d(ve){ve&&C(e),Oe.d(),ke&&ke.d(),je&&je.d(),Te&&Te.d(),Se&&Se.d(),De.d(),Pe=!1,me(ge)}}}function Ud(l){var j;let e,t,n,s,o,r,f=(((j=l[44])==null?void 0:j.trashPath)||"")+"",c,d,v,_,h,k;function b(E,T){return!E[44]||(E[44].nodes||[]).length===0&&(E[44].entries||[]).length===0?p1:d1}let y=b(l),w=y(l);return{c(){e=u("div"),t=u("div"),n=u("div"),s=u("h2"),s.textContent=`${m("nav.trash")}`,o=g(),r=u("p"),c=F(f),d=g(),v=u("button"),v.textContent=`${m("trash.openFolder")}`,_=g(),w.c(),i(s,"class","svelte-14f54e4"),i(r,"class","svelte-14f54e4"),i(n,"class","svelte-14f54e4"),i(v,"class","btn btn-sm svelte-14f54e4"),i(t,"class","trash-header svelte-14f54e4"),i(e,"class","trash-screen svelte-14f54e4")},m(E,T){S(E,e,T),a(e,t),a(t,n),a(n,s),a(n,o),a(n,r),a(r,c),a(t,d),a(t,v),a(e,_),w.m(e,null),h||(k=I(v,"click",l[225]),h=!0)},p(E,T){var N;T[1]&8192&&f!==(f=(((N=E[44])==null?void 0:N.trashPath)||"")+"")&&B(c,f),y===(y=b(E))&&w?w.p(E,T):(w.d(1),w=y(E),w&&(w.c(),w.m(e,null)))},i:$,o:$,d(E){E&&C(e),w.d(),h=!1,k()}}}function Kd(l){let e,t,n,s,o,r,f,c,d,v,_;function h(y,w){return y[43].length===0?b1:g1}let k=h(l),b=k(l);return{c(){e=u("div"),t=u("div"),n=u("div"),s=u("h2"),s.textContent=`${m("nav.inbox")}`,o=g(),r=u("p"),r.textContent=`${m("inbox.subtitle")}`,f=g(),c=u("button"),c.textContent=`+ ${m("nav.createNode")}`,d=g(),b.c(),i(s,"class","svelte-14f54e4"),i(r,"class","svelte-14f54e4"),i(n,"class","svelte-14f54e4"),i(c,"class","btn btn-primary btn-sm svelte-14f54e4"),i(t,"class","inbox-header svelte-14f54e4"),i(e,"class","inbox-screen svelte-14f54e4")},m(y,w){S(y,e,w),a(e,t),a(t,n),a(n,s),a(n,o),a(n,r),a(t,f),a(t,c),a(e,d),b.m(e,null),v||(_=I(c,"click",l[114]),v=!0)},p(y,w){k===(k=h(y))&&b?b.p(y,w):(b.d(1),b=k(y),b&&(b.c(),b.m(e,null)))},i:$,o:$,d(y){y&&C(e),b.d(),v=!1,_()}}}function Gd(l){let e,t,n,s,o,r,f=ce(l[87]),c=[];for(let h=0;h{v[b]=null}),it()),~s?(o=v[s],o?o.p(h,k):(o=v[s]=d[s](h),o.c()),ae(o,1),o.m(n,null)):o=null)},i(h){r||(ae(o),r=!0)},o(h){de(o),r=!1},d(h){h&&(C(e),C(t),C(n)),Fe(c,h),~s&&v[s].d()}}}function Jd(l){let e,t,n,s=l[29].title+"",o,r,f,c,d,v,_,h,k,b,y,w=l[29].dirty&&_o();return{c(){e=u("div"),t=u("div"),n=u("span"),o=F(s),r=g(),w&&w.c(),f=g(),c=u("div"),d=u("button"),d.textContent=`${m("common.save")}`,v=g(),_=u("button"),_.textContent=`${m("common.close")}`,h=g(),k=u("textarea"),i(n,"class","note-title svelte-14f54e4"),i(d,"class","btn btn-primary svelte-14f54e4"),i(_,"class","btn svelte-14f54e4"),i(c,"class","note-editor-actions svelte-14f54e4"),i(t,"class","note-editor-header svelte-14f54e4"),i(k,"class","note-textarea svelte-14f54e4"),i(k,"placeholder",m("note.placeholder")),i(e,"class","note-editor svelte-14f54e4")},m(j,E){S(j,e,E),a(e,t),a(t,n),a(n,o),a(t,r),w&&w.m(t,null),a(t,f),a(t,c),a(c,d),a(c,v),a(c,_),a(e,h),a(e,k),be(k,l[29].content),b||(y=[I(d,"click",l[134]),I(_,"click",l[132]),I(k,"input",l[178]),I(k,"input",l[133])],b=!0)},p(j,E){E[0]&536870912&&s!==(s=j[29].title+"")&&B(o,s),j[29].dirty?w||(w=_o(),w.c(),w.m(t,f)):w&&(w.d(1),w=null),E[0]&536870912&&be(k,j[29].content)},i:$,o:$,d(j){j&&C(e),w&&w.d(),b=!1,me(y)}}}function qd(l){let e,t=m("common.error")+"",n,s,o;return{c(){e=u("p"),n=F(t),s=g(),o=F(l[24]),i(e,"class","error-text svelte-14f54e4")},m(r,f){S(r,e,f),a(e,n),a(e,s),a(e,o)},p(r,f){f[0]&16777216&&B(o,r[24])},d(r){r&&C(e)}}}function Yd(l){let e,t,n;return{c(){e=u("p"),e.textContent=`${m("welcome.selectSection")}`,t=g(),n=u("p"),n.textContent=`${m("welcome.createCase")}`,i(e,"class","svelte-14f54e4"),i(n,"class","hint svelte-14f54e4")},m(s,o){S(s,e,o),S(s,t,o),S(s,n,o)},p:$,d(s){s&&(C(e),C(t),C(n))}}}function Qd(l){let e;return{c(){e=u("p"),e.textContent=`${m("common.loading")}`,i(e,"class","svelte-14f54e4")},m(t,n){S(t,e,n)},p:$,d(t){t&&C(e)}}}function Xd(l){let e,t=ce(l[8]),n=[];for(let s=0;s0&&li(l),o=l[7].summary.notes>0&&ni(l),r=l[7].summary.files>0&&si(l);return{c(){e=u("div"),s&&s.c(),t=g(),o&&o.c(),n=g(),r&&r.c(),i(e,"class","today-summary svelte-14f54e4")},m(f,c){S(f,e,c),s&&s.m(e,null),a(e,t),o&&o.m(e,null),a(e,n),r&&r.m(e,null)},p(f,c){f[7].summary.changedCases>0?s?s.p(f,c):(s=li(f),s.c(),s.m(e,t)):s&&(s.d(1),s=null),f[7].summary.notes>0?o?o.p(f,c):(o=ni(f),o.c(),o.m(e,n)):o&&(o.d(1),o=null),f[7].summary.files>0?r?r.p(f,c):(r=si(f),r.c(),r.m(e,null)):r&&(r.d(1),r=null)},d(f){f&&C(e),s&&s.d(),o&&o.d(),r&&r.d()}}}function li(l){let e,t=l[7].summary.changedCases+"",n,s,o=ht(l[7].summary.changedCases,m("today.plural.case_one"),m("today.plural.case_few"),m("today.plural.case_many"))+"",r;return{c(){e=u("span"),n=F(t),s=g(),r=F(o),i(e,"class","summary-chip svelte-14f54e4")},m(f,c){S(f,e,c),a(e,n),a(e,s),a(e,r)},p(f,c){c[0]&128&&t!==(t=f[7].summary.changedCases+"")&&B(n,t),c[0]&128&&o!==(o=ht(f[7].summary.changedCases,m("today.plural.case_one"),m("today.plural.case_few"),m("today.plural.case_many"))+"")&&B(r,o)},d(f){f&&C(e)}}}function ni(l){let e,t=l[7].summary.notes+"",n,s,o=ht(l[7].summary.notes,m("today.plural.note_one"),m("today.plural.note_few"),m("today.plural.note_many"))+"",r;return{c(){e=u("span"),n=F(t),s=g(),r=F(o),i(e,"class","summary-chip svelte-14f54e4")},m(f,c){S(f,e,c),a(e,n),a(e,s),a(e,r)},p(f,c){c[0]&128&&t!==(t=f[7].summary.notes+"")&&B(n,t),c[0]&128&&o!==(o=ht(f[7].summary.notes,m("today.plural.note_one"),m("today.plural.note_few"),m("today.plural.note_many"))+"")&&B(r,o)},d(f){f&&C(e)}}}function si(l){let e,t=l[7].summary.files+"",n,s,o=ht(l[7].summary.files,m("today.plural.file_one"),m("today.plural.file_few"),m("today.plural.file_many"))+"",r;return{c(){e=u("span"),n=F(t),s=g(),r=F(o),i(e,"class","summary-chip svelte-14f54e4")},m(f,c){S(f,e,c),a(e,n),a(e,s),a(e,r)},p(f,c){c[0]&128&&t!==(t=f[7].summary.files+"")&&B(n,t),c[0]&128&&o!==(o=ht(f[7].summary.files,m("today.plural.file_one"),m("today.plural.file_few"),m("today.plural.file_many"))+"")&&B(r,o)},d(f){f&&C(e)}}}function ii(l){let e,t,n,s=ce(l[41]),o=[];for(let r=0;r0&&oi(l);return{c(){e=u("div"),t=u("div"),n=u("div"),s=u("button"),r=F(o),f=g(),c=u("span"),v=F(d),_=g(),h=u("span"),b=F(k),y=g(),w=u("div"),j=u("input"),T=g(),N=u("span"),N.textContent=`${m("suggest.minutes")}`,D=g(),A=u("button"),A.textContent=`${m("suggest.edit")}`,M=g(),R=u("button"),R.textContent=`${m("suggest.apply")}`,V=g(),L&&L.c(),W=g(),i(s,"class","suggestion-node link-btn svelte-14f54e4"),i(c,"class","suggestion-summary svelte-14f54e4"),i(h,"class","suggestion-confidence svelte-14f54e4"),he(h,"low",l[357].confidence==="low"),he(h,"medium",l[357].confidence==="medium"),he(h,"high",l[357].confidence==="high"),i(n,"class","suggestion-info svelte-14f54e4"),i(j,"type","number"),i(j,"class","suggestion-min-input svelte-14f54e4"),j.value=E=l[357].suggestedMin,i(j,"min","1"),i(j,"max","480"),i(N,"class","suggestion-min-label svelte-14f54e4"),i(A,"class","btn btn-sm svelte-14f54e4"),i(R,"class","btn btn-sm btn-primary svelte-14f54e4"),i(w,"class","suggestion-actions svelte-14f54e4"),i(t,"class","suggestion-main svelte-14f54e4"),i(t,"role","button"),i(t,"tabindex","0"),i(e,"class","suggestion-card svelte-14f54e4"),he(e,"expanded",l[357]._expanded)},m(O,x){S(O,e,x),a(e,t),a(t,n),a(n,s),a(s,r),a(n,f),a(n,c),a(c,v),a(n,_),a(n,h),a(h,b),a(t,y),a(t,w),a(w,j),a(w,T),a(w,N),a(w,D),a(w,A),a(w,M),a(w,R),a(e,V),L&&L.m(e,null),a(e,W),J||(q=[I(s,"click",We(Y)),I(j,"change",We(U)),I(A,"click",We(H)),I(R,"click",We(G)),I(t,"click",z),I(t,"keydown",K)],J=!0)},p(O,x){l=O,x[1]&1024&&o!==(o=l[357].nodeTitle+"")&&B(r,o),x[1]&1024&&d!==(d=l[357].summary+"")&&B(v,d),x[1]&1024&&k!==(k=m("suggest.confidence."+l[357].confidence)+"")&&B(b,k),x[1]&1024&&he(h,"low",l[357].confidence==="low"),x[1]&1024&&he(h,"medium",l[357].confidence==="medium"),x[1]&1024&&he(h,"high",l[357].confidence==="high"),x[1]&1024&&E!==(E=l[357].suggestedMin)&&j.value!==E&&(j.value=E),l[357]._expanded&&l[357].events&&l[357].events.length>0?L?L.p(l,x):(L=oi(l),L.c(),L.m(e,W)):L&&(L.d(1),L=null),x[1]&1024&&he(e,"expanded",l[357]._expanded)},d(O){O&&C(e),L&&L.d(),J=!1,me(q)}}}function xd(l){let e,t,n,s;return{c(){e=u("div"),t=u("p"),t.textContent=`${m("today.empty")}`,n=g(),s=u("p"),s.textContent=`${m("today.emptyHint")}`,i(t,"class","svelte-14f54e4"),i(s,"class","hint svelte-14f54e4"),i(e,"class","today-empty svelte-14f54e4")},m(o,r){S(o,e,r),a(e,t),a(e,n),a(e,s)},p:$,d(o){o&&C(e)}}}function $d(l){let e,t,n=ce(l[7].groups),s=[];for(let r=0;r0&&mi(l);return{c(){for(let r=0;r0?o?o.p(r,f):(o=mi(r),o.c(),o.m(t.parentNode,t)):o&&(o.d(1),o=null)},d(r){r&&(C(e),C(t)),Fe(s,r),o&&o.d(r)}}}function fi(l){let e,t=l[393].events.length+"",n,s,o=ht(l[393].events.length,m("today.plural.event_one"),m("today.plural.event_few"),m("today.plural.event_many"))+"",r;return{c(){e=u("span"),n=F(t),s=g(),r=F(o),i(e,"class","today-case-count svelte-14f54e4")},m(f,c){S(f,e,c),a(e,n),a(e,s),a(e,r)},p(f,c){c[0]&128&&t!==(t=f[393].events.length+"")&&B(n,t),c[0]&128&&o!==(o=ht(f[393].events.length,m("today.plural.event_one"),m("today.plural.event_few"),m("today.plural.event_many"))+"")&&B(r,o)},d(f){f&&C(e)}}}function e1(l){let e;return{c(){e=u("div"),e.textContent=`${m("today.changedCases")}`,i(e,"class","today-events-empty svelte-14f54e4")},m(t,n){S(t,e,n)},p:$,d(t){t&&C(e)}}}function t1(l){let e,t=ce(l[393].events),n=[];for(let s=0;s0?t1:e1}let A=D(l),M=A(l);return{c(){e=u("div"),t=u("div"),n=u("span"),o=F(s),r=g(),f=u("span"),d=F(c),v=g(),E&&E.c(),_=g(),h=u("span"),b=F(k),y=g(),M.c(),i(n,"class","today-case-title svelte-14f54e4"),i(f,"class","today-case-type svelte-14f54e4"),i(h,"class","today-case-time svelte-14f54e4"),i(t,"class","today-case-header svelte-14f54e4"),i(t,"role","button"),i(t,"tabindex","0"),i(e,"class","today-case svelte-14f54e4")},m(R,V){S(R,e,V),a(e,t),a(t,n),a(n,o),a(t,r),a(t,f),a(f,d),a(t,v),E&&E.m(t,null),a(t,_),a(t,h),a(h,b),a(e,y),M.m(e,null),w||(j=[I(t,"click",T),I(t,"keydown",N)],w=!0)},p(R,V){l=R,V[0]&128&&s!==(s=l[393].nodeTitle+"")&&B(o,s),V[0]&128&&c!==(c=l[156](l[393].nodeKind)+"")&&B(d,c),l[393].events?E?E.p(l,V):(E=fi(l),E.c(),E.m(t,_)):E&&(E.d(1),E=null),V[0]&128&&k!==(k=tt(l[393].lastActivityAt)+"")&&B(b,k),A===(A=D(l))&&M?M.p(l,V):(M.d(1),M=A(l),M&&(M.c(),M.m(e,null)))},d(R){R&&C(e),E&&E.d(),M.d(),w=!1,me(j)}}}function mi(l){let e,t,n,s=ce(l[7].events),o=[];for(let r=0;r0&&yi(l);return{c(){e=u("div"),t=u("div"),n=u("div"),s=u("button"),r=F(o),f=g(),c=u("span"),v=F(d),_=g(),h=u("span"),b=F(k),y=g(),w=u("div"),j=u("input"),T=g(),N=u("span"),N.textContent=`${m("suggest.minutes")}`,D=g(),A=u("button"),A.textContent=`${m("suggest.edit")}`,M=g(),R=u("button"),R.textContent=`${m("suggest.apply")}`,V=g(),L&&L.c(),W=g(),i(s,"class","suggestion-node link-btn svelte-14f54e4"),i(c,"class","suggestion-summary svelte-14f54e4"),i(h,"class","suggestion-confidence svelte-14f54e4"),he(h,"low",l[357].confidence==="low"),he(h,"medium",l[357].confidence==="medium"),he(h,"high",l[357].confidence==="high"),i(n,"class","suggestion-info svelte-14f54e4"),i(j,"type","number"),i(j,"class","suggestion-min-input svelte-14f54e4"),j.value=E=l[357].suggestedMin,i(j,"min","1"),i(j,"max","480"),i(N,"class","suggestion-min-label svelte-14f54e4"),i(A,"class","btn btn-sm svelte-14f54e4"),i(R,"class","btn btn-sm btn-primary svelte-14f54e4"),i(w,"class","suggestion-actions svelte-14f54e4"),i(t,"class","suggestion-main svelte-14f54e4"),i(t,"role","button"),i(t,"tabindex","0"),i(e,"class","suggestion-card svelte-14f54e4"),he(e,"expanded",l[357]._expanded)},m(O,x){S(O,e,x),a(e,t),a(t,n),a(n,s),a(s,r),a(n,f),a(n,c),a(c,v),a(n,_),a(n,h),a(h,b),a(t,y),a(t,w),a(w,j),a(w,T),a(w,N),a(w,D),a(w,A),a(w,M),a(w,R),a(e,V),L&&L.m(e,null),a(e,W),J||(q=[I(s,"click",We(Y)),I(j,"change",We(U)),I(A,"click",We(H)),I(R,"click",We(G)),I(t,"click",z),I(t,"keydown",K)],J=!0)},p(O,x){l=O,x[1]&1024&&o!==(o=l[357].nodeTitle+"")&&B(r,o),x[1]&1024&&d!==(d=l[357].summary+"")&&B(v,d),x[1]&1024&&k!==(k=m("suggest.confidence."+l[357].confidence)+"")&&B(b,k),x[1]&1024&&he(h,"low",l[357].confidence==="low"),x[1]&1024&&he(h,"medium",l[357].confidence==="medium"),x[1]&1024&&he(h,"high",l[357].confidence==="high"),x[1]&1024&&E!==(E=l[357].suggestedMin)&&j.value!==E&&(j.value=E),l[357]._expanded&&l[357].events&&l[357].events.length>0?L?L.p(l,x):(L=yi(l),L.c(),L.m(e,W)):L&&(L.d(1),L=null),x[1]&1024&&he(e,"expanded",l[357]._expanded)},d(O){O&&C(e),L&&L.d(),J=!1,me(q)}}}function ji(l){let e,t,n=m("journal.total")+"",s,o,r=Math.floor(l[10].totalMinutes/60)+"",f,c,d=l[10].totalMinutes%60+"",v,_,h=l[10].totalEntries+"",k,b,y=m("worklog.min")+"",w,j,E,T,N=l[10].byDay&&l[10].byDay.length>0&&Ei(l),D=l[10].byNode&&l[10].byNode.length>0&&Ni(l);return{c(){e=u("div"),t=u("div"),s=F(n),o=F(": "),f=F(r),c=F("ч "),v=F(d),_=F("м ("),k=F(h),b=g(),w=F(y),j=F(")"),E=g(),N&&N.c(),T=g(),D&&D.c(),i(t,"class","summary-total svelte-14f54e4"),i(e,"class","journal-summary svelte-14f54e4")},m(A,M){S(A,e,M),a(e,t),a(t,s),a(t,o),a(t,f),a(t,c),a(t,v),a(t,_),a(t,k),a(t,b),a(t,w),a(t,j),a(e,E),N&&N.m(e,null),a(e,T),D&&D.m(e,null)},p(A,M){M[0]&1024&&r!==(r=Math.floor(A[10].totalMinutes/60)+"")&&B(f,r),M[0]&1024&&d!==(d=A[10].totalMinutes%60+"")&&B(v,d),M[0]&1024&&h!==(h=A[10].totalEntries+"")&&B(k,h),A[10].byDay&&A[10].byDay.length>0?N?N.p(A,M):(N=Ei(A),N.c(),N.m(e,T)):N&&(N.d(1),N=null),A[10].byNode&&A[10].byNode.length>0?D?D.p(A,M):(D=Ni(A),D.c(),D.m(e,null)):D&&(D.d(1),D=null)},d(A){A&&C(e),N&&N.d(),D&&D.d()}}}function Ei(l){let e,t,n,s=ce(l[10].byDay),o=[];for(let r=0;r0?f1:R[375].source==="suggestion"?c1:R[375].source==="unknown"||R[375].source==="imported"?a1:R[375]._hasEvents?r1:o1}let D=N(l),A=D(l),M=l[375]._events&&Pi(l);return{c(){e=u("tr"),t=u("td"),n=u("div"),s=u("div"),o=u("button"),o.textContent=`${m("worklog.editEntry")}`,r=g(),f=u("button"),f.textContent=`${m("worklog.deleteEntry")}`,c=g(),T&&T.c(),d=g(),v=u("div"),_=u("span"),_.textContent=`${m("worklog.source")}`,h=g(),A.c(),k=g(),M&&M.c(),b=g(),i(o,"class","btn btn-sm svelte-14f54e4"),i(f,"class","btn btn-sm btn-danger svelte-14f54e4"),i(s,"class","journal-detail-actions svelte-14f54e4"),i(_,"class","journal-detail-label svelte-14f54e4"),i(v,"class","journal-detail-section svelte-14f54e4"),i(n,"class","journal-detail-body svelte-14f54e4"),i(t,"colspan","8"),i(t,"class","svelte-14f54e4"),i(e,"class","journal-row-detail svelte-14f54e4")},m(R,V){S(R,e,V),a(e,t),a(t,n),a(n,s),a(s,o),a(s,r),a(s,f),a(n,c),T&&T.m(n,null),a(n,d),a(n,v),a(v,_),a(v,h),A.m(v,null),a(n,k),M&&M.m(n,null),a(e,b),y||(w=[I(o,"click",We(j)),I(f,"click",We(E))],y=!0)},p(R,V){l=R,l[375].details?T?T.p(l,V):(T=Fi(l),T.c(),T.m(n,d)):T&&(T.d(1),T=null),D!==(D=N(l))&&(A.d(1),A=D(l),A&&(A.c(),A.m(v,null))),l[375]._events?M?M.p(l,V):(M=Pi(l),M.c(),M.m(n,null)):M&&(M.d(1),M=null)},d(R){R&&C(e),T&&T.d(),A.d(),M&&M.d(),y=!1,me(w)}}}function Fi(l){let e,t,n,s,o=l[375].details+"",r;return{c(){e=u("div"),t=u("span"),t.textContent=`${m("worklog.details")}`,n=g(),s=u("p"),r=F(o),i(t,"class","journal-detail-label svelte-14f54e4"),i(s,"class","svelte-14f54e4"),i(e,"class","journal-detail-section svelte-14f54e4")},m(f,c){S(f,e,c),a(e,t),a(e,n),a(e,s),a(s,r)},p(f,c){c[0]&512&&o!==(o=f[375].details+"")&&B(r,o)},d(f){f&&C(e)}}}function o1(l){let e;return{c(){e=u("p"),e.textContent=`${m("worklog.sourceUnknown")}`,i(e,"class","svelte-14f54e4")},m(t,n){S(t,e,n)},d(t){t&&C(e)}}}function r1(l){let e;return{c(){e=u("p"),e.textContent=`${m("worklog.sourceSuggestion")}`,i(e,"class","svelte-14f54e4")},m(t,n){S(t,e,n)},d(t){t&&C(e)}}}function a1(l){let e;return{c(){e=u("p"),e.textContent=`${m("worklog.sourceUnknown")}`,i(e,"class","svelte-14f54e4")},m(t,n){S(t,e,n)},d(t){t&&C(e)}}}function c1(l){let e;return{c(){e=u("p"),e.textContent=`${m("worklog.sourceSuggestionNoEvents")}`,i(e,"class","svelte-14f54e4")},m(t,n){S(t,e,n)},d(t){t&&C(e)}}}function f1(l){let e;return{c(){e=u("p"),e.textContent=`${m("worklog.sourceSuggestion")}`,i(e,"class","svelte-14f54e4")},m(t,n){S(t,e,n)},d(t){t&&C(e)}}}function u1(l){let e;return{c(){e=u("p"),e.textContent=`${m("worklog.sourceManual")}`,i(e,"class","svelte-14f54e4")},m(t,n){S(t,e,n)},d(t){t&&C(e)}}}function Pi(l){let e,t,n,s=ce(l[375]._events),o=[];for(let r=0;r0,r,f,c,d=o&&Ki(l);function v(k,b){return k[31].length===0?D1:N1}let _=v(l),h=_(l);return{c(){e=u("div"),t=u("div"),n=u("button"),n.textContent=`+ ${m("worklog.addEntry")}`,s=g(),d&&d.c(),r=g(),h.c(),i(n,"class","btn btn-primary btn-sm svelte-14f54e4"),i(t,"class","worklog-toolbar svelte-14f54e4"),i(e,"class","worklog-tab svelte-14f54e4")},m(k,b){S(k,e,b),a(e,t),a(t,n),a(e,s),d&&d.m(e,null),a(e,r),h.m(e,null),f||(c=I(n,"click",l[205]),f=!0)},p(k,b){b[0]&67108864|b[1]&1024&&(o=k[26]&&k[41].filter(k[171]).length>0),o?d?d.p(k,b):(d=Ki(k),d.c(),d.m(e,r)):d&&(d.d(1),d=null),_===(_=v(k))&&h?h.p(k,b):(h.d(1),h=_(k),h&&(h.c(),h.m(e,null)))},i:$,o:$,d(k){k&&C(e),d&&d.d(),h.d(),f=!1,c()}}}function w1(l){let e,t,n,s,o,r;function f(v,_){return v[30].length===0?R1:L1}let c=f(l),d=c(l);return{c(){e=u("div"),t=u("div"),n=u("button"),n.textContent=`${m("action.addAction")}`,s=g(),d.c(),i(n,"class","btn btn-primary svelte-14f54e4"),i(t,"class","tab-toolbar svelte-14f54e4"),i(e,"class","actions-tab svelte-14f54e4")},m(v,_){S(v,e,_),a(e,t),a(t,n),a(e,s),d.m(e,null),o||(r=I(n,"click",l[157]),o=!0)},p(v,_){c===(c=f(v))&&d?d.p(v,_):(d.d(1),d=c(v),d&&(d.c(),d.m(e,null)))},i:$,o:$,d(v){v&&C(e),d.d(),o=!1,r()}}}function C1(l){let e,t,n,s=m("file.addFile")+"",o,r,f,c=m("file.addFolder")+"",d,v,_,h,k,b,y,w,j,E,T,N,D,A=l[69].items.length>0&&so(l);const M=[O1,z1],R=[];function V(q,Y){return q[61]?0:1}b=V(l),y=R[b]=M[b](l);let W=l[57]&&!l[59]&&oo(),J=l[65]&&ro(l);return{c(){e=u("div"),t=u("div"),n=u("button"),o=F(s),r=g(),f=u("button"),d=F(c),v=g(),_=u("button"),_.textContent=`${m("file.newFile")}`,h=g(),A&&A.c(),k=g(),y.c(),w=g(),W&&W.c(),j=g(),J&&J.c(),E=ot(),i(n,"class","btn btn-primary svelte-14f54e4"),n.disabled=l[57],i(f,"class","btn svelte-14f54e4"),f.disabled=l[57],i(_,"class","btn svelte-14f54e4"),i(t,"class","tab-toolbar svelte-14f54e4"),i(e,"class","files-tab svelte-14f54e4")},m(q,Y){S(q,e,Y),a(e,t),a(t,n),a(n,o),a(t,r),a(t,f),a(f,d),a(t,v),a(t,_),a(t,h),A&&A.m(t,null),a(e,k),R[b].m(e,null),a(e,w),W&&W.m(e,null),S(q,j,Y),J&&J.m(q,Y),S(q,E,Y),T=!0,N||(D=[I(n,"click",l[150]),I(f,"click",l[151]),I(_,"click",l[96])],N=!0)},p(q,Y){(!T||Y[1]&67108864)&&(n.disabled=q[57]),(!T||Y[1]&67108864)&&(f.disabled=q[57]),q[69].items.length>0?A?A.p(q,Y):(A=so(q),A.c(),A.m(t,null)):A&&(A.d(1),A=null);let U=b;b=V(q),b===U?R[b].p(q,Y):(st(),de(R[U],1,1,()=>{R[U]=null}),it(),y=R[b],y?y.p(q,Y):(y=R[b]=M[b](q),y.c()),ae(y,1),y.m(e,w)),q[57]&&!q[59]?W||(W=oo(),W.c(),W.m(e,null)):W&&(W.d(1),W=null),q[65]?J?(J.p(q,Y),Y[2]&8&&ae(J,1)):(J=ro(q),J.c(),ae(J,1),J.m(E.parentNode,E)):J&&(st(),de(J,1,1,()=>{J=null}),it())},i(q){T||(ae(y),ae(J),T=!0)},o(q){de(y),de(J),T=!1},d(q){q&&(C(e),C(j),C(E)),A&&A.d(),R[b].d(),W&&W.d(),J&&J.d(q),N=!1,me(D)}}}function S1(l){let e,t,n,s,o,r,f,c=l[50]&&ao(l);function d(h,k){return h[28].length===0&&!h[50]?K1:U1}let v=d(l),_=v(l);return{c(){e=u("div"),t=u("div"),n=u("button"),n.textContent=`${m("note.add")}`,s=g(),c&&c.c(),o=g(),_.c(),i(n,"class","btn btn-primary svelte-14f54e4"),i(t,"class","tab-toolbar svelte-14f54e4"),i(e,"class","notes-tab svelte-14f54e4")},m(h,k){S(h,e,k),a(e,t),a(t,n),a(e,s),c&&c.m(e,null),a(e,o),_.m(e,null),r||(f=I(n,"click",l[128]),r=!0)},p(h,k){h[50]?c?c.p(h,k):(c=ao(h),c.c(),c.m(e,o)):c&&(c.d(1),c=null),v===(v=d(h))&&_?_.p(h,k):(_.d(1),_=v(h),_&&(_.c(),_.m(e,null)))},i:$,o:$,d(h){h&&C(e),c&&c.d(),_.d(),r=!1,f()}}}function j1(l){let e,t,n=l[26].title+"",s,o,r,f,c,d,v=l[156](l[26].type)+"",_,h,k,b,y,w=(l[26].section||"—")+"",j,E,T,N,D,A=rt(l[26].createdAt)+"",M,R,V,W,J,q,Y,U,H=m("overview.newNote")+"",G,z,K,L,O,x,re=m("overview.addFile")+"",te,ne,le,oe,fe,ye,Be=m("overview.addAction")+"",Me,X,Z,ue,we,_e,Ce,Xe=m("overview.logTime")+"",Ke,lt,Ve,Ae,Pe,ge=l[28].length>0&&fo(l),He=l[31].length>0&&po(l);return{c(){e=u("div"),t=u("h2"),s=F(n),o=g(),r=u("div"),f=u("div"),c=u("span"),c.textContent=`${m("overview.type")}`,d=u("span"),_=F(v),h=g(),k=u("div"),b=u("span"),b.textContent=`${m("overview.section")}`,y=u("span"),j=F(w),E=g(),T=u("div"),N=u("span"),N.textContent=`${m("overview.created")}`,D=u("span"),M=F(A),R=g(),V=u("div"),W=u("button"),J=Q("svg"),q=Q("path"),Y=Q("path"),U=g(),G=F(H),z=g(),K=u("button"),L=Q("svg"),O=Q("path"),x=g(),te=F(re),ne=g(),le=u("button"),oe=Q("svg"),fe=Q("polygon"),ye=g(),Me=F(Be),X=g(),Z=u("button"),ue=Q("svg"),we=Q("circle"),_e=Q("polyline"),Ce=g(),Ke=F(Xe),lt=g(),ge&&ge.c(),Ve=g(),He&&He.c(),i(t,"class","svelte-14f54e4"),i(c,"class","meta-label svelte-14f54e4"),i(d,"class","svelte-14f54e4"),i(f,"class","meta-item svelte-14f54e4"),i(b,"class","meta-label svelte-14f54e4"),i(y,"class","svelte-14f54e4"),i(k,"class","meta-item svelte-14f54e4"),i(N,"class","meta-label svelte-14f54e4"),i(D,"class","svelte-14f54e4"),i(T,"class","meta-item svelte-14f54e4"),i(r,"class","meta-grid svelte-14f54e4"),i(q,"d","M12 20h9"),i(q,"class","svelte-14f54e4"),i(Y,"d","M16.5 3.5a2.121 2.121 0 0 1 3 3L7 19l-4 1 1-4L16.5 3.5z"),i(Y,"class","svelte-14f54e4"),i(J,"width","16"),i(J,"height","16"),i(J,"viewBox","0 0 24 24"),i(J,"fill","none"),i(J,"stroke","currentColor"),i(J,"stroke-width","2"),i(J,"stroke-linecap","round"),i(J,"stroke-linejoin","round"),i(J,"class","svelte-14f54e4"),i(W,"class","qa-btn svelte-14f54e4"),i(O,"d","M21.44 11.05l-9.19 9.19a6 6 0 0 1-8.49-8.49l9.19-9.19a4 4 0 0 1 5.66 5.66l-9.2 9.19a2 2 0 0 1-2.83-2.83l8.49-8.48"),i(O,"class","svelte-14f54e4"),i(L,"width","16"),i(L,"height","16"),i(L,"viewBox","0 0 24 24"),i(L,"fill","none"),i(L,"stroke","currentColor"),i(L,"stroke-width","2"),i(L,"stroke-linecap","round"),i(L,"stroke-linejoin","round"),i(L,"class","svelte-14f54e4"),i(K,"class","qa-btn svelte-14f54e4"),i(fe,"points","13 2 3 14 12 14 11 22 21 10 12 10 13 2"),i(fe,"class","svelte-14f54e4"),i(oe,"width","16"),i(oe,"height","16"),i(oe,"viewBox","0 0 24 24"),i(oe,"fill","none"),i(oe,"stroke","currentColor"),i(oe,"stroke-width","2"),i(oe,"stroke-linecap","round"),i(oe,"stroke-linejoin","round"),i(oe,"class","svelte-14f54e4"),i(le,"class","qa-btn svelte-14f54e4"),i(we,"cx","12"),i(we,"cy","12"),i(we,"r","10"),i(we,"class","svelte-14f54e4"),i(_e,"points","12 6 12 12 16 14"),i(_e,"class","svelte-14f54e4"),i(ue,"width","16"),i(ue,"height","16"),i(ue,"viewBox","0 0 24 24"),i(ue,"fill","none"),i(ue,"stroke","currentColor"),i(ue,"stroke-width","2"),i(ue,"stroke-linecap","round"),i(ue,"stroke-linejoin","round"),i(ue,"class","svelte-14f54e4"),i(Z,"class","qa-btn svelte-14f54e4"),i(V,"class","quick-actions svelte-14f54e4"),i(e,"class","overview svelte-14f54e4")},m(Ee,Oe){S(Ee,e,Oe),a(e,t),a(t,s),a(e,o),a(e,r),a(r,f),a(f,c),a(f,d),a(d,_),a(r,h),a(r,k),a(k,b),a(k,y),a(y,j),a(r,E),a(r,T),a(T,N),a(T,D),a(D,M),a(e,R),a(e,V),a(V,W),a(W,J),a(J,q),a(J,Y),a(W,U),a(W,G),a(V,z),a(V,K),a(K,L),a(L,O),a(K,x),a(K,te),a(V,ne),a(V,le),a(le,oe),a(oe,fe),a(le,ye),a(le,Me),a(V,X),a(V,Z),a(Z,ue),a(ue,we),a(ue,_e),a(Z,Ce),a(Z,Ke),a(e,lt),ge&&ge.m(e,null),a(e,Ve),He&&He.m(e,null),Ae||(Pe=[I(W,"click",l[180]),I(K,"click",l[181]),I(le,"click",l[157]),I(Z,"click",l[182])],Ae=!0)},p(Ee,Oe){Oe[0]&67108864&&n!==(n=Ee[26].title+"")&&B(s,n),Oe[0]&67108864&&v!==(v=Ee[156](Ee[26].type)+"")&&B(_,v),Oe[0]&67108864&&w!==(w=(Ee[26].section||"—")+"")&&B(j,w),Oe[0]&67108864&&A!==(A=rt(Ee[26].createdAt)+"")&&B(M,A),Ee[28].length>0?ge?ge.p(Ee,Oe):(ge=fo(Ee),ge.c(),ge.m(e,Ve)):ge&&(ge.d(1),ge=null),Ee[31].length>0?He?He.p(Ee,Oe):(He=po(Ee),He.c(),He.m(e,null)):He&&(He.d(1),He=null)},i:$,o:$,d(Ee){Ee&&C(e),ge&&ge.d(),He&&He.d(),Ae=!1,me(Pe)}}}function E1(l){let e,t=ce(l[22]),n=[];for(let s=0;s0&&Gi(l);return{c(){e=u("div"),t=u("div"),n=u("div"),s=u("span"),r=F(o),f=g(),c=u("span"),v=F(d),_=g(),k=F(h),b=F(" · "),w=F(y),j=g(),E=u("div"),T=u("button"),T.textContent=`${m("suggest.edit")}`,N=g(),D=u("button"),D.textContent=`${m("worklog.apply")}`,A=g(),U&&U.c(),M=g(),i(s,"class","suggestion-summary svelte-14f54e4"),i(c,"class","suggestion-meta svelte-14f54e4"),i(n,"class","suggestion-info svelte-14f54e4"),i(T,"class","btn btn-sm svelte-14f54e4"),i(D,"class","btn btn-sm btn-primary svelte-14f54e4"),i(E,"class","suggestion-actions svelte-14f54e4"),i(t,"class","suggestion-main svelte-14f54e4"),i(t,"role","button"),i(t,"tabindex","0"),i(e,"class","suggestion-card svelte-14f54e4"),he(e,"expanded",l[357]._expanded)},m(H,G){S(H,e,G),a(e,t),a(t,n),a(n,s),a(s,r),a(n,f),a(n,c),a(c,v),a(c,_),a(c,k),a(c,b),a(c,w),a(t,j),a(t,E),a(E,T),a(E,N),a(E,D),a(e,A),U&&U.m(e,null),a(e,M),R||(V=[I(T,"click",We(W)),I(D,"click",We(J)),I(t,"click",q),I(t,"keydown",Y)],R=!0)},p(H,G){l=H,G[0]&67108864|G[1]&1024&&o!==(o=l[357].summary+"")&&B(r,o),G[0]&67108864|G[1]&1024&&d!==(d=l[357].suggestedMin+"")&&B(v,d),G[0]&67108864|G[1]&1024&&y!==(y=m("suggest.confidence."+l[357].confidence)+"")&&B(w,y),l[357]._expanded&&l[357].events&&l[357].events.length>0?U?U.p(l,G):(U=Gi(l),U.c(),U.m(e,M)):U&&(U.d(1),U=null),G[0]&67108864|G[1]&1024&&he(e,"expanded",l[357]._expanded)},d(H){H&&C(e),U&&U.d(),R=!1,me(V)}}}function N1(l){let e,t=ce(l[31]),n=[];for(let s=0;s0?F1:D[338].source==="suggestion"?A1:D[338].source==="unknown"||D[338].source==="imported"?I1:M1}let E=j(l),T=E(l),N=l[338].source==="suggestion"&&l[338]._events&&l[338]._events.length>0&&$i(l);return{c(){e=u("div"),t=u("div"),n=u("button"),n.textContent=`${m("worklog.editEntry")}`,s=g(),o=u("button"),o.textContent=`${m("worklog.deleteEntry")}`,r=g(),w&&w.c(),f=g(),c=u("div"),d=u("span"),d.textContent=`${m("worklog.source")}`,v=g(),T.c(),_=g(),N&&N.c(),i(n,"class","btn btn-sm svelte-14f54e4"),i(o,"class","btn btn-sm btn-danger svelte-14f54e4"),i(t,"class","worklog-entry-actions svelte-14f54e4"),i(d,"class","wl-detail-label svelte-14f54e4"),i(c,"class","wl-detail-section svelte-14f54e4"),i(e,"class","worklog-entry-detail svelte-14f54e4")},m(D,A){S(D,e,A),a(e,t),a(t,n),a(t,s),a(t,o),a(e,r),w&&w.m(e,null),a(e,f),a(e,c),a(c,d),a(c,v),T.m(c,null),a(e,_),N&&N.m(e,null),h||(k=[I(n,"click",We(b)),I(o,"click",We(y))],h=!0)},p(D,A){l=D,l[338].details?w?w.p(l,A):(w=xi(l),w.c(),w.m(e,f)):w&&(w.d(1),w=null),E!==(E=j(l))&&(T.d(1),T=E(l),T&&(T.c(),T.m(c,null))),l[338].source==="suggestion"&&l[338]._events&&l[338]._events.length>0?N?N.p(l,A):(N=$i(l),N.c(),N.m(e,null)):N&&(N.d(1),N=null)},d(D){D&&C(e),w&&w.d(),T.d(),N&&N.d(),h=!1,me(k)}}}function xi(l){let e,t,n,s,o=l[338].details+"",r;return{c(){e=u("div"),t=u("span"),t.textContent=`${m("worklog.details")}`,n=g(),s=u("p"),r=F(o),i(t,"class","wl-detail-label svelte-14f54e4"),i(s,"class","svelte-14f54e4"),i(e,"class","wl-detail-section svelte-14f54e4")},m(f,c){S(f,e,c),a(e,t),a(e,n),a(e,s),a(s,r)},p(f,c){c[1]&1&&o!==(o=f[338].details+"")&&B(r,o)},d(f){f&&C(e)}}}function M1(l){let e;return{c(){e=u("p"),e.textContent=`${m("worklog.sourceUnknown")}`,i(e,"class","svelte-14f54e4")},m(t,n){S(t,e,n)},d(t){t&&C(e)}}}function I1(l){let e;return{c(){e=u("p"),e.textContent=`${m("worklog.sourceUnknown")}`,i(e,"class","svelte-14f54e4")},m(t,n){S(t,e,n)},d(t){t&&C(e)}}}function A1(l){let e;return{c(){e=u("p"),e.textContent=`${m("worklog.sourceSuggestionNoEvents")}`,i(e,"class","svelte-14f54e4")},m(t,n){S(t,e,n)},d(t){t&&C(e)}}}function F1(l){let e;return{c(){e=u("p"),e.textContent=`${m("worklog.sourceSuggestion")}`,i(e,"class","svelte-14f54e4")},m(t,n){S(t,e,n)},d(t){t&&C(e)}}}function P1(l){let e;return{c(){e=u("p"),e.textContent=`${m("worklog.sourceManual")}`,i(e,"class","svelte-14f54e4")},m(t,n){S(t,e,n)},d(t){t&&C(e)}}}function $i(l){let e,t,n,s=ce(l[338]._events),o=[];for(let r=0;r',T=g(),i(n,"class","action-title svelte-14f54e4"),i(f,"class","action-type svelte-14f54e4"),i(_,"class","action-data svelte-14f54e4"),i(t,"class","action-info svelte-14f54e4"),i(w,"class","btn btn-sm svelte-14f54e4"),i(E,"class","btn btn-sm btn-danger svelte-14f54e4"),i(y,"class","action-btns svelte-14f54e4"),i(e,"class","action-card svelte-14f54e4")},m(R,V){S(R,e,V),a(e,t),a(t,n),a(n,o),a(t,r),a(t,f),a(f,d),a(t,v),a(t,_),a(_,k),a(e,b),a(e,y),a(y,w),a(y,j),a(y,E),a(e,T),N||(D=[I(w,"click",A),I(E,"click",M)],N=!0)},p(R,V){l=R,V[0]&1073741824&&s!==(s=l[349].title+"")&&B(o,s),V[0]&1073741824&&c!==(c=l[161](l[349].type)+"")&&B(d,c),V[0]&1073741824&&h!==(h=l[349].data+"")&&B(k,h)},d(R){R&&C(e),N=!1,me(D)}}}function so(l){let e,t=m("common.paste")+"",n,s,o=l[69].items.length+"",r,f,c;return{c(){e=u("button"),n=F(t),s=g(),r=F(o),i(e,"class","btn svelte-14f54e4")},m(d,v){S(d,e,v),a(e,n),a(e,s),a(e,r),f||(c=I(e,"click",l[101]),f=!0)},p(d,v){v[2]&128&&o!==(o=d[69].items.length+"")&&B(r,o)},d(d){d&&C(e),f=!1,c()}}}function z1(l){let e,t,n,s,o,r,f;const c=[W1,V1],d=[];function v(b,y){return b[63].length>0?0:1}e=v(l),t=d[e]=c[e](l);const _=[H1,B1],h=[];function k(b,y){return b[64].length===0?0:1}return s=k(l),o=h[s]=_[s](l),{c(){t.c(),n=g(),o.c(),r=ot()},m(b,y){d[e].m(b,y),S(b,n,y),h[s].m(b,y),S(b,r,y),f=!0},p(b,y){let w=e;e=v(b),e===w?d[e].p(b,y):(st(),de(d[w],1,1,()=>{d[w]=null}),it(),t=d[e],t?t.p(b,y):(t=d[e]=c[e](b),t.c()),ae(t,1),t.m(n.parentNode,n));let j=s;s=k(b),s===j?h[s].p(b,y):(st(),de(h[j],1,1,()=>{h[j]=null}),it(),o=h[s],o?o.p(b,y):(o=h[s]=_[s](b),o.c()),ae(o,1),o.m(r.parentNode,r))},i(b){f||(ae(t),ae(o),f=!0)},o(b){de(t),de(o),f=!1},d(b){b&&(C(n),C(r)),d[e].d(b),h[s].d(b)}}}function O1(l){let e,t;return{c(){e=u("div"),t=u("p"),t.textContent=`${m("common.loading")}`,i(t,"class","svelte-14f54e4"),i(e,"class","empty-state svelte-14f54e4")},m(n,s){S(n,e,s),a(e,t)},p:$,i:$,o:$,d(n){n&&C(e)}}}function V1(l){let e,t;return e=new Yo({props:{crumbs:[{name:m("file.root")}]}}),{c(){Qe(e.$$.fragment)},m(n,s){Je(e,n,s),t=!0},p:$,i(n){t||(ae(e.$$.fragment,n),t=!0)},o(n){de(e.$$.fragment,n),t=!1},d(n){qe(e,n)}}}function W1(l){let e,t,n,s,o,r,f,c=m("common.backLabel")+"",d,v,_,h;return e=new Yo({props:{crumbs:[{name:m("file.root")},...l[63]]}}),e.$on("navigate",l[189]),{c(){Qe(e.$$.fragment),t=g(),n=u("button"),s=Q("svg"),o=Q("line"),r=Q("polyline"),f=g(),d=F(c),i(o,"x1","19"),i(o,"y1","12"),i(o,"x2","5"),i(o,"y2","12"),i(o,"class","svelte-14f54e4"),i(r,"points","12 19 5 12 12 5"),i(r,"class","svelte-14f54e4"),i(s,"width","14"),i(s,"height","14"),i(s,"viewBox","0 0 24 24"),i(s,"fill","none"),i(s,"stroke","currentColor"),i(s,"stroke-width","2"),i(s,"stroke-linecap","round"),i(s,"stroke-linejoin","round"),i(s,"class","svelte-14f54e4"),i(n,"class","btn btn-sm back-btn svelte-14f54e4")},m(k,b){Je(e,k,b),S(k,t,b),S(k,n,b),a(n,s),a(s,o),a(s,r),a(n,f),a(n,d),v=!0,_||(h=I(n,"click",l[92]),_=!0)},p(k,b){const y={};b[2]&2&&(y.crumbs=[{name:m("file.root")},...k[63]]),e.$set(y)},i(k){v||(ae(e.$$.fragment,k),v=!0)},o(k){de(e.$$.fragment,k),v=!1},d(k){k&&(C(t),C(n)),qe(e,k),_=!1,h()}}}function B1(l){let e,t=[],n=new Map,s,o=ce(l[64]);const r=f=>f[346].id;for(let f=0;f0?m("file.noFiles"):m("file.noFilesCase"))+"",r,f,c,d,v,_,h,k,b,y;return{c(){e=u("div"),t=u("div"),t.innerHTML='',n=g(),s=u("p"),r=F(o),f=g(),c=u("p"),c.textContent=`${m("file.hint")}`,d=g(),v=u("div"),_=u("button"),_.textContent=`${m("file.addFileSimple")}`,h=g(),k=u("button"),k.textContent=`${m("file.addFolderSimple")}`,i(t,"class","empty-icon svelte-14f54e4"),i(s,"class","svelte-14f54e4"),i(c,"class","hint svelte-14f54e4"),i(_,"class","btn btn-primary svelte-14f54e4"),i(k,"class","btn svelte-14f54e4"),i(v,"class","empty-actions svelte-14f54e4"),i(e,"class","empty-state svelte-14f54e4")},m(w,j){S(w,e,j),a(e,t),a(e,n),a(e,s),a(s,r),a(e,f),a(e,c),a(e,d),a(e,v),a(v,_),a(v,h),a(v,k),b||(y=[I(_,"click",l[150]),I(k,"click",l[151])],b=!0)},p(w,j){j[2]&2&&o!==(o=(w[63].length>0?m("file.noFiles"):m("file.noFilesCase"))+"")&&B(r,o)},i:$,o:$,d(w){w&&C(e),b=!1,me(y)}}}function io(l,e){let t,n,s;return n=new Wf({props:{item:e[346],selected:e[70].includes(e[346].id),onDragStart:e[105],onDragOver:e[106],onDrop:e[107]}}),n.$on("navigate",e[190]),n.$on("preview",e[191]),n.$on("openExternal",e[192]),n.$on("showInFolder",e[193]),n.$on("delete",e[194]),n.$on("rename",e[195]),n.$on("duplicate",e[196]),n.$on("cut",e[197]),n.$on("copy",e[198]),n.$on("selectOne",e[199]),n.$on("toggleSelect",e[200]),n.$on("rangeSelect",e[201]),{key:l,first:null,c(){t=ot(),Qe(n.$$.fragment),this.first=t},m(o,r){S(o,t,r),Je(n,o,r),s=!0},p(o,r){e=o;const f={};r[2]&4&&(f.item=e[346]),r[2]&260&&(f.selected=e[70].includes(e[346].id)),n.$set(f)},i(o){s||(ae(n.$$.fragment,o),s=!0)},o(o){de(n.$$.fragment,o),s=!1},d(o){o&&C(t),qe(n,o)}}}function oo(l){let e,t;return{c(){e=u("div"),t=u("p"),t.textContent=`${m("file.scanning")}`,i(t,"class","svelte-14f54e4"),i(e,"class","empty-state svelte-14f54e4")},m(n,s){S(n,e,s),a(e,t)},d(n){n&&C(e)}}}function ro(l){let e,t;return e=new lu({props:{item:l[65],content:l[66],loading:l[67],error:l[68]}}),e.$on("close",l[95]),e.$on("openExternal",l[202]),{c(){Qe(e.$$.fragment)},m(n,s){Je(e,n,s),t=!0},p(n,s){const o={};s[2]&8&&(o.item=n[65]),s[2]&16&&(o.content=n[66]),s[2]&32&&(o.loading=n[67]),s[2]&64&&(o.error=n[68]),e.$set(o)},i(n){t||(ae(e.$$.fragment,n),t=!0)},o(n){de(e.$$.fragment,n),t=!1},d(n){qe(e,n)}}}function ao(l){let e,t,n,s,o,r,f,c,d;return{c(){e=u("div"),t=u("input"),n=g(),s=u("div"),o=u("button"),o.textContent=`${m("common.create")}`,r=g(),f=u("button"),f.textContent=`${m("common.cancel")}`,i(t,"type","text"),i(t,"placeholder",m("note.title")),i(t,"class","svelte-14f54e4"),i(o,"class","btn btn-primary svelte-14f54e4"),i(f,"class","btn svelte-14f54e4"),i(s,"class","form-actions svelte-14f54e4"),i(e,"class","create-form svelte-14f54e4")},m(v,_){S(v,e,_),a(e,t),be(t,l[51]),a(e,n),a(e,s),a(s,o),a(s,r),a(s,f),c||(d=[I(t,"input",l[185]),I(t,"keydown",l[186]),I(o,"click",l[130]),I(f,"click",l[129])],c=!0)},p(v,_){_[1]&1048576&&t.value!==v[51]&&be(t,v[51])},d(v){v&&C(e),c=!1,me(d)}}}function U1(l){let e,t=ce(l[28]),n=[];for(let s=0;sde(x[te],1,1,()=>{x[te]=null});return{c(){e=u("div"),t=u("div"),n=u("h3"),n.textContent=`${m("nav.createNode")}`,s=g(),L&&L.c(),o=g(),r=u("div"),f=u("span"),f.textContent=`${m("template.select")}`,c=g(),d=u("div"),v=u("button"),Qe(_.$$.fragment),h=g(),k=u("div"),b=u("span"),b.textContent=`${m("template.optionNone")}`,y=g(),w=u("span"),w.textContent=`${m("template.none.desc")}`,j=g();for(let te=0;te{b=null}),it()),w[49].node&&w[49].node.parent_id?y?y.p(w,j):(y=wo(w),y.c(),y.m(t,o)):y&&(y.d(1),y=null),(!_||j[1]&262144)&&ct(t,"left",w[49].x+"px"),(!_||j[1]&262144)&&ct(t,"top",w[49].y+"px")},i(w){_||(ae(b),_=!0)},o(w){de(b),_=!1},d(w){w&&C(e),b&&b.d(),y&&y.d(),h=!1,me(k)}}}function ko(l){let e,t,n,s,o,r=ce(l[6].length>0?l[6]:[{id:"",title:"template.optionNone",icon:"folder"}]),f=[];for(let d=0;dde(f[d],1,1,()=>{f[d]=null});return{c(){e=u("div"),e.textContent=`${m("common.create")}`,t=g();for(let d=0;d0?d[6]:[{id:"",title:"template.optionNone",icon:"folder"}]);let _;for(_=0;_l[285].call(y)),i(h,"class","svelte-14f54e4"),i(_,"class","form-group svelte-14f54e4"),i(T,"class","label-text svelte-14f54e4"),i(M,"type","text"),i(M,"placeholder",R=l[54]==="open_url"?m("action.urlPlaceholder"):l[54]==="open_folder"||l[54]==="open_file"?m("action.pathPlaceholder"):m("action.commandPlaceholder")),i(M,"class","svelte-14f54e4"),i(E,"class","svelte-14f54e4"),i(j,"class","form-group svelte-14f54e4"),i(J,"class","btn btn-primary svelte-14f54e4"),i(Y,"class","btn svelte-14f54e4"),i(W,"class","modal-actions svelte-14f54e4"),i(t,"class","modal svelte-14f54e4"),i(e,"class","modal-overlay svelte-14f54e4"),i(e,"role","button"),i(e,"tabindex","0")},m(K,L){S(K,e,L),a(e,t),a(t,n),a(t,s),a(t,o),a(o,r),a(r,f),a(r,c),a(r,d),be(d,l[53]),a(t,v),a(t,_),a(_,h),a(h,k),a(h,b),a(h,y);for(let O=0;O{r[v]=null}),it(),t=r[e],t?t.p(c,d):(t=r[e]=o[e](c),t.c()),ae(t,1),t.m(n.parentNode,n))},i(c){s||(ae(t),s=!0)},o(c){de(t),s=!1},d(c){c&&C(n),r[e].d(c)}}}function ie(l,...e){try{if(window.go&&window.go.main&&window.go.main.App){const t=window.go.main.App[l];if(typeof t=="function")return t(...e)}}catch(t){console.error("Wails call error:",l,t)}return Promise.reject(new Error("Wails not connected: "+l))}function Bt(l,e,t){for(const n of l){if(n.id===e)return n.children=t,n.has_children=t.length>0,!0;if(n.children&&Bt(n.children,e,t))return!0}return!1}function Zo(l,e,t){for(const n of l){if(n.id===e)return n.children=t,n.has_children=t.length>0,!0;if(n.children&&Zo(n.children,e,t))return!0}return!1}function Rl(l){return l.eventIds&&l.eventIds.length?l.eventIds:l.events&&l.events.length?l.events.map(e=>e.id).filter(Boolean):[]}function ll(l){try{ie("WriteDebugLog",l)}catch{}}function zl(l){return l?l.map(e=>(e._expanded===void 0&&(e._expanded=!1),e)):[]}function tt(l){return l?new Date(l).toLocaleTimeString("ru-RU",{hour:"2-digit",minute:"2-digit"}):""}function Rt(l){return l==="note_created"||l==="file_added"||l==="folder_added"||l==="node_created"?"+":l==="file_deleted"||l==="folder_deleted"?"×":l==="file_renamed"||l==="folder_renamed"||l==="note_updated"||l==="node_updated"?"~":l==="file_copied"?"⧉":l==="file_moved"?"→":"•"}function rt(l){if(!l)return"";try{return new Date(l).toLocaleDateString("ru-RU",{day:"numeric",month:"short"})}catch{return l}}function ht(l,e,t,n){return l=Math.abs(l)%100,l>=5&&l<=20?n:(l%=10,l===1?e:l>=2&&l<=4?t:n)}function J1(l){return l.targetType==="note"&&l.targetId?{nodeId:l.nodeId,tab:"notes",targetId:l.targetId}:l.targetType==="file"?{nodeId:l.nodeId,tab:"files",targetId:l.targetId,targetPath:l.targetPath}:l.targetType==="folder"?{nodeId:l.nodeId,tab:"files",targetPath:l.targetPath||l.targetId}:{nodeId:l.nodeId}}function ft(l){return e=>{(e.key==="Enter"||e.key===" ")&&(e.preventDefault(),l())}}function q1(l,e,t){let n=null,s=!1,o=!1,r=!1,f=!1,c=[],d=[],v=[],_=null,h=[],k=0,b=!0,y=[],w=null,j="",E="",T=!1,N="",D="all",A="all",M="",R="",V="",W=[],J=!1,q=[],Y="",U="";function H(p){return{"vault not open":m("error.vaultNotOpen")}[p]||p}let G="",z=null,K="overview",L=[],O=null,x=[],re=[],te=[],ne=!1,le="",oe="",fe="",ye="",Be=!1,Me=!1,X=null,Z=null,ue=[],we=0,_e=[],Ce=null,Xe=!1,Ke="",lt=null,Ve=null,Ae={visible:!1,x:0,y:0,node:null},Pe=!1,ge="",He=!1,Ee="",Oe="open_url",ke="",je=[{id:"open_url",label:m("action.openUrl")},{id:"open_file",label:m("action.openFile")},{id:"open_folder",label:m("action.openFolder")},{id:"run_command",label:m("action.runCommand")},{id:"run_script",label:m("action.runScript")},{id:"open_terminal",label:m("action.openTerminal")},{id:"launch_app",label:m("action.launchApp")}],Te=!0,Se=!1,Ie=null,Ue=!1,De="",ve="",ee={},Ne=!1,Le=null,Ge=[],Re=[],Ye=null,pt="",fl=!1,Kt="",dt={items:[],mode:"copy"},ze=[],zt=[],ul=!1,dl=!1,Gl="",Jl="",ql=!1,Yl=m("common.delete"),Gt=null,Jt=null,qt=!1,Yt="",Tt="",Nt="",pl=null,ml=!1,Ot="",Qt="";const xo=[{id:"overview",label:m("tab.overview")},{id:"notes",label:m("tab.notes")},{id:"files",label:m("tab.files")},{id:"actions",label:m("tab.actions")},{id:"worklog",label:m("tab.worklog")},{id:"activity",label:m("tab.activity")}];let _l=null;Fo(async()=>{try{if(t(0,n=await ie("GetStartupStatus")),s=!0,n.status==="first_run"){t(1,o=!0),t(56,Te=!1);return}if(n.status==="recovery"){t(2,r=!0),t(56,Te=!1);return}}catch(p){t(24,U=String(p))}try{t(23,Y=await ie("VerstakVersion")||"verstak-gui/v2"),t(4,c=await ie("ListSystemViews")||[]),t(5,d=await ie("ListWorkspaceTree")||[]),t(6,v=await ie("ListEnabledTemplates")||[])}catch(p){t(24,U=String(p)),t(4,c=[{id:"today",label:m("nav.today")},{id:"inbox",label:m("nav.inbox")},{id:"activity",label:m("nav.activity")}]),t(5,d=[]),t(6,v=[])}window.runtime&&window.runtime.EventsOn&&(window.runtime.EventsOn("files-dropped",Fr),_l=()=>window.runtime.EventsOff("files-dropped")),window.addEventListener("keydown",an),t(56,Te=!1),Ml()}),Kl(()=>{_l&&_l(),window.removeEventListener("keydown",an)});async function Ql(p){t(25,G=p),t(26,z=null),t(27,K="overview"),t(28,L=[]),x=[],t(30,re=[]),t(31,te=[]),t(41,ue=[]),t(43,_e=[]),t(44,Ce=null),t(45,Xe=!1),t(24,U=""),t(7,_=null),t(8,h=[]),k=0,b=!0,t(9,y=[]),t(10,w=null);try{p==="today"?(t(7,_=await ie("ListTodayView")||{cases:[]}),t(41,ue=await ie("GetSuggestions")||[]),t(42,we=ue.length)):p==="inbox"?t(43,_e=await ie("ListInboxNodes")||[]):p==="trash"?t(44,Ce=await ie("ListTrash")||{nodes:[],entries:[],trashPath:""}):p==="journal"?await kt():p==="activity"&&(t(8,h=await ie("ListActivityFeed",50,0)||[]),k=h.length,b=h.length===50)}catch(P){t(24,U=String(P)),t(7,_={cases:[]}),t(43,_e=[]),t(44,Ce=null),t(8,h=[])}}async function gt(p){t(26,z=p),t(27,K="overview"),t(28,L=[]),x=[],t(30,re=[]),t(31,te=[]),t(41,ue=[]),t(64,Re=[]),t(63,Ge=[]),t(62,Le=null),t(65,Ye=null),t(66,pt=""),t(70,ze=[]),zt=[],t(29,O=null),t(45,Xe=!1),t(50,Pe=!1),t(24,U=""),t(22,q=[]),await Xl(p.id)}async function Xl(p){try{t(28,L=await ie("ListNotes",p)||[])}catch{}try{x=await ie("ListFiles",p)||[]}catch{}try{t(30,re=await ie("ListActions",p)||[])}catch{}try{t(31,te=zl(await ie("ListWorklog",p)))}catch{}try{t(41,ue=await ie("GetSuggestions")||[]),t(42,we=ue.length)}catch{t(41,ue=[]),t(42,we=0)}try{t(22,q=await ie("ListActivityByNode",p,50,0)||[])}catch{}}async function nt(p){t(61,Ne=!0);try{let P=await ie("ListItems",p)||[];P.sort((se,pe)=>se.type!==pe.type?se.type==="folder"?-1:1:(se.name||"").localeCompare(pe.name||"")),t(64,Re=P)}catch{t(64,Re=[])}t(61,Ne=!1)}async function vl(p){if(!z)return;try{const se=await ie("GetNodeDetail",p);se&&t(63,Ge=[...Ge,{id:p,name:se.title}])}catch{t(63,Ge=[...Ge,{id:p,name:"..."}])}t(62,Le=p),t(60,ee={...ee,[p]:!0});const P=await ie("ListWorkspaceChildren",p)||[];Bt(d,p,P),t(5,d=[...d]),await nt(p)}function Zl(){if(Ge.length<2)t(63,Ge=[]),t(62,Le=null),nt(z.id);else{const p=Ge[Ge.length-2];t(63,Ge=Ge.slice(0,-1)),t(62,Le=p.id),nt(p.id)}}function xl(p){const P=Ge[p];t(63,Ge=Ge.slice(0,p+1)),t(62,Le=P.id),nt(P.id)}async function Xt(p){t(65,Ye=p),t(66,pt=""),t(68,Kt=""),t(67,fl=!0);try{Af(p)?t(66,pt=await ie("GetFileBase64",p.fileId)||""):Ff(p)&&t(66,pt=await ie("ReadFileText",p.fileId)||"")}catch(P){t(68,Kt=String(P))}t(67,fl=!1)}function hl(){t(65,Ye=null),t(66,pt=""),t(68,Kt="")}async function $o(){const p=prompt(m("file.namePrompt"));if(!(!p||!p.trim()))try{const P=Le||z.id;await ie("CreateEmptyFile",P,p.trim()),await nt(P),await kl(P)}catch(P){t(24,U=String(P))}}async function $l(p){try{await ie("DuplicateNode",p);const P=Le||z.id;await nt(P),await kl(P)}catch(P){t(24,U=String(P))}}function en(p){const P=Re.find(se=>se.id===p);P&&bl(P.id,P.name)}function tn(p){t(69,dt={items:[p],mode:"cut"})}function ln(p){t(69,dt={items:[p],mode:"copy"})}async function nn(){if(dt.items.length===0)return;const p=Le||z.id;try{if(dt.mode==="copy")for(const P of dt.items)await ie("DuplicateNode",P);else for(const P of dt.items)await ie("MoveNode",P,p);t(69,dt={items:[],mode:"copy"}),await nt(p)}catch(P){t(24,U=String(P))}}function sn(p){ze.includes(p)?t(70,ze=ze.filter(P=>P!==p)):t(70,ze=[...ze,p])}function on(p){t(70,ze=[p])}function er(){t(70,ze=Re.map(p=>p.id))}function rn(p){if(Re.length===0)return;const P=ze.length>0?ze[ze.length-1]:Re[0].id,se=Re.findIndex(Ct=>Ct.id===P),pe=Re.findIndex(Ct=>Ct.id===p);if(se===-1||pe===-1)return;const et=Math.min(se,pe),at=Math.max(se,pe),Al=Re.slice(et,at+1).map(Ct=>Ct.id),Nn=new Set(ze);Al.forEach(Ct=>Nn.add(Ct)),t(70,ze=[...Nn])}function tr(){t(70,ze=[])}function gl(p){return p.length>0?p:Re.map(P=>P.id)}async function lr(){const p=gl(ze),P=Re.find(pe=>pe.id===p[0]);let se;p.length===1&&(P==null?void 0:P.type)==="folder"?se=m("delete.folder"):p.length===1?se=m("delete.file"):se=m("delete.files",{count:p.length}),Dt({title:m("delete.confirmTitle"),message:m("delete.confirmMessage")+" "+se+"?",confirmText:m("common.delete"),danger:!0,onConfirm:async()=>{for(const et of p)try{await ie("DeleteFileOrFolder",et)}catch(at){t(24,U=String(at))}t(70,ze=[]);const pe=Le||z.id;await nt(pe)}})}function nr(){const p=gl(ze);t(69,dt={items:p,mode:"cut"}),t(70,ze=[])}function sr(){const p=gl(ze);t(69,dt={items:p,mode:"copy"}),t(70,ze=[])}function ir(p,P){const se=ze.includes(P)?ze:[P];zt=se,p.dataTransfer.effectAllowed="move",p.dataTransfer.setData("text/plain",se.join(","))}function or(p,P){const se=Re.find(pe=>pe.id===P);se&&se.type==="folder"&&(p.preventDefault(),p.dataTransfer.dropEffect="move")}async function rr(p,P){if(p.preventDefault(),zt.length!==0){for(const se of zt)try{await ie("MoveNode",se,P)}catch(pe){t(24,U=String(pe))}zt=[],t(70,ze=[]),await nt(Le||z.id)}}function an(p){if(K==="files"&&!(p.target.tagName==="INPUT"||p.target.tagName==="TEXTAREA"))if(p.ctrlKey||p.metaKey)p.key==="c"||p.key==="C"?(p.preventDefault(),sr()):p.key==="x"||p.key==="X"?(p.preventDefault(),nr()):p.key==="v"||p.key==="V"?(p.preventDefault(),nn()):p.key==="a"||p.key==="A"?(p.preventDefault(),er()):p.key==="o"||p.key==="O"?(p.preventDefault(),ar()):p.key==="Enter"&&(p.preventDefault(),cn());else if(p.key==="Enter")p.preventDefault(),cn();else if(p.key==="Delete"||p.key==="Backspace"){if(Ye){p.preventDefault(),hl();return}if(ze.length>0){p.preventDefault(),lr();return}if(p.key==="Backspace"&&Ge.length>0){p.preventDefault(),Zl();return}}else if(p.key==="Escape"){if(Ye){hl();return}if(ze.length>0){tr();return}}else p.key==="F2"&&(p.preventDefault(),cr())}function cn(){if(ze.length===1){const p=Re.find(P=>P.id===ze[0]);p&&(p.type==="folder"?vl(p.id):Xt(p))}}function ar(){if(ze.length===1){const p=Re.find(P=>P.id===ze[0]);p&&p.fileId&&ie("OpenFile",p.fileId)}}function bl(p,P){Yt=p,t(78,Tt=P),t(79,Nt=""),t(77,qt=!0)}function cr(){if(ze.length===1){const p=Re.find(P=>P.id===ze[0]);p&&bl(p.id,p.name)}}async function fn(){const p=Tt.trim();if(!p){t(79,Nt=m("rename.emptyError"));return}try{await ie("ValidateName",p)}catch{t(79,Nt=m("rename.invalidError"));return}t(77,qt=!1);const P=Yt;Yt="";try{await ie("RenameNode",P,p),z&&z.id===P&&t(26,z={...z,title:p}),await Vt(),Le&&await nt(Le)}catch(se){t(24,U=String(se))}}function fr(){t(77,qt=!1),Yt="",t(78,Tt=""),t(79,Nt="")}function ur(p){p.key==="Enter"?fn():t(79,Nt="")}function Dt(p){t(73,Gl=p.title||m("common.confirm")),t(74,Jl=p.message||""),t(75,ql=p.danger!==void 0?p.danger:!0),t(76,Yl=p.confirmText||m("common.delete")),Gt=p.onConfirm||null,Jt=p.onCancel||null,t(72,dl=!0)}function un(){t(72,dl=!1),Gt=null,Jt=null}function dr(){Gt&&Gt(),un()}function pr(){Jt&&Jt(),un()}function dn(p){t(47,lt=Ae.node),t(48,Ve=p),t(46,Ke=""),t(45,Xe=!0),Mt()}function mr(){t(47,lt=null),t(48,Ve=void 0),t(46,Ke=""),t(45,Xe=!0)}function _r(){t(45,Xe=!1),t(46,Ke=""),t(47,lt=null),t(48,Ve=void 0)}async function pn(){if(!(!Ke.trim()||Ve===void 0))try{const p=lt?lt.id:"",P=Ve?Ve.id:"",se=await ie("CreateNodeFromTemplate",p,Ke.trim(),P);t(45,Xe=!1),t(46,Ke="");const pe=se?se.id:null;if(t(47,lt=null),t(48,Ve=void 0),p){t(60,ee={...ee,[p]:!0});const et=await ie("ListWorkspaceChildren",p)||[];Bt(d,p,et),t(5,d=[...d])}else t(5,d=await ie("ListWorkspaceTree")||d);if(pe){const et=await ie("GetNodeDetail",pe);et&&(t(25,G=""),gt(et))}}catch(p){t(24,U=String(p))}}function vr(p,P){t(49,Ae={visible:!0,x:p.clientX,y:p.clientY,node:P})}function Mt(){t(49,Ae={visible:!1,x:0,y:0,node:null})}async function hr(p){const P=!ee[p];if(t(60,ee={...ee,[p]:P}),!P)return;const se=await ie("ListWorkspaceChildren",p)||[];Bt(d,p,se),t(5,d=[...d])}async function gr(p,P){if(!(!p||!P||p===P))try{const se=await ie("MoveNode",p,P);await Vt();const pe=await ie("GetNodeDetail",p);pe&&(t(25,G=""),gt(pe))}catch(se){t(24,U=String(se))}}async function br(p){p.preventDefault();try{const P=p.dataTransfer.getData("text/plain");if(!P)return;const se=await ie("GetNodeDetail",P);if(!se||!se.parent_id)return;await ie("MoveNode",P,""),await Vt();const pe=await ie("GetNodeDetail",P);pe&&(t(25,G=""),gt(pe))}catch(P){t(24,U=String(P))}}function kr(p){p.preventDefault(),p.dataTransfer.dropEffect="move",t(71,ul=!0)}function yr(p){t(71,ul=!1)}function mn(p){bl(p.id,p.title),Mt()}function _n(p){Mt(),Dt({title:m("delete.confirmTitle"),message:m("delete.confirmMessage")+" "+p.title+"?",confirmText:m("common.delete"),danger:!0,onConfirm:async()=>{try{await ie("DeleteNode",p.id),await Vt(),z&&z.id===p.id&&t(26,z=null)}catch(P){t(24,U=String(P))}}})}async function bt(p){Mt();const P=typeof p=="string"?p:p.id;try{await ie("OpenFolder",P)}catch(se){t(24,U=String(se))}}async function vn(p){Mt();try{await ie("MoveNode",p.id,""),await Vt();const P=await ie("GetNodeDetail",p.id);P&&(t(25,G=""),gt(P))}catch(P){t(24,U=String(P))}}async function Vt(){const p=Object.keys(ee).filter(se=>ee[se]),P=await ie("ListWorkspaceTree")||[];for(const se of p){const et=(await ie("ListWorkspaceChildren",se)||[]).map(at=>({...at}));Zo(P,se,et)}t(5,d=P)}async function kl(p){const P=await ie("ListWorkspaceChildren",p)||[];Bt(d,p,P),t(5,d=[...d])}function hn(){t(50,Pe=!0),t(51,ge="")}function wr(){t(50,Pe=!1),t(51,ge="")}async function gn(){if(!(!ge.trim()||!z))try{const p=await ie("CreateNote",z.id,ge.trim());t(28,L=[...L,p&&p.id?p:{id:Date.now().toString(),title:ge.trim(),createdAt:new Date().toISOString()}]),t(50,Pe=!1),t(51,ge="")}catch{const P={id:Date.now().toString(),title:ge.trim(),createdAt:new Date().toISOString()};t(28,L=[...L,P]),t(50,Pe=!1),t(51,ge="")}}async function It(p){if(O&&O.dirty){Dt({title:m("note.unsavedTitle"),message:m("note.unsavedMessage"),confirmText:m("note.unsavedClose"),danger:!1,onConfirm:async()=>{await bn(p)}});return}await bn(p)}async function bn(p){try{const P=await ie("ReadNote",p.id);t(29,O={id:p.id,title:p.title,content:P||"",dirty:!1})}catch{t(29,O={id:p.id,title:p.title,content:"# "+p.title+` + +`,dirty:!1})}}function Cr(){if(O&&O.dirty){Dt({title:m("note.unsavedTitle"),message:m("note.unsavedMessage"),confirmText:m("note.unsavedClose"),danger:!1,onConfirm:()=>{t(29,O=null)}});return}t(29,O=null)}function Sr(p){O&&(t(29,O.content=p.target.value,O),t(29,O.dirty=!0,O))}async function jr(){if(O)try{await ie("SaveNote",O.id,O.content),t(29,O.dirty=!1,O)}catch{t(29,O.dirty=!1,O)}}function Zt(p=null){t(39,X=p),t(40,Z=null),t(33,le=p?p.summary:""),t(34,oe=p?String(p.minutes||""):""),t(35,fe=p&&p.date||""),t(36,ye=p&&p.details||""),t(37,Be=p?!!p.billable:!1),t(38,Me=p?!!p.approximate:!1),t(32,ne=!0)}function Er(){t(32,ne=!1),t(39,X=null),t(40,Z=null)}async function yl(p=""){const P=p||(z?z.id:"");z&&z.id===P&&t(31,te=zl(await ie("ListWorklog",z.id))||te),G==="journal"&&await kt()}async function Tr(){const p=parseInt(oe,10);if(!(!le.trim()||isNaN(p)||p<=0)&&!(!Z&&!X&&!z)){try{if(Z){const P=JSON.stringify(Rl(Z));await ie("AcceptSuggestionFull",Z.nodeId,le.trim(),ye,fe,p,Me,Be,P),await Cl()}else X?(await ie("UpdateWorklogEntry",X.id,le.trim(),ye,fe,p,Me,Be),await yl(X.nodeId)):(await ie("CreateWorklogFull",z.id,le.trim(),ye,fe,p,Me,Be),await yl(z.id))}catch(P){t(24,U=String(P));return}t(32,ne=!1),t(39,X=null),t(40,Z=null)}}function wl(p){Dt({title:m("worklog.deleteEntry"),message:m("worklog.deleteConfirm"),confirmText:m("common.delete"),danger:!0,onConfirm:async()=>{try{await ie("DeleteWorklogEntry",p.id),await yl(p.nodeId)}catch(P){t(24,U=String(P))}}})}async function Cl(){t(41,ue=await ie("GetSuggestions")||[]),t(42,we=ue.length),z&&t(31,te=zl(await ie("ListWorklog",z.id))),G==="journal"&&await kt()}function xt(p){t(40,Z=p),t(39,X=null),t(33,le=p.summary||""),t(34,oe=String(p.suggestedMin||"")),t(35,fe=""),t(36,ye=""),t(37,Be=!1),t(38,Me=!0),t(32,ne=!0)}async function Sl(p){try{const P=Rl(p),se=JSON.stringify(P);ll("acceptTodaySuggestion: nodeId="+p.nodeId+" eventIds="+se+" events="+JSON.stringify((p.events||[]).map(pe=>({id:pe.id,type:pe.eventType,title:pe.title})))),await ie("AcceptSuggestionWith",p.nodeId,p.summary,p.suggestedMin,"",se),await Cl()}catch(P){ll("acceptTodaySuggestion error: "+P)}}async function kn(p){try{const P=Rl(p),se=JSON.stringify(P);ll("acceptJournalSuggestion: nodeId="+p.nodeId+" eventIds="+se+" events="+JSON.stringify((p.events||[]).map(pe=>({id:pe.id,type:pe.eventType,title:pe.title})))),await ie("AcceptSuggestionWith",p.nodeId,p.summary,p.suggestedMin,"",se),await Cl()}catch(P){ll("acceptJournalSuggestion error: "+P)}}async function kt(){try{const[p,P,se]=await Promise.all([ie("ListWorklogReport",j,E,N,T,D,A),ie("WorklogReportSummary",j,E,N,T,D,A),ie("GetSuggestions")]);if(t(9,y=(p||[]).map(pe=>(pe._expanded===void 0&&(pe._expanded=!1),pe))),t(10,w=P||null),t(41,ue=se||[]),t(42,we=ue.length),N&&!M)if(p&&p.length>0&&p[0].nodePath)t(17,M=p[0].nodePath);else try{t(17,M=await ie("GetNodeTitle",N))}catch{t(17,M="")}}catch{t(9,y=[]),t(10,w=null),t(41,ue=[]),t(42,we=0)}}async function $t(p){try{const P=await ie("SaveWorklogReport",p,j,E,N,T,D,A);t(18,R=P),setTimeout(()=>t(18,R=""),4e3)}catch(P){if(String(P).includes("отменено"))return;t(18,R="Ошибка: "+String(P)),setTimeout(()=>t(18,R=""),6e3)}}let yn;async function jl(p){if(p._expanded=!p._expanded,t(9,y),p._expanded&&!p._events&&p._hasEvents===void 0)try{p._events=await ie("GetWorklogEntryEvents",p.id)||[],p._hasEvents=p._events.length>0,t(9,y)}catch{p._events=[],p._hasEvents=!1,t(9,y)}}async function El(p){if(p._expanded=!p._expanded,p._expanded&&p.source==="suggestion"&&!p._events&&p._hasEvents===void 0)try{p._events=await ie("GetWorklogEntryEvents",p.id)||[],p._hasEvents=p._events.length>0}catch(P){P._events=[],P._hasEvents=!1}t(31,te)}async function Nr(){const p=V.trim();if(!p||p.length<2){t(20,W=[]),t(21,J=!1);return}try{t(20,W=await ie("SearchNodes",p)||[]),t(21,J=W.length>0)}catch{t(20,W=[]),t(21,J=!1)}}function Dr(){clearTimeout(yn),yn=setTimeout(Nr,200)}function wn(p){t(14,N=p.id),t(17,M=p.path||p.title),t(13,T=!0),t(19,V=""),t(20,W=[]),t(21,J=!1),kt()}function Cn(){t(14,N=""),t(13,T=!1),t(17,M=""),t(19,V=""),t(20,W=[]),t(21,J=!1),kt()}function Mr(){t(11,j=""),t(12,E=""),t(14,N=""),t(13,T=!1),t(15,D="all"),t(16,A="all"),t(17,M=""),t(19,V=""),t(20,W=[]),t(21,J=!1),kt()}async function Sn(){const p=await ie("PickFile");if(!p)return;const P=Le||z.id;await Tl(P,p)}async function Ir(){const p=await ie("PickDirectory");if(!p)return;const P=Le||z.id;await Tl(P,p)}async function Tl(p,P){t(57,Se=!0);try{const se=await ie("PreviewImport",P);t(58,Ie=se),De=P,ve=p,t(59,Ue=!0)}catch(se){t(24,U=String(se))}t(57,Se=!1)}async function Nl(p){try{const P=ve||z.id,se=p==="copy"?await ie("AddPathCopy",P,De):await ie("AddPathLink",P,De);t(59,Ue=!1),t(58,Ie=null),t(63,Ge=[]),t(62,Le=null),await Promise.all([Xl(P),nt(P),kl(P)])}catch(P){t(24,U=String(P))}}function Ar(){t(59,Ue=!1),t(58,Ie=null)}async function jn({id:p,type:P}){const se=m(P==="folder"?"delete.folder":"delete.file");Dt({title:m("delete.confirmTitle"),message:m("delete.confirmMessage")+" "+se+"?",confirmText:m("common.delete"),danger:!0,onConfirm:async()=>{try{await ie("DeleteFileOrFolder",p),x=x.filter(et=>et.nodeId!==p);const pe=Le||z.id;await nt(pe)}catch(pe){t(24,U=String(pe))}}})}async function Fr(p){if(!p||p.length===0)return;if(!z){t(24,U=m("error.selectCaseFirst"));return}const P=p[0];await Tl(z.id,P)}function Pr(p){return{note_created:m("event.noteCreated"),note_updated:m("event.noteUpdated"),note_deleted:"Заметка удалена",file_added:m("event.fileAdded"),file_deleted:m("event.fileDeleted"),file_renamed:m("event.fileRenamed"),file_copied:m("event.fileCopied"),file_moved:m("event.fileMoved"),folder_added:m("event.folderAdded"),folder_deleted:m("event.folderDeleted"),folder_renamed:m("event.folderRenamed"),folder_moved:"Папка перемещена",node_created:m("event.caseCreated"),node_updated:m("event.caseUpdated"),node_deleted:"Узел удалён",action_created:"Действие создано",action_done:"Действие выполнено",worklog_added:"Запись времени добавлена"}[p]||p}function Lr(p){return{project:m("kind.project"),client:m("kind.client"),document:m("kind.document"),recipe:m("kind.recipe"),folder:m("kind.folder"),note:m("kind.note"),file:m("kind.file"),archive:m("kind.archive"),case:m("kind.case")}[p]||p||m("kind.case")}function Rr(){t(52,He=!0),t(53,Ee=""),t(54,Oe="open_url"),t(55,ke="")}function zr(){t(52,He=!1),t(53,Ee=""),t(55,ke="")}async function Dl(){if(!(!Ee.trim()||!ke.trim()||!z))try{const p=await ie("CreateAction",z.id,Oe,Ee.trim(),ke.trim());p&&p.id&&t(30,re=[...re,p]),t(52,He=!1),t(53,Ee=""),t(55,ke="")}catch(p){t(24,U=String(p))}}async function En(p){try{await ie("DeleteAction",p),t(30,re=re.filter(P=>P.id!==p))}catch(P){t(24,U=String(P))}}function Or(p){const P=je.find(se=>se.id===p);return P?P.label:p}async function ut(p){try{const P=await ie("GetNodeDetail",p);P&>(P)}catch(P){t(24,U=String(P))}}async function yt(p){const P=J1(p),se=P.nodeId;if(se)try{const pe=await ie("GetNodeDetail",se);if(!pe)return;if(gt(pe),P.tab==="notes"){if(t(27,K="notes"),P.targetId){try{t(28,L=await ie("ListNotes",se)||[])}catch{}const et=L.find(at=>at.id===P.targetId);et&&setTimeout(()=>It(et),100)}}else if(P.tab==="files")if(t(27,K="files"),P.targetId)try{const et=await ie("GetNodeDetail",P.targetId);if(et&&et.parent_id){await nt(et.parent_id);const at=Re.find(Al=>Al.id===P.targetId);at&&at.type==="file"&&If(at)&&setTimeout(()=>Xt(at),150)}else await nt(se)}catch{await nt(se)}else await nt(se)}catch(pe){t(24,U=String(pe))}}async function wt(p){return yt(p)}async function Ml(){try{t(80,pl=await ie("SyncStatus"))}catch{t(80,pl={configured:!1,serverUrl:"",deviceId:"",unpushedOps:0,lastSyncAt:"",syncInterval:0})}}let Tn="general";function Il(p){t(84,Tn=p||"general"),t(3,f=!0)}function Vr(){t(3,f=!1)}function Wr(p){const P=Array.isArray(p==null?void 0:p.conflicts)?p.conflicts:[],se=Array.isArray(p==null?void 0:p.applyErrors)?p.applyErrors:[],pe=[];return P.length>0&&pe.push(m("sync.conflictsCount",{count:P.length})),se.length>0&&pe.push(m("sync.applyErrorsCount",{count:se.length})),pe.join(" · ")}async function Br(){t(81,ml=!0),t(82,Ot=""),t(83,Qt="");try{const p=await ie("SyncNow");await Ml(),t(82,Ot=Wr(p)),t(83,Qt=Ot?"warning":"")}catch(p){console.error("sync error:",p),t(82,Ot=`${m("sync.status.error")}: ${(p==null?void 0:p.message)||p}`),t(83,Qt="warning")}finally{t(81,ml=!1)}}function Hr(p){t(1,o=!1),t(0,n=p),t(56,Te=!1),window.location.reload()}function Ur(p){t(2,r=!1),t(0,n=p),t(56,Te=!1),window.location.reload()}const Kr=p=>p.nodeId===z.id,Gr=p=>Ql(p.id),Jr=()=>Il("sync"),qr=()=>Il(),Yr=()=>t(24,U=""),Qr=()=>t(24,U=""),Xr=()=>t(24,U="");function Zr(){O.content=this.value,t(29,O)}const xr=p=>{t(27,K=p.id),p.id==="files"&&z&&Re.length===0&&!Le&&nt(z.id)},$r=()=>{t(27,K="notes"),hn()},ea=()=>{t(27,K="files"),Sn()},ta=()=>t(27,K="worklog"),la=p=>It(p),na=p=>It(p);function sa(){ge=this.value,t(51,ge)}const ia=p=>p.key==="Enter"&&gn(),oa=p=>It(p),ra=p=>It(p),aa=p=>{const P=p.detail;P===0?(t(63,Ge=[]),t(62,Le=null),nt(z.id)):xl(P-1)},ca=p=>vl(p.detail),fa=p=>Xt(p.detail),ua=p=>ie("OpenFile",p.detail),da=p=>ie("OpenFolder",p.detail),pa=p=>jn(p.detail),ma=p=>en(p.detail.id),_a=p=>$l(p.detail),va=p=>tn(p.detail),ha=p=>ln(p.detail),ga=p=>on(p.detail),ba=p=>sn(p.detail),ka=p=>rn(p.detail),ya=p=>ie("OpenFile",p.detail),wa=p=>ie("RunAction",p.id),Ca=p=>En(p.id),Sa=()=>Zt(),ja=p=>p.nodeId===z.id,Ea=p=>xt(p),Ta=p=>Sl(p),Na=(p,P,se)=>t(41,P[se]._expanded=!p._expanded,ue,t(26,z)),Da=(p,P,se,pe)=>pe.key==="Enter"&&t(41,P[se]._expanded=!p._expanded,ue,t(26,z)),Ma=p=>yt(p),Ia=p=>bt(p.nodeId),Aa=p=>Zt(p),Fa=p=>wl(p),Pa=p=>yt(p),La=p=>bt(p.nodeId),Ra=p=>El(p),za=(p,P)=>P.key==="Enter"&&El(p),Oa=p=>wt(p),Va=(p,P)=>P.key==="Enter"&&wt(p),Wa=p=>ut(p.id),Ba=p=>bt(p),Ha=p=>ut(p.id),Ua=(p,P)=>P.key==="Enter"&&ut(p.id),Ka=()=>ie("OpenTrashFolder");function Ga(){j=this.value,t(11,j)}function Ja(){E=this.value,t(12,E)}const qa=()=>{t(19,V=""),t(17,M=""),Cn()};function Ya(){V=this.value,t(19,V)}const Qa=()=>setTimeout(()=>t(21,J=!1),200),Xa=p=>wn(p);function Za(){T=this.checked,t(13,T)}function xa(){D=nl(this),t(15,D)}function $a(){A=nl(this),t(16,A)}const ec=()=>$t("csv"),tc=()=>$t("markdown"),lc=()=>$t("pdf"),nc=p=>ut(p.nodeId),sc=(p,P,se,pe)=>t(41,P[se].suggestedMin=parseInt(pe.target.value),ue),ic=p=>xt(p),oc=p=>kn(p),rc=(p,P,se)=>t(41,P[se]._expanded=!p._expanded,ue),ac=(p,P,se,pe)=>pe.key==="Enter"&&t(41,P[se]._expanded=!p._expanded,ue),cc=p=>yt(p),fc=p=>bt(p.nodeId),uc=p=>ut(p.nodeId),dc=p=>jl(p),pc=(p,P)=>P.key==="Enter"&&jl(p),mc=p=>Zt(p),_c=p=>wl(p),vc=p=>yt(p),hc=p=>ut(p.nodeId),gc=(p,P,se,pe)=>t(41,P[se].suggestedMin=parseInt(pe.target.value),ue),bc=p=>xt(p),kc=p=>Sl(p),yc=(p,P,se)=>t(41,P[se]._expanded=!p._expanded,ue),wc=(p,P,se,pe)=>pe.key==="Enter"&&t(41,P[se]._expanded=!p._expanded,ue),Cc=p=>yt(p),Sc=p=>bt(p.nodeId),jc=p=>ut(p.nodeId),Ec=(p,P)=>P.key==="Enter"&&ut(p.nodeId),Tc=p=>ut(p.nodeId),Nc=(p,P)=>P.key==="Enter"&&ut(p.nodeId),Dc=p=>wt(p),Mc=(p,P)=>P.key==="Enter"&&wt(p),Ic=p=>wt(p),Ac=(p,P)=>P.key==="Enter"&&wt(p),Fc=()=>t(48,Ve=null),Pc=p=>t(48,Ve=p);function Lc(){Ke=this.value,t(46,Ke)}const Rc=p=>p.key==="Enter"&&pn(),zc=p=>dn(p),Oc=()=>vn(Ae.node),Vc=()=>mn(Ae.node),Wc=()=>_n(Ae.node),Bc=()=>bt(Ae.node);function Hc(){fe=this.value,t(35,fe)}function Uc(){le=this.value,t(33,le)}function Kc(){oe=rl(this.value),t(34,oe)}function Gc(){ye=this.value,t(36,ye)}function Jc(){Be=this.checked,t(37,Be)}function qc(){Me=this.checked,t(38,Me)}function Yc(){Ee=this.value,t(53,Ee)}const Qc=p=>p.key==="Enter"&&Dl();function Xc(){Oe=nl(this),t(54,Oe),t(86,je)}function Zc(){ke=this.value,t(55,ke)}const xc=p=>p.key==="Enter"&&Dl(),$c=()=>Nl("copy"),ef=()=>Nl("link");function tf(){Tt=this.value,t(78,Tt)}return[n,o,r,f,c,d,v,_,h,y,w,j,E,T,N,D,A,M,R,V,W,J,q,Y,U,G,z,K,L,O,re,te,ne,le,oe,fe,ye,Be,Me,X,Z,ue,we,_e,Ce,Xe,Ke,lt,Ve,Ae,Pe,ge,He,Ee,Oe,ke,Te,Se,Ie,Ue,ee,Ne,Le,Ge,Re,Ye,pt,fl,Kt,dt,ze,ul,dl,Gl,Jl,ql,Yl,qt,Tt,Nt,pl,ml,Ot,Qt,Tn,H,je,xo,Ql,gt,nt,vl,Zl,xl,Xt,hl,$o,$l,en,tn,ln,nn,sn,on,rn,ir,or,rr,fn,fr,ur,dr,pr,dn,mr,_r,pn,vr,Mt,hr,gr,br,kr,yr,mn,_n,bt,vn,hn,wr,gn,It,Cr,Sr,jr,Zt,Er,Tr,wl,xt,Sl,kn,kt,$t,jl,El,Dr,wn,Cn,Mr,Sn,Ir,Nl,Ar,jn,Pr,Lr,Rr,zr,Dl,En,Or,ut,yt,wt,Ml,Il,Vr,Br,Hr,Ur,Kr,Gr,Jr,qr,Yr,Qr,Xr,Zr,xr,$r,ea,ta,la,na,sa,ia,oa,ra,aa,ca,fa,ua,da,pa,ma,_a,va,ha,ga,ba,ka,ya,wa,Ca,Sa,ja,Ea,Ta,Na,Da,Ma,Ia,Aa,Fa,Pa,La,Ra,za,Oa,Va,Wa,Ba,Ha,Ua,Ka,Ga,Ja,qa,Ya,Qa,Xa,Za,xa,$a,ec,tc,lc,nc,sc,ic,oc,rc,ac,cc,fc,uc,dc,pc,mc,_c,vc,hc,gc,bc,kc,yc,wc,Cc,Sc,jc,Ec,Tc,Nc,Dc,Mc,Ic,Ac,Fc,Pc,Lc,Rc,zc,Oc,Vc,Wc,Bc,Hc,Uc,Kc,Gc,Jc,qc,Yc,Qc,Xc,Zc,xc,$c,ef,tf]}class Y1 extends $e{constructor(e){super(),xe(this,e,q1,G1,Ze,{},null,[-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1])}}new Y1({target:document.getElementById("app")}); diff --git a/cmd/verstak-gui/frontend-dist/assets/main-Wpp0QvRu.js b/cmd/verstak-gui/frontend-dist/assets/main-Wpp0QvRu.js deleted file mode 100644 index c1357a4..0000000 --- a/cmd/verstak-gui/frontend-dist/assets/main-Wpp0QvRu.js +++ /dev/null @@ -1,3 +0,0 @@ -var Qa=Object.defineProperty;var Xa=(l,e,t)=>e in l?Qa(l,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):l[e]=t;var Il=(l,e,t)=>Xa(l,typeof e!="symbol"?e+"":e,t);(function(){const e=document.createElement("link").relList;if(e&&e.supports&&e.supports("modulepreload"))return;for(const o of document.querySelectorAll('link[rel="modulepreload"]'))n(o);new MutationObserver(o=>{for(const i of o)if(i.type==="childList")for(const r of i.addedNodes)r.tagName==="LINK"&&r.rel==="modulepreload"&&n(r)}).observe(document,{childList:!0,subtree:!0});function t(o){const i={};return o.integrity&&(i.integrity=o.integrity),o.referrerPolicy&&(i.referrerPolicy=o.referrerPolicy),o.crossOrigin==="use-credentials"?i.credentials="include":o.crossOrigin==="anonymous"?i.credentials="omit":i.credentials="same-origin",i}function n(o){if(o.ep)return;o.ep=!0;const i=t(o);fetch(o.href,i)}})();function $(){}function ji(l){return l()}function Tn(){return Object.create(null)}function he(l){l.forEach(ji)}function ht(l){return typeof l=="function"}function Ze(l,e){return l!=l?e==e:l!==e||l&&typeof l=="object"||typeof l=="function"}let el;function sl(l,e){return l===e?!0:(el||(el=document.createElement("a")),el.href=e,l===el.href)}function Za(l){return Object.keys(l).length===0}function Nn(l){return l??""}const Wl=typeof window<"u"?window:typeof globalThis<"u"?globalThis:global;function c(l,e){l.appendChild(e)}function C(l,e,t){l.insertBefore(e,t||null)}function w(l){l.parentNode&&l.parentNode.removeChild(l)}function Re(l,e){for(let t=0;tl.removeEventListener(e,t,n)}function Bl(l){return function(e){return e.preventDefault(),l.call(this,e)}}function Oe(l){return function(e){return e.stopPropagation(),l.call(this,e)}}function pt(l){return function(e){e.target===this&&l.call(this,e)}}function s(l,e,t){t==null?l.removeAttribute(e):l.getAttribute(e)!==t&&l.setAttribute(e,t)}function cl(l){return l===""?null:+l}function xa(l){return Array.from(l.childNodes)}function U(l,e){e=""+e,l.data!==e&&(l.data=e)}function ye(l,e){l.value=e??""}function rt(l,e,t,n){t==null?l.style.removeProperty(e):l.style.setProperty(e,t,"")}function mt(l,e,t){for(let n=0;n{const o=l.$$.callbacks[e];if(o){const i=$a(e,t,{cancelable:n});return o.slice().forEach(r=>{r.call(l,i)}),!i.defaultPrevented}return!0}}function Ti(l,e){const t=l.$$.callbacks[e.type];t&&t.slice().forEach(n=>n.call(this,e))}const Ft=[],Dn=[];let Pt=[];const Mn=[],eu=Promise.resolve();let Rl=!1;function tu(){Rl||(Rl=!0,eu.then(Ni))}function St(l){Pt.push(l)}const Al=new Set;let It=0;function Ni(){if(It!==0)return;const l=Ut;do{try{for(;Itl.indexOf(n)===-1?e.push(n):t.push(n)),t.forEach(n=>n()),Pt=e}const ol=new Set;let Ct;function ot(){Ct={r:0,c:[],p:Ct}}function st(){Ct.r||he(Ct.c),Ct=Ct.p}function re(l,e){l&&l.i&&(ol.delete(l),l.i(e))}function pe(l,e,t,n){if(l&&l.o){if(ol.has(l))return;ol.add(l),Ct.c.push(()=>{ol.delete(l),n&&(t&&l.d(1),n())}),l.o(e)}else n&&n()}function fe(l){return(l==null?void 0:l.length)!==void 0?l:Array.from(l)}function Di(l,e){pe(l,1,1,()=>{e.delete(l.key)})}function Mi(l,e,t,n,o,i,r,u,a,d,h,_){let v=l.length,y=i.length,b=v;const k={};for(;b--;)k[l[b].key]=b;const z=[],S=new Map,j=new Map,N=[];for(b=y;b--;){const D=_(o,i,b),L=t(D);let O=r.get(L);O?N.push(()=>O.p(D,e)):(O=d(L,D),O.c()),S.set(L,z[b]=O),L in k&&j.set(L,Math.abs(b-k[L]))}const T=new Set,E=new Set;function I(D){re(D,1),D.m(u,h),r.set(D.key,D),h=D.first,y--}for(;v&&y;){const D=z[y-1],L=l[v-1],O=D.key,W=L.key;D===L?(h=D.first,v--,y--):S.has(W)?!r.has(O)||T.has(O)?I(D):E.has(W)?v--:j.get(O)>j.get(W)?(E.add(O),I(D)):(T.add(W),v--):(a(L,r),v--)}for(;v--;){const D=l[v];S.has(D.key)||a(D,r)}for(;y;)I(z[y-1]);return he(N),z}function Ye(l){l&&l.c()}function Ge(l,e,t){const{fragment:n,after_update:o}=l.$$;n&&n.m(e,t),St(()=>{const i=l.$$.on_mount.map(ji).filter(ht);l.$$.on_destroy?l.$$.on_destroy.push(...i):he(i),l.$$.on_mount=[]}),o.forEach(St)}function Je(l,e){const t=l.$$;t.fragment!==null&&(nu(t.after_update),he(t.on_destroy),t.fragment&&t.fragment.d(e),t.on_destroy=t.fragment=null,t.ctx=[])}function ou(l,e){l.$$.dirty[0]===-1&&(Ft.push(l),tu(),l.$$.dirty.fill(0)),l.$$.dirty[e/31|0]|=1<{const b=y.length?y[0]:v;return d.ctx&&o(d.ctx[_],d.ctx[_]=b)&&(!d.skip_bound&&d.bound[_]&&d.bound[_](b),h&&ou(l,_)),v}):[],d.update(),h=!0,he(d.before_update),d.fragment=n?n(d.ctx):!1,e.target){if(e.hydrate){const _=xa(e.target);d.fragment&&d.fragment.l(_),_.forEach(w)}else d.fragment&&d.fragment.c();e.intro&&re(l.$$.fragment),Ge(l,e.target,e.anchor),Ni()}Ht(a)}class $e{constructor(){Il(this,"$$");Il(this,"$$set")}$destroy(){Je(this,1),this.$destroy=$}$on(e,t){if(!ht(t))return $;const n=this.$$.callbacks[e]||(this.$$.callbacks[e]=[]);return n.push(t),()=>{const o=n.indexOf(t);o!==-1&&n.splice(o,1)}}$set(e){this.$$set&&!Za(e)&&(this.$$.skip_bound=!0,this.$$set(e),this.$$.skip_bound=!1)}}const su="4";typeof window<"u"&&(window.__svelte||(window.__svelte={v:new Set})).v.add(su);function iu(l){let e,t;return{c(){e=Q("path"),t=Q("polyline"),s(e,"d","M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"),s(t,"points","14 2 14 8 20 8")},m(n,o){C(n,e,o),C(n,t,o)},d(n){n&&(w(e),w(t))}}}function cu(l){let e,t,n,o,i;return{c(){e=Q("path"),t=Q("polyline"),n=Q("line"),o=Q("line"),i=Q("polyline"),s(e,"d","M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"),s(t,"points","14 2 14 8 20 8"),s(n,"x1","16"),s(n,"y1","13"),s(n,"x2","8"),s(n,"y2","13"),s(o,"x1","16"),s(o,"y1","17"),s(o,"x2","8"),s(o,"y2","17"),s(i,"points","10 9 9 9 8 9")},m(r,u){C(r,e,u),C(r,t,u),C(r,n,u),C(r,o,u),C(r,i,u)},d(r){r&&(w(e),w(t),w(n),w(o),w(i))}}}function ru(l){let e,t;return{c(){e=Q("polyline"),t=Q("polyline"),s(e,"points","16 18 22 12 16 6"),s(t,"points","8 6 2 12 8 18")},m(n,o){C(n,e,o),C(n,t,o)},d(n){n&&(w(e),w(t))}}}function au(l){let e,t,n,o;return{c(){e=Q("path"),t=Q("polyline"),n=Q("line"),o=Q("rect"),s(e,"d","M21 8v13a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8"),s(t,"points","7 3 12 8 17 3"),s(n,"x1","3"),s(n,"y1","8"),s(n,"x2","21"),s(n,"y2","8"),s(o,"x","10"),s(o,"y","12"),s(o,"width","4"),s(o,"height","4"),s(o,"rx","1")},m(i,r){C(i,e,r),C(i,t,r),C(i,n,r),C(i,o,r)},d(i){i&&(w(e),w(t),w(n),w(o))}}}function uu(l){let e,t,n,o,i;return{c(){e=Q("path"),t=Q("polyline"),n=Q("line"),o=Q("line"),i=Q("line"),s(e,"d","M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"),s(t,"points","14 2 14 8 20 8"),s(n,"x1","9"),s(n,"y1","12"),s(n,"x2","15"),s(n,"y2","12"),s(o,"x1","9"),s(o,"y1","15"),s(o,"x2","13"),s(o,"y2","15"),s(i,"x1","12"),s(i,"y1","15"),s(i,"x2","12"),s(i,"y2","18")},m(r,u){C(r,e,u),C(r,t,u),C(r,n,u),C(r,o,u),C(r,i,u)},d(r){r&&(w(e),w(t),w(n),w(o),w(i))}}}function fu(l){let e,t,n,o,i,r;return{c(){e=Q("path"),t=Q("polyline"),n=Q("line"),o=Q("line"),i=Q("line"),r=Q("line"),s(e,"d","M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"),s(t,"points","14 2 14 8 20 8"),s(n,"x1","8"),s(n,"y1","12"),s(n,"x2","16"),s(n,"y2","12"),s(o,"x1","8"),s(o,"y1","16"),s(o,"x2","16"),s(o,"y2","16"),s(i,"x1","8"),s(i,"y1","14"),s(i,"x2","12"),s(i,"y2","14"),s(r,"x1","12"),s(r,"y1","12"),s(r,"x2","12"),s(r,"y2","18")},m(u,a){C(u,e,a),C(u,t,a),C(u,n,a),C(u,o,a),C(u,i,a),C(u,r,a)},d(u){u&&(w(e),w(t),w(n),w(o),w(i),w(r))}}}function du(l){let e,t,n,o;return{c(){e=Q("path"),t=Q("polyline"),n=Q("line"),o=Q("line"),s(e,"d","M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"),s(t,"points","14 2 14 8 20 8"),s(n,"x1","16"),s(n,"y1","13"),s(n,"x2","8"),s(n,"y2","13"),s(o,"x1","16"),s(o,"y1","17"),s(o,"x2","8"),s(o,"y2","17")},m(i,r){C(i,e,r),C(i,t,r),C(i,n,r),C(i,o,r)},d(i){i&&(w(e),w(t),w(n),w(o))}}}function pu(l){let e,t,n,o,i;return{c(){e=Q("path"),t=Q("polyline"),n=Q("line"),o=Q("line"),i=Q("line"),s(e,"d","M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"),s(t,"points","14 2 14 8 20 8"),s(n,"x1","8"),s(n,"y1","12"),s(n,"x2","16"),s(n,"y2","12"),s(o,"x1","8"),s(o,"y1","16"),s(o,"x2","16"),s(o,"y2","16"),s(i,"x1","8"),s(i,"y1","14"),s(i,"x2","12"),s(i,"y2","14")},m(r,u){C(r,e,u),C(r,t,u),C(r,n,u),C(r,o,u),C(r,i,u)},d(r){r&&(w(e),w(t),w(n),w(o),w(i))}}}function mu(l){let e,t,n;return{c(){e=Q("path"),t=Q("circle"),n=Q("circle"),s(e,"d","M9 18V5l12-2v13"),s(t,"cx","6"),s(t,"cy","18"),s(t,"r","3"),s(n,"cx","18"),s(n,"cy","16"),s(n,"r","3")},m(o,i){C(o,e,i),C(o,t,i),C(o,n,i)},d(o){o&&(w(e),w(t),w(n))}}}function hu(l){let e,t;return{c(){e=Q("rect"),t=Q("polyline"),s(e,"x","2"),s(e,"y","4"),s(e,"width","20"),s(e,"height","16"),s(e,"rx","2"),s(t,"points","10 9 16 12 10 15 10 9")},m(n,o){C(n,e,o),C(n,t,o)},d(n){n&&(w(e),w(t))}}}function _u(l){let e,t,n;return{c(){e=Q("rect"),t=Q("circle"),n=Q("polyline"),s(e,"x","3"),s(e,"y","3"),s(e,"width","18"),s(e,"height","18"),s(e,"rx","2"),s(e,"ry","2"),s(t,"cx","8.5"),s(t,"cy","8.5"),s(t,"r","1.5"),s(n,"points","21 15 16 10 5 21")},m(o,i){C(o,e,i),C(o,t,i),C(o,n,i)},d(o){o&&(w(e),w(t),w(n))}}}function vu(l){let e;return{c(){e=Q("path"),s(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,n){C(t,e,n)},d(t){t&&w(e)}}}function gu(l){let e;function t(i,r){return i[0]==="folder"?vu:i[0]==="image"?_u:i[0]==="video"?hu:i[0]==="audio"?mu:i[0]==="pdf"?pu:i[0]==="document"?du:i[0]==="spreadsheet"?fu:i[0]==="presentation"?uu:i[0]==="archive"?au:i[0]==="code"?ru:i[0]==="text"?cu:iu}let n=t(l),o=n(l);return{c(){e=Q("svg"),o.c(),s(e,"width",l[1]),s(e,"height",l[1]),s(e,"viewBox","0 0 24 24"),s(e,"fill","none"),s(e,"stroke","currentColor"),s(e,"stroke-width","1.5"),s(e,"stroke-linecap","round"),s(e,"stroke-linejoin","round"),s(e,"xmlns","http://www.w3.org/2000/svg")},m(i,r){C(i,e,r),o.m(e,null)},p(i,[r]){n!==(n=t(i))&&(o.d(1),o=n(i),o&&(o.c(),o.m(e,null))),r&2&&s(e,"width",i[1]),r&2&&s(e,"height",i[1])},i:$,o:$,d(i){i&&w(e),o.d()}}}function yu(l,e,t){let{kind:n="generic"}=e,{size:o=20}=e;return l.$$set=i=>{"kind"in i&&t(0,n=i.kind),"size"in i&&t(1,o=i.size)},[n,o]}class Ii extends $e{constructor(e){super(),xe(this,e,yu,gu,Ze,{kind:0,size:1})}}const bu={"nav.today":"Сегодня","nav.inbox":"Неразобранное","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.empty":"Неразобранных элементов нет","tab.overview":"Обзор","tab.notes":"Заметки","tab.files":"Файлы","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":"Новое имя","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":"Дело изменено","kind.project":"Проект","kind.client":"Клиент","kind.document":"Документ","kind.recipe":"Рецепт","kind.folder":"Папка","kind.note":"Заметка","kind.file":"Файл","kind.archive":"Архив","kind.case":"Дело","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":"Закрыть","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":"событий","journal.title":"Журнал работы","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":"Срок действия токена истёк"},ku={"nav.today":"Today","nav.inbox":"Inbox","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":"Root items without an assigned section","inbox.empty":"No unprocessed items","tab.overview":"Overview","tab.notes":"Notes","tab.files":"Files","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","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","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","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","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","journal.title":"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"},In={ru:bu,en:ku};let An="ru";function m(l,e){var o;const t=In[An];let n=t==null?void 0:t[l];if(n==null&&An!=="ru"&&(n=(o=In.ru)==null?void 0:o[l]),n==null&&(n=l),e!=null)for(const[i,r]of Object.entries(e))n=n.replace(`{${i}}`,String(r));return n}function il(l){if(l==null||l<0)return"—";if(l===0)return"0 B";const e=["B","KB","MB","GB"],t=Math.min(Math.floor(Math.log(l)/Math.log(1024)),e.length-1),n=l/Math.pow(1024,t);return(t===0?n.toFixed(0):n.toFixed(1))+" "+e[t]}const Vl={"image/jpeg":m("mime.jpeg"),"image/png":m("mime.png"),"image/gif":m("mime.gif"),"image/webp":m("mime.webp"),"image/svg+xml":m("mime.svg"),"image/bmp":m("mime.bmp"),"image/tiff":m("mime.tiff"),"image/avif":m("mime.avif"),"application/pdf":m("mime.pdf"),"application/msword":m("mime.word"),"application/vnd.openxmlformats-officedocument.wordprocessingml.document":m("mime.word"),"application/vnd.ms-excel":m("mime.excel"),"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet":m("mime.excel"),"application/vnd.ms-powerpoint":m("mime.ppt"),"application/vnd.openxmlformats-officedocument.presentationml.presentation":m("mime.ppt"),"application/zip":m("mime.zip"),"application/gzip":m("mime.gzip"),"application/x-tar":m("mime.tar"),"application/x-7z-compressed":m("mime.sevenz"),"application/x-rar-compressed":m("mime.rar"),"text/plain":m("mime.text"),"text/html":m("mime.html"),"text/css":m("mime.css"),"text/javascript":m("mime.js"),"application/json":m("mime.json"),"application/xml":m("mime.xml"),"application/x-yaml":m("mime.yaml"),"application/octet-stream":m("mime.binary"),"application/x-msdos-program":m("mime.executable"),"inode/directory":m("mime.folder")};function Fn(l){return l?Vl[l]||l:m("mime.unknown")}function zu(l){if(l.type==="folder")return m("mime.folder");const e=(l.mime||"").toLowerCase();if(Vl[e])return Vl[e];const n=(l.name||"").toLowerCase().split(".").pop();return n?n.toUpperCase():m("mime.file")}function Ai(l){if(l.type==="folder")return"folder";const e=(l.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 n=(l.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(n)?"code":"generic"}const Fi=["image/jpeg","image/png","image/gif","image/webp","image/bmp","image/tiff","image/avif","image/svg+xml"],Pi=["text/plain","text/html","text/css","text/javascript","application/json","application/xml","application/x-yaml","text/x-shellscript"],Li=["txt","log","conf","ini","yaml","yml","json","xml","csv","sh","py","js","ts","css","html","md","markdown","cfg"],Ri=["jpg","jpeg","png","gif","webp","bmp","tiff","tif","avif","svg"];function wu(l){if(l.type==="folder")return!1;const e=(l.mime||"").toLowerCase(),n=(l.name||"").toLowerCase().split(".").pop();return!!(Fi.includes(e)||Ri.includes(n)||e.includes("pdf")||Pi.includes(e)||Li.includes(n))}function Vi(l){const e=(l.mime||"").toLowerCase(),n=(l.name||"").toLowerCase().split(".").pop();return Fi.includes(e)||Ri.includes(n)}function Oi(l){const e=(l.mime||"").toLowerCase(),n=(l.name||"").toLowerCase().split(".").pop();return Pi.includes(e)||Li.includes(n)&&n!=="md"&&n!=="markdown"}function Wi(l){return(l.mime||"").toLowerCase().includes("pdf")}function Bi(l){const e=(l.name||"").toLowerCase();return e.endsWith(".md")||e.endsWith(".markdown")}function Cu(l){return Vi(l)||Wi(l)}function Su(l){return Oi(l)||Bi(l)}const{window:ju}=Wl;function Eu(l){let e,t,n,o=il(l[0].size)+"",i;return{c(){e=f("span"),e.textContent="·",t=g(),n=f("span"),i=A(o),s(e,"class","meta-sep svelte-1skuef2")},m(r,u){C(r,e,u),C(r,t,u),C(r,n,u),c(n,i)},p(r,u){u[0]&1&&o!==(o=il(r[0].size)+"")&&U(i,o)},d(r){r&&(w(e),w(t),w(n))}}}function Tu(l){let e,t,n,o,i;return{c(){e=f("button"),e.innerHTML='',t=g(),n=f("button"),n.innerHTML='',s(e,"class","action-btn svelte-1skuef2"),s(e,"title",m("file.openFolder")),s(e,"aria-label",m("file.openFolder")),s(n,"class","action-btn svelte-1skuef2"),s(n,"title",m("file.showInExplorer")),s(n,"aria-label",m("file.showInExplorer"))},m(r,u){C(r,e,u),C(r,t,u),C(r,n,u),o||(i=[M(e,"click",Oe(l[30])),M(n,"click",Oe(l[11]))],o=!0)},p:$,d(r){r&&(w(e),w(t),w(n)),o=!1,he(i)}}}function Nu(l){let e,t,n,o,i,r,u;return{c(){e=f("button"),e.innerHTML='',t=g(),n=f("button"),n.innerHTML='',o=g(),i=f("button"),i.innerHTML='',s(e,"class","action-btn svelte-1skuef2"),s(e,"title",m("file.preview")),s(e,"aria-label",m("file.preview")),s(n,"class","action-btn svelte-1skuef2"),s(n,"title",m("file.openExternal")),s(n,"aria-label",m("file.openExternal")),s(i,"class","action-btn svelte-1skuef2"),s(i,"title",m("file.showInExplorer")),s(i,"aria-label",m("file.showInExplorer"))},m(a,d){C(a,e,d),C(a,t,d),C(a,n,d),C(a,o,d),C(a,i,d),r||(u=[M(e,"click",Oe(l[29])),M(n,"click",Oe(l[10])),M(i,"click",Oe(l[11]))],r=!0)},p:$,d(a){a&&(w(e),w(t),w(n),w(o),w(i)),r=!1,he(u)}}}function Pn(l){let e,t,n,o,i,r,u,a,d=m("common.open")+"",h,_,v,y,b,k,z,S,j=m("file.openExternal")+"",N,T,E,I,D,L,O=m("file.showInExplorer")+"",W,J,q,Y,H,B,G,R,K,P=m("common.rename")+"",V,x,ce,ee,ne,le,ie,ae=m("common.duplicate")+"",ke,We,Ne,X,Z,ue,we,_e,be,Ue=m("common.cut")+"",Qe,Xe,Be,Fe,Ee,Se,Pe,Te=m("common.copy")+"",Ae,je,ze,De,Ce,Ie,Ke,Me,de,te=m("common.delete")+"",ve,Ve,He;return{c(){e=f("div"),t=g(),n=f("div"),o=f("button"),i=Q("svg"),r=Q("path"),u=Q("circle"),a=g(),h=A(d),_=g(),v=f("button"),y=Q("svg"),b=Q("path"),k=Q("polyline"),z=Q("line"),S=g(),N=A(j),T=g(),E=f("button"),I=Q("svg"),D=Q("path"),L=g(),W=A(O),J=g(),q=f("div"),Y=g(),H=f("button"),B=Q("svg"),G=Q("path"),R=Q("path"),K=g(),V=A(P),x=g(),ce=f("button"),ee=Q("svg"),ne=Q("rect"),le=Q("path"),ie=g(),ke=A(ae),We=g(),Ne=f("button"),X=Q("svg"),Z=Q("circle"),ue=Q("circle"),we=Q("line"),_e=Q("line"),be=g(),Qe=A(Ue),Xe=g(),Be=f("button"),Fe=Q("svg"),Ee=Q("rect"),Se=Q("path"),Pe=g(),Ae=A(Te),je=g(),ze=f("div"),De=g(),Ce=f("button"),Ie=Q("svg"),Ke=Q("polyline"),Me=Q("path"),de=g(),ve=A(te),s(e,"class","menu-backdrop svelte-1skuef2"),s(e,"role","presentation"),s(r,"d","M1 12s4-8 11-8 11 8 11 8-4 8-11 8-11-8-11-8z"),s(u,"cx","12"),s(u,"cy","12"),s(u,"r","3"),s(i,"width","14"),s(i,"height","14"),s(i,"viewBox","0 0 24 24"),s(i,"fill","none"),s(i,"stroke","currentColor"),s(i,"stroke-width","2"),s(i,"stroke-linecap","round"),s(i,"stroke-linejoin","round"),s(o,"class","menu-item svelte-1skuef2"),s(o,"role","menuitem"),s(b,"d","M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6"),s(k,"points","15 3 21 3 21 9"),s(z,"x1","10"),s(z,"y1","14"),s(z,"x2","21"),s(z,"y2","3"),s(y,"width","14"),s(y,"height","14"),s(y,"viewBox","0 0 24 24"),s(y,"fill","none"),s(y,"stroke","currentColor"),s(y,"stroke-width","2"),s(y,"stroke-linecap","round"),s(y,"stroke-linejoin","round"),s(v,"class","menu-item svelte-1skuef2"),s(v,"role","menuitem"),s(D,"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"),s(I,"width","14"),s(I,"height","14"),s(I,"viewBox","0 0 24 24"),s(I,"fill","none"),s(I,"stroke","currentColor"),s(I,"stroke-width","2"),s(I,"stroke-linecap","round"),s(I,"stroke-linejoin","round"),s(E,"class","menu-item svelte-1skuef2"),s(E,"role","menuitem"),s(q,"class","menu-sep svelte-1skuef2"),s(G,"d","M12 20h9"),s(R,"d","M16.5 3.5a2.121 2.121 0 0 1 3 3L7 19l-4 1 1-4L16.5 3.5z"),s(B,"width","14"),s(B,"height","14"),s(B,"viewBox","0 0 24 24"),s(B,"fill","none"),s(B,"stroke","currentColor"),s(B,"stroke-width","2"),s(B,"stroke-linecap","round"),s(B,"stroke-linejoin","round"),s(H,"class","menu-item svelte-1skuef2"),s(H,"role","menuitem"),s(ne,"x","9"),s(ne,"y","9"),s(ne,"width","13"),s(ne,"height","13"),s(ne,"rx","2"),s(ne,"ry","2"),s(le,"d","M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1"),s(ee,"width","14"),s(ee,"height","14"),s(ee,"viewBox","0 0 24 24"),s(ee,"fill","none"),s(ee,"stroke","currentColor"),s(ee,"stroke-width","2"),s(ee,"stroke-linecap","round"),s(ee,"stroke-linejoin","round"),s(ce,"class","menu-item svelte-1skuef2"),s(ce,"role","menuitem"),s(Z,"cx","6"),s(Z,"cy","6"),s(Z,"r","3"),s(ue,"cx","6"),s(ue,"cy","18"),s(ue,"r","3"),s(we,"x1","20"),s(we,"y1","4"),s(we,"x2","8.12"),s(we,"y2","15.88"),s(_e,"x1","8.12"),s(_e,"y1","8.12"),s(_e,"x2","20"),s(_e,"y2","20"),s(X,"width","14"),s(X,"height","14"),s(X,"viewBox","0 0 24 24"),s(X,"fill","none"),s(X,"stroke","currentColor"),s(X,"stroke-width","2"),s(X,"stroke-linecap","round"),s(X,"stroke-linejoin","round"),s(Ne,"class","menu-item svelte-1skuef2"),s(Ne,"role","menuitem"),s(Ee,"x","9"),s(Ee,"y","9"),s(Ee,"width","13"),s(Ee,"height","13"),s(Ee,"rx","2"),s(Ee,"ry","2"),s(Se,"d","M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1"),s(Fe,"width","14"),s(Fe,"height","14"),s(Fe,"viewBox","0 0 24 24"),s(Fe,"fill","none"),s(Fe,"stroke","currentColor"),s(Fe,"stroke-width","2"),s(Fe,"stroke-linecap","round"),s(Fe,"stroke-linejoin","round"),s(Be,"class","menu-item svelte-1skuef2"),s(Be,"role","menuitem"),s(ze,"class","menu-sep svelte-1skuef2"),s(Ke,"points","3 6 5 6 21 6"),s(Me,"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"),s(Ie,"width","14"),s(Ie,"height","14"),s(Ie,"viewBox","0 0 24 24"),s(Ie,"fill","none"),s(Ie,"stroke","currentColor"),s(Ie,"stroke-width","2"),s(Ie,"stroke-linecap","round"),s(Ie,"stroke-linejoin","round"),s(Ce,"class","menu-item menu-item-danger svelte-1skuef2"),s(Ce,"role","menuitem"),s(n,"class","menu svelte-1skuef2"),rt(n,"left",l[3]+"px"),rt(n,"top",l[4]+"px"),rt(n,"position","fixed"),s(n,"role","menu"),s(n,"tabindex","-1")},m(lt,qe){C(lt,e,qe),C(lt,t,qe),C(lt,n,qe),c(n,o),c(o,i),c(i,r),c(i,u),c(o,a),c(o,h),c(n,_),c(n,v),c(v,y),c(y,b),c(y,k),c(y,z),c(v,S),c(v,N),c(n,T),c(n,E),c(E,I),c(I,D),c(E,L),c(E,W),c(n,J),c(n,q),c(n,Y),c(n,H),c(H,B),c(B,G),c(B,R),c(H,K),c(H,V),c(n,x),c(n,ce),c(ce,ee),c(ee,ne),c(ee,le),c(ce,ie),c(ce,ke),c(n,We),c(n,Ne),c(Ne,X),c(X,Z),c(X,ue),c(X,we),c(X,_e),c(Ne,be),c(Ne,Qe),c(n,Xe),c(n,Be),c(Be,Fe),c(Fe,Ee),c(Fe,Se),c(Be,Pe),c(Be,Ae),c(n,je),c(n,ze),c(n,De),c(n,Ce),c(Ce,Ie),c(Ie,Ke),c(Ie,Me),c(Ce,de),c(Ce,ve),Ve||(He=[M(e,"click",Oe(l[19])),M(o,"click",l[17]),M(v,"click",l[10]),M(E,"click",l[11]),M(H,"click",l[13]),M(ce,"click",l[14]),M(Ne,"click",l[15]),M(Be,"click",l[16]),M(Ce,"click",l[12]),M(n,"click",Oe(l[28])),M(n,"keydown",l[31])],Ve=!0)},p(lt,qe){qe[0]&8&&rt(n,"left",lt[3]+"px"),qe[0]&16&&rt(n,"top",lt[4]+"px")},d(lt){lt&&(w(e),w(t),w(n)),Ve=!1,he(He)}}}function Du(l){let e,t,n,o,i,r,u=l[0].name+"",a,d,h,_,v,y,b,k,z,S,j,N,T,E,I,D,L,O,W,J,q,Y;n=new Ii({props:{kind:l[6],size:22}});let H=!l[7]&&Eu(l);function B(P,V){return P[7]?Tu:Nu}let R=B(l)(l),K=l[2]&&Pn(l);return{c(){e=f("div"),t=f("div"),Ye(n.$$.fragment),o=g(),i=f("div"),r=f("div"),a=A(u),h=g(),_=f("div"),v=f("span"),v.textContent=`${l[8]}`,y=g(),H&&H.c(),b=g(),k=f("div"),R.c(),z=g(),S=f("button"),j=Q("svg"),N=Q("circle"),T=Q("circle"),E=Q("circle"),I=g(),D=f("button"),D.innerHTML='',O=g(),K&&K.c(),W=it(),s(t,"class","file-row-icon svelte-1skuef2"),s(r,"class","file-row-name svelte-1skuef2"),s(r,"title",d=l[0].name),s(_,"class","file-row-meta svelte-1skuef2"),s(i,"class","file-row-body svelte-1skuef2"),s(N,"cx","12"),s(N,"cy","5"),s(N,"r","2"),s(T,"cx","12"),s(T,"cy","12"),s(T,"r","2"),s(E,"cx","12"),s(E,"cy","19"),s(E,"r","2"),s(j,"width","16"),s(j,"height","16"),s(j,"viewBox","0 0 24 24"),s(j,"fill","currentColor"),s(S,"class","action-btn svelte-1skuef2"),s(S,"title",m("file.more")),s(S,"aria-label",m("file.more")),s(S,"aria-expanded",l[2]),s(D,"class","action-btn action-btn-danger svelte-1skuef2"),s(D,"title",m("common.delete")),s(D,"aria-label",m("common.delete")),s(k,"class","file-row-actions svelte-1skuef2"),s(e,"class","file-row svelte-1skuef2"),s(e,"role","button"),s(e,"tabindex","0"),s(e,"draggable","true"),s(e,"aria-label",L=l[7]?m("file.ariaFolder")+" "+l[0].name:m("file.ariaFile")+" "+l[0].name),ge(e,"file-row--selected",l[1])},m(P,V){C(P,e,V),c(e,t),Ge(n,t,null),c(e,o),c(e,i),c(i,r),c(r,a),c(i,h),c(i,_),c(_,v),c(_,y),H&&H.m(_,null),c(e,b),c(e,k),R.m(k,null),c(k,z),c(k,S),c(S,j),c(j,N),c(j,T),c(j,E),c(k,I),c(k,D),C(P,O,V),K&&K.m(P,V),C(P,W,V),J=!0,q||(Y=[M(ju,"click",l[19]),M(S,"click",Oe(l[18])),M(D,"click",Oe(l[12])),M(e,"click",l[9]),M(e,"keydown",l[24]),M(e,"contextmenu",l[23]),M(e,"dragstart",l[20]),M(e,"dragover",l[21]),M(e,"drop",l[22])],q=!0)},p(P,V){(!J||V[0]&1)&&u!==(u=P[0].name+"")&&U(a,u),(!J||V[0]&1&&d!==(d=P[0].name))&&s(r,"title",d),P[7]||H.p(P,V),R.p(P,V),(!J||V[0]&4)&&s(S,"aria-expanded",P[2]),(!J||V[0]&1&&L!==(L=P[7]?m("file.ariaFolder")+" "+P[0].name:m("file.ariaFile")+" "+P[0].name))&&s(e,"aria-label",L),(!J||V[0]&2)&&ge(e,"file-row--selected",P[1]),P[2]?K?K.p(P,V):(K=Pn(P),K.c(),K.m(W.parentNode,W)):K&&(K.d(1),K=null)},i(P){J||(re(n.$$.fragment,P),J=!0)},o(P){pe(n.$$.fragment,P),J=!1},d(P){P&&(w(e),w(O),w(W)),Je(n),H&&H.d(),R.d(),K&&K.d(P),q=!1,he(Y)}}}function Mu(l,e,t){let{item:n}=e,{selected:o=!1}=e,{onDragStart:i}=e,{onDragOver:r}=e,{onDrop:u}=e;const a=rl(),d=Ai(n),h=n.type==="folder",_=zu(n);let v=!1,y=0,b=0,k=null;function z(V){V.ctrlKey||V.metaKey?a("toggleSelect",n.id):V.shiftKey?a("rangeSelect",n.id):k?(clearTimeout(k),k=null,h?a("navigate",n.id):a("preview",n)):k=setTimeout(()=>{k=null,a("selectOne",n.id)},250)}function S(){a("openExternal",n.fileId)}function j(){t(2,v=!1),a("showInFolder",n.nodeId||n.id)}function N(){t(2,v=!1),a("delete",{id:n.id,type:n.type})}function T(){t(2,v=!1),a("rename",{id:n.id,name:n.name})}function E(){t(2,v=!1),a("duplicate",n.id)}function I(){t(2,v=!1),a("cut",n.id)}function D(){t(2,v=!1),a("copy",n.id)}function L(){t(2,v=!1),h?a("navigate",n.id):a("preview",n)}function O(){t(2,v=!v)}function W(){t(2,v=!1)}function J(V){i&&i(V,n.id)}function q(V){r&&h&&r(V,n.id)}function Y(V){u&&h&&u(V,n.id)}function H(V){V.preventDefault(),t(3,y=Math.min(V.clientX,window.innerWidth-240)),t(4,b=Math.min(V.clientY,window.innerHeight-320)),t(2,v=!0)}function B(V){(V.key==="Enter"||V.key===" ")&&(V.preventDefault(),z(V))}function G(V){Ti.call(this,l,V)}const R=()=>a("preview",n),K=()=>a("navigate",n.id),P=V=>{V.key==="Escape"&&(V.stopPropagation(),W())};return l.$$set=V=>{"item"in V&&t(0,n=V.item),"selected"in V&&t(1,o=V.selected),"onDragStart"in V&&t(25,i=V.onDragStart),"onDragOver"in V&&t(26,r=V.onDragOver),"onDrop"in V&&t(27,u=V.onDrop)},[n,o,v,y,b,a,d,h,_,z,S,j,N,T,E,I,D,L,O,W,J,q,Y,H,B,i,r,u,G,R,K,P]}class Iu extends $e{constructor(e){super(),xe(this,e,Mu,Du,Ze,{item:0,selected:1,onDragStart:25,onDragOver:26,onDrop:27},null,[-1,-1])}}function Ln(l,e,t){const n=l.slice();return n[4]=e[t],n[6]=t,n}function Au(l){let e;return{c(){e=f("span"),e.textContent="/",s(e,"class","sep svelte-csi2lb")},m(t,n){C(t,e,n)},d(t){t&&w(e)}}}function Fu(l){let e,t=l[4].name+"",n,o,i;function r(){return l[2](l[6])}return{c(){e=f("button"),n=A(t),s(e,"class","crumb crumb--link svelte-csi2lb")},m(u,a){C(u,e,a),c(e,n),o||(i=M(e,"click",r),o=!0)},p(u,a){l=u,a&1&&t!==(t=l[4].name+"")&&U(n,t)},d(u){u&&w(e),o=!1,i()}}}function Pu(l){let e,t=l[4].name+"",n;return{c(){e=f("span"),n=A(t),s(e,"class","crumb crumb--current svelte-csi2lb")},m(o,i){C(o,e,i),c(e,n)},p(o,i){i&1&&t!==(t=o[4].name+"")&&U(n,t)},d(o){o&&w(e)}}}function Rn(l){let e,t,n=l[6]>0&&Au();function o(u,a){return u[6]===u[0].length-1?Pu:Fu}let i=o(l),r=i(l);return{c(){n&&n.c(),e=g(),r.c(),t=it()},m(u,a){n&&n.m(u,a),C(u,e,a),r.m(u,a),C(u,t,a)},p(u,a){i===(i=o(u))&&r?r.p(u,a):(r.d(1),r=i(u),r&&(r.c(),r.m(t.parentNode,t)))},d(u){u&&(w(e),w(t)),n&&n.d(u),r.d(u)}}}function Lu(l){let e,t=fe(l[0]),n=[];for(let o=0;oi(u);return l.$$set=u=>{"crumbs"in u&&t(0,n=u.crumbs)},[n,i,r]}class Hi extends $e{constructor(e){super(),xe(this,e,Ru,Lu,Ze,{crumbs:0})}}function Vu(l){let e,t,n,o,i,r;return{c(){e=f("div"),t=f("p"),t.textContent=`${m("file.previewUnavailable")}`,n=g(),o=f("button"),o.textContent=`${m("file.openExternal")}`,s(o,"class","btn btn-sm svelte-1cw3u0m"),s(e,"class","preview-status svelte-1cw3u0m")},m(u,a){C(u,e,a),c(e,t),c(e,n),c(e,o),i||(r=M(o,"click",l[9]),i=!0)},p:$,d(u){u&&w(e),i=!1,r()}}}function Ou(l){let e,t;function n(r,u){return u&2&&(e=null),e==null&&(e=!!(r[1]&&r[1].startsWith("data:"))),e?Gu:Ku}let o=n(l,-1),i=o(l);return{c(){i.c(),t=it()},m(r,u){i.m(r,u),C(r,t,u)},p(r,u){o===(o=n(r,u))&&i?i.p(r,u):(i.d(1),i=o(r),i&&(i.c(),i.m(t.parentNode,t)))},d(r){r&&w(t),i.d(r)}}}function Wu(l){let e,t,n;return{c(){e=f("pre"),t=f("code"),n=A(l[1]),s(e,"class","preview-text svelte-1cw3u0m")},m(o,i){C(o,e,i),c(e,t),c(t,n)},p(o,i){i&2&&U(n,o[1])},d(o){o&&w(e)}}}function Bu(l){let e,t,n,o;return{c(){e=f("div"),t=f("img"),sl(t.src,n=l[1])||s(t,"src",n),s(t,"alt",o=l[0].name),s(t,"class","preview-image svelte-1cw3u0m"),s(e,"class","preview-image-container svelte-1cw3u0m")},m(i,r){C(i,e,r),c(e,t)},p(i,r){r&2&&!sl(t.src,n=i[1])&&s(t,"src",n),r&1&&o!==(o=i[0].name)&&s(t,"alt",o)},d(i){i&&w(e)}}}function Hu(l){let e,t,n,o,i,r,u;return{c(){e=f("div"),t=f("p"),n=A(l[3]),o=g(),i=f("button"),i.textContent=`${m("file.openExternal")}`,s(i,"class","btn btn-sm svelte-1cw3u0m"),s(e,"class","preview-status svelte-1cw3u0m")},m(a,d){C(a,e,d),c(e,t),c(t,n),c(e,o),c(e,i),r||(u=M(i,"click",l[9]),r=!0)},p(a,d){d&8&&U(n,a[3])},d(a){a&&w(e),r=!1,u()}}}function Uu(l){let e,t;return{c(){e=f("div"),t=f("p"),t.textContent=`${m("common.loading")}`,s(e,"class","preview-status svelte-1cw3u0m")},m(n,o){C(n,e,o),c(e,t)},p:$,d(n){n&&w(e)}}}function Ku(l){let e,t,n,o,i,r;return{c(){e=f("div"),t=f("p"),t.textContent=`${m("file.pdfUnavailable")}`,n=g(),o=f("button"),o.textContent=`${m("file.openExternal")}`,s(o,"class","btn btn-sm svelte-1cw3u0m"),s(e,"class","preview-status svelte-1cw3u0m")},m(u,a){C(u,e,a),c(e,t),c(e,n),c(e,o),i||(r=M(o,"click",l[9]),i=!0)},p:$,d(u){u&&w(e),i=!1,r()}}}function Gu(l){let e,t,n;return{c(){e=f("div"),t=f("embed"),sl(t.src,n=l[1])||s(t,"src",n),s(t,"type","application/pdf"),s(t,"class","preview-pdf svelte-1cw3u0m"),s(e,"class","preview-pdf-container svelte-1cw3u0m")},m(o,i){C(o,e,i),c(e,t)},p(o,i){i&2&&!sl(t.src,n=o[1])&&s(t,"src",n)},d(o){o&&w(e)}}}function Ju(l){let e,t,n,o,i,r,u,a=l[0].name+"",d,h,_,v,y=il(l[0].size)+"",b,k,z=Fn(l[0].mime)+"",S,j,N,T,E,I,D,L,O,W,J;i=new Ii({props:{kind:l[8],size:18}});function q(B,G){return B[2]?Uu:B[3]?Hu:B[6]&&B[1]?Bu:B[5]&&B[1]?Wu:B[4]?Ou:Vu}let Y=q(l),H=Y(l);return{c(){e=f("div"),t=f("div"),n=f("header"),o=f("div"),Ye(i.$$.fragment),r=g(),u=f("span"),d=A(a),_=g(),v=f("div"),b=A(y),k=A(" · "),S=A(z),j=g(),N=f("div"),T=f("button"),T.innerHTML='',E=g(),I=f("button"),I.innerHTML='',D=g(),L=f("div"),H.c(),s(u,"class","preview-name svelte-1cw3u0m"),s(u,"title",h=l[0].name),s(o,"class","preview-title svelte-1cw3u0m"),s(v,"class","preview-meta svelte-1cw3u0m"),s(T,"class","action-btn svelte-1cw3u0m"),s(T,"title",m("file.openExternal")),s(T,"aria-label",m("file.openExternal")),s(I,"class","action-btn action-btn-close svelte-1cw3u0m"),s(I,"title","Close"),s(I,"aria-label","Close preview"),s(N,"class","preview-actions svelte-1cw3u0m"),s(n,"class","preview-header svelte-1cw3u0m"),s(L,"class","preview-body svelte-1cw3u0m"),s(t,"class","modal svelte-1cw3u0m"),s(e,"class","overlay svelte-1cw3u0m"),s(e,"role","presentation")},m(B,G){C(B,e,G),c(e,t),c(t,n),c(n,o),Ge(i,o,null),c(o,r),c(o,u),c(u,d),c(n,_),c(n,v),c(v,b),c(v,k),c(v,S),c(n,j),c(n,N),c(N,T),c(N,E),c(N,I),c(t,D),c(t,L),H.m(L,null),O=!0,W||(J=[M(T,"click",l[9]),M(I,"click",l[10]),M(e,"click",pt(l[11])),M(e,"keydown",l[12])],W=!0)},p(B,[G]){(!O||G&1)&&a!==(a=B[0].name+"")&&U(d,a),(!O||G&1&&h!==(h=B[0].name))&&s(u,"title",h),(!O||G&1)&&y!==(y=il(B[0].size)+"")&&U(b,y),(!O||G&1)&&z!==(z=Fn(B[0].mime)+"")&&U(S,z),Y===(Y=q(B))&&H?H.p(B,G):(H.d(1),H=Y(B),H&&(H.c(),H.m(L,null)))},i(B){O||(re(i.$$.fragment,B),O=!0)},o(B){pe(i.$$.fragment,B),O=!1},d(B){B&&w(e),Je(i),H.d(),W=!1,he(J)}}}function qu(l,e,t){let n,o,i,{item:r}=e,{content:u=""}=e,{loading:a=!1}=e,{error:d=""}=e;const h=rl(),_=Ai(r);function v(S){S.key==="Escape"&&h("close")}function y(){h("openExternal",r.fileId)}Ei(()=>{window.addEventListener("keydown",v)}),Ul(()=>{window.removeEventListener("keydown",v)});const b=()=>h("close"),k=()=>h("close"),z=S=>{S.key==="Escape"&&(S.preventDefault(),h("close"))};return l.$$set=S=>{"item"in S&&t(0,r=S.item),"content"in S&&t(1,u=S.content),"loading"in S&&t(2,a=S.loading),"error"in S&&t(3,d=S.error)},l.$$.update=()=>{l.$$.dirty&3&&t(6,n=Vi(r)&&u&&u.startsWith("data:")),l.$$.dirty&1&&t(5,o=Oi(r)||Bi(r)),l.$$.dirty&1&&t(4,i=Wi(r))},[r,u,a,d,i,o,n,h,_,y,b,k,z]}class Yu extends $e{constructor(e){super(),xe(this,e,qu,Ju,Ze,{item:0,content:1,loading:2,error:3})}}function Qu(l){let e,t,n,o,i,r,u,a,d,h,_,v,y,b,k,z,S;return{c(){e=f("div"),t=f("div"),n=f("h3"),o=A(l[0]),i=g(),r=f("p"),u=A(l[1]),a=g(),d=f("div"),h=f("button"),_=A(l[2]),y=g(),b=f("button"),k=A(l[3]),s(n,"class","svelte-1fv6yyk"),s(r,"class","message svelte-1fv6yyk"),s(h,"class",v="btn "+(l[4]?"btn-danger":"btn-primary")+" svelte-1fv6yyk"),s(b,"class","btn svelte-1fv6yyk"),s(d,"class","actions svelte-1fv6yyk"),s(t,"class","modal svelte-1fv6yyk"),s(e,"class","overlay svelte-1fv6yyk"),s(e,"role","presentation")},m(j,N){C(j,e,N),c(e,t),c(t,n),c(n,o),c(t,i),c(t,r),c(r,u),c(t,a),c(t,d),c(d,h),c(h,_),c(d,y),c(d,b),c(b,k),z||(S=[M(h,"click",l[6]),M(b,"click",l[7]),M(e,"click",pt(l[8])),M(e,"keydown",l[9])],z=!0)},p(j,[N]){N&1&&U(o,j[0]),N&2&&U(u,j[1]),N&4&&U(_,j[2]),N&16&&v!==(v="btn "+(j[4]?"btn-danger":"btn-primary")+" svelte-1fv6yyk")&&s(h,"class",v),N&8&&U(k,j[3])},i:$,o:$,d(j){j&&w(e),z=!1,he(S)}}}function Xu(l,e,t){let{title:n=m("common.confirm")}=e,{message:o=""}=e,{confirmText:i=m("common.delete")}=e,{cancelText:r=m("common.cancel")}=e,{danger:u=!1}=e;const a=rl(),d=()=>a("confirm"),h=()=>a("cancel"),_=()=>a("cancel"),v=y=>{y.key==="Escape"&&(y.preventDefault(),a("cancel"))};return l.$$set=y=>{"title"in y&&t(0,n=y.title),"message"in y&&t(1,o=y.message),"confirmText"in y&&t(2,i=y.confirmText),"cancelText"in y&&t(3,r=y.cancelText),"danger"in y&&t(4,u=y.danger)},[n,o,i,r,u,a,d,h,_,v]}class Zu extends $e{constructor(e){super(),xe(this,e,Xu,Qu,Ze,{title:0,message:1,confirmText:2,cancelText:3,danger:4})}}function xu(l){let e,t,n;return{c(){e=Q("circle"),t=Q("line"),n=Q("line"),s(e,"cx","12"),s(e,"cy","12"),s(e,"r","10"),s(t,"x1","12"),s(t,"y1","16"),s(t,"x2","12"),s(t,"y2","12"),s(n,"x1","12"),s(n,"y1","8"),s(n,"x2","12.01"),s(n,"y2","8")},m(o,i){C(o,e,i),C(o,t,i),C(o,n,i)},d(o){o&&(w(e),w(t),w(n))}}}function $u(l){let e,t,n,o;return{c(){e=Q("rect"),t=Q("polyline"),n=Q("line"),o=Q("line"),s(e,"x","3"),s(e,"y","5"),s(e,"width","18"),s(e,"height","14"),s(e,"rx","2"),s(t,"points","3 10 21 10"),s(n,"x1","8"),s(n,"y1","5"),s(n,"x2","8"),s(n,"y2","19"),s(o,"x1","16"),s(o,"y1","5"),s(o,"x2","16"),s(o,"y2","19")},m(i,r){C(i,e,r),C(i,t,r),C(i,n,r),C(i,o,r)},d(i){i&&(w(e),w(t),w(n),w(o))}}}function ef(l){let e,t;return{c(){e=Q("path"),t=Q("polyline"),s(e,"d","M13 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V9z"),s(t,"points","13 2 13 9 20 9")},m(n,o){C(n,e,o),C(n,t,o)},d(n){n&&(w(e),w(t))}}}function tf(l){let e,t;return{c(){e=Q("path"),t=Q("path"),s(e,"d","M12 20h9"),s(t,"d","M16.5 3.5a2.121 2.121 0 0 1 3 3L7 19l-4 1 1-4L16.5 3.5z")},m(n,o){C(n,e,o),C(n,t,o)},d(n){n&&(w(e),w(t))}}}function lf(l){let e,t,n,o,i;return{c(){e=Q("path"),t=Q("path"),n=Q("line"),o=Q("line"),i=Q("line"),s(e,"d","M4 19.5A2.5 2.5 0 0 1 6.5 17H20"),s(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"),s(n,"x1","8"),s(n,"y1","7"),s(n,"x2","16"),s(n,"y2","7"),s(o,"x1","8"),s(o,"y1","11"),s(o,"x2","14"),s(o,"y2","11"),s(i,"x1","8"),s(i,"y1","15"),s(i,"x2","12"),s(i,"y2","15")},m(r,u){C(r,e,u),C(r,t,u),C(r,n,u),C(r,o,u),C(r,i,u)},d(r){r&&(w(e),w(t),w(n),w(o),w(i))}}}function nf(l){let e,t,n,o;return{c(){e=Q("path"),t=Q("polyline"),n=Q("line"),o=Q("line"),s(e,"d","M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"),s(t,"points","14 2 14 8 20 8"),s(n,"x1","16"),s(n,"y1","13"),s(n,"x2","8"),s(n,"y2","13"),s(o,"x1","16"),s(o,"y1","17"),s(o,"x2","8"),s(o,"y2","17")},m(i,r){C(i,e,r),C(i,t,r),C(i,n,r),C(i,o,r)},d(i){i&&(w(e),w(t),w(n),w(o))}}}function of(l){let e,t;return{c(){e=Q("path"),t=Q("circle"),s(e,"d","M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2"),s(t,"cx","12"),s(t,"cy","7"),s(t,"r","4")},m(n,o){C(n,e,o),C(n,t,o)},d(n){n&&(w(e),w(t))}}}function sf(l){let e,t,n,o;return{c(){e=Q("rect"),t=Q("rect"),n=Q("rect"),o=Q("rect"),s(e,"x","3"),s(e,"y","3"),s(e,"width","7"),s(e,"height","7"),s(e,"rx","1"),s(t,"x","14"),s(t,"y","3"),s(t,"width","7"),s(t,"height","4"),s(t,"rx","1"),s(n,"x","14"),s(n,"y","10"),s(n,"width","7"),s(n,"height","11"),s(n,"rx","1"),s(o,"x","3"),s(o,"y","14"),s(o,"width","7"),s(o,"height","7"),s(o,"rx","1")},m(i,r){C(i,e,r),C(i,t,r),C(i,n,r),C(i,o,r)},d(i){i&&(w(e),w(t),w(n),w(o))}}}function cf(l){let e;return{c(){e=Q("path"),s(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,n){C(t,e,n)},d(t){t&&w(e)}}}function rf(l){let e;function t(i,r){return i[0]==="folder"?cf:i[0]==="project"?sf:i[0]==="client"?of:i[0]==="document"?nf:i[0]==="recipe"?lf:i[0]==="note"?tf:i[0]==="file"?ef:i[0]==="case"?$u:xu}let n=t(l),o=n(l);return{c(){e=Q("svg"),o.c(),s(e,"width",l[1]),s(e,"height",l[1]),s(e,"viewBox","0 0 24 24"),s(e,"fill","none"),s(e,"stroke","currentColor"),s(e,"stroke-width","1.5"),s(e,"stroke-linecap","round"),s(e,"stroke-linejoin","round"),s(e,"xmlns","http://www.w3.org/2000/svg")},m(i,r){C(i,e,r),o.m(e,null)},p(i,[r]){n!==(n=t(i))&&(o.d(1),o=n(i),o&&(o.c(),o.m(e,null))),r&2&&s(e,"width",i[1]),r&2&&s(e,"height",i[1])},i:$,o:$,d(i){i&&w(e),o.d()}}}function af(l,e,t){let{kind:n="generic"}=e,{size:o=18}=e;return l.$$set=i=>{"kind"in i&&t(0,n=i.kind),"size"in i&&t(1,o=i.size)},[n,o]}class al extends $e{constructor(e){super(),xe(this,e,af,rf,Ze,{kind:0,size:1})}}function Vn(l,e,t){const n=l.slice();return n[44]=e[t],n}function uf(l){let e;return{c(){e=f("span"),s(e,"class","tree-toggle-placeholder svelte-zj71cl")},m(t,n){C(t,e,n)},p:$,d(t){t&&w(e)}}}function ff(l){let e,t,n=l[1][l[44].id]?"▾":"▸",o,i,r;function u(){return l[25](l[44])}return{c(){e=f("button"),t=f("span"),o=A(n),s(t,"class","tree-arrow"),s(e,"class","tree-toggle svelte-zj71cl")},m(a,d){C(a,e,d),c(e,t),c(t,o),i||(r=M(e,"click",Oe(u)),i=!0)},p(a,d){l=a,d[0]&3&&n!==(n=l[1][l[44].id]?"▾":"▸")&&U(o,n)},d(a){a&&w(e),i=!1,r()}}}function On(l){let e,t;return e=new Ui({props:{nodes:l[44].children||[],expanded:l[1],selectedNodeId:l[2],level:l[3]+1,onSelect:l[4],onToggle:l[5],onContextMenu:l[6],onDrop:l[7]}}),{c(){Ye(e.$$.fragment)},m(n,o){Ge(e,n,o),t=!0},p(n,o){const i={};o[0]&1&&(i.nodes=n[44].children||[]),o[0]&2&&(i.expanded=n[1]),o[0]&4&&(i.selectedNodeId=n[2]),o[0]&8&&(i.level=n[3]+1),o[0]&16&&(i.onSelect=n[4]),o[0]&32&&(i.onToggle=n[5]),o[0]&64&&(i.onContextMenu=n[6]),o[0]&128&&(i.onDrop=n[7]),e.$set(i)},i(n){t||(re(e.$$.fragment,n),t=!0)},o(n){pe(e.$$.fragment,n),t=!1},d(n){Je(e,n)}}}function Wn(l,e){let t,n,o,i,r,u,a,d=e[44].title+"",h,_,v=e[1][e[44].id]&&Ol(e[44]),y,b,k,z;function S(R,K){return K[0]&1&&(n=null),n==null&&(n=!!Wt(R[44])),n?ff:uf}let j=S(e,[-1,-1]),N=j(e);r=new al({props:{kind:Bn(e[44]),size:16}});function T(...R){return e[26](e[44],...R)}function E(...R){return e[27](e[44],...R)}function I(){return e[28](e[44])}function D(...R){return e[29](e[44],...R)}function L(...R){return e[30](e[44],...R)}function O(...R){return e[31](e[44],...R)}function W(...R){return e[32](e[44],...R)}function J(...R){return e[33](e[44],...R)}function q(...R){return e[34](e[44],...R)}function Y(...R){return e[35](e[44],...R)}function H(...R){return e[36](e[44],...R)}function B(...R){return e[37](e[44],...R)}let G=v&&On(e);return{key:l,first:null,c(){t=f("div"),N.c(),o=g(),i=f("span"),Ye(r.$$.fragment),u=g(),a=f("span"),h=A(d),_=g(),G&&G.c(),y=it(),s(i,"class","tree-icon svelte-zj71cl"),s(i,"role","button"),s(i,"tabindex","-1"),s(a,"class","tree-label svelte-zj71cl"),s(a,"role","button"),s(a,"tabindex","-1"),s(t,"class","tree-item svelte-zj71cl"),rt(t,"padding-left",e[3]*16+4+"px"),s(t,"draggable","true"),s(t,"role","button"),s(t,"tabindex","0"),ge(t,"selected",e[2]===e[44].id),ge(t,"drop-valid",e[8]===e[44].id&&e[9][e[44].id]),ge(t,"drop-invalid",e[8]===e[44].id&&!e[9][e[44].id]),this.first=t},m(R,K){C(R,t,K),N.m(t,null),c(t,o),c(t,i),Ge(r,i,null),c(t,u),c(t,a),c(a,h),C(R,_,K),G&&G.m(R,K),C(R,y,K),b=!0,k||(z=[M(i,"click",T),M(i,"keydown",E),M(i,"dblclick",Oe(e[24])),M(a,"click",Oe(I)),M(a,"keydown",D),M(t,"dragstart",L),M(t,"dragover",O),M(t,"dragleave",W),M(t,"drop",J),M(t,"click",q),M(t,"keydown",Y),M(t,"dblclick",H),M(t,"contextmenu",Bl(B))],k=!0)},p(R,K){e=R,j===(j=S(e,K))&&N?N.p(e,K):(N.d(1),N=j(e),N&&(N.c(),N.m(t,o)));const P={};K[0]&1&&(P.kind=Bn(e[44])),r.$set(P),(!b||K[0]&1)&&d!==(d=e[44].title+"")&&U(h,d),(!b||K[0]&8)&&rt(t,"padding-left",e[3]*16+4+"px"),(!b||K[0]&5)&&ge(t,"selected",e[2]===e[44].id),(!b||K[0]&769)&&ge(t,"drop-valid",e[8]===e[44].id&&e[9][e[44].id]),(!b||K[0]&769)&&ge(t,"drop-invalid",e[8]===e[44].id&&!e[9][e[44].id]),K[0]&3&&(v=e[1][e[44].id]&&Ol(e[44])),v?G?(G.p(e,K),K[0]&3&&re(G,1)):(G=On(e),G.c(),re(G,1),G.m(y.parentNode,y)):G&&(ot(),pe(G,1,1,()=>{G=null}),st())},i(R){b||(re(r.$$.fragment,R),re(G),b=!0)},o(R){pe(r.$$.fragment,R),pe(G),b=!1},d(R){R&&(w(t),w(_),w(y)),N.d(),Je(r),G&&G.d(R),k=!1,he(z)}}}function df(l){let e=[],t=new Map,n,o,i,r,u=fe(l[0]);const a=d=>d[44].id;for(let d=0;d0:l.has_children===!0}function Hn(l){const e={};function t(n,o){for(const i of n)e[i.id]=o,i.children&&t(i.children,i.id)}return t(l,""),e}function Un(l){const e=[];function t(n){for(const o of n)e.push(o),o.children&&t(o.children)}return t(l),e}function pf(l){try{return l.dataTransfer.getData("text/plain")}catch{return""}}function mf(l,e,t){let n,o,i,{nodes:r=[]}=e,{expanded:u={}}=e,{selectedNodeId:a=""}=e,{level:d=0}=e,{onSelect:h=void 0}=e,{onToggle:_=void 0}=e,{onContextMenu:v=void 0}=e,{onDrop:y=void 0}=e,b={},k=null,z="",S="";const j=["folder","project","client","document","recipe","case"];Ul(()=>{for(const X of Object.keys(b))clearTimeout(b[X]);k&&clearInterval(k)});function N(X){return j.includes(X.type)}function T(X,Z,ue){if(!X||!Z||Z===X.id||!N(X))return!1;let we=X.id;for(;we;){if(we===Z)return!1;we=ue[we]||""}return!0}function E(X,Z){X.stopPropagation(),X.dataTransfer.effectAllowed="move",X.dataTransfer.setData("text/plain",Z.id),t(21,z=Z.id)}function I(X,Z){X.preventDefault(),X.stopPropagation(),X.dataTransfer.dropEffect="move",S!==Z.id&&t(8,S=Z.id),Wt(Z)&&!u[Z.id]&&!b[Z.id]&&(b[Z.id]=setTimeout(()=>{_&&_(Z.id),delete b[Z.id]},600));const ue=X.currentTarget.closest(".workspace-tree-area");if(ue){const we=ue.getBoundingClientRect(),_e=30;X.clientY-we.top<_e?k||(k=setInterval(()=>{ue.scrollTop-=10},50)):we.bottom-X.clientY<_e?k||(k=setInterval(()=>{ue.scrollTop+=10},50)):k&&(clearInterval(k),k=null)}}function D(X,Z){const ue=X.relatedTarget;ue&&X.currentTarget.contains(ue)||(S===Z.id&&t(8,S=""),b[Z.id]&&(clearTimeout(b[Z.id]),delete b[Z.id]),k&&(clearInterval(k),k=null))}function L(X,Z){X.preventDefault(),X.stopPropagation(),b[Z.id]&&(clearTimeout(b[Z.id]),delete b[Z.id]),k&&(clearInterval(k),k=null);const ue=Un(r),we=Hn(ue),_e=pf(X);if(!T(Z,_e,we)){t(8,S=""),t(21,z="");return}y&&y(_e,Z.id),t(8,S=""),t(21,z="")}function O(){t(8,S=""),t(21,z="");for(const X of Object.keys(b))clearTimeout(b[X]),delete b[X];k&&(clearInterval(k),k=null)}function W(X,Z){X.target.closest(".tree-toggle")||X.target.closest(".tree-icon")||h&&h(Z)}function J(X,Z){Wt(Z)&&_&&_(Z.id)}function q(X,Z){(X.key==="Enter"||X.key===" ")&&(X.preventDefault(),h&&h(Z))}function Y(X,Z){X.stopPropagation(),Wt(Z)&&_&&_(Z.id)}function H(X,Z){(X.key==="Enter"||X.key===" ")&&(X.preventDefault(),X.stopPropagation(),Wt(Z)&&_&&_(Z.id))}function B(X,Z){(X.key==="Enter"||X.key===" ")&&(X.preventDefault(),h&&h(Z))}function G(X,Z,ue){const we={};function _e(be){for(const Ue of be)we[Ue.id]=T(Ue,Z,ue),Ue.children&&_e(Ue.children)}return _e(X),we}function R(X){Ti.call(this,l,X)}const K=X=>_&&_(X.id),P=(X,Z)=>Y(Z,X),V=(X,Z)=>H(Z,X),x=X=>h&&h(X),ce=(X,Z)=>B(Z,X),ee=(X,Z)=>E(Z,X),ne=(X,Z)=>I(Z,X),le=(X,Z)=>D(Z,X),ie=(X,Z)=>L(Z,X),ae=(X,Z)=>W(Z,X),ke=(X,Z)=>q(Z,X),We=(X,Z)=>J(Z,X),Ne=(X,Z)=>v&&v(Z,X);return l.$$set=X=>{"nodes"in X&&t(0,r=X.nodes),"expanded"in X&&t(1,u=X.expanded),"selectedNodeId"in X&&t(2,a=X.selectedNodeId),"level"in X&&t(3,d=X.level),"onSelect"in X&&t(4,h=X.onSelect),"onToggle"in X&&t(5,_=X.onToggle),"onContextMenu"in X&&t(6,v=X.onContextMenu),"onDrop"in X&&t(7,y=X.onDrop)},l.$$.update=()=>{l.$$.dirty[0]&1&&t(23,n=Un(r)),l.$$.dirty[0]&8388608&&t(22,o=Hn(n)),l.$$.dirty[0]&14680064&&t(9,i=G(n,z,o))},[r,u,a,d,h,_,v,y,S,i,E,I,D,L,O,W,J,q,Y,H,B,z,o,n,R,K,P,V,x,ce,ee,ne,le,ie,ae,ke,We,Ne]}class Ui extends $e{constructor(e){super(),xe(this,e,mf,df,Ze,{nodes:0,expanded:1,selectedNodeId:2,level:3,onSelect:4,onToggle:5,onContextMenu:6,onDrop:7},null,[-1,-1])}}function Kn(l){let e,t;return{c(){e=f("div"),t=A(l[4]),s(e,"class","path-info svelte-11u707d")},m(n,o){C(n,e,o),c(e,t)},p(n,o){o&16&&U(t,n[4])},d(n){n&&w(e)}}}function Gn(l){let e,t;return{c(){e=f("div"),t=A(l[3]),s(e,"class","error-msg svelte-11u707d")},m(n,o){C(n,e,o),c(e,t)},p(n,o){o&8&&U(t,n[3])},d(n){n&&w(e)}}}function hf(l){let e,t,n,o,i,r,u,a,d,h,_,v,y,b,k,z,S=m("firstrun.browse")+"",j,N,T,E,I,D,L=(l[2]?m("firstrun.creating"):m("firstrun.create"))+"",O,W,J,q,Y,H,B=l[4]&&Kn(l),G=l[3]&&Gn(l);return{c(){e=f("div"),t=f("div"),n=f("div"),n.textContent="⚒",o=g(),i=f("h1"),i.textContent=`${m("firstrun.title")}`,r=g(),u=f("p"),u.textContent=`${m("firstrun.desc")}`,a=g(),d=f("div"),h=f("label"),h.textContent=`${m("firstrun.pathLabel")}`,_=g(),v=f("div"),y=f("input"),k=g(),z=f("button"),j=A(S),N=g(),B&&B.c(),T=g(),G&&G.c(),E=g(),I=f("div"),D=f("button"),O=A(L),J=g(),q=f("button"),q.textContent=`${m("firstrun.quit")}`,s(n,"class","first-run-logo svelte-11u707d"),s(i,"class","svelte-11u707d"),s(u,"class","first-run-desc svelte-11u707d"),s(h,"class","form-label svelte-11u707d"),s(h,"for","vault-path"),s(y,"id","vault-path"),s(y,"type","text"),s(y,"placeholder",b=l[1]||m("firstrun.defaultPath")),y.disabled=l[2],s(y,"class","svelte-11u707d"),s(z,"class","btn"),z.disabled=l[2],s(v,"class","input-row svelte-11u707d"),s(d,"class","form-group svelte-11u707d"),s(D,"class","btn btn-primary btn-lg svelte-11u707d"),D.disabled=W=!l[0].trim()||l[2],s(q,"class","btn btn-lg svelte-11u707d"),s(I,"class","first-run-actions svelte-11u707d"),s(t,"class","first-run-card svelte-11u707d"),s(e,"class","first-run-screen svelte-11u707d")},m(R,K){C(R,e,K),c(e,t),c(t,n),c(t,o),c(t,i),c(t,r),c(t,u),c(t,a),c(t,d),c(d,h),c(d,_),c(d,v),c(v,y),ye(y,l[0]),c(v,k),c(v,z),c(z,j),c(t,N),B&&B.m(t,null),c(t,T),G&&G.m(t,null),c(t,E),c(t,I),c(I,D),c(D,O),c(I,J),c(I,q),Y||(H=[M(y,"input",l[12]),M(y,"input",l[6]),M(y,"keydown",l[9]),M(z,"click",l[5]),M(D,"click",l[7]),M(q,"click",l[8])],Y=!0)},p(R,[K]){K&2&&b!==(b=R[1]||m("firstrun.defaultPath"))&&s(y,"placeholder",b),K&4&&(y.disabled=R[2]),K&1&&y.value!==R[0]&&ye(y,R[0]),K&4&&(z.disabled=R[2]),R[4]?B?B.p(R,K):(B=Kn(R),B.c(),B.m(t,T)):B&&(B.d(1),B=null),R[3]?G?G.p(R,K):(G=Gn(R),G.c(),G.m(t,E)):G&&(G.d(1),G=null),K&4&&L!==(L=(R[2]?m("firstrun.creating"):m("firstrun.create"))+"")&&U(O,L),K&5&&W!==(W=!R[0].trim()||R[2])&&(D.disabled=W)},i:$,o:$,d(R){R&&w(e),B&&B.d(),G&&G.d(),Y=!1,he(H)}}}function tl(l,...e){try{if(window.go&&window.go.main&&window.go.main.App){const t=window.go.main.App[l];if(typeof t=="function")return t(...e)}}catch(t){console.error("Wails error:",l,t)}return Promise.reject(new Error("Wails not connected: "+l))}function _f(l,e,t){let{onComplete:n=null}=e,{onQuit:o=null}=e,i="",r="",u=!1,a="",d="",h=null;async function _(){try{const j=await tl("GetDefaultVaultPath");t(1,r=j||""),t(0,i=r||""),i&&await y()}catch{t(1,r="")}}_();async function v(){try{const j=await tl("PickDirectory");j&&(t(0,i=j),await y())}catch(j){t(3,a=String(j))}}async function y(){if(!i||!i.trim()){t(4,d=""),h=null;return}try{h=await tl("CheckVaultPath",i.trim()),h&&t(4,d=h.description)}catch{t(4,d=""),h=null}}async function b(){if(!(!i||!i.trim())){if(t(2,u=!0),t(3,a=""),h&&!h.writable){t(3,a=m("firstrun.errorNoWrite")),t(2,u=!1);return}try{const j=await tl("CreateVault",i.trim());j&&j.status==="ready"&&n&&n(j)}catch(j){t(3,a=String(j))}t(2,u=!1)}}function k(){o&&o()}function z(j){j.key==="Enter"&&!u&&i.trim()&&b()}function S(){i=this.value,t(0,i)}return l.$$set=j=>{"onComplete"in j&&t(10,n=j.onComplete),"onQuit"in j&&t(11,o=j.onQuit)},[i,r,u,a,d,v,y,b,k,z,n,o,S]}class vf extends $e{constructor(e){super(),xe(this,e,_f,hf,Ze,{onComplete:10,onQuit:11})}}function Jn(l){let e,t;return{c(){e=f("div"),t=A(l[2]),s(e,"class","error-msg svelte-s3o8c3")},m(n,o){C(n,e,o),c(e,t)},p(n,o){o&4&&U(t,n[2])},d(n){n&&w(e)}}}function qn(l){let e,t,n,o,i,r,u,a,d=m("common.yes")+"",h,_,v,y,b;return{c(){e=f("div"),t=f("div"),n=f("h3"),n.textContent=`${m("recovery.createConfirmTitle")}`,o=g(),i=f("p"),i.textContent=`${m("recovery.createConfirm")}`,r=g(),u=f("div"),a=f("button"),h=A(d),_=g(),v=f("button"),v.textContent=`${m("common.cancel")}`,s(n,"class","svelte-s3o8c3"),s(i,"class","modal-desc svelte-s3o8c3"),s(a,"class","btn btn-primary"),a.disabled=l[1],s(v,"class","btn"),s(u,"class","modal-actions svelte-s3o8c3"),s(t,"class","modal svelte-s3o8c3"),s(e,"class","modal-overlay svelte-s3o8c3"),s(e,"role","button"),s(e,"tabindex","0")},m(k,z){C(k,e,z),c(e,t),c(t,n),c(t,o),c(t,i),c(t,r),c(t,u),c(u,a),c(a,h),c(u,_),c(u,v),y||(b=[M(a,"click",l[6]),M(v,"click",l[7]),M(e,"click",pt(l[7])),M(e,"keydown",l[11])],y=!0)},p(k,z){z&2&&(a.disabled=k[1])},d(k){k&&w(e),y=!1,he(b)}}}function gf(l){let e,t,n,o,i,r,u,a,d,h=(l[0]||"—")+"",_,v,y,b,k,z=m("recovery.choose")+"",S,j,N,T=m("recovery.create")+"",E,I,D,L,O,W,J,q=l[2]&&Jn(l),Y=l[3]&&qn(l);return{c(){e=f("div"),t=f("div"),n=f("div"),n.textContent="⚠",o=g(),i=f("h1"),i.textContent=`${m("recovery.title")}`,r=g(),u=f("p"),u.textContent=`${m("recovery.expected")}:`,a=g(),d=f("code"),_=A(h),v=g(),q&&q.c(),y=g(),b=f("div"),k=f("button"),S=A(z),j=g(),N=f("button"),E=A(T),I=g(),D=f("button"),D.textContent=`${m("recovery.quit")}`,L=g(),Y&&Y.c(),O=it(),s(n,"class","recovery-icon svelte-s3o8c3"),s(i,"class","svelte-s3o8c3"),s(u,"class","recovery-desc svelte-s3o8c3"),s(d,"class","recovery-path svelte-s3o8c3"),s(k,"class","btn btn-primary btn-lg svelte-s3o8c3"),k.disabled=l[1],s(N,"class","btn btn-lg svelte-s3o8c3"),N.disabled=l[1],s(D,"class","btn btn-lg svelte-s3o8c3"),s(b,"class","recovery-actions svelte-s3o8c3"),s(t,"class","recovery-card svelte-s3o8c3"),s(e,"class","recovery-screen svelte-s3o8c3")},m(H,B){C(H,e,B),c(e,t),c(t,n),c(t,o),c(t,i),c(t,r),c(t,u),c(t,a),c(t,d),c(d,_),c(t,v),q&&q.m(t,null),c(t,y),c(t,b),c(b,k),c(k,S),c(b,j),c(b,N),c(N,E),c(b,I),c(b,D),C(H,L,B),Y&&Y.m(H,B),C(H,O,B),W||(J=[M(k,"click",l[4]),M(N,"click",l[5]),M(D,"click",l[8])],W=!0)},p(H,[B]){B&1&&h!==(h=(H[0]||"—")+"")&&U(_,h),H[2]?q?q.p(H,B):(q=Jn(H),q.c(),q.m(t,y)):q&&(q.d(1),q=null),B&2&&(k.disabled=H[1]),B&2&&(N.disabled=H[1]),H[3]?Y?Y.p(H,B):(Y=qn(H),Y.c(),Y.m(O.parentNode,O)):Y&&(Y.d(1),Y=null)},i:$,o:$,d(H){H&&(w(e),w(L),w(O)),q&&q.d(),Y&&Y.d(H),W=!1,he(J)}}}function Fl(l,...e){try{if(window.go&&window.go.main&&window.go.main.App){const t=window.go.main.App[l];if(typeof t=="function")return t(...e)}}catch(t){console.error("Wails error:",l,t)}return Promise.reject(new Error("Wails not connected: "+l))}function yf(l,e,t){let{vaultPath:n=""}=e,{onComplete:o=null}=e,{onQuit:i=null}=e,r=!1,u="",a=!1;async function d(){try{const k=await Fl("PickDirectory");if(!k)return;t(1,r=!0),t(2,u="");const z=await Fl("OpenVault",k);z&&z.status==="ready"&&o&&o(z)}catch(k){t(2,u=String(k))}t(1,r=!1)}function h(){t(3,a=!0)}async function _(){t(3,a=!1),t(1,r=!0),t(2,u="");try{const k=await Fl("CreateVault",n);k&&k.status==="ready"&&o&&o(k)}catch(k){t(2,u=String(k))}t(1,r=!1)}function v(){t(3,a=!1)}function y(){i&&i()}const b=k=>k.key==="Enter"&&v();return l.$$set=k=>{"vaultPath"in k&&t(0,n=k.vaultPath),"onComplete"in k&&t(9,o=k.onComplete),"onQuit"in k&&t(10,i=k.onQuit)},[n,r,u,a,d,h,_,v,y,o,i,b]}class bf extends $e{constructor(e){super(),xe(this,e,yf,gf,Ze,{vaultPath:0,onComplete:9,onQuit:10})}}function Yn(l,e,t){const n=l.slice();return n[5]=e[t],n}function kf(l){let e,t,n;return{c(){e=Q("path"),t=Q("path"),n=Q("path"),s(e,"d","M5 4h12l2 2v14H5z"),s(t,"d","M8 4v6h8V4"),s(n,"d","M8 20v-6h8v6")},m(o,i){C(o,e,i),C(o,t,i),C(o,n,i)},d(o){o&&(w(e),w(t),w(n))}}}function zf(l){let e,t,n,o;return{c(){e=Q("path"),t=Q("path"),n=Q("path"),o=Q("path"),s(e,"d","M20 11a8 8 0 0 0-14-4l-2 2"),s(t,"d","M4 5v4h4"),s(n,"d","M4 13a8 8 0 0 0 14 4l2-2"),s(o,"d","M20 19v-4h-4")},m(i,r){C(i,e,r),C(i,t,r),C(i,n,r),C(i,o,r)},d(i){i&&(w(e),w(t),w(n),w(o))}}}function wf(l){let e;return{c(){e=Q("path"),s(e,"d","M4 19V9M10 19V5M16 19v-7M22 19H2")},m(t,n){C(t,e,n)},d(t){t&&w(e)}}}function Cf(l){let e;return{c(){e=Q("path"),s(e,"d","M3 6h6l2 2h10v10a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V6z")},m(t,n){C(t,e,n)},d(t){t&&w(e)}}}function Sf(l){let e,t;return{c(){e=Q("path"),t=Q("path"),s(e,"d","M9 3v5M15 3v5M7 8h10v3a5 5 0 0 1-10 0V8z"),s(t,"d","M12 16v5")},m(n,o){C(n,e,o),C(n,t,o)},d(n){n&&(w(e),w(t))}}}function jf(l){let e,t;return{c(){e=Q("rect"),t=Q("path"),s(e,"x","4"),s(e,"y","3"),s(e,"width","16"),s(e,"height","18"),s(e,"rx","2"),s(t,"d","M8 7h8M8 11h8M8 15h5")},m(n,o){C(n,e,o),C(n,t,o)},d(n){n&&(w(e),w(t))}}}function Ef(l){let e,t,n;return{c(){e=Q("path"),t=Q("path"),n=Q("path"),s(e,"d","M3 10.5 12 3l9 7.5"),s(t,"d","M5 9.5V21h14V9.5"),s(n,"d","M10 21v-6h4v6")},m(o,i){C(o,e,i),C(o,t,i),C(o,n,i)},d(o){o&&(w(e),w(t),w(n))}}}function Tf(l){let e,t;return{c(){e=Q("circle"),t=Q("path"),s(e,"cx","12"),s(e,"cy","12"),s(e,"r","3"),s(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(n,o){C(n,e,o),C(n,t,o)},d(n){n&&(w(e),w(t))}}}function Qn(l){let e,t,n,o,i,r,u,a;function d(y,b){if(y[5].id==="general")return Tf;if(y[5].id==="workspace")return Ef;if(y[5].id==="templates")return jf;if(y[5].id==="plugins")return Sf;if(y[5].id==="files")return Cf;if(y[5].id==="activity")return wf;if(y[5].id==="sync")return zf;if(y[5].id==="backup")return kf}let h=d(l),_=h&&h(l);function v(){return l[4](l[5])}return{c(){e=f("button"),t=f("span"),n=Q("svg"),_&&_.c(),o=g(),i=f("span"),i.textContent=`${l[5].label}`,r=g(),s(n,"width","16"),s(n,"height","16"),s(n,"viewBox","0 0 24 24"),s(n,"fill","none"),s(n,"stroke","currentColor"),s(n,"stroke-width","1.8"),s(n,"stroke-linecap","round"),s(n,"stroke-linejoin","round"),s(n,"aria-hidden","true"),s(t,"class","settings-nav-icon svelte-1uolm3f"),s(i,"class","settings-nav-label svelte-1uolm3f"),s(e,"class","settings-nav-item svelte-1uolm3f"),ge(e,"active",l[0]===l[5].id),ge(e,"disabled",l[5].id==="plugins"||l[5].id==="files"||l[5].id==="activity"||l[5].id==="backup")},m(y,b){C(y,e,b),c(e,t),c(t,n),_&&_.m(n,null),c(e,o),c(e,i),c(e,r),u||(a=M(e,"click",v),u=!0)},p(y,b){l=y,b&3&&ge(e,"active",l[0]===l[5].id)},d(y){y&&w(e),_&&_.d(),u=!1,a()}}}function Nf(l){let e,t=fe(l[1]),n=[];for(let o=0;or(a.id);return l.$$set=a=>{"activeSection"in a&&t(0,n=a.activeSection),"onSelect"in a&&t(3,o=a.onSelect)},[n,i,r,o,u]}class Mf extends $e{constructor(e){super(),xe(this,e,Df,Nf,Ze,{activeSection:0,onSelect:3})}}function Xn(l){let e;return{c(){e=f("div"),e.textContent=`${m("settings.saved")}`,s(e,"class","save-notice svelte-1e2uhdh")},m(t,n){C(t,e,n)},d(t){t&&w(e)}}}function If(l){let e,t,n,o,i,r,u,a,d,h,_,v,y,b,k,z,S,j,N,T,E,I,D,L,O,W,J,q,Y,H,B,G,R,K=l[1]&&Xn();return{c(){e=f("div"),t=f("h2"),t.textContent=`${m("settings.general")}`,n=g(),o=f("p"),o.textContent=`${m("settings.generalDesc")}`,i=g(),r=f("div"),u=f("h3"),u.textContent=`${m("settings.appearance")}`,a=g(),d=f("div"),h=f("label"),_=f("span"),_.textContent=`${m("settings.theme")}`,v=g(),y=f("select"),b=f("option"),b.textContent=`${m("settings.themeSystem")}`,k=f("option"),k.textContent=`${m("settings.themeLight")} (${m("settings.langSoon")})`,z=f("option"),z.textContent=`${m("settings.themeDark")} (${m("settings.langSoon")})`,S=g(),j=f("div"),N=f("h3"),N.textContent=`${m("settings.localization")}`,T=g(),E=f("div"),I=f("label"),D=f("span"),D.textContent=`${m("settings.language")}`,L=g(),O=f("select"),W=f("option"),W.textContent=`${m("settings.langRu")}`,J=f("option"),J.textContent=`${m("settings.langEn")} (${m("settings.langSoon")})`,q=g(),Y=f("div"),K&&K.c(),H=g(),B=f("button"),B.textContent=`${m("settings.save")}`,s(t,"class","svelte-1e2uhdh"),s(o,"class","section-desc svelte-1e2uhdh"),s(u,"class","card-title svelte-1e2uhdh"),s(_,"class","label-text svelte-1e2uhdh"),b.__value="system",ye(b,b.__value),k.__value="light",ye(k,k.__value),k.disabled=!0,z.__value="dark",ye(z,z.__value),z.disabled=!0,l[0]===void 0&&St(()=>l[5].call(y)),s(d,"class","form-group svelte-1e2uhdh"),s(r,"class","settings-card svelte-1e2uhdh"),s(N,"class","card-title svelte-1e2uhdh"),s(D,"class","label-text svelte-1e2uhdh"),W.__value="ru",ye(W,W.__value),J.__value="en",ye(J,J.__value),O.disabled=!0,s(E,"class","form-group svelte-1e2uhdh"),s(j,"class","settings-card svelte-1e2uhdh"),s(B,"class","btn btn-primary"),s(Y,"class","settings-actions svelte-1e2uhdh"),s(e,"class","settings-section svelte-1e2uhdh")},m(P,V){C(P,e,V),c(e,t),c(e,n),c(e,o),c(e,i),c(e,r),c(r,u),c(r,a),c(r,d),c(d,h),c(h,_),c(h,v),c(h,y),c(y,b),c(y,k),c(y,z),mt(y,l[0],!0),c(e,S),c(e,j),c(j,N),c(j,T),c(j,E),c(E,I),c(I,D),c(I,L),c(I,O),c(O,W),c(O,J),c(e,q),c(e,Y),K&&K.m(Y,null),c(Y,H),c(Y,B),G||(R=[M(y,"change",l[5]),M(B,"click",l[2])],G=!0)},p(P,[V]){V&1&&mt(y,P[0]),P[1]?K||(K=Xn(),K.c(),K.m(Y,H)):K&&(K.d(1),K=null)},i:$,o:$,d(P){P&&w(e),K&&K.d(),G=!1,he(R)}}}function Af(l,e,t){let{appConfig:n=null}=e,{onSave:o=null}=e,i="system",r=!1;function u(){n&&t(0,i=n.theme||"system")}async function a(){n&&(t(3,n.theme=i,n),o&&await o(n),t(1,r=!0),setTimeout(()=>t(1,r=!1),2e3))}function d(){i=nl(this),t(0,i)}return l.$$set=h=>{"appConfig"in h&&t(3,n=h.appConfig),"onSave"in h&&t(4,o=h.onSave)},l.$$.update=()=>{l.$$.dirty&8&&n&&u()},[i,r,a,n,o,d]}class Ff extends $e{constructor(e){super(),xe(this,e,Af,If,Ze,{appConfig:3,onSave:4})}}function Zn(l){let e,t;return{c(){e=f("div"),t=A(l[1]),s(e,"class","notice svelte-1zbky3")},m(n,o){C(n,e,o),c(e,t)},p(n,o){o&2&&U(t,n[1])},d(n){n&&w(e)}}}function Pf(l){let e;return{c(){e=f("p"),e.textContent=`${m("settings.noVaultInfo")}`,s(e,"class","no-data svelte-1zbky3")},m(t,n){C(t,e,n)},p:$,d(t){t&&w(e)}}}function Lf(l){let e,t,n,o,i,r=l[0].path+"",u,a,d,h,_,v,y=l[0].dbPath+"",b,k,z,S=l[0].nodeCount!==void 0&&xn(l),j=l[0].fileCount!==void 0&&$n(l);return{c(){e=f("div"),t=f("div"),n=f("span"),n.textContent=`${m("settings.vaultPath")}`,o=g(),i=f("span"),u=A(r),a=g(),d=f("div"),h=f("span"),h.textContent="DB",_=g(),v=f("span"),b=A(y),k=g(),S&&S.c(),z=g(),j&&j.c(),s(n,"class","info-label svelte-1zbky3"),s(i,"class","info-value mono svelte-1zbky3"),s(t,"class","info-row svelte-1zbky3"),s(h,"class","info-label svelte-1zbky3"),s(v,"class","info-value mono small svelte-1zbky3"),s(d,"class","info-row svelte-1zbky3"),s(e,"class","vault-info svelte-1zbky3")},m(N,T){C(N,e,T),c(e,t),c(t,n),c(t,o),c(t,i),c(i,u),c(e,a),c(e,d),c(d,h),c(d,_),c(d,v),c(v,b),c(e,k),S&&S.m(e,null),c(e,z),j&&j.m(e,null)},p(N,T){T&1&&r!==(r=N[0].path+"")&&U(u,r),T&1&&y!==(y=N[0].dbPath+"")&&U(b,y),N[0].nodeCount!==void 0?S?S.p(N,T):(S=xn(N),S.c(),S.m(e,z)):S&&(S.d(1),S=null),N[0].fileCount!==void 0?j?j.p(N,T):(j=$n(N),j.c(),j.m(e,null)):j&&(j.d(1),j=null)},d(N){N&&w(e),S&&S.d(),j&&j.d()}}}function xn(l){let e,t,n,o,i=l[0].nodeCount+"",r;return{c(){e=f("div"),t=f("span"),t.textContent="Nodes",n=g(),o=f("span"),r=A(i),s(t,"class","info-label svelte-1zbky3"),s(o,"class","info-value svelte-1zbky3"),s(e,"class","info-row svelte-1zbky3")},m(u,a){C(u,e,a),c(e,t),c(e,n),c(e,o),c(o,r)},p(u,a){a&1&&i!==(i=u[0].nodeCount+"")&&U(r,i)},d(u){u&&w(e)}}}function $n(l){let e,t,n,o,i=l[0].fileCount+"",r;return{c(){e=f("div"),t=f("span"),t.textContent="Files",n=g(),o=f("span"),r=A(i),s(t,"class","info-label svelte-1zbky3"),s(o,"class","info-value svelte-1zbky3"),s(e,"class","info-row svelte-1zbky3")},m(u,a){C(u,e,a),c(e,t),c(e,n),c(e,o),c(o,r)},p(u,a){a&1&&i!==(i=u[0].fileCount+"")&&U(r,i)},d(u){u&&w(e)}}}function Rf(l){let e,t,n,o,i,r,u,a,d,h,_,v,y,b,k,z,S=l[1]&&Zn(l);function j(E,I){return E[0]?Lf:Pf}let N=j(l),T=N(l);return{c(){e=f("div"),t=f("h2"),t.textContent=`${m("settings.workspace")}`,n=g(),o=f("p"),o.textContent=`${m("settings.workspaceDesc")}`,i=g(),S&&S.c(),r=g(),u=f("div"),T.c(),a=g(),d=f("div"),h=f("button"),h.textContent=`${m("settings.openVault")}`,_=g(),v=f("button"),v.textContent=`${m("settings.changeVault")}`,y=g(),b=f("button"),b.textContent=`${m("settings.checkIntegrity")}`,s(t,"class","svelte-1zbky3"),s(o,"class","section-desc svelte-1zbky3"),s(u,"class","settings-card svelte-1zbky3"),s(h,"class","btn svelte-1zbky3"),s(v,"class","btn svelte-1zbky3"),s(b,"class","btn svelte-1zbky3"),s(d,"class","workspace-actions svelte-1zbky3"),s(e,"class","settings-section svelte-1zbky3")},m(E,I){C(E,e,I),c(e,t),c(e,n),c(e,o),c(e,i),S&&S.m(e,null),c(e,r),c(e,u),T.m(u,null),c(e,a),c(e,d),c(d,h),c(d,_),c(d,v),c(d,y),c(d,b),k||(z=[M(h,"click",l[2]),M(v,"click",l[4]),M(b,"click",l[3])],k=!0)},p(E,[I]){E[1]?S?S.p(E,I):(S=Zn(E),S.c(),S.m(e,r)):S&&(S.d(1),S=null),N===(N=j(E))&&T?T.p(E,I):(T.d(1),T=N(E),T&&(T.c(),T.m(u,null)))},i:$,o:$,d(E){E&&w(e),S&&S.d(),T.d(),k=!1,he(z)}}}function At(l,...e){try{if(window.go&&window.go.main&&window.go.main.App){const t=window.go.main.App[l];if(typeof t=="function")return t(...e)}}catch(t){console.error("Wails error:",l,t)}return Promise.reject(new Error("Wails not connected: "+l))}function Vf(l,e,t){let{onRefresh:n=null}=e,o=null,i="";async function r(){try{t(0,o=await At("GetVaultInfo"))}catch{t(0,o=null)}}r();async function u(){try{await At("OpenVaultFolder")}catch(h){t(1,i=String(h))}}async function a(){try{const h=await At("VaultCheck");h.healthy?t(1,i="Vault healthy"):t(1,i="Issues found: "+(h.errors||[]).join("; "))}catch(h){t(1,i=String(h))}}async function d(){try{const h=await At("PickDirectory");if(!h)return;const _=await At("OpenVault",h);_&&_.status==="ready"&&(t(0,o=await At("GetVaultInfo")),n&&n())}catch(h){t(1,i=String(h))}}return l.$$set=h=>{"onRefresh"in h&&t(5,n=h.onRefresh)},[o,i,u,a,d,n]}class Of extends $e{constructor(e){super(),xe(this,e,Vf,Rf,Ze,{onRefresh:5})}}function eo(l,e,t){const n=l.slice();return n[6]=e[t],n}function Wf(l){let e,t=fe(l[0]),n=[];for(let o=0;ou(d);return l.$$set=d=>{"onRefresh"in d&&t(3,n=d.onRefresh)},[o,i,u,n,a]}class Gf extends $e{constructor(e){super(),xe(this,e,Kf,Uf,Ze,{onRefresh:3})}}function Jf(l){let e,t,n,o,i,r,u,a;return{c(){e=f("div"),t=f("h2"),t.textContent=`${m("settings.plugins")}`,n=g(),o=f("p"),o.textContent=`${m("settings.noPlugins")}`,i=g(),r=f("button"),r.textContent=`${m("settings.openPluginsDir")}`,s(t,"class","svelte-8jch95"),s(o,"class","section-desc svelte-8jch95"),s(r,"class","btn"),s(e,"class","settings-section svelte-8jch95")},m(d,h){C(d,e,h),c(e,t),c(e,n),c(e,o),c(e,i),c(e,r),u||(a=M(r,"click",Yf),u=!0)},p:$,i:$,o:$,d(d){d&&w(e),u=!1,a()}}}function qf(l,...e){try{if(window.go&&window.go.main&&window.go.main.App){const t=window.go.main.App[l];if(typeof t=="function")return t(...e)}}catch(t){console.error("Wails error:",l,t)}return Promise.reject(new Error("Wails not connected: "+l))}async function Yf(){try{await qf("OpenPluginsFolder")}catch{}}class Qf extends $e{constructor(e){super(),xe(this,e,null,Jf,Ze,{})}}function Xf(l){let e,t,n,o;return{c(){e=f("div"),t=f("h2"),t.textContent=`${m("settings.files")}`,n=g(),o=f("p"),o.textContent=`${m("settings.filesStub")}`,s(t,"class","svelte-19bo7bn"),s(o,"class","section-desc svelte-19bo7bn"),s(e,"class","settings-section svelte-19bo7bn")},m(i,r){C(i,e,r),c(e,t),c(e,n),c(e,o)},p:$,i:$,o:$,d(i){i&&w(e)}}}class Zf extends $e{constructor(e){super(),xe(this,e,null,Xf,Ze,{})}}function xf(l){let e,t,n,o;return{c(){e=f("div"),t=f("h2"),t.textContent=`${m("settings.activity")}`,n=g(),o=f("p"),o.textContent=`${m("settings.activityStub")}`,s(t,"class","svelte-19bo7bn"),s(o,"class","section-desc svelte-19bo7bn"),s(e,"class","settings-section svelte-19bo7bn")},m(i,r){C(i,e,r),c(e,t),c(e,n),c(e,o)},p:$,i:$,o:$,d(i){i&&w(e)}}}class $f extends $e{constructor(e){super(),xe(this,e,null,xf,Ze,{})}}function no(l){let e,t;return{c(){e=f("div"),t=A(l[2]),s(e,"class","error-msg svelte-1fx1e1e")},m(n,o){C(n,e,o),c(e,t)},p(n,o){o[0]&4&&U(t,n[2])},d(n){n&&w(e)}}}function oo(l){let e,t;return{c(){e=f("div"),t=A(l[3]),s(e,"class","result-msg svelte-1fx1e1e"),ge(e,"warning",l[4]==="warning")},m(n,o){C(n,e,o),c(e,t)},p(n,o){o[0]&8&&U(t,n[3]),o[0]&16&&ge(e,"warning",n[4]==="warning")},d(n){n&&w(e)}}}function ed(l){let e,t,n,o,i,r,u,a,d,h,_,v,y,b,k,z,S,j,N,T,E,I,D=m("settings.checkConnection")+"",L,O,W,J,q=m("common.connect")+"",Y,H,B,G,R,K=l[11]!==null&&so(l);return{c(){e=f("div"),t=f("div"),n=f("div"),o=f("label"),i=f("span"),i.textContent=`${m("settings.serverUrl")}`,r=g(),u=f("input"),a=g(),d=f("div"),h=f("label"),_=f("span"),_.textContent=`${m("sync.username")}`,v=g(),y=f("input"),b=g(),k=f("div"),z=f("label"),S=f("span"),S.textContent=`${m("sync.password")}`,j=g(),N=f("input"),T=g(),E=f("div"),I=f("button"),L=A(D),W=g(),J=f("button"),Y=A(q),B=g(),K&&K.c(),s(i,"class","label-text"),s(u,"type","text"),s(u,"placeholder","https://example.com"),s(n,"class","form-group svelte-1fx1e1e"),s(_,"class","label-text"),s(y,"type","text"),s(d,"class","form-group svelte-1fx1e1e"),s(S,"class","label-text"),s(N,"type","password"),s(k,"class","form-group svelte-1fx1e1e"),s(I,"class","btn"),I.disabled=O=l[1]||!l[5],s(J,"class","btn btn-primary"),J.disabled=H=l[1]||!l[5]||!l[6]||!l[7],s(E,"class","sync-setup-actions svelte-1fx1e1e"),s(t,"class","sync-setup svelte-1fx1e1e"),s(e,"class","settings-card svelte-1fx1e1e")},m(P,V){C(P,e,V),c(e,t),c(t,n),c(n,o),c(o,i),c(o,r),c(o,u),ye(u,l[5]),c(t,a),c(t,d),c(d,h),c(h,_),c(h,v),c(h,y),ye(y,l[6]),c(t,b),c(t,k),c(k,z),c(z,S),c(z,j),c(z,N),ye(N,l[7]),c(t,T),c(t,E),c(E,I),c(I,L),c(E,W),c(E,J),c(J,Y),c(t,B),K&&K.m(t,null),G||(R=[M(u,"input",l[23]),M(y,"input",l[24]),M(N,"input",l[25]),M(I,"click",l[12]),M(J,"click",l[13])],G=!0)},p(P,V){V[0]&32&&u.value!==P[5]&&ye(u,P[5]),V[0]&64&&y.value!==P[6]&&ye(y,P[6]),V[0]&128&&N.value!==P[7]&&ye(N,P[7]),V[0]&34&&O!==(O=P[1]||!P[5])&&(I.disabled=O),V[0]&226&&H!==(H=P[1]||!P[5]||!P[6]||!P[7])&&(J.disabled=H),P[11]!==null?K?K.p(P,V):(K=so(P),K.c(),K.m(t,null)):K&&(K.d(1),K=null)},d(P){P&&w(e),K&&K.d(),G=!1,he(R)}}}function td(l){let e,t,n,o,i,r,u=l[20](l[0].lastStatus)+"",a,d,h,_,v,y,b,k,z,S=m("settings.syncNow")+"",j,N,T,E=m("settings.disconnect")+"",I,D,L,O=m("settings.resetKey")+"",W,J,q,Y,H,B,G,R,K,P,V,x,ce=l[0].serverUrl&&io(l),ee=l[0].deviceName&&co(l),ne=l[0].deviceId&&ro(l),le=l[0].lastSyncAt&&ao(l),ie=l[0].lastError&&uo(l);return{c(){e=f("div"),t=f("div"),n=f("div"),o=f("span"),o.textContent=`${m("settings.status")}`,i=g(),r=f("span"),a=A(u),d=g(),ce&&ce.c(),h=g(),ee&&ee.c(),_=g(),ne&&ne.c(),v=g(),le&&le.c(),y=g(),ie&&ie.c(),b=g(),k=f("div"),z=f("button"),j=A(S),N=g(),T=f("button"),I=A(E),D=g(),L=f("button"),W=A(O),J=g(),q=f("div"),Y=f("label"),H=f("span"),H.textContent=`${m("sync.interval")}`,B=g(),G=f("div"),R=f("input"),K=g(),P=f("button"),P.textContent=`${m("common.save")}`,s(o,"class","info-label svelte-1fx1e1e"),s(r,"class","info-value svelte-1fx1e1e"),ge(r,"status-ok",l[0].lastStatus==="connected"),ge(r,"status-err",l[0].lastStatus==="error"||l[0].lastStatus==="revoked"),s(n,"class","info-row svelte-1fx1e1e"),s(t,"class","sync-info svelte-1fx1e1e"),s(e,"class","settings-card svelte-1fx1e1e"),s(z,"class","btn btn-primary"),z.disabled=l[1],s(T,"class","btn"),T.disabled=l[1],s(L,"class","btn"),L.disabled=l[1],s(k,"class","sync-actions svelte-1fx1e1e"),s(H,"class","label-text"),s(R,"type","number"),s(R,"min","0"),s(R,"placeholder","0"),s(R,"class","svelte-1fx1e1e"),s(P,"class","btn btn-sm"),s(G,"class","interval-row svelte-1fx1e1e"),s(q,"class","sync-interval svelte-1fx1e1e")},m(ae,ke){C(ae,e,ke),c(e,t),c(t,n),c(n,o),c(n,i),c(n,r),c(r,a),c(t,d),ce&&ce.m(t,null),c(t,h),ee&&ee.m(t,null),c(t,_),ne&&ne.m(t,null),c(t,v),le&&le.m(t,null),c(t,y),ie&&ie.m(t,null),C(ae,b,ke),C(ae,k,ke),c(k,z),c(z,j),c(k,N),c(k,T),c(T,I),c(k,D),c(k,L),c(L,W),C(ae,J,ke),C(ae,q,ke),c(q,Y),c(Y,H),c(Y,B),c(Y,G),c(G,R),ye(R,l[8]),c(G,K),c(G,P),V||(x=[M(z,"click",l[14]),M(T,"click",l[16]),M(L,"click",l[18]),M(R,"input",l[22]),M(P,"click",l[15])],V=!0)},p(ae,ke){ke[0]&1&&u!==(u=ae[20](ae[0].lastStatus)+"")&&U(a,u),ke[0]&1&&ge(r,"status-ok",ae[0].lastStatus==="connected"),ke[0]&1&&ge(r,"status-err",ae[0].lastStatus==="error"||ae[0].lastStatus==="revoked"),ae[0].serverUrl?ce?ce.p(ae,ke):(ce=io(ae),ce.c(),ce.m(t,h)):ce&&(ce.d(1),ce=null),ae[0].deviceName?ee?ee.p(ae,ke):(ee=co(ae),ee.c(),ee.m(t,_)):ee&&(ee.d(1),ee=null),ae[0].deviceId?ne?ne.p(ae,ke):(ne=ro(ae),ne.c(),ne.m(t,v)):ne&&(ne.d(1),ne=null),ae[0].lastSyncAt?le?le.p(ae,ke):(le=ao(ae),le.c(),le.m(t,y)):le&&(le.d(1),le=null),ae[0].lastError?ie?ie.p(ae,ke):(ie=uo(ae),ie.c(),ie.m(t,null)):ie&&(ie.d(1),ie=null),ke[0]&2&&(z.disabled=ae[1]),ke[0]&2&&(T.disabled=ae[1]),ke[0]&2&&(L.disabled=ae[1]),ke[0]&256&&cl(R.value)!==ae[8]&&ye(R,ae[8])},d(ae){ae&&(w(e),w(b),w(k),w(J),w(q)),ce&&ce.d(),ee&&ee.d(),ne&&ne.d(),le&&le.d(),ie&&ie.d(),V=!1,he(x)}}}function so(l){let e,t=(l[11]?m("common.test")+" OK":m("error.generic"))+"",n;return{c(){e=f("div"),n=A(t),s(e,"class","connection-result svelte-1fx1e1e"),ge(e,"ok",l[11]),ge(e,"fail",!l[11])},m(o,i){C(o,e,i),c(e,n)},p(o,i){i[0]&2048&&t!==(t=(o[11]?m("common.test")+" OK":m("error.generic"))+"")&&U(n,t),i[0]&2048&&ge(e,"ok",o[11]),i[0]&2048&&ge(e,"fail",!o[11])},d(o){o&&w(e)}}}function io(l){let e,t,n,o,i=l[0].serverUrl+"",r;return{c(){e=f("div"),t=f("span"),t.textContent=`${m("settings.serverUrl")}`,n=g(),o=f("span"),r=A(i),s(t,"class","info-label svelte-1fx1e1e"),s(o,"class","info-value mono svelte-1fx1e1e"),s(e,"class","info-row svelte-1fx1e1e")},m(u,a){C(u,e,a),c(e,t),c(e,n),c(e,o),c(o,r)},p(u,a){a[0]&1&&i!==(i=u[0].serverUrl+"")&&U(r,i)},d(u){u&&w(e)}}}function co(l){let e,t,n,o,i=l[0].deviceName+"",r;return{c(){e=f("div"),t=f("span"),t.textContent=`${m("settings.deviceName")}`,n=g(),o=f("span"),r=A(i),s(t,"class","info-label svelte-1fx1e1e"),s(o,"class","info-value svelte-1fx1e1e"),s(e,"class","info-row svelte-1fx1e1e")},m(u,a){C(u,e,a),c(e,t),c(e,n),c(e,o),c(o,r)},p(u,a){a[0]&1&&i!==(i=u[0].deviceName+"")&&U(r,i)},d(u){u&&w(e)}}}function ro(l){let e,t,n,o,i=l[0].deviceId+"",r;return{c(){e=f("div"),t=f("span"),t.textContent=`${m("settings.deviceId")}`,n=g(),o=f("span"),r=A(i),s(t,"class","info-label svelte-1fx1e1e"),s(o,"class","info-value mono svelte-1fx1e1e"),s(e,"class","info-row svelte-1fx1e1e")},m(u,a){C(u,e,a),c(e,t),c(e,n),c(e,o),c(o,r)},p(u,a){a[0]&1&&i!==(i=u[0].deviceId+"")&&U(r,i)},d(u){u&&w(e)}}}function ao(l){let e,t,n,o,i=l[0].lastSyncAt+"",r;return{c(){e=f("div"),t=f("span"),t.textContent=`${m("settings.lastSync")}`,n=g(),o=f("span"),r=A(i),s(t,"class","info-label svelte-1fx1e1e"),s(o,"class","info-value svelte-1fx1e1e"),s(e,"class","info-row svelte-1fx1e1e")},m(u,a){C(u,e,a),c(e,t),c(e,n),c(e,o),c(o,r)},p(u,a){a[0]&1&&i!==(i=u[0].lastSyncAt+"")&&U(r,i)},d(u){u&&w(e)}}}function uo(l){let e,t,n,o,i=l[0].lastError+"",r;return{c(){e=f("div"),t=f("span"),t.textContent=`${m("settings.lastError")}`,n=g(),o=f("span"),r=A(i),s(t,"class","info-label svelte-1fx1e1e"),s(o,"class","info-value error svelte-1fx1e1e"),s(e,"class","info-row svelte-1fx1e1e")},m(u,a){C(u,e,a),c(e,t),c(e,n),c(e,o),c(o,r)},p(u,a){a[0]&1&&i!==(i=u[0].lastError+"")&&U(r,i)},d(u){u&&w(e)}}}function fo(l){let e,t,n,o,i,r,u,a,d,h,_,v;return{c(){e=f("button"),t=f("div"),n=f("h3"),n.textContent=`${m("settings.confirmDisconnect")}`,o=g(),i=f("p"),i.textContent=`${m("settings.confirmDisconnectDesc")}`,r=g(),u=f("div"),a=f("button"),a.textContent=`${m("common.disconnect")}`,d=g(),h=f("button"),h.textContent=`${m("common.cancel")}`,s(n,"class","svelte-1fx1e1e"),s(i,"class","modal-desc svelte-1fx1e1e"),s(a,"class","btn btn-danger"),s(h,"class","btn"),s(u,"class","modal-actions svelte-1fx1e1e"),s(t,"class","modal svelte-1fx1e1e"),s(e,"class","modal-overlay svelte-1fx1e1e")},m(y,b){C(y,e,b),c(e,t),c(t,n),c(t,o),c(t,i),c(t,r),c(t,u),c(u,a),c(u,d),c(u,h),_||(v=[M(a,"click",l[17]),M(h,"click",l[26]),M(e,"click",l[27])],_=!0)},p:$,d(y){y&&w(e),_=!1,he(v)}}}function po(l){let e,t,n,o,i,r,u,a,d,h,_,v;return{c(){e=f("button"),t=f("div"),n=f("h3"),n.textContent=`${m("settings.confirmResetKey")}`,o=g(),i=f("p"),i.textContent=`${m("settings.confirmResetKeyDesc")}`,r=g(),u=f("div"),a=f("button"),a.textContent=`${m("settings.resetKey")}`,d=g(),h=f("button"),h.textContent=`${m("common.cancel")}`,s(n,"class","svelte-1fx1e1e"),s(i,"class","modal-desc svelte-1fx1e1e"),s(a,"class","btn btn-danger"),s(h,"class","btn"),s(u,"class","modal-actions svelte-1fx1e1e"),s(t,"class","modal svelte-1fx1e1e"),s(e,"class","modal-overlay svelte-1fx1e1e")},m(y,b){C(y,e,b),c(e,t),c(t,n),c(t,o),c(t,i),c(t,r),c(t,u),c(u,a),c(u,d),c(u,h),_||(v=[M(a,"click",l[19]),M(h,"click",l[28]),M(e,"click",l[29])],_=!0)},p:$,d(y){y&&w(e),_=!1,he(v)}}}function ld(l){let e,t,n,o,i,r,u,a,d,h,_=l[2]&&no(l),v=l[3]&&!l[2]&&oo(l);function y(j,N){return j[0]&&j[0].enabled?td:ed}let b=y(l),k=b(l),z=l[9]&&fo(l),S=l[10]&&po(l);return{c(){e=f("div"),t=f("h2"),t.textContent=`${m("settings.sync")}`,n=g(),o=f("p"),o.textContent=`${m("settings.syncDesc")}`,i=g(),_&&_.c(),r=g(),v&&v.c(),u=g(),k.c(),a=g(),z&&z.c(),d=g(),S&&S.c(),h=it(),s(t,"class","svelte-1fx1e1e"),s(o,"class","section-desc svelte-1fx1e1e"),s(e,"class","settings-section svelte-1fx1e1e")},m(j,N){C(j,e,N),c(e,t),c(e,n),c(e,o),c(e,i),_&&_.m(e,null),c(e,r),v&&v.m(e,null),c(e,u),k.m(e,null),C(j,a,N),z&&z.m(j,N),C(j,d,N),S&&S.m(j,N),C(j,h,N)},p(j,N){j[2]?_?_.p(j,N):(_=no(j),_.c(),_.m(e,r)):_&&(_.d(1),_=null),j[3]&&!j[2]?v?v.p(j,N):(v=oo(j),v.c(),v.m(e,u)):v&&(v.d(1),v=null),b===(b=y(j))&&k?k.p(j,N):(k.d(1),k=b(j),k&&(k.c(),k.m(e,null))),j[9]?z?z.p(j,N):(z=fo(j),z.c(),z.m(d.parentNode,d)):z&&(z.d(1),z=null),j[10]?S?S.p(j,N):(S=po(j),S.c(),S.m(h.parentNode,h)):S&&(S.d(1),S=null)},i:$,o:$,d(j){j&&(w(e),w(a),w(d),w(h)),_&&_.d(),v&&v.d(),k.d(),z&&z.d(j),S&&S.d(j)}}}function wt(l,...e){try{if(window.go&&window.go.main&&window.go.main.App){const t=window.go.main.App[l];if(typeof t=="function")return t(...e)}}catch(t){console.error("Wails error:",l,t)}return Promise.reject(new Error("Wails not connected: "+l))}function nd(l,e,t){let{onRefresh:n=null}=e,o=null,i=!1,r="",u="",a="",d="",h="",_="",v=0,y=!1,b=!1,k=null;async function z(){try{t(0,o=await wt("GetSyncSettings")),o&&(t(5,d=o.serverUrl||""),t(8,v=o.syncInterval||0))}catch{t(0,o=null)}}z();async function S(){t(1,i=!0),t(2,r=""),t(4,a=""),t(11,k=null);try{await wt("SyncTestConnection",d,h,_),t(11,k=!0),t(3,u="connection ok")}catch(P){t(11,k=!1),t(3,u="connection failed: "+String(P))}t(1,i=!1)}async function j(){t(1,i=!0),t(2,r=""),t(4,a="");try{await wt("SyncConfigure",d,h,_),t(3,u="configured"),t(6,h=""),t(7,_=""),await z(),n&&n()}catch(P){t(2,r=String(P))}t(1,i=!1)}function N(P){const V=Array.isArray(P==null?void 0:P.conflicts)?P.conflicts:[],x=Array.isArray(P==null?void 0:P.applyErrors)?P.applyErrors:[],ce=[];return V.length>0&&ce.push(m("sync.conflictsCount",{count:V.length})),x.length>0&&ce.push(m("sync.applyErrorsCount",{count:x.length})),ce.join(" · ")}async function T(){t(1,i=!0),t(2,r=""),t(4,a="");try{const P=await wt("SyncNow"),V=m("sync.pushedPulled",{pushed:(P==null?void 0:P.pushed)||0,pulled:(P==null?void 0:P.pulled)||0}),x=N(P);t(3,u=x?V+" · "+x:V),t(4,a=x?"warning":""),await z(),n&&n()}catch(P){t(2,r=String(P))}t(1,i=!1)}async function E(){try{await wt("SyncSetInterval",v),t(3,u=m("sync.settingsSaved")),t(4,a="")}catch(P){t(2,r=String(P))}}function I(){t(9,y=!0)}async function D(){t(9,y=!1),t(1,i=!0),t(4,a="");try{await wt("SyncDisconnect"),t(3,u="disconnected"),await z(),n&&n()}catch(P){t(2,r=String(P))}t(1,i=!1)}function L(){t(10,b=!0)}async function O(){t(10,b=!1),t(1,i=!0),t(4,a="");try{await wt("ResetSyncKey"),t(3,u="key reset"),await z(),n&&n()}catch(P){t(2,r=String(P))}t(1,i=!1)}function W(P){return P?{connected:m("settings.connected"),disconnected:m("settings.disconnected"),disabled:m("settings.notConfigured"),error:m("settings.error"),revoked:m("settings.revoked")}[P]||P:m("settings.notConfigured")}function J(){v=cl(this.value),t(8,v)}function q(){d=this.value,t(5,d)}function Y(){h=this.value,t(6,h)}function H(){_=this.value,t(7,_)}const B=()=>t(9,y=!1),G=()=>t(9,y=!1),R=()=>t(10,b=!1),K=()=>t(10,b=!1);return l.$$set=P=>{"onRefresh"in P&&t(21,n=P.onRefresh)},[o,i,r,u,a,d,h,_,v,y,b,k,S,j,T,E,I,D,L,O,W,n,J,q,Y,H,B,G,R,K]}class od extends $e{constructor(e){super(),xe(this,e,nd,ld,Ze,{onRefresh:21},null,[-1,-1])}}function sd(l){let e,t,n,o;return{c(){e=f("div"),t=f("h2"),t.textContent=`${m("settings.backup")}`,n=g(),o=f("p"),o.textContent=`${m("settings.backupStub")}`,s(t,"class","svelte-19bo7bn"),s(o,"class","section-desc svelte-19bo7bn"),s(e,"class","settings-section svelte-19bo7bn")},m(i,r){C(i,e,r),c(e,t),c(e,n),c(e,o)},p:$,i:$,o:$,d(i){i&&w(e)}}}class id extends $e{constructor(e){super(),xe(this,e,null,sd,Ze,{})}}const{window:cd}=Wl;function rd(l){let e,t;return e=new id({}),{c(){Ye(e.$$.fragment)},m(n,o){Ge(e,n,o),t=!0},p:$,i(n){t||(re(e.$$.fragment,n),t=!0)},o(n){pe(e.$$.fragment,n),t=!1},d(n){Je(e,n)}}}function ad(l){let e,t;return e=new od({props:{onRefresh:l[6]}}),{c(){Ye(e.$$.fragment)},m(n,o){Ge(e,n,o),t=!0},p:$,i(n){t||(re(e.$$.fragment,n),t=!0)},o(n){pe(e.$$.fragment,n),t=!1},d(n){Je(e,n)}}}function ud(l){let e,t;return e=new $f({}),{c(){Ye(e.$$.fragment)},m(n,o){Ge(e,n,o),t=!0},p:$,i(n){t||(re(e.$$.fragment,n),t=!0)},o(n){pe(e.$$.fragment,n),t=!1},d(n){Je(e,n)}}}function fd(l){let e,t;return e=new Zf({}),{c(){Ye(e.$$.fragment)},m(n,o){Ge(e,n,o),t=!0},p:$,i(n){t||(re(e.$$.fragment,n),t=!0)},o(n){pe(e.$$.fragment,n),t=!1},d(n){Je(e,n)}}}function dd(l){let e,t;return e=new Qf({}),{c(){Ye(e.$$.fragment)},m(n,o){Ge(e,n,o),t=!0},p:$,i(n){t||(re(e.$$.fragment,n),t=!0)},o(n){pe(e.$$.fragment,n),t=!1},d(n){Je(e,n)}}}function pd(l){let e,t;return e=new Gf({props:{onRefresh:l[2]}}),{c(){Ye(e.$$.fragment)},m(n,o){Ge(e,n,o),t=!0},p:$,i(n){t||(re(e.$$.fragment,n),t=!0)},o(n){pe(e.$$.fragment,n),t=!1},d(n){Je(e,n)}}}function md(l){let e,t;return e=new Of({props:{onRefresh:l[2]}}),{c(){Ye(e.$$.fragment)},m(n,o){Ge(e,n,o),t=!0},p:$,i(n){t||(re(e.$$.fragment,n),t=!0)},o(n){pe(e.$$.fragment,n),t=!1},d(n){Je(e,n)}}}function hd(l){let e,t;return e=new Ff({props:{appConfig:l[1],onSave:l[5]}}),{c(){Ye(e.$$.fragment)},m(n,o){Ge(e,n,o),t=!0},p(n,o){const i={};o&2&&(i.appConfig=n[1]),e.$set(i)},i(n){t||(re(e.$$.fragment,n),t=!0)},o(n){pe(e.$$.fragment,n),t=!1},d(n){Je(e,n)}}}function _d(l){let e,t,n,o,i,r,u,a,d,h,_,v,y,b,k,z;d=new Mf({props:{activeSection:l[0],onSelect:l[3]}});const S=[hd,md,pd,dd,fd,ud,ad,rd],j=[];function N(T,E){return T[0]==="general"?0:T[0]==="workspace"?1:T[0]==="templates"?2:T[0]==="plugins"?3:T[0]==="files"?4:T[0]==="activity"?5:T[0]==="sync"?6:T[0]==="backup"?7:-1}return~(v=N(l))&&(y=j[v]=S[v](l)),{c(){e=f("button"),t=f("div"),n=f("div"),o=f("h2"),o.textContent=`${m("settings.title")}`,i=g(),r=f("button"),r.innerHTML='',u=g(),a=f("div"),Ye(d.$$.fragment),h=g(),_=f("div"),y&&y.c(),s(o,"class","svelte-zf2zsc"),s(r,"class","close-btn svelte-zf2zsc"),s(r,"title",m("settings.close")),s(n,"class","settings-header svelte-zf2zsc"),s(_,"class","settings-content svelte-zf2zsc"),s(a,"class","settings-body svelte-zf2zsc"),s(t,"class","settings-window svelte-zf2zsc"),s(e,"class","settings-overlay svelte-zf2zsc")},m(T,E){C(T,e,E),c(e,t),c(t,n),c(n,o),c(n,i),c(n,r),c(t,u),c(t,a),Ge(d,a,null),c(a,h),c(a,_),~v&&j[v].m(_,null),b=!0,k||(z=[M(cd,"keydown",l[7]),M(r,"click",l[4]),M(e,"click",pt(l[4]))],k=!0)},p(T,[E]){const I={};E&1&&(I.activeSection=T[0]),d.$set(I);let D=v;v=N(T),v===D?~v&&j[v].p(T,E):(y&&(ot(),pe(j[D],1,1,()=>{j[D]=null}),st()),~v?(y=j[v],y?y.p(T,E):(y=j[v]=S[v](T),y.c()),re(y,1),y.m(_,null)):y=null)},i(T){b||(re(d.$$.fragment,T),re(y),b=!0)},o(T){pe(d.$$.fragment,T),pe(y),b=!1},d(T){T&&w(e),Je(d),~v&&j[v].d(),k=!1,he(z)}}}function mo(l,...e){try{if(window.go&&window.go.main&&window.go.main.App){const t=window.go.main.App[l];if(typeof t=="function")return t(...e)}}catch(t){console.error("Wails error:",l,t)}return Promise.reject(new Error("Wails not connected: "+l))}function vd(l,e,t){let{onClose:n=null}=e,{onSyncRefresh:o=null}=e,{initialSection:i="general"}=e,r=i,u=null;async function a(){try{t(1,u=await mo("GetAppConfig"))}catch{t(1,u=null)}}a();function d(b){t(0,r=b)}function h(){n&&n()}async function _(b){try{await mo("SaveAppConfig",b),t(1,u=b)}catch(k){console.error(k)}}function v(){o&&o()}function y(b){b.key==="Escape"&&h()}return l.$$set=b=>{"onClose"in b&&t(8,n=b.onClose),"onSyncRefresh"in b&&t(9,o=b.onSyncRefresh),"initialSection"in b&&t(10,i=b.initialSection)},[r,u,a,d,h,_,v,y,n,o,i]}class gd extends $e{constructor(e){super(),xe(this,e,vd,_d,Ze,{onClose:8,onSyncRefresh:9,initialSection:10})}}function yd(l){let e,t,n,o,i,r,u,a;return{c(){e=f("div"),t=f("span"),n=g(),o=f("span"),o.textContent=`${m("sync.status.disabled")}`,i=g(),r=f("button"),r.textContent=`${m("sync.configure")}`,s(t,"class","sync-dot dot-disabled svelte-1rxbx0"),s(o,"class","sync-label svelte-1rxbx0"),s(r,"class","btn btn-xs svelte-1rxbx0"),s(e,"class","sync-status-row svelte-1rxbx0")},m(d,h){C(d,e,h),c(e,t),c(e,n),c(e,o),c(e,i),c(e,r),u||(a=M(r,"click",function(){ht(l[5])&&l[5].apply(this,arguments)}),u=!0)},p(d,h){l=d},d(d){d&&w(e),u=!1,a()}}}function bd(l){let e,t,n,o,i,r=l[7](l[0])+"",u,a,d,h,_,v=(l[1]?m("sync.running"):m("sync.run"))+"",y,b,k,z,S,j,N,T=l[0].unpushedOps>0&&ho(l),E=l[2]&&_o(l);return{c(){e=f("div"),t=f("span"),o=g(),i=f("span"),u=A(r),a=g(),T&&T.c(),d=g(),h=f("div"),_=f("button"),y=A(v),b=g(),k=f("button"),k.textContent=`${m("sync.details")}`,z=g(),E&&E.c(),S=it(),s(t,"class",n="sync-dot "+l[6](l[0])+" svelte-1rxbx0"),s(i,"class","sync-label svelte-1rxbx0"),s(_,"class","btn btn-xs svelte-1rxbx0"),_.disabled=l[1],s(k,"class","btn btn-xs btn-link svelte-1rxbx0"),s(h,"class","sync-actions-row svelte-1rxbx0"),s(e,"class","sync-status-row svelte-1rxbx0")},m(I,D){C(I,e,D),c(e,t),c(e,o),c(e,i),c(i,u),c(e,a),T&&T.m(e,null),c(e,d),c(e,h),c(h,_),c(_,y),c(h,b),c(h,k),C(I,z,D),E&&E.m(I,D),C(I,S,D),j||(N=[M(_,"click",function(){ht(l[4])&&l[4].apply(this,arguments)}),M(k,"click",function(){ht(l[5])&&l[5].apply(this,arguments)})],j=!0)},p(I,D){l=I,D&1&&n!==(n="sync-dot "+l[6](l[0])+" svelte-1rxbx0")&&s(t,"class",n),D&1&&r!==(r=l[7](l[0])+"")&&U(u,r),l[0].unpushedOps>0?T?T.p(l,D):(T=ho(l),T.c(),T.m(e,d)):T&&(T.d(1),T=null),D&2&&v!==(v=(l[1]?m("sync.running"):m("sync.run"))+"")&&U(y,v),D&2&&(_.disabled=l[1]),l[2]?E?E.p(l,D):(E=_o(l),E.c(),E.m(S.parentNode,S)):E&&(E.d(1),E=null)},d(I){I&&(w(e),w(z),w(S)),T&&T.d(),E&&E.d(I),j=!1,he(N)}}}function ho(l){let e,t=l[0].unpushedOps+"",n,o,i=m("sync.changes")+"",r;return{c(){e=f("span"),n=A(t),o=g(),r=A(i),s(e,"class","sync-count svelte-1rxbx0")},m(u,a){C(u,e,a),c(e,n),c(e,o),c(e,r)},p(u,a){a&1&&t!==(t=u[0].unpushedOps+"")&&U(n,t)},d(u){u&&w(e)}}}function _o(l){let e,t,n;return{c(){e=f("div"),t=A(l[2]),s(e,"class",n=Nn(l[3]==="warning"?"sync-message sync-message-warning":"sync-message")+" svelte-1rxbx0")},m(o,i){C(o,e,i),c(e,t)},p(o,i){i&4&&U(t,o[2]),i&8&&n!==(n=Nn(o[3]==="warning"?"sync-message sync-message-warning":"sync-message")+" svelte-1rxbx0")&&s(e,"class",n)},d(o){o&&w(e)}}}function kd(l){let e;function t(i,r){var u;return(u=i[0])!=null&&u.configured?bd:yd}let n=t(l),o=n(l);return{c(){e=f("div"),o.c(),s(e,"class","sync-status-widget svelte-1rxbx0")},m(i,r){C(i,e,r),o.m(e,null)},p(i,[r]){n===(n=t(i))&&o?o.p(i,r):(o.d(1),o=n(i),o&&(o.c(),o.m(e,null)))},i:$,o:$,d(i){i&&w(e),o.d()}}}function zd(l,e,t){let{syncStatus:n=null}=e,{syncLoading:o=!1}=e,{syncMessage:i=""}=e,{syncMessageKind:r=""}=e,{onSync:u=null}=e,{onOpenSettings:a=null}=e;function d(_){return!_||!_.configured?"dot-disabled":o?"dot-syncing":_.revoked?"dot-disabled":_.connected?"dot-connected":_.configured?"dot-warning":"dot-disabled"}function h(_){return!_||!_.configured?m("sync.status.disabled"):o?m("sync.status.syncing"):_.revoked?m("sync.status.error"):_.connected?m("sync.status.connected"):m("sync.status.disconnected")}return l.$$set=_=>{"syncStatus"in _&&t(0,n=_.syncStatus),"syncLoading"in _&&t(1,o=_.syncLoading),"syncMessage"in _&&t(2,i=_.syncMessage),"syncMessageKind"in _&&t(3,r=_.syncMessageKind),"onSync"in _&&t(4,u=_.onSync),"onOpenSettings"in _&&t(5,a=_.onOpenSettings)},[n,o,i,r,u,a,d,h]}class wd extends $e{constructor(e){super(),xe(this,e,zd,kd,Ze,{syncStatus:0,syncLoading:1,syncMessage:2,syncMessageKind:3,onSync:4,onOpenSettings:5})}}const{Boolean:Ki}=Wl;function vo(l,e,t){const n=l.slice();return n[328]=e[t],n}function go(l,e,t){const n=l.slice();return n[331]=e[t],n}function yo(l,e,t){const n=l.slice();return n[331]=e[t],n}function bo(l,e,t){const n=l.slice();return n[352]=e[t],n}function ko(l,e,t){const n=l.slice();return n[352]=e[t],n}function zo(l,e,t){const n=l.slice();return n[385]=e[t],n}function wo(l,e,t){const n=l.slice();return n[352]=e[t],n}function Co(l,e,t){const n=l.slice();return n[355]=e[t],n[390]=e,n[391]=t,n}function So(l,e,t){const n=l.slice();return n[352]=e[t],n}function jo(l,e,t){const n=l.slice();return n[367]=e[t],n}function Eo(l,e,t){const n=l.slice();return n[352]=e[t],n}function To(l,e,t){const n=l.slice();return n[372]=e[t],n}function No(l,e,t){const n=l.slice();return n[372]=e[t],n}function Do(l,e,t){const n=l.slice();return n[355]=e[t],n[377]=e,n[378]=t,n}function Mo(l,e,t){const n=l.slice();return n[352]=e[t],n}function Io(l,e,t){const n=l.slice();return n[367]=e[t],n}function Ao(l,e,t){const n=l.slice();return n[344]=e[t],n}function Fo(l,e,t){const n=l.slice();return n[352]=e[t],n}function Po(l,e,t){const n=l.slice();return n[336]=e[t],n}function Lo(l,e,t){const n=l.slice();return n[352]=e[t],n}function Ro(l,e,t){const n=l.slice();return n[355]=e[t],n[356]=e,n[357]=t,n}function Vo(l,e,t){const n=l.slice();return n[352]=e[t],n}function Oo(l,e,t){const n=l.slice();return n[347]=e[t],n}function Wo(l,e,t){const n=l.slice();return n[344]=e[t],n}function Bo(l,e,t){const n=l.slice();return n[339]=e[t],n}function Ho(l,e,t){const n=l.slice();return n[336]=e[t],n}function Uo(l,e,t){const n=l.slice();return n[339]=e[t],n}function Ko(l,e,t){const n=l.slice();return n[362]=e[t],n}function Go(l,e,t){const n=l.slice();return n[396]=e[t],n}function Jo(l,e,t){const n=l.slice();return n[399]=e[t],n}function Cd(l){let e,t,n,o,i,r,u,a,d,h,_,v,y,b,k,z,S,j,N,T,E,I,D,L,O,W,J,q,Y,H,B,G,R,K,P,V,x,ce,ee,ne,le,ie,ae,ke,We,Ne,X,Z,ue,we,_e=fe(l[4]),be=[];for(let te=0;te<_e.length;te+=1)be[te]=Yo(Jo(l,_e,te));const Ue=[Td,Ed],Qe=[];function Xe(te,ve){return te[5].length>0?0:1}N=Xe(l),T=Qe[N]=Ue[N](l),D=new wd({props:{syncStatus:l[79],syncLoading:l[80],syncMessage:l[81],syncMessageKind:l[82],onSync:l[167],onOpenSettings:l[172]}});function Be(te,ve){return te[26]?Md:te[25]?Dd:Nd}let Fe=Be(l),Ee=Fe(l),Se=l[24]&&Xo(l);const Pe=[Vd,Rd,Ld,Pd,Fd,Ad,Id],Te=[];function Ae(te,ve){return te[29]?0:te[26]?1:te[25]==="inbox"?2:te[25]==="journal"?3:te[25]==="today"&&te[7]?4:te[25]==="activity"?5:6}ce=Ae(l),ee=Te[ce]=Pe[ce](l);let je=l[44]&&ui(l),ze=l[48].visible&&pi(l),De=l[32]&&vi(l),Ce=l[51]&&gi(l),Ie=l[58]&&l[57]&&bi(l),Ke=l[76]&&zi(l),Me=l[71]&&Ci(l),de=l[3]&&Si(l);return{c(){e=f("div"),t=f("aside"),n=f("div"),o=f("span"),o.textContent="⚒",i=g(),r=f("span"),r.textContent=`${m("nav.brand")}`,u=g(),a=f("nav"),d=f("div"),h=f("div"),h.textContent=`${m("nav.system")}`,_=g();for(let te=0;te',J=g(),q=f("span"),Y=A(l[23]),H=g(),B=f("main"),G=f("header"),R=f("div"),Ee.c(),K=g(),P=f("div"),P.innerHTML="",V=g(),Se&&Se.c(),x=g(),ee.c(),ne=g(),je&&je.c(),le=g(),ze&&ze.c(),ie=g(),De&&De.c(),ae=g(),Ce&&Ce.c(),ke=g(),Ie&&Ie.c(),We=g(),Ke&&Ke.c(),Ne=g(),Me&&Me.c(),X=g(),de&&de.c(),s(o,"class","logo svelte-hoyczz"),s(r,"class","brand-name svelte-hoyczz"),s(n,"class","sidebar-brand svelte-hoyczz"),s(h,"class","nav-label svelte-hoyczz"),s(d,"class","nav-group svelte-hoyczz"),s(k,"class","svelte-hoyczz"),s(S,"class","nav-add-btn svelte-hoyczz"),s(S,"title",m("common.create")),s(b,"class","nav-label-row svelte-hoyczz"),s(y,"class","nav-group svelte-hoyczz"),s(a,"class","sidebar-nav svelte-hoyczz"),s(W,"class","sidebar-settings-btn svelte-hoyczz"),s(W,"title",m("common.settings")),s(q,"class","version svelte-hoyczz"),s(O,"class","sidebar-footer-row svelte-hoyczz"),s(I,"class","sidebar-footer svelte-hoyczz"),s(t,"class","sidebar svelte-hoyczz"),s(R,"class","header-left svelte-hoyczz"),s(P,"class","header-right svelte-hoyczz"),s(G,"class","header svelte-hoyczz"),s(B,"class","main svelte-hoyczz"),s(e,"class","app svelte-hoyczz")},m(te,ve){C(te,e,ve),c(e,t),c(t,n),c(n,o),c(n,i),c(n,r),c(t,u),c(t,a),c(a,d),c(d,h),c(d,_);for(let Ve=0;Ve{Qe[Ve]=null}),st(),T=Qe[N],T?T.p(te,ve):(T=Qe[N]=Ue[N](te),T.c()),re(T,1),T.m(y,null));const He={};ve[2]&131072&&(He.syncStatus=te[79]),ve[2]&262144&&(He.syncLoading=te[80]),ve[2]&524288&&(He.syncMessage=te[81]),ve[2]&1048576&&(He.syncMessageKind=te[82]),D.$set(He),(!Z||ve[0]&8388608)&&U(Y,te[23]),Fe===(Fe=Be(te))&&Ee?Ee.p(te,ve):(Ee.d(1),Ee=Fe(te),Ee&&(Ee.c(),Ee.m(R,null))),te[24]?Se?Se.p(te,ve):(Se=Xo(te),Se.c(),Se.m(B,x)):Se&&(Se.d(1),Se=null);let lt=ce;ce=Ae(te),ce===lt?Te[ce].p(te,ve):(ot(),pe(Te[lt],1,1,()=>{Te[lt]=null}),st(),ee=Te[ce],ee?ee.p(te,ve):(ee=Te[ce]=Pe[ce](te),ee.c()),re(ee,1),ee.m(B,ne)),te[44]?je?(je.p(te,ve),ve[1]&8192&&re(je,1)):(je=ui(te),je.c(),re(je,1),je.m(B,le)):je&&(ot(),pe(je,1,1,()=>{je=null}),st()),te[48].visible?ze?(ze.p(te,ve),ve[1]&131072&&re(ze,1)):(ze=pi(te),ze.c(),re(ze,1),ze.m(B,ie)):ze&&(ot(),pe(ze,1,1,()=>{ze=null}),st()),te[32]?De?De.p(te,ve):(De=vi(te),De.c(),De.m(B,ae)):De&&(De.d(1),De=null),te[51]?Ce?Ce.p(te,ve):(Ce=gi(te),Ce.c(),Ce.m(B,ke)):Ce&&(Ce.d(1),Ce=null),te[58]&&te[57]?Ie?Ie.p(te,ve):(Ie=bi(te),Ie.c(),Ie.m(B,We)):Ie&&(Ie.d(1),Ie=null),te[76]?Ke?Ke.p(te,ve):(Ke=zi(te),Ke.c(),Ke.m(B,Ne)):Ke&&(Ke.d(1),Ke=null),te[71]?Me?(Me.p(te,ve),ve[2]&512&&re(Me,1)):(Me=Ci(te),Me.c(),re(Me,1),Me.m(B,X)):Me&&(ot(),pe(Me,1,1,()=>{Me=null}),st()),te[3]?de?(de.p(te,ve),ve[0]&8&&re(de,1)):(de=Si(te),de.c(),re(de,1),de.m(B,null)):de&&(ot(),pe(de,1,1,()=>{de=null}),st())},i(te){Z||(re(T),re(D.$$.fragment,te),re(ee),re(je),re(ze),re(Me),re(de),Z=!0)},o(te){pe(T),pe(D.$$.fragment,te),pe(ee),pe(je),pe(ze),pe(Me),pe(de),Z=!1},d(te){te&&w(e),Re(be,te),Qe[N].d(),Je(D),Ee.d(),Se&&Se.d(),Te[ce].d(),je&&je.d(),ze&&ze.d(),De&&De.d(),Ce&&Ce.d(),Ie&&Ie.d(),Ke&&Ke.d(),Me&&Me.d(),de&&de.d(),ue=!1,he(we)}}}function Sd(l){var n;let e,t;return e=new bf({props:{vaultPath:((n=l[0])==null?void 0:n.vaultPath)||"",onComplete:l[169]}}),{c(){Ye(e.$$.fragment)},m(o,i){Ge(e,o,i),t=!0},p(o,i){var u;const r={};i[0]&1&&(r.vaultPath=((u=o[0])==null?void 0:u.vaultPath)||""),e.$set(r)},i(o){t||(re(e.$$.fragment,o),t=!0)},o(o){pe(e.$$.fragment,o),t=!1},d(o){Je(e,o)}}}function jd(l){let e,t;return e=new vf({props:{onComplete:l[168]}}),{c(){Ye(e.$$.fragment)},m(n,o){Ge(e,n,o),t=!0},p:$,i(n){t||(re(e.$$.fragment,n),t=!0)},o(n){pe(e.$$.fragment,n),t=!1},d(n){Je(e,n)}}}function qo(l){let e,t;return{c(){e=f("span"),t=A(l[42]),s(e,"class","nav-badge svelte-hoyczz")},m(n,o){C(n,e,o),c(e,t)},p(n,o){o[1]&2048&&U(t,n[42])},d(n){n&&w(e)}}}function Yo(l){let e,t=l[399].label+"",n,o,i,r,u,a,d=l[399].id==="journal"&&l[42]>0&&qo(l);function h(){return l[171](l[399])}return{c(){e=f("button"),n=A(t),o=g(),d&&d.c(),i=g(),s(e,"class",r="nav-item "+(l[25]===l[399].id?"selected":"")+" svelte-hoyczz")},m(_,v){C(_,e,v),c(e,n),c(e,o),d&&d.m(e,null),c(e,i),u||(a=M(e,"click",h),u=!0)},p(_,v){l=_,v[0]&16&&t!==(t=l[399].label+"")&&U(n,t),l[399].id==="journal"&&l[42]>0?d?d.p(l,v):(d=qo(l),d.c(),d.m(e,i)):d&&(d.d(1),d=null),v[0]&33554448&&r!==(r="nav-item "+(l[25]===l[399].id?"selected":"")+" svelte-hoyczz")&&s(e,"class",r)},d(_){_&&w(e),d&&d.d(),u=!1,a()}}}function Ed(l){let e;return{c(){e=f("div"),e.textContent=`${m("nav.noNodes")}`,s(e,"class","nav-empty svelte-hoyczz")},m(t,n){C(t,e,n)},p:$,i:$,o:$,d(t){t&&w(e)}}}function Td(l){var r;let e,t,n,o,i;return t=new Ui({props:{nodes:l[5],expanded:l[59],selectedNodeId:((r=l[26])==null?void 0:r.id)||"",onSelect:l[88],onToggle:l[118],onContextMenu:l[116],onDrop:l[119]}}),{c(){e=f("div"),Ye(t.$$.fragment),s(e,"class","workspace-tree-area svelte-hoyczz"),s(e,"role","region"),s(e,"aria-label",m("nav.workspace")),ge(e,"drop-valid",l[70])},m(u,a){C(u,e,a),Ge(t,e,null),n=!0,o||(i=[M(e,"dragover",Bl(l[121])),M(e,"dragleave",l[122]),M(e,"drop",l[120])],o=!0)},p(u,a){var h;const d={};a[0]&32&&(d.nodes=u[5]),a[1]&268435456&&(d.expanded=u[59]),a[0]&67108864&&(d.selectedNodeId=((h=u[26])==null?void 0:h.id)||""),t.$set(d),(!n||a[2]&256)&&ge(e,"drop-valid",u[70])},i(u){n||(re(t.$$.fragment,u),n=!0)},o(u){pe(t.$$.fragment,u),n=!1},d(u){u&&w(e),Je(t),o=!1,he(i)}}}function Nd(l){let e;return{c(){e=f("span"),e.textContent=`${m("nav.selectPrompt")}`,s(e,"class","crumb placeholder svelte-hoyczz")},m(t,n){C(t,e,n)},p:$,d(t){t&&w(e)}}}function Dd(l){let e,t=fe(l[4]),n=[];for(let o=0;o',s(i,"class","dismiss-btn svelte-hoyczz"),s(i,"aria-label","Dismiss"),s(e,"class","error-banner svelte-hoyczz"),s(e,"role","button"),s(e,"tabindex","0")},m(a,d){C(a,e,d),c(e,n),c(e,o),c(e,i),r||(u=[M(i,"click",Oe(l[174])),M(e,"click",l[175]),M(e,"keydown",function(){ht(at(l[176]))&&at(l[176]).apply(this,arguments)})],r=!0)},p(a,d){l=a,d[0]&16777216&&t!==(t=l[84](l[24])+"")&&U(n,t)},d(a){a&&w(e),r=!1,he(u)}}}function Id(l){let e,t,n;function o(u,a){if(u[55])return Bd;if(u[4].length>0)return Wd;if(u[24])return Od}let i=o(l),r=i&&i(l);return{c(){e=f("div"),t=f("h2"),t.textContent=`${m("welcome.title")}`,n=g(),r&&r.c(),s(t,"class","svelte-hoyczz"),s(e,"class","welcome svelte-hoyczz")},m(u,a){C(u,e,a),c(e,t),c(e,n),r&&r.m(e,null)},p(u,a){i===(i=o(u))&&r?r.p(u,a):(r&&r.d(1),r=i&&i(u),r&&(r.c(),r.m(e,null)))},i:$,o:$,d(u){u&&w(e),r&&r.d()}}}function Ad(l){let e,t,n,o;function i(a,d){return a[8].length===0?Ud:Hd}let r=i(l),u=r(l);return{c(){e=f("div"),t=f("div"),n=f("h2"),n.textContent=`${m("activity.title")}`,o=g(),u.c(),s(n,"class","svelte-hoyczz"),s(t,"class","activity-feed-header svelte-hoyczz"),s(e,"class","activity-feed svelte-hoyczz")},m(a,d){C(a,e,d),c(e,t),c(t,n),c(e,o),u.m(e,null)},p(a,d){r===(r=i(a))&&u?u.p(a,d):(u.d(1),u=r(a),u&&(u.c(),u.m(e,null)))},i:$,o:$,d(a){a&&w(e),u.d()}}}function Fd(l){let e,t,n,o,i,r=l[7].date+"",u,a,d,h,_=l[7].summary&&$o(l),v=l[41].length>0&&ns(l);function y(z,S){return z[7].groups&&z[7].groups.length>0?Gd:Kd}let b=y(l),k=b(l);return{c(){e=f("div"),t=f("div"),n=f("h2"),n.textContent=`${m("today.title")}`,o=g(),i=f("span"),u=A(r),a=g(),_&&_.c(),d=g(),v&&v.c(),h=g(),k.c(),s(n,"class","svelte-hoyczz"),s(i,"class","today-date svelte-hoyczz"),s(t,"class","today-header svelte-hoyczz"),s(e,"class","today-dashboard svelte-hoyczz")},m(z,S){C(z,e,S),c(e,t),c(t,n),c(t,o),c(t,i),c(i,u),c(e,a),_&&_.m(e,null),c(e,d),v&&v.m(e,null),c(e,h),k.m(e,null)},p(z,S){S[0]&128&&r!==(r=z[7].date+"")&&U(u,r),z[7].summary?_?_.p(z,S):(_=$o(z),_.c(),_.m(e,d)):_&&(_.d(1),_=null),z[41].length>0?v?v.p(z,S):(v=ns(z),v.c(),v.m(e,h)):v&&(v.d(1),v=null),b===(b=y(z))&&k?k.p(z,S):(k.d(1),k=b(z),k&&(k.c(),k.m(e,null)))},i:$,o:$,d(z){z&&w(e),_&&_.d(),v&&v.d(),k.d()}}}function Pd(l){let e,t,n,o,i,r,u,a,d,h,_,v,y,b,k,z,S,j,N,T,E,I,D,L,O,W,J,q,Y,H,B,G,R,K,P,V,x,ce,ee,ne,le,ie,ae,ke,We,Ne,X,Z,ue,we,_e,be,Ue,Qe,Xe,Be,Fe,Ee,Se;function Pe(de,te){return de[17]?Qd:Yd}let Te=Pe(l),Ae=Te(l),je=l[14]&&_s(l),ze=l[18]&&vs(l),De=l[41].length>0&&gs(l),Ce=l[10]&&ws(l);function Ie(de,te){return de[9].length===0?Zd:Xd}let Ke=Ie(l),Me=Ke(l);return{c(){e=f("div"),t=f("div"),n=f("h2"),n.textContent=`${m("journal.title")}`,o=g(),i=f("div"),r=f("div"),r.textContent=`${m("journal.filterHeading")}`,u=g(),a=f("div"),d=f("label"),h=f("span"),h.textContent=`${m("journal.dateFrom")}`,_=g(),v=f("input"),y=g(),b=f("label"),k=f("span"),k.textContent=`${m("journal.dateTo")}`,z=g(),S=f("input"),j=g(),N=f("label"),T=f("span"),T.textContent=`${m("journal.node")}`,E=g(),I=f("div"),Ae.c(),D=g(),je&&je.c(),L=g(),O=f("label"),W=f("span"),W.textContent=`${m("journal.billable")}`,J=g(),q=f("select"),Y=f("option"),Y.textContent=`${m("common.all")}`,H=f("option"),H.textContent=`${m("journal.billableYes")}`,B=f("option"),B.textContent=`${m("journal.billableNo")}`,G=g(),R=f("label"),K=f("span"),K.textContent=`${m("journal.approx")}`,P=g(),V=f("select"),x=f("option"),x.textContent=`${m("common.all")}`,ce=f("option"),ce.textContent=`${m("journal.approxExact")}`,ee=f("option"),ee.textContent=`${m("journal.approxEstimated")}`,ne=g(),le=f("button"),le.textContent=`${m("journal.filter")}`,ie=g(),ae=f("button"),ae.textContent=`${m("journal.reset")}`,ke=g(),We=f("div"),Ne=f("div"),Ne.textContent=`${m("journal.exportHeading")}`,X=g(),Z=f("div"),ue=f("button"),ue.textContent=`${m("journal.exportCSV")}`,we=g(),_e=f("button"),_e.textContent=`${m("journal.exportMarkdown")}`,be=g(),Ue=f("button"),Ue.textContent="PDF",Qe=g(),ze&&ze.c(),Xe=g(),De&&De.c(),Be=g(),Ce&&Ce.c(),Fe=g(),Me.c(),s(n,"class","svelte-hoyczz"),s(r,"class","journal-filter-heading svelte-hoyczz"),s(h,"class","label-text svelte-hoyczz"),s(v,"type","date"),s(v,"class","svelte-hoyczz"),s(d,"class","svelte-hoyczz"),s(k,"class","label-text svelte-hoyczz"),s(S,"type","date"),s(S,"class","svelte-hoyczz"),s(b,"class","svelte-hoyczz"),s(T,"class","label-text svelte-hoyczz"),s(I,"class","journal-node-picker svelte-hoyczz"),rt(I,"position","relative"),s(N,"class","svelte-hoyczz"),s(W,"class","label-text svelte-hoyczz"),Y.__value="all",ye(Y,Y.__value),s(Y,"class","svelte-hoyczz"),H.__value="yes",ye(H,H.__value),s(H,"class","svelte-hoyczz"),B.__value="no",ye(B,B.__value),s(B,"class","svelte-hoyczz"),s(q,"class","svelte-hoyczz"),l[15]===void 0&&St(()=>l[231].call(q)),s(O,"title",m("journal.billableHint")),s(O,"class","svelte-hoyczz"),s(K,"class","label-text svelte-hoyczz"),x.__value="all",ye(x,x.__value),s(x,"class","svelte-hoyczz"),ce.__value="no",ye(ce,ce.__value),s(ce,"class","svelte-hoyczz"),ee.__value="yes",ye(ee,ee.__value),s(ee,"class","svelte-hoyczz"),s(V,"class","svelte-hoyczz"),l[16]===void 0&&St(()=>l[232].call(V)),s(R,"title",m("journal.approxHint")),s(R,"class","svelte-hoyczz"),s(le,"class","btn btn-sm svelte-hoyczz"),s(ae,"class","btn btn-sm svelte-hoyczz"),s(a,"class","journal-filters-row svelte-hoyczz"),s(i,"class","journal-filter-section svelte-hoyczz"),s(Ne,"class","journal-export-heading svelte-hoyczz"),s(ue,"class","btn btn-sm svelte-hoyczz"),s(_e,"class","btn btn-sm svelte-hoyczz"),s(Ue,"class","btn btn-sm svelte-hoyczz"),s(Z,"class","journal-export-row svelte-hoyczz"),s(We,"class","journal-export-section svelte-hoyczz"),s(t,"class","journal-header svelte-hoyczz"),s(e,"class","journal-screen svelte-hoyczz")},m(de,te){C(de,e,te),c(e,t),c(t,n),c(t,o),c(t,i),c(i,r),c(i,u),c(i,a),c(a,d),c(d,h),c(d,_),c(d,v),ye(v,l[11]),c(a,y),c(a,b),c(b,k),c(b,z),c(b,S),ye(S,l[12]),c(a,j),c(a,N),c(N,T),c(N,E),c(N,I),Ae.m(I,null),c(a,D),je&&je.m(a,null),c(a,L),c(a,O),c(O,W),c(O,J),c(O,q),c(q,Y),c(q,H),c(q,B),mt(q,l[15],!0),c(a,G),c(a,R),c(R,K),c(R,P),c(R,V),c(V,x),c(V,ce),c(V,ee),mt(V,l[16],!0),c(a,ne),c(a,le),c(a,ie),c(a,ae),c(t,ke),c(t,We),c(We,Ne),c(We,X),c(We,Z),c(Z,ue),c(Z,we),c(Z,_e),c(Z,be),c(Z,Ue),c(Z,Qe),ze&&ze.m(Z,null),c(e,Xe),De&&De.m(e,null),c(e,Be),Ce&&Ce.m(e,null),c(e,Fe),Me.m(e,null),Ee||(Se=[M(v,"input",l[224]),M(S,"input",l[225]),M(q,"change",l[231]),M(V,"change",l[232]),M(le,"click",l[141]),M(ae,"click",l[148]),M(ue,"click",l[233]),M(_e,"click",l[234]),M(Ue,"click",l[235])],Ee=!0)},p(de,te){te[0]&2048&&ye(v,de[11]),te[0]&4096&&ye(S,de[12]),Te===(Te=Pe(de))&&Ae?Ae.p(de,te):(Ae.d(1),Ae=Te(de),Ae&&(Ae.c(),Ae.m(I,null))),de[14]?je?je.p(de,te):(je=_s(de),je.c(),je.m(a,L)):je&&(je.d(1),je=null),te[0]&32768&&mt(q,de[15]),te[0]&65536&&mt(V,de[16]),de[18]?ze?ze.p(de,te):(ze=vs(de),ze.c(),ze.m(Z,null)):ze&&(ze.d(1),ze=null),de[41].length>0?De?De.p(de,te):(De=gs(de),De.c(),De.m(e,Be)):De&&(De.d(1),De=null),de[10]?Ce?Ce.p(de,te):(Ce=ws(de),Ce.c(),Ce.m(e,Fe)):Ce&&(Ce.d(1),Ce=null),Ke===(Ke=Ie(de))&&Me?Me.p(de,te):(Me.d(1),Me=Ke(de),Me&&(Me.c(),Me.m(e,null)))},i:$,o:$,d(de){de&&w(e),Ae.d(),je&&je.d(),ze&&ze.d(),De&&De.d(),Ce&&Ce.d(),Me.d(),Ee=!1,he(Se)}}}function Ld(l){let e,t,n,o,i,r,u,a,d,h,_;function v(k,z){return k[43].length===0?s1:o1}let y=v(l),b=y(l);return{c(){e=f("div"),t=f("div"),n=f("div"),o=f("h2"),o.textContent=`${m("nav.inbox")}`,i=g(),r=f("p"),r.textContent=`${m("inbox.subtitle")}`,u=g(),a=f("button"),a.textContent=`+ ${m("nav.createNode")}`,d=g(),b.c(),s(o,"class","svelte-hoyczz"),s(r,"class","svelte-hoyczz"),s(n,"class","svelte-hoyczz"),s(a,"class","btn btn-primary btn-sm svelte-hoyczz"),s(t,"class","inbox-header svelte-hoyczz"),s(e,"class","inbox-screen svelte-hoyczz")},m(k,z){C(k,e,z),c(e,t),c(t,n),c(n,o),c(n,i),c(n,r),c(t,u),c(t,a),c(e,d),b.m(e,null),h||(_=M(a,"click",l[113]),h=!0)},p(k,z){y===(y=v(k))&&b?b.p(k,z):(b.d(1),b=y(k),b&&(b.c(),b.m(e,null)))},i:$,o:$,d(k){k&&w(e),b.d(),h=!1,_()}}}function Rd(l){let e,t,n,o,i,r,u=fe(l[86]),a=[];for(let v=0;v{h[b]=null}),st()),~o?(i=h[o],i?i.p(v,y):(i=h[o]=d[o](v),i.c()),re(i,1),i.m(n,null)):i=null)},i(v){r||(re(i),r=!0)},o(v){pe(i),r=!1},d(v){v&&(w(e),w(t),w(n)),Re(a,v),~o&&h[o].d()}}}function Vd(l){let e,t,n,o=l[29].title+"",i,r,u,a,d,h,_,v,y,b,k,z=l[29].dirty&&ai();return{c(){e=f("div"),t=f("div"),n=f("span"),i=A(o),r=g(),z&&z.c(),u=g(),a=f("div"),d=f("button"),d.textContent=`${m("common.save")}`,h=g(),_=f("button"),_.textContent=`${m("common.close")}`,v=g(),y=f("textarea"),s(n,"class","note-title svelte-hoyczz"),s(d,"class","btn btn-primary svelte-hoyczz"),s(_,"class","btn svelte-hoyczz"),s(a,"class","note-editor-actions svelte-hoyczz"),s(t,"class","note-editor-header svelte-hoyczz"),s(y,"class","note-textarea svelte-hoyczz"),s(y,"placeholder",m("note.placeholder")),s(e,"class","note-editor svelte-hoyczz")},m(S,j){C(S,e,j),c(e,t),c(t,n),c(n,i),c(t,r),z&&z.m(t,null),c(t,u),c(t,a),c(a,d),c(a,h),c(a,_),c(e,v),c(e,y),ye(y,l[29].content),b||(k=[M(d,"click",l[133]),M(_,"click",l[131]),M(y,"input",l[177]),M(y,"input",l[132])],b=!0)},p(S,j){j[0]&536870912&&o!==(o=S[29].title+"")&&U(i,o),S[29].dirty?z||(z=ai(),z.c(),z.m(t,u)):z&&(z.d(1),z=null),j[0]&536870912&&ye(y,S[29].content)},i:$,o:$,d(S){S&&w(e),z&&z.d(),b=!1,he(k)}}}function Od(l){let e,t=m("common.error")+"",n,o,i;return{c(){e=f("p"),n=A(t),o=g(),i=A(l[24]),s(e,"class","error-text svelte-hoyczz")},m(r,u){C(r,e,u),c(e,n),c(e,o),c(e,i)},p(r,u){u[0]&16777216&&U(i,r[24])},d(r){r&&w(e)}}}function Wd(l){let e,t,n;return{c(){e=f("p"),e.textContent=`${m("welcome.selectSection")}`,t=g(),n=f("p"),n.textContent=`${m("welcome.createCase")}`,s(e,"class","svelte-hoyczz"),s(n,"class","hint svelte-hoyczz")},m(o,i){C(o,e,i),C(o,t,i),C(o,n,i)},p:$,d(o){o&&(w(e),w(t),w(n))}}}function Bd(l){let e;return{c(){e=f("p"),e.textContent=`${m("common.loading")}`,s(e,"class","svelte-hoyczz")},m(t,n){C(t,e,n)},p:$,d(t){t&&w(e)}}}function Hd(l){let e,t=fe(l[8]),n=[];for(let o=0;o0&&es(l),i=l[7].summary.notes>0&&ts(l),r=l[7].summary.files>0&&ls(l);return{c(){e=f("div"),o&&o.c(),t=g(),i&&i.c(),n=g(),r&&r.c(),s(e,"class","today-summary svelte-hoyczz")},m(u,a){C(u,e,a),o&&o.m(e,null),c(e,t),i&&i.m(e,null),c(e,n),r&&r.m(e,null)},p(u,a){u[7].summary.changedCases>0?o?o.p(u,a):(o=es(u),o.c(),o.m(e,t)):o&&(o.d(1),o=null),u[7].summary.notes>0?i?i.p(u,a):(i=ts(u),i.c(),i.m(e,n)):i&&(i.d(1),i=null),u[7].summary.files>0?r?r.p(u,a):(r=ls(u),r.c(),r.m(e,null)):r&&(r.d(1),r=null)},d(u){u&&w(e),o&&o.d(),i&&i.d(),r&&r.d()}}}function es(l){let e,t=l[7].summary.changedCases+"",n,o,i=_t(l[7].summary.changedCases,m("today.plural.case_one"),m("today.plural.case_few"),m("today.plural.case_many"))+"",r;return{c(){e=f("span"),n=A(t),o=g(),r=A(i),s(e,"class","summary-chip svelte-hoyczz")},m(u,a){C(u,e,a),c(e,n),c(e,o),c(e,r)},p(u,a){a[0]&128&&t!==(t=u[7].summary.changedCases+"")&&U(n,t),a[0]&128&&i!==(i=_t(u[7].summary.changedCases,m("today.plural.case_one"),m("today.plural.case_few"),m("today.plural.case_many"))+"")&&U(r,i)},d(u){u&&w(e)}}}function ts(l){let e,t=l[7].summary.notes+"",n,o,i=_t(l[7].summary.notes,m("today.plural.note_one"),m("today.plural.note_few"),m("today.plural.note_many"))+"",r;return{c(){e=f("span"),n=A(t),o=g(),r=A(i),s(e,"class","summary-chip svelte-hoyczz")},m(u,a){C(u,e,a),c(e,n),c(e,o),c(e,r)},p(u,a){a[0]&128&&t!==(t=u[7].summary.notes+"")&&U(n,t),a[0]&128&&i!==(i=_t(u[7].summary.notes,m("today.plural.note_one"),m("today.plural.note_few"),m("today.plural.note_many"))+"")&&U(r,i)},d(u){u&&w(e)}}}function ls(l){let e,t=l[7].summary.files+"",n,o,i=_t(l[7].summary.files,m("today.plural.file_one"),m("today.plural.file_few"),m("today.plural.file_many"))+"",r;return{c(){e=f("span"),n=A(t),o=g(),r=A(i),s(e,"class","summary-chip svelte-hoyczz")},m(u,a){C(u,e,a),c(e,n),c(e,o),c(e,r)},p(u,a){a[0]&128&&t!==(t=u[7].summary.files+"")&&U(n,t),a[0]&128&&i!==(i=_t(u[7].summary.files,m("today.plural.file_one"),m("today.plural.file_few"),m("today.plural.file_many"))+"")&&U(r,i)},d(u){u&&w(e)}}}function ns(l){let e,t,n,o=fe(l[41]),i=[];for(let r=0;r0&&os(l);return{c(){e=f("div"),t=f("div"),n=f("div"),o=f("button"),r=A(i),u=g(),a=f("span"),h=A(d),_=g(),v=f("span"),b=A(y),k=g(),z=f("div"),S=f("input"),N=g(),T=f("span"),T.textContent=`${m("suggest.minutes")}`,E=g(),I=f("button"),I.textContent=`${m("suggest.edit")}`,D=g(),L=f("button"),L.textContent=`${m("suggest.apply")}`,O=g(),P&&P.c(),W=g(),s(o,"class","suggestion-node link-btn svelte-hoyczz"),s(a,"class","suggestion-summary svelte-hoyczz"),s(v,"class","suggestion-confidence svelte-hoyczz"),ge(v,"low",l[355].confidence==="low"),ge(v,"medium",l[355].confidence==="medium"),ge(v,"high",l[355].confidence==="high"),s(n,"class","suggestion-info svelte-hoyczz"),s(S,"type","number"),s(S,"class","suggestion-min-input svelte-hoyczz"),S.value=j=l[355].suggestedMin,s(S,"min","1"),s(S,"max","480"),s(T,"class","suggestion-min-label svelte-hoyczz"),s(I,"class","btn btn-sm svelte-hoyczz"),s(L,"class","btn btn-sm btn-primary svelte-hoyczz"),s(z,"class","suggestion-actions svelte-hoyczz"),s(t,"class","suggestion-main svelte-hoyczz"),s(t,"role","button"),s(t,"tabindex","0"),s(e,"class","suggestion-card svelte-hoyczz"),ge(e,"expanded",l[355]._expanded)},m(V,x){C(V,e,x),c(e,t),c(t,n),c(n,o),c(o,r),c(n,u),c(n,a),c(a,h),c(n,_),c(n,v),c(v,b),c(t,k),c(t,z),c(z,S),c(z,N),c(z,T),c(z,E),c(z,I),c(z,D),c(z,L),c(e,O),P&&P.m(e,null),c(e,W),J||(q=[M(o,"click",Oe(Y)),M(S,"change",Oe(H)),M(I,"click",Oe(B)),M(L,"click",Oe(G)),M(t,"click",R),M(t,"keydown",K)],J=!0)},p(V,x){l=V,x[1]&1024&&i!==(i=l[355].nodeTitle+"")&&U(r,i),x[1]&1024&&d!==(d=l[355].summary+"")&&U(h,d),x[1]&1024&&y!==(y=m("suggest.confidence."+l[355].confidence)+"")&&U(b,y),x[1]&1024&&ge(v,"low",l[355].confidence==="low"),x[1]&1024&&ge(v,"medium",l[355].confidence==="medium"),x[1]&1024&&ge(v,"high",l[355].confidence==="high"),x[1]&1024&&j!==(j=l[355].suggestedMin)&&S.value!==j&&(S.value=j),l[355]._expanded&&l[355].events&&l[355].events.length>0?P?P.p(l,x):(P=os(l),P.c(),P.m(e,W)):P&&(P.d(1),P=null),x[1]&1024&&ge(e,"expanded",l[355]._expanded)},d(V){V&&w(e),P&&P.d(),J=!1,he(q)}}}function Kd(l){let e,t,n,o;return{c(){e=f("div"),t=f("p"),t.textContent=`${m("today.empty")}`,n=g(),o=f("p"),o.textContent=`${m("today.emptyHint")}`,s(t,"class","svelte-hoyczz"),s(o,"class","hint svelte-hoyczz"),s(e,"class","today-empty svelte-hoyczz")},m(i,r){C(i,e,r),c(e,t),c(e,n),c(e,o)},p:$,d(i){i&&w(e)}}}function Gd(l){let e,t,n=fe(l[7].groups),o=[];for(let r=0;r0&&ds(l);return{c(){for(let r=0;r0?i?i.p(r,u):(i=ds(r),i.c(),i.m(t.parentNode,t)):i&&(i.d(1),i=null)},d(r){r&&(w(e),w(t)),Re(o,r),i&&i.d(r)}}}function rs(l){let e,t=l[385].events.length+"",n,o,i=_t(l[385].events.length,m("today.plural.event_one"),m("today.plural.event_few"),m("today.plural.event_many"))+"",r;return{c(){e=f("span"),n=A(t),o=g(),r=A(i),s(e,"class","today-case-count svelte-hoyczz")},m(u,a){C(u,e,a),c(e,n),c(e,o),c(e,r)},p(u,a){a[0]&128&&t!==(t=u[385].events.length+"")&&U(n,t),a[0]&128&&i!==(i=_t(u[385].events.length,m("today.plural.event_one"),m("today.plural.event_few"),m("today.plural.event_many"))+"")&&U(r,i)},d(u){u&&w(e)}}}function Jd(l){let e;return{c(){e=f("div"),e.textContent=`${m("today.changedCases")}`,s(e,"class","today-events-empty svelte-hoyczz")},m(t,n){C(t,e,n)},p:$,d(t){t&&w(e)}}}function qd(l){let e,t=fe(l[385].events),n=[];for(let o=0;o0?qd:Jd}let I=E(l),D=I(l);return{c(){e=f("div"),t=f("div"),n=f("span"),i=A(o),r=g(),u=f("span"),d=A(a),h=g(),j&&j.c(),_=g(),v=f("span"),b=A(y),k=g(),D.c(),s(n,"class","today-case-title svelte-hoyczz"),s(u,"class","today-case-type svelte-hoyczz"),s(v,"class","today-case-time svelte-hoyczz"),s(t,"class","today-case-header svelte-hoyczz"),s(t,"role","button"),s(t,"tabindex","0"),s(e,"class","today-case svelte-hoyczz")},m(L,O){C(L,e,O),c(e,t),c(t,n),c(n,i),c(t,r),c(t,u),c(u,d),c(t,h),j&&j.m(t,null),c(t,_),c(t,v),c(v,b),c(e,k),D.m(e,null),z||(S=[M(t,"click",N),M(t,"keydown",T)],z=!0)},p(L,O){l=L,O[0]&128&&o!==(o=l[385].nodeTitle+"")&&U(i,o),O[0]&128&&a!==(a=l[155](l[385].nodeKind)+"")&&U(d,a),l[385].events?j?j.p(l,O):(j=rs(l),j.c(),j.m(t,_)):j&&(j.d(1),j=null),O[0]&128&&y!==(y=tt(l[385].lastActivityAt)+"")&&U(b,y),I===(I=E(l))&&D?D.p(l,O):(D.d(1),D=I(l),D&&(D.c(),D.m(e,null)))},d(L){L&&w(e),j&&j.d(),D.d(),z=!1,he(S)}}}function ds(l){let e,t,n,o=fe(l[7].events),i=[];for(let r=0;r0&&ys(l);return{c(){e=f("div"),t=f("div"),n=f("div"),o=f("button"),r=A(i),u=g(),a=f("span"),h=A(d),_=g(),v=f("span"),b=A(y),k=g(),z=f("div"),S=f("input"),N=g(),T=f("span"),T.textContent=`${m("suggest.minutes")}`,E=g(),I=f("button"),I.textContent=`${m("suggest.edit")}`,D=g(),L=f("button"),L.textContent=`${m("suggest.apply")}`,O=g(),P&&P.c(),W=g(),s(o,"class","suggestion-node link-btn svelte-hoyczz"),s(a,"class","suggestion-summary svelte-hoyczz"),s(v,"class","suggestion-confidence svelte-hoyczz"),ge(v,"low",l[355].confidence==="low"),ge(v,"medium",l[355].confidence==="medium"),ge(v,"high",l[355].confidence==="high"),s(n,"class","suggestion-info svelte-hoyczz"),s(S,"type","number"),s(S,"class","suggestion-min-input svelte-hoyczz"),S.value=j=l[355].suggestedMin,s(S,"min","1"),s(S,"max","480"),s(T,"class","suggestion-min-label svelte-hoyczz"),s(I,"class","btn btn-sm svelte-hoyczz"),s(L,"class","btn btn-sm btn-primary svelte-hoyczz"),s(z,"class","suggestion-actions svelte-hoyczz"),s(t,"class","suggestion-main svelte-hoyczz"),s(t,"role","button"),s(t,"tabindex","0"),s(e,"class","suggestion-card svelte-hoyczz"),ge(e,"expanded",l[355]._expanded)},m(V,x){C(V,e,x),c(e,t),c(t,n),c(n,o),c(o,r),c(n,u),c(n,a),c(a,h),c(n,_),c(n,v),c(v,b),c(t,k),c(t,z),c(z,S),c(z,N),c(z,T),c(z,E),c(z,I),c(z,D),c(z,L),c(e,O),P&&P.m(e,null),c(e,W),J||(q=[M(o,"click",Oe(Y)),M(S,"change",Oe(H)),M(I,"click",Oe(B)),M(L,"click",Oe(G)),M(t,"click",R),M(t,"keydown",K)],J=!0)},p(V,x){l=V,x[1]&1024&&i!==(i=l[355].nodeTitle+"")&&U(r,i),x[1]&1024&&d!==(d=l[355].summary+"")&&U(h,d),x[1]&1024&&y!==(y=m("suggest.confidence."+l[355].confidence)+"")&&U(b,y),x[1]&1024&&ge(v,"low",l[355].confidence==="low"),x[1]&1024&&ge(v,"medium",l[355].confidence==="medium"),x[1]&1024&&ge(v,"high",l[355].confidence==="high"),x[1]&1024&&j!==(j=l[355].suggestedMin)&&S.value!==j&&(S.value=j),l[355]._expanded&&l[355].events&&l[355].events.length>0?P?P.p(l,x):(P=ys(l),P.c(),P.m(e,W)):P&&(P.d(1),P=null),x[1]&1024&&ge(e,"expanded",l[355]._expanded)},d(V){V&&w(e),P&&P.d(),J=!1,he(q)}}}function ws(l){let e,t,n=m("journal.total")+"",o,i,r=Math.floor(l[10].totalMinutes/60)+"",u,a,d=l[10].totalMinutes%60+"",h,_,v=l[10].totalEntries+"",y,b,k=m("worklog.min")+"",z,S,j,N,T=l[10].byDay&&l[10].byDay.length>0&&Cs(l),E=l[10].byNode&&l[10].byNode.length>0&&js(l);return{c(){e=f("div"),t=f("div"),o=A(n),i=A(": "),u=A(r),a=A("ч "),h=A(d),_=A("м ("),y=A(v),b=g(),z=A(k),S=A(")"),j=g(),T&&T.c(),N=g(),E&&E.c(),s(t,"class","summary-total svelte-hoyczz"),s(e,"class","journal-summary svelte-hoyczz")},m(I,D){C(I,e,D),c(e,t),c(t,o),c(t,i),c(t,u),c(t,a),c(t,h),c(t,_),c(t,y),c(t,b),c(t,z),c(t,S),c(e,j),T&&T.m(e,null),c(e,N),E&&E.m(e,null)},p(I,D){D[0]&1024&&r!==(r=Math.floor(I[10].totalMinutes/60)+"")&&U(u,r),D[0]&1024&&d!==(d=I[10].totalMinutes%60+"")&&U(h,d),D[0]&1024&&v!==(v=I[10].totalEntries+"")&&U(y,v),I[10].byDay&&I[10].byDay.length>0?T?T.p(I,D):(T=Cs(I),T.c(),T.m(e,N)):T&&(T.d(1),T=null),I[10].byNode&&I[10].byNode.length>0?E?E.p(I,D):(E=js(I),E.c(),E.m(e,null)):E&&(E.d(1),E=null)},d(I){I&&w(e),T&&T.d(),E&&E.d()}}}function Cs(l){let e,t,n,o=fe(l[10].byDay),i=[];for(let r=0;r0?l1:L[367].source==="suggestion"?t1:L[367].source==="unknown"||L[367].source==="imported"?e1:L[367]._hasEvents?$d:xd}let E=T(l),I=E(l),D=l[367]._events&&Is(l);return{c(){e=f("tr"),t=f("td"),n=f("div"),o=f("div"),i=f("button"),i.textContent=`${m("worklog.editEntry")}`,r=g(),u=f("button"),u.textContent=`${m("worklog.deleteEntry")}`,a=g(),N&&N.c(),d=g(),h=f("div"),_=f("span"),_.textContent=`${m("worklog.source")}`,v=g(),I.c(),y=g(),D&&D.c(),b=g(),s(i,"class","btn btn-sm svelte-hoyczz"),s(u,"class","btn btn-sm btn-danger svelte-hoyczz"),s(o,"class","journal-detail-actions svelte-hoyczz"),s(_,"class","journal-detail-label svelte-hoyczz"),s(h,"class","journal-detail-section svelte-hoyczz"),s(n,"class","journal-detail-body svelte-hoyczz"),s(t,"colspan","8"),s(t,"class","svelte-hoyczz"),s(e,"class","journal-row-detail svelte-hoyczz")},m(L,O){C(L,e,O),c(e,t),c(t,n),c(n,o),c(o,i),c(o,r),c(o,u),c(n,a),N&&N.m(n,null),c(n,d),c(n,h),c(h,_),c(h,v),I.m(h,null),c(n,y),D&&D.m(n,null),c(e,b),k||(z=[M(i,"click",Oe(S)),M(u,"click",Oe(j))],k=!0)},p(L,O){l=L,l[367].details?N?N.p(l,O):(N=Ms(l),N.c(),N.m(n,d)):N&&(N.d(1),N=null),E!==(E=T(l))&&(I.d(1),I=E(l),I&&(I.c(),I.m(h,null))),l[367]._events?D?D.p(l,O):(D=Is(l),D.c(),D.m(n,null)):D&&(D.d(1),D=null)},d(L){L&&w(e),N&&N.d(),I.d(),D&&D.d(),k=!1,he(z)}}}function Ms(l){let e,t,n,o,i=l[367].details+"",r;return{c(){e=f("div"),t=f("span"),t.textContent=`${m("worklog.details")}`,n=g(),o=f("p"),r=A(i),s(t,"class","journal-detail-label svelte-hoyczz"),s(o,"class","svelte-hoyczz"),s(e,"class","journal-detail-section svelte-hoyczz")},m(u,a){C(u,e,a),c(e,t),c(e,n),c(e,o),c(o,r)},p(u,a){a[0]&512&&i!==(i=u[367].details+"")&&U(r,i)},d(u){u&&w(e)}}}function xd(l){let e;return{c(){e=f("p"),e.textContent=`${m("worklog.sourceUnknown")}`,s(e,"class","svelte-hoyczz")},m(t,n){C(t,e,n)},d(t){t&&w(e)}}}function $d(l){let e;return{c(){e=f("p"),e.textContent=`${m("worklog.sourceSuggestion")}`,s(e,"class","svelte-hoyczz")},m(t,n){C(t,e,n)},d(t){t&&w(e)}}}function e1(l){let e;return{c(){e=f("p"),e.textContent=`${m("worklog.sourceUnknown")}`,s(e,"class","svelte-hoyczz")},m(t,n){C(t,e,n)},d(t){t&&w(e)}}}function t1(l){let e;return{c(){e=f("p"),e.textContent=`${m("worklog.sourceSuggestionNoEvents")}`,s(e,"class","svelte-hoyczz")},m(t,n){C(t,e,n)},d(t){t&&w(e)}}}function l1(l){let e;return{c(){e=f("p"),e.textContent=`${m("worklog.sourceSuggestion")}`,s(e,"class","svelte-hoyczz")},m(t,n){C(t,e,n)},d(t){t&&w(e)}}}function n1(l){let e;return{c(){e=f("p"),e.textContent=`${m("worklog.sourceManual")}`,s(e,"class","svelte-hoyczz")},m(t,n){C(t,e,n)},d(t){t&&w(e)}}}function Is(l){let e,t,n,o=fe(l[367]._events),i=[];for(let r=0;r0,r,u,a,d=i&&Os(l);function h(y,b){return y[31].length===0?h1:m1}let _=h(l),v=_(l);return{c(){e=f("div"),t=f("div"),n=f("button"),n.textContent=`+ ${m("worklog.addEntry")}`,o=g(),d&&d.c(),r=g(),v.c(),s(n,"class","btn btn-primary btn-sm svelte-hoyczz"),s(t,"class","worklog-toolbar svelte-hoyczz"),s(e,"class","worklog-tab svelte-hoyczz")},m(y,b){C(y,e,b),c(e,t),c(t,n),c(e,o),d&&d.m(e,null),c(e,r),v.m(e,null),u||(a=M(n,"click",l[204]),u=!0)},p(y,b){b[0]&67108864|b[1]&1024&&(i=y[26]&&y[41].filter(y[170]).length>0),i?d?d.p(y,b):(d=Os(y),d.c(),d.m(e,r)):d&&(d.d(1),d=null),_===(_=h(y))&&v?v.p(y,b):(v.d(1),v=_(y),v&&(v.c(),v.m(e,null)))},i:$,o:$,d(y){y&&w(e),d&&d.d(),v.d(),u=!1,a()}}}function r1(l){let e,t,n,o,i,r;function u(h,_){return h[30].length===0?z1:k1}let a=u(l),d=a(l);return{c(){e=f("div"),t=f("div"),n=f("button"),n.textContent=`${m("action.addAction")}`,o=g(),d.c(),s(n,"class","btn btn-primary svelte-hoyczz"),s(t,"class","tab-toolbar svelte-hoyczz"),s(e,"class","actions-tab svelte-hoyczz")},m(h,_){C(h,e,_),c(e,t),c(t,n),c(e,o),d.m(e,null),i||(r=M(n,"click",l[156]),i=!0)},p(h,_){a===(a=u(h))&&d?d.p(h,_):(d.d(1),d=a(h),d&&(d.c(),d.m(e,null)))},i:$,o:$,d(h){h&&w(e),d.d(),i=!1,r()}}}function a1(l){let e,t,n,o=m("file.addFile")+"",i,r,u,a=m("file.addFolder")+"",d,h,_,v,y,b,k,z,S,j,N,T,E,I=l[68].items.length>0&&$s(l);const D=[C1,w1],L=[];function O(q,Y){return q[60]?0:1}b=O(l),k=L[b]=D[b](l);let W=l[56]&&!l[58]&&ti(),J=l[64]&&li(l);return{c(){e=f("div"),t=f("div"),n=f("button"),i=A(o),r=g(),u=f("button"),d=A(a),h=g(),_=f("button"),_.textContent=`${m("file.newFile")}`,v=g(),I&&I.c(),y=g(),k.c(),z=g(),W&&W.c(),S=g(),J&&J.c(),j=it(),s(n,"class","btn btn-primary svelte-hoyczz"),n.disabled=l[56],s(u,"class","btn svelte-hoyczz"),u.disabled=l[56],s(_,"class","btn svelte-hoyczz"),s(t,"class","tab-toolbar svelte-hoyczz"),s(e,"class","files-tab svelte-hoyczz")},m(q,Y){C(q,e,Y),c(e,t),c(t,n),c(n,i),c(t,r),c(t,u),c(u,d),c(t,h),c(t,_),c(t,v),I&&I.m(t,null),c(e,y),L[b].m(e,null),c(e,z),W&&W.m(e,null),C(q,S,Y),J&&J.m(q,Y),C(q,j,Y),N=!0,T||(E=[M(n,"click",l[149]),M(u,"click",l[150]),M(_,"click",l[95])],T=!0)},p(q,Y){(!N||Y[1]&33554432)&&(n.disabled=q[56]),(!N||Y[1]&33554432)&&(u.disabled=q[56]),q[68].items.length>0?I?I.p(q,Y):(I=$s(q),I.c(),I.m(t,null)):I&&(I.d(1),I=null);let H=b;b=O(q),b===H?L[b].p(q,Y):(ot(),pe(L[H],1,1,()=>{L[H]=null}),st(),k=L[b],k?k.p(q,Y):(k=L[b]=D[b](q),k.c()),re(k,1),k.m(e,z)),q[56]&&!q[58]?W||(W=ti(),W.c(),W.m(e,null)):W&&(W.d(1),W=null),q[64]?J?(J.p(q,Y),Y[2]&4&&re(J,1)):(J=li(q),J.c(),re(J,1),J.m(j.parentNode,j)):J&&(ot(),pe(J,1,1,()=>{J=null}),st())},i(q){N||(re(k),re(J),N=!0)},o(q){pe(k),pe(J),N=!1},d(q){q&&(w(e),w(S),w(j)),I&&I.d(),L[b].d(),W&&W.d(),J&&J.d(q),T=!1,he(E)}}}function u1(l){let e,t,n,o,i,r,u,a=l[49]&&ni(l);function d(v,y){return v[28].length===0&&!v[49]?D1:N1}let h=d(l),_=h(l);return{c(){e=f("div"),t=f("div"),n=f("button"),n.textContent=`${m("note.add")}`,o=g(),a&&a.c(),i=g(),_.c(),s(n,"class","btn btn-primary svelte-hoyczz"),s(t,"class","tab-toolbar svelte-hoyczz"),s(e,"class","notes-tab svelte-hoyczz")},m(v,y){C(v,e,y),c(e,t),c(t,n),c(e,o),a&&a.m(e,null),c(e,i),_.m(e,null),r||(u=M(n,"click",l[127]),r=!0)},p(v,y){v[49]?a?a.p(v,y):(a=ni(v),a.c(),a.m(e,i)):a&&(a.d(1),a=null),h===(h=d(v))&&_?_.p(v,y):(_.d(1),_=h(v),_&&(_.c(),_.m(e,null)))},i:$,o:$,d(v){v&&w(e),a&&a.d(),_.d(),r=!1,u()}}}function f1(l){let e,t,n=l[26].title+"",o,i,r,u,a,d,h=l[155](l[26].type)+"",_,v,y,b,k,z=(l[26].section||"—")+"",S,j,N,T,E,I=dt(l[26].createdAt)+"",D,L,O,W,J,q,Y,H,B=m("overview.newNote")+"",G,R,K,P,V,x,ce=m("overview.addFile")+"",ee,ne,le,ie,ae,ke,We=m("overview.addAction")+"",Ne,X,Z,ue,we,_e,be,Ue=m("overview.logTime")+"",Qe,Xe,Be,Fe,Ee,Se=l[28].length>0&&si(l),Pe=l[31].length>0&&ci(l);return{c(){e=f("div"),t=f("h2"),o=A(n),i=g(),r=f("div"),u=f("div"),a=f("span"),a.textContent=`${m("overview.type")}`,d=f("span"),_=A(h),v=g(),y=f("div"),b=f("span"),b.textContent=`${m("overview.section")}`,k=f("span"),S=A(z),j=g(),N=f("div"),T=f("span"),T.textContent=`${m("overview.created")}`,E=f("span"),D=A(I),L=g(),O=f("div"),W=f("button"),J=Q("svg"),q=Q("path"),Y=Q("path"),H=g(),G=A(B),R=g(),K=f("button"),P=Q("svg"),V=Q("path"),x=g(),ee=A(ce),ne=g(),le=f("button"),ie=Q("svg"),ae=Q("polygon"),ke=g(),Ne=A(We),X=g(),Z=f("button"),ue=Q("svg"),we=Q("circle"),_e=Q("polyline"),be=g(),Qe=A(Ue),Xe=g(),Se&&Se.c(),Be=g(),Pe&&Pe.c(),s(t,"class","svelte-hoyczz"),s(a,"class","meta-label svelte-hoyczz"),s(d,"class","svelte-hoyczz"),s(u,"class","meta-item svelte-hoyczz"),s(b,"class","meta-label svelte-hoyczz"),s(k,"class","svelte-hoyczz"),s(y,"class","meta-item svelte-hoyczz"),s(T,"class","meta-label svelte-hoyczz"),s(E,"class","svelte-hoyczz"),s(N,"class","meta-item svelte-hoyczz"),s(r,"class","meta-grid svelte-hoyczz"),s(q,"d","M12 20h9"),s(q,"class","svelte-hoyczz"),s(Y,"d","M16.5 3.5a2.121 2.121 0 0 1 3 3L7 19l-4 1 1-4L16.5 3.5z"),s(Y,"class","svelte-hoyczz"),s(J,"width","16"),s(J,"height","16"),s(J,"viewBox","0 0 24 24"),s(J,"fill","none"),s(J,"stroke","currentColor"),s(J,"stroke-width","2"),s(J,"stroke-linecap","round"),s(J,"stroke-linejoin","round"),s(J,"class","svelte-hoyczz"),s(W,"class","qa-btn svelte-hoyczz"),s(V,"d","M21.44 11.05l-9.19 9.19a6 6 0 0 1-8.49-8.49l9.19-9.19a4 4 0 0 1 5.66 5.66l-9.2 9.19a2 2 0 0 1-2.83-2.83l8.49-8.48"),s(V,"class","svelte-hoyczz"),s(P,"width","16"),s(P,"height","16"),s(P,"viewBox","0 0 24 24"),s(P,"fill","none"),s(P,"stroke","currentColor"),s(P,"stroke-width","2"),s(P,"stroke-linecap","round"),s(P,"stroke-linejoin","round"),s(P,"class","svelte-hoyczz"),s(K,"class","qa-btn svelte-hoyczz"),s(ae,"points","13 2 3 14 12 14 11 22 21 10 12 10 13 2"),s(ae,"class","svelte-hoyczz"),s(ie,"width","16"),s(ie,"height","16"),s(ie,"viewBox","0 0 24 24"),s(ie,"fill","none"),s(ie,"stroke","currentColor"),s(ie,"stroke-width","2"),s(ie,"stroke-linecap","round"),s(ie,"stroke-linejoin","round"),s(ie,"class","svelte-hoyczz"),s(le,"class","qa-btn svelte-hoyczz"),s(we,"cx","12"),s(we,"cy","12"),s(we,"r","10"),s(we,"class","svelte-hoyczz"),s(_e,"points","12 6 12 12 16 14"),s(_e,"class","svelte-hoyczz"),s(ue,"width","16"),s(ue,"height","16"),s(ue,"viewBox","0 0 24 24"),s(ue,"fill","none"),s(ue,"stroke","currentColor"),s(ue,"stroke-width","2"),s(ue,"stroke-linecap","round"),s(ue,"stroke-linejoin","round"),s(ue,"class","svelte-hoyczz"),s(Z,"class","qa-btn svelte-hoyczz"),s(O,"class","quick-actions svelte-hoyczz"),s(e,"class","overview svelte-hoyczz")},m(Te,Ae){C(Te,e,Ae),c(e,t),c(t,o),c(e,i),c(e,r),c(r,u),c(u,a),c(u,d),c(d,_),c(r,v),c(r,y),c(y,b),c(y,k),c(k,S),c(r,j),c(r,N),c(N,T),c(N,E),c(E,D),c(e,L),c(e,O),c(O,W),c(W,J),c(J,q),c(J,Y),c(W,H),c(W,G),c(O,R),c(O,K),c(K,P),c(P,V),c(K,x),c(K,ee),c(O,ne),c(O,le),c(le,ie),c(ie,ae),c(le,ke),c(le,Ne),c(O,X),c(O,Z),c(Z,ue),c(ue,we),c(ue,_e),c(Z,be),c(Z,Qe),c(e,Xe),Se&&Se.m(e,null),c(e,Be),Pe&&Pe.m(e,null),Fe||(Ee=[M(W,"click",l[179]),M(K,"click",l[180]),M(le,"click",l[156]),M(Z,"click",l[181])],Fe=!0)},p(Te,Ae){Ae[0]&67108864&&n!==(n=Te[26].title+"")&&U(o,n),Ae[0]&67108864&&h!==(h=Te[155](Te[26].type)+"")&&U(_,h),Ae[0]&67108864&&z!==(z=(Te[26].section||"—")+"")&&U(S,z),Ae[0]&67108864&&I!==(I=dt(Te[26].createdAt)+"")&&U(D,I),Te[28].length>0?Se?Se.p(Te,Ae):(Se=si(Te),Se.c(),Se.m(e,Be)):Se&&(Se.d(1),Se=null),Te[31].length>0?Pe?Pe.p(Te,Ae):(Pe=ci(Te),Pe.c(),Pe.m(e,null)):Pe&&(Pe.d(1),Pe=null)},i:$,o:$,d(Te){Te&&w(e),Se&&Se.d(),Pe&&Pe.d(),Fe=!1,he(Ee)}}}function d1(l){let e,t=fe(l[22]),n=[];for(let o=0;o0&&Ws(l);return{c(){e=f("div"),t=f("div"),n=f("div"),o=f("span"),r=A(i),u=g(),a=f("span"),h=A(d),_=g(),y=A(v),b=A(" · "),z=A(k),S=g(),j=f("div"),N=f("button"),N.textContent=`${m("suggest.edit")}`,T=g(),E=f("button"),E.textContent=`${m("worklog.apply")}`,I=g(),H&&H.c(),D=g(),s(o,"class","suggestion-summary svelte-hoyczz"),s(a,"class","suggestion-meta svelte-hoyczz"),s(n,"class","suggestion-info svelte-hoyczz"),s(N,"class","btn btn-sm svelte-hoyczz"),s(E,"class","btn btn-sm btn-primary svelte-hoyczz"),s(j,"class","suggestion-actions svelte-hoyczz"),s(t,"class","suggestion-main svelte-hoyczz"),s(t,"role","button"),s(t,"tabindex","0"),s(e,"class","suggestion-card svelte-hoyczz"),ge(e,"expanded",l[355]._expanded)},m(B,G){C(B,e,G),c(e,t),c(t,n),c(n,o),c(o,r),c(n,u),c(n,a),c(a,h),c(a,_),c(a,y),c(a,b),c(a,z),c(t,S),c(t,j),c(j,N),c(j,T),c(j,E),c(e,I),H&&H.m(e,null),c(e,D),L||(O=[M(N,"click",Oe(W)),M(E,"click",Oe(J)),M(t,"click",q),M(t,"keydown",Y)],L=!0)},p(B,G){l=B,G[0]&67108864|G[1]&1024&&i!==(i=l[355].summary+"")&&U(r,i),G[0]&67108864|G[1]&1024&&d!==(d=l[355].suggestedMin+"")&&U(h,d),G[0]&67108864|G[1]&1024&&k!==(k=m("suggest.confidence."+l[355].confidence)+"")&&U(z,k),l[355]._expanded&&l[355].events&&l[355].events.length>0?H?H.p(l,G):(H=Ws(l),H.c(),H.m(e,D)):H&&(H.d(1),H=null),G[0]&67108864|G[1]&1024&&ge(e,"expanded",l[355]._expanded)},d(B){B&&w(e),H&&H.d(),L=!1,he(O)}}}function m1(l){let e,t=fe(l[31]),n=[];for(let o=0;o0?y1:E[336].source==="suggestion"?g1:E[336].source==="unknown"||E[336].source==="imported"?v1:_1}let j=S(l),N=j(l),T=l[336].source==="suggestion"&&l[336]._events&&l[336]._events.length>0&&Ys(l);return{c(){e=f("div"),t=f("div"),n=f("button"),n.textContent=`${m("worklog.editEntry")}`,o=g(),i=f("button"),i.textContent=`${m("worklog.deleteEntry")}`,r=g(),z&&z.c(),u=g(),a=f("div"),d=f("span"),d.textContent=`${m("worklog.source")}`,h=g(),N.c(),_=g(),T&&T.c(),s(n,"class","btn btn-sm svelte-hoyczz"),s(i,"class","btn btn-sm btn-danger svelte-hoyczz"),s(t,"class","worklog-entry-actions svelte-hoyczz"),s(d,"class","wl-detail-label svelte-hoyczz"),s(a,"class","wl-detail-section svelte-hoyczz"),s(e,"class","worklog-entry-detail svelte-hoyczz")},m(E,I){C(E,e,I),c(e,t),c(t,n),c(t,o),c(t,i),c(e,r),z&&z.m(e,null),c(e,u),c(e,a),c(a,d),c(a,h),N.m(a,null),c(e,_),T&&T.m(e,null),v||(y=[M(n,"click",Oe(b)),M(i,"click",Oe(k))],v=!0)},p(E,I){l=E,l[336].details?z?z.p(l,I):(z=qs(l),z.c(),z.m(e,u)):z&&(z.d(1),z=null),j!==(j=S(l))&&(N.d(1),N=j(l),N&&(N.c(),N.m(a,null))),l[336].source==="suggestion"&&l[336]._events&&l[336]._events.length>0?T?T.p(l,I):(T=Ys(l),T.c(),T.m(e,null)):T&&(T.d(1),T=null)},d(E){E&&w(e),z&&z.d(),N.d(),T&&T.d(),v=!1,he(y)}}}function qs(l){let e,t,n,o,i=l[336].details+"",r;return{c(){e=f("div"),t=f("span"),t.textContent=`${m("worklog.details")}`,n=g(),o=f("p"),r=A(i),s(t,"class","wl-detail-label svelte-hoyczz"),s(o,"class","svelte-hoyczz"),s(e,"class","wl-detail-section svelte-hoyczz")},m(u,a){C(u,e,a),c(e,t),c(e,n),c(e,o),c(o,r)},p(u,a){a[1]&1&&i!==(i=u[336].details+"")&&U(r,i)},d(u){u&&w(e)}}}function _1(l){let e;return{c(){e=f("p"),e.textContent=`${m("worklog.sourceUnknown")}`,s(e,"class","svelte-hoyczz")},m(t,n){C(t,e,n)},d(t){t&&w(e)}}}function v1(l){let e;return{c(){e=f("p"),e.textContent=`${m("worklog.sourceUnknown")}`,s(e,"class","svelte-hoyczz")},m(t,n){C(t,e,n)},d(t){t&&w(e)}}}function g1(l){let e;return{c(){e=f("p"),e.textContent=`${m("worklog.sourceSuggestionNoEvents")}`,s(e,"class","svelte-hoyczz")},m(t,n){C(t,e,n)},d(t){t&&w(e)}}}function y1(l){let e;return{c(){e=f("p"),e.textContent=`${m("worklog.sourceSuggestion")}`,s(e,"class","svelte-hoyczz")},m(t,n){C(t,e,n)},d(t){t&&w(e)}}}function b1(l){let e;return{c(){e=f("p"),e.textContent=`${m("worklog.sourceManual")}`,s(e,"class","svelte-hoyczz")},m(t,n){C(t,e,n)},d(t){t&&w(e)}}}function Ys(l){let e,t,n,o=fe(l[336]._events),i=[];for(let r=0;r',N=g(),s(n,"class","action-title svelte-hoyczz"),s(u,"class","action-type svelte-hoyczz"),s(_,"class","action-data svelte-hoyczz"),s(t,"class","action-info svelte-hoyczz"),s(z,"class","btn btn-sm svelte-hoyczz"),s(j,"class","btn btn-sm btn-danger svelte-hoyczz"),s(k,"class","action-btns svelte-hoyczz"),s(e,"class","action-card svelte-hoyczz")},m(L,O){C(L,e,O),c(e,t),c(t,n),c(n,i),c(t,r),c(t,u),c(u,d),c(t,h),c(t,_),c(_,y),c(e,b),c(e,k),c(k,z),c(k,S),c(k,j),c(e,N),T||(E=[M(z,"click",I),M(j,"click",D)],T=!0)},p(L,O){l=L,O[0]&1073741824&&o!==(o=l[347].title+"")&&U(i,o),O[0]&1073741824&&a!==(a=l[160](l[347].type)+"")&&U(d,a),O[0]&1073741824&&v!==(v=l[347].data+"")&&U(y,v)},d(L){L&&w(e),T=!1,he(E)}}}function $s(l){let e,t=m("common.paste")+"",n,o,i=l[68].items.length+"",r,u,a;return{c(){e=f("button"),n=A(t),o=g(),r=A(i),s(e,"class","btn svelte-hoyczz")},m(d,h){C(d,e,h),c(e,n),c(e,o),c(e,r),u||(a=M(e,"click",l[100]),u=!0)},p(d,h){h[2]&64&&i!==(i=d[68].items.length+"")&&U(r,i)},d(d){d&&w(e),u=!1,a()}}}function w1(l){let e,t,n,o,i,r,u;const a=[j1,S1],d=[];function h(b,k){return b[62].length>0?0:1}e=h(l),t=d[e]=a[e](l);const _=[T1,E1],v=[];function y(b,k){return b[63].length===0?0:1}return o=y(l),i=v[o]=_[o](l),{c(){t.c(),n=g(),i.c(),r=it()},m(b,k){d[e].m(b,k),C(b,n,k),v[o].m(b,k),C(b,r,k),u=!0},p(b,k){let z=e;e=h(b),e===z?d[e].p(b,k):(ot(),pe(d[z],1,1,()=>{d[z]=null}),st(),t=d[e],t?t.p(b,k):(t=d[e]=a[e](b),t.c()),re(t,1),t.m(n.parentNode,n));let S=o;o=y(b),o===S?v[o].p(b,k):(ot(),pe(v[S],1,1,()=>{v[S]=null}),st(),i=v[o],i?i.p(b,k):(i=v[o]=_[o](b),i.c()),re(i,1),i.m(r.parentNode,r))},i(b){u||(re(t),re(i),u=!0)},o(b){pe(t),pe(i),u=!1},d(b){b&&(w(n),w(r)),d[e].d(b),v[o].d(b)}}}function C1(l){let e,t;return{c(){e=f("div"),t=f("p"),t.textContent=`${m("common.loading")}`,s(t,"class","svelte-hoyczz"),s(e,"class","empty-state svelte-hoyczz")},m(n,o){C(n,e,o),c(e,t)},p:$,i:$,o:$,d(n){n&&w(e)}}}function S1(l){let e,t;return e=new Hi({props:{crumbs:[{name:m("file.root")}]}}),{c(){Ye(e.$$.fragment)},m(n,o){Ge(e,n,o),t=!0},p:$,i(n){t||(re(e.$$.fragment,n),t=!0)},o(n){pe(e.$$.fragment,n),t=!1},d(n){Je(e,n)}}}function j1(l){let e,t,n,o,i,r,u,a=m("common.backLabel")+"",d,h,_,v;return e=new Hi({props:{crumbs:[{name:m("file.root")},...l[62]]}}),e.$on("navigate",l[188]),{c(){Ye(e.$$.fragment),t=g(),n=f("button"),o=Q("svg"),i=Q("line"),r=Q("polyline"),u=g(),d=A(a),s(i,"x1","19"),s(i,"y1","12"),s(i,"x2","5"),s(i,"y2","12"),s(i,"class","svelte-hoyczz"),s(r,"points","12 19 5 12 12 5"),s(r,"class","svelte-hoyczz"),s(o,"width","14"),s(o,"height","14"),s(o,"viewBox","0 0 24 24"),s(o,"fill","none"),s(o,"stroke","currentColor"),s(o,"stroke-width","2"),s(o,"stroke-linecap","round"),s(o,"stroke-linejoin","round"),s(o,"class","svelte-hoyczz"),s(n,"class","btn btn-sm back-btn svelte-hoyczz")},m(y,b){Ge(e,y,b),C(y,t,b),C(y,n,b),c(n,o),c(o,i),c(o,r),c(n,u),c(n,d),h=!0,_||(v=M(n,"click",l[91]),_=!0)},p(y,b){const k={};b[2]&1&&(k.crumbs=[{name:m("file.root")},...y[62]]),e.$set(k)},i(y){h||(re(e.$$.fragment,y),h=!0)},o(y){pe(e.$$.fragment,y),h=!1},d(y){y&&(w(t),w(n)),Je(e,y),_=!1,v()}}}function E1(l){let e,t=[],n=new Map,o,i=fe(l[63]);const r=u=>u[344].id;for(let u=0;u0?m("file.noFiles"):m("file.noFilesCase"))+"",r,u,a,d,h,_,v,y,b,k;return{c(){e=f("div"),t=f("div"),t.innerHTML='',n=g(),o=f("p"),r=A(i),u=g(),a=f("p"),a.textContent=`${m("file.hint")}`,d=g(),h=f("div"),_=f("button"),_.textContent=`${m("file.addFileSimple")}`,v=g(),y=f("button"),y.textContent=`${m("file.addFolderSimple")}`,s(t,"class","empty-icon svelte-hoyczz"),s(o,"class","svelte-hoyczz"),s(a,"class","hint svelte-hoyczz"),s(_,"class","btn btn-primary svelte-hoyczz"),s(y,"class","btn svelte-hoyczz"),s(h,"class","empty-actions svelte-hoyczz"),s(e,"class","empty-state svelte-hoyczz")},m(z,S){C(z,e,S),c(e,t),c(e,n),c(e,o),c(o,r),c(e,u),c(e,a),c(e,d),c(e,h),c(h,_),c(h,v),c(h,y),b||(k=[M(_,"click",l[149]),M(y,"click",l[150])],b=!0)},p(z,S){S[2]&1&&i!==(i=(z[62].length>0?m("file.noFiles"):m("file.noFilesCase"))+"")&&U(r,i)},i:$,o:$,d(z){z&&w(e),b=!1,he(k)}}}function ei(l,e){let t,n,o;return n=new Iu({props:{item:e[344],selected:e[69].includes(e[344].id),onDragStart:e[104],onDragOver:e[105],onDrop:e[106]}}),n.$on("navigate",e[189]),n.$on("preview",e[190]),n.$on("openExternal",e[191]),n.$on("showInFolder",e[192]),n.$on("delete",e[193]),n.$on("rename",e[194]),n.$on("duplicate",e[195]),n.$on("cut",e[196]),n.$on("copy",e[197]),n.$on("selectOne",e[198]),n.$on("toggleSelect",e[199]),n.$on("rangeSelect",e[200]),{key:l,first:null,c(){t=it(),Ye(n.$$.fragment),this.first=t},m(i,r){C(i,t,r),Ge(n,i,r),o=!0},p(i,r){e=i;const u={};r[2]&2&&(u.item=e[344]),r[2]&130&&(u.selected=e[69].includes(e[344].id)),n.$set(u)},i(i){o||(re(n.$$.fragment,i),o=!0)},o(i){pe(n.$$.fragment,i),o=!1},d(i){i&&w(t),Je(n,i)}}}function ti(l){let e,t;return{c(){e=f("div"),t=f("p"),t.textContent=`${m("file.scanning")}`,s(t,"class","svelte-hoyczz"),s(e,"class","empty-state svelte-hoyczz")},m(n,o){C(n,e,o),c(e,t)},d(n){n&&w(e)}}}function li(l){let e,t;return e=new Yu({props:{item:l[64],content:l[65],loading:l[66],error:l[67]}}),e.$on("close",l[94]),e.$on("openExternal",l[201]),{c(){Ye(e.$$.fragment)},m(n,o){Ge(e,n,o),t=!0},p(n,o){const i={};o[2]&4&&(i.item=n[64]),o[2]&8&&(i.content=n[65]),o[2]&16&&(i.loading=n[66]),o[2]&32&&(i.error=n[67]),e.$set(i)},i(n){t||(re(e.$$.fragment,n),t=!0)},o(n){pe(e.$$.fragment,n),t=!1},d(n){Je(e,n)}}}function ni(l){let e,t,n,o,i,r,u,a,d;return{c(){e=f("div"),t=f("input"),n=g(),o=f("div"),i=f("button"),i.textContent=`${m("common.create")}`,r=g(),u=f("button"),u.textContent=`${m("common.cancel")}`,s(t,"type","text"),s(t,"placeholder",m("note.title")),s(t,"class","svelte-hoyczz"),s(i,"class","btn btn-primary svelte-hoyczz"),s(u,"class","btn svelte-hoyczz"),s(o,"class","form-actions svelte-hoyczz"),s(e,"class","create-form svelte-hoyczz")},m(h,_){C(h,e,_),c(e,t),ye(t,l[50]),c(e,n),c(e,o),c(o,i),c(o,r),c(o,u),a||(d=[M(t,"input",l[184]),M(t,"keydown",l[185]),M(i,"click",l[129]),M(u,"click",l[128])],a=!0)},p(h,_){_[1]&524288&&t.value!==h[50]&&ye(t,h[50])},d(h){h&&w(e),a=!1,he(d)}}}function N1(l){let e,t=fe(l[28]),n=[];for(let o=0;ope(x[ee],1,1,()=>{x[ee]=null});return{c(){e=f("div"),t=f("div"),n=f("h3"),n.textContent=`${m("nav.createNode")}`,o=g(),P&&P.c(),i=g(),r=f("div"),u=f("span"),u.textContent=`${m("template.select")}`,a=g(),d=f("div"),h=f("button"),Ye(_.$$.fragment),v=g(),y=f("div"),b=f("span"),b.textContent=`${m("template.optionNone")}`,k=g(),z=f("span"),z.textContent=`${m("template.none.desc")}`,S=g();for(let ee=0;ee{b=null}),st()),z[48].node&&z[48].node.parent_id?k?k.p(z,S):(k=_i(z),k.c(),k.m(t,i)):k&&(k.d(1),k=null),(!_||S[1]&131072)&&rt(t,"left",z[48].x+"px"),(!_||S[1]&131072)&&rt(t,"top",z[48].y+"px")},i(z){_||(re(b),_=!0)},o(z){pe(b),_=!1},d(z){z&&w(e),b&&b.d(),k&&k.d(),v=!1,he(y)}}}function mi(l){let e,t,n,o,i,r=fe(l[6].length>0?l[6]:[{id:"",title:"template.optionNone",icon:"folder"}]),u=[];for(let d=0;dpe(u[d],1,1,()=>{u[d]=null});return{c(){e=f("div"),e.textContent=`${m("common.create")}`,t=g();for(let d=0;d0?d[6]:[{id:"",title:"template.optionNone",icon:"folder"}]);let _;for(_=0;_l[283].call(k)),s(v,"class","svelte-hoyczz"),s(_,"class","form-group svelte-hoyczz"),s(N,"class","label-text svelte-hoyczz"),s(D,"type","text"),s(D,"placeholder",L=l[53]==="open_url"?m("action.urlPlaceholder"):l[53]==="open_folder"||l[53]==="open_file"?m("action.pathPlaceholder"):m("action.commandPlaceholder")),s(D,"class","svelte-hoyczz"),s(j,"class","svelte-hoyczz"),s(S,"class","form-group svelte-hoyczz"),s(J,"class","btn btn-primary svelte-hoyczz"),s(Y,"class","btn svelte-hoyczz"),s(W,"class","modal-actions svelte-hoyczz"),s(t,"class","modal svelte-hoyczz"),s(e,"class","modal-overlay svelte-hoyczz"),s(e,"role","button"),s(e,"tabindex","0")},m(K,P){C(K,e,P),c(e,t),c(t,n),c(t,o),c(t,i),c(i,r),c(r,u),c(r,a),c(r,d),ye(d,l[52]),c(t,h),c(t,_),c(_,v),c(v,y),c(v,b),c(v,k);for(let V=0;V{r[h]=null}),st(),t=r[e],t?t.p(a,d):(t=r[e]=i[e](a),t.c()),re(t,1),t.m(n.parentNode,n))},i(a){o||(re(t),o=!0)},o(a){pe(t),o=!1},d(a){a&&w(n),r[e].d(a)}}}function se(l,...e){try{if(window.go&&window.go.main&&window.go.main.App){const t=window.go.main.App[l];if(typeof t=="function")return t(...e)}}catch(t){console.error("Wails call error:",l,t)}return Promise.reject(new Error("Wails not connected: "+l))}function Bt(l,e,t){for(const n of l){if(n.id===e)return n.children=t,n.has_children=t.length>0,!0;if(n.children&&Bt(n.children,e,t))return!0}return!1}function Gi(l,e,t){for(const n of l){if(n.id===e)return n.children=t,n.has_children=t.length>0,!0;if(n.children&&Gi(n.children,e,t))return!0}return!1}function Pl(l){return l.eventIds&&l.eventIds.length?l.eventIds:l.events&&l.events.length?l.events.map(e=>e.id).filter(Boolean):[]}function ll(l){try{se("WriteDebugLog",l)}catch{}}function Ll(l){return l?l.map(e=>(e._expanded===void 0&&(e._expanded=!1),e)):[]}function tt(l){return l?new Date(l).toLocaleTimeString("ru-RU",{hour:"2-digit",minute:"2-digit"}):""}function Lt(l){return l==="note_created"||l==="file_added"||l==="folder_added"||l==="node_created"?"+":l==="file_deleted"||l==="folder_deleted"?"×":l==="file_renamed"||l==="folder_renamed"||l==="note_updated"||l==="node_updated"?"~":l==="file_copied"?"⧉":l==="file_moved"?"→":"•"}function dt(l){if(!l)return"";try{return new Date(l).toLocaleDateString("ru-RU",{day:"numeric",month:"short"})}catch{return l}}function _t(l,e,t,n){return l=Math.abs(l)%100,l>=5&&l<=20?n:(l%=10,l===1?e:l>=2&&l<=4?t:n)}function I1(l){return l.targetType==="note"&&l.targetId?{nodeId:l.nodeId,tab:"notes",targetId:l.targetId}:l.targetType==="file"?{nodeId:l.nodeId,tab:"files",targetId:l.targetId,targetPath:l.targetPath}:l.targetType==="folder"?{nodeId:l.nodeId,tab:"files",targetPath:l.targetPath||l.targetId}:{nodeId:l.nodeId}}function at(l){return e=>{(e.key==="Enter"||e.key===" ")&&(e.preventDefault(),l())}}function A1(l,e,t){let n=null,o=!1,i=!1,r=!1,u=!1,a=[],d=[],h=[],_=null,v=[],y=0,b=!0,k=[],z=null,S="",j="",N=!1,T="",E="all",I="all",D="",L="",O="",W=[],J=!1,q=[],Y="",H="";function B(p){return{"vault not open":m("error.vaultNotOpen")}[p]||p}let G="",R=null,K="overview",P=[],V=null,x=[],ce=[],ee=[],ne=!1,le="",ie="",ae="",ke="",We=!1,Ne=!1,X=null,Z=null,ue=[],we=0,_e=[],be=!1,Ue="",Qe=null,Xe=null,Be={visible:!1,x:0,y:0,node:null},Fe=!1,Ee="",Se=!1,Pe="",Te="open_url",Ae="",je=[{id:"open_url",label:m("action.openUrl")},{id:"open_file",label:m("action.openFile")},{id:"open_folder",label:m("action.openFolder")},{id:"run_command",label:m("action.runCommand")},{id:"run_script",label:m("action.runScript")},{id:"open_terminal",label:m("action.openTerminal")},{id:"launch_app",label:m("action.launchApp")}],ze=!0,De=!1,Ce=null,Ie=!1,Ke="",Me="",de={},te=!1,ve=null,Ve=[],He=[],lt=null,qe="",jt=!1,Kt="",ft={items:[],mode:"copy"},Le=[],Rt=[],ul=!1,fl=!1,Kl="",Gl="",Jl=!1,ql=m("common.delete"),Gt=null,Jt=null,qt=!1,Yt="",Et="",Tt="",dl=null,pl=!1,Vt="",Qt="";const Ji=[{id:"overview",label:m("tab.overview")},{id:"notes",label:m("tab.notes")},{id:"files",label:m("tab.files")},{id:"actions",label:m("tab.actions")},{id:"worklog",label:m("tab.worklog")},{id:"activity",label:m("tab.activity")}];let ml=null;Ei(async()=>{try{if(t(0,n=await se("GetStartupStatus")),o=!0,n.status==="first_run"){t(1,i=!0),t(55,ze=!1);return}if(n.status==="recovery"){t(2,r=!0),t(55,ze=!1);return}}catch(p){t(24,H=String(p))}try{t(23,Y=await se("VerstakVersion")||"verstak-gui/v2"),t(4,a=await se("ListSystemViews")||[]),t(5,d=await se("ListWorkspaceTree")||[]),t(6,h=await se("ListEnabledTemplates")||[])}catch(p){t(24,H=String(p)),t(4,a=[{id:"today",label:m("nav.today")},{id:"inbox",label:m("nav.inbox")},{id:"activity",label:m("nav.activity")}]),t(5,d=[]),t(6,h=[])}window.runtime&&window.runtime.EventsOn&&(window.runtime.EventsOn("files-dropped",Ec),ml=()=>window.runtime.EventsOff("files-dropped")),window.addEventListener("keydown",cn),t(55,ze=!1),Nl()}),Ul(()=>{ml&&ml(),window.removeEventListener("keydown",cn)});async function Yl(p){t(25,G=p),t(26,R=null),t(27,K="overview"),t(28,P=[]),x=[],t(30,ce=[]),t(31,ee=[]),t(41,ue=[]),t(43,_e=[]),t(44,be=!1),t(24,H=""),t(7,_=null),t(8,v=[]),y=0,b=!0,t(9,k=[]),t(10,z=null);try{p==="today"?(t(7,_=await se("ListTodayView")||{cases:[]}),t(41,ue=await se("GetSuggestions")||[]),t(42,we=ue.length)):p==="inbox"?t(43,_e=await se("ListInboxNodes")||[]):p==="journal"?await yt():p==="activity"&&(t(8,v=await se("ListActivityFeed",50,0)||[]),y=v.length,b=v.length===50)}catch(F){t(24,H=String(F)),t(7,_={cases:[]}),t(43,_e=[]),t(8,v=[])}}async function vt(p){t(26,R=p),t(27,K="overview"),t(28,P=[]),x=[],t(30,ce=[]),t(31,ee=[]),t(41,ue=[]),t(63,He=[]),t(62,Ve=[]),t(61,ve=null),t(64,lt=null),t(65,qe=""),t(69,Le=[]),Rt=[],t(29,V=null),t(44,be=!1),t(49,Fe=!1),t(24,H=""),t(22,q=[]),await Ql(p.id)}async function Ql(p){try{t(28,P=await se("ListNotes",p)||[])}catch{}try{x=await se("ListFiles",p)||[]}catch{}try{t(30,ce=await se("ListActions",p)||[])}catch{}try{t(31,ee=Ll(await se("ListWorklog",p)))}catch{}try{t(41,ue=await se("GetSuggestions")||[]),t(42,we=ue.length)}catch{t(41,ue=[]),t(42,we=0)}try{t(22,q=await se("ListActivityByNode",p,50,0)||[])}catch{}}async function nt(p){t(60,te=!0);try{let F=await se("ListItems",p)||[];F.sort((oe,me)=>oe.type!==me.type?oe.type==="folder"?-1:1:(oe.name||"").localeCompare(me.name||"")),t(63,He=F)}catch{t(63,He=[])}t(60,te=!1)}async function hl(p){if(!R)return;try{const oe=await se("GetNodeDetail",p);oe&&t(62,Ve=[...Ve,{id:p,name:oe.title}])}catch{t(62,Ve=[...Ve,{id:p,name:"..."}])}t(61,ve=p),t(59,de={...de,[p]:!0});const F=await se("ListWorkspaceChildren",p)||[];Bt(d,p,F),t(5,d=[...d]),await nt(p)}function Xl(){if(Ve.length<2)t(62,Ve=[]),t(61,ve=null),nt(R.id);else{const p=Ve[Ve.length-2];t(62,Ve=Ve.slice(0,-1)),t(61,ve=p.id),nt(p.id)}}function Zl(p){const F=Ve[p];t(62,Ve=Ve.slice(0,p+1)),t(61,ve=F.id),nt(F.id)}async function Xt(p){t(64,lt=p),t(65,qe=""),t(67,Kt=""),t(66,jt=!0);try{Cu(p)?t(65,qe=await se("GetFileBase64",p.fileId)||""):Su(p)&&t(65,qe=await se("ReadFileText",p.fileId)||"")}catch(F){t(67,Kt=String(F))}t(66,jt=!1)}function _l(){t(64,lt=null),t(65,qe=""),t(67,Kt="")}async function qi(){const p=prompt(m("file.namePrompt"));if(!(!p||!p.trim()))try{const F=ve||R.id;await se("CreateEmptyFile",F,p.trim()),await nt(F),await yl(F)}catch(F){t(24,H=String(F))}}async function xl(p){try{await se("DuplicateNode",p);const F=ve||R.id;await nt(F),await yl(F)}catch(F){t(24,H=String(F))}}function $l(p){const F=He.find(oe=>oe.id===p);F&&gl(F.id,F.name)}function en(p){t(68,ft={items:[p],mode:"cut"})}function tn(p){t(68,ft={items:[p],mode:"copy"})}async function ln(){if(ft.items.length===0)return;const p=ve||R.id;try{if(ft.mode==="copy")for(const F of ft.items)await se("DuplicateNode",F);else for(const F of ft.items)await se("MoveNode",F,p);t(68,ft={items:[],mode:"copy"}),await nt(p)}catch(F){t(24,H=String(F))}}function nn(p){Le.includes(p)?t(69,Le=Le.filter(F=>F!==p)):t(69,Le=[...Le,p])}function on(p){t(69,Le=[p])}function Yi(){t(69,Le=He.map(p=>p.id))}function sn(p){if(He.length===0)return;const F=Le.length>0?Le[Le.length-1]:He[0].id,oe=He.findIndex(zt=>zt.id===F),me=He.findIndex(zt=>zt.id===p);if(oe===-1||me===-1)return;const et=Math.min(oe,me),ct=Math.max(oe,me),Ml=He.slice(et,ct+1).map(zt=>zt.id),En=new Set(Le);Ml.forEach(zt=>En.add(zt)),t(69,Le=[...En])}function Qi(){t(69,Le=[])}function vl(p){return p.length>0?p:He.map(F=>F.id)}async function Xi(){const p=vl(Le),F=He.find(me=>me.id===p[0]);let oe;p.length===1&&(F==null?void 0:F.type)==="folder"?oe=m("delete.folder"):p.length===1?oe=m("delete.file"):oe=m("delete.files",{count:p.length}),Nt({title:m("delete.confirmTitle"),message:m("delete.confirmMessage")+" "+oe+"?",confirmText:m("common.delete"),danger:!0,onConfirm:async()=>{for(const et of p)try{await se("DeleteFileOrFolder",et)}catch(ct){t(24,H=String(ct))}t(69,Le=[]);const me=ve||R.id;await nt(me)}})}function Zi(){const p=vl(Le);t(68,ft={items:p,mode:"cut"}),t(69,Le=[])}function xi(){const p=vl(Le);t(68,ft={items:p,mode:"copy"}),t(69,Le=[])}function $i(p,F){const oe=Le.includes(F)?Le:[F];Rt=oe,p.dataTransfer.effectAllowed="move",p.dataTransfer.setData("text/plain",oe.join(","))}function ec(p,F){const oe=He.find(me=>me.id===F);oe&&oe.type==="folder"&&(p.preventDefault(),p.dataTransfer.dropEffect="move")}async function tc(p,F){if(p.preventDefault(),Rt.length!==0){for(const oe of Rt)try{await se("MoveNode",oe,F)}catch(me){t(24,H=String(me))}Rt=[],t(69,Le=[]),await nt(ve||R.id)}}function cn(p){if(K==="files"&&!(p.target.tagName==="INPUT"||p.target.tagName==="TEXTAREA"))if(p.ctrlKey||p.metaKey)p.key==="c"||p.key==="C"?(p.preventDefault(),xi()):p.key==="x"||p.key==="X"?(p.preventDefault(),Zi()):p.key==="v"||p.key==="V"?(p.preventDefault(),ln()):p.key==="a"||p.key==="A"?(p.preventDefault(),Yi()):p.key==="o"||p.key==="O"?(p.preventDefault(),lc()):p.key==="Enter"&&(p.preventDefault(),rn());else if(p.key==="Enter")p.preventDefault(),rn();else if(p.key==="Delete"||p.key==="Backspace"){if(lt){p.preventDefault(),_l();return}if(Le.length>0){p.preventDefault(),Xi();return}if(p.key==="Backspace"&&Ve.length>0){p.preventDefault(),Xl();return}}else if(p.key==="Escape"){if(lt){_l();return}if(Le.length>0){Qi();return}}else p.key==="F2"&&(p.preventDefault(),nc())}function rn(){if(Le.length===1){const p=He.find(F=>F.id===Le[0]);p&&(p.type==="folder"?hl(p.id):Xt(p))}}function lc(){if(Le.length===1){const p=He.find(F=>F.id===Le[0]);p&&p.fileId&&se("OpenFile",p.fileId)}}function gl(p,F){Yt=p,t(77,Et=F),t(78,Tt=""),t(76,qt=!0)}function nc(){if(Le.length===1){const p=He.find(F=>F.id===Le[0]);p&&gl(p.id,p.name)}}async function an(){const p=Et.trim();if(!p){t(78,Tt=m("rename.emptyError"));return}try{await se("ValidateName",p)}catch{t(78,Tt=m("rename.invalidError"));return}t(76,qt=!1);const F=Yt;Yt="";try{await se("RenameNode",F,p),R&&R.id===F&&t(26,R={...R,title:p}),await Ot(),ve&&await nt(ve)}catch(oe){t(24,H=String(oe))}}function oc(){t(76,qt=!1),Yt="",t(77,Et=""),t(78,Tt="")}function sc(p){p.key==="Enter"?an():t(78,Tt="")}function Nt(p){t(72,Kl=p.title||m("common.confirm")),t(73,Gl=p.message||""),t(74,Jl=p.danger!==void 0?p.danger:!0),t(75,ql=p.confirmText||m("common.delete")),Gt=p.onConfirm||null,Jt=p.onCancel||null,t(71,fl=!0)}function un(){t(71,fl=!1),Gt=null,Jt=null}function ic(){Gt&&Gt(),un()}function cc(){Jt&&Jt(),un()}function fn(p){t(46,Qe=Be.node),t(47,Xe=p),t(45,Ue=""),t(44,be=!0),Dt()}function rc(){t(46,Qe=null),t(47,Xe=void 0),t(45,Ue=""),t(44,be=!0)}function ac(){t(44,be=!1),t(45,Ue=""),t(46,Qe=null),t(47,Xe=void 0)}async function dn(){if(!(!Ue.trim()||Xe===void 0))try{const p=Qe?Qe.id:"",F=Xe?Xe.id:"",oe=await se("CreateNodeFromTemplate",p,Ue.trim(),F);t(44,be=!1),t(45,Ue="");const me=oe?oe.id:null;if(t(46,Qe=null),t(47,Xe=void 0),p){t(59,de={...de,[p]:!0});const et=await se("ListWorkspaceChildren",p)||[];Bt(d,p,et),t(5,d=[...d])}else t(5,d=await se("ListWorkspaceTree")||d);if(me){const et=await se("GetNodeDetail",me);et&&(t(25,G=""),vt(et))}}catch(p){t(24,H=String(p))}}function uc(p,F){t(48,Be={visible:!0,x:p.clientX,y:p.clientY,node:F})}function Dt(){t(48,Be={visible:!1,x:0,y:0,node:null})}async function fc(p){const F=!de[p];if(t(59,de={...de,[p]:F}),!F)return;const oe=await se("ListWorkspaceChildren",p)||[];Bt(d,p,oe),t(5,d=[...d])}async function dc(p,F){if(!(!p||!F||p===F))try{const oe=await se("MoveNode",p,F);await Ot();const me=await se("GetNodeDetail",p);me&&(t(25,G=""),vt(me))}catch(oe){t(24,H=String(oe))}}async function pc(p){p.preventDefault();try{const F=p.dataTransfer.getData("text/plain");if(!F)return;const oe=await se("GetNodeDetail",F);if(!oe||!oe.parent_id)return;await se("MoveNode",F,""),await Ot();const me=await se("GetNodeDetail",F);me&&(t(25,G=""),vt(me))}catch(F){t(24,H=String(F))}}function mc(p){p.preventDefault(),p.dataTransfer.dropEffect="move",t(70,ul=!0)}function hc(p){t(70,ul=!1)}function pn(p){gl(p.id,p.title),Dt()}function mn(p){Dt(),Nt({title:m("delete.confirmTitle"),message:m("delete.confirmMessage")+" "+p.title+"?",confirmText:m("common.delete"),danger:!0,onConfirm:async()=>{try{await se("DeleteNode",p.id),await Ot(),R&&R.id===p.id&&t(26,R=null)}catch(F){t(24,H=String(F))}}})}async function gt(p){Dt();const F=typeof p=="string"?p:p.id;try{await se("OpenFolder",F)}catch(oe){t(24,H=String(oe))}}async function hn(p){Dt();try{await se("MoveNode",p.id,""),await Ot();const F=await se("GetNodeDetail",p.id);F&&(t(25,G=""),vt(F))}catch(F){t(24,H=String(F))}}async function Ot(){const p=Object.keys(de).filter(oe=>de[oe]),F=await se("ListWorkspaceTree")||[];for(const oe of p){const et=(await se("ListWorkspaceChildren",oe)||[]).map(ct=>({...ct}));Gi(F,oe,et)}t(5,d=F)}async function yl(p){const F=await se("ListWorkspaceChildren",p)||[];Bt(d,p,F),t(5,d=[...d])}function _n(){t(49,Fe=!0),t(50,Ee="")}function _c(){t(49,Fe=!1),t(50,Ee="")}async function vn(){if(!(!Ee.trim()||!R))try{const p=await se("CreateNote",R.id,Ee.trim());t(28,P=[...P,p&&p.id?p:{id:Date.now().toString(),title:Ee.trim(),createdAt:new Date().toISOString()}]),t(49,Fe=!1),t(50,Ee="")}catch{const F={id:Date.now().toString(),title:Ee.trim(),createdAt:new Date().toISOString()};t(28,P=[...P,F]),t(49,Fe=!1),t(50,Ee="")}}async function Mt(p){if(V&&V.dirty){Nt({title:m("note.unsavedTitle"),message:m("note.unsavedMessage"),confirmText:m("note.unsavedClose"),danger:!1,onConfirm:async()=>{await gn(p)}});return}await gn(p)}async function gn(p){try{const F=await se("ReadNote",p.id);t(29,V={id:p.id,title:p.title,content:F||"",dirty:!1})}catch{t(29,V={id:p.id,title:p.title,content:"# "+p.title+` - -`,dirty:!1})}}function vc(){if(V&&V.dirty){Nt({title:m("note.unsavedTitle"),message:m("note.unsavedMessage"),confirmText:m("note.unsavedClose"),danger:!1,onConfirm:()=>{t(29,V=null)}});return}t(29,V=null)}function gc(p){V&&(t(29,V.content=p.target.value,V),t(29,V.dirty=!0,V))}async function yc(){if(V)try{await se("SaveNote",V.id,V.content),t(29,V.dirty=!1,V)}catch{t(29,V.dirty=!1,V)}}function Zt(p=null){t(39,X=p),t(40,Z=null),t(33,le=p?p.summary:""),t(34,ie=p?String(p.minutes||""):""),t(35,ae=p&&p.date||""),t(36,ke=p&&p.details||""),t(37,We=p?!!p.billable:!1),t(38,Ne=p?!!p.approximate:!1),t(32,ne=!0)}function bc(){t(32,ne=!1),t(39,X=null),t(40,Z=null)}async function bl(p=""){const F=p||(R?R.id:"");R&&R.id===F&&t(31,ee=Ll(await se("ListWorklog",R.id))||ee),G==="journal"&&await yt()}async function kc(){const p=parseInt(ie,10);if(!(!le.trim()||isNaN(p)||p<=0)&&!(!Z&&!X&&!R)){try{if(Z){const F=JSON.stringify(Pl(Z));await se("AcceptSuggestionFull",Z.nodeId,le.trim(),ke,ae,p,Ne,We,F),await zl()}else X?(await se("UpdateWorklogEntry",X.id,le.trim(),ke,ae,p,Ne,We),await bl(X.nodeId)):(await se("CreateWorklogFull",R.id,le.trim(),ke,ae,p,Ne,We),await bl(R.id))}catch(F){t(24,H=String(F));return}t(32,ne=!1),t(39,X=null),t(40,Z=null)}}function kl(p){Nt({title:m("worklog.deleteEntry"),message:m("worklog.deleteConfirm"),confirmText:m("common.delete"),danger:!0,onConfirm:async()=>{try{await se("DeleteWorklogEntry",p.id),await bl(p.nodeId)}catch(F){t(24,H=String(F))}}})}async function zl(){t(41,ue=await se("GetSuggestions")||[]),t(42,we=ue.length),R&&t(31,ee=Ll(await se("ListWorklog",R.id))),G==="journal"&&await yt()}function xt(p){t(40,Z=p),t(39,X=null),t(33,le=p.summary||""),t(34,ie=String(p.suggestedMin||"")),t(35,ae=""),t(36,ke=""),t(37,We=!1),t(38,Ne=!0),t(32,ne=!0)}async function wl(p){try{const F=Pl(p),oe=JSON.stringify(F);ll("acceptTodaySuggestion: nodeId="+p.nodeId+" eventIds="+oe+" events="+JSON.stringify((p.events||[]).map(me=>({id:me.id,type:me.eventType,title:me.title})))),await se("AcceptSuggestionWith",p.nodeId,p.summary,p.suggestedMin,"",oe),await zl()}catch(F){ll("acceptTodaySuggestion error: "+F)}}async function yn(p){try{const F=Pl(p),oe=JSON.stringify(F);ll("acceptJournalSuggestion: nodeId="+p.nodeId+" eventIds="+oe+" events="+JSON.stringify((p.events||[]).map(me=>({id:me.id,type:me.eventType,title:me.title})))),await se("AcceptSuggestionWith",p.nodeId,p.summary,p.suggestedMin,"",oe),await zl()}catch(F){ll("acceptJournalSuggestion error: "+F)}}async function yt(){try{const[p,F,oe]=await Promise.all([se("ListWorklogReport",S,j,T,N,E,I),se("WorklogReportSummary",S,j,T,N,E,I),se("GetSuggestions")]);if(t(9,k=(p||[]).map(me=>(me._expanded===void 0&&(me._expanded=!1),me))),t(10,z=F||null),t(41,ue=oe||[]),t(42,we=ue.length),T&&!D)if(p&&p.length>0&&p[0].nodePath)t(17,D=p[0].nodePath);else try{t(17,D=await se("GetNodeTitle",T))}catch{t(17,D="")}}catch{t(9,k=[]),t(10,z=null),t(41,ue=[]),t(42,we=0)}}async function $t(p){try{const F=await se("SaveWorklogReport",p,S,j,T,N,E,I);t(18,L=F),setTimeout(()=>t(18,L=""),4e3)}catch(F){if(String(F).includes("отменено"))return;t(18,L="Ошибка: "+String(F)),setTimeout(()=>t(18,L=""),6e3)}}let bn;async function Cl(p){if(p._expanded=!p._expanded,t(9,k),p._expanded&&!p._events&&p._hasEvents===void 0)try{p._events=await se("GetWorklogEntryEvents",p.id)||[],p._hasEvents=p._events.length>0,t(9,k)}catch{p._events=[],p._hasEvents=!1,t(9,k)}}async function Sl(p){if(p._expanded=!p._expanded,p._expanded&&p.source==="suggestion"&&!p._events&&p._hasEvents===void 0)try{p._events=await se("GetWorklogEntryEvents",p.id)||[],p._hasEvents=p._events.length>0}catch(F){F._events=[],F._hasEvents=!1}t(31,ee)}async function zc(){const p=O.trim();if(!p||p.length<2){t(20,W=[]),t(21,J=!1);return}try{t(20,W=await se("SearchNodes",p)||[]),t(21,J=W.length>0)}catch{t(20,W=[]),t(21,J=!1)}}function wc(){clearTimeout(bn),bn=setTimeout(zc,200)}function kn(p){t(14,T=p.id),t(17,D=p.path||p.title),t(13,N=!0),t(19,O=""),t(20,W=[]),t(21,J=!1),yt()}function zn(){t(14,T=""),t(13,N=!1),t(17,D=""),t(19,O=""),t(20,W=[]),t(21,J=!1),yt()}function Cc(){t(11,S=""),t(12,j=""),t(14,T=""),t(13,N=!1),t(15,E="all"),t(16,I="all"),t(17,D=""),t(19,O=""),t(20,W=[]),t(21,J=!1),yt()}async function wn(){const p=await se("PickFile");if(!p)return;const F=ve||R.id;await jl(F,p)}async function Sc(){const p=await se("PickDirectory");if(!p)return;const F=ve||R.id;await jl(F,p)}async function jl(p,F){t(56,De=!0);try{const oe=await se("PreviewImport",F);t(57,Ce=oe),Ke=F,Me=p,t(58,Ie=!0)}catch(oe){t(24,H=String(oe))}t(56,De=!1)}async function El(p){try{const F=Me||R.id,oe=p==="copy"?await se("AddPathCopy",F,Ke):await se("AddPathLink",F,Ke);t(58,Ie=!1),t(57,Ce=null),t(62,Ve=[]),t(61,ve=null),await Promise.all([Ql(F),nt(F),yl(F)])}catch(F){t(24,H=String(F))}}function jc(){t(58,Ie=!1),t(57,Ce=null)}async function Cn({id:p,type:F}){const oe=m(F==="folder"?"delete.folder":"delete.file");Nt({title:m("delete.confirmTitle"),message:m("delete.confirmMessage")+" "+oe+"?",confirmText:m("common.delete"),danger:!0,onConfirm:async()=>{try{await se("DeleteFileOrFolder",p),x=x.filter(et=>et.nodeId!==p);const me=ve||R.id;await nt(me)}catch(me){t(24,H=String(me))}}})}async function Ec(p){if(!p||p.length===0)return;if(!R){t(24,H=m("error.selectCaseFirst"));return}const F=p[0];await jl(R.id,F)}function Tc(p){return{note_created:m("event.noteCreated"),note_updated:m("event.noteUpdated"),note_deleted:"Заметка удалена",file_added:m("event.fileAdded"),file_deleted:m("event.fileDeleted"),file_renamed:m("event.fileRenamed"),file_copied:m("event.fileCopied"),file_moved:m("event.fileMoved"),folder_added:m("event.folderAdded"),folder_deleted:m("event.folderDeleted"),folder_renamed:m("event.folderRenamed"),folder_moved:"Папка перемещена",node_created:m("event.caseCreated"),node_updated:m("event.caseUpdated"),node_deleted:"Узел удалён",action_created:"Действие создано",action_done:"Действие выполнено",worklog_added:"Запись времени добавлена"}[p]||p}function Nc(p){return{project:m("kind.project"),client:m("kind.client"),document:m("kind.document"),recipe:m("kind.recipe"),folder:m("kind.folder"),note:m("kind.note"),file:m("kind.file"),archive:m("kind.archive"),case:m("kind.case")}[p]||p||m("kind.case")}function Dc(){t(51,Se=!0),t(52,Pe=""),t(53,Te="open_url"),t(54,Ae="")}function Mc(){t(51,Se=!1),t(52,Pe=""),t(54,Ae="")}async function Tl(){if(!(!Pe.trim()||!Ae.trim()||!R))try{const p=await se("CreateAction",R.id,Te,Pe.trim(),Ae.trim());p&&p.id&&t(30,ce=[...ce,p]),t(51,Se=!1),t(52,Pe=""),t(54,Ae="")}catch(p){t(24,H=String(p))}}async function Sn(p){try{await se("DeleteAction",p),t(30,ce=ce.filter(F=>F.id!==p))}catch(F){t(24,H=String(F))}}function Ic(p){const F=je.find(oe=>oe.id===p);return F?F.label:p}async function ut(p){try{const F=await se("GetNodeDetail",p);F&&vt(F)}catch(F){t(24,H=String(F))}}async function bt(p){const F=I1(p),oe=F.nodeId;if(oe)try{const me=await se("GetNodeDetail",oe);if(!me)return;if(vt(me),F.tab==="notes"){if(t(27,K="notes"),F.targetId){try{t(28,P=await se("ListNotes",oe)||[])}catch{}const et=P.find(ct=>ct.id===F.targetId);et&&setTimeout(()=>Mt(et),100)}}else if(F.tab==="files")if(t(27,K="files"),F.targetId)try{const et=await se("GetNodeDetail",F.targetId);if(et&&et.parent_id){await nt(et.parent_id);const ct=He.find(Ml=>Ml.id===F.targetId);ct&&ct.type==="file"&&wu(ct)&&setTimeout(()=>Xt(ct),150)}else await nt(oe)}catch{await nt(oe)}else await nt(oe)}catch(me){t(24,H=String(me))}}async function kt(p){return bt(p)}async function Nl(){try{t(79,dl=await se("SyncStatus"))}catch{t(79,dl={configured:!1,serverUrl:"",deviceId:"",unpushedOps:0,lastSyncAt:"",syncInterval:0})}}let jn="general";function Dl(p){t(83,jn=p||"general"),t(3,u=!0)}function Ac(){t(3,u=!1)}function Fc(p){const F=Array.isArray(p==null?void 0:p.conflicts)?p.conflicts:[],oe=Array.isArray(p==null?void 0:p.applyErrors)?p.applyErrors:[],me=[];return F.length>0&&me.push(m("sync.conflictsCount",{count:F.length})),oe.length>0&&me.push(m("sync.applyErrorsCount",{count:oe.length})),me.join(" · ")}async function Pc(){t(80,pl=!0),t(81,Vt=""),t(82,Qt="");try{const p=await se("SyncNow");await Nl(),t(81,Vt=Fc(p)),t(82,Qt=Vt?"warning":"")}catch(p){console.error("sync error:",p),t(81,Vt=`${m("sync.status.error")}: ${(p==null?void 0:p.message)||p}`),t(82,Qt="warning")}finally{t(80,pl=!1)}}function Lc(p){t(1,i=!1),t(0,n=p),t(55,ze=!1),window.location.reload()}function Rc(p){t(2,r=!1),t(0,n=p),t(55,ze=!1),window.location.reload()}const Vc=p=>p.nodeId===R.id,Oc=p=>Yl(p.id),Wc=()=>Dl("sync"),Bc=()=>Dl(),Hc=()=>t(24,H=""),Uc=()=>t(24,H=""),Kc=()=>t(24,H="");function Gc(){V.content=this.value,t(29,V)}const Jc=p=>{t(27,K=p.id),p.id==="files"&&R&&He.length===0&&!ve&&nt(R.id)},qc=()=>{t(27,K="notes"),_n()},Yc=()=>{t(27,K="files"),wn()},Qc=()=>t(27,K="worklog"),Xc=p=>Mt(p),Zc=p=>Mt(p);function xc(){Ee=this.value,t(50,Ee)}const $c=p=>p.key==="Enter"&&vn(),er=p=>Mt(p),tr=p=>Mt(p),lr=p=>{const F=p.detail;F===0?(t(62,Ve=[]),t(61,ve=null),nt(R.id)):Zl(F-1)},nr=p=>hl(p.detail),or=p=>Xt(p.detail),sr=p=>se("OpenFile",p.detail),ir=p=>se("OpenFolder",p.detail),cr=p=>Cn(p.detail),rr=p=>$l(p.detail.id),ar=p=>xl(p.detail),ur=p=>en(p.detail),fr=p=>tn(p.detail),dr=p=>on(p.detail),pr=p=>nn(p.detail),mr=p=>sn(p.detail),hr=p=>se("OpenFile",p.detail),_r=p=>se("RunAction",p.id),vr=p=>Sn(p.id),gr=()=>Zt(),yr=p=>p.nodeId===R.id,br=p=>xt(p),kr=p=>wl(p),zr=(p,F,oe)=>t(41,F[oe]._expanded=!p._expanded,ue,t(26,R)),wr=(p,F,oe,me)=>me.key==="Enter"&&t(41,F[oe]._expanded=!p._expanded,ue,t(26,R)),Cr=p=>bt(p),Sr=p=>gt(p.nodeId),jr=p=>Zt(p),Er=p=>kl(p),Tr=p=>bt(p),Nr=p=>gt(p.nodeId),Dr=p=>Sl(p),Mr=(p,F)=>F.key==="Enter"&&Sl(p),Ir=p=>kt(p),Ar=(p,F)=>F.key==="Enter"&&kt(p),Fr=p=>ut(p.id),Pr=p=>gt(p),Lr=p=>ut(p.id),Rr=(p,F)=>F.key==="Enter"&&ut(p.id);function Vr(){S=this.value,t(11,S)}function Or(){j=this.value,t(12,j)}const Wr=()=>{t(19,O=""),t(17,D=""),zn()};function Br(){O=this.value,t(19,O)}const Hr=()=>setTimeout(()=>t(21,J=!1),200),Ur=p=>kn(p);function Kr(){N=this.checked,t(13,N)}function Gr(){E=nl(this),t(15,E)}function Jr(){I=nl(this),t(16,I)}const qr=()=>$t("csv"),Yr=()=>$t("markdown"),Qr=()=>$t("pdf"),Xr=p=>ut(p.nodeId),Zr=(p,F,oe,me)=>t(41,F[oe].suggestedMin=parseInt(me.target.value),ue),xr=p=>xt(p),$r=p=>yn(p),ea=(p,F,oe)=>t(41,F[oe]._expanded=!p._expanded,ue),ta=(p,F,oe,me)=>me.key==="Enter"&&t(41,F[oe]._expanded=!p._expanded,ue),la=p=>bt(p),na=p=>gt(p.nodeId),oa=p=>ut(p.nodeId),sa=p=>Cl(p),ia=(p,F)=>F.key==="Enter"&&Cl(p),ca=p=>Zt(p),ra=p=>kl(p),aa=p=>bt(p),ua=p=>ut(p.nodeId),fa=(p,F,oe,me)=>t(41,F[oe].suggestedMin=parseInt(me.target.value),ue),da=p=>xt(p),pa=p=>wl(p),ma=(p,F,oe)=>t(41,F[oe]._expanded=!p._expanded,ue),ha=(p,F,oe,me)=>me.key==="Enter"&&t(41,F[oe]._expanded=!p._expanded,ue),_a=p=>bt(p),va=p=>gt(p.nodeId),ga=p=>ut(p.nodeId),ya=(p,F)=>F.key==="Enter"&&ut(p.nodeId),ba=p=>ut(p.nodeId),ka=(p,F)=>F.key==="Enter"&&ut(p.nodeId),za=p=>kt(p),wa=(p,F)=>F.key==="Enter"&&kt(p),Ca=p=>kt(p),Sa=(p,F)=>F.key==="Enter"&&kt(p),ja=()=>t(47,Xe=null),Ea=p=>t(47,Xe=p);function Ta(){Ue=this.value,t(45,Ue)}const Na=p=>p.key==="Enter"&&dn(),Da=p=>fn(p),Ma=()=>hn(Be.node),Ia=()=>pn(Be.node),Aa=()=>mn(Be.node),Fa=()=>gt(Be.node);function Pa(){ae=this.value,t(35,ae)}function La(){le=this.value,t(33,le)}function Ra(){ie=cl(this.value),t(34,ie)}function Va(){ke=this.value,t(36,ke)}function Oa(){We=this.checked,t(37,We)}function Wa(){Ne=this.checked,t(38,Ne)}function Ba(){Pe=this.value,t(52,Pe)}const Ha=p=>p.key==="Enter"&&Tl();function Ua(){Te=nl(this),t(53,Te),t(85,je)}function Ka(){Ae=this.value,t(54,Ae)}const Ga=p=>p.key==="Enter"&&Tl(),Ja=()=>El("copy"),qa=()=>El("link");function Ya(){Et=this.value,t(77,Et)}return[n,i,r,u,a,d,h,_,v,k,z,S,j,N,T,E,I,D,L,O,W,J,q,Y,H,G,R,K,P,V,ce,ee,ne,le,ie,ae,ke,We,Ne,X,Z,ue,we,_e,be,Ue,Qe,Xe,Be,Fe,Ee,Se,Pe,Te,Ae,ze,De,Ce,Ie,de,te,ve,Ve,He,lt,qe,jt,Kt,ft,Le,ul,fl,Kl,Gl,Jl,ql,qt,Et,Tt,dl,pl,Vt,Qt,jn,B,je,Ji,Yl,vt,nt,hl,Xl,Zl,Xt,_l,qi,xl,$l,en,tn,ln,nn,on,sn,$i,ec,tc,an,oc,sc,ic,cc,fn,rc,ac,dn,uc,Dt,fc,dc,pc,mc,hc,pn,mn,gt,hn,_n,_c,vn,Mt,vc,gc,yc,Zt,bc,kc,kl,xt,wl,yn,yt,$t,Cl,Sl,wc,kn,zn,Cc,wn,Sc,El,jc,Cn,Tc,Nc,Dc,Mc,Tl,Sn,Ic,ut,bt,kt,Nl,Dl,Ac,Pc,Lc,Rc,Vc,Oc,Wc,Bc,Hc,Uc,Kc,Gc,Jc,qc,Yc,Qc,Xc,Zc,xc,$c,er,tr,lr,nr,or,sr,ir,cr,rr,ar,ur,fr,dr,pr,mr,hr,_r,vr,gr,yr,br,kr,zr,wr,Cr,Sr,jr,Er,Tr,Nr,Dr,Mr,Ir,Ar,Fr,Pr,Lr,Rr,Vr,Or,Wr,Br,Hr,Ur,Kr,Gr,Jr,qr,Yr,Qr,Xr,Zr,xr,$r,ea,ta,la,na,oa,sa,ia,ca,ra,aa,ua,fa,da,pa,ma,ha,_a,va,ga,ya,ba,ka,za,wa,Ca,Sa,ja,Ea,Ta,Na,Da,Ma,Ia,Aa,Fa,Pa,La,Ra,Va,Oa,Wa,Ba,Ha,Ua,Ka,Ga,Ja,qa,Ya]}class F1 extends $e{constructor(e){super(),xe(this,e,A1,M1,Ze,{},null,[-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1])}}new F1({target:document.getElementById("app")}); diff --git a/cmd/verstak-gui/frontend-dist/assets/main-es_E5H-H.css b/cmd/verstak-gui/frontend-dist/assets/main-es_E5H-H.css new file mode 100644 index 0000000..aa5a1fe --- /dev/null +++ b/cmd/verstak-gui/frontend-dist/assets/main-es_E5H-H.css @@ -0,0 +1 @@ +.file-row.svelte-1skuef2.svelte-1skuef2{display:flex;align-items:center;gap:10px;padding:8px 12px;border-radius:6px;cursor:default;transition:background .12s;min-height:52px;-webkit-user-select:none;user-select:none;position:relative}.file-row.svelte-1skuef2.svelte-1skuef2:hover{background:#1e1e30}.file-row--selected.svelte-1skuef2.svelte-1skuef2{background:#1e1e3a;outline:1px solid #3a3a6c}.file-row--selected.svelte-1skuef2.svelte-1skuef2:hover{background:#252545}.file-row.svelte-1skuef2.svelte-1skuef2:focus-visible{outline:2px solid #5588ff;outline-offset:-2px}.file-row-icon.svelte-1skuef2.svelte-1skuef2{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:32px;height:32px;color:#888}.file-row-body.svelte-1skuef2.svelte-1skuef2{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.file-row-name.svelte-1skuef2.svelte-1skuef2{font-size:13px;color:#ddd;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.3}.file-row-meta.svelte-1skuef2.svelte-1skuef2{display:flex;align-items:center;gap:4px;font-size:11px;color:#666}.meta-sep.svelte-1skuef2.svelte-1skuef2{color:#444}.file-row-actions.svelte-1skuef2.svelte-1skuef2{display:flex;gap:2px;align-items:center;opacity:0;transition:opacity .15s ease;flex-shrink:0}.file-row.svelte-1skuef2:hover .file-row-actions.svelte-1skuef2{opacity:1}.action-btn.svelte-1skuef2.svelte-1skuef2{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;border-radius:4px;background:transparent;color:#666;cursor:pointer;transition:background .12s,color .12s}.action-btn.svelte-1skuef2.svelte-1skuef2:hover{background:#2a2a3c;color:#ccc}.action-btn-danger.svelte-1skuef2.svelte-1skuef2:hover{background:#3a2222;color:#ff6b6b}.action-btn.svelte-1skuef2.svelte-1skuef2:focus-visible{outline:2px solid #5588ff;outline-offset:1px}.menu-backdrop.svelte-1skuef2.svelte-1skuef2{position:fixed;top:0;right:0;bottom:0;left:0;z-index:99}.menu.svelte-1skuef2.svelte-1skuef2{position:fixed;background:#1a1a28;border:1px solid #2a2a3c;border-radius:8px;padding:4px;z-index:100;min-width:220px;box-shadow:0 4px 16px #00000080}.menu-item.svelte-1skuef2.svelte-1skuef2{display:flex;align-items:center;gap:8px;width:100%;padding:7px 10px;border:none;background:transparent;color:#ccc;font-size:12px;text-align:left;cursor:pointer;border-radius:4px;font-family:inherit}.menu-item.svelte-1skuef2.svelte-1skuef2:hover{background:#2a2a3c;color:#fff}.menu-item-danger.svelte-1skuef2.svelte-1skuef2{color:#ff6b6b}.menu-item-danger.svelte-1skuef2.svelte-1skuef2:hover{background:#3a2222}.menu-item.svelte-1skuef2.svelte-1skuef2:focus-visible{outline:2px solid #5588ff;outline-offset:1px}.menu-sep.svelte-1skuef2.svelte-1skuef2{height:1px;background:#2a2a3c;margin:4px 8px}.breadcrumbs.svelte-csi2lb{display:flex;align-items:center;gap:4px;padding:8px 0;font-size:13px;color:#999}.sep.svelte-csi2lb{color:#444}.crumb.svelte-csi2lb{font-size:13px}.crumb--current.svelte-csi2lb{color:#ccc}.crumb--link.svelte-csi2lb{background:none;border:none;padding:2px 4px;color:#888;cursor:pointer;border-radius:3px;font-family:inherit;font-size:13px;transition:color .12s,background .12s}.crumb--link.svelte-csi2lb:hover{color:#ccc;background:#1e1e30}.crumb--link.svelte-csi2lb:focus-visible{outline:2px solid #5588ff;outline-offset:1px}.overlay.svelte-1cw3u0m{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000a6;display:flex;align-items:center;justify-content:center;z-index:1000}.modal.svelte-1cw3u0m{background:#14141f;border:1px solid #2a2a3c;border-radius:10px;width:90vw;max-width:900px;height:85vh;max-height:700px;display:flex;flex-direction:column;overflow:hidden}.preview-header.svelte-1cw3u0m{display:flex;align-items:center;gap:10px;padding:12px 16px;border-bottom:1px solid #2a2a3c;flex-shrink:0}.preview-title.svelte-1cw3u0m{display:flex;align-items:center;gap:8px;color:#ddd;font-size:14px;min-width:0}.preview-name.svelte-1cw3u0m{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.preview-meta.svelte-1cw3u0m{font-size:11px;color:#666;margin-left:auto;white-space:nowrap}.preview-actions.svelte-1cw3u0m{display:flex;gap:4px;flex-shrink:0;margin-left:8px}.action-btn.svelte-1cw3u0m{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border:none;border-radius:4px;background:transparent;color:#666;cursor:pointer;transition:background .12s,color .12s}.action-btn.svelte-1cw3u0m:hover{background:#2a2a3c;color:#ccc}.action-btn.svelte-1cw3u0m:focus-visible{outline:2px solid #5588ff;outline-offset:1px}.action-btn-close.svelte-1cw3u0m{color:#ff6b6b}.action-btn-close.svelte-1cw3u0m:hover{background:#3a2222;color:#f44}.preview-body.svelte-1cw3u0m{flex:1;overflow:auto;min-height:0}.preview-status.svelte-1cw3u0m{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:48px 24px;color:#888;font-size:14px}.preview-image-container.svelte-1cw3u0m{display:flex;align-items:center;justify-content:center;padding:16px;min-height:200px;background:#0e0e18}.preview-image.svelte-1cw3u0m{max-width:100%;max-height:calc(85vh - 100px);object-fit:contain;border-radius:4px}.preview-text.svelte-1cw3u0m{margin:0;padding:16px;font-family:SF Mono,Fira Code,Cascadia Code,Consolas,monospace;font-size:12px;line-height:1.5;color:#ccc;white-space:pre-wrap;word-wrap:break-word;overflow:auto}.preview-pdf-container.svelte-1cw3u0m{width:100%;height:100%}.preview-pdf.svelte-1cw3u0m{width:100%;height:100%;border:none}.btn-sm.svelte-1cw3u0m{padding:6px 14px;border:1px solid #2a2a3c;background:#1a1a28;color:#ccc;border-radius:6px;cursor:pointer;font-size:12px;font-family:inherit;transition:background .12s}.btn-sm.svelte-1cw3u0m:hover{background:#223}.overlay.svelte-1fv6yyk{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:200}.modal.svelte-1fv6yyk{background:#1a1a28;border:1px solid #2a2a3c;border-radius:12px;padding:24px;width:360px;max-width:90vw}h3.svelte-1fv6yyk{font-size:18px;margin-bottom:12px;color:#e4e4ef}.message.svelte-1fv6yyk{font-size:14px;color:#aaa;margin-bottom:20px;line-height:1.4}.actions.svelte-1fv6yyk{display:flex;gap:8px;justify-content:flex-end}.btn.svelte-1fv6yyk{padding:8px 16px;border:1px solid #2a2a3c;background:#1a1a28;color:#ccc;border-radius:6px;cursor:pointer;font-size:13px;font-family:inherit}.btn.svelte-1fv6yyk:hover{background:#223}.btn-primary.svelte-1fv6yyk{background:#6366f1;border-color:#6366f1;color:#fff}.btn-primary.svelte-1fv6yyk:hover{background:#4f46e5}.btn-danger.svelte-1fv6yyk{background:#dc2626;border-color:#dc2626;color:#fff}.btn-danger.svelte-1fv6yyk:hover{background:#b91c1c}.btn.svelte-1fv6yyk:focus-visible{outline:2px solid #5588ff;outline-offset:1px}.tree-item.svelte-zj71cl.svelte-zj71cl{display:flex;align-items:center;height:32px;padding-right:8px;cursor:default;font-size:13px;color:#ccc;-webkit-user-select:none;user-select:none}.tree-item.svelte-zj71cl.svelte-zj71cl:hover{background:#223}.tree-item.selected.svelte-zj71cl.svelte-zj71cl{background:#2a2a4a;color:#fff;font-weight:500}.tree-item.drop-valid.svelte-zj71cl.svelte-zj71cl{background:#1a3a1a;outline:1px solid #4ade80;outline-offset:-1px}.tree-item.drop-invalid.svelte-zj71cl.svelte-zj71cl{background:#3a1a1a;outline:1px solid #ff6b6b;outline-offset:-1px}.tree-toggle.svelte-zj71cl.svelte-zj71cl{background:none;border:none;color:#666;cursor:pointer;padding:0;width:20px;height:32px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;font-family:inherit;line-height:1;font-size:12px}.tree-toggle.svelte-zj71cl.svelte-zj71cl:hover{color:#a5b4fc}.tree-toggle-placeholder.svelte-zj71cl.svelte-zj71cl{display:inline-block;width:20px;flex-shrink:0}.tree-icon.svelte-zj71cl.svelte-zj71cl{display:inline-flex;align-items:center;justify-content:center;width:20px;height:32px;flex-shrink:0;color:#888;margin-right:4px;cursor:pointer}.tree-icon.svelte-zj71cl.svelte-zj71cl:hover,.tree-item.selected.svelte-zj71cl .tree-icon.svelte-zj71cl{color:#a5b4fc}.tree-label.svelte-zj71cl.svelte-zj71cl{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;line-height:32px}.first-run-screen.svelte-11u707d.svelte-11u707d{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:2rem;background:var(--bg, #13131f)}.first-run-card.svelte-11u707d.svelte-11u707d{max-width:520px;width:100%;padding:2.5rem;background:var(--surface, #1e1e2e);border-radius:12px;border:1px solid var(--border, #2a2a3e);text-align:center}.first-run-logo.svelte-11u707d.svelte-11u707d{font-size:3rem;margin-bottom:.5rem}.first-run-card.svelte-11u707d h1.svelte-11u707d{margin:0 0 .75rem;font-size:1.5rem;color:var(--text, #e0e0e0)}.first-run-desc.svelte-11u707d.svelte-11u707d{color:var(--text-dim, #888);margin-bottom:1.5rem;font-size:.9rem;line-height:1.5}.input-row.svelte-11u707d.svelte-11u707d{display:flex;gap:.5rem}.input-row.svelte-11u707d input.svelte-11u707d{flex:1}.path-info.svelte-11u707d.svelte-11u707d{text-align:left;font-size:.85rem;padding:.5rem .75rem;margin-top:.5rem;background:var(--surface-alt, #252538);border-radius:6px;color:var(--text-dim, #888)}.error-msg.svelte-11u707d.svelte-11u707d{text-align:left;font-size:.85rem;padding:.5rem .75rem;margin-top:.5rem;background:#ff6b6b1a;border:1px solid rgba(255,107,107,.3);border-radius:6px;color:#ff6b6b}.first-run-actions.svelte-11u707d.svelte-11u707d{display:flex;gap:.75rem;justify-content:center;margin-top:1.5rem}.btn-lg.svelte-11u707d.svelte-11u707d{padding:.65rem 1.5rem;font-size:1rem}.form-group.svelte-11u707d.svelte-11u707d{margin-bottom:1rem;text-align:left}.form-label.svelte-11u707d.svelte-11u707d{display:block;font-size:.85rem;color:var(--text-dim, #888);margin-bottom:.4rem}.recovery-screen.svelte-s3o8c3.svelte-s3o8c3{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:2rem;background:var(--bg, #13131f)}.recovery-card.svelte-s3o8c3.svelte-s3o8c3{max-width:480px;width:100%;padding:2.5rem;background:var(--surface, #1e1e2e);border-radius:12px;border:1px solid var(--border, #2a2a3e);text-align:center}.recovery-icon.svelte-s3o8c3.svelte-s3o8c3{font-size:2.5rem;margin-bottom:.5rem;color:#f59e0b}.recovery-card.svelte-s3o8c3 h1.svelte-s3o8c3{margin:0 0 .75rem;font-size:1.4rem;color:var(--text, #e0e0e0)}.recovery-desc.svelte-s3o8c3.svelte-s3o8c3{color:var(--text-dim, #888);margin-bottom:.5rem;font-size:.9rem}.recovery-path.svelte-s3o8c3.svelte-s3o8c3{display:block;padding:.5rem .75rem;background:var(--surface-alt, #252538);border-radius:6px;font-size:.85rem;color:var(--text-dim, #aaa);word-break:break-all;margin-bottom:1.5rem}.error-msg.svelte-s3o8c3.svelte-s3o8c3{padding:.5rem .75rem;margin-bottom:1rem;background:#ff6b6b1a;border:1px solid rgba(255,107,107,.3);border-radius:6px;color:#ff6b6b;font-size:.85rem}.recovery-actions.svelte-s3o8c3.svelte-s3o8c3{display:flex;flex-direction:column;gap:.6rem}.btn-lg.svelte-s3o8c3.svelte-s3o8c3{padding:.65rem 1.25rem;font-size:.95rem;width:100%}.modal-desc.svelte-s3o8c3.svelte-s3o8c3{color:var(--text-dim, #888);font-size:.9rem;line-height:1.5;margin-bottom:1rem}.modal-overlay.svelte-s3o8c3.svelte-s3o8c3{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000}.modal.svelte-s3o8c3.svelte-s3o8c3{background:var(--surface, #1e1e2e);border:1px solid var(--border, #2a2a3e);border-radius:10px;padding:1.5rem;max-width:420px;width:90%}.modal.svelte-s3o8c3 h3.svelte-s3o8c3{margin:0 0 .75rem}.modal-actions.svelte-s3o8c3.svelte-s3o8c3{display:flex;gap:.5rem;justify-content:flex-end}.settings-sidebar.svelte-1uolm3f{width:200px;min-width:200px;border-right:1px solid var(--border, #2a2a3e);padding:.75rem 0;overflow-y:auto;background:var(--surface, #1e1e2e)}.settings-nav-item.svelte-1uolm3f{display:flex;align-items:center;gap:.5rem;width:100%;padding:.55rem 1rem;border:none;background:transparent;color:var(--text-dim, #888);font-size:.9rem;cursor:pointer;text-align:left;transition:background .15s,color .15s;font-family:inherit}.settings-nav-item.svelte-1uolm3f:hover:not(.disabled){background:var(--surface-alt, #252538);color:var(--text, #e0e0e0)}.settings-nav-item.active.svelte-1uolm3f{background:var(--accent-bg, rgba(99, 102, 241, .15));color:var(--accent, #818cf8);font-weight:600}.settings-nav-item.disabled.svelte-1uolm3f{opacity:.4;cursor:default}.settings-nav-icon.svelte-1uolm3f{width:1.4rem;height:1rem;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.settings-nav-label.svelte-1uolm3f{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.settings-section.svelte-1e2uhdh.svelte-1e2uhdh{padding:1.5rem;max-width:560px}.settings-section.svelte-1e2uhdh h2.svelte-1e2uhdh{margin:0 0 .25rem;font-size:1.2rem;color:var(--text, #e0e0e0)}.section-desc.svelte-1e2uhdh.svelte-1e2uhdh{color:var(--text-dim, #888);font-size:.85rem;margin-bottom:1.25rem;line-height:1.4}.settings-card.svelte-1e2uhdh.svelte-1e2uhdh{background:var(--surface-alt, #1e1e30);border:1px solid var(--border, #2a2a3e);border-radius:8px;padding:1rem 1.25rem;margin-bottom:1rem}.card-title.svelte-1e2uhdh.svelte-1e2uhdh{font-size:.9rem;font-weight:600;color:var(--text, #e0e0e0);margin:0 0 .75rem}.form-group.svelte-1e2uhdh.svelte-1e2uhdh{margin-bottom:0}.label-text.svelte-1e2uhdh.svelte-1e2uhdh{display:block;font-size:.85rem;color:var(--text-dim, #888);margin-bottom:.3rem}.settings-actions.svelte-1e2uhdh.svelte-1e2uhdh{display:flex;align-items:center;gap:.75rem;margin-top:1rem}.save-notice.svelte-1e2uhdh.svelte-1e2uhdh{padding:.4rem .75rem;background:#34d3991a;border:1px solid rgba(52,211,153,.3);border-radius:6px;color:#34d399;font-size:.85rem}.settings-section.svelte-1zbky3.svelte-1zbky3{padding:1.5rem;max-width:600px}.settings-section.svelte-1zbky3 h2.svelte-1zbky3{margin:0 0 .25rem;font-size:1.2rem;color:var(--text, #e0e0e0)}.section-desc.svelte-1zbky3.svelte-1zbky3{color:var(--text-dim, #888);font-size:.85rem;margin-bottom:1.25rem;line-height:1.4}.settings-card.svelte-1zbky3.svelte-1zbky3{background:var(--surface-alt, #1e1e30);border:1px solid var(--border, #2a2a3e);border-radius:8px;padding:1rem 1.25rem;margin-bottom:1rem}.notice.svelte-1zbky3.svelte-1zbky3{padding:.5rem .75rem;margin-bottom:.75rem;background:#ff6b6b1a;border:1px solid rgba(255,107,107,.3);border-radius:6px;color:#ff6b6b;font-size:.85rem}.info-row.svelte-1zbky3.svelte-1zbky3{display:flex;padding:.4rem 0;border-bottom:1px solid var(--border, #2a2a3e);font-size:.9rem}.info-row.svelte-1zbky3.svelte-1zbky3:last-child{border-bottom:none}.info-label.svelte-1zbky3.svelte-1zbky3{width:120px;min-width:120px;color:var(--text-dim, #888)}.info-value.svelte-1zbky3.svelte-1zbky3{color:var(--text, #e0e0e0);word-break:break-all}.info-value.mono.svelte-1zbky3.svelte-1zbky3{font-family:monospace;font-size:.85rem}.info-value.small.svelte-1zbky3.svelte-1zbky3{font-size:.8rem}.workspace-actions.svelte-1zbky3.svelte-1zbky3{display:flex;gap:.5rem;flex-wrap:wrap;margin-top:.5rem}.btn.svelte-1zbky3.svelte-1zbky3{padding:.45rem .8rem;border:1px solid var(--border, #2a2a3e);border-radius:6px;background:var(--surface-light, #232338);color:var(--text, #e0e0e0);font-size:.85rem;cursor:pointer}.btn.svelte-1zbky3.svelte-1zbky3:hover{background:var(--accent, #4a7c59);border-color:var(--accent, #4a7c59)}.no-data.svelte-1zbky3.svelte-1zbky3{color:var(--text-dim, #888);font-style:italic;margin:0}.settings-section.svelte-ksamnw.svelte-ksamnw{padding:1.5rem;max-width:560px}.settings-section.svelte-ksamnw h2.svelte-ksamnw{margin:0 0 .25rem;font-size:1.2rem;color:var(--text, #e0e0e0)}.section-desc.svelte-ksamnw.svelte-ksamnw{color:var(--text-dim, #888);font-size:.85rem;margin-bottom:1.25rem;line-height:1.4}.loading.svelte-ksamnw.svelte-ksamnw,.no-data.svelte-ksamnw.svelte-ksamnw{color:var(--text-dim, #888);font-style:italic}.template-list.svelte-ksamnw.svelte-ksamnw{display:flex;flex-direction:column;gap:.5rem}.template-item.svelte-ksamnw.svelte-ksamnw{display:flex;align-items:center;justify-content:space-between;padding:.6rem .75rem;background:var(--surface-alt, #252538);border-radius:6px;border:1px solid var(--border, #2a2a3e)}.template-info.svelte-ksamnw.svelte-ksamnw{display:flex;align-items:center;gap:.5rem}.template-name.svelte-ksamnw.svelte-ksamnw{color:var(--text, #e0e0e0);font-size:.9rem}.template-type.svelte-ksamnw.svelte-ksamnw{color:var(--text-dim, #888);font-size:.8rem}.toggle-label.svelte-ksamnw.svelte-ksamnw{display:flex;align-items:center;gap:.4rem;cursor:pointer}.toggle-text.svelte-ksamnw.svelte-ksamnw{font-size:.8rem;color:var(--text-dim, #888)}input[type=checkbox].svelte-ksamnw.svelte-ksamnw{accent-color:var(--accent, #818cf8)}.settings-section.svelte-8jch95.svelte-8jch95{padding:1.5rem;max-width:500px}.settings-section.svelte-8jch95 h2.svelte-8jch95{margin:0 0 .5rem;font-size:1.2rem;color:var(--text, #e0e0e0)}.section-desc.svelte-8jch95.svelte-8jch95{color:var(--text-dim, #888);font-size:.85rem;margin-bottom:1rem}.settings-section.svelte-1fx1e1e.svelte-1fx1e1e{padding:1.5rem;max-width:600px}.settings-section.svelte-1fx1e1e h2.svelte-1fx1e1e{margin:0 0 .25rem;font-size:1.2rem;color:var(--text, #e0e0e0)}.section-desc.svelte-1fx1e1e.svelte-1fx1e1e{color:var(--text-dim, #888);font-size:.85rem;margin-bottom:1.25rem;line-height:1.4}.settings-card.svelte-1fx1e1e.svelte-1fx1e1e{background:var(--surface-alt, #1e1e30);border:1px solid var(--border, #2a2a3e);border-radius:8px;padding:1rem 1.25rem;margin-bottom:1rem}.info-row.svelte-1fx1e1e.svelte-1fx1e1e{display:flex;padding:.4rem 0;border-bottom:1px solid var(--border, #2a2a3e);font-size:.9rem}.info-row.svelte-1fx1e1e.svelte-1fx1e1e:last-child{border-bottom:none}.info-label.svelte-1fx1e1e.svelte-1fx1e1e{width:180px;min-width:180px;color:var(--text-dim, #888)}.info-value.svelte-1fx1e1e.svelte-1fx1e1e{color:var(--text, #e0e0e0);word-break:break-all}.info-value.mono.svelte-1fx1e1e.svelte-1fx1e1e{font-family:monospace;font-size:.85rem}.info-value.error.svelte-1fx1e1e.svelte-1fx1e1e{color:#ff6b6b}.status-ok.svelte-1fx1e1e.svelte-1fx1e1e{color:#34d399;font-weight:600}.status-err.svelte-1fx1e1e.svelte-1fx1e1e{color:#ff6b6b}.sync-actions.svelte-1fx1e1e.svelte-1fx1e1e{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:1rem}.sync-interval.svelte-1fx1e1e.svelte-1fx1e1e{margin-bottom:0}.interval-row.svelte-1fx1e1e.svelte-1fx1e1e{display:flex;gap:.5rem;align-items:center}.interval-row.svelte-1fx1e1e input.svelte-1fx1e1e{width:100px}.sync-setup.svelte-1fx1e1e .form-group.svelte-1fx1e1e{margin-bottom:1rem}.sync-setup.svelte-1fx1e1e .form-group.svelte-1fx1e1e:last-of-type{margin-bottom:0}.sync-setup-actions.svelte-1fx1e1e.svelte-1fx1e1e{display:flex;gap:.5rem;margin-top:1rem}.connection-result.svelte-1fx1e1e.svelte-1fx1e1e{margin-top:.75rem;padding:.4rem .75rem;border-radius:6px;font-size:.85rem}.connection-result.ok.svelte-1fx1e1e.svelte-1fx1e1e{background:#34d3991a;border:1px solid rgba(52,211,153,.3);color:#34d399}.connection-result.fail.svelte-1fx1e1e.svelte-1fx1e1e{background:#ff6b6b1a;border:1px solid rgba(255,107,107,.3);color:#ff6b6b}.error-msg.svelte-1fx1e1e.svelte-1fx1e1e{padding:.5rem .75rem;margin-bottom:.75rem;background:#ff6b6b1a;border:1px solid rgba(255,107,107,.3);border-radius:6px;color:#ff6b6b;font-size:.85rem}.result-msg.svelte-1fx1e1e.svelte-1fx1e1e{padding:.5rem .75rem;margin-bottom:.75rem;background:#34d3991a;border:1px solid rgba(52,211,153,.3);border-radius:6px;color:#34d399;font-size:.85rem}.result-msg.warning.svelte-1fx1e1e.svelte-1fx1e1e{background:#f59e0b1a;border-color:#f59e0b4d;color:#f59e0b}.modal-overlay.svelte-1fx1e1e.svelte-1fx1e1e{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;border:none;padding:0;cursor:pointer;width:100%;color:inherit;font:inherit}.modal.svelte-1fx1e1e.svelte-1fx1e1e{background:var(--surface, #1e1e2e);border:1px solid var(--border, #2a2a3e);border-radius:10px;padding:1.5rem;max-width:420px;width:90%;cursor:default}.modal.svelte-1fx1e1e h3.svelte-1fx1e1e{margin:0 0 .75rem}.modal-desc.svelte-1fx1e1e.svelte-1fx1e1e{color:var(--text-dim, #888);font-size:.9rem;line-height:1.5;margin-bottom:1rem}.modal-actions.svelte-1fx1e1e.svelte-1fx1e1e{display:flex;gap:.5rem;justify-content:flex-end}.settings-section.svelte-19bo7bn.svelte-19bo7bn{padding:1.5rem;max-width:500px}.settings-section.svelte-19bo7bn h2.svelte-19bo7bn{margin:0 0 .5rem;font-size:1.2rem;color:var(--text, #e0e0e0)}.section-desc.svelte-19bo7bn.svelte-19bo7bn{color:var(--text-dim, #888);font-size:.85rem}.settings-overlay.svelte-zf2zsc.svelte-zf2zsc{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:900;border:none;padding:0;cursor:pointer;width:100%;color:inherit;font:inherit}.settings-window.svelte-zf2zsc.svelte-zf2zsc{display:flex;flex-direction:column;width:800px;max-width:90vw;height:600px;max-height:85vh;background:var(--surface, #1e1e2e);border:1px solid var(--border, #2a2a3e);border-radius:12px;overflow:hidden;box-shadow:0 8px 32px #0006}.settings-header.svelte-zf2zsc.svelte-zf2zsc{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;border-bottom:1px solid var(--border, #2a2a3e);flex-shrink:0}.settings-header.svelte-zf2zsc h2.svelte-zf2zsc{margin:0;font-size:1.1rem;color:var(--text, #e0e0e0)}.close-btn.svelte-zf2zsc.svelte-zf2zsc{background:transparent;border:none;color:var(--text-dim, #888);cursor:pointer;padding:.25rem;border-radius:4px;display:flex;align-items:center}.close-btn.svelte-zf2zsc.svelte-zf2zsc:hover{color:var(--text, #e0e0e0);background:var(--surface-alt, #252538)}.settings-body.svelte-zf2zsc.svelte-zf2zsc{display:flex;flex:1;overflow:hidden}.settings-content.svelte-zf2zsc.svelte-zf2zsc{flex:1;overflow-y:auto;background:var(--bg, #13131f)}.sync-status-widget.svelte-1rxbx0{font-size:.8rem;padding:.4rem .5rem}.sync-status-row.svelte-1rxbx0{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap}.sync-dot.svelte-1rxbx0{width:8px;height:8px;border-radius:50%;flex-shrink:0}.dot-connected.svelte-1rxbx0{background:#34d399;box-shadow:0 0 4px #34d39966}.dot-warning.svelte-1rxbx0{background:#f59e0b}.dot-disabled.svelte-1rxbx0{background:#555}.dot-syncing.svelte-1rxbx0{background:#818cf8;animation:svelte-1rxbx0-pulse 1s infinite}@keyframes svelte-1rxbx0-pulse{0%,to{opacity:1}50%{opacity:.4}}.sync-label.svelte-1rxbx0{color:var(--text-dim, #888);white-space:nowrap}.sync-count.svelte-1rxbx0{color:var(--accent, #818cf8);font-weight:600}.sync-actions-row.svelte-1rxbx0{display:flex;gap:.3rem;margin-left:auto}.sync-message.svelte-1rxbx0{margin-top:.25rem;color:var(--text-dim, #888);line-height:1.25}.sync-message-warning.svelte-1rxbx0{color:#f59e0b}.btn-xs.svelte-1rxbx0{padding:.2rem .5rem;font-size:.75rem;border:1px solid var(--border, #2a2a3e);background:var(--surface-alt, #252538);color:var(--text-dim, #888);border-radius:4px;cursor:pointer;white-space:nowrap}.btn-xs.svelte-1rxbx0:hover{background:var(--border, #2a2a3e);color:var(--text, #e0e0e0)}.btn-xs.svelte-1rxbx0:disabled{opacity:.5;cursor:default}.btn-link.svelte-1rxbx0{border:none;background:transparent;color:var(--accent, #818cf8);text-decoration:underline}.btn-link.svelte-1rxbx0:hover{color:#a5b4fc;background:transparent}.svelte-14f54e4.svelte-14f54e4,.svelte-14f54e4.svelte-14f54e4:before,.svelte-14f54e4.svelte-14f54e4:after{box-sizing:border-box;margin:0;padding:0}.app.svelte-14f54e4.svelte-14f54e4{display:flex;width:100vw;height:100vh;overflow:hidden;background:#13131f;color:#e4e4ef;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:14px}.sidebar.svelte-14f54e4.svelte-14f54e4{width:260px;min-width:200px;height:100vh;display:flex;flex-direction:column;background:#1a1a28;border-right:1px solid #2a2a3c;flex-shrink:0;overflow:hidden}.sidebar-brand.svelte-14f54e4.svelte-14f54e4{padding:16px 20px;display:flex;align-items:center;gap:10px;border-bottom:1px solid #2a2a3c;flex-shrink:0}.logo.svelte-14f54e4.svelte-14f54e4{font-size:20px;line-height:1}.brand-name.svelte-14f54e4.svelte-14f54e4{font-size:16px;font-weight:600}.sidebar-nav.svelte-14f54e4.svelte-14f54e4{flex:1;overflow-y:auto;padding:12px 0}.nav-group.svelte-14f54e4.svelte-14f54e4{margin-bottom:16px}.nav-label.svelte-14f54e4.svelte-14f54e4{font-size:10px;text-transform:uppercase;letter-spacing:.5px;color:#666;padding:4px 20px;margin-bottom:4px}.nav-item.svelte-14f54e4.svelte-14f54e4{display:block;width:100%;padding:8px 20px;border:none;background:none;color:#ccc;font-size:13px;text-align:left;cursor:pointer;border-radius:0;font-family:inherit}.nav-item.svelte-14f54e4.svelte-14f54e4:hover{background:#223}.nav-item.selected.svelte-14f54e4.svelte-14f54e4{background:#2a2a4a;color:#fff;font-weight:500}.workspace-tree-area.svelte-14f54e4.svelte-14f54e4{min-height:32px}.workspace-tree-area.drop-valid.svelte-14f54e4.svelte-14f54e4{outline:2px dashed #4ade80;outline-offset:-2px;background:#4ade800d}.nav-empty.svelte-14f54e4.svelte-14f54e4{padding:8px 20px;color:#555;font-size:12px}.nav-label-row.svelte-14f54e4.svelte-14f54e4{font-size:10px;text-transform:uppercase;letter-spacing:.5px;color:#666;padding:4px 20px;margin-bottom:4px;display:flex;align-items:center;justify-content:space-between}.nav-add-btn.svelte-14f54e4.svelte-14f54e4{background:none;border:none;color:#666;cursor:pointer;font-size:16px;padding:0 4px;font-family:inherit;line-height:1}.nav-add-btn.svelte-14f54e4.svelte-14f54e4:hover{color:#ccc}.context-menu-backdrop.svelte-14f54e4.svelte-14f54e4{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200}.context-menu.svelte-14f54e4.svelte-14f54e4{position:fixed;background:#1a1a28;border:1px solid #2a2a3c;border-radius:8px;padding:4px;min-width:180px;box-shadow:0 8px 24px #0006}.context-menu-section.svelte-14f54e4.svelte-14f54e4{padding:6px 12px;font-size:10px;text-transform:uppercase;letter-spacing:.5px;color:#666}.context-menu-item.svelte-14f54e4.svelte-14f54e4{display:flex;width:100%;padding:6px 12px;border:none;background:none;color:#ccc;font-size:13px;text-align:left;cursor:pointer;border-radius:4px;font-family:inherit;align-items:center;gap:6px}.context-menu-item.svelte-14f54e4.svelte-14f54e4:hover{background:#223;color:#fff}.context-menu-item.danger.svelte-14f54e4.svelte-14f54e4{color:#ff6b6b}.context-menu-item.danger.svelte-14f54e4.svelte-14f54e4:hover{background:#3a2222;color:#ff6b6b}.context-menu-divider.svelte-14f54e4.svelte-14f54e4{height:1px;background:#2a2a3c;margin:4px 0}.create-context.svelte-14f54e4.svelte-14f54e4{font-size:12px;color:#888;margin-bottom:12px}.sidebar-footer.svelte-14f54e4.svelte-14f54e4{padding:8px 12px;border-top:1px solid #2a2a3c;flex-shrink:0;display:flex;flex-direction:column;gap:4px}.sidebar-footer-row.svelte-14f54e4.svelte-14f54e4{display:flex;align-items:center;justify-content:space-between}.version.svelte-14f54e4.svelte-14f54e4{font-size:11px;color:#555;text-align:center}.main.svelte-14f54e4.svelte-14f54e4{flex:1;display:flex;flex-direction:column;height:100vh;min-width:0;overflow:hidden;background:#13131f}.header.svelte-14f54e4.svelte-14f54e4{padding:12px 24px;border-bottom:1px solid #2a2a3c;display:flex;align-items:center;flex-shrink:0;min-height:48px}.header-left.svelte-14f54e4.svelte-14f54e4{display:flex;align-items:center;gap:8px;flex:1}.header-right.svelte-14f54e4.svelte-14f54e4{display:flex;align-items:center;gap:8px}.sidebar-settings-btn.svelte-14f54e4.svelte-14f54e4{background:transparent;border:none;border-radius:6px;padding:6px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;color:#666;font-family:inherit;width:32px;height:32px}.sidebar-settings-btn.svelte-14f54e4.svelte-14f54e4:hover{background:#1e1e38;color:#a5b4fc}.sidebar-settings-btn.svelte-14f54e4.svelte-14f54e4:active{background:#252545;color:#818cf8}.crumb.svelte-14f54e4.svelte-14f54e4{font-size:14px;font-weight:500}.crumb.placeholder.svelte-14f54e4.svelte-14f54e4{color:#666}.crumb-type.svelte-14f54e4.svelte-14f54e4{font-size:11px;color:#555;background:#1e1e2e;padding:2px 8px;border-radius:10px;margin-left:8px}.error-banner.svelte-14f54e4.svelte-14f54e4{background:#3a2222;color:#f88;padding:8px 24px;font-size:12px;border-bottom:1px solid #4a2222;flex-shrink:0;cursor:pointer;display:flex;justify-content:space-between;align-items:center}.dismiss-btn.svelte-14f54e4.svelte-14f54e4{background:none;border:none;color:#f66;cursor:pointer;padding:2px;display:flex;align-items:center;border-radius:2px}.dismiss-btn.svelte-14f54e4.svelte-14f54e4:hover{color:#f44}.tabs.svelte-14f54e4.svelte-14f54e4{display:flex;border-bottom:1px solid #2a2a3c;flex-shrink:0;padding:0 24px}.tab.svelte-14f54e4.svelte-14f54e4{padding:10px 16px;border:none;background:none;color:#888;font-size:13px;cursor:pointer;border-bottom:2px solid transparent;font-family:inherit}.tab.svelte-14f54e4.svelte-14f54e4:hover{color:#a5b4fc}.tab.active.svelte-14f54e4.svelte-14f54e4{color:#e4e4ef;border-bottom-color:#818cf8;background:#6366f11f;font-weight:600}.tab-content.svelte-14f54e4.svelte-14f54e4{flex:1;overflow-y:auto}.note-editor.svelte-14f54e4.svelte-14f54e4{flex:1;display:flex;flex-direction:column;height:100%}.note-editor-header.svelte-14f54e4.svelte-14f54e4{padding:12px 24px;border-bottom:1px solid #2a2a3c;display:flex;align-items:center;gap:12px;flex-shrink:0}.note-title.svelte-14f54e4.svelte-14f54e4{font-size:16px;font-weight:500}.dirty-mark.svelte-14f54e4.svelte-14f54e4{color:#f59e0b;font-size:10px}.note-editor-actions.svelte-14f54e4.svelte-14f54e4{margin-left:auto;display:flex;gap:8px}.note-textarea.svelte-14f54e4.svelte-14f54e4{flex:1;width:100%;border:none;outline:none;background:#13131f;color:#e4e4ef;font-family:SF Mono,Fira Code,monospace;font-size:14px;line-height:1.6;padding:24px;resize:none}.overview.svelte-14f54e4.svelte-14f54e4{padding:24px}.overview.svelte-14f54e4 h2.svelte-14f54e4{font-size:24px;margin-bottom:16px}.meta-grid.svelte-14f54e4.svelte-14f54e4{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px;margin-bottom:24px}.meta-item.svelte-14f54e4.svelte-14f54e4{background:#1a1a28;padding:12px 16px;border-radius:8px}.meta-label.svelte-14f54e4.svelte-14f54e4{display:block;font-size:11px;color:#666;margin-bottom:4px;text-transform:uppercase}.quick-actions.svelte-14f54e4.svelte-14f54e4{display:flex;gap:8px;margin-bottom:24px;flex-wrap:wrap}.qa-btn.svelte-14f54e4.svelte-14f54e4{padding:10px 16px;border:1px solid #2a2a3c;background:#1a1a28;color:#ccc;border-radius:8px;cursor:pointer;font-size:13px;font-family:inherit;display:inline-flex;align-items:center;gap:6px}.qa-btn.svelte-14f54e4.svelte-14f54e4:hover{background:#223}.qa-btn.svelte-14f54e4.svelte-14f54e4:disabled{opacity:.4;cursor:not-allowed}.recent-section.svelte-14f54e4.svelte-14f54e4{margin-bottom:24px}.recent-section.svelte-14f54e4 h3.svelte-14f54e4{font-size:13px;color:#666;text-transform:uppercase;margin-bottom:8px}.recent-note.svelte-14f54e4.svelte-14f54e4{padding:8px 12px;border-radius:6px;cursor:pointer;display:flex;justify-content:space-between}.recent-note.svelte-14f54e4.svelte-14f54e4:hover{background:#1a1a28}.recent-date.svelte-14f54e4.svelte-14f54e4{font-size:11px;color:#555}.recent-entry.svelte-14f54e4.svelte-14f54e4{padding:6px 0;font-size:13px;color:#888;border-bottom:1px solid #1a1a28}.notes-tab.svelte-14f54e4.svelte-14f54e4{padding:24px}.tab-toolbar.svelte-14f54e4.svelte-14f54e4{margin-bottom:16px}.create-form.svelte-14f54e4.svelte-14f54e4{background:#1a1a28;padding:16px;border-radius:8px;margin-bottom:16px}.create-form.svelte-14f54e4 input.svelte-14f54e4{width:100%;padding:8px 12px;border:1px solid #2a2a3c;background:#13131f;color:#e4e4ef;border-radius:4px;font-size:14px;font-family:inherit;margin-bottom:8px}.create-form.svelte-14f54e4 input.svelte-14f54e4:focus{outline:none;border-color:#6366f1}.form-actions.svelte-14f54e4.svelte-14f54e4{display:flex;gap:8px}.notes-list.svelte-14f54e4.svelte-14f54e4{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}.note-card.svelte-14f54e4.svelte-14f54e4{background:#1a1a28;border:1px solid #2a2a3c;border-radius:8px;padding:16px;cursor:pointer}.note-card.svelte-14f54e4.svelte-14f54e4:hover{border-color:#3a3a5c}.note-card-title.svelte-14f54e4.svelte-14f54e4{font-size:14px;font-weight:500;margin-bottom:4px}.note-card-date.svelte-14f54e4.svelte-14f54e4{font-size:11px;color:#555}.worklog-tab.svelte-14f54e4.svelte-14f54e4{padding:24px}.worklog-toolbar.svelte-14f54e4.svelte-14f54e4{margin-bottom:16px}.worklog-entry.svelte-14f54e4.svelte-14f54e4{padding:12px 0;border-bottom:1px solid #1a1a28}.suggestions-title.svelte-14f54e4.svelte-14f54e4{font-size:13px;font-weight:600;color:#a5b4fc;margin-bottom:12px;text-transform:uppercase;letter-spacing:.5px}.suggestion-summary.svelte-14f54e4.svelte-14f54e4{font-size:14px;color:#e4e4ef}.suggestion-meta.svelte-14f54e4.svelte-14f54e4{font-size:12px;color:#8888a0;margin-top:2px}.suggestion-main.svelte-14f54e4.svelte-14f54e4{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;cursor:pointer;gap:12px}.suggestion-card.expanded.svelte-14f54e4.svelte-14f54e4{border-color:#3a3a5c}.suggestion-detail.svelte-14f54e4.svelte-14f54e4{padding:0 12px 10px;border-top:1px solid #2a2a3c}.suggestion-detail-title.svelte-14f54e4.svelte-14f54e4{font-size:11px;font-weight:600;color:#a5b4fc;text-transform:uppercase;letter-spacing:.3px;padding:8px 0 4px}.suggestion-detail-event.svelte-14f54e4.svelte-14f54e4{display:flex;align-items:center;gap:8px;padding:3px 0;font-size:13px;color:#b0b0c0}.suggestion-event-time.svelte-14f54e4.svelte-14f54e4{color:#a0a0b8;font-variant-numeric:tabular-nums;white-space:nowrap;min-width:48px}.suggestion-event-type.svelte-14f54e4.svelte-14f54e4{color:#8888a0;font-size:11px;background:#1a1a2e;padding:1px 6px;border-radius:3px}.suggestion-event-title.svelte-14f54e4.svelte-14f54e4{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.suggestion-card.svelte-14f54e4.svelte-14f54e4{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;background:#1e1e32;border-radius:6px;margin-bottom:8px;gap:12px}.suggestion-card.svelte-14f54e4.svelte-14f54e4:last-child{margin-bottom:0}.suggestion-info.svelte-14f54e4.svelte-14f54e4{flex:1;display:flex;flex-direction:column;gap:2px}.suggestion-node.svelte-14f54e4.svelte-14f54e4{color:#a5b4fc;font-weight:600;font-size:13px;text-decoration:none;cursor:pointer}.suggestion-node.svelte-14f54e4.svelte-14f54e4:hover{text-decoration:underline}.suggestion-actions.svelte-14f54e4.svelte-14f54e4{display:flex;align-items:center;gap:6px;flex-shrink:0}.suggestion-min-input.svelte-14f54e4.svelte-14f54e4{width:60px;padding:4px 8px;border:1px solid #2a2a3c;background:#13131f;color:#e4e4ef;border-radius:4px;font-size:14px;text-align:center}.suggestion-min-label.svelte-14f54e4.svelte-14f54e4{font-size:12px;color:#8888a0}.suggestion-confidence.svelte-14f54e4.svelte-14f54e4{font-size:11px;padding:2px 6px;border-radius:3px}.suggestion-confidence.low.svelte-14f54e4.svelte-14f54e4{color:#fbbf24}.suggestion-confidence.medium.svelte-14f54e4.svelte-14f54e4{color:#60a5fa}.suggestion-confidence.high.svelte-14f54e4.svelte-14f54e4{color:#34d399}.inbox-screen.svelte-14f54e4.svelte-14f54e4{padding:24px;overflow-y:auto;flex:1}.inbox-header.svelte-14f54e4.svelte-14f54e4{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px}.inbox-header.svelte-14f54e4 h2.svelte-14f54e4{margin:0 0 6px}.inbox-header.svelte-14f54e4 p.svelte-14f54e4{margin:0;color:#a0a0b8;font-size:13px}.inbox-list.svelte-14f54e4.svelte-14f54e4{display:flex;flex-direction:column;gap:8px}.inbox-item.svelte-14f54e4.svelte-14f54e4{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid #2a2a3c;border-radius:8px;background:#1a1a28;cursor:pointer}.inbox-item.svelte-14f54e4.svelte-14f54e4:hover{border-color:#3a3a5c;background:#1e1e32}.inbox-item-main.svelte-14f54e4.svelte-14f54e4{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.inbox-item-title.svelte-14f54e4.svelte-14f54e4{color:#e4e4ef;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.inbox-item-meta.svelte-14f54e4.svelte-14f54e4{color:#8888a0;font-size:12px}.inbox-item-actions.svelte-14f54e4.svelte-14f54e4{display:flex;gap:8px;flex-shrink:0}.trash-screen.svelte-14f54e4.svelte-14f54e4{padding:24px;overflow-y:auto;flex:1}.trash-header.svelte-14f54e4.svelte-14f54e4{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px}.trash-header.svelte-14f54e4 h2.svelte-14f54e4{margin:0 0 6px}.trash-header.svelte-14f54e4 p.svelte-14f54e4{margin:0;color:#8888a0;font-size:12px}.trash-grid.svelte-14f54e4.svelte-14f54e4{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:16px}.trash-section.svelte-14f54e4.svelte-14f54e4{min-width:0}.trash-section.svelte-14f54e4 h3.svelte-14f54e4{margin:0 0 10px;font-size:13px;color:#a5b4fc;text-transform:uppercase;letter-spacing:.3px}.trash-row.svelte-14f54e4.svelte-14f54e4{padding:10px 12px;border:1px solid #2a2a3c;border-radius:8px;background:#1a1a28;margin-bottom:8px}.trash-row-main.svelte-14f54e4.svelte-14f54e4{display:flex;justify-content:space-between;gap:12px;align-items:baseline}.trash-row-title.svelte-14f54e4.svelte-14f54e4{min-width:0;color:#e4e4ef;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.trash-row-meta.svelte-14f54e4.svelte-14f54e4{flex-shrink:0;color:#8888a0;font-size:12px}.trash-row-path.svelte-14f54e4.svelte-14f54e4{display:block;margin-top:4px;color:#707088;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.trash-empty-line.svelte-14f54e4.svelte-14f54e4{color:#8888a0;font-size:13px;margin:0}.journal-screen.svelte-14f54e4.svelte-14f54e4{padding:24px;overflow-y:auto;flex:1}.journal-header.svelte-14f54e4.svelte-14f54e4{margin-bottom:24px}.journal-header.svelte-14f54e4 h2.svelte-14f54e4{margin:0 0 16px}.journal-summary.svelte-14f54e4.svelte-14f54e4{display:flex;flex-wrap:wrap;gap:24px;margin-bottom:24px;padding:16px;background:#1a1a2e;border-radius:8px;border:1px solid #2a2a3c}.summary-total.svelte-14f54e4.svelte-14f54e4{font-size:18px;font-weight:700;color:#e4e4ef;width:100%;margin-bottom:4px}.summary-section.svelte-14f54e4.svelte-14f54e4{flex:1;min-width:200px}.summary-label.svelte-14f54e4.svelte-14f54e4{font-size:12px;font-weight:600;color:#a5b4fc;text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px}.summary-row.svelte-14f54e4.svelte-14f54e4{display:flex;gap:8px;font-size:13px;padding:4px 0;border-bottom:1px solid #2a2a3c}.summary-row.svelte-14f54e4 span.svelte-14f54e4:first-child{flex:1;color:#e4e4ef}.summary-count.svelte-14f54e4.svelte-14f54e4{color:#8888a0}.journal-table-wrap.svelte-14f54e4.svelte-14f54e4{overflow-x:auto}.journal-table.svelte-14f54e4.svelte-14f54e4{width:100%;border-collapse:collapse;font-size:13px}.journal-table.svelte-14f54e4 th.svelte-14f54e4{text-align:left;padding:8px 12px;border-bottom:2px solid #2a2a3c;color:#b0b0c8;font-weight:600;font-size:12px;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}.journal-table.svelte-14f54e4 td.svelte-14f54e4{padding:8px 12px;border-bottom:1px solid #1a1a28;color:#e4e4ef}.journal-table.svelte-14f54e4 tr:hover td.svelte-14f54e4{background:#1e1e32}.journal-table.svelte-14f54e4 .link-btn.svelte-14f54e4{color:#a5b4fc}.journal-path-cell.svelte-14f54e4.svelte-14f54e4{max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#a0a0b8;font-size:12px}.journal-min-cell.svelte-14f54e4.svelte-14f54e4{text-align:right;font-variant-numeric:tabular-nums}.journal-date-cell.svelte-14f54e4.svelte-14f54e4{color:#b0b0c0;white-space:nowrap}.journal-bool-cell.svelte-14f54e4.svelte-14f54e4{text-align:center;color:#a0a0b8}.journal-row.svelte-14f54e4.svelte-14f54e4{cursor:pointer}.journal-row.svelte-14f54e4:hover td.svelte-14f54e4{background:#1e1e32}.journal-row.expanded.svelte-14f54e4 td.svelte-14f54e4{background:#1a1a30;border-bottom:none}.journal-summary-cell.svelte-14f54e4.svelte-14f54e4{max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.journal-row-detail.svelte-14f54e4 td.svelte-14f54e4{padding:0 12px 12px;background:#16162a}.journal-detail-body.svelte-14f54e4.svelte-14f54e4{display:flex;flex-direction:column;gap:12px;padding:8px 0}.journal-detail-actions.svelte-14f54e4.svelte-14f54e4{display:flex;gap:8px;justify-content:flex-end}.journal-detail-section.svelte-14f54e4.svelte-14f54e4{font-size:13px}.journal-detail-label.svelte-14f54e4.svelte-14f54e4{font-size:11px;font-weight:600;color:#a5b4fc;text-transform:uppercase;letter-spacing:.3px;display:block;margin-bottom:4px}.journal-detail-section.svelte-14f54e4 p.svelte-14f54e4{margin:0;color:#c0c0d0}.journal-event-row.svelte-14f54e4.svelte-14f54e4{display:flex;align-items:center;gap:8px;padding:4px 0;font-size:13px;color:#b0b0c0}.journal-event-time.svelte-14f54e4.svelte-14f54e4{color:#a0a0b8;font-variant-numeric:tabular-nums;white-space:nowrap;min-width:48px}.journal-event-type.svelte-14f54e4.svelte-14f54e4{color:#8888a0;font-size:11px;background:#1a1a2e;padding:1px 6px;border-radius:3px}.journal-event-title.svelte-14f54e4.svelte-14f54e4{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.journal-node-picker.svelte-14f54e4 input[type=text].svelte-14f54e4{padding:6px 10px;border:1px solid #2a2a3c;background:#13131f;color:#e4e4ef;border-radius:4px;font-size:13px;font-family:inherit;width:240px}.journal-search-dropdown.svelte-14f54e4.svelte-14f54e4{position:absolute;top:100%;left:0;right:0;z-index:50;background:#1a1a28;border:1px solid #2a2a3c;border-radius:6px;margin-top:4px;max-height:240px;overflow-y:auto;min-width:260px}.journal-search-item.svelte-14f54e4.svelte-14f54e4{display:block;width:100%;padding:8px 12px;border:none;background:transparent;color:#e4e4ef;cursor:pointer;font-family:inherit;font-size:13px;text-align:left}.journal-search-item.svelte-14f54e4.svelte-14f54e4:hover{background:#2a2a4a}.journal-search-title.svelte-14f54e4.svelte-14f54e4{display:block;font-weight:500}.journal-search-path.svelte-14f54e4.svelte-14f54e4{display:block;font-size:11px;color:#8888a0;margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.journal-selected-node.svelte-14f54e4.svelte-14f54e4{cursor:pointer;display:inline-flex;align-items:center;gap:6px;padding:6px 10px;background:#1e1e3a;border:1px solid #3a3a5c;border-radius:4px;font-size:13px;color:#a5b4fc;white-space:nowrap;font-family:inherit}.journal-selected-node.svelte-14f54e4.svelte-14f54e4:hover{background:#2a2a4a}.journal-node-clear.svelte-14f54e4.svelte-14f54e4{color:#8888a0;font-size:14px;margin-left:4px}.journal-status-msg.svelte-14f54e4.svelte-14f54e4{font-size:12px;color:#34d399;padding:4px 8px;background:#1a2a1e;border-radius:4px}.journal-include-chk.svelte-14f54e4.svelte-14f54e4{width:16px;height:16px;accent-color:#6366f1;cursor:pointer}.today-suggestions.svelte-14f54e4.svelte-14f54e4{margin-bottom:24px}.link-btn.svelte-14f54e4.svelte-14f54e4{background:none;border:none;padding:0;color:#a5b4fc;font:inherit;cursor:pointer;text-align:left}.link-btn.svelte-14f54e4.svelte-14f54e4:hover{text-decoration:underline}.nav-badge.svelte-14f54e4.svelte-14f54e4{background:#6366f1;color:#fff;font-size:10px;font-weight:700;border-radius:10px;padding:1px 6px;margin-left:6px;line-height:1.4}.actions-tab.svelte-14f54e4.svelte-14f54e4{padding:24px}.action-card.svelte-14f54e4.svelte-14f54e4{background:#1a1a28;padding:12px 16px;border-radius:8px;display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}.action-info.svelte-14f54e4.svelte-14f54e4{display:flex;align-items:center;gap:8px;flex:1;min-width:0}.action-title.svelte-14f54e4.svelte-14f54e4{font-weight:500}.action-type.svelte-14f54e4.svelte-14f54e4{font-size:11px;color:#888;background:#223;padding:2px 8px;border-radius:10px;white-space:nowrap}.action-data.svelte-14f54e4.svelte-14f54e4{font-size:11px;color:#555;font-family:SF Mono,Fira Code,monospace;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:200px}.action-btns.svelte-14f54e4.svelte-14f54e4{display:flex;gap:4px;flex-shrink:0}.action-btns.svelte-14f54e4 .btn-danger.svelte-14f54e4{color:#ff6b6b;border-color:#4a2222;padding:4px 8px}.action-btns.svelte-14f54e4 .btn-danger.svelte-14f54e4:hover{background:#3a2222}.empty-state.svelte-14f54e4.svelte-14f54e4{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px;text-align:center}.empty-state.svelte-14f54e4 p.svelte-14f54e4{margin:0;font-size:14px;color:#666}.empty-state.svelte-14f54e4 .empty-icon.svelte-14f54e4{margin-bottom:12px;color:#444}.empty-state.svelte-14f54e4 .hint.svelte-14f54e4{font-size:12px;color:#555;margin-top:6px}.empty-state.svelte-14f54e4 .empty-actions.svelte-14f54e4{display:flex;gap:8px;justify-content:center;margin-top:16px}.welcome.svelte-14f54e4.svelte-14f54e4{padding:48px 24px;text-align:center}.welcome.svelte-14f54e4 h2.svelte-14f54e4{font-size:32px;font-weight:300;color:#8888a4;margin-bottom:16px}.welcome.svelte-14f54e4 p.svelte-14f54e4{color:#666;font-size:14px}.error-text.svelte-14f54e4.svelte-14f54e4{color:#f88}.modal-overlay.svelte-14f54e4.svelte-14f54e4{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:100}.modal.svelte-14f54e4.svelte-14f54e4{background:#1a1a28;border:1px solid #2a2a3c;border-radius:12px;padding:24px;width:400px;max-width:90vw}.modal.svelte-14f54e4 h3.svelte-14f54e4{font-size:18px;margin-bottom:16px}.modal.svelte-14f54e4 textarea.svelte-14f54e4{width:100%;padding:8px 12px;border:1px solid #2a2a3c;background:#13131f;color:#e4e4ef;border-radius:4px;font-size:14px;font-family:inherit;min-height:60px;resize:vertical;box-sizing:border-box}.modal-worklog.svelte-14f54e4.svelte-14f54e4{width:460px}.form-group.svelte-14f54e4.svelte-14f54e4{margin-bottom:12px}.form-row.svelte-14f54e4.svelte-14f54e4{display:flex;gap:16px;margin-bottom:12px}.form-group.svelte-14f54e4 label.svelte-14f54e4{display:block}.form-group.svelte-14f54e4 .label-text.svelte-14f54e4,.form-group.svelte-14f54e4 .form-label.svelte-14f54e4{display:block;font-size:12px;color:#666;margin-bottom:4px}.form-group.svelte-14f54e4 input.svelte-14f54e4,.form-group.svelte-14f54e4 select.svelte-14f54e4{width:100%;padding:8px 12px;border:1px solid #2a2a3c;background:#13131f;color:#e4e4ef;border-radius:4px;font-size:14px;font-family:inherit}.form-group.svelte-14f54e4 select.svelte-14f54e4{-moz-appearance:none;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23888' d='M2 4l4 4 4-4'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;padding-right:32px}.form-group.svelte-14f54e4 input.svelte-14f54e4:focus,.form-group.svelte-14f54e4 select.svelte-14f54e4:focus{outline:none;border-color:#6366f1}.modal-actions.svelte-14f54e4.svelte-14f54e4{display:flex;gap:8px;justify-content:flex-end;margin-top:16px}.btn.svelte-14f54e4.svelte-14f54e4{padding:8px 16px;border:1px solid #2a2a3c;background:#1a1a28;color:#ccc;border-radius:6px;cursor:pointer;font-size:13px;font-family:inherit}.btn.svelte-14f54e4.svelte-14f54e4:hover{background:#223}.btn-primary.svelte-14f54e4.svelte-14f54e4{background:#6366f1;border-color:#6366f1;color:#fff}.btn-primary.svelte-14f54e4.svelte-14f54e4:hover{background:#4f46e5}.btn.svelte-14f54e4.svelte-14f54e4:disabled{opacity:.4;cursor:not-allowed}.btn-sm.svelte-14f54e4.svelte-14f54e4{padding:4px 10px;font-size:12px}.btn-danger.svelte-14f54e4.svelte-14f54e4{color:#ff6b6b;border-color:#4a2222}.btn-danger.svelte-14f54e4.svelte-14f54e4:hover{background:#3a2222}.settings-section select,.settings-section input[type=text],.settings-section input[type=url],.settings-section input[type=number],.settings-section input[type=password]{appearance:none;-webkit-appearance:none;-moz-appearance:none;width:100%;padding:.5rem .75rem;background:#13131f;border:1px solid #2a2a3e;border-radius:6px;color:#e0e0e0;font-size:.9rem;font-family:inherit;transition:border-color .15s,box-shadow .15s}.settings-section select{padding-right:2rem;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23888' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .6rem center;background-size:.85rem}.settings-section select:hover,.settings-section input:hover{border-color:#3a3a5e}.settings-section select:focus,.settings-section input:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 2px #6366f133}.settings-section select:disabled,.settings-section input:disabled{opacity:.45;cursor:not-allowed;border-color:#2a2a3e}.settings-section select option{background:#1e1e2e;color:#e0e0e0}.files-tab.svelte-14f54e4.svelte-14f54e4{padding:20px}.files-tab.svelte-14f54e4 .tab-toolbar.svelte-14f54e4{display:flex;gap:8px;align-items:center;margin-bottom:16px}.file-list.svelte-14f54e4.svelte-14f54e4{display:flex;flex-direction:column}.back-btn.svelte-14f54e4.svelte-14f54e4{margin-bottom:4px;display:inline-flex;align-items:center;gap:4px}.import-summary.svelte-14f54e4.svelte-14f54e4{margin-bottom:16px}.summary-row.svelte-14f54e4.svelte-14f54e4{display:flex;justify-content:space-between;padding:6px 0;font-size:14px;border-bottom:1px solid #2a2a3c}.summary-warn.svelte-14f54e4.svelte-14f54e4{margin-top:8px;padding:8px 12px;background:#3a2a22;border-radius:6px;color:#fa6;font-size:13px}.rename-error.svelte-14f54e4.svelte-14f54e4{color:#ff6b6b;font-size:12px;margin-top:4px}.template-cards.svelte-14f54e4.svelte-14f54e4{display:flex;flex-direction:column;gap:6px;margin-bottom:8px}.template-card.svelte-14f54e4.svelte-14f54e4{display:flex;align-items:center;gap:12px;padding:10px 14px;border:1px solid #2a2a3c;background:#13131f;color:#ccc;border-radius:8px;cursor:pointer;font-size:13px;font-family:inherit;width:100%;text-align:left}.template-card.svelte-14f54e4.svelte-14f54e4:hover{background:#1e1e30;border-color:#3a3a5c}.template-card.selected.svelte-14f54e4.svelte-14f54e4{background:#2a2a50;border-color:#6366f1;color:#e4e4ef}.template-card-text.svelte-14f54e4.svelte-14f54e4{display:flex;flex-direction:column;gap:2px;min-width:0}.template-card-title.svelte-14f54e4.svelte-14f54e4{font-weight:500}.template-card-desc.svelte-14f54e4.svelte-14f54e4{font-size:11px;color:#888}.today-dashboard.svelte-14f54e4.svelte-14f54e4{padding:24px;overflow-y:auto;flex:1}.today-header.svelte-14f54e4.svelte-14f54e4{display:flex;align-items:baseline;gap:12px;margin-bottom:16px}.today-header.svelte-14f54e4 h2.svelte-14f54e4{font-size:24px}.today-date.svelte-14f54e4.svelte-14f54e4{font-size:13px;color:#666}.today-summary.svelte-14f54e4.svelte-14f54e4{display:flex;gap:8px;margin-bottom:20px;flex-wrap:wrap}.summary-chip.svelte-14f54e4.svelte-14f54e4{font-size:12px;color:#b0b0c0;background:#1a1a28;border:1px solid #2a2a3c;padding:4px 12px;border-radius:16px}.today-case.svelte-14f54e4.svelte-14f54e4{background:#1a1a28;border:1px solid #2a2a3c;border-radius:8px;margin-bottom:12px;overflow:hidden}.today-case-header.svelte-14f54e4.svelte-14f54e4{padding:12px 16px;display:flex;align-items:center;gap:8px;border-bottom:1px solid #2a2a3c;cursor:pointer}.today-case-header.svelte-14f54e4.svelte-14f54e4:hover{background:#1e1e30}.today-case-title.svelte-14f54e4.svelte-14f54e4{font-weight:500}.today-case-type.svelte-14f54e4.svelte-14f54e4{font-size:11px;color:#888;background:#223;padding:2px 8px;border-radius:10px}.today-case-count.svelte-14f54e4.svelte-14f54e4{font-size:11px;color:#6366f1;margin-left:4px}.today-case-time.svelte-14f54e4.svelte-14f54e4{font-size:11px;color:#555;margin-left:auto}.today-events.svelte-14f54e4.svelte-14f54e4{padding:8px 16px}.today-event.svelte-14f54e4.svelte-14f54e4{display:flex;align-items:center;gap:8px;padding:4px 0;font-size:13px;color:#b0b0c0;cursor:pointer}.today-event.svelte-14f54e4.svelte-14f54e4:hover{color:#e4e4ef}.today-event-icon.svelte-14f54e4.svelte-14f54e4{width:18px;text-align:center;color:#6366f1;font-size:13px}.today-event-title.svelte-14f54e4.svelte-14f54e4{flex:1}.today-event-type.svelte-14f54e4.svelte-14f54e4{font-size:11px;color:#666}.today-event-time.svelte-14f54e4.svelte-14f54e4{font-size:11px;color:#555;margin-left:auto}.today-events-empty.svelte-14f54e4.svelte-14f54e4{padding:8px 16px;font-size:13px;color:#666;font-style:italic}.today-empty.svelte-14f54e4.svelte-14f54e4{padding:48px 24px;text-align:center}.today-empty.svelte-14f54e4 p.svelte-14f54e4{color:#666;font-size:14px;margin:0}.today-empty.svelte-14f54e4 .hint.svelte-14f54e4{font-size:12px;color:#555;margin-top:8px}.today-timeline.svelte-14f54e4.svelte-14f54e4{margin-top:24px}.today-timeline.svelte-14f54e4 h3.svelte-14f54e4{font-size:13px;color:#666;text-transform:uppercase;margin-bottom:12px}.timeline-event.svelte-14f54e4.svelte-14f54e4{display:flex;align-items:center;gap:10px;font-size:13px;color:#b0b0c0;border-left:2px solid #2a2a3c;padding:6px 0 6px 16px;margin-left:4px;cursor:pointer}.timeline-event.svelte-14f54e4.svelte-14f54e4:hover{color:#e4e4ef}.timeline-dot.svelte-14f54e4.svelte-14f54e4{width:6px;height:6px;border-radius:50%;background:#6366f1;margin-left:-19px;flex-shrink:0}.timeline-title.svelte-14f54e4.svelte-14f54e4{flex:1}.timeline-type.svelte-14f54e4.svelte-14f54e4{font-size:11px;color:#666}.timeline-time.svelte-14f54e4.svelte-14f54e4{font-size:11px;color:#555}.activity-tab.svelte-14f54e4.svelte-14f54e4{padding:24px}.activity-events.svelte-14f54e4.svelte-14f54e4{display:flex;flex-direction:column;gap:2px}.activity-event.svelte-14f54e4.svelte-14f54e4{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:6px;font-size:13px;color:#b0b0c0;cursor:pointer}.activity-event.svelte-14f54e4.svelte-14f54e4:hover{background:#1a1a28;color:#e4e4ef}.activity-event-icon.svelte-14f54e4.svelte-14f54e4{width:18px;text-align:center;color:#6366f1;font-size:13px;flex-shrink:0}.activity-event-title.svelte-14f54e4.svelte-14f54e4{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.activity-event-type.svelte-14f54e4.svelte-14f54e4{font-size:11px;color:#666;flex-shrink:0}.activity-event-target.svelte-14f54e4.svelte-14f54e4{font-size:10px;color:#555;background:#1e1e2e;padding:1px 6px;border-radius:8px;flex-shrink:0}.activity-event-time.svelte-14f54e4.svelte-14f54e4{font-size:11px;color:#555;margin-left:8px;flex-shrink:0}.activity-feed.svelte-14f54e4.svelte-14f54e4{padding:24px;overflow-y:auto;flex:1}.activity-feed-header.svelte-14f54e4.svelte-14f54e4{margin-bottom:20px}.activity-feed-header.svelte-14f54e4 h2.svelte-14f54e4{font-size:24px}.activity-feed-events.svelte-14f54e4.svelte-14f54e4{display:flex;flex-direction:column;gap:2px}.activity-feed-event.svelte-14f54e4.svelte-14f54e4{display:flex;align-items:flex-start;gap:10px;padding:8px 12px;border-radius:8px;cursor:pointer}.activity-feed-event.svelte-14f54e4.svelte-14f54e4:hover{background:#1a1a28;color:#e4e4ef}.activity-feed-icon.svelte-14f54e4.svelte-14f54e4{width:20px;text-align:center;color:#6366f1;font-size:14px;flex-shrink:0;margin-top:1px}.activity-feed-body.svelte-14f54e4.svelte-14f54e4{flex:1;min-width:0}.activity-feed-title.svelte-14f54e4.svelte-14f54e4{font-size:14px;color:#e4e4ef}.activity-feed-meta.svelte-14f54e4.svelte-14f54e4{display:flex;align-items:center;gap:8px;margin-top:2px}.activity-feed-type.svelte-14f54e4.svelte-14f54e4{font-size:11px;color:#666}.activity-feed-target.svelte-14f54e4.svelte-14f54e4{font-size:10px;color:#555;background:#1e1e2e;padding:1px 6px;border-radius:8px}.activity-feed-time.svelte-14f54e4.svelte-14f54e4{font-size:11px;color:#555}.journal-filter-section.svelte-14f54e4.svelte-14f54e4{margin-bottom:12px;padding:12px 16px;background:#1a1a2e;border:1px solid #2a2a3c;border-radius:8px}.journal-filter-heading.svelte-14f54e4.svelte-14f54e4{font-size:11px;font-weight:600;color:#a5b4fc;text-transform:uppercase;letter-spacing:.3px;margin-bottom:8px}.journal-filters-row.svelte-14f54e4.svelte-14f54e4{display:flex;flex-wrap:wrap;gap:8px 16px;align-items:flex-end}.journal-filters-row.svelte-14f54e4 label.svelte-14f54e4{display:flex;flex-direction:column;gap:3px;font-size:12px;color:#8888a0}.journal-filters-row.svelte-14f54e4 input[type=date].svelte-14f54e4{padding:5px 8px;border:1px solid #2a2a3c;background:#13131f;color:#e4e4ef;border-radius:4px;font-size:12px;font-family:inherit}.journal-filters-row.svelte-14f54e4 .checkbox-label.svelte-14f54e4{flex-direction:row;align-items:center;gap:6px;cursor:pointer}.journal-filters-row.svelte-14f54e4 .checkbox-label input.svelte-14f54e4{width:auto}.journal-export-section.svelte-14f54e4.svelte-14f54e4{padding:8px 16px;background:#1a1a2e;border:1px solid #2a2a3c;border-radius:8px}.journal-export-heading.svelte-14f54e4.svelte-14f54e4{font-size:11px;font-weight:600;color:#a5b4fc;text-transform:uppercase;letter-spacing:.3px;margin-bottom:6px}.journal-export-row.svelte-14f54e4.svelte-14f54e4{display:flex;gap:8px;align-items:center}.journal-toggle-col.svelte-14f54e4.svelte-14f54e4{width:32px;min-width:32px;text-align:center;padding:8px 4px!important}.journal-toggle-icon.svelte-14f54e4.svelte-14f54e4{color:#6366f1;font-size:12px}.worklog-entry.svelte-14f54e4.svelte-14f54e4{padding:8px 12px;background:#1a1a28;border:1px solid #2a2a3c;border-radius:8px;margin-bottom:6px;cursor:pointer}.worklog-entry.svelte-14f54e4.svelte-14f54e4:hover{border-color:#3a3a5c}.worklog-entry.expanded.svelte-14f54e4.svelte-14f54e4{border-color:#6366f1}.worklog-entry-head.svelte-14f54e4.svelte-14f54e4{display:flex;align-items:center;gap:8px;font-size:13px;color:#e4e4ef}.worklog-toggle.svelte-14f54e4.svelte-14f54e4{color:#6366f1;font-size:12px;width:16px;text-align:center;flex-shrink:0}.worklog-entry-summary.svelte-14f54e4.svelte-14f54e4{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.worklog-entry-mins.svelte-14f54e4.svelte-14f54e4{color:#b0b0c8;font-variant-numeric:tabular-nums;white-space:nowrap}.worklog-entry-date.svelte-14f54e4.svelte-14f54e4{color:#b0b0c0;font-size:12px;white-space:nowrap}.worklog-entry-detail.svelte-14f54e4.svelte-14f54e4{margin-top:8px;padding-top:8px;border-top:1px solid #2a2a3c;display:flex;flex-direction:column;gap:8px}.worklog-entry-actions.svelte-14f54e4.svelte-14f54e4{display:flex;gap:8px;justify-content:flex-end}.wl-detail-section.svelte-14f54e4.svelte-14f54e4{font-size:13px}.wl-detail-label.svelte-14f54e4.svelte-14f54e4{font-size:11px;font-weight:600;color:#a5b4fc;text-transform:uppercase;letter-spacing:.3px;display:block;margin-bottom:2px}.wl-detail-section.svelte-14f54e4 p.svelte-14f54e4{margin:0;color:#c0c0d0}.wl-tag-billable.svelte-14f54e4.svelte-14f54e4{font-size:10px;color:#34d399;background:#1a2a1e;padding:1px 6px;border-radius:8px;white-space:nowrap}.wl-tag-approx.svelte-14f54e4.svelte-14f54e4{font-size:10px;color:#fbbf24;background:#2a2a1a;padding:1px 6px;border-radius:8px;white-space:nowrap}.checkbox-label-inline.svelte-14f54e4.svelte-14f54e4{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:#e4e4ef;cursor:pointer}.checkbox-label-inline.svelte-14f54e4 input.svelte-14f54e4{width:auto} diff --git a/cmd/verstak-gui/frontend-dist/assets/main-xwXesvcm.css b/cmd/verstak-gui/frontend-dist/assets/main-xwXesvcm.css deleted file mode 100644 index 9737242..0000000 --- a/cmd/verstak-gui/frontend-dist/assets/main-xwXesvcm.css +++ /dev/null @@ -1 +0,0 @@ -.file-row.svelte-1skuef2.svelte-1skuef2{display:flex;align-items:center;gap:10px;padding:8px 12px;border-radius:6px;cursor:default;transition:background .12s;min-height:52px;-webkit-user-select:none;user-select:none;position:relative}.file-row.svelte-1skuef2.svelte-1skuef2:hover{background:#1e1e30}.file-row--selected.svelte-1skuef2.svelte-1skuef2{background:#1e1e3a;outline:1px solid #3a3a6c}.file-row--selected.svelte-1skuef2.svelte-1skuef2:hover{background:#252545}.file-row.svelte-1skuef2.svelte-1skuef2:focus-visible{outline:2px solid #5588ff;outline-offset:-2px}.file-row-icon.svelte-1skuef2.svelte-1skuef2{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:32px;height:32px;color:#888}.file-row-body.svelte-1skuef2.svelte-1skuef2{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.file-row-name.svelte-1skuef2.svelte-1skuef2{font-size:13px;color:#ddd;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.3}.file-row-meta.svelte-1skuef2.svelte-1skuef2{display:flex;align-items:center;gap:4px;font-size:11px;color:#666}.meta-sep.svelte-1skuef2.svelte-1skuef2{color:#444}.file-row-actions.svelte-1skuef2.svelte-1skuef2{display:flex;gap:2px;align-items:center;opacity:0;transition:opacity .15s ease;flex-shrink:0}.file-row.svelte-1skuef2:hover .file-row-actions.svelte-1skuef2{opacity:1}.action-btn.svelte-1skuef2.svelte-1skuef2{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;border-radius:4px;background:transparent;color:#666;cursor:pointer;transition:background .12s,color .12s}.action-btn.svelte-1skuef2.svelte-1skuef2:hover{background:#2a2a3c;color:#ccc}.action-btn-danger.svelte-1skuef2.svelte-1skuef2:hover{background:#3a2222;color:#ff6b6b}.action-btn.svelte-1skuef2.svelte-1skuef2:focus-visible{outline:2px solid #5588ff;outline-offset:1px}.menu-backdrop.svelte-1skuef2.svelte-1skuef2{position:fixed;top:0;right:0;bottom:0;left:0;z-index:99}.menu.svelte-1skuef2.svelte-1skuef2{position:fixed;background:#1a1a28;border:1px solid #2a2a3c;border-radius:8px;padding:4px;z-index:100;min-width:220px;box-shadow:0 4px 16px #00000080}.menu-item.svelte-1skuef2.svelte-1skuef2{display:flex;align-items:center;gap:8px;width:100%;padding:7px 10px;border:none;background:transparent;color:#ccc;font-size:12px;text-align:left;cursor:pointer;border-radius:4px;font-family:inherit}.menu-item.svelte-1skuef2.svelte-1skuef2:hover{background:#2a2a3c;color:#fff}.menu-item-danger.svelte-1skuef2.svelte-1skuef2{color:#ff6b6b}.menu-item-danger.svelte-1skuef2.svelte-1skuef2:hover{background:#3a2222}.menu-item.svelte-1skuef2.svelte-1skuef2:focus-visible{outline:2px solid #5588ff;outline-offset:1px}.menu-sep.svelte-1skuef2.svelte-1skuef2{height:1px;background:#2a2a3c;margin:4px 8px}.breadcrumbs.svelte-csi2lb{display:flex;align-items:center;gap:4px;padding:8px 0;font-size:13px;color:#999}.sep.svelte-csi2lb{color:#444}.crumb.svelte-csi2lb{font-size:13px}.crumb--current.svelte-csi2lb{color:#ccc}.crumb--link.svelte-csi2lb{background:none;border:none;padding:2px 4px;color:#888;cursor:pointer;border-radius:3px;font-family:inherit;font-size:13px;transition:color .12s,background .12s}.crumb--link.svelte-csi2lb:hover{color:#ccc;background:#1e1e30}.crumb--link.svelte-csi2lb:focus-visible{outline:2px solid #5588ff;outline-offset:1px}.overlay.svelte-1cw3u0m{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000a6;display:flex;align-items:center;justify-content:center;z-index:1000}.modal.svelte-1cw3u0m{background:#14141f;border:1px solid #2a2a3c;border-radius:10px;width:90vw;max-width:900px;height:85vh;max-height:700px;display:flex;flex-direction:column;overflow:hidden}.preview-header.svelte-1cw3u0m{display:flex;align-items:center;gap:10px;padding:12px 16px;border-bottom:1px solid #2a2a3c;flex-shrink:0}.preview-title.svelte-1cw3u0m{display:flex;align-items:center;gap:8px;color:#ddd;font-size:14px;min-width:0}.preview-name.svelte-1cw3u0m{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.preview-meta.svelte-1cw3u0m{font-size:11px;color:#666;margin-left:auto;white-space:nowrap}.preview-actions.svelte-1cw3u0m{display:flex;gap:4px;flex-shrink:0;margin-left:8px}.action-btn.svelte-1cw3u0m{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border:none;border-radius:4px;background:transparent;color:#666;cursor:pointer;transition:background .12s,color .12s}.action-btn.svelte-1cw3u0m:hover{background:#2a2a3c;color:#ccc}.action-btn.svelte-1cw3u0m:focus-visible{outline:2px solid #5588ff;outline-offset:1px}.action-btn-close.svelte-1cw3u0m{color:#ff6b6b}.action-btn-close.svelte-1cw3u0m:hover{background:#3a2222;color:#f44}.preview-body.svelte-1cw3u0m{flex:1;overflow:auto;min-height:0}.preview-status.svelte-1cw3u0m{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:48px 24px;color:#888;font-size:14px}.preview-image-container.svelte-1cw3u0m{display:flex;align-items:center;justify-content:center;padding:16px;min-height:200px;background:#0e0e18}.preview-image.svelte-1cw3u0m{max-width:100%;max-height:calc(85vh - 100px);object-fit:contain;border-radius:4px}.preview-text.svelte-1cw3u0m{margin:0;padding:16px;font-family:SF Mono,Fira Code,Cascadia Code,Consolas,monospace;font-size:12px;line-height:1.5;color:#ccc;white-space:pre-wrap;word-wrap:break-word;overflow:auto}.preview-pdf-container.svelte-1cw3u0m{width:100%;height:100%}.preview-pdf.svelte-1cw3u0m{width:100%;height:100%;border:none}.btn-sm.svelte-1cw3u0m{padding:6px 14px;border:1px solid #2a2a3c;background:#1a1a28;color:#ccc;border-radius:6px;cursor:pointer;font-size:12px;font-family:inherit;transition:background .12s}.btn-sm.svelte-1cw3u0m:hover{background:#223}.overlay.svelte-1fv6yyk{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:200}.modal.svelte-1fv6yyk{background:#1a1a28;border:1px solid #2a2a3c;border-radius:12px;padding:24px;width:360px;max-width:90vw}h3.svelte-1fv6yyk{font-size:18px;margin-bottom:12px;color:#e4e4ef}.message.svelte-1fv6yyk{font-size:14px;color:#aaa;margin-bottom:20px;line-height:1.4}.actions.svelte-1fv6yyk{display:flex;gap:8px;justify-content:flex-end}.btn.svelte-1fv6yyk{padding:8px 16px;border:1px solid #2a2a3c;background:#1a1a28;color:#ccc;border-radius:6px;cursor:pointer;font-size:13px;font-family:inherit}.btn.svelte-1fv6yyk:hover{background:#223}.btn-primary.svelte-1fv6yyk{background:#6366f1;border-color:#6366f1;color:#fff}.btn-primary.svelte-1fv6yyk:hover{background:#4f46e5}.btn-danger.svelte-1fv6yyk{background:#dc2626;border-color:#dc2626;color:#fff}.btn-danger.svelte-1fv6yyk:hover{background:#b91c1c}.btn.svelte-1fv6yyk:focus-visible{outline:2px solid #5588ff;outline-offset:1px}.tree-item.svelte-zj71cl.svelte-zj71cl{display:flex;align-items:center;height:32px;padding-right:8px;cursor:default;font-size:13px;color:#ccc;-webkit-user-select:none;user-select:none}.tree-item.svelte-zj71cl.svelte-zj71cl:hover{background:#223}.tree-item.selected.svelte-zj71cl.svelte-zj71cl{background:#2a2a4a;color:#fff;font-weight:500}.tree-item.drop-valid.svelte-zj71cl.svelte-zj71cl{background:#1a3a1a;outline:1px solid #4ade80;outline-offset:-1px}.tree-item.drop-invalid.svelte-zj71cl.svelte-zj71cl{background:#3a1a1a;outline:1px solid #ff6b6b;outline-offset:-1px}.tree-toggle.svelte-zj71cl.svelte-zj71cl{background:none;border:none;color:#666;cursor:pointer;padding:0;width:20px;height:32px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;font-family:inherit;line-height:1;font-size:12px}.tree-toggle.svelte-zj71cl.svelte-zj71cl:hover{color:#a5b4fc}.tree-toggle-placeholder.svelte-zj71cl.svelte-zj71cl{display:inline-block;width:20px;flex-shrink:0}.tree-icon.svelte-zj71cl.svelte-zj71cl{display:inline-flex;align-items:center;justify-content:center;width:20px;height:32px;flex-shrink:0;color:#888;margin-right:4px;cursor:pointer}.tree-icon.svelte-zj71cl.svelte-zj71cl:hover,.tree-item.selected.svelte-zj71cl .tree-icon.svelte-zj71cl{color:#a5b4fc}.tree-label.svelte-zj71cl.svelte-zj71cl{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;line-height:32px}.first-run-screen.svelte-11u707d.svelte-11u707d{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:2rem;background:var(--bg, #13131f)}.first-run-card.svelte-11u707d.svelte-11u707d{max-width:520px;width:100%;padding:2.5rem;background:var(--surface, #1e1e2e);border-radius:12px;border:1px solid var(--border, #2a2a3e);text-align:center}.first-run-logo.svelte-11u707d.svelte-11u707d{font-size:3rem;margin-bottom:.5rem}.first-run-card.svelte-11u707d h1.svelte-11u707d{margin:0 0 .75rem;font-size:1.5rem;color:var(--text, #e0e0e0)}.first-run-desc.svelte-11u707d.svelte-11u707d{color:var(--text-dim, #888);margin-bottom:1.5rem;font-size:.9rem;line-height:1.5}.input-row.svelte-11u707d.svelte-11u707d{display:flex;gap:.5rem}.input-row.svelte-11u707d input.svelte-11u707d{flex:1}.path-info.svelte-11u707d.svelte-11u707d{text-align:left;font-size:.85rem;padding:.5rem .75rem;margin-top:.5rem;background:var(--surface-alt, #252538);border-radius:6px;color:var(--text-dim, #888)}.error-msg.svelte-11u707d.svelte-11u707d{text-align:left;font-size:.85rem;padding:.5rem .75rem;margin-top:.5rem;background:#ff6b6b1a;border:1px solid rgba(255,107,107,.3);border-radius:6px;color:#ff6b6b}.first-run-actions.svelte-11u707d.svelte-11u707d{display:flex;gap:.75rem;justify-content:center;margin-top:1.5rem}.btn-lg.svelte-11u707d.svelte-11u707d{padding:.65rem 1.5rem;font-size:1rem}.form-group.svelte-11u707d.svelte-11u707d{margin-bottom:1rem;text-align:left}.form-label.svelte-11u707d.svelte-11u707d{display:block;font-size:.85rem;color:var(--text-dim, #888);margin-bottom:.4rem}.recovery-screen.svelte-s3o8c3.svelte-s3o8c3{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:2rem;background:var(--bg, #13131f)}.recovery-card.svelte-s3o8c3.svelte-s3o8c3{max-width:480px;width:100%;padding:2.5rem;background:var(--surface, #1e1e2e);border-radius:12px;border:1px solid var(--border, #2a2a3e);text-align:center}.recovery-icon.svelte-s3o8c3.svelte-s3o8c3{font-size:2.5rem;margin-bottom:.5rem;color:#f59e0b}.recovery-card.svelte-s3o8c3 h1.svelte-s3o8c3{margin:0 0 .75rem;font-size:1.4rem;color:var(--text, #e0e0e0)}.recovery-desc.svelte-s3o8c3.svelte-s3o8c3{color:var(--text-dim, #888);margin-bottom:.5rem;font-size:.9rem}.recovery-path.svelte-s3o8c3.svelte-s3o8c3{display:block;padding:.5rem .75rem;background:var(--surface-alt, #252538);border-radius:6px;font-size:.85rem;color:var(--text-dim, #aaa);word-break:break-all;margin-bottom:1.5rem}.error-msg.svelte-s3o8c3.svelte-s3o8c3{padding:.5rem .75rem;margin-bottom:1rem;background:#ff6b6b1a;border:1px solid rgba(255,107,107,.3);border-radius:6px;color:#ff6b6b;font-size:.85rem}.recovery-actions.svelte-s3o8c3.svelte-s3o8c3{display:flex;flex-direction:column;gap:.6rem}.btn-lg.svelte-s3o8c3.svelte-s3o8c3{padding:.65rem 1.25rem;font-size:.95rem;width:100%}.modal-desc.svelte-s3o8c3.svelte-s3o8c3{color:var(--text-dim, #888);font-size:.9rem;line-height:1.5;margin-bottom:1rem}.modal-overlay.svelte-s3o8c3.svelte-s3o8c3{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000}.modal.svelte-s3o8c3.svelte-s3o8c3{background:var(--surface, #1e1e2e);border:1px solid var(--border, #2a2a3e);border-radius:10px;padding:1.5rem;max-width:420px;width:90%}.modal.svelte-s3o8c3 h3.svelte-s3o8c3{margin:0 0 .75rem}.modal-actions.svelte-s3o8c3.svelte-s3o8c3{display:flex;gap:.5rem;justify-content:flex-end}.settings-sidebar.svelte-1uolm3f{width:200px;min-width:200px;border-right:1px solid var(--border, #2a2a3e);padding:.75rem 0;overflow-y:auto;background:var(--surface, #1e1e2e)}.settings-nav-item.svelte-1uolm3f{display:flex;align-items:center;gap:.5rem;width:100%;padding:.55rem 1rem;border:none;background:transparent;color:var(--text-dim, #888);font-size:.9rem;cursor:pointer;text-align:left;transition:background .15s,color .15s;font-family:inherit}.settings-nav-item.svelte-1uolm3f:hover:not(.disabled){background:var(--surface-alt, #252538);color:var(--text, #e0e0e0)}.settings-nav-item.active.svelte-1uolm3f{background:var(--accent-bg, rgba(99, 102, 241, .15));color:var(--accent, #818cf8);font-weight:600}.settings-nav-item.disabled.svelte-1uolm3f{opacity:.4;cursor:default}.settings-nav-icon.svelte-1uolm3f{width:1.4rem;height:1rem;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}.settings-nav-label.svelte-1uolm3f{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.settings-section.svelte-1e2uhdh.svelte-1e2uhdh{padding:1.5rem;max-width:560px}.settings-section.svelte-1e2uhdh h2.svelte-1e2uhdh{margin:0 0 .25rem;font-size:1.2rem;color:var(--text, #e0e0e0)}.section-desc.svelte-1e2uhdh.svelte-1e2uhdh{color:var(--text-dim, #888);font-size:.85rem;margin-bottom:1.25rem;line-height:1.4}.settings-card.svelte-1e2uhdh.svelte-1e2uhdh{background:var(--surface-alt, #1e1e30);border:1px solid var(--border, #2a2a3e);border-radius:8px;padding:1rem 1.25rem;margin-bottom:1rem}.card-title.svelte-1e2uhdh.svelte-1e2uhdh{font-size:.9rem;font-weight:600;color:var(--text, #e0e0e0);margin:0 0 .75rem}.form-group.svelte-1e2uhdh.svelte-1e2uhdh{margin-bottom:0}.label-text.svelte-1e2uhdh.svelte-1e2uhdh{display:block;font-size:.85rem;color:var(--text-dim, #888);margin-bottom:.3rem}.settings-actions.svelte-1e2uhdh.svelte-1e2uhdh{display:flex;align-items:center;gap:.75rem;margin-top:1rem}.save-notice.svelte-1e2uhdh.svelte-1e2uhdh{padding:.4rem .75rem;background:#34d3991a;border:1px solid rgba(52,211,153,.3);border-radius:6px;color:#34d399;font-size:.85rem}.settings-section.svelte-1zbky3.svelte-1zbky3{padding:1.5rem;max-width:600px}.settings-section.svelte-1zbky3 h2.svelte-1zbky3{margin:0 0 .25rem;font-size:1.2rem;color:var(--text, #e0e0e0)}.section-desc.svelte-1zbky3.svelte-1zbky3{color:var(--text-dim, #888);font-size:.85rem;margin-bottom:1.25rem;line-height:1.4}.settings-card.svelte-1zbky3.svelte-1zbky3{background:var(--surface-alt, #1e1e30);border:1px solid var(--border, #2a2a3e);border-radius:8px;padding:1rem 1.25rem;margin-bottom:1rem}.notice.svelte-1zbky3.svelte-1zbky3{padding:.5rem .75rem;margin-bottom:.75rem;background:#ff6b6b1a;border:1px solid rgba(255,107,107,.3);border-radius:6px;color:#ff6b6b;font-size:.85rem}.info-row.svelte-1zbky3.svelte-1zbky3{display:flex;padding:.4rem 0;border-bottom:1px solid var(--border, #2a2a3e);font-size:.9rem}.info-row.svelte-1zbky3.svelte-1zbky3:last-child{border-bottom:none}.info-label.svelte-1zbky3.svelte-1zbky3{width:120px;min-width:120px;color:var(--text-dim, #888)}.info-value.svelte-1zbky3.svelte-1zbky3{color:var(--text, #e0e0e0);word-break:break-all}.info-value.mono.svelte-1zbky3.svelte-1zbky3{font-family:monospace;font-size:.85rem}.info-value.small.svelte-1zbky3.svelte-1zbky3{font-size:.8rem}.workspace-actions.svelte-1zbky3.svelte-1zbky3{display:flex;gap:.5rem;flex-wrap:wrap;margin-top:.5rem}.btn.svelte-1zbky3.svelte-1zbky3{padding:.45rem .8rem;border:1px solid var(--border, #2a2a3e);border-radius:6px;background:var(--surface-light, #232338);color:var(--text, #e0e0e0);font-size:.85rem;cursor:pointer}.btn.svelte-1zbky3.svelte-1zbky3:hover{background:var(--accent, #4a7c59);border-color:var(--accent, #4a7c59)}.no-data.svelte-1zbky3.svelte-1zbky3{color:var(--text-dim, #888);font-style:italic;margin:0}.settings-section.svelte-ksamnw.svelte-ksamnw{padding:1.5rem;max-width:560px}.settings-section.svelte-ksamnw h2.svelte-ksamnw{margin:0 0 .25rem;font-size:1.2rem;color:var(--text, #e0e0e0)}.section-desc.svelte-ksamnw.svelte-ksamnw{color:var(--text-dim, #888);font-size:.85rem;margin-bottom:1.25rem;line-height:1.4}.loading.svelte-ksamnw.svelte-ksamnw,.no-data.svelte-ksamnw.svelte-ksamnw{color:var(--text-dim, #888);font-style:italic}.template-list.svelte-ksamnw.svelte-ksamnw{display:flex;flex-direction:column;gap:.5rem}.template-item.svelte-ksamnw.svelte-ksamnw{display:flex;align-items:center;justify-content:space-between;padding:.6rem .75rem;background:var(--surface-alt, #252538);border-radius:6px;border:1px solid var(--border, #2a2a3e)}.template-info.svelte-ksamnw.svelte-ksamnw{display:flex;align-items:center;gap:.5rem}.template-name.svelte-ksamnw.svelte-ksamnw{color:var(--text, #e0e0e0);font-size:.9rem}.template-type.svelte-ksamnw.svelte-ksamnw{color:var(--text-dim, #888);font-size:.8rem}.toggle-label.svelte-ksamnw.svelte-ksamnw{display:flex;align-items:center;gap:.4rem;cursor:pointer}.toggle-text.svelte-ksamnw.svelte-ksamnw{font-size:.8rem;color:var(--text-dim, #888)}input[type=checkbox].svelte-ksamnw.svelte-ksamnw{accent-color:var(--accent, #818cf8)}.settings-section.svelte-8jch95.svelte-8jch95{padding:1.5rem;max-width:500px}.settings-section.svelte-8jch95 h2.svelte-8jch95{margin:0 0 .5rem;font-size:1.2rem;color:var(--text, #e0e0e0)}.section-desc.svelte-8jch95.svelte-8jch95{color:var(--text-dim, #888);font-size:.85rem;margin-bottom:1rem}.settings-section.svelte-1fx1e1e.svelte-1fx1e1e{padding:1.5rem;max-width:600px}.settings-section.svelte-1fx1e1e h2.svelte-1fx1e1e{margin:0 0 .25rem;font-size:1.2rem;color:var(--text, #e0e0e0)}.section-desc.svelte-1fx1e1e.svelte-1fx1e1e{color:var(--text-dim, #888);font-size:.85rem;margin-bottom:1.25rem;line-height:1.4}.settings-card.svelte-1fx1e1e.svelte-1fx1e1e{background:var(--surface-alt, #1e1e30);border:1px solid var(--border, #2a2a3e);border-radius:8px;padding:1rem 1.25rem;margin-bottom:1rem}.info-row.svelte-1fx1e1e.svelte-1fx1e1e{display:flex;padding:.4rem 0;border-bottom:1px solid var(--border, #2a2a3e);font-size:.9rem}.info-row.svelte-1fx1e1e.svelte-1fx1e1e:last-child{border-bottom:none}.info-label.svelte-1fx1e1e.svelte-1fx1e1e{width:180px;min-width:180px;color:var(--text-dim, #888)}.info-value.svelte-1fx1e1e.svelte-1fx1e1e{color:var(--text, #e0e0e0);word-break:break-all}.info-value.mono.svelte-1fx1e1e.svelte-1fx1e1e{font-family:monospace;font-size:.85rem}.info-value.error.svelte-1fx1e1e.svelte-1fx1e1e{color:#ff6b6b}.status-ok.svelte-1fx1e1e.svelte-1fx1e1e{color:#34d399;font-weight:600}.status-err.svelte-1fx1e1e.svelte-1fx1e1e{color:#ff6b6b}.sync-actions.svelte-1fx1e1e.svelte-1fx1e1e{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:1rem}.sync-interval.svelte-1fx1e1e.svelte-1fx1e1e{margin-bottom:0}.interval-row.svelte-1fx1e1e.svelte-1fx1e1e{display:flex;gap:.5rem;align-items:center}.interval-row.svelte-1fx1e1e input.svelte-1fx1e1e{width:100px}.sync-setup.svelte-1fx1e1e .form-group.svelte-1fx1e1e{margin-bottom:1rem}.sync-setup.svelte-1fx1e1e .form-group.svelte-1fx1e1e:last-of-type{margin-bottom:0}.sync-setup-actions.svelte-1fx1e1e.svelte-1fx1e1e{display:flex;gap:.5rem;margin-top:1rem}.connection-result.svelte-1fx1e1e.svelte-1fx1e1e{margin-top:.75rem;padding:.4rem .75rem;border-radius:6px;font-size:.85rem}.connection-result.ok.svelte-1fx1e1e.svelte-1fx1e1e{background:#34d3991a;border:1px solid rgba(52,211,153,.3);color:#34d399}.connection-result.fail.svelte-1fx1e1e.svelte-1fx1e1e{background:#ff6b6b1a;border:1px solid rgba(255,107,107,.3);color:#ff6b6b}.error-msg.svelte-1fx1e1e.svelte-1fx1e1e{padding:.5rem .75rem;margin-bottom:.75rem;background:#ff6b6b1a;border:1px solid rgba(255,107,107,.3);border-radius:6px;color:#ff6b6b;font-size:.85rem}.result-msg.svelte-1fx1e1e.svelte-1fx1e1e{padding:.5rem .75rem;margin-bottom:.75rem;background:#34d3991a;border:1px solid rgba(52,211,153,.3);border-radius:6px;color:#34d399;font-size:.85rem}.result-msg.warning.svelte-1fx1e1e.svelte-1fx1e1e{background:#f59e0b1a;border-color:#f59e0b4d;color:#f59e0b}.modal-overlay.svelte-1fx1e1e.svelte-1fx1e1e{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;border:none;padding:0;cursor:pointer;width:100%;color:inherit;font:inherit}.modal.svelte-1fx1e1e.svelte-1fx1e1e{background:var(--surface, #1e1e2e);border:1px solid var(--border, #2a2a3e);border-radius:10px;padding:1.5rem;max-width:420px;width:90%;cursor:default}.modal.svelte-1fx1e1e h3.svelte-1fx1e1e{margin:0 0 .75rem}.modal-desc.svelte-1fx1e1e.svelte-1fx1e1e{color:var(--text-dim, #888);font-size:.9rem;line-height:1.5;margin-bottom:1rem}.modal-actions.svelte-1fx1e1e.svelte-1fx1e1e{display:flex;gap:.5rem;justify-content:flex-end}.settings-section.svelte-19bo7bn.svelte-19bo7bn{padding:1.5rem;max-width:500px}.settings-section.svelte-19bo7bn h2.svelte-19bo7bn{margin:0 0 .5rem;font-size:1.2rem;color:var(--text, #e0e0e0)}.section-desc.svelte-19bo7bn.svelte-19bo7bn{color:var(--text-dim, #888);font-size:.85rem}.settings-overlay.svelte-zf2zsc.svelte-zf2zsc{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:900;border:none;padding:0;cursor:pointer;width:100%;color:inherit;font:inherit}.settings-window.svelte-zf2zsc.svelte-zf2zsc{display:flex;flex-direction:column;width:800px;max-width:90vw;height:600px;max-height:85vh;background:var(--surface, #1e1e2e);border:1px solid var(--border, #2a2a3e);border-radius:12px;overflow:hidden;box-shadow:0 8px 32px #0006}.settings-header.svelte-zf2zsc.svelte-zf2zsc{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;border-bottom:1px solid var(--border, #2a2a3e);flex-shrink:0}.settings-header.svelte-zf2zsc h2.svelte-zf2zsc{margin:0;font-size:1.1rem;color:var(--text, #e0e0e0)}.close-btn.svelte-zf2zsc.svelte-zf2zsc{background:transparent;border:none;color:var(--text-dim, #888);cursor:pointer;padding:.25rem;border-radius:4px;display:flex;align-items:center}.close-btn.svelte-zf2zsc.svelte-zf2zsc:hover{color:var(--text, #e0e0e0);background:var(--surface-alt, #252538)}.settings-body.svelte-zf2zsc.svelte-zf2zsc{display:flex;flex:1;overflow:hidden}.settings-content.svelte-zf2zsc.svelte-zf2zsc{flex:1;overflow-y:auto;background:var(--bg, #13131f)}.sync-status-widget.svelte-1rxbx0{font-size:.8rem;padding:.4rem .5rem}.sync-status-row.svelte-1rxbx0{display:flex;align-items:center;gap:.4rem;flex-wrap:wrap}.sync-dot.svelte-1rxbx0{width:8px;height:8px;border-radius:50%;flex-shrink:0}.dot-connected.svelte-1rxbx0{background:#34d399;box-shadow:0 0 4px #34d39966}.dot-warning.svelte-1rxbx0{background:#f59e0b}.dot-disabled.svelte-1rxbx0{background:#555}.dot-syncing.svelte-1rxbx0{background:#818cf8;animation:svelte-1rxbx0-pulse 1s infinite}@keyframes svelte-1rxbx0-pulse{0%,to{opacity:1}50%{opacity:.4}}.sync-label.svelte-1rxbx0{color:var(--text-dim, #888);white-space:nowrap}.sync-count.svelte-1rxbx0{color:var(--accent, #818cf8);font-weight:600}.sync-actions-row.svelte-1rxbx0{display:flex;gap:.3rem;margin-left:auto}.sync-message.svelte-1rxbx0{margin-top:.25rem;color:var(--text-dim, #888);line-height:1.25}.sync-message-warning.svelte-1rxbx0{color:#f59e0b}.btn-xs.svelte-1rxbx0{padding:.2rem .5rem;font-size:.75rem;border:1px solid var(--border, #2a2a3e);background:var(--surface-alt, #252538);color:var(--text-dim, #888);border-radius:4px;cursor:pointer;white-space:nowrap}.btn-xs.svelte-1rxbx0:hover{background:var(--border, #2a2a3e);color:var(--text, #e0e0e0)}.btn-xs.svelte-1rxbx0:disabled{opacity:.5;cursor:default}.btn-link.svelte-1rxbx0{border:none;background:transparent;color:var(--accent, #818cf8);text-decoration:underline}.btn-link.svelte-1rxbx0:hover{color:#a5b4fc;background:transparent}.svelte-hoyczz.svelte-hoyczz,.svelte-hoyczz.svelte-hoyczz:before,.svelte-hoyczz.svelte-hoyczz:after{box-sizing:border-box;margin:0;padding:0}.app.svelte-hoyczz.svelte-hoyczz{display:flex;width:100vw;height:100vh;overflow:hidden;background:#13131f;color:#e4e4ef;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:14px}.sidebar.svelte-hoyczz.svelte-hoyczz{width:260px;min-width:200px;height:100vh;display:flex;flex-direction:column;background:#1a1a28;border-right:1px solid #2a2a3c;flex-shrink:0;overflow:hidden}.sidebar-brand.svelte-hoyczz.svelte-hoyczz{padding:16px 20px;display:flex;align-items:center;gap:10px;border-bottom:1px solid #2a2a3c;flex-shrink:0}.logo.svelte-hoyczz.svelte-hoyczz{font-size:20px;line-height:1}.brand-name.svelte-hoyczz.svelte-hoyczz{font-size:16px;font-weight:600}.sidebar-nav.svelte-hoyczz.svelte-hoyczz{flex:1;overflow-y:auto;padding:12px 0}.nav-group.svelte-hoyczz.svelte-hoyczz{margin-bottom:16px}.nav-label.svelte-hoyczz.svelte-hoyczz{font-size:10px;text-transform:uppercase;letter-spacing:.5px;color:#666;padding:4px 20px;margin-bottom:4px}.nav-item.svelte-hoyczz.svelte-hoyczz{display:block;width:100%;padding:8px 20px;border:none;background:none;color:#ccc;font-size:13px;text-align:left;cursor:pointer;border-radius:0;font-family:inherit}.nav-item.svelte-hoyczz.svelte-hoyczz:hover{background:#223}.nav-item.selected.svelte-hoyczz.svelte-hoyczz{background:#2a2a4a;color:#fff;font-weight:500}.workspace-tree-area.svelte-hoyczz.svelte-hoyczz{min-height:32px}.workspace-tree-area.drop-valid.svelte-hoyczz.svelte-hoyczz{outline:2px dashed #4ade80;outline-offset:-2px;background:#4ade800d}.nav-empty.svelte-hoyczz.svelte-hoyczz{padding:8px 20px;color:#555;font-size:12px}.nav-label-row.svelte-hoyczz.svelte-hoyczz{font-size:10px;text-transform:uppercase;letter-spacing:.5px;color:#666;padding:4px 20px;margin-bottom:4px;display:flex;align-items:center;justify-content:space-between}.nav-add-btn.svelte-hoyczz.svelte-hoyczz{background:none;border:none;color:#666;cursor:pointer;font-size:16px;padding:0 4px;font-family:inherit;line-height:1}.nav-add-btn.svelte-hoyczz.svelte-hoyczz:hover{color:#ccc}.context-menu-backdrop.svelte-hoyczz.svelte-hoyczz{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200}.context-menu.svelte-hoyczz.svelte-hoyczz{position:fixed;background:#1a1a28;border:1px solid #2a2a3c;border-radius:8px;padding:4px;min-width:180px;box-shadow:0 8px 24px #0006}.context-menu-section.svelte-hoyczz.svelte-hoyczz{padding:6px 12px;font-size:10px;text-transform:uppercase;letter-spacing:.5px;color:#666}.context-menu-item.svelte-hoyczz.svelte-hoyczz{display:flex;width:100%;padding:6px 12px;border:none;background:none;color:#ccc;font-size:13px;text-align:left;cursor:pointer;border-radius:4px;font-family:inherit;align-items:center;gap:6px}.context-menu-item.svelte-hoyczz.svelte-hoyczz:hover{background:#223;color:#fff}.context-menu-item.danger.svelte-hoyczz.svelte-hoyczz{color:#ff6b6b}.context-menu-item.danger.svelte-hoyczz.svelte-hoyczz:hover{background:#3a2222;color:#ff6b6b}.context-menu-divider.svelte-hoyczz.svelte-hoyczz{height:1px;background:#2a2a3c;margin:4px 0}.create-context.svelte-hoyczz.svelte-hoyczz{font-size:12px;color:#888;margin-bottom:12px}.sidebar-footer.svelte-hoyczz.svelte-hoyczz{padding:8px 12px;border-top:1px solid #2a2a3c;flex-shrink:0;display:flex;flex-direction:column;gap:4px}.sidebar-footer-row.svelte-hoyczz.svelte-hoyczz{display:flex;align-items:center;justify-content:space-between}.version.svelte-hoyczz.svelte-hoyczz{font-size:11px;color:#555;text-align:center}.main.svelte-hoyczz.svelte-hoyczz{flex:1;display:flex;flex-direction:column;height:100vh;min-width:0;overflow:hidden;background:#13131f}.header.svelte-hoyczz.svelte-hoyczz{padding:12px 24px;border-bottom:1px solid #2a2a3c;display:flex;align-items:center;flex-shrink:0;min-height:48px}.header-left.svelte-hoyczz.svelte-hoyczz{display:flex;align-items:center;gap:8px;flex:1}.header-right.svelte-hoyczz.svelte-hoyczz{display:flex;align-items:center;gap:8px}.sidebar-settings-btn.svelte-hoyczz.svelte-hoyczz{background:transparent;border:none;border-radius:6px;padding:6px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;color:#666;font-family:inherit;width:32px;height:32px}.sidebar-settings-btn.svelte-hoyczz.svelte-hoyczz:hover{background:#1e1e38;color:#a5b4fc}.sidebar-settings-btn.svelte-hoyczz.svelte-hoyczz:active{background:#252545;color:#818cf8}.crumb.svelte-hoyczz.svelte-hoyczz{font-size:14px;font-weight:500}.crumb.placeholder.svelte-hoyczz.svelte-hoyczz{color:#666}.crumb-type.svelte-hoyczz.svelte-hoyczz{font-size:11px;color:#555;background:#1e1e2e;padding:2px 8px;border-radius:10px;margin-left:8px}.error-banner.svelte-hoyczz.svelte-hoyczz{background:#3a2222;color:#f88;padding:8px 24px;font-size:12px;border-bottom:1px solid #4a2222;flex-shrink:0;cursor:pointer;display:flex;justify-content:space-between;align-items:center}.dismiss-btn.svelte-hoyczz.svelte-hoyczz{background:none;border:none;color:#f66;cursor:pointer;padding:2px;display:flex;align-items:center;border-radius:2px}.dismiss-btn.svelte-hoyczz.svelte-hoyczz:hover{color:#f44}.tabs.svelte-hoyczz.svelte-hoyczz{display:flex;border-bottom:1px solid #2a2a3c;flex-shrink:0;padding:0 24px}.tab.svelte-hoyczz.svelte-hoyczz{padding:10px 16px;border:none;background:none;color:#888;font-size:13px;cursor:pointer;border-bottom:2px solid transparent;font-family:inherit}.tab.svelte-hoyczz.svelte-hoyczz:hover{color:#a5b4fc}.tab.active.svelte-hoyczz.svelte-hoyczz{color:#e4e4ef;border-bottom-color:#818cf8;background:#6366f11f;font-weight:600}.tab-content.svelte-hoyczz.svelte-hoyczz{flex:1;overflow-y:auto}.note-editor.svelte-hoyczz.svelte-hoyczz{flex:1;display:flex;flex-direction:column;height:100%}.note-editor-header.svelte-hoyczz.svelte-hoyczz{padding:12px 24px;border-bottom:1px solid #2a2a3c;display:flex;align-items:center;gap:12px;flex-shrink:0}.note-title.svelte-hoyczz.svelte-hoyczz{font-size:16px;font-weight:500}.dirty-mark.svelte-hoyczz.svelte-hoyczz{color:#f59e0b;font-size:10px}.note-editor-actions.svelte-hoyczz.svelte-hoyczz{margin-left:auto;display:flex;gap:8px}.note-textarea.svelte-hoyczz.svelte-hoyczz{flex:1;width:100%;border:none;outline:none;background:#13131f;color:#e4e4ef;font-family:SF Mono,Fira Code,monospace;font-size:14px;line-height:1.6;padding:24px;resize:none}.overview.svelte-hoyczz.svelte-hoyczz{padding:24px}.overview.svelte-hoyczz h2.svelte-hoyczz{font-size:24px;margin-bottom:16px}.meta-grid.svelte-hoyczz.svelte-hoyczz{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px;margin-bottom:24px}.meta-item.svelte-hoyczz.svelte-hoyczz{background:#1a1a28;padding:12px 16px;border-radius:8px}.meta-label.svelte-hoyczz.svelte-hoyczz{display:block;font-size:11px;color:#666;margin-bottom:4px;text-transform:uppercase}.quick-actions.svelte-hoyczz.svelte-hoyczz{display:flex;gap:8px;margin-bottom:24px;flex-wrap:wrap}.qa-btn.svelte-hoyczz.svelte-hoyczz{padding:10px 16px;border:1px solid #2a2a3c;background:#1a1a28;color:#ccc;border-radius:8px;cursor:pointer;font-size:13px;font-family:inherit;display:inline-flex;align-items:center;gap:6px}.qa-btn.svelte-hoyczz.svelte-hoyczz:hover{background:#223}.qa-btn.svelte-hoyczz.svelte-hoyczz:disabled{opacity:.4;cursor:not-allowed}.recent-section.svelte-hoyczz.svelte-hoyczz{margin-bottom:24px}.recent-section.svelte-hoyczz h3.svelte-hoyczz{font-size:13px;color:#666;text-transform:uppercase;margin-bottom:8px}.recent-note.svelte-hoyczz.svelte-hoyczz{padding:8px 12px;border-radius:6px;cursor:pointer;display:flex;justify-content:space-between}.recent-note.svelte-hoyczz.svelte-hoyczz:hover{background:#1a1a28}.recent-date.svelte-hoyczz.svelte-hoyczz{font-size:11px;color:#555}.recent-entry.svelte-hoyczz.svelte-hoyczz{padding:6px 0;font-size:13px;color:#888;border-bottom:1px solid #1a1a28}.notes-tab.svelte-hoyczz.svelte-hoyczz{padding:24px}.tab-toolbar.svelte-hoyczz.svelte-hoyczz{margin-bottom:16px}.create-form.svelte-hoyczz.svelte-hoyczz{background:#1a1a28;padding:16px;border-radius:8px;margin-bottom:16px}.create-form.svelte-hoyczz input.svelte-hoyczz{width:100%;padding:8px 12px;border:1px solid #2a2a3c;background:#13131f;color:#e4e4ef;border-radius:4px;font-size:14px;font-family:inherit;margin-bottom:8px}.create-form.svelte-hoyczz input.svelte-hoyczz:focus{outline:none;border-color:#6366f1}.form-actions.svelte-hoyczz.svelte-hoyczz{display:flex;gap:8px}.notes-list.svelte-hoyczz.svelte-hoyczz{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}.note-card.svelte-hoyczz.svelte-hoyczz{background:#1a1a28;border:1px solid #2a2a3c;border-radius:8px;padding:16px;cursor:pointer}.note-card.svelte-hoyczz.svelte-hoyczz:hover{border-color:#3a3a5c}.note-card-title.svelte-hoyczz.svelte-hoyczz{font-size:14px;font-weight:500;margin-bottom:4px}.note-card-date.svelte-hoyczz.svelte-hoyczz{font-size:11px;color:#555}.worklog-tab.svelte-hoyczz.svelte-hoyczz{padding:24px}.worklog-toolbar.svelte-hoyczz.svelte-hoyczz{margin-bottom:16px}.worklog-entry.svelte-hoyczz.svelte-hoyczz{padding:12px 0;border-bottom:1px solid #1a1a28}.suggestions-title.svelte-hoyczz.svelte-hoyczz{font-size:13px;font-weight:600;color:#a5b4fc;margin-bottom:12px;text-transform:uppercase;letter-spacing:.5px}.suggestion-summary.svelte-hoyczz.svelte-hoyczz{font-size:14px;color:#e4e4ef}.suggestion-meta.svelte-hoyczz.svelte-hoyczz{font-size:12px;color:#8888a0;margin-top:2px}.suggestion-main.svelte-hoyczz.svelte-hoyczz{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;cursor:pointer;gap:12px}.suggestion-card.expanded.svelte-hoyczz.svelte-hoyczz{border-color:#3a3a5c}.suggestion-detail.svelte-hoyczz.svelte-hoyczz{padding:0 12px 10px;border-top:1px solid #2a2a3c}.suggestion-detail-title.svelte-hoyczz.svelte-hoyczz{font-size:11px;font-weight:600;color:#a5b4fc;text-transform:uppercase;letter-spacing:.3px;padding:8px 0 4px}.suggestion-detail-event.svelte-hoyczz.svelte-hoyczz{display:flex;align-items:center;gap:8px;padding:3px 0;font-size:13px;color:#b0b0c0}.suggestion-event-time.svelte-hoyczz.svelte-hoyczz{color:#a0a0b8;font-variant-numeric:tabular-nums;white-space:nowrap;min-width:48px}.suggestion-event-type.svelte-hoyczz.svelte-hoyczz{color:#8888a0;font-size:11px;background:#1a1a2e;padding:1px 6px;border-radius:3px}.suggestion-event-title.svelte-hoyczz.svelte-hoyczz{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.suggestion-card.svelte-hoyczz.svelte-hoyczz{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;background:#1e1e32;border-radius:6px;margin-bottom:8px;gap:12px}.suggestion-card.svelte-hoyczz.svelte-hoyczz:last-child{margin-bottom:0}.suggestion-info.svelte-hoyczz.svelte-hoyczz{flex:1;display:flex;flex-direction:column;gap:2px}.suggestion-node.svelte-hoyczz.svelte-hoyczz{color:#a5b4fc;font-weight:600;font-size:13px;text-decoration:none;cursor:pointer}.suggestion-node.svelte-hoyczz.svelte-hoyczz:hover{text-decoration:underline}.suggestion-actions.svelte-hoyczz.svelte-hoyczz{display:flex;align-items:center;gap:6px;flex-shrink:0}.suggestion-min-input.svelte-hoyczz.svelte-hoyczz{width:60px;padding:4px 8px;border:1px solid #2a2a3c;background:#13131f;color:#e4e4ef;border-radius:4px;font-size:14px;text-align:center}.suggestion-min-label.svelte-hoyczz.svelte-hoyczz{font-size:12px;color:#8888a0}.suggestion-confidence.svelte-hoyczz.svelte-hoyczz{font-size:11px;padding:2px 6px;border-radius:3px}.suggestion-confidence.low.svelte-hoyczz.svelte-hoyczz{color:#fbbf24}.suggestion-confidence.medium.svelte-hoyczz.svelte-hoyczz{color:#60a5fa}.suggestion-confidence.high.svelte-hoyczz.svelte-hoyczz{color:#34d399}.inbox-screen.svelte-hoyczz.svelte-hoyczz{padding:24px;overflow-y:auto;flex:1}.inbox-header.svelte-hoyczz.svelte-hoyczz{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px}.inbox-header.svelte-hoyczz h2.svelte-hoyczz{margin:0 0 6px}.inbox-header.svelte-hoyczz p.svelte-hoyczz{margin:0;color:#a0a0b8;font-size:13px}.inbox-list.svelte-hoyczz.svelte-hoyczz{display:flex;flex-direction:column;gap:8px}.inbox-item.svelte-hoyczz.svelte-hoyczz{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid #2a2a3c;border-radius:8px;background:#1a1a28;cursor:pointer}.inbox-item.svelte-hoyczz.svelte-hoyczz:hover{border-color:#3a3a5c;background:#1e1e32}.inbox-item-main.svelte-hoyczz.svelte-hoyczz{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.inbox-item-title.svelte-hoyczz.svelte-hoyczz{color:#e4e4ef;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.inbox-item-meta.svelte-hoyczz.svelte-hoyczz{color:#8888a0;font-size:12px}.inbox-item-actions.svelte-hoyczz.svelte-hoyczz{display:flex;gap:8px;flex-shrink:0}.journal-screen.svelte-hoyczz.svelte-hoyczz{padding:24px;overflow-y:auto;flex:1}.journal-header.svelte-hoyczz.svelte-hoyczz{margin-bottom:24px}.journal-header.svelte-hoyczz h2.svelte-hoyczz{margin:0 0 16px}.journal-summary.svelte-hoyczz.svelte-hoyczz{display:flex;flex-wrap:wrap;gap:24px;margin-bottom:24px;padding:16px;background:#1a1a2e;border-radius:8px;border:1px solid #2a2a3c}.summary-total.svelte-hoyczz.svelte-hoyczz{font-size:18px;font-weight:700;color:#e4e4ef;width:100%;margin-bottom:4px}.summary-section.svelte-hoyczz.svelte-hoyczz{flex:1;min-width:200px}.summary-label.svelte-hoyczz.svelte-hoyczz{font-size:12px;font-weight:600;color:#a5b4fc;text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px}.summary-row.svelte-hoyczz.svelte-hoyczz{display:flex;gap:8px;font-size:13px;padding:4px 0;border-bottom:1px solid #2a2a3c}.summary-row.svelte-hoyczz span.svelte-hoyczz:first-child{flex:1;color:#e4e4ef}.summary-count.svelte-hoyczz.svelte-hoyczz{color:#8888a0}.journal-table-wrap.svelte-hoyczz.svelte-hoyczz{overflow-x:auto}.journal-table.svelte-hoyczz.svelte-hoyczz{width:100%;border-collapse:collapse;font-size:13px}.journal-table.svelte-hoyczz th.svelte-hoyczz{text-align:left;padding:8px 12px;border-bottom:2px solid #2a2a3c;color:#b0b0c8;font-weight:600;font-size:12px;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}.journal-table.svelte-hoyczz td.svelte-hoyczz{padding:8px 12px;border-bottom:1px solid #1a1a28;color:#e4e4ef}.journal-table.svelte-hoyczz tr:hover td.svelte-hoyczz{background:#1e1e32}.journal-table.svelte-hoyczz .link-btn.svelte-hoyczz{color:#a5b4fc}.journal-path-cell.svelte-hoyczz.svelte-hoyczz{max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#a0a0b8;font-size:12px}.journal-min-cell.svelte-hoyczz.svelte-hoyczz{text-align:right;font-variant-numeric:tabular-nums}.journal-date-cell.svelte-hoyczz.svelte-hoyczz{color:#b0b0c0;white-space:nowrap}.journal-bool-cell.svelte-hoyczz.svelte-hoyczz{text-align:center;color:#a0a0b8}.journal-row.svelte-hoyczz.svelte-hoyczz{cursor:pointer}.journal-row.svelte-hoyczz:hover td.svelte-hoyczz{background:#1e1e32}.journal-row.expanded.svelte-hoyczz td.svelte-hoyczz{background:#1a1a30;border-bottom:none}.journal-summary-cell.svelte-hoyczz.svelte-hoyczz{max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.journal-row-detail.svelte-hoyczz td.svelte-hoyczz{padding:0 12px 12px;background:#16162a}.journal-detail-body.svelte-hoyczz.svelte-hoyczz{display:flex;flex-direction:column;gap:12px;padding:8px 0}.journal-detail-actions.svelte-hoyczz.svelte-hoyczz{display:flex;gap:8px;justify-content:flex-end}.journal-detail-section.svelte-hoyczz.svelte-hoyczz{font-size:13px}.journal-detail-label.svelte-hoyczz.svelte-hoyczz{font-size:11px;font-weight:600;color:#a5b4fc;text-transform:uppercase;letter-spacing:.3px;display:block;margin-bottom:4px}.journal-detail-section.svelte-hoyczz p.svelte-hoyczz{margin:0;color:#c0c0d0}.journal-event-row.svelte-hoyczz.svelte-hoyczz{display:flex;align-items:center;gap:8px;padding:4px 0;font-size:13px;color:#b0b0c0}.journal-event-time.svelte-hoyczz.svelte-hoyczz{color:#a0a0b8;font-variant-numeric:tabular-nums;white-space:nowrap;min-width:48px}.journal-event-type.svelte-hoyczz.svelte-hoyczz{color:#8888a0;font-size:11px;background:#1a1a2e;padding:1px 6px;border-radius:3px}.journal-event-title.svelte-hoyczz.svelte-hoyczz{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.journal-node-picker.svelte-hoyczz input[type=text].svelte-hoyczz{padding:6px 10px;border:1px solid #2a2a3c;background:#13131f;color:#e4e4ef;border-radius:4px;font-size:13px;font-family:inherit;width:240px}.journal-search-dropdown.svelte-hoyczz.svelte-hoyczz{position:absolute;top:100%;left:0;right:0;z-index:50;background:#1a1a28;border:1px solid #2a2a3c;border-radius:6px;margin-top:4px;max-height:240px;overflow-y:auto;min-width:260px}.journal-search-item.svelte-hoyczz.svelte-hoyczz{display:block;width:100%;padding:8px 12px;border:none;background:transparent;color:#e4e4ef;cursor:pointer;font-family:inherit;font-size:13px;text-align:left}.journal-search-item.svelte-hoyczz.svelte-hoyczz:hover{background:#2a2a4a}.journal-search-title.svelte-hoyczz.svelte-hoyczz{display:block;font-weight:500}.journal-search-path.svelte-hoyczz.svelte-hoyczz{display:block;font-size:11px;color:#8888a0;margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.journal-selected-node.svelte-hoyczz.svelte-hoyczz{cursor:pointer;display:inline-flex;align-items:center;gap:6px;padding:6px 10px;background:#1e1e3a;border:1px solid #3a3a5c;border-radius:4px;font-size:13px;color:#a5b4fc;white-space:nowrap;font-family:inherit}.journal-selected-node.svelte-hoyczz.svelte-hoyczz:hover{background:#2a2a4a}.journal-node-clear.svelte-hoyczz.svelte-hoyczz{color:#8888a0;font-size:14px;margin-left:4px}.journal-status-msg.svelte-hoyczz.svelte-hoyczz{font-size:12px;color:#34d399;padding:4px 8px;background:#1a2a1e;border-radius:4px}.journal-include-chk.svelte-hoyczz.svelte-hoyczz{width:16px;height:16px;accent-color:#6366f1;cursor:pointer}.today-suggestions.svelte-hoyczz.svelte-hoyczz{margin-bottom:24px}.link-btn.svelte-hoyczz.svelte-hoyczz{background:none;border:none;padding:0;color:#a5b4fc;font:inherit;cursor:pointer;text-align:left}.link-btn.svelte-hoyczz.svelte-hoyczz:hover{text-decoration:underline}.nav-badge.svelte-hoyczz.svelte-hoyczz{background:#6366f1;color:#fff;font-size:10px;font-weight:700;border-radius:10px;padding:1px 6px;margin-left:6px;line-height:1.4}.actions-tab.svelte-hoyczz.svelte-hoyczz{padding:24px}.action-card.svelte-hoyczz.svelte-hoyczz{background:#1a1a28;padding:12px 16px;border-radius:8px;display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:8px}.action-info.svelte-hoyczz.svelte-hoyczz{display:flex;align-items:center;gap:8px;flex:1;min-width:0}.action-title.svelte-hoyczz.svelte-hoyczz{font-weight:500}.action-type.svelte-hoyczz.svelte-hoyczz{font-size:11px;color:#888;background:#223;padding:2px 8px;border-radius:10px;white-space:nowrap}.action-data.svelte-hoyczz.svelte-hoyczz{font-size:11px;color:#555;font-family:SF Mono,Fira Code,monospace;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:200px}.action-btns.svelte-hoyczz.svelte-hoyczz{display:flex;gap:4px;flex-shrink:0}.action-btns.svelte-hoyczz .btn-danger.svelte-hoyczz{color:#ff6b6b;border-color:#4a2222;padding:4px 8px}.action-btns.svelte-hoyczz .btn-danger.svelte-hoyczz:hover{background:#3a2222}.empty-state.svelte-hoyczz.svelte-hoyczz{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px;text-align:center}.empty-state.svelte-hoyczz p.svelte-hoyczz{margin:0;font-size:14px;color:#666}.empty-state.svelte-hoyczz .empty-icon.svelte-hoyczz{margin-bottom:12px;color:#444}.empty-state.svelte-hoyczz .hint.svelte-hoyczz{font-size:12px;color:#555;margin-top:6px}.empty-state.svelte-hoyczz .empty-actions.svelte-hoyczz{display:flex;gap:8px;justify-content:center;margin-top:16px}.welcome.svelte-hoyczz.svelte-hoyczz{padding:48px 24px;text-align:center}.welcome.svelte-hoyczz h2.svelte-hoyczz{font-size:32px;font-weight:300;color:#8888a4;margin-bottom:16px}.welcome.svelte-hoyczz p.svelte-hoyczz{color:#666;font-size:14px}.error-text.svelte-hoyczz.svelte-hoyczz{color:#f88}.modal-overlay.svelte-hoyczz.svelte-hoyczz{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:100}.modal.svelte-hoyczz.svelte-hoyczz{background:#1a1a28;border:1px solid #2a2a3c;border-radius:12px;padding:24px;width:400px;max-width:90vw}.modal.svelte-hoyczz h3.svelte-hoyczz{font-size:18px;margin-bottom:16px}.modal.svelte-hoyczz textarea.svelte-hoyczz{width:100%;padding:8px 12px;border:1px solid #2a2a3c;background:#13131f;color:#e4e4ef;border-radius:4px;font-size:14px;font-family:inherit;min-height:60px;resize:vertical;box-sizing:border-box}.modal-worklog.svelte-hoyczz.svelte-hoyczz{width:460px}.form-group.svelte-hoyczz.svelte-hoyczz{margin-bottom:12px}.form-row.svelte-hoyczz.svelte-hoyczz{display:flex;gap:16px;margin-bottom:12px}.form-group.svelte-hoyczz label.svelte-hoyczz{display:block}.form-group.svelte-hoyczz .label-text.svelte-hoyczz,.form-group.svelte-hoyczz .form-label.svelte-hoyczz{display:block;font-size:12px;color:#666;margin-bottom:4px}.form-group.svelte-hoyczz input.svelte-hoyczz,.form-group.svelte-hoyczz select.svelte-hoyczz{width:100%;padding:8px 12px;border:1px solid #2a2a3c;background:#13131f;color:#e4e4ef;border-radius:4px;font-size:14px;font-family:inherit}.form-group.svelte-hoyczz select.svelte-hoyczz{-moz-appearance:none;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 12 12'%3E%3Cpath fill='%23888' d='M2 4l4 4 4-4'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;padding-right:32px}.form-group.svelte-hoyczz input.svelte-hoyczz:focus,.form-group.svelte-hoyczz select.svelte-hoyczz:focus{outline:none;border-color:#6366f1}.modal-actions.svelte-hoyczz.svelte-hoyczz{display:flex;gap:8px;justify-content:flex-end;margin-top:16px}.btn.svelte-hoyczz.svelte-hoyczz{padding:8px 16px;border:1px solid #2a2a3c;background:#1a1a28;color:#ccc;border-radius:6px;cursor:pointer;font-size:13px;font-family:inherit}.btn.svelte-hoyczz.svelte-hoyczz:hover{background:#223}.btn-primary.svelte-hoyczz.svelte-hoyczz{background:#6366f1;border-color:#6366f1;color:#fff}.btn-primary.svelte-hoyczz.svelte-hoyczz:hover{background:#4f46e5}.btn.svelte-hoyczz.svelte-hoyczz:disabled{opacity:.4;cursor:not-allowed}.btn-sm.svelte-hoyczz.svelte-hoyczz{padding:4px 10px;font-size:12px}.btn-danger.svelte-hoyczz.svelte-hoyczz{color:#ff6b6b;border-color:#4a2222}.btn-danger.svelte-hoyczz.svelte-hoyczz:hover{background:#3a2222}.settings-section select,.settings-section input[type=text],.settings-section input[type=url],.settings-section input[type=number],.settings-section input[type=password]{appearance:none;-webkit-appearance:none;-moz-appearance:none;width:100%;padding:.5rem .75rem;background:#13131f;border:1px solid #2a2a3e;border-radius:6px;color:#e0e0e0;font-size:.9rem;font-family:inherit;transition:border-color .15s,box-shadow .15s}.settings-section select{padding-right:2rem;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23888' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right .6rem center;background-size:.85rem}.settings-section select:hover,.settings-section input:hover{border-color:#3a3a5e}.settings-section select:focus,.settings-section input:focus{outline:none;border-color:#6366f1;box-shadow:0 0 0 2px #6366f133}.settings-section select:disabled,.settings-section input:disabled{opacity:.45;cursor:not-allowed;border-color:#2a2a3e}.settings-section select option{background:#1e1e2e;color:#e0e0e0}.files-tab.svelte-hoyczz.svelte-hoyczz{padding:20px}.files-tab.svelte-hoyczz .tab-toolbar.svelte-hoyczz{display:flex;gap:8px;align-items:center;margin-bottom:16px}.file-list.svelte-hoyczz.svelte-hoyczz{display:flex;flex-direction:column}.back-btn.svelte-hoyczz.svelte-hoyczz{margin-bottom:4px;display:inline-flex;align-items:center;gap:4px}.import-summary.svelte-hoyczz.svelte-hoyczz{margin-bottom:16px}.summary-row.svelte-hoyczz.svelte-hoyczz{display:flex;justify-content:space-between;padding:6px 0;font-size:14px;border-bottom:1px solid #2a2a3c}.summary-warn.svelte-hoyczz.svelte-hoyczz{margin-top:8px;padding:8px 12px;background:#3a2a22;border-radius:6px;color:#fa6;font-size:13px}.rename-error.svelte-hoyczz.svelte-hoyczz{color:#ff6b6b;font-size:12px;margin-top:4px}.template-cards.svelte-hoyczz.svelte-hoyczz{display:flex;flex-direction:column;gap:6px;margin-bottom:8px}.template-card.svelte-hoyczz.svelte-hoyczz{display:flex;align-items:center;gap:12px;padding:10px 14px;border:1px solid #2a2a3c;background:#13131f;color:#ccc;border-radius:8px;cursor:pointer;font-size:13px;font-family:inherit;width:100%;text-align:left}.template-card.svelte-hoyczz.svelte-hoyczz:hover{background:#1e1e30;border-color:#3a3a5c}.template-card.selected.svelte-hoyczz.svelte-hoyczz{background:#2a2a50;border-color:#6366f1;color:#e4e4ef}.template-card-text.svelte-hoyczz.svelte-hoyczz{display:flex;flex-direction:column;gap:2px;min-width:0}.template-card-title.svelte-hoyczz.svelte-hoyczz{font-weight:500}.template-card-desc.svelte-hoyczz.svelte-hoyczz{font-size:11px;color:#888}.today-dashboard.svelte-hoyczz.svelte-hoyczz{padding:24px;overflow-y:auto;flex:1}.today-header.svelte-hoyczz.svelte-hoyczz{display:flex;align-items:baseline;gap:12px;margin-bottom:16px}.today-header.svelte-hoyczz h2.svelte-hoyczz{font-size:24px}.today-date.svelte-hoyczz.svelte-hoyczz{font-size:13px;color:#666}.today-summary.svelte-hoyczz.svelte-hoyczz{display:flex;gap:8px;margin-bottom:20px;flex-wrap:wrap}.summary-chip.svelte-hoyczz.svelte-hoyczz{font-size:12px;color:#b0b0c0;background:#1a1a28;border:1px solid #2a2a3c;padding:4px 12px;border-radius:16px}.today-case.svelte-hoyczz.svelte-hoyczz{background:#1a1a28;border:1px solid #2a2a3c;border-radius:8px;margin-bottom:12px;overflow:hidden}.today-case-header.svelte-hoyczz.svelte-hoyczz{padding:12px 16px;display:flex;align-items:center;gap:8px;border-bottom:1px solid #2a2a3c;cursor:pointer}.today-case-header.svelte-hoyczz.svelte-hoyczz:hover{background:#1e1e30}.today-case-title.svelte-hoyczz.svelte-hoyczz{font-weight:500}.today-case-type.svelte-hoyczz.svelte-hoyczz{font-size:11px;color:#888;background:#223;padding:2px 8px;border-radius:10px}.today-case-count.svelte-hoyczz.svelte-hoyczz{font-size:11px;color:#6366f1;margin-left:4px}.today-case-time.svelte-hoyczz.svelte-hoyczz{font-size:11px;color:#555;margin-left:auto}.today-events.svelte-hoyczz.svelte-hoyczz{padding:8px 16px}.today-event.svelte-hoyczz.svelte-hoyczz{display:flex;align-items:center;gap:8px;padding:4px 0;font-size:13px;color:#b0b0c0;cursor:pointer}.today-event.svelte-hoyczz.svelte-hoyczz:hover{color:#e4e4ef}.today-event-icon.svelte-hoyczz.svelte-hoyczz{width:18px;text-align:center;color:#6366f1;font-size:13px}.today-event-title.svelte-hoyczz.svelte-hoyczz{flex:1}.today-event-type.svelte-hoyczz.svelte-hoyczz{font-size:11px;color:#666}.today-event-time.svelte-hoyczz.svelte-hoyczz{font-size:11px;color:#555;margin-left:auto}.today-events-empty.svelte-hoyczz.svelte-hoyczz{padding:8px 16px;font-size:13px;color:#666;font-style:italic}.today-empty.svelte-hoyczz.svelte-hoyczz{padding:48px 24px;text-align:center}.today-empty.svelte-hoyczz p.svelte-hoyczz{color:#666;font-size:14px;margin:0}.today-empty.svelte-hoyczz .hint.svelte-hoyczz{font-size:12px;color:#555;margin-top:8px}.today-timeline.svelte-hoyczz.svelte-hoyczz{margin-top:24px}.today-timeline.svelte-hoyczz h3.svelte-hoyczz{font-size:13px;color:#666;text-transform:uppercase;margin-bottom:12px}.timeline-event.svelte-hoyczz.svelte-hoyczz{display:flex;align-items:center;gap:10px;font-size:13px;color:#b0b0c0;border-left:2px solid #2a2a3c;padding:6px 0 6px 16px;margin-left:4px;cursor:pointer}.timeline-event.svelte-hoyczz.svelte-hoyczz:hover{color:#e4e4ef}.timeline-dot.svelte-hoyczz.svelte-hoyczz{width:6px;height:6px;border-radius:50%;background:#6366f1;margin-left:-19px;flex-shrink:0}.timeline-title.svelte-hoyczz.svelte-hoyczz{flex:1}.timeline-type.svelte-hoyczz.svelte-hoyczz{font-size:11px;color:#666}.timeline-time.svelte-hoyczz.svelte-hoyczz{font-size:11px;color:#555}.activity-tab.svelte-hoyczz.svelte-hoyczz{padding:24px}.activity-events.svelte-hoyczz.svelte-hoyczz{display:flex;flex-direction:column;gap:2px}.activity-event.svelte-hoyczz.svelte-hoyczz{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:6px;font-size:13px;color:#b0b0c0;cursor:pointer}.activity-event.svelte-hoyczz.svelte-hoyczz:hover{background:#1a1a28;color:#e4e4ef}.activity-event-icon.svelte-hoyczz.svelte-hoyczz{width:18px;text-align:center;color:#6366f1;font-size:13px;flex-shrink:0}.activity-event-title.svelte-hoyczz.svelte-hoyczz{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.activity-event-type.svelte-hoyczz.svelte-hoyczz{font-size:11px;color:#666;flex-shrink:0}.activity-event-target.svelte-hoyczz.svelte-hoyczz{font-size:10px;color:#555;background:#1e1e2e;padding:1px 6px;border-radius:8px;flex-shrink:0}.activity-event-time.svelte-hoyczz.svelte-hoyczz{font-size:11px;color:#555;margin-left:8px;flex-shrink:0}.activity-feed.svelte-hoyczz.svelte-hoyczz{padding:24px;overflow-y:auto;flex:1}.activity-feed-header.svelte-hoyczz.svelte-hoyczz{margin-bottom:20px}.activity-feed-header.svelte-hoyczz h2.svelte-hoyczz{font-size:24px}.activity-feed-events.svelte-hoyczz.svelte-hoyczz{display:flex;flex-direction:column;gap:2px}.activity-feed-event.svelte-hoyczz.svelte-hoyczz{display:flex;align-items:flex-start;gap:10px;padding:8px 12px;border-radius:8px;cursor:pointer}.activity-feed-event.svelte-hoyczz.svelte-hoyczz:hover{background:#1a1a28;color:#e4e4ef}.activity-feed-icon.svelte-hoyczz.svelte-hoyczz{width:20px;text-align:center;color:#6366f1;font-size:14px;flex-shrink:0;margin-top:1px}.activity-feed-body.svelte-hoyczz.svelte-hoyczz{flex:1;min-width:0}.activity-feed-title.svelte-hoyczz.svelte-hoyczz{font-size:14px;color:#e4e4ef}.activity-feed-meta.svelte-hoyczz.svelte-hoyczz{display:flex;align-items:center;gap:8px;margin-top:2px}.activity-feed-type.svelte-hoyczz.svelte-hoyczz{font-size:11px;color:#666}.activity-feed-target.svelte-hoyczz.svelte-hoyczz{font-size:10px;color:#555;background:#1e1e2e;padding:1px 6px;border-radius:8px}.activity-feed-time.svelte-hoyczz.svelte-hoyczz{font-size:11px;color:#555}.journal-filter-section.svelte-hoyczz.svelte-hoyczz{margin-bottom:12px;padding:12px 16px;background:#1a1a2e;border:1px solid #2a2a3c;border-radius:8px}.journal-filter-heading.svelte-hoyczz.svelte-hoyczz{font-size:11px;font-weight:600;color:#a5b4fc;text-transform:uppercase;letter-spacing:.3px;margin-bottom:8px}.journal-filters-row.svelte-hoyczz.svelte-hoyczz{display:flex;flex-wrap:wrap;gap:8px 16px;align-items:flex-end}.journal-filters-row.svelte-hoyczz label.svelte-hoyczz{display:flex;flex-direction:column;gap:3px;font-size:12px;color:#8888a0}.journal-filters-row.svelte-hoyczz input[type=date].svelte-hoyczz{padding:5px 8px;border:1px solid #2a2a3c;background:#13131f;color:#e4e4ef;border-radius:4px;font-size:12px;font-family:inherit}.journal-filters-row.svelte-hoyczz .checkbox-label.svelte-hoyczz{flex-direction:row;align-items:center;gap:6px;cursor:pointer}.journal-filters-row.svelte-hoyczz .checkbox-label input.svelte-hoyczz{width:auto}.journal-export-section.svelte-hoyczz.svelte-hoyczz{padding:8px 16px;background:#1a1a2e;border:1px solid #2a2a3c;border-radius:8px}.journal-export-heading.svelte-hoyczz.svelte-hoyczz{font-size:11px;font-weight:600;color:#a5b4fc;text-transform:uppercase;letter-spacing:.3px;margin-bottom:6px}.journal-export-row.svelte-hoyczz.svelte-hoyczz{display:flex;gap:8px;align-items:center}.journal-toggle-col.svelte-hoyczz.svelte-hoyczz{width:32px;min-width:32px;text-align:center;padding:8px 4px!important}.journal-toggle-icon.svelte-hoyczz.svelte-hoyczz{color:#6366f1;font-size:12px}.worklog-entry.svelte-hoyczz.svelte-hoyczz{padding:8px 12px;background:#1a1a28;border:1px solid #2a2a3c;border-radius:8px;margin-bottom:6px;cursor:pointer}.worklog-entry.svelte-hoyczz.svelte-hoyczz:hover{border-color:#3a3a5c}.worklog-entry.expanded.svelte-hoyczz.svelte-hoyczz{border-color:#6366f1}.worklog-entry-head.svelte-hoyczz.svelte-hoyczz{display:flex;align-items:center;gap:8px;font-size:13px;color:#e4e4ef}.worklog-toggle.svelte-hoyczz.svelte-hoyczz{color:#6366f1;font-size:12px;width:16px;text-align:center;flex-shrink:0}.worklog-entry-summary.svelte-hoyczz.svelte-hoyczz{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.worklog-entry-mins.svelte-hoyczz.svelte-hoyczz{color:#b0b0c8;font-variant-numeric:tabular-nums;white-space:nowrap}.worklog-entry-date.svelte-hoyczz.svelte-hoyczz{color:#b0b0c0;font-size:12px;white-space:nowrap}.worklog-entry-detail.svelte-hoyczz.svelte-hoyczz{margin-top:8px;padding-top:8px;border-top:1px solid #2a2a3c;display:flex;flex-direction:column;gap:8px}.worklog-entry-actions.svelte-hoyczz.svelte-hoyczz{display:flex;gap:8px;justify-content:flex-end}.wl-detail-section.svelte-hoyczz.svelte-hoyczz{font-size:13px}.wl-detail-label.svelte-hoyczz.svelte-hoyczz{font-size:11px;font-weight:600;color:#a5b4fc;text-transform:uppercase;letter-spacing:.3px;display:block;margin-bottom:2px}.wl-detail-section.svelte-hoyczz p.svelte-hoyczz{margin:0;color:#c0c0d0}.wl-tag-billable.svelte-hoyczz.svelte-hoyczz{font-size:10px;color:#34d399;background:#1a2a1e;padding:1px 6px;border-radius:8px;white-space:nowrap}.wl-tag-approx.svelte-hoyczz.svelte-hoyczz{font-size:10px;color:#fbbf24;background:#2a2a1a;padding:1px 6px;border-radius:8px;white-space:nowrap}.checkbox-label-inline.svelte-hoyczz.svelte-hoyczz{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:#e4e4ef;cursor:pointer}.checkbox-label-inline.svelte-hoyczz input.svelte-hoyczz{width:auto} diff --git a/cmd/verstak-gui/frontend-dist/index.html b/cmd/verstak-gui/frontend-dist/index.html index a782a16..c17c738 100644 --- a/cmd/verstak-gui/frontend-dist/index.html +++ b/cmd/verstak-gui/frontend-dist/index.html @@ -16,8 +16,8 @@ background: #13131f; } - - + +
diff --git a/cmd/verstak-gui/trash_test.go b/cmd/verstak-gui/trash_test.go new file mode 100644 index 0000000..9cdc646 --- /dev/null +++ b/cmd/verstak-gui/trash_test.go @@ -0,0 +1,45 @@ +package main + +import ( + "strings" + "testing" +) + +func TestListTrashShowsDeletedNodesAndPhysicalEntries(t *testing.T) { + app, _ := setupTestApp(t) + + n, err := app.CreateNodeFromTemplate("", "Trash Me", "folder.default") + if err != nil { + t.Fatalf("create node: %v", err) + } + if err := app.DeleteNode(n.ID); err != nil { + t.Fatalf("DeleteNode: %v", err) + } + + trash, err := app.ListTrash() + if err != nil { + t.Fatalf("ListTrash: %v", err) + } + + var foundNode bool + for _, node := range trash.Nodes { + if node.ID == n.ID && node.Title == "Trash Me" && node.DeletedAt != "" { + foundNode = true + break + } + } + if !foundNode { + t.Fatalf("deleted node %s missing from trash nodes: %#v", n.ID, trash.Nodes) + } + + var foundPhysical bool + for _, entry := range trash.Entries { + if strings.Contains(entry.Name, n.ID) && entry.IsDir { + foundPhysical = true + break + } + } + if !foundPhysical { + t.Fatalf("physical trash entry for %s missing: %#v", n.ID, trash.Entries) + } +} diff --git a/frontend/src/App.svelte b/frontend/src/App.svelte index f2fc966..2461e6a 100644 --- a/frontend/src/App.svelte +++ b/frontend/src/App.svelte @@ -92,6 +92,7 @@ let suggestions = [] let suggestionCount = 0 let inboxNodes = [] + let trashInfo = null let showCreateNode = false let newNodeTitle = '' let createInNode = null @@ -230,6 +231,7 @@ worklog = [] suggestions = [] inboxNodes = [] + trashInfo = null showCreateNode = false error = '' todayDashboard = null @@ -245,6 +247,8 @@ suggestionCount = suggestions.length } else if (id === 'inbox') { inboxNodes = await wailsCall('ListInboxNodes') || [] + } else if (id === 'trash') { + trashInfo = await wailsCall('ListTrash') || { nodes: [], entries: [], trashPath: '' } } else if (id === 'journal') { await loadJournal() } else if (id === 'activity') { @@ -256,6 +260,7 @@ error = String(e) todayDashboard = { cases: [] } inboxNodes = [] + trashInfo = null activityFeed = [] } } @@ -2023,6 +2028,57 @@ {/if} + {:else if selectedSection === 'trash'} +
+
+
+

{t('nav.trash')}

+

{trashInfo?.trashPath || ''}

+
+ +
+ {#if !trashInfo || ((trashInfo.nodes || []).length === 0 && (trashInfo.entries || []).length === 0)} +
+

{t('trash.empty')}

+
+ {:else} +
+
+

{t('trash.deletedNodes')}

+ {#if (trashInfo.nodes || []).length === 0} +

{t('common.empty')}

+ {:else} + {#each trashInfo.nodes as node} +
+
+ {node.title} + {nodeKindLabel(node.type)} · {formatDate(node.deletedAt)} +
+ {#if node.fsPath}{node.fsPath}{/if} +
+ {/each} + {/if} +
+
+

{t('trash.physicalEntries')}

+ {#if (trashInfo.entries || []).length === 0} +

{t('common.empty')}

+ {:else} + {#each trashInfo.entries as entry} +
+
+ {entry.name} + {entry.isDir ? t('mime.folder') : t('mime.file')} · {formatDate(entry.modifiedAt)} +
+ {entry.path} +
+ {/each} + {/if} +
+
+ {/if} +
+ {:else if selectedSection === 'journal'}
@@ -2742,6 +2798,21 @@ .inbox-item-meta { color: #8888a0; font-size: 12px; } .inbox-item-actions { display: flex; gap: 8px; flex-shrink: 0; } +/* Trash screen */ +.trash-screen { padding: 24px; overflow-y: auto; flex: 1; } +.trash-header { display: flex; justify-content: space-between; align-items: flex-start; gap: 16px; margin-bottom: 20px; } +.trash-header h2 { margin: 0 0 6px; } +.trash-header p { margin: 0; color: #8888a0; font-size: 12px; } +.trash-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(320px, 1fr)); gap: 16px; } +.trash-section { min-width: 0; } +.trash-section h3 { margin: 0 0 10px; font-size: 13px; color: #a5b4fc; text-transform: uppercase; letter-spacing: 0.3px; } +.trash-row { padding: 10px 12px; border: 1px solid #2a2a3c; border-radius: 8px; background: #1a1a28; margin-bottom: 8px; } +.trash-row-main { display: flex; justify-content: space-between; gap: 12px; align-items: baseline; } +.trash-row-title { min-width: 0; color: #e4e4ef; font-weight: 600; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } +.trash-row-meta { flex-shrink: 0; color: #8888a0; font-size: 12px; } +.trash-row-path { display: block; margin-top: 4px; color: #707088; font-size: 12px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } +.trash-empty-line { color: #8888a0; font-size: 13px; margin: 0; } + /* Journal screen */ .journal-screen { padding: 24px; overflow-y: auto; flex: 1; } .journal-header { margin-bottom: 24px; } diff --git a/frontend/src/lib/i18n/locales/en.js b/frontend/src/lib/i18n/locales/en.js index d4273ad..17c4248 100644 --- a/frontend/src/lib/i18n/locales/en.js +++ b/frontend/src/lib/i18n/locales/en.js @@ -1,6 +1,7 @@ export default { 'nav.today': 'Today', 'nav.inbox': 'Inbox', + 'nav.trash': 'Trash', 'nav.activity': 'Activity', 'nav.journal': 'Journal', 'nav.clients': 'Clients', @@ -25,6 +26,10 @@ export default { 'nav.moveToRoot': 'Move to root', 'inbox.subtitle': 'Root items without an assigned section', 'inbox.empty': 'No unprocessed items', + 'trash.openFolder': 'Open trash folder', + 'trash.empty': 'Trash is empty', + 'trash.deletedNodes': 'Deleted items', + 'trash.physicalEntries': 'Files in .verstak/trash', 'tab.overview': 'Overview', 'tab.notes': 'Notes', 'tab.files': 'Files', diff --git a/frontend/src/lib/i18n/locales/ru.js b/frontend/src/lib/i18n/locales/ru.js index 653fd6c..6133aca 100644 --- a/frontend/src/lib/i18n/locales/ru.js +++ b/frontend/src/lib/i18n/locales/ru.js @@ -1,6 +1,7 @@ export default { 'nav.today': 'Сегодня', 'nav.inbox': 'Неразобранное', + 'nav.trash': 'Корзина', 'nav.activity': 'Активность', 'nav.journal': 'Журнал', 'nav.clients': 'Клиенты', @@ -27,6 +28,11 @@ export default { 'inbox.subtitle': 'Корневые элементы без назначенного раздела', 'inbox.empty': 'Неразобранных элементов нет', + 'trash.openFolder': 'Открыть папку корзины', + 'trash.empty': 'Корзина пуста', + 'trash.deletedNodes': 'Удаленные элементы', + 'trash.physicalEntries': 'Файлы в .verstak/trash', + 'tab.overview': 'Обзор', 'tab.notes': 'Заметки', 'tab.files': 'Файлы', diff --git a/frontend/src/wailsjs/go/main/App.js b/frontend/src/wailsjs/go/main/App.js index bfe47b1..5ec41f0 100644 --- a/frontend/src/wailsjs/go/main/App.js +++ b/frontend/src/wailsjs/go/main/App.js @@ -82,6 +82,14 @@ export function ListInboxNodes() { return window['go']['main']['App']['ListInboxNodes'](); } +export function ListTrash() { + return window['go']['main']['App']['ListTrash'](); +} + +export function OpenTrashFolder() { + return window['go']['main']['App']['OpenTrashFolder'](); +} + export function CreateWorklog(arg1, arg2, arg3) { return window['go']['main']['App']['CreateWorklog'](arg1, arg2, arg3); } diff --git a/internal/core/nodes/repository.go b/internal/core/nodes/repository.go index e22753f..987a748 100644 --- a/internal/core/nodes/repository.go +++ b/internal/core/nodes/repository.go @@ -186,6 +186,19 @@ func (r *Repository) ListInboxRoots(includeDeleted bool) ([]Node, error) { return scanNodes(rows) } +// ListDeleted returns soft-deleted nodes, newest deleted first. +func (r *Repository) ListDeleted() ([]Node, error) { + rows, err := r.db.Query( + `SELECT ` + nodeColumns + ` FROM nodes + WHERE deleted_at IS NOT NULL + ORDER BY deleted_at DESC, updated_at DESC, title`) + if err != nil { + return nil, err + } + defer rows.Close() + return scanNodes(rows) +} + // CountChildren returns the number of non-deleted children for a parent, // optionally filtered by one or more types. func (r *Repository) CountChildren(parentID string, types ...string) (int, error) { diff --git a/internal/i18n/locales/en.json b/internal/i18n/locales/en.json index 140dc43..56ce4a5 100644 --- a/internal/i18n/locales/en.json +++ b/internal/i18n/locales/en.json @@ -1,6 +1,7 @@ { "nav.today": "Today", "nav.inbox": "Inbox", + "nav.trash": "Trash", "nav.activity": "Activity", "nav.clients": "Clients", "nav.projects": "Projects", diff --git a/internal/i18n/locales/ru.json b/internal/i18n/locales/ru.json index 19f945a..2e13110 100644 --- a/internal/i18n/locales/ru.json +++ b/internal/i18n/locales/ru.json @@ -1,6 +1,7 @@ { "nav.today": "Сегодня", "nav.inbox": "Неразобранное", + "nav.trash": "Корзина", "nav.activity": "Активность", "nav.clients": "Клиенты", "nav.projects": "Проекты", diff --git a/scripts/check-gui-render.mjs b/scripts/check-gui-render.mjs index 7a3ad15..421468b 100755 --- a/scripts/check-gui-render.mjs +++ b/scripts/check-gui-render.mjs @@ -139,6 +139,10 @@ async function runReadyScenario(cdp, url) { await clickText(cdp, '.inbox-item-actions .btn', 'Открыть') await assertText(cdp, 'Inbox Smoke Item', 'inbox: item opens from list') + await clickText(cdp, '.nav-item', 'Корзина') + await assertText(cdp, 'Trash Smoke Folder', 'trash: deleted node visible') + await assertText(cdp, 'node-trash_Trash-Smoke-Folder', 'trash: physical entry visible') + await clickText(cdp, '.tree-label', 'Smoke Project') await waitForSelector(cdp, '.tabs') await assertText(cdp, 'Smoke Project', 'node: selected project visible') @@ -673,12 +677,19 @@ function wailsMockSource() { ListSystemViews: async () => [ { id: 'today', label: 'Сегодня' }, { id: 'inbox', label: 'Неразобранное' }, + { id: 'trash', label: 'Корзина' }, { id: 'activity', label: 'Активность' }, { id: 'journal', label: 'Журнал' }, ], ListWorkspaceTree: async () => clone(state.nodes), ListWorkspaceChildren: async (id) => clone(childrenOf(id)), ListInboxNodes: async () => clone(state.nodes.filter((node) => !node.parent_id && (!node.section || node.section === 'inbox'))), + ListTrash: async () => clone({ + trashPath: '/tmp/verstak-smoke-vault/.verstak/trash', + nodes: [{ id: 'node-trash', title: 'Trash Smoke Folder', type: 'folder', fsPath: 'Trash Smoke Folder', deletedAt: now }], + entries: [{ name: 'node-trash_Trash-Smoke-Folder', path: '/tmp/verstak-smoke-vault/.verstak/trash/node-trash_Trash-Smoke-Folder', isDir: true, size: 0, modifiedAt: now }], + }), + OpenTrashFolder: async () => true, ListEnabledTemplates: async () => clone(templates), AllTemplates: async () => clone(templates), SetTemplateEnabled: async () => true,