[DEV] Done with the action field.

This commit is contained in:
2024-06-18 12:16:29 +03:00
parent b12b2cd3c2
commit 4b330cb8d1
2 changed files with 470 additions and 1 deletions

View File

@@ -1,6 +1,7 @@
import 'package:flutter/services.dart';
import 'package:flutter/widgets.dart';
//
import 'src/action_field.dart';
import 'src/text_field.dart';
import 'src/configuration.dart';
import 'src/style.dart';
@@ -27,7 +28,6 @@ class AstromicFields {
//
required AstromicFieldStyle Function(bool isEnabled, bool isFocused) style,
//
//s1 -- Content
String? hint,
//
Widget? Function(bool isEnabled, bool isFocused, VoidCallback stateSetter)? prefixWidget,
@@ -57,4 +57,49 @@ class AstromicFields {
),
],
);
//S1 -- Action Field
static Widget action<T>(
{Key? stateKey,
(T item, String label)? initialValue,
required TextEditingController controller,
//
Future<(T item, String label)?> Function((T item, String label)? currentValue)? onTap,
Future<(T item, String label)?> Function((T item, String label)? currentValue)? onHold,
required String Function(String? oldValue, String newValue) textFieldMapper,
//
required AstromicFieldConfiguration configuration,
//
AutovalidateMode? validatingMode,
String? Function(bool isEnabled, String? text)? validator,
List<TextInputFormatter>? inputFormatters,
//
required AstromicFieldStyle Function(bool isEnabled) style,
//
String? hint,
//
Widget? Function(bool isEnabled, VoidCallback stateSetter)? prefixWidget,
Widget? Function(bool isEnabled, VoidCallback stateSetter)? suffixWidget,
Widget? Function(bool isEnabled)? messageBuilder}) =>
Column(
children: [
AstromicActionField(
stateKey: stateKey,
textController: controller,
initialValue: initialValue,
onTap: onTap,
onHold: onHold,
textFieldMapper: textFieldMapper,
configuration: configuration,
validatingMode: validatingMode,
validator: validator,
inputFormatters: inputFormatters,
style: style,
hint: hint,
prefixWidget: prefixWidget,
suffixWidget: suffixWidget,
messageBuilder: messageBuilder,
),
],
);
}