ListedItemFormBloc(- String? appId
)
Implementation
ListedItemFormBloc(
this.appId,
) : super(ListedItemFormUninitialized()) {
on<InitialiseNewListedItemFormEvent>((event, emit) {
ListedItemFormLoaded loaded = ListedItemFormLoaded(
value: ListedItemModel(
documentID: "IDENTIFIED",
description: "",
));
emit(loaded);
});
on<InitialiseListedItemFormEvent>((event, emit) async {
ListedItemFormLoaded loaded = ListedItemFormLoaded(value: event.value);
emit(loaded);
});
on<InitialiseListedItemFormNoLoadEvent>((event, emit) async {
ListedItemFormLoaded loaded = ListedItemFormLoaded(value: event.value);
emit(loaded);
});
ListedItemModel? newValue;
on<ChangedListedItemDescription>((event, emit) async {
if (state is ListedItemFormInitialized) {
final currentState = state as ListedItemFormInitialized;
newValue = currentState.value!.copyWith(description: event.value);
emit(SubmittableListedItemForm(value: newValue));
}
});
on<ChangedListedItemAction>((event, emit) async {
if (state is ListedItemFormInitialized) {
final currentState = state as ListedItemFormInitialized;
newValue = currentState.value!.copyWith(action: event.value);
emit(SubmittableListedItemForm(value: newValue));
}
});
on<ChangedListedItemImage>((event, emit) async {
if (state is ListedItemFormInitialized) {
final currentState = state as ListedItemFormInitialized;
if (event.value != null) {
newValue = currentState.value!.copyWith(
image: await platformMediumRepository(appId: appId)!
.get(event.value));
}
emit(SubmittableListedItemForm(value: newValue));
}
});
on<ChangedListedItemPosSize>((event, emit) async {
if (state is ListedItemFormInitialized) {
final currentState = state as ListedItemFormInitialized;
newValue = currentState.value!.copyWith(posSize: event.value);
emit(SubmittableListedItemForm(value: newValue));
}
});
}