fix: enforce semantic contrast across admin
Local Build and Deploy / deploy (push) Successful in 44s
Local Build and Deploy / deploy (push) Successful in 44s
This commit is contained in:
1 parent
45c8178cfa
commit
f0b4bc1630
86 files changed
+438
-338
No files matched your search
@@ -883,11 +883,11 @@ export function ImportFurniClient() {
|
||||
<div className="text-[10px] text-muted-foreground">on this page</div>
|
||||
</div>
|
||||
<div className="rounded-lg border bg-card p-3">
|
||||
<div className="flex items-center gap-2 text-xs text-amber-500">
|
||||
<div className="flex items-center gap-2 text-xs text-[var(--color-warning-text-readable)]">
|
||||
<FileWarning className="w-3.5 h-3.5" />
|
||||
Missing .nitro
|
||||
</div>
|
||||
<div className="text-xl font-bold mt-1 text-amber-500">
|
||||
<div className="text-xl font-bold mt-1 text-[var(--color-warning-text-readable)]">
|
||||
{stats.missingNitro.toLocaleString()}
|
||||
</div>
|
||||
</div>
|
||||
@@ -913,12 +913,12 @@ export function ImportFurniClient() {
|
||||
<div className="rounded-lg border p-4 space-y-3 bg-card">
|
||||
<h3 className="text-sm font-semibold">Import Complete</h3>
|
||||
<div className="flex gap-4 text-sm">
|
||||
<span className="text-emerald-500">{batchSummary.succeeded} succeeded</span>
|
||||
<span className="text-[var(--color-success-text-readable)]">{batchSummary.succeeded} succeeded</span>
|
||||
{batchSummary.failed > 0 && (
|
||||
<span className="text-destructive">{batchSummary.failed} failed</span>
|
||||
)}
|
||||
{batchSummary.warnings > 0 && (
|
||||
<span className="text-amber-500">{batchSummary.warnings} with warnings</span>
|
||||
<span className="text-[var(--color-warning-text-readable)]">{batchSummary.warnings} with warnings</span>
|
||||
)}
|
||||
<span className="text-muted-foreground">
|
||||
{(batchSummary.duration / 1000).toFixed(1)}s
|
||||
@@ -937,14 +937,14 @@ export function ImportFurniClient() {
|
||||
{item.status === 'failed' ? (
|
||||
<XCircle className="w-3 h-3 text-destructive mt-0.5 shrink-0" />
|
||||
) : (
|
||||
<AlertCircle className="w-3 h-3 text-amber-500 mt-0.5 shrink-0" />
|
||||
<AlertCircle className="w-3 h-3 text-[var(--color-warning-text-readable)] mt-0.5 shrink-0" />
|
||||
)}
|
||||
<div className="min-w-0">
|
||||
<span className="font-mono">{item.classname}</span>
|
||||
{item.message && <p className="text-destructive">{item.message}</p>}
|
||||
{item.warnings?.map((w, i) => (
|
||||
// biome-ignore lint/suspicious/noArrayIndexKey: warnings list is append-only and not reordered
|
||||
<p key={i} className="text-amber-500">
|
||||
<p key={i} className="text-[var(--color-warning-text-readable)]">
|
||||
{w}
|
||||
</p>
|
||||
))}
|
||||
@@ -987,7 +987,7 @@ export function ImportFurniClient() {
|
||||
{progressStats.completed}/{progressStats.total} completed
|
||||
</span>
|
||||
{progressStats.done > 0 && (
|
||||
<span className="text-emerald-500">{progressStats.done} OK</span>
|
||||
<span className="text-[var(--color-success-text-readable)]">{progressStats.done} OK</span>
|
||||
)}
|
||||
{progressStats.failed > 0 && (
|
||||
<span className="text-destructive">{progressStats.failed} failed</span>
|
||||
@@ -999,7 +999,7 @@ export function ImportFurniClient() {
|
||||
key={item.classname}
|
||||
className="flex items-center gap-2 text-xs py-1 px-2 rounded hover:bg-muted/50"
|
||||
>
|
||||
{item.status === 'done' && <Check className="w-3 h-3 text-emerald-500 shrink-0" />}
|
||||
{item.status === 'done' && <Check className="w-3 h-3 text-[var(--color-success-text-readable)] shrink-0" />}
|
||||
{item.status === 'failed' && (
|
||||
<XCircle className="w-3 h-3 text-destructive shrink-0" />
|
||||
)}
|
||||
@@ -1049,7 +1049,7 @@ export function ImportFurniClient() {
|
||||
<span>
|
||||
{completed}/{arr.length}
|
||||
</span>
|
||||
{done > 0 && <span className="text-emerald-500">{done} OK</span>}
|
||||
{done > 0 && <span className="text-[var(--color-success-text-readable)]">{done} OK</span>}
|
||||
{failed > 0 && <span className="text-destructive">{failed} failed</span>}
|
||||
</div>
|
||||
</div>
|
||||
@@ -1062,7 +1062,7 @@ export function ImportFurniClient() {
|
||||
<h3 className="text-sm font-semibold">Regeneration Complete</h3>
|
||||
<div className="flex gap-4 text-sm">
|
||||
{regenSummary.succeeded > 0 && (
|
||||
<span className="text-emerald-500">{regenSummary.succeeded} regenerated</span>
|
||||
<span className="text-[var(--color-success-text-readable)]">{regenSummary.succeeded} regenerated</span>
|
||||
)}
|
||||
{regenSummary.failed > 0 && (
|
||||
<span className="text-destructive">{regenSummary.failed} failed</span>
|
||||
@@ -1305,7 +1305,7 @@ export function ImportFurniClient() {
|
||||
size="sm"
|
||||
onClick={regenAllMissing}
|
||||
disabled={batchRegenerating || regeneratingNitro.size > 0}
|
||||
className="h-8 text-amber-500 border-amber-500/30 hover:bg-amber-500/10"
|
||||
className="h-8 text-[var(--color-warning-text-readable)] border-[var(--color-warning-border)] hover:bg-[var(--color-warning-subtle)]"
|
||||
>
|
||||
{batchRegenerating ? (
|
||||
<Loader2 className="w-4 h-4 mr-1 animate-spin" />
|
||||
@@ -1428,11 +1428,11 @@ export function ImportFurniClient() {
|
||||
<td className="px-2 py-1.5">
|
||||
{item.alreadyImported ? (
|
||||
item.nitroExists ? (
|
||||
<Badge className="text-[10px] bg-emerald-500/15 text-emerald-500 border-0">
|
||||
<Badge className="text-[10px] bg-[var(--color-success-subtle)] text-[var(--color-success-text-readable)] border-0">
|
||||
OK
|
||||
</Badge>
|
||||
) : (
|
||||
<Badge className="text-[10px] bg-amber-500/15 text-amber-500 border-0">
|
||||
<Badge className="text-[10px] bg-[var(--color-warning-subtle)] text-[var(--color-warning-text-readable)] border-0">
|
||||
No .nitro
|
||||
</Badge>
|
||||
)
|
||||
@@ -1471,7 +1471,7 @@ export function ImportFurniClient() {
|
||||
<Button
|
||||
variant="ghost"
|
||||
size="sm"
|
||||
className="h-6 w-6 p-0 text-amber-500"
|
||||
className="h-6 w-6 p-0 text-[var(--color-warning-text-readable)]"
|
||||
onClick={() => regenNitro(item)}
|
||||
disabled={regeneratingNitro.has(item.classname)}
|
||||
>
|
||||
@@ -1576,12 +1576,12 @@ export function ImportFurniClient() {
|
||||
{item.alreadyImported && (
|
||||
<>
|
||||
{item.nitroExists ? (
|
||||
<Badge className="text-[10px] px-1.5 py-0 bg-emerald-500/15 text-emerald-500 border-emerald-500/20 gap-0.5 shrink-0">
|
||||
<Badge className="text-[10px] px-1.5 py-0 bg-[var(--color-success-subtle)] text-[var(--color-success-text-readable)] border-[var(--color-success-border)] gap-0.5 shrink-0">
|
||||
<Check className="w-2.5 h-2.5" />
|
||||
Imported
|
||||
</Badge>
|
||||
) : (
|
||||
<Badge className="text-[10px] px-1.5 py-0 bg-amber-500/15 text-amber-500 border-amber-500/20 gap-0.5 shrink-0">
|
||||
<Badge className="text-[10px] px-1.5 py-0 bg-[var(--color-warning-subtle)] text-[var(--color-warning-text-readable)] border-[var(--color-warning-border)] gap-0.5 shrink-0">
|
||||
<AlertCircle className="w-2.5 h-2.5" />
|
||||
No .nitro
|
||||
</Badge>
|
||||
@@ -1603,7 +1603,7 @@ export function ImportFurniClient() {
|
||||
<Button
|
||||
variant="ghost"
|
||||
size="sm"
|
||||
className="h-5 w-5 p-0 shrink-0 text-amber-500"
|
||||
className="h-5 w-5 p-0 shrink-0 text-[var(--color-warning-text-readable)]"
|
||||
title="Regenerate .nitro file"
|
||||
disabled={regeneratingNitro.has(item.classname)}
|
||||
onClick={(e) => {
|
||||
@@ -1770,7 +1770,7 @@ export function ImportFurniClient() {
|
||||
)}
|
||||
{reorgPreview.repriced > 0 && (
|
||||
<div className="rounded-lg border p-3 text-center">
|
||||
<p className="text-lg font-bold text-amber-500">{reorgPreview.repriced}</p>
|
||||
<p className="text-lg font-bold text-[var(--color-warning-text-readable)]">{reorgPreview.repriced}</p>
|
||||
<p className="text-xs text-muted-foreground">Prices to update</p>
|
||||
</div>
|
||||
)}
|
||||
|
||||
@@ -83,7 +83,7 @@ function CopyClassname({ value }: { value: string }) {
|
||||
>
|
||||
<span className="truncate">{value}</span>
|
||||
{copied ? (
|
||||
<Check className="w-3 h-3 text-green-500 shrink-0" />
|
||||
<Check className="w-3 h-3 text-[var(--color-success-text-readable)] shrink-0" />
|
||||
) : (
|
||||
<Copy className="w-3 h-3 shrink-0" />
|
||||
)}
|
||||
|
||||
Reference in new issue
Block a user