Skip to content

Commit

Permalink
Updated to work with the latest package versions
Browse files Browse the repository at this point in the history
  • Loading branch information
ResoDev committed Dec 29, 2019
1 parent 8b5cb64 commit 23a5864
Show file tree
Hide file tree
Showing 18 changed files with 180 additions and 66 deletions.
1 change: 1 addition & 0 deletions .flutter-plugins-dependencies
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{"_info":"// This is a generated file; do not edit or check into version control.","dependencyGraph":[{"name":"shared_preferences","dependencies":["shared_preferences_macos","shared_preferences_web"]},{"name":"shared_preferences_macos","dependencies":[]},{"name":"shared_preferences_web","dependencies":[]}]}
6 changes: 0 additions & 6 deletions .vscode/settings.json

This file was deleted.

17 changes: 16 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,18 @@
# TDD Clean Architecture for Flutter

Learn from the [tutorial series](https://resocoder.com/category/tutorials/flutter/tdd-clean-architecture/) on Reso Coder.
### The whole accompanying tutorial series is available at :point_right: [this link](https://resocoder.com/flutter-clean-architecture-tdd/) :point_left:.

#### _Find more tutorials on [resocoder.com](https://resocoder.com)_

<br />

### Architecture Proposal

[proposal picture](./architecture-proposal.png)

<br />
<br />

[![Reso Coder](https://resocoder.com/wp-content/uploads/2019/09/logo_with_text_signature.png)](https://resocoder.com)
<br />
_Be prepared for **real** app development_
1 change: 1 addition & 0 deletions android/gradle.properties
Original file line number Diff line number Diff line change
@@ -1,2 +1,3 @@
org.gradle.jvmargs=-Xmx1536M

android.enableR8=true
Binary file added architecture-proposal.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
10 changes: 5 additions & 5 deletions ios/Flutter/flutter_export_environment.sh
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
#!/bin/sh
# This is a generated file; do not edit or check into version control.
export "FLUTTER_ROOT=/home/reso/Development/flutter"
export "FLUTTER_APPLICATION_PATH=/home/reso/Development/Projects/flutter_tutorials/clean_architecture_tdd_course"
export "FLUTTER_TARGET=lib/main.dart"
export "FLUTTER_ROOT=C:\Flutter\flutter"
export "FLUTTER_APPLICATION_PATH=D:\Projects\Playground_and_Learning\flutter-tdd-clean-architecture-course"
export "FLUTTER_TARGET=lib\main.dart"
export "FLUTTER_BUILD_DIR=build"
export "SYMROOT=${SOURCE_ROOT}/../build/ios"
export "FLUTTER_FRAMEWORK_DIR=/home/reso/Development/flutter/bin/cache/artifacts/engine/ios"
export "SYMROOT=${SOURCE_ROOT}/../build\ios"
export "FLUTTER_FRAMEWORK_DIR=C:\Flutter\flutter\bin\cache\artifacts\engine\ios"
export "FLUTTER_BUILD_NAME=1.0.0"
export "FLUTTER_BUILD_NUMBER=1"
3 changes: 2 additions & 1 deletion lib/core/error/failures.dart
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
import 'package:equatable/equatable.dart';

abstract class Failure extends Equatable {
Failure([List properties = const <dynamic>[]]) : super(properties);
@override
List<Object> get props => [];
}

// General failures
Expand Down
5 changes: 4 additions & 1 deletion lib/core/usecases/usecase.dart
Original file line number Diff line number Diff line change
Expand Up @@ -7,4 +7,7 @@ abstract class UseCase<Type, Params> {
Future<Either<Failure, Type>> call(Params params);
}

class NoParams extends Equatable {}
class NoParams extends Equatable {
@override
List<Object> get props => [];
}
Original file line number Diff line number Diff line change
Expand Up @@ -8,5 +8,8 @@ class NumberTrivia extends Equatable {
NumberTrivia({
@required this.text,
@required this.number,
}) : super([text, number]);
});

@override
List<Object> get props => [text, number];
}
Original file line number Diff line number Diff line change
Expand Up @@ -21,5 +21,8 @@ class GetConcreteNumberTrivia implements UseCase<NumberTrivia, Params> {
class Params extends Equatable {
final int number;

Params({@required this.number}) : super([number]);
Params({@required this.number});

@override
List<Object> get props => [number];
}
Original file line number Diff line number Diff line change
Expand Up @@ -3,13 +3,17 @@ import 'package:meta/meta.dart';

@immutable
abstract class NumberTriviaEvent extends Equatable {
NumberTriviaEvent([List props = const <dynamic>[]]) : super(props);
@override
List<Object> get props => [];
}

class GetTriviaForConcreteNumber extends NumberTriviaEvent {
final String numberString;

GetTriviaForConcreteNumber(this.numberString) : super([numberString]);
GetTriviaForConcreteNumber(this.numberString);

@override
List<Object> get props => [numberString];
}

class GetTriviaForRandomNumber extends NumberTriviaEvent {}
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,8 @@ import 'package:meta/meta.dart';

@immutable
abstract class NumberTriviaState extends Equatable {
NumberTriviaState([List props = const <dynamic>[]]) : super(props);
@override
List<Object> get props => [];
}

class Empty extends NumberTriviaState {}
Expand All @@ -14,11 +15,17 @@ class Loading extends NumberTriviaState {}
class Loaded extends NumberTriviaState {
final NumberTrivia trivia;

Loaded({@required this.trivia}) : super([trivia]);
Loaded({@required this.trivia});

@override
List<Object> get props => [trivia];
}

class Error extends NumberTriviaState {
final String message;

Error({@required this.message}) : super([message]);
Error({@required this.message});

@override
List<Object> get props => [message];
}
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ class NumberTriviaPage extends StatelessWidget {

BlocProvider<NumberTriviaBloc> buildBody(BuildContext context) {
return BlocProvider(
builder: (_) => sl<NumberTriviaBloc>(),
create: (_) => sl<NumberTriviaBloc>(),
child: Center(
child: Padding(
padding: const EdgeInsets.all(10),
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -60,12 +60,11 @@ class _TriviaControlsState extends State<TriviaControls> {
void dispatchConcrete() {
controller.clear();
BlocProvider.of<NumberTriviaBloc>(context)
.dispatch(GetTriviaForConcreteNumber(inputStr));
.add(GetTriviaForConcreteNumber(inputStr));
}

void dispatchRandom() {
controller.clear();
BlocProvider.of<NumberTriviaBloc>(context)
.dispatch(GetTriviaForRandomNumber());
BlocProvider.of<NumberTriviaBloc>(context).add(GetTriviaForRandomNumber());
}
}
1 change: 1 addition & 0 deletions lib/main.dart
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ import 'features/number_trivia/presentation/pages/number_trivia_page.dart';
import 'injection_container.dart' as di;

void main() async {
WidgetsFlutterBinding.ensureInitialized();
await di.init();
runApp(MyApp());
}
Expand Down
Loading

0 comments on commit 23a5864

Please sign in to comment.