ShadThemeData class

The complete visual configuration of a Shad app: colour scheme, text theme, radius, style, spacing and every component theme.

The factory resolves its inputs into a ShadThemeVariant, which derives the component themes. An explicit component theme passed here is merged over the variant's. Provide it to the tree with ShadApp or ShadTheme and read it back with ShadTheme.of(context).

Inheritance
Annotations

Constructors

ShadThemeData({ShadColorScheme? colorScheme, Brightness? brightness, ShadButtonTheme? primaryButtonTheme, ShadButtonTheme? secondaryButtonTheme, ShadButtonTheme? destructiveButtonTheme, ShadButtonTheme? outlineButtonTheme, ShadButtonTheme? ghostButtonTheme, ShadButtonTheme? linkButtonTheme, ShadBadgeTheme? primaryBadgeTheme, ShadBadgeTheme? secondaryBadgeTheme, ShadBadgeTheme? destructiveBadgeTheme, ShadBadgeTheme? outlineBadgeTheme, ShadBreadcrumbTheme? breadcrumbTheme, BorderRadius? radius, ShadAvatarTheme? avatarTheme, ShadButtonSizesTheme? buttonSizesTheme, ShadTooltipTheme? tooltipTheme, ShadPopoverTheme? popoverTheme, ShadDecoration? decoration, ShadTextTheme? textTheme, double? disabledOpacity, ShadSelectTheme? selectTheme, ShadOptionTheme? optionTheme, ShadCardTheme? cardTheme, ShadSwitchTheme? switchTheme, ShadCheckboxTheme? checkboxTheme, ShadInputTheme? inputTheme, ShadRadioTheme? radioTheme, ShadToastTheme? primaryToastTheme, ShadToastTheme? destructiveToastTheme, ShadBreakpoints? breakpoints, ShadAlertTheme? primaryAlertTheme, ShadAlertTheme? destructiveAlertTheme, ShadDialogTheme? primaryDialogTheme, ShadDialogTheme? alertDialogTheme, ShadSliderTheme? sliderTheme, ShadSheetTheme? sheetTheme, ShadProgressTheme? progressTheme, ShadAccordionTheme? accordionTheme, ShadTableTheme? tableTheme, ShadResizableTheme? resizableTheme, ShadHoverStrategies? hoverStrategies, bool? disableSecondaryBorder, ShadTabsTheme? tabsTheme, ShadSkeletonTheme? skeletonTheme, ShadKbdTheme? kbdTheme, ShadScrollAreaTheme? scrollAreaTheme, ShadSpinnerTheme? spinnerTheme, ShadToggleTheme? toggleTheme, ShadToggleTheme? outlineToggleTheme, ShadEmptyTheme? emptyTheme, ShadPaginationTheme? paginationTheme, ShadCollapsibleTheme? collapsibleTheme, ShadCommandTheme? commandTheme, ShadSidebarTheme? sidebarTheme, ShadThemeVariant? variant, ShadContextMenuTheme? contextMenuTheme, ShadCalendarTheme? calendarTheme, ShadDatePickerTheme? datePickerTheme, ShadTimePickerTheme? timePickerTheme, ShadInputOTPTheme? inputOTPTheme, ShadMenubarTheme? menubarTheme, ShadSeparatorTheme? separatorTheme, ShadSonnerTheme? sonnerTheme, ShadTextareaTheme? textareaTheme, ShadDefaultKeyboardToolbarTheme? defaultKeyboardToolbarTheme, ShadStyleTokens? style, ShadSpacing? spacing, ShadColorScheme? menuColorScheme, bool? menuTranslucent, ShadMenuAccent? menuAccent})
Creates a theme.
factory

Properties

