flutter_app_components library

Classes

Adaptive
BackgroundTransformer
The default Transformer for Dio.
BaseOptions
A set of base settings for each Dio(). BaseOptions and Options will be merged into one RequestOptions before sending the requests. See Options.compose.
BouncingScrollBehavior
BouncingScrollWrapper
Breakpoint
BytesLoader
An interface that can be implemented to support decoding vector graphic binary assets from different byte sources.
Cache
The cache for decoded SVGs.
CancelToken
Controls cancellation of Dio's requests.
ClampingScrollBehavior
ClampingScrollWrapper
ColorMapper
A class that transforms from one color to another during SVG parsing.
Condition<T>
A conditional value provider.
DefaultSvgTheme
The SVG theme to apply to descendant SvgPicture widgets which don't have explicit theme values.
Device
Dio
Dio enables you to make HTTP requests easily.
DioMixin
Disposable
If objects that are registered inside GetIt implements Disposable the onDispose method will be called whenever that Object is unregistered, reset or its enclosing Scope is popped
DisposeMethod
marks an instance method as a dispose call back to be passed to GetIt
EnableLogging
Class which enables logging everywhere
Environment
Used to annotate dependencies which are registered under certain environments
EnvironmentFilter
a simple filter function to be used inside SimpleEnvironmentFilter filter for whether to register for the given set of environments clients can extend this class to maker their own environmentFilters
ErrorInterceptorHandler
The handler for interceptors to handle error occurred during the request.
ExternalModule
FactoryMethod
Marks a factory, a named constructor or a static create function as an injectable constructor if not added the default constructor will be used
FactoryParam
Marks a constructor param as factoryParam so it can be passed to the resolver function
FaIcon
Creates an Icon Widget that works for non-material Icons, such as the Font Awesome Icons.
FCAPIClient
FCBottomSheet
FCButton
A highly customizable button widget with various types and styling options.
FCButtonState
The state class for FCButton, managing its internal state and appearance.
FCDropDown
FCFormTextField
A highly customizable form text field widget.
FCLoading
FCSharedPreferences
FCUtils
A utility class containing various helper methods for common app functionalities.
FCValidations
FontAwesomeIcons
Icons based on font awesome 7.0.0
FormData
A class to create readable "multipart/form-data" streams. It can be used to submit forms and file uploads to http server.
FusedTransformer
A Transformer that has a fast path for decoding UTF8-encoded JSON. If the response is utf8-encoded JSON and no custom decoder is specified in the RequestOptions, this transformer is significantly faster than the default SyncTransformer and the BackgroundTransformer. This improvement is achieved by using a fused Utf8Decoder and JsonDecoder to decode the response, which is faster than decoding the utf8-encoded JSON in two separate steps, since Dart uses a special fast decoder for this case. See https://github.com/dart-lang/sdk/blob/5b2ea0c7a227d91c691d2ff8cbbeb5f7f86afdb9/sdk/lib/_internal/vm/lib/convert_patch.dart#L40
GetIt
Very simple and easy to use service locator You register your object creation factory or an instance of an object with registerFactory, registerSingleton or registerLazySingleton And retrieve the desired object using get or call your locator as function as its a callable class Additionally GetIt offers asynchronous creation functions as well as functions to synchronize the async initialization of multiple Singletons
GetItHelper
a helper class to handle conditional registering
Headers
The headers class for requests and responses.
HttpClientAdapter
HttpAdapter is a bridge between Dio and HttpClient.
IconDataBrands
IconData for a font awesome brand icon from a code point
IconDataDuotone
IconData for a font awesome duotone icon from a code point. Only works if duotone icons (font awesome pro) have been installed.
IconDataLight
IconData for a font awesome light icon from a code point. Only works if light icons (font awesome pro) have been installed.
IconDataRegular
IconData for a font awesome regular icon from a code point
IconDataSharpLight
IconData for a font awesome sharp light icon from a code point. Only works if thin icons (font awesome pro, v6+) have been installed.
IconDataSharpRegular
IconData for a font awesome sharp regular icon from a code point. Only works if thin icons (font awesome pro, v6+) have been installed.
IconDataSharpSolid
IconData for a font awesome sharp solid icon from a code point. Only works if thin icons (font awesome pro, v6+) have been installed.
IconDataSharpThin
IconData for a font awesome sharp thin icon from a code point. Only works if thin icons (font awesome pro, v6+) have been installed.
IconDataSolid
IconData for a font awesome solid icon from a code point
IconDataThin
IconData for a font awesome thin icon from a code point. Only works if thin icons (font awesome pro, v6+) have been installed.
IgnoreParam
Constructor params annotated with IgnoreParam will be ignored by when generating the resolver function
InheritedResponsiveBreakpoints
Creates an immutable widget that exposes ResponsiveBreakpointsData to child widgets.
InitDependency
Data structure used to identify a dependency by type and instanceName
Injectable
Marks a class as an injectable dependency and generates
InjectableInit
// Marks a top-level function as an initializer function for configuring Get_it
Interceptor
Interceptor helps to deal with RequestOptions, Response, and DioException during the lifecycle of a request before it reaches users.
Interceptors
A Queue-Model list for Interceptors.
InterceptorsWrapper
A helper class to create interceptors in ease.
LazySingleton
Classes annotated with @LazySingleton will generate registerLazySingleton func
ListParam<T>
Indicates a param being used as queries or form data, and how does it gets formatted.
LogInterceptor
LogInterceptor is used to print logs during network requests. It should be the last interceptor added, otherwise modifications by following interceptors will not be logged. This is because the execution of interceptors is in the order of addition.
MaxWidthBox
MicroPackageModule
Module
marks a class as a register module where all property accessors rerun types are considered factories unless annotated with @singleton/lazySingleton.
MultipartFile
An upload content that is a part of MultipartRequest. This doesn't need to correspond to a physical file.
Named
Used to register a dependency under a name instead of type also used to annotated named injected dependencies in constructors
NoEnvOrContains
This filter validates dependencies with no environment keys or contain the provided environment
NoEnvOrContainsAll
This filter validates dependencies with no environment keys, or the ones containing all the provided environments
NoEnvOrContainsAny
This filter validates dependencies with no environment keys, or the ones containing one of the provided environments
NoScrollbarBehavior
NoScrollbarWrapper
ObjectRegistration<T extends Object>
Options
The configuration for a single request. BaseOptions and Options will be merged into one RequestOptions before sending the requests. See Options.compose.
Order
Classes annotated with @Order will overwrite the automatically generated position of the
PictureInfo
The deocded result of a vector graphics asset.
PictureProvider
Deprecated class, will be removed, does not do anything.
PostConstruct
methods annotated with postConstruct will be called in a cascade manner after being constructed
PreResolve
Futures annotated with preResolve will be pre-awaited before they're registered inside of GetIt
QueuedInterceptor
Interceptor in queue.
QueuedInterceptorsWrapper
A helper class to create QueuedInterceptor in ease.
RedirectRecord
A record that records the redirection happens during requests, including status code, request method, and the location.
RequestInterceptorHandler
The handler for interceptors to handle before the request has been sent.
RequestOptions
The internal request option class that is the eventual result after BaseOptions and Options are composed.
Response<T>
The Response class contains the payload (could be transformed) that respond from the request, and other information of the response.
ResponseBody
The response wrapper class for adapters.
ResponseInterceptorHandler
The handler for interceptors to handle after respond.
ResponsiveBreakpoints
ResponsiveBreakpointsData
Responsive data about the current screen.
ResponsiveBreakpointsState
ResponsiveConstraints
ResponsiveGridDelegate
A SliverGridDelegate with item sizing control.
ResponsiveGridView
A GridView with responsive capabilities.
ResponsiveRowColumn
A convenience wrapper that use Flex for responsive horizontal and vertical layout switching with padding and spacing.
ResponsiveRowColumnItem
A wrapper for ResponsiveRowColumn children with responsiveness.
ResponsiveScaledBox
ResponsiveUtils
Util functions for the Responsive Framework.
ResponsiveValue<T>
Conditional values based on the active breakpoint.
ResponsiveVisibility
A convenience wrapper for responsive Visibility.
Scope
Used to annotate dependencies which are registered under a different scope than main-scope
ShadowChangeHandlers
If an object implements the ShadowChangeHandler if will get notified if an Object with the same registration type and name is registered on a higher scope which will shadow it. It also will get notified if the shadowing object is removed from GetIt
SimpleEnvironmentFilter
A simple filter that can be used directly for simple use cases without having to extend the base EnvironmentFilter
Singleton
Classes annotated with @Singleton will generate registerSingleton function
Sizer
A widget that gets the device's details like orientation and constraints
Svg
A utility class for decoding SVG data to a DrawableRoot or a PictureInfo.
SvgAssetLoader
A BytesLoader that decodes and parses an SVG asset in an isolate and creates a vector_graphics binary representation.
SvgBytesLoader
A BytesLoader that decodes and parses a UTF-8 encoded SVG string from a Uint8List in an isolate and creates a vector_graphics binary representation.
SvgCacheKey
A SvgTheme aware cache key.
SvgFileLoader
A BytesLoader that decodes SVG data from a file in an isolate and creates a vector_graphics binary representation.
SvgLoader<T>
A BytesLoader that parses a SVG data in an isolate and creates a vector_graphics binary representation.
SvgNetworkLoader
A BytesLoader that decodes and parses a UTF-8 encoded SVG string the network in an isolate and creates a vector_graphics binary representation.
SvgPicture
A widget that will parse SVG data for rendering on screen.
SvgStringLoader
A BytesLoader that parses an SVG string in an isolate and creates a vector_graphics binary representation.
SvgTheme
A theme used when decoding an SVG picture.
SyncTransformer
If you want to custom the transformation of request/response data, you can provide a Transformer by your self, and replace the transformer by setting the Dio.transformer.
Transformer
Transformer allows changes to the request/response data before it is sent/received to/from the server.
VectorGraphicUtilities
Utility functionality for interaction with vector graphic assets.
WillSignalReady
If your singleton that you register wants to use the manually signalling of its ready state, it can implement this interface class instead of using the signalsReady parameter of the registration functions (you don't really have to implement much ;-) )

Enums

AppValidations
Conditional
Internal equality comparators.
DeviceType
Type of Device
DifferentBorder
DioExceptionType
The exception enumeration indicates what type of exception has happened during requests.
FieldBorder
FileAccessMode
The file access mode when downloading a file, corresponds to a subset of dart:io::FileMode.
ListFormat
Specifies the array format (a single parameter with multiple parameter or multiple parameters with the same name). and the separator for array items.
ObjectRegistrationType
You will see a rather esoteric looking test (const Object() is! T) at several places. It tests if T is a real type and not Object or dynamic. For each registered factory/singleton an ObjectRegistration<T> is created it holds either the instance of a Singleton or/and the creation functions for creating an instance when get is called
OnRequestParams
ResponseType
Indicates which transformation should be applied to the response data.
ResponsiveRowColumnType
ResponsiveTargetPlatform
A superset of TargetPlatform that includes web as an enum option. Flutter's TargetPlatform does not include web as a platform option.
ScreenType
Type of Screen
ToastType
Enum to define different types of toasts (success, warning, error).

Mixins

OptionsMixin
The mixin class for options that provides common attributes.

Extensions

AppStringExtension on String
FCContext on BuildContext
HexColor on String
Extension on String to convert hexadecimal color strings to Color objects.
SetX on Set<T>
SizerExt on num
TargetPlatformExtension on TargetPlatform
A helper extension to convert TargetPlatform to ResponsiveTargetPlatform.
WidgetsList on List<Widget>

Constants

DESKTOP → const String
dev → const Environment
preset instance of common env name
disposeMethod → const DisposeMethod
const instance of DisposeMethod with default arguments
factoryMethod → const FactoryMethod
const instance of FactoryMethod with default values
factoryParam → const FactoryParam
const instance of FactoryParam with default arguments
ignoreParam → const IgnoreParam
const instance of IgnoreParam
injectable → const Injectable
const instance of Injectable with default arguments
injectableInit → const InjectableInit
const instance of InjectableInit with default arguments
kEnvironmentsFilterName → const String
kEnvironmentsName → const String
instance name for the Set of environment keys that's registered internally inside of GetItHelper
lazySingleton → const LazySingleton
const instance of LazySingleton with default arguments
microPackageInit → const InjectableInit
const instance of InjectableInit.microPackage with default arguments
MOBILE → const String
module → const Module
const instance of Module with default arguments
named → const Named
const instance of Named with default arguments
order → const Order
const instance of Order with default arguments
PHONE → const String
postConstruct → const PostConstruct
const instance of PostConstruct with default arguments
preResolve → const PreResolve
const instance of PreResolve with default arguments
prod → const Environment
preset instance of common env name
singleton → const Singleton
const instance of Singleton with default arguments
TABLET → const String
test → const Environment
preset instance of common env name
vg → const VectorGraphicUtilities
The VectorGraphicUtilities instance.

Properties

kAppDataGridRowsCount int
A constant integer representing the default number of rows in a data grid.
getter/setter pair
logger → Logger
final
GlobalKey for another NavigatorState, possibly for a different navigation stack.
final
GlobalKey for the main NavigatorState, used for navigation operations.
final
svg Svg
Instance for Svg's utility methods, which can produce a DrawableRoot or PictureInfo from String or Uint8List.
final

Functions

defaultDioExceptionReadableStringBuilder(DioException e) String
The default implementation of building a readable string of DioException.
headerTextStyle(BuildContext context) TextStyle?
Returns the default header text style from the current Theme's TextTheme.
kAppDialogPopUpWidth({required BuildContext context}) double
Calculates the preferred width for a dialog pop-up based on the screen width. It's set to 1/1.2 (approximately 83.3%) of the screen width.
setPageTitle(String title, {int? colorInt}) → void
Sets the page title for web applications, which appears in the browser tab or task switcher.
throwIf(bool condition, Object error) → void
Two handy functions that help me to express my intention clearer and shorter to check for runtime errors
throwIfNot(bool condition, Object error) → void

Typedefs

DefaultTransformer = SyncTransformer
DioError = DioException
DioError describes the exception info when a request failed.
DioErrorType = DioExceptionType
Deprecated in favor of DioExceptionType and will be removed in future major versions.
DioExceptionReadableStringBuilder = String Function(DioException e)
The readable string builder's signature of DioException.readableStringBuilder.
DioMediaType = MediaType
The type (alias) for specifying the content-type of the MultipartFile.
DisposingFunc<T> = FutureOr Function(T param)
Signature for disposing function because closures like (x){} have a return type of Null we don't use FutureOr<void>
EnvironmentFilterFunc = bool Function(Set<String>)
FactoryFunc<T> = T Function()
Signature of the factory function used by non async factories
FactoryFuncAsync<T> = Future<T> Function()
Signature of the factory function used by async factories
FactoryFuncParam<T, P1, P2> = T Function(P1 param1, P2 param2)
For Factories that expect up to two parameters if you need only one use void for the one you don't use
FactoryFuncParamAsync<T, P1, P2> = Future<T> Function(P1 param1, P2 param2)
For async Factories that expect up to two parameters if you need only one use void for the one you don't use
HeaderForEachCallback = void Function(String name, List<String> values)
The signature that iterates header fields.
InterceptorErrorCallback = void Function(DioException error, ErrorInterceptorHandler handler)
The signature of Interceptor.onError.
InterceptorSendCallback = void Function(RequestOptions options, RequestInterceptorHandler handler)
The signature of Interceptor.onRequest.
InterceptorSuccessCallback = void Function(Response response, ResponseInterceptorHandler handler)
The signature of Interceptor.onResponse.
JsonDecodeCallback = FutureOr Function(String)
The callback definition for decoding a JSON string.
JsonEncodeCallback = FutureOr<String> Function(Object)
The callback definition for encoding a JSON object.
ProgressCallback = void Function(int count, int total)
The type of a progress listening callback when sending or receiving data.
RequestEncoder = FutureOr<List<int>> Function(String request, RequestOptions options)
The type of a request encoding callback.
ResponseDecoder = FutureOr<String?> Function(List<int> responseBytes, RequestOptions options, ResponseBody responseBody)
The type of a response decoding callback.
ResponsiveBuilderType = Widget Function(BuildContext, Orientation, ScreenType)
Provides Context, Orientation, and ScreenType parameters to the builder function
ScopeDisposeFunc = FutureOr Function()
Signature for disposing function on scope level
SvgErrorWidgetBuilder = Widget Function(BuildContext context, Object error, StackTrace stackTrace)
Builder function to create an error widget. This builder is called when the image failed loading.
ValidateStatus = bool Function(int? status)
The type of a response status code validate callback.

Exceptions / Errors

DioException
DioException describes the exception info when a request failed.
NotNullableError<T>
A TypeError thrown by _checkNotNullable.
WaitingTimeOutException