mcg_extension library

Classes

AppBarDesign
AppController
BaseController
Bindings
Bindings should be extended or implemented. When using GetMaterialApp, all GetPages and navigation methods (like Get.to()) have a binding property that takes an instance of Bindings to manage the dependencies() (via Get.put()) for the Route you are opening.
BindingsBuilder<T>
Simplifies Bindings generation from a single callback. To avoid the creation of a custom Binding instance per route.
BoolList
A space-efficient list of boolean values.
BottomNavigationBarDesign
BottomSheetFormGroup
BottomSheetGroup
BottomSheetItem<T>
BottomSheetPanel
CanonicalizedMap<C, K, V>
A map whose keys are converted to canonical values of type C.
CardDesign
CaseInsensitiveEquality
String equality that's insensitive to differences in ASCII case.
CheckBoxDesign
ChipDesign
CombinedIterableView<T>
A view of several iterables combined sequentially into a single iterable.
CombinedListView<T>
A view of several lists combined into a single list.
CombinedMapView<K, V>
Returns a new map that represents maps flattened into a single map.
Crypt
CustomTransition
DataZip
DeepCollectionEquality
Deep equality on collections.
DefaultEquality<E>
Equality of objects that compares only the natural equality of the objects.
DelegatingIterable<E>
An Iterable that delegates all operations to a base iterable.
DelegatingList<E>
A List that delegates all operations to a base list.
DelegatingMap<K, V>
A Map that delegates all operations to a base map.
DelegatingQueue<E>
A Queue that delegates all operations to a base queue.
DelegatingSet<E>
A Set that delegates all operations to a base set.
Design
DesignSchema
DeviceManager
DF
DialogPanel
DisposableInterface
ElevatedButtonDesign
EmptyStateDesign
Equality<E>
A generic equality relation on objects.
EqualityBy<E, F>
Equality of objects based on derived values.
EqualityMap<K, V>
A Map whose key equality is determined by an Equality object.
EqualitySet<E>
A Set whose key equality is determined by an Equality object.
FastList<T>
Fav
FetcherBox
FormData
FullLifeCycleController
GetBar
GetBuilder<T extends GetxController>
GetBuilderState<T extends GetxController>
GetConnect
GetConnectInterface
GetCupertinoApp
GetDelegate
GetHttpClient
GetInformationParser
GetInstance
GetInterface
GetInterface allows any auxiliary package to be merged into the "Get" class through extensions
GetLifeCycle
GetMaterialApp
GetMaterialController
GetMicrotask
GetMiddleware
The Page Middlewares. The Functions will be called in this order (( redirect -> onPageCalled -> onBindingsStart -> onPageBuildStart -> onPageBuilt -> onPageDispose ))
GetModalBottomSheetRoute<T>
GetNavConfig
This config enables us to navigate directly to a sub-url
GetNavigator
GetNotifier<T>
GetObserver
GetPage<T>
GetPageRoute<T>
GetPlatform
GetQueue
GetResponsiveView<T>
Extend this widget to build responsive view. this widget contains the screen property that have all information about the screen size and type. You have two options to build it. 1- with builder method you return the widget to build. 2- with methods desktop, tablet,phone, watch. the specific method will be built when the screen type matches the method when the screen is ScreenType.Tablet the tablet method will be exuded and so on. Note if you use this method please set the property alwaysUseBuilder to false With settings property you can set the width limit for the screen types.
GetResponsiveWidget<T extends GetLifeCycleBase?>
GetRouterOutlet
GetSnackBar
GetSnackBarState
GetSocket
GetStream<T>
GetStream is the lightest and most performative way of working with events at Dart. You sintaxe is like StreamController, but it works with simple callbacks. In this way, every event calls only one function. There is no buffering, to very low memory consumption. event add will add a object to stream. addError will add a error to stream. listen is a very light StreamSubscription interface. Is possible take the last value with value property.
GetStreamTransformation<T>
GetUtils
GetView<T>
GetView is a great way of quickly access your Controller without having to call Get.find
GetWidget<S extends GetLifeCycleBase?>
GetWidget is a great way of quickly access your individual Controller without having to call Get.find
GetX<T extends DisposableInterface>
GetxController
GetxService
Unlike GetxController, which serves to control events on each of its pages, GetxService is not automatically disposed (nor can be removed with Get.delete()). It is ideal for situations where, once started, that service will remain in memory, such as Auth control for example. Only way to remove it is Get.reset().
GetXState<T extends DisposableInterface>
GraphQLResponse<T>
HeaderValue
HeapPriorityQueue<E>
Heap based priority queue.
IconBuilder
IdentityEquality<E>
Equality of objects that compares only the identity of the objects.
Inset
InstanceInfo
InternalFinalCallback<T>
Special callable class to keep the contract of a regular method, and avoid overrides if you extend the class that uses it, as Dart has no final methods. Used in DisposableInterface to avoid the danger of overriding onStart.
IPanel
IterableEquality<E>
Equality on iterables.
IterableZip<T>
Iterable that iterates over lists of values from other iterables.
J
KeyValue<T>
LightSubscription<T>
ListEquality<E>
Equality on lists.
ListSlice<E>
A list view of a range of another list.
ListTileDesign
MapEquality<K, V>
Equality on maps.
MapKeySet<E>
An unmodifiable Set view of the keys of a Map.
MapValueSet<K, V>
Creates a modifiable Set view of the values of a Map.
McgExtensionLang
McgFunctions
MiddlewareRunner
MiniStream<T>
MiniSubscription<T>
MixinBuilder<T extends GetxController>
MultiEquality<E>
Combines several equalities into a single equality.
MultipartFile
MyFlareIndicator
MyPalette
Node<T>
NonGrowableListMixin<E>
Mixin class that implements a throwing version of all list operations that change the List's length.
NonGrowableListView<E>
A fixed-length list.
Obx
The simplest reactive widget in GetX.
ObxState
ObxValue<T extends RxInterface>
Similar to Obx, but manages a local state. Pass the initial data in constructor. Useful for simple local states, like toggles, visibility, themes, button states, etc. Sample: ObxValue((data) => Switch( value: data.value, onChanged: (flag) => data.value = flag, ), false.obs, ),
ObxWidget
The ObxWidget is the base for all GetX reactive widgets
OPAppScaffold
OPBody
OPBottomBar
OPDrawerPanel
OpenMultipleChoosebleListViewFromMapController
OPProgressButton
OPTopActions
OPTopActionsTitle
OPTopActionsTitleWithChild
OPTopBar
Over
OverAlert
OverBottomSheet
OverController
OverDialog
OverExtension
OverLoading
OverPage
OverProgress
OverWidget
PageRedirect
PathDecoded
PermissionManager
PriorityQueue<E>
A priority queue is a priority based work-list of elements.
ProgressIndicatorDesign
QueueList<E>
A class that efficiently implements both Queue and List.
RemainingTime
Response<T>
ResponsiveScreen
ResponsiveScreenSettings
Restarter
RouterOutlet<TDelegate extends RouterDelegate<T>, T extends Object>
RouterOutletState<TDelegate extends RouterDelegate<T>, T extends Object>
Routing
Rx<T>
Foundation class used for custom Types outside the common native Dart types. For example, any custom "Model" class, like User().obs will use Rx as wrapper.
RxBool
RxController
RxDouble
RxInt
RxInterface<T>
This class is the foundation for all reactive (Rx) classes that makes Get so powerful. This interface is the contract that _RxImpl]
RxList<E>
Create a list similar to List<T>
RxMap<K, V>
Rxn<T>
RxnBool
RxnDouble
RxnInt
RxnNum
RxNotifier<T>
RxnString
Rx class for String Type.
RxNum
RxSet<E>
RxStatus
RxString
Rx class for String Type.
ScaffoldDesign
SelectableListItemDesign
SetEquality<E>
Equality of sets.
Sheet
SheetAction
SheetDesign
SimpleBuilder
SimpleBuilderState
SlidingSegmentDesign
SnackbarController
SnackBarDesign
SuperController<T>
SwitchDesign
TextBuilder
TextButtonDesign
TextFieldDesign
Translations
TrustedCertificate
Tuple2<T1, T2>
Represents a 2-tuple, or pair.
Tuple3<T1, T2, T3>
Represents a 3-tuple, or triple.
Tuple4<T1, T2, T3, T4>
Represents a 4-tuple, or quadruple.
Tuple5<T1, T2, T3, T4, T5>
Represents a 5-tuple, or quintuple.
Tuple6<T1, T2, T3, T4, T5, T6>
Represents a 6-tuple, or sextuple.
Tuple7<T1, T2, T3, T4, T5, T6, T7>
Represents a 7-tuple, or septuple.
UnionSet<E>
A single set that provides a view of the union over a set of sets.
UnionSetController<E>
A controller that exposes a view of the union of a collection of sets.
UnModifiable
UnmodifiableListView<E>
An unmodifiable List view of another List.
UnmodifiableMapMixin<K, V>
Mixin class that implements a throwing version of all map operations that change the Map.
UnmodifiableMapView<K, V>
View of a Map that disallow modifying the map.
UnmodifiableSetMixin<E>
Mixin class that implements a throwing version of all set operations that change the Set.
UnmodifiableSetView<E>
An unmodifiable set.
UnorderedIterableEquality<E>
Equality of the elements of two iterables without considering order.
ValidatorRules
Value<T>
ValueBuilder<T>
Manages a local state like ObxValue, but uses a callback instead of a Rx value.
ValueBuilderState<T>
WidgetSize
Worker
Workers

