feat(feed): add recipes screen

This commit is contained in:
mso7nueh
2024-08-02 11:52:10 +03:00
parent c78f8dacdf
commit 904adbba2f
111 changed files with 1511 additions and 1784 deletions

View File

@@ -55,6 +55,7 @@ class _AuthScreenState extends State<AuthScreen> {
return CustomTextFormField(
controller: emailController,
textInputAction: TextInputAction.next,
keyboardType: TextInputType.emailAddress,
textInputType: TextInputType.emailAddress,
hintText: 'Введите email',
);

View File

@@ -22,6 +22,7 @@ class AuthState extends Equatable {
passwordController,
authModelObj,
];
AuthState copyWith({
TextEditingController? emailController,
TextEditingController? passwordController,

View File

@@ -14,6 +14,7 @@ class DietCreateState extends Equatable {
@override
List<Object?> get props => [dietModelObj];
DietCreateState copyWith({DietCreateModel? dietModelObj}) {
return DietCreateState(
dietModelObj: dietModelObj ?? this.dietModelObj,
@@ -31,12 +32,14 @@ class DietCreateLoadedState extends DietCreateState {
DietCreateModel? dietModelObj;
TextEditingController? name;
TextEditingController? details;
@override
List<Object?> get props => [
dietModelObj,
name,
details,
];
DietCreateLoadedState copyWith({
DietCreateModel? dietModelObj,
TextEditingController? name,

View File

@@ -17,7 +17,9 @@ class DietSelectInitialEvent extends DietSelectEvent {
class UploadAvatar extends DietSelectEvent {
UploadAvatar(this.image);
final XFile image;
@override
List<Object> get props => [image];
}

View File

@@ -21,11 +21,13 @@ class DietSelectLoadedState extends DietSelectState {
DietSelectModel? myProfileModelObj;
List<dynamic>? posts;
@override
List<Object?> get props => [
myProfileModelObj,
posts,
];
DietSelectLoadedState copyWith({
DietSelectModel? myProfileModelObj,
List<dynamic>? posts,

View File

@@ -17,7 +17,9 @@ class DietInitialEvent extends DietEvent {
class DeleteEntry extends DietEvent {
DeleteEntry(this.id);
final int id;
@override
List<Object?> get props => [id];
}

View File

@@ -14,6 +14,7 @@ class DietState extends Equatable {
@override
List<Object?> get props => [dietModelObj];
DietState copyWith({DietModel? dietModelObj}) {
return DietState(
dietModelObj: dietModelObj ?? this.dietModelObj,
@@ -26,8 +27,10 @@ class DietLoadedState extends DietState {
DietModel? dietModelObj;
Map<String, dynamic>? diet;
@override
List<Object?> get props => [dietModelObj, diet];
DietLoadedState copyWith({DietModel? dietModelObj, Map<String, dynamic>? diet}) {
return DietLoadedState(
dietModelObj: dietModelObj ?? this.dietModelObj,

View File

@@ -1,4 +1,5 @@
import 'dart:async';
import 'package:dio/dio.dart';
import 'package:eatvio_app/app_router.dart';
import 'package:eatvio_app/locator_service.dart';
@@ -12,7 +13,6 @@ import 'package:image_picker/image_picker.dart';
import '/core/app_export.dart';
part 'blog_post_create_event.dart';
part 'blog_post_create_state.dart';
/// A bloc that manages the state of a BlogPostCreate according to the event that is dispatched to it.

View File

@@ -14,6 +14,7 @@ class BlogPostEditState extends Equatable {
@override
List<Object?> get props => [blog_postModelObj];
BlogPostEditState copyWith({BlogPostEditModel? blog_postModelObj}) {
return BlogPostEditState(
blog_postModelObj: blog_postModelObj ?? this.blog_postModelObj,
@@ -35,8 +36,10 @@ class BlogPostEditLoadedState extends BlogPostEditState {
TextEditingController? title;
TextEditingController? description;
TextEditingController? youtubeURL;
@override
List<Object?> get props => [blog_postModelObj, blog_post, title, description, youtubeURL];
BlogPostEditLoadedState copyWith({
BlogPostEditModel? blog_postModelObj,
Map<String, dynamic>? blog_post,

View File

@@ -5,7 +5,9 @@ import 'package:equatable/equatable.dart';
class BlogPostModel extends Equatable {
final String blog_postID;
BlogPostModel({required this.blog_postID, this.comments = const []});
List<CommentModel> comments;
BlogPostModel copyWith({String? blog_postID, List<CommentModel>? comments}) {

View File

@@ -17,14 +17,18 @@ class GlossaryInitialEvent extends GlossaryEvent {
class DeleteEntry extends GlossaryEvent {
DeleteEntry(this.id);
final int id;
@override
List<Object?> get props => [id];
}
class ChangeProductGroup extends GlossaryEvent {
ChangeProductGroup(this.id);
final int id;
@override
List<Object?> get props => [id];
}

View File

@@ -14,6 +14,7 @@ class GlossaryState extends Equatable {
@override
List<Object?> get props => [glossaryModelObj];
GlossaryState copyWith({GlossaryModel? glossaryModelObj}) {
return GlossaryState(
glossaryModelObj: glossaryModelObj ?? this.glossaryModelObj,
@@ -33,8 +34,10 @@ class GlossaryLoadedState extends GlossaryState {
String? token;
List<SelectionPopupModel>? productGroups;
List<dynamic>? productList;
@override
List<Object?> get props => [glossaryModelObj, productGroups, productList, token];
GlossaryLoadedState copyWith({
GlossaryModel? glossaryModelObj,
String? token,

View File

@@ -7,6 +7,7 @@ import 'package:equatable/equatable.dart';
class GlossaryModel extends Equatable {
GlossaryModel();
GlossaryModel copyWith() {
return GlossaryModel();
}

View File

@@ -14,6 +14,7 @@ class PlanCreateState extends Equatable {
@override
List<Object?> get props => [planModelObj];
PlanCreateState copyWith({PlanCreateModel? planModelObj}) {
return PlanCreateState(
planModelObj: planModelObj ?? this.planModelObj,
@@ -31,12 +32,14 @@ class PlanCreateLoadedState extends PlanCreateState {
PlanCreateModel? planModelObj;
TextEditingController? name;
TextEditingController? details;
@override
List<Object?> get props => [
planModelObj,
name,
details,
];
PlanCreateLoadedState copyWith({
PlanCreateModel? planModelObj,
TextEditingController? name,

View File

@@ -14,6 +14,7 @@ class PlanEditState extends Equatable {
@override
List<Object?> get props => [planModelObj];
PlanEditState copyWith({PlanEditModel? planModelObj}) {
return PlanEditState(
planModelObj: planModelObj ?? this.planModelObj,
@@ -35,8 +36,10 @@ class PlanEditLoadedState extends PlanEditState {
TextEditingController? name;
TextEditingController? details;
TextEditingController? duration;
@override
List<Object?> get props => [planModelObj, plan, name, details, duration];
PlanEditLoadedState copyWith({
PlanEditModel? planModelObj,
Map<String, dynamic>? plan,

View File

@@ -17,7 +17,9 @@ class PlanSelectInitialEvent extends PlanSelectEvent {
class UploadAvatar extends PlanSelectEvent {
UploadAvatar(this.image);
final XFile image;
@override
List<Object> get props => [image];
}

View File

@@ -21,11 +21,13 @@ class PlanSelectLoadedState extends PlanSelectState {
PlanSelectModel? myProfileModelObj;
List<dynamic>? posts;
@override
List<Object?> get props => [
myProfileModelObj,
posts,
];
PlanSelectLoadedState copyWith({
PlanSelectModel? myProfileModelObj,
List<dynamic>? posts,

View File

@@ -17,7 +17,9 @@ class PlanInitialEvent extends PlanEvent {
class DeleteEntry extends PlanEvent {
DeleteEntry(this.id);
final int id;
@override
List<Object?> get props => [id];
}

View File

@@ -14,6 +14,7 @@ class PlanState extends Equatable {
@override
List<Object?> get props => [planModelObj];
PlanState copyWith({PlanModel? planModelObj}) {
return PlanState(
planModelObj: planModelObj ?? this.planModelObj,
@@ -26,8 +27,10 @@ class PlanLoadedState extends PlanState {
PlanModel? planModelObj;
Map<String, dynamic>? plan;
@override
List<Object?> get props => [planModelObj, plan];
PlanLoadedState copyWith({PlanModel? planModelObj, Map<String, dynamic>? plan}) {
return PlanLoadedState(
planModelObj: planModelObj ?? this.planModelObj,

View File

@@ -17,7 +17,9 @@ class MyProfileInitialEvent extends MyProfileEvent {
class UploadAvatar extends MyProfileEvent {
UploadAvatar(this.image);
final XFile image;
@override
List<Object> get props => [image];
}

View File

@@ -90,6 +90,7 @@ class MyProfileLoadedState extends MyProfileState {
String? selectedActivity;
String? hypoFormController;
String? hyperFormController;
@override
List<Object?> get props => [
myProfileModelObj,
@@ -127,6 +128,7 @@ class MyProfileLoadedState extends MyProfileState {
hypoFormController,
hyperFormController,
];
MyProfileLoadedState copyWith({
MyProfileModel? myProfileModelObj,
Map<String, dynamic>? user,

View File

@@ -22,19 +22,23 @@ class CreateRecipe extends RecipeCreateEvent {
class AddStep extends RecipeCreateEvent {
AddStep();
@override
List<Object?> get props => [];
}
class RemoveStep extends RecipeCreateEvent {
RemoveStep(this.id);
final int id;
@override
List<Object?> get props => [id];
}
class ReloadScreen extends RecipeCreateEvent {
ReloadScreen();
@override
List<Object?> get props => [];
}

View File

@@ -14,6 +14,7 @@ class RecipeCreateState extends Equatable {
@override
List<Object?> get props => [recipeModelObj];
RecipeCreateState copyWith({RecipeCreateModel? recipeModelObj}) {
return RecipeCreateState(
recipeModelObj: recipeModelObj ?? this.recipeModelObj,
@@ -41,6 +42,7 @@ class RecipeCreateLoadedState extends RecipeCreateState {
TextEditingController? tags;
List<dynamic>? steps;
List<TextEditingController>? stepDescriptions;
@override
List<Object?> get props => [
recipeModelObj,
@@ -52,6 +54,7 @@ class RecipeCreateLoadedState extends RecipeCreateState {
tags,
stepDescriptions,
];
RecipeCreateLoadedState copyWith({
RecipeCreateModel? recipeModelObj,
String? token,

View File

@@ -22,19 +22,23 @@ class EditRecipe extends RecipeEditEvent {
class AddStep extends RecipeEditEvent {
AddStep();
@override
List<Object?> get props => [];
}
class RemoveStep extends RecipeEditEvent {
RemoveStep(this.id);
final int id;
@override
List<Object?> get props => [id];
}
class ReloadScreen extends RecipeEditEvent {
ReloadScreen();
@override
List<Object?> get props => [];
}

View File

@@ -14,6 +14,7 @@ class RecipeEditState extends Equatable {
@override
List<Object?> get props => [recipeModelObj];
RecipeEditState copyWith({RecipeEditModel? recipeModelObj}) {
return RecipeEditState(
recipeModelObj: recipeModelObj ?? this.recipeModelObj,
@@ -45,8 +46,10 @@ class RecipeEditLoadedState extends RecipeEditState {
List<dynamic>? steps;
List<dynamic>? tags;
List<TextEditingController>? stepDescriptions;
@override
List<Object?> get props => [recipeModelObj, recipe, title, description, video_url];
RecipeEditLoadedState copyWith({
RecipeEditModel? recipeModelObj,
Map<String, dynamic>? recipe,

View File

@@ -17,7 +17,9 @@ class RecipeSelectInitialEvent extends RecipeSelectEvent {
class UploadAvatar extends RecipeSelectEvent {
UploadAvatar(this.image);
final XFile image;
@override
List<Object> get props => [image];
}

View File

@@ -21,11 +21,13 @@ class RecipeSelectLoadedState extends RecipeSelectState {
RecipeSelectModel? myProfileModelObj;
List<dynamic>? posts;
@override
List<Object?> get props => [
myProfileModelObj,
posts,
];
RecipeSelectLoadedState copyWith({
RecipeSelectModel? myProfileModelObj,
List<dynamic>? posts,

View File

@@ -17,14 +17,18 @@ class RecipeInitialEvent extends RecipeEvent {
class DeleteEntry extends RecipeEvent {
DeleteEntry(this.id);
final int id;
@override
List<Object?> get props => [id];
}
class CreateComment extends RecipeEvent {
CreateComment(this.body);
final String body;
@override
List<Object?> get props => [body];
}

View File

@@ -14,6 +14,7 @@ class RecipeState extends Equatable {
@override
List<Object?> get props => [recipeModelObj];
RecipeState copyWith({RecipeModel? recipeModelObj}) {
return RecipeState(
recipeModelObj: recipeModelObj ?? this.recipeModelObj,
@@ -41,6 +42,7 @@ class RecipeLoadedState extends RecipeState {
List<dynamic>? steps;
List<dynamic>? tags;
String? token;
@override
List<Object?> get props => [
recipeModelObj,
@@ -51,6 +53,7 @@ class RecipeLoadedState extends RecipeState {
commentController,
steps,
];
RecipeLoadedState copyWith({
RecipeModel? recipeModelObj,
Map<String, dynamic>? recipe,

View File

@@ -21,11 +21,13 @@ class SubscribersLoadedState extends SubscribersState {
SubscribersModel? myProfileModelObj;
dynamic subscribers;
@override
List<Object?> get props => [
myProfileModelObj,
subscribers,
];
SubscribersLoadedState copyWith({
SubscribersModel? myProfileModelObj,
dynamic subscribers,