PlexThemeData class

Theme extension attached to ThemeData by PlexTheme.getThemeByBrightness.

Named PlexThemeData to match Flutter's ThemeData convention and avoid colliding with the existing PlexTheme facade class.

Inheritance

Constructors

PlexThemeData({required PlexColorTokens colors, String fontFamily = 'Roboto', PlexDensity density = PlexDensity.comfortable})
const

Properties

colors PlexColorTokens
final
density PlexDensity
final
fontFamily String
final
hashCode int
The hash code for this object.
no setterinherited
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
type Object
The extension's type.
no setterinherited
visualDensity VisualDensity
no setter

Methods

copyWith({PlexColorTokens? colors, String? fontFamily, PlexDensity? density}) PlexThemeData
Creates a copy of this theme extension with the given fields replaced by the non-null parameter values.
override
lerp(covariant ThemeExtension<PlexThemeData>? other, double t) PlexThemeData
Linearly interpolate with another ThemeExtension object.
override
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

fallback({Brightness brightness = Brightness.light}) PlexThemeData
of(BuildContext context) PlexThemeData
Never-null lookup: missing extension yields generic fallbacks.
resolve({required Brightness brightness, Color? seed, ColorScheme? colorScheme, PlexBrandConfig? brand, PlexThemeData? existing, PlexColorTokens? widgetColors}) PlexThemeData
Build tokens from brand / seed / scheme. existing wins field-by-field where it is already populated (merge with fallbacks).