Simplify modal, badge, and component styles to dark-first (#29)
All checks were successful
CI / backend-lint (push) Successful in 9s
CI / actions-lint (push) Successful in 16s
CI / frontend-lint (push) Successful in 20s

Co-authored-by: Julian Tabel <juliantabel.jt@gmail.com>
Co-committed-by: Julian Tabel <juliantabel.jt@gmail.com>
This commit was merged in pull request #29.
This commit is contained in:
2026-02-17 21:08:53 +01:00
committed by TheFurya
parent 42b66ee9a2
commit 92dad22981
32 changed files with 163 additions and 227 deletions

View File

@@ -95,7 +95,7 @@ function SortableRouteGroup({
<tbody
ref={setNodeRef}
style={style}
className={`${isDragging ? 'opacity-50 bg-blue-50 dark:bg-blue-900/20' : ''} divide-y divide-border-default`}
className={`${isDragging ? 'opacity-50 bg-accent-900/20' : ''} divide-y divide-border-default`}
>
<tr className="hover:bg-surface-2 cursor-pointer" onClick={() => onClick(group)}>
<td className="px-4 py-3 text-sm w-12">
@@ -103,7 +103,7 @@ function SortableRouteGroup({
{...attributes}
{...listeners}
onClick={(e) => e.stopPropagation()}
className="cursor-grab active:cursor-grabbing text-gray-400 hover:text-text-secondary touch-none"
className="cursor-grab active:cursor-grabbing text-text-tertiary hover:text-text-secondary touch-none"
title="Drag to reorder"
>
<svg width="16" height="16" viewBox="0 0 16 16" fill="currentColor">
@@ -189,7 +189,7 @@ function SortableBossRow({
<tr
ref={setNodeRef}
style={style}
className={`${isDragging ? 'opacity-50 bg-blue-50 dark:bg-blue-900/20' : ''} hover:bg-surface-2 cursor-pointer`}
className={`${isDragging ? 'opacity-50 bg-accent-900/20' : ''} hover:bg-surface-2 cursor-pointer`}
onClick={() => onClick(boss)}
>
<td className="px-4 py-3 text-sm w-12">
@@ -197,7 +197,7 @@ function SortableBossRow({
{...attributes}
{...listeners}
onClick={(e) => e.stopPropagation()}
className="cursor-grab active:cursor-grabbing text-gray-400 hover:text-text-secondary touch-none"
className="cursor-grab active:cursor-grabbing text-text-tertiary hover:text-text-secondary touch-none"
title="Drag to reorder"
>
<svg width="16" height="16" viewBox="0 0 16 16" fill="currentColor">
@@ -287,8 +287,8 @@ export function AdminGameDetail() {
useSensor(KeyboardSensor, { coordinateGetter: sortableKeyboardCoordinates })
)
if (isLoading) return <div className="py-8 text-center text-gray-500">Loading...</div>
if (!game) return <div className="py-8 text-center text-gray-500">Game not found</div>
if (isLoading) return <div className="py-8 text-center text-text-secondary">Loading...</div>
if (!game) return <div className="py-8 text-center text-text-secondary">Game not found</div>
const routes = game.routes ?? []
const routeGroups = organizeRoutes(routes)
@@ -362,7 +362,7 @@ export function AdminGameDetail() {
onClick={() => setTab('routes')}
className={`px-4 py-2 text-sm font-medium border-b-2 -mb-px ${
tab === 'routes'
? 'border-blue-600 text-blue-600 dark:border-blue-400 dark:text-blue-400'
? 'border-accent-400 text-accent-400'
: 'border-transparent text-text-tertiary hover:text-text-secondary'
}`}
>
@@ -372,7 +372,7 @@ export function AdminGameDetail() {
onClick={() => setTab('bosses')}
className={`px-4 py-2 text-sm font-medium border-b-2 -mb-px ${
tab === 'bosses'
? 'border-blue-600 text-blue-600 dark:border-blue-400 dark:text-blue-400'
? 'border-accent-400 text-accent-400'
: 'border-transparent text-text-tertiary hover:text-text-secondary'
}`}
>

View File

@@ -28,8 +28,9 @@ export function AdminGenlockeDetail() {
const [addingLeg, setAddingLeg] = useState(false)
const [selectedGameId, setSelectedGameId] = useState<number | ''>('')
if (isLoading) return <div className="py-8 text-center text-gray-500">Loading...</div>
if (!genlocke) return <div className="py-8 text-center text-gray-500">Genlocke not found</div>
if (isLoading) return <div className="py-8 text-center text-text-secondary">Loading...</div>
if (!genlocke)
return <div className="py-8 text-center text-text-secondary">Genlocke not found</div>
const editName = name ?? genlocke.name
const editStatus = status ?? genlocke.status
@@ -108,7 +109,7 @@ export function AdminGenlockeDetail() {
</button>
<button
onClick={() => setShowDelete(true)}
className="px-4 py-2 text-sm font-medium rounded-md border border-red-300 dark:border-red-600 text-status-failed hover:bg-red-50 dark:hover:bg-red-900/20"
className="px-4 py-2 text-sm font-medium rounded-md border border-red-600 text-status-failed hover:bg-red-900/20"
>
Delete
</button>
@@ -229,7 +230,7 @@ export function AdminGenlockeDetail() {
Run #{leg.runId}
</Link>
) : (
<span className="text-gray-400">&mdash;</span>
<span className="text-text-tertiary">&mdash;</span>
)}
</td>
<td className="px-4 py-3 text-sm whitespace-nowrap">
@@ -246,7 +247,7 @@ export function AdminGenlockeDetail() {
{leg.runStatus}
</span>
) : (
<span className="text-gray-400">&mdash;</span>
<span className="text-text-tertiary">&mdash;</span>
)}
</td>
<td className="px-4 py-3 text-sm whitespace-nowrap">{leg.encounterCount}</td>
@@ -260,7 +261,7 @@ export function AdminGenlockeDetail() {
? 'Cannot remove a leg with a linked run'
: 'Remove leg'
}
className="text-status-failed hover:text-red-800 dark:hover:text-red-300 disabled:opacity-30 disabled:cursor-not-allowed"
className="text-status-failed hover:text-red-300 disabled:opacity-30 disabled:cursor-not-allowed"
>
Remove
</button>