f97cf6eb38
shared/fabledsword.tokens.json mirrors web/src/lib/styles/tokens.json; assets/error-copy.json mirrors the web's error-code copy table; assets/svg/album-fallback.svg mirrors the web placeholder. Together these give Flutter the same visual + copy starting point as the SPA. tool/gen_tokens.dart emits lib/theme/tokens.dart from the JSON; the generated file is committed so CI can verify the JSON and the Dart file haven't drifted (gate added in Task 21). tool/sync_shared.sh mkdirs the shared/ + assets/ destinations before copying so the script works on a fresh checkout (the original plan-text shape only mkdir'd assets/svg). pubspec.yaml assets block uncommented now that the three asset paths exist on disk.
28 lines
1.1 KiB
Dart
28 lines
1.1 KiB
Dart
// GENERATED — do not edit. Source: shared/fabledsword.tokens.json
|
|
// Run `dart run tool/gen_tokens.dart` to regenerate.
|
|
import 'package:flutter/material.dart';
|
|
|
|
class FabledSwordTokens {
|
|
static const Color obsidian = Color(0xFF14171A);
|
|
static const Color iron = Color(0xFF1E2228);
|
|
static const Color slate = Color(0xFF2C313A);
|
|
static const Color pewter = Color(0xFF3F4651);
|
|
static const Color parchment = Color(0xFFE8E4D8);
|
|
static const Color vellum = Color(0xFFC2BFB4);
|
|
static const Color ash = Color(0xFF9C9A92);
|
|
static const Color moss = Color(0xFF4A5D3F);
|
|
static const Color bronze = Color(0xFF8B7355);
|
|
static const Color oxblood = Color(0xFF6B2118);
|
|
static const Color warning = Color(0xFF8B6F1E);
|
|
static const Color error = Color(0xFFC04A1F);
|
|
static const Color info = Color(0xFF3D5A6E);
|
|
static const Color accent = Color(0xFF4A6B5C);
|
|
static const double radiusSm = 4;
|
|
static const double radiusMd = 8;
|
|
static const double radiusLg = 12;
|
|
static const double radiusXl = 16;
|
|
static const String fontDisplay = "Fraunces";
|
|
static const String fontBody = "Inter";
|
|
static const String fontMono = "JetBrains Mono";
|
|
}
|