style: Phase 1+2 — FA→Lucide, variant-* → preset-*, dark mode forms

Phase 1 (global quick wins):
- app.css: add global dark mode utility for .input/.select/.textarea
- events menu nav + layout: replace all FontAwesome icons with Lucide
- events settings: replace FA icons, standardize variant-* → preset-*

Phase 2 (module-by-module migration):
- root +layout.svelte: fix hardcoded banner colors → preset-filled-error/warning
- journals entry list: replace slate-* with gray-*, HSL eye colors → CSS tokens
- pres mgmt presenter view: variant-soft-warning → preset-tonal-warning, FA edit → Lucide
- badges (4 files): variant-* → preset-*, FA spinner → Lucide Loader2, dynamic alert fix
- events session list + event hub: variant-soft/filled → preset-tonal/filled
- leads module (12 files): complete variant-* → preset-* migration across all
  exhibitor sign-in, QR scanner, manual search, tracking list, manage tab,
  custom questions, license list, exhibit page, lead detail page + form

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
Scott Idem
2026-03-16 11:53:07 -04:00
parent a79be722ae
commit 99df204763
25 changed files with 159 additions and 122 deletions

View File

@@ -1,7 +1,7 @@
<script lang="ts">
import { page } from '$app/state';
import { goto } from '$app/navigation';
import { Lock } from '@lucide/svelte';
import { Lock, Printer, Plus, Upload, FileText, BarChart2 } from '@lucide/svelte';
import { liveQuery } from 'dexie';
import { db_events, type Event } from '$lib/ae_events/db_events';
import { onMount } from 'svelte';
@@ -111,14 +111,14 @@
class="btn btn-primary"
onclick={() => (show_create_badge_modal = true)}
>
<span class="fas fa-plus mr-2"></span> Add New Badge
<Plus size="1em" aria-hidden="true" /> Add New Badge
</button>
<button
type="button"
class="btn btn-primary ml-2"
onclick={() => (show_upload_badge_modal = true)}
>
<span class="fas fa-upload mr-2"></span> Upload Badge
<Upload size="1em" aria-hidden="true" /> Upload Badge
List
</button>
</div>
@@ -129,22 +129,22 @@
<div class="flex flex-wrap justify-center gap-2 mt-2">
<a
href={`/events/${event_id}/badges/print_list?printed_status=not_printed`}
class="btn variant-filled-secondary"
class="btn preset-filled-secondary"
>
<span class="fas fa-print mr-2"></span> Print All Unprinted
<Printer size="1em" aria-hidden="true" /> Print All Unprinted
</a>
<a
href={`/events/${event_id}/badges/print_list?badge_type_code=guest&printed_status=not_printed`}
class="btn variant-filled-secondary"
class="btn preset-filled-secondary"
>
<span class="fas fa-print mr-2"></span> Print Unprinted
<Printer size="1em" aria-hidden="true" /> Print Unprinted
Guests
</a>
<a
href={`/events/${event_id}/badges/print_list`}
class="btn variant-filled-secondary"
class="btn preset-filled-secondary"
>
<span class="fas fa-print mr-2"></span> Print All
<Printer size="1em" aria-hidden="true" /> Print All
</a>
</div>
</div>
@@ -154,13 +154,13 @@
href={`/events/${event_id}/templates`}
class="btn btn-tertiary"
>
<span class="fas fa-file-alt mr-2"></span> Manage Badge Templates
<FileText size="1em" aria-hidden="true" /> Manage Badge Templates
</a>
<a
href={`/events/${event_id}/badges/stats`}
class="btn btn-tertiary"
>
<span class="fas fa-chart-bar mr-2"></span> Badge Printing
<BarChart2 size="1em" aria-hidden="true" /> Badge Printing
Stats
</a>
</div>
@@ -443,6 +443,6 @@
</div>
<h1 class="h1 font-black">Access Restricted</h1>
<p class="max-w-md opacity-70">Event settings require administrator access. Redirecting…</p>
<a href={`/events/${event_id}`} class="btn variant-filled-primary">Return to Event</a>
<a href={`/events/${event_id}`} class="btn preset-filled-primary">Return to Event</a>
</section>
{/if}