diff --git a/cmd/verstak-gui/bindings_inbox.go b/cmd/verstak-gui/bindings_inbox.go new file mode 100644 index 0000000..b43b570 --- /dev/null +++ b/cmd/verstak-gui/bindings_inbox.go @@ -0,0 +1,20 @@ +package main + +func (a *App) ListInboxNodes() ([]NodeDTO, error) { + if err := a.requireVault(); err != nil { + return nil, err + } + list, err := a.nodes.ListInboxRoots(false) + if err != nil { + return nil, err + } + dtos := toNodeDTOs(list) + for i := range dtos { + n, err := a.nodes.CountChildren(dtos[i].ID, "case", "client", "project", "folder", "document", "recipe") + if err != nil { + return nil, err + } + dtos[i].HasChildren = n > 0 + } + return dtos, nil +} diff --git a/cmd/verstak-gui/frontend-dist/assets/main-Cyhj7TEH.js b/cmd/verstak-gui/frontend-dist/assets/main-Cyhj7TEH.js deleted file mode 100644 index c325ab0..0000000 --- a/cmd/verstak-gui/frontend-dist/assets/main-Cyhj7TEH.js +++ /dev/null @@ -1,3 +0,0 @@ -var Ha=Object.defineProperty;var Ua=(l,e,t)=>e in l?Ha(l,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):l[e]=t;var Il=(l,e,t)=>Ua(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 te(){}function Co(l){return l()}function Tn(){return Object.create(null)}function ve(l){l.forEach(Co)}function mt(l){return typeof l=="function"}function Qe(l,e){return l!=l?e==e:l!==e||l&&typeof l=="object"||typeof l=="function"}let $t;function sl(l,e){return l===e?!0:($t||($t=document.createElement("a")),$t.href=e,l===$t.href)}function Ka(l){return Object.keys(l).length===0}function Nn(l){return l??""}const Ol=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 Wl(l){return function(e){return e.preventDefault(),l.call(this,e)}}function Be(l){return function(e){return e.stopPropagation(),l.call(this,e)}}function ft(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 ol(l){return l===""?null:+l}function Ga(l){return Array.from(l.childNodes)}function U(l,e){e=""+e,l.data!==e&&(l.data=e)}function be(l,e){l.value=e??""}function rt(l,e,t,n){t==null?l.style.removeProperty(e):l.style.setProperty(e,t,"")}function pt(l,e,t){for(let n=0;n{const s=l.$$.callbacks[e];if(s){const o=Ja(e,t,{cancelable:n});return s.slice().forEach(r=>{r.call(l,o)}),!o.defaultPrevented}return!0}}function jo(l,e){const t=l.$$.callbacks[e.type];t&&t.slice().forEach(n=>n.call(this,e))}const Pt=[],Dn=[];let Lt=[];const Mn=[],qa=Promise.resolve();let Rl=!1;function Ya(){Rl||(Rl=!0,qa.then(Eo))}function jt(l){Lt.push(l)}const Al=new Set;let At=0;function Eo(){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 nl=new Set;let St;function nt(){St={r:0,c:[],p:St}}function st(){St.r||ve(St.c),St=St.p}function re(l,e){l&&l.i&&(nl.delete(l),l.i(e))}function de(l,e,t,n){if(l&&l.o){if(nl.has(l))return;nl.add(l),St.c.push(()=>{nl.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 To(l,e){de(l,1,1,()=>{e.delete(l.key)})}function No(l,e,t,n,s,o,r,u,a,d,_,v){let g=l.length,b=o.length,k=g;const y={};for(;k--;)y[l[k].key]=k;const S=[],j=new Map,E=new Map,D=[];for(k=b;k--;){const M=v(s,o,k),z=t(M);let O=r.get(z);O?D.push(()=>O.p(M,e)):(O=d(z,M),O.c()),j.set(z,S[k]=O),z in y&&E.set(z,Math.abs(k-y[z]))}const N=new Set,T=new Set;function I(M){re(M,1),M.m(u,_),r.set(M.key,M),_=M.first,b--}for(;g&&b;){const M=S[b-1],z=l[g-1],O=M.key,W=z.key;M===z?(_=M.first,g--,b--):j.has(W)?!r.has(O)||N.has(O)?I(M):T.has(W)?g--:E.get(O)>E.get(W)?(T.add(O),I(M)):(N.add(W),g--):(a(z,r),g--)}for(;g--;){const M=l[g];j.has(M.key)||a(M,r)}for(;b;)I(S[b-1]);return ve(D),S}function Je(l){l&&l.c()}function He(l,e,t){const{fragment:n,after_update:s}=l.$$;n&&n.m(e,t),jt(()=>{const o=l.$$.on_mount.map(Co).filter(mt);l.$$.on_destroy?l.$$.on_destroy.push(...o):ve(o),l.$$.on_mount=[]}),s.forEach(jt)}function Ue(l,e){const t=l.$$;t.fragment!==null&&(Xa(t.after_update),ve(t.on_destroy),t.fragment&&t.fragment.d(e),t.on_destroy=t.fragment=null,t.ctx=[])}function Za(l,e){l.$$.dirty[0]===-1&&(Pt.push(l),Ya(),l.$$.dirty.fill(0)),l.$$.dirty[e/31|0]|=1<{const k=b.length?b[0]:g;return d.ctx&&s(d.ctx[v],d.ctx[v]=k)&&(!d.skip_bound&&d.bound[v]&&d.bound[v](k),_&&Za(l,v)),g}):[],d.update(),_=!0,ve(d.before_update),d.fragment=n?n(d.ctx):!1,e.target){if(e.hydrate){const v=Ga(e.target);d.fragment&&d.fragment.l(v),v.forEach(w)}else d.fragment&&d.fragment.c();e.intro&&re(l.$$.fragment),He(l,e.target,e.anchor),Eo()}Ht(a)}class Ze{constructor(){Il(this,"$$");Il(this,"$$set")}$destroy(){Ue(this,1),this.$destroy=te}$on(e,t){if(!mt(t))return te;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&&!Ka(e)&&(this.$$.skip_bound=!0,this.$$set(e),this.$$.skip_bound=!1)}}const xa="4";typeof window<"u"&&(window.__svelte||(window.__svelte={v:new Set})).v.add(xa);function $a(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){C(n,e,s),C(n,t,s)},d(n){n&&(w(e),w(t))}}}function eu(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,u){C(r,e,u),C(r,t,u),C(r,n,u),C(r,s,u),C(r,o,u)},d(r){r&&(w(e),w(t),w(n),w(s),w(o))}}}function tu(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){C(n,e,s),C(n,t,s)},d(n){n&&(w(e),w(t))}}}function lu(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){C(o,e,r),C(o,t,r),C(o,n,r),C(o,s,r)},d(o){o&&(w(e),w(t),w(n),w(s))}}}function nu(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,u){C(r,e,u),C(r,t,u),C(r,n,u),C(r,s,u),C(r,o,u)},d(r){r&&(w(e),w(t),w(n),w(s),w(o))}}}function su(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(u,a){C(u,e,a),C(u,t,a),C(u,n,a),C(u,s,a),C(u,o,a),C(u,r,a)},d(u){u&&(w(e),w(t),w(n),w(s),w(o),w(r))}}}function iu(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){C(o,e,r),C(o,t,r),C(o,n,r),C(o,s,r)},d(o){o&&(w(e),w(t),w(n),w(s))}}}function ou(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,u){C(r,e,u),C(r,t,u),C(r,n,u),C(r,s,u),C(r,o,u)},d(r){r&&(w(e),w(t),w(n),w(s),w(o))}}}function cu(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){C(s,e,o),C(s,t,o),C(s,n,o)},d(s){s&&(w(e),w(t),w(n))}}}function ru(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){C(n,e,s),C(n,t,s)},d(n){n&&(w(e),w(t))}}}function au(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){C(s,e,o),C(s,t,o),C(s,n,o)},d(s){s&&(w(e),w(t),w(n))}}}function uu(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){C(t,e,n)},d(t){t&&w(e)}}}function fu(l){let e;function t(o,r){return o[0]==="folder"?uu:o[0]==="image"?au:o[0]==="video"?ru:o[0]==="audio"?cu:o[0]==="pdf"?ou:o[0]==="document"?iu:o[0]==="spreadsheet"?su:o[0]==="presentation"?nu:o[0]==="archive"?lu:o[0]==="code"?tu:o[0]==="text"?eu:$a}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){C(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:te,o:te,d(o){o&&w(e),s.d()}}}function du(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 Do extends Ze{constructor(e){super(),Xe(this,e,du,fu,Qe,{kind:0,size:1})}}const pu={"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":"Переместить в корень","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":"Срок действия токена истёк"},mu={"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","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:pu,en:mu};let An="ru";function m(l,e){var s;const t=In[An];let n=t==null?void 0:t[l];if(n==null&&An!=="ru"&&(n=(s=In.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 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 zl={"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?zl[l]||l:m("mime.unknown")}function _u(l){if(l.type==="folder")return m("mime.folder");const e=(l.mime||"").toLowerCase();if(zl[e])return zl[e];const n=(l.name||"").toLowerCase().split(".").pop();return n?n.toUpperCase():m("mime.file")}function Mo(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 Io=["image/jpeg","image/png","image/gif","image/webp","image/bmp","image/tiff","image/avif","image/svg+xml"],Ao=["text/plain","text/html","text/css","text/javascript","application/json","application/xml","application/x-yaml","text/x-shellscript"],Fo=["txt","log","conf","ini","yaml","yml","json","xml","csv","sh","py","js","ts","css","html","md","markdown","cfg"],Po=["jpg","jpeg","png","gif","webp","bmp","tiff","tif","avif","svg"];function vu(l){if(l.type==="folder")return!1;const e=(l.mime||"").toLowerCase(),n=(l.name||"").toLowerCase().split(".").pop();return!!(Io.includes(e)||Po.includes(n)||e.includes("pdf")||Ao.includes(e)||Fo.includes(n))}function Lo(l){const e=(l.mime||"").toLowerCase(),n=(l.name||"").toLowerCase().split(".").pop();return Io.includes(e)||Po.includes(n)}function Ro(l){const e=(l.mime||"").toLowerCase(),n=(l.name||"").toLowerCase().split(".").pop();return Ao.includes(e)||Fo.includes(n)&&n!=="md"&&n!=="markdown"}function zo(l){return(l.mime||"").toLowerCase().includes("pdf")}function Vo(l){const e=(l.name||"").toLowerCase();return e.endsWith(".md")||e.endsWith(".markdown")}function gu(l){return Lo(l)||zo(l)}function hu(l){return Ro(l)||Vo(l)}const{window:bu}=Ol;function ku(l){let e,t,n,s=il(l[0].size)+"",o;return{c(){e=f("span"),e.textContent="·",t=h(),n=f("span"),o=F(s),i(e,"class","meta-sep svelte-1skuef2")},m(r,u){C(r,e,u),C(r,t,u),C(r,n,u),c(n,o)},p(r,u){u[0]&1&&s!==(s=il(r[0].size)+"")&&U(o,s)},d(r){r&&(w(e),w(t),w(n))}}}function yu(l){let e,t,n,s,o;return{c(){e=f("button"),e.innerHTML='',t=h(),n=f("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,u){C(r,e,u),C(r,t,u),C(r,n,u),s||(o=[A(e,"click",Be(l[30])),A(n,"click",Be(l[11]))],s=!0)},p:te,d(r){r&&(w(e),w(t),w(n)),s=!1,ve(o)}}}function wu(l){let e,t,n,s,o,r,u;return{c(){e=f("button"),e.innerHTML='',t=h(),n=f("button"),n.innerHTML='',s=h(),o=f("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(a,d){C(a,e,d),C(a,t,d),C(a,n,d),C(a,s,d),C(a,o,d),r||(u=[A(e,"click",Be(l[29])),A(n,"click",Be(l[10])),A(o,"click",Be(l[11]))],r=!0)},p:te,d(a){a&&(w(e),w(t),w(n),w(s),w(o)),r=!1,ve(u)}}}function Pn(l){let e,t,n,s,o,r,u,a,d=m("common.open")+"",_,v,g,b,k,y,S,j,E=m("file.openExternal")+"",D,N,T,I,M,z,O=m("file.showInExplorer")+"",W,J,q,Y,H,B,G,R,K,L=m("common.rename")+"",V,$,ce,ee,ne,le,oe,ae=m("common.duplicate")+"",we,ze,Ie,X,Z,ue,Se,me,ke,qe=m("common.cut")+"",We,xe,Ke,De,Le,ye,Ve,Ne=m("common.copy")+"",Oe,je,Te,Me,Ee,Ae,Ge,Ce,_e,x=m("common.delete")+"",ge,Fe,ot;return{c(){e=f("div"),t=h(),n=f("div"),s=f("button"),o=Q("svg"),r=Q("path"),u=Q("circle"),a=h(),_=F(d),v=h(),g=f("button"),b=Q("svg"),k=Q("path"),y=Q("polyline"),S=Q("line"),j=h(),D=F(E),N=h(),T=f("button"),I=Q("svg"),M=Q("path"),z=h(),W=F(O),J=h(),q=f("div"),Y=h(),H=f("button"),B=Q("svg"),G=Q("path"),R=Q("path"),K=h(),V=F(L),$=h(),ce=f("button"),ee=Q("svg"),ne=Q("rect"),le=Q("path"),oe=h(),we=F(ae),ze=h(),Ie=f("button"),X=Q("svg"),Z=Q("circle"),ue=Q("circle"),Se=Q("line"),me=Q("line"),ke=h(),We=F(qe),xe=h(),Ke=f("button"),De=Q("svg"),Le=Q("rect"),ye=Q("path"),Ve=h(),Oe=F(Ne),je=h(),Te=f("div"),Me=h(),Ee=f("button"),Ae=Q("svg"),Ge=Q("polyline"),Ce=Q("path"),_e=h(),ge=F(x),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(u,"cx","12"),i(u,"cy","12"),i(u,"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(k,"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(S,"x1","10"),i(S,"y1","14"),i(S,"x2","21"),i(S,"y2","3"),i(b,"width","14"),i(b,"height","14"),i(b,"viewBox","0 0 24 24"),i(b,"fill","none"),i(b,"stroke","currentColor"),i(b,"stroke-width","2"),i(b,"stroke-linecap","round"),i(b,"stroke-linejoin","round"),i(g,"class","menu-item svelte-1skuef2"),i(g,"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(I,"width","14"),i(I,"height","14"),i(I,"viewBox","0 0 24 24"),i(I,"fill","none"),i(I,"stroke","currentColor"),i(I,"stroke-width","2"),i(I,"stroke-linecap","round"),i(I,"stroke-linejoin","round"),i(T,"class","menu-item svelte-1skuef2"),i(T,"role","menuitem"),i(q,"class","menu-sep svelte-1skuef2"),i(G,"d","M12 20h9"),i(R,"d","M16.5 3.5a2.121 2.121 0 0 1 3 3L7 19l-4 1 1-4L16.5 3.5z"),i(B,"width","14"),i(B,"height","14"),i(B,"viewBox","0 0 24 24"),i(B,"fill","none"),i(B,"stroke","currentColor"),i(B,"stroke-width","2"),i(B,"stroke-linecap","round"),i(B,"stroke-linejoin","round"),i(H,"class","menu-item svelte-1skuef2"),i(H,"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(ee,"width","14"),i(ee,"height","14"),i(ee,"viewBox","0 0 24 24"),i(ee,"fill","none"),i(ee,"stroke","currentColor"),i(ee,"stroke-width","2"),i(ee,"stroke-linecap","round"),i(ee,"stroke-linejoin","round"),i(ce,"class","menu-item svelte-1skuef2"),i(ce,"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(Se,"x1","20"),i(Se,"y1","4"),i(Se,"x2","8.12"),i(Se,"y2","15.88"),i(me,"x1","8.12"),i(me,"y1","8.12"),i(me,"x2","20"),i(me,"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(Ie,"class","menu-item svelte-1skuef2"),i(Ie,"role","menuitem"),i(Le,"x","9"),i(Le,"y","9"),i(Le,"width","13"),i(Le,"height","13"),i(Le,"rx","2"),i(Le,"ry","2"),i(ye,"d","M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1"),i(De,"width","14"),i(De,"height","14"),i(De,"viewBox","0 0 24 24"),i(De,"fill","none"),i(De,"stroke","currentColor"),i(De,"stroke-width","2"),i(De,"stroke-linecap","round"),i(De,"stroke-linejoin","round"),i(Ke,"class","menu-item svelte-1skuef2"),i(Ke,"role","menuitem"),i(Te,"class","menu-sep svelte-1skuef2"),i(Ge,"points","3 6 5 6 21 6"),i(Ce,"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(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(Ee,"class","menu-item menu-item-danger svelte-1skuef2"),i(Ee,"role","menuitem"),i(n,"class","menu svelte-1skuef2"),rt(n,"left",l[3]+"px"),rt(n,"top",l[4]+"px"),rt(n,"position","fixed"),i(n,"role","menu"),i(n,"tabindex","-1")},m(tt,Ye){C(tt,e,Ye),C(tt,t,Ye),C(tt,n,Ye),c(n,s),c(s,o),c(o,r),c(o,u),c(s,a),c(s,_),c(n,v),c(n,g),c(g,b),c(b,k),c(b,y),c(b,S),c(g,j),c(g,D),c(n,N),c(n,T),c(T,I),c(I,M),c(T,z),c(T,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,$),c(n,ce),c(ce,ee),c(ee,ne),c(ee,le),c(ce,oe),c(ce,we),c(n,ze),c(n,Ie),c(Ie,X),c(X,Z),c(X,ue),c(X,Se),c(X,me),c(Ie,ke),c(Ie,We),c(n,xe),c(n,Ke),c(Ke,De),c(De,Le),c(De,ye),c(Ke,Ve),c(Ke,Oe),c(n,je),c(n,Te),c(n,Me),c(n,Ee),c(Ee,Ae),c(Ae,Ge),c(Ae,Ce),c(Ee,_e),c(Ee,ge),Fe||(ot=[A(e,"click",Be(l[19])),A(s,"click",l[17]),A(g,"click",l[10]),A(T,"click",l[11]),A(H,"click",l[13]),A(ce,"click",l[14]),A(Ie,"click",l[15]),A(Ke,"click",l[16]),A(Ee,"click",l[12]),A(n,"click",Be(l[28])),A(n,"keydown",l[31])],Fe=!0)},p(tt,Ye){Ye[0]&8&&rt(n,"left",tt[3]+"px"),Ye[0]&16&&rt(n,"top",tt[4]+"px")},d(tt){tt&&(w(e),w(t),w(n)),Fe=!1,ve(ot)}}}function Cu(l){let e,t,n,s,o,r,u=l[0].name+"",a,d,_,v,g,b,k,y,S,j,E,D,N,T,I,M,z,O,W,J,q,Y;n=new Do({props:{kind:l[6],size:22}});let H=!l[7]&&ku(l);function B(L,V){return L[7]?yu:wu}let R=B(l)(l),K=l[2]&&Pn(l);return{c(){e=f("div"),t=f("div"),Je(n.$$.fragment),s=h(),o=f("div"),r=f("div"),a=F(u),_=h(),v=f("div"),g=f("span"),g.textContent=`${l[8]}`,b=h(),H&&H.c(),k=h(),y=f("div"),R.c(),S=h(),j=f("button"),E=Q("svg"),D=Q("circle"),N=Q("circle"),T=Q("circle"),I=h(),M=f("button"),M.innerHTML='',O=h(),K&&K.c(),W=it(),i(t,"class","file-row-icon svelte-1skuef2"),i(r,"class","file-row-name svelte-1skuef2"),i(r,"title",d=l[0].name),i(v,"class","file-row-meta svelte-1skuef2"),i(o,"class","file-row-body svelte-1skuef2"),i(D,"cx","12"),i(D,"cy","5"),i(D,"r","2"),i(N,"cx","12"),i(N,"cy","12"),i(N,"r","2"),i(T,"cx","12"),i(T,"cy","19"),i(T,"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",z=l[7]?m("file.ariaFolder")+" "+l[0].name:m("file.ariaFile")+" "+l[0].name),he(e,"file-row--selected",l[1])},m(L,V){C(L,e,V),c(e,t),He(n,t,null),c(e,s),c(e,o),c(o,r),c(r,a),c(o,_),c(o,v),c(v,g),c(v,b),H&&H.m(v,null),c(e,k),c(e,y),R.m(y,null),c(y,S),c(y,j),c(j,E),c(E,D),c(E,N),c(E,T),c(y,I),c(y,M),C(L,O,V),K&&K.m(L,V),C(L,W,V),J=!0,q||(Y=[A(bu,"click",l[19]),A(j,"click",Be(l[18])),A(M,"click",Be(l[12])),A(e,"click",l[9]),A(e,"keydown",l[24]),A(e,"contextmenu",l[23]),A(e,"dragstart",l[20]),A(e,"dragover",l[21]),A(e,"drop",l[22])],q=!0)},p(L,V){(!J||V[0]&1)&&u!==(u=L[0].name+"")&&U(a,u),(!J||V[0]&1&&d!==(d=L[0].name))&&i(r,"title",d),L[7]||H.p(L,V),R.p(L,V),(!J||V[0]&4)&&i(j,"aria-expanded",L[2]),(!J||V[0]&1&&z!==(z=L[7]?m("file.ariaFolder")+" "+L[0].name:m("file.ariaFile")+" "+L[0].name))&&i(e,"aria-label",z),(!J||V[0]&2)&&he(e,"file-row--selected",L[1]),L[2]?K?K.p(L,V):(K=Pn(L),K.c(),K.m(W.parentNode,W)):K&&(K.d(1),K=null)},i(L){J||(re(n.$$.fragment,L),J=!0)},o(L){de(n.$$.fragment,L),J=!1},d(L){L&&(w(e),w(O),w(W)),Ue(n),H&&H.d(),R.d(),K&&K.d(L),q=!1,ve(Y)}}}function Su(l,e,t){let{item:n}=e,{selected:s=!1}=e,{onDragStart:o}=e,{onDragOver:r}=e,{onDrop:u}=e;const a=cl(),d=Mo(n),_=n.type==="folder",v=_u(n);let g=!1,b=0,k=0,y=null;function S(V){V.ctrlKey||V.metaKey?a("toggleSelect",n.id):V.shiftKey?a("rangeSelect",n.id):y?(clearTimeout(y),y=null,_?a("navigate",n.id):a("preview",n)):y=setTimeout(()=>{y=null,a("selectOne",n.id)},250)}function j(){a("openExternal",n.fileId)}function E(){t(2,g=!1),a("showInFolder",n.nodeId||n.id)}function D(){t(2,g=!1),a("delete",{id:n.id,type:n.type})}function N(){t(2,g=!1),a("rename",{id:n.id,name:n.name})}function T(){t(2,g=!1),a("duplicate",n.id)}function I(){t(2,g=!1),a("cut",n.id)}function M(){t(2,g=!1),a("copy",n.id)}function z(){t(2,g=!1),_?a("navigate",n.id):a("preview",n)}function O(){t(2,g=!g)}function W(){t(2,g=!1)}function J(V){o&&o(V,n.id)}function q(V){r&&_&&r(V,n.id)}function Y(V){u&&_&&u(V,n.id)}function H(V){V.preventDefault(),t(3,b=Math.min(V.clientX,window.innerWidth-240)),t(4,k=Math.min(V.clientY,window.innerHeight-320)),t(2,g=!0)}function B(V){(V.key==="Enter"||V.key===" ")&&(V.preventDefault(),S(V))}function G(V){jo.call(this,l,V)}const R=()=>a("preview",n),K=()=>a("navigate",n.id),L=V=>{V.key==="Escape"&&(V.stopPropagation(),W())};return l.$$set=V=>{"item"in V&&t(0,n=V.item),"selected"in V&&t(1,s=V.selected),"onDragStart"in V&&t(25,o=V.onDragStart),"onDragOver"in V&&t(26,r=V.onDragOver),"onDrop"in V&&t(27,u=V.onDrop)},[n,s,g,b,k,a,d,_,v,S,j,E,D,N,T,I,M,z,O,W,J,q,Y,H,B,o,r,u,G,R,K,L]}class ju extends Ze{constructor(e){super(),Xe(this,e,Su,Cu,Qe,{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 Eu(l){let e;return{c(){e=f("span"),e.textContent="/",i(e,"class","sep svelte-csi2lb")},m(t,n){C(t,e,n)},d(t){t&&w(e)}}}function Tu(l){let e,t=l[4].name+"",n,s,o;function r(){return l[2](l[6])}return{c(){e=f("button"),n=F(t),i(e,"class","crumb crumb--link svelte-csi2lb")},m(u,a){C(u,e,a),c(e,n),s||(o=A(e,"click",r),s=!0)},p(u,a){l=u,a&1&&t!==(t=l[4].name+"")&&U(n,t)},d(u){u&&w(e),s=!1,o()}}}function Nu(l){let e,t=l[4].name+"",n;return{c(){e=f("span"),n=F(t),i(e,"class","crumb crumb--current svelte-csi2lb")},m(s,o){C(s,e,o),c(e,n)},p(s,o){o&1&&t!==(t=s[4].name+"")&&U(n,t)},d(s){s&&w(e)}}}function Rn(l){let e,t,n=l[6]>0&&Eu();function s(u,a){return u[6]===u[0].length-1?Nu:Tu}let o=s(l),r=o(l);return{c(){n&&n.c(),e=h(),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){o===(o=s(u))&&r?r.p(u,a):(r.d(1),r=o(u),r&&(r.c(),r.m(t.parentNode,t)))},d(u){u&&(w(e),w(t)),n&&n.d(u),r.d(u)}}}function Du(l){let e,t=fe(l[0]),n=[];for(let s=0;so(u);return l.$$set=u=>{"crumbs"in u&&t(0,n=u.crumbs)},[n,o,r]}class Oo extends Ze{constructor(e){super(),Xe(this,e,Mu,Du,Qe,{crumbs:0})}}function Iu(l){let e,t,n,s,o,r;return{c(){e=f("div"),t=f("p"),t.textContent=`${m("file.previewUnavailable")}`,n=h(),s=f("button"),s.textContent=`${m("file.openExternal")}`,i(s,"class","btn btn-sm svelte-1cw3u0m"),i(e,"class","preview-status svelte-1cw3u0m")},m(u,a){C(u,e,a),c(e,t),c(e,n),c(e,s),o||(r=A(s,"click",l[9]),o=!0)},p:te,d(u){u&&w(e),o=!1,r()}}}function Au(l){let e,t;function n(r,u){return u&2&&(e=null),e==null&&(e=!!(r[1]&&r[1].startsWith("data:"))),e?Vu:zu}let s=n(l,-1),o=s(l);return{c(){o.c(),t=it()},m(r,u){o.m(r,u),C(r,t,u)},p(r,u){s===(s=n(r,u))&&o?o.p(r,u):(o.d(1),o=s(r),o&&(o.c(),o.m(t.parentNode,t)))},d(r){r&&w(t),o.d(r)}}}function Fu(l){let e,t,n;return{c(){e=f("pre"),t=f("code"),n=F(l[1]),i(e,"class","preview-text svelte-1cw3u0m")},m(s,o){C(s,e,o),c(e,t),c(t,n)},p(s,o){o&2&&U(n,s[1])},d(s){s&&w(e)}}}function Pu(l){let e,t,n,s;return{c(){e=f("div"),t=f("img"),sl(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){C(o,e,r),c(e,t)},p(o,r){r&2&&!sl(t.src,n=o[1])&&i(t,"src",n),r&1&&s!==(s=o[0].name)&&i(t,"alt",s)},d(o){o&&w(e)}}}function Lu(l){let e,t,n,s,o,r,u;return{c(){e=f("div"),t=f("p"),n=F(l[3]),s=h(),o=f("button"),o.textContent=`${m("file.openExternal")}`,i(o,"class","btn btn-sm svelte-1cw3u0m"),i(e,"class","preview-status svelte-1cw3u0m")},m(a,d){C(a,e,d),c(e,t),c(t,n),c(e,s),c(e,o),r||(u=A(o,"click",l[9]),r=!0)},p(a,d){d&8&&U(n,a[3])},d(a){a&&w(e),r=!1,u()}}}function Ru(l){let e,t;return{c(){e=f("div"),t=f("p"),t.textContent=`${m("common.loading")}`,i(e,"class","preview-status svelte-1cw3u0m")},m(n,s){C(n,e,s),c(e,t)},p:te,d(n){n&&w(e)}}}function zu(l){let e,t,n,s,o,r;return{c(){e=f("div"),t=f("p"),t.textContent=`${m("file.pdfUnavailable")}`,n=h(),s=f("button"),s.textContent=`${m("file.openExternal")}`,i(s,"class","btn btn-sm svelte-1cw3u0m"),i(e,"class","preview-status svelte-1cw3u0m")},m(u,a){C(u,e,a),c(e,t),c(e,n),c(e,s),o||(r=A(s,"click",l[9]),o=!0)},p:te,d(u){u&&w(e),o=!1,r()}}}function Vu(l){let e,t,n;return{c(){e=f("div"),t=f("embed"),sl(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){C(s,e,o),c(e,t)},p(s,o){o&2&&!sl(t.src,n=s[1])&&i(t,"src",n)},d(s){s&&w(e)}}}function Ou(l){let e,t,n,s,o,r,u,a=l[0].name+"",d,_,v,g,b=il(l[0].size)+"",k,y,S=Fn(l[0].mime)+"",j,E,D,N,T,I,M,z,O,W,J;o=new Do({props:{kind:l[8],size:18}});function q(B,G){return B[2]?Ru:B[3]?Lu:B[6]&&B[1]?Pu:B[5]&&B[1]?Fu:B[4]?Au:Iu}let Y=q(l),H=Y(l);return{c(){e=f("div"),t=f("div"),n=f("header"),s=f("div"),Je(o.$$.fragment),r=h(),u=f("span"),d=F(a),v=h(),g=f("div"),k=F(b),y=F(" · "),j=F(S),E=h(),D=f("div"),N=f("button"),N.innerHTML='',T=h(),I=f("button"),I.innerHTML='',M=h(),z=f("div"),H.c(),i(u,"class","preview-name svelte-1cw3u0m"),i(u,"title",_=l[0].name),i(s,"class","preview-title svelte-1cw3u0m"),i(g,"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(I,"class","action-btn action-btn-close svelte-1cw3u0m"),i(I,"title","Close"),i(I,"aria-label","Close preview"),i(D,"class","preview-actions svelte-1cw3u0m"),i(n,"class","preview-header svelte-1cw3u0m"),i(z,"class","preview-body svelte-1cw3u0m"),i(t,"class","modal svelte-1cw3u0m"),i(e,"class","overlay svelte-1cw3u0m"),i(e,"role","presentation")},m(B,G){C(B,e,G),c(e,t),c(t,n),c(n,s),He(o,s,null),c(s,r),c(s,u),c(u,d),c(n,v),c(n,g),c(g,k),c(g,y),c(g,j),c(n,E),c(n,D),c(D,N),c(D,T),c(D,I),c(t,M),c(t,z),H.m(z,null),O=!0,W||(J=[A(N,"click",l[9]),A(I,"click",l[10]),A(e,"click",ft(l[11])),A(e,"keydown",l[12])],W=!0)},p(B,[G]){(!O||G&1)&&a!==(a=B[0].name+"")&&U(d,a),(!O||G&1&&_!==(_=B[0].name))&&i(u,"title",_),(!O||G&1)&&b!==(b=il(B[0].size)+"")&&U(k,b),(!O||G&1)&&S!==(S=Fn(B[0].mime)+"")&&U(j,S),Y===(Y=q(B))&&H?H.p(B,G):(H.d(1),H=Y(B),H&&(H.c(),H.m(z,null)))},i(B){O||(re(o.$$.fragment,B),O=!0)},o(B){de(o.$$.fragment,B),O=!1},d(B){B&&w(e),Ue(o),H.d(),W=!1,ve(J)}}}function Wu(l,e,t){let n,s,o,{item:r}=e,{content:u=""}=e,{loading:a=!1}=e,{error:d=""}=e;const _=cl(),v=Mo(r);function g(j){j.key==="Escape"&&_("close")}function b(){_("openExternal",r.fileId)}So(()=>{window.addEventListener("keydown",g)}),Hl(()=>{window.removeEventListener("keydown",g)});const k=()=>_("close"),y=()=>_("close"),S=j=>{j.key==="Escape"&&(j.preventDefault(),_("close"))};return l.$$set=j=>{"item"in j&&t(0,r=j.item),"content"in j&&t(1,u=j.content),"loading"in j&&t(2,a=j.loading),"error"in j&&t(3,d=j.error)},l.$$.update=()=>{l.$$.dirty&3&&t(6,n=Lo(r)&&u&&u.startsWith("data:")),l.$$.dirty&1&&t(5,s=Ro(r)||Vo(r)),l.$$.dirty&1&&t(4,o=zo(r))},[r,u,a,d,o,s,n,_,v,b,k,y,S]}class Bu extends Ze{constructor(e){super(),Xe(this,e,Wu,Ou,Qe,{item:0,content:1,loading:2,error:3})}}function Hu(l){let e,t,n,s,o,r,u,a,d,_,v,g,b,k,y,S,j;return{c(){e=f("div"),t=f("div"),n=f("h3"),s=F(l[0]),o=h(),r=f("p"),u=F(l[1]),a=h(),d=f("div"),_=f("button"),v=F(l[2]),b=h(),k=f("button"),y=F(l[3]),i(n,"class","svelte-1fv6yyk"),i(r,"class","message svelte-1fv6yyk"),i(_,"class",g="btn "+(l[4]?"btn-danger":"btn-primary")+" svelte-1fv6yyk"),i(k,"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,D){C(E,e,D),c(e,t),c(t,n),c(n,s),c(t,o),c(t,r),c(r,u),c(t,a),c(t,d),c(d,_),c(_,v),c(d,b),c(d,k),c(k,y),S||(j=[A(_,"click",l[6]),A(k,"click",l[7]),A(e,"click",ft(l[8])),A(e,"keydown",l[9])],S=!0)},p(E,[D]){D&1&&U(s,E[0]),D&2&&U(u,E[1]),D&4&&U(v,E[2]),D&16&&g!==(g="btn "+(E[4]?"btn-danger":"btn-primary")+" svelte-1fv6yyk")&&i(_,"class",g),D&8&&U(y,E[3])},i:te,o:te,d(E){E&&w(e),S=!1,ve(j)}}}function Uu(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:u=!1}=e;const a=cl(),d=()=>a("confirm"),_=()=>a("cancel"),v=()=>a("cancel"),g=b=>{b.key==="Escape"&&(b.preventDefault(),a("cancel"))};return l.$$set=b=>{"title"in b&&t(0,n=b.title),"message"in b&&t(1,s=b.message),"confirmText"in b&&t(2,o=b.confirmText),"cancelText"in b&&t(3,r=b.cancelText),"danger"in b&&t(4,u=b.danger)},[n,s,o,r,u,a,d,_,v,g]}class Ku extends Ze{constructor(e){super(),Xe(this,e,Uu,Hu,Qe,{title:0,message:1,confirmText:2,cancelText:3,danger:4})}}function Gu(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){C(s,e,o),C(s,t,o),C(s,n,o)},d(s){s&&(w(e),w(t),w(n))}}}function Ju(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){C(o,e,r),C(o,t,r),C(o,n,r),C(o,s,r)},d(o){o&&(w(e),w(t),w(n),w(s))}}}function qu(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){C(n,e,s),C(n,t,s)},d(n){n&&(w(e),w(t))}}}function Yu(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){C(n,e,s),C(n,t,s)},d(n){n&&(w(e),w(t))}}}function Qu(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,u){C(r,e,u),C(r,t,u),C(r,n,u),C(r,s,u),C(r,o,u)},d(r){r&&(w(e),w(t),w(n),w(s),w(o))}}}function Xu(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){C(o,e,r),C(o,t,r),C(o,n,r),C(o,s,r)},d(o){o&&(w(e),w(t),w(n),w(s))}}}function Zu(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){C(n,e,s),C(n,t,s)},d(n){n&&(w(e),w(t))}}}function xu(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){C(o,e,r),C(o,t,r),C(o,n,r),C(o,s,r)},d(o){o&&(w(e),w(t),w(n),w(s))}}}function $u(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){C(t,e,n)},d(t){t&&w(e)}}}function ef(l){let e;function t(o,r){return o[0]==="folder"?$u:o[0]==="project"?xu:o[0]==="client"?Zu:o[0]==="document"?Xu:o[0]==="recipe"?Qu:o[0]==="note"?Yu:o[0]==="file"?qu:o[0]==="case"?Ju:Gu}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){C(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:te,o:te,d(o){o&&w(e),s.d()}}}function tf(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 rl extends Ze{constructor(e){super(),Xe(this,e,tf,ef,Qe,{kind:0,size:1})}}function zn(l,e,t){const n=l.slice();return n[44]=e[t],n}function lf(l){let e;return{c(){e=f("span"),i(e,"class","tree-toggle-placeholder svelte-zj71cl")},m(t,n){C(t,e,n)},p:te,d(t){t&&w(e)}}}function nf(l){let e,t,n=l[1][l[44].id]?"▾":"▸",s,o,r;function u(){return l[25](l[44])}return{c(){e=f("button"),t=f("span"),s=F(n),i(t,"class","tree-arrow"),i(e,"class","tree-toggle svelte-zj71cl")},m(a,d){C(a,e,d),c(e,t),c(t,s),o||(r=A(e,"click",Be(u)),o=!0)},p(a,d){l=a,d[0]&3&&n!==(n=l[1][l[44].id]?"▾":"▸")&&U(s,n)},d(a){a&&w(e),o=!1,r()}}}function Vn(l){let e,t;return e=new Wo({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(){Je(e.$$.fragment)},m(n,s){He(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||(re(e.$$.fragment,n),t=!0)},o(n){de(e.$$.fragment,n),t=!1},d(n){Ue(e,n)}}}function On(l,e){let t,n,s,o,r,u,a,d=e[44].title+"",_,v,g=e[1][e[44].id]&&Vl(e[44]),b,k,y,S;function j(R,K){return K[0]&1&&(n=null),n==null&&(n=!!Wt(R[44])),n?nf:lf}let E=j(e,[-1,-1]),D=E(e);r=new rl({props:{kind:Wn(e[44]),size:16}});function N(...R){return e[26](e[44],...R)}function T(...R){return e[27](e[44],...R)}function I(){return e[28](e[44])}function M(...R){return e[29](e[44],...R)}function z(...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=g&&Vn(e);return{key:l,first:null,c(){t=f("div"),D.c(),s=h(),o=f("span"),Je(r.$$.fragment),u=h(),a=f("span"),_=F(d),v=h(),G&&G.c(),b=it(),i(o,"class","tree-icon svelte-zj71cl"),i(o,"role","button"),i(o,"tabindex","-1"),i(a,"class","tree-label svelte-zj71cl"),i(a,"role","button"),i(a,"tabindex","-1"),i(t,"class","tree-item svelte-zj71cl"),rt(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(R,K){C(R,t,K),D.m(t,null),c(t,s),c(t,o),He(r,o,null),c(t,u),c(t,a),c(a,_),C(R,v,K),G&&G.m(R,K),C(R,b,K),k=!0,y||(S=[A(o,"click",N),A(o,"keydown",T),A(o,"dblclick",Be(e[24])),A(a,"click",Be(I)),A(a,"keydown",M),A(t,"dragstart",z),A(t,"dragover",O),A(t,"dragleave",W),A(t,"drop",J),A(t,"click",q),A(t,"keydown",Y),A(t,"dblclick",H),A(t,"contextmenu",Wl(B))],y=!0)},p(R,K){e=R,E===(E=j(e,K))&&D?D.p(e,K):(D.d(1),D=E(e),D&&(D.c(),D.m(t,s)));const L={};K[0]&1&&(L.kind=Wn(e[44])),r.$set(L),(!k||K[0]&1)&&d!==(d=e[44].title+"")&&U(_,d),(!k||K[0]&8)&&rt(t,"padding-left",e[3]*16+4+"px"),(!k||K[0]&5)&&he(t,"selected",e[2]===e[44].id),(!k||K[0]&769)&&he(t,"drop-valid",e[8]===e[44].id&&e[9][e[44].id]),(!k||K[0]&769)&&he(t,"drop-invalid",e[8]===e[44].id&&!e[9][e[44].id]),K[0]&3&&(g=e[1][e[44].id]&&Vl(e[44])),g?G?(G.p(e,K),K[0]&3&&re(G,1)):(G=Vn(e),G.c(),re(G,1),G.m(b.parentNode,b)):G&&(nt(),de(G,1,1,()=>{G=null}),st())},i(R){k||(re(r.$$.fragment,R),re(G),k=!0)},o(R){de(r.$$.fragment,R),de(G),k=!1},d(R){R&&(w(t),w(v),w(b)),D.d(),Ue(r),G&&G.d(R),y=!1,ve(S)}}}function sf(l){let e=[],t=new Map,n,s,o,r,u=fe(l[0]);const a=d=>d[44].id;for(let d=0;d0:l.has_children===!0}function Bn(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 Hn(l){const e=[];function t(n){for(const s of n)e.push(s),s.children&&t(s.children)}return t(l),e}function of(l){try{return l.dataTransfer.getData("text/plain")}catch{return""}}function cf(l,e,t){let n,s,o,{nodes:r=[]}=e,{expanded:u={}}=e,{selectedNodeId:a=""}=e,{level:d=0}=e,{onSelect:_=void 0}=e,{onToggle:v=void 0}=e,{onContextMenu:g=void 0}=e,{onDrop:b=void 0}=e,k={},y=null,S="",j="";const E=["folder","project","client","document","recipe","case"];Hl(()=>{for(const X of Object.keys(k))clearTimeout(k[X]);y&&clearInterval(y)});function D(X){return E.includes(X.type)}function N(X,Z,ue){if(!X||!Z||Z===X.id||!D(X))return!1;let Se=X.id;for(;Se;){if(Se===Z)return!1;Se=ue[Se]||""}return!0}function T(X,Z){X.stopPropagation(),X.dataTransfer.effectAllowed="move",X.dataTransfer.setData("text/plain",Z.id),t(21,S=Z.id)}function I(X,Z){X.preventDefault(),X.stopPropagation(),X.dataTransfer.dropEffect="move",j!==Z.id&&t(8,j=Z.id),Wt(Z)&&!u[Z.id]&&!k[Z.id]&&(k[Z.id]=setTimeout(()=>{v&&v(Z.id),delete k[Z.id]},600));const ue=X.currentTarget.closest(".workspace-tree-area");if(ue){const Se=ue.getBoundingClientRect(),me=30;X.clientY-Se.top{ue.scrollTop-=10},50)):Se.bottom-X.clientY{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=""),k[Z.id]&&(clearTimeout(k[Z.id]),delete k[Z.id]),y&&(clearInterval(y),y=null))}function z(X,Z){X.preventDefault(),X.stopPropagation(),k[Z.id]&&(clearTimeout(k[Z.id]),delete k[Z.id]),y&&(clearInterval(y),y=null);const ue=Hn(r),Se=Bn(ue),me=of(X);if(!N(Z,me,Se)){t(8,j=""),t(21,S="");return}b&&b(me,Z.id),t(8,j=""),t(21,S="")}function O(){t(8,j=""),t(21,S="");for(const X of Object.keys(k))clearTimeout(k[X]),delete k[X];y&&(clearInterval(y),y=null)}function W(X,Z){X.target.closest(".tree-toggle")||X.target.closest(".tree-icon")||_&&_(Z)}function J(X,Z){Wt(Z)&&v&&v(Z.id)}function q(X,Z){(X.key==="Enter"||X.key===" ")&&(X.preventDefault(),_&&_(Z))}function Y(X,Z){X.stopPropagation(),Wt(Z)&&v&&v(Z.id)}function H(X,Z){(X.key==="Enter"||X.key===" ")&&(X.preventDefault(),X.stopPropagation(),Wt(Z)&&v&&v(Z.id))}function B(X,Z){(X.key==="Enter"||X.key===" ")&&(X.preventDefault(),_&&_(Z))}function G(X,Z,ue){const Se={};function me(ke){for(const qe of ke)Se[qe.id]=N(qe,Z,ue),qe.children&&me(qe.children)}return me(X),Se}function R(X){jo.call(this,l,X)}const K=X=>v&&v(X.id),L=(X,Z)=>Y(Z,X),V=(X,Z)=>H(Z,X),$=X=>_&&_(X),ce=(X,Z)=>B(Z,X),ee=(X,Z)=>T(Z,X),ne=(X,Z)=>I(Z,X),le=(X,Z)=>M(Z,X),oe=(X,Z)=>z(Z,X),ae=(X,Z)=>W(Z,X),we=(X,Z)=>q(Z,X),ze=(X,Z)=>J(Z,X),Ie=(X,Z)=>g&&g(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,_=X.onSelect),"onToggle"in X&&t(5,v=X.onToggle),"onContextMenu"in X&&t(6,g=X.onContextMenu),"onDrop"in X&&t(7,b=X.onDrop)},l.$$.update=()=>{l.$$.dirty[0]&1&&t(23,n=Hn(r)),l.$$.dirty[0]&8388608&&t(22,s=Bn(n)),l.$$.dirty[0]&14680064&&t(9,o=G(n,S,s))},[r,u,a,d,_,v,g,b,j,o,T,I,M,z,O,W,J,q,Y,H,B,S,s,n,R,K,L,V,$,ce,ee,ne,le,oe,ae,we,ze,Ie]}class Wo extends Ze{constructor(e){super(),Xe(this,e,cf,sf,Qe,{nodes:0,expanded:1,selectedNodeId:2,level:3,onSelect:4,onToggle:5,onContextMenu:6,onDrop:7},null,[-1,-1])}}function Un(l){let e,t;return{c(){e=f("div"),t=F(l[4]),i(e,"class","path-info svelte-11u707d")},m(n,s){C(n,e,s),c(e,t)},p(n,s){s&16&&U(t,n[4])},d(n){n&&w(e)}}}function Kn(l){let e,t;return{c(){e=f("div"),t=F(l[3]),i(e,"class","error-msg svelte-11u707d")},m(n,s){C(n,e,s),c(e,t)},p(n,s){s&8&&U(t,n[3])},d(n){n&&w(e)}}}function rf(l){let e,t,n,s,o,r,u,a,d,_,v,g,b,k,y,S,j=m("firstrun.browse")+"",E,D,N,T,I,M,z=(l[2]?m("firstrun.creating"):m("firstrun.create"))+"",O,W,J,q,Y,H,B=l[4]&&Un(l),G=l[3]&&Kn(l);return{c(){e=f("div"),t=f("div"),n=f("div"),n.textContent="⚒",s=h(),o=f("h1"),o.textContent=`${m("firstrun.title")}`,r=h(),u=f("p"),u.textContent=`${m("firstrun.desc")}`,a=h(),d=f("div"),_=f("label"),_.textContent=`${m("firstrun.pathLabel")}`,v=h(),g=f("div"),b=f("input"),y=h(),S=f("button"),E=F(j),D=h(),B&&B.c(),N=h(),G&&G.c(),T=h(),I=f("div"),M=f("button"),O=F(z),J=h(),q=f("button"),q.textContent=`${m("firstrun.quit")}`,i(n,"class","first-run-logo svelte-11u707d"),i(o,"class","svelte-11u707d"),i(u,"class","first-run-desc svelte-11u707d"),i(_,"class","form-label svelte-11u707d"),i(_,"for","vault-path"),i(b,"id","vault-path"),i(b,"type","text"),i(b,"placeholder",k=l[1]||m("firstrun.defaultPath")),b.disabled=l[2],i(b,"class","svelte-11u707d"),i(S,"class","btn"),S.disabled=l[2],i(g,"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(I,"class","first-run-actions svelte-11u707d"),i(t,"class","first-run-card svelte-11u707d"),i(e,"class","first-run-screen svelte-11u707d")},m(R,K){C(R,e,K),c(e,t),c(t,n),c(t,s),c(t,o),c(t,r),c(t,u),c(t,a),c(t,d),c(d,_),c(d,v),c(d,g),c(g,b),be(b,l[0]),c(g,y),c(g,S),c(S,E),c(t,D),B&&B.m(t,null),c(t,N),G&&G.m(t,null),c(t,T),c(t,I),c(I,M),c(M,O),c(I,J),c(I,q),Y||(H=[A(b,"input",l[12]),A(b,"input",l[6]),A(b,"keydown",l[9]),A(S,"click",l[5]),A(M,"click",l[7]),A(q,"click",l[8])],Y=!0)},p(R,[K]){K&2&&k!==(k=R[1]||m("firstrun.defaultPath"))&&i(b,"placeholder",k),K&4&&(b.disabled=R[2]),K&1&&b.value!==R[0]&&be(b,R[0]),K&4&&(S.disabled=R[2]),R[4]?B?B.p(R,K):(B=Un(R),B.c(),B.m(t,N)):B&&(B.d(1),B=null),R[3]?G?G.p(R,K):(G=Kn(R),G.c(),G.m(t,T)):G&&(G.d(1),G=null),K&4&&z!==(z=(R[2]?m("firstrun.creating"):m("firstrun.create"))+"")&&U(O,z),K&5&&W!==(W=!R[0].trim()||R[2])&&(M.disabled=W)},i:te,o:te,d(R){R&&w(e),B&&B.d(),G&&G.d(),Y=!1,ve(H)}}}function el(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 af(l,e,t){let{onComplete:n=null}=e,{onQuit:s=null}=e,o="",r="",u=!1,a="",d="",_=null;async function v(){try{const E=await el("GetDefaultVaultPath");t(1,r=E||""),t(0,o=r||""),o&&await b()}catch{t(1,r="")}}v();async function g(){try{const E=await el("PickDirectory");E&&(t(0,o=E),await b())}catch(E){t(3,a=String(E))}}async function b(){if(!o||!o.trim()){t(4,d=""),_=null;return}try{_=await el("CheckVaultPath",o.trim()),_&&t(4,d=_.description)}catch{t(4,d=""),_=null}}async function k(){if(!(!o||!o.trim())){if(t(2,u=!0),t(3,a=""),_&&!_.writable){t(3,a=m("firstrun.errorNoWrite")),t(2,u=!1);return}try{const E=await el("CreateVault",o.trim());E&&E.status==="ready"&&n&&n(E)}catch(E){t(3,a=String(E))}t(2,u=!1)}}function y(){s&&s()}function S(E){E.key==="Enter"&&!u&&o.trim()&&k()}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,u,a,d,g,b,k,y,S,n,s,j]}class uf extends Ze{constructor(e){super(),Xe(this,e,af,rf,Qe,{onComplete:10,onQuit:11})}}function Gn(l){let e,t;return{c(){e=f("div"),t=F(l[2]),i(e,"class","error-msg svelte-s3o8c3")},m(n,s){C(n,e,s),c(e,t)},p(n,s){s&4&&U(t,n[2])},d(n){n&&w(e)}}}function Jn(l){let e,t,n,s,o,r,u,a,d=m("common.yes")+"",_,v,g,b,k;return{c(){e=f("div"),t=f("div"),n=f("h3"),n.textContent=`${m("recovery.createConfirmTitle")}`,s=h(),o=f("p"),o.textContent=`${m("recovery.createConfirm")}`,r=h(),u=f("div"),a=f("button"),_=F(d),v=h(),g=f("button"),g.textContent=`${m("common.cancel")}`,i(n,"class","svelte-s3o8c3"),i(o,"class","modal-desc svelte-s3o8c3"),i(a,"class","btn btn-primary"),a.disabled=l[1],i(g,"class","btn"),i(u,"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,S){C(y,e,S),c(e,t),c(t,n),c(t,s),c(t,o),c(t,r),c(t,u),c(u,a),c(a,_),c(u,v),c(u,g),b||(k=[A(a,"click",l[6]),A(g,"click",l[7]),A(e,"click",ft(l[7])),A(e,"keydown",l[11])],b=!0)},p(y,S){S&2&&(a.disabled=y[1])},d(y){y&&w(e),b=!1,ve(k)}}}function ff(l){let e,t,n,s,o,r,u,a,d,_=(l[0]||"—")+"",v,g,b,k,y,S=m("recovery.choose")+"",j,E,D,N=m("recovery.create")+"",T,I,M,z,O,W,J,q=l[2]&&Gn(l),Y=l[3]&&Jn(l);return{c(){e=f("div"),t=f("div"),n=f("div"),n.textContent="⚠",s=h(),o=f("h1"),o.textContent=`${m("recovery.title")}`,r=h(),u=f("p"),u.textContent=`${m("recovery.expected")}:`,a=h(),d=f("code"),v=F(_),g=h(),q&&q.c(),b=h(),k=f("div"),y=f("button"),j=F(S),E=h(),D=f("button"),T=F(N),I=h(),M=f("button"),M.textContent=`${m("recovery.quit")}`,z=h(),Y&&Y.c(),O=it(),i(n,"class","recovery-icon svelte-s3o8c3"),i(o,"class","svelte-s3o8c3"),i(u,"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(D,"class","btn btn-lg svelte-s3o8c3"),D.disabled=l[1],i(M,"class","btn btn-lg svelte-s3o8c3"),i(k,"class","recovery-actions svelte-s3o8c3"),i(t,"class","recovery-card svelte-s3o8c3"),i(e,"class","recovery-screen svelte-s3o8c3")},m(H,B){C(H,e,B),c(e,t),c(t,n),c(t,s),c(t,o),c(t,r),c(t,u),c(t,a),c(t,d),c(d,v),c(t,g),q&&q.m(t,null),c(t,b),c(t,k),c(k,y),c(y,j),c(k,E),c(k,D),c(D,T),c(k,I),c(k,M),C(H,z,B),Y&&Y.m(H,B),C(H,O,B),W||(J=[A(y,"click",l[4]),A(D,"click",l[5]),A(M,"click",l[8])],W=!0)},p(H,[B]){B&1&&_!==(_=(H[0]||"—")+"")&&U(v,_),H[2]?q?q.p(H,B):(q=Gn(H),q.c(),q.m(t,b)):q&&(q.d(1),q=null),B&2&&(y.disabled=H[1]),B&2&&(D.disabled=H[1]),H[3]?Y?Y.p(H,B):(Y=Jn(H),Y.c(),Y.m(O.parentNode,O)):Y&&(Y.d(1),Y=null)},i:te,o:te,d(H){H&&(w(e),w(z),w(O)),q&&q.d(),Y&&Y.d(H),W=!1,ve(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 df(l,e,t){let{vaultPath:n=""}=e,{onComplete:s=null}=e,{onQuit:o=null}=e,r=!1,u="",a=!1;async function d(){try{const y=await Fl("PickDirectory");if(!y)return;t(1,r=!0),t(2,u="");const S=await Fl("OpenVault",y);S&&S.status==="ready"&&s&&s(S)}catch(y){t(2,u=String(y))}t(1,r=!1)}function _(){t(3,a=!0)}async function v(){t(3,a=!1),t(1,r=!0),t(2,u="");try{const y=await Fl("CreateVault",n);y&&y.status==="ready"&&s&&s(y)}catch(y){t(2,u=String(y))}t(1,r=!1)}function g(){t(3,a=!1)}function b(){o&&o()}const k=y=>y.key==="Enter"&&g();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,u,a,d,_,v,g,b,s,o,k]}class pf extends Ze{constructor(e){super(),Xe(this,e,df,ff,Qe,{vaultPath:0,onComplete:9,onQuit:10})}}function qn(l,e,t){const n=l.slice();return n[5]=e[t],n}function mf(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){C(s,e,o),C(s,t,o),C(s,n,o)},d(s){s&&(w(e),w(t),w(n))}}}function _f(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){C(o,e,r),C(o,t,r),C(o,n,r),C(o,s,r)},d(o){o&&(w(e),w(t),w(n),w(s))}}}function vf(l){let e;return{c(){e=Q("path"),i(e,"d","M4 19V9M10 19V5M16 19v-7M22 19H2")},m(t,n){C(t,e,n)},d(t){t&&w(e)}}}function gf(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){C(t,e,n)},d(t){t&&w(e)}}}function hf(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){C(n,e,s),C(n,t,s)},d(n){n&&(w(e),w(t))}}}function bf(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){C(n,e,s),C(n,t,s)},d(n){n&&(w(e),w(t))}}}function kf(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){C(s,e,o),C(s,t,o),C(s,n,o)},d(s){s&&(w(e),w(t),w(n))}}}function yf(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){C(n,e,s),C(n,t,s)},d(n){n&&(w(e),w(t))}}}function Yn(l){let e,t,n,s,o,r,u,a;function d(b,k){if(b[5].id==="general")return yf;if(b[5].id==="workspace")return kf;if(b[5].id==="templates")return bf;if(b[5].id==="plugins")return hf;if(b[5].id==="files")return gf;if(b[5].id==="activity")return vf;if(b[5].id==="sync")return _f;if(b[5].id==="backup")return mf}let _=d(l),v=_&&_(l);function g(){return l[4](l[5])}return{c(){e=f("button"),t=f("span"),n=Q("svg"),v&&v.c(),s=h(),o=f("span"),o.textContent=`${l[5].label}`,r=h(),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(b,k){C(b,e,k),c(e,t),c(t,n),v&&v.m(n,null),c(e,s),c(e,o),c(e,r),u||(a=A(e,"click",g),u=!0)},p(b,k){l=b,k&3&&he(e,"active",l[0]===l[5].id)},d(b){b&&w(e),v&&v.d(),u=!1,a()}}}function wf(l){let e,t=fe(l[1]),n=[];for(let s=0;sr(a.id);return l.$$set=a=>{"activeSection"in a&&t(0,n=a.activeSection),"onSelect"in a&&t(3,s=a.onSelect)},[n,o,r,s,u]}class Sf extends Ze{constructor(e){super(),Xe(this,e,Cf,wf,Qe,{activeSection:0,onSelect:3})}}function Qn(l){let e;return{c(){e=f("div"),e.textContent=`${m("settings.saved")}`,i(e,"class","save-notice svelte-1e2uhdh")},m(t,n){C(t,e,n)},d(t){t&&w(e)}}}function jf(l){let e,t,n,s,o,r,u,a,d,_,v,g,b,k,y,S,j,E,D,N,T,I,M,z,O,W,J,q,Y,H,B,G,R,K=l[1]&&Qn();return{c(){e=f("div"),t=f("h2"),t.textContent=`${m("settings.general")}`,n=h(),s=f("p"),s.textContent=`${m("settings.generalDesc")}`,o=h(),r=f("div"),u=f("h3"),u.textContent=`${m("settings.appearance")}`,a=h(),d=f("div"),_=f("label"),v=f("span"),v.textContent=`${m("settings.theme")}`,g=h(),b=f("select"),k=f("option"),k.textContent=`${m("settings.themeSystem")}`,y=f("option"),y.textContent=`${m("settings.themeLight")} (${m("settings.langSoon")})`,S=f("option"),S.textContent=`${m("settings.themeDark")} (${m("settings.langSoon")})`,j=h(),E=f("div"),D=f("h3"),D.textContent=`${m("settings.localization")}`,N=h(),T=f("div"),I=f("label"),M=f("span"),M.textContent=`${m("settings.language")}`,z=h(),O=f("select"),W=f("option"),W.textContent=`${m("settings.langRu")}`,J=f("option"),J.textContent=`${m("settings.langEn")} (${m("settings.langSoon")})`,q=h(),Y=f("div"),K&&K.c(),H=h(),B=f("button"),B.textContent=`${m("settings.save")}`,i(t,"class","svelte-1e2uhdh"),i(s,"class","section-desc svelte-1e2uhdh"),i(u,"class","card-title svelte-1e2uhdh"),i(v,"class","label-text svelte-1e2uhdh"),k.__value="system",be(k,k.__value),y.__value="light",be(y,y.__value),y.disabled=!0,S.__value="dark",be(S,S.__value),S.disabled=!0,l[0]===void 0&&jt(()=>l[5].call(b)),i(d,"class","form-group svelte-1e2uhdh"),i(r,"class","settings-card svelte-1e2uhdh"),i(D,"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),O.disabled=!0,i(T,"class","form-group svelte-1e2uhdh"),i(E,"class","settings-card svelte-1e2uhdh"),i(B,"class","btn btn-primary"),i(Y,"class","settings-actions svelte-1e2uhdh"),i(e,"class","settings-section svelte-1e2uhdh")},m(L,V){C(L,e,V),c(e,t),c(e,n),c(e,s),c(e,o),c(e,r),c(r,u),c(r,a),c(r,d),c(d,_),c(_,v),c(_,g),c(_,b),c(b,k),c(b,y),c(b,S),pt(b,l[0],!0),c(e,j),c(e,E),c(E,D),c(E,N),c(E,T),c(T,I),c(I,M),c(I,z),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=[A(b,"change",l[5]),A(B,"click",l[2])],G=!0)},p(L,[V]){V&1&&pt(b,L[0]),L[1]?K||(K=Qn(),K.c(),K.m(Y,H)):K&&(K.d(1),K=null)},i:te,o:te,d(L){L&&w(e),K&&K.d(),G=!1,ve(R)}}}function Ef(l,e,t){let{appConfig:n=null}=e,{onSave:s=null}=e,o="system",r=!1;function u(){n&&t(0,o=n.theme||"system")}async function a(){n&&(t(3,n.theme=o,n),s&&await s(n),t(1,r=!0),setTimeout(()=>t(1,r=!1),2e3))}function d(){o=ll(this),t(0,o)}return l.$$set=_=>{"appConfig"in _&&t(3,n=_.appConfig),"onSave"in _&&t(4,s=_.onSave)},l.$$.update=()=>{l.$$.dirty&8&&n&&u()},[o,r,a,n,s,d]}class Tf extends Ze{constructor(e){super(),Xe(this,e,Ef,jf,Qe,{appConfig:3,onSave:4})}}function Xn(l){let e,t;return{c(){e=f("div"),t=F(l[1]),i(e,"class","notice svelte-1zbky3")},m(n,s){C(n,e,s),c(e,t)},p(n,s){s&2&&U(t,n[1])},d(n){n&&w(e)}}}function Nf(l){let e;return{c(){e=f("p"),e.textContent=`${m("settings.noVaultInfo")}`,i(e,"class","no-data svelte-1zbky3")},m(t,n){C(t,e,n)},p:te,d(t){t&&w(e)}}}function Df(l){let e,t,n,s,o,r=l[0].path+"",u,a,d,_,v,g,b=l[0].dbPath+"",k,y,S,j=l[0].nodeCount!==void 0&&Zn(l),E=l[0].fileCount!==void 0&&xn(l);return{c(){e=f("div"),t=f("div"),n=f("span"),n.textContent=`${m("settings.vaultPath")}`,s=h(),o=f("span"),u=F(r),a=h(),d=f("div"),_=f("span"),_.textContent="DB",v=h(),g=f("span"),k=F(b),y=h(),j&&j.c(),S=h(),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(_,"class","info-label svelte-1zbky3"),i(g,"class","info-value mono small svelte-1zbky3"),i(d,"class","info-row svelte-1zbky3"),i(e,"class","vault-info svelte-1zbky3")},m(D,N){C(D,e,N),c(e,t),c(t,n),c(t,s),c(t,o),c(o,u),c(e,a),c(e,d),c(d,_),c(d,v),c(d,g),c(g,k),c(e,y),j&&j.m(e,null),c(e,S),E&&E.m(e,null)},p(D,N){N&1&&r!==(r=D[0].path+"")&&U(u,r),N&1&&b!==(b=D[0].dbPath+"")&&U(k,b),D[0].nodeCount!==void 0?j?j.p(D,N):(j=Zn(D),j.c(),j.m(e,S)):j&&(j.d(1),j=null),D[0].fileCount!==void 0?E?E.p(D,N):(E=xn(D),E.c(),E.m(e,null)):E&&(E.d(1),E=null)},d(D){D&&w(e),j&&j.d(),E&&E.d()}}}function Zn(l){let e,t,n,s,o=l[0].nodeCount+"",r;return{c(){e=f("div"),t=f("span"),t.textContent="Nodes",n=h(),s=f("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(u,a){C(u,e,a),c(e,t),c(e,n),c(e,s),c(s,r)},p(u,a){a&1&&o!==(o=u[0].nodeCount+"")&&U(r,o)},d(u){u&&w(e)}}}function xn(l){let e,t,n,s,o=l[0].fileCount+"",r;return{c(){e=f("div"),t=f("span"),t.textContent="Files",n=h(),s=f("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(u,a){C(u,e,a),c(e,t),c(e,n),c(e,s),c(s,r)},p(u,a){a&1&&o!==(o=u[0].fileCount+"")&&U(r,o)},d(u){u&&w(e)}}}function Mf(l){let e,t,n,s,o,r,u,a,d,_,v,g,b,k,y,S,j=l[1]&&Xn(l);function E(T,I){return T[0]?Df:Nf}let D=E(l),N=D(l);return{c(){e=f("div"),t=f("h2"),t.textContent=`${m("settings.workspace")}`,n=h(),s=f("p"),s.textContent=`${m("settings.workspaceDesc")}`,o=h(),j&&j.c(),r=h(),u=f("div"),N.c(),a=h(),d=f("div"),_=f("button"),_.textContent=`${m("settings.openVault")}`,v=h(),g=f("button"),g.textContent=`${m("settings.changeVault")}`,b=h(),k=f("button"),k.textContent=`${m("settings.checkIntegrity")}`,i(t,"class","svelte-1zbky3"),i(s,"class","section-desc svelte-1zbky3"),i(u,"class","settings-card svelte-1zbky3"),i(_,"class","btn svelte-1zbky3"),i(g,"class","btn svelte-1zbky3"),i(k,"class","btn svelte-1zbky3"),i(d,"class","workspace-actions svelte-1zbky3"),i(e,"class","settings-section svelte-1zbky3")},m(T,I){C(T,e,I),c(e,t),c(e,n),c(e,s),c(e,o),j&&j.m(e,null),c(e,r),c(e,u),N.m(u,null),c(e,a),c(e,d),c(d,_),c(d,v),c(d,g),c(d,b),c(d,k),y||(S=[A(_,"click",l[2]),A(g,"click",l[4]),A(k,"click",l[3])],y=!0)},p(T,[I]){T[1]?j?j.p(T,I):(j=Xn(T),j.c(),j.m(e,r)):j&&(j.d(1),j=null),D===(D=E(T))&&N?N.p(T,I):(N.d(1),N=D(T),N&&(N.c(),N.m(u,null)))},i:te,o:te,d(T){T&&w(e),j&&j.d(),N.d(),y=!1,ve(S)}}}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 If(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 u(){try{await Ft("OpenVaultFolder")}catch(_){t(1,o=String(_))}}async function a(){try{const _=await Ft("VaultCheck");_.healthy?t(1,o="Vault healthy"):t(1,o="Issues found: "+(_.errors||[]).join("; "))}catch(_){t(1,o=String(_))}}async function d(){try{const _=await Ft("PickDirectory");if(!_)return;const v=await Ft("OpenVault",_);v&&v.status==="ready"&&(t(0,s=await Ft("GetVaultInfo")),n&&n())}catch(_){t(1,o=String(_))}}return l.$$set=_=>{"onRefresh"in _&&t(5,n=_.onRefresh)},[s,o,u,a,d,n]}class Af extends Ze{constructor(e){super(),Xe(this,e,If,Mf,Qe,{onRefresh:5})}}function $n(l,e,t){const n=l.slice();return n[6]=e[t],n}function Ff(l){let e,t=fe(l[0]),n=[];for(let s=0;su(d);return l.$$set=d=>{"onRefresh"in d&&t(3,n=d.onRefresh)},[s,o,u,n,a]}class Vf extends Ze{constructor(e){super(),Xe(this,e,zf,Rf,Qe,{onRefresh:3})}}function Of(l){let e,t,n,s,o,r,u,a;return{c(){e=f("div"),t=f("h2"),t.textContent=`${m("settings.plugins")}`,n=h(),s=f("p"),s.textContent=`${m("settings.noPlugins")}`,o=h(),r=f("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,_){C(d,e,_),c(e,t),c(e,n),c(e,s),c(e,o),c(e,r),u||(a=A(r,"click",Bf),u=!0)},p:te,i:te,o:te,d(d){d&&w(e),u=!1,a()}}}function Wf(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 Bf(){try{await Wf("OpenPluginsFolder")}catch{}}class Hf extends Ze{constructor(e){super(),Xe(this,e,null,Of,Qe,{})}}function Uf(l){let e,t,n,s;return{c(){e=f("div"),t=f("h2"),t.textContent=`${m("settings.files")}`,n=h(),s=f("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){C(o,e,r),c(e,t),c(e,n),c(e,s)},p:te,i:te,o:te,d(o){o&&w(e)}}}class Kf extends Ze{constructor(e){super(),Xe(this,e,null,Uf,Qe,{})}}function Gf(l){let e,t,n,s;return{c(){e=f("div"),t=f("h2"),t.textContent=`${m("settings.activity")}`,n=h(),s=f("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){C(o,e,r),c(e,t),c(e,n),c(e,s)},p:te,i:te,o:te,d(o){o&&w(e)}}}class Jf extends Ze{constructor(e){super(),Xe(this,e,null,Gf,Qe,{})}}function ls(l){let e,t;return{c(){e=f("div"),t=F(l[2]),i(e,"class","error-msg svelte-1fx1e1e")},m(n,s){C(n,e,s),c(e,t)},p(n,s){s[0]&4&&U(t,n[2])},d(n){n&&w(e)}}}function ns(l){let e,t;return{c(){e=f("div"),t=F(l[3]),i(e,"class","result-msg svelte-1fx1e1e"),he(e,"warning",l[4]==="warning")},m(n,s){C(n,e,s),c(e,t)},p(n,s){s[0]&8&&U(t,n[3]),s[0]&16&&he(e,"warning",n[4]==="warning")},d(n){n&&w(e)}}}function qf(l){let e,t,n,s,o,r,u,a,d,_,v,g,b,k,y,S,j,E,D,N,T,I,M=m("settings.checkConnection")+"",z,O,W,J,q=m("common.connect")+"",Y,H,B,G,R,K=l[11]!==null&&ss(l);return{c(){e=f("div"),t=f("div"),n=f("div"),s=f("label"),o=f("span"),o.textContent=`${m("settings.serverUrl")}`,r=h(),u=f("input"),a=h(),d=f("div"),_=f("label"),v=f("span"),v.textContent=`${m("sync.username")}`,g=h(),b=f("input"),k=h(),y=f("div"),S=f("label"),j=f("span"),j.textContent=`${m("sync.password")}`,E=h(),D=f("input"),N=h(),T=f("div"),I=f("button"),z=F(M),W=h(),J=f("button"),Y=F(q),B=h(),K&&K.c(),i(o,"class","label-text"),i(u,"type","text"),i(u,"placeholder","https://example.com"),i(n,"class","form-group svelte-1fx1e1e"),i(v,"class","label-text"),i(b,"type","text"),i(d,"class","form-group svelte-1fx1e1e"),i(j,"class","label-text"),i(D,"type","password"),i(y,"class","form-group svelte-1fx1e1e"),i(I,"class","btn"),I.disabled=O=l[1]||!l[5],i(J,"class","btn btn-primary"),J.disabled=H=l[1]||!l[5]||!l[6]||!l[7],i(T,"class","sync-setup-actions svelte-1fx1e1e"),i(t,"class","sync-setup svelte-1fx1e1e"),i(e,"class","settings-card svelte-1fx1e1e")},m(L,V){C(L,e,V),c(e,t),c(t,n),c(n,s),c(s,o),c(s,r),c(s,u),be(u,l[5]),c(t,a),c(t,d),c(d,_),c(_,v),c(_,g),c(_,b),be(b,l[6]),c(t,k),c(t,y),c(y,S),c(S,j),c(S,E),c(S,D),be(D,l[7]),c(t,N),c(t,T),c(T,I),c(I,z),c(T,W),c(T,J),c(J,Y),c(t,B),K&&K.m(t,null),G||(R=[A(u,"input",l[23]),A(b,"input",l[24]),A(D,"input",l[25]),A(I,"click",l[12]),A(J,"click",l[13])],G=!0)},p(L,V){V[0]&32&&u.value!==L[5]&&be(u,L[5]),V[0]&64&&b.value!==L[6]&&be(b,L[6]),V[0]&128&&D.value!==L[7]&&be(D,L[7]),V[0]&34&&O!==(O=L[1]||!L[5])&&(I.disabled=O),V[0]&226&&H!==(H=L[1]||!L[5]||!L[6]||!L[7])&&(J.disabled=H),L[11]!==null?K?K.p(L,V):(K=ss(L),K.c(),K.m(t,null)):K&&(K.d(1),K=null)},d(L){L&&w(e),K&&K.d(),G=!1,ve(R)}}}function Yf(l){let e,t,n,s,o,r,u=l[20](l[0].lastStatus)+"",a,d,_,v,g,b,k,y,S,j=m("settings.syncNow")+"",E,D,N,T=m("settings.disconnect")+"",I,M,z,O=m("settings.resetKey")+"",W,J,q,Y,H,B,G,R,K,L,V,$,ce=l[0].serverUrl&&is(l),ee=l[0].deviceName&&os(l),ne=l[0].deviceId&&cs(l),le=l[0].lastSyncAt&&rs(l),oe=l[0].lastError&&as(l);return{c(){e=f("div"),t=f("div"),n=f("div"),s=f("span"),s.textContent=`${m("settings.status")}`,o=h(),r=f("span"),a=F(u),d=h(),ce&&ce.c(),_=h(),ee&&ee.c(),v=h(),ne&&ne.c(),g=h(),le&&le.c(),b=h(),oe&&oe.c(),k=h(),y=f("div"),S=f("button"),E=F(j),D=h(),N=f("button"),I=F(T),M=h(),z=f("button"),W=F(O),J=h(),q=f("div"),Y=f("label"),H=f("span"),H.textContent=`${m("sync.interval")}`,B=h(),G=f("div"),R=f("input"),K=h(),L=f("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(S,"class","btn btn-primary"),S.disabled=l[1],i(N,"class","btn"),N.disabled=l[1],i(z,"class","btn"),z.disabled=l[1],i(y,"class","sync-actions svelte-1fx1e1e"),i(H,"class","label-text"),i(R,"type","number"),i(R,"min","0"),i(R,"placeholder","0"),i(R,"class","svelte-1fx1e1e"),i(L,"class","btn btn-sm"),i(G,"class","interval-row svelte-1fx1e1e"),i(q,"class","sync-interval svelte-1fx1e1e")},m(ae,we){C(ae,e,we),c(e,t),c(t,n),c(n,s),c(n,o),c(n,r),c(r,a),c(t,d),ce&&ce.m(t,null),c(t,_),ee&&ee.m(t,null),c(t,v),ne&&ne.m(t,null),c(t,g),le&&le.m(t,null),c(t,b),oe&&oe.m(t,null),C(ae,k,we),C(ae,y,we),c(y,S),c(S,E),c(y,D),c(y,N),c(N,I),c(y,M),c(y,z),c(z,W),C(ae,J,we),C(ae,q,we),c(q,Y),c(Y,H),c(Y,B),c(Y,G),c(G,R),be(R,l[8]),c(G,K),c(G,L),V||($=[A(S,"click",l[14]),A(N,"click",l[16]),A(z,"click",l[18]),A(R,"input",l[22]),A(L,"click",l[15])],V=!0)},p(ae,we){we[0]&1&&u!==(u=ae[20](ae[0].lastStatus)+"")&&U(a,u),we[0]&1&&he(r,"status-ok",ae[0].lastStatus==="connected"),we[0]&1&&he(r,"status-err",ae[0].lastStatus==="error"||ae[0].lastStatus==="revoked"),ae[0].serverUrl?ce?ce.p(ae,we):(ce=is(ae),ce.c(),ce.m(t,_)):ce&&(ce.d(1),ce=null),ae[0].deviceName?ee?ee.p(ae,we):(ee=os(ae),ee.c(),ee.m(t,v)):ee&&(ee.d(1),ee=null),ae[0].deviceId?ne?ne.p(ae,we):(ne=cs(ae),ne.c(),ne.m(t,g)):ne&&(ne.d(1),ne=null),ae[0].lastSyncAt?le?le.p(ae,we):(le=rs(ae),le.c(),le.m(t,b)):le&&(le.d(1),le=null),ae[0].lastError?oe?oe.p(ae,we):(oe=as(ae),oe.c(),oe.m(t,null)):oe&&(oe.d(1),oe=null),we[0]&2&&(S.disabled=ae[1]),we[0]&2&&(N.disabled=ae[1]),we[0]&2&&(z.disabled=ae[1]),we[0]&256&&ol(R.value)!==ae[8]&&be(R,ae[8])},d(ae){ae&&(w(e),w(k),w(y),w(J),w(q)),ce&&ce.d(),ee&&ee.d(),ne&&ne.d(),le&&le.d(),oe&&oe.d(),V=!1,ve($)}}}function ss(l){let e,t=(l[11]?m("common.test")+" OK":m("error.generic"))+"",n;return{c(){e=f("div"),n=F(t),i(e,"class","connection-result svelte-1fx1e1e"),he(e,"ok",l[11]),he(e,"fail",!l[11])},m(s,o){C(s,e,o),c(e,n)},p(s,o){o[0]&2048&&t!==(t=(s[11]?m("common.test")+" OK":m("error.generic"))+"")&&U(n,t),o[0]&2048&&he(e,"ok",s[11]),o[0]&2048&&he(e,"fail",!s[11])},d(s){s&&w(e)}}}function is(l){let e,t,n,s,o=l[0].serverUrl+"",r;return{c(){e=f("div"),t=f("span"),t.textContent=`${m("settings.serverUrl")}`,n=h(),s=f("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(u,a){C(u,e,a),c(e,t),c(e,n),c(e,s),c(s,r)},p(u,a){a[0]&1&&o!==(o=u[0].serverUrl+"")&&U(r,o)},d(u){u&&w(e)}}}function os(l){let e,t,n,s,o=l[0].deviceName+"",r;return{c(){e=f("div"),t=f("span"),t.textContent=`${m("settings.deviceName")}`,n=h(),s=f("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(u,a){C(u,e,a),c(e,t),c(e,n),c(e,s),c(s,r)},p(u,a){a[0]&1&&o!==(o=u[0].deviceName+"")&&U(r,o)},d(u){u&&w(e)}}}function cs(l){let e,t,n,s,o=l[0].deviceId+"",r;return{c(){e=f("div"),t=f("span"),t.textContent=`${m("settings.deviceId")}`,n=h(),s=f("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(u,a){C(u,e,a),c(e,t),c(e,n),c(e,s),c(s,r)},p(u,a){a[0]&1&&o!==(o=u[0].deviceId+"")&&U(r,o)},d(u){u&&w(e)}}}function rs(l){let e,t,n,s,o=l[0].lastSyncAt+"",r;return{c(){e=f("div"),t=f("span"),t.textContent=`${m("settings.lastSync")}`,n=h(),s=f("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(u,a){C(u,e,a),c(e,t),c(e,n),c(e,s),c(s,r)},p(u,a){a[0]&1&&o!==(o=u[0].lastSyncAt+"")&&U(r,o)},d(u){u&&w(e)}}}function as(l){let e,t,n,s,o=l[0].lastError+"",r;return{c(){e=f("div"),t=f("span"),t.textContent=`${m("settings.lastError")}`,n=h(),s=f("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(u,a){C(u,e,a),c(e,t),c(e,n),c(e,s),c(s,r)},p(u,a){a[0]&1&&o!==(o=u[0].lastError+"")&&U(r,o)},d(u){u&&w(e)}}}function us(l){let e,t,n,s,o,r,u,a,d,_,v,g;return{c(){e=f("button"),t=f("div"),n=f("h3"),n.textContent=`${m("settings.confirmDisconnect")}`,s=h(),o=f("p"),o.textContent=`${m("settings.confirmDisconnectDesc")}`,r=h(),u=f("div"),a=f("button"),a.textContent=`${m("common.disconnect")}`,d=h(),_=f("button"),_.textContent=`${m("common.cancel")}`,i(n,"class","svelte-1fx1e1e"),i(o,"class","modal-desc svelte-1fx1e1e"),i(a,"class","btn btn-danger"),i(_,"class","btn"),i(u,"class","modal-actions svelte-1fx1e1e"),i(t,"class","modal svelte-1fx1e1e"),i(e,"class","modal-overlay svelte-1fx1e1e")},m(b,k){C(b,e,k),c(e,t),c(t,n),c(t,s),c(t,o),c(t,r),c(t,u),c(u,a),c(u,d),c(u,_),v||(g=[A(a,"click",l[17]),A(_,"click",l[26]),A(e,"click",l[27])],v=!0)},p:te,d(b){b&&w(e),v=!1,ve(g)}}}function fs(l){let e,t,n,s,o,r,u,a,d,_,v,g;return{c(){e=f("button"),t=f("div"),n=f("h3"),n.textContent=`${m("settings.confirmResetKey")}`,s=h(),o=f("p"),o.textContent=`${m("settings.confirmResetKeyDesc")}`,r=h(),u=f("div"),a=f("button"),a.textContent=`${m("settings.resetKey")}`,d=h(),_=f("button"),_.textContent=`${m("common.cancel")}`,i(n,"class","svelte-1fx1e1e"),i(o,"class","modal-desc svelte-1fx1e1e"),i(a,"class","btn btn-danger"),i(_,"class","btn"),i(u,"class","modal-actions svelte-1fx1e1e"),i(t,"class","modal svelte-1fx1e1e"),i(e,"class","modal-overlay svelte-1fx1e1e")},m(b,k){C(b,e,k),c(e,t),c(t,n),c(t,s),c(t,o),c(t,r),c(t,u),c(u,a),c(u,d),c(u,_),v||(g=[A(a,"click",l[19]),A(_,"click",l[28]),A(e,"click",l[29])],v=!0)},p:te,d(b){b&&w(e),v=!1,ve(g)}}}function Qf(l){let e,t,n,s,o,r,u,a,d,_,v=l[2]&&ls(l),g=l[3]&&!l[2]&&ns(l);function b(E,D){return E[0]&&E[0].enabled?Yf:qf}let k=b(l),y=k(l),S=l[9]&&us(l),j=l[10]&&fs(l);return{c(){e=f("div"),t=f("h2"),t.textContent=`${m("settings.sync")}`,n=h(),s=f("p"),s.textContent=`${m("settings.syncDesc")}`,o=h(),v&&v.c(),r=h(),g&&g.c(),u=h(),y.c(),a=h(),S&&S.c(),d=h(),j&&j.c(),_=it(),i(t,"class","svelte-1fx1e1e"),i(s,"class","section-desc svelte-1fx1e1e"),i(e,"class","settings-section svelte-1fx1e1e")},m(E,D){C(E,e,D),c(e,t),c(e,n),c(e,s),c(e,o),v&&v.m(e,null),c(e,r),g&&g.m(e,null),c(e,u),y.m(e,null),C(E,a,D),S&&S.m(E,D),C(E,d,D),j&&j.m(E,D),C(E,_,D)},p(E,D){E[2]?v?v.p(E,D):(v=ls(E),v.c(),v.m(e,r)):v&&(v.d(1),v=null),E[3]&&!E[2]?g?g.p(E,D):(g=ns(E),g.c(),g.m(e,u)):g&&(g.d(1),g=null),k===(k=b(E))&&y?y.p(E,D):(y.d(1),y=k(E),y&&(y.c(),y.m(e,null))),E[9]?S?S.p(E,D):(S=us(E),S.c(),S.m(d.parentNode,d)):S&&(S.d(1),S=null),E[10]?j?j.p(E,D):(j=fs(E),j.c(),j.m(_.parentNode,_)):j&&(j.d(1),j=null)},i:te,o:te,d(E){E&&(w(e),w(a),w(d),w(_)),v&&v.d(),g&&g.d(),y.d(),S&&S.d(E),j&&j.d(E)}}}function Ct(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 Xf(l,e,t){let{onRefresh:n=null}=e,s=null,o=!1,r="",u="",a="",d="",_="",v="",g=0,b=!1,k=!1,y=null;async function S(){try{t(0,s=await Ct("GetSyncSettings")),s&&(t(5,d=s.serverUrl||""),t(8,g=s.syncInterval||0))}catch{t(0,s=null)}}S();async function j(){t(1,o=!0),t(2,r=""),t(4,a=""),t(11,y=null);try{await Ct("SyncTestConnection",d,_,v),t(11,y=!0),t(3,u="connection ok")}catch(L){t(11,y=!1),t(3,u="connection failed: "+String(L))}t(1,o=!1)}async function E(){t(1,o=!0),t(2,r=""),t(4,a="");try{await Ct("SyncConfigure",d,_,v),t(3,u="configured"),t(6,_=""),t(7,v=""),await S(),n&&n()}catch(L){t(2,r=String(L))}t(1,o=!1)}function D(L){const V=Array.isArray(L==null?void 0:L.conflicts)?L.conflicts:[],$=Array.isArray(L==null?void 0:L.applyErrors)?L.applyErrors:[],ce=[];return V.length>0&&ce.push(m("sync.conflictsCount",{count:V.length})),$.length>0&&ce.push(m("sync.applyErrorsCount",{count:$.length})),ce.join(" · ")}async function N(){t(1,o=!0),t(2,r=""),t(4,a="");try{const L=await Ct("SyncNow"),V=m("sync.pushedPulled",{pushed:(L==null?void 0:L.pushed)||0,pulled:(L==null?void 0:L.pulled)||0}),$=D(L);t(3,u=$?V+" · "+$:V),t(4,a=$?"warning":""),await S(),n&&n()}catch(L){t(2,r=String(L))}t(1,o=!1)}async function T(){try{await Ct("SyncSetInterval",g),t(3,u=m("sync.settingsSaved")),t(4,a="")}catch(L){t(2,r=String(L))}}function I(){t(9,b=!0)}async function M(){t(9,b=!1),t(1,o=!0),t(4,a="");try{await Ct("SyncDisconnect"),t(3,u="disconnected"),await S(),n&&n()}catch(L){t(2,r=String(L))}t(1,o=!1)}function z(){t(10,k=!0)}async function O(){t(10,k=!1),t(1,o=!0),t(4,a="");try{await Ct("ResetSyncKey"),t(3,u="key reset"),await S(),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(){g=ol(this.value),t(8,g)}function q(){d=this.value,t(5,d)}function Y(){_=this.value,t(6,_)}function H(){v=this.value,t(7,v)}const B=()=>t(9,b=!1),G=()=>t(9,b=!1),R=()=>t(10,k=!1),K=()=>t(10,k=!1);return l.$$set=L=>{"onRefresh"in L&&t(21,n=L.onRefresh)},[s,o,r,u,a,d,_,v,g,b,k,y,j,E,N,T,I,M,z,O,W,n,J,q,Y,H,B,G,R,K]}class Zf extends Ze{constructor(e){super(),Xe(this,e,Xf,Qf,Qe,{onRefresh:21},null,[-1,-1])}}function xf(l){let e,t,n,s;return{c(){e=f("div"),t=f("h2"),t.textContent=`${m("settings.backup")}`,n=h(),s=f("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){C(o,e,r),c(e,t),c(e,n),c(e,s)},p:te,i:te,o:te,d(o){o&&w(e)}}}class $f extends Ze{constructor(e){super(),Xe(this,e,null,xf,Qe,{})}}const{window:ed}=Ol;function td(l){let e,t;return e=new $f({}),{c(){Je(e.$$.fragment)},m(n,s){He(e,n,s),t=!0},p:te,i(n){t||(re(e.$$.fragment,n),t=!0)},o(n){de(e.$$.fragment,n),t=!1},d(n){Ue(e,n)}}}function ld(l){let e,t;return e=new Zf({props:{onRefresh:l[6]}}),{c(){Je(e.$$.fragment)},m(n,s){He(e,n,s),t=!0},p:te,i(n){t||(re(e.$$.fragment,n),t=!0)},o(n){de(e.$$.fragment,n),t=!1},d(n){Ue(e,n)}}}function nd(l){let e,t;return e=new Jf({}),{c(){Je(e.$$.fragment)},m(n,s){He(e,n,s),t=!0},p:te,i(n){t||(re(e.$$.fragment,n),t=!0)},o(n){de(e.$$.fragment,n),t=!1},d(n){Ue(e,n)}}}function sd(l){let e,t;return e=new Kf({}),{c(){Je(e.$$.fragment)},m(n,s){He(e,n,s),t=!0},p:te,i(n){t||(re(e.$$.fragment,n),t=!0)},o(n){de(e.$$.fragment,n),t=!1},d(n){Ue(e,n)}}}function id(l){let e,t;return e=new Hf({}),{c(){Je(e.$$.fragment)},m(n,s){He(e,n,s),t=!0},p:te,i(n){t||(re(e.$$.fragment,n),t=!0)},o(n){de(e.$$.fragment,n),t=!1},d(n){Ue(e,n)}}}function od(l){let e,t;return e=new Vf({props:{onRefresh:l[2]}}),{c(){Je(e.$$.fragment)},m(n,s){He(e,n,s),t=!0},p:te,i(n){t||(re(e.$$.fragment,n),t=!0)},o(n){de(e.$$.fragment,n),t=!1},d(n){Ue(e,n)}}}function cd(l){let e,t;return e=new Af({props:{onRefresh:l[2]}}),{c(){Je(e.$$.fragment)},m(n,s){He(e,n,s),t=!0},p:te,i(n){t||(re(e.$$.fragment,n),t=!0)},o(n){de(e.$$.fragment,n),t=!1},d(n){Ue(e,n)}}}function rd(l){let e,t;return e=new Tf({props:{appConfig:l[1],onSave:l[5]}}),{c(){Je(e.$$.fragment)},m(n,s){He(e,n,s),t=!0},p(n,s){const o={};s&2&&(o.appConfig=n[1]),e.$set(o)},i(n){t||(re(e.$$.fragment,n),t=!0)},o(n){de(e.$$.fragment,n),t=!1},d(n){Ue(e,n)}}}function ad(l){let e,t,n,s,o,r,u,a,d,_,v,g,b,k,y,S;d=new Sf({props:{activeSection:l[0],onSelect:l[3]}});const j=[rd,cd,od,id,sd,nd,ld,td],E=[];function D(N,T){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~(g=D(l))&&(b=E[g]=j[g](l)),{c(){e=f("button"),t=f("div"),n=f("div"),s=f("h2"),s.textContent=`${m("settings.title")}`,o=h(),r=f("button"),r.innerHTML='',u=h(),a=f("div"),Je(d.$$.fragment),_=h(),v=f("div"),b&&b.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(v,"class","settings-content svelte-zf2zsc"),i(a,"class","settings-body svelte-zf2zsc"),i(t,"class","settings-window svelte-zf2zsc"),i(e,"class","settings-overlay svelte-zf2zsc")},m(N,T){C(N,e,T),c(e,t),c(t,n),c(n,s),c(n,o),c(n,r),c(t,u),c(t,a),He(d,a,null),c(a,_),c(a,v),~g&&E[g].m(v,null),k=!0,y||(S=[A(ed,"keydown",l[7]),A(r,"click",l[4]),A(e,"click",ft(l[4]))],y=!0)},p(N,[T]){const I={};T&1&&(I.activeSection=N[0]),d.$set(I);let M=g;g=D(N),g===M?~g&&E[g].p(N,T):(b&&(nt(),de(E[M],1,1,()=>{E[M]=null}),st()),~g?(b=E[g],b?b.p(N,T):(b=E[g]=j[g](N),b.c()),re(b,1),b.m(v,null)):b=null)},i(N){k||(re(d.$$.fragment,N),re(b),k=!0)},o(N){de(d.$$.fragment,N),de(b),k=!1},d(N){N&&w(e),Ue(d),~g&&E[g].d(),y=!1,ve(S)}}}function ds(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 ud(l,e,t){let{onClose:n=null}=e,{onSyncRefresh:s=null}=e,{initialSection:o="general"}=e,r=o,u=null;async function a(){try{t(1,u=await ds("GetAppConfig"))}catch{t(1,u=null)}}a();function d(k){t(0,r=k)}function _(){n&&n()}async function v(k){try{await ds("SaveAppConfig",k),t(1,u=k)}catch(y){console.error(y)}}function g(){s&&s()}function b(k){k.key==="Escape"&&_()}return l.$$set=k=>{"onClose"in k&&t(8,n=k.onClose),"onSyncRefresh"in k&&t(9,s=k.onSyncRefresh),"initialSection"in k&&t(10,o=k.initialSection)},[r,u,a,d,_,v,g,b,n,s,o]}class fd extends Ze{constructor(e){super(),Xe(this,e,ud,ad,Qe,{onClose:8,onSyncRefresh:9,initialSection:10})}}function dd(l){let e,t,n,s,o,r,u,a;return{c(){e=f("div"),t=f("span"),n=h(),s=f("span"),s.textContent=`${m("sync.status.disabled")}`,o=h(),r=f("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,_){C(d,e,_),c(e,t),c(e,n),c(e,s),c(e,o),c(e,r),u||(a=A(r,"click",function(){mt(l[5])&&l[5].apply(this,arguments)}),u=!0)},p(d,_){l=d},d(d){d&&w(e),u=!1,a()}}}function pd(l){let e,t,n,s,o,r=l[7](l[0])+"",u,a,d,_,v,g=(l[1]?m("sync.running"):m("sync.run"))+"",b,k,y,S,j,E,D,N=l[0].unpushedOps>0&&ps(l),T=l[2]&&ms(l);return{c(){e=f("div"),t=f("span"),s=h(),o=f("span"),u=F(r),a=h(),N&&N.c(),d=h(),_=f("div"),v=f("button"),b=F(g),k=h(),y=f("button"),y.textContent=`${m("sync.details")}`,S=h(),T&&T.c(),j=it(),i(t,"class",n="sync-dot "+l[6](l[0])+" svelte-1rxbx0"),i(o,"class","sync-label svelte-1rxbx0"),i(v,"class","btn btn-xs svelte-1rxbx0"),v.disabled=l[1],i(y,"class","btn btn-xs btn-link svelte-1rxbx0"),i(_,"class","sync-actions-row svelte-1rxbx0"),i(e,"class","sync-status-row svelte-1rxbx0")},m(I,M){C(I,e,M),c(e,t),c(e,s),c(e,o),c(o,u),c(e,a),N&&N.m(e,null),c(e,d),c(e,_),c(_,v),c(v,b),c(_,k),c(_,y),C(I,S,M),T&&T.m(I,M),C(I,j,M),E||(D=[A(v,"click",function(){mt(l[4])&&l[4].apply(this,arguments)}),A(y,"click",function(){mt(l[5])&&l[5].apply(this,arguments)})],E=!0)},p(I,M){l=I,M&1&&n!==(n="sync-dot "+l[6](l[0])+" svelte-1rxbx0")&&i(t,"class",n),M&1&&r!==(r=l[7](l[0])+"")&&U(u,r),l[0].unpushedOps>0?N?N.p(l,M):(N=ps(l),N.c(),N.m(e,d)):N&&(N.d(1),N=null),M&2&&g!==(g=(l[1]?m("sync.running"):m("sync.run"))+"")&&U(b,g),M&2&&(v.disabled=l[1]),l[2]?T?T.p(l,M):(T=ms(l),T.c(),T.m(j.parentNode,j)):T&&(T.d(1),T=null)},d(I){I&&(w(e),w(S),w(j)),N&&N.d(),T&&T.d(I),E=!1,ve(D)}}}function ps(l){let e,t=l[0].unpushedOps+"",n,s,o=m("sync.changes")+"",r;return{c(){e=f("span"),n=F(t),s=h(),r=F(o),i(e,"class","sync-count svelte-1rxbx0")},m(u,a){C(u,e,a),c(e,n),c(e,s),c(e,r)},p(u,a){a&1&&t!==(t=u[0].unpushedOps+"")&&U(n,t)},d(u){u&&w(e)}}}function ms(l){let e,t,n;return{c(){e=f("div"),t=F(l[2]),i(e,"class",n=Nn(l[3]==="warning"?"sync-message sync-message-warning":"sync-message")+" svelte-1rxbx0")},m(s,o){C(s,e,o),c(e,t)},p(s,o){o&4&&U(t,s[2]),o&8&&n!==(n=Nn(s[3]==="warning"?"sync-message sync-message-warning":"sync-message")+" svelte-1rxbx0")&&i(e,"class",n)},d(s){s&&w(e)}}}function md(l){let e;function t(o,r){var u;return(u=o[0])!=null&&u.configured?pd:dd}let n=t(l),s=n(l);return{c(){e=f("div"),s.c(),i(e,"class","sync-status-widget svelte-1rxbx0")},m(o,r){C(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:te,o:te,d(o){o&&w(e),s.d()}}}function _d(l,e,t){let{syncStatus:n=null}=e,{syncLoading:s=!1}=e,{syncMessage:o=""}=e,{syncMessageKind:r=""}=e,{onSync:u=null}=e,{onOpenSettings:a=null}=e;function d(v){return!v||!v.configured?"dot-disabled":s?"dot-syncing":v.revoked?"dot-disabled":v.connected?"dot-connected":v.configured?"dot-warning":"dot-disabled"}function _(v){return!v||!v.configured?m("sync.status.disabled"):s?m("sync.status.syncing"):v.revoked?m("sync.status.error"):v.connected?m("sync.status.connected"):m("sync.status.disconnected")}return l.$$set=v=>{"syncStatus"in v&&t(0,n=v.syncStatus),"syncLoading"in v&&t(1,s=v.syncLoading),"syncMessage"in v&&t(2,o=v.syncMessage),"syncMessageKind"in v&&t(3,r=v.syncMessageKind),"onSync"in v&&t(4,u=v.onSync),"onOpenSettings"in v&&t(5,a=v.onOpenSettings)},[n,s,o,r,u,a,d,_]}class vd extends Ze{constructor(e){super(),Xe(this,e,_d,md,Qe,{syncStatus:0,syncLoading:1,syncMessage:2,syncMessageKind:3,onSync:4,onOpenSettings:5})}}const{Boolean:Bo}=Ol;function _s(l,e,t){const n=l.slice();return n[323]=e[t],n}function vs(l,e,t){const n=l.slice();return n[326]=e[t],n}function gs(l,e,t){const n=l.slice();return n[326]=e[t],n}function hs(l,e,t){const n=l.slice();return n[347]=e[t],n}function bs(l,e,t){const n=l.slice();return n[347]=e[t],n}function ks(l,e,t){const n=l.slice();return n[378]=e[t],n}function ys(l,e,t){const n=l.slice();return n[347]=e[t],n}function ws(l,e,t){const n=l.slice();return n[350]=e[t],n[383]=e,n[384]=t,n}function Cs(l,e,t){const n=l.slice();return n[347]=e[t],n}function Ss(l,e,t){const n=l.slice();return n[360]=e[t],n}function js(l,e,t){const n=l.slice();return n[347]=e[t],n}function Es(l,e,t){const n=l.slice();return n[365]=e[t],n}function Ts(l,e,t){const n=l.slice();return n[365]=e[t],n}function Ns(l,e,t){const n=l.slice();return n[350]=e[t],n[370]=e,n[371]=t,n}function Ds(l,e,t){const n=l.slice();return n[347]=e[t],n}function Ms(l,e,t){const n=l.slice();return n[360]=e[t],n}function Is(l,e,t){const n=l.slice();return n[347]=e[t],n}function As(l,e,t){const n=l.slice();return n[331]=e[t],n}function Fs(l,e,t){const n=l.slice();return n[347]=e[t],n}function Ps(l,e,t){const n=l.slice();return n[350]=e[t],n[351]=e,n[352]=t,n}function Ls(l,e,t){const n=l.slice();return n[347]=e[t],n}function Rs(l,e,t){const n=l.slice();return n[342]=e[t],n}function zs(l,e,t){const n=l.slice();return n[339]=e[t],n}function Vs(l,e,t){const n=l.slice();return n[334]=e[t],n}function Os(l,e,t){const n=l.slice();return n[331]=e[t],n}function Ws(l,e,t){const n=l.slice();return n[334]=e[t],n}function Bs(l,e,t){const n=l.slice();return n[357]=e[t],n}function Hs(l,e,t){const n=l.slice();return n[389]=e[t],n}function Us(l,e,t){const n=l.slice();return n[392]=e[t],n}function gd(l){let e,t,n,s,o,r,u,a,d,_,v,g,b,k,y,S,j,E,D,N,T,I,M,z,O,W,J,q,Y,H,B,G,R,K,L,V,$,ce,ee,ne,le,oe,ae,we,ze,Ie,X,Z,ue,Se,me=fe(l[4]),ke=[];for(let x=0;x0?0:1}D=xe(l),N=We[D]=qe[D](l),M=new vd({props:{syncStatus:l[78],syncLoading:l[79],syncMessage:l[80],syncMessageKind:l[81],onSync:l[166],onOpenSettings:l[171]}});function Ke(x,ge){return x[26]?Sd:x[25]?Cd:wd}let De=Ke(l),Le=De(l),ye=l[24]&&qs(l);const Ve=[Md,Dd,Nd,Td,Ed,jd],Ne=[];function Oe(x,ge){return x[29]?0:x[26]?1:x[25]==="journal"?2:x[25]==="today"&&x[7]?3:x[25]==="activity"?4:5}ce=Oe(l),ee=Ne[ce]=Ve[ce](l);let je=l[43]&&oo(l),Te=l[47].visible&&ao(l),Me=l[32]&&mo(l),Ee=l[50]&&_o(l),Ae=l[57]&&l[56]&&go(l),Ge=l[75]&&bo(l),Ce=l[70]&&yo(l),_e=l[3]&&wo(l);return{c(){e=f("div"),t=f("aside"),n=f("div"),s=f("span"),s.textContent="⚒",o=h(),r=f("span"),r.textContent=`${m("nav.brand")}`,u=h(),a=f("nav"),d=f("div"),_=f("div"),_.textContent=`${m("nav.system")}`,v=h();for(let x=0;x',J=h(),q=f("span"),Y=F(l[23]),H=h(),B=f("main"),G=f("header"),R=f("div"),Le.c(),K=h(),L=f("div"),L.innerHTML="",V=h(),ye&&ye.c(),$=h(),ee.c(),ne=h(),je&&je.c(),le=h(),Te&&Te.c(),oe=h(),Me&&Me.c(),ae=h(),Ee&&Ee.c(),we=h(),Ae&&Ae.c(),ze=h(),Ge&&Ge.c(),Ie=h(),Ce&&Ce.c(),X=h(),_e&&_e.c(),i(s,"class","logo svelte-pldmec"),i(r,"class","brand-name svelte-pldmec"),i(n,"class","sidebar-brand svelte-pldmec"),i(_,"class","nav-label svelte-pldmec"),i(d,"class","nav-group svelte-pldmec"),i(y,"class","svelte-pldmec"),i(j,"class","nav-add-btn svelte-pldmec"),i(j,"title",m("common.create")),i(k,"class","nav-label-row svelte-pldmec"),i(b,"class","nav-group svelte-pldmec"),i(a,"class","sidebar-nav svelte-pldmec"),i(W,"class","sidebar-settings-btn svelte-pldmec"),i(W,"title",m("common.settings")),i(q,"class","version svelte-pldmec"),i(O,"class","sidebar-footer-row svelte-pldmec"),i(I,"class","sidebar-footer svelte-pldmec"),i(t,"class","sidebar svelte-pldmec"),i(R,"class","header-left svelte-pldmec"),i(L,"class","header-right svelte-pldmec"),i(G,"class","header svelte-pldmec"),i(B,"class","main svelte-pldmec"),i(e,"class","app svelte-pldmec")},m(x,ge){C(x,e,ge),c(e,t),c(t,n),c(n,s),c(n,o),c(n,r),c(t,u),c(t,a),c(a,d),c(d,_),c(d,v);for(let Fe=0;Fe{We[Fe]=null}),st(),N=We[D],N?N.p(x,ge):(N=We[D]=qe[D](x),N.c()),re(N,1),N.m(b,null));const ot={};ge[2]&65536&&(ot.syncStatus=x[78]),ge[2]&131072&&(ot.syncLoading=x[79]),ge[2]&262144&&(ot.syncMessage=x[80]),ge[2]&524288&&(ot.syncMessageKind=x[81]),M.$set(ot),(!Z||ge[0]&8388608)&&U(Y,x[23]),De===(De=Ke(x))&&Le?Le.p(x,ge):(Le.d(1),Le=De(x),Le&&(Le.c(),Le.m(R,null))),x[24]?ye?ye.p(x,ge):(ye=qs(x),ye.c(),ye.m(B,$)):ye&&(ye.d(1),ye=null);let tt=ce;ce=Oe(x),ce===tt?Ne[ce].p(x,ge):(nt(),de(Ne[tt],1,1,()=>{Ne[tt]=null}),st(),ee=Ne[ce],ee?ee.p(x,ge):(ee=Ne[ce]=Ve[ce](x),ee.c()),re(ee,1),ee.m(B,ne)),x[43]?je?(je.p(x,ge),ge[1]&4096&&re(je,1)):(je=oo(x),je.c(),re(je,1),je.m(B,le)):je&&(nt(),de(je,1,1,()=>{je=null}),st()),x[47].visible?Te?(Te.p(x,ge),ge[1]&65536&&re(Te,1)):(Te=ao(x),Te.c(),re(Te,1),Te.m(B,oe)):Te&&(nt(),de(Te,1,1,()=>{Te=null}),st()),x[32]?Me?Me.p(x,ge):(Me=mo(x),Me.c(),Me.m(B,ae)):Me&&(Me.d(1),Me=null),x[50]?Ee?Ee.p(x,ge):(Ee=_o(x),Ee.c(),Ee.m(B,we)):Ee&&(Ee.d(1),Ee=null),x[57]&&x[56]?Ae?Ae.p(x,ge):(Ae=go(x),Ae.c(),Ae.m(B,ze)):Ae&&(Ae.d(1),Ae=null),x[75]?Ge?Ge.p(x,ge):(Ge=bo(x),Ge.c(),Ge.m(B,Ie)):Ge&&(Ge.d(1),Ge=null),x[70]?Ce?(Ce.p(x,ge),ge[2]&256&&re(Ce,1)):(Ce=yo(x),Ce.c(),re(Ce,1),Ce.m(B,X)):Ce&&(nt(),de(Ce,1,1,()=>{Ce=null}),st()),x[3]?_e?(_e.p(x,ge),ge[0]&8&&re(_e,1)):(_e=wo(x),_e.c(),re(_e,1),_e.m(B,null)):_e&&(nt(),de(_e,1,1,()=>{_e=null}),st())},i(x){Z||(re(N),re(M.$$.fragment,x),re(ee),re(je),re(Te),re(Ce),re(_e),Z=!0)},o(x){de(N),de(M.$$.fragment,x),de(ee),de(je),de(Te),de(Ce),de(_e),Z=!1},d(x){x&&w(e),Re(ke,x),We[D].d(),Ue(M),Le.d(),ye&&ye.d(),Ne[ce].d(),je&&je.d(),Te&&Te.d(),Me&&Me.d(),Ee&&Ee.d(),Ae&&Ae.d(),Ge&&Ge.d(),Ce&&Ce.d(),_e&&_e.d(),ue=!1,ve(Se)}}}function hd(l){var n;let e,t;return e=new pf({props:{vaultPath:((n=l[0])==null?void 0:n.vaultPath)||"",onComplete:l[168]}}),{c(){Je(e.$$.fragment)},m(s,o){He(e,s,o),t=!0},p(s,o){var u;const r={};o[0]&1&&(r.vaultPath=((u=s[0])==null?void 0:u.vaultPath)||""),e.$set(r)},i(s){t||(re(e.$$.fragment,s),t=!0)},o(s){de(e.$$.fragment,s),t=!1},d(s){Ue(e,s)}}}function bd(l){let e,t;return e=new uf({props:{onComplete:l[167]}}),{c(){Je(e.$$.fragment)},m(n,s){He(e,n,s),t=!0},p:te,i(n){t||(re(e.$$.fragment,n),t=!0)},o(n){de(e.$$.fragment,n),t=!1},d(n){Ue(e,n)}}}function Ks(l){let e,t;return{c(){e=f("span"),t=F(l[42]),i(e,"class","nav-badge svelte-pldmec")},m(n,s){C(n,e,s),c(e,t)},p(n,s){s[1]&2048&&U(t,n[42])},d(n){n&&w(e)}}}function Gs(l){let e,t=l[392].label+"",n,s,o,r,u,a,d=l[392].id==="journal"&&l[42]>0&&Ks(l);function _(){return l[170](l[392])}return{c(){e=f("button"),n=F(t),s=h(),d&&d.c(),o=h(),i(e,"class",r="nav-item "+(l[25]===l[392].id?"selected":"")+" svelte-pldmec")},m(v,g){C(v,e,g),c(e,n),c(e,s),d&&d.m(e,null),c(e,o),u||(a=A(e,"click",_),u=!0)},p(v,g){l=v,g[0]&16&&t!==(t=l[392].label+"")&&U(n,t),l[392].id==="journal"&&l[42]>0?d?d.p(l,g):(d=Ks(l),d.c(),d.m(e,o)):d&&(d.d(1),d=null),g[0]&33554448&&r!==(r="nav-item "+(l[25]===l[392].id?"selected":"")+" svelte-pldmec")&&i(e,"class",r)},d(v){v&&w(e),d&&d.d(),u=!1,a()}}}function kd(l){let e;return{c(){e=f("div"),e.textContent=`${m("nav.noNodes")}`,i(e,"class","nav-empty svelte-pldmec")},m(t,n){C(t,e,n)},p:te,i:te,o:te,d(t){t&&w(e)}}}function yd(l){var r;let e,t,n,s,o;return t=new Wo({props:{nodes:l[5],expanded:l[58],selectedNodeId:((r=l[26])==null?void 0:r.id)||"",onSelect:l[87],onToggle:l[117],onContextMenu:l[115],onDrop:l[118]}}),{c(){e=f("div"),Je(t.$$.fragment),i(e,"class","workspace-tree-area svelte-pldmec"),i(e,"role","region"),i(e,"aria-label",m("nav.workspace")),he(e,"drop-valid",l[69])},m(u,a){C(u,e,a),He(t,e,null),n=!0,s||(o=[A(e,"dragover",Wl(l[120])),A(e,"dragleave",l[121]),A(e,"drop",l[119])],s=!0)},p(u,a){var _;const d={};a[0]&32&&(d.nodes=u[5]),a[1]&134217728&&(d.expanded=u[58]),a[0]&67108864&&(d.selectedNodeId=((_=u[26])==null?void 0:_.id)||""),t.$set(d),(!n||a[2]&128)&&he(e,"drop-valid",u[69])},i(u){n||(re(t.$$.fragment,u),n=!0)},o(u){de(t.$$.fragment,u),n=!1},d(u){u&&w(e),Ue(t),s=!1,ve(o)}}}function wd(l){let e;return{c(){e=f("span"),e.textContent=`${m("nav.selectPrompt")}`,i(e,"class","crumb placeholder svelte-pldmec")},m(t,n){C(t,e,n)},p:te,d(t){t&&w(e)}}}function Cd(l){let e,t=fe(l[4]),n=[];for(let s=0;s',i(o,"class","dismiss-btn svelte-pldmec"),i(o,"aria-label","Dismiss"),i(e,"class","error-banner svelte-pldmec"),i(e,"role","button"),i(e,"tabindex","0")},m(a,d){C(a,e,d),c(e,n),c(e,s),c(e,o),r||(u=[A(o,"click",Be(l[173])),A(e,"click",l[174]),A(e,"keydown",function(){mt(at(l[175]))&&at(l[175]).apply(this,arguments)})],r=!0)},p(a,d){l=a,d[0]&16777216&&t!==(t=l[83](l[24])+"")&&U(n,t)},d(a){a&&w(e),r=!1,ve(u)}}}function jd(l){let e,t,n;function s(u,a){if(u[54])return Fd;if(u[4].length>0)return Ad;if(u[24])return Id}let o=s(l),r=o&&o(l);return{c(){e=f("div"),t=f("h2"),t.textContent=`${m("welcome.title")}`,n=h(),r&&r.c(),i(t,"class","svelte-pldmec"),i(e,"class","welcome svelte-pldmec")},m(u,a){C(u,e,a),c(e,t),c(e,n),r&&r.m(e,null)},p(u,a){o===(o=s(u))&&r?r.p(u,a):(r&&r.d(1),r=o&&o(u),r&&(r.c(),r.m(e,null)))},i:te,o:te,d(u){u&&w(e),r&&r.d()}}}function Ed(l){let e,t,n,s;function o(a,d){return a[8].length===0?Ld:Pd}let r=o(l),u=r(l);return{c(){e=f("div"),t=f("div"),n=f("h2"),n.textContent=`${m("activity.title")}`,s=h(),u.c(),i(n,"class","svelte-pldmec"),i(t,"class","activity-feed-header svelte-pldmec"),i(e,"class","activity-feed svelte-pldmec")},m(a,d){C(a,e,d),c(e,t),c(t,n),c(e,s),u.m(e,null)},p(a,d){r===(r=o(a))&&u?u.p(a,d):(u.d(1),u=r(a),u&&(u.c(),u.m(e,null)))},i:te,o:te,d(a){a&&w(e),u.d()}}}function Td(l){let e,t,n,s,o,r=l[7].date+"",u,a,d,_,v=l[7].summary&&Xs(l),g=l[41].length>0&&ei(l);function b(S,j){return S[7].groups&&S[7].groups.length>0?zd:Rd}let k=b(l),y=k(l);return{c(){e=f("div"),t=f("div"),n=f("h2"),n.textContent=`${m("today.title")}`,s=h(),o=f("span"),u=F(r),a=h(),v&&v.c(),d=h(),g&&g.c(),_=h(),y.c(),i(n,"class","svelte-pldmec"),i(o,"class","today-date svelte-pldmec"),i(t,"class","today-header svelte-pldmec"),i(e,"class","today-dashboard svelte-pldmec")},m(S,j){C(S,e,j),c(e,t),c(t,n),c(t,s),c(t,o),c(o,u),c(e,a),v&&v.m(e,null),c(e,d),g&&g.m(e,null),c(e,_),y.m(e,null)},p(S,j){j[0]&128&&r!==(r=S[7].date+"")&&U(u,r),S[7].summary?v?v.p(S,j):(v=Xs(S),v.c(),v.m(e,d)):v&&(v.d(1),v=null),S[41].length>0?g?g.p(S,j):(g=ei(S),g.c(),g.m(e,_)):g&&(g.d(1),g=null),k===(k=b(S))&&y?y.p(S,j):(y.d(1),y=k(S),y&&(y.c(),y.m(e,null)))},i:te,o:te,d(S){S&&w(e),v&&v.d(),g&&g.d(),y.d()}}}function Nd(l){let e,t,n,s,o,r,u,a,d,_,v,g,b,k,y,S,j,E,D,N,T,I,M,z,O,W,J,q,Y,H,B,G,R,K,L,V,$,ce,ee,ne,le,oe,ae,we,ze,Ie,X,Z,ue,Se,me,ke,qe,We,xe,Ke,De,Le,ye;function Ve(_e,x){return _e[17]?Bd:Wd}let Ne=Ve(l),Oe=Ne(l),je=l[14]&&pi(l),Te=l[18]&&mi(l),Me=l[41].length>0&&_i(l),Ee=l[10]&&ki(l);function Ae(_e,x){return _e[9].length===0?Ud:Hd}let Ge=Ae(l),Ce=Ge(l);return{c(){e=f("div"),t=f("div"),n=f("h2"),n.textContent=`${m("journal.title")}`,s=h(),o=f("div"),r=f("div"),r.textContent=`${m("journal.filterHeading")}`,u=h(),a=f("div"),d=f("label"),_=f("span"),_.textContent=`${m("journal.dateFrom")}`,v=h(),g=f("input"),b=h(),k=f("label"),y=f("span"),y.textContent=`${m("journal.dateTo")}`,S=h(),j=f("input"),E=h(),D=f("label"),N=f("span"),N.textContent=`${m("journal.node")}`,T=h(),I=f("div"),Oe.c(),M=h(),je&&je.c(),z=h(),O=f("label"),W=f("span"),W.textContent=`${m("journal.billable")}`,J=h(),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=h(),R=f("label"),K=f("span"),K.textContent=`${m("journal.approx")}`,L=h(),V=f("select"),$=f("option"),$.textContent=`${m("common.all")}`,ce=f("option"),ce.textContent=`${m("journal.approxExact")}`,ee=f("option"),ee.textContent=`${m("journal.approxEstimated")}`,ne=h(),le=f("button"),le.textContent=`${m("journal.filter")}`,oe=h(),ae=f("button"),ae.textContent=`${m("journal.reset")}`,we=h(),ze=f("div"),Ie=f("div"),Ie.textContent=`${m("journal.exportHeading")}`,X=h(),Z=f("div"),ue=f("button"),ue.textContent=`${m("journal.exportCSV")}`,Se=h(),me=f("button"),me.textContent=`${m("journal.exportMarkdown")}`,ke=h(),qe=f("button"),qe.textContent="PDF",We=h(),Te&&Te.c(),xe=h(),Me&&Me.c(),Ke=h(),Ee&&Ee.c(),De=h(),Ce.c(),i(n,"class","svelte-pldmec"),i(r,"class","journal-filter-heading svelte-pldmec"),i(_,"class","label-text svelte-pldmec"),i(g,"type","date"),i(g,"class","svelte-pldmec"),i(d,"class","svelte-pldmec"),i(y,"class","label-text svelte-pldmec"),i(j,"type","date"),i(j,"class","svelte-pldmec"),i(k,"class","svelte-pldmec"),i(N,"class","label-text svelte-pldmec"),i(I,"class","journal-node-picker svelte-pldmec"),rt(I,"position","relative"),i(D,"class","svelte-pldmec"),i(W,"class","label-text svelte-pldmec"),Y.__value="all",be(Y,Y.__value),i(Y,"class","svelte-pldmec"),H.__value="yes",be(H,H.__value),i(H,"class","svelte-pldmec"),B.__value="no",be(B,B.__value),i(B,"class","svelte-pldmec"),i(q,"class","svelte-pldmec"),l[15]===void 0&&jt(()=>l[226].call(q)),i(O,"title",m("journal.billableHint")),i(O,"class","svelte-pldmec"),i(K,"class","label-text svelte-pldmec"),$.__value="all",be($,$.__value),i($,"class","svelte-pldmec"),ce.__value="no",be(ce,ce.__value),i(ce,"class","svelte-pldmec"),ee.__value="yes",be(ee,ee.__value),i(ee,"class","svelte-pldmec"),i(V,"class","svelte-pldmec"),l[16]===void 0&&jt(()=>l[227].call(V)),i(R,"title",m("journal.approxHint")),i(R,"class","svelte-pldmec"),i(le,"class","btn btn-sm svelte-pldmec"),i(ae,"class","btn btn-sm svelte-pldmec"),i(a,"class","journal-filters-row svelte-pldmec"),i(o,"class","journal-filter-section svelte-pldmec"),i(Ie,"class","journal-export-heading svelte-pldmec"),i(ue,"class","btn btn-sm svelte-pldmec"),i(me,"class","btn btn-sm svelte-pldmec"),i(qe,"class","btn btn-sm svelte-pldmec"),i(Z,"class","journal-export-row svelte-pldmec"),i(ze,"class","journal-export-section svelte-pldmec"),i(t,"class","journal-header svelte-pldmec"),i(e,"class","journal-screen svelte-pldmec")},m(_e,x){C(_e,e,x),c(e,t),c(t,n),c(t,s),c(t,o),c(o,r),c(o,u),c(o,a),c(a,d),c(d,_),c(d,v),c(d,g),be(g,l[11]),c(a,b),c(a,k),c(k,y),c(k,S),c(k,j),be(j,l[12]),c(a,E),c(a,D),c(D,N),c(D,T),c(D,I),Oe.m(I,null),c(a,M),je&&je.m(a,null),c(a,z),c(a,O),c(O,W),c(O,J),c(O,q),c(q,Y),c(q,H),c(q,B),pt(q,l[15],!0),c(a,G),c(a,R),c(R,K),c(R,L),c(R,V),c(V,$),c(V,ce),c(V,ee),pt(V,l[16],!0),c(a,ne),c(a,le),c(a,oe),c(a,ae),c(t,we),c(t,ze),c(ze,Ie),c(ze,X),c(ze,Z),c(Z,ue),c(Z,Se),c(Z,me),c(Z,ke),c(Z,qe),c(Z,We),Te&&Te.m(Z,null),c(e,xe),Me&&Me.m(e,null),c(e,Ke),Ee&&Ee.m(e,null),c(e,De),Ce.m(e,null),Le||(ye=[A(g,"input",l[219]),A(j,"input",l[220]),A(q,"change",l[226]),A(V,"change",l[227]),A(le,"click",l[140]),A(ae,"click",l[147]),A(ue,"click",l[228]),A(me,"click",l[229]),A(qe,"click",l[230])],Le=!0)},p(_e,x){x[0]&2048&&be(g,_e[11]),x[0]&4096&&be(j,_e[12]),Ne===(Ne=Ve(_e))&&Oe?Oe.p(_e,x):(Oe.d(1),Oe=Ne(_e),Oe&&(Oe.c(),Oe.m(I,null))),_e[14]?je?je.p(_e,x):(je=pi(_e),je.c(),je.m(a,z)):je&&(je.d(1),je=null),x[0]&32768&&pt(q,_e[15]),x[0]&65536&&pt(V,_e[16]),_e[18]?Te?Te.p(_e,x):(Te=mi(_e),Te.c(),Te.m(Z,null)):Te&&(Te.d(1),Te=null),_e[41].length>0?Me?Me.p(_e,x):(Me=_i(_e),Me.c(),Me.m(e,Ke)):Me&&(Me.d(1),Me=null),_e[10]?Ee?Ee.p(_e,x):(Ee=ki(_e),Ee.c(),Ee.m(e,De)):Ee&&(Ee.d(1),Ee=null),Ge===(Ge=Ae(_e))&&Ce?Ce.p(_e,x):(Ce.d(1),Ce=Ge(_e),Ce&&(Ce.c(),Ce.m(e,null)))},i:te,o:te,d(_e){_e&&w(e),Oe.d(),je&&je.d(),Te&&Te.d(),Me&&Me.d(),Ee&&Ee.d(),Ce.d(),Le=!1,ve(ye)}}}function Dd(l){let e,t,n,s,o,r,u=fe(l[85]),a=[];for(let g=0;g{_[k]=null}),st()),~s?(o=_[s],o?o.p(g,b):(o=_[s]=d[s](g),o.c()),re(o,1),o.m(n,null)):o=null)},i(g){r||(re(o),r=!0)},o(g){de(o),r=!1},d(g){g&&(w(e),w(t),w(n)),Re(a,g),~s&&_[s].d()}}}function Md(l){let e,t,n,s=l[29].title+"",o,r,u,a,d,_,v,g,b,k,y,S=l[29].dirty&&io();return{c(){e=f("div"),t=f("div"),n=f("span"),o=F(s),r=h(),S&&S.c(),u=h(),a=f("div"),d=f("button"),d.textContent=`${m("common.save")}`,_=h(),v=f("button"),v.textContent=`${m("common.close")}`,g=h(),b=f("textarea"),i(n,"class","note-title svelte-pldmec"),i(d,"class","btn btn-primary svelte-pldmec"),i(v,"class","btn svelte-pldmec"),i(a,"class","note-editor-actions svelte-pldmec"),i(t,"class","note-editor-header svelte-pldmec"),i(b,"class","note-textarea svelte-pldmec"),i(b,"placeholder",m("note.placeholder")),i(e,"class","note-editor svelte-pldmec")},m(j,E){C(j,e,E),c(e,t),c(t,n),c(n,o),c(t,r),S&&S.m(t,null),c(t,u),c(t,a),c(a,d),c(a,_),c(a,v),c(e,g),c(e,b),be(b,l[29].content),k||(y=[A(d,"click",l[132]),A(v,"click",l[130]),A(b,"input",l[176]),A(b,"input",l[131])],k=!0)},p(j,E){E[0]&536870912&&s!==(s=j[29].title+"")&&U(o,s),j[29].dirty?S||(S=io(),S.c(),S.m(t,u)):S&&(S.d(1),S=null),E[0]&536870912&&be(b,j[29].content)},i:te,o:te,d(j){j&&w(e),S&&S.d(),k=!1,ve(y)}}}function Id(l){let e,t=m("common.error")+"",n,s,o;return{c(){e=f("p"),n=F(t),s=h(),o=F(l[24]),i(e,"class","error-text svelte-pldmec")},m(r,u){C(r,e,u),c(e,n),c(e,s),c(e,o)},p(r,u){u[0]&16777216&&U(o,r[24])},d(r){r&&w(e)}}}function Ad(l){let e,t,n;return{c(){e=f("p"),e.textContent=`${m("welcome.selectSection")}`,t=h(),n=f("p"),n.textContent=`${m("welcome.createCase")}`,i(e,"class","svelte-pldmec"),i(n,"class","hint svelte-pldmec")},m(s,o){C(s,e,o),C(s,t,o),C(s,n,o)},p:te,d(s){s&&(w(e),w(t),w(n))}}}function Fd(l){let e;return{c(){e=f("p"),e.textContent=`${m("common.loading")}`,i(e,"class","svelte-pldmec")},m(t,n){C(t,e,n)},p:te,d(t){t&&w(e)}}}function Pd(l){let e,t=fe(l[8]),n=[];for(let s=0;s0&&Zs(l),o=l[7].summary.notes>0&&xs(l),r=l[7].summary.files>0&&$s(l);return{c(){e=f("div"),s&&s.c(),t=h(),o&&o.c(),n=h(),r&&r.c(),i(e,"class","today-summary svelte-pldmec")},m(u,a){C(u,e,a),s&&s.m(e,null),c(e,t),o&&o.m(e,null),c(e,n),r&&r.m(e,null)},p(u,a){u[7].summary.changedCases>0?s?s.p(u,a):(s=Zs(u),s.c(),s.m(e,t)):s&&(s.d(1),s=null),u[7].summary.notes>0?o?o.p(u,a):(o=xs(u),o.c(),o.m(e,n)):o&&(o.d(1),o=null),u[7].summary.files>0?r?r.p(u,a):(r=$s(u),r.c(),r.m(e,null)):r&&(r.d(1),r=null)},d(u){u&&w(e),s&&s.d(),o&&o.d(),r&&r.d()}}}function Zs(l){let e,t=l[7].summary.changedCases+"",n,s,o=vt(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=F(t),s=h(),r=F(o),i(e,"class","summary-chip svelte-pldmec")},m(u,a){C(u,e,a),c(e,n),c(e,s),c(e,r)},p(u,a){a[0]&128&&t!==(t=u[7].summary.changedCases+"")&&U(n,t),a[0]&128&&o!==(o=vt(u[7].summary.changedCases,m("today.plural.case_one"),m("today.plural.case_few"),m("today.plural.case_many"))+"")&&U(r,o)},d(u){u&&w(e)}}}function xs(l){let e,t=l[7].summary.notes+"",n,s,o=vt(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=F(t),s=h(),r=F(o),i(e,"class","summary-chip svelte-pldmec")},m(u,a){C(u,e,a),c(e,n),c(e,s),c(e,r)},p(u,a){a[0]&128&&t!==(t=u[7].summary.notes+"")&&U(n,t),a[0]&128&&o!==(o=vt(u[7].summary.notes,m("today.plural.note_one"),m("today.plural.note_few"),m("today.plural.note_many"))+"")&&U(r,o)},d(u){u&&w(e)}}}function $s(l){let e,t=l[7].summary.files+"",n,s,o=vt(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=F(t),s=h(),r=F(o),i(e,"class","summary-chip svelte-pldmec")},m(u,a){C(u,e,a),c(e,n),c(e,s),c(e,r)},p(u,a){a[0]&128&&t!==(t=u[7].summary.files+"")&&U(n,t),a[0]&128&&o!==(o=vt(u[7].summary.files,m("today.plural.file_one"),m("today.plural.file_few"),m("today.plural.file_many"))+"")&&U(r,o)},d(u){u&&w(e)}}}function ei(l){let e,t,n,s=fe(l[41]),o=[];for(let r=0;r0&&ti(l);return{c(){e=f("div"),t=f("div"),n=f("div"),s=f("button"),r=F(o),u=h(),a=f("span"),_=F(d),v=h(),g=f("span"),k=F(b),y=h(),S=f("div"),j=f("input"),D=h(),N=f("span"),N.textContent=`${m("suggest.minutes")}`,T=h(),I=f("button"),I.textContent=`${m("suggest.edit")}`,M=h(),z=f("button"),z.textContent=`${m("suggest.apply")}`,O=h(),L&&L.c(),W=h(),i(s,"class","suggestion-node link-btn svelte-pldmec"),i(a,"class","suggestion-summary svelte-pldmec"),i(g,"class","suggestion-confidence svelte-pldmec"),he(g,"low",l[350].confidence==="low"),he(g,"medium",l[350].confidence==="medium"),he(g,"high",l[350].confidence==="high"),i(n,"class","suggestion-info svelte-pldmec"),i(j,"type","number"),i(j,"class","suggestion-min-input svelte-pldmec"),j.value=E=l[350].suggestedMin,i(j,"min","1"),i(j,"max","480"),i(N,"class","suggestion-min-label svelte-pldmec"),i(I,"class","btn btn-sm svelte-pldmec"),i(z,"class","btn btn-sm btn-primary svelte-pldmec"),i(S,"class","suggestion-actions svelte-pldmec"),i(t,"class","suggestion-main svelte-pldmec"),i(t,"role","button"),i(t,"tabindex","0"),i(e,"class","suggestion-card svelte-pldmec"),he(e,"expanded",l[350]._expanded)},m(V,$){C(V,e,$),c(e,t),c(t,n),c(n,s),c(s,r),c(n,u),c(n,a),c(a,_),c(n,v),c(n,g),c(g,k),c(t,y),c(t,S),c(S,j),c(S,D),c(S,N),c(S,T),c(S,I),c(S,M),c(S,z),c(e,O),L&&L.m(e,null),c(e,W),J||(q=[A(s,"click",Be(Y)),A(j,"change",Be(H)),A(I,"click",Be(B)),A(z,"click",Be(G)),A(t,"click",R),A(t,"keydown",K)],J=!0)},p(V,$){l=V,$[1]&1024&&o!==(o=l[350].nodeTitle+"")&&U(r,o),$[1]&1024&&d!==(d=l[350].summary+"")&&U(_,d),$[1]&1024&&b!==(b=m("suggest.confidence."+l[350].confidence)+"")&&U(k,b),$[1]&1024&&he(g,"low",l[350].confidence==="low"),$[1]&1024&&he(g,"medium",l[350].confidence==="medium"),$[1]&1024&&he(g,"high",l[350].confidence==="high"),$[1]&1024&&E!==(E=l[350].suggestedMin)&&j.value!==E&&(j.value=E),l[350]._expanded&&l[350].events&&l[350].events.length>0?L?L.p(l,$):(L=ti(l),L.c(),L.m(e,W)):L&&(L.d(1),L=null),$[1]&1024&&he(e,"expanded",l[350]._expanded)},d(V){V&&w(e),L&&L.d(),J=!1,ve(q)}}}function Rd(l){let e,t,n,s;return{c(){e=f("div"),t=f("p"),t.textContent=`${m("today.empty")}`,n=h(),s=f("p"),s.textContent=`${m("today.emptyHint")}`,i(t,"class","svelte-pldmec"),i(s,"class","hint svelte-pldmec"),i(e,"class","today-empty svelte-pldmec")},m(o,r){C(o,e,r),c(e,t),c(e,n),c(e,s)},p:te,d(o){o&&w(e)}}}function zd(l){let e,t,n=fe(l[7].groups),s=[];for(let r=0;r0&&ai(l);return{c(){for(let r=0;r0?o?o.p(r,u):(o=ai(r),o.c(),o.m(t.parentNode,t)):o&&(o.d(1),o=null)},d(r){r&&(w(e),w(t)),Re(s,r),o&&o.d(r)}}}function ii(l){let e,t=l[378].events.length+"",n,s,o=vt(l[378].events.length,m("today.plural.event_one"),m("today.plural.event_few"),m("today.plural.event_many"))+"",r;return{c(){e=f("span"),n=F(t),s=h(),r=F(o),i(e,"class","today-case-count svelte-pldmec")},m(u,a){C(u,e,a),c(e,n),c(e,s),c(e,r)},p(u,a){a[0]&128&&t!==(t=u[378].events.length+"")&&U(n,t),a[0]&128&&o!==(o=vt(u[378].events.length,m("today.plural.event_one"),m("today.plural.event_few"),m("today.plural.event_many"))+"")&&U(r,o)},d(u){u&&w(e)}}}function Vd(l){let e;return{c(){e=f("div"),e.textContent=`${m("today.changedCases")}`,i(e,"class","today-events-empty svelte-pldmec")},m(t,n){C(t,e,n)},p:te,d(t){t&&w(e)}}}function Od(l){let e,t=fe(l[378].events),n=[];for(let s=0;s0?Od:Vd}let I=T(l),M=I(l);return{c(){e=f("div"),t=f("div"),n=f("span"),o=F(s),r=h(),u=f("span"),d=F(a),_=h(),E&&E.c(),v=h(),g=f("span"),k=F(b),y=h(),M.c(),i(n,"class","today-case-title svelte-pldmec"),i(u,"class","today-case-type svelte-pldmec"),i(g,"class","today-case-time svelte-pldmec"),i(t,"class","today-case-header svelte-pldmec"),i(t,"role","button"),i(t,"tabindex","0"),i(e,"class","today-case svelte-pldmec")},m(z,O){C(z,e,O),c(e,t),c(t,n),c(n,o),c(t,r),c(t,u),c(u,d),c(t,_),E&&E.m(t,null),c(t,v),c(t,g),c(g,k),c(e,y),M.m(e,null),S||(j=[A(t,"click",D),A(t,"keydown",N)],S=!0)},p(z,O){l=z,O[0]&128&&s!==(s=l[378].nodeTitle+"")&&U(o,s),O[0]&128&&a!==(a=l[154](l[378].nodeKind)+"")&&U(d,a),l[378].events?E?E.p(l,O):(E=ii(l),E.c(),E.m(t,v)):E&&(E.d(1),E=null),O[0]&128&&b!==(b=et(l[378].lastActivityAt)+"")&&U(k,b),I===(I=T(l))&&M?M.p(l,O):(M.d(1),M=I(l),M&&(M.c(),M.m(e,null)))},d(z){z&&w(e),E&&E.d(),M.d(),S=!1,ve(j)}}}function ai(l){let e,t,n,s=fe(l[7].events),o=[];for(let r=0;r0&&vi(l);return{c(){e=f("div"),t=f("div"),n=f("div"),s=f("button"),r=F(o),u=h(),a=f("span"),_=F(d),v=h(),g=f("span"),k=F(b),y=h(),S=f("div"),j=f("input"),D=h(),N=f("span"),N.textContent=`${m("suggest.minutes")}`,T=h(),I=f("button"),I.textContent=`${m("suggest.edit")}`,M=h(),z=f("button"),z.textContent=`${m("suggest.apply")}`,O=h(),L&&L.c(),W=h(),i(s,"class","suggestion-node link-btn svelte-pldmec"),i(a,"class","suggestion-summary svelte-pldmec"),i(g,"class","suggestion-confidence svelte-pldmec"),he(g,"low",l[350].confidence==="low"),he(g,"medium",l[350].confidence==="medium"),he(g,"high",l[350].confidence==="high"),i(n,"class","suggestion-info svelte-pldmec"),i(j,"type","number"),i(j,"class","suggestion-min-input svelte-pldmec"),j.value=E=l[350].suggestedMin,i(j,"min","1"),i(j,"max","480"),i(N,"class","suggestion-min-label svelte-pldmec"),i(I,"class","btn btn-sm svelte-pldmec"),i(z,"class","btn btn-sm btn-primary svelte-pldmec"),i(S,"class","suggestion-actions svelte-pldmec"),i(t,"class","suggestion-main svelte-pldmec"),i(t,"role","button"),i(t,"tabindex","0"),i(e,"class","suggestion-card svelte-pldmec"),he(e,"expanded",l[350]._expanded)},m(V,$){C(V,e,$),c(e,t),c(t,n),c(n,s),c(s,r),c(n,u),c(n,a),c(a,_),c(n,v),c(n,g),c(g,k),c(t,y),c(t,S),c(S,j),c(S,D),c(S,N),c(S,T),c(S,I),c(S,M),c(S,z),c(e,O),L&&L.m(e,null),c(e,W),J||(q=[A(s,"click",Be(Y)),A(j,"change",Be(H)),A(I,"click",Be(B)),A(z,"click",Be(G)),A(t,"click",R),A(t,"keydown",K)],J=!0)},p(V,$){l=V,$[1]&1024&&o!==(o=l[350].nodeTitle+"")&&U(r,o),$[1]&1024&&d!==(d=l[350].summary+"")&&U(_,d),$[1]&1024&&b!==(b=m("suggest.confidence."+l[350].confidence)+"")&&U(k,b),$[1]&1024&&he(g,"low",l[350].confidence==="low"),$[1]&1024&&he(g,"medium",l[350].confidence==="medium"),$[1]&1024&&he(g,"high",l[350].confidence==="high"),$[1]&1024&&E!==(E=l[350].suggestedMin)&&j.value!==E&&(j.value=E),l[350]._expanded&&l[350].events&&l[350].events.length>0?L?L.p(l,$):(L=vi(l),L.c(),L.m(e,W)):L&&(L.d(1),L=null),$[1]&1024&&he(e,"expanded",l[350]._expanded)},d(V){V&&w(e),L&&L.d(),J=!1,ve(q)}}}function ki(l){let e,t,n=m("journal.total")+"",s,o,r=Math.floor(l[10].totalMinutes/60)+"",u,a,d=l[10].totalMinutes%60+"",_,v,g=l[10].totalEntries+"",b,k,y=m("worklog.min")+"",S,j,E,D,N=l[10].byDay&&l[10].byDay.length>0&&yi(l),T=l[10].byNode&&l[10].byNode.length>0&&Ci(l);return{c(){e=f("div"),t=f("div"),s=F(n),o=F(": "),u=F(r),a=F("ч "),_=F(d),v=F("м ("),b=F(g),k=h(),S=F(y),j=F(")"),E=h(),N&&N.c(),D=h(),T&&T.c(),i(t,"class","summary-total svelte-pldmec"),i(e,"class","journal-summary svelte-pldmec")},m(I,M){C(I,e,M),c(e,t),c(t,s),c(t,o),c(t,u),c(t,a),c(t,_),c(t,v),c(t,b),c(t,k),c(t,S),c(t,j),c(e,E),N&&N.m(e,null),c(e,D),T&&T.m(e,null)},p(I,M){M[0]&1024&&r!==(r=Math.floor(I[10].totalMinutes/60)+"")&&U(u,r),M[0]&1024&&d!==(d=I[10].totalMinutes%60+"")&&U(_,d),M[0]&1024&&g!==(g=I[10].totalEntries+"")&&U(b,g),I[10].byDay&&I[10].byDay.length>0?N?N.p(I,M):(N=yi(I),N.c(),N.m(e,D)):N&&(N.d(1),N=null),I[10].byNode&&I[10].byNode.length>0?T?T.p(I,M):(T=Ci(I),T.c(),T.m(e,null)):T&&(T.d(1),T=null)},d(I){I&&w(e),N&&N.d(),T&&T.d()}}}function yi(l){let e,t,n,s=fe(l[10].byDay),o=[];for(let r=0;r0?Yd:z[360].source==="suggestion"?qd:z[360].source==="unknown"||z[360].source==="imported"?Jd:z[360]._hasEvents?Gd:Kd}let T=N(l),I=T(l),M=l[360]._events&&Di(l);return{c(){e=f("tr"),t=f("td"),n=f("div"),s=f("div"),o=f("button"),o.textContent=`${m("worklog.editEntry")}`,r=h(),u=f("button"),u.textContent=`${m("worklog.deleteEntry")}`,a=h(),D&&D.c(),d=h(),_=f("div"),v=f("span"),v.textContent=`${m("worklog.source")}`,g=h(),I.c(),b=h(),M&&M.c(),k=h(),i(o,"class","btn btn-sm svelte-pldmec"),i(u,"class","btn btn-sm btn-danger svelte-pldmec"),i(s,"class","journal-detail-actions svelte-pldmec"),i(v,"class","journal-detail-label svelte-pldmec"),i(_,"class","journal-detail-section svelte-pldmec"),i(n,"class","journal-detail-body svelte-pldmec"),i(t,"colspan","8"),i(t,"class","svelte-pldmec"),i(e,"class","journal-row-detail svelte-pldmec")},m(z,O){C(z,e,O),c(e,t),c(t,n),c(n,s),c(s,o),c(s,r),c(s,u),c(n,a),D&&D.m(n,null),c(n,d),c(n,_),c(_,v),c(_,g),I.m(_,null),c(n,b),M&&M.m(n,null),c(e,k),y||(S=[A(o,"click",Be(j)),A(u,"click",Be(E))],y=!0)},p(z,O){l=z,l[360].details?D?D.p(l,O):(D=Ni(l),D.c(),D.m(n,d)):D&&(D.d(1),D=null),T!==(T=N(l))&&(I.d(1),I=T(l),I&&(I.c(),I.m(_,null))),l[360]._events?M?M.p(l,O):(M=Di(l),M.c(),M.m(n,null)):M&&(M.d(1),M=null)},d(z){z&&w(e),D&&D.d(),I.d(),M&&M.d(),y=!1,ve(S)}}}function Ni(l){let e,t,n,s,o=l[360].details+"",r;return{c(){e=f("div"),t=f("span"),t.textContent=`${m("worklog.details")}`,n=h(),s=f("p"),r=F(o),i(t,"class","journal-detail-label svelte-pldmec"),i(s,"class","svelte-pldmec"),i(e,"class","journal-detail-section svelte-pldmec")},m(u,a){C(u,e,a),c(e,t),c(e,n),c(e,s),c(s,r)},p(u,a){a[0]&512&&o!==(o=u[360].details+"")&&U(r,o)},d(u){u&&w(e)}}}function Kd(l){let e;return{c(){e=f("p"),e.textContent=`${m("worklog.sourceUnknown")}`,i(e,"class","svelte-pldmec")},m(t,n){C(t,e,n)},d(t){t&&w(e)}}}function Gd(l){let e;return{c(){e=f("p"),e.textContent=`${m("worklog.sourceSuggestion")}`,i(e,"class","svelte-pldmec")},m(t,n){C(t,e,n)},d(t){t&&w(e)}}}function Jd(l){let e;return{c(){e=f("p"),e.textContent=`${m("worklog.sourceUnknown")}`,i(e,"class","svelte-pldmec")},m(t,n){C(t,e,n)},d(t){t&&w(e)}}}function qd(l){let e;return{c(){e=f("p"),e.textContent=`${m("worklog.sourceSuggestionNoEvents")}`,i(e,"class","svelte-pldmec")},m(t,n){C(t,e,n)},d(t){t&&w(e)}}}function Yd(l){let e;return{c(){e=f("p"),e.textContent=`${m("worklog.sourceSuggestion")}`,i(e,"class","svelte-pldmec")},m(t,n){C(t,e,n)},d(t){t&&w(e)}}}function Qd(l){let e;return{c(){e=f("p"),e.textContent=`${m("worklog.sourceManual")}`,i(e,"class","svelte-pldmec")},m(t,n){C(t,e,n)},d(t){t&&w(e)}}}function Di(l){let e,t,n,s=fe(l[360]._events),o=[];for(let r=0;r0,r,u,a,d=o&&Li(l);function _(b,k){return b[31].length===0?ip:sp}let v=_(l),g=v(l);return{c(){e=f("div"),t=f("div"),n=f("button"),n.textContent=`+ ${m("worklog.addEntry")}`,s=h(),d&&d.c(),r=h(),g.c(),i(n,"class","btn btn-primary btn-sm svelte-pldmec"),i(t,"class","worklog-toolbar svelte-pldmec"),i(e,"class","worklog-tab svelte-pldmec")},m(b,k){C(b,e,k),c(e,t),c(t,n),c(e,s),d&&d.m(e,null),c(e,r),g.m(e,null),u||(a=A(n,"click",l[203]),u=!0)},p(b,k){k[0]&67108864|k[1]&1024&&(o=b[26]&&b[41].filter(b[169]).length>0),o?d?d.p(b,k):(d=Li(b),d.c(),d.m(e,r)):d&&(d.d(1),d=null),v===(v=_(b))&&g?g.p(b,k):(g.d(1),g=v(b),g&&(g.c(),g.m(e,null)))},i:te,o:te,d(b){b&&w(e),d&&d.d(),g.d(),u=!1,a()}}}function xd(l){let e,t,n,s,o,r;function u(_,v){return _[30].length===0?dp:fp}let a=u(l),d=a(l);return{c(){e=f("div"),t=f("div"),n=f("button"),n.textContent=`${m("action.addAction")}`,s=h(),d.c(),i(n,"class","btn btn-primary svelte-pldmec"),i(t,"class","tab-toolbar svelte-pldmec"),i(e,"class","actions-tab svelte-pldmec")},m(_,v){C(_,e,v),c(e,t),c(t,n),c(e,s),d.m(e,null),o||(r=A(n,"click",l[155]),o=!0)},p(_,v){a===(a=u(_))&&d?d.p(_,v):(d.d(1),d=a(_),d&&(d.c(),d.m(e,null)))},i:te,o:te,d(_){_&&w(e),d.d(),o=!1,r()}}}function $d(l){let e,t,n,s=m("file.addFile")+"",o,r,u,a=m("file.addFolder")+"",d,_,v,g,b,k,y,S,j,E,D,N,T,I=l[67].items.length>0&&Qi(l);const M=[mp,pp],z=[];function O(q,Y){return q[59]?0:1}k=O(l),y=z[k]=M[k](l);let W=l[55]&&!l[57]&&Zi(),J=l[63]&&xi(l);return{c(){e=f("div"),t=f("div"),n=f("button"),o=F(s),r=h(),u=f("button"),d=F(a),_=h(),v=f("button"),v.textContent=`${m("file.newFile")}`,g=h(),I&&I.c(),b=h(),y.c(),S=h(),W&&W.c(),j=h(),J&&J.c(),E=it(),i(n,"class","btn btn-primary svelte-pldmec"),n.disabled=l[55],i(u,"class","btn svelte-pldmec"),u.disabled=l[55],i(v,"class","btn svelte-pldmec"),i(t,"class","tab-toolbar svelte-pldmec"),i(e,"class","files-tab svelte-pldmec")},m(q,Y){C(q,e,Y),c(e,t),c(t,n),c(n,o),c(t,r),c(t,u),c(u,d),c(t,_),c(t,v),c(t,g),I&&I.m(t,null),c(e,b),z[k].m(e,null),c(e,S),W&&W.m(e,null),C(q,j,Y),J&&J.m(q,Y),C(q,E,Y),D=!0,N||(T=[A(n,"click",l[148]),A(u,"click",l[149]),A(v,"click",l[94])],N=!0)},p(q,Y){(!D||Y[1]&16777216)&&(n.disabled=q[55]),(!D||Y[1]&16777216)&&(u.disabled=q[55]),q[67].items.length>0?I?I.p(q,Y):(I=Qi(q),I.c(),I.m(t,null)):I&&(I.d(1),I=null);let H=k;k=O(q),k===H?z[k].p(q,Y):(nt(),de(z[H],1,1,()=>{z[H]=null}),st(),y=z[k],y?y.p(q,Y):(y=z[k]=M[k](q),y.c()),re(y,1),y.m(e,S)),q[55]&&!q[57]?W||(W=Zi(),W.c(),W.m(e,null)):W&&(W.d(1),W=null),q[63]?J?(J.p(q,Y),Y[2]&2&&re(J,1)):(J=xi(q),J.c(),re(J,1),J.m(E.parentNode,E)):J&&(nt(),de(J,1,1,()=>{J=null}),st())},i(q){D||(re(y),re(J),D=!0)},o(q){de(y),de(J),D=!1},d(q){q&&(w(e),w(j),w(E)),I&&I.d(),z[k].d(),W&&W.d(),J&&J.d(q),N=!1,ve(T)}}}function ep(l){let e,t,n,s,o,r,u,a=l[48]&&$i(l);function d(g,b){return g[28].length===0&&!g[48]?kp:bp}let _=d(l),v=_(l);return{c(){e=f("div"),t=f("div"),n=f("button"),n.textContent=`${m("note.add")}`,s=h(),a&&a.c(),o=h(),v.c(),i(n,"class","btn btn-primary svelte-pldmec"),i(t,"class","tab-toolbar svelte-pldmec"),i(e,"class","notes-tab svelte-pldmec")},m(g,b){C(g,e,b),c(e,t),c(t,n),c(e,s),a&&a.m(e,null),c(e,o),v.m(e,null),r||(u=A(n,"click",l[126]),r=!0)},p(g,b){g[48]?a?a.p(g,b):(a=$i(g),a.c(),a.m(e,o)):a&&(a.d(1),a=null),_===(_=d(g))&&v?v.p(g,b):(v.d(1),v=_(g),v&&(v.c(),v.m(e,null)))},i:te,o:te,d(g){g&&w(e),a&&a.d(),v.d(),r=!1,u()}}}function tp(l){let e,t,n=l[26].title+"",s,o,r,u,a,d,_=l[154](l[26].type)+"",v,g,b,k,y,S=(l[26].section||"—")+"",j,E,D,N,T,I=_t(l[26].createdAt)+"",M,z,O,W,J,q,Y,H,B=m("overview.newNote")+"",G,R,K,L,V,$,ce=m("overview.addFile")+"",ee,ne,le,oe,ae,we,ze=m("overview.addAction")+"",Ie,X,Z,ue,Se,me,ke,qe=m("overview.logTime")+"",We,xe,Ke,De,Le,ye=l[28].length>0&&to(l),Ve=l[31].length>0&&no(l);return{c(){e=f("div"),t=f("h2"),s=F(n),o=h(),r=f("div"),u=f("div"),a=f("span"),a.textContent=`${m("overview.type")}`,d=f("span"),v=F(_),g=h(),b=f("div"),k=f("span"),k.textContent=`${m("overview.section")}`,y=f("span"),j=F(S),E=h(),D=f("div"),N=f("span"),N.textContent=`${m("overview.created")}`,T=f("span"),M=F(I),z=h(),O=f("div"),W=f("button"),J=Q("svg"),q=Q("path"),Y=Q("path"),H=h(),G=F(B),R=h(),K=f("button"),L=Q("svg"),V=Q("path"),$=h(),ee=F(ce),ne=h(),le=f("button"),oe=Q("svg"),ae=Q("polygon"),we=h(),Ie=F(ze),X=h(),Z=f("button"),ue=Q("svg"),Se=Q("circle"),me=Q("polyline"),ke=h(),We=F(qe),xe=h(),ye&&ye.c(),Ke=h(),Ve&&Ve.c(),i(t,"class","svelte-pldmec"),i(a,"class","meta-label svelte-pldmec"),i(d,"class","svelte-pldmec"),i(u,"class","meta-item svelte-pldmec"),i(k,"class","meta-label svelte-pldmec"),i(y,"class","svelte-pldmec"),i(b,"class","meta-item svelte-pldmec"),i(N,"class","meta-label svelte-pldmec"),i(T,"class","svelte-pldmec"),i(D,"class","meta-item svelte-pldmec"),i(r,"class","meta-grid svelte-pldmec"),i(q,"d","M12 20h9"),i(q,"class","svelte-pldmec"),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-pldmec"),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-pldmec"),i(W,"class","qa-btn svelte-pldmec"),i(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"),i(V,"class","svelte-pldmec"),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-pldmec"),i(K,"class","qa-btn svelte-pldmec"),i(ae,"points","13 2 3 14 12 14 11 22 21 10 12 10 13 2"),i(ae,"class","svelte-pldmec"),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-pldmec"),i(le,"class","qa-btn svelte-pldmec"),i(Se,"cx","12"),i(Se,"cy","12"),i(Se,"r","10"),i(Se,"class","svelte-pldmec"),i(me,"points","12 6 12 12 16 14"),i(me,"class","svelte-pldmec"),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-pldmec"),i(Z,"class","qa-btn svelte-pldmec"),i(O,"class","quick-actions svelte-pldmec"),i(e,"class","overview svelte-pldmec")},m(Ne,Oe){C(Ne,e,Oe),c(e,t),c(t,s),c(e,o),c(e,r),c(r,u),c(u,a),c(u,d),c(d,v),c(r,g),c(r,b),c(b,k),c(b,y),c(y,j),c(r,E),c(r,D),c(D,N),c(D,T),c(T,M),c(e,z),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,L),c(L,V),c(K,$),c(K,ee),c(O,ne),c(O,le),c(le,oe),c(oe,ae),c(le,we),c(le,Ie),c(O,X),c(O,Z),c(Z,ue),c(ue,Se),c(ue,me),c(Z,ke),c(Z,We),c(e,xe),ye&&ye.m(e,null),c(e,Ke),Ve&&Ve.m(e,null),De||(Le=[A(W,"click",l[178]),A(K,"click",l[179]),A(le,"click",l[155]),A(Z,"click",l[180])],De=!0)},p(Ne,Oe){Oe[0]&67108864&&n!==(n=Ne[26].title+"")&&U(s,n),Oe[0]&67108864&&_!==(_=Ne[154](Ne[26].type)+"")&&U(v,_),Oe[0]&67108864&&S!==(S=(Ne[26].section||"—")+"")&&U(j,S),Oe[0]&67108864&&I!==(I=_t(Ne[26].createdAt)+"")&&U(M,I),Ne[28].length>0?ye?ye.p(Ne,Oe):(ye=to(Ne),ye.c(),ye.m(e,Ke)):ye&&(ye.d(1),ye=null),Ne[31].length>0?Ve?Ve.p(Ne,Oe):(Ve=no(Ne),Ve.c(),Ve.m(e,null)):Ve&&(Ve.d(1),Ve=null)},i:te,o:te,d(Ne){Ne&&w(e),ye&&ye.d(),Ve&&Ve.d(),De=!1,ve(Le)}}}function lp(l){let e,t=fe(l[22]),n=[];for(let s=0;s0&&Ri(l);return{c(){e=f("div"),t=f("div"),n=f("div"),s=f("span"),r=F(o),u=h(),a=f("span"),_=F(d),v=h(),b=F(g),k=F(" · "),S=F(y),j=h(),E=f("div"),D=f("button"),D.textContent=`${m("suggest.edit")}`,N=h(),T=f("button"),T.textContent=`${m("worklog.apply")}`,I=h(),H&&H.c(),M=h(),i(s,"class","suggestion-summary svelte-pldmec"),i(a,"class","suggestion-meta svelte-pldmec"),i(n,"class","suggestion-info svelte-pldmec"),i(D,"class","btn btn-sm svelte-pldmec"),i(T,"class","btn btn-sm btn-primary svelte-pldmec"),i(E,"class","suggestion-actions svelte-pldmec"),i(t,"class","suggestion-main svelte-pldmec"),i(t,"role","button"),i(t,"tabindex","0"),i(e,"class","suggestion-card svelte-pldmec"),he(e,"expanded",l[350]._expanded)},m(B,G){C(B,e,G),c(e,t),c(t,n),c(n,s),c(s,r),c(n,u),c(n,a),c(a,_),c(a,v),c(a,b),c(a,k),c(a,S),c(t,j),c(t,E),c(E,D),c(E,N),c(E,T),c(e,I),H&&H.m(e,null),c(e,M),z||(O=[A(D,"click",Be(W)),A(T,"click",Be(J)),A(t,"click",q),A(t,"keydown",Y)],z=!0)},p(B,G){l=B,G[0]&67108864|G[1]&1024&&o!==(o=l[350].summary+"")&&U(r,o),G[0]&67108864|G[1]&1024&&d!==(d=l[350].suggestedMin+"")&&U(_,d),G[0]&67108864|G[1]&1024&&y!==(y=m("suggest.confidence."+l[350].confidence)+"")&&U(S,y),l[350]._expanded&&l[350].events&&l[350].events.length>0?H?H.p(l,G):(H=Ri(l),H.c(),H.m(e,M)):H&&(H.d(1),H=null),G[0]&67108864|G[1]&1024&&he(e,"expanded",l[350]._expanded)},d(B){B&&w(e),H&&H.d(),z=!1,ve(O)}}}function sp(l){let e,t=fe(l[31]),n=[];for(let s=0;s0?ap:T[331].source==="suggestion"?rp:T[331].source==="unknown"||T[331].source==="imported"?cp:op}let E=j(l),D=E(l),N=l[331].source==="suggestion"&&l[331]._events&&l[331]._events.length>0&&Ki(l);return{c(){e=f("div"),t=f("div"),n=f("button"),n.textContent=`${m("worklog.editEntry")}`,s=h(),o=f("button"),o.textContent=`${m("worklog.deleteEntry")}`,r=h(),S&&S.c(),u=h(),a=f("div"),d=f("span"),d.textContent=`${m("worklog.source")}`,_=h(),D.c(),v=h(),N&&N.c(),i(n,"class","btn btn-sm svelte-pldmec"),i(o,"class","btn btn-sm btn-danger svelte-pldmec"),i(t,"class","worklog-entry-actions svelte-pldmec"),i(d,"class","wl-detail-label svelte-pldmec"),i(a,"class","wl-detail-section svelte-pldmec"),i(e,"class","worklog-entry-detail svelte-pldmec")},m(T,I){C(T,e,I),c(e,t),c(t,n),c(t,s),c(t,o),c(e,r),S&&S.m(e,null),c(e,u),c(e,a),c(a,d),c(a,_),D.m(a,null),c(e,v),N&&N.m(e,null),g||(b=[A(n,"click",Be(k)),A(o,"click",Be(y))],g=!0)},p(T,I){l=T,l[331].details?S?S.p(l,I):(S=Ui(l),S.c(),S.m(e,u)):S&&(S.d(1),S=null),E!==(E=j(l))&&(D.d(1),D=E(l),D&&(D.c(),D.m(a,null))),l[331].source==="suggestion"&&l[331]._events&&l[331]._events.length>0?N?N.p(l,I):(N=Ki(l),N.c(),N.m(e,null)):N&&(N.d(1),N=null)},d(T){T&&w(e),S&&S.d(),D.d(),N&&N.d(),g=!1,ve(b)}}}function Ui(l){let e,t,n,s,o=l[331].details+"",r;return{c(){e=f("div"),t=f("span"),t.textContent=`${m("worklog.details")}`,n=h(),s=f("p"),r=F(o),i(t,"class","wl-detail-label svelte-pldmec"),i(s,"class","svelte-pldmec"),i(e,"class","wl-detail-section svelte-pldmec")},m(u,a){C(u,e,a),c(e,t),c(e,n),c(e,s),c(s,r)},p(u,a){a[1]&1&&o!==(o=u[331].details+"")&&U(r,o)},d(u){u&&w(e)}}}function op(l){let e;return{c(){e=f("p"),e.textContent=`${m("worklog.sourceUnknown")}`,i(e,"class","svelte-pldmec")},m(t,n){C(t,e,n)},d(t){t&&w(e)}}}function cp(l){let e;return{c(){e=f("p"),e.textContent=`${m("worklog.sourceUnknown")}`,i(e,"class","svelte-pldmec")},m(t,n){C(t,e,n)},d(t){t&&w(e)}}}function rp(l){let e;return{c(){e=f("p"),e.textContent=`${m("worklog.sourceSuggestionNoEvents")}`,i(e,"class","svelte-pldmec")},m(t,n){C(t,e,n)},d(t){t&&w(e)}}}function ap(l){let e;return{c(){e=f("p"),e.textContent=`${m("worklog.sourceSuggestion")}`,i(e,"class","svelte-pldmec")},m(t,n){C(t,e,n)},d(t){t&&w(e)}}}function up(l){let e;return{c(){e=f("p"),e.textContent=`${m("worklog.sourceManual")}`,i(e,"class","svelte-pldmec")},m(t,n){C(t,e,n)},d(t){t&&w(e)}}}function Ki(l){let e,t,n,s=fe(l[331]._events),o=[];for(let r=0;r',D=h(),i(n,"class","action-title svelte-pldmec"),i(u,"class","action-type svelte-pldmec"),i(v,"class","action-data svelte-pldmec"),i(t,"class","action-info svelte-pldmec"),i(S,"class","btn btn-sm svelte-pldmec"),i(E,"class","btn btn-sm btn-danger svelte-pldmec"),i(y,"class","action-btns svelte-pldmec"),i(e,"class","action-card svelte-pldmec")},m(z,O){C(z,e,O),c(e,t),c(t,n),c(n,o),c(t,r),c(t,u),c(u,d),c(t,_),c(t,v),c(v,b),c(e,k),c(e,y),c(y,S),c(y,j),c(y,E),c(e,D),N||(T=[A(S,"click",I),A(E,"click",M)],N=!0)},p(z,O){l=z,O[0]&1073741824&&s!==(s=l[342].title+"")&&U(o,s),O[0]&1073741824&&a!==(a=l[159](l[342].type)+"")&&U(d,a),O[0]&1073741824&&g!==(g=l[342].data+"")&&U(b,g)},d(z){z&&w(e),N=!1,ve(T)}}}function Qi(l){let e,t=m("common.paste")+"",n,s,o=l[67].items.length+"",r,u,a;return{c(){e=f("button"),n=F(t),s=h(),r=F(o),i(e,"class","btn svelte-pldmec")},m(d,_){C(d,e,_),c(e,n),c(e,s),c(e,r),u||(a=A(e,"click",l[99]),u=!0)},p(d,_){_[2]&32&&o!==(o=d[67].items.length+"")&&U(r,o)},d(d){d&&w(e),u=!1,a()}}}function pp(l){let e,t,n,s,o,r,u;const a=[vp,_p],d=[];function _(k,y){return k[61].length>0?0:1}e=_(l),t=d[e]=a[e](l);const v=[hp,gp],g=[];function b(k,y){return k[62].length===0?0:1}return s=b(l),o=g[s]=v[s](l),{c(){t.c(),n=h(),o.c(),r=it()},m(k,y){d[e].m(k,y),C(k,n,y),g[s].m(k,y),C(k,r,y),u=!0},p(k,y){let S=e;e=_(k),e===S?d[e].p(k,y):(nt(),de(d[S],1,1,()=>{d[S]=null}),st(),t=d[e],t?t.p(k,y):(t=d[e]=a[e](k),t.c()),re(t,1),t.m(n.parentNode,n));let j=s;s=b(k),s===j?g[s].p(k,y):(nt(),de(g[j],1,1,()=>{g[j]=null}),st(),o=g[s],o?o.p(k,y):(o=g[s]=v[s](k),o.c()),re(o,1),o.m(r.parentNode,r))},i(k){u||(re(t),re(o),u=!0)},o(k){de(t),de(o),u=!1},d(k){k&&(w(n),w(r)),d[e].d(k),g[s].d(k)}}}function mp(l){let e,t;return{c(){e=f("div"),t=f("p"),t.textContent=`${m("common.loading")}`,i(t,"class","svelte-pldmec"),i(e,"class","empty-state svelte-pldmec")},m(n,s){C(n,e,s),c(e,t)},p:te,i:te,o:te,d(n){n&&w(e)}}}function _p(l){let e,t;return e=new Oo({props:{crumbs:[{name:m("file.root")}]}}),{c(){Je(e.$$.fragment)},m(n,s){He(e,n,s),t=!0},p:te,i(n){t||(re(e.$$.fragment,n),t=!0)},o(n){de(e.$$.fragment,n),t=!1},d(n){Ue(e,n)}}}function vp(l){let e,t,n,s,o,r,u,a=m("common.backLabel")+"",d,_,v,g;return e=new Oo({props:{crumbs:[{name:m("file.root")},...l[61]]}}),e.$on("navigate",l[187]),{c(){Je(e.$$.fragment),t=h(),n=f("button"),s=Q("svg"),o=Q("line"),r=Q("polyline"),u=h(),d=F(a),i(o,"x1","19"),i(o,"y1","12"),i(o,"x2","5"),i(o,"y2","12"),i(o,"class","svelte-pldmec"),i(r,"points","12 19 5 12 12 5"),i(r,"class","svelte-pldmec"),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-pldmec"),i(n,"class","btn btn-sm back-btn svelte-pldmec")},m(b,k){He(e,b,k),C(b,t,k),C(b,n,k),c(n,s),c(s,o),c(s,r),c(n,u),c(n,d),_=!0,v||(g=A(n,"click",l[90]),v=!0)},p(b,k){const y={};k[1]&1073741824&&(y.crumbs=[{name:m("file.root")},...b[61]]),e.$set(y)},i(b){_||(re(e.$$.fragment,b),_=!0)},o(b){de(e.$$.fragment,b),_=!1},d(b){b&&(w(t),w(n)),Ue(e,b),v=!1,g()}}}function gp(l){let e,t=[],n=new Map,s,o=fe(l[62]);const r=u=>u[339].id;for(let u=0;u0?m("file.noFiles"):m("file.noFilesCase"))+"",r,u,a,d,_,v,g,b,k,y;return{c(){e=f("div"),t=f("div"),t.innerHTML='',n=h(),s=f("p"),r=F(o),u=h(),a=f("p"),a.textContent=`${m("file.hint")}`,d=h(),_=f("div"),v=f("button"),v.textContent=`${m("file.addFileSimple")}`,g=h(),b=f("button"),b.textContent=`${m("file.addFolderSimple")}`,i(t,"class","empty-icon svelte-pldmec"),i(s,"class","svelte-pldmec"),i(a,"class","hint svelte-pldmec"),i(v,"class","btn btn-primary svelte-pldmec"),i(b,"class","btn svelte-pldmec"),i(_,"class","empty-actions svelte-pldmec"),i(e,"class","empty-state svelte-pldmec")},m(S,j){C(S,e,j),c(e,t),c(e,n),c(e,s),c(s,r),c(e,u),c(e,a),c(e,d),c(e,_),c(_,v),c(_,g),c(_,b),k||(y=[A(v,"click",l[148]),A(b,"click",l[149])],k=!0)},p(S,j){j[1]&1073741824&&o!==(o=(S[61].length>0?m("file.noFiles"):m("file.noFilesCase"))+"")&&U(r,o)},i:te,o:te,d(S){S&&w(e),k=!1,ve(y)}}}function Xi(l,e){let t,n,s;return n=new ju({props:{item:e[339],selected:e[68].includes(e[339].id),onDragStart:e[103],onDragOver:e[104],onDrop:e[105]}}),n.$on("navigate",e[188]),n.$on("preview",e[189]),n.$on("openExternal",e[190]),n.$on("showInFolder",e[191]),n.$on("delete",e[192]),n.$on("rename",e[193]),n.$on("duplicate",e[194]),n.$on("cut",e[195]),n.$on("copy",e[196]),n.$on("selectOne",e[197]),n.$on("toggleSelect",e[198]),n.$on("rangeSelect",e[199]),{key:l,first:null,c(){t=it(),Je(n.$$.fragment),this.first=t},m(o,r){C(o,t,r),He(n,o,r),s=!0},p(o,r){e=o;const u={};r[2]&1&&(u.item=e[339]),r[2]&65&&(u.selected=e[68].includes(e[339].id)),n.$set(u)},i(o){s||(re(n.$$.fragment,o),s=!0)},o(o){de(n.$$.fragment,o),s=!1},d(o){o&&w(t),Ue(n,o)}}}function Zi(l){let e,t;return{c(){e=f("div"),t=f("p"),t.textContent=`${m("file.scanning")}`,i(t,"class","svelte-pldmec"),i(e,"class","empty-state svelte-pldmec")},m(n,s){C(n,e,s),c(e,t)},d(n){n&&w(e)}}}function xi(l){let e,t;return e=new Bu({props:{item:l[63],content:l[64],loading:l[65],error:l[66]}}),e.$on("close",l[93]),e.$on("openExternal",l[200]),{c(){Je(e.$$.fragment)},m(n,s){He(e,n,s),t=!0},p(n,s){const o={};s[2]&2&&(o.item=n[63]),s[2]&4&&(o.content=n[64]),s[2]&8&&(o.loading=n[65]),s[2]&16&&(o.error=n[66]),e.$set(o)},i(n){t||(re(e.$$.fragment,n),t=!0)},o(n){de(e.$$.fragment,n),t=!1},d(n){Ue(e,n)}}}function $i(l){let e,t,n,s,o,r,u,a,d;return{c(){e=f("div"),t=f("input"),n=h(),s=f("div"),o=f("button"),o.textContent=`${m("common.create")}`,r=h(),u=f("button"),u.textContent=`${m("common.cancel")}`,i(t,"type","text"),i(t,"placeholder",m("note.title")),i(t,"class","svelte-pldmec"),i(o,"class","btn btn-primary svelte-pldmec"),i(u,"class","btn svelte-pldmec"),i(s,"class","form-actions svelte-pldmec"),i(e,"class","create-form svelte-pldmec")},m(_,v){C(_,e,v),c(e,t),be(t,l[49]),c(e,n),c(e,s),c(s,o),c(s,r),c(s,u),a||(d=[A(t,"input",l[183]),A(t,"keydown",l[184]),A(o,"click",l[128]),A(u,"click",l[127])],a=!0)},p(_,v){v[1]&262144&&t.value!==_[49]&&be(t,_[49])},d(_){_&&w(e),a=!1,ve(d)}}}function bp(l){let e,t=fe(l[28]),n=[];for(let s=0;sde($[ee],1,1,()=>{$[ee]=null});return{c(){e=f("div"),t=f("div"),n=f("h3"),n.textContent=`${m("nav.createNode")}`,s=h(),L&&L.c(),o=h(),r=f("div"),u=f("span"),u.textContent=`${m("template.select")}`,a=h(),d=f("div"),_=f("button"),Je(v.$$.fragment),g=h(),b=f("div"),k=f("span"),k.textContent=`${m("template.optionNone")}`,y=h(),S=f("span"),S.textContent=`${m("template.none.desc")}`,j=h();for(let ee=0;ee<$.length;ee+=1)$[ee].c();E=h(),D=f("div"),N=f("label"),T=f("span"),T.textContent=`${m("common.name")}`,I=h(),M=f("input"),z=h(),O=f("div"),W=f("button"),q=F(J),H=h(),B=f("button"),B.textContent=`${m("common.cancel")}`,i(n,"class","svelte-pldmec"),i(u,"class","form-label svelte-pldmec"),i(k,"class","template-card-title svelte-pldmec"),i(S,"class","template-card-desc svelte-pldmec"),i(b,"class","template-card-text svelte-pldmec"),i(_,"class","template-card svelte-pldmec"),he(_,"selected",l[46]===null),i(d,"class","template-cards svelte-pldmec"),i(d,"role","group"),i(d,"aria-label",m("template.select")),i(r,"class","form-group svelte-pldmec"),i(T,"class","label-text svelte-pldmec"),i(M,"type","text"),i(M,"placeholder",m("case.namePlaceholder")),i(M,"class","svelte-pldmec"),i(N,"class","svelte-pldmec"),i(D,"class","form-group svelte-pldmec"),i(W,"class","btn btn-primary svelte-pldmec"),W.disabled=Y=!l[44].trim()||l[46]===void 0,i(B,"class","btn svelte-pldmec"),i(O,"class","modal-actions svelte-pldmec"),i(t,"class","modal modal-create svelte-pldmec"),i(e,"class","modal-overlay svelte-pldmec"),i(e,"role","button"),i(e,"tabindex","0")},m(ee,ne){C(ee,e,ne),c(e,t),c(t,n),c(t,s),L&&L.m(t,null),c(t,o),c(t,r),c(r,u),c(r,a),c(r,d),c(d,_),He(v,_,null),c(_,g),c(_,b),c(b,k),c(b,y),c(b,S),c(d,j);for(let le=0;le<$.length;le+=1)$[le]&&$[le].m(d,null);c(t,E),c(t,D),c(D,N),c(N,T),c(N,I),c(N,M),be(M,l[44]),c(t,z),c(t,O),c(O,W),c(W,q),c(O,H),c(O,B),G=!0,R||(K=[A(_,"click",l[261]),A(M,"input",l[263]),A(M,"keydown",l[264]),A(W,"click",l[114]),A(B,"click",l[113]),A(e,"click",ft(l[113])),A(e,"keydown",at(l[113]))],R=!0)},p(ee,ne){if(ee[45]?L?L.p(ee,ne):(L=co(ee),L.c(),L.m(t,o)):L&&(L.d(1),L=null),(!G||ne[1]&32768)&&he(_,"selected",ee[46]===null),ne[0]&64|ne[1]&32768){V=fe(ee[6]);let le;for(le=0;le{k=null}),st()),S[47].node&&S[47].node.parent_id?y?y.p(S,j):(y=po(S),y.c(),y.m(t,o)):y&&(y.d(1),y=null),(!v||j[1]&65536)&&rt(t,"left",S[47].x+"px"),(!v||j[1]&65536)&&rt(t,"top",S[47].y+"px")},i(S){v||(re(k),v=!0)},o(S){de(k),v=!1},d(S){S&&w(e),k&&k.d(),y&&y.d(),g=!1,ve(b)}}}function uo(l){let e,t,n,s,o,r=fe(l[6].length>0?l[6]:[{id:"",title:"template.optionNone",icon:"folder"}]),u=[];for(let d=0;dde(u[d],1,1,()=>{u[d]=null});return{c(){e=f("div"),e.textContent=`${m("common.create")}`,t=h();for(let d=0;d0?d[6]:[{id:"",title:"template.optionNone",icon:"folder"}]);let v;for(v=0;vl[278].call(y)),i(g,"class","svelte-pldmec"),i(v,"class","form-group svelte-pldmec"),i(D,"class","label-text svelte-pldmec"),i(M,"type","text"),i(M,"placeholder",z=l[52]==="open_url"?m("action.urlPlaceholder"):l[52]==="open_folder"||l[52]==="open_file"?m("action.pathPlaceholder"):m("action.commandPlaceholder")),i(M,"class","svelte-pldmec"),i(E,"class","svelte-pldmec"),i(j,"class","form-group svelte-pldmec"),i(J,"class","btn btn-primary svelte-pldmec"),i(Y,"class","btn svelte-pldmec"),i(W,"class","modal-actions svelte-pldmec"),i(t,"class","modal svelte-pldmec"),i(e,"class","modal-overlay svelte-pldmec"),i(e,"role","button"),i(e,"tabindex","0")},m(K,L){C(K,e,L),c(e,t),c(t,n),c(t,s),c(t,o),c(o,r),c(r,u),c(r,a),c(r,d),be(d,l[51]),c(t,_),c(t,v),c(v,g),c(g,b),c(g,k),c(g,y);for(let V=0;V{r[_]=null}),st(),t=r[e],t?t.p(a,d):(t=r[e]=o[e](a),t.c()),re(t,1),t.m(n.parentNode,n))},i(a){s||(re(t),s=!0)},o(a){de(t),s=!1},d(a){a&&w(n),r[e].d(a)}}}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 Ho(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&&Ho(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 tl(l){try{ie("WriteDebugLog",l)}catch{}}function Ll(l){return l?l.map(e=>(e._expanded===void 0&&(e._expanded=!1),e)):[]}function et(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 _t(l){if(!l)return"";try{return new Date(l).toLocaleDateString("ru-RU",{day:"numeric",month:"short"})}catch{return l}}function vt(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 wp(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 Cp(l,e,t){let n=null,s=!1,o=!1,r=!1,u=!1,a=[],d=[],_=[],v=null,g=[],b=0,k=!0,y=[],S=null,j="",E="",D=!1,N="",T="all",I="all",M="",z="",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",L=[],V=null,$=[],ce=[],ee=[],ne=!1,le="",oe="",ae="",we="",ze=!1,Ie=!1,X=null,Z=null,ue=[],Se=0,me=!1,ke="",qe=null,We=null,xe={visible:!1,x:0,y:0,node:null},Ke=!1,De="",Le=!1,ye="",Ve="open_url",Ne="",Oe=[{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")}],je=!0,Te=!1,Me=null,Ee=!1,Ae="",Ge="",Ce={},_e=!1,x=null,ge=[],Fe=[],ot=null,tt="",Ye=!1,gt="",ut={items:[],mode:"copy"},Pe=[],zt=[],al=!1,ul=!1,Ul="",Kl="",Gl=!1,Jl=m("common.delete"),Kt=null,Gt=null,Jt=!1,qt="",Et="",Tt="",fl=null,dl=!1,Vt="",Yt="";const Uo=[{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 pl=null;So(async()=>{try{if(t(0,n=await ie("GetStartupStatus")),s=!0,n.status==="first_run"){t(1,o=!0),t(54,je=!1);return}if(n.status==="recovery"){t(2,r=!0),t(54,je=!1);return}}catch(p){t(24,H=String(p))}try{t(23,Y=await ie("VerstakVersion")||"verstak-gui/v2"),t(4,a=await ie("ListSystemViews")||[]),t(5,d=await ie("ListWorkspaceTree")||[]),t(6,_=await ie("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,_=[])}window.runtime&&window.runtime.EventsOn&&(window.runtime.EventsOn("files-dropped",Sc),pl=()=>window.runtime.EventsOff("files-dropped")),window.addEventListener("keydown",on),t(54,je=!1),Nl()}),Hl(()=>{pl&&pl(),window.removeEventListener("keydown",on)});async function ql(p){t(25,G=p),t(26,R=null),t(27,K="overview"),t(28,L=[]),$=[],t(30,ce=[]),t(31,ee=[]),t(41,ue=[]),t(43,me=!1),t(24,H=""),t(7,v=null),t(8,g=[]),b=0,k=!0,t(9,y=[]),t(10,S=null);try{p==="today"?(t(7,v=await ie("ListTodayView")||{cases:[]}),t(41,ue=await ie("GetSuggestions")||[]),t(42,Se=ue.length)):p==="journal"?await bt():p==="activity"&&(t(8,g=await ie("ListActivityFeed",50,0)||[]),b=g.length,k=g.length===50)}catch(P){t(24,H=String(P)),t(7,v={cases:[]}),t(8,g=[])}}async function ht(p){t(26,R=p),t(27,K="overview"),t(28,L=[]),$=[],t(30,ce=[]),t(31,ee=[]),t(41,ue=[]),t(62,Fe=[]),t(61,ge=[]),t(60,x=null),t(63,ot=null),t(64,tt=""),t(68,Pe=[]),zt=[],t(29,V=null),t(43,me=!1),t(48,Ke=!1),t(24,H=""),t(22,q=[]),await Yl(p.id)}async function Yl(p){try{t(28,L=await ie("ListNotes",p)||[])}catch{}try{$=await ie("ListFiles",p)||[]}catch{}try{t(30,ce=await ie("ListActions",p)||[])}catch{}try{t(31,ee=Ll(await ie("ListWorklog",p)))}catch{}try{t(41,ue=await ie("GetSuggestions")||[]),t(42,Se=ue.length)}catch{t(41,ue=[]),t(42,Se=0)}try{t(22,q=await ie("ListActivityByNode",p,50,0)||[])}catch{}}async function lt(p){t(59,_e=!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(62,Fe=P)}catch{t(62,Fe=[])}t(59,_e=!1)}async function ml(p){if(!R)return;try{const se=await ie("GetNodeDetail",p);se&&t(61,ge=[...ge,{id:p,name:se.title}])}catch{t(61,ge=[...ge,{id:p,name:"..."}])}t(60,x=p),t(58,Ce={...Ce,[p]:!0});const P=await ie("ListWorkspaceChildren",p)||[];Bt(d,p,P),t(5,d=[...d]),await lt(p)}function Ql(){if(ge.length<2)t(61,ge=[]),t(60,x=null),lt(R.id);else{const p=ge[ge.length-2];t(61,ge=ge.slice(0,-1)),t(60,x=p.id),lt(p.id)}}function Xl(p){const P=ge[p];t(61,ge=ge.slice(0,p+1)),t(60,x=P.id),lt(P.id)}async function Qt(p){t(63,ot=p),t(64,tt=""),t(66,gt=""),t(65,Ye=!0);try{gu(p)?t(64,tt=await ie("GetFileBase64",p.fileId)||""):hu(p)&&t(64,tt=await ie("ReadFileText",p.fileId)||"")}catch(P){t(66,gt=String(P))}t(65,Ye=!1)}function _l(){t(63,ot=null),t(64,tt=""),t(66,gt="")}async function Ko(){const p=prompt(m("file.namePrompt"));if(!(!p||!p.trim()))try{const P=x||R.id;await ie("CreateEmptyFile",P,p.trim()),await lt(P),await hl(P)}catch(P){t(24,H=String(P))}}async function Zl(p){try{await ie("DuplicateNode",p);const P=x||R.id;await lt(P),await hl(P)}catch(P){t(24,H=String(P))}}function xl(p){const P=Fe.find(se=>se.id===p);P&&gl(P.id,P.name)}function $l(p){t(67,ut={items:[p],mode:"cut"})}function en(p){t(67,ut={items:[p],mode:"copy"})}async function tn(){if(ut.items.length===0)return;const p=x||R.id;try{if(ut.mode==="copy")for(const P of ut.items)await ie("DuplicateNode",P);else for(const P of ut.items)await ie("MoveNode",P,p);t(67,ut={items:[],mode:"copy"}),await lt(p)}catch(P){t(24,H=String(P))}}function ln(p){Pe.includes(p)?t(68,Pe=Pe.filter(P=>P!==p)):t(68,Pe=[...Pe,p])}function nn(p){t(68,Pe=[p])}function Go(){t(68,Pe=Fe.map(p=>p.id))}function sn(p){if(Fe.length===0)return;const P=Pe.length>0?Pe[Pe.length-1]:Fe[0].id,se=Fe.findIndex(wt=>wt.id===P),pe=Fe.findIndex(wt=>wt.id===p);if(se===-1||pe===-1)return;const $e=Math.min(se,pe),ct=Math.max(se,pe),Ml=Fe.slice($e,ct+1).map(wt=>wt.id),En=new Set(Pe);Ml.forEach(wt=>En.add(wt)),t(68,Pe=[...En])}function Jo(){t(68,Pe=[])}function vl(p){return p.length>0?p:Fe.map(P=>P.id)}async function qo(){const p=vl(Pe),P=Fe.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}),Nt({title:m("delete.confirmTitle"),message:m("delete.confirmMessage")+" "+se+"?",confirmText:m("common.delete"),danger:!0,onConfirm:async()=>{for(const $e of p)try{await ie("DeleteFileOrFolder",$e)}catch(ct){t(24,H=String(ct))}t(68,Pe=[]);const pe=x||R.id;await lt(pe)}})}function Yo(){const p=vl(Pe);t(67,ut={items:p,mode:"cut"}),t(68,Pe=[])}function Qo(){const p=vl(Pe);t(67,ut={items:p,mode:"copy"}),t(68,Pe=[])}function Xo(p,P){const se=Pe.includes(P)?Pe:[P];zt=se,p.dataTransfer.effectAllowed="move",p.dataTransfer.setData("text/plain",se.join(","))}function Zo(p,P){const se=Fe.find(pe=>pe.id===P);se&&se.type==="folder"&&(p.preventDefault(),p.dataTransfer.dropEffect="move")}async function xo(p,P){if(p.preventDefault(),zt.length!==0){for(const se of zt)try{await ie("MoveNode",se,P)}catch(pe){t(24,H=String(pe))}zt=[],t(68,Pe=[]),await lt(x||R.id)}}function on(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(),Qo()):p.key==="x"||p.key==="X"?(p.preventDefault(),Yo()):p.key==="v"||p.key==="V"?(p.preventDefault(),tn()):p.key==="a"||p.key==="A"?(p.preventDefault(),Go()):p.key==="o"||p.key==="O"?(p.preventDefault(),$o()):p.key==="Enter"&&(p.preventDefault(),cn());else if(p.key==="Enter")p.preventDefault(),cn();else if(p.key==="Delete"||p.key==="Backspace"){if(ot){p.preventDefault(),_l();return}if(Pe.length>0){p.preventDefault(),qo();return}if(p.key==="Backspace"&&ge.length>0){p.preventDefault(),Ql();return}}else if(p.key==="Escape"){if(ot){_l();return}if(Pe.length>0){Jo();return}}else p.key==="F2"&&(p.preventDefault(),ec())}function cn(){if(Pe.length===1){const p=Fe.find(P=>P.id===Pe[0]);p&&(p.type==="folder"?ml(p.id):Qt(p))}}function $o(){if(Pe.length===1){const p=Fe.find(P=>P.id===Pe[0]);p&&p.fileId&&ie("OpenFile",p.fileId)}}function gl(p,P){qt=p,t(76,Et=P),t(77,Tt=""),t(75,Jt=!0)}function ec(){if(Pe.length===1){const p=Fe.find(P=>P.id===Pe[0]);p&&gl(p.id,p.name)}}async function rn(){const p=Et.trim();if(!p){t(77,Tt=m("rename.emptyError"));return}try{await ie("ValidateName",p)}catch{t(77,Tt=m("rename.invalidError"));return}t(75,Jt=!1);const P=qt;qt="";try{await ie("RenameNode",P,p),R&&R.id===P&&t(26,R={...R,title:p}),await Ot(),x&&await lt(x)}catch(se){t(24,H=String(se))}}function tc(){t(75,Jt=!1),qt="",t(76,Et=""),t(77,Tt="")}function lc(p){p.key==="Enter"?rn():t(77,Tt="")}function Nt(p){t(71,Ul=p.title||m("common.confirm")),t(72,Kl=p.message||""),t(73,Gl=p.danger!==void 0?p.danger:!0),t(74,Jl=p.confirmText||m("common.delete")),Kt=p.onConfirm||null,Gt=p.onCancel||null,t(70,ul=!0)}function an(){t(70,ul=!1),Kt=null,Gt=null}function nc(){Kt&&Kt(),an()}function sc(){Gt&&Gt(),an()}function un(p){t(45,qe=xe.node),t(46,We=p),t(44,ke=""),t(43,me=!0),Dt()}function ic(){t(45,qe=null),t(46,We=void 0),t(44,ke=""),t(43,me=!0)}function oc(){t(43,me=!1),t(44,ke=""),t(45,qe=null),t(46,We=void 0)}async function fn(){if(!(!ke.trim()||We===void 0))try{const p=qe?qe.id:"",P=We?We.id:"",se=await ie("CreateNodeFromTemplate",p,ke.trim(),P);t(43,me=!1),t(44,ke="");const pe=se?se.id:null;if(t(45,qe=null),t(46,We=void 0),p){t(58,Ce={...Ce,[p]:!0});const $e=await ie("ListWorkspaceChildren",p)||[];Bt(d,p,$e),t(5,d=[...d])}else t(5,d=await ie("ListWorkspaceTree")||d);if(pe){const $e=await ie("GetNodeDetail",pe);$e&&(t(25,G=""),ht($e))}}catch(p){t(24,H=String(p))}}function cc(p,P){t(47,xe={visible:!0,x:p.clientX,y:p.clientY,node:P})}function Dt(){t(47,xe={visible:!1,x:0,y:0,node:null})}async function rc(p){const P=!Ce[p];if(t(58,Ce={...Ce,[p]:P}),!P)return;const se=await ie("ListWorkspaceChildren",p)||[];Bt(d,p,se),t(5,d=[...d])}async function ac(p,P){if(!(!p||!P||p===P))try{const se=await ie("MoveNode",p,P);await Ot();const pe=await ie("GetNodeDetail",p);pe&&(t(25,G=""),ht(pe))}catch(se){t(24,H=String(se))}}async function uc(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 Ot();const pe=await ie("GetNodeDetail",P);pe&&(t(25,G=""),ht(pe))}catch(P){t(24,H=String(P))}}function fc(p){p.preventDefault(),p.dataTransfer.dropEffect="move",t(69,al=!0)}function dc(p){t(69,al=!1)}function dn(p){gl(p.id,p.title),Dt()}function pn(p){Dt(),Nt({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 Ot(),R&&R.id===p.id&&t(26,R=null)}catch(P){t(24,H=String(P))}}})}async function Mt(p){Dt();const P=typeof p=="string"?p:p.id;try{await ie("OpenFolder",P)}catch(se){t(24,H=String(se))}}async function mn(p){Dt();try{await ie("MoveNode",p.id,""),await Ot();const P=await ie("GetNodeDetail",p.id);P&&(t(25,G=""),ht(P))}catch(P){t(24,H=String(P))}}async function Ot(){const p=Object.keys(Ce).filter(se=>Ce[se]),P=await ie("ListWorkspaceTree")||[];for(const se of p){const $e=(await ie("ListWorkspaceChildren",se)||[]).map(ct=>({...ct}));Ho(P,se,$e)}t(5,d=P)}async function hl(p){const P=await ie("ListWorkspaceChildren",p)||[];Bt(d,p,P),t(5,d=[...d])}function _n(){t(48,Ke=!0),t(49,De="")}function pc(){t(48,Ke=!1),t(49,De="")}async function vn(){if(!(!De.trim()||!R))try{const p=await ie("CreateNote",R.id,De.trim());t(28,L=[...L,p&&p.id?p:{id:Date.now().toString(),title:De.trim(),createdAt:new Date().toISOString()}]),t(48,Ke=!1),t(49,De="")}catch{const P={id:Date.now().toString(),title:De.trim(),createdAt:new Date().toISOString()};t(28,L=[...L,P]),t(48,Ke=!1),t(49,De="")}}async function It(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 P=await ie("ReadNote",p.id);t(29,V={id:p.id,title:p.title,content:P||"",dirty:!1})}catch{t(29,V={id:p.id,title:p.title,content:"# "+p.title+` - -`,dirty:!1})}}function mc(){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 _c(p){V&&(t(29,V.content=p.target.value,V),t(29,V.dirty=!0,V))}async function vc(){if(V)try{await ie("SaveNote",V.id,V.content),t(29,V.dirty=!1,V)}catch{t(29,V.dirty=!1,V)}}function Xt(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,ae=p&&p.date||""),t(36,we=p&&p.details||""),t(37,ze=p?!!p.billable:!1),t(38,Ie=p?!!p.approximate:!1),t(32,ne=!0)}function gc(){t(32,ne=!1),t(39,X=null),t(40,Z=null)}async function bl(p=""){const P=p||(R?R.id:"");R&&R.id===P&&t(31,ee=Ll(await ie("ListWorklog",R.id))||ee),G==="journal"&&await bt()}async function hc(){const p=parseInt(oe,10);if(!(!le.trim()||isNaN(p)||p<=0)&&!(!Z&&!X&&!R)){try{if(Z){const P=JSON.stringify(Pl(Z));await ie("AcceptSuggestionFull",Z.nodeId,le.trim(),we,ae,p,Ie,ze,P),await yl()}else X?(await ie("UpdateWorklogEntry",X.id,le.trim(),we,ae,p,Ie,ze),await bl(X.nodeId)):(await ie("CreateWorklogFull",R.id,le.trim(),we,ae,p,Ie,ze),await bl(R.id))}catch(P){t(24,H=String(P));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 ie("DeleteWorklogEntry",p.id),await bl(p.nodeId)}catch(P){t(24,H=String(P))}}})}async function yl(){t(41,ue=await ie("GetSuggestions")||[]),t(42,Se=ue.length),R&&t(31,ee=Ll(await ie("ListWorklog",R.id))),G==="journal"&&await bt()}function Zt(p){t(40,Z=p),t(39,X=null),t(33,le=p.summary||""),t(34,oe=String(p.suggestedMin||"")),t(35,ae=""),t(36,we=""),t(37,ze=!1),t(38,Ie=!0),t(32,ne=!0)}async function wl(p){try{const P=Pl(p),se=JSON.stringify(P);tl("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 yl()}catch(P){tl("acceptTodaySuggestion error: "+P)}}async function hn(p){try{const P=Pl(p),se=JSON.stringify(P);tl("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 yl()}catch(P){tl("acceptJournalSuggestion error: "+P)}}async function bt(){try{const[p,P,se]=await Promise.all([ie("ListWorklogReport",j,E,N,D,T,I),ie("WorklogReportSummary",j,E,N,D,T,I),ie("GetSuggestions")]);if(t(9,y=(p||[]).map(pe=>(pe._expanded===void 0&&(pe._expanded=!1),pe))),t(10,S=P||null),t(41,ue=se||[]),t(42,Se=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,S=null),t(41,ue=[]),t(42,Se=0)}}async function xt(p){try{const P=await ie("SaveWorklogReport",p,j,E,N,D,T,I);t(18,z=P),setTimeout(()=>t(18,z=""),4e3)}catch(P){if(String(P).includes("отменено"))return;t(18,z="Ошибка: "+String(P)),setTimeout(()=>t(18,z=""),6e3)}}let bn;async function Cl(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 Sl(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,ee)}async function bc(){const p=O.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 kc(){clearTimeout(bn),bn=setTimeout(bc,200)}function kn(p){t(14,N=p.id),t(17,M=p.path||p.title),t(13,D=!0),t(19,O=""),t(20,W=[]),t(21,J=!1),bt()}function yn(){t(14,N=""),t(13,D=!1),t(17,M=""),t(19,O=""),t(20,W=[]),t(21,J=!1),bt()}function yc(){t(11,j=""),t(12,E=""),t(14,N=""),t(13,D=!1),t(15,T="all"),t(16,I="all"),t(17,M=""),t(19,O=""),t(20,W=[]),t(21,J=!1),bt()}async function wn(){const p=await ie("PickFile");if(!p)return;const P=x||R.id;await jl(P,p)}async function wc(){const p=await ie("PickDirectory");if(!p)return;const P=x||R.id;await jl(P,p)}async function jl(p,P){t(55,Te=!0);try{const se=await ie("PreviewImport",P);t(56,Me=se),Ae=P,Ge=p,t(57,Ee=!0)}catch(se){t(24,H=String(se))}t(55,Te=!1)}async function El(p){try{const P=Ge||R.id,se=p==="copy"?await ie("AddPathCopy",P,Ae):await ie("AddPathLink",P,Ae);t(57,Ee=!1),t(56,Me=null),t(61,ge=[]),t(60,x=null),await Promise.all([Yl(P),lt(P),hl(P)])}catch(P){t(24,H=String(P))}}function Cc(){t(57,Ee=!1),t(56,Me=null)}async function Cn({id:p,type:P}){const se=m(P==="folder"?"delete.folder":"delete.file");Nt({title:m("delete.confirmTitle"),message:m("delete.confirmMessage")+" "+se+"?",confirmText:m("common.delete"),danger:!0,onConfirm:async()=>{try{await ie("DeleteFileOrFolder",p),$=$.filter($e=>$e.nodeId!==p);const pe=x||R.id;await lt(pe)}catch(pe){t(24,H=String(pe))}}})}async function Sc(p){if(!p||p.length===0)return;if(!R){t(24,H=m("error.selectCaseFirst"));return}const P=p[0];await jl(R.id,P)}function jc(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 Ec(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 Tc(){t(50,Le=!0),t(51,ye=""),t(52,Ve="open_url"),t(53,Ne="")}function Nc(){t(50,Le=!1),t(51,ye=""),t(53,Ne="")}async function Tl(){if(!(!ye.trim()||!Ne.trim()||!R))try{const p=await ie("CreateAction",R.id,Ve,ye.trim(),Ne.trim());p&&p.id&&t(30,ce=[...ce,p]),t(50,Le=!1),t(51,ye=""),t(53,Ne="")}catch(p){t(24,H=String(p))}}async function Sn(p){try{await ie("DeleteAction",p),t(30,ce=ce.filter(P=>P.id!==p))}catch(P){t(24,H=String(P))}}function Dc(p){const P=Oe.find(se=>se.id===p);return P?P.label:p}async function dt(p){try{const P=await ie("GetNodeDetail",p);P&&ht(P)}catch(P){t(24,H=String(P))}}async function kt(p){const P=wp(p),se=P.nodeId;if(se)try{const pe=await ie("GetNodeDetail",se);if(!pe)return;if(ht(pe),P.tab==="notes"){if(t(27,K="notes"),P.targetId){try{t(28,L=await ie("ListNotes",se)||[])}catch{}const $e=L.find(ct=>ct.id===P.targetId);$e&&setTimeout(()=>It($e),100)}}else if(P.tab==="files")if(t(27,K="files"),P.targetId)try{const $e=await ie("GetNodeDetail",P.targetId);if($e&&$e.parent_id){await lt($e.parent_id);const ct=Fe.find(Ml=>Ml.id===P.targetId);ct&&ct.type==="file"&&vu(ct)&&setTimeout(()=>Qt(ct),150)}else await lt(se)}catch{await lt(se)}else await lt(se)}catch(pe){t(24,H=String(pe))}}async function yt(p){return kt(p)}async function Nl(){try{t(78,fl=await ie("SyncStatus"))}catch{t(78,fl={configured:!1,serverUrl:"",deviceId:"",unpushedOps:0,lastSyncAt:"",syncInterval:0})}}let jn="general";function Dl(p){t(82,jn=p||"general"),t(3,u=!0)}function Mc(){t(3,u=!1)}function Ic(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 Ac(){t(79,dl=!0),t(80,Vt=""),t(81,Yt="");try{const p=await ie("SyncNow");await Nl(),t(80,Vt=Ic(p)),t(81,Yt=Vt?"warning":"")}catch(p){console.error("sync error:",p),t(80,Vt=`${m("sync.status.error")}: ${(p==null?void 0:p.message)||p}`),t(81,Yt="warning")}finally{t(79,dl=!1)}}function Fc(p){t(1,o=!1),t(0,n=p),t(54,je=!1),window.location.reload()}function Pc(p){t(2,r=!1),t(0,n=p),t(54,je=!1),window.location.reload()}const Lc=p=>p.nodeId===R.id,Rc=p=>ql(p.id),zc=()=>Dl("sync"),Vc=()=>Dl(),Oc=()=>t(24,H=""),Wc=()=>t(24,H=""),Bc=()=>t(24,H="");function Hc(){V.content=this.value,t(29,V)}const Uc=p=>{t(27,K=p.id),p.id==="files"&&R&&Fe.length===0&&!x&<(R.id)},Kc=()=>{t(27,K="notes"),_n()},Gc=()=>{t(27,K="files"),wn()},Jc=()=>t(27,K="worklog"),qc=p=>It(p),Yc=p=>It(p);function Qc(){De=this.value,t(49,De)}const Xc=p=>p.key==="Enter"&&vn(),Zc=p=>It(p),xc=p=>It(p),$c=p=>{const P=p.detail;P===0?(t(61,ge=[]),t(60,x=null),lt(R.id)):Xl(P-1)},er=p=>ml(p.detail),tr=p=>Qt(p.detail),lr=p=>ie("OpenFile",p.detail),nr=p=>ie("OpenFolder",p.detail),sr=p=>Cn(p.detail),ir=p=>xl(p.detail.id),or=p=>Zl(p.detail),cr=p=>$l(p.detail),rr=p=>en(p.detail),ar=p=>nn(p.detail),ur=p=>ln(p.detail),fr=p=>sn(p.detail),dr=p=>ie("OpenFile",p.detail),pr=p=>ie("RunAction",p.id),mr=p=>Sn(p.id),_r=()=>Xt(),vr=p=>p.nodeId===R.id,gr=p=>Zt(p),hr=p=>wl(p),br=(p,P,se)=>t(41,P[se]._expanded=!p._expanded,ue,t(26,R)),kr=(p,P,se,pe)=>pe.key==="Enter"&&t(41,P[se]._expanded=!p._expanded,ue,t(26,R)),yr=p=>kt(p),wr=p=>Mt(p.nodeId),Cr=p=>Xt(p),Sr=p=>kl(p),jr=p=>kt(p),Er=p=>Mt(p.nodeId),Tr=p=>Sl(p),Nr=(p,P)=>P.key==="Enter"&&Sl(p),Dr=p=>yt(p),Mr=(p,P)=>P.key==="Enter"&&yt(p);function Ir(){j=this.value,t(11,j)}function Ar(){E=this.value,t(12,E)}const Fr=()=>{t(19,O=""),t(17,M=""),yn()};function Pr(){O=this.value,t(19,O)}const Lr=()=>setTimeout(()=>t(21,J=!1),200),Rr=p=>kn(p);function zr(){D=this.checked,t(13,D)}function Vr(){T=ll(this),t(15,T)}function Or(){I=ll(this),t(16,I)}const Wr=()=>xt("csv"),Br=()=>xt("markdown"),Hr=()=>xt("pdf"),Ur=p=>dt(p.nodeId),Kr=(p,P,se,pe)=>t(41,P[se].suggestedMin=parseInt(pe.target.value),ue),Gr=p=>Zt(p),Jr=p=>hn(p),qr=(p,P,se)=>t(41,P[se]._expanded=!p._expanded,ue),Yr=(p,P,se,pe)=>pe.key==="Enter"&&t(41,P[se]._expanded=!p._expanded,ue),Qr=p=>kt(p),Xr=p=>Mt(p.nodeId),Zr=p=>dt(p.nodeId),xr=p=>Cl(p),$r=(p,P)=>P.key==="Enter"&&Cl(p),ea=p=>Xt(p),ta=p=>kl(p),la=p=>kt(p),na=p=>dt(p.nodeId),sa=(p,P,se,pe)=>t(41,P[se].suggestedMin=parseInt(pe.target.value),ue),ia=p=>Zt(p),oa=p=>wl(p),ca=(p,P,se)=>t(41,P[se]._expanded=!p._expanded,ue),ra=(p,P,se,pe)=>pe.key==="Enter"&&t(41,P[se]._expanded=!p._expanded,ue),aa=p=>kt(p),ua=p=>Mt(p.nodeId),fa=p=>dt(p.nodeId),da=(p,P)=>P.key==="Enter"&&dt(p.nodeId),pa=p=>dt(p.nodeId),ma=(p,P)=>P.key==="Enter"&&dt(p.nodeId),_a=p=>yt(p),va=(p,P)=>P.key==="Enter"&&yt(p),ga=p=>yt(p),ha=(p,P)=>P.key==="Enter"&&yt(p),ba=()=>t(46,We=null),ka=p=>t(46,We=p);function ya(){ke=this.value,t(44,ke)}const wa=p=>p.key==="Enter"&&fn(),Ca=p=>un(p),Sa=()=>mn(xe.node),ja=()=>dn(xe.node),Ea=()=>pn(xe.node),Ta=()=>Mt(xe.node);function Na(){ae=this.value,t(35,ae)}function Da(){le=this.value,t(33,le)}function Ma(){oe=ol(this.value),t(34,oe)}function Ia(){we=this.value,t(36,we)}function Aa(){ze=this.checked,t(37,ze)}function Fa(){Ie=this.checked,t(38,Ie)}function Pa(){ye=this.value,t(51,ye)}const La=p=>p.key==="Enter"&&Tl();function Ra(){Ve=ll(this),t(52,Ve),t(84,Oe)}function za(){Ne=this.value,t(53,Ne)}const Va=p=>p.key==="Enter"&&Tl(),Oa=()=>El("copy"),Wa=()=>El("link");function Ba(){Et=this.value,t(76,Et)}return[n,o,r,u,a,d,_,v,g,y,S,j,E,D,N,T,I,M,z,O,W,J,q,Y,H,G,R,K,L,V,ce,ee,ne,le,oe,ae,we,ze,Ie,X,Z,ue,Se,me,ke,qe,We,xe,Ke,De,Le,ye,Ve,Ne,je,Te,Me,Ee,Ce,_e,x,ge,Fe,ot,tt,Ye,gt,ut,Pe,al,ul,Ul,Kl,Gl,Jl,Jt,Et,Tt,fl,dl,Vt,Yt,jn,B,Oe,Uo,ql,ht,lt,ml,Ql,Xl,Qt,_l,Ko,Zl,xl,$l,en,tn,ln,nn,sn,Xo,Zo,xo,rn,tc,lc,nc,sc,un,ic,oc,fn,cc,Dt,rc,ac,uc,fc,dc,dn,pn,Mt,mn,_n,pc,vn,It,mc,_c,vc,Xt,gc,hc,kl,Zt,wl,hn,bt,xt,Cl,Sl,kc,kn,yn,yc,wn,wc,El,Cc,Cn,jc,Ec,Tc,Nc,Tl,Sn,Dc,dt,kt,yt,Nl,Dl,Mc,Ac,Fc,Pc,Lc,Rc,zc,Vc,Oc,Wc,Bc,Hc,Uc,Kc,Gc,Jc,qc,Yc,Qc,Xc,Zc,xc,$c,er,tr,lr,nr,sr,ir,or,cr,rr,ar,ur,fr,dr,pr,mr,_r,vr,gr,hr,br,kr,yr,wr,Cr,Sr,jr,Er,Tr,Nr,Dr,Mr,Ir,Ar,Fr,Pr,Lr,Rr,zr,Vr,Or,Wr,Br,Hr,Ur,Kr,Gr,Jr,qr,Yr,Qr,Xr,Zr,xr,$r,ea,ta,la,na,sa,ia,oa,ca,ra,aa,ua,fa,da,pa,ma,_a,va,ga,ha,ba,ka,ya,wa,Ca,Sa,ja,Ea,Ta,Na,Da,Ma,Ia,Aa,Fa,Pa,La,Ra,za,Va,Oa,Wa,Ba]}class Sp extends Ze{constructor(e){super(),Xe(this,e,Cp,yp,Qe,{},null,[-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1])}}new Sp({target:document.getElementById("app")}); diff --git a/cmd/verstak-gui/frontend-dist/assets/main-DAyIHTpH.css b/cmd/verstak-gui/frontend-dist/assets/main-DAyIHTpH.css deleted file mode 100644 index bdca41f..0000000 --- a/cmd/verstak-gui/frontend-dist/assets/main-DAyIHTpH.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-pldmec.svelte-pldmec,.svelte-pldmec.svelte-pldmec:before,.svelte-pldmec.svelte-pldmec:after{box-sizing:border-box;margin:0;padding:0}.app.svelte-pldmec.svelte-pldmec{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-pldmec.svelte-pldmec{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-pldmec.svelte-pldmec{padding:16px 20px;display:flex;align-items:center;gap:10px;border-bottom:1px solid #2a2a3c;flex-shrink:0}.logo.svelte-pldmec.svelte-pldmec{font-size:20px;line-height:1}.brand-name.svelte-pldmec.svelte-pldmec{font-size:16px;font-weight:600}.sidebar-nav.svelte-pldmec.svelte-pldmec{flex:1;overflow-y:auto;padding:12px 0}.nav-group.svelte-pldmec.svelte-pldmec{margin-bottom:16px}.nav-label.svelte-pldmec.svelte-pldmec{font-size:10px;text-transform:uppercase;letter-spacing:.5px;color:#666;padding:4px 20px;margin-bottom:4px}.nav-item.svelte-pldmec.svelte-pldmec{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-pldmec.svelte-pldmec:hover{background:#223}.nav-item.selected.svelte-pldmec.svelte-pldmec{background:#2a2a4a;color:#fff;font-weight:500}.workspace-tree-area.svelte-pldmec.svelte-pldmec{min-height:32px}.workspace-tree-area.drop-valid.svelte-pldmec.svelte-pldmec{outline:2px dashed #4ade80;outline-offset:-2px;background:#4ade800d}.nav-empty.svelte-pldmec.svelte-pldmec{padding:8px 20px;color:#555;font-size:12px}.nav-label-row.svelte-pldmec.svelte-pldmec{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-pldmec.svelte-pldmec{background:none;border:none;color:#666;cursor:pointer;font-size:16px;padding:0 4px;font-family:inherit;line-height:1}.nav-add-btn.svelte-pldmec.svelte-pldmec:hover{color:#ccc}.context-menu-backdrop.svelte-pldmec.svelte-pldmec{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200}.context-menu.svelte-pldmec.svelte-pldmec{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-pldmec.svelte-pldmec{padding:6px 12px;font-size:10px;text-transform:uppercase;letter-spacing:.5px;color:#666}.context-menu-item.svelte-pldmec.svelte-pldmec{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-pldmec.svelte-pldmec:hover{background:#223;color:#fff}.context-menu-item.danger.svelte-pldmec.svelte-pldmec{color:#ff6b6b}.context-menu-item.danger.svelte-pldmec.svelte-pldmec:hover{background:#3a2222;color:#ff6b6b}.context-menu-divider.svelte-pldmec.svelte-pldmec{height:1px;background:#2a2a3c;margin:4px 0}.create-context.svelte-pldmec.svelte-pldmec{font-size:12px;color:#888;margin-bottom:12px}.sidebar-footer.svelte-pldmec.svelte-pldmec{padding:8px 12px;border-top:1px solid #2a2a3c;flex-shrink:0;display:flex;flex-direction:column;gap:4px}.sidebar-footer-row.svelte-pldmec.svelte-pldmec{display:flex;align-items:center;justify-content:space-between}.version.svelte-pldmec.svelte-pldmec{font-size:11px;color:#555;text-align:center}.main.svelte-pldmec.svelte-pldmec{flex:1;display:flex;flex-direction:column;height:100vh;min-width:0;overflow:hidden;background:#13131f}.header.svelte-pldmec.svelte-pldmec{padding:12px 24px;border-bottom:1px solid #2a2a3c;display:flex;align-items:center;flex-shrink:0;min-height:48px}.header-left.svelte-pldmec.svelte-pldmec{display:flex;align-items:center;gap:8px;flex:1}.header-right.svelte-pldmec.svelte-pldmec{display:flex;align-items:center;gap:8px}.sidebar-settings-btn.svelte-pldmec.svelte-pldmec{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-pldmec.svelte-pldmec:hover{background:#1e1e38;color:#a5b4fc}.sidebar-settings-btn.svelte-pldmec.svelte-pldmec:active{background:#252545;color:#818cf8}.crumb.svelte-pldmec.svelte-pldmec{font-size:14px;font-weight:500}.crumb.placeholder.svelte-pldmec.svelte-pldmec{color:#666}.crumb-type.svelte-pldmec.svelte-pldmec{font-size:11px;color:#555;background:#1e1e2e;padding:2px 8px;border-radius:10px;margin-left:8px}.error-banner.svelte-pldmec.svelte-pldmec{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-pldmec.svelte-pldmec{background:none;border:none;color:#f66;cursor:pointer;padding:2px;display:flex;align-items:center;border-radius:2px}.dismiss-btn.svelte-pldmec.svelte-pldmec:hover{color:#f44}.tabs.svelte-pldmec.svelte-pldmec{display:flex;border-bottom:1px solid #2a2a3c;flex-shrink:0;padding:0 24px}.tab.svelte-pldmec.svelte-pldmec{padding:10px 16px;border:none;background:none;color:#888;font-size:13px;cursor:pointer;border-bottom:2px solid transparent;font-family:inherit}.tab.svelte-pldmec.svelte-pldmec:hover{color:#a5b4fc}.tab.active.svelte-pldmec.svelte-pldmec{color:#e4e4ef;border-bottom-color:#818cf8;background:#6366f11f;font-weight:600}.tab-content.svelte-pldmec.svelte-pldmec{flex:1;overflow-y:auto}.note-editor.svelte-pldmec.svelte-pldmec{flex:1;display:flex;flex-direction:column;height:100%}.note-editor-header.svelte-pldmec.svelte-pldmec{padding:12px 24px;border-bottom:1px solid #2a2a3c;display:flex;align-items:center;gap:12px;flex-shrink:0}.note-title.svelte-pldmec.svelte-pldmec{font-size:16px;font-weight:500}.dirty-mark.svelte-pldmec.svelte-pldmec{color:#f59e0b;font-size:10px}.note-editor-actions.svelte-pldmec.svelte-pldmec{margin-left:auto;display:flex;gap:8px}.note-textarea.svelte-pldmec.svelte-pldmec{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-pldmec.svelte-pldmec{padding:24px}.overview.svelte-pldmec h2.svelte-pldmec{font-size:24px;margin-bottom:16px}.meta-grid.svelte-pldmec.svelte-pldmec{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px;margin-bottom:24px}.meta-item.svelte-pldmec.svelte-pldmec{background:#1a1a28;padding:12px 16px;border-radius:8px}.meta-label.svelte-pldmec.svelte-pldmec{display:block;font-size:11px;color:#666;margin-bottom:4px;text-transform:uppercase}.quick-actions.svelte-pldmec.svelte-pldmec{display:flex;gap:8px;margin-bottom:24px;flex-wrap:wrap}.qa-btn.svelte-pldmec.svelte-pldmec{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-pldmec.svelte-pldmec:hover{background:#223}.qa-btn.svelte-pldmec.svelte-pldmec:disabled{opacity:.4;cursor:not-allowed}.recent-section.svelte-pldmec.svelte-pldmec{margin-bottom:24px}.recent-section.svelte-pldmec h3.svelte-pldmec{font-size:13px;color:#666;text-transform:uppercase;margin-bottom:8px}.recent-note.svelte-pldmec.svelte-pldmec{padding:8px 12px;border-radius:6px;cursor:pointer;display:flex;justify-content:space-between}.recent-note.svelte-pldmec.svelte-pldmec:hover{background:#1a1a28}.recent-date.svelte-pldmec.svelte-pldmec{font-size:11px;color:#555}.recent-entry.svelte-pldmec.svelte-pldmec{padding:6px 0;font-size:13px;color:#888;border-bottom:1px solid #1a1a28}.notes-tab.svelte-pldmec.svelte-pldmec{padding:24px}.tab-toolbar.svelte-pldmec.svelte-pldmec{margin-bottom:16px}.create-form.svelte-pldmec.svelte-pldmec{background:#1a1a28;padding:16px;border-radius:8px;margin-bottom:16px}.create-form.svelte-pldmec input.svelte-pldmec{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-pldmec input.svelte-pldmec:focus{outline:none;border-color:#6366f1}.form-actions.svelte-pldmec.svelte-pldmec{display:flex;gap:8px}.notes-list.svelte-pldmec.svelte-pldmec{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}.note-card.svelte-pldmec.svelte-pldmec{background:#1a1a28;border:1px solid #2a2a3c;border-radius:8px;padding:16px;cursor:pointer}.note-card.svelte-pldmec.svelte-pldmec:hover{border-color:#3a3a5c}.note-card-title.svelte-pldmec.svelte-pldmec{font-size:14px;font-weight:500;margin-bottom:4px}.note-card-date.svelte-pldmec.svelte-pldmec{font-size:11px;color:#555}.worklog-tab.svelte-pldmec.svelte-pldmec{padding:24px}.worklog-toolbar.svelte-pldmec.svelte-pldmec{margin-bottom:16px}.worklog-entry.svelte-pldmec.svelte-pldmec{padding:12px 0;border-bottom:1px solid #1a1a28}.suggestions-title.svelte-pldmec.svelte-pldmec{font-size:13px;font-weight:600;color:#a5b4fc;margin-bottom:12px;text-transform:uppercase;letter-spacing:.5px}.suggestion-summary.svelte-pldmec.svelte-pldmec{font-size:14px;color:#e4e4ef}.suggestion-meta.svelte-pldmec.svelte-pldmec{font-size:12px;color:#8888a0;margin-top:2px}.suggestion-main.svelte-pldmec.svelte-pldmec{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;cursor:pointer;gap:12px}.suggestion-card.expanded.svelte-pldmec.svelte-pldmec{border-color:#3a3a5c}.suggestion-detail.svelte-pldmec.svelte-pldmec{padding:0 12px 10px;border-top:1px solid #2a2a3c}.suggestion-detail-title.svelte-pldmec.svelte-pldmec{font-size:11px;font-weight:600;color:#a5b4fc;text-transform:uppercase;letter-spacing:.3px;padding:8px 0 4px}.suggestion-detail-event.svelte-pldmec.svelte-pldmec{display:flex;align-items:center;gap:8px;padding:3px 0;font-size:13px;color:#b0b0c0}.suggestion-event-time.svelte-pldmec.svelte-pldmec{color:#a0a0b8;font-variant-numeric:tabular-nums;white-space:nowrap;min-width:48px}.suggestion-event-type.svelte-pldmec.svelte-pldmec{color:#8888a0;font-size:11px;background:#1a1a2e;padding:1px 6px;border-radius:3px}.suggestion-event-title.svelte-pldmec.svelte-pldmec{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.suggestion-card.svelte-pldmec.svelte-pldmec{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-pldmec.svelte-pldmec:last-child{margin-bottom:0}.suggestion-info.svelte-pldmec.svelte-pldmec{flex:1;display:flex;flex-direction:column;gap:2px}.suggestion-node.svelte-pldmec.svelte-pldmec{color:#a5b4fc;font-weight:600;font-size:13px;text-decoration:none;cursor:pointer}.suggestion-node.svelte-pldmec.svelte-pldmec:hover{text-decoration:underline}.suggestion-actions.svelte-pldmec.svelte-pldmec{display:flex;align-items:center;gap:6px;flex-shrink:0}.suggestion-min-input.svelte-pldmec.svelte-pldmec{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-pldmec.svelte-pldmec{font-size:12px;color:#8888a0}.suggestion-confidence.svelte-pldmec.svelte-pldmec{font-size:11px;padding:2px 6px;border-radius:3px}.suggestion-confidence.low.svelte-pldmec.svelte-pldmec{color:#fbbf24}.suggestion-confidence.medium.svelte-pldmec.svelte-pldmec{color:#60a5fa}.suggestion-confidence.high.svelte-pldmec.svelte-pldmec{color:#34d399}.journal-screen.svelte-pldmec.svelte-pldmec{padding:24px;overflow-y:auto;flex:1}.journal-header.svelte-pldmec.svelte-pldmec{margin-bottom:24px}.journal-header.svelte-pldmec h2.svelte-pldmec{margin:0 0 16px}.journal-summary.svelte-pldmec.svelte-pldmec{display:flex;flex-wrap:wrap;gap:24px;margin-bottom:24px;padding:16px;background:#1a1a2e;border-radius:8px;border:1px solid #2a2a3c}.summary-total.svelte-pldmec.svelte-pldmec{font-size:18px;font-weight:700;color:#e4e4ef;width:100%;margin-bottom:4px}.summary-section.svelte-pldmec.svelte-pldmec{flex:1;min-width:200px}.summary-label.svelte-pldmec.svelte-pldmec{font-size:12px;font-weight:600;color:#a5b4fc;text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px}.summary-row.svelte-pldmec.svelte-pldmec{display:flex;gap:8px;font-size:13px;padding:4px 0;border-bottom:1px solid #2a2a3c}.summary-row.svelte-pldmec span.svelte-pldmec:first-child{flex:1;color:#e4e4ef}.summary-count.svelte-pldmec.svelte-pldmec{color:#8888a0}.journal-table-wrap.svelte-pldmec.svelte-pldmec{overflow-x:auto}.journal-table.svelte-pldmec.svelte-pldmec{width:100%;border-collapse:collapse;font-size:13px}.journal-table.svelte-pldmec th.svelte-pldmec{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-pldmec td.svelte-pldmec{padding:8px 12px;border-bottom:1px solid #1a1a28;color:#e4e4ef}.journal-table.svelte-pldmec tr:hover td.svelte-pldmec{background:#1e1e32}.journal-table.svelte-pldmec .link-btn.svelte-pldmec{color:#a5b4fc}.journal-path-cell.svelte-pldmec.svelte-pldmec{max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#a0a0b8;font-size:12px}.journal-min-cell.svelte-pldmec.svelte-pldmec{text-align:right;font-variant-numeric:tabular-nums}.journal-date-cell.svelte-pldmec.svelte-pldmec{color:#b0b0c0;white-space:nowrap}.journal-bool-cell.svelte-pldmec.svelte-pldmec{text-align:center;color:#a0a0b8}.journal-row.svelte-pldmec.svelte-pldmec{cursor:pointer}.journal-row.svelte-pldmec:hover td.svelte-pldmec{background:#1e1e32}.journal-row.expanded.svelte-pldmec td.svelte-pldmec{background:#1a1a30;border-bottom:none}.journal-summary-cell.svelte-pldmec.svelte-pldmec{max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.journal-row-detail.svelte-pldmec td.svelte-pldmec{padding:0 12px 12px;background:#16162a}.journal-detail-body.svelte-pldmec.svelte-pldmec{display:flex;flex-direction:column;gap:12px;padding:8px 0}.journal-detail-actions.svelte-pldmec.svelte-pldmec{display:flex;gap:8px;justify-content:flex-end}.journal-detail-section.svelte-pldmec.svelte-pldmec{font-size:13px}.journal-detail-label.svelte-pldmec.svelte-pldmec{font-size:11px;font-weight:600;color:#a5b4fc;text-transform:uppercase;letter-spacing:.3px;display:block;margin-bottom:4px}.journal-detail-section.svelte-pldmec p.svelte-pldmec{margin:0;color:#c0c0d0}.journal-event-row.svelte-pldmec.svelte-pldmec{display:flex;align-items:center;gap:8px;padding:4px 0;font-size:13px;color:#b0b0c0}.journal-event-time.svelte-pldmec.svelte-pldmec{color:#a0a0b8;font-variant-numeric:tabular-nums;white-space:nowrap;min-width:48px}.journal-event-type.svelte-pldmec.svelte-pldmec{color:#8888a0;font-size:11px;background:#1a1a2e;padding:1px 6px;border-radius:3px}.journal-event-title.svelte-pldmec.svelte-pldmec{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.journal-node-picker.svelte-pldmec input[type=text].svelte-pldmec{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-pldmec.svelte-pldmec{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-pldmec.svelte-pldmec{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-pldmec.svelte-pldmec:hover{background:#2a2a4a}.journal-search-title.svelte-pldmec.svelte-pldmec{display:block;font-weight:500}.journal-search-path.svelte-pldmec.svelte-pldmec{display:block;font-size:11px;color:#8888a0;margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.journal-selected-node.svelte-pldmec.svelte-pldmec{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-pldmec.svelte-pldmec:hover{background:#2a2a4a}.journal-node-clear.svelte-pldmec.svelte-pldmec{color:#8888a0;font-size:14px;margin-left:4px}.journal-status-msg.svelte-pldmec.svelte-pldmec{font-size:12px;color:#34d399;padding:4px 8px;background:#1a2a1e;border-radius:4px}.journal-include-chk.svelte-pldmec.svelte-pldmec{width:16px;height:16px;accent-color:#6366f1;cursor:pointer}.today-suggestions.svelte-pldmec.svelte-pldmec{margin-bottom:24px}.link-btn.svelte-pldmec.svelte-pldmec{background:none;border:none;padding:0;color:#a5b4fc;font:inherit;cursor:pointer;text-align:left}.link-btn.svelte-pldmec.svelte-pldmec:hover{text-decoration:underline}.nav-badge.svelte-pldmec.svelte-pldmec{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-pldmec.svelte-pldmec{padding:24px}.action-card.svelte-pldmec.svelte-pldmec{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-pldmec.svelte-pldmec{display:flex;align-items:center;gap:8px;flex:1;min-width:0}.action-title.svelte-pldmec.svelte-pldmec{font-weight:500}.action-type.svelte-pldmec.svelte-pldmec{font-size:11px;color:#888;background:#223;padding:2px 8px;border-radius:10px;white-space:nowrap}.action-data.svelte-pldmec.svelte-pldmec{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-pldmec.svelte-pldmec{display:flex;gap:4px;flex-shrink:0}.action-btns.svelte-pldmec .btn-danger.svelte-pldmec{color:#ff6b6b;border-color:#4a2222;padding:4px 8px}.action-btns.svelte-pldmec .btn-danger.svelte-pldmec:hover{background:#3a2222}.empty-state.svelte-pldmec.svelte-pldmec{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px;text-align:center}.empty-state.svelte-pldmec p.svelte-pldmec{margin:0;font-size:14px;color:#666}.empty-state.svelte-pldmec .empty-icon.svelte-pldmec{margin-bottom:12px;color:#444}.empty-state.svelte-pldmec .hint.svelte-pldmec{font-size:12px;color:#555;margin-top:6px}.empty-state.svelte-pldmec .empty-actions.svelte-pldmec{display:flex;gap:8px;justify-content:center;margin-top:16px}.welcome.svelte-pldmec.svelte-pldmec{padding:48px 24px;text-align:center}.welcome.svelte-pldmec h2.svelte-pldmec{font-size:32px;font-weight:300;color:#8888a4;margin-bottom:16px}.welcome.svelte-pldmec p.svelte-pldmec{color:#666;font-size:14px}.error-text.svelte-pldmec.svelte-pldmec{color:#f88}.modal-overlay.svelte-pldmec.svelte-pldmec{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-pldmec.svelte-pldmec{background:#1a1a28;border:1px solid #2a2a3c;border-radius:12px;padding:24px;width:400px;max-width:90vw}.modal.svelte-pldmec h3.svelte-pldmec{font-size:18px;margin-bottom:16px}.modal.svelte-pldmec textarea.svelte-pldmec{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-pldmec.svelte-pldmec{width:460px}.form-group.svelte-pldmec.svelte-pldmec{margin-bottom:12px}.form-row.svelte-pldmec.svelte-pldmec{display:flex;gap:16px;margin-bottom:12px}.form-group.svelte-pldmec label.svelte-pldmec{display:block}.form-group.svelte-pldmec .label-text.svelte-pldmec,.form-group.svelte-pldmec .form-label.svelte-pldmec{display:block;font-size:12px;color:#666;margin-bottom:4px}.form-group.svelte-pldmec input.svelte-pldmec,.form-group.svelte-pldmec select.svelte-pldmec{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-pldmec select.svelte-pldmec{-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-pldmec input.svelte-pldmec:focus,.form-group.svelte-pldmec select.svelte-pldmec:focus{outline:none;border-color:#6366f1}.modal-actions.svelte-pldmec.svelte-pldmec{display:flex;gap:8px;justify-content:flex-end;margin-top:16px}.btn.svelte-pldmec.svelte-pldmec{padding:8px 16px;border:1px solid #2a2a3c;background:#1a1a28;color:#ccc;border-radius:6px;cursor:pointer;font-size:13px;font-family:inherit}.btn.svelte-pldmec.svelte-pldmec:hover{background:#223}.btn-primary.svelte-pldmec.svelte-pldmec{background:#6366f1;border-color:#6366f1;color:#fff}.btn-primary.svelte-pldmec.svelte-pldmec:hover{background:#4f46e5}.btn.svelte-pldmec.svelte-pldmec:disabled{opacity:.4;cursor:not-allowed}.btn-sm.svelte-pldmec.svelte-pldmec{padding:4px 10px;font-size:12px}.btn-danger.svelte-pldmec.svelte-pldmec{color:#ff6b6b;border-color:#4a2222}.btn-danger.svelte-pldmec.svelte-pldmec: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-pldmec.svelte-pldmec{padding:20px}.files-tab.svelte-pldmec .tab-toolbar.svelte-pldmec{display:flex;gap:8px;align-items:center;margin-bottom:16px}.file-list.svelte-pldmec.svelte-pldmec{display:flex;flex-direction:column}.back-btn.svelte-pldmec.svelte-pldmec{margin-bottom:4px;display:inline-flex;align-items:center;gap:4px}.import-summary.svelte-pldmec.svelte-pldmec{margin-bottom:16px}.summary-row.svelte-pldmec.svelte-pldmec{display:flex;justify-content:space-between;padding:6px 0;font-size:14px;border-bottom:1px solid #2a2a3c}.summary-warn.svelte-pldmec.svelte-pldmec{margin-top:8px;padding:8px 12px;background:#3a2a22;border-radius:6px;color:#fa6;font-size:13px}.rename-error.svelte-pldmec.svelte-pldmec{color:#ff6b6b;font-size:12px;margin-top:4px}.template-cards.svelte-pldmec.svelte-pldmec{display:flex;flex-direction:column;gap:6px;margin-bottom:8px}.template-card.svelte-pldmec.svelte-pldmec{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-pldmec.svelte-pldmec:hover{background:#1e1e30;border-color:#3a3a5c}.template-card.selected.svelte-pldmec.svelte-pldmec{background:#2a2a50;border-color:#6366f1;color:#e4e4ef}.template-card-text.svelte-pldmec.svelte-pldmec{display:flex;flex-direction:column;gap:2px;min-width:0}.template-card-title.svelte-pldmec.svelte-pldmec{font-weight:500}.template-card-desc.svelte-pldmec.svelte-pldmec{font-size:11px;color:#888}.today-dashboard.svelte-pldmec.svelte-pldmec{padding:24px;overflow-y:auto;flex:1}.today-header.svelte-pldmec.svelte-pldmec{display:flex;align-items:baseline;gap:12px;margin-bottom:16px}.today-header.svelte-pldmec h2.svelte-pldmec{font-size:24px}.today-date.svelte-pldmec.svelte-pldmec{font-size:13px;color:#666}.today-summary.svelte-pldmec.svelte-pldmec{display:flex;gap:8px;margin-bottom:20px;flex-wrap:wrap}.summary-chip.svelte-pldmec.svelte-pldmec{font-size:12px;color:#b0b0c0;background:#1a1a28;border:1px solid #2a2a3c;padding:4px 12px;border-radius:16px}.today-case.svelte-pldmec.svelte-pldmec{background:#1a1a28;border:1px solid #2a2a3c;border-radius:8px;margin-bottom:12px;overflow:hidden}.today-case-header.svelte-pldmec.svelte-pldmec{padding:12px 16px;display:flex;align-items:center;gap:8px;border-bottom:1px solid #2a2a3c;cursor:pointer}.today-case-header.svelte-pldmec.svelte-pldmec:hover{background:#1e1e30}.today-case-title.svelte-pldmec.svelte-pldmec{font-weight:500}.today-case-type.svelte-pldmec.svelte-pldmec{font-size:11px;color:#888;background:#223;padding:2px 8px;border-radius:10px}.today-case-count.svelte-pldmec.svelte-pldmec{font-size:11px;color:#6366f1;margin-left:4px}.today-case-time.svelte-pldmec.svelte-pldmec{font-size:11px;color:#555;margin-left:auto}.today-events.svelte-pldmec.svelte-pldmec{padding:8px 16px}.today-event.svelte-pldmec.svelte-pldmec{display:flex;align-items:center;gap:8px;padding:4px 0;font-size:13px;color:#b0b0c0;cursor:pointer}.today-event.svelte-pldmec.svelte-pldmec:hover{color:#e4e4ef}.today-event-icon.svelte-pldmec.svelte-pldmec{width:18px;text-align:center;color:#6366f1;font-size:13px}.today-event-title.svelte-pldmec.svelte-pldmec{flex:1}.today-event-type.svelte-pldmec.svelte-pldmec{font-size:11px;color:#666}.today-event-time.svelte-pldmec.svelte-pldmec{font-size:11px;color:#555;margin-left:auto}.today-events-empty.svelte-pldmec.svelte-pldmec{padding:8px 16px;font-size:13px;color:#666;font-style:italic}.today-empty.svelte-pldmec.svelte-pldmec{padding:48px 24px;text-align:center}.today-empty.svelte-pldmec p.svelte-pldmec{color:#666;font-size:14px;margin:0}.today-empty.svelte-pldmec .hint.svelte-pldmec{font-size:12px;color:#555;margin-top:8px}.today-timeline.svelte-pldmec.svelte-pldmec{margin-top:24px}.today-timeline.svelte-pldmec h3.svelte-pldmec{font-size:13px;color:#666;text-transform:uppercase;margin-bottom:12px}.timeline-event.svelte-pldmec.svelte-pldmec{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-pldmec.svelte-pldmec:hover{color:#e4e4ef}.timeline-dot.svelte-pldmec.svelte-pldmec{width:6px;height:6px;border-radius:50%;background:#6366f1;margin-left:-19px;flex-shrink:0}.timeline-title.svelte-pldmec.svelte-pldmec{flex:1}.timeline-type.svelte-pldmec.svelte-pldmec{font-size:11px;color:#666}.timeline-time.svelte-pldmec.svelte-pldmec{font-size:11px;color:#555}.activity-tab.svelte-pldmec.svelte-pldmec{padding:24px}.activity-events.svelte-pldmec.svelte-pldmec{display:flex;flex-direction:column;gap:2px}.activity-event.svelte-pldmec.svelte-pldmec{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:6px;font-size:13px;color:#b0b0c0;cursor:pointer}.activity-event.svelte-pldmec.svelte-pldmec:hover{background:#1a1a28;color:#e4e4ef}.activity-event-icon.svelte-pldmec.svelte-pldmec{width:18px;text-align:center;color:#6366f1;font-size:13px;flex-shrink:0}.activity-event-title.svelte-pldmec.svelte-pldmec{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.activity-event-type.svelte-pldmec.svelte-pldmec{font-size:11px;color:#666;flex-shrink:0}.activity-event-target.svelte-pldmec.svelte-pldmec{font-size:10px;color:#555;background:#1e1e2e;padding:1px 6px;border-radius:8px;flex-shrink:0}.activity-event-time.svelte-pldmec.svelte-pldmec{font-size:11px;color:#555;margin-left:8px;flex-shrink:0}.activity-feed.svelte-pldmec.svelte-pldmec{padding:24px;overflow-y:auto;flex:1}.activity-feed-header.svelte-pldmec.svelte-pldmec{margin-bottom:20px}.activity-feed-header.svelte-pldmec h2.svelte-pldmec{font-size:24px}.activity-feed-events.svelte-pldmec.svelte-pldmec{display:flex;flex-direction:column;gap:2px}.activity-feed-event.svelte-pldmec.svelte-pldmec{display:flex;align-items:flex-start;gap:10px;padding:8px 12px;border-radius:8px;cursor:pointer}.activity-feed-event.svelte-pldmec.svelte-pldmec:hover{background:#1a1a28;color:#e4e4ef}.activity-feed-icon.svelte-pldmec.svelte-pldmec{width:20px;text-align:center;color:#6366f1;font-size:14px;flex-shrink:0;margin-top:1px}.activity-feed-body.svelte-pldmec.svelte-pldmec{flex:1;min-width:0}.activity-feed-title.svelte-pldmec.svelte-pldmec{font-size:14px;color:#e4e4ef}.activity-feed-meta.svelte-pldmec.svelte-pldmec{display:flex;align-items:center;gap:8px;margin-top:2px}.activity-feed-type.svelte-pldmec.svelte-pldmec{font-size:11px;color:#666}.activity-feed-target.svelte-pldmec.svelte-pldmec{font-size:10px;color:#555;background:#1e1e2e;padding:1px 6px;border-radius:8px}.activity-feed-time.svelte-pldmec.svelte-pldmec{font-size:11px;color:#555}.journal-filter-section.svelte-pldmec.svelte-pldmec{margin-bottom:12px;padding:12px 16px;background:#1a1a2e;border:1px solid #2a2a3c;border-radius:8px}.journal-filter-heading.svelte-pldmec.svelte-pldmec{font-size:11px;font-weight:600;color:#a5b4fc;text-transform:uppercase;letter-spacing:.3px;margin-bottom:8px}.journal-filters-row.svelte-pldmec.svelte-pldmec{display:flex;flex-wrap:wrap;gap:8px 16px;align-items:flex-end}.journal-filters-row.svelte-pldmec label.svelte-pldmec{display:flex;flex-direction:column;gap:3px;font-size:12px;color:#8888a0}.journal-filters-row.svelte-pldmec input[type=date].svelte-pldmec{padding:5px 8px;border:1px solid #2a2a3c;background:#13131f;color:#e4e4ef;border-radius:4px;font-size:12px;font-family:inherit}.journal-filters-row.svelte-pldmec .checkbox-label.svelte-pldmec{flex-direction:row;align-items:center;gap:6px;cursor:pointer}.journal-filters-row.svelte-pldmec .checkbox-label input.svelte-pldmec{width:auto}.journal-export-section.svelte-pldmec.svelte-pldmec{padding:8px 16px;background:#1a1a2e;border:1px solid #2a2a3c;border-radius:8px}.journal-export-heading.svelte-pldmec.svelte-pldmec{font-size:11px;font-weight:600;color:#a5b4fc;text-transform:uppercase;letter-spacing:.3px;margin-bottom:6px}.journal-export-row.svelte-pldmec.svelte-pldmec{display:flex;gap:8px;align-items:center}.journal-toggle-col.svelte-pldmec.svelte-pldmec{width:32px;min-width:32px;text-align:center;padding:8px 4px!important}.journal-toggle-icon.svelte-pldmec.svelte-pldmec{color:#6366f1;font-size:12px}.worklog-entry.svelte-pldmec.svelte-pldmec{padding:8px 12px;background:#1a1a28;border:1px solid #2a2a3c;border-radius:8px;margin-bottom:6px;cursor:pointer}.worklog-entry.svelte-pldmec.svelte-pldmec:hover{border-color:#3a3a5c}.worklog-entry.expanded.svelte-pldmec.svelte-pldmec{border-color:#6366f1}.worklog-entry-head.svelte-pldmec.svelte-pldmec{display:flex;align-items:center;gap:8px;font-size:13px;color:#e4e4ef}.worklog-toggle.svelte-pldmec.svelte-pldmec{color:#6366f1;font-size:12px;width:16px;text-align:center;flex-shrink:0}.worklog-entry-summary.svelte-pldmec.svelte-pldmec{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.worklog-entry-mins.svelte-pldmec.svelte-pldmec{color:#b0b0c8;font-variant-numeric:tabular-nums;white-space:nowrap}.worklog-entry-date.svelte-pldmec.svelte-pldmec{color:#b0b0c0;font-size:12px;white-space:nowrap}.worklog-entry-detail.svelte-pldmec.svelte-pldmec{margin-top:8px;padding-top:8px;border-top:1px solid #2a2a3c;display:flex;flex-direction:column;gap:8px}.worklog-entry-actions.svelte-pldmec.svelte-pldmec{display:flex;gap:8px;justify-content:flex-end}.wl-detail-section.svelte-pldmec.svelte-pldmec{font-size:13px}.wl-detail-label.svelte-pldmec.svelte-pldmec{font-size:11px;font-weight:600;color:#a5b4fc;text-transform:uppercase;letter-spacing:.3px;display:block;margin-bottom:2px}.wl-detail-section.svelte-pldmec p.svelte-pldmec{margin:0;color:#c0c0d0}.wl-tag-billable.svelte-pldmec.svelte-pldmec{font-size:10px;color:#34d399;background:#1a2a1e;padding:1px 6px;border-radius:8px;white-space:nowrap}.wl-tag-approx.svelte-pldmec.svelte-pldmec{font-size:10px;color:#fbbf24;background:#2a2a1a;padding:1px 6px;border-radius:8px;white-space:nowrap}.checkbox-label-inline.svelte-pldmec.svelte-pldmec{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:#e4e4ef;cursor:pointer}.checkbox-label-inline.svelte-pldmec input.svelte-pldmec{width:auto} diff --git a/cmd/verstak-gui/frontend-dist/assets/main-Wpp0QvRu.js b/cmd/verstak-gui/frontend-dist/assets/main-Wpp0QvRu.js new file mode 100644 index 0000000..c1357a4 --- /dev/null +++ b/cmd/verstak-gui/frontend-dist/assets/main-Wpp0QvRu.js @@ -0,0 +1,3 @@ +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-xwXesvcm.css b/cmd/verstak-gui/frontend-dist/assets/main-xwXesvcm.css new file mode 100644 index 0000000..9737242 --- /dev/null +++ b/cmd/verstak-gui/frontend-dist/assets/main-xwXesvcm.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-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 f668a1c..a782a16 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/inbox_test.go b/cmd/verstak-gui/inbox_test.go new file mode 100644 index 0000000..9d4ef12 --- /dev/null +++ b/cmd/verstak-gui/inbox_test.go @@ -0,0 +1,52 @@ +package main + +import "testing" + +func TestListInboxNodesReturnsOnlyUnassignedRoots(t *testing.T) { + app, _ := setupTestApp(t) + + unassigned, err := app.CreateNodeFromTemplate("", "Unassigned Root", "folder.default") + if err != nil { + t.Fatalf("create unassigned root: %v", err) + } + inbox, err := app.CreateNodeFromTemplate("", "Inbox Root", "folder.default") + if err != nil { + t.Fatalf("create inbox root: %v", err) + } + assigned, err := app.CreateNodeFromTemplate("", "Assigned Root", "folder.default") + if err != nil { + t.Fatalf("create assigned root: %v", err) + } + child, err := app.CreateNodeFromTemplate(unassigned.ID, "Nested Child", "folder.default") + if err != nil { + t.Fatalf("create child: %v", err) + } + if _, err := app.db.Exec(`UPDATE nodes SET section = 'inbox' WHERE id = ?`, inbox.ID); err != nil { + t.Fatalf("mark inbox: %v", err) + } + if _, err := app.db.Exec(`UPDATE nodes SET section = 'projects' WHERE id = ?`, assigned.ID); err != nil { + t.Fatalf("mark assigned: %v", err) + } + + list, err := app.ListInboxNodes() + if err != nil { + t.Fatalf("ListInboxNodes: %v", err) + } + + got := map[string]bool{} + for _, item := range list { + got[item.ID] = true + } + if !got[unassigned.ID] { + t.Fatal("unassigned root missing from inbox") + } + if !got[inbox.ID] { + t.Fatal("section=inbox root missing from inbox") + } + if got[assigned.ID] { + t.Fatal("assigned root should not be in inbox") + } + if got[child.ID] { + t.Fatal("nested child should not be in inbox") + } +} diff --git a/frontend/src/App.svelte b/frontend/src/App.svelte index a086f33..f2fc966 100644 --- a/frontend/src/App.svelte +++ b/frontend/src/App.svelte @@ -91,6 +91,7 @@ let acceptingSuggestion = null let suggestions = [] let suggestionCount = 0 + let inboxNodes = [] let showCreateNode = false let newNodeTitle = '' let createInNode = null @@ -228,6 +229,7 @@ actions = [] worklog = [] suggestions = [] + inboxNodes = [] showCreateNode = false error = '' todayDashboard = null @@ -241,6 +243,8 @@ todayDashboard = await wailsCall('ListTodayView') || { cases: [] } suggestions = await wailsCall('GetSuggestions') || [] suggestionCount = suggestions.length + } else if (id === 'inbox') { + inboxNodes = await wailsCall('ListInboxNodes') || [] } else if (id === 'journal') { await loadJournal() } else if (id === 'activity') { @@ -251,6 +255,7 @@ } catch (e) { error = String(e) todayDashboard = { cases: [] } + inboxNodes = [] activityFeed = [] } } @@ -1987,6 +1992,37 @@ {/if} + {:else if selectedSection === 'inbox'} +
+
+
+

{t('nav.inbox')}

+

{t('inbox.subtitle')}

+
+ +
+ {#if inboxNodes.length === 0} +
+

{t('inbox.empty')}

+
+ {:else} +
+ {#each inboxNodes as item} +
openNodeById(item.id)} on:keydown={(e) => e.key === 'Enter' && openNodeById(item.id)}> +
+ {item.title} + {nodeKindLabel(item.type)} · {formatDate(item.createdAt)} +
+
+ + +
+
+ {/each} +
+ {/if} +
+ {:else if selectedSection === 'journal'}
@@ -2693,6 +2729,19 @@ .suggestion-confidence.medium { color: #60a5fa; } .suggestion-confidence.high { color: #34d399; } +/* Inbox screen */ +.inbox-screen { padding: 24px; overflow-y: auto; flex: 1; } +.inbox-header { display: flex; justify-content: space-between; align-items: flex-start; gap: 16px; margin-bottom: 20px; } +.inbox-header h2 { margin: 0 0 6px; } +.inbox-header p { margin: 0; color: #a0a0b8; font-size: 13px; } +.inbox-list { display: flex; flex-direction: column; gap: 8px; } +.inbox-item { display: flex; align-items: center; gap: 12px; padding: 12px; border: 1px solid #2a2a3c; border-radius: 8px; background: #1a1a28; cursor: pointer; } +.inbox-item:hover { border-color: #3a3a5c; background: #1e1e32; } +.inbox-item-main { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 3px; } +.inbox-item-title { color: #e4e4ef; font-weight: 600; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; } +.inbox-item-meta { color: #8888a0; font-size: 12px; } +.inbox-item-actions { display: flex; gap: 8px; flex-shrink: 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 82af55a..d4273ad 100644 --- a/frontend/src/lib/i18n/locales/en.js +++ b/frontend/src/lib/i18n/locales/en.js @@ -23,6 +23,8 @@ export default { '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', diff --git a/frontend/src/lib/i18n/locales/ru.js b/frontend/src/lib/i18n/locales/ru.js index f4bddf1..653fd6c 100644 --- a/frontend/src/lib/i18n/locales/ru.js +++ b/frontend/src/lib/i18n/locales/ru.js @@ -24,6 +24,9 @@ export default { 'nav.createNode': 'Создать элемент', 'nav.moveToRoot': 'Переместить в корень', + 'inbox.subtitle': 'Корневые элементы без назначенного раздела', + 'inbox.empty': 'Неразобранных элементов нет', + '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 cb2edd4..bfe47b1 100644 --- a/frontend/src/wailsjs/go/main/App.js +++ b/frontend/src/wailsjs/go/main/App.js @@ -78,6 +78,10 @@ export function ListWorklog(arg1) { return window['go']['main']['App']['ListWorklog'](arg1); } +export function ListInboxNodes() { + return window['go']['main']['App']['ListInboxNodes'](); +} + 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 16a6a01..e22753f 100644 --- a/internal/core/nodes/repository.go +++ b/internal/core/nodes/repository.go @@ -169,6 +169,23 @@ func (r *Repository) ListRoots(includeDeleted bool) ([]Node, error) { return scanNodes(rows) } +// ListInboxRoots returns active root nodes that are not assigned to a specific section. +func (r *Repository) ListInboxRoots(includeDeleted bool) ([]Node, error) { + q := `SELECT ` + nodeColumns + ` FROM nodes + WHERE parent_id IS NULL AND COALESCE(section, '') IN ('', 'inbox')` + if !includeDeleted { + q += " AND deleted_at IS NULL" + } + q += " ORDER BY updated_at DESC, sort_order, title" + + rows, err := r.db.Query(q) + 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/scripts/check-gui-render.mjs b/scripts/check-gui-render.mjs index 2446452..7a3ad15 100755 --- a/scripts/check-gui-render.mjs +++ b/scripts/check-gui-render.mjs @@ -133,6 +133,12 @@ async function runReadyScenario(cdp, url) { await click(cdp, '.close-btn') await waitForGone(cdp, '.settings-window') + await clickText(cdp, '.nav-item', 'Неразобранное') + await assertText(cdp, 'Неразобранное', 'inbox: system view opens') + await assertText(cdp, 'Inbox Smoke Item', 'inbox: unassigned item visible') + await clickText(cdp, '.inbox-item-actions .btn', 'Открыть') + await assertText(cdp, 'Inbox Smoke Item', 'inbox: item opens from list') + await clickText(cdp, '.tree-label', 'Smoke Project') await waitForSelector(cdp, '.tabs') await assertText(cdp, 'Smoke Project', 'node: selected project visible') @@ -565,6 +571,7 @@ function wailsMockSource() { ], }, { id: 'node-client', title: 'Smoke Client', type: 'client', section: 'clients', createdAt: now, has_children: false, children: [] }, + { id: 'node-inbox', title: 'Inbox Smoke Item', type: 'folder', section: '', createdAt: now, has_children: false, children: [] }, ], notes: { 'node-project': [{ id: 'note-1', title: 'Smoke note', createdAt: now }], @@ -671,6 +678,7 @@ function wailsMockSource() { ], 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'))), ListEnabledTemplates: async () => clone(templates), AllTemplates: async () => clone(templates), SetTemplateEnabled: async () => true, @@ -679,9 +687,9 @@ function wailsMockSource() { SearchNodes: async (query) => allNodes().filter((node) => node.title.toLowerCase().includes(String(query || '').toLowerCase())).map((node) => ({ id: node.id, title: node.title, path: '/Smoke/' + node.title })), CreateNodeFromTemplate: async (parentId, title, templateId) => { const id = 'node-created-' + Date.now(); - const node = { id, title, type: templateId?.split('.')[0] || 'folder', section: 'projects', parent_id: parentId || '', createdAt: now, has_children: false, children: [] }; + const parent = parentId ? findNode(parentId) : null; + const node = { id, title, type: templateId?.split('.')[0] || 'folder', section: parent?.section || '', parent_id: parentId || '', createdAt: now, has_children: false, children: [] }; if (parentId) { - const parent = findNode(parentId); if (parent) { parent.children = parent.children || []; parent.children.push(node);