chore: bulk commit of pre-existing changes
Build & Deploy / Build & Push Docker Image (push) Successful in 48s
Test / API Unit Tests (push) Successful in 9m48s
Test / Marketplace Unit Tests (push) Successful in 9m38s
Test / Admin Unit Tests (push) Successful in 9m33s
Build & Deploy / Deploy to VPS (push) Has been cancelled
Test / Dashboard Unit Tests (push) Has been cancelled
Test / API Integration Tests (push) Has been cancelled

Includes:
- Admin dashboard layout and page updates
- API account auth module (routes, schemas, service)
- Dashboard sign-up form extraction, middleware refactor
- Marketplace proxy and middleware updates
- CORS origins expansion for dev environment
- Seed email domain correction (.com → .ma)
- Docs: create-account guide, fleet page, signup plan
- Various UI component and layout refinements
This commit is contained in:
root
2026-06-25 00:57:59 -04:00
parent 572d115003
commit 3b142ca4c7
36 changed files with 2987 additions and 1156 deletions
+163
View File
@@ -55,6 +55,169 @@ html.dark body {
}
@layer components {
.fleet-dashboard-shell {
--fleet-bg-primary: #f5f8ff;
--fleet-bg-elevated: #ffffff;
--fleet-glass-bg: rgb(255 255 255 / 0.82);
--fleet-card-bg: rgb(255 255 255 / 0.72);
--fleet-border-subtle: rgb(37 99 235 / 0.14);
--fleet-border-accent: rgb(249 115 22 / 0.30);
--fleet-text-primary: #172554;
--fleet-text-secondary: #64748b;
--fleet-accent-blue: #2563eb;
--fleet-accent-blue-light: #2563eb;
--fleet-accent-orange: #f97316;
--fleet-accent-orange-light: #ea580c;
--fleet-success: #059669;
--fleet-danger: #dc2626;
background:
radial-gradient(ellipse at 20% 20%, rgb(37 99 235 / 0.10) 0%, transparent 56%),
radial-gradient(ellipse at 82% 72%, rgb(249 115 22 / 0.08) 0%, transparent 54%),
linear-gradient(180deg, #ffffff 0%, #f5f8ff 35%, #edf4ff 100%);
color: var(--fleet-text-primary);
}
html.dark .fleet-dashboard-shell {
--fleet-bg-primary: #0a0f1a;
--fleet-bg-elevated: #111827;
--fleet-glass-bg: rgb(15 25 45 / 0.66);
--fleet-card-bg: rgb(30 58 95 / 0.28);
--fleet-border-subtle: rgb(59 130 246 / 0.14);
--fleet-text-primary: #e8edf5;
--fleet-text-secondary: #8899b4;
--fleet-accent-blue: #3b82f6;
--fleet-accent-blue-light: #60a5fa;
--fleet-accent-orange-light: #fb923c;
--fleet-success: #10b981;
--fleet-danger: #ef4444;
background:
radial-gradient(ellipse at 20% 20%, rgb(59 130 246 / 0.09) 0%, transparent 58%),
radial-gradient(ellipse at 82% 72%, rgb(249 115 22 / 0.08) 0%, transparent 56%),
linear-gradient(180deg, #0a0f1a 0%, #0d1728 46%, #08111f 100%);
}
.fleet-dashboard-shell * {
scrollbar-width: thin;
scrollbar-color: rgb(59 130 246 / 0.22) transparent;
}
.fleet-dashboard-shell *::-webkit-scrollbar {
width: 6px;
height: 6px;
}
.fleet-dashboard-shell *::-webkit-scrollbar-track {
background: transparent;
}
.fleet-dashboard-shell *::-webkit-scrollbar-thumb {
border-radius: 999px;
background: rgb(59 130 246 / 0.22);
}
.fleet-dashboard-shell .card,
.fleet-dashboard-shell .glass-card {
border-color: var(--fleet-border-subtle);
background: var(--fleet-glass-bg);
box-shadow: 0 18px 60px rgb(15 23 42 / 0.08);
backdrop-filter: blur(24px);
-webkit-backdrop-filter: blur(24px);
@apply rounded-xl border transition-colors;
}
.fleet-dashboard-shell .card:hover,
.fleet-dashboard-shell .glass-card:hover {
border-color: rgb(59 130 246 / 0.24);
box-shadow: 0 18px 60px rgb(15 23 42 / 0.10), 0 0 20px rgb(59 130 246 / 0.10);
}
html.dark .fleet-dashboard-shell .card,
html.dark .fleet-dashboard-shell .glass-card {
box-shadow: 0 18px 60px rgb(0 0 0 / 0.26);
}
html.dark .fleet-dashboard-shell .card:hover,
html.dark .fleet-dashboard-shell .glass-card:hover {
box-shadow: 0 18px 60px rgb(0 0 0 / 0.26), 0 0 20px rgb(59 130 246 / 0.12);
}
.fleet-dashboard-shell .btn-primary {
position: relative;
overflow: hidden;
box-shadow: 0 2px 10px rgb(59 130 246 / 0.30);
@apply rounded-lg bg-gradient-to-br from-blue-500 to-blue-700 text-white hover:from-blue-400 hover:to-blue-600;
}
.fleet-dashboard-shell .btn-secondary {
border-color: rgb(59 130 246 / 0.18);
background: rgb(59 130 246 / 0.08);
color: var(--fleet-text-primary);
@apply rounded-lg hover:border-blue-400/40 hover:bg-blue-500/15 hover:text-white;
}
.fleet-dashboard-shell .input-field {
border-color: rgb(59 130 246 / 0.14);
background: rgb(59 130 246 / 0.07);
color: var(--fleet-text-primary);
@apply rounded-lg placeholder:text-slate-500 focus:border-blue-400 focus:ring-blue-500/20;
}
.fleet-dashboard-shell .progress-bar {
height: 6px;
background: rgb(59 130 246 / 0.12);
@apply rounded-full;
}
.fleet-dashboard-shell .progress-fill.blue {
@apply bg-gradient-to-r from-blue-500 to-blue-400;
}
.fleet-dashboard-shell .progress-fill.orange {
@apply bg-gradient-to-r from-orange-500 to-orange-600;
}
.fleet-dashboard-shell .badge-blue {
border: 1px solid rgb(59 130 246 / 0.30);
background: rgb(59 130 246 / 0.15);
color: var(--fleet-accent-blue-light);
}
.fleet-dashboard-shell .badge-amber {
border: 1px solid rgb(249 115 22 / 0.30);
background: rgb(249 115 22 / 0.15);
color: var(--fleet-accent-orange-light);
}
.fleet-dashboard-shell .badge-green {
border: 1px solid rgb(16 185 129 / 0.28);
background: rgb(16 185 129 / 0.13);
color: #047857;
}
.fleet-dashboard-shell .badge-red {
border: 1px solid rgb(239 68 68 / 0.30);
background: rgb(239 68 68 / 0.13);
color: #dc2626;
}
.fleet-dashboard-shell .badge-gray {
border: 1px solid rgb(148 163 184 / 0.20);
background: rgb(148 163 184 / 0.10);
color: #475569;
}
html.dark .fleet-dashboard-shell .badge-green {
color: #6ee7b7;
}
html.dark .fleet-dashboard-shell .badge-red {
color: #fca5a5;
}
html.dark .fleet-dashboard-shell .badge-gray {
color: #cbd5e1;
}
.glass-card {
border-color: var(--border-accent);
background-color: var(--glass-bg);