buildButtonStyle static method
Implementation
static ButtonStyle buildButtonStyle(
BuildContext context, {
required OudsButtonHierarchy hierarchy,
required OudsButtonLayout layout,
bool? border,
OudsButtonControlState? buttonState,
}) {
return ButtonStyle(
backgroundColor: OudsButtonBackgroundModifier.resolveBackgroundColor(context, hierarchy, buttonState),
foregroundColor: OudsButtonForegroundModifier.resolveForegroundColor(context, hierarchy, buttonState),
splashFactory: NoSplash.splashFactory,
overlayColor: WidgetStateProperty.all(Colors.transparent),
textStyle: WidgetStateProperty.all<TextStyle>(
TextStyle(
fontSize: OudsTheme.of(context).fontTokens.sizeLabelLarge,
fontWeight: OudsTheme.of(context).fontTokens.weightLabelStrong,
letterSpacing: OudsTheme.of(context).fontTokens.letterSpacingLabelLarge,
fontFamily: OudsTheme.of(context).fontFamily,
package: OudsTheme.of(context).packageName),
),
side: OudsButtonBorderModifier.resolveBorderColor(context, hierarchy, buttonState),
shape: WidgetStateProperty.all<RoundedRectangleBorder>(
RoundedRectangleBorder(
borderRadius: OudsButtonBorderModifier.getBorderRadius(context),
),
),
padding: WidgetStateProperty.all<EdgeInsetsGeometry>(
OudsButtonPaddingModifier.getPadding(context, layout),
),
minimumSize: WidgetStateProperty.all<Size>(
Size(OudsTheme.of(context).componentsTokens(context).button.sizeMinWidth, OudsTheme.of(context).componentsTokens(context).button.sizeMinHeight),
),
animationDuration: Duration.zero,
);
}