textField method

Widget textField(
  1. ImosysConfig config
)

Implementation

Widget textField(ImosysConfig config) {
  return validator != null
      ? TextFormField(
          validator: validator,
          onTap: onTap != null
              ? () {
                  onTap?.call();
                }
              : null,
          controller: controller,
          maxLength: maxLength,
          maxLines: maxLines ?? 1,
          minLines: minLines,
          cursorColor:
              cursorColor ?? config.cursorColor ?? config.primaryColor,
          autocorrect: autoCorrect ?? true,
          readOnly: onTap != null,
          keyboardType: inputType,
          textCapitalization: textCapitalization ?? TextCapitalization.none,
          obscureText: dontShowText ?? false,
          textInputAction: textInputAction ?? TextInputAction.done,
          onChanged: onChange,
          style: TextStyle(
              fontFamily: fontFamily ?? config.defaultFontFamily,
              fontSize: fontSize ?? config.defaultFontSize,
              color: fontColor ?? config.defaultFontColor,
              fontWeight: fontWeight),
          decoration: _inputDecoration(config),
          onFieldSubmitted: (value) {
            onSubmitted?.call(value);
          },
        )
      : TextField(
          onTap: onTap != null
              ? () {
                  onTap?.call();
                }
              : null,
          controller: controller,
          maxLength: maxLength,
          maxLines: maxLines ?? 1,
          minLines: minLines,
          cursorColor:
              cursorColor ?? config.cursorColor ?? config.primaryColor,
          autocorrect: autoCorrect ?? true,
          readOnly: onTap != null,
          keyboardType: inputType,
          textCapitalization: textCapitalization ?? TextCapitalization.none,
          obscureText: dontShowText ?? false,
          textInputAction: textInputAction ?? TextInputAction.done,
          onChanged: onChange,
          style: TextStyle(
              fontFamily: fontFamily ??
                  config.defaultTextFieldFontFamily ??
                  config.defaultFontFamily,
              fontSize: fontSize ?? config.defaultFontSize,
              color: fontColor ?? config.defaultFontColor,
              fontWeight: fontWeight),
          decoration: _inputDecoration(config),
          onSubmitted: (value) {
            onSubmitted?.call(value);
          },
        );
}