import 'package:cake_wallet/themes/extensions/account_list_theme.dart'; import 'package:cake_wallet/themes/extensions/address_theme.dart'; import 'package:cake_wallet/themes/extensions/alert_theme.dart'; import 'package:cake_wallet/themes/extensions/balance_page_theme.dart'; import 'package:cake_wallet/themes/extensions/cake_text_theme.dart'; import 'package:cake_wallet/themes/extensions/dashboard_page_theme.dart'; import 'package:cake_wallet/themes/extensions/exchange_page_theme.dart'; import 'package:cake_wallet/themes/extensions/filter_theme.dart'; import 'package:cake_wallet/themes/extensions/indicator_dot_theme.dart'; import 'package:cake_wallet/themes/extensions/menu_theme.dart'; import 'package:cake_wallet/themes/extensions/new_wallet_theme.dart'; import 'package:cake_wallet/themes/extensions/qr_code_theme.dart'; import 'package:cake_wallet/themes/extensions/receive_page_theme.dart'; import 'package:cake_wallet/themes/extensions/seed_widget_theme.dart'; import 'package:cake_wallet/themes/extensions/send_page_theme.dart'; import 'package:cake_wallet/themes/extensions/sync_indicator_theme.dart'; import 'package:cake_wallet/themes/extensions/transaction_trade_theme.dart'; import 'package:cake_wallet/themes/extensions/wallet_list_theme.dart'; import 'package:cake_wallet/themes/light_theme.dart'; import 'package:cake_wallet/palette.dart'; import 'package:cake_wallet/generated/i18n.dart'; import 'package:flutter/material.dart'; class MoneroLightTheme extends LightTheme { MoneroLightTheme({required int raw}) : super(raw: raw); @override String get title => S.current.monero_light_theme; @override Color get primaryColor => Palette.moneroOrange; @override Color get containerColor => Palette.moneroLightOrange; @override Color get primaryTextColor => colorScheme.onPrimaryContainer; @override Color get dialogBackgroundColor => containerColor; @override SyncIndicatorTheme get syncIndicatorStyle => super.syncIndicatorStyle.copyWith( textColor: primaryTextColor, syncedBackgroundColor: colorScheme.primaryContainer, notSyncedBackgroundColor: containerColor.withOpacity(0.75)); @override ExchangePageTheme get exchangePageTheme => super.exchangePageTheme.copyWith( qrCodeColor: primaryTextColor, buttonBackgroundColor: containerColor, secondGradientBottomPanelColor: primaryColor.withOpacity(0.7), firstGradientBottomPanelColor: colorScheme.primary.withOpacity(0.7), secondGradientTopPanelColor: primaryColor, firstGradientTopPanelColor: colorScheme.primary, textFieldBorderBottomPanelColor: colorScheme.surfaceVariant, textFieldBorderTopPanelColor: colorScheme.surfaceVariant, receiveAmountColor: colorScheme.surfaceVariant); @override NewWalletTheme get newWalletTheme => super.newWalletTheme.copyWith( hintTextColor: colorScheme.secondary, underlineColor: colorScheme.secondary); @override AddressTheme get addressTheme => super.addressTheme.copyWith(actionButtonColor: containerColor); @override DashboardPageTheme get dashboardPageTheme => super.dashboardPageTheme.copyWith( indicatorDotTheme: IndicatorDotTheme( indicatorColor: colorScheme.secondaryContainer, activeIndicatorColor: colorScheme.inversePrimary)); @override BalancePageTheme get balancePageTheme => super.balancePageTheme.copyWith( textColor: primaryTextColor.withOpacity(0.67), labelTextColor: colorScheme.secondary); @override CakeMenuTheme get menuTheme => super.menuTheme.copyWith( headerFirstGradientColor: colorScheme.primary, headerSecondGradientColor: primaryColor, dividerColor: colorScheme.secondaryContainer, iconColor: colorScheme.secondaryContainer, settingActionsIconColor: colorScheme.secondary); @override FilterTheme get filterTheme => super.filterTheme.copyWith( checkboxFirstGradientColor: colorScheme.secondaryContainer, checkboxSecondGradientColor: colorScheme.inversePrimary, checkboxBoundsColor: PaletteDark.wildVioletBlue, checkboxBackgroundColor: PaletteDark.wildVioletBlue.withOpacity(0.3), buttonColor: containerColor, iconColor: colorScheme.secondary); @override WalletListTheme get walletListTheme => super.walletListTheme.copyWith( restoreWalletButtonTextColor: Colors.white, createNewWalletButtonBackgroundColor: primaryColor); @override SendPageTheme get sendPageTheme => super.sendPageTheme.copyWith( templateTitleColor: primaryTextColor, templateBackgroundColor: containerColor, templateNewTextColor: primaryTextColor, templateDottedBorderColor: colorScheme.primaryContainer, secondGradientColor: primaryColor, firstGradientColor: colorScheme.primary, indicatorDotColor: dashboardPageTheme.indicatorDotTheme.indicatorColor); @override SeedWidgetTheme get seedWidgetTheme => super.seedWidgetTheme.copyWith(hintTextColor: colorScheme.secondary); @override TransactionTradeTheme get transactionTradeTheme => super.transactionTradeTheme.copyWith( detailsTitlesColor: colorScheme.secondary, rowsColor: containerColor); @override CakeTextTheme get cakeTextTheme => super.cakeTextTheme.copyWith( titleColor: primaryTextColor, secondaryTextColor: colorScheme.secondary, addressButtonBorderColor: primaryColor.withOpacity(0.2), dateSectionRowColor: colorScheme.secondary, textfieldUnderlineColor: colorScheme.secondary.withOpacity(0.5)); @override AccountListTheme get accountListTheme => super.accountListTheme.copyWith(tilesBackgroundColor: containerColor); @override ReceivePageTheme get receivePageTheme => super.receivePageTheme.copyWith( currentTileBackgroundColor: primaryColor, tilesBackgroundColor: containerColor, tilesTextColor: primaryTextColor, iconsBackgroundColor: colorScheme.surfaceVariant, iconsColor: colorScheme.onSurfaceVariant, amountBottomBorderColor: primaryTextColor, amountHintTextColor: primaryTextColor, currentTileTextColor: Colors.white); @override QRCodeTheme get qrCodeTheme => super .qrCodeTheme .copyWith(qrWidgetCopyButtonColor: colorScheme.secondary); @override AlertTheme get alertTheme => super .alertTheme .copyWith(backdropColor: colorScheme.inverseSurface.withOpacity(0.75)); @override ThemeData get themeData => super.themeData.copyWith( dividerColor: pickerTheme.dividerColor, hintColor: colorScheme.secondary, dialogTheme: super .themeData .dialogTheme .copyWith(backgroundColor: containerColor)); }