ThemeData class

The theme data for shadcn_flutter.

Contains all theming information including colors, typography, scaling, and platform-specific settings.

Constructors

ThemeData({ColorScheme colorScheme = ColorSchemes.lightSlate, double radius = 0.5, double scaling = 1, Typography typography = const Typography.geist(), IconThemeProperties iconTheme = const IconThemeProperties(), TargetPlatform? platform, double? surfaceOpacity, bool? enableFeedback, double? surfaceBlur, Density density = Density.defaultDensity})
Creates a ThemeData with light color scheme.
const
ThemeData.dark({ColorScheme colorScheme = ColorSchemes.darkSlate, double radius = 0.5, double scaling = 1, Typography typography = const Typography.geist(), IconThemeProperties iconTheme = const IconThemeProperties(), TargetPlatform? platform, double? surfaceOpacity, double? surfaceBlur, Density density = Density.defaultDensity, bool? enableFeedback})
Creates a ThemeData with dark color scheme.
const

Properties

borderRadiusLg BorderRadius
Creates a circular border radius using radiusLg.
no setter
borderRadiusMd BorderRadius
Creates a circular border radius using radiusMd.
no setter
borderRadiusSm BorderRadius
Creates a circular border radius using radiusSm.
no setter
borderRadiusXl BorderRadius
Creates a circular border radius using radiusXl.
no setter
borderRadiusXs BorderRadius
Creates a circular border radius using radiusXs.
no setter
borderRadiusXxl BorderRadius
Creates a circular border radius using radiusXxl.
no setter
brightness Brightness
Gets the brightness (light or dark) from the color scheme.
no setter
colorScheme ColorScheme
The color scheme for this theme.
final
density Density
Density settings that scale spacing and padding.
final
enableFeedback bool?
Default setting for feedback on mobile platforms (e.g., iOS, Android, Fuchsia).
final
hashCode int
The hash code for this object.
no setteroverride
iconTheme IconThemeProperties
Icon theme properties defining icon sizes across different scales.
final
platform TargetPlatform
The current platform.
no setter
radius double
Base radius multiplier for border radius calculations.
final
radiusLg double
At normal radius, the scaled radius is 16
no setter
radiusLgRadius Radius
Creates a circular radius using radiusLg.
no setter
radiusMd double
At normal radius, the scaled radius is 12
no setter
radiusMdRadius Radius
Creates a circular radius using radiusMd.
no setter
radiusSm double
At normal radius, the scaled radius is 8
no setter
radiusSmRadius Radius
Creates a circular radius using radiusSm.
no setter
radiusXl double
At normal radius, the scaled radius is 20
no setter
radiusXlRadius Radius
Creates a circular radius using radiusXl.
no setter
radiusXs double
At normal radius, the scaled radius is 4
no setter
radiusXsRadius Radius
Creates a circular radius using radiusXs.
no setter
radiusXxl double
At normal radius, the scaled radius is 24
no setter
radiusXxlRadius Radius
Creates a circular radius using radiusXxl.
no setter
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
scaling double
Scale factor for sizes and spacing.
final
specifiedPlatform TargetPlatform?
The specified platform, or null if not overridden.
no setter
surfaceBlur double?
Default blur radius for surface effects.
final
surfaceOpacity double?
Default opacity for surface overlays (0.0 to 1.0).
final
typography Typography
The typography settings for this theme.
final

Methods

copyWith({ValueGetter<ColorScheme>? colorScheme, ValueGetter<double>? radius, ValueGetter<Typography>? typography, ValueGetter<TargetPlatform>? platform, ValueGetter<double>? scaling, ValueGetter<IconThemeProperties>? iconTheme, ValueGetter<double>? surfaceOpacity, ValueGetter<double>? surfaceBlur, ValueGetter<bool?>? enableFeedback, ValueGetter<Density>? density}) ThemeData
Creates a copy of this theme with specified properties overridden.
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toString() String
A string representation of this object.
override

Operators

operator ==(Object other) bool
The equality operator.
override

Static Methods

lerp(ThemeData a, ThemeData b, double t) ThemeData
Linearly interpolates between two theme datas.