feat: lightroom-style workspace UI with album covers
Backend: - expose cover thumbnail URL on album responses (LEFT JOIN + presign) - auto-assign cover only when empty; FK cover_photo_id -> photos ON DELETE SET NULL - add photos_count / members_count to album responses; cover repo test Frontend: - split layouts into (app) shell (resizable rail + contextual panel) and (public) - album rail + create-album dialog; album panel with cover picker / make-cover - photo viewer route with filmstrip, replacing lightbox; share reuses it - grid density slider, toolbar + drag-and-drop upload, dark graphite default OpenSpec: add lightroom-workspace-ui change (proposal, design, specs, tasks)
This commit is contained in:
+11
-5
@@ -15,22 +15,26 @@
|
||||
--primary-fg: 0 0% 100%;
|
||||
--danger: 0 84% 60%;
|
||||
--success: 142 71% 45%;
|
||||
--chrome: 0 0% 98%;
|
||||
--canvas: 0 0% 100%;
|
||||
--shadow: 0 0% 0% / 0.08;
|
||||
}
|
||||
|
||||
/* Тёмная */
|
||||
/* Тёмная (графит Lightroom) */
|
||||
[data-theme='dark'] {
|
||||
--bg: 0 0% 7%;
|
||||
--bg-elevated: 0 0% 11%;
|
||||
--bg-muted: 0 0% 16%;
|
||||
--bg: 0 0% 9%;
|
||||
--bg-elevated: 0 0% 15%;
|
||||
--bg-muted: 0 0% 18%;
|
||||
--border: 0 0% 22%;
|
||||
--text: 0 0% 96%;
|
||||
--text: 0 0% 92%;
|
||||
--text-muted: 0 0% 65%;
|
||||
--text-subtle: 0 0% 45%;
|
||||
--primary: 217 91% 60%;
|
||||
--primary-fg: 0 0% 100%;
|
||||
--danger: 0 84% 65%;
|
||||
--success: 142 65% 50%;
|
||||
--chrome: 0 0% 13%;
|
||||
--canvas: 0 0% 9%;
|
||||
--shadow: 0 0% 0% / 0.4;
|
||||
}
|
||||
|
||||
@@ -47,6 +51,8 @@
|
||||
--primary-fg: 0 0% 100%;
|
||||
--danger: 0 72% 55%;
|
||||
--success: 142 55% 42%;
|
||||
--chrome: 40 22% 92%;
|
||||
--canvas: 40 20% 96%;
|
||||
--shadow: 30 20% 20% / 0.12;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user