accordionTheme → ShadAccordionTheme
The theme of ShadAccordion.
finalinherited
alertDialogTheme → ShadDialogTheme
The theme of alert dialogs, ShadDialog.alert.
finalinherited
avatarTheme → ShadAvatarTheme
The theme of ShadAvatar.
finalinherited
The theme of ShadBreadcrumb.
finalinherited
breakpoints → ShadBreakpoints
The screen widths at which the layout changes.
finalinherited
brightness → Brightness
Whether the theme is light or dark.
finalinherited
buttonSizesTheme → ShadButtonSizesTheme
The metrics of each ShadButton size.
finalinherited
calendarTheme → ShadCalendarTheme
The theme of ShadCalendar.
finalinherited
canMerge → bool
no setterinherited
cardTheme → ShadCardTheme
The theme of ShadCard.
finalinherited
checkboxTheme → ShadCheckboxTheme
The theme of ShadCheckbox.
finalinherited
collapsibleTheme → ShadCollapsibleTheme
The theme of ShadCollapsible.
finalinherited
colorScheme → ShadColorScheme
The colour tokens every component theme is built from.
finalinherited
commandTheme → ShadCommandTheme
The theme of ShadCommand.
finalinherited
contextMenuTheme → ShadContextMenuTheme
The theme of ShadContextMenu.
finalinherited
datePickerTheme → ShadDatePickerTheme
The theme of ShadDatePicker.
finalinherited
decoration → ShadDecoration
The default border and label styling of controls. Component decorations are merged over it.
finalinherited
defaultKeyboardToolbarTheme → ShadDefaultKeyboardToolbarTheme
The theme of ShadDefaultKeyboardToolbar.
finalinherited
destructiveAlertTheme → ShadAlertTheme
The theme of destructive alerts, ShadAlert.destructive.
finalinherited
destructiveBadgeTheme → ShadBadgeTheme
The theme of destructive badges, ShadBadge.destructive.
finalinherited
destructiveButtonTheme → ShadButtonTheme
The theme of destructive buttons, ShadButton.destructive.
finalinherited
destructiveToastTheme → ShadToastTheme
The theme of destructive toasts, ShadToast.destructive.
finalinherited
disabledOpacity → double
The opacity of disabled components. Defaults to 0.5.
finalinherited
disableSecondaryBorder → bool
Whether controls show focus without the outward ring. Defaults to false.
finalinherited
emptyTheme → ShadEmptyTheme
The theme of ShadEmpty.
finalinherited
ghostButtonTheme → ShadButtonTheme
The theme of ghost buttons, ShadButton.ghost.
finalinherited
hashCode → int
The hash code for this object.
no setterinherited
hoverStrategies → ShadHoverStrategies
The gestures that give touch devices a hover state.
finalinherited
inputOTPTheme → ShadInputOTPTheme
The theme of ShadInputOTP.
finalinherited
inputTheme → ShadInputTheme
The theme of ShadInput.
finalinherited
kbdTheme → ShadKbdTheme
The theme of ShadKbd keyboard keys.
finalinherited
linkButtonTheme → ShadButtonTheme
The theme of link buttons, ShadButton.link.
finalinherited
The theme of ShadMenubar.
finalinherited
optionTheme → ShadOptionTheme
The theme of ShadOption, the rows of a select.
finalinherited
outlineBadgeTheme → ShadBadgeTheme
The theme of outline badges, ShadBadge.outline.
finalinherited
outlineButtonTheme → ShadButtonTheme
The theme of outline buttons, ShadButton.outline.
finalinherited
outlineToggleTheme → ShadToggleTheme
The theme of outline toggles, ShadToggle.outline.
finalinherited
paginationTheme → ShadPaginationTheme
The theme of ShadPagination.
finalinherited
popoverTheme → ShadPopoverTheme
The theme of ShadPopover.
finalinherited
primaryAlertTheme → ShadAlertTheme
The theme of default alerts, ShadAlert.
finalinherited
primaryBadgeTheme → ShadBadgeTheme
The theme of primary badges, ShadBadge's default variant.
finalinherited
primaryButtonTheme → ShadButtonTheme
The theme of primary buttons, ShadButton's default variant.
finalinherited
primaryDialogTheme → ShadDialogTheme
The theme of ShadDialog.
finalinherited
primaryToastTheme → ShadToastTheme
The theme of default toasts, ShadToast.
finalinherited
progressTheme → ShadProgressTheme
The theme of ShadProgress.
finalinherited
radii → ShadRadii
The corner-radius scale derived from radius.
no setter
radioTheme → ShadRadioTheme
The theme of ShadRadio.
finalinherited
radius → BorderRadius
The component radius, the md step of ShadRadii. Defaults to 8.
finalinherited
resizableTheme → ShadResizableTheme
The theme of ShadResizablePanelGroup.
finalinherited
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited
scrollAreaTheme → ShadScrollAreaTheme
The theme of ShadScrollArea.
finalinherited
secondaryBadgeTheme → ShadBadgeTheme
The theme of secondary badges, ShadBadge.secondary.
finalinherited
secondaryButtonTheme → ShadButtonTheme
The theme of secondary buttons, ShadButton.secondary.
finalinherited
selectTheme → ShadSelectTheme
The theme of ShadSelect.
finalinherited
separatorTheme → ShadSeparatorTheme
The theme of ShadSeparator.
finalinherited
sheetTheme → ShadSheetTheme
The theme of ShadSheet.
finalinherited
sidebarTheme → ShadSidebarTheme
The theme of ShadSidebar and its menu.
finalinherited
skeletonTheme → ShadSkeletonTheme
The theme of ShadSkeleton.
finalinherited
sliderTheme → ShadSliderTheme
The theme of ShadSlider.
finalinherited
sonnerTheme → ShadSonnerTheme
The theme of ShadSonner.
finalinherited
spacing → ShadSpacing
The spacing scale every padding and gap is a multiple of.
no setter
spinnerTheme → ShadSpinnerTheme
The theme of ShadSpinner.
finalinherited
style → ShadStyleTokens
The shadcn/ui style this theme renders.
no setter
switchTheme → ShadSwitchTheme
The theme of ShadSwitch.
finalinherited
tableTheme → ShadTableTheme
The theme of ShadTable.
finalinherited
tabsTheme → ShadTabsTheme
The theme of ShadTabs.
finalinherited
textareaTheme → ShadTextareaTheme
The theme of ShadTextarea.
finalinherited
textTheme → ShadTextTheme
The text styles. These have the style's text roles applied, so they can differ from the text theme passed in.
finalinherited
timePickerTheme → ShadTimePickerTheme
The theme of ShadTimePicker.
finalinherited
toggleTheme → ShadToggleTheme
The theme of ShadToggle in its default variant.
finalinherited
tooltipTheme → ShadTooltipTheme
The theme of ShadTooltip.
finalinherited
variant → ShadThemeVariant
The variant that produced the component theme defaults below.
finalinherited

