diff --git a/cmd/verstak-gui/frontend-dist/assets/main-BnVt-oqm.css b/cmd/verstak-gui/frontend-dist/assets/main-BnVt-oqm.css
deleted file mode 100644
index 26d7c87..0000000
--- a/cmd/verstak-gui/frontend-dist/assets/main-BnVt-oqm.css
+++ /dev/null
@@ -1 +0,0 @@
-.file-row.svelte-1u905d2.svelte-1u905d2{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-1u905d2.svelte-1u905d2:hover{background:#1e1e30}.file-row--selected.svelte-1u905d2.svelte-1u905d2{background:#1e1e3a;outline:1px solid #3a3a6c}.file-row--selected.svelte-1u905d2.svelte-1u905d2:hover{background:#252545}.file-row.svelte-1u905d2.svelte-1u905d2:focus-visible{outline:2px solid #5588ff;outline-offset:-2px}.file-row-icon.svelte-1u905d2.svelte-1u905d2{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:32px;height:32px;color:#888}.file-row-body.svelte-1u905d2.svelte-1u905d2{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.file-row-name.svelte-1u905d2.svelte-1u905d2{font-size:13px;color:#ddd;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.3}.file-row-meta.svelte-1u905d2.svelte-1u905d2{display:flex;align-items:center;gap:4px;font-size:11px;color:#666}.meta-sep.svelte-1u905d2.svelte-1u905d2{color:#444}.file-row-actions.svelte-1u905d2.svelte-1u905d2{display:flex;gap:2px;align-items:center;opacity:0;transition:opacity .15s ease;flex-shrink:0}.file-row.svelte-1u905d2:hover .file-row-actions.svelte-1u905d2{opacity:1}.action-btn.svelte-1u905d2.svelte-1u905d2{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-1u905d2.svelte-1u905d2:hover{background:#2a2a3c;color:#ccc}.action-btn-danger.svelte-1u905d2.svelte-1u905d2:hover{background:#3a2222;color:#ff6b6b}.action-btn.svelte-1u905d2.svelte-1u905d2:focus-visible{outline:2px solid #5588ff;outline-offset:1px}.menu-backdrop.svelte-1u905d2.svelte-1u905d2{position:fixed;top:0;right:0;bottom:0;left:0;z-index:99}.menu.svelte-1u905d2.svelte-1u905d2{position:absolute;right:12px;margin-top:4px;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-1u905d2.svelte-1u905d2{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-1u905d2.svelte-1u905d2:hover{background:#2a2a3c;color:#fff}.menu-item-danger.svelte-1u905d2.svelte-1u905d2{color:#ff6b6b}.menu-item-danger.svelte-1u905d2.svelte-1u905d2:hover{background:#3a2222}.menu-item.svelte-1u905d2.svelte-1u905d2:focus-visible{outline:2px solid #5588ff;outline-offset:1px}.menu-sep.svelte-1u905d2.svelte-1u905d2{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}.svelte-oqcj5z.svelte-oqcj5z,.svelte-oqcj5z.svelte-oqcj5z:before,.svelte-oqcj5z.svelte-oqcj5z:after{box-sizing:border-box;margin:0;padding:0}.app.svelte-oqcj5z.svelte-oqcj5z{display:flex;width:100vw;height:100vh;overflow:hidden;background:#13131f;color:#e4e4ef;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:14px}.sidebar.svelte-oqcj5z.svelte-oqcj5z{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-oqcj5z.svelte-oqcj5z{padding:16px 20px;display:flex;align-items:center;gap:10px;border-bottom:1px solid #2a2a3c;flex-shrink:0}.logo.svelte-oqcj5z.svelte-oqcj5z{font-size:20px;line-height:1}.brand-name.svelte-oqcj5z.svelte-oqcj5z{font-size:16px;font-weight:600}.sidebar-nav.svelte-oqcj5z.svelte-oqcj5z{flex:1;overflow-y:auto;padding:12px 0}.nav-group.svelte-oqcj5z.svelte-oqcj5z{margin-bottom:16px}.nav-label.svelte-oqcj5z.svelte-oqcj5z{font-size:10px;text-transform:uppercase;letter-spacing:.5px;color:#666;padding:4px 20px;margin-bottom:4px}.nav-item.svelte-oqcj5z.svelte-oqcj5z{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-oqcj5z.svelte-oqcj5z:hover{background:#223}.nav-item.selected.svelte-oqcj5z.svelte-oqcj5z{background:#2a2a4a;color:#fff;font-weight:500}.nav-empty.svelte-oqcj5z.svelte-oqcj5z{padding:8px 20px;color:#555;font-size:12px}.sidebar-footer.svelte-oqcj5z.svelte-oqcj5z{padding:12px 20px;border-top:1px solid #2a2a3c;flex-shrink:0}.version.svelte-oqcj5z.svelte-oqcj5z{font-size:11px;color:#555}.main.svelte-oqcj5z.svelte-oqcj5z{flex:1;display:flex;flex-direction:column;height:100vh;min-width:0;overflow:hidden;background:#13131f}.header.svelte-oqcj5z.svelte-oqcj5z{padding:12px 24px;border-bottom:1px solid #2a2a3c;display:flex;align-items:center;flex-shrink:0;min-height:48px}.crumb.svelte-oqcj5z.svelte-oqcj5z{font-size:14px;font-weight:500}.crumb.placeholder.svelte-oqcj5z.svelte-oqcj5z{color:#666}.crumb-type.svelte-oqcj5z.svelte-oqcj5z{font-size:11px;color:#555;background:#1e1e2e;padding:2px 8px;border-radius:10px;margin-left:8px}.error-banner.svelte-oqcj5z.svelte-oqcj5z{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-oqcj5z.svelte-oqcj5z{background:none;border:none;color:#f66;cursor:pointer;padding:2px;display:flex;align-items:center;border-radius:2px}.dismiss-btn.svelte-oqcj5z.svelte-oqcj5z:hover{color:#f44}.tabs.svelte-oqcj5z.svelte-oqcj5z{display:flex;border-bottom:1px solid #2a2a3c;flex-shrink:0;padding:0 24px}.tab.svelte-oqcj5z.svelte-oqcj5z{padding:10px 16px;border:none;background:none;color:#888;font-size:13px;cursor:pointer;border-bottom:2px solid transparent;font-family:inherit}.tab.svelte-oqcj5z.svelte-oqcj5z:hover{color:#ccc}.tab.active.svelte-oqcj5z.svelte-oqcj5z{color:#e4e4ef;border-bottom-color:#6366f1}.tab-content.svelte-oqcj5z.svelte-oqcj5z{flex:1;overflow-y:auto}.note-editor.svelte-oqcj5z.svelte-oqcj5z{flex:1;display:flex;flex-direction:column;height:100%}.note-editor-header.svelte-oqcj5z.svelte-oqcj5z{padding:12px 24px;border-bottom:1px solid #2a2a3c;display:flex;align-items:center;gap:12px;flex-shrink:0}.note-title.svelte-oqcj5z.svelte-oqcj5z{font-size:16px;font-weight:500}.dirty-mark.svelte-oqcj5z.svelte-oqcj5z{color:#f59e0b;font-size:10px}.note-editor-actions.svelte-oqcj5z.svelte-oqcj5z{margin-left:auto;display:flex;gap:8px}.note-textarea.svelte-oqcj5z.svelte-oqcj5z{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-oqcj5z.svelte-oqcj5z{padding:24px}.overview.svelte-oqcj5z h2.svelte-oqcj5z{font-size:24px;margin-bottom:16px}.meta-grid.svelte-oqcj5z.svelte-oqcj5z{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px;margin-bottom:24px}.meta-item.svelte-oqcj5z.svelte-oqcj5z{background:#1a1a28;padding:12px 16px;border-radius:8px}.meta-label.svelte-oqcj5z.svelte-oqcj5z{display:block;font-size:11px;color:#666;margin-bottom:4px;text-transform:uppercase}.quick-actions.svelte-oqcj5z.svelte-oqcj5z{display:flex;gap:8px;margin-bottom:24px;flex-wrap:wrap}.qa-btn.svelte-oqcj5z.svelte-oqcj5z{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-oqcj5z.svelte-oqcj5z:hover{background:#223}.qa-btn.svelte-oqcj5z.svelte-oqcj5z:disabled{opacity:.4;cursor:not-allowed}.recent-section.svelte-oqcj5z.svelte-oqcj5z{margin-bottom:24px}.recent-section.svelte-oqcj5z h3.svelte-oqcj5z{font-size:13px;color:#666;text-transform:uppercase;margin-bottom:8px}.recent-note.svelte-oqcj5z.svelte-oqcj5z{padding:8px 12px;border-radius:6px;cursor:pointer;display:flex;justify-content:space-between}.recent-note.svelte-oqcj5z.svelte-oqcj5z:hover{background:#1a1a28}.recent-date.svelte-oqcj5z.svelte-oqcj5z{font-size:11px;color:#555}.recent-entry.svelte-oqcj5z.svelte-oqcj5z{padding:6px 0;font-size:13px;color:#888;border-bottom:1px solid #1a1a28}.notes-tab.svelte-oqcj5z.svelte-oqcj5z{padding:24px}.tab-toolbar.svelte-oqcj5z.svelte-oqcj5z{margin-bottom:16px}.create-form.svelte-oqcj5z.svelte-oqcj5z{background:#1a1a28;padding:16px;border-radius:8px;margin-bottom:16px}.create-form.svelte-oqcj5z input.svelte-oqcj5z{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-oqcj5z input.svelte-oqcj5z:focus{outline:none;border-color:#6366f1}.form-actions.svelte-oqcj5z.svelte-oqcj5z{display:flex;gap:8px}.notes-list.svelte-oqcj5z.svelte-oqcj5z{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}.note-card.svelte-oqcj5z.svelte-oqcj5z{background:#1a1a28;border:1px solid #2a2a3c;border-radius:8px;padding:16px;cursor:pointer}.note-card.svelte-oqcj5z.svelte-oqcj5z:hover{border-color:#3a3a5c}.note-card-title.svelte-oqcj5z.svelte-oqcj5z{font-size:14px;font-weight:500;margin-bottom:4px}.note-card-date.svelte-oqcj5z.svelte-oqcj5z{font-size:11px;color:#555}.worklog-tab.svelte-oqcj5z.svelte-oqcj5z{padding:24px}.worklog-form.svelte-oqcj5z.svelte-oqcj5z{display:flex;gap:8px;margin-bottom:24px;align-items:center}.worklog-form.svelte-oqcj5z input.svelte-oqcj5z{padding:8px 12px;border:1px solid #2a2a3c;background:#13131f;color:#e4e4ef;border-radius:4px;font-size:14px;font-family:inherit}.worklog-form.svelte-oqcj5z input.svelte-oqcj5z:focus{outline:none;border-color:#6366f1}.worklog-form.svelte-oqcj5z input[type=text].svelte-oqcj5z{flex:1}.worklog-form.svelte-oqcj5z input[type=number].svelte-oqcj5z{width:70px}.worklog-entry.svelte-oqcj5z.svelte-oqcj5z{padding:12px 0;border-bottom:1px solid #1a1a28}.wl-meta.svelte-oqcj5z.svelte-oqcj5z{font-size:11px;color:#555;margin-top:2px}.actions-tab.svelte-oqcj5z.svelte-oqcj5z{padding:24px}.action-card.svelte-oqcj5z.svelte-oqcj5z{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-oqcj5z.svelte-oqcj5z{display:flex;align-items:center;gap:8px;flex:1;min-width:0}.action-title.svelte-oqcj5z.svelte-oqcj5z{font-weight:500}.action-type.svelte-oqcj5z.svelte-oqcj5z{font-size:11px;color:#888;background:#223;padding:2px 8px;border-radius:10px;white-space:nowrap}.action-data.svelte-oqcj5z.svelte-oqcj5z{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-oqcj5z.svelte-oqcj5z{display:flex;gap:4px;flex-shrink:0}.action-btns.svelte-oqcj5z .btn-danger.svelte-oqcj5z{color:#ff6b6b;border-color:#4a2222;padding:4px 8px}.action-btns.svelte-oqcj5z .btn-danger.svelte-oqcj5z:hover{background:#3a2222}.empty-state.svelte-oqcj5z.svelte-oqcj5z{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px;text-align:center}.empty-state.svelte-oqcj5z p.svelte-oqcj5z{margin:0;font-size:14px;color:#666}.empty-state.svelte-oqcj5z .empty-icon.svelte-oqcj5z{margin-bottom:12px;color:#444}.empty-state.svelte-oqcj5z .hint.svelte-oqcj5z{font-size:12px;color:#555;margin-top:6px}.empty-state.svelte-oqcj5z .empty-actions.svelte-oqcj5z{display:flex;gap:8px;justify-content:center;margin-top:16px}.empty-note.svelte-oqcj5z.svelte-oqcj5z{font-size:12px;color:#444;margin-top:16px}.welcome.svelte-oqcj5z.svelte-oqcj5z{padding:48px 24px;text-align:center}.welcome.svelte-oqcj5z h2.svelte-oqcj5z{font-size:32px;font-weight:300;color:#8888a4;margin-bottom:16px}.welcome.svelte-oqcj5z p.svelte-oqcj5z{color:#666;font-size:14px}.error-text.svelte-oqcj5z.svelte-oqcj5z{color:#f88}.fab.svelte-oqcj5z.svelte-oqcj5z{position:fixed;bottom:24px;right:24px;width:56px;height:56px;border-radius:50%;background:#6366f1;color:#fff;font-size:28px;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 4px 12px #6366f166}.fab.svelte-oqcj5z.svelte-oqcj5z:hover{background:#4f46e5}.modal-overlay.svelte-oqcj5z.svelte-oqcj5z{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-oqcj5z.svelte-oqcj5z{background:#1a1a28;border:1px solid #2a2a3c;border-radius:12px;padding:24px;width:400px;max-width:90vw}.modal.svelte-oqcj5z h3.svelte-oqcj5z{font-size:18px;margin-bottom:16px}.form-group.svelte-oqcj5z.svelte-oqcj5z{margin-bottom:12px}.form-group.svelte-oqcj5z label.svelte-oqcj5z{display:block;font-size:12px;color:#666;margin-bottom:4px}.form-group.svelte-oqcj5z input.svelte-oqcj5z,.form-group.svelte-oqcj5z select.svelte-oqcj5z{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-oqcj5z select.svelte-oqcj5z{-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-oqcj5z input.svelte-oqcj5z:focus,.form-group.svelte-oqcj5z select.svelte-oqcj5z:focus{outline:none;border-color:#6366f1}.modal-actions.svelte-oqcj5z.svelte-oqcj5z{display:flex;gap:8px;justify-content:flex-end;margin-top:16px}.btn.svelte-oqcj5z.svelte-oqcj5z{padding:8px 16px;border:1px solid #2a2a3c;background:#1a1a28;color:#ccc;border-radius:6px;cursor:pointer;font-size:13px;font-family:inherit}.btn.svelte-oqcj5z.svelte-oqcj5z:hover{background:#223}.btn-primary.svelte-oqcj5z.svelte-oqcj5z{background:#6366f1;border-color:#6366f1;color:#fff}.btn-primary.svelte-oqcj5z.svelte-oqcj5z:hover{background:#4f46e5}.btn.svelte-oqcj5z.svelte-oqcj5z:disabled{opacity:.4;cursor:not-allowed}.btn-sm.svelte-oqcj5z.svelte-oqcj5z{padding:4px 10px;font-size:12px}.btn-danger.svelte-oqcj5z.svelte-oqcj5z{color:#ff6b6b;border-color:#4a2222}.btn-danger.svelte-oqcj5z.svelte-oqcj5z:hover{background:#3a2222}.files-tab.svelte-oqcj5z.svelte-oqcj5z{padding:20px}.files-tab.svelte-oqcj5z .tab-toolbar.svelte-oqcj5z{display:flex;gap:8px;align-items:center;margin-bottom:16px}.file-list.svelte-oqcj5z.svelte-oqcj5z{display:flex;flex-direction:column}.back-btn.svelte-oqcj5z.svelte-oqcj5z{margin-bottom:4px;display:inline-flex;align-items:center;gap:4px}.import-summary.svelte-oqcj5z.svelte-oqcj5z{margin-bottom:16px}.summary-row.svelte-oqcj5z.svelte-oqcj5z{display:flex;justify-content:space-between;padding:6px 0;font-size:14px;border-bottom:1px solid #2a2a3c}.summary-warn.svelte-oqcj5z.svelte-oqcj5z{margin-top:8px;padding:8px 12px;background:#3a2a22;border-radius:6px;color:#fa6;font-size:13px}.rename-error.svelte-oqcj5z.svelte-oqcj5z{color:#ff6b6b;font-size:12px;margin-top:4px}.today-dashboard.svelte-oqcj5z.svelte-oqcj5z{padding:24px;overflow-y:auto;flex:1}.today-header.svelte-oqcj5z.svelte-oqcj5z{display:flex;align-items:baseline;gap:12px;margin-bottom:16px}.today-header.svelte-oqcj5z h2.svelte-oqcj5z{font-size:24px}.today-date.svelte-oqcj5z.svelte-oqcj5z{font-size:13px;color:#666}.today-summary.svelte-oqcj5z.svelte-oqcj5z{display:flex;gap:8px;margin-bottom:20px;flex-wrap:wrap}.summary-chip.svelte-oqcj5z.svelte-oqcj5z{font-size:12px;color:#b0b0c0;background:#1a1a28;border:1px solid #2a2a3c;padding:4px 12px;border-radius:16px}.today-case.svelte-oqcj5z.svelte-oqcj5z{background:#1a1a28;border:1px solid #2a2a3c;border-radius:8px;margin-bottom:12px;overflow:hidden}.today-case-header.svelte-oqcj5z.svelte-oqcj5z{padding:12px 16px;display:flex;align-items:center;gap:8px;border-bottom:1px solid #2a2a3c;cursor:pointer}.today-case-header.svelte-oqcj5z.svelte-oqcj5z:hover{background:#1e1e30}.today-case-title.svelte-oqcj5z.svelte-oqcj5z{font-weight:500}.today-case-type.svelte-oqcj5z.svelte-oqcj5z{font-size:11px;color:#888;background:#223;padding:2px 8px;border-radius:10px}.today-case-count.svelte-oqcj5z.svelte-oqcj5z{font-size:11px;color:#6366f1;margin-left:4px}.today-case-time.svelte-oqcj5z.svelte-oqcj5z{font-size:11px;color:#555;margin-left:auto}.today-events.svelte-oqcj5z.svelte-oqcj5z{padding:8px 16px}.today-event.svelte-oqcj5z.svelte-oqcj5z{display:flex;align-items:center;gap:8px;padding:4px 0;font-size:13px;color:#b0b0c0;cursor:pointer}.today-event.svelte-oqcj5z.svelte-oqcj5z:hover{color:#e4e4ef}.today-event-icon.svelte-oqcj5z.svelte-oqcj5z{width:18px;text-align:center;color:#6366f1;font-size:13px}.today-event-title.svelte-oqcj5z.svelte-oqcj5z{flex:1}.today-event-type.svelte-oqcj5z.svelte-oqcj5z{font-size:11px;color:#666}.today-event-time.svelte-oqcj5z.svelte-oqcj5z{font-size:11px;color:#555;margin-left:auto}.today-events-empty.svelte-oqcj5z.svelte-oqcj5z{padding:8px 16px;font-size:13px;color:#666;font-style:italic}.today-empty.svelte-oqcj5z.svelte-oqcj5z{padding:48px 24px;text-align:center}.today-empty.svelte-oqcj5z p.svelte-oqcj5z{color:#666;font-size:14px;margin:0}.today-empty.svelte-oqcj5z .hint.svelte-oqcj5z{font-size:12px;color:#555;margin-top:8px}.today-timeline.svelte-oqcj5z.svelte-oqcj5z{margin-top:24px}.today-timeline.svelte-oqcj5z h3.svelte-oqcj5z{font-size:13px;color:#666;text-transform:uppercase;margin-bottom:12px}.timeline-event.svelte-oqcj5z.svelte-oqcj5z{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-oqcj5z.svelte-oqcj5z:hover{color:#e4e4ef}.timeline-dot.svelte-oqcj5z.svelte-oqcj5z{width:6px;height:6px;border-radius:50%;background:#6366f1;margin-left:-19px;flex-shrink:0}.timeline-title.svelte-oqcj5z.svelte-oqcj5z{flex:1}.timeline-type.svelte-oqcj5z.svelte-oqcj5z{font-size:11px;color:#666}.timeline-time.svelte-oqcj5z.svelte-oqcj5z{font-size:11px;color:#555}.activity-tab.svelte-oqcj5z.svelte-oqcj5z{padding:24px}.activity-events.svelte-oqcj5z.svelte-oqcj5z{display:flex;flex-direction:column;gap:2px}.activity-event.svelte-oqcj5z.svelte-oqcj5z{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:6px;font-size:13px;color:#b0b0c0;cursor:pointer}.activity-event.svelte-oqcj5z.svelte-oqcj5z:hover{background:#1a1a28;color:#e4e4ef}.activity-event-icon.svelte-oqcj5z.svelte-oqcj5z{width:18px;text-align:center;color:#6366f1;font-size:13px;flex-shrink:0}.activity-event-title.svelte-oqcj5z.svelte-oqcj5z{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.activity-event-type.svelte-oqcj5z.svelte-oqcj5z{font-size:11px;color:#666;flex-shrink:0}.activity-event-target.svelte-oqcj5z.svelte-oqcj5z{font-size:10px;color:#555;background:#1e1e2e;padding:1px 6px;border-radius:8px;flex-shrink:0}.activity-event-time.svelte-oqcj5z.svelte-oqcj5z{font-size:11px;color:#555;margin-left:8px;flex-shrink:0}.activity-feed.svelte-oqcj5z.svelte-oqcj5z{padding:24px;overflow-y:auto;flex:1}.activity-feed-header.svelte-oqcj5z.svelte-oqcj5z{margin-bottom:20px}.activity-feed-header.svelte-oqcj5z h2.svelte-oqcj5z{font-size:24px}.activity-feed-events.svelte-oqcj5z.svelte-oqcj5z{display:flex;flex-direction:column;gap:2px}.activity-feed-event.svelte-oqcj5z.svelte-oqcj5z{display:flex;align-items:flex-start;gap:10px;padding:8px 12px;border-radius:8px;cursor:pointer}.activity-feed-event.svelte-oqcj5z.svelte-oqcj5z:hover{background:#1a1a28;color:#e4e4ef}.activity-feed-icon.svelte-oqcj5z.svelte-oqcj5z{width:20px;text-align:center;color:#6366f1;font-size:14px;flex-shrink:0;margin-top:1px}.activity-feed-body.svelte-oqcj5z.svelte-oqcj5z{flex:1;min-width:0}.activity-feed-title.svelte-oqcj5z.svelte-oqcj5z{font-size:14px;color:#e4e4ef}.activity-feed-meta.svelte-oqcj5z.svelte-oqcj5z{display:flex;align-items:center;gap:8px;margin-top:2px}.activity-feed-type.svelte-oqcj5z.svelte-oqcj5z{font-size:11px;color:#666}.activity-feed-target.svelte-oqcj5z.svelte-oqcj5z{font-size:10px;color:#555;background:#1e1e2e;padding:1px 6px;border-radius:8px}.activity-feed-time.svelte-oqcj5z.svelte-oqcj5z{font-size:11px;color:#555}
diff --git a/cmd/verstak-gui/frontend-dist/assets/main-DVpSwKcZ.css b/cmd/verstak-gui/frontend-dist/assets/main-DVpSwKcZ.css
new file mode 100644
index 0000000..efa1c62
--- /dev/null
+++ b/cmd/verstak-gui/frontend-dist/assets/main-DVpSwKcZ.css
@@ -0,0 +1 @@
+.file-row.svelte-1u905d2.svelte-1u905d2{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-1u905d2.svelte-1u905d2:hover{background:#1e1e30}.file-row--selected.svelte-1u905d2.svelte-1u905d2{background:#1e1e3a;outline:1px solid #3a3a6c}.file-row--selected.svelte-1u905d2.svelte-1u905d2:hover{background:#252545}.file-row.svelte-1u905d2.svelte-1u905d2:focus-visible{outline:2px solid #5588ff;outline-offset:-2px}.file-row-icon.svelte-1u905d2.svelte-1u905d2{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:32px;height:32px;color:#888}.file-row-body.svelte-1u905d2.svelte-1u905d2{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.file-row-name.svelte-1u905d2.svelte-1u905d2{font-size:13px;color:#ddd;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;line-height:1.3}.file-row-meta.svelte-1u905d2.svelte-1u905d2{display:flex;align-items:center;gap:4px;font-size:11px;color:#666}.meta-sep.svelte-1u905d2.svelte-1u905d2{color:#444}.file-row-actions.svelte-1u905d2.svelte-1u905d2{display:flex;gap:2px;align-items:center;opacity:0;transition:opacity .15s ease;flex-shrink:0}.file-row.svelte-1u905d2:hover .file-row-actions.svelte-1u905d2{opacity:1}.action-btn.svelte-1u905d2.svelte-1u905d2{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-1u905d2.svelte-1u905d2:hover{background:#2a2a3c;color:#ccc}.action-btn-danger.svelte-1u905d2.svelte-1u905d2:hover{background:#3a2222;color:#ff6b6b}.action-btn.svelte-1u905d2.svelte-1u905d2:focus-visible{outline:2px solid #5588ff;outline-offset:1px}.menu-backdrop.svelte-1u905d2.svelte-1u905d2{position:fixed;top:0;right:0;bottom:0;left:0;z-index:99}.menu.svelte-1u905d2.svelte-1u905d2{position:absolute;right:12px;margin-top:4px;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-1u905d2.svelte-1u905d2{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-1u905d2.svelte-1u905d2:hover{background:#2a2a3c;color:#fff}.menu-item-danger.svelte-1u905d2.svelte-1u905d2{color:#ff6b6b}.menu-item-danger.svelte-1u905d2.svelte-1u905d2:hover{background:#3a2222}.menu-item.svelte-1u905d2.svelte-1u905d2:focus-visible{outline:2px solid #5588ff;outline-offset:1px}.menu-sep.svelte-1u905d2.svelte-1u905d2{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}.svelte-1kukkze.svelte-1kukkze,.svelte-1kukkze.svelte-1kukkze:before,.svelte-1kukkze.svelte-1kukkze:after{box-sizing:border-box;margin:0;padding:0}.app.svelte-1kukkze.svelte-1kukkze{display:flex;width:100vw;height:100vh;overflow:hidden;background:#13131f;color:#e4e4ef;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:14px}.sidebar.svelte-1kukkze.svelte-1kukkze{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-1kukkze.svelte-1kukkze{padding:16px 20px;display:flex;align-items:center;gap:10px;border-bottom:1px solid #2a2a3c;flex-shrink:0}.logo.svelte-1kukkze.svelte-1kukkze{font-size:20px;line-height:1}.brand-name.svelte-1kukkze.svelte-1kukkze{font-size:16px;font-weight:600}.sidebar-nav.svelte-1kukkze.svelte-1kukkze{flex:1;overflow-y:auto;padding:12px 0}.nav-group.svelte-1kukkze.svelte-1kukkze{margin-bottom:16px}.nav-label.svelte-1kukkze.svelte-1kukkze{font-size:10px;text-transform:uppercase;letter-spacing:.5px;color:#666;padding:4px 20px;margin-bottom:4px}.nav-item.svelte-1kukkze.svelte-1kukkze{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-1kukkze.svelte-1kukkze:hover{background:#223}.nav-item.selected.svelte-1kukkze.svelte-1kukkze{background:#2a2a4a;color:#fff;font-weight:500}.nav-empty.svelte-1kukkze.svelte-1kukkze{padding:8px 20px;color:#555;font-size:12px}.sidebar-footer.svelte-1kukkze.svelte-1kukkze{padding:8px 12px;border-top:1px solid #2a2a3c;flex-shrink:0;display:flex;flex-direction:column;gap:4px}.version.svelte-1kukkze.svelte-1kukkze{font-size:11px;color:#555;text-align:center}.main.svelte-1kukkze.svelte-1kukkze{flex:1;display:flex;flex-direction:column;height:100vh;min-width:0;overflow:hidden;background:#13131f}.header.svelte-1kukkze.svelte-1kukkze{padding:12px 24px;border-bottom:1px solid #2a2a3c;display:flex;align-items:center;flex-shrink:0;min-height:48px}.header-left.svelte-1kukkze.svelte-1kukkze{display:flex;align-items:center;gap:8px;flex:1}.header-right.svelte-1kukkze.svelte-1kukkze{display:flex;align-items:center;gap:8px}.header-sync-btn.svelte-1kukkze.svelte-1kukkze{background:#1e1e38;border:1px solid #6366f1;border-radius:8px;padding:6px 12px;cursor:pointer;display:inline-flex;align-items:center;gap:6px;color:#c0c0f0;font-family:inherit;font-size:13px;position:relative}.header-sync-btn.svelte-1kukkze.svelte-1kukkze:hover{background:#2a2a50;color:#e4e4ef;border-color:#818cf8}.header-sync-btn.svelte-1kukkze.svelte-1kukkze:disabled{opacity:.5;cursor:not-allowed}.sync-badge.svelte-1kukkze.svelte-1kukkze{background:#6366f1;color:#fff;font-size:10px;border-radius:50%;width:16px;height:16px;display:inline-flex;align-items:center;justify-content:center;position:absolute;top:-6px;right:-6px}.crumb.svelte-1kukkze.svelte-1kukkze{font-size:14px;font-weight:500}.crumb.placeholder.svelte-1kukkze.svelte-1kukkze{color:#666}.crumb-type.svelte-1kukkze.svelte-1kukkze{font-size:11px;color:#555;background:#1e1e2e;padding:2px 8px;border-radius:10px;margin-left:8px}.error-banner.svelte-1kukkze.svelte-1kukkze{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-1kukkze.svelte-1kukkze{background:none;border:none;color:#f66;cursor:pointer;padding:2px;display:flex;align-items:center;border-radius:2px}.dismiss-btn.svelte-1kukkze.svelte-1kukkze:hover{color:#f44}.tabs.svelte-1kukkze.svelte-1kukkze{display:flex;border-bottom:1px solid #2a2a3c;flex-shrink:0;padding:0 24px}.tab.svelte-1kukkze.svelte-1kukkze{padding:10px 16px;border:none;background:none;color:#888;font-size:13px;cursor:pointer;border-bottom:2px solid transparent;font-family:inherit}.tab.svelte-1kukkze.svelte-1kukkze:hover{color:#ccc}.tab.active.svelte-1kukkze.svelte-1kukkze{color:#e4e4ef;border-bottom-color:#6366f1}.tab-content.svelte-1kukkze.svelte-1kukkze{flex:1;overflow-y:auto}.note-editor.svelte-1kukkze.svelte-1kukkze{flex:1;display:flex;flex-direction:column;height:100%}.note-editor-header.svelte-1kukkze.svelte-1kukkze{padding:12px 24px;border-bottom:1px solid #2a2a3c;display:flex;align-items:center;gap:12px;flex-shrink:0}.note-title.svelte-1kukkze.svelte-1kukkze{font-size:16px;font-weight:500}.dirty-mark.svelte-1kukkze.svelte-1kukkze{color:#f59e0b;font-size:10px}.note-editor-actions.svelte-1kukkze.svelte-1kukkze{margin-left:auto;display:flex;gap:8px}.note-textarea.svelte-1kukkze.svelte-1kukkze{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-1kukkze.svelte-1kukkze{padding:24px}.overview.svelte-1kukkze h2.svelte-1kukkze{font-size:24px;margin-bottom:16px}.meta-grid.svelte-1kukkze.svelte-1kukkze{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px;margin-bottom:24px}.meta-item.svelte-1kukkze.svelte-1kukkze{background:#1a1a28;padding:12px 16px;border-radius:8px}.meta-label.svelte-1kukkze.svelte-1kukkze{display:block;font-size:11px;color:#666;margin-bottom:4px;text-transform:uppercase}.quick-actions.svelte-1kukkze.svelte-1kukkze{display:flex;gap:8px;margin-bottom:24px;flex-wrap:wrap}.qa-btn.svelte-1kukkze.svelte-1kukkze{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-1kukkze.svelte-1kukkze:hover{background:#223}.qa-btn.svelte-1kukkze.svelte-1kukkze:disabled{opacity:.4;cursor:not-allowed}.recent-section.svelte-1kukkze.svelte-1kukkze{margin-bottom:24px}.recent-section.svelte-1kukkze h3.svelte-1kukkze{font-size:13px;color:#666;text-transform:uppercase;margin-bottom:8px}.recent-note.svelte-1kukkze.svelte-1kukkze{padding:8px 12px;border-radius:6px;cursor:pointer;display:flex;justify-content:space-between}.recent-note.svelte-1kukkze.svelte-1kukkze:hover{background:#1a1a28}.recent-date.svelte-1kukkze.svelte-1kukkze{font-size:11px;color:#555}.recent-entry.svelte-1kukkze.svelte-1kukkze{padding:6px 0;font-size:13px;color:#888;border-bottom:1px solid #1a1a28}.notes-tab.svelte-1kukkze.svelte-1kukkze{padding:24px}.tab-toolbar.svelte-1kukkze.svelte-1kukkze{margin-bottom:16px}.create-form.svelte-1kukkze.svelte-1kukkze{background:#1a1a28;padding:16px;border-radius:8px;margin-bottom:16px}.create-form.svelte-1kukkze input.svelte-1kukkze{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-1kukkze input.svelte-1kukkze:focus{outline:none;border-color:#6366f1}.form-actions.svelte-1kukkze.svelte-1kukkze{display:flex;gap:8px}.notes-list.svelte-1kukkze.svelte-1kukkze{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px}.note-card.svelte-1kukkze.svelte-1kukkze{background:#1a1a28;border:1px solid #2a2a3c;border-radius:8px;padding:16px;cursor:pointer}.note-card.svelte-1kukkze.svelte-1kukkze:hover{border-color:#3a3a5c}.note-card-title.svelte-1kukkze.svelte-1kukkze{font-size:14px;font-weight:500;margin-bottom:4px}.note-card-date.svelte-1kukkze.svelte-1kukkze{font-size:11px;color:#555}.worklog-tab.svelte-1kukkze.svelte-1kukkze{padding:24px}.worklog-form.svelte-1kukkze.svelte-1kukkze{display:flex;gap:8px;margin-bottom:24px;align-items:center}.worklog-form.svelte-1kukkze input.svelte-1kukkze{padding:8px 12px;border:1px solid #2a2a3c;background:#13131f;color:#e4e4ef;border-radius:4px;font-size:14px;font-family:inherit}.worklog-form.svelte-1kukkze input.svelte-1kukkze:focus{outline:none;border-color:#6366f1}.worklog-form.svelte-1kukkze input[type=text].svelte-1kukkze{flex:1}.worklog-form.svelte-1kukkze input[type=number].svelte-1kukkze{width:70px}.worklog-entry.svelte-1kukkze.svelte-1kukkze{padding:12px 0;border-bottom:1px solid #1a1a28}.wl-meta.svelte-1kukkze.svelte-1kukkze{font-size:11px;color:#555;margin-top:2px}.actions-tab.svelte-1kukkze.svelte-1kukkze{padding:24px}.action-card.svelte-1kukkze.svelte-1kukkze{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-1kukkze.svelte-1kukkze{display:flex;align-items:center;gap:8px;flex:1;min-width:0}.action-title.svelte-1kukkze.svelte-1kukkze{font-weight:500}.action-type.svelte-1kukkze.svelte-1kukkze{font-size:11px;color:#888;background:#223;padding:2px 8px;border-radius:10px;white-space:nowrap}.action-data.svelte-1kukkze.svelte-1kukkze{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-1kukkze.svelte-1kukkze{display:flex;gap:4px;flex-shrink:0}.action-btns.svelte-1kukkze .btn-danger.svelte-1kukkze{color:#ff6b6b;border-color:#4a2222;padding:4px 8px}.action-btns.svelte-1kukkze .btn-danger.svelte-1kukkze:hover{background:#3a2222}.empty-state.svelte-1kukkze.svelte-1kukkze{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:48px 24px;text-align:center}.empty-state.svelte-1kukkze p.svelte-1kukkze{margin:0;font-size:14px;color:#666}.empty-state.svelte-1kukkze .empty-icon.svelte-1kukkze{margin-bottom:12px;color:#444}.empty-state.svelte-1kukkze .hint.svelte-1kukkze{font-size:12px;color:#555;margin-top:6px}.empty-state.svelte-1kukkze .empty-actions.svelte-1kukkze{display:flex;gap:8px;justify-content:center;margin-top:16px}.empty-note.svelte-1kukkze.svelte-1kukkze{font-size:12px;color:#444;margin-top:16px}.welcome.svelte-1kukkze.svelte-1kukkze{padding:48px 24px;text-align:center}.welcome.svelte-1kukkze h2.svelte-1kukkze{font-size:32px;font-weight:300;color:#8888a4;margin-bottom:16px}.welcome.svelte-1kukkze p.svelte-1kukkze{color:#666;font-size:14px}.error-text.svelte-1kukkze.svelte-1kukkze{color:#f88}.fab.svelte-1kukkze.svelte-1kukkze{position:fixed;bottom:24px;right:24px;width:56px;height:56px;border-radius:50%;background:#6366f1;color:#fff;font-size:28px;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 4px 12px #6366f166}.fab.svelte-1kukkze.svelte-1kukkze:hover{background:#4f46e5}.modal-overlay.svelte-1kukkze.svelte-1kukkze{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-1kukkze.svelte-1kukkze{background:#1a1a28;border:1px solid #2a2a3c;border-radius:12px;padding:24px;width:400px;max-width:90vw}.modal.svelte-1kukkze h3.svelte-1kukkze{font-size:18px;margin-bottom:16px}.form-group.svelte-1kukkze.svelte-1kukkze{margin-bottom:12px}.form-group.svelte-1kukkze label.svelte-1kukkze{display:block;font-size:12px;color:#666;margin-bottom:4px}.form-group.svelte-1kukkze input.svelte-1kukkze,.form-group.svelte-1kukkze select.svelte-1kukkze{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-1kukkze select.svelte-1kukkze{-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-1kukkze input.svelte-1kukkze:focus,.form-group.svelte-1kukkze select.svelte-1kukkze:focus{outline:none;border-color:#6366f1}.modal-actions.svelte-1kukkze.svelte-1kukkze{display:flex;gap:8px;justify-content:flex-end;margin-top:16px}.btn.svelte-1kukkze.svelte-1kukkze{padding:8px 16px;border:1px solid #2a2a3c;background:#1a1a28;color:#ccc;border-radius:6px;cursor:pointer;font-size:13px;font-family:inherit}.btn.svelte-1kukkze.svelte-1kukkze:hover{background:#223}.btn-primary.svelte-1kukkze.svelte-1kukkze{background:#6366f1;border-color:#6366f1;color:#fff}.btn-primary.svelte-1kukkze.svelte-1kukkze:hover{background:#4f46e5}.btn.svelte-1kukkze.svelte-1kukkze:disabled{opacity:.4;cursor:not-allowed}.btn-sm.svelte-1kukkze.svelte-1kukkze{padding:4px 10px;font-size:12px}.btn-danger.svelte-1kukkze.svelte-1kukkze{color:#ff6b6b;border-color:#4a2222}.btn-danger.svelte-1kukkze.svelte-1kukkze:hover{background:#3a2222}.files-tab.svelte-1kukkze.svelte-1kukkze{padding:20px}.files-tab.svelte-1kukkze .tab-toolbar.svelte-1kukkze{display:flex;gap:8px;align-items:center;margin-bottom:16px}.file-list.svelte-1kukkze.svelte-1kukkze{display:flex;flex-direction:column}.back-btn.svelte-1kukkze.svelte-1kukkze{margin-bottom:4px;display:inline-flex;align-items:center;gap:4px}.import-summary.svelte-1kukkze.svelte-1kukkze{margin-bottom:16px}.summary-row.svelte-1kukkze.svelte-1kukkze{display:flex;justify-content:space-between;padding:6px 0;font-size:14px;border-bottom:1px solid #2a2a3c}.summary-warn.svelte-1kukkze.svelte-1kukkze{margin-top:8px;padding:8px 12px;background:#3a2a22;border-radius:6px;color:#fa6;font-size:13px}.rename-error.svelte-1kukkze.svelte-1kukkze{color:#ff6b6b;font-size:12px;margin-top:4px}.today-dashboard.svelte-1kukkze.svelte-1kukkze{padding:24px;overflow-y:auto;flex:1}.today-header.svelte-1kukkze.svelte-1kukkze{display:flex;align-items:baseline;gap:12px;margin-bottom:16px}.today-header.svelte-1kukkze h2.svelte-1kukkze{font-size:24px}.today-date.svelte-1kukkze.svelte-1kukkze{font-size:13px;color:#666}.today-summary.svelte-1kukkze.svelte-1kukkze{display:flex;gap:8px;margin-bottom:20px;flex-wrap:wrap}.summary-chip.svelte-1kukkze.svelte-1kukkze{font-size:12px;color:#b0b0c0;background:#1a1a28;border:1px solid #2a2a3c;padding:4px 12px;border-radius:16px}.today-case.svelte-1kukkze.svelte-1kukkze{background:#1a1a28;border:1px solid #2a2a3c;border-radius:8px;margin-bottom:12px;overflow:hidden}.today-case-header.svelte-1kukkze.svelte-1kukkze{padding:12px 16px;display:flex;align-items:center;gap:8px;border-bottom:1px solid #2a2a3c;cursor:pointer}.today-case-header.svelte-1kukkze.svelte-1kukkze:hover{background:#1e1e30}.today-case-title.svelte-1kukkze.svelte-1kukkze{font-weight:500}.today-case-type.svelte-1kukkze.svelte-1kukkze{font-size:11px;color:#888;background:#223;padding:2px 8px;border-radius:10px}.today-case-count.svelte-1kukkze.svelte-1kukkze{font-size:11px;color:#6366f1;margin-left:4px}.today-case-time.svelte-1kukkze.svelte-1kukkze{font-size:11px;color:#555;margin-left:auto}.today-events.svelte-1kukkze.svelte-1kukkze{padding:8px 16px}.today-event.svelte-1kukkze.svelte-1kukkze{display:flex;align-items:center;gap:8px;padding:4px 0;font-size:13px;color:#b0b0c0;cursor:pointer}.today-event.svelte-1kukkze.svelte-1kukkze:hover{color:#e4e4ef}.today-event-icon.svelte-1kukkze.svelte-1kukkze{width:18px;text-align:center;color:#6366f1;font-size:13px}.today-event-title.svelte-1kukkze.svelte-1kukkze{flex:1}.today-event-type.svelte-1kukkze.svelte-1kukkze{font-size:11px;color:#666}.today-event-time.svelte-1kukkze.svelte-1kukkze{font-size:11px;color:#555;margin-left:auto}.today-events-empty.svelte-1kukkze.svelte-1kukkze{padding:8px 16px;font-size:13px;color:#666;font-style:italic}.today-empty.svelte-1kukkze.svelte-1kukkze{padding:48px 24px;text-align:center}.today-empty.svelte-1kukkze p.svelte-1kukkze{color:#666;font-size:14px;margin:0}.today-empty.svelte-1kukkze .hint.svelte-1kukkze{font-size:12px;color:#555;margin-top:8px}.today-timeline.svelte-1kukkze.svelte-1kukkze{margin-top:24px}.today-timeline.svelte-1kukkze h3.svelte-1kukkze{font-size:13px;color:#666;text-transform:uppercase;margin-bottom:12px}.timeline-event.svelte-1kukkze.svelte-1kukkze{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-1kukkze.svelte-1kukkze:hover{color:#e4e4ef}.timeline-dot.svelte-1kukkze.svelte-1kukkze{width:6px;height:6px;border-radius:50%;background:#6366f1;margin-left:-19px;flex-shrink:0}.timeline-title.svelte-1kukkze.svelte-1kukkze{flex:1}.timeline-type.svelte-1kukkze.svelte-1kukkze{font-size:11px;color:#666}.timeline-time.svelte-1kukkze.svelte-1kukkze{font-size:11px;color:#555}.activity-tab.svelte-1kukkze.svelte-1kukkze{padding:24px}.activity-events.svelte-1kukkze.svelte-1kukkze{display:flex;flex-direction:column;gap:2px}.activity-event.svelte-1kukkze.svelte-1kukkze{display:flex;align-items:center;gap:8px;padding:6px 8px;border-radius:6px;font-size:13px;color:#b0b0c0;cursor:pointer}.activity-event.svelte-1kukkze.svelte-1kukkze:hover{background:#1a1a28;color:#e4e4ef}.activity-event-icon.svelte-1kukkze.svelte-1kukkze{width:18px;text-align:center;color:#6366f1;font-size:13px;flex-shrink:0}.activity-event-title.svelte-1kukkze.svelte-1kukkze{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.activity-event-type.svelte-1kukkze.svelte-1kukkze{font-size:11px;color:#666;flex-shrink:0}.activity-event-target.svelte-1kukkze.svelte-1kukkze{font-size:10px;color:#555;background:#1e1e2e;padding:1px 6px;border-radius:8px;flex-shrink:0}.activity-event-time.svelte-1kukkze.svelte-1kukkze{font-size:11px;color:#555;margin-left:8px;flex-shrink:0}.activity-feed.svelte-1kukkze.svelte-1kukkze{padding:24px;overflow-y:auto;flex:1}.activity-feed-header.svelte-1kukkze.svelte-1kukkze{margin-bottom:20px}.activity-feed-header.svelte-1kukkze h2.svelte-1kukkze{font-size:24px}.activity-feed-events.svelte-1kukkze.svelte-1kukkze{display:flex;flex-direction:column;gap:2px}.activity-feed-event.svelte-1kukkze.svelte-1kukkze{display:flex;align-items:flex-start;gap:10px;padding:8px 12px;border-radius:8px;cursor:pointer}.activity-feed-event.svelte-1kukkze.svelte-1kukkze:hover{background:#1a1a28;color:#e4e4ef}.activity-feed-icon.svelte-1kukkze.svelte-1kukkze{width:20px;text-align:center;color:#6366f1;font-size:14px;flex-shrink:0;margin-top:1px}.activity-feed-body.svelte-1kukkze.svelte-1kukkze{flex:1;min-width:0}.activity-feed-title.svelte-1kukkze.svelte-1kukkze{font-size:14px;color:#e4e4ef}.activity-feed-meta.svelte-1kukkze.svelte-1kukkze{display:flex;align-items:center;gap:8px;margin-top:2px}.activity-feed-type.svelte-1kukkze.svelte-1kukkze{font-size:11px;color:#666}.activity-feed-target.svelte-1kukkze.svelte-1kukkze{font-size:10px;color:#555;background:#1e1e2e;padding:1px 6px;border-radius:8px}.activity-feed-time.svelte-1kukkze.svelte-1kukkze{font-size:11px;color:#555}.sidebar-sync-btn.svelte-1kukkze.svelte-1kukkze{background:#1e1e38;border:1px solid #6366f1;border-radius:8px;padding:8px 12px;cursor:pointer;width:100%;display:flex;align-items:center;gap:8px;color:#c0c0f0;font-family:inherit;font-size:13px}.sidebar-sync-btn.svelte-1kukkze.svelte-1kukkze:hover{background:#2a2a50;color:#e4e4ef;border-color:#818cf8}.sidebar-sync-label.svelte-1kukkze.svelte-1kukkze{flex:1;text-align:left}.sync-dot.svelte-1kukkze.svelte-1kukkze{width:8px;height:8px;border-radius:50%;background:#4a4a4a;flex-shrink:0}.sync-dot.active.svelte-1kukkze.svelte-1kukkze{background:#4ade80;box-shadow:0 0 6px #4ade8080}.modal-sync.svelte-1kukkze.svelte-1kukkze{width:460px}.sync-status.svelte-1kukkze.svelte-1kukkze{background:#13131f;border-radius:8px;padding:12px;margin-bottom:16px}.sync-row.svelte-1kukkze.svelte-1kukkze{display:flex;justify-content:space-between;padding:4px 0;font-size:13px}.sync-label.svelte-1kukkze.svelte-1kukkze{color:#666}.sync-value.svelte-1kukkze.svelte-1kukkze{color:#e4e4ef}.sync-value.mono.svelte-1kukkze.svelte-1kukkze{font-family:SF Mono,Fira Code,monospace;font-size:12px}.sync-result.svelte-1kukkze.svelte-1kukkze{font-size:12px;color:#6366f1;padding:4px 0}
diff --git a/cmd/verstak-gui/frontend-dist/assets/main-DZkGJWBF.js b/cmd/verstak-gui/frontend-dist/assets/main-DZkGJWBF.js
deleted file mode 100644
index 6d42c2a..0000000
--- a/cmd/verstak-gui/frontend-dist/assets/main-DZkGJWBF.js
+++ /dev/null
@@ -1,16 +0,0 @@
-var so=Object.defineProperty;var co=(l,e,t)=>e in l?so(l,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):l[e]=t;var ht=(l,e,t)=>co(l,typeof e!="symbol"?e+"":e,t);(function(){const e=document.createElement("link").relList;if(e&&e.supports&&e.supports("modulepreload"))return;for(const i of document.querySelectorAll('link[rel="modulepreload"]'))n(i);new MutationObserver(i=>{for(const s of i)if(s.type==="childList")for(const o of s.addedNodes)o.tagName==="LINK"&&o.rel==="modulepreload"&&n(o)}).observe(document,{childList:!0,subtree:!0});function t(i){const s={};return i.integrity&&(s.integrity=i.integrity),i.referrerPolicy&&(s.referrerPolicy=i.referrerPolicy),i.crossOrigin==="use-credentials"?s.credentials="include":i.crossOrigin==="anonymous"?s.credentials="omit":s.credentials="same-origin",s}function n(i){if(i.ep)return;i.ep=!0;const s=t(i);fetch(i.href,s)}})();function G(){}function kn(l){return l()}function Qt(){return Object.create(null)}function ce(l){l.forEach(kn)}function gn(l){return typeof l=="function"}function Ve(l,e){return l!=l?e==e:l!==e||l&&typeof l=="object"||typeof l=="function"}let $e;function tt(l,e){return l===e?!0:($e||($e=document.createElement("a")),$e.href=e,l===$e.href)}function ro(l){return Object.keys(l).length===0}function ao(l){return l??""}function r(l,e){l.appendChild(e)}function g(l,e,t){l.insertBefore(e,t||null)}function k(l){l.parentNode&&l.parentNode.removeChild(l)}function ve(l,e){for(let t=0;tl.removeEventListener(e,t,n)}function je(l){return function(e){return e.stopPropagation(),l.call(this,e)}}function Re(l){return function(e){e.target===this&&l.call(this,e)}}function c(l,e,t){t==null?l.removeAttribute(e):l.getAttribute(e)!==t&&l.setAttribute(e,t)}function yn(l){return l===""?null:+l}function fo(l){return Array.from(l.childNodes)}function H(l,e){e=""+e,l.data!==e&&(l.data=e)}function de(l,e){l.value=e??""}function Be(l,e,t){for(let n=0;n{const i=l.$$.callbacks[e];if(i){const s=uo(e,t,{cancelable:n});return i.slice().forEach(o=>{o.call(l,s)}),!s.defaultPrevented}return!0}}function _o(l,e){const t=l.$$.callbacks[e.type];t&&t.slice().forEach(n=>n.call(this,e))}const Fe=[],$t=[];let He=[];const el=[],po=Promise.resolve();let gt=!1;function mo(){gt||(gt=!0,po.then(zn))}function Oe(l){He.push(l)}const kt=new Set;let Ne=0;function zn(){if(Ne!==0)return;const l=Je;do{try{for(;Nel.indexOf(n)===-1?e.push(n):t.push(n)),t.forEach(n=>n()),He=e}const et=new Set;let De;function ze(){De={r:0,c:[],p:De}}function qe(){De.r||ce(De.c),De=De.p}function re(l,e){l&&l.i&&(et.delete(l),l.i(e))}function ue(l,e,t,n){if(l&&l.o){if(et.has(l))return;et.add(l),De.c.push(()=>{et.delete(l),n&&(t&&l.d(1),n())}),l.o(e)}else n&&n()}function ee(l){return(l==null?void 0:l.length)!==void 0?l:Array.from(l)}function bo(l,e){ue(l,1,1,()=>{e.delete(l.key)})}function ko(l,e,t,n,i,s,o,a,f,_,m,h){let p=l.length,v=s.length,w=p;const b={};for(;w--;)b[l[w].key]=w;const y=[],z=new Map,M=new Map,E=[];for(w=v;w--;){const S=h(i,s,w),T=t(S);let C=o.get(T);C?E.push(()=>C.p(S,e)):(C=_(T,S),C.c()),z.set(T,y[w]=C),T in b&&M.set(T,Math.abs(w-b[T]))}const q=new Set,N=new Set;function O(S){re(S,1),S.m(a,m),o.set(S.key,S),m=S.first,v--}for(;p&&v;){const S=y[v-1],T=l[p-1],C=S.key,D=T.key;S===T?(m=S.first,p--,v--):z.has(D)?!o.has(C)||q.has(C)?O(S):N.has(D)?p--:M.get(C)>M.get(D)?(N.add(C),O(S)):(q.add(D),p--):(f(T,o),p--)}for(;p--;){const S=l[p];z.has(S.key)||f(S,o)}for(;v;)O(y[v-1]);return ce(E),y}function Ie(l){l&&l.c()}function Me(l,e,t){const{fragment:n,after_update:i}=l.$$;n&&n.m(e,t),Oe(()=>{const s=l.$$.on_mount.map(kn).filter(gn);l.$$.on_destroy?l.$$.on_destroy.push(...s):ce(s),l.$$.on_mount=[]}),i.forEach(Oe)}function Le(l,e){const t=l.$$;t.fragment!==null&&(ho(t.after_update),ce(t.on_destroy),t.fragment&&t.fragment.d(e),t.on_destroy=t.fragment=null,t.ctx=[])}function go(l,e){l.$$.dirty[0]===-1&&(Fe.push(l),mo(),l.$$.dirty.fill(0)),l.$$.dirty[e/31|0]|=1<{const w=v.length?v[0]:p;return _.ctx&&i(_.ctx[h],_.ctx[h]=w)&&(!_.skip_bound&&_.bound[h]&&_.bound[h](w),m&&go(l,h)),p}):[],_.update(),m=!0,ce(_.before_update),_.fragment=n?n(_.ctx):!1,e.target){if(e.hydrate){const h=fo(e.target);_.fragment&&_.fragment.l(h),h.forEach(k)}else _.fragment&&_.fragment.c();e.intro&&re(l.$$.fragment),Me(l,e.target,e.anchor),zn()}Ue(f)}class We{constructor(){ht(this,"$$");ht(this,"$$set")}$destroy(){Le(this,1),this.$destroy=G}$on(e,t){if(!gn(t))return G;const n=this.$$.callbacks[e]||(this.$$.callbacks[e]=[]);return n.push(t),()=>{const i=n.indexOf(t);i!==-1&&n.splice(i,1)}}$set(e){this.$$set&&!ro(e)&&(this.$$.skip_bound=!0,this.$$set(e),this.$$.skip_bound=!1)}}const yo="4";typeof window<"u"&&(window.__svelte||(window.__svelte={v:new Set})).v.add(yo);function wo(l){let e,t;return{c(){e=W("path"),t=W("polyline"),c(e,"d","M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"),c(t,"points","14 2 14 8 20 8")},m(n,i){g(n,e,i),g(n,t,i)},d(n){n&&(k(e),k(t))}}}function jo(l){let e,t,n,i,s;return{c(){e=W("path"),t=W("polyline"),n=W("line"),i=W("line"),s=W("polyline"),c(e,"d","M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"),c(t,"points","14 2 14 8 20 8"),c(n,"x1","16"),c(n,"y1","13"),c(n,"x2","8"),c(n,"y2","13"),c(i,"x1","16"),c(i,"y1","17"),c(i,"x2","8"),c(i,"y2","17"),c(s,"points","10 9 9 9 8 9")},m(o,a){g(o,e,a),g(o,t,a),g(o,n,a),g(o,i,a),g(o,s,a)},d(o){o&&(k(e),k(t),k(n),k(i),k(s))}}}function zo(l){let e,t;return{c(){e=W("polyline"),t=W("polyline"),c(e,"points","16 18 22 12 16 6"),c(t,"points","8 6 2 12 8 18")},m(n,i){g(n,e,i),g(n,t,i)},d(n){n&&(k(e),k(t))}}}function qo(l){let e,t,n,i;return{c(){e=W("path"),t=W("polyline"),n=W("line"),i=W("rect"),c(e,"d","M21 8v13a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8"),c(t,"points","7 3 12 8 17 3"),c(n,"x1","3"),c(n,"y1","8"),c(n,"x2","21"),c(n,"y2","8"),c(i,"x","10"),c(i,"y","12"),c(i,"width","4"),c(i,"height","4"),c(i,"rx","1")},m(s,o){g(s,e,o),g(s,t,o),g(s,n,o),g(s,i,o)},d(s){s&&(k(e),k(t),k(n),k(i))}}}function Co(l){let e,t,n,i,s;return{c(){e=W("path"),t=W("polyline"),n=W("line"),i=W("line"),s=W("line"),c(e,"d","M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"),c(t,"points","14 2 14 8 20 8"),c(n,"x1","9"),c(n,"y1","12"),c(n,"x2","15"),c(n,"y2","12"),c(i,"x1","9"),c(i,"y1","15"),c(i,"x2","13"),c(i,"y2","15"),c(s,"x1","12"),c(s,"y1","15"),c(s,"x2","12"),c(s,"y2","18")},m(o,a){g(o,e,a),g(o,t,a),g(o,n,a),g(o,i,a),g(o,s,a)},d(o){o&&(k(e),k(t),k(n),k(i),k(s))}}}function To(l){let e,t,n,i,s,o;return{c(){e=W("path"),t=W("polyline"),n=W("line"),i=W("line"),s=W("line"),o=W("line"),c(e,"d","M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"),c(t,"points","14 2 14 8 20 8"),c(n,"x1","8"),c(n,"y1","12"),c(n,"x2","16"),c(n,"y2","12"),c(i,"x1","8"),c(i,"y1","16"),c(i,"x2","16"),c(i,"y2","16"),c(s,"x1","8"),c(s,"y1","14"),c(s,"x2","12"),c(s,"y2","14"),c(o,"x1","12"),c(o,"y1","12"),c(o,"x2","12"),c(o,"y2","18")},m(a,f){g(a,e,f),g(a,t,f),g(a,n,f),g(a,i,f),g(a,s,f),g(a,o,f)},d(a){a&&(k(e),k(t),k(n),k(i),k(s),k(o))}}}function Mo(l){let e,t,n,i;return{c(){e=W("path"),t=W("polyline"),n=W("line"),i=W("line"),c(e,"d","M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"),c(t,"points","14 2 14 8 20 8"),c(n,"x1","16"),c(n,"y1","13"),c(n,"x2","8"),c(n,"y2","13"),c(i,"x1","16"),c(i,"y1","17"),c(i,"x2","8"),c(i,"y2","17")},m(s,o){g(s,e,o),g(s,t,o),g(s,n,o),g(s,i,o)},d(s){s&&(k(e),k(t),k(n),k(i))}}}function Lo(l){let e,t,n,i,s;return{c(){e=W("path"),t=W("polyline"),n=W("line"),i=W("line"),s=W("line"),c(e,"d","M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"),c(t,"points","14 2 14 8 20 8"),c(n,"x1","8"),c(n,"y1","12"),c(n,"x2","16"),c(n,"y2","12"),c(i,"x1","8"),c(i,"y1","16"),c(i,"x2","16"),c(i,"y2","16"),c(s,"x1","8"),c(s,"y1","14"),c(s,"x2","12"),c(s,"y2","14")},m(o,a){g(o,e,a),g(o,t,a),g(o,n,a),g(o,i,a),g(o,s,a)},d(o){o&&(k(e),k(t),k(n),k(i),k(s))}}}function So(l){let e,t,n;return{c(){e=W("path"),t=W("circle"),n=W("circle"),c(e,"d","M9 18V5l12-2v13"),c(t,"cx","6"),c(t,"cy","18"),c(t,"r","3"),c(n,"cx","18"),c(n,"cy","16"),c(n,"r","3")},m(i,s){g(i,e,s),g(i,t,s),g(i,n,s)},d(i){i&&(k(e),k(t),k(n))}}}function Do(l){let e,t;return{c(){e=W("rect"),t=W("polyline"),c(e,"x","2"),c(e,"y","4"),c(e,"width","20"),c(e,"height","16"),c(e,"rx","2"),c(t,"points","10 9 16 12 10 15 10 9")},m(n,i){g(n,e,i),g(n,t,i)},d(n){n&&(k(e),k(t))}}}function Io(l){let e,t,n;return{c(){e=W("rect"),t=W("circle"),n=W("polyline"),c(e,"x","3"),c(e,"y","3"),c(e,"width","18"),c(e,"height","18"),c(e,"rx","2"),c(e,"ry","2"),c(t,"cx","8.5"),c(t,"cy","8.5"),c(t,"r","1.5"),c(n,"points","21 15 16 10 5 21")},m(i,s){g(i,e,s),g(i,t,s),g(i,n,s)},d(i){i&&(k(e),k(t),k(n))}}}function Eo(l){let e;return{c(){e=W("path"),c(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){g(t,e,n)},d(t){t&&k(e)}}}function Ao(l){let e;function t(s,o){return s[0]==="folder"?Eo:s[0]==="image"?Io:s[0]==="video"?Do:s[0]==="audio"?So:s[0]==="pdf"?Lo:s[0]==="document"?Mo:s[0]==="spreadsheet"?To:s[0]==="presentation"?Co:s[0]==="archive"?qo:s[0]==="code"?zo:s[0]==="text"?jo:wo}let n=t(l),i=n(l);return{c(){e=W("svg"),i.c(),c(e,"width",l[1]),c(e,"height",l[1]),c(e,"viewBox","0 0 24 24"),c(e,"fill","none"),c(e,"stroke","currentColor"),c(e,"stroke-width","1.5"),c(e,"stroke-linecap","round"),c(e,"stroke-linejoin","round"),c(e,"xmlns","http://www.w3.org/2000/svg")},m(s,o){g(s,e,o),i.m(e,null)},p(s,[o]){n!==(n=t(s))&&(i.d(1),i=n(s),i&&(i.c(),i.m(e,null))),o&2&&c(e,"width",s[1]),o&2&&c(e,"height",s[1])},i:G,o:G,d(s){s&&k(e),i.d()}}}function No(l,e,t){let{kind:n="generic"}=e,{size:i=20}=e;return l.$$set=s=>{"kind"in s&&t(0,n=s.kind),"size"in s&&t(1,i=s.size)},[n,i]}class qn extends We{constructor(e){super(),Ke(this,e,No,Ao,Ve,{kind:0,size:1})}}function lt(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 yt={"image/jpeg":"Изображение JPEG","image/png":"Изображение PNG","image/gif":"Изображение GIF","image/webp":"Изображение WebP","image/svg+xml":"Изображение SVG","image/bmp":"Изображение BMP","image/tiff":"Изображение TIFF","image/avif":"Изображение AVIF","application/pdf":"PDF документ","application/msword":"Документ Word","application/vnd.openxmlformats-officedocument.wordprocessingml.document":"Документ Word","application/vnd.ms-excel":"Таблица Excel","application/vnd.openxmlformats-officedocument.spreadsheetml.sheet":"Таблица Excel","application/vnd.ms-powerpoint":"Презентация PowerPoint","application/vnd.openxmlformats-officedocument.presentationml.presentation":"Презентация PowerPoint","application/zip":"ZIP архив","application/gzip":"GZIP архив","application/x-tar":"TAR архив","application/x-7z-compressed":"7z архив","application/x-rar-compressed":"RAR архив","text/plain":"Текстовый файл","text/html":"HTML файл","text/css":"CSS файл","text/javascript":"JavaScript файл","application/json":"JSON файл","application/xml":"XML файл","application/x-yaml":"YAML файл","application/octet-stream":"Бинарный файл","application/x-msdos-program":"Исполняемый файл","inode/directory":"Папка"};function tl(l){return l?yt[l]||l:"Неизвестно"}function Fo(l){if(l.type==="folder")return"Папка";const e=(l.mime||"").toLowerCase();if(yt[e])return yt[e];const n=(l.name||"").toLowerCase().split(".").pop();return n?n.toUpperCase():"Файл"}function Cn(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 Ho=["image/jpeg","image/png","image/gif","image/webp","image/bmp","image/tiff","image/avif","image/svg+xml"],Bo=["text/plain","text/html","text/css","text/javascript","application/json","application/xml","application/x-yaml","text/x-shellscript"],Oo=["txt","log","conf","ini","yaml","yml","json","xml","csv","sh","py","js","ts","css","html","md","markdown","cfg"],Po=["jpg","jpeg","png","gif","webp","bmp","tiff","tif","avif","svg"];function Tn(l){const e=(l.mime||"").toLowerCase(),n=(l.name||"").toLowerCase().split(".").pop();return Ho.includes(e)||Po.includes(n)}function Mn(l){const e=(l.mime||"").toLowerCase(),n=(l.name||"").toLowerCase().split(".").pop();return Bo.includes(e)||Oo.includes(n)&&n!=="md"&&n!=="markdown"}function Ln(l){return(l.mime||"").toLowerCase().includes("pdf")}function Sn(l){const e=(l.name||"").toLowerCase();return e.endsWith(".md")||e.endsWith(".markdown")}function Vo(l){return Tn(l)||Ln(l)}function Ro(l){return Mn(l)||Sn(l)}function Ko(l){let e,t,n,i=lt(l[0].size)+"",s;return{c(){e=u("span"),e.textContent="·",t=j(),n=u("span"),s=I(i),c(e,"class","meta-sep svelte-1u905d2")},m(o,a){g(o,e,a),g(o,t,a),g(o,n,a),r(n,s)},p(o,a){a&1&&i!==(i=lt(o[0].size)+"")&&H(s,i)},d(o){o&&(k(e),k(t),k(n))}}}function Wo(l){let e,t,n;return{c(){e=u("button"),e.innerHTML=' ',c(e,"class","action-btn svelte-1u905d2"),c(e,"title","Открыть папку"),c(e,"aria-label","Открыть папку")},m(i,s){g(i,e,s),t||(n=A(e,"click",je(l[27])),t=!0)},p:G,d(i){i&&k(e),t=!1,n()}}}function Go(l){let e,t,n,i,s;return{c(){e=u("button"),e.innerHTML=' ',t=j(),n=u("button"),n.innerHTML=' ',c(e,"class","action-btn svelte-1u905d2"),c(e,"title","Предпросмотр"),c(e,"aria-label","Предпросмотр"),c(n,"class","action-btn svelte-1u905d2"),c(n,"title","Открыть во внешней программе"),c(n,"aria-label","Открыть внешне")},m(o,a){g(o,e,a),g(o,t,a),g(o,n,a),i||(s=[A(e,"click",je(l[26])),A(n,"click",je(l[8]))],i=!0)},p:G,d(o){o&&(k(e),k(t),k(n)),i=!1,ce(s)}}}function ll(l){let e,t,n,i,s,o,a,f,_,m,h,p,v,w,b,y,z,M,E,q,N,O,S,T=l[5]&&Uo(l);return{c(){e=u("div"),t=j(),n=u("div"),i=u("button"),i.innerHTML=`
- Открыть`,s=j(),o=u("button"),o.innerHTML=`
- Открыть во внешней программе`,a=j(),T&&T.c(),f=j(),_=u("div"),m=j(),h=u("button"),h.innerHTML=`
- Переименовать`,p=j(),v=u("button"),v.innerHTML=`
- Дублировать`,w=j(),b=u("button"),b.innerHTML=`
- Вырезать`,y=j(),z=u("button"),z.innerHTML=`
- Копировать`,M=j(),E=u("div"),q=j(),N=u("button"),N.innerHTML=`
- Удалить`,c(e,"class","menu-backdrop svelte-1u905d2"),c(e,"role","presentation"),c(i,"class","menu-item svelte-1u905d2"),c(i,"role","menuitem"),c(o,"class","menu-item svelte-1u905d2"),c(o,"role","menuitem"),c(_,"class","menu-sep svelte-1u905d2"),c(h,"class","menu-item svelte-1u905d2"),c(h,"role","menuitem"),c(v,"class","menu-item svelte-1u905d2"),c(v,"role","menuitem"),c(b,"class","menu-item svelte-1u905d2"),c(b,"role","menuitem"),c(z,"class","menu-item svelte-1u905d2"),c(z,"role","menuitem"),c(E,"class","menu-sep svelte-1u905d2"),c(N,"class","menu-item menu-item-danger svelte-1u905d2"),c(N,"role","menuitem"),c(n,"class","menu svelte-1u905d2"),c(n,"role","menu")},m(C,D){g(C,e,D),g(C,t,D),g(C,n,D),r(n,i),r(n,s),r(n,o),r(n,a),T&&T.m(n,null),r(n,f),r(n,_),r(n,m),r(n,h),r(n,p),r(n,v),r(n,w),r(n,b),r(n,y),r(n,z),r(n,M),r(n,E),r(n,q),r(n,N),O||(S=[A(e,"click",je(l[17])),A(i,"click",l[15]),A(o,"click",l[8]),A(h,"click",l[11]),A(v,"click",l[12]),A(b,"click",l[13]),A(z,"click",l[14]),A(N,"click",l[10]),A(n,"click",je(l[25]))],O=!0)},p(C,D){C[5]&&T.p(C,D)},d(C){C&&(k(e),k(t),k(n)),T&&T.d(),O=!1,ce(S)}}}function Uo(l){let e,t,n;return{c(){e=u("button"),e.innerHTML=`
- Показать в проводнике`,c(e,"class","menu-item svelte-1u905d2"),c(e,"role","menuitem")},m(i,s){g(i,e,s),t||(n=A(e,"click",l[9]),t=!0)},p:G,d(i){i&&k(e),t=!1,n()}}}function Jo(l){let e,t,n,i,s,o,a=l[0].name+"",f,_,m,h,p,v,w,b,y,z,M,E,q,N,O,S,T,C,D,R,X,x;n=new qn({props:{kind:l[4],size:22}});let B=!l[5]&&Ko(l);function P(K,oe){return K[5]?Wo:Go}let U=P(l)(l),$=l[2]&&ll(l);return{c(){e=u("div"),t=u("div"),Ie(n.$$.fragment),i=j(),s=u("div"),o=u("div"),f=I(a),m=j(),h=u("div"),p=u("span"),p.textContent=`${l[6]}`,v=j(),B&&B.c(),w=j(),b=u("div"),U.c(),y=j(),z=u("button"),M=W("svg"),E=W("circle"),q=W("circle"),N=W("circle"),O=j(),S=u("button"),S.innerHTML=' ',C=j(),$&&$.c(),D=ye(),c(t,"class","file-row-icon svelte-1u905d2"),c(o,"class","file-row-name svelte-1u905d2"),c(o,"title",_=l[0].name),c(h,"class","file-row-meta svelte-1u905d2"),c(s,"class","file-row-body svelte-1u905d2"),c(E,"cx","12"),c(E,"cy","5"),c(E,"r","2"),c(q,"cx","12"),c(q,"cy","12"),c(q,"r","2"),c(N,"cx","12"),c(N,"cy","19"),c(N,"r","2"),c(M,"width","16"),c(M,"height","16"),c(M,"viewBox","0 0 24 24"),c(M,"fill","currentColor"),c(z,"class","action-btn svelte-1u905d2"),c(z,"title","Ещё"),c(z,"aria-label","Ещё"),c(z,"aria-expanded",l[2]),c(S,"class","action-btn action-btn-danger svelte-1u905d2"),c(S,"title","Удалить"),c(S,"aria-label","Удалить"),c(b,"class","file-row-actions svelte-1u905d2"),c(e,"class","file-row svelte-1u905d2"),c(e,"role","button"),c(e,"tabindex","0"),c(e,"draggable","true"),c(e,"aria-label",T=l[5]?`Папка ${l[0].name}`:`Файл ${l[0].name}`),xt(e,"file-row--selected",l[1])},m(K,oe){g(K,e,oe),r(e,t),Me(n,t,null),r(e,i),r(e,s),r(s,o),r(o,f),r(s,m),r(s,h),r(h,p),r(h,v),B&&B.m(h,null),r(e,w),r(e,b),U.m(b,null),r(b,y),r(b,z),r(z,M),r(M,E),r(M,q),r(M,N),r(b,O),r(b,S),g(K,C,oe),$&&$.m(K,oe),g(K,D,oe),R=!0,X||(x=[A(window,"click",l[17]),A(z,"click",je(l[16])),A(S,"click",je(l[10])),A(e,"click",l[7]),A(e,"contextmenu",l[21]),A(e,"dragstart",l[18]),A(e,"dragover",l[19]),A(e,"drop",l[20])],X=!0)},p(K,[oe]){(!R||oe&1)&&a!==(a=K[0].name+"")&&H(f,a),(!R||oe&1&&_!==(_=K[0].name))&&c(o,"title",_),K[5]||B.p(K,oe),U.p(K,oe),(!R||oe&4)&&c(z,"aria-expanded",K[2]),(!R||oe&1&&T!==(T=K[5]?`Папка ${K[0].name}`:`Файл ${K[0].name}`))&&c(e,"aria-label",T),(!R||oe&2)&&xt(e,"file-row--selected",K[1]),K[2]?$?$.p(K,oe):($=ll(K),$.c(),$.m(D.parentNode,D)):$&&($.d(1),$=null)},i(K){R||(re(n.$$.fragment,K),R=!0)},o(K){ue(n.$$.fragment,K),R=!1},d(K){K&&(k(e),k(C),k(D)),Le(n),B&&B.d(),U.d(),$&&$.d(K),X=!1,ce(x)}}}function Xo(l,e,t){let{item:n}=e,{selected:i=!1}=e,{onDragStart:s}=e,{onDragOver:o}=e,{onDrop:a}=e;const f=nt(),_=Cn(n),m=n.type==="folder",h=Fo(n);let p=!1,v=null;function w(F){F.ctrlKey||F.metaKey?f("toggleSelect",n.id):F.shiftKey?f("rangeSelect",n.id):v?(clearTimeout(v),v=null,m?f("navigate",n.id):f("preview",n)):v=setTimeout(()=>{v=null,f("selectOne",n.id)},250)}function b(){f("openExternal",n.fileId)}function y(){f("showInFolder",n.id)}function z(){t(2,p=!1),f("delete",{id:n.id,type:n.type})}function M(){t(2,p=!1),f("rename",{id:n.id,name:n.name})}function E(){t(2,p=!1),f("duplicate",n.id)}function q(){t(2,p=!1),f("cut",n.id)}function N(){t(2,p=!1),f("copy",n.id)}function O(){t(2,p=!1),m?f("navigate",n.id):f("preview",n)}function S(){t(2,p=!p)}function T(){t(2,p=!1)}function C(F){s&&s(F,n.id)}function D(F){o&&m&&o(F,n.id)}function R(F){a&&m&&a(F,n.id)}function X(F){F.preventDefault(),t(2,p=!0)}function x(F){_o.call(this,l,F)}const B=()=>f("preview",n),P=()=>f("navigate",n.id);return l.$$set=F=>{"item"in F&&t(0,n=F.item),"selected"in F&&t(1,i=F.selected),"onDragStart"in F&&t(22,s=F.onDragStart),"onDragOver"in F&&t(23,o=F.onDragOver),"onDrop"in F&&t(24,a=F.onDrop)},[n,i,p,f,_,m,h,w,b,y,z,M,E,q,N,O,S,T,C,D,R,X,s,o,a,x,B,P]}class Zo extends We{constructor(e){super(),Ke(this,e,Xo,Jo,Ve,{item:0,selected:1,onDragStart:22,onDragOver:23,onDrop:24})}}function nl(l,e,t){const n=l.slice();return n[4]=e[t],n[6]=t,n}function Yo(l){let e;return{c(){e=u("span"),e.textContent="/",c(e,"class","sep svelte-csi2lb")},m(t,n){g(t,e,n)},d(t){t&&k(e)}}}function Qo(l){let e,t=l[4].name+"",n,i,s;function o(){return l[2](l[6])}return{c(){e=u("button"),n=I(t),c(e,"class","crumb crumb--link svelte-csi2lb")},m(a,f){g(a,e,f),r(e,n),i||(s=A(e,"click",o),i=!0)},p(a,f){l=a,f&1&&t!==(t=l[4].name+"")&&H(n,t)},d(a){a&&k(e),i=!1,s()}}}function xo(l){let e,t=l[4].name+"",n;return{c(){e=u("span"),n=I(t),c(e,"class","crumb crumb--current svelte-csi2lb")},m(i,s){g(i,e,s),r(e,n)},p(i,s){s&1&&t!==(t=i[4].name+"")&&H(n,t)},d(i){i&&k(e)}}}function il(l){let e,t,n=l[6]>0&&Yo();function i(a,f){return a[6]===a[0].length-1?xo:Qo}let s=i(l),o=s(l);return{c(){n&&n.c(),e=j(),o.c(),t=ye()},m(a,f){n&&n.m(a,f),g(a,e,f),o.m(a,f),g(a,t,f)},p(a,f){s===(s=i(a))&&o?o.p(a,f):(o.d(1),o=s(a),o&&(o.c(),o.m(t.parentNode,t)))},d(a){a&&(k(e),k(t)),n&&n.d(a),o.d(a)}}}function $o(l){let e,t=ee(l[0]),n=[];for(let i=0;is(a);return l.$$set=a=>{"crumbs"in a&&t(0,n=a.crumbs)},[n,s,o]}class Dn extends We{constructor(e){super(),Ke(this,e,es,$o,Ve,{crumbs:0})}}function ts(l){let e,t,n,i,s,o;return{c(){e=u("div"),t=u("p"),t.textContent="Предпросмотр недоступен для этого типа файлов.",n=j(),i=u("button"),i.textContent="Открыть во внешней программе",c(i,"class","btn btn-sm svelte-1cw3u0m"),c(e,"class","preview-status svelte-1cw3u0m")},m(a,f){g(a,e,f),r(e,t),r(e,n),r(e,i),s||(o=A(i,"click",l[9]),s=!0)},p:G,d(a){a&&k(e),s=!1,o()}}}function ls(l){let e,t;function n(o,a){return a&2&&(e=null),e==null&&(e=!!(o[1]&&o[1].startsWith("data:"))),e?rs:cs}let i=n(l,-1),s=i(l);return{c(){s.c(),t=ye()},m(o,a){s.m(o,a),g(o,t,a)},p(o,a){i===(i=n(o,a))&&s?s.p(o,a):(s.d(1),s=i(o),s&&(s.c(),s.m(t.parentNode,t)))},d(o){o&&k(t),s.d(o)}}}function ns(l){let e,t,n;return{c(){e=u("pre"),t=u("code"),n=I(l[1]),c(e,"class","preview-text svelte-1cw3u0m")},m(i,s){g(i,e,s),r(e,t),r(t,n)},p(i,s){s&2&&H(n,i[1])},d(i){i&&k(e)}}}function is(l){let e,t,n,i;return{c(){e=u("div"),t=u("img"),tt(t.src,n=l[1])||c(t,"src",n),c(t,"alt",i=l[0].name),c(t,"class","preview-image svelte-1cw3u0m"),c(e,"class","preview-image-container svelte-1cw3u0m")},m(s,o){g(s,e,o),r(e,t)},p(s,o){o&2&&!tt(t.src,n=s[1])&&c(t,"src",n),o&1&&i!==(i=s[0].name)&&c(t,"alt",i)},d(s){s&&k(e)}}}function os(l){let e,t,n,i,s,o,a;return{c(){e=u("div"),t=u("p"),n=I(l[3]),i=j(),s=u("button"),s.textContent="Открыть во внешней программе",c(s,"class","btn btn-sm svelte-1cw3u0m"),c(e,"class","preview-status svelte-1cw3u0m")},m(f,_){g(f,e,_),r(e,t),r(t,n),r(e,i),r(e,s),o||(a=A(s,"click",l[9]),o=!0)},p(f,_){_&8&&H(n,f[3])},d(f){f&&k(e),o=!1,a()}}}function ss(l){let e;return{c(){e=u("div"),e.innerHTML="Загрузка...
",c(e,"class","preview-status svelte-1cw3u0m")},m(t,n){g(t,e,n)},p:G,d(t){t&&k(e)}}}function cs(l){let e,t,n,i,s,o;return{c(){e=u("div"),t=u("p"),t.textContent="Предпросмотр PDF недоступен.",n=j(),i=u("button"),i.textContent="Открыть во внешней программе",c(i,"class","btn btn-sm svelte-1cw3u0m"),c(e,"class","preview-status svelte-1cw3u0m")},m(a,f){g(a,e,f),r(e,t),r(e,n),r(e,i),s||(o=A(i,"click",l[9]),s=!0)},p:G,d(a){a&&k(e),s=!1,o()}}}function rs(l){let e,t,n;return{c(){e=u("div"),t=u("embed"),tt(t.src,n=l[1])||c(t,"src",n),c(t,"type","application/pdf"),c(t,"class","preview-pdf svelte-1cw3u0m"),c(e,"class","preview-pdf-container svelte-1cw3u0m")},m(i,s){g(i,e,s),r(e,t)},p(i,s){s&2&&!tt(t.src,n=i[1])&&c(t,"src",n)},d(i){i&&k(e)}}}function as(l){let e,t,n,i,s,o,a,f=l[0].name+"",_,m,h,p,v=lt(l[0].size)+"",w,b,y=tl(l[0].mime)+"",z,M,E,q,N,O,S,T,C,D,R,X;s=new qn({props:{kind:l[8],size:18}});function x(F,U){return F[2]?ss:F[3]?os:F[6]&&F[1]?is:F[5]&&F[1]?ns:F[4]?ls:ts}let B=x(l),P=B(l);return{c(){e=u("div"),t=u("div"),n=u("header"),i=u("div"),Ie(s.$$.fragment),o=j(),a=u("span"),_=I(f),h=j(),p=u("div"),w=I(v),b=I(" · "),z=I(y),M=j(),E=u("div"),q=u("button"),q.innerHTML=' ',N=j(),O=u("button"),O.innerHTML=' ',S=j(),T=u("div"),P.c(),c(a,"class","preview-name svelte-1cw3u0m"),c(a,"title",m=l[0].name),c(i,"class","preview-title svelte-1cw3u0m"),c(p,"class","preview-meta svelte-1cw3u0m"),c(q,"class","action-btn svelte-1cw3u0m"),c(q,"title","Открыть во внешней программе"),c(q,"aria-label","Открыть внешне"),c(O,"class","action-btn action-btn-close svelte-1cw3u0m"),c(O,"title","Close"),c(O,"aria-label","Close preview"),c(E,"class","preview-actions svelte-1cw3u0m"),c(n,"class","preview-header svelte-1cw3u0m"),c(T,"class","preview-body svelte-1cw3u0m"),c(t,"class","modal svelte-1cw3u0m"),c(e,"class","overlay svelte-1cw3u0m"),c(e,"role","dialog"),c(e,"aria-modal","true"),c(e,"aria-label",C=`Preview: ${l[0].name}`)},m(F,U){g(F,e,U),r(e,t),r(t,n),r(n,i),Me(s,i,null),r(i,o),r(i,a),r(a,_),r(n,h),r(n,p),r(p,w),r(p,b),r(p,z),r(n,M),r(n,E),r(E,q),r(E,N),r(E,O),r(t,S),r(t,T),P.m(T,null),D=!0,R||(X=[A(q,"click",l[9]),A(O,"click",l[10]),A(e,"click",Re(l[11]))],R=!0)},p(F,[U]){(!D||U&1)&&f!==(f=F[0].name+"")&&H(_,f),(!D||U&1&&m!==(m=F[0].name))&&c(a,"title",m),(!D||U&1)&&v!==(v=lt(F[0].size)+"")&&H(w,v),(!D||U&1)&&y!==(y=tl(F[0].mime)+"")&&H(z,y),B===(B=x(F))&&P?P.p(F,U):(P.d(1),P=B(F),P&&(P.c(),P.m(T,null))),(!D||U&1&&C!==(C=`Preview: ${F[0].name}`))&&c(e,"aria-label",C)},i(F){D||(re(s.$$.fragment,F),D=!0)},o(F){ue(s.$$.fragment,F),D=!1},d(F){F&&k(e),Le(s),P.d(),R=!1,ce(X)}}}function fs(l,e,t){let n,i,s,{item:o}=e,{content:a=""}=e,{loading:f=!1}=e,{error:_=""}=e;const m=nt(),h=Cn(o);function p(y){y.key==="Escape"&&m("close")}function v(){m("openExternal",o.fileId)}wn(()=>{window.addEventListener("keydown",p)}),jn(()=>{window.removeEventListener("keydown",p)});const w=()=>m("close"),b=()=>m("close");return l.$$set=y=>{"item"in y&&t(0,o=y.item),"content"in y&&t(1,a=y.content),"loading"in y&&t(2,f=y.loading),"error"in y&&t(3,_=y.error)},l.$$.update=()=>{l.$$.dirty&3&&t(6,n=Tn(o)&&a&&a.startsWith("data:")),l.$$.dirty&1&&t(5,i=Mn(o)||Sn(o)),l.$$.dirty&1&&t(4,s=Ln(o))},[o,a,f,_,s,i,n,m,h,v,w,b]}class us extends We{constructor(e){super(),Ke(this,e,fs,as,Ve,{item:0,content:1,loading:2,error:3})}}function ds(l){let e,t,n,i,s,o,a,f,_,m,h,p,v,w,b,y,z;return{c(){e=u("div"),t=u("div"),n=u("h3"),i=I(l[0]),s=j(),o=u("p"),a=I(l[1]),f=j(),_=u("div"),m=u("button"),h=I(l[2]),v=j(),w=u("button"),b=I(l[3]),c(n,"class","svelte-1fv6yyk"),c(o,"class","message svelte-1fv6yyk"),c(m,"class",p="btn "+(l[4]?"btn-danger":"btn-primary")+" svelte-1fv6yyk"),c(w,"class","btn svelte-1fv6yyk"),c(_,"class","actions svelte-1fv6yyk"),c(t,"class","modal svelte-1fv6yyk"),c(e,"class","overlay svelte-1fv6yyk"),c(e,"role","dialog"),c(e,"aria-modal","true"),c(e,"aria-label",l[0])},m(M,E){g(M,e,E),r(e,t),r(t,n),r(n,i),r(t,s),r(t,o),r(o,a),r(t,f),r(t,_),r(_,m),r(m,h),r(_,v),r(_,w),r(w,b),y||(z=[A(m,"click",l[6]),A(w,"click",l[7]),A(e,"click",Re(l[8]))],y=!0)},p(M,[E]){E&1&&H(i,M[0]),E&2&&H(a,M[1]),E&4&&H(h,M[2]),E&16&&p!==(p="btn "+(M[4]?"btn-danger":"btn-primary")+" svelte-1fv6yyk")&&c(m,"class",p),E&8&&H(b,M[3]),E&1&&c(e,"aria-label",M[0])},i:G,o:G,d(M){M&&k(e),y=!1,ce(z)}}}function _s(l,e,t){let{title:n="Подтверждение"}=e,{message:i=""}=e,{confirmText:s="Удалить"}=e,{cancelText:o="Отмена"}=e,{danger:a=!1}=e;const f=nt(),_=()=>f("confirm"),m=()=>f("cancel"),h=()=>f("cancel");return l.$$set=p=>{"title"in p&&t(0,n=p.title),"message"in p&&t(1,i=p.message),"confirmText"in p&&t(2,s=p.confirmText),"cancelText"in p&&t(3,o=p.cancelText),"danger"in p&&t(4,a=p.danger)},[n,i,s,o,a,f,_,m,h]}class ps extends We{constructor(e){super(),Ke(this,e,_s,ds,Ve,{title:0,message:1,confirmText:2,cancelText:3,danger:4})}}function ol(l,e,t){const n=l.slice();return n[181]=e[t],n}function sl(l,e,t){const n=l.slice();return n[184]=e[t],n}function cl(l,e,t){const n=l.slice();return n[187]=e[t],n}function rl(l,e,t){const n=l.slice();return n[206]=e[t],n}function al(l,e,t){const n=l.slice();return n[206]=e[t],n}function fl(l,e,t){const n=l.slice();return n[214]=e[t],n}function ul(l,e,t){const n=l.slice();return n[206]=e[t],n}function dl(l,e,t){const n=l.slice();return n[206]=e[t],n}function _l(l,e,t){const n=l.slice();return n[190]=e[t],n}function pl(l,e,t){const n=l.slice();return n[201]=e[t],n}function ml(l,e,t){const n=l.slice();return n[198]=e[t],n}function vl(l,e,t){const n=l.slice();return n[193]=e[t],n}function hl(l,e,t){const n=l.slice();return n[190]=e[t],n}function bl(l,e,t){const n=l.slice();return n[193]=e[t],n}function kl(l,e,t){const n=l.slice();return n[209]=e[t],n}function gl(l,e,t){const n=l.slice();return n[187]=e[t],n}function yl(l,e,t){const n=l.slice();return n[223]=e[t],n}function wl(l,e,t){const n=l.slice();return n[226]=e[t],n}function jl(l){let e,t=l[226].label+"",n,i,s,o,a;function f(){return l[99](l[226])}return{c(){e=u("button"),n=I(t),i=j(),c(e,"class",s="nav-item "+(l[7]===l[226].id?"selected":"")+" svelte-oqcj5z")},m(_,m){g(_,e,m),r(e,n),r(e,i),o||(a=A(e,"click",f),o=!0)},p(_,m){l=_,m[0]&1&&t!==(t=l[226].label+"")&&H(n,t),m[0]&129&&s!==(s="nav-item "+(l[7]===l[226].id?"selected":"")+" svelte-oqcj5z")&&c(e,"class",s)},d(_){_&&k(e),o=!1,a()}}}function zl(l){let e,t,n,i,s,o=l[1].length>0&&ql(l),a=ee(l[1]),f=[];for(let m=0;m0?o?o.p(m,h):(o=ql(m),o.c(),o.m(t,null)):o&&(o.d(1),o=null),h[0]&258|h[1]&2097152){a=ee(m[1]);let p;for(p=0;p ',c(i,"class","dismiss-btn svelte-oqcj5z"),c(i,"aria-label","Dismiss"),c(e,"class","error-banner svelte-oqcj5z")},m(a,f){g(a,e,f),r(e,t),r(e,n),r(e,i),s||(o=[A(i,"click",je(l[101])),A(e,"click",l[102])],s=!0)},p(a,f){f[0]&64&&H(t,a[6])},d(a){a&&k(e),s=!1,ce(o)}}}function bs(l){let e,t,n;function i(a,f){if(a[27])return qs;if(a[0].length>0)return zs;if(a[6])return js}let s=i(l),o=s&&s(l);return{c(){e=u("div"),t=u("h2"),t.textContent="Верстак",n=j(),o&&o.c(),c(t,"class","svelte-oqcj5z"),c(e,"class","welcome svelte-oqcj5z")},m(a,f){g(a,e,f),r(e,t),r(e,n),o&&o.m(e,null)},p(a,f){s===(s=i(a))&&o?o.p(a,f):(o&&o.d(1),o=s&&s(a),o&&(o.c(),o.m(e,null)))},i:G,o:G,d(a){a&&k(e),o&&o.d()}}}function ks(l){let e,t,n;function i(a,f){return a[3].length===0?Ts:Cs}let s=i(l),o=s(l);return{c(){e=u("div"),t=u("div"),t.innerHTML='Активность ',n=j(),o.c(),c(t,"class","activity-feed-header svelte-oqcj5z"),c(e,"class","activity-feed svelte-oqcj5z")},m(a,f){g(a,e,f),r(e,t),r(e,n),o.m(e,null)},p(a,f){s===(s=i(a))&&o?o.p(a,f):(o.d(1),o=s(a),o&&(o.c(),o.m(e,null)))},i:G,o:G,d(a){a&&k(e),o.d()}}}function gs(l){let e,t,n,i,s,o=l[2].date+"",a,f,_,m=l[2].summary&&Il(l);function h(w,b){return w[2].groups&&w[2].groups.length>0?Ls:Ms}let p=h(l),v=p(l);return{c(){e=u("div"),t=u("div"),n=u("h2"),n.textContent="Сегодня",i=j(),s=u("span"),a=I(o),f=j(),m&&m.c(),_=j(),v.c(),c(n,"class","svelte-oqcj5z"),c(s,"class","today-date svelte-oqcj5z"),c(t,"class","today-header svelte-oqcj5z"),c(e,"class","today-dashboard svelte-oqcj5z")},m(w,b){g(w,e,b),r(e,t),r(t,n),r(t,i),r(t,s),r(s,a),r(e,f),m&&m.m(e,null),r(e,_),v.m(e,null)},p(w,b){b[0]&4&&o!==(o=w[2].date+"")&&H(a,o),w[2].summary?m?m.p(w,b):(m=Il(w),m.c(),m.m(e,_)):m&&(m.d(1),m=null),p===(p=h(w))&&v?v.p(w,b):(v.d(1),v=p(w),v&&(v.c(),v.m(e,null)))},i:G,o:G,d(w){w&&k(e),m&&m.d(),v.d()}}}function ys(l){let e,t,n,i,s,o,a=ee(l[50]),f=[];for(let p=0;p{m[w]=null}),qe()),~i?(s=m[i],s?s.p(p,v):(s=m[i]=_[i](p),s.c()),re(s,1),s.m(n,null)):s=null)},i(p){o||(re(s),o=!0)},o(p){ue(s),o=!1},d(p){p&&(k(e),k(t),k(n)),ve(f,p),~i&&m[i].d()}}}function ws(l){let e,t,n,i=l[11].title+"",s,o,a,f,_,m,h,p,v,w,b,y=l[11].dirty&&nn();return{c(){e=u("div"),t=u("div"),n=u("span"),s=I(i),o=j(),y&&y.c(),a=j(),f=u("div"),_=u("button"),_.textContent="Сохранить",m=j(),h=u("button"),h.textContent="Закрыть",p=j(),v=u("textarea"),c(n,"class","note-title svelte-oqcj5z"),c(_,"class","btn btn-primary svelte-oqcj5z"),c(h,"class","btn svelte-oqcj5z"),c(f,"class","note-editor-actions svelte-oqcj5z"),c(t,"class","note-editor-header svelte-oqcj5z"),c(v,"class","note-textarea svelte-oqcj5z"),c(v,"placeholder","Начните писать..."),c(e,"class","note-editor svelte-oqcj5z")},m(z,M){g(z,e,M),r(e,t),r(t,n),r(n,s),r(t,o),y&&y.m(t,null),r(t,a),r(t,f),r(f,_),r(f,m),r(f,h),r(e,p),r(e,v),de(v,l[11].content),w||(b=[A(_,"click",l[85]),A(h,"click",l[83]),A(v,"input",l[103]),A(v,"input",l[84])],w=!0)},p(z,M){M[0]&2048&&i!==(i=z[11].title+"")&&H(s,i),z[11].dirty?y||(y=nn(),y.c(),y.m(t,a)):y&&(y.d(1),y=null),M[0]&2048&&de(v,z[11].content)},i:G,o:G,d(z){z&&k(e),y&&y.d(),w=!1,ce(b)}}}function js(l){let e,t,n;return{c(){e=u("p"),t=I("Ошибка: "),n=I(l[6]),c(e,"class","error-text svelte-oqcj5z")},m(i,s){g(i,e,s),r(e,t),r(e,n)},p(i,s){s[0]&64&&H(n,i[6])},d(i){i&&k(e)}}}function zs(l){let e,t,n;return{c(){e=u("p"),e.textContent="Выберите раздел в боковой панели.",t=j(),n=u("p"),n.textContent="Или создайте новое дело кнопкой «+».",c(e,"class","svelte-oqcj5z"),c(n,"class","hint svelte-oqcj5z")},m(i,s){g(i,e,s),g(i,t,s),g(i,n,s)},p:G,d(i){i&&(k(e),k(t),k(n))}}}function qs(l){let e;return{c(){e=u("p"),e.textContent="Загрузка...",c(e,"class","svelte-oqcj5z")},m(t,n){g(t,e,n)},p:G,d(t){t&&k(e)}}}function Cs(l){let e,t=ee(l[3]),n=[];for(let i=0;iАктивность пока не зафиксирована
',c(e,"class","empty-state svelte-oqcj5z")},m(t,n){g(t,e,n)},p:G,d(t){t&&k(e)}}}function Sl(l){let e,t=l[206].targetType+"",n;return{c(){e=u("span"),n=I(t),c(e,"class","activity-feed-target svelte-oqcj5z")},m(i,s){g(i,e,s),r(e,n)},p(i,s){s[0]&8&&t!==(t=i[206].targetType+"")&&H(n,t)},d(i){i&&k(e)}}}function Dl(l){let e,t,n=Pe(l[206].eventType)+"",i,s,o,a,f=l[206].title+"",_,m,h,p,v=Ce(l[206].eventType)+"",w,b,y,z,M=ke(l[206].createdAt)+"",E,q,N=be(l[206].createdAt)+"",O,S,T,C,D=l[206].targetType&&Sl(l);function R(){return l[136](l[206])}function X(...x){return l[137](l[206],...x)}return{c(){e=u("div"),t=u("span"),i=I(n),s=j(),o=u("div"),a=u("span"),_=I(f),m=j(),h=u("div"),p=u("span"),w=I(v),b=j(),D&&D.c(),y=j(),z=u("span"),E=I(M),q=j(),O=I(N),S=j(),c(t,"class","activity-feed-icon svelte-oqcj5z"),c(a,"class","activity-feed-title svelte-oqcj5z"),c(p,"class","activity-feed-type svelte-oqcj5z"),c(z,"class","activity-feed-time svelte-oqcj5z"),c(h,"class","activity-feed-meta svelte-oqcj5z"),c(o,"class","activity-feed-body svelte-oqcj5z"),c(e,"class","activity-feed-event svelte-oqcj5z"),c(e,"role","button"),c(e,"tabindex","0")},m(x,B){g(x,e,B),r(e,t),r(t,i),r(e,s),r(e,o),r(o,a),r(a,_),r(o,m),r(o,h),r(h,p),r(p,w),r(h,b),D&&D.m(h,null),r(h,y),r(h,z),r(z,E),r(z,q),r(z,O),r(e,S),T||(C=[A(e,"click",R),A(e,"keydown",X)],T=!0)},p(x,B){l=x,B[0]&8&&n!==(n=Pe(l[206].eventType)+"")&&H(i,n),B[0]&8&&f!==(f=l[206].title+"")&&H(_,f),B[0]&8&&v!==(v=Ce(l[206].eventType)+"")&&H(w,v),l[206].targetType?D?D.p(l,B):(D=Sl(l),D.c(),D.m(h,y)):D&&(D.d(1),D=null),B[0]&8&&M!==(M=ke(l[206].createdAt)+"")&&H(E,M),B[0]&8&&N!==(N=be(l[206].createdAt)+"")&&H(O,N)},d(x){x&&k(e),D&&D.d(),T=!1,ce(C)}}}function Il(l){let e,t,n,i=l[2].summary.changedCases>0&&El(l),s=l[2].summary.notes>0&&Al(l),o=l[2].summary.files>0&&Nl(l);return{c(){e=u("div"),i&&i.c(),t=j(),s&&s.c(),n=j(),o&&o.c(),c(e,"class","today-summary svelte-oqcj5z")},m(a,f){g(a,e,f),i&&i.m(e,null),r(e,t),s&&s.m(e,null),r(e,n),o&&o.m(e,null)},p(a,f){a[2].summary.changedCases>0?i?i.p(a,f):(i=El(a),i.c(),i.m(e,t)):i&&(i.d(1),i=null),a[2].summary.notes>0?s?s.p(a,f):(s=Al(a),s.c(),s.m(e,n)):s&&(s.d(1),s=null),a[2].summary.files>0?o?o.p(a,f):(o=Nl(a),o.c(),o.m(e,null)):o&&(o.d(1),o=null)},d(a){a&&k(e),i&&i.d(),s&&s.d(),o&&o.d()}}}function El(l){let e,t=l[2].summary.changedCases+"",n,i,s=Te(l[2].summary.changedCases,"дело","дела","дел")+"",o;return{c(){e=u("span"),n=I(t),i=j(),o=I(s),c(e,"class","summary-chip svelte-oqcj5z")},m(a,f){g(a,e,f),r(e,n),r(e,i),r(e,o)},p(a,f){f[0]&4&&t!==(t=a[2].summary.changedCases+"")&&H(n,t),f[0]&4&&s!==(s=Te(a[2].summary.changedCases,"дело","дела","дел")+"")&&H(o,s)},d(a){a&&k(e)}}}function Al(l){let e,t=l[2].summary.notes+"",n,i,s=Te(l[2].summary.notes,"заметка","заметки","заметок")+"",o;return{c(){e=u("span"),n=I(t),i=j(),o=I(s),c(e,"class","summary-chip svelte-oqcj5z")},m(a,f){g(a,e,f),r(e,n),r(e,i),r(e,o)},p(a,f){f[0]&4&&t!==(t=a[2].summary.notes+"")&&H(n,t),f[0]&4&&s!==(s=Te(a[2].summary.notes,"заметка","заметки","заметок")+"")&&H(o,s)},d(a){a&&k(e)}}}function Nl(l){let e,t=l[2].summary.files+"",n,i,s=Te(l[2].summary.files,"файл","файла","файлов")+"",o;return{c(){e=u("span"),n=I(t),i=j(),o=I(s),c(e,"class","summary-chip svelte-oqcj5z")},m(a,f){g(a,e,f),r(e,n),r(e,i),r(e,o)},p(a,f){f[0]&4&&t!==(t=a[2].summary.files+"")&&H(n,t),f[0]&4&&s!==(s=Te(a[2].summary.files,"файл","файла","файлов")+"")&&H(o,s)},d(a){a&&k(e)}}}function Ms(l){let e;return{c(){e=u("div"),e.innerHTML='Сегодня пока тихо
Здесь появятся дела, заметки, файлы и действия, с которыми вы работали сегодня.
',c(e,"class","today-empty svelte-oqcj5z")},m(t,n){g(t,e,n)},p:G,d(t){t&&k(e)}}}function Ls(l){let e,t,n=ee(l[2].groups),i=[];for(let o=0;o0&&Pl(l);return{c(){for(let o=0;o0?s?s.p(o,a):(s=Pl(o),s.c(),s.m(t.parentNode,t)):s&&(s.d(1),s=null)},d(o){o&&(k(e),k(t)),ve(i,o),s&&s.d(o)}}}function Fl(l){let e,t=l[214].events.length+"",n,i,s=Te(l[214].events.length,"событие","события","событий")+"",o;return{c(){e=u("span"),n=I(t),i=j(),o=I(s),c(e,"class","today-case-count svelte-oqcj5z")},m(a,f){g(a,e,f),r(e,n),r(e,i),r(e,o)},p(a,f){f[0]&4&&t!==(t=a[214].events.length+"")&&H(n,t),f[0]&4&&s!==(s=Te(a[214].events.length,"событие","события","событий")+"")&&H(o,s)},d(a){a&&k(e)}}}function Ss(l){let e;return{c(){e=u("div"),e.textContent="Изменён сегодня",c(e,"class","today-events-empty svelte-oqcj5z")},m(t,n){g(t,e,n)},p:G,d(t){t&&k(e)}}}function Ds(l){let e,t=ee(l[214].events),n=[];for(let i=0;i0?Ds:Ss}let O=N(l),S=O(l);return{c(){e=u("div"),t=u("div"),n=u("span"),s=I(i),o=j(),a=u("span"),_=I(f),m=j(),M&&M.c(),h=j(),p=u("span"),w=I(v),b=j(),S.c(),c(n,"class","today-case-title svelte-oqcj5z"),c(a,"class","today-case-type svelte-oqcj5z"),c(p,"class","today-case-time svelte-oqcj5z"),c(t,"class","today-case-header svelte-oqcj5z"),c(t,"role","button"),c(t,"tabindex","0"),c(e,"class","today-case svelte-oqcj5z")},m(T,C){g(T,e,C),r(e,t),r(t,n),r(n,s),r(t,o),r(t,a),r(a,_),r(t,m),M&&M.m(t,null),r(t,h),r(t,p),r(p,w),r(e,b),S.m(e,null),y||(z=[A(t,"click",E),A(t,"keydown",q)],y=!0)},p(T,C){l=T,C[0]&4&&i!==(i=l[214].nodeTitle+"")&&H(s,i),C[0]&4&&f!==(f=hn(l[214].nodeKind)+"")&&H(_,f),l[214].events?M?M.p(l,C):(M=Fl(l),M.c(),M.m(t,h)):M&&(M.d(1),M=null),C[0]&4&&v!==(v=be(l[214].lastActivityAt)+"")&&H(w,v),O===(O=N(l))&&S?S.p(l,C):(S.d(1),S=O(l),S&&(S.c(),S.m(e,null)))},d(T){T&&k(e),M&&M.d(),S.d(),y=!1,ce(z)}}}function Pl(l){let e,t,n,i=ee(l[2].events),s=[];for(let o=0;o0&&Jl(l);const N=[Gs,Ws],O=[];function S(D,R){return D[31]?0:1}p=S(l),v=O[p]=N[p](l);let T=l[28]&&!l[30]&&Zl(),C=l[35]&&Yl(l);return{c(){e=u("div"),t=u("div"),n=u("button"),i=I("+ Добавить файл"),s=j(),o=u("button"),a=I("+ Добавить папку"),f=j(),_=u("button"),_.textContent="+ Новый файл",m=j(),q&&q.c(),h=j(),v.c(),w=j(),T&&T.c(),b=j(),C&&C.c(),y=ye(),c(n,"class","btn btn-primary svelte-oqcj5z"),n.disabled=l[28],c(o,"class","btn svelte-oqcj5z"),o.disabled=l[28],c(_,"class","btn svelte-oqcj5z"),c(t,"class","tab-toolbar svelte-oqcj5z"),c(e,"class","files-tab svelte-oqcj5z")},m(D,R){g(D,e,R),r(e,t),r(t,n),r(n,i),r(t,s),r(t,o),r(o,a),r(t,f),r(t,_),r(t,m),q&&q.m(t,null),r(e,h),O[p].m(e,null),r(e,w),T&&T.m(e,null),g(D,b,R),C&&C.m(D,R),g(D,y,R),z=!0,M||(E=[A(n,"click",l[87]),A(o,"click",l[88]),A(_,"click",l[59])],M=!0)},p(D,R){(!z||R[0]&268435456)&&(n.disabled=D[28]),(!z||R[0]&268435456)&&(o.disabled=D[28]),D[39].items.length>0?q?q.p(D,R):(q=Jl(D),q.c(),q.m(t,null)):q&&(q.d(1),q=null);let X=p;p=S(D),p===X?O[p].p(D,R):(ze(),ue(O[X],1,1,()=>{O[X]=null}),qe(),v=O[p],v?v.p(D,R):(v=O[p]=N[p](D),v.c()),re(v,1),v.m(e,w)),D[28]&&!D[30]?T||(T=Zl(),T.c(),T.m(e,null)):T&&(T.d(1),T=null),D[35]?C?(C.p(D,R),R[1]&16&&re(C,1)):(C=Yl(D),C.c(),re(C,1),C.m(y.parentNode,y)):C&&(ze(),ue(C,1,1,()=>{C=null}),qe())},i(D){z||(re(v),re(C),z=!0)},o(D){ue(v),ue(C),z=!1},d(D){D&&(k(e),k(b),k(y)),q&&q.d(),O[p].d(),T&&T.d(),C&&C.d(D),M=!1,ce(E)}}}function Fs(l){let e,t,n,i,s,o,a,f=l[21]&&Ql(l);function _(p,v){return p[10].length===0&&!p[21]?Qs:Ys}let m=_(l),h=m(l);return{c(){e=u("div"),t=u("div"),n=u("button"),n.textContent="+ Добавить заметку",i=j(),f&&f.c(),s=j(),h.c(),c(n,"class","btn btn-primary svelte-oqcj5z"),c(t,"class","tab-toolbar svelte-oqcj5z"),c(e,"class","notes-tab svelte-oqcj5z")},m(p,v){g(p,e,v),r(e,t),r(t,n),r(e,i),f&&f.m(e,null),r(e,s),h.m(e,null),o||(a=A(n,"click",l[79]),o=!0)},p(p,v){p[21]?f?f.p(p,v):(f=Ql(p),f.c(),f.m(e,s)):f&&(f.d(1),f=null),m===(m=_(p))&&h?h.p(p,v):(h.d(1),h=m(p),h&&(h.c(),h.m(e,null)))},i:G,o:G,d(p){p&&k(e),f&&f.d(),h.d(),o=!1,a()}}}function Hs(l){let e,t,n=l[8].title+"",i,s,o,a,f,_,m=l[8].type+"",h,p,v,w,b,y=(l[8].section||"—")+"",z,M,E,q,N,O=ke(l[8].createdAt)+"",S,T,C,D,R,X,x,B,P,F,U,$,K,oe,ie=l[10].length>0&&$l(l),te=l[13].length>0&&tn(l);return{c(){e=u("div"),t=u("h2"),i=I(n),s=j(),o=u("div"),a=u("div"),f=u("span"),f.textContent="Тип",_=u("span"),h=I(m),p=j(),v=u("div"),w=u("span"),w.textContent="Раздел",b=u("span"),z=I(y),M=j(),E=u("div"),q=u("span"),q.textContent="Создано",N=u("span"),S=I(O),T=j(),C=u("div"),D=u("button"),D.innerHTML=`
- Новая заметка`,R=j(),X=u("button"),X.innerHTML=`
- Добавить файл`,x=j(),B=u("button"),B.innerHTML=`
- Добавить действие`,P=j(),F=u("button"),F.innerHTML=`
- Записать время`,U=j(),ie&&ie.c(),$=j(),te&&te.c(),c(t,"class","svelte-oqcj5z"),c(f,"class","meta-label svelte-oqcj5z"),c(_,"class","svelte-oqcj5z"),c(a,"class","meta-item svelte-oqcj5z"),c(w,"class","meta-label svelte-oqcj5z"),c(b,"class","svelte-oqcj5z"),c(v,"class","meta-item svelte-oqcj5z"),c(q,"class","meta-label svelte-oqcj5z"),c(N,"class","svelte-oqcj5z"),c(E,"class","meta-item svelte-oqcj5z"),c(o,"class","meta-grid svelte-oqcj5z"),c(D,"class","qa-btn svelte-oqcj5z"),c(X,"class","qa-btn svelte-oqcj5z"),c(B,"class","qa-btn svelte-oqcj5z"),c(F,"class","qa-btn svelte-oqcj5z"),c(C,"class","quick-actions svelte-oqcj5z"),c(e,"class","overview svelte-oqcj5z")},m(Z,J){g(Z,e,J),r(e,t),r(t,i),r(e,s),r(e,o),r(o,a),r(a,f),r(a,_),r(_,h),r(o,p),r(o,v),r(v,w),r(v,b),r(b,z),r(o,M),r(o,E),r(E,q),r(E,N),r(N,S),r(e,T),r(e,C),r(C,D),r(C,R),r(C,X),r(C,x),r(C,B),r(C,P),r(C,F),r(e,U),ie&&ie.m(e,null),r(e,$),te&&te.m(e,null),K||(oe=[A(D,"click",l[105]),A(X,"click",l[106]),A(B,"click",l[93]),A(F,"click",l[107])],K=!0)},p(Z,J){J[0]&256&&n!==(n=Z[8].title+"")&&H(i,n),J[0]&256&&m!==(m=Z[8].type+"")&&H(h,m),J[0]&256&&y!==(y=(Z[8].section||"—")+"")&&H(z,y),J[0]&256&&O!==(O=ke(Z[8].createdAt)+"")&&H(S,O),Z[10].length>0?ie?ie.p(Z,J):(ie=$l(Z),ie.c(),ie.m(e,$)):ie&&(ie.d(1),ie=null),Z[13].length>0?te?te.p(Z,J):(te=tn(Z),te.c(),te.m(e,null)):te&&(te.d(1),te=null)},i:G,o:G,d(Z){Z&&k(e),ie&&ie.d(),te&&te.d(),K=!1,ce(oe)}}}function Bs(l){let e,t=ee(l[4]),n=[];for(let i=0;iАктивность пока не зафиксирована',c(e,"class","empty-state svelte-oqcj5z")},m(t,n){g(t,e,n)},p:G,d(t){t&&k(e)}}}function Kl(l){let e,t=l[206].targetType+"",n;return{c(){e=u("span"),n=I(t),c(e,"class","activity-event-target svelte-oqcj5z")},m(i,s){g(i,e,s),r(e,n)},p(i,s){s[0]&16&&t!==(t=i[206].targetType+"")&&H(n,t)},d(i){i&&k(e)}}}function Wl(l){let e,t,n=Pe(l[206].eventType)+"",i,s,o,a=l[206].title+"",f,_,m,h=Ce(l[206].eventType)+"",p,v,w,b,y=be(l[206].createdAt)+"",z,M,E=l[206].targetType&&Kl(l);return{c(){e=u("div"),t=u("span"),i=I(n),s=j(),o=u("span"),f=I(a),_=j(),m=u("span"),p=I(h),v=j(),E&&E.c(),w=j(),b=u("span"),z=I(y),M=j(),c(t,"class","activity-event-icon svelte-oqcj5z"),c(o,"class","activity-event-title svelte-oqcj5z"),c(m,"class","activity-event-type svelte-oqcj5z"),c(b,"class","activity-event-time svelte-oqcj5z"),c(e,"class","activity-event svelte-oqcj5z")},m(q,N){g(q,e,N),r(e,t),r(t,i),r(e,s),r(e,o),r(o,f),r(e,_),r(e,m),r(m,p),r(e,v),E&&E.m(e,null),r(e,w),r(e,b),r(b,z),r(e,M)},p(q,N){N[0]&16&&n!==(n=Pe(q[206].eventType)+"")&&H(i,n),N[0]&16&&a!==(a=q[206].title+"")&&H(f,a),N[0]&16&&h!==(h=Ce(q[206].eventType)+"")&&H(p,h),q[206].targetType?E?E.p(q,N):(E=Kl(q),E.c(),E.m(e,w)):E&&(E.d(1),E=null),N[0]&16&&y!==(y=be(q[206].createdAt)+"")&&H(z,y)},d(q){q&&k(e),E&&E.d()}}}function Ps(l){let e,t=ee(l[13]),n=[];for(let i=0;iЗаписей работы пока нет',c(e,"class","empty-state svelte-oqcj5z")},m(t,n){g(t,e,n)},p:G,d(t){t&&k(e)}}}function Gl(l){let e,t,n=l[190].summary+"",i,s,o,a=l[190].minutes+"",f,_,m=ke(l[190].createdAt)+"",h,p;return{c(){e=u("div"),t=u("div"),i=I(n),s=j(),o=u("div"),f=I(a),_=I(" мин · "),h=I(m),p=j(),c(t,"class","svelte-oqcj5z"),c(o,"class","wl-meta svelte-oqcj5z"),c(e,"class","worklog-entry svelte-oqcj5z")},m(v,w){g(v,e,w),r(e,t),r(t,i),r(e,s),r(e,o),r(o,f),r(o,_),r(o,h),r(e,p)},p(v,w){w[0]&8192&&n!==(n=v[190].summary+"")&&H(i,n),w[0]&8192&&a!==(a=v[190].minutes+"")&&H(f,a),w[0]&8192&&m!==(m=ke(v[190].createdAt)+"")&&H(h,m)},d(v){v&&k(e)}}}function Rs(l){let e,t=ee(l[12]),n=[];for(let i=0;iДействий пока нет',c(e,"class","empty-state svelte-oqcj5z")},m(t,n){g(t,e,n)},p:G,d(t){t&&k(e)}}}function Ul(l){let e,t,n,i=l[201].title+"",s,o,a,f=l[97](l[201].type)+"",_,m,h,p=l[201].data+"",v,w,b,y,z,M,E,q,N;function O(){return l[126](l[201])}function S(){return l[127](l[201])}return{c(){e=u("div"),t=u("div"),n=u("span"),s=I(i),o=j(),a=u("span"),_=I(f),m=j(),h=u("span"),v=I(p),w=j(),b=u("div"),y=u("button"),y.textContent="Запустить",z=j(),M=u("button"),M.innerHTML=' ',E=j(),c(n,"class","action-title svelte-oqcj5z"),c(a,"class","action-type svelte-oqcj5z"),c(h,"class","action-data svelte-oqcj5z"),c(t,"class","action-info svelte-oqcj5z"),c(y,"class","btn btn-sm svelte-oqcj5z"),c(M,"class","btn btn-sm btn-danger svelte-oqcj5z"),c(b,"class","action-btns svelte-oqcj5z"),c(e,"class","action-card svelte-oqcj5z")},m(T,C){g(T,e,C),r(e,t),r(t,n),r(n,s),r(t,o),r(t,a),r(a,_),r(t,m),r(t,h),r(h,v),r(e,w),r(e,b),r(b,y),r(b,z),r(b,M),r(e,E),q||(N=[A(y,"click",O),A(M,"click",S)],q=!0)},p(T,C){l=T,C[0]&4096&&i!==(i=l[201].title+"")&&H(s,i),C[0]&4096&&f!==(f=l[97](l[201].type)+"")&&H(_,f),C[0]&4096&&p!==(p=l[201].data+"")&&H(v,p)},d(T){T&&k(e),q=!1,ce(N)}}}function Jl(l){let e,t,n=l[39].items.length+"",i,s,o;return{c(){e=u("button"),t=I("Вставить "),i=I(n),c(e,"class","btn svelte-oqcj5z")},m(a,f){g(a,e,f),r(e,t),r(e,i),s||(o=A(e,"click",l[64]),s=!0)},p(a,f){f[1]&256&&n!==(n=a[39].items.length+"")&&H(i,n)},d(a){a&&k(e),s=!1,o()}}}function Ws(l){let e,t,n,i,s,o,a;const f=[Js,Us],_=[];function m(w,b){return w[33].length>0?0:1}e=m(l),t=_[e]=f[e](l);const h=[Zs,Xs],p=[];function v(w,b){return w[34].length===0?0:1}return i=v(l),s=p[i]=h[i](l),{c(){t.c(),n=j(),s.c(),o=ye()},m(w,b){_[e].m(w,b),g(w,n,b),p[i].m(w,b),g(w,o,b),a=!0},p(w,b){let y=e;e=m(w),e===y?_[e].p(w,b):(ze(),ue(_[y],1,1,()=>{_[y]=null}),qe(),t=_[e],t?t.p(w,b):(t=_[e]=f[e](w),t.c()),re(t,1),t.m(n.parentNode,n));let z=i;i=v(w),i===z?p[i].p(w,b):(ze(),ue(p[z],1,1,()=>{p[z]=null}),qe(),s=p[i],s?s.p(w,b):(s=p[i]=h[i](w),s.c()),re(s,1),s.m(o.parentNode,o))},i(w){a||(re(t),re(s),a=!0)},o(w){ue(t),ue(s),a=!1},d(w){w&&(k(n),k(o)),_[e].d(w),p[i].d(w)}}}function Gs(l){let e;return{c(){e=u("div"),e.innerHTML='Загрузка...
',c(e,"class","empty-state svelte-oqcj5z")},m(t,n){g(t,e,n)},p:G,i:G,o:G,d(t){t&&k(e)}}}function Us(l){let e,t;return e=new Dn({props:{crumbs:[{name:"Файлы"}]}}),{c(){Ie(e.$$.fragment)},m(n,i){Me(e,n,i),t=!0},p:G,i(n){t||(re(e.$$.fragment,n),t=!0)},o(n){ue(e.$$.fragment,n),t=!1},d(n){Le(e,n)}}}function Js(l){let e,t,n,i,s,o;return e=new Dn({props:{crumbs:[{name:"Файлы"},...l[33]]}}),e.$on("navigate",l[112]),{c(){Ie(e.$$.fragment),t=j(),n=u("button"),n.innerHTML=`
- Back`,c(n,"class","btn btn-sm back-btn svelte-oqcj5z")},m(a,f){Me(e,a,f),g(a,t,f),g(a,n,f),i=!0,s||(o=A(n,"click",l[55]),s=!0)},p(a,f){const _={};f[1]&4&&(_.crumbs=[{name:"Файлы"},...a[33]]),e.$set(_)},i(a){i||(re(e.$$.fragment,a),i=!0)},o(a){ue(e.$$.fragment,a),i=!1},d(a){a&&(k(t),k(n)),Le(e,a),s=!1,o()}}}function Xs(l){let e,t=[],n=new Map,i,s=ee(l[34]);const o=a=>a[198].id;for(let a=0;a0?"В этой папке пока нет файлов":"В этом проекте пока нет файлов",o,a,f,_,m,h,p,v,w,b;return{c(){e=u("div"),t=u("div"),t.innerHTML=' ',n=j(),i=u("p"),o=I(s),a=j(),f=u("p"),f.textContent="Добавьте файл или папку, чтобы сохранить материалы проекта.",_=j(),m=u("div"),h=u("button"),h.textContent="Добавить файл",p=j(),v=u("button"),v.textContent="Добавить папку",c(t,"class","empty-icon svelte-oqcj5z"),c(i,"class","svelte-oqcj5z"),c(f,"class","hint svelte-oqcj5z"),c(h,"class","btn btn-primary svelte-oqcj5z"),c(v,"class","btn svelte-oqcj5z"),c(m,"class","empty-actions svelte-oqcj5z"),c(e,"class","empty-state svelte-oqcj5z")},m(y,z){g(y,e,z),r(e,t),r(e,n),r(e,i),r(i,o),r(e,a),r(e,f),r(e,_),r(e,m),r(m,h),r(m,p),r(m,v),w||(b=[A(h,"click",l[87]),A(v,"click",l[88])],w=!0)},p(y,z){z[1]&4&&s!==(s=y[33].length>0?"В этой папке пока нет файлов":"В этом проекте пока нет файлов")&&H(o,s)},i:G,o:G,d(y){y&&k(e),w=!1,ce(b)}}}function Xl(l,e){let t,n,i;return n=new Zo({props:{item:e[198],selected:e[40].includes(e[198].id),onDragStart:e[68],onDragOver:e[69],onDrop:e[70]}}),n.$on("navigate",e[113]),n.$on("preview",e[114]),n.$on("openExternal",e[115]),n.$on("showInFolder",e[116]),n.$on("delete",e[117]),n.$on("rename",e[118]),n.$on("duplicate",e[119]),n.$on("cut",e[120]),n.$on("copy",e[121]),n.$on("selectOne",e[122]),n.$on("toggleSelect",e[123]),n.$on("rangeSelect",e[124]),{key:l,first:null,c(){t=ye(),Ie(n.$$.fragment),this.first=t},m(s,o){g(s,t,o),Me(n,s,o),i=!0},p(s,o){e=s;const a={};o[1]&8&&(a.item=e[198]),o[1]&520&&(a.selected=e[40].includes(e[198].id)),n.$set(a)},i(s){i||(re(n.$$.fragment,s),i=!0)},o(s){ue(n.$$.fragment,s),i=!1},d(s){s&&k(t),Le(n,s)}}}function Zl(l){let e;return{c(){e=u("div"),e.innerHTML='Сканирование...
',c(e,"class","empty-state svelte-oqcj5z")},m(t,n){g(t,e,n)},d(t){t&&k(e)}}}function Yl(l){let e,t;return e=new us({props:{item:l[35],content:l[36],loading:l[37],error:l[38]}}),e.$on("close",l[58]),e.$on("openExternal",l[125]),{c(){Ie(e.$$.fragment)},m(n,i){Me(e,n,i),t=!0},p(n,i){const s={};i[1]&16&&(s.item=n[35]),i[1]&32&&(s.content=n[36]),i[1]&64&&(s.loading=n[37]),i[1]&128&&(s.error=n[38]),e.$set(s)},i(n){t||(re(e.$$.fragment,n),t=!0)},o(n){ue(e.$$.fragment,n),t=!1},d(n){Le(e,n)}}}function Ql(l){let e,t,n,i,s,o,a,f,_;return{c(){e=u("div"),t=u("input"),n=j(),i=u("div"),s=u("button"),s.textContent="Создать",o=j(),a=u("button"),a.textContent="Отмена",c(t,"type","text"),c(t,"placeholder","Название заметки"),c(t,"class","svelte-oqcj5z"),c(s,"class","btn btn-primary svelte-oqcj5z"),c(a,"class","btn svelte-oqcj5z"),c(i,"class","form-actions svelte-oqcj5z"),c(e,"class","create-form svelte-oqcj5z")},m(m,h){g(m,e,h),r(e,t),de(t,l[22]),r(e,n),r(e,i),r(i,s),r(i,o),r(i,a),f||(_=[A(t,"input",l[109]),A(t,"keydown",l[110]),A(s,"click",l[81]),A(a,"click",l[80])],f=!0)},p(m,h){h[0]&4194304&&t.value!==m[22]&&de(t,m[22])},d(m){m&&k(e),f=!1,ce(_)}}}function Ys(l){let e,t=ee(l[10]),n=[];for(let i=0;iНет заметокСоздайте первую заметку для этого дела.
',c(e,"class","empty-state svelte-oqcj5z")},m(t,n){g(t,e,n)},p:G,d(t){t&&k(e)}}}function xl(l){let e,t,n=l[193].title+"",i,s,o,a=ke(l[193].createdAt)+"",f,_,m,h;function p(){return l[111](l[193])}return{c(){e=u("div"),t=u("div"),i=I(n),s=j(),o=u("div"),f=I(a),_=j(),c(t,"class","note-card-title svelte-oqcj5z"),c(o,"class","note-card-date svelte-oqcj5z"),c(e,"class","note-card svelte-oqcj5z")},m(v,w){g(v,e,w),r(e,t),r(t,i),r(e,s),r(e,o),r(o,f),r(e,_),m||(h=A(e,"click",p),m=!0)},p(v,w){l=v,w[0]&1024&&n!==(n=l[193].title+"")&&H(i,n),w[0]&1024&&a!==(a=ke(l[193].createdAt)+"")&&H(f,a)},d(v){v&&k(e),m=!1,h()}}}function $l(l){let e,t,n,i=ee(l[10].slice(0,5)),s=[];for(let o=0;o0&&rn(l);return{c(){e=u("div"),t=u("div"),n=u("h3"),n.textContent="Новое дело",i=j(),s=u("div"),o=u("label"),o.textContent="Название",a=j(),f=u("input"),_=j(),m=u("div"),h=u("label"),h.textContent="Раздел",p=j(),v=u("select");for(let C=0;Cl[140].call(v)),c(m,"class","form-group svelte-oqcj5z"),c(z,"class","btn btn-primary svelte-oqcj5z"),c(E,"class","btn svelte-oqcj5z"),c(y,"class","modal-actions svelte-oqcj5z"),c(t,"class","modal svelte-oqcj5z"),c(e,"class","modal-overlay svelte-oqcj5z")},m(C,D){g(C,e,D),r(e,t),r(t,n),r(t,i),r(t,s),r(s,o),r(s,a),r(s,f),de(f,l[17]),r(t,_),r(t,m),r(m,h),r(m,p),r(m,v);for(let R=0;R0?T?T.p(C,D):(T=rn(C),T.c(),T.m(t,b)):T&&(T.d(1),T=null)},d(C){C&&k(e),ve(S,C),T&&T.d(),q=!1,ce(N)}}}function cn(l){let e,t=l[187].label+"",n,i;return{c(){e=u("option"),n=I(t),e.__value=i=l[187].id,de(e,e.__value),c(e,"class","svelte-oqcj5z")},m(s,o){g(s,e,o),r(e,n)},p(s,o){o[0]&1&&t!==(t=s[187].label+"")&&H(n,t),o[0]&1&&i!==(i=s[187].id)&&(e.__value=i,de(e,e.__value))},d(s){s&&k(e)}}}function rn(l){let e,t,n,i,s,o,a,f=ee(l[20]),_=[];for(let m=0;ml[141].call(i)),c(e,"class","form-group svelte-oqcj5z")},m(m,h){g(m,e,h),r(e,t),r(e,n),r(e,i),r(i,s);for(let p=0;p<_.length;p+=1)_[p]&&_[p].m(i,null);Be(i,l[19],!0),o||(a=A(i,"change",l[141]),o=!0)},p(m,h){if(h[0]&1048576){f=ee(m[20]);let p;for(p=0;pl[144].call(v)),c(m,"class","form-group svelte-oqcj5z"),c(y,"class","svelte-oqcj5z"),c(q,"type","text"),c(q,"placeholder",N=l[25]==="open_url"?"https://example.com":l[25]==="open_folder"||l[25]==="open_file"?"/path/to/file":"команда"),c(q,"class","svelte-oqcj5z"),c(b,"class","form-group svelte-oqcj5z"),c(T,"class","btn btn-primary svelte-oqcj5z"),c(D,"class","btn svelte-oqcj5z"),c(S,"class","modal-actions svelte-oqcj5z"),c(t,"class","modal svelte-oqcj5z"),c(e,"class","modal-overlay svelte-oqcj5z")},m(P,F){g(P,e,F),r(e,t),r(t,n),r(t,i),r(t,s),r(s,o),r(s,a),r(s,f),de(f,l[24]),r(t,_),r(t,m),r(m,h),r(m,p),r(m,v);for(let U=0;U⚒ Верстак ',i=j(),s=u("nav"),o=u("div"),a=u("div"),a.textContent="Разделы",f=j();for(let V=0;V{ie[pe]=null}),qe(),N=ie[q],N?N.p(V,fe):(N=ie[q]=oe[q](V),N.c()),re(N,1),N.m(b,O)),!V[11]&&!V[8]&&V[7]!=="today"&&V[7]!=="inbox"&&V[7]!=="activity"?Z?Z.p(V,fe):(Z=on(V),Z.c(),Z.m(b,S)):Z&&(Z.d(1),Z=null),V[16]?J?J.p(V,fe):(J=sn(V),J.c(),J.m(b,T)):J&&(J.d(1),J=null),V[23]?le?le.p(V,fe):(le=fn(V),le.c(),le.m(b,C)):le&&(le.d(1),le=null),V[30]&&V[29]?ne?ne.p(V,fe):(ne=dn(V),ne.c(),ne.m(b,D)):ne&&(ne.d(1),ne=null),V[46]?_e?_e.p(V,fe):(_e=pn(V),_e.c(),_e.m(b,R)):_e&&(_e.d(1),_e=null),V[41]?ae?(ae.p(V,fe),fe[1]&1024&&re(ae,1)):(ae=vn(V),ae.c(),re(ae,1),ae.m(b,null)):ae&&(ze(),ue(ae,1,1,()=>{ae=null}),qe())},i(V){X||(re(N),re(ae),X=!0)},o(V){ue(N),ue(ae),X=!1},d(V){V&&k(e),ve(B,V),P&&P.d(),$.d(),K&&K.d(),ie[q].d(),Z&&Z.d(),J&&J.d(),le&&le.d(),ne&&ne.d(),_e&&_e.d(),ae&&ae.d()}}}function Q(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 Ce(l){return{note_created:"Заметка создана",note_updated:"Заметка изменена",file_added:"Файл добавлен",file_deleted:"Файл удалён",file_renamed:"Файл переименован",file_copied:"Файл скопирован",file_moved:"Файл перемещён",folder_added:"Папка добавлена",folder_deleted:"Папка удалена",folder_renamed:"Папка переименована",node_created:"Дело создано",node_updated:"Дело изменено"}[l]||l}function Pe(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 be(l){if(!l)return"";try{return new Date(l).toLocaleTimeString("ru-RU",{hour:"2-digit",minute:"2-digit"})}catch{return""}}function ke(l){if(!l)return"";try{return new Date(l).toLocaleDateString("ru-RU",{day:"numeric",month:"short"})}catch{return l}}function hn(l){return{project:"Проект",client:"Клиент",document:"Документ",recipe:"Рецепт",archive:"Архив",case:"Дело"}[l]||l||"Дело"}function Te(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)}const bn=l=>l.id!=="today"&&l.id!=="inbox"&&l.id!=="activity";function $s(l,e,t){let n=[],i=[],s=null,o=[],a=0,f=!0,_=[],m="",h="",p="",v=null,w="overview",b=[],y=null,z=[],M=[],E=[],q="",N="",O=!1,S="",T="clients",C="",D=[],R=!1,X="",x=!1,B="",P="open_url",F="",U=[{id:"open_url",label:"Открыть URL"},{id:"open_file",label:"Открыть файл"},{id:"open_folder",label:"Открыть папку"},{id:"run_command",label:"Запустить команду"},{id:"run_script",label:"Запустить скрипт"},{id:"open_terminal",label:"Открыть терминал"},{id:"launch_app",label:"Запустить приложение"}],$=!0,K=!1,oe=null,ie=!1,te="",Z=!1,J=null,le=[],ne=[],_e=null,ae="",V=!1,fe="",pe={items:[],mode:"copy"},Y=[],we=[],it=!1,jt="",zt="",qt=!1,Ct="Удалить",Xe=null,Ze=null,Ye=!1,Qe="",Ee="",Ae="";const In=[{id:"overview",label:"Обзор"},{id:"notes",label:"Заметки"},{id:"files",label:"Файлы"},{id:"actions",label:"Действия"},{id:"worklog",label:"Журнал"},{id:"activity",label:"Активность"}];let ot=null;wn(async()=>{try{t(5,m=await Q("VerstakVersion")||"verstak-gui/v2"),t(0,n=await Q("ListSections")||[])}catch(d){t(6,h=String(d)),t(0,n=[{id:"today",label:"Сегодня"},{id:"inbox",label:"Неразобранное"},{id:"activity",label:"Активность"},{id:"clients",label:"Клиенты"},{id:"projects",label:"Проекты"},{id:"recipes",label:"Рецепты"},{id:"documents",label:"Документы"},{id:"archive",label:"Архив"}])}window.runtime&&window.runtime.EventsOn&&(window.runtime.EventsOn("files-dropped",ni),ot=()=>window.runtime.EventsOff("files-dropped")),window.addEventListener("keydown",Bt),t(27,$=!1)}),jn(()=>{ot&&ot(),window.removeEventListener("keydown",Bt)});async function st(d){t(7,p=d),t(8,v=null),t(9,w="overview"),t(10,b=[]),z=[],t(12,M=[]),t(13,E=[]),t(16,O=!1),t(6,h=""),t(2,s=null),t(3,o=[]),a=0,f=!0,t(1,i=[]);try{d==="today"?t(2,s=await Q("ListTodayView")||{cases:[]}):d==="activity"?(t(3,o=await Q("ListActivityFeed",50,0)||[]),a=o.length,f=o.length===50):t(1,i=await Q("ListNodesBySection",d)||[])}catch(L){t(6,h=String(L)),t(1,i=[]),t(2,s={cases:[]}),t(3,o=[])}}async function ct(d){t(8,v=d),t(9,w="overview"),t(10,b=[]),z=[],t(12,M=[]),t(13,E=[]),t(34,ne=[]),t(33,le=[]),t(32,J=null),t(35,_e=null),t(36,ae=""),t(40,Y=[]),we=[],t(11,y=null),t(16,O=!1),t(21,R=!1),t(6,h=""),t(4,_=[]),await Tt(d.id)}async function Tt(d){try{t(10,b=await Q("ListNotes",d)||[])}catch{}try{z=await Q("ListFiles",d)||[]}catch{}try{t(12,M=await Q("ListActions",d)||[])}catch{}try{t(13,E=await Q("ListWorklog",d)||[])}catch{}try{t(4,_=await Q("ListActivityByNode",d,50,0)||[])}catch{}}async function he(d){t(31,Z=!0);try{let L=await Q("ListItems",d)||[];L.sort((se,me)=>se.type!==me.type?se.type==="folder"?-1:1:(se.name||"").localeCompare(me.name||"")),t(34,ne=L)}catch{t(34,ne=[])}t(31,Z=!1)}async function rt(d){if(v){try{const L=await Q("GetNodeDetail",d);L&&t(33,le=[...le,{id:d,name:L.title}])}catch{t(33,le=[...le,{id:d,name:"..."}])}t(32,J=d),await he(d)}}function Mt(){if(le.length<2)t(33,le=[]),t(32,J=null),he(v.id);else{const d=le[le.length-2];t(33,le=le.slice(0,-1)),t(32,J=d.id),he(d.id)}}function Lt(d){const L=le[d];t(33,le=le.slice(0,d+1)),t(32,J=L.id),he(L.id)}async function at(d){t(35,_e=d),t(36,ae=""),t(38,fe=""),t(37,V=!0);try{Vo(d)?t(36,ae=await Q("GetFileBase64",d.fileId)||""):Ro(d)&&t(36,ae=await Q("ReadFileText",d.fileId)||"")}catch(L){t(38,fe=String(L))}t(37,V=!1)}function ft(){t(35,_e=null),t(36,ae=""),t(38,fe="")}async function En(){const d=prompt("Введите имя файла:");if(!(!d||!d.trim()))try{const L=J||v.id;await Q("CreateEmptyFile",L,d.trim()),await he(L)}catch(L){t(6,h=String(L))}}async function St(d){try{await Q("DuplicateNode",d);const L=J||v.id;await he(L)}catch(L){t(6,h=String(L))}}function Dt(d){const L=ne.find(se=>se.id===d);L&&Pt(L.id,L.name)}function It(d){t(39,pe={items:[d],mode:"cut"})}function Et(d){t(39,pe={items:[d],mode:"copy"})}async function At(){if(pe.items.length===0)return;const d=J||v.id;try{if(pe.mode==="copy")for(const L of pe.items)await Q("DuplicateNode",L);else for(const L of pe.items)await Q("MoveNode",L,d);t(39,pe={items:[],mode:"copy"}),await he(d)}catch(L){t(6,h=String(L))}}function Nt(d){Y.includes(d)?t(40,Y=Y.filter(L=>L!==d)):t(40,Y=[...Y,d])}function Ft(d){t(40,Y=[d])}function An(){t(40,Y=ne.map(d=>d.id))}function Ht(d){if(ne.length===0)return;const L=Y.length>0?Y[Y.length-1]:ne[0].id,se=ne.findIndex(Se=>Se.id===L),me=ne.findIndex(Se=>Se.id===d);if(se===-1||me===-1)return;const Ge=Math.min(se,me),vt=Math.max(se,me),oo=ne.slice(Ge,vt+1).map(Se=>Se.id),Yt=new Set(Y);oo.forEach(Se=>Yt.add(Se)),t(40,Y=[...Yt])}function Nn(){t(40,Y=[])}function ut(d){return d.length>0?d:ne.map(L=>L.id)}async function Fn(){var se;const d=ut(Y),L=d.length===1&&((se=ne.find(me=>me.id===d[0]))==null?void 0:se.type)==="folder"?"папку":`файлов (${d.length})`;xe({title:"Удаление",message:`Удалить ${L}?`,confirmText:"Удалить",danger:!0,onConfirm:async()=>{for(const Ge of d)try{await Q("DeleteFileOrFolder",Ge)}catch(vt){t(6,h=String(vt))}t(40,Y=[]);const me=J||v.id;await he(me)}})}function Hn(){const d=ut(Y);t(39,pe={items:d,mode:"cut"}),t(40,Y=[])}function Bn(){const d=ut(Y);t(39,pe={items:d,mode:"copy"}),t(40,Y=[])}function On(d,L){const se=Y.includes(L)?Y:[L];we=se,d.dataTransfer.effectAllowed="move",d.dataTransfer.setData("text/plain",se.join(","))}function Pn(d,L){const se=ne.find(me=>me.id===L);se&&se.type==="folder"&&(d.preventDefault(),d.dataTransfer.dropEffect="move")}async function Vn(d,L){if(d.preventDefault(),we.length!==0){for(const se of we)try{await Q("MoveNode",se,L)}catch(me){t(6,h=String(me))}we=[],t(40,Y=[]),await he(J||v.id)}}function Bt(d){if(w==="files"&&!(d.target.tagName==="INPUT"||d.target.tagName==="TEXTAREA"))if(d.ctrlKey||d.metaKey)d.key==="c"||d.key==="C"?(d.preventDefault(),Bn()):d.key==="x"||d.key==="X"?(d.preventDefault(),Hn()):d.key==="v"||d.key==="V"?(d.preventDefault(),At()):d.key==="a"||d.key==="A"?(d.preventDefault(),An()):d.key==="o"||d.key==="O"?(d.preventDefault(),Rn()):d.key==="Enter"&&(d.preventDefault(),Ot());else if(d.key==="Enter")d.preventDefault(),Ot();else if(d.key==="Delete"||d.key==="Backspace"){if(_e){d.preventDefault(),ft();return}if(Y.length>0){d.preventDefault(),Fn();return}if(d.key==="Backspace"&&le.length>0){d.preventDefault(),Mt();return}}else if(d.key==="Escape"){if(_e){ft();return}if(Y.length>0){Nn();return}}else d.key==="F2"&&(d.preventDefault(),Kn())}function Ot(){if(Y.length===1){const d=ne.find(L=>L.id===Y[0]);d&&(d.type==="folder"?rt(d.id):at(d))}}function Rn(){if(Y.length===1){const d=ne.find(L=>L.id===Y[0]);d&&d.fileId&&Q("OpenFile",d.fileId)}}function Pt(d,L){Qe=d,t(47,Ee=L),t(48,Ae=""),t(46,Ye=!0)}function Kn(){if(Y.length===1){const d=ne.find(L=>L.id===Y[0]);d&&Pt(d.id,d.name)}}async function Vt(){const d=Ee.trim();if(!d){t(48,Ae="Имя не может быть пустым");return}try{await Q("ValidateName",d)}catch{t(48,Ae="Недопустимое имя");return}t(46,Ye=!1),Qe="";try{await Q("RenameNode",Qe,d);const L=J||v.id;await he(L)}catch(L){t(6,h=String(L))}}function Wn(){t(46,Ye=!1),Qe="",t(47,Ee=""),t(48,Ae="")}function Gn(d){d.key==="Enter"?Vt():t(48,Ae="")}function xe(d){t(42,jt=d.title||"Подтверждение"),t(43,zt=d.message||""),t(44,qt=d.danger!==void 0?d.danger:!0),t(45,Ct=d.confirmText||"Удалить"),Xe=d.onConfirm||null,Ze=d.onCancel||null,t(41,it=!0)}function Rt(){t(41,it=!1),Xe=null,Ze=null}function Un(){Xe&&Xe(),Rt()}function Jn(){Ze&&Ze(),Rt()}function Xn(){t(16,O=!0),t(17,S=""),t(18,T=p||"clients"),t(19,C=""),Q("ListTemplates").then(d=>{t(20,D=d||[])}).catch(()=>{t(20,D=[])})}function Zn(){t(16,O=!1),t(17,S="")}async function Kt(){if(S.trim())try{let d;C?d=await Q("FromTemplate","","case",S.trim(),T,C):d=await Q("CreateNode","","case",S.trim(),T),t(16,O=!1),t(17,S=""),t(19,C=""),await st(T)}catch(d){t(6,h=String(d))}}function Wt(){t(21,R=!0),t(22,X="")}function Yn(){t(21,R=!1),t(22,X="")}async function Gt(){if(!(!X.trim()||!v))try{const d=await Q("CreateNote",v.id,X.trim());t(10,b=[...b,d&&d.id?d:{id:Date.now().toString(),title:X.trim(),createdAt:new Date().toISOString()}]),t(21,R=!1),t(22,X="")}catch{const L={id:Date.now().toString(),title:X.trim(),createdAt:new Date().toISOString()};t(10,b=[...b,L]),t(21,R=!1),t(22,X="")}}async function dt(d){if(y&&y.dirty){xe({title:"Несохранённые изменения",message:"Закрыть редактор? Все несохранённые изменения будут потеряны.",confirmText:"Закрыть",danger:!1,onConfirm:async()=>{await Ut(d)}});return}await Ut(d)}async function Ut(d){try{const L=await Q("ReadNote",d.id);t(11,y={id:d.id,title:d.title,content:L||"",dirty:!1})}catch{t(11,y={id:d.id,title:d.title,content:"# "+d.title+`
-
-`,dirty:!1})}}function Qn(){if(y&&y.dirty){xe({title:"Несохранённые изменения",message:"Закрыть редактор? Все несохранённые изменения будут потеряны.",confirmText:"Закрыть",danger:!1,onConfirm:()=>{t(11,y=null)}});return}t(11,y=null)}function xn(d){y&&(t(11,y.content=d.target.value,y),t(11,y.dirty=!0,y))}async function $n(){if(y)try{await Q("SaveNote",y.id,y.content),t(11,y.dirty=!1,y)}catch{t(11,y.dirty=!1,y)}}async function ei(){const d=parseInt(q,10);if(!(!N.trim()||isNaN(d)||d<=0||!v)){try{const L=await Q("CreateWorklog",v.id,N.trim(),d);t(13,E=[...E,L&&L.id?L:{id:Date.now().toString(),nodeId:v.id,summary:N.trim(),minutes:d,createdAt:new Date().toISOString()}])}catch{t(13,E=[...E,{id:Date.now().toString(),nodeId:v.id,summary:N.trim(),minutes:d,createdAt:new Date().toISOString()}])}t(15,N=""),t(14,q="")}}async function Jt(){const d=await Q("PickFile");d&&await _t(v.id,d)}async function ti(){const d=await Q("PickDirectory");d&&await _t(v.id,d)}async function _t(d,L){t(28,K=!0);try{const se=await Q("PreviewImport",L);t(29,oe=se),te=L,t(30,ie=!0)}catch(se){t(6,h=String(se))}t(28,K=!1)}async function pt(d){try{const L=d==="copy"?await Q("AddPathCopy",v.id,te):await Q("AddPathLink",v.id,te);t(30,ie=!1),t(29,oe=null),t(33,le=[]),t(32,J=null),await Promise.all([Tt(v.id),he(v.id)])}catch(L){t(6,h=String(L))}}function li(){t(30,ie=!1),t(29,oe=null)}async function Xt({id:d,type:L}){xe({title:"Удаление",message:`Удалить ${L==="folder"?"папку":"файл"}?`,confirmText:"Удалить",danger:!0,onConfirm:async()=>{try{await Q("DeleteFileOrFolder",d),z=z.filter(Ge=>Ge.nodeId!==d);const me=J||v.id;await he(me)}catch(me){t(6,h=String(me))}}})}async function ni(d){if(!d||d.length===0)return;if(!v){t(6,h="Сначала выберите дело для добавления файлов");return}const L=d[0];await _t(v.id,L)}function ii(d){return w===d?"tab active":"tab"}function oi(){t(23,x=!0),t(24,B=""),t(25,P="open_url"),t(26,F="")}function si(){t(23,x=!1),t(24,B=""),t(26,F="")}async function mt(){if(!(!B.trim()||!F.trim()||!v))try{const d=await Q("CreateAction",v.id,P,B.trim(),F.trim());d&&d.id&&t(12,M=[...M,d]),t(23,x=!1),t(24,B=""),t(26,F="")}catch(d){t(6,h=String(d))}}async function Zt(d){try{await Q("DeleteAction",d),t(12,M=M.filter(L=>L.id!==d))}catch(L){t(6,h=String(L))}}function ci(d){const L=U.find(se=>se.id===d);return L?L.label:d}async function ge(d){try{const L=await Q("GetNodeDetail",d);L&&ct(L)}catch(L){t(6,h=String(L))}}const ri=d=>st(d.id),ai=d=>ct(d),fi=()=>t(6,h=""),ui=()=>t(6,h="");function di(){y.content=this.value,t(11,y)}const _i=d=>{t(9,w=d.id),d.id==="files"&&v&&ne.length===0&&!J&&he(v.id)},pi=()=>{t(9,w="notes"),Wt()},mi=()=>{t(9,w="files"),Jt()},vi=()=>t(9,w="worklog"),hi=d=>dt(d);function bi(){X=this.value,t(22,X)}const ki=d=>d.key==="Enter"&&Gt(),gi=d=>dt(d),yi=d=>{const L=d.detail;L===0?(t(33,le=[]),t(32,J=null),he(v.id)):Lt(L-1)},wi=d=>rt(d.detail),ji=d=>at(d.detail),zi=d=>Q("OpenFile",d.detail),qi=d=>Q("OpenFolder",d.detail),Ci=d=>Xt(d.detail),Ti=d=>Dt(d.detail.id),Mi=d=>St(d.detail),Li=d=>It(d.detail),Si=d=>Et(d.detail),Di=d=>Ft(d.detail),Ii=d=>Nt(d.detail),Ei=d=>Ht(d.detail),Ai=d=>Q("OpenFile",d.detail),Ni=d=>Q("RunAction",d.id),Fi=d=>Zt(d.id);function Hi(){N=this.value,t(15,N)}function Bi(){q=yn(this.value),t(14,q)}const Oi=d=>ge(d.nodeId),Pi=(d,L)=>L.key==="Enter"&&ge(d.nodeId),Vi=d=>ge(d.nodeId),Ri=(d,L)=>L.key==="Enter"&&ge(d.nodeId),Ki=d=>ge(d.nodeId),Wi=(d,L)=>L.key==="Enter"&&ge(d.nodeId),Gi=d=>ge(d.nodeId),Ui=(d,L)=>L.key==="Enter"&&ge(d.nodeId);function Ji(){S=this.value,t(17,S)}const Xi=d=>d.key==="Enter"&&Kt();function Zi(){T=bt(this),t(18,T),t(0,n)}function Yi(){C=bt(this),t(19,C),t(20,D)}function Qi(){B=this.value,t(24,B)}const xi=d=>d.key==="Enter"&&mt();function $i(){P=bt(this),t(25,P),t(49,U)}function eo(){F=this.value,t(26,F)}const to=d=>d.key==="Enter"&&mt(),lo=()=>pt("copy"),no=()=>pt("link");function io(){Ee=this.value,t(47,Ee)}return[n,i,s,o,_,m,h,p,v,w,b,y,M,E,q,N,O,S,T,C,D,R,X,x,B,P,F,$,K,oe,ie,Z,J,le,ne,_e,ae,V,fe,pe,Y,it,jt,zt,qt,Ct,Ye,Ee,Ae,U,In,st,ct,he,rt,Mt,Lt,at,ft,En,St,Dt,It,Et,At,Nt,Ft,Ht,On,Pn,Vn,Vt,Wn,Gn,Un,Jn,Xn,Zn,Kt,Wt,Yn,Gt,dt,Qn,xn,$n,ei,Jt,ti,pt,li,Xt,ii,oi,si,mt,Zt,ci,ge,ri,ai,fi,ui,di,_i,pi,mi,vi,hi,bi,ki,gi,yi,wi,ji,zi,qi,Ci,Ti,Mi,Li,Si,Di,Ii,Ei,Ai,Ni,Fi,Hi,Bi,Oi,Pi,Vi,Ri,Ki,Wi,Gi,Ui,Ji,Xi,Zi,Yi,Qi,xi,$i,eo,to,lo,no,io]}class ec extends We{constructor(e){super(),Ke(this,e,$s,xs,Ve,{},null,[-1,-1,-1,-1,-1,-1,-1,-1])}}new ec({target:document.getElementById("app")});
diff --git a/cmd/verstak-gui/frontend-dist/assets/main-Dk1pVsWM.js b/cmd/verstak-gui/frontend-dist/assets/main-Dk1pVsWM.js
new file mode 100644
index 0000000..ed0fcc9
--- /dev/null
+++ b/cmd/verstak-gui/frontend-dist/assets/main-Dk1pVsWM.js
@@ -0,0 +1,16 @@
+var Is=Object.defineProperty;var Ds=(l,e,t)=>e in l?Is(l,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):l[e]=t;var Et=(l,e,t)=>Ds(l,typeof e!="symbol"?e+"":e,t);(function(){const e=document.createElement("link").relList;if(e&&e.supports&&e.supports("modulepreload"))return;for(const i of document.querySelectorAll('link[rel="modulepreload"]'))n(i);new MutationObserver(i=>{for(const o of i)if(o.type==="childList")for(const s of o.addedNodes)s.tagName==="LINK"&&s.rel==="modulepreload"&&n(s)}).observe(document,{childList:!0,subtree:!0});function t(i){const o={};return i.integrity&&(o.integrity=i.integrity),i.referrerPolicy&&(o.referrerPolicy=i.referrerPolicy),i.crossOrigin==="use-credentials"?o.credentials="include":i.crossOrigin==="anonymous"?o.credentials="omit":o.credentials="same-origin",o}function n(i){if(i.ep)return;i.ep=!0;const o=t(i);fetch(i.href,o)}})();function J(){}function Hn(l){return l()}function ul(){return Object.create(null)}function ae(l){l.forEach(Hn)}function jn(l){return typeof l=="function"}function nt(l,e){return l!=l?e==e:l!==e||l&&typeof l=="object"||typeof l=="function"}let dt;function _t(l,e){return l===e?!0:(dt||(dt=document.createElement("a")),dt.href=e,l===dt.href)}function As(l){return Object.keys(l).length===0}function Ns(l){return l??""}function c(l,e){l.appendChild(e)}function w(l,e,t){l.insertBefore(e,t||null)}function y(l){l.parentNode&&l.parentNode.removeChild(l)}function Me(l,e){for(let t=0;tl.removeEventListener(e,t,n)}function Ve(l){return function(e){return e.stopPropagation(),l.call(this,e)}}function Ze(l){return function(e){e.target===this&&l.call(this,e)}}function r(l,e,t){t==null?l.removeAttribute(e):l.getAttribute(e)!==t&&l.setAttribute(e,t)}function mt(l){return l===""?null:+l}function Es(l){return Array.from(l.childNodes)}function B(l,e){e=""+e,l.data!==e&&(l.data=e)}function ce(l,e){l.value=e??""}function et(l,e,t){for(let n=0;n{const i=l.$$.callbacks[e];if(i){const o=Fs(e,t,{cancelable:n});return i.slice().forEach(s=>{s.call(l,o)}),!o.defaultPrevented}return!0}}function Hs(l,e){const t=l.$$.callbacks[e.type];t&&t.slice().forEach(n=>n.call(this,e))}const xe=[],al=[];let $e=[];const fl=[],js=Promise.resolve();let jt=!1;function Bs(){jt||(jt=!0,js.then(Pn))}function tt(l){$e.push(l)}const Ht=new Set;let Qe=0;function Pn(){if(Qe!==0)return;const l=at;do{try{for(;Qel.indexOf(n)===-1?e.push(n):t.push(n)),t.forEach(n=>n()),$e=e}const pt=new Set;let Xe;function Re(){Xe={r:0,c:[],p:Xe}}function Ke(){Xe.r||ae(Xe.c),Xe=Xe.p}function ke(l,e){l&&l.i&&(pt.delete(l),l.i(e))}function me(l,e,t,n){if(l&&l.o){if(pt.has(l))return;pt.add(l),Xe.c.push(()=>{pt.delete(l),n&&(t&&l.d(1),n())}),l.o(e)}else n&&n()}function ee(l){return(l==null?void 0:l.length)!==void 0?l:Array.from(l)}function Vs(l,e){me(l,1,1,()=>{e.delete(l.key)})}function Rs(l,e,t,n,i,o,s,u,a,d,_,v){let p=l.length,m=o.length,b=p;const C={};for(;b--;)C[l[b].key]=b;const g=[],T=new Map,L=new Map,A=[];for(b=m;b--;){const D=v(i,o,b),M=t(D);let z=s.get(M);z?A.push(()=>z.p(D,e)):(z=d(M,D),z.c()),T.set(M,g[b]=z),M in C&&L.set(M,Math.abs(b-C[M]))}const S=new Set,j=new Set;function P(D){ke(D,1),D.m(u,_),s.set(D.key,D),_=D.first,m--}for(;p&&m;){const D=g[m-1],M=l[p-1],z=D.key,I=M.key;D===M?(_=D.first,p--,m--):T.has(I)?!s.has(z)||S.has(z)?P(D):j.has(I)?p--:L.get(z)>L.get(I)?(j.add(z),P(D)):(S.add(I),p--):(a(M,s),p--)}for(;p--;){const D=l[p];T.has(D.key)||a(D,s)}for(;m;)P(g[m-1]);return ae(A),g}function Ye(l){l&&l.c()}function qe(l,e,t){const{fragment:n,after_update:i}=l.$$;n&&n.m(e,t),tt(()=>{const o=l.$$.on_mount.map(Hn).filter(jn);l.$$.on_destroy?l.$$.on_destroy.push(...o):ae(o),l.$$.on_mount=[]}),i.forEach(tt)}function Ge(l,e){const t=l.$$;t.fragment!==null&&(Ps(t.after_update),ae(t.on_destroy),t.fragment&&t.fragment.d(e),t.on_destroy=t.fragment=null,t.ctx=[])}function Ks(l,e){l.$$.dirty[0]===-1&&(xe.push(l),Bs(),l.$$.dirty.fill(0)),l.$$.dirty[e/31|0]|=1<{const b=m.length?m[0]:p;return d.ctx&&i(d.ctx[v],d.ctx[v]=b)&&(!d.skip_bound&&d.bound[v]&&d.bound[v](b),_&&Ks(l,v)),p}):[],d.update(),_=!0,ae(d.before_update),d.fragment=n?n(d.ctx):!1,e.target){if(e.hydrate){const v=Es(e.target);d.fragment&&d.fragment.l(v),v.forEach(y)}else d.fragment&&d.fragment.c();e.intro&&ke(l.$$.fragment),qe(l,e.target,e.anchor),Pn()}ut(a)}class st{constructor(){Et(this,"$$");Et(this,"$$set")}$destroy(){Ge(this,1),this.$destroy=J}$on(e,t){if(!jn(t))return J;const n=this.$$.callbacks[e]||(this.$$.callbacks[e]=[]);return n.push(t),()=>{const i=n.indexOf(t);i!==-1&&n.splice(i,1)}}$set(e){this.$$set&&!As(e)&&(this.$$.skip_bound=!0,this.$$set(e),this.$$.skip_bound=!1)}}const Ws="4";typeof window<"u"&&(window.__svelte||(window.__svelte={v:new Set})).v.add(Ws);function Us(l){let e,t;return{c(){e=U("path"),t=U("polyline"),r(e,"d","M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"),r(t,"points","14 2 14 8 20 8")},m(n,i){w(n,e,i),w(n,t,i)},d(n){n&&(y(e),y(t))}}}function qs(l){let e,t,n,i,o;return{c(){e=U("path"),t=U("polyline"),n=U("line"),i=U("line"),o=U("polyline"),r(e,"d","M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"),r(t,"points","14 2 14 8 20 8"),r(n,"x1","16"),r(n,"y1","13"),r(n,"x2","8"),r(n,"y2","13"),r(i,"x1","16"),r(i,"y1","17"),r(i,"x2","8"),r(i,"y2","17"),r(o,"points","10 9 9 9 8 9")},m(s,u){w(s,e,u),w(s,t,u),w(s,n,u),w(s,i,u),w(s,o,u)},d(s){s&&(y(e),y(t),y(n),y(i),y(o))}}}function Gs(l){let e,t;return{c(){e=U("polyline"),t=U("polyline"),r(e,"points","16 18 22 12 16 6"),r(t,"points","8 6 2 12 8 18")},m(n,i){w(n,e,i),w(n,t,i)},d(n){n&&(y(e),y(t))}}}function Js(l){let e,t,n,i;return{c(){e=U("path"),t=U("polyline"),n=U("line"),i=U("rect"),r(e,"d","M21 8v13a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V8"),r(t,"points","7 3 12 8 17 3"),r(n,"x1","3"),r(n,"y1","8"),r(n,"x2","21"),r(n,"y2","8"),r(i,"x","10"),r(i,"y","12"),r(i,"width","4"),r(i,"height","4"),r(i,"rx","1")},m(o,s){w(o,e,s),w(o,t,s),w(o,n,s),w(o,i,s)},d(o){o&&(y(e),y(t),y(n),y(i))}}}function Xs(l){let e,t,n,i,o;return{c(){e=U("path"),t=U("polyline"),n=U("line"),i=U("line"),o=U("line"),r(e,"d","M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"),r(t,"points","14 2 14 8 20 8"),r(n,"x1","9"),r(n,"y1","12"),r(n,"x2","15"),r(n,"y2","12"),r(i,"x1","9"),r(i,"y1","15"),r(i,"x2","13"),r(i,"y2","15"),r(o,"x1","12"),r(o,"y1","15"),r(o,"x2","12"),r(o,"y2","18")},m(s,u){w(s,e,u),w(s,t,u),w(s,n,u),w(s,i,u),w(s,o,u)},d(s){s&&(y(e),y(t),y(n),y(i),y(o))}}}function Zs(l){let e,t,n,i,o,s;return{c(){e=U("path"),t=U("polyline"),n=U("line"),i=U("line"),o=U("line"),s=U("line"),r(e,"d","M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"),r(t,"points","14 2 14 8 20 8"),r(n,"x1","8"),r(n,"y1","12"),r(n,"x2","16"),r(n,"y2","12"),r(i,"x1","8"),r(i,"y1","16"),r(i,"x2","16"),r(i,"y2","16"),r(o,"x1","8"),r(o,"y1","14"),r(o,"x2","12"),r(o,"y2","14"),r(s,"x1","12"),r(s,"y1","12"),r(s,"x2","12"),r(s,"y2","18")},m(u,a){w(u,e,a),w(u,t,a),w(u,n,a),w(u,i,a),w(u,o,a),w(u,s,a)},d(u){u&&(y(e),y(t),y(n),y(i),y(o),y(s))}}}function Ys(l){let e,t,n,i;return{c(){e=U("path"),t=U("polyline"),n=U("line"),i=U("line"),r(e,"d","M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"),r(t,"points","14 2 14 8 20 8"),r(n,"x1","16"),r(n,"y1","13"),r(n,"x2","8"),r(n,"y2","13"),r(i,"x1","16"),r(i,"y1","17"),r(i,"x2","8"),r(i,"y2","17")},m(o,s){w(o,e,s),w(o,t,s),w(o,n,s),w(o,i,s)},d(o){o&&(y(e),y(t),y(n),y(i))}}}function Qs(l){let e,t,n,i,o;return{c(){e=U("path"),t=U("polyline"),n=U("line"),i=U("line"),o=U("line"),r(e,"d","M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"),r(t,"points","14 2 14 8 20 8"),r(n,"x1","8"),r(n,"y1","12"),r(n,"x2","16"),r(n,"y2","12"),r(i,"x1","8"),r(i,"y1","16"),r(i,"x2","16"),r(i,"y2","16"),r(o,"x1","8"),r(o,"y1","14"),r(o,"x2","12"),r(o,"y2","14")},m(s,u){w(s,e,u),w(s,t,u),w(s,n,u),w(s,i,u),w(s,o,u)},d(s){s&&(y(e),y(t),y(n),y(i),y(o))}}}function xs(l){let e,t,n;return{c(){e=U("path"),t=U("circle"),n=U("circle"),r(e,"d","M9 18V5l12-2v13"),r(t,"cx","6"),r(t,"cy","18"),r(t,"r","3"),r(n,"cx","18"),r(n,"cy","16"),r(n,"r","3")},m(i,o){w(i,e,o),w(i,t,o),w(i,n,o)},d(i){i&&(y(e),y(t),y(n))}}}function $s(l){let e,t;return{c(){e=U("rect"),t=U("polyline"),r(e,"x","2"),r(e,"y","4"),r(e,"width","20"),r(e,"height","16"),r(e,"rx","2"),r(t,"points","10 9 16 12 10 15 10 9")},m(n,i){w(n,e,i),w(n,t,i)},d(n){n&&(y(e),y(t))}}}function eo(l){let e,t,n;return{c(){e=U("rect"),t=U("circle"),n=U("polyline"),r(e,"x","3"),r(e,"y","3"),r(e,"width","18"),r(e,"height","18"),r(e,"rx","2"),r(e,"ry","2"),r(t,"cx","8.5"),r(t,"cy","8.5"),r(t,"r","1.5"),r(n,"points","21 15 16 10 5 21")},m(i,o){w(i,e,o),w(i,t,o),w(i,n,o)},d(i){i&&(y(e),y(t),y(n))}}}function to(l){let e;return{c(){e=U("path"),r(e,"d","M22 19a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h5l2 3h9a2 2 0 0 1 2 2z")},m(t,n){w(t,e,n)},d(t){t&&y(e)}}}function lo(l){let e;function t(o,s){return o[0]==="folder"?to:o[0]==="image"?eo:o[0]==="video"?$s:o[0]==="audio"?xs:o[0]==="pdf"?Qs:o[0]==="document"?Ys:o[0]==="spreadsheet"?Zs:o[0]==="presentation"?Xs:o[0]==="archive"?Js:o[0]==="code"?Gs:o[0]==="text"?qs:Us}let n=t(l),i=n(l);return{c(){e=U("svg"),i.c(),r(e,"width",l[1]),r(e,"height",l[1]),r(e,"viewBox","0 0 24 24"),r(e,"fill","none"),r(e,"stroke","currentColor"),r(e,"stroke-width","1.5"),r(e,"stroke-linecap","round"),r(e,"stroke-linejoin","round"),r(e,"xmlns","http://www.w3.org/2000/svg")},m(o,s){w(o,e,s),i.m(e,null)},p(o,[s]){n!==(n=t(o))&&(i.d(1),i=n(o),i&&(i.c(),i.m(e,null))),s&2&&r(e,"width",o[1]),s&2&&r(e,"height",o[1])},i:J,o:J,d(o){o&&y(e),i.d()}}}function no(l,e,t){let{kind:n="generic"}=e,{size:i=20}=e;return l.$$set=o=>{"kind"in o&&t(0,n=o.kind),"size"in o&&t(1,i=o.size)},[n,i]}class Vn extends st{constructor(e){super(),it(this,e,no,lo,nt,{kind:0,size:1})}}function ht(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 Bt={"image/jpeg":"Изображение JPEG","image/png":"Изображение PNG","image/gif":"Изображение GIF","image/webp":"Изображение WebP","image/svg+xml":"Изображение SVG","image/bmp":"Изображение BMP","image/tiff":"Изображение TIFF","image/avif":"Изображение AVIF","application/pdf":"PDF документ","application/msword":"Документ Word","application/vnd.openxmlformats-officedocument.wordprocessingml.document":"Документ Word","application/vnd.ms-excel":"Таблица Excel","application/vnd.openxmlformats-officedocument.spreadsheetml.sheet":"Таблица Excel","application/vnd.ms-powerpoint":"Презентация PowerPoint","application/vnd.openxmlformats-officedocument.presentationml.presentation":"Презентация PowerPoint","application/zip":"ZIP архив","application/gzip":"GZIP архив","application/x-tar":"TAR архив","application/x-7z-compressed":"7z архив","application/x-rar-compressed":"RAR архив","text/plain":"Текстовый файл","text/html":"HTML файл","text/css":"CSS файл","text/javascript":"JavaScript файл","application/json":"JSON файл","application/xml":"XML файл","application/x-yaml":"YAML файл","application/octet-stream":"Бинарный файл","application/x-msdos-program":"Исполняемый файл","inode/directory":"Папка"};function kl(l){return l?Bt[l]||l:"Неизвестно"}function io(l){if(l.type==="folder")return"Папка";const e=(l.mime||"").toLowerCase();if(Bt[e])return Bt[e];const n=(l.name||"").toLowerCase().split(".").pop();return n?n.toUpperCase():"Файл"}function Rn(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 so=["image/jpeg","image/png","image/gif","image/webp","image/bmp","image/tiff","image/avif","image/svg+xml"],oo=["text/plain","text/html","text/css","text/javascript","application/json","application/xml","application/x-yaml","text/x-shellscript"],ro=["txt","log","conf","ini","yaml","yml","json","xml","csv","sh","py","js","ts","css","html","md","markdown","cfg"],co=["jpg","jpeg","png","gif","webp","bmp","tiff","tif","avif","svg"];function Kn(l){const e=(l.mime||"").toLowerCase(),n=(l.name||"").toLowerCase().split(".").pop();return so.includes(e)||co.includes(n)}function Wn(l){const e=(l.mime||"").toLowerCase(),n=(l.name||"").toLowerCase().split(".").pop();return oo.includes(e)||ro.includes(n)&&n!=="md"&&n!=="markdown"}function Un(l){return(l.mime||"").toLowerCase().includes("pdf")}function qn(l){const e=(l.name||"").toLowerCase();return e.endsWith(".md")||e.endsWith(".markdown")}function uo(l){return Kn(l)||Un(l)}function ao(l){return Wn(l)||qn(l)}function fo(l){let e,t,n,i=ht(l[0].size)+"",o;return{c(){e=f("span"),e.textContent="·",t=h(),n=f("span"),o=N(i),r(e,"class","meta-sep svelte-1u905d2")},m(s,u){w(s,e,u),w(s,t,u),w(s,n,u),c(n,o)},p(s,u){u&1&&i!==(i=ht(s[0].size)+"")&&B(o,i)},d(s){s&&(y(e),y(t),y(n))}}}function ko(l){let e,t,n;return{c(){e=f("button"),e.innerHTML=' ',r(e,"class","action-btn svelte-1u905d2"),r(e,"title","Открыть папку"),r(e,"aria-label","Открыть папку")},m(i,o){w(i,e,o),t||(n=H(e,"click",Ve(l[27])),t=!0)},p:J,d(i){i&&y(e),t=!1,n()}}}function po(l){let e,t,n,i,o;return{c(){e=f("button"),e.innerHTML=' ',t=h(),n=f("button"),n.innerHTML=' ',r(e,"class","action-btn svelte-1u905d2"),r(e,"title","Предпросмотр"),r(e,"aria-label","Предпросмотр"),r(n,"class","action-btn svelte-1u905d2"),r(n,"title","Открыть во внешней программе"),r(n,"aria-label","Открыть внешне")},m(s,u){w(s,e,u),w(s,t,u),w(s,n,u),i||(o=[H(e,"click",Ve(l[26])),H(n,"click",Ve(l[8]))],i=!0)},p:J,d(s){s&&(y(e),y(t),y(n)),i=!1,ae(o)}}}function dl(l){let e,t,n,i,o,s,u,a,d,_,v,p,m,b,C,g,T,L,A,S,j,P,D,M=l[5]&&_o(l);return{c(){e=f("div"),t=h(),n=f("div"),i=f("button"),i.innerHTML=`
+ Открыть`,o=h(),s=f("button"),s.innerHTML=`
+ Открыть во внешней программе`,u=h(),M&&M.c(),a=h(),d=f("div"),_=h(),v=f("button"),v.innerHTML=`
+ Переименовать`,p=h(),m=f("button"),m.innerHTML=`
+ Дублировать`,b=h(),C=f("button"),C.innerHTML=`
+ Вырезать`,g=h(),T=f("button"),T.innerHTML=`
+ Копировать`,L=h(),A=f("div"),S=h(),j=f("button"),j.innerHTML=`
+ Удалить`,r(e,"class","menu-backdrop svelte-1u905d2"),r(e,"role","presentation"),r(i,"class","menu-item svelte-1u905d2"),r(i,"role","menuitem"),r(s,"class","menu-item svelte-1u905d2"),r(s,"role","menuitem"),r(d,"class","menu-sep svelte-1u905d2"),r(v,"class","menu-item svelte-1u905d2"),r(v,"role","menuitem"),r(m,"class","menu-item svelte-1u905d2"),r(m,"role","menuitem"),r(C,"class","menu-item svelte-1u905d2"),r(C,"role","menuitem"),r(T,"class","menu-item svelte-1u905d2"),r(T,"role","menuitem"),r(A,"class","menu-sep svelte-1u905d2"),r(j,"class","menu-item menu-item-danger svelte-1u905d2"),r(j,"role","menuitem"),r(n,"class","menu svelte-1u905d2"),r(n,"role","menu")},m(z,I){w(z,e,I),w(z,t,I),w(z,n,I),c(n,i),c(n,o),c(n,s),c(n,u),M&&M.m(n,null),c(n,a),c(n,d),c(n,_),c(n,v),c(n,p),c(n,m),c(n,b),c(n,C),c(n,g),c(n,T),c(n,L),c(n,A),c(n,S),c(n,j),P||(D=[H(e,"click",Ve(l[17])),H(i,"click",l[15]),H(s,"click",l[8]),H(v,"click",l[11]),H(m,"click",l[12]),H(C,"click",l[13]),H(T,"click",l[14]),H(j,"click",l[10]),H(n,"click",Ve(l[25]))],P=!0)},p(z,I){z[5]&&M.p(z,I)},d(z){z&&(y(e),y(t),y(n)),M&&M.d(),P=!1,ae(D)}}}function _o(l){let e,t,n;return{c(){e=f("button"),e.innerHTML=`
+ Показать в проводнике`,r(e,"class","menu-item svelte-1u905d2"),r(e,"role","menuitem")},m(i,o){w(i,e,o),t||(n=H(e,"click",l[9]),t=!0)},p:J,d(i){i&&y(e),t=!1,n()}}}function mo(l){let e,t,n,i,o,s,u=l[0].name+"",a,d,_,v,p,m,b,C,g,T,L,A,S,j,P,D,M,z,I,O,q,Z;n=new Vn({props:{kind:l[4],size:22}});let R=!l[5]&&fo(l);function K(G,se){return G[5]?ko:po}let W=K(l)(l),ne=l[2]&&dl(l);return{c(){e=f("div"),t=f("div"),Ye(n.$$.fragment),i=h(),o=f("div"),s=f("div"),a=N(u),_=h(),v=f("div"),p=f("span"),p.textContent=`${l[6]}`,m=h(),R&&R.c(),b=h(),C=f("div"),W.c(),g=h(),T=f("button"),L=U("svg"),A=U("circle"),S=U("circle"),j=U("circle"),P=h(),D=f("button"),D.innerHTML=' ',z=h(),ne&&ne.c(),I=Pe(),r(t,"class","file-row-icon svelte-1u905d2"),r(s,"class","file-row-name svelte-1u905d2"),r(s,"title",d=l[0].name),r(v,"class","file-row-meta svelte-1u905d2"),r(o,"class","file-row-body svelte-1u905d2"),r(A,"cx","12"),r(A,"cy","5"),r(A,"r","2"),r(S,"cx","12"),r(S,"cy","12"),r(S,"r","2"),r(j,"cx","12"),r(j,"cy","19"),r(j,"r","2"),r(L,"width","16"),r(L,"height","16"),r(L,"viewBox","0 0 24 24"),r(L,"fill","currentColor"),r(T,"class","action-btn svelte-1u905d2"),r(T,"title","Ещё"),r(T,"aria-label","Ещё"),r(T,"aria-expanded",l[2]),r(D,"class","action-btn action-btn-danger svelte-1u905d2"),r(D,"title","Удалить"),r(D,"aria-label","Удалить"),r(C,"class","file-row-actions svelte-1u905d2"),r(e,"class","file-row svelte-1u905d2"),r(e,"role","button"),r(e,"tabindex","0"),r(e,"draggable","true"),r(e,"aria-label",M=l[5]?`Папка ${l[0].name}`:`Файл ${l[0].name}`),vt(e,"file-row--selected",l[1])},m(G,se){w(G,e,se),c(e,t),qe(n,t,null),c(e,i),c(e,o),c(o,s),c(s,a),c(o,_),c(o,v),c(v,p),c(v,m),R&&R.m(v,null),c(e,b),c(e,C),W.m(C,null),c(C,g),c(C,T),c(T,L),c(L,A),c(L,S),c(L,j),c(C,P),c(C,D),w(G,z,se),ne&&ne.m(G,se),w(G,I,se),O=!0,q||(Z=[H(window,"click",l[17]),H(T,"click",Ve(l[16])),H(D,"click",Ve(l[10])),H(e,"click",l[7]),H(e,"contextmenu",l[21]),H(e,"dragstart",l[18]),H(e,"dragover",l[19]),H(e,"drop",l[20])],q=!0)},p(G,[se]){(!O||se&1)&&u!==(u=G[0].name+"")&&B(a,u),(!O||se&1&&d!==(d=G[0].name))&&r(s,"title",d),G[5]||R.p(G,se),W.p(G,se),(!O||se&4)&&r(T,"aria-expanded",G[2]),(!O||se&1&&M!==(M=G[5]?`Папка ${G[0].name}`:`Файл ${G[0].name}`))&&r(e,"aria-label",M),(!O||se&2)&&vt(e,"file-row--selected",G[1]),G[2]?ne?ne.p(G,se):(ne=dl(G),ne.c(),ne.m(I.parentNode,I)):ne&&(ne.d(1),ne=null)},i(G){O||(ke(n.$$.fragment,G),O=!0)},o(G){me(n.$$.fragment,G),O=!1},d(G){G&&(y(e),y(z),y(I)),Ge(n),R&&R.d(),W.d(),ne&&ne.d(G),q=!1,ae(Z)}}}function vo(l,e,t){let{item:n}=e,{selected:i=!1}=e,{onDragStart:o}=e,{onDragOver:s}=e,{onDrop:u}=e;const a=bt(),d=Rn(n),_=n.type==="folder",v=io(n);let p=!1,m=null;function b(E){E.ctrlKey||E.metaKey?a("toggleSelect",n.id):E.shiftKey?a("rangeSelect",n.id):m?(clearTimeout(m),m=null,_?a("navigate",n.id):a("preview",n)):m=setTimeout(()=>{m=null,a("selectOne",n.id)},250)}function C(){a("openExternal",n.fileId)}function g(){a("showInFolder",n.id)}function T(){t(2,p=!1),a("delete",{id:n.id,type:n.type})}function L(){t(2,p=!1),a("rename",{id:n.id,name:n.name})}function A(){t(2,p=!1),a("duplicate",n.id)}function S(){t(2,p=!1),a("cut",n.id)}function j(){t(2,p=!1),a("copy",n.id)}function P(){t(2,p=!1),_?a("navigate",n.id):a("preview",n)}function D(){t(2,p=!p)}function M(){t(2,p=!1)}function z(E){o&&o(E,n.id)}function I(E){s&&_&&s(E,n.id)}function O(E){u&&_&&u(E,n.id)}function q(E){E.preventDefault(),t(2,p=!0)}function Z(E){Hs.call(this,l,E)}const R=()=>a("preview",n),K=()=>a("navigate",n.id);return l.$$set=E=>{"item"in E&&t(0,n=E.item),"selected"in E&&t(1,i=E.selected),"onDragStart"in E&&t(22,o=E.onDragStart),"onDragOver"in E&&t(23,s=E.onDragOver),"onDrop"in E&&t(24,u=E.onDrop)},[n,i,p,a,d,_,v,b,C,g,T,L,A,S,j,P,D,M,z,I,O,q,o,s,u,Z,R,K]}class ho extends st{constructor(e){super(),it(this,e,vo,mo,nt,{item:0,selected:1,onDragStart:22,onDragOver:23,onDrop:24})}}function pl(l,e,t){const n=l.slice();return n[4]=e[t],n[6]=t,n}function bo(l){let e;return{c(){e=f("span"),e.textContent="/",r(e,"class","sep svelte-csi2lb")},m(t,n){w(t,e,n)},d(t){t&&y(e)}}}function go(l){let e,t=l[4].name+"",n,i,o;function s(){return l[2](l[6])}return{c(){e=f("button"),n=N(t),r(e,"class","crumb crumb--link svelte-csi2lb")},m(u,a){w(u,e,a),c(e,n),i||(o=H(e,"click",s),i=!0)},p(u,a){l=u,a&1&&t!==(t=l[4].name+"")&&B(n,t)},d(u){u&&y(e),i=!1,o()}}}function yo(l){let e,t=l[4].name+"",n;return{c(){e=f("span"),n=N(t),r(e,"class","crumb crumb--current svelte-csi2lb")},m(i,o){w(i,e,o),c(e,n)},p(i,o){o&1&&t!==(t=i[4].name+"")&&B(n,t)},d(i){i&&y(e)}}}function _l(l){let e,t,n=l[6]>0&&bo();function i(u,a){return u[6]===u[0].length-1?yo:go}let o=i(l),s=o(l);return{c(){n&&n.c(),e=h(),s.c(),t=Pe()},m(u,a){n&&n.m(u,a),w(u,e,a),s.m(u,a),w(u,t,a)},p(u,a){o===(o=i(u))&&s?s.p(u,a):(s.d(1),s=o(u),s&&(s.c(),s.m(t.parentNode,t)))},d(u){u&&(y(e),y(t)),n&&n.d(u),s.d(u)}}}function wo(l){let e,t=ee(l[0]),n=[];for(let i=0;io(u);return l.$$set=u=>{"crumbs"in u&&t(0,n=u.crumbs)},[n,o,s]}class Gn extends st{constructor(e){super(),it(this,e,zo,wo,nt,{crumbs:0})}}function Co(l){let e,t,n,i,o,s;return{c(){e=f("div"),t=f("p"),t.textContent="Предпросмотр недоступен для этого типа файлов.",n=h(),i=f("button"),i.textContent="Открыть во внешней программе",r(i,"class","btn btn-sm svelte-1cw3u0m"),r(e,"class","preview-status svelte-1cw3u0m")},m(u,a){w(u,e,a),c(e,t),c(e,n),c(e,i),o||(s=H(i,"click",l[9]),o=!0)},p:J,d(u){u&&y(e),o=!1,s()}}}function To(l){let e,t;function n(s,u){return u&2&&(e=null),e==null&&(e=!!(s[1]&&s[1].startsWith("data:"))),e?Ao:Do}let i=n(l,-1),o=i(l);return{c(){o.c(),t=Pe()},m(s,u){o.m(s,u),w(s,t,u)},p(s,u){i===(i=n(s,u))&&o?o.p(s,u):(o.d(1),o=i(s),o&&(o.c(),o.m(t.parentNode,t)))},d(s){s&&y(t),o.d(s)}}}function Mo(l){let e,t,n;return{c(){e=f("pre"),t=f("code"),n=N(l[1]),r(e,"class","preview-text svelte-1cw3u0m")},m(i,o){w(i,e,o),c(e,t),c(t,n)},p(i,o){o&2&&B(n,i[1])},d(i){i&&y(e)}}}function So(l){let e,t,n,i;return{c(){e=f("div"),t=f("img"),_t(t.src,n=l[1])||r(t,"src",n),r(t,"alt",i=l[0].name),r(t,"class","preview-image svelte-1cw3u0m"),r(e,"class","preview-image-container svelte-1cw3u0m")},m(o,s){w(o,e,s),c(e,t)},p(o,s){s&2&&!_t(t.src,n=o[1])&&r(t,"src",n),s&1&&i!==(i=o[0].name)&&r(t,"alt",i)},d(o){o&&y(e)}}}function Lo(l){let e,t,n,i,o,s,u;return{c(){e=f("div"),t=f("p"),n=N(l[3]),i=h(),o=f("button"),o.textContent="Открыть во внешней программе",r(o,"class","btn btn-sm svelte-1cw3u0m"),r(e,"class","preview-status svelte-1cw3u0m")},m(a,d){w(a,e,d),c(e,t),c(t,n),c(e,i),c(e,o),s||(u=H(o,"click",l[9]),s=!0)},p(a,d){d&8&&B(n,a[3])},d(a){a&&y(e),s=!1,u()}}}function Io(l){let e;return{c(){e=f("div"),e.innerHTML="Загрузка...
",r(e,"class","preview-status svelte-1cw3u0m")},m(t,n){w(t,e,n)},p:J,d(t){t&&y(e)}}}function Do(l){let e,t,n,i,o,s;return{c(){e=f("div"),t=f("p"),t.textContent="Предпросмотр PDF недоступен.",n=h(),i=f("button"),i.textContent="Открыть во внешней программе",r(i,"class","btn btn-sm svelte-1cw3u0m"),r(e,"class","preview-status svelte-1cw3u0m")},m(u,a){w(u,e,a),c(e,t),c(e,n),c(e,i),o||(s=H(i,"click",l[9]),o=!0)},p:J,d(u){u&&y(e),o=!1,s()}}}function Ao(l){let e,t,n;return{c(){e=f("div"),t=f("embed"),_t(t.src,n=l[1])||r(t,"src",n),r(t,"type","application/pdf"),r(t,"class","preview-pdf svelte-1cw3u0m"),r(e,"class","preview-pdf-container svelte-1cw3u0m")},m(i,o){w(i,e,o),c(e,t)},p(i,o){o&2&&!_t(t.src,n=i[1])&&r(t,"src",n)},d(i){i&&y(e)}}}function No(l){let e,t,n,i,o,s,u,a=l[0].name+"",d,_,v,p,m=ht(l[0].size)+"",b,C,g=kl(l[0].mime)+"",T,L,A,S,j,P,D,M,z,I,O,q;o=new Vn({props:{kind:l[8],size:18}});function Z(E,W){return E[2]?Io:E[3]?Lo:E[6]&&E[1]?So:E[5]&&E[1]?Mo:E[4]?To:Co}let R=Z(l),K=R(l);return{c(){e=f("div"),t=f("div"),n=f("header"),i=f("div"),Ye(o.$$.fragment),s=h(),u=f("span"),d=N(a),v=h(),p=f("div"),b=N(m),C=N(" · "),T=N(g),L=h(),A=f("div"),S=f("button"),S.innerHTML=' ',j=h(),P=f("button"),P.innerHTML=' ',D=h(),M=f("div"),K.c(),r(u,"class","preview-name svelte-1cw3u0m"),r(u,"title",_=l[0].name),r(i,"class","preview-title svelte-1cw3u0m"),r(p,"class","preview-meta svelte-1cw3u0m"),r(S,"class","action-btn svelte-1cw3u0m"),r(S,"title","Открыть во внешней программе"),r(S,"aria-label","Открыть внешне"),r(P,"class","action-btn action-btn-close svelte-1cw3u0m"),r(P,"title","Close"),r(P,"aria-label","Close preview"),r(A,"class","preview-actions svelte-1cw3u0m"),r(n,"class","preview-header svelte-1cw3u0m"),r(M,"class","preview-body svelte-1cw3u0m"),r(t,"class","modal svelte-1cw3u0m"),r(e,"class","overlay svelte-1cw3u0m"),r(e,"role","dialog"),r(e,"aria-modal","true"),r(e,"aria-label",z=`Preview: ${l[0].name}`)},m(E,W){w(E,e,W),c(e,t),c(t,n),c(n,i),qe(o,i,null),c(i,s),c(i,u),c(u,d),c(n,v),c(n,p),c(p,b),c(p,C),c(p,T),c(n,L),c(n,A),c(A,S),c(A,j),c(A,P),c(t,D),c(t,M),K.m(M,null),I=!0,O||(q=[H(S,"click",l[9]),H(P,"click",l[10]),H(e,"click",Ze(l[11]))],O=!0)},p(E,[W]){(!I||W&1)&&a!==(a=E[0].name+"")&&B(d,a),(!I||W&1&&_!==(_=E[0].name))&&r(u,"title",_),(!I||W&1)&&m!==(m=ht(E[0].size)+"")&&B(b,m),(!I||W&1)&&g!==(g=kl(E[0].mime)+"")&&B(T,g),R===(R=Z(E))&&K?K.p(E,W):(K.d(1),K=R(E),K&&(K.c(),K.m(M,null))),(!I||W&1&&z!==(z=`Preview: ${E[0].name}`))&&r(e,"aria-label",z)},i(E){I||(ke(o.$$.fragment,E),I=!0)},o(E){me(o.$$.fragment,E),I=!1},d(E){E&&y(e),Ge(o),K.d(),O=!1,ae(q)}}}function Eo(l,e,t){let n,i,o,{item:s}=e,{content:u=""}=e,{loading:a=!1}=e,{error:d=""}=e;const _=bt(),v=Rn(s);function p(g){g.key==="Escape"&&_("close")}function m(){_("openExternal",s.fileId)}Bn(()=>{window.addEventListener("keydown",p)}),On(()=>{window.removeEventListener("keydown",p)});const b=()=>_("close"),C=()=>_("close");return l.$$set=g=>{"item"in g&&t(0,s=g.item),"content"in g&&t(1,u=g.content),"loading"in g&&t(2,a=g.loading),"error"in g&&t(3,d=g.error)},l.$$.update=()=>{l.$$.dirty&3&&t(6,n=Kn(s)&&u&&u.startsWith("data:")),l.$$.dirty&1&&t(5,i=Wn(s)||qn(s)),l.$$.dirty&1&&t(4,o=Un(s))},[s,u,a,d,o,i,n,_,v,m,b,C]}class Fo extends st{constructor(e){super(),it(this,e,Eo,No,nt,{item:0,content:1,loading:2,error:3})}}function Ho(l){let e,t,n,i,o,s,u,a,d,_,v,p,m,b,C,g,T;return{c(){e=f("div"),t=f("div"),n=f("h3"),i=N(l[0]),o=h(),s=f("p"),u=N(l[1]),a=h(),d=f("div"),_=f("button"),v=N(l[2]),m=h(),b=f("button"),C=N(l[3]),r(n,"class","svelte-1fv6yyk"),r(s,"class","message svelte-1fv6yyk"),r(_,"class",p="btn "+(l[4]?"btn-danger":"btn-primary")+" svelte-1fv6yyk"),r(b,"class","btn svelte-1fv6yyk"),r(d,"class","actions svelte-1fv6yyk"),r(t,"class","modal svelte-1fv6yyk"),r(e,"class","overlay svelte-1fv6yyk"),r(e,"role","dialog"),r(e,"aria-modal","true"),r(e,"aria-label",l[0])},m(L,A){w(L,e,A),c(e,t),c(t,n),c(n,i),c(t,o),c(t,s),c(s,u),c(t,a),c(t,d),c(d,_),c(_,v),c(d,m),c(d,b),c(b,C),g||(T=[H(_,"click",l[6]),H(b,"click",l[7]),H(e,"click",Ze(l[8]))],g=!0)},p(L,[A]){A&1&&B(i,L[0]),A&2&&B(u,L[1]),A&4&&B(v,L[2]),A&16&&p!==(p="btn "+(L[4]?"btn-danger":"btn-primary")+" svelte-1fv6yyk")&&r(_,"class",p),A&8&&B(C,L[3]),A&1&&r(e,"aria-label",L[0])},i:J,o:J,d(L){L&&y(e),g=!1,ae(T)}}}function jo(l,e,t){let{title:n="Подтверждение"}=e,{message:i=""}=e,{confirmText:o="Удалить"}=e,{cancelText:s="Отмена"}=e,{danger:u=!1}=e;const a=bt(),d=()=>a("confirm"),_=()=>a("cancel"),v=()=>a("cancel");return l.$$set=p=>{"title"in p&&t(0,n=p.title),"message"in p&&t(1,i=p.message),"confirmText"in p&&t(2,o=p.confirmText),"cancelText"in p&&t(3,s=p.cancelText),"danger"in p&&t(4,u=p.danger)},[n,i,o,s,u,a,d,_,v]}class Bo extends st{constructor(e){super(),it(this,e,jo,Ho,nt,{title:0,message:1,confirmText:2,cancelText:3,danger:4})}}function ml(l,e,t){const n=l.slice();return n[199]=e[t],n}function vl(l,e,t){const n=l.slice();return n[202]=e[t],n}function hl(l,e,t){const n=l.slice();return n[205]=e[t],n}function bl(l,e,t){const n=l.slice();return n[224]=e[t],n}function gl(l,e,t){const n=l.slice();return n[224]=e[t],n}function yl(l,e,t){const n=l.slice();return n[232]=e[t],n}function wl(l,e,t){const n=l.slice();return n[224]=e[t],n}function zl(l,e,t){const n=l.slice();return n[224]=e[t],n}function Cl(l,e,t){const n=l.slice();return n[208]=e[t],n}function Tl(l,e,t){const n=l.slice();return n[219]=e[t],n}function Ml(l,e,t){const n=l.slice();return n[216]=e[t],n}function Sl(l,e,t){const n=l.slice();return n[211]=e[t],n}function Ll(l,e,t){const n=l.slice();return n[208]=e[t],n}function Il(l,e,t){const n=l.slice();return n[211]=e[t],n}function Dl(l,e,t){const n=l.slice();return n[227]=e[t],n}function Al(l,e,t){const n=l.slice();return n[205]=e[t],n}function Nl(l,e,t){const n=l.slice();return n[241]=e[t],n}function El(l,e,t){const n=l.slice();return n[244]=e[t],n}function Fl(l){let e,t=l[244].label+"",n,i,o,s,u;function a(){return l[112](l[244])}return{c(){e=f("button"),n=N(t),i=h(),r(e,"class",o="nav-item "+(l[7]===l[244].id?"selected":"")+" svelte-1kukkze")},m(d,_){w(d,e,_),c(e,n),c(e,i),s||(u=H(e,"click",a),s=!0)},p(d,_){l=d,_[0]&1&&t!==(t=l[244].label+"")&&B(n,t),_[0]&129&&o!==(o="nav-item "+(l[7]===l[244].id?"selected":"")+" svelte-1kukkze")&&r(e,"class",o)},d(d){d&&y(e),s=!1,u()}}}function Hl(l){let e,t,n,i,o,s=l[1].length>0&&jl(l),u=ee(l[1]),a=[];for(let _=0;_0?s?s.p(_,v):(s=jl(_),s.c(),s.m(t,null)):s&&(s.d(1),s=null),v[0]&258|v[1]&536870912){u=ee(_[1]);let p;for(p=0;p0&&Rl(l);return{c(){e=f("button"),t=U("svg"),n=U("polyline"),i=U("polyline"),o=U("path"),s=h(),d&&d.c(),r(n,"points","23 4 23 10 17 10"),r(n,"class","svelte-1kukkze"),r(i,"points","1 20 1 14 7 14"),r(i,"class","svelte-1kukkze"),r(o,"d","M3.51 9a9 9 0 0 1 14.85-3.36L23 10M1 14l4.64 4.36A9 9 0 0 0 20.49 15"),r(o,"class","svelte-1kukkze"),r(t,"width","16"),r(t,"height","16"),r(t,"viewBox","0 0 24 24"),r(t,"fill","none"),r(t,"stroke","currentColor"),r(t,"stroke-width","2"),r(t,"stroke-linecap","round"),r(t,"stroke-linejoin","round"),r(t,"class","svelte-1kukkze"),r(e,"class","header-sync-btn svelte-1kukkze"),e.disabled=l[51],r(e,"title","Синхронизировать")},m(_,v){w(_,e,v),c(e,t),c(t,n),c(t,i),c(t,o),c(e,s),d&&d.m(e,null),u||(a=H(e,"click",l[111]),u=!0)},p(_,v){_[50].unpushedOps>0?d?d.p(_,v):(d=Rl(_),d.c(),d.m(e,null)):d&&(d.d(1),d=null),v[1]&1048576&&(e.disabled=_[51])},d(_){_&&y(e),d&&d.d(),u=!1,a()}}}function Rl(l){let e,t=l[50].unpushedOps+"",n;return{c(){e=f("span"),n=N(t),r(e,"class","sync-badge svelte-1kukkze")},m(i,o){w(i,e,o),c(e,n)},p(i,o){o[1]&524288&&t!==(t=i[50].unpushedOps+"")&&B(n,t)},d(i){i&&y(e)}}}function Kl(l){let e,t,n,i,o,s;return{c(){e=f("div"),t=N(l[6]),n=h(),i=f("button"),i.innerHTML=' ',r(i,"class","dismiss-btn svelte-1kukkze"),r(i,"aria-label","Dismiss"),r(e,"class","error-banner svelte-1kukkze")},m(u,a){w(u,e,a),c(e,t),c(e,n),c(e,i),o||(s=[H(i,"click",Ve(l[114])),H(e,"click",l[115])],o=!0)},p(u,a){a[0]&64&&B(t,u[6])},d(u){u&&y(e),o=!1,ae(s)}}}function Ro(l){let e,t,n;function i(u,a){if(u[27])return Xo;if(u[0].length>0)return Jo;if(u[6])return Go}let o=i(l),s=o&&o(l);return{c(){e=f("div"),t=f("h2"),t.textContent="Верстак",n=h(),s&&s.c(),r(t,"class","svelte-1kukkze"),r(e,"class","welcome svelte-1kukkze")},m(u,a){w(u,e,a),c(e,t),c(e,n),s&&s.m(e,null)},p(u,a){o===(o=i(u))&&s?s.p(u,a):(s&&s.d(1),s=o&&o(u),s&&(s.c(),s.m(e,null)))},i:J,o:J,d(u){u&&y(e),s&&s.d()}}}function Ko(l){let e,t,n;function i(u,a){return u[3].length===0?Yo:Zo}let o=i(l),s=o(l);return{c(){e=f("div"),t=f("div"),t.innerHTML='Активность ',n=h(),s.c(),r(t,"class","activity-feed-header svelte-1kukkze"),r(e,"class","activity-feed svelte-1kukkze")},m(u,a){w(u,e,a),c(e,t),c(e,n),s.m(e,null)},p(u,a){o===(o=i(u))&&s?s.p(u,a):(s.d(1),s=o(u),s&&(s.c(),s.m(e,null)))},i:J,o:J,d(u){u&&y(e),s.d()}}}function Wo(l){let e,t,n,i,o,s=l[2].date+"",u,a,d,_=l[2].summary&&ql(l);function v(b,C){return b[2].groups&&b[2].groups.length>0?xo:Qo}let p=v(l),m=p(l);return{c(){e=f("div"),t=f("div"),n=f("h2"),n.textContent="Сегодня",i=h(),o=f("span"),u=N(s),a=h(),_&&_.c(),d=h(),m.c(),r(n,"class","svelte-1kukkze"),r(o,"class","today-date svelte-1kukkze"),r(t,"class","today-header svelte-1kukkze"),r(e,"class","today-dashboard svelte-1kukkze")},m(b,C){w(b,e,C),c(e,t),c(t,n),c(t,i),c(t,o),c(o,u),c(e,a),_&&_.m(e,null),c(e,d),m.m(e,null)},p(b,C){C[0]&4&&s!==(s=b[2].date+"")&&B(u,s),b[2].summary?_?_.p(b,C):(_=ql(b),_.c(),_.m(e,d)):_&&(_.d(1),_=null),p===(p=v(b))&&m?m.p(b,C):(m.d(1),m=p(b),m&&(m.c(),m.m(e,null)))},i:J,o:J,d(b){b&&y(e),_&&_.d(),m.d()}}}function Uo(l){let e,t,n,i,o,s,u=ee(l[58]),a=[];for(let p=0;p{_[b]=null}),Ke()),~i?(o=_[i],o?o.p(p,m):(o=_[i]=d[i](p),o.c()),ke(o,1),o.m(n,null)):o=null)},i(p){s||(ke(o),s=!0)},o(p){me(o),s=!1},d(p){p&&(y(e),y(t),y(n)),Me(a,p),~i&&_[i].d()}}}function qo(l){let e,t,n,i=l[11].title+"",o,s,u,a,d,_,v,p,m,b,C,g=l[11].dirty&&vn();return{c(){e=f("div"),t=f("div"),n=f("span"),o=N(i),s=h(),g&&g.c(),u=h(),a=f("div"),d=f("button"),d.textContent="Сохранить",_=h(),v=f("button"),v.textContent="Закрыть",p=h(),m=f("textarea"),r(n,"class","note-title svelte-1kukkze"),r(d,"class","btn btn-primary svelte-1kukkze"),r(v,"class","btn svelte-1kukkze"),r(a,"class","note-editor-actions svelte-1kukkze"),r(t,"class","note-editor-header svelte-1kukkze"),r(m,"class","note-textarea svelte-1kukkze"),r(m,"placeholder","Начните писать..."),r(e,"class","note-editor svelte-1kukkze")},m(T,L){w(T,e,L),c(e,t),c(t,n),c(n,o),c(t,s),g&&g.m(t,null),c(t,u),c(t,a),c(a,d),c(a,_),c(a,v),c(e,p),c(e,m),ce(m,l[11].content),b||(C=[H(d,"click",l[93]),H(v,"click",l[91]),H(m,"input",l[116]),H(m,"input",l[92])],b=!0)},p(T,L){L[0]&2048&&i!==(i=T[11].title+"")&&B(o,i),T[11].dirty?g||(g=vn(),g.c(),g.m(t,u)):g&&(g.d(1),g=null),L[0]&2048&&ce(m,T[11].content)},i:J,o:J,d(T){T&&y(e),g&&g.d(),b=!1,ae(C)}}}function Go(l){let e,t,n;return{c(){e=f("p"),t=N("Ошибка: "),n=N(l[6]),r(e,"class","error-text svelte-1kukkze")},m(i,o){w(i,e,o),c(e,t),c(e,n)},p(i,o){o[0]&64&&B(n,i[6])},d(i){i&&y(e)}}}function Jo(l){let e,t,n;return{c(){e=f("p"),e.textContent="Выберите раздел в боковой панели.",t=h(),n=f("p"),n.textContent="Или создайте новое дело кнопкой «+».",r(e,"class","svelte-1kukkze"),r(n,"class","hint svelte-1kukkze")},m(i,o){w(i,e,o),w(i,t,o),w(i,n,o)},p:J,d(i){i&&(y(e),y(t),y(n))}}}function Xo(l){let e;return{c(){e=f("p"),e.textContent="Загрузка...",r(e,"class","svelte-1kukkze")},m(t,n){w(t,e,n)},p:J,d(t){t&&y(e)}}}function Zo(l){let e,t=ee(l[3]),n=[];for(let i=0;iАктивность пока не зафиксирована',r(e,"class","empty-state svelte-1kukkze")},m(t,n){w(t,e,n)},p:J,d(t){t&&y(e)}}}function Wl(l){let e,t=l[224].targetType+"",n;return{c(){e=f("span"),n=N(t),r(e,"class","activity-feed-target svelte-1kukkze")},m(i,o){w(i,e,o),c(e,n)},p(i,o){o[0]&8&&t!==(t=i[224].targetType+"")&&B(n,t)},d(i){i&&y(e)}}}function Ul(l){let e,t,n=lt(l[224].eventType)+"",i,o,s,u,a=l[224].title+"",d,_,v,p,m=We(l[224].eventType)+"",b,C,g,T,L=He(l[224].createdAt)+"",A,S,j=Fe(l[224].createdAt)+"",P,D,M,z,I=l[224].targetType&&Wl(l);function O(){return l[149](l[224])}function q(...Z){return l[150](l[224],...Z)}return{c(){e=f("div"),t=f("span"),i=N(n),o=h(),s=f("div"),u=f("span"),d=N(a),_=h(),v=f("div"),p=f("span"),b=N(m),C=h(),I&&I.c(),g=h(),T=f("span"),A=N(L),S=h(),P=N(j),D=h(),r(t,"class","activity-feed-icon svelte-1kukkze"),r(u,"class","activity-feed-title svelte-1kukkze"),r(p,"class","activity-feed-type svelte-1kukkze"),r(T,"class","activity-feed-time svelte-1kukkze"),r(v,"class","activity-feed-meta svelte-1kukkze"),r(s,"class","activity-feed-body svelte-1kukkze"),r(e,"class","activity-feed-event svelte-1kukkze"),r(e,"role","button"),r(e,"tabindex","0")},m(Z,R){w(Z,e,R),c(e,t),c(t,i),c(e,o),c(e,s),c(s,u),c(u,d),c(s,_),c(s,v),c(v,p),c(p,b),c(v,C),I&&I.m(v,null),c(v,g),c(v,T),c(T,A),c(T,S),c(T,P),c(e,D),M||(z=[H(e,"click",O),H(e,"keydown",q)],M=!0)},p(Z,R){l=Z,R[0]&8&&n!==(n=lt(l[224].eventType)+"")&&B(i,n),R[0]&8&&a!==(a=l[224].title+"")&&B(d,a),R[0]&8&&m!==(m=We(l[224].eventType)+"")&&B(b,m),l[224].targetType?I?I.p(l,R):(I=Wl(l),I.c(),I.m(v,g)):I&&(I.d(1),I=null),R[0]&8&&L!==(L=He(l[224].createdAt)+"")&&B(A,L),R[0]&8&&j!==(j=Fe(l[224].createdAt)+"")&&B(P,j)},d(Z){Z&&y(e),I&&I.d(),M=!1,ae(z)}}}function ql(l){let e,t,n,i=l[2].summary.changedCases>0&&Gl(l),o=l[2].summary.notes>0&&Jl(l),s=l[2].summary.files>0&&Xl(l);return{c(){e=f("div"),i&&i.c(),t=h(),o&&o.c(),n=h(),s&&s.c(),r(e,"class","today-summary svelte-1kukkze")},m(u,a){w(u,e,a),i&&i.m(e,null),c(e,t),o&&o.m(e,null),c(e,n),s&&s.m(e,null)},p(u,a){u[2].summary.changedCases>0?i?i.p(u,a):(i=Gl(u),i.c(),i.m(e,t)):i&&(i.d(1),i=null),u[2].summary.notes>0?o?o.p(u,a):(o=Jl(u),o.c(),o.m(e,n)):o&&(o.d(1),o=null),u[2].summary.files>0?s?s.p(u,a):(s=Xl(u),s.c(),s.m(e,null)):s&&(s.d(1),s=null)},d(u){u&&y(e),i&&i.d(),o&&o.d(),s&&s.d()}}}function Gl(l){let e,t=l[2].summary.changedCases+"",n,i,o=Ue(l[2].summary.changedCases,"дело","дела","дел")+"",s;return{c(){e=f("span"),n=N(t),i=h(),s=N(o),r(e,"class","summary-chip svelte-1kukkze")},m(u,a){w(u,e,a),c(e,n),c(e,i),c(e,s)},p(u,a){a[0]&4&&t!==(t=u[2].summary.changedCases+"")&&B(n,t),a[0]&4&&o!==(o=Ue(u[2].summary.changedCases,"дело","дела","дел")+"")&&B(s,o)},d(u){u&&y(e)}}}function Jl(l){let e,t=l[2].summary.notes+"",n,i,o=Ue(l[2].summary.notes,"заметка","заметки","заметок")+"",s;return{c(){e=f("span"),n=N(t),i=h(),s=N(o),r(e,"class","summary-chip svelte-1kukkze")},m(u,a){w(u,e,a),c(e,n),c(e,i),c(e,s)},p(u,a){a[0]&4&&t!==(t=u[2].summary.notes+"")&&B(n,t),a[0]&4&&o!==(o=Ue(u[2].summary.notes,"заметка","заметки","заметок")+"")&&B(s,o)},d(u){u&&y(e)}}}function Xl(l){let e,t=l[2].summary.files+"",n,i,o=Ue(l[2].summary.files,"файл","файла","файлов")+"",s;return{c(){e=f("span"),n=N(t),i=h(),s=N(o),r(e,"class","summary-chip svelte-1kukkze")},m(u,a){w(u,e,a),c(e,n),c(e,i),c(e,s)},p(u,a){a[0]&4&&t!==(t=u[2].summary.files+"")&&B(n,t),a[0]&4&&o!==(o=Ue(u[2].summary.files,"файл","файла","файлов")+"")&&B(s,o)},d(u){u&&y(e)}}}function Qo(l){let e;return{c(){e=f("div"),e.innerHTML='Сегодня пока тихо
Здесь появятся дела, заметки, файлы и действия, с которыми вы работали сегодня.
',r(e,"class","today-empty svelte-1kukkze")},m(t,n){w(t,e,n)},p:J,d(t){t&&y(e)}}}function xo(l){let e,t,n=ee(l[2].groups),i=[];for(let s=0;s0&&$l(l);return{c(){for(let s=0;s0?o?o.p(s,u):(o=$l(s),o.c(),o.m(t.parentNode,t)):o&&(o.d(1),o=null)},d(s){s&&(y(e),y(t)),Me(i,s),o&&o.d(s)}}}function Zl(l){let e,t=l[232].events.length+"",n,i,o=Ue(l[232].events.length,"событие","события","событий")+"",s;return{c(){e=f("span"),n=N(t),i=h(),s=N(o),r(e,"class","today-case-count svelte-1kukkze")},m(u,a){w(u,e,a),c(e,n),c(e,i),c(e,s)},p(u,a){a[0]&4&&t!==(t=u[232].events.length+"")&&B(n,t),a[0]&4&&o!==(o=Ue(u[232].events.length,"событие","события","событий")+"")&&B(s,o)},d(u){u&&y(e)}}}function $o(l){let e;return{c(){e=f("div"),e.textContent="Изменён сегодня",r(e,"class","today-events-empty svelte-1kukkze")},m(t,n){w(t,e,n)},p:J,d(t){t&&y(e)}}}function er(l){let e,t=ee(l[232].events),n=[];for(let i=0;i0?er:$o}let P=j(l),D=P(l);return{c(){e=f("div"),t=f("div"),n=f("span"),o=N(i),s=h(),u=f("span"),d=N(a),_=h(),L&&L.c(),v=h(),p=f("span"),b=N(m),C=h(),D.c(),r(n,"class","today-case-title svelte-1kukkze"),r(u,"class","today-case-type svelte-1kukkze"),r(p,"class","today-case-time svelte-1kukkze"),r(t,"class","today-case-header svelte-1kukkze"),r(t,"role","button"),r(t,"tabindex","0"),r(e,"class","today-case svelte-1kukkze")},m(M,z){w(M,e,z),c(e,t),c(t,n),c(n,o),c(t,s),c(t,u),c(u,d),c(t,_),L&&L.m(t,null),c(t,v),c(t,p),c(p,b),c(e,C),D.m(e,null),g||(T=[H(t,"click",A),H(t,"keydown",S)],g=!0)},p(M,z){l=M,z[0]&4&&i!==(i=l[232].nodeTitle+"")&&B(o,i),z[0]&4&&a!==(a=En(l[232].nodeKind)+"")&&B(d,a),l[232].events?L?L.p(l,z):(L=Zl(l),L.c(),L.m(t,v)):L&&(L.d(1),L=null),z[0]&4&&m!==(m=Fe(l[232].lastActivityAt)+"")&&B(b,m),P===(P=j(l))&&D?D.p(l,z):(D.d(1),D=P(l),D&&(D.c(),D.m(e,null)))},d(M){M&&y(e),L&&L.d(),D.d(),g=!1,ae(T)}}}function $l(l){let e,t,n,i=ee(l[2].events),o=[];for(let s=0;s0&&rn(l);const j=[pr,dr],P=[];function D(I,O){return I[31]?0:1}p=D(l),m=P[p]=j[p](l);let M=l[28]&&!l[30]&&un(),z=l[35]&&an(l);return{c(){e=f("div"),t=f("div"),n=f("button"),i=N("+ Добавить файл"),o=h(),s=f("button"),u=N("+ Добавить папку"),a=h(),d=f("button"),d.textContent="+ Новый файл",_=h(),S&&S.c(),v=h(),m.c(),b=h(),M&&M.c(),C=h(),z&&z.c(),g=Pe(),r(n,"class","btn btn-primary svelte-1kukkze"),n.disabled=l[28],r(s,"class","btn svelte-1kukkze"),s.disabled=l[28],r(d,"class","btn svelte-1kukkze"),r(t,"class","tab-toolbar svelte-1kukkze"),r(e,"class","files-tab svelte-1kukkze")},m(I,O){w(I,e,O),c(e,t),c(t,n),c(n,i),c(t,o),c(t,s),c(s,u),c(t,a),c(t,d),c(t,_),S&&S.m(t,null),c(e,v),P[p].m(e,null),c(e,b),M&&M.m(e,null),w(I,C,O),z&&z.m(I,O),w(I,g,O),T=!0,L||(A=[H(n,"click",l[95]),H(s,"click",l[96]),H(d,"click",l[67])],L=!0)},p(I,O){(!T||O[0]&268435456)&&(n.disabled=I[28]),(!T||O[0]&268435456)&&(s.disabled=I[28]),I[39].items.length>0?S?S.p(I,O):(S=rn(I),S.c(),S.m(t,null)):S&&(S.d(1),S=null);let q=p;p=D(I),p===q?P[p].p(I,O):(Re(),me(P[q],1,1,()=>{P[q]=null}),Ke(),m=P[p],m?m.p(I,O):(m=P[p]=j[p](I),m.c()),ke(m,1),m.m(e,b)),I[28]&&!I[30]?M||(M=un(),M.c(),M.m(e,null)):M&&(M.d(1),M=null),I[35]?z?(z.p(I,O),O[1]&16&&ke(z,1)):(z=an(I),z.c(),ke(z,1),z.m(g.parentNode,g)):z&&(Re(),me(z,1,1,()=>{z=null}),Ke())},i(I){T||(ke(m),ke(z),T=!0)},o(I){me(m),me(z),T=!1},d(I){I&&(y(e),y(C),y(g)),S&&S.d(),P[p].d(),M&&M.d(),z&&z.d(I),L=!1,ae(A)}}}function sr(l){let e,t,n,i,o,s,u,a=l[21]&&fn(l);function d(p,m){return p[10].length===0&&!p[21]?gr:br}let _=d(l),v=_(l);return{c(){e=f("div"),t=f("div"),n=f("button"),n.textContent="+ Добавить заметку",i=h(),a&&a.c(),o=h(),v.c(),r(n,"class","btn btn-primary svelte-1kukkze"),r(t,"class","tab-toolbar svelte-1kukkze"),r(e,"class","notes-tab svelte-1kukkze")},m(p,m){w(p,e,m),c(e,t),c(t,n),c(e,i),a&&a.m(e,null),c(e,o),v.m(e,null),s||(u=H(n,"click",l[87]),s=!0)},p(p,m){p[21]?a?a.p(p,m):(a=fn(p),a.c(),a.m(e,o)):a&&(a.d(1),a=null),_===(_=d(p))&&v?v.p(p,m):(v.d(1),v=_(p),v&&(v.c(),v.m(e,null)))},i:J,o:J,d(p){p&&y(e),a&&a.d(),v.d(),s=!1,u()}}}function or(l){let e,t,n=l[8].title+"",i,o,s,u,a,d,_=l[8].type+"",v,p,m,b,C,g=(l[8].section||"—")+"",T,L,A,S,j,P=He(l[8].createdAt)+"",D,M,z,I,O,q,Z,R,K,E,W,ne,G,se,oe=l[10].length>0&&dn(l),x=l[13].length>0&&_n(l);return{c(){e=f("div"),t=f("h2"),i=N(n),o=h(),s=f("div"),u=f("div"),a=f("span"),a.textContent="Тип",d=f("span"),v=N(_),p=h(),m=f("div"),b=f("span"),b.textContent="Раздел",C=f("span"),T=N(g),L=h(),A=f("div"),S=f("span"),S.textContent="Создано",j=f("span"),D=N(P),M=h(),z=f("div"),I=f("button"),I.innerHTML=`
+ Новая заметка`,O=h(),q=f("button"),q.innerHTML=`
+ Добавить файл`,Z=h(),R=f("button"),R.innerHTML=`
+ Добавить действие`,K=h(),E=f("button"),E.innerHTML=`
+ Записать время`,W=h(),oe&&oe.c(),ne=h(),x&&x.c(),r(t,"class","svelte-1kukkze"),r(a,"class","meta-label svelte-1kukkze"),r(d,"class","svelte-1kukkze"),r(u,"class","meta-item svelte-1kukkze"),r(b,"class","meta-label svelte-1kukkze"),r(C,"class","svelte-1kukkze"),r(m,"class","meta-item svelte-1kukkze"),r(S,"class","meta-label svelte-1kukkze"),r(j,"class","svelte-1kukkze"),r(A,"class","meta-item svelte-1kukkze"),r(s,"class","meta-grid svelte-1kukkze"),r(I,"class","qa-btn svelte-1kukkze"),r(q,"class","qa-btn svelte-1kukkze"),r(R,"class","qa-btn svelte-1kukkze"),r(E,"class","qa-btn svelte-1kukkze"),r(z,"class","quick-actions svelte-1kukkze"),r(e,"class","overview svelte-1kukkze")},m(Y,Q){w(Y,e,Q),c(e,t),c(t,i),c(e,o),c(e,s),c(s,u),c(u,a),c(u,d),c(d,v),c(s,p),c(s,m),c(m,b),c(m,C),c(C,T),c(s,L),c(s,A),c(A,S),c(A,j),c(j,D),c(e,M),c(e,z),c(z,I),c(z,O),c(z,q),c(z,Z),c(z,R),c(z,K),c(z,E),c(e,W),oe&&oe.m(e,null),c(e,ne),x&&x.m(e,null),G||(se=[H(I,"click",l[118]),H(q,"click",l[119]),H(R,"click",l[101]),H(E,"click",l[120])],G=!0)},p(Y,Q){Q[0]&256&&n!==(n=Y[8].title+"")&&B(i,n),Q[0]&256&&_!==(_=Y[8].type+"")&&B(v,_),Q[0]&256&&g!==(g=(Y[8].section||"—")+"")&&B(T,g),Q[0]&256&&P!==(P=He(Y[8].createdAt)+"")&&B(D,P),Y[10].length>0?oe?oe.p(Y,Q):(oe=dn(Y),oe.c(),oe.m(e,ne)):oe&&(oe.d(1),oe=null),Y[13].length>0?x?x.p(Y,Q):(x=_n(Y),x.c(),x.m(e,null)):x&&(x.d(1),x=null)},i:J,o:J,d(Y){Y&&y(e),oe&&oe.d(),x&&x.d(),G=!1,ae(se)}}}function rr(l){let e,t=ee(l[4]),n=[];for(let i=0;iАктивность пока не зафиксирована',r(e,"class","empty-state svelte-1kukkze")},m(t,n){w(t,e,n)},p:J,d(t){t&&y(e)}}}function ln(l){let e,t=l[224].targetType+"",n;return{c(){e=f("span"),n=N(t),r(e,"class","activity-event-target svelte-1kukkze")},m(i,o){w(i,e,o),c(e,n)},p(i,o){o[0]&16&&t!==(t=i[224].targetType+"")&&B(n,t)},d(i){i&&y(e)}}}function nn(l){let e,t,n=lt(l[224].eventType)+"",i,o,s,u=l[224].title+"",a,d,_,v=We(l[224].eventType)+"",p,m,b,C,g=Fe(l[224].createdAt)+"",T,L,A=l[224].targetType&&ln(l);return{c(){e=f("div"),t=f("span"),i=N(n),o=h(),s=f("span"),a=N(u),d=h(),_=f("span"),p=N(v),m=h(),A&&A.c(),b=h(),C=f("span"),T=N(g),L=h(),r(t,"class","activity-event-icon svelte-1kukkze"),r(s,"class","activity-event-title svelte-1kukkze"),r(_,"class","activity-event-type svelte-1kukkze"),r(C,"class","activity-event-time svelte-1kukkze"),r(e,"class","activity-event svelte-1kukkze")},m(S,j){w(S,e,j),c(e,t),c(t,i),c(e,o),c(e,s),c(s,a),c(e,d),c(e,_),c(_,p),c(e,m),A&&A.m(e,null),c(e,b),c(e,C),c(C,T),c(e,L)},p(S,j){j[0]&16&&n!==(n=lt(S[224].eventType)+"")&&B(i,n),j[0]&16&&u!==(u=S[224].title+"")&&B(a,u),j[0]&16&&v!==(v=We(S[224].eventType)+"")&&B(p,v),S[224].targetType?A?A.p(S,j):(A=ln(S),A.c(),A.m(e,b)):A&&(A.d(1),A=null),j[0]&16&&g!==(g=Fe(S[224].createdAt)+"")&&B(T,g)},d(S){S&&y(e),A&&A.d()}}}function ur(l){let e,t=ee(l[13]),n=[];for(let i=0;iЗаписей работы пока нет',r(e,"class","empty-state svelte-1kukkze")},m(t,n){w(t,e,n)},p:J,d(t){t&&y(e)}}}function sn(l){let e,t,n=l[208].summary+"",i,o,s,u=l[208].minutes+"",a,d,_=He(l[208].createdAt)+"",v,p;return{c(){e=f("div"),t=f("div"),i=N(n),o=h(),s=f("div"),a=N(u),d=N(" мин · "),v=N(_),p=h(),r(t,"class","svelte-1kukkze"),r(s,"class","wl-meta svelte-1kukkze"),r(e,"class","worklog-entry svelte-1kukkze")},m(m,b){w(m,e,b),c(e,t),c(t,i),c(e,o),c(e,s),c(s,a),c(s,d),c(s,v),c(e,p)},p(m,b){b[0]&8192&&n!==(n=m[208].summary+"")&&B(i,n),b[0]&8192&&u!==(u=m[208].minutes+"")&&B(a,u),b[0]&8192&&_!==(_=He(m[208].createdAt)+"")&&B(v,_)},d(m){m&&y(e)}}}function fr(l){let e,t=ee(l[12]),n=[];for(let i=0;iДействий пока нет',r(e,"class","empty-state svelte-1kukkze")},m(t,n){w(t,e,n)},p:J,d(t){t&&y(e)}}}function on(l){let e,t,n,i=l[219].title+"",o,s,u,a=l[105](l[219].type)+"",d,_,v,p=l[219].data+"",m,b,C,g,T,L,A,S,j;function P(){return l[139](l[219])}function D(){return l[140](l[219])}return{c(){e=f("div"),t=f("div"),n=f("span"),o=N(i),s=h(),u=f("span"),d=N(a),_=h(),v=f("span"),m=N(p),b=h(),C=f("div"),g=f("button"),g.textContent="Запустить",T=h(),L=f("button"),L.innerHTML=' ',A=h(),r(n,"class","action-title svelte-1kukkze"),r(u,"class","action-type svelte-1kukkze"),r(v,"class","action-data svelte-1kukkze"),r(t,"class","action-info svelte-1kukkze"),r(g,"class","btn btn-sm svelte-1kukkze"),r(L,"class","btn btn-sm btn-danger svelte-1kukkze"),r(C,"class","action-btns svelte-1kukkze"),r(e,"class","action-card svelte-1kukkze")},m(M,z){w(M,e,z),c(e,t),c(t,n),c(n,o),c(t,s),c(t,u),c(u,d),c(t,_),c(t,v),c(v,m),c(e,b),c(e,C),c(C,g),c(C,T),c(C,L),c(e,A),S||(j=[H(g,"click",P),H(L,"click",D)],S=!0)},p(M,z){l=M,z[0]&4096&&i!==(i=l[219].title+"")&&B(o,i),z[0]&4096&&a!==(a=l[105](l[219].type)+"")&&B(d,a),z[0]&4096&&p!==(p=l[219].data+"")&&B(m,p)},d(M){M&&y(e),S=!1,ae(j)}}}function rn(l){let e,t,n=l[39].items.length+"",i,o,s;return{c(){e=f("button"),t=N("Вставить "),i=N(n),r(e,"class","btn svelte-1kukkze")},m(u,a){w(u,e,a),c(e,t),c(e,i),o||(s=H(e,"click",l[72]),o=!0)},p(u,a){a[1]&256&&n!==(n=u[39].items.length+"")&&B(i,n)},d(u){u&&y(e),o=!1,s()}}}function dr(l){let e,t,n,i,o,s,u;const a=[mr,_r],d=[];function _(b,C){return b[33].length>0?0:1}e=_(l),t=d[e]=a[e](l);const v=[hr,vr],p=[];function m(b,C){return b[34].length===0?0:1}return i=m(l),o=p[i]=v[i](l),{c(){t.c(),n=h(),o.c(),s=Pe()},m(b,C){d[e].m(b,C),w(b,n,C),p[i].m(b,C),w(b,s,C),u=!0},p(b,C){let g=e;e=_(b),e===g?d[e].p(b,C):(Re(),me(d[g],1,1,()=>{d[g]=null}),Ke(),t=d[e],t?t.p(b,C):(t=d[e]=a[e](b),t.c()),ke(t,1),t.m(n.parentNode,n));let T=i;i=m(b),i===T?p[i].p(b,C):(Re(),me(p[T],1,1,()=>{p[T]=null}),Ke(),o=p[i],o?o.p(b,C):(o=p[i]=v[i](b),o.c()),ke(o,1),o.m(s.parentNode,s))},i(b){u||(ke(t),ke(o),u=!0)},o(b){me(t),me(o),u=!1},d(b){b&&(y(n),y(s)),d[e].d(b),p[i].d(b)}}}function pr(l){let e;return{c(){e=f("div"),e.innerHTML='Загрузка...
',r(e,"class","empty-state svelte-1kukkze")},m(t,n){w(t,e,n)},p:J,i:J,o:J,d(t){t&&y(e)}}}function _r(l){let e,t;return e=new Gn({props:{crumbs:[{name:"Файлы"}]}}),{c(){Ye(e.$$.fragment)},m(n,i){qe(e,n,i),t=!0},p:J,i(n){t||(ke(e.$$.fragment,n),t=!0)},o(n){me(e.$$.fragment,n),t=!1},d(n){Ge(e,n)}}}function mr(l){let e,t,n,i,o,s;return e=new Gn({props:{crumbs:[{name:"Файлы"},...l[33]]}}),e.$on("navigate",l[125]),{c(){Ye(e.$$.fragment),t=h(),n=f("button"),n.innerHTML=`
+ Back`,r(n,"class","btn btn-sm back-btn svelte-1kukkze")},m(u,a){qe(e,u,a),w(u,t,a),w(u,n,a),i=!0,o||(s=H(n,"click",l[63]),o=!0)},p(u,a){const d={};a[1]&4&&(d.crumbs=[{name:"Файлы"},...u[33]]),e.$set(d)},i(u){i||(ke(e.$$.fragment,u),i=!0)},o(u){me(e.$$.fragment,u),i=!1},d(u){u&&(y(t),y(n)),Ge(e,u),o=!1,s()}}}function vr(l){let e,t=[],n=new Map,i,o=ee(l[34]);const s=u=>u[216].id;for(let u=0;u0?"В этой папке пока нет файлов":"В этом проекте пока нет файлов",s,u,a,d,_,v,p,m,b,C;return{c(){e=f("div"),t=f("div"),t.innerHTML=' ',n=h(),i=f("p"),s=N(o),u=h(),a=f("p"),a.textContent="Добавьте файл или папку, чтобы сохранить материалы проекта.",d=h(),_=f("div"),v=f("button"),v.textContent="Добавить файл",p=h(),m=f("button"),m.textContent="Добавить папку",r(t,"class","empty-icon svelte-1kukkze"),r(i,"class","svelte-1kukkze"),r(a,"class","hint svelte-1kukkze"),r(v,"class","btn btn-primary svelte-1kukkze"),r(m,"class","btn svelte-1kukkze"),r(_,"class","empty-actions svelte-1kukkze"),r(e,"class","empty-state svelte-1kukkze")},m(g,T){w(g,e,T),c(e,t),c(e,n),c(e,i),c(i,s),c(e,u),c(e,a),c(e,d),c(e,_),c(_,v),c(_,p),c(_,m),b||(C=[H(v,"click",l[95]),H(m,"click",l[96])],b=!0)},p(g,T){T[1]&4&&o!==(o=g[33].length>0?"В этой папке пока нет файлов":"В этом проекте пока нет файлов")&&B(s,o)},i:J,o:J,d(g){g&&y(e),b=!1,ae(C)}}}function cn(l,e){let t,n,i;return n=new ho({props:{item:e[216],selected:e[40].includes(e[216].id),onDragStart:e[76],onDragOver:e[77],onDrop:e[78]}}),n.$on("navigate",e[126]),n.$on("preview",e[127]),n.$on("openExternal",e[128]),n.$on("showInFolder",e[129]),n.$on("delete",e[130]),n.$on("rename",e[131]),n.$on("duplicate",e[132]),n.$on("cut",e[133]),n.$on("copy",e[134]),n.$on("selectOne",e[135]),n.$on("toggleSelect",e[136]),n.$on("rangeSelect",e[137]),{key:l,first:null,c(){t=Pe(),Ye(n.$$.fragment),this.first=t},m(o,s){w(o,t,s),qe(n,o,s),i=!0},p(o,s){e=o;const u={};s[1]&8&&(u.item=e[216]),s[1]&520&&(u.selected=e[40].includes(e[216].id)),n.$set(u)},i(o){i||(ke(n.$$.fragment,o),i=!0)},o(o){me(n.$$.fragment,o),i=!1},d(o){o&&y(t),Ge(n,o)}}}function un(l){let e;return{c(){e=f("div"),e.innerHTML='Сканирование...
',r(e,"class","empty-state svelte-1kukkze")},m(t,n){w(t,e,n)},d(t){t&&y(e)}}}function an(l){let e,t;return e=new Fo({props:{item:l[35],content:l[36],loading:l[37],error:l[38]}}),e.$on("close",l[66]),e.$on("openExternal",l[138]),{c(){Ye(e.$$.fragment)},m(n,i){qe(e,n,i),t=!0},p(n,i){const o={};i[1]&16&&(o.item=n[35]),i[1]&32&&(o.content=n[36]),i[1]&64&&(o.loading=n[37]),i[1]&128&&(o.error=n[38]),e.$set(o)},i(n){t||(ke(e.$$.fragment,n),t=!0)},o(n){me(e.$$.fragment,n),t=!1},d(n){Ge(e,n)}}}function fn(l){let e,t,n,i,o,s,u,a,d;return{c(){e=f("div"),t=f("input"),n=h(),i=f("div"),o=f("button"),o.textContent="Создать",s=h(),u=f("button"),u.textContent="Отмена",r(t,"type","text"),r(t,"placeholder","Название заметки"),r(t,"class","svelte-1kukkze"),r(o,"class","btn btn-primary svelte-1kukkze"),r(u,"class","btn svelte-1kukkze"),r(i,"class","form-actions svelte-1kukkze"),r(e,"class","create-form svelte-1kukkze")},m(_,v){w(_,e,v),c(e,t),ce(t,l[22]),c(e,n),c(e,i),c(i,o),c(i,s),c(i,u),a||(d=[H(t,"input",l[122]),H(t,"keydown",l[123]),H(o,"click",l[89]),H(u,"click",l[88])],a=!0)},p(_,v){v[0]&4194304&&t.value!==_[22]&&ce(t,_[22])},d(_){_&&y(e),a=!1,ae(d)}}}function br(l){let e,t=ee(l[10]),n=[];for(let i=0;iНет заметокСоздайте первую заметку для этого дела.
',r(e,"class","empty-state svelte-1kukkze")},m(t,n){w(t,e,n)},p:J,d(t){t&&y(e)}}}function kn(l){let e,t,n=l[211].title+"",i,o,s,u=He(l[211].createdAt)+"",a,d,_,v;function p(){return l[124](l[211])}return{c(){e=f("div"),t=f("div"),i=N(n),o=h(),s=f("div"),a=N(u),d=h(),r(t,"class","note-card-title svelte-1kukkze"),r(s,"class","note-card-date svelte-1kukkze"),r(e,"class","note-card svelte-1kukkze")},m(m,b){w(m,e,b),c(e,t),c(t,i),c(e,o),c(e,s),c(s,a),c(e,d),_||(v=H(e,"click",p),_=!0)},p(m,b){l=m,b[0]&1024&&n!==(n=l[211].title+"")&&B(i,n),b[0]&1024&&u!==(u=He(l[211].createdAt)+"")&&B(a,u)},d(m){m&&y(e),_=!1,v()}}}function dn(l){let e,t,n,i=ee(l[10].slice(0,5)),o=[];for(let s=0;s0&&yn(l);return{c(){e=f("div"),t=f("div"),n=f("h3"),n.textContent="Новое дело",i=h(),o=f("div"),s=f("label"),s.textContent="Название",u=h(),a=f("input"),d=h(),_=f("div"),v=f("label"),v.textContent="Раздел",p=h(),m=f("select");for(let z=0;zl[153].call(m)),r(_,"class","form-group svelte-1kukkze"),r(T,"class","btn btn-primary svelte-1kukkze"),r(A,"class","btn svelte-1kukkze"),r(g,"class","modal-actions svelte-1kukkze"),r(t,"class","modal svelte-1kukkze"),r(e,"class","modal-overlay svelte-1kukkze")},m(z,I){w(z,e,I),c(e,t),c(t,n),c(t,i),c(t,o),c(o,s),c(o,u),c(o,a),ce(a,l[17]),c(t,d),c(t,_),c(_,v),c(_,p),c(_,m);for(let O=0;O0?M?M.p(z,I):(M=yn(z),M.c(),M.m(t,C)):M&&(M.d(1),M=null)},d(z){z&&y(e),Me(D,z),M&&M.d(),S=!1,ae(j)}}}function gn(l){let e,t=l[205].label+"",n,i;return{c(){e=f("option"),n=N(t),e.__value=i=l[205].id,ce(e,e.__value),r(e,"class","svelte-1kukkze")},m(o,s){w(o,e,s),c(e,n)},p(o,s){s[0]&1&&t!==(t=o[205].label+"")&&B(n,t),s[0]&1&&i!==(i=o[205].id)&&(e.__value=i,ce(e,e.__value))},d(o){o&&y(e)}}}function yn(l){let e,t,n,i,o,s,u,a=ee(l[20]),d=[];for(let _=0;_l[154].call(i)),r(e,"class","form-group svelte-1kukkze")},m(_,v){w(_,e,v),c(e,t),c(e,n),c(e,i),c(i,o);for(let p=0;pl[157].call(m)),r(_,"class","form-group svelte-1kukkze"),r(g,"class","svelte-1kukkze"),r(S,"type","text"),r(S,"placeholder",j=l[25]==="open_url"?"https://example.com":l[25]==="open_folder"||l[25]==="open_file"?"/path/to/file":"команда"),r(S,"class","svelte-1kukkze"),r(C,"class","form-group svelte-1kukkze"),r(M,"class","btn btn-primary svelte-1kukkze"),r(I,"class","btn svelte-1kukkze"),r(D,"class","modal-actions svelte-1kukkze"),r(t,"class","modal svelte-1kukkze"),r(e,"class","modal-overlay svelte-1kukkze")},m(K,E){w(K,e,E),c(e,t),c(t,n),c(t,i),c(t,o),c(o,s),c(o,u),c(o,a),ce(a,l[24]),c(t,d),c(t,_),c(_,v),c(_,p),c(_,m);for(let W=0;W⚒ Верстак ',i=h(),o=f("nav"),s=f("div"),u=f("div"),u.textContent="Разделы",a=h();for(let ie=0;ie{Ee[Ie]=null}),Ke(),W=Ee[E],W?W.p(V,ie):(W=Ee[E]=ot[E](V),W.c()),ke(W,1),W.m(z,ne)),!V[11]&&!V[8]&&V[7]!=="today"&&V[7]!=="inbox"&&V[7]!=="activity"?be?be.p(V,ie):(be=hn(V),be.c(),be.m(z,G)):be&&(be.d(1),be=null),V[16]?ge?ge.p(V,ie):(ge=bn(V),ge.c(),ge.m(z,se)):ge&&(ge.d(1),ge=null),V[23]?ye?ye.p(V,ie):(ye=zn(V),ye.c(),ye.m(z,oe)):ye&&(ye.d(1),ye=null),V[30]&&V[29]?we?we.p(V,ie):(we=Tn(V),we.c(),we.m(z,x)):we&&(we.d(1),we=null),V[46]?he?he.p(V,ie):(he=Sn(V),he.c(),he.m(z,Y)):he&&(he.d(1),he=null),V[41]?de?(de.p(V,ie),ie[1]&1024&&ke(de,1)):(de=In(V),de.c(),ke(de,1),de.m(z,Q)):de&&(Re(),me(de,1,1,()=>{de=null}),Ke()),V[49]?Ce?Ce.p(V,ie):(Ce=Dn(V),Ce.c(),Ce.m(z,null)):Ce&&(Ce.d(1),Ce=null)},i(V){ue||(ke(W),ke(de),ue=!0)},o(V){me(W),me(de),ue=!1},d(V){V&&y(e),Me(re,V),ve&&ve.d(),Le.d(),ze&&ze.d(),Se&&Se.d(),Ee[E].d(),be&&be.d(),ge&&ge.d(),ye&&ye.d(),we&&we.d(),he&&he.d(),de&&de.d(),Ce&&Ce.d(),te=!1,_e()}}}function X(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 We(l){return{note_created:"Заметка создана",note_updated:"Заметка изменена",file_added:"Файл добавлен",file_deleted:"Файл удалён",file_renamed:"Файл переименован",file_copied:"Файл скопирован",file_moved:"Файл перемещён",folder_added:"Папка добавлена",folder_deleted:"Папка удалена",folder_renamed:"Папка переименована",node_created:"Дело создано",node_updated:"Дело изменено"}[l]||l}function lt(l){return l==="note_created"||l==="file_added"||l==="folder_added"||l==="node_created"?"+":l==="file_deleted"||l==="folder_deleted"?"×":l==="file_renamed"||l==="folder_renamed"||l==="note_updated"||l==="node_updated"?"~":l==="file_copied"?"⧉":l==="file_moved"?"→":"•"}function Fe(l){if(!l)return"";try{return new Date(l).toLocaleTimeString("ru-RU",{hour:"2-digit",minute:"2-digit"})}catch{return""}}function He(l){if(!l)return"";try{return new Date(l).toLocaleDateString("ru-RU",{day:"numeric",month:"short"})}catch{return l}}function En(l){return{project:"Проект",client:"Клиент",document:"Документ",recipe:"Рецепт",archive:"Архив",case:"Дело"}[l]||l||"Дело"}function Ue(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)}const Fn=l=>l.id!=="today"&&l.id!=="inbox"&&l.id!=="activity";function wr(l,e,t){let n=[],i=[],o=null,s=[],u=0,a=!0,d=[],_="",v="",p="",m=null,b="overview",C=[],g=null,T=[],L=[],A=[],S="",j="",P=!1,D="",M="clients",z="",I=[],O=!1,q="",Z=!1,R="",K="open_url",E="",W=[{id:"open_url",label:"Открыть URL"},{id:"open_file",label:"Открыть файл"},{id:"open_folder",label:"Открыть папку"},{id:"run_command",label:"Запустить команду"},{id:"run_script",label:"Запустить скрипт"},{id:"open_terminal",label:"Открыть терминал"},{id:"launch_app",label:"Запустить приложение"}],ne=!0,G=!1,se=null,oe=!1,x="",Y=!1,Q=null,ue=[],te=[],_e=null,$="",re=!1,ve="",Ae={items:[],mode:"copy"},le=[],Le=[],ze=!1,Se="",ot="",Ee=!1,rt="Удалить",be=null,ge=null,ye=!1,we="",he="",de="",Ce=!1,Ne=null,V=!1,ie="",Ie="",je="",Be=0,pe="";const ft=[{id:"overview",label:"Обзор"},{id:"notes",label:"Заметки"},{id:"files",label:"Файлы"},{id:"actions",label:"Действия"},{id:"worklog",label:"Журнал"},{id:"activity",label:"Активность"}];let gt=null;Bn(async()=>{try{t(5,_=await X("VerstakVersion")||"verstak-gui/v2"),t(0,n=await X("ListSections")||[])}catch(k){t(6,v=String(k)),t(0,n=[{id:"today",label:"Сегодня"},{id:"inbox",label:"Неразобранное"},{id:"activity",label:"Активность"},{id:"clients",label:"Клиенты"},{id:"projects",label:"Проекты"},{id:"recipes",label:"Рецепты"},{id:"documents",label:"Документы"},{id:"archive",label:"Архив"}])}window.runtime&&window.runtime.EventsOn&&(window.runtime.EventsOn("files-dropped",vi),gt=()=>window.runtime.EventsOff("files-dropped")),window.addEventListener("keydown",Yt),t(27,ne=!1),At()}),On(()=>{gt&>(),window.removeEventListener("keydown",Yt)});async function yt(k){t(7,p=k),t(8,m=null),t(9,b="overview"),t(10,C=[]),T=[],t(12,L=[]),t(13,A=[]),t(16,P=!1),t(6,v=""),t(2,o=null),t(3,s=[]),u=0,a=!0,t(1,i=[]);try{k==="today"?t(2,o=await X("ListTodayView")||{cases:[]}):k==="activity"?(t(3,s=await X("ListActivityFeed",50,0)||[]),u=s.length,a=s.length===50):t(1,i=await X("ListNodesBySection",k)||[])}catch(F){t(6,v=String(F)),t(1,i=[]),t(2,o={cases:[]}),t(3,s=[])}}async function wt(k){t(8,m=k),t(9,b="overview"),t(10,C=[]),T=[],t(12,L=[]),t(13,A=[]),t(34,te=[]),t(33,ue=[]),t(32,Q=null),t(35,_e=null),t(36,$=""),t(40,le=[]),Le=[],t(11,g=null),t(16,P=!1),t(21,O=!1),t(6,v=""),t(4,d=[]),await Pt(k.id)}async function Pt(k){try{t(10,C=await X("ListNotes",k)||[])}catch{}try{T=await X("ListFiles",k)||[]}catch{}try{t(12,L=await X("ListActions",k)||[])}catch{}try{t(13,A=await X("ListWorklog",k)||[])}catch{}try{t(4,d=await X("ListActivityByNode",k,50,0)||[])}catch{}}async function De(k){t(31,Y=!0);try{let F=await X("ListItems",k)||[];F.sort((fe,Te)=>fe.type!==Te.type?fe.type==="folder"?-1:1:(fe.name||"").localeCompare(Te.name||"")),t(34,te=F)}catch{t(34,te=[])}t(31,Y=!1)}async function zt(k){if(m){try{const F=await X("GetNodeDetail",k);F&&t(33,ue=[...ue,{id:k,name:F.title}])}catch{t(33,ue=[...ue,{id:k,name:"..."}])}t(32,Q=k),await De(k)}}function Vt(){if(ue.length<2)t(33,ue=[]),t(32,Q=null),De(m.id);else{const k=ue[ue.length-2];t(33,ue=ue.slice(0,-1)),t(32,Q=k.id),De(k.id)}}function Rt(k){const F=ue[k];t(33,ue=ue.slice(0,k+1)),t(32,Q=F.id),De(F.id)}async function Ct(k){t(35,_e=k),t(36,$=""),t(38,ve=""),t(37,re=!0);try{uo(k)?t(36,$=await X("GetFileBase64",k.fileId)||""):ao(k)&&t(36,$=await X("ReadFileText",k.fileId)||"")}catch(F){t(38,ve=String(F))}t(37,re=!1)}function Tt(){t(35,_e=null),t(36,$=""),t(38,ve="")}async function Jn(){const k=prompt("Введите имя файла:");if(!(!k||!k.trim()))try{const F=Q||m.id;await X("CreateEmptyFile",F,k.trim()),await De(F)}catch(F){t(6,v=String(F))}}async function Kt(k){try{await X("DuplicateNode",k);const F=Q||m.id;await De(F)}catch(F){t(6,v=String(F))}}function Wt(k){const F=te.find(fe=>fe.id===k);F&&xt(F.id,F.name)}function Ut(k){t(39,Ae={items:[k],mode:"cut"})}function qt(k){t(39,Ae={items:[k],mode:"copy"})}async function Gt(){if(Ae.items.length===0)return;const k=Q||m.id;try{if(Ae.mode==="copy")for(const F of Ae.items)await X("DuplicateNode",F);else for(const F of Ae.items)await X("MoveNode",F,k);t(39,Ae={items:[],mode:"copy"}),await De(k)}catch(F){t(6,v=String(F))}}function Jt(k){le.includes(k)?t(40,le=le.filter(F=>F!==k)):t(40,le=[...le,k])}function Xt(k){t(40,le=[k])}function Xn(){t(40,le=te.map(k=>k.id))}function Zt(k){if(te.length===0)return;const F=le.length>0?le[le.length-1]:te[0].id,fe=te.findIndex(Je=>Je.id===F),Te=te.findIndex(Je=>Je.id===k);if(fe===-1||Te===-1)return;const ct=Math.min(fe,Te),Nt=Math.max(fe,Te),Ls=te.slice(ct,Nt+1).map(Je=>Je.id),cl=new Set(le);Ls.forEach(Je=>cl.add(Je)),t(40,le=[...cl])}function Zn(){t(40,le=[])}function Mt(k){return k.length>0?k:te.map(F=>F.id)}async function Yn(){var fe;const k=Mt(le),F=k.length===1&&((fe=te.find(Te=>Te.id===k[0]))==null?void 0:fe.type)==="folder"?"папку":`файлов (${k.length})`;kt({title:"Удаление",message:`Удалить ${F}?`,confirmText:"Удалить",danger:!0,onConfirm:async()=>{for(const ct of k)try{await X("DeleteFileOrFolder",ct)}catch(Nt){t(6,v=String(Nt))}t(40,le=[]);const Te=Q||m.id;await De(Te)}})}function Qn(){const k=Mt(le);t(39,Ae={items:k,mode:"cut"}),t(40,le=[])}function xn(){const k=Mt(le);t(39,Ae={items:k,mode:"copy"}),t(40,le=[])}function $n(k,F){const fe=le.includes(F)?le:[F];Le=fe,k.dataTransfer.effectAllowed="move",k.dataTransfer.setData("text/plain",fe.join(","))}function ei(k,F){const fe=te.find(Te=>Te.id===F);fe&&fe.type==="folder"&&(k.preventDefault(),k.dataTransfer.dropEffect="move")}async function ti(k,F){if(k.preventDefault(),Le.length!==0){for(const fe of Le)try{await X("MoveNode",fe,F)}catch(Te){t(6,v=String(Te))}Le=[],t(40,le=[]),await De(Q||m.id)}}function Yt(k){if(b==="files"&&!(k.target.tagName==="INPUT"||k.target.tagName==="TEXTAREA"))if(k.ctrlKey||k.metaKey)k.key==="c"||k.key==="C"?(k.preventDefault(),xn()):k.key==="x"||k.key==="X"?(k.preventDefault(),Qn()):k.key==="v"||k.key==="V"?(k.preventDefault(),Gt()):k.key==="a"||k.key==="A"?(k.preventDefault(),Xn()):k.key==="o"||k.key==="O"?(k.preventDefault(),li()):k.key==="Enter"&&(k.preventDefault(),Qt());else if(k.key==="Enter")k.preventDefault(),Qt();else if(k.key==="Delete"||k.key==="Backspace"){if(_e){k.preventDefault(),Tt();return}if(le.length>0){k.preventDefault(),Yn();return}if(k.key==="Backspace"&&ue.length>0){k.preventDefault(),Vt();return}}else if(k.key==="Escape"){if(_e){Tt();return}if(le.length>0){Zn();return}}else k.key==="F2"&&(k.preventDefault(),ni())}function Qt(){if(le.length===1){const k=te.find(F=>F.id===le[0]);k&&(k.type==="folder"?zt(k.id):Ct(k))}}function li(){if(le.length===1){const k=te.find(F=>F.id===le[0]);k&&k.fileId&&X("OpenFile",k.fileId)}}function xt(k,F){we=k,t(47,he=F),t(48,de=""),t(46,ye=!0)}function ni(){if(le.length===1){const k=te.find(F=>F.id===le[0]);k&&xt(k.id,k.name)}}async function $t(){const k=he.trim();if(!k){t(48,de="Имя не может быть пустым");return}try{await X("ValidateName",k)}catch{t(48,de="Недопустимое имя");return}t(46,ye=!1),we="";try{await X("RenameNode",we,k);const F=Q||m.id;await De(F)}catch(F){t(6,v=String(F))}}function ii(){t(46,ye=!1),we="",t(47,he=""),t(48,de="")}function si(k){k.key==="Enter"?$t():t(48,de="")}function kt(k){t(42,Se=k.title||"Подтверждение"),t(43,ot=k.message||""),t(44,Ee=k.danger!==void 0?k.danger:!0),t(45,rt=k.confirmText||"Удалить"),be=k.onConfirm||null,ge=k.onCancel||null,t(41,ze=!0)}function el(){t(41,ze=!1),be=null,ge=null}function oi(){be&&be(),el()}function ri(){ge&&ge(),el()}function ci(){t(16,P=!0),t(17,D=""),t(18,M=p||"clients"),t(19,z=""),X("ListTemplates").then(k=>{t(20,I=k||[])}).catch(()=>{t(20,I=[])})}function ui(){t(16,P=!1),t(17,D="")}async function tl(){if(D.trim())try{let k;z?k=await X("FromTemplate","","case",D.trim(),M,z):k=await X("CreateNode","","case",D.trim(),M),t(16,P=!1),t(17,D=""),t(19,z=""),await yt(M)}catch(k){t(6,v=String(k))}}function ll(){t(21,O=!0),t(22,q="")}function ai(){t(21,O=!1),t(22,q="")}async function nl(){if(!(!q.trim()||!m))try{const k=await X("CreateNote",m.id,q.trim());t(10,C=[...C,k&&k.id?k:{id:Date.now().toString(),title:q.trim(),createdAt:new Date().toISOString()}]),t(21,O=!1),t(22,q="")}catch{const F={id:Date.now().toString(),title:q.trim(),createdAt:new Date().toISOString()};t(10,C=[...C,F]),t(21,O=!1),t(22,q="")}}async function St(k){if(g&&g.dirty){kt({title:"Несохранённые изменения",message:"Закрыть редактор? Все несохранённые изменения будут потеряны.",confirmText:"Закрыть",danger:!1,onConfirm:async()=>{await il(k)}});return}await il(k)}async function il(k){try{const F=await X("ReadNote",k.id);t(11,g={id:k.id,title:k.title,content:F||"",dirty:!1})}catch{t(11,g={id:k.id,title:k.title,content:"# "+k.title+`
+
+`,dirty:!1})}}function fi(){if(g&&g.dirty){kt({title:"Несохранённые изменения",message:"Закрыть редактор? Все несохранённые изменения будут потеряны.",confirmText:"Закрыть",danger:!1,onConfirm:()=>{t(11,g=null)}});return}t(11,g=null)}function ki(k){g&&(t(11,g.content=k.target.value,g),t(11,g.dirty=!0,g))}async function di(){if(g)try{await X("SaveNote",g.id,g.content),t(11,g.dirty=!1,g)}catch{t(11,g.dirty=!1,g)}}async function pi(){const k=parseInt(S,10);if(!(!j.trim()||isNaN(k)||k<=0||!m)){try{const F=await X("CreateWorklog",m.id,j.trim(),k);t(13,A=[...A,F&&F.id?F:{id:Date.now().toString(),nodeId:m.id,summary:j.trim(),minutes:k,createdAt:new Date().toISOString()}])}catch{t(13,A=[...A,{id:Date.now().toString(),nodeId:m.id,summary:j.trim(),minutes:k,createdAt:new Date().toISOString()}])}t(15,j=""),t(14,S="")}}async function sl(){const k=await X("PickFile");k&&await Lt(m.id,k)}async function _i(){const k=await X("PickDirectory");k&&await Lt(m.id,k)}async function Lt(k,F){t(28,G=!0);try{const fe=await X("PreviewImport",F);t(29,se=fe),x=F,t(30,oe=!0)}catch(fe){t(6,v=String(fe))}t(28,G=!1)}async function It(k){try{const F=k==="copy"?await X("AddPathCopy",m.id,x):await X("AddPathLink",m.id,x);t(30,oe=!1),t(29,se=null),t(33,ue=[]),t(32,Q=null),await Promise.all([Pt(m.id),De(m.id)])}catch(F){t(6,v=String(F))}}function mi(){t(30,oe=!1),t(29,se=null)}async function ol({id:k,type:F}){kt({title:"Удаление",message:`Удалить ${F==="folder"?"папку":"файл"}?`,confirmText:"Удалить",danger:!0,onConfirm:async()=>{try{await X("DeleteFileOrFolder",k),T=T.filter(ct=>ct.nodeId!==k);const Te=Q||m.id;await De(Te)}catch(Te){t(6,v=String(Te))}}})}async function vi(k){if(!k||k.length===0)return;if(!m){t(6,v="Сначала выберите дело для добавления файлов");return}const F=k[0];await Lt(m.id,F)}function hi(k){return b===k?"tab active":"tab"}function bi(){t(23,Z=!0),t(24,R=""),t(25,K="open_url"),t(26,E="")}function gi(){t(23,Z=!1),t(24,R=""),t(26,E="")}async function Dt(){if(!(!R.trim()||!E.trim()||!m))try{const k=await X("CreateAction",m.id,K,R.trim(),E.trim());k&&k.id&&t(12,L=[...L,k]),t(23,Z=!1),t(24,R=""),t(26,E="")}catch(k){t(6,v=String(k))}}async function rl(k){try{await X("DeleteAction",k),t(12,L=L.filter(F=>F.id!==k))}catch(F){t(6,v=String(F))}}function yi(k){const F=W.find(fe=>fe.id===k);return F?F.label:k}async function Oe(k){try{const F=await X("GetNodeDetail",k);F&&wt(F)}catch(F){t(6,v=String(F))}}async function At(){try{t(50,Ne=await X("SyncStatus"))}catch{t(50,Ne={configured:!1,serverUrl:"",deviceId:"",unpushedOps:0,lastSyncAt:"",syncInterval:0})}}function wi(){t(49,Ce=!0),t(52,ie=(Ne==null?void 0:Ne.serverUrl)||""),t(53,Ie=""),t(54,je=""),t(55,Be=(Ne==null?void 0:Ne.syncInterval)||0),t(56,pe="")}function zi(){t(49,Ce=!1),t(56,pe="")}async function Ci(){t(51,V=!0),t(56,pe="");try{await X("SyncConfigure",ie,Ie,je),Be>0&&await X("SyncSetInterval",Be),t(56,pe="ok"),await At()}catch(k){t(56,pe="err: "+String(k))}t(51,V=!1)}async function Ti(){t(51,V=!0),t(56,pe="");try{await X("SyncTestConnection",ie,Ie,je),t(56,pe="connection ok")}catch(k){t(56,pe="connection failed: "+String(k))}t(51,V=!1)}async function Mi(){t(51,V=!0),t(56,pe="");try{const k=await X("SyncNow");t(56,pe="pushed "+k.pushed+", pulled "+k.pulled+" (rev "+k.serverRevision+")"),await At()}catch(k){t(56,pe="err: "+String(k))}t(51,V=!1)}const Si=k=>yt(k.id),Li=k=>wt(k),Ii=()=>t(6,v=""),Di=()=>t(6,v="");function Ai(){g.content=this.value,t(11,g)}const Ni=k=>{t(9,b=k.id),k.id==="files"&&m&&te.length===0&&!Q&&De(m.id)},Ei=()=>{t(9,b="notes"),ll()},Fi=()=>{t(9,b="files"),sl()},Hi=()=>t(9,b="worklog"),ji=k=>St(k);function Bi(){q=this.value,t(22,q)}const Oi=k=>k.key==="Enter"&&nl(),Pi=k=>St(k),Vi=k=>{const F=k.detail;F===0?(t(33,ue=[]),t(32,Q=null),De(m.id)):Rt(F-1)},Ri=k=>zt(k.detail),Ki=k=>Ct(k.detail),Wi=k=>X("OpenFile",k.detail),Ui=k=>X("OpenFolder",k.detail),qi=k=>ol(k.detail),Gi=k=>Wt(k.detail.id),Ji=k=>Kt(k.detail),Xi=k=>Ut(k.detail),Zi=k=>qt(k.detail),Yi=k=>Xt(k.detail),Qi=k=>Jt(k.detail),xi=k=>Zt(k.detail),$i=k=>X("OpenFile",k.detail),es=k=>X("RunAction",k.id),ts=k=>rl(k.id);function ls(){j=this.value,t(15,j)}function ns(){S=mt(this.value),t(14,S)}const is=k=>Oe(k.nodeId),ss=(k,F)=>F.key==="Enter"&&Oe(k.nodeId),os=k=>Oe(k.nodeId),rs=(k,F)=>F.key==="Enter"&&Oe(k.nodeId),cs=k=>Oe(k.nodeId),us=(k,F)=>F.key==="Enter"&&Oe(k.nodeId),as=k=>Oe(k.nodeId),fs=(k,F)=>F.key==="Enter"&&Oe(k.nodeId);function ks(){D=this.value,t(17,D)}const ds=k=>k.key==="Enter"&&tl();function ps(){M=Ft(this),t(18,M),t(0,n)}function _s(){z=Ft(this),t(19,z),t(20,I)}function ms(){R=this.value,t(24,R)}const vs=k=>k.key==="Enter"&&Dt();function hs(){K=Ft(this),t(25,K),t(57,W)}function bs(){E=this.value,t(26,E)}const gs=k=>k.key==="Enter"&&Dt(),ys=()=>It("copy"),ws=()=>It("link");function zs(){he=this.value,t(47,he)}function Cs(){ie=this.value,t(52,ie)}function Ts(){Ie=this.value,t(53,Ie)}function Ms(){je=this.value,t(54,je)}function Ss(){Be=mt(this.value),t(55,Be)}return[n,i,o,s,d,_,v,p,m,b,C,g,L,A,S,j,P,D,M,z,I,O,q,Z,R,K,E,ne,G,se,oe,Y,Q,ue,te,_e,$,re,ve,Ae,le,ze,Se,ot,Ee,rt,ye,he,de,Ce,Ne,V,ie,Ie,je,Be,pe,W,ft,yt,wt,De,zt,Vt,Rt,Ct,Tt,Jn,Kt,Wt,Ut,qt,Gt,Jt,Xt,Zt,$n,ei,ti,$t,ii,si,oi,ri,ci,ui,tl,ll,ai,nl,St,fi,ki,di,pi,sl,_i,It,mi,ol,hi,bi,gi,Dt,rl,yi,Oe,wi,zi,Ci,Ti,Mi,Si,Li,Ii,Di,Ai,Ni,Ei,Fi,Hi,ji,Bi,Oi,Pi,Vi,Ri,Ki,Wi,Ui,qi,Gi,Ji,Xi,Zi,Yi,Qi,xi,$i,es,ts,ls,ns,is,ss,os,rs,cs,us,as,fs,ks,ds,ps,_s,ms,vs,hs,bs,gs,ys,ws,zs,Cs,Ts,Ms,Ss]}class zr extends st{constructor(e){super(),it(this,e,wr,yr,nt,{},null,[-1,-1,-1,-1,-1,-1,-1,-1])}}new zr({target:document.getElementById("app")});
diff --git a/cmd/verstak-gui/frontend-dist/index.html b/cmd/verstak-gui/frontend-dist/index.html
index b99768f..673426f 100644
--- a/cmd/verstak-gui/frontend-dist/index.html
+++ b/cmd/verstak-gui/frontend-dist/index.html
@@ -16,8 +16,8 @@
background: #13131f;
}
-
-
+
+
diff --git a/frontend/src/App.svelte b/frontend/src/App.svelte
index dd6a040..a13baf5 100644
--- a/frontend/src/App.svelte
+++ b/frontend/src/App.svelte
@@ -1586,8 +1586,8 @@
.header { padding: 12px 24px; border-bottom: 1px solid #2a2a3c; display: flex; align-items: center; flex-shrink: 0; min-height: 48px; }
.header-left { display: flex; align-items: center; gap: 8px; flex: 1; }
.header-right { display: flex; align-items: center; gap: 8px; }
-.header-sync-btn { background: #1a1a28; border: 1px solid #2a2a3c; border-radius: 8px; padding: 6px 12px; cursor: pointer; display: inline-flex; align-items: center; gap: 6px; color: #b0b0c0; font-family: inherit; font-size: 13px; position: relative; }
-.header-sync-btn:hover { background: #222233; color: #e4e4ef; border-color: #6366f1; }
+.header-sync-btn { background: #1e1e38; border: 1px solid #6366f1; border-radius: 8px; padding: 6px 12px; cursor: pointer; display: inline-flex; align-items: center; gap: 6px; color: #c0c0f0; font-family: inherit; font-size: 13px; position: relative; }
+.header-sync-btn:hover { background: #2a2a50; color: #e4e4ef; border-color: #818cf8; }
.header-sync-btn:disabled { opacity: 0.5; cursor: not-allowed; }
.sync-badge { background: #6366f1; color: #fff; font-size: 10px; border-radius: 50%; width: 16px; height: 16px; display: inline-flex; align-items: center; justify-content: center; position: absolute; top: -6px; right: -6px; }
.crumb { font-size: 14px; font-weight: 500; }
@@ -1778,8 +1778,8 @@
.activity-feed-time { font-size: 11px; color: #555; }
/* Sync */
-.sidebar-sync-btn { background: #1a1a28; border: 1px solid #2a2a3c; border-radius: 8px; padding: 8px 12px; cursor: pointer; width: 100%; display: flex; align-items: center; gap: 8px; color: #888; font-family: inherit; font-size: 13px; }
-.sidebar-sync-btn:hover { background: #222233; color: #e4e4ef; border-color: #6366f1; }
+.sidebar-sync-btn { background: #1e1e38; border: 1px solid #6366f1; border-radius: 8px; padding: 8px 12px; cursor: pointer; width: 100%; display: flex; align-items: center; gap: 8px; color: #c0c0f0; font-family: inherit; font-size: 13px; }
+.sidebar-sync-btn:hover { background: #2a2a50; color: #e4e4ef; border-color: #818cf8; }
.sidebar-sync-label { flex: 1; text-align: left; }
.sync-dot { width: 8px; height: 8px; border-radius: 50%; background: #4a4a4a; flex-shrink: 0; }
.sync-dot.active { background: #4ade80; box-shadow: 0 0 6px rgba(74,222,128,0.5); }