MoonTextInputTheme constructor

MoonTextInputTheme({
  1. required MoonTokens tokens,
  2. MoonTextInputColors? colors,
  3. MoonTextInputProperties? properties,
  4. MoonTextInputSizes? sizes,
})

Implementation

MoonTextInputTheme({
  required this.tokens,
  MoonTextInputColors? colors,
  MoonTextInputProperties? properties,
  MoonTextInputSizes? sizes,
})  : colors = colors ??
          MoonTextInputColors(
            backgroundColor: tokens.colors.goku,
            activeBorderColor: tokens.colors.piccolo,
            inactiveBorderColor: tokens.colors.beerus,
            errorColor: tokens.colors.chichi,
            hoverBorderColor: tokens.colors.beerus,
            textColor: tokens.colors.textPrimary,
            helperTextColor: tokens.colors.textSecondary,
          ),
      properties = properties ??
          MoonTextInputProperties(
            // The duration value extracted from:
            // https://github.com/material-components/material-components-android/blob/master/lib/java/com/google/android/material/textfield/TextInputLayout.java
            transitionDuration: const Duration(milliseconds: 167),
            transitionCurve: Curves.fastOutSlowIn,
            helperPadding: EdgeInsets.only(top: tokens.sizes.x4s),
            helperTextStyle: tokens.typography.body.text12,
          ),
      sizes = sizes ?? MoonTextInputSizes(tokens: tokens);