Apply dark restaurant theme
Build and deploy Flutter Web / build (push) Successful in 4m44s

This commit is contained in:
Ruslan Bakiev
2026-06-22 11:16:24 +07:00
parent 9d7ed4f6e5
commit 8c23e878bb
5 changed files with 547 additions and 43 deletions
+46 -22
View File
@@ -111,38 +111,38 @@ class MapflowTheme {
const MapflowTheme._();
static const tokens = MapflowThemeTokens(
mapPanel: Color(0xFFFFFBF5),
mapPanelBorder: Color(0xFFE0D8CA),
mapShadow: Color(0x33000000),
danger: Color(0xFFE11D48),
mapPanel: Color(0xFF15111D),
mapPanelBorder: Color(0xFF2F263D),
mapShadow: Color(0x99000000),
danger: Color(0xFFFF2D75),
onDark: Colors.white,
darkSurface: Color(0xFF05030B),
darkSurfaceAlt: Color(0xFF15111D),
voiceAccent: Color(0xFFFF2D75),
voiceAccentSoft: Color(0xFFFF7A90),
voiceAccentSoft: Color(0xFFFF8BB5),
onVoiceControl: Color(0xFF090613),
snowflakeLine: Color(0xFFE6DDD2),
snowflakeNode: Color(0xFFDED3C7),
snowflakeCenter: Color(0xFF241B18),
snowflakeLabel: Color(0xFF746A60),
snowflakeLine: Color(0xFF3B304B),
snowflakeNode: Color(0xFF67567E),
snowflakeCenter: Color(0xFFFF2D75),
snowflakeLabel: Color(0xFFCFC1DE),
imageScrim: Color(0xCC000000),
panelRadius: 8,
);
static ThemeData light() {
return FlexThemeData.light(
static ThemeData dark() {
return FlexThemeData.dark(
useMaterial3: true,
colors: const FlexSchemeColor(
primary: Color(0xFF0F766E),
primaryContainer: Color(0xFFBFE7DF),
secondary: Color(0xFFE11D48),
secondaryContainer: Color(0xFFFFD9E1),
tertiary: Color(0xFF7C3AED),
tertiaryContainer: Color(0xFFE9DDFF),
appBarColor: Color(0xFFF7F3EA),
error: Color(0xFFB3261E),
primary: Color(0xFFFF2D75),
primaryContainer: Color(0xFF5B1432),
secondary: Color(0xFFB86BFF),
secondaryContainer: Color(0xFF3E205A),
tertiary: Color(0xFFFFB86B),
tertiaryContainer: Color(0xFF4F2D13),
appBarColor: Color(0xFF05030B),
error: Color(0xFFFFB4AB),
),
scaffoldBackground: const Color(0xFFF7F3EA),
scaffoldBackground: tokens.darkSurface,
surface: tokens.mapPanel,
subThemesData: const FlexSubThemesData(
defaultRadius: 8,
@@ -155,10 +155,16 @@ class MapflowTheme {
extensions: const [tokens],
).copyWith(
appBarTheme: const AppBarTheme(
backgroundColor: Color(0xFFF7F3EA),
foregroundColor: Color(0xFF17211D),
backgroundColor: Color(0xFF05030B),
foregroundColor: Colors.white,
surfaceTintColor: Colors.transparent,
),
bottomSheetTheme: const BottomSheetThemeData(
backgroundColor: Color(0xFF15111D),
modalBackgroundColor: Color(0xFF15111D),
surfaceTintColor: Colors.transparent,
dragHandleColor: Color(0xFF8F7AA7),
),
cardTheme: CardThemeData(
elevation: 0,
color: tokens.mapPanel,
@@ -168,7 +174,25 @@ class MapflowTheme {
side: BorderSide(color: tokens.mapPanelBorder),
),
),
dialogTheme: const DialogThemeData(
backgroundColor: Color(0xFF15111D),
surfaceTintColor: Colors.transparent,
),
popupMenuTheme: PopupMenuThemeData(
color: tokens.mapPanel,
surfaceTintColor: Colors.transparent,
shape: RoundedRectangleBorder(
borderRadius: BorderRadius.circular(tokens.panelRadius),
side: BorderSide(color: tokens.mapPanelBorder),
),
),
chipTheme: ChipThemeData(
backgroundColor: tokens.mapPanel,
selectedColor: const Color(0xFF5B1432),
disabledColor: const Color(0xFF211A2B),
secondarySelectedColor: const Color(0xFF5B1432),
labelStyle: const TextStyle(color: Color(0xFFF6ECFF)),
secondaryLabelStyle: const TextStyle(color: Colors.white),
shape: StadiumBorder(side: BorderSide(color: tokens.mapPanelBorder)),
),
);