_common library

Classes

BaseModel
BoolList
A space-efficient list of boolean values.
CanonicalizedMap<C, K, V>
A map whose keys are converted to canonical values of type C.
CaseInsensitiveEquality
String equality that's insensitive to differences in ASCII case.
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.
CsvUtility
DataRefModel
Generated class for _DataRefModel.
DataRefModelFieldNames
DateTimeUtils
A collection of static utility methods for performing aggregate calculations on lists of DateTime objects.
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.
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.
FieldModel
Generated class for _FieldModel.
FieldModelFieldNames
FieldUtils
GenerateDartModel
Generated class for _GenerateDartModel.
GenerateDartModelFieldNames
HeapPriorityQueue<E>
Heap based priority queue.
IdentityEquality<E>
Equality of objects that compares only the identity of the objects.
IterableEquality<E>
Equality on iterables.
IterableZip<T>
Iterable that iterates over lists of values from other iterables.
JsonUtility
ListEquality<E>
Equality on lists.
ListSlice<E>
A list view of a range of another list.
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.
Model
MultiEquality<E>
Combines several equalities into a single equality.
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.
PriorityQueue<E>
A priority queue is a priority based work-list of elements.
QueueList<E>
A class that efficiently implements both Queue and List.
ReferencedModel
Generated class for _ReferencedModel.
ReferencedModelFieldNames
SetEquality<E>
Equality of sets.
StreamUtils
A collection of static utility methods for working with Stream.
StringToDurationConverter
A utility to safely parse a string into a Duration.
ThisModel<T extends BaseModel>
A class that extends BaseModel that provides a reference to itself.
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.
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.
Waiter<T>
Manages a collection of operations for deferred, batched execution.

Enums

StringCaseType
Enum for different string case types.

Mixins

ReferencedModelEqualityMixin<T extends ReferencedModel>
A mixin on ReferencedModel that implements EquatableMixin to identify the model by id an ref.
ThisModelMixin<T extends BaseModel>
A mixin on BaseModel that provides a reference to itself.

Extensions

CartesianProductOnIterableExt on Iterable<Iterable<T>>
CaseConversionsOnStringExt on String
ChunkedOnIterableExt on Iterable<T>
ComparatorExtension on Comparator<T>
Extensions on comparator functions.
ConvertOnStringCaseTypeExtension on StringCaseType
DataRefModelExtension on DataRefModel
DataRefModelX on DataRefModel
DeepGetOnMapExt on Map
FieldModelX on FieldModel
ForceObjToStringOnObjectExt on Object
An extension method for conveniently calling forceObjToString.
FutureOrExt on FutureOr<T>
Convenience methods for inspecting and converting a FutureOr.
GenerateDartModelX on GenerateDartModel
GenericTypeOnIterableExt on Iterable<T>
GenericTypeOnMapExt on Map<K, V>
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.
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.
JoinWithLastSeparatorOnIterableExt on Iterable
ListComparableExtensions on List<E>
Various extensions on lists of comparable elements.
ListExtensions on List<E>
Various extensions on lists of arbitrary elements.
MapKeysAndValyesOnMapExt on Map<K1, V1>
MapWithDefaultOnMapExt on Map<K, V>
MaybeAddToIterableExt on Iterable<T>
MaybeAddToListExt on List<T>
MaybeAddToMapExt on Map<T1, T2>
MaybeAddToSetExt on Set<T>
NonNullKeysOnMapExt on Map<K?, V>
NonNullsOnMapExt on Map<K?, V?>
NonNullValuesOnMapExt on Map<K, V?>
NullIfEmptyOnIterableExt on Iterable<T>
NullIfEmptyOnListExt on List<T>
NullIfEmptyOnMapExt on Map<T1, T2>
NullIfEmptyOnQueueExt on Queue<T>
NullIfEmptyOnSetExt on Set<T>
ReferencedModelX on ReferencedModel
SetNestedValueOnMapExt on Map
StringExt1 on String
TakeLastOnIterableExt on Iterable<T>
ToClassOnTFieldRecordExtension on TFieldRecord
ToMapOnIterableExt on Iterable<MapEntry<K, V>>
TraverseMapOnMapExt on Map<K, V>
TryCallOnFunctionExt on Function
Provides a safe, dynamic invocation method for any Function.
TryMergeOnIterableExt on Iterable<Iterable<T>?>
TryReduceOnIterableExt on Iterable<T>
UniqueOnIterableExt on Iterable<T>
UniqueOnMapEntryIterableExt on Iterable<MapEntry<K, V>>
UnmodifiableOnListExt on List<T>
UnmodifiableOnMapExt on Map<K, V>
UnmodifiableOnSetExt on Set<T>
ValueOfOnEnumExtension on Iterable<T>
Provides a safe, string-based lookup method for enum iterables.

