feat: auth system, scrip scheduler, UI widgets, and new API routes

- Add session-based authentication (login page, middleware, auth context)
- Add cron-like scrip scheduler for time-based conditions
- Add layout builder, scrip wizard, searchable select components
- Add trend chart widget for dashboards
- Add notifications, attachments, queue-permissions API routes
- Add seed-users script
- Update schema with 10 new migrations (0008-0017)
- Apply redesign: Linear-inspired dark theme, conversation-centric UI
- Gitignore runtime data directory

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
Gjermund Høsøien Wiggen
2026-06-15 20:42:17 +02:00
parent 1d4dc38d06
commit 70f0924d4b
59 changed files with 21795 additions and 321 deletions

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -57,6 +57,76 @@
"when": 1781009018666,
"tag": "0007_flimsy_roughhouse",
"breakpoints": true
},
{
"idx": 8,
"version": "7",
"when": 1781039674211,
"tag": "0008_sturdy_prism",
"breakpoints": true
},
{
"idx": 9,
"version": "7",
"when": 1781039770418,
"tag": "0009_tiny_lady_vermin",
"breakpoints": true
},
{
"idx": 10,
"version": "7",
"when": 1781040536590,
"tag": "0010_misty_morg",
"breakpoints": true
},
{
"idx": 11,
"version": "7",
"when": 1781042321413,
"tag": "0011_breezy_tyrannus",
"breakpoints": true
},
{
"idx": 12,
"version": "7",
"when": 1781043175153,
"tag": "0012_living_photon",
"breakpoints": true
},
{
"idx": 13,
"version": "7",
"when": 1781043729230,
"tag": "0013_bored_silvermane",
"breakpoints": true
},
{
"idx": 14,
"version": "7",
"when": 1781045611610,
"tag": "0014_cloudy_siren",
"breakpoints": true
},
{
"idx": 15,
"version": "7",
"when": 1781078349499,
"tag": "0015_tense_patch",
"breakpoints": true
},
{
"idx": 16,
"version": "7",
"when": 1781078511943,
"tag": "0016_famous_maximus",
"breakpoints": true
},
{
"idx": 17,
"version": "7",
"when": 1781095552496,
"tag": "0017_redundant_the_renegades",
"breakpoints": true
}
]
}