cake_wallet/lib/themes/monero_light_theme.dart

160 lines
6.6 KiB
Dart
Raw Normal View History

2023-07-07 15:41:00 +00:00
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';
2023-07-07 15:41:00 +00:00
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));
2023-07-07 15:41:00 +00:00
@override
ThemeData get themeData => super.themeData.copyWith(
dividerColor: pickerTheme.dividerColor,
hintColor: colorScheme.secondary,
dialogTheme: super
.themeData
.dialogTheme
.copyWith(backgroundColor: containerColor));
}