bind method

void bind({
  1. required CurrentProperty<T> property,
  2. required CurrentTextControllersLifecycleMixin<CurrentWidget<CurrentViewModel>, CurrentViewModel> lifecycleProvider,
  3. required T fromString(
    1. String text
    ),
  4. String? asString(
    1. T propertyValue
    )?,
  5. T? defaultValue,
  6. CurrentFieldValidation? validation,
  7. CurrentTextControllerValidationBuilder<T>? validationBuilder,
  8. CurrentTextControllerValidationIssues? validationIssues,
})

Implementation

void bind({
  required CurrentProperty<T> property,
  required CurrentTextControllersLifecycleMixin lifecycleProvider,
  required T Function(String text) fromString,
  String? Function(T propertyValue)? asString,
  T? defaultValue,
  CurrentFieldValidation<dynamic>? validation,
  CurrentTextControllerValidationBuilder<T>? validationBuilder,
  CurrentTextControllerValidationIssues? validationIssues,
}) {
  String? asStringWrapper(T? propertyValue) =>
      asString?.call(propertyValue as T) ?? propertyValue?.toString();

  super._bind(
    property: property,
    lifecycleProvider: lifecycleProvider,
    fromString: fromString,
    asString: asStringWrapper,
    defaultValue: defaultValue,
    validation: validation,
    validationBuilder: validationBuilder == null
        ? null
        : (property, context) =>
            validationBuilder(property as CurrentProperty<T>, context),
    validationIssues: validationIssues,
  );
}