Jonny Borges
Committed by GitHub

Add files via upload

## [3.1.2]
- Expose GetInstance
## [3.1.1]
- Improvement .obs methods
## [3.1.0]
- Added extensions to GetUtils and fix typo on GetUtils.isEmail (@stefandevo)
- Added .gitignore file (@hdeyana)
... ...
... ... @@ -24,5 +24,7 @@ export 'src/routes/observers/route_observer.dart';
export 'src/routes/transitions_type.dart';
export 'src/platform/platform.dart';
export 'src/instance/extension_instance.dart';
export 'src/instance/get_instance.dart';
export 'src/typedefs/typedefs.dart';
export 'src/routes/custom_transition.dart';
export 'src/context_extensions/extensions.dart';
... ...
... ... @@ -51,18 +51,6 @@ class _RxImpl<T> implements RxInterface<T> {
Stream<R> map<R>(R mapper(T data)) => stream.map(mapper);
}
class RxString<String> extends _RxImpl<String> {
RxString([String initial]) {
_value = initial;
}
}
class RxInt<int> extends _RxImpl<int> {
RxInt([int initial]) {
_value = initial;
}
}
class RxMap<K, V> extends RxInterface implements Map<K, V> {
RxMap([Map<K, V> initial]) {
_value = initial;
... ... @@ -414,24 +402,36 @@ typedef bool Condition();
typedef E ChildrenListComposer<S, E>(S value);
class RxBool<bool> extends _RxImpl<bool> {
class RxBool extends _RxImpl<bool> {
RxBool([bool initial]) {
_value = initial;
}
}
class RxDouble<double> extends _RxImpl<double> {
class RxDouble extends _RxImpl<double> {
RxDouble([double initial]) {
_value = initial;
}
}
class RxNum<num> extends _RxImpl<num> {
class RxNum extends _RxImpl<num> {
RxNum([num initial]) {
_value = initial;
}
}
class RxString extends _RxImpl<String> {
RxString([String initial]) {
_value = initial;
}
}
class RxInt extends _RxImpl<int> {
RxInt([int initial]) {
_value = initial;
}
}
class Rx<T> extends _RxImpl<T> {
Rx([T initial]) {
_value = initial;
... ... @@ -439,25 +439,25 @@ class Rx<T> extends _RxImpl<T> {
}
extension StringExtension on String {
RxString<String> get obs => RxString(this);
RxString get obs => RxString(this);
}
extension IntExtension on int {
RxInt<int> get obs => RxInt(this);
RxInt get obs => RxInt(this);
}
extension DoubleExtension on double {
RxDouble<double> get obs => RxDouble(this);
RxDouble get obs => RxDouble(this);
}
extension BoolExtension on bool {
RxBool<bool> get obs => RxBool(this);
RxBool get obs => RxBool(this);
}
extension MapExtension<K, V> on Map<K, V> {
RxMap<K, V> get obs {
if (this != null)
return RxMap<K, V>({})..addAll(this);
return RxMap<K, V>(<K, V>{})..addAll(this);
else
return RxMap<K, V>(null);
}
... ... @@ -466,12 +466,12 @@ extension MapExtension<K, V> on Map<K, V> {
extension ListExtension<E> on List<E> {
RxList<E> get obs {
if (this != null)
return RxList<E>([])..addAllNonNull(this);
return RxList<E>(<E>[])..addAllNonNull(this);
else
return RxList<E>(null);
}
}
extension ObjectExtension on Object {
Rx<Object> get obs => Rx(this);
extension RxT<T> on T {
Rx<T> get obs => Rx(this);
}
... ...
... ... @@ -50,12 +50,14 @@ class _ObxState extends State<Obx> {
super.dispose();
}
@override
Widget build(BuildContext context) {
Widget get notifyChilds {
final observer = getObs;
getObs = _observer;
final result = widget.builder();
getObs = observer;
return result;
}
@override
Widget build(BuildContext context) => notifyChilds;
}
... ...
import 'dart:collection';
import 'package:flutter/widgets.dart';
import 'package:get/src/instance/get_instance.dart';
import 'package:get/src/root/smart_management.dart';
import 'package:get/src/rx/rx_interface.dart';
class GetxController extends DisposableInterface {
final List<Updater> _updaters = [];
final HashSet<Updater> _updaters = HashSet<Updater>();
/// Update GetBuilder with update();
void update([List<String> ids, bool condition = true]) {
... ...
import 'package:flutter/widgets.dart';
import 'package:get/src/instance/get_instance.dart';
abstract class GetWidget<T> extends StatelessWidget {
const GetWidget({Key key}) : super(key: key);
T get controller => GetInstance().find();
@override
Widget build(BuildContext context);
}
abstract class GetView<T> extends StatelessWidget {
const GetView({Key key}) : super(key: key);
T get controller => GetInstance().find();
... ... @@ -8,3 +16,22 @@ abstract class GetView<T> extends StatelessWidget {
@override
Widget build(BuildContext context);
}
// abstract class GetView<A, B> extends StatelessWidget {
// const GetView({Key key}) : super(key: key);
// A get controller => GetInstance().find();
// B get controller2 => GetInstance().find();
// @override
// Widget build(BuildContext context);
// }
// abstract class GetView2<A, B, C> extends StatelessWidget {
// const GetView2({Key key}) : super(key: key);
// A get controller => GetInstance().find();
// B get controller2 => GetInstance().find();
// C get controller3 => GetInstance().find();
// @override
// Widget build(BuildContext context);
// }
... ...
name: get
description: Open screens/snackbars/dialogs/bottomSheets without context, manage states and inject dependencies easily with Get.
version: 3.1.0
version: 3.1.2
homepage: https://github.com/jonataslaw/get
environment:
... ...