applyComponentOverrides static method
Apply NeomageComponentTheme overrides to an existing ThemeData.
Implementation
static ThemeData applyComponentOverrides(
ThemeData base,
NeomageComponentTheme comp,
) {
return base.copyWith(
cardTheme: base.cardTheme.copyWith(
elevation: comp.cardElevation,
shape: RoundedRectangleBorder(
borderRadius: BorderRadius.circular(comp.cardRadius),
),
),
dialogTheme: base.dialogTheme.copyWith(
shape: RoundedRectangleBorder(
borderRadius: BorderRadius.circular(comp.dialogRadius),
),
),
elevatedButtonTheme: ElevatedButtonThemeData(
style: ElevatedButton.styleFrom(
minimumSize: Size(0, comp.buttonHeight),
shape: RoundedRectangleBorder(
borderRadius: BorderRadius.circular(comp.buttonRadius),
),
),
),
inputDecorationTheme: base.inputDecorationTheme.copyWith(
border: OutlineInputBorder(
borderRadius: BorderRadius.circular(comp.inputRadius),
),
enabledBorder: OutlineInputBorder(
borderRadius: BorderRadius.circular(comp.inputRadius),
borderSide:
base.inputDecorationTheme.enabledBorder?.borderSide ??
BorderSide.none,
),
focusedBorder: OutlineInputBorder(
borderRadius: BorderRadius.circular(comp.inputRadius),
borderSide:
base.inputDecorationTheme.focusedBorder?.borderSide ??
BorderSide.none,
),
constraints: BoxConstraints(minHeight: comp.inputHeight),
),
);
}