Phase 1 MVP - Complete implementation

- Login with JWT and refresh token rotation
- Dashboard with projects cards
- ProjectView with TreeView navigation
- DocumentView with markdown editor and auto-save
- Tag management (create, assign, remove)
- Dark mode CSS variables
- Security fixes applied (logout to backend, createDocument endpoint)
This commit is contained in:
Motoko
2026-03-30 15:17:29 +00:00
commit c9cb07dbfc
1341 changed files with 1084068 additions and 0 deletions

1
dist/assets/Login-B_rHAN5Z.css vendored Normal file
View File

@@ -0,0 +1 @@
.login[data-v-d1a9e623]{min-height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;background:var(--bg-secondary)}.login__card[data-v-d1a9e623]{width:100%;max-width:400px;padding:2.5rem;background:var(--bg-primary);border:1px solid var(--border);border-radius:16px;box-shadow:0 10px 40px #0000001a}.login__header[data-v-d1a9e623]{text-align:center;margin-bottom:2rem}.login__header svg[data-v-d1a9e623]{margin-bottom:1rem}.login__title[data-v-d1a9e623]{margin:0;font-size:1.5rem;font-weight:600;color:var(--text-primary)}.login__subtitle[data-v-d1a9e623]{margin:.5rem 0 0;font-size:.9375rem;color:var(--text-secondary)}.login__form[data-v-d1a9e623]{display:flex;flex-direction:column;gap:1.25rem}.login__error[data-v-d1a9e623]{padding:.75rem 1rem;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;font-size:.875rem;color:#dc2626}.login__field[data-v-d1a9e623]{display:flex;flex-direction:column;gap:.5rem}.login__label[data-v-d1a9e623]{font-size:.875rem;font-weight:500;color:var(--text-primary)}.login__input[data-v-d1a9e623]{padding:.75rem 1rem;background:var(--bg-secondary);border:1px solid var(--border);border-radius:8px;font-size:.9375rem;color:var(--text-primary);outline:none;transition:border-color .15s,box-shadow .15s}.login__input[data-v-d1a9e623]::placeholder{color:var(--text-secondary)}.login__input[data-v-d1a9e623]:focus{border-color:var(--accent);box-shadow:0 0 0 3px #6366f11a}.login__toggle[data-v-d1a9e623]{margin:0;text-align:center;font-size:.875rem;color:var(--text-secondary)}.login__toggle-btn[data-v-d1a9e623]{background:none;border:none;padding:0;font-size:inherit;color:var(--accent);cursor:pointer;text-decoration:underline}.login__toggle-btn[data-v-d1a9e623]:hover{color:var(--accent-hover)}.login__footer[data-v-d1a9e623]{margin-top:2rem;font-size:.8125rem;color:var(--text-secondary)}