Methods

copyWith({ShadColorScheme? colorScheme, Brightness? brightness, ShadButtonTheme? primaryButtonTheme, ShadButtonTheme? secondaryButtonTheme, ShadButtonTheme? destructiveButtonTheme, ShadButtonTheme? outlineButtonTheme, ShadButtonTheme? ghostButtonTheme, ShadButtonTheme? linkButtonTheme, ShadBadgeTheme? primaryBadgeTheme, ShadBadgeTheme? secondaryBadgeTheme, ShadBadgeTheme? destructiveBadgeTheme, ShadBadgeTheme? outlineBadgeTheme, ShadBreadcrumbTheme? breadcrumbTheme, BorderRadius? radius, ShadAvatarTheme? avatarTheme, ShadButtonSizesTheme? buttonSizesTheme, ShadTooltipTheme? tooltipTheme, ShadPopoverTheme? popoverTheme, ShadDecoration? decoration, ShadTextTheme? textTheme, double? disabledOpacity, ShadSelectTheme? selectTheme, ShadOptionTheme? optionTheme, ShadCardTheme? cardTheme, ShadSwitchTheme? switchTheme, ShadCheckboxTheme? checkboxTheme, ShadInputTheme? inputTheme, ShadRadioTheme? radioTheme, ShadToastTheme? primaryToastTheme, ShadToastTheme? destructiveToastTheme, ShadBreakpoints? breakpoints, ShadAlertTheme? primaryAlertTheme, ShadAlertTheme? destructiveAlertTheme, ShadDialogTheme? primaryDialogTheme, ShadDialogTheme? alertDialogTheme, ShadSliderTheme? sliderTheme, ShadSheetTheme? sheetTheme, ShadProgressTheme? progressTheme, ShadAccordionTheme? accordionTheme, ShadTableTheme? tableTheme, ShadResizableTheme? resizableTheme, ShadHoverStrategies? hoverStrategies, bool? disableSecondaryBorder, ShadTabsTheme? tabsTheme, ShadSkeletonTheme? skeletonTheme, ShadKbdTheme? kbdTheme, ShadScrollAreaTheme? scrollAreaTheme, ShadSpinnerTheme? spinnerTheme, ShadToggleTheme? toggleTheme, ShadToggleTheme? outlineToggleTheme, ShadEmptyTheme? emptyTheme, ShadPaginationTheme? paginationTheme, ShadCollapsibleTheme? collapsibleTheme, ShadCommandTheme? commandTheme, ShadSidebarTheme? sidebarTheme, ShadThemeVariant? variant, ShadContextMenuTheme? contextMenuTheme, ShadCalendarTheme? calendarTheme, ShadDatePickerTheme? datePickerTheme, ShadTimePickerTheme? timePickerTheme, ShadInputOTPTheme? inputOTPTheme, ShadMenubarTheme? menubarTheme, ShadSeparatorTheme? separatorTheme, ShadSonnerTheme? sonnerTheme, ShadTextareaTheme? textareaTheme, ShadDefaultKeyboardToolbarTheme? defaultKeyboardToolbarTheme, ShadStyleTokens? style, ShadSpacing? spacing, ShadColorScheme? menuColorScheme, bool? menuTranslucent, ShadMenuAccent? menuAccent}) → ShadThemeData
Creates a copy of this theme with the given inputs replaced.
merge(ShadThemeData? other) → ShadThemeData
inherited
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

lerp(ShadThemeData? a, ShadThemeData? b, double t) → ShadThemeData?
Linearly interpolates between a and b by t.