Difference between revisions of "Flutter"
Jump to navigation
Jump to search
Rafahsolis (talk | contribs) m (→Built Value) Tag: visualeditor |
Rafahsolis (talk | contribs) m (→BLoC) Tag: visualeditor |
||
| (4 intermediate revisions by the same user not shown) | |||
| Line 11: | Line 11: | ||
==Built Value Android Studio Live Templates== | ==Built Value Android Studio Live Templates== | ||
| + | |||
| + | Inspired in: https://www.youtube.com/watch?v=Jji05a2GV_s | ||
| + | |||
File > Settings > Editor > Live Templates | File > Settings > Editor > Live Templates | ||
| Line 45: | Line 48: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
| − | === Built Value Serialized === | + | ===Built Value Serialized=== |
| − | * Abbreviation: blts | + | *Abbreviation: blts |
| − | * Description: Built Value Serializer | + | *Description: Built Value Serializer |
| − | * Edited Variables: INAME --> expresion: decapitalize(NAME) Skip if defined = True | + | *Edited Variables: INAME --> expresion: decapitalize(NAME) Skip if defined = True |
<syntaxhighlight lang="dart"> | <syntaxhighlight lang="dart"> | ||
abstract class $NAME$ implements Built<$NAME$, $NAME$Builder> { | abstract class $NAME$ implements Built<$NAME$, $NAME$Builder> { | ||
| Line 77: | Line 80: | ||
import 'package:built_value/serializer.dart'; | import 'package:built_value/serializer.dart'; | ||
import 'package:actions_app/models/actionsPageModel.dart'; | import 'package:actions_app/models/actionsPageModel.dart'; | ||
| + | import 'package:built_value/standard_json_plugin.dart'; | ||
part 'serializers.g.dart'; | part 'serializers.g.dart'; | ||
| Line 83: | Line 87: | ||
ActionsListPage, | ActionsListPage, | ||
]) | ]) | ||
| − | final Serializers serializers = _$serializers; | + | final Serializers serializers = (_$serializers.toBuilder()..addPlugin(StandardJsonPlugin())).build(); |
| + | |||
| + | |||
</syntaxhighlight><br /> | </syntaxhighlight><br /> | ||
===Built Value Enum=== | ===Built Value Enum=== | ||
| Line 98: | Line 104: | ||
static BuiltSet<$NAME$> get values => _$$values; | static BuiltSet<$NAME$> get values => _$$values; | ||
static $NAME$ valueOf(String name) => _$$valueOf(name); | static $NAME$ valueOf(String name) => _$$valueOf(name); | ||
| + | } | ||
| + | </syntaxhighlight> | ||
| + | |||
| + | ===BLoC=== | ||
| + | |||
| + | *Abbreviation: bloc | ||
| + | *Description: Create a Business Logic Object Component<syntaxhighlight lang="dart"> | ||
| + | import 'package:bloc/bloc.dart'; | ||
| + | |||
| + | |||
| + | class $BLOC$ extends Bloc<$EVENT$, $STATE$> { //class MyBloc extends Bloc<MyEvent, MyState> | ||
| + | @override | ||
| + | $STATE$ get initialState => // TODO: implement initialState; | ||
| + | |||
| + | @override | ||
| + | Stream<$STATE$> mapEventToState($STATE$ currentState, $EVENT$ event) async* { | ||
| + | // TODO: Implement mapEventToState | ||
| + | } | ||
} | } | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Latest revision as of 15:44, 28 October 2019
Flutter[edit]
Install[edit]
- Install Fluter SDK
- Install Android Studio
- Add Flutter bin to $PATH
- Install Flutter & Dart plugins in Android Studio
- Add user to plugdev group
Built Value Android Studio Live Templates[edit]
Inspired in: https://www.youtube.com/watch?v=Jji05a2GV_s
File > Settings > Editor > Live Templates
Built Value Header[edit]
- Abbreviation blth
- Description Built Value Header
library $LIBRARY$;
import 'dart:convert';
import 'package:built_collection/built_collection.dart';
import 'package:built_value/built_value.dart';
import 'package:built_value/serializer.dart';
part '$LIBRARY$.g.dart';
Built Value[edit]
- Abbreviation blt
- Description Built Value
abstract class $NAME$ implements Built<$NAME$, $NAME$Builder> {
/* fields go here. Examples:
@nullable
String get country;
int get id;
*/
$NAME$._();
factory $NAME$([updates($NAME$Builder b)]) = _$$$NAME$;
}
Built Value Serialized[edit]
- Abbreviation: blts
- Description: Built Value Serializer
- Edited Variables: INAME --> expresion: decapitalize(NAME) Skip if defined = True
abstract class $NAME$ implements Built<$NAME$, $NAME$Builder> {
/* fields go here. Examples:
@nullable
String get country;
int get id;
*/
$NAME$._();
factory $NAME$([updates($NAME$Builder b)]) = _$$$NAME$;
String toJson() {
return json.encode(serializers.serializeWith($NAME$.serializer, this));
}
static $NAME$ fromJson(String jsonString){
return serializers.deserializeWith($NAME$.serializer, json.decode(jsonString));
}
static Serializer<$NAME$> get serializer => _$$$INAME$Serializer;
}
Requires a serializer, example: models/serializers.dart
library serializers;
import 'package:built_value/serializer.dart';
import 'package:actions_app/models/actionsPageModel.dart';
import 'package:built_value/standard_json_plugin.dart';
part 'serializers.g.dart';
@SerializersFor(const [
ActionsListPage,
])
final Serializers serializers = (_$serializers.toBuilder()..addPlugin(StandardJsonPlugin())).build();
Built Value Enum[edit]
- Abbreviation: bltenum
- Description: Built Value EnumClass
class $NAME$ extends EnumClass {
/* Fields go here examples:
static const $NAME$ uno = _$$uno;
*/
const $NAME$._(String name) : super(name);
static BuiltSet<$NAME$> get values => _$$values;
static $NAME$ valueOf(String name) => _$$valueOf(name);
}
BLoC[edit]
- Abbreviation: bloc
- Description: Create a Business Logic Object Component
import 'package:bloc/bloc.dart'; class $BLOC$ extends Bloc<$EVENT$, $STATE$> { //class MyBloc extends Bloc<MyEvent, MyState> @override $STATE$ get initialState => // TODO: implement initialState; @override Stream<$STATE$> mapEventToState($STATE$ currentState, $EVENT$ event) async* { // TODO: Implement mapEventToState } }