This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
abstract class UseCase<Type, Params> { | |
Future<Either<Failure, Type>> call(Params params); | |
} | |
class GetProfile extends UseCase<MyProfile, NoParams> { | |
final ProfileRepository repository; | |
GetProfile({required this.repository}); | |
@override |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
enum OtherCardType { bandec, bpa, metropolitan, unknown } | |
// First Group | |
const _cubanStart = r'^92'; | |
const _productName = r'[0-9]{2}'; | |
const _firstGroup = _cubanStart + _productName; | |
// Second Group | |
const _bandecSecondGroup = r'0699'; |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/// Exceptions example | |
class AppVersioningCubit extends Cubit<AppVersioningState> { | |
AppVersioningCubit(this.appVersioningService) | |
: super(const AppVersioningState.initial()); | |
final AppVersioningServiceContract appVersioningService; | |
/// Calls appVersioningService.getAppVersion to fetch current app version. | |
/// Then, pass appVersion to validateAppVersionMethod. | |
Future<void> getAndValidateAppVersion() async { |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import 'package:app_version_config_repository/app_version_config_repository.dart'; | |
import 'package:flutter/foundation.dart'; | |
import 'package:flutter_boilerplate/core/error/error_messages.dart'; | |
import 'package:flutter_boilerplate/core/error/exceptions.dart'; | |
import 'package:flutter_boilerplate/domain/app_versioning/entities/app_version_entity.dart'; | |
import 'package:flutter_boilerplate/domain/app_versioning/entities/upgrade_information_entity.dart'; | |
import 'package:flutter_boilerplate/domain/app_versioning/results/app_version_result.dart'; | |
import 'package:flutter_boilerplate/domain/app_versioning/results/validate_app_version_result.dart'; | |
import 'package:flutter_boilerplate/domain/app_versioning/service_contracts/app_versioning_service_contract.dart'; | |
import 'package:injectable/injectable.dart'; |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import 'package:app_version_config_repository/app_version_config_repository.dart'; | |
import 'package:flutter/foundation.dart'; | |
import 'package:flutter_boilerplate/core/error/error_messages.dart'; | |
import 'package:flutter_boilerplate/core/error/exceptions.dart'; | |
import 'package:flutter_boilerplate/domain/app_versioning/entities/app_version_entity.dart'; | |
import 'package:flutter_boilerplate/domain/app_versioning/entities/upgrade_information_entity.dart'; | |
import 'package:flutter_boilerplate/domain/app_versioning/results/app_version_result.dart'; | |
import 'package:flutter_boilerplate/domain/app_versioning/results/validate_app_version_result.dart'; | |
import 'package:flutter_boilerplate/domain/app_versioning/service_contracts/app_versioning_service_contract.dart'; | |
import 'package:injectable/injectable.dart'; |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import 'dart:async'; | |
import 'package:flutter_boilerplate/core/env/app_environment.dart'; | |
import 'package:flutter_boilerplate/injection_container/domain/config_domain.config.dart'; | |
import 'package:get_it/get_it.dart'; | |
import 'package:injectable/injectable.dart'; | |
@InjectableInit( | |
generateForDir: ['lib/domain'], | |
preferRelativeImports: false, |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// GENERATED CODE - DO NOT MODIFY BY HAND | |
// ************************************************************************** | |
// InjectableConfigGenerator | |
// ************************************************************************** | |
// ignore_for_file: no_leading_underscores_for_library_prefixes | |
import 'package:app_version_config_repository/app_version_config_repository.dart' | |
as _i7; | |
import 'package:flutter_boilerplate/domain/app_versioning/service_contracts/app_versioning_service_contract.dart' |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import 'package:injectable/injectable.dart'; | |
/// {@template app_environment} | |
/// Use [AppEnvironment] to provide/access some information about the Environment app is | |
/// running. | |
/// | |
/// Access [AppEnvironment] name with the [name] property. | |
/// | |
/// Currently has supported 3 environments: | |
/// 1. [AppEnvironment.development] : Use it for develop dependencies. This is |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
class NewIntCaseWidget extends CaseWidget<int> { | |
NewIntCaseWidget({ | |
super.key, | |
required int super.value, | |
}) { | |
onEquals(0, (value, context) => Text('Value is zero')); | |
onEquals(1, (value, context) => Text('Value is 1')); | |
onLessThan(1, (value, context) => Text('Value is less than 1')); | |
onGreaterThan(1, (value, context) => Text('Value is greater than 1')); |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Widget _kDefaultWidget<T>(T value, BuildContext _) => Text('Error.'); | |
typedef BuilderFunction<T> = Widget Function(T value, BuildContext context); | |
typedef ListenerFunction<T> = void Function(T value, BuildContext context); | |
class MatchCase<Q> { | |
MatchCase( | |
this.matcher, | |
this.builder, |
OlderNewer