Enums

AlertType
BottomSheetGroupLayoutType
BottomSheetPanelHeight
FetchType
FileType
LaunchType
PopMode
Enables the user to customize the intended pop behavior
PreventDuplicateHandlingMode
Enables the user to customize the behavior when pushing multiple routes that shouldn't be duplicates
RowStyle
ScreenType
SmartManagement
GetX by default disposes unused controllers from memory, Through different behaviors. SmartManagement.full SmartManagement.full is the default one. Dispose classes that are not being used and were not set to be permanent. In the majority of the cases you will want to keep this config untouched. If you new to GetX then don't change this. SmartManagement.onlyBuilder only controllers started in init: or loaded into a Binding with Get.lazyPut() will be disposed. If you use Get.put() or Get.putAsync() or any other approach, SmartManagement will not have permissions to exclude this dependency. With the default behavior, even widgets instantiated with "Get.put" will be removed, unlike SmartManagement.onlyBuilders. SmartManagement.keepFactoryJust like SmartManagement.full, it will remove it's dependencies when it's not being used anymore. However, it will keep their factory, which means it will recreate the dependency if you need that instance again.
SnackbarStatus
Indicates Status of snackbar SnackbarStatus.OPEN Snack is fully open, SnackbarStatus.CLOSED Snackbar has closed, SnackbarStatus.OPENING Starts with the opening animation and ends with the full snackbar display, SnackbarStatus.CLOSING Starts with the closing animation and ends with the full snackbar dispose
SnackPosition
Indicates if snack is going to start at the TOP or at the BOTTOM
SnackStyle
Indicates if snack will be attached to the edge of the screen or not
Transition

