Difference between revisions of "Flutter"

From RHS Wiki
Jump to navigation Jump to search
Tag: visualeditor
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]


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
        }
    }