feat!(form): migrate to wyatt architecture
This commit is contained in:
@@ -18,7 +18,7 @@ import 'package:flutter/material.dart';
|
||||
import 'package:flutter_bloc/flutter_bloc.dart';
|
||||
import 'package:form_bloc_example/app/metadata.dart';
|
||||
import 'package:form_bloc_example/constants.dart';
|
||||
import 'package:form_bloc_example/cubit/custom_form_cubit.dart';
|
||||
import 'package:form_bloc_example/simple_custom_form_cubit/simple_custom_form_cubit.dart';
|
||||
import 'package:form_bloc_example/sign_up/sign_up_page.dart';
|
||||
import 'package:wyatt_form_bloc/wyatt_form_bloc.dart';
|
||||
|
||||
@@ -29,41 +29,43 @@ class App extends StatelessWidget {
|
||||
const App({Key? key}) : super(key: key);
|
||||
|
||||
static List<FormInput> getNormalEntries() {
|
||||
return const [
|
||||
FormInput(formFieldName, Name.pure(), metadata: FormInputMetadata<Metadata>(extra: blue)),
|
||||
FormInput(formFieldEmail, Email.pure(), metadata: FormInputMetadata<Metadata>(extra: blue)),
|
||||
FormInput(formFieldPhone, Phone.pure(), metadata: FormInputMetadata<Metadata>(extra: red)),
|
||||
FormInput(
|
||||
formFieldList, ListOption<String>.pure(defaultValue: ['checkbox3'])),
|
||||
FormInput(formFieldRadio, TextString.pure()),
|
||||
FormInput(formFieldPro, Boolean.pure(),
|
||||
metadata: FormInputMetadata<Metadata>(name: 'business')),
|
||||
FormInput(formFieldHidden, Boolean.pure(),
|
||||
metadata: FormInputMetadata<Metadata>(export: false, extra: blue)),
|
||||
return [
|
||||
FormInput(formFieldName, const Name.pure(),
|
||||
metadata: const FormInputMetadata<Metadata>(extra: blue)),
|
||||
FormInput(formFieldEmail, const Email.pure(),
|
||||
metadata: const FormInputMetadata<Metadata>(extra: blue)),
|
||||
FormInput(formFieldList,
|
||||
const ListOption<String>.pure(defaultValue: 'c3')),
|
||||
FormInput(formFieldRadio, const TextString.pure()),
|
||||
FormInput(formFieldPro, const Boolean.pure(),
|
||||
metadata: const FormInputMetadata<Metadata>(name: 'business')),
|
||||
FormInput(formFieldHidden, const Boolean.pure(),
|
||||
metadata:
|
||||
const FormInputMetadata<Metadata>(export: false, extra: blue)),
|
||||
];
|
||||
}
|
||||
|
||||
static List<FormInput> getBusinessEntries() {
|
||||
const entries = [
|
||||
FormInput(formFieldSiren, Siren.pure()),
|
||||
FormInput(formFieldIban, Iban.pure()),
|
||||
final entries = [
|
||||
FormInput(formFieldPhone, const Phone.pure(),
|
||||
metadata: const FormInputMetadata<Metadata>(extra: red)),
|
||||
];
|
||||
return getNormalEntries() + entries;
|
||||
}
|
||||
|
||||
static FormData getNormalFormData() {
|
||||
return FormData(getNormalEntries());
|
||||
static WyattForm getNormalFormData() {
|
||||
return WyattFormImpl(getNormalEntries());
|
||||
}
|
||||
|
||||
static FormData getProFormData() {
|
||||
return FormData(getBusinessEntries());
|
||||
static WyattForm getProFormData() {
|
||||
return WyattFormImpl(getBusinessEntries());
|
||||
}
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
FormDataCubit formCubit = CustomFormCubit(inputs: getNormalFormData());
|
||||
SimpleCustomFormCubit formCubit = SimpleCustomFormCubit(getNormalFormData());
|
||||
|
||||
return BlocProvider(
|
||||
return BlocProvider<SimpleCustomFormCubit>(
|
||||
create: (context) => formCubit,
|
||||
child: const WidgetTree(),
|
||||
);
|
||||
|
||||
@@ -28,7 +28,5 @@ class Metadata {
|
||||
});
|
||||
|
||||
@override
|
||||
String toString() {
|
||||
return category.toString();
|
||||
}
|
||||
String toString() => 'Metadata(category: $category)';
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user