Mixins

FullLifeCycleMixin
GetLifeCycleBase
The GetLifeCycle
GetResponsiveMixin
GetSingleTickerProviderStateMixin
Used like SingleTickerProviderMixin but only with Get Controllers. Simplifies AnimationController creation inside GetxController.
GetStateUpdaterMixin<T extends StatefulWidget>
Complies with GetStateUpdater
GetTickerProviderStateMixin
Used like TickerProviderMixin but only with Get Controllers. Simplifies multiple AnimationController creation inside GetxController.
GetxServiceMixin
Allow track difference between GetxServices and GetxControllers
NotifyManager<T>
PageRouteReportMixin<T>
RxObjectMixin<T>
global object that registers against GetX and Obx, and allows the reactivity of those Widgets and Rx values.
ScrollMixin
SingleGetTickerProviderMixin
Used like SingleTickerProviderMixin but only with Get Controllers. Simplifies AnimationController creation inside GetxController.
StateMixin<T>

Extensions

BoolExtension on bool
ComparatorExtension on Comparator<T>
Extensions on comparator functions.
ContextExtensionss on BuildContext
DateWeekExtensions on DateTime
DoubleExtension on double
ExtensionBottomSheet on GetInterface
ExtensionDialog on GetInterface
ExtensionSnackbar on GetInterface
FileStringExtension on String?
FirstWhereExt on List<T>
FormstateExtension on FormState
GetDurationUtils on Duration
Duration utilities.
GetDynamicUtils on dynamic
GetNavigation on GetInterface
GetNumUtils on num
GetResetExt on GetInterface
GetString on String?
GetStringUtils on String
Inst on GetInterface
IntExtension on int
IterableComparableExtension on Iterable<T>
Extensions that apply to iterables of Comparable elements.
IterableDoubleExtension on Iterable<double>
Extension on iterables of double.
IterableExtension on Iterable<T>
Extensions that apply to all iterables.
IterableExtensions on Iterable<T>
IterableIntegerExtension on Iterable<int>
Extension on iterables of integers.
IterableIterableExtension on Iterable<Iterable<T>>
Extensions on iterables whose elements are also iterables.
IterableNullableExtension on Iterable<T?>
Extensions that apply to iterables with a nullable element type.
IterableNumberExtension on Iterable<num>
Extensions that apply to iterables of numbers.
ListComparableExtensions on List<E>
Various extensions on lists of comparable elements.
ListExtension on List<E>
ListExtensions on List<E>
Various extensions on lists of arbitrary elements.
LocalesIntl on GetInterface
LoopEventsExt on GetInterface
MapEncryptExtension on Map
MapExtension on Map<K, V>
MyColor on Color
MyContext on BuildContext
MyDouble on double
MyFuture on Future
MyGetExtension on GetInterface
MyIconWidget on IconData
MyInt on int
MyInt_ on int?
MyListDoubleExtension on List<double>?
MyListExtension on List<T>?
MyListIntExtension on List<int>?
MyMapExtension on Map
MyNum on num
MyPaddingWidget on Widget
MyString on String?
MyTextWidget on String?
MyUint8ListExtension on Uint8List
MyWidget on Widget
OverlayExt on GetInterface
PagesListExt on List<GetPage>
Precision on double
ReactiveT on T
RxBoolExt on Rx<bool>
RxDoubleExt on Rx<double>
RxIntExt on Rx<int>
RxnBoolExt on Rx<bool?>
RxnDoubleExt on Rx<double?>
RxnIntExt on Rx<int?>
RxnNumExt on Rx<T?>
RxnStringExt on Rx<String?>
RxNumExt on Rx<T>
RxStringExt on Rx<String>
RxT on T
SetExtension on Set<E>
StateExt on StateMixin<T>
StringDecryptExtension on String
StringExtension on String
Trans on String
UInt8ListDecryptExtension on Uint8List
UInt8ListEncryptExtension on Uint8List
WidgetMarginX on Widget
Add margin property to widget
WidgetPaddingX on Widget
add Padding Property to widget
WidgetSliverBoxX on Widget
Allows you to insert widgets inside a CustomScrollView

