mirror of
https://github.com/Memo-2023/mana-monorepo.git
synced 2026-05-14 20:21:09 +02:00
feat(firsts): add first-times module with dream-to-lived tracking
New module for tracking first-time experiences with two phases: - Dream: bucket-list items with priority and motivation - Lived: documented moments with expectation-vs-reality, rating, people, places, and media Includes: - Full module scaffold (types, collections, queries, store, config) - ListView with 3 tabs (Timeline, Dreams, People) - Inline editor + dream-to-lived conversion sheet - Encryption for all user-typed content - Dexie schema v6, app-registry, DragType registration - App icon (amber-rose sparkle) and branding entry Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
e943ac9d94
commit
ab62157a98
14 changed files with 1875 additions and 1 deletions
|
|
@ -156,6 +156,11 @@ export const APP_ICONS = {
|
|||
// modules (planta, nutriphi) and the pink cycles icon.
|
||||
`<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><defs><linearGradient id="bd" x1="0%" y1="0%" x2="100%" y2="100%"><stop offset="0%" style="stop-color:#ef4444"/><stop offset="100%" style="stop-color:#f97316"/></linearGradient></defs><rect width="100" height="100" rx="22" fill="url(#bd)"/><rect x="18" y="42" width="6" height="16" rx="2" fill="white"/><rect x="76" y="42" width="6" height="16" rx="2" fill="white"/><rect x="24" y="46" width="4" height="8" rx="1" fill="white" fill-opacity="0.85"/><rect x="72" y="46" width="4" height="8" rx="1" fill="white" fill-opacity="0.85"/><rect x="28" y="48" width="44" height="4" rx="2" fill="white"/><path d="M30 70h12l4-8 6 16 4-10 6 6h12" stroke="white" stroke-width="3.5" stroke-linecap="round" stroke-linejoin="round" fill="none"/></svg>`
|
||||
),
|
||||
firsts: svgToDataUrl(
|
||||
// Sparkle/star burst — represents a special "first time" moment.
|
||||
// Warm amber→rose gradient to evoke excitement and novelty.
|
||||
`<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><defs><linearGradient id="fi" x1="0%" y1="0%" x2="100%" y2="100%"><stop offset="0%" style="stop-color:#f59e0b"/><stop offset="100%" style="stop-color:#e11d48"/></linearGradient></defs><rect width="100" height="100" rx="22" fill="url(#fi)"/><path d="M50 18l5 14 14-5-10 11 10 11-14-5-5 14-5-14-14 5 10-11-10-11 14 5z" fill="white"/><circle cx="28" cy="70" r="4" fill="white" fill-opacity="0.6"/><circle cx="72" cy="68" r="3" fill="white" fill-opacity="0.5"/><circle cx="38" cy="80" r="2.5" fill="white" fill-opacity="0.4"/><circle cx="65" cy="82" r="2" fill="white" fill-opacity="0.35"/></svg>`
|
||||
),
|
||||
who: svgToDataUrl(
|
||||
// Theatre mask silhouette in front of a question mark — references
|
||||
// the "guess who's behind the disguise" mechanic. Purple gradient.
|
||||
|
|
|
|||
|
|
@ -25,7 +25,8 @@ export type DragType =
|
|||
| 'transaction'
|
||||
| 'place'
|
||||
| 'dream'
|
||||
| 'journal-entry';
|
||||
| 'journal-entry'
|
||||
| 'first';
|
||||
|
||||
export interface DragPayload<T = Record<string, unknown>> {
|
||||
type: DragType;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue