import 'package:flutter/material.dart'; import '../core/app_export.dart'; extension on TextStyle { TextStyle get poppins { return copyWith( fontFamily: 'Poppins', ); } TextStyle get openSans { return copyWith( fontFamily: 'Open Sans', ); } TextStyle get roboto { return copyWith( fontFamily: 'Roboto', ); } TextStyle get montserrat { return copyWith( fontFamily: 'Montserrat', ); } TextStyle get dMSans { return copyWith( fontFamily: 'DM Sans', ); } TextStyle get sourceSansPro { return copyWith( fontFamily: 'Source Sans Pro', ); } TextStyle get dMMono { return copyWith( fontFamily: 'DM Mono', ); } TextStyle get sFProText { return copyWith( fontFamily: 'SF Pro Text', ); } TextStyle get hammersmithOne { return copyWith( fontFamily: 'Hammersmith One', ); } TextStyle get urbanist { return copyWith( fontFamily: 'Urbanist', ); } TextStyle get sFPro { return copyWith( fontFamily: 'SF Pro', ); } } /// A collection of pre-defined text styles for customizing text appearance, /// categorized by different font families and weights. /// Additionally, this class includes extensions on [TextStyle] to easily apply specific font families to text. class CustomTextStyles { static get titleLargePoppinsBlack40 => theme.textTheme.titleMedium!.poppins.copyWith( color: Colors.black, fontWeight: FontWeight.bold, fontSize: 40.fSize, ); static get titleSmallPoppinsWhite => theme.textTheme.titleSmall!.poppins.copyWith( color: Colors.white, fontWeight: FontWeight.bold, fontSize: 22.fSize, ); static get titleSmallRed700 => theme.textTheme.titleSmall!.copyWith( color: appTheme.red700, fontWeight: FontWeight.w700, ); static get titleLargePoppinsBlack => theme.textTheme.titleMedium!.poppins.copyWith( color: Colors.black, fontSize: 30.fSize, ); static get titleMediumMediumWhit => theme.textTheme.titleMedium!.copyWith( fontSize: 16.fSize, fontWeight: FontWeight.w500, color: Colors.white); // Headline text style static get headlineLargePoppinsBlack900 => theme.textTheme.headlineLarge!.poppins.copyWith( color: appTheme.black900, fontWeight: FontWeight.w700, ); // Label text style static get labelLargeCyan900 => theme.textTheme.labelLarge!.copyWith( color: appTheme.cyan900, ); static get labelLargeGray500 => theme.textTheme.labelLarge!.copyWith( color: appTheme.gray500, fontWeight: FontWeight.w500, ); // Title text style static get titleSmallMontserratBlack900 => theme.textTheme.titleSmall!.montserrat.copyWith( color: appTheme.black900, fontSize: 14.fSize, fontWeight: FontWeight.w700, ); static get titleSmallPoppinsWhiteA700 => theme.textTheme.titleSmall!.poppins.copyWith( color: appTheme.whiteA700, fontSize: 14.fSize, fontWeight: FontWeight.w700, ); static get headlineSmallBlack900 => theme.textTheme.headlineSmall!.copyWith( color: appTheme.black900, fontWeight: FontWeight.w500, ); static get headlineSmallBlack900_1 => theme.textTheme.headlineSmall!.copyWith( color: appTheme.black900, ); // Headline text style static get headlineLargeGray900 => theme.textTheme.headlineLarge!.copyWith( color: appTheme.gray900, ); // Title text style static get titleMedium18 => theme.textTheme.titleMedium!.copyWith( fontSize: 18.fSize, ); static get titleMediumErrorContainer => theme.textTheme.titleMedium!.copyWith( color: theme.colorScheme.errorContainer, fontWeight: FontWeight.w500, ); static get titleMediumPrimary => theme.textTheme.titleMedium!.copyWith( color: theme.colorScheme.primary, fontSize: 18.fSize, ); static get titleSmallDeeppurpleA400 => theme.textTheme.titleSmall!.copyWith( color: appTheme.deepPurpleA400, fontWeight: FontWeight.w700, ); static get titleSmallErrorContainer => theme.textTheme.titleSmall!.copyWith( color: theme.colorScheme.errorContainer, ); static get titleSmallGray600 => theme.textTheme.titleSmall!.copyWith( color: appTheme.gray600, fontSize: 14.fSize, fontWeight: FontWeight.w600, ); static get titleSmallPoppinsBlack900 => theme.textTheme.titleSmall!.poppins.copyWith( color: appTheme.black900, ); static get titleSmallPoppinsDeeppurpleA400 => theme.textTheme.titleSmall!.poppins.copyWith( color: appTheme.deepPurpleA400, fontWeight: FontWeight.w700, ); static get titleSmallPoppinsGray90001 => theme.textTheme.titleSmall!.poppins.copyWith( color: appTheme.gray90001, ); static get titleSmallPoppinsPrimaryContainer => theme.textTheme.titleSmall!.poppins.copyWith( color: theme.colorScheme.primaryContainer, fontWeight: FontWeight.w600, ); static get titleSmallPoppinsPrimaryContainer_1 => theme.textTheme.titleSmall!.poppins.copyWith( color: theme.colorScheme.primaryContainer, ); static get titleSmallPrimaryContainer => theme.textTheme.titleSmall!.copyWith( color: theme.colorScheme.primaryContainer, ); // Body text style static get bodyMediumPoppinsBluegray50 => theme.textTheme.bodyMedium!.poppins.copyWith( color: appTheme.blueGray50, ); static get bodySmallMontserratBluegray400 => theme.textTheme.bodySmall!.montserrat.copyWith( color: appTheme.blueGray400, fontSize: 10.fSize, fontWeight: FontWeight.w400, ); static get bodySmallOpenSansOnPrimaryContainer => theme.textTheme.bodySmall!.openSans.copyWith( color: theme.colorScheme.onPrimaryContainer.withOpacity(1), fontWeight: FontWeight.w400, ); static get bodySmallRegular => theme.textTheme.bodySmall!.copyWith( fontSize: 10.fSize, fontWeight: FontWeight.w400, ); static get bodySmallYellow900 => theme.textTheme.bodySmall!.copyWith( color: appTheme.yellow900, fontSize: 12.fSize, fontWeight: FontWeight.w400, ); // Headline text style static get headlineLargeBold => theme.textTheme.headlineLarge!.copyWith( fontSize: 32.fSize, fontWeight: FontWeight.w700, ); static get headlineLargeExtraBold => theme.textTheme.headlineLarge!.copyWith( fontSize: 32.fSize, fontWeight: FontWeight.w800, ); static get headlineSmallOnPrimaryContainer => theme.textTheme.headlineSmall!.copyWith( color: theme.colorScheme.onPrimaryContainer.withOpacity(1), fontSize: 24.fSize, ); static get headlineSmallSemiBold => theme.textTheme.headlineSmall!.copyWith( fontSize: 24.fSize, fontWeight: FontWeight.w600, ); // Label text style static get labelLargeBluegray700 => theme.textTheme.labelLarge!.copyWith( color: appTheme.blueGray700, ); static get labelLargeMontserratCyan900 => theme.textTheme.labelLarge!.montserrat.copyWith( color: appTheme.cyan900, fontWeight: FontWeight.w700, ); static get labelLargeMontserratGray500 => theme.textTheme.labelLarge!.montserrat.copyWith( color: appTheme.gray500, ); static get labelLargeMontserratTeal100 => theme.textTheme.labelLarge!.montserrat.copyWith( color: appTheme.teal100, fontWeight: FontWeight.w700, ); static get labelMediumGray500 => theme.textTheme.labelMedium!.copyWith( color: appTheme.gray500, ); static get labelMediumGreen80001 => theme.textTheme.labelMedium!.copyWith( color: appTheme.green80001, ); static get labelMediumMontserratCyan900 => theme.textTheme.labelMedium!.montserrat.copyWith( color: appTheme.cyan900, fontWeight: FontWeight.w700, ); static get labelMediumOpenSans => theme.textTheme.labelMedium!.openSans.copyWith( fontWeight: FontWeight.w700, ); static get labelMediumRed700 => theme.textTheme.labelMedium!.copyWith( color: appTheme.red700, ); static get labelSmallBold => theme.textTheme.labelSmall!.copyWith( fontWeight: FontWeight.w700, ); // Open text style static get openSansOnPrimaryContainer => TextStyle( color: theme.colorScheme.onPrimaryContainer, fontSize: 6.fSize, fontWeight: FontWeight.w400, ).openSans; // Title text style static get titleMediumMedium => theme.textTheme.titleMedium!.copyWith( fontSize: 16.fSize, fontWeight: FontWeight.w500, ); static get titleSmallPoppinsOnPrimaryContainer => theme.textTheme.titleSmall!.poppins.copyWith( color: theme.colorScheme.onPrimaryContainer.withOpacity(1), fontWeight: FontWeight.w500, ); static get titleSmallPoppinsOnPrimaryContainerMedium => theme.textTheme.titleSmall!.poppins.copyWith( color: theme.colorScheme.onPrimaryContainer.withOpacity(1), fontWeight: FontWeight.w500, ); static get titleSmallPoppinsOnPrimaryContainer_1 => theme.textTheme.titleSmall!.poppins.copyWith( color: theme.colorScheme.onPrimaryContainer.withOpacity(1), ); static get bodySmallOpenSansOnErrorContainer => theme.textTheme.bodySmall!.openSans.copyWith( color: theme.colorScheme.onErrorContainer.withOpacity(1), fontSize: 8.fSize, ); // Headline text style static get headlineLargeSemiBold => theme.textTheme.headlineLarge!.copyWith( fontSize: 30.fSize, fontWeight: FontWeight.w600, ); static get headlineSmallOnErrorContainer => theme.textTheme.headlineSmall!.copyWith( color: theme.colorScheme.onErrorContainer.withOpacity(1), fontSize: 24.fSize, ); // Label text style static get labelLargeDMSansOnPrimaryContainer => theme.textTheme.labelLarge!.dMSans.copyWith( color: theme.colorScheme.onPrimaryContainer, fontSize: 13.fSize, ); static get labelLargeDMSansOnPrimaryContainer_1 => theme.textTheme.labelLarge!.dMSans.copyWith( color: theme.colorScheme.onPrimaryContainer, ); static get labelLargeErrorContainer => theme.textTheme.labelLarge!.copyWith( color: theme.colorScheme.errorContainer, ); static get labelLarge_1 => theme.textTheme.labelLarge!; // Open text style static get openSansOnErrorContainer => TextStyle( color: theme.colorScheme.onErrorContainer, fontSize: 6.fSize, fontWeight: FontWeight.w400, ).openSans; // Title text style static get titleMediumBlack900 => theme.textTheme.titleMedium!.copyWith( color: appTheme.black900, ); static get titleMediumBlack900Medium => theme.textTheme.titleMedium!.copyWith( color: appTheme.black900, fontSize: 16.fSize, fontWeight: FontWeight.w500, ); static get titleMediumGray300 => theme.textTheme.titleMedium!.copyWith( color: appTheme.gray300, ); static get titleMediumGray50 => theme.textTheme.titleMedium!.copyWith( color: appTheme.gray50, fontWeight: FontWeight.w700, ); static get titleMediumSourceSansPro => theme.textTheme.titleMedium!.sourceSansPro.copyWith( fontSize: 16.fSize, ); static get titleSmallPoppinsOnErrorContainer => theme.textTheme.titleSmall!.poppins.copyWith( color: theme.colorScheme.onErrorContainer.withOpacity(1), ); static get titleMediumWhiteA700 => theme.textTheme.titleMedium!.copyWith( color: appTheme.whiteA700, ); // Body text style static get bodyLargeGray50 => theme.textTheme.bodyLarge!.copyWith( color: appTheme.gray50, ); // Label text style static get labelLargeAmber300 => theme.textTheme.labelLarge!.copyWith( color: appTheme.amber300, ); static get labelLargePoppinsGray50 => theme.textTheme.labelLarge!.poppins.copyWith( color: appTheme.gray50, fontWeight: FontWeight.w700, ); static get labelLargePrimary => theme.textTheme.labelLarge!.copyWith( color: theme.colorScheme.primary, ); static get labelLargePrimaryBold => theme.textTheme.labelLarge!.copyWith( color: theme.colorScheme.primary, fontWeight: FontWeight.w700, ); static get labelLargePrimaryExtraBold => theme.textTheme.labelLarge!.copyWith( color: theme.colorScheme.primary, fontWeight: FontWeight.w800, ); static get labelLargeSFProTextErrorContainer => theme.textTheme.labelLarge!.sFProText.copyWith( color: theme.colorScheme.errorContainer, fontWeight: FontWeight.w700, ); static get labelLargeSFProTextErrorContainer_1 => theme.textTheme.labelLarge!.sFProText.copyWith( color: theme.colorScheme.errorContainer, ); static get labelLargeSFProTextPrimary => theme.textTheme.labelLarge!.sFProText.copyWith( color: theme.colorScheme.primary, fontWeight: FontWeight.w500, ); static get labelLargeSFProTextPrimaryMedium => theme.textTheme.labelLarge!.sFProText.copyWith( color: theme.colorScheme.primary.withOpacity(0.53), fontWeight: FontWeight.w500, ); static get labelLargeSFProTextPrimaryMedium_1 => theme.textTheme.labelLarge!.sFProText.copyWith( color: theme.colorScheme.primary.withOpacity(0.56), fontWeight: FontWeight.w500, ); static get labelLargeSFProTextPrimary_1 => theme.textTheme.labelLarge!.sFProText.copyWith( color: theme.colorScheme.primary.withOpacity(0.7), ); static get labelLargeSFProTextPrimary_2 => theme.textTheme.labelLarge!.sFProText.copyWith( color: theme.colorScheme.primary, ); static get labelLargeSFProTextRed600 => theme.textTheme.labelLarge!.sFProText.copyWith( color: appTheme.red600, ); static get labelLargeSFProTextWhiteA700 => theme.textTheme.labelLarge!.sFProText.copyWith( color: appTheme.whiteA700, fontWeight: FontWeight.w500, ); static get labelLargeWhiteA700 => theme.textTheme.labelLarge!.copyWith( color: appTheme.whiteA700, ); static get labelLargeWhiteA700ExtraBold => theme.textTheme.labelLarge!.copyWith( color: appTheme.whiteA700, fontWeight: FontWeight.w800, ); static get labelLargeWhiteA700_1 => theme.textTheme.labelLarge!.copyWith( color: appTheme.whiteA700.withOpacity(0.9), ); static get labelLargeWhiteA700_2 => theme.textTheme.labelLarge!.copyWith( color: appTheme.whiteA700.withOpacity(0.9), ); static get labelMediumPrimary => theme.textTheme.labelMedium!.copyWith( color: theme.colorScheme.primary, fontWeight: FontWeight.w800, ); static get labelMediumSFProTextRed600 => theme.textTheme.labelMedium!.sFProText.copyWith( color: appTheme.red600, ); static get labelMediumWhiteA700 => theme.textTheme.labelMedium!.copyWith( color: appTheme.whiteA700, fontWeight: FontWeight.w600, ); static get labelMediumWhiteA700ExtraBold => theme.textTheme.labelMedium!.copyWith( color: appTheme.whiteA700.withOpacity(0.7), fontWeight: FontWeight.w800, ); static get labelMediumWhiteA700ExtraBold_1 => theme.textTheme.labelMedium!.copyWith( color: appTheme.whiteA700, fontWeight: FontWeight.w800, ); // Title text style static get titleLargeWhiteA700 => theme.textTheme.titleLarge!.copyWith( color: appTheme.whiteA700, ); static get titleLargeWhiteA700_1 => theme.textTheme.titleLarge!.copyWith( color: appTheme.whiteA700, ); static get titleMediumDeeporange300 => theme.textTheme.titleMedium!.copyWith( color: appTheme.deepOrange300, fontSize: 18.fSize, fontWeight: FontWeight.w800, ); static get titleMediumPoppins => theme.textTheme.titleMedium!.poppins.copyWith( fontSize: 18.fSize, fontWeight: FontWeight.w600, ); static get titleMediumPoppinsGray50 => theme.textTheme.titleMedium!.poppins.copyWith( color: appTheme.gray50, fontSize: 18.fSize, ); static get titleMediumRed600 => theme.textTheme.titleMedium!.copyWith( color: appTheme.red600, ); static get titleMediumSFProText => theme.textTheme.titleMedium!.sFProText; }