ShadInputOTPFormField constructor

ShadInputOTPFormField({
  1. String? id,
  2. Key? key,
  3. FormFieldSetter<String>? onSaved,
  4. String? forceErrorText,
  5. String? validator(
    1. String
    )?,
  6. String? initialValue,
  7. bool enabled = true,
  8. AutovalidateMode? autovalidateMode,
  9. String? restorationId,
  10. Widget? label,
  11. Widget error(
    1. String error
    )?,
  12. Widget? description,
  13. void onChanged(
    1. String
    )?,
  14. @Deprecated('Use toValueTransformer instead') ToValueTransformer<String?>? valueTransformer,
  15. ToValueTransformer<String?>? toValueTransformer,
  16. FromValueTransformer<String?>? fromValueTransformer,
  17. VoidCallback? onReset,
  18. bool readOnly = false,
  19. required int maxLength,
  20. double? gap,
  21. required List<Widget> children,
  22. bool jumpToNextWhenFilled = true,
  23. List<TextInputFormatter>? inputFormatters,
  24. TextInputType? keyboardType,
})

Implementation

ShadInputOTPFormField({
  super.id,
  super.key,
  super.onSaved,
  super.forceErrorText,

  /// {@macro ShadFormBuilderField.validator}
  String? Function(String)? validator,

  /// {@macro ShadInputOTP.initialValue}
  super.initialValue,

  /// {@macro ShadInputOTP.enabled}
  super.enabled,
  super.autovalidateMode,
  super.restorationId,
  super.label,
  super.error,
  super.description,

  /// {@macro ShadInputOTP.onChanged}
  void Function(String)? onChanged,
  @Deprecated('Use toValueTransformer instead') super.valueTransformer,
  super.toValueTransformer,
  super.fromValueTransformer,
  super.onReset,
  super.readOnly,

  /// {@macro ShadInputOTP.maxLength}
  required int maxLength,

  /// {@macro ShadInputOTP.gap}
  double? gap,

  /// {@macro ShadInputOTP.children}
  required List<Widget> children,

  /// {@macro ShadInputOTP.jumpToNextWhenFilled}
  bool jumpToNextWhenFilled = true,

  /// {@macro ShadInputOTP.inputFormatters}
  List<TextInputFormatter>? inputFormatters,

  /// {@macro ShadInputOTP.keyboardType}
  TextInputType? keyboardType,
}) : super(
       validator: validator == null
           ? null
           : (v) => validator(v ?? ''.padRight(maxLength)),
       onChanged: onChanged == null
           ? null
           : (v) => onChanged(v ?? ''.padRight(maxLength)),
       builder: (state) {
         state as ShadFormBuilderInputOTPState;
         return ShadInputOTP(
           enabled: state.enabled,
           keyboardType: keyboardType,
           inputFormatters: inputFormatters,
           gap: gap,
           maxLength: maxLength,
           jumpToNextWhenFilled: jumpToNextWhenFilled,
           onChanged: state.didChange,
           initialValue: state.initialValue,
           children: children,
         );
       },
     );