Constants

CAMEL_CASE → const String
A key representing camel case.
CAPITALIZED_KEBAB_CASE → const String
A key representing lower kebab case.
DATA_REF_FIELDS → const Set<FieldModel>
FIELD_MODEL_FIELDS → const Set<FieldModel>
GENERATE_DART_MODEL_FIELDS → const Set<FieldModel>
LOWER_DOT_CASE → const String
A key representing lower dot case.
LOWER_KEBAB_CASE → const String
A key representing lower kebab case.
LOWER_SNAKE_CASE → const String
A key representing lower snake case.
PASCAL_CASE → const String
A key representing pascal case.
PATH_CASE → const String
A key representing path case.
REFERENCED_MODEL_FIELDS → const Set<FieldModel>
T_CAMEL_CASE_STRING → const String
T_LOWER_CASE_STRING → const String
T_LOWER_KEBAB_CASE_STRING → const String
T_LOWER_SNAKE_CASE_STRING → const String
T_NO_SPACES_STRING → const String
T_PASCAL_CASE_STRING → const String
T_SEARCHABLE_STRING → const String
T_TRIMMED_CAMEL_CASE_STRING → const String
T_TRIMMED_LOWER_CASE_STRING → const String
T_TRIMMED_LOWER_KEBAB_CASE_STRING → const String
T_TRIMMED_LOWER_SNAKE_CASE_STRING → const String
T_TRIMMED_PASCAL_CASE_STRING → const String
T_TRIMMED_STRING → const String
T_TRIMMED_UPPER_CASE_STRING → const String
T_TRIMMED_UPPER_KEBAB_CASE_STRING → const String
T_TRIMMED_UPPER_SNAKE_CASE_STRING → const String
T_UPPER_CASE_STRING → const String
T_UPPER_KEBAB_CASE_STRING → const String
T_UPPER_SNAKE_CASE_STRING → const String
UPPER_DOT_CASE → const String
A key representing upper dot case.
UPPER_KEBAB_CASE → const String
A key representing upper kebab case.
UPPER_SNAKE_CASE → const String
A key representing upper snake case.

Properties

consecList FutureOr<R> Function<R>(Iterable<FutureOr> items, _TSyncOrAsyncMapper<Iterable, R> callback, {bool eagerError = true, _TOnCompleteCallback? onComplete, _TOnErrorCallback? onError})
final
letAs → T? Function<T>(dynamic input)
final
letBool bool? Function(dynamic input)
final
letDouble double? Function(dynamic input)
final
letInt int? Function(dynamic input)
final
letList List<T?>? Function<T>(dynamic input)
final
letMap Map<K, V>? Function<K, V>(dynamic input)
final
letSet Set<T?>? Function<T>(dynamic input)
final

Functions

