SBBTheme class

Base SBB theme builder.

Provides factory helpers to build full ThemeData for light and dark based on the theming of the SBB design system.

MaterialApp(
    theme: SBBTheme.light(),
    darkTheme: SBBTheme.dark(),
    ...
);

Access created ThemeData by using Theme.of(context) and the theme extensions f.ex. with Theme.of(context).extension<SBBBaseStyle>() or the provided helper methods Theme.of(context).sbbBaseStyle.

See also:

Properties

hashCode → int
The hash code for this object.
no setterinherited
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited

Methods

noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toString() → String
A string representation of this object.
inherited

Operators

operator ==(Object other) → bool
The equality operator.
inherited

Static Methods

createTheme({required Brightness brightness, SBBThemeContext themeContext = .sbb, SBBBaseStyle? baseStyle, SBBBottomSheetThemeData? bottomSheetTheme, SBBPrimaryButtonThemeData? primaryButtonTheme, SBBNotificationBoxThemeData? notificationBoxTheme, SBBSecondaryButtonThemeData? secondaryButtonTheme, SBBTertiaryButtonThemeData? tertiaryButtonTheme, SBBAccentButtonThemeData? accentButtonTheme, SBBCheckboxThemeData? checkboxTheme, SBBChipThemeData? chipTheme, SBBStepperThemeData? stepperTheme, SBBContentBoxThemeData? contentBoxTheme, SBBDecoratedThemeData? decoratedTheme, SBBDecoratedTextThemeData? decoratedTextTheme, SBBDropdownThemeData? dropdownTheme, SBBHeaderThemeData? headerTheme, SBBHeaderBoxThemeData? headerBoxTheme, SBBInputDecorationThemeData? inputDecorationTheme, SBBLinearLoadingIndicatorThemeData? linearLoadingIndicatorTheme, SBBListHeaderThemeData? listHeaderTheme, SBBListItemThemeData? listItemTheme, SBBMessageThemeData? messageTheme, SBBPaginatorThemeData? paginatorTheme, SBBPickerThemeData? pickerTheme, SBBPopoverThemeData? popoverTheme, SBBPopupThemeData? popupTheme, SBBPromotionBoxThemeData? promotionBoxTheme, SBBRadioThemeData? radioTheme, SBBSegmentedButtonThemeData? segmentedButtonTheme, SBBSliderThemeData? sliderTheme, SBBSlideToToggleThemeData? slideToToggleTheme, SBBStatusThemeData? statusTheme, SBBSwitchThemeData? switchTheme, SBBTabBarThemeData? tabBarTheme, SBBTextInputThemeData? textInputTheme, SBBToastThemeData? toastTheme}) → ThemeData
Creates the base ThemeData with the provided brightness.
dark({SBBThemeContext themeContext = .sbb, SBBBaseStyle? baseStyle, SBBBottomSheetThemeData? bottomSheetTheme, SBBPrimaryButtonThemeData? primaryButtonTheme, SBBSecondaryButtonThemeData? secondaryButtonTheme, SBBTertiaryButtonThemeData? tertiaryButtonTheme, SBBAccentButtonThemeData? accentButtonTheme, SBBNotificationBoxThemeData? notificationBoxTheme, SBBCheckboxThemeData? checkboxTheme, SBBChipThemeData? chipTheme, SBBContentBoxThemeData? contentBoxTheme, SBBDecoratedThemeData? decoratedTheme, SBBDecoratedTextThemeData? decoratedTextTheme, SBBDropdownThemeData? dropdownTheme, SBBHeaderBoxThemeData? headerBoxTheme, SBBInputDecorationThemeData? inputDecorationTheme, SBBLinearLoadingIndicatorThemeData? linearLoadingIndicatorTheme, SBBListHeaderThemeData? listHeaderTheme, SBBListItemThemeData? listItemTheme, SBBMessageThemeData? messageTheme, SBBPaginatorThemeData? paginatorTheme, SBBPickerThemeData? pickerTheme, SBBPopoverThemeData? popoverTheme, SBBPopupThemeData? popupTheme, SBBPromotionBoxThemeData? promotionBoxTheme, SBBRadioThemeData? radioTheme, SBBStatusThemeData? statusTheme, SBBSegmentedButtonThemeData? segmentedButtonTheme, SBBSliderThemeData? sliderTheme, SBBSlideToToggleThemeData? slideToToggleTheme, SBBStepperThemeData? stepperTheme, SBBSwitchThemeData? switchTheme, SBBTabBarThemeData? tabBarTheme, SBBTextInputThemeData? textInputTheme, SBBToastThemeData? toastTheme}) → ThemeData
Creates the base dark ThemeData.
light({SBBThemeContext themeContext = .sbb, SBBBaseStyle? baseStyle, SBBBottomSheetThemeData? bottomSheetTheme, SBBPrimaryButtonThemeData? primaryButtonTheme, SBBSecondaryButtonThemeData? secondaryButtonTheme, SBBTertiaryButtonThemeData? tertiaryButtonTheme, SBBAccentButtonThemeData? accentButtonTheme, SBBNotificationBoxThemeData? notificationBoxTheme, SBBCheckboxThemeData? checkboxTheme, SBBChipThemeData? chipTheme, SBBContentBoxThemeData? contentBoxTheme, SBBDecoratedThemeData? decoratedTheme, SBBDecoratedTextThemeData? decoratedTextTheme, SBBDropdownThemeData? dropdownTheme, SBBHeaderThemeData? headerTheme, SBBHeaderBoxThemeData? headerBoxTheme, SBBInputDecorationThemeData? inputDecorationTheme, SBBLinearLoadingIndicatorThemeData? linearLoadingIndicatorTheme, SBBListHeaderThemeData? listHeaderTheme, SBBListItemThemeData? listItemTheme, SBBMessageThemeData? messageTheme, SBBPaginatorThemeData? paginatorTheme, SBBPickerThemeData? pickerTheme, SBBPopoverThemeData? popoverTheme, SBBPopupThemeData? popupTheme, SBBPromotionBoxThemeData? promotionBoxTheme, SBBRadioThemeData? radioTheme, SBBStatusThemeData? statusTheme, SBBSegmentedButtonThemeData? segmentedButtonTheme, SBBSliderThemeData? sliderTheme, SBBSlideToToggleThemeData? slideToToggleTheme, SBBStepperThemeData? stepperTheme, SBBSwitchThemeData? switchTheme, SBBTabBarThemeData? tabBarTheme, SBBTextInputThemeData? textInputTheme, SBBToastThemeData? toastTheme}) → ThemeData
Creates the base light ThemeData.
raw({required SBBBaseStyle baseStyle, required SBBBottomSheetThemeData bottomSheetTheme, required SBBPrimaryButtonThemeData primaryButtonTheme, required SBBSecondaryButtonThemeData secondaryButtonTheme, required SBBTertiaryButtonThemeData tertiaryButtonTheme, required SBBAccentButtonThemeData accentButtonTheme, required SBBCheckboxThemeData checkboxTheme, required SBBChipThemeData chipTheme, required SBBContentBoxThemeData contentBoxTheme, required SBBDecoratedThemeData decoratedTheme, required SBBDecoratedTextThemeData decoratedTextTheme, required SBBDropdownThemeData dropdownTheme, required SBBHeaderThemeData headerTheme, required SBBHeaderBoxThemeData headerBoxTheme, required SBBInputDecorationThemeData inputDecorationTheme, required SBBLinearLoadingIndicatorThemeData linearLoadingIndicatorTheme, required SBBListHeaderThemeData listHeaderTheme, required SBBListItemThemeData listItemTheme, required SBBMessageThemeData messageTheme, required SBBNotificationBoxThemeData notificationBoxTheme, required SBBPaginatorThemeData paginatorTheme, required SBBPickerThemeData pickerTheme, required SBBPopoverThemeData popoverTheme, required SBBPopupThemeData popupTheme, required SBBPromotionBoxThemeData promotionBoxTheme, required SBBRadioThemeData radioTheme, required SBBStatusThemeData statusTheme, required SBBSegmentedButtonThemeData segmentedButtonTheme, required SBBSliderThemeData sliderTheme, required SBBSlideToToggleThemeData slideToToggleTheme, required SBBStepperThemeData stepperTheme, required SBBSwitchThemeData switchTheme, required SBBTabBarThemeData tabBarTheme, required SBBTextInputThemeData textInputTheme, required SBBToastThemeData toastTheme}) → ThemeData