From 10b287de7b206d07afb8b1962e408f144ae5dd67 Mon Sep 17 00:00:00 2001 From: mirivlad Date: Fri, 5 Jun 2026 12:37:25 +0800 Subject: [PATCH] feat: aggregate journals across node subtrees --- cmd/verstak-gui/app.go | 2 + cmd/verstak-gui/bindings_activity.go | 41 ++++++- cmd/verstak-gui/bindings_suggest.go | 43 +++++++ cmd/verstak-gui/bindings_worklog.go | 25 ++++- .../frontend-dist/assets/main-BQHjHDrT.js | 3 - .../frontend-dist/assets/main-DOH0BsUz.js | 3 + .../frontend-dist/assets/main-DRlK-DBn.css | 1 + .../frontend-dist/assets/main-DfazBFdN.css | 1 - cmd/verstak-gui/frontend-dist/index.html | 4 +- cmd/verstak-gui/suggest_test.go | 106 ++++++++++++++++++ frontend/src/App.svelte | 32 +++++- internal/core/activity/suggest.go | 13 ++- internal/core/storage/migrations_016.sql.go | 12 ++ internal/core/storage/storage.go | 1 + 14 files changed, 265 insertions(+), 22 deletions(-) delete mode 100644 cmd/verstak-gui/frontend-dist/assets/main-BQHjHDrT.js create mode 100644 cmd/verstak-gui/frontend-dist/assets/main-DOH0BsUz.js create mode 100644 cmd/verstak-gui/frontend-dist/assets/main-DRlK-DBn.css delete mode 100644 cmd/verstak-gui/frontend-dist/assets/main-DfazBFdN.css create mode 100644 internal/core/storage/migrations_016.sql.go diff --git a/cmd/verstak-gui/app.go b/cmd/verstak-gui/app.go index f1ddfe8..d308ab9 100644 --- a/cmd/verstak-gui/app.go +++ b/cmd/verstak-gui/app.go @@ -197,6 +197,7 @@ type WorklogDTO struct { ID string `json:"id"` NodeID string `json:"nodeId"` NodeTitle string `json:"nodeTitle,omitempty"` + NodePath string `json:"nodePath,omitempty"` Summary string `json:"summary"` Minutes int `json:"minutes"` Date string `json:"date,omitempty"` @@ -217,6 +218,7 @@ type SearchResultDTO struct { type EventDTO struct { ID string `json:"id"` NodeID string `json:"nodeId"` + NodePath string `json:"nodePath,omitempty"` EventType string `json:"eventType"` TargetType string `json:"targetType"` TargetID string `json:"targetId"` diff --git a/cmd/verstak-gui/bindings_activity.go b/cmd/verstak-gui/bindings_activity.go index 0c96812..72a50f8 100644 --- a/cmd/verstak-gui/bindings_activity.go +++ b/cmd/verstak-gui/bindings_activity.go @@ -157,7 +157,7 @@ func (a *App) ListActivityFeed(limit, offset int) ([]EventDTO, error) { } result := make([]EventDTO, len(events)) for i, e := range events { - result[i] = toEventDTO(e) + result[i] = a.eventDTOWithPath(e) } return result, nil } @@ -166,13 +166,13 @@ func (a *App) ListActivityByNode(nodeID string, limit, offset int) ([]EventDTO, if err := a.requireVault(); err != nil { return nil, err } - events, err := a.activity.ListByNode(nodeID, limit, offset) + events, err := a.listActivityByNodeSubtree(nodeID, limit, offset) if err != nil { return nil, err } result := make([]EventDTO, len(events)) for i, e := range events { - result[i] = toEventDTO(e) + result[i] = a.eventDTOWithPath(e) } return result, nil } @@ -185,3 +185,38 @@ func (a *App) CountActivityByNode(nodeID string) (int, error) { } var _ = syncsvc.EntityNode + +func (a *App) listActivityByNodeSubtree(nodeID string, limit, offset int) ([]activity.Event, error) { + rows, err := a.db.Query( + `WITH RECURSIVE subtree(id) AS ( + SELECT id FROM nodes WHERE id = ? AND deleted_at IS NULL + UNION ALL + SELECT n.id FROM nodes n JOIN subtree s ON n.parent_id = s.id + WHERE n.deleted_at IS NULL + ) + SELECT e.id, e.node_id, e.event_type, COALESCE(e.target_type,''), COALESCE(e.target_id,''), COALESCE(e.target_path,''), + e.title, COALESCE(e.metadata,'{}'), e.created_at + FROM activity_events e + JOIN subtree s ON s.id = e.node_id + ORDER BY e.created_at DESC + LIMIT ? OFFSET ?`, nodeID, limit, offset) + if err != nil { + return nil, err + } + defer rows.Close() + var events []activity.Event + for rows.Next() { + var e activity.Event + if err := rows.Scan(&e.ID, &e.NodeID, &e.EventType, &e.TargetType, &e.TargetID, &e.TargetPath, &e.Title, &e.DetailsJSON, &e.CreatedAt); err != nil { + return nil, err + } + events = append(events, e) + } + return events, rows.Err() +} + +func (a *App) eventDTOWithPath(e activity.Event) EventDTO { + dto := toEventDTO(e) + dto.NodePath = a.nodes.Path(e.NodeID) + return dto +} diff --git a/cmd/verstak-gui/bindings_suggest.go b/cmd/verstak-gui/bindings_suggest.go index 5bffbc5..1d56e63 100644 --- a/cmd/verstak-gui/bindings_suggest.go +++ b/cmd/verstak-gui/bindings_suggest.go @@ -35,6 +35,16 @@ func (a *App) GetSuggestions() ([]activity.Suggestion, error) { } } } + rows, err = a.db.Query(`SELECT DISTINCT event_id FROM worklog_dismissed_events`) + if err == nil { + defer rows.Close() + for rows.Next() { + var eid string + if rows.Scan(&eid) == nil { + accounted[eid] = true + } + } + } type acc struct { title string @@ -90,6 +100,7 @@ func (a *App) GetSuggestions() ([]activity.Suggestion, error) { Title: e.Title, CreatedAt: e.CreatedAt, NodeID: e.NodeID, + NodePath: a.nodes.Path(e.NodeID), }) } @@ -115,6 +126,38 @@ func (a *App) GetSuggestions() ([]activity.Suggestion, error) { return suggestions, nil } +func (a *App) DismissSuggestion(nodeID, eventIDsJSON string) error { + if err := a.requireVault(); err != nil { + return err + } + var eventIDs []string + if err := json.Unmarshal([]byte(eventIDsJSON), &eventIDs); err != nil { + return fmt.Errorf("unmarshal eventIDs: %w", err) + } + if len(eventIDs) == 0 { + return fmt.Errorf("eventIDs required") + } + now := time.Now().UTC().Format(time.RFC3339) + tx, err := a.db.Begin() + if err != nil { + return err + } + defer tx.Rollback() + for _, eventID := range eventIDs { + var n int + if err := tx.QueryRow(`SELECT COUNT(*) FROM activity_events WHERE id = ? AND node_id = ?`, eventID, nodeID).Scan(&n); err != nil { + return fmt.Errorf("check event %s: %w", eventID, err) + } + if n == 0 { + return fmt.Errorf("event %s not found for node", eventID) + } + if _, err := tx.Exec(`INSERT OR IGNORE INTO worklog_dismissed_events(event_id,node_id,created_at) VALUES(?,?,?)`, eventID, nodeID, now); err != nil { + return err + } + } + return tx.Commit() +} + // AcceptSuggestion creates a worklog entry from a suggestion (compatibility wrapper). func (a *App) AcceptSuggestion(nodeID, summary string, minutes int, date string, eventIDsJSON string) (*WorklogDTO, error) { if err := a.requireVault(); err != nil { diff --git a/cmd/verstak-gui/bindings_worklog.go b/cmd/verstak-gui/bindings_worklog.go index 7f4dce6..58ac385 100644 --- a/cmd/verstak-gui/bindings_worklog.go +++ b/cmd/verstak-gui/bindings_worklog.go @@ -14,11 +14,15 @@ func (a *App) ListWorklog(nodeID string) ([]WorklogDTO, error) { if err := a.requireVault(); err != nil { return nil, err } - list, err := a.worklog.ListByNode(nodeID) + rows, err := a.worklog.ListReport(worklog.ReportFilter{NodeID: nodeID, IncludeChildren: true}) if err != nil { return nil, err } - return toWorklogDTOs(list), nil + result := make([]WorklogDTO, 0, len(rows)) + for _, row := range rows { + result = append(result, reportRowToWorklogDTO(row)) + } + return result, nil } func (a *App) CreateWorklog(nodeID, summary string, minutes int) (*WorklogDTO, error) { @@ -264,3 +268,20 @@ func entryToDTO(e *worklog.Entry) *WorklogDTO { CreatedAt: e.CreatedAt.Format("2006-01-02T15:04:05Z"), } } + +func reportRowToWorklogDTO(r worklog.ReportRow) WorklogDTO { + return WorklogDTO{ + ID: r.ID, + NodeID: r.NodeID, + NodeTitle: r.NodeTitle, + NodePath: r.NodePath, + Summary: r.Summary, + Minutes: r.Minutes, + Date: r.Date, + Details: r.Details, + Approximate: r.Approximate, + Billable: r.Billable, + Source: r.Source, + CreatedAt: r.CreatedAt, + } +} diff --git a/cmd/verstak-gui/frontend-dist/assets/main-BQHjHDrT.js b/cmd/verstak-gui/frontend-dist/assets/main-BQHjHDrT.js deleted file mode 100644 index 0a8aee3..0000000 --- a/cmd/verstak-gui/frontend-dist/assets/main-BQHjHDrT.js +++ /dev/null @@ -1,3 +0,0 @@ -var qf=Object.defineProperty;var Yf=(l,e,t)=>e in l?qf(l,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):l[e]=t;var on=(l,e,t)=>Yf(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 x(){}function Ur(l){return l()}function gs(){return Object.create(null)}function _e(l){l.forEach(Ur)}function Mt(l){return typeof l=="function"}function ot(l,e){return l!=l?e==e:l!==e||l&&typeof l=="object"||typeof l=="function"}let Tl;function tl(l,e){return l===e?!0:(Tl||(Tl=document.createElement("a")),Tl.href=e,l===Tl.href)}function Qf(l){return Object.keys(l).length===0}function bs(l){return l??""}const vn=typeof window<"u"?window:typeof globalThis<"u"?globalThis:global;function a(l,e){l.appendChild(e)}function S(l,e,t){l.insertBefore(e,t||null)}function C(l){l.parentNode&&l.parentNode.removeChild(l)}function De(l,e){for(let t=0;tl.removeEventListener(e,t,n)}function kn(l){return function(e){return e.preventDefault(),l.call(this,e)}}function Le(l){return function(e){return e.stopPropagation(),l.call(this,e)}}function bt(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 Il(l){return l===""?null:+l}function Xf(l){return Array.from(l.childNodes)}function B(l,e){e=""+e,l.data!==e&&(l.data=e)}function ke(l,e){l.value=e??""}function gt(l,e,t,n){t==null?l.style.removeProperty(e):l.style.setProperty(e,t,"")}function Nt(l,e,t){for(let n=0;n{const s=l.$$.callbacks[e];if(s){const o=Zf(e,t,{cancelable:n});return s.slice().forEach(r=>{r.call(l,o)}),!o.defaultPrevented}return!0}}function Kr(l,e){const t=l.$$.callbacks[e.type];t&&t.slice().forEach(n=>n.call(this,e))}const $t=[],ys=[];let el=[];const ws=[],xf=Promise.resolve();let dn=!1;function $f(){dn||(dn=!0,xf.then(Gr))}function Ut(l){el.push(l)}const rn=new Set;let Zt=0;function Gr(){if(Zt!==0)return;const l=dl;do{try{for(;Zt<$t.length;){const e=$t[Zt];Zt++,fl(e),ed(e.$$)}}catch(e){throw $t.length=0,Zt=0,e}for(fl(null),$t.length=0,Zt=0;ys.length;)ys.pop()();for(let e=0;el.indexOf(n)===-1?e.push(n):t.push(n)),t.forEach(n=>n()),el=e}const Nl=new Set;let Ht;function pt(){Ht={r:0,c:[],p:Ht}}function _t(){Ht.r||_e(Ht.c),Ht=Ht.p}function ce(l,e){l&&l.i&&(Nl.delete(l),l.i(e))}function me(l,e,t,n){if(l&&l.o){if(Nl.has(l))return;Nl.add(l),Ht.c.push(()=>{Nl.delete(l),n&&(t&&l.d(1),n())}),l.o(e)}else n&&n()}function re(l){return(l==null?void 0:l.length)!==void 0?l:Array.from(l)}function Jr(l,e){me(l,1,1,()=>{e.delete(l.key)})}function qr(l,e,t,n,s,o,r,c,u,m,v,_){let h=l.length,b=o.length,g=h;const y={};for(;g--;)y[l[g].key]=g;const w=[],T=new Map,j=new Map,N=[];for(g=b;g--;){const M=_(s,o,g),R=t(M);let O=r.get(R);O?N.push(()=>O.p(M,e)):(O=m(R,M),O.c()),T.set(R,w[g]=O),R in y&&j.set(R,Math.abs(g-y[R]))}const D=new Set,E=new Set;function F(M){ce(M,1),M.m(c,v),r.set(M.key,M),v=M.first,b--}for(;h&&b;){const M=w[b-1],R=l[h-1],O=M.key,V=R.key;M===R?(v=M.first,h--,b--):T.has(V)?!r.has(O)||D.has(O)?F(M):E.has(V)?h--:j.get(O)>j.get(V)?(E.add(O),F(M)):(D.add(V),h--):(u(R,r),h--)}for(;h--;){const M=l[h];T.has(M.key)||u(M,r)}for(;b;)F(w[b-1]);return _e(N),w}function Xe(l){l&&l.c()}function Je(l,e,t){const{fragment:n,after_update:s}=l.$$;n&&n.m(e,t),Ut(()=>{const o=l.$$.on_mount.map(Ur).filter(Mt);l.$$.on_destroy?l.$$.on_destroy.push(...o):_e(o),l.$$.on_mount=[]}),s.forEach(Ut)}function qe(l,e){const t=l.$$;t.fragment!==null&&(td(t.after_update),_e(t.on_destroy),t.fragment&&t.fragment.d(e),t.on_destroy=t.fragment=null,t.ctx=[])}function ld(l,e){l.$$.dirty[0]===-1&&($t.push(l),$f(),l.$$.dirty.fill(0)),l.$$.dirty[e/31|0]|=1<{const g=b.length?b[0]:h;return m.ctx&&s(m.ctx[_],m.ctx[_]=g)&&(!m.skip_bound&&m.bound[_]&&m.bound[_](g),v&&ld(l,_)),h}):[],m.update(),v=!0,_e(m.before_update),m.fragment=n?n(m.ctx):!1,e.target){if(e.hydrate){const _=Xf(e.target);m.fragment&&m.fragment.l(_),_.forEach(C)}else m.fragment&&m.fragment.c();e.intro&&ce(l.$$.fragment),Je(l,e.target,e.anchor),Gr()}fl(u)}class at{constructor(){on(this,"$$");on(this,"$$set")}$destroy(){qe(this,1),this.$destroy=x}$on(e,t){if(!Mt(t))return x;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&&!Qf(e)&&(this.$$.skip_bound=!0,this.$$set(e),this.$$.skip_bound=!1)}}const nd="4";typeof window<"u"&&(window.__svelte||(window.__svelte={v:new Set})).v.add(nd);function sd(l){let e,t;return{c(){e=Q("path"),t=Q("polyline"),i(e,"d","M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"),i(t,"points","14 2 14 8 20 8")},m(n,s){S(n,e,s),S(n,t,s)},d(n){n&&(C(e),C(t))}}}function id(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,c){S(r,e,c),S(r,t,c),S(r,n,c),S(r,s,c),S(r,o,c)},d(r){r&&(C(e),C(t),C(n),C(s),C(o))}}}function od(l){let e,t;return{c(){e=Q("polyline"),t=Q("polyline"),i(e,"points","16 18 22 12 16 6"),i(t,"points","8 6 2 12 8 18")},m(n,s){S(n,e,s),S(n,t,s)},d(n){n&&(C(e),C(t))}}}function rd(l){let e,t,n,s;return{c(){e=Q("path"),t=Q("polyline"),n=Q("line"),s=Q("rect"),i(e,"d","M21 8v13a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8"),i(t,"points","7 3 12 8 17 3"),i(n,"x1","3"),i(n,"y1","8"),i(n,"x2","21"),i(n,"y2","8"),i(s,"x","10"),i(s,"y","12"),i(s,"width","4"),i(s,"height","4"),i(s,"rx","1")},m(o,r){S(o,e,r),S(o,t,r),S(o,n,r),S(o,s,r)},d(o){o&&(C(e),C(t),C(n),C(s))}}}function ad(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,c){S(r,e,c),S(r,t,c),S(r,n,c),S(r,s,c),S(r,o,c)},d(r){r&&(C(e),C(t),C(n),C(s),C(o))}}}function cd(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(c,u){S(c,e,u),S(c,t,u),S(c,n,u),S(c,s,u),S(c,o,u),S(c,r,u)},d(c){c&&(C(e),C(t),C(n),C(s),C(o),C(r))}}}function ud(l){let e,t,n,s;return{c(){e=Q("path"),t=Q("polyline"),n=Q("line"),s=Q("line"),i(e,"d","M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"),i(t,"points","14 2 14 8 20 8"),i(n,"x1","16"),i(n,"y1","13"),i(n,"x2","8"),i(n,"y2","13"),i(s,"x1","16"),i(s,"y1","17"),i(s,"x2","8"),i(s,"y2","17")},m(o,r){S(o,e,r),S(o,t,r),S(o,n,r),S(o,s,r)},d(o){o&&(C(e),C(t),C(n),C(s))}}}function fd(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,c){S(r,e,c),S(r,t,c),S(r,n,c),S(r,s,c),S(r,o,c)},d(r){r&&(C(e),C(t),C(n),C(s),C(o))}}}function dd(l){let e,t,n;return{c(){e=Q("path"),t=Q("circle"),n=Q("circle"),i(e,"d","M9 18V5l12-2v13"),i(t,"cx","6"),i(t,"cy","18"),i(t,"r","3"),i(n,"cx","18"),i(n,"cy","16"),i(n,"r","3")},m(s,o){S(s,e,o),S(s,t,o),S(s,n,o)},d(s){s&&(C(e),C(t),C(n))}}}function md(l){let e,t;return{c(){e=Q("rect"),t=Q("polyline"),i(e,"x","2"),i(e,"y","4"),i(e,"width","20"),i(e,"height","16"),i(e,"rx","2"),i(t,"points","10 9 16 12 10 15 10 9")},m(n,s){S(n,e,s),S(n,t,s)},d(n){n&&(C(e),C(t))}}}function pd(l){let e,t,n;return{c(){e=Q("rect"),t=Q("circle"),n=Q("polyline"),i(e,"x","3"),i(e,"y","3"),i(e,"width","18"),i(e,"height","18"),i(e,"rx","2"),i(e,"ry","2"),i(t,"cx","8.5"),i(t,"cy","8.5"),i(t,"r","1.5"),i(n,"points","21 15 16 10 5 21")},m(s,o){S(s,e,o),S(s,t,o),S(s,n,o)},d(s){s&&(C(e),C(t),C(n))}}}function _d(l){let e;return{c(){e=Q("path"),i(e,"d","M22 19a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h5l2 3h9a2 2 0 0 1 2 2z")},m(t,n){S(t,e,n)},d(t){t&&C(e)}}}function vd(l){let e;function t(o,r){return o[0]==="folder"?_d:o[0]==="image"?pd:o[0]==="video"?md:o[0]==="audio"?dd:o[0]==="pdf"?fd:o[0]==="document"?ud:o[0]==="spreadsheet"?cd:o[0]==="presentation"?ad:o[0]==="archive"?rd:o[0]==="code"?od:o[0]==="text"?id:sd}let n=t(l),s=n(l);return{c(){e=Q("svg"),s.c(),i(e,"width",l[1]),i(e,"height",l[1]),i(e,"viewBox","0 0 24 24"),i(e,"fill","none"),i(e,"stroke","currentColor"),i(e,"stroke-width","1.5"),i(e,"stroke-linecap","round"),i(e,"stroke-linejoin","round"),i(e,"xmlns","http://www.w3.org/2000/svg")},m(o,r){S(o,e,r),s.m(e,null)},p(o,[r]){n!==(n=t(o))&&(s.d(1),s=n(o),s&&(s.c(),s.m(e,null))),r&2&&i(e,"width",o[1]),r&2&&i(e,"height",o[1])},i:x,o:x,d(o){o&&C(e),s.d()}}}function kd(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 Yr extends at{constructor(e){super(),rt(this,e,kd,vd,ot,{kind:0,size:1})}}const hd={"nav.today":"Сегодня","nav.inbox":"Неразобранное","nav.trash":"Корзина","nav.activity":"Активность","nav.journal":"Журнал","nav.clients":"Клиенты","nav.projects":"Проекты","nav.recipes":"Рецепты","nav.documents":"Документы","nav.archive":"Архив","nav.sections":"Разделы","nav.cases":"Дела","nav.noCases":"Нет дел","nav.sync":"Синхронизация","nav.syncSettings":"Настройки синхронизации","nav.syncNow":"Синхронизировать","nav.selectPrompt":"Выберите раздел или дело","nav.brand":"Верстак","nav.system":"Системное","nav.workspace":"Рабочее пространство","nav.noNodes":"Нет узлов","nav.openFolder":"Открыть папку","nav.createInside":"Создать внутри","nav.createNode":"Создать элемент","nav.moveToRoot":"Переместить в корень","inbox.subtitle":"Захваченные материалы, которые нужно разложить по делам","inbox.empty":"Неразобранных элементов нет","inbox.pasteClipboard":"Вставить из буфера","inbox.captured":"Добавлено","inbox.clipboardEmpty":"Буфер обмена пуст","inbox.clipboardUnavailable":"Буфер обмена недоступен","inbox.assign":"Разложить","inbox.keepHere":"Оставить здесь","inbox.localEmpty":"Для этого дела неразобранных материалов нет","inbox.capturedIn":"Захвачено в","inbox.suggestedTarget":"Цель","inbox.assignTitle":"Разложить материал","inbox.assignTarget":"Дело","inbox.assignSearchPlaceholder":"Найти дело","inbox.deleteTitle":"Удалить материал","inbox.deleteConfirm":"Удалить «{title}» из неразобранного?","capture.kind.text":"Текст","capture.kind.url":"Ссылка","capture.kind.file":"Файл","capture.kind.folder":"Папка","capture.kind.image":"Изображение","capture.source.clipboard":"Буфер обмена","capture.source.clipboard_button":"Кнопка буфера","capture.source.drop":"Перетаскивание","capture.source.paste":"Вставка","capture.source.browser":"Браузер","capture.source.manual":"Вручную","capture.dropOverlayNode":"Будет добавлено в Неразобранное для: {title}","capture.dropOverlayGlobal":"Будет добавлено в глобальное Неразобранное","trash.openFolder":"Открыть папку корзины","trash.empty":"Корзина пуста","trash.deletedNodes":"Удаленные элементы","trash.physicalEntries":"Файлы в .verstak/trash","tab.overview":"Обзор","tab.notes":"Заметки","tab.files":"Файлы","tab.inbox":"Неразобранное","tab.links":"Ссылки","tab.actions":"Действия","tab.worklog":"Журнал","tab.activity":"Активность","common.save":"Сохранить","common.cancel":"Отмена","common.delete":"Удалить","common.rename":"Переименовать","common.close":"Закрыть","common.create":"Создать","common.confirm":"Подтверждение","common.back":"← Назад","common.backLabel":"Назад","common.loading":"Загрузка...","common.error":"Ошибка:","common.yes":"Да","common.ok":"OK","common.copy":"Копировать","common.cut":"Вырезать","common.paste":"Вставить","common.duplicate":"Дублировать","common.run":"Запустить","common.test":"Test","common.all":"Все","common.open":"Открыть","common.no":"Нет","common.date":"Дата","common.search":"Найти","common.testAgain":"Проверить","common.connect":"Подключиться","common.disconnect":"Отключиться","common.settings":"Настройки","common.name":"Название","common.type":"Тип","common.section":"Раздел","common.created":"Создано","common.empty":"Нет","common.newName":"Новое имя","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":"Дело","kind.link":"Ссылка","links.empty":"Ссылок пока нет","links.editTitle":"Редактировать ссылку","links.note":"Заметка","links.copyUrl":"Копировать URL","links.copied":"URL скопирован","links.copyUnavailable":"Не удалось скопировать URL","links.deleteTitle":"Удалить ссылку","links.deleteConfirm":"Удалить ссылку «{title}»?","action.openUrl":"Открыть URL","action.openFile":"Открыть файл","action.openFolder":"Открыть папку","action.runCommand":"Запустить команду","action.runScript":"Запустить скрипт","action.openTerminal":"Открыть терминал","action.launchApp":"Запустить приложение","action.addAction":"+ Добавить действие","action.newAction":"Новое действие","action.noActions":"Действий пока нет","action.run":"Запустить","action.dataUrl":"URL","action.dataPath":"Путь","action.dataCommand":"Команда","action.urlPlaceholder":"https://example.com","action.pathPlaceholder":"/path/to/file","action.commandPlaceholder":"команда","action.namePlaceholder":"Например: Открыть сайт","note.add":"+ Добавить заметку","note.new":"Новая заметка","note.title":"Название заметки","note.noNotes":"Нет заметок","note.createFirst":"Создайте первую заметку для этого дела.","note.placeholder":"Начните писать...","note.unsavedTitle":"Несохранённые изменения","note.unsavedMessage":"Закрыть редактор? Все несохранённые изменения будут потеряны.","note.unsavedClose":"Закрыть","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":"Срок действия токена истёк"},gd={"nav.today":"Today","nav.inbox":"Inbox","nav.trash":"Trash","nav.activity":"Activity","nav.journal":"Journal","nav.clients":"Clients","nav.projects":"Projects","nav.recipes":"Recipes","nav.documents":"Documents","nav.archive":"Archive","nav.sections":"Sections","nav.cases":"Cases","nav.noCases":"No cases","nav.sync":"Sync","nav.syncSettings":"Sync settings","nav.syncNow":"Sync now","nav.selectPrompt":"Select a section or case","nav.brand":"Verstak","nav.system":"System","nav.workspace":"Workspace","nav.noNodes":"No nodes","nav.openFolder":"Open folder","nav.createInside":"Create inside","nav.createNode":"Create element","nav.moveToRoot":"Move to root","inbox.subtitle":"Captured materials that still need to be assigned to cases","inbox.empty":"No unprocessed items","inbox.pasteClipboard":"Paste from clipboard","inbox.captured":"Added","inbox.clipboardEmpty":"Clipboard is empty","inbox.clipboardUnavailable":"Clipboard is unavailable","inbox.assign":"Assign","inbox.keepHere":"Keep here","inbox.localEmpty":"No unprocessed materials for this case","inbox.capturedIn":"Captured in","inbox.suggestedTarget":"Target","inbox.assignTitle":"Assign material","inbox.assignTarget":"Case","inbox.assignSearchPlaceholder":"Find case","inbox.deleteTitle":"Delete material","inbox.deleteConfirm":'Delete "{title}" from inbox?',"capture.kind.text":"Text","capture.kind.url":"Link","capture.kind.file":"File","capture.kind.folder":"Folder","capture.kind.image":"Image","capture.source.clipboard":"Clipboard","capture.source.clipboard_button":"Clipboard button","capture.source.drop":"Drop","capture.source.paste":"Paste","capture.source.browser":"Browser","capture.source.manual":"Manual","capture.dropOverlayNode":"Will be added to Inbox for: {title}","capture.dropOverlayGlobal":"Will be added to global Inbox","trash.openFolder":"Open trash folder","trash.empty":"Trash is empty","trash.deletedNodes":"Deleted items","trash.physicalEntries":"Files in .verstak/trash","tab.overview":"Overview","tab.notes":"Notes","tab.files":"Files","tab.inbox":"Inbox","tab.links":"Links","tab.actions":"Actions","tab.worklog":"Work Log","tab.activity":"Activity","common.save":"Save","common.cancel":"Cancel","common.delete":"Delete","common.rename":"Rename","common.close":"Close","common.create":"Create","common.confirm":"Confirm","common.back":"← Back","common.backLabel":"Back","common.loading":"Loading...","common.error":"Error:","common.yes":"Yes","common.ok":"OK","common.copy":"Copy","common.cut":"Cut","common.paste":"Paste","common.duplicate":"Duplicate","common.run":"Run","common.test":"Test","common.all":"All","common.open":"Open","common.no":"No","common.date":"Date","common.search":"Search","common.testAgain":"Check","common.connect":"Connect","common.disconnect":"Disconnect","common.settings":"Settings","common.name":"Name","common.type":"Type","common.section":"Section","common.created":"Created","common.empty":"None","common.newName":"New name","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","kind.link":"Link","links.empty":"No links yet","links.editTitle":"Edit link","links.note":"Note","links.copyUrl":"Copy URL","links.copied":"URL copied","links.copyUnavailable":"Could not copy URL","links.deleteTitle":"Delete link","links.deleteConfirm":'Delete link "{title}"?',"action.openUrl":"Open URL","action.openFile":"Open file","action.openFolder":"Open folder","action.runCommand":"Run command","action.runScript":"Run script","action.openTerminal":"Open terminal","action.launchApp":"Launch app","action.addAction":"+ Add action","action.newAction":"New action","action.noActions":"No actions yet","action.run":"Run","action.dataUrl":"URL","action.dataPath":"Path","action.dataCommand":"Command","action.urlPlaceholder":"https://example.com","action.pathPlaceholder":"/path/to/file","action.commandPlaceholder":"command","action.namePlaceholder":"Example: Open website","note.add":"+ Add note","note.new":"New note","note.title":"Note title","note.noNotes":"No notes","note.createFirst":"Create the first note for this case.","note.placeholder":"Start writing...","note.unsavedTitle":"Unsaved changes","note.unsavedMessage":"Close the editor? All unsaved changes will be lost.","note.unsavedClose":"Close","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"},Cs={ru:hd,en:gd};let Ss="ru";function p(l,e){var s;const t=Cs[Ss];let n=t==null?void 0:t[l];if(n==null&&Ss!=="ru"&&(n=(s=Cs.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 Ml(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 mn={"image/jpeg":p("mime.jpeg"),"image/png":p("mime.png"),"image/gif":p("mime.gif"),"image/webp":p("mime.webp"),"image/svg+xml":p("mime.svg"),"image/bmp":p("mime.bmp"),"image/tiff":p("mime.tiff"),"image/avif":p("mime.avif"),"application/pdf":p("mime.pdf"),"application/msword":p("mime.word"),"application/vnd.openxmlformats-officedocument.wordprocessingml.document":p("mime.word"),"application/vnd.ms-excel":p("mime.excel"),"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet":p("mime.excel"),"application/vnd.ms-powerpoint":p("mime.ppt"),"application/vnd.openxmlformats-officedocument.presentationml.presentation":p("mime.ppt"),"application/zip":p("mime.zip"),"application/gzip":p("mime.gzip"),"application/x-tar":p("mime.tar"),"application/x-7z-compressed":p("mime.sevenz"),"application/x-rar-compressed":p("mime.rar"),"text/plain":p("mime.text"),"text/html":p("mime.html"),"text/css":p("mime.css"),"text/javascript":p("mime.js"),"application/json":p("mime.json"),"application/xml":p("mime.xml"),"application/x-yaml":p("mime.yaml"),"application/octet-stream":p("mime.binary"),"application/x-msdos-program":p("mime.executable"),"inode/directory":p("mime.folder")};function Ts(l){return l?mn[l]||l:p("mime.unknown")}function bd(l){if(l.type==="folder")return p("mime.folder");const e=(l.mime||"").toLowerCase();if(mn[e])return mn[e];const n=(l.name||"").toLowerCase().split(".").pop();return n?n.toUpperCase():p("mime.file")}function Qr(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 Xr=["image/jpeg","image/png","image/gif","image/webp","image/bmp","image/tiff","image/avif","image/svg+xml"],Zr=["text/plain","text/html","text/css","text/javascript","application/json","application/xml","application/x-yaml","text/x-shellscript"],xr=["txt","log","conf","ini","yaml","yml","json","xml","csv","sh","py","js","ts","css","html","md","markdown","cfg"],$r=["jpg","jpeg","png","gif","webp","bmp","tiff","tif","avif","svg"];function js(l){if(l.type==="folder")return!1;const e=(l.mime||"").toLowerCase(),n=(l.name||"").toLowerCase().split(".").pop();return!!(Xr.includes(e)||$r.includes(n)||e.includes("pdf")||Zr.includes(e)||xr.includes(n))}function ea(l){const e=(l.mime||"").toLowerCase(),n=(l.name||"").toLowerCase().split(".").pop();return Xr.includes(e)||$r.includes(n)}function ta(l){const e=(l.mime||"").toLowerCase(),n=(l.name||"").toLowerCase().split(".").pop();return Zr.includes(e)||xr.includes(n)&&n!=="md"&&n!=="markdown"}function la(l){return(l.mime||"").toLowerCase().includes("pdf")}function na(l){const e=(l.name||"").toLowerCase();return e.endsWith(".md")||e.endsWith(".markdown")}function yd(l){return ea(l)||la(l)}function wd(l){return ta(l)||na(l)}const{window:Cd}=vn;function Sd(l){let e,t,n,s=Ml(l[0].size)+"",o;return{c(){e=f("span"),e.textContent="·",t=k(),n=f("span"),o=P(s),i(e,"class","meta-sep svelte-1skuef2")},m(r,c){S(r,e,c),S(r,t,c),S(r,n,c),a(n,o)},p(r,c){c[0]&1&&s!==(s=Ml(r[0].size)+"")&&B(o,s)},d(r){r&&(C(e),C(t),C(n))}}}function Td(l){let e,t,n,s,o;return{c(){e=f("button"),e.innerHTML='',t=k(),n=f("button"),n.innerHTML='',i(e,"class","action-btn svelte-1skuef2"),i(e,"title",p("file.openFolder")),i(e,"aria-label",p("file.openFolder")),i(n,"class","action-btn svelte-1skuef2"),i(n,"title",p("file.showInExplorer")),i(n,"aria-label",p("file.showInExplorer"))},m(r,c){S(r,e,c),S(r,t,c),S(r,n,c),s||(o=[A(e,"click",Le(l[30])),A(n,"click",Le(l[11]))],s=!0)},p:x,d(r){r&&(C(e),C(t),C(n)),s=!1,_e(o)}}}function jd(l){let e,t,n,s,o,r,c;return{c(){e=f("button"),e.innerHTML='',t=k(),n=f("button"),n.innerHTML='',s=k(),o=f("button"),o.innerHTML='',i(e,"class","action-btn svelte-1skuef2"),i(e,"title",p("file.preview")),i(e,"aria-label",p("file.preview")),i(n,"class","action-btn svelte-1skuef2"),i(n,"title",p("file.openExternal")),i(n,"aria-label",p("file.openExternal")),i(o,"class","action-btn svelte-1skuef2"),i(o,"title",p("file.showInExplorer")),i(o,"aria-label",p("file.showInExplorer"))},m(u,m){S(u,e,m),S(u,t,m),S(u,n,m),S(u,s,m),S(u,o,m),r||(c=[A(e,"click",Le(l[29])),A(n,"click",Le(l[10])),A(o,"click",Le(l[11]))],r=!0)},p:x,d(u){u&&(C(e),C(t),C(n),C(s),C(o)),r=!1,_e(c)}}}function Es(l){let e,t,n,s,o,r,c,u,m=p("common.open")+"",v,_,h,b,g,y,w,T,j=p("file.openExternal")+"",N,D,E,F,M,R,O=p("file.showInExplorer")+"",V,K,J,q,W,Y,G,L,H,z=p("common.rename")+"",U,$,de,ie,ne,le,oe,ue=p("common.duplicate")+"",ge,Ue,Ne,X,ee,fe,be,ve,Me,Ke=p("common.cut")+"",st,ct,Te,Pe,Ce,Ve,Ie,He=p("common.copy")+"",Re,Oe,je,ye,Fe,We,$e,Se,pe,Ee=p("common.delete")+"",Ye,lt,xe;return{c(){e=f("div"),t=k(),n=f("div"),s=f("button"),o=Q("svg"),r=Q("path"),c=Q("circle"),u=k(),v=P(m),_=k(),h=f("button"),b=Q("svg"),g=Q("path"),y=Q("polyline"),w=Q("line"),T=k(),N=P(j),D=k(),E=f("button"),F=Q("svg"),M=Q("path"),R=k(),V=P(O),K=k(),J=f("div"),q=k(),W=f("button"),Y=Q("svg"),G=Q("path"),L=Q("path"),H=k(),U=P(z),$=k(),de=f("button"),ie=Q("svg"),ne=Q("rect"),le=Q("path"),oe=k(),ge=P(ue),Ue=k(),Ne=f("button"),X=Q("svg"),ee=Q("circle"),fe=Q("circle"),be=Q("line"),ve=Q("line"),Me=k(),st=P(Ke),ct=k(),Te=f("button"),Pe=Q("svg"),Ce=Q("rect"),Ve=Q("path"),Ie=k(),Re=P(He),Oe=k(),je=f("div"),ye=k(),Fe=f("button"),We=Q("svg"),$e=Q("polyline"),Se=Q("path"),pe=k(),Ye=P(Ee),i(e,"class","menu-backdrop svelte-1skuef2"),i(e,"role","presentation"),i(r,"d","M1 12s4-8 11-8 11 8 11 8-4 8-11 8-11-8-11-8z"),i(c,"cx","12"),i(c,"cy","12"),i(c,"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(g,"d","M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6"),i(y,"points","15 3 21 3 21 9"),i(w,"x1","10"),i(w,"y1","14"),i(w,"x2","21"),i(w,"y2","3"),i(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(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(F,"width","14"),i(F,"height","14"),i(F,"viewBox","0 0 24 24"),i(F,"fill","none"),i(F,"stroke","currentColor"),i(F,"stroke-width","2"),i(F,"stroke-linecap","round"),i(F,"stroke-linejoin","round"),i(E,"class","menu-item svelte-1skuef2"),i(E,"role","menuitem"),i(J,"class","menu-sep svelte-1skuef2"),i(G,"d","M12 20h9"),i(L,"d","M16.5 3.5a2.121 2.121 0 0 1 3 3L7 19l-4 1 1-4L16.5 3.5z"),i(Y,"width","14"),i(Y,"height","14"),i(Y,"viewBox","0 0 24 24"),i(Y,"fill","none"),i(Y,"stroke","currentColor"),i(Y,"stroke-width","2"),i(Y,"stroke-linecap","round"),i(Y,"stroke-linejoin","round"),i(W,"class","menu-item svelte-1skuef2"),i(W,"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(ie,"width","14"),i(ie,"height","14"),i(ie,"viewBox","0 0 24 24"),i(ie,"fill","none"),i(ie,"stroke","currentColor"),i(ie,"stroke-width","2"),i(ie,"stroke-linecap","round"),i(ie,"stroke-linejoin","round"),i(de,"class","menu-item svelte-1skuef2"),i(de,"role","menuitem"),i(ee,"cx","6"),i(ee,"cy","6"),i(ee,"r","3"),i(fe,"cx","6"),i(fe,"cy","18"),i(fe,"r","3"),i(be,"x1","20"),i(be,"y1","4"),i(be,"x2","8.12"),i(be,"y2","15.88"),i(ve,"x1","8.12"),i(ve,"y1","8.12"),i(ve,"x2","20"),i(ve,"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(Ne,"class","menu-item svelte-1skuef2"),i(Ne,"role","menuitem"),i(Ce,"x","9"),i(Ce,"y","9"),i(Ce,"width","13"),i(Ce,"height","13"),i(Ce,"rx","2"),i(Ce,"ry","2"),i(Ve,"d","M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1"),i(Pe,"width","14"),i(Pe,"height","14"),i(Pe,"viewBox","0 0 24 24"),i(Pe,"fill","none"),i(Pe,"stroke","currentColor"),i(Pe,"stroke-width","2"),i(Pe,"stroke-linecap","round"),i(Pe,"stroke-linejoin","round"),i(Te,"class","menu-item svelte-1skuef2"),i(Te,"role","menuitem"),i(je,"class","menu-sep svelte-1skuef2"),i($e,"points","3 6 5 6 21 6"),i(Se,"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(We,"width","14"),i(We,"height","14"),i(We,"viewBox","0 0 24 24"),i(We,"fill","none"),i(We,"stroke","currentColor"),i(We,"stroke-width","2"),i(We,"stroke-linecap","round"),i(We,"stroke-linejoin","round"),i(Fe,"class","menu-item menu-item-danger svelte-1skuef2"),i(Fe,"role","menuitem"),i(n,"class","menu svelte-1skuef2"),gt(n,"left",l[3]+"px"),gt(n,"top",l[4]+"px"),gt(n,"position","fixed"),i(n,"role","menu"),i(n,"tabindex","-1")},m(Ge,Qe){S(Ge,e,Qe),S(Ge,t,Qe),S(Ge,n,Qe),a(n,s),a(s,o),a(o,r),a(o,c),a(s,u),a(s,v),a(n,_),a(n,h),a(h,b),a(b,g),a(b,y),a(b,w),a(h,T),a(h,N),a(n,D),a(n,E),a(E,F),a(F,M),a(E,R),a(E,V),a(n,K),a(n,J),a(n,q),a(n,W),a(W,Y),a(Y,G),a(Y,L),a(W,H),a(W,U),a(n,$),a(n,de),a(de,ie),a(ie,ne),a(ie,le),a(de,oe),a(de,ge),a(n,Ue),a(n,Ne),a(Ne,X),a(X,ee),a(X,fe),a(X,be),a(X,ve),a(Ne,Me),a(Ne,st),a(n,ct),a(n,Te),a(Te,Pe),a(Pe,Ce),a(Pe,Ve),a(Te,Ie),a(Te,Re),a(n,Oe),a(n,je),a(n,ye),a(n,Fe),a(Fe,We),a(We,$e),a(We,Se),a(Fe,pe),a(Fe,Ye),lt||(xe=[A(e,"click",Le(l[19])),A(s,"click",l[17]),A(h,"click",l[10]),A(E,"click",l[11]),A(W,"click",l[13]),A(de,"click",l[14]),A(Ne,"click",l[15]),A(Te,"click",l[16]),A(Fe,"click",l[12]),A(n,"click",Le(l[28])),A(n,"keydown",l[31])],lt=!0)},p(Ge,Qe){Qe[0]&8&>(n,"left",Ge[3]+"px"),Qe[0]&16&>(n,"top",Ge[4]+"px")},d(Ge){Ge&&(C(e),C(t),C(n)),lt=!1,_e(xe)}}}function Ed(l){let e,t,n,s,o,r,c=l[0].name+"",u,m,v,_,h,b,g,y,w,T,j,N,D,E,F,M,R,O,V,K,J,q;n=new Yr({props:{kind:l[6],size:22}});let W=!l[7]&&Sd(l);function Y(z,U){return z[7]?Td:jd}let L=Y(l)(l),H=l[2]&&Es(l);return{c(){e=f("div"),t=f("div"),Xe(n.$$.fragment),s=k(),o=f("div"),r=f("div"),u=P(c),v=k(),_=f("div"),h=f("span"),h.textContent=`${l[8]}`,b=k(),W&&W.c(),g=k(),y=f("div"),L.c(),w=k(),T=f("button"),j=Q("svg"),N=Q("circle"),D=Q("circle"),E=Q("circle"),F=k(),M=f("button"),M.innerHTML='',O=k(),H&&H.c(),V=vt(),i(t,"class","file-row-icon svelte-1skuef2"),i(r,"class","file-row-name svelte-1skuef2"),i(r,"title",m=l[0].name),i(_,"class","file-row-meta svelte-1skuef2"),i(o,"class","file-row-body svelte-1skuef2"),i(N,"cx","12"),i(N,"cy","5"),i(N,"r","2"),i(D,"cx","12"),i(D,"cy","12"),i(D,"r","2"),i(E,"cx","12"),i(E,"cy","19"),i(E,"r","2"),i(j,"width","16"),i(j,"height","16"),i(j,"viewBox","0 0 24 24"),i(j,"fill","currentColor"),i(T,"class","action-btn svelte-1skuef2"),i(T,"title",p("file.more")),i(T,"aria-label",p("file.more")),i(T,"aria-expanded",l[2]),i(M,"class","action-btn action-btn-danger svelte-1skuef2"),i(M,"title",p("common.delete")),i(M,"aria-label",p("common.delete")),i(y,"class","file-row-actions svelte-1skuef2"),i(e,"class","file-row svelte-1skuef2"),i(e,"role","button"),i(e,"tabindex","0"),i(e,"draggable","true"),i(e,"aria-label",R=l[7]?p("file.ariaFolder")+" "+l[0].name:p("file.ariaFile")+" "+l[0].name),he(e,"file-row--selected",l[1])},m(z,U){S(z,e,U),a(e,t),Je(n,t,null),a(e,s),a(e,o),a(o,r),a(r,u),a(o,v),a(o,_),a(_,h),a(_,b),W&&W.m(_,null),a(e,g),a(e,y),L.m(y,null),a(y,w),a(y,T),a(T,j),a(j,N),a(j,D),a(j,E),a(y,F),a(y,M),S(z,O,U),H&&H.m(z,U),S(z,V,U),K=!0,J||(q=[A(Cd,"click",l[19]),A(T,"click",Le(l[18])),A(M,"click",Le(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])],J=!0)},p(z,U){(!K||U[0]&1)&&c!==(c=z[0].name+"")&&B(u,c),(!K||U[0]&1&&m!==(m=z[0].name))&&i(r,"title",m),z[7]||W.p(z,U),L.p(z,U),(!K||U[0]&4)&&i(T,"aria-expanded",z[2]),(!K||U[0]&1&&R!==(R=z[7]?p("file.ariaFolder")+" "+z[0].name:p("file.ariaFile")+" "+z[0].name))&&i(e,"aria-label",R),(!K||U[0]&2)&&he(e,"file-row--selected",z[1]),z[2]?H?H.p(z,U):(H=Es(z),H.c(),H.m(V.parentNode,V)):H&&(H.d(1),H=null)},i(z){K||(ce(n.$$.fragment,z),K=!0)},o(z){me(n.$$.fragment,z),K=!1},d(z){z&&(C(e),C(O),C(V)),qe(n),W&&W.d(),L.d(),H&&H.d(z),J=!1,_e(q)}}}function Dd(l,e,t){let{item:n}=e,{selected:s=!1}=e,{onDragStart:o}=e,{onDragOver:r}=e,{onDrop:c}=e;const u=Al(),m=Qr(n),v=n.type==="folder",_=bd(n);let h=!1,b=0,g=0,y=null;function w(U){U.ctrlKey||U.metaKey?u("toggleSelect",n.id):U.shiftKey?u("rangeSelect",n.id):y?(clearTimeout(y),y=null,v?u("navigate",n.id):u("preview",n)):y=setTimeout(()=>{y=null,u("selectOne",n.id)},250)}function T(){u("openExternal",n.fileId)}function j(){t(2,h=!1),u("showInFolder",n.nodeId||n.id)}function N(){t(2,h=!1),u("delete",{id:n.id,type:n.type})}function D(){t(2,h=!1),u("rename",{id:n.id,name:n.name})}function E(){t(2,h=!1),u("duplicate",n.id)}function F(){t(2,h=!1),u("cut",n.id)}function M(){t(2,h=!1),u("copy",n.id)}function R(){t(2,h=!1),v?u("navigate",n.id):u("preview",n)}function O(){t(2,h=!h)}function V(){t(2,h=!1)}function K(U){o&&o(U,n.id)}function J(U){r&&v&&r(U,n.id)}function q(U){c&&v&&c(U,n.id)}function W(U){U.preventDefault(),t(3,b=Math.min(U.clientX,window.innerWidth-240)),t(4,g=Math.min(U.clientY,window.innerHeight-320)),t(2,h=!0)}function Y(U){(U.key==="Enter"||U.key===" ")&&(U.preventDefault(),w(U))}function G(U){Kr.call(this,l,U)}const L=()=>u("preview",n),H=()=>u("navigate",n.id),z=U=>{U.key==="Escape"&&(U.stopPropagation(),V())};return l.$$set=U=>{"item"in U&&t(0,n=U.item),"selected"in U&&t(1,s=U.selected),"onDragStart"in U&&t(25,o=U.onDragStart),"onDragOver"in U&&t(26,r=U.onDragOver),"onDrop"in U&&t(27,c=U.onDrop)},[n,s,h,b,g,u,m,v,_,w,T,j,N,D,E,F,M,R,O,V,K,J,q,W,Y,o,r,c,G,L,H,z]}class Nd extends at{constructor(e){super(),rt(this,e,Dd,Ed,ot,{item:0,selected:1,onDragStart:25,onDragOver:26,onDrop:27},null,[-1,-1])}}function Ds(l,e,t){const n=l.slice();return n[4]=e[t],n[6]=t,n}function Md(l){let e;return{c(){e=f("span"),e.textContent="/",i(e,"class","sep svelte-csi2lb")},m(t,n){S(t,e,n)},d(t){t&&C(e)}}}function Id(l){let e,t=l[4].name+"",n,s,o;function r(){return l[2](l[6])}return{c(){e=f("button"),n=P(t),i(e,"class","crumb crumb--link svelte-csi2lb")},m(c,u){S(c,e,u),a(e,n),s||(o=A(e,"click",r),s=!0)},p(c,u){l=c,u&1&&t!==(t=l[4].name+"")&&B(n,t)},d(c){c&&C(e),s=!1,o()}}}function Ad(l){let e,t=l[4].name+"",n;return{c(){e=f("span"),n=P(t),i(e,"class","crumb crumb--current svelte-csi2lb")},m(s,o){S(s,e,o),a(e,n)},p(s,o){o&1&&t!==(t=s[4].name+"")&&B(n,t)},d(s){s&&C(e)}}}function Ns(l){let e,t,n=l[6]>0&&Md();function s(c,u){return c[6]===c[0].length-1?Ad:Id}let o=s(l),r=o(l);return{c(){n&&n.c(),e=k(),r.c(),t=vt()},m(c,u){n&&n.m(c,u),S(c,e,u),r.m(c,u),S(c,t,u)},p(c,u){o===(o=s(c))&&r?r.p(c,u):(r.d(1),r=o(c),r&&(r.c(),r.m(t.parentNode,t)))},d(c){c&&(C(e),C(t)),n&&n.d(c),r.d(c)}}}function Ld(l){let e,t=re(l[0]),n=[];for(let s=0;so(c);return l.$$set=c=>{"crumbs"in c&&t(0,n=c.crumbs)},[n,o,r]}class sa extends at{constructor(e){super(),rt(this,e,Fd,Ld,ot,{crumbs:0})}}function Pd(l){let e,t,n,s,o,r;return{c(){e=f("div"),t=f("p"),t.textContent=`${p("file.previewUnavailable")}`,n=k(),s=f("button"),s.textContent=`${p("file.openExternal")}`,i(s,"class","btn btn-sm svelte-1cw3u0m"),i(e,"class","preview-status svelte-1cw3u0m")},m(c,u){S(c,e,u),a(e,t),a(e,n),a(e,s),o||(r=A(s,"click",l[9]),o=!0)},p:x,d(c){c&&C(e),o=!1,r()}}}function Rd(l){let e,t;function n(r,c){return c&2&&(e=null),e==null&&(e=!!(r[1]&&r[1].startsWith("data:"))),e?Ud:Hd}let s=n(l,-1),o=s(l);return{c(){o.c(),t=vt()},m(r,c){o.m(r,c),S(r,t,c)},p(r,c){s===(s=n(r,c))&&o?o.p(r,c):(o.d(1),o=s(r),o&&(o.c(),o.m(t.parentNode,t)))},d(r){r&&C(t),o.d(r)}}}function zd(l){let e,t,n;return{c(){e=f("pre"),t=f("code"),n=P(l[1]),i(e,"class","preview-text svelte-1cw3u0m")},m(s,o){S(s,e,o),a(e,t),a(t,n)},p(s,o){o&2&&B(n,s[1])},d(s){s&&C(e)}}}function Od(l){let e,t,n,s;return{c(){e=f("div"),t=f("img"),tl(t.src,n=l[1])||i(t,"src",n),i(t,"alt",s=l[0].name),i(t,"class","preview-image svelte-1cw3u0m"),i(e,"class","preview-image-container svelte-1cw3u0m")},m(o,r){S(o,e,r),a(e,t)},p(o,r){r&2&&!tl(t.src,n=o[1])&&i(t,"src",n),r&1&&s!==(s=o[0].name)&&i(t,"alt",s)},d(o){o&&C(e)}}}function Vd(l){let e,t,n,s,o,r,c;return{c(){e=f("div"),t=f("p"),n=P(l[3]),s=k(),o=f("button"),o.textContent=`${p("file.openExternal")}`,i(o,"class","btn btn-sm svelte-1cw3u0m"),i(e,"class","preview-status svelte-1cw3u0m")},m(u,m){S(u,e,m),a(e,t),a(t,n),a(e,s),a(e,o),r||(c=A(o,"click",l[9]),r=!0)},p(u,m){m&8&&B(n,u[3])},d(u){u&&C(e),r=!1,c()}}}function Wd(l){let e,t;return{c(){e=f("div"),t=f("p"),t.textContent=`${p("common.loading")}`,i(e,"class","preview-status svelte-1cw3u0m")},m(n,s){S(n,e,s),a(e,t)},p:x,d(n){n&&C(e)}}}function Hd(l){let e,t,n,s,o,r;return{c(){e=f("div"),t=f("p"),t.textContent=`${p("file.pdfUnavailable")}`,n=k(),s=f("button"),s.textContent=`${p("file.openExternal")}`,i(s,"class","btn btn-sm svelte-1cw3u0m"),i(e,"class","preview-status svelte-1cw3u0m")},m(c,u){S(c,e,u),a(e,t),a(e,n),a(e,s),o||(r=A(s,"click",l[9]),o=!0)},p:x,d(c){c&&C(e),o=!1,r()}}}function Ud(l){let e,t,n;return{c(){e=f("div"),t=f("embed"),tl(t.src,n=l[1])||i(t,"src",n),i(t,"type","application/pdf"),i(t,"class","preview-pdf svelte-1cw3u0m"),i(e,"class","preview-pdf-container svelte-1cw3u0m")},m(s,o){S(s,e,o),a(e,t)},p(s,o){o&2&&!tl(t.src,n=s[1])&&i(t,"src",n)},d(s){s&&C(e)}}}function Bd(l){let e,t,n,s,o,r,c,u=l[0].name+"",m,v,_,h,b=Ml(l[0].size)+"",g,y,w=Ts(l[0].mime)+"",T,j,N,D,E,F,M,R,O,V,K;o=new Yr({props:{kind:l[8],size:18}});function J(Y,G){return Y[2]?Wd:Y[3]?Vd:Y[6]&&Y[1]?Od:Y[5]&&Y[1]?zd:Y[4]?Rd:Pd}let q=J(l),W=q(l);return{c(){e=f("div"),t=f("div"),n=f("header"),s=f("div"),Xe(o.$$.fragment),r=k(),c=f("span"),m=P(u),_=k(),h=f("div"),g=P(b),y=P(" · "),T=P(w),j=k(),N=f("div"),D=f("button"),D.innerHTML='',E=k(),F=f("button"),F.innerHTML='',M=k(),R=f("div"),W.c(),i(c,"class","preview-name svelte-1cw3u0m"),i(c,"title",v=l[0].name),i(s,"class","preview-title svelte-1cw3u0m"),i(h,"class","preview-meta svelte-1cw3u0m"),i(D,"class","action-btn svelte-1cw3u0m"),i(D,"title",p("file.openExternal")),i(D,"aria-label",p("file.openExternal")),i(F,"class","action-btn action-btn-close svelte-1cw3u0m"),i(F,"title","Close"),i(F,"aria-label","Close preview"),i(N,"class","preview-actions svelte-1cw3u0m"),i(n,"class","preview-header svelte-1cw3u0m"),i(R,"class","preview-body svelte-1cw3u0m"),i(t,"class","modal svelte-1cw3u0m"),i(e,"class","overlay svelte-1cw3u0m"),i(e,"role","presentation")},m(Y,G){S(Y,e,G),a(e,t),a(t,n),a(n,s),Je(o,s,null),a(s,r),a(s,c),a(c,m),a(n,_),a(n,h),a(h,g),a(h,y),a(h,T),a(n,j),a(n,N),a(N,D),a(N,E),a(N,F),a(t,M),a(t,R),W.m(R,null),O=!0,V||(K=[A(D,"click",l[9]),A(F,"click",l[10]),A(e,"click",bt(l[11])),A(e,"keydown",l[12])],V=!0)},p(Y,[G]){(!O||G&1)&&u!==(u=Y[0].name+"")&&B(m,u),(!O||G&1&&v!==(v=Y[0].name))&&i(c,"title",v),(!O||G&1)&&b!==(b=Ml(Y[0].size)+"")&&B(g,b),(!O||G&1)&&w!==(w=Ts(Y[0].mime)+"")&&B(T,w),q===(q=J(Y))&&W?W.p(Y,G):(W.d(1),W=q(Y),W&&(W.c(),W.m(R,null)))},i(Y){O||(ce(o.$$.fragment,Y),O=!0)},o(Y){me(o.$$.fragment,Y),O=!1},d(Y){Y&&C(e),qe(o),W.d(),V=!1,_e(K)}}}function Kd(l,e,t){let n,s,o,{item:r}=e,{content:c=""}=e,{loading:u=!1}=e,{error:m=""}=e;const v=Al(),_=Qr(r);function h(T){T.key==="Escape"&&v("close")}function b(){v("openExternal",r.fileId)}Br(()=>{window.addEventListener("keydown",h)}),gn(()=>{window.removeEventListener("keydown",h)});const g=()=>v("close"),y=()=>v("close"),w=T=>{T.key==="Escape"&&(T.preventDefault(),v("close"))};return l.$$set=T=>{"item"in T&&t(0,r=T.item),"content"in T&&t(1,c=T.content),"loading"in T&&t(2,u=T.loading),"error"in T&&t(3,m=T.error)},l.$$.update=()=>{l.$$.dirty&3&&t(6,n=ea(r)&&c&&c.startsWith("data:")),l.$$.dirty&1&&t(5,s=ta(r)||na(r)),l.$$.dirty&1&&t(4,o=la(r))},[r,c,u,m,o,s,n,v,_,b,g,y,w]}class Gd extends at{constructor(e){super(),rt(this,e,Kd,Bd,ot,{item:0,content:1,loading:2,error:3})}}function Jd(l){let e,t,n,s,o,r,c,u,m,v,_,h,b,g,y,w,T;return{c(){e=f("div"),t=f("div"),n=f("h3"),s=P(l[0]),o=k(),r=f("p"),c=P(l[1]),u=k(),m=f("div"),v=f("button"),_=P(l[2]),b=k(),g=f("button"),y=P(l[3]),i(n,"class","svelte-1fv6yyk"),i(r,"class","message svelte-1fv6yyk"),i(v,"class",h="btn "+(l[4]?"btn-danger":"btn-primary")+" svelte-1fv6yyk"),i(g,"class","btn svelte-1fv6yyk"),i(m,"class","actions svelte-1fv6yyk"),i(t,"class","modal svelte-1fv6yyk"),i(e,"class","overlay svelte-1fv6yyk"),i(e,"role","presentation")},m(j,N){S(j,e,N),a(e,t),a(t,n),a(n,s),a(t,o),a(t,r),a(r,c),a(t,u),a(t,m),a(m,v),a(v,_),a(m,b),a(m,g),a(g,y),w||(T=[A(v,"click",l[6]),A(g,"click",l[7]),A(e,"click",bt(l[8])),A(e,"keydown",l[9])],w=!0)},p(j,[N]){N&1&&B(s,j[0]),N&2&&B(c,j[1]),N&4&&B(_,j[2]),N&16&&h!==(h="btn "+(j[4]?"btn-danger":"btn-primary")+" svelte-1fv6yyk")&&i(v,"class",h),N&8&&B(y,j[3])},i:x,o:x,d(j){j&&C(e),w=!1,_e(T)}}}function qd(l,e,t){let{title:n=p("common.confirm")}=e,{message:s=""}=e,{confirmText:o=p("common.delete")}=e,{cancelText:r=p("common.cancel")}=e,{danger:c=!1}=e;const u=Al(),m=()=>u("confirm"),v=()=>u("cancel"),_=()=>u("cancel"),h=b=>{b.key==="Escape"&&(b.preventDefault(),u("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,c=b.danger)},[n,s,o,r,c,u,m,v,_,h]}class Yd extends at{constructor(e){super(),rt(this,e,qd,Jd,ot,{title:0,message:1,confirmText:2,cancelText:3,danger:4})}}function Qd(l){let e,t,n;return{c(){e=Q("circle"),t=Q("line"),n=Q("line"),i(e,"cx","12"),i(e,"cy","12"),i(e,"r","10"),i(t,"x1","12"),i(t,"y1","16"),i(t,"x2","12"),i(t,"y2","12"),i(n,"x1","12"),i(n,"y1","8"),i(n,"x2","12.01"),i(n,"y2","8")},m(s,o){S(s,e,o),S(s,t,o),S(s,n,o)},d(s){s&&(C(e),C(t),C(n))}}}function Xd(l){let e,t,n,s;return{c(){e=Q("rect"),t=Q("polyline"),n=Q("line"),s=Q("line"),i(e,"x","3"),i(e,"y","5"),i(e,"width","18"),i(e,"height","14"),i(e,"rx","2"),i(t,"points","3 10 21 10"),i(n,"x1","8"),i(n,"y1","5"),i(n,"x2","8"),i(n,"y2","19"),i(s,"x1","16"),i(s,"y1","5"),i(s,"x2","16"),i(s,"y2","19")},m(o,r){S(o,e,r),S(o,t,r),S(o,n,r),S(o,s,r)},d(o){o&&(C(e),C(t),C(n),C(s))}}}function Zd(l){let e,t;return{c(){e=Q("path"),t=Q("polyline"),i(e,"d","M13 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V9z"),i(t,"points","13 2 13 9 20 9")},m(n,s){S(n,e,s),S(n,t,s)},d(n){n&&(C(e),C(t))}}}function xd(l){let e,t;return{c(){e=Q("path"),t=Q("path"),i(e,"d","M12 20h9"),i(t,"d","M16.5 3.5a2.121 2.121 0 0 1 3 3L7 19l-4 1 1-4L16.5 3.5z")},m(n,s){S(n,e,s),S(n,t,s)},d(n){n&&(C(e),C(t))}}}function $d(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,c){S(r,e,c),S(r,t,c),S(r,n,c),S(r,s,c),S(r,o,c)},d(r){r&&(C(e),C(t),C(n),C(s),C(o))}}}function em(l){let e,t,n,s;return{c(){e=Q("path"),t=Q("polyline"),n=Q("line"),s=Q("line"),i(e,"d","M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"),i(t,"points","14 2 14 8 20 8"),i(n,"x1","16"),i(n,"y1","13"),i(n,"x2","8"),i(n,"y2","13"),i(s,"x1","16"),i(s,"y1","17"),i(s,"x2","8"),i(s,"y2","17")},m(o,r){S(o,e,r),S(o,t,r),S(o,n,r),S(o,s,r)},d(o){o&&(C(e),C(t),C(n),C(s))}}}function tm(l){let e,t;return{c(){e=Q("path"),t=Q("circle"),i(e,"d","M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2"),i(t,"cx","12"),i(t,"cy","7"),i(t,"r","4")},m(n,s){S(n,e,s),S(n,t,s)},d(n){n&&(C(e),C(t))}}}function lm(l){let e,t,n,s;return{c(){e=Q("rect"),t=Q("rect"),n=Q("rect"),s=Q("rect"),i(e,"x","3"),i(e,"y","3"),i(e,"width","7"),i(e,"height","7"),i(e,"rx","1"),i(t,"x","14"),i(t,"y","3"),i(t,"width","7"),i(t,"height","4"),i(t,"rx","1"),i(n,"x","14"),i(n,"y","10"),i(n,"width","7"),i(n,"height","11"),i(n,"rx","1"),i(s,"x","3"),i(s,"y","14"),i(s,"width","7"),i(s,"height","7"),i(s,"rx","1")},m(o,r){S(o,e,r),S(o,t,r),S(o,n,r),S(o,s,r)},d(o){o&&(C(e),C(t),C(n),C(s))}}}function nm(l){let e;return{c(){e=Q("path"),i(e,"d","M22 19a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h5l2 3h9a2 2 0 0 1 2 2z")},m(t,n){S(t,e,n)},d(t){t&&C(e)}}}function sm(l){let e;function t(o,r){return o[0]==="folder"?nm:o[0]==="project"?lm:o[0]==="client"?tm:o[0]==="document"?em:o[0]==="recipe"?$d:o[0]==="note"?xd:o[0]==="file"?Zd:o[0]==="case"?Xd:Qd}let n=t(l),s=n(l);return{c(){e=Q("svg"),s.c(),i(e,"width",l[1]),i(e,"height",l[1]),i(e,"viewBox","0 0 24 24"),i(e,"fill","none"),i(e,"stroke","currentColor"),i(e,"stroke-width","1.5"),i(e,"stroke-linecap","round"),i(e,"stroke-linejoin","round"),i(e,"xmlns","http://www.w3.org/2000/svg")},m(o,r){S(o,e,r),s.m(e,null)},p(o,[r]){n!==(n=t(o))&&(s.d(1),s=n(o),s&&(s.c(),s.m(e,null))),r&2&&i(e,"width",o[1]),r&2&&i(e,"height",o[1])},i:x,o:x,d(o){o&&C(e),s.d()}}}function im(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 Ll extends at{constructor(e){super(),rt(this,e,im,sm,ot,{kind:0,size:1})}}function Ms(l,e,t){const n=l.slice();return n[44]=e[t],n}function om(l){let e;return{c(){e=f("span"),i(e,"class","tree-toggle-placeholder svelte-zj71cl")},m(t,n){S(t,e,n)},p:x,d(t){t&&C(e)}}}function rm(l){let e,t,n=l[1][l[44].id]?"▾":"▸",s,o,r;function c(){return l[25](l[44])}return{c(){e=f("button"),t=f("span"),s=P(n),i(t,"class","tree-arrow"),i(e,"class","tree-toggle svelte-zj71cl")},m(u,m){S(u,e,m),a(e,t),a(t,s),o||(r=A(e,"click",Le(c)),o=!0)},p(u,m){l=u,m[0]&3&&n!==(n=l[1][l[44].id]?"▾":"▸")&&B(s,n)},d(u){u&&C(e),o=!1,r()}}}function Is(l){let e,t;return e=new ia({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(){Xe(e.$$.fragment)},m(n,s){Je(e,n,s),t=!0},p(n,s){const o={};s[0]&1&&(o.nodes=n[44].children||[]),s[0]&2&&(o.expanded=n[1]),s[0]&4&&(o.selectedNodeId=n[2]),s[0]&8&&(o.level=n[3]+1),s[0]&16&&(o.onSelect=n[4]),s[0]&32&&(o.onToggle=n[5]),s[0]&64&&(o.onContextMenu=n[6]),s[0]&128&&(o.onDrop=n[7]),e.$set(o)},i(n){t||(ce(e.$$.fragment,n),t=!0)},o(n){me(e.$$.fragment,n),t=!1},d(n){qe(e,n)}}}function As(l,e){let t,n,s,o,r,c,u,m=e[44].title+"",v,_,h=e[1][e[44].id]&&pn(e[44]),b,g,y,w;function T(L,H){return H[0]&1&&(n=null),n==null&&(n=!!cl(L[44])),n?rm:om}let j=T(e,[-1,-1]),N=j(e);r=new Ll({props:{kind:Ls(e[44]),size:16}});function D(...L){return e[26](e[44],...L)}function E(...L){return e[27](e[44],...L)}function F(){return e[28](e[44])}function M(...L){return e[29](e[44],...L)}function R(...L){return e[30](e[44],...L)}function O(...L){return e[31](e[44],...L)}function V(...L){return e[32](e[44],...L)}function K(...L){return e[33](e[44],...L)}function J(...L){return e[34](e[44],...L)}function q(...L){return e[35](e[44],...L)}function W(...L){return e[36](e[44],...L)}function Y(...L){return e[37](e[44],...L)}let G=h&&Is(e);return{key:l,first:null,c(){t=f("div"),N.c(),s=k(),o=f("span"),Xe(r.$$.fragment),c=k(),u=f("span"),v=P(m),_=k(),G&&G.c(),b=vt(),i(o,"class","tree-icon svelte-zj71cl"),i(o,"role","button"),i(o,"tabindex","-1"),i(u,"class","tree-label svelte-zj71cl"),i(u,"role","button"),i(u,"tabindex","-1"),i(t,"class","tree-item svelte-zj71cl"),gt(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(L,H){S(L,t,H),N.m(t,null),a(t,s),a(t,o),Je(r,o,null),a(t,c),a(t,u),a(u,v),S(L,_,H),G&&G.m(L,H),S(L,b,H),g=!0,y||(w=[A(o,"click",D),A(o,"keydown",E),A(o,"dblclick",Le(e[24])),A(u,"click",Le(F)),A(u,"keydown",M),A(t,"dragstart",R),A(t,"dragover",O),A(t,"dragleave",V),A(t,"drop",K),A(t,"click",J),A(t,"keydown",q),A(t,"dblclick",W),A(t,"contextmenu",kn(Y))],y=!0)},p(L,H){e=L,j===(j=T(e,H))&&N?N.p(e,H):(N.d(1),N=j(e),N&&(N.c(),N.m(t,s)));const z={};H[0]&1&&(z.kind=Ls(e[44])),r.$set(z),(!g||H[0]&1)&&m!==(m=e[44].title+"")&&B(v,m),(!g||H[0]&8)&>(t,"padding-left",e[3]*16+4+"px"),(!g||H[0]&5)&&he(t,"selected",e[2]===e[44].id),(!g||H[0]&769)&&he(t,"drop-valid",e[8]===e[44].id&&e[9][e[44].id]),(!g||H[0]&769)&&he(t,"drop-invalid",e[8]===e[44].id&&!e[9][e[44].id]),H[0]&3&&(h=e[1][e[44].id]&&pn(e[44])),h?G?(G.p(e,H),H[0]&3&&ce(G,1)):(G=Is(e),G.c(),ce(G,1),G.m(b.parentNode,b)):G&&(pt(),me(G,1,1,()=>{G=null}),_t())},i(L){g||(ce(r.$$.fragment,L),ce(G),g=!0)},o(L){me(r.$$.fragment,L),me(G),g=!1},d(L){L&&(C(t),C(_),C(b)),N.d(),qe(r),G&&G.d(L),y=!1,_e(w)}}}function am(l){let e=[],t=new Map,n,s,o,r,c=re(l[0]);const u=m=>m[44].id;for(let m=0;m0:l.has_children===!0}function Fs(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 Ps(l){const e=[];function t(n){for(const s of n)e.push(s),s.children&&t(s.children)}return t(l),e}function cm(l){try{return l.dataTransfer.getData("text/plain")}catch{return""}}function um(l,e,t){let n,s,o,{nodes:r=[]}=e,{expanded:c={}}=e,{selectedNodeId:u=""}=e,{level:m=0}=e,{onSelect:v=void 0}=e,{onToggle:_=void 0}=e,{onContextMenu:h=void 0}=e,{onDrop:b=void 0}=e,g={},y=null,w="",T="";const j=["folder","project","client","document","recipe","case"];gn(()=>{for(const X of Object.keys(g))clearTimeout(g[X]);y&&clearInterval(y)});function N(X){return j.includes(X.type)}function D(X,ee,fe){if(!X||!ee||ee===X.id||!N(X))return!1;let be=X.id;for(;be;){if(be===ee)return!1;be=fe[be]||""}return!0}function E(X,ee){X.stopPropagation(),X.dataTransfer.effectAllowed="move",X.dataTransfer.setData("text/plain",ee.id),t(21,w=ee.id)}function F(X,ee){X.preventDefault(),X.stopPropagation(),X.dataTransfer.dropEffect="move",T!==ee.id&&t(8,T=ee.id),cl(ee)&&!c[ee.id]&&!g[ee.id]&&(g[ee.id]=setTimeout(()=>{_&&_(ee.id),delete g[ee.id]},600));const fe=X.currentTarget.closest(".workspace-tree-area");if(fe){const be=fe.getBoundingClientRect(),ve=30;X.clientY-be.top{fe.scrollTop-=10},50)):be.bottom-X.clientY{fe.scrollTop+=10},50)):y&&(clearInterval(y),y=null)}}function M(X,ee){const fe=X.relatedTarget;fe&&X.currentTarget.contains(fe)||(T===ee.id&&t(8,T=""),g[ee.id]&&(clearTimeout(g[ee.id]),delete g[ee.id]),y&&(clearInterval(y),y=null))}function R(X,ee){X.preventDefault(),X.stopPropagation(),g[ee.id]&&(clearTimeout(g[ee.id]),delete g[ee.id]),y&&(clearInterval(y),y=null);const fe=Ps(r),be=Fs(fe),ve=cm(X);if(!D(ee,ve,be)){t(8,T=""),t(21,w="");return}b&&b(ve,ee.id),t(8,T=""),t(21,w="")}function O(){t(8,T=""),t(21,w="");for(const X of Object.keys(g))clearTimeout(g[X]),delete g[X];y&&(clearInterval(y),y=null)}function V(X,ee){X.target.closest(".tree-toggle")||X.target.closest(".tree-icon")||v&&v(ee)}function K(X,ee){cl(ee)&&_&&_(ee.id)}function J(X,ee){(X.key==="Enter"||X.key===" ")&&(X.preventDefault(),v&&v(ee))}function q(X,ee){X.stopPropagation(),cl(ee)&&_&&_(ee.id)}function W(X,ee){(X.key==="Enter"||X.key===" ")&&(X.preventDefault(),X.stopPropagation(),cl(ee)&&_&&_(ee.id))}function Y(X,ee){(X.key==="Enter"||X.key===" ")&&(X.preventDefault(),v&&v(ee))}function G(X,ee,fe){const be={};function ve(Me){for(const Ke of Me)be[Ke.id]=D(Ke,ee,fe),Ke.children&&ve(Ke.children)}return ve(X),be}function L(X){Kr.call(this,l,X)}const H=X=>_&&_(X.id),z=(X,ee)=>q(ee,X),U=(X,ee)=>W(ee,X),$=X=>v&&v(X),de=(X,ee)=>Y(ee,X),ie=(X,ee)=>E(ee,X),ne=(X,ee)=>F(ee,X),le=(X,ee)=>M(ee,X),oe=(X,ee)=>R(ee,X),ue=(X,ee)=>V(ee,X),ge=(X,ee)=>J(ee,X),Ue=(X,ee)=>K(ee,X),Ne=(X,ee)=>h&&h(ee,X);return l.$$set=X=>{"nodes"in X&&t(0,r=X.nodes),"expanded"in X&&t(1,c=X.expanded),"selectedNodeId"in X&&t(2,u=X.selectedNodeId),"level"in X&&t(3,m=X.level),"onSelect"in X&&t(4,v=X.onSelect),"onToggle"in X&&t(5,_=X.onToggle),"onContextMenu"in X&&t(6,h=X.onContextMenu),"onDrop"in X&&t(7,b=X.onDrop)},l.$$.update=()=>{l.$$.dirty[0]&1&&t(23,n=Ps(r)),l.$$.dirty[0]&8388608&&t(22,s=Fs(n)),l.$$.dirty[0]&14680064&&t(9,o=G(n,w,s))},[r,c,u,m,v,_,h,b,T,o,E,F,M,R,O,V,K,J,q,W,Y,w,s,n,L,H,z,U,$,de,ie,ne,le,oe,ue,ge,Ue,Ne]}class ia extends at{constructor(e){super(),rt(this,e,um,am,ot,{nodes:0,expanded:1,selectedNodeId:2,level:3,onSelect:4,onToggle:5,onContextMenu:6,onDrop:7},null,[-1,-1])}}function Rs(l){let e,t;return{c(){e=f("div"),t=P(l[4]),i(e,"class","path-info svelte-a9f1pd")},m(n,s){S(n,e,s),a(e,t)},p(n,s){s&16&&B(t,n[4])},d(n){n&&C(e)}}}function zs(l){let e,t;return{c(){e=f("div"),t=P(l[3]),i(e,"class","error-msg svelte-a9f1pd")},m(n,s){S(n,e,s),a(e,t)},p(n,s){s&8&&B(t,n[3])},d(n){n&&C(e)}}}function fm(l){let e,t,n,s,o,r,c,u,m,v,_,h,b,g,y,w,T,j=p("firstrun.browse")+"",N,D,E,F,M,R,O=(l[2]?p("firstrun.creating"):p("firstrun.create"))+"",V,K,J,q,W,Y,G=l[4]&&Rs(l),L=l[3]&&zs(l);return{c(){e=f("div"),t=f("div"),n=f("img"),o=k(),r=f("h1"),r.textContent=`${p("firstrun.title")}`,c=k(),u=f("p"),u.textContent=`${p("firstrun.desc")}`,m=k(),v=f("div"),_=f("label"),_.textContent=`${p("firstrun.pathLabel")}`,h=k(),b=f("div"),g=f("input"),w=k(),T=f("button"),N=P(j),D=k(),G&&G.c(),E=k(),L&&L.c(),F=k(),M=f("div"),R=f("button"),V=P(O),J=k(),q=f("button"),q.textContent=`${p("firstrun.quit")}`,i(n,"class","first-run-logo svelte-a9f1pd"),tl(n.src,s="/assets/app-icons/icon_64x64.png")||i(n,"src",s),i(n,"width","64"),i(n,"height","64"),i(n,"alt",""),i(r,"class","svelte-a9f1pd"),i(u,"class","first-run-desc svelte-a9f1pd"),i(_,"class","form-label svelte-a9f1pd"),i(_,"for","vault-path"),i(g,"id","vault-path"),i(g,"type","text"),i(g,"placeholder",y=l[1]||p("firstrun.defaultPath")),g.disabled=l[2],i(g,"class","svelte-a9f1pd"),i(T,"class","btn"),T.disabled=l[2],i(b,"class","input-row svelte-a9f1pd"),i(v,"class","form-group svelte-a9f1pd"),i(R,"class","btn btn-primary btn-lg svelte-a9f1pd"),R.disabled=K=!l[0].trim()||l[2],i(q,"class","btn btn-lg svelte-a9f1pd"),i(M,"class","first-run-actions svelte-a9f1pd"),i(t,"class","first-run-card svelte-a9f1pd"),i(e,"class","first-run-screen svelte-a9f1pd")},m(H,z){S(H,e,z),a(e,t),a(t,n),a(t,o),a(t,r),a(t,c),a(t,u),a(t,m),a(t,v),a(v,_),a(v,h),a(v,b),a(b,g),ke(g,l[0]),a(b,w),a(b,T),a(T,N),a(t,D),G&&G.m(t,null),a(t,E),L&&L.m(t,null),a(t,F),a(t,M),a(M,R),a(R,V),a(M,J),a(M,q),W||(Y=[A(g,"input",l[12]),A(g,"input",l[6]),A(g,"keydown",l[9]),A(T,"click",l[5]),A(R,"click",l[7]),A(q,"click",l[8])],W=!0)},p(H,[z]){z&2&&y!==(y=H[1]||p("firstrun.defaultPath"))&&i(g,"placeholder",y),z&4&&(g.disabled=H[2]),z&1&&g.value!==H[0]&&ke(g,H[0]),z&4&&(T.disabled=H[2]),H[4]?G?G.p(H,z):(G=Rs(H),G.c(),G.m(t,E)):G&&(G.d(1),G=null),H[3]?L?L.p(H,z):(L=zs(H),L.c(),L.m(t,F)):L&&(L.d(1),L=null),z&4&&O!==(O=(H[2]?p("firstrun.creating"):p("firstrun.create"))+"")&&B(V,O),z&5&&K!==(K=!H[0].trim()||H[2])&&(R.disabled=K)},i:x,o:x,d(H){H&&C(e),G&&G.d(),L&&L.d(),W=!1,_e(Y)}}}function jl(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 dm(l,e,t){let{onComplete:n=null}=e,{onQuit:s=null}=e,o="",r="",c=!1,u="",m="",v=null;async function _(){try{const j=await jl("GetDefaultVaultPath");t(1,r=j||""),t(0,o=r||""),o&&await b()}catch{t(1,r="")}}_();async function h(){try{const j=await jl("PickDirectory");j&&(t(0,o=j),await b())}catch(j){t(3,u=String(j))}}async function b(){if(!o||!o.trim()){t(4,m=""),v=null;return}try{v=await jl("CheckVaultPath",o.trim()),v&&t(4,m=v.description)}catch{t(4,m=""),v=null}}async function g(){if(!(!o||!o.trim())){if(t(2,c=!0),t(3,u=""),v&&!v.writable){t(3,u=p("firstrun.errorNoWrite")),t(2,c=!1);return}try{const j=await jl("CreateVault",o.trim());j&&j.status==="ready"&&n&&n(j)}catch(j){t(3,u=String(j))}t(2,c=!1)}}function y(){s&&s()}function w(j){j.key==="Enter"&&!c&&o.trim()&&g()}function T(){o=this.value,t(0,o)}return l.$$set=j=>{"onComplete"in j&&t(10,n=j.onComplete),"onQuit"in j&&t(11,s=j.onQuit)},[o,r,c,u,m,h,b,g,y,w,n,s,T]}class mm extends at{constructor(e){super(),rt(this,e,dm,fm,ot,{onComplete:10,onQuit:11})}}function Os(l){let e,t;return{c(){e=f("div"),t=P(l[2]),i(e,"class","error-msg svelte-s3o8c3")},m(n,s){S(n,e,s),a(e,t)},p(n,s){s&4&&B(t,n[2])},d(n){n&&C(e)}}}function Vs(l){let e,t,n,s,o,r,c,u,m=p("common.yes")+"",v,_,h,b,g;return{c(){e=f("div"),t=f("div"),n=f("h3"),n.textContent=`${p("recovery.createConfirmTitle")}`,s=k(),o=f("p"),o.textContent=`${p("recovery.createConfirm")}`,r=k(),c=f("div"),u=f("button"),v=P(m),_=k(),h=f("button"),h.textContent=`${p("common.cancel")}`,i(n,"class","svelte-s3o8c3"),i(o,"class","modal-desc svelte-s3o8c3"),i(u,"class","btn btn-primary"),u.disabled=l[1],i(h,"class","btn"),i(c,"class","modal-actions svelte-s3o8c3"),i(t,"class","modal svelte-s3o8c3"),i(e,"class","modal-overlay svelte-s3o8c3"),i(e,"role","button"),i(e,"tabindex","0")},m(y,w){S(y,e,w),a(e,t),a(t,n),a(t,s),a(t,o),a(t,r),a(t,c),a(c,u),a(u,v),a(c,_),a(c,h),b||(g=[A(u,"click",l[6]),A(h,"click",l[7]),A(e,"click",bt(l[7])),A(e,"keydown",l[11])],b=!0)},p(y,w){w&2&&(u.disabled=y[1])},d(y){y&&C(e),b=!1,_e(g)}}}function pm(l){let e,t,n,s,o,r,c,u,m,v=(l[0]||"—")+"",_,h,b,g,y,w=p("recovery.choose")+"",T,j,N,D=p("recovery.create")+"",E,F,M,R,O,V,K,J=l[2]&&Os(l),q=l[3]&&Vs(l);return{c(){e=f("div"),t=f("div"),n=f("div"),n.textContent="⚠",s=k(),o=f("h1"),o.textContent=`${p("recovery.title")}`,r=k(),c=f("p"),c.textContent=`${p("recovery.expected")}:`,u=k(),m=f("code"),_=P(v),h=k(),J&&J.c(),b=k(),g=f("div"),y=f("button"),T=P(w),j=k(),N=f("button"),E=P(D),F=k(),M=f("button"),M.textContent=`${p("recovery.quit")}`,R=k(),q&&q.c(),O=vt(),i(n,"class","recovery-icon svelte-s3o8c3"),i(o,"class","svelte-s3o8c3"),i(c,"class","recovery-desc svelte-s3o8c3"),i(m,"class","recovery-path svelte-s3o8c3"),i(y,"class","btn btn-primary btn-lg svelte-s3o8c3"),y.disabled=l[1],i(N,"class","btn btn-lg svelte-s3o8c3"),N.disabled=l[1],i(M,"class","btn btn-lg svelte-s3o8c3"),i(g,"class","recovery-actions svelte-s3o8c3"),i(t,"class","recovery-card svelte-s3o8c3"),i(e,"class","recovery-screen svelte-s3o8c3")},m(W,Y){S(W,e,Y),a(e,t),a(t,n),a(t,s),a(t,o),a(t,r),a(t,c),a(t,u),a(t,m),a(m,_),a(t,h),J&&J.m(t,null),a(t,b),a(t,g),a(g,y),a(y,T),a(g,j),a(g,N),a(N,E),a(g,F),a(g,M),S(W,R,Y),q&&q.m(W,Y),S(W,O,Y),V||(K=[A(y,"click",l[4]),A(N,"click",l[5]),A(M,"click",l[8])],V=!0)},p(W,[Y]){Y&1&&v!==(v=(W[0]||"—")+"")&&B(_,v),W[2]?J?J.p(W,Y):(J=Os(W),J.c(),J.m(t,b)):J&&(J.d(1),J=null),Y&2&&(y.disabled=W[1]),Y&2&&(N.disabled=W[1]),W[3]?q?q.p(W,Y):(q=Vs(W),q.c(),q.m(O.parentNode,O)):q&&(q.d(1),q=null)},i:x,o:x,d(W){W&&(C(e),C(R),C(O)),J&&J.d(),q&&q.d(W),V=!1,_e(K)}}}function an(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 _m(l,e,t){let{vaultPath:n=""}=e,{onComplete:s=null}=e,{onQuit:o=null}=e,r=!1,c="",u=!1;async function m(){try{const y=await an("PickDirectory");if(!y)return;t(1,r=!0),t(2,c="");const w=await an("OpenVault",y);w&&w.status==="ready"&&s&&s(w)}catch(y){t(2,c=String(y))}t(1,r=!1)}function v(){t(3,u=!0)}async function _(){t(3,u=!1),t(1,r=!0),t(2,c="");try{const y=await an("CreateVault",n);y&&y.status==="ready"&&s&&s(y)}catch(y){t(2,c=String(y))}t(1,r=!1)}function h(){t(3,u=!1)}function b(){o&&o()}const g=y=>y.key==="Enter"&&h();return l.$$set=y=>{"vaultPath"in y&&t(0,n=y.vaultPath),"onComplete"in y&&t(9,s=y.onComplete),"onQuit"in y&&t(10,o=y.onQuit)},[n,r,c,u,m,v,_,h,b,s,o,g]}class vm extends at{constructor(e){super(),rt(this,e,_m,pm,ot,{vaultPath:0,onComplete:9,onQuit:10})}}function Ws(l,e,t){const n=l.slice();return n[5]=e[t],n}function km(l){let e,t,n;return{c(){e=Q("path"),t=Q("path"),n=Q("path"),i(e,"d","M5 4h12l2 2v14H5z"),i(t,"d","M8 4v6h8V4"),i(n,"d","M8 20v-6h8v6")},m(s,o){S(s,e,o),S(s,t,o),S(s,n,o)},d(s){s&&(C(e),C(t),C(n))}}}function hm(l){let e,t,n,s;return{c(){e=Q("path"),t=Q("path"),n=Q("path"),s=Q("path"),i(e,"d","M20 11a8 8 0 0 0-14-4l-2 2"),i(t,"d","M4 5v4h4"),i(n,"d","M4 13a8 8 0 0 0 14 4l2-2"),i(s,"d","M20 19v-4h-4")},m(o,r){S(o,e,r),S(o,t,r),S(o,n,r),S(o,s,r)},d(o){o&&(C(e),C(t),C(n),C(s))}}}function gm(l){let e;return{c(){e=Q("path"),i(e,"d","M4 19V9M10 19V5M16 19v-7M22 19H2")},m(t,n){S(t,e,n)},d(t){t&&C(e)}}}function bm(l){let e;return{c(){e=Q("path"),i(e,"d","M3 6h6l2 2h10v10a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V6z")},m(t,n){S(t,e,n)},d(t){t&&C(e)}}}function ym(l){let e,t;return{c(){e=Q("path"),t=Q("path"),i(e,"d","M9 3v5M15 3v5M7 8h10v3a5 5 0 0 1-10 0V8z"),i(t,"d","M12 16v5")},m(n,s){S(n,e,s),S(n,t,s)},d(n){n&&(C(e),C(t))}}}function wm(l){let e,t;return{c(){e=Q("rect"),t=Q("path"),i(e,"x","4"),i(e,"y","3"),i(e,"width","16"),i(e,"height","18"),i(e,"rx","2"),i(t,"d","M8 7h8M8 11h8M8 15h5")},m(n,s){S(n,e,s),S(n,t,s)},d(n){n&&(C(e),C(t))}}}function Cm(l){let e,t,n;return{c(){e=Q("path"),t=Q("path"),n=Q("path"),i(e,"d","M3 10.5 12 3l9 7.5"),i(t,"d","M5 9.5V21h14V9.5"),i(n,"d","M10 21v-6h4v6")},m(s,o){S(s,e,o),S(s,t,o),S(s,n,o)},d(s){s&&(C(e),C(t),C(n))}}}function Sm(l){let e,t;return{c(){e=Q("circle"),t=Q("path"),i(e,"cx","12"),i(e,"cy","12"),i(e,"r","3"),i(t,"d","M19.4 15a1.7 1.7 0 0 0 .3 1.8l.1.1a2 2 0 0 1-2.8 2.8l-.1-.1a1.7 1.7 0 0 0-1.8-.3 1.7 1.7 0 0 0-1 1.5V22h-4v-.2a1.7 1.7 0 0 0-1-1.5 1.7 1.7 0 0 0-1.8.3l-.1.1a2 2 0 0 1-2.8-2.8l.1-.1a1.7 1.7 0 0 0 .3-1.8 1.7 1.7 0 0 0-1.5-1H2v-4h.2a1.7 1.7 0 0 0 1.5-1 1.7 1.7 0 0 0-.3-1.8l-.1-.1a2 2 0 0 1 2.8-2.8l.1.1a1.7 1.7 0 0 0 1.8.3 1.7 1.7 0 0 0 1-1.5V2h4v.2a1.7 1.7 0 0 0 1 1.5 1.7 1.7 0 0 0 1.8-.3l.1-.1a2 2 0 0 1 2.8 2.8l-.1.1a1.7 1.7 0 0 0-.3 1.8 1.7 1.7 0 0 0 1.5 1h.2v4h-.2a1.7 1.7 0 0 0-1.4 1z")},m(n,s){S(n,e,s),S(n,t,s)},d(n){n&&(C(e),C(t))}}}function Hs(l){let e,t,n,s,o,r,c,u;function m(b,g){if(b[5].id==="general")return Sm;if(b[5].id==="workspace")return Cm;if(b[5].id==="templates")return wm;if(b[5].id==="plugins")return ym;if(b[5].id==="files")return bm;if(b[5].id==="activity")return gm;if(b[5].id==="sync")return hm;if(b[5].id==="backup")return km}let v=m(l),_=v&&v(l);function h(){return l[4](l[5])}return{c(){e=f("button"),t=f("span"),n=Q("svg"),_&&_.c(),s=k(),o=f("span"),o.textContent=`${l[5].label}`,r=k(),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,g){S(b,e,g),a(e,t),a(t,n),_&&_.m(n,null),a(e,s),a(e,o),a(e,r),c||(u=A(e,"click",h),c=!0)},p(b,g){l=b,g&3&&he(e,"active",l[0]===l[5].id)},d(b){b&&C(e),_&&_.d(),c=!1,u()}}}function Tm(l){let e,t=re(l[1]),n=[];for(let s=0;sr(u.id);return l.$$set=u=>{"activeSection"in u&&t(0,n=u.activeSection),"onSelect"in u&&t(3,s=u.onSelect)},[n,o,r,s,c]}class Em extends at{constructor(e){super(),rt(this,e,jm,Tm,ot,{activeSection:0,onSelect:3})}}function Us(l){let e;return{c(){e=f("div"),e.textContent=`${p("settings.saved")}`,i(e,"class","save-notice svelte-1e2uhdh")},m(t,n){S(t,e,n)},d(t){t&&C(e)}}}function Dm(l){let e,t,n,s,o,r,c,u,m,v,_,h,b,g,y,w,T,j,N,D,E,F,M,R,O,V,K,J,q,W,Y,G,L,H=l[1]&&Us();return{c(){e=f("div"),t=f("h2"),t.textContent=`${p("settings.general")}`,n=k(),s=f("p"),s.textContent=`${p("settings.generalDesc")}`,o=k(),r=f("div"),c=f("h3"),c.textContent=`${p("settings.appearance")}`,u=k(),m=f("div"),v=f("label"),_=f("span"),_.textContent=`${p("settings.theme")}`,h=k(),b=f("select"),g=f("option"),g.textContent=`${p("settings.themeSystem")}`,y=f("option"),y.textContent=`${p("settings.themeLight")} (${p("settings.langSoon")})`,w=f("option"),w.textContent=`${p("settings.themeDark")} (${p("settings.langSoon")})`,T=k(),j=f("div"),N=f("h3"),N.textContent=`${p("settings.localization")}`,D=k(),E=f("div"),F=f("label"),M=f("span"),M.textContent=`${p("settings.language")}`,R=k(),O=f("select"),V=f("option"),V.textContent=`${p("settings.langRu")}`,K=f("option"),K.textContent=`${p("settings.langEn")} (${p("settings.langSoon")})`,J=k(),q=f("div"),H&&H.c(),W=k(),Y=f("button"),Y.textContent=`${p("settings.save")}`,i(t,"class","svelte-1e2uhdh"),i(s,"class","section-desc svelte-1e2uhdh"),i(c,"class","card-title svelte-1e2uhdh"),i(_,"class","label-text svelte-1e2uhdh"),g.__value="system",ke(g,g.__value),y.__value="light",ke(y,y.__value),y.disabled=!0,w.__value="dark",ke(w,w.__value),w.disabled=!0,l[0]===void 0&&Ut(()=>l[5].call(b)),i(m,"class","form-group svelte-1e2uhdh"),i(r,"class","settings-card svelte-1e2uhdh"),i(N,"class","card-title svelte-1e2uhdh"),i(M,"class","label-text svelte-1e2uhdh"),V.__value="ru",ke(V,V.__value),K.__value="en",ke(K,K.__value),O.disabled=!0,i(E,"class","form-group svelte-1e2uhdh"),i(j,"class","settings-card svelte-1e2uhdh"),i(Y,"class","btn btn-primary"),i(q,"class","settings-actions svelte-1e2uhdh"),i(e,"class","settings-section svelte-1e2uhdh")},m(z,U){S(z,e,U),a(e,t),a(e,n),a(e,s),a(e,o),a(e,r),a(r,c),a(r,u),a(r,m),a(m,v),a(v,_),a(v,h),a(v,b),a(b,g),a(b,y),a(b,w),Nt(b,l[0],!0),a(e,T),a(e,j),a(j,N),a(j,D),a(j,E),a(E,F),a(F,M),a(F,R),a(F,O),a(O,V),a(O,K),a(e,J),a(e,q),H&&H.m(q,null),a(q,W),a(q,Y),G||(L=[A(b,"change",l[5]),A(Y,"click",l[2])],G=!0)},p(z,[U]){U&1&&Nt(b,z[0]),z[1]?H||(H=Us(),H.c(),H.m(q,W)):H&&(H.d(1),H=null)},i:x,o:x,d(z){z&&C(e),H&&H.d(),G=!1,_e(L)}}}function Nm(l,e,t){let{appConfig:n=null}=e,{onSave:s=null}=e,o="system",r=!1;function c(){n&&t(0,o=n.theme||"system")}async function u(){n&&(t(3,n.theme=o,n),s&&await s(n),t(1,r=!0),setTimeout(()=>t(1,r=!1),2e3))}function m(){o=Dl(this),t(0,o)}return l.$$set=v=>{"appConfig"in v&&t(3,n=v.appConfig),"onSave"in v&&t(4,s=v.onSave)},l.$$.update=()=>{l.$$.dirty&8&&n&&c()},[o,r,u,n,s,m]}class Mm extends at{constructor(e){super(),rt(this,e,Nm,Dm,ot,{appConfig:3,onSave:4})}}function Bs(l){let e,t;return{c(){e=f("div"),t=P(l[1]),i(e,"class","notice svelte-1zbky3")},m(n,s){S(n,e,s),a(e,t)},p(n,s){s&2&&B(t,n[1])},d(n){n&&C(e)}}}function Im(l){let e;return{c(){e=f("p"),e.textContent=`${p("settings.noVaultInfo")}`,i(e,"class","no-data svelte-1zbky3")},m(t,n){S(t,e,n)},p:x,d(t){t&&C(e)}}}function Am(l){let e,t,n,s,o,r=l[0].path+"",c,u,m,v,_,h,b=l[0].dbPath+"",g,y,w,T=l[0].nodeCount!==void 0&&Ks(l),j=l[0].fileCount!==void 0&&Gs(l);return{c(){e=f("div"),t=f("div"),n=f("span"),n.textContent=`${p("settings.vaultPath")}`,s=k(),o=f("span"),c=P(r),u=k(),m=f("div"),v=f("span"),v.textContent="DB",_=k(),h=f("span"),g=P(b),y=k(),T&&T.c(),w=k(),j&&j.c(),i(n,"class","info-label svelte-1zbky3"),i(o,"class","info-value mono svelte-1zbky3"),i(t,"class","info-row svelte-1zbky3"),i(v,"class","info-label svelte-1zbky3"),i(h,"class","info-value mono small svelte-1zbky3"),i(m,"class","info-row svelte-1zbky3"),i(e,"class","vault-info svelte-1zbky3")},m(N,D){S(N,e,D),a(e,t),a(t,n),a(t,s),a(t,o),a(o,c),a(e,u),a(e,m),a(m,v),a(m,_),a(m,h),a(h,g),a(e,y),T&&T.m(e,null),a(e,w),j&&j.m(e,null)},p(N,D){D&1&&r!==(r=N[0].path+"")&&B(c,r),D&1&&b!==(b=N[0].dbPath+"")&&B(g,b),N[0].nodeCount!==void 0?T?T.p(N,D):(T=Ks(N),T.c(),T.m(e,w)):T&&(T.d(1),T=null),N[0].fileCount!==void 0?j?j.p(N,D):(j=Gs(N),j.c(),j.m(e,null)):j&&(j.d(1),j=null)},d(N){N&&C(e),T&&T.d(),j&&j.d()}}}function Ks(l){let e,t,n,s,o=l[0].nodeCount+"",r;return{c(){e=f("div"),t=f("span"),t.textContent="Nodes",n=k(),s=f("span"),r=P(o),i(t,"class","info-label svelte-1zbky3"),i(s,"class","info-value svelte-1zbky3"),i(e,"class","info-row svelte-1zbky3")},m(c,u){S(c,e,u),a(e,t),a(e,n),a(e,s),a(s,r)},p(c,u){u&1&&o!==(o=c[0].nodeCount+"")&&B(r,o)},d(c){c&&C(e)}}}function Gs(l){let e,t,n,s,o=l[0].fileCount+"",r;return{c(){e=f("div"),t=f("span"),t.textContent="Files",n=k(),s=f("span"),r=P(o),i(t,"class","info-label svelte-1zbky3"),i(s,"class","info-value svelte-1zbky3"),i(e,"class","info-row svelte-1zbky3")},m(c,u){S(c,e,u),a(e,t),a(e,n),a(e,s),a(s,r)},p(c,u){u&1&&o!==(o=c[0].fileCount+"")&&B(r,o)},d(c){c&&C(e)}}}function Lm(l){let e,t,n,s,o,r,c,u,m,v,_,h,b,g,y,w,T=l[1]&&Bs(l);function j(E,F){return E[0]?Am:Im}let N=j(l),D=N(l);return{c(){e=f("div"),t=f("h2"),t.textContent=`${p("settings.workspace")}`,n=k(),s=f("p"),s.textContent=`${p("settings.workspaceDesc")}`,o=k(),T&&T.c(),r=k(),c=f("div"),D.c(),u=k(),m=f("div"),v=f("button"),v.textContent=`${p("settings.openVault")}`,_=k(),h=f("button"),h.textContent=`${p("settings.changeVault")}`,b=k(),g=f("button"),g.textContent=`${p("settings.checkIntegrity")}`,i(t,"class","svelte-1zbky3"),i(s,"class","section-desc svelte-1zbky3"),i(c,"class","settings-card svelte-1zbky3"),i(v,"class","btn svelte-1zbky3"),i(h,"class","btn svelte-1zbky3"),i(g,"class","btn svelte-1zbky3"),i(m,"class","workspace-actions svelte-1zbky3"),i(e,"class","settings-section svelte-1zbky3")},m(E,F){S(E,e,F),a(e,t),a(e,n),a(e,s),a(e,o),T&&T.m(e,null),a(e,r),a(e,c),D.m(c,null),a(e,u),a(e,m),a(m,v),a(m,_),a(m,h),a(m,b),a(m,g),y||(w=[A(v,"click",l[2]),A(h,"click",l[4]),A(g,"click",l[3])],y=!0)},p(E,[F]){E[1]?T?T.p(E,F):(T=Bs(E),T.c(),T.m(e,r)):T&&(T.d(1),T=null),N===(N=j(E))&&D?D.p(E,F):(D.d(1),D=N(E),D&&(D.c(),D.m(c,null)))},i:x,o:x,d(E){E&&C(e),T&&T.d(),D.d(),y=!1,_e(w)}}}function xt(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 Fm(l,e,t){let{onRefresh:n=null}=e,s=null,o="";async function r(){try{t(0,s=await xt("GetVaultInfo"))}catch{t(0,s=null)}}r();async function c(){try{await xt("OpenVaultFolder")}catch(v){t(1,o=String(v))}}async function u(){try{const v=await xt("VaultCheck");v.healthy?t(1,o="Vault healthy"):t(1,o="Issues found: "+(v.errors||[]).join("; "))}catch(v){t(1,o=String(v))}}async function m(){try{const v=await xt("PickDirectory");if(!v)return;const _=await xt("OpenVault",v);_&&_.status==="ready"&&(t(0,s=await xt("GetVaultInfo")),n&&n())}catch(v){t(1,o=String(v))}}return l.$$set=v=>{"onRefresh"in v&&t(5,n=v.onRefresh)},[s,o,c,u,m,n]}class Pm extends at{constructor(e){super(),rt(this,e,Fm,Lm,ot,{onRefresh:5})}}function Js(l,e,t){const n=l.slice();return n[6]=e[t],n}function Rm(l){let e,t=re(l[0]),n=[];for(let s=0;sc(m);return l.$$set=m=>{"onRefresh"in m&&t(3,n=m.onRefresh)},[s,o,c,n,u]}class Hm extends at{constructor(e){super(),rt(this,e,Wm,Vm,ot,{onRefresh:3})}}function Um(l){let e,t,n,s,o,r,c,u;return{c(){e=f("div"),t=f("h2"),t.textContent=`${p("settings.plugins")}`,n=k(),s=f("p"),s.textContent=`${p("settings.noPlugins")}`,o=k(),r=f("button"),r.textContent=`${p("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(m,v){S(m,e,v),a(e,t),a(e,n),a(e,s),a(e,o),a(e,r),c||(u=A(r,"click",Km),c=!0)},p:x,i:x,o:x,d(m){m&&C(e),c=!1,u()}}}function Bm(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 Km(){try{await Bm("OpenPluginsFolder")}catch{}}class Gm extends at{constructor(e){super(),rt(this,e,null,Um,ot,{})}}function Jm(l){let e,t,n,s;return{c(){e=f("div"),t=f("h2"),t.textContent=`${p("settings.files")}`,n=k(),s=f("p"),s.textContent=`${p("settings.filesStub")}`,i(t,"class","svelte-19bo7bn"),i(s,"class","section-desc svelte-19bo7bn"),i(e,"class","settings-section svelte-19bo7bn")},m(o,r){S(o,e,r),a(e,t),a(e,n),a(e,s)},p:x,i:x,o:x,d(o){o&&C(e)}}}class qm extends at{constructor(e){super(),rt(this,e,null,Jm,ot,{})}}function Ym(l){let e,t,n,s;return{c(){e=f("div"),t=f("h2"),t.textContent=`${p("settings.activity")}`,n=k(),s=f("p"),s.textContent=`${p("settings.activityStub")}`,i(t,"class","svelte-19bo7bn"),i(s,"class","section-desc svelte-19bo7bn"),i(e,"class","settings-section svelte-19bo7bn")},m(o,r){S(o,e,r),a(e,t),a(e,n),a(e,s)},p:x,i:x,o:x,d(o){o&&C(e)}}}class Qm extends at{constructor(e){super(),rt(this,e,null,Ym,ot,{})}}function Qs(l){let e,t;return{c(){e=f("div"),t=P(l[2]),i(e,"class","error-msg svelte-1fx1e1e")},m(n,s){S(n,e,s),a(e,t)},p(n,s){s[0]&4&&B(t,n[2])},d(n){n&&C(e)}}}function Xs(l){let e,t;return{c(){e=f("div"),t=P(l[3]),i(e,"class","result-msg svelte-1fx1e1e"),he(e,"warning",l[4]==="warning")},m(n,s){S(n,e,s),a(e,t)},p(n,s){s[0]&8&&B(t,n[3]),s[0]&16&&he(e,"warning",n[4]==="warning")},d(n){n&&C(e)}}}function Xm(l){let e,t,n,s,o,r,c,u,m,v,_,h,b,g,y,w,T,j,N,D,E,F,M=p("settings.checkConnection")+"",R,O,V,K,J=p("common.connect")+"",q,W,Y,G,L,H=l[11]!==null&&Zs(l);return{c(){e=f("div"),t=f("div"),n=f("div"),s=f("label"),o=f("span"),o.textContent=`${p("settings.serverUrl")}`,r=k(),c=f("input"),u=k(),m=f("div"),v=f("label"),_=f("span"),_.textContent=`${p("sync.username")}`,h=k(),b=f("input"),g=k(),y=f("div"),w=f("label"),T=f("span"),T.textContent=`${p("sync.password")}`,j=k(),N=f("input"),D=k(),E=f("div"),F=f("button"),R=P(M),V=k(),K=f("button"),q=P(J),Y=k(),H&&H.c(),i(o,"class","label-text"),i(c,"type","text"),i(c,"placeholder","https://example.com"),i(n,"class","form-group svelte-1fx1e1e"),i(_,"class","label-text"),i(b,"type","text"),i(m,"class","form-group svelte-1fx1e1e"),i(T,"class","label-text"),i(N,"type","password"),i(y,"class","form-group svelte-1fx1e1e"),i(F,"class","btn"),F.disabled=O=l[1]||!l[5],i(K,"class","btn btn-primary"),K.disabled=W=l[1]||!l[5]||!l[6]||!l[7],i(E,"class","sync-setup-actions svelte-1fx1e1e"),i(t,"class","sync-setup svelte-1fx1e1e"),i(e,"class","settings-card svelte-1fx1e1e")},m(z,U){S(z,e,U),a(e,t),a(t,n),a(n,s),a(s,o),a(s,r),a(s,c),ke(c,l[5]),a(t,u),a(t,m),a(m,v),a(v,_),a(v,h),a(v,b),ke(b,l[6]),a(t,g),a(t,y),a(y,w),a(w,T),a(w,j),a(w,N),ke(N,l[7]),a(t,D),a(t,E),a(E,F),a(F,R),a(E,V),a(E,K),a(K,q),a(t,Y),H&&H.m(t,null),G||(L=[A(c,"input",l[23]),A(b,"input",l[24]),A(N,"input",l[25]),A(F,"click",l[12]),A(K,"click",l[13])],G=!0)},p(z,U){U[0]&32&&c.value!==z[5]&&ke(c,z[5]),U[0]&64&&b.value!==z[6]&&ke(b,z[6]),U[0]&128&&N.value!==z[7]&&ke(N,z[7]),U[0]&34&&O!==(O=z[1]||!z[5])&&(F.disabled=O),U[0]&226&&W!==(W=z[1]||!z[5]||!z[6]||!z[7])&&(K.disabled=W),z[11]!==null?H?H.p(z,U):(H=Zs(z),H.c(),H.m(t,null)):H&&(H.d(1),H=null)},d(z){z&&C(e),H&&H.d(),G=!1,_e(L)}}}function Zm(l){let e,t,n,s,o,r,c=l[20](l[0].lastStatus)+"",u,m,v,_,h,b,g,y,w,T=p("settings.syncNow")+"",j,N,D,E=p("settings.disconnect")+"",F,M,R,O=p("settings.resetKey")+"",V,K,J,q,W,Y,G,L,H,z,U,$,de=l[0].serverUrl&&xs(l),ie=l[0].deviceName&&$s(l),ne=l[0].deviceId&&ei(l),le=l[0].lastSyncAt&&ti(l),oe=l[0].lastError&&li(l);return{c(){e=f("div"),t=f("div"),n=f("div"),s=f("span"),s.textContent=`${p("settings.status")}`,o=k(),r=f("span"),u=P(c),m=k(),de&&de.c(),v=k(),ie&&ie.c(),_=k(),ne&&ne.c(),h=k(),le&&le.c(),b=k(),oe&&oe.c(),g=k(),y=f("div"),w=f("button"),j=P(T),N=k(),D=f("button"),F=P(E),M=k(),R=f("button"),V=P(O),K=k(),J=f("div"),q=f("label"),W=f("span"),W.textContent=`${p("sync.interval")}`,Y=k(),G=f("div"),L=f("input"),H=k(),z=f("button"),z.textContent=`${p("common.save")}`,i(s,"class","info-label svelte-1fx1e1e"),i(r,"class","info-value svelte-1fx1e1e"),he(r,"status-ok",l[0].lastStatus==="connected"),he(r,"status-err",l[0].lastStatus==="error"||l[0].lastStatus==="revoked"),i(n,"class","info-row svelte-1fx1e1e"),i(t,"class","sync-info svelte-1fx1e1e"),i(e,"class","settings-card svelte-1fx1e1e"),i(w,"class","btn btn-primary"),w.disabled=l[1],i(D,"class","btn"),D.disabled=l[1],i(R,"class","btn"),R.disabled=l[1],i(y,"class","sync-actions svelte-1fx1e1e"),i(W,"class","label-text"),i(L,"type","number"),i(L,"min","0"),i(L,"placeholder","0"),i(L,"class","svelte-1fx1e1e"),i(z,"class","btn btn-sm"),i(G,"class","interval-row svelte-1fx1e1e"),i(J,"class","sync-interval svelte-1fx1e1e")},m(ue,ge){S(ue,e,ge),a(e,t),a(t,n),a(n,s),a(n,o),a(n,r),a(r,u),a(t,m),de&&de.m(t,null),a(t,v),ie&&ie.m(t,null),a(t,_),ne&&ne.m(t,null),a(t,h),le&&le.m(t,null),a(t,b),oe&&oe.m(t,null),S(ue,g,ge),S(ue,y,ge),a(y,w),a(w,j),a(y,N),a(y,D),a(D,F),a(y,M),a(y,R),a(R,V),S(ue,K,ge),S(ue,J,ge),a(J,q),a(q,W),a(q,Y),a(q,G),a(G,L),ke(L,l[8]),a(G,H),a(G,z),U||($=[A(w,"click",l[14]),A(D,"click",l[16]),A(R,"click",l[18]),A(L,"input",l[22]),A(z,"click",l[15])],U=!0)},p(ue,ge){ge[0]&1&&c!==(c=ue[20](ue[0].lastStatus)+"")&&B(u,c),ge[0]&1&&he(r,"status-ok",ue[0].lastStatus==="connected"),ge[0]&1&&he(r,"status-err",ue[0].lastStatus==="error"||ue[0].lastStatus==="revoked"),ue[0].serverUrl?de?de.p(ue,ge):(de=xs(ue),de.c(),de.m(t,v)):de&&(de.d(1),de=null),ue[0].deviceName?ie?ie.p(ue,ge):(ie=$s(ue),ie.c(),ie.m(t,_)):ie&&(ie.d(1),ie=null),ue[0].deviceId?ne?ne.p(ue,ge):(ne=ei(ue),ne.c(),ne.m(t,h)):ne&&(ne.d(1),ne=null),ue[0].lastSyncAt?le?le.p(ue,ge):(le=ti(ue),le.c(),le.m(t,b)):le&&(le.d(1),le=null),ue[0].lastError?oe?oe.p(ue,ge):(oe=li(ue),oe.c(),oe.m(t,null)):oe&&(oe.d(1),oe=null),ge[0]&2&&(w.disabled=ue[1]),ge[0]&2&&(D.disabled=ue[1]),ge[0]&2&&(R.disabled=ue[1]),ge[0]&256&&Il(L.value)!==ue[8]&&ke(L,ue[8])},d(ue){ue&&(C(e),C(g),C(y),C(K),C(J)),de&&de.d(),ie&&ie.d(),ne&&ne.d(),le&&le.d(),oe&&oe.d(),U=!1,_e($)}}}function Zs(l){let e,t=(l[11]?p("common.test")+" OK":p("error.generic"))+"",n;return{c(){e=f("div"),n=P(t),i(e,"class","connection-result svelte-1fx1e1e"),he(e,"ok",l[11]),he(e,"fail",!l[11])},m(s,o){S(s,e,o),a(e,n)},p(s,o){o[0]&2048&&t!==(t=(s[11]?p("common.test")+" OK":p("error.generic"))+"")&&B(n,t),o[0]&2048&&he(e,"ok",s[11]),o[0]&2048&&he(e,"fail",!s[11])},d(s){s&&C(e)}}}function xs(l){let e,t,n,s,o=l[0].serverUrl+"",r;return{c(){e=f("div"),t=f("span"),t.textContent=`${p("settings.serverUrl")}`,n=k(),s=f("span"),r=P(o),i(t,"class","info-label svelte-1fx1e1e"),i(s,"class","info-value mono svelte-1fx1e1e"),i(e,"class","info-row svelte-1fx1e1e")},m(c,u){S(c,e,u),a(e,t),a(e,n),a(e,s),a(s,r)},p(c,u){u[0]&1&&o!==(o=c[0].serverUrl+"")&&B(r,o)},d(c){c&&C(e)}}}function $s(l){let e,t,n,s,o=l[0].deviceName+"",r;return{c(){e=f("div"),t=f("span"),t.textContent=`${p("settings.deviceName")}`,n=k(),s=f("span"),r=P(o),i(t,"class","info-label svelte-1fx1e1e"),i(s,"class","info-value svelte-1fx1e1e"),i(e,"class","info-row svelte-1fx1e1e")},m(c,u){S(c,e,u),a(e,t),a(e,n),a(e,s),a(s,r)},p(c,u){u[0]&1&&o!==(o=c[0].deviceName+"")&&B(r,o)},d(c){c&&C(e)}}}function ei(l){let e,t,n,s,o=l[0].deviceId+"",r;return{c(){e=f("div"),t=f("span"),t.textContent=`${p("settings.deviceId")}`,n=k(),s=f("span"),r=P(o),i(t,"class","info-label svelte-1fx1e1e"),i(s,"class","info-value mono svelte-1fx1e1e"),i(e,"class","info-row svelte-1fx1e1e")},m(c,u){S(c,e,u),a(e,t),a(e,n),a(e,s),a(s,r)},p(c,u){u[0]&1&&o!==(o=c[0].deviceId+"")&&B(r,o)},d(c){c&&C(e)}}}function ti(l){let e,t,n,s,o=l[0].lastSyncAt+"",r;return{c(){e=f("div"),t=f("span"),t.textContent=`${p("settings.lastSync")}`,n=k(),s=f("span"),r=P(o),i(t,"class","info-label svelte-1fx1e1e"),i(s,"class","info-value svelte-1fx1e1e"),i(e,"class","info-row svelte-1fx1e1e")},m(c,u){S(c,e,u),a(e,t),a(e,n),a(e,s),a(s,r)},p(c,u){u[0]&1&&o!==(o=c[0].lastSyncAt+"")&&B(r,o)},d(c){c&&C(e)}}}function li(l){let e,t,n,s,o=l[0].lastError+"",r;return{c(){e=f("div"),t=f("span"),t.textContent=`${p("settings.lastError")}`,n=k(),s=f("span"),r=P(o),i(t,"class","info-label svelte-1fx1e1e"),i(s,"class","info-value error svelte-1fx1e1e"),i(e,"class","info-row svelte-1fx1e1e")},m(c,u){S(c,e,u),a(e,t),a(e,n),a(e,s),a(s,r)},p(c,u){u[0]&1&&o!==(o=c[0].lastError+"")&&B(r,o)},d(c){c&&C(e)}}}function ni(l){let e,t,n,s,o,r,c,u,m,v,_,h;return{c(){e=f("button"),t=f("div"),n=f("h3"),n.textContent=`${p("settings.confirmDisconnect")}`,s=k(),o=f("p"),o.textContent=`${p("settings.confirmDisconnectDesc")}`,r=k(),c=f("div"),u=f("button"),u.textContent=`${p("common.disconnect")}`,m=k(),v=f("button"),v.textContent=`${p("common.cancel")}`,i(n,"class","svelte-1fx1e1e"),i(o,"class","modal-desc svelte-1fx1e1e"),i(u,"class","btn btn-danger"),i(v,"class","btn"),i(c,"class","modal-actions svelte-1fx1e1e"),i(t,"class","modal svelte-1fx1e1e"),i(e,"class","modal-overlay svelte-1fx1e1e")},m(b,g){S(b,e,g),a(e,t),a(t,n),a(t,s),a(t,o),a(t,r),a(t,c),a(c,u),a(c,m),a(c,v),_||(h=[A(u,"click",l[17]),A(v,"click",l[26]),A(e,"click",l[27])],_=!0)},p:x,d(b){b&&C(e),_=!1,_e(h)}}}function si(l){let e,t,n,s,o,r,c,u,m,v,_,h;return{c(){e=f("button"),t=f("div"),n=f("h3"),n.textContent=`${p("settings.confirmResetKey")}`,s=k(),o=f("p"),o.textContent=`${p("settings.confirmResetKeyDesc")}`,r=k(),c=f("div"),u=f("button"),u.textContent=`${p("settings.resetKey")}`,m=k(),v=f("button"),v.textContent=`${p("common.cancel")}`,i(n,"class","svelte-1fx1e1e"),i(o,"class","modal-desc svelte-1fx1e1e"),i(u,"class","btn btn-danger"),i(v,"class","btn"),i(c,"class","modal-actions svelte-1fx1e1e"),i(t,"class","modal svelte-1fx1e1e"),i(e,"class","modal-overlay svelte-1fx1e1e")},m(b,g){S(b,e,g),a(e,t),a(t,n),a(t,s),a(t,o),a(t,r),a(t,c),a(c,u),a(c,m),a(c,v),_||(h=[A(u,"click",l[19]),A(v,"click",l[28]),A(e,"click",l[29])],_=!0)},p:x,d(b){b&&C(e),_=!1,_e(h)}}}function xm(l){let e,t,n,s,o,r,c,u,m,v,_=l[2]&&Qs(l),h=l[3]&&!l[2]&&Xs(l);function b(j,N){return j[0]&&j[0].enabled?Zm:Xm}let g=b(l),y=g(l),w=l[9]&&ni(l),T=l[10]&&si(l);return{c(){e=f("div"),t=f("h2"),t.textContent=`${p("settings.sync")}`,n=k(),s=f("p"),s.textContent=`${p("settings.syncDesc")}`,o=k(),_&&_.c(),r=k(),h&&h.c(),c=k(),y.c(),u=k(),w&&w.c(),m=k(),T&&T.c(),v=vt(),i(t,"class","svelte-1fx1e1e"),i(s,"class","section-desc svelte-1fx1e1e"),i(e,"class","settings-section svelte-1fx1e1e")},m(j,N){S(j,e,N),a(e,t),a(e,n),a(e,s),a(e,o),_&&_.m(e,null),a(e,r),h&&h.m(e,null),a(e,c),y.m(e,null),S(j,u,N),w&&w.m(j,N),S(j,m,N),T&&T.m(j,N),S(j,v,N)},p(j,N){j[2]?_?_.p(j,N):(_=Qs(j),_.c(),_.m(e,r)):_&&(_.d(1),_=null),j[3]&&!j[2]?h?h.p(j,N):(h=Xs(j),h.c(),h.m(e,c)):h&&(h.d(1),h=null),g===(g=b(j))&&y?y.p(j,N):(y.d(1),y=g(j),y&&(y.c(),y.m(e,null))),j[9]?w?w.p(j,N):(w=ni(j),w.c(),w.m(m.parentNode,m)):w&&(w.d(1),w=null),j[10]?T?T.p(j,N):(T=si(j),T.c(),T.m(v.parentNode,v)):T&&(T.d(1),T=null)},i:x,o:x,d(j){j&&(C(e),C(u),C(m),C(v)),_&&_.d(),h&&h.d(),y.d(),w&&w.d(j),T&&T.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 $m(l,e,t){let{onRefresh:n=null}=e,s=null,o=!1,r="",c="",u="",m="",v="",_="",h=0,b=!1,g=!1,y=null;async function w(){try{t(0,s=await Wt("GetSyncSettings")),s&&(t(5,m=s.serverUrl||""),t(8,h=s.syncInterval||0))}catch{t(0,s=null)}}w();async function T(){t(1,o=!0),t(2,r=""),t(4,u=""),t(11,y=null);try{await Wt("SyncTestConnection",m,v,_),t(11,y=!0),t(3,c="connection ok")}catch(z){t(11,y=!1),t(3,c="connection failed: "+String(z))}t(1,o=!1)}async function j(){t(1,o=!0),t(2,r=""),t(4,u="");try{await Wt("SyncConfigure",m,v,_),t(3,c="configured"),t(6,v=""),t(7,_=""),await w(),n&&n()}catch(z){t(2,r=String(z))}t(1,o=!1)}function N(z){const U=Array.isArray(z==null?void 0:z.conflicts)?z.conflicts:[],$=Array.isArray(z==null?void 0:z.applyErrors)?z.applyErrors:[],de=[];return U.length>0&&de.push(p("sync.conflictsCount",{count:U.length})),$.length>0&&de.push(p("sync.applyErrorsCount",{count:$.length})),de.join(" · ")}async function D(){t(1,o=!0),t(2,r=""),t(4,u="");try{const z=await Wt("SyncNow"),U=p("sync.pushedPulled",{pushed:(z==null?void 0:z.pushed)||0,pulled:(z==null?void 0:z.pulled)||0}),$=N(z);t(3,c=$?U+" · "+$:U),t(4,u=$?"warning":""),await w(),n&&n()}catch(z){t(2,r=String(z))}t(1,o=!1)}async function E(){try{await Wt("SyncSetInterval",h),t(3,c=p("sync.settingsSaved")),t(4,u="")}catch(z){t(2,r=String(z))}}function F(){t(9,b=!0)}async function M(){t(9,b=!1),t(1,o=!0),t(4,u="");try{await Wt("SyncDisconnect"),t(3,c="disconnected"),await w(),n&&n()}catch(z){t(2,r=String(z))}t(1,o=!1)}function R(){t(10,g=!0)}async function O(){t(10,g=!1),t(1,o=!0),t(4,u="");try{await Wt("ResetSyncKey"),t(3,c="key reset"),await w(),n&&n()}catch(z){t(2,r=String(z))}t(1,o=!1)}function V(z){return z?{connected:p("settings.connected"),disconnected:p("settings.disconnected"),disabled:p("settings.notConfigured"),error:p("settings.error"),revoked:p("settings.revoked")}[z]||z:p("settings.notConfigured")}function K(){h=Il(this.value),t(8,h)}function J(){m=this.value,t(5,m)}function q(){v=this.value,t(6,v)}function W(){_=this.value,t(7,_)}const Y=()=>t(9,b=!1),G=()=>t(9,b=!1),L=()=>t(10,g=!1),H=()=>t(10,g=!1);return l.$$set=z=>{"onRefresh"in z&&t(21,n=z.onRefresh)},[s,o,r,c,u,m,v,_,h,b,g,y,T,j,D,E,F,M,R,O,V,n,K,J,q,W,Y,G,L,H]}class e1 extends at{constructor(e){super(),rt(this,e,$m,xm,ot,{onRefresh:21},null,[-1,-1])}}function t1(l){let e,t,n,s;return{c(){e=f("div"),t=f("h2"),t.textContent=`${p("settings.backup")}`,n=k(),s=f("p"),s.textContent=`${p("settings.backupStub")}`,i(t,"class","svelte-19bo7bn"),i(s,"class","section-desc svelte-19bo7bn"),i(e,"class","settings-section svelte-19bo7bn")},m(o,r){S(o,e,r),a(e,t),a(e,n),a(e,s)},p:x,i:x,o:x,d(o){o&&C(e)}}}class l1 extends at{constructor(e){super(),rt(this,e,null,t1,ot,{})}}const{window:n1}=vn;function s1(l){let e,t;return e=new l1({}),{c(){Xe(e.$$.fragment)},m(n,s){Je(e,n,s),t=!0},p:x,i(n){t||(ce(e.$$.fragment,n),t=!0)},o(n){me(e.$$.fragment,n),t=!1},d(n){qe(e,n)}}}function i1(l){let e,t;return e=new e1({props:{onRefresh:l[6]}}),{c(){Xe(e.$$.fragment)},m(n,s){Je(e,n,s),t=!0},p:x,i(n){t||(ce(e.$$.fragment,n),t=!0)},o(n){me(e.$$.fragment,n),t=!1},d(n){qe(e,n)}}}function o1(l){let e,t;return e=new Qm({}),{c(){Xe(e.$$.fragment)},m(n,s){Je(e,n,s),t=!0},p:x,i(n){t||(ce(e.$$.fragment,n),t=!0)},o(n){me(e.$$.fragment,n),t=!1},d(n){qe(e,n)}}}function r1(l){let e,t;return e=new qm({}),{c(){Xe(e.$$.fragment)},m(n,s){Je(e,n,s),t=!0},p:x,i(n){t||(ce(e.$$.fragment,n),t=!0)},o(n){me(e.$$.fragment,n),t=!1},d(n){qe(e,n)}}}function a1(l){let e,t;return e=new Gm({}),{c(){Xe(e.$$.fragment)},m(n,s){Je(e,n,s),t=!0},p:x,i(n){t||(ce(e.$$.fragment,n),t=!0)},o(n){me(e.$$.fragment,n),t=!1},d(n){qe(e,n)}}}function c1(l){let e,t;return e=new Hm({props:{onRefresh:l[2]}}),{c(){Xe(e.$$.fragment)},m(n,s){Je(e,n,s),t=!0},p:x,i(n){t||(ce(e.$$.fragment,n),t=!0)},o(n){me(e.$$.fragment,n),t=!1},d(n){qe(e,n)}}}function u1(l){let e,t;return e=new Pm({props:{onRefresh:l[2]}}),{c(){Xe(e.$$.fragment)},m(n,s){Je(e,n,s),t=!0},p:x,i(n){t||(ce(e.$$.fragment,n),t=!0)},o(n){me(e.$$.fragment,n),t=!1},d(n){qe(e,n)}}}function f1(l){let e,t;return e=new Mm({props:{appConfig:l[1],onSave:l[5]}}),{c(){Xe(e.$$.fragment)},m(n,s){Je(e,n,s),t=!0},p(n,s){const o={};s&2&&(o.appConfig=n[1]),e.$set(o)},i(n){t||(ce(e.$$.fragment,n),t=!0)},o(n){me(e.$$.fragment,n),t=!1},d(n){qe(e,n)}}}function d1(l){let e,t,n,s,o,r,c,u,m,v,_,h,b,g,y,w;m=new Em({props:{activeSection:l[0],onSelect:l[3]}});const T=[f1,u1,c1,a1,r1,o1,i1,s1],j=[];function N(D,E){return D[0]==="general"?0:D[0]==="workspace"?1:D[0]==="templates"?2:D[0]==="plugins"?3:D[0]==="files"?4:D[0]==="activity"?5:D[0]==="sync"?6:D[0]==="backup"?7:-1}return~(h=N(l))&&(b=j[h]=T[h](l)),{c(){e=f("button"),t=f("div"),n=f("div"),s=f("h2"),s.textContent=`${p("settings.title")}`,o=k(),r=f("button"),r.innerHTML='',c=k(),u=f("div"),Xe(m.$$.fragment),v=k(),_=f("div"),b&&b.c(),i(s,"class","svelte-zf2zsc"),i(r,"class","close-btn svelte-zf2zsc"),i(r,"title",p("settings.close")),i(n,"class","settings-header svelte-zf2zsc"),i(_,"class","settings-content svelte-zf2zsc"),i(u,"class","settings-body svelte-zf2zsc"),i(t,"class","settings-window svelte-zf2zsc"),i(e,"class","settings-overlay svelte-zf2zsc")},m(D,E){S(D,e,E),a(e,t),a(t,n),a(n,s),a(n,o),a(n,r),a(t,c),a(t,u),Je(m,u,null),a(u,v),a(u,_),~h&&j[h].m(_,null),g=!0,y||(w=[A(n1,"keydown",l[7]),A(r,"click",l[4]),A(e,"click",bt(l[4]))],y=!0)},p(D,[E]){const F={};E&1&&(F.activeSection=D[0]),m.$set(F);let M=h;h=N(D),h===M?~h&&j[h].p(D,E):(b&&(pt(),me(j[M],1,1,()=>{j[M]=null}),_t()),~h?(b=j[h],b?b.p(D,E):(b=j[h]=T[h](D),b.c()),ce(b,1),b.m(_,null)):b=null)},i(D){g||(ce(m.$$.fragment,D),ce(b),g=!0)},o(D){me(m.$$.fragment,D),me(b),g=!1},d(D){D&&C(e),qe(m),~h&&j[h].d(),y=!1,_e(w)}}}function ii(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 m1(l,e,t){let{onClose:n=null}=e,{onSyncRefresh:s=null}=e,{initialSection:o="general"}=e,r=o,c=null;async function u(){try{t(1,c=await ii("GetAppConfig"))}catch{t(1,c=null)}}u();function m(g){t(0,r=g)}function v(){n&&n()}async function _(g){try{await ii("SaveAppConfig",g),t(1,c=g)}catch(y){console.error(y)}}function h(){s&&s()}function b(g){g.key==="Escape"&&v()}return l.$$set=g=>{"onClose"in g&&t(8,n=g.onClose),"onSyncRefresh"in g&&t(9,s=g.onSyncRefresh),"initialSection"in g&&t(10,o=g.initialSection)},[r,c,u,m,v,_,h,b,n,s,o]}class p1 extends at{constructor(e){super(),rt(this,e,m1,d1,ot,{onClose:8,onSyncRefresh:9,initialSection:10})}}function _1(l){let e,t,n,s,o,r,c,u;return{c(){e=f("div"),t=f("span"),n=k(),s=f("span"),s.textContent=`${p("sync.status.disabled")}`,o=k(),r=f("button"),r.textContent=`${p("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(m,v){S(m,e,v),a(e,t),a(e,n),a(e,s),a(e,o),a(e,r),c||(u=A(r,"click",function(){Mt(l[5])&&l[5].apply(this,arguments)}),c=!0)},p(m,v){l=m},d(m){m&&C(e),c=!1,u()}}}function v1(l){let e,t,n,s,o,r=l[7](l[0])+"",c,u,m,v,_,h=(l[1]?p("sync.running"):p("sync.run"))+"",b,g,y,w,T,j,N,D=l[0].unpushedOps>0&&oi(l),E=l[2]&&ri(l);return{c(){e=f("div"),t=f("span"),s=k(),o=f("span"),c=P(r),u=k(),D&&D.c(),m=k(),v=f("div"),_=f("button"),b=P(h),g=k(),y=f("button"),y.textContent=`${p("sync.details")}`,w=k(),E&&E.c(),T=vt(),i(t,"class",n="sync-dot "+l[6](l[0])+" svelte-1rxbx0"),i(o,"class","sync-label svelte-1rxbx0"),i(_,"class","btn btn-xs svelte-1rxbx0"),_.disabled=l[1],i(y,"class","btn btn-xs btn-link svelte-1rxbx0"),i(v,"class","sync-actions-row svelte-1rxbx0"),i(e,"class","sync-status-row svelte-1rxbx0")},m(F,M){S(F,e,M),a(e,t),a(e,s),a(e,o),a(o,c),a(e,u),D&&D.m(e,null),a(e,m),a(e,v),a(v,_),a(_,b),a(v,g),a(v,y),S(F,w,M),E&&E.m(F,M),S(F,T,M),j||(N=[A(_,"click",function(){Mt(l[4])&&l[4].apply(this,arguments)}),A(y,"click",function(){Mt(l[5])&&l[5].apply(this,arguments)})],j=!0)},p(F,M){l=F,M&1&&n!==(n="sync-dot "+l[6](l[0])+" svelte-1rxbx0")&&i(t,"class",n),M&1&&r!==(r=l[7](l[0])+"")&&B(c,r),l[0].unpushedOps>0?D?D.p(l,M):(D=oi(l),D.c(),D.m(e,m)):D&&(D.d(1),D=null),M&2&&h!==(h=(l[1]?p("sync.running"):p("sync.run"))+"")&&B(b,h),M&2&&(_.disabled=l[1]),l[2]?E?E.p(l,M):(E=ri(l),E.c(),E.m(T.parentNode,T)):E&&(E.d(1),E=null)},d(F){F&&(C(e),C(w),C(T)),D&&D.d(),E&&E.d(F),j=!1,_e(N)}}}function oi(l){let e,t=l[0].unpushedOps+"",n,s,o=p("sync.changes")+"",r;return{c(){e=f("span"),n=P(t),s=k(),r=P(o),i(e,"class","sync-count svelte-1rxbx0")},m(c,u){S(c,e,u),a(e,n),a(e,s),a(e,r)},p(c,u){u&1&&t!==(t=c[0].unpushedOps+"")&&B(n,t)},d(c){c&&C(e)}}}function ri(l){let e,t,n;return{c(){e=f("div"),t=P(l[2]),i(e,"class",n=bs(l[3]==="warning"?"sync-message sync-message-warning":"sync-message")+" svelte-1rxbx0")},m(s,o){S(s,e,o),a(e,t)},p(s,o){o&4&&B(t,s[2]),o&8&&n!==(n=bs(s[3]==="warning"?"sync-message sync-message-warning":"sync-message")+" svelte-1rxbx0")&&i(e,"class",n)},d(s){s&&C(e)}}}function k1(l){let e;function t(o,r){var c;return(c=o[0])!=null&&c.configured?v1:_1}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){S(o,e,r),s.m(e,null)},p(o,[r]){n===(n=t(o))&&s?s.p(o,r):(s.d(1),s=n(o),s&&(s.c(),s.m(e,null)))},i:x,o:x,d(o){o&&C(e),s.d()}}}function h1(l,e,t){let{syncStatus:n=null}=e,{syncLoading:s=!1}=e,{syncMessage:o=""}=e,{syncMessageKind:r=""}=e,{onSync:c=null}=e,{onOpenSettings:u=null}=e;function m(_){return!_||!_.configured?"dot-disabled":s?"dot-syncing":_.revoked?"dot-disabled":_.connected?"dot-connected":_.configured?"dot-warning":"dot-disabled"}function v(_){return!_||!_.configured?p("sync.status.disabled"):s?p("sync.status.syncing"):_.revoked?p("sync.status.error"):_.connected?p("sync.status.connected"):p("sync.status.disconnected")}return l.$$set=_=>{"syncStatus"in _&&t(0,n=_.syncStatus),"syncLoading"in _&&t(1,s=_.syncLoading),"syncMessage"in _&&t(2,o=_.syncMessage),"syncMessageKind"in _&&t(3,r=_.syncMessageKind),"onSync"in _&&t(4,c=_.onSync),"onOpenSettings"in _&&t(5,u=_.onOpenSettings)},[n,s,o,r,c,u,m,v]}class g1 extends at{constructor(e){super(),rt(this,e,h1,k1,ot,{syncStatus:0,syncLoading:1,syncMessage:2,syncMessageKind:3,onSync:4,onOpenSettings:5})}}const{Boolean:oa}=vn;function ai(l,e,t){const n=l.slice();return n[403]=e[t],n}function ci(l,e,t){const n=l.slice();return n[406]=e[t],n}function ui(l,e,t){const n=l.slice();return n[409]=e[t],n}function fi(l,e,t){const n=l.slice();return n[409]=e[t],n}function di(l,e,t){const n=l.slice();return n[435]=e[t],n}function mi(l,e,t){const n=l.slice();return n[435]=e[t],n}function pi(l,e,t){const n=l.slice();return n[474]=e[t],n}function _i(l,e,t){const n=l.slice();return n[435]=e[t],n}function vi(l,e,t){const n=l.slice();return n[438]=e[t],n[479]=e,n[480]=t,n}function ki(l,e,t){const n=l.slice();return n[435]=e[t],n}function hi(l,e,t){const n=l.slice();return n[456]=e[t],n}function gi(l,e,t){const n=l.slice();return n[435]=e[t],n}function bi(l,e,t){const n=l.slice();return n[461]=e[t],n}function yi(l,e,t){const n=l.slice();return n[461]=e[t],n}function wi(l,e,t){const n=l.slice();return n[438]=e[t],n[466]=e,n[467]=t,n}function Ci(l,e,t){const n=l.slice();return n[435]=e[t],n}function Si(l,e,t){const n=l.slice();return n[456]=e[t],n}function Ti(l,e,t){const n=l.slice();return n[450]=e[t],n}function ji(l,e,t){const n=l.slice();return n[453]=e[t],n}function Ei(l,e,t){const n=l.slice();return n[422]=e[t],n}function Di(l,e,t){const n=l.slice();return n[435]=e[t],n}function Ni(l,e,t){const n=l.slice();return n[414]=e[t],n}function Mi(l,e,t){const n=l.slice();return n[435]=e[t],n}function Ii(l,e,t){const n=l.slice();return n[438]=e[t],n[439]=e,n[440]=t,n}function Ai(l,e,t){const n=l.slice();return n[435]=e[t],n}function Li(l,e,t){const n=l.slice();return n[430]=e[t],n}function Fi(l,e,t){const n=l.slice();return n[427]=e[t],n}function Pi(l,e,t){const n=l.slice();return n[422]=e[t],n}function Ri(l,e,t){const n=l.slice();return n[422]=e[t],n}function zi(l,e,t){const n=l.slice();return n[417]=e[t],n}function Oi(l,e,t){const n=l.slice();return n[414]=e[t],n}function Vi(l,e,t){const n=l.slice();return n[417]=e[t],n}function Wi(l,e,t){const n=l.slice();return n[445]=e[t],n}function Hi(l,e,t){const n=l.slice();return n[485]=e[t],n}function Ui(l,e,t){const n=l.slice();return n[488]=e[t],n}function b1(l){let e,t,n,s,o,r,c,u,m,v,_,h,b,g,y,w,T,j,N,D,E,F,M,R,O,V,K,J,q,W,Y,G,L,H,z,U,$,de,ie,ne,le,oe,ue,ge,Ue,Ne,X,ee,fe,be,ve,Me,Ke,st,ct,Te=l[82]&&Bi(l),Pe=re(l[4]),Ce=[];for(let se=0;se0?0:1}E=He(l),F=Ie[E]=Ve[E](l),O=new g1({props:{syncStatus:l[97],syncLoading:l[98],syncMessage:l[99],syncMessageKind:l[100],onSync:l[204],onOpenSettings:l[209]}});function Re(se,we){return se[26]?E1:se[25]?j1:T1}let Oe=Re(l),je=Oe(l),ye=l[24]&&qi(l);const Fe=[P1,F1,L1,A1,I1,M1,N1,D1],We=[];function $e(se,we){return se[29]?0:se[26]?1:se[25]==="inbox"?2:se[25]==="trash"?3:se[25]==="journal"?4:se[25]==="today"&&se[7]?5:se[25]==="activity"?6:7}ne=$e(l),le=We[ne]=Fe[ne](l);let Se=l[54]&&kr(l),pe=l[58].visible&&br(l),Ee=l[32]&&Sr(l),Ye=l[61]&&Tr(l),lt=l[68]&&l[67]&&Er(l),xe=l[89]&&Nr(l),Ge=l[92]&&Ir(l),Qe=l[48]&&Pr(l),et=l[84]&&zr(l),nt=l[74]&&Or(l),it=l[3]&&Vr(l);return{c(){e=f("div"),Te&&Te.c(),t=k(),n=f("aside"),s=f("div"),o=f("img"),c=k(),u=f("span"),u.textContent=`${p("nav.brand")}`,m=k(),v=f("nav"),_=f("div"),h=f("div"),h.textContent=`${p("nav.system")}`,b=k();for(let se=0;se',q=k(),W=f("span"),Y=P(l[23]),G=k(),L=f("main"),H=f("header"),z=f("div"),je.c(),U=k(),$=f("div"),$.innerHTML="",de=k(),ye&&ye.c(),ie=k(),le.c(),oe=k(),Se&&Se.c(),ue=k(),pe&&pe.c(),ge=k(),Ee&&Ee.c(),Ue=k(),Ye&&Ye.c(),Ne=k(),lt&<.c(),X=k(),xe&&xe.c(),ee=k(),Ge&&Ge.c(),fe=k(),Qe&&Qe.c(),be=k(),et&&et.c(),ve=k(),nt&&nt.c(),Me=k(),it&&it.c(),i(o,"class","logo svelte-n693km"),tl(o.src,r="/assets/app-icons/icon_32x32.png")||i(o,"src",r),i(o,"width","20"),i(o,"height","20"),i(o,"alt",""),i(u,"class","brand-name svelte-n693km"),i(s,"class","sidebar-brand svelte-n693km"),i(h,"class","nav-label svelte-n693km"),i(_,"class","nav-group svelte-n693km"),i(T,"class","svelte-n693km"),i(N,"class","nav-add-btn svelte-n693km"),i(N,"title",p("common.create")),i(w,"class","nav-label-row svelte-n693km"),i(y,"class","nav-group svelte-n693km"),i(v,"class","sidebar-nav svelte-n693km"),i(J,"class","sidebar-settings-btn svelte-n693km"),i(J,"title",p("common.settings")),i(W,"class","version svelte-n693km"),i(K,"class","sidebar-footer-row svelte-n693km"),i(R,"class","sidebar-footer svelte-n693km"),i(n,"class","sidebar svelte-n693km"),i(z,"class","header-left svelte-n693km"),i($,"class","header-right svelte-n693km"),i(H,"class","header svelte-n693km"),i(L,"class","main svelte-n693km"),i(e,"class","app svelte-n693km")},m(se,we){S(se,e,we),Te&&Te.m(e,null),a(e,t),a(e,n),a(n,s),a(s,o),a(s,c),a(s,u),a(n,m),a(n,v),a(v,_),a(_,h),a(_,b);for(let Be=0;Be{Ie[Be]=null}),_t(),F=Ie[E],F?F.p(se,we):(F=Ie[E]=Ve[E](se),F.c()),ce(F,1),F.m(y,null));const Ze={};we[3]&16&&(Ze.syncStatus=se[97]),we[3]&32&&(Ze.syncLoading=se[98]),we[3]&64&&(Ze.syncMessage=se[99]),we[3]&128&&(Ze.syncMessageKind=se[100]),O.$set(Ze),(!Ke||we[0]&8388608)&&B(Y,se[23]),Oe===(Oe=Re(se))&&je?je.p(se,we):(je.d(1),je=Oe(se),je&&(je.c(),je.m(z,null))),se[24]?ye?ye.p(se,we):(ye=qi(se),ye.c(),ye.m(L,ie)):ye&&(ye.d(1),ye=null);let tt=ne;ne=$e(se),ne===tt?We[ne].p(se,we):(pt(),me(We[tt],1,1,()=>{We[tt]=null}),_t(),le=We[ne],le?le.p(se,we):(le=We[ne]=Fe[ne](se),le.c()),ce(le,1),le.m(L,oe)),se[54]?Se?(Se.p(se,we),we[1]&8388608&&ce(Se,1)):(Se=kr(se),Se.c(),ce(Se,1),Se.m(L,ue)):Se&&(pt(),me(Se,1,1,()=>{Se=null}),_t()),se[58].visible?pe?(pe.p(se,we),we[1]&134217728&&ce(pe,1)):(pe=br(se),pe.c(),ce(pe,1),pe.m(L,ge)):pe&&(pt(),me(pe,1,1,()=>{pe=null}),_t()),se[32]?Ee?Ee.p(se,we):(Ee=Sr(se),Ee.c(),Ee.m(L,Ue)):Ee&&(Ee.d(1),Ee=null),se[61]?Ye?Ye.p(se,we):(Ye=Tr(se),Ye.c(),Ye.m(L,Ne)):Ye&&(Ye.d(1),Ye=null),se[68]&&se[67]?lt?lt.p(se,we):(lt=Er(se),lt.c(),lt.m(L,X)):lt&&(lt.d(1),lt=null),se[89]?xe?xe.p(se,we):(xe=Nr(se),xe.c(),xe.m(L,ee)):xe&&(xe.d(1),xe=null),se[92]?Ge?Ge.p(se,we):(Ge=Ir(se),Ge.c(),Ge.m(L,fe)):Ge&&(Ge.d(1),Ge=null),se[48]?Qe?Qe.p(se,we):(Qe=Pr(se),Qe.c(),Qe.m(L,be)):Qe&&(Qe.d(1),Qe=null),se[84]?et?(et.p(se,we),we[2]&4194304&&ce(et,1)):(et=zr(se),et.c(),ce(et,1),et.m(L,ve)):et&&(pt(),me(et,1,1,()=>{et=null}),_t()),se[74]?nt?(nt.p(se,we),we[2]&4096&&ce(nt,1)):(nt=Or(se),nt.c(),ce(nt,1),nt.m(L,Me)):nt&&(pt(),me(nt,1,1,()=>{nt=null}),_t()),se[3]?it?(it.p(se,we),we[0]&8&&ce(it,1)):(it=Vr(se),it.c(),ce(it,1),it.m(L,null)):it&&(pt(),me(it,1,1,()=>{it=null}),_t())},i(se){Ke||(ce(F),ce(O.$$.fragment,se),ce(le),ce(Se),ce(pe),ce(et),ce(nt),ce(it),Ke=!0)},o(se){me(F),me(O.$$.fragment,se),me(le),me(Se),me(pe),me(et),me(nt),me(it),Ke=!1},d(se){se&&C(e),Te&&Te.d(),De(Ce,se),Ie[E].d(),qe(O),je.d(),ye&&ye.d(),We[ne].d(),Se&&Se.d(),pe&&pe.d(),Ee&&Ee.d(),Ye&&Ye.d(),lt&<.d(),xe&&xe.d(),Ge&&Ge.d(),Qe&&Qe.d(),et&&et.d(),nt&&nt.d(),it&&it.d(),st=!1,_e(ct)}}}function y1(l){var n;let e,t;return e=new vm({props:{vaultPath:((n=l[0])==null?void 0:n.vaultPath)||"",onComplete:l[206]}}),{c(){Xe(e.$$.fragment)},m(s,o){Je(e,s,o),t=!0},p(s,o){var c;const r={};o[0]&1&&(r.vaultPath=((c=s[0])==null?void 0:c.vaultPath)||""),e.$set(r)},i(s){t||(ce(e.$$.fragment,s),t=!0)},o(s){me(e.$$.fragment,s),t=!1},d(s){qe(e,s)}}}function w1(l){let e,t;return e=new mm({props:{onComplete:l[205]}}),{c(){Xe(e.$$.fragment)},m(n,s){Je(e,n,s),t=!0},p:x,i(n){t||(ce(e.$$.fragment,n),t=!0)},o(n){me(e.$$.fragment,n),t=!1},d(n){qe(e,n)}}}function Bi(l){let e,t,n;return{c(){e=f("div"),t=f("div"),n=P(l[83]),i(t,"class","capture-drop-box svelte-n693km"),i(e,"class","capture-drop-overlay svelte-n693km")},m(s,o){S(s,e,o),a(e,t),a(t,n)},p(s,o){o[2]&2097152&&B(n,s[83])},d(s){s&&C(e)}}}function Ki(l){let e,t;return{c(){e=f("span"),t=P(l[42]),i(e,"class","nav-badge svelte-n693km")},m(n,s){S(n,e,s),a(e,t)},p(n,s){s[1]&2048&&B(t,n[42])},d(n){n&&C(e)}}}function Gi(l){let e,t=l[488].label+"",n,s,o,r,c,u,m=l[488].id==="journal"&&l[42]>0&&Ki(l);function v(){return l[208](l[488])}return{c(){e=f("button"),n=P(t),s=k(),m&&m.c(),o=k(),i(e,"class",r="nav-item "+(l[25]===l[488].id?"selected":"")+" svelte-n693km")},m(_,h){S(_,e,h),a(e,n),a(e,s),m&&m.m(e,null),a(e,o),c||(u=A(e,"click",v),c=!0)},p(_,h){l=_,h[0]&16&&t!==(t=l[488].label+"")&&B(n,t),l[488].id==="journal"&&l[42]>0?m?m.p(l,h):(m=Ki(l),m.c(),m.m(e,o)):m&&(m.d(1),m=null),h[0]&33554448&&r!==(r="nav-item "+(l[25]===l[488].id?"selected":"")+" svelte-n693km")&&i(e,"class",r)},d(_){_&&C(e),m&&m.d(),c=!1,u()}}}function C1(l){let e;return{c(){e=f("div"),e.textContent=`${p("nav.noNodes")}`,i(e,"class","nav-empty svelte-n693km")},m(t,n){S(t,e,n)},p:x,i:x,o:x,d(t){t&&C(e)}}}function S1(l){var r;let e,t,n,s,o;return t=new ia({props:{nodes:l[5],expanded:l[69],selectedNodeId:((r=l[26])==null?void 0:r.id)||"",onSelect:l[106],onToggle:l[136],onContextMenu:l[134],onDrop:l[137]}}),{c(){e=f("div"),Xe(t.$$.fragment),i(e,"class","workspace-tree-area svelte-n693km"),i(e,"role","region"),i(e,"aria-label",p("nav.workspace")),he(e,"drop-valid",l[80])},m(c,u){S(c,e,u),Je(t,e,null),n=!0,s||(o=[A(e,"dragover",kn(l[139])),A(e,"dragleave",l[140]),A(e,"drop",l[138])],s=!0)},p(c,u){var v;const m={};u[0]&32&&(m.nodes=c[5]),u[2]&128&&(m.expanded=c[69]),u[0]&67108864&&(m.selectedNodeId=((v=c[26])==null?void 0:v.id)||""),t.$set(m),(!n||u[2]&262144)&&he(e,"drop-valid",c[80])},i(c){n||(ce(t.$$.fragment,c),n=!0)},o(c){me(t.$$.fragment,c),n=!1},d(c){c&&C(e),qe(t),s=!1,_e(o)}}}function T1(l){let e;return{c(){e=f("span"),e.textContent=`${p("nav.selectPrompt")}`,i(e,"class","crumb placeholder svelte-n693km")},m(t,n){S(t,e,n)},p:x,d(t){t&&C(e)}}}function j1(l){let e,t=re(l[4]),n=[];for(let s=0;s',i(o,"class","dismiss-btn svelte-n693km"),i(o,"aria-label","Dismiss"),i(e,"class","error-banner svelte-n693km"),i(e,"role","button"),i(e,"tabindex","0")},m(u,m){S(u,e,m),a(e,n),a(e,s),a(e,o),r||(c=[A(o,"click",Le(l[211])),A(e,"click",l[212]),A(e,"keydown",function(){Mt(ht(l[213]))&&ht(l[213]).apply(this,arguments)})],r=!0)},p(u,m){l=u,m[0]&16777216&&t!==(t=l[102](l[24])+"")&&B(n,t)},d(u){u&&C(e),r=!1,_e(c)}}}function D1(l){let e,t,n;function s(c,u){if(c[65])return O1;if(c[4].length>0)return z1;if(c[24])return R1}let o=s(l),r=o&&o(l);return{c(){e=f("div"),t=f("h2"),t.textContent=`${p("welcome.title")}`,n=k(),r&&r.c(),i(t,"class","svelte-n693km"),i(e,"class","welcome svelte-n693km")},m(c,u){S(c,e,u),a(e,t),a(e,n),r&&r.m(e,null)},p(c,u){o===(o=s(c))&&r?r.p(c,u):(r&&r.d(1),r=o&&o(c),r&&(r.c(),r.m(e,null)))},i:x,o:x,d(c){c&&C(e),r&&r.d()}}}function N1(l){let e,t,n,s;function o(u,m){return u[8].length===0?W1:V1}let r=o(l),c=r(l);return{c(){e=f("div"),t=f("div"),n=f("h2"),n.textContent=`${p("activity.title")}`,s=k(),c.c(),i(n,"class","svelte-n693km"),i(t,"class","activity-feed-header svelte-n693km"),i(e,"class","activity-feed svelte-n693km")},m(u,m){S(u,e,m),a(e,t),a(t,n),a(e,s),c.m(e,null)},p(u,m){r===(r=o(u))&&c?c.p(u,m):(c.d(1),c=r(u),c&&(c.c(),c.m(e,null)))},i:x,o:x,d(u){u&&C(e),c.d()}}}function M1(l){let e,t,n,s,o,r=l[7].date+"",c,u,m,v,_=l[7].summary&&Xi(l),h=l[41].length>0&&eo(l);function b(w,T){return w[7].groups&&w[7].groups.length>0?U1:H1}let g=b(l),y=g(l);return{c(){e=f("div"),t=f("div"),n=f("h2"),n.textContent=`${p("today.title")}`,s=k(),o=f("span"),c=P(r),u=k(),_&&_.c(),m=k(),h&&h.c(),v=k(),y.c(),i(n,"class","svelte-n693km"),i(o,"class","today-date svelte-n693km"),i(t,"class","today-header svelte-n693km"),i(e,"class","today-dashboard svelte-n693km")},m(w,T){S(w,e,T),a(e,t),a(t,n),a(t,s),a(t,o),a(o,c),a(e,u),_&&_.m(e,null),a(e,m),h&&h.m(e,null),a(e,v),y.m(e,null)},p(w,T){T[0]&128&&r!==(r=w[7].date+"")&&B(c,r),w[7].summary?_?_.p(w,T):(_=Xi(w),_.c(),_.m(e,m)):_&&(_.d(1),_=null),w[41].length>0?h?h.p(w,T):(h=eo(w),h.c(),h.m(e,v)):h&&(h.d(1),h=null),g===(g=b(w))&&y?y.p(w,T):(y.d(1),y=g(w),y&&(y.c(),y.m(e,null)))},i:x,o:x,d(w){w&&C(e),_&&_.d(),h&&h.d(),y.d()}}}function I1(l){let e,t,n,s,o,r,c,u,m,v,_,h,b,g,y,w,T,j,N,D,E,F,M,R,O,V,K,J,q,W,Y,G,L,H,z,U,$,de,ie,ne,le,oe,ue,ge,Ue,Ne,X,ee,fe,be,ve,Me,Ke,st,ct,Te,Pe,Ce,Ve;function Ie(pe,Ee){return pe[17]?J1:G1}let He=Ie(l),Re=He(l),Oe=l[14]&&po(l),je=l[18]&&_o(l),ye=l[41].length>0&&vo(l),Fe=l[10]&&yo(l);function We(pe,Ee){return pe[9].length===0?Y1:q1}let $e=We(l),Se=$e(l);return{c(){e=f("div"),t=f("div"),n=f("h2"),n.textContent=`${p("journal.title")}`,s=k(),o=f("div"),r=f("div"),r.textContent=`${p("journal.filterHeading")}`,c=k(),u=f("div"),m=f("label"),v=f("span"),v.textContent=`${p("journal.dateFrom")}`,_=k(),h=f("input"),b=k(),g=f("label"),y=f("span"),y.textContent=`${p("journal.dateTo")}`,w=k(),T=f("input"),j=k(),N=f("label"),D=f("span"),D.textContent=`${p("journal.node")}`,E=k(),F=f("div"),Re.c(),M=k(),Oe&&Oe.c(),R=k(),O=f("label"),V=f("span"),V.textContent=`${p("journal.billable")}`,K=k(),J=f("select"),q=f("option"),q.textContent=`${p("common.all")}`,W=f("option"),W.textContent=`${p("journal.billableYes")}`,Y=f("option"),Y.textContent=`${p("journal.billableNo")}`,G=k(),L=f("label"),H=f("span"),H.textContent=`${p("journal.approx")}`,z=k(),U=f("select"),$=f("option"),$.textContent=`${p("common.all")}`,de=f("option"),de.textContent=`${p("journal.approxExact")}`,ie=f("option"),ie.textContent=`${p("journal.approxEstimated")}`,ne=k(),le=f("button"),le.textContent=`${p("journal.filter")}`,oe=k(),ue=f("button"),ue.textContent=`${p("journal.reset")}`,ge=k(),Ue=f("div"),Ne=f("div"),Ne.textContent=`${p("journal.exportHeading")}`,X=k(),ee=f("div"),fe=f("button"),fe.textContent=`${p("journal.exportCSV")}`,be=k(),ve=f("button"),ve.textContent=`${p("journal.exportMarkdown")}`,Me=k(),Ke=f("button"),Ke.textContent="PDF",st=k(),je&&je.c(),ct=k(),ye&&ye.c(),Te=k(),Fe&&Fe.c(),Pe=k(),Se.c(),i(n,"class","svelte-n693km"),i(r,"class","journal-filter-heading svelte-n693km"),i(v,"class","label-text svelte-n693km"),i(h,"type","date"),i(h,"class","svelte-n693km"),i(m,"class","svelte-n693km"),i(y,"class","label-text svelte-n693km"),i(T,"type","date"),i(T,"class","svelte-n693km"),i(g,"class","svelte-n693km"),i(D,"class","label-text svelte-n693km"),i(F,"class","journal-node-picker svelte-n693km"),gt(F,"position","relative"),i(N,"class","svelte-n693km"),i(V,"class","label-text svelte-n693km"),q.__value="all",ke(q,q.__value),i(q,"class","svelte-n693km"),W.__value="yes",ke(W,W.__value),i(W,"class","svelte-n693km"),Y.__value="no",ke(Y,Y.__value),i(Y,"class","svelte-n693km"),i(J,"class","svelte-n693km"),l[15]===void 0&&Ut(()=>l[280].call(J)),i(O,"title",p("journal.billableHint")),i(O,"class","svelte-n693km"),i(H,"class","label-text svelte-n693km"),$.__value="all",ke($,$.__value),i($,"class","svelte-n693km"),de.__value="no",ke(de,de.__value),i(de,"class","svelte-n693km"),ie.__value="yes",ke(ie,ie.__value),i(ie,"class","svelte-n693km"),i(U,"class","svelte-n693km"),l[16]===void 0&&Ut(()=>l[281].call(U)),i(L,"title",p("journal.approxHint")),i(L,"class","svelte-n693km"),i(le,"class","btn btn-sm svelte-n693km"),i(ue,"class","btn btn-sm svelte-n693km"),i(u,"class","journal-filters-row svelte-n693km"),i(o,"class","journal-filter-section svelte-n693km"),i(Ne,"class","journal-export-heading svelte-n693km"),i(fe,"class","btn btn-sm svelte-n693km"),i(ve,"class","btn btn-sm svelte-n693km"),i(Ke,"class","btn btn-sm svelte-n693km"),i(ee,"class","journal-export-row svelte-n693km"),i(Ue,"class","journal-export-section svelte-n693km"),i(t,"class","journal-header svelte-n693km"),i(e,"class","journal-screen svelte-n693km")},m(pe,Ee){S(pe,e,Ee),a(e,t),a(t,n),a(t,s),a(t,o),a(o,r),a(o,c),a(o,u),a(u,m),a(m,v),a(m,_),a(m,h),ke(h,l[11]),a(u,b),a(u,g),a(g,y),a(g,w),a(g,T),ke(T,l[12]),a(u,j),a(u,N),a(N,D),a(N,E),a(N,F),Re.m(F,null),a(u,M),Oe&&Oe.m(u,null),a(u,R),a(u,O),a(O,V),a(O,K),a(O,J),a(J,q),a(J,W),a(J,Y),Nt(J,l[15],!0),a(u,G),a(u,L),a(L,H),a(L,z),a(L,U),a(U,$),a(U,de),a(U,ie),Nt(U,l[16],!0),a(u,ne),a(u,le),a(u,oe),a(u,ue),a(t,ge),a(t,Ue),a(Ue,Ne),a(Ue,X),a(Ue,ee),a(ee,fe),a(ee,be),a(ee,ve),a(ee,Me),a(ee,Ke),a(ee,st),je&&je.m(ee,null),a(e,ct),ye&&ye.m(e,null),a(e,Te),Fe&&Fe.m(e,null),a(e,Pe),Se.m(e,null),Ce||(Ve=[A(h,"input",l[273]),A(T,"input",l[274]),A(J,"change",l[280]),A(U,"change",l[281]),A(le,"click",l[160]),A(ue,"click",l[167]),A(fe,"click",l[282]),A(ve,"click",l[283]),A(Ke,"click",l[284])],Ce=!0)},p(pe,Ee){Ee[0]&2048&&ke(h,pe[11]),Ee[0]&4096&&ke(T,pe[12]),He===(He=Ie(pe))&&Re?Re.p(pe,Ee):(Re.d(1),Re=He(pe),Re&&(Re.c(),Re.m(F,null))),pe[14]?Oe?Oe.p(pe,Ee):(Oe=po(pe),Oe.c(),Oe.m(u,R)):Oe&&(Oe.d(1),Oe=null),Ee[0]&32768&&Nt(J,pe[15]),Ee[0]&65536&&Nt(U,pe[16]),pe[18]?je?je.p(pe,Ee):(je=_o(pe),je.c(),je.m(ee,null)):je&&(je.d(1),je=null),pe[41].length>0?ye?ye.p(pe,Ee):(ye=vo(pe),ye.c(),ye.m(e,Te)):ye&&(ye.d(1),ye=null),pe[10]?Fe?Fe.p(pe,Ee):(Fe=yo(pe),Fe.c(),Fe.m(e,Pe)):Fe&&(Fe.d(1),Fe=null),$e===($e=We(pe))&&Se?Se.p(pe,Ee):(Se.d(1),Se=$e(pe),Se&&(Se.c(),Se.m(e,null)))},i:x,o:x,d(pe){pe&&C(e),Re.d(),Oe&&Oe.d(),je&&je.d(),ye&&ye.d(),Fe&&Fe.d(),Se.d(),Ce=!1,_e(Ve)}}}function A1(l){var T;let e,t,n,s,o,r,c=(((T=l[53])==null?void 0:T.trashPath)||"")+"",u,m,v,_,h,b;function g(j,N){return!j[53]||(j[53].nodes||[]).length===0&&(j[53].entries||[]).length===0?lp:tp}let y=g(l),w=y(l);return{c(){e=f("div"),t=f("div"),n=f("div"),s=f("h2"),s.textContent=`${p("nav.trash")}`,o=k(),r=f("p"),u=P(c),m=k(),v=f("button"),v.textContent=`${p("trash.openFolder")}`,_=k(),w.c(),i(s,"class","svelte-n693km"),i(r,"class","svelte-n693km"),i(n,"class","svelte-n693km"),i(v,"class","btn btn-sm svelte-n693km"),i(t,"class","trash-header svelte-n693km"),i(e,"class","trash-screen svelte-n693km")},m(j,N){S(j,e,N),a(e,t),a(t,n),a(n,s),a(n,o),a(n,r),a(r,u),a(t,m),a(t,v),a(e,_),w.m(e,null),h||(b=A(v,"click",l[272]),h=!0)},p(j,N){var D;N[1]&4194304&&c!==(c=(((D=j[53])==null?void 0:D.trashPath)||"")+"")&&B(u,c),y===(y=g(j))&&w?w.p(j,N):(w.d(1),w=y(j),w&&(w.c(),w.m(e,null)))},i:x,o:x,d(j){j&&C(e),w.d(),h=!1,b()}}}function L1(l){let e,t,n,s,o,r,c,u,m,v=(l[45]?p("common.loading"):p("inbox.pasteClipboard"))+"",_,h,b,g,y,w=l[46]&&Ro(l);function T(D,E){return D[43].length===0?ap:rp}let j=T(l),N=j(l);return{c(){e=f("div"),t=f("div"),n=f("div"),s=f("h2"),s.textContent=`${p("nav.inbox")}`,o=k(),r=f("p"),r.textContent=`${p("inbox.subtitle")}`,c=k(),u=f("div"),m=f("button"),_=P(v),h=k(),w&&w.c(),b=k(),N.c(),i(s,"class","svelte-n693km"),i(r,"class","svelte-n693km"),i(n,"class","svelte-n693km"),i(m,"class","btn btn-primary svelte-n693km"),m.disabled=l[45],i(u,"class","inbox-header-actions svelte-n693km"),i(t,"class","inbox-header svelte-n693km"),i(e,"class","inbox-screen svelte-n693km"),i(e,"role","region"),i(e,"aria-label",p("nav.inbox")),he(e,"drop-valid",l[81])},m(D,E){S(D,e,E),a(e,t),a(t,n),a(n,s),a(n,o),a(n,r),a(t,c),a(t,u),a(u,m),a(m,_),a(u,h),w&&w.m(u,null),a(e,b),N.m(e,null),g||(y=[A(m,"click",l[176]),A(e,"dragover",l[177]),A(e,"dragleave",l[178]),A(e,"drop",l[179])],g=!0)},p(D,E){E[1]&16384&&v!==(v=(D[45]?p("common.loading"):p("inbox.pasteClipboard"))+"")&&B(_,v),E[1]&16384&&(m.disabled=D[45]),D[46]?w?w.p(D,E):(w=Ro(D),w.c(),w.m(u,null)):w&&(w.d(1),w=null),j===(j=T(D))&&N?N.p(D,E):(N.d(1),N=j(D),N&&(N.c(),N.m(e,null))),E[2]&524288&&he(e,"drop-valid",D[81])},i:x,o:x,d(D){D&&C(e),w&&w.d(),N.d(),g=!1,_e(y)}}}function F1(l){let e,t,n,s,o,r,c=re(l[104]),u=[];for(let h=0;h{v[g]=null}),_t()),~s?(o=v[s],o?o.p(h,b):(o=v[s]=m[s](h),o.c()),ce(o,1),o.m(n,null)):o=null)},i(h){r||(ce(o),r=!0)},o(h){me(o),r=!1},d(h){h&&(C(e),C(t),C(n)),De(u,h),~s&&v[s].d()}}}function P1(l){let e,t,n,s=l[29].title+"",o,r,c,u,m,v,_,h,b,g,y,w=l[29].dirty&&vr();return{c(){e=f("div"),t=f("div"),n=f("span"),o=P(s),r=k(),w&&w.c(),c=k(),u=f("div"),m=f("button"),m.textContent=`${p("common.save")}`,v=k(),_=f("button"),_.textContent=`${p("common.close")}`,h=k(),b=f("textarea"),i(n,"class","note-title svelte-n693km"),i(m,"class","btn btn-primary svelte-n693km"),i(_,"class","btn svelte-n693km"),i(u,"class","note-editor-actions svelte-n693km"),i(t,"class","note-editor-header svelte-n693km"),i(b,"class","note-textarea svelte-n693km"),i(b,"placeholder",p("note.placeholder")),i(e,"class","note-editor svelte-n693km")},m(T,j){S(T,e,j),a(e,t),a(t,n),a(n,o),a(t,r),w&&w.m(t,null),a(t,c),a(t,u),a(u,m),a(u,v),a(u,_),a(e,h),a(e,b),ke(b,l[29].content),g||(y=[A(m,"click",l[152]),A(_,"click",l[150]),A(b,"input",l[214]),A(b,"input",l[151])],g=!0)},p(T,j){j[0]&536870912&&s!==(s=T[29].title+"")&&B(o,s),T[29].dirty?w||(w=vr(),w.c(),w.m(t,c)):w&&(w.d(1),w=null),j[0]&536870912&&ke(b,T[29].content)},i:x,o:x,d(T){T&&C(e),w&&w.d(),g=!1,_e(y)}}}function R1(l){let e,t=p("common.error")+"",n,s,o;return{c(){e=f("p"),n=P(t),s=k(),o=P(l[24]),i(e,"class","error-text svelte-n693km")},m(r,c){S(r,e,c),a(e,n),a(e,s),a(e,o)},p(r,c){c[0]&16777216&&B(o,r[24])},d(r){r&&C(e)}}}function z1(l){let e,t,n;return{c(){e=f("p"),e.textContent=`${p("welcome.selectSection")}`,t=k(),n=f("p"),n.textContent=`${p("welcome.createCase")}`,i(e,"class","svelte-n693km"),i(n,"class","hint svelte-n693km")},m(s,o){S(s,e,o),S(s,t,o),S(s,n,o)},p:x,d(s){s&&(C(e),C(t),C(n))}}}function O1(l){let e;return{c(){e=f("p"),e.textContent=`${p("common.loading")}`,i(e,"class","svelte-n693km")},m(t,n){S(t,e,n)},p:x,d(t){t&&C(e)}}}function V1(l){let e,t=re(l[8]),n=[];for(let s=0;s0&&Zi(l),o=l[7].summary.notes>0&&xi(l),r=l[7].summary.files>0&&$i(l);return{c(){e=f("div"),s&&s.c(),t=k(),o&&o.c(),n=k(),r&&r.c(),i(e,"class","today-summary svelte-n693km")},m(c,u){S(c,e,u),s&&s.m(e,null),a(e,t),o&&o.m(e,null),a(e,n),r&&r.m(e,null)},p(c,u){c[7].summary.changedCases>0?s?s.p(c,u):(s=Zi(c),s.c(),s.m(e,t)):s&&(s.d(1),s=null),c[7].summary.notes>0?o?o.p(c,u):(o=xi(c),o.c(),o.m(e,n)):o&&(o.d(1),o=null),c[7].summary.files>0?r?r.p(c,u):(r=$i(c),r.c(),r.m(e,null)):r&&(r.d(1),r=null)},d(c){c&&C(e),s&&s.d(),o&&o.d(),r&&r.d()}}}function Zi(l){let e,t=l[7].summary.changedCases+"",n,s,o=It(l[7].summary.changedCases,p("today.plural.case_one"),p("today.plural.case_few"),p("today.plural.case_many"))+"",r;return{c(){e=f("span"),n=P(t),s=k(),r=P(o),i(e,"class","summary-chip svelte-n693km")},m(c,u){S(c,e,u),a(e,n),a(e,s),a(e,r)},p(c,u){u[0]&128&&t!==(t=c[7].summary.changedCases+"")&&B(n,t),u[0]&128&&o!==(o=It(c[7].summary.changedCases,p("today.plural.case_one"),p("today.plural.case_few"),p("today.plural.case_many"))+"")&&B(r,o)},d(c){c&&C(e)}}}function xi(l){let e,t=l[7].summary.notes+"",n,s,o=It(l[7].summary.notes,p("today.plural.note_one"),p("today.plural.note_few"),p("today.plural.note_many"))+"",r;return{c(){e=f("span"),n=P(t),s=k(),r=P(o),i(e,"class","summary-chip svelte-n693km")},m(c,u){S(c,e,u),a(e,n),a(e,s),a(e,r)},p(c,u){u[0]&128&&t!==(t=c[7].summary.notes+"")&&B(n,t),u[0]&128&&o!==(o=It(c[7].summary.notes,p("today.plural.note_one"),p("today.plural.note_few"),p("today.plural.note_many"))+"")&&B(r,o)},d(c){c&&C(e)}}}function $i(l){let e,t=l[7].summary.files+"",n,s,o=It(l[7].summary.files,p("today.plural.file_one"),p("today.plural.file_few"),p("today.plural.file_many"))+"",r;return{c(){e=f("span"),n=P(t),s=k(),r=P(o),i(e,"class","summary-chip svelte-n693km")},m(c,u){S(c,e,u),a(e,n),a(e,s),a(e,r)},p(c,u){u[0]&128&&t!==(t=c[7].summary.files+"")&&B(n,t),u[0]&128&&o!==(o=It(c[7].summary.files,p("today.plural.file_one"),p("today.plural.file_few"),p("today.plural.file_many"))+"")&&B(r,o)},d(c){c&&C(e)}}}function eo(l){let e,t,n,s=re(l[41]),o=[];for(let r=0;r0&&to(l);return{c(){e=f("div"),t=f("div"),n=f("div"),s=f("button"),r=P(o),c=k(),u=f("span"),v=P(m),_=k(),h=f("span"),g=P(b),y=k(),w=f("div"),T=f("input"),N=k(),D=f("span"),D.textContent=`${p("suggest.minutes")}`,E=k(),F=f("button"),F.textContent=`${p("suggest.edit")}`,M=k(),R=f("button"),R.textContent=`${p("suggest.apply")}`,O=k(),z&&z.c(),V=k(),i(s,"class","suggestion-node link-btn svelte-n693km"),i(u,"class","suggestion-summary svelte-n693km"),i(h,"class","suggestion-confidence svelte-n693km"),he(h,"low",l[438].confidence==="low"),he(h,"medium",l[438].confidence==="medium"),he(h,"high",l[438].confidence==="high"),i(n,"class","suggestion-info svelte-n693km"),i(T,"type","number"),i(T,"class","suggestion-min-input svelte-n693km"),T.value=j=l[438].suggestedMin,i(T,"min","1"),i(T,"max","480"),i(D,"class","suggestion-min-label svelte-n693km"),i(F,"class","btn btn-sm svelte-n693km"),i(R,"class","btn btn-sm btn-primary svelte-n693km"),i(w,"class","suggestion-actions svelte-n693km"),i(t,"class","suggestion-main svelte-n693km"),i(t,"role","button"),i(t,"tabindex","0"),i(e,"class","suggestion-card svelte-n693km"),he(e,"expanded",l[438]._expanded)},m(U,$){S(U,e,$),a(e,t),a(t,n),a(n,s),a(s,r),a(n,c),a(n,u),a(u,v),a(n,_),a(n,h),a(h,g),a(t,y),a(t,w),a(w,T),a(w,N),a(w,D),a(w,E),a(w,F),a(w,M),a(w,R),a(e,O),z&&z.m(e,null),a(e,V),K||(J=[A(s,"click",Le(q)),A(T,"change",Le(W)),A(F,"click",Le(Y)),A(R,"click",Le(G)),A(t,"click",L),A(t,"keydown",H)],K=!0)},p(U,$){l=U,$[1]&1024&&o!==(o=l[438].nodeTitle+"")&&B(r,o),$[1]&1024&&m!==(m=l[438].summary+"")&&B(v,m),$[1]&1024&&b!==(b=p("suggest.confidence."+l[438].confidence)+"")&&B(g,b),$[1]&1024&&he(h,"low",l[438].confidence==="low"),$[1]&1024&&he(h,"medium",l[438].confidence==="medium"),$[1]&1024&&he(h,"high",l[438].confidence==="high"),$[1]&1024&&j!==(j=l[438].suggestedMin)&&T.value!==j&&(T.value=j),l[438]._expanded&&l[438].events&&l[438].events.length>0?z?z.p(l,$):(z=to(l),z.c(),z.m(e,V)):z&&(z.d(1),z=null),$[1]&1024&&he(e,"expanded",l[438]._expanded)},d(U){U&&C(e),z&&z.d(),K=!1,_e(J)}}}function H1(l){let e,t,n,s;return{c(){e=f("div"),t=f("p"),t.textContent=`${p("today.empty")}`,n=k(),s=f("p"),s.textContent=`${p("today.emptyHint")}`,i(t,"class","svelte-n693km"),i(s,"class","hint svelte-n693km"),i(e,"class","today-empty svelte-n693km")},m(o,r){S(o,e,r),a(e,t),a(e,n),a(e,s)},p:x,d(o){o&&C(e)}}}function U1(l){let e,t,n=re(l[7].groups),s=[];for(let r=0;r0&&co(l);return{c(){for(let r=0;r0?o?o.p(r,c):(o=co(r),o.c(),o.m(t.parentNode,t)):o&&(o.d(1),o=null)},d(r){r&&(C(e),C(t)),De(s,r),o&&o.d(r)}}}function io(l){let e,t=l[474].events.length+"",n,s,o=It(l[474].events.length,p("today.plural.event_one"),p("today.plural.event_few"),p("today.plural.event_many"))+"",r;return{c(){e=f("span"),n=P(t),s=k(),r=P(o),i(e,"class","today-case-count svelte-n693km")},m(c,u){S(c,e,u),a(e,n),a(e,s),a(e,r)},p(c,u){u[0]&128&&t!==(t=c[474].events.length+"")&&B(n,t),u[0]&128&&o!==(o=It(c[474].events.length,p("today.plural.event_one"),p("today.plural.event_few"),p("today.plural.event_many"))+"")&&B(r,o)},d(c){c&&C(e)}}}function B1(l){let e;return{c(){e=f("div"),e.textContent=`${p("today.changedCases")}`,i(e,"class","today-events-empty svelte-n693km")},m(t,n){S(t,e,n)},p:x,d(t){t&&C(e)}}}function K1(l){let e,t=re(l[474].events),n=[];for(let s=0;s0?K1:B1}let F=E(l),M=F(l);return{c(){e=f("div"),t=f("div"),n=f("span"),o=P(s),r=k(),c=f("span"),m=P(u),v=k(),j&&j.c(),_=k(),h=f("span"),g=P(b),y=k(),M.c(),i(n,"class","today-case-title svelte-n693km"),i(c,"class","today-case-type svelte-n693km"),i(h,"class","today-case-time svelte-n693km"),i(t,"class","today-case-header svelte-n693km"),i(t,"role","button"),i(t,"tabindex","0"),i(e,"class","today-case svelte-n693km")},m(R,O){S(R,e,O),a(e,t),a(t,n),a(n,o),a(t,r),a(t,c),a(c,m),a(t,v),j&&j.m(t,null),a(t,_),a(t,h),a(h,g),a(e,y),M.m(e,null),w||(T=[A(t,"click",N),A(t,"keydown",D)],w=!0)},p(R,O){l=R,O[0]&128&&s!==(s=l[474].nodeTitle+"")&&B(o,s),O[0]&128&&u!==(u=l[174](l[474].nodeKind)+"")&&B(m,u),l[474].events?j?j.p(l,O):(j=io(l),j.c(),j.m(t,_)):j&&(j.d(1),j=null),O[0]&128&&b!==(b=dt(l[474].lastActivityAt)+"")&&B(g,b),F===(F=E(l))&&M?M.p(l,O):(M.d(1),M=F(l),M&&(M.c(),M.m(e,null)))},d(R){R&&C(e),j&&j.d(),M.d(),w=!1,_e(T)}}}function co(l){let e,t,n,s=re(l[7].events),o=[];for(let r=0;r0&&ko(l);return{c(){e=f("div"),t=f("div"),n=f("div"),s=f("button"),r=P(o),c=k(),u=f("span"),v=P(m),_=k(),h=f("span"),g=P(b),y=k(),w=f("div"),T=f("input"),N=k(),D=f("span"),D.textContent=`${p("suggest.minutes")}`,E=k(),F=f("button"),F.textContent=`${p("suggest.edit")}`,M=k(),R=f("button"),R.textContent=`${p("suggest.apply")}`,O=k(),z&&z.c(),V=k(),i(s,"class","suggestion-node link-btn svelte-n693km"),i(u,"class","suggestion-summary svelte-n693km"),i(h,"class","suggestion-confidence svelte-n693km"),he(h,"low",l[438].confidence==="low"),he(h,"medium",l[438].confidence==="medium"),he(h,"high",l[438].confidence==="high"),i(n,"class","suggestion-info svelte-n693km"),i(T,"type","number"),i(T,"class","suggestion-min-input svelte-n693km"),T.value=j=l[438].suggestedMin,i(T,"min","1"),i(T,"max","480"),i(D,"class","suggestion-min-label svelte-n693km"),i(F,"class","btn btn-sm svelte-n693km"),i(R,"class","btn btn-sm btn-primary svelte-n693km"),i(w,"class","suggestion-actions svelte-n693km"),i(t,"class","suggestion-main svelte-n693km"),i(t,"role","button"),i(t,"tabindex","0"),i(e,"class","suggestion-card svelte-n693km"),he(e,"expanded",l[438]._expanded)},m(U,$){S(U,e,$),a(e,t),a(t,n),a(n,s),a(s,r),a(n,c),a(n,u),a(u,v),a(n,_),a(n,h),a(h,g),a(t,y),a(t,w),a(w,T),a(w,N),a(w,D),a(w,E),a(w,F),a(w,M),a(w,R),a(e,O),z&&z.m(e,null),a(e,V),K||(J=[A(s,"click",Le(q)),A(T,"change",Le(W)),A(F,"click",Le(Y)),A(R,"click",Le(G)),A(t,"click",L),A(t,"keydown",H)],K=!0)},p(U,$){l=U,$[1]&1024&&o!==(o=l[438].nodeTitle+"")&&B(r,o),$[1]&1024&&m!==(m=l[438].summary+"")&&B(v,m),$[1]&1024&&b!==(b=p("suggest.confidence."+l[438].confidence)+"")&&B(g,b),$[1]&1024&&he(h,"low",l[438].confidence==="low"),$[1]&1024&&he(h,"medium",l[438].confidence==="medium"),$[1]&1024&&he(h,"high",l[438].confidence==="high"),$[1]&1024&&j!==(j=l[438].suggestedMin)&&T.value!==j&&(T.value=j),l[438]._expanded&&l[438].events&&l[438].events.length>0?z?z.p(l,$):(z=ko(l),z.c(),z.m(e,V)):z&&(z.d(1),z=null),$[1]&1024&&he(e,"expanded",l[438]._expanded)},d(U){U&&C(e),z&&z.d(),K=!1,_e(J)}}}function yo(l){let e,t,n=p("journal.total")+"",s,o,r=Math.floor(l[10].totalMinutes/60)+"",c,u,m=l[10].totalMinutes%60+"",v,_,h=l[10].totalEntries+"",b,g,y=p("worklog.min")+"",w,T,j,N,D=l[10].byDay&&l[10].byDay.length>0&&wo(l),E=l[10].byNode&&l[10].byNode.length>0&&So(l);return{c(){e=f("div"),t=f("div"),s=P(n),o=P(": "),c=P(r),u=P("ч "),v=P(m),_=P("м ("),b=P(h),g=k(),w=P(y),T=P(")"),j=k(),D&&D.c(),N=k(),E&&E.c(),i(t,"class","summary-total svelte-n693km"),i(e,"class","journal-summary svelte-n693km")},m(F,M){S(F,e,M),a(e,t),a(t,s),a(t,o),a(t,c),a(t,u),a(t,v),a(t,_),a(t,b),a(t,g),a(t,w),a(t,T),a(e,j),D&&D.m(e,null),a(e,N),E&&E.m(e,null)},p(F,M){M[0]&1024&&r!==(r=Math.floor(F[10].totalMinutes/60)+"")&&B(c,r),M[0]&1024&&m!==(m=F[10].totalMinutes%60+"")&&B(v,m),M[0]&1024&&h!==(h=F[10].totalEntries+"")&&B(b,h),F[10].byDay&&F[10].byDay.length>0?D?D.p(F,M):(D=wo(F),D.c(),D.m(e,N)):D&&(D.d(1),D=null),F[10].byNode&&F[10].byNode.length>0?E?E.p(F,M):(E=So(F),E.c(),E.m(e,null)):E&&(E.d(1),E=null)},d(F){F&&C(e),D&&D.d(),E&&E.d()}}}function wo(l){let e,t,n,s=re(l[10].byDay),o=[];for(let r=0;r0?$1:R[456].source==="suggestion"?x1:R[456].source==="unknown"||R[456].source==="imported"?Z1:R[456]._hasEvents?X1:Q1}let E=D(l),F=E(l),M=l[456]._events&&Mo(l);return{c(){e=f("tr"),t=f("td"),n=f("div"),s=f("div"),o=f("button"),o.textContent=`${p("worklog.editEntry")}`,r=k(),c=f("button"),c.textContent=`${p("worklog.deleteEntry")}`,u=k(),N&&N.c(),m=k(),v=f("div"),_=f("span"),_.textContent=`${p("worklog.source")}`,h=k(),F.c(),b=k(),M&&M.c(),g=k(),i(o,"class","btn btn-sm svelte-n693km"),i(c,"class","btn btn-sm btn-danger svelte-n693km"),i(s,"class","journal-detail-actions svelte-n693km"),i(_,"class","journal-detail-label svelte-n693km"),i(v,"class","journal-detail-section svelte-n693km"),i(n,"class","journal-detail-body svelte-n693km"),i(t,"colspan","8"),i(t,"class","svelte-n693km"),i(e,"class","journal-row-detail svelte-n693km")},m(R,O){S(R,e,O),a(e,t),a(t,n),a(n,s),a(s,o),a(s,r),a(s,c),a(n,u),N&&N.m(n,null),a(n,m),a(n,v),a(v,_),a(v,h),F.m(v,null),a(n,b),M&&M.m(n,null),a(e,g),y||(w=[A(o,"click",Le(T)),A(c,"click",Le(j))],y=!0)},p(R,O){l=R,l[456].details?N?N.p(l,O):(N=No(l),N.c(),N.m(n,m)):N&&(N.d(1),N=null),E!==(E=D(l))&&(F.d(1),F=E(l),F&&(F.c(),F.m(v,null))),l[456]._events?M?M.p(l,O):(M=Mo(l),M.c(),M.m(n,null)):M&&(M.d(1),M=null)},d(R){R&&C(e),N&&N.d(),F.d(),M&&M.d(),y=!1,_e(w)}}}function No(l){let e,t,n,s,o=l[456].details+"",r;return{c(){e=f("div"),t=f("span"),t.textContent=`${p("worklog.details")}`,n=k(),s=f("p"),r=P(o),i(t,"class","journal-detail-label svelte-n693km"),i(s,"class","svelte-n693km"),i(e,"class","journal-detail-section svelte-n693km")},m(c,u){S(c,e,u),a(e,t),a(e,n),a(e,s),a(s,r)},p(c,u){u[0]&512&&o!==(o=c[456].details+"")&&B(r,o)},d(c){c&&C(e)}}}function Q1(l){let e;return{c(){e=f("p"),e.textContent=`${p("worklog.sourceUnknown")}`,i(e,"class","svelte-n693km")},m(t,n){S(t,e,n)},d(t){t&&C(e)}}}function X1(l){let e;return{c(){e=f("p"),e.textContent=`${p("worklog.sourceSuggestion")}`,i(e,"class","svelte-n693km")},m(t,n){S(t,e,n)},d(t){t&&C(e)}}}function Z1(l){let e;return{c(){e=f("p"),e.textContent=`${p("worklog.sourceUnknown")}`,i(e,"class","svelte-n693km")},m(t,n){S(t,e,n)},d(t){t&&C(e)}}}function x1(l){let e;return{c(){e=f("p"),e.textContent=`${p("worklog.sourceSuggestionNoEvents")}`,i(e,"class","svelte-n693km")},m(t,n){S(t,e,n)},d(t){t&&C(e)}}}function $1(l){let e;return{c(){e=f("p"),e.textContent=`${p("worklog.sourceSuggestion")}`,i(e,"class","svelte-n693km")},m(t,n){S(t,e,n)},d(t){t&&C(e)}}}function ep(l){let e;return{c(){e=f("p"),e.textContent=`${p("worklog.sourceManual")}`,i(e,"class","svelte-n693km")},m(t,n){S(t,e,n)},d(t){t&&C(e)}}}function Mo(l){let e,t,n,s=re(l[456]._events),o=[];for(let r=0;r',i(e,"class","inbox-icon-btn inbox-icon-btn-primary svelte-n693km"),i(e,"title",p("inbox.keepHere")),i(e,"aria-label",p("inbox.keepHere"))},m(o,r){S(o,e,r),t||(n=A(e,"click",Le(s)),t=!0)},p(o,r){l=o},d(o){o&&C(e),t=!1,n()}}}function Oo(l){let e,t,n;function s(){return l[268](l[422])}return{c(){e=f("button"),e.textContent=`${p("file.showInExplorer")}`,i(e,"class","btn btn-sm svelte-n693km")},m(o,r){S(o,e,r),t||(n=A(e,"click",Le(s)),t=!0)},p(o,r){l=o},d(o){o&&C(e),t=!1,n()}}}function Vo(l){let e,t,n,s=l[422].title+"",o,r,c,u=l[175](l[422])+"",m,v,_,h,b,g,y,w,T=Wr(l[422]),j,N,D,E,F,M=l[422].suggestedTargetNodeId&&zo(l);function R(){return l[266](l[422])}function O(){return l[267](l[422])}let V=T&&Oo(l);function K(){return l[269](l[422])}function J(){return l[270](l[422])}function q(...W){return l[271](l[422],...W)}return{c(){e=f("div"),t=f("div"),n=f("span"),o=P(s),r=k(),c=f("span"),m=P(u),v=k(),_=f("div"),M&&M.c(),h=k(),b=f("button"),b.innerHTML='',g=k(),y=f("button"),y.innerHTML='',w=k(),V&&V.c(),j=k(),N=f("button"),N.innerHTML='',D=k(),i(n,"class","inbox-item-title svelte-n693km"),i(c,"class","inbox-item-meta svelte-n693km"),i(t,"class","inbox-item-main svelte-n693km"),i(b,"class","inbox-icon-btn svelte-n693km"),i(b,"title",p("inbox.assign")),i(b,"aria-label",p("inbox.assign")),i(y,"class","inbox-icon-btn svelte-n693km"),i(y,"title",p("common.open")),i(y,"aria-label",p("common.open")),i(N,"class","inbox-icon-btn inbox-icon-btn-danger svelte-n693km"),i(N,"title",p("common.delete")),i(N,"aria-label",p("common.delete")),i(_,"class","inbox-item-actions svelte-n693km"),i(e,"class","inbox-item svelte-n693km"),i(e,"role","button"),i(e,"tabindex","0")},m(W,Y){S(W,e,Y),a(e,t),a(t,n),a(n,o),a(t,r),a(t,c),a(c,m),a(e,v),a(e,_),M&&M.m(_,null),a(_,h),a(_,b),a(_,g),a(_,y),a(_,w),V&&V.m(_,null),a(_,j),a(_,N),a(e,D),E||(F=[A(b,"click",Le(R)),A(y,"click",Le(O)),A(N,"click",Le(K)),A(e,"click",J),A(e,"keydown",q)],E=!0)},p(W,Y){l=W,Y[1]&4096&&s!==(s=l[422].title+"")&&B(o,s),Y[1]&4096&&u!==(u=l[175](l[422])+"")&&B(m,u),l[422].suggestedTargetNodeId?M?M.p(l,Y):(M=zo(l),M.c(),M.m(_,h)):M&&(M.d(1),M=null),Y[1]&4096&&(T=Wr(l[422])),T?V?V.p(l,Y):(V=Oo(l),V.c(),V.m(_,j)):V&&(V.d(1),V=null)},d(W){W&&C(e),M&&M.d(),V&&V.d(),E=!1,_e(F)}}}function cp(l){let e;return{c(){e=f("span"),i(e,"class","tab-separator svelte-n693km"),i(e,"aria-hidden","true")},m(t,n){S(t,e,n)},d(t){t&&C(e)}}}function Wo(l){let e,t,n,s,o=l[445].id==="activity"&&cp();function r(){return l[215](l[445])}return{c(){o&&o.c(),e=k(),t=f("button"),t.textContent=`${l[445].label}`,i(t,"class","tab svelte-n693km"),he(t,"active",l[27]===l[445].id)},m(c,u){o&&o.m(c,u),S(c,e,u),S(c,t,u),n||(s=A(t,"click",r),n=!0)},p(c,u){l=c,u[0]&134217728|u[3]&2048&&he(t,"active",l[27]===l[445].id)},d(c){c&&(C(e),C(t)),o&&o.d(c),n=!1,s()}}}function up(l){let e;function t(o,r){return o[22].length===0?gp:hp}let n=t(l),s=n(l);return{c(){e=f("div"),s.c(),i(e,"class","activity-tab svelte-n693km")},m(o,r){S(o,e,r),s.m(e,null)},p(o,r){n===(n=t(o))&&s?s.p(o,r):(s.d(1),s=n(o),s&&(s.c(),s.m(e,null)))},i:x,o:x,d(o){o&&C(e),s.d()}}}function fp(l){let e,t,n,s,o=l[26]&&l[41].filter(l[207]).length>0,r,c,u,m=o&&Bo(l);function v(b,g){return b[31].length===0?yp:bp}let _=v(l),h=_(l);return{c(){e=f("div"),t=f("div"),n=f("button"),n.textContent=`+ ${p("worklog.addEntry")}`,s=k(),m&&m.c(),r=k(),h.c(),i(n,"class","btn btn-primary btn-sm svelte-n693km"),i(t,"class","worklog-toolbar svelte-n693km"),i(e,"class","worklog-tab svelte-n693km")},m(b,g){S(b,e,g),a(e,t),a(t,n),a(e,s),m&&m.m(e,null),a(e,r),h.m(e,null),c||(u=A(n,"click",l[249]),c=!0)},p(b,g){g[0]&67108864|g[1]&1024&&(o=b[26]&&b[41].filter(b[207]).length>0),o?m?m.p(b,g):(m=Bo(b),m.c(),m.m(e,r)):m&&(m.d(1),m=null),_===(_=v(b))&&h?h.p(b,g):(h.d(1),h=_(b),h&&(h.c(),h.m(e,null)))},i:x,o:x,d(b){b&&C(e),m&&m.d(),h.d(),c=!1,u()}}}function dp(l){let e,t,n,s,o,r;function c(v,_){return v[30].length===0?Dp:Ep}let u=c(l),m=u(l);return{c(){e=f("div"),t=f("div"),n=f("button"),n.textContent=`${p("action.addAction")}`,s=k(),m.c(),i(n,"class","btn btn-primary svelte-n693km"),i(t,"class","tab-toolbar svelte-n693km"),i(e,"class","actions-tab svelte-n693km")},m(v,_){S(v,e,_),a(e,t),a(t,n),a(e,s),m.m(e,null),o||(r=A(n,"click",l[193]),o=!0)},p(v,_){u===(u=c(v))&&m?m.p(v,_):(m.d(1),m=u(v),m&&(m.c(),m.m(e,null)))},i:x,o:x,d(v){v&&C(e),m.d(),o=!1,r()}}}function mp(l){let e,t;function n(c,u){return c[47].length===0?Mp:Np}let s=n(l),o=s(l),r=l[52]&&ir(l);return{c(){e=f("div"),o.c(),t=k(),r&&r.c(),i(e,"class","links-tab svelte-n693km")},m(c,u){S(c,e,u),o.m(e,null),a(e,t),r&&r.m(e,null)},p(c,u){s===(s=n(c))&&o?o.p(c,u):(o.d(1),o=s(c),o&&(o.c(),o.m(e,t))),c[52]?r?r.p(c,u):(r=ir(c),r.c(),r.m(e,null)):r&&(r.d(1),r=null)},i:x,o:x,d(c){c&&C(e),o.d(),r&&r.d()}}}function pp(l){let e;function t(o,r){return o[44].length===0?Ap:Ip}let n=t(l),s=n(l);return{c(){e=f("div"),s.c(),i(e,"class","inbox-tab svelte-n693km")},m(o,r){S(o,e,r),s.m(e,null)},p(o,r){n===(n=t(o))&&s?s.p(o,r):(s.d(1),s=n(o),s&&(s.c(),s.m(e,null)))},i:x,o:x,d(o){o&&C(e),s.d()}}}function _p(l){let e,t,n,s=p("file.addFile")+"",o,r,c,u=p("file.addFolder")+"",m,v,_,h,b,g,y,w,T,j,N,D=l[78].items.length>0&&rr(l);const E=[Fp,Lp],F=[];function M(O,V){return O[70]?0:1}g=M(l),y=F[g]=E[g](l);let R=l[66]&&!l[68]&&cr();return{c(){e=f("div"),t=f("div"),n=f("button"),o=P(s),r=k(),c=f("button"),m=P(u),v=k(),_=f("button"),_.textContent=`${p("file.newFile")}`,h=k(),D&&D.c(),b=k(),y.c(),w=k(),R&&R.c(),i(n,"class","btn btn-primary svelte-n693km"),n.disabled=l[66],i(c,"class","btn svelte-n693km"),c.disabled=l[66],i(_,"class","btn svelte-n693km"),i(t,"class","tab-toolbar svelte-n693km"),i(e,"class","files-tab svelte-n693km")},m(O,V){S(O,e,V),a(e,t),a(t,n),a(n,o),a(t,r),a(t,c),a(c,m),a(t,v),a(t,_),a(t,h),D&&D.m(t,null),a(e,b),F[g].m(e,null),a(e,w),R&&R.m(e,null),T=!0,j||(N=[A(n,"click",l[168]),A(c,"click",l[169]),A(_,"click",l[113])],j=!0)},p(O,V){(!T||V[2]&16)&&(n.disabled=O[66]),(!T||V[2]&16)&&(c.disabled=O[66]),O[78].items.length>0?D?D.p(O,V):(D=rr(O),D.c(),D.m(t,null)):D&&(D.d(1),D=null);let K=g;g=M(O),g===K?F[g].p(O,V):(pt(),me(F[K],1,1,()=>{F[K]=null}),_t(),y=F[g],y?y.p(O,V):(y=F[g]=E[g](O),y.c()),ce(y,1),y.m(e,w)),O[66]&&!O[68]?R||(R=cr(),R.c(),R.m(e,null)):R&&(R.d(1),R=null)},i(O){T||(ce(y),T=!0)},o(O){me(y),T=!1},d(O){O&&C(e),D&&D.d(),F[g].d(),R&&R.d(),j=!1,_e(N)}}}function vp(l){let e,t,n,s,o,r,c,u=l[59]&&ur(l);function m(h,b){return h[28].length===0&&!h[59]?Wp:Vp}let v=m(l),_=v(l);return{c(){e=f("div"),t=f("div"),n=f("button"),n.textContent=`${p("note.add")}`,s=k(),u&&u.c(),o=k(),_.c(),i(n,"class","btn btn-primary svelte-n693km"),i(t,"class","tab-toolbar svelte-n693km"),i(e,"class","notes-tab svelte-n693km")},m(h,b){S(h,e,b),a(e,t),a(t,n),a(e,s),u&&u.m(e,null),a(e,o),_.m(e,null),r||(c=A(n,"click",l[146]),r=!0)},p(h,b){h[59]?u?u.p(h,b):(u=ur(h),u.c(),u.m(e,o)):u&&(u.d(1),u=null),v===(v=m(h))&&_?_.p(h,b):(_.d(1),_=v(h),_&&(_.c(),_.m(e,null)))},i:x,o:x,d(h){h&&C(e),u&&u.d(),_.d(),r=!1,c()}}}function kp(l){let e,t,n=l[26].title+"",s,o,r,c,u,m,v=l[174](l[26].type)+"",_,h,b,g,y,w=(l[26].section||"—")+"",T,j,N,D,E,F=kt(l[26].createdAt)+"",M,R,O,V,K,J,q,W,Y=p("overview.newNote")+"",G,L,H,z,U,$,de=p("overview.addFile")+"",ie,ne,le,oe,ue,ge,Ue=p("overview.addAction")+"",Ne,X,ee,fe,be,ve,Me,Ke=p("overview.logTime")+"",st,ct,Te,Pe,Ce,Ve=l[28].length>0&&dr(l),Ie=l[31].length>0&&pr(l);return{c(){e=f("div"),t=f("h2"),s=P(n),o=k(),r=f("div"),c=f("div"),u=f("span"),u.textContent=`${p("overview.type")}`,m=f("span"),_=P(v),h=k(),b=f("div"),g=f("span"),g.textContent=`${p("overview.section")}`,y=f("span"),T=P(w),j=k(),N=f("div"),D=f("span"),D.textContent=`${p("overview.created")}`,E=f("span"),M=P(F),R=k(),O=f("div"),V=f("button"),K=Q("svg"),J=Q("path"),q=Q("path"),W=k(),G=P(Y),L=k(),H=f("button"),z=Q("svg"),U=Q("path"),$=k(),ie=P(de),ne=k(),le=f("button"),oe=Q("svg"),ue=Q("polygon"),ge=k(),Ne=P(Ue),X=k(),ee=f("button"),fe=Q("svg"),be=Q("circle"),ve=Q("polyline"),Me=k(),st=P(Ke),ct=k(),Ve&&Ve.c(),Te=k(),Ie&&Ie.c(),i(t,"class","svelte-n693km"),i(u,"class","meta-label svelte-n693km"),i(m,"class","svelte-n693km"),i(c,"class","meta-item svelte-n693km"),i(g,"class","meta-label svelte-n693km"),i(y,"class","svelte-n693km"),i(b,"class","meta-item svelte-n693km"),i(D,"class","meta-label svelte-n693km"),i(E,"class","svelte-n693km"),i(N,"class","meta-item svelte-n693km"),i(r,"class","meta-grid svelte-n693km"),i(J,"d","M12 20h9"),i(J,"class","svelte-n693km"),i(q,"d","M16.5 3.5a2.121 2.121 0 0 1 3 3L7 19l-4 1 1-4L16.5 3.5z"),i(q,"class","svelte-n693km"),i(K,"width","16"),i(K,"height","16"),i(K,"viewBox","0 0 24 24"),i(K,"fill","none"),i(K,"stroke","currentColor"),i(K,"stroke-width","2"),i(K,"stroke-linecap","round"),i(K,"stroke-linejoin","round"),i(K,"class","svelte-n693km"),i(V,"class","qa-btn svelte-n693km"),i(U,"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(U,"class","svelte-n693km"),i(z,"width","16"),i(z,"height","16"),i(z,"viewBox","0 0 24 24"),i(z,"fill","none"),i(z,"stroke","currentColor"),i(z,"stroke-width","2"),i(z,"stroke-linecap","round"),i(z,"stroke-linejoin","round"),i(z,"class","svelte-n693km"),i(H,"class","qa-btn svelte-n693km"),i(ue,"points","13 2 3 14 12 14 11 22 21 10 12 10 13 2"),i(ue,"class","svelte-n693km"),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-n693km"),i(le,"class","qa-btn svelte-n693km"),i(be,"cx","12"),i(be,"cy","12"),i(be,"r","10"),i(be,"class","svelte-n693km"),i(ve,"points","12 6 12 12 16 14"),i(ve,"class","svelte-n693km"),i(fe,"width","16"),i(fe,"height","16"),i(fe,"viewBox","0 0 24 24"),i(fe,"fill","none"),i(fe,"stroke","currentColor"),i(fe,"stroke-width","2"),i(fe,"stroke-linecap","round"),i(fe,"stroke-linejoin","round"),i(fe,"class","svelte-n693km"),i(ee,"class","qa-btn svelte-n693km"),i(O,"class","quick-actions svelte-n693km"),i(e,"class","overview svelte-n693km")},m(He,Re){S(He,e,Re),a(e,t),a(t,s),a(e,o),a(e,r),a(r,c),a(c,u),a(c,m),a(m,_),a(r,h),a(r,b),a(b,g),a(b,y),a(y,T),a(r,j),a(r,N),a(N,D),a(N,E),a(E,M),a(e,R),a(e,O),a(O,V),a(V,K),a(K,J),a(K,q),a(V,W),a(V,G),a(O,L),a(O,H),a(H,z),a(z,U),a(H,$),a(H,ie),a(O,ne),a(O,le),a(le,oe),a(oe,ue),a(le,ge),a(le,Ne),a(O,X),a(O,ee),a(ee,fe),a(fe,be),a(fe,ve),a(ee,Me),a(ee,st),a(e,ct),Ve&&Ve.m(e,null),a(e,Te),Ie&&Ie.m(e,null),Pe||(Ce=[A(V,"click",l[216]),A(H,"click",l[217]),A(le,"click",l[193]),A(ee,"click",l[218])],Pe=!0)},p(He,Re){Re[0]&67108864&&n!==(n=He[26].title+"")&&B(s,n),Re[0]&67108864&&v!==(v=He[174](He[26].type)+"")&&B(_,v),Re[0]&67108864&&w!==(w=(He[26].section||"—")+"")&&B(T,w),Re[0]&67108864&&F!==(F=kt(He[26].createdAt)+"")&&B(M,F),He[28].length>0?Ve?Ve.p(He,Re):(Ve=dr(He),Ve.c(),Ve.m(e,Te)):Ve&&(Ve.d(1),Ve=null),He[31].length>0?Ie?Ie.p(He,Re):(Ie=pr(He),Ie.c(),Ie.m(e,null)):Ie&&(Ie.d(1),Ie=null)},i:x,o:x,d(He){He&&C(e),Ve&&Ve.d(),Ie&&Ie.d(),Pe=!1,_e(Ce)}}}function hp(l){let e,t=re(l[22]),n=[];for(let s=0;s0&&Ko(l);return{c(){e=f("div"),t=f("div"),n=f("div"),s=f("span"),r=P(o),c=k(),u=f("span"),v=P(m),_=k(),b=P(h),g=P(" · "),w=P(y),T=k(),j=f("div"),N=f("button"),N.textContent=`${p("suggest.edit")}`,D=k(),E=f("button"),E.textContent=`${p("worklog.apply")}`,F=k(),W&&W.c(),M=k(),i(s,"class","suggestion-summary svelte-n693km"),i(u,"class","suggestion-meta svelte-n693km"),i(n,"class","suggestion-info svelte-n693km"),i(N,"class","btn btn-sm svelte-n693km"),i(E,"class","btn btn-sm btn-primary svelte-n693km"),i(j,"class","suggestion-actions svelte-n693km"),i(t,"class","suggestion-main svelte-n693km"),i(t,"role","button"),i(t,"tabindex","0"),i(e,"class","suggestion-card svelte-n693km"),he(e,"expanded",l[438]._expanded)},m(Y,G){S(Y,e,G),a(e,t),a(t,n),a(n,s),a(s,r),a(n,c),a(n,u),a(u,v),a(u,_),a(u,b),a(u,g),a(u,w),a(t,T),a(t,j),a(j,N),a(j,D),a(j,E),a(e,F),W&&W.m(e,null),a(e,M),R||(O=[A(N,"click",Le(V)),A(E,"click",Le(K)),A(t,"click",J),A(t,"keydown",q)],R=!0)},p(Y,G){l=Y,G[0]&67108864|G[1]&1024&&o!==(o=l[438].summary+"")&&B(r,o),G[0]&67108864|G[1]&1024&&m!==(m=l[438].suggestedMin+"")&&B(v,m),G[0]&67108864|G[1]&1024&&y!==(y=p("suggest.confidence."+l[438].confidence)+"")&&B(w,y),l[438]._expanded&&l[438].events&&l[438].events.length>0?W?W.p(l,G):(W=Ko(l),W.c(),W.m(e,M)):W&&(W.d(1),W=null),G[0]&67108864|G[1]&1024&&he(e,"expanded",l[438]._expanded)},d(Y){Y&&C(e),W&&W.d(),R=!1,_e(O)}}}function bp(l){let e,t=re(l[31]),n=[];for(let s=0;s0?Tp:E[414].source==="suggestion"?Sp:E[414].source==="unknown"||E[414].source==="imported"?Cp:wp}let j=T(l),N=j(l),D=l[414].source==="suggestion"&&l[414]._events&&l[414]._events.length>0&&xo(l);return{c(){e=f("div"),t=f("div"),n=f("button"),n.textContent=`${p("worklog.editEntry")}`,s=k(),o=f("button"),o.textContent=`${p("worklog.deleteEntry")}`,r=k(),w&&w.c(),c=k(),u=f("div"),m=f("span"),m.textContent=`${p("worklog.source")}`,v=k(),N.c(),_=k(),D&&D.c(),i(n,"class","btn btn-sm svelte-n693km"),i(o,"class","btn btn-sm btn-danger svelte-n693km"),i(t,"class","worklog-entry-actions svelte-n693km"),i(m,"class","wl-detail-label svelte-n693km"),i(u,"class","wl-detail-section svelte-n693km"),i(e,"class","worklog-entry-detail svelte-n693km")},m(E,F){S(E,e,F),a(e,t),a(t,n),a(t,s),a(t,o),a(e,r),w&&w.m(e,null),a(e,c),a(e,u),a(u,m),a(u,v),N.m(u,null),a(e,_),D&&D.m(e,null),h||(b=[A(n,"click",Le(g)),A(o,"click",Le(y))],h=!0)},p(E,F){l=E,l[414].details?w?w.p(l,F):(w=Zo(l),w.c(),w.m(e,c)):w&&(w.d(1),w=null),j!==(j=T(l))&&(N.d(1),N=j(l),N&&(N.c(),N.m(u,null))),l[414].source==="suggestion"&&l[414]._events&&l[414]._events.length>0?D?D.p(l,F):(D=xo(l),D.c(),D.m(e,null)):D&&(D.d(1),D=null)},d(E){E&&C(e),w&&w.d(),N.d(),D&&D.d(),h=!1,_e(b)}}}function Zo(l){let e,t,n,s,o=l[414].details+"",r;return{c(){e=f("div"),t=f("span"),t.textContent=`${p("worklog.details")}`,n=k(),s=f("p"),r=P(o),i(t,"class","wl-detail-label svelte-n693km"),i(s,"class","svelte-n693km"),i(e,"class","wl-detail-section svelte-n693km")},m(c,u){S(c,e,u),a(e,t),a(e,n),a(e,s),a(s,r)},p(c,u){u[1]&1&&o!==(o=c[414].details+"")&&B(r,o)},d(c){c&&C(e)}}}function wp(l){let e;return{c(){e=f("p"),e.textContent=`${p("worklog.sourceUnknown")}`,i(e,"class","svelte-n693km")},m(t,n){S(t,e,n)},d(t){t&&C(e)}}}function Cp(l){let e;return{c(){e=f("p"),e.textContent=`${p("worklog.sourceUnknown")}`,i(e,"class","svelte-n693km")},m(t,n){S(t,e,n)},d(t){t&&C(e)}}}function Sp(l){let e;return{c(){e=f("p"),e.textContent=`${p("worklog.sourceSuggestionNoEvents")}`,i(e,"class","svelte-n693km")},m(t,n){S(t,e,n)},d(t){t&&C(e)}}}function Tp(l){let e;return{c(){e=f("p"),e.textContent=`${p("worklog.sourceSuggestion")}`,i(e,"class","svelte-n693km")},m(t,n){S(t,e,n)},d(t){t&&C(e)}}}function jp(l){let e;return{c(){e=f("p"),e.textContent=`${p("worklog.sourceManual")}`,i(e,"class","svelte-n693km")},m(t,n){S(t,e,n)},d(t){t&&C(e)}}}function xo(l){let e,t,n,s=re(l[414]._events),o=[];for(let r=0;r',N=k(),i(n,"class","action-title svelte-n693km"),i(c,"class","action-type svelte-n693km"),i(_,"class","action-data svelte-n693km"),i(t,"class","action-info svelte-n693km"),i(w,"class","btn btn-sm svelte-n693km"),i(j,"class","btn btn-sm btn-danger svelte-n693km"),i(y,"class","action-btns svelte-n693km"),i(e,"class","action-card svelte-n693km")},m(R,O){S(R,e,O),a(e,t),a(t,n),a(n,o),a(t,r),a(t,c),a(c,m),a(t,v),a(t,_),a(_,b),a(e,g),a(e,y),a(y,w),a(y,T),a(y,j),a(e,N),D||(E=[A(w,"click",F),A(j,"click",M)],D=!0)},p(R,O){l=R,O[0]&1073741824&&s!==(s=l[430].title+"")&&B(o,s),O[0]&1073741824&&u!==(u=l[197](l[430].type)+"")&&B(m,u),O[0]&1073741824&&h!==(h=l[430].data+"")&&B(b,h)},d(R){R&&C(e),D=!1,_e(E)}}}function Np(l){let e,t=re(l[47]),n=[];for(let s=0;s',b=k(),g=f("button"),g.innerHTML='',y=k(),w=f("button"),w.innerHTML='',T=k(),i(n,"class","inbox-item-title svelte-n693km"),i(c,"class","inbox-item-meta svelte-n693km"),i(t,"class","inbox-item-main svelte-n693km"),i(h,"class","inbox-icon-btn inbox-icon-btn-primary svelte-n693km"),i(h,"title",p("inbox.keepHere")),i(h,"aria-label",p("inbox.keepHere")),i(g,"class","inbox-icon-btn svelte-n693km"),i(g,"title",p("inbox.assign")),i(g,"aria-label",p("inbox.assign")),i(w,"class","inbox-icon-btn inbox-icon-btn-danger svelte-n693km"),i(w,"title",p("common.delete")),i(w,"aria-label",p("common.delete")),i(_,"class","inbox-item-actions svelte-n693km"),i(e,"class","inbox-item svelte-n693km"),i(e,"role","button"),i(e,"tabindex","0")},m(O,V){S(O,e,V),a(e,t),a(t,n),a(n,o),a(t,r),a(t,c),a(c,m),a(e,v),a(e,_),a(_,h),a(_,b),a(_,g),a(_,y),a(_,w),a(e,T),j||(N=[A(h,"click",Le(D)),A(g,"click",Le(E)),A(w,"click",Le(F)),A(e,"click",M),A(e,"keydown",R)],j=!0)},p(O,V){l=O,V[1]&8192&&s!==(s=l[422].title+"")&&B(o,s),V[1]&8192&&u!==(u=l[175](l[422])+"")&&B(m,u)},d(O){O&&C(e),j=!1,_e(N)}}}function rr(l){let e,t=p("common.paste")+"",n,s,o=l[78].items.length+"",r,c,u;return{c(){e=f("button"),n=P(t),s=k(),r=P(o),i(e,"class","btn svelte-n693km")},m(m,v){S(m,e,v),a(e,n),a(e,s),a(e,r),c||(u=A(e,"click",l[118]),c=!0)},p(m,v){v[2]&65536&&o!==(o=m[78].items.length+"")&&B(r,o)},d(m){m&&C(e),c=!1,u()}}}function Lp(l){let e,t,n,s,o,r,c;const u=[Rp,Pp],m=[];function v(g,y){return g[72].length>0?0:1}e=v(l),t=m[e]=u[e](l);const _=[Op,zp],h=[];function b(g,y){return g[73].length===0?0:1}return s=b(l),o=h[s]=_[s](l),{c(){t.c(),n=k(),o.c(),r=vt()},m(g,y){m[e].m(g,y),S(g,n,y),h[s].m(g,y),S(g,r,y),c=!0},p(g,y){let w=e;e=v(g),e===w?m[e].p(g,y):(pt(),me(m[w],1,1,()=>{m[w]=null}),_t(),t=m[e],t?t.p(g,y):(t=m[e]=u[e](g),t.c()),ce(t,1),t.m(n.parentNode,n));let T=s;s=b(g),s===T?h[s].p(g,y):(pt(),me(h[T],1,1,()=>{h[T]=null}),_t(),o=h[s],o?o.p(g,y):(o=h[s]=_[s](g),o.c()),ce(o,1),o.m(r.parentNode,r))},i(g){c||(ce(t),ce(o),c=!0)},o(g){me(t),me(o),c=!1},d(g){g&&(C(n),C(r)),m[e].d(g),h[s].d(g)}}}function Fp(l){let e,t;return{c(){e=f("div"),t=f("p"),t.textContent=`${p("common.loading")}`,i(t,"class","svelte-n693km"),i(e,"class","empty-state svelte-n693km")},m(n,s){S(n,e,s),a(e,t)},p:x,i:x,o:x,d(n){n&&C(e)}}}function Pp(l){let e,t;return e=new sa({props:{crumbs:[{name:p("file.root")}]}}),{c(){Xe(e.$$.fragment)},m(n,s){Je(e,n,s),t=!0},p:x,i(n){t||(ce(e.$$.fragment,n),t=!0)},o(n){me(e.$$.fragment,n),t=!1},d(n){qe(e,n)}}}function Rp(l){let e,t,n,s,o,r,c,u=p("common.backLabel")+"",m,v,_,h;return e=new sa({props:{crumbs:[{name:p("file.root")},...l[72]]}}),e.$on("navigate",l[225]),{c(){Xe(e.$$.fragment),t=k(),n=f("button"),s=Q("svg"),o=Q("line"),r=Q("polyline"),c=k(),m=P(u),i(o,"x1","19"),i(o,"y1","12"),i(o,"x2","5"),i(o,"y2","12"),i(o,"class","svelte-n693km"),i(r,"points","12 19 5 12 12 5"),i(r,"class","svelte-n693km"),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-n693km"),i(n,"class","btn btn-sm back-btn svelte-n693km")},m(b,g){Je(e,b,g),S(b,t,g),S(b,n,g),a(n,s),a(s,o),a(s,r),a(n,c),a(n,m),v=!0,_||(h=A(n,"click",l[109]),_=!0)},p(b,g){const y={};g[2]&1024&&(y.crumbs=[{name:p("file.root")},...b[72]]),e.$set(y)},i(b){v||(ce(e.$$.fragment,b),v=!0)},o(b){me(e.$$.fragment,b),v=!1},d(b){b&&(C(t),C(n)),qe(e,b),_=!1,h()}}}function zp(l){let e,t=[],n=new Map,s,o=re(l[73]);const r=c=>c[422].id;for(let c=0;c0?p("file.noFiles"):p("file.noFilesCase"))+"",r,c,u,m,v,_,h,b,g,y;return{c(){e=f("div"),t=f("div"),t.innerHTML='',n=k(),s=f("p"),r=P(o),c=k(),u=f("p"),u.textContent=`${p("file.hint")}`,m=k(),v=f("div"),_=f("button"),_.textContent=`${p("file.addFileSimple")}`,h=k(),b=f("button"),b.textContent=`${p("file.addFolderSimple")}`,i(t,"class","empty-icon svelte-n693km"),i(s,"class","svelte-n693km"),i(u,"class","hint svelte-n693km"),i(_,"class","btn btn-primary svelte-n693km"),i(b,"class","btn svelte-n693km"),i(v,"class","empty-actions svelte-n693km"),i(e,"class","empty-state svelte-n693km")},m(w,T){S(w,e,T),a(e,t),a(e,n),a(e,s),a(s,r),a(e,c),a(e,u),a(e,m),a(e,v),a(v,_),a(v,h),a(v,b),g||(y=[A(_,"click",l[168]),A(b,"click",l[169])],g=!0)},p(w,T){T[2]&1024&&o!==(o=(w[72].length>0?p("file.noFiles"):p("file.noFilesCase"))+"")&&B(r,o)},i:x,o:x,d(w){w&&C(e),g=!1,_e(y)}}}function ar(l,e){let t,n,s;return n=new Nd({props:{item:e[422],selected:e[79].includes(e[422].id),onDragStart:e[122],onDragOver:e[123],onDrop:e[124]}}),n.$on("navigate",e[226]),n.$on("preview",e[227]),n.$on("openExternal",e[228]),n.$on("showInFolder",e[229]),n.$on("delete",e[230]),n.$on("rename",e[231]),n.$on("duplicate",e[232]),n.$on("cut",e[233]),n.$on("copy",e[234]),n.$on("selectOne",e[235]),n.$on("toggleSelect",e[236]),n.$on("rangeSelect",e[237]),{key:l,first:null,c(){t=vt(),Xe(n.$$.fragment),this.first=t},m(o,r){S(o,t,r),Je(n,o,r),s=!0},p(o,r){e=o;const c={};r[2]&2048&&(c.item=e[422]),r[2]&133120&&(c.selected=e[79].includes(e[422].id)),n.$set(c)},i(o){s||(ce(n.$$.fragment,o),s=!0)},o(o){me(n.$$.fragment,o),s=!1},d(o){o&&C(t),qe(n,o)}}}function cr(l){let e,t;return{c(){e=f("div"),t=f("p"),t.textContent=`${p("file.scanning")}`,i(t,"class","svelte-n693km"),i(e,"class","empty-state svelte-n693km")},m(n,s){S(n,e,s),a(e,t)},d(n){n&&C(e)}}}function ur(l){let e,t,n,s,o,r,c,u,m;return{c(){e=f("div"),t=f("input"),n=k(),s=f("div"),o=f("button"),o.textContent=`${p("common.create")}`,r=k(),c=f("button"),c.textContent=`${p("common.cancel")}`,i(t,"type","text"),i(t,"placeholder",p("note.title")),i(t,"class","svelte-n693km"),i(o,"class","btn btn-primary svelte-n693km"),i(c,"class","btn svelte-n693km"),i(s,"class","form-actions svelte-n693km"),i(e,"class","create-form svelte-n693km")},m(v,_){S(v,e,_),a(e,t),ke(t,l[60]),a(e,n),a(e,s),a(s,o),a(s,r),a(s,c),u||(m=[A(t,"input",l[221]),A(t,"keydown",l[222]),A(o,"click",l[148]),A(c,"click",l[147])],u=!0)},p(v,_){_[1]&536870912&&t.value!==v[60]&&ke(t,v[60])},d(v){v&&C(e),u=!1,_e(m)}}}function Vp(l){let e,t=re(l[28]),n=[];for(let s=0;sme($[ie],1,1,()=>{$[ie]=null});return{c(){e=f("div"),t=f("div"),n=f("h3"),n.textContent=`${p("nav.createNode")}`,s=k(),z&&z.c(),o=k(),r=f("div"),c=f("span"),c.textContent=`${p("template.select")}`,u=k(),m=f("div"),v=f("button"),Xe(_.$$.fragment),h=k(),b=f("div"),g=f("span"),g.textContent=`${p("template.optionNone")}`,y=k(),w=f("span"),w.textContent=`${p("template.none.desc")}`,T=k();for(let ie=0;ie<$.length;ie+=1)$[ie].c();j=k(),N=f("div"),D=f("label"),E=f("span"),E.textContent=`${p("common.name")}`,F=k(),M=f("input"),R=k(),O=f("div"),V=f("button"),J=P(K),W=k(),Y=f("button"),Y.textContent=`${p("common.cancel")}`,i(n,"class","svelte-n693km"),i(c,"class","form-label svelte-n693km"),i(g,"class","template-card-title svelte-n693km"),i(w,"class","template-card-desc svelte-n693km"),i(b,"class","template-card-text svelte-n693km"),i(v,"class","template-card svelte-n693km"),he(v,"selected",l[57]===null),i(m,"class","template-cards svelte-n693km"),i(m,"role","group"),i(m,"aria-label",p("template.select")),i(r,"class","form-group svelte-n693km"),i(E,"class","label-text svelte-n693km"),i(M,"type","text"),i(M,"placeholder",p("case.namePlaceholder")),i(M,"class","svelte-n693km"),i(D,"class","svelte-n693km"),i(N,"class","form-group svelte-n693km"),i(V,"class","btn btn-primary svelte-n693km"),V.disabled=q=!l[55].trim()||l[57]===void 0,i(Y,"class","btn svelte-n693km"),i(O,"class","modal-actions svelte-n693km"),i(t,"class","modal modal-create svelte-n693km"),i(e,"class","modal-overlay svelte-n693km"),i(e,"role","button"),i(e,"tabindex","0")},m(ie,ne){S(ie,e,ne),a(e,t),a(t,n),a(t,s),z&&z.m(t,null),a(t,o),a(t,r),a(r,c),a(r,u),a(r,m),a(m,v),Je(_,v,null),a(v,h),a(v,b),a(b,g),a(b,y),a(b,w),a(m,T);for(let le=0;le<$.length;le+=1)$[le]&&$[le].m(m,null);a(t,j),a(t,N),a(N,D),a(D,E),a(D,F),a(D,M),ke(M,l[55]),a(t,R),a(t,O),a(O,V),a(V,J),a(O,W),a(O,Y),G=!0,L||(H=[A(v,"click",l[315]),A(M,"input",l[317]),A(M,"keydown",l[318]),A(V,"click",l[133]),A(Y,"click",l[132]),A(e,"click",bt(l[132])),A(e,"keydown",ht(l[132]))],L=!0)},p(ie,ne){if(ie[56]?z?z.p(ie,ne):(z=hr(ie),z.c(),z.m(t,o)):z&&(z.d(1),z=null),(!G||ne[1]&67108864)&&he(v,"selected",ie[57]===null),ne[0]&64|ne[1]&67108864){U=re(ie[6]);let le;for(le=0;le{g=null}),_t()),w[58].node&&w[58].node.parent_id?y?y.p(w,T):(y=Cr(w),y.c(),y.m(t,o)):y&&(y.d(1),y=null),(!_||T[1]&134217728)&>(t,"left",w[58].x+"px"),(!_||T[1]&134217728)&>(t,"top",w[58].y+"px")},i(w){_||(ce(g),_=!0)},o(w){me(g),_=!1},d(w){w&&C(e),g&&g.d(),y&&y.d(),h=!1,_e(b)}}}function yr(l){let e,t,n,s,o,r=re(l[6].length>0?l[6]:[{id:"",title:"template.optionNone",icon:"folder"}]),c=[];for(let m=0;mme(c[m],1,1,()=>{c[m]=null});return{c(){e=f("div"),e.textContent=`${p("common.create")}`,t=k();for(let m=0;m0?m[6]:[{id:"",title:"template.optionNone",icon:"folder"}]);let _;for(_=0;_l[332].call(y)),i(h,"class","svelte-n693km"),i(_,"class","form-group svelte-n693km"),i(N,"class","label-text svelte-n693km"),i(M,"type","text"),i(M,"placeholder",R=l[63]==="open_url"?p("action.urlPlaceholder"):l[63]==="open_folder"||l[63]==="open_file"?p("action.pathPlaceholder"):p("action.commandPlaceholder")),i(M,"class","svelte-n693km"),i(j,"class","svelte-n693km"),i(T,"class","form-group svelte-n693km"),i(K,"class","btn btn-primary svelte-n693km"),i(q,"class","btn svelte-n693km"),i(V,"class","modal-actions svelte-n693km"),i(t,"class","modal svelte-n693km"),i(e,"class","modal-overlay svelte-n693km"),i(e,"role","button"),i(e,"tabindex","0")},m(H,z){S(H,e,z),a(e,t),a(t,n),a(t,s),a(t,o),a(o,r),a(r,c),a(r,u),a(r,m),ke(m,l[62]),a(t,v),a(t,_),a(_,h),a(h,b),a(h,g),a(h,y);for(let U=0;U0&&Ar(l),K=l[96]&&Fr();return{c(){e=f("div"),t=f("div"),n=f("h3"),n.textContent=`${p("inbox.assignTitle")}`,s=k(),o=f("div"),c=P(r),u=k(),m=f("div"),v=f("label"),_=f("span"),_.textContent=`${p("inbox.assignTarget")}`,h=k(),b=f("input"),g=k(),V&&V.c(),y=k(),K&&K.c(),w=k(),T=f("div"),j=f("button"),D=P(N),F=k(),M=f("button"),M.textContent=`${p("common.cancel")}`,i(n,"class","svelte-n693km"),i(o,"class","create-context svelte-n693km"),i(_,"class","label-text svelte-n693km"),i(b,"type","text"),i(b,"placeholder",p("inbox.assignSearchPlaceholder")),i(b,"class","svelte-n693km"),i(v,"class","svelte-n693km"),i(m,"class","form-group assign-search svelte-n693km"),i(j,"class","btn btn-primary svelte-n693km"),j.disabled=E=!l[95],i(M,"class","btn svelte-n693km"),i(T,"class","modal-actions svelte-n693km"),i(t,"class","modal svelte-n693km"),i(e,"class","modal-overlay svelte-n693km"),i(e,"role","button"),i(e,"tabindex","0")},m(J,q){S(J,e,q),a(e,t),a(t,n),a(t,s),a(t,o),a(o,c),a(t,u),a(t,m),a(m,v),a(v,_),a(v,h),a(v,b),ke(b,l[93]),a(m,g),V&&V.m(m,null),a(t,y),K&&K.m(t,null),a(t,w),a(t,T),a(T,j),a(j,D),a(T,F),a(T,M),R||(O=[A(b,"input",l[338]),A(b,"input",l[182]),A(b,"keydown",l[339]),A(j,"click",l[184]),A(M,"click",l[181]),A(e,"click",bt(l[181])),A(e,"keydown",ht(l[181]))],R=!0)},p(J,q){q[2]&1073741824&&r!==(r=J[92].title+"")&&B(c,r),q[3]&1&&b.value!==J[93]&&ke(b,J[93]),J[94].length>0?V?V.p(J,q):(V=Ar(J),V.c(),V.m(m,null)):V&&(V.d(1),V=null),J[96]?K||(K=Fr(),K.c(),K.m(t,w)):K&&(K.d(1),K=null),q[3]&4&&E!==(E=!J[95])&&(j.disabled=E)},d(J){J&&C(e),V&&V.d(),K&&K.d(),R=!1,_e(O)}}}function Ar(l){let e,t=re(l[94]),n=[];for(let s=0;s{r[v]=null}),_t(),t=r[e],t?t.p(u,m):(t=r[e]=o[e](u),t.c()),ce(t,1),t.m(n.parentNode,n))},i(u){s||(ce(t),s=!0)},o(u){me(t),s=!1},d(u){u&&C(n),r[e].d(u)}}}function te(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 _n(l){return!l||!(l instanceof Element)?!1:!!l.closest('input, textarea, select, [contenteditable="true"], [contenteditable=""]')}function ul(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&&ul(n.children,e,t))return!0}return!1}function ra(l){return(l==null?void 0:l.sourceKind)||(l==null?void 0:l.captureKind)||(l==null?void 0:l.type)||""}function Wr(l){return ra(l)!=="url"&&(l==null?void 0:l.type)!=="link"}function Up(l,e){return{id:l.id,nodeId:l.id,fileId:e.id||e.fileId,name:e.name||l.title,type:"file",size:e.size||0,mime:e.mime||""}}function aa(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&&aa(n.children,e,t))return!0}return!1}function cn(l){return l.eventIds&&l.eventIds.length?l.eventIds:l.events&&l.events.length?l.events.map(e=>e.id).filter(Boolean):[]}function El(l){try{te("WriteDebugLog",l)}catch{}}function un(l){return l?l.map(e=>(e._expanded===void 0&&(e._expanded=!1),e)):[]}function dt(l){return l?new Date(l).toLocaleTimeString("ru-RU",{hour:"2-digit",minute:"2-digit"}):""}function ll(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 kt(l){if(!l)return"";try{return new Date(l).toLocaleDateString("ru-RU",{day:"numeric",month:"short"})}catch{return l}}function fn(l){const e=String(l||"").trim();if(!e||/[\s]/.test(e)||e.includes("@"))return"";try{const t=new URL(e);return(t.protocol==="http:"||t.protocol==="https:")&&t.hostname?e:""}catch{try{const n=`https://${e}`,s=new URL(n);return s.hostname&&s.hostname.includes(".")?n:""}catch{return""}}}function Bp(l){return{"image/png":"png","image/jpeg":"jpg","image/gif":"gif","image/webp":"webp"}[l]||"bin"}function Kp(l){return new Promise((e,t)=>{const n=new FileReader;n.onload=()=>{const s=String(n.result||""),o=s.indexOf(",");e(o>=0?s.slice(o+1):s)},n.onerror=()=>t(n.error),n.readAsDataURL(l)})}function Gp(l){const e=String(l||"").split(/\r?\n/).map(t=>t.trim()).filter(Boolean);return e.length?{url:e[0],title:e[1]||""}:null}function Jp(l){return String(l||"").split(/\r?\n/).map(t=>t.trim()).filter(t=>t&&!t.startsWith("#"))[0]||""}function Hr(l){const e=Array.from((l==null?void 0:l.types)||[]);return e.includes("Files")||e.includes("text/uri-list")||e.includes("text/x-moz-url")||e.includes("text/plain")&&!e.includes("application/x-verstak-node")}function qp(l){return["case","client","project","folder","document","recipe"].includes(l.type)}function It(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 Yp(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 ht(l){return e=>{_n(e.target)||(e.key==="Enter"||e.key===" ")&&(e.preventDefault(),l())}}function Qp(l,e,t){let n=null,s=!1,o=!1,r=!1,c=!1,u=[],m=[],v=[],_=null,h=[],b=0,g=!0,y=[],w=null,T="",j="",N=!1,D="",E="all",F="all",M="",R="",O="",V=[],K=!1,J=[],q="",W="";function Y(d){return{"vault not open":p("error.vaultNotOpen")}[d]||d}let G="",L=null,H="overview",z=[],U=null,$=[],de=[],ie=[],ne=!1,le="",oe="",ue="",ge="",Ue=!1,Ne=!1,X=null,ee=null,fe=[],be=0,ve=[],Me=[],Ke=!1,st="",ct=[],Te=null,Pe="",Ce="",Ve="",Ie="",He=null,Re=!1,Oe="",je=null,ye=null,Fe={visible:!1,x:0,y:0,node:null},We=!1,$e="",Se=!1,pe="",Ee="open_url",Ye="",lt=[{id:"open_url",label:p("action.openUrl")},{id:"open_file",label:p("action.openFile")},{id:"open_folder",label:p("action.openFolder")},{id:"run_command",label:p("action.runCommand")},{id:"run_script",label:p("action.runScript")},{id:"open_terminal",label:p("action.openTerminal")},{id:"launch_app",label:p("action.launchApp")}],xe=!0,Ge=!1,Qe=null,et=!1,nt="",it="",se={},we=!1,Be=null,Ze=[],tt=[],ut=null,Ct="",Fl=!1,ml="",yt={items:[],mode:"copy"},ze=[],nl=[],Pl=!1,sl=!1,pl=!1,bn="",Rl=!1,yn="",wn="",Cn=!1,Sn=p("common.delete"),_l=null,vl=null,kl=!1,hl="",Bt="",Kt="",Tt=null,jt="",At=[],Et=null,gl=!1,Tn,zl=null,Ol=!1,il="",bl="";const ca=[{id:"overview",label:p("tab.overview")},{id:"notes",label:p("tab.notes")},{id:"files",label:p("tab.files")},{id:"links",label:p("tab.links")},{id:"actions",label:p("tab.actions")},{id:"activity",label:p("tab.activity"),group:"service"},{id:"worklog",label:p("tab.worklog"),group:"service"},{id:"inbox",label:p("tab.inbox"),group:"service"}];let Vl=null;Br(async()=>{try{if(t(0,n=await te("GetStartupStatus")),s=!0,n.status==="first_run"){t(1,o=!0),t(65,xe=!1);return}if(n.status==="recovery"){t(2,r=!0),t(65,xe=!1);return}}catch(d){t(24,W=String(d))}try{t(23,q=await te("VerstakVersion")||"verstak-gui/v2"),t(4,u=await te("ListSystemViews")||[]),t(5,m=await te("ListWorkspaceTree")||[]),t(6,v=await te("ListEnabledTemplates")||[])}catch(d){t(24,W=String(d)),t(4,u=[{id:"today",label:p("nav.today")},{id:"inbox",label:p("nav.inbox")},{id:"activity",label:p("nav.activity")}]),t(5,m=[]),t(6,v=[])}window.runtime&&window.runtime.EventsOn&&(window.runtime.EventsOn("files-dropped",Ka),Vl=()=>window.runtime.EventsOff("files-dropped")),window.addEventListener("keydown",zn),window.addEventListener("paste",ns),window.addEventListener("dragover",ss),window.addEventListener("dragleave",is),window.addEventListener("drop",os),t(65,xe=!1),nn()}),gn(()=>{Vl&&Vl(),window.removeEventListener("keydown",zn),window.removeEventListener("paste",ns),window.removeEventListener("dragover",ss),window.removeEventListener("dragleave",is),window.removeEventListener("drop",os)});async function jn(d){t(25,G=d),t(26,L=null),t(27,H="overview"),t(28,z=[]),$=[],t(30,de=[]),t(31,ie=[]),t(44,Me=[]),t(47,ct=[]),t(41,fe=[]),t(43,ve=[]),t(53,He=null),t(54,Re=!1),t(24,W=""),t(7,_=null),t(8,h=[]),b=0,g=!0,t(9,y=[]),t(10,w=null);try{d==="today"?(t(7,_=await te("ListTodayView")||{cases:[]}),t(41,fe=await te("GetSuggestions")||[]),t(42,be=fe.length)):d==="inbox"?t(43,ve=await te("ListInboxNodes")||[]):d==="trash"?t(53,He=await te("ListTrash")||{nodes:[],entries:[],trashPath:""}):d==="journal"?await Pt():d==="activity"&&(t(8,h=await te("ListActivityFeed",50,0)||[]),b=h.length,g=h.length===50)}catch(I){t(24,W=String(I)),t(7,_={cases:[]}),t(43,ve=[]),t(53,He=null),t(8,h=[])}}async function Lt(d){t(26,L=d),t(27,H="overview"),t(28,z=[]),$=[],t(30,de=[]),t(31,ie=[]),t(41,fe=[]),t(73,tt=[]),t(72,Ze=[]),t(71,Be=null),t(74,ut=null),t(75,Ct=""),t(79,ze=[]),nl=[],t(29,U=null),t(54,Re=!1),t(59,We=!1),t(24,W=""),t(22,J=[]),await yl(d.id)}async function yl(d){try{t(28,z=await te("ListNotes",d)||[])}catch{}try{$=await te("ListFiles",d)||[]}catch{}try{t(30,de=await te("ListActions",d)||[])}catch{}try{t(31,ie=un(await te("ListWorklog",d)))}catch{}try{t(44,Me=await te("ListInboxNodesForTarget",d)||[])}catch{t(44,Me=[])}try{t(47,ct=await te("ListLinks",d)||[])}catch{t(47,ct=[])}try{t(41,fe=await te("GetSuggestions")||[]),t(42,be=fe.length)}catch{t(41,fe=[]),t(42,be=0)}try{t(22,J=await te("ListActivityByNode",d,50,0)||[])}catch{}}async function ft(d){t(70,we=!0);try{let I=await te("ListItems",d)||[];I.sort((Z,ae)=>Z.type!==ae.type?Z.type==="folder"?-1:1:(Z.name||"").localeCompare(ae.name||"")),t(73,tt=I)}catch{t(73,tt=[])}t(70,we=!1)}async function Wl(d){if(!L)return;try{const Z=await te("GetNodeDetail",d);Z&&t(72,Ze=[...Ze,{id:d,name:Z.title}])}catch{t(72,Ze=[...Ze,{id:d,name:"..."}])}t(71,Be=d),t(69,se={...se,[d]:!0});const I=await te("ListWorkspaceChildren",d)||[];ul(m,d,I),t(5,m=[...m]),await ft(d)}function En(){if(Ze.length<2)t(72,Ze=[]),t(71,Be=null),ft(L.id);else{const d=Ze[Ze.length-2];t(72,Ze=Ze.slice(0,-1)),t(71,Be=d.id),ft(d.id)}}function Dn(d){const I=Ze[d];t(72,Ze=Ze.slice(0,d+1)),t(71,Be=I.id),ft(I.id)}async function ol(d){t(74,ut=d),t(75,Ct=""),t(77,ml=""),t(76,Fl=!0);try{yd(d)?t(75,Ct=await te("GetFileBase64",d.fileId)||""):wd(d)&&t(75,Ct=await te("ReadFileText",d.fileId)||"")}catch(I){t(77,ml=String(I))}t(76,Fl=!1)}function Hl(){t(74,ut=null),t(75,Ct=""),t(77,ml="")}async function ua(){const d=prompt(p("file.namePrompt"));if(!(!d||!d.trim()))try{const I=Be||L.id;await te("CreateEmptyFile",I,d.trim()),await ft(I),await Kl(I)}catch(I){t(24,W=String(I))}}async function Nn(d){try{await te("DuplicateNode",d);const I=Be||L.id;await ft(I),await Kl(I)}catch(I){t(24,W=String(I))}}function Mn(d){const I=tt.find(Z=>Z.id===d);I&&Bl(I.id,I.name)}function In(d){t(78,yt={items:[d],mode:"cut"})}function An(d){t(78,yt={items:[d],mode:"copy"})}async function Ln(){if(yt.items.length===0)return;const d=Be||L.id;try{if(yt.mode==="copy")for(const I of yt.items)await te("DuplicateNode",I);else for(const I of yt.items)await te("MoveNode",I,d);t(78,yt={items:[],mode:"copy"}),await ft(d)}catch(I){t(24,W=String(I))}}function Fn(d){ze.includes(d)?t(79,ze=ze.filter(I=>I!==d)):t(79,ze=[...ze,d])}function Pn(d){t(79,ze=[d])}function fa(){t(79,ze=tt.map(d=>d.id))}function Rn(d){if(tt.length===0)return;const I=ze.length>0?ze[ze.length-1]:tt[0].id,Z=tt.findIndex(wt=>wt.id===I),ae=tt.findIndex(wt=>wt.id===d);if(Z===-1||ae===-1)return;const Ae=Math.min(Z,ae),mt=Math.max(Z,ae),Xt=tt.slice(Ae,mt+1).map(wt=>wt.id),rl=new Set(ze);Xt.forEach(wt=>rl.add(wt)),t(79,ze=[...rl])}function da(){t(79,ze=[])}function Ul(d){return d.length>0?d:tt.map(I=>I.id)}async function ma(){const d=Ul(ze),I=tt.find(ae=>ae.id===d[0]);let Z;d.length===1&&(I==null?void 0:I.type)==="folder"?Z=p("delete.folder"):d.length===1?Z=p("delete.file"):Z=p("delete.files",{count:d.length}),Dt({title:p("delete.confirmTitle"),message:p("delete.confirmMessage")+" "+Z+"?",confirmText:p("common.delete"),danger:!0,onConfirm:async()=>{for(const Ae of d)try{await te("DeleteFileOrFolder",Ae)}catch(mt){t(24,W=String(mt))}t(79,ze=[]);const ae=Be||L.id;await ft(ae)}})}function pa(){const d=Ul(ze);t(78,yt={items:d,mode:"cut"}),t(79,ze=[])}function _a(){const d=Ul(ze);t(78,yt={items:d,mode:"copy"}),t(79,ze=[])}function va(d,I){d.stopPropagation();const Z=ze.includes(I)?ze:[I];nl=Z,d.dataTransfer.effectAllowed="move",d.dataTransfer.setData("text/plain",Z.join(","))}function ka(d,I){const Z=tt.find(ae=>ae.id===I);Z&&Z.type==="folder"&&(d.preventDefault(),d.stopPropagation(),d.dataTransfer.dropEffect="move")}async function ha(d,I){if(d.preventDefault(),d.stopPropagation(),nl.length!==0){for(const Z of nl)try{await te("MoveNode",Z,I)}catch(ae){t(24,W=String(ae))}nl=[],t(79,ze=[]),await ft(Be||L.id)}}function zn(d){if(!_n(d.target)&&H==="files")if(d.ctrlKey||d.metaKey)d.key==="c"||d.key==="C"?(d.preventDefault(),_a()):d.key==="x"||d.key==="X"?(d.preventDefault(),pa()):d.key==="v"||d.key==="V"?(d.preventDefault(),Ln()):d.key==="a"||d.key==="A"?(d.preventDefault(),fa()):d.key==="o"||d.key==="O"?(d.preventDefault(),ga()):d.key==="Enter"&&(d.preventDefault(),On());else if(d.key==="Enter")d.preventDefault(),On();else if(d.key==="Delete"||d.key==="Backspace"){if(ut){d.preventDefault(),Hl();return}if(ze.length>0){d.preventDefault(),ma();return}if(d.key==="Backspace"&&Ze.length>0){d.preventDefault(),En();return}}else if(d.key==="Escape"){if(ut){Hl();return}if(ze.length>0){da();return}}else d.key==="F2"&&(d.preventDefault(),ba())}function On(){if(ze.length===1){const d=tt.find(I=>I.id===ze[0]);d&&(d.type==="folder"?Wl(d.id):ol(d))}}function ga(){if(ze.length===1){const d=tt.find(I=>I.id===ze[0]);d&&d.fileId&&te("OpenFile",d.fileId)}}function Bl(d,I){hl=d,t(90,Bt=I),t(91,Kt=""),t(89,kl=!0)}function ba(){if(ze.length===1){const d=tt.find(I=>I.id===ze[0]);d&&Bl(d.id,d.name)}}async function Vn(){const d=Bt.trim();if(!d){t(91,Kt=p("rename.emptyError"));return}try{await te("ValidateName",d)}catch{t(91,Kt=p("rename.invalidError"));return}t(89,kl=!1);const I=hl;hl="";try{await te("RenameNode",I,d),L&&L.id===I&&t(26,L={...L,title:d}),await qt(),Be&&await ft(Be)}catch(Z){t(24,W=String(Z))}}function ya(){t(89,kl=!1),hl="",t(90,Bt=""),t(91,Kt="")}function wa(d){d.key==="Enter"?Vn():t(91,Kt="")}function Dt(d){t(85,yn=d.title||p("common.confirm")),t(86,wn=d.message||""),t(87,Cn=d.danger!==void 0?d.danger:!0),t(88,Sn=d.confirmText||p("common.delete")),_l=d.onConfirm||null,vl=d.onCancel||null,t(84,Rl=!0)}function Wn(){t(84,Rl=!1),_l=null,vl=null}function Ca(){_l&&_l(),Wn()}function Sa(){vl&&vl(),Wn()}function Hn(d){t(56,je=Fe.node),t(57,ye=d),t(55,Oe=""),t(54,Re=!0),Gt()}function Ta(){t(56,je=null),t(57,ye=void 0),t(55,Oe=""),t(54,Re=!0)}function ja(){t(54,Re=!1),t(55,Oe=""),t(56,je=null),t(57,ye=void 0)}async function Un(){if(!(!Oe.trim()||ye===void 0))try{const d=je?je.id:"",I=ye?ye.id:"",Z=await te("CreateNodeFromTemplate",d,Oe.trim(),I);t(54,Re=!1),t(55,Oe="");const ae=Z?Z.id:null;if(t(56,je=null),t(57,ye=void 0),d){t(69,se={...se,[d]:!0});const Ae=await te("ListWorkspaceChildren",d)||[];ul(m,d,Ae),t(5,m=[...m])}else t(5,m=await te("ListWorkspaceTree")||m);if(ae){const Ae=await te("GetNodeDetail",ae);Ae&&(t(25,G=""),Lt(Ae))}}catch(d){t(24,W=String(d))}}function Ea(d,I){t(58,Fe={visible:!0,x:d.clientX,y:d.clientY,node:I})}function Gt(){t(58,Fe={visible:!1,x:0,y:0,node:null})}async function Da(d){const I=!se[d];if(t(69,se={...se,[d]:I}),!I)return;const Z=await te("ListWorkspaceChildren",d)||[];ul(m,d,Z),t(5,m=[...m])}async function Na(d,I){if(!(!d||!I||d===I))try{const Z=await te("MoveNode",d,I);await qt();const ae=await te("GetNodeDetail",d);ae&&(t(25,G=""),Lt(ae))}catch(Z){t(24,W=String(Z))}}async function Ma(d){d.preventDefault(),d.stopPropagation();try{const I=d.dataTransfer.getData("text/plain");if(!I)return;const Z=await te("GetNodeDetail",I);if(!Z||!Z.parent_id)return;await te("MoveNode",I,""),await qt();const ae=await te("GetNodeDetail",I);ae&&(t(25,G=""),Lt(ae))}catch(I){t(24,W=String(I))}}function Ia(d){d.preventDefault(),d.dataTransfer.dropEffect="move",t(80,Pl=!0)}function Aa(d){t(80,Pl=!1)}function Bn(d){Bl(d.id,d.title),Gt()}function Kn(d){Gt(),Dt({title:p("delete.confirmTitle"),message:p("delete.confirmMessage")+" "+d.title+"?",confirmText:p("common.delete"),danger:!0,onConfirm:async()=>{try{await te("DeleteNode",d.id),await qt(),L&&L.id===d.id&&t(26,L=null)}catch(I){t(24,W=String(I))}}})}async function Ft(d){Gt();const I=typeof d=="string"?d:d.id;try{await te("OpenFolder",I)}catch(Z){t(24,W=String(Z))}}async function Jt(d){const I=ra(d);try{if(I==="url"||d.type==="link"){if(!d.url)throw new Error("url required");await te("OpenURL",d.url);return}if(I==="text"||d.type==="note"){const Z=await te("ReadNote",d.id);t(29,U={id:d.id,title:d.title,content:Z||"",dirty:!1});return}if(I==="folder"||d.type==="folder"){t(25,G=""),t(26,L=d),t(27,H="files"),t(72,Ze=[]),t(71,Be=null),t(79,ze=[]),t(74,ut=null),await yl(d.id),await ft(d.id);return}if(I==="file"||I==="image"||d.type==="file"){const ae=(await te("ListFiles",d.id)||[])[0];if(!ae)throw new Error("file record not found");const Ae=Up(d,ae);js(Ae)?await ol(Ae):await te("OpenFile",Ae.fileId);return}await St(d.id)}catch(Z){t(24,W=String(Z))}}async function Gn(d){Gt();try{await te("MoveNode",d.id,""),await qt();const I=await te("GetNodeDetail",d.id);I&&(t(25,G=""),Lt(I))}catch(I){t(24,W=String(I))}}async function qt(){const d=Object.keys(se).filter(Z=>se[Z]),I=await te("ListWorkspaceTree")||[];for(const Z of d){const Ae=(await te("ListWorkspaceChildren",Z)||[]).map(mt=>({...mt}));aa(I,Z,Ae)}t(5,m=I)}async function Kl(d){const I=await te("ListWorkspaceChildren",d)||[];ul(m,d,I),t(5,m=[...m])}function Jn(){t(59,We=!0),t(60,$e="")}function La(){t(59,We=!1),t(60,$e="")}async function qn(){if(!(!$e.trim()||!L))try{const d=await te("CreateNote",L.id,$e.trim());t(28,z=[...z,d&&d.id?d:{id:Date.now().toString(),title:$e.trim(),createdAt:new Date().toISOString()}]),t(59,We=!1),t(60,$e="")}catch{const I={id:Date.now().toString(),title:$e.trim(),createdAt:new Date().toISOString()};t(28,z=[...z,I]),t(59,We=!1),t(60,$e="")}}async function Yt(d){if(U&&U.dirty){Dt({title:p("note.unsavedTitle"),message:p("note.unsavedMessage"),confirmText:p("note.unsavedClose"),danger:!1,onConfirm:async()=>{await Yn(d)}});return}await Yn(d)}async function Yn(d){try{const I=await te("ReadNote",d.id);t(29,U={id:d.id,title:d.title,content:I||"",dirty:!1})}catch{t(29,U={id:d.id,title:d.title,content:"# "+d.title+` - -`,dirty:!1})}}function Fa(){if(U&&U.dirty){Dt({title:p("note.unsavedTitle"),message:p("note.unsavedMessage"),confirmText:p("note.unsavedClose"),danger:!1,onConfirm:()=>{t(29,U=null)}});return}t(29,U=null)}function Pa(d){U&&(t(29,U.content=d.target.value,U),t(29,U.dirty=!0,U))}async function Ra(){if(U)try{await te("SaveNote",U.id,U.content),t(29,U.dirty=!1,U)}catch{t(29,U.dirty=!1,U)}}function wl(d=null){t(39,X=d),t(40,ee=null),t(33,le=d?d.summary:""),t(34,oe=d?String(d.minutes||""):""),t(35,ue=d&&d.date||""),t(36,ge=d&&d.details||""),t(37,Ue=d?!!d.billable:!1),t(38,Ne=d?!!d.approximate:!1),t(32,ne=!0)}function za(){t(32,ne=!1),t(39,X=null),t(40,ee=null)}async function Gl(d=""){const I=d||(L?L.id:"");L&&L.id===I&&t(31,ie=un(await te("ListWorklog",L.id))||ie),G==="journal"&&await Pt()}async function Oa(){const d=parseInt(oe,10);if(!(!le.trim()||isNaN(d)||d<=0)&&!(!ee&&!X&&!L)){try{if(ee){const I=JSON.stringify(cn(ee));await te("AcceptSuggestionFull",ee.nodeId,le.trim(),ge,ue,d,Ne,Ue,I),await ql()}else X?(await te("UpdateWorklogEntry",X.id,le.trim(),ge,ue,d,Ne,Ue),await Gl(X.nodeId)):(await te("CreateWorklogFull",L.id,le.trim(),ge,ue,d,Ne,Ue),await Gl(L.id))}catch(I){t(24,W=String(I));return}t(32,ne=!1),t(39,X=null),t(40,ee=null)}}function Jl(d){Dt({title:p("worklog.deleteEntry"),message:p("worklog.deleteConfirm"),confirmText:p("common.delete"),danger:!0,onConfirm:async()=>{try{await te("DeleteWorklogEntry",d.id),await Gl(d.nodeId)}catch(I){t(24,W=String(I))}}})}async function ql(){t(41,fe=await te("GetSuggestions")||[]),t(42,be=fe.length),L&&t(31,ie=un(await te("ListWorklog",L.id))),G==="journal"&&await Pt()}function Cl(d){t(40,ee=d),t(39,X=null),t(33,le=d.summary||""),t(34,oe=String(d.suggestedMin||"")),t(35,ue=""),t(36,ge=""),t(37,Ue=!1),t(38,Ne=!0),t(32,ne=!0)}async function Yl(d){try{const I=cn(d),Z=JSON.stringify(I);El("acceptTodaySuggestion: nodeId="+d.nodeId+" eventIds="+Z+" events="+JSON.stringify((d.events||[]).map(ae=>({id:ae.id,type:ae.eventType,title:ae.title})))),await te("AcceptSuggestionWith",d.nodeId,d.summary,d.suggestedMin,"",Z),await ql()}catch(I){El("acceptTodaySuggestion error: "+I)}}async function Qn(d){try{const I=cn(d),Z=JSON.stringify(I);El("acceptJournalSuggestion: nodeId="+d.nodeId+" eventIds="+Z+" events="+JSON.stringify((d.events||[]).map(ae=>({id:ae.id,type:ae.eventType,title:ae.title})))),await te("AcceptSuggestionWith",d.nodeId,d.summary,d.suggestedMin,"",Z),await ql()}catch(I){El("acceptJournalSuggestion error: "+I)}}async function Pt(){try{const[d,I,Z]=await Promise.all([te("ListWorklogReport",T,j,D,N,E,F),te("WorklogReportSummary",T,j,D,N,E,F),te("GetSuggestions")]);if(t(9,y=(d||[]).map(ae=>(ae._expanded===void 0&&(ae._expanded=!1),ae))),t(10,w=I||null),t(41,fe=Z||[]),t(42,be=fe.length),D&&!M)if(d&&d.length>0&&d[0].nodePath)t(17,M=d[0].nodePath);else try{t(17,M=await te("GetNodeTitle",D))}catch{t(17,M="")}}catch{t(9,y=[]),t(10,w=null),t(41,fe=[]),t(42,be=0)}}async function Sl(d){try{const I=await te("SaveWorklogReport",d,T,j,D,N,E,F);t(18,R=I),setTimeout(()=>t(18,R=""),4e3)}catch(I){if(String(I).includes("отменено"))return;t(18,R="Ошибка: "+String(I)),setTimeout(()=>t(18,R=""),6e3)}}let Xn;async function Ql(d){if(d._expanded=!d._expanded,t(9,y),d._expanded&&!d._events&&d._hasEvents===void 0)try{d._events=await te("GetWorklogEntryEvents",d.id)||[],d._hasEvents=d._events.length>0,t(9,y)}catch{d._events=[],d._hasEvents=!1,t(9,y)}}async function Xl(d){if(d._expanded=!d._expanded,d._expanded&&d.source==="suggestion"&&!d._events&&d._hasEvents===void 0)try{d._events=await te("GetWorklogEntryEvents",d.id)||[],d._hasEvents=d._events.length>0}catch(I){I._events=[],I._hasEvents=!1}t(31,ie)}async function Va(){const d=O.trim();if(!d||d.length<2){t(20,V=[]),t(21,K=!1);return}try{t(20,V=await te("SearchNodes",d)||[]),t(21,K=V.length>0)}catch{t(20,V=[]),t(21,K=!1)}}function Wa(){clearTimeout(Xn),Xn=setTimeout(Va,200)}function Zn(d){t(14,D=d.id),t(17,M=d.path||d.title),t(13,N=!0),t(19,O=""),t(20,V=[]),t(21,K=!1),Pt()}function xn(){t(14,D=""),t(13,N=!1),t(17,M=""),t(19,O=""),t(20,V=[]),t(21,K=!1),Pt()}function Ha(){t(11,T=""),t(12,j=""),t(14,D=""),t(13,N=!1),t(15,E="all"),t(16,F="all"),t(17,M=""),t(19,O=""),t(20,V=[]),t(21,K=!1),Pt()}async function $n(){const d=await te("PickFile");if(!d)return;const I=Be||L.id;await es(I,d)}async function Ua(){const d=await te("PickDirectory");if(!d)return;const I=Be||L.id;await es(I,d)}async function es(d,I){t(66,Ge=!0);try{const Z=await te("PreviewImport",I);t(67,Qe=Z),nt=I,it=d,t(68,et=!0)}catch(Z){t(24,W=String(Z))}t(66,Ge=!1)}async function Zl(d){try{const I=it||L.id,Z=d==="copy"?await te("AddPathCopy",I,nt):await te("AddPathLink",I,nt);t(68,et=!1),t(67,Qe=null),t(72,Ze=[]),t(71,Be=null),await Promise.all([yl(I),ft(I),Kl(I)])}catch(I){t(24,W=String(I))}}function Ba(){t(68,et=!1),t(67,Qe=null)}async function ts({id:d,type:I}){const Z=p(I==="folder"?"delete.folder":"delete.file");Dt({title:p("delete.confirmTitle"),message:p("delete.confirmMessage")+" "+Z+"?",confirmText:p("common.delete"),danger:!0,onConfirm:async()=>{try{await te("DeleteFileOrFolder",d),$=$.filter(Ae=>Ae.nodeId!==d);const ae=Be||L.id;await ft(ae)}catch(ae){t(24,W=String(ae))}}})}async function Ka(d){!d||d.length===0||await lc(d,"drop")}function Ga(d){return{note_created:p("event.noteCreated"),note_updated:p("event.noteUpdated"),note_deleted:"Заметка удалена",file_added:p("event.fileAdded"),file_deleted:p("event.fileDeleted"),file_renamed:p("event.fileRenamed"),file_copied:p("event.fileCopied"),file_moved:p("event.fileMoved"),folder_added:p("event.folderAdded"),folder_deleted:p("event.folderDeleted"),folder_renamed:p("event.folderRenamed"),folder_moved:"Папка перемещена",node_created:p("event.caseCreated"),node_updated:p("event.caseUpdated"),node_deleted:"Узел удалён",action_created:"Действие создано",action_done:"Действие выполнено",worklog_added:"Запись времени добавлена"}[d]||d}function Ja(d){return{project:p("kind.project"),client:p("kind.client"),document:p("kind.document"),recipe:p("kind.recipe"),folder:p("kind.folder"),note:p("kind.note"),file:p("kind.file"),archive:p("kind.archive"),case:p("kind.case"),link:p("kind.link")}[d]||d||p("kind.case")}function qa(d){return d?p("capture.kind."+d):""}function Ya(d){return d?p("capture.source."+d):""}function Qa(d){const I=[];return d.captureKind&&I.push(qa(d.captureKind)),d.captureSource&&I.push(Ya(d.captureSource)),d.captureContextLabel&&I.push(`${p("inbox.capturedIn")}: ${d.captureContextLabel}`),d.suggestedTargetLabel&&I.push(`${p("inbox.suggestedTarget")}: ${d.suggestedTargetLabel}`),I.push(kt(d.capturedAt||d.createdAt)),I.filter(Boolean).join(" · ")}function Xa(d){!d||!d.id||(t(43,ve=[d,...ve.filter(I=>I.id!==d.id)]),L&&(d.captureContextNodeId===L.id||d.suggestedTargetNodeId===L.id)&&t(44,Me=[d,...Me.filter(I=>I.id!==d.id)]))}function Za(){return L&&L.id?{contextType:"node",nodeId:L.id,suggestedTargetNodeId:L.id}:G?{contextType:"section",section:G}:{contextType:"global",section:"root"}}function Rt(){return JSON.stringify(Za())}function xa(){return L&&L.id?p("capture.dropOverlayNode",{title:L.title}):p("capture.dropOverlayGlobal")}async function Qt(d=null){d&&Xa(d),G==="inbox"&&t(43,ve=await te("ListInboxNodes")||ve)}async function $a(d,I){const Z=String(d||"").trim();if(!Z)return null;const ae=fn(Z),Ae=ae?await te("CaptureURLWithContext",ae,"",I,Rt()):await te("CaptureTextWithContext",Z,I,Rt());return await Qt(Ae),Ae}async function ls(d,I,Z){const ae=String(d||"").trim();if(!ae)return null;const Ae=await te("CaptureURLWithContext",ae,I||"",Z,Rt());return await Qt(Ae),Ae}async function ec(d,I){if(!d)return null;const Z=d.path||d.webkitRelativePath||"";if(Z){const mt=await te("CapturePathWithContext",Z,I,Rt());return await Qt(mt),mt}const ae=await Kp(d),Ae=await te("CaptureFileDataWithContext",d.name||`clipboard.${Bp(d.type)}`,ae,I,Rt());return await Qt(Ae),Ae}async function xl(d,I){var rl,wt,hs;if(!d)return!1;let Z=!1;const ae=Array.from(d.files||[]);for(const Vt of ae)await ec(Vt,I),Z=!0;const Ae=(rl=d.getData)==null?void 0:rl.call(d,"text/x-moz-url");if(Ae){const Vt=Gp(Ae),al=Vt?fn(Vt.url):"";if(al)return await ls(al,Vt.title,I),!0}const mt=(wt=d.getData)==null?void 0:wt.call(d,"text/uri-list");if(mt){const Vt=Jp(mt),al=fn(Vt);if(al)return await ls(al,"",I),!0}const Xt=(hs=d.getData)==null?void 0:hs.call(d,"text/plain");return String(Xt||"").trim()&&(await $a(Xt,I),Z=!0),Z}async function tc(){if(!Ke){t(46,st=""),t(45,Ke=!0);try{const d=await te("CaptureClipboardTextWithContext",Rt());await Qt(d),t(46,st=p("inbox.captured"))}catch(d){t(24,W=String(d).includes("clipboard is empty")?p("inbox.clipboardEmpty"):p("inbox.clipboardUnavailable"))}finally{t(45,Ke=!1)}}}async function lc(d,I="drop"){if(!Ke){t(45,Ke=!0),t(46,st="");try{for(const Z of d){const ae=await te("CapturePathWithContext",Z,I,Rt());await Qt(ae)}t(46,st=p("inbox.captured"))}catch(Z){t(24,W=String(Z))}finally{t(45,Ke=!1),t(81,sl=!1)}}}async function ns(d){if(!(o||r)&&!_n(d.target)&&d.clipboardData)try{await xl(d.clipboardData,"paste")&&(d.preventDefault(),t(46,st=p("inbox.captured")))}catch(I){t(24,W=String(I))}}function ss(d){Hr(d.dataTransfer)&&(d.preventDefault(),d.dataTransfer.dropEffect="copy",t(83,bn=xa()),t(82,pl=!0))}function is(d){(d.clientX<=0||d.clientY<=0||d.clientX>=window.innerWidth||d.clientY>=window.innerHeight)&&t(82,pl=!1)}async function os(d){if(Hr(d.dataTransfer)){d.preventDefault(),t(82,pl=!1);try{await xl(d.dataTransfer,"drop")&&t(46,st=p("inbox.captured"))}catch(I){t(24,W=String(I))}}}function nc(d){d.preventDefault(),d.dataTransfer.dropEffect="copy",t(81,sl=!0)}function sc(){t(81,sl=!1)}async function ic(d){d.preventDefault(),d.stopPropagation(),t(81,sl=!1),await xl(d.dataTransfer,"drop")&&t(46,st=p("inbox.captured"))}function $l(d){t(92,Tt=d),t(93,jt=""),t(94,At=[]),t(95,Et=null)}function rs(){t(92,Tt=null),t(93,jt=""),t(94,At=[]),t(95,Et=null),t(96,gl=!1)}async function oc(){const d=jt.trim();if(!d||d.length<2){t(94,At=[]);return}t(96,gl=!0);try{const I=await te("SearchNodes",d)||[];t(94,At=I.filter(Z=>qp(Z)&&Z.id!==(Tt==null?void 0:Tt.id)))}catch{t(94,At=[])}finally{t(96,gl=!1)}}function rc(d){t(93,jt=d.target.value),t(95,Et=null),clearTimeout(Tn),Tn=setTimeout(oc,200)}function as(d){t(95,Et=d),t(93,jt=d.path||d.title),t(94,At=[])}async function cs(){if(!(!Tt||!Et))try{await us(Tt,Et.id),rs()}catch(d){t(24,W=String(d))}}async function us(d,I){!d||!I||(await te("ResolveInboxNode",d.id,I),t(43,ve=ve.filter(Z=>Z.id!==d.id)),t(44,Me=Me.filter(Z=>Z.id!==d.id)),await qt(),L&&await yl(L.id))}async function en(d){const I=(d==null?void 0:d.suggestedTargetNodeId)||(L==null?void 0:L.id)||"";if(I)try{await us(d,I)}catch(Z){t(24,W=String(Z))}}function tn(d){Dt({title:p("inbox.deleteTitle"),message:p("inbox.deleteConfirm",{title:d.title}),confirmText:p("common.delete"),danger:!0,onConfirm:async()=>{try{await te("DeleteInboxNode",d.id),t(43,ve=ve.filter(I=>I.id!==d.id)),t(44,Me=Me.filter(I=>I.id!==d.id))}catch(I){t(24,W=String(I))}}})}function fs(d){t(48,Te=d),t(49,Pe=d.title||""),t(50,Ce=d.url||""),t(51,Ve=d.note||""),t(52,Ie="")}function ds(){t(48,Te=null),t(49,Pe=""),t(50,Ce=""),t(51,Ve=""),t(52,Ie="")}async function ac(){if(!(!Te||!Ce.trim()))try{const d=await te("UpdateLink",Te.id,Pe.trim(),Ce.trim(),Ve);t(47,ct=ct.map(I=>I.id===d.id?d:I)),ds()}catch(d){t(52,Ie=String(d))}}async function ms(d){Dt({title:p("links.deleteTitle"),message:p("links.deleteConfirm",{title:d.title}),confirmText:p("common.delete"),danger:!0,onConfirm:async()=>{try{await te("DeleteLink",d.id),t(47,ct=ct.filter(I=>I.id!==d.id))}catch(I){t(24,W=String(I))}}})}async function ps(d){try{await te("OpenLink",d.id)}catch(I){t(24,W=String(I))}}async function _s(d){var I,Z;try{await((Z=(I=navigator.clipboard)==null?void 0:I.writeText)==null?void 0:Z.call(I,d.url)),t(52,Ie=p("links.copied"))}catch{t(52,Ie=p("links.copyUnavailable"))}}function cc(){t(61,Se=!0),t(62,pe=""),t(63,Ee="open_url"),t(64,Ye="")}function uc(){t(61,Se=!1),t(62,pe=""),t(64,Ye="")}async function ln(){if(!(!pe.trim()||!Ye.trim()||!L))try{const d=await te("CreateAction",L.id,Ee,pe.trim(),Ye.trim());d&&d.id&&t(30,de=[...de,d]),t(61,Se=!1),t(62,pe=""),t(64,Ye="")}catch(d){t(24,W=String(d))}}async function vs(d){try{await te("DeleteAction",d),t(30,de=de.filter(I=>I.id!==d))}catch(I){t(24,W=String(I))}}function fc(d){const I=lt.find(Z=>Z.id===d);return I?I.label:d}async function St(d){try{const I=await te("GetNodeDetail",d);I&&Lt(I)}catch(I){t(24,W=String(I))}}async function zt(d){const I=Yp(d),Z=I.nodeId;if(Z)try{const ae=await te("GetNodeDetail",Z);if(!ae)return;if(Lt(ae),I.tab==="notes"){if(t(27,H="notes"),I.targetId){try{t(28,z=await te("ListNotes",Z)||[])}catch{}const Ae=z.find(mt=>mt.id===I.targetId);Ae&&setTimeout(()=>Yt(Ae),100)}}else if(I.tab==="files")if(t(27,H="files"),I.targetId)try{const Ae=await te("GetNodeDetail",I.targetId);if(Ae&&Ae.parent_id){await ft(Ae.parent_id);const mt=tt.find(Xt=>Xt.id===I.targetId);mt&&mt.type==="file"&&js(mt)&&setTimeout(()=>ol(mt),150)}else await ft(Z)}catch{await ft(Z)}else await ft(Z)}catch(ae){t(24,W=String(ae))}}async function Ot(d){return zt(d)}async function nn(){try{t(97,zl=await te("SyncStatus"))}catch{t(97,zl={configured:!1,serverUrl:"",deviceId:"",unpushedOps:0,lastSyncAt:"",syncInterval:0})}}let ks="general";function sn(d){t(101,ks=d||"general"),t(3,c=!0)}function dc(){t(3,c=!1)}function mc(d){const I=Array.isArray(d==null?void 0:d.conflicts)?d.conflicts:[],Z=Array.isArray(d==null?void 0:d.applyErrors)?d.applyErrors:[],ae=[];return I.length>0&&ae.push(p("sync.conflictsCount",{count:I.length})),Z.length>0&&ae.push(p("sync.applyErrorsCount",{count:Z.length})),ae.join(" · ")}async function pc(){t(98,Ol=!0),t(99,il=""),t(100,bl="");try{const d=await te("SyncNow");await nn(),t(99,il=mc(d)),t(100,bl=il?"warning":"")}catch(d){console.error("sync error:",d),t(99,il=`${p("sync.status.error")}: ${(d==null?void 0:d.message)||d}`),t(100,bl="warning")}finally{t(98,Ol=!1)}}function _c(d){t(1,o=!1),t(0,n=d),t(65,xe=!1),window.location.reload()}function vc(d){t(2,r=!1),t(0,n=d),t(65,xe=!1),window.location.reload()}const kc=d=>d.nodeId===L.id,hc=d=>jn(d.id),gc=()=>sn("sync"),bc=()=>sn(),yc=()=>t(24,W=""),wc=()=>t(24,W=""),Cc=()=>t(24,W="");function Sc(){U.content=this.value,t(29,U)}const Tc=d=>{t(27,H=d.id),d.id==="files"&&L&&tt.length===0&&!Be&&ft(L.id)},jc=()=>{t(27,H="notes"),Jn()},Ec=()=>{t(27,H="files"),$n()},Dc=()=>t(27,H="worklog"),Nc=d=>Yt(d),Mc=d=>Yt(d);function Ic(){$e=this.value,t(60,$e)}const Ac=d=>d.key==="Enter"&&qn(),Lc=d=>Yt(d),Fc=d=>Yt(d),Pc=d=>{const I=d.detail;I===0?(t(72,Ze=[]),t(71,Be=null),ft(L.id)):Dn(I-1)},Rc=d=>Wl(d.detail),zc=d=>ol(d.detail),Oc=d=>te("OpenFile",d.detail),Vc=d=>te("OpenFolder",d.detail),Wc=d=>ts(d.detail),Hc=d=>Mn(d.detail.id),Uc=d=>Nn(d.detail),Bc=d=>In(d.detail),Kc=d=>An(d.detail),Gc=d=>Pn(d.detail),Jc=d=>Fn(d.detail),qc=d=>Rn(d.detail),Yc=d=>en(d),Qc=d=>$l(d),Xc=d=>tn(d),Zc=d=>Jt(d),xc=(d,I)=>I.key==="Enter"&&Jt(d),$c=d=>ps(d),eu=d=>_s(d),tu=d=>fs(d),lu=d=>ms(d),nu=d=>te("RunAction",d.id),su=d=>vs(d.id),iu=()=>wl(),ou=d=>d.nodeId===L.id,ru=d=>Cl(d),au=d=>Yl(d),cu=(d,I,Z)=>t(41,I[Z]._expanded=!d._expanded,fe,t(26,L)),uu=(d,I,Z,ae)=>ae.key==="Enter"&&t(41,I[Z]._expanded=!d._expanded,fe,t(26,L)),fu=d=>zt(d),du=d=>Ft(d.nodeId),mu=d=>wl(d),pu=d=>Jl(d),_u=d=>zt(d),vu=d=>Ft(d.nodeId),ku=d=>Xl(d),hu=(d,I)=>I.key==="Enter"&&Xl(d),gu=d=>Ot(d),bu=(d,I)=>I.key==="Enter"&&Ot(d),yu=d=>en(d),wu=d=>$l(d),Cu=d=>Jt(d),Su=d=>Ft(d),Tu=d=>tn(d),ju=d=>Jt(d),Eu=(d,I)=>I.key==="Enter"&&Jt(d),Du=()=>te("OpenTrashFolder");function Nu(){T=this.value,t(11,T)}function Mu(){j=this.value,t(12,j)}const Iu=()=>{t(19,O=""),t(17,M=""),xn()};function Au(){O=this.value,t(19,O)}const Lu=()=>setTimeout(()=>t(21,K=!1),200),Fu=d=>Zn(d);function Pu(){N=this.checked,t(13,N)}function Ru(){E=Dl(this),t(15,E)}function zu(){F=Dl(this),t(16,F)}const Ou=()=>Sl("csv"),Vu=()=>Sl("markdown"),Wu=()=>Sl("pdf"),Hu=d=>St(d.nodeId),Uu=(d,I,Z,ae)=>t(41,I[Z].suggestedMin=parseInt(ae.target.value),fe),Bu=d=>Cl(d),Ku=d=>Qn(d),Gu=(d,I,Z)=>t(41,I[Z]._expanded=!d._expanded,fe),Ju=(d,I,Z,ae)=>ae.key==="Enter"&&t(41,I[Z]._expanded=!d._expanded,fe),qu=d=>zt(d),Yu=d=>Ft(d.nodeId),Qu=d=>St(d.nodeId),Xu=d=>Ql(d),Zu=(d,I)=>I.key==="Enter"&&Ql(d),xu=d=>wl(d),$u=d=>Jl(d),ef=d=>zt(d),tf=d=>St(d.nodeId),lf=(d,I,Z,ae)=>t(41,I[Z].suggestedMin=parseInt(ae.target.value),fe),nf=d=>Cl(d),sf=d=>Yl(d),of=(d,I,Z)=>t(41,I[Z]._expanded=!d._expanded,fe),rf=(d,I,Z,ae)=>ae.key==="Enter"&&t(41,I[Z]._expanded=!d._expanded,fe),af=d=>zt(d),cf=d=>Ft(d.nodeId),uf=d=>St(d.nodeId),ff=(d,I)=>I.key==="Enter"&&St(d.nodeId),df=d=>St(d.nodeId),mf=(d,I)=>I.key==="Enter"&&St(d.nodeId),pf=d=>Ot(d),_f=(d,I)=>I.key==="Enter"&&Ot(d),vf=d=>Ot(d),kf=(d,I)=>I.key==="Enter"&&Ot(d),hf=()=>t(57,ye=null),gf=d=>t(57,ye=d);function bf(){Oe=this.value,t(55,Oe)}const yf=d=>d.key==="Enter"&&Un(),wf=d=>Hn(d),Cf=()=>Gn(Fe.node),Sf=()=>Bn(Fe.node),Tf=()=>Kn(Fe.node),jf=()=>Ft(Fe.node);function Ef(){ue=this.value,t(35,ue)}function Df(){le=this.value,t(33,le)}function Nf(){oe=Il(this.value),t(34,oe)}function Mf(){ge=this.value,t(36,ge)}function If(){Ue=this.checked,t(37,Ue)}function Af(){Ne=this.checked,t(38,Ne)}function Lf(){pe=this.value,t(62,pe)}const Ff=d=>d.key==="Enter"&&ln();function Pf(){Ee=Dl(this),t(63,Ee),t(103,lt)}function Rf(){Ye=this.value,t(64,Ye)}const zf=d=>d.key==="Enter"&&ln(),Of=()=>Zl("copy"),Vf=()=>Zl("link");function Wf(){Bt=this.value,t(90,Bt)}function Hf(){jt=this.value,t(93,jt)}const Uf=d=>d.key==="Enter"&&Et&&cs(),Bf=d=>as(d);function Kf(){Pe=this.value,t(49,Pe)}function Gf(){Ce=this.value,t(50,Ce)}function Jf(){Ve=this.value,t(51,Ve)}return[n,o,r,c,u,m,v,_,h,y,w,T,j,N,D,E,F,M,R,O,V,K,J,q,W,G,L,H,z,U,de,ie,ne,le,oe,ue,ge,Ue,Ne,X,ee,fe,be,ve,Me,Ke,st,ct,Te,Pe,Ce,Ve,Ie,He,Re,Oe,je,ye,Fe,We,$e,Se,pe,Ee,Ye,xe,Ge,Qe,et,se,we,Be,Ze,tt,ut,Ct,Fl,ml,yt,ze,Pl,sl,pl,bn,Rl,yn,wn,Cn,Sn,kl,Bt,Kt,Tt,jt,At,Et,gl,zl,Ol,il,bl,ks,Y,lt,ca,jn,Lt,ft,Wl,En,Dn,ol,Hl,ua,Nn,Mn,In,An,Ln,Fn,Pn,Rn,va,ka,ha,Vn,ya,wa,Ca,Sa,Hn,Ta,ja,Un,Ea,Gt,Da,Na,Ma,Ia,Aa,Bn,Kn,Ft,Jt,Gn,Jn,La,qn,Yt,Fa,Pa,Ra,wl,za,Oa,Jl,Cl,Yl,Qn,Pt,Sl,Ql,Xl,Wa,Zn,xn,Ha,$n,Ua,Zl,Ba,ts,Ga,Ja,Qa,tc,nc,sc,ic,$l,rs,rc,as,cs,en,tn,fs,ds,ac,ms,ps,_s,cc,uc,ln,vs,fc,St,zt,Ot,nn,sn,dc,pc,_c,vc,kc,hc,gc,bc,yc,wc,Cc,Sc,Tc,jc,Ec,Dc,Nc,Mc,Ic,Ac,Lc,Fc,Pc,Rc,zc,Oc,Vc,Wc,Hc,Uc,Bc,Kc,Gc,Jc,qc,Yc,Qc,Xc,Zc,xc,$c,eu,tu,lu,nu,su,iu,ou,ru,au,cu,uu,fu,du,mu,pu,_u,vu,ku,hu,gu,bu,yu,wu,Cu,Su,Tu,ju,Eu,Du,Nu,Mu,Iu,Au,Lu,Fu,Pu,Ru,zu,Ou,Vu,Wu,Hu,Uu,Bu,Ku,Gu,Ju,qu,Yu,Qu,Xu,Zu,xu,$u,ef,tf,lf,nf,sf,of,rf,af,cf,uf,ff,df,mf,pf,_f,vf,kf,hf,gf,bf,yf,wf,Cf,Sf,Tf,jf,Ef,Df,Nf,Mf,If,Af,Lf,Ff,Pf,Rf,zf,Of,Vf,Wf,Hf,Uf,Bf,Kf,Gf,Jf,d=>te("OpenFile",d.detail)]}class Xp extends at{constructor(e){super(),rt(this,e,Qp,Hp,ot,{},null,[-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1])}}new Xp({target:document.getElementById("app")}); diff --git a/cmd/verstak-gui/frontend-dist/assets/main-DOH0BsUz.js b/cmd/verstak-gui/frontend-dist/assets/main-DOH0BsUz.js new file mode 100644 index 0000000..78f8aec --- /dev/null +++ b/cmd/verstak-gui/frontend-dist/assets/main-DOH0BsUz.js @@ -0,0 +1,3 @@ +var ld=Object.defineProperty;var nd=(l,e,t)=>e in l?ld(l,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):l[e]=t;var cn=(l,e,t)=>nd(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 c of o.addedNodes)c.tagName==="LINK"&&c.rel==="modulepreload"&&n(c)}).observe(document,{childList:!0,subtree:!0});function t(s){const o={};return s.integrity&&(o.integrity=s.integrity),s.referrerPolicy&&(o.referrerPolicy=s.referrerPolicy),s.crossOrigin==="use-credentials"?o.credentials="include":s.crossOrigin==="anonymous"?o.credentials="omit":o.credentials="same-origin",o}function n(s){if(s.ep)return;s.ep=!0;const o=t(s);fetch(s.href,o)}})();function $(){}function Ya(l){return l()}function ks(){return Object.create(null)}function ge(l){l.forEach(Ya)}function Mt(l){return typeof l=="function"}function ot(l,e){return l!=l?e==e:l!==e||l&&typeof l=="object"||typeof l=="function"}let El;function tl(l,e){return l===e?!0:(El||(El=document.createElement("a")),El.href=e,l===El.href)}function sd(l){return Object.keys(l).length===0}function ys(l){return l??""}const vn=typeof window<"u"?window:typeof globalThis<"u"?globalThis:global;function a(l,e){l.appendChild(e)}function S(l,e,t){l.insertBefore(e,t||null)}function C(l){l.parentNode&&l.parentNode.removeChild(l)}function Ne(l,e){for(let t=0;tl.removeEventListener(e,t,n)}function hn(l){return function(e){return e.preventDefault(),l.call(this,e)}}function Se(l){return function(e){return e.stopPropagation(),l.call(this,e)}}function kt(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 Ll(l){return l===""?null:+l}function id(l){return Array.from(l.childNodes)}function U(l,e){e=""+e,l.data!==e&&(l.data=e)}function ve(l,e){l.value=e??""}function bt(l,e,t,n){t==null?l.style.removeProperty(e):l.style.setProperty(e,t,"")}function Nt(l,e,t){for(let n=0;n{const s=l.$$.callbacks[e];if(s){const o=od(e,t,{cancelable:n});return s.slice().forEach(c=>{c.call(l,o)}),!o.defaultPrevented}return!0}}function Xa(l,e){const t=l.$$.callbacks[e.type];t&&t.slice().forEach(n=>n.call(this,e))}const $t=[],ws=[];let el=[];const Cs=[],ad=Promise.resolve();let pn=!1;function cd(){pn||(pn=!0,ad.then(Za))}function Ut(l){el.push(l)}const rn=new Set;let Zt=0;function Za(){if(Zt!==0)return;const l=dl;do{try{for(;Zt<$t.length;){const e=$t[Zt];Zt++,fl(e),rd(e.$$)}}catch(e){throw $t.length=0,Zt=0,e}for(fl(null),$t.length=0,Zt=0;ws.length;)ws.pop()();for(let e=0;el.indexOf(n)===-1?e.push(n):t.push(n)),t.forEach(n=>n()),el=e}const Al=new Set;let Ht;function mt(){Ht={r:0,c:[],p:Ht}}function gt(){Ht.r||ge(Ht.c),Ht=Ht.p}function ue(l,e){l&&l.i&&(Al.delete(l),l.i(e))}function pe(l,e,t,n){if(l&&l.o){if(Al.has(l))return;Al.add(l),Ht.c.push(()=>{Al.delete(l),n&&(t&&l.d(1),n())}),l.o(e)}else n&&n()}function ce(l){return(l==null?void 0:l.length)!==void 0?l:Array.from(l)}function xa(l,e){pe(l,1,1,()=>{e.delete(l.key)})}function $a(l,e,t,n,s,o,c,r,u,p,v,g){let h=l.length,b=o.length,y=h;const k={};for(;y--;)k[l[y].key]=y;const w=[],T=new Map,j=new Map,M=[];for(y=b;y--;){const D=g(s,o,y),z=t(D);let R=c.get(z);R?M.push(()=>R.p(D,e)):(R=p(z,D),R.c()),T.set(z,w[y]=R),z in k&&j.set(z,Math.abs(y-k[z]))}const E=new Set,N=new Set;function L(D){ue(D,1),D.m(r,v),c.set(D.key,D),v=D.first,b--}for(;h&&b;){const D=w[b-1],z=l[h-1],R=D.key,V=z.key;D===z?(v=D.first,h--,b--):T.has(V)?!c.has(R)||E.has(R)?L(D):N.has(V)?h--:j.get(R)>j.get(V)?(N.add(R),L(D)):(E.add(V),h--):(u(z,c),h--)}for(;h--;){const D=l[h];T.has(D.key)||u(D,c)}for(;b;)L(w[b-1]);return ge(M),w}function Xe(l){l&&l.c()}function Je(l,e,t){const{fragment:n,after_update:s}=l.$$;n&&n.m(e,t),Ut(()=>{const o=l.$$.on_mount.map(Ya).filter(Mt);l.$$.on_destroy?l.$$.on_destroy.push(...o):ge(o),l.$$.on_mount=[]}),s.forEach(Ut)}function qe(l,e){const t=l.$$;t.fragment!==null&&(ud(t.after_update),ge(t.on_destroy),t.fragment&&t.fragment.d(e),t.on_destroy=t.fragment=null,t.ctx=[])}function fd(l,e){l.$$.dirty[0]===-1&&($t.push(l),cd(),l.$$.dirty.fill(0)),l.$$.dirty[e/31|0]|=1<{const y=b.length?b[0]:h;return p.ctx&&s(p.ctx[g],p.ctx[g]=y)&&(!p.skip_bound&&p.bound[g]&&p.bound[g](y),v&&fd(l,g)),h}):[],p.update(),v=!0,ge(p.before_update),p.fragment=n?n(p.ctx):!1,e.target){if(e.hydrate){const g=id(e.target);p.fragment&&p.fragment.l(g),g.forEach(C)}else p.fragment&&p.fragment.c();e.intro&&ue(l.$$.fragment),Je(l,e.target,e.anchor),Za()}fl(u)}class ct{constructor(){cn(this,"$$");cn(this,"$$set")}$destroy(){qe(this,1),this.$destroy=$}$on(e,t){if(!Mt(t))return $;const n=this.$$.callbacks[e]||(this.$$.callbacks[e]=[]);return n.push(t),()=>{const s=n.indexOf(t);s!==-1&&n.splice(s,1)}}$set(e){this.$$set&&!sd(e)&&(this.$$.skip_bound=!0,this.$$set(e),this.$$.skip_bound=!1)}}const dd="4";typeof window<"u"&&(window.__svelte||(window.__svelte={v:new Set})).v.add(dd);function pd(l){let e,t;return{c(){e=Q("path"),t=Q("polyline"),i(e,"d","M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"),i(t,"points","14 2 14 8 20 8")},m(n,s){S(n,e,s),S(n,t,s)},d(n){n&&(C(e),C(t))}}}function md(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(c,r){S(c,e,r),S(c,t,r),S(c,n,r),S(c,s,r),S(c,o,r)},d(c){c&&(C(e),C(t),C(n),C(s),C(o))}}}function gd(l){let e,t;return{c(){e=Q("polyline"),t=Q("polyline"),i(e,"points","16 18 22 12 16 6"),i(t,"points","8 6 2 12 8 18")},m(n,s){S(n,e,s),S(n,t,s)},d(n){n&&(C(e),C(t))}}}function _d(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,c){S(o,e,c),S(o,t,c),S(o,n,c),S(o,s,c)},d(o){o&&(C(e),C(t),C(n),C(s))}}}function vd(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(c,r){S(c,e,r),S(c,t,r),S(c,n,r),S(c,s,r),S(c,o,r)},d(c){c&&(C(e),C(t),C(n),C(s),C(o))}}}function hd(l){let e,t,n,s,o,c;return{c(){e=Q("path"),t=Q("polyline"),n=Q("line"),s=Q("line"),o=Q("line"),c=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(c,"x1","12"),i(c,"y1","12"),i(c,"x2","12"),i(c,"y2","18")},m(r,u){S(r,e,u),S(r,t,u),S(r,n,u),S(r,s,u),S(r,o,u),S(r,c,u)},d(r){r&&(C(e),C(t),C(n),C(s),C(o),C(c))}}}function bd(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,c){S(o,e,c),S(o,t,c),S(o,n,c),S(o,s,c)},d(o){o&&(C(e),C(t),C(n),C(s))}}}function kd(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(c,r){S(c,e,r),S(c,t,r),S(c,n,r),S(c,s,r),S(c,o,r)},d(c){c&&(C(e),C(t),C(n),C(s),C(o))}}}function yd(l){let e,t,n;return{c(){e=Q("path"),t=Q("circle"),n=Q("circle"),i(e,"d","M9 18V5l12-2v13"),i(t,"cx","6"),i(t,"cy","18"),i(t,"r","3"),i(n,"cx","18"),i(n,"cy","16"),i(n,"r","3")},m(s,o){S(s,e,o),S(s,t,o),S(s,n,o)},d(s){s&&(C(e),C(t),C(n))}}}function wd(l){let e,t;return{c(){e=Q("rect"),t=Q("polyline"),i(e,"x","2"),i(e,"y","4"),i(e,"width","20"),i(e,"height","16"),i(e,"rx","2"),i(t,"points","10 9 16 12 10 15 10 9")},m(n,s){S(n,e,s),S(n,t,s)},d(n){n&&(C(e),C(t))}}}function Cd(l){let e,t,n;return{c(){e=Q("rect"),t=Q("circle"),n=Q("polyline"),i(e,"x","3"),i(e,"y","3"),i(e,"width","18"),i(e,"height","18"),i(e,"rx","2"),i(e,"ry","2"),i(t,"cx","8.5"),i(t,"cy","8.5"),i(t,"r","1.5"),i(n,"points","21 15 16 10 5 21")},m(s,o){S(s,e,o),S(s,t,o),S(s,n,o)},d(s){s&&(C(e),C(t),C(n))}}}function Sd(l){let e;return{c(){e=Q("path"),i(e,"d","M22 19a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h5l2 3h9a2 2 0 0 1 2 2z")},m(t,n){S(t,e,n)},d(t){t&&C(e)}}}function Td(l){let e;function t(o,c){return o[0]==="folder"?Sd:o[0]==="image"?Cd:o[0]==="video"?wd:o[0]==="audio"?yd:o[0]==="pdf"?kd:o[0]==="document"?bd:o[0]==="spreadsheet"?hd:o[0]==="presentation"?vd:o[0]==="archive"?_d:o[0]==="code"?gd:o[0]==="text"?md:pd}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,c){S(o,e,c),s.m(e,null)},p(o,[c]){n!==(n=t(o))&&(s.d(1),s=n(o),s&&(s.c(),s.m(e,null))),c&2&&i(e,"width",o[1]),c&2&&i(e,"height",o[1])},i:$,o:$,d(o){o&&C(e),s.d()}}}function jd(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 ec extends ct{constructor(e){super(),at(this,e,jd,Td,ot,{kind:0,size:1})}}const Ed={"nav.today":"Сегодня","nav.inbox":"Неразобранное","nav.trash":"Корзина","nav.activity":"Активность","nav.journal":"Журнал","nav.clients":"Клиенты","nav.projects":"Проекты","nav.recipes":"Рецепты","nav.documents":"Документы","nav.archive":"Архив","nav.sections":"Разделы","nav.cases":"Дела","nav.noCases":"Нет дел","nav.sync":"Синхронизация","nav.syncSettings":"Настройки синхронизации","nav.syncNow":"Синхронизировать","nav.selectPrompt":"Выберите раздел или дело","nav.brand":"Верстак","nav.system":"Системное","nav.workspace":"Рабочее пространство","nav.noNodes":"Нет узлов","nav.openFolder":"Открыть папку","nav.createInside":"Создать внутри","nav.createNode":"Создать элемент","nav.moveToRoot":"Переместить в корень","inbox.subtitle":"Захваченные материалы, которые нужно разложить по делам","inbox.empty":"Неразобранных элементов нет","inbox.pasteClipboard":"Вставить из буфера","inbox.captured":"Добавлено","inbox.clipboardEmpty":"Буфер обмена пуст","inbox.clipboardUnavailable":"Буфер обмена недоступен","inbox.assign":"Разложить","inbox.keepHere":"Оставить здесь","inbox.localEmpty":"Для этого дела неразобранных материалов нет","inbox.capturedIn":"Захвачено в","inbox.suggestedTarget":"Цель","inbox.assignTitle":"Разложить материал","inbox.assignTarget":"Дело","inbox.assignSearchPlaceholder":"Найти дело","inbox.deleteTitle":"Удалить материал","inbox.deleteConfirm":"Удалить «{title}» из неразобранного?","capture.kind.text":"Текст","capture.kind.url":"Ссылка","capture.kind.file":"Файл","capture.kind.folder":"Папка","capture.kind.image":"Изображение","capture.source.clipboard":"Буфер обмена","capture.source.clipboard_button":"Кнопка буфера","capture.source.drop":"Перетаскивание","capture.source.paste":"Вставка","capture.source.browser":"Браузер","capture.source.manual":"Вручную","capture.dropOverlayNode":"Будет добавлено в Неразобранное для: {title}","capture.dropOverlayGlobal":"Будет добавлено в глобальное Неразобранное","trash.openFolder":"Открыть папку корзины","trash.empty":"Корзина пуста","trash.deletedNodes":"Удаленные элементы","trash.physicalEntries":"Файлы в .verstak/trash","tab.overview":"Обзор","tab.notes":"Заметки","tab.files":"Файлы","tab.inbox":"Неразобранное","tab.links":"Ссылки","tab.actions":"Действия","tab.worklog":"Журнал","tab.activity":"Активность","common.save":"Сохранить","common.cancel":"Отмена","common.delete":"Удалить","common.rename":"Переименовать","common.close":"Закрыть","common.create":"Создать","common.confirm":"Подтверждение","common.back":"← Назад","common.backLabel":"Назад","common.loading":"Загрузка...","common.error":"Ошибка:","common.yes":"Да","common.ok":"OK","common.copy":"Копировать","common.cut":"Вырезать","common.paste":"Вставить","common.duplicate":"Дублировать","common.run":"Запустить","common.test":"Test","common.all":"Все","common.open":"Открыть","common.no":"Нет","common.date":"Дата","common.search":"Найти","common.testAgain":"Проверить","common.connect":"Подключиться","common.disconnect":"Отключиться","common.settings":"Настройки","common.name":"Название","common.type":"Тип","common.section":"Раздел","common.created":"Создано","common.empty":"Нет","common.newName":"Новое имя","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":"Дело","kind.link":"Ссылка","links.empty":"Ссылок пока нет","links.editTitle":"Редактировать ссылку","links.note":"Заметка","links.copyUrl":"Копировать URL","links.copied":"URL скопирован","links.copyUnavailable":"Не удалось скопировать URL","links.deleteTitle":"Удалить ссылку","links.deleteConfirm":"Удалить ссылку «{title}»?","action.openUrl":"Открыть URL","action.openFile":"Открыть файл","action.openFolder":"Открыть папку","action.runCommand":"Запустить команду","action.runScript":"Запустить скрипт","action.openTerminal":"Открыть терминал","action.launchApp":"Запустить приложение","action.addAction":"+ Добавить действие","action.newAction":"Новое действие","action.noActions":"Действий пока нет","action.run":"Запустить","action.dataUrl":"URL","action.dataPath":"Путь","action.dataCommand":"Команда","action.urlPlaceholder":"https://example.com","action.pathPlaceholder":"/path/to/file","action.commandPlaceholder":"команда","action.namePlaceholder":"Например: Открыть сайт","note.add":"+ Добавить заметку","note.new":"Новая заметка","note.title":"Название заметки","note.noNotes":"Нет заметок","note.createFirst":"Создайте первую заметку для этого дела.","note.placeholder":"Начните писать...","note.unsavedTitle":"Несохранённые изменения","note.unsavedMessage":"Закрыть редактор? Все несохранённые изменения будут потеряны.","note.unsavedClose":"Закрыть","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":"Срок действия токена истёк"},Dd={"nav.today":"Today","nav.inbox":"Inbox","nav.trash":"Trash","nav.activity":"Activity","nav.journal":"Journal","nav.clients":"Clients","nav.projects":"Projects","nav.recipes":"Recipes","nav.documents":"Documents","nav.archive":"Archive","nav.sections":"Sections","nav.cases":"Cases","nav.noCases":"No cases","nav.sync":"Sync","nav.syncSettings":"Sync settings","nav.syncNow":"Sync now","nav.selectPrompt":"Select a section or case","nav.brand":"Verstak","nav.system":"System","nav.workspace":"Workspace","nav.noNodes":"No nodes","nav.openFolder":"Open folder","nav.createInside":"Create inside","nav.createNode":"Create element","nav.moveToRoot":"Move to root","inbox.subtitle":"Captured materials that still need to be assigned to cases","inbox.empty":"No unprocessed items","inbox.pasteClipboard":"Paste from clipboard","inbox.captured":"Added","inbox.clipboardEmpty":"Clipboard is empty","inbox.clipboardUnavailable":"Clipboard is unavailable","inbox.assign":"Assign","inbox.keepHere":"Keep here","inbox.localEmpty":"No unprocessed materials for this case","inbox.capturedIn":"Captured in","inbox.suggestedTarget":"Target","inbox.assignTitle":"Assign material","inbox.assignTarget":"Case","inbox.assignSearchPlaceholder":"Find case","inbox.deleteTitle":"Delete material","inbox.deleteConfirm":'Delete "{title}" from inbox?',"capture.kind.text":"Text","capture.kind.url":"Link","capture.kind.file":"File","capture.kind.folder":"Folder","capture.kind.image":"Image","capture.source.clipboard":"Clipboard","capture.source.clipboard_button":"Clipboard button","capture.source.drop":"Drop","capture.source.paste":"Paste","capture.source.browser":"Browser","capture.source.manual":"Manual","capture.dropOverlayNode":"Will be added to Inbox for: {title}","capture.dropOverlayGlobal":"Will be added to global Inbox","trash.openFolder":"Open trash folder","trash.empty":"Trash is empty","trash.deletedNodes":"Deleted items","trash.physicalEntries":"Files in .verstak/trash","tab.overview":"Overview","tab.notes":"Notes","tab.files":"Files","tab.inbox":"Inbox","tab.links":"Links","tab.actions":"Actions","tab.worklog":"Work Log","tab.activity":"Activity","common.save":"Save","common.cancel":"Cancel","common.delete":"Delete","common.rename":"Rename","common.close":"Close","common.create":"Create","common.confirm":"Confirm","common.back":"← Back","common.backLabel":"Back","common.loading":"Loading...","common.error":"Error:","common.yes":"Yes","common.ok":"OK","common.copy":"Copy","common.cut":"Cut","common.paste":"Paste","common.duplicate":"Duplicate","common.run":"Run","common.test":"Test","common.all":"All","common.open":"Open","common.no":"No","common.date":"Date","common.search":"Search","common.testAgain":"Check","common.connect":"Connect","common.disconnect":"Disconnect","common.settings":"Settings","common.name":"Name","common.type":"Type","common.section":"Section","common.created":"Created","common.empty":"None","common.newName":"New name","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","kind.link":"Link","links.empty":"No links yet","links.editTitle":"Edit link","links.note":"Note","links.copyUrl":"Copy URL","links.copied":"URL copied","links.copyUnavailable":"Could not copy URL","links.deleteTitle":"Delete link","links.deleteConfirm":'Delete link "{title}"?',"action.openUrl":"Open URL","action.openFile":"Open file","action.openFolder":"Open folder","action.runCommand":"Run command","action.runScript":"Run script","action.openTerminal":"Open terminal","action.launchApp":"Launch app","action.addAction":"+ Add action","action.newAction":"New action","action.noActions":"No actions yet","action.run":"Run","action.dataUrl":"URL","action.dataPath":"Path","action.dataCommand":"Command","action.urlPlaceholder":"https://example.com","action.pathPlaceholder":"/path/to/file","action.commandPlaceholder":"command","action.namePlaceholder":"Example: Open website","note.add":"+ Add note","note.new":"New note","note.title":"Note title","note.noNotes":"No notes","note.createFirst":"Create the first note for this case.","note.placeholder":"Start writing...","note.unsavedTitle":"Unsaved changes","note.unsavedMessage":"Close the editor? All unsaved changes will be lost.","note.unsavedClose":"Close","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"},Ss={ru:Ed,en:Dd};let Ts="ru";function m(l,e){var s;const t=Ss[Ts];let n=t==null?void 0:t[l];if(n==null&&Ts!=="ru"&&(n=(s=Ss.ru)==null?void 0:s[l]),n==null&&(n=l),e!=null)for(const[o,c]of Object.entries(e))n=n.replace(`{${o}}`,String(c));return n}function Pl(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 mn={"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 js(l){return l?mn[l]||l:m("mime.unknown")}function Nd(l){if(l.type==="folder")return m("mime.folder");const e=(l.mime||"").toLowerCase();if(mn[e])return mn[e];const n=(l.name||"").toLowerCase().split(".").pop();return n?n.toUpperCase():m("mime.file")}function tc(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 lc=["image/jpeg","image/png","image/gif","image/webp","image/bmp","image/tiff","image/avif","image/svg+xml"],nc=["text/plain","text/html","text/css","text/javascript","application/json","application/xml","application/x-yaml","text/x-shellscript"],sc=["txt","log","conf","ini","yaml","yml","json","xml","csv","sh","py","js","ts","css","html","md","markdown","cfg"],ic=["jpg","jpeg","png","gif","webp","bmp","tiff","tif","avif","svg"];function Es(l){if(l.type==="folder")return!1;const e=(l.mime||"").toLowerCase(),n=(l.name||"").toLowerCase().split(".").pop();return!!(lc.includes(e)||ic.includes(n)||e.includes("pdf")||nc.includes(e)||sc.includes(n))}function oc(l){const e=(l.mime||"").toLowerCase(),n=(l.name||"").toLowerCase().split(".").pop();return lc.includes(e)||ic.includes(n)}function ac(l){const e=(l.mime||"").toLowerCase(),n=(l.name||"").toLowerCase().split(".").pop();return nc.includes(e)||sc.includes(n)&&n!=="md"&&n!=="markdown"}function cc(l){return(l.mime||"").toLowerCase().includes("pdf")}function rc(l){const e=(l.name||"").toLowerCase();return e.endsWith(".md")||e.endsWith(".markdown")}function Md(l){return oc(l)||cc(l)}function Id(l){return ac(l)||rc(l)}const{window:Ad}=vn;function Pd(l){let e,t,n,s=Pl(l[0].size)+"",o;return{c(){e=f("span"),e.textContent="·",t=_(),n=f("span"),o=F(s),i(e,"class","meta-sep svelte-1skuef2")},m(c,r){S(c,e,r),S(c,t,r),S(c,n,r),a(n,o)},p(c,r){r[0]&1&&s!==(s=Pl(c[0].size)+"")&&U(o,s)},d(c){c&&(C(e),C(t),C(n))}}}function Ld(l){let e,t,n,s,o;return{c(){e=f("button"),e.innerHTML='',t=_(),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(c,r){S(c,e,r),S(c,t,r),S(c,n,r),s||(o=[P(e,"click",Se(l[30])),P(n,"click",Se(l[11]))],s=!0)},p:$,d(c){c&&(C(e),C(t),C(n)),s=!1,ge(o)}}}function Fd(l){let e,t,n,s,o,c,r;return{c(){e=f("button"),e.innerHTML='',t=_(),n=f("button"),n.innerHTML='',s=_(),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(u,p){S(u,e,p),S(u,t,p),S(u,n,p),S(u,s,p),S(u,o,p),c||(r=[P(e,"click",Se(l[29])),P(n,"click",Se(l[10])),P(o,"click",Se(l[11]))],c=!0)},p:$,d(u){u&&(C(e),C(t),C(n),C(s),C(o)),c=!1,ge(r)}}}function Ds(l){let e,t,n,s,o,c,r,u,p=m("common.open")+"",v,g,h,b,y,k,w,T,j=m("file.openExternal")+"",M,E,N,L,D,z,R=m("file.showInExplorer")+"",V,K,G,J,H,q,Y,A,W,O=m("common.rename")+"",B,oe,ie,ee,Z,ne,ae,fe=m("common.duplicate")+"",be,Ue,Me,X,te,de,ke,_e,Ie,Ke=m("common.cut")+"",st,rt,je,Fe,Ce,Ve,Ae,He=m("common.copy")+"",Re,Oe,Ee,ye,Le,We,$e,Te,me,De=m("common.delete")+"",Ye,lt,xe;return{c(){e=f("div"),t=_(),n=f("div"),s=f("button"),o=Q("svg"),c=Q("path"),r=Q("circle"),u=_(),v=F(p),g=_(),h=f("button"),b=Q("svg"),y=Q("path"),k=Q("polyline"),w=Q("line"),T=_(),M=F(j),E=_(),N=f("button"),L=Q("svg"),D=Q("path"),z=_(),V=F(R),K=_(),G=f("div"),J=_(),H=f("button"),q=Q("svg"),Y=Q("path"),A=Q("path"),W=_(),B=F(O),oe=_(),ie=f("button"),ee=Q("svg"),Z=Q("rect"),ne=Q("path"),ae=_(),be=F(fe),Ue=_(),Me=f("button"),X=Q("svg"),te=Q("circle"),de=Q("circle"),ke=Q("line"),_e=Q("line"),Ie=_(),st=F(Ke),rt=_(),je=f("button"),Fe=Q("svg"),Ce=Q("rect"),Ve=Q("path"),Ae=_(),Re=F(He),Oe=_(),Ee=f("div"),ye=_(),Le=f("button"),We=Q("svg"),$e=Q("polyline"),Te=Q("path"),me=_(),Ye=F(De),i(e,"class","menu-backdrop svelte-1skuef2"),i(e,"role","presentation"),i(c,"d","M1 12s4-8 11-8 11 8 11 8-4 8-11 8-11-8-11-8z"),i(r,"cx","12"),i(r,"cy","12"),i(r,"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(y,"d","M18 13v6a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h6"),i(k,"points","15 3 21 3 21 9"),i(w,"x1","10"),i(w,"y1","14"),i(w,"x2","21"),i(w,"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(h,"class","menu-item svelte-1skuef2"),i(h,"role","menuitem"),i(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"),i(L,"width","14"),i(L,"height","14"),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(N,"class","menu-item svelte-1skuef2"),i(N,"role","menuitem"),i(G,"class","menu-sep svelte-1skuef2"),i(Y,"d","M12 20h9"),i(A,"d","M16.5 3.5a2.121 2.121 0 0 1 3 3L7 19l-4 1 1-4L16.5 3.5z"),i(q,"width","14"),i(q,"height","14"),i(q,"viewBox","0 0 24 24"),i(q,"fill","none"),i(q,"stroke","currentColor"),i(q,"stroke-width","2"),i(q,"stroke-linecap","round"),i(q,"stroke-linejoin","round"),i(H,"class","menu-item svelte-1skuef2"),i(H,"role","menuitem"),i(Z,"x","9"),i(Z,"y","9"),i(Z,"width","13"),i(Z,"height","13"),i(Z,"rx","2"),i(Z,"ry","2"),i(ne,"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(ie,"class","menu-item svelte-1skuef2"),i(ie,"role","menuitem"),i(te,"cx","6"),i(te,"cy","6"),i(te,"r","3"),i(de,"cx","6"),i(de,"cy","18"),i(de,"r","3"),i(ke,"x1","20"),i(ke,"y1","4"),i(ke,"x2","8.12"),i(ke,"y2","15.88"),i(_e,"x1","8.12"),i(_e,"y1","8.12"),i(_e,"x2","20"),i(_e,"y2","20"),i(X,"width","14"),i(X,"height","14"),i(X,"viewBox","0 0 24 24"),i(X,"fill","none"),i(X,"stroke","currentColor"),i(X,"stroke-width","2"),i(X,"stroke-linecap","round"),i(X,"stroke-linejoin","round"),i(Me,"class","menu-item svelte-1skuef2"),i(Me,"role","menuitem"),i(Ce,"x","9"),i(Ce,"y","9"),i(Ce,"width","13"),i(Ce,"height","13"),i(Ce,"rx","2"),i(Ce,"ry","2"),i(Ve,"d","M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1"),i(Fe,"width","14"),i(Fe,"height","14"),i(Fe,"viewBox","0 0 24 24"),i(Fe,"fill","none"),i(Fe,"stroke","currentColor"),i(Fe,"stroke-width","2"),i(Fe,"stroke-linecap","round"),i(Fe,"stroke-linejoin","round"),i(je,"class","menu-item svelte-1skuef2"),i(je,"role","menuitem"),i(Ee,"class","menu-sep svelte-1skuef2"),i($e,"points","3 6 5 6 21 6"),i(Te,"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(We,"width","14"),i(We,"height","14"),i(We,"viewBox","0 0 24 24"),i(We,"fill","none"),i(We,"stroke","currentColor"),i(We,"stroke-width","2"),i(We,"stroke-linecap","round"),i(We,"stroke-linejoin","round"),i(Le,"class","menu-item menu-item-danger svelte-1skuef2"),i(Le,"role","menuitem"),i(n,"class","menu svelte-1skuef2"),bt(n,"left",l[3]+"px"),bt(n,"top",l[4]+"px"),bt(n,"position","fixed"),i(n,"role","menu"),i(n,"tabindex","-1")},m(Ge,Qe){S(Ge,e,Qe),S(Ge,t,Qe),S(Ge,n,Qe),a(n,s),a(s,o),a(o,c),a(o,r),a(s,u),a(s,v),a(n,g),a(n,h),a(h,b),a(b,y),a(b,k),a(b,w),a(h,T),a(h,M),a(n,E),a(n,N),a(N,L),a(L,D),a(N,z),a(N,V),a(n,K),a(n,G),a(n,J),a(n,H),a(H,q),a(q,Y),a(q,A),a(H,W),a(H,B),a(n,oe),a(n,ie),a(ie,ee),a(ee,Z),a(ee,ne),a(ie,ae),a(ie,be),a(n,Ue),a(n,Me),a(Me,X),a(X,te),a(X,de),a(X,ke),a(X,_e),a(Me,Ie),a(Me,st),a(n,rt),a(n,je),a(je,Fe),a(Fe,Ce),a(Fe,Ve),a(je,Ae),a(je,Re),a(n,Oe),a(n,Ee),a(n,ye),a(n,Le),a(Le,We),a(We,$e),a(We,Te),a(Le,me),a(Le,Ye),lt||(xe=[P(e,"click",Se(l[19])),P(s,"click",l[17]),P(h,"click",l[10]),P(N,"click",l[11]),P(H,"click",l[13]),P(ie,"click",l[14]),P(Me,"click",l[15]),P(je,"click",l[16]),P(Le,"click",l[12]),P(n,"click",Se(l[28])),P(n,"keydown",l[31])],lt=!0)},p(Ge,Qe){Qe[0]&8&&bt(n,"left",Ge[3]+"px"),Qe[0]&16&&bt(n,"top",Ge[4]+"px")},d(Ge){Ge&&(C(e),C(t),C(n)),lt=!1,ge(xe)}}}function Rd(l){let e,t,n,s,o,c,r=l[0].name+"",u,p,v,g,h,b,y,k,w,T,j,M,E,N,L,D,z,R,V,K,G,J;n=new ec({props:{kind:l[6],size:22}});let H=!l[7]&&Pd(l);function q(O,B){return O[7]?Ld:Fd}let A=q(l)(l),W=l[2]&&Ds(l);return{c(){e=f("div"),t=f("div"),Xe(n.$$.fragment),s=_(),o=f("div"),c=f("div"),u=F(r),v=_(),g=f("div"),h=f("span"),h.textContent=`${l[8]}`,b=_(),H&&H.c(),y=_(),k=f("div"),A.c(),w=_(),T=f("button"),j=Q("svg"),M=Q("circle"),E=Q("circle"),N=Q("circle"),L=_(),D=f("button"),D.innerHTML='',R=_(),W&&W.c(),V=_t(),i(t,"class","file-row-icon svelte-1skuef2"),i(c,"class","file-row-name svelte-1skuef2"),i(c,"title",p=l[0].name),i(g,"class","file-row-meta svelte-1skuef2"),i(o,"class","file-row-body svelte-1skuef2"),i(M,"cx","12"),i(M,"cy","5"),i(M,"r","2"),i(E,"cx","12"),i(E,"cy","12"),i(E,"r","2"),i(N,"cx","12"),i(N,"cy","19"),i(N,"r","2"),i(j,"width","16"),i(j,"height","16"),i(j,"viewBox","0 0 24 24"),i(j,"fill","currentColor"),i(T,"class","action-btn svelte-1skuef2"),i(T,"title",m("file.more")),i(T,"aria-label",m("file.more")),i(T,"aria-expanded",l[2]),i(D,"class","action-btn action-btn-danger svelte-1skuef2"),i(D,"title",m("common.delete")),i(D,"aria-label",m("common.delete")),i(k,"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(O,B){S(O,e,B),a(e,t),Je(n,t,null),a(e,s),a(e,o),a(o,c),a(c,u),a(o,v),a(o,g),a(g,h),a(g,b),H&&H.m(g,null),a(e,y),a(e,k),A.m(k,null),a(k,w),a(k,T),a(T,j),a(j,M),a(j,E),a(j,N),a(k,L),a(k,D),S(O,R,B),W&&W.m(O,B),S(O,V,B),K=!0,G||(J=[P(Ad,"click",l[19]),P(T,"click",Se(l[18])),P(D,"click",Se(l[12])),P(e,"click",l[9]),P(e,"keydown",l[24]),P(e,"contextmenu",l[23]),P(e,"dragstart",l[20]),P(e,"dragover",l[21]),P(e,"drop",l[22])],G=!0)},p(O,B){(!K||B[0]&1)&&r!==(r=O[0].name+"")&&U(u,r),(!K||B[0]&1&&p!==(p=O[0].name))&&i(c,"title",p),O[7]||H.p(O,B),A.p(O,B),(!K||B[0]&4)&&i(T,"aria-expanded",O[2]),(!K||B[0]&1&&z!==(z=O[7]?m("file.ariaFolder")+" "+O[0].name:m("file.ariaFile")+" "+O[0].name))&&i(e,"aria-label",z),(!K||B[0]&2)&&he(e,"file-row--selected",O[1]),O[2]?W?W.p(O,B):(W=Ds(O),W.c(),W.m(V.parentNode,V)):W&&(W.d(1),W=null)},i(O){K||(ue(n.$$.fragment,O),K=!0)},o(O){pe(n.$$.fragment,O),K=!1},d(O){O&&(C(e),C(R),C(V)),qe(n),H&&H.d(),A.d(),W&&W.d(O),G=!1,ge(J)}}}function zd(l,e,t){let{item:n}=e,{selected:s=!1}=e,{onDragStart:o}=e,{onDragOver:c}=e,{onDrop:r}=e;const u=Fl(),p=tc(n),v=n.type==="folder",g=Nd(n);let h=!1,b=0,y=0,k=null;function w(B){B.ctrlKey||B.metaKey?u("toggleSelect",n.id):B.shiftKey?u("rangeSelect",n.id):k?(clearTimeout(k),k=null,v?u("navigate",n.id):u("preview",n)):k=setTimeout(()=>{k=null,u("selectOne",n.id)},250)}function T(){u("openExternal",n.fileId)}function j(){t(2,h=!1),u("showInFolder",n.nodeId||n.id)}function M(){t(2,h=!1),u("delete",{id:n.id,type:n.type})}function E(){t(2,h=!1),u("rename",{id:n.id,name:n.name})}function N(){t(2,h=!1),u("duplicate",n.id)}function L(){t(2,h=!1),u("cut",n.id)}function D(){t(2,h=!1),u("copy",n.id)}function z(){t(2,h=!1),v?u("navigate",n.id):u("preview",n)}function R(){t(2,h=!h)}function V(){t(2,h=!1)}function K(B){o&&o(B,n.id)}function G(B){c&&v&&c(B,n.id)}function J(B){r&&v&&r(B,n.id)}function H(B){B.preventDefault(),t(3,b=Math.min(B.clientX,window.innerWidth-240)),t(4,y=Math.min(B.clientY,window.innerHeight-320)),t(2,h=!0)}function q(B){(B.key==="Enter"||B.key===" ")&&(B.preventDefault(),w(B))}function Y(B){Xa.call(this,l,B)}const A=()=>u("preview",n),W=()=>u("navigate",n.id),O=B=>{B.key==="Escape"&&(B.stopPropagation(),V())};return l.$$set=B=>{"item"in B&&t(0,n=B.item),"selected"in B&&t(1,s=B.selected),"onDragStart"in B&&t(25,o=B.onDragStart),"onDragOver"in B&&t(26,c=B.onDragOver),"onDrop"in B&&t(27,r=B.onDrop)},[n,s,h,b,y,u,p,v,g,w,T,j,M,E,N,L,D,z,R,V,K,G,J,H,q,o,c,r,Y,A,W,O]}class Od extends ct{constructor(e){super(),at(this,e,zd,Rd,ot,{item:0,selected:1,onDragStart:25,onDragOver:26,onDrop:27},null,[-1,-1])}}function Ns(l,e,t){const n=l.slice();return n[4]=e[t],n[6]=t,n}function Vd(l){let e;return{c(){e=f("span"),e.textContent="/",i(e,"class","sep svelte-csi2lb")},m(t,n){S(t,e,n)},d(t){t&&C(e)}}}function Wd(l){let e,t=l[4].name+"",n,s,o;function c(){return l[2](l[6])}return{c(){e=f("button"),n=F(t),i(e,"class","crumb crumb--link svelte-csi2lb")},m(r,u){S(r,e,u),a(e,n),s||(o=P(e,"click",c),s=!0)},p(r,u){l=r,u&1&&t!==(t=l[4].name+"")&&U(n,t)},d(r){r&&C(e),s=!1,o()}}}function Hd(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){S(s,e,o),a(e,n)},p(s,o){o&1&&t!==(t=s[4].name+"")&&U(n,t)},d(s){s&&C(e)}}}function Ms(l){let e,t,n=l[6]>0&&Vd();function s(r,u){return r[6]===r[0].length-1?Hd:Wd}let o=s(l),c=o(l);return{c(){n&&n.c(),e=_(),c.c(),t=_t()},m(r,u){n&&n.m(r,u),S(r,e,u),c.m(r,u),S(r,t,u)},p(r,u){o===(o=s(r))&&c?c.p(r,u):(c.d(1),c=o(r),c&&(c.c(),c.m(t.parentNode,t)))},d(r){r&&(C(e),C(t)),n&&n.d(r),c.d(r)}}}function Ud(l){let e,t=ce(l[0]),n=[];for(let s=0;so(r);return l.$$set=r=>{"crumbs"in r&&t(0,n=r.crumbs)},[n,o,c]}class uc extends ct{constructor(e){super(),at(this,e,Bd,Ud,ot,{crumbs:0})}}function Kd(l){let e,t,n,s,o,c;return{c(){e=f("div"),t=f("p"),t.textContent=`${m("file.previewUnavailable")}`,n=_(),s=f("button"),s.textContent=`${m("file.openExternal")}`,i(s,"class","btn btn-sm svelte-1cw3u0m"),i(e,"class","preview-status svelte-1cw3u0m")},m(r,u){S(r,e,u),a(e,t),a(e,n),a(e,s),o||(c=P(s,"click",l[9]),o=!0)},p:$,d(r){r&&C(e),o=!1,c()}}}function Gd(l){let e,t;function n(c,r){return r&2&&(e=null),e==null&&(e=!!(c[1]&&c[1].startsWith("data:"))),e?Zd:Xd}let s=n(l,-1),o=s(l);return{c(){o.c(),t=_t()},m(c,r){o.m(c,r),S(c,t,r)},p(c,r){s===(s=n(c,r))&&o?o.p(c,r):(o.d(1),o=s(c),o&&(o.c(),o.m(t.parentNode,t)))},d(c){c&&C(t),o.d(c)}}}function Jd(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){S(s,e,o),a(e,t),a(t,n)},p(s,o){o&2&&U(n,s[1])},d(s){s&&C(e)}}}function qd(l){let e,t,n,s;return{c(){e=f("div"),t=f("img"),tl(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,c){S(o,e,c),a(e,t)},p(o,c){c&2&&!tl(t.src,n=o[1])&&i(t,"src",n),c&1&&s!==(s=o[0].name)&&i(t,"alt",s)},d(o){o&&C(e)}}}function Yd(l){let e,t,n,s,o,c,r;return{c(){e=f("div"),t=f("p"),n=F(l[3]),s=_(),o=f("button"),o.textContent=`${m("file.openExternal")}`,i(o,"class","btn btn-sm svelte-1cw3u0m"),i(e,"class","preview-status svelte-1cw3u0m")},m(u,p){S(u,e,p),a(e,t),a(t,n),a(e,s),a(e,o),c||(r=P(o,"click",l[9]),c=!0)},p(u,p){p&8&&U(n,u[3])},d(u){u&&C(e),c=!1,r()}}}function Qd(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){S(n,e,s),a(e,t)},p:$,d(n){n&&C(e)}}}function Xd(l){let e,t,n,s,o,c;return{c(){e=f("div"),t=f("p"),t.textContent=`${m("file.pdfUnavailable")}`,n=_(),s=f("button"),s.textContent=`${m("file.openExternal")}`,i(s,"class","btn btn-sm svelte-1cw3u0m"),i(e,"class","preview-status svelte-1cw3u0m")},m(r,u){S(r,e,u),a(e,t),a(e,n),a(e,s),o||(c=P(s,"click",l[9]),o=!0)},p:$,d(r){r&&C(e),o=!1,c()}}}function Zd(l){let e,t,n;return{c(){e=f("div"),t=f("embed"),tl(t.src,n=l[1])||i(t,"src",n),i(t,"type","application/pdf"),i(t,"class","preview-pdf svelte-1cw3u0m"),i(e,"class","preview-pdf-container svelte-1cw3u0m")},m(s,o){S(s,e,o),a(e,t)},p(s,o){o&2&&!tl(t.src,n=s[1])&&i(t,"src",n)},d(s){s&&C(e)}}}function xd(l){let e,t,n,s,o,c,r,u=l[0].name+"",p,v,g,h,b=Pl(l[0].size)+"",y,k,w=js(l[0].mime)+"",T,j,M,E,N,L,D,z,R,V,K;o=new ec({props:{kind:l[8],size:18}});function G(q,Y){return q[2]?Qd:q[3]?Yd:q[6]&&q[1]?qd:q[5]&&q[1]?Jd:q[4]?Gd:Kd}let J=G(l),H=J(l);return{c(){e=f("div"),t=f("div"),n=f("header"),s=f("div"),Xe(o.$$.fragment),c=_(),r=f("span"),p=F(u),g=_(),h=f("div"),y=F(b),k=F(" · "),T=F(w),j=_(),M=f("div"),E=f("button"),E.innerHTML='',N=_(),L=f("button"),L.innerHTML='',D=_(),z=f("div"),H.c(),i(r,"class","preview-name svelte-1cw3u0m"),i(r,"title",v=l[0].name),i(s,"class","preview-title svelte-1cw3u0m"),i(h,"class","preview-meta svelte-1cw3u0m"),i(E,"class","action-btn svelte-1cw3u0m"),i(E,"title",m("file.openExternal")),i(E,"aria-label",m("file.openExternal")),i(L,"class","action-btn action-btn-close svelte-1cw3u0m"),i(L,"title","Close"),i(L,"aria-label","Close preview"),i(M,"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(q,Y){S(q,e,Y),a(e,t),a(t,n),a(n,s),Je(o,s,null),a(s,c),a(s,r),a(r,p),a(n,g),a(n,h),a(h,y),a(h,k),a(h,T),a(n,j),a(n,M),a(M,E),a(M,N),a(M,L),a(t,D),a(t,z),H.m(z,null),R=!0,V||(K=[P(E,"click",l[9]),P(L,"click",l[10]),P(e,"click",kt(l[11])),P(e,"keydown",l[12])],V=!0)},p(q,[Y]){(!R||Y&1)&&u!==(u=q[0].name+"")&&U(p,u),(!R||Y&1&&v!==(v=q[0].name))&&i(r,"title",v),(!R||Y&1)&&b!==(b=Pl(q[0].size)+"")&&U(y,b),(!R||Y&1)&&w!==(w=js(q[0].mime)+"")&&U(T,w),J===(J=G(q))&&H?H.p(q,Y):(H.d(1),H=J(q),H&&(H.c(),H.m(z,null)))},i(q){R||(ue(o.$$.fragment,q),R=!0)},o(q){pe(o.$$.fragment,q),R=!1},d(q){q&&C(e),qe(o),H.d(),V=!1,ge(K)}}}function $d(l,e,t){let n,s,o,{item:c}=e,{content:r=""}=e,{loading:u=!1}=e,{error:p=""}=e;const v=Fl(),g=tc(c);function h(T){T.key==="Escape"&&v("close")}function b(){v("openExternal",c.fileId)}Qa(()=>{window.addEventListener("keydown",h)}),kn(()=>{window.removeEventListener("keydown",h)});const y=()=>v("close"),k=()=>v("close"),w=T=>{T.key==="Escape"&&(T.preventDefault(),v("close"))};return l.$$set=T=>{"item"in T&&t(0,c=T.item),"content"in T&&t(1,r=T.content),"loading"in T&&t(2,u=T.loading),"error"in T&&t(3,p=T.error)},l.$$.update=()=>{l.$$.dirty&3&&t(6,n=oc(c)&&r&&r.startsWith("data:")),l.$$.dirty&1&&t(5,s=ac(c)||rc(c)),l.$$.dirty&1&&t(4,o=cc(c))},[c,r,u,p,o,s,n,v,g,b,y,k,w]}class e1 extends ct{constructor(e){super(),at(this,e,$d,xd,ot,{item:0,content:1,loading:2,error:3})}}function t1(l){let e,t,n,s,o,c,r,u,p,v,g,h,b,y,k,w,T;return{c(){e=f("div"),t=f("div"),n=f("h3"),s=F(l[0]),o=_(),c=f("p"),r=F(l[1]),u=_(),p=f("div"),v=f("button"),g=F(l[2]),b=_(),y=f("button"),k=F(l[3]),i(n,"class","svelte-1fv6yyk"),i(c,"class","message svelte-1fv6yyk"),i(v,"class",h="btn "+(l[4]?"btn-danger":"btn-primary")+" svelte-1fv6yyk"),i(y,"class","btn svelte-1fv6yyk"),i(p,"class","actions svelte-1fv6yyk"),i(t,"class","modal svelte-1fv6yyk"),i(e,"class","overlay svelte-1fv6yyk"),i(e,"role","presentation")},m(j,M){S(j,e,M),a(e,t),a(t,n),a(n,s),a(t,o),a(t,c),a(c,r),a(t,u),a(t,p),a(p,v),a(v,g),a(p,b),a(p,y),a(y,k),w||(T=[P(v,"click",l[6]),P(y,"click",l[7]),P(e,"click",kt(l[8])),P(e,"keydown",l[9])],w=!0)},p(j,[M]){M&1&&U(s,j[0]),M&2&&U(r,j[1]),M&4&&U(g,j[2]),M&16&&h!==(h="btn "+(j[4]?"btn-danger":"btn-primary")+" svelte-1fv6yyk")&&i(v,"class",h),M&8&&U(k,j[3])},i:$,o:$,d(j){j&&C(e),w=!1,ge(T)}}}function l1(l,e,t){let{title:n=m("common.confirm")}=e,{message:s=""}=e,{confirmText:o=m("common.delete")}=e,{cancelText:c=m("common.cancel")}=e,{danger:r=!1}=e;const u=Fl(),p=()=>u("confirm"),v=()=>u("cancel"),g=()=>u("cancel"),h=b=>{b.key==="Escape"&&(b.preventDefault(),u("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,c=b.cancelText),"danger"in b&&t(4,r=b.danger)},[n,s,o,c,r,u,p,v,g,h]}class n1 extends ct{constructor(e){super(),at(this,e,l1,t1,ot,{title:0,message:1,confirmText:2,cancelText:3,danger:4})}}function s1(l){let e,t,n;return{c(){e=Q("circle"),t=Q("line"),n=Q("line"),i(e,"cx","12"),i(e,"cy","12"),i(e,"r","10"),i(t,"x1","12"),i(t,"y1","16"),i(t,"x2","12"),i(t,"y2","12"),i(n,"x1","12"),i(n,"y1","8"),i(n,"x2","12.01"),i(n,"y2","8")},m(s,o){S(s,e,o),S(s,t,o),S(s,n,o)},d(s){s&&(C(e),C(t),C(n))}}}function i1(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,c){S(o,e,c),S(o,t,c),S(o,n,c),S(o,s,c)},d(o){o&&(C(e),C(t),C(n),C(s))}}}function o1(l){let e,t;return{c(){e=Q("path"),t=Q("polyline"),i(e,"d","M13 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V9z"),i(t,"points","13 2 13 9 20 9")},m(n,s){S(n,e,s),S(n,t,s)},d(n){n&&(C(e),C(t))}}}function a1(l){let e,t;return{c(){e=Q("path"),t=Q("path"),i(e,"d","M12 20h9"),i(t,"d","M16.5 3.5a2.121 2.121 0 0 1 3 3L7 19l-4 1 1-4L16.5 3.5z")},m(n,s){S(n,e,s),S(n,t,s)},d(n){n&&(C(e),C(t))}}}function c1(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(c,r){S(c,e,r),S(c,t,r),S(c,n,r),S(c,s,r),S(c,o,r)},d(c){c&&(C(e),C(t),C(n),C(s),C(o))}}}function r1(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,c){S(o,e,c),S(o,t,c),S(o,n,c),S(o,s,c)},d(o){o&&(C(e),C(t),C(n),C(s))}}}function u1(l){let e,t;return{c(){e=Q("path"),t=Q("circle"),i(e,"d","M20 21v-2a4 4 0 0 0-4-4H8a4 4 0 0 0-4 4v2"),i(t,"cx","12"),i(t,"cy","7"),i(t,"r","4")},m(n,s){S(n,e,s),S(n,t,s)},d(n){n&&(C(e),C(t))}}}function f1(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,c){S(o,e,c),S(o,t,c),S(o,n,c),S(o,s,c)},d(o){o&&(C(e),C(t),C(n),C(s))}}}function d1(l){let e;return{c(){e=Q("path"),i(e,"d","M22 19a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h5l2 3h9a2 2 0 0 1 2 2z")},m(t,n){S(t,e,n)},d(t){t&&C(e)}}}function p1(l){let e;function t(o,c){return o[0]==="folder"?d1:o[0]==="project"?f1:o[0]==="client"?u1:o[0]==="document"?r1:o[0]==="recipe"?c1:o[0]==="note"?a1:o[0]==="file"?o1:o[0]==="case"?i1:s1}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,c){S(o,e,c),s.m(e,null)},p(o,[c]){n!==(n=t(o))&&(s.d(1),s=n(o),s&&(s.c(),s.m(e,null))),c&2&&i(e,"width",o[1]),c&2&&i(e,"height",o[1])},i:$,o:$,d(o){o&&C(e),s.d()}}}function m1(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 ct{constructor(e){super(),at(this,e,m1,p1,ot,{kind:0,size:1})}}function Is(l,e,t){const n=l.slice();return n[44]=e[t],n}function g1(l){let e;return{c(){e=f("span"),i(e,"class","tree-toggle-placeholder svelte-zj71cl")},m(t,n){S(t,e,n)},p:$,d(t){t&&C(e)}}}function _1(l){let e,t,n=l[1][l[44].id]?"▾":"▸",s,o,c;function r(){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(u,p){S(u,e,p),a(e,t),a(t,s),o||(c=P(e,"click",Se(r)),o=!0)},p(u,p){l=u,p[0]&3&&n!==(n=l[1][l[44].id]?"▾":"▸")&&U(s,n)},d(u){u&&C(e),o=!1,c()}}}function As(l){let e,t;return e=new fc({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(){Xe(e.$$.fragment)},m(n,s){Je(e,n,s),t=!0},p(n,s){const o={};s[0]&1&&(o.nodes=n[44].children||[]),s[0]&2&&(o.expanded=n[1]),s[0]&4&&(o.selectedNodeId=n[2]),s[0]&8&&(o.level=n[3]+1),s[0]&16&&(o.onSelect=n[4]),s[0]&32&&(o.onToggle=n[5]),s[0]&64&&(o.onContextMenu=n[6]),s[0]&128&&(o.onDrop=n[7]),e.$set(o)},i(n){t||(ue(e.$$.fragment,n),t=!0)},o(n){pe(e.$$.fragment,n),t=!1},d(n){qe(e,n)}}}function Ps(l,e){let t,n,s,o,c,r,u,p=e[44].title+"",v,g,h=e[1][e[44].id]&&gn(e[44]),b,y,k,w;function T(A,W){return W[0]&1&&(n=null),n==null&&(n=!!rl(A[44])),n?_1:g1}let j=T(e,[-1,-1]),M=j(e);c=new Rl({props:{kind:Ls(e[44]),size:16}});function E(...A){return e[26](e[44],...A)}function N(...A){return e[27](e[44],...A)}function L(){return e[28](e[44])}function D(...A){return e[29](e[44],...A)}function z(...A){return e[30](e[44],...A)}function R(...A){return e[31](e[44],...A)}function V(...A){return e[32](e[44],...A)}function K(...A){return e[33](e[44],...A)}function G(...A){return e[34](e[44],...A)}function J(...A){return e[35](e[44],...A)}function H(...A){return e[36](e[44],...A)}function q(...A){return e[37](e[44],...A)}let Y=h&&As(e);return{key:l,first:null,c(){t=f("div"),M.c(),s=_(),o=f("span"),Xe(c.$$.fragment),r=_(),u=f("span"),v=F(p),g=_(),Y&&Y.c(),b=_t(),i(o,"class","tree-icon svelte-zj71cl"),i(o,"role","button"),i(o,"tabindex","-1"),i(u,"class","tree-label svelte-zj71cl"),i(u,"role","button"),i(u,"tabindex","-1"),i(t,"class","tree-item svelte-zj71cl"),bt(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(A,W){S(A,t,W),M.m(t,null),a(t,s),a(t,o),Je(c,o,null),a(t,r),a(t,u),a(u,v),S(A,g,W),Y&&Y.m(A,W),S(A,b,W),y=!0,k||(w=[P(o,"click",E),P(o,"keydown",N),P(o,"dblclick",Se(e[24])),P(u,"click",Se(L)),P(u,"keydown",D),P(t,"dragstart",z),P(t,"dragover",R),P(t,"dragleave",V),P(t,"drop",K),P(t,"click",G),P(t,"keydown",J),P(t,"dblclick",H),P(t,"contextmenu",hn(q))],k=!0)},p(A,W){e=A,j===(j=T(e,W))&&M?M.p(e,W):(M.d(1),M=j(e),M&&(M.c(),M.m(t,s)));const O={};W[0]&1&&(O.kind=Ls(e[44])),c.$set(O),(!y||W[0]&1)&&p!==(p=e[44].title+"")&&U(v,p),(!y||W[0]&8)&&bt(t,"padding-left",e[3]*16+4+"px"),(!y||W[0]&5)&&he(t,"selected",e[2]===e[44].id),(!y||W[0]&769)&&he(t,"drop-valid",e[8]===e[44].id&&e[9][e[44].id]),(!y||W[0]&769)&&he(t,"drop-invalid",e[8]===e[44].id&&!e[9][e[44].id]),W[0]&3&&(h=e[1][e[44].id]&&gn(e[44])),h?Y?(Y.p(e,W),W[0]&3&&ue(Y,1)):(Y=As(e),Y.c(),ue(Y,1),Y.m(b.parentNode,b)):Y&&(mt(),pe(Y,1,1,()=>{Y=null}),gt())},i(A){y||(ue(c.$$.fragment,A),ue(Y),y=!0)},o(A){pe(c.$$.fragment,A),pe(Y),y=!1},d(A){A&&(C(t),C(g),C(b)),M.d(),qe(c),Y&&Y.d(A),k=!1,ge(w)}}}function v1(l){let e=[],t=new Map,n,s,o,c,r=ce(l[0]);const u=p=>p[44].id;for(let p=0;p0:l.has_children===!0}function Fs(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 Rs(l){const e=[];function t(n){for(const s of n)e.push(s),s.children&&t(s.children)}return t(l),e}function h1(l){try{return l.dataTransfer.getData("text/plain")}catch{return""}}function b1(l,e,t){let n,s,o,{nodes:c=[]}=e,{expanded:r={}}=e,{selectedNodeId:u=""}=e,{level:p=0}=e,{onSelect:v=void 0}=e,{onToggle:g=void 0}=e,{onContextMenu:h=void 0}=e,{onDrop:b=void 0}=e,y={},k=null,w="",T="";const j=["folder","project","client","document","recipe","case"];kn(()=>{for(const X of Object.keys(y))clearTimeout(y[X]);k&&clearInterval(k)});function M(X){return j.includes(X.type)}function E(X,te,de){if(!X||!te||te===X.id||!M(X))return!1;let ke=X.id;for(;ke;){if(ke===te)return!1;ke=de[ke]||""}return!0}function N(X,te){X.stopPropagation(),X.dataTransfer.effectAllowed="move",X.dataTransfer.setData("text/plain",te.id),t(21,w=te.id)}function L(X,te){X.preventDefault(),X.stopPropagation(),X.dataTransfer.dropEffect="move",T!==te.id&&t(8,T=te.id),rl(te)&&!r[te.id]&&!y[te.id]&&(y[te.id]=setTimeout(()=>{g&&g(te.id),delete y[te.id]},600));const de=X.currentTarget.closest(".workspace-tree-area");if(de){const ke=de.getBoundingClientRect(),_e=30;X.clientY-ke.top<_e?k||(k=setInterval(()=>{de.scrollTop-=10},50)):ke.bottom-X.clientY<_e?k||(k=setInterval(()=>{de.scrollTop+=10},50)):k&&(clearInterval(k),k=null)}}function D(X,te){const de=X.relatedTarget;de&&X.currentTarget.contains(de)||(T===te.id&&t(8,T=""),y[te.id]&&(clearTimeout(y[te.id]),delete y[te.id]),k&&(clearInterval(k),k=null))}function z(X,te){X.preventDefault(),X.stopPropagation(),y[te.id]&&(clearTimeout(y[te.id]),delete y[te.id]),k&&(clearInterval(k),k=null);const de=Rs(c),ke=Fs(de),_e=h1(X);if(!E(te,_e,ke)){t(8,T=""),t(21,w="");return}b&&b(_e,te.id),t(8,T=""),t(21,w="")}function R(){t(8,T=""),t(21,w="");for(const X of Object.keys(y))clearTimeout(y[X]),delete y[X];k&&(clearInterval(k),k=null)}function V(X,te){X.target.closest(".tree-toggle")||X.target.closest(".tree-icon")||v&&v(te)}function K(X,te){rl(te)&&g&&g(te.id)}function G(X,te){(X.key==="Enter"||X.key===" ")&&(X.preventDefault(),v&&v(te))}function J(X,te){X.stopPropagation(),rl(te)&&g&&g(te.id)}function H(X,te){(X.key==="Enter"||X.key===" ")&&(X.preventDefault(),X.stopPropagation(),rl(te)&&g&&g(te.id))}function q(X,te){(X.key==="Enter"||X.key===" ")&&(X.preventDefault(),v&&v(te))}function Y(X,te,de){const ke={};function _e(Ie){for(const Ke of Ie)ke[Ke.id]=E(Ke,te,de),Ke.children&&_e(Ke.children)}return _e(X),ke}function A(X){Xa.call(this,l,X)}const W=X=>g&&g(X.id),O=(X,te)=>J(te,X),B=(X,te)=>H(te,X),oe=X=>v&&v(X),ie=(X,te)=>q(te,X),ee=(X,te)=>N(te,X),Z=(X,te)=>L(te,X),ne=(X,te)=>D(te,X),ae=(X,te)=>z(te,X),fe=(X,te)=>V(te,X),be=(X,te)=>G(te,X),Ue=(X,te)=>K(te,X),Me=(X,te)=>h&&h(te,X);return l.$$set=X=>{"nodes"in X&&t(0,c=X.nodes),"expanded"in X&&t(1,r=X.expanded),"selectedNodeId"in X&&t(2,u=X.selectedNodeId),"level"in X&&t(3,p=X.level),"onSelect"in X&&t(4,v=X.onSelect),"onToggle"in X&&t(5,g=X.onToggle),"onContextMenu"in X&&t(6,h=X.onContextMenu),"onDrop"in X&&t(7,b=X.onDrop)},l.$$.update=()=>{l.$$.dirty[0]&1&&t(23,n=Rs(c)),l.$$.dirty[0]&8388608&&t(22,s=Fs(n)),l.$$.dirty[0]&14680064&&t(9,o=Y(n,w,s))},[c,r,u,p,v,g,h,b,T,o,N,L,D,z,R,V,K,G,J,H,q,w,s,n,A,W,O,B,oe,ie,ee,Z,ne,ae,fe,be,Ue,Me]}class fc extends ct{constructor(e){super(),at(this,e,b1,v1,ot,{nodes:0,expanded:1,selectedNodeId:2,level:3,onSelect:4,onToggle:5,onContextMenu:6,onDrop:7},null,[-1,-1])}}function zs(l){let e,t;return{c(){e=f("div"),t=F(l[4]),i(e,"class","path-info svelte-a9f1pd")},m(n,s){S(n,e,s),a(e,t)},p(n,s){s&16&&U(t,n[4])},d(n){n&&C(e)}}}function Os(l){let e,t;return{c(){e=f("div"),t=F(l[3]),i(e,"class","error-msg svelte-a9f1pd")},m(n,s){S(n,e,s),a(e,t)},p(n,s){s&8&&U(t,n[3])},d(n){n&&C(e)}}}function k1(l){let e,t,n,s,o,c,r,u,p,v,g,h,b,y,k,w,T,j=m("firstrun.browse")+"",M,E,N,L,D,z,R=(l[2]?m("firstrun.creating"):m("firstrun.create"))+"",V,K,G,J,H,q,Y=l[4]&&zs(l),A=l[3]&&Os(l);return{c(){e=f("div"),t=f("div"),n=f("img"),o=_(),c=f("h1"),c.textContent=`${m("firstrun.title")}`,r=_(),u=f("p"),u.textContent=`${m("firstrun.desc")}`,p=_(),v=f("div"),g=f("label"),g.textContent=`${m("firstrun.pathLabel")}`,h=_(),b=f("div"),y=f("input"),w=_(),T=f("button"),M=F(j),E=_(),Y&&Y.c(),N=_(),A&&A.c(),L=_(),D=f("div"),z=f("button"),V=F(R),G=_(),J=f("button"),J.textContent=`${m("firstrun.quit")}`,i(n,"class","first-run-logo svelte-a9f1pd"),tl(n.src,s="/assets/app-icons/icon_64x64.png")||i(n,"src",s),i(n,"width","64"),i(n,"height","64"),i(n,"alt",""),i(c,"class","svelte-a9f1pd"),i(u,"class","first-run-desc svelte-a9f1pd"),i(g,"class","form-label svelte-a9f1pd"),i(g,"for","vault-path"),i(y,"id","vault-path"),i(y,"type","text"),i(y,"placeholder",k=l[1]||m("firstrun.defaultPath")),y.disabled=l[2],i(y,"class","svelte-a9f1pd"),i(T,"class","btn"),T.disabled=l[2],i(b,"class","input-row svelte-a9f1pd"),i(v,"class","form-group svelte-a9f1pd"),i(z,"class","btn btn-primary btn-lg svelte-a9f1pd"),z.disabled=K=!l[0].trim()||l[2],i(J,"class","btn btn-lg svelte-a9f1pd"),i(D,"class","first-run-actions svelte-a9f1pd"),i(t,"class","first-run-card svelte-a9f1pd"),i(e,"class","first-run-screen svelte-a9f1pd")},m(W,O){S(W,e,O),a(e,t),a(t,n),a(t,o),a(t,c),a(t,r),a(t,u),a(t,p),a(t,v),a(v,g),a(v,h),a(v,b),a(b,y),ve(y,l[0]),a(b,w),a(b,T),a(T,M),a(t,E),Y&&Y.m(t,null),a(t,N),A&&A.m(t,null),a(t,L),a(t,D),a(D,z),a(z,V),a(D,G),a(D,J),H||(q=[P(y,"input",l[12]),P(y,"input",l[6]),P(y,"keydown",l[9]),P(T,"click",l[5]),P(z,"click",l[7]),P(J,"click",l[8])],H=!0)},p(W,[O]){O&2&&k!==(k=W[1]||m("firstrun.defaultPath"))&&i(y,"placeholder",k),O&4&&(y.disabled=W[2]),O&1&&y.value!==W[0]&&ve(y,W[0]),O&4&&(T.disabled=W[2]),W[4]?Y?Y.p(W,O):(Y=zs(W),Y.c(),Y.m(t,N)):Y&&(Y.d(1),Y=null),W[3]?A?A.p(W,O):(A=Os(W),A.c(),A.m(t,L)):A&&(A.d(1),A=null),O&4&&R!==(R=(W[2]?m("firstrun.creating"):m("firstrun.create"))+"")&&U(V,R),O&5&&K!==(K=!W[0].trim()||W[2])&&(z.disabled=K)},i:$,o:$,d(W){W&&C(e),Y&&Y.d(),A&&A.d(),H=!1,ge(q)}}}function Dl(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 y1(l,e,t){let{onComplete:n=null}=e,{onQuit:s=null}=e,o="",c="",r=!1,u="",p="",v=null;async function g(){try{const j=await Dl("GetDefaultVaultPath");t(1,c=j||""),t(0,o=c||""),o&&await b()}catch{t(1,c="")}}g();async function h(){try{const j=await Dl("PickDirectory");j&&(t(0,o=j),await b())}catch(j){t(3,u=String(j))}}async function b(){if(!o||!o.trim()){t(4,p=""),v=null;return}try{v=await Dl("CheckVaultPath",o.trim()),v&&t(4,p=v.description)}catch{t(4,p=""),v=null}}async function y(){if(!(!o||!o.trim())){if(t(2,r=!0),t(3,u=""),v&&!v.writable){t(3,u=m("firstrun.errorNoWrite")),t(2,r=!1);return}try{const j=await Dl("CreateVault",o.trim());j&&j.status==="ready"&&n&&n(j)}catch(j){t(3,u=String(j))}t(2,r=!1)}}function k(){s&&s()}function w(j){j.key==="Enter"&&!r&&o.trim()&&y()}function T(){o=this.value,t(0,o)}return l.$$set=j=>{"onComplete"in j&&t(10,n=j.onComplete),"onQuit"in j&&t(11,s=j.onQuit)},[o,c,r,u,p,h,b,y,k,w,n,s,T]}class w1 extends ct{constructor(e){super(),at(this,e,y1,k1,ot,{onComplete:10,onQuit:11})}}function Vs(l){let e,t;return{c(){e=f("div"),t=F(l[2]),i(e,"class","error-msg svelte-s3o8c3")},m(n,s){S(n,e,s),a(e,t)},p(n,s){s&4&&U(t,n[2])},d(n){n&&C(e)}}}function Ws(l){let e,t,n,s,o,c,r,u,p=m("common.yes")+"",v,g,h,b,y;return{c(){e=f("div"),t=f("div"),n=f("h3"),n.textContent=`${m("recovery.createConfirmTitle")}`,s=_(),o=f("p"),o.textContent=`${m("recovery.createConfirm")}`,c=_(),r=f("div"),u=f("button"),v=F(p),g=_(),h=f("button"),h.textContent=`${m("common.cancel")}`,i(n,"class","svelte-s3o8c3"),i(o,"class","modal-desc svelte-s3o8c3"),i(u,"class","btn btn-primary"),u.disabled=l[1],i(h,"class","btn"),i(r,"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(k,w){S(k,e,w),a(e,t),a(t,n),a(t,s),a(t,o),a(t,c),a(t,r),a(r,u),a(u,v),a(r,g),a(r,h),b||(y=[P(u,"click",l[6]),P(h,"click",l[7]),P(e,"click",kt(l[7])),P(e,"keydown",l[11])],b=!0)},p(k,w){w&2&&(u.disabled=k[1])},d(k){k&&C(e),b=!1,ge(y)}}}function C1(l){let e,t,n,s,o,c,r,u,p,v=(l[0]||"—")+"",g,h,b,y,k,w=m("recovery.choose")+"",T,j,M,E=m("recovery.create")+"",N,L,D,z,R,V,K,G=l[2]&&Vs(l),J=l[3]&&Ws(l);return{c(){e=f("div"),t=f("div"),n=f("div"),n.textContent="⚠",s=_(),o=f("h1"),o.textContent=`${m("recovery.title")}`,c=_(),r=f("p"),r.textContent=`${m("recovery.expected")}:`,u=_(),p=f("code"),g=F(v),h=_(),G&&G.c(),b=_(),y=f("div"),k=f("button"),T=F(w),j=_(),M=f("button"),N=F(E),L=_(),D=f("button"),D.textContent=`${m("recovery.quit")}`,z=_(),J&&J.c(),R=_t(),i(n,"class","recovery-icon svelte-s3o8c3"),i(o,"class","svelte-s3o8c3"),i(r,"class","recovery-desc svelte-s3o8c3"),i(p,"class","recovery-path svelte-s3o8c3"),i(k,"class","btn btn-primary btn-lg svelte-s3o8c3"),k.disabled=l[1],i(M,"class","btn btn-lg svelte-s3o8c3"),M.disabled=l[1],i(D,"class","btn btn-lg svelte-s3o8c3"),i(y,"class","recovery-actions svelte-s3o8c3"),i(t,"class","recovery-card svelte-s3o8c3"),i(e,"class","recovery-screen svelte-s3o8c3")},m(H,q){S(H,e,q),a(e,t),a(t,n),a(t,s),a(t,o),a(t,c),a(t,r),a(t,u),a(t,p),a(p,g),a(t,h),G&&G.m(t,null),a(t,b),a(t,y),a(y,k),a(k,T),a(y,j),a(y,M),a(M,N),a(y,L),a(y,D),S(H,z,q),J&&J.m(H,q),S(H,R,q),V||(K=[P(k,"click",l[4]),P(M,"click",l[5]),P(D,"click",l[8])],V=!0)},p(H,[q]){q&1&&v!==(v=(H[0]||"—")+"")&&U(g,v),H[2]?G?G.p(H,q):(G=Vs(H),G.c(),G.m(t,b)):G&&(G.d(1),G=null),q&2&&(k.disabled=H[1]),q&2&&(M.disabled=H[1]),H[3]?J?J.p(H,q):(J=Ws(H),J.c(),J.m(R.parentNode,R)):J&&(J.d(1),J=null)},i:$,o:$,d(H){H&&(C(e),C(z),C(R)),G&&G.d(),J&&J.d(H),V=!1,ge(K)}}}function un(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 S1(l,e,t){let{vaultPath:n=""}=e,{onComplete:s=null}=e,{onQuit:o=null}=e,c=!1,r="",u=!1;async function p(){try{const k=await un("PickDirectory");if(!k)return;t(1,c=!0),t(2,r="");const w=await un("OpenVault",k);w&&w.status==="ready"&&s&&s(w)}catch(k){t(2,r=String(k))}t(1,c=!1)}function v(){t(3,u=!0)}async function g(){t(3,u=!1),t(1,c=!0),t(2,r="");try{const k=await un("CreateVault",n);k&&k.status==="ready"&&s&&s(k)}catch(k){t(2,r=String(k))}t(1,c=!1)}function h(){t(3,u=!1)}function b(){o&&o()}const y=k=>k.key==="Enter"&&h();return l.$$set=k=>{"vaultPath"in k&&t(0,n=k.vaultPath),"onComplete"in k&&t(9,s=k.onComplete),"onQuit"in k&&t(10,o=k.onQuit)},[n,c,r,u,p,v,g,h,b,s,o,y]}class T1 extends ct{constructor(e){super(),at(this,e,S1,C1,ot,{vaultPath:0,onComplete:9,onQuit:10})}}function Hs(l,e,t){const n=l.slice();return n[5]=e[t],n}function j1(l){let e,t,n;return{c(){e=Q("path"),t=Q("path"),n=Q("path"),i(e,"d","M5 4h12l2 2v14H5z"),i(t,"d","M8 4v6h8V4"),i(n,"d","M8 20v-6h8v6")},m(s,o){S(s,e,o),S(s,t,o),S(s,n,o)},d(s){s&&(C(e),C(t),C(n))}}}function E1(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,c){S(o,e,c),S(o,t,c),S(o,n,c),S(o,s,c)},d(o){o&&(C(e),C(t),C(n),C(s))}}}function D1(l){let e;return{c(){e=Q("path"),i(e,"d","M4 19V9M10 19V5M16 19v-7M22 19H2")},m(t,n){S(t,e,n)},d(t){t&&C(e)}}}function N1(l){let e;return{c(){e=Q("path"),i(e,"d","M3 6h6l2 2h10v10a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V6z")},m(t,n){S(t,e,n)},d(t){t&&C(e)}}}function M1(l){let e,t;return{c(){e=Q("path"),t=Q("path"),i(e,"d","M9 3v5M15 3v5M7 8h10v3a5 5 0 0 1-10 0V8z"),i(t,"d","M12 16v5")},m(n,s){S(n,e,s),S(n,t,s)},d(n){n&&(C(e),C(t))}}}function I1(l){let e,t;return{c(){e=Q("rect"),t=Q("path"),i(e,"x","4"),i(e,"y","3"),i(e,"width","16"),i(e,"height","18"),i(e,"rx","2"),i(t,"d","M8 7h8M8 11h8M8 15h5")},m(n,s){S(n,e,s),S(n,t,s)},d(n){n&&(C(e),C(t))}}}function A1(l){let e,t,n;return{c(){e=Q("path"),t=Q("path"),n=Q("path"),i(e,"d","M3 10.5 12 3l9 7.5"),i(t,"d","M5 9.5V21h14V9.5"),i(n,"d","M10 21v-6h4v6")},m(s,o){S(s,e,o),S(s,t,o),S(s,n,o)},d(s){s&&(C(e),C(t),C(n))}}}function P1(l){let e,t;return{c(){e=Q("circle"),t=Q("path"),i(e,"cx","12"),i(e,"cy","12"),i(e,"r","3"),i(t,"d","M19.4 15a1.7 1.7 0 0 0 .3 1.8l.1.1a2 2 0 0 1-2.8 2.8l-.1-.1a1.7 1.7 0 0 0-1.8-.3 1.7 1.7 0 0 0-1 1.5V22h-4v-.2a1.7 1.7 0 0 0-1-1.5 1.7 1.7 0 0 0-1.8.3l-.1.1a2 2 0 0 1-2.8-2.8l.1-.1a1.7 1.7 0 0 0 .3-1.8 1.7 1.7 0 0 0-1.5-1H2v-4h.2a1.7 1.7 0 0 0 1.5-1 1.7 1.7 0 0 0-.3-1.8l-.1-.1a2 2 0 0 1 2.8-2.8l.1.1a1.7 1.7 0 0 0 1.8.3 1.7 1.7 0 0 0 1-1.5V2h4v.2a1.7 1.7 0 0 0 1 1.5 1.7 1.7 0 0 0 1.8-.3l.1-.1a2 2 0 0 1 2.8 2.8l-.1.1a1.7 1.7 0 0 0-.3 1.8 1.7 1.7 0 0 0 1.5 1h.2v4h-.2a1.7 1.7 0 0 0-1.4 1z")},m(n,s){S(n,e,s),S(n,t,s)},d(n){n&&(C(e),C(t))}}}function Us(l){let e,t,n,s,o,c,r,u;function p(b,y){if(b[5].id==="general")return P1;if(b[5].id==="workspace")return A1;if(b[5].id==="templates")return I1;if(b[5].id==="plugins")return M1;if(b[5].id==="files")return N1;if(b[5].id==="activity")return D1;if(b[5].id==="sync")return E1;if(b[5].id==="backup")return j1}let v=p(l),g=v&&v(l);function h(){return l[4](l[5])}return{c(){e=f("button"),t=f("span"),n=Q("svg"),g&&g.c(),s=_(),o=f("span"),o.textContent=`${l[5].label}`,c=_(),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,y){S(b,e,y),a(e,t),a(t,n),g&&g.m(n,null),a(e,s),a(e,o),a(e,c),r||(u=P(e,"click",h),r=!0)},p(b,y){l=b,y&3&&he(e,"active",l[0]===l[5].id)},d(b){b&&C(e),g&&g.d(),r=!1,u()}}}function L1(l){let e,t=ce(l[1]),n=[];for(let s=0;sc(u.id);return l.$$set=u=>{"activeSection"in u&&t(0,n=u.activeSection),"onSelect"in u&&t(3,s=u.onSelect)},[n,o,c,s,r]}class R1 extends ct{constructor(e){super(),at(this,e,F1,L1,ot,{activeSection:0,onSelect:3})}}function Bs(l){let e;return{c(){e=f("div"),e.textContent=`${m("settings.saved")}`,i(e,"class","save-notice svelte-1e2uhdh")},m(t,n){S(t,e,n)},d(t){t&&C(e)}}}function z1(l){let e,t,n,s,o,c,r,u,p,v,g,h,b,y,k,w,T,j,M,E,N,L,D,z,R,V,K,G,J,H,q,Y,A,W=l[1]&&Bs();return{c(){e=f("div"),t=f("h2"),t.textContent=`${m("settings.general")}`,n=_(),s=f("p"),s.textContent=`${m("settings.generalDesc")}`,o=_(),c=f("div"),r=f("h3"),r.textContent=`${m("settings.appearance")}`,u=_(),p=f("div"),v=f("label"),g=f("span"),g.textContent=`${m("settings.theme")}`,h=_(),b=f("select"),y=f("option"),y.textContent=`${m("settings.themeSystem")}`,k=f("option"),k.textContent=`${m("settings.themeLight")} (${m("settings.langSoon")})`,w=f("option"),w.textContent=`${m("settings.themeDark")} (${m("settings.langSoon")})`,T=_(),j=f("div"),M=f("h3"),M.textContent=`${m("settings.localization")}`,E=_(),N=f("div"),L=f("label"),D=f("span"),D.textContent=`${m("settings.language")}`,z=_(),R=f("select"),V=f("option"),V.textContent=`${m("settings.langRu")}`,K=f("option"),K.textContent=`${m("settings.langEn")} (${m("settings.langSoon")})`,G=_(),J=f("div"),W&&W.c(),H=_(),q=f("button"),q.textContent=`${m("settings.save")}`,i(t,"class","svelte-1e2uhdh"),i(s,"class","section-desc svelte-1e2uhdh"),i(r,"class","card-title svelte-1e2uhdh"),i(g,"class","label-text svelte-1e2uhdh"),y.__value="system",ve(y,y.__value),k.__value="light",ve(k,k.__value),k.disabled=!0,w.__value="dark",ve(w,w.__value),w.disabled=!0,l[0]===void 0&&Ut(()=>l[5].call(b)),i(p,"class","form-group svelte-1e2uhdh"),i(c,"class","settings-card svelte-1e2uhdh"),i(M,"class","card-title svelte-1e2uhdh"),i(D,"class","label-text svelte-1e2uhdh"),V.__value="ru",ve(V,V.__value),K.__value="en",ve(K,K.__value),R.disabled=!0,i(N,"class","form-group svelte-1e2uhdh"),i(j,"class","settings-card svelte-1e2uhdh"),i(q,"class","btn btn-primary"),i(J,"class","settings-actions svelte-1e2uhdh"),i(e,"class","settings-section svelte-1e2uhdh")},m(O,B){S(O,e,B),a(e,t),a(e,n),a(e,s),a(e,o),a(e,c),a(c,r),a(c,u),a(c,p),a(p,v),a(v,g),a(v,h),a(v,b),a(b,y),a(b,k),a(b,w),Nt(b,l[0],!0),a(e,T),a(e,j),a(j,M),a(j,E),a(j,N),a(N,L),a(L,D),a(L,z),a(L,R),a(R,V),a(R,K),a(e,G),a(e,J),W&&W.m(J,null),a(J,H),a(J,q),Y||(A=[P(b,"change",l[5]),P(q,"click",l[2])],Y=!0)},p(O,[B]){B&1&&Nt(b,O[0]),O[1]?W||(W=Bs(),W.c(),W.m(J,H)):W&&(W.d(1),W=null)},i:$,o:$,d(O){O&&C(e),W&&W.d(),Y=!1,ge(A)}}}function O1(l,e,t){let{appConfig:n=null}=e,{onSave:s=null}=e,o="system",c=!1;function r(){n&&t(0,o=n.theme||"system")}async function u(){n&&(t(3,n.theme=o,n),s&&await s(n),t(1,c=!0),setTimeout(()=>t(1,c=!1),2e3))}function p(){o=Il(this),t(0,o)}return l.$$set=v=>{"appConfig"in v&&t(3,n=v.appConfig),"onSave"in v&&t(4,s=v.onSave)},l.$$.update=()=>{l.$$.dirty&8&&n&&r()},[o,c,u,n,s,p]}class V1 extends ct{constructor(e){super(),at(this,e,O1,z1,ot,{appConfig:3,onSave:4})}}function Ks(l){let e,t;return{c(){e=f("div"),t=F(l[1]),i(e,"class","notice svelte-1zbky3")},m(n,s){S(n,e,s),a(e,t)},p(n,s){s&2&&U(t,n[1])},d(n){n&&C(e)}}}function W1(l){let e;return{c(){e=f("p"),e.textContent=`${m("settings.noVaultInfo")}`,i(e,"class","no-data svelte-1zbky3")},m(t,n){S(t,e,n)},p:$,d(t){t&&C(e)}}}function H1(l){let e,t,n,s,o,c=l[0].path+"",r,u,p,v,g,h,b=l[0].dbPath+"",y,k,w,T=l[0].nodeCount!==void 0&&Gs(l),j=l[0].fileCount!==void 0&&Js(l);return{c(){e=f("div"),t=f("div"),n=f("span"),n.textContent=`${m("settings.vaultPath")}`,s=_(),o=f("span"),r=F(c),u=_(),p=f("div"),v=f("span"),v.textContent="DB",g=_(),h=f("span"),y=F(b),k=_(),T&&T.c(),w=_(),j&&j.c(),i(n,"class","info-label svelte-1zbky3"),i(o,"class","info-value mono svelte-1zbky3"),i(t,"class","info-row svelte-1zbky3"),i(v,"class","info-label svelte-1zbky3"),i(h,"class","info-value mono small svelte-1zbky3"),i(p,"class","info-row svelte-1zbky3"),i(e,"class","vault-info svelte-1zbky3")},m(M,E){S(M,e,E),a(e,t),a(t,n),a(t,s),a(t,o),a(o,r),a(e,u),a(e,p),a(p,v),a(p,g),a(p,h),a(h,y),a(e,k),T&&T.m(e,null),a(e,w),j&&j.m(e,null)},p(M,E){E&1&&c!==(c=M[0].path+"")&&U(r,c),E&1&&b!==(b=M[0].dbPath+"")&&U(y,b),M[0].nodeCount!==void 0?T?T.p(M,E):(T=Gs(M),T.c(),T.m(e,w)):T&&(T.d(1),T=null),M[0].fileCount!==void 0?j?j.p(M,E):(j=Js(M),j.c(),j.m(e,null)):j&&(j.d(1),j=null)},d(M){M&&C(e),T&&T.d(),j&&j.d()}}}function Gs(l){let e,t,n,s,o=l[0].nodeCount+"",c;return{c(){e=f("div"),t=f("span"),t.textContent="Nodes",n=_(),s=f("span"),c=F(o),i(t,"class","info-label svelte-1zbky3"),i(s,"class","info-value svelte-1zbky3"),i(e,"class","info-row svelte-1zbky3")},m(r,u){S(r,e,u),a(e,t),a(e,n),a(e,s),a(s,c)},p(r,u){u&1&&o!==(o=r[0].nodeCount+"")&&U(c,o)},d(r){r&&C(e)}}}function Js(l){let e,t,n,s,o=l[0].fileCount+"",c;return{c(){e=f("div"),t=f("span"),t.textContent="Files",n=_(),s=f("span"),c=F(o),i(t,"class","info-label svelte-1zbky3"),i(s,"class","info-value svelte-1zbky3"),i(e,"class","info-row svelte-1zbky3")},m(r,u){S(r,e,u),a(e,t),a(e,n),a(e,s),a(s,c)},p(r,u){u&1&&o!==(o=r[0].fileCount+"")&&U(c,o)},d(r){r&&C(e)}}}function U1(l){let e,t,n,s,o,c,r,u,p,v,g,h,b,y,k,w,T=l[1]&&Ks(l);function j(N,L){return N[0]?H1:W1}let M=j(l),E=M(l);return{c(){e=f("div"),t=f("h2"),t.textContent=`${m("settings.workspace")}`,n=_(),s=f("p"),s.textContent=`${m("settings.workspaceDesc")}`,o=_(),T&&T.c(),c=_(),r=f("div"),E.c(),u=_(),p=f("div"),v=f("button"),v.textContent=`${m("settings.openVault")}`,g=_(),h=f("button"),h.textContent=`${m("settings.changeVault")}`,b=_(),y=f("button"),y.textContent=`${m("settings.checkIntegrity")}`,i(t,"class","svelte-1zbky3"),i(s,"class","section-desc svelte-1zbky3"),i(r,"class","settings-card svelte-1zbky3"),i(v,"class","btn svelte-1zbky3"),i(h,"class","btn svelte-1zbky3"),i(y,"class","btn svelte-1zbky3"),i(p,"class","workspace-actions svelte-1zbky3"),i(e,"class","settings-section svelte-1zbky3")},m(N,L){S(N,e,L),a(e,t),a(e,n),a(e,s),a(e,o),T&&T.m(e,null),a(e,c),a(e,r),E.m(r,null),a(e,u),a(e,p),a(p,v),a(p,g),a(p,h),a(p,b),a(p,y),k||(w=[P(v,"click",l[2]),P(h,"click",l[4]),P(y,"click",l[3])],k=!0)},p(N,[L]){N[1]?T?T.p(N,L):(T=Ks(N),T.c(),T.m(e,c)):T&&(T.d(1),T=null),M===(M=j(N))&&E?E.p(N,L):(E.d(1),E=M(N),E&&(E.c(),E.m(r,null)))},i:$,o:$,d(N){N&&C(e),T&&T.d(),E.d(),k=!1,ge(w)}}}function xt(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 B1(l,e,t){let{onRefresh:n=null}=e,s=null,o="";async function c(){try{t(0,s=await xt("GetVaultInfo"))}catch{t(0,s=null)}}c();async function r(){try{await xt("OpenVaultFolder")}catch(v){t(1,o=String(v))}}async function u(){try{const v=await xt("VaultCheck");v.healthy?t(1,o="Vault healthy"):t(1,o="Issues found: "+(v.errors||[]).join("; "))}catch(v){t(1,o=String(v))}}async function p(){try{const v=await xt("PickDirectory");if(!v)return;const g=await xt("OpenVault",v);g&&g.status==="ready"&&(t(0,s=await xt("GetVaultInfo")),n&&n())}catch(v){t(1,o=String(v))}}return l.$$set=v=>{"onRefresh"in v&&t(5,n=v.onRefresh)},[s,o,r,u,p,n]}class K1 extends ct{constructor(e){super(),at(this,e,B1,U1,ot,{onRefresh:5})}}function qs(l,e,t){const n=l.slice();return n[6]=e[t],n}function G1(l){let e,t=ce(l[0]),n=[];for(let s=0;sr(p);return l.$$set=p=>{"onRefresh"in p&&t(3,n=p.onRefresh)},[s,o,r,n,u]}class X1 extends ct{constructor(e){super(),at(this,e,Q1,Y1,ot,{onRefresh:3})}}function Z1(l){let e,t,n,s,o,c,r,u;return{c(){e=f("div"),t=f("h2"),t.textContent=`${m("settings.plugins")}`,n=_(),s=f("p"),s.textContent=`${m("settings.noPlugins")}`,o=_(),c=f("button"),c.textContent=`${m("settings.openPluginsDir")}`,i(t,"class","svelte-8jch95"),i(s,"class","section-desc svelte-8jch95"),i(c,"class","btn"),i(e,"class","settings-section svelte-8jch95")},m(p,v){S(p,e,v),a(e,t),a(e,n),a(e,s),a(e,o),a(e,c),r||(u=P(c,"click",$1),r=!0)},p:$,i:$,o:$,d(p){p&&C(e),r=!1,u()}}}function x1(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 $1(){try{await x1("OpenPluginsFolder")}catch{}}class ep extends ct{constructor(e){super(),at(this,e,null,Z1,ot,{})}}function tp(l){let e,t,n,s;return{c(){e=f("div"),t=f("h2"),t.textContent=`${m("settings.files")}`,n=_(),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,c){S(o,e,c),a(e,t),a(e,n),a(e,s)},p:$,i:$,o:$,d(o){o&&C(e)}}}class lp extends ct{constructor(e){super(),at(this,e,null,tp,ot,{})}}function np(l){let e,t,n,s;return{c(){e=f("div"),t=f("h2"),t.textContent=`${m("settings.activity")}`,n=_(),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,c){S(o,e,c),a(e,t),a(e,n),a(e,s)},p:$,i:$,o:$,d(o){o&&C(e)}}}class sp extends ct{constructor(e){super(),at(this,e,null,np,ot,{})}}function Xs(l){let e,t;return{c(){e=f("div"),t=F(l[2]),i(e,"class","error-msg svelte-1fx1e1e")},m(n,s){S(n,e,s),a(e,t)},p(n,s){s[0]&4&&U(t,n[2])},d(n){n&&C(e)}}}function Zs(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){S(n,e,s),a(e,t)},p(n,s){s[0]&8&&U(t,n[3]),s[0]&16&&he(e,"warning",n[4]==="warning")},d(n){n&&C(e)}}}function ip(l){let e,t,n,s,o,c,r,u,p,v,g,h,b,y,k,w,T,j,M,E,N,L,D=m("settings.checkConnection")+"",z,R,V,K,G=m("common.connect")+"",J,H,q,Y,A,W=l[11]!==null&&xs(l);return{c(){e=f("div"),t=f("div"),n=f("div"),s=f("label"),o=f("span"),o.textContent=`${m("settings.serverUrl")}`,c=_(),r=f("input"),u=_(),p=f("div"),v=f("label"),g=f("span"),g.textContent=`${m("sync.username")}`,h=_(),b=f("input"),y=_(),k=f("div"),w=f("label"),T=f("span"),T.textContent=`${m("sync.password")}`,j=_(),M=f("input"),E=_(),N=f("div"),L=f("button"),z=F(D),V=_(),K=f("button"),J=F(G),q=_(),W&&W.c(),i(o,"class","label-text"),i(r,"type","text"),i(r,"placeholder","https://example.com"),i(n,"class","form-group svelte-1fx1e1e"),i(g,"class","label-text"),i(b,"type","text"),i(p,"class","form-group svelte-1fx1e1e"),i(T,"class","label-text"),i(M,"type","password"),i(k,"class","form-group svelte-1fx1e1e"),i(L,"class","btn"),L.disabled=R=l[1]||!l[5],i(K,"class","btn btn-primary"),K.disabled=H=l[1]||!l[5]||!l[6]||!l[7],i(N,"class","sync-setup-actions svelte-1fx1e1e"),i(t,"class","sync-setup svelte-1fx1e1e"),i(e,"class","settings-card svelte-1fx1e1e")},m(O,B){S(O,e,B),a(e,t),a(t,n),a(n,s),a(s,o),a(s,c),a(s,r),ve(r,l[5]),a(t,u),a(t,p),a(p,v),a(v,g),a(v,h),a(v,b),ve(b,l[6]),a(t,y),a(t,k),a(k,w),a(w,T),a(w,j),a(w,M),ve(M,l[7]),a(t,E),a(t,N),a(N,L),a(L,z),a(N,V),a(N,K),a(K,J),a(t,q),W&&W.m(t,null),Y||(A=[P(r,"input",l[23]),P(b,"input",l[24]),P(M,"input",l[25]),P(L,"click",l[12]),P(K,"click",l[13])],Y=!0)},p(O,B){B[0]&32&&r.value!==O[5]&&ve(r,O[5]),B[0]&64&&b.value!==O[6]&&ve(b,O[6]),B[0]&128&&M.value!==O[7]&&ve(M,O[7]),B[0]&34&&R!==(R=O[1]||!O[5])&&(L.disabled=R),B[0]&226&&H!==(H=O[1]||!O[5]||!O[6]||!O[7])&&(K.disabled=H),O[11]!==null?W?W.p(O,B):(W=xs(O),W.c(),W.m(t,null)):W&&(W.d(1),W=null)},d(O){O&&C(e),W&&W.d(),Y=!1,ge(A)}}}function op(l){let e,t,n,s,o,c,r=l[20](l[0].lastStatus)+"",u,p,v,g,h,b,y,k,w,T=m("settings.syncNow")+"",j,M,E,N=m("settings.disconnect")+"",L,D,z,R=m("settings.resetKey")+"",V,K,G,J,H,q,Y,A,W,O,B,oe,ie=l[0].serverUrl&&$s(l),ee=l[0].deviceName&&ei(l),Z=l[0].deviceId&&ti(l),ne=l[0].lastSyncAt&&li(l),ae=l[0].lastError&&ni(l);return{c(){e=f("div"),t=f("div"),n=f("div"),s=f("span"),s.textContent=`${m("settings.status")}`,o=_(),c=f("span"),u=F(r),p=_(),ie&&ie.c(),v=_(),ee&&ee.c(),g=_(),Z&&Z.c(),h=_(),ne&&ne.c(),b=_(),ae&&ae.c(),y=_(),k=f("div"),w=f("button"),j=F(T),M=_(),E=f("button"),L=F(N),D=_(),z=f("button"),V=F(R),K=_(),G=f("div"),J=f("label"),H=f("span"),H.textContent=`${m("sync.interval")}`,q=_(),Y=f("div"),A=f("input"),W=_(),O=f("button"),O.textContent=`${m("common.save")}`,i(s,"class","info-label svelte-1fx1e1e"),i(c,"class","info-value svelte-1fx1e1e"),he(c,"status-ok",l[0].lastStatus==="connected"),he(c,"status-err",l[0].lastStatus==="error"||l[0].lastStatus==="revoked"),i(n,"class","info-row svelte-1fx1e1e"),i(t,"class","sync-info svelte-1fx1e1e"),i(e,"class","settings-card svelte-1fx1e1e"),i(w,"class","btn btn-primary"),w.disabled=l[1],i(E,"class","btn"),E.disabled=l[1],i(z,"class","btn"),z.disabled=l[1],i(k,"class","sync-actions svelte-1fx1e1e"),i(H,"class","label-text"),i(A,"type","number"),i(A,"min","0"),i(A,"placeholder","0"),i(A,"class","svelte-1fx1e1e"),i(O,"class","btn btn-sm"),i(Y,"class","interval-row svelte-1fx1e1e"),i(G,"class","sync-interval svelte-1fx1e1e")},m(fe,be){S(fe,e,be),a(e,t),a(t,n),a(n,s),a(n,o),a(n,c),a(c,u),a(t,p),ie&&ie.m(t,null),a(t,v),ee&&ee.m(t,null),a(t,g),Z&&Z.m(t,null),a(t,h),ne&&ne.m(t,null),a(t,b),ae&&ae.m(t,null),S(fe,y,be),S(fe,k,be),a(k,w),a(w,j),a(k,M),a(k,E),a(E,L),a(k,D),a(k,z),a(z,V),S(fe,K,be),S(fe,G,be),a(G,J),a(J,H),a(J,q),a(J,Y),a(Y,A),ve(A,l[8]),a(Y,W),a(Y,O),B||(oe=[P(w,"click",l[14]),P(E,"click",l[16]),P(z,"click",l[18]),P(A,"input",l[22]),P(O,"click",l[15])],B=!0)},p(fe,be){be[0]&1&&r!==(r=fe[20](fe[0].lastStatus)+"")&&U(u,r),be[0]&1&&he(c,"status-ok",fe[0].lastStatus==="connected"),be[0]&1&&he(c,"status-err",fe[0].lastStatus==="error"||fe[0].lastStatus==="revoked"),fe[0].serverUrl?ie?ie.p(fe,be):(ie=$s(fe),ie.c(),ie.m(t,v)):ie&&(ie.d(1),ie=null),fe[0].deviceName?ee?ee.p(fe,be):(ee=ei(fe),ee.c(),ee.m(t,g)):ee&&(ee.d(1),ee=null),fe[0].deviceId?Z?Z.p(fe,be):(Z=ti(fe),Z.c(),Z.m(t,h)):Z&&(Z.d(1),Z=null),fe[0].lastSyncAt?ne?ne.p(fe,be):(ne=li(fe),ne.c(),ne.m(t,b)):ne&&(ne.d(1),ne=null),fe[0].lastError?ae?ae.p(fe,be):(ae=ni(fe),ae.c(),ae.m(t,null)):ae&&(ae.d(1),ae=null),be[0]&2&&(w.disabled=fe[1]),be[0]&2&&(E.disabled=fe[1]),be[0]&2&&(z.disabled=fe[1]),be[0]&256&&Ll(A.value)!==fe[8]&&ve(A,fe[8])},d(fe){fe&&(C(e),C(y),C(k),C(K),C(G)),ie&&ie.d(),ee&&ee.d(),Z&&Z.d(),ne&&ne.d(),ae&&ae.d(),B=!1,ge(oe)}}}function xs(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){S(s,e,o),a(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&&C(e)}}}function $s(l){let e,t,n,s,o=l[0].serverUrl+"",c;return{c(){e=f("div"),t=f("span"),t.textContent=`${m("settings.serverUrl")}`,n=_(),s=f("span"),c=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(r,u){S(r,e,u),a(e,t),a(e,n),a(e,s),a(s,c)},p(r,u){u[0]&1&&o!==(o=r[0].serverUrl+"")&&U(c,o)},d(r){r&&C(e)}}}function ei(l){let e,t,n,s,o=l[0].deviceName+"",c;return{c(){e=f("div"),t=f("span"),t.textContent=`${m("settings.deviceName")}`,n=_(),s=f("span"),c=F(o),i(t,"class","info-label svelte-1fx1e1e"),i(s,"class","info-value svelte-1fx1e1e"),i(e,"class","info-row svelte-1fx1e1e")},m(r,u){S(r,e,u),a(e,t),a(e,n),a(e,s),a(s,c)},p(r,u){u[0]&1&&o!==(o=r[0].deviceName+"")&&U(c,o)},d(r){r&&C(e)}}}function ti(l){let e,t,n,s,o=l[0].deviceId+"",c;return{c(){e=f("div"),t=f("span"),t.textContent=`${m("settings.deviceId")}`,n=_(),s=f("span"),c=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(r,u){S(r,e,u),a(e,t),a(e,n),a(e,s),a(s,c)},p(r,u){u[0]&1&&o!==(o=r[0].deviceId+"")&&U(c,o)},d(r){r&&C(e)}}}function li(l){let e,t,n,s,o=l[0].lastSyncAt+"",c;return{c(){e=f("div"),t=f("span"),t.textContent=`${m("settings.lastSync")}`,n=_(),s=f("span"),c=F(o),i(t,"class","info-label svelte-1fx1e1e"),i(s,"class","info-value svelte-1fx1e1e"),i(e,"class","info-row svelte-1fx1e1e")},m(r,u){S(r,e,u),a(e,t),a(e,n),a(e,s),a(s,c)},p(r,u){u[0]&1&&o!==(o=r[0].lastSyncAt+"")&&U(c,o)},d(r){r&&C(e)}}}function ni(l){let e,t,n,s,o=l[0].lastError+"",c;return{c(){e=f("div"),t=f("span"),t.textContent=`${m("settings.lastError")}`,n=_(),s=f("span"),c=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(r,u){S(r,e,u),a(e,t),a(e,n),a(e,s),a(s,c)},p(r,u){u[0]&1&&o!==(o=r[0].lastError+"")&&U(c,o)},d(r){r&&C(e)}}}function si(l){let e,t,n,s,o,c,r,u,p,v,g,h;return{c(){e=f("button"),t=f("div"),n=f("h3"),n.textContent=`${m("settings.confirmDisconnect")}`,s=_(),o=f("p"),o.textContent=`${m("settings.confirmDisconnectDesc")}`,c=_(),r=f("div"),u=f("button"),u.textContent=`${m("common.disconnect")}`,p=_(),v=f("button"),v.textContent=`${m("common.cancel")}`,i(n,"class","svelte-1fx1e1e"),i(o,"class","modal-desc svelte-1fx1e1e"),i(u,"class","btn btn-danger"),i(v,"class","btn"),i(r,"class","modal-actions svelte-1fx1e1e"),i(t,"class","modal svelte-1fx1e1e"),i(e,"class","modal-overlay svelte-1fx1e1e")},m(b,y){S(b,e,y),a(e,t),a(t,n),a(t,s),a(t,o),a(t,c),a(t,r),a(r,u),a(r,p),a(r,v),g||(h=[P(u,"click",l[17]),P(v,"click",l[26]),P(e,"click",l[27])],g=!0)},p:$,d(b){b&&C(e),g=!1,ge(h)}}}function ii(l){let e,t,n,s,o,c,r,u,p,v,g,h;return{c(){e=f("button"),t=f("div"),n=f("h3"),n.textContent=`${m("settings.confirmResetKey")}`,s=_(),o=f("p"),o.textContent=`${m("settings.confirmResetKeyDesc")}`,c=_(),r=f("div"),u=f("button"),u.textContent=`${m("settings.resetKey")}`,p=_(),v=f("button"),v.textContent=`${m("common.cancel")}`,i(n,"class","svelte-1fx1e1e"),i(o,"class","modal-desc svelte-1fx1e1e"),i(u,"class","btn btn-danger"),i(v,"class","btn"),i(r,"class","modal-actions svelte-1fx1e1e"),i(t,"class","modal svelte-1fx1e1e"),i(e,"class","modal-overlay svelte-1fx1e1e")},m(b,y){S(b,e,y),a(e,t),a(t,n),a(t,s),a(t,o),a(t,c),a(t,r),a(r,u),a(r,p),a(r,v),g||(h=[P(u,"click",l[19]),P(v,"click",l[28]),P(e,"click",l[29])],g=!0)},p:$,d(b){b&&C(e),g=!1,ge(h)}}}function ap(l){let e,t,n,s,o,c,r,u,p,v,g=l[2]&&Xs(l),h=l[3]&&!l[2]&&Zs(l);function b(j,M){return j[0]&&j[0].enabled?op:ip}let y=b(l),k=y(l),w=l[9]&&si(l),T=l[10]&&ii(l);return{c(){e=f("div"),t=f("h2"),t.textContent=`${m("settings.sync")}`,n=_(),s=f("p"),s.textContent=`${m("settings.syncDesc")}`,o=_(),g&&g.c(),c=_(),h&&h.c(),r=_(),k.c(),u=_(),w&&w.c(),p=_(),T&&T.c(),v=_t(),i(t,"class","svelte-1fx1e1e"),i(s,"class","section-desc svelte-1fx1e1e"),i(e,"class","settings-section svelte-1fx1e1e")},m(j,M){S(j,e,M),a(e,t),a(e,n),a(e,s),a(e,o),g&&g.m(e,null),a(e,c),h&&h.m(e,null),a(e,r),k.m(e,null),S(j,u,M),w&&w.m(j,M),S(j,p,M),T&&T.m(j,M),S(j,v,M)},p(j,M){j[2]?g?g.p(j,M):(g=Xs(j),g.c(),g.m(e,c)):g&&(g.d(1),g=null),j[3]&&!j[2]?h?h.p(j,M):(h=Zs(j),h.c(),h.m(e,r)):h&&(h.d(1),h=null),y===(y=b(j))&&k?k.p(j,M):(k.d(1),k=y(j),k&&(k.c(),k.m(e,null))),j[9]?w?w.p(j,M):(w=si(j),w.c(),w.m(p.parentNode,p)):w&&(w.d(1),w=null),j[10]?T?T.p(j,M):(T=ii(j),T.c(),T.m(v.parentNode,v)):T&&(T.d(1),T=null)},i:$,o:$,d(j){j&&(C(e),C(u),C(p),C(v)),g&&g.d(),h&&h.d(),k.d(),w&&w.d(j),T&&T.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 cp(l,e,t){let{onRefresh:n=null}=e,s=null,o=!1,c="",r="",u="",p="",v="",g="",h=0,b=!1,y=!1,k=null;async function w(){try{t(0,s=await Wt("GetSyncSettings")),s&&(t(5,p=s.serverUrl||""),t(8,h=s.syncInterval||0))}catch{t(0,s=null)}}w();async function T(){t(1,o=!0),t(2,c=""),t(4,u=""),t(11,k=null);try{await Wt("SyncTestConnection",p,v,g),t(11,k=!0),t(3,r="connection ok")}catch(O){t(11,k=!1),t(3,r="connection failed: "+String(O))}t(1,o=!1)}async function j(){t(1,o=!0),t(2,c=""),t(4,u="");try{await Wt("SyncConfigure",p,v,g),t(3,r="configured"),t(6,v=""),t(7,g=""),await w(),n&&n()}catch(O){t(2,c=String(O))}t(1,o=!1)}function M(O){const B=Array.isArray(O==null?void 0:O.conflicts)?O.conflicts:[],oe=Array.isArray(O==null?void 0:O.applyErrors)?O.applyErrors:[],ie=[];return B.length>0&&ie.push(m("sync.conflictsCount",{count:B.length})),oe.length>0&&ie.push(m("sync.applyErrorsCount",{count:oe.length})),ie.join(" · ")}async function E(){t(1,o=!0),t(2,c=""),t(4,u="");try{const O=await Wt("SyncNow"),B=m("sync.pushedPulled",{pushed:(O==null?void 0:O.pushed)||0,pulled:(O==null?void 0:O.pulled)||0}),oe=M(O);t(3,r=oe?B+" · "+oe:B),t(4,u=oe?"warning":""),await w(),n&&n()}catch(O){t(2,c=String(O))}t(1,o=!1)}async function N(){try{await Wt("SyncSetInterval",h),t(3,r=m("sync.settingsSaved")),t(4,u="")}catch(O){t(2,c=String(O))}}function L(){t(9,b=!0)}async function D(){t(9,b=!1),t(1,o=!0),t(4,u="");try{await Wt("SyncDisconnect"),t(3,r="disconnected"),await w(),n&&n()}catch(O){t(2,c=String(O))}t(1,o=!1)}function z(){t(10,y=!0)}async function R(){t(10,y=!1),t(1,o=!0),t(4,u="");try{await Wt("ResetSyncKey"),t(3,r="key reset"),await w(),n&&n()}catch(O){t(2,c=String(O))}t(1,o=!1)}function V(O){return O?{connected:m("settings.connected"),disconnected:m("settings.disconnected"),disabled:m("settings.notConfigured"),error:m("settings.error"),revoked:m("settings.revoked")}[O]||O:m("settings.notConfigured")}function K(){h=Ll(this.value),t(8,h)}function G(){p=this.value,t(5,p)}function J(){v=this.value,t(6,v)}function H(){g=this.value,t(7,g)}const q=()=>t(9,b=!1),Y=()=>t(9,b=!1),A=()=>t(10,y=!1),W=()=>t(10,y=!1);return l.$$set=O=>{"onRefresh"in O&&t(21,n=O.onRefresh)},[s,o,c,r,u,p,v,g,h,b,y,k,T,j,E,N,L,D,z,R,V,n,K,G,J,H,q,Y,A,W]}class rp extends ct{constructor(e){super(),at(this,e,cp,ap,ot,{onRefresh:21},null,[-1,-1])}}function up(l){let e,t,n,s;return{c(){e=f("div"),t=f("h2"),t.textContent=`${m("settings.backup")}`,n=_(),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,c){S(o,e,c),a(e,t),a(e,n),a(e,s)},p:$,i:$,o:$,d(o){o&&C(e)}}}class fp extends ct{constructor(e){super(),at(this,e,null,up,ot,{})}}const{window:dp}=vn;function pp(l){let e,t;return e=new fp({}),{c(){Xe(e.$$.fragment)},m(n,s){Je(e,n,s),t=!0},p:$,i(n){t||(ue(e.$$.fragment,n),t=!0)},o(n){pe(e.$$.fragment,n),t=!1},d(n){qe(e,n)}}}function mp(l){let e,t;return e=new rp({props:{onRefresh:l[6]}}),{c(){Xe(e.$$.fragment)},m(n,s){Je(e,n,s),t=!0},p:$,i(n){t||(ue(e.$$.fragment,n),t=!0)},o(n){pe(e.$$.fragment,n),t=!1},d(n){qe(e,n)}}}function gp(l){let e,t;return e=new sp({}),{c(){Xe(e.$$.fragment)},m(n,s){Je(e,n,s),t=!0},p:$,i(n){t||(ue(e.$$.fragment,n),t=!0)},o(n){pe(e.$$.fragment,n),t=!1},d(n){qe(e,n)}}}function _p(l){let e,t;return e=new lp({}),{c(){Xe(e.$$.fragment)},m(n,s){Je(e,n,s),t=!0},p:$,i(n){t||(ue(e.$$.fragment,n),t=!0)},o(n){pe(e.$$.fragment,n),t=!1},d(n){qe(e,n)}}}function vp(l){let e,t;return e=new ep({}),{c(){Xe(e.$$.fragment)},m(n,s){Je(e,n,s),t=!0},p:$,i(n){t||(ue(e.$$.fragment,n),t=!0)},o(n){pe(e.$$.fragment,n),t=!1},d(n){qe(e,n)}}}function hp(l){let e,t;return e=new X1({props:{onRefresh:l[2]}}),{c(){Xe(e.$$.fragment)},m(n,s){Je(e,n,s),t=!0},p:$,i(n){t||(ue(e.$$.fragment,n),t=!0)},o(n){pe(e.$$.fragment,n),t=!1},d(n){qe(e,n)}}}function bp(l){let e,t;return e=new K1({props:{onRefresh:l[2]}}),{c(){Xe(e.$$.fragment)},m(n,s){Je(e,n,s),t=!0},p:$,i(n){t||(ue(e.$$.fragment,n),t=!0)},o(n){pe(e.$$.fragment,n),t=!1},d(n){qe(e,n)}}}function kp(l){let e,t;return e=new V1({props:{appConfig:l[1],onSave:l[5]}}),{c(){Xe(e.$$.fragment)},m(n,s){Je(e,n,s),t=!0},p(n,s){const o={};s&2&&(o.appConfig=n[1]),e.$set(o)},i(n){t||(ue(e.$$.fragment,n),t=!0)},o(n){pe(e.$$.fragment,n),t=!1},d(n){qe(e,n)}}}function yp(l){let e,t,n,s,o,c,r,u,p,v,g,h,b,y,k,w;p=new R1({props:{activeSection:l[0],onSelect:l[3]}});const T=[kp,bp,hp,vp,_p,gp,mp,pp],j=[];function M(E,N){return E[0]==="general"?0:E[0]==="workspace"?1:E[0]==="templates"?2:E[0]==="plugins"?3:E[0]==="files"?4:E[0]==="activity"?5:E[0]==="sync"?6:E[0]==="backup"?7:-1}return~(h=M(l))&&(b=j[h]=T[h](l)),{c(){e=f("button"),t=f("div"),n=f("div"),s=f("h2"),s.textContent=`${m("settings.title")}`,o=_(),c=f("button"),c.innerHTML='',r=_(),u=f("div"),Xe(p.$$.fragment),v=_(),g=f("div"),b&&b.c(),i(s,"class","svelte-zf2zsc"),i(c,"class","close-btn svelte-zf2zsc"),i(c,"title",m("settings.close")),i(n,"class","settings-header svelte-zf2zsc"),i(g,"class","settings-content svelte-zf2zsc"),i(u,"class","settings-body svelte-zf2zsc"),i(t,"class","settings-window svelte-zf2zsc"),i(e,"class","settings-overlay svelte-zf2zsc")},m(E,N){S(E,e,N),a(e,t),a(t,n),a(n,s),a(n,o),a(n,c),a(t,r),a(t,u),Je(p,u,null),a(u,v),a(u,g),~h&&j[h].m(g,null),y=!0,k||(w=[P(dp,"keydown",l[7]),P(c,"click",l[4]),P(e,"click",kt(l[4]))],k=!0)},p(E,[N]){const L={};N&1&&(L.activeSection=E[0]),p.$set(L);let D=h;h=M(E),h===D?~h&&j[h].p(E,N):(b&&(mt(),pe(j[D],1,1,()=>{j[D]=null}),gt()),~h?(b=j[h],b?b.p(E,N):(b=j[h]=T[h](E),b.c()),ue(b,1),b.m(g,null)):b=null)},i(E){y||(ue(p.$$.fragment,E),ue(b),y=!0)},o(E){pe(p.$$.fragment,E),pe(b),y=!1},d(E){E&&C(e),qe(p),~h&&j[h].d(),k=!1,ge(w)}}}function oi(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 wp(l,e,t){let{onClose:n=null}=e,{onSyncRefresh:s=null}=e,{initialSection:o="general"}=e,c=o,r=null;async function u(){try{t(1,r=await oi("GetAppConfig"))}catch{t(1,r=null)}}u();function p(y){t(0,c=y)}function v(){n&&n()}async function g(y){try{await oi("SaveAppConfig",y),t(1,r=y)}catch(k){console.error(k)}}function h(){s&&s()}function b(y){y.key==="Escape"&&v()}return l.$$set=y=>{"onClose"in y&&t(8,n=y.onClose),"onSyncRefresh"in y&&t(9,s=y.onSyncRefresh),"initialSection"in y&&t(10,o=y.initialSection)},[c,r,u,p,v,g,h,b,n,s,o]}class Cp extends ct{constructor(e){super(),at(this,e,wp,yp,ot,{onClose:8,onSyncRefresh:9,initialSection:10})}}function Sp(l){let e,t,n,s,o,c,r,u;return{c(){e=f("div"),t=f("span"),n=_(),s=f("span"),s.textContent=`${m("sync.status.disabled")}`,o=_(),c=f("button"),c.textContent=`${m("sync.configure")}`,i(t,"class","sync-dot dot-disabled svelte-1rxbx0"),i(s,"class","sync-label svelte-1rxbx0"),i(c,"class","btn btn-xs svelte-1rxbx0"),i(e,"class","sync-status-row svelte-1rxbx0")},m(p,v){S(p,e,v),a(e,t),a(e,n),a(e,s),a(e,o),a(e,c),r||(u=P(c,"click",function(){Mt(l[5])&&l[5].apply(this,arguments)}),r=!0)},p(p,v){l=p},d(p){p&&C(e),r=!1,u()}}}function Tp(l){let e,t,n,s,o,c=l[7](l[0])+"",r,u,p,v,g,h=(l[1]?m("sync.running"):m("sync.run"))+"",b,y,k,w,T,j,M,E=l[0].unpushedOps>0&&ai(l),N=l[2]&&ci(l);return{c(){e=f("div"),t=f("span"),s=_(),o=f("span"),r=F(c),u=_(),E&&E.c(),p=_(),v=f("div"),g=f("button"),b=F(h),y=_(),k=f("button"),k.textContent=`${m("sync.details")}`,w=_(),N&&N.c(),T=_t(),i(t,"class",n="sync-dot "+l[6](l[0])+" svelte-1rxbx0"),i(o,"class","sync-label svelte-1rxbx0"),i(g,"class","btn btn-xs svelte-1rxbx0"),g.disabled=l[1],i(k,"class","btn btn-xs btn-link svelte-1rxbx0"),i(v,"class","sync-actions-row svelte-1rxbx0"),i(e,"class","sync-status-row svelte-1rxbx0")},m(L,D){S(L,e,D),a(e,t),a(e,s),a(e,o),a(o,r),a(e,u),E&&E.m(e,null),a(e,p),a(e,v),a(v,g),a(g,b),a(v,y),a(v,k),S(L,w,D),N&&N.m(L,D),S(L,T,D),j||(M=[P(g,"click",function(){Mt(l[4])&&l[4].apply(this,arguments)}),P(k,"click",function(){Mt(l[5])&&l[5].apply(this,arguments)})],j=!0)},p(L,D){l=L,D&1&&n!==(n="sync-dot "+l[6](l[0])+" svelte-1rxbx0")&&i(t,"class",n),D&1&&c!==(c=l[7](l[0])+"")&&U(r,c),l[0].unpushedOps>0?E?E.p(l,D):(E=ai(l),E.c(),E.m(e,p)):E&&(E.d(1),E=null),D&2&&h!==(h=(l[1]?m("sync.running"):m("sync.run"))+"")&&U(b,h),D&2&&(g.disabled=l[1]),l[2]?N?N.p(l,D):(N=ci(l),N.c(),N.m(T.parentNode,T)):N&&(N.d(1),N=null)},d(L){L&&(C(e),C(w),C(T)),E&&E.d(),N&&N.d(L),j=!1,ge(M)}}}function ai(l){let e,t=l[0].unpushedOps+"",n,s,o=m("sync.changes")+"",c;return{c(){e=f("span"),n=F(t),s=_(),c=F(o),i(e,"class","sync-count svelte-1rxbx0")},m(r,u){S(r,e,u),a(e,n),a(e,s),a(e,c)},p(r,u){u&1&&t!==(t=r[0].unpushedOps+"")&&U(n,t)},d(r){r&&C(e)}}}function ci(l){let e,t,n;return{c(){e=f("div"),t=F(l[2]),i(e,"class",n=ys(l[3]==="warning"?"sync-message sync-message-warning":"sync-message")+" svelte-1rxbx0")},m(s,o){S(s,e,o),a(e,t)},p(s,o){o&4&&U(t,s[2]),o&8&&n!==(n=ys(s[3]==="warning"?"sync-message sync-message-warning":"sync-message")+" svelte-1rxbx0")&&i(e,"class",n)},d(s){s&&C(e)}}}function jp(l){let e;function t(o,c){var r;return(r=o[0])!=null&&r.configured?Tp:Sp}let n=t(l),s=n(l);return{c(){e=f("div"),s.c(),i(e,"class","sync-status-widget svelte-1rxbx0")},m(o,c){S(o,e,c),s.m(e,null)},p(o,[c]){n===(n=t(o))&&s?s.p(o,c):(s.d(1),s=n(o),s&&(s.c(),s.m(e,null)))},i:$,o:$,d(o){o&&C(e),s.d()}}}function Ep(l,e,t){let{syncStatus:n=null}=e,{syncLoading:s=!1}=e,{syncMessage:o=""}=e,{syncMessageKind:c=""}=e,{onSync:r=null}=e,{onOpenSettings:u=null}=e;function p(g){return!g||!g.configured?"dot-disabled":s?"dot-syncing":g.revoked?"dot-disabled":g.connected?"dot-connected":g.configured?"dot-warning":"dot-disabled"}function v(g){return!g||!g.configured?m("sync.status.disabled"):s?m("sync.status.syncing"):g.revoked?m("sync.status.error"):g.connected?m("sync.status.connected"):m("sync.status.disconnected")}return l.$$set=g=>{"syncStatus"in g&&t(0,n=g.syncStatus),"syncLoading"in g&&t(1,s=g.syncLoading),"syncMessage"in g&&t(2,o=g.syncMessage),"syncMessageKind"in g&&t(3,c=g.syncMessageKind),"onSync"in g&&t(4,r=g.onSync),"onOpenSettings"in g&&t(5,u=g.onOpenSettings)},[n,s,o,c,r,u,p,v]}class Dp extends ct{constructor(e){super(),at(this,e,Ep,jp,ot,{syncStatus:0,syncLoading:1,syncMessage:2,syncMessageKind:3,onSync:4,onOpenSettings:5})}}const{Boolean:dc}=vn;function ri(l,e,t){const n=l.slice();return n[407]=e[t],n}function ui(l,e,t){const n=l.slice();return n[410]=e[t],n}function fi(l,e,t){const n=l.slice();return n[413]=e[t],n}function di(l,e,t){const n=l.slice();return n[413]=e[t],n}function pi(l,e,t){const n=l.slice();return n[439]=e[t],n}function mi(l,e,t){const n=l.slice();return n[439]=e[t],n}function gi(l,e,t){const n=l.slice();return n[478]=e[t],n}function _i(l,e,t){const n=l.slice();return n[439]=e[t],n}function vi(l,e,t){const n=l.slice();return n[442]=e[t],n[483]=e,n[484]=t,n}function hi(l,e,t){const n=l.slice();return n[439]=e[t],n}function bi(l,e,t){const n=l.slice();return n[460]=e[t],n}function ki(l,e,t){const n=l.slice();return n[439]=e[t],n}function yi(l,e,t){const n=l.slice();return n[465]=e[t],n}function wi(l,e,t){const n=l.slice();return n[465]=e[t],n}function Ci(l,e,t){const n=l.slice();return n[442]=e[t],n[470]=e,n[471]=t,n}function Si(l,e,t){const n=l.slice();return n[439]=e[t],n}function Ti(l,e,t){const n=l.slice();return n[460]=e[t],n}function ji(l,e,t){const n=l.slice();return n[454]=e[t],n}function Ei(l,e,t){const n=l.slice();return n[457]=e[t],n}function Di(l,e,t){const n=l.slice();return n[426]=e[t],n}function Ni(l,e,t){const n=l.slice();return n[439]=e[t],n}function Mi(l,e,t){const n=l.slice();return n[418]=e[t],n}function Ii(l,e,t){const n=l.slice();return n[439]=e[t],n}function Ai(l,e,t){const n=l.slice();return n[442]=e[t],n[443]=e,n[444]=t,n}function Pi(l,e,t){const n=l.slice();return n[439]=e[t],n}function Li(l,e,t){const n=l.slice();return n[434]=e[t],n}function Fi(l,e,t){const n=l.slice();return n[431]=e[t],n}function Ri(l,e,t){const n=l.slice();return n[426]=e[t],n}function zi(l,e,t){const n=l.slice();return n[426]=e[t],n}function Oi(l,e,t){const n=l.slice();return n[421]=e[t],n}function Vi(l,e,t){const n=l.slice();return n[418]=e[t],n}function Wi(l,e,t){const n=l.slice();return n[421]=e[t],n}function Hi(l,e,t){const n=l.slice();return n[449]=e[t],n}function Ui(l,e,t){const n=l.slice();return n[489]=e[t],n}function Bi(l,e,t){const n=l.slice();return n[492]=e[t],n}function Np(l){let e,t,n,s,o,c,r,u,p,v,g,h,b,y,k,w,T,j,M,E,N,L,D,z,R,V,K,G,J,H,q,Y,A,W,O,B,oe,ie,ee,Z,ne,ae,fe,be,Ue,Me,X,te,de,ke,_e,Ie,Ke,st,rt,je=l[82]&&Ki(l),Fe=ce(l[4]),Ce=[];for(let se=0;se0?0:1}N=He(l),L=Ae[N]=Ve[N](l),R=new Dp({props:{syncStatus:l[97],syncLoading:l[98],syncMessage:l[99],syncMessageKind:l[100],onSync:l[205],onOpenSettings:l[210]}});function Re(se,we){return se[26]?Rp:se[25]?Fp:Lp}let Oe=Re(l),Ee=Oe(l),ye=l[24]&&Yi(l);const Le=[Kp,Bp,Up,Hp,Wp,Vp,Op,zp],We=[];function $e(se,we){return se[29]?0:se[26]?1:se[25]==="inbox"?2:se[25]==="trash"?3:se[25]==="journal"?4:se[25]==="today"&&se[7]?5:se[25]==="activity"?6:7}Z=$e(l),ne=We[Z]=Le[Z](l);let Te=l[54]&&Ca(l),me=l[58].visible&&ja(l),De=l[32]&&Ma(l),Ye=l[61]&&Ia(l),lt=l[68]&&l[67]&&Pa(l),xe=l[89]&&Fa(l),Ge=l[92]&&za(l),Qe=l[48]&&Ha(l),et=l[84]&&Ba(l),nt=l[74]&&Ka(l),it=l[3]&&Ga(l);return{c(){e=f("div"),je&&je.c(),t=_(),n=f("aside"),s=f("div"),o=f("img"),r=_(),u=f("span"),u.textContent=`${m("nav.brand")}`,p=_(),v=f("nav"),g=f("div"),h=f("div"),h.textContent=`${m("nav.system")}`,b=_();for(let se=0;se',J=_(),H=f("span"),q=F(l[23]),Y=_(),A=f("main"),W=f("header"),O=f("div"),Ee.c(),B=_(),oe=f("div"),oe.innerHTML="",ie=_(),ye&&ye.c(),ee=_(),ne.c(),ae=_(),Te&&Te.c(),fe=_(),me&&me.c(),be=_(),De&&De.c(),Ue=_(),Ye&&Ye.c(),Me=_(),lt&<.c(),X=_(),xe&&xe.c(),te=_(),Ge&&Ge.c(),de=_(),Qe&&Qe.c(),ke=_(),et&&et.c(),_e=_(),nt&&nt.c(),Ie=_(),it&&it.c(),i(o,"class","logo svelte-4gla2c"),tl(o.src,c="/assets/app-icons/icon_32x32.png")||i(o,"src",c),i(o,"width","20"),i(o,"height","20"),i(o,"alt",""),i(u,"class","brand-name svelte-4gla2c"),i(s,"class","sidebar-brand svelte-4gla2c"),i(h,"class","nav-label svelte-4gla2c"),i(g,"class","nav-group svelte-4gla2c"),i(T,"class","svelte-4gla2c"),i(M,"class","nav-add-btn svelte-4gla2c"),i(M,"title",m("common.create")),i(w,"class","nav-label-row svelte-4gla2c"),i(k,"class","nav-group svelte-4gla2c"),i(v,"class","sidebar-nav svelte-4gla2c"),i(G,"class","sidebar-settings-btn svelte-4gla2c"),i(G,"title",m("common.settings")),i(H,"class","version svelte-4gla2c"),i(K,"class","sidebar-footer-row svelte-4gla2c"),i(z,"class","sidebar-footer svelte-4gla2c"),i(n,"class","sidebar svelte-4gla2c"),i(O,"class","header-left svelte-4gla2c"),i(oe,"class","header-right svelte-4gla2c"),i(W,"class","header svelte-4gla2c"),i(A,"class","main svelte-4gla2c"),i(e,"class","app svelte-4gla2c")},m(se,we){S(se,e,we),je&&je.m(e,null),a(e,t),a(e,n),a(n,s),a(s,o),a(s,r),a(s,u),a(n,p),a(n,v),a(v,g),a(g,h),a(g,b);for(let Be=0;Be{Ae[Be]=null}),gt(),L=Ae[N],L?L.p(se,we):(L=Ae[N]=Ve[N](se),L.c()),ue(L,1),L.m(k,null));const Ze={};we[3]&16&&(Ze.syncStatus=se[97]),we[3]&32&&(Ze.syncLoading=se[98]),we[3]&64&&(Ze.syncMessage=se[99]),we[3]&128&&(Ze.syncMessageKind=se[100]),R.$set(Ze),(!Ke||we[0]&8388608)&&U(q,se[23]),Oe===(Oe=Re(se))&&Ee?Ee.p(se,we):(Ee.d(1),Ee=Oe(se),Ee&&(Ee.c(),Ee.m(O,null))),se[24]?ye?ye.p(se,we):(ye=Yi(se),ye.c(),ye.m(A,ee)):ye&&(ye.d(1),ye=null);let tt=Z;Z=$e(se),Z===tt?We[Z].p(se,we):(mt(),pe(We[tt],1,1,()=>{We[tt]=null}),gt(),ne=We[Z],ne?ne.p(se,we):(ne=We[Z]=Le[Z](se),ne.c()),ue(ne,1),ne.m(A,ae)),se[54]?Te?(Te.p(se,we),we[1]&8388608&&ue(Te,1)):(Te=Ca(se),Te.c(),ue(Te,1),Te.m(A,fe)):Te&&(mt(),pe(Te,1,1,()=>{Te=null}),gt()),se[58].visible?me?(me.p(se,we),we[1]&134217728&&ue(me,1)):(me=ja(se),me.c(),ue(me,1),me.m(A,be)):me&&(mt(),pe(me,1,1,()=>{me=null}),gt()),se[32]?De?De.p(se,we):(De=Ma(se),De.c(),De.m(A,Ue)):De&&(De.d(1),De=null),se[61]?Ye?Ye.p(se,we):(Ye=Ia(se),Ye.c(),Ye.m(A,Me)):Ye&&(Ye.d(1),Ye=null),se[68]&&se[67]?lt?lt.p(se,we):(lt=Pa(se),lt.c(),lt.m(A,X)):lt&&(lt.d(1),lt=null),se[89]?xe?xe.p(se,we):(xe=Fa(se),xe.c(),xe.m(A,te)):xe&&(xe.d(1),xe=null),se[92]?Ge?Ge.p(se,we):(Ge=za(se),Ge.c(),Ge.m(A,de)):Ge&&(Ge.d(1),Ge=null),se[48]?Qe?Qe.p(se,we):(Qe=Ha(se),Qe.c(),Qe.m(A,ke)):Qe&&(Qe.d(1),Qe=null),se[84]?et?(et.p(se,we),we[2]&4194304&&ue(et,1)):(et=Ba(se),et.c(),ue(et,1),et.m(A,_e)):et&&(mt(),pe(et,1,1,()=>{et=null}),gt()),se[74]?nt?(nt.p(se,we),we[2]&4096&&ue(nt,1)):(nt=Ka(se),nt.c(),ue(nt,1),nt.m(A,Ie)):nt&&(mt(),pe(nt,1,1,()=>{nt=null}),gt()),se[3]?it?(it.p(se,we),we[0]&8&&ue(it,1)):(it=Ga(se),it.c(),ue(it,1),it.m(A,null)):it&&(mt(),pe(it,1,1,()=>{it=null}),gt())},i(se){Ke||(ue(L),ue(R.$$.fragment,se),ue(ne),ue(Te),ue(me),ue(et),ue(nt),ue(it),Ke=!0)},o(se){pe(L),pe(R.$$.fragment,se),pe(ne),pe(Te),pe(me),pe(et),pe(nt),pe(it),Ke=!1},d(se){se&&C(e),je&&je.d(),Ne(Ce,se),Ae[N].d(),qe(R),Ee.d(),ye&&ye.d(),We[Z].d(),Te&&Te.d(),me&&me.d(),De&&De.d(),Ye&&Ye.d(),lt&<.d(),xe&&xe.d(),Ge&&Ge.d(),Qe&&Qe.d(),et&&et.d(),nt&&nt.d(),it&&it.d(),st=!1,ge(rt)}}}function Mp(l){var n;let e,t;return e=new T1({props:{vaultPath:((n=l[0])==null?void 0:n.vaultPath)||"",onComplete:l[207]}}),{c(){Xe(e.$$.fragment)},m(s,o){Je(e,s,o),t=!0},p(s,o){var r;const c={};o[0]&1&&(c.vaultPath=((r=s[0])==null?void 0:r.vaultPath)||""),e.$set(c)},i(s){t||(ue(e.$$.fragment,s),t=!0)},o(s){pe(e.$$.fragment,s),t=!1},d(s){qe(e,s)}}}function Ip(l){let e,t;return e=new w1({props:{onComplete:l[206]}}),{c(){Xe(e.$$.fragment)},m(n,s){Je(e,n,s),t=!0},p:$,i(n){t||(ue(e.$$.fragment,n),t=!0)},o(n){pe(e.$$.fragment,n),t=!1},d(n){qe(e,n)}}}function Ki(l){let e,t,n;return{c(){e=f("div"),t=f("div"),n=F(l[83]),i(t,"class","capture-drop-box svelte-4gla2c"),i(e,"class","capture-drop-overlay svelte-4gla2c")},m(s,o){S(s,e,o),a(e,t),a(t,n)},p(s,o){o[2]&2097152&&U(n,s[83])},d(s){s&&C(e)}}}function Gi(l){let e,t;return{c(){e=f("span"),t=F(l[42]),i(e,"class","nav-badge svelte-4gla2c")},m(n,s){S(n,e,s),a(e,t)},p(n,s){s[1]&2048&&U(t,n[42])},d(n){n&&C(e)}}}function Ji(l){let e,t=l[492].label+"",n,s,o,c,r,u,p=l[492].id==="journal"&&l[42]>0&&Gi(l);function v(){return l[209](l[492])}return{c(){e=f("button"),n=F(t),s=_(),p&&p.c(),o=_(),i(e,"class",c="nav-item "+(l[25]===l[492].id?"selected":"")+" svelte-4gla2c")},m(g,h){S(g,e,h),a(e,n),a(e,s),p&&p.m(e,null),a(e,o),r||(u=P(e,"click",v),r=!0)},p(g,h){l=g,h[0]&16&&t!==(t=l[492].label+"")&&U(n,t),l[492].id==="journal"&&l[42]>0?p?p.p(l,h):(p=Gi(l),p.c(),p.m(e,o)):p&&(p.d(1),p=null),h[0]&33554448&&c!==(c="nav-item "+(l[25]===l[492].id?"selected":"")+" svelte-4gla2c")&&i(e,"class",c)},d(g){g&&C(e),p&&p.d(),r=!1,u()}}}function Ap(l){let e;return{c(){e=f("div"),e.textContent=`${m("nav.noNodes")}`,i(e,"class","nav-empty svelte-4gla2c")},m(t,n){S(t,e,n)},p:$,i:$,o:$,d(t){t&&C(e)}}}function Pp(l){var c;let e,t,n,s,o;return t=new fc({props:{nodes:l[5],expanded:l[69],selectedNodeId:((c=l[26])==null?void 0:c.id)||"",onSelect:l[106],onToggle:l[136],onContextMenu:l[134],onDrop:l[137]}}),{c(){e=f("div"),Xe(t.$$.fragment),i(e,"class","workspace-tree-area svelte-4gla2c"),i(e,"role","region"),i(e,"aria-label",m("nav.workspace")),he(e,"drop-valid",l[80])},m(r,u){S(r,e,u),Je(t,e,null),n=!0,s||(o=[P(e,"dragover",hn(l[139])),P(e,"dragleave",l[140]),P(e,"drop",l[138])],s=!0)},p(r,u){var v;const p={};u[0]&32&&(p.nodes=r[5]),u[2]&128&&(p.expanded=r[69]),u[0]&67108864&&(p.selectedNodeId=((v=r[26])==null?void 0:v.id)||""),t.$set(p),(!n||u[2]&262144)&&he(e,"drop-valid",r[80])},i(r){n||(ue(t.$$.fragment,r),n=!0)},o(r){pe(t.$$.fragment,r),n=!1},d(r){r&&C(e),qe(t),s=!1,ge(o)}}}function Lp(l){let e;return{c(){e=f("span"),e.textContent=`${m("nav.selectPrompt")}`,i(e,"class","crumb placeholder svelte-4gla2c")},m(t,n){S(t,e,n)},p:$,d(t){t&&C(e)}}}function Fp(l){let e,t=ce(l[4]),n=[];for(let s=0;s',i(o,"class","dismiss-btn svelte-4gla2c"),i(o,"aria-label","Dismiss"),i(e,"class","error-banner svelte-4gla2c"),i(e,"role","button"),i(e,"tabindex","0")},m(u,p){S(u,e,p),a(e,n),a(e,s),a(e,o),c||(r=[P(o,"click",Se(l[212])),P(e,"click",l[213]),P(e,"keydown",function(){Mt(ht(l[214]))&&ht(l[214]).apply(this,arguments)})],c=!0)},p(u,p){l=u,p[0]&16777216&&t!==(t=l[102](l[24])+"")&&U(n,t)},d(u){u&&C(e),c=!1,ge(r)}}}function zp(l){let e,t,n;function s(r,u){if(r[65])return qp;if(r[4].length>0)return Jp;if(r[24])return Gp}let o=s(l),c=o&&o(l);return{c(){e=f("div"),t=f("h2"),t.textContent=`${m("welcome.title")}`,n=_(),c&&c.c(),i(t,"class","svelte-4gla2c"),i(e,"class","welcome svelte-4gla2c")},m(r,u){S(r,e,u),a(e,t),a(e,n),c&&c.m(e,null)},p(r,u){o===(o=s(r))&&c?c.p(r,u):(c&&c.d(1),c=o&&o(r),c&&(c.c(),c.m(e,null)))},i:$,o:$,d(r){r&&C(e),c&&c.d()}}}function Op(l){let e,t,n,s;function o(u,p){return u[8].length===0?Qp:Yp}let c=o(l),r=c(l);return{c(){e=f("div"),t=f("div"),n=f("h2"),n.textContent=`${m("activity.title")}`,s=_(),r.c(),i(n,"class","svelte-4gla2c"),i(t,"class","activity-feed-header svelte-4gla2c"),i(e,"class","activity-feed svelte-4gla2c")},m(u,p){S(u,e,p),a(e,t),a(t,n),a(e,s),r.m(e,null)},p(u,p){c===(c=o(u))&&r?r.p(u,p):(r.d(1),r=c(u),r&&(r.c(),r.m(e,null)))},i:$,o:$,d(u){u&&C(e),r.d()}}}function Vp(l){let e,t,n,s,o,c=l[7].date+"",r,u,p,v,g=l[7].summary&&Zi(l),h=l[41].length>0&&to(l);function b(w,T){return w[7].groups&&w[7].groups.length>0?Zp:Xp}let y=b(l),k=y(l);return{c(){e=f("div"),t=f("div"),n=f("h2"),n.textContent=`${m("today.title")}`,s=_(),o=f("span"),r=F(c),u=_(),g&&g.c(),p=_(),h&&h.c(),v=_(),k.c(),i(n,"class","svelte-4gla2c"),i(o,"class","today-date svelte-4gla2c"),i(t,"class","today-header svelte-4gla2c"),i(e,"class","today-dashboard svelte-4gla2c")},m(w,T){S(w,e,T),a(e,t),a(t,n),a(t,s),a(t,o),a(o,r),a(e,u),g&&g.m(e,null),a(e,p),h&&h.m(e,null),a(e,v),k.m(e,null)},p(w,T){T[0]&128&&c!==(c=w[7].date+"")&&U(r,c),w[7].summary?g?g.p(w,T):(g=Zi(w),g.c(),g.m(e,p)):g&&(g.d(1),g=null),w[41].length>0?h?h.p(w,T):(h=to(w),h.c(),h.m(e,v)):h&&(h.d(1),h=null),y===(y=b(w))&&k?k.p(w,T):(k.d(1),k=y(w),k&&(k.c(),k.m(e,null)))},i:$,o:$,d(w){w&&C(e),g&&g.d(),h&&h.d(),k.d()}}}function Wp(l){let e,t,n,s,o,c,r,u,p,v,g,h,b,y,k,w,T,j,M,E,N,L,D,z,R,V,K,G,J,H,q,Y,A,W,O,B,oe,ie,ee,Z,ne,ae,fe,be,Ue,Me,X,te,de,ke,_e,Ie,Ke,st,rt,je,Fe,Ce,Ve;function Ae(me,De){return me[17]?t2:e2}let He=Ae(l),Re=He(l),Oe=l[14]&&_o(l),Ee=l[18]&&vo(l),ye=l[41].length>0&&ho(l),Le=l[10]&&So(l);function We(me,De){return me[9].length===0?n2:l2}let $e=We(l),Te=$e(l);return{c(){e=f("div"),t=f("div"),n=f("h2"),n.textContent=`${m("journal.title")}`,s=_(),o=f("div"),c=f("div"),c.textContent=`${m("journal.filterHeading")}`,r=_(),u=f("div"),p=f("label"),v=f("span"),v.textContent=`${m("journal.dateFrom")}`,g=_(),h=f("input"),b=_(),y=f("label"),k=f("span"),k.textContent=`${m("journal.dateTo")}`,w=_(),T=f("input"),j=_(),M=f("label"),E=f("span"),E.textContent=`${m("journal.node")}`,N=_(),L=f("div"),Re.c(),D=_(),Oe&&Oe.c(),z=_(),R=f("label"),V=f("span"),V.textContent=`${m("journal.billable")}`,K=_(),G=f("select"),J=f("option"),J.textContent=`${m("common.all")}`,H=f("option"),H.textContent=`${m("journal.billableYes")}`,q=f("option"),q.textContent=`${m("journal.billableNo")}`,Y=_(),A=f("label"),W=f("span"),W.textContent=`${m("journal.approx")}`,O=_(),B=f("select"),oe=f("option"),oe.textContent=`${m("common.all")}`,ie=f("option"),ie.textContent=`${m("journal.approxExact")}`,ee=f("option"),ee.textContent=`${m("journal.approxEstimated")}`,Z=_(),ne=f("button"),ne.textContent=`${m("journal.filter")}`,ae=_(),fe=f("button"),fe.textContent=`${m("journal.reset")}`,be=_(),Ue=f("div"),Me=f("div"),Me.textContent=`${m("journal.exportHeading")}`,X=_(),te=f("div"),de=f("button"),de.textContent=`${m("journal.exportCSV")}`,ke=_(),_e=f("button"),_e.textContent=`${m("journal.exportMarkdown")}`,Ie=_(),Ke=f("button"),Ke.textContent="PDF",st=_(),Ee&&Ee.c(),rt=_(),ye&&ye.c(),je=_(),Le&&Le.c(),Fe=_(),Te.c(),i(n,"class","svelte-4gla2c"),i(c,"class","journal-filter-heading svelte-4gla2c"),i(v,"class","label-text svelte-4gla2c"),i(h,"type","date"),i(h,"class","svelte-4gla2c"),i(p,"class","svelte-4gla2c"),i(k,"class","label-text svelte-4gla2c"),i(T,"type","date"),i(T,"class","svelte-4gla2c"),i(y,"class","svelte-4gla2c"),i(E,"class","label-text svelte-4gla2c"),i(L,"class","journal-node-picker svelte-4gla2c"),bt(L,"position","relative"),i(M,"class","svelte-4gla2c"),i(V,"class","label-text svelte-4gla2c"),J.__value="all",ve(J,J.__value),i(J,"class","svelte-4gla2c"),H.__value="yes",ve(H,H.__value),i(H,"class","svelte-4gla2c"),q.__value="no",ve(q,q.__value),i(q,"class","svelte-4gla2c"),i(G,"class","svelte-4gla2c"),l[15]===void 0&&Ut(()=>l[282].call(G)),i(R,"title",m("journal.billableHint")),i(R,"class","svelte-4gla2c"),i(W,"class","label-text svelte-4gla2c"),oe.__value="all",ve(oe,oe.__value),i(oe,"class","svelte-4gla2c"),ie.__value="no",ve(ie,ie.__value),i(ie,"class","svelte-4gla2c"),ee.__value="yes",ve(ee,ee.__value),i(ee,"class","svelte-4gla2c"),i(B,"class","svelte-4gla2c"),l[16]===void 0&&Ut(()=>l[283].call(B)),i(A,"title",m("journal.approxHint")),i(A,"class","svelte-4gla2c"),i(ne,"class","btn btn-sm svelte-4gla2c"),i(fe,"class","btn btn-sm svelte-4gla2c"),i(u,"class","journal-filters-row svelte-4gla2c"),i(o,"class","journal-filter-section svelte-4gla2c"),i(Me,"class","journal-export-heading svelte-4gla2c"),i(de,"class","btn btn-sm svelte-4gla2c"),i(_e,"class","btn btn-sm svelte-4gla2c"),i(Ke,"class","btn btn-sm svelte-4gla2c"),i(te,"class","journal-export-row svelte-4gla2c"),i(Ue,"class","journal-export-section svelte-4gla2c"),i(t,"class","journal-header svelte-4gla2c"),i(e,"class","journal-screen svelte-4gla2c")},m(me,De){S(me,e,De),a(e,t),a(t,n),a(t,s),a(t,o),a(o,c),a(o,r),a(o,u),a(u,p),a(p,v),a(p,g),a(p,h),ve(h,l[11]),a(u,b),a(u,y),a(y,k),a(y,w),a(y,T),ve(T,l[12]),a(u,j),a(u,M),a(M,E),a(M,N),a(M,L),Re.m(L,null),a(u,D),Oe&&Oe.m(u,null),a(u,z),a(u,R),a(R,V),a(R,K),a(R,G),a(G,J),a(G,H),a(G,q),Nt(G,l[15],!0),a(u,Y),a(u,A),a(A,W),a(A,O),a(A,B),a(B,oe),a(B,ie),a(B,ee),Nt(B,l[16],!0),a(u,Z),a(u,ne),a(u,ae),a(u,fe),a(t,be),a(t,Ue),a(Ue,Me),a(Ue,X),a(Ue,te),a(te,de),a(te,ke),a(te,_e),a(te,Ie),a(te,Ke),a(te,st),Ee&&Ee.m(te,null),a(e,rt),ye&&ye.m(e,null),a(e,je),Le&&Le.m(e,null),a(e,Fe),Te.m(e,null),Ce||(Ve=[P(h,"input",l[275]),P(T,"input",l[276]),P(G,"change",l[282]),P(B,"change",l[283]),P(ne,"click",l[161]),P(fe,"click",l[168]),P(de,"click",l[284]),P(_e,"click",l[285]),P(Ke,"click",l[286])],Ce=!0)},p(me,De){De[0]&2048&&ve(h,me[11]),De[0]&4096&&ve(T,me[12]),He===(He=Ae(me))&&Re?Re.p(me,De):(Re.d(1),Re=He(me),Re&&(Re.c(),Re.m(L,null))),me[14]?Oe?Oe.p(me,De):(Oe=_o(me),Oe.c(),Oe.m(u,z)):Oe&&(Oe.d(1),Oe=null),De[0]&32768&&Nt(G,me[15]),De[0]&65536&&Nt(B,me[16]),me[18]?Ee?Ee.p(me,De):(Ee=vo(me),Ee.c(),Ee.m(te,null)):Ee&&(Ee.d(1),Ee=null),me[41].length>0?ye?ye.p(me,De):(ye=ho(me),ye.c(),ye.m(e,je)):ye&&(ye.d(1),ye=null),me[10]?Le?Le.p(me,De):(Le=So(me),Le.c(),Le.m(e,Fe)):Le&&(Le.d(1),Le=null),$e===($e=We(me))&&Te?Te.p(me,De):(Te.d(1),Te=$e(me),Te&&(Te.c(),Te.m(e,null)))},i:$,o:$,d(me){me&&C(e),Re.d(),Oe&&Oe.d(),Ee&&Ee.d(),ye&&ye.d(),Le&&Le.d(),Te.d(),Ce=!1,ge(Ve)}}}function Hp(l){var T;let e,t,n,s,o,c,r=(((T=l[53])==null?void 0:T.trashPath)||"")+"",u,p,v,g,h,b;function y(j,M){return!j[53]||(j[53].nodes||[]).length===0&&(j[53].entries||[]).length===0?f2:u2}let k=y(l),w=k(l);return{c(){e=f("div"),t=f("div"),n=f("div"),s=f("h2"),s.textContent=`${m("nav.trash")}`,o=_(),c=f("p"),u=F(r),p=_(),v=f("button"),v.textContent=`${m("trash.openFolder")}`,g=_(),w.c(),i(s,"class","svelte-4gla2c"),i(c,"class","svelte-4gla2c"),i(n,"class","svelte-4gla2c"),i(v,"class","btn btn-sm svelte-4gla2c"),i(t,"class","trash-header svelte-4gla2c"),i(e,"class","trash-screen svelte-4gla2c")},m(j,M){S(j,e,M),a(e,t),a(t,n),a(n,s),a(n,o),a(n,c),a(c,u),a(t,p),a(t,v),a(e,g),w.m(e,null),h||(b=P(v,"click",l[274]),h=!0)},p(j,M){var E;M[1]&4194304&&r!==(r=(((E=j[53])==null?void 0:E.trashPath)||"")+"")&&U(u,r),k===(k=y(j))&&w?w.p(j,M):(w.d(1),w=k(j),w&&(w.c(),w.m(e,null)))},i:$,o:$,d(j){j&&C(e),w.d(),h=!1,b()}}}function Up(l){let e,t,n,s,o,c,r,u,p,v=(l[45]?m("common.loading"):m("inbox.pasteClipboard"))+"",g,h,b,y,k,w=l[46]&&Vo(l);function T(E,N){return E[43].length===0?v2:_2}let j=T(l),M=j(l);return{c(){e=f("div"),t=f("div"),n=f("div"),s=f("h2"),s.textContent=`${m("nav.inbox")}`,o=_(),c=f("p"),c.textContent=`${m("inbox.subtitle")}`,r=_(),u=f("div"),p=f("button"),g=F(v),h=_(),w&&w.c(),b=_(),M.c(),i(s,"class","svelte-4gla2c"),i(c,"class","svelte-4gla2c"),i(n,"class","svelte-4gla2c"),i(p,"class","btn btn-primary svelte-4gla2c"),p.disabled=l[45],i(u,"class","inbox-header-actions svelte-4gla2c"),i(t,"class","inbox-header svelte-4gla2c"),i(e,"class","inbox-screen svelte-4gla2c"),i(e,"role","region"),i(e,"aria-label",m("nav.inbox")),he(e,"drop-valid",l[81])},m(E,N){S(E,e,N),a(e,t),a(t,n),a(n,s),a(n,o),a(n,c),a(t,r),a(t,u),a(u,p),a(p,g),a(u,h),w&&w.m(u,null),a(e,b),M.m(e,null),y||(k=[P(p,"click",l[177]),P(e,"dragover",l[178]),P(e,"dragleave",l[179]),P(e,"drop",l[180])],y=!0)},p(E,N){N[1]&16384&&v!==(v=(E[45]?m("common.loading"):m("inbox.pasteClipboard"))+"")&&U(g,v),N[1]&16384&&(p.disabled=E[45]),E[46]?w?w.p(E,N):(w=Vo(E),w.c(),w.m(u,null)):w&&(w.d(1),w=null),j===(j=T(E))&&M?M.p(E,N):(M.d(1),M=j(E),M&&(M.c(),M.m(e,null))),N[2]&524288&&he(e,"drop-valid",E[81])},i:$,o:$,d(E){E&&C(e),w&&w.d(),M.d(),y=!1,ge(k)}}}function Bp(l){let e,t,n,s,o,c,r=ce(l[104]),u=[];for(let h=0;h{v[y]=null}),gt()),~s?(o=v[s],o?o.p(h,b):(o=v[s]=p[s](h),o.c()),ue(o,1),o.m(n,null)):o=null)},i(h){c||(ue(o),c=!0)},o(h){pe(o),c=!1},d(h){h&&(C(e),C(t),C(n)),Ne(u,h),~s&&v[s].d()}}}function Kp(l){let e,t,n,s=l[29].title+"",o,c,r,u,p,v,g,h,b,y,k,w=l[29].dirty&&wa();return{c(){e=f("div"),t=f("div"),n=f("span"),o=F(s),c=_(),w&&w.c(),r=_(),u=f("div"),p=f("button"),p.textContent=`${m("common.save")}`,v=_(),g=f("button"),g.textContent=`${m("common.close")}`,h=_(),b=f("textarea"),i(n,"class","note-title svelte-4gla2c"),i(p,"class","btn btn-primary svelte-4gla2c"),i(g,"class","btn svelte-4gla2c"),i(u,"class","note-editor-actions svelte-4gla2c"),i(t,"class","note-editor-header svelte-4gla2c"),i(b,"class","note-textarea svelte-4gla2c"),i(b,"placeholder",m("note.placeholder")),i(e,"class","note-editor svelte-4gla2c")},m(T,j){S(T,e,j),a(e,t),a(t,n),a(n,o),a(t,c),w&&w.m(t,null),a(t,r),a(t,u),a(u,p),a(u,v),a(u,g),a(e,h),a(e,b),ve(b,l[29].content),y||(k=[P(p,"click",l[152]),P(g,"click",l[150]),P(b,"input",l[215]),P(b,"input",l[151])],y=!0)},p(T,j){j[0]&536870912&&s!==(s=T[29].title+"")&&U(o,s),T[29].dirty?w||(w=wa(),w.c(),w.m(t,r)):w&&(w.d(1),w=null),j[0]&536870912&&ve(b,T[29].content)},i:$,o:$,d(T){T&&C(e),w&&w.d(),y=!1,ge(k)}}}function Gp(l){let e,t=m("common.error")+"",n,s,o;return{c(){e=f("p"),n=F(t),s=_(),o=F(l[24]),i(e,"class","error-text svelte-4gla2c")},m(c,r){S(c,e,r),a(e,n),a(e,s),a(e,o)},p(c,r){r[0]&16777216&&U(o,c[24])},d(c){c&&C(e)}}}function Jp(l){let e,t,n;return{c(){e=f("p"),e.textContent=`${m("welcome.selectSection")}`,t=_(),n=f("p"),n.textContent=`${m("welcome.createCase")}`,i(e,"class","svelte-4gla2c"),i(n,"class","hint svelte-4gla2c")},m(s,o){S(s,e,o),S(s,t,o),S(s,n,o)},p:$,d(s){s&&(C(e),C(t),C(n))}}}function qp(l){let e;return{c(){e=f("p"),e.textContent=`${m("common.loading")}`,i(e,"class","svelte-4gla2c")},m(t,n){S(t,e,n)},p:$,d(t){t&&C(e)}}}function Yp(l){let e,t=ce(l[8]),n=[];for(let s=0;s0&&xi(l),o=l[7].summary.notes>0&&$i(l),c=l[7].summary.files>0&&eo(l);return{c(){e=f("div"),s&&s.c(),t=_(),o&&o.c(),n=_(),c&&c.c(),i(e,"class","today-summary svelte-4gla2c")},m(r,u){S(r,e,u),s&&s.m(e,null),a(e,t),o&&o.m(e,null),a(e,n),c&&c.m(e,null)},p(r,u){r[7].summary.changedCases>0?s?s.p(r,u):(s=xi(r),s.c(),s.m(e,t)):s&&(s.d(1),s=null),r[7].summary.notes>0?o?o.p(r,u):(o=$i(r),o.c(),o.m(e,n)):o&&(o.d(1),o=null),r[7].summary.files>0?c?c.p(r,u):(c=eo(r),c.c(),c.m(e,null)):c&&(c.d(1),c=null)},d(r){r&&C(e),s&&s.d(),o&&o.d(),c&&c.d()}}}function xi(l){let e,t=l[7].summary.changedCases+"",n,s,o=It(l[7].summary.changedCases,m("today.plural.case_one"),m("today.plural.case_few"),m("today.plural.case_many"))+"",c;return{c(){e=f("span"),n=F(t),s=_(),c=F(o),i(e,"class","summary-chip svelte-4gla2c")},m(r,u){S(r,e,u),a(e,n),a(e,s),a(e,c)},p(r,u){u[0]&128&&t!==(t=r[7].summary.changedCases+"")&&U(n,t),u[0]&128&&o!==(o=It(r[7].summary.changedCases,m("today.plural.case_one"),m("today.plural.case_few"),m("today.plural.case_many"))+"")&&U(c,o)},d(r){r&&C(e)}}}function $i(l){let e,t=l[7].summary.notes+"",n,s,o=It(l[7].summary.notes,m("today.plural.note_one"),m("today.plural.note_few"),m("today.plural.note_many"))+"",c;return{c(){e=f("span"),n=F(t),s=_(),c=F(o),i(e,"class","summary-chip svelte-4gla2c")},m(r,u){S(r,e,u),a(e,n),a(e,s),a(e,c)},p(r,u){u[0]&128&&t!==(t=r[7].summary.notes+"")&&U(n,t),u[0]&128&&o!==(o=It(r[7].summary.notes,m("today.plural.note_one"),m("today.plural.note_few"),m("today.plural.note_many"))+"")&&U(c,o)},d(r){r&&C(e)}}}function eo(l){let e,t=l[7].summary.files+"",n,s,o=It(l[7].summary.files,m("today.plural.file_one"),m("today.plural.file_few"),m("today.plural.file_many"))+"",c;return{c(){e=f("span"),n=F(t),s=_(),c=F(o),i(e,"class","summary-chip svelte-4gla2c")},m(r,u){S(r,e,u),a(e,n),a(e,s),a(e,c)},p(r,u){u[0]&128&&t!==(t=r[7].summary.files+"")&&U(n,t),u[0]&128&&o!==(o=It(r[7].summary.files,m("today.plural.file_one"),m("today.plural.file_few"),m("today.plural.file_many"))+"")&&U(c,o)},d(r){r&&C(e)}}}function to(l){let e,t,n,s=ce(l[41]),o=[];for(let c=0;c0&&lo(l);return{c(){e=f("div"),t=f("div"),n=f("div"),s=f("button"),c=F(o),r=_(),u=f("span"),v=F(p),g=_(),h=f("span"),y=F(b),k=_(),w=f("div"),T=f("input"),M=_(),E=f("span"),E.textContent=`${m("suggest.minutes")}`,N=_(),L=f("button"),L.textContent=`${m("suggest.edit")}`,D=_(),z=f("button"),z.textContent=`${m("suggest.apply")}`,R=_(),V=f("button"),V.textContent=`${m("common.delete")}`,K=_(),ie&&ie.c(),G=_(),i(s,"class","suggestion-node link-btn svelte-4gla2c"),i(u,"class","suggestion-summary svelte-4gla2c"),i(h,"class","suggestion-confidence svelte-4gla2c"),he(h,"low",l[442].confidence==="low"),he(h,"medium",l[442].confidence==="medium"),he(h,"high",l[442].confidence==="high"),i(n,"class","suggestion-info svelte-4gla2c"),i(T,"type","number"),i(T,"class","suggestion-min-input svelte-4gla2c"),T.value=j=l[442].suggestedMin,i(T,"min","1"),i(T,"max","480"),i(E,"class","suggestion-min-label svelte-4gla2c"),i(L,"class","btn btn-sm svelte-4gla2c"),i(z,"class","btn btn-sm btn-primary svelte-4gla2c"),i(V,"class","btn btn-sm btn-danger svelte-4gla2c"),i(w,"class","suggestion-actions svelte-4gla2c"),i(t,"class","suggestion-main svelte-4gla2c"),i(t,"role","button"),i(t,"tabindex","0"),i(e,"class","suggestion-card svelte-4gla2c"),he(e,"expanded",l[442]._expanded)},m(ee,Z){S(ee,e,Z),a(e,t),a(t,n),a(n,s),a(s,c),a(n,r),a(n,u),a(u,v),a(n,g),a(n,h),a(h,y),a(t,k),a(t,w),a(w,T),a(w,M),a(w,E),a(w,N),a(w,L),a(w,D),a(w,z),a(w,R),a(w,V),a(e,K),ie&&ie.m(e,null),a(e,G),J||(H=[P(s,"click",Se(q)),P(T,"change",Se(Y)),P(L,"click",Se(A)),P(z,"click",Se(W)),P(V,"click",Se(O)),P(t,"click",B),P(t,"keydown",oe)],J=!0)},p(ee,Z){l=ee,Z[1]&1024&&o!==(o=l[442].nodeTitle+"")&&U(c,o),Z[1]&1024&&p!==(p=l[442].summary+"")&&U(v,p),Z[1]&1024&&b!==(b=m("suggest.confidence."+l[442].confidence)+"")&&U(y,b),Z[1]&1024&&he(h,"low",l[442].confidence==="low"),Z[1]&1024&&he(h,"medium",l[442].confidence==="medium"),Z[1]&1024&&he(h,"high",l[442].confidence==="high"),Z[1]&1024&&j!==(j=l[442].suggestedMin)&&T.value!==j&&(T.value=j),l[442].events&&l[442].events.length>0?ie?ie.p(l,Z):(ie=lo(l),ie.c(),ie.m(e,G)):ie&&(ie.d(1),ie=null),Z[1]&1024&&he(e,"expanded",l[442]._expanded)},d(ee){ee&&C(e),ie&&ie.d(),J=!1,ge(H)}}}function Xp(l){let e,t,n,s;return{c(){e=f("div"),t=f("p"),t.textContent=`${m("today.empty")}`,n=_(),s=f("p"),s.textContent=`${m("today.emptyHint")}`,i(t,"class","svelte-4gla2c"),i(s,"class","hint svelte-4gla2c"),i(e,"class","today-empty svelte-4gla2c")},m(o,c){S(o,e,c),a(e,t),a(e,n),a(e,s)},p:$,d(o){o&&C(e)}}}function Zp(l){let e,t,n=ce(l[7].groups),s=[];for(let c=0;c0&&fo(l);return{c(){for(let c=0;c0?o?o.p(c,r):(o=fo(c),o.c(),o.m(t.parentNode,t)):o&&(o.d(1),o=null)},d(c){c&&(C(e),C(t)),Ne(s,c),o&&o.d(c)}}}function ao(l){let e,t=l[478].events.length+"",n,s,o=It(l[478].events.length,m("today.plural.event_one"),m("today.plural.event_few"),m("today.plural.event_many"))+"",c;return{c(){e=f("span"),n=F(t),s=_(),c=F(o),i(e,"class","today-case-count svelte-4gla2c")},m(r,u){S(r,e,u),a(e,n),a(e,s),a(e,c)},p(r,u){u[0]&128&&t!==(t=r[478].events.length+"")&&U(n,t),u[0]&128&&o!==(o=It(r[478].events.length,m("today.plural.event_one"),m("today.plural.event_few"),m("today.plural.event_many"))+"")&&U(c,o)},d(r){r&&C(e)}}}function xp(l){let e;return{c(){e=f("div"),e.textContent=`${m("today.changedCases")}`,i(e,"class","today-events-empty svelte-4gla2c")},m(t,n){S(t,e,n)},p:$,d(t){t&&C(e)}}}function $p(l){let e,t=ce(l[478].events),n=[];for(let s=0;s0?$p:xp}let L=N(l),D=L(l);return{c(){e=f("div"),t=f("div"),n=f("span"),o=F(s),c=_(),r=f("span"),p=F(u),v=_(),j&&j.c(),g=_(),h=f("span"),y=F(b),k=_(),D.c(),i(n,"class","today-case-title svelte-4gla2c"),i(r,"class","today-case-type svelte-4gla2c"),i(h,"class","today-case-time svelte-4gla2c"),i(t,"class","today-case-header svelte-4gla2c"),i(t,"role","button"),i(t,"tabindex","0"),i(e,"class","today-case svelte-4gla2c")},m(z,R){S(z,e,R),a(e,t),a(t,n),a(n,o),a(t,c),a(t,r),a(r,p),a(t,v),j&&j.m(t,null),a(t,g),a(t,h),a(h,y),a(e,k),D.m(e,null),w||(T=[P(t,"click",M),P(t,"keydown",E)],w=!0)},p(z,R){l=z,R[0]&128&&s!==(s=l[478].nodeTitle+"")&&U(o,s),R[0]&128&&u!==(u=l[175](l[478].nodeKind)+"")&&U(p,u),l[478].events?j?j.p(l,R):(j=ao(l),j.c(),j.m(t,g)):j&&(j.d(1),j=null),R[0]&128&&b!==(b=dt(l[478].lastActivityAt)+"")&&U(y,b),L===(L=N(l))&&D?D.p(l,R):(D.d(1),D=L(l),D&&(D.c(),D.m(e,null)))},d(z){z&&C(e),j&&j.d(),D.d(),w=!1,ge(T)}}}function fo(l){let e,t,n,s=ce(l[7].events),o=[];for(let c=0;c0&&bo(l);return{c(){e=f("div"),t=f("div"),n=f("div"),s=f("button"),c=F(o),r=_(),u=f("span"),v=F(p),g=_(),h=f("span"),y=F(b),k=_(),w=f("div"),T=f("input"),M=_(),E=f("span"),E.textContent=`${m("suggest.minutes")}`,N=_(),L=f("button"),L.textContent=`${m("suggest.edit")}`,D=_(),z=f("button"),z.textContent=`${m("suggest.apply")}`,R=_(),V=f("button"),V.textContent=`${m("common.delete")}`,K=_(),ie&&ie.c(),G=_(),i(s,"class","suggestion-node link-btn svelte-4gla2c"),i(u,"class","suggestion-summary svelte-4gla2c"),i(h,"class","suggestion-confidence svelte-4gla2c"),he(h,"low",l[442].confidence==="low"),he(h,"medium",l[442].confidence==="medium"),he(h,"high",l[442].confidence==="high"),i(n,"class","suggestion-info svelte-4gla2c"),i(T,"type","number"),i(T,"class","suggestion-min-input svelte-4gla2c"),T.value=j=l[442].suggestedMin,i(T,"min","1"),i(T,"max","480"),i(E,"class","suggestion-min-label svelte-4gla2c"),i(L,"class","btn btn-sm svelte-4gla2c"),i(z,"class","btn btn-sm btn-primary svelte-4gla2c"),i(V,"class","btn btn-sm btn-danger svelte-4gla2c"),i(w,"class","suggestion-actions svelte-4gla2c"),i(t,"class","suggestion-main svelte-4gla2c"),i(t,"role","button"),i(t,"tabindex","0"),i(e,"class","suggestion-card svelte-4gla2c"),he(e,"expanded",l[442]._expanded)},m(ee,Z){S(ee,e,Z),a(e,t),a(t,n),a(n,s),a(s,c),a(n,r),a(n,u),a(u,v),a(n,g),a(n,h),a(h,y),a(t,k),a(t,w),a(w,T),a(w,M),a(w,E),a(w,N),a(w,L),a(w,D),a(w,z),a(w,R),a(w,V),a(e,K),ie&&ie.m(e,null),a(e,G),J||(H=[P(s,"click",Se(q)),P(T,"change",Se(Y)),P(L,"click",Se(A)),P(z,"click",Se(W)),P(V,"click",Se(O)),P(t,"click",B),P(t,"keydown",oe)],J=!0)},p(ee,Z){l=ee,Z[1]&1024&&o!==(o=l[442].nodeTitle+"")&&U(c,o),Z[1]&1024&&p!==(p=l[442].summary+"")&&U(v,p),Z[1]&1024&&b!==(b=m("suggest.confidence."+l[442].confidence)+"")&&U(y,b),Z[1]&1024&&he(h,"low",l[442].confidence==="low"),Z[1]&1024&&he(h,"medium",l[442].confidence==="medium"),Z[1]&1024&&he(h,"high",l[442].confidence==="high"),Z[1]&1024&&j!==(j=l[442].suggestedMin)&&T.value!==j&&(T.value=j),l[442].events&&l[442].events.length>0?ie?ie.p(l,Z):(ie=bo(l),ie.c(),ie.m(e,G)):ie&&(ie.d(1),ie=null),Z[1]&1024&&he(e,"expanded",l[442]._expanded)},d(ee){ee&&C(e),ie&&ie.d(),J=!1,ge(H)}}}function So(l){let e,t,n=m("journal.total")+"",s,o,c=Math.floor(l[10].totalMinutes/60)+"",r,u,p=l[10].totalMinutes%60+"",v,g,h=l[10].totalEntries+"",b,y,k=m("worklog.min")+"",w,T,j,M,E=l[10].byDay&&l[10].byDay.length>0&&To(l),N=l[10].byNode&&l[10].byNode.length>0&&Eo(l);return{c(){e=f("div"),t=f("div"),s=F(n),o=F(": "),r=F(c),u=F("ч "),v=F(p),g=F("м ("),b=F(h),y=_(),w=F(k),T=F(")"),j=_(),E&&E.c(),M=_(),N&&N.c(),i(t,"class","summary-total svelte-4gla2c"),i(e,"class","journal-summary svelte-4gla2c")},m(L,D){S(L,e,D),a(e,t),a(t,s),a(t,o),a(t,r),a(t,u),a(t,v),a(t,g),a(t,b),a(t,y),a(t,w),a(t,T),a(e,j),E&&E.m(e,null),a(e,M),N&&N.m(e,null)},p(L,D){D[0]&1024&&c!==(c=Math.floor(L[10].totalMinutes/60)+"")&&U(r,c),D[0]&1024&&p!==(p=L[10].totalMinutes%60+"")&&U(v,p),D[0]&1024&&h!==(h=L[10].totalEntries+"")&&U(b,h),L[10].byDay&&L[10].byDay.length>0?E?E.p(L,D):(E=To(L),E.c(),E.m(e,M)):E&&(E.d(1),E=null),L[10].byNode&&L[10].byNode.length>0?N?N.p(L,D):(N=Eo(L),N.c(),N.m(e,null)):N&&(N.d(1),N=null)},d(L){L&&C(e),E&&E.d(),N&&N.d()}}}function To(l){let e,t,n,s=ce(l[10].byDay),o=[];for(let c=0;c0?c2:z[460].source==="suggestion"?a2:z[460].source==="unknown"||z[460].source==="imported"?o2:z[460]._hasEvents?i2:s2}let N=E(l),L=N(l),D=l[460]._events&&Po(l);return{c(){e=f("tr"),t=f("td"),n=f("div"),s=f("div"),o=f("button"),o.textContent=`${m("worklog.editEntry")}`,c=_(),r=f("button"),r.textContent=`${m("worklog.deleteEntry")}`,u=_(),M&&M.c(),p=_(),v=f("div"),g=f("span"),g.textContent=`${m("worklog.source")}`,h=_(),L.c(),b=_(),D&&D.c(),y=_(),i(o,"class","btn btn-sm svelte-4gla2c"),i(r,"class","btn btn-sm btn-danger svelte-4gla2c"),i(s,"class","journal-detail-actions svelte-4gla2c"),i(g,"class","journal-detail-label svelte-4gla2c"),i(v,"class","journal-detail-section svelte-4gla2c"),i(n,"class","journal-detail-body svelte-4gla2c"),i(t,"colspan","8"),i(t,"class","svelte-4gla2c"),i(e,"class","journal-row-detail svelte-4gla2c")},m(z,R){S(z,e,R),a(e,t),a(t,n),a(n,s),a(s,o),a(s,c),a(s,r),a(n,u),M&&M.m(n,null),a(n,p),a(n,v),a(v,g),a(v,h),L.m(v,null),a(n,b),D&&D.m(n,null),a(e,y),k||(w=[P(o,"click",Se(T)),P(r,"click",Se(j))],k=!0)},p(z,R){l=z,l[460].details?M?M.p(l,R):(M=Ao(l),M.c(),M.m(n,p)):M&&(M.d(1),M=null),N!==(N=E(l))&&(L.d(1),L=N(l),L&&(L.c(),L.m(v,null))),l[460]._events?D?D.p(l,R):(D=Po(l),D.c(),D.m(n,null)):D&&(D.d(1),D=null)},d(z){z&&C(e),M&&M.d(),L.d(),D&&D.d(),k=!1,ge(w)}}}function Ao(l){let e,t,n,s,o=l[460].details+"",c;return{c(){e=f("div"),t=f("span"),t.textContent=`${m("worklog.details")}`,n=_(),s=f("p"),c=F(o),i(t,"class","journal-detail-label svelte-4gla2c"),i(s,"class","svelte-4gla2c"),i(e,"class","journal-detail-section svelte-4gla2c")},m(r,u){S(r,e,u),a(e,t),a(e,n),a(e,s),a(s,c)},p(r,u){u[0]&512&&o!==(o=r[460].details+"")&&U(c,o)},d(r){r&&C(e)}}}function s2(l){let e;return{c(){e=f("p"),e.textContent=`${m("worklog.sourceUnknown")}`,i(e,"class","svelte-4gla2c")},m(t,n){S(t,e,n)},d(t){t&&C(e)}}}function i2(l){let e;return{c(){e=f("p"),e.textContent=`${m("worklog.sourceSuggestion")}`,i(e,"class","svelte-4gla2c")},m(t,n){S(t,e,n)},d(t){t&&C(e)}}}function o2(l){let e;return{c(){e=f("p"),e.textContent=`${m("worklog.sourceUnknown")}`,i(e,"class","svelte-4gla2c")},m(t,n){S(t,e,n)},d(t){t&&C(e)}}}function a2(l){let e;return{c(){e=f("p"),e.textContent=`${m("worklog.sourceSuggestionNoEvents")}`,i(e,"class","svelte-4gla2c")},m(t,n){S(t,e,n)},d(t){t&&C(e)}}}function c2(l){let e;return{c(){e=f("p"),e.textContent=`${m("worklog.sourceSuggestion")}`,i(e,"class","svelte-4gla2c")},m(t,n){S(t,e,n)},d(t){t&&C(e)}}}function r2(l){let e;return{c(){e=f("p"),e.textContent=`${m("worklog.sourceManual")}`,i(e,"class","svelte-4gla2c")},m(t,n){S(t,e,n)},d(t){t&&C(e)}}}function Po(l){let e,t,n,s=ce(l[460]._events),o=[];for(let c=0;c',i(e,"class","inbox-icon-btn inbox-icon-btn-primary svelte-4gla2c"),i(e,"title",m("inbox.keepHere")),i(e,"aria-label",m("inbox.keepHere"))},m(o,c){S(o,e,c),t||(n=P(e,"click",Se(s)),t=!0)},p(o,c){l=o},d(o){o&&C(e),t=!1,n()}}}function Ho(l){let e,t,n;function s(){return l[270](l[426])}return{c(){e=f("button"),e.textContent=`${m("file.showInExplorer")}`,i(e,"class","btn btn-sm svelte-4gla2c")},m(o,c){S(o,e,c),t||(n=P(e,"click",Se(s)),t=!0)},p(o,c){l=o},d(o){o&&C(e),t=!1,n()}}}function Uo(l){let e,t,n,s=l[426].title+"",o,c,r,u=l[176](l[426])+"",p,v,g,h,b,y,k,w,T=Ja(l[426]),j,M,E,N,L,D=l[426].suggestedTargetNodeId&&Wo(l);function z(){return l[268](l[426])}function R(){return l[269](l[426])}let V=T&&Ho(l);function K(){return l[271](l[426])}function G(){return l[272](l[426])}function J(...H){return l[273](l[426],...H)}return{c(){e=f("div"),t=f("div"),n=f("span"),o=F(s),c=_(),r=f("span"),p=F(u),v=_(),g=f("div"),D&&D.c(),h=_(),b=f("button"),b.innerHTML='',y=_(),k=f("button"),k.innerHTML='',w=_(),V&&V.c(),j=_(),M=f("button"),M.innerHTML='',E=_(),i(n,"class","inbox-item-title svelte-4gla2c"),i(r,"class","inbox-item-meta svelte-4gla2c"),i(t,"class","inbox-item-main svelte-4gla2c"),i(b,"class","inbox-icon-btn svelte-4gla2c"),i(b,"title",m("inbox.assign")),i(b,"aria-label",m("inbox.assign")),i(k,"class","inbox-icon-btn svelte-4gla2c"),i(k,"title",m("common.open")),i(k,"aria-label",m("common.open")),i(M,"class","inbox-icon-btn inbox-icon-btn-danger svelte-4gla2c"),i(M,"title",m("common.delete")),i(M,"aria-label",m("common.delete")),i(g,"class","inbox-item-actions svelte-4gla2c"),i(e,"class","inbox-item svelte-4gla2c"),i(e,"role","button"),i(e,"tabindex","0")},m(H,q){S(H,e,q),a(e,t),a(t,n),a(n,o),a(t,c),a(t,r),a(r,p),a(e,v),a(e,g),D&&D.m(g,null),a(g,h),a(g,b),a(g,y),a(g,k),a(g,w),V&&V.m(g,null),a(g,j),a(g,M),a(e,E),N||(L=[P(b,"click",Se(z)),P(k,"click",Se(R)),P(M,"click",Se(K)),P(e,"click",G),P(e,"keydown",J)],N=!0)},p(H,q){l=H,q[1]&4096&&s!==(s=l[426].title+"")&&U(o,s),q[1]&4096&&u!==(u=l[176](l[426])+"")&&U(p,u),l[426].suggestedTargetNodeId?D?D.p(l,q):(D=Wo(l),D.c(),D.m(g,h)):D&&(D.d(1),D=null),q[1]&4096&&(T=Ja(l[426])),T?V?V.p(l,q):(V=Ho(l),V.c(),V.m(g,j)):V&&(V.d(1),V=null)},d(H){H&&C(e),D&&D.d(),V&&V.d(),N=!1,ge(L)}}}function h2(l){let e;return{c(){e=f("span"),i(e,"class","tab-separator svelte-4gla2c"),i(e,"aria-hidden","true")},m(t,n){S(t,e,n)},d(t){t&&C(e)}}}function Bo(l){let e,t,n,s,o=l[449].id==="activity"&&h2();function c(){return l[216](l[449])}return{c(){o&&o.c(),e=_(),t=f("button"),t.textContent=`${l[449].label}`,i(t,"class","tab svelte-4gla2c"),he(t,"active",l[27]===l[449].id)},m(r,u){o&&o.m(r,u),S(r,e,u),S(r,t,u),n||(s=P(t,"click",c),n=!0)},p(r,u){l=r,u[0]&134217728|u[3]&2048&&he(t,"active",l[27]===l[449].id)},d(r){r&&(C(e),C(t)),o&&o.d(r),n=!1,s()}}}function b2(l){let e;function t(o,c){return o[22].length===0?D2:E2}let n=t(l),s=n(l);return{c(){e=f("div"),s.c(),i(e,"class","activity-tab svelte-4gla2c")},m(o,c){S(o,e,c),s.m(e,null)},p(o,c){n===(n=t(o))&&s?s.p(o,c):(s.d(1),s=n(o),s&&(s.c(),s.m(e,null)))},i:$,o:$,d(o){o&&C(e),s.d()}}}function k2(l){let e,t,n,s,o=l[26]&&l[41].filter(l[208]).length>0,c,r,u,p=o&&qo(l);function v(b,y){return b[31].length===0?M2:N2}let g=v(l),h=g(l);return{c(){e=f("div"),t=f("div"),n=f("button"),n.textContent=`+ ${m("worklog.addEntry")}`,s=_(),p&&p.c(),c=_(),h.c(),i(n,"class","btn btn-primary btn-sm svelte-4gla2c"),i(t,"class","worklog-toolbar svelte-4gla2c"),i(e,"class","worklog-tab svelte-4gla2c")},m(b,y){S(b,e,y),a(e,t),a(t,n),a(e,s),p&&p.m(e,null),a(e,c),h.m(e,null),r||(u=P(n,"click",l[250]),r=!0)},p(b,y){y[0]&67108864|y[1]&1024&&(o=b[26]&&b[41].filter(b[208]).length>0),o?p?p.p(b,y):(p=qo(b),p.c(),p.m(e,c)):p&&(p.d(1),p=null),g===(g=v(b))&&h?h.p(b,y):(h.d(1),h=g(b),h&&(h.c(),h.m(e,null)))},i:$,o:$,d(b){b&&C(e),p&&p.d(),h.d(),r=!1,u()}}}function y2(l){let e,t,n,s,o,c;function r(v,g){return v[30].length===0?z2:R2}let u=r(l),p=u(l);return{c(){e=f("div"),t=f("div"),n=f("button"),n.textContent=`${m("action.addAction")}`,s=_(),p.c(),i(n,"class","btn btn-primary svelte-4gla2c"),i(t,"class","tab-toolbar svelte-4gla2c"),i(e,"class","actions-tab svelte-4gla2c")},m(v,g){S(v,e,g),a(e,t),a(t,n),a(e,s),p.m(e,null),o||(c=P(n,"click",l[194]),o=!0)},p(v,g){u===(u=r(v))&&p?p.p(v,g):(p.d(1),p=u(v),p&&(p.c(),p.m(e,null)))},i:$,o:$,d(v){v&&C(e),p.d(),o=!1,c()}}}function w2(l){let e,t;function n(r,u){return r[47].length===0?V2:O2}let s=n(l),o=s(l),c=l[52]&&fa(l);return{c(){e=f("div"),o.c(),t=_(),c&&c.c(),i(e,"class","links-tab svelte-4gla2c")},m(r,u){S(r,e,u),o.m(e,null),a(e,t),c&&c.m(e,null)},p(r,u){s===(s=n(r))&&o?o.p(r,u):(o.d(1),o=s(r),o&&(o.c(),o.m(e,t))),r[52]?c?c.p(r,u):(c=fa(r),c.c(),c.m(e,null)):c&&(c.d(1),c=null)},i:$,o:$,d(r){r&&C(e),o.d(),c&&c.d()}}}function C2(l){let e;function t(o,c){return o[44].length===0?H2:W2}let n=t(l),s=n(l);return{c(){e=f("div"),s.c(),i(e,"class","inbox-tab svelte-4gla2c")},m(o,c){S(o,e,c),s.m(e,null)},p(o,c){n===(n=t(o))&&s?s.p(o,c):(s.d(1),s=n(o),s&&(s.c(),s.m(e,null)))},i:$,o:$,d(o){o&&C(e),s.d()}}}function S2(l){let e,t,n,s=m("file.addFile")+"",o,c,r,u=m("file.addFolder")+"",p,v,g,h,b,y,k,w,T,j,M,E=l[78].items.length>0&&pa(l);const N=[B2,U2],L=[];function D(R,V){return R[70]?0:1}y=D(l),k=L[y]=N[y](l);let z=l[66]&&!l[68]&&ga();return{c(){e=f("div"),t=f("div"),n=f("button"),o=F(s),c=_(),r=f("button"),p=F(u),v=_(),g=f("button"),g.textContent=`${m("file.newFile")}`,h=_(),E&&E.c(),b=_(),k.c(),w=_(),z&&z.c(),i(n,"class","btn btn-primary svelte-4gla2c"),n.disabled=l[66],i(r,"class","btn svelte-4gla2c"),r.disabled=l[66],i(g,"class","btn svelte-4gla2c"),i(t,"class","tab-toolbar svelte-4gla2c"),i(e,"class","files-tab svelte-4gla2c")},m(R,V){S(R,e,V),a(e,t),a(t,n),a(n,o),a(t,c),a(t,r),a(r,p),a(t,v),a(t,g),a(t,h),E&&E.m(t,null),a(e,b),L[y].m(e,null),a(e,w),z&&z.m(e,null),T=!0,j||(M=[P(n,"click",l[169]),P(r,"click",l[170]),P(g,"click",l[113])],j=!0)},p(R,V){(!T||V[2]&16)&&(n.disabled=R[66]),(!T||V[2]&16)&&(r.disabled=R[66]),R[78].items.length>0?E?E.p(R,V):(E=pa(R),E.c(),E.m(t,null)):E&&(E.d(1),E=null);let K=y;y=D(R),y===K?L[y].p(R,V):(mt(),pe(L[K],1,1,()=>{L[K]=null}),gt(),k=L[y],k?k.p(R,V):(k=L[y]=N[y](R),k.c()),ue(k,1),k.m(e,w)),R[66]&&!R[68]?z||(z=ga(),z.c(),z.m(e,null)):z&&(z.d(1),z=null)},i(R){T||(ue(k),T=!0)},o(R){pe(k),T=!1},d(R){R&&C(e),E&&E.d(),L[y].d(),z&&z.d(),j=!1,ge(M)}}}function T2(l){let e,t,n,s,o,c,r,u=l[59]&&_a(l);function p(h,b){return h[28].length===0&&!h[59]?Q2:Y2}let v=p(l),g=v(l);return{c(){e=f("div"),t=f("div"),n=f("button"),n.textContent=`${m("note.add")}`,s=_(),u&&u.c(),o=_(),g.c(),i(n,"class","btn btn-primary svelte-4gla2c"),i(t,"class","tab-toolbar svelte-4gla2c"),i(e,"class","notes-tab svelte-4gla2c")},m(h,b){S(h,e,b),a(e,t),a(t,n),a(e,s),u&&u.m(e,null),a(e,o),g.m(e,null),c||(r=P(n,"click",l[146]),c=!0)},p(h,b){h[59]?u?u.p(h,b):(u=_a(h),u.c(),u.m(e,o)):u&&(u.d(1),u=null),v===(v=p(h))&&g?g.p(h,b):(g.d(1),g=v(h),g&&(g.c(),g.m(e,null)))},i:$,o:$,d(h){h&&C(e),u&&u.d(),g.d(),c=!1,r()}}}function j2(l){let e,t,n=l[26].title+"",s,o,c,r,u,p,v=l[175](l[26].type)+"",g,h,b,y,k,w=(l[26].section||"—")+"",T,j,M,E,N,L=vt(l[26].createdAt)+"",D,z,R,V,K,G,J,H,q=m("overview.newNote")+"",Y,A,W,O,B,oe,ie=m("overview.addFile")+"",ee,Z,ne,ae,fe,be,Ue=m("overview.addAction")+"",Me,X,te,de,ke,_e,Ie,Ke=m("overview.logTime")+"",st,rt,je,Fe,Ce,Ve=l[28].length>0&&ha(l),Ae=l[31].length>0&&ka(l);return{c(){e=f("div"),t=f("h2"),s=F(n),o=_(),c=f("div"),r=f("div"),u=f("span"),u.textContent=`${m("overview.type")}`,p=f("span"),g=F(v),h=_(),b=f("div"),y=f("span"),y.textContent=`${m("overview.section")}`,k=f("span"),T=F(w),j=_(),M=f("div"),E=f("span"),E.textContent=`${m("overview.created")}`,N=f("span"),D=F(L),z=_(),R=f("div"),V=f("button"),K=Q("svg"),G=Q("path"),J=Q("path"),H=_(),Y=F(q),A=_(),W=f("button"),O=Q("svg"),B=Q("path"),oe=_(),ee=F(ie),Z=_(),ne=f("button"),ae=Q("svg"),fe=Q("polygon"),be=_(),Me=F(Ue),X=_(),te=f("button"),de=Q("svg"),ke=Q("circle"),_e=Q("polyline"),Ie=_(),st=F(Ke),rt=_(),Ve&&Ve.c(),je=_(),Ae&&Ae.c(),i(t,"class","svelte-4gla2c"),i(u,"class","meta-label svelte-4gla2c"),i(p,"class","svelte-4gla2c"),i(r,"class","meta-item svelte-4gla2c"),i(y,"class","meta-label svelte-4gla2c"),i(k,"class","svelte-4gla2c"),i(b,"class","meta-item svelte-4gla2c"),i(E,"class","meta-label svelte-4gla2c"),i(N,"class","svelte-4gla2c"),i(M,"class","meta-item svelte-4gla2c"),i(c,"class","meta-grid svelte-4gla2c"),i(G,"d","M12 20h9"),i(G,"class","svelte-4gla2c"),i(J,"d","M16.5 3.5a2.121 2.121 0 0 1 3 3L7 19l-4 1 1-4L16.5 3.5z"),i(J,"class","svelte-4gla2c"),i(K,"width","16"),i(K,"height","16"),i(K,"viewBox","0 0 24 24"),i(K,"fill","none"),i(K,"stroke","currentColor"),i(K,"stroke-width","2"),i(K,"stroke-linecap","round"),i(K,"stroke-linejoin","round"),i(K,"class","svelte-4gla2c"),i(V,"class","qa-btn svelte-4gla2c"),i(B,"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(B,"class","svelte-4gla2c"),i(O,"width","16"),i(O,"height","16"),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(O,"class","svelte-4gla2c"),i(W,"class","qa-btn svelte-4gla2c"),i(fe,"points","13 2 3 14 12 14 11 22 21 10 12 10 13 2"),i(fe,"class","svelte-4gla2c"),i(ae,"width","16"),i(ae,"height","16"),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(ae,"class","svelte-4gla2c"),i(ne,"class","qa-btn svelte-4gla2c"),i(ke,"cx","12"),i(ke,"cy","12"),i(ke,"r","10"),i(ke,"class","svelte-4gla2c"),i(_e,"points","12 6 12 12 16 14"),i(_e,"class","svelte-4gla2c"),i(de,"width","16"),i(de,"height","16"),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(de,"class","svelte-4gla2c"),i(te,"class","qa-btn svelte-4gla2c"),i(R,"class","quick-actions svelte-4gla2c"),i(e,"class","overview svelte-4gla2c")},m(He,Re){S(He,e,Re),a(e,t),a(t,s),a(e,o),a(e,c),a(c,r),a(r,u),a(r,p),a(p,g),a(c,h),a(c,b),a(b,y),a(b,k),a(k,T),a(c,j),a(c,M),a(M,E),a(M,N),a(N,D),a(e,z),a(e,R),a(R,V),a(V,K),a(K,G),a(K,J),a(V,H),a(V,Y),a(R,A),a(R,W),a(W,O),a(O,B),a(W,oe),a(W,ee),a(R,Z),a(R,ne),a(ne,ae),a(ae,fe),a(ne,be),a(ne,Me),a(R,X),a(R,te),a(te,de),a(de,ke),a(de,_e),a(te,Ie),a(te,st),a(e,rt),Ve&&Ve.m(e,null),a(e,je),Ae&&Ae.m(e,null),Fe||(Ce=[P(V,"click",l[217]),P(W,"click",l[218]),P(ne,"click",l[194]),P(te,"click",l[219])],Fe=!0)},p(He,Re){Re[0]&67108864&&n!==(n=He[26].title+"")&&U(s,n),Re[0]&67108864&&v!==(v=He[175](He[26].type)+"")&&U(g,v),Re[0]&67108864&&w!==(w=(He[26].section||"—")+"")&&U(T,w),Re[0]&67108864&&L!==(L=vt(He[26].createdAt)+"")&&U(D,L),He[28].length>0?Ve?Ve.p(He,Re):(Ve=ha(He),Ve.c(),Ve.m(e,je)):Ve&&(Ve.d(1),Ve=null),He[31].length>0?Ae?Ae.p(He,Re):(Ae=ka(He),Ae.c(),Ae.m(e,null)):Ae&&(Ae.d(1),Ae=null)},i:$,o:$,d(He){He&&C(e),Ve&&Ve.d(),Ae&&Ae.d(),Fe=!1,ge(Ce)}}}function E2(l){let e,t=ce(l[22]),n=[];for(let s=0;s0&&Yo(l);return{c(){e=f("div"),t=f("div"),n=f("div"),s=f("span"),c=F(o),r=_(),u=f("span"),v=F(p),g=_(),b=F(h),y=F(" · "),w=F(k),T=_(),j=f("div"),M=f("button"),M.textContent=`${m("suggest.edit")}`,E=_(),N=f("button"),N.textContent=`${m("worklog.apply")}`,L=_(),D=f("button"),D.textContent=`${m("common.delete")}`,z=_(),A&&A.c(),R=_(),i(s,"class","suggestion-summary svelte-4gla2c"),i(u,"class","suggestion-meta svelte-4gla2c"),i(n,"class","suggestion-info svelte-4gla2c"),i(M,"class","btn btn-sm svelte-4gla2c"),i(N,"class","btn btn-sm btn-primary svelte-4gla2c"),i(D,"class","btn btn-sm btn-danger svelte-4gla2c"),i(j,"class","suggestion-actions svelte-4gla2c"),i(t,"class","suggestion-main svelte-4gla2c"),i(t,"role","button"),i(t,"tabindex","0"),i(e,"class","suggestion-card svelte-4gla2c"),he(e,"expanded",l[442]._expanded)},m(W,O){S(W,e,O),a(e,t),a(t,n),a(n,s),a(s,c),a(n,r),a(n,u),a(u,v),a(u,g),a(u,b),a(u,y),a(u,w),a(t,T),a(t,j),a(j,M),a(j,E),a(j,N),a(j,L),a(j,D),a(e,z),A&&A.m(e,null),a(e,R),V||(K=[P(M,"click",Se(G)),P(N,"click",Se(J)),P(D,"click",Se(H)),P(t,"click",q),P(t,"keydown",Y)],V=!0)},p(W,O){l=W,O[0]&67108864|O[1]&1024&&o!==(o=l[442].summary+"")&&U(c,o),O[0]&67108864|O[1]&1024&&p!==(p=l[442].suggestedMin+"")&&U(v,p),O[0]&67108864|O[1]&1024&&k!==(k=m("suggest.confidence."+l[442].confidence)+"")&&U(w,k),l[442].events&&l[442].events.length>0?A?A.p(l,O):(A=Yo(l),A.c(),A.m(e,R)):A&&(A.d(1),A=null),O[0]&67108864|O[1]&1024&&he(e,"expanded",l[442]._expanded)},d(W){W&&C(e),A&&A.d(),V=!1,ge(K)}}}function N2(l){let e,t=ce(l[31]),n=[];for(let s=0;s0?L2:N[418].source==="suggestion"?P2:N[418].source==="unknown"||N[418].source==="imported"?A2:I2}let j=T(l),M=j(l),E=l[418].source==="suggestion"&&l[418]._events&&l[418]._events.length>0&&sa(l);return{c(){e=f("div"),t=f("div"),n=f("button"),n.textContent=`${m("worklog.editEntry")}`,s=_(),o=f("button"),o.textContent=`${m("worklog.deleteEntry")}`,c=_(),w&&w.c(),r=_(),u=f("div"),p=f("span"),p.textContent=`${m("worklog.source")}`,v=_(),M.c(),g=_(),E&&E.c(),i(n,"class","btn btn-sm svelte-4gla2c"),i(o,"class","btn btn-sm btn-danger svelte-4gla2c"),i(t,"class","worklog-entry-actions svelte-4gla2c"),i(p,"class","wl-detail-label svelte-4gla2c"),i(u,"class","wl-detail-section svelte-4gla2c"),i(e,"class","worklog-entry-detail svelte-4gla2c")},m(N,L){S(N,e,L),a(e,t),a(t,n),a(t,s),a(t,o),a(e,c),w&&w.m(e,null),a(e,r),a(e,u),a(u,p),a(u,v),M.m(u,null),a(e,g),E&&E.m(e,null),h||(b=[P(n,"click",Se(y)),P(o,"click",Se(k))],h=!0)},p(N,L){l=N,l[418].details?w?w.p(l,L):(w=na(l),w.c(),w.m(e,r)):w&&(w.d(1),w=null),j!==(j=T(l))&&(M.d(1),M=j(l),M&&(M.c(),M.m(u,null))),l[418].source==="suggestion"&&l[418]._events&&l[418]._events.length>0?E?E.p(l,L):(E=sa(l),E.c(),E.m(e,null)):E&&(E.d(1),E=null)},d(N){N&&C(e),w&&w.d(),M.d(),E&&E.d(),h=!1,ge(b)}}}function na(l){let e,t,n,s,o=l[418].details+"",c;return{c(){e=f("div"),t=f("span"),t.textContent=`${m("worklog.details")}`,n=_(),s=f("p"),c=F(o),i(t,"class","wl-detail-label svelte-4gla2c"),i(s,"class","svelte-4gla2c"),i(e,"class","wl-detail-section svelte-4gla2c")},m(r,u){S(r,e,u),a(e,t),a(e,n),a(e,s),a(s,c)},p(r,u){u[1]&1&&o!==(o=r[418].details+"")&&U(c,o)},d(r){r&&C(e)}}}function I2(l){let e;return{c(){e=f("p"),e.textContent=`${m("worklog.sourceUnknown")}`,i(e,"class","svelte-4gla2c")},m(t,n){S(t,e,n)},d(t){t&&C(e)}}}function A2(l){let e;return{c(){e=f("p"),e.textContent=`${m("worklog.sourceUnknown")}`,i(e,"class","svelte-4gla2c")},m(t,n){S(t,e,n)},d(t){t&&C(e)}}}function P2(l){let e;return{c(){e=f("p"),e.textContent=`${m("worklog.sourceSuggestionNoEvents")}`,i(e,"class","svelte-4gla2c")},m(t,n){S(t,e,n)},d(t){t&&C(e)}}}function L2(l){let e;return{c(){e=f("p"),e.textContent=`${m("worklog.sourceSuggestion")}`,i(e,"class","svelte-4gla2c")},m(t,n){S(t,e,n)},d(t){t&&C(e)}}}function F2(l){let e;return{c(){e=f("p"),e.textContent=`${m("worklog.sourceManual")}`,i(e,"class","svelte-4gla2c")},m(t,n){S(t,e,n)},d(t){t&&C(e)}}}function sa(l){let e,t,n,s=ce(l[418]._events),o=[];for(let c=0;c',M=_(),i(n,"class","action-title svelte-4gla2c"),i(r,"class","action-type svelte-4gla2c"),i(g,"class","action-data svelte-4gla2c"),i(t,"class","action-info svelte-4gla2c"),i(w,"class","btn btn-sm svelte-4gla2c"),i(j,"class","btn btn-sm btn-danger svelte-4gla2c"),i(k,"class","action-btns svelte-4gla2c"),i(e,"class","action-card svelte-4gla2c")},m(z,R){S(z,e,R),a(e,t),a(t,n),a(n,o),a(t,c),a(t,r),a(r,p),a(t,v),a(t,g),a(g,b),a(e,y),a(e,k),a(k,w),a(k,T),a(k,j),a(e,M),E||(N=[P(w,"click",L),P(j,"click",D)],E=!0)},p(z,R){l=z,R[0]&1073741824&&s!==(s=l[434].title+"")&&U(o,s),R[0]&1073741824&&u!==(u=l[198](l[434].type)+"")&&U(p,u),R[0]&1073741824&&h!==(h=l[434].data+"")&&U(b,h)},d(z){z&&C(e),E=!1,ge(N)}}}function O2(l){let e,t=ce(l[47]),n=[];for(let s=0;s',b=_(),y=f("button"),y.innerHTML='',k=_(),w=f("button"),w.innerHTML='',T=_(),i(n,"class","inbox-item-title svelte-4gla2c"),i(r,"class","inbox-item-meta svelte-4gla2c"),i(t,"class","inbox-item-main svelte-4gla2c"),i(h,"class","inbox-icon-btn inbox-icon-btn-primary svelte-4gla2c"),i(h,"title",m("inbox.keepHere")),i(h,"aria-label",m("inbox.keepHere")),i(y,"class","inbox-icon-btn svelte-4gla2c"),i(y,"title",m("inbox.assign")),i(y,"aria-label",m("inbox.assign")),i(w,"class","inbox-icon-btn inbox-icon-btn-danger svelte-4gla2c"),i(w,"title",m("common.delete")),i(w,"aria-label",m("common.delete")),i(g,"class","inbox-item-actions svelte-4gla2c"),i(e,"class","inbox-item svelte-4gla2c"),i(e,"role","button"),i(e,"tabindex","0")},m(R,V){S(R,e,V),a(e,t),a(t,n),a(n,o),a(t,c),a(t,r),a(r,p),a(e,v),a(e,g),a(g,h),a(g,b),a(g,y),a(g,k),a(g,w),a(e,T),j||(M=[P(h,"click",Se(E)),P(y,"click",Se(N)),P(w,"click",Se(L)),P(e,"click",D),P(e,"keydown",z)],j=!0)},p(R,V){l=R,V[1]&8192&&s!==(s=l[426].title+"")&&U(o,s),V[1]&8192&&u!==(u=l[176](l[426])+"")&&U(p,u)},d(R){R&&C(e),j=!1,ge(M)}}}function pa(l){let e,t=m("common.paste")+"",n,s,o=l[78].items.length+"",c,r,u;return{c(){e=f("button"),n=F(t),s=_(),c=F(o),i(e,"class","btn svelte-4gla2c")},m(p,v){S(p,e,v),a(e,n),a(e,s),a(e,c),r||(u=P(e,"click",l[118]),r=!0)},p(p,v){v[2]&65536&&o!==(o=p[78].items.length+"")&&U(c,o)},d(p){p&&C(e),r=!1,u()}}}function U2(l){let e,t,n,s,o,c,r;const u=[G2,K2],p=[];function v(y,k){return y[72].length>0?0:1}e=v(l),t=p[e]=u[e](l);const g=[q2,J2],h=[];function b(y,k){return y[73].length===0?0:1}return s=b(l),o=h[s]=g[s](l),{c(){t.c(),n=_(),o.c(),c=_t()},m(y,k){p[e].m(y,k),S(y,n,k),h[s].m(y,k),S(y,c,k),r=!0},p(y,k){let w=e;e=v(y),e===w?p[e].p(y,k):(mt(),pe(p[w],1,1,()=>{p[w]=null}),gt(),t=p[e],t?t.p(y,k):(t=p[e]=u[e](y),t.c()),ue(t,1),t.m(n.parentNode,n));let T=s;s=b(y),s===T?h[s].p(y,k):(mt(),pe(h[T],1,1,()=>{h[T]=null}),gt(),o=h[s],o?o.p(y,k):(o=h[s]=g[s](y),o.c()),ue(o,1),o.m(c.parentNode,c))},i(y){r||(ue(t),ue(o),r=!0)},o(y){pe(t),pe(o),r=!1},d(y){y&&(C(n),C(c)),p[e].d(y),h[s].d(y)}}}function B2(l){let e,t;return{c(){e=f("div"),t=f("p"),t.textContent=`${m("common.loading")}`,i(t,"class","svelte-4gla2c"),i(e,"class","empty-state svelte-4gla2c")},m(n,s){S(n,e,s),a(e,t)},p:$,i:$,o:$,d(n){n&&C(e)}}}function K2(l){let e,t;return e=new uc({props:{crumbs:[{name:m("file.root")}]}}),{c(){Xe(e.$$.fragment)},m(n,s){Je(e,n,s),t=!0},p:$,i(n){t||(ue(e.$$.fragment,n),t=!0)},o(n){pe(e.$$.fragment,n),t=!1},d(n){qe(e,n)}}}function G2(l){let e,t,n,s,o,c,r,u=m("common.backLabel")+"",p,v,g,h;return e=new uc({props:{crumbs:[{name:m("file.root")},...l[72]]}}),e.$on("navigate",l[226]),{c(){Xe(e.$$.fragment),t=_(),n=f("button"),s=Q("svg"),o=Q("line"),c=Q("polyline"),r=_(),p=F(u),i(o,"x1","19"),i(o,"y1","12"),i(o,"x2","5"),i(o,"y2","12"),i(o,"class","svelte-4gla2c"),i(c,"points","12 19 5 12 12 5"),i(c,"class","svelte-4gla2c"),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-4gla2c"),i(n,"class","btn btn-sm back-btn svelte-4gla2c")},m(b,y){Je(e,b,y),S(b,t,y),S(b,n,y),a(n,s),a(s,o),a(s,c),a(n,r),a(n,p),v=!0,g||(h=P(n,"click",l[109]),g=!0)},p(b,y){const k={};y[2]&1024&&(k.crumbs=[{name:m("file.root")},...b[72]]),e.$set(k)},i(b){v||(ue(e.$$.fragment,b),v=!0)},o(b){pe(e.$$.fragment,b),v=!1},d(b){b&&(C(t),C(n)),qe(e,b),g=!1,h()}}}function J2(l){let e,t=[],n=new Map,s,o=ce(l[73]);const c=r=>r[426].id;for(let r=0;r0?m("file.noFiles"):m("file.noFilesCase"))+"",c,r,u,p,v,g,h,b,y,k;return{c(){e=f("div"),t=f("div"),t.innerHTML='',n=_(),s=f("p"),c=F(o),r=_(),u=f("p"),u.textContent=`${m("file.hint")}`,p=_(),v=f("div"),g=f("button"),g.textContent=`${m("file.addFileSimple")}`,h=_(),b=f("button"),b.textContent=`${m("file.addFolderSimple")}`,i(t,"class","empty-icon svelte-4gla2c"),i(s,"class","svelte-4gla2c"),i(u,"class","hint svelte-4gla2c"),i(g,"class","btn btn-primary svelte-4gla2c"),i(b,"class","btn svelte-4gla2c"),i(v,"class","empty-actions svelte-4gla2c"),i(e,"class","empty-state svelte-4gla2c")},m(w,T){S(w,e,T),a(e,t),a(e,n),a(e,s),a(s,c),a(e,r),a(e,u),a(e,p),a(e,v),a(v,g),a(v,h),a(v,b),y||(k=[P(g,"click",l[169]),P(b,"click",l[170])],y=!0)},p(w,T){T[2]&1024&&o!==(o=(w[72].length>0?m("file.noFiles"):m("file.noFilesCase"))+"")&&U(c,o)},i:$,o:$,d(w){w&&C(e),y=!1,ge(k)}}}function ma(l,e){let t,n,s;return n=new Od({props:{item:e[426],selected:e[79].includes(e[426].id),onDragStart:e[122],onDragOver:e[123],onDrop:e[124]}}),n.$on("navigate",e[227]),n.$on("preview",e[228]),n.$on("openExternal",e[229]),n.$on("showInFolder",e[230]),n.$on("delete",e[231]),n.$on("rename",e[232]),n.$on("duplicate",e[233]),n.$on("cut",e[234]),n.$on("copy",e[235]),n.$on("selectOne",e[236]),n.$on("toggleSelect",e[237]),n.$on("rangeSelect",e[238]),{key:l,first:null,c(){t=_t(),Xe(n.$$.fragment),this.first=t},m(o,c){S(o,t,c),Je(n,o,c),s=!0},p(o,c){e=o;const r={};c[2]&2048&&(r.item=e[426]),c[2]&133120&&(r.selected=e[79].includes(e[426].id)),n.$set(r)},i(o){s||(ue(n.$$.fragment,o),s=!0)},o(o){pe(n.$$.fragment,o),s=!1},d(o){o&&C(t),qe(n,o)}}}function ga(l){let e,t;return{c(){e=f("div"),t=f("p"),t.textContent=`${m("file.scanning")}`,i(t,"class","svelte-4gla2c"),i(e,"class","empty-state svelte-4gla2c")},m(n,s){S(n,e,s),a(e,t)},d(n){n&&C(e)}}}function _a(l){let e,t,n,s,o,c,r,u,p;return{c(){e=f("div"),t=f("input"),n=_(),s=f("div"),o=f("button"),o.textContent=`${m("common.create")}`,c=_(),r=f("button"),r.textContent=`${m("common.cancel")}`,i(t,"type","text"),i(t,"placeholder",m("note.title")),i(t,"class","svelte-4gla2c"),i(o,"class","btn btn-primary svelte-4gla2c"),i(r,"class","btn svelte-4gla2c"),i(s,"class","form-actions svelte-4gla2c"),i(e,"class","create-form svelte-4gla2c")},m(v,g){S(v,e,g),a(e,t),ve(t,l[60]),a(e,n),a(e,s),a(s,o),a(s,c),a(s,r),u||(p=[P(t,"input",l[222]),P(t,"keydown",l[223]),P(o,"click",l[148]),P(r,"click",l[147])],u=!0)},p(v,g){g[1]&536870912&&t.value!==v[60]&&ve(t,v[60])},d(v){v&&C(e),u=!1,ge(p)}}}function Y2(l){let e,t=ce(l[28]),n=[];for(let s=0;spe(oe[ee],1,1,()=>{oe[ee]=null});return{c(){e=f("div"),t=f("div"),n=f("h3"),n.textContent=`${m("nav.createNode")}`,s=_(),O&&O.c(),o=_(),c=f("div"),r=f("span"),r.textContent=`${m("template.select")}`,u=_(),p=f("div"),v=f("button"),Xe(g.$$.fragment),h=_(),b=f("div"),y=f("span"),y.textContent=`${m("template.optionNone")}`,k=_(),w=f("span"),w.textContent=`${m("template.none.desc")}`,T=_();for(let ee=0;ee{y=null}),gt()),w[58].node&&w[58].node.parent_id?k?k.p(w,T):(k=Na(w),k.c(),k.m(t,o)):k&&(k.d(1),k=null),(!g||T[1]&134217728)&&bt(t,"left",w[58].x+"px"),(!g||T[1]&134217728)&&bt(t,"top",w[58].y+"px")},i(w){g||(ue(y),g=!0)},o(w){pe(y),g=!1},d(w){w&&C(e),y&&y.d(),k&&k.d(),h=!1,ge(b)}}}function Ea(l){let e,t,n,s,o,c=ce(l[6].length>0?l[6]:[{id:"",title:"template.optionNone",icon:"folder"}]),r=[];for(let p=0;ppe(r[p],1,1,()=>{r[p]=null});return{c(){e=f("div"),e.textContent=`${m("common.create")}`,t=_();for(let p=0;p0?p[6]:[{id:"",title:"template.optionNone",icon:"folder"}]);let g;for(g=0;gl[336].call(k)),i(h,"class","svelte-4gla2c"),i(g,"class","form-group svelte-4gla2c"),i(M,"class","label-text svelte-4gla2c"),i(D,"type","text"),i(D,"placeholder",z=l[63]==="open_url"?m("action.urlPlaceholder"):l[63]==="open_folder"||l[63]==="open_file"?m("action.pathPlaceholder"):m("action.commandPlaceholder")),i(D,"class","svelte-4gla2c"),i(j,"class","svelte-4gla2c"),i(T,"class","form-group svelte-4gla2c"),i(K,"class","btn btn-primary svelte-4gla2c"),i(J,"class","btn svelte-4gla2c"),i(V,"class","modal-actions svelte-4gla2c"),i(t,"class","modal svelte-4gla2c"),i(e,"class","modal-overlay svelte-4gla2c"),i(e,"role","button"),i(e,"tabindex","0")},m(W,O){S(W,e,O),a(e,t),a(t,n),a(t,s),a(t,o),a(o,c),a(c,r),a(c,u),a(c,p),ve(p,l[62]),a(t,v),a(t,g),a(g,h),a(h,b),a(h,y),a(h,k);for(let B=0;B0&&Oa(l),K=l[96]&&Wa();return{c(){e=f("div"),t=f("div"),n=f("h3"),n.textContent=`${m("inbox.assignTitle")}`,s=_(),o=f("div"),r=F(c),u=_(),p=f("div"),v=f("label"),g=f("span"),g.textContent=`${m("inbox.assignTarget")}`,h=_(),b=f("input"),y=_(),V&&V.c(),k=_(),K&&K.c(),w=_(),T=f("div"),j=f("button"),E=F(M),L=_(),D=f("button"),D.textContent=`${m("common.cancel")}`,i(n,"class","svelte-4gla2c"),i(o,"class","create-context svelte-4gla2c"),i(g,"class","label-text svelte-4gla2c"),i(b,"type","text"),i(b,"placeholder",m("inbox.assignSearchPlaceholder")),i(b,"class","svelte-4gla2c"),i(v,"class","svelte-4gla2c"),i(p,"class","form-group assign-search svelte-4gla2c"),i(j,"class","btn btn-primary svelte-4gla2c"),j.disabled=N=!l[95],i(D,"class","btn svelte-4gla2c"),i(T,"class","modal-actions svelte-4gla2c"),i(t,"class","modal svelte-4gla2c"),i(e,"class","modal-overlay svelte-4gla2c"),i(e,"role","button"),i(e,"tabindex","0")},m(G,J){S(G,e,J),a(e,t),a(t,n),a(t,s),a(t,o),a(o,r),a(t,u),a(t,p),a(p,v),a(v,g),a(v,h),a(v,b),ve(b,l[93]),a(p,y),V&&V.m(p,null),a(t,k),K&&K.m(t,null),a(t,w),a(t,T),a(T,j),a(j,E),a(T,L),a(T,D),z||(R=[P(b,"input",l[342]),P(b,"input",l[183]),P(b,"keydown",l[343]),P(j,"click",l[185]),P(D,"click",l[182]),P(e,"click",kt(l[182])),P(e,"keydown",ht(l[182]))],z=!0)},p(G,J){J[2]&1073741824&&c!==(c=G[92].title+"")&&U(r,c),J[3]&1&&b.value!==G[93]&&ve(b,G[93]),G[94].length>0?V?V.p(G,J):(V=Oa(G),V.c(),V.m(p,null)):V&&(V.d(1),V=null),G[96]?K||(K=Wa(),K.c(),K.m(t,w)):K&&(K.d(1),K=null),J[3]&4&&N!==(N=!G[95])&&(j.disabled=N)},d(G){G&&C(e),V&&V.d(),K&&K.d(),z=!1,ge(R)}}}function Oa(l){let e,t=ce(l[94]),n=[];for(let s=0;s{c[v]=null}),gt(),t=c[e],t?t.p(u,p):(t=c[e]=o[e](u),t.c()),ue(t,1),t.m(n.parentNode,n))},i(u){s||(ue(t),s=!0)},o(u){pe(t),s=!1},d(u){u&&C(n),c[e].d(u)}}}function le(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 _n(l){return!l||!(l instanceof Element)?!1:!!l.closest('input, textarea, select, [contenteditable="true"], [contenteditable=""]')}function ul(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&&ul(n.children,e,t))return!0}return!1}function pc(l){return(l==null?void 0:l.sourceKind)||(l==null?void 0:l.captureKind)||(l==null?void 0:l.type)||""}function Ja(l){return pc(l)!=="url"&&(l==null?void 0:l.type)!=="link"}function Z2(l,e){return{id:l.id,nodeId:l.id,fileId:e.id||e.fileId,name:e.name||l.title,type:"file",size:e.size||0,mime:e.mime||""}}function mc(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&&mc(n.children,e,t))return!0}return!1}function Nl(l){return l.eventIds&&l.eventIds.length?l.eventIds:l.events&&l.events.length?l.events.map(e=>e.id).filter(Boolean):[]}function Ml(l){try{le("WriteDebugLog",l)}catch{}}function fn(l){return l?l.map(e=>(e._expanded===void 0&&(e._expanded=!1),e)):[]}function dt(l){return l?new Date(l).toLocaleTimeString("ru-RU",{hour:"2-digit",minute:"2-digit"}):""}function ll(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 vt(l){if(!l)return"";try{return new Date(l).toLocaleDateString("ru-RU",{day:"numeric",month:"short"})}catch{return l}}function dn(l){const e=String(l||"").trim();if(!e||/[\s]/.test(e)||e.includes("@"))return"";try{const t=new URL(e);return(t.protocol==="http:"||t.protocol==="https:")&&t.hostname?e:""}catch{try{const n=`https://${e}`,s=new URL(n);return s.hostname&&s.hostname.includes(".")?n:""}catch{return""}}}function x2(l){return{"image/png":"png","image/jpeg":"jpg","image/gif":"gif","image/webp":"webp"}[l]||"bin"}function $2(l){return new Promise((e,t)=>{const n=new FileReader;n.onload=()=>{const s=String(n.result||""),o=s.indexOf(",");e(o>=0?s.slice(o+1):s)},n.onerror=()=>t(n.error),n.readAsDataURL(l)})}function em(l){const e=String(l||"").split(/\r?\n/).map(t=>t.trim()).filter(Boolean);return e.length?{url:e[0],title:e[1]||""}:null}function tm(l){return String(l||"").split(/\r?\n/).map(t=>t.trim()).filter(t=>t&&!t.startsWith("#"))[0]||""}function qa(l){const e=Array.from((l==null?void 0:l.types)||[]);return e.includes("Files")||e.includes("text/uri-list")||e.includes("text/x-moz-url")||e.includes("text/plain")&&!e.includes("application/x-verstak-node")}function lm(l){return["case","client","project","folder","document","recipe"].includes(l.type)}function It(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 nm(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 ht(l){return e=>{_n(e.target)||(e.key==="Enter"||e.key===" ")&&(e.preventDefault(),l())}}function sm(l,e,t){let n=null,s=!1,o=!1,c=!1,r=!1,u=[],p=[],v=[],g=null,h=[],b=0,y=!0,k=[],w=null,T="",j="",M=!1,E="",N="all",L="all",D="",z="",R="",V=[],K=!1,G=[],J="",H="";function q(d){return{"vault not open":m("error.vaultNotOpen")}[d]||d}let Y="",A=null,W="overview",O=[],B=null,oe=[],ie=[],ee=[],Z=!1,ne="",ae="",fe="",be="",Ue=!1,Me=!1,X=null,te=null,de=[],ke=0,_e=[],Ie=[],Ke=!1,st="",rt=[],je=null,Fe="",Ce="",Ve="",Ae="",He=null,Re=!1,Oe="",Ee=null,ye=null,Le={visible:!1,x:0,y:0,node:null},We=!1,$e="",Te=!1,me="",De="open_url",Ye="",lt=[{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")}],xe=!0,Ge=!1,Qe=null,et=!1,nt="",it="",se={},we=!1,Be=null,Ze=[],tt=[],ut=null,Ct="",zl=!1,pl="",yt={items:[],mode:"copy"},ze=[],nl=[],Ol=!1,sl=!1,ml=!1,yn="",Vl=!1,wn="",Cn="",Sn=!1,Tn=m("common.delete"),gl=null,_l=null,vl=!1,hl="",Bt="",Kt="",Tt=null,jt="",At=[],Et=null,bl=!1,jn,Wl=null,Hl=!1,il="",kl="";const gc=[{id:"overview",label:m("tab.overview")},{id:"notes",label:m("tab.notes")},{id:"files",label:m("tab.files")},{id:"links",label:m("tab.links")},{id:"actions",label:m("tab.actions")},{id:"activity",label:m("tab.activity"),group:"service"},{id:"worklog",label:m("tab.worklog"),group:"service"},{id:"inbox",label:m("tab.inbox"),group:"service"}];let Ul=null;Qa(async()=>{try{if(t(0,n=await le("GetStartupStatus")),s=!0,n.status==="first_run"){t(1,o=!0),t(65,xe=!1);return}if(n.status==="recovery"){t(2,c=!0),t(65,xe=!1);return}}catch(d){t(24,H=String(d))}try{t(23,J=await le("VerstakVersion")||"verstak-gui/v2"),t(4,u=await le("ListSystemViews")||[]),t(5,p=await le("ListWorkspaceTree")||[]),t(6,v=await le("ListEnabledTemplates")||[])}catch(d){t(24,H=String(d)),t(4,u=[{id:"today",label:m("nav.today")},{id:"inbox",label:m("nav.inbox")},{id:"activity",label:m("nav.activity")}]),t(5,p=[]),t(6,v=[])}window.runtime&&window.runtime.EventsOn&&(window.runtime.EventsOn("files-dropped",Xc),Ul=()=>window.runtime.EventsOff("files-dropped")),window.addEventListener("keydown",On),window.addEventListener("paste",ss),window.addEventListener("dragover",is),window.addEventListener("dragleave",os),window.addEventListener("drop",as),t(65,xe=!1),on()}),kn(()=>{Ul&&Ul(),window.removeEventListener("keydown",On),window.removeEventListener("paste",ss),window.removeEventListener("dragover",is),window.removeEventListener("dragleave",os),window.removeEventListener("drop",as)});async function En(d){t(25,Y=d),t(26,A=null),t(27,W="overview"),t(28,O=[]),oe=[],t(30,ie=[]),t(31,ee=[]),t(44,Ie=[]),t(47,rt=[]),t(41,de=[]),t(43,_e=[]),t(53,He=null),t(54,Re=!1),t(24,H=""),t(7,g=null),t(8,h=[]),b=0,y=!0,t(9,k=[]),t(10,w=null);try{d==="today"?(t(7,g=await le("ListTodayView")||{cases:[]}),t(41,de=await le("GetSuggestions")||[]),t(42,ke=de.length)):d==="inbox"?t(43,_e=await le("ListInboxNodes")||[]):d==="trash"?t(53,He=await le("ListTrash")||{nodes:[],entries:[],trashPath:""}):d==="journal"?await Ft():d==="activity"&&(t(8,h=await le("ListActivityFeed",50,0)||[]),b=h.length,y=h.length===50)}catch(I){t(24,H=String(I)),t(7,g={cases:[]}),t(43,_e=[]),t(53,He=null),t(8,h=[])}}async function Pt(d){t(26,A=d),t(27,W="overview"),t(28,O=[]),oe=[],t(30,ie=[]),t(31,ee=[]),t(41,de=[]),t(73,tt=[]),t(72,Ze=[]),t(71,Be=null),t(74,ut=null),t(75,Ct=""),t(79,ze=[]),nl=[],t(29,B=null),t(54,Re=!1),t(59,We=!1),t(24,H=""),t(22,G=[]),await yl(d.id)}async function yl(d){try{t(28,O=await le("ListNotes",d)||[])}catch{}try{oe=await le("ListFiles",d)||[]}catch{}try{t(30,ie=await le("ListActions",d)||[])}catch{}try{t(31,ee=fn(await le("ListWorklog",d)))}catch{}try{t(44,Ie=await le("ListInboxNodesForTarget",d)||[])}catch{t(44,Ie=[])}try{t(47,rt=await le("ListLinks",d)||[])}catch{t(47,rt=[])}try{t(41,de=await le("GetSuggestions")||[]),t(42,ke=de.length)}catch{t(41,de=[]),t(42,ke=0)}try{t(22,G=await le("ListActivityByNode",d,50,0)||[])}catch{}}async function ft(d){t(70,we=!0);try{let I=await le("ListItems",d)||[];I.sort((x,re)=>x.type!==re.type?x.type==="folder"?-1:1:(x.name||"").localeCompare(re.name||"")),t(73,tt=I)}catch{t(73,tt=[])}t(70,we=!1)}async function Bl(d){if(!A)return;try{const x=await le("GetNodeDetail",d);x&&t(72,Ze=[...Ze,{id:d,name:x.title}])}catch{t(72,Ze=[...Ze,{id:d,name:"..."}])}t(71,Be=d),t(69,se={...se,[d]:!0});const I=await le("ListWorkspaceChildren",d)||[];ul(p,d,I),t(5,p=[...p]),await ft(d)}function Dn(){if(Ze.length<2)t(72,Ze=[]),t(71,Be=null),ft(A.id);else{const d=Ze[Ze.length-2];t(72,Ze=Ze.slice(0,-1)),t(71,Be=d.id),ft(d.id)}}function Nn(d){const I=Ze[d];t(72,Ze=Ze.slice(0,d+1)),t(71,Be=I.id),ft(I.id)}async function ol(d){t(74,ut=d),t(75,Ct=""),t(77,pl=""),t(76,zl=!0);try{Md(d)?t(75,Ct=await le("GetFileBase64",d.fileId)||""):Id(d)&&t(75,Ct=await le("ReadFileText",d.fileId)||"")}catch(I){t(77,pl=String(I))}t(76,zl=!1)}function Kl(){t(74,ut=null),t(75,Ct=""),t(77,pl="")}async function _c(){const d=prompt(m("file.namePrompt"));if(!(!d||!d.trim()))try{const I=Be||A.id;await le("CreateEmptyFile",I,d.trim()),await ft(I),await ql(I)}catch(I){t(24,H=String(I))}}async function Mn(d){try{await le("DuplicateNode",d);const I=Be||A.id;await ft(I),await ql(I)}catch(I){t(24,H=String(I))}}function In(d){const I=tt.find(x=>x.id===d);I&&Jl(I.id,I.name)}function An(d){t(78,yt={items:[d],mode:"cut"})}function Pn(d){t(78,yt={items:[d],mode:"copy"})}async function Ln(){if(yt.items.length===0)return;const d=Be||A.id;try{if(yt.mode==="copy")for(const I of yt.items)await le("DuplicateNode",I);else for(const I of yt.items)await le("MoveNode",I,d);t(78,yt={items:[],mode:"copy"}),await ft(d)}catch(I){t(24,H=String(I))}}function Fn(d){ze.includes(d)?t(79,ze=ze.filter(I=>I!==d)):t(79,ze=[...ze,d])}function Rn(d){t(79,ze=[d])}function vc(){t(79,ze=tt.map(d=>d.id))}function zn(d){if(tt.length===0)return;const I=ze.length>0?ze[ze.length-1]:tt[0].id,x=tt.findIndex(wt=>wt.id===I),re=tt.findIndex(wt=>wt.id===d);if(x===-1||re===-1)return;const Pe=Math.min(x,re),pt=Math.max(x,re),Xt=tt.slice(Pe,pt+1).map(wt=>wt.id),al=new Set(ze);Xt.forEach(wt=>al.add(wt)),t(79,ze=[...al])}function hc(){t(79,ze=[])}function Gl(d){return d.length>0?d:tt.map(I=>I.id)}async function bc(){const d=Gl(ze),I=tt.find(re=>re.id===d[0]);let x;d.length===1&&(I==null?void 0:I.type)==="folder"?x=m("delete.folder"):d.length===1?x=m("delete.file"):x=m("delete.files",{count:d.length}),Dt({title:m("delete.confirmTitle"),message:m("delete.confirmMessage")+" "+x+"?",confirmText:m("common.delete"),danger:!0,onConfirm:async()=>{for(const Pe of d)try{await le("DeleteFileOrFolder",Pe)}catch(pt){t(24,H=String(pt))}t(79,ze=[]);const re=Be||A.id;await ft(re)}})}function kc(){const d=Gl(ze);t(78,yt={items:d,mode:"cut"}),t(79,ze=[])}function yc(){const d=Gl(ze);t(78,yt={items:d,mode:"copy"}),t(79,ze=[])}function wc(d,I){d.stopPropagation();const x=ze.includes(I)?ze:[I];nl=x,d.dataTransfer.effectAllowed="move",d.dataTransfer.setData("text/plain",x.join(","))}function Cc(d,I){const x=tt.find(re=>re.id===I);x&&x.type==="folder"&&(d.preventDefault(),d.stopPropagation(),d.dataTransfer.dropEffect="move")}async function Sc(d,I){if(d.preventDefault(),d.stopPropagation(),nl.length!==0){for(const x of nl)try{await le("MoveNode",x,I)}catch(re){t(24,H=String(re))}nl=[],t(79,ze=[]),await ft(Be||A.id)}}function On(d){if(!_n(d.target)&&W==="files")if(d.ctrlKey||d.metaKey)d.key==="c"||d.key==="C"?(d.preventDefault(),yc()):d.key==="x"||d.key==="X"?(d.preventDefault(),kc()):d.key==="v"||d.key==="V"?(d.preventDefault(),Ln()):d.key==="a"||d.key==="A"?(d.preventDefault(),vc()):d.key==="o"||d.key==="O"?(d.preventDefault(),Tc()):d.key==="Enter"&&(d.preventDefault(),Vn());else if(d.key==="Enter")d.preventDefault(),Vn();else if(d.key==="Delete"||d.key==="Backspace"){if(ut){d.preventDefault(),Kl();return}if(ze.length>0){d.preventDefault(),bc();return}if(d.key==="Backspace"&&Ze.length>0){d.preventDefault(),Dn();return}}else if(d.key==="Escape"){if(ut){Kl();return}if(ze.length>0){hc();return}}else d.key==="F2"&&(d.preventDefault(),jc())}function Vn(){if(ze.length===1){const d=tt.find(I=>I.id===ze[0]);d&&(d.type==="folder"?Bl(d.id):ol(d))}}function Tc(){if(ze.length===1){const d=tt.find(I=>I.id===ze[0]);d&&d.fileId&&le("OpenFile",d.fileId)}}function Jl(d,I){hl=d,t(90,Bt=I),t(91,Kt=""),t(89,vl=!0)}function jc(){if(ze.length===1){const d=tt.find(I=>I.id===ze[0]);d&&Jl(d.id,d.name)}}async function Wn(){const d=Bt.trim();if(!d){t(91,Kt=m("rename.emptyError"));return}try{await le("ValidateName",d)}catch{t(91,Kt=m("rename.invalidError"));return}t(89,vl=!1);const I=hl;hl="";try{await le("RenameNode",I,d),A&&A.id===I&&t(26,A={...A,title:d}),await qt(),Be&&await ft(Be)}catch(x){t(24,H=String(x))}}function Ec(){t(89,vl=!1),hl="",t(90,Bt=""),t(91,Kt="")}function Dc(d){d.key==="Enter"?Wn():t(91,Kt="")}function Dt(d){t(85,wn=d.title||m("common.confirm")),t(86,Cn=d.message||""),t(87,Sn=d.danger!==void 0?d.danger:!0),t(88,Tn=d.confirmText||m("common.delete")),gl=d.onConfirm||null,_l=d.onCancel||null,t(84,Vl=!0)}function Hn(){t(84,Vl=!1),gl=null,_l=null}function Nc(){gl&&gl(),Hn()}function Mc(){_l&&_l(),Hn()}function Un(d){t(56,Ee=Le.node),t(57,ye=d),t(55,Oe=""),t(54,Re=!0),Gt()}function Ic(){t(56,Ee=null),t(57,ye=void 0),t(55,Oe=""),t(54,Re=!0)}function Ac(){t(54,Re=!1),t(55,Oe=""),t(56,Ee=null),t(57,ye=void 0)}async function Bn(){if(!(!Oe.trim()||ye===void 0))try{const d=Ee?Ee.id:"",I=ye?ye.id:"",x=await le("CreateNodeFromTemplate",d,Oe.trim(),I);t(54,Re=!1),t(55,Oe="");const re=x?x.id:null;if(t(56,Ee=null),t(57,ye=void 0),d){t(69,se={...se,[d]:!0});const Pe=await le("ListWorkspaceChildren",d)||[];ul(p,d,Pe),t(5,p=[...p])}else t(5,p=await le("ListWorkspaceTree")||p);if(re){const Pe=await le("GetNodeDetail",re);Pe&&(t(25,Y=""),Pt(Pe))}}catch(d){t(24,H=String(d))}}function Pc(d,I){t(58,Le={visible:!0,x:d.clientX,y:d.clientY,node:I})}function Gt(){t(58,Le={visible:!1,x:0,y:0,node:null})}async function Lc(d){const I=!se[d];if(t(69,se={...se,[d]:I}),!I)return;const x=await le("ListWorkspaceChildren",d)||[];ul(p,d,x),t(5,p=[...p])}async function Fc(d,I){if(!(!d||!I||d===I))try{const x=await le("MoveNode",d,I);await qt();const re=await le("GetNodeDetail",d);re&&(t(25,Y=""),Pt(re))}catch(x){t(24,H=String(x))}}async function Rc(d){d.preventDefault(),d.stopPropagation();try{const I=d.dataTransfer.getData("text/plain");if(!I)return;const x=await le("GetNodeDetail",I);if(!x||!x.parent_id)return;await le("MoveNode",I,""),await qt();const re=await le("GetNodeDetail",I);re&&(t(25,Y=""),Pt(re))}catch(I){t(24,H=String(I))}}function zc(d){d.preventDefault(),d.dataTransfer.dropEffect="move",t(80,Ol=!0)}function Oc(d){t(80,Ol=!1)}function Kn(d){Jl(d.id,d.title),Gt()}function Gn(d){Gt(),Dt({title:m("delete.confirmTitle"),message:m("delete.confirmMessage")+" "+d.title+"?",confirmText:m("common.delete"),danger:!0,onConfirm:async()=>{try{await le("DeleteNode",d.id),await qt(),A&&A.id===d.id&&t(26,A=null)}catch(I){t(24,H=String(I))}}})}async function Lt(d){Gt();const I=typeof d=="string"?d:d.id;try{await le("OpenFolder",I)}catch(x){t(24,H=String(x))}}async function Jt(d){const I=pc(d);try{if(I==="url"||d.type==="link"){if(!d.url)throw new Error("url required");await le("OpenURL",d.url);return}if(I==="text"||d.type==="note"){const x=await le("ReadNote",d.id);t(29,B={id:d.id,title:d.title,content:x||"",dirty:!1});return}if(I==="folder"||d.type==="folder"){t(25,Y=""),t(26,A=d),t(27,W="files"),t(72,Ze=[]),t(71,Be=null),t(79,ze=[]),t(74,ut=null),await yl(d.id),await ft(d.id);return}if(I==="file"||I==="image"||d.type==="file"){const re=(await le("ListFiles",d.id)||[])[0];if(!re)throw new Error("file record not found");const Pe=Z2(d,re);Es(Pe)?await ol(Pe):await le("OpenFile",Pe.fileId);return}await St(d.id)}catch(x){t(24,H=String(x))}}async function Jn(d){Gt();try{await le("MoveNode",d.id,""),await qt();const I=await le("GetNodeDetail",d.id);I&&(t(25,Y=""),Pt(I))}catch(I){t(24,H=String(I))}}async function qt(){const d=Object.keys(se).filter(x=>se[x]),I=await le("ListWorkspaceTree")||[];for(const x of d){const Pe=(await le("ListWorkspaceChildren",x)||[]).map(pt=>({...pt}));mc(I,x,Pe)}t(5,p=I)}async function ql(d){const I=await le("ListWorkspaceChildren",d)||[];ul(p,d,I),t(5,p=[...p])}function qn(){t(59,We=!0),t(60,$e="")}function Vc(){t(59,We=!1),t(60,$e="")}async function Yn(){if(!(!$e.trim()||!A))try{const d=await le("CreateNote",A.id,$e.trim());t(28,O=[...O,d&&d.id?d:{id:Date.now().toString(),title:$e.trim(),createdAt:new Date().toISOString()}]),t(59,We=!1),t(60,$e="")}catch{const I={id:Date.now().toString(),title:$e.trim(),createdAt:new Date().toISOString()};t(28,O=[...O,I]),t(59,We=!1),t(60,$e="")}}async function Yt(d){if(B&&B.dirty){Dt({title:m("note.unsavedTitle"),message:m("note.unsavedMessage"),confirmText:m("note.unsavedClose"),danger:!1,onConfirm:async()=>{await Qn(d)}});return}await Qn(d)}async function Qn(d){try{const I=await le("ReadNote",d.id);t(29,B={id:d.id,title:d.title,content:I||"",dirty:!1})}catch{t(29,B={id:d.id,title:d.title,content:"# "+d.title+` + +`,dirty:!1})}}function Wc(){if(B&&B.dirty){Dt({title:m("note.unsavedTitle"),message:m("note.unsavedMessage"),confirmText:m("note.unsavedClose"),danger:!1,onConfirm:()=>{t(29,B=null)}});return}t(29,B=null)}function Hc(d){B&&(t(29,B.content=d.target.value,B),t(29,B.dirty=!0,B))}async function Uc(){if(B)try{await le("SaveNote",B.id,B.content),t(29,B.dirty=!1,B)}catch{t(29,B.dirty=!1,B)}}function wl(d=null){t(39,X=d),t(40,te=null),t(33,ne=d?d.summary:""),t(34,ae=d?String(d.minutes||""):""),t(35,fe=d&&d.date||""),t(36,be=d&&d.details||""),t(37,Ue=d?!!d.billable:!1),t(38,Me=d?!!d.approximate:!1),t(32,Z=!0)}function Bc(){t(32,Z=!1),t(39,X=null),t(40,te=null)}async function Yl(d=""){const I=d||(A?A.id:"");A&&A.id===I&&t(31,ee=fn(await le("ListWorklog",A.id))||ee),Y==="journal"&&await Ft()}async function Kc(){const d=parseInt(ae,10);if(!(!ne.trim()||isNaN(d)||d<=0)&&!(!te&&!X&&!A)){try{if(te){const I=JSON.stringify(Nl(te));await le("AcceptSuggestionFull",te.nodeId,ne.trim(),be,fe,d,Me,Ue,I),await Cl()}else X?(await le("UpdateWorklogEntry",X.id,ne.trim(),be,fe,d,Me,Ue),await Yl(X.nodeId)):(await le("CreateWorklogFull",A.id,ne.trim(),be,fe,d,Me,Ue),await Yl(A.id))}catch(I){t(24,H=String(I));return}t(32,Z=!1),t(39,X=null),t(40,te=null)}}function Ql(d){Dt({title:m("worklog.deleteEntry"),message:m("worklog.deleteConfirm"),confirmText:m("common.delete"),danger:!0,onConfirm:async()=>{try{await le("DeleteWorklogEntry",d.id),await Yl(d.nodeId)}catch(I){t(24,H=String(I))}}})}async function Cl(){t(41,de=await le("GetSuggestions")||[]),t(42,ke=de.length),A&&t(31,ee=fn(await le("ListWorklog",A.id))),Y==="journal"&&await Ft()}function Sl(d){t(40,te=d),t(39,X=null),t(33,ne=d.summary||""),t(34,ae=String(d.suggestedMin||"")),t(35,fe=""),t(36,be=""),t(37,Ue=!1),t(38,Me=!0),t(32,Z=!0)}async function Tl(d){try{await le("DismissSuggestion",d.nodeId,JSON.stringify(Nl(d))),await Cl()}catch(I){t(24,H=String(I))}}async function Xl(d){try{const I=Nl(d),x=JSON.stringify(I);Ml("acceptTodaySuggestion: nodeId="+d.nodeId+" eventIds="+x+" events="+JSON.stringify((d.events||[]).map(re=>({id:re.id,type:re.eventType,title:re.title})))),await le("AcceptSuggestionWith",d.nodeId,d.summary,d.suggestedMin,"",x),await Cl()}catch(I){Ml("acceptTodaySuggestion error: "+I)}}async function Xn(d){try{const I=Nl(d),x=JSON.stringify(I);Ml("acceptJournalSuggestion: nodeId="+d.nodeId+" eventIds="+x+" events="+JSON.stringify((d.events||[]).map(re=>({id:re.id,type:re.eventType,title:re.title})))),await le("AcceptSuggestionWith",d.nodeId,d.summary,d.suggestedMin,"",x),await Cl()}catch(I){Ml("acceptJournalSuggestion error: "+I)}}async function Ft(){try{const[d,I,x]=await Promise.all([le("ListWorklogReport",T,j,E,M,N,L),le("WorklogReportSummary",T,j,E,M,N,L),le("GetSuggestions")]);if(t(9,k=(d||[]).map(re=>(re._expanded===void 0&&(re._expanded=!1),re))),t(10,w=I||null),t(41,de=x||[]),t(42,ke=de.length),E&&!D)if(d&&d.length>0&&d[0].nodePath)t(17,D=d[0].nodePath);else try{t(17,D=await le("GetNodeTitle",E))}catch{t(17,D="")}}catch{t(9,k=[]),t(10,w=null),t(41,de=[]),t(42,ke=0)}}async function jl(d){try{const I=await le("SaveWorklogReport",d,T,j,E,M,N,L);t(18,z=I),setTimeout(()=>t(18,z=""),4e3)}catch(I){if(String(I).includes("отменено"))return;t(18,z="Ошибка: "+String(I)),setTimeout(()=>t(18,z=""),6e3)}}let Zn;async function Zl(d){if(d._expanded=!d._expanded,t(9,k),d._expanded&&!d._events&&d._hasEvents===void 0)try{d._events=await le("GetWorklogEntryEvents",d.id)||[],d._hasEvents=d._events.length>0,t(9,k)}catch{d._events=[],d._hasEvents=!1,t(9,k)}}async function xl(d){if(d._expanded=!d._expanded,d._expanded&&d.source==="suggestion"&&!d._events&&d._hasEvents===void 0)try{d._events=await le("GetWorklogEntryEvents",d.id)||[],d._hasEvents=d._events.length>0}catch(I){I._events=[],I._hasEvents=!1}t(31,ee)}async function Gc(){const d=R.trim();if(!d||d.length<2){t(20,V=[]),t(21,K=!1);return}try{t(20,V=await le("SearchNodes",d)||[]),t(21,K=V.length>0)}catch{t(20,V=[]),t(21,K=!1)}}function Jc(){clearTimeout(Zn),Zn=setTimeout(Gc,200)}function xn(d){t(14,E=d.id),t(17,D=d.path||d.title),t(13,M=!0),t(19,R=""),t(20,V=[]),t(21,K=!1),Ft()}function $n(){t(14,E=""),t(13,M=!1),t(17,D=""),t(19,R=""),t(20,V=[]),t(21,K=!1),Ft()}function qc(){t(11,T=""),t(12,j=""),t(14,E=""),t(13,M=!1),t(15,N="all"),t(16,L="all"),t(17,D=""),t(19,R=""),t(20,V=[]),t(21,K=!1),Ft()}async function es(){const d=await le("PickFile");if(!d)return;const I=Be||A.id;await ts(I,d)}async function Yc(){const d=await le("PickDirectory");if(!d)return;const I=Be||A.id;await ts(I,d)}async function ts(d,I){t(66,Ge=!0);try{const x=await le("PreviewImport",I);t(67,Qe=x),nt=I,it=d,t(68,et=!0)}catch(x){t(24,H=String(x))}t(66,Ge=!1)}async function $l(d){try{const I=it||A.id,x=d==="copy"?await le("AddPathCopy",I,nt):await le("AddPathLink",I,nt);t(68,et=!1),t(67,Qe=null),t(72,Ze=[]),t(71,Be=null),await Promise.all([yl(I),ft(I),ql(I)])}catch(I){t(24,H=String(I))}}function Qc(){t(68,et=!1),t(67,Qe=null)}async function ls({id:d,type:I}){const x=m(I==="folder"?"delete.folder":"delete.file");Dt({title:m("delete.confirmTitle"),message:m("delete.confirmMessage")+" "+x+"?",confirmText:m("common.delete"),danger:!0,onConfirm:async()=>{try{await le("DeleteFileOrFolder",d),oe=oe.filter(Pe=>Pe.nodeId!==d);const re=Be||A.id;await ft(re)}catch(re){t(24,H=String(re))}}})}async function Xc(d){!d||d.length===0||await cr(d,"drop")}function Zc(d){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:"Запись времени добавлена"}[d]||d}function xc(d){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"),link:m("kind.link")}[d]||d||m("kind.case")}function $c(d){return d?m("capture.kind."+d):""}function er(d){return d?m("capture.source."+d):""}function tr(d){const I=[];return d.captureKind&&I.push($c(d.captureKind)),d.captureSource&&I.push(er(d.captureSource)),d.captureContextLabel&&I.push(`${m("inbox.capturedIn")}: ${d.captureContextLabel}`),d.suggestedTargetLabel&&I.push(`${m("inbox.suggestedTarget")}: ${d.suggestedTargetLabel}`),I.push(vt(d.capturedAt||d.createdAt)),I.filter(Boolean).join(" · ")}function lr(d){!d||!d.id||(t(43,_e=[d,..._e.filter(I=>I.id!==d.id)]),A&&(d.captureContextNodeId===A.id||d.suggestedTargetNodeId===A.id)&&t(44,Ie=[d,...Ie.filter(I=>I.id!==d.id)]))}function nr(){return A&&A.id?{contextType:"node",nodeId:A.id,suggestedTargetNodeId:A.id}:Y?{contextType:"section",section:Y}:{contextType:"global",section:"root"}}function Rt(){return JSON.stringify(nr())}function sr(){return A&&A.id?m("capture.dropOverlayNode",{title:A.title}):m("capture.dropOverlayGlobal")}async function Qt(d=null){d&&lr(d),Y==="inbox"&&t(43,_e=await le("ListInboxNodes")||_e)}async function ir(d,I){const x=String(d||"").trim();if(!x)return null;const re=dn(x),Pe=re?await le("CaptureURLWithContext",re,"",I,Rt()):await le("CaptureTextWithContext",x,I,Rt());return await Qt(Pe),Pe}async function ns(d,I,x){const re=String(d||"").trim();if(!re)return null;const Pe=await le("CaptureURLWithContext",re,I||"",x,Rt());return await Qt(Pe),Pe}async function or(d,I){if(!d)return null;const x=d.path||d.webkitRelativePath||"";if(x){const pt=await le("CapturePathWithContext",x,I,Rt());return await Qt(pt),pt}const re=await $2(d),Pe=await le("CaptureFileDataWithContext",d.name||`clipboard.${x2(d.type)}`,re,I,Rt());return await Qt(Pe),Pe}async function en(d,I){var al,wt,bs;if(!d)return!1;let x=!1;const re=Array.from(d.files||[]);for(const Vt of re)await or(Vt,I),x=!0;const Pe=(al=d.getData)==null?void 0:al.call(d,"text/x-moz-url");if(Pe){const Vt=em(Pe),cl=Vt?dn(Vt.url):"";if(cl)return await ns(cl,Vt.title,I),!0}const pt=(wt=d.getData)==null?void 0:wt.call(d,"text/uri-list");if(pt){const Vt=tm(pt),cl=dn(Vt);if(cl)return await ns(cl,"",I),!0}const Xt=(bs=d.getData)==null?void 0:bs.call(d,"text/plain");return String(Xt||"").trim()&&(await ir(Xt,I),x=!0),x}async function ar(){if(!Ke){t(46,st=""),t(45,Ke=!0);try{const d=await le("CaptureClipboardTextWithContext",Rt());await Qt(d),t(46,st=m("inbox.captured"))}catch(d){t(24,H=String(d).includes("clipboard is empty")?m("inbox.clipboardEmpty"):m("inbox.clipboardUnavailable"))}finally{t(45,Ke=!1)}}}async function cr(d,I="drop"){if(!Ke){t(45,Ke=!0),t(46,st="");try{for(const x of d){const re=await le("CapturePathWithContext",x,I,Rt());await Qt(re)}t(46,st=m("inbox.captured"))}catch(x){t(24,H=String(x))}finally{t(45,Ke=!1),t(81,sl=!1)}}}async function ss(d){if(!(o||c)&&!_n(d.target)&&d.clipboardData)try{await en(d.clipboardData,"paste")&&(d.preventDefault(),t(46,st=m("inbox.captured")))}catch(I){t(24,H=String(I))}}function is(d){qa(d.dataTransfer)&&(d.preventDefault(),d.dataTransfer.dropEffect="copy",t(83,yn=sr()),t(82,ml=!0))}function os(d){(d.clientX<=0||d.clientY<=0||d.clientX>=window.innerWidth||d.clientY>=window.innerHeight)&&t(82,ml=!1)}async function as(d){if(qa(d.dataTransfer)){d.preventDefault(),t(82,ml=!1);try{await en(d.dataTransfer,"drop")&&t(46,st=m("inbox.captured"))}catch(I){t(24,H=String(I))}}}function rr(d){d.preventDefault(),d.dataTransfer.dropEffect="copy",t(81,sl=!0)}function ur(){t(81,sl=!1)}async function fr(d){d.preventDefault(),d.stopPropagation(),t(81,sl=!1),await en(d.dataTransfer,"drop")&&t(46,st=m("inbox.captured"))}function tn(d){t(92,Tt=d),t(93,jt=""),t(94,At=[]),t(95,Et=null)}function cs(){t(92,Tt=null),t(93,jt=""),t(94,At=[]),t(95,Et=null),t(96,bl=!1)}async function dr(){const d=jt.trim();if(!d||d.length<2){t(94,At=[]);return}t(96,bl=!0);try{const I=await le("SearchNodes",d)||[];t(94,At=I.filter(x=>lm(x)&&x.id!==(Tt==null?void 0:Tt.id)))}catch{t(94,At=[])}finally{t(96,bl=!1)}}function pr(d){t(93,jt=d.target.value),t(95,Et=null),clearTimeout(jn),jn=setTimeout(dr,200)}function rs(d){t(95,Et=d),t(93,jt=d.path||d.title),t(94,At=[])}async function us(){if(!(!Tt||!Et))try{await fs(Tt,Et.id),cs()}catch(d){t(24,H=String(d))}}async function fs(d,I){!d||!I||(await le("ResolveInboxNode",d.id,I),t(43,_e=_e.filter(x=>x.id!==d.id)),t(44,Ie=Ie.filter(x=>x.id!==d.id)),await qt(),A&&await yl(A.id))}async function ln(d){const I=(d==null?void 0:d.suggestedTargetNodeId)||(A==null?void 0:A.id)||"";if(I)try{await fs(d,I)}catch(x){t(24,H=String(x))}}function nn(d){Dt({title:m("inbox.deleteTitle"),message:m("inbox.deleteConfirm",{title:d.title}),confirmText:m("common.delete"),danger:!0,onConfirm:async()=>{try{await le("DeleteInboxNode",d.id),t(43,_e=_e.filter(I=>I.id!==d.id)),t(44,Ie=Ie.filter(I=>I.id!==d.id))}catch(I){t(24,H=String(I))}}})}function ds(d){t(48,je=d),t(49,Fe=d.title||""),t(50,Ce=d.url||""),t(51,Ve=d.note||""),t(52,Ae="")}function ps(){t(48,je=null),t(49,Fe=""),t(50,Ce=""),t(51,Ve=""),t(52,Ae="")}async function mr(){if(!(!je||!Ce.trim()))try{const d=await le("UpdateLink",je.id,Fe.trim(),Ce.trim(),Ve);t(47,rt=rt.map(I=>I.id===d.id?d:I)),ps()}catch(d){t(52,Ae=String(d))}}async function ms(d){Dt({title:m("links.deleteTitle"),message:m("links.deleteConfirm",{title:d.title}),confirmText:m("common.delete"),danger:!0,onConfirm:async()=>{try{await le("DeleteLink",d.id),t(47,rt=rt.filter(I=>I.id!==d.id))}catch(I){t(24,H=String(I))}}})}async function gs(d){try{await le("OpenLink",d.id)}catch(I){t(24,H=String(I))}}async function _s(d){var I,x;try{await((x=(I=navigator.clipboard)==null?void 0:I.writeText)==null?void 0:x.call(I,d.url)),t(52,Ae=m("links.copied"))}catch{t(52,Ae=m("links.copyUnavailable"))}}function gr(){t(61,Te=!0),t(62,me=""),t(63,De="open_url"),t(64,Ye="")}function _r(){t(61,Te=!1),t(62,me=""),t(64,Ye="")}async function sn(){if(!(!me.trim()||!Ye.trim()||!A))try{const d=await le("CreateAction",A.id,De,me.trim(),Ye.trim());d&&d.id&&t(30,ie=[...ie,d]),t(61,Te=!1),t(62,me=""),t(64,Ye="")}catch(d){t(24,H=String(d))}}async function vs(d){try{await le("DeleteAction",d),t(30,ie=ie.filter(I=>I.id!==d))}catch(I){t(24,H=String(I))}}function vr(d){const I=lt.find(x=>x.id===d);return I?I.label:d}async function St(d){try{const I=await le("GetNodeDetail",d);I&&Pt(I)}catch(I){t(24,H=String(I))}}async function zt(d){const I=nm(d),x=I.nodeId;if(x)try{const re=await le("GetNodeDetail",x);if(!re)return;if(Pt(re),I.tab==="notes"){if(t(27,W="notes"),I.targetId){try{t(28,O=await le("ListNotes",x)||[])}catch{}const Pe=O.find(pt=>pt.id===I.targetId);Pe&&setTimeout(()=>Yt(Pe),100)}}else if(I.tab==="files")if(t(27,W="files"),I.targetId)try{const Pe=await le("GetNodeDetail",I.targetId);if(Pe&&Pe.parent_id){await ft(Pe.parent_id);const pt=tt.find(Xt=>Xt.id===I.targetId);pt&&pt.type==="file"&&Es(pt)&&setTimeout(()=>ol(pt),150)}else await ft(x)}catch{await ft(x)}else await ft(x)}catch(re){t(24,H=String(re))}}async function Ot(d){return zt(d)}async function on(){try{t(97,Wl=await le("SyncStatus"))}catch{t(97,Wl={configured:!1,serverUrl:"",deviceId:"",unpushedOps:0,lastSyncAt:"",syncInterval:0})}}let hs="general";function an(d){t(101,hs=d||"general"),t(3,r=!0)}function hr(){t(3,r=!1)}function br(d){const I=Array.isArray(d==null?void 0:d.conflicts)?d.conflicts:[],x=Array.isArray(d==null?void 0:d.applyErrors)?d.applyErrors:[],re=[];return I.length>0&&re.push(m("sync.conflictsCount",{count:I.length})),x.length>0&&re.push(m("sync.applyErrorsCount",{count:x.length})),re.join(" · ")}async function kr(){t(98,Hl=!0),t(99,il=""),t(100,kl="");try{const d=await le("SyncNow");await on(),t(99,il=br(d)),t(100,kl=il?"warning":"")}catch(d){console.error("sync error:",d),t(99,il=`${m("sync.status.error")}: ${(d==null?void 0:d.message)||d}`),t(100,kl="warning")}finally{t(98,Hl=!1)}}function yr(d){t(1,o=!1),t(0,n=d),t(65,xe=!1),window.location.reload()}function wr(d){t(2,c=!1),t(0,n=d),t(65,xe=!1),window.location.reload()}const Cr=d=>d.nodeId===A.id,Sr=d=>En(d.id),Tr=()=>an("sync"),jr=()=>an(),Er=()=>t(24,H=""),Dr=()=>t(24,H=""),Nr=()=>t(24,H="");function Mr(){B.content=this.value,t(29,B)}const Ir=d=>{t(27,W=d.id),d.id==="files"&&A&&tt.length===0&&!Be&&ft(A.id)},Ar=()=>{t(27,W="notes"),qn()},Pr=()=>{t(27,W="files"),es()},Lr=()=>t(27,W="worklog"),Fr=d=>Yt(d),Rr=d=>Yt(d);function zr(){$e=this.value,t(60,$e)}const Or=d=>d.key==="Enter"&&Yn(),Vr=d=>Yt(d),Wr=d=>Yt(d),Hr=d=>{const I=d.detail;I===0?(t(72,Ze=[]),t(71,Be=null),ft(A.id)):Nn(I-1)},Ur=d=>Bl(d.detail),Br=d=>ol(d.detail),Kr=d=>le("OpenFile",d.detail),Gr=d=>le("OpenFolder",d.detail),Jr=d=>ls(d.detail),qr=d=>In(d.detail.id),Yr=d=>Mn(d.detail),Qr=d=>An(d.detail),Xr=d=>Pn(d.detail),Zr=d=>Rn(d.detail),xr=d=>Fn(d.detail),$r=d=>zn(d.detail),eu=d=>ln(d),tu=d=>tn(d),lu=d=>nn(d),nu=d=>Jt(d),su=(d,I)=>I.key==="Enter"&&Jt(d),iu=d=>gs(d),ou=d=>_s(d),au=d=>ds(d),cu=d=>ms(d),ru=d=>le("RunAction",d.id),uu=d=>vs(d.id),fu=()=>wl(),du=d=>d.nodeId===A.id,pu=d=>Sl(d),mu=d=>Xl(d),gu=d=>Tl(d),_u=(d,I,x)=>t(41,I[x]._expanded=!d._expanded,de,t(26,A)),vu=(d,I,x,re)=>re.key==="Enter"&&t(41,I[x]._expanded=!d._expanded,de,t(26,A)),hu=d=>zt(d),bu=d=>Lt(d.nodeId),ku=d=>wl(d),yu=d=>Ql(d),wu=d=>zt(d),Cu=d=>Lt(d.nodeId),Su=d=>xl(d),Tu=(d,I)=>I.key==="Enter"&&xl(d),ju=d=>Ot(d),Eu=(d,I)=>I.key==="Enter"&&Ot(d),Du=d=>ln(d),Nu=d=>tn(d),Mu=d=>Jt(d),Iu=d=>Lt(d),Au=d=>nn(d),Pu=d=>Jt(d),Lu=(d,I)=>I.key==="Enter"&&Jt(d),Fu=()=>le("OpenTrashFolder");function Ru(){T=this.value,t(11,T)}function zu(){j=this.value,t(12,j)}const Ou=()=>{t(19,R=""),t(17,D=""),$n()};function Vu(){R=this.value,t(19,R)}const Wu=()=>setTimeout(()=>t(21,K=!1),200),Hu=d=>xn(d);function Uu(){M=this.checked,t(13,M)}function Bu(){N=Il(this),t(15,N)}function Ku(){L=Il(this),t(16,L)}const Gu=()=>jl("csv"),Ju=()=>jl("markdown"),qu=()=>jl("pdf"),Yu=d=>St(d.nodeId),Qu=(d,I,x,re)=>t(41,I[x].suggestedMin=parseInt(re.target.value),de),Xu=d=>Sl(d),Zu=d=>Xn(d),xu=d=>Tl(d),$u=(d,I,x)=>t(41,I[x]._expanded=!d._expanded,de),ef=(d,I,x,re)=>re.key==="Enter"&&t(41,I[x]._expanded=!d._expanded,de),tf=d=>zt(d),lf=d=>Lt(d.nodeId),nf=d=>St(d.nodeId),sf=d=>Zl(d),of=(d,I)=>I.key==="Enter"&&Zl(d),af=d=>wl(d),cf=d=>Ql(d),rf=d=>zt(d),uf=d=>St(d.nodeId),ff=(d,I,x,re)=>t(41,I[x].suggestedMin=parseInt(re.target.value),de),df=d=>Sl(d),pf=d=>Xl(d),mf=d=>Tl(d),gf=(d,I,x)=>t(41,I[x]._expanded=!d._expanded,de),_f=(d,I,x,re)=>re.key==="Enter"&&t(41,I[x]._expanded=!d._expanded,de),vf=d=>zt(d),hf=d=>Lt(d.nodeId),bf=d=>St(d.nodeId),kf=(d,I)=>I.key==="Enter"&&St(d.nodeId),yf=d=>St(d.nodeId),wf=(d,I)=>I.key==="Enter"&&St(d.nodeId),Cf=d=>Ot(d),Sf=(d,I)=>I.key==="Enter"&&Ot(d),Tf=d=>Ot(d),jf=(d,I)=>I.key==="Enter"&&Ot(d),Ef=()=>t(57,ye=null),Df=d=>t(57,ye=d);function Nf(){Oe=this.value,t(55,Oe)}const Mf=d=>d.key==="Enter"&&Bn(),If=d=>Un(d),Af=()=>Jn(Le.node),Pf=()=>Kn(Le.node),Lf=()=>Gn(Le.node),Ff=()=>Lt(Le.node);function Rf(){fe=this.value,t(35,fe)}function zf(){ne=this.value,t(33,ne)}function Of(){ae=Ll(this.value),t(34,ae)}function Vf(){be=this.value,t(36,be)}function Wf(){Ue=this.checked,t(37,Ue)}function Hf(){Me=this.checked,t(38,Me)}function Uf(){me=this.value,t(62,me)}const Bf=d=>d.key==="Enter"&&sn();function Kf(){De=Il(this),t(63,De),t(103,lt)}function Gf(){Ye=this.value,t(64,Ye)}const Jf=d=>d.key==="Enter"&&sn(),qf=()=>$l("copy"),Yf=()=>$l("link");function Qf(){Bt=this.value,t(90,Bt)}function Xf(){jt=this.value,t(93,jt)}const Zf=d=>d.key==="Enter"&&Et&&us(),xf=d=>rs(d);function $f(){Fe=this.value,t(49,Fe)}function ed(){Ce=this.value,t(50,Ce)}function td(){Ve=this.value,t(51,Ve)}return[n,o,c,r,u,p,v,g,h,k,w,T,j,M,E,N,L,D,z,R,V,K,G,J,H,Y,A,W,O,B,ie,ee,Z,ne,ae,fe,be,Ue,Me,X,te,de,ke,_e,Ie,Ke,st,rt,je,Fe,Ce,Ve,Ae,He,Re,Oe,Ee,ye,Le,We,$e,Te,me,De,Ye,xe,Ge,Qe,et,se,we,Be,Ze,tt,ut,Ct,zl,pl,yt,ze,Ol,sl,ml,yn,Vl,wn,Cn,Sn,Tn,vl,Bt,Kt,Tt,jt,At,Et,bl,Wl,Hl,il,kl,hs,q,lt,gc,En,Pt,ft,Bl,Dn,Nn,ol,Kl,_c,Mn,In,An,Pn,Ln,Fn,Rn,zn,wc,Cc,Sc,Wn,Ec,Dc,Nc,Mc,Un,Ic,Ac,Bn,Pc,Gt,Lc,Fc,Rc,zc,Oc,Kn,Gn,Lt,Jt,Jn,qn,Vc,Yn,Yt,Wc,Hc,Uc,wl,Bc,Kc,Ql,Sl,Tl,Xl,Xn,Ft,jl,Zl,xl,Jc,xn,$n,qc,es,Yc,$l,Qc,ls,Zc,xc,tr,ar,rr,ur,fr,tn,cs,pr,rs,us,ln,nn,ds,ps,mr,ms,gs,_s,gr,_r,sn,vs,vr,St,zt,Ot,on,an,hr,kr,yr,wr,Cr,Sr,Tr,jr,Er,Dr,Nr,Mr,Ir,Ar,Pr,Lr,Fr,Rr,zr,Or,Vr,Wr,Hr,Ur,Br,Kr,Gr,Jr,qr,Yr,Qr,Xr,Zr,xr,$r,eu,tu,lu,nu,su,iu,ou,au,cu,ru,uu,fu,du,pu,mu,gu,_u,vu,hu,bu,ku,yu,wu,Cu,Su,Tu,ju,Eu,Du,Nu,Mu,Iu,Au,Pu,Lu,Fu,Ru,zu,Ou,Vu,Wu,Hu,Uu,Bu,Ku,Gu,Ju,qu,Yu,Qu,Xu,Zu,xu,$u,ef,tf,lf,nf,sf,of,af,cf,rf,uf,ff,df,pf,mf,gf,_f,vf,hf,bf,kf,yf,wf,Cf,Sf,Tf,jf,Ef,Df,Nf,Mf,If,Af,Pf,Lf,Ff,Rf,zf,Of,Vf,Wf,Hf,Uf,Bf,Kf,Gf,Jf,qf,Yf,Qf,Xf,Zf,xf,$f,ed,td,d=>le("OpenFile",d.detail)]}class im extends ct{constructor(e){super(),at(this,e,sm,X2,ot,{},null,[-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1])}}new im({target:document.getElementById("app")}); diff --git a/cmd/verstak-gui/frontend-dist/assets/main-DRlK-DBn.css b/cmd/verstak-gui/frontend-dist/assets/main-DRlK-DBn.css new file mode 100644 index 0000000..42d37d3 --- /dev/null +++ b/cmd/verstak-gui/frontend-dist/assets/main-DRlK-DBn.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-a9f1pd.svelte-a9f1pd{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:2rem;background:var(--bg, #13131f)}.first-run-card.svelte-a9f1pd.svelte-a9f1pd{max-width:520px;width:100%;padding:2.5rem;background:var(--surface, #1e1e2e);border-radius:12px;border:1px solid var(--border, #2a2a3e);text-align:center}.first-run-logo.svelte-a9f1pd.svelte-a9f1pd{display:block;width:64px;height:64px;margin:0 auto .5rem}.first-run-card.svelte-a9f1pd h1.svelte-a9f1pd{margin:0 0 .75rem;font-size:1.5rem;color:var(--text, #e0e0e0)}.first-run-desc.svelte-a9f1pd.svelte-a9f1pd{color:var(--text-dim, #888);margin-bottom:1.5rem;font-size:.9rem;line-height:1.5}.input-row.svelte-a9f1pd.svelte-a9f1pd{display:flex;gap:.5rem}.input-row.svelte-a9f1pd input.svelte-a9f1pd{flex:1}.path-info.svelte-a9f1pd.svelte-a9f1pd{text-align:left;font-size:.85rem;padding:.5rem .75rem;margin-top:.5rem;background:var(--surface-alt, #252538);border-radius:6px;color:var(--text-dim, #888)}.error-msg.svelte-a9f1pd.svelte-a9f1pd{text-align:left;font-size:.85rem;padding:.5rem .75rem;margin-top:.5rem;background:#ff6b6b1a;border:1px solid rgba(255,107,107,.3);border-radius:6px;color:#ff6b6b}.first-run-actions.svelte-a9f1pd.svelte-a9f1pd{display:flex;gap:.75rem;justify-content:center;margin-top:1.5rem}.btn-lg.svelte-a9f1pd.svelte-a9f1pd{padding:.65rem 1.5rem;font-size:1rem}.form-group.svelte-a9f1pd.svelte-a9f1pd{margin-bottom:1rem;text-align:left}.form-label.svelte-a9f1pd.svelte-a9f1pd{display:block;font-size:.85rem;color:var(--text-dim, #888);margin-bottom:.4rem}.recovery-screen.svelte-s3o8c3.svelte-s3o8c3{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:2rem;background:var(--bg, #13131f)}.recovery-card.svelte-s3o8c3.svelte-s3o8c3{max-width:480px;width:100%;padding:2.5rem;background:var(--surface, #1e1e2e);border-radius:12px;border:1px solid var(--border, #2a2a3e);text-align:center}.recovery-icon.svelte-s3o8c3.svelte-s3o8c3{font-size:2.5rem;margin-bottom:.5rem;color:#f59e0b}.recovery-card.svelte-s3o8c3 h1.svelte-s3o8c3{margin:0 0 .75rem;font-size:1.4rem;color:var(--text, #e0e0e0)}.recovery-desc.svelte-s3o8c3.svelte-s3o8c3{color:var(--text-dim, #888);margin-bottom:.5rem;font-size:.9rem}.recovery-path.svelte-s3o8c3.svelte-s3o8c3{display:block;padding:.5rem .75rem;background:var(--surface-alt, #252538);border-radius:6px;font-size:.85rem;color:var(--text-dim, #aaa);word-break:break-all;margin-bottom:1.5rem}.error-msg.svelte-s3o8c3.svelte-s3o8c3{padding:.5rem .75rem;margin-bottom:1rem;background:#ff6b6b1a;border:1px solid rgba(255,107,107,.3);border-radius:6px;color:#ff6b6b;font-size:.85rem}.recovery-actions.svelte-s3o8c3.svelte-s3o8c3{display:flex;flex-direction:column;gap:.6rem}.btn-lg.svelte-s3o8c3.svelte-s3o8c3{padding:.65rem 1.25rem;font-size:.95rem;width:100%}.modal-desc.svelte-s3o8c3.svelte-s3o8c3{color:var(--text-dim, #888);font-size:.9rem;line-height:1.5;margin-bottom:1rem}.modal-overlay.svelte-s3o8c3.svelte-s3o8c3{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000}.modal.svelte-s3o8c3.svelte-s3o8c3{background:var(--surface, #1e1e2e);border:1px solid var(--border, #2a2a3e);border-radius:10px;padding:1.5rem;max-width:420px;width:90%}.modal.svelte-s3o8c3 h3.svelte-s3o8c3{margin:0 0 .75rem}.modal-actions.svelte-s3o8c3.svelte-s3o8c3{display:flex;gap:.5rem;justify-content:flex-end}.settings-sidebar.svelte-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-4gla2c.svelte-4gla2c,.svelte-4gla2c.svelte-4gla2c:before,.svelte-4gla2c.svelte-4gla2c:after{box-sizing:border-box;margin:0;padding:0}.app.svelte-4gla2c.svelte-4gla2c{display:flex;width:100vw;height:100vh;overflow:hidden;background:#13131f;color:#e4e4ef;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:14px}.capture-drop-overlay.svelte-4gla2c.svelte-4gla2c{position:fixed;top:0;right:0;bottom:0;left:0;z-index:120;pointer-events:none;display:flex;align-items:center;justify-content:center;background:#13131f6b;border:2px dashed #818cf8}.capture-drop-box.svelte-4gla2c.svelte-4gla2c{max-width:min(520px,calc(100vw - 48px));padding:14px 18px;border:1px solid #3a3a5c;border-radius:8px;background:#1a1a28;color:#e4e4ef;font-size:14px;font-weight:600;box-shadow:0 12px 32px #00000059;text-align:center}.sidebar.svelte-4gla2c.svelte-4gla2c{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-4gla2c.svelte-4gla2c{padding:16px 20px;display:flex;align-items:center;gap:10px;border-bottom:1px solid #2a2a3c;flex-shrink:0}.logo.svelte-4gla2c.svelte-4gla2c{display:block;width:20px;height:20px;flex-shrink:0}.brand-name.svelte-4gla2c.svelte-4gla2c{font-size:16px;font-weight:600}.sidebar-nav.svelte-4gla2c.svelte-4gla2c{flex:1;overflow-y:auto;padding:12px 0}.nav-group.svelte-4gla2c.svelte-4gla2c{margin-bottom:16px}.nav-label.svelte-4gla2c.svelte-4gla2c{font-size:10px;text-transform:uppercase;letter-spacing:.5px;color:#666;padding:4px 20px;margin-bottom:4px}.nav-item.svelte-4gla2c.svelte-4gla2c{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-4gla2c.svelte-4gla2c:hover{background:#223}.nav-item.selected.svelte-4gla2c.svelte-4gla2c{background:#2a2a4a;color:#fff;font-weight:500}.workspace-tree-area.svelte-4gla2c.svelte-4gla2c{min-height:32px}.workspace-tree-area.drop-valid.svelte-4gla2c.svelte-4gla2c{outline:2px dashed #4ade80;outline-offset:-2px;background:#4ade800d}.nav-empty.svelte-4gla2c.svelte-4gla2c{padding:8px 20px;color:#555;font-size:12px}.nav-label-row.svelte-4gla2c.svelte-4gla2c{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-4gla2c.svelte-4gla2c{background:none;border:none;color:#666;cursor:pointer;font-size:16px;padding:0 4px;font-family:inherit;line-height:1}.nav-add-btn.svelte-4gla2c.svelte-4gla2c:hover{color:#ccc}.context-menu-backdrop.svelte-4gla2c.svelte-4gla2c{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200}.context-menu.svelte-4gla2c.svelte-4gla2c{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-4gla2c.svelte-4gla2c{padding:6px 12px;font-size:10px;text-transform:uppercase;letter-spacing:.5px;color:#666}.context-menu-item.svelte-4gla2c.svelte-4gla2c{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-4gla2c.svelte-4gla2c:hover{background:#223;color:#fff}.context-menu-item.danger.svelte-4gla2c.svelte-4gla2c{color:#ff6b6b}.context-menu-item.danger.svelte-4gla2c.svelte-4gla2c:hover{background:#3a2222;color:#ff6b6b}.context-menu-divider.svelte-4gla2c.svelte-4gla2c{height:1px;background:#2a2a3c;margin:4px 0}.create-context.svelte-4gla2c.svelte-4gla2c{font-size:12px;color:#888;margin-bottom:12px}.sidebar-footer.svelte-4gla2c.svelte-4gla2c{padding:8px 12px;border-top:1px solid #2a2a3c;flex-shrink:0;display:flex;flex-direction:column;gap:4px}.sidebar-footer-row.svelte-4gla2c.svelte-4gla2c{display:flex;align-items:center;justify-content:space-between}.version.svelte-4gla2c.svelte-4gla2c{font-size:11px;color:#555;text-align:center}.main.svelte-4gla2c.svelte-4gla2c{flex:1;display:flex;flex-direction:column;height:100vh;min-width:0;overflow:hidden;background:#13131f}.header.svelte-4gla2c.svelte-4gla2c{padding:12px 24px;border-bottom:1px solid #2a2a3c;display:flex;align-items:center;flex-shrink:0;min-height:48px}.header-left.svelte-4gla2c.svelte-4gla2c{display:flex;align-items:center;gap:8px;flex:1}.header-right.svelte-4gla2c.svelte-4gla2c{display:flex;align-items:center;gap:8px}.sidebar-settings-btn.svelte-4gla2c.svelte-4gla2c{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-4gla2c.svelte-4gla2c:hover{background:#1e1e38;color:#a5b4fc}.sidebar-settings-btn.svelte-4gla2c.svelte-4gla2c:active{background:#252545;color:#818cf8}.crumb.svelte-4gla2c.svelte-4gla2c{font-size:14px;font-weight:500}.crumb.placeholder.svelte-4gla2c.svelte-4gla2c{color:#666}.crumb-type.svelte-4gla2c.svelte-4gla2c{font-size:11px;color:#555;background:#1e1e2e;padding:2px 8px;border-radius:10px;margin-left:8px}.error-banner.svelte-4gla2c.svelte-4gla2c{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-4gla2c.svelte-4gla2c{background:none;border:none;color:#f66;cursor:pointer;padding:2px;display:flex;align-items:center;border-radius:2px}.dismiss-btn.svelte-4gla2c.svelte-4gla2c:hover{color:#f44}.tabs.svelte-4gla2c.svelte-4gla2c{display:flex;align-items:stretch;border-bottom:1px solid #2a2a3c;flex-shrink:0;padding:0 24px}.tab.svelte-4gla2c.svelte-4gla2c{padding:10px 16px;border:none;background:none;color:#888;font-size:13px;cursor:pointer;border-bottom:2px solid transparent;font-family:inherit}.tab.svelte-4gla2c.svelte-4gla2c:hover{color:#a5b4fc}.tab.active.svelte-4gla2c.svelte-4gla2c{color:#e4e4ef;border-bottom-color:#818cf8;background:#6366f11f;font-weight:600}.tab-separator.svelte-4gla2c.svelte-4gla2c{width:1px;height:22px;margin:8px 10px 0;background:#2a2a3c;flex-shrink:0}.tab-content.svelte-4gla2c.svelte-4gla2c{flex:1;overflow-y:auto}.note-editor.svelte-4gla2c.svelte-4gla2c{flex:1;display:flex;flex-direction:column;height:100%}.note-editor-header.svelte-4gla2c.svelte-4gla2c{padding:12px 24px;border-bottom:1px solid #2a2a3c;display:flex;align-items:center;gap:12px;flex-shrink:0}.note-title.svelte-4gla2c.svelte-4gla2c{font-size:16px;font-weight:500}.dirty-mark.svelte-4gla2c.svelte-4gla2c{color:#f59e0b;font-size:10px}.note-editor-actions.svelte-4gla2c.svelte-4gla2c{margin-left:auto;display:flex;gap:8px}.note-textarea.svelte-4gla2c.svelte-4gla2c{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-4gla2c.svelte-4gla2c{padding:24px}.overview.svelte-4gla2c h2.svelte-4gla2c{font-size:24px;margin-bottom:16px}.meta-grid.svelte-4gla2c.svelte-4gla2c{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px;margin-bottom:24px}.meta-item.svelte-4gla2c.svelte-4gla2c{background:#1a1a28;padding:12px 16px;border-radius:8px}.meta-label.svelte-4gla2c.svelte-4gla2c{display:block;font-size:11px;color:#666;margin-bottom:4px;text-transform:uppercase}.quick-actions.svelte-4gla2c.svelte-4gla2c{display:flex;gap:8px;margin-bottom:24px;flex-wrap:wrap}.qa-btn.svelte-4gla2c.svelte-4gla2c{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-4gla2c.svelte-4gla2c:hover{background:#223}.qa-btn.svelte-4gla2c.svelte-4gla2c:disabled{opacity:.4;cursor:not-allowed}.recent-section.svelte-4gla2c.svelte-4gla2c{margin-bottom:24px}.recent-section.svelte-4gla2c h3.svelte-4gla2c{font-size:13px;color:#666;text-transform:uppercase;margin-bottom:8px}.recent-note.svelte-4gla2c.svelte-4gla2c{padding:8px 12px;border-radius:6px;cursor:pointer;display:flex;justify-content:space-between}.recent-note.svelte-4gla2c.svelte-4gla2c:hover{background:#1a1a28}.recent-date.svelte-4gla2c.svelte-4gla2c{font-size:11px;color:#555}.recent-entry.svelte-4gla2c.svelte-4gla2c{padding:6px 0;font-size:13px;color:#888;border-bottom:1px solid #1a1a28}.notes-tab.svelte-4gla2c.svelte-4gla2c{padding:24px}.tab-toolbar.svelte-4gla2c.svelte-4gla2c{margin-bottom:16px}.create-form.svelte-4gla2c.svelte-4gla2c{background:#1a1a28;padding:16px;border-radius:8px;margin-bottom:16px}.create-form.svelte-4gla2c input.svelte-4gla2c{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-4gla2c input.svelte-4gla2c:focus{outline:none;border-color:#6366f1}.form-actions.svelte-4gla2c.svelte-4gla2c{display:flex;gap:8px}.notes-list.svelte-4gla2c.svelte-4gla2c{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}.note-card.svelte-4gla2c.svelte-4gla2c{background:#1a1a28;border:1px solid #2a2a3c;border-radius:8px;padding:16px;cursor:pointer}.note-card.svelte-4gla2c.svelte-4gla2c:hover{border-color:#3a3a5c}.note-card-title.svelte-4gla2c.svelte-4gla2c{font-size:14px;font-weight:500;margin-bottom:4px}.note-card-date.svelte-4gla2c.svelte-4gla2c{font-size:11px;color:#555}.worklog-tab.svelte-4gla2c.svelte-4gla2c{padding:24px}.worklog-toolbar.svelte-4gla2c.svelte-4gla2c{margin-bottom:16px}.worklog-entry.svelte-4gla2c.svelte-4gla2c{padding:12px 0;border-bottom:1px solid #1a1a28}.suggestions-title.svelte-4gla2c.svelte-4gla2c{font-size:13px;font-weight:600;color:#a5b4fc;margin-bottom:12px;text-transform:uppercase;letter-spacing:.5px}.suggestion-summary.svelte-4gla2c.svelte-4gla2c{font-size:14px;color:#e4e4ef}.suggestion-meta.svelte-4gla2c.svelte-4gla2c{font-size:12px;color:#8888a0;margin-top:2px}.suggestion-main.svelte-4gla2c.svelte-4gla2c{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;cursor:pointer;gap:12px}.suggestion-card.expanded.svelte-4gla2c.svelte-4gla2c{border-color:#3a3a5c}.suggestion-detail.svelte-4gla2c.svelte-4gla2c{width:100%;padding:8px 12px 10px;border-top:1px solid #2a2a3c}.suggestion-detail-title.svelte-4gla2c.svelte-4gla2c{font-size:11px;font-weight:600;color:#a5b4fc;text-transform:uppercase;letter-spacing:.3px;padding:8px 0 4px}.suggestion-detail-event.svelte-4gla2c.svelte-4gla2c{display:flex;align-items:center;gap:8px;padding:3px 0;font-size:13px;color:#b0b0c0}.suggestion-event-time.svelte-4gla2c.svelte-4gla2c{color:#a0a0b8;font-variant-numeric:tabular-nums;white-space:nowrap;min-width:48px}.suggestion-event-type.svelte-4gla2c.svelte-4gla2c{color:#8888a0;font-size:11px;background:#1a1a2e;padding:1px 6px;border-radius:3px}.suggestion-event-title.svelte-4gla2c.svelte-4gla2c{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.suggestion-event-path.svelte-4gla2c.svelte-4gla2c{max-width:220px;color:#8ea0d8;font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.suggestion-card.svelte-4gla2c.svelte-4gla2c{display:flex;flex-direction:column;align-items:stretch;padding:0;background:#1e1e32;border-radius:6px;margin-bottom:8px;gap:0;border:1px solid transparent}.suggestion-card.svelte-4gla2c.svelte-4gla2c:last-child{margin-bottom:0}.suggestion-info.svelte-4gla2c.svelte-4gla2c{flex:1;display:flex;flex-direction:column;gap:2px}.suggestion-node.svelte-4gla2c.svelte-4gla2c{color:#a5b4fc;font-weight:600;font-size:13px;text-decoration:none;cursor:pointer}.suggestion-node.svelte-4gla2c.svelte-4gla2c:hover{text-decoration:underline}.suggestion-actions.svelte-4gla2c.svelte-4gla2c{display:flex;align-items:center;gap:6px;flex-shrink:0}.suggestion-min-input.svelte-4gla2c.svelte-4gla2c{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-4gla2c.svelte-4gla2c{font-size:12px;color:#8888a0}.suggestion-confidence.svelte-4gla2c.svelte-4gla2c{font-size:11px;padding:2px 6px;border-radius:3px}.suggestion-confidence.low.svelte-4gla2c.svelte-4gla2c{color:#fbbf24}.suggestion-confidence.medium.svelte-4gla2c.svelte-4gla2c{color:#60a5fa}.suggestion-confidence.high.svelte-4gla2c.svelte-4gla2c{color:#34d399}.inbox-screen.svelte-4gla2c.svelte-4gla2c{padding:24px;overflow-y:auto;flex:1}.inbox-screen.drop-valid.svelte-4gla2c.svelte-4gla2c{outline:2px dashed #4ade80;outline-offset:-4px;background:#4ade800a}.inbox-header.svelte-4gla2c.svelte-4gla2c{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px}.inbox-header.svelte-4gla2c h2.svelte-4gla2c{margin:0 0 6px}.inbox-header.svelte-4gla2c p.svelte-4gla2c{margin:0;color:#a0a0b8;font-size:13px}.inbox-header-actions.svelte-4gla2c.svelte-4gla2c{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}.inbox-capture-status.svelte-4gla2c.svelte-4gla2c{color:#8ee6b1;font-size:12px}.inbox-list.svelte-4gla2c.svelte-4gla2c{display:flex;flex-direction:column;gap:8px}.inbox-item.svelte-4gla2c.svelte-4gla2c{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid #2a2a3c;border-radius:8px;background:#1a1a28;cursor:pointer}.inbox-item.svelte-4gla2c.svelte-4gla2c:hover{border-color:#3a3a5c;background:#1e1e32}.inbox-item-main.svelte-4gla2c.svelte-4gla2c{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.inbox-item-title.svelte-4gla2c.svelte-4gla2c{color:#e4e4ef;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.inbox-item-meta.svelte-4gla2c.svelte-4gla2c{color:#8888a0;font-size:12px}.inbox-item-actions.svelte-4gla2c.svelte-4gla2c{display:flex;gap:6px;flex-shrink:0;align-items:center}.inbox-icon-btn.svelte-4gla2c.svelte-4gla2c{width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;border:1px solid #2a2a3c;border-radius:6px;background:#13131f;color:#a0a0b8;cursor:pointer;transition:color .12s,border-color .12s,background .12s}.inbox-icon-btn.svelte-4gla2c.svelte-4gla2c:hover{color:#e4e4ef;border-color:#3a3a5c;background:#222238}.inbox-icon-btn-primary.svelte-4gla2c.svelte-4gla2c{color:#a5b4fc;border-color:#34346a}.inbox-icon-btn-primary.svelte-4gla2c.svelte-4gla2c:hover{color:#fff;border-color:#6366f1;background:#272750}.inbox-icon-btn-danger.svelte-4gla2c.svelte-4gla2c{color:#f87171;border-color:#4a252c}.inbox-icon-btn-danger.svelte-4gla2c.svelte-4gla2c:hover{color:#fff;border-color:#dc2626;background:#3a1f24}.inbox-tab.svelte-4gla2c.svelte-4gla2c,.links-tab.svelte-4gla2c.svelte-4gla2c{padding:24px}.links-list.svelte-4gla2c.svelte-4gla2c{display:flex;flex-direction:column;gap:8px}.link-card.svelte-4gla2c.svelte-4gla2c{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid #2a2a3c;border-radius:8px;background:#1a1a28}.link-card.svelte-4gla2c.svelte-4gla2c:hover{border-color:#3a3a5c;background:#1e1e32}.link-main.svelte-4gla2c.svelte-4gla2c{flex:1;min-width:0;display:grid;grid-template-columns:minmax(160px,1fr) minmax(120px,220px) auto;gap:8px 12px;align-items:baseline}.link-title.svelte-4gla2c.svelte-4gla2c{color:#e4e4ef;font-weight:600;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.link-url.svelte-4gla2c.svelte-4gla2c{color:#a5b4fc;font-size:13px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.link-date.svelte-4gla2c.svelte-4gla2c{color:#8888a0;font-size:12px;white-space:nowrap}.link-note.svelte-4gla2c.svelte-4gla2c{grid-column:1 / -1;color:#8888a0;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.link-actions.svelte-4gla2c.svelte-4gla2c{display:flex;gap:8px;flex-shrink:0}.link-status.svelte-4gla2c.svelte-4gla2c{margin-top:12px;color:#8ee6b1;font-size:12px}.trash-screen.svelte-4gla2c.svelte-4gla2c{padding:24px;overflow-y:auto;flex:1}.trash-header.svelte-4gla2c.svelte-4gla2c{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px}.trash-header.svelte-4gla2c h2.svelte-4gla2c{margin:0 0 6px}.trash-header.svelte-4gla2c p.svelte-4gla2c{margin:0;color:#8888a0;font-size:12px}.trash-grid.svelte-4gla2c.svelte-4gla2c{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:16px}.trash-section.svelte-4gla2c.svelte-4gla2c{min-width:0}.trash-section.svelte-4gla2c h3.svelte-4gla2c{margin:0 0 10px;font-size:13px;color:#a5b4fc;text-transform:uppercase;letter-spacing:.3px}.trash-row.svelte-4gla2c.svelte-4gla2c{padding:10px 12px;border:1px solid #2a2a3c;border-radius:8px;background:#1a1a28;margin-bottom:8px}.trash-row-main.svelte-4gla2c.svelte-4gla2c{display:flex;justify-content:space-between;gap:12px;align-items:baseline}.trash-row-title.svelte-4gla2c.svelte-4gla2c{min-width:0;color:#e4e4ef;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.trash-row-meta.svelte-4gla2c.svelte-4gla2c{flex-shrink:0;color:#8888a0;font-size:12px}.trash-row-path.svelte-4gla2c.svelte-4gla2c{display:block;margin-top:4px;color:#707088;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.trash-empty-line.svelte-4gla2c.svelte-4gla2c{color:#8888a0;font-size:13px;margin:0}.journal-screen.svelte-4gla2c.svelte-4gla2c{padding:24px;overflow-y:auto;flex:1}.journal-header.svelte-4gla2c.svelte-4gla2c{margin-bottom:24px}.journal-header.svelte-4gla2c h2.svelte-4gla2c{margin:0 0 16px}.journal-summary.svelte-4gla2c.svelte-4gla2c{display:flex;flex-wrap:wrap;gap:24px;margin-bottom:24px;padding:16px;background:#1a1a2e;border-radius:8px;border:1px solid #2a2a3c}.summary-total.svelte-4gla2c.svelte-4gla2c{font-size:18px;font-weight:700;color:#e4e4ef;width:100%;margin-bottom:4px}.summary-section.svelte-4gla2c.svelte-4gla2c{flex:1;min-width:200px}.summary-label.svelte-4gla2c.svelte-4gla2c{font-size:12px;font-weight:600;color:#a5b4fc;text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px}.summary-row.svelte-4gla2c.svelte-4gla2c{display:flex;gap:8px;font-size:13px;padding:4px 0;border-bottom:1px solid #2a2a3c}.summary-row.svelte-4gla2c span.svelte-4gla2c:first-child{flex:1;color:#e4e4ef}.summary-count.svelte-4gla2c.svelte-4gla2c{color:#8888a0}.journal-table-wrap.svelte-4gla2c.svelte-4gla2c{overflow-x:auto}.journal-table.svelte-4gla2c.svelte-4gla2c{width:100%;border-collapse:collapse;font-size:13px}.journal-table.svelte-4gla2c th.svelte-4gla2c{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-4gla2c td.svelte-4gla2c{padding:8px 12px;border-bottom:1px solid #1a1a28;color:#e4e4ef}.journal-table.svelte-4gla2c tr:hover td.svelte-4gla2c{background:#1e1e32}.journal-table.svelte-4gla2c .link-btn.svelte-4gla2c{color:#a5b4fc}.journal-path-cell.svelte-4gla2c.svelte-4gla2c{max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#a0a0b8;font-size:12px}.journal-min-cell.svelte-4gla2c.svelte-4gla2c{text-align:right;font-variant-numeric:tabular-nums}.journal-date-cell.svelte-4gla2c.svelte-4gla2c{color:#b0b0c0;white-space:nowrap}.journal-bool-cell.svelte-4gla2c.svelte-4gla2c{text-align:center;color:#a0a0b8}.journal-row.svelte-4gla2c.svelte-4gla2c{cursor:pointer}.journal-row.svelte-4gla2c:hover td.svelte-4gla2c{background:#1e1e32}.journal-row.expanded.svelte-4gla2c td.svelte-4gla2c{background:#1a1a30;border-bottom:none}.journal-summary-cell.svelte-4gla2c.svelte-4gla2c{max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.journal-row-detail.svelte-4gla2c td.svelte-4gla2c{padding:0 12px 12px;background:#16162a}.journal-detail-body.svelte-4gla2c.svelte-4gla2c{display:flex;flex-direction:column;gap:12px;padding:8px 0}.journal-detail-actions.svelte-4gla2c.svelte-4gla2c{display:flex;gap:8px;justify-content:flex-end}.journal-detail-section.svelte-4gla2c.svelte-4gla2c{font-size:13px}.journal-detail-label.svelte-4gla2c.svelte-4gla2c{font-size:11px;font-weight:600;color:#a5b4fc;text-transform:uppercase;letter-spacing:.3px;display:block;margin-bottom:4px}.journal-detail-section.svelte-4gla2c p.svelte-4gla2c{margin:0;color:#c0c0d0}.journal-event-row.svelte-4gla2c.svelte-4gla2c{display:flex;align-items:center;gap:8px;padding:4px 0;font-size:13px;color:#b0b0c0}.journal-event-time.svelte-4gla2c.svelte-4gla2c{color:#a0a0b8;font-variant-numeric:tabular-nums;white-space:nowrap;min-width:48px}.journal-event-type.svelte-4gla2c.svelte-4gla2c{color:#8888a0;font-size:11px;background:#1a1a2e;padding:1px 6px;border-radius:3px}.journal-event-title.svelte-4gla2c.svelte-4gla2c{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.journal-node-picker.svelte-4gla2c input[type=text].svelte-4gla2c{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-4gla2c.svelte-4gla2c{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-4gla2c.svelte-4gla2c{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-4gla2c.svelte-4gla2c:hover{background:#2a2a4a}.journal-search-title.svelte-4gla2c.svelte-4gla2c{display:block;font-weight:500}.journal-search-path.svelte-4gla2c.svelte-4gla2c{display:block;font-size:11px;color:#8888a0;margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.journal-selected-node.svelte-4gla2c.svelte-4gla2c{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-4gla2c.svelte-4gla2c:hover{background:#2a2a4a}.journal-node-clear.svelte-4gla2c.svelte-4gla2c{color:#8888a0;font-size:14px;margin-left:4px}.journal-status-msg.svelte-4gla2c.svelte-4gla2c{font-size:12px;color:#34d399;padding:4px 8px;background:#1a2a1e;border-radius:4px}.journal-include-chk.svelte-4gla2c.svelte-4gla2c{width:16px;height:16px;accent-color:#6366f1;cursor:pointer}.today-suggestions.svelte-4gla2c.svelte-4gla2c{margin-bottom:24px}.link-btn.svelte-4gla2c.svelte-4gla2c{background:none;border:none;padding:0;color:#a5b4fc;font:inherit;cursor:pointer;text-align:left}.link-btn.svelte-4gla2c.svelte-4gla2c:hover{text-decoration:underline}.nav-badge.svelte-4gla2c.svelte-4gla2c{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-4gla2c.svelte-4gla2c{padding:24px}.action-card.svelte-4gla2c.svelte-4gla2c{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-4gla2c.svelte-4gla2c{display:flex;align-items:center;gap:8px;flex:1;min-width:0}.action-title.svelte-4gla2c.svelte-4gla2c{font-weight:500}.action-type.svelte-4gla2c.svelte-4gla2c{font-size:11px;color:#888;background:#223;padding:2px 8px;border-radius:10px;white-space:nowrap}.action-data.svelte-4gla2c.svelte-4gla2c{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-4gla2c.svelte-4gla2c{display:flex;gap:4px;flex-shrink:0}.action-btns.svelte-4gla2c .btn-danger.svelte-4gla2c{color:#ff6b6b;border-color:#4a2222;padding:4px 8px}.action-btns.svelte-4gla2c .btn-danger.svelte-4gla2c:hover{background:#3a2222}.empty-state.svelte-4gla2c.svelte-4gla2c{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px;text-align:center}.empty-state.svelte-4gla2c p.svelte-4gla2c{margin:0;font-size:14px;color:#666}.empty-state.svelte-4gla2c .empty-icon.svelte-4gla2c{margin-bottom:12px;color:#444}.empty-state.svelte-4gla2c .hint.svelte-4gla2c{font-size:12px;color:#555;margin-top:6px}.empty-state.svelte-4gla2c .empty-actions.svelte-4gla2c{display:flex;gap:8px;justify-content:center;margin-top:16px}.welcome.svelte-4gla2c.svelte-4gla2c{padding:48px 24px;text-align:center}.welcome.svelte-4gla2c h2.svelte-4gla2c{font-size:32px;font-weight:300;color:#8888a4;margin-bottom:16px}.welcome.svelte-4gla2c p.svelte-4gla2c{color:#666;font-size:14px}.error-text.svelte-4gla2c.svelte-4gla2c{color:#f88}.modal-overlay.svelte-4gla2c.svelte-4gla2c{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-4gla2c.svelte-4gla2c{background:#1a1a28;border:1px solid #2a2a3c;border-radius:12px;padding:24px;width:400px;max-width:90vw}.modal.svelte-4gla2c h3.svelte-4gla2c{font-size:18px;margin-bottom:16px}.modal.svelte-4gla2c textarea.svelte-4gla2c{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-4gla2c.svelte-4gla2c{width:460px}.form-group.svelte-4gla2c.svelte-4gla2c{margin-bottom:12px}.form-row.svelte-4gla2c.svelte-4gla2c{display:flex;gap:16px;margin-bottom:12px}.form-group.svelte-4gla2c label.svelte-4gla2c{display:block}.form-group.svelte-4gla2c .label-text.svelte-4gla2c,.form-group.svelte-4gla2c .form-label.svelte-4gla2c{display:block;font-size:12px;color:#666;margin-bottom:4px}.form-group.svelte-4gla2c input.svelte-4gla2c,.form-group.svelte-4gla2c select.svelte-4gla2c{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-4gla2c select.svelte-4gla2c{-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-4gla2c input.svelte-4gla2c:focus,.form-group.svelte-4gla2c select.svelte-4gla2c:focus{outline:none;border-color:#6366f1}.modal-actions.svelte-4gla2c.svelte-4gla2c{display:flex;gap:8px;justify-content:flex-end;margin-top:16px}.assign-search.svelte-4gla2c.svelte-4gla2c{position:relative}.assign-search-results.svelte-4gla2c.svelte-4gla2c{position:absolute;left:0;right:0;top:100%;z-index:110;margin-top:4px;background:#1a1a28;border:1px solid #2a2a3c;border-radius:6px;max-height:220px;overflow-y:auto}.assign-search-result.svelte-4gla2c.svelte-4gla2c{width:100%;display:flex;justify-content:space-between;gap:12px;padding:8px 10px;border:0;border-bottom:1px solid #24243a;background:transparent;color:#e4e4ef;text-align:left;cursor:pointer;font-family:inherit}.assign-search-result.svelte-4gla2c.svelte-4gla2c:hover{background:#222238}.assign-search-result.svelte-4gla2c span.svelte-4gla2c:last-child{color:#8888a0;font-size:12px;flex-shrink:0}.assign-status.svelte-4gla2c.svelte-4gla2c{color:#8888a0;font-size:12px}.btn.svelte-4gla2c.svelte-4gla2c{padding:8px 16px;border:1px solid #2a2a3c;background:#1a1a28;color:#ccc;border-radius:6px;cursor:pointer;font-size:13px;font-family:inherit}.btn.svelte-4gla2c.svelte-4gla2c:hover{background:#223}.btn-primary.svelte-4gla2c.svelte-4gla2c{background:#6366f1;border-color:#6366f1;color:#fff}.btn-primary.svelte-4gla2c.svelte-4gla2c:hover{background:#4f46e5}.btn.svelte-4gla2c.svelte-4gla2c:disabled{opacity:.4;cursor:not-allowed}.btn-sm.svelte-4gla2c.svelte-4gla2c{padding:4px 10px;font-size:12px}.btn-danger.svelte-4gla2c.svelte-4gla2c{color:#ff6b6b;border-color:#4a2222}.btn-danger.svelte-4gla2c.svelte-4gla2c: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-4gla2c.svelte-4gla2c{padding:20px}.files-tab.svelte-4gla2c .tab-toolbar.svelte-4gla2c{display:flex;gap:8px;align-items:center;margin-bottom:16px}.file-list.svelte-4gla2c.svelte-4gla2c{display:flex;flex-direction:column}.back-btn.svelte-4gla2c.svelte-4gla2c{margin-bottom:4px;display:inline-flex;align-items:center;gap:4px}.import-summary.svelte-4gla2c.svelte-4gla2c{margin-bottom:16px}.summary-row.svelte-4gla2c.svelte-4gla2c{display:flex;justify-content:space-between;padding:6px 0;font-size:14px;border-bottom:1px solid #2a2a3c}.summary-warn.svelte-4gla2c.svelte-4gla2c{margin-top:8px;padding:8px 12px;background:#3a2a22;border-radius:6px;color:#fa6;font-size:13px}.rename-error.svelte-4gla2c.svelte-4gla2c{color:#ff6b6b;font-size:12px;margin-top:4px}.template-cards.svelte-4gla2c.svelte-4gla2c{display:flex;flex-direction:column;gap:6px;margin-bottom:8px}.template-card.svelte-4gla2c.svelte-4gla2c{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-4gla2c.svelte-4gla2c:hover{background:#1e1e30;border-color:#3a3a5c}.template-card.selected.svelte-4gla2c.svelte-4gla2c{background:#2a2a50;border-color:#6366f1;color:#e4e4ef}.template-card-text.svelte-4gla2c.svelte-4gla2c{display:flex;flex-direction:column;gap:2px;min-width:0}.template-card-title.svelte-4gla2c.svelte-4gla2c{font-weight:500}.template-card-desc.svelte-4gla2c.svelte-4gla2c{font-size:11px;color:#888}.today-dashboard.svelte-4gla2c.svelte-4gla2c{padding:24px;overflow-y:auto;flex:1}.today-header.svelte-4gla2c.svelte-4gla2c{display:flex;align-items:baseline;gap:12px;margin-bottom:16px}.today-header.svelte-4gla2c h2.svelte-4gla2c{font-size:24px}.today-date.svelte-4gla2c.svelte-4gla2c{font-size:13px;color:#666}.today-summary.svelte-4gla2c.svelte-4gla2c{display:flex;gap:8px;margin-bottom:20px;flex-wrap:wrap}.summary-chip.svelte-4gla2c.svelte-4gla2c{font-size:12px;color:#b0b0c0;background:#1a1a28;border:1px solid #2a2a3c;padding:4px 12px;border-radius:16px}.today-case.svelte-4gla2c.svelte-4gla2c{background:#1a1a28;border:1px solid #2a2a3c;border-radius:8px;margin-bottom:12px;overflow:hidden}.today-case-header.svelte-4gla2c.svelte-4gla2c{padding:12px 16px;display:flex;align-items:center;gap:8px;border-bottom:1px solid #2a2a3c;cursor:pointer}.today-case-header.svelte-4gla2c.svelte-4gla2c:hover{background:#1e1e30}.today-case-title.svelte-4gla2c.svelte-4gla2c{font-weight:500}.today-case-type.svelte-4gla2c.svelte-4gla2c{font-size:11px;color:#888;background:#223;padding:2px 8px;border-radius:10px}.today-case-count.svelte-4gla2c.svelte-4gla2c{font-size:11px;color:#6366f1;margin-left:4px}.today-case-time.svelte-4gla2c.svelte-4gla2c{font-size:11px;color:#555;margin-left:auto}.today-events.svelte-4gla2c.svelte-4gla2c{padding:8px 16px}.today-event.svelte-4gla2c.svelte-4gla2c{display:flex;align-items:center;gap:8px;padding:4px 0;font-size:13px;color:#b0b0c0;cursor:pointer}.today-event.svelte-4gla2c.svelte-4gla2c:hover{color:#e4e4ef}.today-event-icon.svelte-4gla2c.svelte-4gla2c{width:18px;text-align:center;color:#6366f1;font-size:13px}.today-event-title.svelte-4gla2c.svelte-4gla2c{flex:1}.today-event-type.svelte-4gla2c.svelte-4gla2c{font-size:11px;color:#666}.today-event-time.svelte-4gla2c.svelte-4gla2c{font-size:11px;color:#555;margin-left:auto}.today-events-empty.svelte-4gla2c.svelte-4gla2c{padding:8px 16px;font-size:13px;color:#666;font-style:italic}.today-empty.svelte-4gla2c.svelte-4gla2c{padding:48px 24px;text-align:center}.today-empty.svelte-4gla2c p.svelte-4gla2c{color:#666;font-size:14px;margin:0}.today-empty.svelte-4gla2c .hint.svelte-4gla2c{font-size:12px;color:#555;margin-top:8px}.today-timeline.svelte-4gla2c.svelte-4gla2c{margin-top:24px}.today-timeline.svelte-4gla2c h3.svelte-4gla2c{font-size:13px;color:#666;text-transform:uppercase;margin-bottom:12px}.timeline-event.svelte-4gla2c.svelte-4gla2c{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-4gla2c.svelte-4gla2c:hover{color:#e4e4ef}.timeline-dot.svelte-4gla2c.svelte-4gla2c{width:6px;height:6px;border-radius:50%;background:#6366f1;margin-left:-19px;flex-shrink:0}.timeline-title.svelte-4gla2c.svelte-4gla2c{flex:1}.timeline-type.svelte-4gla2c.svelte-4gla2c{font-size:11px;color:#666}.timeline-time.svelte-4gla2c.svelte-4gla2c{font-size:11px;color:#555}.activity-tab.svelte-4gla2c.svelte-4gla2c{padding:24px}.activity-events.svelte-4gla2c.svelte-4gla2c{display:flex;flex-direction:column;gap:2px}.activity-event.svelte-4gla2c.svelte-4gla2c{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:6px;font-size:13px;color:#b0b0c0;cursor:pointer}.activity-event.svelte-4gla2c.svelte-4gla2c:hover{background:#1a1a28;color:#e4e4ef}.activity-event-icon.svelte-4gla2c.svelte-4gla2c{width:18px;text-align:center;color:#6366f1;font-size:13px;flex-shrink:0}.activity-event-title.svelte-4gla2c.svelte-4gla2c{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.activity-event-path.svelte-4gla2c.svelte-4gla2c{max-width:240px;color:#8ea0d8;font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.activity-event-type.svelte-4gla2c.svelte-4gla2c{font-size:11px;color:#666;flex-shrink:0}.activity-event-target.svelte-4gla2c.svelte-4gla2c{font-size:10px;color:#555;background:#1e1e2e;padding:1px 6px;border-radius:8px;flex-shrink:0}.activity-event-time.svelte-4gla2c.svelte-4gla2c{font-size:11px;color:#555;margin-left:8px;flex-shrink:0}.activity-feed.svelte-4gla2c.svelte-4gla2c{padding:24px;overflow-y:auto;flex:1}.activity-feed-header.svelte-4gla2c.svelte-4gla2c{margin-bottom:20px}.activity-feed-header.svelte-4gla2c h2.svelte-4gla2c{font-size:24px}.activity-feed-events.svelte-4gla2c.svelte-4gla2c{display:flex;flex-direction:column;gap:2px}.activity-feed-event.svelte-4gla2c.svelte-4gla2c{display:flex;align-items:flex-start;gap:10px;padding:8px 12px;border-radius:8px;cursor:pointer}.activity-feed-event.svelte-4gla2c.svelte-4gla2c:hover{background:#1a1a28;color:#e4e4ef}.activity-feed-icon.svelte-4gla2c.svelte-4gla2c{width:20px;text-align:center;color:#6366f1;font-size:14px;flex-shrink:0;margin-top:1px}.activity-feed-body.svelte-4gla2c.svelte-4gla2c{flex:1;min-width:0}.activity-feed-title.svelte-4gla2c.svelte-4gla2c{font-size:14px;color:#e4e4ef}.activity-feed-meta.svelte-4gla2c.svelte-4gla2c{display:flex;align-items:center;gap:8px;margin-top:2px}.activity-feed-type.svelte-4gla2c.svelte-4gla2c{font-size:11px;color:#666}.activity-feed-target.svelte-4gla2c.svelte-4gla2c{font-size:10px;color:#555;background:#1e1e2e;padding:1px 6px;border-radius:8px}.activity-feed-time.svelte-4gla2c.svelte-4gla2c{font-size:11px;color:#555}.journal-filter-section.svelte-4gla2c.svelte-4gla2c{margin-bottom:12px;padding:12px 16px;background:#1a1a2e;border:1px solid #2a2a3c;border-radius:8px}.journal-filter-heading.svelte-4gla2c.svelte-4gla2c{font-size:11px;font-weight:600;color:#a5b4fc;text-transform:uppercase;letter-spacing:.3px;margin-bottom:8px}.journal-filters-row.svelte-4gla2c.svelte-4gla2c{display:flex;flex-wrap:wrap;gap:8px 16px;align-items:flex-end}.journal-filters-row.svelte-4gla2c label.svelte-4gla2c{display:flex;flex-direction:column;gap:3px;font-size:12px;color:#8888a0}.journal-filters-row.svelte-4gla2c input[type=date].svelte-4gla2c{padding:5px 8px;border:1px solid #2a2a3c;background:#13131f;color:#e4e4ef;border-radius:4px;font-size:12px;font-family:inherit}.journal-filters-row.svelte-4gla2c .checkbox-label.svelte-4gla2c{flex-direction:row;align-items:center;gap:6px;cursor:pointer}.journal-filters-row.svelte-4gla2c .checkbox-label input.svelte-4gla2c{width:auto}.journal-export-section.svelte-4gla2c.svelte-4gla2c{padding:8px 16px;background:#1a1a2e;border:1px solid #2a2a3c;border-radius:8px}.journal-export-heading.svelte-4gla2c.svelte-4gla2c{font-size:11px;font-weight:600;color:#a5b4fc;text-transform:uppercase;letter-spacing:.3px;margin-bottom:6px}.journal-export-row.svelte-4gla2c.svelte-4gla2c{display:flex;gap:8px;align-items:center}.journal-toggle-col.svelte-4gla2c.svelte-4gla2c{width:32px;min-width:32px;text-align:center;padding:8px 4px!important}.journal-toggle-icon.svelte-4gla2c.svelte-4gla2c{color:#6366f1;font-size:12px}.worklog-entry.svelte-4gla2c.svelte-4gla2c{padding:8px 12px;background:#1a1a28;border:1px solid #2a2a3c;border-radius:8px;margin-bottom:6px;cursor:pointer}.worklog-entry.svelte-4gla2c.svelte-4gla2c:hover{border-color:#3a3a5c}.worklog-entry.expanded.svelte-4gla2c.svelte-4gla2c{border-color:#6366f1}.worklog-entry-head.svelte-4gla2c.svelte-4gla2c{display:flex;align-items:center;gap:8px;font-size:13px;color:#e4e4ef}.worklog-toggle.svelte-4gla2c.svelte-4gla2c{color:#6366f1;font-size:12px;width:16px;text-align:center;flex-shrink:0}.worklog-entry-summary.svelte-4gla2c.svelte-4gla2c{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.worklog-entry-path.svelte-4gla2c.svelte-4gla2c{max-width:240px;color:#8ea0d8;font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.worklog-entry-mins.svelte-4gla2c.svelte-4gla2c{color:#b0b0c8;font-variant-numeric:tabular-nums;white-space:nowrap}.worklog-entry-date.svelte-4gla2c.svelte-4gla2c{color:#b0b0c0;font-size:12px;white-space:nowrap}.worklog-entry-detail.svelte-4gla2c.svelte-4gla2c{margin-top:8px;padding-top:8px;border-top:1px solid #2a2a3c;display:flex;flex-direction:column;gap:8px}.worklog-entry-actions.svelte-4gla2c.svelte-4gla2c{display:flex;gap:8px;justify-content:flex-end}.wl-detail-section.svelte-4gla2c.svelte-4gla2c{font-size:13px}.wl-detail-label.svelte-4gla2c.svelte-4gla2c{font-size:11px;font-weight:600;color:#a5b4fc;text-transform:uppercase;letter-spacing:.3px;display:block;margin-bottom:2px}.wl-detail-section.svelte-4gla2c p.svelte-4gla2c{margin:0;color:#c0c0d0}.wl-tag-billable.svelte-4gla2c.svelte-4gla2c{font-size:10px;color:#34d399;background:#1a2a1e;padding:1px 6px;border-radius:8px;white-space:nowrap}.wl-tag-approx.svelte-4gla2c.svelte-4gla2c{font-size:10px;color:#fbbf24;background:#2a2a1a;padding:1px 6px;border-radius:8px;white-space:nowrap}.checkbox-label-inline.svelte-4gla2c.svelte-4gla2c{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:#e4e4ef;cursor:pointer}.checkbox-label-inline.svelte-4gla2c input.svelte-4gla2c{width:auto} diff --git a/cmd/verstak-gui/frontend-dist/assets/main-DfazBFdN.css b/cmd/verstak-gui/frontend-dist/assets/main-DfazBFdN.css deleted file mode 100644 index 1085324..0000000 --- a/cmd/verstak-gui/frontend-dist/assets/main-DfazBFdN.css +++ /dev/null @@ -1 +0,0 @@ -.file-row.svelte-1skuef2.svelte-1skuef2{display:flex;align-items:center;gap:10px;padding:8px 12px;border-radius:6px;cursor:default;transition:background .12s;min-height:52px;-webkit-user-select:none;user-select:none;position:relative}.file-row.svelte-1skuef2.svelte-1skuef2:hover{background:#1e1e30}.file-row--selected.svelte-1skuef2.svelte-1skuef2{background:#1e1e3a;outline:1px solid #3a3a6c}.file-row--selected.svelte-1skuef2.svelte-1skuef2:hover{background:#252545}.file-row.svelte-1skuef2.svelte-1skuef2:focus-visible{outline:2px solid #5588ff;outline-offset:-2px}.file-row-icon.svelte-1skuef2.svelte-1skuef2{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:32px;height:32px;color:#888}.file-row-body.svelte-1skuef2.svelte-1skuef2{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.file-row-name.svelte-1skuef2.svelte-1skuef2{font-size:13px;color:#ddd;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.3}.file-row-meta.svelte-1skuef2.svelte-1skuef2{display:flex;align-items:center;gap:4px;font-size:11px;color:#666}.meta-sep.svelte-1skuef2.svelte-1skuef2{color:#444}.file-row-actions.svelte-1skuef2.svelte-1skuef2{display:flex;gap:2px;align-items:center;opacity:0;transition:opacity .15s ease;flex-shrink:0}.file-row.svelte-1skuef2:hover .file-row-actions.svelte-1skuef2{opacity:1}.action-btn.svelte-1skuef2.svelte-1skuef2{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;border-radius:4px;background:transparent;color:#666;cursor:pointer;transition:background .12s,color .12s}.action-btn.svelte-1skuef2.svelte-1skuef2:hover{background:#2a2a3c;color:#ccc}.action-btn-danger.svelte-1skuef2.svelte-1skuef2:hover{background:#3a2222;color:#ff6b6b}.action-btn.svelte-1skuef2.svelte-1skuef2:focus-visible{outline:2px solid #5588ff;outline-offset:1px}.menu-backdrop.svelte-1skuef2.svelte-1skuef2{position:fixed;top:0;right:0;bottom:0;left:0;z-index:99}.menu.svelte-1skuef2.svelte-1skuef2{position:fixed;background:#1a1a28;border:1px solid #2a2a3c;border-radius:8px;padding:4px;z-index:100;min-width:220px;box-shadow:0 4px 16px #00000080}.menu-item.svelte-1skuef2.svelte-1skuef2{display:flex;align-items:center;gap:8px;width:100%;padding:7px 10px;border:none;background:transparent;color:#ccc;font-size:12px;text-align:left;cursor:pointer;border-radius:4px;font-family:inherit}.menu-item.svelte-1skuef2.svelte-1skuef2:hover{background:#2a2a3c;color:#fff}.menu-item-danger.svelte-1skuef2.svelte-1skuef2{color:#ff6b6b}.menu-item-danger.svelte-1skuef2.svelte-1skuef2:hover{background:#3a2222}.menu-item.svelte-1skuef2.svelte-1skuef2:focus-visible{outline:2px solid #5588ff;outline-offset:1px}.menu-sep.svelte-1skuef2.svelte-1skuef2{height:1px;background:#2a2a3c;margin:4px 8px}.breadcrumbs.svelte-csi2lb{display:flex;align-items:center;gap:4px;padding:8px 0;font-size:13px;color:#999}.sep.svelte-csi2lb{color:#444}.crumb.svelte-csi2lb{font-size:13px}.crumb--current.svelte-csi2lb{color:#ccc}.crumb--link.svelte-csi2lb{background:none;border:none;padding:2px 4px;color:#888;cursor:pointer;border-radius:3px;font-family:inherit;font-size:13px;transition:color .12s,background .12s}.crumb--link.svelte-csi2lb:hover{color:#ccc;background:#1e1e30}.crumb--link.svelte-csi2lb:focus-visible{outline:2px solid #5588ff;outline-offset:1px}.overlay.svelte-1cw3u0m{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000a6;display:flex;align-items:center;justify-content:center;z-index:1000}.modal.svelte-1cw3u0m{background:#14141f;border:1px solid #2a2a3c;border-radius:10px;width:90vw;max-width:900px;height:85vh;max-height:700px;display:flex;flex-direction:column;overflow:hidden}.preview-header.svelte-1cw3u0m{display:flex;align-items:center;gap:10px;padding:12px 16px;border-bottom:1px solid #2a2a3c;flex-shrink:0}.preview-title.svelte-1cw3u0m{display:flex;align-items:center;gap:8px;color:#ddd;font-size:14px;min-width:0}.preview-name.svelte-1cw3u0m{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.preview-meta.svelte-1cw3u0m{font-size:11px;color:#666;margin-left:auto;white-space:nowrap}.preview-actions.svelte-1cw3u0m{display:flex;gap:4px;flex-shrink:0;margin-left:8px}.action-btn.svelte-1cw3u0m{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border:none;border-radius:4px;background:transparent;color:#666;cursor:pointer;transition:background .12s,color .12s}.action-btn.svelte-1cw3u0m:hover{background:#2a2a3c;color:#ccc}.action-btn.svelte-1cw3u0m:focus-visible{outline:2px solid #5588ff;outline-offset:1px}.action-btn-close.svelte-1cw3u0m{color:#ff6b6b}.action-btn-close.svelte-1cw3u0m:hover{background:#3a2222;color:#f44}.preview-body.svelte-1cw3u0m{flex:1;overflow:auto;min-height:0}.preview-status.svelte-1cw3u0m{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:48px 24px;color:#888;font-size:14px}.preview-image-container.svelte-1cw3u0m{display:flex;align-items:center;justify-content:center;padding:16px;min-height:200px;background:#0e0e18}.preview-image.svelte-1cw3u0m{max-width:100%;max-height:calc(85vh - 100px);object-fit:contain;border-radius:4px}.preview-text.svelte-1cw3u0m{margin:0;padding:16px;font-family:SF Mono,Fira Code,Cascadia Code,Consolas,monospace;font-size:12px;line-height:1.5;color:#ccc;white-space:pre-wrap;word-wrap:break-word;overflow:auto}.preview-pdf-container.svelte-1cw3u0m{width:100%;height:100%}.preview-pdf.svelte-1cw3u0m{width:100%;height:100%;border:none}.btn-sm.svelte-1cw3u0m{padding:6px 14px;border:1px solid #2a2a3c;background:#1a1a28;color:#ccc;border-radius:6px;cursor:pointer;font-size:12px;font-family:inherit;transition:background .12s}.btn-sm.svelte-1cw3u0m:hover{background:#223}.overlay.svelte-1fv6yyk{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:200}.modal.svelte-1fv6yyk{background:#1a1a28;border:1px solid #2a2a3c;border-radius:12px;padding:24px;width:360px;max-width:90vw}h3.svelte-1fv6yyk{font-size:18px;margin-bottom:12px;color:#e4e4ef}.message.svelte-1fv6yyk{font-size:14px;color:#aaa;margin-bottom:20px;line-height:1.4}.actions.svelte-1fv6yyk{display:flex;gap:8px;justify-content:flex-end}.btn.svelte-1fv6yyk{padding:8px 16px;border:1px solid #2a2a3c;background:#1a1a28;color:#ccc;border-radius:6px;cursor:pointer;font-size:13px;font-family:inherit}.btn.svelte-1fv6yyk:hover{background:#223}.btn-primary.svelte-1fv6yyk{background:#6366f1;border-color:#6366f1;color:#fff}.btn-primary.svelte-1fv6yyk:hover{background:#4f46e5}.btn-danger.svelte-1fv6yyk{background:#dc2626;border-color:#dc2626;color:#fff}.btn-danger.svelte-1fv6yyk:hover{background:#b91c1c}.btn.svelte-1fv6yyk:focus-visible{outline:2px solid #5588ff;outline-offset:1px}.tree-item.svelte-zj71cl.svelte-zj71cl{display:flex;align-items:center;height:32px;padding-right:8px;cursor:default;font-size:13px;color:#ccc;-webkit-user-select:none;user-select:none}.tree-item.svelte-zj71cl.svelte-zj71cl:hover{background:#223}.tree-item.selected.svelte-zj71cl.svelte-zj71cl{background:#2a2a4a;color:#fff;font-weight:500}.tree-item.drop-valid.svelte-zj71cl.svelte-zj71cl{background:#1a3a1a;outline:1px solid #4ade80;outline-offset:-1px}.tree-item.drop-invalid.svelte-zj71cl.svelte-zj71cl{background:#3a1a1a;outline:1px solid #ff6b6b;outline-offset:-1px}.tree-toggle.svelte-zj71cl.svelte-zj71cl{background:none;border:none;color:#666;cursor:pointer;padding:0;width:20px;height:32px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;font-family:inherit;line-height:1;font-size:12px}.tree-toggle.svelte-zj71cl.svelte-zj71cl:hover{color:#a5b4fc}.tree-toggle-placeholder.svelte-zj71cl.svelte-zj71cl{display:inline-block;width:20px;flex-shrink:0}.tree-icon.svelte-zj71cl.svelte-zj71cl{display:inline-flex;align-items:center;justify-content:center;width:20px;height:32px;flex-shrink:0;color:#888;margin-right:4px;cursor:pointer}.tree-icon.svelte-zj71cl.svelte-zj71cl:hover,.tree-item.selected.svelte-zj71cl .tree-icon.svelte-zj71cl{color:#a5b4fc}.tree-label.svelte-zj71cl.svelte-zj71cl{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;cursor:pointer;line-height:32px}.first-run-screen.svelte-a9f1pd.svelte-a9f1pd{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:2rem;background:var(--bg, #13131f)}.first-run-card.svelte-a9f1pd.svelte-a9f1pd{max-width:520px;width:100%;padding:2.5rem;background:var(--surface, #1e1e2e);border-radius:12px;border:1px solid var(--border, #2a2a3e);text-align:center}.first-run-logo.svelte-a9f1pd.svelte-a9f1pd{display:block;width:64px;height:64px;margin:0 auto .5rem}.first-run-card.svelte-a9f1pd h1.svelte-a9f1pd{margin:0 0 .75rem;font-size:1.5rem;color:var(--text, #e0e0e0)}.first-run-desc.svelte-a9f1pd.svelte-a9f1pd{color:var(--text-dim, #888);margin-bottom:1.5rem;font-size:.9rem;line-height:1.5}.input-row.svelte-a9f1pd.svelte-a9f1pd{display:flex;gap:.5rem}.input-row.svelte-a9f1pd input.svelte-a9f1pd{flex:1}.path-info.svelte-a9f1pd.svelte-a9f1pd{text-align:left;font-size:.85rem;padding:.5rem .75rem;margin-top:.5rem;background:var(--surface-alt, #252538);border-radius:6px;color:var(--text-dim, #888)}.error-msg.svelte-a9f1pd.svelte-a9f1pd{text-align:left;font-size:.85rem;padding:.5rem .75rem;margin-top:.5rem;background:#ff6b6b1a;border:1px solid rgba(255,107,107,.3);border-radius:6px;color:#ff6b6b}.first-run-actions.svelte-a9f1pd.svelte-a9f1pd{display:flex;gap:.75rem;justify-content:center;margin-top:1.5rem}.btn-lg.svelte-a9f1pd.svelte-a9f1pd{padding:.65rem 1.5rem;font-size:1rem}.form-group.svelte-a9f1pd.svelte-a9f1pd{margin-bottom:1rem;text-align:left}.form-label.svelte-a9f1pd.svelte-a9f1pd{display:block;font-size:.85rem;color:var(--text-dim, #888);margin-bottom:.4rem}.recovery-screen.svelte-s3o8c3.svelte-s3o8c3{display:flex;align-items:center;justify-content:center;min-height:100vh;padding:2rem;background:var(--bg, #13131f)}.recovery-card.svelte-s3o8c3.svelte-s3o8c3{max-width:480px;width:100%;padding:2.5rem;background:var(--surface, #1e1e2e);border-radius:12px;border:1px solid var(--border, #2a2a3e);text-align:center}.recovery-icon.svelte-s3o8c3.svelte-s3o8c3{font-size:2.5rem;margin-bottom:.5rem;color:#f59e0b}.recovery-card.svelte-s3o8c3 h1.svelte-s3o8c3{margin:0 0 .75rem;font-size:1.4rem;color:var(--text, #e0e0e0)}.recovery-desc.svelte-s3o8c3.svelte-s3o8c3{color:var(--text-dim, #888);margin-bottom:.5rem;font-size:.9rem}.recovery-path.svelte-s3o8c3.svelte-s3o8c3{display:block;padding:.5rem .75rem;background:var(--surface-alt, #252538);border-radius:6px;font-size:.85rem;color:var(--text-dim, #aaa);word-break:break-all;margin-bottom:1.5rem}.error-msg.svelte-s3o8c3.svelte-s3o8c3{padding:.5rem .75rem;margin-bottom:1rem;background:#ff6b6b1a;border:1px solid rgba(255,107,107,.3);border-radius:6px;color:#ff6b6b;font-size:.85rem}.recovery-actions.svelte-s3o8c3.svelte-s3o8c3{display:flex;flex-direction:column;gap:.6rem}.btn-lg.svelte-s3o8c3.svelte-s3o8c3{padding:.65rem 1.25rem;font-size:.95rem;width:100%}.modal-desc.svelte-s3o8c3.svelte-s3o8c3{color:var(--text-dim, #888);font-size:.9rem;line-height:1.5;margin-bottom:1rem}.modal-overlay.svelte-s3o8c3.svelte-s3o8c3{position:fixed;top:0;right:0;bottom:0;left:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000}.modal.svelte-s3o8c3.svelte-s3o8c3{background:var(--surface, #1e1e2e);border:1px solid var(--border, #2a2a3e);border-radius:10px;padding:1.5rem;max-width:420px;width:90%}.modal.svelte-s3o8c3 h3.svelte-s3o8c3{margin:0 0 .75rem}.modal-actions.svelte-s3o8c3.svelte-s3o8c3{display:flex;gap:.5rem;justify-content:flex-end}.settings-sidebar.svelte-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-n693km.svelte-n693km,.svelte-n693km.svelte-n693km:before,.svelte-n693km.svelte-n693km:after{box-sizing:border-box;margin:0;padding:0}.app.svelte-n693km.svelte-n693km{display:flex;width:100vw;height:100vh;overflow:hidden;background:#13131f;color:#e4e4ef;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:14px}.capture-drop-overlay.svelte-n693km.svelte-n693km{position:fixed;top:0;right:0;bottom:0;left:0;z-index:120;pointer-events:none;display:flex;align-items:center;justify-content:center;background:#13131f6b;border:2px dashed #818cf8}.capture-drop-box.svelte-n693km.svelte-n693km{max-width:min(520px,calc(100vw - 48px));padding:14px 18px;border:1px solid #3a3a5c;border-radius:8px;background:#1a1a28;color:#e4e4ef;font-size:14px;font-weight:600;box-shadow:0 12px 32px #00000059;text-align:center}.sidebar.svelte-n693km.svelte-n693km{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-n693km.svelte-n693km{padding:16px 20px;display:flex;align-items:center;gap:10px;border-bottom:1px solid #2a2a3c;flex-shrink:0}.logo.svelte-n693km.svelte-n693km{display:block;width:20px;height:20px;flex-shrink:0}.brand-name.svelte-n693km.svelte-n693km{font-size:16px;font-weight:600}.sidebar-nav.svelte-n693km.svelte-n693km{flex:1;overflow-y:auto;padding:12px 0}.nav-group.svelte-n693km.svelte-n693km{margin-bottom:16px}.nav-label.svelte-n693km.svelte-n693km{font-size:10px;text-transform:uppercase;letter-spacing:.5px;color:#666;padding:4px 20px;margin-bottom:4px}.nav-item.svelte-n693km.svelte-n693km{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-n693km.svelte-n693km:hover{background:#223}.nav-item.selected.svelte-n693km.svelte-n693km{background:#2a2a4a;color:#fff;font-weight:500}.workspace-tree-area.svelte-n693km.svelte-n693km{min-height:32px}.workspace-tree-area.drop-valid.svelte-n693km.svelte-n693km{outline:2px dashed #4ade80;outline-offset:-2px;background:#4ade800d}.nav-empty.svelte-n693km.svelte-n693km{padding:8px 20px;color:#555;font-size:12px}.nav-label-row.svelte-n693km.svelte-n693km{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-n693km.svelte-n693km{background:none;border:none;color:#666;cursor:pointer;font-size:16px;padding:0 4px;font-family:inherit;line-height:1}.nav-add-btn.svelte-n693km.svelte-n693km:hover{color:#ccc}.context-menu-backdrop.svelte-n693km.svelte-n693km{position:fixed;top:0;right:0;bottom:0;left:0;z-index:200}.context-menu.svelte-n693km.svelte-n693km{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-n693km.svelte-n693km{padding:6px 12px;font-size:10px;text-transform:uppercase;letter-spacing:.5px;color:#666}.context-menu-item.svelte-n693km.svelte-n693km{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-n693km.svelte-n693km:hover{background:#223;color:#fff}.context-menu-item.danger.svelte-n693km.svelte-n693km{color:#ff6b6b}.context-menu-item.danger.svelte-n693km.svelte-n693km:hover{background:#3a2222;color:#ff6b6b}.context-menu-divider.svelte-n693km.svelte-n693km{height:1px;background:#2a2a3c;margin:4px 0}.create-context.svelte-n693km.svelte-n693km{font-size:12px;color:#888;margin-bottom:12px}.sidebar-footer.svelte-n693km.svelte-n693km{padding:8px 12px;border-top:1px solid #2a2a3c;flex-shrink:0;display:flex;flex-direction:column;gap:4px}.sidebar-footer-row.svelte-n693km.svelte-n693km{display:flex;align-items:center;justify-content:space-between}.version.svelte-n693km.svelte-n693km{font-size:11px;color:#555;text-align:center}.main.svelte-n693km.svelte-n693km{flex:1;display:flex;flex-direction:column;height:100vh;min-width:0;overflow:hidden;background:#13131f}.header.svelte-n693km.svelte-n693km{padding:12px 24px;border-bottom:1px solid #2a2a3c;display:flex;align-items:center;flex-shrink:0;min-height:48px}.header-left.svelte-n693km.svelte-n693km{display:flex;align-items:center;gap:8px;flex:1}.header-right.svelte-n693km.svelte-n693km{display:flex;align-items:center;gap:8px}.sidebar-settings-btn.svelte-n693km.svelte-n693km{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-n693km.svelte-n693km:hover{background:#1e1e38;color:#a5b4fc}.sidebar-settings-btn.svelte-n693km.svelte-n693km:active{background:#252545;color:#818cf8}.crumb.svelte-n693km.svelte-n693km{font-size:14px;font-weight:500}.crumb.placeholder.svelte-n693km.svelte-n693km{color:#666}.crumb-type.svelte-n693km.svelte-n693km{font-size:11px;color:#555;background:#1e1e2e;padding:2px 8px;border-radius:10px;margin-left:8px}.error-banner.svelte-n693km.svelte-n693km{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-n693km.svelte-n693km{background:none;border:none;color:#f66;cursor:pointer;padding:2px;display:flex;align-items:center;border-radius:2px}.dismiss-btn.svelte-n693km.svelte-n693km:hover{color:#f44}.tabs.svelte-n693km.svelte-n693km{display:flex;align-items:stretch;border-bottom:1px solid #2a2a3c;flex-shrink:0;padding:0 24px}.tab.svelte-n693km.svelte-n693km{padding:10px 16px;border:none;background:none;color:#888;font-size:13px;cursor:pointer;border-bottom:2px solid transparent;font-family:inherit}.tab.svelte-n693km.svelte-n693km:hover{color:#a5b4fc}.tab.active.svelte-n693km.svelte-n693km{color:#e4e4ef;border-bottom-color:#818cf8;background:#6366f11f;font-weight:600}.tab-separator.svelte-n693km.svelte-n693km{width:1px;height:22px;margin:8px 10px 0;background:#2a2a3c;flex-shrink:0}.tab-content.svelte-n693km.svelte-n693km{flex:1;overflow-y:auto}.note-editor.svelte-n693km.svelte-n693km{flex:1;display:flex;flex-direction:column;height:100%}.note-editor-header.svelte-n693km.svelte-n693km{padding:12px 24px;border-bottom:1px solid #2a2a3c;display:flex;align-items:center;gap:12px;flex-shrink:0}.note-title.svelte-n693km.svelte-n693km{font-size:16px;font-weight:500}.dirty-mark.svelte-n693km.svelte-n693km{color:#f59e0b;font-size:10px}.note-editor-actions.svelte-n693km.svelte-n693km{margin-left:auto;display:flex;gap:8px}.note-textarea.svelte-n693km.svelte-n693km{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-n693km.svelte-n693km{padding:24px}.overview.svelte-n693km h2.svelte-n693km{font-size:24px;margin-bottom:16px}.meta-grid.svelte-n693km.svelte-n693km{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px;margin-bottom:24px}.meta-item.svelte-n693km.svelte-n693km{background:#1a1a28;padding:12px 16px;border-radius:8px}.meta-label.svelte-n693km.svelte-n693km{display:block;font-size:11px;color:#666;margin-bottom:4px;text-transform:uppercase}.quick-actions.svelte-n693km.svelte-n693km{display:flex;gap:8px;margin-bottom:24px;flex-wrap:wrap}.qa-btn.svelte-n693km.svelte-n693km{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-n693km.svelte-n693km:hover{background:#223}.qa-btn.svelte-n693km.svelte-n693km:disabled{opacity:.4;cursor:not-allowed}.recent-section.svelte-n693km.svelte-n693km{margin-bottom:24px}.recent-section.svelte-n693km h3.svelte-n693km{font-size:13px;color:#666;text-transform:uppercase;margin-bottom:8px}.recent-note.svelte-n693km.svelte-n693km{padding:8px 12px;border-radius:6px;cursor:pointer;display:flex;justify-content:space-between}.recent-note.svelte-n693km.svelte-n693km:hover{background:#1a1a28}.recent-date.svelte-n693km.svelte-n693km{font-size:11px;color:#555}.recent-entry.svelte-n693km.svelte-n693km{padding:6px 0;font-size:13px;color:#888;border-bottom:1px solid #1a1a28}.notes-tab.svelte-n693km.svelte-n693km{padding:24px}.tab-toolbar.svelte-n693km.svelte-n693km{margin-bottom:16px}.create-form.svelte-n693km.svelte-n693km{background:#1a1a28;padding:16px;border-radius:8px;margin-bottom:16px}.create-form.svelte-n693km input.svelte-n693km{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-n693km input.svelte-n693km:focus{outline:none;border-color:#6366f1}.form-actions.svelte-n693km.svelte-n693km{display:flex;gap:8px}.notes-list.svelte-n693km.svelte-n693km{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}.note-card.svelte-n693km.svelte-n693km{background:#1a1a28;border:1px solid #2a2a3c;border-radius:8px;padding:16px;cursor:pointer}.note-card.svelte-n693km.svelte-n693km:hover{border-color:#3a3a5c}.note-card-title.svelte-n693km.svelte-n693km{font-size:14px;font-weight:500;margin-bottom:4px}.note-card-date.svelte-n693km.svelte-n693km{font-size:11px;color:#555}.worklog-tab.svelte-n693km.svelte-n693km{padding:24px}.worklog-toolbar.svelte-n693km.svelte-n693km{margin-bottom:16px}.worklog-entry.svelte-n693km.svelte-n693km{padding:12px 0;border-bottom:1px solid #1a1a28}.suggestions-title.svelte-n693km.svelte-n693km{font-size:13px;font-weight:600;color:#a5b4fc;margin-bottom:12px;text-transform:uppercase;letter-spacing:.5px}.suggestion-summary.svelte-n693km.svelte-n693km{font-size:14px;color:#e4e4ef}.suggestion-meta.svelte-n693km.svelte-n693km{font-size:12px;color:#8888a0;margin-top:2px}.suggestion-main.svelte-n693km.svelte-n693km{display:flex;align-items:center;justify-content:space-between;padding:10px 12px;cursor:pointer;gap:12px}.suggestion-card.expanded.svelte-n693km.svelte-n693km{border-color:#3a3a5c}.suggestion-detail.svelte-n693km.svelte-n693km{padding:0 12px 10px;border-top:1px solid #2a2a3c}.suggestion-detail-title.svelte-n693km.svelte-n693km{font-size:11px;font-weight:600;color:#a5b4fc;text-transform:uppercase;letter-spacing:.3px;padding:8px 0 4px}.suggestion-detail-event.svelte-n693km.svelte-n693km{display:flex;align-items:center;gap:8px;padding:3px 0;font-size:13px;color:#b0b0c0}.suggestion-event-time.svelte-n693km.svelte-n693km{color:#a0a0b8;font-variant-numeric:tabular-nums;white-space:nowrap;min-width:48px}.suggestion-event-type.svelte-n693km.svelte-n693km{color:#8888a0;font-size:11px;background:#1a1a2e;padding:1px 6px;border-radius:3px}.suggestion-event-title.svelte-n693km.svelte-n693km{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.suggestion-card.svelte-n693km.svelte-n693km{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-n693km.svelte-n693km:last-child{margin-bottom:0}.suggestion-info.svelte-n693km.svelte-n693km{flex:1;display:flex;flex-direction:column;gap:2px}.suggestion-node.svelte-n693km.svelte-n693km{color:#a5b4fc;font-weight:600;font-size:13px;text-decoration:none;cursor:pointer}.suggestion-node.svelte-n693km.svelte-n693km:hover{text-decoration:underline}.suggestion-actions.svelte-n693km.svelte-n693km{display:flex;align-items:center;gap:6px;flex-shrink:0}.suggestion-min-input.svelte-n693km.svelte-n693km{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-n693km.svelte-n693km{font-size:12px;color:#8888a0}.suggestion-confidence.svelte-n693km.svelte-n693km{font-size:11px;padding:2px 6px;border-radius:3px}.suggestion-confidence.low.svelte-n693km.svelte-n693km{color:#fbbf24}.suggestion-confidence.medium.svelte-n693km.svelte-n693km{color:#60a5fa}.suggestion-confidence.high.svelte-n693km.svelte-n693km{color:#34d399}.inbox-screen.svelte-n693km.svelte-n693km{padding:24px;overflow-y:auto;flex:1}.inbox-screen.drop-valid.svelte-n693km.svelte-n693km{outline:2px dashed #4ade80;outline-offset:-4px;background:#4ade800a}.inbox-header.svelte-n693km.svelte-n693km{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px}.inbox-header.svelte-n693km h2.svelte-n693km{margin:0 0 6px}.inbox-header.svelte-n693km p.svelte-n693km{margin:0;color:#a0a0b8;font-size:13px}.inbox-header-actions.svelte-n693km.svelte-n693km{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}.inbox-capture-status.svelte-n693km.svelte-n693km{color:#8ee6b1;font-size:12px}.inbox-list.svelte-n693km.svelte-n693km{display:flex;flex-direction:column;gap:8px}.inbox-item.svelte-n693km.svelte-n693km{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid #2a2a3c;border-radius:8px;background:#1a1a28;cursor:pointer}.inbox-item.svelte-n693km.svelte-n693km:hover{border-color:#3a3a5c;background:#1e1e32}.inbox-item-main.svelte-n693km.svelte-n693km{flex:1;min-width:0;display:flex;flex-direction:column;gap:3px}.inbox-item-title.svelte-n693km.svelte-n693km{color:#e4e4ef;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.inbox-item-meta.svelte-n693km.svelte-n693km{color:#8888a0;font-size:12px}.inbox-item-actions.svelte-n693km.svelte-n693km{display:flex;gap:6px;flex-shrink:0;align-items:center}.inbox-icon-btn.svelte-n693km.svelte-n693km{width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;border:1px solid #2a2a3c;border-radius:6px;background:#13131f;color:#a0a0b8;cursor:pointer;transition:color .12s,border-color .12s,background .12s}.inbox-icon-btn.svelte-n693km.svelte-n693km:hover{color:#e4e4ef;border-color:#3a3a5c;background:#222238}.inbox-icon-btn-primary.svelte-n693km.svelte-n693km{color:#a5b4fc;border-color:#34346a}.inbox-icon-btn-primary.svelte-n693km.svelte-n693km:hover{color:#fff;border-color:#6366f1;background:#272750}.inbox-icon-btn-danger.svelte-n693km.svelte-n693km{color:#f87171;border-color:#4a252c}.inbox-icon-btn-danger.svelte-n693km.svelte-n693km:hover{color:#fff;border-color:#dc2626;background:#3a1f24}.inbox-tab.svelte-n693km.svelte-n693km,.links-tab.svelte-n693km.svelte-n693km{padding:24px}.links-list.svelte-n693km.svelte-n693km{display:flex;flex-direction:column;gap:8px}.link-card.svelte-n693km.svelte-n693km{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid #2a2a3c;border-radius:8px;background:#1a1a28}.link-card.svelte-n693km.svelte-n693km:hover{border-color:#3a3a5c;background:#1e1e32}.link-main.svelte-n693km.svelte-n693km{flex:1;min-width:0;display:grid;grid-template-columns:minmax(160px,1fr) minmax(120px,220px) auto;gap:8px 12px;align-items:baseline}.link-title.svelte-n693km.svelte-n693km{color:#e4e4ef;font-weight:600;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.link-url.svelte-n693km.svelte-n693km{color:#a5b4fc;font-size:13px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.link-date.svelte-n693km.svelte-n693km{color:#8888a0;font-size:12px;white-space:nowrap}.link-note.svelte-n693km.svelte-n693km{grid-column:1 / -1;color:#8888a0;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.link-actions.svelte-n693km.svelte-n693km{display:flex;gap:8px;flex-shrink:0}.link-status.svelte-n693km.svelte-n693km{margin-top:12px;color:#8ee6b1;font-size:12px}.trash-screen.svelte-n693km.svelte-n693km{padding:24px;overflow-y:auto;flex:1}.trash-header.svelte-n693km.svelte-n693km{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px}.trash-header.svelte-n693km h2.svelte-n693km{margin:0 0 6px}.trash-header.svelte-n693km p.svelte-n693km{margin:0;color:#8888a0;font-size:12px}.trash-grid.svelte-n693km.svelte-n693km{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:16px}.trash-section.svelte-n693km.svelte-n693km{min-width:0}.trash-section.svelte-n693km h3.svelte-n693km{margin:0 0 10px;font-size:13px;color:#a5b4fc;text-transform:uppercase;letter-spacing:.3px}.trash-row.svelte-n693km.svelte-n693km{padding:10px 12px;border:1px solid #2a2a3c;border-radius:8px;background:#1a1a28;margin-bottom:8px}.trash-row-main.svelte-n693km.svelte-n693km{display:flex;justify-content:space-between;gap:12px;align-items:baseline}.trash-row-title.svelte-n693km.svelte-n693km{min-width:0;color:#e4e4ef;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.trash-row-meta.svelte-n693km.svelte-n693km{flex-shrink:0;color:#8888a0;font-size:12px}.trash-row-path.svelte-n693km.svelte-n693km{display:block;margin-top:4px;color:#707088;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.trash-empty-line.svelte-n693km.svelte-n693km{color:#8888a0;font-size:13px;margin:0}.journal-screen.svelte-n693km.svelte-n693km{padding:24px;overflow-y:auto;flex:1}.journal-header.svelte-n693km.svelte-n693km{margin-bottom:24px}.journal-header.svelte-n693km h2.svelte-n693km{margin:0 0 16px}.journal-summary.svelte-n693km.svelte-n693km{display:flex;flex-wrap:wrap;gap:24px;margin-bottom:24px;padding:16px;background:#1a1a2e;border-radius:8px;border:1px solid #2a2a3c}.summary-total.svelte-n693km.svelte-n693km{font-size:18px;font-weight:700;color:#e4e4ef;width:100%;margin-bottom:4px}.summary-section.svelte-n693km.svelte-n693km{flex:1;min-width:200px}.summary-label.svelte-n693km.svelte-n693km{font-size:12px;font-weight:600;color:#a5b4fc;text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px}.summary-row.svelte-n693km.svelte-n693km{display:flex;gap:8px;font-size:13px;padding:4px 0;border-bottom:1px solid #2a2a3c}.summary-row.svelte-n693km span.svelte-n693km:first-child{flex:1;color:#e4e4ef}.summary-count.svelte-n693km.svelte-n693km{color:#8888a0}.journal-table-wrap.svelte-n693km.svelte-n693km{overflow-x:auto}.journal-table.svelte-n693km.svelte-n693km{width:100%;border-collapse:collapse;font-size:13px}.journal-table.svelte-n693km th.svelte-n693km{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-n693km td.svelte-n693km{padding:8px 12px;border-bottom:1px solid #1a1a28;color:#e4e4ef}.journal-table.svelte-n693km tr:hover td.svelte-n693km{background:#1e1e32}.journal-table.svelte-n693km .link-btn.svelte-n693km{color:#a5b4fc}.journal-path-cell.svelte-n693km.svelte-n693km{max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#a0a0b8;font-size:12px}.journal-min-cell.svelte-n693km.svelte-n693km{text-align:right;font-variant-numeric:tabular-nums}.journal-date-cell.svelte-n693km.svelte-n693km{color:#b0b0c0;white-space:nowrap}.journal-bool-cell.svelte-n693km.svelte-n693km{text-align:center;color:#a0a0b8}.journal-row.svelte-n693km.svelte-n693km{cursor:pointer}.journal-row.svelte-n693km:hover td.svelte-n693km{background:#1e1e32}.journal-row.expanded.svelte-n693km td.svelte-n693km{background:#1a1a30;border-bottom:none}.journal-summary-cell.svelte-n693km.svelte-n693km{max-width:260px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.journal-row-detail.svelte-n693km td.svelte-n693km{padding:0 12px 12px;background:#16162a}.journal-detail-body.svelte-n693km.svelte-n693km{display:flex;flex-direction:column;gap:12px;padding:8px 0}.journal-detail-actions.svelte-n693km.svelte-n693km{display:flex;gap:8px;justify-content:flex-end}.journal-detail-section.svelte-n693km.svelte-n693km{font-size:13px}.journal-detail-label.svelte-n693km.svelte-n693km{font-size:11px;font-weight:600;color:#a5b4fc;text-transform:uppercase;letter-spacing:.3px;display:block;margin-bottom:4px}.journal-detail-section.svelte-n693km p.svelte-n693km{margin:0;color:#c0c0d0}.journal-event-row.svelte-n693km.svelte-n693km{display:flex;align-items:center;gap:8px;padding:4px 0;font-size:13px;color:#b0b0c0}.journal-event-time.svelte-n693km.svelte-n693km{color:#a0a0b8;font-variant-numeric:tabular-nums;white-space:nowrap;min-width:48px}.journal-event-type.svelte-n693km.svelte-n693km{color:#8888a0;font-size:11px;background:#1a1a2e;padding:1px 6px;border-radius:3px}.journal-event-title.svelte-n693km.svelte-n693km{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.journal-node-picker.svelte-n693km input[type=text].svelte-n693km{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-n693km.svelte-n693km{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-n693km.svelte-n693km{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-n693km.svelte-n693km:hover{background:#2a2a4a}.journal-search-title.svelte-n693km.svelte-n693km{display:block;font-weight:500}.journal-search-path.svelte-n693km.svelte-n693km{display:block;font-size:11px;color:#8888a0;margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.journal-selected-node.svelte-n693km.svelte-n693km{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-n693km.svelte-n693km:hover{background:#2a2a4a}.journal-node-clear.svelte-n693km.svelte-n693km{color:#8888a0;font-size:14px;margin-left:4px}.journal-status-msg.svelte-n693km.svelte-n693km{font-size:12px;color:#34d399;padding:4px 8px;background:#1a2a1e;border-radius:4px}.journal-include-chk.svelte-n693km.svelte-n693km{width:16px;height:16px;accent-color:#6366f1;cursor:pointer}.today-suggestions.svelte-n693km.svelte-n693km{margin-bottom:24px}.link-btn.svelte-n693km.svelte-n693km{background:none;border:none;padding:0;color:#a5b4fc;font:inherit;cursor:pointer;text-align:left}.link-btn.svelte-n693km.svelte-n693km:hover{text-decoration:underline}.nav-badge.svelte-n693km.svelte-n693km{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-n693km.svelte-n693km{padding:24px}.action-card.svelte-n693km.svelte-n693km{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-n693km.svelte-n693km{display:flex;align-items:center;gap:8px;flex:1;min-width:0}.action-title.svelte-n693km.svelte-n693km{font-weight:500}.action-type.svelte-n693km.svelte-n693km{font-size:11px;color:#888;background:#223;padding:2px 8px;border-radius:10px;white-space:nowrap}.action-data.svelte-n693km.svelte-n693km{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-n693km.svelte-n693km{display:flex;gap:4px;flex-shrink:0}.action-btns.svelte-n693km .btn-danger.svelte-n693km{color:#ff6b6b;border-color:#4a2222;padding:4px 8px}.action-btns.svelte-n693km .btn-danger.svelte-n693km:hover{background:#3a2222}.empty-state.svelte-n693km.svelte-n693km{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px;text-align:center}.empty-state.svelte-n693km p.svelte-n693km{margin:0;font-size:14px;color:#666}.empty-state.svelte-n693km .empty-icon.svelte-n693km{margin-bottom:12px;color:#444}.empty-state.svelte-n693km .hint.svelte-n693km{font-size:12px;color:#555;margin-top:6px}.empty-state.svelte-n693km .empty-actions.svelte-n693km{display:flex;gap:8px;justify-content:center;margin-top:16px}.welcome.svelte-n693km.svelte-n693km{padding:48px 24px;text-align:center}.welcome.svelte-n693km h2.svelte-n693km{font-size:32px;font-weight:300;color:#8888a4;margin-bottom:16px}.welcome.svelte-n693km p.svelte-n693km{color:#666;font-size:14px}.error-text.svelte-n693km.svelte-n693km{color:#f88}.modal-overlay.svelte-n693km.svelte-n693km{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-n693km.svelte-n693km{background:#1a1a28;border:1px solid #2a2a3c;border-radius:12px;padding:24px;width:400px;max-width:90vw}.modal.svelte-n693km h3.svelte-n693km{font-size:18px;margin-bottom:16px}.modal.svelte-n693km textarea.svelte-n693km{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-n693km.svelte-n693km{width:460px}.form-group.svelte-n693km.svelte-n693km{margin-bottom:12px}.form-row.svelte-n693km.svelte-n693km{display:flex;gap:16px;margin-bottom:12px}.form-group.svelte-n693km label.svelte-n693km{display:block}.form-group.svelte-n693km .label-text.svelte-n693km,.form-group.svelte-n693km .form-label.svelte-n693km{display:block;font-size:12px;color:#666;margin-bottom:4px}.form-group.svelte-n693km input.svelte-n693km,.form-group.svelte-n693km select.svelte-n693km{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-n693km select.svelte-n693km{-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-n693km input.svelte-n693km:focus,.form-group.svelte-n693km select.svelte-n693km:focus{outline:none;border-color:#6366f1}.modal-actions.svelte-n693km.svelte-n693km{display:flex;gap:8px;justify-content:flex-end;margin-top:16px}.assign-search.svelte-n693km.svelte-n693km{position:relative}.assign-search-results.svelte-n693km.svelte-n693km{position:absolute;left:0;right:0;top:100%;z-index:110;margin-top:4px;background:#1a1a28;border:1px solid #2a2a3c;border-radius:6px;max-height:220px;overflow-y:auto}.assign-search-result.svelte-n693km.svelte-n693km{width:100%;display:flex;justify-content:space-between;gap:12px;padding:8px 10px;border:0;border-bottom:1px solid #24243a;background:transparent;color:#e4e4ef;text-align:left;cursor:pointer;font-family:inherit}.assign-search-result.svelte-n693km.svelte-n693km:hover{background:#222238}.assign-search-result.svelte-n693km span.svelte-n693km:last-child{color:#8888a0;font-size:12px;flex-shrink:0}.assign-status.svelte-n693km.svelte-n693km{color:#8888a0;font-size:12px}.btn.svelte-n693km.svelte-n693km{padding:8px 16px;border:1px solid #2a2a3c;background:#1a1a28;color:#ccc;border-radius:6px;cursor:pointer;font-size:13px;font-family:inherit}.btn.svelte-n693km.svelte-n693km:hover{background:#223}.btn-primary.svelte-n693km.svelte-n693km{background:#6366f1;border-color:#6366f1;color:#fff}.btn-primary.svelte-n693km.svelte-n693km:hover{background:#4f46e5}.btn.svelte-n693km.svelte-n693km:disabled{opacity:.4;cursor:not-allowed}.btn-sm.svelte-n693km.svelte-n693km{padding:4px 10px;font-size:12px}.btn-danger.svelte-n693km.svelte-n693km{color:#ff6b6b;border-color:#4a2222}.btn-danger.svelte-n693km.svelte-n693km: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-n693km.svelte-n693km{padding:20px}.files-tab.svelte-n693km .tab-toolbar.svelte-n693km{display:flex;gap:8px;align-items:center;margin-bottom:16px}.file-list.svelte-n693km.svelte-n693km{display:flex;flex-direction:column}.back-btn.svelte-n693km.svelte-n693km{margin-bottom:4px;display:inline-flex;align-items:center;gap:4px}.import-summary.svelte-n693km.svelte-n693km{margin-bottom:16px}.summary-row.svelte-n693km.svelte-n693km{display:flex;justify-content:space-between;padding:6px 0;font-size:14px;border-bottom:1px solid #2a2a3c}.summary-warn.svelte-n693km.svelte-n693km{margin-top:8px;padding:8px 12px;background:#3a2a22;border-radius:6px;color:#fa6;font-size:13px}.rename-error.svelte-n693km.svelte-n693km{color:#ff6b6b;font-size:12px;margin-top:4px}.template-cards.svelte-n693km.svelte-n693km{display:flex;flex-direction:column;gap:6px;margin-bottom:8px}.template-card.svelte-n693km.svelte-n693km{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-n693km.svelte-n693km:hover{background:#1e1e30;border-color:#3a3a5c}.template-card.selected.svelte-n693km.svelte-n693km{background:#2a2a50;border-color:#6366f1;color:#e4e4ef}.template-card-text.svelte-n693km.svelte-n693km{display:flex;flex-direction:column;gap:2px;min-width:0}.template-card-title.svelte-n693km.svelte-n693km{font-weight:500}.template-card-desc.svelte-n693km.svelte-n693km{font-size:11px;color:#888}.today-dashboard.svelte-n693km.svelte-n693km{padding:24px;overflow-y:auto;flex:1}.today-header.svelte-n693km.svelte-n693km{display:flex;align-items:baseline;gap:12px;margin-bottom:16px}.today-header.svelte-n693km h2.svelte-n693km{font-size:24px}.today-date.svelte-n693km.svelte-n693km{font-size:13px;color:#666}.today-summary.svelte-n693km.svelte-n693km{display:flex;gap:8px;margin-bottom:20px;flex-wrap:wrap}.summary-chip.svelte-n693km.svelte-n693km{font-size:12px;color:#b0b0c0;background:#1a1a28;border:1px solid #2a2a3c;padding:4px 12px;border-radius:16px}.today-case.svelte-n693km.svelte-n693km{background:#1a1a28;border:1px solid #2a2a3c;border-radius:8px;margin-bottom:12px;overflow:hidden}.today-case-header.svelte-n693km.svelte-n693km{padding:12px 16px;display:flex;align-items:center;gap:8px;border-bottom:1px solid #2a2a3c;cursor:pointer}.today-case-header.svelte-n693km.svelte-n693km:hover{background:#1e1e30}.today-case-title.svelte-n693km.svelte-n693km{font-weight:500}.today-case-type.svelte-n693km.svelte-n693km{font-size:11px;color:#888;background:#223;padding:2px 8px;border-radius:10px}.today-case-count.svelte-n693km.svelte-n693km{font-size:11px;color:#6366f1;margin-left:4px}.today-case-time.svelte-n693km.svelte-n693km{font-size:11px;color:#555;margin-left:auto}.today-events.svelte-n693km.svelte-n693km{padding:8px 16px}.today-event.svelte-n693km.svelte-n693km{display:flex;align-items:center;gap:8px;padding:4px 0;font-size:13px;color:#b0b0c0;cursor:pointer}.today-event.svelte-n693km.svelte-n693km:hover{color:#e4e4ef}.today-event-icon.svelte-n693km.svelte-n693km{width:18px;text-align:center;color:#6366f1;font-size:13px}.today-event-title.svelte-n693km.svelte-n693km{flex:1}.today-event-type.svelte-n693km.svelte-n693km{font-size:11px;color:#666}.today-event-time.svelte-n693km.svelte-n693km{font-size:11px;color:#555;margin-left:auto}.today-events-empty.svelte-n693km.svelte-n693km{padding:8px 16px;font-size:13px;color:#666;font-style:italic}.today-empty.svelte-n693km.svelte-n693km{padding:48px 24px;text-align:center}.today-empty.svelte-n693km p.svelte-n693km{color:#666;font-size:14px;margin:0}.today-empty.svelte-n693km .hint.svelte-n693km{font-size:12px;color:#555;margin-top:8px}.today-timeline.svelte-n693km.svelte-n693km{margin-top:24px}.today-timeline.svelte-n693km h3.svelte-n693km{font-size:13px;color:#666;text-transform:uppercase;margin-bottom:12px}.timeline-event.svelte-n693km.svelte-n693km{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-n693km.svelte-n693km:hover{color:#e4e4ef}.timeline-dot.svelte-n693km.svelte-n693km{width:6px;height:6px;border-radius:50%;background:#6366f1;margin-left:-19px;flex-shrink:0}.timeline-title.svelte-n693km.svelte-n693km{flex:1}.timeline-type.svelte-n693km.svelte-n693km{font-size:11px;color:#666}.timeline-time.svelte-n693km.svelte-n693km{font-size:11px;color:#555}.activity-tab.svelte-n693km.svelte-n693km{padding:24px}.activity-events.svelte-n693km.svelte-n693km{display:flex;flex-direction:column;gap:2px}.activity-event.svelte-n693km.svelte-n693km{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:6px;font-size:13px;color:#b0b0c0;cursor:pointer}.activity-event.svelte-n693km.svelte-n693km:hover{background:#1a1a28;color:#e4e4ef}.activity-event-icon.svelte-n693km.svelte-n693km{width:18px;text-align:center;color:#6366f1;font-size:13px;flex-shrink:0}.activity-event-title.svelte-n693km.svelte-n693km{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.activity-event-type.svelte-n693km.svelte-n693km{font-size:11px;color:#666;flex-shrink:0}.activity-event-target.svelte-n693km.svelte-n693km{font-size:10px;color:#555;background:#1e1e2e;padding:1px 6px;border-radius:8px;flex-shrink:0}.activity-event-time.svelte-n693km.svelte-n693km{font-size:11px;color:#555;margin-left:8px;flex-shrink:0}.activity-feed.svelte-n693km.svelte-n693km{padding:24px;overflow-y:auto;flex:1}.activity-feed-header.svelte-n693km.svelte-n693km{margin-bottom:20px}.activity-feed-header.svelte-n693km h2.svelte-n693km{font-size:24px}.activity-feed-events.svelte-n693km.svelte-n693km{display:flex;flex-direction:column;gap:2px}.activity-feed-event.svelte-n693km.svelte-n693km{display:flex;align-items:flex-start;gap:10px;padding:8px 12px;border-radius:8px;cursor:pointer}.activity-feed-event.svelte-n693km.svelte-n693km:hover{background:#1a1a28;color:#e4e4ef}.activity-feed-icon.svelte-n693km.svelte-n693km{width:20px;text-align:center;color:#6366f1;font-size:14px;flex-shrink:0;margin-top:1px}.activity-feed-body.svelte-n693km.svelte-n693km{flex:1;min-width:0}.activity-feed-title.svelte-n693km.svelte-n693km{font-size:14px;color:#e4e4ef}.activity-feed-meta.svelte-n693km.svelte-n693km{display:flex;align-items:center;gap:8px;margin-top:2px}.activity-feed-type.svelte-n693km.svelte-n693km{font-size:11px;color:#666}.activity-feed-target.svelte-n693km.svelte-n693km{font-size:10px;color:#555;background:#1e1e2e;padding:1px 6px;border-radius:8px}.activity-feed-time.svelte-n693km.svelte-n693km{font-size:11px;color:#555}.journal-filter-section.svelte-n693km.svelte-n693km{margin-bottom:12px;padding:12px 16px;background:#1a1a2e;border:1px solid #2a2a3c;border-radius:8px}.journal-filter-heading.svelte-n693km.svelte-n693km{font-size:11px;font-weight:600;color:#a5b4fc;text-transform:uppercase;letter-spacing:.3px;margin-bottom:8px}.journal-filters-row.svelte-n693km.svelte-n693km{display:flex;flex-wrap:wrap;gap:8px 16px;align-items:flex-end}.journal-filters-row.svelte-n693km label.svelte-n693km{display:flex;flex-direction:column;gap:3px;font-size:12px;color:#8888a0}.journal-filters-row.svelte-n693km input[type=date].svelte-n693km{padding:5px 8px;border:1px solid #2a2a3c;background:#13131f;color:#e4e4ef;border-radius:4px;font-size:12px;font-family:inherit}.journal-filters-row.svelte-n693km .checkbox-label.svelte-n693km{flex-direction:row;align-items:center;gap:6px;cursor:pointer}.journal-filters-row.svelte-n693km .checkbox-label input.svelte-n693km{width:auto}.journal-export-section.svelte-n693km.svelte-n693km{padding:8px 16px;background:#1a1a2e;border:1px solid #2a2a3c;border-radius:8px}.journal-export-heading.svelte-n693km.svelte-n693km{font-size:11px;font-weight:600;color:#a5b4fc;text-transform:uppercase;letter-spacing:.3px;margin-bottom:6px}.journal-export-row.svelte-n693km.svelte-n693km{display:flex;gap:8px;align-items:center}.journal-toggle-col.svelte-n693km.svelte-n693km{width:32px;min-width:32px;text-align:center;padding:8px 4px!important}.journal-toggle-icon.svelte-n693km.svelte-n693km{color:#6366f1;font-size:12px}.worklog-entry.svelte-n693km.svelte-n693km{padding:8px 12px;background:#1a1a28;border:1px solid #2a2a3c;border-radius:8px;margin-bottom:6px;cursor:pointer}.worklog-entry.svelte-n693km.svelte-n693km:hover{border-color:#3a3a5c}.worklog-entry.expanded.svelte-n693km.svelte-n693km{border-color:#6366f1}.worklog-entry-head.svelte-n693km.svelte-n693km{display:flex;align-items:center;gap:8px;font-size:13px;color:#e4e4ef}.worklog-toggle.svelte-n693km.svelte-n693km{color:#6366f1;font-size:12px;width:16px;text-align:center;flex-shrink:0}.worklog-entry-summary.svelte-n693km.svelte-n693km{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.worklog-entry-mins.svelte-n693km.svelte-n693km{color:#b0b0c8;font-variant-numeric:tabular-nums;white-space:nowrap}.worklog-entry-date.svelte-n693km.svelte-n693km{color:#b0b0c0;font-size:12px;white-space:nowrap}.worklog-entry-detail.svelte-n693km.svelte-n693km{margin-top:8px;padding-top:8px;border-top:1px solid #2a2a3c;display:flex;flex-direction:column;gap:8px}.worklog-entry-actions.svelte-n693km.svelte-n693km{display:flex;gap:8px;justify-content:flex-end}.wl-detail-section.svelte-n693km.svelte-n693km{font-size:13px}.wl-detail-label.svelte-n693km.svelte-n693km{font-size:11px;font-weight:600;color:#a5b4fc;text-transform:uppercase;letter-spacing:.3px;display:block;margin-bottom:2px}.wl-detail-section.svelte-n693km p.svelte-n693km{margin:0;color:#c0c0d0}.wl-tag-billable.svelte-n693km.svelte-n693km{font-size:10px;color:#34d399;background:#1a2a1e;padding:1px 6px;border-radius:8px;white-space:nowrap}.wl-tag-approx.svelte-n693km.svelte-n693km{font-size:10px;color:#fbbf24;background:#2a2a1a;padding:1px 6px;border-radius:8px;white-space:nowrap}.checkbox-label-inline.svelte-n693km.svelte-n693km{display:inline-flex;align-items:center;gap:6px;font-size:13px;color:#e4e4ef;cursor:pointer}.checkbox-label-inline.svelte-n693km input.svelte-n693km{width:auto} diff --git a/cmd/verstak-gui/frontend-dist/index.html b/cmd/verstak-gui/frontend-dist/index.html index 4448e16..c80eb69 100644 --- a/cmd/verstak-gui/frontend-dist/index.html +++ b/cmd/verstak-gui/frontend-dist/index.html @@ -19,8 +19,8 @@ background: #13131f; } - - + +
diff --git a/cmd/verstak-gui/suggest_test.go b/cmd/verstak-gui/suggest_test.go index 64221c9..02d02ea 100644 --- a/cmd/verstak-gui/suggest_test.go +++ b/cmd/verstak-gui/suggest_test.go @@ -345,6 +345,112 @@ func TestUpdateAndDeleteWorklogEntryBinding(t *testing.T) { } } +func TestNodeJournalAggregatesDescendantWorklogAndActivity(t *testing.T) { + app, _ := setupTestApp(t) + + parent, err := app.CreateNodeFromTemplate("", "Parent Project", "folder.default") + if err != nil { + t.Fatalf("create parent: %v", err) + } + child, err := app.CreateNodeFromTemplate(parent.ID, "Documents", "folder.default") + if err != nil { + t.Fatalf("create child: %v", err) + } + + entry, err := app.CreateWorklogFull(child.ID, "Работа в документах", "details", "2026-06-05", 25, false, true) + if err != nil { + t.Fatalf("CreateWorklogFull: %v", err) + } + eventID := insertTestEvent(t, app, child.ID, activity.TypeFileAdded, "file", "file-1", "Добавлен файл") + + parentLog, err := app.ListWorklog(parent.ID) + if err != nil { + t.Fatalf("ListWorklog(parent): %v", err) + } + if len(parentLog) != 1 || parentLog[0].ID != entry.ID { + t.Fatalf("parent worklog = %+v, want descendant entry %s", parentLog, entry.ID) + } + if parentLog[0].NodeID != child.ID { + t.Fatalf("entry NodeID = %q, want child %q", parentLog[0].NodeID, child.ID) + } + if parentLog[0].NodePath != "Parent Project > Documents" { + t.Fatalf("entry NodePath = %q, want breadcrumb path", parentLog[0].NodePath) + } + + parentActivity, err := app.ListActivityByNode(parent.ID, 50, 0) + if err != nil { + t.Fatalf("ListActivityByNode(parent): %v", err) + } + var foundEvent *EventDTO + for i := range parentActivity { + if parentActivity[i].ID == eventID { + foundEvent = &parentActivity[i] + } + } + if foundEvent == nil { + t.Fatalf("parent activity = %+v, want descendant event %s", parentActivity, eventID) + } + if foundEvent.NodePath != "Parent Project > Documents" { + t.Fatalf("event NodePath = %q, want breadcrumb path", foundEvent.NodePath) + } + + var physicalEvents int + if err := app.db.QueryRow(`SELECT COUNT(*) FROM activity_events WHERE id = ? AND node_id = ?`, eventID, child.ID).Scan(&physicalEvents); err != nil { + t.Fatalf("count physical event: %v", err) + } + if physicalEvents != 1 { + t.Fatalf("physical child event count = %d, want 1", physicalEvents) + } + var copiedToParent int + if err := app.db.QueryRow(`SELECT COUNT(*) FROM activity_events WHERE title = ? AND node_id = ?`, "Добавлен файл", parent.ID).Scan(&copiedToParent); err != nil { + t.Fatalf("count copied parent event: %v", err) + } + if copiedToParent != 0 { + t.Fatalf("copied parent events = %d, want 0", copiedToParent) + } +} + +func TestDismissSuggestionHidesSuggestionWithoutDeletingEvents(t *testing.T) { + app, _ := setupTestApp(t) + + n, err := app.CreateNodeFromTemplate("", "Dismiss Node", "folder.default") + if err != nil { + t.Fatalf("create node: %v", err) + } + eventID := insertTestEvent(t, app, n.ID, activity.TypeNoteUpdated, "note", "note-1", "Изменение заметки") + + if err := app.DismissSuggestion(n.ID, string(mustJSON(t, []string{eventID}))); err != nil { + t.Fatalf("DismissSuggestion: %v", err) + } + + suggestions, err := app.GetSuggestions() + if err != nil { + t.Fatalf("GetSuggestions: %v", err) + } + for _, s := range suggestions { + if s.NodeID == n.ID { + t.Fatalf("dismissed suggestion still visible: %+v", s) + } + } + + var eventCount int + if err := app.db.QueryRow(`SELECT COUNT(*) FROM activity_events WHERE id = ?`, eventID).Scan(&eventCount); err != nil { + t.Fatalf("count event: %v", err) + } + if eventCount != 1 { + t.Fatalf("activity event count = %d, want 1", eventCount) + } +} + +func mustJSON(t *testing.T, value any) []byte { + t.Helper() + data, err := json.Marshal(value) + if err != nil { + t.Fatalf("marshal json: %v", err) + } + return data +} + func TestApplyRemoteWorklogUpdate(t *testing.T) { app, _ := setupTestApp(t) diff --git a/frontend/src/App.svelte b/frontend/src/App.svelte index de32a4b..d47e275 100644 --- a/frontend/src/App.svelte +++ b/frontend/src/App.svelte @@ -1186,6 +1186,15 @@ return [] } + async function deleteSuggestion(s) { + try { + await wailsCall('DismissSuggestion', s.nodeId, JSON.stringify(extractEventIds(s))) + await refreshAfterSuggestion() + } catch (e) { + error = String(e) + } + } + function writeDebugLog(msg) { try { wailsCall('WriteDebugLog', msg) } catch(e) {} } @@ -2468,14 +2477,18 @@ + - {#if s._expanded && s.events && s.events.length > 0} + {#if s.events && s.events.length > 0}
{t('suggest.detectedEvents')}
{#each s.events as ev}
{formatTime(ev.createdAt)} + {#if ev.nodePath}{ev.nodePath}{/if} {eventLabel(ev.eventType)} {ev.title} @@ -2498,6 +2511,7 @@
{e._expanded ? '▾' : '▸'} {e.summary} + {#if e.nodePath}{e.nodePath}{/if} {e.minutes} {t('worklog.min')} {#if e.billable}{t('journal.billableYes')}{/if} {#if e.approximate}{t('journal.approxEstimated')}{/if} @@ -2562,6 +2576,7 @@
openActivityEvent(ev)} on:keydown={(e) => e.key === 'Enter' && openActivityEvent(ev)}> {eventIcon(ev.eventType)} {ev.title} + {#if ev.nodePath}{ev.nodePath}{/if} {eventLabel(ev.eventType)} {#if ev.targetType}{ev.targetType}{/if} {formatTime(ev.createdAt)} @@ -2774,14 +2789,16 @@ {t('suggest.minutes')} +
- {#if s._expanded && s.events && s.events.length > 0} + {#if s.events && s.events.length > 0}
{t('suggest.detectedEvents')}
{#each s.events as ev}
{formatTime(ev.createdAt)} + {#if ev.nodePath}{ev.nodePath}{/if} {eventLabel(ev.eventType)} {ev.title} @@ -2933,14 +2950,16 @@ {t('suggest.minutes')} +
- {#if s._expanded && s.events && s.events.length > 0} + {#if s.events && s.events.length > 0}
{t('suggest.detectedEvents')}
{#each s.events as ev}
{formatTime(ev.createdAt)} + {#if ev.nodePath}{ev.nodePath}{/if} {eventLabel(ev.eventType)} {ev.title} @@ -3445,15 +3464,16 @@ .suggestion-meta { font-size: 12px; color: #8888a0; margin-top: 2px; } .suggestion-main { display: flex; align-items: center; justify-content: space-between; padding: 10px 12px; cursor: pointer; gap: 12px; } .suggestion-card.expanded { border-color: #3a3a5c; } -.suggestion-detail { padding: 0 12px 10px; border-top: 1px solid #2a2a3c; } +.suggestion-detail { width: 100%; padding: 8px 12px 10px; border-top: 1px solid #2a2a3c; } .suggestion-detail-title { font-size: 11px; font-weight: 600; color: #a5b4fc; text-transform: uppercase; letter-spacing: 0.3px; padding: 8px 0 4px; } .suggestion-detail-event { display: flex; align-items: center; gap: 8px; padding: 3px 0; font-size: 13px; color: #b0b0c0; } .suggestion-event-time { color: #a0a0b8; font-variant-numeric: tabular-nums; white-space: nowrap; min-width: 48px; } .suggestion-event-type { color: #8888a0; font-size: 11px; background: #1a1a2e; padding: 1px 6px; border-radius: 3px; } .suggestion-event-title { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } +.suggestion-event-path { max-width: 220px; color: #8ea0d8; font-size: 11px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } /* Suggestion cards */ -.suggestion-card { display: flex; align-items: center; justify-content: space-between; padding: 10px 12px; background: #1e1e32; border-radius: 6px; margin-bottom: 8px; gap: 12px; } +.suggestion-card { display: flex; flex-direction: column; align-items: stretch; padding: 0; background: #1e1e32; border-radius: 6px; margin-bottom: 8px; gap: 0; border: 1px solid transparent; } .suggestion-card:last-child { margin-bottom: 0; } .suggestion-info { flex: 1; display: flex; flex-direction: column; gap: 2px; } .suggestion-node { color: #a5b4fc; font-weight: 600; font-size: 13px; text-decoration: none; cursor: pointer; } @@ -3739,6 +3759,7 @@ .activity-event:hover { background: #1a1a28; color: #e4e4ef; } .activity-event-icon { width: 18px; text-align: center; color: #6366f1; font-size: 13px; flex-shrink: 0; } .activity-event-title { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } +.activity-event-path { max-width: 240px; color: #8ea0d8; font-size: 11px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .activity-event-type { font-size: 11px; color: #666; flex-shrink: 0; } .activity-event-target { font-size: 10px; color: #555; background: #1e1e2e; padding: 1px 6px; border-radius: 8px; flex-shrink: 0; } .activity-event-time { font-size: 11px; color: #555; margin-left: 8px; flex-shrink: 0; } @@ -3784,6 +3805,7 @@ .worklog-entry-head { display: flex; align-items: center; gap: 8px; font-size: 13px; color: #e4e4ef; } .worklog-toggle { color: #6366f1; font-size: 12px; width: 16px; text-align: center; flex-shrink: 0; } .worklog-entry-summary { flex: 1; min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } +.worklog-entry-path { max-width: 240px; color: #8ea0d8; font-size: 11px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; } .worklog-entry-mins { color: #b0b0c8; font-variant-numeric: tabular-nums; white-space: nowrap; } .worklog-entry-date { color: #b0b0c0; font-size: 12px; white-space: nowrap; } .worklog-entry-detail { margin-top: 8px; padding-top: 8px; border-top: 1px solid #2a2a3c; display: flex; flex-direction: column; gap: 8px; } diff --git a/internal/core/activity/suggest.go b/internal/core/activity/suggest.go index 53103f5..e91997c 100644 --- a/internal/core/activity/suggest.go +++ b/internal/core/activity/suggest.go @@ -9,13 +9,14 @@ const ( // SuggestionDetail is a lightweight event summary for suggestion display. type SuggestionDetail struct { - ID string `json:"id"` - EventType string `json:"eventType"` + ID string `json:"id"` + EventType string `json:"eventType"` TargetType string `json:"targetType"` - TargetID string `json:"targetId"` - Title string `json:"title"` - CreatedAt string `json:"createdAt"` - NodeID string `json:"nodeId"` + TargetID string `json:"targetId"` + Title string `json:"title"` + CreatedAt string `json:"createdAt"` + NodeID string `json:"nodeId"` + NodePath string `json:"nodePath,omitempty"` } // Suggestion represents a suggested worklog entry derived from today's activity. diff --git a/internal/core/storage/migrations_016.sql.go b/internal/core/storage/migrations_016.sql.go new file mode 100644 index 0000000..464fa4a --- /dev/null +++ b/internal/core/storage/migrations_016.sql.go @@ -0,0 +1,12 @@ +package storage + +// migration016 — dismissed worklog suggestion events. +const migration016 = ` +CREATE TABLE IF NOT EXISTS worklog_dismissed_events ( + event_id TEXT PRIMARY KEY REFERENCES activity_events(id), + node_id TEXT NOT NULL REFERENCES nodes(id), + created_at TEXT NOT NULL +); + +CREATE INDEX IF NOT EXISTS idx_worklog_dismissed_node ON worklog_dismissed_events(node_id); +` diff --git a/internal/core/storage/storage.go b/internal/core/storage/storage.go index 54b25e4..825c3ff 100644 --- a/internal/core/storage/storage.go +++ b/internal/core/storage/storage.go @@ -72,6 +72,7 @@ var migrationFiles = map[int]string{ 13: migration013, 14: migration014, 15: migration015, + 16: migration016, } func (db *DB) runInitialSchema() error {