binarySearch<E>(List<E> sortedList, E value, {int compare(E, E)?}) int
Returns a position of the value in sortedList, if it is there.
cartesianProduct<T>(Iterable<Iterable<T>> source, T combinator(T a, T b)) Iterable<T>
Creates the Cartesian product of the iterables and combines each resulting pair using the combinator function.
chunked<T>(Iterable<T> source, int chunkSize) Iterable<Iterable<T>>
Splits the source into chunks of a maximum size specified by chunkSize.
combinedOrderedStringId(List<String> ids) String
Generates an ordered ID from a list of unordered IDs, that can be used to identify the list of IDs.
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.
consec<A, R>(FutureOr<A> a, FutureOr<R> callback(A a), {_TOnErrorCallback? onError, bool eagerError = true, _TOnCompleteCallback? onComplete}) FutureOr<R>
Maps a synchronous or asynchronous value to a single value.
consec2<A, B, R>(FutureOr<A> a, FutureOr<B> b, FutureOr<R> callback(A a, B b), {_TOnErrorCallback? onError, bool eagerError = true, _TOnCompleteCallback? onComplete}) FutureOr<R>
Maps two synchronous or asynchronous values to a single value.
consec3<A, B, C, R>(FutureOr<A> a, FutureOr<B> b, FutureOr<C> c, FutureOr<R> callback(A a, B b, C c), {_TOnErrorCallback? onError, bool eagerError = true, _TOnCompleteCallback? onComplete}) FutureOr<R>
Maps three synchronous or asynchronous values to a single value.
consec4<A, B, C, D, R>(FutureOr<A> a, FutureOr<B> b, FutureOr<C> c, FutureOr<D> d, FutureOr<R> callback(A a, B b, C c, D d), {_TOnErrorCallback? onError, bool eagerError = true, _TOnCompleteCallback? onComplete}) FutureOr<R>
Maps four synchronous or asynchronous values to a single value.
consec5<A, B, C, D, E, R>(FutureOr<A> a, FutureOr<B> b, FutureOr<C> c, FutureOr<D> d, FutureOr<E> e, FutureOr<R> callback(A a, B b, C c, D d, E e), {_TOnErrorCallback? onError, bool eagerError = true, _TOnCompleteCallback? onComplete}) FutureOr<R>
Maps five synchronous or asynchronous values to a single value.
consec6<A, B, C, D, E, F, R>(FutureOr<A> a, FutureOr<B> b, FutureOr<C> c, FutureOr<D> d, FutureOr<E> e, FutureOr<F> f, FutureOr<R> callback(A a, B b, C c, D d, E e, F f), {_TOnErrorCallback? onError, bool eagerError = true, _TOnCompleteCallback? onComplete}) FutureOr<R>
Maps six synchronous or asynchronous values to a single value.
consec7<A, B, C, D, E, F, G, R>(FutureOr<A> a, FutureOr<B> b, FutureOr<C> c, FutureOr<D> d, FutureOr<E> e, FutureOr<F> f, FutureOr<G> g, FutureOr<R> callback(A a, B b, C c, D d, E e, F f, G g), {_TOnErrorCallback? onError, bool eagerError = true, _TOnCompleteCallback? onComplete}) FutureOr<R>
Maps seven synchronous or asynchronous values to a single value.
consec8<A, B, C, D, E, F, G, H, R>(FutureOr<A> a, FutureOr<B> b, FutureOr<C> c, FutureOr<D> d, FutureOr<E> e, FutureOr<F> f, FutureOr<G> g, FutureOr<H> h, FutureOr<R> callback(A a, B b, C c, D d, E e, F f, G g, H h), {_TOnErrorCallback? onError, bool eagerError = true, _TOnCompleteCallback? onComplete}) FutureOr<R>
Maps eight synchronous or asynchronous values to a single value.
consec9<A, B, C, D, E, F, G, H, I, R>(FutureOr<A> a, FutureOr<B> b, FutureOr<C> c, FutureOr<D> d, FutureOr<E> e, FutureOr<F> f, FutureOr<G> g, FutureOr<H> h, FutureOr<I> i, FutureOr<R> callback(A a, B b, C c, D d, E e, F f, G g, H h, I i), {_TOnErrorCallback? onError, bool eagerError = true, _TOnCompleteCallback? onComplete}) FutureOr<R>
Maps nine synchronous or asynchronous values to a single value.
convertToStringCaseType(String value, StringCaseType? stringCaseType) String
Converts a string to a specific case type.
dataRefFromString(String? input) DataRefModel?
Creates a DataRefModel from a given path string. If the path ends with a '/', it represents a collection path, otherwise, it represents a document path.
deepGet(Map? map, String path, {String separator = '.'}) → dynamic
Safely retrieves and converts a value from a nested data structure using a dot-separated path.
deepGetFromSegments(Map? map, Iterable pathSegments) → dynamic
Safely retrieves and converts a value from a nested data structure using a list of path pathSegments.
equalsIgnoreAsciiCase(String a, String b) bool
Checks if strings a and b differ only on the case of ASCII letters.
forceObjToString(Object? obj) String
Converts an object to a string, returning a fallback representation if the object's toString() method throws an exception.
getSetDifference<T>(Set<T> before, Set<T> after) Set<T>
Returns the difference between two sets.
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.
isNullable<T>() bool
Returns true if T is nullable.
isSubtype<TChild, TParent>() bool
Returns true if A is a subtype of B.
jsonDecode(String source, {Object? reviver(Object? key, Object? value)?}) → dynamic
Parses the string and returns the resulting Json object.
jsonDecodeOrNull<T>(String input) → T?
Parses a JSON input into an object of type T, returning Null on failure.
jsonEncode(Object? object, {Object? toEncodable(Object? nonEncodable)?}) String
Converts object to a JSON string.
lastBy<S, T>(Iterable<S> values, T key(S)) Map<T, S>
Associates the elements in values by the value returned by key.
letAsOrNull<T>(dynamic input) → T?
Casts input to type T, returning Null on failure.
letAsStringOrNull(dynamic input) String?
Converts input to String, returning Null on failure.
letBoolOrNull(dynamic input) bool?
Converts input to bool, returning Null on failure.
letDateTimeOrNull(dynamic input) DateTime?
Converts input to bool, returning Null on failure.
letDoubleOrNull(dynamic input) double?
Converts input to double, returning Null on failure.
letIntOrNull(dynamic input) int?
Converts input to int, returning Null on failure.
letIterableOrNull<T>(dynamic input) Iterable<T?>?
Converts input to Iterable<Option<T>>, returning Null on failure.
letListOrNull<T>(dynamic input) List<T?>?
Supported types:
letMapOrNull<K, V>(dynamic input) Map<K, V>?
Converts input to Map<K, Option<V>>, returning Null on failure.
letNumOrNull(dynamic input) num?
Converts input to num, returning Null on failure.
letOrNull<T>(dynamic input) → T?
Attempts to convert a dynamic input to the specified type T, returning Null on failure.
letSetOrNull<T>(dynamic input) Set<T?>?
Supported types:
letUriOrNull(dynamic input) Uri?
Converts input to Uri, returning Null on failure.
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.
maybeAddToIterable<T>(Iterable<T>? source, Iterable<T>? add) Iterable<T>?
Adds add to source if both are not null.
maybeAddToList<T>(List<T>? source, List<T>? add) List<T>?
Adds add to source if both are not null.
maybeAddToMap<T1, T2>(Map<T1, T2>? source, Map<T1, T2>? add) Map<T1, T2>?
Adds add to source if both are not null.
maybeAddToSet<T>(Set<T>? source, Set<T>? add) Set<T>?
Adds add to source if both are not null.
mergeDataDeep(dynamic a, dynamic b, [dynamic elseFilter(dynamic)?]) → dynamic
mergeDataDeepIncludeCallsToJson(dynamic a, dynamic b) → dynamic
mergeDataDeepIncludeCallsToMap(dynamic a, dynamic b) → dynamic
mergeIterables(dynamic a, dynamic b) Iterable
mergeListsSetsOrQueues(Iterable a, Iterable b, [dynamic elseFilter(dynamic)?]) Iterable
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.
mergeMapsDeep<K, V>(List<Map<K, V>> maps) Map<K, V>
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.
nullFilteredList<T>(Iterable input) List<T>
Converts input to a List with non-null elements if T is non-null.
nullFilteredMap<K, V>(Map input) Map<K, V>
Converts input to a Map with non-null keys and values if K and V are non-null.
nullFilteredSet<T>(Iterable input) Set<T>
Converts input to a Set with non-null elements if T is non-null.
nullIfEmpty<T>(T value) → T?
Returns null if value is empty, otherwise returns value.
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.
traverseMap(Map map, Iterable keys, {dynamic newValue}) → dynamic
Traverses a Map using a list of keys. If the keys do not exist, they are created. If newValue is provided, the value at the end of the traversal is set to newValue.
tryToJson(dynamic object) → dynamic
tryToMap(dynamic object) → dynamic
typeEquality<T1, T2>() bool
Returns true if T1 and T2 are the same type.
unique<T>(Iterable<T> src, [bool equals(T a, T b)?]) Iterable<T>
Returns a new iterable with all duplicate elements removed.
uniqueEntries<K, V>(Iterable<MapEntry<K, V>> entries) List<MapEntry<K, V>>
uniqueKeys<K, V>(Iterable<MapEntry<K, V>> entries) List<MapEntry<K, V>>
uniqueRefs<T extends ReferencedModel>(Iterable<T> input) Iterable<T>
Returns a list of unique ReferencedModels from input. Uniqueness is determined by the ReferencedModel.ref property.
uniqueValues<K, V>(Iterable<MapEntry<K, V>> entries) List<MapEntry<K, V>>
wait<R>(Iterable<FutureOr> items, _TSyncOrAsyncMapper<Iterable, R> callback, {_TOnErrorCallback? onError, bool eagerError = true, _TOnCompleteCallback? onComplete}) FutureOr<R>
Waits for a list of FutureOr values and transforms the results.
waitAlike<T>(Iterable<FutureOr<T>> items, {_TOnErrorCallback? onError, bool eagerError = true, _TOnCompleteCallback? onComplete}) FutureOr<Iterable<T>>
Waits for a list of FutureOr values and returns them as an Iterable.
waitAlikeF<T>(Iterable<_TFactory> itemFactories, {_TOnErrorCallback? onError, bool eagerError = true, _TOnCompleteCallback? onComplete}) FutureOr<Iterable<T>>
Executes deferred operations and returns the results as an Iterable.
waitF<R>(Iterable<_TFactory> itemFactories, _TSyncOrAsyncMapper<Iterable, R> callback, {_TOnErrorCallback? onError, bool eagerError = true, _TOnCompleteCallback? onComplete}) FutureOr<R>
Waits for a list of FutureOr values and transforms the results.

Typedefs

DataRef = DataRefModel
Field = FieldModel
TFieldRecord = ({List<Map<String, dynamic>>? children, String? description, Object? fallback, List<String>? fieldPath, String? fieldType, bool? foreignKey, bool? nullable, bool? primaryKey})
A record representing a field. Similar to FieldModel.