Move map visuals into theme tokens
Build and deploy Flutter Web / build (push) Successful in 2m15s

This commit is contained in:
Ruslan Bakiev
2026-06-12 14:41:11 +07:00
parent 2853cc2581
commit 479dc25847
4 changed files with 134 additions and 48 deletions
+60
View File
@@ -9,6 +9,16 @@ class MapflowThemeTokens extends ThemeExtension<MapflowThemeTokens> {
required this.mapShadow,
required this.danger,
required this.onDark,
required this.darkSurface,
required this.darkSurfaceAlt,
required this.voiceAccent,
required this.voiceAccentSoft,
required this.onVoiceControl,
required this.snowflakeLine,
required this.snowflakeNode,
required this.snowflakeCenter,
required this.snowflakeLabel,
required this.imageScrim,
required this.panelRadius,
});
@@ -17,6 +27,16 @@ class MapflowThemeTokens extends ThemeExtension<MapflowThemeTokens> {
final Color mapShadow;
final Color danger;
final Color onDark;
final Color darkSurface;
final Color darkSurfaceAlt;
final Color voiceAccent;
final Color voiceAccentSoft;
final Color onVoiceControl;
final Color snowflakeLine;
final Color snowflakeNode;
final Color snowflakeCenter;
final Color snowflakeLabel;
final Color imageScrim;
final double panelRadius;
@override
@@ -26,6 +46,16 @@ class MapflowThemeTokens extends ThemeExtension<MapflowThemeTokens> {
Color? mapShadow,
Color? danger,
Color? onDark,
Color? darkSurface,
Color? darkSurfaceAlt,
Color? voiceAccent,
Color? voiceAccentSoft,
Color? onVoiceControl,
Color? snowflakeLine,
Color? snowflakeNode,
Color? snowflakeCenter,
Color? snowflakeLabel,
Color? imageScrim,
double? panelRadius,
}) {
return MapflowThemeTokens(
@@ -34,6 +64,16 @@ class MapflowThemeTokens extends ThemeExtension<MapflowThemeTokens> {
mapShadow: mapShadow ?? this.mapShadow,
danger: danger ?? this.danger,
onDark: onDark ?? this.onDark,
darkSurface: darkSurface ?? this.darkSurface,
darkSurfaceAlt: darkSurfaceAlt ?? this.darkSurfaceAlt,
voiceAccent: voiceAccent ?? this.voiceAccent,
voiceAccentSoft: voiceAccentSoft ?? this.voiceAccentSoft,
onVoiceControl: onVoiceControl ?? this.onVoiceControl,
snowflakeLine: snowflakeLine ?? this.snowflakeLine,
snowflakeNode: snowflakeNode ?? this.snowflakeNode,
snowflakeCenter: snowflakeCenter ?? this.snowflakeCenter,
snowflakeLabel: snowflakeLabel ?? this.snowflakeLabel,
imageScrim: imageScrim ?? this.imageScrim,
panelRadius: panelRadius ?? this.panelRadius,
);
}
@@ -52,6 +92,16 @@ class MapflowThemeTokens extends ThemeExtension<MapflowThemeTokens> {
mapShadow: Color.lerp(mapShadow, other.mapShadow, t)!,
danger: Color.lerp(danger, other.danger, t)!,
onDark: Color.lerp(onDark, other.onDark, t)!,
darkSurface: Color.lerp(darkSurface, other.darkSurface, t)!,
darkSurfaceAlt: Color.lerp(darkSurfaceAlt, other.darkSurfaceAlt, t)!,
voiceAccent: Color.lerp(voiceAccent, other.voiceAccent, t)!,
voiceAccentSoft: Color.lerp(voiceAccentSoft, other.voiceAccentSoft, t)!,
onVoiceControl: Color.lerp(onVoiceControl, other.onVoiceControl, t)!,
snowflakeLine: Color.lerp(snowflakeLine, other.snowflakeLine, t)!,
snowflakeNode: Color.lerp(snowflakeNode, other.snowflakeNode, t)!,
snowflakeCenter: Color.lerp(snowflakeCenter, other.snowflakeCenter, t)!,
snowflakeLabel: Color.lerp(snowflakeLabel, other.snowflakeLabel, t)!,
imageScrim: Color.lerp(imageScrim, other.imageScrim, t)!,
panelRadius: lerpDouble(panelRadius, other.panelRadius, t),
);
}
@@ -66,6 +116,16 @@ class MapflowTheme {
mapShadow: Color(0x33000000),
danger: Color(0xFFE11D48),
onDark: Colors.white,
darkSurface: Color(0xFF05030B),
darkSurfaceAlt: Color(0xFF15111D),
voiceAccent: Color(0xFFFF2D75),
voiceAccentSoft: Color(0xFFFF7A90),
onVoiceControl: Color(0xFF090613),
snowflakeLine: Color(0xFFE6DDD2),
snowflakeNode: Color(0xFFDED3C7),
snowflakeCenter: Color(0xFF241B18),
snowflakeLabel: Color(0xFF746A60),
imageScrim: Color(0xCC000000),
panelRadius: 8,
);