diff --git a/.gitignore b/.gitignore index 4a5c4e73..5bb96d46 100644 --- a/.gitignore +++ b/.gitignore @@ -7,3 +7,5 @@ /.flutter-plugins-dependencies /.packages /node_modules/ +/android/app/release/app-release.aab +/android/app/upload-keystore.jks diff --git a/lib/core/initialization_cubit/ws_service.g.dart b/lib/core/initialization_cubit/ws_service.g.dart index c5a42eeb..ffca6af4 100644 --- a/lib/core/initialization_cubit/ws_service.g.dart +++ b/lib/core/initialization_cubit/ws_service.g.dart @@ -9,11 +9,7 @@ part of 'ws_service.dart'; // ignore_for_file: unnecessary_brace_in_string_interps,no_leading_underscores_for_local_identifiers,unused_element,unnecessary_string_interpolations class _WsService implements WsService { - _WsService( - this._dio, { - this.baseUrl, - this.errorLogger, - }); + _WsService(this._dio, {this.baseUrl, this.errorLogger}); final Dio _dio; @@ -27,22 +23,16 @@ class _WsService implements WsService { final queryParameters = {}; final _headers = {}; const Map? _data = null; - final _options = _setStreamType(Options( - method: 'GET', - headers: _headers, - extra: _extra, - ) - .compose( - _dio.options, - '/api/profile/ws/params', - queryParameters: queryParameters, - data: _data, - ) - .copyWith( - baseUrl: _combineBaseUrls( - _dio.options.baseUrl, - baseUrl, - ))); + final _options = _setStreamType( + Options(method: 'GET', headers: _headers, extra: _extra) + .compose( + _dio.options, + '/api/profile/ws/params', + queryParameters: queryParameters, + data: _data, + ) + .copyWith(baseUrl: _combineBaseUrls(_dio.options.baseUrl, baseUrl)), + ); final _result = await _dio.fetch>(_options); late WebsocketInfoModel _value; try { @@ -67,10 +57,7 @@ class _WsService implements WsService { return requestOptions; } - String _combineBaseUrls( - String dioBaseUrl, - String? baseUrl, - ) { + String _combineBaseUrls(String dioBaseUrl, String? baseUrl) { if (baseUrl == null || baseUrl.trim().isEmpty) { return dioBaseUrl; } diff --git a/lib/features/chat/services/chat_service.g.dart b/lib/features/chat/services/chat_service.g.dart index 5034c597..25c122bc 100644 --- a/lib/features/chat/services/chat_service.g.dart +++ b/lib/features/chat/services/chat_service.g.dart @@ -9,11 +9,7 @@ part of 'chat_service.dart'; // ignore_for_file: unnecessary_brace_in_string_interps,no_leading_underscores_for_local_identifiers,unused_element,unnecessary_string_interpolations class _ChatService implements ChatService { - _ChatService( - this._dio, { - this.baseUrl, - this.errorLogger, - }); + _ChatService(this._dio, {this.baseUrl, this.errorLogger}); final Dio _dio; @@ -28,22 +24,16 @@ class _ChatService implements ChatService { queryParameters.removeWhere((k, v) => v == null); final _headers = {}; const Map? _data = null; - final _options = _setStreamType(Options( - method: 'GET', - headers: _headers, - extra: _extra, - ) - .compose( - _dio.options, - '/api/chat/index', - queryParameters: queryParameters, - data: _data, - ) - .copyWith( - baseUrl: _combineBaseUrls( - _dio.options.baseUrl, - baseUrl, - ))); + final _options = _setStreamType( + Options(method: 'GET', headers: _headers, extra: _extra) + .compose( + _dio.options, + '/api/chat/index', + queryParameters: queryParameters, + data: _data, + ) + .copyWith(baseUrl: _combineBaseUrls(_dio.options.baseUrl, baseUrl)), + ); final _result = await _dio.fetch>(_options); late ChatRoomPreviewModel _value; try { @@ -61,27 +51,23 @@ class _ChatService implements ChatService { final queryParameters = {}; final _headers = {}; const Map? _data = null; - final _options = _setStreamType>(Options( - method: 'GET', - headers: _headers, - extra: _extra, - ) - .compose( - _dio.options, - '/api/chat/show/${id}', - queryParameters: queryParameters, - data: _data, - ) - .copyWith( - baseUrl: _combineBaseUrls( - _dio.options.baseUrl, - baseUrl, - ))); + final _options = _setStreamType>( + Options(method: 'GET', headers: _headers, extra: _extra) + .compose( + _dio.options, + '/api/chat/show/${id}', + queryParameters: queryParameters, + data: _data, + ) + .copyWith(baseUrl: _combineBaseUrls(_dio.options.baseUrl, baseUrl)), + ); final _result = await _dio.fetch>(_options); late Map _value; try { - _value = _result.data!.map((k, dynamic v) => - MapEntry(k, ChatRoomModel.fromJson(v as Map))); + _value = _result.data!.map( + (k, dynamic v) => + MapEntry(k, ChatRoomModel.fromJson(v as Map)), + ); } on Object catch (e, s) { errorLogger?.logError(e, s, _options); rethrow; @@ -101,31 +87,26 @@ class _ChatService implements ChatService { final _headers = {}; final _data = FormData(); if (data != null) { - _data.fields.add(MapEntry( - 'data', - data, - )); + _data.fields.add(MapEntry('data', data)); } if (media_data != null) { _data.files.addAll(media_data.map((i) => MapEntry('media_data[]', i))); } - final _options = _setStreamType(Options( - method: 'POST', - headers: _headers, - extra: _extra, - contentType: 'multipart/form-data', - ) - .compose( - _dio.options, - '/api/chat/${id}/message/send', - queryParameters: queryParameters, - data: _data, - ) - .copyWith( - baseUrl: _combineBaseUrls( - _dio.options.baseUrl, - baseUrl, - ))); + final _options = _setStreamType( + Options( + method: 'POST', + headers: _headers, + extra: _extra, + contentType: 'multipart/form-data', + ) + .compose( + _dio.options, + '/api/chat/${id}/message/send', + queryParameters: queryParameters, + data: _data, + ) + .copyWith(baseUrl: _combineBaseUrls(_dio.options.baseUrl, baseUrl)), + ); await _dio.fetch(_options); } @@ -138,22 +119,16 @@ class _ChatService implements ChatService { final queryParameters = {}; final _headers = {}; const Map? _data = null; - final _options = _setStreamType(Options( - method: 'GET', - headers: _headers, - extra: _extra, - ) - .compose( - _dio.options, - '/api/chat/show/${id}/messages?page=${page}', - queryParameters: queryParameters, - data: _data, - ) - .copyWith( - baseUrl: _combineBaseUrls( - _dio.options.baseUrl, - baseUrl, - ))); + final _options = _setStreamType( + Options(method: 'GET', headers: _headers, extra: _extra) + .compose( + _dio.options, + '/api/chat/show/${id}/messages?page=${page}', + queryParameters: queryParameters, + data: _data, + ) + .copyWith(baseUrl: _combineBaseUrls(_dio.options.baseUrl, baseUrl)), + ); final _result = await _dio.fetch>(_options); late ChatMessagesModel _value; try { @@ -171,22 +146,16 @@ class _ChatService implements ChatService { final queryParameters = {}; final _headers = {}; const Map? _data = null; - final _options = _setStreamType(Options( - method: 'GET', - headers: _headers, - extra: _extra, - ) - .compose( - _dio.options, - '/api/chat/get_by_user/${user}', - queryParameters: queryParameters, - data: _data, - ) - .copyWith( - baseUrl: _combineBaseUrls( - _dio.options.baseUrl, - baseUrl, - ))); + final _options = _setStreamType( + Options(method: 'GET', headers: _headers, extra: _extra) + .compose( + _dio.options, + '/api/chat/get_by_user/${user}', + queryParameters: queryParameters, + data: _data, + ) + .copyWith(baseUrl: _combineBaseUrls(_dio.options.baseUrl, baseUrl)), + ); final _result = await _dio.fetch>(_options); late ChatRoomModel _value; try { @@ -211,10 +180,7 @@ class _ChatService implements ChatService { return requestOptions; } - String _combineBaseUrls( - String dioBaseUrl, - String? baseUrl, - ) { + String _combineBaseUrls(String dioBaseUrl, String? baseUrl) { if (baseUrl == null || baseUrl.trim().isEmpty) { return dioBaseUrl; } diff --git a/lib/features/diets/services/diet_service.g.dart b/lib/features/diets/services/diet_service.g.dart index b701c1a3..03a54318 100644 --- a/lib/features/diets/services/diet_service.g.dart +++ b/lib/features/diets/services/diet_service.g.dart @@ -9,11 +9,7 @@ part of 'diet_service.dart'; // ignore_for_file: unnecessary_brace_in_string_interps,no_leading_underscores_for_local_identifiers,unused_element,unnecessary_string_interpolations class _DietService implements DietService { - _DietService( - this._dio, { - this.baseUrl, - this.errorLogger, - }); + _DietService(this._dio, {this.baseUrl, this.errorLogger}); final Dio _dio; @@ -27,22 +23,16 @@ class _DietService implements DietService { final queryParameters = {}; final _headers = {}; const Map? _data = null; - final _options = _setStreamType(Options( - method: 'POST', - headers: _headers, - extra: _extra, - ) - .compose( - _dio.options, - '/api/diets/${id}/like', - queryParameters: queryParameters, - data: _data, - ) - .copyWith( - baseUrl: _combineBaseUrls( - _dio.options.baseUrl, - baseUrl, - ))); + final _options = _setStreamType( + Options(method: 'POST', headers: _headers, extra: _extra) + .compose( + _dio.options, + '/api/diets/${id}/like', + queryParameters: queryParameters, + data: _data, + ) + .copyWith(baseUrl: _combineBaseUrls(_dio.options.baseUrl, baseUrl)), + ); final _result = await _dio.fetch>(_options); late DietLikesModel _value; try { @@ -60,22 +50,16 @@ class _DietService implements DietService { final queryParameters = {}; final _headers = {}; const Map? _data = null; - final _options = _setStreamType(Options( - method: 'POST', - headers: _headers, - extra: _extra, - ) - .compose( - _dio.options, - '/api/diets/${id}/add_to_favorite', - queryParameters: queryParameters, - data: _data, - ) - .copyWith( - baseUrl: _combineBaseUrls( - _dio.options.baseUrl, - baseUrl, - ))); + final _options = _setStreamType( + Options(method: 'POST', headers: _headers, extra: _extra) + .compose( + _dio.options, + '/api/diets/${id}/add_to_favorite', + queryParameters: queryParameters, + data: _data, + ) + .copyWith(baseUrl: _combineBaseUrls(_dio.options.baseUrl, baseUrl)), + ); final _result = await _dio.fetch>(_options); late Diet _value; try { @@ -93,22 +77,16 @@ class _DietService implements DietService { final queryParameters = {}; final _headers = {}; const Map? _data = null; - final _options = _setStreamType(Options( - method: 'POST', - headers: _headers, - extra: _extra, - ) - .compose( - _dio.options, - '/api/diets/${id}/remove_from_favorite', - queryParameters: queryParameters, - data: _data, - ) - .copyWith( - baseUrl: _combineBaseUrls( - _dio.options.baseUrl, - baseUrl, - ))); + final _options = _setStreamType( + Options(method: 'POST', headers: _headers, extra: _extra) + .compose( + _dio.options, + '/api/diets/${id}/remove_from_favorite', + queryParameters: queryParameters, + data: _data, + ) + .copyWith(baseUrl: _combineBaseUrls(_dio.options.baseUrl, baseUrl)), + ); final _result = await _dio.fetch>(_options); late Diet _value; try { @@ -126,22 +104,16 @@ class _DietService implements DietService { final queryParameters = {}; final _headers = {}; const Map? _data = null; - final _options = _setStreamType(Options( - method: 'GET', - headers: _headers, - extra: _extra, - ) - .compose( - _dio.options, - '/api/diets/show/${id}', - queryParameters: queryParameters, - data: _data, - ) - .copyWith( - baseUrl: _combineBaseUrls( - _dio.options.baseUrl, - baseUrl, - ))); + final _options = _setStreamType( + Options(method: 'GET', headers: _headers, extra: _extra) + .compose( + _dio.options, + '/api/diets/show/${id}', + queryParameters: queryParameters, + data: _data, + ) + .copyWith(baseUrl: _combineBaseUrls(_dio.options.baseUrl, baseUrl)), + ); final _result = await _dio.fetch>(_options); late Diet _value; try { @@ -163,22 +135,16 @@ class _DietService implements DietService { final _headers = {}; final _data = {}; _data.addAll(body); - final _options = _setStreamType(Options( - method: 'POST', - headers: _headers, - extra: _extra, - ) - .compose( - _dio.options, - '/api/diets/${id}/start', - queryParameters: queryParameters, - data: _data, - ) - .copyWith( - baseUrl: _combineBaseUrls( - _dio.options.baseUrl, - baseUrl, - ))); + final _options = _setStreamType( + Options(method: 'POST', headers: _headers, extra: _extra) + .compose( + _dio.options, + '/api/diets/${id}/start', + queryParameters: queryParameters, + data: _data, + ) + .copyWith(baseUrl: _combineBaseUrls(_dio.options.baseUrl, baseUrl)), + ); await _dio.fetch(_options); } @@ -188,22 +154,16 @@ class _DietService implements DietService { final queryParameters = {}; final _headers = {}; const Map? _data = null; - final _options = _setStreamType(Options( - method: 'POST', - headers: _headers, - extra: _extra, - ) - .compose( - _dio.options, - '/api/diets/${id}/cancel', - queryParameters: queryParameters, - data: _data, - ) - .copyWith( - baseUrl: _combineBaseUrls( - _dio.options.baseUrl, - baseUrl, - ))); + final _options = _setStreamType( + Options(method: 'POST', headers: _headers, extra: _extra) + .compose( + _dio.options, + '/api/diets/${id}/cancel', + queryParameters: queryParameters, + data: _data, + ) + .copyWith(baseUrl: _combineBaseUrls(_dio.options.baseUrl, baseUrl)), + ); await _dio.fetch(_options); } @@ -220,10 +180,7 @@ class _DietService implements DietService { return requestOptions; } - String _combineBaseUrls( - String dioBaseUrl, - String? baseUrl, - ) { + String _combineBaseUrls(String dioBaseUrl, String? baseUrl) { if (baseUrl == null || baseUrl.trim().isEmpty) { return dioBaseUrl; } diff --git a/lib/features/feed/models/feed_blog_post_model.dart b/lib/features/feed/models/feed_blog_post_model.dart index 88eddbaf..69a1908d 100644 --- a/lib/features/feed/models/feed_blog_post_model.dart +++ b/lib/features/feed/models/feed_blog_post_model.dart @@ -18,7 +18,7 @@ class FeedBlogPostModel with _$FeedBlogPostModel { required String title, @JsonKey(name: "total_likes") required int totalLikes, @JsonKey(name: "total_views") required int totalViews, - @JsonKey(name: "total_comments") int? totalComments, + @JsonKey(name: "total_comments") required int totalComments, @JsonKey(name: "was_liked_by_me") required bool wasLikedByMe, }) = _FeedBlogPostModel; diff --git a/lib/features/feed/models/feed_blog_post_model.freezed.dart b/lib/features/feed/models/feed_blog_post_model.freezed.dart index 2d1870b0..4b2ad476 100644 --- a/lib/features/feed/models/feed_blog_post_model.freezed.dart +++ b/lib/features/feed/models/feed_blog_post_model.freezed.dart @@ -37,7 +37,7 @@ mixin _$FeedBlogPostModel { @JsonKey(name: "total_views") int get totalViews => throw _privateConstructorUsedError; @JsonKey(name: "total_comments") - int? get totalComments => throw _privateConstructorUsedError; + int get totalComments => throw _privateConstructorUsedError; @JsonKey(name: "was_liked_by_me") bool get wasLikedByMe => throw _privateConstructorUsedError; @@ -69,7 +69,7 @@ abstract class $FeedBlogPostModelCopyWith<$Res> { String title, @JsonKey(name: "total_likes") int totalLikes, @JsonKey(name: "total_views") int totalViews, - @JsonKey(name: "total_comments") int? totalComments, + @JsonKey(name: "total_comments") int totalComments, @JsonKey(name: "was_liked_by_me") bool wasLikedByMe}); $AuthorCopyWith<$Res> get author; @@ -101,7 +101,7 @@ class _$FeedBlogPostModelCopyWithImpl<$Res, $Val extends FeedBlogPostModel> Object? title = null, Object? totalLikes = null, Object? totalViews = null, - Object? totalComments = freezed, + Object? totalComments = null, Object? wasLikedByMe = null, }) { return _then(_value.copyWith( @@ -149,10 +149,10 @@ class _$FeedBlogPostModelCopyWithImpl<$Res, $Val extends FeedBlogPostModel> ? _value.totalViews : totalViews // ignore: cast_nullable_to_non_nullable as int, - totalComments: freezed == totalComments + totalComments: null == totalComments ? _value.totalComments : totalComments // ignore: cast_nullable_to_non_nullable - as int?, + as int, wasLikedByMe: null == wasLikedByMe ? _value.wasLikedByMe : wasLikedByMe // ignore: cast_nullable_to_non_nullable @@ -191,7 +191,7 @@ abstract class _$$FeedBlogPostModelImplCopyWith<$Res> String title, @JsonKey(name: "total_likes") int totalLikes, @JsonKey(name: "total_views") int totalViews, - @JsonKey(name: "total_comments") int? totalComments, + @JsonKey(name: "total_comments") int totalComments, @JsonKey(name: "was_liked_by_me") bool wasLikedByMe}); @override @@ -222,7 +222,7 @@ class __$$FeedBlogPostModelImplCopyWithImpl<$Res> Object? title = null, Object? totalLikes = null, Object? totalViews = null, - Object? totalComments = freezed, + Object? totalComments = null, Object? wasLikedByMe = null, }) { return _then(_$FeedBlogPostModelImpl( @@ -270,10 +270,10 @@ class __$$FeedBlogPostModelImplCopyWithImpl<$Res> ? _value.totalViews : totalViews // ignore: cast_nullable_to_non_nullable as int, - totalComments: freezed == totalComments + totalComments: null == totalComments ? _value.totalComments : totalComments // ignore: cast_nullable_to_non_nullable - as int?, + as int, wasLikedByMe: null == wasLikedByMe ? _value.wasLikedByMe : wasLikedByMe // ignore: cast_nullable_to_non_nullable @@ -297,7 +297,7 @@ class _$FeedBlogPostModelImpl implements _FeedBlogPostModel { required this.title, @JsonKey(name: "total_likes") required this.totalLikes, @JsonKey(name: "total_views") required this.totalViews, - @JsonKey(name: "total_comments") this.totalComments, + @JsonKey(name: "total_comments") required this.totalComments, @JsonKey(name: "was_liked_by_me") required this.wasLikedByMe}); factory _$FeedBlogPostModelImpl.fromJson(Map json) => @@ -332,7 +332,7 @@ class _$FeedBlogPostModelImpl implements _FeedBlogPostModel { final int totalViews; @override @JsonKey(name: "total_comments") - final int? totalComments; + final int totalComments; @override @JsonKey(name: "was_liked_by_me") final bool wasLikedByMe; @@ -420,7 +420,7 @@ abstract class _FeedBlogPostModel implements FeedBlogPostModel { required final String title, @JsonKey(name: "total_likes") required final int totalLikes, @JsonKey(name: "total_views") required final int totalViews, - @JsonKey(name: "total_comments") final int? totalComments, + @JsonKey(name: "total_comments") required final int totalComments, @JsonKey(name: "was_liked_by_me") required final bool wasLikedByMe}) = _$FeedBlogPostModelImpl; @@ -456,7 +456,7 @@ abstract class _FeedBlogPostModel implements FeedBlogPostModel { int get totalViews; @override @JsonKey(name: "total_comments") - int? get totalComments; + int get totalComments; @override @JsonKey(name: "was_liked_by_me") bool get wasLikedByMe; diff --git a/lib/features/feed/models/feed_blog_post_model.g.dart b/lib/features/feed/models/feed_blog_post_model.g.dart index 95da2b2b..024d2b47 100644 --- a/lib/features/feed/models/feed_blog_post_model.g.dart +++ b/lib/features/feed/models/feed_blog_post_model.g.dart @@ -20,7 +20,7 @@ _$FeedBlogPostModelImpl _$$FeedBlogPostModelImplFromJson( title: json['title'] as String, totalLikes: (json['total_likes'] as num).toInt(), totalViews: (json['total_views'] as num).toInt(), - totalComments: (json['total_comments'] as num?)?.toInt(), + totalComments: (json['total_comments'] as num).toInt(), wasLikedByMe: json['was_liked_by_me'] as bool, ); diff --git a/lib/features/feed/presentation/bloc/recipes_cubit/recipes_cubit.dart b/lib/features/feed/presentation/bloc/recipes_cubit/recipes_cubit.dart index d3a6a47e..94c9bc11 100644 --- a/lib/features/feed/presentation/bloc/recipes_cubit/recipes_cubit.dart +++ b/lib/features/feed/presentation/bloc/recipes_cubit/recipes_cubit.dart @@ -84,4 +84,8 @@ class RecipesCubit extends Cubit { ), ); } + + likeRecipe(String slug) async => await feedRepository.likeRecipe(slug: slug); + + unlikeRecipe(String slug) async => await feedRepository.unlikeRecipe(slug: slug); } diff --git a/lib/features/feed/presentation/widgets/recipes.dart b/lib/features/feed/presentation/widgets/recipes.dart index 9679e81c..e5dc0fa5 100644 --- a/lib/features/feed/presentation/widgets/recipes.dart +++ b/lib/features/feed/presentation/widgets/recipes.dart @@ -20,7 +20,10 @@ class Recipes extends StatelessWidget { shrinkWrap: true, physics: BouncingScrollPhysics(), itemBuilder: (context, index) { - return RecipesWidget(recipes: state.recipesList[index]); + return RecipesWidget( + recipes: state.recipesList[index], + index: index, + ); }, separatorBuilder: (context, index) { return SizedBox(height: 8); @@ -47,4 +50,4 @@ class Recipes extends StatelessWidget { ), ); } -} \ No newline at end of file +} diff --git a/lib/features/feed/presentation/widgets/recipes_widget.dart b/lib/features/feed/presentation/widgets/recipes_widget.dart index 61936531..d410793a 100644 --- a/lib/features/feed/presentation/widgets/recipes_widget.dart +++ b/lib/features/feed/presentation/widgets/recipes_widget.dart @@ -5,16 +5,24 @@ import 'package:eatvio_app/core/const.dart'; import 'package:eatvio_app/core/widgets/feed_icon_button.dart'; import 'package:eatvio_app/features/feed/models/recipes_model.dart'; import 'package:eatvio_app/core/theme/theme_helper.dart'; +import 'package:eatvio_app/features/feed/presentation/bloc/recipes_cubit/recipes_cubit.dart'; +import 'package:eatvio_app/features/feed/presentation/bloc/recipes_cubit/recipes_state.dart'; import 'package:flutter/material.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:flutter_html/flutter_html.dart'; import 'package:flutter_svg/flutter_svg.dart'; import 'package:go_router/go_router.dart'; import 'package:share_plus/share_plus.dart'; class RecipesWidget extends StatefulWidget { + final int index; final Recipes recipes; - const RecipesWidget({super.key, required this.recipes}); + const RecipesWidget({ + super.key, + required this.recipes, + required this.index, + }); @override State createState() => _RecipesWidgetState(); @@ -22,6 +30,7 @@ class RecipesWidget extends StatefulWidget { class _RecipesWidgetState extends State { late bool isLiked; + late int totalLikes; @override void initState() { @@ -31,158 +40,167 @@ class _RecipesWidgetState extends State { @override Widget build(BuildContext context) { - return InkWell( - borderRadius: BorderRadius.circular(12), - onTap: () => GoRouter.of(context).pushNamed('aboutRecipesScreen', extra: widget.recipes), - child: Ink( - decoration: BoxDecoration( - borderRadius: BorderRadius.circular(12), - color: Colors.white, - ), - child: Column( - mainAxisSize: MainAxisSize.min, - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - Stack( - children: [ - ClipRRect( - borderRadius: BorderRadius.vertical(top: Radius.circular(12)), - child: CachedNetworkImage( - imageUrl: baseUrl + '/storage/' + widget.recipes.image, - fit: BoxFit.fitWidth, - width: MediaQuery.of(context).size.width, - ), - ), - Positioned( - left: 8, - bottom: 8, - child: Wrap( - runSpacing: 8, + return BlocBuilder( + builder: (BuildContext context, RecipesState state) { + if (state is RecipesStateLoaded) { + isLiked = state.recipesList[widget.index].wasLikedByMe; + totalLikes = state.recipesList[widget.index].likesCount; + return InkWell( + borderRadius: BorderRadius.circular(12), + onTap: () => GoRouter.of(context).pushNamed('aboutRecipesScreen', extra: widget.recipes), + child: Ink( + decoration: BoxDecoration( + borderRadius: BorderRadius.circular(12), + color: Colors.white, + ), + child: Column( + mainAxisSize: MainAxisSize.min, + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Stack( children: [ - _iconButton('assets/icons/clock.svg', widget.recipes.cookingTime.toString() + ' минут'), - SizedBox(width: 8), - _iconButton('assets/icons/steps.svg', widget.recipes.steps.length.toString() + ' этапов'), - SizedBox(width: 8), - _iconButton('assets/icons/calories.svg', '139.9 ккал'), + ClipRRect( + borderRadius: BorderRadius.vertical(top: Radius.circular(12)), + child: CachedNetworkImage( + imageUrl: baseUrl + '/storage/' + widget.recipes.image, + fit: BoxFit.fitWidth, + width: MediaQuery.of(context).size.width, + ), + ), + Positioned( + left: 8, + bottom: 8, + child: Wrap( + runSpacing: 8, + children: [ + _iconButton('assets/icons/clock.svg', widget.recipes.cookingTime.toString() + ' минут'), + SizedBox(width: 8), + _iconButton('assets/icons/steps.svg', widget.recipes.steps.length.toString() + ' этапов'), + SizedBox(width: 8), + _iconButton('assets/icons/calories.svg', widget.recipes.calories.toStringAsFixed(0) + ' ккал'), + ], + ), + ), ], ), - ), - ], - ), - SizedBox(height: 12), - Padding( - padding: const EdgeInsets.symmetric(horizontal: 12), - child: Text( - widget.recipes.title, - style: TextStyle( - fontWeight: FontWeight.w600, - color: Colors.black87, - ), - ), - ), - if (widget.recipes.description.isNotEmpty) - Padding( - padding: const EdgeInsets.symmetric(horizontal: 4), - child: Html( - data: widget.recipes.description.length > 200 ? widget.recipes.description.substring(0, 200) : widget.recipes.description, - style: { - "*": Style( - color: Colors.black87, - ), - }, - ), - ), - if (widget.recipes.description.length > 200) - Padding( - padding: const EdgeInsets.symmetric(horizontal: 16), - child: Text( - 'Читать полностью...', - style: TextStyle( - height: 1, - color: appTheme.blueA400, - decoration: TextDecoration.underline, - ), - ), - ), - SizedBox(height: 12), - Padding( - padding: const EdgeInsets.symmetric(horizontal: 12), - child: Row( - children: [ - FeedIconButton( - icon: true ? Icons.favorite_rounded : Icons.favorite_border_rounded, - text: widget.recipes.likesCount.toString(), - iconColor: true ? Colors.red.withValues(alpha: 0.8) : null, - backgroundColor: true ? Colors.red.withValues(alpha: 0.1) : null, - textColor: true ? Colors.red.withValues(alpha: 0.8) : null, - onTap: () async { - // setState(() { - // isLiked = !isLiked; - // isLiked ? totalLikes++ : totalLikes--; - // }); - // isLiked - // ? await context.read().likePost(state.feedBlogPostList[widget.index].id) - // : await context.read().unlikedPost(state.feedBlogPostList[widget.index].id); - // await context.read().loadFeedBlogPostList(); - }, - ), - SizedBox(width: 8), - FeedIconButton( - svgIcon: SvgPicture.asset( - 'assets/icons/comment.svg', - height: 20, - width: 20, - colorFilter: ColorFilter.mode( - appTheme.gray600, - BlendMode.srcIn, + SizedBox(height: 12), + Padding( + padding: const EdgeInsets.symmetric(horizontal: 12), + child: Text( + widget.recipes.title, + style: TextStyle( + fontWeight: FontWeight.w600, + color: Colors.black87, ), ), - text: widget.recipes.commentsCount.toString(), - onTap: () => GoRouter.of(context).pushNamed( - 'aboutRecipesScreen', - extra: widget.recipes, - ), ), - SizedBox(width: 8), - FeedIconButton( - svgIcon: SvgPicture.asset( - height: 20, - width: 20, - 'assets/icons/share.svg', - colorFilter: ColorFilter.mode(appTheme.gray600, BlendMode.srcIn), + if (widget.recipes.description.isNotEmpty) + Padding( + padding: const EdgeInsets.symmetric(horizontal: 4), + child: Html( + data: widget.recipes.description.length > 200 ? widget.recipes.description.substring(0, 200) : widget.recipes.description, + style: { + "*": Style( + color: Colors.black87, + ), + }, + ), ), - onTap: () { - final box = context.findRenderObject() as RenderBox?; - Share.shareUri( - Uri.parse( - baseUrl + '/ru/blog_post/' + widget.recipes.id.toString(), + if (widget.recipes.description.length > 200) + Padding( + padding: const EdgeInsets.symmetric(horizontal: 16), + child: Text( + 'Читать полностью...', + style: TextStyle( + height: 1, + color: appTheme.blueA400, + decoration: TextDecoration.underline, ), - sharePositionOrigin: box!.localToGlobal(Offset.zero) & box.size, - ); - }, - ), - Spacer(), - Icon( - Icons.visibility_rounded, - size: 16, - color: appTheme.gray500, - ), - SizedBox(width: 4), - Text( - widget.recipes.viewsCount.toString(), - style: TextStyle( - fontSize: 12, - color: appTheme.gray500, - fontWeight: FontWeight.w400, + ), + ), + SizedBox(height: 12), + Padding( + padding: const EdgeInsets.symmetric(horizontal: 12), + child: Row( + children: [ + FeedIconButton( + icon: isLiked ? Icons.favorite_rounded : Icons.favorite_border_rounded, + text: widget.recipes.likesCount.toString(), + iconColor: isLiked ? Colors.red.withValues(alpha: 0.8) : null, + backgroundColor: isLiked ? Colors.red.withValues(alpha: 0.1) : null, + textColor: isLiked ? Colors.red.withValues(alpha: 0.8) : null, + onTap: () async { + setState(() { + isLiked = !isLiked; + isLiked ? totalLikes++ : totalLikes--; + }); + isLiked + ? await context.read().likeRecipe(state.recipesList[widget.index].slug) + : await context.read().unlikeRecipe(state.recipesList[widget.index].slug); + await context.read().loadRecipesList(); + }, + ), + SizedBox(width: 8), + FeedIconButton( + svgIcon: SvgPicture.asset( + 'assets/icons/comment.svg', + height: 20, + width: 20, + colorFilter: ColorFilter.mode( + appTheme.gray600, + BlendMode.srcIn, + ), + ), + text: widget.recipes.commentsCount.toString(), + onTap: () => GoRouter.of(context).pushNamed( + 'aboutRecipesScreen', + extra: widget.recipes, + ), + ), + SizedBox(width: 8), + FeedIconButton( + svgIcon: SvgPicture.asset( + height: 20, + width: 20, + 'assets/icons/share.svg', + colorFilter: ColorFilter.mode(appTheme.gray600, BlendMode.srcIn), + ), + onTap: () { + final box = context.findRenderObject() as RenderBox?; + Share.shareUri( + Uri.parse( + baseUrl + '/ru/blog_post/' + widget.recipes.id.toString(), + ), + sharePositionOrigin: box!.localToGlobal(Offset.zero) & box.size, + ); + }, + ), + Spacer(), + Icon( + Icons.visibility_rounded, + size: 16, + color: appTheme.gray500, + ), + SizedBox(width: 4), + Text( + widget.recipes.viewsCount.toString(), + style: TextStyle( + fontSize: 12, + color: appTheme.gray500, + fontWeight: FontWeight.w400, + ), + ), + ], ), ), + SizedBox(height: 12), ], ), ), - SizedBox(height: 12), - ], - ), - ), + ); + } + return Container(); + }, ); } diff --git a/lib/features/feed/repositories/feed_repository.dart b/lib/features/feed/repositories/feed_repository.dart index a90b4d5b..1f13becf 100644 --- a/lib/features/feed/repositories/feed_repository.dart +++ b/lib/features/feed/repositories/feed_repository.dart @@ -217,4 +217,24 @@ class FeedRepository { rethrow; } } + + Future likeRecipe({ + required String slug, + }) async { + try { + await feedService.likeRecipe(slug: slug); + } catch (e) { + rethrow; + } + } + + Future unlikeRecipe({ + required String slug, + }) async { + try { + await feedService.unlikeRecipe(slug: slug); + } catch (e) { + rethrow; + } + } } diff --git a/lib/features/feed/services/feed_service.dart b/lib/features/feed/services/feed_service.dart index 9551f16b..73ec0bcb 100644 --- a/lib/features/feed/services/feed_service.dart +++ b/lib/features/feed/services/feed_service.dart @@ -103,6 +103,16 @@ abstract class FeedService { @Path() required int id, }); + @POST('/api/recipes/{slug}/like') + Future likeRecipe({ + @Path() required String slug, + }); + + @POST('/api/recipes/{slug}/unliked') + Future unlikeRecipe({ + @Path() required String slug, + }); + @GET('/api/consultants/index') Future getConsultants(); } diff --git a/lib/features/feed/services/feed_service.g.dart b/lib/features/feed/services/feed_service.g.dart index c6668b66..951463e3 100644 --- a/lib/features/feed/services/feed_service.g.dart +++ b/lib/features/feed/services/feed_service.g.dart @@ -9,11 +9,7 @@ part of 'feed_service.dart'; // ignore_for_file: unnecessary_brace_in_string_interps,no_leading_underscores_for_local_identifiers,unused_element,unnecessary_string_interpolations class _FeedService implements FeedService { - _FeedService( - this._dio, { - this.baseUrl, - this.errorLogger, - }); + _FeedService(this._dio, {this.baseUrl, this.errorLogger}); final Dio _dio; @@ -34,22 +30,16 @@ class _FeedService implements FeedService { queryParameters.removeWhere((k, v) => v == null); final _headers = {}; const Map? _data = null; - final _options = _setStreamType(Options( - method: 'GET', - headers: _headers, - extra: _extra, - ) - .compose( - _dio.options, - '/api/blogPosts/index', - queryParameters: queryParameters, - data: _data, - ) - .copyWith( - baseUrl: _combineBaseUrls( - _dio.options.baseUrl, - baseUrl, - ))); + final _options = _setStreamType( + Options(method: 'GET', headers: _headers, extra: _extra) + .compose( + _dio.options, + '/api/blogPosts/index', + queryParameters: queryParameters, + data: _data, + ) + .copyWith(baseUrl: _combineBaseUrls(_dio.options.baseUrl, baseUrl)), + ); final _result = await _dio.fetch>(_options); late FeedBlogPostSettingsModel _value; try { @@ -76,22 +66,16 @@ class _FeedService implements FeedService { queryParameters.removeWhere((k, v) => v == null); final _headers = {}; const Map? _data = null; - final _options = _setStreamType(Options( - method: 'GET', - headers: _headers, - extra: _extra, - ) - .compose( - _dio.options, - '/api/recipes/index', - queryParameters: queryParameters, - data: _data, - ) - .copyWith( - baseUrl: _combineBaseUrls( - _dio.options.baseUrl, - baseUrl, - ))); + final _options = _setStreamType( + Options(method: 'GET', headers: _headers, extra: _extra) + .compose( + _dio.options, + '/api/recipes/index', + queryParameters: queryParameters, + data: _data, + ) + .copyWith(baseUrl: _combineBaseUrls(_dio.options.baseUrl, baseUrl)), + ); final _result = await _dio.fetch>(_options); late RecipesPagination _value; try { @@ -122,22 +106,16 @@ class _FeedService implements FeedService { queryParameters.removeWhere((k, v) => v == null); final _headers = {}; const Map? _data = null; - final _options = _setStreamType(Options( - method: 'GET', - headers: _headers, - extra: _extra, - ) - .compose( - _dio.options, - '/api/diets/index', - queryParameters: queryParameters, - data: _data, - ) - .copyWith( - baseUrl: _combineBaseUrls( - _dio.options.baseUrl, - baseUrl, - ))); + final _options = _setStreamType( + Options(method: 'GET', headers: _headers, extra: _extra) + .compose( + _dio.options, + '/api/diets/index', + queryParameters: queryParameters, + data: _data, + ) + .copyWith(baseUrl: _combineBaseUrls(_dio.options.baseUrl, baseUrl)), + ); final _result = await _dio.fetch>(_options); late DietsPagination _value; try { @@ -170,22 +148,16 @@ class _FeedService implements FeedService { queryParameters.removeWhere((k, v) => v == null); final _headers = {}; const Map? _data = null; - final _options = _setStreamType(Options( - method: 'GET', - headers: _headers, - extra: _extra, - ) - .compose( - _dio.options, - '/api/plans/index', - queryParameters: queryParameters, - data: _data, - ) - .copyWith( - baseUrl: _combineBaseUrls( - _dio.options.baseUrl, - baseUrl, - ))); + final _options = _setStreamType( + Options(method: 'GET', headers: _headers, extra: _extra) + .compose( + _dio.options, + '/api/plans/index', + queryParameters: queryParameters, + data: _data, + ) + .copyWith(baseUrl: _combineBaseUrls(_dio.options.baseUrl, baseUrl)), + ); final _result = await _dio.fetch>(_options); late PlanPaginationModel _value; try { @@ -203,22 +175,16 @@ class _FeedService implements FeedService { final queryParameters = {}; final _headers = {}; const Map? _data = null; - final _options = _setStreamType(Options( - method: 'GET', - headers: _headers, - extra: _extra, - ) - .compose( - _dio.options, - '/api/blogPosts/${id}/comments/show', - queryParameters: queryParameters, - data: _data, - ) - .copyWith( - baseUrl: _combineBaseUrls( - _dio.options.baseUrl, - baseUrl, - ))); + final _options = _setStreamType( + Options(method: 'GET', headers: _headers, extra: _extra) + .compose( + _dio.options, + '/api/blogPosts/${id}/comments/show', + queryParameters: queryParameters, + data: _data, + ) + .copyWith(baseUrl: _combineBaseUrls(_dio.options.baseUrl, baseUrl)), + ); final _result = await _dio.fetch>(_options); late CommentModel _value; try { @@ -241,32 +207,20 @@ class _FeedService implements FeedService { queryParameters.removeWhere((k, v) => v == null); final _headers = {}; final _data = FormData(); - _data.fields.add(MapEntry( - 'body', - body, - )); + _data.fields.add(MapEntry('body', body)); if (parentCommentId != null) { - _data.fields.add(MapEntry( - 'parentCommentId', - parentCommentId.toString(), - )); + _data.fields.add(MapEntry('parentCommentId', parentCommentId.toString())); } - final _options = _setStreamType(Options( - method: 'POST', - headers: _headers, - extra: _extra, - ) - .compose( - _dio.options, - '/api/blogPosts/${id}/comment/create', - queryParameters: queryParameters, - data: _data, - ) - .copyWith( - baseUrl: _combineBaseUrls( - _dio.options.baseUrl, - baseUrl, - ))); + final _options = _setStreamType( + Options(method: 'POST', headers: _headers, extra: _extra) + .compose( + _dio.options, + '/api/blogPosts/${id}/comment/create', + queryParameters: queryParameters, + data: _data, + ) + .copyWith(baseUrl: _combineBaseUrls(_dio.options.baseUrl, baseUrl)), + ); await _dio.fetch(_options); } @@ -276,22 +230,16 @@ class _FeedService implements FeedService { final queryParameters = {}; final _headers = {}; const Map? _data = null; - final _options = _setStreamType(Options( - method: 'GET', - headers: _headers, - extra: _extra, - ) - .compose( - _dio.options, - '/api/diets/${id}/comments/show', - queryParameters: queryParameters, - data: _data, - ) - .copyWith( - baseUrl: _combineBaseUrls( - _dio.options.baseUrl, - baseUrl, - ))); + final _options = _setStreamType( + Options(method: 'GET', headers: _headers, extra: _extra) + .compose( + _dio.options, + '/api/diets/${id}/comments/show', + queryParameters: queryParameters, + data: _data, + ) + .copyWith(baseUrl: _combineBaseUrls(_dio.options.baseUrl, baseUrl)), + ); final _result = await _dio.fetch>(_options); late CommentModel _value; try { @@ -314,32 +262,20 @@ class _FeedService implements FeedService { queryParameters.removeWhere((k, v) => v == null); final _headers = {}; final _data = FormData(); - _data.fields.add(MapEntry( - 'body', - body, - )); + _data.fields.add(MapEntry('body', body)); if (parentCommentId != null) { - _data.fields.add(MapEntry( - 'parentCommentId', - parentCommentId.toString(), - )); + _data.fields.add(MapEntry('parentCommentId', parentCommentId.toString())); } - final _options = _setStreamType(Options( - method: 'POST', - headers: _headers, - extra: _extra, - ) - .compose( - _dio.options, - '/api/diets/${id}/comment/create', - queryParameters: queryParameters, - data: _data, - ) - .copyWith( - baseUrl: _combineBaseUrls( - _dio.options.baseUrl, - baseUrl, - ))); + final _options = _setStreamType( + Options(method: 'POST', headers: _headers, extra: _extra) + .compose( + _dio.options, + '/api/diets/${id}/comment/create', + queryParameters: queryParameters, + data: _data, + ) + .copyWith(baseUrl: _combineBaseUrls(_dio.options.baseUrl, baseUrl)), + ); await _dio.fetch(_options); } @@ -349,22 +285,16 @@ class _FeedService implements FeedService { final queryParameters = {}; final _headers = {}; const Map? _data = null; - final _options = _setStreamType(Options( - method: 'GET', - headers: _headers, - extra: _extra, - ) - .compose( - _dio.options, - '/api/plans/${slug}/comments/show', - queryParameters: queryParameters, - data: _data, - ) - .copyWith( - baseUrl: _combineBaseUrls( - _dio.options.baseUrl, - baseUrl, - ))); + final _options = _setStreamType( + Options(method: 'GET', headers: _headers, extra: _extra) + .compose( + _dio.options, + '/api/plans/${slug}/comments/show', + queryParameters: queryParameters, + data: _data, + ) + .copyWith(baseUrl: _combineBaseUrls(_dio.options.baseUrl, baseUrl)), + ); final _result = await _dio.fetch>(_options); late CommentModel _value; try { @@ -387,32 +317,20 @@ class _FeedService implements FeedService { queryParameters.removeWhere((k, v) => v == null); final _headers = {}; final _data = FormData(); - _data.fields.add(MapEntry( - 'body', - body, - )); + _data.fields.add(MapEntry('body', body)); if (parentCommentId != null) { - _data.fields.add(MapEntry( - 'parentCommentId', - parentCommentId.toString(), - )); + _data.fields.add(MapEntry('parentCommentId', parentCommentId.toString())); } - final _options = _setStreamType(Options( - method: 'POST', - headers: _headers, - extra: _extra, - ) - .compose( - _dio.options, - '/api/plans/${slug}/comment/create', - queryParameters: queryParameters, - data: _data, - ) - .copyWith( - baseUrl: _combineBaseUrls( - _dio.options.baseUrl, - baseUrl, - ))); + final _options = _setStreamType( + Options(method: 'POST', headers: _headers, extra: _extra) + .compose( + _dio.options, + '/api/plans/${slug}/comment/create', + queryParameters: queryParameters, + data: _data, + ) + .copyWith(baseUrl: _combineBaseUrls(_dio.options.baseUrl, baseUrl)), + ); await _dio.fetch(_options); } @@ -422,22 +340,16 @@ class _FeedService implements FeedService { final queryParameters = {}; final _headers = {}; const Map? _data = null; - final _options = _setStreamType(Options( - method: 'GET', - headers: _headers, - extra: _extra, - ) - .compose( - _dio.options, - '/api/recipes/${id}/comments/show', - queryParameters: queryParameters, - data: _data, - ) - .copyWith( - baseUrl: _combineBaseUrls( - _dio.options.baseUrl, - baseUrl, - ))); + final _options = _setStreamType( + Options(method: 'GET', headers: _headers, extra: _extra) + .compose( + _dio.options, + '/api/recipes/${id}/comments/show', + queryParameters: queryParameters, + data: _data, + ) + .copyWith(baseUrl: _combineBaseUrls(_dio.options.baseUrl, baseUrl)), + ); final _result = await _dio.fetch>(_options); late CommentModel _value; try { @@ -460,32 +372,20 @@ class _FeedService implements FeedService { queryParameters.removeWhere((k, v) => v == null); final _headers = {}; final _data = FormData(); - _data.fields.add(MapEntry( - 'body', - body, - )); + _data.fields.add(MapEntry('body', body)); if (parentCommentId != null) { - _data.fields.add(MapEntry( - 'parentCommentId', - parentCommentId.toString(), - )); + _data.fields.add(MapEntry('parentCommentId', parentCommentId.toString())); } - final _options = _setStreamType(Options( - method: 'POST', - headers: _headers, - extra: _extra, - ) - .compose( - _dio.options, - '/api/recipes/${id}/comment/create', - queryParameters: queryParameters, - data: _data, - ) - .copyWith( - baseUrl: _combineBaseUrls( - _dio.options.baseUrl, - baseUrl, - ))); + final _options = _setStreamType( + Options(method: 'POST', headers: _headers, extra: _extra) + .compose( + _dio.options, + '/api/recipes/${id}/comment/create', + queryParameters: queryParameters, + data: _data, + ) + .copyWith(baseUrl: _combineBaseUrls(_dio.options.baseUrl, baseUrl)), + ); await _dio.fetch(_options); } @@ -495,22 +395,16 @@ class _FeedService implements FeedService { final queryParameters = {}; final _headers = {}; const Map? _data = null; - final _options = _setStreamType(Options( - method: 'POST', - headers: _headers, - extra: _extra, - ) - .compose( - _dio.options, - '/api/blogPosts/${id}/like', - queryParameters: queryParameters, - data: _data, - ) - .copyWith( - baseUrl: _combineBaseUrls( - _dio.options.baseUrl, - baseUrl, - ))); + final _options = _setStreamType( + Options(method: 'POST', headers: _headers, extra: _extra) + .compose( + _dio.options, + '/api/blogPosts/${id}/like', + queryParameters: queryParameters, + data: _data, + ) + .copyWith(baseUrl: _combineBaseUrls(_dio.options.baseUrl, baseUrl)), + ); await _dio.fetch(_options); } @@ -520,22 +414,54 @@ class _FeedService implements FeedService { final queryParameters = {}; final _headers = {}; const Map? _data = null; - final _options = _setStreamType(Options( - method: 'POST', - headers: _headers, - extra: _extra, - ) - .compose( - _dio.options, - '/api/blogPosts/${id}/unliked', - queryParameters: queryParameters, - data: _data, - ) - .copyWith( - baseUrl: _combineBaseUrls( - _dio.options.baseUrl, - baseUrl, - ))); + final _options = _setStreamType( + Options(method: 'POST', headers: _headers, extra: _extra) + .compose( + _dio.options, + '/api/blogPosts/${id}/unliked', + queryParameters: queryParameters, + data: _data, + ) + .copyWith(baseUrl: _combineBaseUrls(_dio.options.baseUrl, baseUrl)), + ); + await _dio.fetch(_options); + } + + @override + Future likeRecipe({required String slug}) async { + final _extra = {}; + final queryParameters = {}; + final _headers = {}; + const Map? _data = null; + final _options = _setStreamType( + Options(method: 'POST', headers: _headers, extra: _extra) + .compose( + _dio.options, + '/api/recipes/${slug}/like', + queryParameters: queryParameters, + data: _data, + ) + .copyWith(baseUrl: _combineBaseUrls(_dio.options.baseUrl, baseUrl)), + ); + await _dio.fetch(_options); + } + + @override + Future unlikeRecipe({required String slug}) async { + final _extra = {}; + final queryParameters = {}; + final _headers = {}; + const Map? _data = null; + final _options = _setStreamType( + Options(method: 'POST', headers: _headers, extra: _extra) + .compose( + _dio.options, + '/api/recipes/${slug}/unliked', + queryParameters: queryParameters, + data: _data, + ) + .copyWith(baseUrl: _combineBaseUrls(_dio.options.baseUrl, baseUrl)), + ); await _dio.fetch(_options); } @@ -545,22 +471,16 @@ class _FeedService implements FeedService { final queryParameters = {}; final _headers = {}; const Map? _data = null; - final _options = _setStreamType(Options( - method: 'GET', - headers: _headers, - extra: _extra, - ) - .compose( - _dio.options, - '/api/consultants/index', - queryParameters: queryParameters, - data: _data, - ) - .copyWith( - baseUrl: _combineBaseUrls( - _dio.options.baseUrl, - baseUrl, - ))); + final _options = _setStreamType( + Options(method: 'GET', headers: _headers, extra: _extra) + .compose( + _dio.options, + '/api/consultants/index', + queryParameters: queryParameters, + data: _data, + ) + .copyWith(baseUrl: _combineBaseUrls(_dio.options.baseUrl, baseUrl)), + ); final _result = await _dio.fetch>(_options); late FeedConsultantPaginationModel _value; try { @@ -585,10 +505,7 @@ class _FeedService implements FeedService { return requestOptions; } - String _combineBaseUrls( - String dioBaseUrl, - String? baseUrl, - ) { + String _combineBaseUrls(String dioBaseUrl, String? baseUrl) { if (baseUrl == null || baseUrl.trim().isEmpty) { return dioBaseUrl; } diff --git a/lib/features/my_diets/services/my_diets_service.g.dart b/lib/features/my_diets/services/my_diets_service.g.dart index 61371ae2..f9244073 100644 --- a/lib/features/my_diets/services/my_diets_service.g.dart +++ b/lib/features/my_diets/services/my_diets_service.g.dart @@ -9,11 +9,7 @@ part of 'my_diets_service.dart'; // ignore_for_file: unnecessary_brace_in_string_interps,no_leading_underscores_for_local_identifiers,unused_element,unnecessary_string_interpolations class _MyDietsService implements MyDietsService { - _MyDietsService( - this._dio, { - this.baseUrl, - this.errorLogger, - }); + _MyDietsService(this._dio, {this.baseUrl, this.errorLogger}); final Dio _dio; @@ -40,22 +36,16 @@ class _MyDietsService implements MyDietsService { queryParameters.removeWhere((k, v) => v == null); final _headers = {}; const Map? _data = null; - final _options = _setStreamType(Options( - method: 'GET', - headers: _headers, - extra: _extra, - ) - .compose( - _dio.options, - '/api/profile/my_diets', - queryParameters: queryParameters, - data: _data, - ) - .copyWith( - baseUrl: _combineBaseUrls( - _dio.options.baseUrl, - baseUrl, - ))); + final _options = _setStreamType( + Options(method: 'GET', headers: _headers, extra: _extra) + .compose( + _dio.options, + '/api/profile/my_diets', + queryParameters: queryParameters, + data: _data, + ) + .copyWith(baseUrl: _combineBaseUrls(_dio.options.baseUrl, baseUrl)), + ); final _result = await _dio.fetch>(_options); late DietsPagination _value; try { @@ -73,22 +63,16 @@ class _MyDietsService implements MyDietsService { final queryParameters = {}; final _headers = {}; const Map? _data = null; - final _options = _setStreamType(Options( - method: 'POST', - headers: _headers, - extra: _extra, - ) - .compose( - _dio.options, - '/api/diets/delete/${dietId}', - queryParameters: queryParameters, - data: _data, - ) - .copyWith( - baseUrl: _combineBaseUrls( - _dio.options.baseUrl, - baseUrl, - ))); + final _options = _setStreamType( + Options(method: 'POST', headers: _headers, extra: _extra) + .compose( + _dio.options, + '/api/diets/delete/${dietId}', + queryParameters: queryParameters, + data: _data, + ) + .copyWith(baseUrl: _combineBaseUrls(_dio.options.baseUrl, baseUrl)), + ); await _dio.fetch(_options); } @@ -105,10 +89,7 @@ class _MyDietsService implements MyDietsService { return requestOptions; } - String _combineBaseUrls( - String dioBaseUrl, - String? baseUrl, - ) { + String _combineBaseUrls(String dioBaseUrl, String? baseUrl) { if (baseUrl == null || baseUrl.trim().isEmpty) { return dioBaseUrl; } diff --git a/lib/features/my_plans/services/my_plans_service.g.dart b/lib/features/my_plans/services/my_plans_service.g.dart index dd70281f..4e4804e0 100644 --- a/lib/features/my_plans/services/my_plans_service.g.dart +++ b/lib/features/my_plans/services/my_plans_service.g.dart @@ -9,11 +9,7 @@ part of 'my_plans_service.dart'; // ignore_for_file: unnecessary_brace_in_string_interps,no_leading_underscores_for_local_identifiers,unused_element,unnecessary_string_interpolations class _MyPlansService implements MyPlansService { - _MyPlansService( - this._dio, { - this.baseUrl, - this.errorLogger, - }); + _MyPlansService(this._dio, {this.baseUrl, this.errorLogger}); final Dio _dio; @@ -42,22 +38,16 @@ class _MyPlansService implements MyPlansService { queryParameters.removeWhere((k, v) => v == null); final _headers = {}; const Map? _data = null; - final _options = _setStreamType(Options( - method: 'GET', - headers: _headers, - extra: _extra, - ) - .compose( - _dio.options, - '/api/plans/index', - queryParameters: queryParameters, - data: _data, - ) - .copyWith( - baseUrl: _combineBaseUrls( - _dio.options.baseUrl, - baseUrl, - ))); + final _options = _setStreamType( + Options(method: 'GET', headers: _headers, extra: _extra) + .compose( + _dio.options, + '/api/plans/index', + queryParameters: queryParameters, + data: _data, + ) + .copyWith(baseUrl: _combineBaseUrls(_dio.options.baseUrl, baseUrl)), + ); final _result = await _dio.fetch>(_options); late PlanPaginationModel _value; try { @@ -75,22 +65,16 @@ class _MyPlansService implements MyPlansService { final queryParameters = {}; final _headers = {}; const Map? _data = null; - final _options = _setStreamType(Options( - method: 'POST', - headers: _headers, - extra: _extra, - ) - .compose( - _dio.options, - '/api/plans/delete/${slug}', - queryParameters: queryParameters, - data: _data, - ) - .copyWith( - baseUrl: _combineBaseUrls( - _dio.options.baseUrl, - baseUrl, - ))); + final _options = _setStreamType( + Options(method: 'POST', headers: _headers, extra: _extra) + .compose( + _dio.options, + '/api/plans/delete/${slug}', + queryParameters: queryParameters, + data: _data, + ) + .copyWith(baseUrl: _combineBaseUrls(_dio.options.baseUrl, baseUrl)), + ); await _dio.fetch(_options); } @@ -107,10 +91,7 @@ class _MyPlansService implements MyPlansService { return requestOptions; } - String _combineBaseUrls( - String dioBaseUrl, - String? baseUrl, - ) { + String _combineBaseUrls(String dioBaseUrl, String? baseUrl) { if (baseUrl == null || baseUrl.trim().isEmpty) { return dioBaseUrl; } diff --git a/lib/features/plans/services/plan_service.g.dart b/lib/features/plans/services/plan_service.g.dart index 71abb5af..09f90b41 100644 --- a/lib/features/plans/services/plan_service.g.dart +++ b/lib/features/plans/services/plan_service.g.dart @@ -9,11 +9,7 @@ part of 'plan_service.dart'; // ignore_for_file: unnecessary_brace_in_string_interps,no_leading_underscores_for_local_identifiers,unused_element,unnecessary_string_interpolations class _PlanService implements PlanService { - _PlanService( - this._dio, { - this.baseUrl, - this.errorLogger, - }); + _PlanService(this._dio, {this.baseUrl, this.errorLogger}); final Dio _dio; @@ -27,22 +23,16 @@ class _PlanService implements PlanService { final queryParameters = {}; final _headers = {}; const Map? _data = null; - final _options = _setStreamType(Options( - method: 'GET', - headers: _headers, - extra: _extra, - ) - .compose( - _dio.options, - '/api/plans/show/${slug}', - queryParameters: queryParameters, - data: _data, - ) - .copyWith( - baseUrl: _combineBaseUrls( - _dio.options.baseUrl, - baseUrl, - ))); + final _options = _setStreamType( + Options(method: 'GET', headers: _headers, extra: _extra) + .compose( + _dio.options, + '/api/plans/show/${slug}', + queryParameters: queryParameters, + data: _data, + ) + .copyWith(baseUrl: _combineBaseUrls(_dio.options.baseUrl, baseUrl)), + ); final _result = await _dio.fetch>(_options); late PlanModel _value; try { @@ -60,22 +50,16 @@ class _PlanService implements PlanService { final queryParameters = {}; final _headers = {}; const Map? _data = null; - final _options = _setStreamType(Options( - method: 'POST', - headers: _headers, - extra: _extra, - ) - .compose( - _dio.options, - '/api/plans/${slug}/like', - queryParameters: queryParameters, - data: _data, - ) - .copyWith( - baseUrl: _combineBaseUrls( - _dio.options.baseUrl, - baseUrl, - ))); + final _options = _setStreamType( + Options(method: 'POST', headers: _headers, extra: _extra) + .compose( + _dio.options, + '/api/plans/${slug}/like', + queryParameters: queryParameters, + data: _data, + ) + .copyWith(baseUrl: _combineBaseUrls(_dio.options.baseUrl, baseUrl)), + ); await _dio.fetch(_options); } @@ -85,22 +69,16 @@ class _PlanService implements PlanService { final queryParameters = {}; final _headers = {}; const Map? _data = null; - final _options = _setStreamType(Options( - method: 'POST', - headers: _headers, - extra: _extra, - ) - .compose( - _dio.options, - '/api/plans/${slug}/add_to_favorite', - queryParameters: queryParameters, - data: _data, - ) - .copyWith( - baseUrl: _combineBaseUrls( - _dio.options.baseUrl, - baseUrl, - ))); + final _options = _setStreamType( + Options(method: 'POST', headers: _headers, extra: _extra) + .compose( + _dio.options, + '/api/plans/${slug}/add_to_favorite', + queryParameters: queryParameters, + data: _data, + ) + .copyWith(baseUrl: _combineBaseUrls(_dio.options.baseUrl, baseUrl)), + ); await _dio.fetch(_options); } @@ -110,22 +88,16 @@ class _PlanService implements PlanService { final queryParameters = {}; final _headers = {}; const Map? _data = null; - final _options = _setStreamType(Options( - method: 'POST', - headers: _headers, - extra: _extra, - ) - .compose( - _dio.options, - '/api/plans/${slug}/remove_from_favorite', - queryParameters: queryParameters, - data: _data, - ) - .copyWith( - baseUrl: _combineBaseUrls( - _dio.options.baseUrl, - baseUrl, - ))); + final _options = _setStreamType( + Options(method: 'POST', headers: _headers, extra: _extra) + .compose( + _dio.options, + '/api/plans/${slug}/remove_from_favorite', + queryParameters: queryParameters, + data: _data, + ) + .copyWith(baseUrl: _combineBaseUrls(_dio.options.baseUrl, baseUrl)), + ); await _dio.fetch(_options); } @@ -142,10 +114,7 @@ class _PlanService implements PlanService { return requestOptions; } - String _combineBaseUrls( - String dioBaseUrl, - String? baseUrl, - ) { + String _combineBaseUrls(String dioBaseUrl, String? baseUrl) { if (baseUrl == null || baseUrl.trim().isEmpty) { return dioBaseUrl; } diff --git a/lib/features/plans/services/plans_service.g.dart b/lib/features/plans/services/plans_service.g.dart index 7fe37d3d..3e4ebdf1 100644 --- a/lib/features/plans/services/plans_service.g.dart +++ b/lib/features/plans/services/plans_service.g.dart @@ -9,11 +9,7 @@ part of 'plans_service.dart'; // ignore_for_file: unnecessary_brace_in_string_interps,no_leading_underscores_for_local_identifiers,unused_element,unnecessary_string_interpolations class _PlansService implements PlansService { - _PlansService( - this._dio, { - this.baseUrl, - this.errorLogger, - }); + _PlansService(this._dio, {this.baseUrl, this.errorLogger}); final Dio _dio; @@ -27,22 +23,16 @@ class _PlansService implements PlansService { final queryParameters = {}; final _headers = {}; const Map? _data = null; - final _options = _setStreamType(Options( - method: 'GET', - headers: _headers, - extra: _extra, - ) - .compose( - _dio.options, - '/api/plans/get_by_author/${author}', - queryParameters: queryParameters, - data: _data, - ) - .copyWith( - baseUrl: _combineBaseUrls( - _dio.options.baseUrl, - baseUrl, - ))); + final _options = _setStreamType( + Options(method: 'GET', headers: _headers, extra: _extra) + .compose( + _dio.options, + '/api/plans/get_by_author/${author}', + queryParameters: queryParameters, + data: _data, + ) + .copyWith(baseUrl: _combineBaseUrls(_dio.options.baseUrl, baseUrl)), + ); final _result = await _dio.fetch>(_options); late PlanPaginationModel _value; try { @@ -67,10 +57,7 @@ class _PlansService implements PlansService { return requestOptions; } - String _combineBaseUrls( - String dioBaseUrl, - String? baseUrl, - ) { + String _combineBaseUrls(String dioBaseUrl, String? baseUrl) { if (baseUrl == null || baseUrl.trim().isEmpty) { return dioBaseUrl; } diff --git a/lib/features/profile/services/profile_service.g.dart b/lib/features/profile/services/profile_service.g.dart index 4d9c61a4..1ac6c499 100644 --- a/lib/features/profile/services/profile_service.g.dart +++ b/lib/features/profile/services/profile_service.g.dart @@ -9,11 +9,7 @@ part of 'profile_service.dart'; // ignore_for_file: unnecessary_brace_in_string_interps,no_leading_underscores_for_local_identifiers,unused_element,unnecessary_string_interpolations class _ProfileService implements ProfileService { - _ProfileService( - this._dio, { - this.baseUrl, - this.errorLogger, - }); + _ProfileService(this._dio, {this.baseUrl, this.errorLogger}); final Dio _dio; @@ -27,22 +23,16 @@ class _ProfileService implements ProfileService { final queryParameters = {}; final _headers = {}; const Map? _data = null; - final _options = _setStreamType(Options( - method: 'GET', - headers: _headers, - extra: _extra, - ) - .compose( - _dio.options, - '/api/profile/show/${slug}', - queryParameters: queryParameters, - data: _data, - ) - .copyWith( - baseUrl: _combineBaseUrls( - _dio.options.baseUrl, - baseUrl, - ))); + final _options = _setStreamType( + Options(method: 'GET', headers: _headers, extra: _extra) + .compose( + _dio.options, + '/api/profile/show/${slug}', + queryParameters: queryParameters, + data: _data, + ) + .copyWith(baseUrl: _combineBaseUrls(_dio.options.baseUrl, baseUrl)), + ); final _result = await _dio.fetch>(_options); late ProfileModel _value; try { @@ -60,22 +50,16 @@ class _ProfileService implements ProfileService { final queryParameters = {}; final _headers = {}; const Map? _data = null; - final _options = _setStreamType(Options( - method: 'GET', - headers: _headers, - extra: _extra, - ) - .compose( - _dio.options, - '/api/profile/index', - queryParameters: queryParameters, - data: _data, - ) - .copyWith( - baseUrl: _combineBaseUrls( - _dio.options.baseUrl, - baseUrl, - ))); + final _options = _setStreamType( + Options(method: 'GET', headers: _headers, extra: _extra) + .compose( + _dio.options, + '/api/profile/index', + queryParameters: queryParameters, + data: _data, + ) + .copyWith(baseUrl: _combineBaseUrls(_dio.options.baseUrl, baseUrl)), + ); final _result = await _dio.fetch>(_options); late ProfileModel _value; try { @@ -93,22 +77,16 @@ class _ProfileService implements ProfileService { final queryParameters = {}; final _headers = {}; const Map? _data = null; - final _options = _setStreamType(Options( - method: 'GET', - headers: _headers, - extra: _extra, - ) - .compose( - _dio.options, - '/api/profile/detailz', - queryParameters: queryParameters, - data: _data, - ) - .copyWith( - baseUrl: _combineBaseUrls( - _dio.options.baseUrl, - baseUrl, - ))); + final _options = _setStreamType( + Options(method: 'GET', headers: _headers, extra: _extra) + .compose( + _dio.options, + '/api/profile/detailz', + queryParameters: queryParameters, + data: _data, + ) + .copyWith(baseUrl: _combineBaseUrls(_dio.options.baseUrl, baseUrl)), + ); final _result = await _dio.fetch>(_options); late ProfileDetailsModel _value; try { @@ -121,28 +99,23 @@ class _ProfileService implements ProfileService { } @override - Future getProfileDetailsBySlug( - {required String slug}) async { + Future getProfileDetailsBySlug({ + required String slug, + }) async { final _extra = {}; final queryParameters = {}; final _headers = {}; const Map? _data = null; - final _options = _setStreamType(Options( - method: 'GET', - headers: _headers, - extra: _extra, - ) - .compose( - _dio.options, - '/api/profile/detailz/${slug}', - queryParameters: queryParameters, - data: _data, - ) - .copyWith( - baseUrl: _combineBaseUrls( - _dio.options.baseUrl, - baseUrl, - ))); + final _options = _setStreamType( + Options(method: 'GET', headers: _headers, extra: _extra) + .compose( + _dio.options, + '/api/profile/detailz/${slug}', + queryParameters: queryParameters, + data: _data, + ) + .copyWith(baseUrl: _combineBaseUrls(_dio.options.baseUrl, baseUrl)), + ); final _result = await _dio.fetch>(_options); late ProfileDetailsModel _value; try { @@ -164,34 +137,25 @@ class _ProfileService implements ProfileService { final queryParameters = {}; final _headers = {}; final _data = FormData(); - _data.fields.add(MapEntry( - 'chest_circumference', - chestCircumference.toString(), - )); - _data.fields.add(MapEntry( - 'waist_circumference', - waistCircumference.toString(), - )); - _data.fields.add(MapEntry( - 'hip_circumference', - hipCircumference.toString(), - )); - final _options = _setStreamType(Options( - method: 'POST', - headers: _headers, - extra: _extra, - ) - .compose( - _dio.options, - '/api/profile/addCircumference', - queryParameters: queryParameters, - data: _data, - ) - .copyWith( - baseUrl: _combineBaseUrls( - _dio.options.baseUrl, - baseUrl, - ))); + _data.fields.add( + MapEntry('chest_circumference', chestCircumference.toString()), + ); + _data.fields.add( + MapEntry('waist_circumference', waistCircumference.toString()), + ); + _data.fields.add( + MapEntry('hip_circumference', hipCircumference.toString()), + ); + final _options = _setStreamType( + Options(method: 'POST', headers: _headers, extra: _extra) + .compose( + _dio.options, + '/api/profile/addCircumference', + queryParameters: queryParameters, + data: _data, + ) + .copyWith(baseUrl: _combineBaseUrls(_dio.options.baseUrl, baseUrl)), + ); await _dio.fetch(_options); } @@ -201,58 +165,46 @@ class _ProfileService implements ProfileService { final queryParameters = {}; final _headers = {}; final _data = FormData(); - _data.fields.add(MapEntry( - 'weight', - weight.toString(), - )); - final _options = _setStreamType(Options( - method: 'POST', - headers: _headers, - extra: _extra, - ) - .compose( - _dio.options, - '/api/profile/addWeight', - queryParameters: queryParameters, - data: _data, - ) - .copyWith( - baseUrl: _combineBaseUrls( - _dio.options.baseUrl, - baseUrl, - ))); + _data.fields.add(MapEntry('weight', weight.toString())); + final _options = _setStreamType( + Options(method: 'POST', headers: _headers, extra: _extra) + .compose( + _dio.options, + '/api/profile/addWeight', + queryParameters: queryParameters, + data: _data, + ) + .copyWith(baseUrl: _combineBaseUrls(_dio.options.baseUrl, baseUrl)), + ); await _dio.fetch(_options); } @override - Future> getBlogPostByAuthorSlug( - {required String slug}) async { + Future> getBlogPostByAuthorSlug({ + required String slug, + }) async { final _extra = {}; final queryParameters = {}; final _headers = {}; const Map? _data = null; - final _options = _setStreamType>(Options( - method: 'GET', - headers: _headers, - extra: _extra, - ) - .compose( - _dio.options, - '/api/blogPosts/search_by_author/${slug}', - queryParameters: queryParameters, - data: _data, - ) - .copyWith( - baseUrl: _combineBaseUrls( - _dio.options.baseUrl, - baseUrl, - ))); + final _options = _setStreamType>( + Options(method: 'GET', headers: _headers, extra: _extra) + .compose( + _dio.options, + '/api/blogPosts/search_by_author/${slug}', + queryParameters: queryParameters, + data: _data, + ) + .copyWith(baseUrl: _combineBaseUrls(_dio.options.baseUrl, baseUrl)), + ); final _result = await _dio.fetch>(_options); late List _value; try { _value = _result.data! - .map((dynamic i) => - FeedBlogPostModel.fromJson(i as Map)) + .map( + (dynamic i) => + FeedBlogPostModel.fromJson(i as Map), + ) .toList(); } on Object catch (e, s) { errorLogger?.logError(e, s, _options); @@ -267,27 +219,23 @@ class _ProfileService implements ProfileService { final queryParameters = {}; final _headers = {}; const Map? _data = null; - final _options = _setStreamType>(Options( - method: 'GET', - headers: _headers, - extra: _extra, - ) - .compose( - _dio.options, - '/api/profile/measure/weight/${period}', - queryParameters: queryParameters, - data: _data, - ) - .copyWith( - baseUrl: _combineBaseUrls( - _dio.options.baseUrl, - baseUrl, - ))); + final _options = _setStreamType>( + Options(method: 'GET', headers: _headers, extra: _extra) + .compose( + _dio.options, + '/api/profile/measure/weight/${period}', + queryParameters: queryParameters, + data: _data, + ) + .copyWith(baseUrl: _combineBaseUrls(_dio.options.baseUrl, baseUrl)), + ); final _result = await _dio.fetch>(_options); late List _value; try { _value = _result.data! - .map((dynamic i) => WeightModel.fromJson(i as Map)) + .map( + (dynamic i) => WeightModel.fromJson(i as Map), + ) .toList(); } on Object catch (e, s) { errorLogger?.logError(e, s, _options); @@ -305,27 +253,23 @@ class _ProfileService implements ProfileService { final queryParameters = {}; final _headers = {}; const Map? _data = null; - final _options = _setStreamType>(Options( - method: 'GET', - headers: _headers, - extra: _extra, - ) - .compose( - _dio.options, - '/api/profile/measure/weight/${period}/${slug}', - queryParameters: queryParameters, - data: _data, - ) - .copyWith( - baseUrl: _combineBaseUrls( - _dio.options.baseUrl, - baseUrl, - ))); + final _options = _setStreamType>( + Options(method: 'GET', headers: _headers, extra: _extra) + .compose( + _dio.options, + '/api/profile/measure/weight/${period}/${slug}', + queryParameters: queryParameters, + data: _data, + ) + .copyWith(baseUrl: _combineBaseUrls(_dio.options.baseUrl, baseUrl)), + ); final _result = await _dio.fetch>(_options); late List _value; try { _value = _result.data! - .map((dynamic i) => WeightModel.fromJson(i as Map)) + .map( + (dynamic i) => WeightModel.fromJson(i as Map), + ) .toList(); } on Object catch (e, s) { errorLogger?.logError(e, s, _options); @@ -335,34 +279,31 @@ class _ProfileService implements ProfileService { } @override - Future> getCircumferences( - {required String period}) async { + Future> getCircumferences({ + required String period, + }) async { final _extra = {}; final queryParameters = {}; final _headers = {}; const Map? _data = null; - final _options = _setStreamType>(Options( - method: 'GET', - headers: _headers, - extra: _extra, - ) - .compose( - _dio.options, - '/api/profile/measure/circumferences/${period}', - queryParameters: queryParameters, - data: _data, - ) - .copyWith( - baseUrl: _combineBaseUrls( - _dio.options.baseUrl, - baseUrl, - ))); + final _options = _setStreamType>( + Options(method: 'GET', headers: _headers, extra: _extra) + .compose( + _dio.options, + '/api/profile/measure/circumferences/${period}', + queryParameters: queryParameters, + data: _data, + ) + .copyWith(baseUrl: _combineBaseUrls(_dio.options.baseUrl, baseUrl)), + ); final _result = await _dio.fetch>(_options); late List _value; try { _value = _result.data! - .map((dynamic i) => - CircumferenceModel.fromJson(i as Map)) + .map( + (dynamic i) => + CircumferenceModel.fromJson(i as Map), + ) .toList(); } on Object catch (e, s) { errorLogger?.logError(e, s, _options); @@ -380,28 +321,24 @@ class _ProfileService implements ProfileService { final queryParameters = {}; final _headers = {}; const Map? _data = null; - final _options = _setStreamType>(Options( - method: 'GET', - headers: _headers, - extra: _extra, - ) - .compose( - _dio.options, - '/api/profile/measure/circumferences/${period}/{user}', - queryParameters: queryParameters, - data: _data, - ) - .copyWith( - baseUrl: _combineBaseUrls( - _dio.options.baseUrl, - baseUrl, - ))); + final _options = _setStreamType>( + Options(method: 'GET', headers: _headers, extra: _extra) + .compose( + _dio.options, + '/api/profile/measure/circumferences/${period}/{user}', + queryParameters: queryParameters, + data: _data, + ) + .copyWith(baseUrl: _combineBaseUrls(_dio.options.baseUrl, baseUrl)), + ); final _result = await _dio.fetch>(_options); late List _value; try { _value = _result.data! - .map((dynamic i) => - CircumferenceModel.fromJson(i as Map)) + .map( + (dynamic i) => + CircumferenceModel.fromJson(i as Map), + ) .toList(); } on Object catch (e, s) { errorLogger?.logError(e, s, _options); @@ -417,27 +354,21 @@ class _ProfileService implements ProfileService { }) async { final _extra = {}; final queryParameters = { - r'filters[name][$startsWith]': query + r'filters[name][$startsWith]': query, }; queryParameters.removeWhere((k, v) => v == null); final _headers = {}; const Map? _data = null; - final _options = _setStreamType(Options( - method: 'GET', - headers: _headers, - extra: _extra, - ) - .compose( - _dio.options, - '/api/profile/${slug}/subscribers', - queryParameters: queryParameters, - data: _data, - ) - .copyWith( - baseUrl: _combineBaseUrls( - _dio.options.baseUrl, - baseUrl, - ))); + final _options = _setStreamType( + Options(method: 'GET', headers: _headers, extra: _extra) + .compose( + _dio.options, + '/api/profile/${slug}/subscribers', + queryParameters: queryParameters, + data: _data, + ) + .copyWith(baseUrl: _combineBaseUrls(_dio.options.baseUrl, baseUrl)), + ); final _result = await _dio.fetch>(_options); late SubPaginationModel _value; try { @@ -456,27 +387,21 @@ class _ProfileService implements ProfileService { }) async { final _extra = {}; final queryParameters = { - r'filters[name][$startsWith]': query + r'filters[name][$startsWith]': query, }; queryParameters.removeWhere((k, v) => v == null); final _headers = {}; const Map? _data = null; - final _options = _setStreamType(Options( - method: 'GET', - headers: _headers, - extra: _extra, - ) - .compose( - _dio.options, - '/api/profile/${slug}/subscriptions', - queryParameters: queryParameters, - data: _data, - ) - .copyWith( - baseUrl: _combineBaseUrls( - _dio.options.baseUrl, - baseUrl, - ))); + final _options = _setStreamType( + Options(method: 'GET', headers: _headers, extra: _extra) + .compose( + _dio.options, + '/api/profile/${slug}/subscriptions', + queryParameters: queryParameters, + data: _data, + ) + .copyWith(baseUrl: _combineBaseUrls(_dio.options.baseUrl, baseUrl)), + ); final _result = await _dio.fetch>(_options); late SubPaginationModel _value; try { @@ -494,22 +419,16 @@ class _ProfileService implements ProfileService { final queryParameters = {}; final _headers = {}; const Map? _data = null; - final _options = _setStreamType(Options( - method: 'POST', - headers: _headers, - extra: _extra, - ) - .compose( - _dio.options, - '/api/profile/subscribe/${slug}', - queryParameters: queryParameters, - data: _data, - ) - .copyWith( - baseUrl: _combineBaseUrls( - _dio.options.baseUrl, - baseUrl, - ))); + final _options = _setStreamType( + Options(method: 'POST', headers: _headers, extra: _extra) + .compose( + _dio.options, + '/api/profile/subscribe/${slug}', + queryParameters: queryParameters, + data: _data, + ) + .copyWith(baseUrl: _combineBaseUrls(_dio.options.baseUrl, baseUrl)), + ); await _dio.fetch(_options); } @@ -519,22 +438,16 @@ class _ProfileService implements ProfileService { final queryParameters = {}; final _headers = {}; const Map? _data = null; - final _options = _setStreamType(Options( - method: 'POST', - headers: _headers, - extra: _extra, - ) - .compose( - _dio.options, - '/api/profile/unsubscribe/${slug}', - queryParameters: queryParameters, - data: _data, - ) - .copyWith( - baseUrl: _combineBaseUrls( - _dio.options.baseUrl, - baseUrl, - ))); + final _options = _setStreamType( + Options(method: 'POST', headers: _headers, extra: _extra) + .compose( + _dio.options, + '/api/profile/unsubscribe/${slug}', + queryParameters: queryParameters, + data: _data, + ) + .copyWith(baseUrl: _combineBaseUrls(_dio.options.baseUrl, baseUrl)), + ); await _dio.fetch(_options); } @@ -544,30 +457,30 @@ class _ProfileService implements ProfileService { final queryParameters = {}; final _headers = {}; final _data = FormData(); - _data.files.add(MapEntry( - 'photo', - MultipartFile.fromFileSync( - photo.path, - filename: photo.path.split(Platform.pathSeparator).last, + _data.files.add( + MapEntry( + 'photo', + MultipartFile.fromFileSync( + photo.path, + filename: photo.path.split(Platform.pathSeparator).last, + ), ), - )); - final _options = _setStreamType(Options( - method: 'POST', - headers: _headers, - extra: _extra, - contentType: 'multipart/form-data', - ) - .compose( - _dio.options, - '/api/profile/photo/upload', - queryParameters: queryParameters, - data: _data, - ) - .copyWith( - baseUrl: _combineBaseUrls( - _dio.options.baseUrl, - baseUrl, - ))); + ); + final _options = _setStreamType( + Options( + method: 'POST', + headers: _headers, + extra: _extra, + contentType: 'multipart/form-data', + ) + .compose( + _dio.options, + '/api/profile/photo/upload', + queryParameters: queryParameters, + data: _data, + ) + .copyWith(baseUrl: _combineBaseUrls(_dio.options.baseUrl, baseUrl)), + ); await _dio.fetch(_options); } @@ -577,22 +490,16 @@ class _ProfileService implements ProfileService { final queryParameters = {}; final _headers = {}; const Map? _data = null; - final _options = _setStreamType(Options( - method: 'DELETE', - headers: _headers, - extra: _extra, - ) - .compose( - _dio.options, - '/api/profile/photo/delete', - queryParameters: queryParameters, - data: _data, - ) - .copyWith( - baseUrl: _combineBaseUrls( - _dio.options.baseUrl, - baseUrl, - ))); + final _options = _setStreamType( + Options(method: 'DELETE', headers: _headers, extra: _extra) + .compose( + _dio.options, + '/api/profile/photo/delete', + queryParameters: queryParameters, + data: _data, + ) + .copyWith(baseUrl: _combineBaseUrls(_dio.options.baseUrl, baseUrl)), + ); await _dio.fetch(_options); } @@ -602,22 +509,16 @@ class _ProfileService implements ProfileService { final queryParameters = {}; final _headers = {}; const Map? _data = null; - final _options = _setStreamType(Options( - method: 'GET', - headers: _headers, - extra: _extra, - ) - .compose( - _dio.options, - '/api/profile/chosen_diets', - queryParameters: queryParameters, - data: _data, - ) - .copyWith( - baseUrl: _combineBaseUrls( - _dio.options.baseUrl, - baseUrl, - ))); + final _options = _setStreamType( + Options(method: 'GET', headers: _headers, extra: _extra) + .compose( + _dio.options, + '/api/profile/chosen_diets', + queryParameters: queryParameters, + data: _data, + ) + .copyWith(baseUrl: _combineBaseUrls(_dio.options.baseUrl, baseUrl)), + ); final _result = await _dio.fetch>(_options); late ChosenDietsPaginationModel _value; try { @@ -642,10 +543,7 @@ class _ProfileService implements ProfileService { return requestOptions; } - String _combineBaseUrls( - String dioBaseUrl, - String? baseUrl, - ) { + String _combineBaseUrls(String dioBaseUrl, String? baseUrl) { if (baseUrl == null || baseUrl.trim().isEmpty) { return dioBaseUrl; } diff --git a/test/features/profile/services/profile_service_test.mocks.dart b/test/features/profile/services/profile_service_test.mocks.dart index 194ed8b5..9680c015 100644 --- a/test/features/profile/services/profile_service_test.mocks.dart +++ b/test/features/profile/services/profile_service_test.mocks.dart @@ -1,4 +1,4 @@ -// Mocks generated by Mockito 5.4.4 from annotations +// Mocks generated by Mockito 5.4.5 from annotations // in eatvio_app/test/features/profile/services/profile_service_test.dart. // Do not manually edit this file. @@ -27,52 +27,33 @@ import 'package:mockito/mockito.dart' as _i1; // ignore_for_file: deprecated_member_use_from_same_package // ignore_for_file: implementation_imports // ignore_for_file: invalid_use_of_visible_for_testing_member +// ignore_for_file: must_be_immutable // ignore_for_file: prefer_const_constructors // ignore_for_file: unnecessary_parenthesis // ignore_for_file: camel_case_types // ignore_for_file: subtype_of_sealed_class class _FakeProfileModel_0 extends _i1.SmartFake implements _i2.ProfileModel { - _FakeProfileModel_0( - Object parent, - Invocation parentInvocation, - ) : super( - parent, - parentInvocation, - ); + _FakeProfileModel_0(Object parent, Invocation parentInvocation) + : super(parent, parentInvocation); } class _FakeProfileDetailsModel_1 extends _i1.SmartFake implements _i2.ProfileDetailsModel { - _FakeProfileDetailsModel_1( - Object parent, - Invocation parentInvocation, - ) : super( - parent, - parentInvocation, - ); + _FakeProfileDetailsModel_1(Object parent, Invocation parentInvocation) + : super(parent, parentInvocation); } class _FakeSubPaginationModel_2 extends _i1.SmartFake implements _i3.SubPaginationModel { - _FakeSubPaginationModel_2( - Object parent, - Invocation parentInvocation, - ) : super( - parent, - parentInvocation, - ); + _FakeSubPaginationModel_2(Object parent, Invocation parentInvocation) + : super(parent, parentInvocation); } class _FakeChosenDietsPaginationModel_3 extends _i1.SmartFake implements _i4.ChosenDietsPaginationModel { - _FakeChosenDietsPaginationModel_3( - Object parent, - Invocation parentInvocation, - ) : super( - parent, - parentInvocation, - ); + _FakeChosenDietsPaginationModel_3(Object parent, Invocation parentInvocation) + : super(parent, parentInvocation); } /// A class which mocks [ProfileService]. @@ -82,106 +63,78 @@ class MockProfileService extends _i1.Mock implements _i5.ProfileService { @override _i6.Future<_i2.ProfileModel> getProfileBySlug({required String? slug}) => (super.noSuchMethod( - Invocation.method( - #getProfileBySlug, - [], - {#slug: slug}, - ), - returnValue: _i6.Future<_i2.ProfileModel>.value(_FakeProfileModel_0( - this, - Invocation.method( - #getProfileBySlug, - [], - {#slug: slug}, - ), - )), - returnValueForMissingStub: - _i6.Future<_i2.ProfileModel>.value(_FakeProfileModel_0( - this, - Invocation.method( - #getProfileBySlug, - [], - {#slug: slug}, - ), - )), - ) as _i6.Future<_i2.ProfileModel>); + Invocation.method(#getProfileBySlug, [], {#slug: slug}), + returnValue: _i6.Future<_i2.ProfileModel>.value( + _FakeProfileModel_0( + this, + Invocation.method(#getProfileBySlug, [], {#slug: slug}), + ), + ), + returnValueForMissingStub: _i6.Future<_i2.ProfileModel>.value( + _FakeProfileModel_0( + this, + Invocation.method(#getProfileBySlug, [], {#slug: slug}), + ), + ), + ) + as _i6.Future<_i2.ProfileModel>); @override - _i6.Future<_i2.ProfileModel> getMyProfile() => (super.noSuchMethod( - Invocation.method( - #getMyProfile, - [], - ), - returnValue: _i6.Future<_i2.ProfileModel>.value(_FakeProfileModel_0( - this, - Invocation.method( - #getMyProfile, - [], - ), - )), - returnValueForMissingStub: - _i6.Future<_i2.ProfileModel>.value(_FakeProfileModel_0( - this, - Invocation.method( - #getMyProfile, - [], - ), - )), - ) as _i6.Future<_i2.ProfileModel>); + _i6.Future<_i2.ProfileModel> getMyProfile() => + (super.noSuchMethod( + Invocation.method(#getMyProfile, []), + returnValue: _i6.Future<_i2.ProfileModel>.value( + _FakeProfileModel_0(this, Invocation.method(#getMyProfile, [])), + ), + returnValueForMissingStub: _i6.Future<_i2.ProfileModel>.value( + _FakeProfileModel_0(this, Invocation.method(#getMyProfile, [])), + ), + ) + as _i6.Future<_i2.ProfileModel>); @override _i6.Future<_i2.ProfileDetailsModel> getMyProfileDetails() => (super.noSuchMethod( - Invocation.method( - #getMyProfileDetails, - [], - ), - returnValue: _i6.Future<_i2.ProfileDetailsModel>.value( - _FakeProfileDetailsModel_1( - this, - Invocation.method( - #getMyProfileDetails, - [], - ), - )), - returnValueForMissingStub: _i6.Future<_i2.ProfileDetailsModel>.value( - _FakeProfileDetailsModel_1( - this, - Invocation.method( - #getMyProfileDetails, - [], - ), - )), - ) as _i6.Future<_i2.ProfileDetailsModel>); + Invocation.method(#getMyProfileDetails, []), + returnValue: _i6.Future<_i2.ProfileDetailsModel>.value( + _FakeProfileDetailsModel_1( + this, + Invocation.method(#getMyProfileDetails, []), + ), + ), + returnValueForMissingStub: + _i6.Future<_i2.ProfileDetailsModel>.value( + _FakeProfileDetailsModel_1( + this, + Invocation.method(#getMyProfileDetails, []), + ), + ), + ) + as _i6.Future<_i2.ProfileDetailsModel>); @override - _i6.Future<_i2.ProfileDetailsModel> getProfileDetailsBySlug( - {required String? slug}) => + _i6.Future<_i2.ProfileDetailsModel> getProfileDetailsBySlug({ + required String? slug, + }) => (super.noSuchMethod( - Invocation.method( - #getProfileDetailsBySlug, - [], - {#slug: slug}, - ), - returnValue: _i6.Future<_i2.ProfileDetailsModel>.value( - _FakeProfileDetailsModel_1( - this, - Invocation.method( - #getProfileDetailsBySlug, - [], - {#slug: slug}, - ), - )), - returnValueForMissingStub: _i6.Future<_i2.ProfileDetailsModel>.value( - _FakeProfileDetailsModel_1( - this, - Invocation.method( - #getProfileDetailsBySlug, - [], - {#slug: slug}, - ), - )), - ) as _i6.Future<_i2.ProfileDetailsModel>); + Invocation.method(#getProfileDetailsBySlug, [], {#slug: slug}), + returnValue: _i6.Future<_i2.ProfileDetailsModel>.value( + _FakeProfileDetailsModel_1( + this, + Invocation.method(#getProfileDetailsBySlug, [], {#slug: slug}), + ), + ), + returnValueForMissingStub: + _i6.Future<_i2.ProfileDetailsModel>.value( + _FakeProfileDetailsModel_1( + this, + Invocation.method(#getProfileDetailsBySlug, [], { + #slug: slug, + }), + ), + ), + ) + as _i6.Future<_i2.ProfileDetailsModel>); @override _i6.Future addCircumference({ @@ -190,59 +143,53 @@ class MockProfileService extends _i1.Mock implements _i5.ProfileService { required int? hipCircumference, }) => (super.noSuchMethod( - Invocation.method( - #addCircumference, - [], - { - #chestCircumference: chestCircumference, - #waistCircumference: waistCircumference, - #hipCircumference: hipCircumference, - }, - ), - returnValue: _i6.Future.value(), - returnValueForMissingStub: _i6.Future.value(), - ) as _i6.Future); + Invocation.method(#addCircumference, [], { + #chestCircumference: chestCircumference, + #waistCircumference: waistCircumference, + #hipCircumference: hipCircumference, + }), + returnValue: _i6.Future.value(), + returnValueForMissingStub: _i6.Future.value(), + ) + as _i6.Future); @override - _i6.Future addWeight({required double? weight}) => (super.noSuchMethod( - Invocation.method( - #addWeight, - [], - {#weight: weight}, - ), - returnValue: _i6.Future.value(), - returnValueForMissingStub: _i6.Future.value(), - ) as _i6.Future); - - @override - _i6.Future> getBlogPostByAuthorSlug( - {required String? slug}) => + _i6.Future addWeight({required double? weight}) => (super.noSuchMethod( - Invocation.method( - #getBlogPostByAuthorSlug, - [], - {#slug: slug}, - ), - returnValue: _i6.Future>.value( - <_i7.FeedBlogPostModel>[]), - returnValueForMissingStub: - _i6.Future>.value( - <_i7.FeedBlogPostModel>[]), - ) as _i6.Future>); + Invocation.method(#addWeight, [], {#weight: weight}), + returnValue: _i6.Future.value(), + returnValueForMissingStub: _i6.Future.value(), + ) + as _i6.Future); + + @override + _i6.Future> getBlogPostByAuthorSlug({ + required String? slug, + }) => + (super.noSuchMethod( + Invocation.method(#getBlogPostByAuthorSlug, [], {#slug: slug}), + returnValue: _i6.Future>.value( + <_i7.FeedBlogPostModel>[], + ), + returnValueForMissingStub: + _i6.Future>.value( + <_i7.FeedBlogPostModel>[], + ), + ) + as _i6.Future>); @override _i6.Future> getWeight({required String? period}) => (super.noSuchMethod( - Invocation.method( - #getWeight, - [], - {#period: period}, - ), - returnValue: - _i6.Future>.value(<_i8.WeightModel>[]), - returnValueForMissingStub: - _i6.Future>.value(<_i8.WeightModel>[]), - ) as _i6.Future>); + Invocation.method(#getWeight, [], {#period: period}), + returnValue: _i6.Future>.value( + <_i8.WeightModel>[], + ), + returnValueForMissingStub: _i6.Future>.value( + <_i8.WeightModel>[], + ), + ) + as _i6.Future>); @override _i6.Future> getWeightBySlug({ @@ -250,35 +197,34 @@ class MockProfileService extends _i1.Mock implements _i5.ProfileService { required String? slug, }) => (super.noSuchMethod( - Invocation.method( - #getWeightBySlug, - [], - { - #period: period, - #slug: slug, - }, - ), - returnValue: - _i6.Future>.value(<_i8.WeightModel>[]), - returnValueForMissingStub: - _i6.Future>.value(<_i8.WeightModel>[]), - ) as _i6.Future>); + Invocation.method(#getWeightBySlug, [], { + #period: period, + #slug: slug, + }), + returnValue: _i6.Future>.value( + <_i8.WeightModel>[], + ), + returnValueForMissingStub: _i6.Future>.value( + <_i8.WeightModel>[], + ), + ) + as _i6.Future>); @override - _i6.Future> getCircumferences( - {required String? period}) => + _i6.Future> getCircumferences({ + required String? period, + }) => (super.noSuchMethod( - Invocation.method( - #getCircumferences, - [], - {#period: period}, - ), - returnValue: _i6.Future>.value( - <_i9.CircumferenceModel>[]), - returnValueForMissingStub: - _i6.Future>.value( - <_i9.CircumferenceModel>[]), - ) as _i6.Future>); + Invocation.method(#getCircumferences, [], {#period: period}), + returnValue: _i6.Future>.value( + <_i9.CircumferenceModel>[], + ), + returnValueForMissingStub: + _i6.Future>.value( + <_i9.CircumferenceModel>[], + ), + ) + as _i6.Future>); @override _i6.Future> getCircumferencesBySlug({ @@ -286,20 +232,19 @@ class MockProfileService extends _i1.Mock implements _i5.ProfileService { required String? slug, }) => (super.noSuchMethod( - Invocation.method( - #getCircumferencesBySlug, - [], - { - #period: period, - #slug: slug, - }, - ), - returnValue: _i6.Future>.value( - <_i9.CircumferenceModel>[]), - returnValueForMissingStub: - _i6.Future>.value( - <_i9.CircumferenceModel>[]), - ) as _i6.Future>); + Invocation.method(#getCircumferencesBySlug, [], { + #period: period, + #slug: slug, + }), + returnValue: _i6.Future>.value( + <_i9.CircumferenceModel>[], + ), + returnValueForMissingStub: + _i6.Future>.value( + <_i9.CircumferenceModel>[], + ), + ) + as _i6.Future>); @override _i6.Future<_i3.SubPaginationModel> getSubscribers({ @@ -307,39 +252,30 @@ class MockProfileService extends _i1.Mock implements _i5.ProfileService { String? query, }) => (super.noSuchMethod( - Invocation.method( - #getSubscribers, - [], - { - #slug: slug, - #query: query, - }, - ), - returnValue: - _i6.Future<_i3.SubPaginationModel>.value(_FakeSubPaginationModel_2( - this, - Invocation.method( - #getSubscribers, - [], - { + Invocation.method(#getSubscribers, [], { #slug: slug, #query: query, - }, - ), - )), - returnValueForMissingStub: - _i6.Future<_i3.SubPaginationModel>.value(_FakeSubPaginationModel_2( - this, - Invocation.method( - #getSubscribers, - [], - { - #slug: slug, - #query: query, - }, - ), - )), - ) as _i6.Future<_i3.SubPaginationModel>); + }), + returnValue: _i6.Future<_i3.SubPaginationModel>.value( + _FakeSubPaginationModel_2( + this, + Invocation.method(#getSubscribers, [], { + #slug: slug, + #query: query, + }), + ), + ), + returnValueForMissingStub: _i6.Future<_i3.SubPaginationModel>.value( + _FakeSubPaginationModel_2( + this, + Invocation.method(#getSubscribers, [], { + #slug: slug, + #query: query, + }), + ), + ), + ) + as _i6.Future<_i3.SubPaginationModel>); @override _i6.Future<_i3.SubPaginationModel> getSubscriptions({ @@ -347,107 +283,84 @@ class MockProfileService extends _i1.Mock implements _i5.ProfileService { String? query, }) => (super.noSuchMethod( - Invocation.method( - #getSubscriptions, - [], - { - #slug: slug, - #query: query, - }, - ), - returnValue: - _i6.Future<_i3.SubPaginationModel>.value(_FakeSubPaginationModel_2( - this, - Invocation.method( - #getSubscriptions, - [], - { + Invocation.method(#getSubscriptions, [], { #slug: slug, #query: query, - }, - ), - )), - returnValueForMissingStub: - _i6.Future<_i3.SubPaginationModel>.value(_FakeSubPaginationModel_2( - this, - Invocation.method( - #getSubscriptions, - [], - { - #slug: slug, - #query: query, - }, - ), - )), - ) as _i6.Future<_i3.SubPaginationModel>); + }), + returnValue: _i6.Future<_i3.SubPaginationModel>.value( + _FakeSubPaginationModel_2( + this, + Invocation.method(#getSubscriptions, [], { + #slug: slug, + #query: query, + }), + ), + ), + returnValueForMissingStub: _i6.Future<_i3.SubPaginationModel>.value( + _FakeSubPaginationModel_2( + this, + Invocation.method(#getSubscriptions, [], { + #slug: slug, + #query: query, + }), + ), + ), + ) + as _i6.Future<_i3.SubPaginationModel>); @override - _i6.Future subscribe({required String? slug}) => (super.noSuchMethod( - Invocation.method( - #subscribe, - [], - {#slug: slug}, - ), - returnValue: _i6.Future.value(), - returnValueForMissingStub: _i6.Future.value(), - ) as _i6.Future); + _i6.Future subscribe({required String? slug}) => + (super.noSuchMethod( + Invocation.method(#subscribe, [], {#slug: slug}), + returnValue: _i6.Future.value(), + returnValueForMissingStub: _i6.Future.value(), + ) + as _i6.Future); @override - _i6.Future unsubscribe({required String? slug}) => (super.noSuchMethod( - Invocation.method( - #unsubscribe, - [], - {#slug: slug}, - ), - returnValue: _i6.Future.value(), - returnValueForMissingStub: _i6.Future.value(), - ) as _i6.Future); + _i6.Future unsubscribe({required String? slug}) => + (super.noSuchMethod( + Invocation.method(#unsubscribe, [], {#slug: slug}), + returnValue: _i6.Future.value(), + returnValueForMissingStub: _i6.Future.value(), + ) + as _i6.Future); @override _i6.Future uploadPhoto({required _i10.File? photo}) => (super.noSuchMethod( - Invocation.method( - #uploadPhoto, - [], - {#photo: photo}, - ), - returnValue: _i6.Future.value(), - returnValueForMissingStub: _i6.Future.value(), - ) as _i6.Future); + Invocation.method(#uploadPhoto, [], {#photo: photo}), + returnValue: _i6.Future.value(), + returnValueForMissingStub: _i6.Future.value(), + ) + as _i6.Future); @override - _i6.Future deletePhoto() => (super.noSuchMethod( - Invocation.method( - #deletePhoto, - [], - ), - returnValue: _i6.Future.value(), - returnValueForMissingStub: _i6.Future.value(), - ) as _i6.Future); + _i6.Future deletePhoto() => + (super.noSuchMethod( + Invocation.method(#deletePhoto, []), + returnValue: _i6.Future.value(), + returnValueForMissingStub: _i6.Future.value(), + ) + as _i6.Future); @override _i6.Future<_i4.ChosenDietsPaginationModel> getChosenDiets() => (super.noSuchMethod( - Invocation.method( - #getChosenDiets, - [], - ), - returnValue: _i6.Future<_i4.ChosenDietsPaginationModel>.value( - _FakeChosenDietsPaginationModel_3( - this, - Invocation.method( - #getChosenDiets, - [], - ), - )), - returnValueForMissingStub: - _i6.Future<_i4.ChosenDietsPaginationModel>.value( - _FakeChosenDietsPaginationModel_3( - this, - Invocation.method( - #getChosenDiets, - [], - ), - )), - ) as _i6.Future<_i4.ChosenDietsPaginationModel>); + Invocation.method(#getChosenDiets, []), + returnValue: _i6.Future<_i4.ChosenDietsPaginationModel>.value( + _FakeChosenDietsPaginationModel_3( + this, + Invocation.method(#getChosenDiets, []), + ), + ), + returnValueForMissingStub: + _i6.Future<_i4.ChosenDietsPaginationModel>.value( + _FakeChosenDietsPaginationModel_3( + this, + Invocation.method(#getChosenDiets, []), + ), + ), + ) + as _i6.Future<_i4.ChosenDietsPaginationModel>); }