From bc78f19d29b504cdd54e6fea5145b9adf1341833 Mon Sep 17 00:00:00 2001 From: leynier Date: Fri, 16 Apr 2021 20:34:16 -0400 Subject: [PATCH 01/59] Improve README with banner and badges. --- README.md | 26 +++++++++++++++++++++++--- banner.png | Bin 0 -> 34036 bytes 2 files changed, 23 insertions(+), 3 deletions(-) create mode 100644 banner.png diff --git a/README.md b/README.md index d571116..c7074c4 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,25 @@ -# Gestión UH +

+ Gestión UH +

-A UH managment app. +

+ +

-[![tests](https://github.com/NODO-UH/gestionapp/actions/workflows/tests.yml/badge.svg)](https://github.com/NODO-UH/gestionapp/actions/workflows/tests.yml) [![Codemagic build status](https://api.codemagic.io/apps/607a1a18d35b7a12ffb6c7dc/607a1a18d35b7a12ffb6c7db/status_badge.svg)](https://codemagic.io/apps/607a1a18d35b7a12ffb6c7dc/607a1a18d35b7a12ffb6c7db/latest_build) +

+ A UH managment app. +

+ +

+ + tests + + + codemagic + + + lint + +

+ +
diff --git a/banner.png b/banner.png new file mode 100644 index 0000000000000000000000000000000000000000..aead10daffa37091a66e7ed9df30148f3047e5be GIT binary patch literal 34036 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 a{Nvv?eRBe*FIP1K5O})!xvX Date: Fri, 16 Apr 2021 21:34:59 -0400 Subject: [PATCH 02/59] Add package_info_plus dependency --- pubspec.lock | 49 +++++++++++++++++++++++++++++++++++++++++++++++++ pubspec.yaml | 1 + 2 files changed, 50 insertions(+) diff --git a/pubspec.lock b/pubspec.lock index df661ad..31ab702 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -303,6 +303,13 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "1.0.0" + http: + dependency: transitive + description: + name: http + url: "https://pub.dartlang.org" + source: hosted + version: "0.13.1" http_multi_server: dependency: transitive description: @@ -401,6 +408,48 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "2.0.0" + package_info_plus: + dependency: "direct main" + description: + name: package_info_plus + url: "https://pub.dartlang.org" + source: hosted + version: "1.0.0" + package_info_plus_linux: + dependency: transitive + description: + name: package_info_plus_linux + url: "https://pub.dartlang.org" + source: hosted + version: "1.0.0" + package_info_plus_macos: + dependency: transitive + description: + name: package_info_plus_macos + url: "https://pub.dartlang.org" + source: hosted + version: "1.0.0" + package_info_plus_platform_interface: + dependency: transitive + description: + name: package_info_plus_platform_interface + url: "https://pub.dartlang.org" + source: hosted + version: "1.0.0" + package_info_plus_web: + dependency: transitive + description: + name: package_info_plus_web + url: "https://pub.dartlang.org" + source: hosted + version: "1.0.0" + package_info_plus_windows: + dependency: transitive + description: + name: package_info_plus_windows + url: "https://pub.dartlang.org" + source: hosted + version: "1.0.0" path: dependency: transitive description: diff --git a/pubspec.yaml b/pubspec.yaml index 17a2a7d..fba05e7 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -20,6 +20,7 @@ dependencies: flutter_secure_storage: ^4.1.0 get_it: ^6.0.0 json_annotation: ^4.0.1 + package_info_plus: ^1.0.0 shared_preferences: ^2.0.5 url_launcher: ^6.0.3 From 903c8beb8f036a0f8c941c5b55fc9f914b240704 Mon Sep 17 00:00:00 2001 From: leynier Date: Fri, 16 Apr 2021 21:35:24 -0400 Subject: [PATCH 03/59] Implement version repository --- lib/deps_injector.dart | 4 ++++ lib/src/data/repository.dart | 1 + .../version_repository/version_repository.dart | 10 ++++++++++ 3 files changed, 15 insertions(+) create mode 100644 lib/src/data/repository/version_repository/version_repository.dart diff --git a/lib/deps_injector.dart b/lib/deps_injector.dart index 1dff131..6b8499c 100644 --- a/lib/deps_injector.dart +++ b/lib/deps_injector.dart @@ -58,6 +58,10 @@ Future init() async { ), ); + di.registerLazySingleton( + () => VersionRepository(), + ); + //Blocs di.registerFactory( () => LoginBloc( diff --git a/lib/src/data/repository.dart b/lib/src/data/repository.dart index 2d3bebc..99fdd5e 100644 --- a/lib/src/data/repository.dart +++ b/lib/src/data/repository.dart @@ -3,3 +3,4 @@ export 'repository/mail_quota_repository/mail_quota_repository.dart'; export 'repository/profile_repository/profile_repository.dart'; export 'repository/quotas_repository/quotas_repository.dart'; export 'repository/recover_password_repository/recover_password_repository.dart'; +export 'repository/version_repository/version_repository.dart'; diff --git a/lib/src/data/repository/version_repository/version_repository.dart b/lib/src/data/repository/version_repository/version_repository.dart new file mode 100644 index 0000000..dd82852 --- /dev/null +++ b/lib/src/data/repository/version_repository/version_repository.dart @@ -0,0 +1,10 @@ +import 'package:package_info_plus/package_info_plus.dart'; + +class VersionRepository { + PackageInfo? _packageInfo; + + Future getVersion() async { + _packageInfo ??= await PackageInfo.fromPlatform(); + return _packageInfo!.version; + } +} From 44bf5bdc212ddb813da4bfffcc463ff9cec9f2bf Mon Sep 17 00:00:00 2001 From: leynier Date: Fri, 16 Apr 2021 21:35:57 -0400 Subject: [PATCH 04/59] Implement logic for dynamic copyright year and version number --- lib/src/presentation/pages/about_page.dart | 39 +++++++++++++----- .../presentation/widgets/bottom_sheet.dart | 40 +++++++++++++------ lib/src/utils/constants/misc.dart | 1 - 3 files changed, 58 insertions(+), 22 deletions(-) diff --git a/lib/src/presentation/pages/about_page.dart b/lib/src/presentation/pages/about_page.dart index fe1a8cb..f25a67a 100644 --- a/lib/src/presentation/pages/about_page.dart +++ b/lib/src/presentation/pages/about_page.dart @@ -1,4 +1,6 @@ import 'package:flutter/material.dart'; +import 'package:gestionuh/deps_injector.dart'; +import 'package:gestionuh/src/data/repository.dart'; import 'package:gestionuh/src/presentation/widgets/flash_helper.dart'; import 'package:gestionuh/src/utils/constants.dart'; import 'package:url_launcher/url_launcher.dart'; @@ -15,16 +17,35 @@ class AboutInformationPage extends StatelessWidget { ), bottomSheet: Center( heightFactor: 1, - child: Column( - mainAxisSize: MainAxisSize.min, - children: [ - Text( - '\u00a9 2021${Constants.copyRight}', + child: FutureBuilder( + future: di().getVersion(), + builder: (context, snapshot) { + final textSpans = [ + TextSpan(text: '\u00a9 ${DateTime.now().year}'), + ]; + if (snapshot.hasData) { + textSpans.addAll([ + const TextSpan(text: ' '), + TextSpan( + text: '${Constants.appName} v${snapshot.data}', + style: Theme.of(context).textTheme.bodyText1!.copyWith( + fontSize: 11, + color: Theme.of(context).primaryColor, + ), + ), + ]); + } + return RichText( + text: TextSpan( + style: Theme.of(context) + .textTheme + .bodyText1! + .copyWith(fontSize: 11), + children: textSpans, + ), textAlign: TextAlign.center, - style: - Theme.of(context).textTheme.headline6!.copyWith(fontSize: 12), - ), - ], + ); + }, ), ), body: SingleChildScrollView( diff --git a/lib/src/presentation/widgets/bottom_sheet.dart b/lib/src/presentation/widgets/bottom_sheet.dart index db9a523..8cf559e 100644 --- a/lib/src/presentation/widgets/bottom_sheet.dart +++ b/lib/src/presentation/widgets/bottom_sheet.dart @@ -1,4 +1,6 @@ import 'package:flutter/material.dart'; +import 'package:gestionuh/deps_injector.dart'; +import 'package:gestionuh/src/data/repository.dart'; import 'package:gestionuh/src/utils/constants.dart'; class GestionUHBottomSheet extends StatelessWidget { @@ -12,21 +14,35 @@ class GestionUHBottomSheet extends StatelessWidget { minimum: const EdgeInsets.only(bottom: 3), child: Center( heightFactor: 2.2, - child: RichText( - text: TextSpan( - style: - Theme.of(context).textTheme.bodyText1!.copyWith(fontSize: 11), - children: [ - const TextSpan(text: '\u00a9 2021'), - TextSpan( - text: Constants.copyRight, + child: FutureBuilder( + future: di().getVersion(), + builder: (context, snapshot) { + final textSpans = [ + TextSpan(text: '\u00a9 ${DateTime.now().year}'), + ]; + if (snapshot.hasData) { + textSpans.addAll([ + const TextSpan(text: ' '), + TextSpan( + text: '${Constants.appName} v${snapshot.data}', style: Theme.of(context).textTheme.bodyText1!.copyWith( fontSize: 11, color: Theme.of(context).primaryColor, - )) - ], - ), - textAlign: TextAlign.center, + ), + ), + ]); + } + return RichText( + text: TextSpan( + style: Theme.of(context) + .textTheme + .bodyText1! + .copyWith(fontSize: 11), + children: textSpans, + ), + textAlign: TextAlign.center, + ); + }, ), ), ); diff --git a/lib/src/utils/constants/misc.dart b/lib/src/utils/constants/misc.dart index ee9e72f..6203c78 100644 --- a/lib/src/utils/constants/misc.dart +++ b/lib/src/utils/constants/misc.dart @@ -11,7 +11,6 @@ class Constants { static const passwordRecoveryUrl = '/auth/resetpassword'; static const userSecurityQuestionsUrl = '/user/securityquestions'; static const baseUrl = 'https://identity.sic.uh.cu'; - static const copyRight = ' GestiónUH version 0.1.0 Beta'; static const objectClassTranslations = { 'student': 'Estudiante', 'worker': 'Trabajador' From 64f875fa183eb13534fe0dac6cdac7b1dc4bc516 Mon Sep 17 00:00:00 2001 From: leynier Date: Fri, 16 Apr 2021 21:36:09 -0400 Subject: [PATCH 05/59] Fix appName constant --- lib/src/utils/constants/misc.dart | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/src/utils/constants/misc.dart b/lib/src/utils/constants/misc.dart index 6203c78..db525d4 100644 --- a/lib/src/utils/constants/misc.dart +++ b/lib/src/utils/constants/misc.dart @@ -1,5 +1,5 @@ class Constants { - static const appName = 'Gestion UH'; + static const appName = 'Gestión UH'; static const testMode = false; static const authUrl = '/auth/login'; static const quotaUrl = '/proxy/quota'; From 2ab93490af28940ab666397bbc9e373d408db0c6 Mon Sep 17 00:00:00 2001 From: leynier Date: Sat, 17 Apr 2021 03:33:58 -0400 Subject: [PATCH 06/59] Implement support for web --- .github/workflows/deploy.yml | 18 + .gitignore | 2 + lib/app.dart | 43 ++- lib/main.dart | 4 + lib/src/data/local/local_storage.dart | 26 +- lib/src/presentation/pages/about_page.dart | 282 +++++++------- lib/src/presentation/pages/login_page.dart | 208 ++++++----- .../presentation/pages/mail_quotas_page.dart | 109 +++--- lib/src/presentation/pages/profile_page.dart | 203 +++++----- lib/src/presentation/pages/quota_page.dart | 105 ++++-- .../pages/recover_password_page.dart | 351 ++++++++++-------- lib/src/presentation/pages/register_page.dart | 235 ++++++------ .../pages/reset_password_page.dart | 183 ++++----- .../widgets/drawers/default_drawer.dart | 16 +- .../widgets/mail_quota_graph.dart | 2 - lib/src/presentation/widgets/quota_graph.dart | 2 - .../widgets/textfields/default_textfield.dart | 114 +++--- .../configurations/configure_nonweb.dart | 3 + .../utils/configurations/configure_web.dart | 5 + lib/src/utils/constants/routes.dart | 4 +- pubspec.lock | 9 +- pubspec.yaml | 3 + web/favicon.png | Bin 0 -> 917 bytes web/icons/Icon-192.png | Bin 0 -> 5292 bytes web/icons/Icon-512.png | Bin 0 -> 8252 bytes web/index.html | 45 +++ web/manifest.json | 23 ++ 27 files changed, 1148 insertions(+), 847 deletions(-) create mode 100644 .github/workflows/deploy.yml create mode 100644 lib/src/utils/configurations/configure_nonweb.dart create mode 100644 lib/src/utils/configurations/configure_web.dart create mode 100644 web/favicon.png create mode 100644 web/icons/Icon-192.png create mode 100644 web/icons/Icon-512.png create mode 100644 web/index.html create mode 100644 web/manifest.json diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml new file mode 100644 index 0000000..da95b6b --- /dev/null +++ b/.github/workflows/deploy.yml @@ -0,0 +1,18 @@ +name: Deploy +on: [push, pull_request] +# on: +# push: +# branches: [ main ] +jobs: + deploy: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v2 + - uses: subosito/flutter-action@v1 + with: + channel: stable + - run: flutter pub get + - run: flutter format --set-exit-if-changed . + - run: flutter analyze --fatal-infos + - run: flutter test + - uses: erickzanardo/flutter-gh-pages@v2 diff --git a/.gitignore b/.gitignore index e2c5be1..53ee6c2 100644 --- a/.gitignore +++ b/.gitignore @@ -42,3 +42,5 @@ app.*.map.json # Openapi java generator openapi/openapi-generator-cli.jar + +windows \ No newline at end of file diff --git a/lib/app.dart b/lib/app.dart index acdcf5d..ba48fc1 100644 --- a/lib/app.dart +++ b/lib/app.dart @@ -22,49 +22,55 @@ class GestionUhApp extends StatelessWidget { case LOGIN_ROUTE_NAME: final authRepo = di(); if (authRepo.logged) { - return MaterialPageRoute( + return _buildPage( builder: (_) => BlocProvider( create: (_) => di()..add(QuotaInitialized()), child: const QuotaPage(), ), + settings: settings, ); } - return MaterialPageRoute( + return _buildPage( builder: (_) => BlocProvider( create: (_) => di(), child: const LoginPage(), ), + settings: settings, ); case QUOTA_ROUTE_NAME: - return MaterialPageRoute( + return _buildPage( builder: (_) => BlocProvider( create: (_) => di()..add(QuotaInitialized()), child: const QuotaPage(), ), + settings: settings, ); case PROFILE_ROUTE_NAME: - return MaterialPageRoute( + return _buildPage( builder: (_) => BlocProvider( create: (_) => di()..add(ProfileInitialized()), child: const ProfilePage(), ), + settings: settings, ); case MAIL_ROUTE_NAME: - return MaterialPageRoute( + return _buildPage( builder: (_) => BlocProvider( create: (_) => di()..add(MailQuotaInitialized()), child: const MailQuotaPage(), ), + settings: settings, ); case RESET_PASSWORD_ROUTE_NAME: - return MaterialPageRoute( + return _buildPage( builder: (_) => BlocProvider( create: (_) => di(), child: const ResetPasswordPage(), ), + settings: settings, ); case REGISTER_ROUTE_NAME: - return MaterialPageRoute( + return _buildPage( builder: (_) => Overlay( initialEntries: [ OverlayEntry(builder: (context) { @@ -75,36 +81,51 @@ class GestionUhApp extends StatelessWidget { }), ], ), + settings: settings, ); case ABOUT_ROUTE_NAME: - return MaterialPageRoute( + return _buildPage( builder: (_) => const AboutInformationPage(), + settings: settings, ); case RECOVER_PASSWORD_ROUTE_NAME: - return MaterialPageRoute( + return _buildPage( builder: (_) => BlocProvider( create: (_) => di(), child: RecoverPasswordPage(), ), + settings: settings, ); default: final authRepo = di(); if (authRepo.logged) { - return MaterialPageRoute( + return _buildPage( builder: (_) => BlocProvider( create: (_) => di()..add(ProfileInitialized()), child: const ProfilePage(), ), + settings: settings, ); } - return MaterialPageRoute( + return _buildPage( builder: (_) => BlocProvider( create: (_) => di(), child: const LoginPage(), ), + settings: settings, ); } }, ); } + + PageRoute _buildPage({ + required WidgetBuilder builder, + required RouteSettings settings, + }) { + return MaterialPageRoute( + builder: builder, + settings: settings, + ); + } } diff --git a/lib/main.dart b/lib/main.dart index 76adcfe..0d606fe 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -2,6 +2,8 @@ import 'package:flutter/material.dart'; import 'package:gestionuh/app.dart'; import 'package:gestionuh/deps_injector.dart'; import 'package:gestionuh/src/data/repository/auth_repository/auth_repository.dart'; +import 'package:gestionuh/src/utils/configurations/configure_nonweb.dart' + if (dart.library.html) 'package:gestionuh/src/utils/configurations/configure_web.dart'; Future main() async { await initialize(); @@ -11,6 +13,8 @@ Future main() async { Future initialize() async { WidgetsFlutterBinding.ensureInitialized(); + configureApp(); + await init(); // Load user credentials diff --git a/lib/src/data/local/local_storage.dart b/lib/src/data/local/local_storage.dart index f686a6c..529e1a1 100644 --- a/lib/src/data/local/local_storage.dart +++ b/lib/src/data/local/local_storage.dart @@ -1,3 +1,6 @@ +import 'dart:io' show Platform; + +import 'package:flutter/foundation.dart' show kIsWeb; import 'package:flutter_secure_storage/flutter_secure_storage.dart'; import 'package:gestionuh/src/utils/constants.dart'; import 'package:shared_preferences/shared_preferences.dart'; @@ -8,6 +11,8 @@ abstract class ILocalStorage { bool isLogged(); + bool get isSecureStorageAvailable; + Future?> getCredentials(); Future updateCredentials({ @@ -33,8 +38,15 @@ class LocalStorage implements ILocalStorage { required this.secureStorage, }); + @override + bool get isSecureStorageAvailable => + !kIsWeb && (Platform.isAndroid || Platform.isIOS || Platform.isLinux); + @override Future loadSession() async { + if (!isSecureStorageAvailable) { + return; + } if (prefs.containsKey(USER_LOGGED_INTO) && prefs.getBool(USER_LOGGED_INTO)!) { final info = await secureStorage.readAll(); @@ -71,7 +83,7 @@ class LocalStorage implements ILocalStorage { bool isLoggedInto = true, bool persist = false, }) async { - if (persist) { + if (persist && isSecureStorageAvailable) { await secureStorage.write(key: USER_NAME, value: userName); await secureStorage.write(key: USER_PASSWORD, value: password); await prefs.setBool(USER_LOGGED_INTO, isLoggedInto); @@ -88,11 +100,13 @@ class LocalStorage implements ILocalStorage { Future invalidateCredentials() async { await prefs.setBool(USER_LOGGED_INTO, false); await prefs.setBool(USER_REMEMBERME, false); - if (await secureStorage.containsKey(key: USER_NAME)) { - await secureStorage.delete(key: USER_NAME); - } - if (await secureStorage.containsKey(key: USER_PASSWORD)) { - await secureStorage.delete(key: USER_PASSWORD); + if (isSecureStorageAvailable) { + if (await secureStorage.containsKey(key: USER_NAME)) { + await secureStorage.delete(key: USER_NAME); + } + if (await secureStorage.containsKey(key: USER_PASSWORD)) { + await secureStorage.delete(key: USER_PASSWORD); + } } sessionData.isLoggedInto = false; sessionData.rememberMe = false; diff --git a/lib/src/presentation/pages/about_page.dart b/lib/src/presentation/pages/about_page.dart index f25a67a..f532227 100644 --- a/lib/src/presentation/pages/about_page.dart +++ b/lib/src/presentation/pages/about_page.dart @@ -1,8 +1,10 @@ import 'package:flutter/material.dart'; import 'package:gestionuh/deps_injector.dart'; import 'package:gestionuh/src/data/repository.dart'; +import 'package:gestionuh/src/presentation/widgets.dart'; import 'package:gestionuh/src/presentation/widgets/flash_helper.dart'; import 'package:gestionuh/src/utils/constants.dart'; +import 'package:responsive_builder/responsive_builder.dart'; import 'package:url_launcher/url_launcher.dart'; class AboutInformationPage extends StatelessWidget { @@ -12,9 +14,10 @@ class AboutInformationPage extends StatelessWidget { Widget build(BuildContext context) { return Scaffold( appBar: AppBar( - title: const Text('Acerca de GestiónUH'), + title: const Text('Acerca de ${Constants.appName}'), centerTitle: true, ), + drawer: DefaultDrawer(), bottomSheet: Center( heightFactor: 1, child: FutureBuilder( @@ -48,141 +51,152 @@ class AboutInformationPage extends StatelessWidget { }, ), ), - body: SingleChildScrollView( - child: Padding( - padding: const EdgeInsets.symmetric(horizontal: 16.0, vertical: 20), - child: Column( - mainAxisAlignment: MainAxisAlignment.center, - children: [ - const SizedBox( - height: 20, + body: Scrollbar( + child: SingleChildScrollView( + child: Center( + child: Container( + width: getValueForScreenType( + context: context, + mobile: MediaQuery.of(context).size.width, + tablet: MediaQuery.of(context).size.width * 0.5, ), - Center( - child: Image.asset( - 'assets/images/logo-uh.png', - color: Theme.of(context).primaryColor, - ), - ), - const SizedBox( - height: 20, - ), - Text( - About.shortDescription, - style: Theme.of(context) - .textTheme - .headline6! - .copyWith(fontSize: 15, color: Colors.black38), - ), - const SizedBox( - height: 50, - ), - Text( - 'Equipo de desarrollo:', - style: Theme.of(context).textTheme.headline5!.copyWith(), - ), - const SizedBox( - height: 30, - ), - Column( - children: Developers.teams.keys - .map((key) => ExpansionTile( - title: Text(key), - children: Developers.teams[key]! - .map((e) => ListTile( - title: Text( - e.name, - style: Theme.of(context) - .textTheme - .headline6! - .copyWith(fontSize: 14), - ), - subtitle: Text( - e.role, - style: Theme.of(context) - .textTheme - .bodyText1! - .copyWith(fontSize: 12), - ), - onTap: e.link == null - ? null - : () async { - if (await canLaunch(e.link!)) { - await launch(e.link!); - } else { - FlashHelper.errorBar( - context, - message: - 'No puede acceder a ${e.link}', - ); - } - }, - trailing: e.link != null - ? const Icon(Icons.link_off_outlined) - : null, - )) - .toList(), - )) - .toList(), - ), - const SizedBox(height: 50), - Text( - 'Nodo Central de Red - UH', - style: Theme.of(context).textTheme.headline6!.copyWith(), - ), - const SizedBox(height: 10), - Text( - 'MATCOM - UH', - style: Theme.of(context).textTheme.headline6!.copyWith(), - ), - const SizedBox(height: 10), - Text( - 'GRS - UH', - style: Theme.of(context).textTheme.headline6!.copyWith(), - ), - GestureDetector( - onTap: () async { - const url = - 'https://raw.githubusercontent.com/covid19cuba/covid19cuba-app/master/LICENSE'; - if (await canLaunch(url)) { - await launch(url); - } else { - FlashHelper.errorBar( - context, - message: 'No puede acceder a $url', - ); - } - }, - child: Container( - padding: - const EdgeInsets.symmetric(horizontal: 20, vertical: 20), - child: Row( - mainAxisAlignment: MainAxisAlignment.center, - children: [ - Text( - 'Copyright 2021', - textAlign: TextAlign.center, - style: Theme.of(context).textTheme.subtitle2, - ), - Container( - padding: const EdgeInsets.all(2), - ), - Icon( - Icons.copyright, - color: Theme.of(context).textTheme.subtitle2!.color, - ), - Container( - padding: const EdgeInsets.all(2), - ), - Text( - 'GPL-3.0', - textAlign: TextAlign.center, - style: Theme.of(context).textTheme.subtitle2, - ), - ], + padding: + const EdgeInsets.symmetric(horizontal: 16.0, vertical: 20), + child: Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + const SizedBox( + height: 20, ), - ), - ) - ], + Center( + child: Image.asset( + 'assets/images/logo-uh.png', + color: Theme.of(context).primaryColor, + ), + ), + const SizedBox( + height: 20, + ), + Text( + About.shortDescription, + style: Theme.of(context) + .textTheme + .headline6! + .copyWith(fontSize: 15, color: Colors.black38), + ), + const SizedBox( + height: 50, + ), + Text( + 'Equipo de desarrollo:', + style: Theme.of(context).textTheme.headline5!.copyWith(), + ), + const SizedBox( + height: 30, + ), + Column( + children: Developers.teams.keys + .map((key) => ExpansionTile( + title: Text(key), + children: Developers.teams[key]! + .map((e) => ListTile( + title: Text( + e.name, + style: Theme.of(context) + .textTheme + .headline6! + .copyWith(fontSize: 14), + ), + subtitle: Text( + e.role, + style: Theme.of(context) + .textTheme + .bodyText1! + .copyWith(fontSize: 12), + ), + onTap: e.link == null + ? null + : () async { + if (await canLaunch(e.link!)) { + await launch(e.link!); + } else { + FlashHelper.errorBar( + context, + message: + 'No puede acceder a ${e.link}', + ); + } + }, + trailing: e.link != null + ? const Icon( + Icons.link_off_outlined) + : null, + )) + .toList(), + )) + .toList(), + ), + const SizedBox(height: 50), + Text( + 'Nodo Central de Red - UH', + style: Theme.of(context).textTheme.headline6!.copyWith(), + ), + const SizedBox(height: 10), + Text( + 'MATCOM - UH', + style: Theme.of(context).textTheme.headline6!.copyWith(), + ), + const SizedBox(height: 10), + Text( + 'GRS - UH', + style: Theme.of(context).textTheme.headline6!.copyWith(), + ), + GestureDetector( + onTap: () async { + const url = + 'https://raw.githubusercontent.com/covid19cuba/covid19cuba-app/master/LICENSE'; + if (await canLaunch(url)) { + await launch(url); + } else { + FlashHelper.errorBar( + context, + message: 'No puede acceder a $url', + ); + } + }, + child: Container( + padding: const EdgeInsets.symmetric( + horizontal: 20, vertical: 20), + child: Row( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Text( + 'Copyright 2021', + textAlign: TextAlign.center, + style: Theme.of(context).textTheme.subtitle2, + ), + Container( + padding: const EdgeInsets.all(2), + ), + Icon( + Icons.copyright, + color: Theme.of(context).textTheme.subtitle2!.color, + ), + Container( + padding: const EdgeInsets.all(2), + ), + Text( + 'GPL-3.0', + textAlign: TextAlign.center, + style: Theme.of(context).textTheme.subtitle2, + ), + ], + ), + ), + ) + ], + ), + ), ), ), ), diff --git a/lib/src/presentation/pages/login_page.dart b/lib/src/presentation/pages/login_page.dart index bbdeb4c..758cef2 100644 --- a/lib/src/presentation/pages/login_page.dart +++ b/lib/src/presentation/pages/login_page.dart @@ -1,12 +1,14 @@ import 'package:flutter/material.dart'; import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:gestionuh/deps_injector.dart'; +import 'package:gestionuh/src/data/local/local_storage.dart'; import 'package:gestionuh/src/data/repository.dart'; import 'package:gestionuh/src/presentation/blocs.dart'; import 'package:gestionuh/src/presentation/widgets.dart'; import 'package:gestionuh/src/presentation/widgets/bottom_sheet.dart'; import 'package:gestionuh/src/presentation/widgets/flash_helper.dart'; import 'package:gestionuh/src/utils/constants/routes.dart'; +import 'package:responsive_builder/responsive_builder.dart'; class LoginPage extends StatefulWidget { const LoginPage({Key? key}) : super(key: key); @@ -65,108 +67,124 @@ class _LoginPageState extends State { }, builder: (context, state) { if (state is LoginAttemptInitial) { - return SingleChildScrollView( - child: Padding( - padding: const EdgeInsets.only( - top: 30, bottom: 9, left: 18, right: 18), - child: Column( - mainAxisSize: MainAxisSize.min, - children: [ - const SizedBox( - height: 10, + return Scrollbar( + child: SingleChildScrollView( + child: Center( + child: Container( + width: getValueForScreenType( + context: context, + mobile: MediaQuery.of(context).size.width, + tablet: MediaQuery.of(context).size.width * 0.5, ), - Image.asset( - 'assets/images/splash.png', + padding: const EdgeInsets.only( + top: 30, + bottom: 9, + left: 18, + right: 18, ), - const SizedBox( - height: 40, - ), - SizedBox( - height: 40, - child: Row( - mainAxisSize: MainAxisSize.min, - mainAxisAlignment: MainAxisAlignment.center, - children: [ - Expanded( - flex: 7, - child: GestionUhDefaultTextField( - labelText: '\t\tUsuario', - controller: _usernameController, - ), + child: Column( + mainAxisSize: MainAxisSize.min, + children: [ + const SizedBox( + height: 10, + ), + Image.asset( + 'assets/images/splash.png', + ), + const SizedBox( + height: 40, + ), + SizedBox( + height: 40, + child: Row( + mainAxisSize: MainAxisSize.min, + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Expanded( + flex: 7, + child: GestionUhDefaultTextField( + labelText: 'Usuario', + controller: _usernameController, + ), + ), + ], ), - ], - ), - ), - const SizedBox( - height: 10, - ), - GestionUhDefaultTextField( - labelText: '\t\tContraseña', - controller: _passwordController, - keyboardType: TextInputType.visiblePassword, - borderRadius: const BorderRadius.only( - topLeft: Radius.circular(5), - bottomLeft: Radius.circular(5), - ), - ), - const SizedBox( - height: 20, - ), - GestureDetector( - onTap: () => setState(() => _rememberMe = !_rememberMe), - child: Container( - margin: const EdgeInsets.symmetric(horizontal: 15), - child: Row( - children: [ - Expanded( - child: Text( - '¿Desea recordar la sesión?', - style: Theme.of(context).textTheme.subtitle1, + ), + const SizedBox( + height: 10, + ), + GestionUhDefaultTextField( + labelText: 'Contraseña', + controller: _passwordController, + keyboardType: TextInputType.visiblePassword, + borderRadius: const BorderRadius.only( + topLeft: Radius.circular(5), + bottomLeft: Radius.circular(5), + ), + ), + const SizedBox( + height: 20, + ), + if (di().isSecureStorageAvailable) + GestureDetector( + onTap: () => + setState(() => _rememberMe = !_rememberMe), + child: Container( + margin: + const EdgeInsets.symmetric(horizontal: 15), + child: Row( + children: [ + Expanded( + child: Text( + '¿Desea recordar la sesión?', + style: + Theme.of(context).textTheme.subtitle1, + ), + ), + Text( + 'No', + style: + Theme.of(context).textTheme.subtitle1, + ), + Switch( + value: _rememberMe, + activeColor: Theme.of(context).primaryColor, + onChanged: (value) => + setState(() => _rememberMe = value), + ), + Text( + 'Si', + style: + Theme.of(context).textTheme.subtitle1, + ), + ], ), ), - Text( - 'No', - style: Theme.of(context).textTheme.subtitle1, - ), - Switch( - value: _rememberMe, - activeColor: Theme.of(context).primaryColor, - onChanged: (value) => - setState(() => _rememberMe = value), - ), - Text( - 'Si', - style: Theme.of(context).textTheme.subtitle1, - ), - ], + ), + const SizedBox( + height: 5, ), - ), - ), - const SizedBox( - height: 5, - ), - GestionUhDefaultButton( - text: 'Iniciar Sesión', - onPressed: () => _loginAction(context), - ), - const SizedBox( - height: 5, - ), - GestionUhDefaultButton( - text: 'Recuperar Contraseña', - onPressed: () => _recoverAction(context), - ), - const SizedBox( - height: 5, - ), - GestionUhDefaultButton( - text: 'Registrarse', - onPressed: () => _registerAction(context), - ), - const SizedBox( - height: 40, + GestionUhDefaultButton( + text: 'Iniciar Sesión', + onPressed: () => _loginAction(context), + ), + const SizedBox( + height: 5, + ), + GestionUhDefaultButton( + text: 'Recuperar Contraseña', + onPressed: () => _recoverAction(context), + ), + const SizedBox( + height: 5, + ), + GestionUhDefaultButton( + text: 'Registrarse', + onPressed: () => _registerAction(context), + ), + ], ), - ], + ), ), ), ); diff --git a/lib/src/presentation/pages/mail_quotas_page.dart b/lib/src/presentation/pages/mail_quotas_page.dart index a54b113..3b0247c 100644 --- a/lib/src/presentation/pages/mail_quotas_page.dart +++ b/lib/src/presentation/pages/mail_quotas_page.dart @@ -3,6 +3,7 @@ import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:gestionuh/src/presentation/blocs.dart'; import 'package:gestionuh/src/presentation/widgets.dart'; import 'package:gestionuh/src/presentation/widgets/bottom_sheet.dart'; +import 'package:responsive_builder/responsive_builder.dart'; class MailQuotaPage extends StatefulWidget { const MailQuotaPage({Key? key}) : super(key: key); @@ -29,57 +30,79 @@ class _MailQuotaPageState extends State { onRefresh: () async { context.read().add(MailQuotaInitialized()); }, - child: ListView( - physics: const AlwaysScrollableScrollPhysics(), - children: [ - Padding( - padding: const EdgeInsets.only( - top: 30, - bottom: 9, - left: 18, - right: 18, - ), - child: Column( - mainAxisAlignment: MainAxisAlignment.center, - children: [ - Center( - child: MailQuotaGraph( - quota: state.quota!, - ), + child: Scrollbar( + child: ListView( + physics: const AlwaysScrollableScrollPhysics(), + children: [ + Center( + child: Container( + width: getValueForScreenType( + context: context, + mobile: MediaQuery.of(context).size.width, + tablet: MediaQuery.of(context).size.width * 0.5, + ), + padding: const EdgeInsets.only( + top: 30, + bottom: 9, + left: 18, + right: 18, + ), + child: Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Center( + child: MailQuotaGraph( + quota: state.quota!, + ), + ), + ], ), - ], + ), ), - ), - ], + ], + ), ), ); } if (state is MailQuotaLoadedFailure) { - return ListView( - children: [ - Padding( - padding: const EdgeInsets.only( - top: 30, bottom: 9, left: 18, right: 18), - child: Column( - mainAxisSize: MainAxisSize.min, - mainAxisAlignment: MainAxisAlignment.center, - children: [ - Text(state.error!), - Padding( - padding: const EdgeInsets.all(5), - child: GestionUhDefaultButton( - text: 'Reintentar', - onPressed: () { - context.read().add( - MailQuotaInitialized(), - ); - }, - ), + return Scrollbar( + child: ListView( + children: [ + Center( + child: Container( + width: getValueForScreenType( + context: context, + mobile: MediaQuery.of(context).size.width, + tablet: MediaQuery.of(context).size.width * 0.5, + ), + padding: const EdgeInsets.only( + top: 30, + bottom: 9, + left: 18, + right: 18, + ), + child: Column( + mainAxisSize: MainAxisSize.min, + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Text(state.error!), + Padding( + padding: const EdgeInsets.all(5), + child: GestionUhDefaultButton( + text: 'Reintentar', + onPressed: () { + context.read().add( + MailQuotaInitialized(), + ); + }, + ), + ), + ], ), - ], + ), ), - ), - ], + ], + ), ); } return Center( diff --git a/lib/src/presentation/pages/profile_page.dart b/lib/src/presentation/pages/profile_page.dart index 01fc82b..ec44e86 100644 --- a/lib/src/presentation/pages/profile_page.dart +++ b/lib/src/presentation/pages/profile_page.dart @@ -3,6 +3,7 @@ import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:gestionuh/src/presentation/blocs.dart'; import 'package:gestionuh/src/presentation/widgets.dart'; import 'package:gestionuh/src/presentation/widgets/bottom_sheet.dart'; +import 'package:responsive_builder/responsive_builder.dart'; class ProfilePage extends StatefulWidget { const ProfilePage({Key? key}) : super(key: key); @@ -29,73 +30,100 @@ class _ProfilePageState extends State { onRefresh: () async { context.read().add(ProfileInitialized()); }, - child: ListView( - physics: const AlwaysScrollableScrollPhysics(), - children: [ - Padding( - padding: const EdgeInsets.only( - top: 30, bottom: 9, left: 18, right: 18), - child: Column( - mainAxisAlignment: MainAxisAlignment.center, - children: [ - buildProfileField( - title: 'Nombre', - body: state.profile.name ?? '', - ), - buildProfileField( - title: 'Correo', - body: state.profile.email ?? '', - ), - buildProfileField( - title: 'Carrera', - body: state.profile.careerName ?? '', + child: Scrollbar( + child: ListView( + physics: const AlwaysScrollableScrollPhysics(), + children: [ + Center( + child: Container( + width: getValueForScreenType( + context: context, + mobile: MediaQuery.of(context).size.width, + tablet: MediaQuery.of(context).size.width * 0.5, ), - buildProfileField( - title: 'Ocupación', - body: state.profile.position ?? '', + padding: const EdgeInsets.only( + top: 30, + bottom: 9, + left: 18, + right: 18, ), - buildProfileField( - title: 'Clase', - body: state.profile.objectClass ?? '', + child: Column( + mainAxisAlignment: MainAxisAlignment.center, + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + buildProfileField( + title: 'Nombre', + body: state.profile.name ?? '', + ), + buildProfileField( + title: 'Correo', + body: state.profile.email ?? '', + ), + buildProfileField( + title: 'Carrera', + body: state.profile.careerName ?? '', + ), + buildProfileField( + title: 'Ocupación', + body: state.profile.position ?? '', + ), + buildProfileField( + title: 'Clase', + body: state.profile.objectClass ?? '', + ), + buildAccessFields( + mail: state.profile.hasEmail ?? false, + cloud: state.profile.hasCloud ?? false, + internet: state.profile.hasInternet ?? false, + ), + ], ), - buildAccessFields( - mail: state.profile.hasEmail ?? false, - cloud: state.profile.hasCloud ?? false, - internet: state.profile.hasInternet ?? false, - ), - ], + ), ), - ), - ], + ], + ), ), ); } if (state is ProfileLoadedFailure) { - return ListView( - children: [ - Padding( - padding: const EdgeInsets.only( - top: 30, bottom: 9, left: 18, right: 18), - child: Column( - mainAxisSize: MainAxisSize.min, - mainAxisAlignment: MainAxisAlignment.center, - children: [ - Text(state.error), - Padding( - padding: const EdgeInsets.all(5), - child: GestionUhDefaultButton( - text: 'Reintentar', - onPressed: () { - context.read().add( - ProfileInitialized(), - ); - }, - ), + return Scrollbar( + child: ListView( + children: [ + Center( + child: Container( + width: getValueForScreenType( + context: context, + mobile: MediaQuery.of(context).size.width, + tablet: MediaQuery.of(context).size.width * 0.5, ), - ], + padding: const EdgeInsets.only( + top: 30, + bottom: 9, + left: 18, + right: 18, + ), + child: Column( + mainAxisSize: MainAxisSize.min, + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Text(state.error), + Padding( + padding: const EdgeInsets.all(5), + child: GestionUhDefaultButton( + text: 'Reintentar', + onPressed: () { + context.read().add( + ProfileInitialized(), + ); + }, + ), + ), + ], + ), + ), ), - ), - ], + ], + ), ); } return Center( @@ -120,24 +148,20 @@ class _ProfilePageState extends State { vertical: 5, horizontal: 10, ), - child: Row( + child: Column( + crossAxisAlignment: CrossAxisAlignment.start, children: [ - Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - Text(title), - const SizedBox( - height: 3, - ), - Text( - body, - style: const TextStyle( - color: Colors.black, - fontSize: 16, - fontWeight: FontWeight.bold, - ), - ), - ], + Text(title), + const SizedBox( + height: 3, + ), + Text( + body, + style: const TextStyle( + color: Colors.black, + fontSize: 16, + fontWeight: FontWeight.bold, + ), ), ], ), @@ -188,27 +212,22 @@ class _ProfilePageState extends State { required bool value, }) { return Row( + mainAxisAlignment: MainAxisAlignment.spaceBetween, children: [ - SizedBox( - width: MediaQuery.of(context).size.width * 0.5, - child: Row( - mainAxisAlignment: MainAxisAlignment.spaceBetween, - children: [ - Text( - text, - style: const TextStyle( - color: Colors.black, - fontSize: 16, - fontWeight: FontWeight.bold, - ), - ), - Icon( - icon, - color: value ? Colors.green : Colors.red, - ), - ], + Expanded( + child: Text( + text, + style: const TextStyle( + color: Colors.black, + fontSize: 16, + fontWeight: FontWeight.bold, + ), ), ), + Icon( + icon, + color: value ? Colors.green : Colors.red, + ), ], ); } diff --git a/lib/src/presentation/pages/quota_page.dart b/lib/src/presentation/pages/quota_page.dart index aed4694..8b97fe5 100644 --- a/lib/src/presentation/pages/quota_page.dart +++ b/lib/src/presentation/pages/quota_page.dart @@ -3,6 +3,7 @@ import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:gestionuh/src/presentation/blocs.dart'; import 'package:gestionuh/src/presentation/widgets.dart'; import 'package:gestionuh/src/presentation/widgets/bottom_sheet.dart'; +import 'package:responsive_builder/responsive_builder.dart'; class QuotaPage extends StatefulWidget { const QuotaPage({Key? key}) : super(key: key); @@ -29,53 +30,79 @@ class _QuotaPageState extends State { onRefresh: () async { context.read().add(QuotaInitialized()); }, - child: ListView( - physics: const AlwaysScrollableScrollPhysics(), - children: [ - Padding( - padding: const EdgeInsets.only( - top: 30, bottom: 9, left: 18, right: 18), - child: Column( - mainAxisAlignment: MainAxisAlignment.center, - children: [ - Center( - child: QuotaGraph( - quota: state.quota, - ), + child: Scrollbar( + child: ListView( + physics: const AlwaysScrollableScrollPhysics(), + children: [ + Center( + child: Container( + width: getValueForScreenType( + context: context, + mobile: MediaQuery.of(context).size.width, + tablet: MediaQuery.of(context).size.width * 0.5, + ), + padding: const EdgeInsets.only( + top: 30, + bottom: 9, + left: 18, + right: 18, + ), + child: Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Center( + child: QuotaGraph( + quota: state.quota, + ), + ), + ], ), - ], + ), ), - ), - ], + ], + ), ), ); } if (state is QuotaLoadedFailure) { - return ListView( - children: [ - Padding( - padding: const EdgeInsets.only( - top: 30, bottom: 9, left: 18, right: 18), - child: Column( - mainAxisSize: MainAxisSize.min, - mainAxisAlignment: MainAxisAlignment.center, - children: [ - Text(state.error), - Padding( - padding: const EdgeInsets.all(5), - child: GestionUhDefaultButton( - text: 'Reintentar', - onPressed: () { - context.read().add( - QuotaInitialized(), - ); - }, - ), + return Scrollbar( + child: ListView( + children: [ + Center( + child: Container( + width: getValueForScreenType( + context: context, + mobile: MediaQuery.of(context).size.width, + tablet: MediaQuery.of(context).size.width * 0.5, + ), + padding: const EdgeInsets.only( + top: 30, + bottom: 9, + left: 18, + right: 18, + ), + child: Column( + mainAxisSize: MainAxisSize.min, + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Text(state.error), + Padding( + padding: const EdgeInsets.all(5), + child: GestionUhDefaultButton( + text: 'Reintentar', + onPressed: () { + context.read().add( + QuotaInitialized(), + ); + }, + ), + ), + ], ), - ], + ), ), - ), - ], + ], + ), ); } return Center( diff --git a/lib/src/presentation/pages/recover_password_page.dart b/lib/src/presentation/pages/recover_password_page.dart index 185da32..403eb1c 100644 --- a/lib/src/presentation/pages/recover_password_page.dart +++ b/lib/src/presentation/pages/recover_password_page.dart @@ -4,6 +4,7 @@ import 'package:gestionuh/src/presentation/blocs.dart'; import 'package:gestionuh/src/presentation/widgets.dart'; import 'package:gestionuh/src/presentation/widgets/flash_helper.dart'; import 'package:gestionuh/src/utils/validators.dart'; +import 'package:responsive_builder/responsive_builder.dart'; class RecoverPasswordPage extends StatelessWidget { final _formKey = GlobalKey(); @@ -16,109 +17,168 @@ class RecoverPasswordPage extends StatelessWidget { centerTitle: true, ), bottomSheet: const GestionUHBottomSheet(), - body: BlocConsumer( - listener: (context, state) { - if (state is RecoverPasswordError) { - FlashHelper.errorBar(context, message: state.error); - } - }, - builder: (context, state) { - if (state is RecoverPasswordInitial) { - return Form( - key: _formKey, - child: Column( - mainAxisAlignment: MainAxisAlignment.center, - children: [ - Opacity( - opacity: state is RecoverPasswordCILoading ? 1 : 0, - child: const LinearProgressIndicator(), - ), - Container( - padding: const EdgeInsets.only( - top: 30, - bottom: 9, - left: 18, - right: 18, - ), + body: Scrollbar( + child: Center( + child: SizedBox( + width: getValueForScreenType( + context: context, + mobile: MediaQuery.of(context).size.width, + tablet: MediaQuery.of(context).size.width * 0.5, + ), + child: BlocConsumer( + listener: (context, state) { + if (state is RecoverPasswordError) { + FlashHelper.errorBar(context, message: state.error); + } + }, + builder: (context, state) { + if (state is RecoverPasswordInitial) { + return Form( + key: _formKey, child: Column( + mainAxisAlignment: MainAxisAlignment.center, children: [ + Opacity( + opacity: state is RecoverPasswordCILoading ? 1 : 0, + child: const CircularProgressIndicator(), + ), Container( - padding: const EdgeInsets.symmetric( - vertical: 8.0, + padding: const EdgeInsets.only( + top: 30, + bottom: 9, + left: 18, + right: 18, ), - child: GestionUhDefaultTextField( - labelText: '\t\tNúmero de Carnet de Identidad*', - controller: state.ci, - validator: identityNumberCIValidator, - autovalidateMode: AutovalidateMode.disabled, - keyboardType: TextInputType.text, - borderRadius: const BorderRadius.only( - topLeft: Radius.circular(5), - bottomLeft: Radius.circular(5), - ), + child: Column( + children: [ + Container( + padding: const EdgeInsets.symmetric( + vertical: 8.0, + ), + child: GestionUhDefaultTextField( + labelText: 'Número de Carnet de Identidad*', + controller: state.ci, + validator: identityNumberCIValidator, + autovalidateMode: AutovalidateMode.disabled, + keyboardType: TextInputType.text, + borderRadius: const BorderRadius.only( + topLeft: Radius.circular(5), + bottomLeft: Radius.circular(5), + ), + ), + ), + const SizedBox( + height: 25, + ), + GestionUhDefaultButton( + text: 'Continuar', + onPressed: () { + if (state is RecoverPasswordCILoading || + !_formKey.currentState!.validate()) { + return; + } + context.read().add( + RecoverPasswordCISubmit(state: state)); + }, + ), + ], ), - ), - const SizedBox( - height: 25, - ), - GestionUhDefaultButton( - text: 'Continuar', - onPressed: () { - if (state is RecoverPasswordCILoading || - !_formKey.currentState!.validate()) { - return; - } - context - .read() - .add(RecoverPasswordCISubmit(state: state)); - }, - ), + ) ], ), - ) - ], - ), - ); - } - if (state is RecoverPasswordQuestions) { - return SingleChildScrollView( - child: Form( - key: _formKey, - child: Column( - mainAxisSize: MainAxisSize.min, - children: [ - Opacity( - opacity: - state is RecoverPasswordQuestionsLoading ? 1 : 0, - child: const LinearProgressIndicator(), - ), - Container( - padding: const EdgeInsets.only( - top: 30, - bottom: 9, - left: 18, - right: 18, - ), + ); + } + if (state is RecoverPasswordQuestions) { + return SingleChildScrollView( + child: Form( + key: _formKey, child: Column( + mainAxisSize: MainAxisSize.min, children: [ - for (var i = 0; i < state.questions.length; ++i) - Column( + Opacity( + opacity: state is RecoverPasswordQuestionsLoading + ? 1 + : 0, + child: const LinearProgressIndicator(), + ), + Container( + padding: const EdgeInsets.only( + top: 30, + bottom: 9, + left: 18, + right: 18, + ), + child: Column( children: [ - Text(state.questions[i]), - Container( + for (var i = 0; + i < state.questions.length; + ++i) + Column( + children: [ + Text(state.questions[i]), + Container( + padding: const EdgeInsets.symmetric( + vertical: 8.0, + ), + child: GestionUhDefaultTextField( + controller: state.answers[i], + validator: (value) { + if (value == null || + value.isEmpty) { + return 'La respuesta es necesaria.'; + } + return null; + }, + autovalidateMode: + AutovalidateMode.disabled, + borderRadius: + const BorderRadius.only( + topLeft: Radius.circular(5), + bottomLeft: Radius.circular(5), + ), + ), + ), + const SizedBox( + height: 10, + ), + ], + ), + Padding( + padding: const EdgeInsets.symmetric( + vertical: 8.0), + child: GestionUhDefaultTextField( + labelText: 'Contraseña*', + controller: state.password, + validator: safetyPasswordValidator, + autovalidateMode: + AutovalidateMode.disabled, + keyboardType: + TextInputType.visiblePassword, + borderRadius: const BorderRadius.only( + topLeft: Radius.circular(5), + bottomLeft: Radius.circular(5), + ), + ), + ), + const SizedBox( + height: 10, + ), + Padding( padding: const EdgeInsets.symmetric( vertical: 8.0, ), child: GestionUhDefaultTextField( - controller: state.answers[i], + labelText: 'Repetir Contraseña*', validator: (value) { - if (value == null || value.isEmpty) { - return 'La respuesta es necesaria.'; + if (value != state.password.text) { + return 'Las contraseñas deben coincidir'; } return null; }, autovalidateMode: AutovalidateMode.disabled, + keyboardType: + TextInputType.visiblePassword, borderRadius: const BorderRadius.only( topLeft: Radius.circular(5), bottomLeft: Radius.circular(5), @@ -126,93 +186,54 @@ class RecoverPasswordPage extends StatelessWidget { ), ), const SizedBox( - height: 10, + height: 25, + ), + GestionUhDefaultButton( + text: 'Continuar', + onPressed: () { + if (state is RecoverPasswordCILoading || + !_formKey.currentState!.validate()) { + return; + } + context.read().add( + RecoverPasswordFinalSubmit( + state: state)); + }, ), ], ), - Padding( - padding: - const EdgeInsets.symmetric(vertical: 8.0), - child: GestionUhDefaultTextField( - labelText: '\t\tContraseña*', - controller: state.password, - validator: safetyPasswordValidator, - autovalidateMode: AutovalidateMode.disabled, - keyboardType: TextInputType.visiblePassword, - borderRadius: const BorderRadius.only( - topLeft: Radius.circular(5), - bottomLeft: Radius.circular(5), - ), - ), - ), - const SizedBox( - height: 10, - ), - Padding( - padding: const EdgeInsets.symmetric( - vertical: 8.0, - ), - child: GestionUhDefaultTextField( - labelText: '\t\tRepetir Contraseña*', - validator: (value) { - if (value != state.password.text) { - return 'Las contraseñas deben coincidir'; - } - return null; - }, - autovalidateMode: AutovalidateMode.disabled, - keyboardType: TextInputType.visiblePassword, - borderRadius: const BorderRadius.only( - topLeft: Radius.circular(5), - bottomLeft: Radius.circular(5), - ), - ), - ), - const SizedBox( - height: 25, - ), - GestionUhDefaultButton( - text: 'Continuar', - onPressed: () { - if (state is RecoverPasswordCILoading || - !_formKey.currentState!.validate()) { - return; - } - context.read().add( - RecoverPasswordFinalSubmit(state: state)); - }, - ), + ) ], ), - ) - ], - ), - ), - ); - } - if (state is RecoverPasswordSuccess) { - return Container( - margin: const EdgeInsets.all(30), - child: Column( - mainAxisAlignment: MainAxisAlignment.center, - children: [ - Text( - 'Se ha cambiado correctamente la contraseña ' - 'de la cuenta "${state.userId}".', - textAlign: TextAlign.center, - style: Theme.of(context).textTheme.subtitle1, - ), - const SizedBox(height: 30), - GestionUhDefaultButton( - onPressed: () => Navigator.of(context).pop(), - child: const Text('Ok'), - ), - ], - ), - ); - } - return Container(); - }, + ), + ); + } + if (state is RecoverPasswordSuccess) { + return Container( + margin: const EdgeInsets.all(30), + child: Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Text( + 'Se ha cambiado correctamente la contraseña ' + 'de la cuenta "${state.userId}".', + textAlign: TextAlign.center, + style: Theme.of(context).textTheme.subtitle1, + ), + const SizedBox(height: 30), + GestionUhDefaultButton( + onPressed: () => Navigator.of(context).pop(), + child: const Text('Ok'), + ), + ], + ), + ); + } + return Container(); + }, + ), + ), + ), )); } } diff --git a/lib/src/presentation/pages/register_page.dart b/lib/src/presentation/pages/register_page.dart index 4b1f967..57cd886 100644 --- a/lib/src/presentation/pages/register_page.dart +++ b/lib/src/presentation/pages/register_page.dart @@ -8,6 +8,7 @@ import 'package:gestionuh/src/presentation/widgets/flash_helper.dart'; import 'package:gestionuh/src/utils/constants.dart'; import 'package:gestionuh/src/utils/pair.dart'; import 'package:gestionuh/src/utils/validators.dart'; +import 'package:responsive_builder/responsive_builder.dart'; class RegisterPage extends StatefulWidget { const RegisterPage({Key? key}) : super(key: key); @@ -119,117 +120,131 @@ class _RegisterPageState extends State { state is LoadInitialDataSuccess || state is LoadInitialDataInProgress || state is LoadInitialDataFailure) { - return SingleChildScrollView( - child: Padding( - padding: const EdgeInsets.only( - top: 30, bottom: 9, left: 18, right: 18), - child: Form( - key: _formKey, - autovalidateMode: AutovalidateMode.disabled, - child: Column( - mainAxisSize: MainAxisSize.min, - children: [ - Text( - 'Todos los campos son obligatorios.*', - style: Theme.of(context) - .textTheme - .headline6! - .copyWith(fontSize: 14, color: Colors.black45), - textAlign: TextAlign.center, - ), - const SizedBox( - height: 30, - ), - Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - Text( - 'Número de Carnet De Identidad', - style: headlineTextsTheme, - ), - GestionUhDefaultTextField( - hintText: '###########', - autovalidateMode: AutovalidateMode.disabled, - controller: ciController, - validator: identityNumberCIValidator, - keyboardType: TextInputType.number, - ), - ]), - const SizedBox( - height: 15, - ), - Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - Text( - 'Contraseña', - style: headlineTextsTheme, - ), - GestionUhDefaultTextField( - hintText: '********', - autovalidateMode: AutovalidateMode.disabled, - controller: passwordFirstController, - validator: safetyPasswordValidator, - keyboardType: TextInputType.visiblePassword, - borderRadius: const BorderRadius.only( - topLeft: Radius.circular(5), - bottomLeft: Radius.circular(5), - ), - ), - ]), - const SizedBox( - height: 20, - ), - Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - Text( - 'Repetir Contraseña', - style: headlineTextsTheme, - ), - GestionUhDefaultTextField( - hintText: '********', - autovalidateMode: AutovalidateMode.disabled, - controller: passwordSecondController, - validator: safetyPasswordValidator, - keyboardType: TextInputType.visiblePassword, - borderRadius: const BorderRadius.only( - topLeft: Radius.circular(5), - bottomLeft: Radius.circular(5), - ), - ), - ]), - const SizedBox( - height: 20, - ), - Text( - 'Introduzca respuesta para las preguntas de seguridad de su preferencia.', - style: Theme.of(context) - .textTheme - .headline6! - .copyWith(fontSize: 14, color: Colors.black45), - textAlign: TextAlign.center, - ), - Builder( - builder: (BuildContext context) { - final childrenQuest = []; - const length = NUMBER_OF_SECURITY_QUESTIONS_NEEDED; - for (int i = 0; i < length; i++) { - childrenQuest.add(buildQuestionZone(i)); - } - return Column( - crossAxisAlignment: CrossAxisAlignment.stretch, - children: childrenQuest, - ); - }, - ), - const SizedBox(height: 10), - GestionUhDefaultButton( - text: 'Finalizar', - onPressed: _onRegisterAction, + return Scrollbar( + child: SingleChildScrollView( + child: Center( + child: Container( + width: getValueForScreenType( + context: context, + mobile: MediaQuery.of(context).size.width, + tablet: MediaQuery.of(context).size.width * 0.5, + ), + padding: const EdgeInsets.only( + top: 30, + bottom: 9, + left: 18, + right: 18, + ), + child: Form( + key: _formKey, + autovalidateMode: AutovalidateMode.disabled, + child: Column( + mainAxisSize: MainAxisSize.min, + children: [ + Text( + 'Todos los campos son obligatorios.*', + style: Theme.of(context) + .textTheme + .headline6! + .copyWith(fontSize: 14, color: Colors.black45), + textAlign: TextAlign.center, + ), + const SizedBox( + height: 30, + ), + Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text( + 'Número de Carnet De Identidad', + style: headlineTextsTheme, + ), + GestionUhDefaultTextField( + hintText: '###########', + autovalidateMode: AutovalidateMode.disabled, + controller: ciController, + validator: identityNumberCIValidator, + keyboardType: TextInputType.number, + ), + ]), + const SizedBox( + height: 15, + ), + Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text( + 'Contraseña', + style: headlineTextsTheme, + ), + GestionUhDefaultTextField( + hintText: '********', + autovalidateMode: AutovalidateMode.disabled, + controller: passwordFirstController, + validator: safetyPasswordValidator, + keyboardType: TextInputType.visiblePassword, + borderRadius: const BorderRadius.only( + topLeft: Radius.circular(5), + bottomLeft: Radius.circular(5), + ), + ), + ]), + const SizedBox( + height: 20, + ), + Column( + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + Text( + 'Repetir Contraseña', + style: headlineTextsTheme, + ), + GestionUhDefaultTextField( + hintText: '********', + autovalidateMode: AutovalidateMode.disabled, + controller: passwordSecondController, + validator: safetyPasswordValidator, + keyboardType: TextInputType.visiblePassword, + borderRadius: const BorderRadius.only( + topLeft: Radius.circular(5), + bottomLeft: Radius.circular(5), + ), + ), + ]), + const SizedBox( + height: 20, + ), + Text( + 'Introduzca respuesta para las preguntas de seguridad de su preferencia.', + style: Theme.of(context) + .textTheme + .headline6! + .copyWith(fontSize: 14, color: Colors.black45), + textAlign: TextAlign.center, + ), + Builder( + builder: (BuildContext context) { + final childrenQuest = []; + const length = + NUMBER_OF_SECURITY_QUESTIONS_NEEDED; + for (int i = 0; i < length; i++) { + childrenQuest.add(buildQuestionZone(i)); + } + return Column( + crossAxisAlignment: CrossAxisAlignment.stretch, + children: childrenQuest, + ); + }, + ), + const SizedBox(height: 10), + GestionUhDefaultButton( + text: 'Finalizar', + onPressed: _onRegisterAction, + ), + const SizedBox(height: 30), + ], ), - const SizedBox(height: 30), - ], + ), ), ), ), diff --git a/lib/src/presentation/pages/reset_password_page.dart b/lib/src/presentation/pages/reset_password_page.dart index 26067f1..52d6a4c 100644 --- a/lib/src/presentation/pages/reset_password_page.dart +++ b/lib/src/presentation/pages/reset_password_page.dart @@ -7,6 +7,7 @@ import 'package:gestionuh/src/presentation/widgets.dart'; import 'package:gestionuh/src/presentation/widgets/bottom_sheet.dart'; import 'package:gestionuh/src/presentation/widgets/flash_helper.dart'; import 'package:gestionuh/src/utils/validators.dart'; +import 'package:responsive_builder/responsive_builder.dart'; class ResetPasswordPage extends StatefulWidget { const ResetPasswordPage({Key? key}) : super(key: key); @@ -34,6 +35,7 @@ class _ResetPasswordPageState extends State { title: const Text('Cambiar Contraseña'), centerTitle: true, ), + drawer: DefaultDrawer(), bottomSheet: const GestionUHBottomSheet(), body: BlocConsumer( listener: (context, state) { @@ -47,99 +49,108 @@ class _ResetPasswordPageState extends State { }, builder: (context, state) { return SingleChildScrollView( - child: Padding( - padding: const EdgeInsets.only( - top: 30, bottom: 9, left: 18, right: 18), - child: Column( - mainAxisSize: MainAxisSize.min, - children: [ - // Hints Area - Padding( - padding: const EdgeInsets.symmetric( - horizontal: 5.0, - vertical: 16.0, + child: Center( + child: Container( + width: getValueForScreenType( + context: context, + mobile: MediaQuery.of(context).size.width, + tablet: MediaQuery.of(context).size.width * 0.5, + ), + padding: const EdgeInsets.only( + top: 30, bottom: 9, left: 18, right: 18), + child: Column( + mainAxisSize: MainAxisSize.min, + children: [ + // Hints Area + Padding( + padding: const EdgeInsets.symmetric( + horizontal: 5.0, + vertical: 16.0, + ), + child: RichText( + text: TextSpan( + style: Theme.of(context) + .textTheme + .bodyText1! + .copyWith(height: 1.4), + children: [ + TextSpan( + text: 'Su nueva contraseña debe tener:\n', + style: Theme.of(context).textTheme.headline6, + ), + const TextSpan( + text: '(1) Más de 8 caracteres.\n', + ), + const TextSpan( + text: '(2) Al menos una minúscula.\n', + ), + const TextSpan( + text: '(3) Al menos una mayúscula.\n', + ), + const TextSpan( + text: + '(4) Al menos un caracter especial, Ej. !\$@+.\n', + ), + const TextSpan( + text: '(5) Al menos un número.\n', + ), + ]), + ), ), - child: RichText( - text: TextSpan( - style: Theme.of(context) - .textTheme - .bodyText1! - .copyWith(height: 1.4), - children: [ - TextSpan( - text: 'Su nueva contraseña debe tener:\n', - style: Theme.of(context).textTheme.headline6, - ), - const TextSpan( - text: '(1) Más de 8 caracteres.\n', - ), - const TextSpan( - text: '(2) Al menos una minúscula.\n', - ), - const TextSpan( - text: '(3) Al menos una mayúscula.\n', - ), - const TextSpan( - text: - '(4) Al menos un caracter especial, Ej. !\$@+.\n', - ), - const TextSpan( - text: '(5) Al menos un número.\n', - ), - ]), - ), - ), - // Password inputs - Form( - key: _formPasswordKey, - child: Column( - mainAxisSize: MainAxisSize.min, - children: [ - Padding( - padding: const EdgeInsets.symmetric(vertical: 8.0), - child: GestionUhDefaultTextField( - labelText: '\t\tContraseña*', - controller: _passwordFirstController, - validator: safetyPasswordValidator, - autovalidateMode: AutovalidateMode.disabled, - keyboardType: TextInputType.visiblePassword, - borderRadius: const BorderRadius.only( - topLeft: Radius.circular(5), - bottomLeft: Radius.circular(5), + // Password inputs + Form( + key: _formPasswordKey, + child: Column( + mainAxisSize: MainAxisSize.min, + children: [ + Padding( + padding: + const EdgeInsets.symmetric(vertical: 8.0), + child: GestionUhDefaultTextField( + labelText: 'Contraseña*', + controller: _passwordFirstController, + validator: safetyPasswordValidator, + autovalidateMode: AutovalidateMode.disabled, + keyboardType: TextInputType.visiblePassword, + borderRadius: const BorderRadius.only( + topLeft: Radius.circular(5), + bottomLeft: Radius.circular(5), + ), ), ), - ), - const SizedBox( - height: 10, - ), - Padding( - padding: const EdgeInsets.symmetric(vertical: 8.0), - child: GestionUhDefaultTextField( - labelText: '\t\tRepetir Contraseña*', - controller: _passwordSecondController, - validator: safetyPasswordValidator, - autovalidateMode: AutovalidateMode.disabled, - keyboardType: TextInputType.visiblePassword, - borderRadius: const BorderRadius.only( - topLeft: Radius.circular(5), - bottomLeft: Radius.circular(5), + const SizedBox( + height: 10, + ), + Padding( + padding: + const EdgeInsets.symmetric(vertical: 8.0), + child: GestionUhDefaultTextField( + labelText: 'Repetir Contraseña*', + controller: _passwordSecondController, + validator: safetyPasswordValidator, + autovalidateMode: AutovalidateMode.disabled, + keyboardType: TextInputType.visiblePassword, + borderRadius: const BorderRadius.only( + topLeft: Radius.circular(5), + bottomLeft: Radius.circular(5), + ), ), ), - ), - ], + ], + ), + ), + const SizedBox( + height: 25, + ), + GestionUhDefaultButton( + text: 'Actualizar Contraseña', + onPressed: state is ResetPasswordInProgress + ? null + : () => _resetPassword(context), ), - ), - const SizedBox( - height: 25, - ), - GestionUhDefaultButton( - text: 'Actualizar Contraseña', - onPressed: state is ResetPasswordInProgress - ? null - : () => _resetPassword(context), - ), - ], + ], + ), ), ), ); diff --git a/lib/src/presentation/widgets/drawers/default_drawer.dart b/lib/src/presentation/widgets/drawers/default_drawer.dart index 5592653..faf97bd 100644 --- a/lib/src/presentation/widgets/drawers/default_drawer.dart +++ b/lib/src/presentation/widgets/drawers/default_drawer.dart @@ -52,8 +52,12 @@ class DefaultDrawer extends Drawer { icon: Icons.security_rounded, onTap: () { Navigator.of(context) - ..pop() - ..pushNamed(RESET_PASSWORD_ROUTE_NAME); + ..popUntil( + (route) { + return !(route as MaterialPageRoute).canPop; + }, + ) + ..pushReplacementNamed(RESET_PASSWORD_ROUTE_NAME); }, ), _buildDrawerItem( @@ -78,8 +82,12 @@ class DefaultDrawer extends Drawer { icon: Icons.info_outline_rounded, onTap: () { Navigator.of(context) - ..pop() - ..pushNamed(ABOUT_ROUTE_NAME); + ..popUntil( + (route) { + return !(route as MaterialPageRoute).canPop; + }, + ) + ..pushReplacementNamed(ABOUT_ROUTE_NAME); }, ), ], diff --git a/lib/src/presentation/widgets/mail_quota_graph.dart b/lib/src/presentation/widgets/mail_quota_graph.dart index f0873e1..3874a89 100644 --- a/lib/src/presentation/widgets/mail_quota_graph.dart +++ b/lib/src/presentation/widgets/mail_quota_graph.dart @@ -50,8 +50,6 @@ class MailQuotaGraph extends StatelessWidget { child: PieChart( PieChartData( borderData: FlBorderData(show: false), - sectionsSpace: 0, - centerSpaceRadius: MediaQuery.of(context).size.width / 6, sections: data .where((x) => x.cant != 0) .map((item) => PieChartSectionData( diff --git a/lib/src/presentation/widgets/quota_graph.dart b/lib/src/presentation/widgets/quota_graph.dart index c36d46e..d0ce831 100644 --- a/lib/src/presentation/widgets/quota_graph.dart +++ b/lib/src/presentation/widgets/quota_graph.dart @@ -60,8 +60,6 @@ class QuotaGraph extends StatelessWidget { child: PieChart( PieChartData( borderData: FlBorderData(show: false), - sectionsSpace: 0, - centerSpaceRadius: MediaQuery.of(context).size.width / 6, sections: data .where((x) => x.cant != 0) .map((item) => PieChartSectionData( diff --git a/lib/src/presentation/widgets/textfields/default_textfield.dart b/lib/src/presentation/widgets/textfields/default_textfield.dart index aa2c4f9..9d08a3f 100644 --- a/lib/src/presentation/widgets/textfields/default_textfield.dart +++ b/lib/src/presentation/widgets/textfields/default_textfield.dart @@ -61,70 +61,74 @@ class GestionUhDefaultTextFieldState extends State { crossAxisAlignment: CrossAxisAlignment.start, children: [ Expanded( - child: TextFormField( - validator: widget.validator, - inputFormatters: widget.inputFormatters ?? [], - autovalidateMode: - widget.autovalidateMode ?? AutovalidateMode.onUserInteraction, - style: widget.style ?? const TextStyle(fontSize: 17), - onChanged: widget.onChanged, - onTap: widget.onTap as void Function()?, - controller: widget.controller, - keyboardType: widget.keyboardType, - textAlignVertical: TextAlignVertical.center, - textInputAction: TextInputAction.done, - textAlign: TextAlign.justify, - cursorColor: Theme.of(context).accentColor, - obscureText: _obscureText, - decoration: InputDecoration( - fillColor: Theme.of(context).cardColor, - filled: true, - contentPadding: const EdgeInsets.only(left: 10), - labelStyle: widget.labelStyle ?? - Theme.of(context) - .textTheme - .bodyText1! - .copyWith(color: Theme.of(context).primaryColor), - hintStyle: - widget.hintStyle ?? Theme.of(context).textTheme.bodyText1, - enabledBorder: OutlineInputBorder( - borderRadius: widget.borderRadius ?? - const BorderRadius.all(Radius.circular(5)), - borderSide: BorderSide( - color: Colors.grey[300]!, + child: SizedBox( + height: 40, + child: TextFormField( + validator: widget.validator, + inputFormatters: widget.inputFormatters ?? [], + autovalidateMode: + widget.autovalidateMode ?? AutovalidateMode.onUserInteraction, + style: widget.style ?? const TextStyle(fontSize: 17), + onChanged: widget.onChanged, + onTap: widget.onTap as void Function()?, + controller: widget.controller, + keyboardType: widget.keyboardType, + textAlignVertical: TextAlignVertical.center, + textInputAction: TextInputAction.done, + textAlign: TextAlign.justify, + cursorColor: Theme.of(context).accentColor, + obscureText: _obscureText, + decoration: InputDecoration( + fillColor: Theme.of(context).cardColor, + filled: true, + contentPadding: const EdgeInsets.only(left: 10), + labelStyle: widget.labelStyle ?? + Theme.of(context) + .textTheme + .bodyText1! + .copyWith(color: Theme.of(context).primaryColor), + hintStyle: + widget.hintStyle ?? Theme.of(context).textTheme.bodyText1, + enabledBorder: OutlineInputBorder( + borderRadius: widget.borderRadius ?? + const BorderRadius.all(Radius.circular(5)), + borderSide: BorderSide( + color: Colors.grey[300]!, + ), ), - ), - border: OutlineInputBorder( - borderRadius: widget.borderRadius ?? - const BorderRadius.all( - Radius.circular(5), - ), - borderSide: BorderSide( - color: Colors.grey[300]!, + border: OutlineInputBorder( + borderRadius: widget.borderRadius ?? + const BorderRadius.all( + Radius.circular(5), + ), + borderSide: BorderSide( + color: Colors.grey[300]!, + ), ), - ), - focusedBorder: OutlineInputBorder( - borderRadius: widget.borderRadius ?? - const BorderRadius.all( - Radius.circular(5), - ), - ), - errorBorder: OutlineInputBorder( - borderRadius: widget.borderRadius ?? - const BorderRadius.all( - Radius.circular(5), - ), - borderSide: BorderSide( - color: Colors.red.withOpacity(.5), + focusedBorder: OutlineInputBorder( + borderRadius: widget.borderRadius ?? + const BorderRadius.all( + Radius.circular(5), + ), + ), + errorBorder: OutlineInputBorder( + borderRadius: widget.borderRadius ?? + const BorderRadius.all( + Radius.circular(5), + ), + borderSide: BorderSide( + color: Colors.red.withOpacity(.5), + ), ), + labelText: widget.labelText, + hintText: widget.hintText, ), - labelText: widget.labelText, - hintText: widget.hintText, ), ), ), if (widget.keyboardType == TextInputType.visiblePassword) SizedBox( + height: 40, width: 40, child: Material( color: Theme.of(context).primaryColor, diff --git a/lib/src/utils/configurations/configure_nonweb.dart b/lib/src/utils/configurations/configure_nonweb.dart new file mode 100644 index 0000000..f58bb02 --- /dev/null +++ b/lib/src/utils/configurations/configure_nonweb.dart @@ -0,0 +1,3 @@ +void configureApp() { + // No-op. +} diff --git a/lib/src/utils/configurations/configure_web.dart b/lib/src/utils/configurations/configure_web.dart new file mode 100644 index 0000000..ccc1829 --- /dev/null +++ b/lib/src/utils/configurations/configure_web.dart @@ -0,0 +1,5 @@ +import 'package:flutter_web_plugins/flutter_web_plugins.dart'; + +void configureApp() { + setUrlStrategy(PathUrlStrategy()); +} diff --git a/lib/src/utils/constants/routes.dart b/lib/src/utils/constants/routes.dart index 84f8c85..c1ace61 100644 --- a/lib/src/utils/constants/routes.dart +++ b/lib/src/utils/constants/routes.dart @@ -3,6 +3,6 @@ const REGISTER_ROUTE_NAME = '/register'; const QUOTA_ROUTE_NAME = '/quota'; const PROFILE_ROUTE_NAME = '/profile'; const MAIL_ROUTE_NAME = '/mail'; -const RESET_PASSWORD_ROUTE_NAME = '/reset_password'; +const RESET_PASSWORD_ROUTE_NAME = '/reset-password'; const ABOUT_ROUTE_NAME = '/about'; -const RECOVER_PASSWORD_ROUTE_NAME = '/recover_password'; +const RECOVER_PASSWORD_ROUTE_NAME = '/recover-password'; diff --git a/pubspec.lock b/pubspec.lock index 31ab702..28303bc 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -278,7 +278,7 @@ packages: source: sdk version: "0.0.0" flutter_web_plugins: - dependency: transitive + dependency: "direct main" description: flutter source: sdk version: "0.0.0" @@ -548,6 +548,13 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "2.1.5" + responsive_builder: + dependency: "direct main" + description: + name: responsive_builder + url: "https://pub.dartlang.org" + source: hosted + version: "0.4.1" shared_preferences: dependency: "direct main" description: diff --git a/pubspec.yaml b/pubspec.yaml index fba05e7..e03a54c 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -18,9 +18,12 @@ dependencies: sdk: flutter flutter_bloc: ^7.0.0 flutter_secure_storage: ^4.1.0 + flutter_web_plugins: + sdk: flutter get_it: ^6.0.0 json_annotation: ^4.0.1 package_info_plus: ^1.0.0 + responsive_builder: ^0.4.1 shared_preferences: ^2.0.5 url_launcher: ^6.0.3 diff --git a/web/favicon.png b/web/favicon.png new file mode 100644 index 0000000000000000000000000000000000000000..8aaa46ac1ae21512746f852a42ba87e4165dfdd1 GIT binary patch literal 917 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`jKx9jP7LeL$-D$|I14-?iy0X7 zltGxWVyS%@P(fs7NJL45ua8x7ey(0(N`6wRUPW#JP&EUCO@$SZnVVXYs8ErclUHn2 zVXFjIVFhG^g!Ppaz)DK8ZIvQ?0~DO|i&7O#^-S~(l1AfjnEK zjFOT9D}DX)@^Za$W4-*MbbUihOG|wNBYh(yU7!lx;>x^|#0uTKVr7USFmqf|i<65o z3raHc^AtelCMM;Vme?vOfh>Xph&xL%(-1c06+^uR^q@XSM&D4+Kp$>4P^%3{)XKjo zGZknv$b36P8?Z_gF{nK@`XI}Z90TzwSQO}0J1!f2c(B=V`5aP@1P1a|PZ!4!3&Gl8 zTYqUsf!gYFyJnXpu0!n&N*SYAX-%d(5gVjrHJWqXQshj@!Zm{!01WsQrH~9=kTxW#6SvuapgMqt>$=j#%eyGrQzr zP{L-3gsMA^$I1&gsBAEL+vxi1*Igl=8#8`5?A-T5=z-sk46WA1IUT)AIZHx1rdUrf zVJrJn<74DDw`j)Ki#gt}mIT-Q`XRa2-jQXQoI%w`nb|XblvzK${ZzlV)m-XcwC(od z71_OEC5Bt9GEXosOXaPTYOia#R4ID2TiU~`zVMl08TV_C%DnU4^+HE>9(CE4D6?Fz oujB08i7adh9xk7*FX66dWH6F5TM;?E2b5PlUHx3vIVCg!0Dx9vYXATM literal 0 HcmV?d00001 diff --git a/web/icons/Icon-192.png b/web/icons/Icon-192.png new file mode 100644 index 0000000000000000000000000000000000000000..b749bfef07473333cf1dd31e9eed89862a5d52aa GIT binary patch literal 5292 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 literal 0 HcmV?d00001 diff --git a/web/icons/Icon-512.png b/web/icons/Icon-512.png new file mode 100644 index 0000000000000000000000000000000000000000..88cfd48dff1169879ba46840804b412fe02fefd6 GIT binary patch literal 8252 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 literal 0 HcmV?d00001 diff --git a/web/index.html b/web/index.html new file mode 100644 index 0000000..b1e01ee --- /dev/null +++ b/web/index.html @@ -0,0 +1,45 @@ + + + + + + + + + + + + + + + + + + + + gestionapp + + + + + + + + diff --git a/web/manifest.json b/web/manifest.json new file mode 100644 index 0000000..0bdb7cb --- /dev/null +++ b/web/manifest.json @@ -0,0 +1,23 @@ +{ + "name": "Gestión UH", + "short_name": "Gestión UH", + "start_url": ".", + "display": "standalone", + "background_color": "#2EAADC", + "theme_color": "#2EAADC", + "description": "Una aplicación para la gestión de variadas cosas en la UH.", + "orientation": "portrait-primary", + "prefer_related_applications": false, + "icons": [ + { + "src": "icons/Icon-192.png", + "sizes": "192x192", + "type": "image/png" + }, + { + "src": "icons/Icon-512.png", + "sizes": "512x512", + "type": "image/png" + } + ] +} \ No newline at end of file From 6f24b478ff9832d2cfb13dd1ef6f4f8c2153a928 Mon Sep 17 00:00:00 2001 From: ImgBotApp Date: Sat, 17 Apr 2021 07:38:39 +0000 Subject: [PATCH 07/59] [ImgBot] Optimize images *Total -- 1,038.95kb -> 833.18kb (19.81%) /assets/images/logo-uh.png -- 6.15kb -> 4.15kb (32.6%) /android/app/src/main/res/drawable-mdpi/splash.png -- 24.18kb -> 16.88kb (30.18%) /ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage.png -- 37.74kb -> 26.80kb (28.98%) /android/app/src/main/res/drawable-hdpi/splash.png -- 48.21kb -> 35.48kb (26.41%) /android/app/src/main/res/drawable-xhdpi/splash.png -- 67.48kb -> 50.93kb (24.52%) /ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png -- 107.49kb -> 84.60kb (21.29%) /android/app/src/main/res/drawable-xxxhdpi/splash.png -- 161.04kb -> 128.53kb (20.19%) /ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png -- 161.04kb -> 128.53kb (20.19%) /android/app/src/main/res/drawable-xxhdpi/splash.png -- 132.58kb -> 108.62kb (18.07%) /assets/images/ico.png -- 35.72kb -> 29.46kb (17.54%) /assets/images/splash2.png -- 160.35kb -> 132.79kb (17.19%) /assets/images/splash.png -- 33.68kb -> 28.83kb (14.41%) /android/app/src/main/res/mipmap-xxxhdpi/launcher_icon.png -- 11.31kb -> 10.03kb (11.32%) /ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@3x.png -- 10.52kb -> 9.37kb (10.94%) /ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-83.5x83.5@2x.png -- 9.89kb -> 8.88kb (10.22%) /ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png -- 8.93kb -> 8.12kb (9.1%) /android/app/src/main/res/mipmap-xxhdpi/launcher_icon.png -- 8.45kb -> 7.77kb (8.13%) /ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png -- 7.09kb -> 6.71kb (5.29%) /ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-60x60@2x.png -- 7.09kb -> 6.71kb (5.29%) Signed-off-by: ImgBotApp --- .../app/src/main/res/drawable-hdpi/splash.png | Bin 49367 -> 36327 bytes .../app/src/main/res/drawable-mdpi/splash.png | Bin 24762 -> 17289 bytes .../src/main/res/drawable-xhdpi/splash.png | Bin 69098 -> 52154 bytes .../src/main/res/drawable-xxhdpi/splash.png | Bin 135761 -> 111226 bytes .../src/main/res/drawable-xxxhdpi/splash.png | Bin 164909 -> 131617 bytes .../main/res/mipmap-xxhdpi/launcher_icon.png | Bin 8656 -> 7952 bytes .../main/res/mipmap-xxxhdpi/launcher_icon.png | Bin 11586 -> 10274 bytes assets/images/ico.png | Bin 36578 -> 30162 bytes assets/images/logo-uh.png | Bin 6301 -> 4247 bytes assets/images/splash.png | Bin 34490 -> 29520 bytes assets/images/splash2.png | Bin 164199 -> 135978 bytes .../AppIcon.appiconset/Icon-App-40x40@3x.png | Bin 7258 -> 6874 bytes .../AppIcon.appiconset/Icon-App-60x60@2x.png | Bin 7258 -> 6874 bytes .../AppIcon.appiconset/Icon-App-60x60@3x.png | Bin 10768 -> 9590 bytes .../AppIcon.appiconset/Icon-App-76x76@2x.png | Bin 9149 -> 8316 bytes .../Icon-App-83.5x83.5@2x.png | Bin 10125 -> 9090 bytes .../LaunchImage.imageset/LaunchImage.png | Bin 38643 -> 27443 bytes .../LaunchImage.imageset/LaunchImage@2x.png | Bin 110068 -> 86631 bytes .../LaunchImage.imageset/LaunchImage@3x.png | Bin 164909 -> 131617 bytes 19 files changed, 0 insertions(+), 0 deletions(-) diff --git a/android/app/src/main/res/drawable-hdpi/splash.png b/android/app/src/main/res/drawable-hdpi/splash.png index 2e879a75d957c19f42901c8b90b76472e7622cd8..aa75bb7a8553ec41ff17ca6eaa704409b4715410 100644 GIT binary patch literal 36327 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 A*8l(j literal 49367 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℧M-x`^#>658_L#SC?IUNP)83v(g(KF= zEFTwSWhYq4yPd}s5iVuB6$kI>F*~kRjQD44kP$OM=Pt=ykgz=Q!3R0)+M9vxej7im z9E0ncp8FK(i~gb$Tc@s)?dyb`F8mPSN~u8^CBqq6u+!TbdB_V)Zm64E#Mn#LQ&U-( zeru~jG;=gwv&IU*yh7wy~H6%W*bUri|pFjyc0|0ikE|)!t-H2YIk}*LKa^oaZgv>3_L4) z?|lq_r41KJ(G<+j;<<~D`-R{m<-f16izExIWzHA0IvMH&HUxFC*FLsE_b#ah_Ew*Z z+BH~ybkJ17NFGhIey!5SlZ#{M-w-VjEYi>`LQ$H|h`Md}R)6slEEH?achw2~`iO(< zHyn66Q@VG&qM?(hdjSS@3-)71@JImCc-3a|@vtObW{u1KL)xOQY@dg93LyWCl&RSV zL>~}lk?i7^;1q-}ef)hxv~Nf>o6F8q3v}Uza=ymrQ(qE-*@WFNBS2<4ibj zr$;{kgGC`LBSF$0t011Fu5=i}jj;6wCNo_~PW_QavNUEpTo=tet>^3s?!HWu@@hY* zR5UFgnoM%-O-)OWy;EQmp$#T(JT4c>yB%L5xcnT@>CwuTndvJB!KECN5lXdPw0gb2 zFHF~4x~pVZLK@lG${zO?(ioTEyt9_)$5Yt6r+xv5)poHK&CX9`uMLg7J0zoaA>J-? zKjbHFlsUyAO$rt!R&7S9)uPz_uopC;w6)V=7UqkuUguS{yz*9HHA&5i!Jz1!= zlICHdkHc?D##Yn1R_%u^=b2%HV(=20>dVJP>T%0-2+@!3!_Ux-f;U2~wXdPS`2N^P zTS}ug(;YFJErtkGAaK-%{WMvM%MEY~TalwFg=0+Qd!g|~Io6*G`ma{Utn?lo_4r&D zLE~5tU`&dE#)PG!{ZL*pB&ou! zyqZ%brRY>Y`-7I2`0_v$Q|>e%4r%jhjM!oPRlg}y-V5hN=!nd?Qfdt50Y?c-a$ILh6uE4XC$?4M<;m31JJXP zhR#IK`4a;@*vgu(t>lG=w|)fKeT$gxjTJrS{KFm6>?L$_MNKhd2-5-Dk_+Z#0Qv;1 zvqajR8XghOP4fPpsvg=Jz<7a#Sa;>7wh+7Xt4|l-@Do49kM!J}9D?t8OtjP>@YUuo zudbhU813F(@WPJO4i|YJ<+P`hvyi$~{+jWtJ2|PzoC8rTlQuBN{{ET5b7(5#=(Hvs z#SzZvtF&ErKZpNQMrIPABQ_nqg}^N>JAgj;>P6Gq>lYB-y#-7|nHnM4;|+m&F%(uk zDV^Ns9@>JoTQDXV$HFlNBVhe$F{Yf*d;F8v1yLf2geXut!2iMi#jvgUGc?KLe$!h@ zb-Y>Cxox!3wr4th1(zRRTVq6}6Ri=k1g9o%L5@Fa6<=D1jmR_AvE=xttCO`{90$_}lFHHg~O zc6?BNsL1~gh`LEJ$`FY-Y73lzm7vgUSF< z5#P>%ZXJ&-5L#})?BTHq9*OcK>?A#nQfa6%F`*^IvYx&9q_8hIb~&dODtpK6skz3T zqvFCZBjcsDS16p1v-YRT1G~V;Odx z;1Jx->L0M9isd^>4M7YgJ|ePkKwvvHl4DNv1-82}{KJUR!1fJsPgkLa>JGX?D}YWO zOU;_;XgH=%R$w1c`Xd1|4Cxj9l%HKntHCv!ZG*@{p^z@jAY{r^{11PLA*ORPyow$E zpnceo+%{N+(va>u7AWMD$rl^*1R9Vh;9FzJ#h>XOCBUSt0SNc#zB2!S#TE1sMMw{v#5f_(gagi@P7aXNTc-pU>^FgAPH^VLpd6*w*4)s3#Y7dzw zkCJ}hHhkO;&fzv!Z7018k>)ag=NDMH%qKh@dBg9yedHgf|Cy0C`>n9w+304S z&|(p;P)1RsD$2NjHM-Z7=)akywTb%pKHPDOz%)#iPGx&^!Pv3(SBX{|crqwK;CS+< zdaiAmRgxyVKnyvndaWpclQZ=YYwJNAcD;?h)Ty!^jpA|ReY&x^JFDAcCHP$)%Tiwe zDJiWrN4wnxC7bZ*?OL+%$8Hx4e3tZPf|-|wQ*Z`6O?R~a7i>2O+3;8#$k)_KdRFyTaxhmbC5VAqM2RyRBbxQBi zscpizFROF`oa1|bD`wxfYi}U0esW#$PExa@B7nx{dG_#$yLs4S+TelleQvz$E>RJI z+Z%LlT*Lt6mnqlTs5SnMwWq||Kz2-Mi|Cgm?6DIkypj#*Vk|pm?9%mUvl!KA26YOS zk@`)!C3p>GE5{IJY-VSqVVUi0Mwz5PQlHa?rrog zy_1=d`#WUPyQDk4{^4A?81CRcu9)rojU43jVB z4TirS9scRTX1}-mcR2x`Uig<0-NpP%&;)^w09V>^@y`ilktB9eu2T~=ToEAcQG2jO zKk3cJbN_B6(IDmG%7%|~h8D*Q*=Ln?>#%S3aoFj`eRhI_t`1to%kWw z9&<$%M=na~DVP4WgfDB8j7(ci_ZCePslmPW$8O{b4)qms!!IDdr0mQI7Jc`ts&y*e z+o zs}usph}Cw!e z2H-ki`p&Dcr>5har}vlvcynz-XWhZZ^VtPp8tAdmz&t*V{3aJs`kW-X`@}8xFmu zGj+P}Z#G0wHZ6FK$B!X2UdSsM6<&MQ5Ec5>m^T-H_Jwy*#G|j@SEnA)ibI^wQQN+( z2Omr@&mP0dgQB!l3|cI>2Y){*DfzgqE>r-{A&5@-m!Grw?K=E;TC%H(LH!}zTXt4e zGoT&Hq5;aR(qw?sIcP{#ON~dlrhiYc>lOR zop7hw8*O~i;ivwoa{2G(7^U?1;Q(~Q#a83^p~q0U2rC$c!#a+ocNFSiaSHAeh5Mr) zZ$Z--qfe{=;Vm^p*-;Idh|RaKHq)_=&~LO=Omq%0HfGq2-S?xOL^_z^ohrZ3?x?r> zJv6eC;E!u3TQPvUxvfO@jbfv1Jy?!%G5$oUv4TtWgq}E{Li*cQ^i@%QV~iX6h=X8L zxAAD+ZXkGpng30D@aU#OvIhMSE5F zL7ENHo$zjtzSI>TfRmnCMyADV5Pa&VPb|w-4IZaxrrqi7&KB%d1BTMG05;RT?n2%T9B9xnF)IN`otGnqHa;LSBjKf z?&-C<;k@4F*c)7nLlk)~wr`evc_Gi&F@y5 zVZzM&uwc@yMwx!D1V=kN=zjSh)#i}($gK=BReE{u=wl{Pq8lJ2sjeveelY4c#g54P z*r}cUFQeoJwCPzH;q}b#1u=SZlTLx93iNmSU0B`*0#Lkh$-^UVPd=Y;?B{Rsv_?f;(X#tvy}{FQluuT9;|$cFG|e-NEINxS731_ zN6>-%$$7OtsVp2ahS;y4#>sbaM*(xDn%ARAJ(Rwhm}rG*$ee;q?!HZa7g59n>{8SI z_~fmS)=EgBwWd=y%baC-PgL&!cDR-;NUFi2QwprkUC5!&0dydZW;Xa9FGuu1kAmf` zD9XEd(%=HqRJ?{c-C^G}e@Bo~%={z3_P4)g?De$THn%IG-bunzl0TuQ#*$P}; zw#jDCsySQ>8R>S*Bxiuo$Y$4nt51aTKu`ZQbL}t9oS?ovUHr z3zxwS*FP%c@G9QVEk*ZrODd|2UIfi;yh@_oFbux8;9XN$k6P5$L>_=KbFBF>ehl1+ z_ed=3j*2?0(%6*Po+<4+BW{#5p&*=94$`>Fm~M}tdT3syjUiDf`U)upn57)=Drbis zZ<9bR%w(|btUlC@+vOXp+vr+D&@(l-sUmCP3}xx_>C0at|BQM#B{?BTG#Z(CLTp?_ zeUSe??Vs&Fj14;HT;=<1-_v|TW>#rmqXHx!mkPTUC!8;(hwKi%$LeTgnUr&HU25@h z){`gi{|;F;EQdLsS85Gxj!KT$ZZB3NTCxpLxtj1fxw4Um!hX2KvD&sv(2c1U*p6|U zKBx&I51mnnn`Jmc-6-Ht3%P1yu|+Z)9AtY*zJjy2^W(O>Ov#AfU9sVER&P} zP;_aJFSM3}m=LS;qjmbgKH=OhS{QoJld&|`R0CAVGwjQDEgH-79+ABt0(AT45O zsB){;U#T@ke;c>^>7>+31t?_r${_bRF|r+OFm-T zY9iZ^Q&&K0GWsDCMm8P|WCnUrN!UJnW~w3}BX+Eej|~|Tc~74bJ@UG|Y0vAi-}{Xr z7*LU(yd7QJt4J>bst>)Nd;w-|P=O$q@NN*H=R#T6>q+%F-yIh&dOsV@*atPn(J7|H5@w>fBH#>3 z9wk)-=h`cE4nAOo<7L&h4-SpL_kr%!B4Q0~GqlevGFhY_=its;uosL+T0~hKA1wsA zi|b+dZRXVHh$opEwJzq|zX2*P54?}2@%TZQNPQMq{y_xlVWA!fdPa zJ6wFKR+loe3SFP5@6T5)u((+*Aqt|gr&_nNR2i|Y#bb=Xl8+yu3-G=>I0MJql%P`D zlb{)|f_M9KcF`Cx;yzW*6P&5E%jZnqB7wYH;nY`a36KJa;JWMpp^KFedowrUaOO~<{Yp3 zFp^^gm+9z$j3XU&82i|qy~GxRV5V%*ph@4;l=#APvf(`c$0uDr>(sOz{;UV)@mV$3 z3j1YqMQR+L~)?zH+_Fb82BGWSn#(|ucbRc<+nVE1-ljnjb1~^(^sz8 zbn*)+>3a)O>w(-))Razu3a^``F!Xp4DB*a0jP`k$RifixQyAa&Q~nYIyADQsxBN1T{-(RgG$lyzyQFOmG92f8^5#~r3i-VB8r=s#E{73#+X zjpvhGKe-WfO6eOvBR9`l;Lidl3Zw)M_O9uf$6)6|>DqV5;XB@ArW1Vi3e2!78n8Vh z&v#5JY*Ieqx%-$Q`MpXsFJDaq!XtNUMb~WVtpf?{foy)~(Xft!M81lz$`$O~yu3bH zQ$N^+10h!>Dd6*yAjOEJuy)zaA?V7 zEsz6!7W>a)xc?Ju`nL$wmHH!NuldcC0Q>-SA6W-z* zV>T3y9I3lDLi$htBLAD!{jV?5*%##hLl*YGjNytZ-`Mz#(vp7p|G?N{=e7Bx|6Pmum_8zVF#HduI0R*>mm93q4)6v!~ck z(b3VJ)lgS9priYvg^unB$B93ICkFOswtxpg&Pqyp&i3|nbbN`yi6Hg1yO%p`1~gU7 zFE8u0Usdvbe??%H4{|H)dB3sKQ0siZh*ST|{5t7V<;Un1SxXs&dmCiyPKC|TM`dIr z<;EoMw&Z`i_9=WWq^WVIE|C5Niruj1!_l`cuM;(R+JkH%XPU1)xqWo^e9D_*i;GXo~xp1z>yW#vbX z^B%Q*3RR7@bVNwszx6uMbk){a)M(au_D!x!vdFxZv9#x7W7o68^}M0BMMbEG^}60i zHEvyfF0TB=>1{Oot#;=jbA6PoB}y?E#OT{Gg-ry-i0)ctA%d`-YB=?NMffzC7^a zxSf`oG98un?=1$I1X!^RZe;3XVC#S7k(Z~Vvzx;eAJ`*@E5FPt9amsz5r6sWnFBnt zOxRDfj4q?N!D{H!i)S{+M%6P+@1un68{OEJ{83A|+Y;Kh&w#&`h zQuU}z{+AbYelHqF!5oPp@>jSu(618zkh*GYyGu{B_PyQ3;q+{!cRBKPNI*;RfMh>k z^5fPsog7D$VqU)&rY}wdpOCbU{~#te-S)Y19eq4rf-H@{*w)AOhsZ8utq$}()5ISY&XM(!1eK6E2eqvez?gbDu9%%mO)eTk(Hzxu=MOy0Itr)b$vtY`chTL8Q;X_Vya@!! z%~@yBqx@no?>j!~T2b-0tzv4`a6f)3@d>)ISKSAA++R6X zo&5GPizmnZjNS3uj-DsPY$I5fWCZmH9UZnl(u$7mF6a-sB3?Q=(owp%i2uC5jK=MO}%<87ij=iRwlfNQU{$sZvg{Q+~aFUMhUz;@XXe@z`pRiWosg(WcsHh*sgG}cW;n%MH#{IuFi+QhI zlN{a*J%7H>koG%CSvemO6$Q|VuG6?6l>T+x0M~yrP@2T+4G8LH3pEB9nIqQ zHEBZp#_DgG{^DHuoY<**S9$CHUkdxJE1Ld*rrl{kWV-(w%A*4Y{kN(4h~$dU-;6h6 zM>=4mqYGg8%Ljh50L>+SYyL0o^E(TgZGYnkbWEoLqVBg)pZ|9?{;=2aJ)4zVHNwgn zSo4hc(T72%F|N`I_Ah$lDZGy!+y#x_h!G(=pCcV5oE%Jo|4DkrY729DzTq^1u_V)A3cuZXU)e$nz z8{g}frQ4Yz_`13y5J?FEBiaB4NboHYp=!nj0z}ZH!rWOA(_9`8w<|5e*M2*0W^aM5 z3Gp`yE<>U8dxb~v zKl{N%<9L$);`2r{Z~j)fRpZ!_U7lK3jF9Q=?0>vLZshm(2)@2>;R4M%C${12XIK!! z=$=WnfAsvEN71k4@%0Sg>!XCF5`;xfkZsF{4F|1-W5>@1(KM0y~;=33V&%q_D5caoqn%C_2D+QCSdKCFN|Iw$p<`W>B+Lf zME@c!=HXe4B8(?OrbFGRq>XHkXxh-PsuN*9KOSQXZTaF0a$sTtTmcaIH5?dMVP^}a z(9)VRzS=v131p+G@Tn!%yR%dH+DM~6m~C3G)~>?~cUDM1AfMI~9dYSe(9)90=9^bHg5^|nd`X|K`==P3UqK%Qfhne zpe3IEtu>sUK!X38O;fgmU%oRC#RAsf%6i(EWoYy4|3QCtV~#DT%nCgg39VDjs|0h$ zwM||)UrDp?83NoIlRiA3qV#@qvA4z)wdygI4%xoW%sjEN<565*Uehu;KYzm?YwPN& z_(r_-FxUVBQ2~WFAf|)%g=%CVq%9xPv-YDq9N)i*)OwbdR`^Trj#TEYq^Eo9TZ-PVApXHOZwg%!z$zx+IH*g^nr{yvdL9WOd$Az z9u;=5D@wRjMtUasCB2kIQY|lXYiYnRa5 z?3tpBcchl2^mPaL$r_r^k^W*LBG{N7$}(Cme5*At92JcudEul$7e=@!{`n5wVv*xw#+bl9c!LR(o!jwUn9Y z9Awo_$^>p}Pd8&0d$WRf*K;N&F2{6)pOO+6&o3xA$z!Ob6fXbxQ*3c&AYjUElT`&7 zm>a_o$#@|cM)j%mS~aZkjHo#%_wZ6fnO4REaS`zDu}~KuHX?b+H!o)2z_rG?bhQ85 z7@CtpG~0^pMS7TvbT;khO~r(>t^1L{|CKeK607_57~2mw$&CU zZn9HgT4d7e{tiSEzj!8OQa!J4WIkSiHZ2C3!U_-!`oTC=rEqSW>)3QsU%tj%LH6lb z->&@)m(1SL7sx}<%227A-Tg3XjrZIqQdhSkhAWcBXC7W+UGS-0dEa@?q|CHX7E?|A zdZ>+fCph^weK)~gg+WSMlBe*Pbp40Q0-NTwZqjB?8=g@g@gnaC^s2@518z*2;LdO1Duc|Cdo|?o5$Q2q>knFu#s( zvDgrKuoH6xSb6Wi8${RDjnvwFPe)>G08}91(4(-}XblEhDzKD6#EmW6QA{V$j}O z9UUu%K^EA_Mt@n0Wnu-m(eUdfvBH$s$-DMz`n0KN0nYwb;pr&@8L#zp4FRzUTV7$T z3;6lbIPf#DmIJE_9eVUK8(YSkH;>5u1+iOOUtMuG2Ko&|Y?^PR!BzmFY{r_)!JZ+Y zxmmjudoG0_b>xtvb)%nzkWRDn=xH|L8@#+XZ)BoSr~<%P#rR1@c1)msUxy9YiyD1X zpBd9gVx3aS!=@Nw>B^vOQqvDI3?bOYM$su!cgK?wc+EO$UkL(&{Yf7Is2NB`UI0I8 z!r%>?YDu?@OJn|kv=lGx4G)N=?+RW|x6awlPzKTo1MDyaoPB2Zerzv(r@XKx0?0br zJr(M683*Br>iviYV+$BCLq|`$W1pw4U5-mQt_PaiJPMJ`mc0*zDzV{fsprEu6IT?KLi|sMzt4 z3l7^GxJ`@AR|e4z6G;wR5D?>(&(_I6!>{N=&OaiBwfh21u(Igtj_n)Z2Y}@v*zXzz z3dP7#JCZP8354rK|EFp3ZIFI`x;38ehzf}?bS@ z+Y2IumYq3mlD1aiV3x$1X_e{ujX|aZeXyXNcNNNDpj)KbWgnl6Y3S2Z$yEzCz2yk5 zW$LS@Wy^q9*63j!aA$fdps#w-aPwkb1Hjd+fuOMhY{}GtkYNCJ+b3DVFt2EdbCVot zYs>ID&4G%M)j6&3=9kzBn!j#Q1^t1iVgWkZ(xrXRH0h}|?iRa)MJSw@-Q00!`;Tq( zm(H-rw-xj5O~utRilyYKC7c*5T>wvB81n$_Z}mwB-QC>qg4Gy;x6;;Hrg7gBhvB+; z@{@01{CkTyF-h#8DsgGAZ{p{IA7XQmDR^deQqGFo4Fe~=5qAz6FTqy^<&a5V#RjW7 z;F4sgZNgCA+Zk4D5aES_!pL!kAK9;8%Z4174*8T0^+yo+o!z%rUZ3zaE^Rzr8v#ei z`Wlcvpsdh@+2@<6b<$A-Y|TnXjO6E(D{tn_9KA7K!=JgaDNu-sNk_-0OodxRAt6{39JP(*Q-Zfc`ek&8`K-?%AYG7!%y8L~wp)Hcpy4mL^VTiVppv>REA8s#zwLgu2N zb%vBRB`v@h0eD&00R5RCNLl#j*h~C9C1v6PMqsjPQW8_JDHhxx{0M^_HYN65DcO-- zwe-1U>n&mWym?}DDk^H^O3wwA){yd1%Qd$S30LDWtU+_uH5sRG`x_G@BTfkFAQMJP zMy6Bc&1Hm@CPKm2An)Xm)BV7m)zMOugrE+{GYDih>U>*%J&^dixqZzl3VyGS5H1e# zEykrXUj7D7r-V?OpFfxFkbuNt6oPi&%I&zq7AMJ|9fe@={%sMn_onqqK(epF^mzwx zR3M3$w>qbNgnm2KzvEj@cnWvV(9n>8|J>WBYu)JCS-X5H_6AZLF~5G5I9ZA$Od3QY zKd6KHq_XQn8~8ukiDt{CmZf`8dCXlUyV|rQf;SpfQLPx86@AbnG8qQ=@1Y8_{AMw) zBo5fMio;+t`)fPy7XAdi@}=_3z?zR#22MD6<0gVU$Ye1a;Of2O6erSr^C3#ano`?T zQftF`u-exCQyxFA3ql#YEo=k%h_meY%%p}f=Et_nIrQkYgm0kccV{PqOIM~V#3rvI=zlOrhtrwQqIx)LD{hrtYN*UHvg7oZx7ihwMC%*W#WlJD)x?C4cT% zt(yW*I=S!6wh*a(nD{+I6(W^lerx%fiLvoe<4B-`9cN<{-0lIp{k}%6l7&}b&;?gl zEq9cutB2Q`Ln>}v{B$|o{HnCm#>^UX!QtF__ioRxlbr35ffdIjkC?Lzit(8~s<-sb zv=Kqon4>z6g&h+8Lz%J!#apDMx=Jl>S@cN_Ay=wNtffQd7D$DwI^Q5aALb#>ec?q2 zFAD3R9@PvdMT;2@br681Z&P?F3$<$(+auHqMmdG->P~xQJ{Z!Wnu`(>)CQ5!^(+$o zw-$JJvplGKO--}tzSUJs4l)MzULSm71YX|aqSq5_oS0&bjJ9gB3|>=C6nE7xnHnVy zkHKRO%Mw`h5&kOE2k=j0)?Oky;?jE$px!lo9i^Vm!@A>IdREM4Tsn?}^><*ab4>wA z#JLY7?Yf&qiwYIewS3UwA?!8pB zF+OqtcT6^J-0T8YFk_Kn4K&wdYcM)*w%fk>vdIs-@X)+Bq>1x{OO~Xn2Oq|FloL00 zZGwum5u`WncY0lq!Hgm9!H&)lmqflah%xH&rZ(cI`s*B{A{~BaDP*!BbZ9Vbp}N=g zIne=9vck{eGUst|&XYaE8!3q-e9jV{dQ{&8jH!3SF{VJfh%_6q?J#;^B05jBgALcU z8!VIwji$(thN%%QF`tqkdDwWjt$JMvWGsfR@9pe<I5Qxv%3+}0G zN0azY8J8B6mm5n=+EtQ2<`W143vU>9!sR$b+#`^3_uh@WLD9gfw2Ul`@b%_HYy*qs zTUDl#zGni|(H0xegrG?z`=lFZfTS8Fi>deW8e&Cs0rY~XeWa*HBjSceh zZAnSDjanee??E0pVDw2TwqmD0UJ97W>;*>#G73LR~*nVB5Mr8mVk z)4hfpd|iQvSVl}+eW)%Yb^W?k-bpK9A&FsGfNS#Fb-^`5s-dZ>Ozcd-%7|-2-iLeD zy%D|_nG*=b2V}yKc!ipD@LoPpU2(-Ruw7RtUB3M`+lNP3=z6y97**;)wfW-Lw1U28 zQ%z|reGykl%KlhHQ#sPbxO>o>asXo>)TWGb<~gPlPofh@Bw zcwxS!Gq5$8OVHfW&pSEU9PD~`SWIFedP7m&O^Z}@S5TF#5w?Y;9KyBG`SA1}$Awq@ zSV0qEoYQ^JsU}-Rtr9%xtM);HNojFASKCv0hk*f#1RIsc?w@#Tyzr8u?en5 zq6WSD+kYa44Y^#_XYOrtyd8VRS`PK|tCa0HHA&w#wK8?Dw zu(4>^Bji%Qie zQ$+LI<*72ch#OC#;0#>ydcfjMBq>zjpPy!n=T;Psa}#HuoVfiKF|*odVPzGZN=%#D zO>4{`O*Ffgs*$R=#rQ?_Nd%xm6YgJ%=yyO5Ai*RUr~o_RIq_xNsqG0ojQ(@zcnPv8 zcAqrSL_QtIv(>#ao^N)VtrxJHtE=mRfKJxNQyj^%%ITgr!TIqT#smUtqi4(o{AV=; z1kP4)umMMATd9+bWFI{UbpV0(zA6`&Al~=$_Laba)U_=S-e4m*gi1|LuB$&Zh*^Oy zEG$UWQ<2)_yLl%uA%_iZ=XEosg>eI;s}P-v;^IW&(&F_$2br3RksaI71$A|%LsxfN z>6ti(y}!Ja!|l!E@ukCr>52rjMYiuM*eq@>0#W_5R~&1MOhxXVQ+%JDsDE4^hP^aU!WdavR%7}VtKwP^ z>KEOwDd-pNlDRRM_=z7p(o0}20A+c;s#UWFD8MbI+g@d>9Zp$Zx%07F3nHIKzOtv8 zUYq%d2lxzADZ*xlg9-BYk+I*IOA#!}vI4FlOWp-;Z6v5Yp zDta9veA~zqTV7@QRl=8)4ZU=k0SHt_>Jb}#sG4GA@L3=i#yvFpLP~bzCz`pGzk$v|jyp(a$XDaoN5rxw1cWd6ku~J)Q8G0E_e&57I*1z1f)}#BD1IImRKD83MLPSbkq}6{@vNyi3XGg0qh85#fLngb}5y8tq5IF@h5rb)}F&P2o0T?pF`*_VmrQQz?Nk84EgFH0u}56bKOH%Wfp_dI_#|9 zje(2z4ob=?2%&tS600W*qqYMh99ZWJQ8!u{tLD})ch%dzlcTflS z6ZvohcB0gkBHeQQv-VfO7eULqAkip7y)5QqGlDgSyds@N-o`Qz%{XOJ#u zSh`fcncLK<-*b^7%6x8vca4k9x>XWsqpz7R0(^!^_%&`ACs&3%Xj_hPkR-*5BoopM z_^d@r4Vvj`zKujoCa^iaj!L_kTY_*zkJ^G#kov$Tt-ql#U3OtVr>j~0^ayTKN`LI@ zg-U8?F4?53z*T*YHfKjot)!$NB12**b!q?Z`E@up`TjutpGg~VtZRpz8U2=j{e?BtFkMU;6!iZCvP%5Fjv4^E!mYzdsUCS+j^3OK1PL))8{DQ#~p7hlMl9mCjs{?R|GBW?56+^hV>K z=2r)q%spj88}C3$c>g#?I5~4qHiZ=Q>9Sfm-g% zcVE=#nP|=JrLUD5$Y9$0P^RW=&SQg2GYm^GmJ%P?GN`)gyyr+r&^V-a#{tap6AHj*m$q^dM*-58x+1@LtyW$1lLnB^ zDId5M?du(dXouP(q-Qm8<%9E9vKfZ7hg@QFBjgzz-1zz)*s8dX=p%`yNrk~*UbuQ! zQ3F&-DnyfMf(3^o>0z-Ox4b3@V)A!?py9?xcH<2&A_GgCzdp6_jfgxM1VEv~ z8M>i^v=6)Xj&j`sFx4+hTZS}Viet&`O2>f|Nnzo5EBDft4ecQ`81eN8{UFnyVp$<5 zns%Cc@UYz{@cVRy1Jg8-E#DtrW4s0wK%KWzC_2#7zq%%^cFQLNQ109Q(L29B!bAcd z@{CRs?`cw~Pk$XYp6R=#EyFNaP!mx-c@NUksx9ovF=8f0DQnJIoYtz;guy-;t^S zI-mRT1FefN!K_{dZ~qoVK2Ut#<*XzX40Nz)tq!7_n!+Mk0N1mZwX#`TYCsee1ljQJ z)*~R0p^NjU?hEQ5gD^<3tRZxMer6=gp%CfJo=-GN>X&AcyWs*y1d!;WqU1;xi$cV? zrW3g%=>xDvgwESC=+m00NEY+s1P$5oAW*>*O8(}Xus{0&uRn<8GX`N~QKbEk>Ecpr z`qs_yG!g#uv8ID3oexXCne6%=H$Vl%H1oeH%kuRD-8yWr+^+AVw+Q#Q2+D~fzUclhQ$vR4weR1*ml*W^_VzYd zE%4xlV%(Uy$`Cvn^hg(ug z3j6&NHwa#JZ0gba*5pYME*pkxKv5@{Rd47CVtBwwT)>3-S&_12H`lUjhZe(?nU#*c zYJaB8R&t!WP{HNLS_T}{P^-WRvPoV%v(~&>-uC?1y?4_aXE`LLIhuka*8osWr}`jX z#J}!DQH=k6Oh6!R;B#tt6aaR~xty+QmaS?kg6{Y??$7TIF8Np|Y#P*hFvvml^k(24 zgM;D=8;$-eH8zU?_|HIZ)8ONr#IgP12q#GP2x)awG~q9C-M?b7JDoWTDxej$-SxHv z^Y;j#?24X_@DOR4rRY#+*;?Fi&2368y9I~0$Zg^k9P{g_5gQ7@c8B|XMG}6K^$6+A z2Y8L^^i?S-TwYFojD5NpR>m8@M>t1nKy244z&4n{o`(*+)rYG)6hn!C$h9EcK&zmD zz_QfFM7{SaZXm{rFn$i`X8u<%pX^dF0 z@8SuJrqhI^0S5a+iyWgZq8-EmJS2YAN%i>-(7lBsh+vo91S@qDCmL1?CI$ok`7OL)#|)3Z$*hK4nHOu`rRQc^y>F2gHM2Vx@|_vEGz5!goW z>-!NdU$?e=*mj&g#WI#oP<~8=q+tSgAdfLnVlk4>_`8)6Qn0FVt3i{QlluW%ugy!7 z%d$Ri4*$G)vmn>Bpd5doqT>;9WyJEcH_4?zUQ6bXjHfPBtPHchcKP?D6%;s>EF>ji z$&XA*kB2T5cu+3-^=8%!FY0Fh%!&Do>xf<%^RIjKJ-5y5va-JxVN{d2v`nX^t$m@R zgx|1GX0L!<-@Gpd&TxujdHG3D>vl&ml>pmz1J1V2Cwvt$efNdC%@0tT9ErK3gnB>; zl{sCMM-26p;Ygx6JeZ!o%|799igK4-!R;AwfK`N0Y}pLX4(T#`{#>Q2ehtG$K*Cks zCgyR%BcTeb3AWTZ>Lk$-q*5s`pQyXqM6|Ll_ZQ`%KTkXBz!=dQ-e$#ZK24=C8kGi^ zV@X7*1_gGEoFxc=AUm?F9)b$c0oja!HjRF(I78-AMDVr@E}^3H#_l|@Hed3g35l|( zm659o+1dZRlDboc=z1Qy-nPHOHqr!(iK*QVf?$u(Gt@i;?W|7X6KvNo72#?$Dxi`g zN2MeR*c?J52E{HC`J*BH{Keam#tB>?PT^&JP=%$2zHktrn2LB)FcCKQNoQ!IqvIx} z6uZ3a&7H!DWOMePp8z@zPk5{s^P*6JuNbegqj$+8@WJmAjh(vIQ=UKTQne;c!R%vRa~+cXAiajM?M91 z#pA(KA^V&|Gu)x_(~&|z&;^Ele+Gvphn`yz35B)dN!q%)+bfssl6GWiN0}a5FPDX| zkt#oj;O2X1hbP>dX|a*iX_LGK1F7iyYzW43T?xK4`GSde89Ev|@M7IS4KvqyOH&(#d~&+qiZ2+idj|{^$ZMLsGL4K)6^$wYv$7ORw)aG)`*TY4($33-F9}>g{WE`hG1NaNrIiuA)(41%pRW17@CbPmY&o z5j%iGJ&XEx7X(ke7Pe}5Y~TL&X*gvXvr})nk>x+-8*1}w#C3?{;W=rwBh#xp?+^9C z`ple^CCvmH58+S#+a~Ih{v8`BTq(bJw~>qv`?>%gXyhCKA&p^XKuZa5&4b0-1XyZ~ ziFGilvz3z)R-Z9ull|*#j28$ZWnyGB-=Q;-T}`e)TOnYn-LUIA$T$5HO5mf(BJfA7uEsI=^gl@S@sVw_SZajFX^QNIpuICEY* ztj+AS)UwQ@-DkuhZi1{)b#W-iRv)9yG8XYgrKL#)homOLYshegpS>flX`}CZ%Am%^x;y7jn>Qmk%7<{#Da zsk%gwmY0gmzV{XKZ)!z%Cv(0SxrBE3YzvF7(*7|5PA-)v_ewi|r}qSti>*NPx|Y{^ z(wo-BiV=7bYv1jVk4jdNtSl)C)T#FI)gu1{+&s-AbZ|et-+nL*+K^y4HPQIpJDKCQ|AHw48T36`yhi9* z5_*@=Y;med^1Wpa7Wob#Kl}BZyC~O@M!aKj19`g9VF6pFAD{jZ>raksU|6`4i)gjL za{HeQ&Dl5YtlLFPey*Qd|E8s+axbWqx`m;iRk?RdWPns~cpCcX&za(EM0kucFrd^igQ3?{nZY_U;%k-V>Iyug_2uOTcqN^EDK08Zs3ge7vyGfTh^yZe6=uDzq%& z((Gai=~^Mepdu+t1sw>+!?$`SZq##v^f1>S2i|PuT%gyt14oBHl~LVeb8=tJMZq_^ zFnxKSnF??Ym`E&;uWq=uW&3ho>)AWxxK3JN={G<8EM)8l?RXtd^vs^Q98KQ)@STaj zI89ji_)7vza%rP3K~YDid!p&OW;rmIg`COA#srfgLy4I}p-8~$@OZQQ2DJf`ApW7v zpHgaCTJdSkUACYV|L#U5cAI6a*~Od^WKQnJcaOGZT)#^US5=nRl2-#?l;@dr-%ZD6 zaTTOsNHLBX0xA&vGUqbETT~CE;MV1-qB;It3Fh>j37oU3q<^ zKUuL!juw##OK)R&@;aLl{jM;w^4gq)+~wiT&sHBRY_R$a7q?scyG`z}V?j1(nH_mA z@to3jb{?af945)@8~GlX}Kue!Ud?o+?CjSJ)>EEcCW3-=D^oU(`9i# z$%ISMS2x{@K-{#4R_rt&Sm5C$v}l+S%d_y&YEL_D-&-h z!na;WHZo=jV$*Bksaxb1RiphMvpwXtrq&Zw?ui?-%lR>2JL^ev!b?k()YVitv3;r_En-k~Ruam}oRp$WzQl=#8 z#!Z_HV->d0N1s6Uq7Ai&;<|ioq1C=%r?#_AhlG1DU1SQ)U3Vp z>K=BdL1D+JxgXoxyCUlHlrO3cTAtJ(B64t`$Sa^|o2pn-E`Bj|$~S7V+VEJff;BGI z@(QY`smp70jI+P}m|#t@WWOyao1kFbfVdZe5kZBl-cPS$Jnh>77~6A%1x@Y_@4vNV zVCYOX*$d^eM*u?DXf#r0{o$Kd)Vb3;gqTQ^s0qV7%MtV^a$BQ*{}?x3Qe1 z*T7;hfAOWBruu_}u=;FeKI91=!)aS|x@9HyU7GdR4W~<^BRru$;g!u-7JCt-u3OY}+XF9v{aT^;IGASvqUxdAL8fa!hzLNE0 z$gcSjqhrAl3N7@;c6ND#gX^u+n^(~o1CWkt-a(_%XI-AoA>xS4L9zd*G5i{1C`aC| z4(~nYXHh+g{mGSLI7u^X{(SdF4}@J{vKRMrqCkh>8~;Zwal$4H9hP6 z-31(bK_+G51+G}edORKHhRU0zw=d8yhXSfua9GH_a%S&Anh_R=xVb~DU6)vn+5U)y2uiM= zKlWWyGeRJgSNEnrQ49jhi#QeD^tHm8Jw4TA1_;v0MQ;q1pk;uj@m7%sgo2z`iYpg{ zhc;Ws$1U}*2G=6i9Y>aVr`QW7Vr{w0Em}w~H+b^3yA6*f6&JnR&1sQDcu>D*Rc2xU z*{k3LAC<0CU)BOOsb%6u3frIfAaA&qFMHfc2V|D=?Q?`#ku4#xRsITxJM1eq^;+I3 z*Go5cTw0dMwfnnyz29@MXj|0yc7DS2Cl5e-6VfqLJtnK8qxEZNvr9|xvnd(Z89!;n zr#D!Vx~x1FGHlTchP}X$?TT)XOgkBDES%?-93}(Fnx1u`iSTCcy96;YGz?IyTMTJJ zOf4~@eO}P>IX02N|3;gENZ$UC5Pd3!O>G&(9BdHsSg3S>RcNeg?ZMz$bgWax-{$a0fi$P4C?n9zoV^i-r$Fpb2c|&fn~uU&So!c zx9fqU!4lR}os?`tY8muz@cFp^WCf$H*(@KpAnBaOCXrMC*R)~luk_xnu;Hd{J!>@b z=9un(4!TD5CgbUk>)6aSAeJtf1@j86Iqi&D`th}Om`Hp=O+sgLmG;l6D z=yAQ?n+1ks1(p!%ANIsI+p~JDUScLOUwM?+Y->%S`BcZvg0L&{xZuprhp%`~h20MB zT-;1GSm56<$Ead$n)b97UKxN=43FM>gCTV5j5ADq?Oc=bOBBag+FU*HQLVd%lHYx9 z;T2H!O9|nU_gzQ_@0<$Ldn;t*k$>fcS^{r#zh?vBNlBK@nruDullyZi-KEAN{QQkT zuGEheA!QAtc8nG#rkGx5%6i|U;2W^lp|>V;FF*WA5Glx>K9d2Wr7Sw~-()N+D$X6v zDJ!!~fAuB^w%z64e@DcHCpBd$P{)+A)awL8X_?#!;5sfaDE48rUPL#ffc*VHr(YRI zIs=1^%cTFjL0g9aE`zUM{@31VcQF6Hy7^x>H2=eGRVQ6goa(k2N7^WXNMY0I?&s&edK*4Tdnmw#RB z{avE}EtC^*fOf}W!-W633TqcLguY*)_V@1mU!c>L1I~5IA{SA@+tqBPGe{_HO z|9zl)T~x+vpSpN4;$ts>zglq9N5$0Vp{Z_jqc<1L00Isg2jGt$$l7~8f_XVZoqXu@eC^zv z?XM_%y4yN?)Fg^p0H0m^`?H4*-u7P3k9?dxJ?PXlbo8#+`8vD#2swLP@itJquMNEi zTmz?L`TJ{kTMu7HTYDd0F9)w*pKBvtb^#wS{PP3PhYoIZG*XKP8cM($It>+FLV72!fP~C30VU~6J-Wefs+P4WsC`q(b=veRH(`h)h%eZ>xHapy8B z#SmLz8)Ix{V_}&!?{JH-up!U#30Q~f_-k-|SFnF1CPtW9eAd|i>q~bk>IOw@t1v}1u{$?uiTh|2k zPK-ImL-X*nI=kwc`C44MMHJhHp87jmdv#0vsaksP&wu_D8r8}>-j`yg4&ZvqTuT##&y-OGHSY$cK+WYstR=w24 zii0D=d7Bi_t?7z1{2I>k=_2ynL?eg-!*9N&(^(_((x;z->N->A`^HCTf>`eThLllW z5}!1kPoD-43d=*sv8g2WSe8N9fi0TxWz#}Si_7!#&8GZlH0UnD!ELgyGzSFIKaqMb zs`?dUe-S(BiScds30UW|>#myOF4c!$zBr8Z>B=2v6KA#<46huXl87e!v3rx6&b9j9 z{p|4Rdm%h*`muccXb0b?S>;sL-vX@f1lx^yXX7UZt=fcBc#9h%;@wUMBEtrGhX*)0 z*|iAnfqW#sv@HVCa7w<44H_Z%KW*e6k)C0KcD}>FAQ1uo|ECE#HY^7IVPiJ}T3)M* z`yjKxW6b}ahMtaTfdvGjN*M(x`+v7=H!(D60MEKn->fArJ; z)bl_3x5Lgt0pw$|bAFx!*8S=23@Z>HJt zVq(3oe_YD3I+fqH_~_{;K-fF*PHmQo#(}Z8VYE48M)#KGN{EFZ{v81o19rR^Ae6+v zu$-FaO9o#2R--Dd6#pdKi||`F@Q9P+6Y0Z6m5jm z#HRLY*l`ET%?A3y0_Lwh=Yu5Zqorj(beh0_NEyD;?!e~R2N>^ABSIf&^`SYBwWSuU|}G@s2L zOx#%O40;R(+gjd$k~@z*@X|gZ_{PxXh<(T5xUIn?J{??A)(D}+%U#nAyy_BhrpHr{(bTr7?2%rND~jN#Y$0$=P=$(3#5z*z*`=M#U>!I$&d0EyS9SW341WZ6cA-uukb-8HmC7fg2KX2R{Fa6@3J+cLMQUn=HZS!)(bm4i>cp^L^(jdz$`pwQw8y!TMjktb-xa84Vo*kA{|W)T9t9T6l()hpn5o-%w{a*Bt+SlQVRyRE7Q~No7)W@+g0o%k2m-&tbh0IeRqQw5AlYX-_qY*&pd^~c?&qB;WH=1 zwHa!bySGM!^K&>mzmGA+Hs)=c!tK|W&$a2of+nDqUux}Dt}ndQ6L@W5ITsi`qDTz4 z^Xg`~aA)|`eKcxk$E>%f=UCh1bmM2&LDS7)?A=Xspr1aePd`A-$3$N1h@X*NH_RG; z6saXen&2m(OSiKn&O>_nB&tMS+Y09O^Im%Ji)!BGm-HHXYV5}nm~V-oB199ydBkDCS=rtF8l9tHN*9(h;Z5nkH=Mn z>iTQXwgp*J_#8u?vg*Fegg0y@SZ+36-kQGz&t%Ea_j6!kU&JPGTlW4Sel1>SlS=g( zW%q&KZp9}U!UR5+aZ!&a?#_kK|T{44TPkuXLyw9dvL!}@*J6Pd4 zU6d?AuJ)q-&!ziX$H^&TI+2!vL8|Mwo49l=tM&XfNPrkxlP-AX1m-)r`MGai`O^-4 z?c60NB`X_Iy$pMG;x@CtBdzx{O`|x6IX0KGW+0ATfChdNtDS>e(<~Ry44*3IX3@ZS z-bcB!JDwAa4rN3pO?W^L7x>(^;)T1;52~vpD23d=8+nO9sZm5HRW|6}(f;R~8nceu z${RoF>x>kp3sp285K_>wkB(v#yY@v@my2^(PwRWM&(OSJZM->;E?R`y`42tGHeRfE zb-u3xF`wGs@_{#oB{06$hbj@g6kNGfdd{q7A!4v{`kIo8^L5Z|4~z z!ah}GMRwB7N=4E=zrhIfm?iwflg1hcQBW_`CNARmPYir*?~vMJIPR7(kOy zk^HNx&z&0mS(6ln?PWGCVD`r?#_FJ9W?@M;l+_1GNhy=;+7N1S{jh69G4J5rNg#M5 zxU_iFJQ>z-+Gm!lU1_0MoZB1W=P=YhF0n7iZW9S7iJgj$^tD;`#kvdo-2T0kz*& zyM@e0O45k$$%9#L6@_&h-V7fontoEkj>68kCB^Q%`Pt73uRo{|bmNzM!1dmD3XBHzvswX)i=*UZaRgCw|CHA6t&1 zVtioUcbJ4^yg3^iMlS>|ocWw~QkR`;zMH2$JK}?D9P!gWcRUg;et$L0)V_bbZ7Vqe@d!b)kpjEGJV>{Vr z4I}gQUh8G3U8w_+&m9SO#oV)>;ya8RWxo5`a_6`4&5jCSk^akzvfpHA z>6*mVYOQjUo+k=|=7OwbN6RM784O!tvcEX7Q|cO&em-^+pnS_VVZL;4)Vt-3r}91y zKCsPv`NcZQ%k`}6>;(Da0-nl%{G4|V8#wC|7V;Fua#4KEwV_|FE>pzIHdrrZ2p5~K z<8oQ^V^fEUXRC)f9URZL(#-9Amb{nIccP8Mx-vu>9BqUeH2F_>*>tK@=PJw-kF1q) z9?#dFnO3`LkaDK*TN`M{OkAy{4*b#3C4kAquHFp9O6D2NoNW#Ds?fab67im%))=smaCVnQIMHXZB zCaTGXK`8jyz~D36i9IBLCv9KoV3kaaC+i*hh`?==HoABythKMZ$ z<}@PYu!m))!2^k+q}b0ri&Q~*LA}CPnFuV`GmFc^#ca35`pXhyJrU?D6w%|@dwf5Q zapdBTtIQ`%o1w$+wzd!WeQH^>D-?xqXBw{9hz1#Hdj{)=`?{W9MhZ_q&Oh(6>3kT-#nm?PSf5eRtZ{eW$zHhH?m3tridRomLm zPo=T`V0)o}8`Y8gNMG-RaP?919jg%>XW|>?&E}jX6M1Md^&i=I4lN!lP0}*NKU{)* zjg+uS?Dx2BgjhppLcvc9Po2efh}#XK*6AC-rrUW=xyl?C6P6LG6@R83no(;@XZe5) zSqa7;%a$WAZy#1m5%vmBEOR*^i|0q!Vod53YCF5t9dRmG>DGo-Jo%yO560zkruBdL zgnnN6lC9pQR&F}i@Q~uWwBLi^jc#zYk;2_|K7wIVH`i~JkBXv10x9ZYvC{X8#6U_( zQlZ$+^YhQpP*-x2gcz7fls%(z%@5D!O%JJIJBU#lU_GiTOYPUYY*wo~OK*oEcd}#x zQ*IagS{Yt>$?6l%#GEg!)n04b)~rgbBQWY-qf#41B(2=jA9NtU*dJ&&SD4uc4I~T9 zTQ5OwPhj?Vs?emzEQ+NL#`+b{HHx0!g!20qIo()A+xr{5EuKx;rlFyGpyYTA54x`* zEnsh)zWpy)iYCr^-m&BMRrM7+4{5wPB#6;D~1NlpMC-{L5Y#=uSd7Ve8>r5;d)-@ zx;`2dNCt3Kzw}>Z_4rV1d3kQ8zgMrqXGWT!j_ZF5e5Ll#{xGXx%_J>L8A5tr1ldYg zcfqTAj3|G;pv=*-l30q!{C#uKVBYkr;lZ6Sjojl5<0UZTMpiB{t=_!Cqc+;_UiV65 zEVRErCAg3sT79~)?9ZO(80e;AnzUY3B=?~i-niZ0UdB75xG0 zBAFP;+q|&1a))C@k4xYVEg8hW<9mEa_gp_$OO>)<72Q_hhL~M?`ogF*RAF|kD1906 z`|2cfc*Sup1x9P=&Ch^Y%(m-_Udl8!l4>^&6jvtw%ax~JnY^3d5dQL7jSY|AWJgwE z6M6P|#-css8F6!THB`6IF8Vwv!*)76H!WDZ8rA+C5;{kiPK~T-Y##FZxPJ;;qJJNY ze|&%XEbmq6g^hc11H51pCE|BvD0#$QeW*d-;{%s@9(wdgdje+;9$R-g#P8|cak-@c zQDq~E-RAdU!deXsGgB@q8Q@DIJ2cU>(B_(&x@OCcA5K4AO#VhFq2ku6YiI@|tgRUDRSX|Qu1t&prEls_G zenfGoLDY;`zy@{V8nvG^*Ld*aPd){R<`X<@p}Dk6-np3TG;;n3aP`C zt?sYhE)oneB(?v*4vjT%_247d!F;L zPu4!$kQ6!jgYR*)pM0p;^EP-Npv!vGXw*yERS2kj4k)U_j+>2npT9BQL213nAeJ>W zk!L8-vY5+PO`$gUj!(`A_%9li(2a0UGh$q_HbSUYg;^SKCXst zOR^5`E-R3U1&s!_!D$|nd`1}4i_A?N^+Ath%XgdkWT6RPm4<*ey zZ1jAtHpV8Tj4CK#u9nNdQp>k|Y*fFVeQlNot(<-q8mY$8FCFjyd~~HSiraEZbErA1 zlVz-6c96pcrIT&E7Z@Y2LqOmQ$HgUureEJvy>b6V!bBI#svmWS zGL3igNUxtSzBxa4dco-)wJ=qdm6?+zQ@Ylf1z4lU8N!`M*2D$aEbm*6dOQ1w7#!<>DO81s^)1*eWAEB z6>za~MUC*i^142E&NrOwi;jqii4oGvFpW7EW8xQs@@Q{4*+|V zp2x$p#z16iVUc24lG~jEy=J>w@w;5?`{VV^;_agqwl+dxG~D3MAyM7HVra$jS4c=q z;4LbQS-0Y?$5NHG&SKyB&gf#k8^- zKm`rAocgczmbY8|u(fR-DnfqoyX+e+Hn|QWmOPHYa;uk!X#<&j^+IMisDKE1yc=r( zxD3^{uA#=YI<}U(&!D%;LV`Js9+&q~o*MNoTmGvd6auHJ8dQfjr+@b4`lB3112&2x zN;zuGcf%&V+9TQ{7-KzRY^NC*T~#0I5$1RX;AXq!k*ejXGOU-X9W&&}rwl_7=MJ?=|eH#~BUubd=Af;Xx zhLvnK0PYvFnMA!OC;NNbu_kwLz9_LH`Ql(6&ZAdmB$Wck&?N@W3`Rg1-hJ6RilW*h7s@-Jqg6U9JxelKWsvWa~y}JH~{h3 zQrB4T;_Y!=_Oi5SA0HM>MAw*)C%!y@G5b9r2*b;beN7|GsxJ{txqgxKuDbzH6oIE1 zp~5Cta}A|u?$GX`obBB!3&#rglu2Q&%`Wo98Ws(DI?d8GrrNqO!0jFp&9HhHOQm$< za)a=YVAbt;F_=g2)_d(|lH5$5E05*W%NK7`o9FMe#KP|zqUH7KoT6(Tw`uya_EjZ* zI|Xc%kn=q&Kauytuc!9@Q}g=$=SPqh$$T~yA>ZAQ5roN>>`}j0uGUObxxzN$OI6=O z?U@j($`QgB%looM_h3F*c(G1nTN^D&f|V= zsa*Qy!wU|h5_6-{H3h;ab{~+fY`nadtmM4bc8Qmhzc#xDf04aiHTRYiHQct}sneTW zy~U=q!-M3I>OWsQ;Zui{fedgU$Sj5BrtIT0iQwlGowjK^Ft?HurzIW_{hwO{@uvJ% zT~C~GB-+2@TiX!hravD&+n2&=L%AJEP1_`wUxMA3a>lpwq#`6(>ft?H*3cp!KWQAUJy73yH2GdQhJ1jGfWz055O)>Ts0( zAHEf@pjpSmJ!XqhJfb9yxaWVlE;{* zM3S9$)lt$Wip5neY-UF+A_m3~+{6{Qp8Yy^tU&B@eIhn8_*ndXoa38GuHnk+k<2f? zR*nk}m%en?5SHO7CYVsNM{UFgPPZJZP)Bj7Zdj3ye0-k}RE_w>Sc(61U7uu-r*o_a zn@RsHmrAW7pVQJ!k9Iy!o|g@zw!xK`&%I}xndgMrTz{^{C?X<0o_3l|;0t30RKv2= zOqI(1ZBQkyaMt4Yq``3Tp;Rezx&oQMWxE{(R+1!c`aNkXw!6 zu{GZve>cjQbv*ne1cMI;@;)=xH7PtRdLTzqARKv^$mIeB8*J#+M=FEKD^@Y*3bwyvMnO*o_|x*v`(&D;qJf$iU5vmxJXel09jI@Qr0 z@)jEg%lB604|Kni@2vz^m}Ndv!@8yaKK`2O@j?_4OQN2;DfU>o(E?$!%-wfBjpt_P zwr9e*htq$22Cg1?&(|gGLn7&7b=~~~4AV2+b8Ge;7AP0&OqZIK@6A=H^{ZYsnw>w_QIm>NMC(nm zQqYSRGrWQ%Nk`6oFw873t>w-+w6-3cUhlWBU6|q_*_a4$Vu=1kk{R3o{)1aSlc|?? zZUhzEzQgkSIa9APS#u>i5BHU=WjUe7<_X!yO_oGbfHHU`TU%Sfh3-Sol*R|L@!M>* zI68|L=}Uf=9L_Y^{YseS$kj||n)1b5^34RBE#+@wQk9Q;(Py?{-}5q@)jV#K`1$S) z-~4Q9Q2Ay>;rXq;*gb*)r4Eydb$IW<9CS zU~s3^ZfA4nXH)s|C7p84cD@#&{=K%J07Q#SRpUz$!pX7xf+ux%P3uYez6ara{{GH! zKOME!O&F~cnVyvxNSr3}4$um3ESkqtV!+XQ&*&>%+|wLlvywSz&9o~1)c+}&|dASR$pIr3a8(Bd=#>`?Y*s37Xc!uYEG`pNn3xDk*% z)rX&SsE`9$Iaa`1bM{~VH$*)EOLrg;BJ8UyoCXi5#~E`X}kmJPv~ zt=yT{q{khaum_V+aHsUQJ7nT!?Yil~9MASCyP<@@(!8}W9E1`@Qd6m9%f<+MU2C(d zG}29$$Mf2Xx)64&Ja4?-dy}hM`)hx$Qbr==CH0->UCQig&YqIQqq}_7Vx@LVA=ta- zN8YzrrrmWC{O%fCk#BFV+ng?X9LR6Bbh^-zL6E3UFiXr(sB3urVbi>75s-`h7)q(& zX5EY{yj>^Odo`B?Uo15Y1c0CJGTFC?BAsgWY$t31Fb+qZX9 zzwp}7&#Y9-7clDlRlG5g8@X!piyX235o@N&%OhBB)vE426wt9H|B?d6x=TugpwBZ3 z5&3AZJ{1K-l==8l^u~sva+MXI&h*0-06oVbXJ0dZ!D}N10Q#|Wm6qG)-Xl|mI^r{A zuJGw%-owcz2@+_3EL*H3rQ1XmLT~r*X5FjIu-nCLH;dG`FUs{d_|raIyyQ#SE7u_W zSE>#UWi?P62k-9%!YV^A|NC|9gS|HGc47MV*?fu!UQJDN>o?5KEtz6hG=5=p=@vYi50?x*}U}p%MdWa^1 z;%JU%^Y%^~*b=yMqRJe%sDX3v#QQo*HtsF!@Hf1FP%sQ@EQ&i;5r`ZcW5x1%x%fAix^3Y3?0hfT zRHN7HUB~6Jm+3;WR(W3yUoIMIJzq)a?sb*seYYKK$k`q0EhF*!dAu!LuWZB7u%*8z zyqGL4F)l977A^rmK-8arV13m_tjP@-E_wD8DxJu4V6;0%d)j()7j@@>BsN^in`8>U z(JJ4PmX-Z&U-EUjD6}6qBr!55z4g1MVu|4XZWAEkCZK>wdIxJxbi>f_2m7AJHlN4j zs@$2>7RbcP3#Z(T$+RzIPr9)=-oSfSTe*kQ98H%^Z|ztdm%(>5gtu4J{SJFR`vroJ zf(~a&BZ;8^#$oP)%q5Qeg)7|Y7Siw4e0VlDbh1t_wL6yO1wd(Vjl{gh=odoQ&b8Nj z`Ce1-%%P#P{EWhS*Q1!d$$XE3YROQT!@M<1dCnxpLG8Rc5U*C7Ps+Hma5`?itUilu zLY)RdtDhYE18|XcMNQ{Z=wh97ET5xEd>=n{@7MH@=>);6hFl5)SJnSj51`zclMOcv~Bynz$X z=?Wb|48+;oHhdkcb<}vl?-XW!n-OaFi}QX6fZP;3c)9^|?WQOUPUPL&7#n&b>j3~e zS*h4>Q4o(y4E^z|ZVVK?%=`E6iN1s;JoMH6S(s;1FgAB9J(`|bk!KOgXyKIb!92Io zoPjJ~!kSp%eb~pIh%3lZ?a&~_cF{)B1{w;Z4|N>=I_zP)=6U2X$>Q`!W&szJ|JCk~IUESPR7TWGqmcpNZ8Q|G^Gd(^&o_SpsV=WJliEPFL$pHmb zpcMkZ8iQ*5fYL(+0}_S}1^GE07&FP$mgl5Ji3)EX^PC z6U#7ne$r`JUw4O&x;4|6O**_B=G2~_&`E;cAvv|df8r=TUnQvXuu50MaunZtl5w-G zOAxau@0wUKRx-mSY$@EuSbwp9G5^s1O0{hcz5;? zc_FtC#T=8Z(Ai{$`6mBCRt^T1)qkJ2YJRz zO9otC+XVQo@sJzr886eoi0ljPkc;%k@vG4ii5SYpL0GRUMjNYD-L_pfKCYdM7PE zNTp$lJ^0EzsDuEo^hNCY8){lV+`2bYv$J{cHv4lftu3!~aL~%(y=AMWAMFqF7?v$r zf`@mNzwjTpCCRo6mcc6dgqZaoLFCwfnr|?u@c0OcAiwFI5o_!4`YYz|v3M(*;@5f` zDtGLTNcM7-q&s)F$vhRagci0rDbBc-$b#PSJ(p)UoMO+EfMU-v`j63gk9SSiU!Rk( zkZ3y)`l~y>h!z>ostkN$?G^UEeW`~mx+%d?Sh|1Ykoy+C_#T&7JA+~O#m3r?r}uAw z@~V3E!V*sWW+KVJd9&&@8vEkV`m~3$nTTgEn(IORaO!D z8Y-DHa?0DdM}X_YtRtiGV| z)H^QZL%G=DPNc?KbN%ZGv-gt)Q%UEuUMjTkvl;pz#0tSe)F&Fxg`pX)G5ht<`!KkqufelVP^(GJ*6 zhNLK_DnL&iIB%Ofzit0&u^+sOm&uY5gO5j9LdgTB=8W<%$cD>)VGr*k4SBx%MyS6!8s`#G;?HHoW@cM&Q<#HJ>_>=3K=;i@nYD;66;gdDyl32{t>?#RYsMWV`ok|KChOQ z!U@?@f`K@dQHelot$*z4Iilw`>k@GN_6Nx;S6^Ud^h85xdf35_6(u8E-8F3mWKX2RV1{bRX5yVN>c zg>f3^jLBwbKbq?Ti79?72(#ob5~uXGqB)j69kJOfinH)gqU-$&T!m;}=$k2|Whiz4 zy2?}U?oy_1%s9iYBuPMU_P5Yf4t^7^s4D20N3T^fQ4*7zWhr)dBG>}37Zoa_EWFhGRK|8qIB z+Ce3gs#g037UpBLP|!PF+%E}cB7Vqa`Pw^SO*;%Lt`pbv`{Y5o1S63o4@#I>r4KK!g+)wQr@D z8tln@0L&%|%yu7`&G!(e_3|*}hn02WtNWkYOK)~3#O_o1)B-tRW`8V$Vyg!!G<-sl zzQTMW-On0~v$ZimfD>BcBcR|w=@~(4{^BW@JWh)(kq>AKa2wv1V-H85;kfQ`pZK1n6k}=H%af#NMu|{CEWt1TInBL%gOHmY9da zy^)zt?%QYL6{hOsL5J8>#X$Z!u62F8m>F0v@WdQP#OEcjr41syCi%o89p@BgP`&(Z zP?emm@g(}*1_=&OxLoq#Sn9ANOL4fEU_856d(P+%R0|ZVP$j}}R}J%5BK9N$1kZfw&S?Kui zdg5FiBgh3G;QZ^2?<O<;xB&yrJ*y11%<#rB^8$K$i`)HA}{ra6^eMqxBv3Ex_e z1XS;Tj5+d}mHHAZWy4OB`5uu7Hb52uGja}Bv}Y!qJzG4rQQ;55jRmsz_X?0`)shv< z%G;vC{LjSotioBSX5G|YH2m*S9^g6DR~9zxl#S4GrHwVGaJq(VTX-I5=4l(DNEnh) zXc#-is6F?igWZ56_0je0-ywj69G0$FmR^Ja6RN?*!Qqj9n862H<9`q7p+DFzxO*kC zfR9qNNS@&Qvz@b!23E@+5wxW+^C{F%;dDLxCTe;1+XL4E3t%Blk~YGc4&UM{Hcw!s zlh*q8S3e%Oih%AxfDsfPxJ{^#E3@5HZ8}@tuS+~J8YX9h*LHg|e;$#r?U{5bW9*Xx z<0GsjTf5&0Y-C6{d&(`b3SFdW!R-x)nag9aKOF({1Z(8Jm>3B09oE-f76QlwmGA>( ze#0^tNtmxH`o8$NHI^-fPa*Z*1_2JF=Zwhnl*qG%(;vKHo@H z=GF^d8F#Xte&k>$a*VM|1P!C7MsDaW_WBODPECSJ_<&J-=DWZs4Oe-3Ny+$o<_>93q zm#4?6zy7k9Ve7yg&IsDD_$Ph;&$0IZ@OfR=-JL%xD_aRl9(=#$!W+@2c6xTnDdR>6 z7N#*UFer~QCTweKGXoyyRNPMEKfODpjefH#4kiFg014hSu>f2xr{(bQ@CwImR_$sV zq0Yu1w6<)vWL#gVocCwK1%(D3^E(IP%gx3zhX<9P`7jVclY&A+b9nRAGX$z_!xIyo zQwZb3!$q?^WyVP(o8HPGDfpd!JRrORFE+bQ|3QF-+}}H6?rnZ;{$7$e7VNy)M`AHq z7d*7dw%%^8`|$_z_3lI(CW}F-pro@=dPYXBHiB$pWreC9b+Z13j92(QDm;ooFJUN& zPwwi}_=x)cGONC9P%Jb1E++^5Ma4^<19B_i0Ml_vn6$V-oSdAwMhs_FBTGl~3MgJ~ z?&zds$LTj)z+0-c;AV78p|$Jb5({MqlSYy3-Ajnc=|vy`W%}g}gRp>JYfiu451dm5 zEopYIJIdOcnz)L_rwLU!)PviZ_Y8=jsen>eN6I<4x>h5bGBLAjOVpD#3SDf+SDSCS zEU#i5&bH)mA6b~hl(n_DcVgC+8hp|0pHDIn>5F2K#K6F)a2-ChvbG%ry+6iiBb-pp z(+y~|(aixe6FOGln0LqbC-RGvn%oh2v;EcnD=Rin-PinQ`;860u!bYRylc;u` z(a+Y?CyyVSwRQZ|J|jF_wpA8VyP7T%S5i`PpEh62BPrCa_0`pzlr&Y4l1gj!dobP# zajv#$Yz*4dt+H9(Y< z-W^dg)tY^ns8ijB(62UPSqQq*dt0m9m4xwQ1rtESM)FNqAazbB5JvrmuT}kT^xNp? z^;Yqj4z%+F&_{_B||JWJ_2ZBkX5Y5?%0PDvNd&~Rjs<;7YwrBD<8iG3k_T} z<*VktTG9u~e%%U<3j+FWmjC7_s`_{&L9dV^fKUDC^sHEJdl;6b+?0Je!VEka?DP%& zTqxibLMbFYm=K@CYb=jAT$FTyDk^>o@l{A?L)t9VQ0tRNM@FthZVacS$R`Vm;*)bv zX?Gp!3`qHGR$$`)eO2{5%cjxYNghYU;K{ublR@pMs3faW{!+L`LY``o7;n2Rqrv4q zqG)lU!xPy%Z`>)#RqtX8`@$98$1%no{{U0k5I7+rThRu zpH)IcKn=cu%WYAz0CSVA3nWGNSglxJZ~w$XUZBc05sQr{uxIv4zGIIm3)t0DI1!THB!>sM!*g>K{7a?yI#=ATl(u2-{o3Eh#; zUg48*l^~mPWUr)MZefe{%w^5)7#L0$3$<3Z5R-E=ZQwCgS^w{cB6_W)95ye#(7~u9 z3?y*bv_dH*ehe>0jn_y$p$6R%-z!O? zQTP7mwEn8ag^<3kxznf%)kakDCiy9b*WSdQnueZLZ{Op=MLk9uCHz z-NVKDwOl3f8B&^Oc6DO12B5t;lfk{o^NV@leRb-F(Ra4hu%O**w7|P}W9vO1PZ=1z z-+49sI>m2kye#ALgDwlLY>#VNUDU=%T6$N@Gb29KtpriIKtmmVQ&*9Sw zET}jF3jUE>tEH%-e4DPR_<-W1ll88|^QQ8k;H0!%rS|X7=BtaE<5_g7#%4+l@ok3l zI`^`Vjuh;lG`fTKv@d&B+f{+;sF!z?)V8I?#ciKl&nbMgD=a=>6TYN^Kp^&J36=1v z-XhYgHy#StBgXsmDQ1J?R!SwNvM?1s#Km%FkjZ>=?u?h6gT=(3&zlKG=HuCglb5~j zOJq-=c{9rfvksdbIdf)TyknI?d)MTR4p$r`EO|HPye({i^mY)u4JPMJ6L38;W3jxM z(&0)q@YXKBAWfc6nC}WEpVY^8#h=nQZGYgNVWC#(29#-KNAt^LXg?+|Rt%xF#bBp- zTavpPJ+MD>vOYU^c-!dl#gu6>FjmGXfYR}Dh@w!k9pfVaxkWvp7u$W3)``d`VoccZ zWowp!)|qb9xMzQwe#Gr{hj!II6BHB#^xSOy^ge=J!YavS`=yQ}kX&vRmLq4CBB>wD zww|wYk}~Uku|C=!NJlt)-xGkwN1rikiinDep0EBOcAqw+_$+pJ)&0u(IhaHL!1>!f zET^J+t6gO>K8vWi2B73I!E=u#XX)!Ye*WR`^8%7ic?}&E6O*B~ot0KUE{Bbe*M>p2 zk}X~R5VPi^}eC{vxrZLU4r(h@>B z3C%G9g^-Mf^nIVj$$(7ZP~Oe{vjy62V`iNy*+&P(*?r4XzAKo9)TkCCK=nTMuvO2~ z)v~@7OEaFy2}Qkb7@$@(bGFFStFKzJPT;ka@CFOz@vw27-{&?@M?YtkIXO8APj3ET z)_Q)lyljC`taR99OvrmJ!WD~r;(%I=)tsIs*<#?O7Bw&_^T}YRah=1 z44e7SAEJ<@hN@bx9}P+!x?s5A_k;o2L8TAW1!~Ulr9oD093VMeDvdP1@HAE)S7xb# z=v7BK9WL}*-Iz@^@S#1n9!=Vg_;|`hM|e$8_z27Ys<-elsDs{pzhiy*^7JQW3>`gv z^PyVoVsnv9CN8LZ6wC-LP;J0BL{AJIWdu;M}FVJNA#ZKl1btKR;1UiH7>ZSdo4PtF* znBmlpJQOjq^t#?cFu4N5|9=lqt-=+{a{=U8&}8{Ny!JkIwS zpl<9rH8t;mD16$NrFCJL4hu?!YB`ik=2_e~Zu%Wcn&SDTkoB(fS1%#XfK79c1)q*Q zT)l8-xcPQ0q512{<7*%*J5ZI9H<{Nz6kAV$)e`d;Om4cn^$3cZFEyl}tJk=-w~9I5 zPV<}4-s)xCWK!kwz>^&Z@_juynHP4dp=ZXB}o(2w7QK`6(yW7$q@!V6NI_QEUebrFz>RiNTL3q#A+a(%T*YP4lZp$U#wzj80nU?cmI_LY@Fa-#k0jof!Y9$%>&e_i= zyX&Li#0uN*0Yych^Qvx70_DK#5B|RO*q>?-JjFiQuL{#V>Y^0#0E$9u`#B8fb{!A) zND47rX`}O1sp;wI*=Z0$FeYkhB~O>!g&+8Toev#;3A0eob463+Py(kUYINFNwe!J~ zsfGYCz+MUEmXaLh+<%J&ETO*W11bb*#`&Gh+;bL;-l{iV9{mx14W2cT2Wm{x%I{!l z?uboHIu;hWLV8OJ>0c#sO76s9NrJ0KkXOvq?BT%kMhU%omuS7ACczzCk?)n1v;hl? z3^Ya!BV;V^a}<)(5#&72C#C+#!KW%TyL~D^7r+~Q7Y3jxyJ~ZMyD>>fG+VOTrb26d zHf-Evpu_^n-qh6e1zu!Td-`D7*~LB$=^rbB1&$04Pvb<=FoR~}zJ8aND$_4D$oqZY zR`z%>N!af@%Cv4G_e2G?vB#kMeHwvQSStJ7KLtIloN>0 z)8m@kj|QJ94PLJWp9_94uWJ%l2}STdH$GBgHbW(+f9me2Pc-+R2z`{Vud zzTdC!$9dfM&+9&~`^R;i_jR8mQUDjP>yNoCpY6>6Jz1TUB;R(kdXW#>PXJ3h9t!@W z(t|r=J6!;T(ebV4Y!8(cdW{Dmiu{|C`i*(+kx|S_ct*|ILKw&AUH|Rl z#ia=U+)YPukpmr)_YIR@6y*#1Z?_6m-s|A~i*)f{BwnV9$$8ndKiWIu^qU+EP|VBn z8Nqspkze_o;bP4V2KzWe8O*Z(2m6V);(Gx9$M-F{PQdttQEQ?KaD zgjC-ns{hUHW3MqTr2n@$Eit3g0fSAUX`yFDKF00fkZNaFS5_b>x&Yqd-Dxa4RGiC* zV79sqf4!7eT9R2D3aIUoim%K*mA84ny&e&#JX-1W)V^PEy+J|@^mH$J*;w#vP^$Dj zSVNYXVC-(*^Fux@(@14eD{oxw*1iVQscMDY-)THCnTN0TLt=ZA8 zZcx{bE^7vHVBEP*1^qbDv`m4u*x5~6RHWgG#NN?!g<+`4NTpwbd2cduHwksseRhkI z)C=wUndbB|T|c?dPSiZ4MM;>0nE(llHH~hq_z7$1c11Wzc~Hp1n51m0HXz?}Nf1+4 zayD=C;ChvXG2$$t)UEYY)gSTcG*mpP8=Fv)<+j&JKj7-v(qTKWqnU6pW7uoYOp&4? zQ8hDRuZr2qz4l^m)9ctTdh5Gpd-PIvpVwNM&gdP-z>i{;NB6AvWzyfU8{?U@>0+Gm zexs)@2dRT~5)}=B-prN@`DTghPVV`L!D5U8r-oj0H=6h=IH#6T^t0X|pH` zSvT!4w|&aouJN@liWwD!Vrq^ud6=jV5I$UU>)qNch>} z1%x^$h8DeCG1f#*nd~vRgn7P)Sg!6N@BH322im+4E8l8qRTx7f6FECd8AZoFd7}Yu7ISuAUk(U3HcIE*!+j@^?&5elaBfQa*hA)miYnQp%w& znb*ClZvJ^)-L|`Q918pBDtBMy9dOgniT90`>5l)rmA z+Hss@FT^5-5R@?ZdIZ^UnEs}Wee|#i!E}{aposUgFUXUM%P%P@-k5)RYmNduAZ9cw zaWeFw(>Ha{Du=Gg*syB`Q#Ot_EqZ;4zp3-Zxr9m=fAJuf!_;n}*7~6EWp_AVI)QwnW$W+?g6QIGc`q_vkaDFYy zvpk?r;E7pPxSWV#U|J}%g~gs&orS=iF7Fp%LhX(5_xcEz>?VIDt78+Wyvs?74qoOV zt%VkS_rDe?X+_>Si@$i{#ECAy1k1)?TmDbdoFRk)7HV#(r?Wj}}#Im%pxdu*4+kcAk+XPKYO_nij z&RZuSv62U#zZfGngJTE=onE(onROX&iO=@6vjUjmYd0Y;ZNMoej@ZsogXEzS1?-!M z;bw_T(CebI+8hHXy(N!XK1RyGHb;4+(-AYun|YJI0ef6lv+d_tf6>aV0W}bqLE8jO zRY*X7e?;!40u9QwSBg%}hE>=V;J$~hoW=zgE4S@u8w(*B(96DUT*>%WR z#ptwEfMt6tcDMIJX5X*v<1eVy!g$d88qCcmKd389k!# z=GCiHmCQh@2vqOk=z_U6Nq@_ftj`23m*xz{FK(XGUWZpa1c*+#^`tn8inE;{t5lB_=)rOfjyMhiBP)j1?Qtgd*Y5C8@kn1W; zzb%|@drp{k9y$E@4gT_J8qDX0T0H<#31lsYhkPr}i434#E+Zgze|0Z5LLJO5sP*V+ zeuX@`ec9SkTI^n_>1%VvNG{Gnj9fF+ZfufR{_GabmNEMha`dniu32!&>*e`CJ8I@r_Sf4*e?T?CLIn?wOrO2J+-EXm9wL2-J>akBW5p)FBay`tz zg-~`TX<13|%eLGMI|5k~&$sZ18YC4to96->zS^dU;;%F#XE4 z{v)40cIQWhDj$3IN9eUzr|EyY^+qj!E$V0bZx%M6_sn;h?FCvYdq{+35xq}hN>_Zl zLLrA-4ky{v@LdUphKBw7@x905(BRRLW+ZclnrFX6jh*HTQ;y$t9q6!;ohJV>G9)k& zF&S~Nxd%_jud1cQ5uje$ddQwt5E`k=B>4u$wU_L=H14(NavT2Gj33>}s9FwCXo+@8 z+wL8BrDhl_Ot-50S^?)Lnfz+AXL_9uLvelzD4pCTw^3C9X_zCPQia$aERq9q0y&#C zvV~pY%Ko-gQt2jyD!Nq_wI)e}xVF-`OcdfWc#62eh@@4mp<^7T1dd4o&rEqgrB>)r zFeapy_SMZ`kL)u5{1IYnId=HvYjd3#D}TRbVs${`6cGNZ5v%j)q>i_t_p!EPqNfw%V)dqBG!M$V+JvCcHh{WQcFc*7 z4n#z~WaL7YrM4w8VC!<~fI{r;Le_*At=la)f@{ogKp`qZ(kd;&mQjEZ&#*d<(BF;1 zjgBntl;mXM23>Res0vQp@{O@cKSF&n2%fg>64U=k3%QU#QqWl>dj3J2)|`1_v=1wL z#1}C?{0iqf_kexkvH)K_dW}xC@i4?f+&O1DLt36nCj*-KU~LbSy5VBc zxj0JF2EI*4!HUe%A)V)iMU_wR1?)L0=T-RnjX#jQ&MYm@@8+dI$~knhr&2uO3*nw*dGMU(NJaSdZXoNqY$LiE&xU2KR*{<>nz{v@l>+ zW;Z(24ylLp6CNOM9TU*k980ZGtHY9OJ3Ot>G2y*9j?YMS3n9=T2wgOVJ4Nyw+!^1K z9&Awt1g_3eX}x>i_Q%!Jo~JRVH3%} zyV{P`OpwS;brq224!Nd#R8BSgqH9G6lsJqV2@zn;K{}9d@Ga+;H_{fFn?@HsjkX9UzN-|6vXs*=V=cA1$BpVzxkEYyaBW|{JKA4Fu zEu)~W<-ZZBTrgnoT8w1@C2tkOCq@FnRnn6KC0`fJi>`BLP2+im1&D?{c258qh1 z=S;?yoYQ_cA3ZS$ITZG__O^7Z*IL6VbR%WOk=aY#GH}1mU0o$Gj0aaIX^wmlN)8=xi+Pfj(ormw}3ZIQC{KxzQ&l@wKYIf^Oz zwZnn9_1x`p?)e;qbK@NEuvMKwz;d&lgT|R(vGJs6cK6VZjMw47MUd2j=JfZ~nNH4WM+z1s$)FDtAD|Ox?r`%%rDVg8LmD-D z>>ACUC7qCcw;M?lY37)~9+{p2o^6-6N;*J6NKYG-PS*UxZEd(=6BV)?guKv?(yQeC zu!wbQxEGQgY|%ME?kAXIChE`M$jsBkErygqj0BZUkrw3&@R~)~dEP-VKfJ4ZLVem6c@^y;xt-VW0RE4({0x?k;Sw4 zPs8M%RDYCZ)r*D$ac#k7MjpmDB1F`HH|)&<`?Ko_56|kz`-O#FW_I|IeO_JM=7)v6 zn;ds_&JAo8E>U{pQ_|zc{03dLw?9gP1m)q2_$_i@)6s!*1~g*zBFs>7IYVN3=E8QT zTDk1ZdQIr)@<{B}kZeq2nem5OM@@^(9}x-gytb7J9HYhylMC}c#*1kJ>+rHT-Rl(2 z$#IT`pQZi5opcTTxw+bWvk^)M%3-%z44GjW*c7rhC4>@fN_g*we3K#YyjB<$uxwe$ zXu&w%xj89*%s`DFJlpAWkCb<*9-Bi0in(bcZmA5976e$=TXzM&8GyOMG37JyhVL7ubyURMD3KhrgG15RTH22}kNdN+YY){_7d8CZEj5lh`r*pfE8CfE*l$42 z=7~`En4d4`JF*zeuLhy6Gt;QMI_*=8^KakaZI-50lID8$12XjYNDkeWSgQ__z2s+H z_+&+~p0h!P0E`R2_H=Sga?eVCi)bIB@k<3kSnUb@gfLWhJoI z@`(89%AsmaT5J7z1lJZzNY|Mrd6WF5*ZnyK7;yUd7U-k1Q}C7t1*d3Uq%#9AUz|tl zzH`$@^omnvXfnWpN@OIWwSQv5&M3b2yOef!(5D|ahd(NszxR-!WtBkyny5({-z4WI zb?~hQFn}p|>WOYz_DCQ9y(3edWD_M&9S1jfx;MgzZ{ZwTyhnYRU%Guu?fKQ2=y5n| z<#>3rE6Mzn?)AAW%H~C#x*Y2s>ifr_bSZ@vg`u>*HfO{Ix+~ks(aDE~@rG@((1g zWS+Y@(B>PB^Humb?C8W=;vwVQ5NQZ>dB{ZAR6SR_5z+kt$#KB+4s!52P835So2rI(=^#8t4!8~3-eM-mv}ThcZF{O*-Ta#L2;Ewak;~7`-(=ES>q6|n zvUVp}Vdc=EN6C~1c_&-4DO*u<1u`A~Wcq04F{{@N%ig_Z>y8lrD z{k;v~dyoDLe+)v_ diff --git a/android/app/src/main/res/drawable-xhdpi/splash.png b/android/app/src/main/res/drawable-xhdpi/splash.png index bea1acb4dcd2c2948b4a44321e2c48541774d355..a42873f6ee47b3f5d58971989977fc2cddba29ce 100644 GIT binary patch literal 52154 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 diff --git a/android/app/src/main/res/drawable-xxhdpi/splash.png b/android/app/src/main/res/drawable-xxhdpi/splash.png index 90147d7bb17a2d8e153c267c8ed7ba1f108abd34..18465be5c113923346a365436a975cba92275407 100644 GIT binary patch literal 111226 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

7z5X;y7Qh(kDWS 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 literal 135761 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 z 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 Nc)I$ztaD0e0ssUObnO5D diff --git a/android/app/src/main/res/drawable-xxxhdpi/splash.png b/android/app/src/main/res/drawable-xxxhdpi/splash.png index 583188abeedb5df626ffc6f2e7be69477833693d..30a6888aa91f66b9c8573dacf83048b91482c261 100644 GIT binary patch literal 131617 zcmeFZ30RX?*Dg$}mDY*2DmWlG`Jz1LprUiZ4! z^WawsAB=HadL!HGJnQuiHNGx38_b`meT@mI4BY!~DV! z=idG#T4CO-dFHC<#INu6s(WPbIof|%U-H)7CIg$+vcV>4o2Ewzg{RhMd?SbyPTMTi zP^?_I{#LKx{n*%u7lDu2q=XOqDsK# zc4962hsY->$=QKQULlznHrq#pZbYSXMJ*C-WZp>pNIpqZsslh2{R|ES^ zZAB7Ti=eN`M^1k9(A^(@q6Io)gT5{^{ezM_$+YZt!V7Rwy_(}oS#Xbr>2aEXV8ELz zG1=`1DuveFO+qQJtO)R)-t^x0(+L)A#~#abmo5kh_#6@t`0b8>z!H4xw-EsWj}rm{ zW7h-(l%EI)h`2l}zNiX6Sa)4Z9`e^$J zdF>M$bw8vg)PMWrP{IXiOZA@>&aPETc>h4a^8uk#cUPFd>K^g)IpJYnDeg6}U<;0$ zd7P-(Wpih;VIm;P-;0#etk87$v1{4J>RoHp1EaE~1XE&kzf~{`c_XVrds~$?m9s8H ze(@B2``bpbucX=f%tAz8?4yDGKP+3{Iyx-xuvUm2gmpu1O1;#ZD2 znfE}x@xY*qd?V}lS7bz3PpkAS7blU5GnyoW04 zKi)d_6>-ZsEb0+i@b=yjqmA($lD}NM)49b~T&P^v|HN-q5nkEPuX$~GZLj&@Tl_aM z&u^aABrKiyC5C5k=q+`#(J}4EJmoF=sObm4FN_3*h<%shYxU5?=fqf5PvwPU zSnc~2Nwko~dJVUqa%zXE!{>4(LdO(l`)yCIJtF()7i*WA$unq++%0A29oMZ7cvINs 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�&9RR|V7u2;mSE5j+lu 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 Nr+%q?3r5z*b1us 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%0D7rc`5}ko!t}V*gc7_MUTIe7O@Br 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�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 diff --git a/android/app/src/main/res/mipmap-xxhdpi/launcher_icon.png b/android/app/src/main/res/mipmap-xxhdpi/launcher_icon.png index 8db3b905ccad730edde469c4086b97b18a45d6f1..2b8fe5d5c57cd289e926d81a4d26c452210e7d76 100644 GIT binary patch delta 7614 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 delta 8323 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 diff --git a/android/app/src/main/res/mipmap-xxxhdpi/launcher_icon.png b/android/app/src/main/res/mipmap-xxxhdpi/launcher_icon.png index 38584b38de4aa1a2fdfc7d07ee1e0588e31a55e0..7aa597c6b2bd2a085a62a69de089fc074b14b680 100644 GIT binary patch delta 9954 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%0D*;p6$w9&Tlo&>XkoRO2>FXWM9wnJ4JNR9=q z9V5v3p8Wqln2*b&OTiq>6s;0N5+v{zd}iIRkbtsU#A)*x>htey&J^S7Pum-6vDgT?$Z`F?? zrx*vW47~9dTMeFcW!_ysk^}UjDfO>>c9g;O4z(>H?8wuV$<+l=#F@}N@(GLbim>zWfY+?%`kF2OgTUF< z%HGEBzb2SqS}_C(C@)*E_O-VWm9h8o)Ufu@ws3ZHvIc}XAea9{o02y{EW+PdvaU|9 z9@=geme#;6{1j9ru#oCiz{gtzS<^NR3P-)jE{`Hymad#j(ti!JnWVDaD5XuH~YJ+Sbw z2L3!FvPQeQ1!6J&Zp6#Z+xfnWg}u|iOAn#i*9P&a{{>&x)!EI%+SAkC)ddhdv3Ao3 z@o4`A?@uv!1q3zRcrK5<(EL}JKLr92pJJX~o`qrg7er+ZIRzybFKZ7=I|~ zXA3WY@0OskRyqbq!~H*{`AfUPy!;~U#+kDqDcir0YS_7YxjI{WdDvV2XcZLO%fjo2 z+(e`ilpq!4U#NZ#qssxMVef101n|v|^%#M;RF}B+mX@NHu5NxF_O^CjfQI*dCwoiC z9am=ydzZ@Rw~Rrw8^6%3tUWC~?A?B}_oFNCd)qsCaoW2;Jhc>LRBWY*L2S}r*v=L% u-ZmDNUfv$o9zS|sB`vNKM8Nxv;A#ajb4hA^Pe~Rm0hHv_?i9=13;91=fpho( literal 36578 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 diff --git a/assets/images/logo-uh.png b/assets/images/logo-uh.png index 79bf89a03ac70270af6240b20d12cff4e131640f..6a0eaab752f1730491329613cc8d4272baafa7df 100644 GIT binary patch delta 4226 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 YIxsNVCFWU?Atwp|07*qoM6N<$g0D8QSpWb4 literal 6301 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 z%0A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 literal 34490 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 PWaT0$%tQYV0cX1G diff --git a/assets/images/splash2.png b/assets/images/splash2.png index 1e18945eabc2696a2d64d6c80a38c3d62cf51bbe..8f3e7e5b5f5957cb93dd1cd69c7870721d445981 100644 GIT binary patch literal 135978 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%0DFrcajyYZIVOGl6Pyd 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 diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-40x40@3x.png index 96a5f6f8af7cb76202c0d7b92b1253822fd65ee0..717f520c8d0165c132080c7ee9ca6994d4598773 100644 GIT binary patch delta 6527 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 Bc|!mI delta 6914 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 Bc|!mI delta 6914 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 delta 10452 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 KMNUMnLSTZp3eXh* diff --git a/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png b/ios/Runner/Assets.xcassets/AppIcon.appiconset/Icon-App-76x76@2x.png index 01c3cc30588ebec12754f1c84a4a97a4f51e6583..9203ee5a046c3820c47c5a3436c73ec67049716a 100644 GIT binary patch delta 7981 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 F{~yA=5(EGM delta 9804 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�D*IE~pf4F` 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 TFuwqv{A6x|FfKLv~EUtO1CH(C_y05E#)__ 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 diff --git a/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png b/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@2x.png index ec777ecd3798aebf9c6e82d122d98d4df6f30f55..751630f4dc03c200a2ffa38e84145abb89c8c5b6 100644 GIT binary patch literal 86631 zcmd?RcUaTe);7$Hj+J6TQ9-aHh#*Cfu7DyI5D<_W0qIRz0t6Bpps1j9qzQ;fSBjKC zB1S;EfPl1w&|65T2`S{;0dZ!YbIx;~^IYHi$9uh*T;Tl5E^Dv7*1hhvHcxJ7YjSNn zu#JO*gG=kOh8_pU#&;YXTP|<;9b9oW<$c7#@tePcy7~D(20%BQ+0)5EUp&DSY#m+ynYepEkaBjDD$g;)}nf0Vn#%y)zrBJELMV zGYX!{`-JAhsZ>9{F=O1=ihyOhz0@b+T`iLR?;p!Owv#=bIIrUV$lzEYHNmIv_4Zw= z9_G;H=bqh`_w6n{GqX)PrzRE+zcpiND0y?xVK6q;F;ZgK-0+;6yP*?TXPGe4^4+`K zJ7wCQ8@0p^2g+!CwSOIQKt5GnjupFsD^s+o)3=u*7Ho~49{lZL@26^SqX^2q zhJ%M_Z>|OnUq-xA%iLIz+$y){UW)1M+fBsW!m#$uhcwMk<2g15f4UV{(4~y)$M^PP z>=c+x4%RCV-y`SGP{48=vc9Z$orA;g1P8}Gur4%k>E1X8hxZu{j>+2`915`<9DH{Z z%5{~%jZIcpH8nU`?EhX@W<-Eh#QNR5<)vo{J9O8>&DO!$=8%`~U7JIz%X;p4y1r?s zz+q0t7_a<;*+O}39vQtE~#Nt6z}4v{C-e*C!m%C#Y^6{+9@)Lqb}G;V*xaJ8Wo4-8^OCeWsq@{t>ZxIyf5P zgUM`{Z95t1Ud36*zd`+Jbb3=80%)5H4O?~u%s+Pr$I zmKx=y6DMv*#2#*JtmBrJKKG0};@Ojfy^=LM^gnT4y|Zh`Bpg1PF%1ma_ zkxw48KPN-1sXJFcl8n_0j~^2>HC8{Isz+8oRzDxui49wOVjp7dfiL8ve|tbzh6}?| zU%RI(u>SPFYOeJT*Q)5x-?Uzn@IP6Ce>$nPh5Khq@ON4LZQ=fJS)G5Y5C7pr{w9R~ zMm|4pone%2Wh?lh`d~b3MU@r2w&JPhf`rzzWPMfts}3Alf8bxL(Z7A*U+UTaSP}o_ zAl5bYUp}C*-p7F`WrT=WN z{oIECp)UDDu_P89&x-$lO^4PO|Cho1S0?b+1OHON{`cE$eGvbkfdo}X>CT@^qPV^( z|M&f@x9|`BtnaAxf&9Z{|Lp_+uxslMB3P^b_fVGP>TdZz>jeHoeg8R_|NA%YzePrW zcgy<_eH+<6jo9z5DNbr!Ob*J7fri-bIaR*%cw)ugg=WW z*Twk^<5FBswEULm*PrL7tgBH}=o*f+_=w*6xn+gcimdc^w)SQfYf|<=C?QdH^)Zc$e;v=oP~j2}h2XPYIh3 zncd9FQ7Sx^`kweb9)Zx^0Ibv}pD1X&udSAbWiPHCt-A6O(!q{bK9P^6juUSf2%&h` zp$~8}U#=?u#$G(or4<0(;3C`buU_EL%~pF)ZVZ3C`r?KiOcUbsg{~qoMqIlKGQE$`mkRo9Cz;{bNf%2}Ks;QmHeaPn- zv@6*TXd3t)at^|)j%H1_9V*##Z=k&I9YFnH=;up0F=-u2v%l}~w>fZ%Js=*A&oNT{4KS!c`vR7*`L#d)&94Zv-X6pSJ!Jxs_qN=(757wW^D@zBFWMgyZl@OcfUFA^?M-qSYJa*=BfpWM)o zR;&;XGd3=S4Fl5xg8+{PnwuvkO52?X^PTgJM9}xjiTw5ERdFp*F`qK~R>tjIbjlL3 z|Fjp(b6)DtQM3-nM8)mwtD}4vX^1hocEZ&%2(-=?4QT&WQJ=VxHq_A3(c^It#CdvQ zq#@c1TI8uO{nrL=n&|B+2MwGym7Nbo{zbYnTQd!^(y#8l{)znbc_LzR*gXSV{u$q4k__aocC*d;(H|3zR$GfsjtzFdwJ}a4h+bl*Uj4N)e zj3~irkNA@bwOki9b^_nJg@cfCp=Nh}g0{5W_c7;hL^O0UBq1?6k{3BM9oHNhT2)o0 zEAI5o@dIy#f0<*4hdf_w0xv$T!-G%blsuN?Q5nj=?fft>H@B&Wt?bXfqEh$CE1s5< zv-@60$wZ@ZKnF(5M%y!VO1GyP>|fu9TXyf?-*QLb)zz;}P3~o8a}vQqhdaNDWkfb3oOa#W};+;qO`kZ|I5-$S)}Kw2Qy?RucIH3}Cl#C_SLqPE%76 zwi!%n)vBtK_dl;GE#1F@DsM7q=2vuEAI)@&-U#~Zst5BB3xXUaY9Ci{RwBPfq{X?U*FSaX)+$&=E5|^%h6U$gj6cV{(NbR6h;{4 zz}<%L=i=rTH!c4`>2h>%82!rw1w*xAG(l^d^z;kMYT?Jy-=0`j$<7eHjMVw55@*1c zrgm08bwCH>iKcQ7=K_mNuAB973PDb)sMJ_}xck?!5PM6ktllpFux^Mxy}9vfS>uzB*teQ(1Lp~DX!KCBHrILkb4+jPZU zA+e9|SBr;JIvo93agb|`MOj%{k`Qz+(W1~cokW0*%pL#B*4tt7(fJ9<5;{5jL=sY3 z^_oK8j3D7Ehb;b_YRc+z*@}ofk&SnGro+5?H2^|wjH`p965;oM?Se;wN~I*qYcm+E zD^?s%9)F2NOZe7?y7c|=YfLEy5E9F!4^k<502{CH!};TvFX!+v{)ErIGr#{5*tfQ+ zMFhTvIoZ)*y${iEZjJ~$Zfkq8bo&}y0#015fe3Z$rxlZYp#z`L=Y#PB1GjZ`Q}8e{ zoRuVv`la5FEVQ&fkODvY%&NsS>=`Gcpu`Y7A){-)BKg;-7oJ_R_RxDkdU;}t+G{N7 z)BOOngeNx0+qERV_t#UFN2tKS*xFt?&o>T5@rlKb(WN{+JW5CQBi3;Tc4L{>1Zd`? zZBy1g3u1Ri#{|VY$s{-0Gzl2^pAhKUi;4<9M9U}nGiMI5eiu?j4Aa{T^G&Lnn#pSz z4S=KF8I_g&B-HX*8JVvYGFsu$;^xCcsX)OK6}-da6M;|u34~6BR$I*~G6Yrp56xdc z=;!Ch5LCT+GReJ=?GM+iAok14V-BsKm(dwLnGwRnoETs&ft#W;H(;ViZC#G)dzLF@ba}@blO`ys+6m`QglN0^2MNjXuHmsAqCkli z5@(v?U-5V4pN60{nkRvWM!WRxE$JoF!>6Vu!R+hGisTFJfQqq3pHFod7$_t*laBu~ z!56@z{Xc%ZN8*!8f9#i{;K(JGXZCTTDZ>Qy%^NCzq;MZp`nEt&Kkv4i=a-_n?SCFL zH&@^})=WhND`S=sa;n)K2ZV&AlNunEe%0w$`6eBm4svg%99Z9d55-PIOw6WfW{PMH zbz5U`O(b-fC*1M- zcU;IiCqt9}Oa2~y#el`hC<>{+!(K-0{I9|36n!lEs%mrfd_M-(Rl6zTm_tYXND8&Q z#I^s$u_y58bp;NXIi}^uEFT=GVgj3RA=v^9B1yqpEn|M(5Wx%xK*30y)k~%oK2=OQ zWfP4qPXh|HCU_Nn$6~+!^0O(o%uGKzi=H}Fd`nDKjHgTKScylejc*K{op z!{pWlK(E;H;O?wdkMn-Fc=1BuU*qN6D*Q&~rn>fQU^1PMg^nE|42BXw5b6)sqy^9*q^Jx|(KhRQHp`Py=4m@JItr}NlZrXl5>!eG zqP=FZ>J@S`&&(JXem^^^16$3SdNHiz`Ey06Gyj<0mCKKnJ*YPv9G=wOd6k2S^h5#s zWX>a`^5cWGsoAuT=5+Y+?b|IzQD)+Tht~rPNyd@bhLQTZIziTbwEAWW_yo65&YnB> zPB%MDKt*On9jVDJRA3^ebaPEOtDPo+y_zIQ{E((uQ%JLIzQ&%FsZ;hTG5pqkA~f@6 zR&AIdg1Pv1);}KX)$Hu-k#FqXyt?%{Fe=Y=Lm>x1cA`Ot17tHMz2I^e$Y4GCqBh0zBOs@0<%DBAjYnbg_(EMZn0*bmg6%s&S`chlF z(NF))F=1OM2?;yKiG`kH z&CW#5iQnIm2iqHCrjW3bj9pk zpS^8iSw)3&SKdMEa}LjQHuPWRGcqvX)^5Ybul2C|jfzxoa{Gj{i_3K#Or`q}&0TOX zqI+)SYAA@(D6W3q-cg3xQO6vP$lb5HUFtES_ZnHWS4hZnVVuz1+}r|P4EWyO?m0ei z|2%1-5)K0&o#90<9_|CrYeq*$r*j&Miadci)xHvvd@q<1vZo=>ymF3!rEgW~f0;ml z1p{6w6(ANN)@2P|?m7Vk!80&1_165`8d9d1T7OQQNLQYPgR^tdEwP!ZsvF1#MVPA) zHmb3{e%qq=)7KhW&%F7il z1`U3$E&{@kFgqjRFW5G_s_kyCUexle2g4X0DO0hl(PG=O>&DWePQ~YV@u@^Pgnx+YYEZ|KJ zJinCP@v*pM&)&Vxy&r8j`AUH;sI+WLI>K`+{Q-CT{jN$(gD&%oI(067bBob7g7E&& zAxD}bc>Jmcyn>sKLVDB8i|ngnapa>ar-}YHHa0L=$(7uh$;qtDOvKW3H|S}!F;2b= znZmb_XI9p@PDr^u@Hm$UTm(N0F8${1iQHRguZHL*;9PXL$hS?-#l-G|&GdDnXDf5O z#E?>Bg3kNzCirLTh2(BE$h%G#1fD3n*9Fc zGLqxim)ay%WL{=wo%Ne;;u3H%!90Ruv8piV7$rB{^veAeEkT6aen7jm0<-#Ay|U(r z6ZN{NE^myuIqz48efr!2KPY4Z6Gp=Ae|`x-(V_6-1J~VWv#-X8yY?5zOCA<4NSe(z zE1SN4{dvR4tFI`m^10Yvn-!*KN30S4hH49MGp3_gqia~Dd>RV34YFFfmC-t!2$vq6 zYU0ngsMIqs7@=R7fue{|xYN}JCLLDd)*Jp}$0=5JV^X5%7PWC#hSYuxa;BnV_UVD2 z#LgeGjA&qur*1yd+De(hbxbX)ByFbqAe?0mY_~w0p==E_lolaH_7@;-q>Xq!SIWQ; zg(guew;aSbZV6C1PIrYn^qF(oB1XP!AABPM;Ro?-gMxKK|) zQE?pu#cv5emOCp~vul?X;0X1zJFIjOh78e&gZW?7|;DOB^2(R9bC3myB3p1Wy z8v26g>r&Z=-h!Lt7frdGeO6wWX=nKw!)lDvC-~lVTb$gJp_AO$*l6$O=6OzF2>A%u zQB?%v8wq9A{3@!gwe@E}9)#b>g;`u#+2=Oa3_O6c48(kTX43C23->v2-r5Q~_>2)I zs1iF61LO8h`-s>x-68iqUn+{Z*S!rXU?$#`oti3H(ExdDg7(i;o4uB17(7lVj*qXi zz7pX<5ItJumvhUT0 zoYlkH`ia_IZEbot$WqLuTtNM~;?dq!4}9I-rLC+U%ujyHHO08Px&q%i7JExSnV1o$ z_AVG7CjH1T@#r;#jI(TSp`FfHbK;(y`)oASoDc`LuM%|nE10Z@M*$w~GEJNS#6yI4 zNsqHEKBFj3Ub?KfIBE@WCs&hC?P!cpVL)eo%+QS&0ihGIIPEI~XuQ`L%!d!N6A`tW zmq_u-r@R}Fl6#7?!_PS&e-|$Ad*VBJBOjdt?c#dWq5R{=k3;htV=ZDV939(|`cVL? z0yx&++j}a+>Xx#`^%D`K+GEHecCLkk6SMUoqW7cABJ&s=k5kspz(}i?_XAiLek{Ag zQ5IP0!ed&y<&rg8Z=ZP=S?@r@Qid*kU7oiC zro@XhlQ>pZmJczKk(0~p5KU`688Y~V0e{p>l#RP~;Q8Ba-OjRF;eD zSF;w*1wl$VRppUGd;qElD_2%jhzScTN~_O)(Bu)qq2Ob*MJHg_`U>G=1vXFZny(4^ z@l2Kem;f_%{x*djo4H$N)+ToXHq8Yq)fM*q$ULI%GiTujy^I|TYMLm=y^CO-*wKBu z<_tq?KTY`InF?4?UT*_~LC`$0d-ot9pNtE92ydTH@k|4OLRWe^P5}swf>D~&f_bE* zc`sfJ{6hkgXHxutGP{;Of*j+*NWuW9x(k19@52S6onf`-301QBw|d`t`cz8x&s4cq zT3^r#OK4c`8WYXlsG0I2S?j4F*mL)qG%Nm@y?Bx57hF zc8fr@_qkGX_om^4`#!+@T>Y2jGVz{8&+Mq~hC1wg*=_3eKC)@)UBq}0eyS_q_n1$I z-A>E`#g-GVyXA^H2dUg5?E@{~E75773~jde>2Vd66B?=q0O@}H`t|il?fS-G?9SAP zz1)j)HY#Bo^KV|NHChoA#2ai;aN;0c#eKK4rv5RnqL-;gNqZT|3xOE@WC?=s8apn! z*9``yz@cy!&K%cTb*gFrNe$3Eyb!zL+*Uj5Fcty!{^c0WqcSsdYk$}!4-YkUb>-DS z1q7qJtB6p1x$jZ07T1lA$=2*U2Rh>Kbf>- zVN_FRPmkU*&D+7D4p`XM;R(r{U5C3v92s7A&%6OI4#UUkPJz!=xabud9YNBMkqVylmovVCo#kw)8_LF zq7eAnd~~hod_Cz0y0|>6e#9dn36|XN8Z*yx1gvo7T>|4dKZpV<{U_Q2pT@KWl>>$a zTxoB217r{d(Ax|LyG%hVIJ)+U1*P}QAFn-{v15{62lzEg@Tdja` z0TPbOWe5%<`7rN!y3v>_YQT+E7H>d6#GUxerSCL;mEctiGw$rR;@qTeHvJ4xJ0l}D z$z%O?QU}Ib;)m#jN;kY9ymSS%X*~?BIvg?xyg-1ewDz@U?e990d(BBul&Q%pJ_(C6 zUPq^Uim_83^lwh|D>Y>L#kVgyT<2zGXSC}oA-JG~ml=CUDi1P%@xv_Z7s&(jkW85J z#-jtK=&?%={+I`>><;ZGHqVHgUFJtH?OL>(>g#zEn_GqvMZGQv$XHww0+bT4 zT@w|!ebBkTs;ah@R#C5Wa$O>>vs0FF3t#&^tpZmJOip@5_voxFkN)qhNG^kbxv{B9 zgHx9fd?9u^suA=L?3_`Wg1BqV{8-uAp7=B-#i(y+U?dHWV1p^TNEpg2uSd=;`n2ib z;$C|fhy5dkeZo$g-)=%Pe(TyaZL+m^`=b z%(;o@nJ_JJ4O+(7fc96r;JXGWYyid3$;UI^o>*L3x-?Qb4MnviDh^Rx(8)@^({SNP zXdH&Kn|w-l6Vy2i1QsM%kzEVmYtrUa0%*e@@NSTFy})G{0H3R61dtb%KC^wK-6L?y zj0Qeixwp5Mi9T`nU9XhIv>&E}%Dk%VK;@563 z(>xE`2=D!Pn!vgZ(BGQIef2884>GeDy9=CSFqGiK(b2c;#4P6!M66s6CS-48e<8xO}|7t(OXX!gh?MH!4VZUqG0_o=XOp>Zw9>ZMbJHRa) z4pd6?Tp#L2u;Q{O3!gE0$RUu*Z43NtCJ4~EZ}4TJ=~5yhIMT9`%S&?5UZA_H>iY*o zGnggk{WvU4eI(udE_`K#3KH=tTS68}1J)V@>WusmD9>b0TfgDZgYYDwjXs}S z%8o1B20JO?C!UU#SyKha8smHyCvBcz+MPnlKc=M_DlkWPu|1h|@ymUubpxU{_lBLT zUtt{+JKib~m%kMR5hi6;-TOwr-2lFZ+nyRQ$7%82U*ZLU@)1^1n+C9LEh7=YT{AsB zF)h6>{neoE0)asd4{JOW)UQ=#1eu_q-lk4Y8Wm>>3e%2CN;XqUB3|q;)z$qOVENBr z^D8PENrhuTRT^SWJGi)P?NuJ|DEltj(XTiGLUhjh6;MHfppvWHxiK|@@%Z3&-avAm z@RqTITRX}8e*9s|aOj@B6*BucE$OAiiB{mb+DMcF`_>0{SHxHOXuzb$AA+I+szcH} zmOh0afBIe2U>{;Ti0Ip@w_lL2=gW!l zJ)JK%))b%C;kXv!a|Gct@bHl-cjA3&tV{35JGQn(C7=%D>Vp6o{?x&5XJAB}2=0hzPwC)%m_c`Omy zOI!lXC`g~@TNGO<8HuS%NDLx2t?i&sAhiZI)Xa=)3d(eRW@d8Q*~!Vpk#<90pE+sJ+AbWH55YiZ`r-f& znQv08#H+akh?4Lm#MK>-oVxO8D_?OxS$>A(cagP0ItF5VEk>gxQ-Nk@&pBLy|auLgr@YHE6VdYYTN0P6Ho z(BNp(6sRRo_PNahG3>*+Z8(r?3rPh!vj$%(zD+GY-P@cTxj}RH4L!Zjg#dyy>rQx- z$>u<&=tFL}3c(B5e6~Bf&+B)xLh+(akOFi_rOXJ9gr+-j2>Z<2^Q4 zZ#TV);t}j4wK}SD%f~lGCnOBe3k6jwRGSH1vbU4p6Ea%u8Qhq+Z+V1NafG`!4GaLQ zuh?SVL+K$@1lHkMf$Efe%i#-qe^BMVqrhw@)lk1?e;z1O0|xI@c0NxzFKUn?KcXO_`Xy3c&ox&&m=7(N7kH6n+WuelIaEHy6YZU@`oUF%ILiK;k)oO12!{ zuBci6^#--_e7c^zBsM>_S0GYx>RZY~6?7s>z38 zfJ$F$Ju81u-=PJs5mK}UNoC+Td{&e+)Ad3LyrF=#nS~2zMY<24$q9luXgwjhIf4Y+ zeZjpE$1>B>hGvH}gSiD`l@+~rkru*oZ+(~^t{W;VlRxnMgjx%(Zq?x3+p-Ule&Cc` zq;|$BQL(;{i&I+>ZK}W?1H1OIq$F(KI{@UhD9pg6nQrBk7;bGc*~!g~LeUPI9r88x z494o3n-{}KGfz~P`1$0lLG4ySfmDZM)G@7AnsxQMO+DvPW_IaeN?Dl*sd_%!NJ2>2 z&j(8@uB&@;0WKZXoe4o!P7FU8Dsk%`bTiTV5I5@tp_i1Z3d50T*;TJ!nWAU z(3A}v!VDEbofZ_uwFzuN64<>CV=ctKvH)OTtIBJ4@3M*!GcE!#IV5sk&(O@pVTSBd1|v771FuUFw&;op0EO$`i|0lNsm zadVQg{^;QA$_J_5yV^l{pN<*i=O*@)*;eG0&h_-(YDa{H3pK_`tGJ^ zy57EMy)<2rCyZ}85sX!l)S)G6+l64T;b7SYgOVFYde8ycBvSUf_h-JtN=}CCeQI<2 zH6&Nh8w!<`ldD9s@&N5d?5&}Y@Mq=ZyuH0aRpiPF;%W6@_?s5r32@kB6-)=;n3$ZL zqsKe~oa?S&JkXT@q!Xwpv$6+Itkw0BpL$$MbEo7bqPtqN3{D->5@2<`8X$~8QGm!A z9_xsjl>|H%`OG@k8b*-YIxTA&5D)+u)ke;0kRQ2n^(qKoL?M{G%sfEUyV}1)vSt#) zCa0zx9kVpEKcoY2bf~0V^VJ?|oV%J;Z##NtrR2V@W8NSmXuWoD7vs_cNsrX7d z@5T!|dU{NPU29-&cv|WHfSbm~#ugT`Hys?bfRzT{0CV#j+zIS*Q#N)3WuTityPl(s zoXN0Fc;L=&;10PySS=<3W4u*aO9Rmt%@6MTsNrUMF}n(JEhe~G&`SiY`J)aqdFb@z zN8GBpmv$SL+yMot3k$tUU)MQvdS6FJXHc)9yyxi68_oCHGGW)q30R`(LdrV?jpH2P5(wR?K$kL{zYHM#4rx_#G9R@k58 z=AsvrJnR8>)5F!m;I*3OeF&Us!5vFCH@Elb;yi$^#7pP^rK}d-uGKi#lIL+#^<5Xt zL`2g(2ZOuLZ~1pw;*2#WB(rf z@&QzOf;*#q%Y|dj$=9!fhZx-v!eK&6UbjI+3Ahtuz|w-8IVhI^IMAj##0Eu~F87|Y zH8L`~D;#qB?zMVygjpVpgomJ@iy#-FE>{i044veac9yaU2m}Pne+xUPD8*1!^&I_P zHgDIGtQsE;odMa+h8PKpO21_=HDK^`u05NF*Md~*{a=#6l00>q=~R#p@0;-2L|J^1 zdQARet4K&n{PElkOIrI8yA4g@a7V`ijNDy(Bd99*SrASsi%Cozfy;}T$UxlAXbhG_ z_c|mU=)mfDlxZg^uKGEPV%p{3MnE8pJ9A< zr5=>`yA}Cniz4qRbjj%tjggVD)v9my+J?NZFK^<++~r4T9=%K5 z(?I2W6ehye{I!xkH$TrV=VB|)&WpG5%ddge!u#wppJ9m4Qi|QxB^j5dE@o)0d_ZSzv%GlGO#>fL*5dhRlLT`1v?X}2LTIYN zUYcp}QR+1~a^Mg;jtcuzpkXR$;G!$-$cs8TgTr4iH#8Tflzz1#$ruL>s@KvGQG0%T zKqH%sC?;PXqe*72C2F(J{?ZB~GKO-bEf^nRXbnPM^vx~TnM;>3;5iDYYW%ecBpF|I z0s{lV#z_#Tr0pG&*r3$Or~l4jq6Bq>g|=Rw;}>$;xDX=D^mmm`K8jg-VMwbx{+B$h zsJb#dm=6c1dJX#B+^^_*{?}WQ0#hjJTZq@ij*V7-ZBYPWeXf%drB;f&^CH!iRoXWL z_=aE03YsnA!qonjgq??POUY^AjiMwr5YdT%S7O)aubm~RQDkrnsqmh_>UfnU7j1&( zkTUkG8OF$)#DEn1dX`-1VlTPDQSJ|~98!yP;3(Q2QS{43fL<0jRa-}zo#mJcFRTNQ zaU#5;r&DlB;w7lABZgV0yIwu-o!TUOb1^q-y#Gc=Nt){b^y#cie$$}WFA1;>jRdup zwj!lJ-lnLgynF!eoc&Y=e~{^TO?M0HMVjdJ8F_V2S>4qtd3IGjr)o$LLGGh&*dFRDf5Ga#_EL)13?;v6vi2dWa?87xj{htsAe>?6;C2;9@lOIZy)QUL ze|kf3%CoHBK(s;UcYoHWu-sFmtuy>vr5NW1R}WmIzB>pO?RnpgWGtB<`vDEPvqd8C z1;aeKf!O&fu@}F^HuEC8_59U6@xMO(e)?2By>VF_vH|xx3{z=b$ z2xH<~i4EO1RhxF;7K0{jK3xiyQHCfdfkOwF2E(l9&0F~q!8}5DsCCmG57|ekT2;WA z9Hoj$nL0n!nUun_NA}&}#5_zrsXc7qaV75=)cQQo%lsWu3fEG6Zi2<{5$q);XFn*Q z1<|g5EHH86s`o|(nBvF}F{XNF6c7=)k!L}JR=^Q!w6Vh(L{xgCi}a6#T`l$xB^ld3 zyHJ%K&Td+O1wcd|g^TMy&U@A>zT)Y62IQnMEe3H1+kD1C8ocRC*IC$>vw1?ix*lA| z%lh&xFLKq5xK5NXHIs6Vmaid@*ir(>rxr$T{o|EybL)lf5Aq6x` zf6wQp6Aw?xsK2S5PT2Xz$R|`R<-Bx~qWBwZ%ZP`8V-7HGR*)=~is^DmcRi-baHU0H zgydnM&Ybs@2<)Tm{6trWO0Az;@v*li7+j}S)_jy zaQe<1+HQ=LUkX$^XQ;Zv6)Tb5@wJ6_EoM*~xyY|0S9_~OydW6jasSeaoZ@LChk{_T zC}5_V&IZg0zf)f*$XPIScetOk8_T%(w(U+#4OCfOhT&M;DZ;q51_cjk%=PX^Sm)I8 zRw0M%3a%ng(7ltkUhF|Um44Hu=}|VE(8oe;BiQ%f3xnCbS4`h9r_JN}rrgbW49D3@ z)_;|NAFB;n6YpWY&sUXezr*%CsFJO5*~^X1xBetPPi+h1eefFgi01yo35w9Ei83~5 zouZ@)q!wMSamNVV*%oj=IZ4=Sb+LR;s2Z)*|~`81_n)(#0D5Xoq92hj?zwAY(HUNdhMJ z_LZOl=#JN^wWKBl%bY_oSGOi*y2&5_3@QZGBrwb0oouru(ONk`oQ=aj4VC4fit*5# z0utWC0MmSP#pdl?e$Zlze7!@90rshH-mBz%3##5wvBAZj{HuPS3y=Ttsx@z^)+#9* zk(kMNNy5mSA|0HcQo`P$ig1OJsPJZ{a^Q|OXe`6vol`M;?Q6(nixWeHgF&b13-RVAuZ^jC($YGKWVPayTXYkLQ6m{P z$Fb3SrL12(#?*t$onA-Ge!n8f9QAk_-Z1!LlUQo~!1%XrQ<@8x$<(PT#+#4J+4OCuPN!lDQdRxNe)fS6b`d9=4;7C&g+70D?0NsnP+-=FE;?#^ zNcdE7{hZ={;Vp?-JEHlVYVS7dt+u!sB!Zs@P>EUmFP7ipFkgAWYz5uY?fKGoyU|84 z(mtk`0Ozg$N2AN`F)Lnu?+}2@!$_l~Z@0=Pz&U|i5 z`fy$P&(;%9mf4PE{@#PIo;nryLWt^M{%byb8x#HL`5WZ#%6-(^CbKvA3t*0ba)Me5 zEdcjprhJ&^FB{>3-X2KvRO$kioU5Z?pEf_CfA`96<=dNb2B(i)e{6{7+eXk}ema*S zvMK_0D>V%#u1L>yr0hc=lSCFw6NbuMe~D=O?=cM>Qn$m9`-h1X9*LVx%#X7W5bXS1 zwLgOOBS-n19v0Jf&3_ktc=TjiJ9zrg*puf8}!@K?IV|mhJ8;r-}natf@@;_NeZ|z~Zu%_LH45BNC_&Kq=4+UPHOWVUL#P zd6q0siz!zMfAV@u%2-m&{s*TUgOYoR+VJ)tI8wr$o&Z+|l zEGZR3kUOozZf`Ztlw_EhM6e3|R&E@=C15GX(7w4yL-(*^v32I`cEI04;#4ik#t%O0 zBv9mxuSniOHH?IV;t_Tr!bZ6}v2Ieq_!g;+8N8qSqvGS)r#62!e8Q6&kbZmh8F0#a zA7U;DAG59M4lJlQcML`ai_nO}4!@+pqcWeq*EI(;zgWIDO<+#N2}#Hdw7zB;ChB(}ld zB(@gku1QMnLt@s<>K}muNEVFp0zaZM#q5Ull-}vJ3mO`{OCXQ5!~+%fU_YcD6<3R~!@e=z0lI5#vtC?~8{M=j-5fO0_k-Xf1 zc3dZ@z$&#_9b&Q(G=7oT8w7|%P$^*DJRJu(iAyT#&%?ru0Wnv%yVj!OE0IVfbcIr6{KW$XGt_ z1O0F{3bvXYAL%SR1<1O=LEDWBPQ=Ezc7=Y95<#}wpWG%4(bS{^T5R|3q2K-d7Cv-j z8|~#C1}wH~5wtOwLBwza!SvR0*_Yv65Q z1FG77BnfhnzC1~D#(6X+0mAGp);5^MU7ObZ}ssUbP z;;O^m6uMvRN_xTZ)7bFvb1Qb2)rtKm)9lt#^S+O*@{Ar@u163A=oUfF*So01<;Q#R zTbTB}VzH*i##OmjRylxaDXFACXk8Kr_PN8lJHsEJ*AplywNeH(`_@C>b}& zI3k6wB{`a7NK=flxGOISd<0f(G2p(wF||!W9cPmx0lNB!9xm!}2M3UF{VDJuUT};G z*Vmn!+tl}6R~BIRu0AW(;N}&wnvM6P{!wJFHM4%KBNUklEmMP`BpGUG8kl(C0?Y*P zcA(tTV?}gToW~5vQmWruUVyBi8~$V9Lj-87&$WwgF%>4QnW)2x&7PK&|Lnf6^o?;E zD~|2Z5QT>$AI1^*dO%tqRM!X6U?yNedrK+?B38w8cw({KAp3V8w`_3u{Gfu@063Q~ ztStb=wNfSnhF zl^u&}MbHvm;V!I~m&`ArBs1D0yBtKvr3^Bgt~^xs%Ab#vXUMwseBx<{g@bwq2L38I zv0XrP zXv7`CuHbN5CGFiEoHT6o|;@Z68 zVUU>9*N^arXoD=s+?*6XW*(fh=u4PRn9c#;u`>DN$E$5@(!qDno{^}iJtHIO>FLM8 zdG{II^_B)Wfqw9JI?ZqUHVba^n}8v{c+uF#=AsKRJ}axfEqpMTXGTcT&j(~Jw3E&m z>gyBfneputKH#(+s96D(lU~!~mVtwSUY@O;ic6-Xrl#hUO+4&&o`c8tI(LFLQrzmD zK%v&25IYzNltFl+GAFS1Ei3yG$@9RLA4}Ks0R@nthAQ72dxXKnd&ds z=9xvdl$nDbxIi7=M4ewKN)po|Ng-yR*Qyc;?fVpxf|P3-CTjk&06PUHt95ecxhG0VQ-5EY%e z04g0o#ruAu<|1Ime@h65;Sy?E@r5(9L&5IuD@a?A-NE20bW?m3dUWC%jw{2Lj=lEG zp6)B_pIA`xeo=R)?|oGZoB|5T3Nt4jCcv{wG*ONn+b}Vmt*y=L6B`-5Lq}*!OP@7f z@jMW76`Y1GOg4gx$I8u>_0*1~fmD>px7|}wkri`(4!*uEBiD)v-~dwR)I|d$qd)v| z3kszwRh*Fe`iZgo_`Y3CRPcQOeCoW9ySLQ?mS$`Ho`wn)jvT|QuicywqYHJdd0L=e z@;sk6c>s}*`R$mNlHbCO*Q)kMk&277uUgud%kM zu#21iKgQlWs;RAOA3f(-k0R(1L8*r$QbdU;g48Gq2uN>AJ&H&ZBE2TD0SW?A6sZxA zE<^1p*1lZw9~jz2lDY{l>i+{)3Rc_gZ_cIp>=5d7e3;cKAK& z?an2M+CT)exd_}~(BR!(^4Uq>NPfibl_dL5O(FP1ztN5E^N8u;2MjyJG{AH3*>$~l zw9Y9;L(V0s0dj6d{^WlrvMYAudLF) z4Xw(lsn+B#vi@p$z}Qv|{PM;F_#4ivn+5kcNG8JkiUVI{;A3KnjEu|!?Xz3PJ|te; zbKpH5jm)UTY`UIzdI8A)Wd?apH~Um$c^4D?U1?EY)(DQzHL zLWUig3+T_o{?%Csz|R_L6W|PJ8kT|7d!h0ZP7VOJlpv`U5zA~W6$+5(miSTeAhYEV-;{qh_A-2qk9*X;;Y-|s47g5j3VrX>KRrK{7&(uPd z=VpIE>vSdX8;_6>eKYwn%KZa>p!XMBm-o+f2gv0N`$O4>3dgGSyX+SVDox(>XY0Zk z#XqWv5s{HMLhK}dC4713Nhmx~u^ypiJLVxrr9Pzn>JBeYFJk4dE9!Gg8q1F z_+VD^mC)YEAojfb55t7s0Q9rLGPmE^l|LfJ_39LutvHo~)8+gJk4+($x=hjBLAlbyRwb&mHbe%ZUR-)Sz1*UpPfav6dJ21C)cpdN# za)hqsPY;6a!U3;Z1?xXmh&*g*Z$H5>Ue1e#K}36Kkc%s{H5f zJXvbpZU+)RtLR&yuunf28_bXRC@Xl_@K2s0e*b8o!un(OG}Q#8Ml z0r#Vb0s=u^OibZrr1G7AalLNi{&cmVmA|{FzZEMe*Nl48_GQa|BhAIy%f1M)pFon$ zB20FNQ-rZGh7>1S!kQvRdfO)YD6+b!=vZ6bGC=mK?GBdoCB(%YZqo#A_QJ*=Ug4nD zuy7Q!zK&33H&+z3tl?k2dKI8VEmvZOmdQLv(ENYM#k0?faRTa4UjWTu47t8_cZ;$2 zkHnI~nQ6yvbd`JGsRH>QVHt}P`(|gkvxF88J}icisDYRYRz7-Ff$H}D)w#BbEbswq z8>jUmYlSBBZ+LkV5Ce&bUo;>Qw+YKQ@6_VW-k|3M;yBn^eu zXnx$Mhj?!SJiv}(Xp$?qd*y^Kz=RIZ1p~k@2>5ABh~sC^=2xyi=tcVi^Y?DCIgr?$ zoa!D~rmUR+Kq_VLkq$=@F8|6`aU+(ehgvh9{C8Bk83WXkLI>@bdQ}c!M(O9lypSt} z-M5$462mFQWe+Rh)X^@hi|?Hqsy=hq!6%DQ=HuNNE|+?{tu89ZNcCCZcN9oRWL2kW zIXQ*n{qD^ zldZq1I5M-7%BTn++$=3DA=Sxm00}MRh-AtUR}g5Bi1%zJo(}^N4^8|oG2kx#U>pSF z+1=eOJ>hX$U?1m{6YN5`r?O?wzI!VR%UEt8Pdrb@49x815AW?-xejt07(_uu#pTwr zX=jv-R6Q|RaTCy10B<3LtdGDs1>m55Gd)pomP$qXbEFGEG(vdp@Zdsk32mQpv1~+NS}N4w0Fjo(ix)=0|GfW15Z(L4dPouiXX){krKG zZEelm(p(+GT=*JQXjj}_BuGwI%g--{C(qhGyPV}0h!UKPOXeMFPf>~&%X9N9%}w1dvu~(pdTovY=M(V#)`i`7 zQo@}{1Gg=z2KlCmGmM*-ksVO4i9Po#yVA;L*^G~P9!h%ltRcw%6JS_?R3uur@g6ns z&x9Aesg!zA<*npO)Z4JIjjk?nB{B-|gHKaZvWyE;4Z@p_>BKoJqzn9IdO+<%>iS2lbD z0q`$JIN*KWeTWcCLUR#MP2D2hh2>IZV}7`Xs@iZRcgDWVH82mG3;F=6{YQL$$*<)I zBmLxGk)OuJ9|SyUMOxNec6#w;bpFIvB8>G<0&3!XM(cPS1bG+Ln7|jGrP*5l`f5#C zd3gg;jByya8eZp7+YJxIUQB=#{F4gBJN}h6GLiDI=M(o_a2i)aZ+9xWwpmj&82}Pd zQ3i@1=dNrWmh(A(A! zy!X|cxzluHd$DV4vb;czDr)~^D>Q|mGr`6Hpzl6I#eH=)2_LcNn9dmAuS2$L=HwM3 zTILb?sm1H71-&yB*R#qnk(}&%)s;`uVS}PgbF!U~$iv3hQs|mGu4S%MahjhP-s4|- z@iGdq>X6R;{6^IxWAdznIm3m( z#?qIs4BL&~B}scu>|EJ)=qK`$LHH=EI(YONdKdTX83C^Ey<3y&-1M?nCS7gt&2`)J z>?<`l*5QEfk!P-(C?48f!u-7?>*^^{SD~x6?I~AZuGiUggHbg)DJWN{n`>X7gmO-as_e8H*|9B-i58D zH~{6l)T|_V@RXxIIUgburr362?2>bs6XV$%MZgvK{k;4?)wO{i za;SAnn3pw1yPG2A&+2+#-E@fPyBV~)GWGhJbPYDQwyq9*hgPbs-z=rc1KjM`w;i(^_2BKyx50TS*YVzA%<%d_v!?F$8a_6GEXl!LYY3$NItYG-6b6r1LX(PlnVS1s+#lyRnr?2zzJ{ z06W~9R#iTWpIZcbaT7lY*tOP|z2VD?u3PplwrS3*JMSb?v~z5E^1QDoo+%E~%1+M} znK0}GQau=q!G;Fot=)ZTwDsqHJfU|Jn4YX|MV~h}?B2dNb()~Crk1b7y_!hNq1=*r zu(XYqt?|PA^=6yf_^ybp^qzdNY)v;he|PIN;~Vy8Ax(kXv~A*>TlPBn^nKaUINdRv)w0liGAY-}6*)VD≈L%-$4avB_j+|N9SYy|-qb2GL-_b1pA>BRfjH4T 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%0AuDnb_^*XS#746#(1wfx(4ST|Vuy-z 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 diff --git a/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png b/ios/Runner/Assets.xcassets/LaunchImage.imageset/LaunchImage@3x.png index 583188abeedb5df626ffc6f2e7be69477833693d..30a6888aa91f66b9c8573dacf83048b91482c261 100644 GIT binary patch literal 131617 zcmeFZ30RX?*Dg$}mDY*2DmWlG`Jz1LprUiZ4! z^WawsAB=HadL!HGJnQuiHNGx38_b`meT@mI4BY!~DV! z=idG#T4CO-dFHC<#INu6s(WPbIof|%U-H)7CIg$+vcV>4o2Ewzg{RhMd?SbyPTMTi zP^?_I{#LKx{n*%u7lDu2q=XOqDsK# zc4962hsY->$=QKQULlznHrq#pZbYSXMJ*C-WZp>pNIpqZsslh2{R|ES^ zZAB7Ti=eN`M^1k9(A^(@q6Io)gT5{^{ezM_$+YZt!V7Rwy_(}oS#Xbr>2aEXV8ELz zG1=`1DuveFO+qQJtO)R)-t^x0(+L)A#~#abmo5kh_#6@t`0b8>z!H4xw-EsWj}rm{ zW7h-(l%EI)h`2l}zNiX6Sa)4Z9`e^$J zdF>M$bw8vg)PMWrP{IXiOZA@>&aPETc>h4a^8uk#cUPFd>K^g)IpJYnDeg6}U<;0$ zd7P-(Wpih;VIm;P-;0#etk87$v1{4J>RoHp1EaE~1XE&kzf~{`c_XVrds~$?m9s8H ze(@B2``bpbucX=f%tAz8?4yDGKP+3{Iyx-xuvUm2gmpu1O1;#ZD2 znfE}x@xY*qd?V}lS7bz3PpkAS7blU5GnyoW04 zKi)d_6>-ZsEb0+i@b=yjqmA($lD}NM)49b~T&P^v|HN-q5nkEPuX$~GZLj&@Tl_aM z&u^aABrKiyC5C5k=q+`#(J}4EJmoF=sObm4FN_3*h<%shYxU5?=fqf5PvwPU zSnc~2Nwko~dJVUqa%zXE!{>4(LdO(l`)yCIJtF()7i*WA$unq++%0A29oMZ7cvINs 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�&9RR|V7u2;mSE5j+lu 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 Nr+%q?3r5z*b1us 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%0D7rc`5}ko!t}V*gc7_MUTIe7O@Br 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�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 From 4232781597f1d15f9669b85cc4a5e82162954c6a Mon Sep 17 00:00:00 2001 From: leynier Date: Sat, 17 Apr 2021 03:55:53 -0400 Subject: [PATCH 08/59] Comment PathUrlStrategy config --- lib/src/utils/configurations/configure_web.dart | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/src/utils/configurations/configure_web.dart b/lib/src/utils/configurations/configure_web.dart index ccc1829..d7b73c9 100644 --- a/lib/src/utils/configurations/configure_web.dart +++ b/lib/src/utils/configurations/configure_web.dart @@ -1,5 +1,5 @@ -import 'package:flutter_web_plugins/flutter_web_plugins.dart'; +// import 'package:flutter_web_plugins/flutter_web_plugins.dart'; void configureApp() { - setUrlStrategy(PathUrlStrategy()); + // setUrlStrategy(PathUrlStrategy()); } From 5de3daa949c839b1a16310da388c688c2cc6b29d Mon Sep 17 00:00:00 2001 From: leynier Date: Sat, 17 Apr 2021 04:03:24 -0400 Subject: [PATCH 09/59] Revert "Comment PathUrlStrategy config" This reverts commit 4232781597f1d15f9669b85cc4a5e82162954c6a. --- lib/src/utils/configurations/configure_web.dart | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/src/utils/configurations/configure_web.dart b/lib/src/utils/configurations/configure_web.dart index d7b73c9..ccc1829 100644 --- a/lib/src/utils/configurations/configure_web.dart +++ b/lib/src/utils/configurations/configure_web.dart @@ -1,5 +1,5 @@ -// import 'package:flutter_web_plugins/flutter_web_plugins.dart'; +import 'package:flutter_web_plugins/flutter_web_plugins.dart'; void configureApp() { - // setUrlStrategy(PathUrlStrategy()); + setUrlStrategy(PathUrlStrategy()); } From ed4c59d7d2e95f181832f4cb6d981f4fca350f93 Mon Sep 17 00:00:00 2001 From: leynier Date: Sat, 17 Apr 2021 04:03:32 -0400 Subject: [PATCH 10/59] Set subpath --- web/index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/web/index.html b/web/index.html index b1e01ee..fb416ff 100644 --- a/web/index.html +++ b/web/index.html @@ -11,7 +11,7 @@ Fore more details: * https://developer.mozilla.org/en-US/docs/Web/HTML/Element/base --> - + From c9170319724f2caedbaa0ca8c0b7f5f56f04ce0f Mon Sep 17 00:00:00 2001 From: leynier Date: Sat, 17 Apr 2021 04:12:06 -0400 Subject: [PATCH 11/59] Fix error in base url for web --- web/index.html | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/web/index.html b/web/index.html index fb416ff..4b34acf 100644 --- a/web/index.html +++ b/web/index.html @@ -11,7 +11,7 @@ Fore more details: * https://developer.mozilla.org/en-US/docs/Web/HTML/Element/base --> - + From 82248a0284258c0b15f0fea7147c955efce39fb8 Mon Sep 17 00:00:00 2001 From: Leonel Garcia Date: Sat, 17 Apr 2021 19:21:07 -0400 Subject: [PATCH 12/59] Add constants for terms and conditions messages --- lib/src/utils/constants/messages.dart | 31 +++++++++++++++++++++++++++ 1 file changed, 31 insertions(+) create mode 100644 lib/src/utils/constants/messages.dart diff --git a/lib/src/utils/constants/messages.dart b/lib/src/utils/constants/messages.dart new file mode 100644 index 0000000..7908e69 --- /dev/null +++ b/lib/src/utils/constants/messages.dart @@ -0,0 +1,31 @@ +// TERMS AND CONDITIONS TEXTS +const TERMS_AND_CONDITIONS_OF_USE_TITLE = + 'ÉTICA PARA EL EMPLEO DE LAS TECNOLOGÍAS EN LA UNIVERSIDAD DE LA HABANA'; + +const TERMS_AND_CONDITIONS_OF_USE_SUBTITLE = + ' Las redes y servicios de la Universidad de la Habana tienen como objetivo facilitar el intercambio de información, aprendizaje y trabajo colaborativo de sus usuarios, los que se comprometen a cumplir los siguientes principios en el uso de las tecnologías: '; + +const TERMS_AND_CONDITIONS_OF_USE_ENUM_TERMS = + '\n1.Cumplir con las disposiciones de seguridad informática vigentes a nivel nacional. ' + '\n' + '\n2.No realizar hechos delictivos ni lesivos a la dignidad humana. ' + '\n' + '\n3.No perjudicar a personas o instituciones. ' + '\n' + '\n4.No acceder sin autorización a información ajena. ' + '\n' + '\n5.No acceder o difundir información falsa, ni contraria a los principios éticos y morales de la sociedad. ' + '\n' + '\n6.No enviar spam. ' + '\n' + '\n7.No apropiarse de la producción intelectual de otras personas. ' + '\n' + '\n8.Ser responsable en el uso, diseño y desarrollo de aplicaciones informáticas. ' + '\n' + '\n9.Proteger los medios e información digital bajo su responsabilidad. ' + '\n' + '\n10.Alertar a la administración sobre comportamientos anormales en la red o los servicios, que puedan ser producto de ataques informáticos u otras causas. ' + '\n' + '\nLas cuentas asignadas a los usuarios serán auditadas con vistas a verificar el cumplimiento de la ética. ' + '\n' + '\nAcepto cumplir con todo lo antes expuesto.'; From 6953d99cce5b73fac3c320fdc55fd47fec9ef3aa Mon Sep 17 00:00:00 2001 From: Leonel Garcia Date: Sat, 17 Apr 2021 19:21:40 -0400 Subject: [PATCH 13/59] Dialog implementation for show and accept conditions in FlashHelper --- .../presentation/widgets/flash_helper.dart | 123 ++++++++++++++++++ 1 file changed, 123 insertions(+) diff --git a/lib/src/presentation/widgets/flash_helper.dart b/lib/src/presentation/widgets/flash_helper.dart index 62c87c2..9b1efe8 100644 --- a/lib/src/presentation/widgets/flash_helper.dart +++ b/lib/src/presentation/widgets/flash_helper.dart @@ -1,10 +1,15 @@ import 'dart:async'; import 'dart:collection'; +import 'dart:developer'; +import 'dart:ui'; import 'package:flash/flash.dart'; import 'package:flutter/material.dart'; import 'package:flutter/widgets.dart'; +import 'package:gestionuh/src/utils/constants/messages.dart'; +import 'package:gestionuh/src/presentation/widgets/buttons/default_button.dart'; + class _MessageItem { final String message; Completer> completer; @@ -398,6 +403,124 @@ class FlashHelper { }, ); } + + static Future aceptDeclineDialog(BuildContext context) { + bool acceptAvailable = false; + final scrollController = ScrollController(); + return showFlash( + context: context, + persistent: false, + onWillPop: () async => false, + builder: (context, controller) { + final theme = Theme.of(context); + + return StatefulBuilder( + builder: (context, setState) { + scrollController.addListener(() { + final maxScroll = scrollController.position.maxScrollExtent; + final currentScroll = scrollController.position.pixels; + log('scrolled, $currentScroll de $maxScroll'); + if (!acceptAvailable && maxScroll == currentScroll) { + log('available accept'); + setState(() { + acceptAvailable = true; + }); + } + }); + return SafeArea( + child: Flash.dialog( + controller: controller, + borderWidth: 3, + borderRadius: const BorderRadius.all(Radius.circular(8.0)), + child: FlashBar( + title: Text(TERMS_AND_CONDITIONS_OF_USE_TITLE, + style: theme.textTheme.headline6?.copyWith( + fontSize: 20.0, color: theme.primaryColor)), + message: Container( + padding: const EdgeInsets.all(3), + decoration: BoxDecoration( + borderRadius: + const BorderRadius.all(Radius.circular(8)), + boxShadow: [ + BoxShadow( + color: theme.primaryColor.withOpacity(0.05), + blurRadius: 1) + ]), + constraints: BoxConstraints( + maxWidth: MediaQuery.of(context).size.width - 400, + maxHeight: MediaQuery.of(context).size.height / 2, + ), + child: Stack( + children: [ + SingleChildScrollView( + controller: scrollController, + child: Column( + mainAxisSize: MainAxisSize.min, + children: [ + Text(TERMS_AND_CONDITIONS_OF_USE_SUBTITLE, + style: theme.textTheme.bodyText1 + ?.copyWith(color: theme.primaryColor)), + Text(TERMS_AND_CONDITIONS_OF_USE_ENUM_TERMS, + style: theme.textTheme.bodyText2), + ], + ), + ), + if (!acceptAvailable) + Positioned( + bottom: 10, + right: 1, + child: ElevatedButton( + style: ElevatedButton.styleFrom( + primary: Colors.white, + shape: const RoundedRectangleBorder( + borderRadius: BorderRadius.all( + Radius.circular(100))), + ), + onPressed: () { + scrollController.animateTo( + scrollController.position.maxScrollExtent, + curve: Curves.easeOut, + duration: const Duration(milliseconds: 300), + ); + }, + child: const Icon( + Icons.keyboard_arrow_down, + color: Colors.black45, + size: 30, + ), + )), + ], + ), + ), + leftBarIndicatorColor: theme.primaryColor, + actions: [ + GestionUhDefaultButton( + isSecundary: true, + onPressed: () { + scrollController.dispose(); + controller.dismiss(false); + }, + text: 'No Acepto', + // child: const Text('No acepto'), + ), + GestionUhDefaultButton( + onPressed: acceptAvailable + ? () { + scrollController.dispose(); + controller.dismiss(true); + } + : null, + text: 'Acepto', + ), + ], + ), + ), + ); + }, + ); + }, + ); + } } typedef ChildBuilder = Widget Function( From 9b4f0c41b5c0d6cd930c84af8837a5fedbce7deb Mon Sep 17 00:00:00 2001 From: Leonel Garcia Date: Sat, 17 Apr 2021 19:22:26 -0400 Subject: [PATCH 14/59] Fix button for secondary cases of usage --- lib/src/presentation/widgets/buttons/default_button.dart | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/lib/src/presentation/widgets/buttons/default_button.dart b/lib/src/presentation/widgets/buttons/default_button.dart index f695580..c857bf3 100644 --- a/lib/src/presentation/widgets/buttons/default_button.dart +++ b/lib/src/presentation/widgets/buttons/default_button.dart @@ -1,5 +1,6 @@ import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; + import 'package:gestionuh/src/presentation/theme.dart'; class GestionUhDefaultButton extends StatelessWidget { @@ -47,7 +48,10 @@ class GestionUhDefaultButton extends StatelessWidget { Text(text!, textScaleFactor: 1.25, style: isSecundary - ? Theme.of(context).textTheme.bodyText2 + ? Theme.of(context) + .primaryTextTheme + .button + ?.copyWith(color: Theme.of(context).primaryColor) : Theme.of(context).primaryTextTheme.button), if (text != null && icon != null) const SizedBox( From c2d496114e548447700a5cb84609dd83222935da Mon Sep 17 00:00:00 2001 From: Leonel Garcia Date: Sat, 17 Apr 2021 19:23:31 -0400 Subject: [PATCH 15/59] Accept terms flow in Registration page --- lib/src/presentation/pages/register_page.dart | 50 ++++++++++++++++--- 1 file changed, 44 insertions(+), 6 deletions(-) diff --git a/lib/src/presentation/pages/register_page.dart b/lib/src/presentation/pages/register_page.dart index 4b1f967..72eafe7 100644 --- a/lib/src/presentation/pages/register_page.dart +++ b/lib/src/presentation/pages/register_page.dart @@ -1,13 +1,14 @@ import 'package:collection/collection.dart' show IterableExtension; import 'package:flutter/material.dart'; import 'package:flutter_bloc/flutter_bloc.dart'; + +import 'package:gestionuh/src/utils/constants.dart'; +import 'package:gestionuh/src/utils/pair.dart'; +import 'package:gestionuh/src/utils/validators.dart'; import 'package:gestionuh/src/presentation/blocs.dart'; import 'package:gestionuh/src/presentation/widgets.dart'; import 'package:gestionuh/src/presentation/widgets/bottom_sheet.dart'; import 'package:gestionuh/src/presentation/widgets/flash_helper.dart'; -import 'package:gestionuh/src/utils/constants.dart'; -import 'package:gestionuh/src/utils/pair.dart'; -import 'package:gestionuh/src/utils/validators.dart'; class RegisterPage extends StatefulWidget { const RegisterPage({Key? key}) : super(key: key); @@ -19,6 +20,7 @@ class RegisterPage extends StatefulWidget { class _RegisterPageState extends State { late List> questions; late List questionsTaken; + late bool termsAccepted; late List answersTextControllers; TextEditingController ciController = TextEditingController(); @@ -40,6 +42,7 @@ class _RegisterPageState extends State { @override void initState() { super.initState(); + termsAccepted = false; questions = []; questionsTaken = []; answersTextControllers = List.generate( @@ -59,10 +62,20 @@ class _RegisterPageState extends State { return qFree; } + Future _showTermsAndConditionsDialog() async { + final accepted = await FlashHelper.aceptDeclineDialog( + context, + ); + setState(() { + termsAccepted = accepted ?? false; + }); + } + void _onRegisterAction() { if (!(_formKey.currentState?.validate() ?? false)) return; - if (questionsTaken.where((element) => element != -1).length != - NUMBER_OF_SECURITY_QUESTIONS_NEEDED) return; + if (!termsAccepted || + questionsTaken.where((element) => element != -1).length != + NUMBER_OF_SECURITY_QUESTIONS_NEEDED) return; final _questions = questions.map((e) => questionsTaken[e.second] >= 0 ? e : null).toList(); _questions.removeWhere((element) => element == null); @@ -223,10 +236,35 @@ class _RegisterPageState extends State { ); }, ), + TextButton( + onPressed: _showTermsAndConditionsDialog, + child: Row( + children: [ + Checkbox( + value: termsAccepted, + activeColor: Theme.of(context).primaryColor, + // ignore: avoid_returning_null_for_void + onChanged: (value) => + _showTermsAndConditionsDialog(), + ), + Text( + 'TÉRMINOS Y CONDICIONES DE USO', + maxLines: 2, + overflow: TextOverflow.fade, + softWrap: true, + style: Theme.of(context) + .textTheme + .subtitle2 + ?.copyWith( + color: Theme.of(context).primaryColor), + ), + ], + ), + ), const SizedBox(height: 10), GestionUhDefaultButton( text: 'Finalizar', - onPressed: _onRegisterAction, + onPressed: termsAccepted ? _onRegisterAction : null, ), const SizedBox(height: 30), ], From 5655469517362511321c575fd3bf61f0eebd1722 Mon Sep 17 00:00:00 2001 From: Leonel Garcia Date: Sat, 17 Apr 2021 19:24:03 -0400 Subject: [PATCH 16/59] Improve UI/UX in registration page --- lib/src/presentation/pages/register_page.dart | 117 +++++++----------- 1 file changed, 47 insertions(+), 70 deletions(-) diff --git a/lib/src/presentation/pages/register_page.dart b/lib/src/presentation/pages/register_page.dart index 72eafe7..4486f63 100644 --- a/lib/src/presentation/pages/register_page.dart +++ b/lib/src/presentation/pages/register_page.dart @@ -142,85 +142,61 @@ class _RegisterPageState extends State { child: Column( mainAxisSize: MainAxisSize.min, children: [ - Text( - 'Todos los campos son obligatorios.*', - style: Theme.of(context) - .textTheme - .headline6! - .copyWith(fontSize: 14, color: Colors.black45), - textAlign: TextAlign.center, - ), const SizedBox( - height: 30, + height: 10, + ), + GestionUhDefaultTextField( + labelText: 'Número de Carnet De Identidad', + labelStyle: headlineTextsTheme, + hintText: '###########', + autovalidateMode: AutovalidateMode.disabled, + controller: ciController, + validator: identityNumberCIValidator, + keyboardType: TextInputType.number, ), - Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - Text( - 'Número de Carnet De Identidad', - style: headlineTextsTheme, - ), - GestionUhDefaultTextField( - hintText: '###########', - autovalidateMode: AutovalidateMode.disabled, - controller: ciController, - validator: identityNumberCIValidator, - keyboardType: TextInputType.number, - ), - ]), const SizedBox( height: 15, ), - Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - Text( - 'Contraseña', - style: headlineTextsTheme, - ), - GestionUhDefaultTextField( - hintText: '********', - autovalidateMode: AutovalidateMode.disabled, - controller: passwordFirstController, - validator: safetyPasswordValidator, - keyboardType: TextInputType.visiblePassword, - borderRadius: const BorderRadius.only( - topLeft: Radius.circular(5), - bottomLeft: Radius.circular(5), - ), - ), - ]), - const SizedBox( - height: 20, + GestionUhDefaultTextField( + labelText: 'Contraseña', + labelStyle: headlineTextsTheme, + hintText: '********', + autovalidateMode: AutovalidateMode.disabled, + controller: passwordFirstController, + validator: safetyPasswordValidator, + keyboardType: TextInputType.visiblePassword, + borderRadius: const BorderRadius.only( + topLeft: Radius.circular(5), + bottomLeft: Radius.circular(5), + ), ), - Column( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - Text( - 'Repetir Contraseña', - style: headlineTextsTheme, - ), - GestionUhDefaultTextField( - hintText: '********', - autovalidateMode: AutovalidateMode.disabled, - controller: passwordSecondController, - validator: safetyPasswordValidator, - keyboardType: TextInputType.visiblePassword, - borderRadius: const BorderRadius.only( - topLeft: Radius.circular(5), - bottomLeft: Radius.circular(5), - ), - ), - ]), const SizedBox( height: 20, ), + GestionUhDefaultTextField( + labelText: 'Repetir Contraseña', + labelStyle: headlineTextsTheme, + hintText: '********', + autovalidateMode: AutovalidateMode.disabled, + controller: passwordSecondController, + validator: safetyPasswordValidator, + keyboardType: TextInputType.visiblePassword, + borderRadius: const BorderRadius.only( + topLeft: Radius.circular(5), + bottomLeft: Radius.circular(5), + ), + ), + const SizedBox(height: 60), + const Divider( + color: Colors.black54, + ), + const SizedBox(height: 10), Text( - 'Introduzca respuesta para las preguntas de seguridad de su preferencia.', - style: Theme.of(context) - .textTheme - .headline6! - .copyWith(fontSize: 14, color: Colors.black45), + 'PREGUNTAS DE SEGURIDAD', + style: Theme.of(context).textTheme.headline6!.copyWith( + fontSize: 14, + color: Colors.black54, + fontWeight: FontWeight.bold), textAlign: TextAlign.center, ), Builder( @@ -329,7 +305,7 @@ class _RegisterPageState extends State { children: [ DropdownButton( underline: Container(), - icon: const Icon(Icons.add_box_outlined), + icon: const Icon(Icons.arrow_drop_down), isExpanded: true, hint: Text( 'Seleccione una pregunta', @@ -366,6 +342,7 @@ class _RegisterPageState extends State { GestionUhDefaultTextField( hintText: 'Respuesta No.${index + 1}', validator: answerValidator, + autovalidateMode: AutovalidateMode.disabled, controller: answersTextControllers[index], ) else From eac4ac144efdc966d7f8d43d32b69f0824962639 Mon Sep 17 00:00:00 2001 From: Leonel Garcia Date: Sat, 17 Apr 2021 21:52:31 -0400 Subject: [PATCH 17/59] Fix DefaultTextFields height overflow --- .../presentation/widgets/textfields/default_textfield.dart | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/src/presentation/widgets/textfields/default_textfield.dart b/lib/src/presentation/widgets/textfields/default_textfield.dart index 9d08a3f..1b9c421 100644 --- a/lib/src/presentation/widgets/textfields/default_textfield.dart +++ b/lib/src/presentation/widgets/textfields/default_textfield.dart @@ -62,7 +62,7 @@ class GestionUhDefaultTextFieldState extends State { children: [ Expanded( child: SizedBox( - height: 40, + // height: 40, child: TextFormField( validator: widget.validator, inputFormatters: widget.inputFormatters ?? [], @@ -128,7 +128,7 @@ class GestionUhDefaultTextFieldState extends State { ), if (widget.keyboardType == TextInputType.visiblePassword) SizedBox( - height: 40, + // height: 40, width: 40, child: Material( color: Theme.of(context).primaryColor, From d81309fed5323e0d1646a717f9651993245814cd Mon Sep 17 00:00:00 2001 From: Leonel Garcia Date: Sat, 17 Apr 2021 21:54:53 -0400 Subject: [PATCH 18/59] Reset password repository using the entered current password --- lib/src/data/api/api.dart | 2 +- .../repository/auth_repository/auth_repository.dart | 12 +++++++----- 2 files changed, 8 insertions(+), 6 deletions(-) diff --git a/lib/src/data/api/api.dart b/lib/src/data/api/api.dart index 0e4119b..7db9a32 100644 --- a/lib/src/data/api/api.dart +++ b/lib/src/data/api/api.dart @@ -138,7 +138,7 @@ class GestionApi { ); } - Future resetPassword(String newPassw) async { + Future resetPassword(String currentPassw, String newPassw) async { if (Constants.testMode) return Status(status: true); Status response; diff --git a/lib/src/data/repository/auth_repository/auth_repository.dart b/lib/src/data/repository/auth_repository/auth_repository.dart index 382b648..6564aae 100644 --- a/lib/src/data/repository/auth_repository/auth_repository.dart +++ b/lib/src/data/repository/auth_repository/auth_repository.dart @@ -59,9 +59,10 @@ class AuthRepository { await localStorage.invalidateCredentials(); } - Future resetPassword(String password) async { + Future resetPassword( + String currentPassword, String newPassword) async { try { - final status = await api.resetPassword(password); + final status = await api.resetPassword(currentPassword, newPassword); if (status.status == false) { return status; } @@ -69,14 +70,15 @@ class AuthRepository { final credentials = await localStorage.getCredentials(); if (credentials == null) { - throw Exception('Credentials is null.'); + return Status()..error = 'Cierre sesión, por favor'; + // exception ---> 'Credentials is null.'; } // save new password - api.setLogin(credentials[USER_NAME] as String, password); + api.setLogin(credentials[USER_NAME] as String, newPassword); localStorage.updateCredentials( userName: credentials[USER_NAME] as String, - password: password, + password: newPassword, persist: credentials[USER_REMEMBERME] as bool, ); From 6bc5e163eee1b458ed542f75e07903410e69dad1 Mon Sep 17 00:00:00 2001 From: Leonel Garcia Date: Sat, 17 Apr 2021 21:55:31 -0400 Subject: [PATCH 19/59] Show error if can load questions at start --- lib/src/presentation/pages/register_page.dart | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/lib/src/presentation/pages/register_page.dart b/lib/src/presentation/pages/register_page.dart index bc8b92f..5255914 100644 --- a/lib/src/presentation/pages/register_page.dart +++ b/lib/src/presentation/pages/register_page.dart @@ -110,8 +110,9 @@ class _RegisterPageState extends State { if (state is RegisterUserFailure) { FlashHelper.errorBar(context, message: state.error); } else if (state is LoadInitialDataFailure) { + await FlashHelper.errorBar(context, message: state.error); Future.delayed( - const Duration(seconds: 2), + const Duration(seconds: 1), () => context .read() .add(QuestionsRequestedRegister()), From da3afa2fd9095e64357fc85d895ae0b7da59f644 Mon Sep 17 00:00:00 2001 From: Leonel Garcia Date: Sat, 17 Apr 2021 21:56:03 -0400 Subject: [PATCH 20/59] Add new entry for the current password in reset password page --- .../resetpassword_bloc.dart | 5 +- .../resetpassword_event.dart | 2 + .../pages/reset_password_page.dart | 69 +++++++++++-------- 3 files changed, 48 insertions(+), 28 deletions(-) diff --git a/lib/src/presentation/blocs/reset_password_bloc/resetpassword_bloc.dart b/lib/src/presentation/blocs/reset_password_bloc/resetpassword_bloc.dart index c2737c3..4eb4ca5 100644 --- a/lib/src/presentation/blocs/reset_password_bloc/resetpassword_bloc.dart +++ b/lib/src/presentation/blocs/reset_password_bloc/resetpassword_bloc.dart @@ -29,7 +29,10 @@ class ResetPasswordBloc extends Bloc { yield const ResetPasswordInitial(error: 'Las contraseñas no coinciden.'); return; } - final status = await authRepository.resetPassword(event.passwordFirst); + final status = await authRepository.resetPassword( + event.currentPassword, + event.passwordFirst, + ); if (status.status ?? false) { yield ResetPasswordSuccess(); } else { diff --git a/lib/src/presentation/blocs/reset_password_bloc/resetpassword_event.dart b/lib/src/presentation/blocs/reset_password_bloc/resetpassword_event.dart index a97ffa9..9b5792e 100644 --- a/lib/src/presentation/blocs/reset_password_bloc/resetpassword_event.dart +++ b/lib/src/presentation/blocs/reset_password_bloc/resetpassword_event.dart @@ -5,10 +5,12 @@ abstract class ResetPasswordEvent { } class ResetPasswordAttempted extends ResetPasswordEvent { + final String currentPassword; final String passwordFirst; final String passwordSecond; const ResetPasswordAttempted({ + required this.currentPassword, required this.passwordFirst, required this.passwordSecond, }); diff --git a/lib/src/presentation/pages/reset_password_page.dart b/lib/src/presentation/pages/reset_password_page.dart index 52d6a4c..bf4a966 100644 --- a/lib/src/presentation/pages/reset_password_page.dart +++ b/lib/src/presentation/pages/reset_password_page.dart @@ -17,6 +17,7 @@ class ResetPasswordPage extends StatefulWidget { } class _ResetPasswordPageState extends State { + final _passwordCurrentController = TextEditingController(); final _passwordFirstController = TextEditingController(); final _passwordSecondController = TextEditingController(); final _formPasswordKey = GlobalKey(); @@ -63,10 +64,7 @@ class _ResetPasswordPageState extends State { children: [ // Hints Area Padding( - padding: const EdgeInsets.symmetric( - horizontal: 5.0, - vertical: 16.0, - ), + padding: const EdgeInsets.symmetric(horizontal: 5.0), child: RichText( text: TextSpan( style: Theme.of(context) @@ -78,22 +76,13 @@ class _ResetPasswordPageState extends State { text: 'Su nueva contraseña debe tener:\n', style: Theme.of(context).textTheme.headline6, ), - const TextSpan( - text: '(1) Más de 8 caracteres.\n', - ), - const TextSpan( - text: '(2) Al menos una minúscula.\n', - ), - const TextSpan( - text: '(3) Al menos una mayúscula.\n', - ), - const TextSpan( - text: - '(4) Al menos un caracter especial, Ej. !\$@+.\n', - ), - const TextSpan( - text: '(5) Al menos un número.\n', - ), + ...const [ + '(1) Más de 8 caracteres.', + '(2) Al menos una minúscula.', + '(3) Al menos una mayúscula.', + '(4) Al menos un caracter especial, Ej. !\$@+.', + '(5) Al menos un número.', + ].map((e) => TextSpan(text: '$e\n')), ]), ), ), @@ -104,12 +93,14 @@ class _ResetPasswordPageState extends State { child: Column( mainAxisSize: MainAxisSize.min, children: [ + // Current password input Padding( padding: const EdgeInsets.symmetric(vertical: 8.0), child: GestionUhDefaultTextField( - labelText: 'Contraseña*', - controller: _passwordFirstController, + labelText: 'Contraseña Actual', + hintText: '********', + controller: _passwordCurrentController, validator: safetyPasswordValidator, autovalidateMode: AutovalidateMode.disabled, keyboardType: TextInputType.visiblePassword, @@ -120,13 +111,33 @@ class _ResetPasswordPageState extends State { ), ), const SizedBox( - height: 10, + height: 30, + child: Divider( + color: Colors.black54, + )), + Padding( + padding: + const EdgeInsets.symmetric(vertical: 8.0), + child: GestionUhDefaultTextField( + labelText: 'Contraseña Nueva*', + hintText: '********', + controller: _passwordFirstController, + validator: safetyPasswordValidator, + autovalidateMode: AutovalidateMode.disabled, + keyboardType: TextInputType.visiblePassword, + borderRadius: const BorderRadius.only( + topLeft: Radius.circular(5), + bottomLeft: Radius.circular(5), + ), + ), ), + Padding( padding: const EdgeInsets.symmetric(vertical: 8.0), child: GestionUhDefaultTextField( labelText: 'Repetir Contraseña*', + hintText: '********', controller: _passwordSecondController, validator: safetyPasswordValidator, autovalidateMode: AutovalidateMode.disabled, @@ -140,15 +151,14 @@ class _ResetPasswordPageState extends State { ], ), ), - const SizedBox( - height: 25, - ), + const SizedBox(height: 25), GestionUhDefaultButton( text: 'Actualizar Contraseña', onPressed: state is ResetPasswordInProgress ? null : () => _resetPassword(context), ), + const SizedBox(height: 30) ], ), ), @@ -160,13 +170,18 @@ class _ResetPasswordPageState extends State { void _resetPassword(BuildContext context) { if (_formPasswordKey.currentState!.validate()) { + final String currentPassword = _passwordCurrentController.text; final String passwordFirst = _passwordFirstController.text; final String passwordSecond = _passwordSecondController.text; + log('Current Password $currentPassword'); log('Password 1 $passwordFirst'); log('Password 2 $passwordSecond'); context.read().add( ResetPasswordAttempted( - passwordFirst: passwordFirst, passwordSecond: passwordSecond), + currentPassword: currentPassword, + passwordFirst: passwordFirst, + passwordSecond: passwordSecond, + ), ); } } From b75dab47ef0f256b27208ca6265832093e19c6cd Mon Sep 17 00:00:00 2001 From: Leonel Garcia Date: Sun, 18 Apr 2021 02:03:19 -0400 Subject: [PATCH 21/59] Fix overflow in Checkbox text in register page --- lib/src/presentation/pages/register_page.dart | 45 ++++++++----------- 1 file changed, 18 insertions(+), 27 deletions(-) diff --git a/lib/src/presentation/pages/register_page.dart b/lib/src/presentation/pages/register_page.dart index 5255914..246c765 100644 --- a/lib/src/presentation/pages/register_page.dart +++ b/lib/src/presentation/pages/register_page.dart @@ -229,33 +229,24 @@ class _RegisterPageState extends State { ); }, ), - TextButton( - onPressed: _showTermsAndConditionsDialog, - child: Row( - children: [ - Checkbox( - value: termsAccepted, - activeColor: Theme.of(context).primaryColor, - // ignore: avoid_returning_null_for_void - onChanged: (value) => - _showTermsAndConditionsDialog(), - ), - Text( - 'TÉRMINOS Y CONDICIONES DE USO', - maxLines: 2, - overflow: TextOverflow.fade, - softWrap: true, - style: Theme.of(context) - .textTheme - .subtitle2 - ?.copyWith( - color: - Theme.of(context).primaryColor), - ), - ], - ), - ), - const SizedBox(height: 10), + CheckboxListTile( + controlAffinity: ListTileControlAffinity.leading, + dense: true, + activeColor: Theme.of(context).primaryColor, + value: termsAccepted, + title: Text( + 'ACEPTO LOS TÉRMINOS Y CONDICIONES', + overflow: TextOverflow.fade, + softWrap: true, + style: Theme.of(context) + .textTheme + .subtitle2 + ?.copyWith( + color: Theme.of(context).primaryColor), + ), + onChanged: (value) => + _showTermsAndConditionsDialog()), + const SizedBox(height: 15), GestionUhDefaultButton( text: 'Finalizar', onPressed: termsAccepted ? _onRegisterAction : null, From 931cadb4722f76955e5c5a3088568a7577fd530f Mon Sep 17 00:00:00 2001 From: Leonel Garcia Date: Sun, 18 Apr 2021 02:32:33 -0400 Subject: [PATCH 22/59] Fix for cases that there is no need to scroll in Terms and Condition dialog --- lib/src/presentation/widgets/flash_helper.dart | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/lib/src/presentation/widgets/flash_helper.dart b/lib/src/presentation/widgets/flash_helper.dart index 9b1efe8..72c2594 100644 --- a/lib/src/presentation/widgets/flash_helper.dart +++ b/lib/src/presentation/widgets/flash_helper.dart @@ -427,6 +427,18 @@ class FlashHelper { }); } }); + WidgetsBinding.instance!.addPostFrameCallback((_) { + // in case that there is no need to scroll + if (!acceptAvailable && + scrollController.position.pixels == + scrollController.position.maxScrollExtent) { + log('available accept'); + setState(() { + acceptAvailable = true; + }); + } + }); + return SafeArea( child: Flash.dialog( controller: controller, From 7bc15002a7384baa14b7e4aa31a1272226299009 Mon Sep 17 00:00:00 2001 From: Leonel Garcia Date: Sun, 18 Apr 2021 02:33:34 -0400 Subject: [PATCH 23/59] Use Dynamic size instead box constraint in Terms and Conditions dialog --- lib/src/presentation/widgets/flash_helper.dart | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/lib/src/presentation/widgets/flash_helper.dart b/lib/src/presentation/widgets/flash_helper.dart index 72c2594..e966dc1 100644 --- a/lib/src/presentation/widgets/flash_helper.dart +++ b/lib/src/presentation/widgets/flash_helper.dart @@ -449,6 +449,7 @@ class FlashHelper { style: theme.textTheme.headline6?.copyWith( fontSize: 20.0, color: theme.primaryColor)), message: Container( + height: MediaQuery.of(context).size.height * 0.58, padding: const EdgeInsets.all(3), decoration: BoxDecoration( borderRadius: @@ -458,10 +459,6 @@ class FlashHelper { color: theme.primaryColor.withOpacity(0.05), blurRadius: 1) ]), - constraints: BoxConstraints( - maxWidth: MediaQuery.of(context).size.width - 400, - maxHeight: MediaQuery.of(context).size.height / 2, - ), child: Stack( children: [ SingleChildScrollView( From a3b504a40a6d4ddffe7c7beee97992d892cc9825 Mon Sep 17 00:00:00 2001 From: Leonel Garcia Date: Sun, 18 Apr 2021 02:42:05 -0400 Subject: [PATCH 24/59] Remove logs an substitute the notifications infoBar for successBar --- lib/src/presentation/pages/register_page.dart | 2 +- lib/src/presentation/pages/reset_password_page.dart | 5 +---- lib/src/presentation/widgets/flash_helper.dart | 4 ---- 3 files changed, 2 insertions(+), 9 deletions(-) diff --git a/lib/src/presentation/pages/register_page.dart b/lib/src/presentation/pages/register_page.dart index 246c765..b5d1c20 100644 --- a/lib/src/presentation/pages/register_page.dart +++ b/lib/src/presentation/pages/register_page.dart @@ -118,7 +118,7 @@ class _RegisterPageState extends State { .add(QuestionsRequestedRegister()), ); } else if (state is RegisterUserSuccess) { - FlashHelper.infoBar(context, + FlashHelper.successBar(context, message: 'El usuario fue registrado correctamente.'); } }, diff --git a/lib/src/presentation/pages/reset_password_page.dart b/lib/src/presentation/pages/reset_password_page.dart index bf4a966..64ba2b1 100644 --- a/lib/src/presentation/pages/reset_password_page.dart +++ b/lib/src/presentation/pages/reset_password_page.dart @@ -44,7 +44,7 @@ class _ResetPasswordPageState extends State { FlashHelper.errorBar(context, message: state.error); } if (state is ResetPasswordSuccess) { - FlashHelper.infoBar(context, + FlashHelper.successBar(context, message: 'La contraseña ha sido actualizada correctamente.'); } }, @@ -173,9 +173,6 @@ class _ResetPasswordPageState extends State { final String currentPassword = _passwordCurrentController.text; final String passwordFirst = _passwordFirstController.text; final String passwordSecond = _passwordSecondController.text; - log('Current Password $currentPassword'); - log('Password 1 $passwordFirst'); - log('Password 2 $passwordSecond'); context.read().add( ResetPasswordAttempted( currentPassword: currentPassword, diff --git a/lib/src/presentation/widgets/flash_helper.dart b/lib/src/presentation/widgets/flash_helper.dart index e966dc1..7693411 100644 --- a/lib/src/presentation/widgets/flash_helper.dart +++ b/lib/src/presentation/widgets/flash_helper.dart @@ -1,6 +1,5 @@ import 'dart:async'; import 'dart:collection'; -import 'dart:developer'; import 'dart:ui'; import 'package:flash/flash.dart'; @@ -419,9 +418,7 @@ class FlashHelper { scrollController.addListener(() { final maxScroll = scrollController.position.maxScrollExtent; final currentScroll = scrollController.position.pixels; - log('scrolled, $currentScroll de $maxScroll'); if (!acceptAvailable && maxScroll == currentScroll) { - log('available accept'); setState(() { acceptAvailable = true; }); @@ -432,7 +429,6 @@ class FlashHelper { if (!acceptAvailable && scrollController.position.pixels == scrollController.position.maxScrollExtent) { - log('available accept'); setState(() { acceptAvailable = true; }); From 47126c79928d7844cbfa382aab9ba971af79ff36 Mon Sep 17 00:00:00 2001 From: Leonel Garcia Date: Sun, 18 Apr 2021 03:14:30 -0400 Subject: [PATCH 25/59] Fix and Sort imports in the complete project --- lib/deps_injector.dart | 5 +++-- lib/src/data/api/api.dart | 3 ++- lib/src/data/local/local_storage.dart | 3 ++- lib/src/data/models/auth.dart | 3 ++- lib/src/data/models/error.dart | 3 ++- lib/src/data/models/login.dart | 3 ++- lib/src/data/models/mail_quota.dart | 3 ++- lib/src/data/models/pass_reset.dart | 3 ++- lib/src/data/models/password_edit_data.dart | 3 ++- lib/src/data/models/password_reset_data.dart | 3 ++- lib/src/data/models/password_reset_user_id.dart | 3 ++- lib/src/data/models/quota.dart | 3 ++- lib/src/data/models/security_questions.dart | 3 ++- lib/src/data/models/user_ci.dart | 3 ++- lib/src/data/models/user_data.dart | 3 ++- lib/src/data/models/user_id.dart | 3 ++- lib/src/presentation/blocs/login_bloc/login_bloc.dart | 1 + .../blocs/mail_quota_bloc/mail_quota_bloc.dart | 1 + lib/src/presentation/blocs/profile_bloc/profile_bloc.dart | 1 + lib/src/presentation/blocs/quota_bloc/quota_bloc.dart | 1 + .../recover_password_bloc/recover_password_bloc.dart | 3 ++- .../blocs/reset_password_bloc/resetpassword_bloc.dart | 1 + lib/src/presentation/pages.dart | 2 ++ lib/src/presentation/pages/about_page.dart | 5 +++-- lib/src/presentation/pages/login_page.dart | 3 ++- lib/src/presentation/pages/mail_quotas_page.dart | 3 ++- lib/src/presentation/pages/profile_page.dart | 3 ++- lib/src/presentation/pages/quota_page.dart | 3 ++- lib/src/presentation/pages/recover_password_page.dart | 3 ++- lib/src/presentation/pages/register_page.dart | 8 ++++---- lib/src/presentation/pages/reset_password_page.dart | 7 +++---- lib/src/presentation/widgets/bottom_sheet.dart | 1 + lib/src/presentation/widgets/drawers/default_drawer.dart | 1 + lib/src/presentation/widgets/flash_helper.dart | 2 +- lib/src/utils/constants.dart | 1 + lib/src/utils/constants/storage_keys.dart | 2 +- 36 files changed, 67 insertions(+), 35 deletions(-) diff --git a/lib/deps_injector.dart b/lib/deps_injector.dart index 6b8499c..f1193bc 100644 --- a/lib/deps_injector.dart +++ b/lib/deps_injector.dart @@ -1,10 +1,11 @@ import 'package:flutter_secure_storage/flutter_secure_storage.dart'; +import 'package:get_it/get_it.dart'; +import 'package:shared_preferences/shared_preferences.dart'; + import 'package:gestionuh/src/data/api/api.dart'; import 'package:gestionuh/src/data/local.dart'; import 'package:gestionuh/src/data/repository.dart'; import 'package:gestionuh/src/presentation/blocs.dart'; -import 'package:get_it/get_it.dart'; -import 'package:shared_preferences/shared_preferences.dart'; final di = GetIt.instance; diff --git a/lib/src/data/api/api.dart b/lib/src/data/api/api.dart index 7db9a32..fd01f3f 100644 --- a/lib/src/data/api/api.dart +++ b/lib/src/data/api/api.dart @@ -1,6 +1,7 @@ import 'dart:convert'; import 'package:dio/dio.dart'; + import 'package:gestionuh/src/data/models.dart'; import 'package:gestionuh/src/utils/constants.dart'; @@ -27,7 +28,7 @@ class GestionApi { final Auth response = Auth(); if (userName == null || password == null) { - response.error = 'Missing User Name or Password'; + response.error = 'Missing User Name or Password'; // dead code return response; } diff --git a/lib/src/data/local/local_storage.dart b/lib/src/data/local/local_storage.dart index 529e1a1..46780ea 100644 --- a/lib/src/data/local/local_storage.dart +++ b/lib/src/data/local/local_storage.dart @@ -2,9 +2,10 @@ import 'dart:io' show Platform; import 'package:flutter/foundation.dart' show kIsWeb; import 'package:flutter_secure_storage/flutter_secure_storage.dart'; -import 'package:gestionuh/src/utils/constants.dart'; import 'package:shared_preferences/shared_preferences.dart'; +import 'package:gestionuh/src/utils/constants.dart'; + abstract class ILocalStorage { //Account-Credentials Future loadSession(); diff --git a/lib/src/data/models/auth.dart b/lib/src/data/models/auth.dart index 33ca826..310f0ef 100644 --- a/lib/src/data/models/auth.dart +++ b/lib/src/data/models/auth.dart @@ -1,6 +1,7 @@ -import 'package:gestionuh/src/data/models/base_model.dart'; import 'package:json_annotation/json_annotation.dart'; +import 'package:gestionuh/src/data/models/base_model.dart'; + part 'auth.g.dart'; @JsonSerializable(explicitToJson: true) diff --git a/lib/src/data/models/error.dart b/lib/src/data/models/error.dart index cfef5e1..a1361b2 100644 --- a/lib/src/data/models/error.dart +++ b/lib/src/data/models/error.dart @@ -1,6 +1,7 @@ -import 'package:gestionuh/src/data/models/base_model.dart'; import 'package:json_annotation/json_annotation.dart'; +import 'package:gestionuh/src/data/models/base_model.dart'; + part 'error.g.dart'; @JsonSerializable(explicitToJson: true) diff --git a/lib/src/data/models/login.dart b/lib/src/data/models/login.dart index 8dadb47..b85ad69 100644 --- a/lib/src/data/models/login.dart +++ b/lib/src/data/models/login.dart @@ -1,6 +1,7 @@ -import 'package:gestionuh/src/data/models/base_model.dart'; import 'package:json_annotation/json_annotation.dart'; +import 'package:gestionuh/src/data/models/base_model.dart'; + part 'login.g.dart'; @JsonSerializable(explicitToJson: true) diff --git a/lib/src/data/models/mail_quota.dart b/lib/src/data/models/mail_quota.dart index df8ad54..9a8765f 100644 --- a/lib/src/data/models/mail_quota.dart +++ b/lib/src/data/models/mail_quota.dart @@ -1,6 +1,7 @@ -import 'package:gestionuh/src/data/models/base_model.dart'; import 'package:json_annotation/json_annotation.dart'; +import 'package:gestionuh/src/data/models/base_model.dart'; + part 'mail_quota.g.dart'; @JsonSerializable(explicitToJson: true) diff --git a/lib/src/data/models/pass_reset.dart b/lib/src/data/models/pass_reset.dart index 8e66386..0b2672a 100644 --- a/lib/src/data/models/pass_reset.dart +++ b/lib/src/data/models/pass_reset.dart @@ -1,6 +1,7 @@ -import 'package:gestionuh/src/data/models/base_model.dart'; import 'package:json_annotation/json_annotation.dart'; +import 'package:gestionuh/src/data/models/base_model.dart'; + part 'pass_reset.g.dart'; @JsonSerializable(explicitToJson: true) diff --git a/lib/src/data/models/password_edit_data.dart b/lib/src/data/models/password_edit_data.dart index b507bb0..4cd9448 100644 --- a/lib/src/data/models/password_edit_data.dart +++ b/lib/src/data/models/password_edit_data.dart @@ -1,6 +1,7 @@ -import 'package:gestionuh/src/data/models/base_model.dart'; import 'package:json_annotation/json_annotation.dart'; +import 'package:gestionuh/src/data/models/base_model.dart'; + part 'password_edit_data.g.dart'; @JsonSerializable(explicitToJson: true) diff --git a/lib/src/data/models/password_reset_data.dart b/lib/src/data/models/password_reset_data.dart index 3b0cf4b..39ca0c3 100644 --- a/lib/src/data/models/password_reset_data.dart +++ b/lib/src/data/models/password_reset_data.dart @@ -1,6 +1,7 @@ -import 'package:gestionuh/src/data/models/base_model.dart'; import 'package:json_annotation/json_annotation.dart'; +import 'package:gestionuh/src/data/models/base_model.dart'; + part 'password_reset_data.g.dart'; @JsonSerializable(explicitToJson: true) diff --git a/lib/src/data/models/password_reset_user_id.dart b/lib/src/data/models/password_reset_user_id.dart index e93c51e..b3e8668 100644 --- a/lib/src/data/models/password_reset_user_id.dart +++ b/lib/src/data/models/password_reset_user_id.dart @@ -1,6 +1,7 @@ -import 'package:gestionuh/src/data/models/base_model.dart'; import 'package:json_annotation/json_annotation.dart'; +import 'package:gestionuh/src/data/models/base_model.dart'; + part 'password_reset_user_id.g.dart'; @JsonSerializable(explicitToJson: true) diff --git a/lib/src/data/models/quota.dart b/lib/src/data/models/quota.dart index e8eeff7..4fdf58c 100644 --- a/lib/src/data/models/quota.dart +++ b/lib/src/data/models/quota.dart @@ -1,6 +1,7 @@ -import 'package:gestionuh/src/data/models/base_model.dart'; import 'package:json_annotation/json_annotation.dart'; +import 'package:gestionuh/src/data/models/base_model.dart'; + part 'quota.g.dart'; @JsonSerializable(explicitToJson: true) diff --git a/lib/src/data/models/security_questions.dart b/lib/src/data/models/security_questions.dart index 2aa4a69..a285fa2 100644 --- a/lib/src/data/models/security_questions.dart +++ b/lib/src/data/models/security_questions.dart @@ -1,6 +1,7 @@ -import 'package:gestionuh/src/data/models/base_model.dart'; import 'package:json_annotation/json_annotation.dart'; +import 'package:gestionuh/src/data/models/base_model.dart'; + part 'security_questions.g.dart'; @JsonSerializable(explicitToJson: true) diff --git a/lib/src/data/models/user_ci.dart b/lib/src/data/models/user_ci.dart index 10a6beb..e7a602a 100644 --- a/lib/src/data/models/user_ci.dart +++ b/lib/src/data/models/user_ci.dart @@ -1,6 +1,7 @@ -import 'package:gestionuh/src/data/models/base_model.dart'; import 'package:json_annotation/json_annotation.dart'; +import 'package:gestionuh/src/data/models/base_model.dart'; + part 'user_ci.g.dart'; @JsonSerializable(explicitToJson: true) diff --git a/lib/src/data/models/user_data.dart b/lib/src/data/models/user_data.dart index 4112b0e..558c471 100644 --- a/lib/src/data/models/user_data.dart +++ b/lib/src/data/models/user_data.dart @@ -1,6 +1,7 @@ -import 'package:gestionuh/src/data/models/base_model.dart'; import 'package:json_annotation/json_annotation.dart'; +import 'package:gestionuh/src/data/models/base_model.dart'; + part 'user_data.g.dart'; @JsonSerializable(explicitToJson: true) diff --git a/lib/src/data/models/user_id.dart b/lib/src/data/models/user_id.dart index da65fc3..66f7d17 100644 --- a/lib/src/data/models/user_id.dart +++ b/lib/src/data/models/user_id.dart @@ -1,6 +1,7 @@ -import 'package:gestionuh/src/data/models/base_model.dart'; import 'package:json_annotation/json_annotation.dart'; +import 'package:gestionuh/src/data/models/base_model.dart'; + part 'user_id.g.dart'; @JsonSerializable(explicitToJson: true) diff --git a/lib/src/presentation/blocs/login_bloc/login_bloc.dart b/lib/src/presentation/blocs/login_bloc/login_bloc.dart index 88e2ec7..b0b4309 100644 --- a/lib/src/presentation/blocs/login_bloc/login_bloc.dart +++ b/lib/src/presentation/blocs/login_bloc/login_bloc.dart @@ -1,4 +1,5 @@ import 'package:flutter_bloc/flutter_bloc.dart'; + import 'package:gestionuh/src/data/repository.dart'; import 'package:gestionuh/src/utils/constants.dart'; diff --git a/lib/src/presentation/blocs/mail_quota_bloc/mail_quota_bloc.dart b/lib/src/presentation/blocs/mail_quota_bloc/mail_quota_bloc.dart index 77f8cca..976ab9b 100644 --- a/lib/src/presentation/blocs/mail_quota_bloc/mail_quota_bloc.dart +++ b/lib/src/presentation/blocs/mail_quota_bloc/mail_quota_bloc.dart @@ -1,4 +1,5 @@ import 'package:flutter_bloc/flutter_bloc.dart'; + import 'package:gestionuh/src/data/models.dart'; import 'package:gestionuh/src/data/repository.dart'; import 'package:gestionuh/src/utils/constants.dart'; diff --git a/lib/src/presentation/blocs/profile_bloc/profile_bloc.dart b/lib/src/presentation/blocs/profile_bloc/profile_bloc.dart index bac8cbd..5370186 100644 --- a/lib/src/presentation/blocs/profile_bloc/profile_bloc.dart +++ b/lib/src/presentation/blocs/profile_bloc/profile_bloc.dart @@ -1,4 +1,5 @@ import 'package:flutter_bloc/flutter_bloc.dart'; + import 'package:gestionuh/src/data/models.dart'; import 'package:gestionuh/src/data/repository.dart'; import 'package:gestionuh/src/utils/constants.dart'; diff --git a/lib/src/presentation/blocs/quota_bloc/quota_bloc.dart b/lib/src/presentation/blocs/quota_bloc/quota_bloc.dart index 4ec5bf5..1f302ba 100644 --- a/lib/src/presentation/blocs/quota_bloc/quota_bloc.dart +++ b/lib/src/presentation/blocs/quota_bloc/quota_bloc.dart @@ -1,4 +1,5 @@ import 'package:flutter_bloc/flutter_bloc.dart'; + import 'package:gestionuh/src/data/models.dart'; import 'package:gestionuh/src/data/repository.dart'; import 'package:gestionuh/src/utils/constants.dart'; diff --git a/lib/src/presentation/blocs/recover_password_bloc/recover_password_bloc.dart b/lib/src/presentation/blocs/recover_password_bloc/recover_password_bloc.dart index 16da32c..9568539 100644 --- a/lib/src/presentation/blocs/recover_password_bloc/recover_password_bloc.dart +++ b/lib/src/presentation/blocs/recover_password_bloc/recover_password_bloc.dart @@ -2,9 +2,10 @@ import 'dart:async'; import 'package:bloc/bloc.dart'; import 'package:flutter/material.dart'; +import 'package:meta/meta.dart'; + import 'package:gestionuh/src/data/models.dart'; import 'package:gestionuh/src/data/repository.dart'; -import 'package:meta/meta.dart'; import 'package:gestionuh/src/utils/constants.dart'; part 'recover_password_event.dart'; diff --git a/lib/src/presentation/blocs/reset_password_bloc/resetpassword_bloc.dart b/lib/src/presentation/blocs/reset_password_bloc/resetpassword_bloc.dart index 4eb4ca5..1ff98ff 100644 --- a/lib/src/presentation/blocs/reset_password_bloc/resetpassword_bloc.dart +++ b/lib/src/presentation/blocs/reset_password_bloc/resetpassword_bloc.dart @@ -1,6 +1,7 @@ import 'dart:async'; import 'package:bloc/bloc.dart'; + import 'package:gestionuh/src/data/repository.dart'; part 'resetpassword_event.dart'; diff --git a/lib/src/presentation/pages.dart b/lib/src/presentation/pages.dart index c160033..5bab0fe 100644 --- a/lib/src/presentation/pages.dart +++ b/lib/src/presentation/pages.dart @@ -1,6 +1,8 @@ +export 'pages/about_page.dart'; export 'pages/login_page.dart'; export 'pages/mail_quotas_page.dart'; export 'pages/profile_page.dart'; export 'pages/quota_page.dart'; export 'pages/recover_password_page.dart'; +export 'pages/register_page.dart'; export 'pages/reset_password_page.dart'; diff --git a/lib/src/presentation/pages/about_page.dart b/lib/src/presentation/pages/about_page.dart index f532227..336d2dc 100644 --- a/lib/src/presentation/pages/about_page.dart +++ b/lib/src/presentation/pages/about_page.dart @@ -1,11 +1,12 @@ import 'package:flutter/material.dart'; +import 'package:responsive_builder/responsive_builder.dart'; +import 'package:url_launcher/url_launcher.dart'; + import 'package:gestionuh/deps_injector.dart'; import 'package:gestionuh/src/data/repository.dart'; import 'package:gestionuh/src/presentation/widgets.dart'; import 'package:gestionuh/src/presentation/widgets/flash_helper.dart'; import 'package:gestionuh/src/utils/constants.dart'; -import 'package:responsive_builder/responsive_builder.dart'; -import 'package:url_launcher/url_launcher.dart'; class AboutInformationPage extends StatelessWidget { const AboutInformationPage({Key? key}) : super(key: key); diff --git a/lib/src/presentation/pages/login_page.dart b/lib/src/presentation/pages/login_page.dart index 758cef2..5a4e791 100644 --- a/lib/src/presentation/pages/login_page.dart +++ b/lib/src/presentation/pages/login_page.dart @@ -1,5 +1,7 @@ import 'package:flutter/material.dart'; import 'package:flutter_bloc/flutter_bloc.dart'; +import 'package:responsive_builder/responsive_builder.dart'; + import 'package:gestionuh/deps_injector.dart'; import 'package:gestionuh/src/data/local/local_storage.dart'; import 'package:gestionuh/src/data/repository.dart'; @@ -8,7 +10,6 @@ import 'package:gestionuh/src/presentation/widgets.dart'; import 'package:gestionuh/src/presentation/widgets/bottom_sheet.dart'; import 'package:gestionuh/src/presentation/widgets/flash_helper.dart'; import 'package:gestionuh/src/utils/constants/routes.dart'; -import 'package:responsive_builder/responsive_builder.dart'; class LoginPage extends StatefulWidget { const LoginPage({Key? key}) : super(key: key); diff --git a/lib/src/presentation/pages/mail_quotas_page.dart b/lib/src/presentation/pages/mail_quotas_page.dart index 3b0247c..1c324bf 100644 --- a/lib/src/presentation/pages/mail_quotas_page.dart +++ b/lib/src/presentation/pages/mail_quotas_page.dart @@ -1,9 +1,10 @@ import 'package:flutter/material.dart'; import 'package:flutter_bloc/flutter_bloc.dart'; +import 'package:responsive_builder/responsive_builder.dart'; + import 'package:gestionuh/src/presentation/blocs.dart'; import 'package:gestionuh/src/presentation/widgets.dart'; import 'package:gestionuh/src/presentation/widgets/bottom_sheet.dart'; -import 'package:responsive_builder/responsive_builder.dart'; class MailQuotaPage extends StatefulWidget { const MailQuotaPage({Key? key}) : super(key: key); diff --git a/lib/src/presentation/pages/profile_page.dart b/lib/src/presentation/pages/profile_page.dart index ec44e86..625efb5 100644 --- a/lib/src/presentation/pages/profile_page.dart +++ b/lib/src/presentation/pages/profile_page.dart @@ -1,9 +1,10 @@ import 'package:flutter/material.dart'; import 'package:flutter_bloc/flutter_bloc.dart'; +import 'package:responsive_builder/responsive_builder.dart'; + import 'package:gestionuh/src/presentation/blocs.dart'; import 'package:gestionuh/src/presentation/widgets.dart'; import 'package:gestionuh/src/presentation/widgets/bottom_sheet.dart'; -import 'package:responsive_builder/responsive_builder.dart'; class ProfilePage extends StatefulWidget { const ProfilePage({Key? key}) : super(key: key); diff --git a/lib/src/presentation/pages/quota_page.dart b/lib/src/presentation/pages/quota_page.dart index 8b97fe5..8d4befc 100644 --- a/lib/src/presentation/pages/quota_page.dart +++ b/lib/src/presentation/pages/quota_page.dart @@ -1,9 +1,10 @@ import 'package:flutter/material.dart'; import 'package:flutter_bloc/flutter_bloc.dart'; +import 'package:responsive_builder/responsive_builder.dart'; + import 'package:gestionuh/src/presentation/blocs.dart'; import 'package:gestionuh/src/presentation/widgets.dart'; import 'package:gestionuh/src/presentation/widgets/bottom_sheet.dart'; -import 'package:responsive_builder/responsive_builder.dart'; class QuotaPage extends StatefulWidget { const QuotaPage({Key? key}) : super(key: key); diff --git a/lib/src/presentation/pages/recover_password_page.dart b/lib/src/presentation/pages/recover_password_page.dart index 403eb1c..d2b504b 100644 --- a/lib/src/presentation/pages/recover_password_page.dart +++ b/lib/src/presentation/pages/recover_password_page.dart @@ -1,10 +1,11 @@ import 'package:flutter/material.dart'; import 'package:flutter_bloc/flutter_bloc.dart'; +import 'package:responsive_builder/responsive_builder.dart'; + import 'package:gestionuh/src/presentation/blocs.dart'; import 'package:gestionuh/src/presentation/widgets.dart'; import 'package:gestionuh/src/presentation/widgets/flash_helper.dart'; import 'package:gestionuh/src/utils/validators.dart'; -import 'package:responsive_builder/responsive_builder.dart'; class RecoverPasswordPage extends StatelessWidget { final _formKey = GlobalKey(); diff --git a/lib/src/presentation/pages/register_page.dart b/lib/src/presentation/pages/register_page.dart index b5d1c20..d4d8279 100644 --- a/lib/src/presentation/pages/register_page.dart +++ b/lib/src/presentation/pages/register_page.dart @@ -1,15 +1,15 @@ import 'package:collection/collection.dart' show IterableExtension; import 'package:flutter/material.dart'; import 'package:flutter_bloc/flutter_bloc.dart'; +import 'package:responsive_builder/responsive_builder.dart'; -import 'package:gestionuh/src/utils/constants.dart'; -import 'package:gestionuh/src/utils/pair.dart'; -import 'package:gestionuh/src/utils/validators.dart'; import 'package:gestionuh/src/presentation/blocs.dart'; import 'package:gestionuh/src/presentation/widgets.dart'; import 'package:gestionuh/src/presentation/widgets/bottom_sheet.dart'; import 'package:gestionuh/src/presentation/widgets/flash_helper.dart'; -import 'package:responsive_builder/responsive_builder.dart'; +import 'package:gestionuh/src/utils/constants.dart'; +import 'package:gestionuh/src/utils/pair.dart'; +import 'package:gestionuh/src/utils/validators.dart'; class RegisterPage extends StatefulWidget { const RegisterPage({Key? key}) : super(key: key); diff --git a/lib/src/presentation/pages/reset_password_page.dart b/lib/src/presentation/pages/reset_password_page.dart index 64ba2b1..ed94523 100644 --- a/lib/src/presentation/pages/reset_password_page.dart +++ b/lib/src/presentation/pages/reset_password_page.dart @@ -1,13 +1,12 @@ -import 'dart:developer'; - import 'package:flutter/material.dart'; import 'package:flutter_bloc/flutter_bloc.dart'; +import 'package:responsive_builder/responsive_builder.dart'; + +import 'package:gestionuh/src/utils/validators.dart'; import 'package:gestionuh/src/presentation/blocs/reset_password_bloc/resetpassword_bloc.dart'; import 'package:gestionuh/src/presentation/widgets.dart'; import 'package:gestionuh/src/presentation/widgets/bottom_sheet.dart'; import 'package:gestionuh/src/presentation/widgets/flash_helper.dart'; -import 'package:gestionuh/src/utils/validators.dart'; -import 'package:responsive_builder/responsive_builder.dart'; class ResetPasswordPage extends StatefulWidget { const ResetPasswordPage({Key? key}) : super(key: key); diff --git a/lib/src/presentation/widgets/bottom_sheet.dart b/lib/src/presentation/widgets/bottom_sheet.dart index 8cf559e..b5efeb0 100644 --- a/lib/src/presentation/widgets/bottom_sheet.dart +++ b/lib/src/presentation/widgets/bottom_sheet.dart @@ -1,4 +1,5 @@ import 'package:flutter/material.dart'; + import 'package:gestionuh/deps_injector.dart'; import 'package:gestionuh/src/data/repository.dart'; import 'package:gestionuh/src/utils/constants.dart'; diff --git a/lib/src/presentation/widgets/drawers/default_drawer.dart b/lib/src/presentation/widgets/drawers/default_drawer.dart index faf97bd..af42616 100644 --- a/lib/src/presentation/widgets/drawers/default_drawer.dart +++ b/lib/src/presentation/widgets/drawers/default_drawer.dart @@ -1,4 +1,5 @@ import 'package:flutter/material.dart'; + import 'package:gestionuh/deps_injector.dart'; import 'package:gestionuh/src/data/repository.dart'; import 'package:gestionuh/src/utils/constants/routes.dart'; diff --git a/lib/src/presentation/widgets/flash_helper.dart b/lib/src/presentation/widgets/flash_helper.dart index 7693411..7f15398 100644 --- a/lib/src/presentation/widgets/flash_helper.dart +++ b/lib/src/presentation/widgets/flash_helper.dart @@ -6,8 +6,8 @@ import 'package:flash/flash.dart'; import 'package:flutter/material.dart'; import 'package:flutter/widgets.dart'; -import 'package:gestionuh/src/utils/constants/messages.dart'; import 'package:gestionuh/src/presentation/widgets/buttons/default_button.dart'; +import 'package:gestionuh/src/utils/constants/messages.dart'; class _MessageItem { final String message; diff --git a/lib/src/utils/constants.dart b/lib/src/utils/constants.dart index eaec5ff..b549f40 100644 --- a/lib/src/utils/constants.dart +++ b/lib/src/utils/constants.dart @@ -1,6 +1,7 @@ export 'constants/about.dart'; export 'constants/constants.dart'; export 'constants/errors.dart'; +export 'constants/messages.dart'; export 'constants/misc.dart'; export 'constants/routes.dart'; export 'constants/sample_data.dart'; diff --git a/lib/src/utils/constants/storage_keys.dart b/lib/src/utils/constants/storage_keys.dart index 12cf946..a5db0c2 100644 --- a/lib/src/utils/constants/storage_keys.dart +++ b/lib/src/utils/constants/storage_keys.dart @@ -1,4 +1,4 @@ -const STORAGE_PREFIX = 'gestion_uh-'; +const STORAGE_PREFIX = 'gestionuh.'; const USER_NAME = '${STORAGE_PREFIX}username'; const USER_PASSWORD = '${STORAGE_PREFIX}password'; From bbfb46fa4364a3925758b1115533f9468c5db46b Mon Sep 17 00:00:00 2001 From: Leonel Garcia Date: Sun, 18 Apr 2021 03:15:11 -0400 Subject: [PATCH 26/59] Add a new case for empty in CI validator --- lib/src/utils/validators.dart | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/lib/src/utils/validators.dart b/lib/src/utils/validators.dart index 00d6e40..312ed26 100644 --- a/lib/src/utils/validators.dart +++ b/lib/src/utils/validators.dart @@ -16,7 +16,9 @@ String? safetyPasswordValidator(String? value) { } String? identityNumberCIValidator(String? value) { - if (value == null || int.tryParse(value) == null) { + if (value == null || value == '') { + return 'No puede estar vacío'; + } else if (value == null || int.tryParse(value) == null) { return 'Sólo se admiten dígitos'; } else if (value.length < 11) { return 'Faltan dígitos de su número de Carnet de Identidad'; @@ -28,7 +30,7 @@ String? identityNumberCIValidator(String? value) { String? answerValidator(String? value) { if (value == null || value.isEmpty) { - return 'Debe responder la pregunta seleccionada.'; + return 'Debe responder la pregunta seleccionada'; } return null; } From ac7d5a2ac7153680cc5705d478d678e1d71a5d87 Mon Sep 17 00:00:00 2001 From: Leonel Garcia Date: Sun, 18 Apr 2021 03:22:15 -0400 Subject: [PATCH 27/59] Fix Warning --- lib/src/utils/validators.dart | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/src/utils/validators.dart b/lib/src/utils/validators.dart index 312ed26..74d80a3 100644 --- a/lib/src/utils/validators.dart +++ b/lib/src/utils/validators.dart @@ -18,7 +18,7 @@ String? safetyPasswordValidator(String? value) { String? identityNumberCIValidator(String? value) { if (value == null || value == '') { return 'No puede estar vacío'; - } else if (value == null || int.tryParse(value) == null) { + } else if (int.tryParse(value) == null) { return 'Sólo se admiten dígitos'; } else if (value.length < 11) { return 'Faltan dígitos de su número de Carnet de Identidad'; From 3828cb3988d20739d48e6cb5174b114da5b5e94e Mon Sep 17 00:00:00 2001 From: leynier Date: Sun, 18 Apr 2021 15:39:20 -0400 Subject: [PATCH 28/59] Fix TextField --- lib/src/presentation/pages/login_page.dart | 7 +- .../pages/recover_password_page.dart | 15 +- lib/src/presentation/pages/register_page.dart | 11 +- .../pages/reset_password_page.dart | 17 +-- .../widgets/textfields/default_textfield.dart | 144 ++++++++---------- 5 files changed, 65 insertions(+), 129 deletions(-) diff --git a/lib/src/presentation/pages/login_page.dart b/lib/src/presentation/pages/login_page.dart index 5a4e791..dfc83f8 100644 --- a/lib/src/presentation/pages/login_page.dart +++ b/lib/src/presentation/pages/login_page.dart @@ -1,7 +1,5 @@ import 'package:flutter/material.dart'; import 'package:flutter_bloc/flutter_bloc.dart'; -import 'package:responsive_builder/responsive_builder.dart'; - import 'package:gestionuh/deps_injector.dart'; import 'package:gestionuh/src/data/local/local_storage.dart'; import 'package:gestionuh/src/data/repository.dart'; @@ -10,6 +8,7 @@ import 'package:gestionuh/src/presentation/widgets.dart'; import 'package:gestionuh/src/presentation/widgets/bottom_sheet.dart'; import 'package:gestionuh/src/presentation/widgets/flash_helper.dart'; import 'package:gestionuh/src/utils/constants/routes.dart'; +import 'package:responsive_builder/responsive_builder.dart'; class LoginPage extends StatefulWidget { const LoginPage({Key? key}) : super(key: key); @@ -118,10 +117,6 @@ class _LoginPageState extends State { labelText: 'Contraseña', controller: _passwordController, keyboardType: TextInputType.visiblePassword, - borderRadius: const BorderRadius.only( - topLeft: Radius.circular(5), - bottomLeft: Radius.circular(5), - ), ), const SizedBox( height: 20, diff --git a/lib/src/presentation/pages/recover_password_page.dart b/lib/src/presentation/pages/recover_password_page.dart index d2b504b..dd8037b 100644 --- a/lib/src/presentation/pages/recover_password_page.dart +++ b/lib/src/presentation/pages/recover_password_page.dart @@ -1,11 +1,10 @@ import 'package:flutter/material.dart'; import 'package:flutter_bloc/flutter_bloc.dart'; -import 'package:responsive_builder/responsive_builder.dart'; - import 'package:gestionuh/src/presentation/blocs.dart'; import 'package:gestionuh/src/presentation/widgets.dart'; import 'package:gestionuh/src/presentation/widgets/flash_helper.dart'; import 'package:gestionuh/src/utils/validators.dart'; +import 'package:responsive_builder/responsive_builder.dart'; class RecoverPasswordPage extends StatelessWidget { final _formKey = GlobalKey(); @@ -62,10 +61,6 @@ class RecoverPasswordPage extends StatelessWidget { validator: identityNumberCIValidator, autovalidateMode: AutovalidateMode.disabled, keyboardType: TextInputType.text, - borderRadius: const BorderRadius.only( - topLeft: Radius.circular(5), - bottomLeft: Radius.circular(5), - ), ), ), const SizedBox( @@ -155,10 +150,6 @@ class RecoverPasswordPage extends StatelessWidget { AutovalidateMode.disabled, keyboardType: TextInputType.visiblePassword, - borderRadius: const BorderRadius.only( - topLeft: Radius.circular(5), - bottomLeft: Radius.circular(5), - ), ), ), const SizedBox( @@ -180,10 +171,6 @@ class RecoverPasswordPage extends StatelessWidget { AutovalidateMode.disabled, keyboardType: TextInputType.visiblePassword, - borderRadius: const BorderRadius.only( - topLeft: Radius.circular(5), - bottomLeft: Radius.circular(5), - ), ), ), const SizedBox( diff --git a/lib/src/presentation/pages/register_page.dart b/lib/src/presentation/pages/register_page.dart index d4d8279..71ad606 100644 --- a/lib/src/presentation/pages/register_page.dart +++ b/lib/src/presentation/pages/register_page.dart @@ -1,8 +1,6 @@ import 'package:collection/collection.dart' show IterableExtension; import 'package:flutter/material.dart'; import 'package:flutter_bloc/flutter_bloc.dart'; -import 'package:responsive_builder/responsive_builder.dart'; - import 'package:gestionuh/src/presentation/blocs.dart'; import 'package:gestionuh/src/presentation/widgets.dart'; import 'package:gestionuh/src/presentation/widgets/bottom_sheet.dart'; @@ -10,6 +8,7 @@ import 'package:gestionuh/src/presentation/widgets/flash_helper.dart'; import 'package:gestionuh/src/utils/constants.dart'; import 'package:gestionuh/src/utils/pair.dart'; import 'package:gestionuh/src/utils/validators.dart'; +import 'package:responsive_builder/responsive_builder.dart'; class RegisterPage extends StatefulWidget { const RegisterPage({Key? key}) : super(key: key); @@ -178,10 +177,6 @@ class _RegisterPageState extends State { controller: passwordFirstController, validator: safetyPasswordValidator, keyboardType: TextInputType.visiblePassword, - borderRadius: const BorderRadius.only( - topLeft: Radius.circular(5), - bottomLeft: Radius.circular(5), - ), ), const SizedBox( height: 15, @@ -194,10 +189,6 @@ class _RegisterPageState extends State { controller: passwordSecondController, validator: safetyPasswordValidator, keyboardType: TextInputType.visiblePassword, - borderRadius: const BorderRadius.only( - topLeft: Radius.circular(5), - bottomLeft: Radius.circular(5), - ), ), const SizedBox(height: 60), const Divider( diff --git a/lib/src/presentation/pages/reset_password_page.dart b/lib/src/presentation/pages/reset_password_page.dart index ed94523..bbab5ca 100644 --- a/lib/src/presentation/pages/reset_password_page.dart +++ b/lib/src/presentation/pages/reset_password_page.dart @@ -1,12 +1,11 @@ import 'package:flutter/material.dart'; import 'package:flutter_bloc/flutter_bloc.dart'; -import 'package:responsive_builder/responsive_builder.dart'; - -import 'package:gestionuh/src/utils/validators.dart'; import 'package:gestionuh/src/presentation/blocs/reset_password_bloc/resetpassword_bloc.dart'; import 'package:gestionuh/src/presentation/widgets.dart'; import 'package:gestionuh/src/presentation/widgets/bottom_sheet.dart'; import 'package:gestionuh/src/presentation/widgets/flash_helper.dart'; +import 'package:gestionuh/src/utils/validators.dart'; +import 'package:responsive_builder/responsive_builder.dart'; class ResetPasswordPage extends StatefulWidget { const ResetPasswordPage({Key? key}) : super(key: key); @@ -103,10 +102,6 @@ class _ResetPasswordPageState extends State { validator: safetyPasswordValidator, autovalidateMode: AutovalidateMode.disabled, keyboardType: TextInputType.visiblePassword, - borderRadius: const BorderRadius.only( - topLeft: Radius.circular(5), - bottomLeft: Radius.circular(5), - ), ), ), const SizedBox( @@ -124,10 +119,6 @@ class _ResetPasswordPageState extends State { validator: safetyPasswordValidator, autovalidateMode: AutovalidateMode.disabled, keyboardType: TextInputType.visiblePassword, - borderRadius: const BorderRadius.only( - topLeft: Radius.circular(5), - bottomLeft: Radius.circular(5), - ), ), ), @@ -141,10 +132,6 @@ class _ResetPasswordPageState extends State { validator: safetyPasswordValidator, autovalidateMode: AutovalidateMode.disabled, keyboardType: TextInputType.visiblePassword, - borderRadius: const BorderRadius.only( - topLeft: Radius.circular(5), - bottomLeft: Radius.circular(5), - ), ), ), ], diff --git a/lib/src/presentation/widgets/textfields/default_textfield.dart b/lib/src/presentation/widgets/textfields/default_textfield.dart index 1b9c421..751ee87 100644 --- a/lib/src/presentation/widgets/textfields/default_textfield.dart +++ b/lib/src/presentation/widgets/textfields/default_textfield.dart @@ -57,99 +57,75 @@ class GestionUhDefaultTextFieldState extends State { @override Widget build(BuildContext context) { - return Row( - crossAxisAlignment: CrossAxisAlignment.start, - children: [ - Expanded( - child: SizedBox( - // height: 40, - child: TextFormField( - validator: widget.validator, - inputFormatters: widget.inputFormatters ?? [], - autovalidateMode: - widget.autovalidateMode ?? AutovalidateMode.onUserInteraction, - style: widget.style ?? const TextStyle(fontSize: 17), - onChanged: widget.onChanged, - onTap: widget.onTap as void Function()?, - controller: widget.controller, - keyboardType: widget.keyboardType, - textAlignVertical: TextAlignVertical.center, - textInputAction: TextInputAction.done, - textAlign: TextAlign.justify, - cursorColor: Theme.of(context).accentColor, - obscureText: _obscureText, - decoration: InputDecoration( - fillColor: Theme.of(context).cardColor, - filled: true, - contentPadding: const EdgeInsets.only(left: 10), - labelStyle: widget.labelStyle ?? - Theme.of(context) - .textTheme - .bodyText1! - .copyWith(color: Theme.of(context).primaryColor), - hintStyle: - widget.hintStyle ?? Theme.of(context).textTheme.bodyText1, - enabledBorder: OutlineInputBorder( - borderRadius: widget.borderRadius ?? - const BorderRadius.all(Radius.circular(5)), - borderSide: BorderSide( - color: Colors.grey[300]!, - ), - ), - border: OutlineInputBorder( - borderRadius: widget.borderRadius ?? - const BorderRadius.all( - Radius.circular(5), - ), - borderSide: BorderSide( - color: Colors.grey[300]!, - ), - ), - focusedBorder: OutlineInputBorder( - borderRadius: widget.borderRadius ?? - const BorderRadius.all( - Radius.circular(5), - ), - ), - errorBorder: OutlineInputBorder( - borderRadius: widget.borderRadius ?? - const BorderRadius.all( - Radius.circular(5), - ), - borderSide: BorderSide( - color: Colors.red.withOpacity(.5), - ), - ), - labelText: widget.labelText, - hintText: widget.hintText, + return TextFormField( + validator: widget.validator, + inputFormatters: widget.inputFormatters ?? [], + autovalidateMode: + widget.autovalidateMode ?? AutovalidateMode.onUserInteraction, + style: widget.style ?? const TextStyle(fontSize: 17), + onChanged: widget.onChanged, + onTap: widget.onTap as void Function()?, + controller: widget.controller, + keyboardType: widget.keyboardType, + textAlignVertical: TextAlignVertical.center, + textInputAction: TextInputAction.done, + textAlign: TextAlign.justify, + cursorColor: Theme.of(context).accentColor, + obscureText: _obscureText, + decoration: InputDecoration( + fillColor: Theme.of(context).cardColor, + filled: true, + contentPadding: const EdgeInsets.only(left: 10), + labelStyle: widget.labelStyle ?? + Theme.of(context) + .textTheme + .bodyText1! + .copyWith(color: Theme.of(context).primaryColor), + hintStyle: widget.hintStyle ?? Theme.of(context).textTheme.bodyText1, + enabledBorder: OutlineInputBorder( + borderRadius: + widget.borderRadius ?? const BorderRadius.all(Radius.circular(5)), + borderSide: BorderSide( + color: Colors.grey[300]!, + ), + ), + border: OutlineInputBorder( + borderRadius: widget.borderRadius ?? + const BorderRadius.all( + Radius.circular(5), ), - ), + borderSide: BorderSide( + color: Colors.grey[300]!, ), ), - if (widget.keyboardType == TextInputType.visiblePassword) - SizedBox( - // height: 40, - width: 40, - child: Material( - color: Theme.of(context).primaryColor, - clipBehavior: Clip.antiAlias, - shape: const RoundedRectangleBorder( - borderRadius: BorderRadius.only( - topRight: Radius.circular(5), - bottomRight: Radius.circular(20), - ), + focusedBorder: OutlineInputBorder( + borderRadius: widget.borderRadius ?? + const BorderRadius.all( + Radius.circular(5), ), - child: IconButton( + ), + errorBorder: OutlineInputBorder( + borderRadius: widget.borderRadius ?? + const BorderRadius.all( + Radius.circular(5), + ), + borderSide: BorderSide( + color: Colors.red.withOpacity(.5), + ), + ), + labelText: widget.labelText, + hintText: widget.hintText, + suffixIcon: widget.keyboardType == TextInputType.visiblePassword + ? IconButton( color: Colors.red, icon: Icon( _obscureText ? Icons.visibility : Icons.visibility_off, - color: Theme.of(context).cardColor, + color: Theme.of(context).primaryColor, ), onPressed: _toggleVisible, - ), - ), - ), - ], + ) + : null, + ), ); } } From 1aae8d5e7b6e88f456349d5785fac5517aec56ac Mon Sep 17 00:00:00 2001 From: leynier Date: Sun, 18 Apr 2021 15:52:23 -0400 Subject: [PATCH 29/59] Implement dialog for confirm logout and improve navigation in drawer --- .../widgets/drawers/default_drawer.dart | 75 +++++++++++++------ 1 file changed, 51 insertions(+), 24 deletions(-) diff --git a/lib/src/presentation/widgets/drawers/default_drawer.dart b/lib/src/presentation/widgets/drawers/default_drawer.dart index af42616..9e9bfdf 100644 --- a/lib/src/presentation/widgets/drawers/default_drawer.dart +++ b/lib/src/presentation/widgets/drawers/default_drawer.dart @@ -1,5 +1,4 @@ import 'package:flutter/material.dart'; - import 'package:gestionuh/deps_injector.dart'; import 'package:gestionuh/src/data/repository.dart'; import 'package:gestionuh/src/utils/constants/routes.dart'; @@ -25,7 +24,10 @@ class DefaultDrawer extends Drawer { onTap: () { Navigator.of(context) ..pop() - ..pushReplacementNamed(PROFILE_ROUTE_NAME); + ..pushNamedAndRemoveUntil( + PROFILE_ROUTE_NAME, + (route) => false, + ); }, ), _buildDrawerItem( @@ -35,7 +37,10 @@ class DefaultDrawer extends Drawer { onTap: () { Navigator.of(context) ..pop() - ..pushReplacementNamed(QUOTA_ROUTE_NAME); + ..pushNamedAndRemoveUntil( + QUOTA_ROUTE_NAME, + (route) => false, + ); }, ), _buildDrawerItem( @@ -45,7 +50,10 @@ class DefaultDrawer extends Drawer { onTap: () { Navigator.of(context) ..pop() - ..pushReplacementNamed(MAIL_ROUTE_NAME); + ..pushNamedAndRemoveUntil( + MAIL_ROUTE_NAME, + (route) => false, + ); }), _buildDrawerItem( context: context, @@ -53,12 +61,11 @@ class DefaultDrawer extends Drawer { icon: Icons.security_rounded, onTap: () { Navigator.of(context) - ..popUntil( - (route) { - return !(route as MaterialPageRoute).canPop; - }, - ) - ..pushReplacementNamed(RESET_PASSWORD_ROUTE_NAME); + ..pop() + ..pushNamedAndRemoveUntil( + RESET_PASSWORD_ROUTE_NAME, + (route) => false, + ); }, ), _buildDrawerItem( @@ -66,14 +73,35 @@ class DefaultDrawer extends Drawer { text: 'Cerrar Sesión', icon: Icons.logout, onTap: () async { - await authRepo.logout(); - Navigator.of(context) - ..popUntil( - (route) { - return !(route as MaterialPageRoute).canPop; - }, - ) - ..pushReplacementNamed(LOGIN_ROUTE_NAME); + Navigator.of(context).pop(); + showDialog( + context: context, + builder: (context) { + return AlertDialog( + content: + const Text('¿Está seguro que desea cerrar sesión?'), + actions: [ + TextButton( + onPressed: () async { + await authRepo.logout(); + Navigator.of(context) + ..pop() + ..pushNamedAndRemoveUntil( + LOGIN_ROUTE_NAME, + (route) => false, + ); + }, + child: const Text('Si'), + ), + TextButton( + onPressed: () async { + Navigator.of(context).pop(); + }, + child: const Text('No'), + ), + ], + ); + }); }, ), const Divider(), @@ -83,12 +111,11 @@ class DefaultDrawer extends Drawer { icon: Icons.info_outline_rounded, onTap: () { Navigator.of(context) - ..popUntil( - (route) { - return !(route as MaterialPageRoute).canPop; - }, - ) - ..pushReplacementNamed(ABOUT_ROUTE_NAME); + ..pop() + ..pushNamedAndRemoveUntil( + ABOUT_ROUTE_NAME, + (route) => false, + ); }, ), ], From 8041eaa5f2252768041a90b03e5a09a63f484ba6 Mon Sep 17 00:00:00 2001 From: leynier Date: Sun, 18 Apr 2021 16:24:21 -0400 Subject: [PATCH 30/59] Implement fade transition between routes --- lib/app.dart | 30 ++++++++++++++++-------------- pubspec.lock | 7 +++++++ pubspec.yaml | 1 + 3 files changed, 24 insertions(+), 14 deletions(-) diff --git a/lib/app.dart b/lib/app.dart index ba48fc1..905352c 100644 --- a/lib/app.dart +++ b/lib/app.dart @@ -9,6 +9,7 @@ import 'package:gestionuh/src/presentation/pages/register_page.dart'; import 'package:gestionuh/src/presentation/theme.dart'; import 'package:gestionuh/src/utils/constants.dart'; import 'package:gestionuh/src/utils/constants/routes.dart'; +import 'package:page_transition/page_transition.dart'; class GestionUhApp extends StatelessWidget { @override @@ -23,7 +24,7 @@ class GestionUhApp extends StatelessWidget { final authRepo = di(); if (authRepo.logged) { return _buildPage( - builder: (_) => BlocProvider( + builder: BlocProvider( create: (_) => di()..add(QuotaInitialized()), child: const QuotaPage(), ), @@ -31,7 +32,7 @@ class GestionUhApp extends StatelessWidget { ); } return _buildPage( - builder: (_) => BlocProvider( + builder: BlocProvider( create: (_) => di(), child: const LoginPage(), ), @@ -39,7 +40,7 @@ class GestionUhApp extends StatelessWidget { ); case QUOTA_ROUTE_NAME: return _buildPage( - builder: (_) => BlocProvider( + builder: BlocProvider( create: (_) => di()..add(QuotaInitialized()), child: const QuotaPage(), ), @@ -47,7 +48,7 @@ class GestionUhApp extends StatelessWidget { ); case PROFILE_ROUTE_NAME: return _buildPage( - builder: (_) => BlocProvider( + builder: BlocProvider( create: (_) => di()..add(ProfileInitialized()), child: const ProfilePage(), ), @@ -55,7 +56,7 @@ class GestionUhApp extends StatelessWidget { ); case MAIL_ROUTE_NAME: return _buildPage( - builder: (_) => BlocProvider( + builder: BlocProvider( create: (_) => di()..add(MailQuotaInitialized()), child: const MailQuotaPage(), ), @@ -63,7 +64,7 @@ class GestionUhApp extends StatelessWidget { ); case RESET_PASSWORD_ROUTE_NAME: return _buildPage( - builder: (_) => BlocProvider( + builder: BlocProvider( create: (_) => di(), child: const ResetPasswordPage(), ), @@ -71,7 +72,7 @@ class GestionUhApp extends StatelessWidget { ); case REGISTER_ROUTE_NAME: return _buildPage( - builder: (_) => Overlay( + builder: Overlay( initialEntries: [ OverlayEntry(builder: (context) { return BlocProvider( @@ -85,12 +86,12 @@ class GestionUhApp extends StatelessWidget { ); case ABOUT_ROUTE_NAME: return _buildPage( - builder: (_) => const AboutInformationPage(), + builder: const AboutInformationPage(), settings: settings, ); case RECOVER_PASSWORD_ROUTE_NAME: return _buildPage( - builder: (_) => BlocProvider( + builder: BlocProvider( create: (_) => di(), child: RecoverPasswordPage(), ), @@ -100,7 +101,7 @@ class GestionUhApp extends StatelessWidget { final authRepo = di(); if (authRepo.logged) { return _buildPage( - builder: (_) => BlocProvider( + builder: BlocProvider( create: (_) => di()..add(ProfileInitialized()), child: const ProfilePage(), ), @@ -108,7 +109,7 @@ class GestionUhApp extends StatelessWidget { ); } return _buildPage( - builder: (_) => BlocProvider( + builder: BlocProvider( create: (_) => di(), child: const LoginPage(), ), @@ -120,12 +121,13 @@ class GestionUhApp extends StatelessWidget { } PageRoute _buildPage({ - required WidgetBuilder builder, + required Widget builder, required RouteSettings settings, }) { - return MaterialPageRoute( - builder: builder, + return PageTransition( + child: builder, settings: settings, + type: PageTransitionType.fade, ); } } diff --git a/pubspec.lock b/pubspec.lock index 28303bc..e8fc127 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -450,6 +450,13 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "1.0.0" + page_transition: + dependency: "direct main" + description: + name: page_transition + url: "https://pub.dartlang.org" + source: hosted + version: "2.0.1-nullsafety.0" path: dependency: transitive description: diff --git a/pubspec.yaml b/pubspec.yaml index e03a54c..e15cfd0 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -23,6 +23,7 @@ dependencies: get_it: ^6.0.0 json_annotation: ^4.0.1 package_info_plus: ^1.0.0 + page_transition: ^2.0.1-nullsafety.0 responsive_builder: ^0.4.1 shared_preferences: ^2.0.5 url_launcher: ^6.0.3 From f9053eb1b442e217ebaa214639fbe4a09eeb8958 Mon Sep 17 00:00:00 2001 From: leynier Date: Sun, 18 Apr 2021 16:47:37 -0400 Subject: [PATCH 31/59] Reformat structure --- lib/app.dart | 133 ------------------ lib/deps_injector.dart | 108 -------------- lib/main.dart | 23 ++- lib/src/app.dart | 16 +++ lib/src/data/api/api.dart | 6 +- lib/src/data/local.dart | 1 - lib/src/data/local/local_storage.dart | 3 +- lib/src/data/models.dart | 15 -- lib/src/data/models/models.dart | 14 ++ .../auth_repository.dart | 2 +- .../mail_quota_repository.dart | 2 +- .../profile_repository.dart | 2 +- .../quotas_repository.dart | 2 +- .../recover_password_repository.dart | 2 +- lib/src/data/repositories/repositories.dart | 6 + .../version_repository.dart | 0 lib/src/data/repository.dart | 6 - lib/src/dependencies.dart | 109 ++++++++++++++ lib/src/presentation/blocs.dart | 7 - lib/src/presentation/blocs/blocs.dart | 7 + .../blocs/login_bloc/login_bloc.dart | 5 +- .../mail_quota_bloc/mail_quota_bloc.dart | 7 +- .../blocs/profile_bloc/profile_bloc.dart | 7 +- .../blocs/quota_bloc/quota_bloc.dart | 7 +- .../recover_password_bloc.dart | 7 +- .../blocs/register_bloc/register_bloc.dart | 2 +- .../resetpassword_bloc.dart | 3 +- lib/src/presentation/pages.dart | 8 -- lib/src/presentation/pages/about_page.dart | 13 +- lib/src/presentation/pages/login_page.dart | 12 +- .../presentation/pages/mail_quotas_page.dart | 7 +- lib/src/presentation/pages/pages.dart | 8 ++ lib/src/presentation/pages/profile_page.dart | 7 +- lib/src/presentation/pages/quota_page.dart | 7 +- .../pages/recover_password_page.dart | 4 +- lib/src/presentation/pages/register_page.dart | 6 +- .../pages/reset_password_page.dart | 2 +- lib/src/presentation/theme.dart | 1 - lib/src/presentation/theme/theme.dart | 1 + lib/src/presentation/widgets.dart | 7 - .../presentation/widgets/bottom_sheet.dart | 9 +- lib/src/presentation/widgets/buttons.dart | 1 - .../presentation/widgets/buttons/buttons.dart | 1 + .../widgets/buttons/default_button.dart | 3 +- lib/src/presentation/widgets/drawers.dart | 1 - .../widgets/drawers/default_drawer.dart | 6 +- .../presentation/widgets/drawers/drawers.dart | 1 + .../widgets/loading_indicators.dart | 1 - .../loading_indicators.dart | 1 + .../widgets/mail_quota_graph.dart | 2 +- lib/src/presentation/widgets/quota_graph.dart | 2 +- lib/src/presentation/widgets/textfields.dart | 1 - .../widgets/textfields/textfields.dart | 1 + lib/src/presentation/widgets/widgets.dart | 7 + lib/src/router.dart | 121 ++++++++++++++++ lib/src/utils/constants.dart | 8 -- lib/src/utils/constants/constants.dart | 8 ++ lib/src/utils/simple_bloc_observer.dart | 11 ++ 58 files changed, 384 insertions(+), 386 deletions(-) delete mode 100644 lib/app.dart delete mode 100644 lib/deps_injector.dart create mode 100644 lib/src/app.dart delete mode 100644 lib/src/data/local.dart delete mode 100644 lib/src/data/models.dart create mode 100644 lib/src/data/models/models.dart rename lib/src/data/{repository/auth_repository => repositories}/auth_repository.dart (98%) rename lib/src/data/{repository/mail_quota_repository => repositories}/mail_quota_repository.dart (89%) rename lib/src/data/{repository/profile_repository => repositories}/profile_repository.dart (89%) rename lib/src/data/{repository/quotas_repository => repositories}/quotas_repository.dart (88%) rename lib/src/data/{repository/recover_password_repository => repositories}/recover_password_repository.dart (93%) create mode 100644 lib/src/data/repositories/repositories.dart rename lib/src/data/{repository/version_repository => repositories}/version_repository.dart (100%) delete mode 100644 lib/src/data/repository.dart create mode 100644 lib/src/dependencies.dart delete mode 100644 lib/src/presentation/blocs.dart create mode 100644 lib/src/presentation/blocs/blocs.dart delete mode 100644 lib/src/presentation/pages.dart create mode 100644 lib/src/presentation/pages/pages.dart delete mode 100644 lib/src/presentation/theme.dart create mode 100644 lib/src/presentation/theme/theme.dart delete mode 100644 lib/src/presentation/widgets.dart delete mode 100644 lib/src/presentation/widgets/buttons.dart create mode 100644 lib/src/presentation/widgets/buttons/buttons.dart delete mode 100644 lib/src/presentation/widgets/drawers.dart create mode 100644 lib/src/presentation/widgets/drawers/drawers.dart delete mode 100644 lib/src/presentation/widgets/loading_indicators.dart create mode 100644 lib/src/presentation/widgets/loading_indicators/loading_indicators.dart delete mode 100644 lib/src/presentation/widgets/textfields.dart create mode 100644 lib/src/presentation/widgets/textfields/textfields.dart create mode 100644 lib/src/presentation/widgets/widgets.dart create mode 100644 lib/src/router.dart delete mode 100644 lib/src/utils/constants.dart create mode 100644 lib/src/utils/simple_bloc_observer.dart diff --git a/lib/app.dart b/lib/app.dart deleted file mode 100644 index 905352c..0000000 --- a/lib/app.dart +++ /dev/null @@ -1,133 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:flutter_bloc/flutter_bloc.dart'; -import 'package:gestionuh/deps_injector.dart'; -import 'package:gestionuh/src/data/repository/auth_repository/auth_repository.dart'; -import 'package:gestionuh/src/presentation/blocs.dart'; -import 'package:gestionuh/src/presentation/pages.dart'; -import 'package:gestionuh/src/presentation/pages/about_page.dart'; -import 'package:gestionuh/src/presentation/pages/register_page.dart'; -import 'package:gestionuh/src/presentation/theme.dart'; -import 'package:gestionuh/src/utils/constants.dart'; -import 'package:gestionuh/src/utils/constants/routes.dart'; -import 'package:page_transition/page_transition.dart'; - -class GestionUhApp extends StatelessWidget { - @override - Widget build(BuildContext context) { - return MaterialApp( - title: Constants.appName, - theme: gestionuhLightTheme, - debugShowCheckedModeBanner: Constants.testMode, - onGenerateRoute: (settings) { - switch (settings.name) { - case LOGIN_ROUTE_NAME: - final authRepo = di(); - if (authRepo.logged) { - return _buildPage( - builder: BlocProvider( - create: (_) => di()..add(QuotaInitialized()), - child: const QuotaPage(), - ), - settings: settings, - ); - } - return _buildPage( - builder: BlocProvider( - create: (_) => di(), - child: const LoginPage(), - ), - settings: settings, - ); - case QUOTA_ROUTE_NAME: - return _buildPage( - builder: BlocProvider( - create: (_) => di()..add(QuotaInitialized()), - child: const QuotaPage(), - ), - settings: settings, - ); - case PROFILE_ROUTE_NAME: - return _buildPage( - builder: BlocProvider( - create: (_) => di()..add(ProfileInitialized()), - child: const ProfilePage(), - ), - settings: settings, - ); - case MAIL_ROUTE_NAME: - return _buildPage( - builder: BlocProvider( - create: (_) => di()..add(MailQuotaInitialized()), - child: const MailQuotaPage(), - ), - settings: settings, - ); - case RESET_PASSWORD_ROUTE_NAME: - return _buildPage( - builder: BlocProvider( - create: (_) => di(), - child: const ResetPasswordPage(), - ), - settings: settings, - ); - case REGISTER_ROUTE_NAME: - return _buildPage( - builder: Overlay( - initialEntries: [ - OverlayEntry(builder: (context) { - return BlocProvider( - create: (_) => di()..add(QuestionsRequestedRegister()), - child: const RegisterPage(), - ); - }), - ], - ), - settings: settings, - ); - case ABOUT_ROUTE_NAME: - return _buildPage( - builder: const AboutInformationPage(), - settings: settings, - ); - case RECOVER_PASSWORD_ROUTE_NAME: - return _buildPage( - builder: BlocProvider( - create: (_) => di(), - child: RecoverPasswordPage(), - ), - settings: settings, - ); - default: - final authRepo = di(); - if (authRepo.logged) { - return _buildPage( - builder: BlocProvider( - create: (_) => di()..add(ProfileInitialized()), - child: const ProfilePage(), - ), - settings: settings, - ); - } - return _buildPage( - builder: BlocProvider( - create: (_) => di(), - child: const LoginPage(), - ), - settings: settings, - ); - } - }, - ); - } - - PageRoute _buildPage({ - required Widget builder, - required RouteSettings settings, - }) { - return PageTransition( - child: builder, - settings: settings, - type: PageTransitionType.fade, - ); - } -} diff --git a/lib/deps_injector.dart b/lib/deps_injector.dart deleted file mode 100644 index f1193bc..0000000 --- a/lib/deps_injector.dart +++ /dev/null @@ -1,108 +0,0 @@ -import 'package:flutter_secure_storage/flutter_secure_storage.dart'; -import 'package:get_it/get_it.dart'; -import 'package:shared_preferences/shared_preferences.dart'; - -import 'package:gestionuh/src/data/api/api.dart'; -import 'package:gestionuh/src/data/local.dart'; -import 'package:gestionuh/src/data/repository.dart'; -import 'package:gestionuh/src/presentation/blocs.dart'; - -final di = GetIt.instance; - -Future init() async { - //Data Providers - di.registerSingleton(GestionApi()); - - final sharedPrefs = await SharedPreferences.getInstance(); - di.registerSingleton(sharedPrefs); - - di.registerLazySingleton( - () => const FlutterSecureStorage(), - ); - - di.registerLazySingleton( - () => LocalStorage( - prefs: di(), - secureStorage: di(), - ), - ); - - //Repositories - di.registerLazySingleton( - () => AuthRepository( - api: di(), - localStorage: di(), - ), - ); - - di.registerLazySingleton( - () => QuotasRepository( - api: di(), - ), - ); - - di.registerLazySingleton( - () => MailQuotasRepository( - api: di(), - ), - ); - - di.registerLazySingleton( - () => ProfileRepository( - api: di(), - ), - ); - - di.registerLazySingleton( - () => RecoverPasswordRepository( - api: di(), - ), - ); - - di.registerLazySingleton( - () => VersionRepository(), - ); - - //Blocs - di.registerFactory( - () => LoginBloc( - authRepository: di(), - ), - ); - - di.registerFactory( - () => QuotaBloc( - quotasRepository: di(), - ), - ); - - di.registerFactory( - () => ResetPasswordBloc( - authRepository: di(), - ), - ); - - di.registerFactory( - () => MailQuotaBloc( - mailQuotasRepository: di(), - ), - ); - - di.registerFactory( - () => RecoverPasswordBloc( - recoverPasswordRepository: di(), - ), - ); - - di.registerFactory( - () => RegisterBloc( - repository: di(), - ), - ); - - di.registerFactory( - () => ProfileBloc( - profileRepository: di(), - ), - ); -} diff --git a/lib/main.dart b/lib/main.dart index 0d606fe..be8b17b 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -1,22 +1,19 @@ import 'package:flutter/material.dart'; -import 'package:gestionuh/app.dart'; -import 'package:gestionuh/deps_injector.dart'; -import 'package:gestionuh/src/data/repository/auth_repository/auth_repository.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; +import 'package:gestionuh/src/app.dart'; +import 'package:gestionuh/src/data/repository/auth_repository.dart'; +import 'package:gestionuh/src/dependencies.dart'; import 'package:gestionuh/src/utils/configurations/configure_nonweb.dart' if (dart.library.html) 'package:gestionuh/src/utils/configurations/configure_web.dart'; +import 'package:gestionuh/src/utils/simple_bloc_observer.dart'; +import 'package:get_it/get_it.dart'; Future main() async { - await initialize(); - runApp(GestionUhApp()); -} - -Future initialize() async { WidgetsFlutterBinding.ensureInitialized(); - configureApp(); - - await init(); - + Bloc.observer = SimpleBlocObserver(); + await DependencyInjection.init(); // Load user credentials - await di().initialize(); + await GetIt.I().initialize(); + runApp(GestionUhApp()); } diff --git a/lib/src/app.dart b/lib/src/app.dart new file mode 100644 index 0000000..6ac5c58 --- /dev/null +++ b/lib/src/app.dart @@ -0,0 +1,16 @@ +import 'package:flutter/material.dart'; +import 'package:gestionuh/src/presentation/theme/theme.dart'; +import 'package:gestionuh/src/router.dart'; +import 'package:gestionuh/src/utils/constants/constants.dart'; + +class GestionUhApp extends StatelessWidget { + @override + Widget build(BuildContext context) { + return MaterialApp( + title: Constants.appName, + theme: gestionuhLightTheme, + debugShowCheckedModeBanner: Constants.testMode, + onGenerateRoute: RouterNavigation.onGenerateRoute, + ); + } +} diff --git a/lib/src/data/api/api.dart b/lib/src/data/api/api.dart index fd01f3f..bbc0350 100644 --- a/lib/src/data/api/api.dart +++ b/lib/src/data/api/api.dart @@ -1,9 +1,9 @@ import 'dart:convert'; import 'package:dio/dio.dart'; - -import 'package:gestionuh/src/data/models.dart'; -import 'package:gestionuh/src/utils/constants.dart'; +import 'package:gestionuh/src/data/models/base_model.dart'; +import 'package:gestionuh/src/data/models/models.dart'; +import 'package:gestionuh/src/utils/constants/constants.dart'; typedef ClassBuilder = T Function( Map json); diff --git a/lib/src/data/local.dart b/lib/src/data/local.dart deleted file mode 100644 index a8d95ab..0000000 --- a/lib/src/data/local.dart +++ /dev/null @@ -1 +0,0 @@ -export 'local/local_storage.dart'; diff --git a/lib/src/data/local/local_storage.dart b/lib/src/data/local/local_storage.dart index 46780ea..5840f09 100644 --- a/lib/src/data/local/local_storage.dart +++ b/lib/src/data/local/local_storage.dart @@ -2,10 +2,9 @@ import 'dart:io' show Platform; import 'package:flutter/foundation.dart' show kIsWeb; import 'package:flutter_secure_storage/flutter_secure_storage.dart'; +import 'package:gestionuh/src/utils/constants/constants.dart'; import 'package:shared_preferences/shared_preferences.dart'; -import 'package:gestionuh/src/utils/constants.dart'; - abstract class ILocalStorage { //Account-Credentials Future loadSession(); diff --git a/lib/src/data/models.dart b/lib/src/data/models.dart deleted file mode 100644 index 58f2398..0000000 --- a/lib/src/data/models.dart +++ /dev/null @@ -1,15 +0,0 @@ -export 'models/auth.dart'; -export 'models/base_model.dart'; -export 'models/error.dart'; -export 'models/login.dart'; -export 'models/mail_quota.dart'; -export 'models/pass_reset.dart'; -export 'models/password_edit_data.dart'; -export 'models/password_reset_data.dart'; -export 'models/password_reset_user_id.dart'; -export 'models/quota.dart'; -export 'models/security_questions.dart'; -export 'models/status.dart'; -export 'models/user_ci.dart'; -export 'models/user_data.dart'; -export 'models/user_id.dart'; diff --git a/lib/src/data/models/models.dart b/lib/src/data/models/models.dart new file mode 100644 index 0000000..d66d294 --- /dev/null +++ b/lib/src/data/models/models.dart @@ -0,0 +1,14 @@ +export 'auth.dart'; +export 'error.dart'; +export 'login.dart'; +export 'mail_quota.dart'; +export 'pass_reset.dart'; +export 'password_edit_data.dart'; +export 'password_reset_data.dart'; +export 'password_reset_user_id.dart'; +export 'quota.dart'; +export 'security_questions.dart'; +export 'status.dart'; +export 'user_ci.dart'; +export 'user_data.dart'; +export 'user_id.dart'; diff --git a/lib/src/data/repository/auth_repository/auth_repository.dart b/lib/src/data/repositories/auth_repository.dart similarity index 98% rename from lib/src/data/repository/auth_repository/auth_repository.dart rename to lib/src/data/repositories/auth_repository.dart index 6564aae..1103cd0 100644 --- a/lib/src/data/repository/auth_repository/auth_repository.dart +++ b/lib/src/data/repositories/auth_repository.dart @@ -2,7 +2,7 @@ import 'dart:developer'; import 'package:gestionuh/src/data/api/api.dart'; import 'package:gestionuh/src/data/local/local_storage.dart'; -import 'package:gestionuh/src/data/models.dart'; +import 'package:gestionuh/src/data/models/models.dart'; import 'package:gestionuh/src/data/models/status.dart'; import 'package:gestionuh/src/utils/constants/storage_keys.dart'; diff --git a/lib/src/data/repository/mail_quota_repository/mail_quota_repository.dart b/lib/src/data/repositories/mail_quota_repository.dart similarity index 89% rename from lib/src/data/repository/mail_quota_repository/mail_quota_repository.dart rename to lib/src/data/repositories/mail_quota_repository.dart index a08b252..6a4caec 100644 --- a/lib/src/data/repository/mail_quota_repository/mail_quota_repository.dart +++ b/lib/src/data/repositories/mail_quota_repository.dart @@ -1,7 +1,7 @@ import 'dart:developer'; import 'package:gestionuh/src/data/api/api.dart'; -import 'package:gestionuh/src/data/models.dart'; +import 'package:gestionuh/src/data/models/models.dart'; class MailQuotasRepository { final GestionApi api; diff --git a/lib/src/data/repository/profile_repository/profile_repository.dart b/lib/src/data/repositories/profile_repository.dart similarity index 89% rename from lib/src/data/repository/profile_repository/profile_repository.dart rename to lib/src/data/repositories/profile_repository.dart index c5656b7..0914d01 100644 --- a/lib/src/data/repository/profile_repository/profile_repository.dart +++ b/lib/src/data/repositories/profile_repository.dart @@ -1,7 +1,7 @@ import 'dart:developer'; import 'package:gestionuh/src/data/api/api.dart'; -import 'package:gestionuh/src/data/models.dart'; +import 'package:gestionuh/src/data/models/models.dart'; class ProfileRepository { final GestionApi api; diff --git a/lib/src/data/repository/quotas_repository/quotas_repository.dart b/lib/src/data/repositories/quotas_repository.dart similarity index 88% rename from lib/src/data/repository/quotas_repository/quotas_repository.dart rename to lib/src/data/repositories/quotas_repository.dart index 4e6e1db..328aae7 100644 --- a/lib/src/data/repository/quotas_repository/quotas_repository.dart +++ b/lib/src/data/repositories/quotas_repository.dart @@ -1,7 +1,7 @@ import 'dart:developer'; import 'package:gestionuh/src/data/api/api.dart'; -import 'package:gestionuh/src/data/models.dart'; +import 'package:gestionuh/src/data/models/models.dart'; class QuotasRepository { final GestionApi api; diff --git a/lib/src/data/repository/recover_password_repository/recover_password_repository.dart b/lib/src/data/repositories/recover_password_repository.dart similarity index 93% rename from lib/src/data/repository/recover_password_repository/recover_password_repository.dart rename to lib/src/data/repositories/recover_password_repository.dart index 38c0f7f..5194dc2 100644 --- a/lib/src/data/repository/recover_password_repository/recover_password_repository.dart +++ b/lib/src/data/repositories/recover_password_repository.dart @@ -1,7 +1,7 @@ import 'dart:developer'; import 'package:gestionuh/src/data/api/api.dart'; -import 'package:gestionuh/src/data/models.dart'; +import 'package:gestionuh/src/data/models/models.dart'; class RecoverPasswordRepository { final GestionApi api; diff --git a/lib/src/data/repositories/repositories.dart b/lib/src/data/repositories/repositories.dart new file mode 100644 index 0000000..b67bb7f --- /dev/null +++ b/lib/src/data/repositories/repositories.dart @@ -0,0 +1,6 @@ +export 'auth_repository.dart'; +export 'mail_quota_repository.dart'; +export 'profile_repository.dart'; +export 'quotas_repository.dart'; +export 'recover_password_repository.dart'; +export 'version_repository.dart'; diff --git a/lib/src/data/repository/version_repository/version_repository.dart b/lib/src/data/repositories/version_repository.dart similarity index 100% rename from lib/src/data/repository/version_repository/version_repository.dart rename to lib/src/data/repositories/version_repository.dart diff --git a/lib/src/data/repository.dart b/lib/src/data/repository.dart deleted file mode 100644 index 99fdd5e..0000000 --- a/lib/src/data/repository.dart +++ /dev/null @@ -1,6 +0,0 @@ -export 'repository/auth_repository/auth_repository.dart'; -export 'repository/mail_quota_repository/mail_quota_repository.dart'; -export 'repository/profile_repository/profile_repository.dart'; -export 'repository/quotas_repository/quotas_repository.dart'; -export 'repository/recover_password_repository/recover_password_repository.dart'; -export 'repository/version_repository/version_repository.dart'; diff --git a/lib/src/dependencies.dart b/lib/src/dependencies.dart new file mode 100644 index 0000000..3da340c --- /dev/null +++ b/lib/src/dependencies.dart @@ -0,0 +1,109 @@ +import 'package:flutter_secure_storage/flutter_secure_storage.dart'; +import 'package:gestionuh/src/data/api/api.dart'; +import 'package:gestionuh/src/data/local/local_storage.dart'; +import 'package:gestionuh/src/data/repositories/repositories.dart'; +import 'package:gestionuh/src/presentation/blocs/blocs.dart'; +import 'package:get_it/get_it.dart'; +import 'package:shared_preferences/shared_preferences.dart'; + +class DependencyInjection { + static Future init() async { + final I = GetIt.I; + + // Data Providers + I.registerSingleton(GestionApi()); + + final sharedPrefs = await SharedPreferences.getInstance(); + I.registerSingleton(sharedPrefs); + + I.registerLazySingleton( + () => const FlutterSecureStorage(), + ); + + I.registerLazySingleton( + () => LocalStorage( + prefs: I(), + secureStorage: I(), + ), + ); + + // Repositories + I.registerLazySingleton( + () => AuthRepository( + api: I(), + localStorage: I(), + ), + ); + + I.registerLazySingleton( + () => QuotasRepository( + api: I(), + ), + ); + + I.registerLazySingleton( + () => MailQuotasRepository( + api: I(), + ), + ); + + I.registerLazySingleton( + () => ProfileRepository( + api: I(), + ), + ); + + I.registerLazySingleton( + () => RecoverPasswordRepository( + api: I(), + ), + ); + + I.registerLazySingleton( + () => VersionRepository(), + ); + + // Blocs + I.registerFactory( + () => LoginBloc( + authRepository: I(), + ), + ); + + I.registerFactory( + () => QuotaBloc( + quotasRepository: I(), + ), + ); + + I.registerFactory( + () => ResetPasswordBloc( + authRepository: I(), + ), + ); + + I.registerFactory( + () => MailQuotaBloc( + mailQuotasRepository: I(), + ), + ); + + I.registerFactory( + () => RecoverPasswordBloc( + recoverPasswordRepository: I(), + ), + ); + + I.registerFactory( + () => RegisterBloc( + repository: I(), + ), + ); + + I.registerFactory( + () => ProfileBloc( + profileRepository: I(), + ), + ); + } +} diff --git a/lib/src/presentation/blocs.dart b/lib/src/presentation/blocs.dart deleted file mode 100644 index 1c3d41e..0000000 --- a/lib/src/presentation/blocs.dart +++ /dev/null @@ -1,7 +0,0 @@ -export 'blocs/login_bloc/login_bloc.dart'; -export 'blocs/mail_quota_bloc/mail_quota_bloc.dart'; -export 'blocs/profile_bloc/profile_bloc.dart'; -export 'blocs/quota_bloc/quota_bloc.dart'; -export 'blocs/recover_password_bloc/recover_password_bloc.dart'; -export 'blocs/register_bloc/register_bloc.dart'; -export 'blocs/reset_password_bloc/resetpassword_bloc.dart'; diff --git a/lib/src/presentation/blocs/blocs.dart b/lib/src/presentation/blocs/blocs.dart new file mode 100644 index 0000000..f881213 --- /dev/null +++ b/lib/src/presentation/blocs/blocs.dart @@ -0,0 +1,7 @@ +export 'login_bloc/login_bloc.dart'; +export 'mail_quota_bloc/mail_quota_bloc.dart'; +export 'profile_bloc/profile_bloc.dart'; +export 'quota_bloc/quota_bloc.dart'; +export 'recover_password_bloc/recover_password_bloc.dart'; +export 'register_bloc/register_bloc.dart'; +export 'reset_password_bloc/resetpassword_bloc.dart'; diff --git a/lib/src/presentation/blocs/login_bloc/login_bloc.dart b/lib/src/presentation/blocs/login_bloc/login_bloc.dart index b0b4309..c2dbb5e 100644 --- a/lib/src/presentation/blocs/login_bloc/login_bloc.dart +++ b/lib/src/presentation/blocs/login_bloc/login_bloc.dart @@ -1,7 +1,6 @@ import 'package:flutter_bloc/flutter_bloc.dart'; - -import 'package:gestionuh/src/data/repository.dart'; -import 'package:gestionuh/src/utils/constants.dart'; +import 'package:gestionuh/src/data/repositories/repositories.dart'; +import 'package:gestionuh/src/utils/constants/constants.dart'; part 'login_event.dart'; part 'login_state.dart'; diff --git a/lib/src/presentation/blocs/mail_quota_bloc/mail_quota_bloc.dart b/lib/src/presentation/blocs/mail_quota_bloc/mail_quota_bloc.dart index 976ab9b..726c091 100644 --- a/lib/src/presentation/blocs/mail_quota_bloc/mail_quota_bloc.dart +++ b/lib/src/presentation/blocs/mail_quota_bloc/mail_quota_bloc.dart @@ -1,8 +1,7 @@ import 'package:flutter_bloc/flutter_bloc.dart'; - -import 'package:gestionuh/src/data/models.dart'; -import 'package:gestionuh/src/data/repository.dart'; -import 'package:gestionuh/src/utils/constants.dart'; +import 'package:gestionuh/src/data/models/models.dart'; +import 'package:gestionuh/src/data/repositories/repositories.dart'; +import 'package:gestionuh/src/utils/constants/constants.dart'; part 'mail_quota_event.dart'; part 'mail_quota_state.dart'; diff --git a/lib/src/presentation/blocs/profile_bloc/profile_bloc.dart b/lib/src/presentation/blocs/profile_bloc/profile_bloc.dart index 5370186..1efae01 100644 --- a/lib/src/presentation/blocs/profile_bloc/profile_bloc.dart +++ b/lib/src/presentation/blocs/profile_bloc/profile_bloc.dart @@ -1,8 +1,7 @@ import 'package:flutter_bloc/flutter_bloc.dart'; - -import 'package:gestionuh/src/data/models.dart'; -import 'package:gestionuh/src/data/repository.dart'; -import 'package:gestionuh/src/utils/constants.dart'; +import 'package:gestionuh/src/data/models/models.dart'; +import 'package:gestionuh/src/data/repositories/repositories.dart'; +import 'package:gestionuh/src/utils/constants/constants.dart'; part 'profile_event.dart'; part 'profile_state.dart'; diff --git a/lib/src/presentation/blocs/quota_bloc/quota_bloc.dart b/lib/src/presentation/blocs/quota_bloc/quota_bloc.dart index 1f302ba..6520413 100644 --- a/lib/src/presentation/blocs/quota_bloc/quota_bloc.dart +++ b/lib/src/presentation/blocs/quota_bloc/quota_bloc.dart @@ -1,8 +1,7 @@ import 'package:flutter_bloc/flutter_bloc.dart'; - -import 'package:gestionuh/src/data/models.dart'; -import 'package:gestionuh/src/data/repository.dart'; -import 'package:gestionuh/src/utils/constants.dart'; +import 'package:gestionuh/src/data/models/models.dart'; +import 'package:gestionuh/src/data/repositories/repositories.dart'; +import 'package:gestionuh/src/utils/constants/constants.dart'; part 'quota_event.dart'; part 'quota_state.dart'; diff --git a/lib/src/presentation/blocs/recover_password_bloc/recover_password_bloc.dart b/lib/src/presentation/blocs/recover_password_bloc/recover_password_bloc.dart index 9568539..bdcdc40 100644 --- a/lib/src/presentation/blocs/recover_password_bloc/recover_password_bloc.dart +++ b/lib/src/presentation/blocs/recover_password_bloc/recover_password_bloc.dart @@ -2,12 +2,11 @@ import 'dart:async'; import 'package:bloc/bloc.dart'; import 'package:flutter/material.dart'; +import 'package:gestionuh/src/data/models/models.dart'; +import 'package:gestionuh/src/data/repositories/repositories.dart'; +import 'package:gestionuh/src/utils/constants/constants.dart'; import 'package:meta/meta.dart'; -import 'package:gestionuh/src/data/models.dart'; -import 'package:gestionuh/src/data/repository.dart'; -import 'package:gestionuh/src/utils/constants.dart'; - part 'recover_password_event.dart'; part 'recover_password_state.dart'; diff --git a/lib/src/presentation/blocs/register_bloc/register_bloc.dart b/lib/src/presentation/blocs/register_bloc/register_bloc.dart index e09599f..52f0f69 100644 --- a/lib/src/presentation/blocs/register_bloc/register_bloc.dart +++ b/lib/src/presentation/blocs/register_bloc/register_bloc.dart @@ -2,7 +2,7 @@ import 'dart:async'; import 'package:bloc/bloc.dart'; import 'package:gestionuh/src/data/models/password_edit_data.dart'; -import 'package:gestionuh/src/data/repository/auth_repository/auth_repository.dart'; +import 'package:gestionuh/src/data/repository/auth_repository.dart'; part 'register_event.dart'; part 'register_state.dart'; diff --git a/lib/src/presentation/blocs/reset_password_bloc/resetpassword_bloc.dart b/lib/src/presentation/blocs/reset_password_bloc/resetpassword_bloc.dart index 1ff98ff..ebd9ed7 100644 --- a/lib/src/presentation/blocs/reset_password_bloc/resetpassword_bloc.dart +++ b/lib/src/presentation/blocs/reset_password_bloc/resetpassword_bloc.dart @@ -1,8 +1,7 @@ import 'dart:async'; import 'package:bloc/bloc.dart'; - -import 'package:gestionuh/src/data/repository.dart'; +import 'package:gestionuh/src/data/repositories/repositories.dart'; part 'resetpassword_event.dart'; part 'resetpassword_state.dart'; diff --git a/lib/src/presentation/pages.dart b/lib/src/presentation/pages.dart deleted file mode 100644 index 5bab0fe..0000000 --- a/lib/src/presentation/pages.dart +++ /dev/null @@ -1,8 +0,0 @@ -export 'pages/about_page.dart'; -export 'pages/login_page.dart'; -export 'pages/mail_quotas_page.dart'; -export 'pages/profile_page.dart'; -export 'pages/quota_page.dart'; -export 'pages/recover_password_page.dart'; -export 'pages/register_page.dart'; -export 'pages/reset_password_page.dart'; diff --git a/lib/src/presentation/pages/about_page.dart b/lib/src/presentation/pages/about_page.dart index 336d2dc..9b01cb7 100644 --- a/lib/src/presentation/pages/about_page.dart +++ b/lib/src/presentation/pages/about_page.dart @@ -1,13 +1,12 @@ import 'package:flutter/material.dart'; +import 'package:gestionuh/src/data/repositories/repositories.dart'; +import 'package:gestionuh/src/presentation/widgets/flash_helper.dart'; +import 'package:gestionuh/src/presentation/widgets/widgets.dart'; +import 'package:gestionuh/src/utils/constants/constants.dart'; +import 'package:get_it/get_it.dart'; import 'package:responsive_builder/responsive_builder.dart'; import 'package:url_launcher/url_launcher.dart'; -import 'package:gestionuh/deps_injector.dart'; -import 'package:gestionuh/src/data/repository.dart'; -import 'package:gestionuh/src/presentation/widgets.dart'; -import 'package:gestionuh/src/presentation/widgets/flash_helper.dart'; -import 'package:gestionuh/src/utils/constants.dart'; - class AboutInformationPage extends StatelessWidget { const AboutInformationPage({Key? key}) : super(key: key); @@ -22,7 +21,7 @@ class AboutInformationPage extends StatelessWidget { bottomSheet: Center( heightFactor: 1, child: FutureBuilder( - future: di().getVersion(), + future: GetIt.I().getVersion(), builder: (context, snapshot) { final textSpans = [ TextSpan(text: '\u00a9 ${DateTime.now().year}'), diff --git a/lib/src/presentation/pages/login_page.dart b/lib/src/presentation/pages/login_page.dart index dfc83f8..5498117 100644 --- a/lib/src/presentation/pages/login_page.dart +++ b/lib/src/presentation/pages/login_page.dart @@ -1,13 +1,13 @@ import 'package:flutter/material.dart'; import 'package:flutter_bloc/flutter_bloc.dart'; -import 'package:gestionuh/deps_injector.dart'; import 'package:gestionuh/src/data/local/local_storage.dart'; -import 'package:gestionuh/src/data/repository.dart'; -import 'package:gestionuh/src/presentation/blocs.dart'; -import 'package:gestionuh/src/presentation/widgets.dart'; +import 'package:gestionuh/src/data/repositories/repositories.dart'; +import 'package:gestionuh/src/presentation/blocs/blocs.dart'; import 'package:gestionuh/src/presentation/widgets/bottom_sheet.dart'; import 'package:gestionuh/src/presentation/widgets/flash_helper.dart'; +import 'package:gestionuh/src/presentation/widgets/widgets.dart'; import 'package:gestionuh/src/utils/constants/routes.dart'; +import 'package:get_it/get_it.dart'; import 'package:responsive_builder/responsive_builder.dart'; class LoginPage extends StatefulWidget { @@ -49,7 +49,7 @@ class _LoginPageState extends State { @override Widget build(BuildContext context) { - final authRepo = di(); + final authRepo = GetIt.I(); return Scaffold( appBar: AppBar( title: const Text('Iniciar Sesión'), @@ -121,7 +121,7 @@ class _LoginPageState extends State { const SizedBox( height: 20, ), - if (di().isSecureStorageAvailable) + if (GetIt.I().isSecureStorageAvailable) GestureDetector( onTap: () => setState(() => _rememberMe = !_rememberMe), diff --git a/lib/src/presentation/pages/mail_quotas_page.dart b/lib/src/presentation/pages/mail_quotas_page.dart index 1c324bf..035cc28 100644 --- a/lib/src/presentation/pages/mail_quotas_page.dart +++ b/lib/src/presentation/pages/mail_quotas_page.dart @@ -1,10 +1,9 @@ import 'package:flutter/material.dart'; import 'package:flutter_bloc/flutter_bloc.dart'; -import 'package:responsive_builder/responsive_builder.dart'; - -import 'package:gestionuh/src/presentation/blocs.dart'; -import 'package:gestionuh/src/presentation/widgets.dart'; +import 'package:gestionuh/src/presentation/blocs/blocs.dart'; import 'package:gestionuh/src/presentation/widgets/bottom_sheet.dart'; +import 'package:gestionuh/src/presentation/widgets/widgets.dart'; +import 'package:responsive_builder/responsive_builder.dart'; class MailQuotaPage extends StatefulWidget { const MailQuotaPage({Key? key}) : super(key: key); diff --git a/lib/src/presentation/pages/pages.dart b/lib/src/presentation/pages/pages.dart new file mode 100644 index 0000000..77e9377 --- /dev/null +++ b/lib/src/presentation/pages/pages.dart @@ -0,0 +1,8 @@ +export 'about_page.dart'; +export 'login_page.dart'; +export 'mail_quotas_page.dart'; +export 'profile_page.dart'; +export 'quota_page.dart'; +export 'recover_password_page.dart'; +export 'register_page.dart'; +export 'reset_password_page.dart'; diff --git a/lib/src/presentation/pages/profile_page.dart b/lib/src/presentation/pages/profile_page.dart index 625efb5..e46205d 100644 --- a/lib/src/presentation/pages/profile_page.dart +++ b/lib/src/presentation/pages/profile_page.dart @@ -1,10 +1,9 @@ import 'package:flutter/material.dart'; import 'package:flutter_bloc/flutter_bloc.dart'; -import 'package:responsive_builder/responsive_builder.dart'; - -import 'package:gestionuh/src/presentation/blocs.dart'; -import 'package:gestionuh/src/presentation/widgets.dart'; +import 'package:gestionuh/src/presentation/blocs/blocs.dart'; import 'package:gestionuh/src/presentation/widgets/bottom_sheet.dart'; +import 'package:gestionuh/src/presentation/widgets/widgets.dart'; +import 'package:responsive_builder/responsive_builder.dart'; class ProfilePage extends StatefulWidget { const ProfilePage({Key? key}) : super(key: key); diff --git a/lib/src/presentation/pages/quota_page.dart b/lib/src/presentation/pages/quota_page.dart index 8d4befc..acf6e0a 100644 --- a/lib/src/presentation/pages/quota_page.dart +++ b/lib/src/presentation/pages/quota_page.dart @@ -1,10 +1,9 @@ import 'package:flutter/material.dart'; import 'package:flutter_bloc/flutter_bloc.dart'; -import 'package:responsive_builder/responsive_builder.dart'; - -import 'package:gestionuh/src/presentation/blocs.dart'; -import 'package:gestionuh/src/presentation/widgets.dart'; +import 'package:gestionuh/src/presentation/blocs/blocs.dart'; import 'package:gestionuh/src/presentation/widgets/bottom_sheet.dart'; +import 'package:gestionuh/src/presentation/widgets/widgets.dart'; +import 'package:responsive_builder/responsive_builder.dart'; class QuotaPage extends StatefulWidget { const QuotaPage({Key? key}) : super(key: key); diff --git a/lib/src/presentation/pages/recover_password_page.dart b/lib/src/presentation/pages/recover_password_page.dart index dd8037b..a1a3e74 100644 --- a/lib/src/presentation/pages/recover_password_page.dart +++ b/lib/src/presentation/pages/recover_password_page.dart @@ -1,8 +1,8 @@ import 'package:flutter/material.dart'; import 'package:flutter_bloc/flutter_bloc.dart'; -import 'package:gestionuh/src/presentation/blocs.dart'; -import 'package:gestionuh/src/presentation/widgets.dart'; +import 'package:gestionuh/src/presentation/blocs/blocs.dart'; import 'package:gestionuh/src/presentation/widgets/flash_helper.dart'; +import 'package:gestionuh/src/presentation/widgets/widgets.dart'; import 'package:gestionuh/src/utils/validators.dart'; import 'package:responsive_builder/responsive_builder.dart'; diff --git a/lib/src/presentation/pages/register_page.dart b/lib/src/presentation/pages/register_page.dart index 71ad606..9a550e5 100644 --- a/lib/src/presentation/pages/register_page.dart +++ b/lib/src/presentation/pages/register_page.dart @@ -1,11 +1,11 @@ import 'package:collection/collection.dart' show IterableExtension; import 'package:flutter/material.dart'; import 'package:flutter_bloc/flutter_bloc.dart'; -import 'package:gestionuh/src/presentation/blocs.dart'; -import 'package:gestionuh/src/presentation/widgets.dart'; +import 'package:gestionuh/src/presentation/blocs/blocs.dart'; import 'package:gestionuh/src/presentation/widgets/bottom_sheet.dart'; import 'package:gestionuh/src/presentation/widgets/flash_helper.dart'; -import 'package:gestionuh/src/utils/constants.dart'; +import 'package:gestionuh/src/presentation/widgets/widgets.dart'; +import 'package:gestionuh/src/utils/constants/constants.dart'; import 'package:gestionuh/src/utils/pair.dart'; import 'package:gestionuh/src/utils/validators.dart'; import 'package:responsive_builder/responsive_builder.dart'; diff --git a/lib/src/presentation/pages/reset_password_page.dart b/lib/src/presentation/pages/reset_password_page.dart index bbab5ca..35a9507 100644 --- a/lib/src/presentation/pages/reset_password_page.dart +++ b/lib/src/presentation/pages/reset_password_page.dart @@ -1,9 +1,9 @@ import 'package:flutter/material.dart'; import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:gestionuh/src/presentation/blocs/reset_password_bloc/resetpassword_bloc.dart'; -import 'package:gestionuh/src/presentation/widgets.dart'; import 'package:gestionuh/src/presentation/widgets/bottom_sheet.dart'; import 'package:gestionuh/src/presentation/widgets/flash_helper.dart'; +import 'package:gestionuh/src/presentation/widgets/widgets.dart'; import 'package:gestionuh/src/utils/validators.dart'; import 'package:responsive_builder/responsive_builder.dart'; diff --git a/lib/src/presentation/theme.dart b/lib/src/presentation/theme.dart deleted file mode 100644 index d191ca4..0000000 --- a/lib/src/presentation/theme.dart +++ /dev/null @@ -1 +0,0 @@ -export 'theme/theme_data.dart'; diff --git a/lib/src/presentation/theme/theme.dart b/lib/src/presentation/theme/theme.dart new file mode 100644 index 0000000..58d9d63 --- /dev/null +++ b/lib/src/presentation/theme/theme.dart @@ -0,0 +1 @@ +export 'theme_data.dart'; diff --git a/lib/src/presentation/widgets.dart b/lib/src/presentation/widgets.dart deleted file mode 100644 index adabdb7..0000000 --- a/lib/src/presentation/widgets.dart +++ /dev/null @@ -1,7 +0,0 @@ -export 'widgets/bottom_sheet.dart'; -export 'widgets/buttons.dart'; -export 'widgets/drawers.dart'; -export 'widgets/loading_indicators.dart'; -export 'widgets/mail_quota_graph.dart'; -export 'widgets/quota_graph.dart'; -export 'widgets/textfields.dart'; diff --git a/lib/src/presentation/widgets/bottom_sheet.dart b/lib/src/presentation/widgets/bottom_sheet.dart index b5efeb0..cbd0d70 100644 --- a/lib/src/presentation/widgets/bottom_sheet.dart +++ b/lib/src/presentation/widgets/bottom_sheet.dart @@ -1,8 +1,7 @@ import 'package:flutter/material.dart'; - -import 'package:gestionuh/deps_injector.dart'; -import 'package:gestionuh/src/data/repository.dart'; -import 'package:gestionuh/src/utils/constants.dart'; +import 'package:gestionuh/src/data/repositories/repositories.dart'; +import 'package:gestionuh/src/utils/constants/constants.dart'; +import 'package:get_it/get_it.dart'; class GestionUHBottomSheet extends StatelessWidget { const GestionUHBottomSheet({ @@ -16,7 +15,7 @@ class GestionUHBottomSheet extends StatelessWidget { child: Center( heightFactor: 2.2, child: FutureBuilder( - future: di().getVersion(), + future: GetIt.I().getVersion(), builder: (context, snapshot) { final textSpans = [ TextSpan(text: '\u00a9 ${DateTime.now().year}'), diff --git a/lib/src/presentation/widgets/buttons.dart b/lib/src/presentation/widgets/buttons.dart deleted file mode 100644 index d6c7345..0000000 --- a/lib/src/presentation/widgets/buttons.dart +++ /dev/null @@ -1 +0,0 @@ -export 'buttons/default_button.dart'; diff --git a/lib/src/presentation/widgets/buttons/buttons.dart b/lib/src/presentation/widgets/buttons/buttons.dart new file mode 100644 index 0000000..964a057 --- /dev/null +++ b/lib/src/presentation/widgets/buttons/buttons.dart @@ -0,0 +1 @@ +export 'default_button.dart'; diff --git a/lib/src/presentation/widgets/buttons/default_button.dart b/lib/src/presentation/widgets/buttons/default_button.dart index c857bf3..eb0fec0 100644 --- a/lib/src/presentation/widgets/buttons/default_button.dart +++ b/lib/src/presentation/widgets/buttons/default_button.dart @@ -1,7 +1,6 @@ import 'package:flutter/cupertino.dart'; import 'package:flutter/material.dart'; - -import 'package:gestionuh/src/presentation/theme.dart'; +import 'package:gestionuh/src/presentation/theme/theme.dart'; class GestionUhDefaultButton extends StatelessWidget { final Widget? child; diff --git a/lib/src/presentation/widgets/drawers.dart b/lib/src/presentation/widgets/drawers.dart deleted file mode 100644 index 48eac4a..0000000 --- a/lib/src/presentation/widgets/drawers.dart +++ /dev/null @@ -1 +0,0 @@ -export 'drawers/default_drawer.dart'; diff --git a/lib/src/presentation/widgets/drawers/default_drawer.dart b/lib/src/presentation/widgets/drawers/default_drawer.dart index 9e9bfdf..fc08f42 100644 --- a/lib/src/presentation/widgets/drawers/default_drawer.dart +++ b/lib/src/presentation/widgets/drawers/default_drawer.dart @@ -1,12 +1,12 @@ import 'package:flutter/material.dart'; -import 'package:gestionuh/deps_injector.dart'; -import 'package:gestionuh/src/data/repository.dart'; +import 'package:gestionuh/src/data/repositories/repositories.dart'; import 'package:gestionuh/src/utils/constants/routes.dart'; +import 'package:get_it/get_it.dart'; class DefaultDrawer extends Drawer { @override Widget build(BuildContext context) { - final authRepo = di(); + final authRepo = GetIt.I(); return Drawer( key: key ?? UniqueKey(), child: ListView( diff --git a/lib/src/presentation/widgets/drawers/drawers.dart b/lib/src/presentation/widgets/drawers/drawers.dart new file mode 100644 index 0000000..9746f93 --- /dev/null +++ b/lib/src/presentation/widgets/drawers/drawers.dart @@ -0,0 +1 @@ +export 'default_drawer.dart'; diff --git a/lib/src/presentation/widgets/loading_indicators.dart b/lib/src/presentation/widgets/loading_indicators.dart deleted file mode 100644 index c47bcf1..0000000 --- a/lib/src/presentation/widgets/loading_indicators.dart +++ /dev/null @@ -1 +0,0 @@ -export 'loading_indicators/circular_loading.dart'; diff --git a/lib/src/presentation/widgets/loading_indicators/loading_indicators.dart b/lib/src/presentation/widgets/loading_indicators/loading_indicators.dart new file mode 100644 index 0000000..59ebe56 --- /dev/null +++ b/lib/src/presentation/widgets/loading_indicators/loading_indicators.dart @@ -0,0 +1 @@ +export 'circular_loading.dart'; diff --git a/lib/src/presentation/widgets/mail_quota_graph.dart b/lib/src/presentation/widgets/mail_quota_graph.dart index 3874a89..4be8563 100644 --- a/lib/src/presentation/widgets/mail_quota_graph.dart +++ b/lib/src/presentation/widgets/mail_quota_graph.dart @@ -2,7 +2,7 @@ import 'dart:math'; import 'package:fl_chart/fl_chart.dart'; import 'package:flutter/material.dart'; -import 'package:gestionuh/src/data/models.dart'; +import 'package:gestionuh/src/data/models/models.dart'; class MailQuotaGraph extends StatelessWidget { final MailQuota quota; diff --git a/lib/src/presentation/widgets/quota_graph.dart b/lib/src/presentation/widgets/quota_graph.dart index d0ce831..8d5949a 100644 --- a/lib/src/presentation/widgets/quota_graph.dart +++ b/lib/src/presentation/widgets/quota_graph.dart @@ -2,7 +2,7 @@ import 'dart:math'; import 'package:fl_chart/fl_chart.dart'; import 'package:flutter/material.dart'; -import 'package:gestionuh/src/data/models.dart'; +import 'package:gestionuh/src/data/models/models.dart'; class QuotaGraph extends StatelessWidget { final Quota quota; diff --git a/lib/src/presentation/widgets/textfields.dart b/lib/src/presentation/widgets/textfields.dart deleted file mode 100644 index 210aa63..0000000 --- a/lib/src/presentation/widgets/textfields.dart +++ /dev/null @@ -1 +0,0 @@ -export 'textfields/default_textfield.dart'; diff --git a/lib/src/presentation/widgets/textfields/textfields.dart b/lib/src/presentation/widgets/textfields/textfields.dart new file mode 100644 index 0000000..03c3dd3 --- /dev/null +++ b/lib/src/presentation/widgets/textfields/textfields.dart @@ -0,0 +1 @@ +export 'default_textfield.dart'; diff --git a/lib/src/presentation/widgets/widgets.dart b/lib/src/presentation/widgets/widgets.dart new file mode 100644 index 0000000..44872e7 --- /dev/null +++ b/lib/src/presentation/widgets/widgets.dart @@ -0,0 +1,7 @@ +export 'bottom_sheet.dart'; +export 'buttons/buttons.dart'; +export 'drawers/drawers.dart'; +export 'loading_indicators/loading_indicators.dart'; +export 'mail_quota_graph.dart'; +export 'quota_graph.dart'; +export 'textfields/textfields.dart'; diff --git a/lib/src/router.dart b/lib/src/router.dart new file mode 100644 index 0000000..a1b649e --- /dev/null +++ b/lib/src/router.dart @@ -0,0 +1,121 @@ +import 'package:flutter/material.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; +import 'package:gestionuh/src/data/repositories/repositories.dart'; +import 'package:gestionuh/src/presentation/blocs/blocs.dart'; +import 'package:gestionuh/src/presentation/pages/pages.dart'; +import 'package:gestionuh/src/utils/constants/constants.dart'; +import 'package:get_it/get_it.dart'; +import 'package:page_transition/page_transition.dart'; + +class RouterNavigation { + static Route? onGenerateRoute(RouteSettings settings) { + switch (settings.name) { + case LOGIN_ROUTE_NAME: + final authRepo = GetIt.I(); + if (authRepo.logged) { + return _buildPage( + builder: BlocProvider( + create: (_) => GetIt.I()..add(QuotaInitialized()), + child: const QuotaPage(), + ), + settings: settings, + ); + } + return _buildPage( + builder: BlocProvider( + create: (_) => GetIt.I(), + child: const LoginPage(), + ), + settings: settings, + ); + case QUOTA_ROUTE_NAME: + return _buildPage( + builder: BlocProvider( + create: (_) => GetIt.I()..add(QuotaInitialized()), + child: const QuotaPage(), + ), + settings: settings, + ); + case PROFILE_ROUTE_NAME: + return _buildPage( + builder: BlocProvider( + create: (_) => GetIt.I()..add(ProfileInitialized()), + child: const ProfilePage(), + ), + settings: settings, + ); + case MAIL_ROUTE_NAME: + return _buildPage( + builder: BlocProvider( + create: (_) => GetIt.I()..add(MailQuotaInitialized()), + child: const MailQuotaPage(), + ), + settings: settings, + ); + case RESET_PASSWORD_ROUTE_NAME: + return _buildPage( + builder: BlocProvider( + create: (_) => GetIt.I(), + child: const ResetPasswordPage(), + ), + settings: settings, + ); + case REGISTER_ROUTE_NAME: + return _buildPage( + builder: Overlay( + initialEntries: [ + OverlayEntry(builder: (context) { + return BlocProvider( + create: (_) => GetIt.I()..add(QuestionsRequestedRegister()), + child: const RegisterPage(), + ); + }), + ], + ), + settings: settings, + ); + case ABOUT_ROUTE_NAME: + return _buildPage( + builder: const AboutInformationPage(), + settings: settings, + ); + case RECOVER_PASSWORD_ROUTE_NAME: + return _buildPage( + builder: BlocProvider( + create: (_) => GetIt.I(), + child: RecoverPasswordPage(), + ), + settings: settings, + ); + default: + final authRepo = GetIt.I(); + if (authRepo.logged) { + return _buildPage( + builder: BlocProvider( + create: (_) => GetIt.I()..add(ProfileInitialized()), + child: const ProfilePage(), + ), + settings: settings, + ); + } + return _buildPage( + builder: BlocProvider( + create: (_) => GetIt.I(), + child: const LoginPage(), + ), + settings: settings, + ); + } + } + + static PageRoute _buildPage({ + required Widget builder, + required RouteSettings settings, + }) { + return PageTransition( + child: builder, + settings: settings, + type: PageTransitionType.fade, + ); + } +} diff --git a/lib/src/utils/constants.dart b/lib/src/utils/constants.dart deleted file mode 100644 index b549f40..0000000 --- a/lib/src/utils/constants.dart +++ /dev/null @@ -1,8 +0,0 @@ -export 'constants/about.dart'; -export 'constants/constants.dart'; -export 'constants/errors.dart'; -export 'constants/messages.dart'; -export 'constants/misc.dart'; -export 'constants/routes.dart'; -export 'constants/sample_data.dart'; -export 'constants/storage_keys.dart'; diff --git a/lib/src/utils/constants/constants.dart b/lib/src/utils/constants/constants.dart index 2316396..d9455fe 100644 --- a/lib/src/utils/constants/constants.dart +++ b/lib/src/utils/constants/constants.dart @@ -1 +1,9 @@ +export 'about.dart'; +export 'errors.dart'; +export 'messages.dart'; +export 'misc.dart'; +export 'routes.dart'; +export 'sample_data.dart'; +export 'storage_keys.dart'; + const NUMBER_OF_SECURITY_QUESTIONS_NEEDED = 3; diff --git a/lib/src/utils/simple_bloc_observer.dart b/lib/src/utils/simple_bloc_observer.dart new file mode 100644 index 0000000..c10324e --- /dev/null +++ b/lib/src/utils/simple_bloc_observer.dart @@ -0,0 +1,11 @@ +import 'dart:developer'; + +import 'package:flutter_bloc/flutter_bloc.dart'; + +class SimpleBlocObserver extends BlocObserver { + @override + void onTransition(Bloc bloc, Transition transition) { + super.onTransition(bloc, transition); + log(transition.toString()); + } +} From 76acecf932871a84f15c4a018c5e79aa53f88d6b Mon Sep 17 00:00:00 2001 From: leynier Date: Sun, 18 Apr 2021 17:21:32 -0400 Subject: [PATCH 32/59] Improve README --- README.md | 25 ++++++++++++++++++++++++- 1 file changed, 24 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index c7074c4..ac52fba 100644 --- a/README.md +++ b/README.md @@ -7,7 +7,7 @@

- A UH managment app. + Aplicación para la gestión electrónica en la Universidad de La Habana.

@@ -23,3 +23,26 @@


+ +### Principales funcionalidades + +- Creación del perfil. +- Consultar la cuota de Internet. +- Consultar el espacio restante del buzón de Correo. + +### Desarrolladores + +- Nodo Central de Red - UH + 1. Jesús Luis Guerrero Campins - Infraestructura y Conectividad + 2. Máximo Alejandro Alfonso Fernández - Infraestructura y Conectividad + 3. Andy González Peña - Infraestructura y Conectividad + 4. Juan Jose Roque Cires - Desarrollador de Servicios + 5. Christian Rodriguez Diaz - Desarrollador de Servicios +- Grupo de Redes y Sistemas - UH + 1. [Adrian Tubal Páez Ruiz - Desarrollador de Servicios](https://github.com/stdevAdrianPaez) + 2. [Marcos Antonio Maceo Reyes - Desarrollador de Servicios](https://github.com/stdevMac) + 3. [Roberto Marti Cedeño - Desarrollador](https://github.com/rmarticedeno) +- Facultad de Matemática y Computación - UH + 1. [Carlos Bermúdez Porto - Desarrollador](https://github.com/cbermudez97) + 2. [Leonel Alejandro García López - Desarrollador](https://github.com/lagcleaner) + 3. [Leynier Gutiérrez González - Desarrollador](https://github.com/leynier) From 90a56a586bdd33af175b4626a2a2a5da6d964920 Mon Sep 17 00:00:00 2001 From: leynier Date: Sun, 18 Apr 2021 17:25:08 -0400 Subject: [PATCH 33/59] Fix import error --- lib/main.dart | 2 +- lib/src/presentation/blocs/register_bloc/register_bloc.dart | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/main.dart b/lib/main.dart index be8b17b..100d3fa 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -1,7 +1,7 @@ import 'package:flutter/material.dart'; import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:gestionuh/src/app.dart'; -import 'package:gestionuh/src/data/repository/auth_repository.dart'; +import 'package:gestionuh/src/data/repositories/repositories.dart'; import 'package:gestionuh/src/dependencies.dart'; import 'package:gestionuh/src/utils/configurations/configure_nonweb.dart' if (dart.library.html) 'package:gestionuh/src/utils/configurations/configure_web.dart'; diff --git a/lib/src/presentation/blocs/register_bloc/register_bloc.dart b/lib/src/presentation/blocs/register_bloc/register_bloc.dart index 52f0f69..7d10ed8 100644 --- a/lib/src/presentation/blocs/register_bloc/register_bloc.dart +++ b/lib/src/presentation/blocs/register_bloc/register_bloc.dart @@ -2,7 +2,7 @@ import 'dart:async'; import 'package:bloc/bloc.dart'; import 'package:gestionuh/src/data/models/password_edit_data.dart'; -import 'package:gestionuh/src/data/repository/auth_repository.dart'; +import 'package:gestionuh/src/data/repositories/repositories.dart'; part 'register_event.dart'; part 'register_state.dart'; From bbeceec959ec67b9e671b6ae7e752c321ed82703 Mon Sep 17 00:00:00 2001 From: leynier Date: Sun, 18 Apr 2021 17:27:49 -0400 Subject: [PATCH 34/59] Add more links to developers --- README.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index ac52fba..c84d258 100644 --- a/README.md +++ b/README.md @@ -34,10 +34,10 @@ - Nodo Central de Red - UH 1. Jesús Luis Guerrero Campins - Infraestructura y Conectividad - 2. Máximo Alejandro Alfonso Fernández - Infraestructura y Conectividad - 3. Andy González Peña - Infraestructura y Conectividad - 4. Juan Jose Roque Cires - Desarrollador de Servicios - 5. Christian Rodriguez Diaz - Desarrollador de Servicios + 2. [Máximo Alejandro Alfonso Fernández - Infraestructura y Conectividad](https://github.com/maximoalejandro) + 3. [Andy González Peña - Infraestructura y Conectividad](https://github.com/andyglez) + 4. [Juan Jose Roque Cires - Desarrollador de Servicios](https://github.com/jr638091) + 5. [Christian Rodriguez Diaz - Desarrollador de Servicios](https://github.com/WrathXL) - Grupo de Redes y Sistemas - UH 1. [Adrian Tubal Páez Ruiz - Desarrollador de Servicios](https://github.com/stdevAdrianPaez) 2. [Marcos Antonio Maceo Reyes - Desarrollador de Servicios](https://github.com/stdevMac) From aff7b968deb84dd90edfa6f4eb490a284a3c073a Mon Sep 17 00:00:00 2001 From: leynier Date: Sun, 18 Apr 2021 17:30:37 -0400 Subject: [PATCH 35/59] Fix deploy action --- .github/workflows/deploy.yml | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index da95b6b..6d35a8a 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -1,8 +1,7 @@ name: Deploy -on: [push, pull_request] -# on: -# push: -# branches: [ main ] +on: + push: + branches: [ main ] jobs: deploy: runs-on: ubuntu-latest From e79497cadc855cf5deeaf31db0708a9ae4693d57 Mon Sep 17 00:00:00 2001 From: leynier Date: Sun, 18 Apr 2021 17:35:55 -0400 Subject: [PATCH 36/59] Fix README --- README.md | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/README.md b/README.md index c84d258..5441eb2 100644 --- a/README.md +++ b/README.md @@ -32,17 +32,17 @@ ### Desarrolladores -- Nodo Central de Red - UH - 1. Jesús Luis Guerrero Campins - Infraestructura y Conectividad - 2. [Máximo Alejandro Alfonso Fernández - Infraestructura y Conectividad](https://github.com/maximoalejandro) - 3. [Andy González Peña - Infraestructura y Conectividad](https://github.com/andyglez) - 4. [Juan Jose Roque Cires - Desarrollador de Servicios](https://github.com/jr638091) - 5. [Christian Rodriguez Diaz - Desarrollador de Servicios](https://github.com/WrathXL) -- Grupo de Redes y Sistemas - UH - 1. [Adrian Tubal Páez Ruiz - Desarrollador de Servicios](https://github.com/stdevAdrianPaez) - 2. [Marcos Antonio Maceo Reyes - Desarrollador de Servicios](https://github.com/stdevMac) - 3. [Roberto Marti Cedeño - Desarrollador](https://github.com/rmarticedeno) -- Facultad de Matemática y Computación - UH - 1. [Carlos Bermúdez Porto - Desarrollador](https://github.com/cbermudez97) - 2. [Leonel Alejandro García López - Desarrollador](https://github.com/lagcleaner) - 3. [Leynier Gutiérrez González - Desarrollador](https://github.com/leynier) +1. Nodo Central de Red - UH + - Jesús Luis Guerrero Campins - Infraestructura y Conectividad + - [Máximo Alejandro Alfonso Fernández - Infraestructura y Conectividad](https://github.com/maximoalejandro) + - [Andy González Peña - Infraestructura y Conectividad](https://github.com/andyglez) + - [Juan Jose Roque Cires - Desarrollador de Servicios](https://github.com/jr638091) + - [Christian Rodriguez Diaz - Desarrollador de Servicios](https://github.com/WrathXL) +2. Grupo de Redes y Sistemas - UH + - [Adrian Tubal Páez Ruiz - Desarrollador de Servicios](https://github.com/stdevAdrianPaez) + - [Marcos Antonio Maceo Reyes - Desarrollador de Servicios](https://github.com/stdevMac) + - [Roberto Marti Cedeño - Desarrollador](https://github.com/rmarticedeno) +3. Facultad de Matemática y Computación - UH + - [Carlos Bermúdez Porto - Desarrollador](https://github.com/cbermudez97) + - [Leonel Alejandro García López - Desarrollador](https://github.com/lagcleaner) + - [Leynier Gutiérrez González - Desarrollador](https://github.com/leynier) From 07074d5f36557599b12a4d69a043b074f071d267 Mon Sep 17 00:00:00 2001 From: leynier Date: Sun, 18 Apr 2021 17:38:38 -0400 Subject: [PATCH 37/59] Update banner --- banner.png | Bin 34036 -> 34130 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/banner.png b/banner.png index aead10daffa37091a66e7ed9df30148f3047e5be..2acf8b1e5c29b851830b3468c32f0e4a3a48f9dc 100644 GIT binary patch literal 34130 zcmZ^~Wl)?=8!U{wySqCH7TkhcaDuzL+u}}ecXxMp3r?`$?(VY4w|U-k&cCmUTG)cU zYnYjIItn+MG zA1u?4PobH~mU{?kvZmQiEbw|``|$23y%{Grf%n{QgZBBYZ1YZ)Z=L3~bVeE(&~cl5 zP!RC++Gd9@y*)FN=hJpval#M;J@&ed>Dj)A=_`(R@BCXdMM)S)gKYo%;sg7|`sM$< zLBJvVzrQ(W)Aav8e}mLGXaGL&f8I=@1VO|7zYie&|9#;4rq~RxWTpNb99dozY?j<$ zAeaU^_~(<9r4SWCMqkZpNm)K3#UeKPA5Y!3<*?-hyimh5ArvNIyiiL(a5b@%LtM3- zS%ZjKL)>h!+LgmYYaco(JUE5&e)zr37RIlQ89qCe$A{@!dgG3@CJurL42l!t2w!L< z$pLuse34b7qIyiTf6v?kUx&{&OfwsGkaNyG!5gia7t>@@=_1H*Cl`YLI)&)P2plPp zE&4_=`CcwoB!y$CFC?oG`5i%4cMlKBM_JPUzyJ0QHt^r~shC?gsdDvmWG_S?VV8eRZkp?-4|IJVnTm&l)ch?6ml1g`eOrxC%M3PV zc2TibP2rT&`>K&Lk9qgggGqO6qtA!^x?FyuNMuIc)o0}vxW@bfIlk40L4@C z^m2qDUP;7t13qZrDEPKNz(kHutq+?ct)k!WalyX(v+f6D{SHo;74SsLFiy};c}FV% zG<-J}jp_PLx=DqUUVymZ3_rT6xU$^1;hUHddo(2t^k^B4jrVex(JWu3`fxfm$>!l4 zgfamOw*`v~xE&13uinOfP6^(xi@__p9<|pH+E{L==cWMdmqY|av{1vJV8|UDwre_& z>dV7m-FS58P&Plo$E<{(R9c!F18r!cUB6O4fyW?H*;RQ%`TD6ww4h7rGa^@l!PNRQO)UMr=oonlGq9KwEoO1{F;q$*G^%2o`eIxc zkl#mu z#sWuR2F4*3B}uUsOkL7n6w$Ssnex*eP7S{>IyUcBHS4VUW#PzXNNoS#Rxas-2sTW^ zk&FOus4C2KbZcetsL%!1zqj3%>4>IAH~5Zh03C08qv0Vd7Q-+_c7=Jc`dnYY8;E*1 zH3%&R90+6k3kxdad6(x}+(9;GNo6U_VPj}CE*l|9@fSW9C}PFmSD7hUhI{I>d)~uz z!HhvN2IOQ_Nko_>)O8#f6acwub~c}ZF9z$h&nJicZ_b+Z`u3o4+5T4}%wd_Ec>v|; zJV5{#TQde7zP~vM0CjkoB*6Rec=tT*nP-u9ce6Hdn0$~;j^RI` zaNK=C63zR=e*0F@Q&W6uDh<`b9};TQMr^wFj=~`SvI~Eo;k(-*uId}o`21Ip=r`IG zoqcKmS229=Y(9JdHaljwP&TxjJ}eeCI5uHG8R?UtAU<);R&XQCy=2Q4td#7*y%gMW z#WgrK{kBje2pY?;xhX+Y7jq#r3)UNgQo}9sSAK(ofswJvYtiX!ZdS&L^845omlD0H z@|X8RsE+Vdy6J=A2eUpFB(m}}f6Ak`iibSa-f9jgUf+7SX8`+bP3uN-TmkGIqQ3)H z>gR#3k57KYCowk`fP4p3byobcxJ;<{p@x6@p!e}ZEggfkjg}MOih_yYA7X)B2hW9n zPqi;t`U?u7(Qe520^rDylWUvUFusq*`hf$OU~k94@FDKO;?kkTnaJ=UZo_upaRL2v zd*%fh`=Rr#Bk(LXY8wA)p#2}hPsa5BzOyK|iPQ~sX=j_{qEve^XGoUYM8qKdK`mIa zAbsy)%*AHP9G49F4C#-wwpgdCk2h}kCqRiSP9sq9lO0^c=a$f@Vk=5DoeB^o#0c6P zE)H-wgKT^-Kk+}ZSv@DSxncEvU!a$2^<&r9b&&9RvAnOEx2_D#NOTI-F%|UD%{tNC z#FG_A&J9H3176UHDL1naCJ`X1b-^kL&=gWL=-RonMw0G-SP)*!P!%Gv3f@4A0*Dof z7huEZGiqg*LkoGv36&c^?MV|(-FLdGBER@>)NoZMdl?k3;=_W&21#UFV$k4;W@|zX$-r zws=xZciN9~zb_sloY#-)J+B!nZnvym_8Fso5|`%qz^vln>~y1U_9swB0bmv1^T{@kGGp2XQ)n<)XeRqhPf{M-vFgu9(&rnI3sdZQKNEK61S>xgdw* zxwY%Q3LHb;^RKhHK}=_7N@lN+-iNW!m$0A8F;@XS&}{w)L_+KKAW>wBHYjVO~& z8(2t)t;6)UqdevZPbJ1(f||Bng!|(;%!w4{K@EN1VbEF#V=pgqXr{oI79wzg>t;v;DYVwStH?hpj_%f2yeC={NHervx%jejE0?5ZOVj?rgdj)^@W<{c}GfWfU~8F z_Tq&w>a}{^iRPyP7fUo^^n~n&PenH>Aq;8b?d-Hh`P)ImefP=2Yi`1>+1W>i5#osh z&$9?k+uQszh&c-v+UbN9J*Ed(MNy4n zx507m8*QXx;HF}qB4fa=olFK9-zW~cn~$0dq+Gr0u$&&c6&8LJ_)5FKR^%Cp7o_n~ z3SZ#hB^pLxdvXBi5c$daKjc)sLXGVH^GDO3&y!P#krA<97)&jb%kb{-)T`EhQ>XY` z`o^2y^Q>L33$V#!qmnx$nVtQTZ>fnw3ZpbVTDvH$5J1Tx$5)?~qpZfrP$-L_#!F@y8VU!kZ{1n5kPNiuzy4Y%GC z;PlKF;ROZCRhsoMQ8?7J8KXu&l0VTALT1ZVXw56-rY$z-(%{K8Mjx#U>$*uxd{HCi zRJF)m0H3%9f1L7k6-ztRkk}~wf0(0|zb=g>5vubV^XzDCrmkmZ4~5N`f7<;(`7J@l zh^t9D5H+JP1dVyLN<42$Ha8yv+7-C}@mXdCGJyXp%<^cM!dM@wve+hUqyO)-fItP| zqNQ>tQ{G>2*!3d5!35daGM$8@(q=IT=4ATh zWK1Se$RxvlhrMSa6KkzBE{A$R@p#nF-MJECiB1Jinf5jn+tCFbchyKAz+n)uDa|BV z(YXLe@}fBHtAV&$OCB$WklG>=qKtTKoH7dhl=ncS1F^cn!=T)Fq5MXEA`% z8dW?+6X*qo@~4=hzYrmX-C)p?geA~x+T9^?UR=9Z<&`Y;7$GoIGHTy@vYn_wXQLb3 zza6!5Fv}q?pu=Ui9-ft@Q}wf*;O=lrMSC!wS1y;G7&^o@?~I^eF1)d|<*t|4GoPP1 ziO~*WEfsx%%IA-&seS49fX&ZLBsqQPecW$>!*yb{%3`Nb7&|K09%8!?h4i@kygRxX z^X^Kk(wC~X%t>L4mp<5v?``7Loomu3G;&gSfuFozk>)#YZjL6{CQL+Y}^?7n9~-GZeMVhnC(LQk&3CAmRT3`}<`Emji+#Q!`P zpW5?3TS1GscvR3{B9{jK{7ss)g{mZd)Wu{_7$W=0g+77|yVsDPo%fr~C$NjG!wdB@ z0Mw&34{X_kIuss;zrW!VS3Vdt*D|2&Sm~FSmUdroa|UVmgw!`ggmV109*B#e%pYJPK+3YWoCUXR|;p1C3y%2#{eqhtQXH54e^UL_&+KJlY z^QOTSHR3Q~V9w4%rk z)@rdcW%>wXiv{CpV~M4cn<$F6#2Y%o5Taw|W2FS{ZymUX;4Mj$w&IW}q)Z;;3wlWY zbm*rzXbpIG?72ZuN3?ct&tj})GpPB9)bn~O%m1=3#D3R`AC8aia=w5Ln*|_4`L?fw zM9M{!ai{_OUJNeqH9T>eAAd9lfMND_n}|Uw^mZ*^HkA>wtmlor<@d=v&40(FEe2q+STU~3Hjfpk1sTLsoa1##Zg?5Kb-090koMsFbGVC_c9!mhF&bO@KF>s=M zNpBxg`P_4T-WoE)yfHCw2NCkozN4!ez?k_O+%$aP-WAGaJTvrr0}-6j26xN|7evyl zvHoixdE6*P*D_X@rjH1@)ydG{$QT*d`|&pm}b` z5*==TmloJ>0dBgD85%}{CDam`#G0e-tO3|g-(&A)gh)vN&)}N?psidc7j`WFEu7hO zR)Dr$JM!=_^)wwaeEdDmLFmJQ#e56hR2N}~lAVPTB z(hsrOPY~hg(HiyQN%Kn#hj?k}d}SZ`d`H0sql0guJSJO&GNL=Jr-7Gj3q&|;<-36J~ij>zgFtoB~1T{glH zAn7P)MrW|x7P0FXz?rw$|V82lDDYDd_Tp#*g2rn(H) z@(0ogvcSh9by^zAQ^#c^Cu#H8pX1VX?ZHK#yz*6ajDVQkB;4%kE z`dKsHl-6>A&GG7V*=vJ%f;hf022Sw8X);@NdHHareNPN)4@vBn*++>ulq+Q`6Xsla zKwy@r%f%-4Mu)2yh}z7yJL4{vcNveyj7>0x$9^>)sck#T@n&;9RmH;E-$_zY7+%!S z4-zKB+LBBURxjv$b~2~#mRmmmS=NAprWG@1K@FdyDEI=0%I}aXV=*(s+Q+%96O^bZ z$Sml_K`?TSkAY`p}L5ixm=w6L^9PD@K@YO3ov8vwhP z)yN{OrO}P`O0x{q+za)@@62JR03pQc?1exz0cx#_h1+%0I(UX^We%bD4 z%-&bJ;_BZB;g91e9+jeWVE3YT5{`G`0tIgZnM@ck`K#^b-1mArp!;HzOq7G>Im!_4 z5Eatk6ZRwUJvKh(Kp{3j|?u?UryO= zS2>P5NVT-m>FCBJfse$q`C{b=VUZGr;}gO#LJ^5VpD(=8_|DP3a*Qx4l!eo<8%;@u z-)b158_ii@t(f@Ozm0~~`>yT1zS%6s#q1}5lfK~?z(ZzS?_3YYs*ZL5FFV=1ADQ?+ zp7+wem=dfuSq4>9Fi;ChWmRdn;;5-*Ce@9PjR^xEFC32z!wkpb`r(2hG&@Y#OXPB@ zI_iaP#|FnH==;7MWoan-P_bnA4!f1hRB!5BQwdOza}XzESUlahY@a0y0~P$M+=9g= z3f5~DFs@YBI7WdxZp^rrfLEd`>FSD#;ugteNbHG#bvNN6gjt`MJjaA-WHHmCJ`FIF z4z(8kUjpk{ac$;9_PwkP_}8!jt8)DJSG9HK4>m-e3v=U$hx6xoO!h55Dz-vFQymNO zpF9LLMaiOC4~2jjg@*9z`00yk_k6+9S|}ESQ45+RqU4~q4c$dYTa-@E|!v+#h&dcrG$AK|7yg&eNB}<`aP7AcO8u$w-r^Y>z>7v z;}|6dBE!&oNMVh520F|rr-YJ}T|A%sG--<3PnF6nkA*Tgtb_$72S_k>%|}ayISPwG zy`xIvlVtP(CV(5R4ta;OJMrkrV>VfTii9+wOaZk{0g{c>!Ty_IB2%_}rknCU(z<`xy`CuQK&kwosE36ynMr?E}O$FymCxgs~t$a-H%F zy7VCJDt0t=;)JqK*Rdx>+ZpnV&#Mod7O>gbizjyUnC)GpN8PMLC{1MrZ%`Ig)YzZp zAM+Od3_E7$6R$$)OEBd*J}?nLT zBtDaa)5_YwEmEb>kJ|&;oBc$^J%30Pxz*mbHcbHn`Sneto!(5V02$(ISbr24uIOWb zQG~M>W+b`PJ~PNqtyXl@q?QoH>fXedhCEq$cr^Qj=N0qZjd1+G0UXWEi)}X}nRQMF z2nW>p;vN_zNwT85mJ{b*OJzGQJh)~GBWo1ojKn}ngxuGJ2OpaSR3l&dIdW=6A>ME_S1 zY2p#%I9-$K{rIz2-`~?PFE5*z;`{IQjMnv<>tKFQ(K?-((99$BTE^}5vP% zt#qh7+@3bi86Kt#-Ae-xx>=SZMT0lG$+Gg97bMMg30U*ff)|JMw=?n(3FS31)rGSE zMHtpNBLMjk9c`Nx;@c91!z}9g@>5Obd4$kjyi`GVVKMJ5J|W>z8{c@DQ4i1FtlZpC zd1z?t$q%~39wM@QRc!%2_6sp?<`yNxz;9~T4Io?jRhT3h)kf(b1r*x3!f({Bob%I` z7#QrjVM2=mqWMNt1Y?P%BZy!rLhLzDcFWmCDN@8}dQsN30@&`lP7p?a0;!GREPg+w z9iWpjiQ|R7P!9g5Hq(*>no4^o$A5c9f3e=ap!b1xe2O|bTkthYP!134Gb zT4NvIqGopMfmef$p8)hA`nDbwwC84-WRZ=lr~@|)hwLqu@}DUoiMMNIPw`uO!;YUL z`?)>CLODJJg8F^<%aKnNYaNn9fb0shYQ1h8;Q3bs;Dx&|rh=h{0?ce3PTyE70NiXD z+;#%2aGYz(wf6|%FqkhD7km+^x?db;*>T)iK*>ov1eilPC_s6kqTuMXsnH!;ffeFM zNgVROemNJahE_G{n?2vZ9hy-12umy!ow4THtvFK{_SJ}%7%L?wit1T^XH_jC`s5_I|7o9JSI&&w@!jtIeB-LL|WPUWi`|LfD} zY$Y8jb_%ib!`)?efSyR66>*&&#GEMKH=dcHXTy!S10rT+?IX$JEkL1@U|G3QB3eWbeRTzTzFdz_=!JV7qj0?9V5Fg=T;7Jav;P(s zSjdZi?R3lurq?b2Bj#Eu;^+?!>9w1{QzV+=i>|$p?9Pq9lC;@8>an3YjUb-#V5Dbb zy~hPX)mj~jHCNSW#lu;BiBHg}mWo~vi8W(oeU}mDcGPNe)Al_PyyV4;as<}|7(>cV z6(VY%rlij-x!8w412dAONt?>NfRL6C8`7O*sK7s8i-%%|q|Ci+giB-1JlA)&P||%e zKpTyZh{)O#eF9EsL)XQh!f72p(1qh~cibU`Jh9 zMn_dD!RBF2f*rT|yB(zH&}zf6etlQ_x-X60I4(7{_Lhg> zYp(mIC*geQjM6XIr!BuN+n%>-J7{StBJ>Krup*~X93Rn9gcGq=MF2EF(=<%?M?)(* zq)X}VJX6o$8p^4462cRH(=VLx8)pyKp~n5vdXayHiv4S>J$%=B)*U{@#>OWCSXX!=vLUF-XBN-@BU`t^CspOXPso;eG{^JCmzEqI9BXrOsnG zaFoX52w`PqrKGHk(0jUvE;2L~o=OuaIx49fMV6upd1vjPV538HyYdZc0Hq^7g`ul5 zVFnTLw%+T&Dw-HbCit>1hAq)NBM2gd=wPsC9PF^vV zT^S30d?iUZy*d5d6m~iJvL9k&h>i)~tU&SuJGLS~xTGRFxmuU6q#^ouONy= zq>ZK`;lS_N5Q9cBCy;x~NB5x8h4C!1D-fbIBUx2>dp>dnPX z@68E+L|3({IKkm`6%0St1zS41vFHJ>WXGm{5BcT1qsk4+;cJ3veRES|aV3QYuV|ye zI%zcfzgYllwX!V{TGGJLT0ZEIg_fbF?PZ@hcFcj&%AqIS+DR~wq>AxBQP*Xr;QcWe zIsRy;2S_5^>2`7b{1bN*rgUQ8W`pLtH zB7YR32y^KCs#g>Y@=yNd2Iw4*o6jFYd8_w%4CX{`o=sTFb9Qo$OU{nS1!%>PYl*64ni}=#-!s`<3mxIy@=padCF=)16`WT%5ZvX3F-&g_16;IrvZ{=_X>Ja^+ zz#a<4jn_pyz&*gj_gsxG_`-MI1=yyHsnBdisu>9Ctuy{7!|&;qE9y4e+n|KYs;lGJ zwI6WVfTSf*m(kZ?I+4^`SWqC!dCkbgB)nXstMsQv)05Kc=`{8J13C()(CI>^iGEB{ z!7^g?(Amod){@KQuQIJIRK1oI)(}w9qJqj{ZGb}j3~4gARTv)abW#D;XtV3v>5qEH z!i@QZVcBH3f|z65RjdMEpz^^B9*={8k6;8`o`fDWC-xdzOiMv%aLb$XKzS3>8(RF| z+zQ>PpQu=F&?dzy(!cmg1!<8G-8^-?aFuvj?e|3N3p%u47|P#j#FURy4#SDj z{ia-6MzfF-WoHCPlQXRy@6`Nc1nF;mlr(_9GHp<$hH1{-#{=-5KBvXVp?^w)8qLv( zcdHIx1vhfTkGn}wjfV8@fEW-s&q$`4pPIY2{4tm9s=-3pkB1geKNg1nwUn}#3^&Ep z=yc(CSxt=ym2&C$p+Yt0fCG2qr%3wG-A0J_Rd%KK*$&rci^>+VX+wC}sY}q{l(n~^v)L`51f4|pJxuEwc zf<1a!64W)J(4C)C`2+cV1-o>aDW|_*s}9I0JUg&DDc@8+Uv0vWTz6ew1fyuwQQ^)u z1ZUTa0HO$M+K9;I2b=vmln?IyQg3|$Yh=z-150L{yT~K=c-f4aBZo?>Cpi9ybKZ=& z)$iDTRR43C2Ab$-Qrb|sI{+rd7UGs~O?u6YnG8Y!-l$a1 zz6(SF6{McrxZGJ|k|N%a|4u<-MjQ^@d567lR@Sx= z2}B!2^De0BU(qb*d0Mf!@6%L+%&x!5$T?8#aK=bAq!1MLSIw|p3M>QZl;+GmL&3Q`S@l;L$sQqtE_RV1ymQqAhICMu#BIW-Y z?~}A$UBaSW!zOzk_t4@*4Ky)fDY-jaQa@a#34cbsf(da_Mw6+uGRv1Q73UucIc$@4 z-JDvNl~@1rcA@*0qkeUQ_vw4$x$eFtfcM4ZDW#rb1KV5PT5amM#FmTwy!a{r|3EnN zvG0|EZ%d3Cuv|eDQ3RyjY#GF)IQZ2S>CK~~7%JEEE}mhfMgNnU+$t+2oB~eO-XA-j zEeIf&#DnpRVJ4kX%+>GeYdX8Kp8U1flr$K+);l(bUa`LBnLIacx8j3py|; z{&P&&%Zx;M3u5~1c^2z~9VW`TaNHlXqqt`t2^^_#%M1++0pz!L2&cc&-WNl;RpnR2~3Ho~g1)|>8Z=Ub2|LcuLd=o8LrCTVT0 z_bo@aQZ)Oyf5xK@t*ZtV%Dg?-9U1iD)^&zuy4A)o!7UskM|`V|yS_~PW5H&bt6CfY zvj9tEDe^)cxMf?EEUGKy}qJgQO97A736`5GKNgB6#NFZVX$h3JxQWLC0IsG`h6eLFIM+{&+- zT~VGK%vwUzj0Itei3=%f)Uu;ZFr?w#q%x9k2`|;arAE<|{U%4QTcHsGr=&gL@g|6$ z%DLz|OE0pHX+^WhE>CSxaB96An0u?FniFB8DukNLD=A=jAxc5>Q;{|fJ^S`rq*TBU z_Up=*$7&pv&2)bpsRVk5jt@y>NOC_gNfIZi^}B*g^w&?}d160;)D=^ZQT;#P9A+&9 ztTYPp&BVhRqU5^rOY1LWbteHj5n4wLVXCuZjHB)B{IVk(p?!2-3KYmmLQaE-WvN(rTW9dV$KR`dw#gc#|7lJqG!H-7$Ku|b3oE}= z)V!~II5VN!nI4%RmtYbUa|5E|Ov{pwLuTtom!ksI6tIhH2ues)LpRXXu=UF&#grP6 z$DEf`cZOdG{RuF~TCVT6S=#9M=DC!Z1JY;=O54|5qk~5wDT<&;p^uK;8tN6ZJ9C@_ ze^KSF=@I1Tmy{oP`;Fq=YjqrUjjz>RVQQoVx7Jf6HD`+`sGg1c>-#EbO$RegDe!CL zpi#@kCxz$mux!8sXieDK$-s}&z9Ka;{;w65Y)cL|K~rR^?f($~7Hpb_!=6T_=wAz9 zr%>#t!2JTj7%bibWkrs5d&0wz7Lj*&C~EQhdn|#dg(g@)j{Y=E3hafIEH%s_@n2E_ z%Wmz{GE82l5Mv1iZA4H6DV)e^JCC0fmo+yCI_#k@D5Txrl3o$X@MlYXdKMikdJLXN z?UJZ!XnZ*#8=7bh2l_)+(Vm#}&tIw2V<8Y}3I}G~3w>_C#eXDv1$^}V?SYW>#J1s1 zkix1?!04bnUdNa`2@dg|De5U{|24m{t2u3YcX?#{lplB+-1LO0EREIyTwk_Qt#x8p zvsoe>y(Pj_Pza9}YRvq38soD9^YRB-^X%OSt`pP+K8hV{%0zxJno(mBA#$d$% zD%jOEB}t_(&^VD~X6cZWm}z^sR$kwei#hy|26U60X*;1PU8~L5A3`!hJT4pb!@T(% zE8Q1aNumch2uqgW{0PvKWL^V%YaoEbf`o<``vsQil1G7w>f4M~O1eoH^yN!75%MTx zLIq-Q%tVD8|L2M5--9?Gh8yCtyZgGhoXfQW0It0}tlS_Abfy}Z_;P{m*V9-jsz3v_ zzdn#9!UF-XMM^O-y01JhkPVC{BVXwkdQ__?OV3W7sIV(+*&1YQR+`C_0d|(89u?-r zd4!=~S=WF&{%CQ?~PNxaYJwyQ-btPbtJ?mR(f{TY+SZR~$4jzpSo%9L?CTOw|6|8~R1 z=pk!Do+V+ z7Ft6EGmB+Y{}Y)p3#^yz=;$qDcLu{MSl;CSN$>-p{(1SH<;^nh>;OU5eKV8WegwqN zXM6oVFGz9?)0SZW=O3sXh$vB7BWmm)8LfzH)UPJdh3G$cb8)VjZWmq?aGNf}dpjaO zi!+7=O9sm|a4H*FRmXJuygL9KV-O;ooEb1|$q86~XiFLeIQ=MF9`Yw5LL(zbYm{83 zzsQ0Tff=AmpkODf0KfR+APPvq02gXv3?8e3K_XQ;p`p{BeoMF$%39g}ElNtlQ^aT% z>@+(O*_Q-CxGkw9PF@tA+iPWaJV$)#+#w+tANA{=31?(;1-vPL_G?rIjhTTrx!C=0 z+T0!IZXVa{jdzD4#{bG6jnJ{O zj@E62aZWUo8GC_(20Y?w4KgFRaCCDwo8DJDpC4DBNjwE-OK2CX&4Zxl#^#HK?FM5i zSS%2YmHBiVWVYEZRgQ&^?m9yK0&sXqKTQA zo$DvFNG>KkSBKf7Ii!y3q8c4D^KkdmW~Z+4KjZzsmI{$9iCzymzy|M_i0wv3OBzwv z0y48G#K)YogZ&$s;IaobYP5sc_bes4)~XsX1hpB|&UF@btu|j3Jolq8vXp8V21D8& z^KUQUr@s4t+0K#|i|eYU+gF~=?cRH+*2I2QsYD!WO>vNf7|5rwiQxZc?Yf3&Xl%?h zT|Ygw%JRN!Pvf-4iTQSzCea&<^wTRY05~g#n%~lbgN=<%$HJn}=|_iUmGaWT_|lSE zC}`hx17p|ypw6UOm-l0@TB{M}X~R9&3$S9Ex^vliWj8w^J_>k$SiYJ3I#V`Nz+R=( zjs((F^t*1yWqD4DRBo;ZQS((wW3+wDB_u*$qosM?j)XoV5W{Tyk$VefBD$28b=|Wu z6#d@M^jkgUK*|ue4t$(p+F@9QptOo7BSl7y7eET%tqaPjlf-QqX&z-K0bNs>tW4CT z3;7@;j>ympqlX@#i;zsmw6RIG5qUvEX1JXbF+tvw2Kz=7pbKn;QG7hv-nafcT6&MA z>s3&)pk-aAtlt_cLxM_a6lS1hvDzG0Gmvol4sJq5mN|MHO1mF6;LOs#k70Uk&sc-5 zxVtxi$U5}-@gxL%P5Wh^bA0$K&OCG=ZVXX)#ObZ$r@D_254ooHh)M`Zm6WtAOO)jy z8j?joaFm?bh2I zL9Pbjd{0a9UYl{p?qGM$vc8|d$4#tX+0h!M707DcsDlN0RiLnbhnP77VaRTHAlsPK z4**0u6}B=^X&F^d#-=q22u33NwD|d?!?ipGYRzFhW;3{euddz?fPXq^`^==sFCWB0N!v8}Z!);b|H_e9%%Ilc< zcvt+`LaRBVB>1(Ptf3ci!S@+Xg{>t*?&v9hs=QBFu}}y?mO;I@8`RHH@?aylBY)~5`G|yZb#XZO8C<5 zaMTTGGty)W5kU$qI?yWcU2t@Pp71bowN#yn;mDEuc(GRLLyRHz)$A>_T%~kpid%nl zwb^)=|8yP~MyaH^2E9B<;zrU~sB z)!F)qm$KLw&qV7^ee5FJYLJJS{x;Yt+;ju^wLq8(EL^_r=6KVijty#zje&z0I>lIt z_aRF;ah4K}u2#mMpG&zDL2QT5~Wvej`W%^=9@b{-B&_8@nAKPeC@e;@fwH_wTv?RiB2iGg1M zZ#R<3ObUBNda&|(mV`3W8|G32k<$s_p6DQrbeBD7`3z%P-?MIKtc)Xq{@cIn6D;$q|<&$bHu7fA{w7mVas`XT6(NEtb$+S_=zXV zg@Q6#uU8hG=)>habvVZCvi$?m>UtpPkXLraUMPLWimEVZM=IjPLpgA zX%ZNI&ew$TsvvjNkqTCHEJk-zDI-gKi79`@ppIqLZ*Pz`UiUo8_5j6(clT@rnAP7oS23gm3t4E+NTSLUc4i_7bqO<`o`EFj% z?7a@@lAgi`Dy8U(5?J^n1zE?p@}7zl6y(}=g9HmzZ~8$x4D~-XX8s&5mPiSvaUQe7 z6U`DL@z31#a;9zJA}J+%gMVy-Re46-8dmJ=n`&)JL*m{QnoL!=#|tyVWpa&>L4x?7 zZK=4Dh_L6)U)@k^5!NmVpgMnO`MjT3 z^f=0P&p-Q_IP_~Kwc{$qnOFxDVkR;j>O2x2E%HoGP9A=erVSn&b8p4P#x5UM(G&T; z7bn$zH{F@g<(BmJ(fiq5y}3ucC7^NT%u1W(kafH8_b+5Z*kNI;VB}Tu*oKr}4V7pN zzm;6KQo9H1oJS{t_vO>pXWqDVy>zxp*Hoc%bv5%d4}R!M@_$+Vny`j|ER#!#)mkg$ zbc`~~;JEonB>q(2l{4=TPmkhXy$3jaS14)TI5I@)NBfUey?qwZh zP@%$-@K_N}D-H@gtp|Za!cf_kqVeKB{gqf1cLp}Y=lVtN#R`F|skxo#&o?bJ7q+%- z@?enCX1gGOj##r9;F;_8dWrQANLCE{7sjqeDc{X)G1B49*9l)jRb09CE@BoZ5FYt8 zk)lDyOl+LHs%UgLsqc84A7(rpx$nT_PM|3CPE^zTF+*=`lZh_l%Srb(;VVS#ukX;` zezW}BLciN2j&!Cp0Xn zkAt#ch-o_L4Agd5F~#MRs1Q&%nl|;=jqu}m_308Szk)rWXp_HH5PT8;cV_?^8v5pj z{#z$?e!I_gKdkg}NWv}slc6_MU@AQ3Nafa;KW$Cdt<%wB$)~5=;E=>G0=28gEM8Zu zpeIDz&m$E@!&=`*S!GKQ+LNOQ+`}y_hGc(3c(?_vdz9mzo?Ilf&uO{2!-nfJx99Z# z%N`G>33%fOzT9K_fM^gKlD(Ygp1MT$I}CxW(I<1#PH`OBX=qJn^$2rkrdP+ep-(ZO zxaGIMmpgOUMebwB2Ly@#C_k>goRTNOlzi@HH=FHvY};jMW|m6hjP2$6H=g6XAT?Nr z-JLMf;lK5pR3;JVl#c`Zzg5^A3_c~M#xrq6sLje5Fa=6C@sgH>lhZ-g&+ZVWV$7D% z-l$*X%Ux?VsibkZqAtPP~sR=A;kn7wHY%v(3Q>&JEC0apYo)in+BXemNUM zP7Ik@tJm@4nA}j=xm%?>o%THgH?-LqP0Jv|G7uC2#LDEd4Kz&SIjd?^TiFuNw}=4E zjrwM}LtD)Yiy&x=60i(Tu*o&5=yv0y{^~}>?9B>C#>R$&2|V5?<*w;{lt3cn8u*sA z9B$v!jD|qi@ar!0`+#yo<^V?ch`)pCMP-LIoL_g7gP2;&mmjhcW$4gyLTHHGJS|P< zImdtG1bfcvEm&rT2SV-~J|Uk#+g+=yyyk}h8_2M;Uw4|Q2Hgs<$%~SjcR&VVt`}H3 zK7QNLCEwoN=gW~L&)sCBLmxQoZVcZ?0>|a?oU!Vr2mrtWcym-Kj5$ehE3W?y-03#k zcXg=6Kj7g9p3lo1#m{}LTGv))C8ivI6A`6boM-pA-Zmrjn=hG??zL8(ZZ}x#Jn*jV zzup;4#CWDv%;^f@reXLg@VWk#=kl+y!xDb!us)5wBoC1o$P>B#BWpL7ruwvE9Q#ge zo@05HS>pw|@gv9k7ZP+Qrtxk&2-RR+b`LE=Vh(h@qKTfV4@9P-GwnLiK^ZO=B;%>O zI%y4<7HXu42GBL4e8?UIGH$WzVezKuri9_r-Cbs>9mqf`MJ{mYe&!fOCzuSW+k1{9 z&!p7aLDyydDAwLAIKSC2LEqPkKUGP!!qWZmQf*oo{@uAF*?!%S#-spM{NI;H9FDuV z4@0A#N4jONE^*KPv`uC8aifEo?ji$LGXhW1pL#m$I6$ScxUZeGIUYpG$(flh(IcYC zdCJgI9RQ*=1bA0gfFBw@zIIP50i>_s0_N}pjx0(dPVC46_SEm+Bk85Nk*RuK)a9gO zg!Wy5VI(ph?VzAo5WPytZkF?OwEf!8Pta8%Jlw~B2UykH?L;lZd4*UQ3eVmBSI1rW zQiJ}$7mxEB$(#A4+?&_R+MN<@JGIK?`4agbHwU4H`TD(piix`fYS}uU7pKLs8r!uN ztKsx$Wdu%&pg1oUB}oee?w5yUeKiX>{H-QlZS|!o_87~9t{se4Zz~upiKhVui(?T& zBNMtzg$CQ(j%aZ3iF-L+^IeaXEc4;2^F0eHP^vNCA|sGC9};!)B~ zO=i@nfN?ZgSLURau_eV>RY(*q-Qx?a z@TCu?!WtJoV#y}pueSUFnd zXUv>e>`r!caFnmx=|*R3pGsAXeGlSAMy&ymKXi1eT0p7ll7wI0_s0Pn?pwOH*4jGJ zlqf<(0v)azBiYtTZYS%|plcxNN1L7Qtj)~FPn9%259QEfSP)^Z9hR4J!*yV zl1gbqxp69h@Ky53!qO7>9Ikp{4YF#detvjt_iZe+v49X}?UJ3_elr>rqY<(sbmiH? zq5CugDM@tn^glMXKzAU-7Rlm=l&#{!Q{Ylf@Jd_<$U)&K4n``HvFB2>{7n09cw-6D z%3HxQLT9?Ki0`i}1%dpOAXv4pVrA9XQBL>ttY951PSpv#Q}_n&8X9n(Zt~d76l?*FOk`wISdq~nFQ=V? z9!c@=9*D&CV{7O@NUu3LEo8x&!5|Y7h<~{#&KGf&t z>6-h#etZfgrXk8HYOFYB_||e{I$<@G>VKh$GIZireP5FBuWF42*DOC~7$4;-*}pSj zM(ZWzYmitO&irZTi@3gU0CF885Hoc%-0qfOH>M;aQ`=}Kay!vQo>$-#(^0XI&^Rs| zN^ZYhbr1im?us;7A+6jT^JQYW;Oy#=cb7qDR&IB&nj-qv9k+U2&e{wi$UO zs&tGC6B!x#pdc6rY)QF(L;LPOl)p|Qqt^}k3gGe|HdV|JIZZf%FwolWcf;O5kLUCH zX%@4I85IfdgbKVrttdjS9K z$lsAE1x(ap)-i;iYG7@UV|v_x9nbJQOwo5%B&@2{a2X0ox%5ymj>21B>Uv2R@@iFI zSZ+#M+lbQr8|*(B<HkzP{jYLFZJ zokCN-hcymXg0F(1bN&@Er*Diyhh#?yqPQ^DGI3UBgrLCuhqFj4UQqUu5nk$4rE2~a zgxRBaxAgO!A8B}6FSgsh?oN_@vYI{lLmPgM)j%us_M4L62xz0IMqQJYSv6d)$!`J0 zWgK4))Op#q9RJO_jwsJ>flrrv6lgbJED{H04uo}1Iwv-4go&|d9`o!lc9gh&+rm9T zJyAK?>Sl@+cyuqR3HYG8O9xTfn;kC*UBd)ix+|tn99-U(&)0_BPwRIn&kj#~pu3sb zZe2F_PWDUFvpI?Sj|gO%uB)c9A~q^?GS%XG&9woxnU?|5e<|<2T4RNtTI1ONxUTq| zjF5`#`vck0!g-no>G2*(l!(8SpOEx!diOZ)Q{9l$52d|<2|2>PF*Z~cGFGXHILeS< zvXUBcy-dzZp%IK_g{42mo>d3S=^H1NQ>}h~`{9XRr>I>)9EU(aWz>6%GjqN|KB=hM zo5=gUIOJ%pxwm_@SvY*R)d)qyGqk)31ZqX02MR%feTfrtf3s3?C(D8IR8bIp3>g6eC*As^>FJpGsBgd%VTnSi#ZxidL6Q5M6cHKI=bI= zf)u$}SXjcqjRA){r1~x~33d-YLcjMLTf%;h`!q(~NDvxE4Yz+XKX!FhOVuJkPzdPcyy4HczvA|6vo+lHG670?`;ARjDDErf%hWkHOcIbcNme`-d!VkU4lM<%&{_hn(W$B4zBg&}%8gGUoqC7^qdO^~>^<|R#D7ci$_wuE6W40qhq-X+lqR)+|p0 zJm9Cf33tAZYYHiFL&bQCjI* zvth&ihHK5P)aWVy8n@nX1i#*sp1sNdtG;g+>ebFykDx@47yosShK}zG#S}k;+2kw2 zUkL(#^V}D#Pz1bCg&b6Iq>dL95KTD*O4?QPCL}%o;YlJUPB6hcM+JwxAKr`mQaN~S zQOY>|cwEz`h*N27cILsi8^Jgz<$vA|a^H*L+BJ%%rlafkdD=)r&s|J(Km?6?%>P^g zIJdqQ*v-CdH3g6()^H76ET#r{3l^9X@^nxIFFoY|V{x7(7v)3VUE>8-^UPoa2Gcaj|m3qz{Jy=c>;s{bl}A50w}U- zs{G8+t(8c$1)-0n2{S9hkS{b&^@Zl6ZCxPkj+3*P9D%xiG3rojxW+^Hm6^J2oBk*B zCI67g%QKreaPcHeG*LlE0}F_?@(&{-{1+?kv{7T2BcoiR$GDG@Z>)Ske|jb2^ykzd zx%A4Db2~hdZHgQG47j#qS_Ry`9cKa=*t>UbhV!Ig^SnTrm+N(>=`!Vs1*TBc&oT&r zscF$|xl)+ZSmSM|E6VTUbXv7v)hJgtx>|kO3ABJ~5SZsx`uc;iqGGF%1_k_quSPE2JxRe|Ps0f5xXC)?VrUjd%A^UTdQuX1juTQtd zhQumq-u%V%_q5_fPoE?LQhI*uQ0X4&V-PiEV$*NpP8ku0jQqIMwupxYIbHzE7d(mu zF5>H)uezwm^Ya&i5H zme$VKeBNhpb@!)MO7RBf$l6^m6j339dcp2@ppFv)r9yVNiULp3=-;H7KYb7j1Bo3J zF$fWWkhRA|UdS*Lkcfc%A80*v^B>3(znG!0hfz|6n`kEHWKfUT)JOrt{ytLPi!AWX zFofmIKUc#XEHwG}2uXy?`bG={Fxs~=w%X$=$#v>RY{n`V5rc~Xw1WC~Y}qA-2YP*wY8sC9jU z8)*VTuy(i;_E+*xnqmGB5UeP9$WBcZk+wHcxV(hdliN6sn&I0m@LLvu*+q+DAQKvy z#UB7OKpXIwaa{QJyD%kx<>ZE;HC7IR&=O;fq5ky3zq3*)51BPu*LZ79*asA9E%#=0 z!7pK*B2q1Rsc$i^co=a%o`G5&RnrqwHrTVZi z&GQO;2q46!ye7pz*9di*#xIe1U4K|=b?{+R8v{%;OxFb`@rVF1iaFu5IdsO?FhX|v zoj6Z&*|taCN)Oa@@ZsO$(T2dG+y>=CG8$|UpM7#otii@v@r{Q$+{xu+i7ClNXc0G9 zstSudVU$O8y?<7A=l7ed??BNH=TwAqKk<0YNr@|)Jg)uLf`u-dSbOr-^QfB9aw3b4AK)XL)KXNbEc#_Jb%NNlE~3sC=dCoLA?+Luih+XBP`tO z>ZV%#@1KfDKS$u*?d@;9@4_1mWr1nd)a}(=;{GjrbB-4L+@VYnD5p|aA-ut9X=%ew z^3=ZsT=IqpnI7=XLG+Ipbd2IIDIJ|G3>|E<)hUZ|KCNN*=PMoPP%iB2Jm%kkjCYO( zVd8-pzcyEd5M7V_R%PXmwdo*{ZdNw7=I7i>;U}cYxL}MJX?eJlI}r6E{lBXYqpnhZ zT%;!w6xoa}TaJDzsr+6p-@ayG`0WVcGTP7l2Uw8IR;Uscy-ArJai+|8m9yNN-1y0- z%GBcTEhk+Hd-H!&2MRR$s$jCboW4Ft&=>iI;GjhKEaQe?(;WQ* z_<&1F%T<$s6(#*cAcJ!0yM1wIdnQ^opcmQqyuJ%^Yf=N=CKWvl9R0}PeOnn{WD`eO zPNA`ol55T2bH--$ze@m=iuu0{Geq-tKdHPWI-Z{IH8=p`(56*jlw>j@N^3$p_d~=b z0b3B%z-&(#$U+8-(&^AY=Eabr^C>sgk&jxg8`LCn7RALfYcdSQV$u2EE7{vks z9~YDS6@>VECo0xR?D}iX3+cMNyut5n^KBvfev^dc2XrTvII^%fir4V3;Z3FCNZ!cK z7@vh-=aB?_m=GvRzaWG??ei%}1gJ``K6I@woD%)FJMLohraHb{oNNJOjMi9vciM_@ zYa8j%(~&p=b-Udu`e)%?LSnJe&`~PX=#gL6)L;cl)SvDX8m()ky?%d&tj~v0Y7`I3 zADao>Rvn?d#N{uJqQD6?W&D@5W>XyrAfjl##0tYBTuzpsl+5lMF?|R&@~&6U7n%Cw zH_=x{nARenS{6oZEd4)(1g zqH8Vr=4v(Ib(lTehkNu4e9Ri3NnC~D4}U$jE03j2{`&x!USM%P_;zt`Cp>A5Q>Jyk;aSXv244iI zcjK!J%c$ADy@}Tg3h+MqWFdXNrT=1*)BY%lC+dgKx7LDU`6K@21s#Y2Nk)#9Fpe5- z)*M_kJyLT%m(I#gf*Sd*YfV=XW~xMY|hw)HiyN1Iv^9Pc7fz(eVK z!-$%=+s{0)Tt3?!ef-(~OA}T&VV!AsAz!}`!=E|`W^hEFEZXw= zw-GNCT^p)A+tkNOEUgA35qq-e^~u^6^dP_B{x>`SloZzdkosA-*8E=9@GXjCGR=tQ z55Icq^?k-0GVWenA3QrkbK>pD3am*p z?GJ!>Z7ES`qEWo1VkNJtSxsUbiriMw8lXudB2j3CNP9Q#)5_i_tIOb8uU zO<5I+eEsOut4I^QMiXjvzF|EN(zfAAsacG^W;kYa!)P7{Ld?Ybr=)Cggf-fO$V3hw zkoDO32-`=&n6f1qw{Ij3JWfN_Sy#J)ylA})p}%3LVddHL!|c-I0bDS%fr-#X(95y@BjE|#zKUhK>+A@&@VP7&inNsAUC!$W{_pf0|$ z5DP6T^?UxM5pk-ZAfXho;i_xklaDaTqLJc84_ng+kA<<;XV~$A5Au-*izQY643A{@ zfiE{}Sq;CWtn379FWQHx9QndaV8C}kW1w|l3GK}J+?hcy%68DRmgU0h9X!8Tv0Jia z(8W^9kK;7wH%sc1{0OgPK$Ea`OGO?c@_AckW2*Vr zl$&+ck*BMwni^ocw)RnYg2;|PcinZ{uoC!b+wN*v({$JxySPURQfH`$h4$7`=r@m zF_Lp|r*++L)X~daV5iP(;_#UQ9INa~7YNHNK76$0;43zJ={E@o?(8tCJsKkvsKR7> zfXU+QK{qm9)UHl;z=K|`e5acm;&ic56-YoaKD?Goovu)bN)eNvg){ z$&LnJB93qpWC)xli{tML`~he3G7m-Q?vH@Sc?&8&7&VTnTBe{dMaR$_Mm{k8;rF(- zWunr8B=oM7YQjKIzrUny-@j9H2Le&`4m%>b-nY`NRoM0t5|E%WkxM2#cVtP}Yt< zAPL-rQZAhsZ+vlSNoLk@lp>AQW?AX7>&-5eL0iJesDR)8m$K@)5Cen!rFO^E#Kiki zv#Ry9s-?xF)3|sVi{&ngtv(b&QV5+|t>d_wjEwBbY$bGB+0DmXURky6_Q)@&+V-~G z`vr1-M_1S8hIrJYd={I(G&V;oT;@uv?L<^WP7qOP9}}rDS=esN7IP|zMPOft>iS9Q zN>cTFze3qtYx!XdZl1G!xaP@6B z2QNbj-&fI15+aHyFhmQ|Z6RmUVR}=dXMxg6pRaYlMB$ANm#R(63>P zktqC!h9GF1Vh)_>w;>75O7ffb*HEZ0a6V&*wvV9?e!sXW1AjUi4sLp$3 z8Xj4IKUfJdwB;c~J>%G{MSZCWWJ-x_zcFme&s?)~>$NQFAa!ia_8sO{G-6n7gMS3(5 zC=!?cn}eg?>xt3TwsOCeg>3c$kp{;&gIvZNv|wP%_=A3Lp`&;)1rNQy+!fUeZxtd`bVR+A`r7TYlm`tu@=H_3gf%RUc(qSM3ZF z`K`9MyW32LpHqwBAv+S=%Uu_ zvic0e2*yCXC?fUG0lD_gUi4@R7AkYoyOU-iR<9SW^EQR)s-lTpzPu8>Oo=VQPWPvF zqE^GX5F4%ffV7fMd0{g|I?hXS{9xZs8E&Hm158G3;cS&*2g(_IcIG{m71jBHe?-&! zd(%QC6@|fWlv|Tjib6f}MAIg(SZooB)4O2=wUl0n{B1FO`kr|yaED24&S>L68%ip+ z9P3=~3|)@3>!v2<`QyENGNdAmU$Hn15J+gRh&v@1XV@CQBy4@q!r%#lr~PHW0G;U6 z?VTiD@0J{7p@<=YM&%vCxw$NHOx>BHc2>A_TvxlGw$8EJsN<$jHpee)p#Pv%Ah z1b&VO)2`2J1j-Enlz5S@$J0Cy$mb7bPA*2x5jE+;pyPGc>3wsXwElE2YqQo7Gnta2 z<8vZjq1hSRR%}MPLp&|;M(MQag*d-pfe@PRezNHO@`+cmra5>3-0TTt5=tYC&_$Sp zAh4qm6tj~`ONP+%{e-E*M`Ub&V>!h;wTKC}KjUf5tt}!x4g0w8Qfg~;5Ji;A za*<-0jDc~}n=LMv=}hQbotBpC7qSn5#D?_=pAiCoz8O)oH9UUh)91e_fa7@TG2wo} zGu3_L+J=Eu?|T4PQd0xW|2UH9uVp{@P@+cn%7+LS$$yqd!3Y~TzXEZ`ea|<;W5B>? zcdmm2Q&3(!DI?3x0|w<`7PSAzG|O^bz9x%uNc)9B>n(3x$*W<&t^+s#2*-fX>j^)VsB>%*C7 zx9>;M&6TrO?@!lug)~NSQ1~_%6h;^gwd!l1Q=ng2rktjr8^=|d&J}=$@Mi7ObLV;m zSzTSTUB&DI6~x8WPh6zsCTpGuB;`T?~^5__-8m!D7#l4C}-r}th|}m9DWc5+(v+`B;WHV!P||XOUg@=X|5Ad z;0KVm<7M%@+q(&OgxQ7VlGkJCdARWsb-qXIxQ#{}A-9iD8U`T=z9kOY3k<4N_X=Tt z$mMX27+?7e-6|H(9@`$A3+Yc}ND|VjR1Q8W2=ry_g|Xc2O=EBVi%wGH&gJU*giOOM z`06FYaa*6Acypw{TKA+=o>AjA9WY+u>{+@bS%xb#6-_(S z>@hzk`hdA6JE06Vr4>dqHNEh-8of_&!0Yq==`m*7I0R)>)NAqc3GMcjVtG7}@H}2| zgt)A7MZrMtdH81HpgO}o>N@btzNe1kEdA>==^S3NWj9rl$9KU2HF3^;=kZ_bNyZ5} zx(VR*IEd%=UAivJ{Fet$+?F?nz3&IOz4t2)P}h-SGXD=cgox7c3D{69;izyBos^8s zVKq=+ert*cAMk?i3goz*P?^5&;lTR!Yc@w+C}*<3mgC&cZfA|>F8y^RD4BwX$JUJl z4wI=Uzbkb#PAGWo2UVU&6*{q)fK4cDuQD|{!T(#IgGGdC;LHD6Ki|*ekW*>vR);X7 zu4!FJ1S<^19)S1Hdha&7P8^@*OQBY6--Y!(Q_v3%9 zJM^32BbJTU`o1e@TWxMa*$mM-@=?v3~w&$^Tb5cc<{KMCLNXkAhuReI6kKLPvi%WVzfpNU4 z*up)$Inp!KwuVqthLlD`3Y}K`vMZ{iT#ycfH(68^Qi)F``5~qy!y7sqXomFX3=&~; zgFP$seon`4m@IfsMOsQGK1{J`E&RnImU=3xD{^M_{IAo!&yjmh0Qi_@ohgApBCE&# z3$XSK7c0*@l)sDZbUcEqKl*AZqfF&r8H6Wh;Wqq2Qo_0L9Xa5#aCHA@UpXE*g@+I; z0Q&j#OrzVAV{7s=+bI?=X54Hyy#CVI*OmW7`bL@lfr$I3TEOc3LeFTLp5)g~zXKJ8 zG9F^m9LO;`tq^N|G{gXZwJ6_3q@*R5H%GepX+~0_*p?B!;Cvp!1akqiKnU@Pin)Qc0UyNYL5~Uk(ma=pu5|iit*g7U-^|6_Ne^e7j-S$K9(PwyfYCgKg0e0>SS+h@sd`~EW&Ghdg5DgU zo`jYjVih?O$p-FkQ6F&5cHP*#Ib@Q?2)&MC(^PwGpySDv5=cmG!=PB^cADQoIs&$D}-~ z^Yt6T+CHy-<(3&o--4W#^`lhW;>4h=X`h$v3^4~u?jB=ntS=PO(Ph|Waf>WfX6Bjn z)$gg;RSD9}sk}?Cz~liF9#?yxp!*T%jQgG-q}j&O@KxRR)!eFJf1u}-Db2w#TlGMg zNPc($KQV|qL)g%{wBSY_4KNj#LGTJbaz zMbJDYEfy6k<|%l3;^y#TG*;4yjea5Hf3v~yDcc>E9=i%?{fGYsZ@D>K>-*W z8IP-3^yfNag=G;g2!c~@^DFp%Hwfs5M|1c&3`mmfyZE>z1Wx2=jGYk+`zE)U;Lh^n zMq=Hl3K`y9pK443GO#xe*p;(%TFFKNOn;#scDuR-M*D%el7W}Rvvwup+rIqo&%bfC zGe>0=l6@Fn?=O3W^zx=K%=3E1ftyl>9xUxo3#>-ZHBE1O3k2K*j<+tUMIQ zgkCSYO?Jz2U6ayk%B(JHuD7cdS0ht$RD2u(zCN!GLk}v;9i53P3j7He3{fp#E5Nd< z)d(_4+jPtfZ7 z2cN0(FTK8jQMZ|e{euCRu<;UFK@z>q$#|jgwFKHuYCCQI2*PKJL+{V*SNbhKwy?J^ zPqLc`yUm;jgm%0SoAuu`dH(0g?1Vliwh{=0LsB7w|FEF!yq&^Jcy+~ak-&NuiF;PHkCfoe$_QO6mw?EIFzP8m24;qy8n%qDl}R7 zWy4dV7~8@#%V~?{y>dWBczPZO7@m*kqciyzLk-u^9rt~3tcpARae_u0nH<@G)3T1Y zsWn!f_SV*j-KjyF^_tu(O!{q5x6w{e+$I$jRhnUcXg#QzTQGwqh>a?jMl`cnkSk@g z({pq^8Ds>DoL3OiRqI0CL_*no09ENaf#Lu)+wDIlvV;_2$x-N-03t>=a-&wQ&R0tz z(noRwRsB0Y?Fs4VisHWn)pOYrp1GUh17PuRMc*F&3|<}l>Gf$n?qHLamo;49{$!6* zYO_1gaXqA|iwnWb5kFh34=lWAkGyljVFO^do><d647UhswN;N>40@!1ZUr}%HU z`5B=~2-yg`n^WfFuqp1$`0c2k^c+!W?6CGE2}BIlD1UhHI5RQ!ow&}md#MBFRB*gz z3~1@x96)!6sm9hOx*0i})w2QWpx|&E8J$2586u(F%v#^oZE0+ zgHdqLxo$4eVeO($J)%^u!{J0G7F#e{PdCcpIQ0C?E|WKeCj+01pW(qJn{|hJD#Ic8 z+y}564+hbp_v*&5Gx3)mY_40<4HXrw^!WErVKvAI1t`(CM~KPE%gQWl!BQ-so;xO4 zTiTB6^6^Gv@KnT&j$dz{l%kY@dz|tvONR3$4L3Mg;sr{vjt5H)8yk0Ng@1)RRnB}; z%guX)^O#hTn>bEC?U=NJyaZLBkBS}T%7wwTzi$gFs)N-`qn8`c&Yuq%<6j^i`#)H! z^iByKfE*Ew!|R;R-X}na^zrtT#)E>#X=4Pe+L)tbG3fc3VZa!DH>ut1cxqX~;yy!s z&WME|FJGbGojWC-!*f!YG$N&FFRP23uSLQ~uURWcsg&nEWXX!d=PxYpf}q`GQ#|bd zS!im4jCEA3c-3W60f>&=1 zmzCrw#6{*lXKGPjXelTISovHp4ThIwJY6p&)D&WEb}1(e!sf+QoY>AdE6n#v$o~6d zOw*IoUA9^b$$Y!xP(&sFL{QpmE%PS%OWUatf``EukDe82H`|$*9MzOGiLx7Sszz60?mx9ddVmW$$o>WwkG;7~zffx#kME2vWBm(;u_W7s-m#w~R}K@JUtT zKkolg51RrboK~ch*xn&w?6`^sLt5}%UmwmD9Q6<_VI1c)Vk{^z#B+|deoJ{4KuyBS z>}jXjcDq3Sb}nilj?3OB&*nYmRJ$^aG+I6Haf{ivJHJ-B{@x2&kWZtD|FthL|>e1j2CNU>c+CK=So%B z*NT;=Z1k3U_ce?ZGVWuK$5*c*nZ~a*Sc;oI>ih96&Mb5WuI4BV{N-9!K?gq0n1xuM zyAI>4nsbpkkX4Q>P**fmab*&kusO@U1Uw6egpVO6G*x1WNqwF0Bgf%5|>3L+tSiS?Ep8Icdw3Tr; ztwoV(m%#O8aY9C};oUrxhOT?i^XQx@P8Kxt-7#k6O@05ZMT779P&)7SF&H=26?<~l zEu!9*Bk+4O6>fb7X!1`G66Ap-wj8N!5!a-YX`3PurpH4h|%sa+s|4H}8Hd!St~GH$KWmys&W zBNH@}K_YHYZn;g&lB_x?yVo+4)pD+hk&<{!%8{5k?<*$w{c&m0s`a9bRKAw?dG2*~x=Q!D5*=IAMLWMO-FGdfWJ2OVWXTz6B8fIC| z`(5j!9VCH3YMAd{V^>S#L@1UUL!I|;{Aj*r31ts>F?+zR?AG7)92v9a%tDW0 zQ4vY{(yPEP(IA`ixoboR-R3aJpc|bih?y{?w)nz$+jW86Yyq0W>KW5AL|v~+a!B=Z$9hDe=g%cK49T$J9P zr#5sd=0#y;V@AfsTO0<`@eEIA<;BbA*ILcQTupuw1 z^+`3w{Ez1D1a9?gs>lYV>!gKZx<0fRU921{Cq>*rpWmZn6lp`JQ)46cQs{I-UDb-Z%Q_xpf>$gk`D?`7WuS z6oFrmPjoVx7lp`MCG9Y3uniScqE#0;;%|h>){6@e)UMd7qy}KrpNNEuv0G#6 zV&~hMN(?Sn)~POeh$CoanQ5_2&8Zk@Ed~?{Fqy5#bav3}rq{0Ov#=PQarb`M*FHtN zuG#pUvtBh@KXeVMJP9F_z2*>dc=AqZK(L@~)=YTp?^7FVIMx{wwm zs{KntSIjou9`{1Vd)nL`j>efIcnEV4)r%eF}q<2nhO!z!o4$*}r0cpU%B80YPFQ~D}|qscW-Op?U>BRW`g`CQ?ICgIA3 zK!7%~KXj42ZjvQ{dJehgz!e2XvW7PT=g@YFG+C0CR=5HJ%+ZKFHaVi(7V_rolTwkWKE@Z6X1)?FK!b_ z`?s$}T|*V~W5`IEt%b?0ZS(j{VK_SDTePMfMz0wV1_Hc7uQ9UBzKg0l!d*?xZn@7` zQIO!lpuwwDETpkn=ry=?iy@p>%_wCt8j;FCqJOU9XmFEK?%X!Y`_MQp0B2)r-F)Rp z@Uk<#`<0#=^v@Cc>XrgYz@G+U$0{+?vbr;hG2JOcfAaiM`tT5y@a|{Puj_}`I*xF@C&5GE?ug^OUK&hTCu08neu&}*V7UCUad1xsqKp?&NUeKrUX&vkW)51VQ@ z<&8Y(g|x`=-C$UY3)crzIdz7(0QzemQ2~9MYI2i6A)9O012r`+POXe--UW{4Ib2xT z{;I{Rzl&R|W}k~;f#;9SbyV9WwA=mmneIWpJW2XE@T@+v6kA;EGX3oM_bNOjd04?FH8&8KNGAXwsZbV5u?oG3$|b0TbkECraeq)k3vny zsBdV9SreL#1aW4&h?<>jhf~_oOz3@O*6fg?HujbYZxiFwhlMbErr;7$@$9KSzTNyX z#wu`vdDDqEuBy^RmguU3s=2A{P=8eRiaiQ%B2 zCE;Dq%le68rD8}#F#1PC3e>{Y6lJK#eB6PvQ$%hl+#iGUvu;AlQD$`DfUw|O*W z?Nr**F2DD1=*rgM3$ztEpQfMrd^kq|CUF9G5CfSlh3)>3Y-m?I6pZL(Qi%2Yg$$y1#`E{ z@>4Nw4#jlBa#M2%yY{8<&@Y20A@0swd`T^iHhYfl3iD+_nI0x_~+N+lMC_dIr}Zy5&~s5*h<80 zB!TI+jm3sj-%rP_oc&{7l*v$i_qDpnf;DURen?q$`h(B1YLtjLs;T0;DR59Ke!GDu zyan}!{D5R%l$$v5NuVX^&XQHWs_ji!ODm|(<{Bh-!^4d7^I!PL95EPbd;vbahhRDc ztr>~@II~hy)najkVr&0GI&CmCC!UU)Dn4M^b%Q$oVF(G`cX4>S2wcGQIzC_lbIM5A z{twmsP%_RSQQZ&Y0PGhvx*vC+|4L{OZofoQ@hmD9Qe)-1_Ek|jx89=srmQq2!}j)C zF|p+(M4fH~JS{c(Wbp2SiNeKtgh*aQ7_vtWTT5v}@cN&jws6tnErnw>nYM8TgyBWs zpsPU6K$IB0GD{uhrHoKBYYAP53Gx9dCkG(wJBbip5LjjuUs6sYy_3*D_B$XeJ*oN7 zUQC?igfn5;Vn(+EZAo+XxZl>PR?l5tOXOL;)U{+5Ern;zq*c+I7hyRTQS)XKHs)cA=lqEEVN zxi9}6GDxTC3!uscmxfAX*o$>D^FBm+|n6GUSGvK#*gteadHC?`rFB5zH1_fsLpw*D9=T7>-mvPPo~OAeZ-nP?G1w|6^n9*HJd5LyT>TXPh6k4w-(F3f#4v*YSDFu<4wnfHJFw%mo}!m+jtE zhxwRnn((ZpDv4s%IT)OEn#^Qgv)PtxGG>xBT4o=|+ZuSiLdv@2D`$jHW!h3^i7>+b zVih(t>?>sbFVo@F&NXtmYysV>55+16H)_e&MBN&kt`D-r)Pg_0V05O&mnWhkJpH`p zjQhPZKEq!>u9z#!khJZFu72_B1==tT&2rFEiz4!et3BFO&FD<-K{jUxQ_206bkn?W z+oS}LF=X9m+(a*nGvB48#;(m@j#_MLJk;boV!$=v+ml?9f0D2{xen2MVioNO2 zUx+@pbuHJW355fi8E6IWKcj%-j>eJ>4!;;n5YOcu6O&@jxOO?@ay>3>UG3K8CW{*Z zJ|!o^w%Fw2{Y?Werzk;ah(g&WUieS^pR{XD7Xy~WgB4Xc&w;*(IIB^3)q-K5l7?uQ z;n+c(D{^4*d?2$Gd!)6ftwwV3;_yGT-hTkjf6ACIczFEl9iv6PckHETlx<%Np3kN(FOqS z#c>=lFo5_3MHF+=rImkR&Bo?2^tp6){IE@c9`Tc(`zmWOO>-B z_7v;+8kc@V1z{tPliDy@ndcCU78bW?=D_Q)3V5u9)@^9(y1tC#+f6co+#67K??hc^ zcx9L%b{Z%n?a4|-;6hyzN7OG~LJ(Ei`Xg;VbOaG4hO$KP^V`O_4EI@`b?qPp>QQV` zEB|8GH%ro$e#|f-^uua5p~(K7-2ulvVltIOEB3HJ@^Jp#L$hd$MF!DSam?1AslALc zY*3^m*^GP?At3F1#32@!EzxP3SKF5f7k(`G!$J{j#Yqg9?mhfLuiu_q8%8KsJ;!Rp z2~|+zK#n~C|1vr)ZDs-_MJ%T_|2fU*eyy@NGXYoKIXYtafx~8m?b=U{9E%*DYV+9C zG}lU;M-wLyVuqc~ZwQ~u&D91b+^(Q23nwT~MMIJcrRN>SRqQul2!&K!Sctq)+x)fH zJjMdj;v>Ic{;$1DDAj_lV52Pw2(&fU^dTVBHEuC@+TL;A9@MF}5V($sKm40)*8r|VyXtcKTH9KhE)6lzS6l7_ zO7IeO7T7st`c<3@bMfyJ0SI{kry9S|h$z$&dmAB3* zw%B=?`bS^#)i9&nE7yOwHA5EG((w9Yhwk-YsC>aWv}K!^7daj1`t7yi=sPVhHs6)h zQ_7HeA5`Je2nJu4+uiOUNi1vWQqaljy1g9Oy!cWG#rJ7^`v!3$EhhY16zaaHr4-Ft zz0w5qva5+_6G*;hyME{&WwwuF?N1})_N)(`NXL4!80Oyi0S57znYf6!g26N@`rD&% z=C#{F)i5iz-rc5Tnjt^l8w~L(J~JBD@te5ZGhPSPbv|~re=l*3N70fVqb4S5G=W|; z(#;msu9q{Fx$yu`IFkml{mr7n-fgOH)j8j}{zFX_AndMU^BY&V^g8pg`x>U}xINKX zTJmx%DpnziW_EkvZMxcI02MZHQcXz(7ZbGa-wb>_a(G!*S{JSy_LwVvlf)I75onxO` zIgpYpqLZCPluBQuiLQF=f2vvqve7EqfO?5C3aVN_*tZ{9yHxDNH?D59ifUOW)0ZD_59MIZ|T%EW`8{KW@eMy`OHBW9Dv5uJzN_W%_ewb2|G zRg&F_G<>sY!nk<8p@X{}t`FKeepbc=%Zc=U)I$!Ug7Y#DgHRTP0O=h+Y!0svK63?g znjj%k$PV%kJH8c1$K`%XO9iY;hj_+_i0J9*?aXs-UQ6Bx1+2_*3C9jeyEH7UVF*Ri zq`Nz86DMUmAob9+;Yk@jLEZ$zie^~mJ@rZr(q^?QU`T)=8pjO+Lx7LP)j(bFd0#g24sgt6g)E6kUE(GzSbsEq z^k?$}o2`QApfzK;0ov?O1d3?r?Tz}Kw6v_@ZmlF+lf9d=E$`J-y0o$kDNyg4DqETM zm4%&3L8YV^0OwL!IcE*%Z7sQZXpSn~R2jti8#*Jv74jba+onz4QySpJN;5VsVM4#+ zlCz)ud#pW0rL{A2@!yiu#I@l4nU;uV2|sB*G##*VuUJU2P{j_j6AqB^w8(#}JkRs_ zC*XIob20JC;0&lMknh5Tii+jt8RobB*617t9goMm#cQ%FDHEGYDEiPqm<**lHF`Hz zIa(WNrjUBxu_p8UTt56vf!#|t)6s;l-?qNKxGTQ!&b4Jk-WlU-o+fmy?Tb3qrbIX zp4J$nB%}ARlhzp)OeWL;36MLr@ChDie9Q~@S{bBzoOhad9<_vS;h03B#XQWyhEG|@ zI*A0c|IcP+xV#XGb^74OGb!g+-0=<<>qo~0&WgR=R{K|cquiHc`n!*mOZdAyS)LIU zy<8MH_wr*eco`IEX)TkggD9|JSKo39)EfY@wmWq4gOtcaW@tcSK;B)b1`sFUPae2l z2g?9+p7|68uvVZ9Fu0^aWja_H$ar2=2N;Lz==(My;A#M{GN47};I<@44^ZsmZ-zhh X@-On*=J4NYWB>wBS3j3^P6l@X literal 34036 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 a{Nvv?eRBe*FIP1K5O})!xvX Date: Sun, 18 Apr 2021 17:41:10 -0400 Subject: [PATCH 38/59] Change name of deploy action --- .github/workflows/deploy.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 6d35a8a..153a0fd 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -1,4 +1,4 @@ -name: Deploy +name: deploy on: push: branches: [ main ] From 3812f10fb0910e6ce5714577b59391b5f2e644ed Mon Sep 17 00:00:00 2001 From: rmarticedeno Date: Tue, 20 Apr 2021 09:58:47 -0400 Subject: [PATCH 39/59] Reemplazar los errores restantes por mensajes predeterminados --- lib/src/data/api/api.dart | 4 ++-- lib/src/utils/constants/errors.dart | 2 ++ 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/lib/src/data/api/api.dart b/lib/src/data/api/api.dart index bbc0350..a832a02 100644 --- a/lib/src/data/api/api.dart +++ b/lib/src/data/api/api.dart @@ -252,7 +252,7 @@ class GestionApi { queryParameters: queryParams, ); } catch (error) { - target.error = Errors.retrieveError(error.toString()); + target.error = Errors.ConnectionError; return target; } @@ -266,7 +266,7 @@ class GestionApi { target = builder(jsonDecode(response.data!) as Map); } } catch (e) { - target.error = e.toString(); + target.error = Errors.DefaultError; } } diff --git a/lib/src/utils/constants/errors.dart b/lib/src/utils/constants/errors.dart index 0049080..b7c4646 100644 --- a/lib/src/utils/constants/errors.dart +++ b/lib/src/utils/constants/errors.dart @@ -3,6 +3,8 @@ class Errors { static const DefaultError = 'Ha ocurrido un error.'; + static const ConnectionError = 'Conexión fallida. Verifique su conectividad.'; + static String? retrieveError(String message) { try { final index = int.parse(message); From 469ed43b4f2516ca0084d8b525101621fbe6d940 Mon Sep 17 00:00:00 2001 From: Leonel Garcia Date: Sat, 24 Apr 2021 15:51:39 -0400 Subject: [PATCH 40/59] Install freezed package and resolve dependencies --- .../data/models/password_reset_user_id.g.dart | 4 +- pubspec.lock | 61 +++++++++++-------- pubspec.yaml | 14 +++-- 3 files changed, 45 insertions(+), 34 deletions(-) diff --git a/lib/src/data/models/password_reset_user_id.g.dart b/lib/src/data/models/password_reset_user_id.g.dart index 799f55a..e34d72c 100644 --- a/lib/src/data/models/password_reset_user_id.g.dart +++ b/lib/src/data/models/password_reset_user_id.g.dart @@ -7,7 +7,9 @@ part of 'password_reset_user_id.dart'; // ************************************************************************** PasswordResetUserId _$PasswordResetUserIdFromJson(Map json) { - return PasswordResetUserId()..userId = json['userId'] as String?; + return PasswordResetUserId( + userId: json['userId'] as String?, + ); } Map _$PasswordResetUserIdToJson( diff --git a/pubspec.lock b/pubspec.lock index e8fc127..d93525b 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -7,14 +7,14 @@ packages: name: _fe_analyzer_shared url: "https://pub.dartlang.org" source: hosted - version: "20.0.0" + version: "21.0.0" analyzer: dependency: transitive description: name: analyzer url: "https://pub.dartlang.org" source: hosted - version: "1.4.0" + version: "1.5.0" archive: dependency: transitive description: @@ -56,56 +56,56 @@ packages: name: build url: "https://pub.dartlang.org" source: hosted - version: "2.0.0" + version: "2.0.1" build_config: dependency: transitive description: name: build_config url: "https://pub.dartlang.org" source: hosted - version: "0.4.7" + version: "1.0.0" build_daemon: dependency: transitive description: name: build_daemon url: "https://pub.dartlang.org" source: hosted - version: "2.1.7" + version: "3.0.0" build_resolvers: dependency: transitive description: name: build_resolvers url: "https://pub.dartlang.org" source: hosted - version: "2.0.0" + version: "2.0.1" build_runner: dependency: "direct dev" description: name: build_runner url: "https://pub.dartlang.org" source: hosted - version: "1.12.2" + version: "2.0.1" build_runner_core: dependency: transitive description: name: build_runner_core url: "https://pub.dartlang.org" source: hosted - version: "6.1.12" + version: "7.0.0" built_collection: dependency: transitive description: name: built_collection url: "https://pub.dartlang.org" source: hosted - version: "4.3.2" + version: "5.0.0" built_value: dependency: transitive description: name: built_value url: "https://pub.dartlang.org" source: hosted - version: "7.1.0" + version: "8.0.5" characters: dependency: transitive description: @@ -147,7 +147,7 @@ packages: name: code_builder url: "https://pub.dartlang.org" source: hosted - version: "3.6.0" + version: "4.0.0" collection: dependency: "direct main" description: @@ -224,7 +224,7 @@ packages: name: fixnum url: "https://pub.dartlang.org" source: hosted - version: "0.10.11" + version: "1.0.0" fl_chart: dependency: "direct main" description: @@ -282,6 +282,20 @@ packages: description: flutter source: sdk version: "0.0.0" + freezed: + dependency: "direct main" + description: + name: freezed + url: "https://pub.dartlang.org" + source: hosted + version: "0.14.1+3" + freezed_annotation: + dependency: "direct main" + description: + name: freezed_annotation + url: "https://pub.dartlang.org" + source: hosted + version: "0.14.1" get_it: dependency: "direct main" description: @@ -302,7 +316,7 @@ packages: name: graphs url: "https://pub.dartlang.org" source: hosted - version: "1.0.0" + version: "2.0.0" http: dependency: transitive description: @@ -316,7 +330,7 @@ packages: name: http_multi_server url: "https://pub.dartlang.org" source: hosted - version: "2.2.0" + version: "3.0.1" http_parser: dependency: transitive description: @@ -337,7 +351,7 @@ packages: name: io url: "https://pub.dartlang.org" source: hosted - version: "0.3.4" + version: "1.0.0" js: dependency: transitive description: @@ -358,7 +372,7 @@ packages: name: json_serializable url: "https://pub.dartlang.org" source: hosted - version: "4.1.0" + version: "4.1.1" lint: dependency: "direct dev" description: @@ -393,7 +407,7 @@ packages: name: mime url: "https://pub.dartlang.org" source: hosted - version: "0.9.7" + version: "1.0.0" nested: dependency: transitive description: @@ -548,13 +562,6 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "1.0.0" - quiver: - dependency: transitive - description: - name: quiver - url: "https://pub.dartlang.org" - source: hosted - version: "2.1.5" responsive_builder: dependency: "direct main" description: @@ -617,7 +624,7 @@ packages: name: shelf_web_socket url: "https://pub.dartlang.org" source: hosted - version: "0.2.4+1" + version: "1.0.1" sky_engine: dependency: transitive description: flutter @@ -685,7 +692,7 @@ packages: name: timing url: "https://pub.dartlang.org" source: hosted - version: "0.1.1+3" + version: "1.0.0" typed_data: dependency: transitive description: @@ -755,7 +762,7 @@ packages: name: web_socket_channel url: "https://pub.dartlang.org" source: hosted - version: "1.2.0" + version: "2.0.0" win32: dependency: transitive description: diff --git a/pubspec.yaml b/pubspec.yaml index e15cfd0..ccc305d 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -1,12 +1,12 @@ name: gestionuh description: A UH managment app -publish_to: 'none' +publish_to: "none" version: 1.0.0+1 environment: - sdk: '>=2.12.0 <3.0.0' + sdk: ">=2.12.0 <3.0.0" dependencies: collection: ^1.15.0-nullsafety.4 @@ -20,6 +20,8 @@ dependencies: flutter_secure_storage: ^4.1.0 flutter_web_plugins: sdk: flutter + freezed: ^0.14.1+3 + freezed_annotation: ^0.14.1 get_it: ^6.0.0 json_annotation: ^4.0.1 package_info_plus: ^1.0.0 @@ -29,7 +31,7 @@ dependencies: url_launcher: ^6.0.3 dev_dependencies: - build_runner: ^1.12.2 + build_runner: ^2.0.1 flutter_launcher_icons: ^0.9.0 flutter_native_splash: ^1.1.7+1 flutter_test: @@ -44,10 +46,10 @@ flutter: flutter_native_splash: image: assets/images/splash2.png - color: '#fdfdfd' + color: "#fdfdfd" fill: false flutter_icons: - android: 'launcher_icon' + android: "launcher_icon" ios: true - image_path: 'assets/images/ico.png' + image_path: "assets/images/ico.png" From 86759d40f9ecb32991808be0862bf03b8accec9f Mon Sep 17 00:00:00 2001 From: Leonel Garcia Date: Sat, 24 Apr 2021 19:12:50 -0400 Subject: [PATCH 41/59] Not empty current password validator --- lib/src/utils/validators.dart | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/lib/src/utils/validators.dart b/lib/src/utils/validators.dart index 74d80a3..35c0bc3 100644 --- a/lib/src/utils/validators.dart +++ b/lib/src/utils/validators.dart @@ -34,3 +34,10 @@ String? answerValidator(String? value) { } return null; } + +String? currentPasswordValidator(String? value) { + if (value == null || value.isEmpty) { + return 'Debe escribir su antigua contraseña'; + } + return null; +} From 6d39cd657e93c588a32a4f58967f0c2ca805403f Mon Sep 17 00:00:00 2001 From: Leonel Garcia Date: Sat, 24 Apr 2021 19:14:05 -0400 Subject: [PATCH 42/59] Reset password bloc changed to freezed way --- .../resetpassword_bloc.dart | 20 +- .../resetpassword_bloc.freezed.dart | 762 ++++++++++++++++++ .../resetpassword_event.dart | 21 +- .../resetpassword_state.dart | 19 +- .../pages/reset_password_page.dart | 34 +- 5 files changed, 809 insertions(+), 47 deletions(-) create mode 100644 lib/src/presentation/blocs/reset_password_bloc/resetpassword_bloc.freezed.dart diff --git a/lib/src/presentation/blocs/reset_password_bloc/resetpassword_bloc.dart b/lib/src/presentation/blocs/reset_password_bloc/resetpassword_bloc.dart index ebd9ed7..c0592bb 100644 --- a/lib/src/presentation/blocs/reset_password_bloc/resetpassword_bloc.dart +++ b/lib/src/presentation/blocs/reset_password_bloc/resetpassword_bloc.dart @@ -1,32 +1,34 @@ import 'dart:async'; import 'package:bloc/bloc.dart'; +import 'package:freezed_annotation/freezed_annotation.dart'; import 'package:gestionuh/src/data/repositories/repositories.dart'; part 'resetpassword_event.dart'; part 'resetpassword_state.dart'; +part 'resetpassword_bloc.freezed.dart'; class ResetPasswordBloc extends Bloc { final AuthRepository authRepository; ResetPasswordBloc({ required this.authRepository, - }) : super(const ResetPasswordInitial(error: '')); + }) : super(const ResetPasswordState.initial()); @override Stream mapEventToState( ResetPasswordEvent event, ) async* { - if (event is ResetPasswordAttempted) { - yield* resetPasswordAttemptedHandler(event); - } + yield* event.map(resetPasswordAttempted: resetPasswordAttemptedHandler); } Stream resetPasswordAttemptedHandler( - ResetPasswordAttempted event) async* { - yield ResetPasswordInProgress(); + _ResetPasswordAttempted event, + ) async* { + yield const ResetPasswordState.inProgress(); if (event.passwordFirst != event.passwordSecond) { - yield const ResetPasswordInitial(error: 'Las contraseñas no coinciden.'); + yield const ResetPasswordState.failure( + error: 'Las contraseñas no coinciden.'); return; } final status = await authRepository.resetPassword( @@ -34,9 +36,9 @@ class ResetPasswordBloc extends Bloc { event.passwordFirst, ); if (status.status ?? false) { - yield ResetPasswordSuccess(); + yield const ResetPasswordState.success(); } else { - yield ResetPasswordInitial( + yield ResetPasswordState.failure( error: status.error ?? 'Ocurrió un error, intente de nuevo.', ); } diff --git a/lib/src/presentation/blocs/reset_password_bloc/resetpassword_bloc.freezed.dart b/lib/src/presentation/blocs/reset_password_bloc/resetpassword_bloc.freezed.dart new file mode 100644 index 0000000..ee3af3f --- /dev/null +++ b/lib/src/presentation/blocs/reset_password_bloc/resetpassword_bloc.freezed.dart @@ -0,0 +1,762 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND +// ignore_for_file: unused_element, deprecated_member_use, deprecated_member_use_from_same_package, use_function_type_syntax_for_parameters, unnecessary_const, avoid_init_to_null, invalid_override_different_default_values_named, prefer_expression_function_bodies, annotate_overrides + +part of 'resetpassword_bloc.dart'; + +// ************************************************************************** +// FreezedGenerator +// ************************************************************************** + +T _$identity(T value) => value; + +final _privateConstructorUsedError = UnsupportedError( + 'It seems like you constructed your class using `MyClass._()`. This constructor is only meant to be used by freezed and you are not supposed to need it nor use it.\nPlease check the documentation here for more informations: https://github.com/rrousselGit/freezed#custom-getters-and-methods'); + +/// @nodoc +class _$ResetPasswordEventTearOff { + const _$ResetPasswordEventTearOff(); + + _ResetPasswordAttempted resetPasswordAttempted( + {required String currentPassword, + required String passwordFirst, + required String passwordSecond}) { + return _ResetPasswordAttempted( + currentPassword: currentPassword, + passwordFirst: passwordFirst, + passwordSecond: passwordSecond, + ); + } +} + +/// @nodoc +const $ResetPasswordEvent = _$ResetPasswordEventTearOff(); + +/// @nodoc +mixin _$ResetPasswordEvent { + String get currentPassword => throw _privateConstructorUsedError; + String get passwordFirst => throw _privateConstructorUsedError; + String get passwordSecond => throw _privateConstructorUsedError; + + @optionalTypeArgs + TResult when({ + required TResult Function( + String currentPassword, String passwordFirst, String passwordSecond) + resetPasswordAttempted, + }) => + throw _privateConstructorUsedError; + @optionalTypeArgs + TResult maybeWhen({ + TResult Function(String currentPassword, String passwordFirst, + String passwordSecond)? + resetPasswordAttempted, + required TResult orElse(), + }) => + throw _privateConstructorUsedError; + @optionalTypeArgs + TResult map({ + required TResult Function(_ResetPasswordAttempted value) + resetPasswordAttempted, + }) => + throw _privateConstructorUsedError; + @optionalTypeArgs + TResult maybeMap({ + TResult Function(_ResetPasswordAttempted value)? resetPasswordAttempted, + required TResult orElse(), + }) => + throw _privateConstructorUsedError; + + @JsonKey(ignore: true) + $ResetPasswordEventCopyWith get copyWith => + throw _privateConstructorUsedError; +} + +/// @nodoc +abstract class $ResetPasswordEventCopyWith<$Res> { + factory $ResetPasswordEventCopyWith( + ResetPasswordEvent value, $Res Function(ResetPasswordEvent) then) = + _$ResetPasswordEventCopyWithImpl<$Res>; + $Res call( + {String currentPassword, String passwordFirst, String passwordSecond}); +} + +/// @nodoc +class _$ResetPasswordEventCopyWithImpl<$Res> + implements $ResetPasswordEventCopyWith<$Res> { + _$ResetPasswordEventCopyWithImpl(this._value, this._then); + + final ResetPasswordEvent _value; + // ignore: unused_field + final $Res Function(ResetPasswordEvent) _then; + + @override + $Res call({ + Object? currentPassword = freezed, + Object? passwordFirst = freezed, + Object? passwordSecond = freezed, + }) { + return _then(_value.copyWith( + currentPassword: currentPassword == freezed + ? _value.currentPassword + : currentPassword // ignore: cast_nullable_to_non_nullable + as String, + passwordFirst: passwordFirst == freezed + ? _value.passwordFirst + : passwordFirst // ignore: cast_nullable_to_non_nullable + as String, + passwordSecond: passwordSecond == freezed + ? _value.passwordSecond + : passwordSecond // ignore: cast_nullable_to_non_nullable + as String, + )); + } +} + +/// @nodoc +abstract class _$ResetPasswordAttemptedCopyWith<$Res> + implements $ResetPasswordEventCopyWith<$Res> { + factory _$ResetPasswordAttemptedCopyWith(_ResetPasswordAttempted value, + $Res Function(_ResetPasswordAttempted) then) = + __$ResetPasswordAttemptedCopyWithImpl<$Res>; + @override + $Res call( + {String currentPassword, String passwordFirst, String passwordSecond}); +} + +/// @nodoc +class __$ResetPasswordAttemptedCopyWithImpl<$Res> + extends _$ResetPasswordEventCopyWithImpl<$Res> + implements _$ResetPasswordAttemptedCopyWith<$Res> { + __$ResetPasswordAttemptedCopyWithImpl(_ResetPasswordAttempted _value, + $Res Function(_ResetPasswordAttempted) _then) + : super(_value, (v) => _then(v as _ResetPasswordAttempted)); + + @override + _ResetPasswordAttempted get _value => super._value as _ResetPasswordAttempted; + + @override + $Res call({ + Object? currentPassword = freezed, + Object? passwordFirst = freezed, + Object? passwordSecond = freezed, + }) { + return _then(_ResetPasswordAttempted( + currentPassword: currentPassword == freezed + ? _value.currentPassword + : currentPassword // ignore: cast_nullable_to_non_nullable + as String, + passwordFirst: passwordFirst == freezed + ? _value.passwordFirst + : passwordFirst // ignore: cast_nullable_to_non_nullable + as String, + passwordSecond: passwordSecond == freezed + ? _value.passwordSecond + : passwordSecond // ignore: cast_nullable_to_non_nullable + as String, + )); + } +} + +/// @nodoc + +class _$_ResetPasswordAttempted implements _ResetPasswordAttempted { + const _$_ResetPasswordAttempted( + {required this.currentPassword, + required this.passwordFirst, + required this.passwordSecond}); + + @override + final String currentPassword; + @override + final String passwordFirst; + @override + final String passwordSecond; + + @override + String toString() { + return 'ResetPasswordEvent.resetPasswordAttempted(currentPassword: $currentPassword, passwordFirst: $passwordFirst, passwordSecond: $passwordSecond)'; + } + + @override + bool operator ==(dynamic other) { + return identical(this, other) || + (other is _ResetPasswordAttempted && + (identical(other.currentPassword, currentPassword) || + const DeepCollectionEquality() + .equals(other.currentPassword, currentPassword)) && + (identical(other.passwordFirst, passwordFirst) || + const DeepCollectionEquality() + .equals(other.passwordFirst, passwordFirst)) && + (identical(other.passwordSecond, passwordSecond) || + const DeepCollectionEquality() + .equals(other.passwordSecond, passwordSecond))); + } + + @override + int get hashCode => + runtimeType.hashCode ^ + const DeepCollectionEquality().hash(currentPassword) ^ + const DeepCollectionEquality().hash(passwordFirst) ^ + const DeepCollectionEquality().hash(passwordSecond); + + @JsonKey(ignore: true) + @override + _$ResetPasswordAttemptedCopyWith<_ResetPasswordAttempted> get copyWith => + __$ResetPasswordAttemptedCopyWithImpl<_ResetPasswordAttempted>( + this, _$identity); + + @override + @optionalTypeArgs + TResult when({ + required TResult Function( + String currentPassword, String passwordFirst, String passwordSecond) + resetPasswordAttempted, + }) { + return resetPasswordAttempted( + currentPassword, passwordFirst, passwordSecond); + } + + @override + @optionalTypeArgs + TResult maybeWhen({ + TResult Function(String currentPassword, String passwordFirst, + String passwordSecond)? + resetPasswordAttempted, + required TResult orElse(), + }) { + if (resetPasswordAttempted != null) { + return resetPasswordAttempted( + currentPassword, passwordFirst, passwordSecond); + } + return orElse(); + } + + @override + @optionalTypeArgs + TResult map({ + required TResult Function(_ResetPasswordAttempted value) + resetPasswordAttempted, + }) { + return resetPasswordAttempted(this); + } + + @override + @optionalTypeArgs + TResult maybeMap({ + TResult Function(_ResetPasswordAttempted value)? resetPasswordAttempted, + required TResult orElse(), + }) { + if (resetPasswordAttempted != null) { + return resetPasswordAttempted(this); + } + return orElse(); + } +} + +abstract class _ResetPasswordAttempted implements ResetPasswordEvent { + const factory _ResetPasswordAttempted( + {required String currentPassword, + required String passwordFirst, + required String passwordSecond}) = _$_ResetPasswordAttempted; + + @override + String get currentPassword => throw _privateConstructorUsedError; + @override + String get passwordFirst => throw _privateConstructorUsedError; + @override + String get passwordSecond => throw _privateConstructorUsedError; + @override + @JsonKey(ignore: true) + _$ResetPasswordAttemptedCopyWith<_ResetPasswordAttempted> get copyWith => + throw _privateConstructorUsedError; +} + +/// @nodoc +class _$ResetPasswordStateTearOff { + const _$ResetPasswordStateTearOff(); + + _ResetPasswordInitialState initial() { + return const _ResetPasswordInitialState(); + } + + _ResetPasswordInProgress inProgress() { + return const _ResetPasswordInProgress(); + } + + _ResetPasswordSuccess success() { + return const _ResetPasswordSuccess(); + } + + _ResetPasswordFailure failure({required String error}) { + return _ResetPasswordFailure( + error: error, + ); + } +} + +/// @nodoc +const $ResetPasswordState = _$ResetPasswordStateTearOff(); + +/// @nodoc +mixin _$ResetPasswordState { + @optionalTypeArgs + TResult when({ + required TResult Function() initial, + required TResult Function() inProgress, + required TResult Function() success, + required TResult Function(String error) failure, + }) => + throw _privateConstructorUsedError; + @optionalTypeArgs + TResult maybeWhen({ + TResult Function()? initial, + TResult Function()? inProgress, + TResult Function()? success, + TResult Function(String error)? failure, + required TResult orElse(), + }) => + throw _privateConstructorUsedError; + @optionalTypeArgs + TResult map({ + required TResult Function(_ResetPasswordInitialState value) initial, + required TResult Function(_ResetPasswordInProgress value) inProgress, + required TResult Function(_ResetPasswordSuccess value) success, + required TResult Function(_ResetPasswordFailure value) failure, + }) => + throw _privateConstructorUsedError; + @optionalTypeArgs + TResult maybeMap({ + TResult Function(_ResetPasswordInitialState value)? initial, + TResult Function(_ResetPasswordInProgress value)? inProgress, + TResult Function(_ResetPasswordSuccess value)? success, + TResult Function(_ResetPasswordFailure value)? failure, + required TResult orElse(), + }) => + throw _privateConstructorUsedError; +} + +/// @nodoc +abstract class $ResetPasswordStateCopyWith<$Res> { + factory $ResetPasswordStateCopyWith( + ResetPasswordState value, $Res Function(ResetPasswordState) then) = + _$ResetPasswordStateCopyWithImpl<$Res>; +} + +/// @nodoc +class _$ResetPasswordStateCopyWithImpl<$Res> + implements $ResetPasswordStateCopyWith<$Res> { + _$ResetPasswordStateCopyWithImpl(this._value, this._then); + + final ResetPasswordState _value; + // ignore: unused_field + final $Res Function(ResetPasswordState) _then; +} + +/// @nodoc +abstract class _$ResetPasswordInitialStateCopyWith<$Res> { + factory _$ResetPasswordInitialStateCopyWith(_ResetPasswordInitialState value, + $Res Function(_ResetPasswordInitialState) then) = + __$ResetPasswordInitialStateCopyWithImpl<$Res>; +} + +/// @nodoc +class __$ResetPasswordInitialStateCopyWithImpl<$Res> + extends _$ResetPasswordStateCopyWithImpl<$Res> + implements _$ResetPasswordInitialStateCopyWith<$Res> { + __$ResetPasswordInitialStateCopyWithImpl(_ResetPasswordInitialState _value, + $Res Function(_ResetPasswordInitialState) _then) + : super(_value, (v) => _then(v as _ResetPasswordInitialState)); + + @override + _ResetPasswordInitialState get _value => + super._value as _ResetPasswordInitialState; +} + +/// @nodoc + +class _$_ResetPasswordInitialState implements _ResetPasswordInitialState { + const _$_ResetPasswordInitialState(); + + @override + String toString() { + return 'ResetPasswordState.initial()'; + } + + @override + bool operator ==(dynamic other) { + return identical(this, other) || (other is _ResetPasswordInitialState); + } + + @override + int get hashCode => runtimeType.hashCode; + + @override + @optionalTypeArgs + TResult when({ + required TResult Function() initial, + required TResult Function() inProgress, + required TResult Function() success, + required TResult Function(String error) failure, + }) { + return initial(); + } + + @override + @optionalTypeArgs + TResult maybeWhen({ + TResult Function()? initial, + TResult Function()? inProgress, + TResult Function()? success, + TResult Function(String error)? failure, + required TResult orElse(), + }) { + if (initial != null) { + return initial(); + } + return orElse(); + } + + @override + @optionalTypeArgs + TResult map({ + required TResult Function(_ResetPasswordInitialState value) initial, + required TResult Function(_ResetPasswordInProgress value) inProgress, + required TResult Function(_ResetPasswordSuccess value) success, + required TResult Function(_ResetPasswordFailure value) failure, + }) { + return initial(this); + } + + @override + @optionalTypeArgs + TResult maybeMap({ + TResult Function(_ResetPasswordInitialState value)? initial, + TResult Function(_ResetPasswordInProgress value)? inProgress, + TResult Function(_ResetPasswordSuccess value)? success, + TResult Function(_ResetPasswordFailure value)? failure, + required TResult orElse(), + }) { + if (initial != null) { + return initial(this); + } + return orElse(); + } +} + +abstract class _ResetPasswordInitialState implements ResetPasswordState { + const factory _ResetPasswordInitialState() = _$_ResetPasswordInitialState; +} + +/// @nodoc +abstract class _$ResetPasswordInProgressCopyWith<$Res> { + factory _$ResetPasswordInProgressCopyWith(_ResetPasswordInProgress value, + $Res Function(_ResetPasswordInProgress) then) = + __$ResetPasswordInProgressCopyWithImpl<$Res>; +} + +/// @nodoc +class __$ResetPasswordInProgressCopyWithImpl<$Res> + extends _$ResetPasswordStateCopyWithImpl<$Res> + implements _$ResetPasswordInProgressCopyWith<$Res> { + __$ResetPasswordInProgressCopyWithImpl(_ResetPasswordInProgress _value, + $Res Function(_ResetPasswordInProgress) _then) + : super(_value, (v) => _then(v as _ResetPasswordInProgress)); + + @override + _ResetPasswordInProgress get _value => + super._value as _ResetPasswordInProgress; +} + +/// @nodoc + +class _$_ResetPasswordInProgress implements _ResetPasswordInProgress { + const _$_ResetPasswordInProgress(); + + @override + String toString() { + return 'ResetPasswordState.inProgress()'; + } + + @override + bool operator ==(dynamic other) { + return identical(this, other) || (other is _ResetPasswordInProgress); + } + + @override + int get hashCode => runtimeType.hashCode; + + @override + @optionalTypeArgs + TResult when({ + required TResult Function() initial, + required TResult Function() inProgress, + required TResult Function() success, + required TResult Function(String error) failure, + }) { + return inProgress(); + } + + @override + @optionalTypeArgs + TResult maybeWhen({ + TResult Function()? initial, + TResult Function()? inProgress, + TResult Function()? success, + TResult Function(String error)? failure, + required TResult orElse(), + }) { + if (inProgress != null) { + return inProgress(); + } + return orElse(); + } + + @override + @optionalTypeArgs + TResult map({ + required TResult Function(_ResetPasswordInitialState value) initial, + required TResult Function(_ResetPasswordInProgress value) inProgress, + required TResult Function(_ResetPasswordSuccess value) success, + required TResult Function(_ResetPasswordFailure value) failure, + }) { + return inProgress(this); + } + + @override + @optionalTypeArgs + TResult maybeMap({ + TResult Function(_ResetPasswordInitialState value)? initial, + TResult Function(_ResetPasswordInProgress value)? inProgress, + TResult Function(_ResetPasswordSuccess value)? success, + TResult Function(_ResetPasswordFailure value)? failure, + required TResult orElse(), + }) { + if (inProgress != null) { + return inProgress(this); + } + return orElse(); + } +} + +abstract class _ResetPasswordInProgress implements ResetPasswordState { + const factory _ResetPasswordInProgress() = _$_ResetPasswordInProgress; +} + +/// @nodoc +abstract class _$ResetPasswordSuccessCopyWith<$Res> { + factory _$ResetPasswordSuccessCopyWith(_ResetPasswordSuccess value, + $Res Function(_ResetPasswordSuccess) then) = + __$ResetPasswordSuccessCopyWithImpl<$Res>; +} + +/// @nodoc +class __$ResetPasswordSuccessCopyWithImpl<$Res> + extends _$ResetPasswordStateCopyWithImpl<$Res> + implements _$ResetPasswordSuccessCopyWith<$Res> { + __$ResetPasswordSuccessCopyWithImpl( + _ResetPasswordSuccess _value, $Res Function(_ResetPasswordSuccess) _then) + : super(_value, (v) => _then(v as _ResetPasswordSuccess)); + + @override + _ResetPasswordSuccess get _value => super._value as _ResetPasswordSuccess; +} + +/// @nodoc + +class _$_ResetPasswordSuccess implements _ResetPasswordSuccess { + const _$_ResetPasswordSuccess(); + + @override + String toString() { + return 'ResetPasswordState.success()'; + } + + @override + bool operator ==(dynamic other) { + return identical(this, other) || (other is _ResetPasswordSuccess); + } + + @override + int get hashCode => runtimeType.hashCode; + + @override + @optionalTypeArgs + TResult when({ + required TResult Function() initial, + required TResult Function() inProgress, + required TResult Function() success, + required TResult Function(String error) failure, + }) { + return success(); + } + + @override + @optionalTypeArgs + TResult maybeWhen({ + TResult Function()? initial, + TResult Function()? inProgress, + TResult Function()? success, + TResult Function(String error)? failure, + required TResult orElse(), + }) { + if (success != null) { + return success(); + } + return orElse(); + } + + @override + @optionalTypeArgs + TResult map({ + required TResult Function(_ResetPasswordInitialState value) initial, + required TResult Function(_ResetPasswordInProgress value) inProgress, + required TResult Function(_ResetPasswordSuccess value) success, + required TResult Function(_ResetPasswordFailure value) failure, + }) { + return success(this); + } + + @override + @optionalTypeArgs + TResult maybeMap({ + TResult Function(_ResetPasswordInitialState value)? initial, + TResult Function(_ResetPasswordInProgress value)? inProgress, + TResult Function(_ResetPasswordSuccess value)? success, + TResult Function(_ResetPasswordFailure value)? failure, + required TResult orElse(), + }) { + if (success != null) { + return success(this); + } + return orElse(); + } +} + +abstract class _ResetPasswordSuccess implements ResetPasswordState { + const factory _ResetPasswordSuccess() = _$_ResetPasswordSuccess; +} + +/// @nodoc +abstract class _$ResetPasswordFailureCopyWith<$Res> { + factory _$ResetPasswordFailureCopyWith(_ResetPasswordFailure value, + $Res Function(_ResetPasswordFailure) then) = + __$ResetPasswordFailureCopyWithImpl<$Res>; + $Res call({String error}); +} + +/// @nodoc +class __$ResetPasswordFailureCopyWithImpl<$Res> + extends _$ResetPasswordStateCopyWithImpl<$Res> + implements _$ResetPasswordFailureCopyWith<$Res> { + __$ResetPasswordFailureCopyWithImpl( + _ResetPasswordFailure _value, $Res Function(_ResetPasswordFailure) _then) + : super(_value, (v) => _then(v as _ResetPasswordFailure)); + + @override + _ResetPasswordFailure get _value => super._value as _ResetPasswordFailure; + + @override + $Res call({ + Object? error = freezed, + }) { + return _then(_ResetPasswordFailure( + error: error == freezed + ? _value.error + : error // ignore: cast_nullable_to_non_nullable + as String, + )); + } +} + +/// @nodoc + +class _$_ResetPasswordFailure implements _ResetPasswordFailure { + const _$_ResetPasswordFailure({required this.error}); + + @override + final String error; + + @override + String toString() { + return 'ResetPasswordState.failure(error: $error)'; + } + + @override + bool operator ==(dynamic other) { + return identical(this, other) || + (other is _ResetPasswordFailure && + (identical(other.error, error) || + const DeepCollectionEquality().equals(other.error, error))); + } + + @override + int get hashCode => + runtimeType.hashCode ^ const DeepCollectionEquality().hash(error); + + @JsonKey(ignore: true) + @override + _$ResetPasswordFailureCopyWith<_ResetPasswordFailure> get copyWith => + __$ResetPasswordFailureCopyWithImpl<_ResetPasswordFailure>( + this, _$identity); + + @override + @optionalTypeArgs + TResult when({ + required TResult Function() initial, + required TResult Function() inProgress, + required TResult Function() success, + required TResult Function(String error) failure, + }) { + return failure(error); + } + + @override + @optionalTypeArgs + TResult maybeWhen({ + TResult Function()? initial, + TResult Function()? inProgress, + TResult Function()? success, + TResult Function(String error)? failure, + required TResult orElse(), + }) { + if (failure != null) { + return failure(error); + } + return orElse(); + } + + @override + @optionalTypeArgs + TResult map({ + required TResult Function(_ResetPasswordInitialState value) initial, + required TResult Function(_ResetPasswordInProgress value) inProgress, + required TResult Function(_ResetPasswordSuccess value) success, + required TResult Function(_ResetPasswordFailure value) failure, + }) { + return failure(this); + } + + @override + @optionalTypeArgs + TResult maybeMap({ + TResult Function(_ResetPasswordInitialState value)? initial, + TResult Function(_ResetPasswordInProgress value)? inProgress, + TResult Function(_ResetPasswordSuccess value)? success, + TResult Function(_ResetPasswordFailure value)? failure, + required TResult orElse(), + }) { + if (failure != null) { + return failure(this); + } + return orElse(); + } +} + +abstract class _ResetPasswordFailure implements ResetPasswordState { + const factory _ResetPasswordFailure({required String error}) = + _$_ResetPasswordFailure; + + String get error => throw _privateConstructorUsedError; + @JsonKey(ignore: true) + _$ResetPasswordFailureCopyWith<_ResetPasswordFailure> get copyWith => + throw _privateConstructorUsedError; +} diff --git a/lib/src/presentation/blocs/reset_password_bloc/resetpassword_event.dart b/lib/src/presentation/blocs/reset_password_bloc/resetpassword_event.dart index 9b5792e..3fd5a4c 100644 --- a/lib/src/presentation/blocs/reset_password_bloc/resetpassword_event.dart +++ b/lib/src/presentation/blocs/reset_password_bloc/resetpassword_event.dart @@ -1,17 +1,10 @@ part of 'resetpassword_bloc.dart'; -abstract class ResetPasswordEvent { - const ResetPasswordEvent(); -} - -class ResetPasswordAttempted extends ResetPasswordEvent { - final String currentPassword; - final String passwordFirst; - final String passwordSecond; - - const ResetPasswordAttempted({ - required this.currentPassword, - required this.passwordFirst, - required this.passwordSecond, - }); +@freezed +class ResetPasswordEvent with _$ResetPasswordEvent { + const factory ResetPasswordEvent.resetPasswordAttempted({ + required String currentPassword, + required String passwordFirst, + required String passwordSecond, + }) = _ResetPasswordAttempted; } diff --git a/lib/src/presentation/blocs/reset_password_bloc/resetpassword_state.dart b/lib/src/presentation/blocs/reset_password_bloc/resetpassword_state.dart index a8b1c1f..34b3d60 100644 --- a/lib/src/presentation/blocs/reset_password_bloc/resetpassword_state.dart +++ b/lib/src/presentation/blocs/reset_password_bloc/resetpassword_state.dart @@ -1,15 +1,10 @@ part of 'resetpassword_bloc.dart'; -abstract class ResetPasswordState { - const ResetPasswordState(); +@freezed +abstract class ResetPasswordState with _$ResetPasswordState { + const factory ResetPasswordState.initial() = _ResetPasswordInitialState; + const factory ResetPasswordState.inProgress() = _ResetPasswordInProgress; + const factory ResetPasswordState.success() = _ResetPasswordSuccess; + const factory ResetPasswordState.failure({required String error}) = + _ResetPasswordFailure; } - -class ResetPasswordInitial extends ResetPasswordState { - final String error; - - const ResetPasswordInitial({required this.error}) : super(); -} - -class ResetPasswordInProgress extends ResetPasswordState {} - -class ResetPasswordSuccess extends ResetPasswordState {} diff --git a/lib/src/presentation/pages/reset_password_page.dart b/lib/src/presentation/pages/reset_password_page.dart index 35a9507..310a7b6 100644 --- a/lib/src/presentation/pages/reset_password_page.dart +++ b/lib/src/presentation/pages/reset_password_page.dart @@ -22,6 +22,7 @@ class _ResetPasswordPageState extends State { @override void dispose() { + _passwordCurrentController.dispose(); _passwordFirstController.dispose(); _passwordSecondController.dispose(); super.dispose(); @@ -38,13 +39,19 @@ class _ResetPasswordPageState extends State { bottomSheet: const GestionUHBottomSheet(), body: BlocConsumer( listener: (context, state) { - if (state is ResetPasswordInitial) { - FlashHelper.errorBar(context, message: state.error); - } - if (state is ResetPasswordSuccess) { - FlashHelper.successBar(context, - message: 'La contraseña ha sido actualizada correctamente.'); - } + state.maybeWhen( + success: () { + FlashHelper.errorBar( + context, + message: 'La contraseña ha sido actualizada correctamente.', + ); + }, + failure: (error) => FlashHelper.errorBar( + context, + message: error, + ), + orElse: () {}, + ); }, builder: (context, state) { return SingleChildScrollView( @@ -99,7 +106,7 @@ class _ResetPasswordPageState extends State { labelText: 'Contraseña Actual', hintText: '********', controller: _passwordCurrentController, - validator: safetyPasswordValidator, + validator: currentPasswordValidator, autovalidateMode: AutovalidateMode.disabled, keyboardType: TextInputType.visiblePassword, ), @@ -140,9 +147,12 @@ class _ResetPasswordPageState extends State { const SizedBox(height: 25), GestionUhDefaultButton( text: 'Actualizar Contraseña', - onPressed: state is ResetPasswordInProgress - ? null - : () => _resetPassword(context), + onPressed: state.maybeWhen( + inProgress: () => null, + orElse: () { + return () => _resetPassword(context); + }, + ), ), const SizedBox(height: 30) ], @@ -160,7 +170,7 @@ class _ResetPasswordPageState extends State { final String passwordFirst = _passwordFirstController.text; final String passwordSecond = _passwordSecondController.text; context.read().add( - ResetPasswordAttempted( + ResetPasswordEvent.resetPasswordAttempted( currentPassword: currentPassword, passwordFirst: passwordFirst, passwordSecond: passwordSecond, From f6bb5c1f81abf231591f61be7c2c3c648d66d1fb Mon Sep 17 00:00:00 2001 From: Leonel Garcia Date: Sat, 24 Apr 2021 19:14:42 -0400 Subject: [PATCH 43/59] Register bloc changed to freezed way --- .../blocs/register_bloc/register_bloc.dart | 42 +- .../register_bloc/register_bloc.freezed.dart | 1410 +++++++++++++++++ .../blocs/register_bloc/register_event.dart | 31 +- .../blocs/register_bloc/register_state.dart | 55 +- lib/src/presentation/pages/register_page.dart | 388 ++--- lib/src/router.dart | 3 +- 6 files changed, 1663 insertions(+), 266 deletions(-) create mode 100644 lib/src/presentation/blocs/register_bloc/register_bloc.freezed.dart diff --git a/lib/src/presentation/blocs/register_bloc/register_bloc.dart b/lib/src/presentation/blocs/register_bloc/register_bloc.dart index 7d10ed8..8537db0 100644 --- a/lib/src/presentation/blocs/register_bloc/register_bloc.dart +++ b/lib/src/presentation/blocs/register_bloc/register_bloc.dart @@ -1,46 +1,50 @@ import 'dart:async'; import 'package:bloc/bloc.dart'; +import 'package:freezed_annotation/freezed_annotation.dart'; import 'package:gestionuh/src/data/models/password_edit_data.dart'; import 'package:gestionuh/src/data/repositories/repositories.dart'; part 'register_event.dart'; part 'register_state.dart'; +part 'register_bloc.freezed.dart'; class RegisterBloc extends Bloc { final AuthRepository repository; - RegisterBloc({required this.repository}) : super(RegisterInitial()); + RegisterBloc({required this.repository}) + : super(const RegisterState.initial()); @override Stream mapEventToState( RegisterEvent event, ) async* { - if (event is QuestionsRequestedRegister) { - yield* questionsRequestedRegisterHandler(event); - } - if (event is FormsEnteredRegister) { - yield* formsEnteredRegisterHandler(event); - } + yield* event.map( + questionsRequested: questionsRequestedRegisterHandler, + formSubmitted: formSubmittedRegisterHandler, + ); } Stream questionsRequestedRegisterHandler( - QuestionsRequestedRegister event) async* { - yield LoadInitialDataInProgress(); + _QuestionsRequestedRegister _) async* { + yield const RegisterState.initialLoadInProgress(); final questions = await repository.getSecurityQuestions(); if (questions.error != null) { - yield LoadInitialDataFailure(error: questions.error!); + yield RegisterState.initialLoadFailure( + error: questions.error ?? 'Compruebe su conexión e intente de nuevo.', + ); } else { - yield LoadInitialDataSuccess(questions: questions.questions!); + yield RegisterState.initialLoadSuccess(questions: questions.questions!); } - // } - Stream formsEnteredRegisterHandler( - FormsEnteredRegister event) async* { - yield RegisterUserInProgress(); + Stream formSubmittedRegisterHandler( + _FormSubmittedRegister event, + ) async* { + yield const RegisterState.registrationInProgress(); if (event.passwordFirst != event.passwordSecond) { - yield const RegisterUserFailure(error: 'Las contraseñas no coinciden.'); + yield const RegisterState.registrationFailure( + error: 'Las contraseñas no coinciden.'); return; } final userId = await repository.sendRegistration(PasswordEditData( @@ -50,9 +54,11 @@ class RegisterBloc extends Bloc { questions: event.questions, )); if (userId.error != null) { - yield RegisterUserFailure(error: userId.error!); + yield RegisterState.registrationFailure( + error: userId.error ?? 'Compruebe su conexión e intente de nuevo.', + ); } else { - yield RegisterUserSuccess(userEmail: userId.userId!); + yield RegisterState.registrationSuccess(userEmail: userId.userId!); } // diff --git a/lib/src/presentation/blocs/register_bloc/register_bloc.freezed.dart b/lib/src/presentation/blocs/register_bloc/register_bloc.freezed.dart new file mode 100644 index 0000000..6dc8ae6 --- /dev/null +++ b/lib/src/presentation/blocs/register_bloc/register_bloc.freezed.dart @@ -0,0 +1,1410 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND +// ignore_for_file: unused_element, deprecated_member_use, deprecated_member_use_from_same_package, use_function_type_syntax_for_parameters, unnecessary_const, avoid_init_to_null, invalid_override_different_default_values_named, prefer_expression_function_bodies, annotate_overrides + +part of 'register_bloc.dart'; + +// ************************************************************************** +// FreezedGenerator +// ************************************************************************** + +T _$identity(T value) => value; + +final _privateConstructorUsedError = UnsupportedError( + 'It seems like you constructed your class using `MyClass._()`. This constructor is only meant to be used by freezed and you are not supposed to need it nor use it.\nPlease check the documentation here for more informations: https://github.com/rrousselGit/freezed#custom-getters-and-methods'); + +/// @nodoc +class _$RegisterEventTearOff { + const _$RegisterEventTearOff(); + + _QuestionsRequestedRegister questionsRequested() { + return const _QuestionsRequestedRegister(); + } + + _FormSubmittedRegister formSubmitted( + {required List answers, + required String ci, + required String passwordFirst, + required String passwordSecond, + required List questions}) { + return _FormSubmittedRegister( + answers: answers, + ci: ci, + passwordFirst: passwordFirst, + passwordSecond: passwordSecond, + questions: questions, + ); + } +} + +/// @nodoc +const $RegisterEvent = _$RegisterEventTearOff(); + +/// @nodoc +mixin _$RegisterEvent { + @optionalTypeArgs + TResult when({ + required TResult Function() questionsRequested, + required TResult Function(List answers, String ci, + String passwordFirst, String passwordSecond, List questions) + formSubmitted, + }) => + throw _privateConstructorUsedError; + @optionalTypeArgs + TResult maybeWhen({ + TResult Function()? questionsRequested, + TResult Function(List answers, String ci, String passwordFirst, + String passwordSecond, List questions)? + formSubmitted, + required TResult orElse(), + }) => + throw _privateConstructorUsedError; + @optionalTypeArgs + TResult map({ + required TResult Function(_QuestionsRequestedRegister value) + questionsRequested, + required TResult Function(_FormSubmittedRegister value) formSubmitted, + }) => + throw _privateConstructorUsedError; + @optionalTypeArgs + TResult maybeMap({ + TResult Function(_QuestionsRequestedRegister value)? questionsRequested, + TResult Function(_FormSubmittedRegister value)? formSubmitted, + required TResult orElse(), + }) => + throw _privateConstructorUsedError; +} + +/// @nodoc +abstract class $RegisterEventCopyWith<$Res> { + factory $RegisterEventCopyWith( + RegisterEvent value, $Res Function(RegisterEvent) then) = + _$RegisterEventCopyWithImpl<$Res>; +} + +/// @nodoc +class _$RegisterEventCopyWithImpl<$Res> + implements $RegisterEventCopyWith<$Res> { + _$RegisterEventCopyWithImpl(this._value, this._then); + + final RegisterEvent _value; + // ignore: unused_field + final $Res Function(RegisterEvent) _then; +} + +/// @nodoc +abstract class _$QuestionsRequestedRegisterCopyWith<$Res> { + factory _$QuestionsRequestedRegisterCopyWith( + _QuestionsRequestedRegister value, + $Res Function(_QuestionsRequestedRegister) then) = + __$QuestionsRequestedRegisterCopyWithImpl<$Res>; +} + +/// @nodoc +class __$QuestionsRequestedRegisterCopyWithImpl<$Res> + extends _$RegisterEventCopyWithImpl<$Res> + implements _$QuestionsRequestedRegisterCopyWith<$Res> { + __$QuestionsRequestedRegisterCopyWithImpl(_QuestionsRequestedRegister _value, + $Res Function(_QuestionsRequestedRegister) _then) + : super(_value, (v) => _then(v as _QuestionsRequestedRegister)); + + @override + _QuestionsRequestedRegister get _value => + super._value as _QuestionsRequestedRegister; +} + +/// @nodoc + +class _$_QuestionsRequestedRegister implements _QuestionsRequestedRegister { + const _$_QuestionsRequestedRegister(); + + @override + String toString() { + return 'RegisterEvent.questionsRequested()'; + } + + @override + bool operator ==(dynamic other) { + return identical(this, other) || (other is _QuestionsRequestedRegister); + } + + @override + int get hashCode => runtimeType.hashCode; + + @override + @optionalTypeArgs + TResult when({ + required TResult Function() questionsRequested, + required TResult Function(List answers, String ci, + String passwordFirst, String passwordSecond, List questions) + formSubmitted, + }) { + return questionsRequested(); + } + + @override + @optionalTypeArgs + TResult maybeWhen({ + TResult Function()? questionsRequested, + TResult Function(List answers, String ci, String passwordFirst, + String passwordSecond, List questions)? + formSubmitted, + required TResult orElse(), + }) { + if (questionsRequested != null) { + return questionsRequested(); + } + return orElse(); + } + + @override + @optionalTypeArgs + TResult map({ + required TResult Function(_QuestionsRequestedRegister value) + questionsRequested, + required TResult Function(_FormSubmittedRegister value) formSubmitted, + }) { + return questionsRequested(this); + } + + @override + @optionalTypeArgs + TResult maybeMap({ + TResult Function(_QuestionsRequestedRegister value)? questionsRequested, + TResult Function(_FormSubmittedRegister value)? formSubmitted, + required TResult orElse(), + }) { + if (questionsRequested != null) { + return questionsRequested(this); + } + return orElse(); + } +} + +abstract class _QuestionsRequestedRegister implements RegisterEvent { + const factory _QuestionsRequestedRegister() = _$_QuestionsRequestedRegister; +} + +/// @nodoc +abstract class _$FormSubmittedRegisterCopyWith<$Res> { + factory _$FormSubmittedRegisterCopyWith(_FormSubmittedRegister value, + $Res Function(_FormSubmittedRegister) then) = + __$FormSubmittedRegisterCopyWithImpl<$Res>; + $Res call( + {List answers, + String ci, + String passwordFirst, + String passwordSecond, + List questions}); +} + +/// @nodoc +class __$FormSubmittedRegisterCopyWithImpl<$Res> + extends _$RegisterEventCopyWithImpl<$Res> + implements _$FormSubmittedRegisterCopyWith<$Res> { + __$FormSubmittedRegisterCopyWithImpl(_FormSubmittedRegister _value, + $Res Function(_FormSubmittedRegister) _then) + : super(_value, (v) => _then(v as _FormSubmittedRegister)); + + @override + _FormSubmittedRegister get _value => super._value as _FormSubmittedRegister; + + @override + $Res call({ + Object? answers = freezed, + Object? ci = freezed, + Object? passwordFirst = freezed, + Object? passwordSecond = freezed, + Object? questions = freezed, + }) { + return _then(_FormSubmittedRegister( + answers: answers == freezed + ? _value.answers + : answers // ignore: cast_nullable_to_non_nullable + as List, + ci: ci == freezed + ? _value.ci + : ci // ignore: cast_nullable_to_non_nullable + as String, + passwordFirst: passwordFirst == freezed + ? _value.passwordFirst + : passwordFirst // ignore: cast_nullable_to_non_nullable + as String, + passwordSecond: passwordSecond == freezed + ? _value.passwordSecond + : passwordSecond // ignore: cast_nullable_to_non_nullable + as String, + questions: questions == freezed + ? _value.questions + : questions // ignore: cast_nullable_to_non_nullable + as List, + )); + } +} + +/// @nodoc + +class _$_FormSubmittedRegister implements _FormSubmittedRegister { + const _$_FormSubmittedRegister( + {required this.answers, + required this.ci, + required this.passwordFirst, + required this.passwordSecond, + required this.questions}); + + @override + final List answers; + @override + final String ci; + @override + final String passwordFirst; + @override + final String passwordSecond; + @override + final List questions; + + @override + String toString() { + return 'RegisterEvent.formSubmitted(answers: $answers, ci: $ci, passwordFirst: $passwordFirst, passwordSecond: $passwordSecond, questions: $questions)'; + } + + @override + bool operator ==(dynamic other) { + return identical(this, other) || + (other is _FormSubmittedRegister && + (identical(other.answers, answers) || + const DeepCollectionEquality() + .equals(other.answers, answers)) && + (identical(other.ci, ci) || + const DeepCollectionEquality().equals(other.ci, ci)) && + (identical(other.passwordFirst, passwordFirst) || + const DeepCollectionEquality() + .equals(other.passwordFirst, passwordFirst)) && + (identical(other.passwordSecond, passwordSecond) || + const DeepCollectionEquality() + .equals(other.passwordSecond, passwordSecond)) && + (identical(other.questions, questions) || + const DeepCollectionEquality() + .equals(other.questions, questions))); + } + + @override + int get hashCode => + runtimeType.hashCode ^ + const DeepCollectionEquality().hash(answers) ^ + const DeepCollectionEquality().hash(ci) ^ + const DeepCollectionEquality().hash(passwordFirst) ^ + const DeepCollectionEquality().hash(passwordSecond) ^ + const DeepCollectionEquality().hash(questions); + + @JsonKey(ignore: true) + @override + _$FormSubmittedRegisterCopyWith<_FormSubmittedRegister> get copyWith => + __$FormSubmittedRegisterCopyWithImpl<_FormSubmittedRegister>( + this, _$identity); + + @override + @optionalTypeArgs + TResult when({ + required TResult Function() questionsRequested, + required TResult Function(List answers, String ci, + String passwordFirst, String passwordSecond, List questions) + formSubmitted, + }) { + return formSubmitted(answers, ci, passwordFirst, passwordSecond, questions); + } + + @override + @optionalTypeArgs + TResult maybeWhen({ + TResult Function()? questionsRequested, + TResult Function(List answers, String ci, String passwordFirst, + String passwordSecond, List questions)? + formSubmitted, + required TResult orElse(), + }) { + if (formSubmitted != null) { + return formSubmitted( + answers, ci, passwordFirst, passwordSecond, questions); + } + return orElse(); + } + + @override + @optionalTypeArgs + TResult map({ + required TResult Function(_QuestionsRequestedRegister value) + questionsRequested, + required TResult Function(_FormSubmittedRegister value) formSubmitted, + }) { + return formSubmitted(this); + } + + @override + @optionalTypeArgs + TResult maybeMap({ + TResult Function(_QuestionsRequestedRegister value)? questionsRequested, + TResult Function(_FormSubmittedRegister value)? formSubmitted, + required TResult orElse(), + }) { + if (formSubmitted != null) { + return formSubmitted(this); + } + return orElse(); + } +} + +abstract class _FormSubmittedRegister implements RegisterEvent { + const factory _FormSubmittedRegister( + {required List answers, + required String ci, + required String passwordFirst, + required String passwordSecond, + required List questions}) = _$_FormSubmittedRegister; + + List get answers => throw _privateConstructorUsedError; + String get ci => throw _privateConstructorUsedError; + String get passwordFirst => throw _privateConstructorUsedError; + String get passwordSecond => throw _privateConstructorUsedError; + List get questions => throw _privateConstructorUsedError; + @JsonKey(ignore: true) + _$FormSubmittedRegisterCopyWith<_FormSubmittedRegister> get copyWith => + throw _privateConstructorUsedError; +} + +/// @nodoc +class _$RegisterStateTearOff { + const _$RegisterStateTearOff(); + + _RegisterInitial initial() { + return const _RegisterInitial(); + } + + _RegisterLoadInitialDataInProgress initialLoadInProgress() { + return const _RegisterLoadInitialDataInProgress(); + } + + _RegisterLoadInitialDataFailure initialLoadFailure({required String error}) { + return _RegisterLoadInitialDataFailure( + error: error, + ); + } + + _RegisterLoadInitialDataSuccess initialLoadSuccess( + {required List questions}) { + return _RegisterLoadInitialDataSuccess( + questions: questions, + ); + } + + _RegisterUserInProgress registrationInProgress() { + return const _RegisterUserInProgress(); + } + + _RegisterUserFailure registrationFailure({required String error}) { + return _RegisterUserFailure( + error: error, + ); + } + + _RegisterUserSuccess registrationSuccess({required String userEmail}) { + return _RegisterUserSuccess( + userEmail: userEmail, + ); + } +} + +/// @nodoc +const $RegisterState = _$RegisterStateTearOff(); + +/// @nodoc +mixin _$RegisterState { + @optionalTypeArgs + TResult when({ + required TResult Function() initial, + required TResult Function() initialLoadInProgress, + required TResult Function(String error) initialLoadFailure, + required TResult Function(List questions) initialLoadSuccess, + required TResult Function() registrationInProgress, + required TResult Function(String error) registrationFailure, + required TResult Function(String userEmail) registrationSuccess, + }) => + throw _privateConstructorUsedError; + @optionalTypeArgs + TResult maybeWhen({ + TResult Function()? initial, + TResult Function()? initialLoadInProgress, + TResult Function(String error)? initialLoadFailure, + TResult Function(List questions)? initialLoadSuccess, + TResult Function()? registrationInProgress, + TResult Function(String error)? registrationFailure, + TResult Function(String userEmail)? registrationSuccess, + required TResult orElse(), + }) => + throw _privateConstructorUsedError; + @optionalTypeArgs + TResult map({ + required TResult Function(_RegisterInitial value) initial, + required TResult Function(_RegisterLoadInitialDataInProgress value) + initialLoadInProgress, + required TResult Function(_RegisterLoadInitialDataFailure value) + initialLoadFailure, + required TResult Function(_RegisterLoadInitialDataSuccess value) + initialLoadSuccess, + required TResult Function(_RegisterUserInProgress value) + registrationInProgress, + required TResult Function(_RegisterUserFailure value) registrationFailure, + required TResult Function(_RegisterUserSuccess value) registrationSuccess, + }) => + throw _privateConstructorUsedError; + @optionalTypeArgs + TResult maybeMap({ + TResult Function(_RegisterInitial value)? initial, + TResult Function(_RegisterLoadInitialDataInProgress value)? + initialLoadInProgress, + TResult Function(_RegisterLoadInitialDataFailure value)? initialLoadFailure, + TResult Function(_RegisterLoadInitialDataSuccess value)? initialLoadSuccess, + TResult Function(_RegisterUserInProgress value)? registrationInProgress, + TResult Function(_RegisterUserFailure value)? registrationFailure, + TResult Function(_RegisterUserSuccess value)? registrationSuccess, + required TResult orElse(), + }) => + throw _privateConstructorUsedError; +} + +/// @nodoc +abstract class $RegisterStateCopyWith<$Res> { + factory $RegisterStateCopyWith( + RegisterState value, $Res Function(RegisterState) then) = + _$RegisterStateCopyWithImpl<$Res>; +} + +/// @nodoc +class _$RegisterStateCopyWithImpl<$Res> + implements $RegisterStateCopyWith<$Res> { + _$RegisterStateCopyWithImpl(this._value, this._then); + + final RegisterState _value; + // ignore: unused_field + final $Res Function(RegisterState) _then; +} + +/// @nodoc +abstract class _$RegisterInitialCopyWith<$Res> { + factory _$RegisterInitialCopyWith( + _RegisterInitial value, $Res Function(_RegisterInitial) then) = + __$RegisterInitialCopyWithImpl<$Res>; +} + +/// @nodoc +class __$RegisterInitialCopyWithImpl<$Res> + extends _$RegisterStateCopyWithImpl<$Res> + implements _$RegisterInitialCopyWith<$Res> { + __$RegisterInitialCopyWithImpl( + _RegisterInitial _value, $Res Function(_RegisterInitial) _then) + : super(_value, (v) => _then(v as _RegisterInitial)); + + @override + _RegisterInitial get _value => super._value as _RegisterInitial; +} + +/// @nodoc + +class _$_RegisterInitial implements _RegisterInitial { + const _$_RegisterInitial(); + + @override + String toString() { + return 'RegisterState.initial()'; + } + + @override + bool operator ==(dynamic other) { + return identical(this, other) || (other is _RegisterInitial); + } + + @override + int get hashCode => runtimeType.hashCode; + + @override + @optionalTypeArgs + TResult when({ + required TResult Function() initial, + required TResult Function() initialLoadInProgress, + required TResult Function(String error) initialLoadFailure, + required TResult Function(List questions) initialLoadSuccess, + required TResult Function() registrationInProgress, + required TResult Function(String error) registrationFailure, + required TResult Function(String userEmail) registrationSuccess, + }) { + return initial(); + } + + @override + @optionalTypeArgs + TResult maybeWhen({ + TResult Function()? initial, + TResult Function()? initialLoadInProgress, + TResult Function(String error)? initialLoadFailure, + TResult Function(List questions)? initialLoadSuccess, + TResult Function()? registrationInProgress, + TResult Function(String error)? registrationFailure, + TResult Function(String userEmail)? registrationSuccess, + required TResult orElse(), + }) { + if (initial != null) { + return initial(); + } + return orElse(); + } + + @override + @optionalTypeArgs + TResult map({ + required TResult Function(_RegisterInitial value) initial, + required TResult Function(_RegisterLoadInitialDataInProgress value) + initialLoadInProgress, + required TResult Function(_RegisterLoadInitialDataFailure value) + initialLoadFailure, + required TResult Function(_RegisterLoadInitialDataSuccess value) + initialLoadSuccess, + required TResult Function(_RegisterUserInProgress value) + registrationInProgress, + required TResult Function(_RegisterUserFailure value) registrationFailure, + required TResult Function(_RegisterUserSuccess value) registrationSuccess, + }) { + return initial(this); + } + + @override + @optionalTypeArgs + TResult maybeMap({ + TResult Function(_RegisterInitial value)? initial, + TResult Function(_RegisterLoadInitialDataInProgress value)? + initialLoadInProgress, + TResult Function(_RegisterLoadInitialDataFailure value)? initialLoadFailure, + TResult Function(_RegisterLoadInitialDataSuccess value)? initialLoadSuccess, + TResult Function(_RegisterUserInProgress value)? registrationInProgress, + TResult Function(_RegisterUserFailure value)? registrationFailure, + TResult Function(_RegisterUserSuccess value)? registrationSuccess, + required TResult orElse(), + }) { + if (initial != null) { + return initial(this); + } + return orElse(); + } +} + +abstract class _RegisterInitial implements RegisterState { + const factory _RegisterInitial() = _$_RegisterInitial; +} + +/// @nodoc +abstract class _$RegisterLoadInitialDataInProgressCopyWith<$Res> { + factory _$RegisterLoadInitialDataInProgressCopyWith( + _RegisterLoadInitialDataInProgress value, + $Res Function(_RegisterLoadInitialDataInProgress) then) = + __$RegisterLoadInitialDataInProgressCopyWithImpl<$Res>; +} + +/// @nodoc +class __$RegisterLoadInitialDataInProgressCopyWithImpl<$Res> + extends _$RegisterStateCopyWithImpl<$Res> + implements _$RegisterLoadInitialDataInProgressCopyWith<$Res> { + __$RegisterLoadInitialDataInProgressCopyWithImpl( + _RegisterLoadInitialDataInProgress _value, + $Res Function(_RegisterLoadInitialDataInProgress) _then) + : super(_value, (v) => _then(v as _RegisterLoadInitialDataInProgress)); + + @override + _RegisterLoadInitialDataInProgress get _value => + super._value as _RegisterLoadInitialDataInProgress; +} + +/// @nodoc + +class _$_RegisterLoadInitialDataInProgress + implements _RegisterLoadInitialDataInProgress { + const _$_RegisterLoadInitialDataInProgress(); + + @override + String toString() { + return 'RegisterState.initialLoadInProgress()'; + } + + @override + bool operator ==(dynamic other) { + return identical(this, other) || + (other is _RegisterLoadInitialDataInProgress); + } + + @override + int get hashCode => runtimeType.hashCode; + + @override + @optionalTypeArgs + TResult when({ + required TResult Function() initial, + required TResult Function() initialLoadInProgress, + required TResult Function(String error) initialLoadFailure, + required TResult Function(List questions) initialLoadSuccess, + required TResult Function() registrationInProgress, + required TResult Function(String error) registrationFailure, + required TResult Function(String userEmail) registrationSuccess, + }) { + return initialLoadInProgress(); + } + + @override + @optionalTypeArgs + TResult maybeWhen({ + TResult Function()? initial, + TResult Function()? initialLoadInProgress, + TResult Function(String error)? initialLoadFailure, + TResult Function(List questions)? initialLoadSuccess, + TResult Function()? registrationInProgress, + TResult Function(String error)? registrationFailure, + TResult Function(String userEmail)? registrationSuccess, + required TResult orElse(), + }) { + if (initialLoadInProgress != null) { + return initialLoadInProgress(); + } + return orElse(); + } + + @override + @optionalTypeArgs + TResult map({ + required TResult Function(_RegisterInitial value) initial, + required TResult Function(_RegisterLoadInitialDataInProgress value) + initialLoadInProgress, + required TResult Function(_RegisterLoadInitialDataFailure value) + initialLoadFailure, + required TResult Function(_RegisterLoadInitialDataSuccess value) + initialLoadSuccess, + required TResult Function(_RegisterUserInProgress value) + registrationInProgress, + required TResult Function(_RegisterUserFailure value) registrationFailure, + required TResult Function(_RegisterUserSuccess value) registrationSuccess, + }) { + return initialLoadInProgress(this); + } + + @override + @optionalTypeArgs + TResult maybeMap({ + TResult Function(_RegisterInitial value)? initial, + TResult Function(_RegisterLoadInitialDataInProgress value)? + initialLoadInProgress, + TResult Function(_RegisterLoadInitialDataFailure value)? initialLoadFailure, + TResult Function(_RegisterLoadInitialDataSuccess value)? initialLoadSuccess, + TResult Function(_RegisterUserInProgress value)? registrationInProgress, + TResult Function(_RegisterUserFailure value)? registrationFailure, + TResult Function(_RegisterUserSuccess value)? registrationSuccess, + required TResult orElse(), + }) { + if (initialLoadInProgress != null) { + return initialLoadInProgress(this); + } + return orElse(); + } +} + +abstract class _RegisterLoadInitialDataInProgress implements RegisterState { + const factory _RegisterLoadInitialDataInProgress() = + _$_RegisterLoadInitialDataInProgress; +} + +/// @nodoc +abstract class _$RegisterLoadInitialDataFailureCopyWith<$Res> { + factory _$RegisterLoadInitialDataFailureCopyWith( + _RegisterLoadInitialDataFailure value, + $Res Function(_RegisterLoadInitialDataFailure) then) = + __$RegisterLoadInitialDataFailureCopyWithImpl<$Res>; + $Res call({String error}); +} + +/// @nodoc +class __$RegisterLoadInitialDataFailureCopyWithImpl<$Res> + extends _$RegisterStateCopyWithImpl<$Res> + implements _$RegisterLoadInitialDataFailureCopyWith<$Res> { + __$RegisterLoadInitialDataFailureCopyWithImpl( + _RegisterLoadInitialDataFailure _value, + $Res Function(_RegisterLoadInitialDataFailure) _then) + : super(_value, (v) => _then(v as _RegisterLoadInitialDataFailure)); + + @override + _RegisterLoadInitialDataFailure get _value => + super._value as _RegisterLoadInitialDataFailure; + + @override + $Res call({ + Object? error = freezed, + }) { + return _then(_RegisterLoadInitialDataFailure( + error: error == freezed + ? _value.error + : error // ignore: cast_nullable_to_non_nullable + as String, + )); + } +} + +/// @nodoc + +class _$_RegisterLoadInitialDataFailure + implements _RegisterLoadInitialDataFailure { + const _$_RegisterLoadInitialDataFailure({required this.error}); + + @override + final String error; + + @override + String toString() { + return 'RegisterState.initialLoadFailure(error: $error)'; + } + + @override + bool operator ==(dynamic other) { + return identical(this, other) || + (other is _RegisterLoadInitialDataFailure && + (identical(other.error, error) || + const DeepCollectionEquality().equals(other.error, error))); + } + + @override + int get hashCode => + runtimeType.hashCode ^ const DeepCollectionEquality().hash(error); + + @JsonKey(ignore: true) + @override + _$RegisterLoadInitialDataFailureCopyWith<_RegisterLoadInitialDataFailure> + get copyWith => __$RegisterLoadInitialDataFailureCopyWithImpl< + _RegisterLoadInitialDataFailure>(this, _$identity); + + @override + @optionalTypeArgs + TResult when({ + required TResult Function() initial, + required TResult Function() initialLoadInProgress, + required TResult Function(String error) initialLoadFailure, + required TResult Function(List questions) initialLoadSuccess, + required TResult Function() registrationInProgress, + required TResult Function(String error) registrationFailure, + required TResult Function(String userEmail) registrationSuccess, + }) { + return initialLoadFailure(error); + } + + @override + @optionalTypeArgs + TResult maybeWhen({ + TResult Function()? initial, + TResult Function()? initialLoadInProgress, + TResult Function(String error)? initialLoadFailure, + TResult Function(List questions)? initialLoadSuccess, + TResult Function()? registrationInProgress, + TResult Function(String error)? registrationFailure, + TResult Function(String userEmail)? registrationSuccess, + required TResult orElse(), + }) { + if (initialLoadFailure != null) { + return initialLoadFailure(error); + } + return orElse(); + } + + @override + @optionalTypeArgs + TResult map({ + required TResult Function(_RegisterInitial value) initial, + required TResult Function(_RegisterLoadInitialDataInProgress value) + initialLoadInProgress, + required TResult Function(_RegisterLoadInitialDataFailure value) + initialLoadFailure, + required TResult Function(_RegisterLoadInitialDataSuccess value) + initialLoadSuccess, + required TResult Function(_RegisterUserInProgress value) + registrationInProgress, + required TResult Function(_RegisterUserFailure value) registrationFailure, + required TResult Function(_RegisterUserSuccess value) registrationSuccess, + }) { + return initialLoadFailure(this); + } + + @override + @optionalTypeArgs + TResult maybeMap({ + TResult Function(_RegisterInitial value)? initial, + TResult Function(_RegisterLoadInitialDataInProgress value)? + initialLoadInProgress, + TResult Function(_RegisterLoadInitialDataFailure value)? initialLoadFailure, + TResult Function(_RegisterLoadInitialDataSuccess value)? initialLoadSuccess, + TResult Function(_RegisterUserInProgress value)? registrationInProgress, + TResult Function(_RegisterUserFailure value)? registrationFailure, + TResult Function(_RegisterUserSuccess value)? registrationSuccess, + required TResult orElse(), + }) { + if (initialLoadFailure != null) { + return initialLoadFailure(this); + } + return orElse(); + } +} + +abstract class _RegisterLoadInitialDataFailure implements RegisterState { + const factory _RegisterLoadInitialDataFailure({required String error}) = + _$_RegisterLoadInitialDataFailure; + + String get error => throw _privateConstructorUsedError; + @JsonKey(ignore: true) + _$RegisterLoadInitialDataFailureCopyWith<_RegisterLoadInitialDataFailure> + get copyWith => throw _privateConstructorUsedError; +} + +/// @nodoc +abstract class _$RegisterLoadInitialDataSuccessCopyWith<$Res> { + factory _$RegisterLoadInitialDataSuccessCopyWith( + _RegisterLoadInitialDataSuccess value, + $Res Function(_RegisterLoadInitialDataSuccess) then) = + __$RegisterLoadInitialDataSuccessCopyWithImpl<$Res>; + $Res call({List questions}); +} + +/// @nodoc +class __$RegisterLoadInitialDataSuccessCopyWithImpl<$Res> + extends _$RegisterStateCopyWithImpl<$Res> + implements _$RegisterLoadInitialDataSuccessCopyWith<$Res> { + __$RegisterLoadInitialDataSuccessCopyWithImpl( + _RegisterLoadInitialDataSuccess _value, + $Res Function(_RegisterLoadInitialDataSuccess) _then) + : super(_value, (v) => _then(v as _RegisterLoadInitialDataSuccess)); + + @override + _RegisterLoadInitialDataSuccess get _value => + super._value as _RegisterLoadInitialDataSuccess; + + @override + $Res call({ + Object? questions = freezed, + }) { + return _then(_RegisterLoadInitialDataSuccess( + questions: questions == freezed + ? _value.questions + : questions // ignore: cast_nullable_to_non_nullable + as List, + )); + } +} + +/// @nodoc + +class _$_RegisterLoadInitialDataSuccess + implements _RegisterLoadInitialDataSuccess { + const _$_RegisterLoadInitialDataSuccess({required this.questions}); + + @override + final List questions; + + @override + String toString() { + return 'RegisterState.initialLoadSuccess(questions: $questions)'; + } + + @override + bool operator ==(dynamic other) { + return identical(this, other) || + (other is _RegisterLoadInitialDataSuccess && + (identical(other.questions, questions) || + const DeepCollectionEquality() + .equals(other.questions, questions))); + } + + @override + int get hashCode => + runtimeType.hashCode ^ const DeepCollectionEquality().hash(questions); + + @JsonKey(ignore: true) + @override + _$RegisterLoadInitialDataSuccessCopyWith<_RegisterLoadInitialDataSuccess> + get copyWith => __$RegisterLoadInitialDataSuccessCopyWithImpl< + _RegisterLoadInitialDataSuccess>(this, _$identity); + + @override + @optionalTypeArgs + TResult when({ + required TResult Function() initial, + required TResult Function() initialLoadInProgress, + required TResult Function(String error) initialLoadFailure, + required TResult Function(List questions) initialLoadSuccess, + required TResult Function() registrationInProgress, + required TResult Function(String error) registrationFailure, + required TResult Function(String userEmail) registrationSuccess, + }) { + return initialLoadSuccess(questions); + } + + @override + @optionalTypeArgs + TResult maybeWhen({ + TResult Function()? initial, + TResult Function()? initialLoadInProgress, + TResult Function(String error)? initialLoadFailure, + TResult Function(List questions)? initialLoadSuccess, + TResult Function()? registrationInProgress, + TResult Function(String error)? registrationFailure, + TResult Function(String userEmail)? registrationSuccess, + required TResult orElse(), + }) { + if (initialLoadSuccess != null) { + return initialLoadSuccess(questions); + } + return orElse(); + } + + @override + @optionalTypeArgs + TResult map({ + required TResult Function(_RegisterInitial value) initial, + required TResult Function(_RegisterLoadInitialDataInProgress value) + initialLoadInProgress, + required TResult Function(_RegisterLoadInitialDataFailure value) + initialLoadFailure, + required TResult Function(_RegisterLoadInitialDataSuccess value) + initialLoadSuccess, + required TResult Function(_RegisterUserInProgress value) + registrationInProgress, + required TResult Function(_RegisterUserFailure value) registrationFailure, + required TResult Function(_RegisterUserSuccess value) registrationSuccess, + }) { + return initialLoadSuccess(this); + } + + @override + @optionalTypeArgs + TResult maybeMap({ + TResult Function(_RegisterInitial value)? initial, + TResult Function(_RegisterLoadInitialDataInProgress value)? + initialLoadInProgress, + TResult Function(_RegisterLoadInitialDataFailure value)? initialLoadFailure, + TResult Function(_RegisterLoadInitialDataSuccess value)? initialLoadSuccess, + TResult Function(_RegisterUserInProgress value)? registrationInProgress, + TResult Function(_RegisterUserFailure value)? registrationFailure, + TResult Function(_RegisterUserSuccess value)? registrationSuccess, + required TResult orElse(), + }) { + if (initialLoadSuccess != null) { + return initialLoadSuccess(this); + } + return orElse(); + } +} + +abstract class _RegisterLoadInitialDataSuccess implements RegisterState { + const factory _RegisterLoadInitialDataSuccess( + {required List questions}) = _$_RegisterLoadInitialDataSuccess; + + List get questions => throw _privateConstructorUsedError; + @JsonKey(ignore: true) + _$RegisterLoadInitialDataSuccessCopyWith<_RegisterLoadInitialDataSuccess> + get copyWith => throw _privateConstructorUsedError; +} + +/// @nodoc +abstract class _$RegisterUserInProgressCopyWith<$Res> { + factory _$RegisterUserInProgressCopyWith(_RegisterUserInProgress value, + $Res Function(_RegisterUserInProgress) then) = + __$RegisterUserInProgressCopyWithImpl<$Res>; +} + +/// @nodoc +class __$RegisterUserInProgressCopyWithImpl<$Res> + extends _$RegisterStateCopyWithImpl<$Res> + implements _$RegisterUserInProgressCopyWith<$Res> { + __$RegisterUserInProgressCopyWithImpl(_RegisterUserInProgress _value, + $Res Function(_RegisterUserInProgress) _then) + : super(_value, (v) => _then(v as _RegisterUserInProgress)); + + @override + _RegisterUserInProgress get _value => super._value as _RegisterUserInProgress; +} + +/// @nodoc + +class _$_RegisterUserInProgress implements _RegisterUserInProgress { + const _$_RegisterUserInProgress(); + + @override + String toString() { + return 'RegisterState.registrationInProgress()'; + } + + @override + bool operator ==(dynamic other) { + return identical(this, other) || (other is _RegisterUserInProgress); + } + + @override + int get hashCode => runtimeType.hashCode; + + @override + @optionalTypeArgs + TResult when({ + required TResult Function() initial, + required TResult Function() initialLoadInProgress, + required TResult Function(String error) initialLoadFailure, + required TResult Function(List questions) initialLoadSuccess, + required TResult Function() registrationInProgress, + required TResult Function(String error) registrationFailure, + required TResult Function(String userEmail) registrationSuccess, + }) { + return registrationInProgress(); + } + + @override + @optionalTypeArgs + TResult maybeWhen({ + TResult Function()? initial, + TResult Function()? initialLoadInProgress, + TResult Function(String error)? initialLoadFailure, + TResult Function(List questions)? initialLoadSuccess, + TResult Function()? registrationInProgress, + TResult Function(String error)? registrationFailure, + TResult Function(String userEmail)? registrationSuccess, + required TResult orElse(), + }) { + if (registrationInProgress != null) { + return registrationInProgress(); + } + return orElse(); + } + + @override + @optionalTypeArgs + TResult map({ + required TResult Function(_RegisterInitial value) initial, + required TResult Function(_RegisterLoadInitialDataInProgress value) + initialLoadInProgress, + required TResult Function(_RegisterLoadInitialDataFailure value) + initialLoadFailure, + required TResult Function(_RegisterLoadInitialDataSuccess value) + initialLoadSuccess, + required TResult Function(_RegisterUserInProgress value) + registrationInProgress, + required TResult Function(_RegisterUserFailure value) registrationFailure, + required TResult Function(_RegisterUserSuccess value) registrationSuccess, + }) { + return registrationInProgress(this); + } + + @override + @optionalTypeArgs + TResult maybeMap({ + TResult Function(_RegisterInitial value)? initial, + TResult Function(_RegisterLoadInitialDataInProgress value)? + initialLoadInProgress, + TResult Function(_RegisterLoadInitialDataFailure value)? initialLoadFailure, + TResult Function(_RegisterLoadInitialDataSuccess value)? initialLoadSuccess, + TResult Function(_RegisterUserInProgress value)? registrationInProgress, + TResult Function(_RegisterUserFailure value)? registrationFailure, + TResult Function(_RegisterUserSuccess value)? registrationSuccess, + required TResult orElse(), + }) { + if (registrationInProgress != null) { + return registrationInProgress(this); + } + return orElse(); + } +} + +abstract class _RegisterUserInProgress implements RegisterState { + const factory _RegisterUserInProgress() = _$_RegisterUserInProgress; +} + +/// @nodoc +abstract class _$RegisterUserFailureCopyWith<$Res> { + factory _$RegisterUserFailureCopyWith(_RegisterUserFailure value, + $Res Function(_RegisterUserFailure) then) = + __$RegisterUserFailureCopyWithImpl<$Res>; + $Res call({String error}); +} + +/// @nodoc +class __$RegisterUserFailureCopyWithImpl<$Res> + extends _$RegisterStateCopyWithImpl<$Res> + implements _$RegisterUserFailureCopyWith<$Res> { + __$RegisterUserFailureCopyWithImpl( + _RegisterUserFailure _value, $Res Function(_RegisterUserFailure) _then) + : super(_value, (v) => _then(v as _RegisterUserFailure)); + + @override + _RegisterUserFailure get _value => super._value as _RegisterUserFailure; + + @override + $Res call({ + Object? error = freezed, + }) { + return _then(_RegisterUserFailure( + error: error == freezed + ? _value.error + : error // ignore: cast_nullable_to_non_nullable + as String, + )); + } +} + +/// @nodoc + +class _$_RegisterUserFailure implements _RegisterUserFailure { + const _$_RegisterUserFailure({required this.error}); + + @override + final String error; + + @override + String toString() { + return 'RegisterState.registrationFailure(error: $error)'; + } + + @override + bool operator ==(dynamic other) { + return identical(this, other) || + (other is _RegisterUserFailure && + (identical(other.error, error) || + const DeepCollectionEquality().equals(other.error, error))); + } + + @override + int get hashCode => + runtimeType.hashCode ^ const DeepCollectionEquality().hash(error); + + @JsonKey(ignore: true) + @override + _$RegisterUserFailureCopyWith<_RegisterUserFailure> get copyWith => + __$RegisterUserFailureCopyWithImpl<_RegisterUserFailure>( + this, _$identity); + + @override + @optionalTypeArgs + TResult when({ + required TResult Function() initial, + required TResult Function() initialLoadInProgress, + required TResult Function(String error) initialLoadFailure, + required TResult Function(List questions) initialLoadSuccess, + required TResult Function() registrationInProgress, + required TResult Function(String error) registrationFailure, + required TResult Function(String userEmail) registrationSuccess, + }) { + return registrationFailure(error); + } + + @override + @optionalTypeArgs + TResult maybeWhen({ + TResult Function()? initial, + TResult Function()? initialLoadInProgress, + TResult Function(String error)? initialLoadFailure, + TResult Function(List questions)? initialLoadSuccess, + TResult Function()? registrationInProgress, + TResult Function(String error)? registrationFailure, + TResult Function(String userEmail)? registrationSuccess, + required TResult orElse(), + }) { + if (registrationFailure != null) { + return registrationFailure(error); + } + return orElse(); + } + + @override + @optionalTypeArgs + TResult map({ + required TResult Function(_RegisterInitial value) initial, + required TResult Function(_RegisterLoadInitialDataInProgress value) + initialLoadInProgress, + required TResult Function(_RegisterLoadInitialDataFailure value) + initialLoadFailure, + required TResult Function(_RegisterLoadInitialDataSuccess value) + initialLoadSuccess, + required TResult Function(_RegisterUserInProgress value) + registrationInProgress, + required TResult Function(_RegisterUserFailure value) registrationFailure, + required TResult Function(_RegisterUserSuccess value) registrationSuccess, + }) { + return registrationFailure(this); + } + + @override + @optionalTypeArgs + TResult maybeMap({ + TResult Function(_RegisterInitial value)? initial, + TResult Function(_RegisterLoadInitialDataInProgress value)? + initialLoadInProgress, + TResult Function(_RegisterLoadInitialDataFailure value)? initialLoadFailure, + TResult Function(_RegisterLoadInitialDataSuccess value)? initialLoadSuccess, + TResult Function(_RegisterUserInProgress value)? registrationInProgress, + TResult Function(_RegisterUserFailure value)? registrationFailure, + TResult Function(_RegisterUserSuccess value)? registrationSuccess, + required TResult orElse(), + }) { + if (registrationFailure != null) { + return registrationFailure(this); + } + return orElse(); + } +} + +abstract class _RegisterUserFailure implements RegisterState { + const factory _RegisterUserFailure({required String error}) = + _$_RegisterUserFailure; + + String get error => throw _privateConstructorUsedError; + @JsonKey(ignore: true) + _$RegisterUserFailureCopyWith<_RegisterUserFailure> get copyWith => + throw _privateConstructorUsedError; +} + +/// @nodoc +abstract class _$RegisterUserSuccessCopyWith<$Res> { + factory _$RegisterUserSuccessCopyWith(_RegisterUserSuccess value, + $Res Function(_RegisterUserSuccess) then) = + __$RegisterUserSuccessCopyWithImpl<$Res>; + $Res call({String userEmail}); +} + +/// @nodoc +class __$RegisterUserSuccessCopyWithImpl<$Res> + extends _$RegisterStateCopyWithImpl<$Res> + implements _$RegisterUserSuccessCopyWith<$Res> { + __$RegisterUserSuccessCopyWithImpl( + _RegisterUserSuccess _value, $Res Function(_RegisterUserSuccess) _then) + : super(_value, (v) => _then(v as _RegisterUserSuccess)); + + @override + _RegisterUserSuccess get _value => super._value as _RegisterUserSuccess; + + @override + $Res call({ + Object? userEmail = freezed, + }) { + return _then(_RegisterUserSuccess( + userEmail: userEmail == freezed + ? _value.userEmail + : userEmail // ignore: cast_nullable_to_non_nullable + as String, + )); + } +} + +/// @nodoc + +class _$_RegisterUserSuccess implements _RegisterUserSuccess { + const _$_RegisterUserSuccess({required this.userEmail}); + + @override + final String userEmail; + + @override + String toString() { + return 'RegisterState.registrationSuccess(userEmail: $userEmail)'; + } + + @override + bool operator ==(dynamic other) { + return identical(this, other) || + (other is _RegisterUserSuccess && + (identical(other.userEmail, userEmail) || + const DeepCollectionEquality() + .equals(other.userEmail, userEmail))); + } + + @override + int get hashCode => + runtimeType.hashCode ^ const DeepCollectionEquality().hash(userEmail); + + @JsonKey(ignore: true) + @override + _$RegisterUserSuccessCopyWith<_RegisterUserSuccess> get copyWith => + __$RegisterUserSuccessCopyWithImpl<_RegisterUserSuccess>( + this, _$identity); + + @override + @optionalTypeArgs + TResult when({ + required TResult Function() initial, + required TResult Function() initialLoadInProgress, + required TResult Function(String error) initialLoadFailure, + required TResult Function(List questions) initialLoadSuccess, + required TResult Function() registrationInProgress, + required TResult Function(String error) registrationFailure, + required TResult Function(String userEmail) registrationSuccess, + }) { + return registrationSuccess(userEmail); + } + + @override + @optionalTypeArgs + TResult maybeWhen({ + TResult Function()? initial, + TResult Function()? initialLoadInProgress, + TResult Function(String error)? initialLoadFailure, + TResult Function(List questions)? initialLoadSuccess, + TResult Function()? registrationInProgress, + TResult Function(String error)? registrationFailure, + TResult Function(String userEmail)? registrationSuccess, + required TResult orElse(), + }) { + if (registrationSuccess != null) { + return registrationSuccess(userEmail); + } + return orElse(); + } + + @override + @optionalTypeArgs + TResult map({ + required TResult Function(_RegisterInitial value) initial, + required TResult Function(_RegisterLoadInitialDataInProgress value) + initialLoadInProgress, + required TResult Function(_RegisterLoadInitialDataFailure value) + initialLoadFailure, + required TResult Function(_RegisterLoadInitialDataSuccess value) + initialLoadSuccess, + required TResult Function(_RegisterUserInProgress value) + registrationInProgress, + required TResult Function(_RegisterUserFailure value) registrationFailure, + required TResult Function(_RegisterUserSuccess value) registrationSuccess, + }) { + return registrationSuccess(this); + } + + @override + @optionalTypeArgs + TResult maybeMap({ + TResult Function(_RegisterInitial value)? initial, + TResult Function(_RegisterLoadInitialDataInProgress value)? + initialLoadInProgress, + TResult Function(_RegisterLoadInitialDataFailure value)? initialLoadFailure, + TResult Function(_RegisterLoadInitialDataSuccess value)? initialLoadSuccess, + TResult Function(_RegisterUserInProgress value)? registrationInProgress, + TResult Function(_RegisterUserFailure value)? registrationFailure, + TResult Function(_RegisterUserSuccess value)? registrationSuccess, + required TResult orElse(), + }) { + if (registrationSuccess != null) { + return registrationSuccess(this); + } + return orElse(); + } +} + +abstract class _RegisterUserSuccess implements RegisterState { + const factory _RegisterUserSuccess({required String userEmail}) = + _$_RegisterUserSuccess; + + String get userEmail => throw _privateConstructorUsedError; + @JsonKey(ignore: true) + _$RegisterUserSuccessCopyWith<_RegisterUserSuccess> get copyWith => + throw _privateConstructorUsedError; +} diff --git a/lib/src/presentation/blocs/register_bloc/register_event.dart b/lib/src/presentation/blocs/register_bloc/register_event.dart index f0a7958..2ec0e3c 100644 --- a/lib/src/presentation/blocs/register_bloc/register_event.dart +++ b/lib/src/presentation/blocs/register_bloc/register_event.dart @@ -1,23 +1,14 @@ part of 'register_bloc.dart'; -abstract class RegisterEvent { - const RegisterEvent(); -} - -class QuestionsRequestedRegister extends RegisterEvent {} - -class FormsEnteredRegister extends RegisterEvent { - final List answers; - final String ci; - final String passwordFirst; - final String passwordSecond; - final List questions; - - const FormsEnteredRegister({ - required this.answers, - required this.ci, - required this.passwordFirst, - required this.passwordSecond, - required this.questions, - }); +@freezed +abstract class RegisterEvent with _$RegisterEvent { + const factory RegisterEvent.questionsRequested() = + _QuestionsRequestedRegister; + const factory RegisterEvent.formSubmitted({ + required List answers, + required String ci, + required String passwordFirst, + required String passwordSecond, + required List questions, + }) = _FormSubmittedRegister; } diff --git a/lib/src/presentation/blocs/register_bloc/register_state.dart b/lib/src/presentation/blocs/register_bloc/register_state.dart index 73f4ef0..b72f7dc 100644 --- a/lib/src/presentation/blocs/register_bloc/register_state.dart +++ b/lib/src/presentation/blocs/register_bloc/register_state.dart @@ -1,43 +1,18 @@ part of 'register_bloc.dart'; -abstract class RegisterState { - const RegisterState(); -} - -class RegisterInitial extends RegisterState {} - -class LoadInitialDataInProgress extends RegisterState {} - -class LoadInitialDataFailure extends RegisterState { - final String error; - - const LoadInitialDataFailure({ - required this.error, - }); -} - -class LoadInitialDataSuccess extends RegisterState { - final List questions; - - const LoadInitialDataSuccess({ - required this.questions, - }); -} - -class RegisterUserInProgress extends RegisterState {} - -class RegisterUserFailure extends RegisterState { - final String error; - - const RegisterUserFailure({ - required this.error, - }); -} - -class RegisterUserSuccess extends RegisterState { - final String userEmail; - - const RegisterUserSuccess({ - required this.userEmail, - }); +@freezed +abstract class RegisterState with _$RegisterState { + const factory RegisterState.initial() = _RegisterInitial; + const factory RegisterState.initialLoadInProgress() = + _RegisterLoadInitialDataInProgress; + const factory RegisterState.initialLoadFailure({required String error}) = + _RegisterLoadInitialDataFailure; + const factory RegisterState.initialLoadSuccess( + {required List questions}) = _RegisterLoadInitialDataSuccess; + const factory RegisterState.registrationInProgress() = + _RegisterUserInProgress; + const factory RegisterState.registrationFailure({required String error}) = + _RegisterUserFailure; + const factory RegisterState.registrationSuccess({required String userEmail}) = + _RegisterUserSuccess; } diff --git a/lib/src/presentation/pages/register_page.dart b/lib/src/presentation/pages/register_page.dart index 9a550e5..fbe95c1 100644 --- a/lib/src/presentation/pages/register_page.dart +++ b/lib/src/presentation/pages/register_page.dart @@ -81,23 +81,17 @@ class _RegisterPageState extends State { _questions.removeWhere((element) => element == null); _questions.sort((e1, e2) => questionsTaken[e1!.second].compareTo(questionsTaken[e2!.second])); - context.read().add( - FormsEnteredRegister( - ci: ciController.text, - passwordFirst: passwordFirstController.text, - passwordSecond: passwordSecondController.text, - questions: _questions.map((e) => e!.first).toList(), - answers: answersTextControllers.map((e) => e.text).toList(), - ), - ); + context.read().add(RegisterEvent.formSubmitted( + ci: ciController.text, + passwordFirst: passwordFirstController.text, + passwordSecond: passwordSecondController.text, + questions: _questions.map((e) => e!.first).toList(), + answers: answersTextControllers.map((e) => e.text).toList(), + )); } @override Widget build(BuildContext context) { - final TextStyle headlineTextsTheme = Theme.of(context) - .textTheme - .headline6! - .copyWith(color: Theme.of(context).primaryColor, fontSize: 16); return Scaffold( appBar: AppBar( title: const Text('Registrarse'), @@ -106,190 +100,210 @@ class _RegisterPageState extends State { bottomSheet: const GestionUHBottomSheet(), body: BlocConsumer( listener: (context, state) async { - if (state is RegisterUserFailure) { - FlashHelper.errorBar(context, message: state.error); - } else if (state is LoadInitialDataFailure) { - await FlashHelper.errorBar(context, message: state.error); - Future.delayed( - const Duration(seconds: 1), - () => context - .read() - .add(QuestionsRequestedRegister()), - ); - } else if (state is RegisterUserSuccess) { - FlashHelper.successBar(context, - message: 'El usuario fue registrado correctamente.'); - } + state.maybeWhen( + initialLoadFailure: (error) async { + await FlashHelper.errorBar(context, message: error); + Future.delayed( + const Duration(seconds: 1), + () => context + .read() + .add(const RegisterEvent.questionsRequested()), + ); + }, + registrationFailure: (error) { + FlashHelper.errorBar(context, message: error); + }, + registrationSuccess: (String email) { + FlashHelper.successBar(context, + message: 'El usuario fue registrado correctamente.'); + }, + orElse: () {}, + ); }, builder: (context, state) { - if (state is LoadInitialDataSuccess && questions.isEmpty) { - int i = 0; - questions = state.questions - .map((e) => Pair(first: e, second: i++)) - .toList(); - questionsTaken = List.filled(questions.length, -1); - } - if (state is RegisterUserFailure || - state is LoadInitialDataSuccess || - state is LoadInitialDataInProgress || - state is LoadInitialDataFailure) { - return Scrollbar( - child: SingleChildScrollView( - child: Center( - child: Container( - width: getValueForScreenType( - context: context, - mobile: MediaQuery.of(context).size.width, - tablet: MediaQuery.of(context).size.width * 0.5, - ), - padding: const EdgeInsets.only( - top: 30, - bottom: 9, - left: 18, - right: 18, - ), - child: Form( - key: _formKey, - autovalidateMode: AutovalidateMode.disabled, - child: Column( - mainAxisSize: MainAxisSize.min, - children: [ - const SizedBox( - height: 10, - ), - GestionUhDefaultTextField( - labelText: 'Número de Carnet De Identidad', - labelStyle: headlineTextsTheme, - hintText: '###########', - autovalidateMode: AutovalidateMode.disabled, - controller: ciController, - validator: identityNumberCIValidator, - keyboardType: TextInputType.number, - ), - const SizedBox( - height: 20, - ), - GestionUhDefaultTextField( - labelText: 'Contraseña', - labelStyle: headlineTextsTheme, - hintText: '********', - autovalidateMode: AutovalidateMode.disabled, - controller: passwordFirstController, - validator: safetyPasswordValidator, - keyboardType: TextInputType.visiblePassword, - ), - const SizedBox( - height: 15, - ), - GestionUhDefaultTextField( - labelText: 'Repetir Contraseña', - labelStyle: headlineTextsTheme, - hintText: '********', - autovalidateMode: AutovalidateMode.disabled, - controller: passwordSecondController, - validator: safetyPasswordValidator, - keyboardType: TextInputType.visiblePassword, - ), - const SizedBox(height: 60), - const Divider( - color: Colors.black54, - ), - const SizedBox(height: 10), - Text( - 'PREGUNTAS DE SEGURIDAD', - style: Theme.of(context) - .textTheme - .headline6! - .copyWith( - fontSize: 14, - color: Colors.black54, - fontWeight: FontWeight.bold), - textAlign: TextAlign.center, - ), - Builder( - builder: (BuildContext context) { - final childrenQuest = []; - const length = - NUMBER_OF_SECURITY_QUESTIONS_NEEDED; - for (int i = 0; i < length; i++) { - childrenQuest.add(buildQuestionZone(i)); - } - return Column( - crossAxisAlignment: CrossAxisAlignment.stretch, - children: childrenQuest, - ); - }, - ), - CheckboxListTile( - controlAffinity: ListTileControlAffinity.leading, - dense: true, - activeColor: Theme.of(context).primaryColor, - value: termsAccepted, - title: Text( - 'ACEPTO LOS TÉRMINOS Y CONDICIONES', - overflow: TextOverflow.fade, - softWrap: true, - style: Theme.of(context) - .textTheme - .subtitle2 - ?.copyWith( - color: Theme.of(context).primaryColor), - ), - onChanged: (value) => - _showTermsAndConditionsDialog()), - const SizedBox(height: 15), - GestionUhDefaultButton( - text: 'Finalizar', - onPressed: termsAccepted ? _onRegisterAction : null, - ), - const SizedBox(height: 30), - ], - ), - ), - ), - ), - ), - ); - } else if (state is RegisterUserSuccess) { - return Container( - margin: const EdgeInsets.all(30), + return state.map( + initial: (_state) => _buildRegisterFormPage(context, _state), + initialLoadInProgress: (_state) => + _buildRegisterFormPage(context, _state), + initialLoadFailure: (_state) => + _buildRegisterFormPage(context, _state), + initialLoadSuccess: (_state) { + if (questions.isEmpty) { + int i = 0; + questions = _state.questions + .map((e) => Pair(first: e, second: i++)) + .toList(); + questionsTaken = List.filled(questions.length, -1); + } + return _buildRegisterFormPage( + context, + _state, + ); + }, + registrationInProgress: (_state) => + _buildRegisterFormPage(context, _state), + registrationFailure: (_state) => + _buildRegisterFormPage(context, _state), + registrationSuccess: (_state) => + _buildRegisterSuccessPage(context, _state), + ); + }, + ), + ); + } + + Widget _buildRegisterFormPage(BuildContext context, state) { + final TextStyle headlineTextsTheme = Theme.of(context) + .textTheme + .headline6! + .copyWith(color: Theme.of(context).primaryColor, fontSize: 16); + return Scrollbar( + child: SingleChildScrollView( + child: Center( + child: Container( + width: getValueForScreenType( + context: context, + mobile: MediaQuery.of(context).size.width, + tablet: MediaQuery.of(context).size.width * 0.5, + ), + padding: const EdgeInsets.only( + top: 30, + bottom: 9, + left: 18, + right: 18, + ), + child: Form( + key: _formKey, + autovalidateMode: AutovalidateMode.disabled, child: Column( - mainAxisAlignment: MainAxisAlignment.center, + mainAxisSize: MainAxisSize.min, children: [ - RichText( + const SizedBox( + height: 10, + ), + GestionUhDefaultTextField( + labelText: 'Número de Carnet De Identidad', + labelStyle: headlineTextsTheme, + hintText: '###########', + autovalidateMode: AutovalidateMode.disabled, + controller: ciController, + validator: identityNumberCIValidator, + keyboardType: TextInputType.number, + ), + const SizedBox( + height: 20, + ), + GestionUhDefaultTextField( + labelText: 'Contraseña', + labelStyle: headlineTextsTheme, + hintText: '********', + autovalidateMode: AutovalidateMode.disabled, + controller: passwordFirstController, + validator: safetyPasswordValidator, + keyboardType: TextInputType.visiblePassword, + ), + const SizedBox( + height: 15, + ), + GestionUhDefaultTextField( + labelText: 'Repetir Contraseña', + labelStyle: headlineTextsTheme, + hintText: '********', + autovalidateMode: AutovalidateMode.disabled, + controller: passwordSecondController, + validator: safetyPasswordValidator, + keyboardType: TextInputType.visiblePassword, + ), + const SizedBox(height: 60), + const Divider( + color: Colors.black54, + ), + const SizedBox(height: 10), + Text( + 'PREGUNTAS DE SEGURIDAD', + style: Theme.of(context).textTheme.headline6!.copyWith( + fontSize: 14, + color: Colors.black54, + fontWeight: FontWeight.bold), textAlign: TextAlign.center, - text: TextSpan( - style: Theme.of(context).textTheme.subtitle1, - children: [ - const TextSpan( - text: 'Se ha registrado correctamente ' - 'su correo es ', - ), - TextSpan( - text: '"${state.userEmail}"', - style: Theme.of(context) - .textTheme - .subtitle1 - ?.copyWith(color: Colors.red), - ), - const TextSpan( - text: ', anótelo de ser necesario ' - 'no se mostrará otra vez', - ), - ]), ), - const SizedBox(height: 30), + Builder( + builder: (BuildContext context) { + final childrenQuest = []; + const length = NUMBER_OF_SECURITY_QUESTIONS_NEEDED; + for (int i = 0; i < length; i++) { + childrenQuest.add(buildQuestionZone(i)); + } + return Column( + crossAxisAlignment: CrossAxisAlignment.stretch, + children: childrenQuest, + ); + }, + ), + CheckboxListTile( + controlAffinity: ListTileControlAffinity.leading, + dense: true, + activeColor: Theme.of(context).primaryColor, + value: termsAccepted, + title: Text( + 'ACEPTO LOS TÉRMINOS Y CONDICIONES', + overflow: TextOverflow.fade, + softWrap: true, + style: Theme.of(context) + .textTheme + .subtitle2 + ?.copyWith(color: Theme.of(context).primaryColor), + ), + onChanged: (value) => _showTermsAndConditionsDialog()), + const SizedBox(height: 15), GestionUhDefaultButton( - onPressed: () => Navigator.of(context).pop(), - child: const Text('Ok'), + text: 'Finalizar', + onPressed: termsAccepted ? _onRegisterAction : null, ), + const SizedBox(height: 30), ], ), - ); - } else { - return Container(); - } - }, + ), + ), + ), + ), + ); + } + + Widget _buildRegisterSuccessPage(BuildContext context, state) { + return Container( + margin: const EdgeInsets.all(30), + child: Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + RichText( + textAlign: TextAlign.center, + text: TextSpan( + style: Theme.of(context).textTheme.subtitle1, + children: [ + const TextSpan( + text: 'Se ha registrado correctamente ' + 'su correo es ', + ), + TextSpan( + text: '"${state.userEmail}"', + style: Theme.of(context) + .textTheme + .subtitle1 + ?.copyWith(color: Colors.red), + ), + const TextSpan( + text: ', anótelo de ser necesario ' + 'no se mostrará otra vez', + ), + ]), + ), + const SizedBox(height: 30), + GestionUhDefaultButton( + onPressed: () => Navigator.of(context).pop(), + child: const Text('Ok'), + ), + ], ), ); } diff --git a/lib/src/router.dart b/lib/src/router.dart index a1b649e..8ad7973 100644 --- a/lib/src/router.dart +++ b/lib/src/router.dart @@ -66,7 +66,8 @@ class RouterNavigation { initialEntries: [ OverlayEntry(builder: (context) { return BlocProvider( - create: (_) => GetIt.I()..add(QuestionsRequestedRegister()), + create: (_) => + GetIt.I()..add(const RegisterEvent.questionsRequested()), child: const RegisterPage(), ); }), From 500ee4da085ca9cab2b55b78657f14168ffd5725 Mon Sep 17 00:00:00 2001 From: Leonel Garcia Date: Sat, 24 Apr 2021 20:55:23 -0400 Subject: [PATCH 44/59] Use the defaultError message --- lib/src/presentation/blocs/register_bloc/register_bloc.dart | 5 +++-- .../blocs/reset_password_bloc/resetpassword_bloc.dart | 3 ++- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/lib/src/presentation/blocs/register_bloc/register_bloc.dart b/lib/src/presentation/blocs/register_bloc/register_bloc.dart index 8537db0..a2ac189 100644 --- a/lib/src/presentation/blocs/register_bloc/register_bloc.dart +++ b/lib/src/presentation/blocs/register_bloc/register_bloc.dart @@ -4,6 +4,7 @@ import 'package:bloc/bloc.dart'; import 'package:freezed_annotation/freezed_annotation.dart'; import 'package:gestionuh/src/data/models/password_edit_data.dart'; import 'package:gestionuh/src/data/repositories/repositories.dart'; +import 'package:gestionuh/src/utils/constants/constants.dart'; part 'register_event.dart'; part 'register_state.dart'; @@ -31,7 +32,7 @@ class RegisterBloc extends Bloc { final questions = await repository.getSecurityQuestions(); if (questions.error != null) { yield RegisterState.initialLoadFailure( - error: questions.error ?? 'Compruebe su conexión e intente de nuevo.', + error: questions.error ?? Errors.DefaultError, ); } else { yield RegisterState.initialLoadSuccess(questions: questions.questions!); @@ -55,7 +56,7 @@ class RegisterBloc extends Bloc { )); if (userId.error != null) { yield RegisterState.registrationFailure( - error: userId.error ?? 'Compruebe su conexión e intente de nuevo.', + error: userId.error ?? Errors.DefaultError, ); } else { yield RegisterState.registrationSuccess(userEmail: userId.userId!); diff --git a/lib/src/presentation/blocs/reset_password_bloc/resetpassword_bloc.dart b/lib/src/presentation/blocs/reset_password_bloc/resetpassword_bloc.dart index c0592bb..ff42a61 100644 --- a/lib/src/presentation/blocs/reset_password_bloc/resetpassword_bloc.dart +++ b/lib/src/presentation/blocs/reset_password_bloc/resetpassword_bloc.dart @@ -3,6 +3,7 @@ import 'dart:async'; import 'package:bloc/bloc.dart'; import 'package:freezed_annotation/freezed_annotation.dart'; import 'package:gestionuh/src/data/repositories/repositories.dart'; +import 'package:gestionuh/src/utils/constants/constants.dart'; part 'resetpassword_event.dart'; part 'resetpassword_state.dart'; @@ -39,7 +40,7 @@ class ResetPasswordBloc extends Bloc { yield const ResetPasswordState.success(); } else { yield ResetPasswordState.failure( - error: status.error ?? 'Ocurrió un error, intente de nuevo.', + error: status.error ?? Errors.DefaultError, ); } } From 40d531cab512b22631baac7d5fdcea02b8d0e10b Mon Sep 17 00:00:00 2001 From: leynier Date: Sat, 24 Apr 2021 20:05:57 -0400 Subject: [PATCH 45/59] Improve navigation, filter pages by user data and trim user inputs --- lib/src/data/enums/enums.dart | 1 + lib/src/data/enums/home_item_enum.dart | 9 + .../data/models/password_reset_user_id.g.dart | 4 +- lib/src/dependencies.dart | 7 + lib/src/presentation/blocs/blocs.dart | 1 + .../blocs/home_bloc/home_bloc.dart | 89 + .../blocs/home_bloc/home_bloc.freezed.dart | 2277 +++++++++++++++++ .../blocs/home_bloc/home_event.dart | 13 + .../blocs/home_bloc/home_state.dart | 28 + .../blocs/login_bloc/login_bloc.dart | 4 +- .../blocs/register_bloc/register_bloc.dart | 6 +- .../resetpassword_bloc.dart | 4 +- lib/src/presentation/pages/about_page.dart | 217 -- .../pages/home_page/home_page.dart | 298 +++ .../pages/home_page/sub_pages/about_page.dart | 172 ++ .../home_page/sub_pages/mail_quotas_page.dart | 111 + .../sub_pages}/profile_page.dart | 180 +- .../pages/home_page/sub_pages/quota_page.dart | 111 + .../sub_pages/reset_password_page.dart | 160 ++ .../pages/home_page/sub_pages/sub_pages.dart | 5 + lib/src/presentation/pages/login_page.dart | 2 +- .../presentation/pages/mail_quotas_page.dart | 120 - lib/src/presentation/pages/pages.dart | 6 +- lib/src/presentation/pages/quota_page.dart | 120 - .../pages/recover_password_page.dart | 2 +- .../pages/reset_password_page.dart | 171 -- .../widgets/drawers/default_drawer.dart | 139 - .../presentation/widgets/drawers/drawers.dart | 1 - .../presentation/widgets/flash_helper.dart | 4 +- .../loading_indicators/circular_loading.dart | 10 +- lib/src/presentation/widgets/widgets.dart | 1 - lib/src/router.dart | 50 +- lib/src/utils/constants/routes.dart | 11 +- pubspec.lock | 78 +- pubspec.yaml | 10 +- 35 files changed, 3459 insertions(+), 963 deletions(-) create mode 100644 lib/src/data/enums/enums.dart create mode 100644 lib/src/data/enums/home_item_enum.dart create mode 100644 lib/src/presentation/blocs/home_bloc/home_bloc.dart create mode 100644 lib/src/presentation/blocs/home_bloc/home_bloc.freezed.dart create mode 100644 lib/src/presentation/blocs/home_bloc/home_event.dart create mode 100644 lib/src/presentation/blocs/home_bloc/home_state.dart delete mode 100644 lib/src/presentation/pages/about_page.dart create mode 100644 lib/src/presentation/pages/home_page/home_page.dart create mode 100644 lib/src/presentation/pages/home_page/sub_pages/about_page.dart create mode 100644 lib/src/presentation/pages/home_page/sub_pages/mail_quotas_page.dart rename lib/src/presentation/pages/{ => home_page/sub_pages}/profile_page.dart (61%) create mode 100644 lib/src/presentation/pages/home_page/sub_pages/quota_page.dart create mode 100644 lib/src/presentation/pages/home_page/sub_pages/reset_password_page.dart create mode 100644 lib/src/presentation/pages/home_page/sub_pages/sub_pages.dart delete mode 100644 lib/src/presentation/pages/mail_quotas_page.dart delete mode 100644 lib/src/presentation/pages/quota_page.dart delete mode 100644 lib/src/presentation/pages/reset_password_page.dart delete mode 100644 lib/src/presentation/widgets/drawers/default_drawer.dart delete mode 100644 lib/src/presentation/widgets/drawers/drawers.dart diff --git a/lib/src/data/enums/enums.dart b/lib/src/data/enums/enums.dart new file mode 100644 index 0000000..28ee91f --- /dev/null +++ b/lib/src/data/enums/enums.dart @@ -0,0 +1 @@ +export 'home_item_enum.dart'; diff --git a/lib/src/data/enums/home_item_enum.dart b/lib/src/data/enums/home_item_enum.dart new file mode 100644 index 0000000..c4aa248 --- /dev/null +++ b/lib/src/data/enums/home_item_enum.dart @@ -0,0 +1,9 @@ +enum HomeItemEnum { + Separator, + Profile, + Quota, + MailQuota, + ResetPassword, + Logout, + AboutUs, +} diff --git a/lib/src/data/models/password_reset_user_id.g.dart b/lib/src/data/models/password_reset_user_id.g.dart index 799f55a..e34d72c 100644 --- a/lib/src/data/models/password_reset_user_id.g.dart +++ b/lib/src/data/models/password_reset_user_id.g.dart @@ -7,7 +7,9 @@ part of 'password_reset_user_id.dart'; // ************************************************************************** PasswordResetUserId _$PasswordResetUserIdFromJson(Map json) { - return PasswordResetUserId()..userId = json['userId'] as String?; + return PasswordResetUserId( + userId: json['userId'] as String?, + ); } Map _$PasswordResetUserIdToJson( diff --git a/lib/src/dependencies.dart b/lib/src/dependencies.dart index 3da340c..0555bcb 100644 --- a/lib/src/dependencies.dart +++ b/lib/src/dependencies.dart @@ -64,6 +64,13 @@ class DependencyInjection { ); // Blocs + I.registerFactory( + () => HomeBloc( + authRepository: I(), + profileRepository: I(), + ), + ); + I.registerFactory( () => LoginBloc( authRepository: I(), diff --git a/lib/src/presentation/blocs/blocs.dart b/lib/src/presentation/blocs/blocs.dart index f881213..d202b28 100644 --- a/lib/src/presentation/blocs/blocs.dart +++ b/lib/src/presentation/blocs/blocs.dart @@ -1,3 +1,4 @@ +export 'home_bloc/home_bloc.dart'; export 'login_bloc/login_bloc.dart'; export 'mail_quota_bloc/mail_quota_bloc.dart'; export 'profile_bloc/profile_bloc.dart'; diff --git a/lib/src/presentation/blocs/home_bloc/home_bloc.dart b/lib/src/presentation/blocs/home_bloc/home_bloc.dart new file mode 100644 index 0000000..8657759 --- /dev/null +++ b/lib/src/presentation/blocs/home_bloc/home_bloc.dart @@ -0,0 +1,89 @@ +import 'dart:async'; + +import 'package:bloc/bloc.dart'; +import 'package:flutter/foundation.dart'; +import 'package:flutter/material.dart'; +import 'package:freezed_annotation/freezed_annotation.dart'; +import 'package:gestionuh/src/data/enums/enums.dart'; +import 'package:gestionuh/src/data/models/models.dart'; +import 'package:gestionuh/src/data/repositories/repositories.dart'; +import 'package:gestionuh/src/utils/constants/constants.dart'; + +part 'home_bloc.freezed.dart'; +part 'home_event.dart'; +part 'home_state.dart'; + +class HomeBloc extends Bloc { + final AuthRepository authRepository; + final ProfileRepository profileRepository; + HomeBloc({ + required this.authRepository, + required this.profileRepository, + }) : super(const HomeState.loading()); + + @override + Stream mapEventToState( + HomeEvent event, + ) async* { + yield* event.when( + loadProfile: () async* { + yield const HomeState.loading(); + final result = await profileRepository.getUserData(); + if (result == null) { + yield const HomeState.error(Errors.DefaultError); + } else if (result.error != null) { + yield HomeState.error(result.error!); + } else { + add(HomeEvent.goToProfile(result)); + } + }, + goToProfile: (profile) async* { + yield HomeState.profile( + profile, + _getItemsByProfile(profile), + ); + }, + goToQuota: (profile) async* { + yield HomeState.quota( + profile, + _getItemsByProfile(profile), + ); + }, + goToMailQuota: (profile) async* { + yield HomeState.mailQuota( + profile, + _getItemsByProfile(profile), + ); + }, + goToResetPassword: (profile) async* { + yield HomeState.resetPassword( + profile, + _getItemsByProfile(profile), + ); + }, + goToAboutUs: (profile) async* { + yield HomeState.aboutUs( + profile, + _getItemsByProfile(profile), + ); + }, + logout: () async* { + yield const HomeState.loading(); + await authRepository.logout(); + yield const HomeState.logout(); + }, + ); + } + + List _getItemsByProfile(UserData profile) { + return [ + HomeItemEnum.Profile, + if (profile.hasInternet ?? false) HomeItemEnum.Quota, + if (profile.hasEmail ?? false) HomeItemEnum.MailQuota, + HomeItemEnum.ResetPassword, + HomeItemEnum.Logout, + HomeItemEnum.Separator, + HomeItemEnum.AboutUs, + ]; + } +} diff --git a/lib/src/presentation/blocs/home_bloc/home_bloc.freezed.dart b/lib/src/presentation/blocs/home_bloc/home_bloc.freezed.dart new file mode 100644 index 0000000..182fd03 --- /dev/null +++ b/lib/src/presentation/blocs/home_bloc/home_bloc.freezed.dart @@ -0,0 +1,2277 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND +// ignore_for_file: unused_element, deprecated_member_use, deprecated_member_use_from_same_package, use_function_type_syntax_for_parameters, unnecessary_const, avoid_init_to_null, invalid_override_different_default_values_named, prefer_expression_function_bodies, annotate_overrides + +part of 'home_bloc.dart'; + +// ************************************************************************** +// FreezedGenerator +// ************************************************************************** + +T _$identity(T value) => value; + +final _privateConstructorUsedError = UnsupportedError( + 'It seems like you constructed your class using `MyClass._()`. This constructor is only meant to be used by freezed and you are not supposed to need it nor use it.\nPlease check the documentation here for more informations: https://github.com/rrousselGit/freezed#custom-getters-and-methods'); + +/// @nodoc +class _$HomeEventTearOff { + const _$HomeEventTearOff(); + + _LoadProfile loadProfile() { + return const _LoadProfile(); + } + + _SendLogout logout() { + return const _SendLogout(); + } + + _GoToProfile goToProfile(UserData profile) { + return _GoToProfile( + profile, + ); + } + + _GoToQuota goToQuota(UserData profile) { + return _GoToQuota( + profile, + ); + } + + _GoToMailQuota goToMailQuota(UserData profile) { + return _GoToMailQuota( + profile, + ); + } + + _GoToResetPassword goToResetPassword(UserData profile) { + return _GoToResetPassword( + profile, + ); + } + + _GoToAboutUs goToAboutUs(UserData profile) { + return _GoToAboutUs( + profile, + ); + } +} + +/// @nodoc +const $HomeEvent = _$HomeEventTearOff(); + +/// @nodoc +mixin _$HomeEvent { + @optionalTypeArgs + TResult when({ + required TResult Function() loadProfile, + required TResult Function() logout, + required TResult Function(UserData profile) goToProfile, + required TResult Function(UserData profile) goToQuota, + required TResult Function(UserData profile) goToMailQuota, + required TResult Function(UserData profile) goToResetPassword, + required TResult Function(UserData profile) goToAboutUs, + }) => + throw _privateConstructorUsedError; + @optionalTypeArgs + TResult maybeWhen({ + TResult Function()? loadProfile, + TResult Function()? logout, + TResult Function(UserData profile)? goToProfile, + TResult Function(UserData profile)? goToQuota, + TResult Function(UserData profile)? goToMailQuota, + TResult Function(UserData profile)? goToResetPassword, + TResult Function(UserData profile)? goToAboutUs, + required TResult orElse(), + }) => + throw _privateConstructorUsedError; + @optionalTypeArgs + TResult map({ + required TResult Function(_LoadProfile value) loadProfile, + required TResult Function(_SendLogout value) logout, + required TResult Function(_GoToProfile value) goToProfile, + required TResult Function(_GoToQuota value) goToQuota, + required TResult Function(_GoToMailQuota value) goToMailQuota, + required TResult Function(_GoToResetPassword value) goToResetPassword, + required TResult Function(_GoToAboutUs value) goToAboutUs, + }) => + throw _privateConstructorUsedError; + @optionalTypeArgs + TResult maybeMap({ + TResult Function(_LoadProfile value)? loadProfile, + TResult Function(_SendLogout value)? logout, + TResult Function(_GoToProfile value)? goToProfile, + TResult Function(_GoToQuota value)? goToQuota, + TResult Function(_GoToMailQuota value)? goToMailQuota, + TResult Function(_GoToResetPassword value)? goToResetPassword, + TResult Function(_GoToAboutUs value)? goToAboutUs, + required TResult orElse(), + }) => + throw _privateConstructorUsedError; +} + +/// @nodoc +abstract class $HomeEventCopyWith<$Res> { + factory $HomeEventCopyWith(HomeEvent value, $Res Function(HomeEvent) then) = + _$HomeEventCopyWithImpl<$Res>; +} + +/// @nodoc +class _$HomeEventCopyWithImpl<$Res> implements $HomeEventCopyWith<$Res> { + _$HomeEventCopyWithImpl(this._value, this._then); + + final HomeEvent _value; + // ignore: unused_field + final $Res Function(HomeEvent) _then; +} + +/// @nodoc +abstract class _$LoadProfileCopyWith<$Res> { + factory _$LoadProfileCopyWith( + _LoadProfile value, $Res Function(_LoadProfile) then) = + __$LoadProfileCopyWithImpl<$Res>; +} + +/// @nodoc +class __$LoadProfileCopyWithImpl<$Res> extends _$HomeEventCopyWithImpl<$Res> + implements _$LoadProfileCopyWith<$Res> { + __$LoadProfileCopyWithImpl( + _LoadProfile _value, $Res Function(_LoadProfile) _then) + : super(_value, (v) => _then(v as _LoadProfile)); + + @override + _LoadProfile get _value => super._value as _LoadProfile; +} + +/// @nodoc + +class _$_LoadProfile implements _LoadProfile { + const _$_LoadProfile(); + + @override + String toString() { + return 'HomeEvent.loadProfile()'; + } + + @override + bool operator ==(dynamic other) { + return identical(this, other) || (other is _LoadProfile); + } + + @override + int get hashCode => runtimeType.hashCode; + + @override + @optionalTypeArgs + TResult when({ + required TResult Function() loadProfile, + required TResult Function() logout, + required TResult Function(UserData profile) goToProfile, + required TResult Function(UserData profile) goToQuota, + required TResult Function(UserData profile) goToMailQuota, + required TResult Function(UserData profile) goToResetPassword, + required TResult Function(UserData profile) goToAboutUs, + }) { + return loadProfile(); + } + + @override + @optionalTypeArgs + TResult maybeWhen({ + TResult Function()? loadProfile, + TResult Function()? logout, + TResult Function(UserData profile)? goToProfile, + TResult Function(UserData profile)? goToQuota, + TResult Function(UserData profile)? goToMailQuota, + TResult Function(UserData profile)? goToResetPassword, + TResult Function(UserData profile)? goToAboutUs, + required TResult orElse(), + }) { + if (loadProfile != null) { + return loadProfile(); + } + return orElse(); + } + + @override + @optionalTypeArgs + TResult map({ + required TResult Function(_LoadProfile value) loadProfile, + required TResult Function(_SendLogout value) logout, + required TResult Function(_GoToProfile value) goToProfile, + required TResult Function(_GoToQuota value) goToQuota, + required TResult Function(_GoToMailQuota value) goToMailQuota, + required TResult Function(_GoToResetPassword value) goToResetPassword, + required TResult Function(_GoToAboutUs value) goToAboutUs, + }) { + return loadProfile(this); + } + + @override + @optionalTypeArgs + TResult maybeMap({ + TResult Function(_LoadProfile value)? loadProfile, + TResult Function(_SendLogout value)? logout, + TResult Function(_GoToProfile value)? goToProfile, + TResult Function(_GoToQuota value)? goToQuota, + TResult Function(_GoToMailQuota value)? goToMailQuota, + TResult Function(_GoToResetPassword value)? goToResetPassword, + TResult Function(_GoToAboutUs value)? goToAboutUs, + required TResult orElse(), + }) { + if (loadProfile != null) { + return loadProfile(this); + } + return orElse(); + } +} + +abstract class _LoadProfile implements HomeEvent { + const factory _LoadProfile() = _$_LoadProfile; +} + +/// @nodoc +abstract class _$SendLogoutCopyWith<$Res> { + factory _$SendLogoutCopyWith( + _SendLogout value, $Res Function(_SendLogout) then) = + __$SendLogoutCopyWithImpl<$Res>; +} + +/// @nodoc +class __$SendLogoutCopyWithImpl<$Res> extends _$HomeEventCopyWithImpl<$Res> + implements _$SendLogoutCopyWith<$Res> { + __$SendLogoutCopyWithImpl( + _SendLogout _value, $Res Function(_SendLogout) _then) + : super(_value, (v) => _then(v as _SendLogout)); + + @override + _SendLogout get _value => super._value as _SendLogout; +} + +/// @nodoc + +class _$_SendLogout implements _SendLogout { + const _$_SendLogout(); + + @override + String toString() { + return 'HomeEvent.logout()'; + } + + @override + bool operator ==(dynamic other) { + return identical(this, other) || (other is _SendLogout); + } + + @override + int get hashCode => runtimeType.hashCode; + + @override + @optionalTypeArgs + TResult when({ + required TResult Function() loadProfile, + required TResult Function() logout, + required TResult Function(UserData profile) goToProfile, + required TResult Function(UserData profile) goToQuota, + required TResult Function(UserData profile) goToMailQuota, + required TResult Function(UserData profile) goToResetPassword, + required TResult Function(UserData profile) goToAboutUs, + }) { + return logout(); + } + + @override + @optionalTypeArgs + TResult maybeWhen({ + TResult Function()? loadProfile, + TResult Function()? logout, + TResult Function(UserData profile)? goToProfile, + TResult Function(UserData profile)? goToQuota, + TResult Function(UserData profile)? goToMailQuota, + TResult Function(UserData profile)? goToResetPassword, + TResult Function(UserData profile)? goToAboutUs, + required TResult orElse(), + }) { + if (logout != null) { + return logout(); + } + return orElse(); + } + + @override + @optionalTypeArgs + TResult map({ + required TResult Function(_LoadProfile value) loadProfile, + required TResult Function(_SendLogout value) logout, + required TResult Function(_GoToProfile value) goToProfile, + required TResult Function(_GoToQuota value) goToQuota, + required TResult Function(_GoToMailQuota value) goToMailQuota, + required TResult Function(_GoToResetPassword value) goToResetPassword, + required TResult Function(_GoToAboutUs value) goToAboutUs, + }) { + return logout(this); + } + + @override + @optionalTypeArgs + TResult maybeMap({ + TResult Function(_LoadProfile value)? loadProfile, + TResult Function(_SendLogout value)? logout, + TResult Function(_GoToProfile value)? goToProfile, + TResult Function(_GoToQuota value)? goToQuota, + TResult Function(_GoToMailQuota value)? goToMailQuota, + TResult Function(_GoToResetPassword value)? goToResetPassword, + TResult Function(_GoToAboutUs value)? goToAboutUs, + required TResult orElse(), + }) { + if (logout != null) { + return logout(this); + } + return orElse(); + } +} + +abstract class _SendLogout implements HomeEvent { + const factory _SendLogout() = _$_SendLogout; +} + +/// @nodoc +abstract class _$GoToProfileCopyWith<$Res> { + factory _$GoToProfileCopyWith( + _GoToProfile value, $Res Function(_GoToProfile) then) = + __$GoToProfileCopyWithImpl<$Res>; + $Res call({UserData profile}); +} + +/// @nodoc +class __$GoToProfileCopyWithImpl<$Res> extends _$HomeEventCopyWithImpl<$Res> + implements _$GoToProfileCopyWith<$Res> { + __$GoToProfileCopyWithImpl( + _GoToProfile _value, $Res Function(_GoToProfile) _then) + : super(_value, (v) => _then(v as _GoToProfile)); + + @override + _GoToProfile get _value => super._value as _GoToProfile; + + @override + $Res call({ + Object? profile = freezed, + }) { + return _then(_GoToProfile( + profile == freezed + ? _value.profile + : profile // ignore: cast_nullable_to_non_nullable + as UserData, + )); + } +} + +/// @nodoc + +class _$_GoToProfile implements _GoToProfile { + const _$_GoToProfile(this.profile); + + @override + final UserData profile; + + @override + String toString() { + return 'HomeEvent.goToProfile(profile: $profile)'; + } + + @override + bool operator ==(dynamic other) { + return identical(this, other) || + (other is _GoToProfile && + (identical(other.profile, profile) || + const DeepCollectionEquality().equals(other.profile, profile))); + } + + @override + int get hashCode => + runtimeType.hashCode ^ const DeepCollectionEquality().hash(profile); + + @JsonKey(ignore: true) + @override + _$GoToProfileCopyWith<_GoToProfile> get copyWith => + __$GoToProfileCopyWithImpl<_GoToProfile>(this, _$identity); + + @override + @optionalTypeArgs + TResult when({ + required TResult Function() loadProfile, + required TResult Function() logout, + required TResult Function(UserData profile) goToProfile, + required TResult Function(UserData profile) goToQuota, + required TResult Function(UserData profile) goToMailQuota, + required TResult Function(UserData profile) goToResetPassword, + required TResult Function(UserData profile) goToAboutUs, + }) { + return goToProfile(profile); + } + + @override + @optionalTypeArgs + TResult maybeWhen({ + TResult Function()? loadProfile, + TResult Function()? logout, + TResult Function(UserData profile)? goToProfile, + TResult Function(UserData profile)? goToQuota, + TResult Function(UserData profile)? goToMailQuota, + TResult Function(UserData profile)? goToResetPassword, + TResult Function(UserData profile)? goToAboutUs, + required TResult orElse(), + }) { + if (goToProfile != null) { + return goToProfile(profile); + } + return orElse(); + } + + @override + @optionalTypeArgs + TResult map({ + required TResult Function(_LoadProfile value) loadProfile, + required TResult Function(_SendLogout value) logout, + required TResult Function(_GoToProfile value) goToProfile, + required TResult Function(_GoToQuota value) goToQuota, + required TResult Function(_GoToMailQuota value) goToMailQuota, + required TResult Function(_GoToResetPassword value) goToResetPassword, + required TResult Function(_GoToAboutUs value) goToAboutUs, + }) { + return goToProfile(this); + } + + @override + @optionalTypeArgs + TResult maybeMap({ + TResult Function(_LoadProfile value)? loadProfile, + TResult Function(_SendLogout value)? logout, + TResult Function(_GoToProfile value)? goToProfile, + TResult Function(_GoToQuota value)? goToQuota, + TResult Function(_GoToMailQuota value)? goToMailQuota, + TResult Function(_GoToResetPassword value)? goToResetPassword, + TResult Function(_GoToAboutUs value)? goToAboutUs, + required TResult orElse(), + }) { + if (goToProfile != null) { + return goToProfile(this); + } + return orElse(); + } +} + +abstract class _GoToProfile implements HomeEvent { + const factory _GoToProfile(UserData profile) = _$_GoToProfile; + + UserData get profile => throw _privateConstructorUsedError; + @JsonKey(ignore: true) + _$GoToProfileCopyWith<_GoToProfile> get copyWith => + throw _privateConstructorUsedError; +} + +/// @nodoc +abstract class _$GoToQuotaCopyWith<$Res> { + factory _$GoToQuotaCopyWith( + _GoToQuota value, $Res Function(_GoToQuota) then) = + __$GoToQuotaCopyWithImpl<$Res>; + $Res call({UserData profile}); +} + +/// @nodoc +class __$GoToQuotaCopyWithImpl<$Res> extends _$HomeEventCopyWithImpl<$Res> + implements _$GoToQuotaCopyWith<$Res> { + __$GoToQuotaCopyWithImpl(_GoToQuota _value, $Res Function(_GoToQuota) _then) + : super(_value, (v) => _then(v as _GoToQuota)); + + @override + _GoToQuota get _value => super._value as _GoToQuota; + + @override + $Res call({ + Object? profile = freezed, + }) { + return _then(_GoToQuota( + profile == freezed + ? _value.profile + : profile // ignore: cast_nullable_to_non_nullable + as UserData, + )); + } +} + +/// @nodoc + +class _$_GoToQuota implements _GoToQuota { + const _$_GoToQuota(this.profile); + + @override + final UserData profile; + + @override + String toString() { + return 'HomeEvent.goToQuota(profile: $profile)'; + } + + @override + bool operator ==(dynamic other) { + return identical(this, other) || + (other is _GoToQuota && + (identical(other.profile, profile) || + const DeepCollectionEquality().equals(other.profile, profile))); + } + + @override + int get hashCode => + runtimeType.hashCode ^ const DeepCollectionEquality().hash(profile); + + @JsonKey(ignore: true) + @override + _$GoToQuotaCopyWith<_GoToQuota> get copyWith => + __$GoToQuotaCopyWithImpl<_GoToQuota>(this, _$identity); + + @override + @optionalTypeArgs + TResult when({ + required TResult Function() loadProfile, + required TResult Function() logout, + required TResult Function(UserData profile) goToProfile, + required TResult Function(UserData profile) goToQuota, + required TResult Function(UserData profile) goToMailQuota, + required TResult Function(UserData profile) goToResetPassword, + required TResult Function(UserData profile) goToAboutUs, + }) { + return goToQuota(profile); + } + + @override + @optionalTypeArgs + TResult maybeWhen({ + TResult Function()? loadProfile, + TResult Function()? logout, + TResult Function(UserData profile)? goToProfile, + TResult Function(UserData profile)? goToQuota, + TResult Function(UserData profile)? goToMailQuota, + TResult Function(UserData profile)? goToResetPassword, + TResult Function(UserData profile)? goToAboutUs, + required TResult orElse(), + }) { + if (goToQuota != null) { + return goToQuota(profile); + } + return orElse(); + } + + @override + @optionalTypeArgs + TResult map({ + required TResult Function(_LoadProfile value) loadProfile, + required TResult Function(_SendLogout value) logout, + required TResult Function(_GoToProfile value) goToProfile, + required TResult Function(_GoToQuota value) goToQuota, + required TResult Function(_GoToMailQuota value) goToMailQuota, + required TResult Function(_GoToResetPassword value) goToResetPassword, + required TResult Function(_GoToAboutUs value) goToAboutUs, + }) { + return goToQuota(this); + } + + @override + @optionalTypeArgs + TResult maybeMap({ + TResult Function(_LoadProfile value)? loadProfile, + TResult Function(_SendLogout value)? logout, + TResult Function(_GoToProfile value)? goToProfile, + TResult Function(_GoToQuota value)? goToQuota, + TResult Function(_GoToMailQuota value)? goToMailQuota, + TResult Function(_GoToResetPassword value)? goToResetPassword, + TResult Function(_GoToAboutUs value)? goToAboutUs, + required TResult orElse(), + }) { + if (goToQuota != null) { + return goToQuota(this); + } + return orElse(); + } +} + +abstract class _GoToQuota implements HomeEvent { + const factory _GoToQuota(UserData profile) = _$_GoToQuota; + + UserData get profile => throw _privateConstructorUsedError; + @JsonKey(ignore: true) + _$GoToQuotaCopyWith<_GoToQuota> get copyWith => + throw _privateConstructorUsedError; +} + +/// @nodoc +abstract class _$GoToMailQuotaCopyWith<$Res> { + factory _$GoToMailQuotaCopyWith( + _GoToMailQuota value, $Res Function(_GoToMailQuota) then) = + __$GoToMailQuotaCopyWithImpl<$Res>; + $Res call({UserData profile}); +} + +/// @nodoc +class __$GoToMailQuotaCopyWithImpl<$Res> extends _$HomeEventCopyWithImpl<$Res> + implements _$GoToMailQuotaCopyWith<$Res> { + __$GoToMailQuotaCopyWithImpl( + _GoToMailQuota _value, $Res Function(_GoToMailQuota) _then) + : super(_value, (v) => _then(v as _GoToMailQuota)); + + @override + _GoToMailQuota get _value => super._value as _GoToMailQuota; + + @override + $Res call({ + Object? profile = freezed, + }) { + return _then(_GoToMailQuota( + profile == freezed + ? _value.profile + : profile // ignore: cast_nullable_to_non_nullable + as UserData, + )); + } +} + +/// @nodoc + +class _$_GoToMailQuota implements _GoToMailQuota { + const _$_GoToMailQuota(this.profile); + + @override + final UserData profile; + + @override + String toString() { + return 'HomeEvent.goToMailQuota(profile: $profile)'; + } + + @override + bool operator ==(dynamic other) { + return identical(this, other) || + (other is _GoToMailQuota && + (identical(other.profile, profile) || + const DeepCollectionEquality().equals(other.profile, profile))); + } + + @override + int get hashCode => + runtimeType.hashCode ^ const DeepCollectionEquality().hash(profile); + + @JsonKey(ignore: true) + @override + _$GoToMailQuotaCopyWith<_GoToMailQuota> get copyWith => + __$GoToMailQuotaCopyWithImpl<_GoToMailQuota>(this, _$identity); + + @override + @optionalTypeArgs + TResult when({ + required TResult Function() loadProfile, + required TResult Function() logout, + required TResult Function(UserData profile) goToProfile, + required TResult Function(UserData profile) goToQuota, + required TResult Function(UserData profile) goToMailQuota, + required TResult Function(UserData profile) goToResetPassword, + required TResult Function(UserData profile) goToAboutUs, + }) { + return goToMailQuota(profile); + } + + @override + @optionalTypeArgs + TResult maybeWhen({ + TResult Function()? loadProfile, + TResult Function()? logout, + TResult Function(UserData profile)? goToProfile, + TResult Function(UserData profile)? goToQuota, + TResult Function(UserData profile)? goToMailQuota, + TResult Function(UserData profile)? goToResetPassword, + TResult Function(UserData profile)? goToAboutUs, + required TResult orElse(), + }) { + if (goToMailQuota != null) { + return goToMailQuota(profile); + } + return orElse(); + } + + @override + @optionalTypeArgs + TResult map({ + required TResult Function(_LoadProfile value) loadProfile, + required TResult Function(_SendLogout value) logout, + required TResult Function(_GoToProfile value) goToProfile, + required TResult Function(_GoToQuota value) goToQuota, + required TResult Function(_GoToMailQuota value) goToMailQuota, + required TResult Function(_GoToResetPassword value) goToResetPassword, + required TResult Function(_GoToAboutUs value) goToAboutUs, + }) { + return goToMailQuota(this); + } + + @override + @optionalTypeArgs + TResult maybeMap({ + TResult Function(_LoadProfile value)? loadProfile, + TResult Function(_SendLogout value)? logout, + TResult Function(_GoToProfile value)? goToProfile, + TResult Function(_GoToQuota value)? goToQuota, + TResult Function(_GoToMailQuota value)? goToMailQuota, + TResult Function(_GoToResetPassword value)? goToResetPassword, + TResult Function(_GoToAboutUs value)? goToAboutUs, + required TResult orElse(), + }) { + if (goToMailQuota != null) { + return goToMailQuota(this); + } + return orElse(); + } +} + +abstract class _GoToMailQuota implements HomeEvent { + const factory _GoToMailQuota(UserData profile) = _$_GoToMailQuota; + + UserData get profile => throw _privateConstructorUsedError; + @JsonKey(ignore: true) + _$GoToMailQuotaCopyWith<_GoToMailQuota> get copyWith => + throw _privateConstructorUsedError; +} + +/// @nodoc +abstract class _$GoToResetPasswordCopyWith<$Res> { + factory _$GoToResetPasswordCopyWith( + _GoToResetPassword value, $Res Function(_GoToResetPassword) then) = + __$GoToResetPasswordCopyWithImpl<$Res>; + $Res call({UserData profile}); +} + +/// @nodoc +class __$GoToResetPasswordCopyWithImpl<$Res> + extends _$HomeEventCopyWithImpl<$Res> + implements _$GoToResetPasswordCopyWith<$Res> { + __$GoToResetPasswordCopyWithImpl( + _GoToResetPassword _value, $Res Function(_GoToResetPassword) _then) + : super(_value, (v) => _then(v as _GoToResetPassword)); + + @override + _GoToResetPassword get _value => super._value as _GoToResetPassword; + + @override + $Res call({ + Object? profile = freezed, + }) { + return _then(_GoToResetPassword( + profile == freezed + ? _value.profile + : profile // ignore: cast_nullable_to_non_nullable + as UserData, + )); + } +} + +/// @nodoc + +class _$_GoToResetPassword implements _GoToResetPassword { + const _$_GoToResetPassword(this.profile); + + @override + final UserData profile; + + @override + String toString() { + return 'HomeEvent.goToResetPassword(profile: $profile)'; + } + + @override + bool operator ==(dynamic other) { + return identical(this, other) || + (other is _GoToResetPassword && + (identical(other.profile, profile) || + const DeepCollectionEquality().equals(other.profile, profile))); + } + + @override + int get hashCode => + runtimeType.hashCode ^ const DeepCollectionEquality().hash(profile); + + @JsonKey(ignore: true) + @override + _$GoToResetPasswordCopyWith<_GoToResetPassword> get copyWith => + __$GoToResetPasswordCopyWithImpl<_GoToResetPassword>(this, _$identity); + + @override + @optionalTypeArgs + TResult when({ + required TResult Function() loadProfile, + required TResult Function() logout, + required TResult Function(UserData profile) goToProfile, + required TResult Function(UserData profile) goToQuota, + required TResult Function(UserData profile) goToMailQuota, + required TResult Function(UserData profile) goToResetPassword, + required TResult Function(UserData profile) goToAboutUs, + }) { + return goToResetPassword(profile); + } + + @override + @optionalTypeArgs + TResult maybeWhen({ + TResult Function()? loadProfile, + TResult Function()? logout, + TResult Function(UserData profile)? goToProfile, + TResult Function(UserData profile)? goToQuota, + TResult Function(UserData profile)? goToMailQuota, + TResult Function(UserData profile)? goToResetPassword, + TResult Function(UserData profile)? goToAboutUs, + required TResult orElse(), + }) { + if (goToResetPassword != null) { + return goToResetPassword(profile); + } + return orElse(); + } + + @override + @optionalTypeArgs + TResult map({ + required TResult Function(_LoadProfile value) loadProfile, + required TResult Function(_SendLogout value) logout, + required TResult Function(_GoToProfile value) goToProfile, + required TResult Function(_GoToQuota value) goToQuota, + required TResult Function(_GoToMailQuota value) goToMailQuota, + required TResult Function(_GoToResetPassword value) goToResetPassword, + required TResult Function(_GoToAboutUs value) goToAboutUs, + }) { + return goToResetPassword(this); + } + + @override + @optionalTypeArgs + TResult maybeMap({ + TResult Function(_LoadProfile value)? loadProfile, + TResult Function(_SendLogout value)? logout, + TResult Function(_GoToProfile value)? goToProfile, + TResult Function(_GoToQuota value)? goToQuota, + TResult Function(_GoToMailQuota value)? goToMailQuota, + TResult Function(_GoToResetPassword value)? goToResetPassword, + TResult Function(_GoToAboutUs value)? goToAboutUs, + required TResult orElse(), + }) { + if (goToResetPassword != null) { + return goToResetPassword(this); + } + return orElse(); + } +} + +abstract class _GoToResetPassword implements HomeEvent { + const factory _GoToResetPassword(UserData profile) = _$_GoToResetPassword; + + UserData get profile => throw _privateConstructorUsedError; + @JsonKey(ignore: true) + _$GoToResetPasswordCopyWith<_GoToResetPassword> get copyWith => + throw _privateConstructorUsedError; +} + +/// @nodoc +abstract class _$GoToAboutUsCopyWith<$Res> { + factory _$GoToAboutUsCopyWith( + _GoToAboutUs value, $Res Function(_GoToAboutUs) then) = + __$GoToAboutUsCopyWithImpl<$Res>; + $Res call({UserData profile}); +} + +/// @nodoc +class __$GoToAboutUsCopyWithImpl<$Res> extends _$HomeEventCopyWithImpl<$Res> + implements _$GoToAboutUsCopyWith<$Res> { + __$GoToAboutUsCopyWithImpl( + _GoToAboutUs _value, $Res Function(_GoToAboutUs) _then) + : super(_value, (v) => _then(v as _GoToAboutUs)); + + @override + _GoToAboutUs get _value => super._value as _GoToAboutUs; + + @override + $Res call({ + Object? profile = freezed, + }) { + return _then(_GoToAboutUs( + profile == freezed + ? _value.profile + : profile // ignore: cast_nullable_to_non_nullable + as UserData, + )); + } +} + +/// @nodoc + +class _$_GoToAboutUs implements _GoToAboutUs { + const _$_GoToAboutUs(this.profile); + + @override + final UserData profile; + + @override + String toString() { + return 'HomeEvent.goToAboutUs(profile: $profile)'; + } + + @override + bool operator ==(dynamic other) { + return identical(this, other) || + (other is _GoToAboutUs && + (identical(other.profile, profile) || + const DeepCollectionEquality().equals(other.profile, profile))); + } + + @override + int get hashCode => + runtimeType.hashCode ^ const DeepCollectionEquality().hash(profile); + + @JsonKey(ignore: true) + @override + _$GoToAboutUsCopyWith<_GoToAboutUs> get copyWith => + __$GoToAboutUsCopyWithImpl<_GoToAboutUs>(this, _$identity); + + @override + @optionalTypeArgs + TResult when({ + required TResult Function() loadProfile, + required TResult Function() logout, + required TResult Function(UserData profile) goToProfile, + required TResult Function(UserData profile) goToQuota, + required TResult Function(UserData profile) goToMailQuota, + required TResult Function(UserData profile) goToResetPassword, + required TResult Function(UserData profile) goToAboutUs, + }) { + return goToAboutUs(profile); + } + + @override + @optionalTypeArgs + TResult maybeWhen({ + TResult Function()? loadProfile, + TResult Function()? logout, + TResult Function(UserData profile)? goToProfile, + TResult Function(UserData profile)? goToQuota, + TResult Function(UserData profile)? goToMailQuota, + TResult Function(UserData profile)? goToResetPassword, + TResult Function(UserData profile)? goToAboutUs, + required TResult orElse(), + }) { + if (goToAboutUs != null) { + return goToAboutUs(profile); + } + return orElse(); + } + + @override + @optionalTypeArgs + TResult map({ + required TResult Function(_LoadProfile value) loadProfile, + required TResult Function(_SendLogout value) logout, + required TResult Function(_GoToProfile value) goToProfile, + required TResult Function(_GoToQuota value) goToQuota, + required TResult Function(_GoToMailQuota value) goToMailQuota, + required TResult Function(_GoToResetPassword value) goToResetPassword, + required TResult Function(_GoToAboutUs value) goToAboutUs, + }) { + return goToAboutUs(this); + } + + @override + @optionalTypeArgs + TResult maybeMap({ + TResult Function(_LoadProfile value)? loadProfile, + TResult Function(_SendLogout value)? logout, + TResult Function(_GoToProfile value)? goToProfile, + TResult Function(_GoToQuota value)? goToQuota, + TResult Function(_GoToMailQuota value)? goToMailQuota, + TResult Function(_GoToResetPassword value)? goToResetPassword, + TResult Function(_GoToAboutUs value)? goToAboutUs, + required TResult orElse(), + }) { + if (goToAboutUs != null) { + return goToAboutUs(this); + } + return orElse(); + } +} + +abstract class _GoToAboutUs implements HomeEvent { + const factory _GoToAboutUs(UserData profile) = _$_GoToAboutUs; + + UserData get profile => throw _privateConstructorUsedError; + @JsonKey(ignore: true) + _$GoToAboutUsCopyWith<_GoToAboutUs> get copyWith => + throw _privateConstructorUsedError; +} + +/// @nodoc +class _$HomeStateTearOff { + const _$HomeStateTearOff(); + + _Loading loading() { + return const _Loading(); + } + + _Error error(String message) { + return _Error( + message, + ); + } + + _Logout logout() { + return const _Logout(); + } + + _Profile profile(UserData profile, List items) { + return _Profile( + profile, + items, + ); + } + + _Quota quota(UserData profile, List items) { + return _Quota( + profile, + items, + ); + } + + _MailQuota mailQuota(UserData profile, List items) { + return _MailQuota( + profile, + items, + ); + } + + _ResetPassword resetPassword(UserData profile, List items) { + return _ResetPassword( + profile, + items, + ); + } + + _AboutUs aboutUs(UserData profile, List items) { + return _AboutUs( + profile, + items, + ); + } +} + +/// @nodoc +const $HomeState = _$HomeStateTearOff(); + +/// @nodoc +mixin _$HomeState { + @optionalTypeArgs + TResult when({ + required TResult Function() loading, + required TResult Function(String message) error, + required TResult Function() logout, + required TResult Function(UserData profile, List items) + profile, + required TResult Function(UserData profile, List items) quota, + required TResult Function(UserData profile, List items) + mailQuota, + required TResult Function(UserData profile, List items) + resetPassword, + required TResult Function(UserData profile, List items) + aboutUs, + }) => + throw _privateConstructorUsedError; + @optionalTypeArgs + TResult maybeWhen({ + TResult Function()? loading, + TResult Function(String message)? error, + TResult Function()? logout, + TResult Function(UserData profile, List items)? profile, + TResult Function(UserData profile, List items)? quota, + TResult Function(UserData profile, List items)? mailQuota, + TResult Function(UserData profile, List items)? resetPassword, + TResult Function(UserData profile, List items)? aboutUs, + required TResult orElse(), + }) => + throw _privateConstructorUsedError; + @optionalTypeArgs + TResult map({ + required TResult Function(_Loading value) loading, + required TResult Function(_Error value) error, + required TResult Function(_Logout value) logout, + required TResult Function(_Profile value) profile, + required TResult Function(_Quota value) quota, + required TResult Function(_MailQuota value) mailQuota, + required TResult Function(_ResetPassword value) resetPassword, + required TResult Function(_AboutUs value) aboutUs, + }) => + throw _privateConstructorUsedError; + @optionalTypeArgs + TResult maybeMap({ + TResult Function(_Loading value)? loading, + TResult Function(_Error value)? error, + TResult Function(_Logout value)? logout, + TResult Function(_Profile value)? profile, + TResult Function(_Quota value)? quota, + TResult Function(_MailQuota value)? mailQuota, + TResult Function(_ResetPassword value)? resetPassword, + TResult Function(_AboutUs value)? aboutUs, + required TResult orElse(), + }) => + throw _privateConstructorUsedError; +} + +/// @nodoc +abstract class $HomeStateCopyWith<$Res> { + factory $HomeStateCopyWith(HomeState value, $Res Function(HomeState) then) = + _$HomeStateCopyWithImpl<$Res>; +} + +/// @nodoc +class _$HomeStateCopyWithImpl<$Res> implements $HomeStateCopyWith<$Res> { + _$HomeStateCopyWithImpl(this._value, this._then); + + final HomeState _value; + // ignore: unused_field + final $Res Function(HomeState) _then; +} + +/// @nodoc +abstract class _$LoadingCopyWith<$Res> { + factory _$LoadingCopyWith(_Loading value, $Res Function(_Loading) then) = + __$LoadingCopyWithImpl<$Res>; +} + +/// @nodoc +class __$LoadingCopyWithImpl<$Res> extends _$HomeStateCopyWithImpl<$Res> + implements _$LoadingCopyWith<$Res> { + __$LoadingCopyWithImpl(_Loading _value, $Res Function(_Loading) _then) + : super(_value, (v) => _then(v as _Loading)); + + @override + _Loading get _value => super._value as _Loading; +} + +/// @nodoc + +class _$_Loading implements _Loading { + const _$_Loading(); + + @override + String toString() { + return 'HomeState.loading()'; + } + + @override + bool operator ==(dynamic other) { + return identical(this, other) || (other is _Loading); + } + + @override + int get hashCode => runtimeType.hashCode; + + @override + @optionalTypeArgs + TResult when({ + required TResult Function() loading, + required TResult Function(String message) error, + required TResult Function() logout, + required TResult Function(UserData profile, List items) + profile, + required TResult Function(UserData profile, List items) quota, + required TResult Function(UserData profile, List items) + mailQuota, + required TResult Function(UserData profile, List items) + resetPassword, + required TResult Function(UserData profile, List items) + aboutUs, + }) { + return loading(); + } + + @override + @optionalTypeArgs + TResult maybeWhen({ + TResult Function()? loading, + TResult Function(String message)? error, + TResult Function()? logout, + TResult Function(UserData profile, List items)? profile, + TResult Function(UserData profile, List items)? quota, + TResult Function(UserData profile, List items)? mailQuota, + TResult Function(UserData profile, List items)? resetPassword, + TResult Function(UserData profile, List items)? aboutUs, + required TResult orElse(), + }) { + if (loading != null) { + return loading(); + } + return orElse(); + } + + @override + @optionalTypeArgs + TResult map({ + required TResult Function(_Loading value) loading, + required TResult Function(_Error value) error, + required TResult Function(_Logout value) logout, + required TResult Function(_Profile value) profile, + required TResult Function(_Quota value) quota, + required TResult Function(_MailQuota value) mailQuota, + required TResult Function(_ResetPassword value) resetPassword, + required TResult Function(_AboutUs value) aboutUs, + }) { + return loading(this); + } + + @override + @optionalTypeArgs + TResult maybeMap({ + TResult Function(_Loading value)? loading, + TResult Function(_Error value)? error, + TResult Function(_Logout value)? logout, + TResult Function(_Profile value)? profile, + TResult Function(_Quota value)? quota, + TResult Function(_MailQuota value)? mailQuota, + TResult Function(_ResetPassword value)? resetPassword, + TResult Function(_AboutUs value)? aboutUs, + required TResult orElse(), + }) { + if (loading != null) { + return loading(this); + } + return orElse(); + } +} + +abstract class _Loading implements HomeState { + const factory _Loading() = _$_Loading; +} + +/// @nodoc +abstract class _$ErrorCopyWith<$Res> { + factory _$ErrorCopyWith(_Error value, $Res Function(_Error) then) = + __$ErrorCopyWithImpl<$Res>; + $Res call({String message}); +} + +/// @nodoc +class __$ErrorCopyWithImpl<$Res> extends _$HomeStateCopyWithImpl<$Res> + implements _$ErrorCopyWith<$Res> { + __$ErrorCopyWithImpl(_Error _value, $Res Function(_Error) _then) + : super(_value, (v) => _then(v as _Error)); + + @override + _Error get _value => super._value as _Error; + + @override + $Res call({ + Object? message = freezed, + }) { + return _then(_Error( + message == freezed + ? _value.message + : message // ignore: cast_nullable_to_non_nullable + as String, + )); + } +} + +/// @nodoc + +class _$_Error implements _Error { + const _$_Error(this.message); + + @override + final String message; + + @override + String toString() { + return 'HomeState.error(message: $message)'; + } + + @override + bool operator ==(dynamic other) { + return identical(this, other) || + (other is _Error && + (identical(other.message, message) || + const DeepCollectionEquality().equals(other.message, message))); + } + + @override + int get hashCode => + runtimeType.hashCode ^ const DeepCollectionEquality().hash(message); + + @JsonKey(ignore: true) + @override + _$ErrorCopyWith<_Error> get copyWith => + __$ErrorCopyWithImpl<_Error>(this, _$identity); + + @override + @optionalTypeArgs + TResult when({ + required TResult Function() loading, + required TResult Function(String message) error, + required TResult Function() logout, + required TResult Function(UserData profile, List items) + profile, + required TResult Function(UserData profile, List items) quota, + required TResult Function(UserData profile, List items) + mailQuota, + required TResult Function(UserData profile, List items) + resetPassword, + required TResult Function(UserData profile, List items) + aboutUs, + }) { + return error(message); + } + + @override + @optionalTypeArgs + TResult maybeWhen({ + TResult Function()? loading, + TResult Function(String message)? error, + TResult Function()? logout, + TResult Function(UserData profile, List items)? profile, + TResult Function(UserData profile, List items)? quota, + TResult Function(UserData profile, List items)? mailQuota, + TResult Function(UserData profile, List items)? resetPassword, + TResult Function(UserData profile, List items)? aboutUs, + required TResult orElse(), + }) { + if (error != null) { + return error(message); + } + return orElse(); + } + + @override + @optionalTypeArgs + TResult map({ + required TResult Function(_Loading value) loading, + required TResult Function(_Error value) error, + required TResult Function(_Logout value) logout, + required TResult Function(_Profile value) profile, + required TResult Function(_Quota value) quota, + required TResult Function(_MailQuota value) mailQuota, + required TResult Function(_ResetPassword value) resetPassword, + required TResult Function(_AboutUs value) aboutUs, + }) { + return error(this); + } + + @override + @optionalTypeArgs + TResult maybeMap({ + TResult Function(_Loading value)? loading, + TResult Function(_Error value)? error, + TResult Function(_Logout value)? logout, + TResult Function(_Profile value)? profile, + TResult Function(_Quota value)? quota, + TResult Function(_MailQuota value)? mailQuota, + TResult Function(_ResetPassword value)? resetPassword, + TResult Function(_AboutUs value)? aboutUs, + required TResult orElse(), + }) { + if (error != null) { + return error(this); + } + return orElse(); + } +} + +abstract class _Error implements HomeState { + const factory _Error(String message) = _$_Error; + + String get message => throw _privateConstructorUsedError; + @JsonKey(ignore: true) + _$ErrorCopyWith<_Error> get copyWith => throw _privateConstructorUsedError; +} + +/// @nodoc +abstract class _$LogoutCopyWith<$Res> { + factory _$LogoutCopyWith(_Logout value, $Res Function(_Logout) then) = + __$LogoutCopyWithImpl<$Res>; +} + +/// @nodoc +class __$LogoutCopyWithImpl<$Res> extends _$HomeStateCopyWithImpl<$Res> + implements _$LogoutCopyWith<$Res> { + __$LogoutCopyWithImpl(_Logout _value, $Res Function(_Logout) _then) + : super(_value, (v) => _then(v as _Logout)); + + @override + _Logout get _value => super._value as _Logout; +} + +/// @nodoc + +class _$_Logout implements _Logout { + const _$_Logout(); + + @override + String toString() { + return 'HomeState.logout()'; + } + + @override + bool operator ==(dynamic other) { + return identical(this, other) || (other is _Logout); + } + + @override + int get hashCode => runtimeType.hashCode; + + @override + @optionalTypeArgs + TResult when({ + required TResult Function() loading, + required TResult Function(String message) error, + required TResult Function() logout, + required TResult Function(UserData profile, List items) + profile, + required TResult Function(UserData profile, List items) quota, + required TResult Function(UserData profile, List items) + mailQuota, + required TResult Function(UserData profile, List items) + resetPassword, + required TResult Function(UserData profile, List items) + aboutUs, + }) { + return logout(); + } + + @override + @optionalTypeArgs + TResult maybeWhen({ + TResult Function()? loading, + TResult Function(String message)? error, + TResult Function()? logout, + TResult Function(UserData profile, List items)? profile, + TResult Function(UserData profile, List items)? quota, + TResult Function(UserData profile, List items)? mailQuota, + TResult Function(UserData profile, List items)? resetPassword, + TResult Function(UserData profile, List items)? aboutUs, + required TResult orElse(), + }) { + if (logout != null) { + return logout(); + } + return orElse(); + } + + @override + @optionalTypeArgs + TResult map({ + required TResult Function(_Loading value) loading, + required TResult Function(_Error value) error, + required TResult Function(_Logout value) logout, + required TResult Function(_Profile value) profile, + required TResult Function(_Quota value) quota, + required TResult Function(_MailQuota value) mailQuota, + required TResult Function(_ResetPassword value) resetPassword, + required TResult Function(_AboutUs value) aboutUs, + }) { + return logout(this); + } + + @override + @optionalTypeArgs + TResult maybeMap({ + TResult Function(_Loading value)? loading, + TResult Function(_Error value)? error, + TResult Function(_Logout value)? logout, + TResult Function(_Profile value)? profile, + TResult Function(_Quota value)? quota, + TResult Function(_MailQuota value)? mailQuota, + TResult Function(_ResetPassword value)? resetPassword, + TResult Function(_AboutUs value)? aboutUs, + required TResult orElse(), + }) { + if (logout != null) { + return logout(this); + } + return orElse(); + } +} + +abstract class _Logout implements HomeState { + const factory _Logout() = _$_Logout; +} + +/// @nodoc +abstract class _$ProfileCopyWith<$Res> { + factory _$ProfileCopyWith(_Profile value, $Res Function(_Profile) then) = + __$ProfileCopyWithImpl<$Res>; + $Res call({UserData profile, List items}); +} + +/// @nodoc +class __$ProfileCopyWithImpl<$Res> extends _$HomeStateCopyWithImpl<$Res> + implements _$ProfileCopyWith<$Res> { + __$ProfileCopyWithImpl(_Profile _value, $Res Function(_Profile) _then) + : super(_value, (v) => _then(v as _Profile)); + + @override + _Profile get _value => super._value as _Profile; + + @override + $Res call({ + Object? profile = freezed, + Object? items = freezed, + }) { + return _then(_Profile( + profile == freezed + ? _value.profile + : profile // ignore: cast_nullable_to_non_nullable + as UserData, + items == freezed + ? _value.items + : items // ignore: cast_nullable_to_non_nullable + as List, + )); + } +} + +/// @nodoc + +class _$_Profile implements _Profile { + const _$_Profile(this.profile, this.items); + + @override + final UserData profile; + @override + final List items; + + @override + String toString() { + return 'HomeState.profile(profile: $profile, items: $items)'; + } + + @override + bool operator ==(dynamic other) { + return identical(this, other) || + (other is _Profile && + (identical(other.profile, profile) || + const DeepCollectionEquality() + .equals(other.profile, profile)) && + (identical(other.items, items) || + const DeepCollectionEquality().equals(other.items, items))); + } + + @override + int get hashCode => + runtimeType.hashCode ^ + const DeepCollectionEquality().hash(profile) ^ + const DeepCollectionEquality().hash(items); + + @JsonKey(ignore: true) + @override + _$ProfileCopyWith<_Profile> get copyWith => + __$ProfileCopyWithImpl<_Profile>(this, _$identity); + + @override + @optionalTypeArgs + TResult when({ + required TResult Function() loading, + required TResult Function(String message) error, + required TResult Function() logout, + required TResult Function(UserData profile, List items) + profile, + required TResult Function(UserData profile, List items) quota, + required TResult Function(UserData profile, List items) + mailQuota, + required TResult Function(UserData profile, List items) + resetPassword, + required TResult Function(UserData profile, List items) + aboutUs, + }) { + return profile(this.profile, items); + } + + @override + @optionalTypeArgs + TResult maybeWhen({ + TResult Function()? loading, + TResult Function(String message)? error, + TResult Function()? logout, + TResult Function(UserData profile, List items)? profile, + TResult Function(UserData profile, List items)? quota, + TResult Function(UserData profile, List items)? mailQuota, + TResult Function(UserData profile, List items)? resetPassword, + TResult Function(UserData profile, List items)? aboutUs, + required TResult orElse(), + }) { + if (profile != null) { + return profile(this.profile, items); + } + return orElse(); + } + + @override + @optionalTypeArgs + TResult map({ + required TResult Function(_Loading value) loading, + required TResult Function(_Error value) error, + required TResult Function(_Logout value) logout, + required TResult Function(_Profile value) profile, + required TResult Function(_Quota value) quota, + required TResult Function(_MailQuota value) mailQuota, + required TResult Function(_ResetPassword value) resetPassword, + required TResult Function(_AboutUs value) aboutUs, + }) { + return profile(this); + } + + @override + @optionalTypeArgs + TResult maybeMap({ + TResult Function(_Loading value)? loading, + TResult Function(_Error value)? error, + TResult Function(_Logout value)? logout, + TResult Function(_Profile value)? profile, + TResult Function(_Quota value)? quota, + TResult Function(_MailQuota value)? mailQuota, + TResult Function(_ResetPassword value)? resetPassword, + TResult Function(_AboutUs value)? aboutUs, + required TResult orElse(), + }) { + if (profile != null) { + return profile(this); + } + return orElse(); + } +} + +abstract class _Profile implements HomeState { + const factory _Profile(UserData profile, List items) = + _$_Profile; + + UserData get profile => throw _privateConstructorUsedError; + List get items => throw _privateConstructorUsedError; + @JsonKey(ignore: true) + _$ProfileCopyWith<_Profile> get copyWith => + throw _privateConstructorUsedError; +} + +/// @nodoc +abstract class _$QuotaCopyWith<$Res> { + factory _$QuotaCopyWith(_Quota value, $Res Function(_Quota) then) = + __$QuotaCopyWithImpl<$Res>; + $Res call({UserData profile, List items}); +} + +/// @nodoc +class __$QuotaCopyWithImpl<$Res> extends _$HomeStateCopyWithImpl<$Res> + implements _$QuotaCopyWith<$Res> { + __$QuotaCopyWithImpl(_Quota _value, $Res Function(_Quota) _then) + : super(_value, (v) => _then(v as _Quota)); + + @override + _Quota get _value => super._value as _Quota; + + @override + $Res call({ + Object? profile = freezed, + Object? items = freezed, + }) { + return _then(_Quota( + profile == freezed + ? _value.profile + : profile // ignore: cast_nullable_to_non_nullable + as UserData, + items == freezed + ? _value.items + : items // ignore: cast_nullable_to_non_nullable + as List, + )); + } +} + +/// @nodoc + +class _$_Quota implements _Quota { + const _$_Quota(this.profile, this.items); + + @override + final UserData profile; + @override + final List items; + + @override + String toString() { + return 'HomeState.quota(profile: $profile, items: $items)'; + } + + @override + bool operator ==(dynamic other) { + return identical(this, other) || + (other is _Quota && + (identical(other.profile, profile) || + const DeepCollectionEquality() + .equals(other.profile, profile)) && + (identical(other.items, items) || + const DeepCollectionEquality().equals(other.items, items))); + } + + @override + int get hashCode => + runtimeType.hashCode ^ + const DeepCollectionEquality().hash(profile) ^ + const DeepCollectionEquality().hash(items); + + @JsonKey(ignore: true) + @override + _$QuotaCopyWith<_Quota> get copyWith => + __$QuotaCopyWithImpl<_Quota>(this, _$identity); + + @override + @optionalTypeArgs + TResult when({ + required TResult Function() loading, + required TResult Function(String message) error, + required TResult Function() logout, + required TResult Function(UserData profile, List items) + profile, + required TResult Function(UserData profile, List items) quota, + required TResult Function(UserData profile, List items) + mailQuota, + required TResult Function(UserData profile, List items) + resetPassword, + required TResult Function(UserData profile, List items) + aboutUs, + }) { + return quota(this.profile, items); + } + + @override + @optionalTypeArgs + TResult maybeWhen({ + TResult Function()? loading, + TResult Function(String message)? error, + TResult Function()? logout, + TResult Function(UserData profile, List items)? profile, + TResult Function(UserData profile, List items)? quota, + TResult Function(UserData profile, List items)? mailQuota, + TResult Function(UserData profile, List items)? resetPassword, + TResult Function(UserData profile, List items)? aboutUs, + required TResult orElse(), + }) { + if (quota != null) { + return quota(this.profile, items); + } + return orElse(); + } + + @override + @optionalTypeArgs + TResult map({ + required TResult Function(_Loading value) loading, + required TResult Function(_Error value) error, + required TResult Function(_Logout value) logout, + required TResult Function(_Profile value) profile, + required TResult Function(_Quota value) quota, + required TResult Function(_MailQuota value) mailQuota, + required TResult Function(_ResetPassword value) resetPassword, + required TResult Function(_AboutUs value) aboutUs, + }) { + return quota(this); + } + + @override + @optionalTypeArgs + TResult maybeMap({ + TResult Function(_Loading value)? loading, + TResult Function(_Error value)? error, + TResult Function(_Logout value)? logout, + TResult Function(_Profile value)? profile, + TResult Function(_Quota value)? quota, + TResult Function(_MailQuota value)? mailQuota, + TResult Function(_ResetPassword value)? resetPassword, + TResult Function(_AboutUs value)? aboutUs, + required TResult orElse(), + }) { + if (quota != null) { + return quota(this); + } + return orElse(); + } +} + +abstract class _Quota implements HomeState { + const factory _Quota(UserData profile, List items) = _$_Quota; + + UserData get profile => throw _privateConstructorUsedError; + List get items => throw _privateConstructorUsedError; + @JsonKey(ignore: true) + _$QuotaCopyWith<_Quota> get copyWith => throw _privateConstructorUsedError; +} + +/// @nodoc +abstract class _$MailQuotaCopyWith<$Res> { + factory _$MailQuotaCopyWith( + _MailQuota value, $Res Function(_MailQuota) then) = + __$MailQuotaCopyWithImpl<$Res>; + $Res call({UserData profile, List items}); +} + +/// @nodoc +class __$MailQuotaCopyWithImpl<$Res> extends _$HomeStateCopyWithImpl<$Res> + implements _$MailQuotaCopyWith<$Res> { + __$MailQuotaCopyWithImpl(_MailQuota _value, $Res Function(_MailQuota) _then) + : super(_value, (v) => _then(v as _MailQuota)); + + @override + _MailQuota get _value => super._value as _MailQuota; + + @override + $Res call({ + Object? profile = freezed, + Object? items = freezed, + }) { + return _then(_MailQuota( + profile == freezed + ? _value.profile + : profile // ignore: cast_nullable_to_non_nullable + as UserData, + items == freezed + ? _value.items + : items // ignore: cast_nullable_to_non_nullable + as List, + )); + } +} + +/// @nodoc + +class _$_MailQuota implements _MailQuota { + const _$_MailQuota(this.profile, this.items); + + @override + final UserData profile; + @override + final List items; + + @override + String toString() { + return 'HomeState.mailQuota(profile: $profile, items: $items)'; + } + + @override + bool operator ==(dynamic other) { + return identical(this, other) || + (other is _MailQuota && + (identical(other.profile, profile) || + const DeepCollectionEquality() + .equals(other.profile, profile)) && + (identical(other.items, items) || + const DeepCollectionEquality().equals(other.items, items))); + } + + @override + int get hashCode => + runtimeType.hashCode ^ + const DeepCollectionEquality().hash(profile) ^ + const DeepCollectionEquality().hash(items); + + @JsonKey(ignore: true) + @override + _$MailQuotaCopyWith<_MailQuota> get copyWith => + __$MailQuotaCopyWithImpl<_MailQuota>(this, _$identity); + + @override + @optionalTypeArgs + TResult when({ + required TResult Function() loading, + required TResult Function(String message) error, + required TResult Function() logout, + required TResult Function(UserData profile, List items) + profile, + required TResult Function(UserData profile, List items) quota, + required TResult Function(UserData profile, List items) + mailQuota, + required TResult Function(UserData profile, List items) + resetPassword, + required TResult Function(UserData profile, List items) + aboutUs, + }) { + return mailQuota(this.profile, items); + } + + @override + @optionalTypeArgs + TResult maybeWhen({ + TResult Function()? loading, + TResult Function(String message)? error, + TResult Function()? logout, + TResult Function(UserData profile, List items)? profile, + TResult Function(UserData profile, List items)? quota, + TResult Function(UserData profile, List items)? mailQuota, + TResult Function(UserData profile, List items)? resetPassword, + TResult Function(UserData profile, List items)? aboutUs, + required TResult orElse(), + }) { + if (mailQuota != null) { + return mailQuota(this.profile, items); + } + return orElse(); + } + + @override + @optionalTypeArgs + TResult map({ + required TResult Function(_Loading value) loading, + required TResult Function(_Error value) error, + required TResult Function(_Logout value) logout, + required TResult Function(_Profile value) profile, + required TResult Function(_Quota value) quota, + required TResult Function(_MailQuota value) mailQuota, + required TResult Function(_ResetPassword value) resetPassword, + required TResult Function(_AboutUs value) aboutUs, + }) { + return mailQuota(this); + } + + @override + @optionalTypeArgs + TResult maybeMap({ + TResult Function(_Loading value)? loading, + TResult Function(_Error value)? error, + TResult Function(_Logout value)? logout, + TResult Function(_Profile value)? profile, + TResult Function(_Quota value)? quota, + TResult Function(_MailQuota value)? mailQuota, + TResult Function(_ResetPassword value)? resetPassword, + TResult Function(_AboutUs value)? aboutUs, + required TResult orElse(), + }) { + if (mailQuota != null) { + return mailQuota(this); + } + return orElse(); + } +} + +abstract class _MailQuota implements HomeState { + const factory _MailQuota(UserData profile, List items) = + _$_MailQuota; + + UserData get profile => throw _privateConstructorUsedError; + List get items => throw _privateConstructorUsedError; + @JsonKey(ignore: true) + _$MailQuotaCopyWith<_MailQuota> get copyWith => + throw _privateConstructorUsedError; +} + +/// @nodoc +abstract class _$ResetPasswordCopyWith<$Res> { + factory _$ResetPasswordCopyWith( + _ResetPassword value, $Res Function(_ResetPassword) then) = + __$ResetPasswordCopyWithImpl<$Res>; + $Res call({UserData profile, List items}); +} + +/// @nodoc +class __$ResetPasswordCopyWithImpl<$Res> extends _$HomeStateCopyWithImpl<$Res> + implements _$ResetPasswordCopyWith<$Res> { + __$ResetPasswordCopyWithImpl( + _ResetPassword _value, $Res Function(_ResetPassword) _then) + : super(_value, (v) => _then(v as _ResetPassword)); + + @override + _ResetPassword get _value => super._value as _ResetPassword; + + @override + $Res call({ + Object? profile = freezed, + Object? items = freezed, + }) { + return _then(_ResetPassword( + profile == freezed + ? _value.profile + : profile // ignore: cast_nullable_to_non_nullable + as UserData, + items == freezed + ? _value.items + : items // ignore: cast_nullable_to_non_nullable + as List, + )); + } +} + +/// @nodoc + +class _$_ResetPassword implements _ResetPassword { + const _$_ResetPassword(this.profile, this.items); + + @override + final UserData profile; + @override + final List items; + + @override + String toString() { + return 'HomeState.resetPassword(profile: $profile, items: $items)'; + } + + @override + bool operator ==(dynamic other) { + return identical(this, other) || + (other is _ResetPassword && + (identical(other.profile, profile) || + const DeepCollectionEquality() + .equals(other.profile, profile)) && + (identical(other.items, items) || + const DeepCollectionEquality().equals(other.items, items))); + } + + @override + int get hashCode => + runtimeType.hashCode ^ + const DeepCollectionEquality().hash(profile) ^ + const DeepCollectionEquality().hash(items); + + @JsonKey(ignore: true) + @override + _$ResetPasswordCopyWith<_ResetPassword> get copyWith => + __$ResetPasswordCopyWithImpl<_ResetPassword>(this, _$identity); + + @override + @optionalTypeArgs + TResult when({ + required TResult Function() loading, + required TResult Function(String message) error, + required TResult Function() logout, + required TResult Function(UserData profile, List items) + profile, + required TResult Function(UserData profile, List items) quota, + required TResult Function(UserData profile, List items) + mailQuota, + required TResult Function(UserData profile, List items) + resetPassword, + required TResult Function(UserData profile, List items) + aboutUs, + }) { + return resetPassword(this.profile, items); + } + + @override + @optionalTypeArgs + TResult maybeWhen({ + TResult Function()? loading, + TResult Function(String message)? error, + TResult Function()? logout, + TResult Function(UserData profile, List items)? profile, + TResult Function(UserData profile, List items)? quota, + TResult Function(UserData profile, List items)? mailQuota, + TResult Function(UserData profile, List items)? resetPassword, + TResult Function(UserData profile, List items)? aboutUs, + required TResult orElse(), + }) { + if (resetPassword != null) { + return resetPassword(this.profile, items); + } + return orElse(); + } + + @override + @optionalTypeArgs + TResult map({ + required TResult Function(_Loading value) loading, + required TResult Function(_Error value) error, + required TResult Function(_Logout value) logout, + required TResult Function(_Profile value) profile, + required TResult Function(_Quota value) quota, + required TResult Function(_MailQuota value) mailQuota, + required TResult Function(_ResetPassword value) resetPassword, + required TResult Function(_AboutUs value) aboutUs, + }) { + return resetPassword(this); + } + + @override + @optionalTypeArgs + TResult maybeMap({ + TResult Function(_Loading value)? loading, + TResult Function(_Error value)? error, + TResult Function(_Logout value)? logout, + TResult Function(_Profile value)? profile, + TResult Function(_Quota value)? quota, + TResult Function(_MailQuota value)? mailQuota, + TResult Function(_ResetPassword value)? resetPassword, + TResult Function(_AboutUs value)? aboutUs, + required TResult orElse(), + }) { + if (resetPassword != null) { + return resetPassword(this); + } + return orElse(); + } +} + +abstract class _ResetPassword implements HomeState { + const factory _ResetPassword(UserData profile, List items) = + _$_ResetPassword; + + UserData get profile => throw _privateConstructorUsedError; + List get items => throw _privateConstructorUsedError; + @JsonKey(ignore: true) + _$ResetPasswordCopyWith<_ResetPassword> get copyWith => + throw _privateConstructorUsedError; +} + +/// @nodoc +abstract class _$AboutUsCopyWith<$Res> { + factory _$AboutUsCopyWith(_AboutUs value, $Res Function(_AboutUs) then) = + __$AboutUsCopyWithImpl<$Res>; + $Res call({UserData profile, List items}); +} + +/// @nodoc +class __$AboutUsCopyWithImpl<$Res> extends _$HomeStateCopyWithImpl<$Res> + implements _$AboutUsCopyWith<$Res> { + __$AboutUsCopyWithImpl(_AboutUs _value, $Res Function(_AboutUs) _then) + : super(_value, (v) => _then(v as _AboutUs)); + + @override + _AboutUs get _value => super._value as _AboutUs; + + @override + $Res call({ + Object? profile = freezed, + Object? items = freezed, + }) { + return _then(_AboutUs( + profile == freezed + ? _value.profile + : profile // ignore: cast_nullable_to_non_nullable + as UserData, + items == freezed + ? _value.items + : items // ignore: cast_nullable_to_non_nullable + as List, + )); + } +} + +/// @nodoc + +class _$_AboutUs implements _AboutUs { + const _$_AboutUs(this.profile, this.items); + + @override + final UserData profile; + @override + final List items; + + @override + String toString() { + return 'HomeState.aboutUs(profile: $profile, items: $items)'; + } + + @override + bool operator ==(dynamic other) { + return identical(this, other) || + (other is _AboutUs && + (identical(other.profile, profile) || + const DeepCollectionEquality() + .equals(other.profile, profile)) && + (identical(other.items, items) || + const DeepCollectionEquality().equals(other.items, items))); + } + + @override + int get hashCode => + runtimeType.hashCode ^ + const DeepCollectionEquality().hash(profile) ^ + const DeepCollectionEquality().hash(items); + + @JsonKey(ignore: true) + @override + _$AboutUsCopyWith<_AboutUs> get copyWith => + __$AboutUsCopyWithImpl<_AboutUs>(this, _$identity); + + @override + @optionalTypeArgs + TResult when({ + required TResult Function() loading, + required TResult Function(String message) error, + required TResult Function() logout, + required TResult Function(UserData profile, List items) + profile, + required TResult Function(UserData profile, List items) quota, + required TResult Function(UserData profile, List items) + mailQuota, + required TResult Function(UserData profile, List items) + resetPassword, + required TResult Function(UserData profile, List items) + aboutUs, + }) { + return aboutUs(this.profile, items); + } + + @override + @optionalTypeArgs + TResult maybeWhen({ + TResult Function()? loading, + TResult Function(String message)? error, + TResult Function()? logout, + TResult Function(UserData profile, List items)? profile, + TResult Function(UserData profile, List items)? quota, + TResult Function(UserData profile, List items)? mailQuota, + TResult Function(UserData profile, List items)? resetPassword, + TResult Function(UserData profile, List items)? aboutUs, + required TResult orElse(), + }) { + if (aboutUs != null) { + return aboutUs(this.profile, items); + } + return orElse(); + } + + @override + @optionalTypeArgs + TResult map({ + required TResult Function(_Loading value) loading, + required TResult Function(_Error value) error, + required TResult Function(_Logout value) logout, + required TResult Function(_Profile value) profile, + required TResult Function(_Quota value) quota, + required TResult Function(_MailQuota value) mailQuota, + required TResult Function(_ResetPassword value) resetPassword, + required TResult Function(_AboutUs value) aboutUs, + }) { + return aboutUs(this); + } + + @override + @optionalTypeArgs + TResult maybeMap({ + TResult Function(_Loading value)? loading, + TResult Function(_Error value)? error, + TResult Function(_Logout value)? logout, + TResult Function(_Profile value)? profile, + TResult Function(_Quota value)? quota, + TResult Function(_MailQuota value)? mailQuota, + TResult Function(_ResetPassword value)? resetPassword, + TResult Function(_AboutUs value)? aboutUs, + required TResult orElse(), + }) { + if (aboutUs != null) { + return aboutUs(this); + } + return orElse(); + } +} + +abstract class _AboutUs implements HomeState { + const factory _AboutUs(UserData profile, List items) = + _$_AboutUs; + + UserData get profile => throw _privateConstructorUsedError; + List get items => throw _privateConstructorUsedError; + @JsonKey(ignore: true) + _$AboutUsCopyWith<_AboutUs> get copyWith => + throw _privateConstructorUsedError; +} diff --git a/lib/src/presentation/blocs/home_bloc/home_event.dart b/lib/src/presentation/blocs/home_bloc/home_event.dart new file mode 100644 index 0000000..e73beb3 --- /dev/null +++ b/lib/src/presentation/blocs/home_bloc/home_event.dart @@ -0,0 +1,13 @@ +part of 'home_bloc.dart'; + +@freezed +class HomeEvent with _$HomeEvent { + const factory HomeEvent.loadProfile() = _LoadProfile; + const factory HomeEvent.logout() = _SendLogout; + const factory HomeEvent.goToProfile(UserData profile) = _GoToProfile; + const factory HomeEvent.goToQuota(UserData profile) = _GoToQuota; + const factory HomeEvent.goToMailQuota(UserData profile) = _GoToMailQuota; + const factory HomeEvent.goToResetPassword(UserData profile) = + _GoToResetPassword; + const factory HomeEvent.goToAboutUs(UserData profile) = _GoToAboutUs; +} diff --git a/lib/src/presentation/blocs/home_bloc/home_state.dart b/lib/src/presentation/blocs/home_bloc/home_state.dart new file mode 100644 index 0000000..2e6a2b9 --- /dev/null +++ b/lib/src/presentation/blocs/home_bloc/home_state.dart @@ -0,0 +1,28 @@ +part of 'home_bloc.dart'; + +@freezed +class HomeState with _$HomeState { + const factory HomeState.loading() = _Loading; + const factory HomeState.error(String message) = _Error; + const factory HomeState.logout() = _Logout; + const factory HomeState.profile( + UserData profile, + List items, + ) = _Profile; + const factory HomeState.quota( + UserData profile, + List items, + ) = _Quota; + const factory HomeState.mailQuota( + UserData profile, + List items, + ) = _MailQuota; + const factory HomeState.resetPassword( + UserData profile, + List items, + ) = _ResetPassword; + const factory HomeState.aboutUs( + UserData profile, + List items, + ) = _AboutUs; +} diff --git a/lib/src/presentation/blocs/login_bloc/login_bloc.dart b/lib/src/presentation/blocs/login_bloc/login_bloc.dart index c2dbb5e..55cae61 100644 --- a/lib/src/presentation/blocs/login_bloc/login_bloc.dart +++ b/lib/src/presentation/blocs/login_bloc/login_bloc.dart @@ -22,8 +22,8 @@ class LoginBloc extends Bloc { Stream handleLoginAttempted(LoginAttempted event) async* { yield LoginAttemptInProgress(); final result = await authRepository.login( - event.username, - event.password, + event.username.trim(), + event.password.trim(), event.rememberMe, ); if (result == null) { diff --git a/lib/src/presentation/blocs/register_bloc/register_bloc.dart b/lib/src/presentation/blocs/register_bloc/register_bloc.dart index 7d10ed8..9e1a88d 100644 --- a/lib/src/presentation/blocs/register_bloc/register_bloc.dart +++ b/lib/src/presentation/blocs/register_bloc/register_bloc.dart @@ -44,9 +44,9 @@ class RegisterBloc extends Bloc { return; } final userId = await repository.sendRegistration(PasswordEditData( - answers: event.answers, - ci: event.ci, - password: event.passwordFirst, + answers: event.answers.map((e) => e.trim()).toList(), + ci: event.ci.trim(), + password: event.passwordFirst.trim(), questions: event.questions, )); if (userId.error != null) { diff --git a/lib/src/presentation/blocs/reset_password_bloc/resetpassword_bloc.dart b/lib/src/presentation/blocs/reset_password_bloc/resetpassword_bloc.dart index ebd9ed7..4c5651f 100644 --- a/lib/src/presentation/blocs/reset_password_bloc/resetpassword_bloc.dart +++ b/lib/src/presentation/blocs/reset_password_bloc/resetpassword_bloc.dart @@ -30,8 +30,8 @@ class ResetPasswordBloc extends Bloc { return; } final status = await authRepository.resetPassword( - event.currentPassword, - event.passwordFirst, + event.currentPassword.trim(), + event.passwordFirst.trim(), ); if (status.status ?? false) { yield ResetPasswordSuccess(); diff --git a/lib/src/presentation/pages/about_page.dart b/lib/src/presentation/pages/about_page.dart deleted file mode 100644 index 9b01cb7..0000000 --- a/lib/src/presentation/pages/about_page.dart +++ /dev/null @@ -1,217 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:gestionuh/src/data/repositories/repositories.dart'; -import 'package:gestionuh/src/presentation/widgets/flash_helper.dart'; -import 'package:gestionuh/src/presentation/widgets/widgets.dart'; -import 'package:gestionuh/src/utils/constants/constants.dart'; -import 'package:get_it/get_it.dart'; -import 'package:responsive_builder/responsive_builder.dart'; -import 'package:url_launcher/url_launcher.dart'; - -class AboutInformationPage extends StatelessWidget { - const AboutInformationPage({Key? key}) : super(key: key); - - @override - Widget build(BuildContext context) { - return Scaffold( - appBar: AppBar( - title: const Text('Acerca de ${Constants.appName}'), - centerTitle: true, - ), - drawer: DefaultDrawer(), - bottomSheet: Center( - heightFactor: 1, - child: FutureBuilder( - future: GetIt.I().getVersion(), - builder: (context, snapshot) { - final textSpans = [ - TextSpan(text: '\u00a9 ${DateTime.now().year}'), - ]; - if (snapshot.hasData) { - textSpans.addAll([ - const TextSpan(text: ' '), - TextSpan( - text: '${Constants.appName} v${snapshot.data}', - style: Theme.of(context).textTheme.bodyText1!.copyWith( - fontSize: 11, - color: Theme.of(context).primaryColor, - ), - ), - ]); - } - return RichText( - text: TextSpan( - style: Theme.of(context) - .textTheme - .bodyText1! - .copyWith(fontSize: 11), - children: textSpans, - ), - textAlign: TextAlign.center, - ); - }, - ), - ), - body: Scrollbar( - child: SingleChildScrollView( - child: Center( - child: Container( - width: getValueForScreenType( - context: context, - mobile: MediaQuery.of(context).size.width, - tablet: MediaQuery.of(context).size.width * 0.5, - ), - padding: - const EdgeInsets.symmetric(horizontal: 16.0, vertical: 20), - child: Column( - mainAxisAlignment: MainAxisAlignment.center, - children: [ - const SizedBox( - height: 20, - ), - Center( - child: Image.asset( - 'assets/images/logo-uh.png', - color: Theme.of(context).primaryColor, - ), - ), - const SizedBox( - height: 20, - ), - Text( - About.shortDescription, - style: Theme.of(context) - .textTheme - .headline6! - .copyWith(fontSize: 15, color: Colors.black38), - ), - const SizedBox( - height: 50, - ), - Text( - 'Equipo de desarrollo:', - style: Theme.of(context).textTheme.headline5!.copyWith(), - ), - const SizedBox( - height: 30, - ), - Column( - children: Developers.teams.keys - .map((key) => ExpansionTile( - title: Text(key), - children: Developers.teams[key]! - .map((e) => ListTile( - title: Text( - e.name, - style: Theme.of(context) - .textTheme - .headline6! - .copyWith(fontSize: 14), - ), - subtitle: Text( - e.role, - style: Theme.of(context) - .textTheme - .bodyText1! - .copyWith(fontSize: 12), - ), - onTap: e.link == null - ? null - : () async { - if (await canLaunch(e.link!)) { - await launch(e.link!); - } else { - FlashHelper.errorBar( - context, - message: - 'No puede acceder a ${e.link}', - ); - } - }, - trailing: e.link != null - ? const Icon( - Icons.link_off_outlined) - : null, - )) - .toList(), - )) - .toList(), - ), - const SizedBox(height: 50), - Text( - 'Nodo Central de Red - UH', - style: Theme.of(context).textTheme.headline6!.copyWith(), - ), - const SizedBox(height: 10), - Text( - 'MATCOM - UH', - style: Theme.of(context).textTheme.headline6!.copyWith(), - ), - const SizedBox(height: 10), - Text( - 'GRS - UH', - style: Theme.of(context).textTheme.headline6!.copyWith(), - ), - GestureDetector( - onTap: () async { - const url = - 'https://raw.githubusercontent.com/covid19cuba/covid19cuba-app/master/LICENSE'; - if (await canLaunch(url)) { - await launch(url); - } else { - FlashHelper.errorBar( - context, - message: 'No puede acceder a $url', - ); - } - }, - child: Container( - padding: const EdgeInsets.symmetric( - horizontal: 20, vertical: 20), - child: Row( - mainAxisAlignment: MainAxisAlignment.center, - children: [ - Text( - 'Copyright 2021', - textAlign: TextAlign.center, - style: Theme.of(context).textTheme.subtitle2, - ), - Container( - padding: const EdgeInsets.all(2), - ), - Icon( - Icons.copyright, - color: Theme.of(context).textTheme.subtitle2!.color, - ), - Container( - padding: const EdgeInsets.all(2), - ), - Text( - 'GPL-3.0', - textAlign: TextAlign.center, - style: Theme.of(context).textTheme.subtitle2, - ), - ], - ), - ), - ) - ], - ), - ), - ), - ), - ), - ); - } -} - -class DeveloperInfo { - final String? name; - final String? role; - final String? link; - - const DeveloperInfo({ - this.name, - this.role, - this.link, - }); -} diff --git a/lib/src/presentation/pages/home_page/home_page.dart b/lib/src/presentation/pages/home_page/home_page.dart new file mode 100644 index 0000000..65eecde --- /dev/null +++ b/lib/src/presentation/pages/home_page/home_page.dart @@ -0,0 +1,298 @@ +import 'package:flutter/material.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; +import 'package:gestionuh/src/data/enums/enums.dart'; +import 'package:gestionuh/src/data/models/models.dart'; +import 'package:gestionuh/src/presentation/blocs/blocs.dart'; +import 'package:gestionuh/src/presentation/pages/home_page/sub_pages/sub_pages.dart'; +import 'package:gestionuh/src/presentation/widgets/widgets.dart'; +import 'package:gestionuh/src/utils/constants/constants.dart'; +import 'package:get_it/get_it.dart'; + +class HomePage extends StatelessWidget { + @override + Widget build(BuildContext context) { + return BlocListener( + listener: _buildListener, + child: Scaffold( + appBar: _buildAppBar(), + drawer: _buildDrawer(context), + bottomSheet: const GestionUHBottomSheet(), + body: _buildBody(context), + ), + ); + } + + void _buildListener(BuildContext context, HomeState state) { + state.maybeWhen( + logout: () { + Navigator.of(context).pushNamedAndRemoveUntil( + LOGIN_ROUTE_NAME, + (route) => false, + ); + }, + orElse: () {}, + ); + } + + PreferredSizeWidget _buildAppBar() { + return AppBar( + title: BlocBuilder( + builder: (context, state) { + return Text( + state.map( + loading: (state) => 'Cargando', + error: (state) => 'Error', + logout: (state) => 'Cargando', + profile: (state) => 'Perfil', + quota: (state) => 'Mi Cuota', + mailQuota: (state) => 'Correo', + resetPassword: (state) => 'Cambiar Contraseña', + aboutUs: (state) => 'Acerca de ${Constants.appName}', + ), + ); + }, + ), + centerTitle: true, + ); + } + + Drawer _buildDrawer(BuildContext context) { + return Drawer( + child: BlocBuilder( + builder: (_, state) { + return ListView( + children: [ + DrawerHeader( + child: Image.asset( + 'assets/images/logo-uh.png', + color: Theme.of(context).primaryColor, + ), + ), + ...state.when>( + loading: () => [ + ListTile( + leading: const GestionUhLoadingIndicator(), + title: Text( + 'Cargando ...', + style: Theme.of(context).textTheme.subtitle2, + ), + ), + ], + error: (error) => [ + ListTile( + leading: const Icon(Icons.error), + title: Text( + 'Error', + style: Theme.of(context).textTheme.subtitle2, + ), + ), + ], + profile: (p, x) => _getDrawerItems(context, p, x), + quota: (p, x) => _getDrawerItems(context, p, x), + mailQuota: (p, x) => _getDrawerItems(context, p, x), + resetPassword: (p, x) => _getDrawerItems(context, p, x), + aboutUs: (p, x) => _getDrawerItems(context, p, x), + logout: () => [ + ListTile( + leading: const GestionUhLoadingIndicator(), + title: Text( + 'Cerrando Sesión ...', + style: Theme.of(context).textTheme.subtitle2, + ), + ), + ], + ), + ], + ); + }, + ), + ); + } + + Widget _buildBody(BuildContext context) { + return BlocBuilder( + builder: (context, state) { + return state.map( + loading: (state) { + return const Center( + child: GestionUhLoadingIndicator(), + ); + }, + error: (state) { + return Center( + child: Container( + margin: const EdgeInsets.all(20), + child: Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Text(state.message), + const SizedBox(height: 20), + GestionUhDefaultButton( + text: 'Reintentar', + onPressed: () { + context + .read() + .add(const HomeEvent.loadProfile()); + }, + ), + ], + ), + ), + ); + }, + logout: (state) { + return const Center( + child: GestionUhLoadingIndicator(), + ); + }, + profile: (state) { + return BlocProvider( + create: (_) => GetIt.I()..add(ProfileInitialized()), + child: const ProfilePage(), + ); + }, + quota: (state) { + return BlocProvider( + create: (_) => GetIt.I()..add(QuotaInitialized()), + child: const QuotaPage(), + ); + }, + mailQuota: (state) { + return BlocProvider( + create: (_) => GetIt.I()..add(MailQuotaInitialized()), + child: const MailQuotaPage(), + ); + }, + resetPassword: (state) { + return BlocProvider( + create: (_) => GetIt.I(), + child: const ResetPasswordPage(), + ); + }, + aboutUs: (state) { + return const AboutInformationPage(); + }, + ); + }, + ); + } + + List _getDrawerItems( + BuildContext context, + UserData profile, + List items, + ) { + return items.map((e) => _getDrawerItem(context, profile, e)).toList(); + } + + Widget _getDrawerItem( + BuildContext context, + UserData profile, + HomeItemEnum item, + ) { + switch (item) { + case HomeItemEnum.Separator: + return const Divider(); + case HomeItemEnum.Profile: + return _buildDrawerItem( + context: context, + text: 'Perfil', + icon: Icons.person, + onTap: () { + Navigator.of(context).pop(); + context.read().add(HomeEvent.goToProfile(profile)); + }, + ); + case HomeItemEnum.Quota: + return _buildDrawerItem( + context: context, + text: 'Mi Cuota', + icon: Icons.data_usage, + onTap: () { + Navigator.of(context).pop(); + context.read().add(HomeEvent.goToQuota(profile)); + }, + ); + case HomeItemEnum.MailQuota: + return _buildDrawerItem( + context: context, + text: 'Correo', + icon: Icons.mail, + onTap: () { + Navigator.of(context).pop(); + context.read().add(HomeEvent.goToMailQuota(profile)); + }, + ); + case HomeItemEnum.ResetPassword: + return _buildDrawerItem( + context: context, + text: 'Cambiar Contraseña', + icon: Icons.security_rounded, + onTap: () { + Navigator.of(context).pop(); + context.read().add(HomeEvent.goToResetPassword(profile)); + }, + ); + case HomeItemEnum.Logout: + return _buildDrawerItem( + context: context, + text: 'Cerrar Sesión', + icon: Icons.logout, + onTap: () async { + Navigator.of(context).pop(); + final option = await showDialog( + context: context, + builder: (context) { + return AlertDialog( + content: const Text('¿Está seguro que desea cerrar sesión?'), + actions: [ + TextButton( + onPressed: () { + Navigator.of(context).pop(true); + }, + child: const Text('Si'), + ), + TextButton( + onPressed: () async { + Navigator.of(context).pop(false); + }, + child: const Text('No'), + ), + ], + ); + }, + ); + if (option ?? false) { + context.read().add(const HomeEvent.logout()); + } + }, + ); + case HomeItemEnum.AboutUs: + return _buildDrawerItem( + context: context, + text: 'Acerca de', + icon: Icons.info_outline_rounded, + onTap: () { + Navigator.of(context).pop(); + context.read().add(HomeEvent.goToAboutUs(profile)); + }, + ); + } + } + + Widget _buildDrawerItem({ + required BuildContext context, + required String text, + IconData? icon, + void Function()? onTap, + }) { + return ListTile( + leading: Icon(icon), + title: Text( + text, + style: Theme.of(context).textTheme.subtitle2, + ), + onTap: onTap, + ); + } +} diff --git a/lib/src/presentation/pages/home_page/sub_pages/about_page.dart b/lib/src/presentation/pages/home_page/sub_pages/about_page.dart new file mode 100644 index 0000000..e4f32c7 --- /dev/null +++ b/lib/src/presentation/pages/home_page/sub_pages/about_page.dart @@ -0,0 +1,172 @@ +import 'package:flutter/material.dart'; +import 'package:gestionuh/src/presentation/widgets/flash_helper.dart'; +import 'package:gestionuh/src/utils/constants/constants.dart'; +import 'package:responsive_builder/responsive_builder.dart'; +import 'package:url_launcher/url_launcher.dart'; + +class AboutInformationPage extends StatelessWidget { + const AboutInformationPage({Key? key}) : super(key: key); + + @override + Widget build(BuildContext context) { + return Scrollbar( + child: SingleChildScrollView( + child: Center( + child: Container( + width: getValueForScreenType( + context: context, + mobile: MediaQuery.of(context).size.width, + tablet: MediaQuery.of(context).size.width * 0.5, + ), + padding: const EdgeInsets.symmetric(horizontal: 16.0, vertical: 20), + child: Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + const SizedBox( + height: 20, + ), + Center( + child: Image.asset( + 'assets/images/logo-uh.png', + color: Theme.of(context).primaryColor, + ), + ), + const SizedBox( + height: 20, + ), + Text( + About.shortDescription, + style: Theme.of(context) + .textTheme + .headline6! + .copyWith(fontSize: 15, color: Colors.black38), + ), + const SizedBox( + height: 50, + ), + Text( + 'Equipo de desarrollo:', + style: Theme.of(context).textTheme.headline5!.copyWith(), + ), + const SizedBox( + height: 30, + ), + Column( + children: Developers.teams.keys + .map((key) => ExpansionTile( + title: Text(key), + children: Developers.teams[key]! + .map((e) => ListTile( + title: Text( + e.name, + style: Theme.of(context) + .textTheme + .headline6! + .copyWith(fontSize: 14), + ), + subtitle: Text( + e.role, + style: Theme.of(context) + .textTheme + .bodyText1! + .copyWith(fontSize: 12), + ), + onTap: e.link == null + ? null + : () async { + if (await canLaunch(e.link!)) { + await launch(e.link!); + } else { + FlashHelper.errorBar( + context, + message: + 'No puede acceder a ${e.link}', + ); + } + }, + trailing: e.link != null + ? const Icon(Icons.link_off_outlined) + : null, + )) + .toList(), + )) + .toList(), + ), + const SizedBox(height: 50), + Text( + 'Nodo Central de Red - UH', + style: Theme.of(context).textTheme.headline6!.copyWith(), + ), + const SizedBox(height: 10), + Text( + 'MATCOM - UH', + style: Theme.of(context).textTheme.headline6!.copyWith(), + ), + const SizedBox(height: 10), + Text( + 'GRS - UH', + style: Theme.of(context).textTheme.headline6!.copyWith(), + ), + GestureDetector( + onTap: () async { + const url = + 'https://raw.githubusercontent.com/covid19cuba/covid19cuba-app/master/LICENSE'; + if (await canLaunch(url)) { + await launch(url); + } else { + FlashHelper.errorBar( + context, + message: 'No puede acceder a $url', + ); + } + }, + child: Container( + padding: const EdgeInsets.symmetric( + horizontal: 20, vertical: 20), + child: Row( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Text( + 'Copyright 2021', + textAlign: TextAlign.center, + style: Theme.of(context).textTheme.subtitle2, + ), + Container( + padding: const EdgeInsets.all(2), + ), + Icon( + Icons.copyright, + color: Theme.of(context).textTheme.subtitle2!.color, + ), + Container( + padding: const EdgeInsets.all(2), + ), + Text( + 'GPL-3.0', + textAlign: TextAlign.center, + style: Theme.of(context).textTheme.subtitle2, + ), + ], + ), + ), + ) + ], + ), + ), + ), + ), + ); + } +} + +class DeveloperInfo { + final String? name; + final String? role; + final String? link; + + const DeveloperInfo({ + this.name, + this.role, + this.link, + }); +} diff --git a/lib/src/presentation/pages/home_page/sub_pages/mail_quotas_page.dart b/lib/src/presentation/pages/home_page/sub_pages/mail_quotas_page.dart new file mode 100644 index 0000000..5522361 --- /dev/null +++ b/lib/src/presentation/pages/home_page/sub_pages/mail_quotas_page.dart @@ -0,0 +1,111 @@ +import 'package:flutter/material.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; +import 'package:gestionuh/src/presentation/blocs/blocs.dart'; +import 'package:gestionuh/src/presentation/widgets/widgets.dart'; +import 'package:responsive_builder/responsive_builder.dart'; + +class MailQuotaPage extends StatefulWidget { + const MailQuotaPage({Key? key}) : super(key: key); + + @override + _MailQuotaPageState createState() => _MailQuotaPageState(); +} + +class _MailQuotaPageState extends State { + @override + Widget build(BuildContext context) { + return BlocConsumer( + listener: (context, state) {}, + builder: (context, state) { + if (state is MailQuotaLoadedSuccess) { + return RefreshIndicator( + onRefresh: () async { + context.read().add(MailQuotaInitialized()); + }, + child: Scrollbar( + child: ListView( + physics: const AlwaysScrollableScrollPhysics(), + children: [ + Center( + child: Container( + width: getValueForScreenType( + context: context, + mobile: MediaQuery.of(context).size.width, + tablet: MediaQuery.of(context).size.width * 0.5, + ), + padding: const EdgeInsets.only( + top: 30, + bottom: 9, + left: 18, + right: 18, + ), + child: Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Center( + child: MailQuotaGraph( + quota: state.quota!, + ), + ), + ], + ), + ), + ), + ], + ), + ), + ); + } + if (state is MailQuotaLoadedFailure) { + return Scrollbar( + child: ListView( + children: [ + Center( + child: Container( + width: getValueForScreenType( + context: context, + mobile: MediaQuery.of(context).size.width, + tablet: MediaQuery.of(context).size.width * 0.5, + ), + padding: const EdgeInsets.only( + top: 30, + bottom: 9, + left: 18, + right: 18, + ), + child: Column( + mainAxisSize: MainAxisSize.min, + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Text(state.error!), + Padding( + padding: const EdgeInsets.all(5), + child: GestionUhDefaultButton( + text: 'Reintentar', + onPressed: () { + context.read().add( + MailQuotaInitialized(), + ); + }, + ), + ), + ], + ), + ), + ), + ], + ), + ); + } + return Center( + child: Column( + mainAxisAlignment: MainAxisAlignment.center, + children: const [ + GestionUhLoadingIndicator(), + ], + ), + ); + }, + ); + } +} diff --git a/lib/src/presentation/pages/profile_page.dart b/lib/src/presentation/pages/home_page/sub_pages/profile_page.dart similarity index 61% rename from lib/src/presentation/pages/profile_page.dart rename to lib/src/presentation/pages/home_page/sub_pages/profile_page.dart index e46205d..b5fc869 100644 --- a/lib/src/presentation/pages/profile_page.dart +++ b/lib/src/presentation/pages/home_page/sub_pages/profile_page.dart @@ -1,7 +1,6 @@ import 'package:flutter/material.dart'; import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:gestionuh/src/presentation/blocs/blocs.dart'; -import 'package:gestionuh/src/presentation/widgets/bottom_sheet.dart'; import 'package:gestionuh/src/presentation/widgets/widgets.dart'; import 'package:responsive_builder/responsive_builder.dart'; @@ -15,108 +14,64 @@ class ProfilePage extends StatefulWidget { class _ProfilePageState extends State { @override Widget build(BuildContext context) { - return Scaffold( - appBar: AppBar( - title: const Text('Perfil'), - centerTitle: true, - ), - bottomSheet: const GestionUHBottomSheet(), - drawer: DefaultDrawer(), - body: BlocConsumer( - listener: (context, state) {}, - builder: (context, state) { - if (state is ProfileLoadedSuccess) { - return RefreshIndicator( - onRefresh: () async { - context.read().add(ProfileInitialized()); - }, - child: Scrollbar( - child: ListView( - physics: const AlwaysScrollableScrollPhysics(), - children: [ - Center( - child: Container( - width: getValueForScreenType( - context: context, - mobile: MediaQuery.of(context).size.width, - tablet: MediaQuery.of(context).size.width * 0.5, - ), - padding: const EdgeInsets.only( - top: 30, - bottom: 9, - left: 18, - right: 18, - ), - child: Column( - mainAxisAlignment: MainAxisAlignment.center, - crossAxisAlignment: CrossAxisAlignment.start, - children: [ + return BlocConsumer( + listener: (context, state) {}, + builder: (context, state) { + if (state is ProfileLoadedSuccess) { + return RefreshIndicator( + onRefresh: () async { + context.read().add(ProfileInitialized()); + }, + child: Scrollbar( + child: ListView( + physics: const AlwaysScrollableScrollPhysics(), + children: [ + Center( + child: Container( + width: getValueForScreenType( + context: context, + mobile: MediaQuery.of(context).size.width, + tablet: MediaQuery.of(context).size.width * 0.5, + ), + padding: const EdgeInsets.only( + top: 30, + bottom: 9, + left: 18, + right: 18, + ), + child: Column( + mainAxisAlignment: MainAxisAlignment.center, + crossAxisAlignment: CrossAxisAlignment.start, + children: [ + if ((state.profile.name ?? '').isNotEmpty) buildProfileField( title: 'Nombre', body: state.profile.name ?? '', ), + if ((state.profile.email ?? '').isNotEmpty) buildProfileField( title: 'Correo', body: state.profile.email ?? '', ), + if ((state.profile.careerName ?? '').isNotEmpty) buildProfileField( title: 'Carrera', body: state.profile.careerName ?? '', ), + if ((state.profile.position ?? '').isNotEmpty) buildProfileField( title: 'Ocupación', body: state.profile.position ?? '', ), + if ((state.profile.objectClass ?? '').isNotEmpty) buildProfileField( title: 'Clase', body: state.profile.objectClass ?? '', ), - buildAccessFields( - mail: state.profile.hasEmail ?? false, - cloud: state.profile.hasCloud ?? false, - internet: state.profile.hasInternet ?? false, - ), - ], - ), - ), - ), - ], - ), - ), - ); - } - if (state is ProfileLoadedFailure) { - return Scrollbar( - child: ListView( - children: [ - Center( - child: Container( - width: getValueForScreenType( - context: context, - mobile: MediaQuery.of(context).size.width, - tablet: MediaQuery.of(context).size.width * 0.5, - ), - padding: const EdgeInsets.only( - top: 30, - bottom: 9, - left: 18, - right: 18, - ), - child: Column( - mainAxisSize: MainAxisSize.min, - mainAxisAlignment: MainAxisAlignment.center, - children: [ - Text(state.error), - Padding( - padding: const EdgeInsets.all(5), - child: GestionUhDefaultButton( - text: 'Reintentar', - onPressed: () { - context.read().add( - ProfileInitialized(), - ); - }, - ), + buildAccessFields( + mail: state.profile.hasEmail ?? false, + cloud: state.profile.hasCloud ?? false, + internet: state.profile.hasInternet ?? false, ), ], ), @@ -124,18 +79,59 @@ class _ProfilePageState extends State { ), ], ), - ); - } - return Center( - child: Column( - mainAxisAlignment: MainAxisAlignment.center, - children: const [ - GestionUhLoadingIndicator(), + ), + ); + } + if (state is ProfileLoadedFailure) { + return Scrollbar( + child: ListView( + children: [ + Center( + child: Container( + width: getValueForScreenType( + context: context, + mobile: MediaQuery.of(context).size.width, + tablet: MediaQuery.of(context).size.width * 0.5, + ), + padding: const EdgeInsets.only( + top: 30, + bottom: 9, + left: 18, + right: 18, + ), + child: Column( + mainAxisSize: MainAxisSize.min, + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Text(state.error), + Padding( + padding: const EdgeInsets.all(5), + child: GestionUhDefaultButton( + text: 'Reintentar', + onPressed: () { + context + .read() + .add(ProfileInitialized()); + }, + ), + ), + ], + ), + ), + ), ], ), ); - }, - ), + } + return Center( + child: Column( + mainAxisAlignment: MainAxisAlignment.center, + children: const [ + GestionUhLoadingIndicator(), + ], + ), + ); + }, ); } diff --git a/lib/src/presentation/pages/home_page/sub_pages/quota_page.dart b/lib/src/presentation/pages/home_page/sub_pages/quota_page.dart new file mode 100644 index 0000000..1f00f34 --- /dev/null +++ b/lib/src/presentation/pages/home_page/sub_pages/quota_page.dart @@ -0,0 +1,111 @@ +import 'package:flutter/material.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; +import 'package:gestionuh/src/presentation/blocs/blocs.dart'; +import 'package:gestionuh/src/presentation/widgets/widgets.dart'; +import 'package:responsive_builder/responsive_builder.dart'; + +class QuotaPage extends StatefulWidget { + const QuotaPage({Key? key}) : super(key: key); + + @override + _QuotaPageState createState() => _QuotaPageState(); +} + +class _QuotaPageState extends State { + @override + Widget build(BuildContext context) { + return BlocConsumer( + listener: (context, state) {}, + builder: (context, state) { + if (state is QuotaLoadedSuccess) { + return RefreshIndicator( + onRefresh: () async { + context.read().add(QuotaInitialized()); + }, + child: Scrollbar( + child: ListView( + physics: const AlwaysScrollableScrollPhysics(), + children: [ + Center( + child: Container( + width: getValueForScreenType( + context: context, + mobile: MediaQuery.of(context).size.width, + tablet: MediaQuery.of(context).size.width * 0.5, + ), + padding: const EdgeInsets.only( + top: 30, + bottom: 9, + left: 18, + right: 18, + ), + child: Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Center( + child: QuotaGraph( + quota: state.quota, + ), + ), + ], + ), + ), + ), + ], + ), + ), + ); + } + if (state is QuotaLoadedFailure) { + return Scrollbar( + child: ListView( + children: [ + Center( + child: Container( + width: getValueForScreenType( + context: context, + mobile: MediaQuery.of(context).size.width, + tablet: MediaQuery.of(context).size.width * 0.5, + ), + padding: const EdgeInsets.only( + top: 30, + bottom: 9, + left: 18, + right: 18, + ), + child: Column( + mainAxisSize: MainAxisSize.min, + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Text(state.error), + Padding( + padding: const EdgeInsets.all(5), + child: GestionUhDefaultButton( + text: 'Reintentar', + onPressed: () { + context.read().add( + QuotaInitialized(), + ); + }, + ), + ), + ], + ), + ), + ), + ], + ), + ); + } + return Center( + child: Column( + mainAxisAlignment: MainAxisAlignment.center, + children: const [ + GestionUhLoadingIndicator(), + ], + ), + ); + }, + ); + } +} diff --git a/lib/src/presentation/pages/home_page/sub_pages/reset_password_page.dart b/lib/src/presentation/pages/home_page/sub_pages/reset_password_page.dart new file mode 100644 index 0000000..8cce1db --- /dev/null +++ b/lib/src/presentation/pages/home_page/sub_pages/reset_password_page.dart @@ -0,0 +1,160 @@ +import 'package:flutter/material.dart'; +import 'package:flutter_bloc/flutter_bloc.dart'; +import 'package:gestionuh/src/presentation/blocs/reset_password_bloc/resetpassword_bloc.dart'; +import 'package:gestionuh/src/presentation/widgets/flash_helper.dart'; +import 'package:gestionuh/src/presentation/widgets/widgets.dart'; +import 'package:gestionuh/src/utils/validators.dart'; +import 'package:responsive_builder/responsive_builder.dart'; + +class ResetPasswordPage extends StatefulWidget { + const ResetPasswordPage({Key? key}) : super(key: key); + + @override + _ResetPasswordPageState createState() => _ResetPasswordPageState(); +} + +class _ResetPasswordPageState extends State { + final _passwordCurrentController = TextEditingController(); + final _passwordFirstController = TextEditingController(); + final _passwordSecondController = TextEditingController(); + final _formPasswordKey = GlobalKey(); + + @override + void dispose() { + _passwordFirstController.dispose(); + _passwordSecondController.dispose(); + super.dispose(); + } + + @override + Widget build(BuildContext context) { + return BlocConsumer( + listener: (context, state) { + if (state is ResetPasswordInitial) { + FlashHelper.errorBar(context, message: state.error); + } + if (state is ResetPasswordSuccess) { + FlashHelper.successBar(context, + message: 'La contraseña ha sido actualizada correctamente.'); + } + }, + builder: (context, state) { + return SingleChildScrollView( + child: Center( + child: Container( + width: getValueForScreenType( + context: context, + mobile: MediaQuery.of(context).size.width, + tablet: MediaQuery.of(context).size.width * 0.5, + ), + padding: const EdgeInsets.only( + top: 30, bottom: 9, left: 18, right: 18), + child: Column( + mainAxisSize: MainAxisSize.min, + children: [ + // Hints Area + Padding( + padding: const EdgeInsets.symmetric(horizontal: 5.0), + child: RichText( + text: TextSpan( + style: Theme.of(context) + .textTheme + .bodyText1! + .copyWith(height: 1.4), + children: [ + TextSpan( + text: 'Su nueva contraseña debe tener:\n', + style: Theme.of(context).textTheme.headline6, + ), + ...const [ + '(1) Más de 8 caracteres.', + '(2) Al menos una minúscula.', + '(3) Al menos una mayúscula.', + '(4) Al menos un caracter especial, Ej. !\$@+.', + '(5) Al menos un número.', + ].map((e) => TextSpan(text: '$e\n')), + ]), + ), + ), + + // Password inputs + Form( + key: _formPasswordKey, + child: Column( + mainAxisSize: MainAxisSize.min, + children: [ + // Current password input + Padding( + padding: const EdgeInsets.symmetric(vertical: 8.0), + child: GestionUhDefaultTextField( + labelText: 'Contraseña Actual', + hintText: '********', + controller: _passwordCurrentController, + validator: safetyPasswordValidator, + autovalidateMode: AutovalidateMode.disabled, + keyboardType: TextInputType.visiblePassword, + ), + ), + const SizedBox( + height: 30, + child: Divider( + color: Colors.black54, + )), + Padding( + padding: const EdgeInsets.symmetric(vertical: 8.0), + child: GestionUhDefaultTextField( + labelText: 'Contraseña Nueva*', + hintText: '********', + controller: _passwordFirstController, + validator: safetyPasswordValidator, + autovalidateMode: AutovalidateMode.disabled, + keyboardType: TextInputType.visiblePassword, + ), + ), + + Padding( + padding: const EdgeInsets.symmetric(vertical: 8.0), + child: GestionUhDefaultTextField( + labelText: 'Repetir Contraseña*', + hintText: '********', + controller: _passwordSecondController, + validator: safetyPasswordValidator, + autovalidateMode: AutovalidateMode.disabled, + keyboardType: TextInputType.visiblePassword, + ), + ), + ], + ), + ), + const SizedBox(height: 25), + GestionUhDefaultButton( + text: 'Actualizar Contraseña', + onPressed: state is ResetPasswordInProgress + ? null + : () => _resetPassword(context), + ), + const SizedBox(height: 30) + ], + ), + ), + ), + ); + }, + ); + } + + void _resetPassword(BuildContext context) { + if (_formPasswordKey.currentState!.validate()) { + final String currentPassword = _passwordCurrentController.text; + final String passwordFirst = _passwordFirstController.text; + final String passwordSecond = _passwordSecondController.text; + context.read().add( + ResetPasswordAttempted( + currentPassword: currentPassword, + passwordFirst: passwordFirst, + passwordSecond: passwordSecond, + ), + ); + } + } +} diff --git a/lib/src/presentation/pages/home_page/sub_pages/sub_pages.dart b/lib/src/presentation/pages/home_page/sub_pages/sub_pages.dart new file mode 100644 index 0000000..7486939 --- /dev/null +++ b/lib/src/presentation/pages/home_page/sub_pages/sub_pages.dart @@ -0,0 +1,5 @@ +export 'about_page.dart'; +export 'mail_quotas_page.dart'; +export 'profile_page.dart'; +export 'quota_page.dart'; +export 'reset_password_page.dart'; diff --git a/lib/src/presentation/pages/login_page.dart b/lib/src/presentation/pages/login_page.dart index 5498117..ba411f3 100644 --- a/lib/src/presentation/pages/login_page.dart +++ b/lib/src/presentation/pages/login_page.dart @@ -59,7 +59,7 @@ class _LoginPageState extends State { body: BlocConsumer( listener: (context, state) { if (authRepo.logged) { - Navigator.of(context).pushReplacementNamed(PROFILE_ROUTE_NAME); + Navigator.of(context).pushReplacementNamed(HOME_ROUTE_NAME); } if (state is LoginAttemptInitial) { FlashHelper.errorBar(context, message: state.error); diff --git a/lib/src/presentation/pages/mail_quotas_page.dart b/lib/src/presentation/pages/mail_quotas_page.dart deleted file mode 100644 index 035cc28..0000000 --- a/lib/src/presentation/pages/mail_quotas_page.dart +++ /dev/null @@ -1,120 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:flutter_bloc/flutter_bloc.dart'; -import 'package:gestionuh/src/presentation/blocs/blocs.dart'; -import 'package:gestionuh/src/presentation/widgets/bottom_sheet.dart'; -import 'package:gestionuh/src/presentation/widgets/widgets.dart'; -import 'package:responsive_builder/responsive_builder.dart'; - -class MailQuotaPage extends StatefulWidget { - const MailQuotaPage({Key? key}) : super(key: key); - - @override - _MailQuotaPageState createState() => _MailQuotaPageState(); -} - -class _MailQuotaPageState extends State { - @override - Widget build(BuildContext context) { - return Scaffold( - appBar: AppBar( - title: const Text('Correo'), - centerTitle: true, - ), - bottomSheet: const GestionUHBottomSheet(), - drawer: DefaultDrawer(), - body: BlocConsumer( - listener: (context, state) {}, - builder: (context, state) { - if (state is MailQuotaLoadedSuccess) { - return RefreshIndicator( - onRefresh: () async { - context.read().add(MailQuotaInitialized()); - }, - child: Scrollbar( - child: ListView( - physics: const AlwaysScrollableScrollPhysics(), - children: [ - Center( - child: Container( - width: getValueForScreenType( - context: context, - mobile: MediaQuery.of(context).size.width, - tablet: MediaQuery.of(context).size.width * 0.5, - ), - padding: const EdgeInsets.only( - top: 30, - bottom: 9, - left: 18, - right: 18, - ), - child: Column( - mainAxisAlignment: MainAxisAlignment.center, - children: [ - Center( - child: MailQuotaGraph( - quota: state.quota!, - ), - ), - ], - ), - ), - ), - ], - ), - ), - ); - } - if (state is MailQuotaLoadedFailure) { - return Scrollbar( - child: ListView( - children: [ - Center( - child: Container( - width: getValueForScreenType( - context: context, - mobile: MediaQuery.of(context).size.width, - tablet: MediaQuery.of(context).size.width * 0.5, - ), - padding: const EdgeInsets.only( - top: 30, - bottom: 9, - left: 18, - right: 18, - ), - child: Column( - mainAxisSize: MainAxisSize.min, - mainAxisAlignment: MainAxisAlignment.center, - children: [ - Text(state.error!), - Padding( - padding: const EdgeInsets.all(5), - child: GestionUhDefaultButton( - text: 'Reintentar', - onPressed: () { - context.read().add( - MailQuotaInitialized(), - ); - }, - ), - ), - ], - ), - ), - ), - ], - ), - ); - } - return Center( - child: Column( - mainAxisAlignment: MainAxisAlignment.center, - children: const [ - GestionUhLoadingIndicator(), - ], - ), - ); - }, - ), - ); - } -} diff --git a/lib/src/presentation/pages/pages.dart b/lib/src/presentation/pages/pages.dart index 77e9377..4221e0d 100644 --- a/lib/src/presentation/pages/pages.dart +++ b/lib/src/presentation/pages/pages.dart @@ -1,8 +1,4 @@ -export 'about_page.dart'; +export 'home_page/home_page.dart'; export 'login_page.dart'; -export 'mail_quotas_page.dart'; -export 'profile_page.dart'; -export 'quota_page.dart'; export 'recover_password_page.dart'; export 'register_page.dart'; -export 'reset_password_page.dart'; diff --git a/lib/src/presentation/pages/quota_page.dart b/lib/src/presentation/pages/quota_page.dart deleted file mode 100644 index acf6e0a..0000000 --- a/lib/src/presentation/pages/quota_page.dart +++ /dev/null @@ -1,120 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:flutter_bloc/flutter_bloc.dart'; -import 'package:gestionuh/src/presentation/blocs/blocs.dart'; -import 'package:gestionuh/src/presentation/widgets/bottom_sheet.dart'; -import 'package:gestionuh/src/presentation/widgets/widgets.dart'; -import 'package:responsive_builder/responsive_builder.dart'; - -class QuotaPage extends StatefulWidget { - const QuotaPage({Key? key}) : super(key: key); - - @override - _QuotaPageState createState() => _QuotaPageState(); -} - -class _QuotaPageState extends State { - @override - Widget build(BuildContext context) { - return Scaffold( - appBar: AppBar( - title: const Text('Mi Cuota'), - centerTitle: true, - ), - bottomSheet: const GestionUHBottomSheet(), - drawer: DefaultDrawer(), - body: BlocConsumer( - listener: (context, state) {}, - builder: (context, state) { - if (state is QuotaLoadedSuccess) { - return RefreshIndicator( - onRefresh: () async { - context.read().add(QuotaInitialized()); - }, - child: Scrollbar( - child: ListView( - physics: const AlwaysScrollableScrollPhysics(), - children: [ - Center( - child: Container( - width: getValueForScreenType( - context: context, - mobile: MediaQuery.of(context).size.width, - tablet: MediaQuery.of(context).size.width * 0.5, - ), - padding: const EdgeInsets.only( - top: 30, - bottom: 9, - left: 18, - right: 18, - ), - child: Column( - mainAxisAlignment: MainAxisAlignment.center, - children: [ - Center( - child: QuotaGraph( - quota: state.quota, - ), - ), - ], - ), - ), - ), - ], - ), - ), - ); - } - if (state is QuotaLoadedFailure) { - return Scrollbar( - child: ListView( - children: [ - Center( - child: Container( - width: getValueForScreenType( - context: context, - mobile: MediaQuery.of(context).size.width, - tablet: MediaQuery.of(context).size.width * 0.5, - ), - padding: const EdgeInsets.only( - top: 30, - bottom: 9, - left: 18, - right: 18, - ), - child: Column( - mainAxisSize: MainAxisSize.min, - mainAxisAlignment: MainAxisAlignment.center, - children: [ - Text(state.error), - Padding( - padding: const EdgeInsets.all(5), - child: GestionUhDefaultButton( - text: 'Reintentar', - onPressed: () { - context.read().add( - QuotaInitialized(), - ); - }, - ), - ), - ], - ), - ), - ), - ], - ), - ); - } - return Center( - child: Column( - mainAxisAlignment: MainAxisAlignment.center, - children: const [ - GestionUhLoadingIndicator(), - ], - ), - ); - }, - ), - ); - } -} diff --git a/lib/src/presentation/pages/recover_password_page.dart b/lib/src/presentation/pages/recover_password_page.dart index a1a3e74..ca4aa1c 100644 --- a/lib/src/presentation/pages/recover_password_page.dart +++ b/lib/src/presentation/pages/recover_password_page.dart @@ -40,7 +40,7 @@ class RecoverPasswordPage extends StatelessWidget { children: [ Opacity( opacity: state is RecoverPasswordCILoading ? 1 : 0, - child: const CircularProgressIndicator(), + child: const GestionUhLoadingIndicator(), ), Container( padding: const EdgeInsets.only( diff --git a/lib/src/presentation/pages/reset_password_page.dart b/lib/src/presentation/pages/reset_password_page.dart deleted file mode 100644 index 35a9507..0000000 --- a/lib/src/presentation/pages/reset_password_page.dart +++ /dev/null @@ -1,171 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:flutter_bloc/flutter_bloc.dart'; -import 'package:gestionuh/src/presentation/blocs/reset_password_bloc/resetpassword_bloc.dart'; -import 'package:gestionuh/src/presentation/widgets/bottom_sheet.dart'; -import 'package:gestionuh/src/presentation/widgets/flash_helper.dart'; -import 'package:gestionuh/src/presentation/widgets/widgets.dart'; -import 'package:gestionuh/src/utils/validators.dart'; -import 'package:responsive_builder/responsive_builder.dart'; - -class ResetPasswordPage extends StatefulWidget { - const ResetPasswordPage({Key? key}) : super(key: key); - - @override - _ResetPasswordPageState createState() => _ResetPasswordPageState(); -} - -class _ResetPasswordPageState extends State { - final _passwordCurrentController = TextEditingController(); - final _passwordFirstController = TextEditingController(); - final _passwordSecondController = TextEditingController(); - final _formPasswordKey = GlobalKey(); - - @override - void dispose() { - _passwordFirstController.dispose(); - _passwordSecondController.dispose(); - super.dispose(); - } - - @override - Widget build(BuildContext context) { - return Scaffold( - appBar: AppBar( - title: const Text('Cambiar Contraseña'), - centerTitle: true, - ), - drawer: DefaultDrawer(), - bottomSheet: const GestionUHBottomSheet(), - body: BlocConsumer( - listener: (context, state) { - if (state is ResetPasswordInitial) { - FlashHelper.errorBar(context, message: state.error); - } - if (state is ResetPasswordSuccess) { - FlashHelper.successBar(context, - message: 'La contraseña ha sido actualizada correctamente.'); - } - }, - builder: (context, state) { - return SingleChildScrollView( - child: Center( - child: Container( - width: getValueForScreenType( - context: context, - mobile: MediaQuery.of(context).size.width, - tablet: MediaQuery.of(context).size.width * 0.5, - ), - padding: const EdgeInsets.only( - top: 30, bottom: 9, left: 18, right: 18), - child: Column( - mainAxisSize: MainAxisSize.min, - children: [ - // Hints Area - Padding( - padding: const EdgeInsets.symmetric(horizontal: 5.0), - child: RichText( - text: TextSpan( - style: Theme.of(context) - .textTheme - .bodyText1! - .copyWith(height: 1.4), - children: [ - TextSpan( - text: 'Su nueva contraseña debe tener:\n', - style: Theme.of(context).textTheme.headline6, - ), - ...const [ - '(1) Más de 8 caracteres.', - '(2) Al menos una minúscula.', - '(3) Al menos una mayúscula.', - '(4) Al menos un caracter especial, Ej. !\$@+.', - '(5) Al menos un número.', - ].map((e) => TextSpan(text: '$e\n')), - ]), - ), - ), - - // Password inputs - Form( - key: _formPasswordKey, - child: Column( - mainAxisSize: MainAxisSize.min, - children: [ - // Current password input - Padding( - padding: - const EdgeInsets.symmetric(vertical: 8.0), - child: GestionUhDefaultTextField( - labelText: 'Contraseña Actual', - hintText: '********', - controller: _passwordCurrentController, - validator: safetyPasswordValidator, - autovalidateMode: AutovalidateMode.disabled, - keyboardType: TextInputType.visiblePassword, - ), - ), - const SizedBox( - height: 30, - child: Divider( - color: Colors.black54, - )), - Padding( - padding: - const EdgeInsets.symmetric(vertical: 8.0), - child: GestionUhDefaultTextField( - labelText: 'Contraseña Nueva*', - hintText: '********', - controller: _passwordFirstController, - validator: safetyPasswordValidator, - autovalidateMode: AutovalidateMode.disabled, - keyboardType: TextInputType.visiblePassword, - ), - ), - - Padding( - padding: - const EdgeInsets.symmetric(vertical: 8.0), - child: GestionUhDefaultTextField( - labelText: 'Repetir Contraseña*', - hintText: '********', - controller: _passwordSecondController, - validator: safetyPasswordValidator, - autovalidateMode: AutovalidateMode.disabled, - keyboardType: TextInputType.visiblePassword, - ), - ), - ], - ), - ), - const SizedBox(height: 25), - GestionUhDefaultButton( - text: 'Actualizar Contraseña', - onPressed: state is ResetPasswordInProgress - ? null - : () => _resetPassword(context), - ), - const SizedBox(height: 30) - ], - ), - ), - ), - ); - }, - )); - } - - void _resetPassword(BuildContext context) { - if (_formPasswordKey.currentState!.validate()) { - final String currentPassword = _passwordCurrentController.text; - final String passwordFirst = _passwordFirstController.text; - final String passwordSecond = _passwordSecondController.text; - context.read().add( - ResetPasswordAttempted( - currentPassword: currentPassword, - passwordFirst: passwordFirst, - passwordSecond: passwordSecond, - ), - ); - } - } -} diff --git a/lib/src/presentation/widgets/drawers/default_drawer.dart b/lib/src/presentation/widgets/drawers/default_drawer.dart deleted file mode 100644 index fc08f42..0000000 --- a/lib/src/presentation/widgets/drawers/default_drawer.dart +++ /dev/null @@ -1,139 +0,0 @@ -import 'package:flutter/material.dart'; -import 'package:gestionuh/src/data/repositories/repositories.dart'; -import 'package:gestionuh/src/utils/constants/routes.dart'; -import 'package:get_it/get_it.dart'; - -class DefaultDrawer extends Drawer { - @override - Widget build(BuildContext context) { - final authRepo = GetIt.I(); - return Drawer( - key: key ?? UniqueKey(), - child: ListView( - children: [ - DrawerHeader( - child: Image.asset( - 'assets/images/logo-uh.png', - color: Theme.of(context).primaryColor, - ), - ), - _buildDrawerItem( - context: context, - text: 'Perfil', - icon: Icons.person, - onTap: () { - Navigator.of(context) - ..pop() - ..pushNamedAndRemoveUntil( - PROFILE_ROUTE_NAME, - (route) => false, - ); - }, - ), - _buildDrawerItem( - context: context, - text: 'Mi Cuota', - icon: Icons.data_usage, - onTap: () { - Navigator.of(context) - ..pop() - ..pushNamedAndRemoveUntil( - QUOTA_ROUTE_NAME, - (route) => false, - ); - }, - ), - _buildDrawerItem( - context: context, - text: 'Correo', - icon: Icons.mail, - onTap: () { - Navigator.of(context) - ..pop() - ..pushNamedAndRemoveUntil( - MAIL_ROUTE_NAME, - (route) => false, - ); - }), - _buildDrawerItem( - context: context, - text: 'Cambiar Contraseña', - icon: Icons.security_rounded, - onTap: () { - Navigator.of(context) - ..pop() - ..pushNamedAndRemoveUntil( - RESET_PASSWORD_ROUTE_NAME, - (route) => false, - ); - }, - ), - _buildDrawerItem( - context: context, - text: 'Cerrar Sesión', - icon: Icons.logout, - onTap: () async { - Navigator.of(context).pop(); - showDialog( - context: context, - builder: (context) { - return AlertDialog( - content: - const Text('¿Está seguro que desea cerrar sesión?'), - actions: [ - TextButton( - onPressed: () async { - await authRepo.logout(); - Navigator.of(context) - ..pop() - ..pushNamedAndRemoveUntil( - LOGIN_ROUTE_NAME, - (route) => false, - ); - }, - child: const Text('Si'), - ), - TextButton( - onPressed: () async { - Navigator.of(context).pop(); - }, - child: const Text('No'), - ), - ], - ); - }); - }, - ), - const Divider(), - _buildDrawerItem( - context: context, - text: 'Acerca de', - icon: Icons.info_outline_rounded, - onTap: () { - Navigator.of(context) - ..pop() - ..pushNamedAndRemoveUntil( - ABOUT_ROUTE_NAME, - (route) => false, - ); - }, - ), - ], - ), - ); - } - - Widget _buildDrawerItem( - {required BuildContext context, - required String text, - IconData? icon, - Function? onTap}) => - ListTile( - leading: Icon(icon), - title: Text( - text, - style: Theme.of(context).textTheme.subtitle2, - ), - onTap: onTap as void Function()?, - ); -} diff --git a/lib/src/presentation/widgets/drawers/drawers.dart b/lib/src/presentation/widgets/drawers/drawers.dart deleted file mode 100644 index 9746f93..0000000 --- a/lib/src/presentation/widgets/drawers/drawers.dart +++ /dev/null @@ -1 +0,0 @@ -export 'default_drawer.dart'; diff --git a/lib/src/presentation/widgets/flash_helper.dart b/lib/src/presentation/widgets/flash_helper.dart index 7f15398..3d7557c 100644 --- a/lib/src/presentation/widgets/flash_helper.dart +++ b/lib/src/presentation/widgets/flash_helper.dart @@ -5,8 +5,8 @@ import 'dart:ui'; import 'package:flash/flash.dart'; import 'package:flutter/material.dart'; import 'package:flutter/widgets.dart'; - import 'package:gestionuh/src/presentation/widgets/buttons/default_button.dart'; +import 'package:gestionuh/src/presentation/widgets/widgets.dart'; import 'package:gestionuh/src/utils/constants/messages.dart'; class _MessageItem { @@ -339,7 +339,7 @@ class FlashHelper { borderRadius: const BorderRadius.all(Radius.circular(8.0)), child: const Padding( padding: EdgeInsets.all(16.0), - child: CircularProgressIndicator(strokeWidth: 2.0), + child: GestionUhLoadingIndicator(strokeWidth: 2.0), ), ), ); diff --git a/lib/src/presentation/widgets/loading_indicators/circular_loading.dart b/lib/src/presentation/widgets/loading_indicators/circular_loading.dart index c4b8ca8..66a3632 100644 --- a/lib/src/presentation/widgets/loading_indicators/circular_loading.dart +++ b/lib/src/presentation/widgets/loading_indicators/circular_loading.dart @@ -1,11 +1,19 @@ import 'package:flutter/material.dart'; class GestionUhLoadingIndicator extends StatelessWidget { - const GestionUhLoadingIndicator({Key? key, this.color}) : super(key: key); final Color? color; + final double strokeWidth; + + const GestionUhLoadingIndicator({ + Key? key, + this.color, + this.strokeWidth = 4.0, + }) : super(key: key); + @override Widget build(BuildContext context) { return CircularProgressIndicator( + strokeWidth: strokeWidth, valueColor: AlwaysStoppedAnimation(color ?? Theme.of(context).primaryColor), ); diff --git a/lib/src/presentation/widgets/widgets.dart b/lib/src/presentation/widgets/widgets.dart index 44872e7..099c301 100644 --- a/lib/src/presentation/widgets/widgets.dart +++ b/lib/src/presentation/widgets/widgets.dart @@ -1,6 +1,5 @@ export 'bottom_sheet.dart'; export 'buttons/buttons.dart'; -export 'drawers/drawers.dart'; export 'loading_indicators/loading_indicators.dart'; export 'mail_quota_graph.dart'; export 'quota_graph.dart'; diff --git a/lib/src/router.dart b/lib/src/router.dart index a1b649e..81a7e4f 100644 --- a/lib/src/router.dart +++ b/lib/src/router.dart @@ -14,9 +14,9 @@ class RouterNavigation { final authRepo = GetIt.I(); if (authRepo.logged) { return _buildPage( - builder: BlocProvider( - create: (_) => GetIt.I()..add(QuotaInitialized()), - child: const QuotaPage(), + builder: BlocProvider( + create: (_) => GetIt.I()..add(const HomeEvent.loadProfile()), + child: HomePage(), ), settings: settings, ); @@ -28,38 +28,6 @@ class RouterNavigation { ), settings: settings, ); - case QUOTA_ROUTE_NAME: - return _buildPage( - builder: BlocProvider( - create: (_) => GetIt.I()..add(QuotaInitialized()), - child: const QuotaPage(), - ), - settings: settings, - ); - case PROFILE_ROUTE_NAME: - return _buildPage( - builder: BlocProvider( - create: (_) => GetIt.I()..add(ProfileInitialized()), - child: const ProfilePage(), - ), - settings: settings, - ); - case MAIL_ROUTE_NAME: - return _buildPage( - builder: BlocProvider( - create: (_) => GetIt.I()..add(MailQuotaInitialized()), - child: const MailQuotaPage(), - ), - settings: settings, - ); - case RESET_PASSWORD_ROUTE_NAME: - return _buildPage( - builder: BlocProvider( - create: (_) => GetIt.I(), - child: const ResetPasswordPage(), - ), - settings: settings, - ); case REGISTER_ROUTE_NAME: return _buildPage( builder: Overlay( @@ -74,11 +42,6 @@ class RouterNavigation { ), settings: settings, ); - case ABOUT_ROUTE_NAME: - return _buildPage( - builder: const AboutInformationPage(), - settings: settings, - ); case RECOVER_PASSWORD_ROUTE_NAME: return _buildPage( builder: BlocProvider( @@ -87,13 +50,14 @@ class RouterNavigation { ), settings: settings, ); + case HOME_ROUTE_NAME: default: final authRepo = GetIt.I(); if (authRepo.logged) { return _buildPage( - builder: BlocProvider( - create: (_) => GetIt.I()..add(ProfileInitialized()), - child: const ProfilePage(), + builder: BlocProvider( + create: (_) => GetIt.I()..add(const HomeEvent.loadProfile()), + child: HomePage(), ), settings: settings, ); diff --git a/lib/src/utils/constants/routes.dart b/lib/src/utils/constants/routes.dart index c1ace61..e5f5bae 100644 --- a/lib/src/utils/constants/routes.dart +++ b/lib/src/utils/constants/routes.dart @@ -1,8 +1,9 @@ const LOGIN_ROUTE_NAME = '/login'; const REGISTER_ROUTE_NAME = '/register'; -const QUOTA_ROUTE_NAME = '/quota'; -const PROFILE_ROUTE_NAME = '/profile'; -const MAIL_ROUTE_NAME = '/mail'; -const RESET_PASSWORD_ROUTE_NAME = '/reset-password'; -const ABOUT_ROUTE_NAME = '/about'; +const HOME_ROUTE_NAME = '/'; const RECOVER_PASSWORD_ROUTE_NAME = '/recover-password'; +// const QUOTA_ROUTE_NAME = '/quota'; +// const PROFILE_ROUTE_NAME = '/profile'; +// const MAIL_ROUTE_NAME = '/mail'; +// const RESET_PASSWORD_ROUTE_NAME = '/reset-password'; +// const ABOUT_ROUTE_NAME = '/about'; diff --git a/pubspec.lock b/pubspec.lock index e8fc127..2c32f35 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -7,14 +7,14 @@ packages: name: _fe_analyzer_shared url: "https://pub.dartlang.org" source: hosted - version: "20.0.0" + version: "21.0.0" analyzer: dependency: transitive description: name: analyzer url: "https://pub.dartlang.org" source: hosted - version: "1.4.0" + version: "1.5.0" archive: dependency: transitive description: @@ -56,56 +56,56 @@ packages: name: build url: "https://pub.dartlang.org" source: hosted - version: "2.0.0" + version: "2.0.1" build_config: dependency: transitive description: name: build_config url: "https://pub.dartlang.org" source: hosted - version: "0.4.7" + version: "1.0.0" build_daemon: dependency: transitive description: name: build_daemon url: "https://pub.dartlang.org" source: hosted - version: "2.1.7" + version: "3.0.0" build_resolvers: dependency: transitive description: name: build_resolvers url: "https://pub.dartlang.org" source: hosted - version: "2.0.0" + version: "2.0.1" build_runner: dependency: "direct dev" description: name: build_runner url: "https://pub.dartlang.org" source: hosted - version: "1.12.2" + version: "2.0.1" build_runner_core: dependency: transitive description: name: build_runner_core url: "https://pub.dartlang.org" source: hosted - version: "6.1.12" + version: "7.0.0" built_collection: dependency: transitive description: name: built_collection url: "https://pub.dartlang.org" source: hosted - version: "4.3.2" + version: "5.0.0" built_value: dependency: transitive description: name: built_value url: "https://pub.dartlang.org" source: hosted - version: "7.1.0" + version: "8.0.5" characters: dependency: transitive description: @@ -147,7 +147,7 @@ packages: name: code_builder url: "https://pub.dartlang.org" source: hosted - version: "3.6.0" + version: "4.0.0" collection: dependency: "direct main" description: @@ -224,7 +224,7 @@ packages: name: fixnum url: "https://pub.dartlang.org" source: hosted - version: "0.10.11" + version: "1.0.0" fl_chart: dependency: "direct main" description: @@ -264,7 +264,7 @@ packages: name: flutter_native_splash url: "https://pub.dartlang.org" source: hosted - version: "1.1.7+1" + version: "1.1.8+4" flutter_secure_storage: dependency: "direct main" description: @@ -282,13 +282,27 @@ packages: description: flutter source: sdk version: "0.0.0" + freezed: + dependency: "direct dev" + description: + name: freezed + url: "https://pub.dartlang.org" + source: hosted + version: "0.14.1+3" + freezed_annotation: + dependency: "direct main" + description: + name: freezed_annotation + url: "https://pub.dartlang.org" + source: hosted + version: "0.14.1" get_it: dependency: "direct main" description: name: get_it url: "https://pub.dartlang.org" source: hosted - version: "6.0.0" + version: "6.1.1" glob: dependency: transitive description: @@ -302,7 +316,7 @@ packages: name: graphs url: "https://pub.dartlang.org" source: hosted - version: "1.0.0" + version: "2.0.0" http: dependency: transitive description: @@ -316,7 +330,7 @@ packages: name: http_multi_server url: "https://pub.dartlang.org" source: hosted - version: "2.2.0" + version: "3.0.1" http_parser: dependency: transitive description: @@ -337,7 +351,7 @@ packages: name: io url: "https://pub.dartlang.org" source: hosted - version: "0.3.4" + version: "1.0.0" js: dependency: transitive description: @@ -358,7 +372,7 @@ packages: name: json_serializable url: "https://pub.dartlang.org" source: hosted - version: "4.1.0" + version: "4.1.1" lint: dependency: "direct dev" description: @@ -393,7 +407,7 @@ packages: name: mime url: "https://pub.dartlang.org" source: hosted - version: "0.9.7" + version: "1.0.0" nested: dependency: transitive description: @@ -428,7 +442,7 @@ packages: name: package_info_plus_macos url: "https://pub.dartlang.org" source: hosted - version: "1.0.0" + version: "1.1.0" package_info_plus_platform_interface: dependency: transitive description: @@ -484,7 +498,7 @@ packages: name: path_provider_windows url: "https://pub.dartlang.org" source: hosted - version: "2.0.0" + version: "2.0.1" pedantic: dependency: transitive description: @@ -548,13 +562,6 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "1.0.0" - quiver: - dependency: transitive - description: - name: quiver - url: "https://pub.dartlang.org" - source: hosted - version: "2.1.5" responsive_builder: dependency: "direct main" description: @@ -610,14 +617,14 @@ packages: name: shelf url: "https://pub.dartlang.org" source: hosted - version: "1.1.0" + version: "1.1.1" shelf_web_socket: dependency: transitive description: name: shelf_web_socket url: "https://pub.dartlang.org" source: hosted - version: "0.2.4+1" + version: "1.0.1" sky_engine: dependency: transitive description: flutter @@ -685,7 +692,7 @@ packages: name: timing url: "https://pub.dartlang.org" source: hosted - version: "0.1.1+3" + version: "1.0.0" typed_data: dependency: transitive description: @@ -693,6 +700,13 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "1.3.0" + universal_io: + dependency: transitive + description: + name: universal_io + url: "https://pub.dartlang.org" + source: hosted + version: "2.0.4" url_launcher: dependency: "direct main" description: @@ -755,7 +769,7 @@ packages: name: web_socket_channel url: "https://pub.dartlang.org" source: hosted - version: "1.2.0" + version: "2.0.0" win32: dependency: transitive description: diff --git a/pubspec.yaml b/pubspec.yaml index e15cfd0..b8b4d72 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -20,7 +20,8 @@ dependencies: flutter_secure_storage: ^4.1.0 flutter_web_plugins: sdk: flutter - get_it: ^6.0.0 + freezed_annotation: ^0.14.1 + get_it: ^6.1.1 json_annotation: ^4.0.1 package_info_plus: ^1.0.0 page_transition: ^2.0.1-nullsafety.0 @@ -29,12 +30,13 @@ dependencies: url_launcher: ^6.0.3 dev_dependencies: - build_runner: ^1.12.2 + build_runner: ^2.0.1 flutter_launcher_icons: ^0.9.0 - flutter_native_splash: ^1.1.7+1 + flutter_native_splash: ^1.1.8+4 flutter_test: sdk: flutter - json_serializable: ^4.1.0 + freezed: ^0.14.1+3 + json_serializable: ^4.1.1 lint: ^1.5.3 flutter: From 64484d151bd9927397e95e023cb8aa48b682d812 Mon Sep 17 00:00:00 2001 From: leynier Date: Sat, 24 Apr 2021 21:07:40 -0400 Subject: [PATCH 46/59] Use chart syncfusion package --- .../widgets/mail_quota_graph.dart | 98 ++++++++++++------- lib/src/presentation/widgets/quota_graph.dart | 61 +++++------- pubspec.lock | 35 ++++--- pubspec.yaml | 2 +- 4 files changed, 113 insertions(+), 83 deletions(-) diff --git a/lib/src/presentation/widgets/mail_quota_graph.dart b/lib/src/presentation/widgets/mail_quota_graph.dart index 4be8563..b36dfeb 100644 --- a/lib/src/presentation/widgets/mail_quota_graph.dart +++ b/lib/src/presentation/widgets/mail_quota_graph.dart @@ -1,8 +1,8 @@ import 'dart:math'; -import 'package:fl_chart/fl_chart.dart'; import 'package:flutter/material.dart'; import 'package:gestionuh/src/data/models/models.dart'; +import 'package:syncfusion_flutter_charts/charts.dart'; class MailQuotaGraph extends StatelessWidget { final MailQuota quota; @@ -40,43 +40,73 @@ class MailQuotaGraph extends StatelessWidget { mainAxisAlignment: MainAxisAlignment.center, mainAxisSize: MainAxisSize.min, children: [ - Text( - 'Consumo (en MB)', - style: Theme.of(context).textTheme.subtitle2, - ), + // Text( + // 'Consumo (en MB)', + // style: Theme.of(context).textTheme.subtitle2, + // ), + // Container( + // margin: const EdgeInsets.all(20), + // height: 250, + // child: PieChart( + // PieChartData( + // borderData: FlBorderData(show: false), + // sections: data + // .where((x) => x.cant != 0) + // .map((item) => PieChartSectionData( + // radius: 50, + // color: item.color, + // value: item.cant.toDouble(), + // showTitle: false, + // )) + // .toList(), + // ), + // ), + // ), + // for (var item in data) + // ListTile( + // leading: Icon( + // Icons.circle, + // color: item.color, + // ), + // title: Text( + // item.title, + // style: Theme.of(context).textTheme.subtitle2, + // ), + // trailing: Text( + // '${item.cant} MB', + // style: Theme.of(context).textTheme.subtitle2, + // ), + // ), Container( - margin: const EdgeInsets.all(20), - height: 250, - child: PieChart( - PieChartData( - borderData: FlBorderData(show: false), - sections: data - .where((x) => x.cant != 0) - .map((item) => PieChartSectionData( - radius: 50, - color: item.color, - value: item.cant.toDouble(), - showTitle: false, - )) - .toList(), - ), - ), - ), - for (var item in data) - ListTile( - leading: Icon( - Icons.circle, - color: item.color, - ), - title: Text( - item.title, - style: Theme.of(context).textTheme.subtitle2, + margin: const EdgeInsets.symmetric(horizontal: 20), + height: MediaQuery.of(context).size.height * 0.65, + child: SfCircularChart( + title: ChartTitle( + text: 'Consumo (en MB)', + textStyle: Theme.of(context).textTheme.subtitle2, ), - trailing: Text( - '${item.cant} MB', - style: Theme.of(context).textTheme.subtitle2, + legend: Legend( + isVisible: true, + overflowMode: LegendItemOverflowMode.wrap, + position: LegendPosition.bottom, + textStyle: Theme.of(context).textTheme.subtitle2, ), + tooltipBehavior: TooltipBehavior(enable: true), + series: [ + DoughnutSeries( + dataSource: data, + xValueMapper: (data, _) => data.title, + yValueMapper: (data, _) => data.cant, + pointColorMapper: (data, _) => data.color, + dataLabelSettings: DataLabelSettings( + isVisible: true, + labelPosition: ChartDataLabelPosition.outside, + useSeriesColor: true, + ), + ), + ], ), + ), ], ); } diff --git a/lib/src/presentation/widgets/quota_graph.dart b/lib/src/presentation/widgets/quota_graph.dart index 8d5949a..81281a4 100644 --- a/lib/src/presentation/widgets/quota_graph.dart +++ b/lib/src/presentation/widgets/quota_graph.dart @@ -1,8 +1,8 @@ import 'dart:math'; -import 'package:fl_chart/fl_chart.dart'; import 'package:flutter/material.dart'; import 'package:gestionuh/src/data/models/models.dart'; +import 'package:syncfusion_flutter_charts/charts.dart'; class QuotaGraph extends StatelessWidget { final Quota quota; @@ -50,43 +50,36 @@ class QuotaGraph extends StatelessWidget { mainAxisAlignment: MainAxisAlignment.center, mainAxisSize: MainAxisSize.min, children: [ - Text( - 'Consumo (en MB)', - style: Theme.of(context).textTheme.subtitle2, - ), Container( - margin: const EdgeInsets.all(20), - height: 250, - child: PieChart( - PieChartData( - borderData: FlBorderData(show: false), - sections: data - .where((x) => x.cant != 0) - .map((item) => PieChartSectionData( - radius: 50, - color: item.color, - value: item.cant.toDouble(), - showTitle: false, - )) - .toList(), - ), - ), - ), - for (var item in data) - ListTile( - leading: Icon( - Icons.circle, - color: item.color, - ), - title: Text( - item.title, - style: Theme.of(context).textTheme.subtitle2, + margin: const EdgeInsets.symmetric(horizontal: 20), + height: MediaQuery.of(context).size.height * 0.65, + child: SfCircularChart( + title: ChartTitle( + text: 'Consumo (en MB)', + textStyle: Theme.of(context).textTheme.subtitle2, ), - trailing: Text( - '${item.cant} MB', - style: Theme.of(context).textTheme.subtitle2, + legend: Legend( + isVisible: true, + overflowMode: LegendItemOverflowMode.wrap, + position: LegendPosition.bottom, + textStyle: Theme.of(context).textTheme.subtitle2, ), + tooltipBehavior: TooltipBehavior(enable: true), + series: [ + DoughnutSeries( + dataSource: data, + xValueMapper: (data, _) => data.title, + yValueMapper: (data, _) => data.cant, + pointColorMapper: (data, _) => data.color, + dataLabelSettings: DataLabelSettings( + isVisible: true, + labelPosition: ChartDataLabelPosition.outside, + useSeriesColor: true, + ), + ), + ], ), + ), ], ); } diff --git a/pubspec.lock b/pubspec.lock index 2c32f35..6d232db 100644 --- a/pubspec.lock +++ b/pubspec.lock @@ -190,13 +190,6 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "4.0.0" - equatable: - dependency: transitive - description: - name: equatable - url: "https://pub.dartlang.org" - source: hosted - version: "2.0.0" fake_async: dependency: transitive description: @@ -225,13 +218,6 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "1.0.0" - fl_chart: - dependency: "direct main" - description: - name: fl_chart - url: "https://pub.dartlang.org" - source: hosted - version: "0.35.0" flash: dependency: "direct main" description: @@ -345,6 +331,13 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "3.0.2" + intl: + dependency: transitive + description: + name: intl + url: "https://pub.dartlang.org" + source: hosted + version: "0.17.0" io: dependency: transitive description: @@ -672,6 +665,20 @@ packages: url: "https://pub.dartlang.org" source: hosted version: "1.1.0" + syncfusion_flutter_charts: + dependency: "direct main" + description: + name: syncfusion_flutter_charts + url: "https://pub.dartlang.org" + source: hosted + version: "19.1.57+1" + syncfusion_flutter_core: + dependency: transitive + description: + name: syncfusion_flutter_core + url: "https://pub.dartlang.org" + source: hosted + version: "19.1.57+1" term_glyph: dependency: transitive description: diff --git a/pubspec.yaml b/pubspec.yaml index b8b4d72..c29625d 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -12,7 +12,6 @@ dependencies: collection: ^1.15.0-nullsafety.4 cupertino_icons: ^1.0.2 dio: ^4.0.0 - fl_chart: ^0.35.0 flash: ^1.5.1 flutter: sdk: flutter @@ -27,6 +26,7 @@ dependencies: page_transition: ^2.0.1-nullsafety.0 responsive_builder: ^0.4.1 shared_preferences: ^2.0.5 + syncfusion_flutter_charts: ^19.1.57+1 url_launcher: ^6.0.3 dev_dependencies: From 29f7facf0ee3d43fe882f391fb07754984eb93c1 Mon Sep 17 00:00:00 2001 From: leynier Date: Sat, 24 Apr 2021 21:09:15 -0400 Subject: [PATCH 47/59] Fix action --- .github/workflows/deploy.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index 153a0fd..73d1f98 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -1,7 +1,7 @@ name: deploy on: push: - branches: [ main ] + branches: [ master ] jobs: deploy: runs-on: ubuntu-latest From b6e0eec0b7c830ece7dadccffd3234204495ba77 Mon Sep 17 00:00:00 2001 From: leynier Date: Sat, 24 Apr 2021 21:39:19 -0400 Subject: [PATCH 48/59] Improve web --- assets/images/{ico.png => icon.png} | Bin pubspec.yaml | 4 ++-- web/favicon.png | Bin 917 -> 2161 bytes web/icons/Icon-192.png | Bin 5292 -> 17014 bytes web/icons/Icon-512.png | Bin 8252 -> 73801 bytes web/index.html | 4 ++-- web/manifest.json | 6 +++--- 7 files changed, 7 insertions(+), 7 deletions(-) rename assets/images/{ico.png => icon.png} (100%) diff --git a/assets/images/ico.png b/assets/images/icon.png similarity index 100% rename from assets/images/ico.png rename to assets/images/icon.png diff --git a/pubspec.yaml b/pubspec.yaml index c29625d..b71de02 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -1,5 +1,5 @@ name: gestionuh -description: A UH managment app +description: Aplicación para la gestión electrónica en la Universidad de La Habana. publish_to: 'none' @@ -52,4 +52,4 @@ flutter_native_splash: flutter_icons: android: 'launcher_icon' ios: true - image_path: 'assets/images/ico.png' + image_path: 'assets/images/icon.png' diff --git a/web/favicon.png b/web/favicon.png index 8aaa46ac1ae21512746f852a42ba87e4165dfdd1..f6bd1219378e840a6c6f85932df48aa8dd8793e2 100644 GIT binary patch literal 2161 zcmbVN2~ZPP7~T*CM6IzRDz$aH3>txClO=>?H5?KY)F8&Fc(X}1$qLEF-6aXMfKjMN zmEuvwPPNo3W1ZF$tF6eTFdisU>RD?K6?JrKJ1t(-+P56BbnJ9$W?uHaec${4|NH*; z|GOeRZ9@N`&>#qc`lqI7_24PuN1z}0FI{6(LXco2m6Vj8Xr_%Mte-Fr7R%LY)o2J3 zH=8muF(BwI(N3gpTw|XgWAHH%EIbuf2djS_1+jTu4&swFX4SfD12rp zD*NC~;nKx%!lTt{sJ3y+(_y%BE)cGdGi4SFLDDdO2t3>4T@ciJ0Ax-3ibTG&bJjBurT(2OCK%<&gTgUkd+{3qCK!YwpoCjcqRPFP9Q>98WOPbxf#&ZZgQ7(^G{5rs~Nr#e`U zaG1zctp))Uq!eYwV-*;oAcu$FR7R2 z-)YosBSHRqCc8%lJ7Fws;oJm6CR%}3-Ay39`;Nm&Nqo_(Vew4LVW!>e=g zLH|J!6!1a$O6{bE{*!gb-ruUa8xC3pKlSw}u<&&`(g92}pog`URfK{s%=uJpqCwoe zdCi>n)};p*KYBJLZrBK}aiP(Ot+O>|;UznoY?HVdbGUm$!|K zyLGZ4^Tyln<|xz8#jkwaoG>GM@TlpV4Oxw+H@wkOFz3=lqyCNFiizFM?CTvP;QEI6^~!x?utd|1{_{PlKq;x|X@OIV5wx>j8gv2$zXmMy>M z9m%^Lb*f%g)p~u-tit*oPfmucN@=Km?bz^@A+9I;KAG3=-p0#UWapu2EofbwOO$&2 zK-F392^{#7n5%+5TlhHioz?CHVd{)u}*_uKm(%{VmUH_=xi{UCVpoe=?3 nRpSG17Y-aQD6ME;_P9@>f87K9{6w1-YpuiFRB*htwm1PQB{s;uvBfSQ~8XFYPE$TU~Bf-|Ujab*Q~T$;0!Zf(o~? z*NPQ|y)Qm73;1fyTGBg3ZRH_;kC|4kOlBPJ6E5s<*d!3N~#4+N8)@g!}0h zd)vblqv;6;mfjayzb=(!o@({|^}i-8iOSSk63gg$^w~U%51F~g95{21&8%m#c*|cY zpBuIR&&6Zcrn>CA)ajM7;ce7ER!>+`Y1Dd#*Z@Vr?;Q#_qLi#Mc<3I-Cn#RyEm-FaEn#u3Fc*~ymeCTbuE`F zMUQq%dwA6sJ~J%ie(h12cfPw`=*Z5aF541imh1I(oSi$7g)PCu<g-1UqMMsj8= TBB%EN6DfnItDnm{r-UW|NoFMt diff --git a/web/icons/Icon-192.png b/web/icons/Icon-192.png index b749bfef07473333cf1dd31e9eed89862a5d52aa..10b34bcb612084c94811e9e5997ff9ce73426ac2 100644 GIT binary patch literal 17014 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Μ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 LD@%QpFbVx{Tva?1 literal 5292 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 diff --git a/web/icons/Icon-512.png b/web/icons/Icon-512.png index 88cfd48dff1169879ba46840804b412fe02fefd6..7c9839b4d6f6558c47f6395e56822815233b97a8 100644 GIT binary patch literal 73801 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

5pVsdJpQANGerw<#ykY+{8|M;$%NLSUkw|8Ut@ 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

l1)s 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 literal 8252 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 diff --git a/web/index.html b/web/index.html index 4b34acf..9ea947a 100644 --- a/web/index.html +++ b/web/index.html @@ -15,7 +15,7 @@ - + @@ -26,7 +26,7 @@ - gestionapp + Gestión UH diff --git a/web/manifest.json b/web/manifest.json index 0bdb7cb..28304ad 100644 --- a/web/manifest.json +++ b/web/manifest.json @@ -3,9 +3,9 @@ "short_name": "Gestión UH", "start_url": ".", "display": "standalone", - "background_color": "#2EAADC", - "theme_color": "#2EAADC", - "description": "Una aplicación para la gestión de variadas cosas en la UH.", + "background_color": "#ffffff", + "theme_color": "#ffffff", + "description": "Aplicación para la gestión electrónica en la Universidad de La Habana.", "orientation": "portrait-primary", "prefer_related_applications": false, "icons": [ From 3d0930038387e289cd66f2132d68fe6a7ac17919 Mon Sep 17 00:00:00 2001 From: Leonel Garcia Date: Sat, 24 Apr 2021 22:05:46 -0400 Subject: [PATCH 49/59] Improve Register page state handling --- lib/src/presentation/pages/register_page.dart | 63 +++++++++---------- 1 file changed, 29 insertions(+), 34 deletions(-) diff --git a/lib/src/presentation/pages/register_page.dart b/lib/src/presentation/pages/register_page.dart index fbe95c1..c4fe3ab 100644 --- a/lib/src/presentation/pages/register_page.dart +++ b/lib/src/presentation/pages/register_page.dart @@ -23,9 +23,10 @@ class _RegisterPageState extends State { late bool termsAccepted; late List answersTextControllers; - TextEditingController ciController = TextEditingController(); - TextEditingController passwordFirstController = TextEditingController(); - TextEditingController passwordSecondController = TextEditingController(); + final TextEditingController ciController = TextEditingController(); + final TextEditingController passwordFirstController = TextEditingController(); + final TextEditingController passwordSecondController = + TextEditingController(); final _formKey = GlobalKey(); @override @@ -113,7 +114,7 @@ class _RegisterPageState extends State { registrationFailure: (error) { FlashHelper.errorBar(context, message: error); }, - registrationSuccess: (String email) { + registrationSuccess: (_) { FlashHelper.successBar(context, message: 'El usuario fue registrado correctamente.'); }, @@ -121,38 +122,32 @@ class _RegisterPageState extends State { ); }, builder: (context, state) { - return state.map( - initial: (_state) => _buildRegisterFormPage(context, _state), - initialLoadInProgress: (_state) => - _buildRegisterFormPage(context, _state), - initialLoadFailure: (_state) => - _buildRegisterFormPage(context, _state), - initialLoadSuccess: (_state) { - if (questions.isEmpty) { - int i = 0; - questions = _state.questions - .map((e) => Pair(first: e, second: i++)) - .toList(); - questionsTaken = List.filled(questions.length, -1); - } - return _buildRegisterFormPage( - context, - _state, - ); - }, - registrationInProgress: (_state) => - _buildRegisterFormPage(context, _state), - registrationFailure: (_state) => - _buildRegisterFormPage(context, _state), - registrationSuccess: (_state) => - _buildRegisterSuccessPage(context, _state), + return state.maybeWhen( + initialLoadSuccess: (List loadedQuestions) => + _buildRegisterFormPageAndLoadQuestion(context, loadedQuestions), + registrationSuccess: (String userEmail) => + _buildRegisterSuccessPage(context, userEmail), + orElse: () => _buildRegisterFormPage(context), ); }, ), ); } - Widget _buildRegisterFormPage(BuildContext context, state) { + Widget _buildRegisterFormPageAndLoadQuestion( + BuildContext context, + List loadedQuestions, + ) { + if (questions.isEmpty) { + int i = 0; + questions = + loadedQuestions.map((e) => Pair(first: e, second: i++)).toList(); + questionsTaken = List.filled(questions.length, -1); + } + return _buildRegisterFormPage(context); + } + + Widget _buildRegisterFormPage(BuildContext context) { final TextStyle headlineTextsTheme = Theme.of(context) .textTheme .headline6! @@ -232,7 +227,7 @@ class _RegisterPageState extends State { final childrenQuest = []; const length = NUMBER_OF_SECURITY_QUESTIONS_NEEDED; for (int i = 0; i < length; i++) { - childrenQuest.add(buildQuestionZone(i)); + childrenQuest.add(_buildQuestionZone(i)); } return Column( crossAxisAlignment: CrossAxisAlignment.stretch, @@ -270,7 +265,7 @@ class _RegisterPageState extends State { ); } - Widget _buildRegisterSuccessPage(BuildContext context, state) { + Widget _buildRegisterSuccessPage(BuildContext context, String userEmail) { return Container( margin: const EdgeInsets.all(30), child: Column( @@ -286,7 +281,7 @@ class _RegisterPageState extends State { 'su correo es ', ), TextSpan( - text: '"${state.userEmail}"', + text: '"$userEmail"', style: Theme.of(context) .textTheme .subtitle1 @@ -308,7 +303,7 @@ class _RegisterPageState extends State { ); } - Widget buildQuestionZone(int index) { + Widget _buildQuestionZone(int index) { final TextStyle headlineTextsTheme = Theme.of(context) .textTheme .headline6! From 4fa24230f72c0997085a4b932be78abc6a9cd82f Mon Sep 17 00:00:00 2001 From: Leonel Garcia Date: Sat, 24 Apr 2021 23:01:24 -0400 Subject: [PATCH 50/59] Mail Quota bloc changed to freezed way --- .../repositories/mail_quota_repository.dart | 3 +- .../blocs/home_bloc/home_bloc.freezed.dart | 179 ++++- .../mail_quota_bloc/mail_quota_bloc.dart | 28 +- .../mail_quota_bloc.freezed.dart | 674 ++++++++++++++++++ .../mail_quota_bloc/mail_quota_event.dart | 7 +- .../mail_quota_bloc/mail_quota_state.dart | 28 +- .../pages/home_page/home_page.dart | 3 +- .../home_page/sub_pages/mail_quotas_page.dart | 175 ++--- 8 files changed, 946 insertions(+), 151 deletions(-) create mode 100644 lib/src/presentation/blocs/mail_quota_bloc/mail_quota_bloc.freezed.dart diff --git a/lib/src/data/repositories/mail_quota_repository.dart b/lib/src/data/repositories/mail_quota_repository.dart index 6a4caec..ab3a876 100644 --- a/lib/src/data/repositories/mail_quota_repository.dart +++ b/lib/src/data/repositories/mail_quota_repository.dart @@ -2,6 +2,7 @@ import 'dart:developer'; import 'package:gestionuh/src/data/api/api.dart'; import 'package:gestionuh/src/data/models/models.dart'; +import 'package:gestionuh/src/utils/constants/constants.dart'; class MailQuotasRepository { final GestionApi api; @@ -21,6 +22,6 @@ class MailQuotasRepository { } catch (e) { log(e.toString()); } - return null; + return MailQuota()..error = Errors.DefaultError; } } diff --git a/lib/src/presentation/blocs/home_bloc/home_bloc.freezed.dart b/lib/src/presentation/blocs/home_bloc/home_bloc.freezed.dart index 182fd03..ae92827 100644 --- a/lib/src/presentation/blocs/home_bloc/home_bloc.freezed.dart +++ b/lib/src/presentation/blocs/home_bloc/home_bloc.freezed.dart @@ -143,14 +143,20 @@ class __$LoadProfileCopyWithImpl<$Res> extends _$HomeEventCopyWithImpl<$Res> /// @nodoc -class _$_LoadProfile implements _LoadProfile { +class _$_LoadProfile with DiagnosticableTreeMixin implements _LoadProfile { const _$_LoadProfile(); @override - String toString() { + String toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) { return 'HomeEvent.loadProfile()'; } + @override + void debugFillProperties(DiagnosticPropertiesBuilder properties) { + super.debugFillProperties(properties); + properties..add(DiagnosticsProperty('type', 'HomeEvent.loadProfile')); + } + @override bool operator ==(dynamic other) { return identical(this, other) || (other is _LoadProfile); @@ -248,14 +254,20 @@ class __$SendLogoutCopyWithImpl<$Res> extends _$HomeEventCopyWithImpl<$Res> /// @nodoc -class _$_SendLogout implements _SendLogout { +class _$_SendLogout with DiagnosticableTreeMixin implements _SendLogout { const _$_SendLogout(); @override - String toString() { + String toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) { return 'HomeEvent.logout()'; } + @override + void debugFillProperties(DiagnosticPropertiesBuilder properties) { + super.debugFillProperties(properties); + properties..add(DiagnosticsProperty('type', 'HomeEvent.logout')); + } + @override bool operator ==(dynamic other) { return identical(this, other) || (other is _SendLogout); @@ -366,17 +378,25 @@ class __$GoToProfileCopyWithImpl<$Res> extends _$HomeEventCopyWithImpl<$Res> /// @nodoc -class _$_GoToProfile implements _GoToProfile { +class _$_GoToProfile with DiagnosticableTreeMixin implements _GoToProfile { const _$_GoToProfile(this.profile); @override final UserData profile; @override - String toString() { + String toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) { return 'HomeEvent.goToProfile(profile: $profile)'; } + @override + void debugFillProperties(DiagnosticPropertiesBuilder properties) { + super.debugFillProperties(properties); + properties + ..add(DiagnosticsProperty('type', 'HomeEvent.goToProfile')) + ..add(DiagnosticsProperty('profile', profile)); + } + @override bool operator ==(dynamic other) { return identical(this, other) || @@ -500,17 +520,25 @@ class __$GoToQuotaCopyWithImpl<$Res> extends _$HomeEventCopyWithImpl<$Res> /// @nodoc -class _$_GoToQuota implements _GoToQuota { +class _$_GoToQuota with DiagnosticableTreeMixin implements _GoToQuota { const _$_GoToQuota(this.profile); @override final UserData profile; @override - String toString() { + String toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) { return 'HomeEvent.goToQuota(profile: $profile)'; } + @override + void debugFillProperties(DiagnosticPropertiesBuilder properties) { + super.debugFillProperties(properties); + properties + ..add(DiagnosticsProperty('type', 'HomeEvent.goToQuota')) + ..add(DiagnosticsProperty('profile', profile)); + } + @override bool operator ==(dynamic other) { return identical(this, other) || @@ -635,17 +663,25 @@ class __$GoToMailQuotaCopyWithImpl<$Res> extends _$HomeEventCopyWithImpl<$Res> /// @nodoc -class _$_GoToMailQuota implements _GoToMailQuota { +class _$_GoToMailQuota with DiagnosticableTreeMixin implements _GoToMailQuota { const _$_GoToMailQuota(this.profile); @override final UserData profile; @override - String toString() { + String toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) { return 'HomeEvent.goToMailQuota(profile: $profile)'; } + @override + void debugFillProperties(DiagnosticPropertiesBuilder properties) { + super.debugFillProperties(properties); + properties + ..add(DiagnosticsProperty('type', 'HomeEvent.goToMailQuota')) + ..add(DiagnosticsProperty('profile', profile)); + } + @override bool operator ==(dynamic other) { return identical(this, other) || @@ -771,17 +807,27 @@ class __$GoToResetPasswordCopyWithImpl<$Res> /// @nodoc -class _$_GoToResetPassword implements _GoToResetPassword { +class _$_GoToResetPassword + with DiagnosticableTreeMixin + implements _GoToResetPassword { const _$_GoToResetPassword(this.profile); @override final UserData profile; @override - String toString() { + String toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) { return 'HomeEvent.goToResetPassword(profile: $profile)'; } + @override + void debugFillProperties(DiagnosticPropertiesBuilder properties) { + super.debugFillProperties(properties); + properties + ..add(DiagnosticsProperty('type', 'HomeEvent.goToResetPassword')) + ..add(DiagnosticsProperty('profile', profile)); + } + @override bool operator ==(dynamic other) { return identical(this, other) || @@ -906,17 +952,25 @@ class __$GoToAboutUsCopyWithImpl<$Res> extends _$HomeEventCopyWithImpl<$Res> /// @nodoc -class _$_GoToAboutUs implements _GoToAboutUs { +class _$_GoToAboutUs with DiagnosticableTreeMixin implements _GoToAboutUs { const _$_GoToAboutUs(this.profile); @override final UserData profile; @override - String toString() { + String toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) { return 'HomeEvent.goToAboutUs(profile: $profile)'; } + @override + void debugFillProperties(DiagnosticPropertiesBuilder properties) { + super.debugFillProperties(properties); + properties + ..add(DiagnosticsProperty('type', 'HomeEvent.goToAboutUs')) + ..add(DiagnosticsProperty('profile', profile)); + } + @override bool operator ==(dynamic other) { return identical(this, other) || @@ -1156,14 +1210,20 @@ class __$LoadingCopyWithImpl<$Res> extends _$HomeStateCopyWithImpl<$Res> /// @nodoc -class _$_Loading implements _Loading { +class _$_Loading with DiagnosticableTreeMixin implements _Loading { const _$_Loading(); @override - String toString() { + String toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) { return 'HomeState.loading()'; } + @override + void debugFillProperties(DiagnosticPropertiesBuilder properties) { + super.debugFillProperties(properties); + properties..add(DiagnosticsProperty('type', 'HomeState.loading')); + } + @override bool operator ==(dynamic other) { return identical(this, other) || (other is _Loading); @@ -1280,17 +1340,25 @@ class __$ErrorCopyWithImpl<$Res> extends _$HomeStateCopyWithImpl<$Res> /// @nodoc -class _$_Error implements _Error { +class _$_Error with DiagnosticableTreeMixin implements _Error { const _$_Error(this.message); @override final String message; @override - String toString() { + String toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) { return 'HomeState.error(message: $message)'; } + @override + void debugFillProperties(DiagnosticPropertiesBuilder properties) { + super.debugFillProperties(properties); + properties + ..add(DiagnosticsProperty('type', 'HomeState.error')) + ..add(DiagnosticsProperty('message', message)); + } + @override bool operator ==(dynamic other) { return identical(this, other) || @@ -1407,14 +1475,20 @@ class __$LogoutCopyWithImpl<$Res> extends _$HomeStateCopyWithImpl<$Res> /// @nodoc -class _$_Logout implements _Logout { +class _$_Logout with DiagnosticableTreeMixin implements _Logout { const _$_Logout(); @override - String toString() { + String toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) { return 'HomeState.logout()'; } + @override + void debugFillProperties(DiagnosticPropertiesBuilder properties) { + super.debugFillProperties(properties); + properties..add(DiagnosticsProperty('type', 'HomeState.logout')); + } + @override bool operator ==(dynamic other) { return identical(this, other) || (other is _Logout); @@ -1536,7 +1610,7 @@ class __$ProfileCopyWithImpl<$Res> extends _$HomeStateCopyWithImpl<$Res> /// @nodoc -class _$_Profile implements _Profile { +class _$_Profile with DiagnosticableTreeMixin implements _Profile { const _$_Profile(this.profile, this.items); @override @@ -1545,10 +1619,19 @@ class _$_Profile implements _Profile { final List items; @override - String toString() { + String toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) { return 'HomeState.profile(profile: $profile, items: $items)'; } + @override + void debugFillProperties(DiagnosticPropertiesBuilder properties) { + super.debugFillProperties(properties); + properties + ..add(DiagnosticsProperty('type', 'HomeState.profile')) + ..add(DiagnosticsProperty('profile', profile)) + ..add(DiagnosticsProperty('items', items)); + } + @override bool operator ==(dynamic other) { return identical(this, other) || @@ -1691,7 +1774,7 @@ class __$QuotaCopyWithImpl<$Res> extends _$HomeStateCopyWithImpl<$Res> /// @nodoc -class _$_Quota implements _Quota { +class _$_Quota with DiagnosticableTreeMixin implements _Quota { const _$_Quota(this.profile, this.items); @override @@ -1700,10 +1783,19 @@ class _$_Quota implements _Quota { final List items; @override - String toString() { + String toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) { return 'HomeState.quota(profile: $profile, items: $items)'; } + @override + void debugFillProperties(DiagnosticPropertiesBuilder properties) { + super.debugFillProperties(properties); + properties + ..add(DiagnosticsProperty('type', 'HomeState.quota')) + ..add(DiagnosticsProperty('profile', profile)) + ..add(DiagnosticsProperty('items', items)); + } + @override bool operator ==(dynamic other) { return identical(this, other) || @@ -1845,7 +1937,7 @@ class __$MailQuotaCopyWithImpl<$Res> extends _$HomeStateCopyWithImpl<$Res> /// @nodoc -class _$_MailQuota implements _MailQuota { +class _$_MailQuota with DiagnosticableTreeMixin implements _MailQuota { const _$_MailQuota(this.profile, this.items); @override @@ -1854,10 +1946,19 @@ class _$_MailQuota implements _MailQuota { final List items; @override - String toString() { + String toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) { return 'HomeState.mailQuota(profile: $profile, items: $items)'; } + @override + void debugFillProperties(DiagnosticPropertiesBuilder properties) { + super.debugFillProperties(properties); + properties + ..add(DiagnosticsProperty('type', 'HomeState.mailQuota')) + ..add(DiagnosticsProperty('profile', profile)) + ..add(DiagnosticsProperty('items', items)); + } + @override bool operator ==(dynamic other) { return identical(this, other) || @@ -2002,7 +2103,7 @@ class __$ResetPasswordCopyWithImpl<$Res> extends _$HomeStateCopyWithImpl<$Res> /// @nodoc -class _$_ResetPassword implements _ResetPassword { +class _$_ResetPassword with DiagnosticableTreeMixin implements _ResetPassword { const _$_ResetPassword(this.profile, this.items); @override @@ -2011,10 +2112,19 @@ class _$_ResetPassword implements _ResetPassword { final List items; @override - String toString() { + String toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) { return 'HomeState.resetPassword(profile: $profile, items: $items)'; } + @override + void debugFillProperties(DiagnosticPropertiesBuilder properties) { + super.debugFillProperties(properties); + properties + ..add(DiagnosticsProperty('type', 'HomeState.resetPassword')) + ..add(DiagnosticsProperty('profile', profile)) + ..add(DiagnosticsProperty('items', items)); + } + @override bool operator ==(dynamic other) { return identical(this, other) || @@ -2157,7 +2267,7 @@ class __$AboutUsCopyWithImpl<$Res> extends _$HomeStateCopyWithImpl<$Res> /// @nodoc -class _$_AboutUs implements _AboutUs { +class _$_AboutUs with DiagnosticableTreeMixin implements _AboutUs { const _$_AboutUs(this.profile, this.items); @override @@ -2166,10 +2276,19 @@ class _$_AboutUs implements _AboutUs { final List items; @override - String toString() { + String toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) { return 'HomeState.aboutUs(profile: $profile, items: $items)'; } + @override + void debugFillProperties(DiagnosticPropertiesBuilder properties) { + super.debugFillProperties(properties); + properties + ..add(DiagnosticsProperty('type', 'HomeState.aboutUs')) + ..add(DiagnosticsProperty('profile', profile)) + ..add(DiagnosticsProperty('items', items)); + } + @override bool operator ==(dynamic other) { return identical(this, other) || diff --git a/lib/src/presentation/blocs/mail_quota_bloc/mail_quota_bloc.dart b/lib/src/presentation/blocs/mail_quota_bloc/mail_quota_bloc.dart index 726c091..07f2e43 100644 --- a/lib/src/presentation/blocs/mail_quota_bloc/mail_quota_bloc.dart +++ b/lib/src/presentation/blocs/mail_quota_bloc/mail_quota_bloc.dart @@ -1,39 +1,37 @@ import 'package:flutter_bloc/flutter_bloc.dart'; +import 'package:freezed_annotation/freezed_annotation.dart'; import 'package:gestionuh/src/data/models/models.dart'; import 'package:gestionuh/src/data/repositories/repositories.dart'; import 'package:gestionuh/src/utils/constants/constants.dart'; part 'mail_quota_event.dart'; part 'mail_quota_state.dart'; +part 'mail_quota_bloc.freezed.dart'; class MailQuotaBloc extends Bloc { final MailQuotasRepository mailQuotasRepository; MailQuotaBloc({ required this.mailQuotasRepository, - }) : super(MailQuotaInitial()); + }) : super(const MailQuotaState.initial()); @override Stream mapEventToState(MailQuotaEvent event) async* { - if (event is MailQuotaInitialized) { - yield* handleProfileInitialized(event); - } + yield* event.map( + quotaRequested: quotaRequestedHandler, + ); } - Stream handleProfileInitialized( - MailQuotaInitialized event) async* { - yield MailQuotaLoadInProgress(); + Stream quotaRequestedHandler( + _$MailQuotaRequested event) async* { + yield const MailQuotaState.loadInProgress(); final result = await mailQuotasRepository.getQuota(); - if (result == null) { - yield MailQuotaLoadedFailure( - error: Errors.DefaultError, - ); - } else if (result.error != null) { - yield MailQuotaLoadedFailure( - error: result.error, + if (result == null || result.error != null) { + yield MailQuotaState.loadFailure( + error: result?.error ?? Errors.DefaultError, ); } else { - yield MailQuotaLoadedSuccess( + yield MailQuotaState.loadSuccess( quota: result, ); } diff --git a/lib/src/presentation/blocs/mail_quota_bloc/mail_quota_bloc.freezed.dart b/lib/src/presentation/blocs/mail_quota_bloc/mail_quota_bloc.freezed.dart new file mode 100644 index 0000000..04b2098 --- /dev/null +++ b/lib/src/presentation/blocs/mail_quota_bloc/mail_quota_bloc.freezed.dart @@ -0,0 +1,674 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND +// ignore_for_file: unused_element, deprecated_member_use, deprecated_member_use_from_same_package, use_function_type_syntax_for_parameters, unnecessary_const, avoid_init_to_null, invalid_override_different_default_values_named, prefer_expression_function_bodies, annotate_overrides + +part of 'mail_quota_bloc.dart'; + +// ************************************************************************** +// FreezedGenerator +// ************************************************************************** + +T _$identity(T value) => value; + +final _privateConstructorUsedError = UnsupportedError( + 'It seems like you constructed your class using `MyClass._()`. This constructor is only meant to be used by freezed and you are not supposed to need it nor use it.\nPlease check the documentation here for more informations: https://github.com/rrousselGit/freezed#custom-getters-and-methods'); + +/// @nodoc +class _$MailQuotaEventTearOff { + const _$MailQuotaEventTearOff(); + + _$MailQuotaRequested quotaRequested() { + return const _$MailQuotaRequested(); + } +} + +/// @nodoc +const $MailQuotaEvent = _$MailQuotaEventTearOff(); + +/// @nodoc +mixin _$MailQuotaEvent { + @optionalTypeArgs + TResult when({ + required TResult Function() quotaRequested, + }) => + throw _privateConstructorUsedError; + @optionalTypeArgs + TResult maybeWhen({ + TResult Function()? quotaRequested, + required TResult orElse(), + }) => + throw _privateConstructorUsedError; + @optionalTypeArgs + TResult map({ + required TResult Function(_$MailQuotaRequested value) quotaRequested, + }) => + throw _privateConstructorUsedError; + @optionalTypeArgs + TResult maybeMap({ + TResult Function(_$MailQuotaRequested value)? quotaRequested, + required TResult orElse(), + }) => + throw _privateConstructorUsedError; +} + +/// @nodoc +abstract class $MailQuotaEventCopyWith<$Res> { + factory $MailQuotaEventCopyWith( + MailQuotaEvent value, $Res Function(MailQuotaEvent) then) = + _$MailQuotaEventCopyWithImpl<$Res>; +} + +/// @nodoc +class _$MailQuotaEventCopyWithImpl<$Res> + implements $MailQuotaEventCopyWith<$Res> { + _$MailQuotaEventCopyWithImpl(this._value, this._then); + + final MailQuotaEvent _value; + // ignore: unused_field + final $Res Function(MailQuotaEvent) _then; +} + +/// @nodoc +abstract class _$$MailQuotaRequestedCopyWith<$Res> { + factory _$$MailQuotaRequestedCopyWith(_$MailQuotaRequested value, + $Res Function(_$MailQuotaRequested) then) = + __$$MailQuotaRequestedCopyWithImpl<$Res>; +} + +/// @nodoc +class __$$MailQuotaRequestedCopyWithImpl<$Res> + extends _$MailQuotaEventCopyWithImpl<$Res> + implements _$$MailQuotaRequestedCopyWith<$Res> { + __$$MailQuotaRequestedCopyWithImpl( + _$MailQuotaRequested _value, $Res Function(_$MailQuotaRequested) _then) + : super(_value, (v) => _then(v as _$MailQuotaRequested)); + + @override + _$MailQuotaRequested get _value => super._value as _$MailQuotaRequested; +} + +/// @nodoc + +class _$_$MailQuotaRequested implements _$MailQuotaRequested { + const _$_$MailQuotaRequested(); + + @override + String toString() { + return 'MailQuotaEvent.quotaRequested()'; + } + + @override + bool operator ==(dynamic other) { + return identical(this, other) || (other is _$MailQuotaRequested); + } + + @override + int get hashCode => runtimeType.hashCode; + + @override + @optionalTypeArgs + TResult when({ + required TResult Function() quotaRequested, + }) { + return quotaRequested(); + } + + @override + @optionalTypeArgs + TResult maybeWhen({ + TResult Function()? quotaRequested, + required TResult orElse(), + }) { + if (quotaRequested != null) { + return quotaRequested(); + } + return orElse(); + } + + @override + @optionalTypeArgs + TResult map({ + required TResult Function(_$MailQuotaRequested value) quotaRequested, + }) { + return quotaRequested(this); + } + + @override + @optionalTypeArgs + TResult maybeMap({ + TResult Function(_$MailQuotaRequested value)? quotaRequested, + required TResult orElse(), + }) { + if (quotaRequested != null) { + return quotaRequested(this); + } + return orElse(); + } +} + +abstract class _$MailQuotaRequested implements MailQuotaEvent { + const factory _$MailQuotaRequested() = _$_$MailQuotaRequested; +} + +/// @nodoc +class _$MailQuotaStateTearOff { + const _$MailQuotaStateTearOff(); + + _$MailQuotaInitial initial() { + return const _$MailQuotaInitial(); + } + + _$LoadMailQuotaInProgress loadInProgress() { + return const _$LoadMailQuotaInProgress(); + } + + _$LoadMailQuotaSuccess loadSuccess({required MailQuota quota}) { + return _$LoadMailQuotaSuccess( + quota: quota, + ); + } + + _$LoadMailQuotaFailure loadFailure({required String error}) { + return _$LoadMailQuotaFailure( + error: error, + ); + } +} + +/// @nodoc +const $MailQuotaState = _$MailQuotaStateTearOff(); + +/// @nodoc +mixin _$MailQuotaState { + @optionalTypeArgs + TResult when({ + required TResult Function() initial, + required TResult Function() loadInProgress, + required TResult Function(MailQuota quota) loadSuccess, + required TResult Function(String error) loadFailure, + }) => + throw _privateConstructorUsedError; + @optionalTypeArgs + TResult maybeWhen({ + TResult Function()? initial, + TResult Function()? loadInProgress, + TResult Function(MailQuota quota)? loadSuccess, + TResult Function(String error)? loadFailure, + required TResult orElse(), + }) => + throw _privateConstructorUsedError; + @optionalTypeArgs + TResult map({ + required TResult Function(_$MailQuotaInitial value) initial, + required TResult Function(_$LoadMailQuotaInProgress value) loadInProgress, + required TResult Function(_$LoadMailQuotaSuccess value) loadSuccess, + required TResult Function(_$LoadMailQuotaFailure value) loadFailure, + }) => + throw _privateConstructorUsedError; + @optionalTypeArgs + TResult maybeMap({ + TResult Function(_$MailQuotaInitial value)? initial, + TResult Function(_$LoadMailQuotaInProgress value)? loadInProgress, + TResult Function(_$LoadMailQuotaSuccess value)? loadSuccess, + TResult Function(_$LoadMailQuotaFailure value)? loadFailure, + required TResult orElse(), + }) => + throw _privateConstructorUsedError; +} + +/// @nodoc +abstract class $MailQuotaStateCopyWith<$Res> { + factory $MailQuotaStateCopyWith( + MailQuotaState value, $Res Function(MailQuotaState) then) = + _$MailQuotaStateCopyWithImpl<$Res>; +} + +/// @nodoc +class _$MailQuotaStateCopyWithImpl<$Res> + implements $MailQuotaStateCopyWith<$Res> { + _$MailQuotaStateCopyWithImpl(this._value, this._then); + + final MailQuotaState _value; + // ignore: unused_field + final $Res Function(MailQuotaState) _then; +} + +/// @nodoc +abstract class _$$MailQuotaInitialCopyWith<$Res> { + factory _$$MailQuotaInitialCopyWith( + _$MailQuotaInitial value, $Res Function(_$MailQuotaInitial) then) = + __$$MailQuotaInitialCopyWithImpl<$Res>; +} + +/// @nodoc +class __$$MailQuotaInitialCopyWithImpl<$Res> + extends _$MailQuotaStateCopyWithImpl<$Res> + implements _$$MailQuotaInitialCopyWith<$Res> { + __$$MailQuotaInitialCopyWithImpl( + _$MailQuotaInitial _value, $Res Function(_$MailQuotaInitial) _then) + : super(_value, (v) => _then(v as _$MailQuotaInitial)); + + @override + _$MailQuotaInitial get _value => super._value as _$MailQuotaInitial; +} + +/// @nodoc + +class _$_$MailQuotaInitial implements _$MailQuotaInitial { + const _$_$MailQuotaInitial(); + + @override + String toString() { + return 'MailQuotaState.initial()'; + } + + @override + bool operator ==(dynamic other) { + return identical(this, other) || (other is _$MailQuotaInitial); + } + + @override + int get hashCode => runtimeType.hashCode; + + @override + @optionalTypeArgs + TResult when({ + required TResult Function() initial, + required TResult Function() loadInProgress, + required TResult Function(MailQuota quota) loadSuccess, + required TResult Function(String error) loadFailure, + }) { + return initial(); + } + + @override + @optionalTypeArgs + TResult maybeWhen({ + TResult Function()? initial, + TResult Function()? loadInProgress, + TResult Function(MailQuota quota)? loadSuccess, + TResult Function(String error)? loadFailure, + required TResult orElse(), + }) { + if (initial != null) { + return initial(); + } + return orElse(); + } + + @override + @optionalTypeArgs + TResult map({ + required TResult Function(_$MailQuotaInitial value) initial, + required TResult Function(_$LoadMailQuotaInProgress value) loadInProgress, + required TResult Function(_$LoadMailQuotaSuccess value) loadSuccess, + required TResult Function(_$LoadMailQuotaFailure value) loadFailure, + }) { + return initial(this); + } + + @override + @optionalTypeArgs + TResult maybeMap({ + TResult Function(_$MailQuotaInitial value)? initial, + TResult Function(_$LoadMailQuotaInProgress value)? loadInProgress, + TResult Function(_$LoadMailQuotaSuccess value)? loadSuccess, + TResult Function(_$LoadMailQuotaFailure value)? loadFailure, + required TResult orElse(), + }) { + if (initial != null) { + return initial(this); + } + return orElse(); + } +} + +abstract class _$MailQuotaInitial implements MailQuotaState { + const factory _$MailQuotaInitial() = _$_$MailQuotaInitial; +} + +/// @nodoc +abstract class _$$LoadMailQuotaInProgressCopyWith<$Res> { + factory _$$LoadMailQuotaInProgressCopyWith(_$LoadMailQuotaInProgress value, + $Res Function(_$LoadMailQuotaInProgress) then) = + __$$LoadMailQuotaInProgressCopyWithImpl<$Res>; +} + +/// @nodoc +class __$$LoadMailQuotaInProgressCopyWithImpl<$Res> + extends _$MailQuotaStateCopyWithImpl<$Res> + implements _$$LoadMailQuotaInProgressCopyWith<$Res> { + __$$LoadMailQuotaInProgressCopyWithImpl(_$LoadMailQuotaInProgress _value, + $Res Function(_$LoadMailQuotaInProgress) _then) + : super(_value, (v) => _then(v as _$LoadMailQuotaInProgress)); + + @override + _$LoadMailQuotaInProgress get _value => + super._value as _$LoadMailQuotaInProgress; +} + +/// @nodoc + +class _$_$LoadMailQuotaInProgress implements _$LoadMailQuotaInProgress { + const _$_$LoadMailQuotaInProgress(); + + @override + String toString() { + return 'MailQuotaState.loadInProgress()'; + } + + @override + bool operator ==(dynamic other) { + return identical(this, other) || (other is _$LoadMailQuotaInProgress); + } + + @override + int get hashCode => runtimeType.hashCode; + + @override + @optionalTypeArgs + TResult when({ + required TResult Function() initial, + required TResult Function() loadInProgress, + required TResult Function(MailQuota quota) loadSuccess, + required TResult Function(String error) loadFailure, + }) { + return loadInProgress(); + } + + @override + @optionalTypeArgs + TResult maybeWhen({ + TResult Function()? initial, + TResult Function()? loadInProgress, + TResult Function(MailQuota quota)? loadSuccess, + TResult Function(String error)? loadFailure, + required TResult orElse(), + }) { + if (loadInProgress != null) { + return loadInProgress(); + } + return orElse(); + } + + @override + @optionalTypeArgs + TResult map({ + required TResult Function(_$MailQuotaInitial value) initial, + required TResult Function(_$LoadMailQuotaInProgress value) loadInProgress, + required TResult Function(_$LoadMailQuotaSuccess value) loadSuccess, + required TResult Function(_$LoadMailQuotaFailure value) loadFailure, + }) { + return loadInProgress(this); + } + + @override + @optionalTypeArgs + TResult maybeMap({ + TResult Function(_$MailQuotaInitial value)? initial, + TResult Function(_$LoadMailQuotaInProgress value)? loadInProgress, + TResult Function(_$LoadMailQuotaSuccess value)? loadSuccess, + TResult Function(_$LoadMailQuotaFailure value)? loadFailure, + required TResult orElse(), + }) { + if (loadInProgress != null) { + return loadInProgress(this); + } + return orElse(); + } +} + +abstract class _$LoadMailQuotaInProgress implements MailQuotaState { + const factory _$LoadMailQuotaInProgress() = _$_$LoadMailQuotaInProgress; +} + +/// @nodoc +abstract class _$$LoadMailQuotaSuccessCopyWith<$Res> { + factory _$$LoadMailQuotaSuccessCopyWith(_$LoadMailQuotaSuccess value, + $Res Function(_$LoadMailQuotaSuccess) then) = + __$$LoadMailQuotaSuccessCopyWithImpl<$Res>; + $Res call({MailQuota quota}); +} + +/// @nodoc +class __$$LoadMailQuotaSuccessCopyWithImpl<$Res> + extends _$MailQuotaStateCopyWithImpl<$Res> + implements _$$LoadMailQuotaSuccessCopyWith<$Res> { + __$$LoadMailQuotaSuccessCopyWithImpl(_$LoadMailQuotaSuccess _value, + $Res Function(_$LoadMailQuotaSuccess) _then) + : super(_value, (v) => _then(v as _$LoadMailQuotaSuccess)); + + @override + _$LoadMailQuotaSuccess get _value => super._value as _$LoadMailQuotaSuccess; + + @override + $Res call({ + Object? quota = freezed, + }) { + return _then(_$LoadMailQuotaSuccess( + quota: quota == freezed + ? _value.quota + : quota // ignore: cast_nullable_to_non_nullable + as MailQuota, + )); + } +} + +/// @nodoc + +class _$_$LoadMailQuotaSuccess implements _$LoadMailQuotaSuccess { + const _$_$LoadMailQuotaSuccess({required this.quota}); + + @override + final MailQuota quota; + + @override + String toString() { + return 'MailQuotaState.loadSuccess(quota: $quota)'; + } + + @override + bool operator ==(dynamic other) { + return identical(this, other) || + (other is _$LoadMailQuotaSuccess && + (identical(other.quota, quota) || + const DeepCollectionEquality().equals(other.quota, quota))); + } + + @override + int get hashCode => + runtimeType.hashCode ^ const DeepCollectionEquality().hash(quota); + + @JsonKey(ignore: true) + @override + _$$LoadMailQuotaSuccessCopyWith<_$LoadMailQuotaSuccess> get copyWith => + __$$LoadMailQuotaSuccessCopyWithImpl<_$LoadMailQuotaSuccess>( + this, _$identity); + + @override + @optionalTypeArgs + TResult when({ + required TResult Function() initial, + required TResult Function() loadInProgress, + required TResult Function(MailQuota quota) loadSuccess, + required TResult Function(String error) loadFailure, + }) { + return loadSuccess(quota); + } + + @override + @optionalTypeArgs + TResult maybeWhen({ + TResult Function()? initial, + TResult Function()? loadInProgress, + TResult Function(MailQuota quota)? loadSuccess, + TResult Function(String error)? loadFailure, + required TResult orElse(), + }) { + if (loadSuccess != null) { + return loadSuccess(quota); + } + return orElse(); + } + + @override + @optionalTypeArgs + TResult map({ + required TResult Function(_$MailQuotaInitial value) initial, + required TResult Function(_$LoadMailQuotaInProgress value) loadInProgress, + required TResult Function(_$LoadMailQuotaSuccess value) loadSuccess, + required TResult Function(_$LoadMailQuotaFailure value) loadFailure, + }) { + return loadSuccess(this); + } + + @override + @optionalTypeArgs + TResult maybeMap({ + TResult Function(_$MailQuotaInitial value)? initial, + TResult Function(_$LoadMailQuotaInProgress value)? loadInProgress, + TResult Function(_$LoadMailQuotaSuccess value)? loadSuccess, + TResult Function(_$LoadMailQuotaFailure value)? loadFailure, + required TResult orElse(), + }) { + if (loadSuccess != null) { + return loadSuccess(this); + } + return orElse(); + } +} + +abstract class _$LoadMailQuotaSuccess implements MailQuotaState { + const factory _$LoadMailQuotaSuccess({required MailQuota quota}) = + _$_$LoadMailQuotaSuccess; + + MailQuota get quota => throw _privateConstructorUsedError; + @JsonKey(ignore: true) + _$$LoadMailQuotaSuccessCopyWith<_$LoadMailQuotaSuccess> get copyWith => + throw _privateConstructorUsedError; +} + +/// @nodoc +abstract class _$$LoadMailQuotaFailureCopyWith<$Res> { + factory _$$LoadMailQuotaFailureCopyWith(_$LoadMailQuotaFailure value, + $Res Function(_$LoadMailQuotaFailure) then) = + __$$LoadMailQuotaFailureCopyWithImpl<$Res>; + $Res call({String error}); +} + +/// @nodoc +class __$$LoadMailQuotaFailureCopyWithImpl<$Res> + extends _$MailQuotaStateCopyWithImpl<$Res> + implements _$$LoadMailQuotaFailureCopyWith<$Res> { + __$$LoadMailQuotaFailureCopyWithImpl(_$LoadMailQuotaFailure _value, + $Res Function(_$LoadMailQuotaFailure) _then) + : super(_value, (v) => _then(v as _$LoadMailQuotaFailure)); + + @override + _$LoadMailQuotaFailure get _value => super._value as _$LoadMailQuotaFailure; + + @override + $Res call({ + Object? error = freezed, + }) { + return _then(_$LoadMailQuotaFailure( + error: error == freezed + ? _value.error + : error // ignore: cast_nullable_to_non_nullable + as String, + )); + } +} + +/// @nodoc + +class _$_$LoadMailQuotaFailure implements _$LoadMailQuotaFailure { + const _$_$LoadMailQuotaFailure({required this.error}); + + @override + final String error; + + @override + String toString() { + return 'MailQuotaState.loadFailure(error: $error)'; + } + + @override + bool operator ==(dynamic other) { + return identical(this, other) || + (other is _$LoadMailQuotaFailure && + (identical(other.error, error) || + const DeepCollectionEquality().equals(other.error, error))); + } + + @override + int get hashCode => + runtimeType.hashCode ^ const DeepCollectionEquality().hash(error); + + @JsonKey(ignore: true) + @override + _$$LoadMailQuotaFailureCopyWith<_$LoadMailQuotaFailure> get copyWith => + __$$LoadMailQuotaFailureCopyWithImpl<_$LoadMailQuotaFailure>( + this, _$identity); + + @override + @optionalTypeArgs + TResult when({ + required TResult Function() initial, + required TResult Function() loadInProgress, + required TResult Function(MailQuota quota) loadSuccess, + required TResult Function(String error) loadFailure, + }) { + return loadFailure(error); + } + + @override + @optionalTypeArgs + TResult maybeWhen({ + TResult Function()? initial, + TResult Function()? loadInProgress, + TResult Function(MailQuota quota)? loadSuccess, + TResult Function(String error)? loadFailure, + required TResult orElse(), + }) { + if (loadFailure != null) { + return loadFailure(error); + } + return orElse(); + } + + @override + @optionalTypeArgs + TResult map({ + required TResult Function(_$MailQuotaInitial value) initial, + required TResult Function(_$LoadMailQuotaInProgress value) loadInProgress, + required TResult Function(_$LoadMailQuotaSuccess value) loadSuccess, + required TResult Function(_$LoadMailQuotaFailure value) loadFailure, + }) { + return loadFailure(this); + } + + @override + @optionalTypeArgs + TResult maybeMap({ + TResult Function(_$MailQuotaInitial value)? initial, + TResult Function(_$LoadMailQuotaInProgress value)? loadInProgress, + TResult Function(_$LoadMailQuotaSuccess value)? loadSuccess, + TResult Function(_$LoadMailQuotaFailure value)? loadFailure, + required TResult orElse(), + }) { + if (loadFailure != null) { + return loadFailure(this); + } + return orElse(); + } +} + +abstract class _$LoadMailQuotaFailure implements MailQuotaState { + const factory _$LoadMailQuotaFailure({required String error}) = + _$_$LoadMailQuotaFailure; + + String get error => throw _privateConstructorUsedError; + @JsonKey(ignore: true) + _$$LoadMailQuotaFailureCopyWith<_$LoadMailQuotaFailure> get copyWith => + throw _privateConstructorUsedError; +} diff --git a/lib/src/presentation/blocs/mail_quota_bloc/mail_quota_event.dart b/lib/src/presentation/blocs/mail_quota_bloc/mail_quota_event.dart index 8b9313c..dfcb835 100644 --- a/lib/src/presentation/blocs/mail_quota_bloc/mail_quota_event.dart +++ b/lib/src/presentation/blocs/mail_quota_bloc/mail_quota_event.dart @@ -1,5 +1,6 @@ part of 'mail_quota_bloc.dart'; -abstract class MailQuotaEvent {} - -class MailQuotaInitialized extends MailQuotaEvent {} +@freezed +abstract class MailQuotaEvent with _$MailQuotaEvent { + const factory MailQuotaEvent.quotaRequested() = _$MailQuotaRequested; +} diff --git a/lib/src/presentation/blocs/mail_quota_bloc/mail_quota_state.dart b/lib/src/presentation/blocs/mail_quota_bloc/mail_quota_state.dart index c47a9ea..3f8c913 100644 --- a/lib/src/presentation/blocs/mail_quota_bloc/mail_quota_state.dart +++ b/lib/src/presentation/blocs/mail_quota_bloc/mail_quota_state.dart @@ -1,23 +1,11 @@ part of 'mail_quota_bloc.dart'; -abstract class MailQuotaState {} - -class MailQuotaInitial extends MailQuotaState {} - -class MailQuotaLoadInProgress extends MailQuotaState {} - -class MailQuotaLoadedSuccess extends MailQuotaState { - final MailQuota? quota; - - MailQuotaLoadedSuccess({ - this.quota, - }); -} - -class MailQuotaLoadedFailure extends MailQuotaState { - final String? error; - - MailQuotaLoadedFailure({ - this.error, - }); +@freezed +abstract class MailQuotaState with _$MailQuotaState { + const factory MailQuotaState.initial() = _$MailQuotaInitial; + const factory MailQuotaState.loadInProgress() = _$LoadMailQuotaInProgress; + const factory MailQuotaState.loadSuccess({required MailQuota quota}) = + _$LoadMailQuotaSuccess; + const factory MailQuotaState.loadFailure({required String error}) = + _$LoadMailQuotaFailure; } diff --git a/lib/src/presentation/pages/home_page/home_page.dart b/lib/src/presentation/pages/home_page/home_page.dart index 65eecde..2745e83 100644 --- a/lib/src/presentation/pages/home_page/home_page.dart +++ b/lib/src/presentation/pages/home_page/home_page.dart @@ -159,7 +159,8 @@ class HomePage extends StatelessWidget { }, mailQuota: (state) { return BlocProvider( - create: (_) => GetIt.I()..add(MailQuotaInitialized()), + create: (_) => + GetIt.I()..add(const MailQuotaEvent.quotaRequested()), child: const MailQuotaPage(), ); }, diff --git a/lib/src/presentation/pages/home_page/sub_pages/mail_quotas_page.dart b/lib/src/presentation/pages/home_page/sub_pages/mail_quotas_page.dart index 5522361..11d5867 100644 --- a/lib/src/presentation/pages/home_page/sub_pages/mail_quotas_page.dart +++ b/lib/src/presentation/pages/home_page/sub_pages/mail_quotas_page.dart @@ -1,5 +1,6 @@ import 'package:flutter/material.dart'; import 'package:flutter_bloc/flutter_bloc.dart'; +import 'package:gestionuh/src/data/models/mail_quota.dart'; import 'package:gestionuh/src/presentation/blocs/blocs.dart'; import 'package:gestionuh/src/presentation/widgets/widgets.dart'; import 'package:responsive_builder/responsive_builder.dart'; @@ -17,95 +18,107 @@ class _MailQuotaPageState extends State { return BlocConsumer( listener: (context, state) {}, builder: (context, state) { - if (state is MailQuotaLoadedSuccess) { - return RefreshIndicator( - onRefresh: () async { - context.read().add(MailQuotaInitialized()); - }, - child: Scrollbar( - child: ListView( - physics: const AlwaysScrollableScrollPhysics(), - children: [ - Center( - child: Container( - width: getValueForScreenType( - context: context, - mobile: MediaQuery.of(context).size.width, - tablet: MediaQuery.of(context).size.width * 0.5, - ), - padding: const EdgeInsets.only( - top: 30, - bottom: 9, - left: 18, - right: 18, - ), - child: Column( - mainAxisAlignment: MainAxisAlignment.center, - children: [ - Center( - child: MailQuotaGraph( - quota: state.quota!, - ), - ), - ], + return state.maybeWhen( + loadFailure: (String error) => _buildFailurePage(context, error), + loadSuccess: (MailQuota quota) => _buildQuotaPage(context, quota), + orElse: () => _buildLoadingIndicator(context), + ); + }, + ); + } + + Widget _buildQuotaPage(BuildContext context, MailQuota quota) { + return RefreshIndicator( + onRefresh: () async { + context + .read() + .add(const MailQuotaEvent.quotaRequested()); + }, + child: Scrollbar( + child: ListView( + physics: const AlwaysScrollableScrollPhysics(), + children: [ + Center( + child: Container( + width: getValueForScreenType( + context: context, + mobile: MediaQuery.of(context).size.width, + tablet: MediaQuery.of(context).size.width * 0.5, + ), + padding: const EdgeInsets.only( + top: 30, + bottom: 9, + left: 18, + right: 18, + ), + child: Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Center( + child: MailQuotaGraph( + quota: quota, ), ), - ), - ], + ], + ), ), ), - ); - } - if (state is MailQuotaLoadedFailure) { - return Scrollbar( - child: ListView( - children: [ - Center( - child: Container( - width: getValueForScreenType( - context: context, - mobile: MediaQuery.of(context).size.width, - tablet: MediaQuery.of(context).size.width * 0.5, - ), - padding: const EdgeInsets.only( - top: 30, - bottom: 9, - left: 18, - right: 18, - ), - child: Column( - mainAxisSize: MainAxisSize.min, - mainAxisAlignment: MainAxisAlignment.center, - children: [ - Text(state.error!), - Padding( - padding: const EdgeInsets.all(5), - child: GestionUhDefaultButton( - text: 'Reintentar', - onPressed: () { - context.read().add( - MailQuotaInitialized(), - ); - }, - ), - ), - ], + ], + ), + ), + ); + } + + Widget _buildFailurePage(BuildContext context, String error) { + return Scrollbar( + child: ListView( + children: [ + Center( + child: Container( + width: getValueForScreenType( + context: context, + mobile: MediaQuery.of(context).size.width, + tablet: MediaQuery.of(context).size.width * 0.5, + ), + padding: const EdgeInsets.only( + top: 30, + bottom: 9, + left: 18, + right: 18, + ), + child: Column( + mainAxisSize: MainAxisSize.min, + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Text(error), + Padding( + padding: const EdgeInsets.all(5), + child: GestionUhDefaultButton( + text: 'Reintentar', + onPressed: () { + context.read().add( + const MailQuotaEvent.quotaRequested(), + ); + }, ), ), - ), - ], + ], + ), ), - ); - } - return Center( - child: Column( - mainAxisAlignment: MainAxisAlignment.center, - children: const [ - GestionUhLoadingIndicator(), - ], ), - ); - }, + ], + ), + ); + } + + Widget _buildLoadingIndicator(BuildContext context) { + return Center( + child: Column( + mainAxisAlignment: MainAxisAlignment.center, + children: const [ + GestionUhLoadingIndicator(), + ], + ), ); } } From 7b06fa7c4baeecde62cb385b0cf1859cca53766d Mon Sep 17 00:00:00 2001 From: Leonel Garcia Date: Sat, 24 Apr 2021 23:57:27 -0400 Subject: [PATCH 51/59] Login bloc changed to freezed way --- .../data/repositories/auth_repository.dart | 5 +- .../blocs/login_bloc/login_bloc.dart | 28 +- .../blocs/login_bloc/login_bloc.freezed.dart | 747 ++++++++++++++++++ .../blocs/login_bloc/login_event.dart | 19 +- .../blocs/login_bloc/login_state.dart | 17 +- .../blocs/register_bloc/register_bloc.dart | 4 +- .../register_bloc/register_bloc.freezed.dart | 656 +++++++-------- .../blocs/register_bloc/register_event.dart | 4 +- .../blocs/register_bloc/register_state.dart | 14 +- .../resetpassword_bloc.dart | 2 +- .../resetpassword_bloc.freezed.dart | 284 +++---- .../resetpassword_event.dart | 2 +- .../resetpassword_state.dart | 8 +- lib/src/presentation/pages/login_page.dart | 254 +++--- 14 files changed, 1406 insertions(+), 638 deletions(-) create mode 100644 lib/src/presentation/blocs/login_bloc/login_bloc.freezed.dart diff --git a/lib/src/data/repositories/auth_repository.dart b/lib/src/data/repositories/auth_repository.dart index 1103cd0..010f86d 100644 --- a/lib/src/data/repositories/auth_repository.dart +++ b/lib/src/data/repositories/auth_repository.dart @@ -4,6 +4,7 @@ import 'package:gestionuh/src/data/api/api.dart'; import 'package:gestionuh/src/data/local/local_storage.dart'; import 'package:gestionuh/src/data/models/models.dart'; import 'package:gestionuh/src/data/models/status.dart'; +import 'package:gestionuh/src/utils/constants/constants.dart'; import 'package:gestionuh/src/utils/constants/storage_keys.dart'; class AuthRepository { @@ -50,8 +51,8 @@ class AuthRepository { return result; } catch (e) { log(e.toString()); + return Auth()..error = e.toString(); } - return null; } Future logout() async { @@ -85,7 +86,7 @@ class AuthRepository { return status; } catch (e) { log(e.toString()); - return Status(status: false); + return Status(status: false)..error = e.toString(); } } diff --git a/lib/src/presentation/blocs/login_bloc/login_bloc.dart b/lib/src/presentation/blocs/login_bloc/login_bloc.dart index 55cae61..c9d0adb 100644 --- a/lib/src/presentation/blocs/login_bloc/login_bloc.dart +++ b/lib/src/presentation/blocs/login_bloc/login_bloc.dart @@ -1,41 +1,39 @@ import 'package:flutter_bloc/flutter_bloc.dart'; +import 'package:freezed_annotation/freezed_annotation.dart'; import 'package:gestionuh/src/data/repositories/repositories.dart'; import 'package:gestionuh/src/utils/constants/constants.dart'; part 'login_event.dart'; part 'login_state.dart'; +part 'login_bloc.freezed.dart'; class LoginBloc extends Bloc { final AuthRepository authRepository; LoginBloc({ required this.authRepository, - }) : super(LoginAttemptInitial(error: '')); + }) : super(const LoginState.initial()); @override Stream mapEventToState(LoginEvent event) async* { - if (event is LoginAttempted) { - yield* handleLoginAttempted(event); - } + yield* event.map( + loginAttempted: loginAttemptedHandler, + ); } - Stream handleLoginAttempted(LoginAttempted event) async* { - yield LoginAttemptInProgress(); + Stream loginAttemptedHandler(_$LoginAttempted event) async* { + yield const LoginState.inProgress(); final result = await authRepository.login( - event.username.trim(), + event.userName.trim(), event.password.trim(), event.rememberMe, ); - if (result == null) { - yield LoginAttemptInitial( - error: Errors.DefaultError, - ); - } else if (result.error != null) { - yield LoginAttemptInitial( - error: result.error!, + if (result == null || result.error != null) { + yield LoginState.failure( + error: result?.error ?? Errors.DefaultError, ); } else { - yield LoginAttemptSuccess(); + yield const LoginState.success(); } } } diff --git a/lib/src/presentation/blocs/login_bloc/login_bloc.freezed.dart b/lib/src/presentation/blocs/login_bloc/login_bloc.freezed.dart new file mode 100644 index 0000000..1adbd1d --- /dev/null +++ b/lib/src/presentation/blocs/login_bloc/login_bloc.freezed.dart @@ -0,0 +1,747 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND +// ignore_for_file: unused_element, deprecated_member_use, deprecated_member_use_from_same_package, use_function_type_syntax_for_parameters, unnecessary_const, avoid_init_to_null, invalid_override_different_default_values_named, prefer_expression_function_bodies, annotate_overrides + +part of 'login_bloc.dart'; + +// ************************************************************************** +// FreezedGenerator +// ************************************************************************** + +T _$identity(T value) => value; + +final _privateConstructorUsedError = UnsupportedError( + 'It seems like you constructed your class using `MyClass._()`. This constructor is only meant to be used by freezed and you are not supposed to need it nor use it.\nPlease check the documentation here for more informations: https://github.com/rrousselGit/freezed#custom-getters-and-methods'); + +/// @nodoc +class _$LoginEventTearOff { + const _$LoginEventTearOff(); + + _$LoginAttempted loginAttempted( + {required String userName, + required String password, + required bool rememberMe}) { + return _$LoginAttempted( + userName: userName, + password: password, + rememberMe: rememberMe, + ); + } +} + +/// @nodoc +const $LoginEvent = _$LoginEventTearOff(); + +/// @nodoc +mixin _$LoginEvent { + String get userName => throw _privateConstructorUsedError; + String get password => throw _privateConstructorUsedError; + bool get rememberMe => throw _privateConstructorUsedError; + + @optionalTypeArgs + TResult when({ + required TResult Function(String userName, String password, bool rememberMe) + loginAttempted, + }) => + throw _privateConstructorUsedError; + @optionalTypeArgs + TResult maybeWhen({ + TResult Function(String userName, String password, bool rememberMe)? + loginAttempted, + required TResult orElse(), + }) => + throw _privateConstructorUsedError; + @optionalTypeArgs + TResult map({ + required TResult Function(_$LoginAttempted value) loginAttempted, + }) => + throw _privateConstructorUsedError; + @optionalTypeArgs + TResult maybeMap({ + TResult Function(_$LoginAttempted value)? loginAttempted, + required TResult orElse(), + }) => + throw _privateConstructorUsedError; + + @JsonKey(ignore: true) + $LoginEventCopyWith get copyWith => + throw _privateConstructorUsedError; +} + +/// @nodoc +abstract class $LoginEventCopyWith<$Res> { + factory $LoginEventCopyWith( + LoginEvent value, $Res Function(LoginEvent) then) = + _$LoginEventCopyWithImpl<$Res>; + $Res call({String userName, String password, bool rememberMe}); +} + +/// @nodoc +class _$LoginEventCopyWithImpl<$Res> implements $LoginEventCopyWith<$Res> { + _$LoginEventCopyWithImpl(this._value, this._then); + + final LoginEvent _value; + // ignore: unused_field + final $Res Function(LoginEvent) _then; + + @override + $Res call({ + Object? userName = freezed, + Object? password = freezed, + Object? rememberMe = freezed, + }) { + return _then(_value.copyWith( + userName: userName == freezed + ? _value.userName + : userName // ignore: cast_nullable_to_non_nullable + as String, + password: password == freezed + ? _value.password + : password // ignore: cast_nullable_to_non_nullable + as String, + rememberMe: rememberMe == freezed + ? _value.rememberMe + : rememberMe // ignore: cast_nullable_to_non_nullable + as bool, + )); + } +} + +/// @nodoc +abstract class _$$LoginAttemptedCopyWith<$Res> + implements $LoginEventCopyWith<$Res> { + factory _$$LoginAttemptedCopyWith( + _$LoginAttempted value, $Res Function(_$LoginAttempted) then) = + __$$LoginAttemptedCopyWithImpl<$Res>; + @override + $Res call({String userName, String password, bool rememberMe}); +} + +/// @nodoc +class __$$LoginAttemptedCopyWithImpl<$Res> + extends _$LoginEventCopyWithImpl<$Res> + implements _$$LoginAttemptedCopyWith<$Res> { + __$$LoginAttemptedCopyWithImpl( + _$LoginAttempted _value, $Res Function(_$LoginAttempted) _then) + : super(_value, (v) => _then(v as _$LoginAttempted)); + + @override + _$LoginAttempted get _value => super._value as _$LoginAttempted; + + @override + $Res call({ + Object? userName = freezed, + Object? password = freezed, + Object? rememberMe = freezed, + }) { + return _then(_$LoginAttempted( + userName: userName == freezed + ? _value.userName + : userName // ignore: cast_nullable_to_non_nullable + as String, + password: password == freezed + ? _value.password + : password // ignore: cast_nullable_to_non_nullable + as String, + rememberMe: rememberMe == freezed + ? _value.rememberMe + : rememberMe // ignore: cast_nullable_to_non_nullable + as bool, + )); + } +} + +/// @nodoc + +class _$_$LoginAttempted implements _$LoginAttempted { + const _$_$LoginAttempted( + {required this.userName, + required this.password, + required this.rememberMe}); + + @override + final String userName; + @override + final String password; + @override + final bool rememberMe; + + @override + String toString() { + return 'LoginEvent.loginAttempted(userName: $userName, password: $password, rememberMe: $rememberMe)'; + } + + @override + bool operator ==(dynamic other) { + return identical(this, other) || + (other is _$LoginAttempted && + (identical(other.userName, userName) || + const DeepCollectionEquality() + .equals(other.userName, userName)) && + (identical(other.password, password) || + const DeepCollectionEquality() + .equals(other.password, password)) && + (identical(other.rememberMe, rememberMe) || + const DeepCollectionEquality() + .equals(other.rememberMe, rememberMe))); + } + + @override + int get hashCode => + runtimeType.hashCode ^ + const DeepCollectionEquality().hash(userName) ^ + const DeepCollectionEquality().hash(password) ^ + const DeepCollectionEquality().hash(rememberMe); + + @JsonKey(ignore: true) + @override + _$$LoginAttemptedCopyWith<_$LoginAttempted> get copyWith => + __$$LoginAttemptedCopyWithImpl<_$LoginAttempted>(this, _$identity); + + @override + @optionalTypeArgs + TResult when({ + required TResult Function(String userName, String password, bool rememberMe) + loginAttempted, + }) { + return loginAttempted(userName, password, rememberMe); + } + + @override + @optionalTypeArgs + TResult maybeWhen({ + TResult Function(String userName, String password, bool rememberMe)? + loginAttempted, + required TResult orElse(), + }) { + if (loginAttempted != null) { + return loginAttempted(userName, password, rememberMe); + } + return orElse(); + } + + @override + @optionalTypeArgs + TResult map({ + required TResult Function(_$LoginAttempted value) loginAttempted, + }) { + return loginAttempted(this); + } + + @override + @optionalTypeArgs + TResult maybeMap({ + TResult Function(_$LoginAttempted value)? loginAttempted, + required TResult orElse(), + }) { + if (loginAttempted != null) { + return loginAttempted(this); + } + return orElse(); + } +} + +abstract class _$LoginAttempted implements LoginEvent { + const factory _$LoginAttempted( + {required String userName, + required String password, + required bool rememberMe}) = _$_$LoginAttempted; + + @override + String get userName => throw _privateConstructorUsedError; + @override + String get password => throw _privateConstructorUsedError; + @override + bool get rememberMe => throw _privateConstructorUsedError; + @override + @JsonKey(ignore: true) + _$$LoginAttemptedCopyWith<_$LoginAttempted> get copyWith => + throw _privateConstructorUsedError; +} + +/// @nodoc +class _$LoginStateTearOff { + const _$LoginStateTearOff(); + + _$LoginInitial initial() { + return const _$LoginInitial(); + } + + _$LoginAttemptInProgress inProgress() { + return const _$LoginAttemptInProgress(); + } + + _$LoginAttemptSuccess success() { + return const _$LoginAttemptSuccess(); + } + + _$LoginAttemptFailure failure({required String error}) { + return _$LoginAttemptFailure( + error: error, + ); + } +} + +/// @nodoc +const $LoginState = _$LoginStateTearOff(); + +/// @nodoc +mixin _$LoginState { + @optionalTypeArgs + TResult when({ + required TResult Function() initial, + required TResult Function() inProgress, + required TResult Function() success, + required TResult Function(String error) failure, + }) => + throw _privateConstructorUsedError; + @optionalTypeArgs + TResult maybeWhen({ + TResult Function()? initial, + TResult Function()? inProgress, + TResult Function()? success, + TResult Function(String error)? failure, + required TResult orElse(), + }) => + throw _privateConstructorUsedError; + @optionalTypeArgs + TResult map({ + required TResult Function(_$LoginInitial value) initial, + required TResult Function(_$LoginAttemptInProgress value) inProgress, + required TResult Function(_$LoginAttemptSuccess value) success, + required TResult Function(_$LoginAttemptFailure value) failure, + }) => + throw _privateConstructorUsedError; + @optionalTypeArgs + TResult maybeMap({ + TResult Function(_$LoginInitial value)? initial, + TResult Function(_$LoginAttemptInProgress value)? inProgress, + TResult Function(_$LoginAttemptSuccess value)? success, + TResult Function(_$LoginAttemptFailure value)? failure, + required TResult orElse(), + }) => + throw _privateConstructorUsedError; +} + +/// @nodoc +abstract class $LoginStateCopyWith<$Res> { + factory $LoginStateCopyWith( + LoginState value, $Res Function(LoginState) then) = + _$LoginStateCopyWithImpl<$Res>; +} + +/// @nodoc +class _$LoginStateCopyWithImpl<$Res> implements $LoginStateCopyWith<$Res> { + _$LoginStateCopyWithImpl(this._value, this._then); + + final LoginState _value; + // ignore: unused_field + final $Res Function(LoginState) _then; +} + +/// @nodoc +abstract class _$$LoginInitialCopyWith<$Res> { + factory _$$LoginInitialCopyWith( + _$LoginInitial value, $Res Function(_$LoginInitial) then) = + __$$LoginInitialCopyWithImpl<$Res>; +} + +/// @nodoc +class __$$LoginInitialCopyWithImpl<$Res> extends _$LoginStateCopyWithImpl<$Res> + implements _$$LoginInitialCopyWith<$Res> { + __$$LoginInitialCopyWithImpl( + _$LoginInitial _value, $Res Function(_$LoginInitial) _then) + : super(_value, (v) => _then(v as _$LoginInitial)); + + @override + _$LoginInitial get _value => super._value as _$LoginInitial; +} + +/// @nodoc + +class _$_$LoginInitial implements _$LoginInitial { + const _$_$LoginInitial(); + + @override + String toString() { + return 'LoginState.initial()'; + } + + @override + bool operator ==(dynamic other) { + return identical(this, other) || (other is _$LoginInitial); + } + + @override + int get hashCode => runtimeType.hashCode; + + @override + @optionalTypeArgs + TResult when({ + required TResult Function() initial, + required TResult Function() inProgress, + required TResult Function() success, + required TResult Function(String error) failure, + }) { + return initial(); + } + + @override + @optionalTypeArgs + TResult maybeWhen({ + TResult Function()? initial, + TResult Function()? inProgress, + TResult Function()? success, + TResult Function(String error)? failure, + required TResult orElse(), + }) { + if (initial != null) { + return initial(); + } + return orElse(); + } + + @override + @optionalTypeArgs + TResult map({ + required TResult Function(_$LoginInitial value) initial, + required TResult Function(_$LoginAttemptInProgress value) inProgress, + required TResult Function(_$LoginAttemptSuccess value) success, + required TResult Function(_$LoginAttemptFailure value) failure, + }) { + return initial(this); + } + + @override + @optionalTypeArgs + TResult maybeMap({ + TResult Function(_$LoginInitial value)? initial, + TResult Function(_$LoginAttemptInProgress value)? inProgress, + TResult Function(_$LoginAttemptSuccess value)? success, + TResult Function(_$LoginAttemptFailure value)? failure, + required TResult orElse(), + }) { + if (initial != null) { + return initial(this); + } + return orElse(); + } +} + +abstract class _$LoginInitial implements LoginState { + const factory _$LoginInitial() = _$_$LoginInitial; +} + +/// @nodoc +abstract class _$$LoginAttemptInProgressCopyWith<$Res> { + factory _$$LoginAttemptInProgressCopyWith(_$LoginAttemptInProgress value, + $Res Function(_$LoginAttemptInProgress) then) = + __$$LoginAttemptInProgressCopyWithImpl<$Res>; +} + +/// @nodoc +class __$$LoginAttemptInProgressCopyWithImpl<$Res> + extends _$LoginStateCopyWithImpl<$Res> + implements _$$LoginAttemptInProgressCopyWith<$Res> { + __$$LoginAttemptInProgressCopyWithImpl(_$LoginAttemptInProgress _value, + $Res Function(_$LoginAttemptInProgress) _then) + : super(_value, (v) => _then(v as _$LoginAttemptInProgress)); + + @override + _$LoginAttemptInProgress get _value => + super._value as _$LoginAttemptInProgress; +} + +/// @nodoc + +class _$_$LoginAttemptInProgress implements _$LoginAttemptInProgress { + const _$_$LoginAttemptInProgress(); + + @override + String toString() { + return 'LoginState.inProgress()'; + } + + @override + bool operator ==(dynamic other) { + return identical(this, other) || (other is _$LoginAttemptInProgress); + } + + @override + int get hashCode => runtimeType.hashCode; + + @override + @optionalTypeArgs + TResult when({ + required TResult Function() initial, + required TResult Function() inProgress, + required TResult Function() success, + required TResult Function(String error) failure, + }) { + return inProgress(); + } + + @override + @optionalTypeArgs + TResult maybeWhen({ + TResult Function()? initial, + TResult Function()? inProgress, + TResult Function()? success, + TResult Function(String error)? failure, + required TResult orElse(), + }) { + if (inProgress != null) { + return inProgress(); + } + return orElse(); + } + + @override + @optionalTypeArgs + TResult map({ + required TResult Function(_$LoginInitial value) initial, + required TResult Function(_$LoginAttemptInProgress value) inProgress, + required TResult Function(_$LoginAttemptSuccess value) success, + required TResult Function(_$LoginAttemptFailure value) failure, + }) { + return inProgress(this); + } + + @override + @optionalTypeArgs + TResult maybeMap({ + TResult Function(_$LoginInitial value)? initial, + TResult Function(_$LoginAttemptInProgress value)? inProgress, + TResult Function(_$LoginAttemptSuccess value)? success, + TResult Function(_$LoginAttemptFailure value)? failure, + required TResult orElse(), + }) { + if (inProgress != null) { + return inProgress(this); + } + return orElse(); + } +} + +abstract class _$LoginAttemptInProgress implements LoginState { + const factory _$LoginAttemptInProgress() = _$_$LoginAttemptInProgress; +} + +/// @nodoc +abstract class _$$LoginAttemptSuccessCopyWith<$Res> { + factory _$$LoginAttemptSuccessCopyWith(_$LoginAttemptSuccess value, + $Res Function(_$LoginAttemptSuccess) then) = + __$$LoginAttemptSuccessCopyWithImpl<$Res>; +} + +/// @nodoc +class __$$LoginAttemptSuccessCopyWithImpl<$Res> + extends _$LoginStateCopyWithImpl<$Res> + implements _$$LoginAttemptSuccessCopyWith<$Res> { + __$$LoginAttemptSuccessCopyWithImpl( + _$LoginAttemptSuccess _value, $Res Function(_$LoginAttemptSuccess) _then) + : super(_value, (v) => _then(v as _$LoginAttemptSuccess)); + + @override + _$LoginAttemptSuccess get _value => super._value as _$LoginAttemptSuccess; +} + +/// @nodoc + +class _$_$LoginAttemptSuccess implements _$LoginAttemptSuccess { + const _$_$LoginAttemptSuccess(); + + @override + String toString() { + return 'LoginState.success()'; + } + + @override + bool operator ==(dynamic other) { + return identical(this, other) || (other is _$LoginAttemptSuccess); + } + + @override + int get hashCode => runtimeType.hashCode; + + @override + @optionalTypeArgs + TResult when({ + required TResult Function() initial, + required TResult Function() inProgress, + required TResult Function() success, + required TResult Function(String error) failure, + }) { + return success(); + } + + @override + @optionalTypeArgs + TResult maybeWhen({ + TResult Function()? initial, + TResult Function()? inProgress, + TResult Function()? success, + TResult Function(String error)? failure, + required TResult orElse(), + }) { + if (success != null) { + return success(); + } + return orElse(); + } + + @override + @optionalTypeArgs + TResult map({ + required TResult Function(_$LoginInitial value) initial, + required TResult Function(_$LoginAttemptInProgress value) inProgress, + required TResult Function(_$LoginAttemptSuccess value) success, + required TResult Function(_$LoginAttemptFailure value) failure, + }) { + return success(this); + } + + @override + @optionalTypeArgs + TResult maybeMap({ + TResult Function(_$LoginInitial value)? initial, + TResult Function(_$LoginAttemptInProgress value)? inProgress, + TResult Function(_$LoginAttemptSuccess value)? success, + TResult Function(_$LoginAttemptFailure value)? failure, + required TResult orElse(), + }) { + if (success != null) { + return success(this); + } + return orElse(); + } +} + +abstract class _$LoginAttemptSuccess implements LoginState { + const factory _$LoginAttemptSuccess() = _$_$LoginAttemptSuccess; +} + +/// @nodoc +abstract class _$$LoginAttemptFailureCopyWith<$Res> { + factory _$$LoginAttemptFailureCopyWith(_$LoginAttemptFailure value, + $Res Function(_$LoginAttemptFailure) then) = + __$$LoginAttemptFailureCopyWithImpl<$Res>; + $Res call({String error}); +} + +/// @nodoc +class __$$LoginAttemptFailureCopyWithImpl<$Res> + extends _$LoginStateCopyWithImpl<$Res> + implements _$$LoginAttemptFailureCopyWith<$Res> { + __$$LoginAttemptFailureCopyWithImpl( + _$LoginAttemptFailure _value, $Res Function(_$LoginAttemptFailure) _then) + : super(_value, (v) => _then(v as _$LoginAttemptFailure)); + + @override + _$LoginAttemptFailure get _value => super._value as _$LoginAttemptFailure; + + @override + $Res call({ + Object? error = freezed, + }) { + return _then(_$LoginAttemptFailure( + error: error == freezed + ? _value.error + : error // ignore: cast_nullable_to_non_nullable + as String, + )); + } +} + +/// @nodoc + +class _$_$LoginAttemptFailure implements _$LoginAttemptFailure { + const _$_$LoginAttemptFailure({required this.error}); + + @override + final String error; + + @override + String toString() { + return 'LoginState.failure(error: $error)'; + } + + @override + bool operator ==(dynamic other) { + return identical(this, other) || + (other is _$LoginAttemptFailure && + (identical(other.error, error) || + const DeepCollectionEquality().equals(other.error, error))); + } + + @override + int get hashCode => + runtimeType.hashCode ^ const DeepCollectionEquality().hash(error); + + @JsonKey(ignore: true) + @override + _$$LoginAttemptFailureCopyWith<_$LoginAttemptFailure> get copyWith => + __$$LoginAttemptFailureCopyWithImpl<_$LoginAttemptFailure>( + this, _$identity); + + @override + @optionalTypeArgs + TResult when({ + required TResult Function() initial, + required TResult Function() inProgress, + required TResult Function() success, + required TResult Function(String error) failure, + }) { + return failure(error); + } + + @override + @optionalTypeArgs + TResult maybeWhen({ + TResult Function()? initial, + TResult Function()? inProgress, + TResult Function()? success, + TResult Function(String error)? failure, + required TResult orElse(), + }) { + if (failure != null) { + return failure(error); + } + return orElse(); + } + + @override + @optionalTypeArgs + TResult map({ + required TResult Function(_$LoginInitial value) initial, + required TResult Function(_$LoginAttemptInProgress value) inProgress, + required TResult Function(_$LoginAttemptSuccess value) success, + required TResult Function(_$LoginAttemptFailure value) failure, + }) { + return failure(this); + } + + @override + @optionalTypeArgs + TResult maybeMap({ + TResult Function(_$LoginInitial value)? initial, + TResult Function(_$LoginAttemptInProgress value)? inProgress, + TResult Function(_$LoginAttemptSuccess value)? success, + TResult Function(_$LoginAttemptFailure value)? failure, + required TResult orElse(), + }) { + if (failure != null) { + return failure(this); + } + return orElse(); + } +} + +abstract class _$LoginAttemptFailure implements LoginState { + const factory _$LoginAttemptFailure({required String error}) = + _$_$LoginAttemptFailure; + + String get error => throw _privateConstructorUsedError; + @JsonKey(ignore: true) + _$$LoginAttemptFailureCopyWith<_$LoginAttemptFailure> get copyWith => + throw _privateConstructorUsedError; +} diff --git a/lib/src/presentation/blocs/login_bloc/login_event.dart b/lib/src/presentation/blocs/login_bloc/login_event.dart index 7f5bf51..ba289a5 100644 --- a/lib/src/presentation/blocs/login_bloc/login_event.dart +++ b/lib/src/presentation/blocs/login_bloc/login_event.dart @@ -1,15 +1,10 @@ part of 'login_bloc.dart'; -abstract class LoginEvent {} - -class LoginAttempted extends LoginEvent { - final String username; - final String password; - final bool rememberMe; - - LoginAttempted({ - required this.username, - required this.password, - required this.rememberMe, - }); +@freezed +abstract class LoginEvent with _$LoginEvent { + const factory LoginEvent.loginAttempted({ + required String userName, + required String password, + required bool rememberMe, + }) = _$LoginAttempted; } diff --git a/lib/src/presentation/blocs/login_bloc/login_state.dart b/lib/src/presentation/blocs/login_bloc/login_state.dart index 08786fa..fce1e0a 100644 --- a/lib/src/presentation/blocs/login_bloc/login_state.dart +++ b/lib/src/presentation/blocs/login_bloc/login_state.dart @@ -1,13 +1,10 @@ part of 'login_bloc.dart'; -abstract class LoginState {} - -class LoginAttemptInitial extends LoginState { - final String error; - - LoginAttemptInitial({required this.error}); +@freezed +abstract class LoginState with _$LoginState { + const factory LoginState.initial() = _$LoginInitial; + const factory LoginState.inProgress() = _$LoginAttemptInProgress; + const factory LoginState.success() = _$LoginAttemptSuccess; + const factory LoginState.failure({required String error}) = + _$LoginAttemptFailure; } - -class LoginAttemptInProgress extends LoginState {} - -class LoginAttemptSuccess extends LoginState {} diff --git a/lib/src/presentation/blocs/register_bloc/register_bloc.dart b/lib/src/presentation/blocs/register_bloc/register_bloc.dart index 148fe7a..a606add 100644 --- a/lib/src/presentation/blocs/register_bloc/register_bloc.dart +++ b/lib/src/presentation/blocs/register_bloc/register_bloc.dart @@ -27,7 +27,7 @@ class RegisterBloc extends Bloc { } Stream questionsRequestedRegisterHandler( - _QuestionsRequestedRegister _) async* { + _$QuestionsRequestedRegister _) async* { yield const RegisterState.initialLoadInProgress(); final questions = await repository.getSecurityQuestions(); if (questions.error != null) { @@ -40,7 +40,7 @@ class RegisterBloc extends Bloc { } Stream formSubmittedRegisterHandler( - _FormSubmittedRegister event, + _$FormSubmittedRegister event, ) async* { yield const RegisterState.registrationInProgress(); if (event.passwordFirst != event.passwordSecond) { diff --git a/lib/src/presentation/blocs/register_bloc/register_bloc.freezed.dart b/lib/src/presentation/blocs/register_bloc/register_bloc.freezed.dart index 6dc8ae6..afd8531 100644 --- a/lib/src/presentation/blocs/register_bloc/register_bloc.freezed.dart +++ b/lib/src/presentation/blocs/register_bloc/register_bloc.freezed.dart @@ -16,17 +16,17 @@ final _privateConstructorUsedError = UnsupportedError( class _$RegisterEventTearOff { const _$RegisterEventTearOff(); - _QuestionsRequestedRegister questionsRequested() { - return const _QuestionsRequestedRegister(); + _$QuestionsRequestedRegister questionsRequested() { + return const _$QuestionsRequestedRegister(); } - _FormSubmittedRegister formSubmitted( + _$FormSubmittedRegister formSubmitted( {required List answers, required String ci, required String passwordFirst, required String passwordSecond, required List questions}) { - return _FormSubmittedRegister( + return _$FormSubmittedRegister( answers: answers, ci: ci, passwordFirst: passwordFirst, @@ -60,15 +60,15 @@ mixin _$RegisterEvent { throw _privateConstructorUsedError; @optionalTypeArgs TResult map({ - required TResult Function(_QuestionsRequestedRegister value) + required TResult Function(_$QuestionsRequestedRegister value) questionsRequested, - required TResult Function(_FormSubmittedRegister value) formSubmitted, + required TResult Function(_$FormSubmittedRegister value) formSubmitted, }) => throw _privateConstructorUsedError; @optionalTypeArgs TResult maybeMap({ - TResult Function(_QuestionsRequestedRegister value)? questionsRequested, - TResult Function(_FormSubmittedRegister value)? formSubmitted, + TResult Function(_$QuestionsRequestedRegister value)? questionsRequested, + TResult Function(_$FormSubmittedRegister value)? formSubmitted, required TResult orElse(), }) => throw _privateConstructorUsedError; @@ -92,30 +92,31 @@ class _$RegisterEventCopyWithImpl<$Res> } /// @nodoc -abstract class _$QuestionsRequestedRegisterCopyWith<$Res> { - factory _$QuestionsRequestedRegisterCopyWith( - _QuestionsRequestedRegister value, - $Res Function(_QuestionsRequestedRegister) then) = - __$QuestionsRequestedRegisterCopyWithImpl<$Res>; +abstract class _$$QuestionsRequestedRegisterCopyWith<$Res> { + factory _$$QuestionsRequestedRegisterCopyWith( + _$QuestionsRequestedRegister value, + $Res Function(_$QuestionsRequestedRegister) then) = + __$$QuestionsRequestedRegisterCopyWithImpl<$Res>; } /// @nodoc -class __$QuestionsRequestedRegisterCopyWithImpl<$Res> +class __$$QuestionsRequestedRegisterCopyWithImpl<$Res> extends _$RegisterEventCopyWithImpl<$Res> - implements _$QuestionsRequestedRegisterCopyWith<$Res> { - __$QuestionsRequestedRegisterCopyWithImpl(_QuestionsRequestedRegister _value, - $Res Function(_QuestionsRequestedRegister) _then) - : super(_value, (v) => _then(v as _QuestionsRequestedRegister)); + implements _$$QuestionsRequestedRegisterCopyWith<$Res> { + __$$QuestionsRequestedRegisterCopyWithImpl( + _$QuestionsRequestedRegister _value, + $Res Function(_$QuestionsRequestedRegister) _then) + : super(_value, (v) => _then(v as _$QuestionsRequestedRegister)); @override - _QuestionsRequestedRegister get _value => - super._value as _QuestionsRequestedRegister; + _$QuestionsRequestedRegister get _value => + super._value as _$QuestionsRequestedRegister; } /// @nodoc -class _$_QuestionsRequestedRegister implements _QuestionsRequestedRegister { - const _$_QuestionsRequestedRegister(); +class _$_$QuestionsRequestedRegister implements _$QuestionsRequestedRegister { + const _$_$QuestionsRequestedRegister(); @override String toString() { @@ -124,7 +125,7 @@ class _$_QuestionsRequestedRegister implements _QuestionsRequestedRegister { @override bool operator ==(dynamic other) { - return identical(this, other) || (other is _QuestionsRequestedRegister); + return identical(this, other) || (other is _$QuestionsRequestedRegister); } @override @@ -159,9 +160,9 @@ class _$_QuestionsRequestedRegister implements _QuestionsRequestedRegister { @override @optionalTypeArgs TResult map({ - required TResult Function(_QuestionsRequestedRegister value) + required TResult Function(_$QuestionsRequestedRegister value) questionsRequested, - required TResult Function(_FormSubmittedRegister value) formSubmitted, + required TResult Function(_$FormSubmittedRegister value) formSubmitted, }) { return questionsRequested(this); } @@ -169,8 +170,8 @@ class _$_QuestionsRequestedRegister implements _QuestionsRequestedRegister { @override @optionalTypeArgs TResult maybeMap({ - TResult Function(_QuestionsRequestedRegister value)? questionsRequested, - TResult Function(_FormSubmittedRegister value)? formSubmitted, + TResult Function(_$QuestionsRequestedRegister value)? questionsRequested, + TResult Function(_$FormSubmittedRegister value)? formSubmitted, required TResult orElse(), }) { if (questionsRequested != null) { @@ -180,15 +181,15 @@ class _$_QuestionsRequestedRegister implements _QuestionsRequestedRegister { } } -abstract class _QuestionsRequestedRegister implements RegisterEvent { - const factory _QuestionsRequestedRegister() = _$_QuestionsRequestedRegister; +abstract class _$QuestionsRequestedRegister implements RegisterEvent { + const factory _$QuestionsRequestedRegister() = _$_$QuestionsRequestedRegister; } /// @nodoc -abstract class _$FormSubmittedRegisterCopyWith<$Res> { - factory _$FormSubmittedRegisterCopyWith(_FormSubmittedRegister value, - $Res Function(_FormSubmittedRegister) then) = - __$FormSubmittedRegisterCopyWithImpl<$Res>; +abstract class _$$FormSubmittedRegisterCopyWith<$Res> { + factory _$$FormSubmittedRegisterCopyWith(_$FormSubmittedRegister value, + $Res Function(_$FormSubmittedRegister) then) = + __$$FormSubmittedRegisterCopyWithImpl<$Res>; $Res call( {List answers, String ci, @@ -198,15 +199,15 @@ abstract class _$FormSubmittedRegisterCopyWith<$Res> { } /// @nodoc -class __$FormSubmittedRegisterCopyWithImpl<$Res> +class __$$FormSubmittedRegisterCopyWithImpl<$Res> extends _$RegisterEventCopyWithImpl<$Res> - implements _$FormSubmittedRegisterCopyWith<$Res> { - __$FormSubmittedRegisterCopyWithImpl(_FormSubmittedRegister _value, - $Res Function(_FormSubmittedRegister) _then) - : super(_value, (v) => _then(v as _FormSubmittedRegister)); + implements _$$FormSubmittedRegisterCopyWith<$Res> { + __$$FormSubmittedRegisterCopyWithImpl(_$FormSubmittedRegister _value, + $Res Function(_$FormSubmittedRegister) _then) + : super(_value, (v) => _then(v as _$FormSubmittedRegister)); @override - _FormSubmittedRegister get _value => super._value as _FormSubmittedRegister; + _$FormSubmittedRegister get _value => super._value as _$FormSubmittedRegister; @override $Res call({ @@ -216,7 +217,7 @@ class __$FormSubmittedRegisterCopyWithImpl<$Res> Object? passwordSecond = freezed, Object? questions = freezed, }) { - return _then(_FormSubmittedRegister( + return _then(_$FormSubmittedRegister( answers: answers == freezed ? _value.answers : answers // ignore: cast_nullable_to_non_nullable @@ -243,8 +244,8 @@ class __$FormSubmittedRegisterCopyWithImpl<$Res> /// @nodoc -class _$_FormSubmittedRegister implements _FormSubmittedRegister { - const _$_FormSubmittedRegister( +class _$_$FormSubmittedRegister implements _$FormSubmittedRegister { + const _$_$FormSubmittedRegister( {required this.answers, required this.ci, required this.passwordFirst, @@ -270,7 +271,7 @@ class _$_FormSubmittedRegister implements _FormSubmittedRegister { @override bool operator ==(dynamic other) { return identical(this, other) || - (other is _FormSubmittedRegister && + (other is _$FormSubmittedRegister && (identical(other.answers, answers) || const DeepCollectionEquality() .equals(other.answers, answers)) && @@ -298,8 +299,8 @@ class _$_FormSubmittedRegister implements _FormSubmittedRegister { @JsonKey(ignore: true) @override - _$FormSubmittedRegisterCopyWith<_FormSubmittedRegister> get copyWith => - __$FormSubmittedRegisterCopyWithImpl<_FormSubmittedRegister>( + _$$FormSubmittedRegisterCopyWith<_$FormSubmittedRegister> get copyWith => + __$$FormSubmittedRegisterCopyWithImpl<_$FormSubmittedRegister>( this, _$identity); @override @@ -332,9 +333,9 @@ class _$_FormSubmittedRegister implements _FormSubmittedRegister { @override @optionalTypeArgs TResult map({ - required TResult Function(_QuestionsRequestedRegister value) + required TResult Function(_$QuestionsRequestedRegister value) questionsRequested, - required TResult Function(_FormSubmittedRegister value) formSubmitted, + required TResult Function(_$FormSubmittedRegister value) formSubmitted, }) { return formSubmitted(this); } @@ -342,8 +343,8 @@ class _$_FormSubmittedRegister implements _FormSubmittedRegister { @override @optionalTypeArgs TResult maybeMap({ - TResult Function(_QuestionsRequestedRegister value)? questionsRequested, - TResult Function(_FormSubmittedRegister value)? formSubmitted, + TResult Function(_$QuestionsRequestedRegister value)? questionsRequested, + TResult Function(_$FormSubmittedRegister value)? formSubmitted, required TResult orElse(), }) { if (formSubmitted != null) { @@ -353,13 +354,13 @@ class _$_FormSubmittedRegister implements _FormSubmittedRegister { } } -abstract class _FormSubmittedRegister implements RegisterEvent { - const factory _FormSubmittedRegister( +abstract class _$FormSubmittedRegister implements RegisterEvent { + const factory _$FormSubmittedRegister( {required List answers, required String ci, required String passwordFirst, required String passwordSecond, - required List questions}) = _$_FormSubmittedRegister; + required List questions}) = _$_$FormSubmittedRegister; List get answers => throw _privateConstructorUsedError; String get ci => throw _privateConstructorUsedError; @@ -367,7 +368,7 @@ abstract class _FormSubmittedRegister implements RegisterEvent { String get passwordSecond => throw _privateConstructorUsedError; List get questions => throw _privateConstructorUsedError; @JsonKey(ignore: true) - _$FormSubmittedRegisterCopyWith<_FormSubmittedRegister> get copyWith => + _$$FormSubmittedRegisterCopyWith<_$FormSubmittedRegister> get copyWith => throw _privateConstructorUsedError; } @@ -375,39 +376,39 @@ abstract class _FormSubmittedRegister implements RegisterEvent { class _$RegisterStateTearOff { const _$RegisterStateTearOff(); - _RegisterInitial initial() { - return const _RegisterInitial(); + _$RegisterInitial initial() { + return const _$RegisterInitial(); } - _RegisterLoadInitialDataInProgress initialLoadInProgress() { - return const _RegisterLoadInitialDataInProgress(); + _$RegisterLoadInitialDataInProgress initialLoadInProgress() { + return const _$RegisterLoadInitialDataInProgress(); } - _RegisterLoadInitialDataFailure initialLoadFailure({required String error}) { - return _RegisterLoadInitialDataFailure( + _$RegisterLoadInitialDataFailure initialLoadFailure({required String error}) { + return _$RegisterLoadInitialDataFailure( error: error, ); } - _RegisterLoadInitialDataSuccess initialLoadSuccess( + _$RegisterLoadInitialDataSuccess initialLoadSuccess( {required List questions}) { - return _RegisterLoadInitialDataSuccess( + return _$RegisterLoadInitialDataSuccess( questions: questions, ); } - _RegisterUserInProgress registrationInProgress() { - return const _RegisterUserInProgress(); + _$RegisterUserInProgress registrationInProgress() { + return const _$RegisterUserInProgress(); } - _RegisterUserFailure registrationFailure({required String error}) { - return _RegisterUserFailure( + _$RegisterUserFailure registrationFailure({required String error}) { + return _$RegisterUserFailure( error: error, ); } - _RegisterUserSuccess registrationSuccess({required String userEmail}) { - return _RegisterUserSuccess( + _$RegisterUserSuccess registrationSuccess({required String userEmail}) { + return _$RegisterUserSuccess( userEmail: userEmail, ); } @@ -443,29 +444,31 @@ mixin _$RegisterState { throw _privateConstructorUsedError; @optionalTypeArgs TResult map({ - required TResult Function(_RegisterInitial value) initial, - required TResult Function(_RegisterLoadInitialDataInProgress value) + required TResult Function(_$RegisterInitial value) initial, + required TResult Function(_$RegisterLoadInitialDataInProgress value) initialLoadInProgress, - required TResult Function(_RegisterLoadInitialDataFailure value) + required TResult Function(_$RegisterLoadInitialDataFailure value) initialLoadFailure, - required TResult Function(_RegisterLoadInitialDataSuccess value) + required TResult Function(_$RegisterLoadInitialDataSuccess value) initialLoadSuccess, - required TResult Function(_RegisterUserInProgress value) + required TResult Function(_$RegisterUserInProgress value) registrationInProgress, - required TResult Function(_RegisterUserFailure value) registrationFailure, - required TResult Function(_RegisterUserSuccess value) registrationSuccess, + required TResult Function(_$RegisterUserFailure value) registrationFailure, + required TResult Function(_$RegisterUserSuccess value) registrationSuccess, }) => throw _privateConstructorUsedError; @optionalTypeArgs TResult maybeMap({ - TResult Function(_RegisterInitial value)? initial, - TResult Function(_RegisterLoadInitialDataInProgress value)? + TResult Function(_$RegisterInitial value)? initial, + TResult Function(_$RegisterLoadInitialDataInProgress value)? initialLoadInProgress, - TResult Function(_RegisterLoadInitialDataFailure value)? initialLoadFailure, - TResult Function(_RegisterLoadInitialDataSuccess value)? initialLoadSuccess, - TResult Function(_RegisterUserInProgress value)? registrationInProgress, - TResult Function(_RegisterUserFailure value)? registrationFailure, - TResult Function(_RegisterUserSuccess value)? registrationSuccess, + TResult Function(_$RegisterLoadInitialDataFailure value)? + initialLoadFailure, + TResult Function(_$RegisterLoadInitialDataSuccess value)? + initialLoadSuccess, + TResult Function(_$RegisterUserInProgress value)? registrationInProgress, + TResult Function(_$RegisterUserFailure value)? registrationFailure, + TResult Function(_$RegisterUserSuccess value)? registrationSuccess, required TResult orElse(), }) => throw _privateConstructorUsedError; @@ -489,28 +492,28 @@ class _$RegisterStateCopyWithImpl<$Res> } /// @nodoc -abstract class _$RegisterInitialCopyWith<$Res> { - factory _$RegisterInitialCopyWith( - _RegisterInitial value, $Res Function(_RegisterInitial) then) = - __$RegisterInitialCopyWithImpl<$Res>; +abstract class _$$RegisterInitialCopyWith<$Res> { + factory _$$RegisterInitialCopyWith( + _$RegisterInitial value, $Res Function(_$RegisterInitial) then) = + __$$RegisterInitialCopyWithImpl<$Res>; } /// @nodoc -class __$RegisterInitialCopyWithImpl<$Res> +class __$$RegisterInitialCopyWithImpl<$Res> extends _$RegisterStateCopyWithImpl<$Res> - implements _$RegisterInitialCopyWith<$Res> { - __$RegisterInitialCopyWithImpl( - _RegisterInitial _value, $Res Function(_RegisterInitial) _then) - : super(_value, (v) => _then(v as _RegisterInitial)); + implements _$$RegisterInitialCopyWith<$Res> { + __$$RegisterInitialCopyWithImpl( + _$RegisterInitial _value, $Res Function(_$RegisterInitial) _then) + : super(_value, (v) => _then(v as _$RegisterInitial)); @override - _RegisterInitial get _value => super._value as _RegisterInitial; + _$RegisterInitial get _value => super._value as _$RegisterInitial; } /// @nodoc -class _$_RegisterInitial implements _RegisterInitial { - const _$_RegisterInitial(); +class _$_$RegisterInitial implements _$RegisterInitial { + const _$_$RegisterInitial(); @override String toString() { @@ -519,7 +522,7 @@ class _$_RegisterInitial implements _RegisterInitial { @override bool operator ==(dynamic other) { - return identical(this, other) || (other is _RegisterInitial); + return identical(this, other) || (other is _$RegisterInitial); } @override @@ -560,17 +563,17 @@ class _$_RegisterInitial implements _RegisterInitial { @override @optionalTypeArgs TResult map({ - required TResult Function(_RegisterInitial value) initial, - required TResult Function(_RegisterLoadInitialDataInProgress value) + required TResult Function(_$RegisterInitial value) initial, + required TResult Function(_$RegisterLoadInitialDataInProgress value) initialLoadInProgress, - required TResult Function(_RegisterLoadInitialDataFailure value) + required TResult Function(_$RegisterLoadInitialDataFailure value) initialLoadFailure, - required TResult Function(_RegisterLoadInitialDataSuccess value) + required TResult Function(_$RegisterLoadInitialDataSuccess value) initialLoadSuccess, - required TResult Function(_RegisterUserInProgress value) + required TResult Function(_$RegisterUserInProgress value) registrationInProgress, - required TResult Function(_RegisterUserFailure value) registrationFailure, - required TResult Function(_RegisterUserSuccess value) registrationSuccess, + required TResult Function(_$RegisterUserFailure value) registrationFailure, + required TResult Function(_$RegisterUserSuccess value) registrationSuccess, }) { return initial(this); } @@ -578,14 +581,16 @@ class _$_RegisterInitial implements _RegisterInitial { @override @optionalTypeArgs TResult maybeMap({ - TResult Function(_RegisterInitial value)? initial, - TResult Function(_RegisterLoadInitialDataInProgress value)? + TResult Function(_$RegisterInitial value)? initial, + TResult Function(_$RegisterLoadInitialDataInProgress value)? initialLoadInProgress, - TResult Function(_RegisterLoadInitialDataFailure value)? initialLoadFailure, - TResult Function(_RegisterLoadInitialDataSuccess value)? initialLoadSuccess, - TResult Function(_RegisterUserInProgress value)? registrationInProgress, - TResult Function(_RegisterUserFailure value)? registrationFailure, - TResult Function(_RegisterUserSuccess value)? registrationSuccess, + TResult Function(_$RegisterLoadInitialDataFailure value)? + initialLoadFailure, + TResult Function(_$RegisterLoadInitialDataSuccess value)? + initialLoadSuccess, + TResult Function(_$RegisterUserInProgress value)? registrationInProgress, + TResult Function(_$RegisterUserFailure value)? registrationFailure, + TResult Function(_$RegisterUserSuccess value)? registrationSuccess, required TResult orElse(), }) { if (initial != null) { @@ -595,37 +600,37 @@ class _$_RegisterInitial implements _RegisterInitial { } } -abstract class _RegisterInitial implements RegisterState { - const factory _RegisterInitial() = _$_RegisterInitial; +abstract class _$RegisterInitial implements RegisterState { + const factory _$RegisterInitial() = _$_$RegisterInitial; } /// @nodoc -abstract class _$RegisterLoadInitialDataInProgressCopyWith<$Res> { - factory _$RegisterLoadInitialDataInProgressCopyWith( - _RegisterLoadInitialDataInProgress value, - $Res Function(_RegisterLoadInitialDataInProgress) then) = - __$RegisterLoadInitialDataInProgressCopyWithImpl<$Res>; +abstract class _$$RegisterLoadInitialDataInProgressCopyWith<$Res> { + factory _$$RegisterLoadInitialDataInProgressCopyWith( + _$RegisterLoadInitialDataInProgress value, + $Res Function(_$RegisterLoadInitialDataInProgress) then) = + __$$RegisterLoadInitialDataInProgressCopyWithImpl<$Res>; } /// @nodoc -class __$RegisterLoadInitialDataInProgressCopyWithImpl<$Res> +class __$$RegisterLoadInitialDataInProgressCopyWithImpl<$Res> extends _$RegisterStateCopyWithImpl<$Res> - implements _$RegisterLoadInitialDataInProgressCopyWith<$Res> { - __$RegisterLoadInitialDataInProgressCopyWithImpl( - _RegisterLoadInitialDataInProgress _value, - $Res Function(_RegisterLoadInitialDataInProgress) _then) - : super(_value, (v) => _then(v as _RegisterLoadInitialDataInProgress)); + implements _$$RegisterLoadInitialDataInProgressCopyWith<$Res> { + __$$RegisterLoadInitialDataInProgressCopyWithImpl( + _$RegisterLoadInitialDataInProgress _value, + $Res Function(_$RegisterLoadInitialDataInProgress) _then) + : super(_value, (v) => _then(v as _$RegisterLoadInitialDataInProgress)); @override - _RegisterLoadInitialDataInProgress get _value => - super._value as _RegisterLoadInitialDataInProgress; + _$RegisterLoadInitialDataInProgress get _value => + super._value as _$RegisterLoadInitialDataInProgress; } /// @nodoc -class _$_RegisterLoadInitialDataInProgress - implements _RegisterLoadInitialDataInProgress { - const _$_RegisterLoadInitialDataInProgress(); +class _$_$RegisterLoadInitialDataInProgress + implements _$RegisterLoadInitialDataInProgress { + const _$_$RegisterLoadInitialDataInProgress(); @override String toString() { @@ -635,7 +640,7 @@ class _$_RegisterLoadInitialDataInProgress @override bool operator ==(dynamic other) { return identical(this, other) || - (other is _RegisterLoadInitialDataInProgress); + (other is _$RegisterLoadInitialDataInProgress); } @override @@ -676,17 +681,17 @@ class _$_RegisterLoadInitialDataInProgress @override @optionalTypeArgs TResult map({ - required TResult Function(_RegisterInitial value) initial, - required TResult Function(_RegisterLoadInitialDataInProgress value) + required TResult Function(_$RegisterInitial value) initial, + required TResult Function(_$RegisterLoadInitialDataInProgress value) initialLoadInProgress, - required TResult Function(_RegisterLoadInitialDataFailure value) + required TResult Function(_$RegisterLoadInitialDataFailure value) initialLoadFailure, - required TResult Function(_RegisterLoadInitialDataSuccess value) + required TResult Function(_$RegisterLoadInitialDataSuccess value) initialLoadSuccess, - required TResult Function(_RegisterUserInProgress value) + required TResult Function(_$RegisterUserInProgress value) registrationInProgress, - required TResult Function(_RegisterUserFailure value) registrationFailure, - required TResult Function(_RegisterUserSuccess value) registrationSuccess, + required TResult Function(_$RegisterUserFailure value) registrationFailure, + required TResult Function(_$RegisterUserSuccess value) registrationSuccess, }) { return initialLoadInProgress(this); } @@ -694,14 +699,16 @@ class _$_RegisterLoadInitialDataInProgress @override @optionalTypeArgs TResult maybeMap({ - TResult Function(_RegisterInitial value)? initial, - TResult Function(_RegisterLoadInitialDataInProgress value)? + TResult Function(_$RegisterInitial value)? initial, + TResult Function(_$RegisterLoadInitialDataInProgress value)? initialLoadInProgress, - TResult Function(_RegisterLoadInitialDataFailure value)? initialLoadFailure, - TResult Function(_RegisterLoadInitialDataSuccess value)? initialLoadSuccess, - TResult Function(_RegisterUserInProgress value)? registrationInProgress, - TResult Function(_RegisterUserFailure value)? registrationFailure, - TResult Function(_RegisterUserSuccess value)? registrationSuccess, + TResult Function(_$RegisterLoadInitialDataFailure value)? + initialLoadFailure, + TResult Function(_$RegisterLoadInitialDataSuccess value)? + initialLoadSuccess, + TResult Function(_$RegisterUserInProgress value)? registrationInProgress, + TResult Function(_$RegisterUserFailure value)? registrationFailure, + TResult Function(_$RegisterUserSuccess value)? registrationSuccess, required TResult orElse(), }) { if (initialLoadInProgress != null) { @@ -711,38 +718,38 @@ class _$_RegisterLoadInitialDataInProgress } } -abstract class _RegisterLoadInitialDataInProgress implements RegisterState { - const factory _RegisterLoadInitialDataInProgress() = - _$_RegisterLoadInitialDataInProgress; +abstract class _$RegisterLoadInitialDataInProgress implements RegisterState { + const factory _$RegisterLoadInitialDataInProgress() = + _$_$RegisterLoadInitialDataInProgress; } /// @nodoc -abstract class _$RegisterLoadInitialDataFailureCopyWith<$Res> { - factory _$RegisterLoadInitialDataFailureCopyWith( - _RegisterLoadInitialDataFailure value, - $Res Function(_RegisterLoadInitialDataFailure) then) = - __$RegisterLoadInitialDataFailureCopyWithImpl<$Res>; +abstract class _$$RegisterLoadInitialDataFailureCopyWith<$Res> { + factory _$$RegisterLoadInitialDataFailureCopyWith( + _$RegisterLoadInitialDataFailure value, + $Res Function(_$RegisterLoadInitialDataFailure) then) = + __$$RegisterLoadInitialDataFailureCopyWithImpl<$Res>; $Res call({String error}); } /// @nodoc -class __$RegisterLoadInitialDataFailureCopyWithImpl<$Res> +class __$$RegisterLoadInitialDataFailureCopyWithImpl<$Res> extends _$RegisterStateCopyWithImpl<$Res> - implements _$RegisterLoadInitialDataFailureCopyWith<$Res> { - __$RegisterLoadInitialDataFailureCopyWithImpl( - _RegisterLoadInitialDataFailure _value, - $Res Function(_RegisterLoadInitialDataFailure) _then) - : super(_value, (v) => _then(v as _RegisterLoadInitialDataFailure)); + implements _$$RegisterLoadInitialDataFailureCopyWith<$Res> { + __$$RegisterLoadInitialDataFailureCopyWithImpl( + _$RegisterLoadInitialDataFailure _value, + $Res Function(_$RegisterLoadInitialDataFailure) _then) + : super(_value, (v) => _then(v as _$RegisterLoadInitialDataFailure)); @override - _RegisterLoadInitialDataFailure get _value => - super._value as _RegisterLoadInitialDataFailure; + _$RegisterLoadInitialDataFailure get _value => + super._value as _$RegisterLoadInitialDataFailure; @override $Res call({ Object? error = freezed, }) { - return _then(_RegisterLoadInitialDataFailure( + return _then(_$RegisterLoadInitialDataFailure( error: error == freezed ? _value.error : error // ignore: cast_nullable_to_non_nullable @@ -753,9 +760,9 @@ class __$RegisterLoadInitialDataFailureCopyWithImpl<$Res> /// @nodoc -class _$_RegisterLoadInitialDataFailure - implements _RegisterLoadInitialDataFailure { - const _$_RegisterLoadInitialDataFailure({required this.error}); +class _$_$RegisterLoadInitialDataFailure + implements _$RegisterLoadInitialDataFailure { + const _$_$RegisterLoadInitialDataFailure({required this.error}); @override final String error; @@ -768,7 +775,7 @@ class _$_RegisterLoadInitialDataFailure @override bool operator ==(dynamic other) { return identical(this, other) || - (other is _RegisterLoadInitialDataFailure && + (other is _$RegisterLoadInitialDataFailure && (identical(other.error, error) || const DeepCollectionEquality().equals(other.error, error))); } @@ -779,9 +786,9 @@ class _$_RegisterLoadInitialDataFailure @JsonKey(ignore: true) @override - _$RegisterLoadInitialDataFailureCopyWith<_RegisterLoadInitialDataFailure> - get copyWith => __$RegisterLoadInitialDataFailureCopyWithImpl< - _RegisterLoadInitialDataFailure>(this, _$identity); + _$$RegisterLoadInitialDataFailureCopyWith<_$RegisterLoadInitialDataFailure> + get copyWith => __$$RegisterLoadInitialDataFailureCopyWithImpl< + _$RegisterLoadInitialDataFailure>(this, _$identity); @override @optionalTypeArgs @@ -818,17 +825,17 @@ class _$_RegisterLoadInitialDataFailure @override @optionalTypeArgs TResult map({ - required TResult Function(_RegisterInitial value) initial, - required TResult Function(_RegisterLoadInitialDataInProgress value) + required TResult Function(_$RegisterInitial value) initial, + required TResult Function(_$RegisterLoadInitialDataInProgress value) initialLoadInProgress, - required TResult Function(_RegisterLoadInitialDataFailure value) + required TResult Function(_$RegisterLoadInitialDataFailure value) initialLoadFailure, - required TResult Function(_RegisterLoadInitialDataSuccess value) + required TResult Function(_$RegisterLoadInitialDataSuccess value) initialLoadSuccess, - required TResult Function(_RegisterUserInProgress value) + required TResult Function(_$RegisterUserInProgress value) registrationInProgress, - required TResult Function(_RegisterUserFailure value) registrationFailure, - required TResult Function(_RegisterUserSuccess value) registrationSuccess, + required TResult Function(_$RegisterUserFailure value) registrationFailure, + required TResult Function(_$RegisterUserSuccess value) registrationSuccess, }) { return initialLoadFailure(this); } @@ -836,14 +843,16 @@ class _$_RegisterLoadInitialDataFailure @override @optionalTypeArgs TResult maybeMap({ - TResult Function(_RegisterInitial value)? initial, - TResult Function(_RegisterLoadInitialDataInProgress value)? + TResult Function(_$RegisterInitial value)? initial, + TResult Function(_$RegisterLoadInitialDataInProgress value)? initialLoadInProgress, - TResult Function(_RegisterLoadInitialDataFailure value)? initialLoadFailure, - TResult Function(_RegisterLoadInitialDataSuccess value)? initialLoadSuccess, - TResult Function(_RegisterUserInProgress value)? registrationInProgress, - TResult Function(_RegisterUserFailure value)? registrationFailure, - TResult Function(_RegisterUserSuccess value)? registrationSuccess, + TResult Function(_$RegisterLoadInitialDataFailure value)? + initialLoadFailure, + TResult Function(_$RegisterLoadInitialDataSuccess value)? + initialLoadSuccess, + TResult Function(_$RegisterUserInProgress value)? registrationInProgress, + TResult Function(_$RegisterUserFailure value)? registrationFailure, + TResult Function(_$RegisterUserSuccess value)? registrationSuccess, required TResult orElse(), }) { if (initialLoadFailure != null) { @@ -853,43 +862,43 @@ class _$_RegisterLoadInitialDataFailure } } -abstract class _RegisterLoadInitialDataFailure implements RegisterState { - const factory _RegisterLoadInitialDataFailure({required String error}) = - _$_RegisterLoadInitialDataFailure; +abstract class _$RegisterLoadInitialDataFailure implements RegisterState { + const factory _$RegisterLoadInitialDataFailure({required String error}) = + _$_$RegisterLoadInitialDataFailure; String get error => throw _privateConstructorUsedError; @JsonKey(ignore: true) - _$RegisterLoadInitialDataFailureCopyWith<_RegisterLoadInitialDataFailure> + _$$RegisterLoadInitialDataFailureCopyWith<_$RegisterLoadInitialDataFailure> get copyWith => throw _privateConstructorUsedError; } /// @nodoc -abstract class _$RegisterLoadInitialDataSuccessCopyWith<$Res> { - factory _$RegisterLoadInitialDataSuccessCopyWith( - _RegisterLoadInitialDataSuccess value, - $Res Function(_RegisterLoadInitialDataSuccess) then) = - __$RegisterLoadInitialDataSuccessCopyWithImpl<$Res>; +abstract class _$$RegisterLoadInitialDataSuccessCopyWith<$Res> { + factory _$$RegisterLoadInitialDataSuccessCopyWith( + _$RegisterLoadInitialDataSuccess value, + $Res Function(_$RegisterLoadInitialDataSuccess) then) = + __$$RegisterLoadInitialDataSuccessCopyWithImpl<$Res>; $Res call({List questions}); } /// @nodoc -class __$RegisterLoadInitialDataSuccessCopyWithImpl<$Res> +class __$$RegisterLoadInitialDataSuccessCopyWithImpl<$Res> extends _$RegisterStateCopyWithImpl<$Res> - implements _$RegisterLoadInitialDataSuccessCopyWith<$Res> { - __$RegisterLoadInitialDataSuccessCopyWithImpl( - _RegisterLoadInitialDataSuccess _value, - $Res Function(_RegisterLoadInitialDataSuccess) _then) - : super(_value, (v) => _then(v as _RegisterLoadInitialDataSuccess)); + implements _$$RegisterLoadInitialDataSuccessCopyWith<$Res> { + __$$RegisterLoadInitialDataSuccessCopyWithImpl( + _$RegisterLoadInitialDataSuccess _value, + $Res Function(_$RegisterLoadInitialDataSuccess) _then) + : super(_value, (v) => _then(v as _$RegisterLoadInitialDataSuccess)); @override - _RegisterLoadInitialDataSuccess get _value => - super._value as _RegisterLoadInitialDataSuccess; + _$RegisterLoadInitialDataSuccess get _value => + super._value as _$RegisterLoadInitialDataSuccess; @override $Res call({ Object? questions = freezed, }) { - return _then(_RegisterLoadInitialDataSuccess( + return _then(_$RegisterLoadInitialDataSuccess( questions: questions == freezed ? _value.questions : questions // ignore: cast_nullable_to_non_nullable @@ -900,9 +909,9 @@ class __$RegisterLoadInitialDataSuccessCopyWithImpl<$Res> /// @nodoc -class _$_RegisterLoadInitialDataSuccess - implements _RegisterLoadInitialDataSuccess { - const _$_RegisterLoadInitialDataSuccess({required this.questions}); +class _$_$RegisterLoadInitialDataSuccess + implements _$RegisterLoadInitialDataSuccess { + const _$_$RegisterLoadInitialDataSuccess({required this.questions}); @override final List questions; @@ -915,7 +924,7 @@ class _$_RegisterLoadInitialDataSuccess @override bool operator ==(dynamic other) { return identical(this, other) || - (other is _RegisterLoadInitialDataSuccess && + (other is _$RegisterLoadInitialDataSuccess && (identical(other.questions, questions) || const DeepCollectionEquality() .equals(other.questions, questions))); @@ -927,9 +936,9 @@ class _$_RegisterLoadInitialDataSuccess @JsonKey(ignore: true) @override - _$RegisterLoadInitialDataSuccessCopyWith<_RegisterLoadInitialDataSuccess> - get copyWith => __$RegisterLoadInitialDataSuccessCopyWithImpl< - _RegisterLoadInitialDataSuccess>(this, _$identity); + _$$RegisterLoadInitialDataSuccessCopyWith<_$RegisterLoadInitialDataSuccess> + get copyWith => __$$RegisterLoadInitialDataSuccessCopyWithImpl< + _$RegisterLoadInitialDataSuccess>(this, _$identity); @override @optionalTypeArgs @@ -966,17 +975,17 @@ class _$_RegisterLoadInitialDataSuccess @override @optionalTypeArgs TResult map({ - required TResult Function(_RegisterInitial value) initial, - required TResult Function(_RegisterLoadInitialDataInProgress value) + required TResult Function(_$RegisterInitial value) initial, + required TResult Function(_$RegisterLoadInitialDataInProgress value) initialLoadInProgress, - required TResult Function(_RegisterLoadInitialDataFailure value) + required TResult Function(_$RegisterLoadInitialDataFailure value) initialLoadFailure, - required TResult Function(_RegisterLoadInitialDataSuccess value) + required TResult Function(_$RegisterLoadInitialDataSuccess value) initialLoadSuccess, - required TResult Function(_RegisterUserInProgress value) + required TResult Function(_$RegisterUserInProgress value) registrationInProgress, - required TResult Function(_RegisterUserFailure value) registrationFailure, - required TResult Function(_RegisterUserSuccess value) registrationSuccess, + required TResult Function(_$RegisterUserFailure value) registrationFailure, + required TResult Function(_$RegisterUserSuccess value) registrationSuccess, }) { return initialLoadSuccess(this); } @@ -984,14 +993,16 @@ class _$_RegisterLoadInitialDataSuccess @override @optionalTypeArgs TResult maybeMap({ - TResult Function(_RegisterInitial value)? initial, - TResult Function(_RegisterLoadInitialDataInProgress value)? + TResult Function(_$RegisterInitial value)? initial, + TResult Function(_$RegisterLoadInitialDataInProgress value)? initialLoadInProgress, - TResult Function(_RegisterLoadInitialDataFailure value)? initialLoadFailure, - TResult Function(_RegisterLoadInitialDataSuccess value)? initialLoadSuccess, - TResult Function(_RegisterUserInProgress value)? registrationInProgress, - TResult Function(_RegisterUserFailure value)? registrationFailure, - TResult Function(_RegisterUserSuccess value)? registrationSuccess, + TResult Function(_$RegisterLoadInitialDataFailure value)? + initialLoadFailure, + TResult Function(_$RegisterLoadInitialDataSuccess value)? + initialLoadSuccess, + TResult Function(_$RegisterUserInProgress value)? registrationInProgress, + TResult Function(_$RegisterUserFailure value)? registrationFailure, + TResult Function(_$RegisterUserSuccess value)? registrationSuccess, required TResult orElse(), }) { if (initialLoadSuccess != null) { @@ -1001,39 +1012,40 @@ class _$_RegisterLoadInitialDataSuccess } } -abstract class _RegisterLoadInitialDataSuccess implements RegisterState { - const factory _RegisterLoadInitialDataSuccess( - {required List questions}) = _$_RegisterLoadInitialDataSuccess; +abstract class _$RegisterLoadInitialDataSuccess implements RegisterState { + const factory _$RegisterLoadInitialDataSuccess( + {required List questions}) = _$_$RegisterLoadInitialDataSuccess; List get questions => throw _privateConstructorUsedError; @JsonKey(ignore: true) - _$RegisterLoadInitialDataSuccessCopyWith<_RegisterLoadInitialDataSuccess> + _$$RegisterLoadInitialDataSuccessCopyWith<_$RegisterLoadInitialDataSuccess> get copyWith => throw _privateConstructorUsedError; } /// @nodoc -abstract class _$RegisterUserInProgressCopyWith<$Res> { - factory _$RegisterUserInProgressCopyWith(_RegisterUserInProgress value, - $Res Function(_RegisterUserInProgress) then) = - __$RegisterUserInProgressCopyWithImpl<$Res>; +abstract class _$$RegisterUserInProgressCopyWith<$Res> { + factory _$$RegisterUserInProgressCopyWith(_$RegisterUserInProgress value, + $Res Function(_$RegisterUserInProgress) then) = + __$$RegisterUserInProgressCopyWithImpl<$Res>; } /// @nodoc -class __$RegisterUserInProgressCopyWithImpl<$Res> +class __$$RegisterUserInProgressCopyWithImpl<$Res> extends _$RegisterStateCopyWithImpl<$Res> - implements _$RegisterUserInProgressCopyWith<$Res> { - __$RegisterUserInProgressCopyWithImpl(_RegisterUserInProgress _value, - $Res Function(_RegisterUserInProgress) _then) - : super(_value, (v) => _then(v as _RegisterUserInProgress)); + implements _$$RegisterUserInProgressCopyWith<$Res> { + __$$RegisterUserInProgressCopyWithImpl(_$RegisterUserInProgress _value, + $Res Function(_$RegisterUserInProgress) _then) + : super(_value, (v) => _then(v as _$RegisterUserInProgress)); @override - _RegisterUserInProgress get _value => super._value as _RegisterUserInProgress; + _$RegisterUserInProgress get _value => + super._value as _$RegisterUserInProgress; } /// @nodoc -class _$_RegisterUserInProgress implements _RegisterUserInProgress { - const _$_RegisterUserInProgress(); +class _$_$RegisterUserInProgress implements _$RegisterUserInProgress { + const _$_$RegisterUserInProgress(); @override String toString() { @@ -1042,7 +1054,7 @@ class _$_RegisterUserInProgress implements _RegisterUserInProgress { @override bool operator ==(dynamic other) { - return identical(this, other) || (other is _RegisterUserInProgress); + return identical(this, other) || (other is _$RegisterUserInProgress); } @override @@ -1083,17 +1095,17 @@ class _$_RegisterUserInProgress implements _RegisterUserInProgress { @override @optionalTypeArgs TResult map({ - required TResult Function(_RegisterInitial value) initial, - required TResult Function(_RegisterLoadInitialDataInProgress value) + required TResult Function(_$RegisterInitial value) initial, + required TResult Function(_$RegisterLoadInitialDataInProgress value) initialLoadInProgress, - required TResult Function(_RegisterLoadInitialDataFailure value) + required TResult Function(_$RegisterLoadInitialDataFailure value) initialLoadFailure, - required TResult Function(_RegisterLoadInitialDataSuccess value) + required TResult Function(_$RegisterLoadInitialDataSuccess value) initialLoadSuccess, - required TResult Function(_RegisterUserInProgress value) + required TResult Function(_$RegisterUserInProgress value) registrationInProgress, - required TResult Function(_RegisterUserFailure value) registrationFailure, - required TResult Function(_RegisterUserSuccess value) registrationSuccess, + required TResult Function(_$RegisterUserFailure value) registrationFailure, + required TResult Function(_$RegisterUserSuccess value) registrationSuccess, }) { return registrationInProgress(this); } @@ -1101,14 +1113,16 @@ class _$_RegisterUserInProgress implements _RegisterUserInProgress { @override @optionalTypeArgs TResult maybeMap({ - TResult Function(_RegisterInitial value)? initial, - TResult Function(_RegisterLoadInitialDataInProgress value)? + TResult Function(_$RegisterInitial value)? initial, + TResult Function(_$RegisterLoadInitialDataInProgress value)? initialLoadInProgress, - TResult Function(_RegisterLoadInitialDataFailure value)? initialLoadFailure, - TResult Function(_RegisterLoadInitialDataSuccess value)? initialLoadSuccess, - TResult Function(_RegisterUserInProgress value)? registrationInProgress, - TResult Function(_RegisterUserFailure value)? registrationFailure, - TResult Function(_RegisterUserSuccess value)? registrationSuccess, + TResult Function(_$RegisterLoadInitialDataFailure value)? + initialLoadFailure, + TResult Function(_$RegisterLoadInitialDataSuccess value)? + initialLoadSuccess, + TResult Function(_$RegisterUserInProgress value)? registrationInProgress, + TResult Function(_$RegisterUserFailure value)? registrationFailure, + TResult Function(_$RegisterUserSuccess value)? registrationSuccess, required TResult orElse(), }) { if (registrationInProgress != null) { @@ -1118,34 +1132,34 @@ class _$_RegisterUserInProgress implements _RegisterUserInProgress { } } -abstract class _RegisterUserInProgress implements RegisterState { - const factory _RegisterUserInProgress() = _$_RegisterUserInProgress; +abstract class _$RegisterUserInProgress implements RegisterState { + const factory _$RegisterUserInProgress() = _$_$RegisterUserInProgress; } /// @nodoc -abstract class _$RegisterUserFailureCopyWith<$Res> { - factory _$RegisterUserFailureCopyWith(_RegisterUserFailure value, - $Res Function(_RegisterUserFailure) then) = - __$RegisterUserFailureCopyWithImpl<$Res>; +abstract class _$$RegisterUserFailureCopyWith<$Res> { + factory _$$RegisterUserFailureCopyWith(_$RegisterUserFailure value, + $Res Function(_$RegisterUserFailure) then) = + __$$RegisterUserFailureCopyWithImpl<$Res>; $Res call({String error}); } /// @nodoc -class __$RegisterUserFailureCopyWithImpl<$Res> +class __$$RegisterUserFailureCopyWithImpl<$Res> extends _$RegisterStateCopyWithImpl<$Res> - implements _$RegisterUserFailureCopyWith<$Res> { - __$RegisterUserFailureCopyWithImpl( - _RegisterUserFailure _value, $Res Function(_RegisterUserFailure) _then) - : super(_value, (v) => _then(v as _RegisterUserFailure)); + implements _$$RegisterUserFailureCopyWith<$Res> { + __$$RegisterUserFailureCopyWithImpl( + _$RegisterUserFailure _value, $Res Function(_$RegisterUserFailure) _then) + : super(_value, (v) => _then(v as _$RegisterUserFailure)); @override - _RegisterUserFailure get _value => super._value as _RegisterUserFailure; + _$RegisterUserFailure get _value => super._value as _$RegisterUserFailure; @override $Res call({ Object? error = freezed, }) { - return _then(_RegisterUserFailure( + return _then(_$RegisterUserFailure( error: error == freezed ? _value.error : error // ignore: cast_nullable_to_non_nullable @@ -1156,8 +1170,8 @@ class __$RegisterUserFailureCopyWithImpl<$Res> /// @nodoc -class _$_RegisterUserFailure implements _RegisterUserFailure { - const _$_RegisterUserFailure({required this.error}); +class _$_$RegisterUserFailure implements _$RegisterUserFailure { + const _$_$RegisterUserFailure({required this.error}); @override final String error; @@ -1170,7 +1184,7 @@ class _$_RegisterUserFailure implements _RegisterUserFailure { @override bool operator ==(dynamic other) { return identical(this, other) || - (other is _RegisterUserFailure && + (other is _$RegisterUserFailure && (identical(other.error, error) || const DeepCollectionEquality().equals(other.error, error))); } @@ -1181,8 +1195,8 @@ class _$_RegisterUserFailure implements _RegisterUserFailure { @JsonKey(ignore: true) @override - _$RegisterUserFailureCopyWith<_RegisterUserFailure> get copyWith => - __$RegisterUserFailureCopyWithImpl<_RegisterUserFailure>( + _$$RegisterUserFailureCopyWith<_$RegisterUserFailure> get copyWith => + __$$RegisterUserFailureCopyWithImpl<_$RegisterUserFailure>( this, _$identity); @override @@ -1220,17 +1234,17 @@ class _$_RegisterUserFailure implements _RegisterUserFailure { @override @optionalTypeArgs TResult map({ - required TResult Function(_RegisterInitial value) initial, - required TResult Function(_RegisterLoadInitialDataInProgress value) + required TResult Function(_$RegisterInitial value) initial, + required TResult Function(_$RegisterLoadInitialDataInProgress value) initialLoadInProgress, - required TResult Function(_RegisterLoadInitialDataFailure value) + required TResult Function(_$RegisterLoadInitialDataFailure value) initialLoadFailure, - required TResult Function(_RegisterLoadInitialDataSuccess value) + required TResult Function(_$RegisterLoadInitialDataSuccess value) initialLoadSuccess, - required TResult Function(_RegisterUserInProgress value) + required TResult Function(_$RegisterUserInProgress value) registrationInProgress, - required TResult Function(_RegisterUserFailure value) registrationFailure, - required TResult Function(_RegisterUserSuccess value) registrationSuccess, + required TResult Function(_$RegisterUserFailure value) registrationFailure, + required TResult Function(_$RegisterUserSuccess value) registrationSuccess, }) { return registrationFailure(this); } @@ -1238,14 +1252,16 @@ class _$_RegisterUserFailure implements _RegisterUserFailure { @override @optionalTypeArgs TResult maybeMap({ - TResult Function(_RegisterInitial value)? initial, - TResult Function(_RegisterLoadInitialDataInProgress value)? + TResult Function(_$RegisterInitial value)? initial, + TResult Function(_$RegisterLoadInitialDataInProgress value)? initialLoadInProgress, - TResult Function(_RegisterLoadInitialDataFailure value)? initialLoadFailure, - TResult Function(_RegisterLoadInitialDataSuccess value)? initialLoadSuccess, - TResult Function(_RegisterUserInProgress value)? registrationInProgress, - TResult Function(_RegisterUserFailure value)? registrationFailure, - TResult Function(_RegisterUserSuccess value)? registrationSuccess, + TResult Function(_$RegisterLoadInitialDataFailure value)? + initialLoadFailure, + TResult Function(_$RegisterLoadInitialDataSuccess value)? + initialLoadSuccess, + TResult Function(_$RegisterUserInProgress value)? registrationInProgress, + TResult Function(_$RegisterUserFailure value)? registrationFailure, + TResult Function(_$RegisterUserSuccess value)? registrationSuccess, required TResult orElse(), }) { if (registrationFailure != null) { @@ -1255,40 +1271,40 @@ class _$_RegisterUserFailure implements _RegisterUserFailure { } } -abstract class _RegisterUserFailure implements RegisterState { - const factory _RegisterUserFailure({required String error}) = - _$_RegisterUserFailure; +abstract class _$RegisterUserFailure implements RegisterState { + const factory _$RegisterUserFailure({required String error}) = + _$_$RegisterUserFailure; String get error => throw _privateConstructorUsedError; @JsonKey(ignore: true) - _$RegisterUserFailureCopyWith<_RegisterUserFailure> get copyWith => + _$$RegisterUserFailureCopyWith<_$RegisterUserFailure> get copyWith => throw _privateConstructorUsedError; } /// @nodoc -abstract class _$RegisterUserSuccessCopyWith<$Res> { - factory _$RegisterUserSuccessCopyWith(_RegisterUserSuccess value, - $Res Function(_RegisterUserSuccess) then) = - __$RegisterUserSuccessCopyWithImpl<$Res>; +abstract class _$$RegisterUserSuccessCopyWith<$Res> { + factory _$$RegisterUserSuccessCopyWith(_$RegisterUserSuccess value, + $Res Function(_$RegisterUserSuccess) then) = + __$$RegisterUserSuccessCopyWithImpl<$Res>; $Res call({String userEmail}); } /// @nodoc -class __$RegisterUserSuccessCopyWithImpl<$Res> +class __$$RegisterUserSuccessCopyWithImpl<$Res> extends _$RegisterStateCopyWithImpl<$Res> - implements _$RegisterUserSuccessCopyWith<$Res> { - __$RegisterUserSuccessCopyWithImpl( - _RegisterUserSuccess _value, $Res Function(_RegisterUserSuccess) _then) - : super(_value, (v) => _then(v as _RegisterUserSuccess)); + implements _$$RegisterUserSuccessCopyWith<$Res> { + __$$RegisterUserSuccessCopyWithImpl( + _$RegisterUserSuccess _value, $Res Function(_$RegisterUserSuccess) _then) + : super(_value, (v) => _then(v as _$RegisterUserSuccess)); @override - _RegisterUserSuccess get _value => super._value as _RegisterUserSuccess; + _$RegisterUserSuccess get _value => super._value as _$RegisterUserSuccess; @override $Res call({ Object? userEmail = freezed, }) { - return _then(_RegisterUserSuccess( + return _then(_$RegisterUserSuccess( userEmail: userEmail == freezed ? _value.userEmail : userEmail // ignore: cast_nullable_to_non_nullable @@ -1299,8 +1315,8 @@ class __$RegisterUserSuccessCopyWithImpl<$Res> /// @nodoc -class _$_RegisterUserSuccess implements _RegisterUserSuccess { - const _$_RegisterUserSuccess({required this.userEmail}); +class _$_$RegisterUserSuccess implements _$RegisterUserSuccess { + const _$_$RegisterUserSuccess({required this.userEmail}); @override final String userEmail; @@ -1313,7 +1329,7 @@ class _$_RegisterUserSuccess implements _RegisterUserSuccess { @override bool operator ==(dynamic other) { return identical(this, other) || - (other is _RegisterUserSuccess && + (other is _$RegisterUserSuccess && (identical(other.userEmail, userEmail) || const DeepCollectionEquality() .equals(other.userEmail, userEmail))); @@ -1325,8 +1341,8 @@ class _$_RegisterUserSuccess implements _RegisterUserSuccess { @JsonKey(ignore: true) @override - _$RegisterUserSuccessCopyWith<_RegisterUserSuccess> get copyWith => - __$RegisterUserSuccessCopyWithImpl<_RegisterUserSuccess>( + _$$RegisterUserSuccessCopyWith<_$RegisterUserSuccess> get copyWith => + __$$RegisterUserSuccessCopyWithImpl<_$RegisterUserSuccess>( this, _$identity); @override @@ -1364,17 +1380,17 @@ class _$_RegisterUserSuccess implements _RegisterUserSuccess { @override @optionalTypeArgs TResult map({ - required TResult Function(_RegisterInitial value) initial, - required TResult Function(_RegisterLoadInitialDataInProgress value) + required TResult Function(_$RegisterInitial value) initial, + required TResult Function(_$RegisterLoadInitialDataInProgress value) initialLoadInProgress, - required TResult Function(_RegisterLoadInitialDataFailure value) + required TResult Function(_$RegisterLoadInitialDataFailure value) initialLoadFailure, - required TResult Function(_RegisterLoadInitialDataSuccess value) + required TResult Function(_$RegisterLoadInitialDataSuccess value) initialLoadSuccess, - required TResult Function(_RegisterUserInProgress value) + required TResult Function(_$RegisterUserInProgress value) registrationInProgress, - required TResult Function(_RegisterUserFailure value) registrationFailure, - required TResult Function(_RegisterUserSuccess value) registrationSuccess, + required TResult Function(_$RegisterUserFailure value) registrationFailure, + required TResult Function(_$RegisterUserSuccess value) registrationSuccess, }) { return registrationSuccess(this); } @@ -1382,14 +1398,16 @@ class _$_RegisterUserSuccess implements _RegisterUserSuccess { @override @optionalTypeArgs TResult maybeMap({ - TResult Function(_RegisterInitial value)? initial, - TResult Function(_RegisterLoadInitialDataInProgress value)? + TResult Function(_$RegisterInitial value)? initial, + TResult Function(_$RegisterLoadInitialDataInProgress value)? initialLoadInProgress, - TResult Function(_RegisterLoadInitialDataFailure value)? initialLoadFailure, - TResult Function(_RegisterLoadInitialDataSuccess value)? initialLoadSuccess, - TResult Function(_RegisterUserInProgress value)? registrationInProgress, - TResult Function(_RegisterUserFailure value)? registrationFailure, - TResult Function(_RegisterUserSuccess value)? registrationSuccess, + TResult Function(_$RegisterLoadInitialDataFailure value)? + initialLoadFailure, + TResult Function(_$RegisterLoadInitialDataSuccess value)? + initialLoadSuccess, + TResult Function(_$RegisterUserInProgress value)? registrationInProgress, + TResult Function(_$RegisterUserFailure value)? registrationFailure, + TResult Function(_$RegisterUserSuccess value)? registrationSuccess, required TResult orElse(), }) { if (registrationSuccess != null) { @@ -1399,12 +1417,12 @@ class _$_RegisterUserSuccess implements _RegisterUserSuccess { } } -abstract class _RegisterUserSuccess implements RegisterState { - const factory _RegisterUserSuccess({required String userEmail}) = - _$_RegisterUserSuccess; +abstract class _$RegisterUserSuccess implements RegisterState { + const factory _$RegisterUserSuccess({required String userEmail}) = + _$_$RegisterUserSuccess; String get userEmail => throw _privateConstructorUsedError; @JsonKey(ignore: true) - _$RegisterUserSuccessCopyWith<_RegisterUserSuccess> get copyWith => + _$$RegisterUserSuccessCopyWith<_$RegisterUserSuccess> get copyWith => throw _privateConstructorUsedError; } diff --git a/lib/src/presentation/blocs/register_bloc/register_event.dart b/lib/src/presentation/blocs/register_bloc/register_event.dart index 2ec0e3c..4bf4e8d 100644 --- a/lib/src/presentation/blocs/register_bloc/register_event.dart +++ b/lib/src/presentation/blocs/register_bloc/register_event.dart @@ -3,12 +3,12 @@ part of 'register_bloc.dart'; @freezed abstract class RegisterEvent with _$RegisterEvent { const factory RegisterEvent.questionsRequested() = - _QuestionsRequestedRegister; + _$QuestionsRequestedRegister; const factory RegisterEvent.formSubmitted({ required List answers, required String ci, required String passwordFirst, required String passwordSecond, required List questions, - }) = _FormSubmittedRegister; + }) = _$FormSubmittedRegister; } diff --git a/lib/src/presentation/blocs/register_bloc/register_state.dart b/lib/src/presentation/blocs/register_bloc/register_state.dart index b72f7dc..96d04a5 100644 --- a/lib/src/presentation/blocs/register_bloc/register_state.dart +++ b/lib/src/presentation/blocs/register_bloc/register_state.dart @@ -2,17 +2,17 @@ part of 'register_bloc.dart'; @freezed abstract class RegisterState with _$RegisterState { - const factory RegisterState.initial() = _RegisterInitial; + const factory RegisterState.initial() = _$RegisterInitial; const factory RegisterState.initialLoadInProgress() = - _RegisterLoadInitialDataInProgress; + _$RegisterLoadInitialDataInProgress; const factory RegisterState.initialLoadFailure({required String error}) = - _RegisterLoadInitialDataFailure; + _$RegisterLoadInitialDataFailure; const factory RegisterState.initialLoadSuccess( - {required List questions}) = _RegisterLoadInitialDataSuccess; + {required List questions}) = _$RegisterLoadInitialDataSuccess; const factory RegisterState.registrationInProgress() = - _RegisterUserInProgress; + _$RegisterUserInProgress; const factory RegisterState.registrationFailure({required String error}) = - _RegisterUserFailure; + _$RegisterUserFailure; const factory RegisterState.registrationSuccess({required String userEmail}) = - _RegisterUserSuccess; + _$RegisterUserSuccess; } diff --git a/lib/src/presentation/blocs/reset_password_bloc/resetpassword_bloc.dart b/lib/src/presentation/blocs/reset_password_bloc/resetpassword_bloc.dart index d39cd45..86e4af9 100644 --- a/lib/src/presentation/blocs/reset_password_bloc/resetpassword_bloc.dart +++ b/lib/src/presentation/blocs/reset_password_bloc/resetpassword_bloc.dart @@ -24,7 +24,7 @@ class ResetPasswordBloc extends Bloc { } Stream resetPasswordAttemptedHandler( - _ResetPasswordAttempted event, + _$ResetPasswordAttempted event, ) async* { yield const ResetPasswordState.inProgress(); if (event.passwordFirst != event.passwordSecond) { diff --git a/lib/src/presentation/blocs/reset_password_bloc/resetpassword_bloc.freezed.dart b/lib/src/presentation/blocs/reset_password_bloc/resetpassword_bloc.freezed.dart index ee3af3f..bb829ca 100644 --- a/lib/src/presentation/blocs/reset_password_bloc/resetpassword_bloc.freezed.dart +++ b/lib/src/presentation/blocs/reset_password_bloc/resetpassword_bloc.freezed.dart @@ -16,11 +16,11 @@ final _privateConstructorUsedError = UnsupportedError( class _$ResetPasswordEventTearOff { const _$ResetPasswordEventTearOff(); - _ResetPasswordAttempted resetPasswordAttempted( + _$ResetPasswordAttempted resetPasswordAttempted( {required String currentPassword, required String passwordFirst, required String passwordSecond}) { - return _ResetPasswordAttempted( + return _$ResetPasswordAttempted( currentPassword: currentPassword, passwordFirst: passwordFirst, passwordSecond: passwordSecond, @@ -54,13 +54,13 @@ mixin _$ResetPasswordEvent { throw _privateConstructorUsedError; @optionalTypeArgs TResult map({ - required TResult Function(_ResetPasswordAttempted value) + required TResult Function(_$ResetPasswordAttempted value) resetPasswordAttempted, }) => throw _privateConstructorUsedError; @optionalTypeArgs TResult maybeMap({ - TResult Function(_ResetPasswordAttempted value)? resetPasswordAttempted, + TResult Function(_$ResetPasswordAttempted value)? resetPasswordAttempted, required TResult orElse(), }) => throw _privateConstructorUsedError; @@ -112,26 +112,27 @@ class _$ResetPasswordEventCopyWithImpl<$Res> } /// @nodoc -abstract class _$ResetPasswordAttemptedCopyWith<$Res> +abstract class _$$ResetPasswordAttemptedCopyWith<$Res> implements $ResetPasswordEventCopyWith<$Res> { - factory _$ResetPasswordAttemptedCopyWith(_ResetPasswordAttempted value, - $Res Function(_ResetPasswordAttempted) then) = - __$ResetPasswordAttemptedCopyWithImpl<$Res>; + factory _$$ResetPasswordAttemptedCopyWith(_$ResetPasswordAttempted value, + $Res Function(_$ResetPasswordAttempted) then) = + __$$ResetPasswordAttemptedCopyWithImpl<$Res>; @override $Res call( {String currentPassword, String passwordFirst, String passwordSecond}); } /// @nodoc -class __$ResetPasswordAttemptedCopyWithImpl<$Res> +class __$$ResetPasswordAttemptedCopyWithImpl<$Res> extends _$ResetPasswordEventCopyWithImpl<$Res> - implements _$ResetPasswordAttemptedCopyWith<$Res> { - __$ResetPasswordAttemptedCopyWithImpl(_ResetPasswordAttempted _value, - $Res Function(_ResetPasswordAttempted) _then) - : super(_value, (v) => _then(v as _ResetPasswordAttempted)); + implements _$$ResetPasswordAttemptedCopyWith<$Res> { + __$$ResetPasswordAttemptedCopyWithImpl(_$ResetPasswordAttempted _value, + $Res Function(_$ResetPasswordAttempted) _then) + : super(_value, (v) => _then(v as _$ResetPasswordAttempted)); @override - _ResetPasswordAttempted get _value => super._value as _ResetPasswordAttempted; + _$ResetPasswordAttempted get _value => + super._value as _$ResetPasswordAttempted; @override $Res call({ @@ -139,7 +140,7 @@ class __$ResetPasswordAttemptedCopyWithImpl<$Res> Object? passwordFirst = freezed, Object? passwordSecond = freezed, }) { - return _then(_ResetPasswordAttempted( + return _then(_$ResetPasswordAttempted( currentPassword: currentPassword == freezed ? _value.currentPassword : currentPassword // ignore: cast_nullable_to_non_nullable @@ -158,8 +159,8 @@ class __$ResetPasswordAttemptedCopyWithImpl<$Res> /// @nodoc -class _$_ResetPasswordAttempted implements _ResetPasswordAttempted { - const _$_ResetPasswordAttempted( +class _$_$ResetPasswordAttempted implements _$ResetPasswordAttempted { + const _$_$ResetPasswordAttempted( {required this.currentPassword, required this.passwordFirst, required this.passwordSecond}); @@ -179,7 +180,7 @@ class _$_ResetPasswordAttempted implements _ResetPasswordAttempted { @override bool operator ==(dynamic other) { return identical(this, other) || - (other is _ResetPasswordAttempted && + (other is _$ResetPasswordAttempted && (identical(other.currentPassword, currentPassword) || const DeepCollectionEquality() .equals(other.currentPassword, currentPassword)) && @@ -200,8 +201,8 @@ class _$_ResetPasswordAttempted implements _ResetPasswordAttempted { @JsonKey(ignore: true) @override - _$ResetPasswordAttemptedCopyWith<_ResetPasswordAttempted> get copyWith => - __$ResetPasswordAttemptedCopyWithImpl<_ResetPasswordAttempted>( + _$$ResetPasswordAttemptedCopyWith<_$ResetPasswordAttempted> get copyWith => + __$$ResetPasswordAttemptedCopyWithImpl<_$ResetPasswordAttempted>( this, _$identity); @override @@ -233,7 +234,7 @@ class _$_ResetPasswordAttempted implements _ResetPasswordAttempted { @override @optionalTypeArgs TResult map({ - required TResult Function(_ResetPasswordAttempted value) + required TResult Function(_$ResetPasswordAttempted value) resetPasswordAttempted, }) { return resetPasswordAttempted(this); @@ -242,7 +243,7 @@ class _$_ResetPasswordAttempted implements _ResetPasswordAttempted { @override @optionalTypeArgs TResult maybeMap({ - TResult Function(_ResetPasswordAttempted value)? resetPasswordAttempted, + TResult Function(_$ResetPasswordAttempted value)? resetPasswordAttempted, required TResult orElse(), }) { if (resetPasswordAttempted != null) { @@ -252,11 +253,11 @@ class _$_ResetPasswordAttempted implements _ResetPasswordAttempted { } } -abstract class _ResetPasswordAttempted implements ResetPasswordEvent { - const factory _ResetPasswordAttempted( +abstract class _$ResetPasswordAttempted implements ResetPasswordEvent { + const factory _$ResetPasswordAttempted( {required String currentPassword, required String passwordFirst, - required String passwordSecond}) = _$_ResetPasswordAttempted; + required String passwordSecond}) = _$_$ResetPasswordAttempted; @override String get currentPassword => throw _privateConstructorUsedError; @@ -266,7 +267,7 @@ abstract class _ResetPasswordAttempted implements ResetPasswordEvent { String get passwordSecond => throw _privateConstructorUsedError; @override @JsonKey(ignore: true) - _$ResetPasswordAttemptedCopyWith<_ResetPasswordAttempted> get copyWith => + _$$ResetPasswordAttemptedCopyWith<_$ResetPasswordAttempted> get copyWith => throw _privateConstructorUsedError; } @@ -274,20 +275,20 @@ abstract class _ResetPasswordAttempted implements ResetPasswordEvent { class _$ResetPasswordStateTearOff { const _$ResetPasswordStateTearOff(); - _ResetPasswordInitialState initial() { - return const _ResetPasswordInitialState(); + _$ResetPasswordInitialState initial() { + return const _$ResetPasswordInitialState(); } - _ResetPasswordInProgress inProgress() { - return const _ResetPasswordInProgress(); + _$ResetPasswordInProgress inProgress() { + return const _$ResetPasswordInProgress(); } - _ResetPasswordSuccess success() { - return const _ResetPasswordSuccess(); + _$ResetPasswordSuccess success() { + return const _$ResetPasswordSuccess(); } - _ResetPasswordFailure failure({required String error}) { - return _ResetPasswordFailure( + _$ResetPasswordFailure failure({required String error}) { + return _$ResetPasswordFailure( error: error, ); } @@ -317,18 +318,18 @@ mixin _$ResetPasswordState { throw _privateConstructorUsedError; @optionalTypeArgs TResult map({ - required TResult Function(_ResetPasswordInitialState value) initial, - required TResult Function(_ResetPasswordInProgress value) inProgress, - required TResult Function(_ResetPasswordSuccess value) success, - required TResult Function(_ResetPasswordFailure value) failure, + required TResult Function(_$ResetPasswordInitialState value) initial, + required TResult Function(_$ResetPasswordInProgress value) inProgress, + required TResult Function(_$ResetPasswordSuccess value) success, + required TResult Function(_$ResetPasswordFailure value) failure, }) => throw _privateConstructorUsedError; @optionalTypeArgs TResult maybeMap({ - TResult Function(_ResetPasswordInitialState value)? initial, - TResult Function(_ResetPasswordInProgress value)? inProgress, - TResult Function(_ResetPasswordSuccess value)? success, - TResult Function(_ResetPasswordFailure value)? failure, + TResult Function(_$ResetPasswordInitialState value)? initial, + TResult Function(_$ResetPasswordInProgress value)? inProgress, + TResult Function(_$ResetPasswordSuccess value)? success, + TResult Function(_$ResetPasswordFailure value)? failure, required TResult orElse(), }) => throw _privateConstructorUsedError; @@ -352,29 +353,30 @@ class _$ResetPasswordStateCopyWithImpl<$Res> } /// @nodoc -abstract class _$ResetPasswordInitialStateCopyWith<$Res> { - factory _$ResetPasswordInitialStateCopyWith(_ResetPasswordInitialState value, - $Res Function(_ResetPasswordInitialState) then) = - __$ResetPasswordInitialStateCopyWithImpl<$Res>; +abstract class _$$ResetPasswordInitialStateCopyWith<$Res> { + factory _$$ResetPasswordInitialStateCopyWith( + _$ResetPasswordInitialState value, + $Res Function(_$ResetPasswordInitialState) then) = + __$$ResetPasswordInitialStateCopyWithImpl<$Res>; } /// @nodoc -class __$ResetPasswordInitialStateCopyWithImpl<$Res> +class __$$ResetPasswordInitialStateCopyWithImpl<$Res> extends _$ResetPasswordStateCopyWithImpl<$Res> - implements _$ResetPasswordInitialStateCopyWith<$Res> { - __$ResetPasswordInitialStateCopyWithImpl(_ResetPasswordInitialState _value, - $Res Function(_ResetPasswordInitialState) _then) - : super(_value, (v) => _then(v as _ResetPasswordInitialState)); + implements _$$ResetPasswordInitialStateCopyWith<$Res> { + __$$ResetPasswordInitialStateCopyWithImpl(_$ResetPasswordInitialState _value, + $Res Function(_$ResetPasswordInitialState) _then) + : super(_value, (v) => _then(v as _$ResetPasswordInitialState)); @override - _ResetPasswordInitialState get _value => - super._value as _ResetPasswordInitialState; + _$ResetPasswordInitialState get _value => + super._value as _$ResetPasswordInitialState; } /// @nodoc -class _$_ResetPasswordInitialState implements _ResetPasswordInitialState { - const _$_ResetPasswordInitialState(); +class _$_$ResetPasswordInitialState implements _$ResetPasswordInitialState { + const _$_$ResetPasswordInitialState(); @override String toString() { @@ -383,7 +385,7 @@ class _$_ResetPasswordInitialState implements _ResetPasswordInitialState { @override bool operator ==(dynamic other) { - return identical(this, other) || (other is _ResetPasswordInitialState); + return identical(this, other) || (other is _$ResetPasswordInitialState); } @override @@ -418,10 +420,10 @@ class _$_ResetPasswordInitialState implements _ResetPasswordInitialState { @override @optionalTypeArgs TResult map({ - required TResult Function(_ResetPasswordInitialState value) initial, - required TResult Function(_ResetPasswordInProgress value) inProgress, - required TResult Function(_ResetPasswordSuccess value) success, - required TResult Function(_ResetPasswordFailure value) failure, + required TResult Function(_$ResetPasswordInitialState value) initial, + required TResult Function(_$ResetPasswordInProgress value) inProgress, + required TResult Function(_$ResetPasswordSuccess value) success, + required TResult Function(_$ResetPasswordFailure value) failure, }) { return initial(this); } @@ -429,10 +431,10 @@ class _$_ResetPasswordInitialState implements _ResetPasswordInitialState { @override @optionalTypeArgs TResult maybeMap({ - TResult Function(_ResetPasswordInitialState value)? initial, - TResult Function(_ResetPasswordInProgress value)? inProgress, - TResult Function(_ResetPasswordSuccess value)? success, - TResult Function(_ResetPasswordFailure value)? failure, + TResult Function(_$ResetPasswordInitialState value)? initial, + TResult Function(_$ResetPasswordInProgress value)? inProgress, + TResult Function(_$ResetPasswordSuccess value)? success, + TResult Function(_$ResetPasswordFailure value)? failure, required TResult orElse(), }) { if (initial != null) { @@ -442,34 +444,34 @@ class _$_ResetPasswordInitialState implements _ResetPasswordInitialState { } } -abstract class _ResetPasswordInitialState implements ResetPasswordState { - const factory _ResetPasswordInitialState() = _$_ResetPasswordInitialState; +abstract class _$ResetPasswordInitialState implements ResetPasswordState { + const factory _$ResetPasswordInitialState() = _$_$ResetPasswordInitialState; } /// @nodoc -abstract class _$ResetPasswordInProgressCopyWith<$Res> { - factory _$ResetPasswordInProgressCopyWith(_ResetPasswordInProgress value, - $Res Function(_ResetPasswordInProgress) then) = - __$ResetPasswordInProgressCopyWithImpl<$Res>; +abstract class _$$ResetPasswordInProgressCopyWith<$Res> { + factory _$$ResetPasswordInProgressCopyWith(_$ResetPasswordInProgress value, + $Res Function(_$ResetPasswordInProgress) then) = + __$$ResetPasswordInProgressCopyWithImpl<$Res>; } /// @nodoc -class __$ResetPasswordInProgressCopyWithImpl<$Res> +class __$$ResetPasswordInProgressCopyWithImpl<$Res> extends _$ResetPasswordStateCopyWithImpl<$Res> - implements _$ResetPasswordInProgressCopyWith<$Res> { - __$ResetPasswordInProgressCopyWithImpl(_ResetPasswordInProgress _value, - $Res Function(_ResetPasswordInProgress) _then) - : super(_value, (v) => _then(v as _ResetPasswordInProgress)); + implements _$$ResetPasswordInProgressCopyWith<$Res> { + __$$ResetPasswordInProgressCopyWithImpl(_$ResetPasswordInProgress _value, + $Res Function(_$ResetPasswordInProgress) _then) + : super(_value, (v) => _then(v as _$ResetPasswordInProgress)); @override - _ResetPasswordInProgress get _value => - super._value as _ResetPasswordInProgress; + _$ResetPasswordInProgress get _value => + super._value as _$ResetPasswordInProgress; } /// @nodoc -class _$_ResetPasswordInProgress implements _ResetPasswordInProgress { - const _$_ResetPasswordInProgress(); +class _$_$ResetPasswordInProgress implements _$ResetPasswordInProgress { + const _$_$ResetPasswordInProgress(); @override String toString() { @@ -478,7 +480,7 @@ class _$_ResetPasswordInProgress implements _ResetPasswordInProgress { @override bool operator ==(dynamic other) { - return identical(this, other) || (other is _ResetPasswordInProgress); + return identical(this, other) || (other is _$ResetPasswordInProgress); } @override @@ -513,10 +515,10 @@ class _$_ResetPasswordInProgress implements _ResetPasswordInProgress { @override @optionalTypeArgs TResult map({ - required TResult Function(_ResetPasswordInitialState value) initial, - required TResult Function(_ResetPasswordInProgress value) inProgress, - required TResult Function(_ResetPasswordSuccess value) success, - required TResult Function(_ResetPasswordFailure value) failure, + required TResult Function(_$ResetPasswordInitialState value) initial, + required TResult Function(_$ResetPasswordInProgress value) inProgress, + required TResult Function(_$ResetPasswordSuccess value) success, + required TResult Function(_$ResetPasswordFailure value) failure, }) { return inProgress(this); } @@ -524,10 +526,10 @@ class _$_ResetPasswordInProgress implements _ResetPasswordInProgress { @override @optionalTypeArgs TResult maybeMap({ - TResult Function(_ResetPasswordInitialState value)? initial, - TResult Function(_ResetPasswordInProgress value)? inProgress, - TResult Function(_ResetPasswordSuccess value)? success, - TResult Function(_ResetPasswordFailure value)? failure, + TResult Function(_$ResetPasswordInitialState value)? initial, + TResult Function(_$ResetPasswordInProgress value)? inProgress, + TResult Function(_$ResetPasswordSuccess value)? success, + TResult Function(_$ResetPasswordFailure value)? failure, required TResult orElse(), }) { if (inProgress != null) { @@ -537,33 +539,33 @@ class _$_ResetPasswordInProgress implements _ResetPasswordInProgress { } } -abstract class _ResetPasswordInProgress implements ResetPasswordState { - const factory _ResetPasswordInProgress() = _$_ResetPasswordInProgress; +abstract class _$ResetPasswordInProgress implements ResetPasswordState { + const factory _$ResetPasswordInProgress() = _$_$ResetPasswordInProgress; } /// @nodoc -abstract class _$ResetPasswordSuccessCopyWith<$Res> { - factory _$ResetPasswordSuccessCopyWith(_ResetPasswordSuccess value, - $Res Function(_ResetPasswordSuccess) then) = - __$ResetPasswordSuccessCopyWithImpl<$Res>; +abstract class _$$ResetPasswordSuccessCopyWith<$Res> { + factory _$$ResetPasswordSuccessCopyWith(_$ResetPasswordSuccess value, + $Res Function(_$ResetPasswordSuccess) then) = + __$$ResetPasswordSuccessCopyWithImpl<$Res>; } /// @nodoc -class __$ResetPasswordSuccessCopyWithImpl<$Res> +class __$$ResetPasswordSuccessCopyWithImpl<$Res> extends _$ResetPasswordStateCopyWithImpl<$Res> - implements _$ResetPasswordSuccessCopyWith<$Res> { - __$ResetPasswordSuccessCopyWithImpl( - _ResetPasswordSuccess _value, $Res Function(_ResetPasswordSuccess) _then) - : super(_value, (v) => _then(v as _ResetPasswordSuccess)); + implements _$$ResetPasswordSuccessCopyWith<$Res> { + __$$ResetPasswordSuccessCopyWithImpl(_$ResetPasswordSuccess _value, + $Res Function(_$ResetPasswordSuccess) _then) + : super(_value, (v) => _then(v as _$ResetPasswordSuccess)); @override - _ResetPasswordSuccess get _value => super._value as _ResetPasswordSuccess; + _$ResetPasswordSuccess get _value => super._value as _$ResetPasswordSuccess; } /// @nodoc -class _$_ResetPasswordSuccess implements _ResetPasswordSuccess { - const _$_ResetPasswordSuccess(); +class _$_$ResetPasswordSuccess implements _$ResetPasswordSuccess { + const _$_$ResetPasswordSuccess(); @override String toString() { @@ -572,7 +574,7 @@ class _$_ResetPasswordSuccess implements _ResetPasswordSuccess { @override bool operator ==(dynamic other) { - return identical(this, other) || (other is _ResetPasswordSuccess); + return identical(this, other) || (other is _$ResetPasswordSuccess); } @override @@ -607,10 +609,10 @@ class _$_ResetPasswordSuccess implements _ResetPasswordSuccess { @override @optionalTypeArgs TResult map({ - required TResult Function(_ResetPasswordInitialState value) initial, - required TResult Function(_ResetPasswordInProgress value) inProgress, - required TResult Function(_ResetPasswordSuccess value) success, - required TResult Function(_ResetPasswordFailure value) failure, + required TResult Function(_$ResetPasswordInitialState value) initial, + required TResult Function(_$ResetPasswordInProgress value) inProgress, + required TResult Function(_$ResetPasswordSuccess value) success, + required TResult Function(_$ResetPasswordFailure value) failure, }) { return success(this); } @@ -618,10 +620,10 @@ class _$_ResetPasswordSuccess implements _ResetPasswordSuccess { @override @optionalTypeArgs TResult maybeMap({ - TResult Function(_ResetPasswordInitialState value)? initial, - TResult Function(_ResetPasswordInProgress value)? inProgress, - TResult Function(_ResetPasswordSuccess value)? success, - TResult Function(_ResetPasswordFailure value)? failure, + TResult Function(_$ResetPasswordInitialState value)? initial, + TResult Function(_$ResetPasswordInProgress value)? inProgress, + TResult Function(_$ResetPasswordSuccess value)? success, + TResult Function(_$ResetPasswordFailure value)? failure, required TResult orElse(), }) { if (success != null) { @@ -631,34 +633,34 @@ class _$_ResetPasswordSuccess implements _ResetPasswordSuccess { } } -abstract class _ResetPasswordSuccess implements ResetPasswordState { - const factory _ResetPasswordSuccess() = _$_ResetPasswordSuccess; +abstract class _$ResetPasswordSuccess implements ResetPasswordState { + const factory _$ResetPasswordSuccess() = _$_$ResetPasswordSuccess; } /// @nodoc -abstract class _$ResetPasswordFailureCopyWith<$Res> { - factory _$ResetPasswordFailureCopyWith(_ResetPasswordFailure value, - $Res Function(_ResetPasswordFailure) then) = - __$ResetPasswordFailureCopyWithImpl<$Res>; +abstract class _$$ResetPasswordFailureCopyWith<$Res> { + factory _$$ResetPasswordFailureCopyWith(_$ResetPasswordFailure value, + $Res Function(_$ResetPasswordFailure) then) = + __$$ResetPasswordFailureCopyWithImpl<$Res>; $Res call({String error}); } /// @nodoc -class __$ResetPasswordFailureCopyWithImpl<$Res> +class __$$ResetPasswordFailureCopyWithImpl<$Res> extends _$ResetPasswordStateCopyWithImpl<$Res> - implements _$ResetPasswordFailureCopyWith<$Res> { - __$ResetPasswordFailureCopyWithImpl( - _ResetPasswordFailure _value, $Res Function(_ResetPasswordFailure) _then) - : super(_value, (v) => _then(v as _ResetPasswordFailure)); + implements _$$ResetPasswordFailureCopyWith<$Res> { + __$$ResetPasswordFailureCopyWithImpl(_$ResetPasswordFailure _value, + $Res Function(_$ResetPasswordFailure) _then) + : super(_value, (v) => _then(v as _$ResetPasswordFailure)); @override - _ResetPasswordFailure get _value => super._value as _ResetPasswordFailure; + _$ResetPasswordFailure get _value => super._value as _$ResetPasswordFailure; @override $Res call({ Object? error = freezed, }) { - return _then(_ResetPasswordFailure( + return _then(_$ResetPasswordFailure( error: error == freezed ? _value.error : error // ignore: cast_nullable_to_non_nullable @@ -669,8 +671,8 @@ class __$ResetPasswordFailureCopyWithImpl<$Res> /// @nodoc -class _$_ResetPasswordFailure implements _ResetPasswordFailure { - const _$_ResetPasswordFailure({required this.error}); +class _$_$ResetPasswordFailure implements _$ResetPasswordFailure { + const _$_$ResetPasswordFailure({required this.error}); @override final String error; @@ -683,7 +685,7 @@ class _$_ResetPasswordFailure implements _ResetPasswordFailure { @override bool operator ==(dynamic other) { return identical(this, other) || - (other is _ResetPasswordFailure && + (other is _$ResetPasswordFailure && (identical(other.error, error) || const DeepCollectionEquality().equals(other.error, error))); } @@ -694,8 +696,8 @@ class _$_ResetPasswordFailure implements _ResetPasswordFailure { @JsonKey(ignore: true) @override - _$ResetPasswordFailureCopyWith<_ResetPasswordFailure> get copyWith => - __$ResetPasswordFailureCopyWithImpl<_ResetPasswordFailure>( + _$$ResetPasswordFailureCopyWith<_$ResetPasswordFailure> get copyWith => + __$$ResetPasswordFailureCopyWithImpl<_$ResetPasswordFailure>( this, _$identity); @override @@ -727,10 +729,10 @@ class _$_ResetPasswordFailure implements _ResetPasswordFailure { @override @optionalTypeArgs TResult map({ - required TResult Function(_ResetPasswordInitialState value) initial, - required TResult Function(_ResetPasswordInProgress value) inProgress, - required TResult Function(_ResetPasswordSuccess value) success, - required TResult Function(_ResetPasswordFailure value) failure, + required TResult Function(_$ResetPasswordInitialState value) initial, + required TResult Function(_$ResetPasswordInProgress value) inProgress, + required TResult Function(_$ResetPasswordSuccess value) success, + required TResult Function(_$ResetPasswordFailure value) failure, }) { return failure(this); } @@ -738,10 +740,10 @@ class _$_ResetPasswordFailure implements _ResetPasswordFailure { @override @optionalTypeArgs TResult maybeMap({ - TResult Function(_ResetPasswordInitialState value)? initial, - TResult Function(_ResetPasswordInProgress value)? inProgress, - TResult Function(_ResetPasswordSuccess value)? success, - TResult Function(_ResetPasswordFailure value)? failure, + TResult Function(_$ResetPasswordInitialState value)? initial, + TResult Function(_$ResetPasswordInProgress value)? inProgress, + TResult Function(_$ResetPasswordSuccess value)? success, + TResult Function(_$ResetPasswordFailure value)? failure, required TResult orElse(), }) { if (failure != null) { @@ -751,12 +753,12 @@ class _$_ResetPasswordFailure implements _ResetPasswordFailure { } } -abstract class _ResetPasswordFailure implements ResetPasswordState { - const factory _ResetPasswordFailure({required String error}) = - _$_ResetPasswordFailure; +abstract class _$ResetPasswordFailure implements ResetPasswordState { + const factory _$ResetPasswordFailure({required String error}) = + _$_$ResetPasswordFailure; String get error => throw _privateConstructorUsedError; @JsonKey(ignore: true) - _$ResetPasswordFailureCopyWith<_ResetPasswordFailure> get copyWith => + _$$ResetPasswordFailureCopyWith<_$ResetPasswordFailure> get copyWith => throw _privateConstructorUsedError; } diff --git a/lib/src/presentation/blocs/reset_password_bloc/resetpassword_event.dart b/lib/src/presentation/blocs/reset_password_bloc/resetpassword_event.dart index 3fd5a4c..6042623 100644 --- a/lib/src/presentation/blocs/reset_password_bloc/resetpassword_event.dart +++ b/lib/src/presentation/blocs/reset_password_bloc/resetpassword_event.dart @@ -6,5 +6,5 @@ class ResetPasswordEvent with _$ResetPasswordEvent { required String currentPassword, required String passwordFirst, required String passwordSecond, - }) = _ResetPasswordAttempted; + }) = _$ResetPasswordAttempted; } diff --git a/lib/src/presentation/blocs/reset_password_bloc/resetpassword_state.dart b/lib/src/presentation/blocs/reset_password_bloc/resetpassword_state.dart index 34b3d60..c5c9d47 100644 --- a/lib/src/presentation/blocs/reset_password_bloc/resetpassword_state.dart +++ b/lib/src/presentation/blocs/reset_password_bloc/resetpassword_state.dart @@ -2,9 +2,9 @@ part of 'resetpassword_bloc.dart'; @freezed abstract class ResetPasswordState with _$ResetPasswordState { - const factory ResetPasswordState.initial() = _ResetPasswordInitialState; - const factory ResetPasswordState.inProgress() = _ResetPasswordInProgress; - const factory ResetPasswordState.success() = _ResetPasswordSuccess; + const factory ResetPasswordState.initial() = _$ResetPasswordInitialState; + const factory ResetPasswordState.inProgress() = _$ResetPasswordInProgress; + const factory ResetPasswordState.success() = _$ResetPasswordSuccess; const factory ResetPasswordState.failure({required String error}) = - _ResetPasswordFailure; + _$ResetPasswordFailure; } diff --git a/lib/src/presentation/pages/login_page.dart b/lib/src/presentation/pages/login_page.dart index ba411f3..635d24a 100644 --- a/lib/src/presentation/pages/login_page.dart +++ b/lib/src/presentation/pages/login_page.dart @@ -18,7 +18,7 @@ class LoginPage extends StatefulWidget { } class _LoginPageState extends State { - final _usernameController = TextEditingController(); + final _userNameController = TextEditingController(); final _passwordController = TextEditingController(); bool _rememberMe = false; @@ -42,7 +42,7 @@ class _LoginPageState extends State { @override void dispose() { - _usernameController.dispose(); + _userNameController.dispose(); _passwordController.dispose(); super.dispose(); } @@ -61,139 +61,149 @@ class _LoginPageState extends State { if (authRepo.logged) { Navigator.of(context).pushReplacementNamed(HOME_ROUTE_NAME); } - if (state is LoginAttemptInitial) { - FlashHelper.errorBar(context, message: state.error); - } + state.maybeWhen( + failure: (error) => FlashHelper.errorBar(context, message: error), + orElse: () {}, + ); }, builder: (context, state) { - if (state is LoginAttemptInitial) { - return Scrollbar( - child: SingleChildScrollView( - child: Center( - child: Container( - width: getValueForScreenType( - context: context, - mobile: MediaQuery.of(context).size.width, - tablet: MediaQuery.of(context).size.width * 0.5, - ), - padding: const EdgeInsets.only( - top: 30, - bottom: 9, - left: 18, - right: 18, - ), - child: Column( + return state.maybeWhen( + inProgress: () => _buildLoadingIndicator(context), + orElse: () => _buildLoginForm(context), + ); + }, + ), + ); + } + + Widget _buildLoginForm(BuildContext context) { + return Scrollbar( + child: SingleChildScrollView( + child: Center( + child: Container( + width: getValueForScreenType( + context: context, + mobile: MediaQuery.of(context).size.width, + tablet: MediaQuery.of(context).size.width * 0.5, + ), + padding: const EdgeInsets.only( + top: 30, + bottom: 9, + left: 18, + right: 18, + ), + child: Form( + key: _formLoginKey, + autovalidateMode: AutovalidateMode.disabled, + child: Column( + mainAxisSize: MainAxisSize.min, + children: [ + const SizedBox( + height: 10, + ), + Image.asset( + 'assets/images/splash.png', + ), + const SizedBox( + height: 40, + ), + SizedBox( + height: 40, + child: Row( mainAxisSize: MainAxisSize.min, + mainAxisAlignment: MainAxisAlignment.center, children: [ - const SizedBox( - height: 10, - ), - Image.asset( - 'assets/images/splash.png', - ), - const SizedBox( - height: 40, - ), - SizedBox( - height: 40, - child: Row( - mainAxisSize: MainAxisSize.min, - mainAxisAlignment: MainAxisAlignment.center, - children: [ - Expanded( - flex: 7, - child: GestionUhDefaultTextField( - labelText: 'Usuario', - controller: _usernameController, - ), - ), - ], + Expanded( + flex: 7, + child: GestionUhDefaultTextField( + labelText: 'Usuario', + controller: _userNameController, + validator: null, + autovalidateMode: AutovalidateMode.disabled, ), ), - const SizedBox( - height: 10, - ), - GestionUhDefaultTextField( - labelText: 'Contraseña', - controller: _passwordController, - keyboardType: TextInputType.visiblePassword, - ), - const SizedBox( - height: 20, - ), - if (GetIt.I().isSecureStorageAvailable) - GestureDetector( - onTap: () => - setState(() => _rememberMe = !_rememberMe), - child: Container( - margin: - const EdgeInsets.symmetric(horizontal: 15), - child: Row( - children: [ - Expanded( - child: Text( - '¿Desea recordar la sesión?', - style: - Theme.of(context).textTheme.subtitle1, - ), - ), - Text( - 'No', - style: - Theme.of(context).textTheme.subtitle1, - ), - Switch( - value: _rememberMe, - activeColor: Theme.of(context).primaryColor, - onChanged: (value) => - setState(() => _rememberMe = value), - ), - Text( - 'Si', - style: - Theme.of(context).textTheme.subtitle1, - ), - ], + ], + ), + ), + const SizedBox( + height: 10, + ), + GestionUhDefaultTextField( + labelText: 'Contraseña', + controller: _passwordController, + keyboardType: TextInputType.visiblePassword, + ), + const SizedBox( + height: 20, + ), + if (GetIt.I().isSecureStorageAvailable) + GestureDetector( + onTap: () => setState(() => _rememberMe = !_rememberMe), + child: Container( + margin: const EdgeInsets.symmetric(horizontal: 15), + child: Row( + children: [ + Expanded( + child: Text( + '¿Desea recordar la sesión?', + style: Theme.of(context).textTheme.subtitle1, ), ), - ), - const SizedBox( - height: 5, - ), - GestionUhDefaultButton( - text: 'Iniciar Sesión', - onPressed: () => _loginAction(context), - ), - const SizedBox( - height: 5, - ), - GestionUhDefaultButton( - text: 'Recuperar Contraseña', - onPressed: () => _recoverAction(context), - ), - const SizedBox( - height: 5, - ), - GestionUhDefaultButton( - text: 'Registrarse', - onPressed: () => _registerAction(context), + Text( + 'No', + style: Theme.of(context).textTheme.subtitle1, + ), + Switch( + value: _rememberMe, + activeColor: Theme.of(context).primaryColor, + onChanged: (value) => + setState(() => _rememberMe = value), + ), + Text( + 'Si', + style: Theme.of(context).textTheme.subtitle1, + ), + ], ), - ], + ), ), + const SizedBox( + height: 5, + ), + GestionUhDefaultButton( + text: 'Iniciar Sesión', + onPressed: () => _loginAction(context), ), - ), + const SizedBox( + height: 5, + ), + GestionUhDefaultButton( + text: 'Recuperar Contraseña', + onPressed: () => _recoverAction(context), + ), + const SizedBox( + height: 5, + ), + GestionUhDefaultButton( + text: 'Registrarse', + onPressed: () => _registerAction(context), + ), + ], ), - ); - } - return Center( - child: Column( - mainAxisAlignment: MainAxisAlignment.center, - children: const [ - GestionUhLoadingIndicator(), - ], ), - ); - }, + ), + ), + ), + ); + } + + Widget _buildLoadingIndicator(BuildContext context) { + return Center( + child: Column( + mainAxisAlignment: MainAxisAlignment.center, + children: const [ + GestionUhLoadingIndicator(), + ], ), ); } From c152dc6972c9256e089fc9c4c8727e463209a7a0 Mon Sep 17 00:00:00 2001 From: leynier Date: Sun, 25 Apr 2021 00:00:06 -0400 Subject: [PATCH 52/59] Add freezed to login and recover password blocs --- analysis_options.yaml | 9 + .../blocs/home_bloc/home_bloc.freezed.dart | 179 +- .../blocs/login_bloc/login_bloc.dart | 34 +- .../blocs/login_bloc/login_bloc.freezed.dart | 717 +++++++ .../blocs/login_bloc/login_event.dart | 19 +- .../blocs/login_bloc/login_state.dart | 16 +- .../recover_password_bloc.dart | 109 +- .../recover_password_bloc.freezed.dart | 1829 +++++++++++++++++ .../recover_password_event.dart | 24 +- .../recover_password_state.dart | 113 +- lib/src/presentation/pages/login_page.dart | 270 +-- .../pages/recover_password_page.dart | 456 ++-- 12 files changed, 3216 insertions(+), 559 deletions(-) create mode 100644 lib/src/presentation/blocs/login_bloc/login_bloc.freezed.dart create mode 100644 lib/src/presentation/blocs/recover_password_bloc/recover_password_bloc.freezed.dart diff --git a/analysis_options.yaml b/analysis_options.yaml index ed0d062..a3258d1 100644 --- a/analysis_options.yaml +++ b/analysis_options.yaml @@ -1,5 +1,14 @@ include: package:lint/analysis_options.yaml +analyzer: + exclude: + - build/** + - lib/generated_plugin_registrant.dart + - lib/**/*.g.dart + - lib/**/*.freezed.dart + strong-mode: + implicit-casts: false + linter: rules: always_use_package_imports: true diff --git a/lib/src/presentation/blocs/home_bloc/home_bloc.freezed.dart b/lib/src/presentation/blocs/home_bloc/home_bloc.freezed.dart index 182fd03..ae92827 100644 --- a/lib/src/presentation/blocs/home_bloc/home_bloc.freezed.dart +++ b/lib/src/presentation/blocs/home_bloc/home_bloc.freezed.dart @@ -143,14 +143,20 @@ class __$LoadProfileCopyWithImpl<$Res> extends _$HomeEventCopyWithImpl<$Res> /// @nodoc -class _$_LoadProfile implements _LoadProfile { +class _$_LoadProfile with DiagnosticableTreeMixin implements _LoadProfile { const _$_LoadProfile(); @override - String toString() { + String toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) { return 'HomeEvent.loadProfile()'; } + @override + void debugFillProperties(DiagnosticPropertiesBuilder properties) { + super.debugFillProperties(properties); + properties..add(DiagnosticsProperty('type', 'HomeEvent.loadProfile')); + } + @override bool operator ==(dynamic other) { return identical(this, other) || (other is _LoadProfile); @@ -248,14 +254,20 @@ class __$SendLogoutCopyWithImpl<$Res> extends _$HomeEventCopyWithImpl<$Res> /// @nodoc -class _$_SendLogout implements _SendLogout { +class _$_SendLogout with DiagnosticableTreeMixin implements _SendLogout { const _$_SendLogout(); @override - String toString() { + String toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) { return 'HomeEvent.logout()'; } + @override + void debugFillProperties(DiagnosticPropertiesBuilder properties) { + super.debugFillProperties(properties); + properties..add(DiagnosticsProperty('type', 'HomeEvent.logout')); + } + @override bool operator ==(dynamic other) { return identical(this, other) || (other is _SendLogout); @@ -366,17 +378,25 @@ class __$GoToProfileCopyWithImpl<$Res> extends _$HomeEventCopyWithImpl<$Res> /// @nodoc -class _$_GoToProfile implements _GoToProfile { +class _$_GoToProfile with DiagnosticableTreeMixin implements _GoToProfile { const _$_GoToProfile(this.profile); @override final UserData profile; @override - String toString() { + String toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) { return 'HomeEvent.goToProfile(profile: $profile)'; } + @override + void debugFillProperties(DiagnosticPropertiesBuilder properties) { + super.debugFillProperties(properties); + properties + ..add(DiagnosticsProperty('type', 'HomeEvent.goToProfile')) + ..add(DiagnosticsProperty('profile', profile)); + } + @override bool operator ==(dynamic other) { return identical(this, other) || @@ -500,17 +520,25 @@ class __$GoToQuotaCopyWithImpl<$Res> extends _$HomeEventCopyWithImpl<$Res> /// @nodoc -class _$_GoToQuota implements _GoToQuota { +class _$_GoToQuota with DiagnosticableTreeMixin implements _GoToQuota { const _$_GoToQuota(this.profile); @override final UserData profile; @override - String toString() { + String toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) { return 'HomeEvent.goToQuota(profile: $profile)'; } + @override + void debugFillProperties(DiagnosticPropertiesBuilder properties) { + super.debugFillProperties(properties); + properties + ..add(DiagnosticsProperty('type', 'HomeEvent.goToQuota')) + ..add(DiagnosticsProperty('profile', profile)); + } + @override bool operator ==(dynamic other) { return identical(this, other) || @@ -635,17 +663,25 @@ class __$GoToMailQuotaCopyWithImpl<$Res> extends _$HomeEventCopyWithImpl<$Res> /// @nodoc -class _$_GoToMailQuota implements _GoToMailQuota { +class _$_GoToMailQuota with DiagnosticableTreeMixin implements _GoToMailQuota { const _$_GoToMailQuota(this.profile); @override final UserData profile; @override - String toString() { + String toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) { return 'HomeEvent.goToMailQuota(profile: $profile)'; } + @override + void debugFillProperties(DiagnosticPropertiesBuilder properties) { + super.debugFillProperties(properties); + properties + ..add(DiagnosticsProperty('type', 'HomeEvent.goToMailQuota')) + ..add(DiagnosticsProperty('profile', profile)); + } + @override bool operator ==(dynamic other) { return identical(this, other) || @@ -771,17 +807,27 @@ class __$GoToResetPasswordCopyWithImpl<$Res> /// @nodoc -class _$_GoToResetPassword implements _GoToResetPassword { +class _$_GoToResetPassword + with DiagnosticableTreeMixin + implements _GoToResetPassword { const _$_GoToResetPassword(this.profile); @override final UserData profile; @override - String toString() { + String toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) { return 'HomeEvent.goToResetPassword(profile: $profile)'; } + @override + void debugFillProperties(DiagnosticPropertiesBuilder properties) { + super.debugFillProperties(properties); + properties + ..add(DiagnosticsProperty('type', 'HomeEvent.goToResetPassword')) + ..add(DiagnosticsProperty('profile', profile)); + } + @override bool operator ==(dynamic other) { return identical(this, other) || @@ -906,17 +952,25 @@ class __$GoToAboutUsCopyWithImpl<$Res> extends _$HomeEventCopyWithImpl<$Res> /// @nodoc -class _$_GoToAboutUs implements _GoToAboutUs { +class _$_GoToAboutUs with DiagnosticableTreeMixin implements _GoToAboutUs { const _$_GoToAboutUs(this.profile); @override final UserData profile; @override - String toString() { + String toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) { return 'HomeEvent.goToAboutUs(profile: $profile)'; } + @override + void debugFillProperties(DiagnosticPropertiesBuilder properties) { + super.debugFillProperties(properties); + properties + ..add(DiagnosticsProperty('type', 'HomeEvent.goToAboutUs')) + ..add(DiagnosticsProperty('profile', profile)); + } + @override bool operator ==(dynamic other) { return identical(this, other) || @@ -1156,14 +1210,20 @@ class __$LoadingCopyWithImpl<$Res> extends _$HomeStateCopyWithImpl<$Res> /// @nodoc -class _$_Loading implements _Loading { +class _$_Loading with DiagnosticableTreeMixin implements _Loading { const _$_Loading(); @override - String toString() { + String toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) { return 'HomeState.loading()'; } + @override + void debugFillProperties(DiagnosticPropertiesBuilder properties) { + super.debugFillProperties(properties); + properties..add(DiagnosticsProperty('type', 'HomeState.loading')); + } + @override bool operator ==(dynamic other) { return identical(this, other) || (other is _Loading); @@ -1280,17 +1340,25 @@ class __$ErrorCopyWithImpl<$Res> extends _$HomeStateCopyWithImpl<$Res> /// @nodoc -class _$_Error implements _Error { +class _$_Error with DiagnosticableTreeMixin implements _Error { const _$_Error(this.message); @override final String message; @override - String toString() { + String toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) { return 'HomeState.error(message: $message)'; } + @override + void debugFillProperties(DiagnosticPropertiesBuilder properties) { + super.debugFillProperties(properties); + properties + ..add(DiagnosticsProperty('type', 'HomeState.error')) + ..add(DiagnosticsProperty('message', message)); + } + @override bool operator ==(dynamic other) { return identical(this, other) || @@ -1407,14 +1475,20 @@ class __$LogoutCopyWithImpl<$Res> extends _$HomeStateCopyWithImpl<$Res> /// @nodoc -class _$_Logout implements _Logout { +class _$_Logout with DiagnosticableTreeMixin implements _Logout { const _$_Logout(); @override - String toString() { + String toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) { return 'HomeState.logout()'; } + @override + void debugFillProperties(DiagnosticPropertiesBuilder properties) { + super.debugFillProperties(properties); + properties..add(DiagnosticsProperty('type', 'HomeState.logout')); + } + @override bool operator ==(dynamic other) { return identical(this, other) || (other is _Logout); @@ -1536,7 +1610,7 @@ class __$ProfileCopyWithImpl<$Res> extends _$HomeStateCopyWithImpl<$Res> /// @nodoc -class _$_Profile implements _Profile { +class _$_Profile with DiagnosticableTreeMixin implements _Profile { const _$_Profile(this.profile, this.items); @override @@ -1545,10 +1619,19 @@ class _$_Profile implements _Profile { final List items; @override - String toString() { + String toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) { return 'HomeState.profile(profile: $profile, items: $items)'; } + @override + void debugFillProperties(DiagnosticPropertiesBuilder properties) { + super.debugFillProperties(properties); + properties + ..add(DiagnosticsProperty('type', 'HomeState.profile')) + ..add(DiagnosticsProperty('profile', profile)) + ..add(DiagnosticsProperty('items', items)); + } + @override bool operator ==(dynamic other) { return identical(this, other) || @@ -1691,7 +1774,7 @@ class __$QuotaCopyWithImpl<$Res> extends _$HomeStateCopyWithImpl<$Res> /// @nodoc -class _$_Quota implements _Quota { +class _$_Quota with DiagnosticableTreeMixin implements _Quota { const _$_Quota(this.profile, this.items); @override @@ -1700,10 +1783,19 @@ class _$_Quota implements _Quota { final List items; @override - String toString() { + String toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) { return 'HomeState.quota(profile: $profile, items: $items)'; } + @override + void debugFillProperties(DiagnosticPropertiesBuilder properties) { + super.debugFillProperties(properties); + properties + ..add(DiagnosticsProperty('type', 'HomeState.quota')) + ..add(DiagnosticsProperty('profile', profile)) + ..add(DiagnosticsProperty('items', items)); + } + @override bool operator ==(dynamic other) { return identical(this, other) || @@ -1845,7 +1937,7 @@ class __$MailQuotaCopyWithImpl<$Res> extends _$HomeStateCopyWithImpl<$Res> /// @nodoc -class _$_MailQuota implements _MailQuota { +class _$_MailQuota with DiagnosticableTreeMixin implements _MailQuota { const _$_MailQuota(this.profile, this.items); @override @@ -1854,10 +1946,19 @@ class _$_MailQuota implements _MailQuota { final List items; @override - String toString() { + String toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) { return 'HomeState.mailQuota(profile: $profile, items: $items)'; } + @override + void debugFillProperties(DiagnosticPropertiesBuilder properties) { + super.debugFillProperties(properties); + properties + ..add(DiagnosticsProperty('type', 'HomeState.mailQuota')) + ..add(DiagnosticsProperty('profile', profile)) + ..add(DiagnosticsProperty('items', items)); + } + @override bool operator ==(dynamic other) { return identical(this, other) || @@ -2002,7 +2103,7 @@ class __$ResetPasswordCopyWithImpl<$Res> extends _$HomeStateCopyWithImpl<$Res> /// @nodoc -class _$_ResetPassword implements _ResetPassword { +class _$_ResetPassword with DiagnosticableTreeMixin implements _ResetPassword { const _$_ResetPassword(this.profile, this.items); @override @@ -2011,10 +2112,19 @@ class _$_ResetPassword implements _ResetPassword { final List items; @override - String toString() { + String toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) { return 'HomeState.resetPassword(profile: $profile, items: $items)'; } + @override + void debugFillProperties(DiagnosticPropertiesBuilder properties) { + super.debugFillProperties(properties); + properties + ..add(DiagnosticsProperty('type', 'HomeState.resetPassword')) + ..add(DiagnosticsProperty('profile', profile)) + ..add(DiagnosticsProperty('items', items)); + } + @override bool operator ==(dynamic other) { return identical(this, other) || @@ -2157,7 +2267,7 @@ class __$AboutUsCopyWithImpl<$Res> extends _$HomeStateCopyWithImpl<$Res> /// @nodoc -class _$_AboutUs implements _AboutUs { +class _$_AboutUs with DiagnosticableTreeMixin implements _AboutUs { const _$_AboutUs(this.profile, this.items); @override @@ -2166,10 +2276,19 @@ class _$_AboutUs implements _AboutUs { final List items; @override - String toString() { + String toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) { return 'HomeState.aboutUs(profile: $profile, items: $items)'; } + @override + void debugFillProperties(DiagnosticPropertiesBuilder properties) { + super.debugFillProperties(properties); + properties + ..add(DiagnosticsProperty('type', 'HomeState.aboutUs')) + ..add(DiagnosticsProperty('profile', profile)) + ..add(DiagnosticsProperty('items', items)); + } + @override bool operator ==(dynamic other) { return identical(this, other) || diff --git a/lib/src/presentation/blocs/login_bloc/login_bloc.dart b/lib/src/presentation/blocs/login_bloc/login_bloc.dart index 55cae61..d8172bc 100644 --- a/lib/src/presentation/blocs/login_bloc/login_bloc.dart +++ b/lib/src/presentation/blocs/login_bloc/login_bloc.dart @@ -1,7 +1,9 @@ import 'package:flutter_bloc/flutter_bloc.dart'; +import 'package:freezed_annotation/freezed_annotation.dart'; import 'package:gestionuh/src/data/repositories/repositories.dart'; import 'package:gestionuh/src/utils/constants/constants.dart'; +part 'login_bloc.freezed.dart'; part 'login_event.dart'; part 'login_state.dart'; @@ -10,32 +12,32 @@ class LoginBloc extends Bloc { LoginBloc({ required this.authRepository, - }) : super(LoginAttemptInitial(error: '')); + }) : super(const LoginState.initial()); @override Stream mapEventToState(LoginEvent event) async* { - if (event is LoginAttempted) { - yield* handleLoginAttempted(event); - } + yield* event.when( + submit: handleLoginAttempted, + ); } - Stream handleLoginAttempted(LoginAttempted event) async* { - yield LoginAttemptInProgress(); + Stream handleLoginAttempted( + String username, + String password, + bool rememberMe, + ) async* { + yield const LoginState.loading(); final result = await authRepository.login( - event.username.trim(), - event.password.trim(), - event.rememberMe, + username.trim(), + password.trim(), + rememberMe, ); if (result == null) { - yield LoginAttemptInitial( - error: Errors.DefaultError, - ); + yield const LoginState.error(Errors.DefaultError); } else if (result.error != null) { - yield LoginAttemptInitial( - error: result.error!, - ); + yield LoginState.error(result.error!); } else { - yield LoginAttemptSuccess(); + yield const LoginState.success(); } } } diff --git a/lib/src/presentation/blocs/login_bloc/login_bloc.freezed.dart b/lib/src/presentation/blocs/login_bloc/login_bloc.freezed.dart new file mode 100644 index 0000000..cbfaa81 --- /dev/null +++ b/lib/src/presentation/blocs/login_bloc/login_bloc.freezed.dart @@ -0,0 +1,717 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND +// ignore_for_file: unused_element, deprecated_member_use, deprecated_member_use_from_same_package, use_function_type_syntax_for_parameters, unnecessary_const, avoid_init_to_null, invalid_override_different_default_values_named, prefer_expression_function_bodies, annotate_overrides + +part of 'login_bloc.dart'; + +// ************************************************************************** +// FreezedGenerator +// ************************************************************************** + +T _$identity(T value) => value; + +final _privateConstructorUsedError = UnsupportedError( + 'It seems like you constructed your class using `MyClass._()`. This constructor is only meant to be used by freezed and you are not supposed to need it nor use it.\nPlease check the documentation here for more informations: https://github.com/rrousselGit/freezed#custom-getters-and-methods'); + +/// @nodoc +class _$LoginEventTearOff { + const _$LoginEventTearOff(); + + _Submit submit(String username, String password, bool rememberMe) { + return _Submit( + username, + password, + rememberMe, + ); + } +} + +/// @nodoc +const $LoginEvent = _$LoginEventTearOff(); + +/// @nodoc +mixin _$LoginEvent { + String get username => throw _privateConstructorUsedError; + String get password => throw _privateConstructorUsedError; + bool get rememberMe => throw _privateConstructorUsedError; + + @optionalTypeArgs + TResult when({ + required TResult Function(String username, String password, bool rememberMe) + submit, + }) => + throw _privateConstructorUsedError; + @optionalTypeArgs + TResult maybeWhen({ + TResult Function(String username, String password, bool rememberMe)? submit, + required TResult orElse(), + }) => + throw _privateConstructorUsedError; + @optionalTypeArgs + TResult map({ + required TResult Function(_Submit value) submit, + }) => + throw _privateConstructorUsedError; + @optionalTypeArgs + TResult maybeMap({ + TResult Function(_Submit value)? submit, + required TResult orElse(), + }) => + throw _privateConstructorUsedError; + + @JsonKey(ignore: true) + $LoginEventCopyWith get copyWith => + throw _privateConstructorUsedError; +} + +/// @nodoc +abstract class $LoginEventCopyWith<$Res> { + factory $LoginEventCopyWith( + LoginEvent value, $Res Function(LoginEvent) then) = + _$LoginEventCopyWithImpl<$Res>; + $Res call({String username, String password, bool rememberMe}); +} + +/// @nodoc +class _$LoginEventCopyWithImpl<$Res> implements $LoginEventCopyWith<$Res> { + _$LoginEventCopyWithImpl(this._value, this._then); + + final LoginEvent _value; + // ignore: unused_field + final $Res Function(LoginEvent) _then; + + @override + $Res call({ + Object? username = freezed, + Object? password = freezed, + Object? rememberMe = freezed, + }) { + return _then(_value.copyWith( + username: username == freezed + ? _value.username + : username // ignore: cast_nullable_to_non_nullable + as String, + password: password == freezed + ? _value.password + : password // ignore: cast_nullable_to_non_nullable + as String, + rememberMe: rememberMe == freezed + ? _value.rememberMe + : rememberMe // ignore: cast_nullable_to_non_nullable + as bool, + )); + } +} + +/// @nodoc +abstract class _$SubmitCopyWith<$Res> implements $LoginEventCopyWith<$Res> { + factory _$SubmitCopyWith(_Submit value, $Res Function(_Submit) then) = + __$SubmitCopyWithImpl<$Res>; + @override + $Res call({String username, String password, bool rememberMe}); +} + +/// @nodoc +class __$SubmitCopyWithImpl<$Res> extends _$LoginEventCopyWithImpl<$Res> + implements _$SubmitCopyWith<$Res> { + __$SubmitCopyWithImpl(_Submit _value, $Res Function(_Submit) _then) + : super(_value, (v) => _then(v as _Submit)); + + @override + _Submit get _value => super._value as _Submit; + + @override + $Res call({ + Object? username = freezed, + Object? password = freezed, + Object? rememberMe = freezed, + }) { + return _then(_Submit( + username == freezed + ? _value.username + : username // ignore: cast_nullable_to_non_nullable + as String, + password == freezed + ? _value.password + : password // ignore: cast_nullable_to_non_nullable + as String, + rememberMe == freezed + ? _value.rememberMe + : rememberMe // ignore: cast_nullable_to_non_nullable + as bool, + )); + } +} + +/// @nodoc + +class _$_Submit implements _Submit { + const _$_Submit(this.username, this.password, this.rememberMe); + + @override + final String username; + @override + final String password; + @override + final bool rememberMe; + + @override + String toString() { + return 'LoginEvent.submit(username: $username, password: $password, rememberMe: $rememberMe)'; + } + + @override + bool operator ==(dynamic other) { + return identical(this, other) || + (other is _Submit && + (identical(other.username, username) || + const DeepCollectionEquality() + .equals(other.username, username)) && + (identical(other.password, password) || + const DeepCollectionEquality() + .equals(other.password, password)) && + (identical(other.rememberMe, rememberMe) || + const DeepCollectionEquality() + .equals(other.rememberMe, rememberMe))); + } + + @override + int get hashCode => + runtimeType.hashCode ^ + const DeepCollectionEquality().hash(username) ^ + const DeepCollectionEquality().hash(password) ^ + const DeepCollectionEquality().hash(rememberMe); + + @JsonKey(ignore: true) + @override + _$SubmitCopyWith<_Submit> get copyWith => + __$SubmitCopyWithImpl<_Submit>(this, _$identity); + + @override + @optionalTypeArgs + TResult when({ + required TResult Function(String username, String password, bool rememberMe) + submit, + }) { + return submit(username, password, rememberMe); + } + + @override + @optionalTypeArgs + TResult maybeWhen({ + TResult Function(String username, String password, bool rememberMe)? submit, + required TResult orElse(), + }) { + if (submit != null) { + return submit(username, password, rememberMe); + } + return orElse(); + } + + @override + @optionalTypeArgs + TResult map({ + required TResult Function(_Submit value) submit, + }) { + return submit(this); + } + + @override + @optionalTypeArgs + TResult maybeMap({ + TResult Function(_Submit value)? submit, + required TResult orElse(), + }) { + if (submit != null) { + return submit(this); + } + return orElse(); + } +} + +abstract class _Submit implements LoginEvent { + const factory _Submit(String username, String password, bool rememberMe) = + _$_Submit; + + @override + String get username => throw _privateConstructorUsedError; + @override + String get password => throw _privateConstructorUsedError; + @override + bool get rememberMe => throw _privateConstructorUsedError; + @override + @JsonKey(ignore: true) + _$SubmitCopyWith<_Submit> get copyWith => throw _privateConstructorUsedError; +} + +/// @nodoc +class _$LoginStateTearOff { + const _$LoginStateTearOff(); + + _Initial initial() { + return const _Initial(); + } + + _Loading loading() { + return const _Loading(); + } + + _Success success() { + return const _Success(); + } + + _Error error(String error) { + return _Error( + error, + ); + } +} + +/// @nodoc +const $LoginState = _$LoginStateTearOff(); + +/// @nodoc +mixin _$LoginState { + @optionalTypeArgs + TResult when({ + required TResult Function() initial, + required TResult Function() loading, + required TResult Function() success, + required TResult Function(String error) error, + }) => + throw _privateConstructorUsedError; + @optionalTypeArgs + TResult maybeWhen({ + TResult Function()? initial, + TResult Function()? loading, + TResult Function()? success, + TResult Function(String error)? error, + required TResult orElse(), + }) => + throw _privateConstructorUsedError; + @optionalTypeArgs + TResult map({ + required TResult Function(_Initial value) initial, + required TResult Function(_Loading value) loading, + required TResult Function(_Success value) success, + required TResult Function(_Error value) error, + }) => + throw _privateConstructorUsedError; + @optionalTypeArgs + TResult maybeMap({ + TResult Function(_Initial value)? initial, + TResult Function(_Loading value)? loading, + TResult Function(_Success value)? success, + TResult Function(_Error value)? error, + required TResult orElse(), + }) => + throw _privateConstructorUsedError; +} + +/// @nodoc +abstract class $LoginStateCopyWith<$Res> { + factory $LoginStateCopyWith( + LoginState value, $Res Function(LoginState) then) = + _$LoginStateCopyWithImpl<$Res>; +} + +/// @nodoc +class _$LoginStateCopyWithImpl<$Res> implements $LoginStateCopyWith<$Res> { + _$LoginStateCopyWithImpl(this._value, this._then); + + final LoginState _value; + // ignore: unused_field + final $Res Function(LoginState) _then; +} + +/// @nodoc +abstract class _$InitialCopyWith<$Res> { + factory _$InitialCopyWith(_Initial value, $Res Function(_Initial) then) = + __$InitialCopyWithImpl<$Res>; +} + +/// @nodoc +class __$InitialCopyWithImpl<$Res> extends _$LoginStateCopyWithImpl<$Res> + implements _$InitialCopyWith<$Res> { + __$InitialCopyWithImpl(_Initial _value, $Res Function(_Initial) _then) + : super(_value, (v) => _then(v as _Initial)); + + @override + _Initial get _value => super._value as _Initial; +} + +/// @nodoc + +class _$_Initial implements _Initial { + const _$_Initial(); + + @override + String toString() { + return 'LoginState.initial()'; + } + + @override + bool operator ==(dynamic other) { + return identical(this, other) || (other is _Initial); + } + + @override + int get hashCode => runtimeType.hashCode; + + @override + @optionalTypeArgs + TResult when({ + required TResult Function() initial, + required TResult Function() loading, + required TResult Function() success, + required TResult Function(String error) error, + }) { + return initial(); + } + + @override + @optionalTypeArgs + TResult maybeWhen({ + TResult Function()? initial, + TResult Function()? loading, + TResult Function()? success, + TResult Function(String error)? error, + required TResult orElse(), + }) { + if (initial != null) { + return initial(); + } + return orElse(); + } + + @override + @optionalTypeArgs + TResult map({ + required TResult Function(_Initial value) initial, + required TResult Function(_Loading value) loading, + required TResult Function(_Success value) success, + required TResult Function(_Error value) error, + }) { + return initial(this); + } + + @override + @optionalTypeArgs + TResult maybeMap({ + TResult Function(_Initial value)? initial, + TResult Function(_Loading value)? loading, + TResult Function(_Success value)? success, + TResult Function(_Error value)? error, + required TResult orElse(), + }) { + if (initial != null) { + return initial(this); + } + return orElse(); + } +} + +abstract class _Initial implements LoginState { + const factory _Initial() = _$_Initial; +} + +/// @nodoc +abstract class _$LoadingCopyWith<$Res> { + factory _$LoadingCopyWith(_Loading value, $Res Function(_Loading) then) = + __$LoadingCopyWithImpl<$Res>; +} + +/// @nodoc +class __$LoadingCopyWithImpl<$Res> extends _$LoginStateCopyWithImpl<$Res> + implements _$LoadingCopyWith<$Res> { + __$LoadingCopyWithImpl(_Loading _value, $Res Function(_Loading) _then) + : super(_value, (v) => _then(v as _Loading)); + + @override + _Loading get _value => super._value as _Loading; +} + +/// @nodoc + +class _$_Loading implements _Loading { + const _$_Loading(); + + @override + String toString() { + return 'LoginState.loading()'; + } + + @override + bool operator ==(dynamic other) { + return identical(this, other) || (other is _Loading); + } + + @override + int get hashCode => runtimeType.hashCode; + + @override + @optionalTypeArgs + TResult when({ + required TResult Function() initial, + required TResult Function() loading, + required TResult Function() success, + required TResult Function(String error) error, + }) { + return loading(); + } + + @override + @optionalTypeArgs + TResult maybeWhen({ + TResult Function()? initial, + TResult Function()? loading, + TResult Function()? success, + TResult Function(String error)? error, + required TResult orElse(), + }) { + if (loading != null) { + return loading(); + } + return orElse(); + } + + @override + @optionalTypeArgs + TResult map({ + required TResult Function(_Initial value) initial, + required TResult Function(_Loading value) loading, + required TResult Function(_Success value) success, + required TResult Function(_Error value) error, + }) { + return loading(this); + } + + @override + @optionalTypeArgs + TResult maybeMap({ + TResult Function(_Initial value)? initial, + TResult Function(_Loading value)? loading, + TResult Function(_Success value)? success, + TResult Function(_Error value)? error, + required TResult orElse(), + }) { + if (loading != null) { + return loading(this); + } + return orElse(); + } +} + +abstract class _Loading implements LoginState { + const factory _Loading() = _$_Loading; +} + +/// @nodoc +abstract class _$SuccessCopyWith<$Res> { + factory _$SuccessCopyWith(_Success value, $Res Function(_Success) then) = + __$SuccessCopyWithImpl<$Res>; +} + +/// @nodoc +class __$SuccessCopyWithImpl<$Res> extends _$LoginStateCopyWithImpl<$Res> + implements _$SuccessCopyWith<$Res> { + __$SuccessCopyWithImpl(_Success _value, $Res Function(_Success) _then) + : super(_value, (v) => _then(v as _Success)); + + @override + _Success get _value => super._value as _Success; +} + +/// @nodoc + +class _$_Success implements _Success { + const _$_Success(); + + @override + String toString() { + return 'LoginState.success()'; + } + + @override + bool operator ==(dynamic other) { + return identical(this, other) || (other is _Success); + } + + @override + int get hashCode => runtimeType.hashCode; + + @override + @optionalTypeArgs + TResult when({ + required TResult Function() initial, + required TResult Function() loading, + required TResult Function() success, + required TResult Function(String error) error, + }) { + return success(); + } + + @override + @optionalTypeArgs + TResult maybeWhen({ + TResult Function()? initial, + TResult Function()? loading, + TResult Function()? success, + TResult Function(String error)? error, + required TResult orElse(), + }) { + if (success != null) { + return success(); + } + return orElse(); + } + + @override + @optionalTypeArgs + TResult map({ + required TResult Function(_Initial value) initial, + required TResult Function(_Loading value) loading, + required TResult Function(_Success value) success, + required TResult Function(_Error value) error, + }) { + return success(this); + } + + @override + @optionalTypeArgs + TResult maybeMap({ + TResult Function(_Initial value)? initial, + TResult Function(_Loading value)? loading, + TResult Function(_Success value)? success, + TResult Function(_Error value)? error, + required TResult orElse(), + }) { + if (success != null) { + return success(this); + } + return orElse(); + } +} + +abstract class _Success implements LoginState { + const factory _Success() = _$_Success; +} + +/// @nodoc +abstract class _$ErrorCopyWith<$Res> { + factory _$ErrorCopyWith(_Error value, $Res Function(_Error) then) = + __$ErrorCopyWithImpl<$Res>; + $Res call({String error}); +} + +/// @nodoc +class __$ErrorCopyWithImpl<$Res> extends _$LoginStateCopyWithImpl<$Res> + implements _$ErrorCopyWith<$Res> { + __$ErrorCopyWithImpl(_Error _value, $Res Function(_Error) _then) + : super(_value, (v) => _then(v as _Error)); + + @override + _Error get _value => super._value as _Error; + + @override + $Res call({ + Object? error = freezed, + }) { + return _then(_Error( + error == freezed + ? _value.error + : error // ignore: cast_nullable_to_non_nullable + as String, + )); + } +} + +/// @nodoc + +class _$_Error implements _Error { + const _$_Error(this.error); + + @override + final String error; + + @override + String toString() { + return 'LoginState.error(error: $error)'; + } + + @override + bool operator ==(dynamic other) { + return identical(this, other) || + (other is _Error && + (identical(other.error, error) || + const DeepCollectionEquality().equals(other.error, error))); + } + + @override + int get hashCode => + runtimeType.hashCode ^ const DeepCollectionEquality().hash(error); + + @JsonKey(ignore: true) + @override + _$ErrorCopyWith<_Error> get copyWith => + __$ErrorCopyWithImpl<_Error>(this, _$identity); + + @override + @optionalTypeArgs + TResult when({ + required TResult Function() initial, + required TResult Function() loading, + required TResult Function() success, + required TResult Function(String error) error, + }) { + return error(this.error); + } + + @override + @optionalTypeArgs + TResult maybeWhen({ + TResult Function()? initial, + TResult Function()? loading, + TResult Function()? success, + TResult Function(String error)? error, + required TResult orElse(), + }) { + if (error != null) { + return error(this.error); + } + return orElse(); + } + + @override + @optionalTypeArgs + TResult map({ + required TResult Function(_Initial value) initial, + required TResult Function(_Loading value) loading, + required TResult Function(_Success value) success, + required TResult Function(_Error value) error, + }) { + return error(this); + } + + @override + @optionalTypeArgs + TResult maybeMap({ + TResult Function(_Initial value)? initial, + TResult Function(_Loading value)? loading, + TResult Function(_Success value)? success, + TResult Function(_Error value)? error, + required TResult orElse(), + }) { + if (error != null) { + return error(this); + } + return orElse(); + } +} + +abstract class _Error implements LoginState { + const factory _Error(String error) = _$_Error; + + String get error => throw _privateConstructorUsedError; + @JsonKey(ignore: true) + _$ErrorCopyWith<_Error> get copyWith => throw _privateConstructorUsedError; +} diff --git a/lib/src/presentation/blocs/login_bloc/login_event.dart b/lib/src/presentation/blocs/login_bloc/login_event.dart index 7f5bf51..78d7e19 100644 --- a/lib/src/presentation/blocs/login_bloc/login_event.dart +++ b/lib/src/presentation/blocs/login_bloc/login_event.dart @@ -1,15 +1,10 @@ part of 'login_bloc.dart'; -abstract class LoginEvent {} - -class LoginAttempted extends LoginEvent { - final String username; - final String password; - final bool rememberMe; - - LoginAttempted({ - required this.username, - required this.password, - required this.rememberMe, - }); +@freezed +class LoginEvent with _$LoginEvent { + const factory LoginEvent.submit( + String username, + String password, + bool rememberMe, + ) = _Submit; } diff --git a/lib/src/presentation/blocs/login_bloc/login_state.dart b/lib/src/presentation/blocs/login_bloc/login_state.dart index 08786fa..9ea3aab 100644 --- a/lib/src/presentation/blocs/login_bloc/login_state.dart +++ b/lib/src/presentation/blocs/login_bloc/login_state.dart @@ -1,13 +1,9 @@ part of 'login_bloc.dart'; -abstract class LoginState {} - -class LoginAttemptInitial extends LoginState { - final String error; - - LoginAttemptInitial({required this.error}); +@freezed +class LoginState with _$LoginState { + const factory LoginState.initial() = _Initial; + const factory LoginState.loading() = _Loading; + const factory LoginState.success() = _Success; + const factory LoginState.error(String error) = _Error; } - -class LoginAttemptInProgress extends LoginState {} - -class LoginAttemptSuccess extends LoginState {} diff --git a/lib/src/presentation/blocs/recover_password_bloc/recover_password_bloc.dart b/lib/src/presentation/blocs/recover_password_bloc/recover_password_bloc.dart index bdcdc40..c363291 100644 --- a/lib/src/presentation/blocs/recover_password_bloc/recover_password_bloc.dart +++ b/lib/src/presentation/blocs/recover_password_bloc/recover_password_bloc.dart @@ -2,11 +2,12 @@ import 'dart:async'; import 'package:bloc/bloc.dart'; import 'package:flutter/material.dart'; +import 'package:freezed_annotation/freezed_annotation.dart'; import 'package:gestionuh/src/data/models/models.dart'; import 'package:gestionuh/src/data/repositories/repositories.dart'; import 'package:gestionuh/src/utils/constants/constants.dart'; -import 'package:meta/meta.dart'; +part 'recover_password_bloc.freezed.dart'; part 'recover_password_event.dart'; part 'recover_password_state.dart'; @@ -15,95 +16,85 @@ class RecoverPasswordBloc final RecoverPasswordRepository recoverPasswordRepository; RecoverPasswordBloc({required this.recoverPasswordRepository}) - : super(RecoverPasswordInitial(ci: TextEditingController())); + : super(RecoverPasswordState.initial(TextEditingController())); @override Stream mapEventToState( RecoverPasswordEvent event, ) async* { - if (event is RecoverPasswordCISubmit) { - yield* handleCISubmit(event); - } - if (event is RecoverPasswordFinalSubmit) { - yield* handleFinalSubmit(event); - } + yield* event.when( + ciSubmit: handleCISubmit, + finalSubmit: handleFinalSubmit, + ); } - Stream handleCISubmit( - RecoverPasswordCISubmit event, - ) async* { - yield RecoverPasswordCILoading(ci: event.state.ci); + Stream handleCISubmit(TextEditingController ci) async* { + yield RecoverPasswordState.ciLoading(ci); final result = await recoverPasswordRepository.getUserSecurityQuestions( - event.state.ci.text.trim(), + ci.text.trim(), ); if (result == null) { - yield RecoverPasswordCIError( - ci: event.state.ci, - error: Errors.DefaultError, - ); + yield RecoverPasswordState.ciError(ci, Errors.DefaultError); } else if (result.error != null) { - yield RecoverPasswordCIError( - ci: event.state.ci, - error: result.error!, - ); + yield RecoverPasswordState.ciError(ci, result.error!); } else if (result.questions == null) { - yield RecoverPasswordCIError( - ci: event.state.ci, - error: Errors.DefaultError, - ); + yield RecoverPasswordState.ciError(ci, Errors.DefaultError); } else { - yield RecoverPasswordQuestions( - ci: event.state.ci.text.trim(), - questions: result.questions!, - answers: result.questions!.map((_) => TextEditingController()).toList(), - password: TextEditingController(), + yield RecoverPasswordState.questions( + ci.text.trim(), + result.questions!, + result.questions!.map((_) => TextEditingController()).toList(), + TextEditingController(), ); } } Stream handleFinalSubmit( - RecoverPasswordFinalSubmit event, + String ci, + List questions, + List answers, + TextEditingController password, ) async* { - yield RecoverPasswordQuestionsLoading( - ci: event.state.ci, - questions: event.state.questions, - answers: event.state.answers, - password: event.state.password, + yield RecoverPasswordState.questionsLoading( + ci, + questions, + answers, + password, ); final result = await recoverPasswordRepository.passwordRecovery( PasswordResetData( - ci: event.state.ci, - questions: event.state.questions, - answers: event.state.answers.map((e) => e.text.trim()).toList(), - newPassword: event.state.password.text.trim(), + ci: ci, + questions: questions, + answers: answers.map((e) => e.text.trim()).toList(), + newPassword: password.text.trim(), ), ); if (result == null) { - yield RecoverPasswordQuestionsError( - ci: event.state.ci, - questions: event.state.questions, - answers: event.state.answers, - password: event.state.password, - error: Errors.DefaultError, + yield RecoverPasswordState.questionsError( + ci, + questions, + answers, + password, + Errors.DefaultError, ); } else if (result.error != null) { - yield RecoverPasswordQuestionsError( - ci: event.state.ci, - questions: event.state.questions, - answers: event.state.answers, - password: event.state.password, - error: result.error!, + yield RecoverPasswordState.questionsError( + ci, + questions, + answers, + password, + result.error!, ); } else if (result.userId == null) { - yield RecoverPasswordQuestionsError( - ci: event.state.ci, - questions: event.state.questions, - answers: event.state.answers, - password: event.state.password, - error: Errors.DefaultError, + yield RecoverPasswordState.questionsError( + ci, + questions, + answers, + password, + Errors.DefaultError, ); } else { - yield RecoverPasswordSuccess(userId: result.userId!); + yield RecoverPasswordState.success(result.userId!); } } } diff --git a/lib/src/presentation/blocs/recover_password_bloc/recover_password_bloc.freezed.dart b/lib/src/presentation/blocs/recover_password_bloc/recover_password_bloc.freezed.dart new file mode 100644 index 0000000..1d7b5b3 --- /dev/null +++ b/lib/src/presentation/blocs/recover_password_bloc/recover_password_bloc.freezed.dart @@ -0,0 +1,1829 @@ +// GENERATED CODE - DO NOT MODIFY BY HAND +// ignore_for_file: unused_element, deprecated_member_use, deprecated_member_use_from_same_package, use_function_type_syntax_for_parameters, unnecessary_const, avoid_init_to_null, invalid_override_different_default_values_named, prefer_expression_function_bodies, annotate_overrides + +part of 'recover_password_bloc.dart'; + +// ************************************************************************** +// FreezedGenerator +// ************************************************************************** + +T _$identity(T value) => value; + +final _privateConstructorUsedError = UnsupportedError( + 'It seems like you constructed your class using `MyClass._()`. This constructor is only meant to be used by freezed and you are not supposed to need it nor use it.\nPlease check the documentation here for more informations: https://github.com/rrousselGit/freezed#custom-getters-and-methods'); + +/// @nodoc +class _$RecoverPasswordEventTearOff { + const _$RecoverPasswordEventTearOff(); + + _CISubmit ciSubmit(TextEditingController ci) { + return _CISubmit( + ci, + ); + } + + _FinalSubmit finalSubmit(String ci, List questions, + List answers, TextEditingController password) { + return _FinalSubmit( + ci, + questions, + answers, + password, + ); + } +} + +/// @nodoc +const $RecoverPasswordEvent = _$RecoverPasswordEventTearOff(); + +/// @nodoc +mixin _$RecoverPasswordEvent { + @optionalTypeArgs + TResult when({ + required TResult Function(TextEditingController ci) ciSubmit, + required TResult Function(String ci, List questions, + List answers, TextEditingController password) + finalSubmit, + }) => + throw _privateConstructorUsedError; + @optionalTypeArgs + TResult maybeWhen({ + TResult Function(TextEditingController ci)? ciSubmit, + TResult Function( + String ci, + List questions, + List answers, + TextEditingController password)? + finalSubmit, + required TResult orElse(), + }) => + throw _privateConstructorUsedError; + @optionalTypeArgs + TResult map({ + required TResult Function(_CISubmit value) ciSubmit, + required TResult Function(_FinalSubmit value) finalSubmit, + }) => + throw _privateConstructorUsedError; + @optionalTypeArgs + TResult maybeMap({ + TResult Function(_CISubmit value)? ciSubmit, + TResult Function(_FinalSubmit value)? finalSubmit, + required TResult orElse(), + }) => + throw _privateConstructorUsedError; +} + +/// @nodoc +abstract class $RecoverPasswordEventCopyWith<$Res> { + factory $RecoverPasswordEventCopyWith(RecoverPasswordEvent value, + $Res Function(RecoverPasswordEvent) then) = + _$RecoverPasswordEventCopyWithImpl<$Res>; +} + +/// @nodoc +class _$RecoverPasswordEventCopyWithImpl<$Res> + implements $RecoverPasswordEventCopyWith<$Res> { + _$RecoverPasswordEventCopyWithImpl(this._value, this._then); + + final RecoverPasswordEvent _value; + // ignore: unused_field + final $Res Function(RecoverPasswordEvent) _then; +} + +/// @nodoc +abstract class _$CISubmitCopyWith<$Res> { + factory _$CISubmitCopyWith(_CISubmit value, $Res Function(_CISubmit) then) = + __$CISubmitCopyWithImpl<$Res>; + $Res call({TextEditingController ci}); +} + +/// @nodoc +class __$CISubmitCopyWithImpl<$Res> + extends _$RecoverPasswordEventCopyWithImpl<$Res> + implements _$CISubmitCopyWith<$Res> { + __$CISubmitCopyWithImpl(_CISubmit _value, $Res Function(_CISubmit) _then) + : super(_value, (v) => _then(v as _CISubmit)); + + @override + _CISubmit get _value => super._value as _CISubmit; + + @override + $Res call({ + Object? ci = freezed, + }) { + return _then(_CISubmit( + ci == freezed + ? _value.ci + : ci // ignore: cast_nullable_to_non_nullable + as TextEditingController, + )); + } +} + +/// @nodoc + +class _$_CISubmit implements _CISubmit { + const _$_CISubmit(this.ci); + + @override + final TextEditingController ci; + + @override + String toString() { + return 'RecoverPasswordEvent.ciSubmit(ci: $ci)'; + } + + @override + bool operator ==(dynamic other) { + return identical(this, other) || + (other is _CISubmit && + (identical(other.ci, ci) || + const DeepCollectionEquality().equals(other.ci, ci))); + } + + @override + int get hashCode => + runtimeType.hashCode ^ const DeepCollectionEquality().hash(ci); + + @JsonKey(ignore: true) + @override + _$CISubmitCopyWith<_CISubmit> get copyWith => + __$CISubmitCopyWithImpl<_CISubmit>(this, _$identity); + + @override + @optionalTypeArgs + TResult when({ + required TResult Function(TextEditingController ci) ciSubmit, + required TResult Function(String ci, List questions, + List answers, TextEditingController password) + finalSubmit, + }) { + return ciSubmit(ci); + } + + @override + @optionalTypeArgs + TResult maybeWhen({ + TResult Function(TextEditingController ci)? ciSubmit, + TResult Function( + String ci, + List questions, + List answers, + TextEditingController password)? + finalSubmit, + required TResult orElse(), + }) { + if (ciSubmit != null) { + return ciSubmit(ci); + } + return orElse(); + } + + @override + @optionalTypeArgs + TResult map({ + required TResult Function(_CISubmit value) ciSubmit, + required TResult Function(_FinalSubmit value) finalSubmit, + }) { + return ciSubmit(this); + } + + @override + @optionalTypeArgs + TResult maybeMap({ + TResult Function(_CISubmit value)? ciSubmit, + TResult Function(_FinalSubmit value)? finalSubmit, + required TResult orElse(), + }) { + if (ciSubmit != null) { + return ciSubmit(this); + } + return orElse(); + } +} + +abstract class _CISubmit implements RecoverPasswordEvent { + const factory _CISubmit(TextEditingController ci) = _$_CISubmit; + + TextEditingController get ci => throw _privateConstructorUsedError; + @JsonKey(ignore: true) + _$CISubmitCopyWith<_CISubmit> get copyWith => + throw _privateConstructorUsedError; +} + +/// @nodoc +abstract class _$FinalSubmitCopyWith<$Res> { + factory _$FinalSubmitCopyWith( + _FinalSubmit value, $Res Function(_FinalSubmit) then) = + __$FinalSubmitCopyWithImpl<$Res>; + $Res call( + {String ci, + List questions, + List answers, + TextEditingController password}); +} + +/// @nodoc +class __$FinalSubmitCopyWithImpl<$Res> + extends _$RecoverPasswordEventCopyWithImpl<$Res> + implements _$FinalSubmitCopyWith<$Res> { + __$FinalSubmitCopyWithImpl( + _FinalSubmit _value, $Res Function(_FinalSubmit) _then) + : super(_value, (v) => _then(v as _FinalSubmit)); + + @override + _FinalSubmit get _value => super._value as _FinalSubmit; + + @override + $Res call({ + Object? ci = freezed, + Object? questions = freezed, + Object? answers = freezed, + Object? password = freezed, + }) { + return _then(_FinalSubmit( + ci == freezed + ? _value.ci + : ci // ignore: cast_nullable_to_non_nullable + as String, + questions == freezed + ? _value.questions + : questions // ignore: cast_nullable_to_non_nullable + as List, + answers == freezed + ? _value.answers + : answers // ignore: cast_nullable_to_non_nullable + as List, + password == freezed + ? _value.password + : password // ignore: cast_nullable_to_non_nullable + as TextEditingController, + )); + } +} + +/// @nodoc + +class _$_FinalSubmit implements _FinalSubmit { + const _$_FinalSubmit(this.ci, this.questions, this.answers, this.password); + + @override + final String ci; + @override + final List questions; + @override + final List answers; + @override + final TextEditingController password; + + @override + String toString() { + return 'RecoverPasswordEvent.finalSubmit(ci: $ci, questions: $questions, answers: $answers, password: $password)'; + } + + @override + bool operator ==(dynamic other) { + return identical(this, other) || + (other is _FinalSubmit && + (identical(other.ci, ci) || + const DeepCollectionEquality().equals(other.ci, ci)) && + (identical(other.questions, questions) || + const DeepCollectionEquality() + .equals(other.questions, questions)) && + (identical(other.answers, answers) || + const DeepCollectionEquality() + .equals(other.answers, answers)) && + (identical(other.password, password) || + const DeepCollectionEquality() + .equals(other.password, password))); + } + + @override + int get hashCode => + runtimeType.hashCode ^ + const DeepCollectionEquality().hash(ci) ^ + const DeepCollectionEquality().hash(questions) ^ + const DeepCollectionEquality().hash(answers) ^ + const DeepCollectionEquality().hash(password); + + @JsonKey(ignore: true) + @override + _$FinalSubmitCopyWith<_FinalSubmit> get copyWith => + __$FinalSubmitCopyWithImpl<_FinalSubmit>(this, _$identity); + + @override + @optionalTypeArgs + TResult when({ + required TResult Function(TextEditingController ci) ciSubmit, + required TResult Function(String ci, List questions, + List answers, TextEditingController password) + finalSubmit, + }) { + return finalSubmit(ci, questions, answers, password); + } + + @override + @optionalTypeArgs + TResult maybeWhen({ + TResult Function(TextEditingController ci)? ciSubmit, + TResult Function( + String ci, + List questions, + List answers, + TextEditingController password)? + finalSubmit, + required TResult orElse(), + }) { + if (finalSubmit != null) { + return finalSubmit(ci, questions, answers, password); + } + return orElse(); + } + + @override + @optionalTypeArgs + TResult map({ + required TResult Function(_CISubmit value) ciSubmit, + required TResult Function(_FinalSubmit value) finalSubmit, + }) { + return finalSubmit(this); + } + + @override + @optionalTypeArgs + TResult maybeMap({ + TResult Function(_CISubmit value)? ciSubmit, + TResult Function(_FinalSubmit value)? finalSubmit, + required TResult orElse(), + }) { + if (finalSubmit != null) { + return finalSubmit(this); + } + return orElse(); + } +} + +abstract class _FinalSubmit implements RecoverPasswordEvent { + const factory _FinalSubmit( + String ci, + List questions, + List answers, + TextEditingController password) = _$_FinalSubmit; + + String get ci => throw _privateConstructorUsedError; + List get questions => throw _privateConstructorUsedError; + List get answers => throw _privateConstructorUsedError; + TextEditingController get password => throw _privateConstructorUsedError; + @JsonKey(ignore: true) + _$FinalSubmitCopyWith<_FinalSubmit> get copyWith => + throw _privateConstructorUsedError; +} + +/// @nodoc +class _$RecoverPasswordStateTearOff { + const _$RecoverPasswordStateTearOff(); + + _Initial initial(TextEditingController ci) { + return _Initial( + ci, + ); + } + + _CILoading ciLoading(TextEditingController ci) { + return _CILoading( + ci, + ); + } + + _CIError ciError(TextEditingController ci, String error) { + return _CIError( + ci, + error, + ); + } + + _Questions questions(String ci, List questions, + List answers, TextEditingController password) { + return _Questions( + ci, + questions, + answers, + password, + ); + } + + _QuestionsLoading questionsLoading(String ci, List questions, + List answers, TextEditingController password) { + return _QuestionsLoading( + ci, + questions, + answers, + password, + ); + } + + _QuestionsError questionsError( + String ci, + List questions, + List answers, + TextEditingController password, + String error) { + return _QuestionsError( + ci, + questions, + answers, + password, + error, + ); + } + + _Success success(String userId) { + return _Success( + userId, + ); + } +} + +/// @nodoc +const $RecoverPasswordState = _$RecoverPasswordStateTearOff(); + +/// @nodoc +mixin _$RecoverPasswordState { + @optionalTypeArgs + TResult when({ + required TResult Function(TextEditingController ci) initial, + required TResult Function(TextEditingController ci) ciLoading, + required TResult Function(TextEditingController ci, String error) ciError, + required TResult Function(String ci, List questions, + List answers, TextEditingController password) + questions, + required TResult Function(String ci, List questions, + List answers, TextEditingController password) + questionsLoading, + required TResult Function( + String ci, + List questions, + List answers, + TextEditingController password, + String error) + questionsError, + required TResult Function(String userId) success, + }) => + throw _privateConstructorUsedError; + @optionalTypeArgs + TResult maybeWhen({ + TResult Function(TextEditingController ci)? initial, + TResult Function(TextEditingController ci)? ciLoading, + TResult Function(TextEditingController ci, String error)? ciError, + TResult Function( + String ci, + List questions, + List answers, + TextEditingController password)? + questions, + TResult Function( + String ci, + List questions, + List answers, + TextEditingController password)? + questionsLoading, + TResult Function( + String ci, + List questions, + List answers, + TextEditingController password, + String error)? + questionsError, + TResult Function(String userId)? success, + required TResult orElse(), + }) => + throw _privateConstructorUsedError; + @optionalTypeArgs + TResult map({ + required TResult Function(_Initial value) initial, + required TResult Function(_CILoading value) ciLoading, + required TResult Function(_CIError value) ciError, + required TResult Function(_Questions value) questions, + required TResult Function(_QuestionsLoading value) questionsLoading, + required TResult Function(_QuestionsError value) questionsError, + required TResult Function(_Success value) success, + }) => + throw _privateConstructorUsedError; + @optionalTypeArgs + TResult maybeMap({ + TResult Function(_Initial value)? initial, + TResult Function(_CILoading value)? ciLoading, + TResult Function(_CIError value)? ciError, + TResult Function(_Questions value)? questions, + TResult Function(_QuestionsLoading value)? questionsLoading, + TResult Function(_QuestionsError value)? questionsError, + TResult Function(_Success value)? success, + required TResult orElse(), + }) => + throw _privateConstructorUsedError; +} + +/// @nodoc +abstract class $RecoverPasswordStateCopyWith<$Res> { + factory $RecoverPasswordStateCopyWith(RecoverPasswordState value, + $Res Function(RecoverPasswordState) then) = + _$RecoverPasswordStateCopyWithImpl<$Res>; +} + +/// @nodoc +class _$RecoverPasswordStateCopyWithImpl<$Res> + implements $RecoverPasswordStateCopyWith<$Res> { + _$RecoverPasswordStateCopyWithImpl(this._value, this._then); + + final RecoverPasswordState _value; + // ignore: unused_field + final $Res Function(RecoverPasswordState) _then; +} + +/// @nodoc +abstract class _$InitialCopyWith<$Res> { + factory _$InitialCopyWith(_Initial value, $Res Function(_Initial) then) = + __$InitialCopyWithImpl<$Res>; + $Res call({TextEditingController ci}); +} + +/// @nodoc +class __$InitialCopyWithImpl<$Res> + extends _$RecoverPasswordStateCopyWithImpl<$Res> + implements _$InitialCopyWith<$Res> { + __$InitialCopyWithImpl(_Initial _value, $Res Function(_Initial) _then) + : super(_value, (v) => _then(v as _Initial)); + + @override + _Initial get _value => super._value as _Initial; + + @override + $Res call({ + Object? ci = freezed, + }) { + return _then(_Initial( + ci == freezed + ? _value.ci + : ci // ignore: cast_nullable_to_non_nullable + as TextEditingController, + )); + } +} + +/// @nodoc + +class _$_Initial implements _Initial { + const _$_Initial(this.ci); + + @override + final TextEditingController ci; + + @override + String toString() { + return 'RecoverPasswordState.initial(ci: $ci)'; + } + + @override + bool operator ==(dynamic other) { + return identical(this, other) || + (other is _Initial && + (identical(other.ci, ci) || + const DeepCollectionEquality().equals(other.ci, ci))); + } + + @override + int get hashCode => + runtimeType.hashCode ^ const DeepCollectionEquality().hash(ci); + + @JsonKey(ignore: true) + @override + _$InitialCopyWith<_Initial> get copyWith => + __$InitialCopyWithImpl<_Initial>(this, _$identity); + + @override + @optionalTypeArgs + TResult when({ + required TResult Function(TextEditingController ci) initial, + required TResult Function(TextEditingController ci) ciLoading, + required TResult Function(TextEditingController ci, String error) ciError, + required TResult Function(String ci, List questions, + List answers, TextEditingController password) + questions, + required TResult Function(String ci, List questions, + List answers, TextEditingController password) + questionsLoading, + required TResult Function( + String ci, + List questions, + List answers, + TextEditingController password, + String error) + questionsError, + required TResult Function(String userId) success, + }) { + return initial(ci); + } + + @override + @optionalTypeArgs + TResult maybeWhen({ + TResult Function(TextEditingController ci)? initial, + TResult Function(TextEditingController ci)? ciLoading, + TResult Function(TextEditingController ci, String error)? ciError, + TResult Function( + String ci, + List questions, + List answers, + TextEditingController password)? + questions, + TResult Function( + String ci, + List questions, + List answers, + TextEditingController password)? + questionsLoading, + TResult Function( + String ci, + List questions, + List answers, + TextEditingController password, + String error)? + questionsError, + TResult Function(String userId)? success, + required TResult orElse(), + }) { + if (initial != null) { + return initial(ci); + } + return orElse(); + } + + @override + @optionalTypeArgs + TResult map({ + required TResult Function(_Initial value) initial, + required TResult Function(_CILoading value) ciLoading, + required TResult Function(_CIError value) ciError, + required TResult Function(_Questions value) questions, + required TResult Function(_QuestionsLoading value) questionsLoading, + required TResult Function(_QuestionsError value) questionsError, + required TResult Function(_Success value) success, + }) { + return initial(this); + } + + @override + @optionalTypeArgs + TResult maybeMap({ + TResult Function(_Initial value)? initial, + TResult Function(_CILoading value)? ciLoading, + TResult Function(_CIError value)? ciError, + TResult Function(_Questions value)? questions, + TResult Function(_QuestionsLoading value)? questionsLoading, + TResult Function(_QuestionsError value)? questionsError, + TResult Function(_Success value)? success, + required TResult orElse(), + }) { + if (initial != null) { + return initial(this); + } + return orElse(); + } +} + +abstract class _Initial implements RecoverPasswordState { + const factory _Initial(TextEditingController ci) = _$_Initial; + + TextEditingController get ci => throw _privateConstructorUsedError; + @JsonKey(ignore: true) + _$InitialCopyWith<_Initial> get copyWith => + throw _privateConstructorUsedError; +} + +/// @nodoc +abstract class _$CILoadingCopyWith<$Res> { + factory _$CILoadingCopyWith( + _CILoading value, $Res Function(_CILoading) then) = + __$CILoadingCopyWithImpl<$Res>; + $Res call({TextEditingController ci}); +} + +/// @nodoc +class __$CILoadingCopyWithImpl<$Res> + extends _$RecoverPasswordStateCopyWithImpl<$Res> + implements _$CILoadingCopyWith<$Res> { + __$CILoadingCopyWithImpl(_CILoading _value, $Res Function(_CILoading) _then) + : super(_value, (v) => _then(v as _CILoading)); + + @override + _CILoading get _value => super._value as _CILoading; + + @override + $Res call({ + Object? ci = freezed, + }) { + return _then(_CILoading( + ci == freezed + ? _value.ci + : ci // ignore: cast_nullable_to_non_nullable + as TextEditingController, + )); + } +} + +/// @nodoc + +class _$_CILoading implements _CILoading { + const _$_CILoading(this.ci); + + @override + final TextEditingController ci; + + @override + String toString() { + return 'RecoverPasswordState.ciLoading(ci: $ci)'; + } + + @override + bool operator ==(dynamic other) { + return identical(this, other) || + (other is _CILoading && + (identical(other.ci, ci) || + const DeepCollectionEquality().equals(other.ci, ci))); + } + + @override + int get hashCode => + runtimeType.hashCode ^ const DeepCollectionEquality().hash(ci); + + @JsonKey(ignore: true) + @override + _$CILoadingCopyWith<_CILoading> get copyWith => + __$CILoadingCopyWithImpl<_CILoading>(this, _$identity); + + @override + @optionalTypeArgs + TResult when({ + required TResult Function(TextEditingController ci) initial, + required TResult Function(TextEditingController ci) ciLoading, + required TResult Function(TextEditingController ci, String error) ciError, + required TResult Function(String ci, List questions, + List answers, TextEditingController password) + questions, + required TResult Function(String ci, List questions, + List answers, TextEditingController password) + questionsLoading, + required TResult Function( + String ci, + List questions, + List answers, + TextEditingController password, + String error) + questionsError, + required TResult Function(String userId) success, + }) { + return ciLoading(ci); + } + + @override + @optionalTypeArgs + TResult maybeWhen({ + TResult Function(TextEditingController ci)? initial, + TResult Function(TextEditingController ci)? ciLoading, + TResult Function(TextEditingController ci, String error)? ciError, + TResult Function( + String ci, + List questions, + List answers, + TextEditingController password)? + questions, + TResult Function( + String ci, + List questions, + List answers, + TextEditingController password)? + questionsLoading, + TResult Function( + String ci, + List questions, + List answers, + TextEditingController password, + String error)? + questionsError, + TResult Function(String userId)? success, + required TResult orElse(), + }) { + if (ciLoading != null) { + return ciLoading(ci); + } + return orElse(); + } + + @override + @optionalTypeArgs + TResult map({ + required TResult Function(_Initial value) initial, + required TResult Function(_CILoading value) ciLoading, + required TResult Function(_CIError value) ciError, + required TResult Function(_Questions value) questions, + required TResult Function(_QuestionsLoading value) questionsLoading, + required TResult Function(_QuestionsError value) questionsError, + required TResult Function(_Success value) success, + }) { + return ciLoading(this); + } + + @override + @optionalTypeArgs + TResult maybeMap({ + TResult Function(_Initial value)? initial, + TResult Function(_CILoading value)? ciLoading, + TResult Function(_CIError value)? ciError, + TResult Function(_Questions value)? questions, + TResult Function(_QuestionsLoading value)? questionsLoading, + TResult Function(_QuestionsError value)? questionsError, + TResult Function(_Success value)? success, + required TResult orElse(), + }) { + if (ciLoading != null) { + return ciLoading(this); + } + return orElse(); + } +} + +abstract class _CILoading implements RecoverPasswordState { + const factory _CILoading(TextEditingController ci) = _$_CILoading; + + TextEditingController get ci => throw _privateConstructorUsedError; + @JsonKey(ignore: true) + _$CILoadingCopyWith<_CILoading> get copyWith => + throw _privateConstructorUsedError; +} + +/// @nodoc +abstract class _$CIErrorCopyWith<$Res> { + factory _$CIErrorCopyWith(_CIError value, $Res Function(_CIError) then) = + __$CIErrorCopyWithImpl<$Res>; + $Res call({TextEditingController ci, String error}); +} + +/// @nodoc +class __$CIErrorCopyWithImpl<$Res> + extends _$RecoverPasswordStateCopyWithImpl<$Res> + implements _$CIErrorCopyWith<$Res> { + __$CIErrorCopyWithImpl(_CIError _value, $Res Function(_CIError) _then) + : super(_value, (v) => _then(v as _CIError)); + + @override + _CIError get _value => super._value as _CIError; + + @override + $Res call({ + Object? ci = freezed, + Object? error = freezed, + }) { + return _then(_CIError( + ci == freezed + ? _value.ci + : ci // ignore: cast_nullable_to_non_nullable + as TextEditingController, + error == freezed + ? _value.error + : error // ignore: cast_nullable_to_non_nullable + as String, + )); + } +} + +/// @nodoc + +class _$_CIError implements _CIError { + const _$_CIError(this.ci, this.error); + + @override + final TextEditingController ci; + @override + final String error; + + @override + String toString() { + return 'RecoverPasswordState.ciError(ci: $ci, error: $error)'; + } + + @override + bool operator ==(dynamic other) { + return identical(this, other) || + (other is _CIError && + (identical(other.ci, ci) || + const DeepCollectionEquality().equals(other.ci, ci)) && + (identical(other.error, error) || + const DeepCollectionEquality().equals(other.error, error))); + } + + @override + int get hashCode => + runtimeType.hashCode ^ + const DeepCollectionEquality().hash(ci) ^ + const DeepCollectionEquality().hash(error); + + @JsonKey(ignore: true) + @override + _$CIErrorCopyWith<_CIError> get copyWith => + __$CIErrorCopyWithImpl<_CIError>(this, _$identity); + + @override + @optionalTypeArgs + TResult when({ + required TResult Function(TextEditingController ci) initial, + required TResult Function(TextEditingController ci) ciLoading, + required TResult Function(TextEditingController ci, String error) ciError, + required TResult Function(String ci, List questions, + List answers, TextEditingController password) + questions, + required TResult Function(String ci, List questions, + List answers, TextEditingController password) + questionsLoading, + required TResult Function( + String ci, + List questions, + List answers, + TextEditingController password, + String error) + questionsError, + required TResult Function(String userId) success, + }) { + return ciError(ci, error); + } + + @override + @optionalTypeArgs + TResult maybeWhen({ + TResult Function(TextEditingController ci)? initial, + TResult Function(TextEditingController ci)? ciLoading, + TResult Function(TextEditingController ci, String error)? ciError, + TResult Function( + String ci, + List questions, + List answers, + TextEditingController password)? + questions, + TResult Function( + String ci, + List questions, + List answers, + TextEditingController password)? + questionsLoading, + TResult Function( + String ci, + List questions, + List answers, + TextEditingController password, + String error)? + questionsError, + TResult Function(String userId)? success, + required TResult orElse(), + }) { + if (ciError != null) { + return ciError(ci, error); + } + return orElse(); + } + + @override + @optionalTypeArgs + TResult map({ + required TResult Function(_Initial value) initial, + required TResult Function(_CILoading value) ciLoading, + required TResult Function(_CIError value) ciError, + required TResult Function(_Questions value) questions, + required TResult Function(_QuestionsLoading value) questionsLoading, + required TResult Function(_QuestionsError value) questionsError, + required TResult Function(_Success value) success, + }) { + return ciError(this); + } + + @override + @optionalTypeArgs + TResult maybeMap({ + TResult Function(_Initial value)? initial, + TResult Function(_CILoading value)? ciLoading, + TResult Function(_CIError value)? ciError, + TResult Function(_Questions value)? questions, + TResult Function(_QuestionsLoading value)? questionsLoading, + TResult Function(_QuestionsError value)? questionsError, + TResult Function(_Success value)? success, + required TResult orElse(), + }) { + if (ciError != null) { + return ciError(this); + } + return orElse(); + } +} + +abstract class _CIError implements RecoverPasswordState { + const factory _CIError(TextEditingController ci, String error) = _$_CIError; + + TextEditingController get ci => throw _privateConstructorUsedError; + String get error => throw _privateConstructorUsedError; + @JsonKey(ignore: true) + _$CIErrorCopyWith<_CIError> get copyWith => + throw _privateConstructorUsedError; +} + +/// @nodoc +abstract class _$QuestionsCopyWith<$Res> { + factory _$QuestionsCopyWith( + _Questions value, $Res Function(_Questions) then) = + __$QuestionsCopyWithImpl<$Res>; + $Res call( + {String ci, + List questions, + List answers, + TextEditingController password}); +} + +/// @nodoc +class __$QuestionsCopyWithImpl<$Res> + extends _$RecoverPasswordStateCopyWithImpl<$Res> + implements _$QuestionsCopyWith<$Res> { + __$QuestionsCopyWithImpl(_Questions _value, $Res Function(_Questions) _then) + : super(_value, (v) => _then(v as _Questions)); + + @override + _Questions get _value => super._value as _Questions; + + @override + $Res call({ + Object? ci = freezed, + Object? questions = freezed, + Object? answers = freezed, + Object? password = freezed, + }) { + return _then(_Questions( + ci == freezed + ? _value.ci + : ci // ignore: cast_nullable_to_non_nullable + as String, + questions == freezed + ? _value.questions + : questions // ignore: cast_nullable_to_non_nullable + as List, + answers == freezed + ? _value.answers + : answers // ignore: cast_nullable_to_non_nullable + as List, + password == freezed + ? _value.password + : password // ignore: cast_nullable_to_non_nullable + as TextEditingController, + )); + } +} + +/// @nodoc + +class _$_Questions implements _Questions { + const _$_Questions(this.ci, this.questions, this.answers, this.password); + + @override + final String ci; + @override + final List questions; + @override + final List answers; + @override + final TextEditingController password; + + @override + String toString() { + return 'RecoverPasswordState.questions(ci: $ci, questions: $questions, answers: $answers, password: $password)'; + } + + @override + bool operator ==(dynamic other) { + return identical(this, other) || + (other is _Questions && + (identical(other.ci, ci) || + const DeepCollectionEquality().equals(other.ci, ci)) && + (identical(other.questions, questions) || + const DeepCollectionEquality() + .equals(other.questions, questions)) && + (identical(other.answers, answers) || + const DeepCollectionEquality() + .equals(other.answers, answers)) && + (identical(other.password, password) || + const DeepCollectionEquality() + .equals(other.password, password))); + } + + @override + int get hashCode => + runtimeType.hashCode ^ + const DeepCollectionEquality().hash(ci) ^ + const DeepCollectionEquality().hash(questions) ^ + const DeepCollectionEquality().hash(answers) ^ + const DeepCollectionEquality().hash(password); + + @JsonKey(ignore: true) + @override + _$QuestionsCopyWith<_Questions> get copyWith => + __$QuestionsCopyWithImpl<_Questions>(this, _$identity); + + @override + @optionalTypeArgs + TResult when({ + required TResult Function(TextEditingController ci) initial, + required TResult Function(TextEditingController ci) ciLoading, + required TResult Function(TextEditingController ci, String error) ciError, + required TResult Function(String ci, List questions, + List answers, TextEditingController password) + questions, + required TResult Function(String ci, List questions, + List answers, TextEditingController password) + questionsLoading, + required TResult Function( + String ci, + List questions, + List answers, + TextEditingController password, + String error) + questionsError, + required TResult Function(String userId) success, + }) { + return questions(ci, this.questions, answers, password); + } + + @override + @optionalTypeArgs + TResult maybeWhen({ + TResult Function(TextEditingController ci)? initial, + TResult Function(TextEditingController ci)? ciLoading, + TResult Function(TextEditingController ci, String error)? ciError, + TResult Function( + String ci, + List questions, + List answers, + TextEditingController password)? + questions, + TResult Function( + String ci, + List questions, + List answers, + TextEditingController password)? + questionsLoading, + TResult Function( + String ci, + List questions, + List answers, + TextEditingController password, + String error)? + questionsError, + TResult Function(String userId)? success, + required TResult orElse(), + }) { + if (questions != null) { + return questions(ci, this.questions, answers, password); + } + return orElse(); + } + + @override + @optionalTypeArgs + TResult map({ + required TResult Function(_Initial value) initial, + required TResult Function(_CILoading value) ciLoading, + required TResult Function(_CIError value) ciError, + required TResult Function(_Questions value) questions, + required TResult Function(_QuestionsLoading value) questionsLoading, + required TResult Function(_QuestionsError value) questionsError, + required TResult Function(_Success value) success, + }) { + return questions(this); + } + + @override + @optionalTypeArgs + TResult maybeMap({ + TResult Function(_Initial value)? initial, + TResult Function(_CILoading value)? ciLoading, + TResult Function(_CIError value)? ciError, + TResult Function(_Questions value)? questions, + TResult Function(_QuestionsLoading value)? questionsLoading, + TResult Function(_QuestionsError value)? questionsError, + TResult Function(_Success value)? success, + required TResult orElse(), + }) { + if (questions != null) { + return questions(this); + } + return orElse(); + } +} + +abstract class _Questions implements RecoverPasswordState { + const factory _Questions( + String ci, + List questions, + List answers, + TextEditingController password) = _$_Questions; + + String get ci => throw _privateConstructorUsedError; + List get questions => throw _privateConstructorUsedError; + List get answers => throw _privateConstructorUsedError; + TextEditingController get password => throw _privateConstructorUsedError; + @JsonKey(ignore: true) + _$QuestionsCopyWith<_Questions> get copyWith => + throw _privateConstructorUsedError; +} + +/// @nodoc +abstract class _$QuestionsLoadingCopyWith<$Res> { + factory _$QuestionsLoadingCopyWith( + _QuestionsLoading value, $Res Function(_QuestionsLoading) then) = + __$QuestionsLoadingCopyWithImpl<$Res>; + $Res call( + {String ci, + List questions, + List answers, + TextEditingController password}); +} + +/// @nodoc +class __$QuestionsLoadingCopyWithImpl<$Res> + extends _$RecoverPasswordStateCopyWithImpl<$Res> + implements _$QuestionsLoadingCopyWith<$Res> { + __$QuestionsLoadingCopyWithImpl( + _QuestionsLoading _value, $Res Function(_QuestionsLoading) _then) + : super(_value, (v) => _then(v as _QuestionsLoading)); + + @override + _QuestionsLoading get _value => super._value as _QuestionsLoading; + + @override + $Res call({ + Object? ci = freezed, + Object? questions = freezed, + Object? answers = freezed, + Object? password = freezed, + }) { + return _then(_QuestionsLoading( + ci == freezed + ? _value.ci + : ci // ignore: cast_nullable_to_non_nullable + as String, + questions == freezed + ? _value.questions + : questions // ignore: cast_nullable_to_non_nullable + as List, + answers == freezed + ? _value.answers + : answers // ignore: cast_nullable_to_non_nullable + as List, + password == freezed + ? _value.password + : password // ignore: cast_nullable_to_non_nullable + as TextEditingController, + )); + } +} + +/// @nodoc + +class _$_QuestionsLoading implements _QuestionsLoading { + const _$_QuestionsLoading( + this.ci, this.questions, this.answers, this.password); + + @override + final String ci; + @override + final List questions; + @override + final List answers; + @override + final TextEditingController password; + + @override + String toString() { + return 'RecoverPasswordState.questionsLoading(ci: $ci, questions: $questions, answers: $answers, password: $password)'; + } + + @override + bool operator ==(dynamic other) { + return identical(this, other) || + (other is _QuestionsLoading && + (identical(other.ci, ci) || + const DeepCollectionEquality().equals(other.ci, ci)) && + (identical(other.questions, questions) || + const DeepCollectionEquality() + .equals(other.questions, questions)) && + (identical(other.answers, answers) || + const DeepCollectionEquality() + .equals(other.answers, answers)) && + (identical(other.password, password) || + const DeepCollectionEquality() + .equals(other.password, password))); + } + + @override + int get hashCode => + runtimeType.hashCode ^ + const DeepCollectionEquality().hash(ci) ^ + const DeepCollectionEquality().hash(questions) ^ + const DeepCollectionEquality().hash(answers) ^ + const DeepCollectionEquality().hash(password); + + @JsonKey(ignore: true) + @override + _$QuestionsLoadingCopyWith<_QuestionsLoading> get copyWith => + __$QuestionsLoadingCopyWithImpl<_QuestionsLoading>(this, _$identity); + + @override + @optionalTypeArgs + TResult when({ + required TResult Function(TextEditingController ci) initial, + required TResult Function(TextEditingController ci) ciLoading, + required TResult Function(TextEditingController ci, String error) ciError, + required TResult Function(String ci, List questions, + List answers, TextEditingController password) + questions, + required TResult Function(String ci, List questions, + List answers, TextEditingController password) + questionsLoading, + required TResult Function( + String ci, + List questions, + List answers, + TextEditingController password, + String error) + questionsError, + required TResult Function(String userId) success, + }) { + return questionsLoading(ci, this.questions, answers, password); + } + + @override + @optionalTypeArgs + TResult maybeWhen({ + TResult Function(TextEditingController ci)? initial, + TResult Function(TextEditingController ci)? ciLoading, + TResult Function(TextEditingController ci, String error)? ciError, + TResult Function( + String ci, + List questions, + List answers, + TextEditingController password)? + questions, + TResult Function( + String ci, + List questions, + List answers, + TextEditingController password)? + questionsLoading, + TResult Function( + String ci, + List questions, + List answers, + TextEditingController password, + String error)? + questionsError, + TResult Function(String userId)? success, + required TResult orElse(), + }) { + if (questionsLoading != null) { + return questionsLoading(ci, this.questions, answers, password); + } + return orElse(); + } + + @override + @optionalTypeArgs + TResult map({ + required TResult Function(_Initial value) initial, + required TResult Function(_CILoading value) ciLoading, + required TResult Function(_CIError value) ciError, + required TResult Function(_Questions value) questions, + required TResult Function(_QuestionsLoading value) questionsLoading, + required TResult Function(_QuestionsError value) questionsError, + required TResult Function(_Success value) success, + }) { + return questionsLoading(this); + } + + @override + @optionalTypeArgs + TResult maybeMap({ + TResult Function(_Initial value)? initial, + TResult Function(_CILoading value)? ciLoading, + TResult Function(_CIError value)? ciError, + TResult Function(_Questions value)? questions, + TResult Function(_QuestionsLoading value)? questionsLoading, + TResult Function(_QuestionsError value)? questionsError, + TResult Function(_Success value)? success, + required TResult orElse(), + }) { + if (questionsLoading != null) { + return questionsLoading(this); + } + return orElse(); + } +} + +abstract class _QuestionsLoading implements RecoverPasswordState { + const factory _QuestionsLoading( + String ci, + List questions, + List answers, + TextEditingController password) = _$_QuestionsLoading; + + String get ci => throw _privateConstructorUsedError; + List get questions => throw _privateConstructorUsedError; + List get answers => throw _privateConstructorUsedError; + TextEditingController get password => throw _privateConstructorUsedError; + @JsonKey(ignore: true) + _$QuestionsLoadingCopyWith<_QuestionsLoading> get copyWith => + throw _privateConstructorUsedError; +} + +/// @nodoc +abstract class _$QuestionsErrorCopyWith<$Res> { + factory _$QuestionsErrorCopyWith( + _QuestionsError value, $Res Function(_QuestionsError) then) = + __$QuestionsErrorCopyWithImpl<$Res>; + $Res call( + {String ci, + List questions, + List answers, + TextEditingController password, + String error}); +} + +/// @nodoc +class __$QuestionsErrorCopyWithImpl<$Res> + extends _$RecoverPasswordStateCopyWithImpl<$Res> + implements _$QuestionsErrorCopyWith<$Res> { + __$QuestionsErrorCopyWithImpl( + _QuestionsError _value, $Res Function(_QuestionsError) _then) + : super(_value, (v) => _then(v as _QuestionsError)); + + @override + _QuestionsError get _value => super._value as _QuestionsError; + + @override + $Res call({ + Object? ci = freezed, + Object? questions = freezed, + Object? answers = freezed, + Object? password = freezed, + Object? error = freezed, + }) { + return _then(_QuestionsError( + ci == freezed + ? _value.ci + : ci // ignore: cast_nullable_to_non_nullable + as String, + questions == freezed + ? _value.questions + : questions // ignore: cast_nullable_to_non_nullable + as List, + answers == freezed + ? _value.answers + : answers // ignore: cast_nullable_to_non_nullable + as List, + password == freezed + ? _value.password + : password // ignore: cast_nullable_to_non_nullable + as TextEditingController, + error == freezed + ? _value.error + : error // ignore: cast_nullable_to_non_nullable + as String, + )); + } +} + +/// @nodoc + +class _$_QuestionsError implements _QuestionsError { + const _$_QuestionsError( + this.ci, this.questions, this.answers, this.password, this.error); + + @override + final String ci; + @override + final List questions; + @override + final List answers; + @override + final TextEditingController password; + @override + final String error; + + @override + String toString() { + return 'RecoverPasswordState.questionsError(ci: $ci, questions: $questions, answers: $answers, password: $password, error: $error)'; + } + + @override + bool operator ==(dynamic other) { + return identical(this, other) || + (other is _QuestionsError && + (identical(other.ci, ci) || + const DeepCollectionEquality().equals(other.ci, ci)) && + (identical(other.questions, questions) || + const DeepCollectionEquality() + .equals(other.questions, questions)) && + (identical(other.answers, answers) || + const DeepCollectionEquality() + .equals(other.answers, answers)) && + (identical(other.password, password) || + const DeepCollectionEquality() + .equals(other.password, password)) && + (identical(other.error, error) || + const DeepCollectionEquality().equals(other.error, error))); + } + + @override + int get hashCode => + runtimeType.hashCode ^ + const DeepCollectionEquality().hash(ci) ^ + const DeepCollectionEquality().hash(questions) ^ + const DeepCollectionEquality().hash(answers) ^ + const DeepCollectionEquality().hash(password) ^ + const DeepCollectionEquality().hash(error); + + @JsonKey(ignore: true) + @override + _$QuestionsErrorCopyWith<_QuestionsError> get copyWith => + __$QuestionsErrorCopyWithImpl<_QuestionsError>(this, _$identity); + + @override + @optionalTypeArgs + TResult when({ + required TResult Function(TextEditingController ci) initial, + required TResult Function(TextEditingController ci) ciLoading, + required TResult Function(TextEditingController ci, String error) ciError, + required TResult Function(String ci, List questions, + List answers, TextEditingController password) + questions, + required TResult Function(String ci, List questions, + List answers, TextEditingController password) + questionsLoading, + required TResult Function( + String ci, + List questions, + List answers, + TextEditingController password, + String error) + questionsError, + required TResult Function(String userId) success, + }) { + return questionsError(ci, this.questions, answers, password, error); + } + + @override + @optionalTypeArgs + TResult maybeWhen({ + TResult Function(TextEditingController ci)? initial, + TResult Function(TextEditingController ci)? ciLoading, + TResult Function(TextEditingController ci, String error)? ciError, + TResult Function( + String ci, + List questions, + List answers, + TextEditingController password)? + questions, + TResult Function( + String ci, + List questions, + List answers, + TextEditingController password)? + questionsLoading, + TResult Function( + String ci, + List questions, + List answers, + TextEditingController password, + String error)? + questionsError, + TResult Function(String userId)? success, + required TResult orElse(), + }) { + if (questionsError != null) { + return questionsError(ci, this.questions, answers, password, error); + } + return orElse(); + } + + @override + @optionalTypeArgs + TResult map({ + required TResult Function(_Initial value) initial, + required TResult Function(_CILoading value) ciLoading, + required TResult Function(_CIError value) ciError, + required TResult Function(_Questions value) questions, + required TResult Function(_QuestionsLoading value) questionsLoading, + required TResult Function(_QuestionsError value) questionsError, + required TResult Function(_Success value) success, + }) { + return questionsError(this); + } + + @override + @optionalTypeArgs + TResult maybeMap({ + TResult Function(_Initial value)? initial, + TResult Function(_CILoading value)? ciLoading, + TResult Function(_CIError value)? ciError, + TResult Function(_Questions value)? questions, + TResult Function(_QuestionsLoading value)? questionsLoading, + TResult Function(_QuestionsError value)? questionsError, + TResult Function(_Success value)? success, + required TResult orElse(), + }) { + if (questionsError != null) { + return questionsError(this); + } + return orElse(); + } +} + +abstract class _QuestionsError implements RecoverPasswordState { + const factory _QuestionsError( + String ci, + List questions, + List answers, + TextEditingController password, + String error) = _$_QuestionsError; + + String get ci => throw _privateConstructorUsedError; + List get questions => throw _privateConstructorUsedError; + List get answers => throw _privateConstructorUsedError; + TextEditingController get password => throw _privateConstructorUsedError; + String get error => throw _privateConstructorUsedError; + @JsonKey(ignore: true) + _$QuestionsErrorCopyWith<_QuestionsError> get copyWith => + throw _privateConstructorUsedError; +} + +/// @nodoc +abstract class _$SuccessCopyWith<$Res> { + factory _$SuccessCopyWith(_Success value, $Res Function(_Success) then) = + __$SuccessCopyWithImpl<$Res>; + $Res call({String userId}); +} + +/// @nodoc +class __$SuccessCopyWithImpl<$Res> + extends _$RecoverPasswordStateCopyWithImpl<$Res> + implements _$SuccessCopyWith<$Res> { + __$SuccessCopyWithImpl(_Success _value, $Res Function(_Success) _then) + : super(_value, (v) => _then(v as _Success)); + + @override + _Success get _value => super._value as _Success; + + @override + $Res call({ + Object? userId = freezed, + }) { + return _then(_Success( + userId == freezed + ? _value.userId + : userId // ignore: cast_nullable_to_non_nullable + as String, + )); + } +} + +/// @nodoc + +class _$_Success implements _Success { + const _$_Success(this.userId); + + @override + final String userId; + + @override + String toString() { + return 'RecoverPasswordState.success(userId: $userId)'; + } + + @override + bool operator ==(dynamic other) { + return identical(this, other) || + (other is _Success && + (identical(other.userId, userId) || + const DeepCollectionEquality().equals(other.userId, userId))); + } + + @override + int get hashCode => + runtimeType.hashCode ^ const DeepCollectionEquality().hash(userId); + + @JsonKey(ignore: true) + @override + _$SuccessCopyWith<_Success> get copyWith => + __$SuccessCopyWithImpl<_Success>(this, _$identity); + + @override + @optionalTypeArgs + TResult when({ + required TResult Function(TextEditingController ci) initial, + required TResult Function(TextEditingController ci) ciLoading, + required TResult Function(TextEditingController ci, String error) ciError, + required TResult Function(String ci, List questions, + List answers, TextEditingController password) + questions, + required TResult Function(String ci, List questions, + List answers, TextEditingController password) + questionsLoading, + required TResult Function( + String ci, + List questions, + List answers, + TextEditingController password, + String error) + questionsError, + required TResult Function(String userId) success, + }) { + return success(userId); + } + + @override + @optionalTypeArgs + TResult maybeWhen({ + TResult Function(TextEditingController ci)? initial, + TResult Function(TextEditingController ci)? ciLoading, + TResult Function(TextEditingController ci, String error)? ciError, + TResult Function( + String ci, + List questions, + List answers, + TextEditingController password)? + questions, + TResult Function( + String ci, + List questions, + List answers, + TextEditingController password)? + questionsLoading, + TResult Function( + String ci, + List questions, + List answers, + TextEditingController password, + String error)? + questionsError, + TResult Function(String userId)? success, + required TResult orElse(), + }) { + if (success != null) { + return success(userId); + } + return orElse(); + } + + @override + @optionalTypeArgs + TResult map({ + required TResult Function(_Initial value) initial, + required TResult Function(_CILoading value) ciLoading, + required TResult Function(_CIError value) ciError, + required TResult Function(_Questions value) questions, + required TResult Function(_QuestionsLoading value) questionsLoading, + required TResult Function(_QuestionsError value) questionsError, + required TResult Function(_Success value) success, + }) { + return success(this); + } + + @override + @optionalTypeArgs + TResult maybeMap({ + TResult Function(_Initial value)? initial, + TResult Function(_CILoading value)? ciLoading, + TResult Function(_CIError value)? ciError, + TResult Function(_Questions value)? questions, + TResult Function(_QuestionsLoading value)? questionsLoading, + TResult Function(_QuestionsError value)? questionsError, + TResult Function(_Success value)? success, + required TResult orElse(), + }) { + if (success != null) { + return success(this); + } + return orElse(); + } +} + +abstract class _Success implements RecoverPasswordState { + const factory _Success(String userId) = _$_Success; + + String get userId => throw _privateConstructorUsedError; + @JsonKey(ignore: true) + _$SuccessCopyWith<_Success> get copyWith => + throw _privateConstructorUsedError; +} diff --git a/lib/src/presentation/blocs/recover_password_bloc/recover_password_event.dart b/lib/src/presentation/blocs/recover_password_bloc/recover_password_event.dart index 44b9b6b..fab603f 100644 --- a/lib/src/presentation/blocs/recover_password_bloc/recover_password_event.dart +++ b/lib/src/presentation/blocs/recover_password_bloc/recover_password_event.dart @@ -1,16 +1,14 @@ part of 'recover_password_bloc.dart'; -@immutable -abstract class RecoverPasswordEvent {} - -class RecoverPasswordCISubmit extends RecoverPasswordEvent { - final RecoverPasswordInitial state; - - RecoverPasswordCISubmit({required this.state}); -} - -class RecoverPasswordFinalSubmit extends RecoverPasswordEvent { - final RecoverPasswordQuestions state; - - RecoverPasswordFinalSubmit({required this.state}); +@freezed +class RecoverPasswordEvent with _$RecoverPasswordEvent { + const factory RecoverPasswordEvent.ciSubmit( + TextEditingController ci, + ) = _CISubmit; + const factory RecoverPasswordEvent.finalSubmit( + String ci, + List questions, + List answers, + TextEditingController password, + ) = _FinalSubmit; } diff --git a/lib/src/presentation/blocs/recover_password_bloc/recover_password_state.dart b/lib/src/presentation/blocs/recover_password_bloc/recover_password_state.dart index 4eaad48..63765ab 100644 --- a/lib/src/presentation/blocs/recover_password_bloc/recover_password_state.dart +++ b/lib/src/presentation/blocs/recover_password_bloc/recover_password_state.dart @@ -1,86 +1,33 @@ part of 'recover_password_bloc.dart'; -@immutable -abstract class RecoverPasswordState {} - -class RecoverPasswordError extends RecoverPasswordState { - final String error; - - RecoverPasswordError({required this.error}); -} - -class RecoverPasswordInitial extends RecoverPasswordState { - final TextEditingController ci; - - RecoverPasswordInitial({required this.ci}); -} - -class RecoverPasswordCILoading extends RecoverPasswordInitial { - RecoverPasswordCILoading({ - required TextEditingController ci, - }) : super(ci: ci); -} - -class RecoverPasswordCIError extends RecoverPasswordInitial - implements RecoverPasswordError { - @override - final String error; - - RecoverPasswordCIError({ - required TextEditingController ci, - required this.error, - }) : super(ci: ci); -} - -class RecoverPasswordQuestions extends RecoverPasswordState { - final String ci; - final List questions; - final List answers; - final TextEditingController password; - - RecoverPasswordQuestions({ - required this.ci, - required this.questions, - required this.answers, - required this.password, - }); -} - -class RecoverPasswordQuestionsLoading extends RecoverPasswordQuestions { - RecoverPasswordQuestionsLoading({ - required String ci, - required List questions, - required List answers, - required TextEditingController password, - }) : super( - ci: ci, - questions: questions, - answers: answers, - password: password, - ); -} - -class RecoverPasswordQuestionsError extends RecoverPasswordQuestions - implements RecoverPasswordError { - @override - final String error; - - RecoverPasswordQuestionsError({ - required String ci, - required List questions, - required List answers, - required TextEditingController password, - required this.error, - }) : super( - ci: ci, - questions: questions, - answers: answers, - password: password, - ); -} - -class RecoverPasswordSuccess extends RecoverPasswordState { - final String userId; - - RecoverPasswordSuccess({required this.userId}); +@freezed +class RecoverPasswordState with _$RecoverPasswordState { + const factory RecoverPasswordState.initial(TextEditingController ci) = + _Initial; + const factory RecoverPasswordState.ciLoading(TextEditingController ci) = + _CILoading; + const factory RecoverPasswordState.ciError( + TextEditingController ci, + String error, + ) = _CIError; + const factory RecoverPasswordState.questions( + String ci, + List questions, + List answers, + TextEditingController password, + ) = _Questions; + const factory RecoverPasswordState.questionsLoading( + String ci, + List questions, + List answers, + TextEditingController password, + ) = _QuestionsLoading; + const factory RecoverPasswordState.questionsError( + String ci, + List questions, + List answers, + TextEditingController password, + String error, + ) = _QuestionsError; + const factory RecoverPasswordState.success(String userId) = _Success; } diff --git a/lib/src/presentation/pages/login_page.dart b/lib/src/presentation/pages/login_page.dart index ba411f3..de39039 100644 --- a/lib/src/presentation/pages/login_page.dart +++ b/lib/src/presentation/pages/login_page.dart @@ -1,7 +1,6 @@ import 'package:flutter/material.dart'; import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:gestionuh/src/data/local/local_storage.dart'; -import 'package:gestionuh/src/data/repositories/repositories.dart'; import 'package:gestionuh/src/presentation/blocs/blocs.dart'; import 'package:gestionuh/src/presentation/widgets/bottom_sheet.dart'; import 'package:gestionuh/src/presentation/widgets/flash_helper.dart'; @@ -24,10 +23,10 @@ class _LoginPageState extends State { void _loginAction(BuildContext context) { context.read().add( - LoginAttempted( - username: _usernameController.text, - password: _passwordController.text, - rememberMe: _rememberMe, + LoginEvent.submit( + _usernameController.text, + _passwordController.text, + _rememberMe, ), ); } @@ -49,7 +48,6 @@ class _LoginPageState extends State { @override Widget build(BuildContext context) { - final authRepo = GetIt.I(); return Scaffold( appBar: AppBar( title: const Text('Iniciar Sesión'), @@ -58,142 +56,150 @@ class _LoginPageState extends State { bottomSheet: const GestionUHBottomSheet(), body: BlocConsumer( listener: (context, state) { - if (authRepo.logged) { - Navigator.of(context).pushReplacementNamed(HOME_ROUTE_NAME); - } - if (state is LoginAttemptInitial) { - FlashHelper.errorBar(context, message: state.error); - } + state.maybeMap( + success: (state) { + Navigator.of(context).pushReplacementNamed(HOME_ROUTE_NAME); + }, + error: (state) { + FlashHelper.errorBar(context, message: state.error); + }, + orElse: () {}, + ); }, builder: (context, state) { - if (state is LoginAttemptInitial) { - return Scrollbar( - child: SingleChildScrollView( - child: Center( - child: Container( - width: getValueForScreenType( - context: context, - mobile: MediaQuery.of(context).size.width, - tablet: MediaQuery.of(context).size.width * 0.5, - ), - padding: const EdgeInsets.only( - top: 30, - bottom: 9, - left: 18, - right: 18, - ), - child: Column( - mainAxisSize: MainAxisSize.min, - children: [ - const SizedBox( - height: 10, - ), - Image.asset( - 'assets/images/splash.png', - ), - const SizedBox( - height: 40, - ), - SizedBox( - height: 40, - child: Row( - mainAxisSize: MainAxisSize.min, - mainAxisAlignment: MainAxisAlignment.center, - children: [ - Expanded( - flex: 7, - child: GestionUhDefaultTextField( - labelText: 'Usuario', - controller: _usernameController, - ), - ), - ], - ), - ), - const SizedBox( - height: 10, - ), - GestionUhDefaultTextField( - labelText: 'Contraseña', - controller: _passwordController, - keyboardType: TextInputType.visiblePassword, - ), - const SizedBox( - height: 20, + return state.when( + initial: _buildContent, + loading: _buildLoading, + success: _buildLoading, + error: (_) => _buildContent(), + ); + }, + ), + ); + } + + Widget _buildContent() { + return Scrollbar( + child: SingleChildScrollView( + child: Center( + child: Container( + width: getValueForScreenType( + context: context, + mobile: MediaQuery.of(context).size.width, + tablet: MediaQuery.of(context).size.width * 0.5, + ), + padding: const EdgeInsets.only( + top: 30, + bottom: 9, + left: 18, + right: 18, + ), + child: Column( + mainAxisSize: MainAxisSize.min, + children: [ + const SizedBox( + height: 10, + ), + Image.asset( + 'assets/images/splash.png', + ), + const SizedBox( + height: 40, + ), + SizedBox( + height: 40, + child: Row( + mainAxisSize: MainAxisSize.min, + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Expanded( + flex: 7, + child: GestionUhDefaultTextField( + labelText: 'Usuario', + controller: _usernameController, ), - if (GetIt.I().isSecureStorageAvailable) - GestureDetector( - onTap: () => - setState(() => _rememberMe = !_rememberMe), - child: Container( - margin: - const EdgeInsets.symmetric(horizontal: 15), - child: Row( - children: [ - Expanded( - child: Text( - '¿Desea recordar la sesión?', - style: - Theme.of(context).textTheme.subtitle1, - ), - ), - Text( - 'No', - style: - Theme.of(context).textTheme.subtitle1, - ), - Switch( - value: _rememberMe, - activeColor: Theme.of(context).primaryColor, - onChanged: (value) => - setState(() => _rememberMe = value), - ), - Text( - 'Si', - style: - Theme.of(context).textTheme.subtitle1, - ), - ], - ), + ), + ], + ), + ), + const SizedBox( + height: 10, + ), + GestionUhDefaultTextField( + labelText: 'Contraseña', + controller: _passwordController, + keyboardType: TextInputType.visiblePassword, + ), + const SizedBox( + height: 20, + ), + if (GetIt.I().isSecureStorageAvailable) + GestureDetector( + onTap: () => setState(() => _rememberMe = !_rememberMe), + child: Container( + margin: const EdgeInsets.symmetric(horizontal: 15), + child: Row( + children: [ + Expanded( + child: Text( + '¿Desea recordar la sesión?', + style: Theme.of(context).textTheme.subtitle1, ), ), - const SizedBox( - height: 5, - ), - GestionUhDefaultButton( - text: 'Iniciar Sesión', - onPressed: () => _loginAction(context), - ), - const SizedBox( - height: 5, - ), - GestionUhDefaultButton( - text: 'Recuperar Contraseña', - onPressed: () => _recoverAction(context), - ), - const SizedBox( - height: 5, - ), - GestionUhDefaultButton( - text: 'Registrarse', - onPressed: () => _registerAction(context), - ), - ], + Text( + 'No', + style: Theme.of(context).textTheme.subtitle1, + ), + Switch( + value: _rememberMe, + activeColor: Theme.of(context).primaryColor, + onChanged: (value) => + setState(() => _rememberMe = value), + ), + Text( + 'Si', + style: Theme.of(context).textTheme.subtitle1, + ), + ], + ), ), ), + const SizedBox( + height: 5, + ), + GestionUhDefaultButton( + text: 'Iniciar Sesión', + onPressed: () => _loginAction(context), + ), + const SizedBox( + height: 5, + ), + GestionUhDefaultButton( + text: 'Recuperar Contraseña', + onPressed: () => _recoverAction(context), + ), + const SizedBox( + height: 5, + ), + GestionUhDefaultButton( + text: 'Registrarse', + onPressed: () => _registerAction(context), ), - ), - ); - } - return Center( - child: Column( - mainAxisAlignment: MainAxisAlignment.center, - children: const [ - GestionUhLoadingIndicator(), ], ), - ); - }, + ), + ), + ), + ); + } + + Widget _buildLoading() { + return Center( + child: Column( + mainAxisAlignment: MainAxisAlignment.center, + children: const [ + GestionUhLoadingIndicator(), + ], ), ); } diff --git a/lib/src/presentation/pages/recover_password_page.dart b/lib/src/presentation/pages/recover_password_page.dart index ca4aa1c..ea041bd 100644 --- a/lib/src/presentation/pages/recover_password_page.dart +++ b/lib/src/presentation/pages/recover_password_page.dart @@ -12,216 +12,264 @@ class RecoverPasswordPage extends StatelessWidget { @override Widget build(BuildContext context) { return Scaffold( - appBar: AppBar( - title: const Text('Recuperar Contraseña'), - centerTitle: true, - ), - bottomSheet: const GestionUHBottomSheet(), - body: Scrollbar( - child: Center( - child: SizedBox( - width: getValueForScreenType( - context: context, - mobile: MediaQuery.of(context).size.width, - tablet: MediaQuery.of(context).size.width * 0.5, - ), - child: BlocConsumer( - listener: (context, state) { - if (state is RecoverPasswordError) { + appBar: AppBar( + title: const Text('Recuperar Contraseña'), + centerTitle: true, + ), + bottomSheet: const GestionUHBottomSheet(), + body: Scrollbar( + child: Center( + child: SizedBox( + width: getValueForScreenType( + context: context, + mobile: MediaQuery.of(context).size.width, + tablet: MediaQuery.of(context).size.width * 0.5, + ), + child: BlocConsumer( + listener: (context, state) { + state.maybeMap( + ciError: (state) { FlashHelper.errorBar(context, message: state.error); - } - }, - builder: (context, state) { - if (state is RecoverPasswordInitial) { - return Form( - key: _formKey, - child: Column( - mainAxisAlignment: MainAxisAlignment.center, - children: [ - Opacity( - opacity: state is RecoverPasswordCILoading ? 1 : 0, - child: const GestionUhLoadingIndicator(), - ), - Container( - padding: const EdgeInsets.only( - top: 30, - bottom: 9, - left: 18, - right: 18, - ), - child: Column( - children: [ - Container( - padding: const EdgeInsets.symmetric( - vertical: 8.0, - ), - child: GestionUhDefaultTextField( - labelText: 'Número de Carnet de Identidad*', - controller: state.ci, - validator: identityNumberCIValidator, - autovalidateMode: AutovalidateMode.disabled, - keyboardType: TextInputType.text, - ), - ), - const SizedBox( - height: 25, - ), - GestionUhDefaultButton( - text: 'Continuar', - onPressed: () { - if (state is RecoverPasswordCILoading || - !_formKey.currentState!.validate()) { - return; - } - context.read().add( - RecoverPasswordCISubmit(state: state)); - }, - ), - ], - ), - ) - ], - ), + }, + questionsError: (state) { + FlashHelper.errorBar(context, message: state.error); + }, + orElse: () {}, + ); + }, + builder: (context, state) { + return state.when( + initial: (ci) => _buildInitial(context, ci, false), + ciLoading: (ci) => _buildInitial(context, ci, true), + ciError: (ci, _) => _buildInitial(context, ci, false), + questions: (ci, questions, answers, password) { + return _buildQuestions( + context, + ci, + questions, + answers, + password, + false, ); - } - if (state is RecoverPasswordQuestions) { - return SingleChildScrollView( - child: Form( - key: _formKey, - child: Column( - mainAxisSize: MainAxisSize.min, - children: [ - Opacity( - opacity: state is RecoverPasswordQuestionsLoading - ? 1 - : 0, - child: const LinearProgressIndicator(), - ), - Container( - padding: const EdgeInsets.only( - top: 30, - bottom: 9, - left: 18, - right: 18, - ), - child: Column( - children: [ - for (var i = 0; - i < state.questions.length; - ++i) - Column( - children: [ - Text(state.questions[i]), - Container( - padding: const EdgeInsets.symmetric( - vertical: 8.0, - ), - child: GestionUhDefaultTextField( - controller: state.answers[i], - validator: (value) { - if (value == null || - value.isEmpty) { - return 'La respuesta es necesaria.'; - } - return null; - }, - autovalidateMode: - AutovalidateMode.disabled, - borderRadius: - const BorderRadius.only( - topLeft: Radius.circular(5), - bottomLeft: Radius.circular(5), - ), - ), - ), - const SizedBox( - height: 10, - ), - ], - ), - Padding( - padding: const EdgeInsets.symmetric( - vertical: 8.0), - child: GestionUhDefaultTextField( - labelText: 'Contraseña*', - controller: state.password, - validator: safetyPasswordValidator, - autovalidateMode: - AutovalidateMode.disabled, - keyboardType: - TextInputType.visiblePassword, - ), - ), - const SizedBox( - height: 10, - ), - Padding( - padding: const EdgeInsets.symmetric( - vertical: 8.0, - ), - child: GestionUhDefaultTextField( - labelText: 'Repetir Contraseña*', - validator: (value) { - if (value != state.password.text) { - return 'Las contraseñas deben coincidir'; - } - return null; - }, - autovalidateMode: - AutovalidateMode.disabled, - keyboardType: - TextInputType.visiblePassword, - ), - ), - const SizedBox( - height: 25, - ), - GestionUhDefaultButton( - text: 'Continuar', - onPressed: () { - if (state is RecoverPasswordCILoading || - !_formKey.currentState!.validate()) { - return; - } - context.read().add( - RecoverPasswordFinalSubmit( - state: state)); - }, - ), - ], - ), - ) - ], - ), - ), + }, + questionsLoading: (ci, questions, answers, password) { + return _buildQuestions( + context, + ci, + questions, + answers, + password, + true, + ); + }, + questionsError: (ci, questions, answers, password, _) { + return _buildQuestions( + context, + ci, + questions, + answers, + password, + false, ); - } - if (state is RecoverPasswordSuccess) { - return Container( - margin: const EdgeInsets.all(30), - child: Column( - mainAxisAlignment: MainAxisAlignment.center, - children: [ - Text( - 'Se ha cambiado correctamente la contraseña ' - 'de la cuenta "${state.userId}".', - textAlign: TextAlign.center, - style: Theme.of(context).textTheme.subtitle1, + }, + success: (userId) => _buildSuccess(context, userId), + ); + }, + ), + ), + ), + ), + ); + } + + Widget _buildInitial( + BuildContext context, + TextEditingController ci, + bool loading, + ) { + return Form( + key: _formKey, + child: Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Opacity( + opacity: loading ? 1 : 0, + child: const GestionUhLoadingIndicator(), + ), + Container( + padding: const EdgeInsets.only( + top: 30, + bottom: 9, + left: 18, + right: 18, + ), + child: Column( + children: [ + Container( + padding: const EdgeInsets.symmetric( + vertical: 8.0, + ), + child: GestionUhDefaultTextField( + labelText: 'Número de Carnet de Identidad*', + controller: ci, + validator: identityNumberCIValidator, + autovalidateMode: AutovalidateMode.disabled, + keyboardType: TextInputType.text, + ), + ), + const SizedBox( + height: 25, + ), + GestionUhDefaultButton( + text: 'Continuar', + onPressed: () { + if (loading || !_formKey.currentState!.validate()) { + return; + } + context + .read() + .add(RecoverPasswordEvent.ciSubmit(ci)); + }, + ), + ], + ), + ) + ], + ), + ); + } + + Widget _buildQuestions( + BuildContext context, + String ci, + List questions, + List answers, + TextEditingController password, + bool loading, + ) { + return SingleChildScrollView( + child: Form( + key: _formKey, + child: Column( + mainAxisSize: MainAxisSize.min, + children: [ + Opacity( + opacity: loading ? 1 : 0, + child: const LinearProgressIndicator(), + ), + Container( + padding: const EdgeInsets.only( + top: 30, + bottom: 9, + left: 18, + right: 18, + ), + child: Column( + children: [ + for (var i = 0; i < questions.length; ++i) + Column( + children: [ + Text(questions[i]), + Container( + padding: const EdgeInsets.symmetric( + vertical: 8.0, ), - const SizedBox(height: 30), - GestionUhDefaultButton( - onPressed: () => Navigator.of(context).pop(), - child: const Text('Ok'), + child: GestionUhDefaultTextField( + controller: answers[i], + validator: (value) { + if (value == null || value.isEmpty) { + return 'La respuesta es necesaria.'; + } + return null; + }, + autovalidateMode: AutovalidateMode.disabled, + borderRadius: const BorderRadius.only( + topLeft: Radius.circular(5), + bottomLeft: Radius.circular(5), + ), ), - ], - ), - ); - } - return Container(); - }, + ), + const SizedBox( + height: 10, + ), + ], + ), + Padding( + padding: const EdgeInsets.symmetric(vertical: 8.0), + child: GestionUhDefaultTextField( + labelText: 'Contraseña*', + controller: password, + validator: safetyPasswordValidator, + autovalidateMode: AutovalidateMode.disabled, + keyboardType: TextInputType.visiblePassword, + ), + ), + const SizedBox( + height: 10, + ), + Padding( + padding: const EdgeInsets.symmetric( + vertical: 8.0, + ), + child: GestionUhDefaultTextField( + labelText: 'Repetir Contraseña*', + validator: (value) { + if (value != password.text) { + return 'Las contraseñas deben coincidir'; + } + return null; + }, + autovalidateMode: AutovalidateMode.disabled, + keyboardType: TextInputType.visiblePassword, + ), + ), + const SizedBox( + height: 25, + ), + GestionUhDefaultButton( + text: 'Continuar', + onPressed: () { + if (loading || !_formKey.currentState!.validate()) { + return; + } + context + .read() + .add(RecoverPasswordEvent.finalSubmit( + ci, + questions, + answers, + password, + )); + }, + ), + ], ), - ), + ) + ], + ), + ), + ); + } + + Widget _buildSuccess(BuildContext context, String userId) { + return Container( + margin: const EdgeInsets.all(30), + child: Column( + mainAxisAlignment: MainAxisAlignment.center, + children: [ + Text( + 'Se ha cambiado correctamente la contraseña ' + 'de la cuenta "$userId".', + textAlign: TextAlign.center, + style: Theme.of(context).textTheme.subtitle1, + ), + const SizedBox(height: 30), + GestionUhDefaultButton( + onPressed: () => Navigator.of(context).pop(), + child: const Text('Ok'), ), - )); + ], + ), + ); } } From 8320020ff1ffb0d3ac2e0fd22e13253ab02f9bb2 Mon Sep 17 00:00:00 2001 From: Leonel Garcia Date: Sun, 25 Apr 2021 00:16:57 -0400 Subject: [PATCH 53/59] Add validators for evict to write an empty space at the beginning or at the end --- lib/src/utils/validators.dart | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/lib/src/utils/validators.dart b/lib/src/utils/validators.dart index 35c0bc3..32bda49 100644 --- a/lib/src/utils/validators.dart +++ b/lib/src/utils/validators.dart @@ -1,6 +1,8 @@ String? safetyPasswordValidator(String? value) { if (value == null || value.length < 8) { return 'Debe contener al menos 8 caracteres'; + } else if (value.length != value.trim().length) { + return 'No se permiten espacios al inicio o al final'; } else if (!value.contains(RegExp(r'[!#$@\[\]\\.,%&*+/=?^_`{|}~-]'))) { return 'Debe contener al menos un caracter especial'; } else if (!value.contains(RegExp('[0-9]'))) { @@ -32,6 +34,19 @@ String? answerValidator(String? value) { if (value == null || value.isEmpty) { return 'Debe responder la pregunta seleccionada'; } + if (value.length != value.trim().length) { + return 'No puede contener espacios al inicio o al final'; + } + return null; +} + +String? userNameValidator(String? value) { + if (value == null || value.isEmpty) { + return 'Debe introducir su nombre de usuario'; + } + if (value.length != value.trim().length) { + return 'No puede contener espacios al inicio o al final'; + } return null; } From b2a45a7eadaed9bdf36c29ff06bd0aff1c874813 Mon Sep 17 00:00:00 2001 From: Leonel Garcia Date: Sun, 25 Apr 2021 00:18:31 -0400 Subject: [PATCH 54/59] Form validation in Login page --- lib/src/presentation/pages/login_page.dart | 25 +++++++++++++--------- 1 file changed, 15 insertions(+), 10 deletions(-) diff --git a/lib/src/presentation/pages/login_page.dart b/lib/src/presentation/pages/login_page.dart index 635d24a..055d8a4 100644 --- a/lib/src/presentation/pages/login_page.dart +++ b/lib/src/presentation/pages/login_page.dart @@ -7,6 +7,7 @@ import 'package:gestionuh/src/presentation/widgets/bottom_sheet.dart'; import 'package:gestionuh/src/presentation/widgets/flash_helper.dart'; import 'package:gestionuh/src/presentation/widgets/widgets.dart'; import 'package:gestionuh/src/utils/constants/routes.dart'; +import 'package:gestionuh/src/utils/validators.dart'; import 'package:get_it/get_it.dart'; import 'package:responsive_builder/responsive_builder.dart'; @@ -21,15 +22,18 @@ class _LoginPageState extends State { final _userNameController = TextEditingController(); final _passwordController = TextEditingController(); bool _rememberMe = false; + final _formLoginKey = GlobalKey(); void _loginAction(BuildContext context) { - context.read().add( - LoginAttempted( - username: _usernameController.text, - password: _passwordController.text, - rememberMe: _rememberMe, - ), - ); + if (_formLoginKey.currentState?.validate() ?? false) { + context.read().add( + LoginEvent.loginAttempted( + userName: _userNameController.text, + password: _passwordController.text, + rememberMe: _rememberMe, + ), + ); + } } void _recoverAction(BuildContext context) { @@ -108,7 +112,6 @@ class _LoginPageState extends State { height: 40, ), SizedBox( - height: 40, child: Row( mainAxisSize: MainAxisSize.min, mainAxisAlignment: MainAxisAlignment.center, @@ -116,9 +119,9 @@ class _LoginPageState extends State { Expanded( flex: 7, child: GestionUhDefaultTextField( - labelText: 'Usuario', + labelText: 'Nombre de Usuario', controller: _userNameController, - validator: null, + validator: userNameValidator, autovalidateMode: AutovalidateMode.disabled, ), ), @@ -131,6 +134,8 @@ class _LoginPageState extends State { GestionUhDefaultTextField( labelText: 'Contraseña', controller: _passwordController, + autovalidateMode: AutovalidateMode.disabled, + validator: currentPasswordValidator, keyboardType: TextInputType.visiblePassword, ), const SizedBox( From 94b568cce81891fd7a1c3f1ecc6b6fedabc8da84 Mon Sep 17 00:00:00 2001 From: Leonel Garcia Date: Sun, 25 Apr 2021 01:16:40 -0400 Subject: [PATCH 55/59] Fix using scrollController after disposing it --- .../presentation/widgets/flash_helper.dart | 65 +++++++++++-------- 1 file changed, 39 insertions(+), 26 deletions(-) diff --git a/lib/src/presentation/widgets/flash_helper.dart b/lib/src/presentation/widgets/flash_helper.dart index 3d7557c..9c3c072 100644 --- a/lib/src/presentation/widgets/flash_helper.dart +++ b/lib/src/presentation/widgets/flash_helper.dart @@ -405,6 +405,7 @@ class FlashHelper { static Future aceptDeclineDialog(BuildContext context) { bool acceptAvailable = false; + bool disposedScrollController = false; final scrollController = ScrollController(); return showFlash( context: context, @@ -415,25 +416,27 @@ class FlashHelper { return StatefulBuilder( builder: (context, setState) { - scrollController.addListener(() { - final maxScroll = scrollController.position.maxScrollExtent; - final currentScroll = scrollController.position.pixels; - if (!acceptAvailable && maxScroll == currentScroll) { - setState(() { - acceptAvailable = true; - }); - } - }); - WidgetsBinding.instance!.addPostFrameCallback((_) { - // in case that there is no need to scroll - if (!acceptAvailable && - scrollController.position.pixels == - scrollController.position.maxScrollExtent) { - setState(() { - acceptAvailable = true; - }); - } - }); + if (!disposedScrollController) { + scrollController.addListener(() { + final maxScroll = scrollController.position.maxScrollExtent; + final currentScroll = scrollController.position.pixels; + if (!acceptAvailable && maxScroll == currentScroll) { + setState(() { + acceptAvailable = true; + }); + } + }); + WidgetsBinding.instance!.addPostFrameCallback((_) { + // in case that there is no need to scroll + if (!acceptAvailable && + scrollController.position.pixels == + scrollController.position.maxScrollExtent) { + setState(() { + acceptAvailable = true; + }); + } + }); + } return SafeArea( child: Flash.dialog( @@ -458,7 +461,9 @@ class FlashHelper { child: Stack( children: [ SingleChildScrollView( - controller: scrollController, + controller: disposedScrollController + ? ScrollController() + : scrollController, child: Column( mainAxisSize: MainAxisSize.min, children: [ @@ -502,18 +507,26 @@ class FlashHelper { GestionUhDefaultButton( isSecundary: true, onPressed: () { - scrollController.dispose(); - controller.dismiss(false); + if (!disposedScrollController) { + setState(() { + disposedScrollController = true; + scrollController.dispose(); + controller.dismiss(false); + }); + } }, text: 'No Acepto', // child: const Text('No acepto'), ), GestionUhDefaultButton( onPressed: acceptAvailable - ? () { - scrollController.dispose(); - controller.dismiss(true); - } + ? () => disposedScrollController + ? null + : setState(() { + disposedScrollController = true; + scrollController.dispose(); + controller.dismiss(true); + }) : null, text: 'Acepto', ), From 9718e78fda9b2e4fef6a0257360cbeebd2a1bfcc Mon Sep 17 00:00:00 2001 From: rmarticedeno Date: Sun, 25 Apr 2021 01:19:46 -0400 Subject: [PATCH 56/59] Add Recovery Error --- lib/src/utils/constants/errors.dart | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/lib/src/utils/constants/errors.dart b/lib/src/utils/constants/errors.dart index b7c4646..1a6db1e 100644 --- a/lib/src/utils/constants/errors.dart +++ b/lib/src/utils/constants/errors.dart @@ -1,5 +1,9 @@ class Errors { - static const Messages = {1: 'Datos inválidos.', 2: 'Credenciales inválidas.'}; + static const Messages = { + 1: 'Datos inválidos.', + 2: 'Credenciales inválidas.', + 20: 'Datos inválidos.', + }; static const DefaultError = 'Ha ocurrido un error.'; From d70555e8c49f23bdeccd9e9fe8684a2a4d16f845 Mon Sep 17 00:00:00 2001 From: Leonel Garcia Date: Sun, 25 Apr 2021 01:26:17 -0400 Subject: [PATCH 57/59] Fix success message in reset password --- .../pages/home_page/sub_pages/reset_password_page.dart | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/src/presentation/pages/home_page/sub_pages/reset_password_page.dart b/lib/src/presentation/pages/home_page/sub_pages/reset_password_page.dart index 30f99ae..dd92746 100644 --- a/lib/src/presentation/pages/home_page/sub_pages/reset_password_page.dart +++ b/lib/src/presentation/pages/home_page/sub_pages/reset_password_page.dart @@ -33,7 +33,7 @@ class _ResetPasswordPageState extends State { listener: (context, state) { state.maybeWhen( success: () { - FlashHelper.errorBar( + FlashHelper.successBar( context, message: 'La contraseña ha sido actualizada correctamente.', ); From c693b2c53c96d77e7d0d2a686bdc029809be7a14 Mon Sep 17 00:00:00 2001 From: leynier Date: Sun, 25 Apr 2021 02:06:54 -0400 Subject: [PATCH 58/59] Fix error handler and move bottom sheet to drawer --- .../pages/home_page/home_page.dart | 101 ++++++++++-------- .../pages/home_page/sub_pages/about_page.dart | 2 +- .../sub_pages/reset_password_page.dart | 1 - lib/src/presentation/pages/login_page.dart | 9 +- .../pages/recover_password_page.dart | 6 +- lib/src/presentation/pages/register_page.dart | 1 - lib/src/presentation/widgets/widgets.dart | 1 + lib/src/utils/constants/errors.dart | 10 +- 8 files changed, 70 insertions(+), 61 deletions(-) diff --git a/lib/src/presentation/pages/home_page/home_page.dart b/lib/src/presentation/pages/home_page/home_page.dart index 2745e83..6be6c5e 100644 --- a/lib/src/presentation/pages/home_page/home_page.dart +++ b/lib/src/presentation/pages/home_page/home_page.dart @@ -16,7 +16,6 @@ class HomePage extends StatelessWidget { child: Scaffold( appBar: _buildAppBar(), drawer: _buildDrawer(context), - bottomSheet: const GestionUHBottomSheet(), body: _buildBody(context), ), ); @@ -58,53 +57,63 @@ class HomePage extends StatelessWidget { Drawer _buildDrawer(BuildContext context) { return Drawer( - child: BlocBuilder( - builder: (_, state) { - return ListView( - children: [ - DrawerHeader( - child: Image.asset( - 'assets/images/logo-uh.png', - color: Theme.of(context).primaryColor, - ), - ), - ...state.when>( - loading: () => [ - ListTile( - leading: const GestionUhLoadingIndicator(), - title: Text( - 'Cargando ...', - style: Theme.of(context).textTheme.subtitle2, - ), - ), - ], - error: (error) => [ - ListTile( - leading: const Icon(Icons.error), - title: Text( - 'Error', - style: Theme.of(context).textTheme.subtitle2, + child: Column( + children: [ + Expanded( + child: BlocBuilder( + builder: (_, state) { + return ListView( + children: [ + DrawerHeader( + child: Image.asset( + 'assets/images/logo-uh.png', + color: Theme.of(context).primaryColor, + ), ), - ), - ], - profile: (p, x) => _getDrawerItems(context, p, x), - quota: (p, x) => _getDrawerItems(context, p, x), - mailQuota: (p, x) => _getDrawerItems(context, p, x), - resetPassword: (p, x) => _getDrawerItems(context, p, x), - aboutUs: (p, x) => _getDrawerItems(context, p, x), - logout: () => [ - ListTile( - leading: const GestionUhLoadingIndicator(), - title: Text( - 'Cerrando Sesión ...', - style: Theme.of(context).textTheme.subtitle2, + ...state.when>( + loading: () => [ + ListTile( + leading: const GestionUhLoadingIndicator(), + title: Text( + 'Cargando ...', + style: Theme.of(context).textTheme.subtitle2, + ), + ), + ], + error: (error) => [ + ListTile( + leading: const Icon(Icons.error), + title: Text( + 'Error', + style: Theme.of(context).textTheme.subtitle2, + ), + ), + ], + profile: (p, x) => _getDrawerItems(context, p, x), + quota: (p, x) => _getDrawerItems(context, p, x), + mailQuota: (p, x) => _getDrawerItems(context, p, x), + resetPassword: (p, x) => _getDrawerItems(context, p, x), + aboutUs: (p, x) => _getDrawerItems(context, p, x), + logout: () => [ + ListTile( + leading: const GestionUhLoadingIndicator(), + title: Text( + 'Cerrando Sesión ...', + style: Theme.of(context).textTheme.subtitle2, + ), + ), + ], ), - ), - ], - ), - ], - ); - }, + ], + ); + }, + ), + ), + const Align( + alignment: Alignment.bottomCenter, + child: GestionUHBottomSheet(), + ), + ], ), ); } diff --git a/lib/src/presentation/pages/home_page/sub_pages/about_page.dart b/lib/src/presentation/pages/home_page/sub_pages/about_page.dart index e4f32c7..3cc4536 100644 --- a/lib/src/presentation/pages/home_page/sub_pages/about_page.dart +++ b/lib/src/presentation/pages/home_page/sub_pages/about_page.dart @@ -1,5 +1,5 @@ import 'package:flutter/material.dart'; -import 'package:gestionuh/src/presentation/widgets/flash_helper.dart'; +import 'package:gestionuh/src/presentation/widgets/widgets.dart'; import 'package:gestionuh/src/utils/constants/constants.dart'; import 'package:responsive_builder/responsive_builder.dart'; import 'package:url_launcher/url_launcher.dart'; diff --git a/lib/src/presentation/pages/home_page/sub_pages/reset_password_page.dart b/lib/src/presentation/pages/home_page/sub_pages/reset_password_page.dart index 30f99ae..e27e8e3 100644 --- a/lib/src/presentation/pages/home_page/sub_pages/reset_password_page.dart +++ b/lib/src/presentation/pages/home_page/sub_pages/reset_password_page.dart @@ -1,7 +1,6 @@ import 'package:flutter/material.dart'; import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:gestionuh/src/presentation/blocs/reset_password_bloc/resetpassword_bloc.dart'; -import 'package:gestionuh/src/presentation/widgets/flash_helper.dart'; import 'package:gestionuh/src/presentation/widgets/widgets.dart'; import 'package:gestionuh/src/utils/validators.dart'; import 'package:responsive_builder/responsive_builder.dart'; diff --git a/lib/src/presentation/pages/login_page.dart b/lib/src/presentation/pages/login_page.dart index 055d8a4..c9d81f3 100644 --- a/lib/src/presentation/pages/login_page.dart +++ b/lib/src/presentation/pages/login_page.dart @@ -3,10 +3,8 @@ import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:gestionuh/src/data/local/local_storage.dart'; import 'package:gestionuh/src/data/repositories/repositories.dart'; import 'package:gestionuh/src/presentation/blocs/blocs.dart'; -import 'package:gestionuh/src/presentation/widgets/bottom_sheet.dart'; -import 'package:gestionuh/src/presentation/widgets/flash_helper.dart'; import 'package:gestionuh/src/presentation/widgets/widgets.dart'; -import 'package:gestionuh/src/utils/constants/routes.dart'; +import 'package:gestionuh/src/utils/constants/constants.dart'; import 'package:gestionuh/src/utils/validators.dart'; import 'package:get_it/get_it.dart'; import 'package:responsive_builder/responsive_builder.dart'; @@ -56,7 +54,7 @@ class _LoginPageState extends State { final authRepo = GetIt.I(); return Scaffold( appBar: AppBar( - title: const Text('Iniciar Sesión'), + title: const Text(Constants.appName), centerTitle: true, ), bottomSheet: const GestionUHBottomSheet(), @@ -193,6 +191,9 @@ class _LoginPageState extends State { text: 'Registrarse', onPressed: () => _registerAction(context), ), + const SizedBox( + height: 30, + ), ], ), ), diff --git a/lib/src/presentation/pages/recover_password_page.dart b/lib/src/presentation/pages/recover_password_page.dart index ea041bd..03b137b 100644 --- a/lib/src/presentation/pages/recover_password_page.dart +++ b/lib/src/presentation/pages/recover_password_page.dart @@ -1,7 +1,6 @@ import 'package:flutter/material.dart'; import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:gestionuh/src/presentation/blocs/blocs.dart'; -import 'package:gestionuh/src/presentation/widgets/flash_helper.dart'; import 'package:gestionuh/src/presentation/widgets/widgets.dart'; import 'package:gestionuh/src/utils/validators.dart'; import 'package:responsive_builder/responsive_builder.dart'; @@ -244,7 +243,10 @@ class RecoverPasswordPage extends StatelessWidget { ), ], ), - ) + ), + const SizedBox( + height: 30, + ), ], ), ), diff --git a/lib/src/presentation/pages/register_page.dart b/lib/src/presentation/pages/register_page.dart index c4fe3ab..4df4502 100644 --- a/lib/src/presentation/pages/register_page.dart +++ b/lib/src/presentation/pages/register_page.dart @@ -3,7 +3,6 @@ import 'package:flutter/material.dart'; import 'package:flutter_bloc/flutter_bloc.dart'; import 'package:gestionuh/src/presentation/blocs/blocs.dart'; import 'package:gestionuh/src/presentation/widgets/bottom_sheet.dart'; -import 'package:gestionuh/src/presentation/widgets/flash_helper.dart'; import 'package:gestionuh/src/presentation/widgets/widgets.dart'; import 'package:gestionuh/src/utils/constants/constants.dart'; import 'package:gestionuh/src/utils/pair.dart'; diff --git a/lib/src/presentation/widgets/widgets.dart b/lib/src/presentation/widgets/widgets.dart index 099c301..9ccf6df 100644 --- a/lib/src/presentation/widgets/widgets.dart +++ b/lib/src/presentation/widgets/widgets.dart @@ -1,5 +1,6 @@ export 'bottom_sheet.dart'; export 'buttons/buttons.dart'; +export 'flash_helper.dart'; export 'loading_indicators/loading_indicators.dart'; export 'mail_quota_graph.dart'; export 'quota_graph.dart'; diff --git a/lib/src/utils/constants/errors.dart b/lib/src/utils/constants/errors.dart index b7c4646..c8c02e6 100644 --- a/lib/src/utils/constants/errors.dart +++ b/lib/src/utils/constants/errors.dart @@ -6,11 +6,9 @@ class Errors { static const ConnectionError = 'Conexión fallida. Verifique su conectividad.'; static String? retrieveError(String message) { - try { - final index = int.parse(message); - return Messages[index]; - } catch (_) {} - - return DefaultError; + final index = int.tryParse(message); + return index != null && Messages.containsKey(index) + ? Messages[index] + : DefaultError; } } From 670584de129cc7cd81c8149099a6d74eb16a81e1 Mon Sep 17 00:00:00 2001 From: Leonel Garcia Date: Sun, 25 Apr 2021 02:31:54 -0400 Subject: [PATCH 59/59] Fix clear questions unrelated to changes in drop downs --- lib/src/presentation/pages/register_page.dart | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/lib/src/presentation/pages/register_page.dart b/lib/src/presentation/pages/register_page.dart index c4fe3ab..a5e9475 100644 --- a/lib/src/presentation/pages/register_page.dart +++ b/lib/src/presentation/pages/register_page.dart @@ -59,7 +59,9 @@ class _RegisterPageState extends State { ); if (qFree == null) return null; questionsTaken[qFree.second] = index; - answersTextControllers[index].clear(); + WidgetsBinding.instance!.addPostFrameCallback((_) { + answersTextControllers[index].clear(); + }); return qFree; } @@ -98,7 +100,6 @@ class _RegisterPageState extends State { title: const Text('Registrarse'), centerTitle: true, ), - bottomSheet: const GestionUHBottomSheet(), body: BlocConsumer( listener: (context, state) async { state.maybeWhen( @@ -227,7 +228,10 @@ class _RegisterPageState extends State { final childrenQuest = []; const length = NUMBER_OF_SECURITY_QUESTIONS_NEEDED; for (int i = 0; i < length; i++) { - childrenQuest.add(_buildQuestionZone(i)); + final pairValue = questionsTaken.contains(i) + ? questions[questionsTaken.indexOf(i)] + : getFirstQuestionNotOccupeid(i); + childrenQuest.add(_buildQuestionZone(i, pairValue)); } return Column( crossAxisAlignment: CrossAxisAlignment.stretch, @@ -303,7 +307,7 @@ class _RegisterPageState extends State { ); } - Widget _buildQuestionZone(int index) { + Widget _buildQuestionZone(int index, Pair? valueSelected) { final TextStyle headlineTextsTheme = Theme.of(context) .textTheme .headline6! @@ -333,16 +337,13 @@ class _RegisterPageState extends State { ), )) .toList(), - value: questionsTaken.contains(index) - ? questions[questionsTaken.indexOf(index)] - : getFirstQuestionNotOccupeid(index), + value: valueSelected, onChanged: (Pair? value) { setState(() { if (questionsTaken.contains(index)) { // clean text boxs final oldIndex = questionsTaken.indexOf(index); questionsTaken[oldIndex] = -1; - answersTextControllers[oldIndex].clear(); } questionsTaken[value!.second] = index; answersTextControllers[index].clear();