Constants

englishCharacters → const String
infinity → const double
isWeb → const bool
keyCharacters → const String
rtlLanguages → const List<String>
unModifiable → const UnModifiable

Properties

Get → _GetImpl
final
isAndroid bool
no setter
isDebugMode bool
no setter
isIOS bool
no setter
isMobile bool
no setter
isReleaseMode bool
no setter
log String? Function(Object? message)
final
It replaces the Flutter Navigator, but needs no context. You can to use navigator.push(YourRoute()) rather Navigator.push(context, YourRoute());
no setter
platformName String
no setter

Functions

ambiguate<T>(T? value) → T?
binarySearch<E>(List<E> sortedList, E value, {int compare(E, E)?}) int
Returns a position of the value in sortedList, if it is there.
bodyBytesToString(Stream<List<int>> bodyBytes, Map<String, String> headers) Future<String>
compareAsciiLowerCase(String a, String b) int
Compares a and b lexically, converting ASCII letters to lower case.
compareAsciiLowerCaseNatural(String a, String b) int
Compares strings a and b according to lower-case natural sort ordering.
compareAsciiUpperCase(String a, String b) int
Compares a and b lexically, converting ASCII letters to upper case.
compareAsciiUpperCaseNatural(String a, String b) int
Compares strings a and b according to upper-case natural sort ordering.
compareNatural(String a, String b) int
Compares strings a and b according to natural sort ordering.
debounce<T>(RxInterface<T> listener, WorkerCallback<T> callback, {Duration? time, Function? onError, void onDone()?, bool? cancelOnError}) Worker
debounce is similar to interval, but sends the last value. Useful for Anti DDos, every time the user stops typing for 1 second, for instance. When listener emits the last "value", when time hits, it calls callback with the last "value" emitted.
defaultLogWriterCallback(String value, {bool isError = false}) → void
default logger from GetX
equalsIgnoreAsciiCase(String a, String b) bool
Checks if strings a and b differ only on the case of ASCII letters.
ever<T>(RxInterface<T> listener, WorkerCallback<T> callback, {dynamic condition = true, Function? onError, void onDone()?, bool? cancelOnError}) Worker
Called every time listener changes. As long as the condition returns true.
everAll(List<RxInterface> listeners, WorkerCallback callback, {dynamic condition = true, Function? onError, void onDone()?, bool? cancelOnError}) Worker
Similar to ever, but takes a list of listeners, the condition for the callback is common to all listeners, and the callback is executed to each one of them. The Worker is common to all, so worker.dispose() will cancel all streams.
groupBy<S, T>(Iterable<S> values, T key(S)) Map<T, List<S>>
Groups the elements in values by the value returned by key.
hashIgnoreAsciiCase(String string) int
Hash code for a string which is compatible with equalsIgnoreAsciiCase.
insertionSort<E>(List<E> elements, {int compare(E, E)?, int start = 0, int? end}) → void
Sort a list between start (inclusive) and end (exclusive) using insertion sort.
interval<T>(RxInterface<T> listener, WorkerCallback<T> callback, {Duration time = const Duration(seconds: 1), dynamic condition = true, Function? onError, void onDone()?, bool? cancelOnError}) Worker
Ignore all changes in listener during time (1 sec by default) or until condition is met (can be a bool expression or a bool Function()), It brings the 1st "value" since the period of time, so if you click a counter button 3 times in 1 sec, it will show you "1" (after 1 sec of the first press) click counter 3 times in 1 sec, it will show you "4" (after 1 sec) click counter 2 times in 1 sec, it will show you "7" (after 1 sec).
lastBy<S, T>(Iterable<S> values, T key(S)) Map<T, S>
Associates the elements in values by the value returned by key.
lowerBound<E>(List<E> sortedList, E value, {int compare(E, E)?}) int
Returns the first position in sortedList that does not compare less than value.
mapMap<K1, V1, K2, V2>(Map<K1, V1> map, {K2 key(K1, V1)?, V2 value(K1, V1)?}) Map<K2, V2>
Creates a new map from map with new keys and values.
maxBy<S, T>(Iterable<S> values, T orderBy(S), {int compare(T, T)?}) → S?
Returns the element of values for which orderBy returns the maximum value.
mergeMaps<K, V>(Map<K, V> map1, Map<K, V> map2, {V value(V, V)?}) Map<K, V>
Returns a new map with all key/value pairs in both map1 and map2.
mergeSort<E>(List<E> elements, {int start = 0, int? end, int compare(E, E)?}) → void
Sorts a list between start (inclusive) and end (exclusive) using the merge sort algorithm.
minBy<S, T>(Iterable<S> values, T orderBy(S), {int compare(T, T)?}) → S?
Returns the element of values for which orderBy returns the minimum value.
once<T>(RxInterface<T> listener, WorkerCallback<T> callback, {dynamic condition = true, Function? onError, void onDone()?, bool? cancelOnError}) Worker
once() will execute only 1 time when condition is met and cancel the subscription to the listener stream right after that. condition defines when callback is called, and can be a bool or a bool Function().
reverse<E>(List<E> elements, [int start = 0, int? end]) → void
Reverses a list, or a part of a list, in-place.
shuffle(List elements, [int start = 0, int? end, Random? random]) → void
Shuffles a list randomly.
stronglyConnectedComponents<T>(Map<T, Iterable<T>> graph) List<Set<T>>
Returns the strongly connected components of graph, in topological order.
transitiveClosure<T>(Map<T, Iterable<T>> graph) Map<T, Set<T>>
Returns the transitive closure of graph.

