beuiChartColor function
Parses a source CSS color: hex (#rgb / #rrggbb / #rrggbbaa) or a
handful of var(--token) aliases the chart family actually uses.
Implementation
Color beuiChartColor(String? css, BeuiColors colors, {Color? fallback}) {
if (css == null || css.isEmpty) return fallback ?? colors.primary;
final trimmed = css.trim();
if (trimmed.startsWith('var(')) {
return switch (trimmed) {
'var(--muted-foreground)' => colors.mutedForeground,
'var(--foreground)' => colors.foreground,
'var(--background)' => colors.background,
'var(--muted)' => colors.muted,
'var(--border)' => colors.border,
'var(--primary)' => colors.primary,
'var(--accent)' => colors.accent,
'var(--success)' => colors.success,
'var(--warning)' => colors.warning,
'var(--destructive)' => colors.destructive,
_ => fallback ?? colors.primary,
};
}
return _parseHex(trimmed) ?? fallback ?? colors.primary;
}