containerTextField method

Widget containerTextField(
  1. ImosysConfig config
)

Implementation

Widget containerTextField(ImosysConfig config) {
  return Container(
    width: double.infinity,
    height: 56,
    alignment: Alignment.centerLeft,
    padding: const EdgeInsets.symmetric(horizontal: 10),
    decoration: BoxDecoration(
      color: hasFill
          ? fillColor ?? config.defaultTextFieldFillColor ?? Colors.white
          : config.defaultTextFieldIsFilled
              ? fillColor ?? config.defaultTextFieldFillColor ?? Colors.white
              : null,
      border: hasBorder || config.defaultTextFieldHasBorder
          ? Border.all(
              color: borderColor ??
                  config.defaultBorderColor ??
                  config.primaryColor,
            )
          : null,
      borderRadius: BorderRadius.all(
        Radius.circular(
          borderRadius ?? config.defaultContainerRadius,
        ),
      ),
    ),
    child: Row(
      mainAxisAlignment: MainAxisAlignment.spaceBetween,
      children: [
        ImosysTextWidget(
          text: controller.text.isEmpty ? hint : controller.text,
          color: controller.text.isEmpty
              ? hintFontColor ?? config.defaultHintColor
              : fontColor ?? config.defaultFontColor,
          fontFamily: controller.text.isEmpty
              ? hintFontFamily ?? fontFamily ?? config.defaultTextFieldFontFamily
              : fontFamily ?? config.defaultTextFieldFontFamily,
          size: controller.text.isEmpty
              ? hintFontSize ?? fontSize ?? config.defaultFontSize
              : fontSize ?? config.defaultFontSize,
        ),
        if (suffixIcon != null) ...[suffixIcon!],
      ],
    ),
  );
}