Move SealShare onto Livewire Material

Replaces maryUI and daisyUI with nonameweb/livewire-material: the Vibrant
indigo scheme, a system/light/dark theme under sealshare-theme, one top
app bar with the account menu, the upload drop zone and link-ready
moments, M3 fields, dialogs instead of wire:confirm, snackbars instead of
flashed messages, a sortable admin table, and the starter-kit cleanup.
Docker builds assets after Composer; CI drops the Flux step.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01V9NnLxnPp8vaaurb3Z1MFy
This commit is contained in:
Andreas Reinhold / reini
2026-09-13 10:49:38 +02:00
co-authored by Claude Opus 5
parent 6d7120e8e2
commit c4a17b65c8
70 changed files with 3043 additions and 1680 deletions
+150
View File
@@ -0,0 +1,150 @@
/*
* Material 3 colour roles, generated by Google's material-color-utilities (spec 2025).
*
* php artisan material:scheme "#4f46e5" --variant=vibrant
*
* Regenerate rather than editing a value: every pair here (a role and its on-role) carries
* M3's contrast guarantee only as generated. The head script sets data-theme before the
* first paint; the light block also stands without it.
*/
:root,
[data-theme='light'] {
color-scheme: light;
--md-sys-color-background: #faf4ff;
--md-sys-color-on-background: #32294f;
--md-sys-color-surface: #faf4ff;
--md-sys-color-surface-dim: #dacdff;
--md-sys-color-surface-bright: #faf4ff;
--md-sys-color-surface-container-lowest: #ffffff;
--md-sys-color-surface-container-low: #f5eeff;
--md-sys-color-surface-container: #ede4ff;
--md-sys-color-surface-container-high: #e8deff;
--md-sys-color-surface-container-highest: #e2d7ff;
--md-sys-color-on-surface: #32294f;
--md-sys-color-on-surface-variant: #5f557f;
--md-sys-color-outline: #7b719c;
--md-sys-color-outline-variant: #b2a6d5;
--md-sys-color-inverse-surface: #10062d;
--md-sys-color-inverse-on-surface: #a296c4;
--md-sys-color-primary: #4a3fe2;
--md-sys-color-primary-dim: #3d2fd6;
--md-sys-color-on-primary: #f4f1ff;
--md-sys-color-primary-container: #9795ff;
--md-sys-color-on-primary-container: #14007e;
--md-sys-color-primary-fixed: #9795ff;
--md-sys-color-primary-fixed-dim: #8885ff;
--md-sys-color-on-primary-fixed: #000000;
--md-sys-color-on-primary-fixed-variant: #1a0099;
--md-sys-color-inverse-primary: #8582ff;
--md-sys-color-secondary: #6249b2;
--md-sys-color-secondary-dim: #563ca5;
--md-sys-color-on-secondary: #f7f0ff;
--md-sys-color-secondary-container: #d8caff;
--md-sys-color-on-secondary-container: #4e339c;
--md-sys-color-secondary-fixed: #d8caff;
--md-sys-color-secondary-fixed-dim: #cbbaff;
--md-sys-color-on-secondary-fixed: #3a1b88;
--md-sys-color-on-secondary-fixed-variant: #573da6;
--md-sys-color-tertiary: #983772;
--md-sys-color-tertiary-dim: #892a65;
--md-sys-color-on-tertiary: #ffeff4;
--md-sys-color-tertiary-container: #fd8bca;
--md-sys-color-on-tertiary-container: #610244;
--md-sys-color-tertiary-fixed: #fd8bca;
--md-sys-color-tertiary-fixed-dim: #ee7ebc;
--md-sys-color-on-tertiary-fixed: #360024;
--md-sys-color-on-tertiary-fixed-variant: #6d104e;
--md-sys-color-error: #b41340;
--md-sys-color-error-dim: #a20036;
--md-sys-color-on-error: #ffefef;
--md-sys-color-error-container: #f74b6d;
--md-sys-color-on-error-container: #510017;
--md-sys-color-success: #006c45;
--md-sys-color-on-success: #ffffff;
--md-sys-color-success-container: #86f9bc;
--md-sys-color-on-success-container: #002112;
--md-sys-color-warning: #7c5800;
--md-sys-color-on-warning: #ffffff;
--md-sys-color-warning-container: #ffdea6;
--md-sys-color-on-warning-container: #271900;
--md-sys-color-info: #005ac4;
--md-sys-color-on-info: #ffffff;
--md-sys-color-info-container: #d8e2ff;
--md-sys-color-on-info-container: #001a42;
--md-sys-color-inverse-error: #ff6e84;
--md-sys-color-inverse-success: #69dca1;
--md-sys-color-inverse-warning: #fdbb28;
--md-sys-color-inverse-info: #aec6ff;
}
[data-theme='dark'] {
color-scheme: dark;
--md-sys-color-background: #10062d;
--md-sys-color-on-background: #eae1ff;
--md-sys-color-surface: #10062d;
--md-sys-color-surface-dim: #10062d;
--md-sys-color-surface-bright: #30215d;
--md-sys-color-surface-container-lowest: #000000;
--md-sys-color-surface-container-low: #160b36;
--md-sys-color-surface-container: #1c113f;
--md-sys-color-surface-container-high: #231649;
--md-sys-color-surface-container-highest: #291c53;
--md-sys-color-on-surface: #eae1ff;
--md-sys-color-on-surface-variant: #b0a4d3;
--md-sys-color-outline: #7a6f9b;
--md-sys-color-outline-variant: #4b426a;
--md-sys-color-inverse-surface: #fdf7ff;
--md-sys-color-inverse-on-surface: #594f78;
--md-sys-color-primary: #a7a5ff;
--md-sys-color-primary-dim: #645dfc;
--md-sys-color-on-primary: #1c00a0;
--md-sys-color-primary-container: #9795ff;
--md-sys-color-on-primary-container: #14007e;
--md-sys-color-primary-fixed: #9795ff;
--md-sys-color-primary-fixed-dim: #8885ff;
--md-sys-color-on-primary-fixed: #000000;
--md-sys-color-on-primary-fixed-variant: #1a0099;
--md-sys-color-inverse-primary: #4d44e6;
--md-sys-color-secondary: #a98ffd;
--md-sys-color-secondary-dim: #a68dfa;
--md-sys-color-on-secondary: #280072;
--md-sys-color-secondary-container: #4d329b;
--md-sys-color-on-secondary-container: #d6c9ff;
--md-sys-color-secondary-fixed: #d8caff;
--md-sys-color-secondary-fixed-dim: #cbbaff;
--md-sys-color-on-secondary-fixed: #3a1b88;
--md-sys-color-on-secondary-fixed-variant: #573da6;
--md-sys-color-tertiary: #ff9dd1;
--md-sys-color-tertiary-dim: #fa88c8;
--md-sys-color-on-tertiary: #6c0f4d;
--md-sys-color-tertiary-container: #fa88c8;
--md-sys-color-on-tertiary-container: #5e0042;
--md-sys-color-tertiary-fixed: #fd8bca;
--md-sys-color-tertiary-fixed-dim: #ee7ebc;
--md-sys-color-on-tertiary-fixed: #360024;
--md-sys-color-on-tertiary-fixed-variant: #6d104e;
--md-sys-color-error: #ff6e84;
--md-sys-color-error-dim: #d73357;
--md-sys-color-on-error: #490013;
--md-sys-color-error-container: #a70138;
--md-sys-color-on-error-container: #ffb2b9;
--md-sys-color-success: #69dca1;
--md-sys-color-on-success: #003822;
--md-sys-color-success-container: #005233;
--md-sys-color-on-success-container: #86f9bc;
--md-sys-color-warning: #fdbb28;
--md-sys-color-on-warning: #412d00;
--md-sys-color-warning-container: #5e4200;
--md-sys-color-on-warning-container: #ffdea6;
--md-sys-color-info: #aec6ff;
--md-sys-color-on-info: #002e6a;
--md-sys-color-info-container: #004396;
--md-sys-color-on-info-container: #d8e2ff;
--md-sys-color-inverse-error: #b41340;
--md-sys-color-inverse-success: #006c45;
--md-sys-color-inverse-warning: #7c5800;
--md-sys-color-inverse-info: #005ac4;
}