Skip to content

Commit

Permalink
rfact: more refactoring ofcourse
Browse files Browse the repository at this point in the history
  • Loading branch information
JideGuru committed Aug 20, 2023
1 parent f46701e commit f2ed783
Show file tree
Hide file tree
Showing 85 changed files with 110 additions and 105 deletions.
41 changes: 2 additions & 39 deletions lib/main.dart
Original file line number Diff line number Diff line change
@@ -1,9 +1,7 @@
import 'package:flutter/material.dart';
import 'package:flutter_ebook_app/src/features/features.dart';
import 'package:flutter_ebook_app/src/router/app_router.dart';
import 'package:flutter_ebook_app/src/theme/theme_config.dart';
import 'package:flutter_ebook_app/src/app.dart';
import 'package:flutter_ebook_app/src/common/common.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:google_fonts/google_fonts.dart';
import 'package:sembast/sembast.dart';

void main() async {
Expand All @@ -12,38 +10,3 @@ void main() async {
await DatabaseConfig.init(StoreRef<dynamic, dynamic>.main());
runApp(ProviderScope(child: MyApp()));
}

class MyApp extends ConsumerWidget {
MyApp({super.key});

final _appRouter = AppRouter();

@override
Widget build(BuildContext context, WidgetRef ref) {
final currentAppTheme = ref.watch(currentAppThemeNotifierProvider);
return MaterialApp.router(
debugShowCheckedModeBanner: false,
title: Strings.appName,
theme: themeData(
currentAppTheme.value == CurrentAppTheme.dark
? ThemeConfig.darkTheme
: ThemeConfig.lightTheme,
),
darkTheme: themeData(ThemeConfig.darkTheme),
themeMode: currentAppTheme.value?.themeMode,
routerConfig: _appRouter.config(),
);
}

// Apply font to our app's theme
ThemeData themeData(ThemeData theme) {
return theme.copyWith(
textTheme: GoogleFonts.sourceSansProTextTheme(
theme.textTheme,
),
colorScheme: theme.colorScheme.copyWith(
secondary: ThemeConfig.lightAccent,
),
);
}
}
39 changes: 39 additions & 0 deletions lib/src/app.dart
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
import 'package:flutter/material.dart';
import 'package:flutter_ebook_app/src/common/common.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:google_fonts/google_fonts.dart';

class MyApp extends ConsumerWidget {
MyApp({super.key});

final _appRouter = AppRouter();

@override
Widget build(BuildContext context, WidgetRef ref) {
final currentAppTheme = ref.watch(currentAppThemeNotifierProvider);
return MaterialApp.router(
debugShowCheckedModeBanner: false,
title: Strings.appName,
theme: themeData(
currentAppTheme.value == CurrentAppTheme.dark
? ThemeConfig.darkTheme
: ThemeConfig.lightTheme,
),
darkTheme: themeData(ThemeConfig.darkTheme),
themeMode: currentAppTheme.value?.themeMode,
routerConfig: _appRouter.config(),
);
}

// Apply font to our app's theme
ThemeData themeData(ThemeData theme) {
return theme.copyWith(
textTheme: GoogleFonts.sourceSansProTextTheme(
theme.textTheme,
),
colorScheme: theme.colorScheme.copyWith(
secondary: ThemeConfig.lightAccent,
),
);
}
}
File renamed without changes.
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import 'package:flutter_ebook_app/src/features/features.dart';
import 'package:flutter_ebook_app/src/common/common.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:shared_preferences/shared_preferences.dart';

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,3 +4,4 @@ export 'data/data.dart';
export 'domain/domain.dart';
export 'extensions/extensions.dart';
export 'presentation/presentation.dart';
export 'router/app_router.dart';
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import 'package:flutter_ebook_app/src/features/features.dart';
import 'package:flutter_ebook_app/src/common/common.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:sembast/sembast.dart';

Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import 'package:flutter_ebook_app/src/features/features.dart';
import 'package:flutter_ebook_app/src/common/common.dart';

abstract class FavoritesLocalDataSource {
const FavoritesLocalDataSource();
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import 'package:flutter_ebook_app/src/features/features.dart';
import 'package:flutter_ebook_app/src/common/common.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:sembast/sembast.dart';

Expand Down
File renamed without changes.
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import 'package:dio/dio.dart';
import 'package:dio/io.dart';
import 'package:flutter_ebook_app/src/features/common/constants/api.dart';
import 'package:flutter_ebook_app/src/common/common.dart';

class AppDio with DioMixin implements Dio {
AppDio._() {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import 'dart:convert';

import 'package:dio/dio.dart';
import 'package:flutter_ebook_app/src/features/features.dart';
import 'package:flutter_ebook_app/src/common/common.dart';
import 'package:xml2json/xml2json.dart';

typedef BookRepositoryData = ({CategoryFeed? feed, HttpFailure? failure});
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
import 'package:flutter_ebook_app/src/features/common/data/data_sources/downloads/downloads_local_data_source.dart';
import 'package:flutter_ebook_app/src/features/common/data/data_sources/downloads/downloads_local_data_source_impl.dart';
import 'package:flutter_ebook_app/src/common/common.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';

abstract class DownloadsRepository {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import 'package:flutter_ebook_app/src/features/features.dart';
import 'package:flutter_ebook_app/src/common/common.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';

abstract class FavoritesRepository {
Expand Down
File renamed without changes.
File renamed without changes.
File renamed without changes.
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import 'dart:async';

import 'package:flutter/material.dart';
import 'package:flutter_ebook_app/src/features/features.dart';
import 'package:flutter_ebook_app/src/common/common.dart';
import 'package:riverpod_annotation/riverpod_annotation.dart';

part 'current_app_theme_notifier.g.dart';
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import 'dart:async';

import 'package:flutter_ebook_app/src/features/features.dart';
import 'package:flutter_ebook_app/src/common/common.dart';
import 'package:riverpod_annotation/riverpod_annotation.dart';

part 'downloads_notifier.g.dart';
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import 'dart:async';

import 'package:flutter_ebook_app/src/features/features.dart';
import 'package:flutter_ebook_app/src/common/common.dart';
import 'package:riverpod_annotation/riverpod_annotation.dart';

part 'favorites_notifier.g.dart';
Expand Down
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
export 'notifiers/notifiers.dart';
export 'providers/providers.dart';
export 'theme/theme_config.dart';
export 'ui/ui.dart';
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import 'package:flutter_ebook_app/src/features/features.dart';
import 'package:flutter_ebook_app/src/common/common.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:sembast/sembast.dart';

Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import 'package:dio/dio.dart';
import 'package:flutter_ebook_app/src/features/common/data/remote/app_dio.dart';
import 'package:flutter_ebook_app/src/common/common.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';

final dioProvider = Provider<Dio>((ref) => AppDio.getInstance());
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import 'package:flutter_ebook_app/src/features/common/data/local/local_storage.dart';
import 'package:flutter_ebook_app/src/common/common.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:shared_preferences/shared_preferences.dart';

Expand Down
File renamed without changes.
File renamed without changes.
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
import 'package:auto_route/auto_route.dart';
import 'package:cached_network_image/cached_network_image.dart';
import 'package:flutter/material.dart';
import 'package:flutter_ebook_app/src/common/common.dart';
import 'package:flutter_ebook_app/src/features/features.dart';
import 'package:flutter_ebook_app/src/router/app_router.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:uuid/uuid.dart';

Expand Down Expand Up @@ -33,7 +33,8 @@ class BookCard extends ConsumerWidget {
child: InkWell(
borderRadius: const BorderRadius.all(Radius.circular(10.0)),
onTap: () {
final bool isHomeTab = ref.read(currentTabNotifierProvider).isHomeTab;
final bool isHomeTab =
ref.read(currentTabNotifierProvider).isHomeTab;
final route = BookDetailsRoute(
entry: entry,
imgTag: imgTag,
Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
import 'package:auto_route/auto_route.dart';
import 'package:cached_network_image/cached_network_image.dart';
import 'package:flutter/material.dart';
import 'package:flutter_ebook_app/src/common/common.dart';
import 'package:flutter_ebook_app/src/features/features.dart';
import 'package:flutter_ebook_app/src/router/app_router.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:uuid/uuid.dart';

Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
import 'package:auto_route/auto_route.dart';
import 'package:cached_network_image/cached_network_image.dart';
import 'package:flutter/material.dart';
import 'package:flutter_ebook_app/src/common/common.dart';
import 'package:flutter_ebook_app/src/features/features.dart';
import 'package:flutter_ebook_app/src/router/app_router.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:uuid/uuid.dart';

Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import 'package:flutter/material.dart';
import 'package:flutter_ebook_app/src/features/features.dart';
import 'package:flutter_ebook_app/src/common/common.dart';

class DescriptionTextWidget extends StatefulWidget {
final String text;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import 'package:flutter/material.dart';
import 'package:flutter_ebook_app/src/features/features.dart';
import 'package:flutter_ebook_app/src/common/common.dart';

class MyErrorWidget extends StatelessWidget {
final Function refreshCallBack;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import 'package:flutter/material.dart';
import 'package:flutter_ebook_app/src/features/features.dart';
import 'package:flutter_ebook_app/src/common/common.dart';
import 'package:flutter_spinkit/flutter_spinkit.dart';

class LoadingWidget extends StatelessWidget {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ import 'dart:io';
import 'package:dio/dio.dart';
import 'package:flutter/foundation.dart';
import 'package:flutter/material.dart';
import 'package:flutter_ebook_app/src/features/features.dart';
import 'package:flutter_ebook_app/src/common/common.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:path/path.dart' as path;
import 'package:path_provider/path_provider.dart';
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import 'dart:io';

import 'package:flutter/material.dart';
import 'package:flutter_ebook_app/src/features/features.dart';
import 'package:flutter_ebook_app/src/common/common.dart';

class ExitModalDialog extends StatelessWidget {
const ExitModalDialog({super.key});
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
import 'package:auto_route/auto_route.dart';
import 'package:flutter/material.dart';
import 'package:flutter_ebook_app/src/common/common.dart';
import 'package:flutter_ebook_app/src/features/features.dart';

part 'app_router.gr.dart';
Expand Down
File renamed without changes.
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import 'package:flutter_ebook_app/src/features/features.dart';
import 'package:flutter_ebook_app/src/common/common.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';

class BookDetailsRepository extends BookRepository {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import 'package:flutter_ebook_app/src/common/common.dart';
import 'package:flutter_ebook_app/src/features/book_details/data/repositories/book_details_repository.dart';
import 'package:flutter_ebook_app/src/features/common/common.dart';
import 'package:riverpod_annotation/riverpod_annotation.dart';

part 'book_details_notifier.g.dart';
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ import 'dart:io';
import 'package:auto_route/auto_route.dart';
import 'package:cached_network_image/cached_network_image.dart';
import 'package:flutter/material.dart';
import 'package:flutter_ebook_app/src/common/common.dart';
import 'package:flutter_ebook_app/src/features/features.dart';
import 'package:flutter_icons/flutter_icons.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ import 'dart:io';
import 'package:auto_route/auto_route.dart';
import 'package:cached_network_image/cached_network_image.dart';
import 'package:flutter/material.dart';
import 'package:flutter_ebook_app/src/features/features.dart';
import 'package:flutter_ebook_app/src/common/common.dart';
import 'package:flutter_icons/flutter_icons.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:iridium_reader_widget/views/viewers/epub_screen.dart';
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import 'package:flutter_ebook_app/src/features/features.dart';
import 'package:flutter_ebook_app/src/common/common.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';

class ExploreRepository extends BookRepository {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
import 'dart:async';

import 'package:flutter_ebook_app/src/common/common.dart';
import 'package:flutter_ebook_app/src/features/features.dart';
import 'package:riverpod_annotation/riverpod_annotation.dart';

Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
import 'package:auto_route/auto_route.dart';
import 'package:flutter/material.dart';
import 'package:flutter_ebook_app/src/common/common.dart';
import 'package:flutter_ebook_app/src/features/features.dart';

@RoutePage()
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
import 'package:auto_route/auto_route.dart';
import 'package:flutter/material.dart';

import 'package:flutter_ebook_app/src/router/app_router.dart';
import 'package:flutter_ebook_app/src/common/common.dart';

class ExploreScreenLarge extends StatefulWidget {
const ExploreScreenLarge({super.key});
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import 'package:auto_route/auto_route.dart';
import 'package:flutter/material.dart';
import 'package:flutter_ebook_app/src/common/common.dart';
import 'package:flutter_ebook_app/src/features/features.dart';
import 'package:flutter_ebook_app/src/router/app_router.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';

@RoutePage()
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@ import 'dart:async';

import 'package:auto_route/auto_route.dart';
import 'package:flutter/material.dart';
import 'package:flutter_ebook_app/src/common/common.dart';
import 'package:flutter_ebook_app/src/features/features.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';

Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import 'package:auto_route/auto_route.dart';
import 'package:flutter/material.dart';
import 'package:flutter_ebook_app/src/features/features.dart';
import 'package:flutter_ebook_app/src/common/common.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';

@RoutePage()
Expand Down
1 change: 0 additions & 1 deletion lib/src/features/features.dart
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
export 'book_details/book_details.dart';
export 'common/common.dart';
export 'downloads/downloads.dart';
export 'explore/explore.dart';
export 'favorites/favourites.dart';
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import 'package:flutter_ebook_app/src/features/features.dart';
import 'package:flutter_ebook_app/src/common/common.dart';
import 'package:flutter_riverpod/flutter_riverpod.dart';
import 'package:riverpod_annotation/riverpod_annotation.dart';

Expand Down
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
import 'package:flutter_ebook_app/src/common/common.dart';
import 'package:flutter_ebook_app/src/features/features.dart';
import 'package:riverpod_annotation/riverpod_annotation.dart';

Expand Down Expand Up @@ -25,8 +26,8 @@ class HomeFeedNotifier extends _$HomeFeedNotifier {
final popularFeedSuccessOrFailure =
await homeRepository.getPopularHomeFeed();
final recentFeedSuccessOrFailure = await homeRepository.getRecentHomeFeed();
CategoryFeed? popularFeed = popularFeedSuccessOrFailure.feed;
CategoryFeed? recentFeed = recentFeedSuccessOrFailure.feed;
final popularFeed = popularFeedSuccessOrFailure.feed;
final recentFeed = recentFeedSuccessOrFailure.feed;
if (popularFeed == null) {
throw popularFeedSuccessOrFailure.failure!.description;
}
Expand Down
Loading

0 comments on commit f2ed783

Please sign in to comment.