mirror of
https://github.com/88srzh/comics_db.git
synced 2025-05-17 14:05:58 +08:00
fix all errors thanks to pre-commit
This commit is contained in:
@ -1,9 +1,9 @@
|
||||
include: package:flutter_lints/flutter.yaml
|
||||
|
||||
analyzer:
|
||||
strong-mode:
|
||||
implicit-casts: false
|
||||
implicit-dynamic: false
|
||||
# strong-mode:
|
||||
# implicit-casts: false
|
||||
# implicit-dynamic: false
|
||||
exclude:
|
||||
- "**/*.g.dart"
|
||||
- "**/*.freezed.dart"
|
||||
|
@ -1,8 +1,8 @@
|
||||
part of 'watchlist_bloc.dart';
|
||||
|
||||
@freezed
|
||||
class WatchlistEvent with _$WatchlistEvent {
|
||||
factory WatchlistEvent.loadMovies({required String locale}) = WatchlistEventLoadMovies;
|
||||
factory WatchlistEvent.loadTV({required String locale}) = WatchlistEventLoadTV;
|
||||
factory WatchlistEvent.loadReset() = WatchlistLoadReset;
|
||||
}
|
||||
// part of 'watchlist_bloc.dart';
|
||||
//
|
||||
// @freezed
|
||||
// class WatchlistEvent with _$WatchlistEvent {
|
||||
// factory WatchlistEvent.loadMovies({required String locale}) = WatchlistEventLoadMovies;
|
||||
// factory WatchlistEvent.loadTV({required String locale}) = WatchlistEventLoadTV;
|
||||
// factory WatchlistEvent.loadReset() = WatchlistLoadReset;
|
||||
// }
|
||||
|
@ -1,12 +1,11 @@
|
||||
// Package imports:
|
||||
import 'package:comics_db_app/domain/entity/movie_details_external_ids.dart';
|
||||
import 'package:comics_db_app/domain/entity/movie_details_similar.dart';
|
||||
import 'package:json_annotation/json_annotation.dart';
|
||||
|
||||
// Project imports:
|
||||
import 'package:comics_db_app/domain/entity/data_parser.dart';
|
||||
import 'package:comics_db_app/domain/entity/movie_details_credits.dart';
|
||||
import 'package:comics_db_app/domain/entity/movie_details_recommendations.dart';
|
||||
import 'package:comics_db_app/domain/entity/movie_details_similar.dart';
|
||||
import 'package:comics_db_app/domain/entity/movie_details_videos.dart';
|
||||
|
||||
part 'movie_details.g.dart';
|
||||
|
@ -1,5 +1,4 @@
|
||||
// Flutter imports:
|
||||
import 'package:comics_db_app/ui/widgets/movie_details/movie_details_cubit.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
|
||||
// Project imports:
|
||||
|
@ -1,19 +1,19 @@
|
||||
// Flutter imports:
|
||||
import 'package:comics_db_app/ui/components/custom_details_appbar_widget.dart';
|
||||
import 'package:comics_db_app/ui/widgets/account/components/HeadAccountCardWidget.dart';
|
||||
import 'package:comics_db_app/ui/widgets/account/components/notification_card_widget.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:material_design_icons_flutter/material_design_icons_flutter.dart';
|
||||
|
||||
// Package imports:
|
||||
import 'package:material_design_icons_flutter/material_design_icons_flutter.dart';
|
||||
import 'package:provider/provider.dart';
|
||||
|
||||
// Project imports:
|
||||
import 'package:comics_db_app/ui/components/custom_account_list_tile.dart';
|
||||
import 'package:comics_db_app/ui/components/custom_details_appbar_widget.dart';
|
||||
import 'package:comics_db_app/ui/components/custom_setting_divider_widget.dart';
|
||||
import 'package:comics_db_app/ui/navigation/main_navigation.dart';
|
||||
import 'package:comics_db_app/ui/widgets/account/account_details_cubit.dart';
|
||||
import 'package:comics_db_app/ui/widgets/account/components/head_account_card_widget.dart';
|
||||
import 'package:comics_db_app/ui/widgets/account/components/heading_account_card_widget.dart';
|
||||
import 'package:comics_db_app/ui/widgets/account/components/notification_card_widget.dart';
|
||||
import 'package:comics_db_app/ui/widgets/account/components/settings_card_widget.dart';
|
||||
|
||||
class AccountWidget extends StatefulWidget {
|
||||
|
@ -1,7 +1,12 @@
|
||||
import 'package:comics_db_app/ui/widgets/account/account_details_cubit.dart';
|
||||
// Flutter imports:
|
||||
import 'package:flutter/material.dart';
|
||||
|
||||
// Package imports:
|
||||
import 'package:flutter_bloc/flutter_bloc.dart';
|
||||
|
||||
// Project imports:
|
||||
import 'package:comics_db_app/ui/widgets/account/account_details_cubit.dart';
|
||||
|
||||
class HeadAccountCardWidget extends StatelessWidget {
|
||||
const HeadAccountCardWidget({super.key});
|
||||
|
@ -1,13 +1,15 @@
|
||||
/*
|
||||
|
||||
// Flutter imports:
|
||||
import 'package:comics_db_app/ui/widgets/movie_details/movie_details_cubit.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
|
||||
// Package imports:
|
||||
import 'package:provider/provider.dart';
|
||||
import 'package:youtube_player_flutter/youtube_player_flutter.dart';
|
||||
|
||||
// Project imports:
|
||||
import 'package:comics_db_app/ui/navigation/main_navigation.dart';
|
||||
import 'package:youtube_player_flutter/youtube_player_flutter.dart';
|
||||
import 'package:comics_db_app/ui/widgets/movie_details/movie_details_cubit.dart';
|
||||
|
||||
class MovieDetailsAllVideosWidget extends StatefulWidget {
|
||||
|
||||
@ -160,3 +162,4 @@ class _MovieDetailsAllVideosWidgetState extends State<MovieDetailsAllVideosWidge
|
||||
Navigator.of(context).pushNamed(MainNavigationRouteNames.movieDetails, arguments: movieId);
|
||||
}
|
||||
}
|
||||
*/
|
||||
|
@ -23,8 +23,8 @@ class MovieDetailsReviewsWidget extends StatelessWidget {
|
||||
Container(
|
||||
decoration: isDarkTheme ? customMovieListBoxDecorationForDarkTheme : customMovieListBoxDecorationForLightTheme,
|
||||
clipBehavior: Clip.hardEdge,
|
||||
child: Column(
|
||||
children: const [],
|
||||
child: const Column(
|
||||
children: [],
|
||||
),
|
||||
),
|
||||
],
|
||||
|
@ -1,5 +1,5 @@
|
||||
// Flutter imports:
|
||||
import 'package:flutter/material.dart';
|
||||
import 'package:material_design_icons_flutter/material_design_icons_flutter.dart';
|
||||
|
||||
class WatchlistData {
|
||||
bool isWatchlist;
|
||||
|
@ -2,7 +2,6 @@
|
||||
import 'dart:async';
|
||||
|
||||
// Flutter imports:
|
||||
import 'package:comics_db_app/ui/widgets/movie_details/components/movie_details_all_videos_data.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
|
||||
// Package imports:
|
||||
@ -16,10 +15,11 @@ import 'package:comics_db_app/domain/entity/movie_details.dart';
|
||||
import 'package:comics_db_app/domain/services/movie_service.dart';
|
||||
import 'package:comics_db_app/ui/navigation/main_navigation.dart';
|
||||
import 'package:comics_db_app/ui/widgets/movie_details/components/actor_data.dart';
|
||||
import 'package:comics_db_app/ui/widgets/movie_details/components/movie_details_all_videos_data.dart';
|
||||
import 'package:comics_db_app/ui/widgets/movie_details/components/movie_details_data.dart';
|
||||
import 'package:comics_db_app/ui/widgets/movie_details/components/movie_details_videos_data.dart';
|
||||
import 'package:comics_db_app/ui/widgets/movie_details/components/movie_people_data.dart';
|
||||
import 'package:comics_db_app/ui/widgets/movie_details/components/recommendations_data.dart';
|
||||
import 'package:comics_db_app/ui/widgets/movie_details/components/movie_details_videos_data.dart';
|
||||
|
||||
part 'movie_details_state.dart';
|
||||
|
||||
@ -103,15 +103,15 @@ class MovieDetailsCubit extends Cubit<MovieDetailsCubitState> {
|
||||
final details = await _movieService.loadMovieDetails(movieId: movieId, locale: state.localeTag);
|
||||
updateData(details.details, details.isFavorite, details.isWatchlist);
|
||||
} on ApiClientException catch (e) {
|
||||
_handleApiClientException(e, context);
|
||||
_handleApiClientException(e);
|
||||
}
|
||||
}
|
||||
|
||||
void _handleApiClientException(ApiClientException exception, BuildContext context) {
|
||||
void _handleApiClientException(ApiClientException exception) {
|
||||
switch (exception.type) {
|
||||
case ApiClientExceptionType.sessionExpired:
|
||||
// _authService.logout();
|
||||
MainNavigation.resetNavigation(context);
|
||||
// MainNavigation.resetNavigation();
|
||||
break;
|
||||
case ApiClientExceptionType.other:
|
||||
// print('exception other');
|
||||
@ -289,7 +289,7 @@ class MovieDetailsCubit extends Cubit<MovieDetailsCubitState> {
|
||||
var newState = state.copyWith(isFavorite: data.favoriteData.isFavorite);
|
||||
emit(newState);
|
||||
} on ApiClientException catch (e) {
|
||||
_handleApiClientException(e, context);
|
||||
_handleApiClientException(e);
|
||||
}
|
||||
}
|
||||
|
||||
@ -300,7 +300,7 @@ class MovieDetailsCubit extends Cubit<MovieDetailsCubitState> {
|
||||
var newState = state.copyWith(isWatchlist: data.watchlistData.isWatchlist);
|
||||
emit(newState);
|
||||
} on ApiClientException catch (e) {
|
||||
_handleApiClientException(e, context);
|
||||
_handleApiClientException(e);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -53,11 +53,11 @@ class MovieListWidget extends StatelessWidget {
|
||||
child: PopularMovieWidget(),
|
||||
),
|
||||
),
|
||||
Padding(
|
||||
padding: const EdgeInsets.symmetric(horizontal: 20.0),
|
||||
const Padding(
|
||||
padding: EdgeInsets.symmetric(horizontal: 20.0),
|
||||
child: Row(
|
||||
mainAxisAlignment: MainAxisAlignment.spaceBetween,
|
||||
children: const [
|
||||
children: [
|
||||
CustomHeaderTextWidget(text: 'Coming soon'),
|
||||
],
|
||||
),
|
||||
|
@ -1,11 +1,11 @@
|
||||
// Flutter imports:
|
||||
import 'package:comics_db_app/ui/components/custom_details_appbar_widget.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
|
||||
// Package imports:
|
||||
import 'package:flutter_bloc/flutter_bloc.dart';
|
||||
|
||||
// Project imports:
|
||||
import 'package:comics_db_app/ui/components/custom_details_appbar_widget.dart';
|
||||
import 'package:comics_db_app/ui/widgets/people_details/components/cast_widget.dart';
|
||||
import 'package:comics_db_app/ui/widgets/people_details/components/description_widget.dart';
|
||||
import 'package:comics_db_app/ui/widgets/people_details/components/people_top_poster_widget.dart';
|
||||
@ -31,9 +31,9 @@ class _PeopleDetailsWidgetState extends State<PeopleDetailsWidget> {
|
||||
return Scaffold(
|
||||
appBar: const CustomDetailsAppBar(title: 'People Details'),
|
||||
body: ListView(
|
||||
children: [
|
||||
children: const [
|
||||
Column(
|
||||
children: const [
|
||||
children: [
|
||||
PeopleTopPosterWidget(),
|
||||
DescriptionWidget(),
|
||||
CastWidget(),
|
||||
|
@ -32,9 +32,9 @@ class BodySettingsWidget extends StatelessWidget {
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
return Column(
|
||||
return const Column(
|
||||
crossAxisAlignment: CrossAxisAlignment.start,
|
||||
children: const [
|
||||
children: [
|
||||
// HeadingPersonalCardWidget(headingText: 'General'),
|
||||
CustomSettingDivider(height: 0.5),
|
||||
GeneralCard(),
|
||||
|
@ -1,12 +1,17 @@
|
||||
// Project imports:
|
||||
import 'package:comics_db_app/ui/widgets/trending/components/trending_list_data.dart';
|
||||
|
||||
class TrendingListCubitState {
|
||||
final List<TrendingListData> trendingList;
|
||||
// final List<MovieListData> movies;
|
||||
// final List<TvListData> tvs;
|
||||
final String localeTag;
|
||||
|
||||
const TrendingListCubitState({
|
||||
required this.trendingList,
|
||||
required this.localeTag,
|
||||
// required this.movies,
|
||||
// required this.tvs,
|
||||
});
|
||||
|
||||
@override
|
||||
@ -16,6 +21,8 @@ class TrendingListCubitState {
|
||||
runtimeType == other.runtimeType &&
|
||||
trendingList == other.trendingList &&
|
||||
localeTag == other.localeTag;
|
||||
// movies == other.movies &&
|
||||
// tvs == other.tvs;
|
||||
|
||||
@override
|
||||
int get hashCode => trendingList.hashCode ^ localeTag.hashCode;
|
||||
@ -23,10 +30,14 @@ class TrendingListCubitState {
|
||||
TrendingListCubitState copyWith({
|
||||
List<TrendingListData>? trendingList,
|
||||
String? localeTag,
|
||||
// List<MovieListData>? movies,
|
||||
// List<TvListData>? tvs,
|
||||
}) {
|
||||
return TrendingListCubitState(
|
||||
trendingList: trendingList ?? this.trendingList,
|
||||
localeTag: localeTag ?? this.localeTag,
|
||||
// movies: movies ?? this.movies,
|
||||
// tvs: tvs ?? this.tvs,
|
||||
);
|
||||
}
|
||||
}
|
||||
|
@ -4,7 +4,9 @@ class TrendingListData {
|
||||
final String releaseData;
|
||||
final String? title;
|
||||
final String? name;
|
||||
final String firstAirDate;
|
||||
final String? firstAirDate;
|
||||
final String? mediaType;
|
||||
final bool? adult;
|
||||
|
||||
TrendingListData({
|
||||
required this.id,
|
||||
@ -13,5 +15,7 @@ class TrendingListData {
|
||||
required this.title,
|
||||
required this.name,
|
||||
required this.firstAirDate,
|
||||
required this.mediaType,
|
||||
required this.adult,
|
||||
});
|
||||
}
|
||||
|
@ -1,12 +1,16 @@
|
||||
// Dart imports:
|
||||
import 'dart:async';
|
||||
|
||||
// Flutter imports:
|
||||
import 'package:flutter/material.dart';
|
||||
|
||||
// Package imports:
|
||||
import 'package:flutter_bloc/flutter_bloc.dart';
|
||||
import 'package:intl/intl.dart';
|
||||
|
||||
// Project imports:
|
||||
import 'package:comics_db_app/domain/entity/trending_all.dart';
|
||||
import 'package:comics_db_app/ui/navigation/main_navigation.dart';
|
||||
import 'package:comics_db_app/ui/widgets/trending/components/trending_list_cubit_state.dart';
|
||||
import 'package:comics_db_app/ui/widgets/trending/components/trending_list_data.dart';
|
||||
import 'package:comics_db_app/ui/widgets/trending/trending_list_bloc.dart';
|
||||
@ -17,8 +21,10 @@ class TrendingListCubit extends Cubit<TrendingListCubitState> {
|
||||
var trending = <TrendingAll>[];
|
||||
late DateFormat _dateFormat;
|
||||
|
||||
TrendingListCubit({required this.trendingListBloc})
|
||||
: super(const TrendingListCubitState(trendingList: <TrendingListData>[], localeTag: '')) {
|
||||
// final List<MovieListData> movies;
|
||||
// final List<TvListData> tvs = [];
|
||||
|
||||
TrendingListCubit({required this.trendingListBloc}) : super(const TrendingListCubitState(trendingList: <TrendingListData>[], localeTag: '')) {
|
||||
Future.microtask(
|
||||
() {
|
||||
_onState(trendingListBloc.state);
|
||||
@ -43,6 +49,8 @@ class TrendingListCubit extends Cubit<TrendingListCubitState> {
|
||||
title: trending.title,
|
||||
name: trending.name,
|
||||
firstAirDate: firstAirDate,
|
||||
mediaType: trending.mediaType,
|
||||
adult: trending.adult,
|
||||
);
|
||||
}
|
||||
|
||||
@ -99,9 +107,13 @@ class TrendingListCubit extends Cubit<TrendingListCubitState> {
|
||||
trendingListBloc.add(TrendingListEventLoadTvThisWeek(locale: state.localeTag));
|
||||
}
|
||||
|
||||
// TODO need to think how realize to movie, tv and people.
|
||||
// void onTrendingTap(BuildContext context, int index) {
|
||||
// final id = state.trendingList[index].id;
|
||||
// Navigator.of(context).pushNamed(MainNavigationRouteNames.movieDetails, arguments: id);
|
||||
// }
|
||||
void onTrendingTap(BuildContext context, int index) {
|
||||
final id = state.trendingList[index].id;
|
||||
Navigator.of(context).pushNamed(MainNavigationRouteNames.movieDetails, arguments: id);
|
||||
}
|
||||
|
||||
// void onTvTap(BuildContext context, int index) {
|
||||
// final id = state.tvs[index].id;
|
||||
// Navigator.of(context).pushNamed(MainNavigationRouteNames.tvDetails, arguments: id);
|
||||
// }
|
||||
}
|
||||
|
@ -111,6 +111,7 @@ class TrendingPageListWidget extends StatelessWidget {
|
||||
|
||||
@override
|
||||
Widget build(BuildContext context) {
|
||||
final cubit = context.watch<TrendingListCubit>();
|
||||
return GridView.builder(
|
||||
padding: const EdgeInsets.only(top: 70.0, bottom: 8.0),
|
||||
gridDelegate: const SliverGridDelegateWithFixedCrossAxisCount(
|
||||
@ -126,7 +127,7 @@ class TrendingPageListWidget extends StatelessWidget {
|
||||
final trending = cubit.state.trendingList[index];
|
||||
final posterPath = trending.posterPath;
|
||||
return InkWell(
|
||||
onTap: () {},
|
||||
onTap: () => trending.mediaType == 'movie' ? cubit.onTrendingTap(context, index) : cubit.onTrendingTap(context, index),
|
||||
child: Stack(
|
||||
children: [
|
||||
Container(
|
||||
|
@ -15,7 +15,7 @@ class TvDescriptionWidget extends StatelessWidget {
|
||||
Widget build(BuildContext context) {
|
||||
final cubit = context.watch<TvDetailsCubit>();
|
||||
final overview = cubit.state.overview;
|
||||
late String trailerKey = cubit.state.videosData.first.key;
|
||||
// late String trailerKey = cubit.state.videosData.first.key;
|
||||
if (overview.isEmpty) return const SizedBox.shrink();
|
||||
return Padding(
|
||||
padding: const EdgeInsets.only(left: 20.0, right: 20.0, top: 20.0),
|
||||
|
@ -1,9 +1,11 @@
|
||||
// Flutter imports:
|
||||
import 'package:flutter/material.dart';
|
||||
|
||||
// Project imports:
|
||||
import 'package:comics_db_app/ui/widgets/tv_details/components/genres_widget.dart';
|
||||
import 'package:comics_db_app/ui/widgets/tv_details/components/rating_widget.dart';
|
||||
import 'package:comics_db_app/ui/widgets/tv_details/components/title_widget.dart';
|
||||
import 'package:comics_db_app/ui/widgets/tv_details/components/tv_details_trailer_widget.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
|
||||
class TitleGenresRatingVoteAverageWidget extends StatelessWidget {
|
||||
const TitleGenresRatingVoteAverageWidget({
|
||||
@ -27,4 +29,4 @@ class TitleGenresRatingVoteAverageWidget extends StatelessWidget {
|
||||
),
|
||||
);
|
||||
}
|
||||
}
|
||||
}
|
@ -1,7 +1,4 @@
|
||||
// Flutter imports:
|
||||
import 'package:comics_db_app/core/dark_theme_colors.dart';
|
||||
import 'package:comics_db_app/domain/blocs/theme/theme_bloc.dart';
|
||||
import 'package:comics_db_app/ui/widgets/tv_details/tv_details_cubit.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
|
||||
// Package imports:
|
||||
@ -9,12 +6,14 @@ import 'package:cached_network_image/cached_network_image.dart';
|
||||
import 'package:flutter_bloc/flutter_bloc.dart';
|
||||
|
||||
// Project imports:
|
||||
import 'package:comics_db_app/core/dark_theme_colors.dart';
|
||||
import 'package:comics_db_app/domain/api_client/image_downloader.dart';
|
||||
import 'package:comics_db_app/domain/blocs/theme/theme_bloc.dart';
|
||||
import 'package:comics_db_app/resources/resources.dart';
|
||||
import 'package:comics_db_app/ui/components/custom_cast_list_text_widget.dart';
|
||||
import 'package:comics_db_app/ui/components/loading_indicator_widget.dart';
|
||||
import 'package:comics_db_app/ui/navigation/main_navigation.dart';
|
||||
import 'package:comics_db_app/ui/widgets/movie_details/movie_details_cubit.dart';
|
||||
import 'package:comics_db_app/ui/widgets/tv_details/tv_details_cubit.dart';
|
||||
|
||||
class TvDetailsRecommendationsWidget extends StatelessWidget {
|
||||
const TvDetailsRecommendationsWidget({Key? key}) : super(key: key);
|
||||
|
@ -1,6 +1,4 @@
|
||||
// Flutter imports:
|
||||
import 'package:comics_db_app/ui/widgets/tv_details/components/tv_details_recommendations_data.dart';
|
||||
import 'package:comics_db_app/ui/widgets/tv_details/components/tv_details_videos_data.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
|
||||
// Package imports:
|
||||
@ -14,11 +12,12 @@ import 'package:comics_db_app/domain/entity/tv_details.dart';
|
||||
import 'package:comics_db_app/domain/entity/tv_details_credits.dart';
|
||||
import 'package:comics_db_app/domain/entity/tv_details_videos.dart';
|
||||
import 'package:comics_db_app/domain/services/tv_service.dart';
|
||||
import 'package:comics_db_app/ui/navigation/main_navigation.dart';
|
||||
import 'package:comics_db_app/ui/widgets/tv_details/components/tv_details_actor_data.dart';
|
||||
import 'package:comics_db_app/ui/widgets/tv_details/components/tv_details_data.dart';
|
||||
import 'package:comics_db_app/ui/widgets/tv_details/components/tv_details_people_data.dart';
|
||||
import 'package:comics_db_app/ui/widgets/tv_details/components/tv_details_recommendations_data.dart';
|
||||
import 'package:comics_db_app/ui/widgets/tv_details/components/tv_details_trailer_data.dart';
|
||||
import 'package:comics_db_app/ui/widgets/tv_details/components/tv_details_videos_data.dart';
|
||||
|
||||
part 'tv_details_state.dart';
|
||||
|
||||
@ -139,15 +138,15 @@ class TvDetailsCubit extends Cubit<TvDetailsCubitState> {
|
||||
final details = await _tvService.loadTvDetails(tvId: tvId, locale: state.localeTag);
|
||||
updateData(details.details, details.isFavorite);
|
||||
} on ApiClientException catch (e) {
|
||||
_handleApiClientException(e, context);
|
||||
_handleApiClientException(e);
|
||||
}
|
||||
}
|
||||
|
||||
void _handleApiClientException(ApiClientException exception, BuildContext context) {
|
||||
void _handleApiClientException(ApiClientException exception) {
|
||||
switch (exception.type) {
|
||||
case ApiClientExceptionType.sessionExpired:
|
||||
// _authService.logout();
|
||||
MainNavigation.resetNavigation(context);
|
||||
// MainNavigation.resetNavigation(context);
|
||||
break;
|
||||
case ApiClientExceptionType.other:
|
||||
// print('exception other');
|
||||
@ -268,7 +267,7 @@ class TvDetailsCubit extends Cubit<TvDetailsCubitState> {
|
||||
var newState = state.copyWith(isFavorite: data.favoriteData.isFavorite);
|
||||
emit(newState);
|
||||
} on ApiClientException catch (e) {
|
||||
_handleApiClientException(e, context);
|
||||
_handleApiClientException(e);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -1,5 +1,4 @@
|
||||
// Flutter imports:
|
||||
import 'package:comics_db_app/ui/widgets/tv_details/components/tv_details_recommendations_widget.dart';
|
||||
import 'package:flutter/material.dart';
|
||||
|
||||
// Package imports:
|
||||
@ -10,8 +9,9 @@ import 'package:comics_db_app/ui/components/custom_details_appbar_widget.dart';
|
||||
import 'package:comics_db_app/ui/components/custom_favorite_floating_action_button.dart';
|
||||
import 'package:comics_db_app/ui/widgets/tv_details/components/cast_and_crew_widget.dart';
|
||||
import 'package:comics_db_app/ui/widgets/tv_details/components/description_widget.dart';
|
||||
import 'package:comics_db_app/ui/widgets/tv_details/components/title_genres_rating_voteAverage_widget.dart';
|
||||
import 'package:comics_db_app/ui/widgets/tv_details/components/title_genres_rating_vote_average_widget.dart';
|
||||
import 'package:comics_db_app/ui/widgets/tv_details/components/top_poster_widget.dart';
|
||||
import 'package:comics_db_app/ui/widgets/tv_details/components/tv_details_recommendations_widget.dart';
|
||||
import 'package:comics_db_app/ui/widgets/tv_details/tv_details_cubit.dart';
|
||||
|
||||
class TvDetailsWidget extends StatefulWidget {
|
||||
|
@ -49,11 +49,11 @@ class TvListWidget extends StatelessWidget {
|
||||
child: PopularTvWidget(),
|
||||
),
|
||||
),
|
||||
Padding(
|
||||
padding: const EdgeInsets.symmetric(horizontal: 20.0),
|
||||
const Padding(
|
||||
padding: EdgeInsets.symmetric(horizontal: 20.0),
|
||||
child: Row(
|
||||
mainAxisAlignment: MainAxisAlignment.spaceBetween,
|
||||
children: const [
|
||||
children: [
|
||||
CustomHeaderTextWidget(text: 'Airing Today'),
|
||||
],
|
||||
),
|
||||
@ -65,11 +65,11 @@ class TvListWidget extends StatelessWidget {
|
||||
child: AiringTodayTvsWidget(),
|
||||
),
|
||||
),
|
||||
Padding(
|
||||
padding: const EdgeInsets.symmetric(horizontal: 20.0),
|
||||
const Padding(
|
||||
padding: EdgeInsets.symmetric(horizontal: 20.0),
|
||||
child: Row(
|
||||
mainAxisAlignment: MainAxisAlignment.spaceBetween,
|
||||
children: const [
|
||||
children: [
|
||||
CustomHeaderTextWidget(text: 'On The Air'),
|
||||
],
|
||||
),
|
||||
|
10
pubspec.lock
10
pubspec.lock
@ -1090,6 +1090,14 @@ packages:
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "1.0.2"
|
||||
web:
|
||||
dependency: transitive
|
||||
description:
|
||||
name: web
|
||||
sha256: dc8ccd225a2005c1be616fe02951e2e342092edf968cf0844220383757ef8f10
|
||||
url: "https://pub.dev"
|
||||
source: hosted
|
||||
version: "0.1.4-beta"
|
||||
web_socket_channel:
|
||||
dependency: transitive
|
||||
description:
|
||||
@ -1139,5 +1147,5 @@ packages:
|
||||
source: hosted
|
||||
version: "8.1.2"
|
||||
sdks:
|
||||
dart: ">=3.0.0 <4.0.0"
|
||||
dart: ">=3.1.0-185.0.dev <4.0.0"
|
||||
flutter: ">=3.10.0"
|
||||
|
Reference in New Issue
Block a user