Typedefs

AddSubscription<T> = FutureOr<void> Function(LightSubscription<T> subs)
AsyncInstanceBuilderCallback<S> = Future<S> Function()
BindingBuilderCallback = void Function()
Condition = bool Function()
Decoder<T> = T Function(dynamic data)
GetControllerBuilder<T extends DisposableInterface> = Widget Function(T controller)
GetPageBuilder = Widget Function()
GetXControllerBuilder<T extends DisposableInterface> = Widget Function(T controller)
InjectorBuilderCallback<S> = S Function(GetInstance)
InstanceBuilderCallback<S> = S Function()
LogWriterCallback = void Function(String text, {bool isError})
VoidCallback from logs
NotifierBuilder<T> = Widget Function(T state)
OnTap = void Function(GetSnackBar snack)
PrintFunctionCallback = void Function(String prefix, dynamic value, String info, {bool? isError})
Progress = dynamic Function(double percent)
RemoveSubscription<T> = FutureOr<bool?> Function(LightSubscription<T> subs)
SnackbarStatusCallback = void Function(SnackbarStatus? status)
ValueBuilderBuilder<T> = Widget Function(T snapshot, ValueBuilderUpdateCallback<T> updater)
ValueBuilderUpdateCallback<T> = void Function(T snapshot)
ValueUpdater<T> = T Function()
WidgetCallback = Widget Function()
WorkerCallback<T> = dynamic Function(T callback)