diff --git a/.gitignore b/.gitignore index 1bd96dd..ab15e32 100644 --- a/.gitignore +++ b/.gitignore @@ -27,7 +27,7 @@ migrate_working_dir/ #.vscode/ # Flutter/Dart/Pub related -**/doc/api/ +#**/doc/api/ **/ios/Flutter/.last_build_id .dart_tool/ .flutter-plugins diff --git a/README.md b/README.md index 5b90e68..b128502 100644 --- a/README.md +++ b/README.md @@ -1,13 +1,49 @@ # mc_gallery ## Dart docs explanation +The first line of docs are like normal Dart docs. The second line is less of a 'further' + explanation, and more of an active commentary for the viewer. ## Emulation +### Main API +The unsplash_images_api contains code for fetching data from an external website. Since I have used 'source.unsplash.com', there is no actual daa +data (in the form of protected URLs or raw JSON like Facebook API) that is sent back. So this base URL can directly be used to cache the images.
-## Maintaining scope -It's an 'assignment' +But I wanted to give a more realistic procedure. So, I manually serialize the same data about the URL to JSON and then deserialize it, just a step +further on needlessly. In addition to it, constant fetch delays have added in as well. But in theory, the first serialization can be replaced by actual data-fetch, +while the rest works as expected -## Model vs. DTO +### Search API +Since websites also have a server-side search call that is available, functionality had been included to make use of that too. But again, this is mocked +by the steps mentioned above. + +## Maintaining scope / limitations +Since it's just a demo assignment, I have tried to keep the scope of the functionalities small. By that, I mean I have not fully optimized performance-critical sections, +or fixed some rare-case bugs. But instead I have left either a 'todo' for them, or mentioned that in the docs themselves +### Native look +I did not adhere to any native-look principles for the device platform, for this assignment
+In my other projects, I had discovered the [PlatformWidget](https://pub.dev/packages/flutter_platform_widgets) plugin, +and had started using them to follow a proper Material and Apple's Human Interface Guidelines. ## Extra quirks -Just because I had those assets lying around \ No newline at end of file +A lot of the empty directories and unused asset files are left in, as I used my project templated from my other templates. I decided to leave them in, in any case since they +may give a better indication about how I code, should you choose to look into them. A lot of the functionality that I used, is something that I have already made for my previous project(s), +so it was not as much work as it seems. One of my recent ones, (luckily) literally had a Gallery feature as well, for congregating social media posts into one place. So a lot of assets were reused from there. + +Some of the extra quirks that I added in are: +1. Dark mode support. +2. Live search -> both for locally (cached) image files, and Web (using a website's search API). +3. Clearing image cache on app going to background, and then restarting the program (way easier on an emulator using hot restart). + + I found it easier to directly use the change in app life cycle, than implement a pull-down-refresh. +4. Logging. +5. Local storage of favourites state -> on restart, the favourites stay. + + Not very useful on a real device as app restart can only be triggered with app life cycle state change, which would clear the download cache, + which would be an invalidate them -> so clearing them away with the image cache for now. +6. Using an environment key manager for storing API keys + +## Documentation +### Class UML +[](doc/Class%20UML.svg) + +### API Reference +[Dart docs](doc/api/index.html) diff --git a/doc/Class UML.png b/doc/Class UML.png new file mode 100644 index 0000000..fe71e5a Binary files /dev/null and b/doc/Class UML.png differ diff --git a/doc/Class UML.svg b/doc/Class UML.svg new file mode 100644 index 0000000..e9be746 --- /dev/null +++ b/doc/Class UML.svg @@ -0,0 +1,983 @@ +mc_gallery::locator.dartmc_gallery::features::home::abstracts::images_api.dartmc_gallery::features::home::api::unsplash_images_api.dartmc_gallery::features::core::services::logging_service.dartdart::mathmc_gallery::features::home::data::enums::search_option.dartdart::coremc_gallery::features::home::data::models::image_model.dartmc_gallery::features::home::data::dtos::image_model_dto.dartmc_gallery::features::home::views::gallery::gallery_view_model.dartmc_gallery::features::home::services::images_service.dartmc_gallery::features::core::services::navigation_service.dartmc_gallery::features::home::services::image_cache_manager_service.dartflutter::src::foundation::change_notifier.dartmc_gallery::features::core::abstracts::base_view_model.dartmc_gallery::features::home::views::gallery::gallery_view.dartflutter::src::widgets::framework.dartmc_gallery::features::home::views::image_carousel::image_carousel_view_model.dartmc_gallery::features::home::views::image_carousel::image_carousel_view.dartmc_gallery::features::core::services::local_storage_service.dartdart::collectionmc_gallery::features::core::utils::mutex.dartdart::asyncmc_gallery::features::core::services::app_lifecycle_service.dartflutter_cache_manager::src::cache_managers::default_cache_manager.dartmc_gallery::features::home::widgets::custom_wrap.dartnullmc_gallery::features::core::abstracts::app_setup.dartmc_gallery::features::core::abstracts::router::routes.dartmc_gallery::features::core::abstracts::router::app_router.dartgo_router::src::router.dartmc_gallery::features::core::data::constants::const_text.dartflutter::src::painting::text_style.dartmc_gallery::features::core::data::constants::const_sorters.dartmc_gallery::features::core::data::constants::const_media.dartmc_gallery::features::core::data::constants::const_colors.dartdart::uiflutter::src::material::colors.dartflutter::src::material::theme_data.dartflutter::src::cupertino::theme.dartmc_gallery::features::core::data::constants::const_values.dartmc_gallery::features::core::data::constants::const_durations.dartmc_gallery::features::core::data::enums::view_model_state.dartmc_gallery::features::core::views::error_page_view.darthive::hive.dartmc_gallery::features::core::services::overlay_service.dartflutter::src::widgets::binding.dartmc_gallery::features::core::services::connections_service.dartinternet_connection_checker::internet_connection_checker.dartconnectivity_plus::connectivity_plus.darttalker::src::talker.dartmc_gallery::features::core::widgets::animated_column.dartflutter::src::rendering::flex.dartflutter::src::painting::basic_types.dartmc_gallery::features::core::widgets::gap.dartflutter::src::rendering::box.dartflutter::src::animation::curves.dartflutter::src::animation::animation_controller.dartflutter::src::widgets::ticker_provider.dartflutter::src::rendering::sliver.dartmc_gallery::features::core::widgets::state::multi_value_listenable_builder.dartmc_gallery::features::core::widgets::state::view_model_builder.dartmc_gallery::features::core::widgets::mcg_scaffold.dartflutter::src::material::app_bar.dartmc_gallery::app.dartLocatorGetIt instance()T locate()Future<void> setup()void _registerAPIs()void _registerViewModels()FutureOr<void> _registerServices()FutureOr<void> _registerRepos()void _registerSingletons()ImagesApiFutureOr<Iterable<ImageModelDTO>> fetchImageUri()FutureOr<Iterable<ImageModelDTO>> searchImages()UnsplashImagesApiLoggingService _loggingServiceRandom randomUnsplashImagesApi locateFutureOr<Iterable<ImageModelDTO>> fetchImageUri()FutureOr<Iterable<ImageModelDTO>> searchImages()Uri _imageUrlGenerator()LoggingServiceTalker _talkerLoggingService locatevoid Function(dynamic, [Object?, StackTrace?]) finevoid Function(dynamic, [Object?, StackTrace?]) goodvoid Function(dynamic, [Object?, StackTrace?]) infovoid Function(dynamic, [Object, StackTrace]) warningvoid Function(dynamic, [Object?, StackTrace?]) errorvoid Function(Object, [StackTrace, dynamic]) handlevoid Function(Error, [StackTrace, dynamic]) handleErrorvoid Function(Exception, [StackTrace?, dynamic]) handleExceptionvoid successfulInit()void successfulDispose()void addLoggingInterceptor()RandomSearchOptionint indexList<SearchOption> valuesSearchOption localSearchOption webEnumImageModelUri uriint imageIndexString imageNamebool isFavouriteImageModel copyWith()ImageModelDTOUri uriint imageIndexString imageNameMap<String, dynamic> toJson()GalleryViewModelImagesService _imagesServiceNavigationService _navigationServiceImageCacheManagerService _imageCacheManagerServiceLoggingService _loggingServiceValueNotifier<bool> _isDisplayingPressingPromptValueNotifier<bool> _isSearchingNotifierValueNotifier<SearchOption> _searchOptionNotifierValueNotifier<List<ImageModel>> _imageSearchResultsNotifierValueNotifier<bool> _isViewingFavouriteNotifierValueListenable<bool> isDisplayingPressingPromptValueListenable<bool> isSearchingListenableValueListenable<SearchOption> searchOptionListenableValueListenable<List<ImageModel>> imageSearchResultsListenableValueListenable<bool> isViewingFavouriteListenableFuture<void> lastQueryResultDoneIterable<ImageModel> favouriteImageModelsIterable<ImageModel> imageModelsFuture<void> initImageFetchIsDoneGalleryViewModel locateFuture<void> initialise()Future<void> dispose()Future<void> onSearchTermUpdate()void searchPressed()void onSearchOptionChanged()void onFavouriteViewChange()void updateImageFavouriteStatus()void onPromptPressed()double? downloadProgressValue()void pushImageCarouselView()ImagesServiceImagesApi _imagesApiLocalStorageService _localStorageServiceLoggingService _loggingServiceLinkedHashMap<String, ImageModel> _imageModelsMutex _searchMutexCompleter<dynamic> _initAwaiterIterable<ImageModel> imageModelsFuture<dynamic> initAwaiterint firstAvailableImageIndexint lastAvailableImageIndexint numberOfImagesFuture<void> lastQueryIsCompletedImagesService locateFuture<void> _init()ImageModel imageModelAt()Future<List<ImageModel>> searchImages()void updateImageFavouriteStatus()NavigationServiceMcgRouter _mcgRouterNavigationService locatevoid pushImageCarouselView()ImageCacheManagerServiceAppLifecycleService _appLifecycleServiceLocalStorageService _localStorageServiceLoggingService _loggingServiceDefaultCacheManager _cacheManagerImageCacheManagerService locateFuture<void> emptyCache()Future<void> _init()ValueNotifier<bool>ValueNotifier<SearchOption>ValueNotifier<List<ImageModel>>ValueListenable<bool>ValueListenable<SearchOption>ValueListenable<List<ImageModel>>ValueNotifier<ImageModel>ValueListenable<ImageModel>ValueNotifier<ViewModelState>ValueListenable<ViewModelState>ChangeNotifierValueNotifier<InternetConnectionStatus>ValueNotifier<ConnectivityResult>ValueListenable<InternetConnectionStatus>ValueListenable<ConnectivityResult>BaseViewModelValueNotifier<bool> _isInitialisedValueNotifier<bool> _isBusyValueNotifier<bool> _hasErrorValueNotifier<ViewModelState> _stateLoggingService _loggingServiceString? _errorMessagedynamic stringsValueListenable<bool> isInitialisedValueListenable<bool> isBusyValueListenable<bool> hasErrorValueListenable<ViewModelState> stateString errorMessagebool Function() _mountedvoid initialise()void setBusy()void setError()void dispose()void ifMounted()double width()double height()GalleryViewWidget build()_SearchBoxGalleryViewModel galleryViewModelWidget build()_DownloadedGalleryViewGalleryViewModel galleryViewModelWidget build()_StarrableImageGalleryViewModel galleryViewModelImageModel imageModelState<_StarrableImage> createState()_StarrableImageStatebool isMarkedFavouritevoid initState()Widget build()_SearchGalleryViewGalleryViewModel galleryViewModelWidget build()StatelessWidgetStatefulWidgetStateLeafRenderObjectWidgetWidgetImageCarouselViewModelImagesService _imagesServiceLoggingService _loggingServiceValueNotifier<ImageModel> _currentImageModelNotifierValueListenable<ImageModel> currentImageModelListenableString currentImageUrlString currentImageKeyString currentImageNameint currentImageIndexint numberOfImagesbool hasPreviousImagebool hasNextImageImageCarouselViewModel locateFuture<void> initialise()Future<void> dispose()void swipedTo()double? downloadProgressValue()ImageCarouselViewArgumentsint imageIndexKeyImageCarouselViewImageCarouselViewArguments imageCarouselViewArgumentsWidget build()LocalStorageServiceLoggingService _loggingServiceBox<bool> _userBoxString _userBoxKeyIterable<bool> storedFavouritesStatesLocalStorageService locateFuture<void> _init()void initNewFavourites()void updateFavourite()void resetFavourites()LinkedHashMap<String, ImageModel>Queue<Completer<dynamic>>MutexQueue<Completer<dynamic>> _completerQueueFuture<void> lastOperationCompletionAwaiterFutureOr<T> lockAndRun()Completer<dynamic>StreamController<AppLifecycleState>AppLifecycleServiceLoggingService _loggingServiceStreamController<AppLifecycleState> _lifecycleStateStreamControllerMap<String, StreamSubscription<dynamic>> _appLifecycleSubscriptionsAppLifecycleState? _appLifeCycleStateAppLifecycleState? appLifeCycleStateAppLifecycleService locateFuture<void> dispose()void didChangeAppLifecycleState()void addListener()Future<void> removeListener()DefaultCacheManagerCustomWrapList<Widget> childrenWidget build()bool Function()void Function(Object, StackTrace)void Function(dynamic, [Object, StackTrace])void Function(Object, [StackTrace, dynamic])void Function(Error, [StackTrace, dynamic])void Function(Exception, [StackTrace, dynamic])Widget Function(BuildContext, List<dynamic>, Widget)Widget Function(BuildContext, T)T Function()dynamic Function()AppSetupList<Locale> supportedLocalesvoid Function(Object, StackTrace) onUncaughtExceptionFuture<void> initialise()Locale resolveLocale()Future<void> _setupStrings()RoutesInfoString routePathString routeNameRoutesint indexList<Routes> valuesRoutes homeMcgRouterMcgRouter _mcgRouterGoRouter routerMcgRouter locateGoRouterConstTextTextStyle _imageOverlayTextStyleTextStyle imageOverlayTextStyle()TextStyleConstSortersint stringsSimilarityTarget()ConstMediaString favStarFilledString favStarOutlineSvgPicture buildIcon()ConstColoursColor galleryBackgroundColourMaterialColor redColor whiteColor blackColor transparentConstThemesThemeData materialLightThemeThemeData materialDarkThemeCupertinoThemeData cupertinoLightThemeCupertinoThemeData cupertinoDarkThemeThemeData cupertinoThemeLightHackThemeData cupertinoThemeDarkHackColorAppLifecycleStateTextDirectionTextBaselineMaterialColorThemeDataCupertinoThemeDataConstValuesString httpsSchemeString imagesHostServerList<String> imagesHostUrlPathSegmentsint numberOfImagesint minImageSizeint maxImageSizeint defaultEmulatedLatencyMillisConstDurationsDuration tripleDefaultAnimationDurationDuration doubleDefaultAnimationDurationDuration oneAndHalfDefaultAnimationDurationDuration defaultAnimationDurationDuration halfDefaultAnimationDurationDuration quarterDefaultAnimationDurationDuration zeroViewModelStateint indexList<ViewModelState> valuesViewModelState isInitialisingViewModelState isInitialisedViewModelState isBusyViewModelState hasErrorErrorPageViewException? errorWidget build()Box<bool>OverlayServiceLoggingService _loggingServiceMap<int, OverlayEntry> _overlayEntryMapOverlayService locatevoid insertOverlayEntry()void removeOverlayEntry()void dispose()WidgetsBindingObserverConnectionsServiceInternetConnectionChecker _internetConnectionCheckerConnectivity _connectivityLoggingService _loggingServiceValueNotifier<InternetConnectionStatus> _internetConnectionStatusNotifierValueNotifier<ConnectivityResult> _connectivityResultNotifierValueListenable<InternetConnectionStatus> internetConnectionStatusListenableValueListenable<ConnectivityResult> connectivityResultListenableConnectionsService locateFuture<void> _init()Future<void> dispose()InternetConnectionCheckerConnectivityTalkerAnimatedColumnDuration durationint maxAnimatingChildrenMainAxisAlignment mainAxisAlignmentMainAxisSize mainAxisSizeCrossAxisAlignment crossAxisAlignmentTextDirection? textDirectionVerticalDirection verticalDirectionTextBaseline? textBaselineList<Widget> childrenWidget build()MainAxisAlignmentMainAxisSizeCrossAxisAlignmentVerticalDirectionGapdouble sizeGap size4Gap size8Gap size16Gap size24Gap size32Gap size64RenderGap createRenderObject()void updateRenderObject()RenderGapdouble _gapdouble gapvoid performLayout()AnimatedGapDuration durationdouble gapCurve curveState<AnimatedGap> createState()_AnimatedGapStateAnimationController _controllervoid didUpdateWidget()Widget build()AnimatedSliverGapDuration durationdouble gapCurve curveState<AnimatedSliverGap> createState()_AnimatedSliverGapStateAnimationController _controllervoid didUpdateWidget()Widget build()SliverGapdouble gapSliverGap size4SliverGap size8SliverGap size16SliverGap size24SliverGap size32SliverGap size64RenderSliverGap createRenderObject()void updateRenderObject()RenderSliverGapdouble _gapdouble gapvoid performLayout()RenderBoxCurveAnimationControllerSingleTickerProviderStateMixinRenderSliverMultiValueListenableBuilderList<ValueListenable<dynamic>> valueListenablesWidget? childWidget Function(BuildContext, List<dynamic>, Widget?) builderWidget build()ViewModelBuilderWidget Function(BuildContext, T) _builderT Function() _viewModelBuilderdynamic Function()? _argumentBuilder_ViewModelBuilderState<T> createState()_ViewModelBuilderStateT _viewModelvoid initState()void dispose()Widget build()McgScaffoldAppBar? appBarValueListenable<bool>? bodyBuilderWaiterWidget? bodyWidget? waitingWidgetbool forceInternetCheckConnectionsService _connectionsServiceOverlayService _overlayServiceWidget build()void _handleOverlayDisplay()AppBarMcgAppWidget build() \ No newline at end of file diff --git a/doc/api/__404error.html b/doc/api/__404error.html new file mode 100644 index 0000000..d671eed --- /dev/null +++ b/doc/api/__404error.html @@ -0,0 +1,155 @@ + + + + + + + + + mc_gallery - Dart API docs + + + + + + + + + + + + + + + + + +
+ +
+ + +
mc_gallery
+ +
+ +
+ + +
+

404: Something's gone wrong :-(

+ +
+

You've tried to visit a page that doesn't exist. Luckily this site + has other pages.

+

If you were looking for something specific, try searching: +

+

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/doc/api/app/McgApp-class.html b/doc/api/app/McgApp-class.html new file mode 100644 index 0000000..6e23e3f --- /dev/null +++ b/doc/api/app/McgApp-class.html @@ -0,0 +1,387 @@ + + + + + + + + McgApp class - app library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ + +
McgApp
+ +
+ +
+ + +
+
+

McgApp class + Null safety + +

+ + + + +
+
+ +
Inheritance
+
+ +
+ + + + + + + +
+
+ + +
+

Constructors

+ +
+
+ McgApp({Key? key}) +
+
+ +
const
+
+
+
+ +
+

Properties

+ +
+
+ hashCode + int + +
+
+ The hash code for this object. +
@nonVirtual, read-only, inherited
+ +
+ +
+ key + Key? + +
+
+ Controls how one widget replaces another widget in the tree. +
final, inherited
+ +
+ +
+ runtimeType + Type + +
+
+ A representation of the runtime type of the object. +
read-only, inherited
+ +
+ +
+
+ + +
+

Methods

+
+
+ build(BuildContext context) + Widget + + + +
+
+ Describes the part of the user interface represented by this widget. +
override
+ +
+ +
+ createElement() + StatelessElement + + + +
+
+ Creates a StatelessElement to manage this widget's location in the tree. +
inherited
+ +
+ +
+ debugDescribeChildren() + List<DiagnosticsNode> + + + +
+
+ Returns a list of DiagnosticsNode objects describing this node's +children. +
@protected, inherited
+ +
+ +
+ debugFillProperties(DiagnosticPropertiesBuilder properties) + → void + + + +
+
+ Add additional properties associated with the node. +
inherited
+ +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a non-existent method or property is accessed. +
inherited
+ +
+ +
+ toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) + DiagnosticsNode + + + +
+
+ Returns a debug representation of the object that is used by debugging +tools and by DiagnosticsNode.toStringDeep. +
inherited
+ +
+ +
+ toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) + String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug}) + String + + + +
+
+ Returns a string representation of this node and its descendants. +
inherited
+ +
+ +
+ toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) + String + + + +
+
+ Returns a one-line detailed description of the object. +
inherited
+ +
+ +
+ toStringShort() + String + + + +
+
+ A short, textual description of this widget. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + bool + + + +
+
+ The equality operator. +
@nonVirtual, inherited
+ +
+ +
+
+ + + + + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/doc/api/app/McgApp/McgApp.html b/doc/api/app/McgApp/McgApp.html new file mode 100644 index 0000000..a108c56 --- /dev/null +++ b/doc/api/app/McgApp/McgApp.html @@ -0,0 +1,143 @@ + + + + + + + + McgApp constructor - McgApp - app library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ + +
McgApp
+ +
+ +
+ + +
+
+

McgApp constructor + Null safety +

+ +
const + McgApp(
  1. {Key? key}
  2. +
) +
+ + + + + +
+

Implementation

+
const McgApp({super.key});
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/doc/api/app/McgApp/build.html b/doc/api/app/McgApp/build.html new file mode 100644 index 0000000..091929d --- /dev/null +++ b/doc/api/app/McgApp/build.html @@ -0,0 +1,200 @@ + + + + + + + + build method - McgApp class - app library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ + +
build
+ +
+ +
+ + +
+
+

build method + Null safety +

+ +
+ +
+
    +
  1. @override
  2. +
+
+ +Widget +build(
  1. BuildContext context
  2. +
) + +
override
+ +
+ +
+

Describes the part of the user interface represented by this widget.

+

The framework calls this method when this widget is inserted into the tree +in a given BuildContext and when the dependencies of this widget change +(e.g., an InheritedWidget referenced by this widget changes). This +method can potentially be called in every frame and should not have any side +effects beyond building a widget.

+

The framework replaces the subtree below this widget with the widget +returned by this method, either by updating the existing subtree or by +removing the subtree and inflating a new subtree, depending on whether the +widget returned by this method can update the root of the existing +subtree, as determined by calling Widget.canUpdate.

+

Typically implementations return a newly created constellation of widgets +that are configured with information from this widget's constructor and +from the given BuildContext.

+

The given BuildContext contains information about the location in the +tree at which this widget is being built. For example, the context +provides the set of inherited widgets for this location in the tree. A +given widget might be built with multiple different BuildContext +arguments over time if the widget is moved around the tree or if the +widget is inserted into the tree in multiple places at once.

+

The implementation of this method must only depend on:

+ +

If a widget's build method is to depend on anything else, use a +StatefulWidget instead.

+

See also:

+
    +
  • StatelessWidget, which contains the discussion on performance considerations.
  • +
+
+ + + +
+

Implementation

+
@override
+Widget build(BuildContext context) {
+  final appRouter = McgRouter.locate.router;
+  return MaterialApp.router(
+    title: Strings.current.appTitle,
+    theme: ConstThemes.materialLightTheme,
+    darkTheme: ConstThemes.materialDarkTheme,
+    supportedLocales: AppSetup.supportedLocales,
+    routeInformationParser: appRouter.routeInformationParser,
+    routerDelegate: appRouter.routerDelegate,
+    routeInformationProvider: appRouter.routeInformationProvider,
+  );
+}
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/doc/api/app/app-library.html b/doc/api/app/app-library.html new file mode 100644 index 0000000..2b0eb04 --- /dev/null +++ b/doc/api/app/app-library.html @@ -0,0 +1,190 @@ + + + + + + + + app library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ + +
app
+ +
+ +
+ + +
+
+

app library + Null safety + +

+ + + + +
+

Classes

+ +
+
+ McgApp + +
+
+ +
+ +
+
+ + + + + + + + + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/doc/api/categories.json b/doc/api/categories.json new file mode 100644 index 0000000..fe51488 --- /dev/null +++ b/doc/api/categories.json @@ -0,0 +1 @@ +[] diff --git a/doc/api/features_core_abstracts_app_setup/AppSetup-class.html b/doc/api/features_core_abstracts_app_setup/AppSetup-class.html new file mode 100644 index 0000000..69e2245 --- /dev/null +++ b/doc/api/features_core_abstracts_app_setup/AppSetup-class.html @@ -0,0 +1,303 @@ + + + + + + + + AppSetup class - app_setup library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ + +
AppSetup
+ +
+ +
+ + +
+
+

AppSetup class + Null safety + +

+ + + + + + +
+

Constructors

+ +
+
+ AppSetup() +
+
+ +
+
+
+ +
+

Properties

+ +
+
+ hashCode + int + +
+
+ The hash code for this object. +
read-only, inherited
+ +
+ +
+ runtimeType + Type + +
+
+ A representation of the runtime type of the object. +
read-only, inherited
+ +
+ +
+
+ + +
+

Methods

+
+
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a non-existent method or property is accessed. +
inherited
+ +
+ +
+ toString() + String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ +
+

Static Properties

+ +
+
+ onUncaughtException + → void Function(Object error, StackTrace stackTrace) + +
+
+ +
read-only
+ +
+ +
+ supportedLocales + List<Locale> + +
+
+ +
final
+ +
+ +
+
+ +
+

Static Methods

+
+
+ initialise() + Future<void> + + + +
+
+ + + +
+ +
+ resolveLocale(List<Locale>? preferredLocales, Iterable<Locale> supportedLocales) + Locale + + + +
+
+ + + +
+ +
+
+ + + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/doc/api/features_core_abstracts_app_setup/AppSetup/AppSetup.html b/doc/api/features_core_abstracts_app_setup/AppSetup/AppSetup.html new file mode 100644 index 0000000..fc7a20f --- /dev/null +++ b/doc/api/features_core_abstracts_app_setup/AppSetup/AppSetup.html @@ -0,0 +1,135 @@ + + + + + + + + AppSetup constructor - AppSetup - app_setup library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ + +
AppSetup
+ +
+ +
+ + +
+
+

AppSetup constructor + Null safety +

+ +
+ AppSetup() +
+ + + + + + + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/doc/api/features_core_abstracts_app_setup/AppSetup/initialise.html b/doc/api/features_core_abstracts_app_setup/AppSetup/initialise.html new file mode 100644 index 0000000..4dbe37f --- /dev/null +++ b/doc/api/features_core_abstracts_app_setup/AppSetup/initialise.html @@ -0,0 +1,157 @@ + + + + + + + + initialise method - AppSetup class - app_setup library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ + +
initialise
+ +
+ +
+ + +
+
+

initialise method + Null safety +

+ +
+ + +Future<void> +initialise() + + + +
+ + + + +
+

Implementation

+
static Future<void> initialise() async {
+  WidgetsFlutterBinding.ensureInitialized();
+
+  await _setupStrings();
+
+  await SystemChrome.setPreferredOrientations([
+    DeviceOrientation.portraitUp,
+    DeviceOrientation.portraitDown,
+  ]);
+
+  await Hive.initFlutter();
+
+  await Locator.setup();
+}
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/doc/api/features_core_abstracts_app_setup/AppSetup/onUncaughtException.html b/doc/api/features_core_abstracts_app_setup/AppSetup/onUncaughtException.html new file mode 100644 index 0000000..5f60071 --- /dev/null +++ b/doc/api/features_core_abstracts_app_setup/AppSetup/onUncaughtException.html @@ -0,0 +1,156 @@ + + + + + + + + onUncaughtException property - AppSetup class - app_setup library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ + +
onUncaughtException
+ +
+ +
+ + +
+
+

onUncaughtException property + Null safety +

+ + + +
+ +
+ void Function(Object error, StackTrace stackTrace) + onUncaughtException + + +
+ + + + +
+

Implementation

+
static void Function(Object error, StackTrace stackTrace) get onUncaughtException => (
+      error,
+      stackTrace,
+    ) {
+      log(
+        'Error occurred during app startup',
+        error: error,
+        stackTrace: stackTrace,
+      );
+    };
+
+ +
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/doc/api/features_core_abstracts_app_setup/AppSetup/resolveLocale.html b/doc/api/features_core_abstracts_app_setup/AppSetup/resolveLocale.html new file mode 100644 index 0000000..9c2628f --- /dev/null +++ b/doc/api/features_core_abstracts_app_setup/AppSetup/resolveLocale.html @@ -0,0 +1,156 @@ + + + + + + + + resolveLocale method - AppSetup class - app_setup library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ + +
resolveLocale
+ +
+ +
+ + +
+
+

resolveLocale method + Null safety +

+ +
+ + +Locale +resolveLocale(
  1. List<Locale>? preferredLocales,
  2. +
  3. Iterable<Locale> supportedLocales
  4. +
) + + + +
+ + + + +
+

Implementation

+
static Locale resolveLocale(List<Locale>? preferredLocales, Iterable<Locale> supportedLocales) {
+  for (final locale in preferredLocales ?? const <Locale>[]) {
+    // Check if the current device locale is supported
+    for (final supportedLocale in supportedLocales) {
+      if (supportedLocale.languageCode == locale.languageCode) {
+        return supportedLocale;
+      }
+    }
+  }
+  return supportedLocales.first;
+}
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/doc/api/features_core_abstracts_app_setup/AppSetup/supportedLocales.html b/doc/api/features_core_abstracts_app_setup/AppSetup/supportedLocales.html new file mode 100644 index 0000000..f4d7a75 --- /dev/null +++ b/doc/api/features_core_abstracts_app_setup/AppSetup/supportedLocales.html @@ -0,0 +1,146 @@ + + + + + + + + supportedLocales property - AppSetup class - app_setup library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ + +
supportedLocales
+ +
+ +
+ + +
+
+

supportedLocales property + Null safety +

+ +
+ List<Locale> + supportedLocales +
final
+ +
+ + + +
+

Implementation

+
static final List<Locale> supportedLocales = kReleaseMode
+    ? <Locale>[
+        const Locale.fromSubtags(languageCode: 'en'),
+      ]
+    : Strings.delegate.supportedLocales;
+
+
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/doc/api/features_core_abstracts_app_setup/features_core_abstracts_app_setup-library.html b/doc/api/features_core_abstracts_app_setup/features_core_abstracts_app_setup-library.html new file mode 100644 index 0000000..6d6616d --- /dev/null +++ b/doc/api/features_core_abstracts_app_setup/features_core_abstracts_app_setup-library.html @@ -0,0 +1,190 @@ + + + + + + + + app_setup library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ + +
app_setup
+ +
+ +
+ + +
+
+

app_setup library + Null safety + +

+ + + + +
+

Classes

+ +
+
+ AppSetup + +
+
+ +
+ +
+
+ + + + + + + + + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/doc/api/features_core_abstracts_base_view_model/BaseViewModel-class.html b/doc/api/features_core_abstracts_base_view_model/BaseViewModel-class.html new file mode 100644 index 0000000..22386f5 --- /dev/null +++ b/doc/api/features_core_abstracts_base_view_model/BaseViewModel-class.html @@ -0,0 +1,490 @@ + + + + + + + + BaseViewModel class - base_view_model library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ + +
BaseViewModel
+ +
+ +
+ + +
+
+

BaseViewModel<T extends Object?> class + Null safety + +

+ + + + +
+
+ +
Inheritance
+
+ +
+ + + + +
Implementers
+
+ + + +
+
+ + +
+

Constructors

+ +
+
+ BaseViewModel() +
+
+ +
+
+
+ +
+

Properties

+ +
+
+ errorMessage + String + +
+
+ +
read-only
+ +
+ +
+ hasError + ValueListenable<bool> + +
+
+ +
read-only
+ +
+ +
+ hashCode + int + +
+
+ The hash code for this object. +
read-only, inherited
+ +
+ +
+ hasListeners + bool + +
+
+ Whether any listeners are currently registered. +
@protected, read-only, inherited
+ +
+ +
+ isBusy + ValueListenable<bool> + +
+
+ +
read-only
+ +
+ +
+ isInitialised + ValueListenable<bool> + +
+
+ +
read-only
+ +
+ +
+ runtimeType + Type + +
+
+ A representation of the runtime type of the object. +
read-only, inherited
+ +
+ +
+ state + ValueListenable<ViewModelState> + +
+
+ +
read-only
+ +
+ +
+ strings + Strings + +
+
+ +
final
+ +
+ +
+
+ + +
+

Methods

+
+
+ addListener(VoidCallback listener) + → void + + + +
+
+ Register a closure to be called when the object changes. +
inherited
+ +
+ +
+ dispose() + → void + + + +
+
+ Discards any resources used by the object. After this is called, the +object is not in a usable state and should be discarded (calls to +addListener will throw after the object is disposed). +
override
+ +
+ +
+ height(BuildContext context) + double + + + +
+
+ + + +
+ +
+ ifMounted(VoidCallback voidCallback) + → void + + + +
+
+ + + +
+ +
+ initialise(bool mounted(), [T? arguments]) + → void + + + +
+
+ + + +
+ +
+ noSuchMethod(Invocation invocation) + → dynamic + + + +
+
+ Invoked when a non-existent method or property is accessed. +
inherited
+ +
+ +
+ notifyListeners() + → void + + + +
+
+ Call all the registered listeners. + + +
+ +
+ removeListener(VoidCallback listener) + → void + + + +
+
+ Remove a previously registered closure from the list of closures that are +notified when the object changes. +
inherited
+ +
+ +
+ setBusy(bool isBusy) + → void + + + +
+
+ + + +
+ +
+ setError(bool hasError, {String? message}) + → void + + + +
+
+ + + +
+ +
+ toString() + String + + + +
+
+ A string representation of this object. +
inherited
+ +
+ +
+ width(BuildContext context) + double + + + +
+
+ + + +
+ +
+
+ +
+

Operators

+
+
+ operator ==(Object other) + bool + + + +
+
+ The equality operator. +
inherited
+ +
+ +
+
+ + + + + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/doc/api/features_core_abstracts_base_view_model/BaseViewModel/BaseViewModel.html b/doc/api/features_core_abstracts_base_view_model/BaseViewModel/BaseViewModel.html new file mode 100644 index 0000000..c747c0e --- /dev/null +++ b/doc/api/features_core_abstracts_base_view_model/BaseViewModel/BaseViewModel.html @@ -0,0 +1,146 @@ + + + + + + + + BaseViewModel constructor - BaseViewModel - base_view_model library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ + +
BaseViewModel
+ +
+ +
+ + +
+
+

BaseViewModel<T extends Object?> constructor + Null safety +

+ +
+ BaseViewModel<T extends Object?>() +
+ + + + + + + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/doc/api/features_core_abstracts_base_view_model/BaseViewModel/dispose.html b/doc/api/features_core_abstracts_base_view_model/BaseViewModel/dispose.html new file mode 100644 index 0000000..24a7b3f --- /dev/null +++ b/doc/api/features_core_abstracts_base_view_model/BaseViewModel/dispose.html @@ -0,0 +1,170 @@ + + + + + + + + dispose method - BaseViewModel class - base_view_model library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ + +
dispose
+ +
+ +
+ + +
+
+

dispose method + Null safety +

+ +
+ +
+
    +
  1. @override
  2. +
+
+ +void +dispose() + +
override
+ +
+ +
+

Discards any resources used by the object. After this is called, the +object is not in a usable state and should be discarded (calls to +addListener will throw after the object is disposed).

+

This method should only be called by the object's owner.

+
+ + + +
+

Implementation

+
@override
+void dispose() {
+  super.dispose();
+  _loggingService.successfulDispose(location: runtimeType.toString());
+}
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/doc/api/features_core_abstracts_base_view_model/BaseViewModel/errorMessage.html b/doc/api/features_core_abstracts_base_view_model/BaseViewModel/errorMessage.html new file mode 100644 index 0000000..4fd92af --- /dev/null +++ b/doc/api/features_core_abstracts_base_view_model/BaseViewModel/errorMessage.html @@ -0,0 +1,158 @@ + + + + + + + + errorMessage property - BaseViewModel class - base_view_model library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ + +
errorMessage
+ +
+ +
+ + +
+
+

errorMessage property + Null safety +

+ + + +
+ +
+ String + errorMessage + + +
+ + + + +
+

Implementation

+
String get errorMessage => _errorMessage ?? strings.somethingWentWrong;
+
+ +
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/doc/api/features_core_abstracts_base_view_model/BaseViewModel/hasError.html b/doc/api/features_core_abstracts_base_view_model/BaseViewModel/hasError.html new file mode 100644 index 0000000..13d95bb --- /dev/null +++ b/doc/api/features_core_abstracts_base_view_model/BaseViewModel/hasError.html @@ -0,0 +1,158 @@ + + + + + + + + hasError property - BaseViewModel class - base_view_model library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ + +
hasError
+ +
+ +
+ + +
+
+

hasError property + Null safety +

+ + + +
+ +
+ ValueListenable<bool> + hasError + + +
+ + + + +
+

Implementation

+
ValueListenable<bool> get hasError => _hasError;
+
+ +
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/doc/api/features_core_abstracts_base_view_model/BaseViewModel/height.html b/doc/api/features_core_abstracts_base_view_model/BaseViewModel/height.html new file mode 100644 index 0000000..4fcdd30 --- /dev/null +++ b/doc/api/features_core_abstracts_base_view_model/BaseViewModel/height.html @@ -0,0 +1,156 @@ + + + + + + + + height method - BaseViewModel class - base_view_model library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ + +
height
+ +
+ +
+ + +
+
+

height method + Null safety +

+ +
+ + +double +height(
  1. BuildContext context
  2. +
) + + + +
+ + + + +
+

Implementation

+
double height(BuildContext context) => MediaQuery.of(context).size.height;
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/doc/api/features_core_abstracts_base_view_model/BaseViewModel/ifMounted.html b/doc/api/features_core_abstracts_base_view_model/BaseViewModel/ifMounted.html new file mode 100644 index 0000000..85c5b2c --- /dev/null +++ b/doc/api/features_core_abstracts_base_view_model/BaseViewModel/ifMounted.html @@ -0,0 +1,160 @@ + + + + + + + + ifMounted method - BaseViewModel class - base_view_model library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ + +
ifMounted
+ +
+ +
+ + +
+
+

ifMounted method + Null safety +

+ +
+ + +void +ifMounted(
  1. VoidCallback voidCallback
  2. +
) + + + +
+ + + + +
+

Implementation

+
void ifMounted(VoidCallback voidCallback) {
+  if (_mounted()) {
+    voidCallback();
+  }
+}
+
+ + +
+ + + + + +
+ + + + + + + + + + + + + + diff --git a/doc/api/features_core_abstracts_base_view_model/BaseViewModel/initialise.html b/doc/api/features_core_abstracts_base_view_model/BaseViewModel/initialise.html new file mode 100644 index 0000000..9a12bbf --- /dev/null +++ b/doc/api/features_core_abstracts_base_view_model/BaseViewModel/initialise.html @@ -0,0 +1,169 @@ + + + + + + + + initialise method - BaseViewModel class - base_view_model library - Dart API + + + + + + + + + + + + + + + + + +
+ +
+ + +
initialise
+ +
+ +
+ + +
+
+

initialise method + Null safety +

+ +
+ +
+
    +
  1. @mustCallSuper
  2. +
+
+ +void +initialise(
  1. bool mounted(
      +),
    1. +
    2. [T? arguments]
    3. +
    ) + + + +
    + + + + +
    +

    Implementation

    +
    @mustCallSuper
    +void initialise(bool Function() mounted, [T? arguments]) {
    +  _mounted = mounted;
    +  _isInitialised.value = true;
    +  _state.value = ViewModelState.isInitialised;
    +  _loggingService.successfulInit(location: runtimeType.toString());
    +}
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_abstracts_base_view_model/BaseViewModel/isBusy.html b/doc/api/features_core_abstracts_base_view_model/BaseViewModel/isBusy.html new file mode 100644 index 0000000..744ccdc --- /dev/null +++ b/doc/api/features_core_abstracts_base_view_model/BaseViewModel/isBusy.html @@ -0,0 +1,158 @@ + + + + + + + + isBusy property - BaseViewModel class - base_view_model library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    isBusy
    + +
    + +
    + + +
    +
    +

    isBusy property + Null safety +

    + + + +
    + +
    + ValueListenable<bool> + isBusy + + +
    + + + + +
    +

    Implementation

    +
    ValueListenable<bool> get isBusy => _isBusy;
    +
    + +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_abstracts_base_view_model/BaseViewModel/isInitialised.html b/doc/api/features_core_abstracts_base_view_model/BaseViewModel/isInitialised.html new file mode 100644 index 0000000..5a693ff --- /dev/null +++ b/doc/api/features_core_abstracts_base_view_model/BaseViewModel/isInitialised.html @@ -0,0 +1,158 @@ + + + + + + + + isInitialised property - BaseViewModel class - base_view_model library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    isInitialised
    + +
    + +
    + + +
    +
    +

    isInitialised property + Null safety +

    + + + +
    + +
    + ValueListenable<bool> + isInitialised + + +
    + + + + +
    +

    Implementation

    +
    ValueListenable<bool> get isInitialised => _isInitialised;
    +
    + +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_abstracts_base_view_model/BaseViewModel/setBusy.html b/doc/api/features_core_abstracts_base_view_model/BaseViewModel/setBusy.html new file mode 100644 index 0000000..da22adb --- /dev/null +++ b/doc/api/features_core_abstracts_base_view_model/BaseViewModel/setBusy.html @@ -0,0 +1,163 @@ + + + + + + + + setBusy method - BaseViewModel class - base_view_model library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    setBusy
    + +
    + +
    + + +
    +
    +

    setBusy method + Null safety +

    + +
    + + +void +setBusy(
    1. bool isBusy
    2. +
    ) + + + +
    + + + + +
    +

    Implementation

    +
    void setBusy(bool isBusy) {
    +  _isBusy.value = isBusy;
    +  if (isBusy) {
    +    _state.value = ViewModelState.isBusy;
    +  } else {
    +    _state.value = ViewModelState.isInitialised;
    +  }
    +}
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_abstracts_base_view_model/BaseViewModel/setError.html b/doc/api/features_core_abstracts_base_view_model/BaseViewModel/setError.html new file mode 100644 index 0000000..9abd79f --- /dev/null +++ b/doc/api/features_core_abstracts_base_view_model/BaseViewModel/setError.html @@ -0,0 +1,168 @@ + + + + + + + + setError method - BaseViewModel class - base_view_model library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    setError
    + +
    + +
    + + +
    +
    +

    setError method + Null safety +

    + +
    + + +void +setError(
    1. bool hasError,
    2. +
    3. {String? message}
    4. +
    ) + + + +
    + + + + +
    +

    Implementation

    +
    void setError(
    +  bool hasError, {
    +  String? message,
    +}) {
    +  _errorMessage = hasError ? message : null;
    +  _hasError.value = hasError;
    +  if (hasError) {
    +    _state.value = ViewModelState.hasError;
    +  } else {
    +    _state.value = ViewModelState.isInitialised;
    +  }
    +}
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_abstracts_base_view_model/BaseViewModel/state.html b/doc/api/features_core_abstracts_base_view_model/BaseViewModel/state.html new file mode 100644 index 0000000..6c50a49 --- /dev/null +++ b/doc/api/features_core_abstracts_base_view_model/BaseViewModel/state.html @@ -0,0 +1,158 @@ + + + + + + + + state property - BaseViewModel class - base_view_model library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    state
    + +
    + +
    + + +
    +
    +

    state property + Null safety +

    + + + +
    + +
    + ValueListenable<ViewModelState> + state + + +
    + + + + +
    +

    Implementation

    +
    ValueListenable<ViewModelState> get state => _state;
    +
    + +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_abstracts_base_view_model/BaseViewModel/strings.html b/doc/api/features_core_abstracts_base_view_model/BaseViewModel/strings.html new file mode 100644 index 0000000..32fb881 --- /dev/null +++ b/doc/api/features_core_abstracts_base_view_model/BaseViewModel/strings.html @@ -0,0 +1,153 @@ + + + + + + + + strings property - BaseViewModel class - base_view_model library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    strings
    + +
    + +
    + + +
    +
    +

    strings property + Null safety +

    + +
    + Strings + strings +
    final
    + +
    + + + +
    +

    Implementation

    +
    final Strings strings = Strings.current;
    +
    +
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_abstracts_base_view_model/BaseViewModel/width.html b/doc/api/features_core_abstracts_base_view_model/BaseViewModel/width.html new file mode 100644 index 0000000..4b6f793 --- /dev/null +++ b/doc/api/features_core_abstracts_base_view_model/BaseViewModel/width.html @@ -0,0 +1,156 @@ + + + + + + + + width method - BaseViewModel class - base_view_model library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    width
    + +
    + +
    + + +
    +
    +

    width method + Null safety +

    + +
    + + +double +width(
    1. BuildContext context
    2. +
    ) + + + +
    + + + + +
    +

    Implementation

    +
    double width(BuildContext context) => MediaQuery.of(context).size.width;
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_abstracts_base_view_model/features_core_abstracts_base_view_model-library.html b/doc/api/features_core_abstracts_base_view_model/features_core_abstracts_base_view_model-library.html new file mode 100644 index 0000000..6f09fd5 --- /dev/null +++ b/doc/api/features_core_abstracts_base_view_model/features_core_abstracts_base_view_model-library.html @@ -0,0 +1,190 @@ + + + + + + + + base_view_model library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    base_view_model
    + +
    + +
    + + +
    +
    +

    base_view_model library + Null safety + +

    + + + + +
    +

    Classes

    + +
    +
    + BaseViewModel<T extends Object?> + +
    +
    + +
    + +
    +
    + + + + + + + + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_abstracts_router_app_router/McgRouter-class.html b/doc/api/features_core_abstracts_router_app_router/McgRouter-class.html new file mode 100644 index 0000000..7c3aaed --- /dev/null +++ b/doc/api/features_core_abstracts_router_app_router/McgRouter-class.html @@ -0,0 +1,269 @@ + + + + + + + + McgRouter class - app_router library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    McgRouter
    + +
    + +
    + + +
    +
    +

    McgRouter class + Null safety + +

    + + + + + + +
    +

    Constructors

    + +
    +
    + McgRouter() +
    +
    + +
    +
    +
    + +
    +

    Properties

    + +
    +
    + hashCode + int + +
    +
    + The hash code for this object. +
    read-only, inherited
    + +
    + +
    + router + GoRouter + +
    +
    + +
    final
    + +
    + +
    + runtimeType + Type + +
    +
    + A representation of the runtime type of the object. +
    read-only, inherited
    + +
    + +
    +
    + + +
    +

    Methods

    +
    +
    + noSuchMethod(Invocation invocation) + → dynamic + + + +
    +
    + Invoked when a non-existent method or property is accessed. +
    inherited
    + +
    + +
    + toString() + String + + + +
    +
    + A string representation of this object. +
    inherited
    + +
    + +
    +
    + +
    +

    Operators

    +
    +
    + operator ==(Object other) + bool + + + +
    +
    + The equality operator. +
    inherited
    + +
    + +
    +
    + +
    +

    Static Properties

    + +
    +
    + locate + McgRouter + +
    +
    + +
    read-only
    + +
    + +
    +
    + + + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_abstracts_router_app_router/McgRouter/McgRouter.html b/doc/api/features_core_abstracts_router_app_router/McgRouter/McgRouter.html new file mode 100644 index 0000000..d07531f --- /dev/null +++ b/doc/api/features_core_abstracts_router_app_router/McgRouter/McgRouter.html @@ -0,0 +1,132 @@ + + + + + + + + McgRouter constructor - McgRouter - app_router library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    McgRouter
    + +
    + +
    + + +
    +
    +

    McgRouter constructor + Null safety +

    + +
    + McgRouter() +
    + + + + + + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_abstracts_router_app_router/McgRouter/locate.html b/doc/api/features_core_abstracts_router_app_router/McgRouter/locate.html new file mode 100644 index 0000000..6b53eea --- /dev/null +++ b/doc/api/features_core_abstracts_router_app_router/McgRouter/locate.html @@ -0,0 +1,144 @@ + + + + + + + + locate property - McgRouter class - app_router library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    locate
    + +
    + +
    + + +
    +
    +

    locate property + Null safety +

    + + + +
    + +
    + McgRouter + locate + + +
    + + + + +
    +

    Implementation

    +
    static McgRouter get locate => _mcgRouter;
    +
    + +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_abstracts_router_app_router/McgRouter/router.html b/doc/api/features_core_abstracts_router_app_router/McgRouter/router.html new file mode 100644 index 0000000..7973c16 --- /dev/null +++ b/doc/api/features_core_abstracts_router_app_router/McgRouter/router.html @@ -0,0 +1,162 @@ + + + + + + + + router property - McgRouter class - app_router library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    router
    + +
    + +
    + + +
    +
    +

    router property + Null safety +

    + +
    + GoRouter + router +
    final
    + +
    + + + +
    +

    Implementation

    +
    final router = GoRouter(
    +  initialLocation: Routes.home.routePath,
    +  debugLogDiagnostics: true,
    +  errorPageBuilder: (context, state) => MaterialPage<void>(
    +    key: state.pageKey,
    +    child: ErrorPageView(error: state.error),
    +  ),
    +  routes: [
    +    GoRoute(
    +      path: Routes.home.routePath,
    +      name: Routes.home.routeName,
    +      builder: (context, _) => const GalleryView(),
    +      routes: [
    +        GoRoute(
    +          path: Routes.imageCarousel.routePath,
    +          name: Routes.imageCarousel.routeName,
    +          builder: (context, state) => ImageCarouselView(
    +            imageCarouselViewArguments: state.extra as ImageCarouselViewArguments,
    +          ),
    +        ),
    +      ],
    +    ),
    +  ],
    +);
    +
    +
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_abstracts_router_app_router/features_core_abstracts_router_app_router-library.html b/doc/api/features_core_abstracts_router_app_router/features_core_abstracts_router_app_router-library.html new file mode 100644 index 0000000..6451bac --- /dev/null +++ b/doc/api/features_core_abstracts_router_app_router/features_core_abstracts_router_app_router-library.html @@ -0,0 +1,190 @@ + + + + + + + + app_router library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    app_router
    + +
    + +
    + + +
    +
    +

    app_router library + Null safety + +

    + + + + +
    +

    Classes

    + +
    +
    + McgRouter + +
    +
    + +
    + +
    +
    + + + + + + + + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_abstracts_router_routes/Routes.html b/doc/api/features_core_abstracts_router_routes/Routes.html new file mode 100644 index 0000000..456a170 --- /dev/null +++ b/doc/api/features_core_abstracts_router_routes/Routes.html @@ -0,0 +1,365 @@ + + + + + + + + Routes enum - routes library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    Routes
    + +
    + +
    + + +
    +
    + +

    + Routes + enum + Null safety + + +

    +
    + + + + +
    +
    + +
    Inheritance
    +
    + +
    + + + + +
    +
    + + +
    +

    Constructors

    + +
    +
    + Routes(RoutesInfo _routeInfo) +
    +
    + +
    const
    +
    +
    +
    + +
    +

    Values

    + +
    +
    + home + → const Routes + + +
    +
    + + + +
    + Routes(RoutesInfo(routePath: '/', routeName: 'Home')) +
    +
    + +
    + imageCarousel + → const Routes + + +
    +
    + + + +
    + Routes(RoutesInfo(routePath: 'image_carousel', routeName: 'Image Carousel')) +
    +
    + +
    +
    + +
    +

    Properties

    + +
    +
    + hashCode + int + +
    +
    + The hash code for this object. +
    read-only, inherited
    + +
    + +
    + index + int + +
    +
    + A numeric identifier for the enumerated value. +
    read-only, inherited
    + +
    + +
    + routeName + String + +
    +
    + +
    read-only
    + +
    + +
    + routePath + String + +
    +
    + +
    read-only
    + +
    + +
    + runtimeType + Type + +
    +
    + A representation of the runtime type of the object. +
    read-only, inherited
    + +
    + +
    +
    + + +
    +

    Methods

    +
    +
    + noSuchMethod(Invocation invocation) + → dynamic + + + +
    +
    + Invoked when a non-existent method or property is accessed. +
    inherited
    + +
    + +
    + toString() + String + + + +
    +
    + A string representation of this object. +
    inherited
    + +
    + +
    +
    + +
    +

    Operators

    +
    +
    + operator ==(Object other) + bool + + + +
    +
    + The equality operator. +
    inherited
    + +
    + +
    +
    + + + + +
    +

    Constants

    + +
    +
    + values + → const List<Routes> + + +
    +
    + A constant List of the values in this enum, in order of their declaration. + + +
    + [home, imageCarousel] +
    +
    + +
    +
    +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_abstracts_router_routes/Routes/Routes.html b/doc/api/features_core_abstracts_router_routes/Routes/Routes.html new file mode 100644 index 0000000..633d7d7 --- /dev/null +++ b/doc/api/features_core_abstracts_router_routes/Routes/Routes.html @@ -0,0 +1,142 @@ + + + + + + + + Routes constructor - Routes - routes library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    Routes
    + +
    + +
    + + +
    +
    +

    Routes constructor + Null safety +

    + +
    const + Routes(
    1. RoutesInfo _routeInfo
    2. +
    ) +
    + + + + + +
    +

    Implementation

    +
    const Routes(this._routeInfo);
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_abstracts_router_routes/Routes/routeName.html b/doc/api/features_core_abstracts_router_routes/Routes/routeName.html new file mode 100644 index 0000000..006f756 --- /dev/null +++ b/doc/api/features_core_abstracts_router_routes/Routes/routeName.html @@ -0,0 +1,149 @@ + + + + + + + + routeName property - Routes extension - routes library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    routeName
    + +
    + +
    + + +
    +
    +

    routeName property + Null safety +

    + + + +
    + +
    + String + routeName + + +
    + + + + +
    +

    Implementation

    +
    String get routeName => _routeInfo.routeName;
    +
    + +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_abstracts_router_routes/Routes/routePath.html b/doc/api/features_core_abstracts_router_routes/Routes/routePath.html new file mode 100644 index 0000000..5e1424d --- /dev/null +++ b/doc/api/features_core_abstracts_router_routes/Routes/routePath.html @@ -0,0 +1,149 @@ + + + + + + + + routePath property - Routes extension - routes library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    routePath
    + +
    + +
    + + +
    +
    +

    routePath property + Null safety +

    + + + +
    + +
    + String + routePath + + +
    + + + + +
    +

    Implementation

    +
    String get routePath => _routeInfo.routePath;
    +
    + +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_abstracts_router_routes/Routes/values-constant.html b/doc/api/features_core_abstracts_router_routes/Routes/values-constant.html new file mode 100644 index 0000000..d8a9e24 --- /dev/null +++ b/doc/api/features_core_abstracts_router_routes/Routes/values-constant.html @@ -0,0 +1,141 @@ + + + + + + + + values constant - Routes extension - routes library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    values
    + +
    + +
    + + +
    +
    +

    values constant + Null safety +

    + +
    + List<Routes> + const values + + +
    + +
    +

    A constant List of the values in this enum, in order of their declaration.

    +
    + + + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_abstracts_router_routes/RoutesInfo-class.html b/doc/api/features_core_abstracts_router_routes/RoutesInfo-class.html new file mode 100644 index 0000000..3d9dff7 --- /dev/null +++ b/doc/api/features_core_abstracts_router_routes/RoutesInfo-class.html @@ -0,0 +1,265 @@ + + + + + + + + RoutesInfo class - routes library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    RoutesInfo
    + +
    + +
    + + +
    +
    +

    RoutesInfo class + Null safety + +

    + + + + + + +
    +

    Constructors

    + +
    +
    + RoutesInfo({required String routePath, required String routeName}) +
    +
    + +
    const
    +
    +
    +
    + +
    +

    Properties

    + +
    +
    + hashCode + int + +
    +
    + The hash code for this object. +
    read-only, inherited
    + +
    + +
    + routeName + String + +
    +
    + +
    final
    + +
    + +
    + routePath + String + +
    +
    + +
    final
    + +
    + +
    + runtimeType + Type + +
    +
    + A representation of the runtime type of the object. +
    read-only, inherited
    + +
    + +
    +
    + + +
    +

    Methods

    +
    +
    + noSuchMethod(Invocation invocation) + → dynamic + + + +
    +
    + Invoked when a non-existent method or property is accessed. +
    inherited
    + +
    + +
    + toString() + String + + + +
    +
    + A string representation of this object. +
    inherited
    + +
    + +
    +
    + +
    +

    Operators

    +
    +
    + operator ==(Object other) + bool + + + +
    +
    + The equality operator. +
    inherited
    + +
    + +
    +
    + + + + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_abstracts_router_routes/RoutesInfo/RoutesInfo.html b/doc/api/features_core_abstracts_router_routes/RoutesInfo/RoutesInfo.html new file mode 100644 index 0000000..abf1d0c --- /dev/null +++ b/doc/api/features_core_abstracts_router_routes/RoutesInfo/RoutesInfo.html @@ -0,0 +1,140 @@ + + + + + + + + RoutesInfo constructor - RoutesInfo - routes library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    RoutesInfo
    + +
    + +
    + + +
    +
    +

    RoutesInfo constructor + Null safety +

    + +
    const + RoutesInfo(
    1. {required String routePath,
    2. +
    3. required String routeName}
    4. +
    ) +
    + + + + + +
    +

    Implementation

    +
    const RoutesInfo({
    +  required this.routePath,
    +  required this.routeName,
    +});
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_abstracts_router_routes/RoutesInfo/routeName.html b/doc/api/features_core_abstracts_router_routes/RoutesInfo/routeName.html new file mode 100644 index 0000000..1ff657c --- /dev/null +++ b/doc/api/features_core_abstracts_router_routes/RoutesInfo/routeName.html @@ -0,0 +1,138 @@ + + + + + + + + routeName property - RoutesInfo class - routes library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    routeName
    + +
    + +
    + + +
    +
    +

    routeName property + Null safety +

    + +
    + String + routeName +
    final
    + +
    + + + +
    +

    Implementation

    +
    final String routeName;
    +
    +
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_abstracts_router_routes/RoutesInfo/routePath.html b/doc/api/features_core_abstracts_router_routes/RoutesInfo/routePath.html new file mode 100644 index 0000000..4183e46 --- /dev/null +++ b/doc/api/features_core_abstracts_router_routes/RoutesInfo/routePath.html @@ -0,0 +1,138 @@ + + + + + + + + routePath property - RoutesInfo class - routes library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    routePath
    + +
    + +
    + + +
    +
    +

    routePath property + Null safety +

    + +
    + String + routePath +
    final
    + +
    + + + +
    +

    Implementation

    +
    final String routePath;
    +
    +
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_abstracts_router_routes/features_core_abstracts_router_routes-library.html b/doc/api/features_core_abstracts_router_routes/features_core_abstracts_router_routes-library.html new file mode 100644 index 0000000..3226f5a --- /dev/null +++ b/doc/api/features_core_abstracts_router_routes/features_core_abstracts_router_routes-library.html @@ -0,0 +1,206 @@ + + + + + + + + routes library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    routes
    + +
    + +
    + + +
    +
    +

    routes library + Null safety + +

    + + + + +
    +

    Classes

    + +
    +
    + RoutesInfo + +
    +
    + +
    + +
    +
    + + + + + + +
    +

    Enums

    + +
    +
    + Routes + +
    +
    + +
    + +
    +
    + + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_constants_const_colors/ConstColours-class.html b/doc/api/features_core_data_constants_const_colors/ConstColours-class.html new file mode 100644 index 0000000..f44a4ff --- /dev/null +++ b/doc/api/features_core_data_constants_const_colors/ConstColours-class.html @@ -0,0 +1,326 @@ + + + + + + + + ConstColours class - const_colors library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    ConstColours
    + +
    + +
    + + +
    +
    +

    ConstColours class + Null safety + +

    + + + + + + +
    +

    Constructors

    + +
    +
    + ConstColours() +
    +
    + +
    +
    +
    + +
    +

    Properties

    + +
    +
    + hashCode + int + +
    +
    + The hash code for this object. +
    read-only, inherited
    + +
    + +
    + runtimeType + Type + +
    +
    + A representation of the runtime type of the object. +
    read-only, inherited
    + +
    + +
    +
    + + +
    +

    Methods

    +
    +
    + noSuchMethod(Invocation invocation) + → dynamic + + + +
    +
    + Invoked when a non-existent method or property is accessed. +
    inherited
    + +
    + +
    + toString() + String + + + +
    +
    + A string representation of this object. +
    inherited
    + +
    + +
    +
    + +
    +

    Operators

    +
    +
    + operator ==(Object other) + bool + + + +
    +
    + The equality operator. +
    inherited
    + +
    + +
    +
    + + + + +
    +

    Constants

    + +
    +
    + black + → const Color + + +
    +
    + + + +
    + Colors.black +
    +
    + +
    + galleryBackgroundColour + → const Color + + +
    +
    + Smoke Gray => a neutral grey with neutral warmth/cold + + +
    + Color.fromRGBO(127, 127, 125, 1.0) +
    +
    + +
    + red + → const MaterialColor + + +
    +
    + + + +
    + Colors.red +
    +
    + +
    + transparent + → const Color + + +
    +
    + + + +
    + Colors.transparent +
    +
    + +
    + white + → const Color + + +
    +
    + + + +
    + Colors.white +
    +
    + +
    +
    + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_constants_const_colors/ConstColours/ConstColours.html b/doc/api/features_core_data_constants_const_colors/ConstColours/ConstColours.html new file mode 100644 index 0000000..14ad069 --- /dev/null +++ b/doc/api/features_core_data_constants_const_colors/ConstColours/ConstColours.html @@ -0,0 +1,135 @@ + + + + + + + + ConstColours constructor - ConstColours - const_colors library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    ConstColours
    + +
    + +
    + + +
    +
    +

    ConstColours constructor + Null safety +

    + +
    + ConstColours() +
    + + + + + + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_constants_const_colors/ConstColours/black-constant.html b/doc/api/features_core_data_constants_const_colors/ConstColours/black-constant.html new file mode 100644 index 0000000..a9ad5bf --- /dev/null +++ b/doc/api/features_core_data_constants_const_colors/ConstColours/black-constant.html @@ -0,0 +1,142 @@ + + + + + + + + black constant - ConstColours class - const_colors library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    black
    + +
    + +
    + + +
    +
    +

    black constant + Null safety +

    + +
    + Color + const black + + +
    + + + +
    +

    Implementation

    +
    static const black = Colors.black;
    +
    +
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_constants_const_colors/ConstColours/galleryBackgroundColour-constant.html b/doc/api/features_core_data_constants_const_colors/ConstColours/galleryBackgroundColour-constant.html new file mode 100644 index 0000000..0dc20cc --- /dev/null +++ b/doc/api/features_core_data_constants_const_colors/ConstColours/galleryBackgroundColour-constant.html @@ -0,0 +1,145 @@ + + + + + + + + galleryBackgroundColour constant - ConstColours class - const_colors library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    galleryBackgroundColour
    + +
    + +
    + + +
    +
    +

    galleryBackgroundColour constant + Null safety +

    + +
    + Color + const galleryBackgroundColour + + +
    + +
    +

    Smoke Gray => a neutral grey with neutral warmth/cold

    +
    + + +
    +

    Implementation

    +
    static const galleryBackgroundColour = Color.fromRGBO(127, 127, 125, 1.0);
    +
    +
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_constants_const_colors/ConstColours/red-constant.html b/doc/api/features_core_data_constants_const_colors/ConstColours/red-constant.html new file mode 100644 index 0000000..065b205 --- /dev/null +++ b/doc/api/features_core_data_constants_const_colors/ConstColours/red-constant.html @@ -0,0 +1,142 @@ + + + + + + + + red constant - ConstColours class - const_colors library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    red
    + +
    + +
    + + +
    +
    +

    red constant + Null safety +

    + +
    + MaterialColor + const red + + +
    + + + +
    +

    Implementation

    +
    static const red = Colors.red;
    +
    +
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_constants_const_colors/ConstColours/transparent-constant.html b/doc/api/features_core_data_constants_const_colors/ConstColours/transparent-constant.html new file mode 100644 index 0000000..f41fc27 --- /dev/null +++ b/doc/api/features_core_data_constants_const_colors/ConstColours/transparent-constant.html @@ -0,0 +1,142 @@ + + + + + + + + transparent constant - ConstColours class - const_colors library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    transparent
    + +
    + +
    + + +
    +
    +

    transparent constant + Null safety +

    + +
    + Color + const transparent + + +
    + + + +
    +

    Implementation

    +
    static const transparent = Colors.transparent;
    +
    +
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_constants_const_colors/ConstColours/white-constant.html b/doc/api/features_core_data_constants_const_colors/ConstColours/white-constant.html new file mode 100644 index 0000000..9759e93 --- /dev/null +++ b/doc/api/features_core_data_constants_const_colors/ConstColours/white-constant.html @@ -0,0 +1,142 @@ + + + + + + + + white constant - ConstColours class - const_colors library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    white
    + +
    + +
    + + +
    +
    +

    white constant + Null safety +

    + +
    + Color + const white + + +
    + + + +
    +

    Implementation

    +
    static const white = Colors.white;
    +
    +
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_constants_const_colors/ConstThemes-class.html b/doc/api/features_core_data_constants_const_colors/ConstThemes-class.html new file mode 100644 index 0000000..4041d92 --- /dev/null +++ b/doc/api/features_core_data_constants_const_colors/ConstThemes-class.html @@ -0,0 +1,318 @@ + + + + + + + + ConstThemes class - const_colors library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    ConstThemes
    + +
    + +
    + + +
    +
    +

    ConstThemes class + Null safety + +

    + + + + + + +
    +

    Constructors

    + +
    +
    + ConstThemes() +
    +
    + +
    +
    +
    + +
    +

    Properties

    + +
    +
    + hashCode + int + +
    +
    + The hash code for this object. +
    read-only, inherited
    + +
    + +
    + runtimeType + Type + +
    +
    + A representation of the runtime type of the object. +
    read-only, inherited
    + +
    + +
    +
    + + +
    +

    Methods

    +
    +
    + noSuchMethod(Invocation invocation) + → dynamic + + + +
    +
    + Invoked when a non-existent method or property is accessed. +
    inherited
    + +
    + +
    + toString() + String + + + +
    +
    + A string representation of this object. +
    inherited
    + +
    + +
    +
    + +
    +

    Operators

    +
    +
    + operator ==(Object other) + bool + + + +
    +
    + The equality operator. +
    inherited
    + +
    + +
    +
    + +
    +

    Static Properties

    + +
    +
    + cupertinoDarkTheme + CupertinoThemeData + +
    +
    + +
    read-only
    + +
    + +
    + cupertinoLightTheme + CupertinoThemeData + +
    +
    + +
    read-only
    + +
    + +
    + cupertinoThemeDarkHack + ThemeData + +
    +
    + +
    read-only
    + +
    + +
    + cupertinoThemeLightHack + ThemeData + +
    +
    + +
    read-only
    + +
    + +
    + materialDarkTheme + ThemeData + +
    +
    + +
    read-only
    + +
    + +
    + materialLightTheme + ThemeData + +
    +
    + +
    read-only
    + +
    + +
    +
    + + + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_constants_const_colors/ConstThemes/ConstThemes.html b/doc/api/features_core_data_constants_const_colors/ConstThemes/ConstThemes.html new file mode 100644 index 0000000..65962e9 --- /dev/null +++ b/doc/api/features_core_data_constants_const_colors/ConstThemes/ConstThemes.html @@ -0,0 +1,136 @@ + + + + + + + + ConstThemes constructor - ConstThemes - const_colors library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    ConstThemes
    + +
    + +
    + + +
    +
    +

    ConstThemes constructor + Null safety +

    + +
    + ConstThemes() +
    + + + + + + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_constants_const_colors/ConstThemes/cupertinoDarkTheme.html b/doc/api/features_core_data_constants_const_colors/ConstThemes/cupertinoDarkTheme.html new file mode 100644 index 0000000..cb8c9bd --- /dev/null +++ b/doc/api/features_core_data_constants_const_colors/ConstThemes/cupertinoDarkTheme.html @@ -0,0 +1,150 @@ + + + + + + + + cupertinoDarkTheme property - ConstThemes class - const_colors library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    cupertinoDarkTheme
    + +
    + +
    + + +
    +
    +

    cupertinoDarkTheme property + Null safety +

    + + + +
    + +
    + CupertinoThemeData + cupertinoDarkTheme + + +
    + + + + +
    +

    Implementation

    +
    static CupertinoThemeData get cupertinoDarkTheme => const CupertinoThemeData(
    +      brightness: Brightness.dark,
    +    );
    +
    + +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_constants_const_colors/ConstThemes/cupertinoLightTheme.html b/doc/api/features_core_data_constants_const_colors/ConstThemes/cupertinoLightTheme.html new file mode 100644 index 0000000..b6da9c0 --- /dev/null +++ b/doc/api/features_core_data_constants_const_colors/ConstThemes/cupertinoLightTheme.html @@ -0,0 +1,150 @@ + + + + + + + + cupertinoLightTheme property - ConstThemes class - const_colors library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    cupertinoLightTheme
    + +
    + +
    + + +
    +
    +

    cupertinoLightTheme property + Null safety +

    + + + +
    + +
    + CupertinoThemeData + cupertinoLightTheme + + +
    + + + + +
    +

    Implementation

    +
    static CupertinoThemeData get cupertinoLightTheme => const CupertinoThemeData(
    +      brightness: Brightness.light,
    +    );
    +
    + +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_constants_const_colors/ConstThemes/cupertinoThemeDarkHack.html b/doc/api/features_core_data_constants_const_colors/ConstThemes/cupertinoThemeDarkHack.html new file mode 100644 index 0000000..7b7cfe8 --- /dev/null +++ b/doc/api/features_core_data_constants_const_colors/ConstThemes/cupertinoThemeDarkHack.html @@ -0,0 +1,149 @@ + + + + + + + + cupertinoThemeDarkHack property - ConstThemes class - const_colors library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    cupertinoThemeDarkHack
    + +
    + +
    + + +
    +
    +

    cupertinoThemeDarkHack property + Null safety +

    + + + +
    + +
    + ThemeData + cupertinoThemeDarkHack + + +
    + + + + +
    +

    Implementation

    +
    static ThemeData get cupertinoThemeDarkHack =>
    +    materialDarkTheme.copyWith(cupertinoOverrideTheme: cupertinoDarkTheme);
    +
    + +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_constants_const_colors/ConstThemes/cupertinoThemeLightHack.html b/doc/api/features_core_data_constants_const_colors/ConstThemes/cupertinoThemeLightHack.html new file mode 100644 index 0000000..4bf1dd7 --- /dev/null +++ b/doc/api/features_core_data_constants_const_colors/ConstThemes/cupertinoThemeLightHack.html @@ -0,0 +1,149 @@ + + + + + + + + cupertinoThemeLightHack property - ConstThemes class - const_colors library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    cupertinoThemeLightHack
    + +
    + +
    + + +
    +
    +

    cupertinoThemeLightHack property + Null safety +

    + + + +
    + +
    + ThemeData + cupertinoThemeLightHack + + +
    + + + + +
    +

    Implementation

    +
    static ThemeData get cupertinoThemeLightHack =>
    +    materialLightTheme.copyWith(cupertinoOverrideTheme: cupertinoLightTheme);
    +
    + +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_constants_const_colors/ConstThemes/materialDarkTheme.html b/doc/api/features_core_data_constants_const_colors/ConstThemes/materialDarkTheme.html new file mode 100644 index 0000000..b6ecc37 --- /dev/null +++ b/doc/api/features_core_data_constants_const_colors/ConstThemes/materialDarkTheme.html @@ -0,0 +1,152 @@ + + + + + + + + materialDarkTheme property - ConstThemes class - const_colors library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    materialDarkTheme
    + +
    + +
    + + +
    +
    +

    materialDarkTheme property + Null safety +

    + + + +
    + +
    + ThemeData + materialDarkTheme + + +
    + + + + +
    +

    Implementation

    +
    static ThemeData get materialDarkTheme => ThemeData(
    +      useMaterial3: true,
    +      brightness: Brightness.dark,
    +      colorSchemeSeed: ConstColours.white,
    +    );
    +
    + +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_constants_const_colors/ConstThemes/materialLightTheme.html b/doc/api/features_core_data_constants_const_colors/ConstThemes/materialLightTheme.html new file mode 100644 index 0000000..118f0f7 --- /dev/null +++ b/doc/api/features_core_data_constants_const_colors/ConstThemes/materialLightTheme.html @@ -0,0 +1,152 @@ + + + + + + + + materialLightTheme property - ConstThemes class - const_colors library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    materialLightTheme
    + +
    + +
    + + +
    +
    +

    materialLightTheme property + Null safety +

    + + + +
    + +
    + ThemeData + materialLightTheme + + +
    + + + + +
    +

    Implementation

    +
    static ThemeData get materialLightTheme => ThemeData(
    +      useMaterial3: true,
    +      brightness: Brightness.light,
    +      colorSchemeSeed: ConstColours.white,
    +    );
    +
    + +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_constants_const_colors/features_core_data_constants_const_colors-library.html b/doc/api/features_core_data_constants_const_colors/features_core_data_constants_const_colors-library.html new file mode 100644 index 0000000..31dbb52 --- /dev/null +++ b/doc/api/features_core_data_constants_const_colors/features_core_data_constants_const_colors-library.html @@ -0,0 +1,199 @@ + + + + + + + + const_colors library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    const_colors
    + +
    + +
    + + +
    +
    +

    const_colors library + Null safety + +

    + + + + +
    +

    Classes

    + +
    +
    + ConstColours + +
    +
    + +
    + +
    + ConstThemes + +
    +
    + +
    + +
    +
    + + + + + + + + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_constants_const_durations/ConstDurations-class.html b/doc/api/features_core_data_constants_const_durations/ConstDurations-class.html new file mode 100644 index 0000000..022ee04 --- /dev/null +++ b/doc/api/features_core_data_constants_const_durations/ConstDurations-class.html @@ -0,0 +1,357 @@ + + + + + + + + ConstDurations class - const_durations library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    ConstDurations
    + +
    + +
    + + +
    +
    +

    ConstDurations class + Null safety + +

    + + + + + + +
    +

    Constructors

    + +
    +
    + ConstDurations() +
    +
    + +
    +
    +
    + +
    +

    Properties

    + +
    +
    + hashCode + int + +
    +
    + The hash code for this object. +
    read-only, inherited
    + +
    + +
    + runtimeType + Type + +
    +
    + A representation of the runtime type of the object. +
    read-only, inherited
    + +
    + +
    +
    + + +
    +

    Methods

    +
    +
    + noSuchMethod(Invocation invocation) + → dynamic + + + +
    +
    + Invoked when a non-existent method or property is accessed. +
    inherited
    + +
    + +
    + toString() + String + + + +
    +
    + A string representation of this object. +
    inherited
    + +
    + +
    +
    + +
    +

    Operators

    +
    +
    + operator ==(Object other) + bool + + + +
    +
    + The equality operator. +
    inherited
    + +
    + +
    +
    + + + + +
    +

    Constants

    + +
    +
    + defaultAnimationDuration + → const Duration + + +
    +
    + + + +
    + Duration(milliseconds: 400) +
    +
    + +
    + doubleDefaultAnimationDuration + → const Duration + + +
    +
    + + + +
    + Duration(milliseconds: 800) +
    +
    + +
    + halfDefaultAnimationDuration + → const Duration + + +
    +
    + + + +
    + Duration(milliseconds: 200) +
    +
    + +
    + oneAndHalfDefaultAnimationDuration + → const Duration + + +
    +
    + + + +
    + Duration(milliseconds: 600) +
    +
    + +
    + quarterDefaultAnimationDuration + → const Duration + + +
    +
    + + + +
    + Duration(milliseconds: 100) +
    +
    + +
    + tripleDefaultAnimationDuration + → const Duration + + +
    +
    + + + +
    + Duration(milliseconds: 1200) +
    +
    + +
    + zero + → const Duration + + +
    +
    + + + +
    + Duration.zero +
    +
    + +
    +
    + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_constants_const_durations/ConstDurations/ConstDurations.html b/doc/api/features_core_data_constants_const_durations/ConstDurations/ConstDurations.html new file mode 100644 index 0000000..669c28e --- /dev/null +++ b/doc/api/features_core_data_constants_const_durations/ConstDurations/ConstDurations.html @@ -0,0 +1,137 @@ + + + + + + + + ConstDurations constructor - ConstDurations - const_durations library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    ConstDurations
    + +
    + +
    + + +
    +
    +

    ConstDurations constructor + Null safety +

    + +
    + ConstDurations() +
    + + + + + + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_constants_const_durations/ConstDurations/defaultAnimationDuration-constant.html b/doc/api/features_core_data_constants_const_durations/ConstDurations/defaultAnimationDuration-constant.html new file mode 100644 index 0000000..833b638 --- /dev/null +++ b/doc/api/features_core_data_constants_const_durations/ConstDurations/defaultAnimationDuration-constant.html @@ -0,0 +1,144 @@ + + + + + + + + defaultAnimationDuration constant - ConstDurations class - const_durations library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    defaultAnimationDuration
    + +
    + +
    + + +
    +
    +

    defaultAnimationDuration constant + Null safety +

    + +
    + Duration + const defaultAnimationDuration + + +
    + + + +
    +

    Implementation

    +
    static const Duration defaultAnimationDuration = Duration(milliseconds: 400);
    +
    +
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_constants_const_durations/ConstDurations/doubleDefaultAnimationDuration-constant.html b/doc/api/features_core_data_constants_const_durations/ConstDurations/doubleDefaultAnimationDuration-constant.html new file mode 100644 index 0000000..fb2d5aa --- /dev/null +++ b/doc/api/features_core_data_constants_const_durations/ConstDurations/doubleDefaultAnimationDuration-constant.html @@ -0,0 +1,144 @@ + + + + + + + + doubleDefaultAnimationDuration constant - ConstDurations class - const_durations library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    doubleDefaultAnimationDuration
    + +
    + +
    + + +
    +
    +

    doubleDefaultAnimationDuration constant + Null safety +

    + +
    + Duration + const doubleDefaultAnimationDuration + + +
    + + + +
    +

    Implementation

    +
    static const Duration doubleDefaultAnimationDuration = Duration(milliseconds: 800);
    +
    +
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_constants_const_durations/ConstDurations/halfDefaultAnimationDuration-constant.html b/doc/api/features_core_data_constants_const_durations/ConstDurations/halfDefaultAnimationDuration-constant.html new file mode 100644 index 0000000..2a3817c --- /dev/null +++ b/doc/api/features_core_data_constants_const_durations/ConstDurations/halfDefaultAnimationDuration-constant.html @@ -0,0 +1,144 @@ + + + + + + + + halfDefaultAnimationDuration constant - ConstDurations class - const_durations library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    halfDefaultAnimationDuration
    + +
    + +
    + + +
    +
    +

    halfDefaultAnimationDuration constant + Null safety +

    + +
    + Duration + const halfDefaultAnimationDuration + + +
    + + + +
    +

    Implementation

    +
    static const Duration halfDefaultAnimationDuration = Duration(milliseconds: 200);
    +
    +
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_constants_const_durations/ConstDurations/oneAndHalfDefaultAnimationDuration-constant.html b/doc/api/features_core_data_constants_const_durations/ConstDurations/oneAndHalfDefaultAnimationDuration-constant.html new file mode 100644 index 0000000..8071947 --- /dev/null +++ b/doc/api/features_core_data_constants_const_durations/ConstDurations/oneAndHalfDefaultAnimationDuration-constant.html @@ -0,0 +1,144 @@ + + + + + + + + oneAndHalfDefaultAnimationDuration constant - ConstDurations class - const_durations library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    oneAndHalfDefaultAnimationDuration
    + +
    + +
    + + +
    +
    +

    oneAndHalfDefaultAnimationDuration constant + Null safety +

    + +
    + Duration + const oneAndHalfDefaultAnimationDuration + + +
    + + + +
    +

    Implementation

    +
    static const Duration oneAndHalfDefaultAnimationDuration = Duration(milliseconds: 600);
    +
    +
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_constants_const_durations/ConstDurations/quarterDefaultAnimationDuration-constant.html b/doc/api/features_core_data_constants_const_durations/ConstDurations/quarterDefaultAnimationDuration-constant.html new file mode 100644 index 0000000..93104df --- /dev/null +++ b/doc/api/features_core_data_constants_const_durations/ConstDurations/quarterDefaultAnimationDuration-constant.html @@ -0,0 +1,144 @@ + + + + + + + + quarterDefaultAnimationDuration constant - ConstDurations class - const_durations library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    quarterDefaultAnimationDuration
    + +
    + +
    + + +
    +
    +

    quarterDefaultAnimationDuration constant + Null safety +

    + +
    + Duration + const quarterDefaultAnimationDuration + + +
    + + + +
    +

    Implementation

    +
    static const Duration quarterDefaultAnimationDuration = Duration(milliseconds: 100);
    +
    +
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_constants_const_durations/ConstDurations/tripleDefaultAnimationDuration-constant.html b/doc/api/features_core_data_constants_const_durations/ConstDurations/tripleDefaultAnimationDuration-constant.html new file mode 100644 index 0000000..25b7df7 --- /dev/null +++ b/doc/api/features_core_data_constants_const_durations/ConstDurations/tripleDefaultAnimationDuration-constant.html @@ -0,0 +1,144 @@ + + + + + + + + tripleDefaultAnimationDuration constant - ConstDurations class - const_durations library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    tripleDefaultAnimationDuration
    + +
    + +
    + + +
    +
    +

    tripleDefaultAnimationDuration constant + Null safety +

    + +
    + Duration + const tripleDefaultAnimationDuration + + +
    + + + +
    +

    Implementation

    +
    static const Duration tripleDefaultAnimationDuration = Duration(milliseconds: 1200);
    +
    +
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_constants_const_durations/ConstDurations/zero-constant.html b/doc/api/features_core_data_constants_const_durations/ConstDurations/zero-constant.html new file mode 100644 index 0000000..f2c715b --- /dev/null +++ b/doc/api/features_core_data_constants_const_durations/ConstDurations/zero-constant.html @@ -0,0 +1,144 @@ + + + + + + + + zero constant - ConstDurations class - const_durations library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    zero
    + +
    + +
    + + +
    +
    +

    zero constant + Null safety +

    + +
    + Duration + const zero + + +
    + + + +
    +

    Implementation

    +
    static const Duration zero = Duration.zero;
    +
    +
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_constants_const_durations/features_core_data_constants_const_durations-library.html b/doc/api/features_core_data_constants_const_durations/features_core_data_constants_const_durations-library.html new file mode 100644 index 0000000..482e453 --- /dev/null +++ b/doc/api/features_core_data_constants_const_durations/features_core_data_constants_const_durations-library.html @@ -0,0 +1,190 @@ + + + + + + + + const_durations library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    const_durations
    + +
    + +
    + + +
    +
    +

    const_durations library + Null safety + +

    + + + + +
    +

    Classes

    + +
    +
    + ConstDurations + +
    +
    + +
    + +
    +
    + + + + + + + + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_constants_const_input_formatters/features_core_data_constants_const_input_formatters-library.html b/doc/api/features_core_data_constants_const_input_formatters/features_core_data_constants_const_input_formatters-library.html new file mode 100644 index 0000000..0d6d1c6 --- /dev/null +++ b/doc/api/features_core_data_constants_const_input_formatters/features_core_data_constants_const_input_formatters-library.html @@ -0,0 +1,174 @@ + + + + + + + + const_input_formatters library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    const_input_formatters
    + +
    + +
    + + +
    +
    +

    const_input_formatters library + Null safety + +

    + + + + + + + + + + + + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_constants_const_input_validators/features_core_data_constants_const_input_validators-library.html b/doc/api/features_core_data_constants_const_input_validators/features_core_data_constants_const_input_validators-library.html new file mode 100644 index 0000000..0c7b4eb --- /dev/null +++ b/doc/api/features_core_data_constants_const_input_validators/features_core_data_constants_const_input_validators-library.html @@ -0,0 +1,174 @@ + + + + + + + + const_input_validators library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    const_input_validators
    + +
    + +
    + + +
    +
    +

    const_input_validators library + Null safety + +

    + + + + + + + + + + + + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_constants_const_media/ConstMedia-class.html b/doc/api/features_core_data_constants_const_media/ConstMedia-class.html new file mode 100644 index 0000000..88d792d --- /dev/null +++ b/doc/api/features_core_data_constants_const_media/ConstMedia-class.html @@ -0,0 +1,297 @@ + + + + + + + + ConstMedia class - const_media library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    ConstMedia
    + +
    + +
    + + +
    +
    +

    ConstMedia class + Null safety + +

    + + + + + + +
    +

    Constructors

    + +
    +
    + ConstMedia() +
    +
    + +
    +
    +
    + +
    +

    Properties

    + +
    +
    + hashCode + int + +
    +
    + The hash code for this object. +
    read-only, inherited
    + +
    + +
    + runtimeType + Type + +
    +
    + A representation of the runtime type of the object. +
    read-only, inherited
    + +
    + +
    +
    + + +
    +

    Methods

    +
    +
    + noSuchMethod(Invocation invocation) + → dynamic + + + +
    +
    + Invoked when a non-existent method or property is accessed. +
    inherited
    + +
    + +
    + toString() + String + + + +
    +
    + A string representation of this object. +
    inherited
    + +
    + +
    +
    + +
    +

    Operators

    +
    +
    + operator ==(Object other) + bool + + + +
    +
    + The equality operator. +
    inherited
    + +
    + +
    +
    + + +
    +

    Static Methods

    +
    +
    + buildIcon(String iconReference, {Color? color, double? width, double? height, BoxFit fit = BoxFit.contain, Clip clipBehavior = Clip.hardEdge, Alignment alignment = Alignment.center}) + SvgPicture + + + +
    +
    + + + +
    + +
    +
    + + +
    +

    Constants

    + +
    +
    + favStarFilled + → const String + + +
    +
    + + + +
    + 'assets/icons/star_filled.svg' +
    +
    + +
    + favStarOutline + → const String + + +
    +
    + + + +
    + 'assets/icons/star_outline.svg' +
    +
    + +
    +
    + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_constants_const_media/ConstMedia/ConstMedia.html b/doc/api/features_core_data_constants_const_media/ConstMedia/ConstMedia.html new file mode 100644 index 0000000..84e4e01 --- /dev/null +++ b/doc/api/features_core_data_constants_const_media/ConstMedia/ConstMedia.html @@ -0,0 +1,134 @@ + + + + + + + + ConstMedia constructor - ConstMedia - const_media library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    ConstMedia
    + +
    + +
    + + +
    +
    +

    ConstMedia constructor + Null safety +

    + +
    + ConstMedia() +
    + + + + + + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_constants_const_media/ConstMedia/buildIcon.html b/doc/api/features_core_data_constants_const_media/ConstMedia/buildIcon.html new file mode 100644 index 0000000..bce05a6 --- /dev/null +++ b/doc/api/features_core_data_constants_const_media/ConstMedia/buildIcon.html @@ -0,0 +1,167 @@ + + + + + + + + buildIcon method - ConstMedia class - const_media library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    buildIcon
    + +
    + +
    + + +
    +
    +

    buildIcon method + Null safety +

    + +
    + + +SvgPicture +buildIcon(
    1. String iconReference,
    2. +
    3. {Color? color,
    4. +
    5. double? width,
    6. +
    7. double? height,
    8. +
    9. BoxFit fit = BoxFit.contain,
    10. +
    11. Clip clipBehavior = Clip.hardEdge,
    12. +
    13. Alignment alignment = Alignment.center}
    14. +
    ) + + + +
    + + + + +
    +

    Implementation

    +
    static SvgPicture buildIcon(
    +  String iconReference, {
    +  Color? color,
    +  double? width,
    +  double? height,
    +  BoxFit fit = BoxFit.contain,
    +  Clip clipBehavior = Clip.hardEdge,
    +  Alignment alignment = Alignment.center,
    +}) =>
    +    SvgPicture.asset(
    +      iconReference,
    +      color: color,
    +      width: width,
    +      height: height,
    +      fit: fit,
    +      clipBehavior: clipBehavior,
    +      alignment: alignment,
    +    );
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_constants_const_media/ConstMedia/favStarFilled-constant.html b/doc/api/features_core_data_constants_const_media/ConstMedia/favStarFilled-constant.html new file mode 100644 index 0000000..e0259b4 --- /dev/null +++ b/doc/api/features_core_data_constants_const_media/ConstMedia/favStarFilled-constant.html @@ -0,0 +1,141 @@ + + + + + + + + favStarFilled constant - ConstMedia class - const_media library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    favStarFilled
    + +
    + +
    + + +
    +
    +

    favStarFilled constant + Null safety +

    + +
    + String + const favStarFilled + + +
    + + + +
    +

    Implementation

    +
    static const String favStarFilled = 'assets/icons/star_filled.svg';
    +
    +
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_constants_const_media/ConstMedia/favStarOutline-constant.html b/doc/api/features_core_data_constants_const_media/ConstMedia/favStarOutline-constant.html new file mode 100644 index 0000000..5c724b1 --- /dev/null +++ b/doc/api/features_core_data_constants_const_media/ConstMedia/favStarOutline-constant.html @@ -0,0 +1,141 @@ + + + + + + + + favStarOutline constant - ConstMedia class - const_media library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    favStarOutline
    + +
    + +
    + + +
    +
    +

    favStarOutline constant + Null safety +

    + +
    + String + const favStarOutline + + +
    + + + +
    +

    Implementation

    +
    static const String favStarOutline = 'assets/icons/star_outline.svg';
    +
    +
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_constants_const_media/features_core_data_constants_const_media-library.html b/doc/api/features_core_data_constants_const_media/features_core_data_constants_const_media-library.html new file mode 100644 index 0000000..49e445c --- /dev/null +++ b/doc/api/features_core_data_constants_const_media/features_core_data_constants_const_media-library.html @@ -0,0 +1,190 @@ + + + + + + + + const_media library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    const_media
    + +
    + +
    + + +
    +
    +

    const_media library + Null safety + +

    + + + + +
    +

    Classes

    + +
    +
    + ConstMedia + +
    +
    + +
    + +
    +
    + + + + + + + + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_constants_const_sorters/ConstSorters-class.html b/doc/api/features_core_data_constants_const_sorters/ConstSorters-class.html new file mode 100644 index 0000000..661aa92 --- /dev/null +++ b/doc/api/features_core_data_constants_const_sorters/ConstSorters-class.html @@ -0,0 +1,259 @@ + + + + + + + + ConstSorters class - const_sorters library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    ConstSorters
    + +
    + +
    + + +
    +
    +

    ConstSorters class + Null safety + +

    + + + + + + +
    +

    Constructors

    + +
    +
    + ConstSorters() +
    +
    + +
    +
    +
    + +
    +

    Properties

    + +
    +
    + hashCode + int + +
    +
    + The hash code for this object. +
    read-only, inherited
    + +
    + +
    + runtimeType + Type + +
    +
    + A representation of the runtime type of the object. +
    read-only, inherited
    + +
    + +
    +
    + + +
    +

    Methods

    +
    +
    + noSuchMethod(Invocation invocation) + → dynamic + + + +
    +
    + Invoked when a non-existent method or property is accessed. +
    inherited
    + +
    + +
    + toString() + String + + + +
    +
    + A string representation of this object. +
    inherited
    + +
    + +
    +
    + +
    +

    Operators

    +
    +
    + operator ==(Object other) + bool + + + +
    +
    + The equality operator. +
    inherited
    + +
    + +
    +
    + + +
    +

    Static Methods

    +
    +
    + stringsSimilarityTarget(String a, String b, {required String targetWord}) + int + + + +
    +
    + Uses Dice's Coefficient as a similarity metric, for a 2-way comparison, between a targetWord +and given words. + + +
    + +
    +
    + + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_constants_const_sorters/ConstSorters/ConstSorters.html b/doc/api/features_core_data_constants_const_sorters/ConstSorters/ConstSorters.html new file mode 100644 index 0000000..92ceef0 --- /dev/null +++ b/doc/api/features_core_data_constants_const_sorters/ConstSorters/ConstSorters.html @@ -0,0 +1,131 @@ + + + + + + + + ConstSorters constructor - ConstSorters - const_sorters library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    ConstSorters
    + +
    + +
    + + +
    +
    +

    ConstSorters constructor + Null safety +

    + +
    + ConstSorters() +
    + + + + + + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_constants_const_sorters/ConstSorters/stringsSimilarityTarget.html b/doc/api/features_core_data_constants_const_sorters/ConstSorters/stringsSimilarityTarget.html new file mode 100644 index 0000000..62a2967 --- /dev/null +++ b/doc/api/features_core_data_constants_const_sorters/ConstSorters/stringsSimilarityTarget.html @@ -0,0 +1,148 @@ + + + + + + + + stringsSimilarityTarget method - ConstSorters class - const_sorters library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    stringsSimilarityTarget
    + +
    + +
    + + +
    +
    +

    stringsSimilarityTarget method + Null safety +

    + +
    + + +int +stringsSimilarityTarget(
    1. String a,
    2. +
    3. String b,
    4. +
    5. {required String targetWord}
    6. +
    ) + + + +
    + +
    +

    Uses Dice's Coefficient as a similarity metric, for a 2-way comparison, between a targetWord +and given words.

    +
    + + + +
    +

    Implementation

    +
    static int stringsSimilarityTarget(String a, String b, {required String targetWord}) =>
    +    a.similarityTo(targetWord).compareTo(b.similarityTo(targetWord));
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_constants_const_sorters/features_core_data_constants_const_sorters-library.html b/doc/api/features_core_data_constants_const_sorters/features_core_data_constants_const_sorters-library.html new file mode 100644 index 0000000..c1ee5f4 --- /dev/null +++ b/doc/api/features_core_data_constants_const_sorters/features_core_data_constants_const_sorters-library.html @@ -0,0 +1,190 @@ + + + + + + + + const_sorters library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    const_sorters
    + +
    + +
    + + +
    +
    +

    const_sorters library + Null safety + +

    + + + + +
    +

    Classes

    + +
    +
    + ConstSorters + +
    +
    + +
    + +
    +
    + + + + + + + + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_constants_const_text/ConstText-class.html b/doc/api/features_core_data_constants_const_text/ConstText-class.html new file mode 100644 index 0000000..69cb18c --- /dev/null +++ b/doc/api/features_core_data_constants_const_text/ConstText-class.html @@ -0,0 +1,258 @@ + + + + + + + + ConstText class - const_text library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    ConstText
    + +
    + +
    + + +
    +
    +

    ConstText class + Null safety + +

    + + + + + + +
    +

    Constructors

    + +
    +
    + ConstText() +
    +
    + +
    +
    +
    + +
    +

    Properties

    + +
    +
    + hashCode + int + +
    +
    + The hash code for this object. +
    read-only, inherited
    + +
    + +
    + runtimeType + Type + +
    +
    + A representation of the runtime type of the object. +
    read-only, inherited
    + +
    + +
    +
    + + +
    +

    Methods

    +
    +
    + noSuchMethod(Invocation invocation) + → dynamic + + + +
    +
    + Invoked when a non-existent method or property is accessed. +
    inherited
    + +
    + +
    + toString() + String + + + +
    +
    + A string representation of this object. +
    inherited
    + +
    + +
    +
    + +
    +

    Operators

    +
    +
    + operator ==(Object other) + bool + + + +
    +
    + The equality operator. +
    inherited
    + +
    + +
    +
    + + +
    +

    Static Methods

    +
    +
    + imageOverlayTextStyle(BuildContext context) + TextStyle + + + +
    +
    + + + +
    + +
    +
    + + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_constants_const_text/ConstText/ConstText.html b/doc/api/features_core_data_constants_const_text/ConstText/ConstText.html new file mode 100644 index 0000000..0b18700 --- /dev/null +++ b/doc/api/features_core_data_constants_const_text/ConstText/ConstText.html @@ -0,0 +1,131 @@ + + + + + + + + ConstText constructor - ConstText - const_text library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    ConstText
    + +
    + +
    + + +
    +
    +

    ConstText constructor + Null safety +

    + +
    + ConstText() +
    + + + + + + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_constants_const_text/ConstText/imageOverlayTextStyle.html b/doc/api/features_core_data_constants_const_text/ConstText/imageOverlayTextStyle.html new file mode 100644 index 0000000..495236d --- /dev/null +++ b/doc/api/features_core_data_constants_const_text/ConstText/imageOverlayTextStyle.html @@ -0,0 +1,141 @@ + + + + + + + + imageOverlayTextStyle method - ConstText class - const_text library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    imageOverlayTextStyle
    + +
    + +
    + + +
    +
    +

    imageOverlayTextStyle method + Null safety +

    + +
    + + +TextStyle +imageOverlayTextStyle(
    1. BuildContext context
    2. +
    ) + + + +
    + + + + +
    +

    Implementation

    +
    static TextStyle imageOverlayTextStyle(BuildContext context) => _imageOverlayTextStyle;
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_constants_const_text/features_core_data_constants_const_text-library.html b/doc/api/features_core_data_constants_const_text/features_core_data_constants_const_text-library.html new file mode 100644 index 0000000..00261c5 --- /dev/null +++ b/doc/api/features_core_data_constants_const_text/features_core_data_constants_const_text-library.html @@ -0,0 +1,190 @@ + + + + + + + + const_text library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    const_text
    + +
    + +
    + + +
    +
    +

    const_text library + Null safety + +

    + + + + +
    +

    Classes

    + +
    +
    + ConstText + +
    +
    + +
    + +
    +
    + + + + + + + + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_constants_const_values/ConstValues-class.html b/doc/api/features_core_data_constants_const_values/ConstValues-class.html new file mode 100644 index 0000000..5de5ece --- /dev/null +++ b/doc/api/features_core_data_constants_const_values/ConstValues-class.html @@ -0,0 +1,357 @@ + + + + + + + + ConstValues class - const_values library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    ConstValues
    + +
    + +
    + + +
    +
    +

    ConstValues class + Null safety + +

    + + + + + + +
    +

    Constructors

    + +
    +
    + ConstValues() +
    +
    + +
    +
    +
    + +
    +

    Properties

    + +
    +
    + hashCode + int + +
    +
    + The hash code for this object. +
    read-only, inherited
    + +
    + +
    + runtimeType + Type + +
    +
    + A representation of the runtime type of the object. +
    read-only, inherited
    + +
    + +
    +
    + + +
    +

    Methods

    +
    +
    + noSuchMethod(Invocation invocation) + → dynamic + + + +
    +
    + Invoked when a non-existent method or property is accessed. +
    inherited
    + +
    + +
    + toString() + String + + + +
    +
    + A string representation of this object. +
    inherited
    + +
    + +
    +
    + +
    +

    Operators

    +
    +
    + operator ==(Object other) + bool + + + +
    +
    + The equality operator. +
    inherited
    + +
    + +
    +
    + + + + +
    +

    Constants

    + +
    +
    + defaultEmulatedLatencyMillis + → const int + + +
    +
    + + + +
    + 75 +
    +
    + +
    + httpsScheme + → const String + + +
    +
    + + + +
    + 'https' +
    +
    + +
    + imagesHostServer + → const String + + +
    +
    + + + +
    + 'source.unsplash.com' +
    +
    + +
    + imagesHostUrlPathSegments + → const List<String> + + +
    +
    + + + +
    + ['user', 'c_v_r'] +
    +
    + +
    + maxImageSize + → const int + + +
    +
    + + + +
    + 100 +
    +
    + +
    + minImageSize + → const int + + +
    +
    + + + +
    + 50 +
    +
    + +
    + numberOfImages + → const int + + +
    +
    + + + +
    + 25 +
    +
    + +
    +
    + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_constants_const_values/ConstValues/ConstValues.html b/doc/api/features_core_data_constants_const_values/ConstValues/ConstValues.html new file mode 100644 index 0000000..b59b617 --- /dev/null +++ b/doc/api/features_core_data_constants_const_values/ConstValues/ConstValues.html @@ -0,0 +1,137 @@ + + + + + + + + ConstValues constructor - ConstValues - const_values library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    ConstValues
    + +
    + +
    + + +
    +
    +

    ConstValues constructor + Null safety +

    + +
    + ConstValues() +
    + + + + + + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_constants_const_values/ConstValues/defaultEmulatedLatencyMillis-constant.html b/doc/api/features_core_data_constants_const_values/ConstValues/defaultEmulatedLatencyMillis-constant.html new file mode 100644 index 0000000..c64e8d6 --- /dev/null +++ b/doc/api/features_core_data_constants_const_values/ConstValues/defaultEmulatedLatencyMillis-constant.html @@ -0,0 +1,144 @@ + + + + + + + + defaultEmulatedLatencyMillis constant - ConstValues class - const_values library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    defaultEmulatedLatencyMillis
    + +
    + +
    + + +
    +
    +

    defaultEmulatedLatencyMillis constant + Null safety +

    + +
    + int + const defaultEmulatedLatencyMillis + + +
    + + + +
    +

    Implementation

    +
    static const int defaultEmulatedLatencyMillis = 75;
    +
    +
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_constants_const_values/ConstValues/httpsScheme-constant.html b/doc/api/features_core_data_constants_const_values/ConstValues/httpsScheme-constant.html new file mode 100644 index 0000000..dd1e392 --- /dev/null +++ b/doc/api/features_core_data_constants_const_values/ConstValues/httpsScheme-constant.html @@ -0,0 +1,144 @@ + + + + + + + + httpsScheme constant - ConstValues class - const_values library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    httpsScheme
    + +
    + +
    + + +
    +
    +

    httpsScheme constant + Null safety +

    + +
    + String + const httpsScheme + + +
    + + + +
    +

    Implementation

    +
    static const String httpsScheme = 'https';
    +
    +
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_constants_const_values/ConstValues/imagesHostServer-constant.html b/doc/api/features_core_data_constants_const_values/ConstValues/imagesHostServer-constant.html new file mode 100644 index 0000000..1f078a4 --- /dev/null +++ b/doc/api/features_core_data_constants_const_values/ConstValues/imagesHostServer-constant.html @@ -0,0 +1,144 @@ + + + + + + + + imagesHostServer constant - ConstValues class - const_values library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    imagesHostServer
    + +
    + +
    + + +
    +
    +

    imagesHostServer constant + Null safety +

    + +
    + String + const imagesHostServer + + +
    + + + +
    +

    Implementation

    +
    static const String imagesHostServer = 'source.unsplash.com';
    +
    +
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_constants_const_values/ConstValues/imagesHostUrlPathSegments-constant.html b/doc/api/features_core_data_constants_const_values/ConstValues/imagesHostUrlPathSegments-constant.html new file mode 100644 index 0000000..e186787 --- /dev/null +++ b/doc/api/features_core_data_constants_const_values/ConstValues/imagesHostUrlPathSegments-constant.html @@ -0,0 +1,144 @@ + + + + + + + + imagesHostUrlPathSegments constant - ConstValues class - const_values library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    imagesHostUrlPathSegments
    + +
    + +
    + + +
    +
    +

    imagesHostUrlPathSegments constant + Null safety +

    + +
    + List<String> + const imagesHostUrlPathSegments + + +
    + + + +
    +

    Implementation

    +
    static const List<String> imagesHostUrlPathSegments = ['user', 'c_v_r'];
    +
    +
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_constants_const_values/ConstValues/maxImageSize-constant.html b/doc/api/features_core_data_constants_const_values/ConstValues/maxImageSize-constant.html new file mode 100644 index 0000000..d31c64f --- /dev/null +++ b/doc/api/features_core_data_constants_const_values/ConstValues/maxImageSize-constant.html @@ -0,0 +1,144 @@ + + + + + + + + maxImageSize constant - ConstValues class - const_values library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    maxImageSize
    + +
    + +
    + + +
    +
    +

    maxImageSize constant + Null safety +

    + +
    + int + const maxImageSize + + +
    + + + +
    +

    Implementation

    +
    static const int maxImageSize = 100;
    +
    +
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_constants_const_values/ConstValues/minImageSize-constant.html b/doc/api/features_core_data_constants_const_values/ConstValues/minImageSize-constant.html new file mode 100644 index 0000000..aee54b0 --- /dev/null +++ b/doc/api/features_core_data_constants_const_values/ConstValues/minImageSize-constant.html @@ -0,0 +1,144 @@ + + + + + + + + minImageSize constant - ConstValues class - const_values library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    minImageSize
    + +
    + +
    + + +
    +
    +

    minImageSize constant + Null safety +

    + +
    + int + const minImageSize + + +
    + + + +
    +

    Implementation

    +
    static const int minImageSize = 50;
    +
    +
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_constants_const_values/ConstValues/numberOfImages-constant.html b/doc/api/features_core_data_constants_const_values/ConstValues/numberOfImages-constant.html new file mode 100644 index 0000000..97c60bd --- /dev/null +++ b/doc/api/features_core_data_constants_const_values/ConstValues/numberOfImages-constant.html @@ -0,0 +1,144 @@ + + + + + + + + numberOfImages constant - ConstValues class - const_values library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    numberOfImages
    + +
    + +
    + + +
    +
    +

    numberOfImages constant + Null safety +

    + +
    + int + const numberOfImages + + +
    + + + +
    +

    Implementation

    +
    static const int numberOfImages = 25;
    +
    +
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_constants_const_values/features_core_data_constants_const_values-library.html b/doc/api/features_core_data_constants_const_values/features_core_data_constants_const_values-library.html new file mode 100644 index 0000000..23c4ead --- /dev/null +++ b/doc/api/features_core_data_constants_const_values/features_core_data_constants_const_values-library.html @@ -0,0 +1,190 @@ + + + + + + + + const_values library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    const_values
    + +
    + +
    + + +
    +
    +

    const_values library + Null safety + +

    + + + + +
    +

    Classes

    + +
    +
    + ConstValues + +
    +
    + +
    + +
    +
    + + + + + + + + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_enums_view_model_state/ViewModelState.html b/doc/api/features_core_data_enums_view_model_state/ViewModelState.html new file mode 100644 index 0000000..7a53041 --- /dev/null +++ b/doc/api/features_core_data_enums_view_model_state/ViewModelState.html @@ -0,0 +1,371 @@ + + + + + + + + ViewModelState enum - view_model_state library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    ViewModelState
    + +
    + +
    + + +
    +
    + +

    + ViewModelState + enum + Null safety + + +

    +
    + + + + +
    +
    + +
    Inheritance
    +
    + +
    + + + + +
    +
    + + +
    +

    Constructors

    + +
    +
    + ViewModelState() +
    +
    + +
    const
    +
    +
    +
    + +
    +

    Values

    + +
    +
    + isInitialising + → const ViewModelState + + +
    +
    + + + +
    + ViewModelState() +
    +
    + +
    + isInitialised + → const ViewModelState + + +
    +
    + + + +
    + ViewModelState() +
    +
    + +
    + isBusy + → const ViewModelState + + +
    +
    + + + +
    + ViewModelState() +
    +
    + +
    + hasError + → const ViewModelState + + +
    +
    + + + +
    + ViewModelState() +
    +
    + +
    +
    + +
    +

    Properties

    + +
    +
    + hashCode + int + +
    +
    + The hash code for this object. +
    read-only, inherited
    + +
    + +
    + index + int + +
    +
    + A numeric identifier for the enumerated value. +
    read-only, inherited
    + +
    + +
    + runtimeType + Type + +
    +
    + A representation of the runtime type of the object. +
    read-only, inherited
    + +
    + +
    +
    + + +
    +

    Methods

    +
    +
    + noSuchMethod(Invocation invocation) + → dynamic + + + +
    +
    + Invoked when a non-existent method or property is accessed. +
    inherited
    + +
    + +
    + toString() + String + + + +
    +
    + A string representation of this object. +
    inherited
    + +
    + +
    +
    + +
    +

    Operators

    +
    +
    + operator ==(Object other) + bool + + + +
    +
    + The equality operator. +
    inherited
    + +
    + +
    +
    + + + + +
    +

    Constants

    + +
    +
    + values + → const List<ViewModelState> + + +
    +
    + A constant List of the values in this enum, in order of their declaration. + + +
    + [isInitialising, isInitialised, isBusy, hasError] +
    +
    + +
    +
    +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_enums_view_model_state/ViewModelState/ViewModelState.html b/doc/api/features_core_data_enums_view_model_state/ViewModelState/ViewModelState.html new file mode 100644 index 0000000..681996c --- /dev/null +++ b/doc/api/features_core_data_enums_view_model_state/ViewModelState/ViewModelState.html @@ -0,0 +1,137 @@ + + + + + + + + ViewModelState constructor - ViewModelState - view_model_state library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    ViewModelState
    + +
    + +
    + + +
    +
    +

    ViewModelState constructor + Null safety +

    + +
    const + ViewModelState() +
    + + + + + + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_enums_view_model_state/ViewModelState/values-constant.html b/doc/api/features_core_data_enums_view_model_state/ViewModelState/values-constant.html new file mode 100644 index 0000000..fcd71fd --- /dev/null +++ b/doc/api/features_core_data_enums_view_model_state/ViewModelState/values-constant.html @@ -0,0 +1,141 @@ + + + + + + + + values constant - ViewModelState extension - view_model_state library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    values
    + +
    + +
    + + +
    +
    +

    values constant + Null safety +

    + +
    + List<ViewModelState> + const values + + +
    + +
    +

    A constant List of the values in this enum, in order of their declaration.

    +
    + + + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_enums_view_model_state/features_core_data_enums_view_model_state-library.html b/doc/api/features_core_data_enums_view_model_state/features_core_data_enums_view_model_state-library.html new file mode 100644 index 0000000..80f3818 --- /dev/null +++ b/doc/api/features_core_data_enums_view_model_state/features_core_data_enums_view_model_state-library.html @@ -0,0 +1,190 @@ + + + + + + + + view_model_state library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    view_model_state
    + +
    + +
    + + +
    +
    +

    view_model_state library + Null safety + +

    + + + + + + + + + + +
    +

    Enums

    + +
    +
    + ViewModelState + +
    +
    + +
    + +
    +
    + + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_extensions_context_extensions/DarkMode.html b/doc/api/features_core_data_extensions_context_extensions/DarkMode.html new file mode 100644 index 0000000..690d236 --- /dev/null +++ b/doc/api/features_core_data_extensions_context_extensions/DarkMode.html @@ -0,0 +1,186 @@ + + + + + + + + DarkMode extension - context_extensions library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    DarkMode
    + +
    + +
    + + +
    +
    +

    DarkMode extension + Null safety + +

    + + + +
    +
    +
    on
    +
    + +
    +
    + +
    + +
    +

    Properties

    + +
    +
    + height + double + +
    +
    + +
    read-only
    + +
    + +
    + isDarkMode + bool + +
    +
    + is dark mode currently enabled? +
    read-only
    + +
    + +
    + width + double + +
    +
    + +
    read-only
    + +
    + +
    +
    + + + + + + + + +
    + + + + + +
    + + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_extensions_context_extensions/DarkMode/height.html b/doc/api/features_core_data_extensions_context_extensions/DarkMode/height.html new file mode 100644 index 0000000..a89b691 --- /dev/null +++ b/doc/api/features_core_data_extensions_context_extensions/DarkMode/height.html @@ -0,0 +1,134 @@ + + + + + + + + height property - DarkMode extension - context_extensions library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    height
    + +
    + +
    + + +
    +
    +

    height property + Null safety +

    + + + +
    + +
    + double + height + + +
    + + + + +
    +

    Implementation

    +
    double get height => MediaQuery.of(this).size.height;
    +
    + +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_extensions_context_extensions/DarkMode/isDarkMode.html b/doc/api/features_core_data_extensions_context_extensions/DarkMode/isDarkMode.html new file mode 100644 index 0000000..d0c6801 --- /dev/null +++ b/doc/api/features_core_data_extensions_context_extensions/DarkMode/isDarkMode.html @@ -0,0 +1,139 @@ + + + + + + + + isDarkMode property - DarkMode extension - context_extensions library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    isDarkMode
    + +
    + +
    + + +
    +
    +

    isDarkMode property + Null safety +

    + + + +
    + +
    + bool + isDarkMode + + +
    + + +
    +

    is dark mode currently enabled?

    +

    Using the context version in release throws exception.

    +
    + + +
    +

    Implementation

    +
    bool get isDarkMode =>
    +    WidgetsBinding.instance.platformDispatcher.platformBrightness == Brightness.dark;
    +
    + +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_extensions_context_extensions/DarkMode/width.html b/doc/api/features_core_data_extensions_context_extensions/DarkMode/width.html new file mode 100644 index 0000000..58f220a --- /dev/null +++ b/doc/api/features_core_data_extensions_context_extensions/DarkMode/width.html @@ -0,0 +1,134 @@ + + + + + + + + width property - DarkMode extension - context_extensions library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    width
    + +
    + +
    + + +
    +
    +

    width property + Null safety +

    + + + +
    + +
    + double + width + + +
    + + + + +
    +

    Implementation

    +
    double get width => MediaQuery.of(this).size.width;
    +
    + +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_extensions_context_extensions/features_core_data_extensions_context_extensions-library.html b/doc/api/features_core_data_extensions_context_extensions/features_core_data_extensions_context_extensions-library.html new file mode 100644 index 0000000..1cd1224 --- /dev/null +++ b/doc/api/features_core_data_extensions_context_extensions/features_core_data_extensions_context_extensions-library.html @@ -0,0 +1,191 @@ + + + + + + + + context_extensions library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    context_extensions
    + +
    + +
    + + +
    +
    +

    context_extensions library + Null safety + +

    + + + + + + +
    +

    Extensions

    + +
    +
    + DarkMode + +
    +
    + +
    + + +
    +
    + + + + + + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_extensions_dio_extensions/ResponseExtensions.html b/doc/api/features_core_data_extensions_dio_extensions/ResponseExtensions.html new file mode 100644 index 0000000..8175beb --- /dev/null +++ b/doc/api/features_core_data_extensions_dio_extensions/ResponseExtensions.html @@ -0,0 +1,162 @@ + + + + + + + + ResponseExtensions extension - dio_extensions library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    ResponseExtensions
    + +
    + +
    + + +
    +
    +

    ResponseExtensions extension + Null safety + +

    + + + +
    +
    +
    on
    +
    + +
    +
    + +
    + +
    +

    Properties

    + +
    +
    + isSuccessful + bool + +
    +
    + Shorthand for getting response's successful state. +
    read-only
    + +
    + +
    +
    + + + + + + + + +
    + + + + + +
    + + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_extensions_dio_extensions/ResponseExtensions/isSuccessful.html b/doc/api/features_core_data_extensions_dio_extensions/ResponseExtensions/isSuccessful.html new file mode 100644 index 0000000..cf2e678 --- /dev/null +++ b/doc/api/features_core_data_extensions_dio_extensions/ResponseExtensions/isSuccessful.html @@ -0,0 +1,135 @@ + + + + + + + + isSuccessful property - ResponseExtensions extension - dio_extensions library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    isSuccessful
    + +
    + +
    + + +
    +
    +

    isSuccessful property + Null safety +

    + + + +
    + +
    + bool + isSuccessful + + +
    + + +
    +

    Shorthand for getting response's successful state.

    +
    + + +
    +

    Implementation

    +
    bool get isSuccessful => (data as Map)['response'];
    +
    + +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_extensions_dio_extensions/features_core_data_extensions_dio_extensions-library.html b/doc/api/features_core_data_extensions_dio_extensions/features_core_data_extensions_dio_extensions-library.html new file mode 100644 index 0000000..35f9c52 --- /dev/null +++ b/doc/api/features_core_data_extensions_dio_extensions/features_core_data_extensions_dio_extensions-library.html @@ -0,0 +1,191 @@ + + + + + + + + dio_extensions library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    dio_extensions
    + +
    + +
    + + +
    +
    +

    dio_extensions library + Null safety + +

    + + + + + + +
    +

    Extensions

    + +
    +
    + ResponseExtensions + +
    +
    + +
    + + +
    +
    + + + + + + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_extensions_iterable_extensions/IterableExtensions.html b/doc/api/features_core_data_extensions_iterable_extensions/IterableExtensions.html new file mode 100644 index 0000000..c2452bd --- /dev/null +++ b/doc/api/features_core_data_extensions_iterable_extensions/IterableExtensions.html @@ -0,0 +1,162 @@ + + + + + + + + IterableExtensions extension - iterable_extensions library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    IterableExtensions
    + +
    + +
    + + +
    +
    +

    IterableExtensions<T> extension + Null safety + +

    + + + +
    +
    +
    on
    +
    + +
    +
    + +
    + +
    +

    Properties

    + +
    +
    + deepCopy + Iterable<T> + +
    +
    + +
    read-only
    + +
    + +
    +
    + + + + + + + + +
    + + + + + +
    + + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_extensions_iterable_extensions/IterableExtensions/deepCopy.html b/doc/api/features_core_data_extensions_iterable_extensions/IterableExtensions/deepCopy.html new file mode 100644 index 0000000..6166e14 --- /dev/null +++ b/doc/api/features_core_data_extensions_iterable_extensions/IterableExtensions/deepCopy.html @@ -0,0 +1,132 @@ + + + + + + + + deepCopy property - IterableExtensions extension - iterable_extensions library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    deepCopy
    + +
    + +
    + + +
    +
    +

    deepCopy property + Null safety +

    + + + +
    + +
    + Iterable<T> + deepCopy + + +
    + + + + +
    +

    Implementation

    +
    Iterable<T> get deepCopy => toList(growable: false);
    +
    + +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_extensions_iterable_extensions/features_core_data_extensions_iterable_extensions-library.html b/doc/api/features_core_data_extensions_iterable_extensions/features_core_data_extensions_iterable_extensions-library.html new file mode 100644 index 0000000..a55f976 --- /dev/null +++ b/doc/api/features_core_data_extensions_iterable_extensions/features_core_data_extensions_iterable_extensions-library.html @@ -0,0 +1,191 @@ + + + + + + + + iterable_extensions library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    iterable_extensions
    + +
    + +
    + + +
    +
    +

    iterable_extensions library + Null safety + +

    + + + + + + +
    +

    Extensions

    + +
    +
    + IterableExtensions + +
    +
    + +
    + + +
    +
    + + + + + + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_extensions_list_extensions/ListExtensions.html b/doc/api/features_core_data_extensions_list_extensions/ListExtensions.html new file mode 100644 index 0000000..0079e0c --- /dev/null +++ b/doc/api/features_core_data_extensions_list_extensions/ListExtensions.html @@ -0,0 +1,162 @@ + + + + + + + + ListExtensions extension - list_extensions library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    ListExtensions
    + +
    + +
    + + +
    +
    +

    ListExtensions<T> extension + Null safety + +

    + + + +
    +
    +
    on
    +
    + +
    +
    + +
    + +
    +

    Properties

    + +
    +
    + deepCopy + List<T> + +
    +
    + +
    read-only
    + +
    + +
    +
    + + + + + + + + +
    + + + + + +
    + + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_extensions_list_extensions/ListExtensions/deepCopy.html b/doc/api/features_core_data_extensions_list_extensions/ListExtensions/deepCopy.html new file mode 100644 index 0000000..7f19c70 --- /dev/null +++ b/doc/api/features_core_data_extensions_list_extensions/ListExtensions/deepCopy.html @@ -0,0 +1,132 @@ + + + + + + + + deepCopy property - ListExtensions extension - list_extensions library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    deepCopy
    + +
    + +
    + + +
    +
    +

    deepCopy property + Null safety +

    + + + +
    + +
    + List<T> + deepCopy + + +
    + + + + +
    +

    Implementation

    +
    List<T> get deepCopy => [...this];
    +
    + +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_extensions_list_extensions/features_core_data_extensions_list_extensions-library.html b/doc/api/features_core_data_extensions_list_extensions/features_core_data_extensions_list_extensions-library.html new file mode 100644 index 0000000..c6a3370 --- /dev/null +++ b/doc/api/features_core_data_extensions_list_extensions/features_core_data_extensions_list_extensions-library.html @@ -0,0 +1,191 @@ + + + + + + + + list_extensions library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    list_extensions
    + +
    + +
    + + +
    +
    +

    list_extensions library + Null safety + +

    + + + + + + +
    +

    Extensions

    + +
    +
    + ListExtensions + +
    +
    + +
    + + +
    +
    + + + + + + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_extensions_map_extensions/LinkedHashMapExtensions.html b/doc/api/features_core_data_extensions_map_extensions/LinkedHashMapExtensions.html new file mode 100644 index 0000000..4e1b50d --- /dev/null +++ b/doc/api/features_core_data_extensions_map_extensions/LinkedHashMapExtensions.html @@ -0,0 +1,165 @@ + + + + + + + + LinkedHashMapExtensions extension - map_extensions library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    LinkedHashMapExtensions
    + +
    + +
    + + +
    +
    +

    LinkedHashMapExtensions<A, B> extension + Null safety + +

    + + + +
    +
    +
    on
    +
    + +
    +
    + +
    + + + +
    +

    Methods

    +
    +
    + updateValueAt({required int valueIndex, required B newValue}) + → void + + + +
    +
    + Updates the value at valueIndex to newValue, in addition to preserving the order. + + +
    + +
    +
    + + + + + + +
    + + + + + +
    + + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_extensions_map_extensions/LinkedHashMapExtensions/updateValueAt.html b/doc/api/features_core_data_extensions_map_extensions/LinkedHashMapExtensions/updateValueAt.html new file mode 100644 index 0000000..660fed3 --- /dev/null +++ b/doc/api/features_core_data_extensions_map_extensions/LinkedHashMapExtensions/updateValueAt.html @@ -0,0 +1,137 @@ + + + + + + + + updateValueAt method - LinkedHashMapExtensions extension - map_extensions library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    updateValueAt
    + +
    + +
    + + +
    +
    +

    updateValueAt method + Null safety +

    + +
    + + +void +updateValueAt(
    1. {required int valueIndex,
    2. +
    3. required B newValue}
    4. +
    ) + + + +
    + +
    +

    Updates the value at valueIndex to newValue, in addition to preserving the order.

    +
    + + + +
    +

    Implementation

    +
    void updateValueAt({
    +  required int valueIndex,
    +  required B newValue,
    +}) =>
    +    this[keys.toList()[valueIndex]] = newValue;
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_extensions_map_extensions/MapExtensions.html b/doc/api/features_core_data_extensions_map_extensions/MapExtensions.html new file mode 100644 index 0000000..0e93cb1 --- /dev/null +++ b/doc/api/features_core_data_extensions_map_extensions/MapExtensions.html @@ -0,0 +1,185 @@ + + + + + + + + MapExtensions extension - map_extensions library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    MapExtensions
    + +
    + +
    + + +
    +
    +

    MapExtensions<A, B> extension + Null safety + +

    + + + +
    +
    +
    on
    +
    +
      +
    • Map<A, B>
    • +
    +
    +
    + +
    + +
    +

    Properties

    + +
    +
    + deepCopy + Map<A, B> + +
    +
    + +
    read-only
    + +
    + +
    +
    + + +
    +

    Methods

    +
    +
    + valuesByKeys({required Iterable<A> keys}) + Iterable<B> + + + +
    +
    + Returns the values of a Map at given keys indices. + + +
    + +
    +
    + + + + + + +
    + + + + + +
    + + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_extensions_map_extensions/MapExtensions/deepCopy.html b/doc/api/features_core_data_extensions_map_extensions/MapExtensions/deepCopy.html new file mode 100644 index 0000000..e8d8ac3 --- /dev/null +++ b/doc/api/features_core_data_extensions_map_extensions/MapExtensions/deepCopy.html @@ -0,0 +1,134 @@ + + + + + + + + deepCopy property - MapExtensions extension - map_extensions library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    deepCopy
    + +
    + +
    + + +
    +
    +

    deepCopy property + Null safety +

    + + + +
    + +
    + Map<A, B> + deepCopy + + +
    + + + + +
    +

    Implementation

    +
    Map<A, B> get deepCopy => {...this};
    +
    + +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_extensions_map_extensions/MapExtensions/valuesByKeys.html b/doc/api/features_core_data_extensions_map_extensions/MapExtensions/valuesByKeys.html new file mode 100644 index 0000000..9ff0c10 --- /dev/null +++ b/doc/api/features_core_data_extensions_map_extensions/MapExtensions/valuesByKeys.html @@ -0,0 +1,135 @@ + + + + + + + + valuesByKeys method - MapExtensions extension - map_extensions library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    valuesByKeys
    + +
    + +
    + + +
    +
    +

    valuesByKeys method + Null safety +

    + +
    + + +Iterable<B> +valuesByKeys(
    1. {required Iterable<A> keys}
    2. +
    ) + + + +
    + +
    +

    Returns the values of a Map at given keys indices.

    +
    + + + +
    +

    Implementation

    +
    Iterable<B> valuesByKeys({required Iterable<A> keys}) => keys.map((final key) => this[key]!);
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_extensions_map_extensions/features_core_data_extensions_map_extensions-library.html b/doc/api/features_core_data_extensions_map_extensions/features_core_data_extensions_map_extensions-library.html new file mode 100644 index 0000000..7bfc9b6 --- /dev/null +++ b/doc/api/features_core_data_extensions_map_extensions/features_core_data_extensions_map_extensions-library.html @@ -0,0 +1,201 @@ + + + + + + + + map_extensions library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    map_extensions
    + +
    + +
    + + +
    +
    +

    map_extensions library + Null safety + +

    + + + + + + +
    +

    Extensions

    + +
    +
    + LinkedHashMapExtensions + +
    +
    + +
    + + +
    + MapExtensions + +
    +
    + +
    + + +
    +
    + + + + + + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_extensions_object_extensions/AsCallback.html b/doc/api/features_core_data_extensions_object_extensions/AsCallback.html new file mode 100644 index 0000000..316dda6 --- /dev/null +++ b/doc/api/features_core_data_extensions_object_extensions/AsCallback.html @@ -0,0 +1,163 @@ + + + + + + + + AsCallback extension - object_extensions library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    AsCallback
    + +
    + +
    + + +
    +
    +

    AsCallback<T extends Object> extension + Null safety + +

    + + + +
    +
    +
    on
    +
    +
      +
    • T
    • +
    +
    +
    + +
    + +
    +

    Properties

    + +
    +
    + asCallback + → T Function() + +
    +
    + +
    read-only
    + +
    + +
    +
    + + + + + + + + +
    + + + + + +
    + + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_extensions_object_extensions/AsCallback/asCallback.html b/doc/api/features_core_data_extensions_object_extensions/AsCallback/asCallback.html new file mode 100644 index 0000000..d825a8d --- /dev/null +++ b/doc/api/features_core_data_extensions_object_extensions/AsCallback/asCallback.html @@ -0,0 +1,132 @@ + + + + + + + + asCallback property - AsCallback extension - object_extensions library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    asCallback
    + +
    + +
    + + +
    +
    +

    asCallback property + Null safety +

    + + + +
    + +
    + T Function() + asCallback + + +
    + + + + +
    +

    Implementation

    +
    T Function() get asCallback => () => this;
    +
    + +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_extensions_object_extensions/ObjectExtensions.html b/doc/api/features_core_data_extensions_object_extensions/ObjectExtensions.html new file mode 100644 index 0000000..a6c6a4a --- /dev/null +++ b/doc/api/features_core_data_extensions_object_extensions/ObjectExtensions.html @@ -0,0 +1,179 @@ + + + + + + + + ObjectExtensions extension - object_extensions library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    ObjectExtensions
    + +
    + +
    + + +
    +
    +

    ObjectExtensions extension + Null safety + +

    + + + +
    +
    +
    on
    +
    + +
    +
    + +
    + + + +
    +

    Methods

    +
    +
    + asNullableType<E>() + → E? + + + +
    +
    + + + +
    + +
    + asType<E>() + → E + + + +
    +
    + + + +
    + +
    +
    + + + + + + +
    + + + + + +
    + + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_extensions_object_extensions/ObjectExtensions/asNullableType.html b/doc/api/features_core_data_extensions_object_extensions/ObjectExtensions/asNullableType.html new file mode 100644 index 0000000..4204b61 --- /dev/null +++ b/doc/api/features_core_data_extensions_object_extensions/ObjectExtensions/asNullableType.html @@ -0,0 +1,129 @@ + + + + + + + + asNullableType method - ObjectExtensions extension - object_extensions library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    asNullableType
    + +
    + +
    + + +
    +
    +

    asNullableType<E> method + Null safety +

    + +
    + + +E? +asNullableType<E>() + + + +
    + + + + +
    +

    Implementation

    +
    E? asNullableType<E>() => this as E?;
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_extensions_object_extensions/ObjectExtensions/asType.html b/doc/api/features_core_data_extensions_object_extensions/ObjectExtensions/asType.html new file mode 100644 index 0000000..15bbf21 --- /dev/null +++ b/doc/api/features_core_data_extensions_object_extensions/ObjectExtensions/asType.html @@ -0,0 +1,129 @@ + + + + + + + + asType method - ObjectExtensions extension - object_extensions library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    asType
    + +
    + +
    + + +
    +
    +

    asType<E> method + Null safety +

    + +
    + + +E +asType<E>() + + + +
    + + + + +
    +

    Implementation

    +
    E asType<E>() => this as E;
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_extensions_object_extensions/features_core_data_extensions_object_extensions-library.html b/doc/api/features_core_data_extensions_object_extensions/features_core_data_extensions_object_extensions-library.html new file mode 100644 index 0000000..34220b7 --- /dev/null +++ b/doc/api/features_core_data_extensions_object_extensions/features_core_data_extensions_object_extensions-library.html @@ -0,0 +1,201 @@ + + + + + + + + object_extensions library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    object_extensions
    + +
    + +
    + + +
    +
    +

    object_extensions library + Null safety + +

    + + + + + + +
    +

    Extensions

    + +
    +
    + AsCallback + +
    +
    + +
    + + +
    + ObjectExtensions + +
    +
    + +
    + + +
    +
    + + + + + + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_extensions_random_extensions/RandomExtensions.html b/doc/api/features_core_data_extensions_random_extensions/RandomExtensions.html new file mode 100644 index 0000000..944e079 --- /dev/null +++ b/doc/api/features_core_data_extensions_random_extensions/RandomExtensions.html @@ -0,0 +1,164 @@ + + + + + + + + RandomExtensions extension - random_extensions library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    RandomExtensions
    + +
    + +
    + + +
    +
    +

    RandomExtensions extension + Null safety + +

    + + + +
    +
    +
    on
    +
    + +
    +
    + +
    + + + +
    +

    Methods

    +
    +
    + nextIntInRange({required int min, required int max}) + int + + + +
    +
    + + + +
    + +
    +
    + + + + + + +
    + + + + + +
    + + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_extensions_random_extensions/RandomExtensions/nextIntInRange.html b/doc/api/features_core_data_extensions_random_extensions/RandomExtensions/nextIntInRange.html new file mode 100644 index 0000000..9059b75 --- /dev/null +++ b/doc/api/features_core_data_extensions_random_extensions/RandomExtensions/nextIntInRange.html @@ -0,0 +1,134 @@ + + + + + + + + nextIntInRange method - RandomExtensions extension - random_extensions library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    nextIntInRange
    + +
    + +
    + + +
    +
    +

    nextIntInRange method + Null safety +

    + +
    + + +int +nextIntInRange(
    1. {required int min,
    2. +
    3. required int max}
    4. +
    ) + + + +
    + + + + +
    +

    Implementation

    +
    int nextIntInRange({
    +  required int min,
    +  required int max,
    +}) =>
    +    min + nextInt(max + 1 - min);
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_extensions_random_extensions/features_core_data_extensions_random_extensions-library.html b/doc/api/features_core_data_extensions_random_extensions/features_core_data_extensions_random_extensions-library.html new file mode 100644 index 0000000..2f48c78 --- /dev/null +++ b/doc/api/features_core_data_extensions_random_extensions/features_core_data_extensions_random_extensions-library.html @@ -0,0 +1,191 @@ + + + + + + + + random_extensions library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    random_extensions
    + +
    + +
    + + +
    +
    +

    random_extensions library + Null safety + +

    + + + + + + +
    +

    Extensions

    + +
    +
    + RandomExtensions + +
    +
    + +
    + + +
    +
    + + + + + + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_extensions_stream_extensions/StreamExtensions.html b/doc/api/features_core_data_extensions_stream_extensions/StreamExtensions.html new file mode 100644 index 0000000..76d420b --- /dev/null +++ b/doc/api/features_core_data_extensions_stream_extensions/StreamExtensions.html @@ -0,0 +1,192 @@ + + + + + + + + StreamExtensions extension - stream_extensions library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    StreamExtensions
    + +
    + +
    + + +
    +
    +

    StreamExtensions<T> extension + Null safety + +

    + + + +
    +
    +
    on
    +
    + +
    +
    + +
    + + + +
    +

    Methods

    +
    +
    + toListenable() + Listenable + + + +
    +
    + + + +
    + +
    + toNullableValueNotifier({bool notifyWhen(T? previous, T? current)?}) + ValueListenable<T?> + + + +
    +
    + + + +
    + +
    + toValueNotifier(T initialValue, {bool notifyWhen(T previous, T current)?}) + ValueListenable<T> + + + +
    +
    + + + +
    + +
    +
    + + + + + + +
    + + + + + +
    + + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_extensions_stream_extensions/StreamExtensions/toListenable.html b/doc/api/features_core_data_extensions_stream_extensions/StreamExtensions/toListenable.html new file mode 100644 index 0000000..8f2f1b2 --- /dev/null +++ b/doc/api/features_core_data_extensions_stream_extensions/StreamExtensions/toListenable.html @@ -0,0 +1,137 @@ + + + + + + + + toListenable method - StreamExtensions extension - stream_extensions library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    toListenable
    + +
    + +
    + + +
    +
    +

    toListenable method + Null safety +

    + +
    + + +Listenable +toListenable() + + + +
    + + + + +
    +

    Implementation

    +
    Listenable toListenable() {
    +  final notifier = ChangeNotifier();
    +  listen((_) {
    +    // ignore: invalid_use_of_protected_member, invalid_use_of_visible_for_testing_member
    +    notifier.notifyListeners();
    +  });
    +  return notifier;
    +}
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_extensions_stream_extensions/StreamExtensions/toNullableValueNotifier.html b/doc/api/features_core_data_extensions_stream_extensions/StreamExtensions/toNullableValueNotifier.html new file mode 100644 index 0000000..ad3046b --- /dev/null +++ b/doc/api/features_core_data_extensions_stream_extensions/StreamExtensions/toNullableValueNotifier.html @@ -0,0 +1,144 @@ + + + + + + + + toNullableValueNotifier method - StreamExtensions extension - stream_extensions library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    toNullableValueNotifier
    + +
    + +
    + + +
    +
    +

    toNullableValueNotifier method + Null safety +

    + +
    + + +ValueListenable<T?> +toNullableValueNotifier(
    1. {bool notifyWhen(
      1. T? previous,
      2. +
      3. T? current
      4. +
      +)?}
    2. +
    ) + + + +
    + + + + +
    +

    Implementation

    +
    ValueListenable<T?> toNullableValueNotifier({
    +  bool Function(T? previous, T? current)? notifyWhen,
    +}) {
    +  final notifier = ValueNotifier<T?>(null);
    +  listen((value) {
    +    if (notifyWhen == null || notifyWhen(notifier.value, value)) {
    +      notifier.value = value;
    +    }
    +  });
    +  return notifier;
    +}
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_extensions_stream_extensions/StreamExtensions/toValueNotifier.html b/doc/api/features_core_data_extensions_stream_extensions/StreamExtensions/toValueNotifier.html new file mode 100644 index 0000000..2177a2c --- /dev/null +++ b/doc/api/features_core_data_extensions_stream_extensions/StreamExtensions/toValueNotifier.html @@ -0,0 +1,146 @@ + + + + + + + + toValueNotifier method - StreamExtensions extension - stream_extensions library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    toValueNotifier
    + +
    + +
    + + +
    +
    +

    toValueNotifier method + Null safety +

    + +
    + + +ValueListenable<T> +toValueNotifier(
    1. T initialValue,
    2. +
    3. {bool notifyWhen(
      1. T previous,
      2. +
      3. T current
      4. +
      +)?}
    4. +
    ) + + + +
    + + + + +
    +

    Implementation

    +
    ValueListenable<T> toValueNotifier(
    +  T initialValue, {
    +  bool Function(T previous, T current)? notifyWhen,
    +}) {
    +  final notifier = ValueNotifier<T>(initialValue);
    +  listen((value) {
    +    if (notifyWhen == null || notifyWhen(notifier.value, value)) {
    +      notifier.value = value;
    +    }
    +  });
    +  return notifier;
    +}
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_extensions_stream_extensions/features_core_data_extensions_stream_extensions-library.html b/doc/api/features_core_data_extensions_stream_extensions/features_core_data_extensions_stream_extensions-library.html new file mode 100644 index 0000000..578dc1c --- /dev/null +++ b/doc/api/features_core_data_extensions_stream_extensions/features_core_data_extensions_stream_extensions-library.html @@ -0,0 +1,191 @@ + + + + + + + + stream_extensions library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    stream_extensions
    + +
    + +
    + + +
    +
    +

    stream_extensions library + Null safety + +

    + + + + + + +
    +

    Extensions

    + +
    +
    + StreamExtensions + +
    +
    + +
    + + +
    +
    + + + + + + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_extensions_string_extensions/StringExtensions.html b/doc/api/features_core_data_extensions_string_extensions/StringExtensions.html new file mode 100644 index 0000000..eaaa110 --- /dev/null +++ b/doc/api/features_core_data_extensions_string_extensions/StringExtensions.html @@ -0,0 +1,164 @@ + + + + + + + + StringExtensions extension - string_extensions library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    StringExtensions
    + +
    + +
    + + +
    +
    +

    StringExtensions extension + Null safety + +

    + + + +
    +
    +
    on
    +
    + +
    +
    + +
    + + + +
    +

    Methods

    +
    +
    + containsAllCharacters({required String targetChars}) + bool + + + +
    +
    + Returns true if given word contains atleast all the characters in targetChars, and false otherwise + + +
    + +
    +
    + + + + + + +
    + + + + + +
    + + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_extensions_string_extensions/StringExtensions/containsAllCharacters.html b/doc/api/features_core_data_extensions_string_extensions/StringExtensions/containsAllCharacters.html new file mode 100644 index 0000000..70b9a71 --- /dev/null +++ b/doc/api/features_core_data_extensions_string_extensions/StringExtensions/containsAllCharacters.html @@ -0,0 +1,141 @@ + + + + + + + + containsAllCharacters method - StringExtensions extension - string_extensions library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    containsAllCharacters
    + +
    + +
    + + +
    +
    +

    containsAllCharacters method + Null safety +

    + +
    + + +bool +containsAllCharacters(
    1. {required String targetChars}
    2. +
    ) + + + +
    + +
    +

    Returns true if given word contains atleast all the characters in targetChars, and false otherwise

    +

    Very efficient O(n) instead of naive O(n*m)

    +
    + + + +
    +

    Implementation

    +
    bool containsAllCharacters({required String targetChars}) {
    +  final Set<String> characterSet = Set.from(targetChars.split(''));
    +  for (final testChar in split('')) {
    +    characterSet.remove(testChar);
    +    if (characterSet.isEmpty) return true;
    +  }
    +
    +  return false;
    +}
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_extensions_string_extensions/features_core_data_extensions_string_extensions-library.html b/doc/api/features_core_data_extensions_string_extensions/features_core_data_extensions_string_extensions-library.html new file mode 100644 index 0000000..49aa227 --- /dev/null +++ b/doc/api/features_core_data_extensions_string_extensions/features_core_data_extensions_string_extensions-library.html @@ -0,0 +1,191 @@ + + + + + + + + string_extensions library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    string_extensions
    + +
    + +
    + + +
    +
    +

    string_extensions library + Null safety + +

    + + + + + + +
    +

    Extensions

    + +
    +
    + StringExtensions + +
    +
    + +
    + + +
    +
    + + + + + + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_extensions_value_notifier_extensions/ValueNotifierBoolExtensions.html b/doc/api/features_core_data_extensions_value_notifier_extensions/ValueNotifierBoolExtensions.html new file mode 100644 index 0000000..61c482a --- /dev/null +++ b/doc/api/features_core_data_extensions_value_notifier_extensions/ValueNotifierBoolExtensions.html @@ -0,0 +1,164 @@ + + + + + + + + ValueNotifierBoolExtensions extension - value_notifier_extensions library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    ValueNotifierBoolExtensions
    + +
    + +
    + + +
    +
    +

    ValueNotifierBoolExtensions extension + Null safety + +

    + + + +
    +
    +
    on
    +
    + +
    +
    + +
    + + + +
    +

    Methods

    +
    +
    + flipValue() + → void + + + +
    +
    + + + +
    + +
    +
    + + + + + + +
    + + + + + +
    + + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_extensions_value_notifier_extensions/ValueNotifierBoolExtensions/flipValue.html b/doc/api/features_core_data_extensions_value_notifier_extensions/ValueNotifierBoolExtensions/flipValue.html new file mode 100644 index 0000000..c2244db --- /dev/null +++ b/doc/api/features_core_data_extensions_value_notifier_extensions/ValueNotifierBoolExtensions/flipValue.html @@ -0,0 +1,128 @@ + + + + + + + + flipValue method - ValueNotifierBoolExtensions extension - value_notifier_extensions library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    flipValue
    + +
    + +
    + + +
    +
    +

    flipValue method + Null safety +

    + +
    + + +void +flipValue() + + + +
    + + + + +
    +

    Implementation

    +
    void flipValue() => value = !value;
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_data_extensions_value_notifier_extensions/features_core_data_extensions_value_notifier_extensions-library.html b/doc/api/features_core_data_extensions_value_notifier_extensions/features_core_data_extensions_value_notifier_extensions-library.html new file mode 100644 index 0000000..302103c --- /dev/null +++ b/doc/api/features_core_data_extensions_value_notifier_extensions/features_core_data_extensions_value_notifier_extensions-library.html @@ -0,0 +1,191 @@ + + + + + + + + value_notifier_extensions library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    value_notifier_extensions
    + +
    + +
    + + +
    +
    +

    value_notifier_extensions library + Null safety + +

    + + + + + + +
    +

    Extensions

    + +
    +
    + ValueNotifierBoolExtensions + +
    +
    + +
    + + +
    +
    + + + + + + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_services_app_lifecycle_service/AddLifeCycleListener.html b/doc/api/features_core_services_app_lifecycle_service/AddLifeCycleListener.html new file mode 100644 index 0000000..ef2e775 --- /dev/null +++ b/doc/api/features_core_services_app_lifecycle_service/AddLifeCycleListener.html @@ -0,0 +1,129 @@ + + + + + + + + AddLifeCycleListener typedef - app_lifecycle_service library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    AddLifeCycleListener
    + +
    + +
    + + +
    +
    +

    AddLifeCycleListener typedef + Null safety + +

    + +
    + AddLifeCycleListener = + void Function({required void listener(AppLifecycleState appLifecycleState), required String tag, bool tryCallListenerOnAdd}) + +
    + + + + +
    +

    Implementation

    +
    typedef AddLifeCycleListener = void Function({
    +  required void Function(AppLifecycleState appLifecycleState) listener,
    +  required String tag,
    +  bool tryCallListenerOnAdd,
    +});
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_services_app_lifecycle_service/AppLifecycleService-class.html b/doc/api/features_core_services_app_lifecycle_service/AppLifecycleService-class.html new file mode 100644 index 0000000..42dae3b --- /dev/null +++ b/doc/api/features_core_services_app_lifecycle_service/AppLifecycleService-class.html @@ -0,0 +1,484 @@ + + + + + + + + AppLifecycleService class - app_lifecycle_service library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    AppLifecycleService
    + +
    + +
    + + +
    +
    +

    AppLifecycleService class + Null safety + +

    + + +
    +

    Used to observe the current app lifecycle state.

    +
    + + +
    +
    + + + + +
    Mixed in types
    +
    + +
    + + + + +
    +
    + + +
    +

    Constructors

    + +
    +
    + AppLifecycleService({required LoggingService loggingService}) +
    +
    + +
    +
    +
    + +
    +

    Properties

    + +
    +
    + appLifeCycleState + AppLifecycleState? + +
    +
    + +
    read-only
    + +
    + +
    + hashCode + int + +
    +
    + The hash code for this object. +
    read-only, inherited
    + +
    + +
    + runtimeType + Type + +
    +
    + A representation of the runtime type of the object. +
    read-only, inherited
    + +
    + +
    +
    + + +
    +

    Methods

    +
    +
    + addListener({required void listener(AppLifecycleState appLifecycleState), required String tag, bool tryCallListenerOnAdd = true}) + → void + + + +
    +
    + + + +
    + +
    + didChangeAccessibilityFeatures() + → void + + + +
    +
    + Called when the system changes the set of currently active accessibility +features. +
    inherited
    + +
    + +
    + didChangeAppLifecycleState(AppLifecycleState state) + → void + + + +
    +
    + Called when the system puts the app in the background or returns +the app to the foreground. +
    override
    + +
    + +
    + didChangeLocales(List<Locale>? locales) + → void + + + +
    +
    + Called when the system tells the app that the user's locale has +changed. For example, if the user changes the system language +settings. +
    inherited
    + +
    + +
    + didChangeMetrics() + → void + + + +
    +
    + Called when the application's dimensions change. For example, +when a phone is rotated. +
    inherited
    + +
    + +
    + didChangePlatformBrightness() + → void + + + +
    +
    + Called when the platform brightness changes. +
    inherited
    + +
    + +
    + didChangeTextScaleFactor() + → void + + + +
    +
    + Called when the platform's text scale factor changes. +
    inherited
    + +
    + +
    + didHaveMemoryPressure() + → void + + + +
    +
    + Called when the system is running low on memory. +
    inherited
    + +
    + +
    + didPopRoute() + Future<bool> + + + +
    +
    + Called when the system tells the app to pop the current route. +For example, on Android, this is called when the user presses +the back button. +
    inherited
    + +
    + +
    + didPushRoute(String route) + Future<bool> + + + +
    +
    + Called when the host tells the application to push a new route onto the +navigator. +
    inherited
    + +
    + +
    + didPushRouteInformation(RouteInformation routeInformation) + Future<bool> + + + +
    +
    + Called when the host tells the application to push a new +RouteInformation and a restoration state onto the router. +
    inherited
    + +
    + +
    + dispose() + Future<void> + + + +
    +
    + + + +
    + +
    + noSuchMethod(Invocation invocation) + → dynamic + + + +
    +
    + Invoked when a non-existent method or property is accessed. +
    inherited
    + +
    + +
    + removeListener({required String tag}) + Future<void> + + + +
    +
    + + + +
    + +
    + toString() + String + + + +
    +
    + A string representation of this object. +
    inherited
    + +
    + +
    +
    + +
    +

    Operators

    +
    +
    + operator ==(Object other) + bool + + + +
    +
    + The equality operator. +
    inherited
    + +
    + +
    +
    + +
    +

    Static Properties

    + +
    +
    + locate + AppLifecycleService + +
    +
    + +
    read-only
    + +
    + +
    +
    + + + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_services_app_lifecycle_service/AppLifecycleService/AppLifecycleService.html b/doc/api/features_core_services_app_lifecycle_service/AppLifecycleService/AppLifecycleService.html new file mode 100644 index 0000000..08d1009 --- /dev/null +++ b/doc/api/features_core_services_app_lifecycle_service/AppLifecycleService/AppLifecycleService.html @@ -0,0 +1,155 @@ + + + + + + + + AppLifecycleService constructor - AppLifecycleService - app_lifecycle_service library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    AppLifecycleService
    + +
    + +
    + + +
    +
    +

    AppLifecycleService constructor + Null safety +

    + +
    + AppLifecycleService(
    1. {required LoggingService loggingService}
    2. +
    ) +
    + + + + + +
    +

    Implementation

    +
    AppLifecycleService({
    +  required LoggingService loggingService,
    +}) : _loggingService = loggingService {
    +  WidgetsBinding.instance.addObserver(this);
    +  _appLifeCycleState = WidgetsBinding.instance.lifecycleState;
    +}
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_services_app_lifecycle_service/AppLifecycleService/addListener.html b/doc/api/features_core_services_app_lifecycle_service/AppLifecycleService/addListener.html new file mode 100644 index 0000000..b9f7677 --- /dev/null +++ b/doc/api/features_core_services_app_lifecycle_service/AppLifecycleService/addListener.html @@ -0,0 +1,181 @@ + + + + + + + + addListener method - AppLifecycleService class - app_lifecycle_service library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    addListener
    + +
    + +
    + + +
    +
    +

    addListener method + Null safety +

    + +
    + + +void +addListener(
    1. {required void listener(
      1. AppLifecycleState appLifecycleState
      2. +
      +),
    2. +
    3. required String tag,
    4. +
    5. bool tryCallListenerOnAdd = true}
    6. +
    ) + + + +
    + + + + +
    +

    Implementation

    +
    void addListener({
    +  required void Function(AppLifecycleState appLifecycleState) listener,
    +  required String tag,
    +  bool tryCallListenerOnAdd = true,
    +}) {
    +  try {
    +    if (_appLifecycleSubscriptions.containsKey(tag)) {
    +      _loggingService.warning('Tag already active, returning');
    +    } else {
    +      final message = 'Adding $tag appLifecycleState listener';
    +      _loggingService.info('$message..');
    +      if (_appLifeCycleState != null && tryCallListenerOnAdd) listener(_appLifeCycleState!);
    +      _appLifecycleSubscriptions[tag] = _lifecycleStateStreamController.stream.listen(listener);
    +      _loggingService.good('$message success!');
    +    }
    +  } catch (error, stackTrace) {
    +    _loggingService.error(
    +      'Something went wrong adding $tag appLifecycleState listener',
    +      error,
    +      stackTrace,
    +    );
    +  }
    +}
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_services_app_lifecycle_service/AppLifecycleService/appLifeCycleState.html b/doc/api/features_core_services_app_lifecycle_service/AppLifecycleService/appLifeCycleState.html new file mode 100644 index 0000000..9d7699e --- /dev/null +++ b/doc/api/features_core_services_app_lifecycle_service/AppLifecycleService/appLifeCycleState.html @@ -0,0 +1,157 @@ + + + + + + + + appLifeCycleState property - AppLifecycleService class - app_lifecycle_service library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    appLifeCycleState
    + +
    + +
    + + +
    +
    +

    appLifeCycleState property + Null safety +

    + + + +
    + +
    + AppLifecycleState? + appLifeCycleState + + +
    + + + + +
    +

    Implementation

    +
    AppLifecycleState? get appLifeCycleState => _appLifeCycleState;
    +
    + +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_services_app_lifecycle_service/AppLifecycleService/didChangeAppLifecycleState.html b/doc/api/features_core_services_app_lifecycle_service/AppLifecycleService/didChangeAppLifecycleState.html new file mode 100644 index 0000000..7830761 --- /dev/null +++ b/doc/api/features_core_services_app_lifecycle_service/AppLifecycleService/didChangeAppLifecycleState.html @@ -0,0 +1,181 @@ + + + + + + + + didChangeAppLifecycleState method - AppLifecycleService class - app_lifecycle_service library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    didChangeAppLifecycleState
    + +
    + +
    + + +
    +
    +

    didChangeAppLifecycleState method + Null safety +

    + +
    + +
    +
      +
    1. @override
    2. +
    +
    + +void +didChangeAppLifecycleState(
    1. AppLifecycleState state
    2. +
    ) + +
    override
    + +
    + +
    +

    Called when the system puts the app in the background or returns +the app to the foreground.

    +

    An example of implementing this method is provided in the class-level +documentation for the WidgetsBindingObserver class.

    +

    This method exposes notifications from SystemChannels.lifecycle.

    +
    + + + +
    +

    Implementation

    +
    @override
    +void didChangeAppLifecycleState(AppLifecycleState state) {
    +  try {
    +    _appLifeCycleState = state;
    +    _lifecycleStateStreamController.add(state);
    +  } catch (error, stackTrace) {
    +    _loggingService.error(
    +      'Something went wrong with ${state.name} inside the didChangeAppLifeCycleState method',
    +      error,
    +      stackTrace,
    +    );
    +  }
    +
    +  super.didChangeAppLifecycleState(state);
    +}
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_services_app_lifecycle_service/AppLifecycleService/dispose.html b/doc/api/features_core_services_app_lifecycle_service/AppLifecycleService/dispose.html new file mode 100644 index 0000000..809acfa --- /dev/null +++ b/doc/api/features_core_services_app_lifecycle_service/AppLifecycleService/dispose.html @@ -0,0 +1,162 @@ + + + + + + + + dispose method - AppLifecycleService class - app_lifecycle_service library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    dispose
    + +
    + +
    + + +
    +
    +

    dispose method + Null safety +

    + +
    + + +Future<void> +dispose() + + + +
    + + + + +
    +

    Implementation

    +
    Future<void> dispose() async {
    +  _loggingService.info('Disposing app lifecycle service..');
    +  WidgetsBinding.instance.removeObserver(this);
    +  for (final subscription in _appLifecycleSubscriptions.values) {
    +    await subscription.cancel();
    +  }
    +  _appLifecycleSubscriptions.clear();
    +  _loggingService.good('App lifecycle service disposed!');
    +}
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_services_app_lifecycle_service/AppLifecycleService/locate.html b/doc/api/features_core_services_app_lifecycle_service/AppLifecycleService/locate.html new file mode 100644 index 0000000..9d36205 --- /dev/null +++ b/doc/api/features_core_services_app_lifecycle_service/AppLifecycleService/locate.html @@ -0,0 +1,157 @@ + + + + + + + + locate property - AppLifecycleService class - app_lifecycle_service library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    locate
    + +
    + +
    + + +
    +
    +

    locate property + Null safety +

    + + + +
    + +
    + AppLifecycleService + locate + + +
    + + + + +
    +

    Implementation

    +
    static AppLifecycleService get locate => Locator.locate();
    +
    + +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_services_app_lifecycle_service/AppLifecycleService/removeListener.html b/doc/api/features_core_services_app_lifecycle_service/AppLifecycleService/removeListener.html new file mode 100644 index 0000000..649443b --- /dev/null +++ b/doc/api/features_core_services_app_lifecycle_service/AppLifecycleService/removeListener.html @@ -0,0 +1,174 @@ + + + + + + + + removeListener method - AppLifecycleService class - app_lifecycle_service library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    removeListener
    + +
    + +
    + + +
    +
    +

    removeListener method + Null safety +

    + +
    + + +Future<void> +removeListener(
    1. {required String tag}
    2. +
    ) + + + +
    + + + + +
    +

    Implementation

    +
    Future<void> removeListener({required String tag}) async {
    +  try {
    +    final message = 'Removing $tag appLifecycleState listener';
    +    _loggingService.info('$message..');
    +    final subscription = _appLifecycleSubscriptions[tag];
    +    if (subscription != null) {
    +      await subscription.cancel();
    +      _appLifecycleSubscriptions.remove(tag);
    +      _loggingService.good('$message success!');
    +    } else {
    +      _loggingService.warning('Subscription was not found');
    +    }
    +  } catch (error, stackTrace) {
    +    _loggingService.error(
    +      'Something went wrong removing $tag appLifecycleState listener',
    +      error,
    +      stackTrace,
    +    );
    +  }
    +}
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_services_app_lifecycle_service/RemoveLifeCycleListener.html b/doc/api/features_core_services_app_lifecycle_service/RemoveLifeCycleListener.html new file mode 100644 index 0000000..7b7ef1a --- /dev/null +++ b/doc/api/features_core_services_app_lifecycle_service/RemoveLifeCycleListener.html @@ -0,0 +1,125 @@ + + + + + + + + RemoveLifeCycleListener typedef - app_lifecycle_service library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    RemoveLifeCycleListener
    + +
    + +
    + + +
    +
    +

    RemoveLifeCycleListener typedef + Null safety + +

    + +
    + RemoveLifeCycleListener = + Future<void> Function({required String tag}) + +
    + + + + +
    +

    Implementation

    +
    typedef RemoveLifeCycleListener = Future<void> Function({required String tag});
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_services_app_lifecycle_service/features_core_services_app_lifecycle_service-library.html b/doc/api/features_core_services_app_lifecycle_service/features_core_services_app_lifecycle_service-library.html new file mode 100644 index 0000000..c1c93ad --- /dev/null +++ b/doc/api/features_core_services_app_lifecycle_service/features_core_services_app_lifecycle_service-library.html @@ -0,0 +1,227 @@ + + + + + + + + app_lifecycle_service library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    app_lifecycle_service
    + +
    + +
    + + +
    +
    +

    app_lifecycle_service library + Null safety + +

    + + + + +
    +

    Classes

    + +
    +
    + AppLifecycleService + +
    +
    + Used to observe the current app lifecycle state. +
    + +
    +
    + + + + + + + +
    +

    Typedefs

    + +
    + +
    + AddLifeCycleListener + = void Function({required void listener(AppLifecycleState appLifecycleState), required String tag, bool tryCallListenerOnAdd}) + + + +
    +
    + + + +
    + + +
    + RemoveLifeCycleListener + = Future<void> Function({required String tag}) + + + +
    +
    + + + +
    + +
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_services_connections_service/ConnectionsService-class.html b/doc/api/features_core_services_connections_service/ConnectionsService-class.html new file mode 100644 index 0000000..b7fdb3e --- /dev/null +++ b/doc/api/features_core_services_connections_service/ConnectionsService-class.html @@ -0,0 +1,298 @@ + + + + + + + + ConnectionsService class - connections_service library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    ConnectionsService
    + +
    + +
    + + +
    +
    +

    ConnectionsService class + Null safety + +

    + + +
    +

    Used to observe the current connection type and status.

    +
    + + + + +
    +

    Constructors

    + +
    +
    + ConnectionsService({required Connectivity connectivity, required InternetConnectionChecker internetConnectionChecker, required LoggingService loggingService}) +
    +
    + +
    +
    +
    + +
    +

    Properties

    + +
    +
    + connectivityResultListenable + ValueListenable<ConnectivityResult> + +
    +
    + +
    read-only
    + +
    + +
    + hashCode + int + +
    +
    + The hash code for this object. +
    read-only, inherited
    + +
    + +
    + internetConnectionStatusListenable + ValueListenable<InternetConnectionStatus> + +
    +
    + +
    read-only
    + +
    + +
    + runtimeType + Type + +
    +
    + A representation of the runtime type of the object. +
    read-only, inherited
    + +
    + +
    +
    + + +
    +

    Methods

    +
    +
    + dispose() + Future<void> + + + +
    +
    + + + +
    + +
    + noSuchMethod(Invocation invocation) + → dynamic + + + +
    +
    + Invoked when a non-existent method or property is accessed. +
    inherited
    + +
    + +
    + toString() + String + + + +
    +
    + A string representation of this object. +
    inherited
    + +
    + +
    +
    + +
    +

    Operators

    +
    +
    + operator ==(Object other) + bool + + + +
    +
    + The equality operator. +
    inherited
    + +
    + +
    +
    + +
    +

    Static Properties

    + +
    +
    + locate + ConnectionsService + +
    +
    + +
    read-only
    + +
    + +
    +
    + + + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_services_connections_service/ConnectionsService/ConnectionsService.html b/doc/api/features_core_services_connections_service/ConnectionsService/ConnectionsService.html new file mode 100644 index 0000000..15d70a1 --- /dev/null +++ b/doc/api/features_core_services_connections_service/ConnectionsService/ConnectionsService.html @@ -0,0 +1,149 @@ + + + + + + + + ConnectionsService constructor - ConnectionsService - connections_service library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    ConnectionsService
    + +
    + +
    + + +
    +
    +

    ConnectionsService constructor + Null safety +

    + +
    + ConnectionsService(
    1. {required Connectivity connectivity,
    2. +
    3. required InternetConnectionChecker internetConnectionChecker,
    4. +
    5. required LoggingService loggingService}
    6. +
    ) +
    + + + + + +
    +

    Implementation

    +
    ConnectionsService({
    +  required Connectivity connectivity,
    +  required InternetConnectionChecker internetConnectionChecker,
    +  required LoggingService loggingService,
    +})  : _internetConnectionChecker = internetConnectionChecker,
    +      _connectivity = connectivity,
    +      _loggingService = loggingService {
    +  _init();
    +}
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_services_connections_service/ConnectionsService/connectivityResultListenable.html b/doc/api/features_core_services_connections_service/ConnectionsService/connectivityResultListenable.html new file mode 100644 index 0000000..f94cd8c --- /dev/null +++ b/doc/api/features_core_services_connections_service/ConnectionsService/connectivityResultListenable.html @@ -0,0 +1,147 @@ + + + + + + + + connectivityResultListenable property - ConnectionsService class - connections_service library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    connectivityResultListenable
    + +
    + +
    + + +
    +
    +

    connectivityResultListenable property + Null safety +

    + + + +
    + +
    + ValueListenable<ConnectivityResult> + connectivityResultListenable + + +
    + + + + +
    +

    Implementation

    +
    ValueListenable<ConnectivityResult> get connectivityResultListenable =>
    +    _connectivityResultNotifier;
    +
    + +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_services_connections_service/ConnectionsService/dispose.html b/doc/api/features_core_services_connections_service/ConnectionsService/dispose.html new file mode 100644 index 0000000..4ddfc87 --- /dev/null +++ b/doc/api/features_core_services_connections_service/ConnectionsService/dispose.html @@ -0,0 +1,146 @@ + + + + + + + + dispose method - ConnectionsService class - connections_service library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    dispose
    + +
    + +
    + + +
    +
    +

    dispose method + Null safety +

    + +
    + + +Future<void> +dispose() + + + +
    + + + + +
    +

    Implementation

    +
    Future<void> dispose() async {
    +  _internetConnectionStatusNotifier.dispose();
    +  _connectivityResultNotifier.dispose();
    +}
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_services_connections_service/ConnectionsService/internetConnectionStatusListenable.html b/doc/api/features_core_services_connections_service/ConnectionsService/internetConnectionStatusListenable.html new file mode 100644 index 0000000..79268cf --- /dev/null +++ b/doc/api/features_core_services_connections_service/ConnectionsService/internetConnectionStatusListenable.html @@ -0,0 +1,147 @@ + + + + + + + + internetConnectionStatusListenable property - ConnectionsService class - connections_service library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    internetConnectionStatusListenable
    + +
    + +
    + + +
    +
    +

    internetConnectionStatusListenable property + Null safety +

    + + + +
    + +
    + ValueListenable<InternetConnectionStatus> + internetConnectionStatusListenable + + +
    + + + + +
    +

    Implementation

    +
    ValueListenable<InternetConnectionStatus> get internetConnectionStatusListenable =>
    +    _internetConnectionStatusNotifier;
    +
    + +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_services_connections_service/ConnectionsService/locate.html b/doc/api/features_core_services_connections_service/ConnectionsService/locate.html new file mode 100644 index 0000000..a421a3e --- /dev/null +++ b/doc/api/features_core_services_connections_service/ConnectionsService/locate.html @@ -0,0 +1,146 @@ + + + + + + + + locate property - ConnectionsService class - connections_service library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    locate
    + +
    + +
    + + +
    +
    +

    locate property + Null safety +

    + + + +
    + +
    + ConnectionsService + locate + + +
    + + + + +
    +

    Implementation

    +
    static ConnectionsService get locate => Locator.locate();
    +
    + +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_services_connections_service/features_core_services_connections_service-library.html b/doc/api/features_core_services_connections_service/features_core_services_connections_service-library.html new file mode 100644 index 0000000..6fc2532 --- /dev/null +++ b/doc/api/features_core_services_connections_service/features_core_services_connections_service-library.html @@ -0,0 +1,190 @@ + + + + + + + + connections_service library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    connections_service
    + +
    + +
    + + +
    +
    +

    connections_service library + Null safety + +

    + + + + +
    +

    Classes

    + +
    +
    + ConnectionsService + +
    +
    + Used to observe the current connection type and status. +
    + +
    +
    + + + + + + + + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_services_local_storage_service/LocalStorageService-class.html b/doc/api/features_core_services_local_storage_service/LocalStorageService-class.html new file mode 100644 index 0000000..764ad38 --- /dev/null +++ b/doc/api/features_core_services_local_storage_service/LocalStorageService-class.html @@ -0,0 +1,314 @@ + + + + + + + + LocalStorageService class - local_storage_service library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    LocalStorageService
    + +
    + +
    + + +
    +
    +

    LocalStorageService class + Null safety + +

    + + +
    +

    Handles storing state data locally, onto the device itself

    +
    + + + + +
    +

    Constructors

    + +
    +
    + LocalStorageService() +
    +
    + +
    +
    +
    + +
    +

    Properties

    + +
    +
    + hashCode + int + +
    +
    + The hash code for this object. +
    read-only, inherited
    + +
    + +
    + runtimeType + Type + +
    +
    + A representation of the runtime type of the object. +
    read-only, inherited
    + +
    + +
    + storedFavouritesStates + Iterable<bool> + +
    +
    + +
    read-only
    + +
    + +
    +
    + + +
    +

    Methods

    +
    +
    + initNewFavourites({required Iterable<bool> newValues}) + → void + + + +
    +
    + + + +
    + +
    + noSuchMethod(Invocation invocation) + → dynamic + + + +
    +
    + Invoked when a non-existent method or property is accessed. +
    inherited
    + +
    + +
    + resetFavourites() + → void + + + +
    +
    + + + +
    + +
    + toString() + String + + + +
    +
    + A string representation of this object. +
    inherited
    + +
    + +
    + updateFavourite({required dynamic index, required bool newValue}) + → void + + + +
    +
    + + + +
    + +
    +
    + +
    +

    Operators

    +
    +
    + operator ==(Object other) + bool + + + +
    +
    + The equality operator. +
    inherited
    + +
    + +
    +
    + +
    +

    Static Properties

    + +
    +
    + locate + LocalStorageService + +
    +
    + +
    read-only
    + +
    + +
    +
    + + + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_services_local_storage_service/LocalStorageService/LocalStorageService.html b/doc/api/features_core_services_local_storage_service/LocalStorageService/LocalStorageService.html new file mode 100644 index 0000000..c267e5e --- /dev/null +++ b/doc/api/features_core_services_local_storage_service/LocalStorageService/LocalStorageService.html @@ -0,0 +1,141 @@ + + + + + + + + LocalStorageService constructor - LocalStorageService - local_storage_service library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    LocalStorageService
    + +
    + +
    + + +
    +
    +

    LocalStorageService constructor + Null safety +

    + +
    + LocalStorageService() +
    + + + + + +
    +

    Implementation

    +
    LocalStorageService() {
    +  _init();
    +}
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_services_local_storage_service/LocalStorageService/initNewFavourites.html b/doc/api/features_core_services_local_storage_service/LocalStorageService/initNewFavourites.html new file mode 100644 index 0000000..a59adfa --- /dev/null +++ b/doc/api/features_core_services_local_storage_service/LocalStorageService/initNewFavourites.html @@ -0,0 +1,148 @@ + + + + + + + + initNewFavourites method - LocalStorageService class - local_storage_service library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    initNewFavourites
    + +
    + +
    + + +
    +
    +

    initNewFavourites method + Null safety +

    + +
    + + +void +initNewFavourites(
    1. {required Iterable<bool> newValues}
    2. +
    ) + + + +
    + + + + +
    +

    Implementation

    +
    void initNewFavourites({required Iterable<bool> newValues}) {
    +  _userBox.addAll(newValues);
    +  _loggingService.info('Adding new favourites value');
    +}
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_services_local_storage_service/LocalStorageService/locate.html b/doc/api/features_core_services_local_storage_service/LocalStorageService/locate.html new file mode 100644 index 0000000..5baf909 --- /dev/null +++ b/doc/api/features_core_services_local_storage_service/LocalStorageService/locate.html @@ -0,0 +1,147 @@ + + + + + + + + locate property - LocalStorageService class - local_storage_service library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    locate
    + +
    + +
    + + +
    +
    +

    locate property + Null safety +

    + + + +
    + +
    + LocalStorageService + locate + + +
    + + + + +
    +

    Implementation

    +
    static LocalStorageService get locate => Locator.locate();
    +
    + +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_services_local_storage_service/LocalStorageService/resetFavourites.html b/doc/api/features_core_services_local_storage_service/LocalStorageService/resetFavourites.html new file mode 100644 index 0000000..cbeeec8 --- /dev/null +++ b/doc/api/features_core_services_local_storage_service/LocalStorageService/resetFavourites.html @@ -0,0 +1,147 @@ + + + + + + + + resetFavourites method - LocalStorageService class - local_storage_service library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    resetFavourites
    + +
    + +
    + + +
    +
    +

    resetFavourites method + Null safety +

    + +
    + + +void +resetFavourites() + + + +
    + + + + +
    +

    Implementation

    +
    void resetFavourites() {
    +  _userBox.clear();
    +  _loggingService.info('Cleared favourites table');
    +}
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_services_local_storage_service/LocalStorageService/storedFavouritesStates.html b/doc/api/features_core_services_local_storage_service/LocalStorageService/storedFavouritesStates.html new file mode 100644 index 0000000..f16fc1b --- /dev/null +++ b/doc/api/features_core_services_local_storage_service/LocalStorageService/storedFavouritesStates.html @@ -0,0 +1,147 @@ + + + + + + + + storedFavouritesStates property - LocalStorageService class - local_storage_service library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    storedFavouritesStates
    + +
    + +
    + + +
    +
    +

    storedFavouritesStates property + Null safety +

    + + + +
    + +
    + Iterable<bool> + storedFavouritesStates + + +
    + + + + +
    +

    Implementation

    +
    Iterable<bool> get storedFavouritesStates => _userBox.values;
    +
    + +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_services_local_storage_service/LocalStorageService/updateFavourite.html b/doc/api/features_core_services_local_storage_service/LocalStorageService/updateFavourite.html new file mode 100644 index 0000000..289e8b6 --- /dev/null +++ b/doc/api/features_core_services_local_storage_service/LocalStorageService/updateFavourite.html @@ -0,0 +1,156 @@ + + + + + + + + updateFavourite method - LocalStorageService class - local_storage_service library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    updateFavourite
    + +
    + +
    + + +
    +
    +

    updateFavourite method + Null safety +

    + +
    + + +void +updateFavourite(
    1. {required dynamic index,
    2. +
    3. required bool newValue}
    4. +
    ) + + + +
    + + + + +
    +

    Implementation

    +
    void updateFavourite({
    +  required index,
    +  required bool newValue,
    +}) {
    +  try {
    +    _userBox.putAt(index, newValue);
    +    _loggingService.good('Successfully updated favourite status at $index -> $newValue');
    +  } on Exception catch (ex, stackTrace) {
    +    _loggingService.handleException(ex, stackTrace);
    +  }
    +}
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_services_local_storage_service/features_core_services_local_storage_service-library.html b/doc/api/features_core_services_local_storage_service/features_core_services_local_storage_service-library.html new file mode 100644 index 0000000..8779adf --- /dev/null +++ b/doc/api/features_core_services_local_storage_service/features_core_services_local_storage_service-library.html @@ -0,0 +1,190 @@ + + + + + + + + local_storage_service library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    local_storage_service
    + +
    + +
    + + +
    +
    +

    local_storage_service library + Null safety + +

    + + + + +
    +

    Classes

    + +
    +
    + LocalStorageService + +
    +
    + Handles storing state data locally, onto the device itself +
    + +
    +
    + + + + + + + + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_services_logging_service/LoggingService-class.html b/doc/api/features_core_services_logging_service/LoggingService-class.html new file mode 100644 index 0000000..a71a30b --- /dev/null +++ b/doc/api/features_core_services_logging_service/LoggingService-class.html @@ -0,0 +1,414 @@ + + + + + + + + LoggingService class - logging_service library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    LoggingService
    + +
    + +
    + + +
    +
    +

    LoggingService class + Null safety + +

    + + +
    +

    Handles logging of events.

    +
    + + +
    +
    + + + + + +
    Implementers
    +
    + + + +
    +
    + + +
    +

    Constructors

    + +
    +
    + LoggingService() +
    +
    + +
    +
    +
    + +
    +

    Properties

    + +
    +
    + error + → void Function(dynamic msg, [Object? exception, StackTrace? stackTrace]) + +
    +
    + +
    read-only
    + +
    + +
    + fine + → void Function(dynamic msg, [Object? exception, StackTrace? stackTrace]) + +
    +
    + +
    read-only
    + +
    + +
    + good + → void Function(dynamic msg, [Object? exception, StackTrace? stackTrace]) + +
    +
    + +
    read-only
    + +
    + +
    + handle + → void Function(Object exception, [StackTrace stackTrace, dynamic msg]) + +
    +
    + +
    read-only
    + +
    + +
    + handleError + → void Function(Error error, [StackTrace stackTrace, dynamic msg]) + +
    +
    + +
    read-only
    + +
    + +
    + handleException + → void Function(Exception exception, [StackTrace? stackTrace, dynamic msg]) + +
    +
    + +
    read-only
    + +
    + +
    + hashCode + int + +
    +
    + The hash code for this object. +
    read-only, inherited
    + +
    + +
    + info + → void Function(dynamic msg, [Object? exception, StackTrace? stackTrace]) + +
    +
    + +
    read-only
    + +
    + +
    + runtimeType + Type + +
    +
    + A representation of the runtime type of the object. +
    read-only, inherited
    + +
    + +
    + warning + → void Function(dynamic msg, [Object exception, StackTrace stackTrace]) + +
    +
    + +
    read-only
    + +
    + +
    +
    + + +
    +

    Methods

    +
    +
    + addLoggingInterceptor({required Dio dio}) + → void + + + +
    +
    + Adds logging to dio calls + + +
    + +
    + noSuchMethod(Invocation invocation) + → dynamic + + + +
    +
    + Invoked when a non-existent method or property is accessed. +
    inherited
    + +
    + +
    + successfulDispose({required String location}) + → void + + + +
    +
    + + + +
    + +
    + successfulInit({required String location}) + → void + + + +
    +
    + + + +
    + +
    + toString() + String + + + +
    +
    + A string representation of this object. +
    inherited
    + +
    + +
    +
    + +
    +

    Operators

    +
    +
    + operator ==(Object other) + bool + + + +
    +
    + The equality operator. +
    inherited
    + +
    + +
    +
    + +
    +

    Static Properties

    + +
    +
    + locate + LoggingService + +
    +
    + +
    read-only
    + +
    + +
    +
    + + + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_services_logging_service/LoggingService/LoggingService.html b/doc/api/features_core_services_logging_service/LoggingService/LoggingService.html new file mode 100644 index 0000000..8cac264 --- /dev/null +++ b/doc/api/features_core_services_logging_service/LoggingService/LoggingService.html @@ -0,0 +1,142 @@ + + + + + + + + LoggingService constructor - LoggingService - logging_service library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    LoggingService
    + +
    + +
    + + +
    +
    +

    LoggingService constructor + Null safety +

    + +
    + LoggingService() +
    + + + + + + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_services_logging_service/LoggingService/addLoggingInterceptor.html b/doc/api/features_core_services_logging_service/LoggingService/addLoggingInterceptor.html new file mode 100644 index 0000000..253a6c0 --- /dev/null +++ b/doc/api/features_core_services_logging_service/LoggingService/addLoggingInterceptor.html @@ -0,0 +1,178 @@ + + + + + + + + addLoggingInterceptor method - LoggingService class - logging_service library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    addLoggingInterceptor
    + +
    + +
    + + +
    +
    +

    addLoggingInterceptor method + Null safety +

    + +
    + + +void +addLoggingInterceptor(
    1. {required Dio dio}
    2. +
    ) + + + +
    + +
    +

    Adds logging to dio calls

    +
    + + + +
    +

    Implementation

    +
    void addLoggingInterceptor({required Dio dio}) {
    +  dio.interceptors.add(
    +    TalkerDioLogger(
    +      talker: Talker(
    +        logger: TalkerLogger(
    +            formater: !Platform.isIOS
    +                ? const ColoredLoggerFormatter()
    +                : const ExtendedLoggerFormatter()),
    +        settings: TalkerSettings(
    +          useConsoleLogs: true,
    +          useHistory: false,
    +        ),
    +        loggerSettings: TalkerLoggerSettings(
    +          enableColors: !Platform.isIOS,
    +        ),
    +      ),
    +      settings: const TalkerDioLoggerSettings(
    +        printRequestHeaders: true,
    +        printResponseHeaders: true,
    +        printResponseMessage: true,
    +      ),
    +    ),
    +  );
    +}
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_services_logging_service/LoggingService/error.html b/doc/api/features_core_services_logging_service/LoggingService/error.html new file mode 100644 index 0000000..954a5d3 --- /dev/null +++ b/doc/api/features_core_services_logging_service/LoggingService/error.html @@ -0,0 +1,155 @@ + + + + + + + + error property - LoggingService class - logging_service library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    error
    + +
    + +
    + + +
    +
    +

    error property + Null safety +

    + + + +
    + +
    + void Function(dynamic msg, [Object? exception, StackTrace? stackTrace]) + error + + +
    + + + + +
    +

    Implementation

    +
    void Function(dynamic msg, [Object? exception, StackTrace? stackTrace]) get error =>
    +    _talker.error;
    +
    + +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_services_logging_service/LoggingService/fine.html b/doc/api/features_core_services_logging_service/LoggingService/fine.html new file mode 100644 index 0000000..51ed70f --- /dev/null +++ b/doc/api/features_core_services_logging_service/LoggingService/fine.html @@ -0,0 +1,154 @@ + + + + + + + + fine property - LoggingService class - logging_service library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    fine
    + +
    + +
    + + +
    +
    +

    fine property + Null safety +

    + + + +
    + +
    + void Function(dynamic msg, [Object? exception, StackTrace? stackTrace]) + fine + + +
    + + + + +
    +

    Implementation

    +
    void Function(dynamic msg, [Object? exception, StackTrace? stackTrace]) get fine => _talker.fine;
    +
    + +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_services_logging_service/LoggingService/good.html b/doc/api/features_core_services_logging_service/LoggingService/good.html new file mode 100644 index 0000000..1ccaeb9 --- /dev/null +++ b/doc/api/features_core_services_logging_service/LoggingService/good.html @@ -0,0 +1,154 @@ + + + + + + + + good property - LoggingService class - logging_service library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    good
    + +
    + +
    + + +
    +
    +

    good property + Null safety +

    + + + +
    + +
    + void Function(dynamic msg, [Object? exception, StackTrace? stackTrace]) + good + + +
    + + + + +
    +

    Implementation

    +
    void Function(dynamic msg, [Object? exception, StackTrace? stackTrace]) get good => _talker.good;
    +
    + +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_services_logging_service/LoggingService/handle.html b/doc/api/features_core_services_logging_service/LoggingService/handle.html new file mode 100644 index 0000000..867610a --- /dev/null +++ b/doc/api/features_core_services_logging_service/LoggingService/handle.html @@ -0,0 +1,155 @@ + + + + + + + + handle property - LoggingService class - logging_service library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    handle
    + +
    + +
    + + +
    +
    +

    handle property + Null safety +

    + + + +
    + +
    + void Function(Object exception, [StackTrace stackTrace, dynamic msg]) + handle + + +
    + + + + +
    +

    Implementation

    +
    void Function(Object exception, [StackTrace stackTrace, dynamic msg]) get handle =>
    +    _talker.handle;
    +
    + +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_services_logging_service/LoggingService/handleError.html b/doc/api/features_core_services_logging_service/LoggingService/handleError.html new file mode 100644 index 0000000..837e2d6 --- /dev/null +++ b/doc/api/features_core_services_logging_service/LoggingService/handleError.html @@ -0,0 +1,155 @@ + + + + + + + + handleError property - LoggingService class - logging_service library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    handleError
    + +
    + +
    + + +
    +
    +

    handleError property + Null safety +

    + + + +
    + +
    + void Function(Error error, [StackTrace stackTrace, dynamic msg]) + handleError + + +
    + + + + +
    +

    Implementation

    +
    void Function(Error error, [StackTrace stackTrace, dynamic msg]) get handleError =>
    +    _talker.handleError;
    +
    + +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_services_logging_service/LoggingService/handleException.html b/doc/api/features_core_services_logging_service/LoggingService/handleException.html new file mode 100644 index 0000000..82e3394 --- /dev/null +++ b/doc/api/features_core_services_logging_service/LoggingService/handleException.html @@ -0,0 +1,155 @@ + + + + + + + + handleException property - LoggingService class - logging_service library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    handleException
    + +
    + +
    + + +
    +
    +

    handleException property + Null safety +

    + + + +
    + +
    + void Function(Exception exception, [StackTrace? stackTrace, dynamic msg]) + handleException + + +
    + + + + +
    +

    Implementation

    +
    void Function(Exception exception, [StackTrace? stackTrace, dynamic msg]) get handleException =>
    +    _talker.handleException;
    +
    + +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_services_logging_service/LoggingService/info.html b/doc/api/features_core_services_logging_service/LoggingService/info.html new file mode 100644 index 0000000..0c2d459 --- /dev/null +++ b/doc/api/features_core_services_logging_service/LoggingService/info.html @@ -0,0 +1,155 @@ + + + + + + + + info property - LoggingService class - logging_service library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    info
    + +
    + +
    + + +
    +
    +

    info property + Null safety +

    + + + +
    + +
    + void Function(dynamic msg, [Object? exception, StackTrace? stackTrace]) + info + + +
    + + + + +
    +

    Implementation

    +
    void Function(dynamic msg, [Object? exception, StackTrace? stackTrace]) get info =>
    +    _talker.verbose;
    +
    + +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_services_logging_service/LoggingService/locate.html b/doc/api/features_core_services_logging_service/LoggingService/locate.html new file mode 100644 index 0000000..7d78e1a --- /dev/null +++ b/doc/api/features_core_services_logging_service/LoggingService/locate.html @@ -0,0 +1,154 @@ + + + + + + + + locate property - LoggingService class - logging_service library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    locate
    + +
    + +
    + + +
    +
    +

    locate property + Null safety +

    + + + +
    + +
    + LoggingService + locate + + +
    + + + + +
    +

    Implementation

    +
    static LoggingService get locate => Locator.locate();
    +
    + +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_services_logging_service/LoggingService/successfulDispose.html b/doc/api/features_core_services_logging_service/LoggingService/successfulDispose.html new file mode 100644 index 0000000..2e7211c --- /dev/null +++ b/doc/api/features_core_services_logging_service/LoggingService/successfulDispose.html @@ -0,0 +1,152 @@ + + + + + + + + successfulDispose method - LoggingService class - logging_service library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    successfulDispose
    + +
    + +
    + + +
    +
    +

    successfulDispose method + Null safety +

    + +
    + + +void +successfulDispose(
    1. {required String location}
    2. +
    ) + + + +
    + + + + +
    +

    Implementation

    +
    void successfulDispose({required String location}) => _talker.good('[$location] I am disposed');
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_services_logging_service/LoggingService/successfulInit.html b/doc/api/features_core_services_logging_service/LoggingService/successfulInit.html new file mode 100644 index 0000000..8fd598c --- /dev/null +++ b/doc/api/features_core_services_logging_service/LoggingService/successfulInit.html @@ -0,0 +1,152 @@ + + + + + + + + successfulInit method - LoggingService class - logging_service library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    successfulInit
    + +
    + +
    + + +
    +
    +

    successfulInit method + Null safety +

    + +
    + + +void +successfulInit(
    1. {required String location}
    2. +
    ) + + + +
    + + + + +
    +

    Implementation

    +
    void successfulInit({required String location}) => _talker.good('[$location] I am initialized');
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_services_logging_service/LoggingService/warning.html b/doc/api/features_core_services_logging_service/LoggingService/warning.html new file mode 100644 index 0000000..ddc4d00 --- /dev/null +++ b/doc/api/features_core_services_logging_service/LoggingService/warning.html @@ -0,0 +1,155 @@ + + + + + + + + warning property - LoggingService class - logging_service library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    warning
    + +
    + +
    + + +
    +
    +

    warning property + Null safety +

    + + + +
    + +
    + void Function(dynamic msg, [Object exception, StackTrace stackTrace]) + warning + + +
    + + + + +
    +

    Implementation

    +
    void Function(dynamic msg, [Object exception, StackTrace stackTrace]) get warning =>
    +    _talker.warning;
    +
    + +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_services_logging_service/features_core_services_logging_service-library.html b/doc/api/features_core_services_logging_service/features_core_services_logging_service-library.html new file mode 100644 index 0000000..a3106c5 --- /dev/null +++ b/doc/api/features_core_services_logging_service/features_core_services_logging_service-library.html @@ -0,0 +1,190 @@ + + + + + + + + logging_service library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    logging_service
    + +
    + +
    + + +
    +
    +

    logging_service library + Null safety + +

    + + + + +
    +

    Classes

    + +
    +
    + LoggingService + +
    +
    + Handles logging of events. +
    + +
    +
    + + + + + + + + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_services_navigation_service/NavigationService-class.html b/doc/api/features_core_services_navigation_service/NavigationService-class.html new file mode 100644 index 0000000..3ef4a37 --- /dev/null +++ b/doc/api/features_core_services_navigation_service/NavigationService-class.html @@ -0,0 +1,275 @@ + + + + + + + + NavigationService class - navigation_service library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    NavigationService
    + +
    + +
    + + +
    +
    +

    NavigationService class + Null safety + +

    + + +
    +

    Handles the navigation to and fro all the screens in the app.

    +
    + + + + +
    +

    Constructors

    + +
    + +
    + +
    const
    +
    +
    +
    + +
    +

    Properties

    + +
    +
    + hashCode + int + +
    +
    + The hash code for this object. +
    read-only, inherited
    + +
    + +
    + runtimeType + Type + +
    +
    + A representation of the runtime type of the object. +
    read-only, inherited
    + +
    + +
    +
    + + +
    +

    Methods

    +
    +
    + noSuchMethod(Invocation invocation) + → dynamic + + + +
    +
    + Invoked when a non-existent method or property is accessed. +
    inherited
    + +
    + +
    + pushImageCarouselView(BuildContext context, {required ImageCarouselViewArguments imageCarouselViewArguments}) + → void + + + +
    +
    + + + +
    + +
    + toString() + String + + + +
    +
    + A string representation of this object. +
    inherited
    + +
    + +
    +
    + +
    +

    Operators

    +
    +
    + operator ==(Object other) + bool + + + +
    +
    + The equality operator. +
    inherited
    + +
    + +
    +
    + +
    +

    Static Properties

    + +
    +
    + locate + NavigationService + +
    +
    + +
    read-only
    + +
    + +
    +
    + + + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_services_navigation_service/NavigationService/NavigationService.html b/doc/api/features_core_services_navigation_service/NavigationService/NavigationService.html new file mode 100644 index 0000000..8416485 --- /dev/null +++ b/doc/api/features_core_services_navigation_service/NavigationService/NavigationService.html @@ -0,0 +1,139 @@ + + + + + + + + NavigationService constructor - NavigationService - navigation_service library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    NavigationService
    + +
    + +
    + + +
    +
    +

    NavigationService constructor + Null safety +

    + +
    const + NavigationService(
    1. {required McgRouter mcgRouter}
    2. +
    ) +
    + + + + + +
    +

    Implementation

    +
    const NavigationService({
    +  required McgRouter mcgRouter,
    +}) : _mcgRouter = mcgRouter;
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_services_navigation_service/NavigationService/locate.html b/doc/api/features_core_services_navigation_service/NavigationService/locate.html new file mode 100644 index 0000000..28eefca --- /dev/null +++ b/doc/api/features_core_services_navigation_service/NavigationService/locate.html @@ -0,0 +1,144 @@ + + + + + + + + locate property - NavigationService class - navigation_service library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    locate
    + +
    + +
    + + +
    +
    +

    locate property + Null safety +

    + + + +
    + +
    + NavigationService + locate + + +
    + + + + +
    +

    Implementation

    +
    static NavigationService get locate => Locator.locate();
    +
    + +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_services_navigation_service/NavigationService/pushImageCarouselView.html b/doc/api/features_core_services_navigation_service/NavigationService/pushImageCarouselView.html new file mode 100644 index 0000000..750e053 --- /dev/null +++ b/doc/api/features_core_services_navigation_service/NavigationService/pushImageCarouselView.html @@ -0,0 +1,150 @@ + + + + + + + + pushImageCarouselView method - NavigationService class - navigation_service library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    pushImageCarouselView
    + +
    + +
    + + +
    +
    +

    pushImageCarouselView method + Null safety +

    + +
    + + +void +pushImageCarouselView(
    1. BuildContext context,
    2. +
    3. {required ImageCarouselViewArguments imageCarouselViewArguments}
    4. +
    ) + + + +
    + + + + +
    +

    Implementation

    +
    void pushImageCarouselView(
    +  BuildContext context, {
    +  required ImageCarouselViewArguments imageCarouselViewArguments,
    +}) =>
    +    context.pushNamed(
    +      Routes.imageCarousel.routeName,
    +      extra: imageCarouselViewArguments,
    +    );
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_services_navigation_service/features_core_services_navigation_service-library.html b/doc/api/features_core_services_navigation_service/features_core_services_navigation_service-library.html new file mode 100644 index 0000000..a6eea79 --- /dev/null +++ b/doc/api/features_core_services_navigation_service/features_core_services_navigation_service-library.html @@ -0,0 +1,190 @@ + + + + + + + + navigation_service library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    navigation_service
    + +
    + +
    + + +
    +
    +

    navigation_service library + Null safety + +

    + + + + +
    +

    Classes

    + +
    + +
    + Handles the navigation to and fro all the screens in the app. +
    + +
    +
    + + + + + + + + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_services_overlay_service/OverlayService-class.html b/doc/api/features_core_services_overlay_service/OverlayService-class.html new file mode 100644 index 0000000..ae3e09f --- /dev/null +++ b/doc/api/features_core_services_overlay_service/OverlayService-class.html @@ -0,0 +1,299 @@ + + + + + + + + OverlayService class - overlay_service library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    OverlayService
    + +
    + +
    + + +
    +
    +

    OverlayService class + Null safety + +

    + + + + + + +
    +

    Constructors

    + +
    +
    + OverlayService({required LoggingService loggingService}) +
    +
    + +
    +
    +
    + +
    +

    Properties

    + +
    +
    + hashCode + int + +
    +
    + The hash code for this object. +
    read-only, inherited
    + +
    + +
    + runtimeType + Type + +
    +
    + A representation of the runtime type of the object. +
    read-only, inherited
    + +
    + +
    +
    + + +
    +

    Methods

    +
    +
    + dispose() + → void + + + +
    +
    + + + +
    + +
    + insertOverlayEntry(BuildContext context, {required String tag, required OverlayEntry overlayEntry}) + → void + + + +
    +
    + + + +
    + +
    + noSuchMethod(Invocation invocation) + → dynamic + + + +
    +
    + Invoked when a non-existent method or property is accessed. +
    inherited
    + +
    + +
    + removeOverlayEntry({required String tag}) + → void + + + +
    +
    + + + +
    + +
    + toString() + String + + + +
    +
    + A string representation of this object. +
    inherited
    + +
    + +
    +
    + +
    +

    Operators

    +
    +
    + operator ==(Object other) + bool + + + +
    +
    + The equality operator. +
    inherited
    + +
    + +
    +
    + +
    +

    Static Properties

    + +
    +
    + locate + OverlayService + +
    +
    + +
    read-only
    + +
    + +
    +
    + + + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_services_overlay_service/OverlayService/OverlayService.html b/doc/api/features_core_services_overlay_service/OverlayService/OverlayService.html new file mode 100644 index 0000000..4b42c66 --- /dev/null +++ b/doc/api/features_core_services_overlay_service/OverlayService/OverlayService.html @@ -0,0 +1,141 @@ + + + + + + + + OverlayService constructor - OverlayService - overlay_service library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    OverlayService
    + +
    + +
    + + +
    +
    +

    OverlayService constructor + Null safety +

    + +
    + OverlayService(
    1. {required LoggingService loggingService}
    2. +
    ) +
    + + + + + +
    +

    Implementation

    +
    OverlayService({
    +  required LoggingService loggingService,
    +}) : _loggingService = loggingService;
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_services_overlay_service/OverlayService/dispose.html b/doc/api/features_core_services_overlay_service/OverlayService/dispose.html new file mode 100644 index 0000000..aa09847 --- /dev/null +++ b/doc/api/features_core_services_overlay_service/OverlayService/dispose.html @@ -0,0 +1,150 @@ + + + + + + + + dispose method - OverlayService class - overlay_service library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    dispose
    + +
    + +
    + + +
    +
    +

    dispose method + Null safety +

    + +
    + + +void +dispose() + + + +
    + + + + +
    +

    Implementation

    +
    void dispose() {
    +  for (final overlayEntry in _overlayEntryMap.values) {
    +    if (overlayEntry.mounted) {
    +      overlayEntry.remove();
    +    }
    +  }
    +  _overlayEntryMap.clear();
    +}
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_services_overlay_service/OverlayService/insertOverlayEntry.html b/doc/api/features_core_services_overlay_service/OverlayService/insertOverlayEntry.html new file mode 100644 index 0000000..b2bb27b --- /dev/null +++ b/doc/api/features_core_services_overlay_service/OverlayService/insertOverlayEntry.html @@ -0,0 +1,160 @@ + + + + + + + + insertOverlayEntry method - OverlayService class - overlay_service library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    insertOverlayEntry
    + +
    + +
    + + +
    +
    +

    insertOverlayEntry method + Null safety +

    + +
    + + +void +insertOverlayEntry(
    1. BuildContext context,
    2. +
    3. {required String tag,
    4. +
    5. required OverlayEntry overlayEntry}
    6. +
    ) + + + +
    + + + + +
    +

    Implementation

    +
    void insertOverlayEntry(
    +  BuildContext context, {
    +  required String tag,
    +  required OverlayEntry overlayEntry,
    +}) {
    +  if (!_overlayEntryMap.containsKey(tag.hashCode) && !overlayEntry.mounted) {
    +    _overlayEntryMap.addEntries([MapEntry(tag.hashCode, overlayEntry)]);
    +    try {
    +      Overlay.of(context, rootOverlay: true)?.insert(overlayEntry);
    +      //todo(mehul): Fix and not ignore Overlay building while Widget building error.
    +    } on FlutterError catch (_) {}
    +    _loggingService.info('Overlay inserted with tag: $tag');
    +  } else
    +    _loggingService.info('Overlay with tag: $tag, NOT inserted');
    +}
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_services_overlay_service/OverlayService/locate.html b/doc/api/features_core_services_overlay_service/OverlayService/locate.html new file mode 100644 index 0000000..9b7ce37 --- /dev/null +++ b/doc/api/features_core_services_overlay_service/OverlayService/locate.html @@ -0,0 +1,146 @@ + + + + + + + + locate property - OverlayService class - overlay_service library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    locate
    + +
    + +
    + + +
    +
    +

    locate property + Null safety +

    + + + +
    + +
    + OverlayService + locate + + +
    + + + + +
    +

    Implementation

    +
    static OverlayService get locate => Locator.locate();
    +
    + +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_services_overlay_service/OverlayService/removeOverlayEntry.html b/doc/api/features_core_services_overlay_service/OverlayService/removeOverlayEntry.html new file mode 100644 index 0000000..3019287 --- /dev/null +++ b/doc/api/features_core_services_overlay_service/OverlayService/removeOverlayEntry.html @@ -0,0 +1,157 @@ + + + + + + + + removeOverlayEntry method - OverlayService class - overlay_service library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    removeOverlayEntry
    + +
    + +
    + + +
    +
    +

    removeOverlayEntry method + Null safety +

    + +
    + + +void +removeOverlayEntry(
    1. {required String tag}
    2. +
    ) + + + +
    + + + + +
    +

    Implementation

    +
    void removeOverlayEntry({
    +  required String tag,
    +}) {
    +  if (_overlayEntryMap.containsKey(tag.hashCode)) {
    +    final _overlayEntry = _overlayEntryMap[tag.hashCode];
    +    if (_overlayEntry?.mounted ?? false) {
    +      _overlayEntryMap[tag.hashCode]?.remove();
    +      _overlayEntryMap.remove(tag.hashCode);
    +      _loggingService.info('Overlay removed with tag: $tag');
    +    } else
    +      _loggingService.info('Overlay with tag: $tag already mounted OR not found. Skipped');
    +  } else
    +    _loggingService.info('Overlay with tag: $tag already exists. Skipped');
    +}
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_services_overlay_service/features_core_services_overlay_service-library.html b/doc/api/features_core_services_overlay_service/features_core_services_overlay_service-library.html new file mode 100644 index 0000000..4f0f29b --- /dev/null +++ b/doc/api/features_core_services_overlay_service/features_core_services_overlay_service-library.html @@ -0,0 +1,190 @@ + + + + + + + + overlay_service library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    overlay_service
    + +
    + +
    + + +
    +
    +

    overlay_service library + Null safety + +

    + + + + +
    +

    Classes

    + +
    +
    + OverlayService + +
    +
    + +
    + +
    +
    + + + + + + + + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_utils_mutex/Mutex-class.html b/doc/api/features_core_utils_mutex/Mutex-class.html new file mode 100644 index 0000000..9bd65c7 --- /dev/null +++ b/doc/api/features_core_utils_mutex/Mutex-class.html @@ -0,0 +1,268 @@ + + + + + + + + Mutex class - mutex library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    Mutex
    + +
    + +
    + + +
    +
    +

    Mutex class + Null safety + +

    + + +
    +

    A simple Mutex implementation using a Completer.

    +
    + + + + +
    +

    Constructors

    + +
    +
    + Mutex() +
    +
    + +
    +
    +
    + +
    +

    Properties

    + +
    +
    + hashCode + int + +
    +
    + The hash code for this object. +
    read-only, inherited
    + +
    + +
    + lastOperationCompletionAwaiter + Future<void> + +
    +
    + Allows listening to the completion status of the last worker process to be released. +
    read-only
    + +
    + +
    + runtimeType + Type + +
    +
    + A representation of the runtime type of the object. +
    read-only, inherited
    + +
    + +
    +
    + + +
    +

    Methods

    +
    +
    + lockAndRun<T>({required FutureOr<T> run(VoidCallback unlock)}) + FutureOr<T> + + + +
    +
    + Runs the given run function-block in a thread-safe/blocked zone. A convenient unlock() +is provided, which can be called anywhere to signal re-entry. + + +
    + +
    + noSuchMethod(Invocation invocation) + → dynamic + + + +
    +
    + Invoked when a non-existent method or property is accessed. +
    inherited
    + +
    + +
    + toString() + String + + + +
    +
    + A string representation of this object. +
    inherited
    + +
    + +
    +
    + +
    +

    Operators

    +
    +
    + operator ==(Object other) + bool + + + +
    +
    + The equality operator. +
    inherited
    + +
    + +
    +
    + + + + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_utils_mutex/Mutex/Mutex.html b/doc/api/features_core_utils_mutex/Mutex/Mutex.html new file mode 100644 index 0000000..7c7979f --- /dev/null +++ b/doc/api/features_core_utils_mutex/Mutex/Mutex.html @@ -0,0 +1,131 @@ + + + + + + + + Mutex constructor - Mutex - mutex library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    Mutex
    + +
    + +
    + + +
    +
    +

    Mutex constructor + Null safety +

    + +
    + Mutex() +
    + + + + + + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_utils_mutex/Mutex/lastOperationCompletionAwaiter.html b/doc/api/features_core_utils_mutex/Mutex/lastOperationCompletionAwaiter.html new file mode 100644 index 0000000..31e64df --- /dev/null +++ b/doc/api/features_core_utils_mutex/Mutex/lastOperationCompletionAwaiter.html @@ -0,0 +1,147 @@ + + + + + + + + lastOperationCompletionAwaiter property - Mutex class - mutex library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    lastOperationCompletionAwaiter
    + +
    + +
    + + +
    +
    +

    lastOperationCompletionAwaiter property + Null safety +

    + + + +
    + +
    + Future<void> + lastOperationCompletionAwaiter + + +
    + + +
    +

    Allows listening to the completion status of the last worker process to be released.

    +
    + + +
    +

    Implementation

    +
    Future<void> get lastOperationCompletionAwaiter =>
    +    _completerQueue.isNotEmpty ? _completerQueue.last.future : Future.value();
    +
    + +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_utils_mutex/Mutex/lockAndRun.html b/doc/api/features_core_utils_mutex/Mutex/lockAndRun.html new file mode 100644 index 0000000..b556596 --- /dev/null +++ b/doc/api/features_core_utils_mutex/Mutex/lockAndRun.html @@ -0,0 +1,157 @@ + + + + + + + + lockAndRun method - Mutex class - mutex library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    lockAndRun
    + +
    + +
    + + +
    +
    +

    lockAndRun<T> method + Null safety +

    + +
    + + +FutureOr<T> +lockAndRun<T>(
    1. {required FutureOr<T> run(
      1. VoidCallback unlock
      2. +
      +)}
    2. +
    ) + + + +
    + +
    +

    Runs the given run function-block in a thread-safe/blocked zone. A convenient unlock() +is provided, which can be called anywhere to signal re-entry.

    +
    + + + +
    +

    Implementation

    +
    FutureOr<T> lockAndRun<T>({
    +  required FutureOr<T> Function(VoidCallback unlock) run,
    +}) async {
    +  final completer = Completer();
    +  _completerQueue.add(completer);
    +  if (_completerQueue.first != completer) {
    +    await _completerQueue.removeFirst().future;
    +  }
    +  final value = await run(() => completer.complete());
    +  return value;
    +}
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_utils_mutex/features_core_utils_mutex-library.html b/doc/api/features_core_utils_mutex/features_core_utils_mutex-library.html new file mode 100644 index 0000000..cc4f0ae --- /dev/null +++ b/doc/api/features_core_utils_mutex/features_core_utils_mutex-library.html @@ -0,0 +1,190 @@ + + + + + + + + mutex library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    mutex
    + +
    + +
    + + +
    +
    +

    mutex library + Null safety + +

    + + + + +
    +

    Classes

    + +
    +
    + Mutex + +
    +
    + A simple Mutex implementation using a Completer. +
    + +
    +
    + + + + + + + + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_views_error_page_view/ErrorPageView-class.html b/doc/api/features_core_views_error_page_view/ErrorPageView-class.html new file mode 100644 index 0000000..6cdd7bf --- /dev/null +++ b/doc/api/features_core_views_error_page_view/ErrorPageView-class.html @@ -0,0 +1,399 @@ + + + + + + + + ErrorPageView class - error_page_view library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    ErrorPageView
    + +
    + +
    + + +
    +
    +

    ErrorPageView class + Null safety + +

    + + + + +
    +
    + +
    Inheritance
    +
    + +
    + + + + + + + +
    +
    + + +
    +

    Constructors

    + +
    +
    + ErrorPageView({required Exception? error, Key? key}) +
    +
    + +
    const
    +
    +
    +
    + +
    +

    Properties

    + +
    +
    + error + Exception? + +
    +
    + +
    final
    + +
    + +
    + hashCode + int + +
    +
    + The hash code for this object. +
    @nonVirtual, read-only, inherited
    + +
    + +
    + key + Key? + +
    +
    + Controls how one widget replaces another widget in the tree. +
    final, inherited
    + +
    + +
    + runtimeType + Type + +
    +
    + A representation of the runtime type of the object. +
    read-only, inherited
    + +
    + +
    +
    + + +
    +

    Methods

    +
    +
    + build(BuildContext context) + Widget + + + +
    +
    + Describes the part of the user interface represented by this widget. +
    override
    + +
    + +
    + createElement() + StatelessElement + + + +
    +
    + Creates a StatelessElement to manage this widget's location in the tree. +
    inherited
    + +
    + +
    + debugDescribeChildren() + List<DiagnosticsNode> + + + +
    +
    + Returns a list of DiagnosticsNode objects describing this node's +children. +
    @protected, inherited
    + +
    + +
    + debugFillProperties(DiagnosticPropertiesBuilder properties) + → void + + + +
    +
    + Add additional properties associated with the node. +
    inherited
    + +
    + +
    + noSuchMethod(Invocation invocation) + → dynamic + + + +
    +
    + Invoked when a non-existent method or property is accessed. +
    inherited
    + +
    + +
    + toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) + DiagnosticsNode + + + +
    +
    + Returns a debug representation of the object that is used by debugging +tools and by DiagnosticsNode.toStringDeep. +
    inherited
    + +
    + +
    + toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) + String + + + +
    +
    + A string representation of this object. +
    inherited
    + +
    + +
    + toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug}) + String + + + +
    +
    + Returns a string representation of this node and its descendants. +
    inherited
    + +
    + +
    + toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) + String + + + +
    +
    + Returns a one-line detailed description of the object. +
    inherited
    + +
    + +
    + toStringShort() + String + + + +
    +
    + A short, textual description of this widget. +
    inherited
    + +
    + +
    +
    + +
    +

    Operators

    +
    +
    + operator ==(Object other) + bool + + + +
    +
    + The equality operator. +
    @nonVirtual, inherited
    + +
    + +
    +
    + + + + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_views_error_page_view/ErrorPageView/ErrorPageView.html b/doc/api/features_core_views_error_page_view/ErrorPageView/ErrorPageView.html new file mode 100644 index 0000000..f656648 --- /dev/null +++ b/doc/api/features_core_views_error_page_view/ErrorPageView/ErrorPageView.html @@ -0,0 +1,148 @@ + + + + + + + + ErrorPageView constructor - ErrorPageView - error_page_view library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    ErrorPageView
    + +
    + +
    + + +
    +
    +

    ErrorPageView constructor + Null safety +

    + +
    const + ErrorPageView(
    1. {required Exception? error,
    2. +
    3. Key? key}
    4. +
    ) +
    + + + + + +
    +

    Implementation

    +
    const ErrorPageView({
    +  required this.error,
    +  super.key,
    +});
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_views_error_page_view/ErrorPageView/build.html b/doc/api/features_core_views_error_page_view/ErrorPageView/build.html new file mode 100644 index 0000000..d2bde53 --- /dev/null +++ b/doc/api/features_core_views_error_page_view/ErrorPageView/build.html @@ -0,0 +1,199 @@ + + + + + + + + build method - ErrorPageView class - error_page_view library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    build
    + +
    + +
    + + +
    +
    +

    build method + Null safety +

    + +
    + +
    +
      +
    1. @override
    2. +
    +
    + +Widget +build(
    1. BuildContext context
    2. +
    ) + +
    override
    + +
    + +
    +

    Describes the part of the user interface represented by this widget.

    +

    The framework calls this method when this widget is inserted into the tree +in a given BuildContext and when the dependencies of this widget change +(e.g., an InheritedWidget referenced by this widget changes). This +method can potentially be called in every frame and should not have any side +effects beyond building a widget.

    +

    The framework replaces the subtree below this widget with the widget +returned by this method, either by updating the existing subtree or by +removing the subtree and inflating a new subtree, depending on whether the +widget returned by this method can update the root of the existing +subtree, as determined by calling Widget.canUpdate.

    +

    Typically implementations return a newly created constellation of widgets +that are configured with information from this widget's constructor and +from the given BuildContext.

    +

    The given BuildContext contains information about the location in the +tree at which this widget is being built. For example, the context +provides the set of inherited widgets for this location in the tree. A +given widget might be built with multiple different BuildContext +arguments over time if the widget is moved around the tree or if the +widget is inserted into the tree in multiple places at once.

    +

    The implementation of this method must only depend on:

    + +

    If a widget's build method is to depend on anything else, use a +StatefulWidget instead.

    +

    See also:

    +
      +
    • StatelessWidget, which contains the discussion on performance considerations.
    • +
    +
    + + + +
    +

    Implementation

    +
    @override
    +Widget build(BuildContext context) {
    +  return Center(
    +    child: Column(
    +      children: [
    +        Text(Strings.current.errorPageMessage),
    +        const Gap(16),
    +      ],
    +    ),
    +  );
    +}
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_views_error_page_view/ErrorPageView/error.html b/doc/api/features_core_views_error_page_view/ErrorPageView/error.html new file mode 100644 index 0000000..3b12e61 --- /dev/null +++ b/doc/api/features_core_views_error_page_view/ErrorPageView/error.html @@ -0,0 +1,146 @@ + + + + + + + + error property - ErrorPageView class - error_page_view library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    error
    + +
    + +
    + + +
    +
    +

    error property + Null safety +

    + +
    + Exception? + error +
    final
    + +
    + + + +
    +

    Implementation

    +
    final Exception? error;
    +
    +
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_views_error_page_view/features_core_views_error_page_view-library.html b/doc/api/features_core_views_error_page_view/features_core_views_error_page_view-library.html new file mode 100644 index 0000000..3262b09 --- /dev/null +++ b/doc/api/features_core_views_error_page_view/features_core_views_error_page_view-library.html @@ -0,0 +1,190 @@ + + + + + + + + error_page_view library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    error_page_view
    + +
    + +
    + + +
    +
    +

    error_page_view library + Null safety + +

    + + + + +
    +

    Classes

    + +
    +
    + ErrorPageView + +
    +
    + +
    + +
    +
    + + + + + + + + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_widgets_animated_column/AnimatedColumn-class.html b/doc/api/features_core_widgets_animated_column/AnimatedColumn-class.html new file mode 100644 index 0000000..464e226 --- /dev/null +++ b/doc/api/features_core_widgets_animated_column/AnimatedColumn-class.html @@ -0,0 +1,500 @@ + + + + + + + + AnimatedColumn class - animated_column library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    AnimatedColumn
    + +
    + +
    + + +
    +
    +

    AnimatedColumn class + Null safety + +

    + + +
    +

    AnimatedColumn Animates its children when they get added or removed at the end

    +
    + + +
    +
    + +
    Inheritance
    +
    + +
    + + + + + + + +
    +
    + + +
    +

    Constructors

    + +
    +
    + AnimatedColumn({required List<Widget> children, Duration duration = ConstDurations.oneAndHalfDefaultAnimationDuration, MainAxisAlignment mainAxisAlignment = MainAxisAlignment.start, MainAxisSize mainAxisSize = MainAxisSize.max, CrossAxisAlignment crossAxisAlignment = CrossAxisAlignment.center, TextDirection? textDirection, VerticalDirection verticalDirection = VerticalDirection.down, TextBaseline? textBaseline, int maxAnimatingChildren = 2, Key? key}) +
    +
    + +
    const
    +
    +
    +
    + +
    +

    Properties

    + +
    +
    + children + List<Widget> + +
    +
    + +
    final
    + +
    + +
    + crossAxisAlignment + CrossAxisAlignment + +
    +
    + +
    final
    + +
    + +
    + duration + Duration + +
    +
    + duration specifies the duration of the add/remove animation +
    final
    + +
    + +
    + hashCode + int + +
    +
    + The hash code for this object. +
    @nonVirtual, read-only, inherited
    + +
    + +
    + key + Key? + +
    +
    + Controls how one widget replaces another widget in the tree. +
    final, inherited
    + +
    + +
    + mainAxisAlignment + MainAxisAlignment + +
    +
    + +
    final
    + +
    + +
    + mainAxisSize + MainAxisSize + +
    +
    + +
    final
    + +
    + +
    + maxAnimatingChildren + int + +
    +
    + maxAnimatingChildren determines the maximum number of chidren that can +be animating at once, if more are removed or added at within an animation +duration they will pop in instead +
    final
    + +
    + +
    + runtimeType + Type + +
    +
    + A representation of the runtime type of the object. +
    read-only, inherited
    + +
    + +
    + textBaseline + TextBaseline? + +
    +
    + +
    final
    + +
    + +
    + textDirection + TextDirection? + +
    +
    + +
    final
    + +
    + +
    + verticalDirection + VerticalDirection + +
    +
    + +
    final
    + +
    + +
    +
    + + +
    +

    Methods

    +
    +
    + build(BuildContext context) + Widget + + + +
    +
    + Describes the part of the user interface represented by this widget. +
    override
    + +
    + +
    + createElement() + StatelessElement + + + +
    +
    + Creates a StatelessElement to manage this widget's location in the tree. +
    inherited
    + +
    + +
    + debugDescribeChildren() + List<DiagnosticsNode> + + + +
    +
    + Returns a list of DiagnosticsNode objects describing this node's +children. +
    @protected, inherited
    + +
    + +
    + debugFillProperties(DiagnosticPropertiesBuilder properties) + → void + + + +
    +
    + Add additional properties associated with the node. +
    inherited
    + +
    + +
    + noSuchMethod(Invocation invocation) + → dynamic + + + +
    +
    + Invoked when a non-existent method or property is accessed. +
    inherited
    + +
    + +
    + toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) + DiagnosticsNode + + + +
    +
    + Returns a debug representation of the object that is used by debugging +tools and by DiagnosticsNode.toStringDeep. +
    inherited
    + +
    + +
    + toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) + String + + + +
    +
    + A string representation of this object. +
    inherited
    + +
    + +
    + toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug}) + String + + + +
    +
    + Returns a string representation of this node and its descendants. +
    inherited
    + +
    + +
    + toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) + String + + + +
    +
    + Returns a one-line detailed description of the object. +
    inherited
    + +
    + +
    + toStringShort() + String + + + +
    +
    + A short, textual description of this widget. +
    inherited
    + +
    + +
    +
    + +
    +

    Operators

    +
    +
    + operator ==(Object other) + bool + + + +
    +
    + The equality operator. +
    @nonVirtual, inherited
    + +
    + +
    +
    + + + + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_widgets_animated_column/AnimatedColumn/AnimatedColumn.html b/doc/api/features_core_widgets_animated_column/AnimatedColumn/AnimatedColumn.html new file mode 100644 index 0000000..00c11e2 --- /dev/null +++ b/doc/api/features_core_widgets_animated_column/AnimatedColumn/AnimatedColumn.html @@ -0,0 +1,172 @@ + + + + + + + + AnimatedColumn constructor - AnimatedColumn - animated_column library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    AnimatedColumn
    + +
    + +
    + + +
    +
    +

    AnimatedColumn constructor + Null safety +

    + +
    const + AnimatedColumn(
    1. {required List<Widget> children,
    2. +
    3. Duration duration = ConstDurations.oneAndHalfDefaultAnimationDuration,
    4. +
    5. MainAxisAlignment mainAxisAlignment = MainAxisAlignment.start,
    6. +
    7. MainAxisSize mainAxisSize = MainAxisSize.max,
    8. +
    9. CrossAxisAlignment crossAxisAlignment = CrossAxisAlignment.center,
    10. +
    11. TextDirection? textDirection,
    12. +
    13. VerticalDirection verticalDirection = VerticalDirection.down,
    14. +
    15. TextBaseline? textBaseline,
    16. +
    17. int maxAnimatingChildren = 2,
    18. +
    19. Key? key}
    20. +
    ) +
    + + + + + +
    +

    Implementation

    +
    const AnimatedColumn({
    +  required this.children,
    +  this.duration = ConstDurations.oneAndHalfDefaultAnimationDuration,
    +  this.mainAxisAlignment = MainAxisAlignment.start,
    +  this.mainAxisSize = MainAxisSize.max,
    +  this.crossAxisAlignment = CrossAxisAlignment.center,
    +  this.textDirection,
    +  this.verticalDirection = VerticalDirection.down,
    +  this.textBaseline,
    +  this.maxAnimatingChildren = 2,
    +  super.key,
    +});
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_widgets_animated_column/AnimatedColumn/build.html b/doc/api/features_core_widgets_animated_column/AnimatedColumn/build.html new file mode 100644 index 0000000..f0669af --- /dev/null +++ b/doc/api/features_core_widgets_animated_column/AnimatedColumn/build.html @@ -0,0 +1,219 @@ + + + + + + + + build method - AnimatedColumn class - animated_column library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    build
    + +
    + +
    + + +
    +
    +

    build method + Null safety +

    + +
    + +
    +
      +
    1. @override
    2. +
    +
    + +Widget +build(
    1. BuildContext context
    2. +
    ) + +
    override
    + +
    + +
    +

    Describes the part of the user interface represented by this widget.

    +

    The framework calls this method when this widget is inserted into the tree +in a given BuildContext and when the dependencies of this widget change +(e.g., an InheritedWidget referenced by this widget changes). This +method can potentially be called in every frame and should not have any side +effects beyond building a widget.

    +

    The framework replaces the subtree below this widget with the widget +returned by this method, either by updating the existing subtree or by +removing the subtree and inflating a new subtree, depending on whether the +widget returned by this method can update the root of the existing +subtree, as determined by calling Widget.canUpdate.

    +

    Typically implementations return a newly created constellation of widgets +that are configured with information from this widget's constructor and +from the given BuildContext.

    +

    The given BuildContext contains information about the location in the +tree at which this widget is being built. For example, the context +provides the set of inherited widgets for this location in the tree. A +given widget might be built with multiple different BuildContext +arguments over time if the widget is moved around the tree or if the +widget is inserted into the tree in multiple places at once.

    +

    The implementation of this method must only depend on:

    + +

    If a widget's build method is to depend on anything else, use a +StatefulWidget instead.

    +

    See also:

    +
      +
    • StatelessWidget, which contains the discussion on performance considerations.
    • +
    +
    + + + +
    +

    Implementation

    +
    @override
    +Widget build(BuildContext context) {
    +  return Column(
    +    crossAxisAlignment: crossAxisAlignment,
    +    children: [
    +      for (int i = 0; i < children.length + maxAnimatingChildren; i++)
    +        AnimatedSwitcher(
    +          duration: duration,
    +          switchInCurve: Curves.easeInOut,
    +          switchOutCurve: Curves.easeInOut,
    +          transitionBuilder: (child, animation) => FadeTransition(
    +            opacity: animation,
    +            child: SizeTransition(
    +              sizeFactor: animation,
    +              axisAlignment: -1,
    +              child: child,
    +            ),
    +          ),
    +          child: i < children.length ? children[i] : const SizedBox.shrink(),
    +        ),
    +    ],
    +  );
    +}
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_widgets_animated_column/AnimatedColumn/children.html b/doc/api/features_core_widgets_animated_column/AnimatedColumn/children.html new file mode 100644 index 0000000..33be111 --- /dev/null +++ b/doc/api/features_core_widgets_animated_column/AnimatedColumn/children.html @@ -0,0 +1,154 @@ + + + + + + + + children property - AnimatedColumn class - animated_column library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    children
    + +
    + +
    + + +
    +
    +

    children property + Null safety +

    + +
    + List<Widget> + children +
    final
    + +
    + + + +
    +

    Implementation

    +
    final List<Widget> children;
    +
    +
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_widgets_animated_column/AnimatedColumn/crossAxisAlignment.html b/doc/api/features_core_widgets_animated_column/AnimatedColumn/crossAxisAlignment.html new file mode 100644 index 0000000..c8f3265 --- /dev/null +++ b/doc/api/features_core_widgets_animated_column/AnimatedColumn/crossAxisAlignment.html @@ -0,0 +1,154 @@ + + + + + + + + crossAxisAlignment property - AnimatedColumn class - animated_column library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    crossAxisAlignment
    + +
    + +
    + + +
    +
    +

    crossAxisAlignment property + Null safety +

    + +
    + CrossAxisAlignment + crossAxisAlignment +
    final
    + +
    + + + +
    +

    Implementation

    +
    final CrossAxisAlignment crossAxisAlignment;
    +
    +
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_widgets_animated_column/AnimatedColumn/duration.html b/doc/api/features_core_widgets_animated_column/AnimatedColumn/duration.html new file mode 100644 index 0000000..ad3da96 --- /dev/null +++ b/doc/api/features_core_widgets_animated_column/AnimatedColumn/duration.html @@ -0,0 +1,157 @@ + + + + + + + + duration property - AnimatedColumn class - animated_column library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    duration
    + +
    + +
    + + +
    +
    +

    duration property + Null safety +

    + +
    + Duration + duration +
    final
    + +
    + +
    +

    duration specifies the duration of the add/remove animation

    +
    + + +
    +

    Implementation

    +
    final Duration duration;
    +
    +
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_widgets_animated_column/AnimatedColumn/mainAxisAlignment.html b/doc/api/features_core_widgets_animated_column/AnimatedColumn/mainAxisAlignment.html new file mode 100644 index 0000000..7572b27 --- /dev/null +++ b/doc/api/features_core_widgets_animated_column/AnimatedColumn/mainAxisAlignment.html @@ -0,0 +1,154 @@ + + + + + + + + mainAxisAlignment property - AnimatedColumn class - animated_column library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    mainAxisAlignment
    + +
    + +
    + + +
    +
    +

    mainAxisAlignment property + Null safety +

    + +
    + MainAxisAlignment + mainAxisAlignment +
    final
    + +
    + + + +
    +

    Implementation

    +
    final MainAxisAlignment mainAxisAlignment;
    +
    +
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_widgets_animated_column/AnimatedColumn/mainAxisSize.html b/doc/api/features_core_widgets_animated_column/AnimatedColumn/mainAxisSize.html new file mode 100644 index 0000000..f777a54 --- /dev/null +++ b/doc/api/features_core_widgets_animated_column/AnimatedColumn/mainAxisSize.html @@ -0,0 +1,154 @@ + + + + + + + + mainAxisSize property - AnimatedColumn class - animated_column library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    mainAxisSize
    + +
    + +
    + + +
    +
    +

    mainAxisSize property + Null safety +

    + +
    + MainAxisSize + mainAxisSize +
    final
    + +
    + + + +
    +

    Implementation

    +
    final MainAxisSize mainAxisSize;
    +
    +
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_widgets_animated_column/AnimatedColumn/maxAnimatingChildren.html b/doc/api/features_core_widgets_animated_column/AnimatedColumn/maxAnimatingChildren.html new file mode 100644 index 0000000..543d0cc --- /dev/null +++ b/doc/api/features_core_widgets_animated_column/AnimatedColumn/maxAnimatingChildren.html @@ -0,0 +1,159 @@ + + + + + + + + maxAnimatingChildren property - AnimatedColumn class - animated_column library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    maxAnimatingChildren
    + +
    + +
    + + +
    +
    +

    maxAnimatingChildren property + Null safety +

    + +
    + int + maxAnimatingChildren +
    final
    + +
    + +
    +

    maxAnimatingChildren determines the maximum number of chidren that can +be animating at once, if more are removed or added at within an animation +duration they will pop in instead

    +
    + + +
    +

    Implementation

    +
    final int maxAnimatingChildren;
    +
    +
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_widgets_animated_column/AnimatedColumn/textBaseline.html b/doc/api/features_core_widgets_animated_column/AnimatedColumn/textBaseline.html new file mode 100644 index 0000000..4ffdb9f --- /dev/null +++ b/doc/api/features_core_widgets_animated_column/AnimatedColumn/textBaseline.html @@ -0,0 +1,154 @@ + + + + + + + + textBaseline property - AnimatedColumn class - animated_column library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    textBaseline
    + +
    + +
    + + +
    +
    +

    textBaseline property + Null safety +

    + +
    + TextBaseline? + textBaseline +
    final
    + +
    + + + +
    +

    Implementation

    +
    final TextBaseline? textBaseline;
    +
    +
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_widgets_animated_column/AnimatedColumn/textDirection.html b/doc/api/features_core_widgets_animated_column/AnimatedColumn/textDirection.html new file mode 100644 index 0000000..3e73434 --- /dev/null +++ b/doc/api/features_core_widgets_animated_column/AnimatedColumn/textDirection.html @@ -0,0 +1,154 @@ + + + + + + + + textDirection property - AnimatedColumn class - animated_column library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    textDirection
    + +
    + +
    + + +
    +
    +

    textDirection property + Null safety +

    + +
    + TextDirection? + textDirection +
    final
    + +
    + + + +
    +

    Implementation

    +
    final TextDirection? textDirection;
    +
    +
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_widgets_animated_column/AnimatedColumn/verticalDirection.html b/doc/api/features_core_widgets_animated_column/AnimatedColumn/verticalDirection.html new file mode 100644 index 0000000..9d9e096 --- /dev/null +++ b/doc/api/features_core_widgets_animated_column/AnimatedColumn/verticalDirection.html @@ -0,0 +1,154 @@ + + + + + + + + verticalDirection property - AnimatedColumn class - animated_column library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    verticalDirection
    + +
    + +
    + + +
    +
    +

    verticalDirection property + Null safety +

    + +
    + VerticalDirection + verticalDirection +
    final
    + +
    + + + +
    +

    Implementation

    +
    final VerticalDirection verticalDirection;
    +
    +
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_widgets_animated_column/features_core_widgets_animated_column-library.html b/doc/api/features_core_widgets_animated_column/features_core_widgets_animated_column-library.html new file mode 100644 index 0000000..cdfc0cf --- /dev/null +++ b/doc/api/features_core_widgets_animated_column/features_core_widgets_animated_column-library.html @@ -0,0 +1,190 @@ + + + + + + + + animated_column library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    animated_column
    + +
    + +
    + + +
    +
    +

    animated_column library + Null safety + +

    + + + + +
    +

    Classes

    + +
    +
    + AnimatedColumn + +
    +
    + AnimatedColumn Animates its children when they get added or removed at the end +
    + +
    +
    + + + + + + + + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_widgets_gap/AnimatedGap-class.html b/doc/api/features_core_widgets_gap/AnimatedGap-class.html new file mode 100644 index 0000000..d5e37ba --- /dev/null +++ b/doc/api/features_core_widgets_gap/AnimatedGap-class.html @@ -0,0 +1,428 @@ + + + + + + + + AnimatedGap class - gap library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    AnimatedGap
    + +
    + +
    + + +
    +
    +

    AnimatedGap class + Null safety + +

    + + + + +
    +
    + +
    Inheritance
    +
    + +
    + + + + + + + +
    +
    + + +
    +

    Constructors

    + +
    +
    + AnimatedGap(double gap, {Key? key, Duration duration = const Duration(milliseconds: 200), Curve curve = Curves.easeInOut}) +
    +
    + +
    const
    +
    +
    +
    + +
    +

    Properties

    + +
    +
    + curve + Curve + +
    +
    + +
    final
    + +
    + +
    + duration + Duration + +
    +
    + +
    final
    + +
    + +
    + gap + double + +
    +
    + +
    final
    + +
    + +
    + hashCode + int + +
    +
    + The hash code for this object. +
    @nonVirtual, read-only, inherited
    + +
    + +
    + key + Key? + +
    +
    + Controls how one widget replaces another widget in the tree. +
    final, inherited
    + +
    + +
    + runtimeType + Type + +
    +
    + A representation of the runtime type of the object. +
    read-only, inherited
    + +
    + +
    +
    + + +
    +

    Methods

    +
    +
    + createElement() + StatefulElement + + + +
    +
    + Creates a StatefulElement to manage this widget's location in the tree. +
    inherited
    + +
    + +
    + createState() + State<AnimatedGap> + + + +
    +
    + Creates the mutable state for this widget at a given location in the tree. +
    override
    + +
    + +
    + debugDescribeChildren() + List<DiagnosticsNode> + + + +
    +
    + Returns a list of DiagnosticsNode objects describing this node's +children. +
    @protected, inherited
    + +
    + +
    + debugFillProperties(DiagnosticPropertiesBuilder properties) + → void + + + +
    +
    + Add additional properties associated with the node. +
    inherited
    + +
    + +
    + noSuchMethod(Invocation invocation) + → dynamic + + + +
    +
    + Invoked when a non-existent method or property is accessed. +
    inherited
    + +
    + +
    + toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) + DiagnosticsNode + + + +
    +
    + Returns a debug representation of the object that is used by debugging +tools and by DiagnosticsNode.toStringDeep. +
    inherited
    + +
    + +
    + toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) + String + + + +
    +
    + A string representation of this object. +
    inherited
    + +
    + +
    + toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug}) + String + + + +
    +
    + Returns a string representation of this node and its descendants. +
    inherited
    + +
    + +
    + toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) + String + + + +
    +
    + Returns a one-line detailed description of the object. +
    inherited
    + +
    + +
    + toStringShort() + String + + + +
    +
    + A short, textual description of this widget. +
    inherited
    + +
    + +
    +
    + +
    +

    Operators

    +
    +
    + operator ==(Object other) + bool + + + +
    +
    + The equality operator. +
    @nonVirtual, inherited
    + +
    + +
    +
    + + + + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_widgets_gap/AnimatedGap/AnimatedGap.html b/doc/api/features_core_widgets_gap/AnimatedGap/AnimatedGap.html new file mode 100644 index 0000000..39759f7 --- /dev/null +++ b/doc/api/features_core_widgets_gap/AnimatedGap/AnimatedGap.html @@ -0,0 +1,154 @@ + + + + + + + + AnimatedGap constructor - AnimatedGap - gap library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    AnimatedGap
    + +
    + +
    + + +
    +
    +

    AnimatedGap constructor + Null safety +

    + +
    const + AnimatedGap(
    1. double gap,
    2. +
    3. {Key? key,
    4. +
    5. Duration duration = const Duration(milliseconds: 200),
    6. +
    7. Curve curve = Curves.easeInOut}
    8. +
    ) +
    + + + + + +
    +

    Implementation

    +
    const AnimatedGap(
    +  this.gap, {
    +  Key? key,
    +  this.duration = const Duration(milliseconds: 200),
    +  this.curve = Curves.easeInOut,
    +}) : super(key: key);
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_widgets_gap/AnimatedGap/createState.html b/doc/api/features_core_widgets_gap/AnimatedGap/createState.html new file mode 100644 index 0000000..3c90fdf --- /dev/null +++ b/doc/api/features_core_widgets_gap/AnimatedGap/createState.html @@ -0,0 +1,171 @@ + + + + + + + + createState method - AnimatedGap class - gap library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    createState
    + +
    + +
    + + +
    +
    +

    createState method + Null safety +

    + +
    + +
    +
      +
    1. @override
    2. +
    +
    + +State<AnimatedGap> +createState() + +
    override
    + +
    + +
    +

    Creates the mutable state for this widget at a given location in the tree.

    +

    Subclasses should override this method to return a newly created +instance of their associated State subclass:

    +
    @override
    +State<MyWidget> createState() => _MyWidgetState();
    +
    +

    The framework can call this method multiple times over the lifetime of +a StatefulWidget. For example, if the widget is inserted into the tree +in multiple locations, the framework will create a separate State object +for each location. Similarly, if the widget is removed from the tree and +later inserted into the tree again, the framework will call createState +again to create a fresh State object, simplifying the lifecycle of +State objects.

    +
    + + + +
    +

    Implementation

    +
    @override
    +State<AnimatedGap> createState() => _AnimatedGapState();
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_widgets_gap/AnimatedGap/curve.html b/doc/api/features_core_widgets_gap/AnimatedGap/curve.html new file mode 100644 index 0000000..704b53e --- /dev/null +++ b/doc/api/features_core_widgets_gap/AnimatedGap/curve.html @@ -0,0 +1,148 @@ + + + + + + + + curve property - AnimatedGap class - gap library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    curve
    + +
    + +
    + + +
    +
    +

    curve property + Null safety +

    + +
    + Curve + curve +
    final
    + +
    + + + +
    +

    Implementation

    +
    final Curve curve;
    +
    +
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_widgets_gap/AnimatedGap/duration.html b/doc/api/features_core_widgets_gap/AnimatedGap/duration.html new file mode 100644 index 0000000..67f098c --- /dev/null +++ b/doc/api/features_core_widgets_gap/AnimatedGap/duration.html @@ -0,0 +1,148 @@ + + + + + + + + duration property - AnimatedGap class - gap library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    duration
    + +
    + +
    + + +
    +
    +

    duration property + Null safety +

    + +
    + Duration + duration +
    final
    + +
    + + + +
    +

    Implementation

    +
    final Duration duration;
    +
    +
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_widgets_gap/AnimatedGap/gap.html b/doc/api/features_core_widgets_gap/AnimatedGap/gap.html new file mode 100644 index 0000000..dcf8784 --- /dev/null +++ b/doc/api/features_core_widgets_gap/AnimatedGap/gap.html @@ -0,0 +1,148 @@ + + + + + + + + gap property - AnimatedGap class - gap library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    gap
    + +
    + +
    + + +
    +
    +

    gap property + Null safety +

    + +
    + double + gap +
    final
    + +
    + + + +
    +

    Implementation

    +
    final double gap;
    +
    +
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_widgets_gap/AnimatedSliverGap-class.html b/doc/api/features_core_widgets_gap/AnimatedSliverGap-class.html new file mode 100644 index 0000000..02e74a4 --- /dev/null +++ b/doc/api/features_core_widgets_gap/AnimatedSliverGap-class.html @@ -0,0 +1,428 @@ + + + + + + + + AnimatedSliverGap class - gap library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    AnimatedSliverGap
    + +
    + +
    + + +
    +
    +

    AnimatedSliverGap class + Null safety + +

    + + + + +
    +
    + +
    Inheritance
    +
    + +
    + + + + + + + +
    +
    + + +
    +

    Constructors

    + +
    +
    + AnimatedSliverGap(double gap, {Key? key, Duration duration = const Duration(milliseconds: 200), Curve curve = Curves.easeInOut}) +
    +
    + +
    const
    +
    +
    +
    + +
    +

    Properties

    + +
    +
    + curve + Curve + +
    +
    + +
    final
    + +
    + +
    + duration + Duration + +
    +
    + +
    final
    + +
    + +
    + gap + double + +
    +
    + +
    final
    + +
    + +
    + hashCode + int + +
    +
    + The hash code for this object. +
    @nonVirtual, read-only, inherited
    + +
    + +
    + key + Key? + +
    +
    + Controls how one widget replaces another widget in the tree. +
    final, inherited
    + +
    + +
    + runtimeType + Type + +
    +
    + A representation of the runtime type of the object. +
    read-only, inherited
    + +
    + +
    +
    + + +
    +

    Methods

    +
    +
    + createElement() + StatefulElement + + + +
    +
    + Creates a StatefulElement to manage this widget's location in the tree. +
    inherited
    + +
    + +
    + createState() + State<AnimatedSliverGap> + + + +
    +
    + Creates the mutable state for this widget at a given location in the tree. +
    override
    + +
    + +
    + debugDescribeChildren() + List<DiagnosticsNode> + + + +
    +
    + Returns a list of DiagnosticsNode objects describing this node's +children. +
    @protected, inherited
    + +
    + +
    + debugFillProperties(DiagnosticPropertiesBuilder properties) + → void + + + +
    +
    + Add additional properties associated with the node. +
    inherited
    + +
    + +
    + noSuchMethod(Invocation invocation) + → dynamic + + + +
    +
    + Invoked when a non-existent method or property is accessed. +
    inherited
    + +
    + +
    + toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) + DiagnosticsNode + + + +
    +
    + Returns a debug representation of the object that is used by debugging +tools and by DiagnosticsNode.toStringDeep. +
    inherited
    + +
    + +
    + toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) + String + + + +
    +
    + A string representation of this object. +
    inherited
    + +
    + +
    + toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug}) + String + + + +
    +
    + Returns a string representation of this node and its descendants. +
    inherited
    + +
    + +
    + toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) + String + + + +
    +
    + Returns a one-line detailed description of the object. +
    inherited
    + +
    + +
    + toStringShort() + String + + + +
    +
    + A short, textual description of this widget. +
    inherited
    + +
    + +
    +
    + +
    +

    Operators

    +
    +
    + operator ==(Object other) + bool + + + +
    +
    + The equality operator. +
    @nonVirtual, inherited
    + +
    + +
    +
    + + + + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_widgets_gap/AnimatedSliverGap/AnimatedSliverGap.html b/doc/api/features_core_widgets_gap/AnimatedSliverGap/AnimatedSliverGap.html new file mode 100644 index 0000000..edc6129 --- /dev/null +++ b/doc/api/features_core_widgets_gap/AnimatedSliverGap/AnimatedSliverGap.html @@ -0,0 +1,154 @@ + + + + + + + + AnimatedSliverGap constructor - AnimatedSliverGap - gap library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    AnimatedSliverGap
    + +
    + +
    + + +
    +
    +

    AnimatedSliverGap constructor + Null safety +

    + +
    const + AnimatedSliverGap(
    1. double gap,
    2. +
    3. {Key? key,
    4. +
    5. Duration duration = const Duration(milliseconds: 200),
    6. +
    7. Curve curve = Curves.easeInOut}
    8. +
    ) +
    + + + + + +
    +

    Implementation

    +
    const AnimatedSliverGap(
    +  this.gap, {
    +  Key? key,
    +  this.duration = const Duration(milliseconds: 200),
    +  this.curve = Curves.easeInOut,
    +}) : super(key: key);
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_widgets_gap/AnimatedSliverGap/createState.html b/doc/api/features_core_widgets_gap/AnimatedSliverGap/createState.html new file mode 100644 index 0000000..80b55a8 --- /dev/null +++ b/doc/api/features_core_widgets_gap/AnimatedSliverGap/createState.html @@ -0,0 +1,171 @@ + + + + + + + + createState method - AnimatedSliverGap class - gap library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    createState
    + +
    + +
    + + +
    +
    +

    createState method + Null safety +

    + +
    + +
    +
      +
    1. @override
    2. +
    +
    + +State<AnimatedSliverGap> +createState() + +
    override
    + +
    + +
    +

    Creates the mutable state for this widget at a given location in the tree.

    +

    Subclasses should override this method to return a newly created +instance of their associated State subclass:

    +
    @override
    +State<MyWidget> createState() => _MyWidgetState();
    +
    +

    The framework can call this method multiple times over the lifetime of +a StatefulWidget. For example, if the widget is inserted into the tree +in multiple locations, the framework will create a separate State object +for each location. Similarly, if the widget is removed from the tree and +later inserted into the tree again, the framework will call createState +again to create a fresh State object, simplifying the lifecycle of +State objects.

    +
    + + + +
    +

    Implementation

    +
    @override
    +State<AnimatedSliverGap> createState() => _AnimatedSliverGapState();
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_widgets_gap/AnimatedSliverGap/curve.html b/doc/api/features_core_widgets_gap/AnimatedSliverGap/curve.html new file mode 100644 index 0000000..a7370a6 --- /dev/null +++ b/doc/api/features_core_widgets_gap/AnimatedSliverGap/curve.html @@ -0,0 +1,148 @@ + + + + + + + + curve property - AnimatedSliverGap class - gap library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    curve
    + +
    + +
    + + +
    +
    +

    curve property + Null safety +

    + +
    + Curve + curve +
    final
    + +
    + + + +
    +

    Implementation

    +
    final Curve curve;
    +
    +
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_widgets_gap/AnimatedSliverGap/duration.html b/doc/api/features_core_widgets_gap/AnimatedSliverGap/duration.html new file mode 100644 index 0000000..f41c2e2 --- /dev/null +++ b/doc/api/features_core_widgets_gap/AnimatedSliverGap/duration.html @@ -0,0 +1,148 @@ + + + + + + + + duration property - AnimatedSliverGap class - gap library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    duration
    + +
    + +
    + + +
    +
    +

    duration property + Null safety +

    + +
    + Duration + duration +
    final
    + +
    + + + +
    +

    Implementation

    +
    final Duration duration;
    +
    +
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_widgets_gap/AnimatedSliverGap/gap.html b/doc/api/features_core_widgets_gap/AnimatedSliverGap/gap.html new file mode 100644 index 0000000..ded3e86 --- /dev/null +++ b/doc/api/features_core_widgets_gap/AnimatedSliverGap/gap.html @@ -0,0 +1,148 @@ + + + + + + + + gap property - AnimatedSliverGap class - gap library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    gap
    + +
    + +
    + + +
    +
    +

    gap property + Null safety +

    + +
    + double + gap +
    final
    + +
    + + + +
    +

    Implementation

    +
    final double gap;
    +
    +
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_widgets_gap/Gap-class.html b/doc/api/features_core_widgets_gap/Gap-class.html new file mode 100644 index 0000000..bfca22d --- /dev/null +++ b/doc/api/features_core_widgets_gap/Gap-class.html @@ -0,0 +1,542 @@ + + + + + + + + Gap class - gap library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    Gap
    + +
    + +
    + + +
    +
    +

    Gap class + Null safety + +

    + + + + +
    +
    + +
    Inheritance
    +
    + +
    + + + + + + + +
    +
    + + +
    +

    Constructors

    + +
    +
    + Gap(double size, {Key? key}) +
    +
    + +
    const
    +
    +
    +
    + +
    +

    Properties

    + +
    +
    + hashCode + int + +
    +
    + The hash code for this object. +
    @nonVirtual, read-only, inherited
    + +
    + +
    + key + Key? + +
    +
    + Controls how one widget replaces another widget in the tree. +
    final, inherited
    + +
    + +
    + runtimeType + Type + +
    +
    + A representation of the runtime type of the object. +
    read-only, inherited
    + +
    + +
    + size + double + +
    +
    + +
    final
    + +
    + +
    +
    + + +
    +

    Methods

    +
    +
    + createElement() + LeafRenderObjectElement + + + +
    +
    + RenderObjectWidgets always inflate to a RenderObjectElement subclass. +
    inherited
    + +
    + +
    + createRenderObject(BuildContext context) + RenderGap + + + +
    +
    + Creates an instance of the RenderObject class that this +RenderObjectWidget represents, using the configuration described by this +RenderObjectWidget. +
    override
    + +
    + +
    + debugDescribeChildren() + List<DiagnosticsNode> + + + +
    +
    + Returns a list of DiagnosticsNode objects describing this node's +children. +
    @protected, inherited
    + +
    + +
    + debugFillProperties(DiagnosticPropertiesBuilder properties) + → void + + + +
    +
    + Add additional properties associated with the node. +
    inherited
    + +
    + +
    + didUnmountRenderObject(covariant RenderObject renderObject) + → void + + + +
    +
    + A render object previously associated with this widget has been removed +from the tree. The given RenderObject will be of the same type as +returned by this object's createRenderObject. +
    @protected, inherited
    + +
    + +
    + noSuchMethod(Invocation invocation) + → dynamic + + + +
    +
    + Invoked when a non-existent method or property is accessed. +
    inherited
    + +
    + +
    + toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) + DiagnosticsNode + + + +
    +
    + Returns a debug representation of the object that is used by debugging +tools and by DiagnosticsNode.toStringDeep. +
    inherited
    + +
    + +
    + toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) + String + + + +
    +
    + A string representation of this object. +
    inherited
    + +
    + +
    + toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug}) + String + + + +
    +
    + Returns a string representation of this node and its descendants. +
    inherited
    + +
    + +
    + toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) + String + + + +
    +
    + Returns a one-line detailed description of the object. +
    inherited
    + +
    + +
    + toStringShort() + String + + + +
    +
    + A short, textual description of this widget. +
    inherited
    + +
    + +
    + updateRenderObject(BuildContext context, covariant RenderGap renderObject) + → void + + + +
    +
    + Copies the configuration described by this RenderObjectWidget to the +given RenderObject, which will be of the same type as returned by this +object's createRenderObject. +
    override
    + +
    + +
    +
    + +
    +

    Operators

    +
    +
    + operator ==(Object other) + bool + + + +
    +
    + The equality operator. +
    @nonVirtual, inherited
    + +
    + +
    +
    + + + + +
    +

    Constants

    + +
    +
    + size4 + → const Gap + + +
    +
    + + + +
    + Gap(4) +
    +
    + +
    + size8 + → const Gap + + +
    +
    + + + +
    + Gap(8) +
    +
    + +
    + size16 + → const Gap + + +
    +
    + + + +
    + Gap(16) +
    +
    + +
    + size24 + → const Gap + + +
    +
    + + + +
    + Gap(24) +
    +
    + +
    + size32 + → const Gap + + +
    +
    + + + +
    + Gap(32) +
    +
    + +
    + size64 + → const Gap + + +
    +
    + + + +
    + Gap(64) +
    +
    + +
    +
    + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_widgets_gap/Gap/Gap.html b/doc/api/features_core_widgets_gap/Gap/Gap.html new file mode 100644 index 0000000..128d6f7 --- /dev/null +++ b/doc/api/features_core_widgets_gap/Gap/Gap.html @@ -0,0 +1,154 @@ + + + + + + + + Gap constructor - Gap - gap library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    Gap
    + +
    + +
    + + +
    +
    +

    Gap constructor + Null safety +

    + +
    const + Gap(
    1. double size,
    2. +
    3. {Key? key}
    4. +
    ) +
    + + + + + +
    +

    Implementation

    +
    const Gap(this.size, {Key? key}) : super(key: key);
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_widgets_gap/Gap/createRenderObject.html b/doc/api/features_core_widgets_gap/Gap/createRenderObject.html new file mode 100644 index 0000000..505b7f3 --- /dev/null +++ b/doc/api/features_core_widgets_gap/Gap/createRenderObject.html @@ -0,0 +1,174 @@ + + + + + + + + createRenderObject method - Gap class - gap library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    createRenderObject
    + +
    + +
    + + +
    +
    +

    createRenderObject method + Null safety +

    + +
    + +
    +
      +
    1. @override
    2. +
    +
    + +RenderGap +createRenderObject(
    1. BuildContext context
    2. +
    ) + +
    override
    + +
    + +
    +

    Creates an instance of the RenderObject class that this +RenderObjectWidget represents, using the configuration described by this +RenderObjectWidget.

    +

    This method should not do anything with the children of the render object. +That should instead be handled by the method that overrides +RenderObjectElement.mount in the object rendered by this object's +createElement method. See, for example, +SingleChildRenderObjectElement.mount.

    +
    + + + +
    +

    Implementation

    +
    @override
    +RenderGap createRenderObject(BuildContext context) => RenderGap(size);
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_widgets_gap/Gap/size.html b/doc/api/features_core_widgets_gap/Gap/size.html new file mode 100644 index 0000000..c162cdd --- /dev/null +++ b/doc/api/features_core_widgets_gap/Gap/size.html @@ -0,0 +1,155 @@ + + + + + + + + size property - Gap class - gap library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    size
    + +
    + +
    + + +
    +
    +

    size property + Null safety +

    + +
    + double + size +
    final
    + +
    + + + +
    +

    Implementation

    +
    final double size;
    +
    +
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_widgets_gap/Gap/size16-constant.html b/doc/api/features_core_widgets_gap/Gap/size16-constant.html new file mode 100644 index 0000000..6ca75da --- /dev/null +++ b/doc/api/features_core_widgets_gap/Gap/size16-constant.html @@ -0,0 +1,155 @@ + + + + + + + + size16 constant - Gap class - gap library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    size16
    + +
    + +
    + + +
    +
    +

    size16 constant + Null safety +

    + +
    + Gap + const size16 + + +
    + + + +
    +

    Implementation

    +
    static const size16 = Gap(16);
    +
    +
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_widgets_gap/Gap/size24-constant.html b/doc/api/features_core_widgets_gap/Gap/size24-constant.html new file mode 100644 index 0000000..80c18ae --- /dev/null +++ b/doc/api/features_core_widgets_gap/Gap/size24-constant.html @@ -0,0 +1,155 @@ + + + + + + + + size24 constant - Gap class - gap library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    size24
    + +
    + +
    + + +
    +
    +

    size24 constant + Null safety +

    + +
    + Gap + const size24 + + +
    + + + +
    +

    Implementation

    +
    static const size24 = Gap(24);
    +
    +
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_widgets_gap/Gap/size32-constant.html b/doc/api/features_core_widgets_gap/Gap/size32-constant.html new file mode 100644 index 0000000..648aa52 --- /dev/null +++ b/doc/api/features_core_widgets_gap/Gap/size32-constant.html @@ -0,0 +1,155 @@ + + + + + + + + size32 constant - Gap class - gap library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    size32
    + +
    + +
    + + +
    +
    +

    size32 constant + Null safety +

    + +
    + Gap + const size32 + + +
    + + + +
    +

    Implementation

    +
    static const size32 = Gap(32);
    +
    +
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_widgets_gap/Gap/size4-constant.html b/doc/api/features_core_widgets_gap/Gap/size4-constant.html new file mode 100644 index 0000000..c07692f --- /dev/null +++ b/doc/api/features_core_widgets_gap/Gap/size4-constant.html @@ -0,0 +1,155 @@ + + + + + + + + size4 constant - Gap class - gap library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    size4
    + +
    + +
    + + +
    +
    +

    size4 constant + Null safety +

    + +
    + Gap + const size4 + + +
    + + + +
    +

    Implementation

    +
    static const size4 = Gap(4);
    +
    +
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_widgets_gap/Gap/size64-constant.html b/doc/api/features_core_widgets_gap/Gap/size64-constant.html new file mode 100644 index 0000000..59c58fb --- /dev/null +++ b/doc/api/features_core_widgets_gap/Gap/size64-constant.html @@ -0,0 +1,155 @@ + + + + + + + + size64 constant - Gap class - gap library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    size64
    + +
    + +
    + + +
    +
    +

    size64 constant + Null safety +

    + +
    + Gap + const size64 + + +
    + + + +
    +

    Implementation

    +
    static const size64 = Gap(64);
    +
    +
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_widgets_gap/Gap/size8-constant.html b/doc/api/features_core_widgets_gap/Gap/size8-constant.html new file mode 100644 index 0000000..203c615 --- /dev/null +++ b/doc/api/features_core_widgets_gap/Gap/size8-constant.html @@ -0,0 +1,155 @@ + + + + + + + + size8 constant - Gap class - gap library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    size8
    + +
    + +
    + + +
    +
    +

    size8 constant + Null safety +

    + +
    + Gap + const size8 + + +
    + + + +
    +

    Implementation

    +
    static const size8 = Gap(8);
    +
    +
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_widgets_gap/Gap/updateRenderObject.html b/doc/api/features_core_widgets_gap/Gap/updateRenderObject.html new file mode 100644 index 0000000..1597d4f --- /dev/null +++ b/doc/api/features_core_widgets_gap/Gap/updateRenderObject.html @@ -0,0 +1,178 @@ + + + + + + + + updateRenderObject method - Gap class - gap library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    updateRenderObject
    + +
    + +
    + + +
    +
    +

    updateRenderObject method + Null safety +

    + +
    + +
    +
      +
    1. @override
    2. +
    +
    + +void +updateRenderObject(
    1. BuildContext context,
    2. +
    3. covariant RenderGap renderObject
    4. +
    ) + +
    override
    + +
    + +
    +

    Copies the configuration described by this RenderObjectWidget to the +given RenderObject, which will be of the same type as returned by this +object's createRenderObject.

    +

    This method should not do anything to update the children of the render +object. That should instead be handled by the method that overrides +RenderObjectElement.update in the object rendered by this object's +createElement method. See, for example, +SingleChildRenderObjectElement.update.

    +
    + + + +
    +

    Implementation

    +
    @override
    +void updateRenderObject(BuildContext context, covariant RenderGap renderObject) {
    +  renderObject.gap = size;
    +  super.updateRenderObject(context, renderObject);
    +}
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_widgets_gap/RenderGap-class.html b/doc/api/features_core_widgets_gap/RenderGap-class.html new file mode 100644 index 0000000..8f76f1a --- /dev/null +++ b/doc/api/features_core_widgets_gap/RenderGap-class.html @@ -0,0 +1,1705 @@ + + + + + + + + RenderGap class - gap library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    RenderGap
    + +
    + +
    + + +
    +
    +

    RenderGap class + Null safety + +

    + + + + +
    +
    + +
    Inheritance
    +
    + +
    + + + + + + + +
    +
    + + +
    +

    Constructors

    + +
    +
    + RenderGap(double _gap) +
    +
    + +
    +
    +
    + +
    +

    Properties

    + +
    +
    + alwaysNeedsCompositing + bool + +
    +
    + Whether this render object always needs compositing. +
    @protected, read-only, inherited
    + +
    + +
    + attached + bool + +
    +
    + Whether this node is in a tree whose root is attached to something. +
    read-only, inherited
    + +
    + +
    + constraints + BoxConstraints + +
    +
    + The box constraints most recently received from the parent. +
    read-only, inherited
    + +
    + +
    + debugCanParentUseSize + bool + +
    +
    + Whether the parent render object is permitted to use this render object's +size. +
    read-only, inherited
    + +
    + +
    + debugCreator + Object? + +
    +
    + The object responsible for creating this render object. +
    read / write, inherited
    + +
    + +
    + debugDisposed + bool? + +
    +
    + Whether this has been disposed. +
    read-only, inherited
    + +
    + +
    + debugDoingThisLayout + bool + +
    +
    + Whether performLayout for this render object is currently running. +
    read-only, inherited
    + +
    + +
    + debugDoingThisLayoutWithCallback + bool + +
    +
    + Whether invokeLayoutCallback for this render object is currently running. +
    read-only, inherited
    + +
    + +
    + debugDoingThisPaint + bool + +
    +
    + Whether paint for this render object is currently running. +
    read-only, inherited
    + +
    + +
    + debugDoingThisResize + bool + +
    +
    + Whether performResize for this render object is currently running. +
    read-only, inherited
    + +
    + +
    + debugLayer + ContainerLayer? + +
    +
    + In debug mode, the compositing layer that this render object uses to repaint. +
    read-only, inherited
    + +
    + +
    + debugNeedsCompositedLayerUpdate + bool + +
    +
    + Whether this render object's layer information is dirty. +
    read-only, inherited
    + +
    + +
    + debugNeedsLayout + bool + +
    +
    + Whether this render object's layout information is dirty. +
    read-only, inherited
    + +
    + +
    + debugNeedsPaint + bool + +
    +
    + Whether this render object's paint information is dirty. +
    read-only, inherited
    + +
    + +
    + debugSemantics + SemanticsNode? + +
    +
    + The semantics of this render object. +
    read-only, inherited
    + +
    + +
    + depth + int + +
    +
    + The depth of this node in the tree. +
    read-only, inherited
    + +
    + +
    + gap + double + +
    +
    + +
    read / write
    + +
    + +
    + hashCode + int + +
    +
    + The hash code for this object. +
    read-only, inherited
    + +
    + +
    + hasSize + bool + +
    +
    + Whether this render object has undergone layout and has a size. +
    read-only, inherited
    + +
    + +
    + isRepaintBoundary + bool + +
    +
    + Whether this render object repaints separately from its parent. +
    read-only, inherited
    + +
    + +
    + layer + ContainerLayer? + +
    +
    + The compositing layer that this render object uses to repaint. +
    @protected, @protected, read / write, inherited
    + +
    + +
    + needsCompositing + bool + +
    +
    + Whether we or one of our descendants has a compositing layer. +
    read-only, inherited
    + +
    + +
    + owner + PipelineOwner? + +
    +
    + The owner for this node (null if unattached). +
    read-only, inherited
    + +
    + +
    + paintBounds + Rect + +
    +
    + Returns a rectangle that contains all the pixels painted by this box. +
    read-only, inherited
    + +
    + +
    + parent + AbstractNode? + +
    +
    + The parent of this node in the tree. +
    read-only, inherited
    + +
    + +
    + parentData + ParentData? + +
    +
    + Data for use by the parent render object. +
    read / write, inherited
    + +
    + +
    + runtimeType + Type + +
    +
    + A representation of the runtime type of the object. +
    read-only, inherited
    + +
    + +
    + semanticBounds + Rect + +
    +
    + The bounding box, in the local coordinate system, of this +object, for accessibility purposes. +
    read-only, inherited
    + +
    + +
    + size + Size + +
    +
    + The size of this render box computed during layout. +
    @protected, read / write, inherited
    + +
    + +
    + sizedByParent + bool + +
    +
    + Whether the constraints are the only input to the sizing algorithm (in +particular, child nodes have no impact). +
    @protected, read-only, inherited
    + +
    + +
    +
    + + +
    +

    Methods

    +
    +
    + adoptChild(covariant RenderObject child) + → void + + + +
    +
    + Called by subclasses when they decide a render object is a child. +
    inherited
    + +
    + +
    + applyPaintTransform(covariant RenderObject child, Matrix4 transform) + → void + + + +
    +
    + Multiply the transform from the parent's coordinate system to this box's +coordinate system into the given transform. +
    inherited
    + +
    + +
    + assembleSemanticsNode(SemanticsNode node, SemanticsConfiguration config, Iterable<SemanticsNode> children) + → void + + + +
    +
    + Assemble the SemanticsNode for this RenderObject. +
    inherited
    + +
    + +
    + attach(covariant PipelineOwner owner) + → void + + + +
    +
    + Mark this node as attached to the given owner. +
    inherited
    + +
    + +
    + clearSemantics() + → void + + + +
    +
    + Removes all semantics from this render object and its descendants. +
    @mustCallSuper, inherited
    + +
    + +
    + computeDistanceToActualBaseline(TextBaseline baseline) + double? + + + +
    +
    + Returns the distance from the y-coordinate of the position of the box to +the y-coordinate of the first given baseline in the box's contents, if +any, or null otherwise. +
    @protected, inherited
    + +
    + +
    + computeDryLayout(BoxConstraints constraints) + Size + + + +
    +
    + Computes the value returned by getDryLayout. Do not call this +function directly, instead, call getDryLayout. +
    @protected, inherited
    + +
    + +
    + computeMaxIntrinsicHeight(double width) + double + + + +
    +
    + Computes the value returned by getMaxIntrinsicHeight. Do not call this +function directly, instead, call getMaxIntrinsicHeight. +
    @protected, inherited
    + +
    + +
    + computeMaxIntrinsicWidth(double height) + double + + + +
    +
    + Computes the value returned by getMaxIntrinsicWidth. Do not call this +function directly, instead, call getMaxIntrinsicWidth. +
    @protected, inherited
    + +
    + +
    + computeMinIntrinsicHeight(double width) + double + + + +
    +
    + Computes the value returned by getMinIntrinsicHeight. Do not call this +function directly, instead, call getMinIntrinsicHeight. +
    @protected, inherited
    + +
    + +
    + computeMinIntrinsicWidth(double height) + double + + + +
    +
    + Computes the value returned by getMinIntrinsicWidth. Do not call this +function directly, instead, call getMinIntrinsicWidth. +
    @protected, inherited
    + +
    + +
    + debugAdoptSize(Size value) + Size + + + +
    +
    + Claims ownership of the given Size. +
    inherited
    + +
    + +
    + debugAssertDoesMeetConstraints() + → void + + + +
    +
    + Verify that the object's constraints are being met. Override +this function in a subclass to verify that your state matches +the constraints object. This function is only called in checked +mode and only when needsLayout is false. If the constraints are +not met, it should assert or throw an exception. +
    inherited
    + +
    + +
    + debugCannotComputeDryLayout({String? reason, FlutterError? error}) + bool + + + +
    +
    + Called from computeDryLayout within an assert if the given RenderBox +subclass does not support calculating a dry layout. +
    inherited
    + +
    + +
    + debugDescribeChildren() + List<DiagnosticsNode> + + + +
    +
    + Returns a list of DiagnosticsNode objects describing this node's +children. +
    inherited
    + +
    + +
    + debugFillProperties(DiagnosticPropertiesBuilder properties) + → void + + + +
    +
    + Add additional properties associated with the node. +
    inherited
    + +
    + +
    + debugHandleEvent(PointerEvent event, HitTestEntry<HitTestTarget> entry) + bool + + + +
    +
    + Implements the debugPaintPointersEnabled debugging feature. +
    inherited
    + +
    + +
    + debugPaint(PaintingContext context, Offset offset) + → void + + + +
    +
    + Override this method to paint debugging information. +
    inherited
    + +
    + +
    + debugPaintBaselines(PaintingContext context, Offset offset) + → void + + + +
    +
    + In debug mode, paints a line for each baseline. +
    @protected, inherited
    + +
    + +
    + debugPaintPointers(PaintingContext context, Offset offset) + → void + + + +
    +
    + In debug mode, paints a rectangle if this render box has counted more +pointer downs than pointer up events. +
    @protected, inherited
    + +
    + +
    + debugPaintSize(PaintingContext context, Offset offset) + → void + + + +
    +
    + In debug mode, paints a border around this render box. + + +
    + +
    + debugRegisterRepaintBoundaryPaint({bool includedParent = true, bool includedChild = false}) + → void + + + +
    +
    + Called, in debug mode, if isRepaintBoundary is true, when either the +this render object or its parent attempt to paint. +
    inherited
    + +
    + +
    + debugResetSize() + → void + + + +
    +
    + If a subclass has a "size" (the state controlled by parentUsesSize, +whatever it is in the subclass, e.g. the actual size property of +RenderBox), and the subclass verifies that in debug mode this "size" +property isn't used when debugCanParentUseSize isn't set, then that +subclass should override debugResetSize to reapply the current values of +debugCanParentUseSize to that state. +
    inherited
    + +
    + +
    + describeApproximatePaintClip(covariant RenderObject child) + Rect? + + + +
    +
    + Returns a rect in this object's coordinate system that describes +the approximate bounding box of the clip rect that would be +applied to the given child during the paint phase, if any. +
    inherited
    + +
    + +
    + describeForError(String name, {DiagnosticsTreeStyle style = DiagnosticsTreeStyle.shallow}) + DiagnosticsNode + + + +
    +
    + Adds a debug representation of a RenderObject optimized for including in +error messages. +
    inherited
    + +
    + +
    + describeSemanticsClip(covariant RenderObject? child) + Rect? + + + +
    +
    + Returns a rect in this object's coordinate system that describes +which SemanticsNodes produced by the child should be included in the +semantics tree. SemanticsNodes from the child that are positioned +outside of this rect will be dropped. Child SemanticsNodes that are +positioned inside this rect, but outside of describeApproximatePaintClip +will be included in the tree marked as hidden. Child SemanticsNodes +that are inside of both rect will be included in the tree as regular +nodes. +
    inherited
    + +
    + +
    + describeSemanticsConfiguration(SemanticsConfiguration config) + → void + + + +
    +
    + Report the semantics of this node, for example for accessibility purposes. +
    @protected, inherited
    + +
    + +
    + detach() + → void + + + +
    +
    + Mark this node as detached. +
    @mustCallSuper, inherited
    + +
    + +
    + dispose() + → void + + + +
    +
    + Release any resources held by this render object. +
    @mustCallSuper, inherited
    + +
    + +
    + dropChild(covariant RenderObject child) + → void + + + +
    +
    + Called by subclasses when they decide a render object is no longer a child. +
    inherited
    + +
    + +
    + getDistanceToActualBaseline(TextBaseline baseline) + double? + + + +
    +
    + Calls computeDistanceToActualBaseline and caches the result. +
    @mustCallSuper, @protected, inherited
    + +
    + +
    + getDistanceToBaseline(TextBaseline baseline, {bool onlyReal = false}) + double? + + + +
    +
    + Returns the distance from the y-coordinate of the position of the box to +the y-coordinate of the first given baseline in the box's contents. +
    inherited
    + +
    + +
    + getDryLayout(BoxConstraints constraints) + Size + + + +
    +
    + Returns the Size that this RenderBox would like to be given the +provided BoxConstraints. +
    @mustCallSuper, inherited
    + +
    + +
    + getMaxIntrinsicHeight(double width) + double + + + +
    +
    + Returns the smallest height beyond which increasing the height never +decreases the preferred width. The preferred width is the value that +would be returned by getMinIntrinsicWidth for that height. +
    @mustCallSuper, inherited
    + +
    + +
    + getMaxIntrinsicWidth(double height) + double + + + +
    +
    + Returns the smallest width beyond which increasing the width never +decreases the preferred height. The preferred height is the value that +would be returned by getMinIntrinsicHeight for that width. +
    @mustCallSuper, inherited
    + +
    + +
    + getMinIntrinsicHeight(double width) + double + + + +
    +
    + Returns the minimum height that this box could be without failing to +correctly paint its contents within itself, without clipping. +
    @mustCallSuper, inherited
    + +
    + +
    + getMinIntrinsicWidth(double height) + double + + + +
    +
    + Returns the minimum width that this box could be without failing to +correctly paint its contents within itself, without clipping. +
    @mustCallSuper, inherited
    + +
    + +
    + getTransformTo(RenderObject? ancestor) + Matrix4 + + + +
    +
    + Applies the paint transform up the tree to ancestor. +
    inherited
    + +
    + +
    + globalToLocal(Offset point, {RenderObject? ancestor}) + Offset + + + +
    +
    + Convert the given point from the global coordinate system in logical pixels +to the local coordinate system for this box. +
    inherited
    + +
    + +
    + handleEvent(PointerEvent event, covariant BoxHitTestEntry entry) + → void + + + +
    +
    + Override this method to handle pointer events that hit this render object. +
    inherited
    + +
    + +
    + hitTest(BoxHitTestResult result, {required Offset position}) + bool + + + +
    +
    + Determines the set of render objects located at the given position. +
    inherited
    + +
    + +
    + hitTestChildren(BoxHitTestResult result, {required Offset position}) + bool + + + +
    +
    + Override this method to check whether any children are located at the +given position. +
    @protected, inherited
    + +
    + +
    + hitTestSelf(Offset position) + bool + + + +
    +
    + Override this method if this render object can be hit even if its +children were not hit. +
    @protected, inherited
    + +
    + +
    + invokeLayoutCallback<T extends Constraints>(LayoutCallback<T> callback) + → void + + + +
    +
    + Allows mutations to be made to this object's child list (and any +descendants) as well as to any other dirty nodes in the render tree owned +by the same PipelineOwner as this object. The callback argument is +invoked synchronously, and the mutations are allowed only during that +callback's execution. +
    @protected, inherited
    + +
    + +
    + layout(Constraints constraints, {bool parentUsesSize = false}) + → void + + + +
    +
    + Compute the layout for this render object. +
    inherited
    + +
    + +
    + localToGlobal(Offset point, {RenderObject? ancestor}) + Offset + + + +
    +
    + Convert the given point from the local coordinate system for this box to +the global coordinate system in logical pixels. +
    inherited
    + +
    + +
    + markNeedsCompositedLayerUpdate() + → void + + + +
    +
    + Mark this render object as having changed a property on its composited +layer. +
    inherited
    + +
    + +
    + markNeedsCompositingBitsUpdate() + → void + + + +
    +
    + Mark the compositing state for this render object as dirty. +
    inherited
    + +
    + +
    + markNeedsLayout() + → void + + + +
    +
    + Mark this render object's layout information as dirty, and either register +this object with its PipelineOwner, or defer to the parent, depending on +whether this object is a relayout boundary or not respectively. +
    inherited
    + +
    + +
    + markNeedsLayoutForSizedByParentChange() + → void + + + +
    +
    + Mark this render object's layout information as dirty (like +markNeedsLayout), and additionally also handle any necessary work to +handle the case where sizedByParent has changed value. +
    inherited
    + +
    + +
    + markNeedsPaint() + → void + + + +
    +
    + Mark this render object as having changed its visual appearance. +
    inherited
    + +
    + +
    + markNeedsSemanticsUpdate() + → void + + + +
    +
    + Mark this node as needing an update to its semantics description. +
    inherited
    + +
    + +
    + markParentNeedsLayout() + → void + + + +
    +
    + Mark this render object's layout information as dirty, and then defer to +the parent. +
    @protected, inherited
    + +
    + +
    + noSuchMethod(Invocation invocation) + → dynamic + + + +
    +
    + Invoked when a non-existent method or property is accessed. +
    inherited
    + +
    + +
    + paint(PaintingContext context, Offset offset) + → void + + + +
    +
    + Paint this render object into the given context at the given offset. +
    inherited
    + +
    + +
    + paintsChild(covariant RenderObject child) + bool + + + +
    +
    + Whether the given child would be painted if paint were called. +
    inherited
    + +
    + +
    + performLayout() + → void + + + +
    +
    + Do the work of computing the layout for this render object. +
    override
    + +
    + +
    + performResize() + → void + + + +
    +
    + Updates the render objects size using only the constraints. +
    inherited
    + +
    + +
    + reassemble() + → void + + + +
    +
    + Cause the entire subtree rooted at the given RenderObject to be marked +dirty for layout, paint, etc, so that the effects of a hot reload can be +seen, or so that the effect of changing a global debug flag (such as +debugPaintSizeEnabled) can be applied. +
    inherited
    + +
    + +
    + redepthChild(AbstractNode child) + → void + + + +
    +
    + Adjust the depth of the given child to be greater than this node's own +depth. +
    @protected, inherited
    + +
    + +
    + redepthChildren() + → void + + + +
    +
    + Adjust the depth of this node's children, if any. +
    inherited
    + +
    + +
    + replaceRootLayer(OffsetLayer rootLayer) + → void + + + +
    +
    + Replace the layer. This is only valid for the root of a render +object subtree (whatever object scheduleInitialPaint was +called on). +
    inherited
    + +
    + +
    + scheduleInitialLayout() + → void + + + +
    +
    + Bootstrap the rendering pipeline by scheduling the very first layout. +
    inherited
    + +
    + +
    + scheduleInitialPaint(ContainerLayer rootLayer) + → void + + + +
    +
    + Bootstrap the rendering pipeline by scheduling the very first paint. +
    inherited
    + +
    + +
    + scheduleInitialSemantics() + → void + + + +
    +
    + Bootstrap the semantics reporting mechanism by marking this node +as needing a semantics update. +
    inherited
    + +
    + +
    + sendSemanticsEvent(SemanticsEvent semanticsEvent) + → void + + + +
    +
    + Sends a SemanticsEvent associated with this render object's SemanticsNode. +
    inherited
    + +
    + +
    + setupParentData(covariant RenderObject child) + → void + + + +
    +
    + Override to setup parent data correctly for your children. +
    inherited
    + +
    + +
    + showOnScreen({RenderObject? descendant, Rect? rect, Duration duration = Duration.zero, Curve curve = Curves.ease}) + → void + + + +
    +
    + Attempt to make (a portion of) this or a descendant RenderObject visible +on screen. +
    inherited
    + +
    + +
    + toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) + DiagnosticsNode + + + +
    +
    + Returns a debug representation of the object that is used by debugging +tools and by DiagnosticsNode.toStringDeep. +
    inherited
    + +
    + +
    + toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) + String + + + +
    +
    + A string representation of this object. +
    inherited
    + +
    + +
    + toStringDeep({String prefixLineOne = '', String? prefixOtherLines = '', DiagnosticLevel minLevel = DiagnosticLevel.debug}) + String + + + +
    +
    + Returns a description of the tree rooted at this node. +If the prefix argument is provided, then every line in the output +will be prefixed by that string. +
    inherited
    + +
    + +
    + toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) + String + + + +
    +
    + Returns a one-line detailed description of the render object. +This description is often somewhat long. +
    inherited
    + +
    + +
    + toStringShort() + String + + + +
    +
    + Returns a human understandable name. +
    inherited
    + +
    + +
    + updateCompositedLayer({required covariant OffsetLayer? oldLayer}) + OffsetLayer + + + +
    +
    + Update the composited layer owned by this render object. +
    inherited
    + +
    + +
    + visitChildren(RenderObjectVisitor visitor) + → void + + + +
    +
    + Calls visitor for each immediate child of this render object. +
    inherited
    + +
    + +
    + visitChildrenForSemantics(RenderObjectVisitor visitor) + → void + + + +
    +
    + Called when collecting the semantics of this node. +
    inherited
    + +
    + +
    +
    + +
    +

    Operators

    +
    +
    + operator ==(Object other) + bool + + + +
    +
    + The equality operator. +
    inherited
    + +
    + +
    +
    + + + + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_widgets_gap/RenderGap/RenderGap.html b/doc/api/features_core_widgets_gap/RenderGap/RenderGap.html new file mode 100644 index 0000000..7af9a59 --- /dev/null +++ b/doc/api/features_core_widgets_gap/RenderGap/RenderGap.html @@ -0,0 +1,238 @@ + + + + + + + + RenderGap constructor - RenderGap - gap library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    RenderGap
    + +
    + +
    + + +
    +
    +

    RenderGap constructor + Null safety +

    + +
    + RenderGap(
    1. double _gap
    2. +
    ) +
    + + + + + +
    +

    Implementation

    +
    RenderGap(this._gap) : super() {
    +  markNeedsLayout();
    +}
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_widgets_gap/RenderGap/gap.html b/doc/api/features_core_widgets_gap/RenderGap/gap.html new file mode 100644 index 0000000..1bd433c --- /dev/null +++ b/doc/api/features_core_widgets_gap/RenderGap/gap.html @@ -0,0 +1,268 @@ + + + + + + + + gap property - RenderGap class - gap library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    gap
    + +
    + +
    + + +
    +
    +

    gap property + Null safety +

    + + + +
    + +
    + double + gap + + +
    + + + + +
    +

    Implementation

    +
    double get gap => _gap;
    +
    + +
    + + + +
    + +
    + void + gap=(double value) + + +
    + + + + +
    +

    Implementation

    +
    set gap(double value) {
    +  if (_gap != value) {
    +    _gap = value;
    +    markNeedsLayout();
    +  }
    +}
    +
    + +
    + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_widgets_gap/RenderGap/performLayout.html b/doc/api/features_core_widgets_gap/RenderGap/performLayout.html new file mode 100644 index 0000000..16aa763 --- /dev/null +++ b/doc/api/features_core_widgets_gap/RenderGap/performLayout.html @@ -0,0 +1,280 @@ + + + + + + + + performLayout method - RenderGap class - gap library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    performLayout
    + +
    + +
    + + +
    +
    +

    performLayout method + Null safety +

    + +
    + +
    +
      +
    1. @override
    2. +
    +
    + +void +performLayout() + +
    override
    + +
    + +
    +

    Do the work of computing the layout for this render object.

    +

    Do not call this function directly: call layout instead. This function +is called by layout when there is actually work to be done by this +render object during layout. The layout constraints provided by your +parent are available via the constraints getter.

    +

    If sizedByParent is true, then this function should not actually change +the dimensions of this render object. Instead, that work should be done by +performResize. If sizedByParent is false, then this function should +both change the dimensions of this render object and instruct its children +to layout.

    +

    In implementing this function, you must call layout on each of your +children, passing true for parentUsesSize if your layout information is +dependent on your child's layout information. Passing true for +parentUsesSize ensures that this render object will undergo layout if the +child undergoes layout. Otherwise, the child can change its layout +information without informing this render object.

    +
    + + + +
    +

    Implementation

    +
    @override
    +void performLayout() {
    +  final parent = this.parent;
    +  Size newSize;
    +  if (parent is RenderFlex) {
    +    switch (parent.direction) {
    +      case Axis.vertical:
    +        newSize = Size(0, gap);
    +        break;
    +      case Axis.horizontal:
    +        newSize = Size(gap, 0);
    +        break;
    +    }
    +  } else {
    +    newSize = Size.square(gap);
    +  }
    +  size = constraints.constrain(newSize);
    +}
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_widgets_gap/RenderSliverGap-class.html b/doc/api/features_core_widgets_gap/RenderSliverGap-class.html new file mode 100644 index 0000000..d404335 --- /dev/null +++ b/doc/api/features_core_widgets_gap/RenderSliverGap-class.html @@ -0,0 +1,1504 @@ + + + + + + + + RenderSliverGap class - gap library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    RenderSliverGap
    + +
    + +
    + + +
    +
    +

    RenderSliverGap class + Null safety + +

    + + + + +
    +
    + +
    Inheritance
    +
    + +
    + + + + + + + +
    +
    + + +
    +

    Constructors

    + +
    +
    + RenderSliverGap(double _gap) +
    +
    + +
    +
    +
    + +
    +

    Properties

    + +
    +
    + alwaysNeedsCompositing + bool + +
    +
    + Whether this render object always needs compositing. +
    @protected, read-only, inherited
    + +
    + +
    + attached + bool + +
    +
    + Whether this node is in a tree whose root is attached to something. +
    read-only, inherited
    + +
    + +
    + centerOffsetAdjustment + double + +
    +
    + For a center sliver, the distance before the absolute zero scroll offset +that this sliver can cover. +
    read-only, inherited
    + +
    + +
    + constraints + SliverConstraints + +
    +
    + The layout constraints most recently supplied by the parent. +
    read-only, inherited
    + +
    + +
    + debugCanParentUseSize + bool + +
    +
    + Whether the parent render object is permitted to use this render object's +size. +
    read-only, inherited
    + +
    + +
    + debugCreator + Object? + +
    +
    + The object responsible for creating this render object. +
    read / write, inherited
    + +
    + +
    + debugDisposed + bool? + +
    +
    + Whether this has been disposed. +
    read-only, inherited
    + +
    + +
    + debugDoingThisLayout + bool + +
    +
    + Whether performLayout for this render object is currently running. +
    read-only, inherited
    + +
    + +
    + debugDoingThisLayoutWithCallback + bool + +
    +
    + Whether invokeLayoutCallback for this render object is currently running. +
    read-only, inherited
    + +
    + +
    + debugDoingThisPaint + bool + +
    +
    + Whether paint for this render object is currently running. +
    read-only, inherited
    + +
    + +
    + debugDoingThisResize + bool + +
    +
    + Whether performResize for this render object is currently running. +
    read-only, inherited
    + +
    + +
    + debugLayer + ContainerLayer? + +
    +
    + In debug mode, the compositing layer that this render object uses to repaint. +
    read-only, inherited
    + +
    + +
    + debugNeedsCompositedLayerUpdate + bool + +
    +
    + Whether this render object's layer information is dirty. +
    read-only, inherited
    + +
    + +
    + debugNeedsLayout + bool + +
    +
    + Whether this render object's layout information is dirty. +
    read-only, inherited
    + +
    + +
    + debugNeedsPaint + bool + +
    +
    + Whether this render object's paint information is dirty. +
    read-only, inherited
    + +
    + +
    + debugSemantics + SemanticsNode? + +
    +
    + The semantics of this render object. +
    read-only, inherited
    + +
    + +
    + depth + int + +
    +
    + The depth of this node in the tree. +
    read-only, inherited
    + +
    + +
    + gap + double + +
    +
    + +
    read / write
    + +
    + +
    + geometry + SliverGeometry? + +
    +
    + The amount of space this sliver occupies. +
    read / write, inherited
    + +
    + +
    + hashCode + int + +
    +
    + The hash code for this object. +
    read-only, inherited
    + +
    + +
    + isRepaintBoundary + bool + +
    +
    + Whether this render object repaints separately from its parent. +
    read-only, inherited
    + +
    + +
    + layer + ContainerLayer? + +
    +
    + The compositing layer that this render object uses to repaint. +
    @protected, @protected, read / write, inherited
    + +
    + +
    + needsCompositing + bool + +
    +
    + Whether we or one of our descendants has a compositing layer. +
    read-only, inherited
    + +
    + +
    + owner + PipelineOwner? + +
    +
    + The owner for this node (null if unattached). +
    read-only, inherited
    + +
    + +
    + paintBounds + Rect + +
    +
    + An estimate of the bounds within which this render object will paint. +Useful for debugging flags such as debugPaintLayerBordersEnabled. +
    read-only, inherited
    + +
    + +
    + parent + AbstractNode? + +
    +
    + The parent of this node in the tree. +
    read-only, inherited
    + +
    + +
    + parentData + ParentData? + +
    +
    + Data for use by the parent render object. +
    read / write, inherited
    + +
    + +
    + runtimeType + Type + +
    +
    + A representation of the runtime type of the object. +
    read-only, inherited
    + +
    + +
    + semanticBounds + Rect + +
    +
    + The bounding box, in the local coordinate system, of this +object, for accessibility purposes. +
    read-only, inherited
    + +
    + +
    + sizedByParent + bool + +
    +
    + Whether the constraints are the only input to the sizing algorithm (in +particular, child nodes have no impact). +
    @protected, read-only, inherited
    + +
    + +
    +
    + + +
    +

    Methods

    +
    +
    + adoptChild(covariant RenderObject child) + → void + + + +
    +
    + Called by subclasses when they decide a render object is a child. +
    inherited
    + +
    + +
    + applyPaintTransform(covariant RenderObject child, Matrix4 transform) + → void + + + +
    +
    + Applies the transform that would be applied when painting the given child +to the given matrix. +
    inherited
    + +
    + +
    + assembleSemanticsNode(SemanticsNode node, SemanticsConfiguration config, Iterable<SemanticsNode> children) + → void + + + +
    +
    + Assemble the SemanticsNode for this RenderObject. +
    inherited
    + +
    + +
    + attach(covariant PipelineOwner owner) + → void + + + +
    +
    + Mark this node as attached to the given owner. +
    inherited
    + +
    + +
    + calculateCacheOffset(SliverConstraints constraints, {required double from, required double to}) + double + + + +
    +
    + Computes the portion of the region from from to to that is within +the cache extent of the viewport, assuming that only the region from the +SliverConstraints.cacheOrigin that is +SliverConstraints.remainingCacheExtent high is visible, and that +the relationship between scroll offsets and paint offsets is linear. +
    inherited
    + +
    + +
    + calculatePaintOffset(SliverConstraints constraints, {required double from, required double to}) + double + + + +
    +
    + Computes the portion of the region from from to to that is visible, +assuming that only the region from the SliverConstraints.scrollOffset +that is SliverConstraints.remainingPaintExtent high is visible, and that +the relationship between scroll offsets and paint offsets is linear. +
    inherited
    + +
    + +
    + childCrossAxisPosition(covariant RenderObject child) + double + + + +
    +
    + Returns the distance along the cross axis from the zero of the cross axis +in this sliver's paint coordinate space to the nearest side of the given +child. +
    @protected, inherited
    + +
    + +
    + childMainAxisPosition(covariant RenderObject child) + double + + + +
    +
    + Returns the distance from the leading visible edge of the sliver to the +side of the given child closest to that edge. +
    @protected, inherited
    + +
    + +
    + childScrollOffset(covariant RenderObject child) + double? + + + +
    +
    + Returns the scroll offset for the leading edge of the given child. +
    inherited
    + +
    + +
    + clearSemantics() + → void + + + +
    +
    + Removes all semantics from this render object and its descendants. +
    @mustCallSuper, inherited
    + +
    + +
    + debugAssertDoesMeetConstraints() + → void + + + +
    +
    + Verify that the object's constraints are being met. Override +this function in a subclass to verify that your state matches +the constraints object. This function is only called in checked +mode and only when needsLayout is false. If the constraints are +not met, it should assert or throw an exception. +
    inherited
    + +
    + +
    + debugDescribeChildren() + List<DiagnosticsNode> + + + +
    +
    + Returns a list of DiagnosticsNode objects describing this node's +children. +
    inherited
    + +
    + +
    + debugFillProperties(DiagnosticPropertiesBuilder properties) + → void + + + +
    +
    + Add additional properties associated with the node. +
    inherited
    + +
    + +
    + debugPaint(PaintingContext context, Offset offset) + → void + + + +
    +
    + Override this method to paint debugging information. +
    inherited
    + +
    + +
    + debugRegisterRepaintBoundaryPaint({bool includedParent = true, bool includedChild = false}) + → void + + + +
    +
    + Called, in debug mode, if isRepaintBoundary is true, when either the +this render object or its parent attempt to paint. +
    inherited
    + +
    + +
    + debugResetSize() + → void + + + +
    +
    + If a subclass has a "size" (the state controlled by parentUsesSize, +whatever it is in the subclass, e.g. the actual size property of +RenderBox), and the subclass verifies that in debug mode this "size" +property isn't used when debugCanParentUseSize isn't set, then that +subclass should override debugResetSize to reapply the current values of +debugCanParentUseSize to that state. +
    inherited
    + +
    + +
    + describeApproximatePaintClip(covariant RenderObject child) + Rect? + + + +
    +
    + Returns a rect in this object's coordinate system that describes +the approximate bounding box of the clip rect that would be +applied to the given child during the paint phase, if any. +
    inherited
    + +
    + +
    + describeForError(String name, {DiagnosticsTreeStyle style = DiagnosticsTreeStyle.shallow}) + DiagnosticsNode + + + +
    +
    + Adds a debug representation of a RenderObject optimized for including in +error messages. +
    inherited
    + +
    + +
    + describeSemanticsClip(covariant RenderObject? child) + Rect? + + + +
    +
    + Returns a rect in this object's coordinate system that describes +which SemanticsNodes produced by the child should be included in the +semantics tree. SemanticsNodes from the child that are positioned +outside of this rect will be dropped. Child SemanticsNodes that are +positioned inside this rect, but outside of describeApproximatePaintClip +will be included in the tree marked as hidden. Child SemanticsNodes +that are inside of both rect will be included in the tree as regular +nodes. +
    inherited
    + +
    + +
    + describeSemanticsConfiguration(SemanticsConfiguration config) + → void + + + +
    +
    + Report the semantics of this node, for example for accessibility purposes. +
    @protected, inherited
    + +
    + +
    + detach() + → void + + + +
    +
    + Mark this node as detached. +
    @mustCallSuper, inherited
    + +
    + +
    + dispose() + → void + + + +
    +
    + Release any resources held by this render object. +
    @mustCallSuper, inherited
    + +
    + +
    + dropChild(covariant RenderObject child) + → void + + + +
    +
    + Called by subclasses when they decide a render object is no longer a child. +
    inherited
    + +
    + +
    + getAbsoluteSize() + Size + + + +
    +
    + This returns the absolute Size of the sliver. +
    @protected, inherited
    + +
    + +
    + getAbsoluteSizeRelativeToOrigin() + Size + + + +
    +
    + This returns a Size with dimensions relative to the leading edge of the +sliver, specifically the same offset that is given to the paint method. +This means that the dimensions may be negative. +
    @protected, inherited
    + +
    + +
    + getTransformTo(RenderObject? ancestor) + Matrix4 + + + +
    +
    + Applies the paint transform up the tree to ancestor. +
    inherited
    + +
    + +
    + handleEvent(PointerEvent event, covariant SliverHitTestEntry entry) + → void + + + +
    +
    + Override this method to handle pointer events that hit this render object. +
    inherited
    + +
    + +
    + hitTest(SliverHitTestResult result, {required double mainAxisPosition, required double crossAxisPosition}) + bool + + + +
    +
    + Determines the set of render objects located at the given position. +
    inherited
    + +
    + +
    + hitTestChildren(SliverHitTestResult result, {required double mainAxisPosition, required double crossAxisPosition}) + bool + + + +
    +
    + Override this method to check whether any children are located at the +given position. +
    @protected, inherited
    + +
    + +
    + hitTestSelf({required double mainAxisPosition, required double crossAxisPosition}) + bool + + + +
    +
    + Override this method if this render object can be hit even if its +children were not hit. +
    @protected, inherited
    + +
    + +
    + invokeLayoutCallback<T extends Constraints>(LayoutCallback<T> callback) + → void + + + +
    +
    + Allows mutations to be made to this object's child list (and any +descendants) as well as to any other dirty nodes in the render tree owned +by the same PipelineOwner as this object. The callback argument is +invoked synchronously, and the mutations are allowed only during that +callback's execution. +
    @protected, inherited
    + +
    + +
    + layout(Constraints constraints, {bool parentUsesSize = false}) + → void + + + +
    +
    + Compute the layout for this render object. +
    inherited
    + +
    + +
    + markNeedsCompositedLayerUpdate() + → void + + + +
    +
    + Mark this render object as having changed a property on its composited +layer. +
    inherited
    + +
    + +
    + markNeedsCompositingBitsUpdate() + → void + + + +
    +
    + Mark the compositing state for this render object as dirty. +
    inherited
    + +
    + +
    + markNeedsLayout() + → void + + + +
    +
    + Mark this render object's layout information as dirty, and either register +this object with its PipelineOwner, or defer to the parent, depending on +whether this object is a relayout boundary or not respectively. +
    inherited
    + +
    + +
    + markNeedsLayoutForSizedByParentChange() + → void + + + +
    +
    + Mark this render object's layout information as dirty (like +markNeedsLayout), and additionally also handle any necessary work to +handle the case where sizedByParent has changed value. +
    inherited
    + +
    + +
    + markNeedsPaint() + → void + + + +
    +
    + Mark this render object as having changed its visual appearance. +
    inherited
    + +
    + +
    + markNeedsSemanticsUpdate() + → void + + + +
    +
    + Mark this node as needing an update to its semantics description. +
    inherited
    + +
    + +
    + markParentNeedsLayout() + → void + + + +
    +
    + Mark this render object's layout information as dirty, and then defer to +the parent. +
    @protected, inherited
    + +
    + +
    + noSuchMethod(Invocation invocation) + → dynamic + + + +
    +
    + Invoked when a non-existent method or property is accessed. +
    inherited
    + +
    + +
    + paint(PaintingContext context, Offset offset) + → void + + + +
    +
    + Paint this render object into the given context at the given offset. +
    inherited
    + +
    + +
    + paintsChild(covariant RenderObject child) + bool + + + +
    +
    + Whether the given child would be painted if paint were called. +
    inherited
    + +
    + +
    + performLayout() + → void + + + +
    +
    + Do the work of computing the layout for this render object. +
    override
    + +
    + +
    + performResize() + → void + + + +
    +
    + Updates the render objects size using only the constraints. +
    inherited
    + +
    + +
    + reassemble() + → void + + + +
    +
    + Cause the entire subtree rooted at the given RenderObject to be marked +dirty for layout, paint, etc, so that the effects of a hot reload can be +seen, or so that the effect of changing a global debug flag (such as +debugPaintSizeEnabled) can be applied. +
    inherited
    + +
    + +
    + redepthChild(AbstractNode child) + → void + + + +
    +
    + Adjust the depth of the given child to be greater than this node's own +depth. +
    @protected, inherited
    + +
    + +
    + redepthChildren() + → void + + + +
    +
    + Adjust the depth of this node's children, if any. +
    inherited
    + +
    + +
    + replaceRootLayer(OffsetLayer rootLayer) + → void + + + +
    +
    + Replace the layer. This is only valid for the root of a render +object subtree (whatever object scheduleInitialPaint was +called on). +
    inherited
    + +
    + +
    + scheduleInitialLayout() + → void + + + +
    +
    + Bootstrap the rendering pipeline by scheduling the very first layout. +
    inherited
    + +
    + +
    + scheduleInitialPaint(ContainerLayer rootLayer) + → void + + + +
    +
    + Bootstrap the rendering pipeline by scheduling the very first paint. +
    inherited
    + +
    + +
    + scheduleInitialSemantics() + → void + + + +
    +
    + Bootstrap the semantics reporting mechanism by marking this node +as needing a semantics update. +
    inherited
    + +
    + +
    + sendSemanticsEvent(SemanticsEvent semanticsEvent) + → void + + + +
    +
    + Sends a SemanticsEvent associated with this render object's SemanticsNode. +
    inherited
    + +
    + +
    + setupParentData(covariant RenderObject child) + → void + + + +
    +
    + Override to setup parent data correctly for your children. +
    inherited
    + +
    + +
    + showOnScreen({RenderObject? descendant, Rect? rect, Duration duration = Duration.zero, Curve curve = Curves.ease}) + → void + + + +
    +
    + Attempt to make (a portion of) this or a descendant RenderObject visible +on screen. +
    inherited
    + +
    + +
    + toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) + DiagnosticsNode + + + +
    +
    + Returns a debug representation of the object that is used by debugging +tools and by DiagnosticsNode.toStringDeep. +
    inherited
    + +
    + +
    + toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) + String + + + +
    +
    + A string representation of this object. +
    inherited
    + +
    + +
    + toStringDeep({String prefixLineOne = '', String? prefixOtherLines = '', DiagnosticLevel minLevel = DiagnosticLevel.debug}) + String + + + +
    +
    + Returns a description of the tree rooted at this node. +If the prefix argument is provided, then every line in the output +will be prefixed by that string. +
    inherited
    + +
    + +
    + toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) + String + + + +
    +
    + Returns a one-line detailed description of the render object. +This description is often somewhat long. +
    inherited
    + +
    + +
    + toStringShort() + String + + + +
    +
    + Returns a human understandable name. +
    inherited
    + +
    + +
    + updateCompositedLayer({required covariant OffsetLayer? oldLayer}) + OffsetLayer + + + +
    +
    + Update the composited layer owned by this render object. +
    inherited
    + +
    + +
    + visitChildren(RenderObjectVisitor visitor) + → void + + + +
    +
    + Calls visitor for each immediate child of this render object. +
    inherited
    + +
    + +
    + visitChildrenForSemantics(RenderObjectVisitor visitor) + → void + + + +
    +
    + Called when collecting the semantics of this node. +
    inherited
    + +
    + +
    +
    + +
    +

    Operators

    +
    +
    + operator ==(Object other) + bool + + + +
    +
    + The equality operator. +
    inherited
    + +
    + +
    +
    + + + + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_widgets_gap/RenderSliverGap/RenderSliverGap.html b/doc/api/features_core_widgets_gap/RenderSliverGap/RenderSliverGap.html new file mode 100644 index 0000000..df4f298 --- /dev/null +++ b/doc/api/features_core_widgets_gap/RenderSliverGap/RenderSliverGap.html @@ -0,0 +1,224 @@ + + + + + + + + RenderSliverGap constructor - RenderSliverGap - gap library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    RenderSliverGap
    + +
    + +
    + + +
    +
    +

    RenderSliverGap constructor + Null safety +

    + +
    + RenderSliverGap(
    1. double _gap
    2. +
    ) +
    + + + + + +
    +

    Implementation

    +
    RenderSliverGap(this._gap) : super() {
    +  markNeedsLayout();
    +}
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_widgets_gap/RenderSliverGap/gap.html b/doc/api/features_core_widgets_gap/RenderSliverGap/gap.html new file mode 100644 index 0000000..efecf27 --- /dev/null +++ b/doc/api/features_core_widgets_gap/RenderSliverGap/gap.html @@ -0,0 +1,254 @@ + + + + + + + + gap property - RenderSliverGap class - gap library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    gap
    + +
    + +
    + + +
    +
    +

    gap property + Null safety +

    + + + +
    + +
    + double + gap + + +
    + + + + +
    +

    Implementation

    +
    double get gap => _gap;
    +
    + +
    + + + +
    + +
    + void + gap=(double value) + + +
    + + + + +
    +

    Implementation

    +
    set gap(double value) {
    +  if (_gap != value) {
    +    _gap = value;
    +    markNeedsLayout();
    +  }
    +}
    +
    + +
    + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_widgets_gap/RenderSliverGap/performLayout.html b/doc/api/features_core_widgets_gap/RenderSliverGap/performLayout.html new file mode 100644 index 0000000..cd40052 --- /dev/null +++ b/doc/api/features_core_widgets_gap/RenderSliverGap/performLayout.html @@ -0,0 +1,260 @@ + + + + + + + + performLayout method - RenderSliverGap class - gap library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    performLayout
    + +
    + +
    + + +
    +
    +

    performLayout method + Null safety +

    + +
    + +
    +
      +
    1. @override
    2. +
    +
    + +void +performLayout() + +
    override
    + +
    + +
    +

    Do the work of computing the layout for this render object.

    +

    Do not call this function directly: call layout instead. This function +is called by layout when there is actually work to be done by this +render object during layout. The layout constraints provided by your +parent are available via the constraints getter.

    +

    If sizedByParent is true, then this function should not actually change +the dimensions of this render object. Instead, that work should be done by +performResize. If sizedByParent is false, then this function should +both change the dimensions of this render object and instruct its children +to layout.

    +

    In implementing this function, you must call layout on each of your +children, passing true for parentUsesSize if your layout information is +dependent on your child's layout information. Passing true for +parentUsesSize ensures that this render object will undergo layout if the +child undergoes layout. Otherwise, the child can change its layout +information without informing this render object.

    +
    + + + +
    +

    Implementation

    +
    @override
    +void performLayout() {
    +  final cacheExtent = calculateCacheOffset(constraints, from: 0, to: gap);
    +  final paintExtent = calculatePaintOffset(constraints, from: 0, to: gap);
    +  geometry = SliverGeometry(
    +    paintExtent: paintExtent,
    +    scrollExtent: gap,
    +    visible: false,
    +    cacheExtent: cacheExtent,
    +    maxPaintExtent: gap,
    +  );
    +}
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_widgets_gap/SliverGap-class.html b/doc/api/features_core_widgets_gap/SliverGap-class.html new file mode 100644 index 0000000..a1fda05 --- /dev/null +++ b/doc/api/features_core_widgets_gap/SliverGap-class.html @@ -0,0 +1,542 @@ + + + + + + + + SliverGap class - gap library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    SliverGap
    + +
    + +
    + + +
    +
    +

    SliverGap class + Null safety + +

    + + + + +
    +
    + +
    Inheritance
    +
    + +
    + + + + + + + +
    +
    + + +
    +

    Constructors

    + +
    +
    + SliverGap(double gap, {Key? key}) +
    +
    + +
    const
    +
    +
    +
    + +
    +

    Properties

    + +
    +
    + gap + double + +
    +
    + +
    final
    + +
    + +
    + hashCode + int + +
    +
    + The hash code for this object. +
    @nonVirtual, read-only, inherited
    + +
    + +
    + key + Key? + +
    +
    + Controls how one widget replaces another widget in the tree. +
    final, inherited
    + +
    + +
    + runtimeType + Type + +
    +
    + A representation of the runtime type of the object. +
    read-only, inherited
    + +
    + +
    +
    + + +
    +

    Methods

    +
    +
    + createElement() + LeafRenderObjectElement + + + +
    +
    + RenderObjectWidgets always inflate to a RenderObjectElement subclass. +
    inherited
    + +
    + +
    + createRenderObject(BuildContext context) + RenderSliverGap + + + +
    +
    + Creates an instance of the RenderObject class that this +RenderObjectWidget represents, using the configuration described by this +RenderObjectWidget. +
    override
    + +
    + +
    + debugDescribeChildren() + List<DiagnosticsNode> + + + +
    +
    + Returns a list of DiagnosticsNode objects describing this node's +children. +
    @protected, inherited
    + +
    + +
    + debugFillProperties(DiagnosticPropertiesBuilder properties) + → void + + + +
    +
    + Add additional properties associated with the node. +
    inherited
    + +
    + +
    + didUnmountRenderObject(covariant RenderObject renderObject) + → void + + + +
    +
    + A render object previously associated with this widget has been removed +from the tree. The given RenderObject will be of the same type as +returned by this object's createRenderObject. +
    @protected, inherited
    + +
    + +
    + noSuchMethod(Invocation invocation) + → dynamic + + + +
    +
    + Invoked when a non-existent method or property is accessed. +
    inherited
    + +
    + +
    + toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) + DiagnosticsNode + + + +
    +
    + Returns a debug representation of the object that is used by debugging +tools and by DiagnosticsNode.toStringDeep. +
    inherited
    + +
    + +
    + toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) + String + + + +
    +
    + A string representation of this object. +
    inherited
    + +
    + +
    + toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug}) + String + + + +
    +
    + Returns a string representation of this node and its descendants. +
    inherited
    + +
    + +
    + toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) + String + + + +
    +
    + Returns a one-line detailed description of the object. +
    inherited
    + +
    + +
    + toStringShort() + String + + + +
    +
    + A short, textual description of this widget. +
    inherited
    + +
    + +
    + updateRenderObject(BuildContext context, covariant RenderSliverGap renderObject) + → void + + + +
    +
    + Copies the configuration described by this RenderObjectWidget to the +given RenderObject, which will be of the same type as returned by this +object's createRenderObject. +
    override
    + +
    + +
    +
    + +
    +

    Operators

    +
    +
    + operator ==(Object other) + bool + + + +
    +
    + The equality operator. +
    @nonVirtual, inherited
    + +
    + +
    +
    + + + + +
    +

    Constants

    + +
    +
    + size4 + → const SliverGap + + +
    +
    + + + +
    + SliverGap(4) +
    +
    + +
    + size8 + → const SliverGap + + +
    +
    + + + +
    + SliverGap(8) +
    +
    + +
    + size16 + → const SliverGap + + +
    +
    + + + +
    + SliverGap(16) +
    +
    + +
    + size24 + → const SliverGap + + +
    +
    + + + +
    + SliverGap(24) +
    +
    + +
    + size32 + → const SliverGap + + +
    +
    + + + +
    + SliverGap(32) +
    +
    + +
    + size64 + → const SliverGap + + +
    +
    + + + +
    + SliverGap(64) +
    +
    + +
    +
    + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_widgets_gap/SliverGap/SliverGap.html b/doc/api/features_core_widgets_gap/SliverGap/SliverGap.html new file mode 100644 index 0000000..0bf982c --- /dev/null +++ b/doc/api/features_core_widgets_gap/SliverGap/SliverGap.html @@ -0,0 +1,154 @@ + + + + + + + + SliverGap constructor - SliverGap - gap library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    SliverGap
    + +
    + +
    + + +
    +
    +

    SliverGap constructor + Null safety +

    + +
    const + SliverGap(
    1. double gap,
    2. +
    3. {Key? key}
    4. +
    ) +
    + + + + + +
    +

    Implementation

    +
    const SliverGap(this.gap, {Key? key}) : super(key: key);
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_widgets_gap/SliverGap/createRenderObject.html b/doc/api/features_core_widgets_gap/SliverGap/createRenderObject.html new file mode 100644 index 0000000..40e2d12 --- /dev/null +++ b/doc/api/features_core_widgets_gap/SliverGap/createRenderObject.html @@ -0,0 +1,174 @@ + + + + + + + + createRenderObject method - SliverGap class - gap library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    createRenderObject
    + +
    + +
    + + +
    +
    +

    createRenderObject method + Null safety +

    + +
    + +
    +
      +
    1. @override
    2. +
    +
    + +RenderSliverGap +createRenderObject(
    1. BuildContext context
    2. +
    ) + +
    override
    + +
    + +
    +

    Creates an instance of the RenderObject class that this +RenderObjectWidget represents, using the configuration described by this +RenderObjectWidget.

    +

    This method should not do anything with the children of the render object. +That should instead be handled by the method that overrides +RenderObjectElement.mount in the object rendered by this object's +createElement method. See, for example, +SingleChildRenderObjectElement.mount.

    +
    + + + +
    +

    Implementation

    +
    @override
    +RenderSliverGap createRenderObject(BuildContext context) => RenderSliverGap(gap);
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_widgets_gap/SliverGap/gap.html b/doc/api/features_core_widgets_gap/SliverGap/gap.html new file mode 100644 index 0000000..658bcf6 --- /dev/null +++ b/doc/api/features_core_widgets_gap/SliverGap/gap.html @@ -0,0 +1,155 @@ + + + + + + + + gap property - SliverGap class - gap library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    gap
    + +
    + +
    + + +
    +
    +

    gap property + Null safety +

    + +
    + double + gap +
    final
    + +
    + + + +
    +

    Implementation

    +
    final double gap;
    +
    +
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_widgets_gap/SliverGap/size16-constant.html b/doc/api/features_core_widgets_gap/SliverGap/size16-constant.html new file mode 100644 index 0000000..c736594 --- /dev/null +++ b/doc/api/features_core_widgets_gap/SliverGap/size16-constant.html @@ -0,0 +1,155 @@ + + + + + + + + size16 constant - SliverGap class - gap library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    size16
    + +
    + +
    + + +
    +
    +

    size16 constant + Null safety +

    + +
    + SliverGap + const size16 + + +
    + + + +
    +

    Implementation

    +
    static const size16 = SliverGap(16);
    +
    +
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_widgets_gap/SliverGap/size24-constant.html b/doc/api/features_core_widgets_gap/SliverGap/size24-constant.html new file mode 100644 index 0000000..c8887e7 --- /dev/null +++ b/doc/api/features_core_widgets_gap/SliverGap/size24-constant.html @@ -0,0 +1,155 @@ + + + + + + + + size24 constant - SliverGap class - gap library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    size24
    + +
    + +
    + + +
    +
    +

    size24 constant + Null safety +

    + +
    + SliverGap + const size24 + + +
    + + + +
    +

    Implementation

    +
    static const size24 = SliverGap(24);
    +
    +
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_widgets_gap/SliverGap/size32-constant.html b/doc/api/features_core_widgets_gap/SliverGap/size32-constant.html new file mode 100644 index 0000000..42d585b --- /dev/null +++ b/doc/api/features_core_widgets_gap/SliverGap/size32-constant.html @@ -0,0 +1,155 @@ + + + + + + + + size32 constant - SliverGap class - gap library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    size32
    + +
    + +
    + + +
    +
    +

    size32 constant + Null safety +

    + +
    + SliverGap + const size32 + + +
    + + + +
    +

    Implementation

    +
    static const size32 = SliverGap(32);
    +
    +
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_widgets_gap/SliverGap/size4-constant.html b/doc/api/features_core_widgets_gap/SliverGap/size4-constant.html new file mode 100644 index 0000000..569e781 --- /dev/null +++ b/doc/api/features_core_widgets_gap/SliverGap/size4-constant.html @@ -0,0 +1,155 @@ + + + + + + + + size4 constant - SliverGap class - gap library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    size4
    + +
    + +
    + + +
    +
    +

    size4 constant + Null safety +

    + +
    + SliverGap + const size4 + + +
    + + + +
    +

    Implementation

    +
    static const size4 = SliverGap(4);
    +
    +
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_widgets_gap/SliverGap/size64-constant.html b/doc/api/features_core_widgets_gap/SliverGap/size64-constant.html new file mode 100644 index 0000000..3f932b5 --- /dev/null +++ b/doc/api/features_core_widgets_gap/SliverGap/size64-constant.html @@ -0,0 +1,155 @@ + + + + + + + + size64 constant - SliverGap class - gap library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    size64
    + +
    + +
    + + +
    +
    +

    size64 constant + Null safety +

    + +
    + SliverGap + const size64 + + +
    + + + +
    +

    Implementation

    +
    static const size64 = SliverGap(64);
    +
    +
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_widgets_gap/SliverGap/size8-constant.html b/doc/api/features_core_widgets_gap/SliverGap/size8-constant.html new file mode 100644 index 0000000..4f89e6e --- /dev/null +++ b/doc/api/features_core_widgets_gap/SliverGap/size8-constant.html @@ -0,0 +1,155 @@ + + + + + + + + size8 constant - SliverGap class - gap library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    size8
    + +
    + +
    + + +
    +
    +

    size8 constant + Null safety +

    + +
    + SliverGap + const size8 + + +
    + + + +
    +

    Implementation

    +
    static const size8 = SliverGap(8);
    +
    +
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_widgets_gap/SliverGap/updateRenderObject.html b/doc/api/features_core_widgets_gap/SliverGap/updateRenderObject.html new file mode 100644 index 0000000..01292d7 --- /dev/null +++ b/doc/api/features_core_widgets_gap/SliverGap/updateRenderObject.html @@ -0,0 +1,178 @@ + + + + + + + + updateRenderObject method - SliverGap class - gap library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    updateRenderObject
    + +
    + +
    + + +
    +
    +

    updateRenderObject method + Null safety +

    + +
    + +
    +
      +
    1. @override
    2. +
    +
    + +void +updateRenderObject(
    1. BuildContext context,
    2. +
    3. covariant RenderSliverGap renderObject
    4. +
    ) + +
    override
    + +
    + +
    +

    Copies the configuration described by this RenderObjectWidget to the +given RenderObject, which will be of the same type as returned by this +object's createRenderObject.

    +

    This method should not do anything to update the children of the render +object. That should instead be handled by the method that overrides +RenderObjectElement.update in the object rendered by this object's +createElement method. See, for example, +SingleChildRenderObjectElement.update.

    +
    + + + +
    +

    Implementation

    +
    @override
    +void updateRenderObject(BuildContext context, covariant RenderSliverGap renderObject) {
    +  renderObject.gap = gap;
    +  super.updateRenderObject(context, renderObject);
    +}
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_widgets_gap/features_core_widgets_gap-library.html b/doc/api/features_core_widgets_gap/features_core_widgets_gap-library.html new file mode 100644 index 0000000..07b9b70 --- /dev/null +++ b/doc/api/features_core_widgets_gap/features_core_widgets_gap-library.html @@ -0,0 +1,235 @@ + + + + + + + + gap library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    gap
    + +
    + +
    + + +
    +
    +

    gap library + Null safety + +

    + + + + +
    +

    Classes

    + +
    +
    + AnimatedGap + +
    +
    + +
    + +
    + AnimatedSliverGap + +
    +
    + +
    + +
    + Gap + +
    +
    + +
    + +
    + RenderGap + +
    +
    + +
    + +
    + RenderSliverGap + +
    +
    + +
    + +
    + SliverGap + +
    +
    + +
    + +
    +
    + + + + + + + + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_widgets_mcg_scaffold/McgScaffold-class.html b/doc/api/features_core_widgets_mcg_scaffold/McgScaffold-class.html new file mode 100644 index 0000000..94a8d25 --- /dev/null +++ b/doc/api/features_core_widgets_mcg_scaffold/McgScaffold-class.html @@ -0,0 +1,590 @@ + + + + + + + + McgScaffold class - mcg_scaffold library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    McgScaffold
    + +
    + +
    + + +
    +
    +

    McgScaffold class + Null safety + +

    + + + + +
    +
    + +
    Inheritance
    +
    + +
    + + + +
    Mixed in types
    +
    + +
    + + + + +
    +
    + + +
    +

    Constructors

    + +
    +
    + McgScaffold({AppBar? appBar, ValueListenable<bool>? bodyBuilderWaiter, Widget? body, Widget? waitingWidget, bool forceInternetCheck = false, Key? key}) +
    +
    + +
    +
    +
    + +
    +

    Properties

    + +
    +
    + appBar + AppBar? + +
    +
    + +
    final
    + +
    + +
    + body + Widget? + +
    +
    + +
    final
    + +
    + +
    + bodyBuilderWaiter + ValueListenable<bool>? + +
    +
    + Awaits an external signal (complete) before building the body. +
    final
    + +
    + +
    + error + → void Function(dynamic msg, [Object? exception, StackTrace? stackTrace]) + +
    +
    + +
    read-only, inherited
    + +
    + +
    + fine + → void Function(dynamic msg, [Object? exception, StackTrace? stackTrace]) + +
    +
    + +
    read-only, inherited
    + +
    + +
    + forceInternetCheck + bool + +
    +
    + Enabling listing to ConnectionState, showing a small text at the top, when connectivity is lost. +
    final
    + +
    + +
    + good + → void Function(dynamic msg, [Object? exception, StackTrace? stackTrace]) + +
    +
    + +
    read-only, inherited
    + +
    + +
    + handle + → void Function(Object exception, [StackTrace stackTrace, dynamic msg]) + +
    +
    + +
    read-only, inherited
    + +
    + +
    + handleError + → void Function(Error error, [StackTrace stackTrace, dynamic msg]) + +
    +
    + +
    read-only, inherited
    + +
    + +
    + handleException + → void Function(Exception exception, [StackTrace? stackTrace, dynamic msg]) + +
    +
    + +
    read-only, inherited
    + +
    + +
    + hashCode + int + +
    +
    + The hash code for this object. +
    @nonVirtual, read-only, inherited
    + +
    + +
    + info + → void Function(dynamic msg, [Object? exception, StackTrace? stackTrace]) + +
    +
    + +
    read-only, inherited
    + +
    + +
    + key + Key? + +
    +
    + Controls how one widget replaces another widget in the tree. +
    final, inherited
    + +
    + +
    + runtimeType + Type + +
    +
    + A representation of the runtime type of the object. +
    read-only, inherited
    + +
    + +
    + waitingWidget + Widget? + +
    +
    + Custom widget to be used while awaiting bodyBuilderWaiter. +
    final
    + +
    + +
    + warning + → void Function(dynamic msg, [Object exception, StackTrace stackTrace]) + +
    +
    + +
    read-only, inherited
    + +
    + +
    +
    + + +
    +

    Methods

    +
    +
    + addLoggingInterceptor({required Dio dio}) + → void + + + +
    +
    + Adds logging to dio calls +
    inherited
    + +
    + +
    + build(BuildContext context) + Widget + + + +
    +
    + Describes the part of the user interface represented by this widget. +
    override
    + +
    + +
    + createElement() + StatelessElement + + + +
    +
    + Creates a StatelessElement to manage this widget's location in the tree. +
    inherited
    + +
    + +
    + debugDescribeChildren() + List<DiagnosticsNode> + + + +
    +
    + Returns a list of DiagnosticsNode objects describing this node's +children. +
    @protected, inherited
    + +
    + +
    + debugFillProperties(DiagnosticPropertiesBuilder properties) + → void + + + +
    +
    + Add additional properties associated with the node. +
    inherited
    + +
    + +
    + noSuchMethod(Invocation invocation) + → dynamic + + + +
    +
    + Invoked when a non-existent method or property is accessed. +
    inherited
    + +
    + +
    + successfulDispose({required String location}) + → void + + + +
    +
    + +
    inherited
    + +
    + +
    + successfulInit({required String location}) + → void + + + +
    +
    + +
    inherited
    + +
    + +
    + toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) + DiagnosticsNode + + + +
    +
    + Returns a debug representation of the object that is used by debugging +tools and by DiagnosticsNode.toStringDeep. +
    inherited
    + +
    + +
    + toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) + String + + + +
    +
    + A string representation of this object. +
    inherited
    + +
    + +
    + toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug}) + String + + + +
    +
    + Returns a string representation of this node and its descendants. +
    inherited
    + +
    + +
    + toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) + String + + + +
    +
    + Returns a one-line detailed description of the object. +
    inherited
    + +
    + +
    + toStringShort() + String + + + +
    +
    + A short, textual description of this widget. +
    inherited
    + +
    + +
    +
    + +
    +

    Operators

    +
    +
    + operator ==(Object other) + bool + + + +
    +
    + The equality operator. +
    @nonVirtual, inherited
    + +
    + +
    +
    + + + + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_widgets_mcg_scaffold/McgScaffold/McgScaffold.html b/doc/api/features_core_widgets_mcg_scaffold/McgScaffold/McgScaffold.html new file mode 100644 index 0000000..8f3e4bf --- /dev/null +++ b/doc/api/features_core_widgets_mcg_scaffold/McgScaffold/McgScaffold.html @@ -0,0 +1,171 @@ + + + + + + + + McgScaffold constructor - McgScaffold - mcg_scaffold library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    McgScaffold
    + +
    + +
    + + +
    +
    +

    McgScaffold constructor + Null safety +

    + +
    + McgScaffold(
    1. {AppBar? appBar,
    2. +
    3. ValueListenable<bool>? bodyBuilderWaiter,
    4. +
    5. Widget? body,
    6. +
    7. Widget? waitingWidget,
    8. +
    9. bool forceInternetCheck = false,
    10. +
    11. Key? key}
    12. +
    ) +
    + + + + + +
    +

    Implementation

    +
    McgScaffold({
    +  this.appBar,
    +  this.bodyBuilderWaiter,
    +  this.body,
    +  this.waitingWidget,
    +  this.forceInternetCheck = false,
    +  super.key,
    +});
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_widgets_mcg_scaffold/McgScaffold/appBar.html b/doc/api/features_core_widgets_mcg_scaffold/McgScaffold/appBar.html new file mode 100644 index 0000000..1b520b4 --- /dev/null +++ b/doc/api/features_core_widgets_mcg_scaffold/McgScaffold/appBar.html @@ -0,0 +1,161 @@ + + + + + + + + appBar property - McgScaffold class - mcg_scaffold library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    appBar
    + +
    + +
    + + +
    +
    +

    appBar property + Null safety +

    + +
    + AppBar? + appBar +
    final
    + +
    + + + +
    +

    Implementation

    +
    final AppBar? appBar;
    +
    +
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_widgets_mcg_scaffold/McgScaffold/body.html b/doc/api/features_core_widgets_mcg_scaffold/McgScaffold/body.html new file mode 100644 index 0000000..aa3a48f --- /dev/null +++ b/doc/api/features_core_widgets_mcg_scaffold/McgScaffold/body.html @@ -0,0 +1,161 @@ + + + + + + + + body property - McgScaffold class - mcg_scaffold library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    body
    + +
    + +
    + + +
    +
    +

    body property + Null safety +

    + +
    + Widget? + body +
    final
    + +
    + + + +
    +

    Implementation

    +
    final Widget? body;
    +
    +
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_widgets_mcg_scaffold/McgScaffold/bodyBuilderWaiter.html b/doc/api/features_core_widgets_mcg_scaffold/McgScaffold/bodyBuilderWaiter.html new file mode 100644 index 0000000..983ee0b --- /dev/null +++ b/doc/api/features_core_widgets_mcg_scaffold/McgScaffold/bodyBuilderWaiter.html @@ -0,0 +1,164 @@ + + + + + + + + bodyBuilderWaiter property - McgScaffold class - mcg_scaffold library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    bodyBuilderWaiter
    + +
    + +
    + + +
    +
    +

    bodyBuilderWaiter property + Null safety +

    + +
    + ValueListenable<bool>? + bodyBuilderWaiter +
    final
    + +
    + +
    +

    Awaits an external signal (complete) before building the body.

    +
    + + +
    +

    Implementation

    +
    final ValueListenable<bool>? bodyBuilderWaiter;
    +
    +
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_widgets_mcg_scaffold/McgScaffold/build.html b/doc/api/features_core_widgets_mcg_scaffold/McgScaffold/build.html new file mode 100644 index 0000000..2eb9e57 --- /dev/null +++ b/doc/api/features_core_widgets_mcg_scaffold/McgScaffold/build.html @@ -0,0 +1,225 @@ + + + + + + + + build method - McgScaffold class - mcg_scaffold library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    build
    + +
    + +
    + + +
    +
    +

    build method + Null safety +

    + +
    + +
    +
      +
    1. @override
    2. +
    +
    + +Widget +build(
    1. BuildContext context
    2. +
    ) + +
    override
    + +
    + +
    +

    Describes the part of the user interface represented by this widget.

    +

    The framework calls this method when this widget is inserted into the tree +in a given BuildContext and when the dependencies of this widget change +(e.g., an InheritedWidget referenced by this widget changes). This +method can potentially be called in every frame and should not have any side +effects beyond building a widget.

    +

    The framework replaces the subtree below this widget with the widget +returned by this method, either by updating the existing subtree or by +removing the subtree and inflating a new subtree, depending on whether the +widget returned by this method can update the root of the existing +subtree, as determined by calling Widget.canUpdate.

    +

    Typically implementations return a newly created constellation of widgets +that are configured with information from this widget's constructor and +from the given BuildContext.

    +

    The given BuildContext contains information about the location in the +tree at which this widget is being built. For example, the context +provides the set of inherited widgets for this location in the tree. A +given widget might be built with multiple different BuildContext +arguments over time if the widget is moved around the tree or if the +widget is inserted into the tree in multiple places at once.

    +

    The implementation of this method must only depend on:

    + +

    If a widget's build method is to depend on anything else, use a +StatefulWidget instead.

    +

    See also:

    +
      +
    • StatelessWidget, which contains the discussion on performance considerations.
    • +
    +
    + + + +
    +

    Implementation

    +
    @override
    +Widget build(BuildContext context) {
    +  if (forceInternetCheck) {
    +    _connectionsService.internetConnectionStatusListenable.addListener(
    +      () => _handleOverlayDisplay(context: context),
    +    );
    +    if (_connectionsService.internetConnectionStatusListenable.value ==
    +        InternetConnectionStatus.disconnected) _handleOverlayDisplay(context: context);
    +  }
    +
    +  return Scaffold(
    +    appBar: appBar,
    +    body: bodyBuilderWaiter != null
    +        ? ValueListenableBuilder<bool>(
    +            valueListenable: bodyBuilderWaiter!,
    +            builder: (context, final isReady, child) => !isReady
    +                ? Center(child: waitingWidget ?? const CircularProgressIndicator())
    +                : body ?? const SizedBox.shrink(),
    +          )
    +        : body ?? const SizedBox.shrink(),
    +  );
    +}
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_widgets_mcg_scaffold/McgScaffold/forceInternetCheck.html b/doc/api/features_core_widgets_mcg_scaffold/McgScaffold/forceInternetCheck.html new file mode 100644 index 0000000..651b858 --- /dev/null +++ b/doc/api/features_core_widgets_mcg_scaffold/McgScaffold/forceInternetCheck.html @@ -0,0 +1,164 @@ + + + + + + + + forceInternetCheck property - McgScaffold class - mcg_scaffold library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    forceInternetCheck
    + +
    + +
    + + +
    +
    +

    forceInternetCheck property + Null safety +

    + +
    + bool + forceInternetCheck +
    final
    + +
    + +
    +

    Enabling listing to ConnectionState, showing a small text at the top, when connectivity is lost.

    +
    + + +
    +

    Implementation

    +
    final bool forceInternetCheck;
    +
    +
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_widgets_mcg_scaffold/McgScaffold/waitingWidget.html b/doc/api/features_core_widgets_mcg_scaffold/McgScaffold/waitingWidget.html new file mode 100644 index 0000000..dea54c5 --- /dev/null +++ b/doc/api/features_core_widgets_mcg_scaffold/McgScaffold/waitingWidget.html @@ -0,0 +1,165 @@ + + + + + + + + waitingWidget property - McgScaffold class - mcg_scaffold library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    waitingWidget
    + +
    + +
    + + +
    +
    +

    waitingWidget property + Null safety +

    + +
    + Widget? + waitingWidget +
    final
    + +
    + +
    +

    Custom widget to be used while awaiting bodyBuilderWaiter.

    +

    Defaults to using PlatformCircularProgressIndicator.

    +
    + + +
    +

    Implementation

    +
    final Widget? waitingWidget;
    +
    +
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_widgets_mcg_scaffold/features_core_widgets_mcg_scaffold-library.html b/doc/api/features_core_widgets_mcg_scaffold/features_core_widgets_mcg_scaffold-library.html new file mode 100644 index 0000000..e33ca63 --- /dev/null +++ b/doc/api/features_core_widgets_mcg_scaffold/features_core_widgets_mcg_scaffold-library.html @@ -0,0 +1,190 @@ + + + + + + + + mcg_scaffold library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    mcg_scaffold
    + +
    + +
    + + +
    +
    +

    mcg_scaffold library + Null safety + +

    + + + + +
    +

    Classes

    + +
    +
    + McgScaffold + +
    +
    + +
    + +
    +
    + + + + + + + + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_widgets_state_multi_value_listenable_builder/MultiValueListenableBuilder-class.html b/doc/api/features_core_widgets_state_multi_value_listenable_builder/MultiValueListenableBuilder-class.html new file mode 100644 index 0000000..0eb9104 --- /dev/null +++ b/doc/api/features_core_widgets_state_multi_value_listenable_builder/MultiValueListenableBuilder-class.html @@ -0,0 +1,427 @@ + + + + + + + + MultiValueListenableBuilder class - multi_value_listenable_builder library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    MultiValueListenableBuilder
    + +
    + +
    + + +
    +
    +

    MultiValueListenableBuilder class + Null safety + +

    + + +
    +

    This widget listens to multiple ValueListenables and calls given builder function if any one of them changes.

    +
    + + +
    +
    + +
    Inheritance
    +
    + +
    + + + + + + + +
    +
    + + +
    +

    Constructors

    + +
    +
    + MultiValueListenableBuilder({required List<ValueListenable> valueListenables, required Widget builder(BuildContext context, List values, Widget? child), Widget? child, Key? key}) +
    +
    + +
    const
    +
    +
    +
    + +
    +

    Properties

    + +
    +
    + builder + Widget Function(BuildContext context, List values, Widget? child) + +
    +
    + The builder function to be called when value of any of the ValueListenable changes. +The order of values list will be same as valueListenables list. +
    final
    + +
    + +
    + child + Widget? + +
    +
    + An optional child widget which will be available as child parameter in builder. +
    final
    + +
    + +
    + hashCode + int + +
    +
    + The hash code for this object. +
    @nonVirtual, read-only, inherited
    + +
    + +
    + key + Key? + +
    +
    + Controls how one widget replaces another widget in the tree. +
    final, inherited
    + +
    + +
    + runtimeType + Type + +
    +
    + A representation of the runtime type of the object. +
    read-only, inherited
    + +
    + +
    + valueListenables + List<ValueListenable> + +
    +
    + List of ValueListenables to be listened to. +
    final
    + +
    + +
    +
    + + +
    +

    Methods

    +
    +
    + build(BuildContext context) + Widget + + + +
    +
    + Describes the part of the user interface represented by this widget. +
    override
    + +
    + +
    + createElement() + StatelessElement + + + +
    +
    + Creates a StatelessElement to manage this widget's location in the tree. +
    inherited
    + +
    + +
    + debugDescribeChildren() + List<DiagnosticsNode> + + + +
    +
    + Returns a list of DiagnosticsNode objects describing this node's +children. +
    @protected, inherited
    + +
    + +
    + debugFillProperties(DiagnosticPropertiesBuilder properties) + → void + + + +
    +
    + Add additional properties associated with the node. +
    inherited
    + +
    + +
    + noSuchMethod(Invocation invocation) + → dynamic + + + +
    +
    + Invoked when a non-existent method or property is accessed. +
    inherited
    + +
    + +
    + toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) + DiagnosticsNode + + + +
    +
    + Returns a debug representation of the object that is used by debugging +tools and by DiagnosticsNode.toStringDeep. +
    inherited
    + +
    + +
    + toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) + String + + + +
    +
    + A string representation of this object. +
    inherited
    + +
    + +
    + toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug}) + String + + + +
    +
    + Returns a string representation of this node and its descendants. +
    inherited
    + +
    + +
    + toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) + String + + + +
    +
    + Returns a one-line detailed description of the object. +
    inherited
    + +
    + +
    + toStringShort() + String + + + +
    +
    + A short, textual description of this widget. +
    inherited
    + +
    + +
    +
    + +
    +

    Operators

    +
    +
    + operator ==(Object other) + bool + + + +
    +
    + The equality operator. +
    @nonVirtual, inherited
    + +
    + +
    +
    + + + + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_widgets_state_multi_value_listenable_builder/MultiValueListenableBuilder/MultiValueListenableBuilder.html b/doc/api/features_core_widgets_state_multi_value_listenable_builder/MultiValueListenableBuilder/MultiValueListenableBuilder.html new file mode 100644 index 0000000..8aebe02 --- /dev/null +++ b/doc/api/features_core_widgets_state_multi_value_listenable_builder/MultiValueListenableBuilder/MultiValueListenableBuilder.html @@ -0,0 +1,158 @@ + + + + + + + + MultiValueListenableBuilder constructor - MultiValueListenableBuilder - multi_value_listenable_builder library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    MultiValueListenableBuilder
    + +
    + +
    + + +
    +
    +

    MultiValueListenableBuilder constructor + Null safety +

    + +
    const + MultiValueListenableBuilder(
    1. {required List<ValueListenable> valueListenables,
    2. +
    3. required Widget builder(
      1. BuildContext context,
      2. +
      3. List values,
      4. +
      5. Widget? child
      6. +
      +),
    4. +
    5. Widget? child,
    6. +
    7. Key? key}
    8. +
    ) +
    + + + + + +
    +

    Implementation

    +
    const MultiValueListenableBuilder({
    +  required this.valueListenables,
    +  required this.builder,
    +  this.child,
    +  super.key,
    +}) : assert(valueListenables.length != 0);
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_widgets_state_multi_value_listenable_builder/MultiValueListenableBuilder/build.html b/doc/api/features_core_widgets_state_multi_value_listenable_builder/MultiValueListenableBuilder/build.html new file mode 100644 index 0000000..7ce098f --- /dev/null +++ b/doc/api/features_core_widgets_state_multi_value_listenable_builder/MultiValueListenableBuilder/build.html @@ -0,0 +1,201 @@ + + + + + + + + build method - MultiValueListenableBuilder class - multi_value_listenable_builder library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    build
    + +
    + +
    + + +
    +
    +

    build method + Null safety +

    + +
    + +
    +
      +
    1. @override
    2. +
    +
    + +Widget +build(
    1. BuildContext context
    2. +
    ) + +
    override
    + +
    + +
    +

    Describes the part of the user interface represented by this widget.

    +

    The framework calls this method when this widget is inserted into the tree +in a given BuildContext and when the dependencies of this widget change +(e.g., an InheritedWidget referenced by this widget changes). This +method can potentially be called in every frame and should not have any side +effects beyond building a widget.

    +

    The framework replaces the subtree below this widget with the widget +returned by this method, either by updating the existing subtree or by +removing the subtree and inflating a new subtree, depending on whether the +widget returned by this method can update the root of the existing +subtree, as determined by calling Widget.canUpdate.

    +

    Typically implementations return a newly created constellation of widgets +that are configured with information from this widget's constructor and +from the given BuildContext.

    +

    The given BuildContext contains information about the location in the +tree at which this widget is being built. For example, the context +provides the set of inherited widgets for this location in the tree. A +given widget might be built with multiple different BuildContext +arguments over time if the widget is moved around the tree or if the +widget is inserted into the tree in multiple places at once.

    +

    The implementation of this method must only depend on:

    + +

    If a widget's build method is to depend on anything else, use a +StatefulWidget instead.

    +

    See also:

    +
      +
    • StatelessWidget, which contains the discussion on performance considerations.
    • +
    +
    + + + +
    +

    Implementation

    +
    @override
    +Widget build(BuildContext context) {
    +  return AnimatedBuilder(
    +    animation: Listenable.merge(valueListenables),
    +    builder: (context, child) {
    +      final providedValues = valueListenables.map((final listenable) => listenable.value);
    +      return builder(context, List<dynamic>.unmodifiable(providedValues), child);
    +    },
    +    child: child,
    +  );
    +}
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_widgets_state_multi_value_listenable_builder/MultiValueListenableBuilder/builder.html b/doc/api/features_core_widgets_state_multi_value_listenable_builder/MultiValueListenableBuilder/builder.html new file mode 100644 index 0000000..6741209 --- /dev/null +++ b/doc/api/features_core_widgets_state_multi_value_listenable_builder/MultiValueListenableBuilder/builder.html @@ -0,0 +1,152 @@ + + + + + + + + builder property - MultiValueListenableBuilder class - multi_value_listenable_builder library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    builder
    + +
    + +
    + + +
    +
    +

    builder property + Null safety +

    + +
    + Widget Function(BuildContext context, List values, Widget? child) + builder +
    final
    + +
    + +
    +

    The builder function to be called when value of any of the ValueListenable changes. +The order of values list will be same as valueListenables list.

    +
    + + +
    +

    Implementation

    +
    final Widget Function(BuildContext context, List<dynamic> values, Widget? child) builder;
    +
    +
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_widgets_state_multi_value_listenable_builder/MultiValueListenableBuilder/child.html b/doc/api/features_core_widgets_state_multi_value_listenable_builder/MultiValueListenableBuilder/child.html new file mode 100644 index 0000000..985a3d2 --- /dev/null +++ b/doc/api/features_core_widgets_state_multi_value_listenable_builder/MultiValueListenableBuilder/child.html @@ -0,0 +1,151 @@ + + + + + + + + child property - MultiValueListenableBuilder class - multi_value_listenable_builder library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    child
    + +
    + +
    + + +
    +
    +

    child property + Null safety +

    + +
    + Widget? + child +
    final
    + +
    + +
    +

    An optional child widget which will be available as child parameter in builder.

    +
    + + +
    +

    Implementation

    +
    final Widget? child;
    +
    +
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_widgets_state_multi_value_listenable_builder/MultiValueListenableBuilder/valueListenables.html b/doc/api/features_core_widgets_state_multi_value_listenable_builder/MultiValueListenableBuilder/valueListenables.html new file mode 100644 index 0000000..d4aa5bf --- /dev/null +++ b/doc/api/features_core_widgets_state_multi_value_listenable_builder/MultiValueListenableBuilder/valueListenables.html @@ -0,0 +1,151 @@ + + + + + + + + valueListenables property - MultiValueListenableBuilder class - multi_value_listenable_builder library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    valueListenables
    + +
    + +
    + + +
    +
    +

    valueListenables property + Null safety +

    + +
    + List<ValueListenable> + valueListenables +
    final
    + +
    + +
    +

    List of ValueListenables to be listened to.

    +
    + + +
    +

    Implementation

    +
    final List<ValueListenable> valueListenables;
    +
    +
    +
    + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_widgets_state_multi_value_listenable_builder/features_core_widgets_state_multi_value_listenable_builder-library.html b/doc/api/features_core_widgets_state_multi_value_listenable_builder/features_core_widgets_state_multi_value_listenable_builder-library.html new file mode 100644 index 0000000..cf47f6a --- /dev/null +++ b/doc/api/features_core_widgets_state_multi_value_listenable_builder/features_core_widgets_state_multi_value_listenable_builder-library.html @@ -0,0 +1,190 @@ + + + + + + + + multi_value_listenable_builder library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    multi_value_listenable_builder
    + +
    + +
    + + +
    +
    +

    multi_value_listenable_builder library + Null safety + +

    + + + + +
    +

    Classes

    + +
    +
    + MultiValueListenableBuilder + +
    +
    + This widget listens to multiple ValueListenables and calls given builder function if any one of them changes. +
    + +
    +
    + + + + + + + + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_widgets_state_view_model_builder/ViewModelBuilder-class.html b/doc/api/features_core_widgets_state_view_model_builder/ViewModelBuilder-class.html new file mode 100644 index 0000000..4f2578a --- /dev/null +++ b/doc/api/features_core_widgets_state_view_model_builder/ViewModelBuilder-class.html @@ -0,0 +1,387 @@ + + + + + + + + ViewModelBuilder class - view_model_builder library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    ViewModelBuilder
    + +
    + +
    + + +
    +
    +

    ViewModelBuilder<T extends BaseViewModel<Object?>> class + Null safety + +

    + + + + +
    +
    + +
    Inheritance
    +
    + +
    + + + + + + + +
    +
    + + +
    +

    Constructors

    + +
    +
    + ViewModelBuilder({required Widget builder(BuildContext context, T model), required T viewModelBuilder(), dynamic argumentBuilder()?, Key? key}) +
    +
    + +
    const
    +
    +
    +
    + +
    +

    Properties

    + +
    +
    + hashCode + int + +
    +
    + The hash code for this object. +
    @nonVirtual, read-only, inherited
    + +
    + +
    + key + Key? + +
    +
    + Controls how one widget replaces another widget in the tree. +
    final, inherited
    + +
    + +
    + runtimeType + Type + +
    +
    + A representation of the runtime type of the object. +
    read-only, inherited
    + +
    + +
    +
    + + +
    +

    Methods

    +
    +
    + createElement() + StatefulElement + + + +
    +
    + Creates a StatefulElement to manage this widget's location in the tree. +
    inherited
    + +
    + +
    + createState() + → _ViewModelBuilderState<T> + + + +
    +
    + Creates the mutable state for this widget at a given location in the tree. +
    override
    + +
    + +
    + debugDescribeChildren() + List<DiagnosticsNode> + + + +
    +
    + Returns a list of DiagnosticsNode objects describing this node's +children. +
    @protected, inherited
    + +
    + +
    + debugFillProperties(DiagnosticPropertiesBuilder properties) + → void + + + +
    +
    + Add additional properties associated with the node. +
    inherited
    + +
    + +
    + noSuchMethod(Invocation invocation) + → dynamic + + + +
    +
    + Invoked when a non-existent method or property is accessed. +
    inherited
    + +
    + +
    + toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) + DiagnosticsNode + + + +
    +
    + Returns a debug representation of the object that is used by debugging +tools and by DiagnosticsNode.toStringDeep. +
    inherited
    + +
    + +
    + toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) + String + + + +
    +
    + A string representation of this object. +
    inherited
    + +
    + +
    + toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug}) + String + + + +
    +
    + Returns a string representation of this node and its descendants. +
    inherited
    + +
    + +
    + toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) + String + + + +
    +
    + Returns a one-line detailed description of the object. +
    inherited
    + +
    + +
    + toStringShort() + String + + + +
    +
    + A short, textual description of this widget. +
    inherited
    + +
    + +
    +
    + +
    +

    Operators

    +
    +
    + operator ==(Object other) + bool + + + +
    +
    + The equality operator. +
    @nonVirtual, inherited
    + +
    + +
    +
    + + + + + +
    + + + + + +
    + + + + + + + + + + + + + + diff --git a/doc/api/features_core_widgets_state_view_model_builder/ViewModelBuilder/ViewModelBuilder.html b/doc/api/features_core_widgets_state_view_model_builder/ViewModelBuilder/ViewModelBuilder.html new file mode 100644 index 0000000..d67f1ba --- /dev/null +++ b/doc/api/features_core_widgets_state_view_model_builder/ViewModelBuilder/ViewModelBuilder.html @@ -0,0 +1,158 @@ + + + + + + + + ViewModelBuilder constructor - ViewModelBuilder - view_model_builder library - Dart API + + + + + + + + + + + + + + + + + +
    + +
    + + +
    ViewModelBuilder
    + +
    + +
    + + +
    +
    +

    ViewModelBuilder<T extends BaseViewModel<Object?>> constructor + Null safety +

    + +
    const + ViewModelBuilder<T extends BaseViewModel<Object?>>(
    1. {required Widget builder(
      1. BuildContext context,
      2. +
      3. T model
      4. +
      +),
    2. +
    3. required T viewModelBuilder(
        +),
      1. +
      2. dynamic argumentBuilder(
          +)?,
        1. +
        2. Key? key}
        3. +
        ) +
        + + + + + +
        +

        Implementation

        +
        const ViewModelBuilder({
        +  required Widget Function(BuildContext context, T model) builder,
        +  required T Function() viewModelBuilder,
        +  dynamic Function()? argumentBuilder,
        +  super.key,
        +})  : _builder = builder,
        +      _viewModelBuilder = viewModelBuilder,
        +      _argumentBuilder = argumentBuilder;
        +
        + + +
        + + + + + +
        + + + + + + + + + + + + + + diff --git a/doc/api/features_core_widgets_state_view_model_builder/ViewModelBuilder/createState.html b/doc/api/features_core_widgets_state_view_model_builder/ViewModelBuilder/createState.html new file mode 100644 index 0000000..60f9e8c --- /dev/null +++ b/doc/api/features_core_widgets_state_view_model_builder/ViewModelBuilder/createState.html @@ -0,0 +1,168 @@ + + + + + + + + createState method - ViewModelBuilder class - view_model_builder library - Dart API + + + + + + + + + + + + + + + + + +
        + +
        + + +
        createState
        + +
        + +
        + + +
        +
        +

        createState method + Null safety +

        + +
        + +
        +
          +
        1. @override
        2. +
        +
        + +_ViewModelBuilderState<T> +createState() + +
        override
        + +
        + +
        +

        Creates the mutable state for this widget at a given location in the tree.

        +

        Subclasses should override this method to return a newly created +instance of their associated State subclass:

        +
        @override
        +State<MyWidget> createState() => _MyWidgetState();
        +
        +

        The framework can call this method multiple times over the lifetime of +a StatefulWidget. For example, if the widget is inserted into the tree +in multiple locations, the framework will create a separate State object +for each location. Similarly, if the widget is removed from the tree and +later inserted into the tree again, the framework will call createState +again to create a fresh State object, simplifying the lifecycle of +State objects.

        +
        + + + +
        +

        Implementation

        +
        @override
        +_ViewModelBuilderState<T> createState() => _ViewModelBuilderState<T>();
        +
        + + +
        + + + + + +
        + + + + + + + + + + + + + + diff --git a/doc/api/features_core_widgets_state_view_model_builder/features_core_widgets_state_view_model_builder-library.html b/doc/api/features_core_widgets_state_view_model_builder/features_core_widgets_state_view_model_builder-library.html new file mode 100644 index 0000000..ee4ada2 --- /dev/null +++ b/doc/api/features_core_widgets_state_view_model_builder/features_core_widgets_state_view_model_builder-library.html @@ -0,0 +1,190 @@ + + + + + + + + view_model_builder library - Dart API + + + + + + + + + + + + + + + + + +
        + +
        + + +
        view_model_builder
        + +
        + +
        + + +
        +
        +

        view_model_builder library + Null safety + +

        + + + + +
        +

        Classes

        + +
        +
        + ViewModelBuilder<T extends BaseViewModel<Object?>> + +
        +
        + +
        + +
        +
        + + + + + + + + + +
        + + + + + +
        + + + + + + + + + + + + + + diff --git a/doc/api/features_home_abstracts_images_api/ImagesApi-class.html b/doc/api/features_home_abstracts_images_api/ImagesApi-class.html new file mode 100644 index 0000000..831676b --- /dev/null +++ b/doc/api/features_home_abstracts_images_api/ImagesApi-class.html @@ -0,0 +1,287 @@ + + + + + + + + ImagesApi class - images_api library - Dart API + + + + + + + + + + + + + + + + + +
        + +
        + + +
        ImagesApi
        + +
        + +
        + + +
        +
        +

        ImagesApi class + Null safety + +

        + + +
        +

        Interface for implementing image-fetching strategies, specific to a resource location on the internet.

        +

        Since I used a site that was more obscure than the ones in the examples, this (otherwise pointless +and convoluting) interface is for adding a bit of flexibility to change strategy to some other site.

        +
        + + +
        +
        + + + + + +
        Implementers
        +
        + + + +
        +
        + + +
        +

        Constructors

        + +
        +
        + ImagesApi() +
        +
        + +
        +
        +
        + +
        +

        Properties

        + +
        +
        + hashCode + int + +
        +
        + The hash code for this object. +
        read-only, inherited
        + +
        + +
        + runtimeType + Type + +
        +
        + A representation of the runtime type of the object. +
        read-only, inherited
        + +
        + +
        +
        + + +
        +

        Methods

        +
        +
        + fetchImageUri({required String token}) + FutureOr<Iterable<ImageModelDTO>> + + + +
        +
        + Returns images fetched through an API as ImageModelDTOs. + + +
        + +
        + noSuchMethod(Invocation invocation) + → dynamic + + + +
        +
        + Invoked when a non-existent method or property is accessed. +
        inherited
        + +
        + +
        + searchImages({required String searchStr, required String token}) + FutureOr<Iterable<ImageModelDTO>> + + + +
        +
        + + + +
        + +
        + toString() + String + + + +
        +
        + A string representation of this object. +
        inherited
        + +
        + +
        +
        + +
        +

        Operators

        +
        +
        + operator ==(Object other) + bool + + + +
        +
        + The equality operator. +
        inherited
        + +
        + +
        +
        + + + + + +
        + + + + + +
        + + + + + + + + + + + + + + diff --git a/doc/api/features_home_abstracts_images_api/ImagesApi/ImagesApi.html b/doc/api/features_home_abstracts_images_api/ImagesApi/ImagesApi.html new file mode 100644 index 0000000..a0eee4c --- /dev/null +++ b/doc/api/features_home_abstracts_images_api/ImagesApi/ImagesApi.html @@ -0,0 +1,131 @@ + + + + + + + + ImagesApi constructor - ImagesApi - images_api library - Dart API + + + + + + + + + + + + + + + + + +
        + +
        + + +
        ImagesApi
        + +
        + +
        + + +
        +
        +

        ImagesApi constructor + Null safety +

        + +
        + ImagesApi() +
        + + + + + + + +
        + + + + + +
        + + + + + + + + + + + + + + diff --git a/doc/api/features_home_abstracts_images_api/ImagesApi/fetchImageUri.html b/doc/api/features_home_abstracts_images_api/ImagesApi/fetchImageUri.html new file mode 100644 index 0000000..4e4ab4f --- /dev/null +++ b/doc/api/features_home_abstracts_images_api/ImagesApi/fetchImageUri.html @@ -0,0 +1,144 @@ + + + + + + + + fetchImageUri method - ImagesApi class - images_api library - Dart API + + + + + + + + + + + + + + + + + +
        + +
        + + +
        fetchImageUri
        + +
        + +
        + + +
        +
        +

        fetchImageUri method + Null safety +

        + +
        + + +FutureOr<Iterable<ImageModelDTO>> +fetchImageUri(
        1. {required String token}
        2. +
        ) + + + +
        + +
        +

        Returns images fetched through an API as ImageModelDTOs.

        +
        + + + +
        +

        Implementation

        +
        FutureOr<Iterable<ImageModelDTO>> fetchImageUri({required String token});
        +
        + + +
        + + + + + +
        + + + + + + + + + + + + + + diff --git a/doc/api/features_home_abstracts_images_api/ImagesApi/searchImages.html b/doc/api/features_home_abstracts_images_api/ImagesApi/searchImages.html new file mode 100644 index 0000000..55d4c34 --- /dev/null +++ b/doc/api/features_home_abstracts_images_api/ImagesApi/searchImages.html @@ -0,0 +1,145 @@ + + + + + + + + searchImages method - ImagesApi class - images_api library - Dart API + + + + + + + + + + + + + + + + + +
        + +
        + + +
        searchImages
        + +
        + +
        + + +
        +
        +

        searchImages method + Null safety +

        + +
        + + +FutureOr<Iterable<ImageModelDTO>> +searchImages(
        1. {required String searchStr,
        2. +
        3. required String token}
        4. +
        ) + + + +
        + + + + +
        +

        Implementation

        +
        FutureOr<Iterable<ImageModelDTO>> searchImages({
        +  required String searchStr,
        +  required String token,
        +});
        +
        + + +
        + + + + + +
        + + + + + + + + + + + + + + diff --git a/doc/api/features_home_abstracts_images_api/features_home_abstracts_images_api-library.html b/doc/api/features_home_abstracts_images_api/features_home_abstracts_images_api-library.html new file mode 100644 index 0000000..b9c4478 --- /dev/null +++ b/doc/api/features_home_abstracts_images_api/features_home_abstracts_images_api-library.html @@ -0,0 +1,190 @@ + + + + + + + + images_api library - Dart API + + + + + + + + + + + + + + + + + +
        + +
        + + +
        images_api
        + +
        + +
        + + +
        +
        +

        images_api library + Null safety + +

        + + + + +
        +

        Classes

        + +
        +
        + ImagesApi + +
        +
        + Interface for implementing image-fetching strategies, specific to a resource location on the internet. +
        + +
        +
        + + + + + + + + + +
        + + + + + +
        + + + + + + + + + + + + + + diff --git a/doc/api/features_home_api_unsplash_images_api/UnsplashImagesApi-class.html b/doc/api/features_home_api_unsplash_images_api/UnsplashImagesApi-class.html new file mode 100644 index 0000000..cabed14 --- /dev/null +++ b/doc/api/features_home_api_unsplash_images_api/UnsplashImagesApi-class.html @@ -0,0 +1,315 @@ + + + + + + + + UnsplashImagesApi class - unsplash_images_api library - Dart API + + + + + + + + + + + + + + + + + +
        + +
        + + +
        UnsplashImagesApi
        + +
        + +
        + + +
        +
        +

        UnsplashImagesApi class + Null safety + +

        + + + + +
        +
        + + + +
        Implemented types
        +
        + +
        + + + + + +
        +
        + + +
        +

        Constructors

        + +
        +
        + UnsplashImagesApi() +
        +
        + +
        +
        +
        + +
        +

        Properties

        + +
        +
        + hashCode + int + +
        +
        + The hash code for this object. +
        read-only, inherited
        + +
        + +
        + random + Random + +
        +
        + +
        final
        + +
        + +
        + runtimeType + Type + +
        +
        + A representation of the runtime type of the object. +
        read-only, inherited
        + +
        + +
        +
        + + +
        +

        Methods

        +
        +
        + fetchImageUri({required String token}) + FutureOr<Iterable<ImageModelDTO>> + + + +
        +
        + Returns images fetched through an API as ImageModelDTOs. +
        override
        + +
        + +
        + noSuchMethod(Invocation invocation) + → dynamic + + + +
        +
        + Invoked when a non-existent method or property is accessed. +
        inherited
        + +
        + +
        + searchImages({required String searchStr, required String token}) + FutureOr<Iterable<ImageModelDTO>> + + + +
        +
        + +
        override
        + +
        + +
        + toString() + String + + + +
        +
        + A string representation of this object. +
        inherited
        + +
        + +
        +
        + +
        +

        Operators

        +
        +
        + operator ==(Object other) + bool + + + +
        +
        + The equality operator. +
        inherited
        + +
        + +
        +
        + +
        +

        Static Properties

        + +
        +
        + locate + UnsplashImagesApi + +
        +
        + +
        read-only
        + +
        + +
        +
        + + + + +
        + + + + + +
        + + + + + + + + + + + + + + diff --git a/doc/api/features_home_api_unsplash_images_api/UnsplashImagesApi/UnsplashImagesApi.html b/doc/api/features_home_api_unsplash_images_api/UnsplashImagesApi/UnsplashImagesApi.html new file mode 100644 index 0000000..a2c820c --- /dev/null +++ b/doc/api/features_home_api_unsplash_images_api/UnsplashImagesApi/UnsplashImagesApi.html @@ -0,0 +1,134 @@ + + + + + + + + UnsplashImagesApi constructor - UnsplashImagesApi - unsplash_images_api library - Dart API + + + + + + + + + + + + + + + + + +
        + +
        + + +
        UnsplashImagesApi
        + +
        + +
        + + +
        +
        +

        UnsplashImagesApi constructor + Null safety +

        + +
        + UnsplashImagesApi() +
        + + + + + + + +
        + + + + + +
        + + + + + + + + + + + + + + diff --git a/doc/api/features_home_api_unsplash_images_api/UnsplashImagesApi/fetchImageUri.html b/doc/api/features_home_api_unsplash_images_api/UnsplashImagesApi/fetchImageUri.html new file mode 100644 index 0000000..c1cf99f --- /dev/null +++ b/doc/api/features_home_api_unsplash_images_api/UnsplashImagesApi/fetchImageUri.html @@ -0,0 +1,188 @@ + + + + + + + + fetchImageUri method - UnsplashImagesApi class - unsplash_images_api library - Dart API + + + + + + + + + + + + + + + + + +
        + +
        + + +
        fetchImageUri
        + +
        + +
        + + +
        +
        +

        fetchImageUri method + Null safety +

        + +
        + +
        +
          +
        1. @override
        2. +
        +
        + +FutureOr<Iterable<ImageModelDTO>> +fetchImageUri(
        1. {required String token}
        2. +
        ) + +
        override
        + +
        + +
        +

        Returns images fetched through an API as ImageModelDTOs.

        +
        + + + +
        +

        Implementation

        +
        @override
        +FutureOr<Iterable<ImageModelDTO>> fetchImageUri({required String token}) async {
        +  // Dummy fetching delay emulation
        +  await Future.delayed(const Duration(
        +      milliseconds: ConstValues.defaultEmulatedLatencyMillis * ConstValues.numberOfImages));
        +
        +  final Iterable<Map<String, dynamic>> fetchedImageModelDtos;
        +  try {
        +    // Create fixed number of images
        +    final dummyImageModels =
        +        Iterable<int>.generate(ConstValues.numberOfImages).map((final imageIndex) {
        +      // Drawing from a normal distribution
        +      final imageSide =
        +          random.nextIntInRange(min: ConstValues.minImageSize, max: ConstValues.maxImageSize);
        +
        +      final imageUri = _imageUrlGenerator(imageSide: imageSide);
        +
        +      return ImageModelDTO(
        +        imageIndex: imageIndex,
        +        uri: imageUri,
        +        // Custom dummy name for the image
        +
        +        imageName: Strings.current.imageNameFetch(imageIndex + 1, imageSide),
        +      );
        +    });
        +
        +    // Emulating serialization
        +    fetchedImageModelDtos = dummyImageModels.map((final dummyModel) => dummyModel.toJson());
        +  } on Exception catch (ex, stackTrace) {
        +    _loggingService.handleException(ex, stackTrace);
        +    return const Iterable.empty();
        +  }
        +
        +  // Emulating deserialization
        +  return fetchedImageModelDtos
        +      .map((final emulatedModelSerialized) => ImageModelDTO.fromJson(emulatedModelSerialized));
        +}
        +
        + + +
        + + + + + +
        + + + + + + + + + + + + + + diff --git a/doc/api/features_home_api_unsplash_images_api/UnsplashImagesApi/locate.html b/doc/api/features_home_api_unsplash_images_api/UnsplashImagesApi/locate.html new file mode 100644 index 0000000..7ddef15 --- /dev/null +++ b/doc/api/features_home_api_unsplash_images_api/UnsplashImagesApi/locate.html @@ -0,0 +1,146 @@ + + + + + + + + locate property - UnsplashImagesApi class - unsplash_images_api library - Dart API + + + + + + + + + + + + + + + + + +
        + +
        + + +
        locate
        + +
        + +
        + + +
        +
        +

        locate property + Null safety +

        + + + +
        + +
        + UnsplashImagesApi + locate + + +
        + + + + +
        +

        Implementation

        +
        static UnsplashImagesApi get locate => Locator.locate();
        +
        + +
        + + +
        + + + + + +
        + + + + + + + + + + + + + + diff --git a/doc/api/features_home_api_unsplash_images_api/UnsplashImagesApi/random.html b/doc/api/features_home_api_unsplash_images_api/UnsplashImagesApi/random.html new file mode 100644 index 0000000..2498dee --- /dev/null +++ b/doc/api/features_home_api_unsplash_images_api/UnsplashImagesApi/random.html @@ -0,0 +1,141 @@ + + + + + + + + random property - UnsplashImagesApi class - unsplash_images_api library - Dart API + + + + + + + + + + + + + + + + + +
        + +
        + + +
        random
        + +
        + +
        + + +
        +
        +

        random property + Null safety +

        + +
        + Random + random +
        final
        + +
        + + + +
        +

        Implementation

        +
        final random = Random();
        +
        +
        +
        + + +
        + + + + + +
        + + + + + + + + + + + + + + diff --git a/doc/api/features_home_api_unsplash_images_api/UnsplashImagesApi/searchImages.html b/doc/api/features_home_api_unsplash_images_api/UnsplashImagesApi/searchImages.html new file mode 100644 index 0000000..780f337 --- /dev/null +++ b/doc/api/features_home_api_unsplash_images_api/UnsplashImagesApi/searchImages.html @@ -0,0 +1,188 @@ + + + + + + + + searchImages method - UnsplashImagesApi class - unsplash_images_api library - Dart API + + + + + + + + + + + + + + + + + +
        + +
        + + +
        searchImages
        + +
        + +
        + + +
        +
        +

        searchImages method + Null safety +

        + +
        + +
        +
          +
        1. @override
        2. +
        +
        + +FutureOr<Iterable<ImageModelDTO>> +searchImages(
        1. {required String searchStr,
        2. +
        3. required String token}
        4. +
        ) + +
        override
        + +
        + + + + +
        +

        Implementation

        +
        @override
        +FutureOr<Iterable<ImageModelDTO>> searchImages({
        +  required String searchStr,
        +  required String token,
        +}) async {
        +  final numberOfResults = random.nextIntInRange(min: 0, max: ConstValues.numberOfImages);
        +
        +  // Dummy fetching delay emulation
        +  await Future.delayed(
        +      Duration(milliseconds: ConstValues.defaultEmulatedLatencyMillis * numberOfResults));
        +
        +  final Iterable<Map<String, dynamic>> searchImageModelDtos;
        +  try {
        +    // Create (randomly-bounded) dummy number of images
        +    final dummyImageModels = Iterable<int>.generate(numberOfResults).map((final imageIndex) {
        +      // Drawing from a normal distribution
        +      final imageSide =
        +          random.nextIntInRange(min: ConstValues.minImageSize, max: ConstValues.maxImageSize);
        +
        +      final imageUri = _imageUrlGenerator(imageSide: imageSide);
        +
        +      return ImageModelDTO(
        +        imageIndex: imageIndex,
        +        uri: imageUri,
        +        // Custom dummy name for the image
        +        imageName: Strings.current.imageNameSearch(searchStr, imageIndex + 1),
        +      );
        +    });
        +
        +    // Emulating serialization
        +    searchImageModelDtos = dummyImageModels.map((final dummyModel) => dummyModel.toJson());
        +  } on Exception catch (ex, stackTrace) {
        +    _loggingService.handleException(ex, stackTrace);
        +    return List.empty();
        +  }
        +
        +  return searchImageModelDtos
        +      .map((final emulatedModelSerialized) => ImageModelDTO.fromJson(emulatedModelSerialized));
        +}
        +
        + + +
        + + + + + +
        + + + + + + + + + + + + + + diff --git a/doc/api/features_home_api_unsplash_images_api/features_home_api_unsplash_images_api-library.html b/doc/api/features_home_api_unsplash_images_api/features_home_api_unsplash_images_api-library.html new file mode 100644 index 0000000..7e87d22 --- /dev/null +++ b/doc/api/features_home_api_unsplash_images_api/features_home_api_unsplash_images_api-library.html @@ -0,0 +1,190 @@ + + + + + + + + unsplash_images_api library - Dart API + + + + + + + + + + + + + + + + + +
        + +
        + + +
        unsplash_images_api
        + +
        + +
        + + +
        +
        +

        unsplash_images_api library + Null safety + +

        + + + + +
        +

        Classes

        + +
        +
        + UnsplashImagesApi + +
        +
        + +
        + +
        +
        + + + + + + + + + +
        + + + + + +
        + + + + + + + + + + + + + + diff --git a/doc/api/features_home_data_dtos_image_model_dto/ImageModelDTO-class.html b/doc/api/features_home_data_dtos_image_model_dto/ImageModelDTO-class.html new file mode 100644 index 0000000..4b0fd4b --- /dev/null +++ b/doc/api/features_home_data_dtos_image_model_dto/ImageModelDTO-class.html @@ -0,0 +1,315 @@ + + + + + + + + ImageModelDTO class - image_model_dto library - Dart API + + + + + + + + + + + + + + + + + +
        + +
        + + +
        ImageModelDTO
        + +
        + +
        + + +
        +
        +

        ImageModelDTO class + Null safety + +

        + + + + +
        +
        + + + + + + + + +
        Annotations
        +
        + +
        +
        +
        + + +
        +

        Constructors

        + +
        +
        + ImageModelDTO({required Uri uri, required int imageIndex, required String imageName}) +
        +
        + +
        const
        +
        +
        + ImageModelDTO.fromJson(Map<String, dynamic> json) +
        +
        + +
        factory
        +
        +
        +
        + +
        +

        Properties

        + +
        +
        + hashCode + int + +
        +
        + The hash code for this object. +
        read-only, inherited
        + +
        + +
        + imageIndex + int + +
        +
        + A unique identifier that can be used for indexing the image. +
        final
        + +
        + +
        + imageName + String + +
        +
        + Given name of the image. +
        final
        + +
        + +
        + runtimeType + Type + +
        +
        + A representation of the runtime type of the object. +
        read-only, inherited
        + +
        + +
        + uri + Uri + +
        +
        + An image's target Uri. +
        final
        + +
        + +
        +
        + + +
        +

        Methods

        +
        +
        + noSuchMethod(Invocation invocation) + → dynamic + + + +
        +
        + Invoked when a non-existent method or property is accessed. +
        inherited
        + +
        + +
        + toJson() + Map<String, dynamic> + + + +
        +
        + + + +
        + +
        + toString() + String + + + +
        +
        + A string representation of this object. +
        inherited
        + +
        + +
        +
        + +
        +

        Operators

        +
        +
        + operator ==(Object other) + bool + + + +
        +
        + The equality operator. +
        inherited
        + +
        + +
        +
        + + + + + +
        + + + + + +
        + + + + + + + + + + + + + + diff --git a/doc/api/features_home_data_dtos_image_model_dto/ImageModelDTO/ImageModelDTO.fromJson.html b/doc/api/features_home_data_dtos_image_model_dto/ImageModelDTO/ImageModelDTO.fromJson.html new file mode 100644 index 0000000..3ccd80f --- /dev/null +++ b/doc/api/features_home_data_dtos_image_model_dto/ImageModelDTO/ImageModelDTO.fromJson.html @@ -0,0 +1,139 @@ + + + + + + + + ImageModelDTO.fromJson constructor - ImageModelDTO - image_model_dto library - Dart API + + + + + + + + + + + + + + + + + +
        + +
        + + +
        ImageModelDTO.fromJson
        + +
        + +
        + + +
        +
        +

        ImageModelDTO.fromJson constructor + Null safety +

        + +
        + ImageModelDTO.fromJson(
        1. Map<String, dynamic> json
        2. +
        ) +
        + + + + + +
        +

        Implementation

        +
        factory ImageModelDTO.fromJson(Map<String, dynamic> json) => _$ImageModelDTOFromJson(json);
        +
        + + +
        + + + + + +
        + + + + + + + + + + + + + + diff --git a/doc/api/features_home_data_dtos_image_model_dto/ImageModelDTO/ImageModelDTO.html b/doc/api/features_home_data_dtos_image_model_dto/ImageModelDTO/ImageModelDTO.html new file mode 100644 index 0000000..576c538 --- /dev/null +++ b/doc/api/features_home_data_dtos_image_model_dto/ImageModelDTO/ImageModelDTO.html @@ -0,0 +1,145 @@ + + + + + + + + ImageModelDTO constructor - ImageModelDTO - image_model_dto library - Dart API + + + + + + + + + + + + + + + + + +
        + +
        + + +
        ImageModelDTO
        + +
        + +
        + + +
        +
        +

        ImageModelDTO constructor + Null safety +

        + +
        const + ImageModelDTO(
        1. {required Uri uri,
        2. +
        3. required int imageIndex,
        4. +
        5. required String imageName}
        6. +
        ) +
        + + + + + +
        +

        Implementation

        +
        const ImageModelDTO({
        +  required this.uri,
        +  required this.imageIndex,
        +  required this.imageName,
        +});
        +
        + + +
        + + + + + +
        + + + + + + + + + + + + + + diff --git a/doc/api/features_home_data_dtos_image_model_dto/ImageModelDTO/imageIndex.html b/doc/api/features_home_data_dtos_image_model_dto/ImageModelDTO/imageIndex.html new file mode 100644 index 0000000..1b18f45 --- /dev/null +++ b/doc/api/features_home_data_dtos_image_model_dto/ImageModelDTO/imageIndex.html @@ -0,0 +1,144 @@ + + + + + + + + imageIndex property - ImageModelDTO class - image_model_dto library - Dart API + + + + + + + + + + + + + + + + + +
        + +
        + + +
        imageIndex
        + +
        + +
        + + +
        +
        +

        imageIndex property + Null safety +

        + +
        + int + imageIndex +
        final
        + +
        + +
        +

        A unique identifier that can be used for indexing the image.

        +
        + + +
        +

        Implementation

        +
        final int imageIndex;
        +
        +
        +
        + + +
        + + + + + +
        + + + + + + + + + + + + + + diff --git a/doc/api/features_home_data_dtos_image_model_dto/ImageModelDTO/imageName.html b/doc/api/features_home_data_dtos_image_model_dto/ImageModelDTO/imageName.html new file mode 100644 index 0000000..c876fd3 --- /dev/null +++ b/doc/api/features_home_data_dtos_image_model_dto/ImageModelDTO/imageName.html @@ -0,0 +1,144 @@ + + + + + + + + imageName property - ImageModelDTO class - image_model_dto library - Dart API + + + + + + + + + + + + + + + + + +
        + +
        + + +
        imageName
        + +
        + +
        + + +
        +
        +

        imageName property + Null safety +

        + +
        + String + imageName +
        final
        + +
        + +
        +

        Given name of the image.

        +
        + + +
        +

        Implementation

        +
        final String imageName;
        +
        +
        +
        + + +
        + + + + + +
        + + + + + + + + + + + + + + diff --git a/doc/api/features_home_data_dtos_image_model_dto/ImageModelDTO/toJson.html b/doc/api/features_home_data_dtos_image_model_dto/ImageModelDTO/toJson.html new file mode 100644 index 0000000..ef45b0e --- /dev/null +++ b/doc/api/features_home_data_dtos_image_model_dto/ImageModelDTO/toJson.html @@ -0,0 +1,143 @@ + + + + + + + + toJson method - ImageModelDTO class - image_model_dto library - Dart API + + + + + + + + + + + + + + + + + +
        + +
        + + +
        toJson
        + +
        + +
        + + +
        +
        +

        toJson method + Null safety +

        + +
        + + +Map<String, dynamic> +toJson() + + + +
        + + + + +
        +

        Implementation

        +
        Map<String, dynamic> toJson() => _$ImageModelDTOToJson(this);
        +
        + + +
        + + + + + +
        + + + + + + + + + + + + + + diff --git a/doc/api/features_home_data_dtos_image_model_dto/ImageModelDTO/uri.html b/doc/api/features_home_data_dtos_image_model_dto/ImageModelDTO/uri.html new file mode 100644 index 0000000..917b3af --- /dev/null +++ b/doc/api/features_home_data_dtos_image_model_dto/ImageModelDTO/uri.html @@ -0,0 +1,145 @@ + + + + + + + + uri property - ImageModelDTO class - image_model_dto library - Dart API + + + + + + + + + + + + + + + + + +
        + +
        + + +
        uri
        + +
        + +
        + + +
        +
        +

        uri property + Null safety +

        + +
        + Uri + uri +
        final
        + +
        + +
        +

        An image's target Uri.

        +

        Storing an image's ByteData is more expensive, memory-wise.

        +
        + + +
        +

        Implementation

        +
        final Uri uri;
        +
        +
        +
        + + +
        + + + + + +
        + + + + + + + + + + + + + + diff --git a/doc/api/features_home_data_dtos_image_model_dto/features_home_data_dtos_image_model_dto-library.html b/doc/api/features_home_data_dtos_image_model_dto/features_home_data_dtos_image_model_dto-library.html new file mode 100644 index 0000000..2937ce0 --- /dev/null +++ b/doc/api/features_home_data_dtos_image_model_dto/features_home_data_dtos_image_model_dto-library.html @@ -0,0 +1,190 @@ + + + + + + + + image_model_dto library - Dart API + + + + + + + + + + + + + + + + + +
        + +
        + + +
        image_model_dto
        + +
        + +
        + + +
        +
        +

        image_model_dto library + Null safety + +

        + + + + +
        +

        Classes

        + +
        +
        + ImageModelDTO + +
        +
        + +
        + +
        +
        + + + + + + + + + +
        + + + + + +
        + + + + + + + + + + + + + + diff --git a/doc/api/features_home_data_enums_search_option/SearchOption.html b/doc/api/features_home_data_enums_search_option/SearchOption.html new file mode 100644 index 0000000..7b17944 --- /dev/null +++ b/doc/api/features_home_data_enums_search_option/SearchOption.html @@ -0,0 +1,354 @@ + + + + + + + + SearchOption enum - search_option library - Dart API + + + + + + + + + + + + + + + + + +
        + +
        + + +
        SearchOption
        + +
        + +
        + + +
        +
        + +

        + SearchOption + enum + Null safety + + +

        +
        + + +
        +

        Represents an option for specifying a search strategy, for an ImageModel

        +
        + + +
        +
        + +
        Inheritance
        +
        + +
        + + + + +
        +
        + + +
        +

        Constructors

        + +
        +
        + SearchOption() +
        +
        + +
        const
        +
        +
        +
        + +
        +

        Values

        + +
        +
        + local + → const SearchOption + + +
        +
        + + + +
        + SearchOption() +
        +
        + +
        + web + → const SearchOption + + +
        +
        + + + +
        + SearchOption() +
        +
        + +
        +
        + +
        +

        Properties

        + +
        +
        + hashCode + int + +
        +
        + The hash code for this object. +
        read-only, inherited
        + +
        + +
        + index + int + +
        +
        + A numeric identifier for the enumerated value. +
        read-only, inherited
        + +
        + +
        + name + String + +
        +
        + +
        read-only
        + +
        + +
        + runtimeType + Type + +
        +
        + A representation of the runtime type of the object. +
        read-only, inherited
        + +
        + +
        +
        + + +
        +

        Methods

        +
        +
        + noSuchMethod(Invocation invocation) + → dynamic + + + +
        +
        + Invoked when a non-existent method or property is accessed. +
        inherited
        + +
        + +
        + toString() + String + + + +
        +
        + A string representation of this object. +
        inherited
        + +
        + +
        +
        + +
        +

        Operators

        +
        +
        + operator ==(Object other) + bool + + + +
        +
        + The equality operator. +
        inherited
        + +
        + +
        +
        + + + + +
        +

        Constants

        + +
        +
        + values + → const List<SearchOption> + + +
        +
        + A constant List of the values in this enum, in order of their declaration. + + +
        + [local, web] +
        +
        + +
        +
        +
        + + + + + +
        + + + + + + + + + + + + + + diff --git a/doc/api/features_home_data_enums_search_option/SearchOption/SearchOption.html b/doc/api/features_home_data_enums_search_option/SearchOption/SearchOption.html new file mode 100644 index 0000000..c8d9dfc --- /dev/null +++ b/doc/api/features_home_data_enums_search_option/SearchOption/SearchOption.html @@ -0,0 +1,136 @@ + + + + + + + + SearchOption constructor - SearchOption - search_option library - Dart API + + + + + + + + + + + + + + + + + +
        + +
        + + +
        SearchOption
        + +
        + +
        + + +
        +
        +

        SearchOption constructor + Null safety +

        + +
        const + SearchOption() +
        + + + + + + + +
        + + + + + +
        + + + + + + + + + + + + + + diff --git a/doc/api/features_home_data_enums_search_option/SearchOption/name.html b/doc/api/features_home_data_enums_search_option/SearchOption/name.html new file mode 100644 index 0000000..888796e --- /dev/null +++ b/doc/api/features_home_data_enums_search_option/SearchOption/name.html @@ -0,0 +1,155 @@ + + + + + + + + name property - SearchOption extension - search_option library - Dart API + + + + + + + + + + + + + + + + + +
        + +
        + + +
        name
        + +
        + +
        + + +
        +
        +

        name property + Null safety +

        + + + +
        + +
        + String + name + + +
        + + + + +
        +

        Implementation

        +
        String get name {
        +  switch (this) {
        +    case SearchOption.local:
        +      return Strings.current.local;
        +    case SearchOption.web:
        +      return Strings.current.web;
        +  }
        +}
        +
        + +
        + + +
        + + + + + +
        + + + + + + + + + + + + + + diff --git a/doc/api/features_home_data_enums_search_option/SearchOption/values-constant.html b/doc/api/features_home_data_enums_search_option/SearchOption/values-constant.html new file mode 100644 index 0000000..cd02031 --- /dev/null +++ b/doc/api/features_home_data_enums_search_option/SearchOption/values-constant.html @@ -0,0 +1,140 @@ + + + + + + + + values constant - SearchOption extension - search_option library - Dart API + + + + + + + + + + + + + + + + + +
        + +
        + + +
        values
        + +
        + +
        + + +
        +
        +

        values constant + Null safety +

        + +
        + List<SearchOption> + const values + + +
        + +
        +

        A constant List of the values in this enum, in order of their declaration.

        +
        + + + + +
        + + + + + +
        + + + + + + + + + + + + + + diff --git a/doc/api/features_home_data_enums_search_option/features_home_data_enums_search_option-library.html b/doc/api/features_home_data_enums_search_option/features_home_data_enums_search_option-library.html new file mode 100644 index 0000000..ece57b0 --- /dev/null +++ b/doc/api/features_home_data_enums_search_option/features_home_data_enums_search_option-library.html @@ -0,0 +1,190 @@ + + + + + + + + search_option library - Dart API + + + + + + + + + + + + + + + + + +
        + +
        + + +
        search_option
        + +
        + +
        + + +
        +
        +

        search_option library + Null safety + +

        + + + + + + + + + + +
        +

        Enums

        + +
        +
        + SearchOption + +
        +
        + Represents an option for specifying a search strategy, for an ImageModel +
        + +
        +
        + + + +
        + + + + + +
        + + + + + + + + + + + + + + diff --git a/doc/api/features_home_data_models_image_model/ImageModel-class.html b/doc/api/features_home_data_models_image_model/ImageModel-class.html new file mode 100644 index 0000000..76b76d3 --- /dev/null +++ b/doc/api/features_home_data_models_image_model/ImageModel-class.html @@ -0,0 +1,312 @@ + + + + + + + + ImageModel class - image_model library - Dart API + + + + + + + + + + + + + + + + + +
        + +
        + + +
        ImageModel
        + +
        + +
        + + +
        +
        +

        ImageModel class + Null safety + +

        + + +
        +

        Represents an Image, that would be displayed in the gallery.

        +
        + + + + +
        +

        Constructors

        + +
        +
        + ImageModel({required Uri uri, required int imageIndex, required String imageName, required bool isFavourite}) +
        +
        + +
        const
        +
        +
        + ImageModel.fromDto({required ImageModelDTO imageModelDto, required bool isFavourite}) +
        +
        + +
        factory
        +
        +
        +
        + +
        +

        Properties

        + +
        +
        + hashCode + int + +
        +
        + The hash code for this object. +
        read-only, inherited
        + +
        + +
        + imageIndex + int + +
        +
        + A unique identifier that can be used for indexing the image. +
        final
        + +
        + +
        + imageName + String + +
        +
        + Given name of the image. +
        final
        + +
        + +
        + isFavourite + bool + +
        +
        + Whether the image was 'Starred' ot not. +
        final
        + +
        + +
        + runtimeType + Type + +
        +
        + A representation of the runtime type of the object. +
        read-only, inherited
        + +
        + +
        + uri + Uri + +
        +
        + An image's target Uri. +
        final
        + +
        + +
        +
        + + +
        +

        Methods

        +
        +
        + copyWith({Uri? uri, int? imageIndex, String? imageName, bool? isFavourite}) + ImageModel + + + +
        +
        + + + +
        + +
        + noSuchMethod(Invocation invocation) + → dynamic + + + +
        +
        + Invoked when a non-existent method or property is accessed. +
        inherited
        + +
        + +
        + toString() + String + + + +
        +
        + A string representation of this object. +
        inherited
        + +
        + +
        +
        + +
        +

        Operators

        +
        +
        + operator ==(Object other) + bool + + + +
        +
        + The equality operator. +
        inherited
        + +
        + +
        +
        + + + + + +
        + + + + + +
        + + + + + + + + + + + + + + diff --git a/doc/api/features_home_data_models_image_model/ImageModel/ImageModel.fromDto.html b/doc/api/features_home_data_models_image_model/ImageModel/ImageModel.fromDto.html new file mode 100644 index 0000000..06d0842 --- /dev/null +++ b/doc/api/features_home_data_models_image_model/ImageModel/ImageModel.fromDto.html @@ -0,0 +1,150 @@ + + + + + + + + ImageModel.fromDto constructor - ImageModel - image_model library - Dart API + + + + + + + + + + + + + + + + + +
        + +
        + + +
        ImageModel.fromDto
        + +
        + +
        + + +
        +
        +

        ImageModel.fromDto constructor + Null safety +

        + +
        + ImageModel.fromDto(
        1. {required ImageModelDTO imageModelDto,
        2. +
        3. required bool isFavourite}
        4. +
        ) +
        + + + + + +
        +

        Implementation

        +
        factory ImageModel.fromDto({
        +  required ImageModelDTO imageModelDto,
        +  required bool isFavourite,
        +}) =>
        +    ImageModel(
        +      uri: imageModelDto.uri,
        +      imageIndex: imageModelDto.imageIndex,
        +      imageName: imageModelDto.imageName,
        +      isFavourite: isFavourite,
        +    );
        +
        + + +
        + + + + + +
        + + + + + + + + + + + + + + diff --git a/doc/api/features_home_data_models_image_model/ImageModel/ImageModel.html b/doc/api/features_home_data_models_image_model/ImageModel/ImageModel.html new file mode 100644 index 0000000..3666480 --- /dev/null +++ b/doc/api/features_home_data_models_image_model/ImageModel/ImageModel.html @@ -0,0 +1,148 @@ + + + + + + + + ImageModel constructor - ImageModel - image_model library - Dart API + + + + + + + + + + + + + + + + + +
        + +
        + + +
        ImageModel
        + +
        + +
        + + +
        +
        +

        ImageModel constructor + Null safety +

        + +
        const + ImageModel(
        1. {required Uri uri,
        2. +
        3. required int imageIndex,
        4. +
        5. required String imageName,
        6. +
        7. required bool isFavourite}
        8. +
        ) +
        + + + + + +
        +

        Implementation

        +
        const ImageModel({
        +  required this.uri,
        +  required this.imageIndex,
        +  required this.imageName,
        +  required this.isFavourite,
        +});
        +
        + + +
        + + + + + +
        + + + + + + + + + + + + + + diff --git a/doc/api/features_home_data_models_image_model/ImageModel/copyWith.html b/doc/api/features_home_data_models_image_model/ImageModel/copyWith.html new file mode 100644 index 0000000..21af030 --- /dev/null +++ b/doc/api/features_home_data_models_image_model/ImageModel/copyWith.html @@ -0,0 +1,160 @@ + + + + + + + + copyWith method - ImageModel class - image_model library - Dart API + + + + + + + + + + + + + + + + + +
        + +
        + + +
        copyWith
        + +
        + +
        + + +
        +
        +

        copyWith method + Null safety +

        + +
        + + +ImageModel +copyWith(
        1. {Uri? uri,
        2. +
        3. int? imageIndex,
        4. +
        5. String? imageName,
        6. +
        7. bool? isFavourite}
        8. +
        ) + + + +
        + + + + +
        +

        Implementation

        +
        ImageModel copyWith({
        +  Uri? uri,
        +  int? imageIndex,
        +  String? imageName,
        +  bool? isFavourite,
        +}) {
        +  return ImageModel(
        +    uri: uri ?? this.uri,
        +    imageIndex: imageIndex ?? this.imageIndex,
        +    imageName: imageName ?? this.imageName,
        +    isFavourite: isFavourite ?? this.isFavourite,
        +  );
        +}
        +
        + + +
        + + + + + +
        + + + + + + + + + + + + + + diff --git a/doc/api/features_home_data_models_image_model/ImageModel/imageIndex.html b/doc/api/features_home_data_models_image_model/ImageModel/imageIndex.html new file mode 100644 index 0000000..5b52f14 --- /dev/null +++ b/doc/api/features_home_data_models_image_model/ImageModel/imageIndex.html @@ -0,0 +1,145 @@ + + + + + + + + imageIndex property - ImageModel class - image_model library - Dart API + + + + + + + + + + + + + + + + + +
        + +
        + + +
        imageIndex
        + +
        + +
        + + +
        +
        +

        imageIndex property + Null safety +

        + +
        + int + imageIndex +
        final
        + +
        + +
        +

        A unique identifier that can be used for indexing the image.

        +
        + + +
        +

        Implementation

        +
        final int imageIndex;
        +
        +
        +
        + + +
        + + + + + +
        + + + + + + + + + + + + + + diff --git a/doc/api/features_home_data_models_image_model/ImageModel/imageName.html b/doc/api/features_home_data_models_image_model/ImageModel/imageName.html new file mode 100644 index 0000000..e3e7b50 --- /dev/null +++ b/doc/api/features_home_data_models_image_model/ImageModel/imageName.html @@ -0,0 +1,145 @@ + + + + + + + + imageName property - ImageModel class - image_model library - Dart API + + + + + + + + + + + + + + + + + +
        + +
        + + +
        imageName
        + +
        + +
        + + +
        +
        +

        imageName property + Null safety +

        + +
        + String + imageName +
        final
        + +
        + +
        +

        Given name of the image.

        +
        + + +
        +

        Implementation

        +
        final String imageName;
        +
        +
        +
        + + +
        + + + + + +
        + + + + + + + + + + + + + + diff --git a/doc/api/features_home_data_models_image_model/ImageModel/isFavourite.html b/doc/api/features_home_data_models_image_model/ImageModel/isFavourite.html new file mode 100644 index 0000000..cf36cad --- /dev/null +++ b/doc/api/features_home_data_models_image_model/ImageModel/isFavourite.html @@ -0,0 +1,145 @@ + + + + + + + + isFavourite property - ImageModel class - image_model library - Dart API + + + + + + + + + + + + + + + + + +
        + +
        + + +
        isFavourite
        + +
        + +
        + + +
        +
        +

        isFavourite property + Null safety +

        + +
        + bool + isFavourite +
        final
        + +
        + +
        +

        Whether the image was 'Starred' ot not.

        +
        + + +
        +

        Implementation

        +
        final bool isFavourite;
        +
        +
        +
        + + +
        + + + + + +
        + + + + + + + + + + + + + + diff --git a/doc/api/features_home_data_models_image_model/ImageModel/uri.html b/doc/api/features_home_data_models_image_model/ImageModel/uri.html new file mode 100644 index 0000000..c3a146b --- /dev/null +++ b/doc/api/features_home_data_models_image_model/ImageModel/uri.html @@ -0,0 +1,146 @@ + + + + + + + + uri property - ImageModel class - image_model library - Dart API + + + + + + + + + + + + + + + + + +
        + +
        + + +
        uri
        + +
        + +
        + + +
        +
        +

        uri property + Null safety +

        + +
        + Uri + uri +
        final
        + +
        + +
        +

        An image's target Uri.

        +

        Storing an image's ByteData is more expensive, memory-wise.

        +
        + + +
        +

        Implementation

        +
        final Uri uri;
        +
        +
        +
        + + +
        + + + + + +
        + + + + + + + + + + + + + + diff --git a/doc/api/features_home_data_models_image_model/features_home_data_models_image_model-library.html b/doc/api/features_home_data_models_image_model/features_home_data_models_image_model-library.html new file mode 100644 index 0000000..a712cc3 --- /dev/null +++ b/doc/api/features_home_data_models_image_model/features_home_data_models_image_model-library.html @@ -0,0 +1,190 @@ + + + + + + + + image_model library - Dart API + + + + + + + + + + + + + + + + + +
        + +
        + + +
        image_model
        + +
        + +
        + + +
        +
        +

        image_model library + Null safety + +

        + + + + +
        +

        Classes

        + +
        +
        + ImageModel + +
        +
        + Represents an Image, that would be displayed in the gallery. +
        + +
        +
        + + + + + + + + + +
        + + + + + +
        + + + + + + + + + + + + + + diff --git a/doc/api/features_home_services_image_cache_manager_service/ImageCacheManagerService-class.html b/doc/api/features_home_services_image_cache_manager_service/ImageCacheManagerService-class.html new file mode 100644 index 0000000..49439c7 --- /dev/null +++ b/doc/api/features_home_services_image_cache_manager_service/ImageCacheManagerService-class.html @@ -0,0 +1,274 @@ + + + + + + + + ImageCacheManagerService class - image_cache_manager_service library - Dart API + + + + + + + + + + + + + + + + + +
        + +
        + + +
        ImageCacheManagerService
        + +
        + +
        + + +
        +
        +

        ImageCacheManagerService class + Null safety + +

        + + +
        +

        Handles maintaining the caching of downloaded images

        +
        + + + + +
        +

        Constructors

        + +
        +
        + ImageCacheManagerService({required AppLifecycleService appLifecycleService, required LocalStorageService localStorageService}) +
        +
        + +
        +
        +
        + +
        +

        Properties

        + +
        +
        + hashCode + int + +
        +
        + The hash code for this object. +
        read-only, inherited
        + +
        + +
        + runtimeType + Type + +
        +
        + A representation of the runtime type of the object. +
        read-only, inherited
        + +
        + +
        +
        + + +
        +

        Methods

        +
        +
        + emptyCache() + Future<void> + + + +
        +
        + + + +
        + +
        + noSuchMethod(Invocation invocation) + → dynamic + + + +
        +
        + Invoked when a non-existent method or property is accessed. +
        inherited
        + +
        + +
        + toString() + String + + + +
        +
        + A string representation of this object. +
        inherited
        + +
        + +
        +
        + +
        +

        Operators

        +
        +
        + operator ==(Object other) + bool + + + +
        +
        + The equality operator. +
        inherited
        + +
        + +
        +
        + +
        +

        Static Properties

        + +
        +
        + locate + ImageCacheManagerService + +
        +
        + +
        read-only
        + +
        + +
        +
        + + + + +
        + + + + + +
        + + + + + + + + + + + + + + diff --git a/doc/api/features_home_services_image_cache_manager_service/ImageCacheManagerService/ImageCacheManagerService.html b/doc/api/features_home_services_image_cache_manager_service/ImageCacheManagerService/ImageCacheManagerService.html new file mode 100644 index 0000000..0d4f975 --- /dev/null +++ b/doc/api/features_home_services_image_cache_manager_service/ImageCacheManagerService/ImageCacheManagerService.html @@ -0,0 +1,144 @@ + + + + + + + + ImageCacheManagerService constructor - ImageCacheManagerService - image_cache_manager_service library - Dart API + + + + + + + + + + + + + + + + + +
        + +
        + + +
        ImageCacheManagerService
        + +
        + +
        + + +
        +
        +

        ImageCacheManagerService constructor + Null safety +

        + +
        + ImageCacheManagerService(
        1. {required AppLifecycleService appLifecycleService,
        2. +
        3. required LocalStorageService localStorageService}
        4. +
        ) +
        + + + + + +
        +

        Implementation

        +
        ImageCacheManagerService(
        +    {required AppLifecycleService appLifecycleService,
        +    required LocalStorageService localStorageService})
        +    : _appLifecycleService = appLifecycleService,
        +      _localStorageService = localStorageService {
        +  _init();
        +}
        +
        + + +
        + + + + + +
        + + + + + + + + + + + + + + diff --git a/doc/api/features_home_services_image_cache_manager_service/ImageCacheManagerService/emptyCache.html b/doc/api/features_home_services_image_cache_manager_service/ImageCacheManagerService/emptyCache.html new file mode 100644 index 0000000..2192176 --- /dev/null +++ b/doc/api/features_home_services_image_cache_manager_service/ImageCacheManagerService/emptyCache.html @@ -0,0 +1,141 @@ + + + + + + + + emptyCache method - ImageCacheManagerService class - image_cache_manager_service library - Dart API + + + + + + + + + + + + + + + + + +
        + +
        + + +
        emptyCache
        + +
        + +
        + + +
        +
        +

        emptyCache method + Null safety +

        + +
        + + +Future<void> +emptyCache() + + + +
        + + + + +
        +

        Implementation

        +
        Future<void> emptyCache() async => await _cacheManager.emptyCache();
        +
        + + +
        + + + + + +
        + + + + + + + + + + + + + + diff --git a/doc/api/features_home_services_image_cache_manager_service/ImageCacheManagerService/locate.html b/doc/api/features_home_services_image_cache_manager_service/ImageCacheManagerService/locate.html new file mode 100644 index 0000000..4b3524f --- /dev/null +++ b/doc/api/features_home_services_image_cache_manager_service/ImageCacheManagerService/locate.html @@ -0,0 +1,144 @@ + + + + + + + + locate property - ImageCacheManagerService class - image_cache_manager_service library - Dart API + + + + + + + + + + + + + + + + + +
        + +
        + + +
        locate
        + +
        + +
        + + +
        +
        +

        locate property + Null safety +

        + + + +
        + +
        + ImageCacheManagerService + locate + + +
        + + + + +
        +

        Implementation

        +
        static ImageCacheManagerService get locate => Locator.locate();
        +
        + +
        + + +
        + + + + + +
        + + + + + + + + + + + + + + diff --git a/doc/api/features_home_services_image_cache_manager_service/features_home_services_image_cache_manager_service-library.html b/doc/api/features_home_services_image_cache_manager_service/features_home_services_image_cache_manager_service-library.html new file mode 100644 index 0000000..1872eec --- /dev/null +++ b/doc/api/features_home_services_image_cache_manager_service/features_home_services_image_cache_manager_service-library.html @@ -0,0 +1,190 @@ + + + + + + + + image_cache_manager_service library - Dart API + + + + + + + + + + + + + + + + + +
        + +
        + + +
        image_cache_manager_service
        + +
        + +
        + + +
        +
        +

        image_cache_manager_service library + Null safety + +

        + + + + +
        +

        Classes

        + +
        +
        + ImageCacheManagerService + +
        +
        + Handles maintaining the caching of downloaded images +
        + +
        +
        + + + + + + + + + +
        + + + + + +
        + + + + + + + + + + + + + + diff --git a/doc/api/features_home_services_images_service/ImagesService-class.html b/doc/api/features_home_services_images_service/ImagesService-class.html new file mode 100644 index 0000000..9297b05 --- /dev/null +++ b/doc/api/features_home_services_images_service/ImagesService-class.html @@ -0,0 +1,376 @@ + + + + + + + + ImagesService class - images_service library - Dart API + + + + + + + + + + + + + + + + + +
        + +
        + + +
        ImagesService
        + +
        + +
        + + +
        +
        +

        ImagesService class + Null safety + +

        + + +
        +

        Handles fetching and storing of Images.

        +

        Since this is very simple use-case, this is the only interface. For complex (actual CRUD-based) I/O, +an additional Repository layer interface can be used between ImagesService and ImagesApi.

        +
        + + + + +
        +

        Constructors

        + +
        +
        + ImagesService({required ImagesApi imagesApi, required LocalStorageService localStorageService, required LoggingService loggingService}) +
        +
        + +
        +
        +
        + +
        +

        Properties

        + +
        +
        + firstAvailableImageIndex + int + +
        +
        + +
        read-only
        + +
        + +
        + hashCode + int + +
        +
        + The hash code for this object. +
        read-only, inherited
        + +
        + +
        + imageModels + Iterable<ImageModel> + +
        +
        + +
        read-only
        + +
        + +
        + initAwaiter + Future + +
        +
        + +
        read-only
        + +
        + +
        + lastAvailableImageIndex + int + +
        +
        + +
        read-only
        + +
        + +
        + lastQueryIsCompleted + Future<void> + +
        +
        + +
        read-only
        + +
        + +
        + numberOfImages + int + +
        +
        + +
        read-only
        + +
        + +
        + runtimeType + Type + +
        +
        + A representation of the runtime type of the object. +
        read-only, inherited
        + +
        + +
        +
        + + +
        +

        Methods

        +
        +
        + imageModelAt({required int index}) + ImageModel + + + +
        +
        + + + +
        + +
        + noSuchMethod(Invocation invocation) + → dynamic + + + +
        +
        + Invoked when a non-existent method or property is accessed. +
        inherited
        + +
        + +
        + searchImages({required SearchOption searchOption, required String imageNamePart, bool treatAsInSequence = false}) + Future<List<ImageModel>> + + + +
        +
        + Performs searching on images, both locally and by a Web API endpoint. + + +
        + +
        + toString() + String + + + +
        +
        + A string representation of this object. +
        inherited
        + +
        + +
        + updateImageFavouriteStatus({required ImageModel imageModel, required bool newFavouriteStatus}) + → void + + + +
        +
        + + + +
        + +
        +
        + +
        +

        Operators

        +
        +
        + operator ==(Object other) + bool + + + +
        +
        + The equality operator. +
        inherited
        + +
        + +
        +
        + +
        +

        Static Properties

        + +
        +
        + locate + ImagesService + +
        +
        + +
        read-only
        + +
        + +
        +
        + + + + +
        + + + + + +
        + + + + + + + + + + + + + + diff --git a/doc/api/features_home_services_images_service/ImagesService/ImagesService.html b/doc/api/features_home_services_images_service/ImagesService/ImagesService.html new file mode 100644 index 0000000..0434fc1 --- /dev/null +++ b/doc/api/features_home_services_images_service/ImagesService/ImagesService.html @@ -0,0 +1,155 @@ + + + + + + + + ImagesService constructor - ImagesService - images_service library - Dart API + + + + + + + + + + + + + + + + + +
        + +
        + + +
        ImagesService
        + +
        + +
        + + +
        +
        +

        ImagesService constructor + Null safety +

        + +
        + ImagesService(
        1. {required ImagesApi imagesApi,
        2. +
        3. required LocalStorageService localStorageService,
        4. +
        5. required LoggingService loggingService}
        6. +
        ) +
        + + + + + +
        +

        Implementation

        +
        ImagesService({
        +  required ImagesApi imagesApi,
        +  required LocalStorageService localStorageService,
        +  required LoggingService loggingService,
        +})  : _imagesApi = imagesApi,
        +      _localStorageService = localStorageService,
        +      _loggingService = loggingService {
        +  _init();
        +}
        +
        + + +
        + + + + + +
        + + + + + + + + + + + + + + diff --git a/doc/api/features_home_services_images_service/ImagesService/firstAvailableImageIndex.html b/doc/api/features_home_services_images_service/ImagesService/firstAvailableImageIndex.html new file mode 100644 index 0000000..0b5e52d --- /dev/null +++ b/doc/api/features_home_services_images_service/ImagesService/firstAvailableImageIndex.html @@ -0,0 +1,152 @@ + + + + + + + + firstAvailableImageIndex property - ImagesService class - images_service library - Dart API + + + + + + + + + + + + + + + + + +
        + +
        + + +
        firstAvailableImageIndex
        + +
        + +
        + + +
        +
        +

        firstAvailableImageIndex property + Null safety +

        + + + +
        + +
        + int + firstAvailableImageIndex + + +
        + + + + +
        +

        Implementation

        +
        int get firstAvailableImageIndex => 0;
        +
        + +
        + + +
        + + + + + +
        + + + + + + + + + + + + + + diff --git a/doc/api/features_home_services_images_service/ImagesService/imageModelAt.html b/doc/api/features_home_services_images_service/ImagesService/imageModelAt.html new file mode 100644 index 0000000..935f32a --- /dev/null +++ b/doc/api/features_home_services_images_service/ImagesService/imageModelAt.html @@ -0,0 +1,150 @@ + + + + + + + + imageModelAt method - ImagesService class - images_service library - Dart API + + + + + + + + + + + + + + + + + +
        + +
        + + +
        imageModelAt
        + +
        + +
        + + +
        +
        +

        imageModelAt method + Null safety +

        + +
        + + +ImageModel +imageModelAt(
        1. {required int index}
        2. +
        ) + + + +
        + + + + +
        +

        Implementation

        +
        ImageModel imageModelAt({required int index}) => _imageModels.values.elementAt(index);
        +
        + + +
        + + + + + +
        + + + + + + + + + + + + + + diff --git a/doc/api/features_home_services_images_service/ImagesService/imageModels.html b/doc/api/features_home_services_images_service/ImagesService/imageModels.html new file mode 100644 index 0000000..b6c37e2 --- /dev/null +++ b/doc/api/features_home_services_images_service/ImagesService/imageModels.html @@ -0,0 +1,152 @@ + + + + + + + + imageModels property - ImagesService class - images_service library - Dart API + + + + + + + + + + + + + + + + + +
        + +
        + + +
        imageModels
        + +
        + +
        + + +
        +
        +

        imageModels property + Null safety +

        + + + +
        + +
        + Iterable<ImageModel> + imageModels + + +
        + + + + +
        +

        Implementation

        +
        Iterable<ImageModel> get imageModels => _imageModels.values.deepCopy;
        +
        + +
        + + +
        + + + + + +
        + + + + + + + + + + + + + + diff --git a/doc/api/features_home_services_images_service/ImagesService/initAwaiter.html b/doc/api/features_home_services_images_service/ImagesService/initAwaiter.html new file mode 100644 index 0000000..284d6d2 --- /dev/null +++ b/doc/api/features_home_services_images_service/ImagesService/initAwaiter.html @@ -0,0 +1,152 @@ + + + + + + + + initAwaiter property - ImagesService class - images_service library - Dart API + + + + + + + + + + + + + + + + + +
        + +
        + + +
        initAwaiter
        + +
        + +
        + + +
        +
        +

        initAwaiter property + Null safety +

        + + + +
        + +
        + Future + initAwaiter + + +
        + + + + +
        +

        Implementation

        +
        Future get initAwaiter => _initAwaiter.future;
        +
        + +
        + + +
        + + + + + +
        + + + + + + + + + + + + + + diff --git a/doc/api/features_home_services_images_service/ImagesService/lastAvailableImageIndex.html b/doc/api/features_home_services_images_service/ImagesService/lastAvailableImageIndex.html new file mode 100644 index 0000000..4d88a41 --- /dev/null +++ b/doc/api/features_home_services_images_service/ImagesService/lastAvailableImageIndex.html @@ -0,0 +1,152 @@ + + + + + + + + lastAvailableImageIndex property - ImagesService class - images_service library - Dart API + + + + + + + + + + + + + + + + + +
        + +
        + + +
        lastAvailableImageIndex
        + +
        + +
        + + +
        +
        +

        lastAvailableImageIndex property + Null safety +

        + + + +
        + +
        + int + lastAvailableImageIndex + + +
        + + + + +
        +

        Implementation

        +
        int get lastAvailableImageIndex => _imageModels.length - 1;
        +
        + +
        + + +
        + + + + + +
        + + + + + + + + + + + + + + diff --git a/doc/api/features_home_services_images_service/ImagesService/lastQueryIsCompleted.html b/doc/api/features_home_services_images_service/ImagesService/lastQueryIsCompleted.html new file mode 100644 index 0000000..604310b --- /dev/null +++ b/doc/api/features_home_services_images_service/ImagesService/lastQueryIsCompleted.html @@ -0,0 +1,152 @@ + + + + + + + + lastQueryIsCompleted property - ImagesService class - images_service library - Dart API + + + + + + + + + + + + + + + + + +
        + +
        + + +
        lastQueryIsCompleted
        + +
        + +
        + + +
        +
        +

        lastQueryIsCompleted property + Null safety +

        + + + +
        + +
        + Future<void> + lastQueryIsCompleted + + +
        + + + + +
        +

        Implementation

        +
        Future<void> get lastQueryIsCompleted => _searchMutex.lastOperationCompletionAwaiter;
        +
        + +
        + + +
        + + + + + +
        + + + + + + + + + + + + + + diff --git a/doc/api/features_home_services_images_service/ImagesService/locate.html b/doc/api/features_home_services_images_service/ImagesService/locate.html new file mode 100644 index 0000000..7434c19 --- /dev/null +++ b/doc/api/features_home_services_images_service/ImagesService/locate.html @@ -0,0 +1,152 @@ + + + + + + + + locate property - ImagesService class - images_service library - Dart API + + + + + + + + + + + + + + + + + +
        + +
        + + +
        locate
        + +
        + +
        + + +
        +
        +

        locate property + Null safety +

        + + + +
        + +
        + ImagesService + locate + + +
        + + + + +
        +

        Implementation

        +
        static ImagesService get locate => Locator.locate();
        +
        + +
        + + +
        + + + + + +
        + + + + + + + + + + + + + + diff --git a/doc/api/features_home_services_images_service/ImagesService/numberOfImages.html b/doc/api/features_home_services_images_service/ImagesService/numberOfImages.html new file mode 100644 index 0000000..da1b8d6 --- /dev/null +++ b/doc/api/features_home_services_images_service/ImagesService/numberOfImages.html @@ -0,0 +1,152 @@ + + + + + + + + numberOfImages property - ImagesService class - images_service library - Dart API + + + + + + + + + + + + + + + + + +
        + +
        + + +
        numberOfImages
        + +
        + +
        + + +
        +
        +

        numberOfImages property + Null safety +

        + + + +
        + +
        + int + numberOfImages + + +
        + + + + +
        +

        Implementation

        +
        int get numberOfImages => _imageModels.length;
        +
        + +
        + + +
        + + + + + +
        + + + + + + + + + + + + + + diff --git a/doc/api/features_home_services_images_service/ImagesService/searchImages.html b/doc/api/features_home_services_images_service/ImagesService/searchImages.html new file mode 100644 index 0000000..b70e2ed --- /dev/null +++ b/doc/api/features_home_services_images_service/ImagesService/searchImages.html @@ -0,0 +1,200 @@ + + + + + + + + searchImages method - ImagesService class - images_service library - Dart API + + + + + + + + + + + + + + + + + +
        + +
        + + +
        searchImages
        + +
        + +
        + + +
        +
        +

        searchImages method + Null safety +

        + +
        + + +Future<List<ImageModel>> +searchImages(
        1. {required SearchOption searchOption,
        2. +
        3. required String imageNamePart,
        4. +
        5. bool treatAsInSequence = false}
        6. +
        ) + + + +
        + +
        +

        Performs searching on images, both locally and by a Web API endpoint.

        +

        For now, a simple mechanism is used for handling async calls between (posssible) API fetches -> +just 'pile-up'. A mechanism can be made to 'cancel' a fetch if a newer search request comes in, +but that may be more complicated, and not the point of the assignment I think. +There are lots of optimizations possible for new inputs, for example reducing search frontier +by using set-cover/subsetting optimizations on backspace, and so on, but again, not the point, +I think.

        +
        + + + +
        +

        Implementation

        +
        Future<List<ImageModel>> searchImages({
        +  required SearchOption searchOption,
        +  required String imageNamePart,
        +  bool treatAsInSequence = false,
        +}) async {
        +  return await _searchMutex.lockAndRun(run: (final unlock) async {
        +    try {
        +      switch (searchOption) {
        +        case SearchOption.local:
        +          final rankedKeys = _imageModels.keys
        +              // Reduce number of results by atleast occurring
        +              .where((final imageName) => treatAsInSequence
        +                  ? imageName.contains(imageNamePart)
        +                  : imageName.containsAllCharacters(targetChars: imageNamePart))
        +              .toList(growable: false)
        +            // Sorting by the highest similarity first
        +            ..sort((final a, final b) =>
        +                ConstSorters.stringsSimilarityTarget(targetWord: imageNamePart, a, b))
        +            ..reversed;
        +
        +          return _imageModels.valuesByKeys(keys: rankedKeys).toList(growable: false);
        +
        +        case SearchOption.web:
        +          return (await _imagesApi.searchImages(
        +            searchStr: imageNamePart,
        +            token: '',
        +          ))
        +              .map(
        +                (final imageModelDto) => ImageModel.fromDto(
        +                  imageModelDto: imageModelDto,
        +                  isFavourite: false,
        +                ),
        +              )
        +              .toList(growable: false);
        +      }
        +    } finally {
        +      unlock();
        +    }
        +  });
        +}
        +
        + + +
        + + + + + +
        + + + + + + + + + + + + + + diff --git a/doc/api/features_home_services_images_service/ImagesService/updateImageFavouriteStatus.html b/doc/api/features_home_services_images_service/ImagesService/updateImageFavouriteStatus.html new file mode 100644 index 0000000..0a5a029 --- /dev/null +++ b/doc/api/features_home_services_images_service/ImagesService/updateImageFavouriteStatus.html @@ -0,0 +1,163 @@ + + + + + + + + updateImageFavouriteStatus method - ImagesService class - images_service library - Dart API + + + + + + + + + + + + + + + + + +
        + +
        + + +
        updateImageFavouriteStatus
        + +
        + +
        + + +
        +
        +

        updateImageFavouriteStatus method + Null safety +

        + +
        + + +void +updateImageFavouriteStatus(
        1. {required ImageModel imageModel,
        2. +
        3. required bool newFavouriteStatus}
        4. +
        ) + + + +
        + + + + +
        +

        Implementation

        +
        void updateImageFavouriteStatus({
        +  required ImageModel imageModel,
        +  required bool newFavouriteStatus,
        +}) {
        +  _imageModels.updateValueAt(
        +    valueIndex: imageModel.imageIndex,
        +    newValue: imageModel.copyWith(isFavourite: newFavouriteStatus),
        +  );
        +
        +  //todo(mehul): Consider adding an update listener to _imageModels, sync with _localStorageService
        +  _localStorageService.updateFavourite(
        +      index: imageModel.imageIndex, newValue: newFavouriteStatus);
        +}
        +
        + + +
        + + + + + +
        + + + + + + + + + + + + + + diff --git a/doc/api/features_home_services_images_service/features_home_services_images_service-library.html b/doc/api/features_home_services_images_service/features_home_services_images_service-library.html new file mode 100644 index 0000000..fc53b20 --- /dev/null +++ b/doc/api/features_home_services_images_service/features_home_services_images_service-library.html @@ -0,0 +1,190 @@ + + + + + + + + images_service library - Dart API + + + + + + + + + + + + + + + + + +
        + +
        + + +
        images_service
        + +
        + +
        + + +
        +
        +

        images_service library + Null safety + +

        + + + + +
        +

        Classes

        + +
        +
        + ImagesService + +
        +
        + Handles fetching and storing of Images. +
        + +
        +
        + + + + + + + + + +
        + + + + + +
        + + + + + + + + + + + + + + diff --git a/doc/api/features_home_views_gallery_gallery_view/GalleryView-class.html b/doc/api/features_home_views_gallery_gallery_view/GalleryView-class.html new file mode 100644 index 0000000..c0c11c7 --- /dev/null +++ b/doc/api/features_home_views_gallery_gallery_view/GalleryView-class.html @@ -0,0 +1,387 @@ + + + + + + + + GalleryView class - gallery_view library - Dart API + + + + + + + + + + + + + + + + + +
        + +
        + + +
        GalleryView
        + +
        + +
        + + +
        +
        +

        GalleryView class + Null safety + +

        + + + + +
        +
        + +
        Inheritance
        +
        + +
        + + + + + + + +
        +
        + + +
        +

        Constructors

        + +
        +
        + GalleryView({Key? key}) +
        +
        + +
        const
        +
        +
        +
        + +
        +

        Properties

        + +
        +
        + hashCode + int + +
        +
        + The hash code for this object. +
        @nonVirtual, read-only, inherited
        + +
        + +
        + key + Key? + +
        +
        + Controls how one widget replaces another widget in the tree. +
        final, inherited
        + +
        + +
        + runtimeType + Type + +
        +
        + A representation of the runtime type of the object. +
        read-only, inherited
        + +
        + +
        +
        + + +
        +

        Methods

        +
        +
        + build(BuildContext context) + Widget + + + +
        +
        + Describes the part of the user interface represented by this widget. +
        override
        + +
        + +
        + createElement() + StatelessElement + + + +
        +
        + Creates a StatelessElement to manage this widget's location in the tree. +
        inherited
        + +
        + +
        + debugDescribeChildren() + List<DiagnosticsNode> + + + +
        +
        + Returns a list of DiagnosticsNode objects describing this node's +children. +
        @protected, inherited
        + +
        + +
        + debugFillProperties(DiagnosticPropertiesBuilder properties) + → void + + + +
        +
        + Add additional properties associated with the node. +
        inherited
        + +
        + +
        + noSuchMethod(Invocation invocation) + → dynamic + + + +
        +
        + Invoked when a non-existent method or property is accessed. +
        inherited
        + +
        + +
        + toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) + DiagnosticsNode + + + +
        +
        + Returns a debug representation of the object that is used by debugging +tools and by DiagnosticsNode.toStringDeep. +
        inherited
        + +
        + +
        + toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) + String + + + +
        +
        + A string representation of this object. +
        inherited
        + +
        + +
        + toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug}) + String + + + +
        +
        + Returns a string representation of this node and its descendants. +
        inherited
        + +
        + +
        + toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) + String + + + +
        +
        + Returns a one-line detailed description of the object. +
        inherited
        + +
        + +
        + toStringShort() + String + + + +
        +
        + A short, textual description of this widget. +
        inherited
        + +
        + +
        +
        + +
        +

        Operators

        +
        +
        + operator ==(Object other) + bool + + + +
        +
        + The equality operator. +
        @nonVirtual, inherited
        + +
        + +
        +
        + + + + + +
        + + + + + +
        + + + + + + + + + + + + + + diff --git a/doc/api/features_home_views_gallery_gallery_view/GalleryView/GalleryView.html b/doc/api/features_home_views_gallery_gallery_view/GalleryView/GalleryView.html new file mode 100644 index 0000000..51a8f3d --- /dev/null +++ b/doc/api/features_home_views_gallery_gallery_view/GalleryView/GalleryView.html @@ -0,0 +1,143 @@ + + + + + + + + GalleryView constructor - GalleryView - gallery_view library - Dart API + + + + + + + + + + + + + + + + + +
        + +
        + + +
        GalleryView
        + +
        + +
        + + +
        +
        +

        GalleryView constructor + Null safety +

        + +
        const + GalleryView(
        1. {Key? key}
        2. +
        ) +
        + + + + + +
        +

        Implementation

        +
        const GalleryView({super.key});
        +
        + + +
        + + + + + +
        + + + + + + + + + + + + + + diff --git a/doc/api/features_home_views_gallery_gallery_view/GalleryView/build.html b/doc/api/features_home_views_gallery_gallery_view/GalleryView/build.html new file mode 100644 index 0000000..a64b88e --- /dev/null +++ b/doc/api/features_home_views_gallery_gallery_view/GalleryView/build.html @@ -0,0 +1,294 @@ + + + + + + + + build method - GalleryView class - gallery_view library - Dart API + + + + + + + + + + + + + + + + + +
        + +
        + + +
        build
        + +
        + +
        + + +
        +
        +

        build method + Null safety +

        + +
        + +
        +
          +
        1. @override
        2. +
        +
        + +Widget +build(
        1. BuildContext context
        2. +
        ) + +
        override
        + +
        + +
        +

        Describes the part of the user interface represented by this widget.

        +

        The framework calls this method when this widget is inserted into the tree +in a given BuildContext and when the dependencies of this widget change +(e.g., an InheritedWidget referenced by this widget changes). This +method can potentially be called in every frame and should not have any side +effects beyond building a widget.

        +

        The framework replaces the subtree below this widget with the widget +returned by this method, either by updating the existing subtree or by +removing the subtree and inflating a new subtree, depending on whether the +widget returned by this method can update the root of the existing +subtree, as determined by calling Widget.canUpdate.

        +

        Typically implementations return a newly created constellation of widgets +that are configured with information from this widget's constructor and +from the given BuildContext.

        +

        The given BuildContext contains information about the location in the +tree at which this widget is being built. For example, the context +provides the set of inherited widgets for this location in the tree. A +given widget might be built with multiple different BuildContext +arguments over time if the widget is moved around the tree or if the +widget is inserted into the tree in multiple places at once.

        +

        The implementation of this method must only depend on:

        + +

        If a widget's build method is to depend on anything else, use a +StatefulWidget instead.

        +

        See also:

        +
          +
        • StatelessWidget, which contains the discussion on performance considerations.
        • +
        +
        + + + +
        +

        Implementation

        +
        @override
        +Widget build(BuildContext context) {
        +  return ViewModelBuilder<GalleryViewModel>(
        +    viewModelBuilder: () => GalleryViewModel.locate,
        +    builder: (context, final model) => McgScaffold(
        +      bodyBuilderWaiter: model.isInitialised,
        +      forceInternetCheck: true,
        +      appBar: AppBar(
        +        centerTitle: true,
        +        primary: true,
        +        title: ValueListenableBuilder<bool>(
        +          valueListenable: model.isSearchingListenable,
        +          builder: (context, final isSearching, _) => AnimatedSwitcher(
        +            duration: ConstDurations.quarterDefaultAnimationDuration,
        +            child: !isSearching
        +                ? Center(child: Text(model.strings.gallery))
        +                : _SearchBox(galleryViewModel: model),
        +          ),
        +        ),
        +        actions: [
        +          Padding(
        +            padding: const EdgeInsets.only(right: 40),
        +            child: MultiValueListenableBuilder(
        +              valueListenables: [
        +                model.isDisplayingPressingPrompt,
        +                model.isSearchingListenable,
        +              ],
        +              builder: (context, final values, child) => !model.isDisplayingPressingPrompt.value
        +                  ? IconButton(
        +                      isSelected: model.isSearchingListenable.value,
        +                      icon: const Icon(Icons.search),
        +                      selectedIcon: const Icon(Icons.close),
        +                      onPressed: model.searchPressed,
        +                    )
        +                  : const SizedBox.shrink(),
        +            ),
        +          )
        +        ],
        +      ),
        +      body: Center(
        +        child: ValueListenableBuilder<bool>(
        +          valueListenable: model.isDisplayingPressingPrompt,
        +          builder: (context, final isDisplayingPressingPrompt, _) => AnimatedSwitcher(
        +            duration: ConstDurations.defaultAnimationDuration,
        +            child: isDisplayingPressingPrompt
        +                ? ElevatedButton(
        +                    onPressed: model.onPromptPressed,
        +                    child: Text(model.strings.startLoadingPrompt),
        +                  )
        +                : SingleChildScrollView(
        +                    child: FutureBuilder<void>(
        +                      future: model.initImageFetchIsDone,
        +                      builder: (context, final snapshot) {
        +                        switch (snapshot.connectionState) {
        +                          case ConnectionState.none:
        +                          case ConnectionState.waiting:
        +                          case ConnectionState.active:
        +                            return const CircularProgressIndicator();
        +                          case ConnectionState.done:
        +                            return ValueListenableBuilder<bool>(
        +                              valueListenable: model.isSearchingListenable,
        +                              builder: (context, final isSearching, _) => AnimatedSwitcher(
        +                                duration: ConstDurations.oneAndHalfDefaultAnimationDuration,
        +                                child: !isSearching
        +                                    ? Column(
        +                                        mainAxisAlignment: MainAxisAlignment.spaceEvenly,
        +                                        children: [
        +                                          ValueListenableBuilder<bool>(
        +                                            valueListenable: model.isViewingFavouriteListenable,
        +                                            builder:
        +                                                (context, final isViewingFavourites, child) =>
        +                                                    Row(
        +                                              mainAxisAlignment: MainAxisAlignment.center,
        +                                              children: [
        +                                                ConstMedia.buildIcon(
        +                                                  ConstMedia.favStarOutline,
        +                                                  width: 24,
        +                                                  height: 24,
        +                                                ),
        +                                                Switch(
        +                                                  value: isViewingFavourites,
        +                                                  onChanged: model.onFavouriteViewChange,
        +                                                ),
        +                                                ConstMedia.buildIcon(
        +                                                  ConstMedia.favStarFilled,
        +                                                  width: 24,
        +                                                  height: 24,
        +                                                ),
        +                                              ],
        +                                            ),
        +                                          ),
        +                                          _DownloadedGalleryView(galleryViewModel: model),
        +                                        ],
        +                                      )
        +                                    : _SearchGalleryView(galleryViewModel: model),
        +                              ),
        +                            );
        +                        }
        +                      },
        +                    ),
        +                  ),
        +          ),
        +        ),
        +      ),
        +    ),
        +  );
        +}
        +
        + + +
        + + + + + +
        + + + + + + + + + + + + + + diff --git a/doc/api/features_home_views_gallery_gallery_view/features_home_views_gallery_gallery_view-library.html b/doc/api/features_home_views_gallery_gallery_view/features_home_views_gallery_gallery_view-library.html new file mode 100644 index 0000000..f0a8219 --- /dev/null +++ b/doc/api/features_home_views_gallery_gallery_view/features_home_views_gallery_gallery_view-library.html @@ -0,0 +1,190 @@ + + + + + + + + gallery_view library - Dart API + + + + + + + + + + + + + + + + + +
        + +
        + + +
        gallery_view
        + +
        + +
        + + +
        +
        +

        gallery_view library + Null safety + +

        + + + + +
        +

        Classes

        + +
        +
        + GalleryView + +
        +
        + +
        + +
        +
        + + + + + + + + + +
        + + + + + +
        + + + + + + + + + + + + + + diff --git a/doc/api/features_home_views_gallery_gallery_view_model/GalleryViewModel-class.html b/doc/api/features_home_views_gallery_gallery_view_model/GalleryViewModel-class.html new file mode 100644 index 0000000..43fe8c1 --- /dev/null +++ b/doc/api/features_home_views_gallery_gallery_view_model/GalleryViewModel-class.html @@ -0,0 +1,725 @@ + + + + + + + + GalleryViewModel class - gallery_view_model library - Dart API + + + + + + + + + + + + + + + + + +
        + +
        + + +
        GalleryViewModel
        + +
        + +
        + + +
        +
        +

        GalleryViewModel class + Null safety + +

        + + + + +
        +
        + +
        Inheritance
        +
        + +
        + + + + + + + +
        +
        + + +
        +

        Constructors

        + +
        +
        + GalleryViewModel({required ImagesService imagesService, required NavigationService navigationService, required ImageCacheManagerService imageCacheManagerService, required LoggingService loggingService}) +
        +
        + +
        +
        +
        + +
        +

        Properties

        + +
        +
        + errorMessage + String + +
        +
        + +
        read-only, inherited
        + +
        + +
        + favouriteImageModels + Iterable<ImageModel> + +
        +
        + +
        read-only
        + +
        + +
        + hasError + ValueListenable<bool> + +
        +
        + +
        read-only, inherited
        + +
        + +
        + hashCode + int + +
        +
        + The hash code for this object. +
        read-only, inherited
        + +
        + +
        + hasListeners + bool + +
        +
        + Whether any listeners are currently registered. +
        @protected, read-only, inherited
        + +
        + +
        + imageModels + Iterable<ImageModel> + +
        +
        + +
        read-only
        + +
        + +
        + imageSearchResultsListenable + ValueListenable<List<ImageModel>> + +
        +
        + +
        read-only
        + +
        + +
        + initImageFetchIsDone + Future<void> + +
        +
        + +
        read-only
        + +
        + +
        + isBusy + ValueListenable<bool> + +
        +
        + +
        read-only, inherited
        + +
        + +
        + isDisplayingPressingPrompt + ValueListenable<bool> + +
        +
        + +
        read-only
        + +
        + +
        + isInitialised + ValueListenable<bool> + +
        +
        + +
        read-only, inherited
        + +
        + +
        + isSearchingListenable + ValueListenable<bool> + +
        +
        + +
        read-only
        + +
        + +
        + isViewingFavouriteListenable + ValueListenable<bool> + +
        +
        + +
        read-only
        + +
        + +
        + lastQueryResultDone + Future<void> + +
        +
        + +
        read-only
        + +
        + +
        + runtimeType + Type + +
        +
        + A representation of the runtime type of the object. +
        read-only, inherited
        + +
        + +
        + searchOptionListenable + ValueListenable<SearchOption> + +
        +
        + +
        read-only
        + +
        + +
        + state + ValueListenable<ViewModelState> + +
        +
        + +
        read-only, inherited
        + +
        + +
        + strings + Strings + +
        +
        + +
        final, inherited
        + +
        + +
        +
        + + +
        +

        Methods

        +
        +
        + addListener(VoidCallback listener) + → void + + + +
        +
        + Register a closure to be called when the object changes. +
        inherited
        + +
        + +
        + dispose() + Future<void> + + + +
        +
        + Discards any resources used by the object. After this is called, the +object is not in a usable state and should be discarded (calls to +addListener will throw after the object is disposed). +
        override
        + +
        + +
        + downloadProgressValue({required DownloadProgress progress}) + double? + + + +
        +
        + + + +
        + +
        + height(BuildContext context) + double + + + +
        +
        + +
        inherited
        + +
        + +
        + ifMounted(VoidCallback voidCallback) + → void + + + +
        +
        + +
        inherited
        + +
        + +
        + initialise(bool mounted(), [Object? arguments]) + Future<void> + + + +
        +
        + +
        override
        + +
        + +
        + noSuchMethod(Invocation invocation) + → dynamic + + + +
        +
        + Invoked when a non-existent method or property is accessed. +
        inherited
        + +
        + +
        + notifyListeners() + → void + + + +
        +
        + Call all the registered listeners. + + +
        + +
        + onFavouriteViewChange(bool newValue) + → void + + + +
        +
        + + + +
        + +
        + onPromptPressed() + → void + + + +
        +
        + + + +
        + +
        + onSearchOptionChanged(SearchOption? option) + → void + + + +
        +
        + + + +
        + +
        + onSearchTermUpdate(String searchTerm) + Future<void> + + + +
        +
        + + + +
        + +
        + pushImageCarouselView(BuildContext context, {required ImageModel imageModel}) + → void + + + +
        +
        + + + +
        + +
        + removeListener(VoidCallback listener) + → void + + + +
        +
        + Remove a previously registered closure from the list of closures that are +notified when the object changes. +
        inherited
        + +
        + +
        + searchPressed() + → void + + + +
        +
        + + + +
        + +
        + setBusy(bool isBusy) + → void + + + +
        +
        + +
        inherited
        + +
        + +
        + setError(bool hasError, {String? message}) + → void + + + +
        +
        + +
        inherited
        + +
        + +
        + toString() + String + + + +
        +
        + A string representation of this object. +
        inherited
        + +
        + +
        + updateImageFavouriteStatus({required ImageModel imageModel, required bool newFavouriteStatus}) + → void + + + +
        +
        + + + +
        + +
        + width(BuildContext context) + double + + + +
        +
        + +
        inherited
        + +
        + +
        +
        + +
        +

        Operators

        +
        +
        + operator ==(Object other) + bool + + + +
        +
        + The equality operator. +
        inherited
        + +
        + +
        +
        + +
        +

        Static Properties

        + +
        +
        + locate + GalleryViewModel + +
        +
        + +
        read-only
        + +
        + +
        +
        + + + + +
        + + + + + +
        + + + + + + + + + + + + + + diff --git a/doc/api/features_home_views_gallery_gallery_view_model/GalleryViewModel/GalleryViewModel.html b/doc/api/features_home_views_gallery_gallery_view_model/GalleryViewModel/GalleryViewModel.html new file mode 100644 index 0000000..cb1cde1 --- /dev/null +++ b/doc/api/features_home_views_gallery_gallery_view_model/GalleryViewModel/GalleryViewModel.html @@ -0,0 +1,181 @@ + + + + + + + + GalleryViewModel constructor - GalleryViewModel - gallery_view_model library - Dart API + + + + + + + + + + + + + + + + + +
        + +
        + + +
        GalleryViewModel
        + +
        + +
        + + +
        +
        +

        GalleryViewModel constructor + Null safety +

        + +
        + GalleryViewModel(
        1. {required ImagesService imagesService,
        2. +
        3. required NavigationService navigationService,
        4. +
        5. required ImageCacheManagerService imageCacheManagerService,
        6. +
        7. required LoggingService loggingService}
        8. +
        ) +
        + + + + + +
        +

        Implementation

        +
        GalleryViewModel({
        +  required ImagesService imagesService,
        +  required NavigationService navigationService,
        +  required ImageCacheManagerService imageCacheManagerService,
        +  required LoggingService loggingService,
        +})  : _imagesService = imagesService,
        +      _navigationService = navigationService,
        +      _imageCacheManagerService = imageCacheManagerService,
        +      _loggingService = loggingService;
        +
        + + +
        + + + + + +
        + + + + + + + + + + + + + + diff --git a/doc/api/features_home_views_gallery_gallery_view_model/GalleryViewModel/dispose.html b/doc/api/features_home_views_gallery_gallery_view_model/GalleryViewModel/dispose.html new file mode 100644 index 0000000..f4b82f6 --- /dev/null +++ b/doc/api/features_home_views_gallery_gallery_view_model/GalleryViewModel/dispose.html @@ -0,0 +1,188 @@ + + + + + + + + dispose method - GalleryViewModel class - gallery_view_model library - Dart API + + + + + + + + + + + + + + + + + +
        + +
        + + +
        dispose
        + +
        + +
        + + +
        +
        +

        dispose method + Null safety +

        + +
        + +
        +
          +
        1. @override
        2. +
        +
        + +Future<void> +dispose() + +
        override
        + +
        + +
        +

        Discards any resources used by the object. After this is called, the +object is not in a usable state and should be discarded (calls to +addListener will throw after the object is disposed).

        +

        This method should only be called by the object's owner.

        +
        + + + +
        +

        Implementation

        +
        @override
        +Future<void> dispose() async {
        +  super.dispose();
        +}
        +
        + + +
        + + + + + +
        + + + + + + + + + + + + + + diff --git a/doc/api/features_home_views_gallery_gallery_view_model/GalleryViewModel/downloadProgressValue.html b/doc/api/features_home_views_gallery_gallery_view_model/GalleryViewModel/downloadProgressValue.html new file mode 100644 index 0000000..d4cb93e --- /dev/null +++ b/doc/api/features_home_views_gallery_gallery_view_model/GalleryViewModel/downloadProgressValue.html @@ -0,0 +1,176 @@ + + + + + + + + downloadProgressValue method - GalleryViewModel class - gallery_view_model library - Dart API + + + + + + + + + + + + + + + + + +
        + +
        + + +
        downloadProgressValue
        + +
        + +
        + + +
        +
        +

        downloadProgressValue method + Null safety +

        + +
        + + +double? +downloadProgressValue(
        1. {required DownloadProgress progress}
        2. +
        ) + + + +
        + + + + +
        +

        Implementation

        +
        double? downloadProgressValue({required DownloadProgress progress}) =>
        +    progress.totalSize != null ? progress.downloaded / progress.totalSize! : null;
        +
        + + +
        + + + + + +
        + + + + + + + + + + + + + + diff --git a/doc/api/features_home_views_gallery_gallery_view_model/GalleryViewModel/favouriteImageModels.html b/doc/api/features_home_views_gallery_gallery_view_model/GalleryViewModel/favouriteImageModels.html new file mode 100644 index 0000000..ccee7a6 --- /dev/null +++ b/doc/api/features_home_views_gallery_gallery_view_model/GalleryViewModel/favouriteImageModels.html @@ -0,0 +1,178 @@ + + + + + + + + favouriteImageModels property - GalleryViewModel class - gallery_view_model library - Dart API + + + + + + + + + + + + + + + + + +
        + +
        + + +
        favouriteImageModels
        + +
        + +
        + + +
        +
        +

        favouriteImageModels property + Null safety +

        + + + +
        + +
        + Iterable<ImageModel> + favouriteImageModels + + +
        + + + + +
        +

        Implementation

        +
        Iterable<ImageModel> get favouriteImageModels =>
        +    imageModels.where((final imageModel) => imageModel.isFavourite);
        +
        + +
        + + +
        + + + + + +
        + + + + + + + + + + + + + + diff --git a/doc/api/features_home_views_gallery_gallery_view_model/GalleryViewModel/imageModels.html b/doc/api/features_home_views_gallery_gallery_view_model/GalleryViewModel/imageModels.html new file mode 100644 index 0000000..7118769 --- /dev/null +++ b/doc/api/features_home_views_gallery_gallery_view_model/GalleryViewModel/imageModels.html @@ -0,0 +1,177 @@ + + + + + + + + imageModels property - GalleryViewModel class - gallery_view_model library - Dart API + + + + + + + + + + + + + + + + + +
        + +
        + + +
        imageModels
        + +
        + +
        + + +
        +
        +

        imageModels property + Null safety +

        + + + +
        + +
        + Iterable<ImageModel> + imageModels + + +
        + + + + +
        +

        Implementation

        +
        Iterable<ImageModel> get imageModels => _imagesService.imageModels;
        +
        + +
        + + +
        + + + + + +
        + + + + + + + + + + + + + + diff --git a/doc/api/features_home_views_gallery_gallery_view_model/GalleryViewModel/imageSearchResultsListenable.html b/doc/api/features_home_views_gallery_gallery_view_model/GalleryViewModel/imageSearchResultsListenable.html new file mode 100644 index 0000000..21052de --- /dev/null +++ b/doc/api/features_home_views_gallery_gallery_view_model/GalleryViewModel/imageSearchResultsListenable.html @@ -0,0 +1,177 @@ + + + + + + + + imageSearchResultsListenable property - GalleryViewModel class - gallery_view_model library - Dart API + + + + + + + + + + + + + + + + + +
        + +
        + + +
        imageSearchResultsListenable
        + +
        + +
        + + +
        +
        +

        imageSearchResultsListenable property + Null safety +

        + + + +
        + +
        + ValueListenable<List<ImageModel>> + imageSearchResultsListenable + + +
        + + + + +
        +

        Implementation

        +
        ValueListenable<List<ImageModel>> get imageSearchResultsListenable => _imageSearchResultsNotifier;
        +
        + +
        + + +
        + + + + + +
        + + + + + + + + + + + + + + diff --git a/doc/api/features_home_views_gallery_gallery_view_model/GalleryViewModel/initImageFetchIsDone.html b/doc/api/features_home_views_gallery_gallery_view_model/GalleryViewModel/initImageFetchIsDone.html new file mode 100644 index 0000000..5010adb --- /dev/null +++ b/doc/api/features_home_views_gallery_gallery_view_model/GalleryViewModel/initImageFetchIsDone.html @@ -0,0 +1,177 @@ + + + + + + + + initImageFetchIsDone property - GalleryViewModel class - gallery_view_model library - Dart API + + + + + + + + + + + + + + + + + +
        + +
        + + +
        initImageFetchIsDone
        + +
        + +
        + + +
        +
        +

        initImageFetchIsDone property + Null safety +

        + + + +
        + +
        + Future<void> + initImageFetchIsDone + + +
        + + + + +
        +

        Implementation

        +
        Future<void> get initImageFetchIsDone => _imagesService.initAwaiter;
        +
        + +
        + + +
        + + + + + +
        + + + + + + + + + + + + + + diff --git a/doc/api/features_home_views_gallery_gallery_view_model/GalleryViewModel/initialise.html b/doc/api/features_home_views_gallery_gallery_view_model/GalleryViewModel/initialise.html new file mode 100644 index 0000000..599f13b --- /dev/null +++ b/doc/api/features_home_views_gallery_gallery_view_model/GalleryViewModel/initialise.html @@ -0,0 +1,185 @@ + + + + + + + + initialise method - GalleryViewModel class - gallery_view_model library - Dart API + + + + + + + + + + + + + + + + + +
        + +
        + + +
        initialise
        + +
        + +
        + + +
        +
        +

        initialise method + Null safety +

        + +
        + +
        +
          +
        1. @override
        2. +
        +
        + +Future<void> +initialise(
        1. bool mounted(
            +),
          1. +
          2. [Object? arguments]
          3. +
          ) + +
          override
          + +
          + + + + +
          +

          Implementation

          +
          @override
          +Future<void> initialise(bool Function() mounted, [arguments]) async {
          +  super.initialise(mounted, arguments);
          +}
          +
          + + +
          + + + + + +
          + + + + + + + + + + + + + + diff --git a/doc/api/features_home_views_gallery_gallery_view_model/GalleryViewModel/isDisplayingPressingPrompt.html b/doc/api/features_home_views_gallery_gallery_view_model/GalleryViewModel/isDisplayingPressingPrompt.html new file mode 100644 index 0000000..8083855 --- /dev/null +++ b/doc/api/features_home_views_gallery_gallery_view_model/GalleryViewModel/isDisplayingPressingPrompt.html @@ -0,0 +1,177 @@ + + + + + + + + isDisplayingPressingPrompt property - GalleryViewModel class - gallery_view_model library - Dart API + + + + + + + + + + + + + + + + + +
          + +
          + + +
          isDisplayingPressingPrompt
          + +
          + +
          + + +
          +
          +

          isDisplayingPressingPrompt property + Null safety +

          + + + +
          + +
          + ValueListenable<bool> + isDisplayingPressingPrompt + + +
          + + + + +
          +

          Implementation

          +
          ValueListenable<bool> get isDisplayingPressingPrompt => _isDisplayingPressingPrompt;
          +
          + +
          + + +
          + + + + + +
          + + + + + + + + + + + + + + diff --git a/doc/api/features_home_views_gallery_gallery_view_model/GalleryViewModel/isSearchingListenable.html b/doc/api/features_home_views_gallery_gallery_view_model/GalleryViewModel/isSearchingListenable.html new file mode 100644 index 0000000..ed00ba8 --- /dev/null +++ b/doc/api/features_home_views_gallery_gallery_view_model/GalleryViewModel/isSearchingListenable.html @@ -0,0 +1,177 @@ + + + + + + + + isSearchingListenable property - GalleryViewModel class - gallery_view_model library - Dart API + + + + + + + + + + + + + + + + + +
          + +
          + + +
          isSearchingListenable
          + +
          + +
          + + +
          +
          +

          isSearchingListenable property + Null safety +

          + + + +
          + +
          + ValueListenable<bool> + isSearchingListenable + + +
          + + + + +
          +

          Implementation

          +
          ValueListenable<bool> get isSearchingListenable => _isSearchingNotifier;
          +
          + +
          + + +
          + + + + + +
          + + + + + + + + + + + + + + diff --git a/doc/api/features_home_views_gallery_gallery_view_model/GalleryViewModel/isViewingFavouriteListenable.html b/doc/api/features_home_views_gallery_gallery_view_model/GalleryViewModel/isViewingFavouriteListenable.html new file mode 100644 index 0000000..b02b576 --- /dev/null +++ b/doc/api/features_home_views_gallery_gallery_view_model/GalleryViewModel/isViewingFavouriteListenable.html @@ -0,0 +1,177 @@ + + + + + + + + isViewingFavouriteListenable property - GalleryViewModel class - gallery_view_model library - Dart API + + + + + + + + + + + + + + + + + +
          + +
          + + +
          isViewingFavouriteListenable
          + +
          + +
          + + +
          +
          +

          isViewingFavouriteListenable property + Null safety +

          + + + +
          + +
          + ValueListenable<bool> + isViewingFavouriteListenable + + +
          + + + + +
          +

          Implementation

          +
          ValueListenable<bool> get isViewingFavouriteListenable => _isViewingFavouriteNotifier;
          +
          + +
          + + +
          + + + + + +
          + + + + + + + + + + + + + + diff --git a/doc/api/features_home_views_gallery_gallery_view_model/GalleryViewModel/lastQueryResultDone.html b/doc/api/features_home_views_gallery_gallery_view_model/GalleryViewModel/lastQueryResultDone.html new file mode 100644 index 0000000..33d3e5e --- /dev/null +++ b/doc/api/features_home_views_gallery_gallery_view_model/GalleryViewModel/lastQueryResultDone.html @@ -0,0 +1,177 @@ + + + + + + + + lastQueryResultDone property - GalleryViewModel class - gallery_view_model library - Dart API + + + + + + + + + + + + + + + + + +
          + +
          + + +
          lastQueryResultDone
          + +
          + +
          + + +
          +
          +

          lastQueryResultDone property + Null safety +

          + + + +
          + +
          + Future<void> + lastQueryResultDone + + +
          + + + + +
          +

          Implementation

          +
          Future<void> get lastQueryResultDone => _imagesService.lastQueryIsCompleted;
          +
          + +
          + + +
          + + + + + +
          + + + + + + + + + + + + + + diff --git a/doc/api/features_home_views_gallery_gallery_view_model/GalleryViewModel/locate.html b/doc/api/features_home_views_gallery_gallery_view_model/GalleryViewModel/locate.html new file mode 100644 index 0000000..49b5d56 --- /dev/null +++ b/doc/api/features_home_views_gallery_gallery_view_model/GalleryViewModel/locate.html @@ -0,0 +1,177 @@ + + + + + + + + locate property - GalleryViewModel class - gallery_view_model library - Dart API + + + + + + + + + + + + + + + + + +
          + +
          + + +
          locate
          + +
          + +
          + + +
          +
          +

          locate property + Null safety +

          + + + +
          + +
          + GalleryViewModel + locate + + +
          + + + + +
          +

          Implementation

          +
          static GalleryViewModel get locate => Locator.locate();
          +
          + +
          + + +
          + + + + + +
          + + + + + + + + + + + + + + diff --git a/doc/api/features_home_views_gallery_gallery_view_model/GalleryViewModel/onFavouriteViewChange.html b/doc/api/features_home_views_gallery_gallery_view_model/GalleryViewModel/onFavouriteViewChange.html new file mode 100644 index 0000000..506240a --- /dev/null +++ b/doc/api/features_home_views_gallery_gallery_view_model/GalleryViewModel/onFavouriteViewChange.html @@ -0,0 +1,175 @@ + + + + + + + + onFavouriteViewChange method - GalleryViewModel class - gallery_view_model library - Dart API + + + + + + + + + + + + + + + + + +
          + +
          + + +
          onFavouriteViewChange
          + +
          + +
          + + +
          +
          +

          onFavouriteViewChange method + Null safety +

          + +
          + + +void +onFavouriteViewChange(
          1. bool newValue
          2. +
          ) + + + +
          + + + + +
          +

          Implementation

          +
          void onFavouriteViewChange(bool newValue) => _isViewingFavouriteNotifier.value = newValue;
          +
          + + +
          + + + + + +
          + + + + + + + + + + + + + + diff --git a/doc/api/features_home_views_gallery_gallery_view_model/GalleryViewModel/onPromptPressed.html b/doc/api/features_home_views_gallery_gallery_view_model/GalleryViewModel/onPromptPressed.html new file mode 100644 index 0000000..81e958b --- /dev/null +++ b/doc/api/features_home_views_gallery_gallery_view_model/GalleryViewModel/onPromptPressed.html @@ -0,0 +1,174 @@ + + + + + + + + onPromptPressed method - GalleryViewModel class - gallery_view_model library - Dart API + + + + + + + + + + + + + + + + + +
          + +
          + + +
          onPromptPressed
          + +
          + +
          + + +
          +
          +

          onPromptPressed method + Null safety +

          + +
          + + +void +onPromptPressed() + + + +
          + + + + +
          +

          Implementation

          +
          void onPromptPressed() => _isDisplayingPressingPrompt.value = false;
          +
          + + +
          + + + + + +
          + + + + + + + + + + + + + + diff --git a/doc/api/features_home_views_gallery_gallery_view_model/GalleryViewModel/onSearchOptionChanged.html b/doc/api/features_home_views_gallery_gallery_view_model/GalleryViewModel/onSearchOptionChanged.html new file mode 100644 index 0000000..955cd8a --- /dev/null +++ b/doc/api/features_home_views_gallery_gallery_view_model/GalleryViewModel/onSearchOptionChanged.html @@ -0,0 +1,183 @@ + + + + + + + + onSearchOptionChanged method - GalleryViewModel class - gallery_view_model library - Dart API + + + + + + + + + + + + + + + + + +
          + +
          + + +
          onSearchOptionChanged
          + +
          + +
          + + +
          +
          +

          onSearchOptionChanged method + Null safety +

          + +
          + + +void +onSearchOptionChanged(
          1. SearchOption? option
          2. +
          ) + + + +
          + + + + +
          +

          Implementation

          +
          void onSearchOptionChanged(SearchOption? option) {
          +  _searchOptionNotifier.value = option!;
          +  _loggingService.info('Switched over to $option search');
          +
          +  _imageSearchResultsNotifier.value = [];
          +  _loggingService.info('Cleared resultsw from view');
          +
          +  //todo(mehul): Either redo search or force user to type in new (trigger) by clearing field
          +}
          +
          + + +
          + + + + + +
          + + + + + + + + + + + + + + diff --git a/doc/api/features_home_views_gallery_gallery_view_model/GalleryViewModel/onSearchTermUpdate.html b/doc/api/features_home_views_gallery_gallery_view_model/GalleryViewModel/onSearchTermUpdate.html new file mode 100644 index 0000000..384acb3 --- /dev/null +++ b/doc/api/features_home_views_gallery_gallery_view_model/GalleryViewModel/onSearchTermUpdate.html @@ -0,0 +1,196 @@ + + + + + + + + onSearchTermUpdate method - GalleryViewModel class - gallery_view_model library - Dart API + + + + + + + + + + + + + + + + + +
          + +
          + + +
          onSearchTermUpdate
          + +
          + +
          + + +
          +
          +

          onSearchTermUpdate method + Null safety +

          + +
          + + +Future<void> +onSearchTermUpdate(
          1. String searchTerm
          2. +
          ) + + + +
          + + + + +
          +

          Implementation

          +
          Future<void> onSearchTermUpdate(String searchTerm) async {
          +  // If empty-string (from backspacing) -> reset state.
          +  if (searchTerm.isEmpty) {
          +    _imageSearchResultsNotifier.value = [];
          +    _loggingService.info('Clearing results on search string removal');
          +    return;
          +  }
          +
          +  // Detached call to prevent UI blocking
          +  unawaited(
          +    _imagesService
          +        .searchImages(
          +          imageNamePart: searchTerm,
          +          searchOption: searchOptionListenable.value,
          +        )
          +        .then(
          +            (final fetchedImageModels) => _imageSearchResultsNotifier.value = fetchedImageModels),
          +  );
          +
          +  // Force-update to trigger listening to `lastQueryResultDone()`.
          +  _imageSearchResultsNotifier.notifyListeners();
          +}
          +
          + + +
          + + + + + +
          + + + + + + + + + + + + + + diff --git a/doc/api/features_home_views_gallery_gallery_view_model/GalleryViewModel/pushImageCarouselView.html b/doc/api/features_home_views_gallery_gallery_view_model/GalleryViewModel/pushImageCarouselView.html new file mode 100644 index 0000000..cb729e5 --- /dev/null +++ b/doc/api/features_home_views_gallery_gallery_view_model/GalleryViewModel/pushImageCarouselView.html @@ -0,0 +1,182 @@ + + + + + + + + pushImageCarouselView method - GalleryViewModel class - gallery_view_model library - Dart API + + + + + + + + + + + + + + + + + +
          + +
          + + +
          pushImageCarouselView
          + +
          + +
          + + +
          +
          +

          pushImageCarouselView method + Null safety +

          + +
          + + +void +pushImageCarouselView(
          1. BuildContext context,
          2. +
          3. {required ImageModel imageModel}
          4. +
          ) + + + +
          + + + + +
          +

          Implementation

          +
          void pushImageCarouselView(BuildContext context, {required ImageModel imageModel}) =>
          +    _navigationService.pushImageCarouselView(
          +      context,
          +      imageCarouselViewArguments: ImageCarouselViewArguments(
          +        imageIndexKey: imageModel.imageIndex,
          +      ),
          +    );
          +
          + + +
          + + + + + +
          + + + + + + + + + + + + + + diff --git a/doc/api/features_home_views_gallery_gallery_view_model/GalleryViewModel/searchOptionListenable.html b/doc/api/features_home_views_gallery_gallery_view_model/GalleryViewModel/searchOptionListenable.html new file mode 100644 index 0000000..3d2411d --- /dev/null +++ b/doc/api/features_home_views_gallery_gallery_view_model/GalleryViewModel/searchOptionListenable.html @@ -0,0 +1,177 @@ + + + + + + + + searchOptionListenable property - GalleryViewModel class - gallery_view_model library - Dart API + + + + + + + + + + + + + + + + + +
          + +
          + + +
          searchOptionListenable
          + +
          + +
          + + +
          +
          +

          searchOptionListenable property + Null safety +

          + + + +
          + +
          + ValueListenable<SearchOption> + searchOptionListenable + + +
          + + + + +
          +

          Implementation

          +
          ValueListenable<SearchOption> get searchOptionListenable => _searchOptionNotifier;
          +
          + +
          + + +
          + + + + + +
          + + + + + + + + + + + + + + diff --git a/doc/api/features_home_views_gallery_gallery_view_model/GalleryViewModel/searchPressed.html b/doc/api/features_home_views_gallery_gallery_view_model/GalleryViewModel/searchPressed.html new file mode 100644 index 0000000..fed3087 --- /dev/null +++ b/doc/api/features_home_views_gallery_gallery_view_model/GalleryViewModel/searchPressed.html @@ -0,0 +1,182 @@ + + + + + + + + searchPressed method - GalleryViewModel class - gallery_view_model library - Dart API + + + + + + + + + + + + + + + + + +
          + +
          + + +
          searchPressed
          + +
          + +
          + + +
          +
          +

          searchPressed method + Null safety +

          + +
          + + +void +searchPressed() + + + +
          + + + + +
          +

          Implementation

          +
          void searchPressed() {
          +  // If transitioning from 'Searching', clear previous results immediately
          +  if (_isSearchingNotifier.value) {
          +    _imageSearchResultsNotifier.value = [];
          +    _loggingService.info('Clearing of results on view mode change');
          +  }
          +
          +  _isSearchingNotifier.flipValue();
          +}
          +
          + + +
          + + + + + +
          + + + + + + + + + + + + + + diff --git a/doc/api/features_home_views_gallery_gallery_view_model/GalleryViewModel/updateImageFavouriteStatus.html b/doc/api/features_home_views_gallery_gallery_view_model/GalleryViewModel/updateImageFavouriteStatus.html new file mode 100644 index 0000000..ca4e7c6 --- /dev/null +++ b/doc/api/features_home_views_gallery_gallery_view_model/GalleryViewModel/updateImageFavouriteStatus.html @@ -0,0 +1,184 @@ + + + + + + + + updateImageFavouriteStatus method - GalleryViewModel class - gallery_view_model library - Dart API + + + + + + + + + + + + + + + + + +
          + +
          + + +
          updateImageFavouriteStatus
          + +
          + +
          + + +
          +
          +

          updateImageFavouriteStatus method + Null safety +

          + +
          + + +void +updateImageFavouriteStatus(
          1. {required ImageModel imageModel,
          2. +
          3. required bool newFavouriteStatus}
          4. +
          ) + + + +
          + + + + +
          +

          Implementation

          +
          void updateImageFavouriteStatus({
          +  required ImageModel imageModel,
          +  required bool newFavouriteStatus,
          +}) {
          +  _imagesService.updateImageFavouriteStatus(
          +    imageModel: imageModel,
          +    newFavouriteStatus: newFavouriteStatus,
          +  );
          +}
          +
          + + +
          + + + + + +
          + + + + + + + + + + + + + + diff --git a/doc/api/features_home_views_gallery_gallery_view_model/features_home_views_gallery_gallery_view_model-library.html b/doc/api/features_home_views_gallery_gallery_view_model/features_home_views_gallery_gallery_view_model-library.html new file mode 100644 index 0000000..760a955 --- /dev/null +++ b/doc/api/features_home_views_gallery_gallery_view_model/features_home_views_gallery_gallery_view_model-library.html @@ -0,0 +1,190 @@ + + + + + + + + gallery_view_model library - Dart API + + + + + + + + + + + + + + + + + +
          + +
          + + +
          gallery_view_model
          + +
          + +
          + + +
          +
          +

          gallery_view_model library + Null safety + +

          + + + + +
          +

          Classes

          + +
          +
          + GalleryViewModel + +
          +
          + +
          + +
          +
          + + + + + + + + + +
          + + + + + +
          + + + + + + + + + + + + + + diff --git a/doc/api/features_home_views_image_carousel_image_carousel_view/ImageCarouselView-class.html b/doc/api/features_home_views_image_carousel_image_carousel_view/ImageCarouselView-class.html new file mode 100644 index 0000000..f4ed628 --- /dev/null +++ b/doc/api/features_home_views_image_carousel_image_carousel_view/ImageCarouselView-class.html @@ -0,0 +1,400 @@ + + + + + + + + ImageCarouselView class - image_carousel_view library - Dart API + + + + + + + + + + + + + + + + + +
          + +
          + + +
          ImageCarouselView
          + +
          + +
          + + +
          +
          +

          ImageCarouselView class + Null safety + +

          + + + + +
          +
          + +
          Inheritance
          +
          + +
          + + + + + + + +
          +
          + + +
          +

          Constructors

          + +
          +
          + ImageCarouselView({required ImageCarouselViewArguments imageCarouselViewArguments, Key? key}) +
          +
          + +
          const
          +
          +
          +
          + +
          +

          Properties

          + +
          +
          + hashCode + int + +
          +
          + The hash code for this object. +
          @nonVirtual, read-only, inherited
          + +
          + +
          + imageCarouselViewArguments + ImageCarouselViewArguments + +
          +
          + +
          final
          + +
          + +
          + key + Key? + +
          +
          + Controls how one widget replaces another widget in the tree. +
          final, inherited
          + +
          + +
          + runtimeType + Type + +
          +
          + A representation of the runtime type of the object. +
          read-only, inherited
          + +
          + +
          +
          + + +
          +

          Methods

          +
          +
          + build(BuildContext context) + Widget + + + +
          +
          + Describes the part of the user interface represented by this widget. +
          override
          + +
          + +
          + createElement() + StatelessElement + + + +
          +
          + Creates a StatelessElement to manage this widget's location in the tree. +
          inherited
          + +
          + +
          + debugDescribeChildren() + List<DiagnosticsNode> + + + +
          +
          + Returns a list of DiagnosticsNode objects describing this node's +children. +
          @protected, inherited
          + +
          + +
          + debugFillProperties(DiagnosticPropertiesBuilder properties) + → void + + + +
          +
          + Add additional properties associated with the node. +
          inherited
          + +
          + +
          + noSuchMethod(Invocation invocation) + → dynamic + + + +
          +
          + Invoked when a non-existent method or property is accessed. +
          inherited
          + +
          + +
          + toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) + DiagnosticsNode + + + +
          +
          + Returns a debug representation of the object that is used by debugging +tools and by DiagnosticsNode.toStringDeep. +
          inherited
          + +
          + +
          + toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) + String + + + +
          +
          + A string representation of this object. +
          inherited
          + +
          + +
          + toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug}) + String + + + +
          +
          + Returns a string representation of this node and its descendants. +
          inherited
          + +
          + +
          + toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) + String + + + +
          +
          + Returns a one-line detailed description of the object. +
          inherited
          + +
          + +
          + toStringShort() + String + + + +
          +
          + A short, textual description of this widget. +
          inherited
          + +
          + +
          +
          + +
          +

          Operators

          +
          +
          + operator ==(Object other) + bool + + + +
          +
          + The equality operator. +
          @nonVirtual, inherited
          + +
          + +
          +
          + + + + + +
          + + + + + +
          + + + + + + + + + + + + + + diff --git a/doc/api/features_home_views_image_carousel_image_carousel_view/ImageCarouselView/ImageCarouselView.html b/doc/api/features_home_views_image_carousel_image_carousel_view/ImageCarouselView/ImageCarouselView.html new file mode 100644 index 0000000..0429240 --- /dev/null +++ b/doc/api/features_home_views_image_carousel_image_carousel_view/ImageCarouselView/ImageCarouselView.html @@ -0,0 +1,148 @@ + + + + + + + + ImageCarouselView constructor - ImageCarouselView - image_carousel_view library - Dart API + + + + + + + + + + + + + + + + + +
          + +
          + + +
          ImageCarouselView
          + +
          + +
          + + +
          +
          +

          ImageCarouselView constructor + Null safety +

          + +
          const + ImageCarouselView(
          1. {required ImageCarouselViewArguments imageCarouselViewArguments,
          2. +
          3. Key? key}
          4. +
          ) +
          + + + + + +
          +

          Implementation

          +
          const ImageCarouselView({
          +  required this.imageCarouselViewArguments,
          +  super.key,
          +});
          +
          + + +
          + + + + + +
          + + + + + + + + + + + + + + diff --git a/doc/api/features_home_views_image_carousel_image_carousel_view/ImageCarouselView/build.html b/doc/api/features_home_views_image_carousel_image_carousel_view/ImageCarouselView/build.html new file mode 100644 index 0000000..13a9928 --- /dev/null +++ b/doc/api/features_home_views_image_carousel_image_carousel_view/ImageCarouselView/build.html @@ -0,0 +1,278 @@ + + + + + + + + build method - ImageCarouselView class - image_carousel_view library - Dart API + + + + + + + + + + + + + + + + + +
          + +
          + + +
          build
          + +
          + +
          + + +
          +
          +

          build method + Null safety +

          + +
          + +
          +
            +
          1. @override
          2. +
          +
          + +Widget +build(
          1. BuildContext context
          2. +
          ) + +
          override
          + +
          + +
          +

          Describes the part of the user interface represented by this widget.

          +

          The framework calls this method when this widget is inserted into the tree +in a given BuildContext and when the dependencies of this widget change +(e.g., an InheritedWidget referenced by this widget changes). This +method can potentially be called in every frame and should not have any side +effects beyond building a widget.

          +

          The framework replaces the subtree below this widget with the widget +returned by this method, either by updating the existing subtree or by +removing the subtree and inflating a new subtree, depending on whether the +widget returned by this method can update the root of the existing +subtree, as determined by calling Widget.canUpdate.

          +

          Typically implementations return a newly created constellation of widgets +that are configured with information from this widget's constructor and +from the given BuildContext.

          +

          The given BuildContext contains information about the location in the +tree at which this widget is being built. For example, the context +provides the set of inherited widgets for this location in the tree. A +given widget might be built with multiple different BuildContext +arguments over time if the widget is moved around the tree or if the +widget is inserted into the tree in multiple places at once.

          +

          The implementation of this method must only depend on:

          + +

          If a widget's build method is to depend on anything else, use a +StatefulWidget instead.

          +

          See also:

          +
            +
          • StatelessWidget, which contains the discussion on performance considerations.
          • +
          +
          + + + +
          +

          Implementation

          +
          @override
          +Widget build(BuildContext context) {
          +  return ViewModelBuilder<ImageCarouselViewModel>(
          +    viewModelBuilder: () => ImageCarouselViewModel.locate,
          +    argumentBuilder: () => imageCarouselViewArguments,
          +    builder: (context, final model) => McgScaffold(
          +      bodyBuilderWaiter: model.isInitialised,
          +      forceInternetCheck: true,
          +      appBar: AppBar(
          +        title: Text(model.strings.imageCarousel),
          +      ),
          +      body: Column(
          +        children: [
          +          Expanded(
          +            child: Padding(
          +              padding: const EdgeInsets.all(8.0),
          +              child: Card(
          +                elevation: 8,
          +                surfaceTintColor: ConstColours.transparent,
          +                child: CarouselSlider.builder(
          +                  itemCount: model.numberOfImages,
          +                  options: CarouselOptions(
          +                    enlargeFactor: 1,
          +                    enlargeCenterPage: true,
          +                    enlargeStrategy: CenterPageEnlargeStrategy.scale,
          +                    disableCenter: true,
          +                    viewportFraction: 1,
          +                    initialPage: model.currentImageIndex,
          +                    enableInfiniteScroll: false,
          +                    onPageChanged: (final index, _) => model.swipedTo(newIndex: index),
          +                  ),
          +                  itemBuilder: (context, _, __) => Stack(
          +                    fit: StackFit.expand,
          +                    children: [
          +                      ValueListenableBuilder<ImageModel>(
          +                        valueListenable: model.currentImageModelListenable,
          +                        builder: (context, _, __) => Hero(
          +                          tag: model.currentImageIndex,
          +                          child: CachedNetworkImage(
          +                            imageUrl: model.currentImageUrl,
          +                            cacheKey: model.currentImageKey,
          +                            fit: BoxFit.contain,
          +                            progressIndicatorBuilder: (_, __, final progress) =>
          +                                CircularProgressIndicator(
          +                              value: model.downloadProgressValue(progress: progress),
          +                            ),
          +                          ),
          +                        ),
          +                      ),
          +                      ValueListenableBuilder<ImageModel>(
          +                        valueListenable: model.currentImageModelListenable,
          +                        builder: (context, _, __) => Row(
          +                          mainAxisAlignment: MainAxisAlignment.spaceBetween,
          +                          children: [
          +                            Icon(
          +                              Icons.chevron_left,
          +                              color: model.hasPreviousImage
          +                                  ? ConstColours.white
          +                                  : ConstColours.black,
          +                            ),
          +                            AutoSizeText(
          +                              model.currentImageName,
          +                              style: ConstText.imageOverlayTextStyle(context),
          +                            ),
          +                            Icon(
          +                              Icons.chevron_right,
          +                              color: model.hasNextImage ? ConstColours.white : ConstColours.black,
          +                            ),
          +                          ],
          +                        ),
          +                      ),
          +                    ],
          +                  ),
          +                ),
          +              ),
          +            ),
          +          ),
          +          const Gap(24),
          +          Padding(
          +            padding: const EdgeInsets.symmetric(horizontal: 24),
          +            // Assuming that this data is coming from an external CRM, if it is coming with the
          +            // image itself, then add it to the DTO and the Model as well, and access it here.
          +            child: MarkdownBody(data: model.strings.imageDetails),
          +          ),
          +          const Gap(16),
          +        ],
          +      ),
          +    ),
          +  );
          +}
          +
          + + +
          + + + + + +
          + + + + + + + + + + + + + + diff --git a/doc/api/features_home_views_image_carousel_image_carousel_view/ImageCarouselView/imageCarouselViewArguments.html b/doc/api/features_home_views_image_carousel_image_carousel_view/ImageCarouselView/imageCarouselViewArguments.html new file mode 100644 index 0000000..b15afc9 --- /dev/null +++ b/doc/api/features_home_views_image_carousel_image_carousel_view/ImageCarouselView/imageCarouselViewArguments.html @@ -0,0 +1,146 @@ + + + + + + + + imageCarouselViewArguments property - ImageCarouselView class - image_carousel_view library - Dart API + + + + + + + + + + + + + + + + + +
          + +
          + + +
          imageCarouselViewArguments
          + +
          + +
          + + +
          +
          +

          imageCarouselViewArguments property + Null safety +

          + +
          + ImageCarouselViewArguments + imageCarouselViewArguments +
          final
          + +
          + + + +
          +

          Implementation

          +
          final ImageCarouselViewArguments imageCarouselViewArguments;
          +
          +
          +
          + + +
          + + + + + +
          + + + + + + + + + + + + + + diff --git a/doc/api/features_home_views_image_carousel_image_carousel_view/ImageCarouselViewArguments-class.html b/doc/api/features_home_views_image_carousel_image_carousel_view/ImageCarouselViewArguments-class.html new file mode 100644 index 0000000..bbc6614 --- /dev/null +++ b/doc/api/features_home_views_image_carousel_image_carousel_view/ImageCarouselViewArguments-class.html @@ -0,0 +1,252 @@ + + + + + + + + ImageCarouselViewArguments class - image_carousel_view library - Dart API + + + + + + + + + + + + + + + + + +
          + +
          + + +
          ImageCarouselViewArguments
          + +
          + +
          + + +
          +
          +

          ImageCarouselViewArguments class + Null safety + +

          + + + + + + +
          +

          Constructors

          + +
          +
          + ImageCarouselViewArguments({required int imageIndexKey}) +
          +
          + +
          const
          +
          +
          +
          + +
          +

          Properties

          + +
          +
          + hashCode + int + +
          +
          + The hash code for this object. +
          read-only, inherited
          + +
          + +
          + imageIndexKey + int + +
          +
          + +
          final
          + +
          + +
          + runtimeType + Type + +
          +
          + A representation of the runtime type of the object. +
          read-only, inherited
          + +
          + +
          +
          + + +
          +

          Methods

          +
          +
          + noSuchMethod(Invocation invocation) + → dynamic + + + +
          +
          + Invoked when a non-existent method or property is accessed. +
          inherited
          + +
          + +
          + toString() + String + + + +
          +
          + A string representation of this object. +
          inherited
          + +
          + +
          +
          + +
          +

          Operators

          +
          +
          + operator ==(Object other) + bool + + + +
          +
          + The equality operator. +
          inherited
          + +
          + +
          +
          + + + + + +
          + + + + + +
          + + + + + + + + + + + + + + diff --git a/doc/api/features_home_views_image_carousel_image_carousel_view/ImageCarouselViewArguments/ImageCarouselViewArguments.html b/doc/api/features_home_views_image_carousel_image_carousel_view/ImageCarouselViewArguments/ImageCarouselViewArguments.html new file mode 100644 index 0000000..c767ee9 --- /dev/null +++ b/doc/api/features_home_views_image_carousel_image_carousel_view/ImageCarouselViewArguments/ImageCarouselViewArguments.html @@ -0,0 +1,135 @@ + + + + + + + + ImageCarouselViewArguments constructor - ImageCarouselViewArguments - image_carousel_view library - Dart API + + + + + + + + + + + + + + + + + +
          + +
          + + +
          ImageCarouselViewArguments
          + +
          + +
          + + +
          +
          +

          ImageCarouselViewArguments constructor + Null safety +

          + +
          const + ImageCarouselViewArguments(
          1. {required int imageIndexKey}
          2. +
          ) +
          + + + + + +
          +

          Implementation

          +
          const ImageCarouselViewArguments({required this.imageIndexKey});
          +
          + + +
          + + + + + +
          + + + + + + + + + + + + + + diff --git a/doc/api/features_home_views_image_carousel_image_carousel_view/ImageCarouselViewArguments/imageIndexKey.html b/doc/api/features_home_views_image_carousel_image_carousel_view/ImageCarouselViewArguments/imageIndexKey.html new file mode 100644 index 0000000..c0e97b4 --- /dev/null +++ b/doc/api/features_home_views_image_carousel_image_carousel_view/ImageCarouselViewArguments/imageIndexKey.html @@ -0,0 +1,137 @@ + + + + + + + + imageIndexKey property - ImageCarouselViewArguments class - image_carousel_view library - Dart API + + + + + + + + + + + + + + + + + +
          + +
          + + +
          imageIndexKey
          + +
          + +
          + + +
          +
          +

          imageIndexKey property + Null safety +

          + +
          + int + imageIndexKey +
          final
          + +
          + + + +
          +

          Implementation

          +
          final int imageIndexKey;
          +
          +
          +
          + + +
          + + + + + +
          + + + + + + + + + + + + + + diff --git a/doc/api/features_home_views_image_carousel_image_carousel_view/features_home_views_image_carousel_image_carousel_view-library.html b/doc/api/features_home_views_image_carousel_image_carousel_view/features_home_views_image_carousel_image_carousel_view-library.html new file mode 100644 index 0000000..7b56d25 --- /dev/null +++ b/doc/api/features_home_views_image_carousel_image_carousel_view/features_home_views_image_carousel_image_carousel_view-library.html @@ -0,0 +1,199 @@ + + + + + + + + image_carousel_view library - Dart API + + + + + + + + + + + + + + + + + +
          + +
          + + +
          image_carousel_view
          + +
          + +
          + + +
          +
          +

          image_carousel_view library + Null safety + +

          + + + + +
          +

          Classes

          + +
          +
          + ImageCarouselView + +
          +
          + +
          + +
          + ImageCarouselViewArguments + +
          +
          + +
          + +
          +
          + + + + + + + + + +
          + + + + + +
          + + + + + + + + + + + + + + diff --git a/doc/api/features_home_views_image_carousel_image_carousel_view_model/ImageCarouselViewModel-class.html b/doc/api/features_home_views_image_carousel_image_carousel_view_model/ImageCarouselViewModel-class.html new file mode 100644 index 0000000..5d5a96b --- /dev/null +++ b/doc/api/features_home_views_image_carousel_image_carousel_view_model/ImageCarouselViewModel-class.html @@ -0,0 +1,629 @@ + + + + + + + + ImageCarouselViewModel class - image_carousel_view_model library - Dart API + + + + + + + + + + + + + + + + + +
          + +
          + + +
          ImageCarouselViewModel
          + +
          + +
          + + +
          +
          +

          ImageCarouselViewModel class + Null safety + +

          + + + + +
          +
          + +
          Inheritance
          +
          + +
          + + + + + + + +
          +
          + + +
          +

          Constructors

          + +
          +
          + ImageCarouselViewModel({required ImagesService imagesService, required LoggingService loggingService}) +
          +
          + +
          +
          +
          + +
          +

          Properties

          + +
          +
          + currentImageIndex + int + +
          +
          + +
          read-only
          + +
          + +
          + currentImageKey + String + +
          +
          + +
          read-only
          + +
          + +
          + currentImageModelListenable + ValueListenable<ImageModel> + +
          +
          + +
          read-only
          + +
          + +
          + currentImageName + String + +
          +
          + +
          read-only
          + +
          + +
          + currentImageUrl + String + +
          +
          + +
          read-only
          + +
          + +
          + errorMessage + String + +
          +
          + +
          read-only, inherited
          + +
          + +
          + hasError + ValueListenable<bool> + +
          +
          + +
          read-only, inherited
          + +
          + +
          + hashCode + int + +
          +
          + The hash code for this object. +
          read-only, inherited
          + +
          + +
          + hasListeners + bool + +
          +
          + Whether any listeners are currently registered. +
          @protected, read-only, inherited
          + +
          + +
          + hasNextImage + bool + +
          +
          + +
          read-only
          + +
          + +
          + hasPreviousImage + bool + +
          +
          + +
          read-only
          + +
          + +
          + isBusy + ValueListenable<bool> + +
          +
          + +
          read-only, inherited
          + +
          + +
          + isInitialised + ValueListenable<bool> + +
          +
          + +
          read-only, inherited
          + +
          + +
          + numberOfImages + int + +
          +
          + +
          read-only
          + +
          + +
          + runtimeType + Type + +
          +
          + A representation of the runtime type of the object. +
          read-only, inherited
          + +
          + +
          + state + ValueListenable<ViewModelState> + +
          +
          + +
          read-only, inherited
          + +
          + +
          + strings + Strings + +
          +
          + +
          final, inherited
          + +
          + +
          +
          + + +
          +

          Methods

          +
          +
          + addListener(VoidCallback listener) + → void + + + +
          +
          + Register a closure to be called when the object changes. +
          inherited
          + +
          + +
          + dispose() + Future<void> + + + +
          +
          + Discards any resources used by the object. After this is called, the +object is not in a usable state and should be discarded (calls to +addListener will throw after the object is disposed). +
          override
          + +
          + +
          + downloadProgressValue({required DownloadProgress progress}) + double? + + + +
          +
          + + + +
          + +
          + height(BuildContext context) + double + + + +
          +
          + +
          inherited
          + +
          + +
          + ifMounted(VoidCallback voidCallback) + → void + + + +
          +
          + +
          inherited
          + +
          + +
          + initialise(bool mounted(), [Object? arguments]) + Future<void> + + + +
          +
          + +
          override
          + +
          + +
          + noSuchMethod(Invocation invocation) + → dynamic + + + +
          +
          + Invoked when a non-existent method or property is accessed. +
          inherited
          + +
          + +
          + notifyListeners() + → void + + + +
          +
          + Call all the registered listeners. + + +
          + +
          + removeListener(VoidCallback listener) + → void + + + +
          +
          + Remove a previously registered closure from the list of closures that are +notified when the object changes. +
          inherited
          + +
          + +
          + setBusy(bool isBusy) + → void + + + +
          +
          + +
          inherited
          + +
          + +
          + setError(bool hasError, {String? message}) + → void + + + +
          +
          + +
          inherited
          + +
          + +
          + swipedTo({required int newIndex}) + → void + + + +
          +
          + + + +
          + +
          + toString() + String + + + +
          +
          + A string representation of this object. +
          inherited
          + +
          + +
          + width(BuildContext context) + double + + + +
          +
          + +
          inherited
          + +
          + +
          +
          + +
          +

          Operators

          +
          +
          + operator ==(Object other) + bool + + + +
          +
          + The equality operator. +
          inherited
          + +
          + +
          +
          + +
          +

          Static Properties

          + +
          +
          + locate + ImageCarouselViewModel + +
          +
          + +
          read-only
          + +
          + +
          +
          + + + + +
          + + + + + +
          + + + + + + + + + + + + + + diff --git a/doc/api/features_home_views_image_carousel_image_carousel_view_model/ImageCarouselViewModel/ImageCarouselViewModel.html b/doc/api/features_home_views_image_carousel_image_carousel_view_model/ImageCarouselViewModel/ImageCarouselViewModel.html new file mode 100644 index 0000000..52af38a --- /dev/null +++ b/doc/api/features_home_views_image_carousel_image_carousel_view_model/ImageCarouselViewModel/ImageCarouselViewModel.html @@ -0,0 +1,168 @@ + + + + + + + + ImageCarouselViewModel constructor - ImageCarouselViewModel - image_carousel_view_model library - Dart API + + + + + + + + + + + + + + + + + +
          + +
          + + +
          ImageCarouselViewModel
          + +
          + +
          + + +
          +
          +

          ImageCarouselViewModel constructor + Null safety +

          + +
          + ImageCarouselViewModel(
          1. {required ImagesService imagesService,
          2. +
          3. required LoggingService loggingService}
          4. +
          ) +
          + + + + + +
          +

          Implementation

          +
          ImageCarouselViewModel({
          +  required ImagesService imagesService,
          +  required LoggingService loggingService,
          +})  : _imagesService = imagesService,
          +      _loggingService = loggingService;
          +
          + + +
          + + + + + +
          + + + + + + + + + + + + + + diff --git a/doc/api/features_home_views_image_carousel_image_carousel_view_model/ImageCarouselViewModel/currentImageIndex.html b/doc/api/features_home_views_image_carousel_image_carousel_view_model/ImageCarouselViewModel/currentImageIndex.html new file mode 100644 index 0000000..121fcbf --- /dev/null +++ b/doc/api/features_home_views_image_carousel_image_carousel_view_model/ImageCarouselViewModel/currentImageIndex.html @@ -0,0 +1,170 @@ + + + + + + + + currentImageIndex property - ImageCarouselViewModel class - image_carousel_view_model library - Dart API + + + + + + + + + + + + + + + + + +
          + +
          + + +
          currentImageIndex
          + +
          + +
          + + +
          +
          +

          currentImageIndex property + Null safety +

          + + + +
          + +
          + int + currentImageIndex + + +
          + + + + +
          +

          Implementation

          +
          int get currentImageIndex => currentImageModelListenable.value.imageIndex;
          +
          + +
          + + +
          + + + + + +
          + + + + + + + + + + + + + + diff --git a/doc/api/features_home_views_image_carousel_image_carousel_view_model/ImageCarouselViewModel/currentImageKey.html b/doc/api/features_home_views_image_carousel_image_carousel_view_model/ImageCarouselViewModel/currentImageKey.html new file mode 100644 index 0000000..4bc3917 --- /dev/null +++ b/doc/api/features_home_views_image_carousel_image_carousel_view_model/ImageCarouselViewModel/currentImageKey.html @@ -0,0 +1,170 @@ + + + + + + + + currentImageKey property - ImageCarouselViewModel class - image_carousel_view_model library - Dart API + + + + + + + + + + + + + + + + + +
          + +
          + + +
          currentImageKey
          + +
          + +
          + + +
          +
          +

          currentImageKey property + Null safety +

          + + + +
          + +
          + String + currentImageKey + + +
          + + + + +
          +

          Implementation

          +
          String get currentImageKey => currentImageModelListenable.value.imageIndex.toString();
          +
          + +
          + + +
          + + + + + +
          + + + + + + + + + + + + + + diff --git a/doc/api/features_home_views_image_carousel_image_carousel_view_model/ImageCarouselViewModel/currentImageModelListenable.html b/doc/api/features_home_views_image_carousel_image_carousel_view_model/ImageCarouselViewModel/currentImageModelListenable.html new file mode 100644 index 0000000..f79b73d --- /dev/null +++ b/doc/api/features_home_views_image_carousel_image_carousel_view_model/ImageCarouselViewModel/currentImageModelListenable.html @@ -0,0 +1,170 @@ + + + + + + + + currentImageModelListenable property - ImageCarouselViewModel class - image_carousel_view_model library - Dart API + + + + + + + + + + + + + + + + + +
          + +
          + + +
          currentImageModelListenable
          + +
          + +
          + + +
          +
          +

          currentImageModelListenable property + Null safety +

          + + + +
          + +
          + ValueListenable<ImageModel> + currentImageModelListenable + + +
          + + + + +
          +

          Implementation

          +
          ValueListenable<ImageModel> get currentImageModelListenable => _currentImageModelNotifier;
          +
          + +
          + + +
          + + + + + +
          + + + + + + + + + + + + + + diff --git a/doc/api/features_home_views_image_carousel_image_carousel_view_model/ImageCarouselViewModel/currentImageName.html b/doc/api/features_home_views_image_carousel_image_carousel_view_model/ImageCarouselViewModel/currentImageName.html new file mode 100644 index 0000000..9a68e23 --- /dev/null +++ b/doc/api/features_home_views_image_carousel_image_carousel_view_model/ImageCarouselViewModel/currentImageName.html @@ -0,0 +1,170 @@ + + + + + + + + currentImageName property - ImageCarouselViewModel class - image_carousel_view_model library - Dart API + + + + + + + + + + + + + + + + + +
          + +
          + + +
          currentImageName
          + +
          + +
          + + +
          +
          +

          currentImageName property + Null safety +

          + + + +
          + +
          + String + currentImageName + + +
          + + + + +
          +

          Implementation

          +
          String get currentImageName => currentImageModelListenable.value.imageName;
          +
          + +
          + + +
          + + + + + +
          + + + + + + + + + + + + + + diff --git a/doc/api/features_home_views_image_carousel_image_carousel_view_model/ImageCarouselViewModel/currentImageUrl.html b/doc/api/features_home_views_image_carousel_image_carousel_view_model/ImageCarouselViewModel/currentImageUrl.html new file mode 100644 index 0000000..4539738 --- /dev/null +++ b/doc/api/features_home_views_image_carousel_image_carousel_view_model/ImageCarouselViewModel/currentImageUrl.html @@ -0,0 +1,170 @@ + + + + + + + + currentImageUrl property - ImageCarouselViewModel class - image_carousel_view_model library - Dart API + + + + + + + + + + + + + + + + + +
          + +
          + + +
          currentImageUrl
          + +
          + +
          + + +
          +
          +

          currentImageUrl property + Null safety +

          + + + +
          + +
          + String + currentImageUrl + + +
          + + + + +
          +

          Implementation

          +
          String get currentImageUrl => currentImageModelListenable.value.uri.toString();
          +
          + +
          + + +
          + + + + + +
          + + + + + + + + + + + + + + diff --git a/doc/api/features_home_views_image_carousel_image_carousel_view_model/ImageCarouselViewModel/dispose.html b/doc/api/features_home_views_image_carousel_image_carousel_view_model/ImageCarouselViewModel/dispose.html new file mode 100644 index 0000000..a766e09 --- /dev/null +++ b/doc/api/features_home_views_image_carousel_image_carousel_view_model/ImageCarouselViewModel/dispose.html @@ -0,0 +1,181 @@ + + + + + + + + dispose method - ImageCarouselViewModel class - image_carousel_view_model library - Dart API + + + + + + + + + + + + + + + + + +
          + +
          + + +
          dispose
          + +
          + +
          + + +
          +
          +

          dispose method + Null safety +

          + +
          + +
          +
            +
          1. @override
          2. +
          +
          + +Future<void> +dispose() + +
          override
          + +
          + +
          +

          Discards any resources used by the object. After this is called, the +object is not in a usable state and should be discarded (calls to +addListener will throw after the object is disposed).

          +

          This method should only be called by the object's owner.

          +
          + + + +
          +

          Implementation

          +
          @override
          +Future<void> dispose() async {
          +  super.dispose();
          +}
          +
          + + +
          + + + + + +
          + + + + + + + + + + + + + + diff --git a/doc/api/features_home_views_image_carousel_image_carousel_view_model/ImageCarouselViewModel/downloadProgressValue.html b/doc/api/features_home_views_image_carousel_image_carousel_view_model/ImageCarouselViewModel/downloadProgressValue.html new file mode 100644 index 0000000..40739e8 --- /dev/null +++ b/doc/api/features_home_views_image_carousel_image_carousel_view_model/ImageCarouselViewModel/downloadProgressValue.html @@ -0,0 +1,169 @@ + + + + + + + + downloadProgressValue method - ImageCarouselViewModel class - image_carousel_view_model library - Dart API + + + + + + + + + + + + + + + + + +
          + +
          + + +
          downloadProgressValue
          + +
          + +
          + + +
          +
          +

          downloadProgressValue method + Null safety +

          + +
          + + +double? +downloadProgressValue(
          1. {required DownloadProgress progress}
          2. +
          ) + + + +
          + + + + +
          +

          Implementation

          +
          double? downloadProgressValue({required DownloadProgress progress}) =>
          +    progress.totalSize != null ? progress.downloaded / progress.totalSize! : null;
          +
          + + +
          + + + + + +
          + + + + + + + + + + + + + + diff --git a/doc/api/features_home_views_image_carousel_image_carousel_view_model/ImageCarouselViewModel/hasNextImage.html b/doc/api/features_home_views_image_carousel_image_carousel_view_model/ImageCarouselViewModel/hasNextImage.html new file mode 100644 index 0000000..37572e2 --- /dev/null +++ b/doc/api/features_home_views_image_carousel_image_carousel_view_model/ImageCarouselViewModel/hasNextImage.html @@ -0,0 +1,171 @@ + + + + + + + + hasNextImage property - ImageCarouselViewModel class - image_carousel_view_model library - Dart API + + + + + + + + + + + + + + + + + +
          + +
          + + +
          hasNextImage
          + +
          + +
          + + +
          +
          +

          hasNextImage property + Null safety +

          + + + +
          + +
          + bool + hasNextImage + + +
          + + + + +
          +

          Implementation

          +
          bool get hasNextImage =>
          +    currentImageModelListenable.value.imageIndex < _imagesService.lastAvailableImageIndex;
          +
          + +
          + + +
          + + + + + +
          + + + + + + + + + + + + + + diff --git a/doc/api/features_home_views_image_carousel_image_carousel_view_model/ImageCarouselViewModel/hasPreviousImage.html b/doc/api/features_home_views_image_carousel_image_carousel_view_model/ImageCarouselViewModel/hasPreviousImage.html new file mode 100644 index 0000000..1524334 --- /dev/null +++ b/doc/api/features_home_views_image_carousel_image_carousel_view_model/ImageCarouselViewModel/hasPreviousImage.html @@ -0,0 +1,171 @@ + + + + + + + + hasPreviousImage property - ImageCarouselViewModel class - image_carousel_view_model library - Dart API + + + + + + + + + + + + + + + + + +
          + +
          + + +
          hasPreviousImage
          + +
          + +
          + + +
          +
          +

          hasPreviousImage property + Null safety +

          + + + +
          + +
          + bool + hasPreviousImage + + +
          + + + + +
          +

          Implementation

          +
          bool get hasPreviousImage =>
          +    currentImageModelListenable.value.imageIndex > _imagesService.firstAvailableImageIndex;
          +
          + +
          + + +
          + + + + + +
          + + + + + + + + + + + + + + diff --git a/doc/api/features_home_views_image_carousel_image_carousel_view_model/ImageCarouselViewModel/initialise.html b/doc/api/features_home_views_image_carousel_image_carousel_view_model/ImageCarouselViewModel/initialise.html new file mode 100644 index 0000000..a43ee5f --- /dev/null +++ b/doc/api/features_home_views_image_carousel_image_carousel_view_model/ImageCarouselViewModel/initialise.html @@ -0,0 +1,182 @@ + + + + + + + + initialise method - ImageCarouselViewModel class - image_carousel_view_model library - Dart API + + + + + + + + + + + + + + + + + +
          + +
          + + +
          initialise
          + +
          + +
          + + +
          +
          +

          initialise method + Null safety +

          + +
          + +
          +
            +
          1. @override
          2. +
          +
          + +Future<void> +initialise(
          1. bool mounted(
              +),
            1. +
            2. [Object? arguments]
            3. +
            ) + +
            override
            + +
            + + + + +
            +

            Implementation

            +
            @override
            +Future<void> initialise(bool Function() mounted, [arguments]) async {
            +  _currentImageModelNotifier = ValueNotifier(_imagesService.imageModels
            +      .elementAt((arguments! as ImageCarouselViewArguments).imageIndexKey));
            +  _loggingService.info('Initialized with image: ${_currentImageModelNotifier.value.imageIndex}');
            +
            +  super.initialise(mounted, arguments);
            +}
            +
            + + +
            + + + + + +
            + + + + + + + + + + + + + + diff --git a/doc/api/features_home_views_image_carousel_image_carousel_view_model/ImageCarouselViewModel/locate.html b/doc/api/features_home_views_image_carousel_image_carousel_view_model/ImageCarouselViewModel/locate.html new file mode 100644 index 0000000..fd58da6 --- /dev/null +++ b/doc/api/features_home_views_image_carousel_image_carousel_view_model/ImageCarouselViewModel/locate.html @@ -0,0 +1,170 @@ + + + + + + + + locate property - ImageCarouselViewModel class - image_carousel_view_model library - Dart API + + + + + + + + + + + + + + + + + +
            + +
            + + +
            locate
            + +
            + +
            + + +
            +
            +

            locate property + Null safety +

            + + + +
            + +
            + ImageCarouselViewModel + locate + + +
            + + + + +
            +

            Implementation

            +
            static ImageCarouselViewModel get locate => Locator.locate();
            +
            + +
            + + +
            + + + + + +
            + + + + + + + + + + + + + + diff --git a/doc/api/features_home_views_image_carousel_image_carousel_view_model/ImageCarouselViewModel/numberOfImages.html b/doc/api/features_home_views_image_carousel_image_carousel_view_model/ImageCarouselViewModel/numberOfImages.html new file mode 100644 index 0000000..e63c3f5 --- /dev/null +++ b/doc/api/features_home_views_image_carousel_image_carousel_view_model/ImageCarouselViewModel/numberOfImages.html @@ -0,0 +1,170 @@ + + + + + + + + numberOfImages property - ImageCarouselViewModel class - image_carousel_view_model library - Dart API + + + + + + + + + + + + + + + + + +
            + +
            + + +
            numberOfImages
            + +
            + +
            + + +
            +
            +

            numberOfImages property + Null safety +

            + + + +
            + +
            + int + numberOfImages + + +
            + + + + +
            +

            Implementation

            +
            int get numberOfImages => _imagesService.numberOfImages;
            +
            + +
            + + +
            + + + + + +
            + + + + + + + + + + + + + + diff --git a/doc/api/features_home_views_image_carousel_image_carousel_view_model/ImageCarouselViewModel/swipedTo.html b/doc/api/features_home_views_image_carousel_image_carousel_view_model/ImageCarouselViewModel/swipedTo.html new file mode 100644 index 0000000..1f46672 --- /dev/null +++ b/doc/api/features_home_views_image_carousel_image_carousel_view_model/ImageCarouselViewModel/swipedTo.html @@ -0,0 +1,171 @@ + + + + + + + + swipedTo method - ImageCarouselViewModel class - image_carousel_view_model library - Dart API + + + + + + + + + + + + + + + + + +
            + +
            + + +
            swipedTo
            + +
            + +
            + + +
            +
            +

            swipedTo method + Null safety +

            + +
            + + +void +swipedTo(
            1. {required int newIndex}
            2. +
            ) + + + +
            + + + + +
            +

            Implementation

            +
            void swipedTo({required int newIndex}) {
            +  _currentImageModelNotifier.value = _imagesService.imageModelAt(index: newIndex);
            +  _loggingService.info('Swiped to image: ${_currentImageModelNotifier.value.imageIndex}');
            +}
            +
            + + +
            + + + + + +
            + + + + + + + + + + + + + + diff --git a/doc/api/features_home_views_image_carousel_image_carousel_view_model/features_home_views_image_carousel_image_carousel_view_model-library.html b/doc/api/features_home_views_image_carousel_image_carousel_view_model/features_home_views_image_carousel_image_carousel_view_model-library.html new file mode 100644 index 0000000..fb482e8 --- /dev/null +++ b/doc/api/features_home_views_image_carousel_image_carousel_view_model/features_home_views_image_carousel_image_carousel_view_model-library.html @@ -0,0 +1,190 @@ + + + + + + + + image_carousel_view_model library - Dart API + + + + + + + + + + + + + + + + + +
            + +
            + + +
            image_carousel_view_model
            + +
            + +
            + + +
            +
            +

            image_carousel_view_model library + Null safety + +

            + + + + +
            +

            Classes

            + +
            +
            + ImageCarouselViewModel + +
            +
            + +
            + +
            +
            + + + + + + + + + +
            + + + + + +
            + + + + + + + + + + + + + + diff --git a/doc/api/features_home_widgets_custom_wrap/CustomWrap-class.html b/doc/api/features_home_widgets_custom_wrap/CustomWrap-class.html new file mode 100644 index 0000000..4203e69 --- /dev/null +++ b/doc/api/features_home_widgets_custom_wrap/CustomWrap-class.html @@ -0,0 +1,399 @@ + + + + + + + + CustomWrap class - custom_wrap library - Dart API + + + + + + + + + + + + + + + + + +
            + +
            + + +
            CustomWrap
            + +
            + +
            + + +
            +
            +

            CustomWrap class + Null safety + +

            + + + + +
            +
            + +
            Inheritance
            +
            + +
            + + + + + + + +
            +
            + + +
            +

            Constructors

            + +
            +
            + CustomWrap({required List<Widget> children, Key? key}) +
            +
            + +
            const
            +
            +
            +
            + +
            +

            Properties

            + +
            +
            + children + List<Widget> + +
            +
            + +
            final
            + +
            + +
            + hashCode + int + +
            +
            + The hash code for this object. +
            @nonVirtual, read-only, inherited
            + +
            + +
            + key + Key? + +
            +
            + Controls how one widget replaces another widget in the tree. +
            final, inherited
            + +
            + +
            + runtimeType + Type + +
            +
            + A representation of the runtime type of the object. +
            read-only, inherited
            + +
            + +
            +
            + + +
            +

            Methods

            +
            +
            + build(BuildContext context) + Widget + + + +
            +
            + Describes the part of the user interface represented by this widget. +
            override
            + +
            + +
            + createElement() + StatelessElement + + + +
            +
            + Creates a StatelessElement to manage this widget's location in the tree. +
            inherited
            + +
            + +
            + debugDescribeChildren() + List<DiagnosticsNode> + + + +
            +
            + Returns a list of DiagnosticsNode objects describing this node's +children. +
            @protected, inherited
            + +
            + +
            + debugFillProperties(DiagnosticPropertiesBuilder properties) + → void + + + +
            +
            + Add additional properties associated with the node. +
            inherited
            + +
            + +
            + noSuchMethod(Invocation invocation) + → dynamic + + + +
            +
            + Invoked when a non-existent method or property is accessed. +
            inherited
            + +
            + +
            + toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) + DiagnosticsNode + + + +
            +
            + Returns a debug representation of the object that is used by debugging +tools and by DiagnosticsNode.toStringDeep. +
            inherited
            + +
            + +
            + toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) + String + + + +
            +
            + A string representation of this object. +
            inherited
            + +
            + +
            + toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug}) + String + + + +
            +
            + Returns a string representation of this node and its descendants. +
            inherited
            + +
            + +
            + toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) + String + + + +
            +
            + Returns a one-line detailed description of the object. +
            inherited
            + +
            + +
            + toStringShort() + String + + + +
            +
            + A short, textual description of this widget. +
            inherited
            + +
            + +
            +
            + +
            +

            Operators

            +
            +
            + operator ==(Object other) + bool + + + +
            +
            + The equality operator. +
            @nonVirtual, inherited
            + +
            + +
            +
            + + + + + +
            + + + + + +
            + + + + + + + + + + + + + + diff --git a/doc/api/features_home_widgets_custom_wrap/CustomWrap/CustomWrap.html b/doc/api/features_home_widgets_custom_wrap/CustomWrap/CustomWrap.html new file mode 100644 index 0000000..83f67ec --- /dev/null +++ b/doc/api/features_home_widgets_custom_wrap/CustomWrap/CustomWrap.html @@ -0,0 +1,148 @@ + + + + + + + + CustomWrap constructor - CustomWrap - custom_wrap library - Dart API + + + + + + + + + + + + + + + + + +
            + +
            + + +
            CustomWrap
            + +
            + +
            + + +
            +
            +

            CustomWrap constructor + Null safety +

            + +
            const + CustomWrap(
            1. {required List<Widget> children,
            2. +
            3. Key? key}
            4. +
            ) +
            + + + + + +
            +

            Implementation

            +
            const CustomWrap({
            +  required this.children,
            +  super.key,
            +});
            +
            + + +
            + + + + + +
            + + + + + + + + + + + + + + diff --git a/doc/api/features_home_widgets_custom_wrap/CustomWrap/build.html b/doc/api/features_home_widgets_custom_wrap/CustomWrap/build.html new file mode 100644 index 0000000..227f7e2 --- /dev/null +++ b/doc/api/features_home_widgets_custom_wrap/CustomWrap/build.html @@ -0,0 +1,205 @@ + + + + + + + + build method - CustomWrap class - custom_wrap library - Dart API + + + + + + + + + + + + + + + + + +
            + +
            + + +
            build
            + +
            + +
            + + +
            +
            +

            build method + Null safety +

            + +
            + +
            +
              +
            1. @override
            2. +
            +
            + +Widget +build(
            1. BuildContext context
            2. +
            ) + +
            override
            + +
            + +
            +

            Describes the part of the user interface represented by this widget.

            +

            The framework calls this method when this widget is inserted into the tree +in a given BuildContext and when the dependencies of this widget change +(e.g., an InheritedWidget referenced by this widget changes). This +method can potentially be called in every frame and should not have any side +effects beyond building a widget.

            +

            The framework replaces the subtree below this widget with the widget +returned by this method, either by updating the existing subtree or by +removing the subtree and inflating a new subtree, depending on whether the +widget returned by this method can update the root of the existing +subtree, as determined by calling Widget.canUpdate.

            +

            Typically implementations return a newly created constellation of widgets +that are configured with information from this widget's constructor and +from the given BuildContext.

            +

            The given BuildContext contains information about the location in the +tree at which this widget is being built. For example, the context +provides the set of inherited widgets for this location in the tree. A +given widget might be built with multiple different BuildContext +arguments over time if the widget is moved around the tree or if the +widget is inserted into the tree in multiple places at once.

            +

            The implementation of this method must only depend on:

            + +

            If a widget's build method is to depend on anything else, use a +StatefulWidget instead.

            +

            See also:

            +
              +
            • StatelessWidget, which contains the discussion on performance considerations.
            • +
            +
            + + + +
            +

            Implementation

            +
            @override
            +Widget build(BuildContext context) {
            +  return children.isNotEmpty
            +      ? Wrap(
            +          runSpacing: 24,
            +          spacing: 8,
            +          alignment: WrapAlignment.center,
            +          runAlignment: WrapAlignment.center,
            +          crossAxisAlignment: WrapCrossAlignment.center,
            +          children: children,
            +        )
            +      : const Icon(
            +          Icons.image,
            +          size: 80,
            +          color: ConstColours.red,
            +        );
            +}
            +
            + + +
            + + + + + +
            + + + + + + + + + + + + + + diff --git a/doc/api/features_home_widgets_custom_wrap/CustomWrap/children.html b/doc/api/features_home_widgets_custom_wrap/CustomWrap/children.html new file mode 100644 index 0000000..1b2fb00 --- /dev/null +++ b/doc/api/features_home_widgets_custom_wrap/CustomWrap/children.html @@ -0,0 +1,146 @@ + + + + + + + + children property - CustomWrap class - custom_wrap library - Dart API + + + + + + + + + + + + + + + + + +
            + +
            + + +
            children
            + +
            + +
            + + +
            +
            +

            children property + Null safety +

            + +
            + List<Widget> + children +
            final
            + +
            + + + +
            +

            Implementation

            +
            final List<Widget> children;
            +
            +
            +
            + + +
            + + + + + +
            + + + + + + + + + + + + + + diff --git a/doc/api/features_home_widgets_custom_wrap/features_home_widgets_custom_wrap-library.html b/doc/api/features_home_widgets_custom_wrap/features_home_widgets_custom_wrap-library.html new file mode 100644 index 0000000..a94a5f2 --- /dev/null +++ b/doc/api/features_home_widgets_custom_wrap/features_home_widgets_custom_wrap-library.html @@ -0,0 +1,190 @@ + + + + + + + + custom_wrap library - Dart API + + + + + + + + + + + + + + + + + +
            + +
            + + +
            custom_wrap
            + +
            + +
            + + +
            +
            +

            custom_wrap library + Null safety + +

            + + + + +
            +

            Classes

            + +
            +
            + CustomWrap + +
            +
            + +
            + +
            +
            + + + + + + + + + +
            + + + + + +
            + + + + + + + + + + + + + + diff --git a/doc/api/index.html b/doc/api/index.html new file mode 100644 index 0000000..03eeaee --- /dev/null +++ b/doc/api/index.html @@ -0,0 +1,571 @@ + + + + + + + + + mc_gallery - Dart API docs + + + + + + + + + + + + + + + + + +
            + +
            + + +
            mc_gallery
            + +
            + +
            + + +
            + +
            +

            mc_gallery

            +

            Dart docs explanation

            +

            The first line of docs are like normal Dart docs. The second line is less of a 'further' +explanation, and more of an active commentary for the viewer.

            +

            Emulation

            +

            Main API

            +

            The unsplash_images_api contains code for fetching data from an external website. Since I have used 'source.unsplash.com', there is no actual daa +data (in the form of protected URLs or raw JSON like Facebook API) that is sent back. So this base URL can directly be used to cache the images.

            +

            But I wanted to give a more realistic procedure. So, I manually serialize the same data about the URL to JSON and then deserialize it, just a step +further on needlessly. In addition to it, constant fetch delays have added in as well. But in theory, the first serialization can be replaced by actual data-fetch, +while the rest works as expected

            +

            Search API

            +

            Since websites also have a server-side search call that is available, functionality had been included to make use of that too. But again, this is mocked +by the steps mentioned above.

            +

            Maintaining scope

            +

            Since it's just a demo assignment, I have tried to keep the scope of the functionalities small. By that, I mean I have not fully optimized performance-critical sections, +or fixed some rare-case bugs. But instead I have left either a 'todo' for them, or mentioned that in the docs themselves

            +

            Extra quirks

            +

            A lot of the empty directories and unused asset files are left in, as I used my project templated from my other templates. I decided to leave them in, in any case since they +may give a better indication about how I code, should you choose to look into them. A lot of the functionality that I used, is something that I have already made for my previous project(s), +so it was not as much work as it seems. One of my recent ones, (luckily) literally had a Gallery feature as well, for congregating social media posts into one place. So a lot of assets were reused from there.

            +

            Some of the extra quirks that I added in are:

            +
              +
            1. Dark mode support.
            2. +
            3. Live search -> both for locally (cached) image files, and Web (using a website's search API).
            4. +
            5. Clearing image cache on app going to background, and then restarting the program (way easier on an emulator using hot restart). +
                +
              • I found it easier to directly use the change in app life cycle, than implement a pull-down-refresh.
              • +
              +
            6. +
            7. Logging.
            8. +
            9. Local storage of favourites state -> on restart, the favourites stay. +
                +
              • Not very useful on a real device as app restart can only be triggered with app life cycle state change, which would clear the download cache, +which would be an invalidate them -> so clearing them away with the image cache for now.
              • +
              +
            10. +
            11. Web API unit test
            12. +
            +
            + + +
            +

            Libraries

            +
            +
            + animated_column + +
            +
            +
            + +
            + app + +
            +
            +
            + +
            + app_lifecycle_service + +
            +
            +
            + +
            + app_router + +
            +
            +
            + +
            + app_setup + +
            +
            +
            + +
            + base_view_model + +
            +
            +
            + +
            + connections_service + +
            +
            +
            + +
            + const_colors + +
            +
            +
            + +
            + const_durations + +
            +
            +
            + +
            + const_input_formatters + +
            +
            +
            + +
            + const_input_validators + +
            +
            +
            + +
            + const_media + +
            +
            +
            + +
            + const_sorters + +
            +
            +
            + +
            + const_text + +
            +
            +
            + +
            + const_values + +
            +
            +
            + +
            + context_extensions + +
            +
            +
            + +
            + custom_wrap + +
            +
            +
            + +
            + dio_extensions + +
            +
            +
            + +
            + error_page_view + +
            +
            +
            + + +
            +
            + + +
            +
            + +
            + gap + +
            +
            +
            + +
            + image_cache_manager_service + +
            +
            +
            + + +
            +
            + + +
            +
            + +
            + image_model + +
            +
            +
            + +
            + image_model_dto + +
            +
            +
            + +
            + images_api + +
            +
            +
            + +
            + images_service + +
            +
            +
            + +
            + iterable_extensions + +
            +
            +
            + +
            + l10n + +
            +
            +
            + +
            + list_extensions + +
            +
            +
            + +
            + local_storage_service + +
            +
            +
            + +
            + locator + +
            +
            +
            + +
            + logging_service + +
            +
            +
            + +
            + main + +
            +
            +
            + +
            + map_extensions + +
            +
            +
            + +
            + mcg_scaffold + +
            +
            +
            + +
            + messages_all + +
            +
            +
            + +
            + messages_en + +
            +
            +
            + +
            + multi_value_listenable_builder + +
            +
            +
            + +
            + mutex + +
            +
            +
            + + +
            +
            + +
            + object_extensions + +
            +
            +
            + +
            + overlay_service + +
            +
            +
            + +
            + random_extensions + +
            +
            +
            + +
            + routes + +
            +
            +
            + +
            + search_option + +
            +
            +
            + +
            + stream_extensions + +
            +
            +
            + +
            + string_extensions + +
            +
            +
            + +
            + unsplash_images_api + +
            +
            +
            + +
            + value_notifier_extensions + +
            +
            +
            + +
            + view_model_builder + +
            +
            +
            + +
            + view_model_state + +
            +
            +
            + +
            +
            + +
            + + + + + +
            + + + + + + + + + + + + + + diff --git a/doc/api/index.json b/doc/api/index.json new file mode 100644 index 0000000..3933d4c --- /dev/null +++ b/doc/api/index.json @@ -0,0 +1 @@ +[{"name":"animated_column","qualifiedName":"animated_column","href":"features_core_widgets_animated_column/features_core_widgets_animated_column-library.html","type":"library","overriddenDepth":0,"packageName":"mc_gallery"},{"name":"AnimatedColumn","qualifiedName":"animated_column.AnimatedColumn","href":"features_core_widgets_animated_column/AnimatedColumn-class.html","type":"class","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"animated_column","type":"library"}},{"name":"AnimatedColumn","qualifiedName":"animated_column.AnimatedColumn.AnimatedColumn","href":"features_core_widgets_animated_column/AnimatedColumn/AnimatedColumn.html","type":"constructor","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"AnimatedColumn","type":"class"}},{"name":"build","qualifiedName":"animated_column.AnimatedColumn.build","href":"features_core_widgets_animated_column/AnimatedColumn/build.html","type":"method","overriddenDepth":1,"packageName":"mc_gallery","enclosedBy":{"name":"AnimatedColumn","type":"class"}},{"name":"children","qualifiedName":"animated_column.AnimatedColumn.children","href":"features_core_widgets_animated_column/AnimatedColumn/children.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"AnimatedColumn","type":"class"}},{"name":"crossAxisAlignment","qualifiedName":"animated_column.AnimatedColumn.crossAxisAlignment","href":"features_core_widgets_animated_column/AnimatedColumn/crossAxisAlignment.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"AnimatedColumn","type":"class"}},{"name":"duration","qualifiedName":"animated_column.AnimatedColumn.duration","href":"features_core_widgets_animated_column/AnimatedColumn/duration.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"AnimatedColumn","type":"class"}},{"name":"mainAxisAlignment","qualifiedName":"animated_column.AnimatedColumn.mainAxisAlignment","href":"features_core_widgets_animated_column/AnimatedColumn/mainAxisAlignment.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"AnimatedColumn","type":"class"}},{"name":"mainAxisSize","qualifiedName":"animated_column.AnimatedColumn.mainAxisSize","href":"features_core_widgets_animated_column/AnimatedColumn/mainAxisSize.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"AnimatedColumn","type":"class"}},{"name":"maxAnimatingChildren","qualifiedName":"animated_column.AnimatedColumn.maxAnimatingChildren","href":"features_core_widgets_animated_column/AnimatedColumn/maxAnimatingChildren.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"AnimatedColumn","type":"class"}},{"name":"textBaseline","qualifiedName":"animated_column.AnimatedColumn.textBaseline","href":"features_core_widgets_animated_column/AnimatedColumn/textBaseline.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"AnimatedColumn","type":"class"}},{"name":"textDirection","qualifiedName":"animated_column.AnimatedColumn.textDirection","href":"features_core_widgets_animated_column/AnimatedColumn/textDirection.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"AnimatedColumn","type":"class"}},{"name":"verticalDirection","qualifiedName":"animated_column.AnimatedColumn.verticalDirection","href":"features_core_widgets_animated_column/AnimatedColumn/verticalDirection.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"AnimatedColumn","type":"class"}},{"name":"app","qualifiedName":"app","href":"app/app-library.html","type":"library","overriddenDepth":0,"packageName":"mc_gallery"},{"name":"McgApp","qualifiedName":"app.McgApp","href":"app/McgApp-class.html","type":"class","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"app","type":"library"}},{"name":"McgApp","qualifiedName":"app.McgApp.McgApp","href":"app/McgApp/McgApp.html","type":"constructor","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"McgApp","type":"class"}},{"name":"build","qualifiedName":"app.McgApp.build","href":"app/McgApp/build.html","type":"method","overriddenDepth":1,"packageName":"mc_gallery","enclosedBy":{"name":"McgApp","type":"class"}},{"name":"app_lifecycle_service","qualifiedName":"app_lifecycle_service","href":"features_core_services_app_lifecycle_service/features_core_services_app_lifecycle_service-library.html","type":"library","overriddenDepth":0,"packageName":"mc_gallery"},{"name":"AddLifeCycleListener","qualifiedName":"app_lifecycle_service.AddLifeCycleListener","href":"features_core_services_app_lifecycle_service/AddLifeCycleListener.html","type":"typedef","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"app_lifecycle_service","type":"library"}},{"name":"AppLifecycleService","qualifiedName":"app_lifecycle_service.AppLifecycleService","href":"features_core_services_app_lifecycle_service/AppLifecycleService-class.html","type":"class","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"app_lifecycle_service","type":"library"}},{"name":"AppLifecycleService","qualifiedName":"app_lifecycle_service.AppLifecycleService.AppLifecycleService","href":"features_core_services_app_lifecycle_service/AppLifecycleService/AppLifecycleService.html","type":"constructor","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"AppLifecycleService","type":"class"}},{"name":"addListener","qualifiedName":"app_lifecycle_service.AppLifecycleService.addListener","href":"features_core_services_app_lifecycle_service/AppLifecycleService/addListener.html","type":"method","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"AppLifecycleService","type":"class"}},{"name":"appLifeCycleState","qualifiedName":"app_lifecycle_service.AppLifecycleService.appLifeCycleState","href":"features_core_services_app_lifecycle_service/AppLifecycleService/appLifeCycleState.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"AppLifecycleService","type":"class"}},{"name":"didChangeAppLifecycleState","qualifiedName":"app_lifecycle_service.AppLifecycleService.didChangeAppLifecycleState","href":"features_core_services_app_lifecycle_service/AppLifecycleService/didChangeAppLifecycleState.html","type":"method","overriddenDepth":1,"packageName":"mc_gallery","enclosedBy":{"name":"AppLifecycleService","type":"class"}},{"name":"dispose","qualifiedName":"app_lifecycle_service.AppLifecycleService.dispose","href":"features_core_services_app_lifecycle_service/AppLifecycleService/dispose.html","type":"method","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"AppLifecycleService","type":"class"}},{"name":"locate","qualifiedName":"app_lifecycle_service.AppLifecycleService.locate","href":"features_core_services_app_lifecycle_service/AppLifecycleService/locate.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"AppLifecycleService","type":"class"}},{"name":"removeListener","qualifiedName":"app_lifecycle_service.AppLifecycleService.removeListener","href":"features_core_services_app_lifecycle_service/AppLifecycleService/removeListener.html","type":"method","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"AppLifecycleService","type":"class"}},{"name":"RemoveLifeCycleListener","qualifiedName":"app_lifecycle_service.RemoveLifeCycleListener","href":"features_core_services_app_lifecycle_service/RemoveLifeCycleListener.html","type":"typedef","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"app_lifecycle_service","type":"library"}},{"name":"app_router","qualifiedName":"app_router","href":"features_core_abstracts_router_app_router/features_core_abstracts_router_app_router-library.html","type":"library","overriddenDepth":0,"packageName":"mc_gallery"},{"name":"McgRouter","qualifiedName":"app_router.McgRouter","href":"features_core_abstracts_router_app_router/McgRouter-class.html","type":"class","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"app_router","type":"library"}},{"name":"McgRouter","qualifiedName":"app_router.McgRouter.McgRouter","href":"features_core_abstracts_router_app_router/McgRouter/McgRouter.html","type":"constructor","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"McgRouter","type":"class"}},{"name":"locate","qualifiedName":"app_router.McgRouter.locate","href":"features_core_abstracts_router_app_router/McgRouter/locate.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"McgRouter","type":"class"}},{"name":"router","qualifiedName":"app_router.McgRouter.router","href":"features_core_abstracts_router_app_router/McgRouter/router.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"McgRouter","type":"class"}},{"name":"app_setup","qualifiedName":"app_setup","href":"features_core_abstracts_app_setup/features_core_abstracts_app_setup-library.html","type":"library","overriddenDepth":0,"packageName":"mc_gallery"},{"name":"AppSetup","qualifiedName":"app_setup.AppSetup","href":"features_core_abstracts_app_setup/AppSetup-class.html","type":"class","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"app_setup","type":"library"}},{"name":"AppSetup","qualifiedName":"app_setup.AppSetup.AppSetup","href":"features_core_abstracts_app_setup/AppSetup/AppSetup.html","type":"constructor","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"AppSetup","type":"class"}},{"name":"initialise","qualifiedName":"app_setup.AppSetup.initialise","href":"features_core_abstracts_app_setup/AppSetup/initialise.html","type":"method","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"AppSetup","type":"class"}},{"name":"onUncaughtException","qualifiedName":"app_setup.AppSetup.onUncaughtException","href":"features_core_abstracts_app_setup/AppSetup/onUncaughtException.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"AppSetup","type":"class"}},{"name":"resolveLocale","qualifiedName":"app_setup.AppSetup.resolveLocale","href":"features_core_abstracts_app_setup/AppSetup/resolveLocale.html","type":"method","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"AppSetup","type":"class"}},{"name":"supportedLocales","qualifiedName":"app_setup.AppSetup.supportedLocales","href":"features_core_abstracts_app_setup/AppSetup/supportedLocales.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"AppSetup","type":"class"}},{"name":"base_view_model","qualifiedName":"base_view_model","href":"features_core_abstracts_base_view_model/features_core_abstracts_base_view_model-library.html","type":"library","overriddenDepth":0,"packageName":"mc_gallery"},{"name":"BaseViewModel","qualifiedName":"base_view_model.BaseViewModel","href":"features_core_abstracts_base_view_model/BaseViewModel-class.html","type":"class","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"base_view_model","type":"library"}},{"name":"BaseViewModel","qualifiedName":"base_view_model.BaseViewModel.BaseViewModel","href":"features_core_abstracts_base_view_model/BaseViewModel/BaseViewModel.html","type":"constructor","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"BaseViewModel","type":"class"}},{"name":"dispose","qualifiedName":"base_view_model.BaseViewModel.dispose","href":"features_core_abstracts_base_view_model/BaseViewModel/dispose.html","type":"method","overriddenDepth":1,"packageName":"mc_gallery","enclosedBy":{"name":"BaseViewModel","type":"class"}},{"name":"errorMessage","qualifiedName":"base_view_model.BaseViewModel.errorMessage","href":"features_core_abstracts_base_view_model/BaseViewModel/errorMessage.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"BaseViewModel","type":"class"}},{"name":"hasError","qualifiedName":"base_view_model.BaseViewModel.hasError","href":"features_core_abstracts_base_view_model/BaseViewModel/hasError.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"BaseViewModel","type":"class"}},{"name":"height","qualifiedName":"base_view_model.BaseViewModel.height","href":"features_core_abstracts_base_view_model/BaseViewModel/height.html","type":"method","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"BaseViewModel","type":"class"}},{"name":"ifMounted","qualifiedName":"base_view_model.BaseViewModel.ifMounted","href":"features_core_abstracts_base_view_model/BaseViewModel/ifMounted.html","type":"method","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"BaseViewModel","type":"class"}},{"name":"initialise","qualifiedName":"base_view_model.BaseViewModel.initialise","href":"features_core_abstracts_base_view_model/BaseViewModel/initialise.html","type":"method","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"BaseViewModel","type":"class"}},{"name":"isBusy","qualifiedName":"base_view_model.BaseViewModel.isBusy","href":"features_core_abstracts_base_view_model/BaseViewModel/isBusy.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"BaseViewModel","type":"class"}},{"name":"isInitialised","qualifiedName":"base_view_model.BaseViewModel.isInitialised","href":"features_core_abstracts_base_view_model/BaseViewModel/isInitialised.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"BaseViewModel","type":"class"}},{"name":"setBusy","qualifiedName":"base_view_model.BaseViewModel.setBusy","href":"features_core_abstracts_base_view_model/BaseViewModel/setBusy.html","type":"method","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"BaseViewModel","type":"class"}},{"name":"setError","qualifiedName":"base_view_model.BaseViewModel.setError","href":"features_core_abstracts_base_view_model/BaseViewModel/setError.html","type":"method","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"BaseViewModel","type":"class"}},{"name":"state","qualifiedName":"base_view_model.BaseViewModel.state","href":"features_core_abstracts_base_view_model/BaseViewModel/state.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"BaseViewModel","type":"class"}},{"name":"strings","qualifiedName":"base_view_model.BaseViewModel.strings","href":"features_core_abstracts_base_view_model/BaseViewModel/strings.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"BaseViewModel","type":"class"}},{"name":"width","qualifiedName":"base_view_model.BaseViewModel.width","href":"features_core_abstracts_base_view_model/BaseViewModel/width.html","type":"method","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"BaseViewModel","type":"class"}},{"name":"connections_service","qualifiedName":"connections_service","href":"features_core_services_connections_service/features_core_services_connections_service-library.html","type":"library","overriddenDepth":0,"packageName":"mc_gallery"},{"name":"ConnectionsService","qualifiedName":"connections_service.ConnectionsService","href":"features_core_services_connections_service/ConnectionsService-class.html","type":"class","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"connections_service","type":"library"}},{"name":"ConnectionsService","qualifiedName":"connections_service.ConnectionsService.ConnectionsService","href":"features_core_services_connections_service/ConnectionsService/ConnectionsService.html","type":"constructor","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ConnectionsService","type":"class"}},{"name":"connectivityResultListenable","qualifiedName":"connections_service.ConnectionsService.connectivityResultListenable","href":"features_core_services_connections_service/ConnectionsService/connectivityResultListenable.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ConnectionsService","type":"class"}},{"name":"dispose","qualifiedName":"connections_service.ConnectionsService.dispose","href":"features_core_services_connections_service/ConnectionsService/dispose.html","type":"method","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ConnectionsService","type":"class"}},{"name":"internetConnectionStatusListenable","qualifiedName":"connections_service.ConnectionsService.internetConnectionStatusListenable","href":"features_core_services_connections_service/ConnectionsService/internetConnectionStatusListenable.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ConnectionsService","type":"class"}},{"name":"locate","qualifiedName":"connections_service.ConnectionsService.locate","href":"features_core_services_connections_service/ConnectionsService/locate.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ConnectionsService","type":"class"}},{"name":"const_colors","qualifiedName":"const_colors","href":"features_core_data_constants_const_colors/features_core_data_constants_const_colors-library.html","type":"library","overriddenDepth":0,"packageName":"mc_gallery"},{"name":"ConstColours","qualifiedName":"const_colors.ConstColours","href":"features_core_data_constants_const_colors/ConstColours-class.html","type":"class","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"const_colors","type":"library"}},{"name":"ConstColours","qualifiedName":"const_colors.ConstColours.ConstColours","href":"features_core_data_constants_const_colors/ConstColours/ConstColours.html","type":"constructor","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ConstColours","type":"class"}},{"name":"black","qualifiedName":"const_colors.ConstColours.black","href":"features_core_data_constants_const_colors/ConstColours/black-constant.html","type":"constant","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ConstColours","type":"class"}},{"name":"galleryBackgroundColour","qualifiedName":"const_colors.ConstColours.galleryBackgroundColour","href":"features_core_data_constants_const_colors/ConstColours/galleryBackgroundColour-constant.html","type":"constant","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ConstColours","type":"class"}},{"name":"red","qualifiedName":"const_colors.ConstColours.red","href":"features_core_data_constants_const_colors/ConstColours/red-constant.html","type":"constant","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ConstColours","type":"class"}},{"name":"transparent","qualifiedName":"const_colors.ConstColours.transparent","href":"features_core_data_constants_const_colors/ConstColours/transparent-constant.html","type":"constant","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ConstColours","type":"class"}},{"name":"white","qualifiedName":"const_colors.ConstColours.white","href":"features_core_data_constants_const_colors/ConstColours/white-constant.html","type":"constant","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ConstColours","type":"class"}},{"name":"ConstThemes","qualifiedName":"const_colors.ConstThemes","href":"features_core_data_constants_const_colors/ConstThemes-class.html","type":"class","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"const_colors","type":"library"}},{"name":"ConstThemes","qualifiedName":"const_colors.ConstThemes.ConstThemes","href":"features_core_data_constants_const_colors/ConstThemes/ConstThemes.html","type":"constructor","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ConstThemes","type":"class"}},{"name":"cupertinoDarkTheme","qualifiedName":"const_colors.ConstThemes.cupertinoDarkTheme","href":"features_core_data_constants_const_colors/ConstThemes/cupertinoDarkTheme.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ConstThemes","type":"class"}},{"name":"cupertinoLightTheme","qualifiedName":"const_colors.ConstThemes.cupertinoLightTheme","href":"features_core_data_constants_const_colors/ConstThemes/cupertinoLightTheme.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ConstThemes","type":"class"}},{"name":"cupertinoThemeDarkHack","qualifiedName":"const_colors.ConstThemes.cupertinoThemeDarkHack","href":"features_core_data_constants_const_colors/ConstThemes/cupertinoThemeDarkHack.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ConstThemes","type":"class"}},{"name":"cupertinoThemeLightHack","qualifiedName":"const_colors.ConstThemes.cupertinoThemeLightHack","href":"features_core_data_constants_const_colors/ConstThemes/cupertinoThemeLightHack.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ConstThemes","type":"class"}},{"name":"materialDarkTheme","qualifiedName":"const_colors.ConstThemes.materialDarkTheme","href":"features_core_data_constants_const_colors/ConstThemes/materialDarkTheme.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ConstThemes","type":"class"}},{"name":"materialLightTheme","qualifiedName":"const_colors.ConstThemes.materialLightTheme","href":"features_core_data_constants_const_colors/ConstThemes/materialLightTheme.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ConstThemes","type":"class"}},{"name":"const_durations","qualifiedName":"const_durations","href":"features_core_data_constants_const_durations/features_core_data_constants_const_durations-library.html","type":"library","overriddenDepth":0,"packageName":"mc_gallery"},{"name":"ConstDurations","qualifiedName":"const_durations.ConstDurations","href":"features_core_data_constants_const_durations/ConstDurations-class.html","type":"class","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"const_durations","type":"library"}},{"name":"ConstDurations","qualifiedName":"const_durations.ConstDurations.ConstDurations","href":"features_core_data_constants_const_durations/ConstDurations/ConstDurations.html","type":"constructor","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ConstDurations","type":"class"}},{"name":"defaultAnimationDuration","qualifiedName":"const_durations.ConstDurations.defaultAnimationDuration","href":"features_core_data_constants_const_durations/ConstDurations/defaultAnimationDuration-constant.html","type":"constant","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ConstDurations","type":"class"}},{"name":"doubleDefaultAnimationDuration","qualifiedName":"const_durations.ConstDurations.doubleDefaultAnimationDuration","href":"features_core_data_constants_const_durations/ConstDurations/doubleDefaultAnimationDuration-constant.html","type":"constant","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ConstDurations","type":"class"}},{"name":"halfDefaultAnimationDuration","qualifiedName":"const_durations.ConstDurations.halfDefaultAnimationDuration","href":"features_core_data_constants_const_durations/ConstDurations/halfDefaultAnimationDuration-constant.html","type":"constant","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ConstDurations","type":"class"}},{"name":"oneAndHalfDefaultAnimationDuration","qualifiedName":"const_durations.ConstDurations.oneAndHalfDefaultAnimationDuration","href":"features_core_data_constants_const_durations/ConstDurations/oneAndHalfDefaultAnimationDuration-constant.html","type":"constant","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ConstDurations","type":"class"}},{"name":"quarterDefaultAnimationDuration","qualifiedName":"const_durations.ConstDurations.quarterDefaultAnimationDuration","href":"features_core_data_constants_const_durations/ConstDurations/quarterDefaultAnimationDuration-constant.html","type":"constant","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ConstDurations","type":"class"}},{"name":"tripleDefaultAnimationDuration","qualifiedName":"const_durations.ConstDurations.tripleDefaultAnimationDuration","href":"features_core_data_constants_const_durations/ConstDurations/tripleDefaultAnimationDuration-constant.html","type":"constant","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ConstDurations","type":"class"}},{"name":"zero","qualifiedName":"const_durations.ConstDurations.zero","href":"features_core_data_constants_const_durations/ConstDurations/zero-constant.html","type":"constant","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ConstDurations","type":"class"}},{"name":"const_input_formatters","qualifiedName":"const_input_formatters","href":"features_core_data_constants_const_input_formatters/features_core_data_constants_const_input_formatters-library.html","type":"library","overriddenDepth":0,"packageName":"mc_gallery"},{"name":"const_input_validators","qualifiedName":"const_input_validators","href":"features_core_data_constants_const_input_validators/features_core_data_constants_const_input_validators-library.html","type":"library","overriddenDepth":0,"packageName":"mc_gallery"},{"name":"const_media","qualifiedName":"const_media","href":"features_core_data_constants_const_media/features_core_data_constants_const_media-library.html","type":"library","overriddenDepth":0,"packageName":"mc_gallery"},{"name":"ConstMedia","qualifiedName":"const_media.ConstMedia","href":"features_core_data_constants_const_media/ConstMedia-class.html","type":"class","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"const_media","type":"library"}},{"name":"ConstMedia","qualifiedName":"const_media.ConstMedia.ConstMedia","href":"features_core_data_constants_const_media/ConstMedia/ConstMedia.html","type":"constructor","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ConstMedia","type":"class"}},{"name":"buildIcon","qualifiedName":"const_media.ConstMedia.buildIcon","href":"features_core_data_constants_const_media/ConstMedia/buildIcon.html","type":"method","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ConstMedia","type":"class"}},{"name":"favStarFilled","qualifiedName":"const_media.ConstMedia.favStarFilled","href":"features_core_data_constants_const_media/ConstMedia/favStarFilled-constant.html","type":"constant","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ConstMedia","type":"class"}},{"name":"favStarOutline","qualifiedName":"const_media.ConstMedia.favStarOutline","href":"features_core_data_constants_const_media/ConstMedia/favStarOutline-constant.html","type":"constant","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ConstMedia","type":"class"}},{"name":"const_sorters","qualifiedName":"const_sorters","href":"features_core_data_constants_const_sorters/features_core_data_constants_const_sorters-library.html","type":"library","overriddenDepth":0,"packageName":"mc_gallery"},{"name":"ConstSorters","qualifiedName":"const_sorters.ConstSorters","href":"features_core_data_constants_const_sorters/ConstSorters-class.html","type":"class","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"const_sorters","type":"library"}},{"name":"ConstSorters","qualifiedName":"const_sorters.ConstSorters.ConstSorters","href":"features_core_data_constants_const_sorters/ConstSorters/ConstSorters.html","type":"constructor","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ConstSorters","type":"class"}},{"name":"stringsSimilarityTarget","qualifiedName":"const_sorters.ConstSorters.stringsSimilarityTarget","href":"features_core_data_constants_const_sorters/ConstSorters/stringsSimilarityTarget.html","type":"method","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ConstSorters","type":"class"}},{"name":"const_text","qualifiedName":"const_text","href":"features_core_data_constants_const_text/features_core_data_constants_const_text-library.html","type":"library","overriddenDepth":0,"packageName":"mc_gallery"},{"name":"ConstText","qualifiedName":"const_text.ConstText","href":"features_core_data_constants_const_text/ConstText-class.html","type":"class","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"const_text","type":"library"}},{"name":"ConstText","qualifiedName":"const_text.ConstText.ConstText","href":"features_core_data_constants_const_text/ConstText/ConstText.html","type":"constructor","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ConstText","type":"class"}},{"name":"imageOverlayTextStyle","qualifiedName":"const_text.ConstText.imageOverlayTextStyle","href":"features_core_data_constants_const_text/ConstText/imageOverlayTextStyle.html","type":"method","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ConstText","type":"class"}},{"name":"const_values","qualifiedName":"const_values","href":"features_core_data_constants_const_values/features_core_data_constants_const_values-library.html","type":"library","overriddenDepth":0,"packageName":"mc_gallery"},{"name":"ConstValues","qualifiedName":"const_values.ConstValues","href":"features_core_data_constants_const_values/ConstValues-class.html","type":"class","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"const_values","type":"library"}},{"name":"ConstValues","qualifiedName":"const_values.ConstValues.ConstValues","href":"features_core_data_constants_const_values/ConstValues/ConstValues.html","type":"constructor","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ConstValues","type":"class"}},{"name":"defaultEmulatedLatencyMillis","qualifiedName":"const_values.ConstValues.defaultEmulatedLatencyMillis","href":"features_core_data_constants_const_values/ConstValues/defaultEmulatedLatencyMillis-constant.html","type":"constant","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ConstValues","type":"class"}},{"name":"httpsScheme","qualifiedName":"const_values.ConstValues.httpsScheme","href":"features_core_data_constants_const_values/ConstValues/httpsScheme-constant.html","type":"constant","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ConstValues","type":"class"}},{"name":"imagesHostServer","qualifiedName":"const_values.ConstValues.imagesHostServer","href":"features_core_data_constants_const_values/ConstValues/imagesHostServer-constant.html","type":"constant","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ConstValues","type":"class"}},{"name":"imagesHostUrlPathSegments","qualifiedName":"const_values.ConstValues.imagesHostUrlPathSegments","href":"features_core_data_constants_const_values/ConstValues/imagesHostUrlPathSegments-constant.html","type":"constant","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ConstValues","type":"class"}},{"name":"maxImageSize","qualifiedName":"const_values.ConstValues.maxImageSize","href":"features_core_data_constants_const_values/ConstValues/maxImageSize-constant.html","type":"constant","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ConstValues","type":"class"}},{"name":"minImageSize","qualifiedName":"const_values.ConstValues.minImageSize","href":"features_core_data_constants_const_values/ConstValues/minImageSize-constant.html","type":"constant","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ConstValues","type":"class"}},{"name":"numberOfImages","qualifiedName":"const_values.ConstValues.numberOfImages","href":"features_core_data_constants_const_values/ConstValues/numberOfImages-constant.html","type":"constant","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ConstValues","type":"class"}},{"name":"context_extensions","qualifiedName":"context_extensions","href":"features_core_data_extensions_context_extensions/features_core_data_extensions_context_extensions-library.html","type":"library","overriddenDepth":0,"packageName":"mc_gallery"},{"name":"DarkMode","qualifiedName":"context_extensions.DarkMode","href":"features_core_data_extensions_context_extensions/DarkMode.html","type":"extension","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"context_extensions","type":"library"}},{"name":"height","qualifiedName":"context_extensions.DarkMode.height","href":"features_core_data_extensions_context_extensions/DarkMode/height.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"DarkMode","type":"extension"}},{"name":"isDarkMode","qualifiedName":"context_extensions.DarkMode.isDarkMode","href":"features_core_data_extensions_context_extensions/DarkMode/isDarkMode.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"DarkMode","type":"extension"}},{"name":"width","qualifiedName":"context_extensions.DarkMode.width","href":"features_core_data_extensions_context_extensions/DarkMode/width.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"DarkMode","type":"extension"}},{"name":"custom_wrap","qualifiedName":"custom_wrap","href":"features_home_widgets_custom_wrap/features_home_widgets_custom_wrap-library.html","type":"library","overriddenDepth":0,"packageName":"mc_gallery"},{"name":"CustomWrap","qualifiedName":"custom_wrap.CustomWrap","href":"features_home_widgets_custom_wrap/CustomWrap-class.html","type":"class","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"custom_wrap","type":"library"}},{"name":"CustomWrap","qualifiedName":"custom_wrap.CustomWrap.CustomWrap","href":"features_home_widgets_custom_wrap/CustomWrap/CustomWrap.html","type":"constructor","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"CustomWrap","type":"class"}},{"name":"build","qualifiedName":"custom_wrap.CustomWrap.build","href":"features_home_widgets_custom_wrap/CustomWrap/build.html","type":"method","overriddenDepth":1,"packageName":"mc_gallery","enclosedBy":{"name":"CustomWrap","type":"class"}},{"name":"children","qualifiedName":"custom_wrap.CustomWrap.children","href":"features_home_widgets_custom_wrap/CustomWrap/children.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"CustomWrap","type":"class"}},{"name":"dio_extensions","qualifiedName":"dio_extensions","href":"features_core_data_extensions_dio_extensions/features_core_data_extensions_dio_extensions-library.html","type":"library","overriddenDepth":0,"packageName":"mc_gallery"},{"name":"ResponseExtensions","qualifiedName":"dio_extensions.ResponseExtensions","href":"features_core_data_extensions_dio_extensions/ResponseExtensions.html","type":"extension","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"dio_extensions","type":"library"}},{"name":"isSuccessful","qualifiedName":"dio_extensions.ResponseExtensions.isSuccessful","href":"features_core_data_extensions_dio_extensions/ResponseExtensions/isSuccessful.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ResponseExtensions","type":"extension"}},{"name":"error_page_view","qualifiedName":"error_page_view","href":"features_core_views_error_page_view/features_core_views_error_page_view-library.html","type":"library","overriddenDepth":0,"packageName":"mc_gallery"},{"name":"ErrorPageView","qualifiedName":"error_page_view.ErrorPageView","href":"features_core_views_error_page_view/ErrorPageView-class.html","type":"class","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"error_page_view","type":"library"}},{"name":"ErrorPageView","qualifiedName":"error_page_view.ErrorPageView.ErrorPageView","href":"features_core_views_error_page_view/ErrorPageView/ErrorPageView.html","type":"constructor","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ErrorPageView","type":"class"}},{"name":"build","qualifiedName":"error_page_view.ErrorPageView.build","href":"features_core_views_error_page_view/ErrorPageView/build.html","type":"method","overriddenDepth":1,"packageName":"mc_gallery","enclosedBy":{"name":"ErrorPageView","type":"class"}},{"name":"error","qualifiedName":"error_page_view.ErrorPageView.error","href":"features_core_views_error_page_view/ErrorPageView/error.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ErrorPageView","type":"class"}},{"name":"gallery_view","qualifiedName":"gallery_view","href":"features_home_views_gallery_gallery_view/features_home_views_gallery_gallery_view-library.html","type":"library","overriddenDepth":0,"packageName":"mc_gallery"},{"name":"GalleryView","qualifiedName":"gallery_view.GalleryView","href":"features_home_views_gallery_gallery_view/GalleryView-class.html","type":"class","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"gallery_view","type":"library"}},{"name":"GalleryView","qualifiedName":"gallery_view.GalleryView.GalleryView","href":"features_home_views_gallery_gallery_view/GalleryView/GalleryView.html","type":"constructor","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"GalleryView","type":"class"}},{"name":"build","qualifiedName":"gallery_view.GalleryView.build","href":"features_home_views_gallery_gallery_view/GalleryView/build.html","type":"method","overriddenDepth":1,"packageName":"mc_gallery","enclosedBy":{"name":"GalleryView","type":"class"}},{"name":"gallery_view_model","qualifiedName":"gallery_view_model","href":"features_home_views_gallery_gallery_view_model/features_home_views_gallery_gallery_view_model-library.html","type":"library","overriddenDepth":0,"packageName":"mc_gallery"},{"name":"GalleryViewModel","qualifiedName":"gallery_view_model.GalleryViewModel","href":"features_home_views_gallery_gallery_view_model/GalleryViewModel-class.html","type":"class","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"gallery_view_model","type":"library"}},{"name":"GalleryViewModel","qualifiedName":"gallery_view_model.GalleryViewModel.GalleryViewModel","href":"features_home_views_gallery_gallery_view_model/GalleryViewModel/GalleryViewModel.html","type":"constructor","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"GalleryViewModel","type":"class"}},{"name":"dispose","qualifiedName":"gallery_view_model.GalleryViewModel.dispose","href":"features_home_views_gallery_gallery_view_model/GalleryViewModel/dispose.html","type":"method","overriddenDepth":2,"packageName":"mc_gallery","enclosedBy":{"name":"GalleryViewModel","type":"class"}},{"name":"downloadProgressValue","qualifiedName":"gallery_view_model.GalleryViewModel.downloadProgressValue","href":"features_home_views_gallery_gallery_view_model/GalleryViewModel/downloadProgressValue.html","type":"method","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"GalleryViewModel","type":"class"}},{"name":"favouriteImageModels","qualifiedName":"gallery_view_model.GalleryViewModel.favouriteImageModels","href":"features_home_views_gallery_gallery_view_model/GalleryViewModel/favouriteImageModels.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"GalleryViewModel","type":"class"}},{"name":"imageModels","qualifiedName":"gallery_view_model.GalleryViewModel.imageModels","href":"features_home_views_gallery_gallery_view_model/GalleryViewModel/imageModels.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"GalleryViewModel","type":"class"}},{"name":"imageSearchResultsListenable","qualifiedName":"gallery_view_model.GalleryViewModel.imageSearchResultsListenable","href":"features_home_views_gallery_gallery_view_model/GalleryViewModel/imageSearchResultsListenable.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"GalleryViewModel","type":"class"}},{"name":"initImageFetchIsDone","qualifiedName":"gallery_view_model.GalleryViewModel.initImageFetchIsDone","href":"features_home_views_gallery_gallery_view_model/GalleryViewModel/initImageFetchIsDone.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"GalleryViewModel","type":"class"}},{"name":"initialise","qualifiedName":"gallery_view_model.GalleryViewModel.initialise","href":"features_home_views_gallery_gallery_view_model/GalleryViewModel/initialise.html","type":"method","overriddenDepth":1,"packageName":"mc_gallery","enclosedBy":{"name":"GalleryViewModel","type":"class"}},{"name":"isDisplayingPressingPrompt","qualifiedName":"gallery_view_model.GalleryViewModel.isDisplayingPressingPrompt","href":"features_home_views_gallery_gallery_view_model/GalleryViewModel/isDisplayingPressingPrompt.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"GalleryViewModel","type":"class"}},{"name":"isSearchingListenable","qualifiedName":"gallery_view_model.GalleryViewModel.isSearchingListenable","href":"features_home_views_gallery_gallery_view_model/GalleryViewModel/isSearchingListenable.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"GalleryViewModel","type":"class"}},{"name":"isViewingFavouriteListenable","qualifiedName":"gallery_view_model.GalleryViewModel.isViewingFavouriteListenable","href":"features_home_views_gallery_gallery_view_model/GalleryViewModel/isViewingFavouriteListenable.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"GalleryViewModel","type":"class"}},{"name":"lastQueryResultDone","qualifiedName":"gallery_view_model.GalleryViewModel.lastQueryResultDone","href":"features_home_views_gallery_gallery_view_model/GalleryViewModel/lastQueryResultDone.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"GalleryViewModel","type":"class"}},{"name":"locate","qualifiedName":"gallery_view_model.GalleryViewModel.locate","href":"features_home_views_gallery_gallery_view_model/GalleryViewModel/locate.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"GalleryViewModel","type":"class"}},{"name":"onFavouriteViewChange","qualifiedName":"gallery_view_model.GalleryViewModel.onFavouriteViewChange","href":"features_home_views_gallery_gallery_view_model/GalleryViewModel/onFavouriteViewChange.html","type":"method","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"GalleryViewModel","type":"class"}},{"name":"onPromptPressed","qualifiedName":"gallery_view_model.GalleryViewModel.onPromptPressed","href":"features_home_views_gallery_gallery_view_model/GalleryViewModel/onPromptPressed.html","type":"method","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"GalleryViewModel","type":"class"}},{"name":"onSearchOptionChanged","qualifiedName":"gallery_view_model.GalleryViewModel.onSearchOptionChanged","href":"features_home_views_gallery_gallery_view_model/GalleryViewModel/onSearchOptionChanged.html","type":"method","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"GalleryViewModel","type":"class"}},{"name":"onSearchTermUpdate","qualifiedName":"gallery_view_model.GalleryViewModel.onSearchTermUpdate","href":"features_home_views_gallery_gallery_view_model/GalleryViewModel/onSearchTermUpdate.html","type":"method","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"GalleryViewModel","type":"class"}},{"name":"pushImageCarouselView","qualifiedName":"gallery_view_model.GalleryViewModel.pushImageCarouselView","href":"features_home_views_gallery_gallery_view_model/GalleryViewModel/pushImageCarouselView.html","type":"method","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"GalleryViewModel","type":"class"}},{"name":"searchOptionListenable","qualifiedName":"gallery_view_model.GalleryViewModel.searchOptionListenable","href":"features_home_views_gallery_gallery_view_model/GalleryViewModel/searchOptionListenable.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"GalleryViewModel","type":"class"}},{"name":"searchPressed","qualifiedName":"gallery_view_model.GalleryViewModel.searchPressed","href":"features_home_views_gallery_gallery_view_model/GalleryViewModel/searchPressed.html","type":"method","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"GalleryViewModel","type":"class"}},{"name":"updateImageFavouriteStatus","qualifiedName":"gallery_view_model.GalleryViewModel.updateImageFavouriteStatus","href":"features_home_views_gallery_gallery_view_model/GalleryViewModel/updateImageFavouriteStatus.html","type":"method","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"GalleryViewModel","type":"class"}},{"name":"gap","qualifiedName":"gap","href":"features_core_widgets_gap/features_core_widgets_gap-library.html","type":"library","overriddenDepth":0,"packageName":"mc_gallery"},{"name":"AnimatedGap","qualifiedName":"gap.AnimatedGap","href":"features_core_widgets_gap/AnimatedGap-class.html","type":"class","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"gap","type":"library"}},{"name":"AnimatedGap","qualifiedName":"gap.AnimatedGap.AnimatedGap","href":"features_core_widgets_gap/AnimatedGap/AnimatedGap.html","type":"constructor","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"AnimatedGap","type":"class"}},{"name":"createState","qualifiedName":"gap.AnimatedGap.createState","href":"features_core_widgets_gap/AnimatedGap/createState.html","type":"method","overriddenDepth":1,"packageName":"mc_gallery","enclosedBy":{"name":"AnimatedGap","type":"class"}},{"name":"curve","qualifiedName":"gap.AnimatedGap.curve","href":"features_core_widgets_gap/AnimatedGap/curve.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"AnimatedGap","type":"class"}},{"name":"duration","qualifiedName":"gap.AnimatedGap.duration","href":"features_core_widgets_gap/AnimatedGap/duration.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"AnimatedGap","type":"class"}},{"name":"gap","qualifiedName":"gap.AnimatedGap.gap","href":"features_core_widgets_gap/AnimatedGap/gap.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"AnimatedGap","type":"class"}},{"name":"AnimatedSliverGap","qualifiedName":"gap.AnimatedSliverGap","href":"features_core_widgets_gap/AnimatedSliverGap-class.html","type":"class","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"gap","type":"library"}},{"name":"AnimatedSliverGap","qualifiedName":"gap.AnimatedSliverGap.AnimatedSliverGap","href":"features_core_widgets_gap/AnimatedSliverGap/AnimatedSliverGap.html","type":"constructor","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"AnimatedSliverGap","type":"class"}},{"name":"createState","qualifiedName":"gap.AnimatedSliverGap.createState","href":"features_core_widgets_gap/AnimatedSliverGap/createState.html","type":"method","overriddenDepth":1,"packageName":"mc_gallery","enclosedBy":{"name":"AnimatedSliverGap","type":"class"}},{"name":"curve","qualifiedName":"gap.AnimatedSliverGap.curve","href":"features_core_widgets_gap/AnimatedSliverGap/curve.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"AnimatedSliverGap","type":"class"}},{"name":"duration","qualifiedName":"gap.AnimatedSliverGap.duration","href":"features_core_widgets_gap/AnimatedSliverGap/duration.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"AnimatedSliverGap","type":"class"}},{"name":"gap","qualifiedName":"gap.AnimatedSliverGap.gap","href":"features_core_widgets_gap/AnimatedSliverGap/gap.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"AnimatedSliverGap","type":"class"}},{"name":"Gap","qualifiedName":"gap.Gap","href":"features_core_widgets_gap/Gap-class.html","type":"class","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"gap","type":"library"}},{"name":"Gap","qualifiedName":"gap.Gap.Gap","href":"features_core_widgets_gap/Gap/Gap.html","type":"constructor","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"Gap","type":"class"}},{"name":"createRenderObject","qualifiedName":"gap.Gap.createRenderObject","href":"features_core_widgets_gap/Gap/createRenderObject.html","type":"method","overriddenDepth":1,"packageName":"mc_gallery","enclosedBy":{"name":"Gap","type":"class"}},{"name":"size","qualifiedName":"gap.Gap.size","href":"features_core_widgets_gap/Gap/size.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"Gap","type":"class"}},{"name":"size4","qualifiedName":"gap.Gap.size4","href":"features_core_widgets_gap/Gap/size4-constant.html","type":"constant","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"Gap","type":"class"}},{"name":"size8","qualifiedName":"gap.Gap.size8","href":"features_core_widgets_gap/Gap/size8-constant.html","type":"constant","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"Gap","type":"class"}},{"name":"size16","qualifiedName":"gap.Gap.size16","href":"features_core_widgets_gap/Gap/size16-constant.html","type":"constant","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"Gap","type":"class"}},{"name":"size24","qualifiedName":"gap.Gap.size24","href":"features_core_widgets_gap/Gap/size24-constant.html","type":"constant","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"Gap","type":"class"}},{"name":"size32","qualifiedName":"gap.Gap.size32","href":"features_core_widgets_gap/Gap/size32-constant.html","type":"constant","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"Gap","type":"class"}},{"name":"size64","qualifiedName":"gap.Gap.size64","href":"features_core_widgets_gap/Gap/size64-constant.html","type":"constant","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"Gap","type":"class"}},{"name":"updateRenderObject","qualifiedName":"gap.Gap.updateRenderObject","href":"features_core_widgets_gap/Gap/updateRenderObject.html","type":"method","overriddenDepth":1,"packageName":"mc_gallery","enclosedBy":{"name":"Gap","type":"class"}},{"name":"RenderGap","qualifiedName":"gap.RenderGap","href":"features_core_widgets_gap/RenderGap-class.html","type":"class","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"gap","type":"library"}},{"name":"RenderGap","qualifiedName":"gap.RenderGap.RenderGap","href":"features_core_widgets_gap/RenderGap/RenderGap.html","type":"constructor","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"RenderGap","type":"class"}},{"name":"gap","qualifiedName":"gap.RenderGap.gap","href":"features_core_widgets_gap/RenderGap/gap.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"RenderGap","type":"class"}},{"name":"performLayout","qualifiedName":"gap.RenderGap.performLayout","href":"features_core_widgets_gap/RenderGap/performLayout.html","type":"method","overriddenDepth":2,"packageName":"mc_gallery","enclosedBy":{"name":"RenderGap","type":"class"}},{"name":"RenderSliverGap","qualifiedName":"gap.RenderSliverGap","href":"features_core_widgets_gap/RenderSliverGap-class.html","type":"class","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"gap","type":"library"}},{"name":"RenderSliverGap","qualifiedName":"gap.RenderSliverGap.RenderSliverGap","href":"features_core_widgets_gap/RenderSliverGap/RenderSliverGap.html","type":"constructor","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"RenderSliverGap","type":"class"}},{"name":"gap","qualifiedName":"gap.RenderSliverGap.gap","href":"features_core_widgets_gap/RenderSliverGap/gap.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"RenderSliverGap","type":"class"}},{"name":"performLayout","qualifiedName":"gap.RenderSliverGap.performLayout","href":"features_core_widgets_gap/RenderSliverGap/performLayout.html","type":"method","overriddenDepth":1,"packageName":"mc_gallery","enclosedBy":{"name":"RenderSliverGap","type":"class"}},{"name":"SliverGap","qualifiedName":"gap.SliverGap","href":"features_core_widgets_gap/SliverGap-class.html","type":"class","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"gap","type":"library"}},{"name":"SliverGap","qualifiedName":"gap.SliverGap.SliverGap","href":"features_core_widgets_gap/SliverGap/SliverGap.html","type":"constructor","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"SliverGap","type":"class"}},{"name":"createRenderObject","qualifiedName":"gap.SliverGap.createRenderObject","href":"features_core_widgets_gap/SliverGap/createRenderObject.html","type":"method","overriddenDepth":1,"packageName":"mc_gallery","enclosedBy":{"name":"SliverGap","type":"class"}},{"name":"gap","qualifiedName":"gap.SliverGap.gap","href":"features_core_widgets_gap/SliverGap/gap.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"SliverGap","type":"class"}},{"name":"size4","qualifiedName":"gap.SliverGap.size4","href":"features_core_widgets_gap/SliverGap/size4-constant.html","type":"constant","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"SliverGap","type":"class"}},{"name":"size8","qualifiedName":"gap.SliverGap.size8","href":"features_core_widgets_gap/SliverGap/size8-constant.html","type":"constant","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"SliverGap","type":"class"}},{"name":"size16","qualifiedName":"gap.SliverGap.size16","href":"features_core_widgets_gap/SliverGap/size16-constant.html","type":"constant","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"SliverGap","type":"class"}},{"name":"size24","qualifiedName":"gap.SliverGap.size24","href":"features_core_widgets_gap/SliverGap/size24-constant.html","type":"constant","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"SliverGap","type":"class"}},{"name":"size32","qualifiedName":"gap.SliverGap.size32","href":"features_core_widgets_gap/SliverGap/size32-constant.html","type":"constant","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"SliverGap","type":"class"}},{"name":"size64","qualifiedName":"gap.SliverGap.size64","href":"features_core_widgets_gap/SliverGap/size64-constant.html","type":"constant","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"SliverGap","type":"class"}},{"name":"updateRenderObject","qualifiedName":"gap.SliverGap.updateRenderObject","href":"features_core_widgets_gap/SliverGap/updateRenderObject.html","type":"method","overriddenDepth":1,"packageName":"mc_gallery","enclosedBy":{"name":"SliverGap","type":"class"}},{"name":"image_cache_manager_service","qualifiedName":"image_cache_manager_service","href":"features_home_services_image_cache_manager_service/features_home_services_image_cache_manager_service-library.html","type":"library","overriddenDepth":0,"packageName":"mc_gallery"},{"name":"ImageCacheManagerService","qualifiedName":"image_cache_manager_service.ImageCacheManagerService","href":"features_home_services_image_cache_manager_service/ImageCacheManagerService-class.html","type":"class","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"image_cache_manager_service","type":"library"}},{"name":"ImageCacheManagerService","qualifiedName":"image_cache_manager_service.ImageCacheManagerService.ImageCacheManagerService","href":"features_home_services_image_cache_manager_service/ImageCacheManagerService/ImageCacheManagerService.html","type":"constructor","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ImageCacheManagerService","type":"class"}},{"name":"emptyCache","qualifiedName":"image_cache_manager_service.ImageCacheManagerService.emptyCache","href":"features_home_services_image_cache_manager_service/ImageCacheManagerService/emptyCache.html","type":"method","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ImageCacheManagerService","type":"class"}},{"name":"locate","qualifiedName":"image_cache_manager_service.ImageCacheManagerService.locate","href":"features_home_services_image_cache_manager_service/ImageCacheManagerService/locate.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ImageCacheManagerService","type":"class"}},{"name":"image_carousel_view","qualifiedName":"image_carousel_view","href":"features_home_views_image_carousel_image_carousel_view/features_home_views_image_carousel_image_carousel_view-library.html","type":"library","overriddenDepth":0,"packageName":"mc_gallery"},{"name":"ImageCarouselView","qualifiedName":"image_carousel_view.ImageCarouselView","href":"features_home_views_image_carousel_image_carousel_view/ImageCarouselView-class.html","type":"class","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"image_carousel_view","type":"library"}},{"name":"ImageCarouselView","qualifiedName":"image_carousel_view.ImageCarouselView.ImageCarouselView","href":"features_home_views_image_carousel_image_carousel_view/ImageCarouselView/ImageCarouselView.html","type":"constructor","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ImageCarouselView","type":"class"}},{"name":"build","qualifiedName":"image_carousel_view.ImageCarouselView.build","href":"features_home_views_image_carousel_image_carousel_view/ImageCarouselView/build.html","type":"method","overriddenDepth":1,"packageName":"mc_gallery","enclosedBy":{"name":"ImageCarouselView","type":"class"}},{"name":"imageCarouselViewArguments","qualifiedName":"image_carousel_view.ImageCarouselView.imageCarouselViewArguments","href":"features_home_views_image_carousel_image_carousel_view/ImageCarouselView/imageCarouselViewArguments.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ImageCarouselView","type":"class"}},{"name":"ImageCarouselViewArguments","qualifiedName":"image_carousel_view.ImageCarouselViewArguments","href":"features_home_views_image_carousel_image_carousel_view/ImageCarouselViewArguments-class.html","type":"class","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"image_carousel_view","type":"library"}},{"name":"ImageCarouselViewArguments","qualifiedName":"image_carousel_view.ImageCarouselViewArguments.ImageCarouselViewArguments","href":"features_home_views_image_carousel_image_carousel_view/ImageCarouselViewArguments/ImageCarouselViewArguments.html","type":"constructor","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ImageCarouselViewArguments","type":"class"}},{"name":"imageIndexKey","qualifiedName":"image_carousel_view.ImageCarouselViewArguments.imageIndexKey","href":"features_home_views_image_carousel_image_carousel_view/ImageCarouselViewArguments/imageIndexKey.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ImageCarouselViewArguments","type":"class"}},{"name":"image_carousel_view_model","qualifiedName":"image_carousel_view_model","href":"features_home_views_image_carousel_image_carousel_view_model/features_home_views_image_carousel_image_carousel_view_model-library.html","type":"library","overriddenDepth":0,"packageName":"mc_gallery"},{"name":"ImageCarouselViewModel","qualifiedName":"image_carousel_view_model.ImageCarouselViewModel","href":"features_home_views_image_carousel_image_carousel_view_model/ImageCarouselViewModel-class.html","type":"class","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"image_carousel_view_model","type":"library"}},{"name":"ImageCarouselViewModel","qualifiedName":"image_carousel_view_model.ImageCarouselViewModel.ImageCarouselViewModel","href":"features_home_views_image_carousel_image_carousel_view_model/ImageCarouselViewModel/ImageCarouselViewModel.html","type":"constructor","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ImageCarouselViewModel","type":"class"}},{"name":"currentImageIndex","qualifiedName":"image_carousel_view_model.ImageCarouselViewModel.currentImageIndex","href":"features_home_views_image_carousel_image_carousel_view_model/ImageCarouselViewModel/currentImageIndex.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ImageCarouselViewModel","type":"class"}},{"name":"currentImageKey","qualifiedName":"image_carousel_view_model.ImageCarouselViewModel.currentImageKey","href":"features_home_views_image_carousel_image_carousel_view_model/ImageCarouselViewModel/currentImageKey.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ImageCarouselViewModel","type":"class"}},{"name":"currentImageModelListenable","qualifiedName":"image_carousel_view_model.ImageCarouselViewModel.currentImageModelListenable","href":"features_home_views_image_carousel_image_carousel_view_model/ImageCarouselViewModel/currentImageModelListenable.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ImageCarouselViewModel","type":"class"}},{"name":"currentImageName","qualifiedName":"image_carousel_view_model.ImageCarouselViewModel.currentImageName","href":"features_home_views_image_carousel_image_carousel_view_model/ImageCarouselViewModel/currentImageName.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ImageCarouselViewModel","type":"class"}},{"name":"currentImageUrl","qualifiedName":"image_carousel_view_model.ImageCarouselViewModel.currentImageUrl","href":"features_home_views_image_carousel_image_carousel_view_model/ImageCarouselViewModel/currentImageUrl.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ImageCarouselViewModel","type":"class"}},{"name":"dispose","qualifiedName":"image_carousel_view_model.ImageCarouselViewModel.dispose","href":"features_home_views_image_carousel_image_carousel_view_model/ImageCarouselViewModel/dispose.html","type":"method","overriddenDepth":2,"packageName":"mc_gallery","enclosedBy":{"name":"ImageCarouselViewModel","type":"class"}},{"name":"downloadProgressValue","qualifiedName":"image_carousel_view_model.ImageCarouselViewModel.downloadProgressValue","href":"features_home_views_image_carousel_image_carousel_view_model/ImageCarouselViewModel/downloadProgressValue.html","type":"method","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ImageCarouselViewModel","type":"class"}},{"name":"hasNextImage","qualifiedName":"image_carousel_view_model.ImageCarouselViewModel.hasNextImage","href":"features_home_views_image_carousel_image_carousel_view_model/ImageCarouselViewModel/hasNextImage.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ImageCarouselViewModel","type":"class"}},{"name":"hasPreviousImage","qualifiedName":"image_carousel_view_model.ImageCarouselViewModel.hasPreviousImage","href":"features_home_views_image_carousel_image_carousel_view_model/ImageCarouselViewModel/hasPreviousImage.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ImageCarouselViewModel","type":"class"}},{"name":"initialise","qualifiedName":"image_carousel_view_model.ImageCarouselViewModel.initialise","href":"features_home_views_image_carousel_image_carousel_view_model/ImageCarouselViewModel/initialise.html","type":"method","overriddenDepth":1,"packageName":"mc_gallery","enclosedBy":{"name":"ImageCarouselViewModel","type":"class"}},{"name":"locate","qualifiedName":"image_carousel_view_model.ImageCarouselViewModel.locate","href":"features_home_views_image_carousel_image_carousel_view_model/ImageCarouselViewModel/locate.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ImageCarouselViewModel","type":"class"}},{"name":"numberOfImages","qualifiedName":"image_carousel_view_model.ImageCarouselViewModel.numberOfImages","href":"features_home_views_image_carousel_image_carousel_view_model/ImageCarouselViewModel/numberOfImages.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ImageCarouselViewModel","type":"class"}},{"name":"swipedTo","qualifiedName":"image_carousel_view_model.ImageCarouselViewModel.swipedTo","href":"features_home_views_image_carousel_image_carousel_view_model/ImageCarouselViewModel/swipedTo.html","type":"method","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ImageCarouselViewModel","type":"class"}},{"name":"image_model","qualifiedName":"image_model","href":"features_home_data_models_image_model/features_home_data_models_image_model-library.html","type":"library","overriddenDepth":0,"packageName":"mc_gallery"},{"name":"ImageModel","qualifiedName":"image_model.ImageModel","href":"features_home_data_models_image_model/ImageModel-class.html","type":"class","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"image_model","type":"library"}},{"name":"ImageModel","qualifiedName":"image_model.ImageModel.ImageModel","href":"features_home_data_models_image_model/ImageModel/ImageModel.html","type":"constructor","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ImageModel","type":"class"}},{"name":"copyWith","qualifiedName":"image_model.ImageModel.copyWith","href":"features_home_data_models_image_model/ImageModel/copyWith.html","type":"method","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ImageModel","type":"class"}},{"name":"ImageModel.fromDto","qualifiedName":"image_model.ImageModel.fromDto","href":"features_home_data_models_image_model/ImageModel/ImageModel.fromDto.html","type":"constructor","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ImageModel","type":"class"}},{"name":"imageIndex","qualifiedName":"image_model.ImageModel.imageIndex","href":"features_home_data_models_image_model/ImageModel/imageIndex.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ImageModel","type":"class"}},{"name":"imageName","qualifiedName":"image_model.ImageModel.imageName","href":"features_home_data_models_image_model/ImageModel/imageName.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ImageModel","type":"class"}},{"name":"isFavourite","qualifiedName":"image_model.ImageModel.isFavourite","href":"features_home_data_models_image_model/ImageModel/isFavourite.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ImageModel","type":"class"}},{"name":"uri","qualifiedName":"image_model.ImageModel.uri","href":"features_home_data_models_image_model/ImageModel/uri.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ImageModel","type":"class"}},{"name":"image_model_dto","qualifiedName":"image_model_dto","href":"features_home_data_dtos_image_model_dto/features_home_data_dtos_image_model_dto-library.html","type":"library","overriddenDepth":0,"packageName":"mc_gallery"},{"name":"ImageModelDTO","qualifiedName":"image_model_dto.ImageModelDTO","href":"features_home_data_dtos_image_model_dto/ImageModelDTO-class.html","type":"class","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"image_model_dto","type":"library"}},{"name":"ImageModelDTO","qualifiedName":"image_model_dto.ImageModelDTO.ImageModelDTO","href":"features_home_data_dtos_image_model_dto/ImageModelDTO/ImageModelDTO.html","type":"constructor","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ImageModelDTO","type":"class"}},{"name":"ImageModelDTO.fromJson","qualifiedName":"image_model_dto.ImageModelDTO.fromJson","href":"features_home_data_dtos_image_model_dto/ImageModelDTO/ImageModelDTO.fromJson.html","type":"constructor","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ImageModelDTO","type":"class"}},{"name":"imageIndex","qualifiedName":"image_model_dto.ImageModelDTO.imageIndex","href":"features_home_data_dtos_image_model_dto/ImageModelDTO/imageIndex.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ImageModelDTO","type":"class"}},{"name":"imageName","qualifiedName":"image_model_dto.ImageModelDTO.imageName","href":"features_home_data_dtos_image_model_dto/ImageModelDTO/imageName.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ImageModelDTO","type":"class"}},{"name":"toJson","qualifiedName":"image_model_dto.ImageModelDTO.toJson","href":"features_home_data_dtos_image_model_dto/ImageModelDTO/toJson.html","type":"method","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ImageModelDTO","type":"class"}},{"name":"uri","qualifiedName":"image_model_dto.ImageModelDTO.uri","href":"features_home_data_dtos_image_model_dto/ImageModelDTO/uri.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ImageModelDTO","type":"class"}},{"name":"images_api","qualifiedName":"images_api","href":"features_home_abstracts_images_api/features_home_abstracts_images_api-library.html","type":"library","overriddenDepth":0,"packageName":"mc_gallery"},{"name":"ImagesApi","qualifiedName":"images_api.ImagesApi","href":"features_home_abstracts_images_api/ImagesApi-class.html","type":"class","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"images_api","type":"library"}},{"name":"ImagesApi","qualifiedName":"images_api.ImagesApi.ImagesApi","href":"features_home_abstracts_images_api/ImagesApi/ImagesApi.html","type":"constructor","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ImagesApi","type":"class"}},{"name":"fetchImageUri","qualifiedName":"images_api.ImagesApi.fetchImageUri","href":"features_home_abstracts_images_api/ImagesApi/fetchImageUri.html","type":"method","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ImagesApi","type":"class"}},{"name":"searchImages","qualifiedName":"images_api.ImagesApi.searchImages","href":"features_home_abstracts_images_api/ImagesApi/searchImages.html","type":"method","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ImagesApi","type":"class"}},{"name":"images_service","qualifiedName":"images_service","href":"features_home_services_images_service/features_home_services_images_service-library.html","type":"library","overriddenDepth":0,"packageName":"mc_gallery"},{"name":"ImagesService","qualifiedName":"images_service.ImagesService","href":"features_home_services_images_service/ImagesService-class.html","type":"class","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"images_service","type":"library"}},{"name":"ImagesService","qualifiedName":"images_service.ImagesService.ImagesService","href":"features_home_services_images_service/ImagesService/ImagesService.html","type":"constructor","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ImagesService","type":"class"}},{"name":"firstAvailableImageIndex","qualifiedName":"images_service.ImagesService.firstAvailableImageIndex","href":"features_home_services_images_service/ImagesService/firstAvailableImageIndex.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ImagesService","type":"class"}},{"name":"imageModelAt","qualifiedName":"images_service.ImagesService.imageModelAt","href":"features_home_services_images_service/ImagesService/imageModelAt.html","type":"method","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ImagesService","type":"class"}},{"name":"imageModels","qualifiedName":"images_service.ImagesService.imageModels","href":"features_home_services_images_service/ImagesService/imageModels.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ImagesService","type":"class"}},{"name":"initAwaiter","qualifiedName":"images_service.ImagesService.initAwaiter","href":"features_home_services_images_service/ImagesService/initAwaiter.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ImagesService","type":"class"}},{"name":"lastAvailableImageIndex","qualifiedName":"images_service.ImagesService.lastAvailableImageIndex","href":"features_home_services_images_service/ImagesService/lastAvailableImageIndex.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ImagesService","type":"class"}},{"name":"lastQueryIsCompleted","qualifiedName":"images_service.ImagesService.lastQueryIsCompleted","href":"features_home_services_images_service/ImagesService/lastQueryIsCompleted.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ImagesService","type":"class"}},{"name":"locate","qualifiedName":"images_service.ImagesService.locate","href":"features_home_services_images_service/ImagesService/locate.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ImagesService","type":"class"}},{"name":"numberOfImages","qualifiedName":"images_service.ImagesService.numberOfImages","href":"features_home_services_images_service/ImagesService/numberOfImages.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ImagesService","type":"class"}},{"name":"searchImages","qualifiedName":"images_service.ImagesService.searchImages","href":"features_home_services_images_service/ImagesService/searchImages.html","type":"method","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ImagesService","type":"class"}},{"name":"updateImageFavouriteStatus","qualifiedName":"images_service.ImagesService.updateImageFavouriteStatus","href":"features_home_services_images_service/ImagesService/updateImageFavouriteStatus.html","type":"method","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ImagesService","type":"class"}},{"name":"iterable_extensions","qualifiedName":"iterable_extensions","href":"features_core_data_extensions_iterable_extensions/features_core_data_extensions_iterable_extensions-library.html","type":"library","overriddenDepth":0,"packageName":"mc_gallery"},{"name":"IterableExtensions","qualifiedName":"iterable_extensions.IterableExtensions","href":"features_core_data_extensions_iterable_extensions/IterableExtensions.html","type":"extension","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"iterable_extensions","type":"library"}},{"name":"deepCopy","qualifiedName":"iterable_extensions.IterableExtensions.deepCopy","href":"features_core_data_extensions_iterable_extensions/IterableExtensions/deepCopy.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"IterableExtensions","type":"extension"}},{"name":"l10n","qualifiedName":"l10n","href":"l10n_generated_l10n/l10n_generated_l10n-library.html","type":"library","overriddenDepth":0,"packageName":"mc_gallery"},{"name":"AppLocalizationDelegate","qualifiedName":"l10n.AppLocalizationDelegate","href":"l10n_generated_l10n/AppLocalizationDelegate-class.html","type":"class","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"l10n","type":"library"}},{"name":"AppLocalizationDelegate","qualifiedName":"l10n.AppLocalizationDelegate.AppLocalizationDelegate","href":"l10n_generated_l10n/AppLocalizationDelegate/AppLocalizationDelegate.html","type":"constructor","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"AppLocalizationDelegate","type":"class"}},{"name":"isSupported","qualifiedName":"l10n.AppLocalizationDelegate.isSupported","href":"l10n_generated_l10n/AppLocalizationDelegate/isSupported.html","type":"method","overriddenDepth":1,"packageName":"mc_gallery","enclosedBy":{"name":"AppLocalizationDelegate","type":"class"}},{"name":"load","qualifiedName":"l10n.AppLocalizationDelegate.load","href":"l10n_generated_l10n/AppLocalizationDelegate/load.html","type":"method","overriddenDepth":1,"packageName":"mc_gallery","enclosedBy":{"name":"AppLocalizationDelegate","type":"class"}},{"name":"shouldReload","qualifiedName":"l10n.AppLocalizationDelegate.shouldReload","href":"l10n_generated_l10n/AppLocalizationDelegate/shouldReload.html","type":"method","overriddenDepth":1,"packageName":"mc_gallery","enclosedBy":{"name":"AppLocalizationDelegate","type":"class"}},{"name":"supportedLocales","qualifiedName":"l10n.AppLocalizationDelegate.supportedLocales","href":"l10n_generated_l10n/AppLocalizationDelegate/supportedLocales.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"AppLocalizationDelegate","type":"class"}},{"name":"Strings","qualifiedName":"l10n.Strings","href":"l10n_generated_l10n/Strings-class.html","type":"class","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"l10n","type":"library"}},{"name":"Strings","qualifiedName":"l10n.Strings.Strings","href":"l10n_generated_l10n/Strings/Strings.html","type":"constructor","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"Strings","type":"class"}},{"name":"appTitle","qualifiedName":"l10n.Strings.appTitle","href":"l10n_generated_l10n/Strings/appTitle.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"Strings","type":"class"}},{"name":"current","qualifiedName":"l10n.Strings.current","href":"l10n_generated_l10n/Strings/current.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"Strings","type":"class"}},{"name":"delegate","qualifiedName":"l10n.Strings.delegate","href":"l10n_generated_l10n/Strings/delegate-constant.html","type":"constant","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"Strings","type":"class"}},{"name":"errorPageMessage","qualifiedName":"l10n.Strings.errorPageMessage","href":"l10n_generated_l10n/Strings/errorPageMessage.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"Strings","type":"class"}},{"name":"gallery","qualifiedName":"l10n.Strings.gallery","href":"l10n_generated_l10n/Strings/gallery.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"Strings","type":"class"}},{"name":"imageCarousel","qualifiedName":"l10n.Strings.imageCarousel","href":"l10n_generated_l10n/Strings/imageCarousel.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"Strings","type":"class"}},{"name":"imageDetails","qualifiedName":"l10n.Strings.imageDetails","href":"l10n_generated_l10n/Strings/imageDetails.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"Strings","type":"class"}},{"name":"imageNameFetch","qualifiedName":"l10n.Strings.imageNameFetch","href":"l10n_generated_l10n/Strings/imageNameFetch.html","type":"method","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"Strings","type":"class"}},{"name":"imageNameSearch","qualifiedName":"l10n.Strings.imageNameSearch","href":"l10n_generated_l10n/Strings/imageNameSearch.html","type":"method","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"Strings","type":"class"}},{"name":"load","qualifiedName":"l10n.Strings.load","href":"l10n_generated_l10n/Strings/load.html","type":"method","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"Strings","type":"class"}},{"name":"local","qualifiedName":"l10n.Strings.local","href":"l10n_generated_l10n/Strings/local.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"Strings","type":"class"}},{"name":"maybeOf","qualifiedName":"l10n.Strings.maybeOf","href":"l10n_generated_l10n/Strings/maybeOf.html","type":"method","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"Strings","type":"class"}},{"name":"noInternetMessage","qualifiedName":"l10n.Strings.noInternetMessage","href":"l10n_generated_l10n/Strings/noInternetMessage.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"Strings","type":"class"}},{"name":"of","qualifiedName":"l10n.Strings.of","href":"l10n_generated_l10n/Strings/of.html","type":"method","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"Strings","type":"class"}},{"name":"searchForImage","qualifiedName":"l10n.Strings.searchForImage","href":"l10n_generated_l10n/Strings/searchForImage.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"Strings","type":"class"}},{"name":"somethingWentWrong","qualifiedName":"l10n.Strings.somethingWentWrong","href":"l10n_generated_l10n/Strings/somethingWentWrong.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"Strings","type":"class"}},{"name":"startLoadingPrompt","qualifiedName":"l10n.Strings.startLoadingPrompt","href":"l10n_generated_l10n/Strings/startLoadingPrompt.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"Strings","type":"class"}},{"name":"web","qualifiedName":"l10n.Strings.web","href":"l10n_generated_l10n/Strings/web.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"Strings","type":"class"}},{"name":"list_extensions","qualifiedName":"list_extensions","href":"features_core_data_extensions_list_extensions/features_core_data_extensions_list_extensions-library.html","type":"library","overriddenDepth":0,"packageName":"mc_gallery"},{"name":"ListExtensions","qualifiedName":"list_extensions.ListExtensions","href":"features_core_data_extensions_list_extensions/ListExtensions.html","type":"extension","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"list_extensions","type":"library"}},{"name":"deepCopy","qualifiedName":"list_extensions.ListExtensions.deepCopy","href":"features_core_data_extensions_list_extensions/ListExtensions/deepCopy.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ListExtensions","type":"extension"}},{"name":"local_storage_service","qualifiedName":"local_storage_service","href":"features_core_services_local_storage_service/features_core_services_local_storage_service-library.html","type":"library","overriddenDepth":0,"packageName":"mc_gallery"},{"name":"LocalStorageService","qualifiedName":"local_storage_service.LocalStorageService","href":"features_core_services_local_storage_service/LocalStorageService-class.html","type":"class","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"local_storage_service","type":"library"}},{"name":"LocalStorageService","qualifiedName":"local_storage_service.LocalStorageService.LocalStorageService","href":"features_core_services_local_storage_service/LocalStorageService/LocalStorageService.html","type":"constructor","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"LocalStorageService","type":"class"}},{"name":"initNewFavourites","qualifiedName":"local_storage_service.LocalStorageService.initNewFavourites","href":"features_core_services_local_storage_service/LocalStorageService/initNewFavourites.html","type":"method","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"LocalStorageService","type":"class"}},{"name":"locate","qualifiedName":"local_storage_service.LocalStorageService.locate","href":"features_core_services_local_storage_service/LocalStorageService/locate.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"LocalStorageService","type":"class"}},{"name":"resetFavourites","qualifiedName":"local_storage_service.LocalStorageService.resetFavourites","href":"features_core_services_local_storage_service/LocalStorageService/resetFavourites.html","type":"method","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"LocalStorageService","type":"class"}},{"name":"storedFavouritesStates","qualifiedName":"local_storage_service.LocalStorageService.storedFavouritesStates","href":"features_core_services_local_storage_service/LocalStorageService/storedFavouritesStates.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"LocalStorageService","type":"class"}},{"name":"updateFavourite","qualifiedName":"local_storage_service.LocalStorageService.updateFavourite","href":"features_core_services_local_storage_service/LocalStorageService/updateFavourite.html","type":"method","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"LocalStorageService","type":"class"}},{"name":"locator","qualifiedName":"locator","href":"locator/locator-library.html","type":"library","overriddenDepth":0,"packageName":"mc_gallery"},{"name":"Locator","qualifiedName":"locator.Locator","href":"locator/Locator-class.html","type":"class","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"locator","type":"library"}},{"name":"Locator","qualifiedName":"locator.Locator.Locator","href":"locator/Locator/Locator.html","type":"constructor","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"Locator","type":"class"}},{"name":"instance","qualifiedName":"locator.Locator.instance","href":"locator/Locator/instance.html","type":"method","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"Locator","type":"class"}},{"name":"locate","qualifiedName":"locator.Locator.locate","href":"locator/Locator/locate.html","type":"method","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"Locator","type":"class"}},{"name":"setup","qualifiedName":"locator.Locator.setup","href":"locator/Locator/setup.html","type":"method","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"Locator","type":"class"}},{"name":"locate","qualifiedName":"locator.locate","href":"locator/locate.html","type":"top-level property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"locator","type":"library"}},{"name":"logging_service","qualifiedName":"logging_service","href":"features_core_services_logging_service/features_core_services_logging_service-library.html","type":"library","overriddenDepth":0,"packageName":"mc_gallery"},{"name":"LoggingService","qualifiedName":"logging_service.LoggingService","href":"features_core_services_logging_service/LoggingService-class.html","type":"class","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"logging_service","type":"library"}},{"name":"LoggingService","qualifiedName":"logging_service.LoggingService.LoggingService","href":"features_core_services_logging_service/LoggingService/LoggingService.html","type":"constructor","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"LoggingService","type":"class"}},{"name":"addLoggingInterceptor","qualifiedName":"logging_service.LoggingService.addLoggingInterceptor","href":"features_core_services_logging_service/LoggingService/addLoggingInterceptor.html","type":"method","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"LoggingService","type":"class"}},{"name":"error","qualifiedName":"logging_service.LoggingService.error","href":"features_core_services_logging_service/LoggingService/error.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"LoggingService","type":"class"}},{"name":"fine","qualifiedName":"logging_service.LoggingService.fine","href":"features_core_services_logging_service/LoggingService/fine.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"LoggingService","type":"class"}},{"name":"good","qualifiedName":"logging_service.LoggingService.good","href":"features_core_services_logging_service/LoggingService/good.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"LoggingService","type":"class"}},{"name":"handle","qualifiedName":"logging_service.LoggingService.handle","href":"features_core_services_logging_service/LoggingService/handle.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"LoggingService","type":"class"}},{"name":"handleError","qualifiedName":"logging_service.LoggingService.handleError","href":"features_core_services_logging_service/LoggingService/handleError.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"LoggingService","type":"class"}},{"name":"handleException","qualifiedName":"logging_service.LoggingService.handleException","href":"features_core_services_logging_service/LoggingService/handleException.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"LoggingService","type":"class"}},{"name":"info","qualifiedName":"logging_service.LoggingService.info","href":"features_core_services_logging_service/LoggingService/info.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"LoggingService","type":"class"}},{"name":"locate","qualifiedName":"logging_service.LoggingService.locate","href":"features_core_services_logging_service/LoggingService/locate.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"LoggingService","type":"class"}},{"name":"successfulDispose","qualifiedName":"logging_service.LoggingService.successfulDispose","href":"features_core_services_logging_service/LoggingService/successfulDispose.html","type":"method","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"LoggingService","type":"class"}},{"name":"successfulInit","qualifiedName":"logging_service.LoggingService.successfulInit","href":"features_core_services_logging_service/LoggingService/successfulInit.html","type":"method","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"LoggingService","type":"class"}},{"name":"warning","qualifiedName":"logging_service.LoggingService.warning","href":"features_core_services_logging_service/LoggingService/warning.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"LoggingService","type":"class"}},{"name":"main","qualifiedName":"main","href":"main/main-library.html","type":"library","overriddenDepth":0,"packageName":"mc_gallery"},{"name":"main","qualifiedName":"main.main","href":"main/main.html","type":"function","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"main","type":"library"}},{"name":"map_extensions","qualifiedName":"map_extensions","href":"features_core_data_extensions_map_extensions/features_core_data_extensions_map_extensions-library.html","type":"library","overriddenDepth":0,"packageName":"mc_gallery"},{"name":"LinkedHashMapExtensions","qualifiedName":"map_extensions.LinkedHashMapExtensions","href":"features_core_data_extensions_map_extensions/LinkedHashMapExtensions.html","type":"extension","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"map_extensions","type":"library"}},{"name":"updateValueAt","qualifiedName":"map_extensions.LinkedHashMapExtensions.updateValueAt","href":"features_core_data_extensions_map_extensions/LinkedHashMapExtensions/updateValueAt.html","type":"method","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"LinkedHashMapExtensions","type":"extension"}},{"name":"MapExtensions","qualifiedName":"map_extensions.MapExtensions","href":"features_core_data_extensions_map_extensions/MapExtensions.html","type":"extension","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"map_extensions","type":"library"}},{"name":"deepCopy","qualifiedName":"map_extensions.MapExtensions.deepCopy","href":"features_core_data_extensions_map_extensions/MapExtensions/deepCopy.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"MapExtensions","type":"extension"}},{"name":"valuesByKeys","qualifiedName":"map_extensions.MapExtensions.valuesByKeys","href":"features_core_data_extensions_map_extensions/MapExtensions/valuesByKeys.html","type":"method","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"MapExtensions","type":"extension"}},{"name":"mcg_scaffold","qualifiedName":"mcg_scaffold","href":"features_core_widgets_mcg_scaffold/features_core_widgets_mcg_scaffold-library.html","type":"library","overriddenDepth":0,"packageName":"mc_gallery"},{"name":"McgScaffold","qualifiedName":"mcg_scaffold.McgScaffold","href":"features_core_widgets_mcg_scaffold/McgScaffold-class.html","type":"class","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"mcg_scaffold","type":"library"}},{"name":"McgScaffold","qualifiedName":"mcg_scaffold.McgScaffold.McgScaffold","href":"features_core_widgets_mcg_scaffold/McgScaffold/McgScaffold.html","type":"constructor","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"McgScaffold","type":"class"}},{"name":"appBar","qualifiedName":"mcg_scaffold.McgScaffold.appBar","href":"features_core_widgets_mcg_scaffold/McgScaffold/appBar.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"McgScaffold","type":"class"}},{"name":"body","qualifiedName":"mcg_scaffold.McgScaffold.body","href":"features_core_widgets_mcg_scaffold/McgScaffold/body.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"McgScaffold","type":"class"}},{"name":"bodyBuilderWaiter","qualifiedName":"mcg_scaffold.McgScaffold.bodyBuilderWaiter","href":"features_core_widgets_mcg_scaffold/McgScaffold/bodyBuilderWaiter.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"McgScaffold","type":"class"}},{"name":"build","qualifiedName":"mcg_scaffold.McgScaffold.build","href":"features_core_widgets_mcg_scaffold/McgScaffold/build.html","type":"method","overriddenDepth":1,"packageName":"mc_gallery","enclosedBy":{"name":"McgScaffold","type":"class"}},{"name":"forceInternetCheck","qualifiedName":"mcg_scaffold.McgScaffold.forceInternetCheck","href":"features_core_widgets_mcg_scaffold/McgScaffold/forceInternetCheck.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"McgScaffold","type":"class"}},{"name":"waitingWidget","qualifiedName":"mcg_scaffold.McgScaffold.waitingWidget","href":"features_core_widgets_mcg_scaffold/McgScaffold/waitingWidget.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"McgScaffold","type":"class"}},{"name":"messages_all","qualifiedName":"messages_all","href":"l10n_generated_intl_messages_all/l10n_generated_intl_messages_all-library.html","type":"library","overriddenDepth":0,"packageName":"mc_gallery"},{"name":"LibraryLoader","qualifiedName":"messages_all.LibraryLoader","href":"l10n_generated_intl_messages_all/LibraryLoader.html","type":"typedef","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"messages_all","type":"library"}},{"name":"initializeMessages","qualifiedName":"messages_all.initializeMessages","href":"l10n_generated_intl_messages_all/initializeMessages.html","type":"function","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"messages_all","type":"library"}},{"name":"messages_en","qualifiedName":"messages_en","href":"l10n_generated_intl_messages_en/l10n_generated_intl_messages_en-library.html","type":"library","overriddenDepth":0,"packageName":"mc_gallery"},{"name":"MessageIfAbsent","qualifiedName":"messages_en.MessageIfAbsent","href":"l10n_generated_intl_messages_en/MessageIfAbsent.html","type":"typedef","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"messages_en","type":"library"}},{"name":"MessageLookup","qualifiedName":"messages_en.MessageLookup","href":"l10n_generated_intl_messages_en/MessageLookup-class.html","type":"class","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"messages_en","type":"library"}},{"name":"MessageLookup","qualifiedName":"messages_en.MessageLookup.MessageLookup","href":"l10n_generated_intl_messages_en/MessageLookup/MessageLookup.html","type":"constructor","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"MessageLookup","type":"class"}},{"name":"localeName","qualifiedName":"messages_en.MessageLookup.localeName","href":"l10n_generated_intl_messages_en/MessageLookup/localeName.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"MessageLookup","type":"class"}},{"name":"m0","qualifiedName":"messages_en.MessageLookup.m0","href":"l10n_generated_intl_messages_en/MessageLookup/m0.html","type":"method","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"MessageLookup","type":"class"}},{"name":"m1","qualifiedName":"messages_en.MessageLookup.m1","href":"l10n_generated_intl_messages_en/MessageLookup/m1.html","type":"method","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"MessageLookup","type":"class"}},{"name":"messages","qualifiedName":"messages_en.MessageLookup.messages","href":"l10n_generated_intl_messages_en/MessageLookup/messages.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"MessageLookup","type":"class"}},{"name":"messages","qualifiedName":"messages_en.messages","href":"l10n_generated_intl_messages_en/messages.html","type":"top-level property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"messages_en","type":"library"}},{"name":"multi_value_listenable_builder","qualifiedName":"multi_value_listenable_builder","href":"features_core_widgets_state_multi_value_listenable_builder/features_core_widgets_state_multi_value_listenable_builder-library.html","type":"library","overriddenDepth":0,"packageName":"mc_gallery"},{"name":"MultiValueListenableBuilder","qualifiedName":"multi_value_listenable_builder.MultiValueListenableBuilder","href":"features_core_widgets_state_multi_value_listenable_builder/MultiValueListenableBuilder-class.html","type":"class","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"multi_value_listenable_builder","type":"library"}},{"name":"MultiValueListenableBuilder","qualifiedName":"multi_value_listenable_builder.MultiValueListenableBuilder.MultiValueListenableBuilder","href":"features_core_widgets_state_multi_value_listenable_builder/MultiValueListenableBuilder/MultiValueListenableBuilder.html","type":"constructor","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"MultiValueListenableBuilder","type":"class"}},{"name":"build","qualifiedName":"multi_value_listenable_builder.MultiValueListenableBuilder.build","href":"features_core_widgets_state_multi_value_listenable_builder/MultiValueListenableBuilder/build.html","type":"method","overriddenDepth":1,"packageName":"mc_gallery","enclosedBy":{"name":"MultiValueListenableBuilder","type":"class"}},{"name":"builder","qualifiedName":"multi_value_listenable_builder.MultiValueListenableBuilder.builder","href":"features_core_widgets_state_multi_value_listenable_builder/MultiValueListenableBuilder/builder.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"MultiValueListenableBuilder","type":"class"}},{"name":"child","qualifiedName":"multi_value_listenable_builder.MultiValueListenableBuilder.child","href":"features_core_widgets_state_multi_value_listenable_builder/MultiValueListenableBuilder/child.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"MultiValueListenableBuilder","type":"class"}},{"name":"valueListenables","qualifiedName":"multi_value_listenable_builder.MultiValueListenableBuilder.valueListenables","href":"features_core_widgets_state_multi_value_listenable_builder/MultiValueListenableBuilder/valueListenables.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"MultiValueListenableBuilder","type":"class"}},{"name":"mutex","qualifiedName":"mutex","href":"features_core_utils_mutex/features_core_utils_mutex-library.html","type":"library","overriddenDepth":0,"packageName":"mc_gallery"},{"name":"Mutex","qualifiedName":"mutex.Mutex","href":"features_core_utils_mutex/Mutex-class.html","type":"class","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"mutex","type":"library"}},{"name":"Mutex","qualifiedName":"mutex.Mutex.Mutex","href":"features_core_utils_mutex/Mutex/Mutex.html","type":"constructor","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"Mutex","type":"class"}},{"name":"lastOperationCompletionAwaiter","qualifiedName":"mutex.Mutex.lastOperationCompletionAwaiter","href":"features_core_utils_mutex/Mutex/lastOperationCompletionAwaiter.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"Mutex","type":"class"}},{"name":"lockAndRun","qualifiedName":"mutex.Mutex.lockAndRun","href":"features_core_utils_mutex/Mutex/lockAndRun.html","type":"method","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"Mutex","type":"class"}},{"name":"navigation_service","qualifiedName":"navigation_service","href":"features_core_services_navigation_service/features_core_services_navigation_service-library.html","type":"library","overriddenDepth":0,"packageName":"mc_gallery"},{"name":"NavigationService","qualifiedName":"navigation_service.NavigationService","href":"features_core_services_navigation_service/NavigationService-class.html","type":"class","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"navigation_service","type":"library"}},{"name":"NavigationService","qualifiedName":"navigation_service.NavigationService.NavigationService","href":"features_core_services_navigation_service/NavigationService/NavigationService.html","type":"constructor","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"NavigationService","type":"class"}},{"name":"locate","qualifiedName":"navigation_service.NavigationService.locate","href":"features_core_services_navigation_service/NavigationService/locate.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"NavigationService","type":"class"}},{"name":"pushImageCarouselView","qualifiedName":"navigation_service.NavigationService.pushImageCarouselView","href":"features_core_services_navigation_service/NavigationService/pushImageCarouselView.html","type":"method","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"NavigationService","type":"class"}},{"name":"object_extensions","qualifiedName":"object_extensions","href":"features_core_data_extensions_object_extensions/features_core_data_extensions_object_extensions-library.html","type":"library","overriddenDepth":0,"packageName":"mc_gallery"},{"name":"AsCallback","qualifiedName":"object_extensions.AsCallback","href":"features_core_data_extensions_object_extensions/AsCallback.html","type":"extension","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"object_extensions","type":"library"}},{"name":"asCallback","qualifiedName":"object_extensions.AsCallback.asCallback","href":"features_core_data_extensions_object_extensions/AsCallback/asCallback.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"AsCallback","type":"extension"}},{"name":"ObjectExtensions","qualifiedName":"object_extensions.ObjectExtensions","href":"features_core_data_extensions_object_extensions/ObjectExtensions.html","type":"extension","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"object_extensions","type":"library"}},{"name":"asNullableType","qualifiedName":"object_extensions.ObjectExtensions.asNullableType","href":"features_core_data_extensions_object_extensions/ObjectExtensions/asNullableType.html","type":"method","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ObjectExtensions","type":"extension"}},{"name":"asType","qualifiedName":"object_extensions.ObjectExtensions.asType","href":"features_core_data_extensions_object_extensions/ObjectExtensions/asType.html","type":"method","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ObjectExtensions","type":"extension"}},{"name":"overlay_service","qualifiedName":"overlay_service","href":"features_core_services_overlay_service/features_core_services_overlay_service-library.html","type":"library","overriddenDepth":0,"packageName":"mc_gallery"},{"name":"OverlayService","qualifiedName":"overlay_service.OverlayService","href":"features_core_services_overlay_service/OverlayService-class.html","type":"class","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"overlay_service","type":"library"}},{"name":"OverlayService","qualifiedName":"overlay_service.OverlayService.OverlayService","href":"features_core_services_overlay_service/OverlayService/OverlayService.html","type":"constructor","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"OverlayService","type":"class"}},{"name":"dispose","qualifiedName":"overlay_service.OverlayService.dispose","href":"features_core_services_overlay_service/OverlayService/dispose.html","type":"method","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"OverlayService","type":"class"}},{"name":"insertOverlayEntry","qualifiedName":"overlay_service.OverlayService.insertOverlayEntry","href":"features_core_services_overlay_service/OverlayService/insertOverlayEntry.html","type":"method","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"OverlayService","type":"class"}},{"name":"locate","qualifiedName":"overlay_service.OverlayService.locate","href":"features_core_services_overlay_service/OverlayService/locate.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"OverlayService","type":"class"}},{"name":"removeOverlayEntry","qualifiedName":"overlay_service.OverlayService.removeOverlayEntry","href":"features_core_services_overlay_service/OverlayService/removeOverlayEntry.html","type":"method","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"OverlayService","type":"class"}},{"name":"random_extensions","qualifiedName":"random_extensions","href":"features_core_data_extensions_random_extensions/features_core_data_extensions_random_extensions-library.html","type":"library","overriddenDepth":0,"packageName":"mc_gallery"},{"name":"RandomExtensions","qualifiedName":"random_extensions.RandomExtensions","href":"features_core_data_extensions_random_extensions/RandomExtensions.html","type":"extension","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"random_extensions","type":"library"}},{"name":"nextIntInRange","qualifiedName":"random_extensions.RandomExtensions.nextIntInRange","href":"features_core_data_extensions_random_extensions/RandomExtensions/nextIntInRange.html","type":"method","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"RandomExtensions","type":"extension"}},{"name":"routes","qualifiedName":"routes","href":"features_core_abstracts_router_routes/features_core_abstracts_router_routes-library.html","type":"library","overriddenDepth":0,"packageName":"mc_gallery"},{"name":"Routes","qualifiedName":"routes.Routes","href":"features_core_abstracts_router_routes/Routes.html","type":"enum","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"routes","type":"library"}},{"name":"Routes","qualifiedName":"routes.Routes.Routes","href":"features_core_abstracts_router_routes/Routes/Routes.html","type":"constructor","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"Routes","type":"enum"}},{"name":"routeName","qualifiedName":"routes.Routes.routeName","href":"features_core_abstracts_router_routes/Routes/routeName.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"Routes","type":"enum"}},{"name":"routePath","qualifiedName":"routes.Routes.routePath","href":"features_core_abstracts_router_routes/Routes/routePath.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"Routes","type":"enum"}},{"name":"values","qualifiedName":"routes.Routes.values","href":"features_core_abstracts_router_routes/Routes/values-constant.html","type":"constant","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"Routes","type":"enum"}},{"name":"RoutesInfo","qualifiedName":"routes.RoutesInfo","href":"features_core_abstracts_router_routes/RoutesInfo-class.html","type":"class","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"routes","type":"library"}},{"name":"RoutesInfo","qualifiedName":"routes.RoutesInfo.RoutesInfo","href":"features_core_abstracts_router_routes/RoutesInfo/RoutesInfo.html","type":"constructor","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"RoutesInfo","type":"class"}},{"name":"routeName","qualifiedName":"routes.RoutesInfo.routeName","href":"features_core_abstracts_router_routes/RoutesInfo/routeName.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"RoutesInfo","type":"class"}},{"name":"routePath","qualifiedName":"routes.RoutesInfo.routePath","href":"features_core_abstracts_router_routes/RoutesInfo/routePath.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"RoutesInfo","type":"class"}},{"name":"search_option","qualifiedName":"search_option","href":"features_home_data_enums_search_option/features_home_data_enums_search_option-library.html","type":"library","overriddenDepth":0,"packageName":"mc_gallery"},{"name":"SearchOption","qualifiedName":"search_option.SearchOption","href":"features_home_data_enums_search_option/SearchOption.html","type":"enum","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"search_option","type":"library"}},{"name":"SearchOption","qualifiedName":"search_option.SearchOption.SearchOption","href":"features_home_data_enums_search_option/SearchOption/SearchOption.html","type":"constructor","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"SearchOption","type":"enum"}},{"name":"name","qualifiedName":"search_option.SearchOption.name","href":"features_home_data_enums_search_option/SearchOption/name.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"SearchOption","type":"enum"}},{"name":"values","qualifiedName":"search_option.SearchOption.values","href":"features_home_data_enums_search_option/SearchOption/values-constant.html","type":"constant","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"SearchOption","type":"enum"}},{"name":"stream_extensions","qualifiedName":"stream_extensions","href":"features_core_data_extensions_stream_extensions/features_core_data_extensions_stream_extensions-library.html","type":"library","overriddenDepth":0,"packageName":"mc_gallery"},{"name":"StreamExtensions","qualifiedName":"stream_extensions.StreamExtensions","href":"features_core_data_extensions_stream_extensions/StreamExtensions.html","type":"extension","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"stream_extensions","type":"library"}},{"name":"toListenable","qualifiedName":"stream_extensions.StreamExtensions.toListenable","href":"features_core_data_extensions_stream_extensions/StreamExtensions/toListenable.html","type":"method","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"StreamExtensions","type":"extension"}},{"name":"toNullableValueNotifier","qualifiedName":"stream_extensions.StreamExtensions.toNullableValueNotifier","href":"features_core_data_extensions_stream_extensions/StreamExtensions/toNullableValueNotifier.html","type":"method","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"StreamExtensions","type":"extension"}},{"name":"toValueNotifier","qualifiedName":"stream_extensions.StreamExtensions.toValueNotifier","href":"features_core_data_extensions_stream_extensions/StreamExtensions/toValueNotifier.html","type":"method","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"StreamExtensions","type":"extension"}},{"name":"string_extensions","qualifiedName":"string_extensions","href":"features_core_data_extensions_string_extensions/features_core_data_extensions_string_extensions-library.html","type":"library","overriddenDepth":0,"packageName":"mc_gallery"},{"name":"StringExtensions","qualifiedName":"string_extensions.StringExtensions","href":"features_core_data_extensions_string_extensions/StringExtensions.html","type":"extension","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"string_extensions","type":"library"}},{"name":"containsAllCharacters","qualifiedName":"string_extensions.StringExtensions.containsAllCharacters","href":"features_core_data_extensions_string_extensions/StringExtensions/containsAllCharacters.html","type":"method","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"StringExtensions","type":"extension"}},{"name":"unsplash_images_api","qualifiedName":"unsplash_images_api","href":"features_home_api_unsplash_images_api/features_home_api_unsplash_images_api-library.html","type":"library","overriddenDepth":0,"packageName":"mc_gallery"},{"name":"UnsplashImagesApi","qualifiedName":"unsplash_images_api.UnsplashImagesApi","href":"features_home_api_unsplash_images_api/UnsplashImagesApi-class.html","type":"class","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"unsplash_images_api","type":"library"}},{"name":"UnsplashImagesApi","qualifiedName":"unsplash_images_api.UnsplashImagesApi.UnsplashImagesApi","href":"features_home_api_unsplash_images_api/UnsplashImagesApi/UnsplashImagesApi.html","type":"constructor","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"UnsplashImagesApi","type":"class"}},{"name":"fetchImageUri","qualifiedName":"unsplash_images_api.UnsplashImagesApi.fetchImageUri","href":"features_home_api_unsplash_images_api/UnsplashImagesApi/fetchImageUri.html","type":"method","overriddenDepth":1,"packageName":"mc_gallery","enclosedBy":{"name":"UnsplashImagesApi","type":"class"}},{"name":"locate","qualifiedName":"unsplash_images_api.UnsplashImagesApi.locate","href":"features_home_api_unsplash_images_api/UnsplashImagesApi/locate.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"UnsplashImagesApi","type":"class"}},{"name":"random","qualifiedName":"unsplash_images_api.UnsplashImagesApi.random","href":"features_home_api_unsplash_images_api/UnsplashImagesApi/random.html","type":"property","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"UnsplashImagesApi","type":"class"}},{"name":"searchImages","qualifiedName":"unsplash_images_api.UnsplashImagesApi.searchImages","href":"features_home_api_unsplash_images_api/UnsplashImagesApi/searchImages.html","type":"method","overriddenDepth":1,"packageName":"mc_gallery","enclosedBy":{"name":"UnsplashImagesApi","type":"class"}},{"name":"value_notifier_extensions","qualifiedName":"value_notifier_extensions","href":"features_core_data_extensions_value_notifier_extensions/features_core_data_extensions_value_notifier_extensions-library.html","type":"library","overriddenDepth":0,"packageName":"mc_gallery"},{"name":"ValueNotifierBoolExtensions","qualifiedName":"value_notifier_extensions.ValueNotifierBoolExtensions","href":"features_core_data_extensions_value_notifier_extensions/ValueNotifierBoolExtensions.html","type":"extension","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"value_notifier_extensions","type":"library"}},{"name":"flipValue","qualifiedName":"value_notifier_extensions.ValueNotifierBoolExtensions.flipValue","href":"features_core_data_extensions_value_notifier_extensions/ValueNotifierBoolExtensions/flipValue.html","type":"method","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ValueNotifierBoolExtensions","type":"extension"}},{"name":"view_model_builder","qualifiedName":"view_model_builder","href":"features_core_widgets_state_view_model_builder/features_core_widgets_state_view_model_builder-library.html","type":"library","overriddenDepth":0,"packageName":"mc_gallery"},{"name":"ViewModelBuilder","qualifiedName":"view_model_builder.ViewModelBuilder","href":"features_core_widgets_state_view_model_builder/ViewModelBuilder-class.html","type":"class","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"view_model_builder","type":"library"}},{"name":"ViewModelBuilder","qualifiedName":"view_model_builder.ViewModelBuilder.ViewModelBuilder","href":"features_core_widgets_state_view_model_builder/ViewModelBuilder/ViewModelBuilder.html","type":"constructor","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ViewModelBuilder","type":"class"}},{"name":"createState","qualifiedName":"view_model_builder.ViewModelBuilder.createState","href":"features_core_widgets_state_view_model_builder/ViewModelBuilder/createState.html","type":"method","overriddenDepth":1,"packageName":"mc_gallery","enclosedBy":{"name":"ViewModelBuilder","type":"class"}},{"name":"view_model_state","qualifiedName":"view_model_state","href":"features_core_data_enums_view_model_state/features_core_data_enums_view_model_state-library.html","type":"library","overriddenDepth":0,"packageName":"mc_gallery"},{"name":"ViewModelState","qualifiedName":"view_model_state.ViewModelState","href":"features_core_data_enums_view_model_state/ViewModelState.html","type":"enum","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"view_model_state","type":"library"}},{"name":"ViewModelState","qualifiedName":"view_model_state.ViewModelState.ViewModelState","href":"features_core_data_enums_view_model_state/ViewModelState/ViewModelState.html","type":"constructor","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ViewModelState","type":"enum"}},{"name":"values","qualifiedName":"view_model_state.ViewModelState.values","href":"features_core_data_enums_view_model_state/ViewModelState/values-constant.html","type":"constant","overriddenDepth":0,"packageName":"mc_gallery","enclosedBy":{"name":"ViewModelState","type":"enum"}}] diff --git a/doc/api/l10n_generated_intl_messages_all/LibraryLoader.html b/doc/api/l10n_generated_intl_messages_all/LibraryLoader.html new file mode 100644 index 0000000..f101aab --- /dev/null +++ b/doc/api/l10n_generated_intl_messages_all/LibraryLoader.html @@ -0,0 +1,124 @@ + + + + + + + + LibraryLoader typedef - messages_all library - Dart API + + + + + + + + + + + + + + + + + +
            + +
            + + +
            LibraryLoader
            + +
            + +
            + + +
            +
            +

            LibraryLoader typedef + Null safety + +

            + +
            + LibraryLoader = + Future Function() + +
            + + + + +
            +

            Implementation

            +
            typedef Future<dynamic> LibraryLoader();
            +
            + + +
            + + + + + +
            + + + + + + + + + + + + + + diff --git a/doc/api/l10n_generated_intl_messages_all/initializeMessages.html b/doc/api/l10n_generated_intl_messages_all/initializeMessages.html new file mode 100644 index 0000000..c6db22a --- /dev/null +++ b/doc/api/l10n_generated_intl_messages_all/initializeMessages.html @@ -0,0 +1,142 @@ + + + + + + + + initializeMessages function - messages_all library - Dart API + + + + + + + + + + + + + + + + + +
            + +
            + + +
            initializeMessages
            + +
            + +
            + + +
            +
            +

            initializeMessages function + Null safety + +

            + +
            + + +Future<bool> +initializeMessages(
            1. String localeName
            2. +
            ) + +
            + +
            +

            User programs should call this before using localeName for messages.

            +
            + + + +
            +

            Implementation

            +
            Future<bool> initializeMessages(String localeName) {
            +  var availableLocale = Intl.verifiedLocale(
            +      localeName, (locale) => _deferredLibraries[locale] != null,
            +      onFailure: (_) => null);
            +  if (availableLocale == null) {
            +    return new SynchronousFuture(false);
            +  }
            +  var lib = _deferredLibraries[availableLocale];
            +  lib == null ? new SynchronousFuture(false) : lib();
            +  initializeInternalMessageLookup(() => new CompositeMessageLookup());
            +  messageLookup.addLocale(availableLocale, _findGeneratedMessagesFor);
            +  return new SynchronousFuture(true);
            +}
            +
            + + +
            + + + + + +
            + + + + + + + + + + + + + + diff --git a/doc/api/l10n_generated_intl_messages_all/l10n_generated_intl_messages_all-library.html b/doc/api/l10n_generated_intl_messages_all/l10n_generated_intl_messages_all-library.html new file mode 100644 index 0000000..7b4bf6f --- /dev/null +++ b/doc/api/l10n_generated_intl_messages_all/l10n_generated_intl_messages_all-library.html @@ -0,0 +1,217 @@ + + + + + + + + messages_all library - Dart API + + + + + + + + + + + + + + + + + +
            + +
            + + +
            messages_all
            + +
            + +
            + + +
            +
            +

            messages_all library + Null safety + +

            + + + + + + + + + +
            +

            Functions

            + +
            +
            + initializeMessages(String localeName) + Future<bool> + + + +
            +
            + User programs should call this before using localeName for messages. + + +
            + +
            +
            + + +
            +

            Typedefs

            + +
            + +
            + LibraryLoader + = Future Function() + + + +
            +
            + + + +
            + +
            +
            + + +
            + + + + + +
            + + + + + + + + + + + + + + diff --git a/doc/api/l10n_generated_intl_messages_en/MessageIfAbsent.html b/doc/api/l10n_generated_intl_messages_en/MessageIfAbsent.html new file mode 100644 index 0000000..a4e44e3 --- /dev/null +++ b/doc/api/l10n_generated_intl_messages_en/MessageIfAbsent.html @@ -0,0 +1,126 @@ + + + + + + + + MessageIfAbsent typedef - messages_en library - Dart API + + + + + + + + + + + + + + + + + +
            + +
            + + +
            MessageIfAbsent
            + +
            + +
            + + +
            +
            +

            MessageIfAbsent typedef + Null safety + +

            + +
            + MessageIfAbsent = + String Function(String messageStr, List args) + +
            + + + + +
            +

            Implementation

            +
            typedef String MessageIfAbsent(String messageStr, List<dynamic> args);
            +
            + + +
            + + + + + +
            + + + + + + + + + + + + + + diff --git a/doc/api/l10n_generated_intl_messages_en/MessageLookup-class.html b/doc/api/l10n_generated_intl_messages_en/MessageLookup-class.html new file mode 100644 index 0000000..907b241 --- /dev/null +++ b/doc/api/l10n_generated_intl_messages_en/MessageLookup-class.html @@ -0,0 +1,367 @@ + + + + + + + + MessageLookup class - messages_en library - Dart API + + + + + + + + + + + + + + + + + +
            + +
            + + +
            MessageLookup
            + +
            + +
            + + +
            +
            +

            MessageLookup class + Null safety + +

            + + + + +
            +
            + +
            Inheritance
            +
            + +
            + + + + + + + +
            +
            + + +
            +

            Constructors

            + +
            +
            + MessageLookup() +
            +
            + +
            +
            +
            + +
            +

            Properties

            + +
            +
            + hashCode + int + +
            +
            + The hash code for this object. +
            read-only, inherited
            + +
            + +
            + localeName + String + +
            +
            + Subclasses should override this to return their locale, e.g. 'en_US' +
            read-only, override
            + +
            + +
            + messages + Map<String, dynamic> + +
            +
            + Subclasses should override this to return a list of their message +implementations. In this class these are functions, but subclasses may +implement them differently. +
            final
            + +
            + +
            + runtimeType + Type + +
            +
            + A representation of the runtime type of the object. +
            read-only, inherited
            + +
            + +
            +
            + + +
            +

            Methods

            +
            +
            + evaluateMessage(dynamic translation, List args) + String? + + + +
            +
            + Evaluate the translated message and return the translated string. +
            inherited
            + +
            + +
            + lookupMessage(String? messageText, String? locale, String? name, List<Object>? args, String? meaning, {MessageIfAbsent? ifAbsent}) + String? + + + +
            +
            + Return the localized version of a message. We are passed the original +version of the message, which consists of a +messageText that will be translated, and which may be interpolated +based on one or more variables. +
            inherited
            + +
            + +
            + noSuchMethod(Invocation invocation) + → dynamic + + + +
            +
            + Invoked when a non-existent method or property is accessed. +
            inherited
            + +
            + +
            + toString() + String + + + +
            +
            + A string representation of this object. +
            inherited
            + +
            + +
            +
            + +
            +

            Operators

            +
            +
            + operator ==(Object other) + bool + + + +
            +
            + The equality operator. +
            inherited
            + +
            + +
            + operator [](String messageName) + → dynamic + + + +
            +
            + Return our message with the given name +
            inherited
            + +
            + +
            +
            + + +
            +

            Static Methods

            +
            +
            + m0(dynamic imageNumber, dynamic imageSide) + String + + + +
            +
            + + + +
            + +
            + m1(dynamic searchStr, dynamic imageNumber) + String + + + +
            +
            + + + +
            + +
            +
            + + + +
            + + + + + +
            + + + + + + + + + + + + + + diff --git a/doc/api/l10n_generated_intl_messages_en/MessageLookup/MessageLookup.html b/doc/api/l10n_generated_intl_messages_en/MessageLookup/MessageLookup.html new file mode 100644 index 0000000..ba10c30 --- /dev/null +++ b/doc/api/l10n_generated_intl_messages_en/MessageLookup/MessageLookup.html @@ -0,0 +1,137 @@ + + + + + + + + MessageLookup constructor - MessageLookup - messages_en library - Dart API + + + + + + + + + + + + + + + + + +
            + +
            + + +
            MessageLookup
            + +
            + +
            + + +
            +
            +

            MessageLookup constructor + Null safety +

            + +
            + MessageLookup() +
            + + + + + + + +
            + + + + + +
            + + + + + + + + + + + + + + diff --git a/doc/api/l10n_generated_intl_messages_en/MessageLookup/localeName.html b/doc/api/l10n_generated_intl_messages_en/MessageLookup/localeName.html new file mode 100644 index 0000000..c851bf0 --- /dev/null +++ b/doc/api/l10n_generated_intl_messages_en/MessageLookup/localeName.html @@ -0,0 +1,152 @@ + + + + + + + + localeName property - MessageLookup class - messages_en library - Dart API + + + + + + + + + + + + + + + + + +
            + +
            + + +
            localeName
            + +
            + +
            + + +
            +
            +

            localeName property + Null safety +

            + + + +
            + +
            + String + localeName +
            override
            + +
            + + +
            +

            Subclasses should override this to return their locale, e.g. 'en_US'

            +
            + + +
            +

            Implementation

            +
            String get localeName => 'en';
            +
            + +
            + + +
            + + + + + +
            + + + + + + + + + + + + + + diff --git a/doc/api/l10n_generated_intl_messages_en/MessageLookup/m0.html b/doc/api/l10n_generated_intl_messages_en/MessageLookup/m0.html new file mode 100644 index 0000000..4ddd86b --- /dev/null +++ b/doc/api/l10n_generated_intl_messages_en/MessageLookup/m0.html @@ -0,0 +1,149 @@ + + + + + + + + m0 method - MessageLookup class - messages_en library - Dart API + + + + + + + + + + + + + + + + + +
            + +
            + + +
            m0
            + +
            + +
            + + +
            +
            +

            m0 method + Null safety +

            + +
            + + +String +m0(
            1. dynamic imageNumber,
            2. +
            3. dynamic imageSide
            4. +
            ) + + + +
            + + + + +
            +

            Implementation

            +
            static String m0(imageNumber, imageSide) =>
            +    "Image ${imageNumber}: size=${imageSide}";
            +
            + + +
            + + + + + +
            + + + + + + + + + + + + + + diff --git a/doc/api/l10n_generated_intl_messages_en/MessageLookup/m1.html b/doc/api/l10n_generated_intl_messages_en/MessageLookup/m1.html new file mode 100644 index 0000000..87ac916 --- /dev/null +++ b/doc/api/l10n_generated_intl_messages_en/MessageLookup/m1.html @@ -0,0 +1,149 @@ + + + + + + + + m1 method - MessageLookup class - messages_en library - Dart API + + + + + + + + + + + + + + + + + +
            + +
            + + +
            m1
            + +
            + +
            + + +
            +
            +

            m1 method + Null safety +

            + +
            + + +String +m1(
            1. dynamic searchStr,
            2. +
            3. dynamic imageNumber
            4. +
            ) + + + +
            + + + + +
            +

            Implementation

            +
            static String m1(searchStr, imageNumber) =>
            +    "Search term \'${searchStr}\' result: Image ${imageNumber}";
            +
            + + +
            + + + + + +
            + + + + + + + + + + + + + + diff --git a/doc/api/l10n_generated_intl_messages_en/MessageLookup/messages.html b/doc/api/l10n_generated_intl_messages_en/MessageLookup/messages.html new file mode 100644 index 0000000..8a847b7 --- /dev/null +++ b/doc/api/l10n_generated_intl_messages_en/MessageLookup/messages.html @@ -0,0 +1,149 @@ + + + + + + + + messages property - MessageLookup class - messages_en library - Dart API + + + + + + + + + + + + + + + + + +
            + +
            + + +
            messages
            + +
            + +
            + + +
            +
            +

            messages property + Null safety +

            + +
            + Map<String, dynamic> + messages +
            final
            + +
            + +
            +

            Subclasses should override this to return a list of their message +implementations. In this class these are functions, but subclasses may +implement them differently.

            +
            + + +
            +

            Implementation

            +
            final messages = _notInlinedMessages(_notInlinedMessages);
            +
            +
            +
            + + +
            + + + + + +
            + + + + + + + + + + + + + + diff --git a/doc/api/l10n_generated_intl_messages_en/l10n_generated_intl_messages_en-library.html b/doc/api/l10n_generated_intl_messages_en/l10n_generated_intl_messages_en-library.html new file mode 100644 index 0000000..1a911ac --- /dev/null +++ b/doc/api/l10n_generated_intl_messages_en/l10n_generated_intl_messages_en-library.html @@ -0,0 +1,231 @@ + + + + + + + + messages_en library - Dart API + + + + + + + + + + + + + + + + + +
            + +
            + + +
            messages_en
            + +
            + +
            + + +
            +
            +

            messages_en library + Null safety + +

            + + + + +
            +

            Classes

            + +
            +
            + MessageLookup + +
            +
            + +
            + +
            +
            + + + + +
            +

            Properties

            + +
            +
            + messages + MessageLookup + +
            +
            + +
            final
            + +
            + +
            +
            + + + +
            +

            Typedefs

            + +
            + +
            + MessageIfAbsent + = String Function(String messageStr, List args) + + + +
            +
            + + + +
            + +
            +
            + + +
            + + + + + +
            + + + + + + + + + + + + + + diff --git a/doc/api/l10n_generated_intl_messages_en/messages.html b/doc/api/l10n_generated_intl_messages_en/messages.html new file mode 100644 index 0000000..8cc78c3 --- /dev/null +++ b/doc/api/l10n_generated_intl_messages_en/messages.html @@ -0,0 +1,127 @@ + + + + + + + + messages property - messages_en library - Dart API + + + + + + + + + + + + + + + + + +
            + +
            + + +
            messages
            + +
            + +
            + + +
            +
            +

            messages top-level property + Null safety + +

            + +
            + MessageLookup + messages +
            final
            + +
            + + + +
            +

            Implementation

            +
            final messages = new MessageLookup();
            +
            + + + +
            + + + + + +
            + + + + + + + + + + + + + + diff --git a/doc/api/l10n_generated_l10n/AppLocalizationDelegate-class.html b/doc/api/l10n_generated_l10n/AppLocalizationDelegate-class.html new file mode 100644 index 0000000..3972927 --- /dev/null +++ b/doc/api/l10n_generated_l10n/AppLocalizationDelegate-class.html @@ -0,0 +1,328 @@ + + + + + + + + AppLocalizationDelegate class - l10n library - Dart API + + + + + + + + + + + + + + + + + +
            + +
            + + +
            AppLocalizationDelegate
            + +
            + +
            + + +
            +
            +

            AppLocalizationDelegate class + Null safety + +

            + + + + +
            +
            + +
            Inheritance
            +
            + +
            + + + + + + + +
            +
            + + +
            +

            Constructors

            + +
            +
            + AppLocalizationDelegate() +
            +
            + +
            const
            +
            +
            +
            + +
            +

            Properties

            + +
            +
            + hashCode + int + +
            +
            + The hash code for this object. +
            read-only, inherited
            + +
            + +
            + runtimeType + Type + +
            +
            + A representation of the runtime type of the object. +
            read-only, inherited
            + +
            + +
            + supportedLocales + List<Locale> + +
            +
            + +
            read-only
            + +
            + +
            + type + Type + +
            +
            + The type of the object returned by the load method, T by default. +
            read-only, inherited
            + +
            + +
            +
            + + +
            +

            Methods

            +
            +
            + isSupported(Locale locale) + bool + + + +
            +
            + Whether resources for the given locale can be loaded by this delegate. +
            override
            + +
            + +
            + load(Locale locale) + Future<Strings> + + + +
            +
            + Start loading the resources for locale. The returned future completes +when the resources have finished loading. +
            override
            + +
            + +
            + noSuchMethod(Invocation invocation) + → dynamic + + + +
            +
            + Invoked when a non-existent method or property is accessed. +
            inherited
            + +
            + +
            + shouldReload(covariant AppLocalizationDelegate old) + bool + + + +
            +
            + Returns true if the resources for this delegate should be loaded +again by calling the load method. +
            override
            + +
            + +
            + toString() + String + + + +
            +
            + A string representation of this object. +
            inherited
            + +
            + +
            +
            + +
            +

            Operators

            +
            +
            + operator ==(Object other) + bool + + + +
            +
            + The equality operator. +
            inherited
            + +
            + +
            +
            + + + + + +
            + + + + + +
            + + + + + + + + + + + + + + diff --git a/doc/api/l10n_generated_l10n/AppLocalizationDelegate/AppLocalizationDelegate.html b/doc/api/l10n_generated_l10n/AppLocalizationDelegate/AppLocalizationDelegate.html new file mode 100644 index 0000000..e71c90a --- /dev/null +++ b/doc/api/l10n_generated_l10n/AppLocalizationDelegate/AppLocalizationDelegate.html @@ -0,0 +1,138 @@ + + + + + + + + AppLocalizationDelegate constructor - AppLocalizationDelegate - l10n library - Dart API + + + + + + + + + + + + + + + + + +
            + +
            + + +
            AppLocalizationDelegate
            + +
            + +
            + + +
            +
            +

            AppLocalizationDelegate constructor + Null safety +

            + +
            const + AppLocalizationDelegate() +
            + + + + + +
            +

            Implementation

            +
            const AppLocalizationDelegate();
            +
            + + +
            + + + + + +
            + + + + + + + + + + + + + + diff --git a/doc/api/l10n_generated_l10n/AppLocalizationDelegate/isSupported.html b/doc/api/l10n_generated_l10n/AppLocalizationDelegate/isSupported.html new file mode 100644 index 0000000..02291aa --- /dev/null +++ b/doc/api/l10n_generated_l10n/AppLocalizationDelegate/isSupported.html @@ -0,0 +1,155 @@ + + + + + + + + isSupported method - AppLocalizationDelegate class - l10n library - Dart API + + + + + + + + + + + + + + + + + +
            + +
            + + +
            isSupported
            + +
            + +
            + + +
            +
            +

            isSupported method + Null safety +

            + +
            + +
            +
              +
            1. @override
            2. +
            +
            + +bool +isSupported(
            1. Locale locale
            2. +
            ) + +
            override
            + +
            + +
            +

            Whether resources for the given locale can be loaded by this delegate.

            +

            Return true if the instance of T loaded by this delegate's load +method supports the given locale's language.

            +
            + + + +
            +

            Implementation

            +
            @override
            +bool isSupported(Locale locale) => _isSupported(locale);
            +
            + + +
            + + + + + +
            + + + + + + + + + + + + + + diff --git a/doc/api/l10n_generated_l10n/AppLocalizationDelegate/load.html b/doc/api/l10n_generated_l10n/AppLocalizationDelegate/load.html new file mode 100644 index 0000000..a9c3222 --- /dev/null +++ b/doc/api/l10n_generated_l10n/AppLocalizationDelegate/load.html @@ -0,0 +1,157 @@ + + + + + + + + load method - AppLocalizationDelegate class - l10n library - Dart API + + + + + + + + + + + + + + + + + +
            + +
            + + +
            load
            + +
            + +
            + + +
            +
            +

            load method + Null safety +

            + +
            + +
            +
              +
            1. @override
            2. +
            +
            + +Future<Strings> +load(
            1. Locale locale
            2. +
            ) + +
            override
            + +
            + +
            +

            Start loading the resources for locale. The returned future completes +when the resources have finished loading.

            +

            It's assumed that the this method will return an object that contains +a collection of related resources (typically defined with one method per +resource). The object will be retrieved with Localizations.of.

            +
            + + + +
            +

            Implementation

            +
            @override
            +Future<Strings> load(Locale locale) => Strings.load(locale);
            +
            + + +
            + + + + + +
            + + + + + + + + + + + + + + diff --git a/doc/api/l10n_generated_l10n/AppLocalizationDelegate/shouldReload.html b/doc/api/l10n_generated_l10n/AppLocalizationDelegate/shouldReload.html new file mode 100644 index 0000000..5640ee8 --- /dev/null +++ b/doc/api/l10n_generated_l10n/AppLocalizationDelegate/shouldReload.html @@ -0,0 +1,157 @@ + + + + + + + + shouldReload method - AppLocalizationDelegate class - l10n library - Dart API + + + + + + + + + + + + + + + + + +
            + +
            + + +
            shouldReload
            + +
            + +
            + + +
            +
            +

            shouldReload method + Null safety +

            + +
            + +
            +
              +
            1. @override
            2. +
            +
            + +bool +shouldReload(
            1. covariant AppLocalizationDelegate old
            2. +
            ) + +
            override
            + +
            + +
            +

            Returns true if the resources for this delegate should be loaded +again by calling the load method.

            +

            This method is called whenever its Localizations widget is +rebuilt. If it returns true then dependent widgets will be rebuilt +after load has completed.

            +
            + + + +
            +

            Implementation

            +
            @override
            +bool shouldReload(AppLocalizationDelegate old) => false;
            +
            + + +
            + + + + + +
            + + + + + + + + + + + + + + diff --git a/doc/api/l10n_generated_l10n/AppLocalizationDelegate/supportedLocales.html b/doc/api/l10n_generated_l10n/AppLocalizationDelegate/supportedLocales.html new file mode 100644 index 0000000..fa0f6cf --- /dev/null +++ b/doc/api/l10n_generated_l10n/AppLocalizationDelegate/supportedLocales.html @@ -0,0 +1,150 @@ + + + + + + + + supportedLocales property - AppLocalizationDelegate class - l10n library - Dart API + + + + + + + + + + + + + + + + + +
            + +
            + + +
            supportedLocales
            + +
            + +
            + + +
            +
            +

            supportedLocales property + Null safety +

            + + + +
            + +
            + List<Locale> + supportedLocales + + +
            + + + + +
            +

            Implementation

            +
            List<Locale> get supportedLocales {
            +  return const <Locale>[
            +    Locale.fromSubtags(languageCode: 'en'),
            +  ];
            +}
            +
            + +
            + + +
            + + + + + +
            + + + + + + + + + + + + + + diff --git a/doc/api/l10n_generated_l10n/Strings-class.html b/doc/api/l10n_generated_l10n/Strings-class.html new file mode 100644 index 0000000..7d2d404 --- /dev/null +++ b/doc/api/l10n_generated_l10n/Strings-class.html @@ -0,0 +1,489 @@ + + + + + + + + Strings class - l10n library - Dart API + + + + + + + + + + + + + + + + + +
            + +
            + + +
            Strings
            + +
            + +
            + + +
            +
            +

            Strings class + Null safety + +

            + + + + + + +
            +

            Constructors

            + +
            +
            + Strings() +
            +
            + +
            +
            +
            + +
            +

            Properties

            + +
            +
            + appTitle + String + +
            +
            + MC Gallery App +
            read-only
            + +
            + +
            + errorPageMessage + String + +
            +
            + Oopsie, there has been an error. Hang tight till we do something about it. +
            read-only
            + +
            + + +
            + Gallery +
            read-only
            + +
            + +
            + hashCode + int + +
            +
            + The hash code for this object. +
            read-only, inherited
            + +
            + +
            + imageCarousel + String + +
            +
            + Image carousel +
            read-only
            + +
            + +
            + imageDetails + String + +
            +
            + Lorem ipsum dolor sit amet. A odio aliquam est sunt explicabo cum galisum asperiores qui voluptas tempora qui aliquid similique. Ut quam laborum ex nostrum recusandae ab sunt ratione quo tempore corporis 33 voluptas nulla aut obcaecati perspiciatis.\n\nAd eveniet exercitationem ad odit quidem aut omnis corporis ea nulla illum qui quisquam temporibus? Est obcaecati similique et quisquam unde ea impedit mollitia ea accusamus natus hic doloribus quis! Et dolorem rerum id doloribus sint ea porro quia ut reprehenderit ratione? +
            read-only
            + +
            + +
            + local + String + +
            +
            + Local +
            read-only
            + +
            + +
            + noInternetMessage + String + +
            +
            + Are you sure that you're connected to the internet? +
            read-only
            + +
            + +
            + runtimeType + Type + +
            +
            + A representation of the runtime type of the object. +
            read-only, inherited
            + +
            + +
            + searchForImage + String + +
            +
            + Search for your image +
            read-only
            + +
            + +
            + somethingWentWrong + String + +
            +
            + Something went wrong +
            read-only
            + +
            + +
            + startLoadingPrompt + String + +
            +
            + Press me to start loading +
            read-only
            + +
            + +
            + web + String + +
            +
            + Web +
            read-only
            + +
            + +
            +
            + + +
            +

            Methods

            +
            +
            + imageNameFetch(Object imageNumber, Object imageSide) + String + + + +
            +
            + Image {imageNumber}: size={imageSide} + + +
            + +
            + imageNameSearch(Object searchStr, Object imageNumber) + String + + + +
            +
            + Search term '{searchStr}' result: Image {imageNumber} + + +
            + +
            + noSuchMethod(Invocation invocation) + → dynamic + + + +
            +
            + Invoked when a non-existent method or property is accessed. +
            inherited
            + +
            + +
            + toString() + String + + + +
            +
            + A string representation of this object. +
            inherited
            + +
            + +
            +
            + +
            +

            Operators

            +
            +
            + operator ==(Object other) + bool + + + +
            +
            + The equality operator. +
            inherited
            + +
            + +
            +
            + +
            +

            Static Properties

            + +
            +
            + current + Strings + +
            +
            + +
            read-only
            + +
            + +
            +
            + +
            +

            Static Methods

            +
            +
            + load(Locale locale) + Future<Strings> + + + +
            +
            + + + +
            + +
            + maybeOf(BuildContext context) + Strings? + + + +
            +
            + + + +
            + +
            + of(BuildContext context) + Strings + + + +
            +
            + + + +
            + +
            +
            + + +
            +

            Constants

            + +
            +
            + delegate + → const AppLocalizationDelegate + + +
            +
            + + + + +
            + +
            +
            + +
            + + + + + +
            + + + + + + + + + + + + + + diff --git a/doc/api/l10n_generated_l10n/Strings/Strings.html b/doc/api/l10n_generated_l10n/Strings/Strings.html new file mode 100644 index 0000000..c6811bf --- /dev/null +++ b/doc/api/l10n_generated_l10n/Strings/Strings.html @@ -0,0 +1,154 @@ + + + + + + + + Strings constructor - Strings - l10n library - Dart API + + + + + + + + + + + + + + + + + +
            + +
            + + +
            Strings
            + +
            + +
            + + +
            +
            +

            Strings constructor + Null safety +

            + +
            + Strings() +
            + + + + + +
            +

            Implementation

            +
            Strings();
            +
            + + +
            + + + + + +
            + + + + + + + + + + + + + + diff --git a/doc/api/l10n_generated_l10n/Strings/appTitle.html b/doc/api/l10n_generated_l10n/Strings/appTitle.html new file mode 100644 index 0000000..39df235 --- /dev/null +++ b/doc/api/l10n_generated_l10n/Strings/appTitle.html @@ -0,0 +1,172 @@ + + + + + + + + appTitle property - Strings class - l10n library - Dart API + + + + + + + + + + + + + + + + + +
            + +
            + + +
            appTitle
            + +
            + +
            + + +
            +
            +

            appTitle property + Null safety +

            + + + +
            + +
            + String + appTitle + + +
            + + +
            +

            MC Gallery App

            +
            + + +
            +

            Implementation

            +
            String get appTitle {
            +  return Intl.message(
            +    'MC Gallery App',
            +    name: 'appTitle',
            +    desc: '',
            +    args: [],
            +  );
            +}
            +
            + +
            + + +
            + + + + + +
            + + + + + + + + + + + + + + diff --git a/doc/api/l10n_generated_l10n/Strings/current.html b/doc/api/l10n_generated_l10n/Strings/current.html new file mode 100644 index 0000000..131a5d4 --- /dev/null +++ b/doc/api/l10n_generated_l10n/Strings/current.html @@ -0,0 +1,166 @@ + + + + + + + + current property - Strings class - l10n library - Dart API + + + + + + + + + + + + + + + + + +
            + +
            + + +
            current
            + +
            + +
            + + +
            +
            +

            current property + Null safety +

            + + + +
            + +
            + Strings + current + + +
            + + + + +
            +

            Implementation

            +
            static Strings get current {
            +  assert(_current != null,
            +      'No instance of Strings was loaded. Try to initialize the Strings delegate before accessing Strings.current.');
            +  return _current!;
            +}
            +
            + +
            + + +
            + + + + + +
            + + + + + + + + + + + + + + diff --git a/doc/api/l10n_generated_l10n/Strings/delegate-constant.html b/doc/api/l10n_generated_l10n/Strings/delegate-constant.html new file mode 100644 index 0000000..6397e6b --- /dev/null +++ b/doc/api/l10n_generated_l10n/Strings/delegate-constant.html @@ -0,0 +1,157 @@ + + + + + + + + delegate constant - Strings class - l10n library - Dart API + + + + + + + + + + + + + + + + + +
            + +
            + + +
            delegate
            + +
            + +
            + + +
            +
            +

            delegate constant + Null safety +

            + +
            + AppLocalizationDelegate + const delegate + + +
            + + + +
            +

            Implementation

            +
            static const AppLocalizationDelegate delegate = AppLocalizationDelegate();
            +
            +
            +
            + + +
            + + + + + +
            + + + + + + + + + + + + + + diff --git a/doc/api/l10n_generated_l10n/Strings/errorPageMessage.html b/doc/api/l10n_generated_l10n/Strings/errorPageMessage.html new file mode 100644 index 0000000..737c2ac --- /dev/null +++ b/doc/api/l10n_generated_l10n/Strings/errorPageMessage.html @@ -0,0 +1,172 @@ + + + + + + + + errorPageMessage property - Strings class - l10n library - Dart API + + + + + + + + + + + + + + + + + +
            + +
            + + +
            errorPageMessage
            + +
            + +
            + + +
            +
            +

            errorPageMessage property + Null safety +

            + + + +
            + +
            + String + errorPageMessage + + +
            + + +
            +

            Oopsie, there has been an error. Hang tight till we do something about it.

            +
            + + +
            +

            Implementation

            +
            String get errorPageMessage {
            +  return Intl.message(
            +    'Oopsie, there has been an error. Hang tight till we do something about it.',
            +    name: 'errorPageMessage',
            +    desc: '',
            +    args: [],
            +  );
            +}
            +
            + +
            + + +
            + + + + + +
            + + + + + + + + + + + + + + diff --git a/doc/api/l10n_generated_l10n/Strings/gallery.html b/doc/api/l10n_generated_l10n/Strings/gallery.html new file mode 100644 index 0000000..e8e6e0d --- /dev/null +++ b/doc/api/l10n_generated_l10n/Strings/gallery.html @@ -0,0 +1,172 @@ + + + + + + + + gallery property - Strings class - l10n library - Dart API + + + + + + + + + + + + + + + + + +
            + +
            + + +
            gallery
            + +
            + +
            + + +
            +
            +

            gallery property + Null safety +

            + + + +
            + +
            + String + gallery + + +
            + + +
            +

            Gallery

            +
            + + +
            +

            Implementation

            +
            String get gallery {
            +  return Intl.message(
            +    'Gallery',
            +    name: 'gallery',
            +    desc: '',
            +    args: [],
            +  );
            +}
            +
            + +
            + + +
            + + + + + +
            + + + + + + + + + + + + + + diff --git a/doc/api/l10n_generated_l10n/Strings/imageCarousel.html b/doc/api/l10n_generated_l10n/Strings/imageCarousel.html new file mode 100644 index 0000000..aa4b448 --- /dev/null +++ b/doc/api/l10n_generated_l10n/Strings/imageCarousel.html @@ -0,0 +1,172 @@ + + + + + + + + imageCarousel property - Strings class - l10n library - Dart API + + + + + + + + + + + + + + + + + +
            + +
            + + +
            imageCarousel
            + +
            + +
            + + +
            +
            +

            imageCarousel property + Null safety +

            + + + +
            + +
            + String + imageCarousel + + +
            + + +
            +

            Image carousel

            +
            + + +
            +

            Implementation

            +
            String get imageCarousel {
            +  return Intl.message(
            +    'Image carousel',
            +    name: 'imageCarousel',
            +    desc: '',
            +    args: [],
            +  );
            +}
            +
            + +
            + + +
            + + + + + +
            + + + + + + + + + + + + + + diff --git a/doc/api/l10n_generated_l10n/Strings/imageDetails.html b/doc/api/l10n_generated_l10n/Strings/imageDetails.html new file mode 100644 index 0000000..18f4050 --- /dev/null +++ b/doc/api/l10n_generated_l10n/Strings/imageDetails.html @@ -0,0 +1,172 @@ + + + + + + + + imageDetails property - Strings class - l10n library - Dart API + + + + + + + + + + + + + + + + + +
            + +
            + + +
            imageDetails
            + +
            + +
            + + +
            +
            +

            imageDetails property + Null safety +

            + + + +
            + +
            + String + imageDetails + + +
            + + +
            +

            Lorem ipsum dolor sit amet. A odio aliquam est sunt explicabo cum galisum asperiores qui voluptas tempora qui aliquid similique. Ut quam laborum ex nostrum recusandae ab sunt ratione quo tempore corporis 33 voluptas nulla aut obcaecati perspiciatis.\n\nAd eveniet exercitationem ad odit quidem aut omnis corporis ea nulla illum qui quisquam temporibus? Est obcaecati similique et quisquam unde ea impedit mollitia ea accusamus natus hic doloribus quis! Et dolorem rerum id doloribus sint ea porro quia ut reprehenderit ratione?

            +
            + + +
            +

            Implementation

            +
            String get imageDetails {
            +  return Intl.message(
            +    'Lorem ipsum dolor sit amet. A odio aliquam est sunt explicabo cum galisum asperiores qui voluptas tempora qui aliquid similique. Ut quam laborum ex nostrum recusandae ab sunt ratione quo tempore corporis 33 voluptas nulla aut obcaecati perspiciatis.\n\nAd eveniet exercitationem ad odit quidem aut omnis corporis ea nulla illum qui quisquam temporibus? Est obcaecati similique et quisquam unde ea impedit mollitia ea accusamus natus hic doloribus quis! Et dolorem rerum id doloribus sint ea porro quia ut reprehenderit ratione?',
            +    name: 'imageDetails',
            +    desc: '',
            +    args: [],
            +  );
            +}
            +
            + +
            + + +
            + + + + + +
            + + + + + + + + + + + + + + diff --git a/doc/api/l10n_generated_l10n/Strings/imageNameFetch.html b/doc/api/l10n_generated_l10n/Strings/imageNameFetch.html new file mode 100644 index 0000000..fbda925 --- /dev/null +++ b/doc/api/l10n_generated_l10n/Strings/imageNameFetch.html @@ -0,0 +1,171 @@ + + + + + + + + imageNameFetch method - Strings class - l10n library - Dart API + + + + + + + + + + + + + + + + + +
            + +
            + + +
            imageNameFetch
            + +
            + +
            + + +
            +
            +

            imageNameFetch method + Null safety +

            + +
            + + +String +imageNameFetch(
            1. Object imageNumber,
            2. +
            3. Object imageSide
            4. +
            ) + + + +
            + +
            +

            Image {imageNumber}: size={imageSide}

            +
            + + + +
            +

            Implementation

            +
            String imageNameFetch(Object imageNumber, Object imageSide) {
            +  return Intl.message(
            +    'Image $imageNumber: size=$imageSide',
            +    name: 'imageNameFetch',
            +    desc: '',
            +    args: [imageNumber, imageSide],
            +  );
            +}
            +
            + + +
            + + + + + +
            + + + + + + + + + + + + + + diff --git a/doc/api/l10n_generated_l10n/Strings/imageNameSearch.html b/doc/api/l10n_generated_l10n/Strings/imageNameSearch.html new file mode 100644 index 0000000..eb89a1d --- /dev/null +++ b/doc/api/l10n_generated_l10n/Strings/imageNameSearch.html @@ -0,0 +1,171 @@ + + + + + + + + imageNameSearch method - Strings class - l10n library - Dart API + + + + + + + + + + + + + + + + + +
            + +
            + + +
            imageNameSearch
            + +
            + +
            + + +
            +
            +

            imageNameSearch method + Null safety +

            + +
            + + +String +imageNameSearch(
            1. Object searchStr,
            2. +
            3. Object imageNumber
            4. +
            ) + + + +
            + +
            +

            Search term '{searchStr}' result: Image {imageNumber}

            +
            + + + +
            +

            Implementation

            +
            String imageNameSearch(Object searchStr, Object imageNumber) {
            +  return Intl.message(
            +    'Search term \'$searchStr\' result: Image $imageNumber',
            +    name: 'imageNameSearch',
            +    desc: '',
            +    args: [searchStr, imageNumber],
            +  );
            +}
            +
            + + +
            + + + + + +
            + + + + + + + + + + + + + + diff --git a/doc/api/l10n_generated_l10n/Strings/load.html b/doc/api/l10n_generated_l10n/Strings/load.html new file mode 100644 index 0000000..b2f236d --- /dev/null +++ b/doc/api/l10n_generated_l10n/Strings/load.html @@ -0,0 +1,172 @@ + + + + + + + + load method - Strings class - l10n library - Dart API + + + + + + + + + + + + + + + + + +
            + +
            + + +
            load
            + +
            + +
            + + +
            +
            +

            load method + Null safety +

            + +
            + + +Future<Strings> +load(
            1. Locale locale
            2. +
            ) + + + +
            + + + + +
            +

            Implementation

            +
            static Future<Strings> load(Locale locale) {
            +  final name = (locale.countryCode?.isEmpty ?? false)
            +      ? locale.languageCode
            +      : locale.toString();
            +  final localeName = Intl.canonicalizedLocale(name);
            +  return initializeMessages(localeName).then((_) {
            +    Intl.defaultLocale = localeName;
            +    final instance = Strings();
            +    Strings._current = instance;
            +
            +    return instance;
            +  });
            +}
            +
            + + +
            + + + + + +
            + + + + + + + + + + + + + + diff --git a/doc/api/l10n_generated_l10n/Strings/local.html b/doc/api/l10n_generated_l10n/Strings/local.html new file mode 100644 index 0000000..cbe2c5e --- /dev/null +++ b/doc/api/l10n_generated_l10n/Strings/local.html @@ -0,0 +1,172 @@ + + + + + + + + local property - Strings class - l10n library - Dart API + + + + + + + + + + + + + + + + + +
            + +
            + + +
            local
            + +
            + +
            + + +
            +
            +

            local property + Null safety +

            + + + +
            + +
            + String + local + + +
            + + +
            +

            Local

            +
            + + +
            +

            Implementation

            +
            String get local {
            +  return Intl.message(
            +    'Local',
            +    name: 'local',
            +    desc: '',
            +    args: [],
            +  );
            +}
            +
            + +
            + + +
            + + + + + +
            + + + + + + + + + + + + + + diff --git a/doc/api/l10n_generated_l10n/Strings/maybeOf.html b/doc/api/l10n_generated_l10n/Strings/maybeOf.html new file mode 100644 index 0000000..99ad159 --- /dev/null +++ b/doc/api/l10n_generated_l10n/Strings/maybeOf.html @@ -0,0 +1,162 @@ + + + + + + + + maybeOf method - Strings class - l10n library - Dart API + + + + + + + + + + + + + + + + + +
            + +
            + + +
            maybeOf
            + +
            + +
            + + +
            +
            +

            maybeOf method + Null safety +

            + +
            + + +Strings? +maybeOf(
            1. BuildContext context
            2. +
            ) + + + +
            + + + + +
            +

            Implementation

            +
            static Strings? maybeOf(BuildContext context) {
            +  return Localizations.of<Strings>(context, Strings);
            +}
            +
            + + +
            + + + + + +
            + + + + + + + + + + + + + + diff --git a/doc/api/l10n_generated_l10n/Strings/noInternetMessage.html b/doc/api/l10n_generated_l10n/Strings/noInternetMessage.html new file mode 100644 index 0000000..f4357ff --- /dev/null +++ b/doc/api/l10n_generated_l10n/Strings/noInternetMessage.html @@ -0,0 +1,172 @@ + + + + + + + + noInternetMessage property - Strings class - l10n library - Dart API + + + + + + + + + + + + + + + + + +
            + +
            + + +
            noInternetMessage
            + +
            + +
            + + +
            +
            +

            noInternetMessage property + Null safety +

            + + + +
            + +
            + String + noInternetMessage + + +
            + + +
            +

            Are you sure that you're connected to the internet?

            +
            + + +
            +

            Implementation

            +
            String get noInternetMessage {
            +  return Intl.message(
            +    'Are you sure that you\'re connected to the internet?',
            +    name: 'noInternetMessage',
            +    desc: '',
            +    args: [],
            +  );
            +}
            +
            + +
            + + +
            + + + + + +
            + + + + + + + + + + + + + + diff --git a/doc/api/l10n_generated_l10n/Strings/of.html b/doc/api/l10n_generated_l10n/Strings/of.html new file mode 100644 index 0000000..1373579 --- /dev/null +++ b/doc/api/l10n_generated_l10n/Strings/of.html @@ -0,0 +1,165 @@ + + + + + + + + of method - Strings class - l10n library - Dart API + + + + + + + + + + + + + + + + + +
            + +
            + + +
            of
            + +
            + +
            + + +
            +
            +

            of method + Null safety +

            + +
            + + +Strings +of(
            1. BuildContext context
            2. +
            ) + + + +
            + + + + +
            +

            Implementation

            +
            static Strings of(BuildContext context) {
            +  final instance = Strings.maybeOf(context);
            +  assert(instance != null,
            +      'No instance of Strings present in the widget tree. Did you add Strings.delegate in localizationsDelegates?');
            +  return instance!;
            +}
            +
            + + +
            + + + + + +
            + + + + + + + + + + + + + + diff --git a/doc/api/l10n_generated_l10n/Strings/searchForImage.html b/doc/api/l10n_generated_l10n/Strings/searchForImage.html new file mode 100644 index 0000000..f26720e --- /dev/null +++ b/doc/api/l10n_generated_l10n/Strings/searchForImage.html @@ -0,0 +1,172 @@ + + + + + + + + searchForImage property - Strings class - l10n library - Dart API + + + + + + + + + + + + + + + + + +
            + +
            + + +
            searchForImage
            + +
            + +
            + + +
            +
            +

            searchForImage property + Null safety +

            + + + +
            + +
            + String + searchForImage + + +
            + + +
            +

            Search for your image

            +
            + + +
            +

            Implementation

            +
            String get searchForImage {
            +  return Intl.message(
            +    'Search for your image',
            +    name: 'searchForImage',
            +    desc: '',
            +    args: [],
            +  );
            +}
            +
            + +
            + + +
            + + + + + +
            + + + + + + + + + + + + + + diff --git a/doc/api/l10n_generated_l10n/Strings/somethingWentWrong.html b/doc/api/l10n_generated_l10n/Strings/somethingWentWrong.html new file mode 100644 index 0000000..057def9 --- /dev/null +++ b/doc/api/l10n_generated_l10n/Strings/somethingWentWrong.html @@ -0,0 +1,172 @@ + + + + + + + + somethingWentWrong property - Strings class - l10n library - Dart API + + + + + + + + + + + + + + + + + +
            + +
            + + +
            somethingWentWrong
            + +
            + +
            + + +
            +
            +

            somethingWentWrong property + Null safety +

            + + + +
            + +
            + String + somethingWentWrong + + +
            + + +
            +

            Something went wrong

            +
            + + +
            +

            Implementation

            +
            String get somethingWentWrong {
            +  return Intl.message(
            +    'Something went wrong',
            +    name: 'somethingWentWrong',
            +    desc: '',
            +    args: [],
            +  );
            +}
            +
            + +
            + + +
            + + + + + +
            + + + + + + + + + + + + + + diff --git a/doc/api/l10n_generated_l10n/Strings/startLoadingPrompt.html b/doc/api/l10n_generated_l10n/Strings/startLoadingPrompt.html new file mode 100644 index 0000000..f8ea965 --- /dev/null +++ b/doc/api/l10n_generated_l10n/Strings/startLoadingPrompt.html @@ -0,0 +1,172 @@ + + + + + + + + startLoadingPrompt property - Strings class - l10n library - Dart API + + + + + + + + + + + + + + + + + +
            + +
            + + +
            startLoadingPrompt
            + +
            + +
            + + +
            +
            +

            startLoadingPrompt property + Null safety +

            + + + +
            + +
            + String + startLoadingPrompt + + +
            + + +
            +

            Press me to start loading

            +
            + + +
            +

            Implementation

            +
            String get startLoadingPrompt {
            +  return Intl.message(
            +    'Press me to start loading',
            +    name: 'startLoadingPrompt',
            +    desc: '',
            +    args: [],
            +  );
            +}
            +
            + +
            + + +
            + + + + + +
            + + + + + + + + + + + + + + diff --git a/doc/api/l10n_generated_l10n/Strings/web.html b/doc/api/l10n_generated_l10n/Strings/web.html new file mode 100644 index 0000000..6339509 --- /dev/null +++ b/doc/api/l10n_generated_l10n/Strings/web.html @@ -0,0 +1,172 @@ + + + + + + + + web property - Strings class - l10n library - Dart API + + + + + + + + + + + + + + + + + +
            + +
            + + +
            web
            + +
            + +
            + + +
            +
            +

            web property + Null safety +

            + + + +
            + +
            + String + web + + +
            + + +
            +

            Web

            +
            + + +
            +

            Implementation

            +
            String get web {
            +  return Intl.message(
            +    'Web',
            +    name: 'web',
            +    desc: '',
            +    args: [],
            +  );
            +}
            +
            + +
            + + +
            + + + + + +
            + + + + + + + + + + + + + + diff --git a/doc/api/l10n_generated_l10n/l10n_generated_l10n-library.html b/doc/api/l10n_generated_l10n/l10n_generated_l10n-library.html new file mode 100644 index 0000000..5779aab --- /dev/null +++ b/doc/api/l10n_generated_l10n/l10n_generated_l10n-library.html @@ -0,0 +1,199 @@ + + + + + + + + l10n library - Dart API + + + + + + + + + + + + + + + + + +
            + +
            + + +
            l10n
            + +
            + +
            + + +
            +
            +

            l10n library + Null safety + +

            + + + + +
            +

            Classes

            + +
            +
            + AppLocalizationDelegate + +
            +
            + +
            + +
            + Strings + +
            +
            + +
            + +
            +
            + + + + + + + + + +
            + + + + + +
            + + + + + + + + + + + + + + diff --git a/doc/api/locator/Locator-class.html b/doc/api/locator/Locator-class.html new file mode 100644 index 0000000..6739fab --- /dev/null +++ b/doc/api/locator/Locator-class.html @@ -0,0 +1,288 @@ + + + + + + + + Locator class - locator library - Dart API + + + + + + + + + + + + + + + + + +
            + +
            + + +
            Locator
            + +
            + +
            + + +
            +
            +

            Locator class + Null safety + +

            + + + + + + +
            +

            Constructors

            + +
            +
            + Locator() +
            +
            + +
            +
            +
            + +
            +

            Properties

            + +
            +
            + hashCode + int + +
            +
            + The hash code for this object. +
            read-only, inherited
            + +
            + +
            + runtimeType + Type + +
            +
            + A representation of the runtime type of the object. +
            read-only, inherited
            + +
            + +
            +
            + + +
            +

            Methods

            +
            +
            + noSuchMethod(Invocation invocation) + → dynamic + + + +
            +
            + Invoked when a non-existent method or property is accessed. +
            inherited
            + +
            + +
            + toString() + String + + + +
            +
            + A string representation of this object. +
            inherited
            + +
            + +
            +
            + +
            +

            Operators

            +
            +
            + operator ==(Object other) + bool + + + +
            +
            + The equality operator. +
            inherited
            + +
            + +
            +
            + + +
            +

            Static Methods

            +
            +
            + instance() + GetIt + + + +
            +
            + + + +
            + +
            + locate<T extends Object>() + → T + + + +
            +
            + + + +
            + +
            + setup() + Future<void> + + + +
            +
            + + + +
            + +
            +
            + + + +
            + + + + + +
            + + + + + + + + + + + + + + diff --git a/doc/api/locator/Locator/Locator.html b/doc/api/locator/Locator/Locator.html new file mode 100644 index 0000000..9ba083e --- /dev/null +++ b/doc/api/locator/Locator/Locator.html @@ -0,0 +1,133 @@ + + + + + + + + Locator constructor - Locator - locator library - Dart API + + + + + + + + + + + + + + + + + +
            + +
            + + +
            Locator
            + +
            + +
            + + +
            +
            +

            Locator constructor + Null safety +

            + +
            + Locator() +
            + + + + + + + +
            + + + + + +
            + + + + + + + + + + + + + + diff --git a/doc/api/locator/Locator/instance.html b/doc/api/locator/Locator/instance.html new file mode 100644 index 0000000..7c4b242 --- /dev/null +++ b/doc/api/locator/Locator/instance.html @@ -0,0 +1,142 @@ + + + + + + + + instance method - Locator class - locator library - Dart API + + + + + + + + + + + + + + + + + +
            + +
            + + +
            instance
            + +
            + +
            + + +
            +
            +

            instance method + Null safety +

            + +
            + + +GetIt +instance() + + + +
            + + + + +
            +

            Implementation

            +
            static GetIt instance() => GetIt.instance;
            +
            + + +
            + + + + + +
            + + + + + + + + + + + + + + diff --git a/doc/api/locator/Locator/locate.html b/doc/api/locator/Locator/locate.html new file mode 100644 index 0000000..c4e8ed4 --- /dev/null +++ b/doc/api/locator/Locator/locate.html @@ -0,0 +1,142 @@ + + + + + + + + locate method - Locator class - locator library - Dart API + + + + + + + + + + + + + + + + + +
            + +
            + + +
            locate
            + +
            + +
            + + +
            +
            +

            locate<T extends Object> method + Null safety +

            + +
            + + +T +locate<T extends Object>() + + + +
            + + + + +
            +

            Implementation

            +
            static T locate<T extends Object>() => instance().get<T>();
            +
            + + +
            + + + + + +
            + + + + + + + + + + + + + + diff --git a/doc/api/locator/Locator/setup.html b/doc/api/locator/Locator/setup.html new file mode 100644 index 0000000..ef21571 --- /dev/null +++ b/doc/api/locator/Locator/setup.html @@ -0,0 +1,152 @@ + + + + + + + + setup method - Locator class - locator library - Dart API + + + + + + + + + + + + + + + + + +
            + +
            + + +
            setup
            + +
            + +
            + + +
            +
            +

            setup method + Null safety +

            + +
            + + +Future<void> +setup() + + + +
            + + + + +
            +

            Implementation

            +
            static Future<void> setup() async {
            +  final locator = instance();
            +
            +  _registerAPIs();
            +  _registerViewModels();
            +
            +  await _registerServices(locator);
            +  await _registerRepos(locator);
            +
            +  _registerSingletons();
            +}
            +
            + + +
            + + + + + +
            + + + + + + + + + + + + + + diff --git a/doc/api/locator/locate.html b/doc/api/locator/locate.html new file mode 100644 index 0000000..92c6a6f --- /dev/null +++ b/doc/api/locator/locate.html @@ -0,0 +1,131 @@ + + + + + + + + locate property - locator library - Dart API + + + + + + + + + + + + + + + + + +
            + +
            + + +
            locate
            + +
            + +
            + + +
            +
            +

            locate top-level property + Null safety + +

            + + + +
            + +
            + GetIt + locate + + +
            + + + + +
            +

            Implementation

            +
            GetIt get locate => Locator.instance();
            +
            + +
            + + +
            + + + + + +
            + + + + + + + + + + + + + + diff --git a/doc/api/locator/locator-library.html b/doc/api/locator/locator-library.html new file mode 100644 index 0000000..4fbc413 --- /dev/null +++ b/doc/api/locator/locator-library.html @@ -0,0 +1,209 @@ + + + + + + + + locator library - Dart API + + + + + + + + + + + + + + + + + +
            + +
            + + +
            locator
            + +
            + +
            + + +
            +
            +

            locator library + Null safety + +

            + + + + +
            +

            Classes

            + +
            +
            + Locator + +
            +
            + +
            + +
            +
            + + + + +
            +

            Properties

            + +
            +
            + locate + GetIt + +
            +
            + +
            read-only
            + +
            + +
            +
            + + + + + +
            + + + + + +
            + + + + + + + + + + + + + + diff --git a/doc/api/main/main-library.html b/doc/api/main/main-library.html new file mode 100644 index 0000000..ddbaa4b --- /dev/null +++ b/doc/api/main/main-library.html @@ -0,0 +1,195 @@ + + + + + + + + main library - Dart API + + + + + + + + + + + + + + + + + +
            + +
            + + +
            main
            + +
            + +
            + + +
            +
            +

            main library + Null safety + +

            + + + + + + + + + +
            +

            Functions

            + +
            +
            + main() + Future<void> + + + +
            +
            + + + +
            + +
            +
            + + + + +
            + + + + + +
            + + + + + + + + + + + + + + diff --git a/doc/api/main/main.html b/doc/api/main/main.html new file mode 100644 index 0000000..db05feb --- /dev/null +++ b/doc/api/main/main.html @@ -0,0 +1,132 @@ + + + + + + + + main function - main library - Dart API + + + + + + + + + + + + + + + + + +
            + +
            + + +
            main
            + +
            + +
            + + +
            +
            +

            main function + Null safety + +

            + +
            + + +Future<void> +main() + +
            + + + + +
            +

            Implementation

            +
            Future<void> main() async {
            +  await runZonedGuarded(
            +    () async {
            +      await AppSetup.initialise();
            +      runApp(const McgApp());
            +    },
            +    AppSetup.onUncaughtException,
            +  );
            +}
            +
            + + +
            + + + + + +
            + + + + + + + + + + + + + + diff --git a/doc/api/static-assets/docs.dart.js b/doc/api/static-assets/docs.dart.js new file mode 100644 index 0000000..3407cb8 --- /dev/null +++ b/doc/api/static-assets/docs.dart.js @@ -0,0 +1,5808 @@ +(function dartProgram(){function copyProperties(a,b){var s=Object.keys(a) +for(var r=0;r=0)return true +if(typeof version=="function"&&version.length==0){var q=version() +if(/^\d+\.\d+\.\d+\.\d+$/.test(q))return true}}catch(p){}return false}() +function inherit(a,b){a.prototype.constructor=a +a.prototype["$i"+a.name]=a +if(b!=null){if(z){a.prototype.__proto__=b.prototype +return}var s=Object.create(b.prototype) +copyProperties(a.prototype,s) +a.prototype=s}}function inheritMany(a,b){for(var s=0;s").b(a))return new A.ce(a,b.l("@<0>").G(c).l("ce<1,2>")) +return new A.aO(a,b.l("@<0>").G(c).l("aO<1,2>"))}, +ja(a){return new A.d9("Field '"+a+"' has been assigned during initialization.")}, +hU(a){var s,r=a^48 +if(r<=9)return r +s=a|32 +if(97<=s&&s<=102)return s-87 +return-1}, +fM(a,b){a=a+b&536870911 +a=a+((a&524287)<<10)&536870911 +return a^a>>>6}, +lf(a){a=a+((a&67108863)<<3)&536870911 +a^=a>>>11 +return a+((a&16383)<<15)&536870911}, +bC(a,b,c){return a}, +kX(a,b,c,d){if(t.O.b(a))return new A.bL(a,b,c.l("@<0>").G(d).l("bL<1,2>")) +return new A.aY(a,b,c.l("@<0>").G(d).l("aY<1,2>"))}, +is(){return new A.bm("No element")}, +kP(){return new A.bm("Too many elements")}, +le(a,b){A.dw(a,0,J.ap(a)-1,b)}, +dw(a,b,c,d){if(c-b<=32)A.ld(a,b,c,d) +else A.lc(a,b,c,d)}, +ld(a,b,c,d){var s,r,q,p,o +for(s=b+1,r=J.b6(a);s<=c;++s){q=r.h(a,s) +p=s +while(!0){if(!(p>b&&d.$2(r.h(a,p-1),q)>0))break +o=p-1 +r.i(a,p,r.h(a,o)) +p=o}r.i(a,p,q)}}, +lc(a3,a4,a5,a6){var s,r,q,p,o,n,m,l,k,j,i=B.c.au(a5-a4+1,6),h=a4+i,g=a5-i,f=B.c.au(a4+a5,2),e=f-i,d=f+i,c=J.b6(a3),b=c.h(a3,h),a=c.h(a3,e),a0=c.h(a3,f),a1=c.h(a3,d),a2=c.h(a3,g) +if(a6.$2(b,a)>0){s=a +a=b +b=s}if(a6.$2(a1,a2)>0){s=a2 +a2=a1 +a1=s}if(a6.$2(b,a0)>0){s=a0 +a0=b +b=s}if(a6.$2(a,a0)>0){s=a0 +a0=a +a=s}if(a6.$2(b,a1)>0){s=a1 +a1=b +b=s}if(a6.$2(a0,a1)>0){s=a1 +a1=a0 +a0=s}if(a6.$2(a,a2)>0){s=a2 +a2=a +a=s}if(a6.$2(a,a0)>0){s=a0 +a0=a +a=s}if(a6.$2(a1,a2)>0){s=a2 +a2=a1 +a1=s}c.i(a3,h,b) +c.i(a3,f,a0) +c.i(a3,g,a2) +c.i(a3,e,c.h(a3,a4)) +c.i(a3,d,c.h(a3,a5)) +r=a4+1 +q=a5-1 +if(J.ba(a6.$2(a,a1),0)){for(p=r;p<=q;++p){o=c.h(a3,p) +n=a6.$2(o,a) +if(n===0)continue +if(n<0){if(p!==r){c.i(a3,p,c.h(a3,r)) +c.i(a3,r,o)}++r}else for(;!0;){n=a6.$2(c.h(a3,q),a) +if(n>0){--q +continue}else{m=q-1 +if(n<0){c.i(a3,p,c.h(a3,r)) +l=r+1 +c.i(a3,r,c.h(a3,q)) +c.i(a3,q,o) +q=m +r=l +break}else{c.i(a3,p,c.h(a3,q)) +c.i(a3,q,o) +q=m +break}}}}k=!0}else{for(p=r;p<=q;++p){o=c.h(a3,p) +if(a6.$2(o,a)<0){if(p!==r){c.i(a3,p,c.h(a3,r)) +c.i(a3,r,o)}++r}else if(a6.$2(o,a1)>0)for(;!0;)if(a6.$2(c.h(a3,q),a1)>0){--q +if(qg){for(;J.ba(a6.$2(c.h(a3,r),a),0);)++r +for(;J.ba(a6.$2(c.h(a3,q),a1),0);)--q +for(p=r;p<=q;++p){o=c.h(a3,p) +if(a6.$2(o,a)===0){if(p!==r){c.i(a3,p,c.h(a3,r)) +c.i(a3,r,o)}++r}else if(a6.$2(o,a1)===0)for(;!0;)if(a6.$2(c.h(a3,q),a1)===0){--q +if(q36)throw A.b(A.T(b,2,36,"radix",n)) +if(b===10&&s!=null)return parseInt(a,10) +if(b<10||s==null){r=b<=10?47+b:86+b +q=m[1] +for(p=q.length,o=0;or)return n}return parseInt(a,b)}, +fI(a){return A.l_(a)}, +l_(a){var s,r,q,p,o +if(a instanceof A.q)return A.Q(A.b8(a),null) +s=J.aI(a) +if(s===B.M||s===B.O||t.o.b(a)){r=B.l(a) +q=r!=="Object"&&r!=="" +if(q)return r +p=a.constructor +if(typeof p=="function"){o=p.name +if(typeof o=="string")q=o!=="Object"&&o!=="" +else q=!1 +if(q)return o}}return A.Q(A.b8(a),null)}, +l8(a,b,c){var s,r,q,p +if(c<=500&&b===0&&c===a.length)return String.fromCharCode.apply(null,a) +for(s=b,r="";s>>0,s&1023|56320)}}throw A.b(A.T(a,0,1114111,null,null))}, +b0(a){if(a.date===void 0)a.date=new Date(a.a) +return a.date}, +l7(a){var s=A.b0(a).getFullYear()+0 +return s}, +l5(a){var s=A.b0(a).getMonth()+1 +return s}, +l1(a){var s=A.b0(a).getDate()+0 +return s}, +l2(a){var s=A.b0(a).getHours()+0 +return s}, +l4(a){var s=A.b0(a).getMinutes()+0 +return s}, +l6(a){var s=A.b0(a).getSeconds()+0 +return s}, +l3(a){var s=A.b0(a).getMilliseconds()+0 +return s}, +ax(a,b,c){var s,r,q={} +q.a=0 +s=[] +r=[] +q.a=b.length +B.b.I(s,b) +q.b="" +if(c!=null&&c.a!==0)c.v(0,new A.fH(q,r,s)) +return J.kx(a,new A.fn(B.Z,0,s,r,0))}, +l0(a,b,c){var s,r,q=c==null||c.a===0 +if(q){s=b.length +if(s===0){if(!!a.$0)return a.$0()}else if(s===1){if(!!a.$1)return a.$1(b[0])}else if(s===2){if(!!a.$2)return a.$2(b[0],b[1])}else if(s===3){if(!!a.$3)return a.$3(b[0],b[1],b[2])}else if(s===4){if(!!a.$4)return a.$4(b[0],b[1],b[2],b[3])}else if(s===5)if(!!a.$5)return a.$5(b[0],b[1],b[2],b[3],b[4]) +r=a[""+"$"+s] +if(r!=null)return r.apply(a,b)}return A.kZ(a,b,c)}, +kZ(a,b,c){var s,r,q,p,o,n,m,l,k,j,i,h,g,f=b.length,e=a.$R +if(fn)return A.ax(a,b,null) +if(fe)return A.ax(a,b,c) +l=A.fu(b,!0,t.z) +k=Object.keys(q) +if(c==null)for(r=k.length,j=0;j=s)return A.z(b,a,r,null,s) +return A.l9(b,r)}, +mC(a){return new A.Z(!0,a,null,null)}, +b(a){var s,r +if(a==null)a=new A.dm() +s=new Error() +s.dartException=a +r=A.n5 +if("defineProperty" in Object){Object.defineProperty(s,"message",{get:r}) +s.name=""}else s.toString=r +return s}, +n5(){return J.bc(this.dartException)}, +aK(a){throw A.b(a)}, +b9(a){throw A.b(A.ar(a))}, +ak(a){var s,r,q,p,o,n +a=A.k7(a.replace(String({}),"$receiver$")) +s=a.match(/\\\$[a-zA-Z]+\\\$/g) +if(s==null)s=A.n([],t.s) +r=s.indexOf("\\$arguments\\$") +q=s.indexOf("\\$argumentsExpr\\$") +p=s.indexOf("\\$expr\\$") +o=s.indexOf("\\$method\\$") +n=s.indexOf("\\$receiver\\$") +return new A.fP(a.replace(new RegExp("\\\\\\$arguments\\\\\\$","g"),"((?:x|[^x])*)").replace(new RegExp("\\\\\\$argumentsExpr\\\\\\$","g"),"((?:x|[^x])*)").replace(new RegExp("\\\\\\$expr\\\\\\$","g"),"((?:x|[^x])*)").replace(new RegExp("\\\\\\$method\\\\\\$","g"),"((?:x|[^x])*)").replace(new RegExp("\\\\\\$receiver\\\\\\$","g"),"((?:x|[^x])*)"),r,q,p,o,n)}, +fQ(a){return function($expr$){var $argumentsExpr$="$arguments$" +try{$expr$.$method$($argumentsExpr$)}catch(s){return s.message}}(a)}, +jo(a){return function($expr$){try{$expr$.$method$}catch(s){return s.message}}(a)}, +iu(a,b){var s=b==null,r=s?null:b.method +return new A.d8(a,r,s?null:b.receiver)}, +ao(a){if(a==null)return new A.fE(a) +if(a instanceof A.bN)return A.aJ(a,a.a) +if(typeof a!=="object")return a +if("dartException" in a)return A.aJ(a,a.dartException) +return A.mA(a)}, +aJ(a,b){if(t.U.b(b))if(b.$thrownJsError==null)b.$thrownJsError=a +return b}, +mA(a){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e=null +if(!("message" in a))return a +s=a.message +if("number" in a&&typeof a.number=="number"){r=a.number +q=r&65535 +if((B.c.a1(r,16)&8191)===10)switch(q){case 438:return A.aJ(a,A.iu(A.p(s)+" (Error "+q+")",e)) +case 445:case 5007:p=A.p(s) +return A.aJ(a,new A.c5(p+" (Error "+q+")",e))}}if(a instanceof TypeError){o=$.ka() +n=$.kb() +m=$.kc() +l=$.kd() +k=$.kg() +j=$.kh() +i=$.kf() +$.ke() +h=$.kj() +g=$.ki() +f=o.L(s) +if(f!=null)return A.aJ(a,A.iu(s,f)) +else{f=n.L(s) +if(f!=null){f.method="call" +return A.aJ(a,A.iu(s,f))}else{f=m.L(s) +if(f==null){f=l.L(s) +if(f==null){f=k.L(s) +if(f==null){f=j.L(s) +if(f==null){f=i.L(s) +if(f==null){f=l.L(s) +if(f==null){f=h.L(s) +if(f==null){f=g.L(s) +p=f!=null}else p=!0}else p=!0}else p=!0}else p=!0}else p=!0}else p=!0}else p=!0 +if(p)return A.aJ(a,new A.c5(s,f==null?e:f.method))}}return A.aJ(a,new A.dL(typeof s=="string"?s:""))}if(a instanceof RangeError){if(typeof s=="string"&&s.indexOf("call stack")!==-1)return new A.c8() +s=function(b){try{return String(b)}catch(d){}return null}(a) +return A.aJ(a,new A.Z(!1,e,e,typeof s=="string"?s.replace(/^RangeError:\s*/,""):s))}if(typeof InternalError=="function"&&a instanceof InternalError)if(typeof s=="string"&&s==="too much recursion")return new A.c8() +return a}, +b7(a){var s +if(a instanceof A.bN)return a.b +if(a==null)return new A.cu(a) +s=a.$cachedTrace +if(s!=null)return s +return a.$cachedTrace=new A.cu(a)}, +k3(a){if(a==null||typeof a!="object")return J.eZ(a) +else return A.ds(a)}, +mS(a,b,c,d,e,f){switch(b){case 0:return a.$0() +case 1:return a.$1(c) +case 2:return a.$2(c,d) +case 3:return a.$3(c,d,e) +case 4:return a.$4(c,d,e,f)}throw A.b(new A.h7("Unsupported number of arguments for wrapped closure"))}, +bD(a,b){var s +if(a==null)return null +s=a.$identity +if(!!s)return s +s=function(c,d,e){return function(f,g,h,i){return e(c,d,f,g,h,i)}}(a,b,A.mS) +a.$identity=s +return s}, +kG(a2){var s,r,q,p,o,n,m,l,k,j,i=a2.co,h=a2.iS,g=a2.iI,f=a2.nDA,e=a2.aI,d=a2.fs,c=a2.cs,b=d[0],a=c[0],a0=i[b],a1=a2.fT +a1.toString +s=h?Object.create(new A.dz().constructor.prototype):Object.create(new A.bf(null,null).constructor.prototype) +s.$initialize=s.constructor +if(h)r=function static_tear_off(){this.$initialize()} +else r=function tear_off(a3,a4){this.$initialize(a3,a4)} +s.constructor=r +r.prototype=s +s.$_name=b +s.$_target=a0 +q=!h +if(q)p=A.j5(b,a0,g,f) +else{s.$static_name=b +p=a0}s.$S=A.kC(a1,h,g) +s[a]=p +for(o=p,n=1;n=0}, +mI(a){if(a.indexOf("$",0)>=0)return a.replace(/\$/g,"$$$$") +return a}, +k7(a){if(/[[\]{}()*+?.\\^$|]/.test(a))return a.replace(/[[\]{}()*+?.\\^$|]/g,"\\$&") +return a}, +n1(a,b,c){var s=A.n2(a,b,c) +return s}, +n2(a,b,c){var s,r,q,p +if(b===""){if(a==="")return c +s=a.length +r=""+c +for(q=0;q=0)return a.split(b).join(c) +return a.replace(new RegExp(A.k7(b),"g"),A.mI(c))}, +bG:function bG(a,b){this.a=a +this.$ti=b}, +bF:function bF(){}, +a6:function a6(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.$ti=d}, +fn:function fn(a,b,c,d,e){var _=this +_.a=a +_.c=b +_.d=c +_.e=d +_.f=e}, +fH:function fH(a,b,c){this.a=a +this.b=b +this.c=c}, +fP:function fP(a,b,c,d,e,f){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f}, +c5:function c5(a,b){this.a=a +this.b=b}, +d8:function d8(a,b,c){this.a=a +this.b=b +this.c=c}, +dL:function dL(a){this.a=a}, +fE:function fE(a){this.a=a}, +bN:function bN(a,b){this.a=a +this.b=b}, +cu:function cu(a){this.a=a +this.b=null}, +aP:function aP(){}, +cT:function cT(){}, +cU:function cU(){}, +dF:function dF(){}, +dz:function dz(){}, +bf:function bf(a,b){this.a=a +this.b=b}, +du:function du(a){this.a=a}, +hm:function hm(){}, +aV:function aV(a){var _=this +_.a=0 +_.f=_.e=_.d=_.c=_.b=null +_.r=0 +_.$ti=a}, +fs:function fs(a,b){var _=this +_.a=a +_.b=b +_.d=_.c=null}, +aX:function aX(a,b){this.a=a +this.$ti=b}, +db:function db(a,b){var _=this +_.a=a +_.b=b +_.d=_.c=null}, +hV:function hV(a){this.a=a}, +hW:function hW(a){this.a=a}, +hX:function hX(a){this.a=a}, +fo:function fo(a,b){var _=this +_.a=a +_.b=b +_.d=_.c=null}, +m7(a){return a}, +kY(a){return new Int8Array(a)}, +am(a,b,c){if(a>>>0!==a||a>=c)throw A.b(A.cI(b,a))}, +b_:function b_(){}, +bj:function bj(){}, +aZ:function aZ(){}, +c0:function c0(){}, +dg:function dg(){}, +dh:function dh(){}, +di:function di(){}, +dj:function dj(){}, +dk:function dk(){}, +c1:function c1(){}, +c2:function c2(){}, +cl:function cl(){}, +cm:function cm(){}, +cn:function cn(){}, +co:function co(){}, +jk(a,b){var s=b.c +return s==null?b.c=A.iB(a,b.y,!0):s}, +jj(a,b){var s=b.c +return s==null?b.c=A.cy(a,"a8",[b.y]):s}, +jl(a){var s=a.x +if(s===6||s===7||s===8)return A.jl(a.y) +return s===11||s===12}, +lb(a){return a.at}, +cJ(a){return A.eK(v.typeUniverse,a,!1)}, +aG(a,b,a0,a1){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c=b.x +switch(c){case 5:case 1:case 2:case 3:case 4:return b +case 6:s=b.y +r=A.aG(a,s,a0,a1) +if(r===s)return b +return A.jC(a,r,!0) +case 7:s=b.y +r=A.aG(a,s,a0,a1) +if(r===s)return b +return A.iB(a,r,!0) +case 8:s=b.y +r=A.aG(a,s,a0,a1) +if(r===s)return b +return A.jB(a,r,!0) +case 9:q=b.z +p=A.cH(a,q,a0,a1) +if(p===q)return b +return A.cy(a,b.y,p) +case 10:o=b.y +n=A.aG(a,o,a0,a1) +m=b.z +l=A.cH(a,m,a0,a1) +if(n===o&&l===m)return b +return A.iz(a,n,l) +case 11:k=b.y +j=A.aG(a,k,a0,a1) +i=b.z +h=A.mx(a,i,a0,a1) +if(j===k&&h===i)return b +return A.jA(a,j,h) +case 12:g=b.z +a1+=g.length +f=A.cH(a,g,a0,a1) +o=b.y +n=A.aG(a,o,a0,a1) +if(f===g&&n===o)return b +return A.iA(a,n,f,!0) +case 13:e=b.y +if(e0;--p)a4.push("T"+(q+p)) +for(o=t.X,n=t._,m="<",l="",p=0;p0){a0+=a1+"[" +for(a1="",p=0;p0){a0+=a1+"{" +for(a1="",p=0;p "+a}, +Q(a,b){var s,r,q,p,o,n,m=a.x +if(m===5)return"erased" +if(m===2)return"dynamic" +if(m===3)return"void" +if(m===1)return"Never" +if(m===4)return"any" +if(m===6){s=A.Q(a.y,b) +return s}if(m===7){r=a.y +s=A.Q(r,b) +q=r.x +return(q===11||q===12?"("+s+")":s)+"?"}if(m===8)return"FutureOr<"+A.Q(a.y,b)+">" +if(m===9){p=A.mz(a.y) +o=a.z +return o.length>0?p+("<"+A.mu(o,b)+">"):p}if(m===11)return A.jN(a,b,null) +if(m===12)return A.jN(a.y,b,a.z) +if(m===13){n=a.y +return b[b.length-1-n]}return"?"}, +mz(a){var s=v.mangledGlobalNames[a] +if(s!=null)return s +return"minified:"+a}, +lH(a,b){var s=a.tR[b] +for(;typeof s=="string";)s=a.tR[s] +return s}, +lG(a,b){var s,r,q,p,o,n=a.eT,m=n[b] +if(m==null)return A.eK(a,b,!1) +else if(typeof m=="number"){s=m +r=A.cz(a,5,"#") +q=A.hx(s) +for(p=0;p0)p+="<"+A.eJ(c)+">" +s=a.eC.get(p) +if(s!=null)return s +r=new A.U(null,null) +r.x=9 +r.y=b +r.z=c +if(c.length>0)r.c=c[0] +r.at=p +q=A.aF(a,r) +a.eC.set(p,q) +return q}, +iz(a,b,c){var s,r,q,p,o,n +if(b.x===10){s=b.y +r=b.z.concat(c)}else{r=c +s=b}q=s.at+(";<"+A.eJ(r)+">") +p=a.eC.get(q) +if(p!=null)return p +o=new A.U(null,null) +o.x=10 +o.y=s +o.z=r +o.at=q +n=A.aF(a,o) +a.eC.set(q,n) +return n}, +jA(a,b,c){var s,r,q,p,o,n=b.at,m=c.a,l=m.length,k=c.b,j=k.length,i=c.c,h=i.length,g="("+A.eJ(m) +if(j>0){s=l>0?",":"" +g+=s+"["+A.eJ(k)+"]"}if(h>0){s=l>0?",":"" +g+=s+"{"+A.lx(i)+"}"}r=n+(g+")") +q=a.eC.get(r) +if(q!=null)return q +p=new A.U(null,null) +p.x=11 +p.y=b +p.z=c +p.at=r +o=A.aF(a,p) +a.eC.set(r,o) +return o}, +iA(a,b,c,d){var s,r=b.at+("<"+A.eJ(c)+">"),q=a.eC.get(r) +if(q!=null)return q +s=A.lz(a,b,c,r,d) +a.eC.set(r,s) +return s}, +lz(a,b,c,d,e){var s,r,q,p,o,n,m,l +if(e){s=c.length +r=A.hx(s) +for(q=0,p=0;p0){n=A.aG(a,b,r,0) +m=A.cH(a,c,r,0) +return A.iA(a,n,m,c!==m)}}l=new A.U(null,null) +l.x=12 +l.y=b +l.z=c +l.at=d +return A.aF(a,l)}, +jw(a,b,c,d){return{u:a,e:b,r:c,s:[],p:0,n:d}}, +jy(a){var s,r,q,p,o,n,m,l,k,j,i,h=a.r,g=a.s +for(s=h.length,r=0;r=48&&q<=57)r=A.lr(r+1,q,h,g) +else if((((q|32)>>>0)-97&65535)<26||q===95||q===36)r=A.jx(a,r,h,g,!1) +else if(q===46)r=A.jx(a,r,h,g,!0) +else{++r +switch(q){case 44:break +case 58:g.push(!1) +break +case 33:g.push(!0) +break +case 59:g.push(A.aE(a.u,a.e,g.pop())) +break +case 94:g.push(A.lC(a.u,g.pop())) +break +case 35:g.push(A.cz(a.u,5,"#")) +break +case 64:g.push(A.cz(a.u,2,"@")) +break +case 126:g.push(A.cz(a.u,3,"~")) +break +case 60:g.push(a.p) +a.p=g.length +break +case 62:p=a.u +o=g.splice(a.p) +A.iy(a.u,a.e,o) +a.p=g.pop() +n=g.pop() +if(typeof n=="string")g.push(A.cy(p,n,o)) +else{m=A.aE(p,a.e,n) +switch(m.x){case 11:g.push(A.iA(p,m,o,a.n)) +break +default:g.push(A.iz(p,m,o)) +break}}break +case 38:A.ls(a,g) +break +case 42:p=a.u +g.push(A.jC(p,A.aE(p,a.e,g.pop()),a.n)) +break +case 63:p=a.u +g.push(A.iB(p,A.aE(p,a.e,g.pop()),a.n)) +break +case 47:p=a.u +g.push(A.jB(p,A.aE(p,a.e,g.pop()),a.n)) +break +case 40:g.push(a.p) +a.p=g.length +break +case 41:p=a.u +l=new A.e6() +k=p.sEA +j=p.sEA +n=g.pop() +if(typeof n=="number")switch(n){case-1:k=g.pop() +break +case-2:j=g.pop() +break +default:g.push(n) +break}else g.push(n) +o=g.splice(a.p) +A.iy(a.u,a.e,o) +a.p=g.pop() +l.a=o +l.b=k +l.c=j +g.push(A.jA(p,A.aE(p,a.e,g.pop()),l)) +break +case 91:g.push(a.p) +a.p=g.length +break +case 93:o=g.splice(a.p) +A.iy(a.u,a.e,o) +a.p=g.pop() +g.push(o) +g.push(-1) +break +case 123:g.push(a.p) +a.p=g.length +break +case 125:o=g.splice(a.p) +A.lu(a.u,a.e,o) +a.p=g.pop() +g.push(o) +g.push(-2) +break +default:throw"Bad character "+q}}}i=g.pop() +return A.aE(a.u,a.e,i)}, +lr(a,b,c,d){var s,r,q=b-48 +for(s=c.length;a=48&&r<=57))break +q=q*10+(r-48)}d.push(q) +return a}, +jx(a,b,c,d,e){var s,r,q,p,o,n,m=b+1 +for(s=c.length;m>>0)-97&65535)<26||r===95||r===36))q=r>=48&&r<=57 +else q=!0 +if(!q)break}}p=c.substring(b,m) +if(e){s=a.u +o=a.e +if(o.x===10)o=o.y +n=A.lH(s,o.y)[p] +if(n==null)A.aK('No "'+p+'" in "'+A.lb(o)+'"') +d.push(A.hv(s,o,n))}else d.push(p) +return m}, +ls(a,b){var s=b.pop() +if(0===s){b.push(A.cz(a.u,1,"0&")) +return}if(1===s){b.push(A.cz(a.u,4,"1&")) +return}throw A.b(A.f0("Unexpected extended operation "+A.p(s)))}, +aE(a,b,c){if(typeof c=="string")return A.cy(a,c,a.sEA) +else if(typeof c=="number")return A.lt(a,b,c) +else return c}, +iy(a,b,c){var s,r=c.length +for(s=0;sn)return!1 +m=n-o +l=s.b +k=r.b +j=l.length +i=k.length +if(o+j=d)return!1 +a1=f[b] +b+=3 +if(a00?new Array(q):v.typeUniverse.sEA +for(o=0;o0?new Array(a):v.typeUniverse.sEA}, +U:function U(a,b){var _=this +_.a=a +_.b=b +_.w=_.r=_.c=null +_.x=0 +_.at=_.as=_.Q=_.z=_.y=null}, +e6:function e6(){this.c=this.b=this.a=null}, +eI:function eI(a){this.a=a}, +e3:function e3(){}, +cx:function cx(a){this.a=a}, +lk(){var s,r,q={} +if(self.scheduleImmediate!=null)return A.mD() +if(self.MutationObserver!=null&&self.document!=null){s=self.document.createElement("div") +r=self.document.createElement("span") +q.a=null +new self.MutationObserver(A.bD(new A.h2(q),1)).observe(s,{childList:true}) +return new A.h1(q,s,r)}else if(self.setImmediate!=null)return A.mE() +return A.mF()}, +ll(a){self.scheduleImmediate(A.bD(new A.h3(a),0))}, +lm(a){self.setImmediate(A.bD(new A.h4(a),0))}, +ln(a){A.lv(0,a)}, +lv(a,b){var s=new A.ht() +s.bA(a,b) +return s}, +mo(a){return new A.dQ(new A.F($.B,a.l("F<0>")),a.l("dQ<0>"))}, +m3(a,b){a.$2(0,null) +b.b=!0 +return b.a}, +m0(a,b){A.m4(a,b)}, +m2(a,b){b.az(0,a)}, +m1(a,b){b.aA(A.ao(a),A.b7(a))}, +m4(a,b){var s,r,q=new A.hA(b),p=new A.hB(b) +if(a instanceof A.F)a.aY(q,p,t.z) +else{s=t.z +if(t.c.b(a))a.aJ(q,p,s) +else{r=new A.F($.B,t.aY) +r.a=8 +r.c=a +r.aY(q,p,s)}}}, +mB(a){var s=function(b,c){return function(d,e){while(true)try{b(d,e) +break}catch(r){e=r +d=c}}}(a,1) +return $.B.bh(new A.hL(s))}, +f1(a,b){var s=A.bC(a,"error",t.K) +return new A.cP(s,b==null?A.j_(a):b)}, +j_(a){var s +if(t.U.b(a)){s=a.ga5() +if(s!=null)return s}return B.K}, +iw(a,b){var s,r +for(;s=a.a,(s&4)!==0;)a=a.c +if((s&24)!==0){r=b.ar() +b.ah(a) +A.cg(b,r)}else{r=b.c +b.a=b.a&1|4 +b.c=a +a.aV(r)}}, +cg(a,b){var s,r,q,p,o,n,m,l,k,j,i,h,g,f={},e=f.a=a +for(s=t.c;!0;){r={} +q=e.a +p=(q&16)===0 +o=!p +if(b==null){if(o&&(q&1)===0){e=e.c +A.iO(e.a,e.b)}return}r.a=b +n=b.a +for(e=b;n!=null;e=n,n=m){e.a=null +A.cg(f.a,e) +r.a=n +m=n.a}q=f.a +l=q.c +r.b=o +r.c=l +if(p){k=e.c +k=(k&1)!==0||(k&15)===8}else k=!0 +if(k){j=e.b.b +if(o){q=q.b===j +q=!(q||q)}else q=!1 +if(q){A.iO(l.a,l.b) +return}i=$.B +if(i!==j)$.B=j +else i=null +e=e.c +if((e&15)===8)new A.hi(r,f,o).$0() +else if(p){if((e&1)!==0)new A.hh(r,l).$0()}else if((e&2)!==0)new A.hg(f,r).$0() +if(i!=null)$.B=i +e=r.c +if(s.b(e)){q=r.a.$ti +q=q.l("a8<2>").b(e)||!q.z[1].b(e)}else q=!1 +if(q){h=r.a.b +if((e.a&24)!==0){g=h.c +h.c=null +b=h.a6(g) +h.a=e.a&30|h.a&1 +h.c=e.c +f.a=e +continue}else A.iw(e,h) +return}}h=r.a.b +g=h.c +h.c=null +b=h.a6(g) +e=r.b +q=r.c +if(!e){h.a=8 +h.c=q}else{h.a=h.a&1|16 +h.c=q}f.a=h +e=h}}, +mr(a,b){if(t.C.b(a))return b.bh(a) +if(t.v.b(a))return a +throw A.b(A.ip(a,"onError",u.c))}, +mp(){var s,r +for(s=$.bz;s!=null;s=$.bz){$.cG=null +r=s.b +$.bz=r +if(r==null)$.cF=null +s.a.$0()}}, +mw(){$.iK=!0 +try{A.mp()}finally{$.cG=null +$.iK=!1 +if($.bz!=null)$.iT().$1(A.jW())}}, +jT(a){var s=new A.dR(a),r=$.cF +if(r==null){$.bz=$.cF=s +if(!$.iK)$.iT().$1(A.jW())}else $.cF=r.b=s}, +mv(a){var s,r,q,p=$.bz +if(p==null){A.jT(a) +$.cG=$.cF +return}s=new A.dR(a) +r=$.cG +if(r==null){s.b=p +$.bz=$.cG=s}else{q=r.b +s.b=q +$.cG=r.b=s +if(q==null)$.cF=s}}, +n_(a){var s=null,r=$.B +if(B.d===r){A.bA(s,s,B.d,a) +return}A.bA(s,s,r,r.b2(a))}, +np(a){A.bC(a,"stream",t.K) +return new A.ev()}, +iO(a,b){A.mv(new A.hK(a,b))}, +jR(a,b,c,d){var s,r=$.B +if(r===c)return d.$0() +$.B=c +s=r +try{r=d.$0() +return r}finally{$.B=s}}, +mt(a,b,c,d,e){var s,r=$.B +if(r===c)return d.$1(e) +$.B=c +s=r +try{r=d.$1(e) +return r}finally{$.B=s}}, +ms(a,b,c,d,e,f){var s,r=$.B +if(r===c)return d.$2(e,f) +$.B=c +s=r +try{r=d.$2(e,f) +return r}finally{$.B=s}}, +bA(a,b,c,d){if(B.d!==c)d=c.b2(d) +A.jT(d)}, +h2:function h2(a){this.a=a}, +h1:function h1(a,b,c){this.a=a +this.b=b +this.c=c}, +h3:function h3(a){this.a=a}, +h4:function h4(a){this.a=a}, +ht:function ht(){}, +hu:function hu(a,b){this.a=a +this.b=b}, +dQ:function dQ(a,b){this.a=a +this.b=!1 +this.$ti=b}, +hA:function hA(a){this.a=a}, +hB:function hB(a){this.a=a}, +hL:function hL(a){this.a=a}, +cP:function cP(a,b){this.a=a +this.b=b}, +dU:function dU(){}, +cb:function cb(a,b){this.a=a +this.$ti=b}, +bu:function bu(a,b,c,d,e){var _=this +_.a=null +_.b=a +_.c=b +_.d=c +_.e=d +_.$ti=e}, +F:function F(a,b){var _=this +_.a=0 +_.b=a +_.c=null +_.$ti=b}, +h8:function h8(a,b){this.a=a +this.b=b}, +hf:function hf(a,b){this.a=a +this.b=b}, +hb:function hb(a){this.a=a}, +hc:function hc(a){this.a=a}, +hd:function hd(a,b,c){this.a=a +this.b=b +this.c=c}, +ha:function ha(a,b){this.a=a +this.b=b}, +he:function he(a,b){this.a=a +this.b=b}, +h9:function h9(a,b,c){this.a=a +this.b=b +this.c=c}, +hi:function hi(a,b,c){this.a=a +this.b=b +this.c=c}, +hj:function hj(a){this.a=a}, +hh:function hh(a,b){this.a=a +this.b=b}, +hg:function hg(a,b){this.a=a +this.b=b}, +dR:function dR(a){this.a=a +this.b=null}, +dB:function dB(){}, +ev:function ev(){}, +hz:function hz(){}, +hK:function hK(a,b){this.a=a +this.b=b}, +hn:function hn(){}, +ho:function ho(a,b){this.a=a +this.b=b}, +ft(a,b){return new A.aV(a.l("@<0>").G(b).l("aV<1,2>"))}, +bW(a){return new A.ch(a.l("ch<0>"))}, +ix(){var s=Object.create(null) +s[""]=s +delete s[""] +return s}, +lq(a,b){var s=new A.ci(a,b) +s.c=a.e +return s}, +kO(a,b,c){var s,r +if(A.iM(a)){if(b==="("&&c===")")return"(...)" +return b+"..."+c}s=A.n([],t.s) +$.b5.push(a) +try{A.mn(a,s)}finally{$.b5.pop()}r=A.jm(b,s,", ")+c +return r.charCodeAt(0)==0?r:r}, +ir(a,b,c){var s,r +if(A.iM(a))return b+"..."+c +s=new A.H(b) +$.b5.push(a) +try{r=s +r.a=A.jm(r.a,a,", ")}finally{$.b5.pop()}s.a+=c +r=s.a +return r.charCodeAt(0)==0?r:r}, +iM(a){var s,r +for(s=$.b5.length,r=0;r100){while(!0){if(!(k>75&&j>3))break +k-=b.pop().length+2;--j}b.push("...") +return}}q=A.p(p) +r=A.p(o) +k+=r.length+q.length+4}}if(j>b.length+2){k+=5 +m="..."}else m=null +while(!0){if(!(k>80&&b.length>3))break +k-=b.pop().length+2 +if(m==null){k+=5 +m="..."}}if(m!=null)b.push(m) +b.push(q) +b.push(r)}, +jb(a,b){var s,r,q=A.bW(b) +for(s=a.length,r=0;r=0)return null +return r}return null}, +lj(a,b,c,d){var s=a?$.kl():$.kk() +if(s==null)return null +if(0===c&&d===b.length)return A.jt(s,b) +return A.jt(s,b.subarray(c,A.bk(c,d,b.length)))}, +jt(a,b){var s,r +try{s=a.decode(b) +return s}catch(r){}return null}, +j0(a,b,c,d,e,f){if(B.c.ad(f,4)!==0)throw A.b(A.G("Invalid base64 padding, padded length must be multiple of four, is "+f,a,c)) +if(d+e!==f)throw A.b(A.G("Invalid base64 padding, '=' not at the end",a,b)) +if(e>2)throw A.b(A.G("Invalid base64 padding, more than two '=' characters",a,b))}, +lY(a){switch(a){case 65:return"Missing extension byte" +case 67:return"Unexpected extension byte" +case 69:return"Invalid UTF-8 byte" +case 71:return"Overlong encoding" +case 73:return"Out of unicode range" +case 75:return"Encoded surrogate" +case 77:return"Unfinished UTF-8 octet sequence" +default:return""}}, +lX(a,b,c){var s,r,q,p=c-b,o=new Uint8Array(p) +for(s=J.b6(a),r=0;r>>0!==0?255:q}return o}, +eb:function eb(a,b){this.a=a +this.b=b +this.c=null}, +ec:function ec(a){this.a=a}, +h_:function h_(){}, +fZ:function fZ(){}, +f5:function f5(){}, +f6:function f6(){}, +cW:function cW(){}, +cY:function cY(){}, +fh:function fh(){}, +fm:function fm(){}, +fl:function fl(){}, +fq:function fq(){}, +fr:function fr(a){this.a=a}, +fX:function fX(){}, +fY:function fY(a){this.a=a}, +hw:function hw(a){this.a=a +this.b=16 +this.c=0}, +ie(a,b){var s=A.jh(a,b) +if(s!=null)return s +throw A.b(A.G(a,null,null))}, +kL(a){if(a instanceof A.aP)return a.k(0) +return"Instance of '"+A.fI(a)+"'"}, +kM(a,b){a=A.b(a) +a.stack=b.k(0) +throw a +throw A.b("unreachable")}, +jc(a,b,c,d){var s,r=J.kQ(a,d) +if(a!==0&&b!=null)for(s=0;s")) +for(s=a.gA(a);s.q();)r.push(s.gt(s)) +return r}, +fu(a,b,c){var s=A.kW(a,c) +return s}, +kW(a,b){var s,r +if(Array.isArray(a))return A.n(a.slice(0),b.l("A<0>")) +s=A.n([],b.l("A<0>")) +for(r=J.aL(a);r.q();)s.push(r.gt(r)) +return s}, +jn(a,b,c){var s=A.l8(a,b,A.bk(b,c,a.length)) +return s}, +la(a){return new A.fo(a,A.kV(a,!1,!0,!1,!1,!1))}, +jm(a,b,c){var s=J.aL(b) +if(!s.q())return a +if(c.length===0){do a+=A.p(s.gt(s)) +while(s.q())}else{a+=A.p(s.gt(s)) +for(;s.q();)a=a+c+A.p(s.gt(s))}return a}, +je(a,b,c,d){return new A.dl(a,b,c,d)}, +kI(a){var s=Math.abs(a),r=a<0?"-":"" +if(s>=1000)return""+a +if(s>=100)return r+"0"+s +if(s>=10)return r+"00"+s +return r+"000"+s}, +kJ(a){if(a>=100)return""+a +if(a>=10)return"0"+a +return"00"+a}, +d0(a){if(a>=10)return""+a +return"0"+a}, +bg(a){if(typeof a=="number"||A.hI(a)||a==null)return J.bc(a) +if(typeof a=="string")return JSON.stringify(a) +return A.kL(a)}, +f0(a){return new A.cO(a)}, +aq(a,b){return new A.Z(!1,null,b,a)}, +ip(a,b,c){return new A.Z(!0,a,b,c)}, +l9(a,b){return new A.c6(null,null,!0,a,b,"Value not in range")}, +T(a,b,c,d,e){return new A.c6(b,c,!0,a,d,"Invalid value")}, +bk(a,b,c){if(0>a||a>c)throw A.b(A.T(a,0,c,"start",null)) +if(b!=null){if(a>b||b>c)throw A.b(A.T(b,a,c,"end",null)) +return b}return c}, +ji(a,b){if(a<0)throw A.b(A.T(a,0,null,b,null)) +return a}, +z(a,b,c,d,e){var s=e==null?J.ap(b):e +return new A.d4(s,!0,a,c,"Index out of range")}, +r(a){return new A.dN(a)}, +jp(a){return new A.dK(a)}, +c9(a){return new A.bm(a)}, +ar(a){return new A.cX(a)}, +G(a,b,c){return new A.fj(a,b,c)}, +jf(a,b,c,d){var s,r=B.e.gu(a) +b=B.e.gu(b) +c=B.e.gu(c) +d=B.e.gu(d) +s=$.kp() +return A.lf(A.fM(A.fM(A.fM(A.fM(s,r),b),c),d))}, +lh(a5){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e,d,c,b,a,a0,a1,a2,a3=null,a4=a5.length +if(a4>=5){s=((B.a.p(a5,4)^58)*3|B.a.p(a5,0)^100|B.a.p(a5,1)^97|B.a.p(a5,2)^116|B.a.p(a5,3)^97)>>>0 +if(s===0)return A.jq(a4=14)r[7]=a4 +q=r[1] +if(q>=0)if(A.jS(a5,0,q,20,r)===20)r[7]=q +p=r[2]+1 +o=r[3] +n=r[4] +m=r[5] +l=r[6] +if(lq+3){j=a3 +k=!1}else{i=o>0 +if(i&&o+1===n){j=a3 +k=!1}else{if(!(mn+2&&B.a.H(a5,"/..",m-3) +else h=!0 +if(h){j=a3 +k=!1}else{if(q===4)if(B.a.H(a5,"file",0)){if(p<=0){if(!B.a.H(a5,"/",n)){g="file:///" +s=3}else{g="file://" +s=2}a5=g+B.a.m(a5,n,a4) +q-=0 +i=s-0 +m+=i +l+=i +a4=a5.length +p=7 +o=7 +n=7}else if(n===m){++l +f=m+1 +a5=B.a.W(a5,n,m,"/");++a4 +m=f}j="file"}else if(B.a.H(a5,"http",0)){if(i&&o+3===n&&B.a.H(a5,"80",o+1)){l-=3 +e=n-3 +m-=3 +a5=B.a.W(a5,o,n,"") +a4-=3 +n=e}j="http"}else j=a3 +else if(q===5&&B.a.H(a5,"https",0)){if(i&&o+4===n&&B.a.H(a5,"443",o+1)){l-=4 +e=n-4 +m-=4 +a5=B.a.W(a5,o,n,"") +a4-=3 +n=e}j="https"}else j=a3 +k=!0}}}else j=a3 +if(k){if(a40)j=A.lR(a5,0,q) +else{if(q===0)A.bx(a5,0,"Invalid empty scheme") +j=""}if(p>0){d=q+3 +c=d9)k.$2("invalid character",s)}else{if(q===3)k.$2(m,s) +o=A.ie(B.a.m(a,r,s),null) +if(o>255)k.$2(l,r) +n=q+1 +j[q]=o +r=s+1 +q=n}}if(q!==3)k.$2(m,c) +o=A.ie(B.a.m(a,r,c),null) +if(o>255)k.$2(l,r) +j[q]=o +return j}, +jr(a,b,a0){var s,r,q,p,o,n,m,l,k,j,i,h,g,f,e=null,d=new A.fT(a),c=new A.fU(d,a) +if(a.length<2)d.$2("address is too short",e) +s=A.n([],t.t) +for(r=b,q=r,p=!1,o=!1;r>>0) +s.push((k[2]<<8|k[3])>>>0)}if(p){if(s.length>7)d.$2("an address with a wildcard must have less than 7 parts",e)}else if(s.length!==8)d.$2("an address without a wildcard must contain exactly 8 parts",e) +j=new Uint8Array(16) +for(l=s.length,i=9-l,r=0,h=0;r=b&&q=b&&s>>4]&1<<(p&15))!==0){if(q&&65<=p&&90>=p){if(i==null)i=new A.H("") +if(r>>4]&1<<(o&15))!==0){if(p&&65<=o&&90>=o){if(q==null)q=new A.H("") +if(r>>4]&1<<(o&15))!==0)A.bx(a,s,"Invalid character") +else{if((o&64512)===55296&&s+1>>4]&1<<(q&15))!==0))A.bx(a,s,"Illegal scheme character") +if(65<=q&&q<=90)r=!0}a=B.a.m(a,b,c) +return A.lJ(r?a.toLowerCase():a)}, +lJ(a){if(a==="http")return"http" +if(a==="file")return"file" +if(a==="https")return"https" +if(a==="package")return"package" +return a}, +lS(a,b,c){return A.cC(a,b,c,B.T,!1)}, +lO(a,b,c,d,e,f){var s=e==="file",r=s||f,q=A.cC(a,b,c,B.v,!0) +if(q.length===0){if(s)return"/"}else if(r&&!B.a.C(q,"/"))q="/"+q +return A.lT(q,e,f)}, +lT(a,b,c){var s=b.length===0 +if(s&&!c&&!B.a.C(a,"/"))return A.lV(a,!s||c) +return A.lW(a)}, +lQ(a,b,c,d){return A.cC(a,b,c,B.h,!0)}, +lM(a,b,c){return A.cC(a,b,c,B.h,!0)}, +iD(a,b,c){var s,r,q,p,o,n=b+2 +if(n>=a.length)return"%" +s=B.a.B(a,b+1) +r=B.a.B(a,n) +q=A.hU(s) +p=A.hU(r) +if(q<0||p<0)return"%" +o=q*16+p +if(o<127&&(B.u[B.c.a1(o,4)]&1<<(o&15))!==0)return A.ay(c&&65<=o&&90>=o?(o|32)>>>0:o) +if(s>=97||r>=97)return B.a.m(a,b,b+3).toUpperCase() +return null}, +iC(a){var s,r,q,p,o,n="0123456789ABCDEF" +if(a<128){s=new Uint8Array(3) +s[0]=37 +s[1]=B.a.p(n,a>>>4) +s[2]=B.a.p(n,a&15)}else{if(a>2047)if(a>65535){r=240 +q=4}else{r=224 +q=3}else{r=192 +q=2}s=new Uint8Array(3*q) +for(p=0;--q,q>=0;r=128){o=B.c.bS(a,6*q)&63|r +s[p]=37 +s[p+1]=B.a.p(n,o>>>4) +s[p+2]=B.a.p(n,o&15) +p+=3}}return A.jn(s,0,null)}, +cC(a,b,c,d,e){var s=A.jH(a,b,c,d,e) +return s==null?B.a.m(a,b,c):s}, +jH(a,b,c,d,e){var s,r,q,p,o,n,m,l,k,j,i=null +for(s=!e,r=b,q=r,p=i;r>>4]&1<<(o&15))!==0)++r +else{if(o===37){n=A.iD(a,r,!1) +if(n==null){r+=3 +continue}if("%"===n){n="%25" +m=1}else m=3}else if(s&&o<=93&&(B.p[o>>>4]&1<<(o&15))!==0){A.bx(a,r,"Invalid character") +m=i +n=m}else{if((o&64512)===55296){l=r+1 +if(l=2&&A.jF(B.a.p(a,0)))for(s=1;s127||(B.q[r>>>4]&1<<(r&15))===0)break}return a}, +lL(a,b){var s,r,q +for(s=0,r=0;r<2;++r){q=B.a.p(a,b+r) +if(48<=q&&q<=57)s=s*16+q-48 +else{q|=32 +if(97<=q&&q<=102)s=s*16+q-87 +else throw A.b(A.aq("Invalid URL encoding",null))}}return s}, +iE(a,b,c,d,e){var s,r,q,p,o=b +while(!0){if(!(o127)throw A.b(A.aq("Illegal percent encoding in URI",null)) +if(r===37){if(o+3>q)throw A.b(A.aq("Truncated URI",null)) +p.push(A.lL(a,o+1)) +o+=2}else if(r===43)p.push(32) +else p.push(r)}}return B.a0.aB(p)}, +jF(a){var s=a|32 +return 97<=s&&s<=122}, +jq(a,b,c){var s,r,q,p,o,n,m,l,k="Invalid MIME type",j=A.n([b-1],t.t) +for(s=a.length,r=b,q=-1,p=null;rb)throw A.b(A.G(k,a,r)) +for(;p!==44;){j.push(r);++r +for(o=-1;r=0)j.push(o) +else{n=B.b.gaa(j) +if(p!==44||r!==n+7||!B.a.H(a,"base64",n+1))throw A.b(A.G("Expecting '='",a,r)) +break}}j.push(r) +m=r+1 +if((j.length&1)===1)a=B.A.cc(0,a,m,s) +else{l=A.jH(a,m,s,B.h,!0) +if(l!=null)a=B.a.W(a,m,s,l)}return new A.fR(a,j,c)}, +m6(){var s,r,q,p,o,n="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-._~!$&'()*+,;=",m=".",l=":",k="/",j="?",i="#",h=A.n(new Array(22),t.n) +for(s=0;s<22;++s)h[s]=new Uint8Array(96) +r=new A.hF(h) +q=new A.hG() +p=new A.hH() +o=r.$2(0,225) +q.$3(o,n,1) +q.$3(o,m,14) +q.$3(o,l,34) +q.$3(o,k,3) +q.$3(o,j,172) +q.$3(o,i,205) +o=r.$2(14,225) +q.$3(o,n,1) +q.$3(o,m,15) +q.$3(o,l,34) +q.$3(o,k,234) +q.$3(o,j,172) +q.$3(o,i,205) +o=r.$2(15,225) +q.$3(o,n,1) +q.$3(o,"%",225) +q.$3(o,l,34) +q.$3(o,k,9) +q.$3(o,j,172) +q.$3(o,i,205) +o=r.$2(1,225) +q.$3(o,n,1) +q.$3(o,l,34) +q.$3(o,k,10) +q.$3(o,j,172) +q.$3(o,i,205) +o=r.$2(2,235) +q.$3(o,n,139) +q.$3(o,k,131) +q.$3(o,m,146) +q.$3(o,j,172) +q.$3(o,i,205) +o=r.$2(3,235) +q.$3(o,n,11) +q.$3(o,k,68) +q.$3(o,m,18) +q.$3(o,j,172) +q.$3(o,i,205) +o=r.$2(4,229) +q.$3(o,n,5) +p.$3(o,"AZ",229) +q.$3(o,l,102) +q.$3(o,"@",68) +q.$3(o,"[",232) +q.$3(o,k,138) +q.$3(o,j,172) +q.$3(o,i,205) +o=r.$2(5,229) +q.$3(o,n,5) +p.$3(o,"AZ",229) +q.$3(o,l,102) +q.$3(o,"@",68) +q.$3(o,k,138) +q.$3(o,j,172) +q.$3(o,i,205) +o=r.$2(6,231) +p.$3(o,"19",7) +q.$3(o,"@",68) +q.$3(o,k,138) +q.$3(o,j,172) +q.$3(o,i,205) +o=r.$2(7,231) +p.$3(o,"09",7) +q.$3(o,"@",68) +q.$3(o,k,138) +q.$3(o,j,172) +q.$3(o,i,205) +q.$3(r.$2(8,8),"]",5) +o=r.$2(9,235) +q.$3(o,n,11) +q.$3(o,m,16) +q.$3(o,k,234) +q.$3(o,j,172) +q.$3(o,i,205) +o=r.$2(16,235) +q.$3(o,n,11) +q.$3(o,m,17) +q.$3(o,k,234) +q.$3(o,j,172) +q.$3(o,i,205) +o=r.$2(17,235) +q.$3(o,n,11) +q.$3(o,k,9) +q.$3(o,j,172) +q.$3(o,i,205) +o=r.$2(10,235) +q.$3(o,n,11) +q.$3(o,m,18) +q.$3(o,k,234) +q.$3(o,j,172) +q.$3(o,i,205) +o=r.$2(18,235) +q.$3(o,n,11) +q.$3(o,m,19) +q.$3(o,k,234) +q.$3(o,j,172) +q.$3(o,i,205) +o=r.$2(19,235) +q.$3(o,n,11) +q.$3(o,k,234) +q.$3(o,j,172) +q.$3(o,i,205) +o=r.$2(11,235) +q.$3(o,n,11) +q.$3(o,k,10) +q.$3(o,j,172) +q.$3(o,i,205) +o=r.$2(12,236) +q.$3(o,n,12) +q.$3(o,j,12) +q.$3(o,i,205) +o=r.$2(13,237) +q.$3(o,n,13) +q.$3(o,j,13) +p.$3(r.$2(20,245),"az",21) +o=r.$2(21,245) +p.$3(o,"az",21) +p.$3(o,"09",21) +q.$3(o,"+-.",21) +return h}, +jS(a,b,c,d,e){var s,r,q,p,o=$.kq() +for(s=b;s95?31:q] +d=p&31 +e[p>>>5]=s}return d}, +fA:function fA(a,b){this.a=a +this.b=b}, +bI:function bI(a,b){this.a=a +this.b=b}, +v:function v(){}, +cO:function cO(a){this.a=a}, +aB:function aB(){}, +dm:function dm(){}, +Z:function Z(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +c6:function c6(a,b,c,d,e,f){var _=this +_.e=a +_.f=b +_.a=c +_.b=d +_.c=e +_.d=f}, +d4:function d4(a,b,c,d,e){var _=this +_.f=a +_.a=b +_.b=c +_.c=d +_.d=e}, +dl:function dl(a,b,c,d){var _=this +_.a=a +_.b=b +_.c=c +_.d=d}, +dN:function dN(a){this.a=a}, +dK:function dK(a){this.a=a}, +bm:function bm(a){this.a=a}, +cX:function cX(a){this.a=a}, +dp:function dp(){}, +c8:function c8(){}, +d_:function d_(a){this.a=a}, +h7:function h7(a){this.a=a}, +fj:function fj(a,b,c){this.a=a +this.b=b +this.c=c}, +t:function t(){}, +d5:function d5(){}, +D:function D(){}, +q:function q(){}, +ey:function ey(){}, +H:function H(a){this.a=a}, +fV:function fV(a){this.a=a}, +fS:function fS(a){this.a=a}, +fT:function fT(a){this.a=a}, +fU:function fU(a,b){this.a=a +this.b=b}, +cB:function cB(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g +_.z=_.y=_.w=$}, +fR:function fR(a,b,c){this.a=a +this.b=b +this.c=c}, +hF:function hF(a){this.a=a}, +hG:function hG(){}, +hH:function hH(){}, +eq:function eq(a,b,c,d,e,f,g,h){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g +_.w=h +_.x=null}, +dY:function dY(a,b,c,d,e,f,g){var _=this +_.a=a +_.b=b +_.c=c +_.d=d +_.e=e +_.f=f +_.r=g +_.z=_.y=_.w=$}, +kK(a,b,c){var s=document.body +s.toString +s=new A.b3(new A.I(B.k.K(s,a,b,c)),new A.ff(),t.ba.l("b3")) +return t.h.a(s.gS(s))}, +bM(a){var s,r,q="element tag unavailable" +try{s=J.Y(a) +s.gbi(a) +q=s.gbi(a)}catch(r){}return q}, +jv(a){var s=document.createElement("a"),r=new A.hp(s,window.location) +r=new A.bv(r) +r.by(a) +return r}, +lo(a,b,c,d){return!0}, +lp(a,b,c,d){var s,r=d.a,q=r.a +q.href=c +s=q.hostname +r=r.b +if(!(s==r.hostname&&q.port===r.port&&q.protocol===r.protocol))if(s==="")if(q.port===""){r=q.protocol +r=r===":"||r===""}else r=!1 +else r=!1 +else r=!0 +return r}, +jz(){var s=t.N,r=A.jb(B.w,s),q=A.n(["TEMPLATE"],t.s) +s=new A.eB(r,A.bW(s),A.bW(s),A.bW(s),null) +s.bz(null,new A.J(B.w,new A.hs(),t.e),q,null) +return s}, +k:function k(){}, +f_:function f_(){}, +cM:function cM(){}, +cN:function cN(){}, +be:function be(){}, +aM:function aM(){}, +aN:function aN(){}, +a_:function a_(){}, +f8:function f8(){}, +w:function w(){}, +bH:function bH(){}, +f9:function f9(){}, +S:function S(){}, +a7:function a7(){}, +fa:function fa(){}, +fb:function fb(){}, +fc:function fc(){}, +aQ:function aQ(){}, +fd:function fd(){}, +bJ:function bJ(){}, +bK:function bK(){}, +d1:function d1(){}, +fe:function fe(){}, +x:function x(){}, +ff:function ff(){}, +h:function h(){}, +c:function c(){}, +a0:function a0(){}, +d2:function d2(){}, +fi:function fi(){}, +d3:function d3(){}, +a9:function a9(){}, +fk:function fk(){}, +aS:function aS(){}, +bQ:function bQ(){}, +bR:function bR(){}, +at:function at(){}, +bi:function bi(){}, +fv:function fv(){}, +fx:function fx(){}, +dd:function dd(){}, +fy:function fy(a){this.a=a}, +de:function de(){}, +fz:function fz(a){this.a=a}, +ac:function ac(){}, +df:function df(){}, +I:function I(a){this.a=a}, +m:function m(){}, +c3:function c3(){}, +ad:function ad(){}, +dr:function dr(){}, +dt:function dt(){}, +fJ:function fJ(a){this.a=a}, +dv:function dv(){}, +af:function af(){}, +dx:function dx(){}, +ag:function ag(){}, +dy:function dy(){}, +ah:function ah(){}, +dA:function dA(){}, +fL:function fL(a){this.a=a}, +W:function W(){}, +ca:function ca(){}, +dD:function dD(){}, +dE:function dE(){}, +bp:function bp(){}, +ai:function ai(){}, +X:function X(){}, +dG:function dG(){}, +dH:function dH(){}, +fN:function fN(){}, +aj:function aj(){}, +dI:function dI(){}, +fO:function fO(){}, +N:function N(){}, +fW:function fW(){}, +h0:function h0(){}, +bs:function bs(){}, +al:function al(){}, +bt:function bt(){}, +dV:function dV(){}, +cd:function cd(){}, +e7:function e7(){}, +ck:function ck(){}, +et:function et(){}, +ez:function ez(){}, +dS:function dS(){}, +cf:function cf(a){this.a=a}, +dX:function dX(a){this.a=a}, +h5:function h5(a,b){this.a=a +this.b=b}, +h6:function h6(a,b){this.a=a +this.b=b}, +e2:function e2(a){this.a=a}, +bv:function bv(a){this.a=a}, +y:function y(){}, +c4:function c4(a){this.a=a}, +fC:function fC(a){this.a=a}, +fB:function fB(a,b,c){this.a=a +this.b=b +this.c=c}, +cr:function cr(){}, +hq:function hq(){}, +hr:function hr(){}, +eB:function eB(a,b,c,d,e){var _=this +_.e=a +_.a=b +_.b=c +_.c=d +_.d=e}, +hs:function hs(){}, +eA:function eA(){}, +bP:function bP(a,b){var _=this +_.a=a +_.b=b +_.c=-1 +_.d=null}, +hp:function hp(a,b){this.a=a +this.b=b}, +eM:function eM(a){this.a=a +this.b=0}, +hy:function hy(a){this.a=a}, +dW:function dW(){}, +dZ:function dZ(){}, +e_:function e_(){}, +e0:function e0(){}, +e1:function e1(){}, +e4:function e4(){}, +e5:function e5(){}, +e9:function e9(){}, +ea:function ea(){}, +ef:function ef(){}, +eg:function eg(){}, +eh:function eh(){}, +ei:function ei(){}, +ej:function ej(){}, +ek:function ek(){}, +en:function en(){}, +eo:function eo(){}, +ep:function ep(){}, +cs:function cs(){}, +ct:function ct(){}, +er:function er(){}, +es:function es(){}, +eu:function eu(){}, +eC:function eC(){}, +eD:function eD(){}, +cv:function cv(){}, +cw:function cw(){}, +eE:function eE(){}, +eF:function eF(){}, +eN:function eN(){}, +eO:function eO(){}, +eP:function eP(){}, +eQ:function eQ(){}, +eR:function eR(){}, +eS:function eS(){}, +eT:function eT(){}, +eU:function eU(){}, +eV:function eV(){}, +eW:function eW(){}, +jL(a){var s,r,q +if(a==null)return a +if(typeof a=="string"||typeof a=="number"||A.hI(a))return a +s=Object.getPrototypeOf(a) +if(s===Object.prototype||s===null)return A.aH(a) +if(Array.isArray(a)){r=[] +for(q=0;q")),r=new A.cb(s,b.l("cb<0>")) +a.then(A.bD(new A.ii(r),1),A.bD(new A.ij(r),1)) +return s}, +fD:function fD(a){this.a=a}, +ii:function ii(a){this.a=a}, +ij:function ij(a){this.a=a}, +av:function av(){}, +da:function da(){}, +aw:function aw(){}, +dn:function dn(){}, +fG:function fG(){}, +bl:function bl(){}, +dC:function dC(){}, +cQ:function cQ(a){this.a=a}, +i:function i(){}, +aA:function aA(){}, +dJ:function dJ(){}, +ed:function ed(){}, +ee:function ee(){}, +el:function el(){}, +em:function em(){}, +ew:function ew(){}, +ex:function ex(){}, +eG:function eG(){}, +eH:function eH(){}, +f2:function f2(){}, +cR:function cR(){}, +f3:function f3(a){this.a=a}, +f4:function f4(){}, +bd:function bd(){}, +fF:function fF(){}, +dT:function dT(){}, +mO(){var s,r,q={},p=window.document,o=t.cD,n=o.a(p.getElementById("search-box")),m=o.a(p.getElementById("search-body")),l=o.a(p.getElementById("search-sidebar")) +o=p.querySelector("body") +o.toString +q.a="" +if(o.getAttribute("data-using-base-href")==="false"){s=o.getAttribute("data-base-href") +o=q.a=s==null?"":s}else o="" +r=window +A.k5(r.fetch(o+"index.json",null),t.z).bj(new A.hY(q,new A.hZ(n,m,l),n,m,l),t.P)}, +jX(a,b){var s,r,q,p,o,n,m,l,k,j,i,h,g=b.length +if(g===0)return A.n([],t.M) +s=A.n([],t.l) +for(r=a.length,g=g>1,q="dart:"+b,p=0;p4294967295)throw A.b(A.T(a,0,4294967295,"length",null)) +return J.kR(new Array(a),b)}, +kR(a,b){return J.j8(A.n(a,b.l("A<0>")))}, +j8(a){a.fixed$length=Array +return a}, +kS(a,b){return J.ku(a,b)}, +j9(a){if(a<256)switch(a){case 9:case 10:case 11:case 12:case 13:case 32:case 133:case 160:return!0 +default:return!1}switch(a){case 5760:case 8192:case 8193:case 8194:case 8195:case 8196:case 8197:case 8198:case 8199:case 8200:case 8201:case 8202:case 8232:case 8233:case 8239:case 8287:case 12288:case 65279:return!0 +default:return!1}}, +kT(a,b){var s,r +for(s=a.length;b0;b=s){s=b-1 +r=B.a.B(a,s) +if(r!==32&&r!==13&&!J.j9(r))break}return b}, +aI(a){if(typeof a=="number"){if(Math.floor(a)==a)return J.bS.prototype +return J.d7.prototype}if(typeof a=="string")return J.au.prototype +if(a==null)return J.bT.prototype +if(typeof a=="boolean")return J.d6.prototype +if(a.constructor==Array)return J.A.prototype +if(typeof a!="object"){if(typeof a=="function")return J.aa.prototype +return a}if(a instanceof A.q)return a +return J.hT(a)}, +b6(a){if(typeof a=="string")return J.au.prototype +if(a==null)return a +if(a.constructor==Array)return J.A.prototype +if(typeof a!="object"){if(typeof a=="function")return J.aa.prototype +return a}if(a instanceof A.q)return a +return J.hT(a)}, +cK(a){if(a==null)return a +if(a.constructor==Array)return J.A.prototype +if(typeof a!="object"){if(typeof a=="function")return J.aa.prototype +return a}if(a instanceof A.q)return a +return J.hT(a)}, +mJ(a){if(typeof a=="number")return J.bh.prototype +if(typeof a=="string")return J.au.prototype +if(a==null)return a +if(!(a instanceof A.q))return J.b2.prototype +return a}, +jY(a){if(typeof a=="string")return J.au.prototype +if(a==null)return a +if(!(a instanceof A.q))return J.b2.prototype +return a}, +Y(a){if(a==null)return a +if(typeof a!="object"){if(typeof a=="function")return J.aa.prototype +return a}if(a instanceof A.q)return a +return J.hT(a)}, +ba(a,b){if(a==null)return b==null +if(typeof a!="object")return b!=null&&a===b +return J.aI(a).J(a,b)}, +im(a,b){if(typeof b==="number")if(a.constructor==Array||typeof a=="string"||A.k2(a,a[v.dispatchPropertyName]))if(b>>>0===b&&b>>0===b&&b").G(b).l("a5<1,2>"))}, +I(a,b){var s +if(!!a.fixed$length)A.aK(A.r("addAll")) +if(Array.isArray(b)){this.bC(a,b) +return}for(s=J.aL(b);s.q();)a.push(s.gt(s))}, +bC(a,b){var s,r=b.length +if(r===0)return +if(a===b)throw A.b(A.ar(a)) +for(s=0;s").G(c).l("J<1,2>"))}, +R(a,b){var s,r=A.jc(a.length,"",!1,t.N) +for(s=0;ss)throw A.b(A.T(b,0,s,"start",null)) +if(cs)throw A.b(A.T(c,b,s,"end",null)) +if(b===c)return A.n([],A.b4(a)) +return A.n(a.slice(b,c),A.b4(a))}, +gc4(a){if(a.length>0)return a[0] +throw A.b(A.is())}, +gaa(a){var s=a.length +if(s>0)return a[s-1] +throw A.b(A.is())}, +b1(a,b){var s,r=a.length +for(s=0;sa.length)A.b4(a).c.a(null) +a.length=b}, +h(a,b){if(!(b>=0&&b=0&&b=p){r.d=null +return!1}r.d=q[s] +r.c=s+1 +return!0}} +J.bh.prototype={ +a8(a,b){var s +if(ab)return 1 +else if(a===b){if(a===0){s=this.gaE(b) +if(this.gaE(a)===s)return 0 +if(this.gaE(a))return-1 +return 1}return 0}else if(isNaN(a)){if(isNaN(b))return 0 +return 1}else return-1}, +gaE(a){return a===0?1/a<0:a<0}, +X(a){if(a>0){if(a!==1/0)return Math.round(a)}else if(a>-1/0)return 0-Math.round(0-a) +throw A.b(A.r(""+a+".round()"))}, +k(a){if(a===0&&1/a<0)return"-0.0" +else return""+a}, +gu(a){var s,r,q,p,o=a|0 +if(a===o)return o&536870911 +s=Math.abs(a) +r=Math.log(s)/0.6931471805599453|0 +q=Math.pow(2,r) +p=s<1?s/q:q/s +return((p*9007199254740992|0)+(p*3542243181176521|0))*599197+r*1259&536870911}, +ad(a,b){var s=a%b +if(s===0)return 0 +if(s>0)return s +return s+b}, +au(a,b){return(a|0)===a?a/b|0:this.bT(a,b)}, +bT(a,b){var s=a/b +if(s>=-2147483648&&s<=2147483647)return s|0 +if(s>0){if(s!==1/0)return Math.floor(s)}else if(s>-1/0)return Math.ceil(s) +throw A.b(A.r("Result of truncating division is "+A.p(s)+": "+A.p(a)+" ~/ "+b))}, +a1(a,b){var s +if(a>0)s=this.aW(a,b) +else{s=b>31?31:b +s=a>>s>>>0}return s}, +bS(a,b){if(0>b)throw A.b(A.mC(b)) +return this.aW(a,b)}, +aW(a,b){return b>31?0:a>>>b}, +$ia4:1, +$iP:1} +J.bS.prototype={$il:1} +J.d7.prototype={} +J.au.prototype={ +B(a,b){if(b<0)throw A.b(A.cI(a,b)) +if(b>=a.length)A.aK(A.cI(a,b)) +return a.charCodeAt(b)}, +p(a,b){if(b>=a.length)throw A.b(A.cI(a,b)) +return a.charCodeAt(b)}, +bm(a,b){return a+b}, +W(a,b,c,d){var s=A.bk(b,c,a.length) +return a.substring(0,b)+d+a.substring(s)}, +H(a,b,c){var s +if(c<0||c>a.length)throw A.b(A.T(c,0,a.length,null,null)) +s=c+b.length +if(s>a.length)return!1 +return b===a.substring(c,s)}, +C(a,b){return this.H(a,b,0)}, +m(a,b,c){return a.substring(b,A.bk(b,c,a.length))}, +M(a,b){return this.m(a,b,null)}, +cn(a){return a.toLowerCase()}, +co(a){var s,r,q,p=a.trim(),o=p.length +if(o===0)return p +if(this.p(p,0)===133){s=J.kT(p,1) +if(s===o)return""}else s=0 +r=o-1 +q=this.B(p,r)===133?J.kU(p,r):o +if(s===0&&q===o)return p +return p.substring(s,q)}, +bn(a,b){var s,r +if(0>=b)return"" +if(b===1||a.length===0)return a +if(b!==b>>>0)throw A.b(B.J) +for(s=a,r="";!0;){if((b&1)===1)r=s+r +b=b>>>1 +if(b===0)break +s+=s}return r}, +a9(a,b,c){var s +if(c<0||c>a.length)throw A.b(A.T(c,0,a.length,null,null)) +s=a.indexOf(b,c) +return s}, +b8(a,b){return this.a9(a,b,0)}, +a8(a,b){var s +if(a===b)s=0 +else s=a>6}r=r+((r&67108863)<<3)&536870911 +r^=r>>11 +return r+((r&16383)<<15)&536870911}, +gj(a){return a.length}, +$id:1} +A.aD.prototype={ +gA(a){var s=A.L(this) +return new A.cS(J.aL(this.ga2()),s.l("@<1>").G(s.z[1]).l("cS<1,2>"))}, +gj(a){return J.ap(this.ga2())}, +n(a,b){return A.L(this).z[1].a(J.io(this.ga2(),b))}, +k(a){return J.bc(this.ga2())}} +A.cS.prototype={ +q(){return this.a.q()}, +gt(a){var s=this.a +return this.$ti.z[1].a(s.gt(s))}} +A.aO.prototype={ +ga2(){return this.a}} +A.ce.prototype={$if:1} +A.cc.prototype={ +h(a,b){return this.$ti.z[1].a(J.im(this.a,b))}, +i(a,b,c){J.eY(this.a,b,this.$ti.c.a(c))}, +$if:1, +$ij:1} +A.a5.prototype={ +a7(a,b){return new A.a5(this.a,this.$ti.l("@<1>").G(b).l("a5<1,2>"))}, +ga2(){return this.a}} +A.d9.prototype={ +k(a){return"LateInitializationError: "+this.a}} +A.cV.prototype={ +gj(a){return this.a.length}, +h(a,b){return B.a.B(this.a,b)}} +A.fK.prototype={} +A.f.prototype={} +A.a1.prototype={ +gA(a){return new A.bY(this,this.gj(this))}, +ab(a,b){return this.br(0,b)}} +A.bY.prototype={ +gt(a){var s=this.d +return s==null?A.L(this).c.a(s):s}, +q(){var s,r=this,q=r.a,p=J.b6(q),o=p.gj(q) +if(r.b!==o)throw A.b(A.ar(q)) +s=r.c +if(s>=o){r.d=null +return!1}r.d=p.n(q,s);++r.c +return!0}} +A.aY.prototype={ +gA(a){return new A.dc(J.aL(this.a),this.b)}, +gj(a){return J.ap(this.a)}, +n(a,b){return this.b.$1(J.io(this.a,b))}} +A.bL.prototype={$if:1} +A.dc.prototype={ +q(){var s=this,r=s.b +if(r.q()){s.a=s.c.$1(r.gt(r)) +return!0}s.a=null +return!1}, +gt(a){var s=this.a +return s==null?A.L(this).z[1].a(s):s}} +A.J.prototype={ +gj(a){return J.ap(this.a)}, +n(a,b){return this.b.$1(J.io(this.a,b))}} +A.b3.prototype={ +gA(a){return new A.dP(J.aL(this.a),this.b)}} +A.dP.prototype={ +q(){var s,r +for(s=this.a,r=this.b;s.q();)if(r.$1(s.gt(s)))return!0 +return!1}, +gt(a){var s=this.a +return s.gt(s)}} +A.bO.prototype={} +A.dM.prototype={ +i(a,b,c){throw A.b(A.r("Cannot modify an unmodifiable list"))}} +A.br.prototype={} +A.bn.prototype={ +gu(a){var s=this._hashCode +if(s!=null)return s +s=664597*J.eZ(this.a)&536870911 +this._hashCode=s +return s}, +k(a){return'Symbol("'+A.p(this.a)+'")'}, +J(a,b){if(b==null)return!1 +return b instanceof A.bn&&this.a==b.a}, +$ibo:1} +A.cD.prototype={} +A.bG.prototype={} +A.bF.prototype={ +k(a){return A.iv(this)}, +i(a,b,c){A.kH()}, +$iu:1} +A.a6.prototype={ +gj(a){return this.a}, +U(a,b){if("__proto__"===b)return!1 +return this.b.hasOwnProperty(b)}, +h(a,b){if(!this.U(0,b))return null +return this.b[b]}, +v(a,b){var s,r,q,p,o=this.c +for(s=o.length,r=this.b,q=0;q>>0}, +k(a){return"Closure '"+this.$_name+"' of "+("Instance of '"+A.fI(this.a)+"'")}} +A.du.prototype={ +k(a){return"RuntimeError: "+this.a}} +A.hm.prototype={} +A.aV.prototype={ +gj(a){return this.a}, +gD(a){return new A.aX(this,A.L(this).l("aX<1>"))}, +U(a,b){var s=this.b +if(s==null)return!1 +return s[b]!=null}, +h(a,b){var s,r,q,p,o=null +if(typeof b=="string"){s=this.b +if(s==null)return o +r=s[b] +q=r==null?o:r.b +return q}else if(typeof b=="number"&&(b&0x3fffffff)===b){p=this.c +if(p==null)return o +r=p[b] +q=r==null?o:r.b +return q}else return this.c8(b)}, +c8(a){var s,r,q=this.d +if(q==null)return null +s=q[this.b9(a)] +r=this.ba(s,a) +if(r<0)return null +return s[r].b}, +i(a,b,c){var s,r,q=this +if(typeof b=="string"){s=q.b +q.aN(s==null?q.b=q.ap():s,b,c)}else if(typeof b=="number"&&(b&0x3fffffff)===b){r=q.c +q.aN(r==null?q.c=q.ap():r,b,c)}else q.c9(b,c)}, +c9(a,b){var s,r,q,p=this,o=p.d +if(o==null)o=p.d=p.ap() +s=p.b9(a) +r=o[s] +if(r==null)o[s]=[p.aq(a,b)] +else{q=p.ba(r,a) +if(q>=0)r[q].b=b +else r.push(p.aq(a,b))}}, +v(a,b){var s=this,r=s.e,q=s.r +for(;r!=null;){b.$2(r.a,r.b) +if(q!==s.r)throw A.b(A.ar(s)) +r=r.c}}, +aN(a,b,c){var s=a[b] +if(s==null)a[b]=this.aq(b,c) +else s.b=c}, +bK(){this.r=this.r+1&1073741823}, +aq(a,b){var s,r=this,q=new A.fs(a,b) +if(r.e==null)r.e=r.f=q +else{s=r.f +s.toString +q.d=s +r.f=s.c=q}++r.a +r.bK() +return q}, +b9(a){return J.eZ(a)&0x3fffffff}, +ba(a,b){var s,r +if(a==null)return-1 +s=a.length +for(r=0;r"]=s +delete s[""] +return s}} +A.fs.prototype={} +A.aX.prototype={ +gj(a){return this.a.a}, +gA(a){var s=this.a,r=new A.db(s,s.r) +r.c=s.e +return r}} +A.db.prototype={ +gt(a){return this.d}, +q(){var s,r=this,q=r.a +if(r.b!==q.r)throw A.b(A.ar(q)) +s=r.c +if(s==null){r.d=null +return!1}else{r.d=s.a +r.c=s.c +return!0}}} +A.hV.prototype={ +$1(a){return this.a(a)}, +$S:4} +A.hW.prototype={ +$2(a,b){return this.a(a,b)}, +$S:44} +A.hX.prototype={ +$1(a){return this.a(a)}, +$S:21} +A.fo.prototype={ +k(a){return"RegExp/"+this.a+"/"+this.b.flags}} +A.b_.prototype={$iR:1} +A.bj.prototype={ +gj(a){return a.length}, +$io:1} +A.aZ.prototype={ +h(a,b){A.am(b,a,a.length) +return a[b]}, +i(a,b,c){A.am(b,a,a.length) +a[b]=c}, +$if:1, +$ij:1} +A.c0.prototype={ +i(a,b,c){A.am(b,a,a.length) +a[b]=c}, +$if:1, +$ij:1} +A.dg.prototype={ +h(a,b){A.am(b,a,a.length) +return a[b]}} +A.dh.prototype={ +h(a,b){A.am(b,a,a.length) +return a[b]}} +A.di.prototype={ +h(a,b){A.am(b,a,a.length) +return a[b]}} +A.dj.prototype={ +h(a,b){A.am(b,a,a.length) +return a[b]}} +A.dk.prototype={ +h(a,b){A.am(b,a,a.length) +return a[b]}} +A.c1.prototype={ +gj(a){return a.length}, +h(a,b){A.am(b,a,a.length) +return a[b]}} +A.c2.prototype={ +gj(a){return a.length}, +h(a,b){A.am(b,a,a.length) +return a[b]}, +$ibq:1} +A.cl.prototype={} +A.cm.prototype={} +A.cn.prototype={} +A.co.prototype={} +A.U.prototype={ +l(a){return A.hv(v.typeUniverse,this,a)}, +G(a){return A.lF(v.typeUniverse,this,a)}} +A.e6.prototype={} +A.eI.prototype={ +k(a){return A.Q(this.a,null)}} +A.e3.prototype={ +k(a){return this.a}} +A.cx.prototype={$iaB:1} +A.h2.prototype={ +$1(a){var s=this.a,r=s.a +s.a=null +r.$0()}, +$S:12} +A.h1.prototype={ +$1(a){var s,r +this.a.a=a +s=this.b +r=this.c +s.firstChild?s.removeChild(r):s.appendChild(r)}, +$S:23} +A.h3.prototype={ +$0(){this.a.$0()}, +$S:10} +A.h4.prototype={ +$0(){this.a.$0()}, +$S:10} +A.ht.prototype={ +bA(a,b){if(self.setTimeout!=null)self.setTimeout(A.bD(new A.hu(this,b),0),a) +else throw A.b(A.r("`setTimeout()` not found."))}} +A.hu.prototype={ +$0(){this.b.$0()}, +$S:0} +A.dQ.prototype={ +az(a,b){var s,r=this +if(b==null)r.$ti.c.a(b) +if(!r.b)r.a.aO(b) +else{s=r.a +if(r.$ti.l("a8<1>").b(b))s.aQ(b) +else s.aj(b)}}, +aA(a,b){var s=this.a +if(this.b)s.Z(a,b) +else s.aP(a,b)}} +A.hA.prototype={ +$1(a){return this.a.$2(0,a)}, +$S:5} +A.hB.prototype={ +$2(a,b){this.a.$2(1,new A.bN(a,b))}, +$S:45} +A.hL.prototype={ +$2(a,b){this.a(a,b)}, +$S:36} +A.cP.prototype={ +k(a){return A.p(this.a)}, +$iv:1, +ga5(){return this.b}} +A.dU.prototype={ +aA(a,b){var s +A.bC(a,"error",t.K) +s=this.a +if((s.a&30)!==0)throw A.b(A.c9("Future already completed")) +if(b==null)b=A.j_(a) +s.aP(a,b)}, +b3(a){return this.aA(a,null)}} +A.cb.prototype={ +az(a,b){var s=this.a +if((s.a&30)!==0)throw A.b(A.c9("Future already completed")) +s.aO(b)}} +A.bu.prototype={ +ca(a){if((this.c&15)!==6)return!0 +return this.b.b.aI(this.d,a.a)}, +c7(a){var s,r=this.e,q=null,p=a.a,o=this.b.b +if(t.C.b(r))q=o.cj(r,p,a.b) +else q=o.aI(r,p) +try{p=q +return p}catch(s){if(t.b7.b(A.ao(s))){if((this.c&1)!==0)throw A.b(A.aq("The error handler of Future.then must return a value of the returned future's type","onError")) +throw A.b(A.aq("The error handler of Future.catchError must return a value of the future's type","onError"))}else throw s}}} +A.F.prototype={ +aJ(a,b,c){var s,r,q=$.B +if(q===B.d){if(b!=null&&!t.C.b(b)&&!t.v.b(b))throw A.b(A.ip(b,"onError",u.c))}else if(b!=null)b=A.mr(b,q) +s=new A.F(q,c.l("F<0>")) +r=b==null?1:3 +this.ag(new A.bu(s,r,a,b,this.$ti.l("@<1>").G(c).l("bu<1,2>"))) +return s}, +bj(a,b){return this.aJ(a,null,b)}, +aY(a,b,c){var s=new A.F($.B,c.l("F<0>")) +this.ag(new A.bu(s,3,a,b,this.$ti.l("@<1>").G(c).l("bu<1,2>"))) +return s}, +bR(a){this.a=this.a&1|16 +this.c=a}, +ah(a){this.a=a.a&30|this.a&1 +this.c=a.c}, +ag(a){var s=this,r=s.a +if(r<=3){a.a=s.c +s.c=a}else{if((r&4)!==0){r=s.c +if((r.a&24)===0){r.ag(a) +return}s.ah(r)}A.bA(null,null,s.b,new A.h8(s,a))}}, +aV(a){var s,r,q,p,o,n=this,m={} +m.a=a +if(a==null)return +s=n.a +if(s<=3){r=n.c +n.c=a +if(r!=null){q=a.a +for(p=a;q!=null;p=q,q=o)o=q.a +p.a=r}}else{if((s&4)!==0){s=n.c +if((s.a&24)===0){s.aV(a) +return}n.ah(s)}m.a=n.a6(a) +A.bA(null,null,n.b,new A.hf(m,n))}}, +ar(){var s=this.c +this.c=null +return this.a6(s)}, +a6(a){var s,r,q +for(s=a,r=null;s!=null;r=s,s=q){q=s.a +s.a=r}return r}, +bF(a){var s,r,q,p=this +p.a^=2 +try{a.aJ(new A.hb(p),new A.hc(p),t.P)}catch(q){s=A.ao(q) +r=A.b7(q) +A.n_(new A.hd(p,s,r))}}, +aj(a){var s=this,r=s.ar() +s.a=8 +s.c=a +A.cg(s,r)}, +Z(a,b){var s=this.ar() +this.bR(A.f1(a,b)) +A.cg(this,s)}, +aO(a){if(this.$ti.l("a8<1>").b(a)){this.aQ(a) +return}this.bE(a)}, +bE(a){this.a^=2 +A.bA(null,null,this.b,new A.ha(this,a))}, +aQ(a){var s=this +if(s.$ti.b(a)){if((a.a&16)!==0){s.a^=2 +A.bA(null,null,s.b,new A.he(s,a))}else A.iw(a,s) +return}s.bF(a)}, +aP(a,b){this.a^=2 +A.bA(null,null,this.b,new A.h9(this,a,b))}, +$ia8:1} +A.h8.prototype={ +$0(){A.cg(this.a,this.b)}, +$S:0} +A.hf.prototype={ +$0(){A.cg(this.b,this.a.a)}, +$S:0} +A.hb.prototype={ +$1(a){var s,r,q,p=this.a +p.a^=2 +try{p.aj(p.$ti.c.a(a))}catch(q){s=A.ao(q) +r=A.b7(q) +p.Z(s,r)}}, +$S:12} +A.hc.prototype={ +$2(a,b){this.a.Z(a,b)}, +$S:25} +A.hd.prototype={ +$0(){this.a.Z(this.b,this.c)}, +$S:0} +A.ha.prototype={ +$0(){this.a.aj(this.b)}, +$S:0} +A.he.prototype={ +$0(){A.iw(this.b,this.a)}, +$S:0} +A.h9.prototype={ +$0(){this.a.Z(this.b,this.c)}, +$S:0} +A.hi.prototype={ +$0(){var s,r,q,p,o,n,m=this,l=null +try{q=m.a.a +l=q.b.b.cg(q.d)}catch(p){s=A.ao(p) +r=A.b7(p) +q=m.c&&m.b.a.c.a===s +o=m.a +if(q)o.c=m.b.a.c +else o.c=A.f1(s,r) +o.b=!0 +return}if(l instanceof A.F&&(l.a&24)!==0){if((l.a&16)!==0){q=m.a +q.c=l.c +q.b=!0}return}if(t.c.b(l)){n=m.b.a +q=m.a +q.c=l.bj(new A.hj(n),t.z) +q.b=!1}}, +$S:0} +A.hj.prototype={ +$1(a){return this.a}, +$S:16} +A.hh.prototype={ +$0(){var s,r,q,p,o +try{q=this.a +p=q.a +q.c=p.b.b.aI(p.d,this.b)}catch(o){s=A.ao(o) +r=A.b7(o) +q=this.a +q.c=A.f1(s,r) +q.b=!0}}, +$S:0} +A.hg.prototype={ +$0(){var s,r,q,p,o,n,m=this +try{s=m.a.a.c +p=m.b +if(p.a.ca(s)&&p.a.e!=null){p.c=p.a.c7(s) +p.b=!1}}catch(o){r=A.ao(o) +q=A.b7(o) +p=m.a.a.c +n=m.b +if(p.a===r)n.c=p +else n.c=A.f1(r,q) +n.b=!0}}, +$S:0} +A.dR.prototype={} +A.dB.prototype={} +A.ev.prototype={} +A.hz.prototype={} +A.hK.prototype={ +$0(){var s=this.a,r=this.b +A.bC(s,"error",t.K) +A.bC(r,"stackTrace",t.J) +A.kM(s,r)}, +$S:0} +A.hn.prototype={ +cl(a){var s,r,q +try{if(B.d===$.B){a.$0() +return}A.jR(null,null,this,a)}catch(q){s=A.ao(q) +r=A.b7(q) +A.iO(s,r)}}, +b2(a){return new A.ho(this,a)}, +ci(a){if($.B===B.d)return a.$0() +return A.jR(null,null,this,a)}, +cg(a){return this.ci(a,t.z)}, +cm(a,b){if($.B===B.d)return a.$1(b) +return A.mt(null,null,this,a,b)}, +aI(a,b){return this.cm(a,b,t.z,t.z)}, +ck(a,b,c){if($.B===B.d)return a.$2(b,c) +return A.ms(null,null,this,a,b,c)}, +cj(a,b,c){return this.ck(a,b,c,t.z,t.z,t.z)}, +cd(a){return a}, +bh(a){return this.cd(a,t.z,t.z,t.z)}} +A.ho.prototype={ +$0(){return this.a.cl(this.b)}, +$S:0} +A.ch.prototype={ +gA(a){var s=new A.ci(this,this.r) +s.c=this.e +return s}, +gj(a){return this.a}, +F(a,b){var s,r +if(b!=="__proto__"){s=this.b +if(s==null)return!1 +return s[b]!=null}else{r=this.bI(b) +return r}}, +bI(a){var s=this.d +if(s==null)return!1 +return this.ao(s[this.ak(a)],a)>=0}, +E(a,b){var s,r,q=this +if(typeof b=="string"&&b!=="__proto__"){s=q.b +return q.aS(s==null?q.b=A.ix():s,b)}else if(typeof b=="number"&&(b&1073741823)===b){r=q.c +return q.aS(r==null?q.c=A.ix():r,b)}else return q.bB(0,b)}, +bB(a,b){var s,r,q=this,p=q.d +if(p==null)p=q.d=A.ix() +s=q.ak(b) +r=p[s] +if(r==null)p[s]=[q.ai(b)] +else{if(q.ao(r,b)>=0)return!1 +r.push(q.ai(b))}return!0}, +a4(a,b){var s +if(b!=="__proto__")return this.bN(this.b,b) +else{s=this.bM(0,b) +return s}}, +bM(a,b){var s,r,q,p,o=this,n=o.d +if(n==null)return!1 +s=o.ak(b) +r=n[s] +q=o.ao(r,b) +if(q<0)return!1 +p=r.splice(q,1)[0] +if(0===r.length)delete n[s] +o.b_(p) +return!0}, +aS(a,b){if(a[b]!=null)return!1 +a[b]=this.ai(b) +return!0}, +bN(a,b){var s +if(a==null)return!1 +s=a[b] +if(s==null)return!1 +this.b_(s) +delete a[b] +return!0}, +aT(){this.r=this.r+1&1073741823}, +ai(a){var s,r=this,q=new A.hl(a) +if(r.e==null)r.e=r.f=q +else{s=r.f +s.toString +q.c=s +r.f=s.b=q}++r.a +r.aT() +return q}, +b_(a){var s=this,r=a.c,q=a.b +if(r==null)s.e=q +else r.b=q +if(q==null)s.f=r +else q.c=r;--s.a +s.aT()}, +ak(a){return J.eZ(a)&1073741823}, +ao(a,b){var s,r +if(a==null)return-1 +s=a.length +for(r=0;r").G(c).l("J<1,2>"))}, +a7(a,b){return new A.a5(a,A.b8(a).l("@").G(b).l("a5<1,2>"))}, +c3(a,b,c,d){var s +A.bk(b,c,this.gj(a)) +for(s=b;s"))}return new A.ec(this)}, +i(a,b,c){var s,r,q=this +if(q.b==null)q.c.i(0,b,c) +else if(q.U(0,b)){s=q.b +s[b]=c +r=q.a +if(r==null?s!=null:r!==s)r[b]=null}else q.bU().i(0,b,c)}, +U(a,b){if(this.b==null)return this.c.U(0,b) +return Object.prototype.hasOwnProperty.call(this.a,b)}, +v(a,b){var s,r,q,p,o=this +if(o.b==null)return o.c.v(0,b) +s=o.a_() +for(r=0;r=0){g=B.a.B("ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",f) +if(g===k)continue +k=g}else{if(f===-1){if(o<0){e=p==null?null:p.a.length +if(e==null)e=0 +o=e+(r-q) +n=r}++m +if(k===61)continue}k=g}if(f!==-2){if(p==null){p=new A.H("") +e=p}else e=p +d=e.a+=B.a.m(a1,q,r) +e.a=d+A.ay(k) +q=l +continue}}throw A.b(A.G("Invalid base64 data",a1,r))}if(p!=null){e=p.a+=B.a.m(a1,q,a3) +d=e.length +if(o>=0)A.j0(a1,n,a3,o,m,d) +else{c=B.c.ad(d-1,4)+1 +if(c===1)throw A.b(A.G(a,a1,a3)) +for(;c<4;){e+="=" +p.a=e;++c}}e=p.a +return B.a.W(a1,a2,a3,e.charCodeAt(0)==0?e:e)}b=a3-a2 +if(o>=0)A.j0(a1,n,a3,o,m,b) +else{c=B.c.ad(b,4) +if(c===1)throw A.b(A.G(a,a1,a3)) +if(c>1)a1=B.a.W(a1,a3,a3,c===2?"==":"=")}return a1}} +A.f6.prototype={} +A.cW.prototype={} +A.cY.prototype={} +A.fh.prototype={} +A.fm.prototype={ +k(a){return"unknown"}} +A.fl.prototype={ +aB(a){var s=this.bJ(a,0,a.length) +return s==null?a:s}, +bJ(a,b,c){var s,r,q,p +for(s=b,r=null;s":q=">" +break +case"/":q="/" +break +default:q=null}if(q!=null){if(r==null)r=new A.H("") +if(s>b)r.a+=B.a.m(a,b,s) +r.a+=q +b=s+1}}if(r==null)return null +if(c>b)r.a+=B.a.m(a,b,c) +p=r.a +return p.charCodeAt(0)==0?p:p}} +A.fq.prototype={ +c0(a,b,c){var s=A.mq(b,this.gc2().a) +return s}, +gc2(){return B.P}} +A.fr.prototype={} +A.fX.prototype={} +A.fY.prototype={ +aB(a){var s=this.a,r=A.li(s,a,0,null) +if(r!=null)return r +return new A.hw(s).bZ(a,0,null,!0)}} +A.hw.prototype={ +bZ(a,b,c,d){var s,r,q,p,o=this,n=A.bk(b,c,J.ap(a)) +if(b===n)return"" +s=A.lX(a,b,n) +r=o.al(s,0,n-b,!0) +q=o.b +if((q&1)!==0){p=A.lY(q) +o.b=0 +throw A.b(A.G(p,a,b+o.c))}return r}, +al(a,b,c,d){var s,r,q=this +if(c-b>1000){s=B.c.au(b+c,2) +r=q.al(a,b,s,!1) +if((q.b&1)!==0)return r +return r+q.al(a,s,c,d)}return q.c1(a,b,c,d)}, +c1(a,b,c,d){var s,r,q,p,o,n,m,l=this,k=65533,j=l.b,i=l.c,h=new A.H(""),g=b+1,f=a[b] +$label0$0:for(s=l.a;!0;){for(;!0;g=p){r=B.a.p("AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFFFFFFFFFFFFFFFFGGGGGGGGGGGGGGGGHHHHHHHHHHHHHHHHHHHHHHHHHHHIHHHJEEBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBKCCCCCCCCCCCCDCLONNNMEEEEEEEEEEE",f)&31 +i=j<=32?f&61694>>>r:(f&63|i<<6)>>>0 +j=B.a.p(" \x000:XECCCCCN:lDb \x000:XECCCCCNvlDb \x000:XECCCCCN:lDb AAAAA\x00\x00\x00\x00\x00AAAAA00000AAAAA:::::AAAAAGG000AAAAA00KKKAAAAAG::::AAAAA:IIIIAAAAA000\x800AAAAA\x00\x00\x00\x00 AAAAA",j+r) +if(j===0){h.a+=A.ay(i) +if(g===c)break $label0$0 +break}else if((j&1)!==0){if(s)switch(j){case 69:case 67:h.a+=A.ay(k) +break +case 65:h.a+=A.ay(k);--g +break +default:q=h.a+=A.ay(k) +h.a=q+A.ay(k) +break}else{l.b=j +l.c=g-1 +return""}j=0}if(g===c)break $label0$0 +p=g+1 +f=a[g]}p=g+1 +f=a[g] +if(f<128){while(!0){if(!(p=128){o=n-1 +p=n +break}p=n}if(o-g<20)for(m=g;m32)if(s)h.a+=A.ay(k) +else{l.b=77 +l.c=c +return""}l.b=j +l.c=i +s=h.a +return s.charCodeAt(0)==0?s:s}} +A.fA.prototype={ +$2(a,b){var s=this.b,r=this.a,q=s.a+=r.a +q+=a.a +s.a=q +s.a=q+": " +s.a+=A.bg(b) +r.a=", "}, +$S:15} +A.bI.prototype={ +J(a,b){if(b==null)return!1 +return b instanceof A.bI&&this.a===b.a&&!0}, +a8(a,b){return B.c.a8(this.a,b.a)}, +gu(a){var s=this.a +return(s^B.c.a1(s,30))&1073741823}, +k(a){var s=this,r=A.kI(A.l7(s)),q=A.d0(A.l5(s)),p=A.d0(A.l1(s)),o=A.d0(A.l2(s)),n=A.d0(A.l4(s)),m=A.d0(A.l6(s)),l=A.kJ(A.l3(s)) +return r+"-"+q+"-"+p+" "+o+":"+n+":"+m+"."+l}} +A.v.prototype={ +ga5(){return A.b7(this.$thrownJsError)}} +A.cO.prototype={ +k(a){var s=this.a +if(s!=null)return"Assertion failed: "+A.bg(s) +return"Assertion failed"}} +A.aB.prototype={} +A.dm.prototype={ +k(a){return"Throw of null."}} +A.Z.prototype={ +gan(){return"Invalid argument"+(!this.a?"(s)":"")}, +gam(){return""}, +k(a){var s=this,r=s.c,q=r==null?"":" ("+r+")",p=s.d,o=p==null?"":": "+A.p(p),n=s.gan()+q+o +if(!s.a)return n +return n+s.gam()+": "+A.bg(s.b)}} +A.c6.prototype={ +gan(){return"RangeError"}, +gam(){var s,r=this.e,q=this.f +if(r==null)s=q!=null?": Not less than or equal to "+A.p(q):"" +else if(q==null)s=": Not greater than or equal to "+A.p(r) +else if(q>r)s=": Not in inclusive range "+A.p(r)+".."+A.p(q) +else s=qe.length +else s=!1 +if(s)f=null +if(f==null){if(e.length>78)e=B.a.m(e,0,75)+"..." +return g+"\n"+e}for(r=1,q=0,p=!1,o=0;o1?g+(" (at line "+r+", character "+(f-q+1)+")\n"):g+(" (at character "+(f+1)+")\n") +m=e.length +for(o=f;o78)if(f-q<75){l=q+75 +k=q +j="" +i="..."}else{if(m-f<75){k=m-75 +l=m +i=""}else{k=f-36 +l=f+36 +i="..."}j="..."}else{l=m +k=q +j="" +i=""}return g+j+B.a.m(e,k,l)+i+"\n"+B.a.bn(" ",f-k+j.length)+"^\n"}else return f!=null?g+(" (at offset "+A.p(f)+")"):g}} +A.t.prototype={ +a7(a,b){return A.kB(this,A.L(this).l("t.E"),b)}, +aF(a,b,c){return A.kX(this,b,A.L(this).l("t.E"),c)}, +ab(a,b){return new A.b3(this,b,A.L(this).l("b3"))}, +gj(a){var s,r=this.gA(this) +for(s=0;r.q();)++s +return s}, +gS(a){var s,r=this.gA(this) +if(!r.q())throw A.b(A.is()) +s=r.gt(r) +if(r.q())throw A.b(A.kP()) +return s}, +n(a,b){var s,r,q +A.ji(b,"index") +for(s=this.gA(this),r=0;s.q();){q=s.gt(s) +if(b===r)return q;++r}throw A.b(A.z(b,this,"index",null,r))}, +k(a){return A.kO(this,"(",")")}} +A.d5.prototype={} +A.D.prototype={ +gu(a){return A.q.prototype.gu.call(this,this)}, +k(a){return"null"}} +A.q.prototype={$iq:1, +J(a,b){return this===b}, +gu(a){return A.ds(this)}, +k(a){return"Instance of '"+A.fI(this)+"'"}, +bd(a,b){throw A.b(A.je(this,b.gbb(),b.gbf(),b.gbc()))}, +toString(){return this.k(this)}} +A.ey.prototype={ +k(a){return""}, +$iaz:1} +A.H.prototype={ +gj(a){return this.a.length}, +k(a){var s=this.a +return s.charCodeAt(0)==0?s:s}} +A.fV.prototype={ +$2(a,b){var s,r,q,p=B.a.b8(b,"=") +if(p===-1){if(b!=="")J.eY(a,A.iE(b,0,b.length,this.a,!0),"")}else if(p!==0){s=B.a.m(b,0,p) +r=B.a.M(b,p+1) +q=this.a +J.eY(a,A.iE(s,0,s.length,q,!0),A.iE(r,0,r.length,q,!0))}return a}, +$S:24} +A.fS.prototype={ +$2(a,b){throw A.b(A.G("Illegal IPv4 address, "+a,this.a,b))}, +$S:17} +A.fT.prototype={ +$2(a,b){throw A.b(A.G("Illegal IPv6 address, "+a,this.a,b))}, +$S:18} +A.fU.prototype={ +$2(a,b){var s +if(b-a>4)this.a.$2("an IPv6 part can only contain a maximum of 4 hex digits",a) +s=A.ie(B.a.m(this.b,a,b),16) +if(s<0||s>65535)this.a.$2("each part must be in the range of `0x0..0xFFFF`",a) +return s}, +$S:19} +A.cB.prototype={ +gaX(){var s,r,q,p,o=this,n=o.w +if(n===$){s=o.a +r=s.length!==0?""+s+":":"" +q=o.c +p=q==null +if(!p||s==="file"){s=r+"//" +r=o.b +if(r.length!==0)s=s+r+"@" +if(!p)s+=q +r=o.d +if(r!=null)s=s+":"+A.p(r)}else s=r +s+=o.e +r=o.f +if(r!=null)s=s+"?"+r +r=o.r +if(r!=null)s=s+"#"+r +A.iN(n,"_text") +n=o.w=s.charCodeAt(0)==0?s:s}return n}, +gu(a){var s,r=this,q=r.y +if(q===$){s=B.a.gu(r.gaX()) +A.iN(r.y,"hashCode") +r.y=s +q=s}return q}, +gbg(){var s,r=this,q=r.z +if(q===$){s=r.f +s=A.js(s==null?"":s) +A.iN(r.z,"queryParameters") +q=r.z=new A.aC(s,t.V)}return q}, +gbl(){return this.b}, +gaC(a){var s=this.c +if(s==null)return"" +if(B.a.C(s,"["))return B.a.m(s,1,s.length-1) +return s}, +gaG(a){var s=this.d +return s==null?A.jD(this.a):s}, +gaH(a){var s=this.f +return s==null?"":s}, +gb4(){var s=this.r +return s==null?"":s}, +gb5(){return this.c!=null}, +gb7(){return this.f!=null}, +gb6(){return this.r!=null}, +k(a){return this.gaX()}, +J(a,b){var s,r,q=this +if(b==null)return!1 +if(q===b)return!0 +if(t.R.b(b))if(q.a===b.gaM())if(q.c!=null===b.gb5())if(q.b===b.gbl())if(q.gaC(q)===b.gaC(b))if(q.gaG(q)===b.gaG(b))if(q.e===b.gbe(b)){s=q.f +r=s==null +if(!r===b.gb7()){if(r)s="" +if(s===b.gaH(b)){s=q.r +r=s==null +if(!r===b.gb6()){if(r)s="" +s=s===b.gb4()}else s=!1}else s=!1}else s=!1}else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +else s=!1 +return s}, +$idO:1, +gaM(){return this.a}, +gbe(a){return this.e}} +A.fR.prototype={ +gbk(){var s,r,q,p,o=this,n=null,m=o.c +if(m==null){m=o.a +s=o.b[0]+1 +r=B.a.a9(m,"?",s) +q=m.length +if(r>=0){p=A.cC(m,r+1,q,B.h,!1) +q=r}else p=n +m=o.c=new A.dY("data","",n,n,A.cC(m,s,q,B.v,!1),p,n)}return m}, +k(a){var s=this.a +return this.b[0]===-1?"data:"+s:s}} +A.hF.prototype={ +$2(a,b){var s=this.a[a] +B.Y.c3(s,0,96,b) +return s}, +$S:20} +A.hG.prototype={ +$3(a,b,c){var s,r +for(s=b.length,r=0;r>>0]=c}, +$S:8} +A.eq.prototype={ +gb5(){return this.c>0}, +gb7(){return this.fr?B.a.m(this.a,r,s-1):""}, +gaC(a){var s=this.c +return s>0?B.a.m(this.a,s,this.d):""}, +gaG(a){var s,r=this +if(r.c>0&&r.d+1=s.r)return B.W +return new A.aC(A.js(s.gaH(s)),t.V)}, +gu(a){var s=this.x +return s==null?this.x=B.a.gu(this.a):s}, +J(a,b){if(b==null)return!1 +if(this===b)return!0 +return t.R.b(b)&&this.a===b.k(0)}, +k(a){return this.a}, +$idO:1} +A.dY.prototype={} +A.k.prototype={} +A.f_.prototype={ +gj(a){return a.length}} +A.cM.prototype={ +k(a){return String(a)}} +A.cN.prototype={ +k(a){return String(a)}} +A.be.prototype={$ibe:1} +A.aM.prototype={$iaM:1} +A.aN.prototype={$iaN:1} +A.a_.prototype={ +gj(a){return a.length}} +A.f8.prototype={ +gj(a){return a.length}} +A.w.prototype={$iw:1} +A.bH.prototype={ +gj(a){return a.length}} +A.f9.prototype={} +A.S.prototype={} +A.a7.prototype={} +A.fa.prototype={ +gj(a){return a.length}} +A.fb.prototype={ +gj(a){return a.length}} +A.fc.prototype={ +gj(a){return a.length}} +A.aQ.prototype={} +A.fd.prototype={ +k(a){return String(a)}} +A.bJ.prototype={ +gj(a){return a.length}, +h(a,b){if(b>>>0!==b||b>=a.length)throw A.b(A.z(b,a,null,null,null)) +return a[b]}, +i(a,b,c){throw A.b(A.r("Cannot assign element of immutable List."))}, +n(a,b){return a[b]}, +$if:1, +$io:1, +$ij:1} +A.bK.prototype={ +k(a){var s,r=a.left +r.toString +s=a.top +s.toString +return"Rectangle ("+A.p(r)+", "+A.p(s)+") "+A.p(this.gY(a))+" x "+A.p(this.gV(a))}, +J(a,b){var s,r +if(b==null)return!1 +if(t.q.b(b)){s=a.left +s.toString +r=b.left +r.toString +if(s===r){s=a.top +s.toString +r=b.top +r.toString +if(s===r){s=J.Y(b) +s=this.gY(a)===s.gY(b)&&this.gV(a)===s.gV(b)}else s=!1}else s=!1}else s=!1 +return s}, +gu(a){var s,r=a.left +r.toString +s=a.top +s.toString +return A.jf(r,s,this.gY(a),this.gV(a))}, +gaU(a){return a.height}, +gV(a){var s=this.gaU(a) +s.toString +return s}, +gb0(a){return a.width}, +gY(a){var s=this.gb0(a) +s.toString +return s}, +$ib1:1} +A.d1.prototype={ +gj(a){return a.length}, +h(a,b){if(b>>>0!==b||b>=a.length)throw A.b(A.z(b,a,null,null,null)) +return a[b]}, +i(a,b,c){throw A.b(A.r("Cannot assign element of immutable List."))}, +n(a,b){return a[b]}, +$if:1, +$io:1, +$ij:1} +A.fe.prototype={ +gj(a){return a.length}} +A.x.prototype={ +gbW(a){return new A.cf(a)}, +ga3(a){return new A.e2(a)}, +k(a){return a.localName}, +K(a,b,c,d){var s,r,q,p +if(c==null){s=$.j7 +if(s==null){s=A.n([],t.Q) +r=new A.c4(s) +s.push(A.jv(null)) +s.push(A.jz()) +$.j7=r +d=r}else d=s +s=$.j6 +if(s==null){s=new A.eM(d) +$.j6=s +c=s}else{s.a=d +c=s}}if($.as==null){s=document +r=s.implementation.createHTMLDocument("") +$.as=r +$.iq=r.createRange() +r=$.as.createElement("base") +t.D.a(r) +s=s.baseURI +s.toString +r.href=s +$.as.head.appendChild(r)}s=$.as +if(s.body==null){r=s.createElement("body") +s.body=t.Y.a(r)}s=$.as +if(t.Y.b(a)){s=s.body +s.toString +q=s}else{s.toString +q=s.createElement(a.tagName) +$.as.body.appendChild(q)}if("createContextualFragment" in window.Range.prototype&&!B.b.F(B.R,a.tagName)){$.iq.selectNodeContents(q) +s=$.iq +p=s.createContextualFragment(b)}else{q.innerHTML=b +p=$.as.createDocumentFragment() +for(;s=q.firstChild,s!=null;)p.appendChild(s)}if(q!==$.as.body)J.iY(q) +c.aL(p) +document.adoptNode(p) +return p}, +c_(a,b,c){return this.K(a,b,c,null)}, +saD(a,b){this.ae(a,b)}, +ae(a,b){a.textContent=null +a.appendChild(this.K(a,b,null,null))}, +gbi(a){return a.tagName}, +$ix:1} +A.ff.prototype={ +$1(a){return t.h.b(a)}, +$S:22} +A.h.prototype={$ih:1} +A.c.prototype={ +N(a,b,c){this.bD(a,b,c,null)}, +bD(a,b,c,d){return a.addEventListener(b,A.bD(c,1),d)}} +A.a0.prototype={$ia0:1} +A.d2.prototype={ +gj(a){return a.length}, +h(a,b){if(b>>>0!==b||b>=a.length)throw A.b(A.z(b,a,null,null,null)) +return a[b]}, +i(a,b,c){throw A.b(A.r("Cannot assign element of immutable List."))}, +n(a,b){return a[b]}, +$if:1, +$io:1, +$ij:1} +A.fi.prototype={ +gj(a){return a.length}} +A.d3.prototype={ +gj(a){return a.length}} +A.a9.prototype={$ia9:1} +A.fk.prototype={ +gj(a){return a.length}} +A.aS.prototype={ +gj(a){return a.length}, +h(a,b){if(b>>>0!==b||b>=a.length)throw A.b(A.z(b,a,null,null,null)) +return a[b]}, +i(a,b,c){throw A.b(A.r("Cannot assign element of immutable List."))}, +n(a,b){return a[b]}, +$if:1, +$io:1, +$ij:1} +A.bQ.prototype={} +A.bR.prototype={$ibR:1} +A.at.prototype={$iat:1} +A.bi.prototype={$ibi:1} +A.fv.prototype={ +k(a){return String(a)}} +A.fx.prototype={ +gj(a){return a.length}} +A.dd.prototype={ +h(a,b){return A.aH(a.get(b))}, +v(a,b){var s,r=a.entries() +for(;!0;){s=r.next() +if(s.done)return +b.$2(s.value[0],A.aH(s.value[1]))}}, +gD(a){var s=A.n([],t.s) +this.v(a,new A.fy(s)) +return s}, +gj(a){return a.size}, +i(a,b,c){throw A.b(A.r("Not supported"))}, +$iu:1} +A.fy.prototype={ +$2(a,b){return this.a.push(a)}, +$S:2} +A.de.prototype={ +h(a,b){return A.aH(a.get(b))}, +v(a,b){var s,r=a.entries() +for(;!0;){s=r.next() +if(s.done)return +b.$2(s.value[0],A.aH(s.value[1]))}}, +gD(a){var s=A.n([],t.s) +this.v(a,new A.fz(s)) +return s}, +gj(a){return a.size}, +i(a,b,c){throw A.b(A.r("Not supported"))}, +$iu:1} +A.fz.prototype={ +$2(a,b){return this.a.push(a)}, +$S:2} +A.ac.prototype={$iac:1} +A.df.prototype={ +gj(a){return a.length}, +h(a,b){if(b>>>0!==b||b>=a.length)throw A.b(A.z(b,a,null,null,null)) +return a[b]}, +i(a,b,c){throw A.b(A.r("Cannot assign element of immutable List."))}, +n(a,b){return a[b]}, +$if:1, +$io:1, +$ij:1} +A.I.prototype={ +gS(a){var s=this.a,r=s.childNodes.length +if(r===0)throw A.b(A.c9("No elements")) +if(r>1)throw A.b(A.c9("More than one element")) +s=s.firstChild +s.toString +return s}, +I(a,b){var s,r,q,p,o +if(b instanceof A.I){s=b.a +r=this.a +if(s!==r)for(q=s.childNodes.length,p=0;p>>0!==b||b>=a.length)throw A.b(A.z(b,a,null,null,null)) +return a[b]}, +i(a,b,c){throw A.b(A.r("Cannot assign element of immutable List."))}, +n(a,b){return a[b]}, +$if:1, +$io:1, +$ij:1} +A.ad.prototype={ +gj(a){return a.length}, +$iad:1} +A.dr.prototype={ +gj(a){return a.length}, +h(a,b){if(b>>>0!==b||b>=a.length)throw A.b(A.z(b,a,null,null,null)) +return a[b]}, +i(a,b,c){throw A.b(A.r("Cannot assign element of immutable List."))}, +n(a,b){return a[b]}, +$if:1, +$io:1, +$ij:1} +A.dt.prototype={ +h(a,b){return A.aH(a.get(b))}, +v(a,b){var s,r=a.entries() +for(;!0;){s=r.next() +if(s.done)return +b.$2(s.value[0],A.aH(s.value[1]))}}, +gD(a){var s=A.n([],t.s) +this.v(a,new A.fJ(s)) +return s}, +gj(a){return a.size}, +i(a,b,c){throw A.b(A.r("Not supported"))}, +$iu:1} +A.fJ.prototype={ +$2(a,b){return this.a.push(a)}, +$S:2} +A.dv.prototype={ +gj(a){return a.length}} +A.af.prototype={$iaf:1} +A.dx.prototype={ +gj(a){return a.length}, +h(a,b){if(b>>>0!==b||b>=a.length)throw A.b(A.z(b,a,null,null,null)) +return a[b]}, +i(a,b,c){throw A.b(A.r("Cannot assign element of immutable List."))}, +n(a,b){return a[b]}, +$if:1, +$io:1, +$ij:1} +A.ag.prototype={$iag:1} +A.dy.prototype={ +gj(a){return a.length}, +h(a,b){if(b>>>0!==b||b>=a.length)throw A.b(A.z(b,a,null,null,null)) +return a[b]}, +i(a,b,c){throw A.b(A.r("Cannot assign element of immutable List."))}, +n(a,b){return a[b]}, +$if:1, +$io:1, +$ij:1} +A.ah.prototype={ +gj(a){return a.length}, +$iah:1} +A.dA.prototype={ +h(a,b){return a.getItem(A.eX(b))}, +i(a,b,c){a.setItem(b,c)}, +v(a,b){var s,r,q +for(s=0;!0;++s){r=a.key(s) +if(r==null)return +q=a.getItem(r) +q.toString +b.$2(r,q)}}, +gD(a){var s=A.n([],t.s) +this.v(a,new A.fL(s)) +return s}, +gj(a){return a.length}, +$iu:1} +A.fL.prototype={ +$2(a,b){return this.a.push(a)}, +$S:6} +A.W.prototype={$iW:1} +A.ca.prototype={ +K(a,b,c,d){var s,r +if("createContextualFragment" in window.Range.prototype)return this.af(a,b,c,d) +s=A.kK(""+b+"
            ",c,d) +r=document.createDocumentFragment() +new A.I(r).I(0,new A.I(s)) +return r}} +A.dD.prototype={ +K(a,b,c,d){var s,r +if("createContextualFragment" in window.Range.prototype)return this.af(a,b,c,d) +s=document +r=s.createDocumentFragment() +s=new A.I(B.z.K(s.createElement("table"),b,c,d)) +s=new A.I(s.gS(s)) +new A.I(r).I(0,new A.I(s.gS(s))) +return r}} +A.dE.prototype={ +K(a,b,c,d){var s,r +if("createContextualFragment" in window.Range.prototype)return this.af(a,b,c,d) +s=document +r=s.createDocumentFragment() +s=new A.I(B.z.K(s.createElement("table"),b,c,d)) +new A.I(r).I(0,new A.I(s.gS(s))) +return r}} +A.bp.prototype={ +ae(a,b){var s,r +a.textContent=null +s=a.content +s.toString +J.kr(s) +r=this.K(a,b,null,null) +a.content.appendChild(r)}, +$ibp:1} +A.ai.prototype={$iai:1} +A.X.prototype={$iX:1} +A.dG.prototype={ +gj(a){return a.length}, +h(a,b){if(b>>>0!==b||b>=a.length)throw A.b(A.z(b,a,null,null,null)) +return a[b]}, +i(a,b,c){throw A.b(A.r("Cannot assign element of immutable List."))}, +n(a,b){return a[b]}, +$if:1, +$io:1, +$ij:1} +A.dH.prototype={ +gj(a){return a.length}, +h(a,b){if(b>>>0!==b||b>=a.length)throw A.b(A.z(b,a,null,null,null)) +return a[b]}, +i(a,b,c){throw A.b(A.r("Cannot assign element of immutable List."))}, +n(a,b){return a[b]}, +$if:1, +$io:1, +$ij:1} +A.fN.prototype={ +gj(a){return a.length}} +A.aj.prototype={$iaj:1} +A.dI.prototype={ +gj(a){return a.length}, +h(a,b){if(b>>>0!==b||b>=a.length)throw A.b(A.z(b,a,null,null,null)) +return a[b]}, +i(a,b,c){throw A.b(A.r("Cannot assign element of immutable List."))}, +n(a,b){return a[b]}, +$if:1, +$io:1, +$ij:1} +A.fO.prototype={ +gj(a){return a.length}} +A.N.prototype={} +A.fW.prototype={ +k(a){return String(a)}} +A.h0.prototype={ +gj(a){return a.length}} +A.bs.prototype={$ibs:1} +A.al.prototype={$ial:1} +A.bt.prototype={$ibt:1} +A.dV.prototype={ +gj(a){return a.length}, +h(a,b){if(b>>>0!==b||b>=a.length)throw A.b(A.z(b,a,null,null,null)) +return a[b]}, +i(a,b,c){throw A.b(A.r("Cannot assign element of immutable List."))}, +n(a,b){return a[b]}, +$if:1, +$io:1, +$ij:1} +A.cd.prototype={ +k(a){var s,r,q,p=a.left +p.toString +s=a.top +s.toString +r=a.width +r.toString +q=a.height +q.toString +return"Rectangle ("+A.p(p)+", "+A.p(s)+") "+A.p(r)+" x "+A.p(q)}, +J(a,b){var s,r +if(b==null)return!1 +if(t.q.b(b)){s=a.left +s.toString +r=b.left +r.toString +if(s===r){s=a.top +s.toString +r=b.top +r.toString +if(s===r){s=a.width +s.toString +r=J.Y(b) +if(s===r.gY(b)){s=a.height +s.toString +r=s===r.gV(b) +s=r}else s=!1}else s=!1}else s=!1}else s=!1 +return s}, +gu(a){var s,r,q,p=a.left +p.toString +s=a.top +s.toString +r=a.width +r.toString +q=a.height +q.toString +return A.jf(p,s,r,q)}, +gaU(a){return a.height}, +gV(a){var s=a.height +s.toString +return s}, +gb0(a){return a.width}, +gY(a){var s=a.width +s.toString +return s}} +A.e7.prototype={ +gj(a){return a.length}, +h(a,b){if(b>>>0!==b||b>=a.length)throw A.b(A.z(b,a,null,null,null)) +return a[b]}, +i(a,b,c){throw A.b(A.r("Cannot assign element of immutable List."))}, +n(a,b){return a[b]}, +$if:1, +$io:1, +$ij:1} +A.ck.prototype={ +gj(a){return a.length}, +h(a,b){if(b>>>0!==b||b>=a.length)throw A.b(A.z(b,a,null,null,null)) +return a[b]}, +i(a,b,c){throw A.b(A.r("Cannot assign element of immutable List."))}, +n(a,b){return a[b]}, +$if:1, +$io:1, +$ij:1} +A.et.prototype={ +gj(a){return a.length}, +h(a,b){if(b>>>0!==b||b>=a.length)throw A.b(A.z(b,a,null,null,null)) +return a[b]}, +i(a,b,c){throw A.b(A.r("Cannot assign element of immutable List."))}, +n(a,b){return a[b]}, +$if:1, +$io:1, +$ij:1} +A.ez.prototype={ +gj(a){return a.length}, +h(a,b){if(b>>>0!==b||b>=a.length)throw A.b(A.z(b,a,null,null,null)) +return a[b]}, +i(a,b,c){throw A.b(A.r("Cannot assign element of immutable List."))}, +n(a,b){return a[b]}, +$if:1, +$io:1, +$ij:1} +A.dS.prototype={ +v(a,b){var s,r,q,p,o,n +for(s=this.gD(this),r=s.length,q=this.a,p=0;p0)p[r]=q[0].toUpperCase()+B.a.M(q,1)}return B.b.R(p,"")}, +av(a){var s,r,q,p,o +for(s=a.length,r=0,q="";r0?q+"-":q)+o}return q.charCodeAt(0)==0?q:q}} +A.h5.prototype={ +$2(a,b){if(B.a.C(a,"data-"))this.b.$2(this.a.aZ(B.a.M(a,5)),b)}, +$S:6} +A.h6.prototype={ +$2(a,b){if(B.a.C(a,"data-"))this.b.push(this.a.aZ(B.a.M(a,5)))}, +$S:6} +A.e2.prototype={ +P(){var s,r,q,p,o=A.bW(t.N) +for(s=this.a.className.split(" "),r=s.length,q=0;q") +return}if(!l.a.T(a)){l.a0(a,b) +window +s=A.p(b) +if(typeof console!="undefined")window.console.warn("Removing disallowed element <"+e+"> from "+s) +return}if(g!=null)if(!l.a.O(a,"is",g)){l.a0(a,b) +window +if(typeof console!="undefined")window.console.warn("Removing disallowed type extension <"+e+' is="'+g+'">') +return}s=f.gD(f) +r=A.n(s.slice(0),A.b4(s)) +for(q=f.gD(f).length-1,s=f.a,p="Removing disallowed attribute <"+e+" ";q>=0;--q){o=r[q] +n=l.a +m=J.ky(o) +A.eX(o) +if(!n.O(a,m,s.getAttribute(o))){window +n=s.getAttribute(o) +if(typeof console!="undefined")window.console.warn(p+o+'="'+A.p(n)+'">') +s.removeAttribute(o)}}if(t.bg.b(a)){s=a.content +s.toString +l.aL(s)}}} +A.hy.prototype={ +$2(a,b){var s,r,q,p,o,n=this.a +switch(a.nodeType){case 1:n.bQ(a,b) +break +case 8:case 11:case 3:case 4:break +default:n.a0(a,b)}s=a.lastChild +for(;s!=null;){r=null +try{r=s.previousSibling +if(r!=null){q=r.nextSibling +p=s +p=q==null?p!=null:q!==p +q=p}else q=!1 +if(q){q=A.c9("Corrupt HTML") +throw A.b(q)}}catch(o){q=s;++n.b +p=q.parentNode +if(a!==p){if(p!=null)p.removeChild(q)}else a.removeChild(q) +s=null +r=a.lastChild}if(s!=null)this.$2(s,a) +s=r}}, +$S:27} +A.dW.prototype={} +A.dZ.prototype={} +A.e_.prototype={} +A.e0.prototype={} +A.e1.prototype={} +A.e4.prototype={} +A.e5.prototype={} +A.e9.prototype={} +A.ea.prototype={} +A.ef.prototype={} +A.eg.prototype={} +A.eh.prototype={} +A.ei.prototype={} +A.ej.prototype={} +A.ek.prototype={} +A.en.prototype={} +A.eo.prototype={} +A.ep.prototype={} +A.cs.prototype={} +A.ct.prototype={} +A.er.prototype={} +A.es.prototype={} +A.eu.prototype={} +A.eC.prototype={} +A.eD.prototype={} +A.cv.prototype={} +A.cw.prototype={} +A.eE.prototype={} +A.eF.prototype={} +A.eN.prototype={} +A.eO.prototype={} +A.eP.prototype={} +A.eQ.prototype={} +A.eR.prototype={} +A.eS.prototype={} +A.eT.prototype={} +A.eU.prototype={} +A.eV.prototype={} +A.eW.prototype={} +A.cZ.prototype={ +aw(a){var s=$.k9().b +if(s.test(a))return a +throw A.b(A.ip(a,"value","Not a valid class token"))}, +k(a){return this.P().R(0," ")}, +aK(a,b){var s,r,q +this.aw(b) +s=this.P() +r=s.F(0,b) +if(!r){s.E(0,b) +q=!0}else{s.a4(0,b) +q=!1}this.ac(s) +return q}, +gA(a){var s=this.P() +return A.lq(s,s.r)}, +gj(a){return this.P().a}, +E(a,b){var s +this.aw(b) +s=this.cb(0,new A.f7(b)) +return s==null?!1:s}, +a4(a,b){var s,r +this.aw(b) +s=this.P() +r=s.a4(0,b) +this.ac(s) +return r}, +n(a,b){return this.P().n(0,b)}, +cb(a,b){var s=this.P(),r=b.$1(s) +this.ac(s) +return r}} +A.f7.prototype={ +$1(a){return a.E(0,this.a)}, +$S:28} +A.bV.prototype={$ibV:1} +A.hD.prototype={ +$1(a){var s=function(b,c,d){return function(){return b(c,d,this,Array.prototype.slice.apply(arguments))}}(A.m5,a,!1) +A.iH(s,$.il(),a) +return s}, +$S:4} +A.hE.prototype={ +$1(a){return new this.a(a)}, +$S:4} +A.hM.prototype={ +$1(a){return new A.bU(a)}, +$S:29} +A.hN.prototype={ +$1(a){return new A.aU(a,t.F)}, +$S:30} +A.hO.prototype={ +$1(a){return new A.ab(a)}, +$S:31} +A.ab.prototype={ +h(a,b){if(typeof b!="string"&&typeof b!="number")throw A.b(A.aq("property is not a String or num",null)) +return A.iF(this.a[b])}, +i(a,b,c){if(typeof b!="string"&&typeof b!="number")throw A.b(A.aq("property is not a String or num",null)) +this.a[b]=A.iG(c)}, +J(a,b){if(b==null)return!1 +return b instanceof A.ab&&this.a===b.a}, +k(a){var s,r +try{s=String(this.a) +return s}catch(r){s=this.bv(0) +return s}}, +bY(a,b){var s=this.a,r=b==null?null:A.jd(new A.J(b,A.mV(),A.b4(b).l("J<1,@>")),t.z) +return A.iF(s[a].apply(s,r))}, +bX(a){return this.bY(a,null)}, +gu(a){return 0}} +A.bU.prototype={} +A.aU.prototype={ +aR(a){var s=this,r=a<0||a>=s.gj(s) +if(r)throw A.b(A.T(a,0,s.gj(s),null,null))}, +h(a,b){if(A.iL(b))this.aR(b) +return this.bs(0,b)}, +i(a,b,c){this.aR(b) +this.bw(0,b,c)}, +gj(a){var s=this.a.length +if(typeof s==="number"&&s>>>0===s)return s +throw A.b(A.c9("Bad JsArray length"))}, +$if:1, +$ij:1} +A.bw.prototype={ +i(a,b,c){return this.bt(0,b,c)}} +A.fD.prototype={ +k(a){return"Promise was rejected with a value of `"+(this.a?"undefined":"null")+"`."}} +A.ii.prototype={ +$1(a){return this.a.az(0,a)}, +$S:5} +A.ij.prototype={ +$1(a){if(a==null)return this.a.b3(new A.fD(a===undefined)) +return this.a.b3(a)}, +$S:5} +A.av.prototype={$iav:1} +A.da.prototype={ +gj(a){return a.length}, +h(a,b){if(b>>>0!==b||b>=a.length)throw A.b(A.z(b,a,null,null,null)) +return a.getItem(b)}, +i(a,b,c){throw A.b(A.r("Cannot assign element of immutable List."))}, +n(a,b){return this.h(a,b)}, +$if:1, +$ij:1} +A.aw.prototype={$iaw:1} +A.dn.prototype={ +gj(a){return a.length}, +h(a,b){if(b>>>0!==b||b>=a.length)throw A.b(A.z(b,a,null,null,null)) +return a.getItem(b)}, +i(a,b,c){throw A.b(A.r("Cannot assign element of immutable List."))}, +n(a,b){return this.h(a,b)}, +$if:1, +$ij:1} +A.fG.prototype={ +gj(a){return a.length}} +A.bl.prototype={$ibl:1} +A.dC.prototype={ +gj(a){return a.length}, +h(a,b){if(b>>>0!==b||b>=a.length)throw A.b(A.z(b,a,null,null,null)) +return a.getItem(b)}, +i(a,b,c){throw A.b(A.r("Cannot assign element of immutable List."))}, +n(a,b){return this.h(a,b)}, +$if:1, +$ij:1} +A.cQ.prototype={ +P(){var s,r,q,p,o=this.a.getAttribute("class"),n=A.bW(t.N) +if(o==null)return n +for(s=o.split(" "),r=s.length,q=0;q'+b+"",c) +q=o.createDocumentFragment() +o=new A.I(r) +p=o.gS(o) +for(;o=p.firstChild,o!=null;)q.appendChild(o) +return q}, +$ii:1} +A.aA.prototype={$iaA:1} +A.dJ.prototype={ +gj(a){return a.length}, +h(a,b){if(b>>>0!==b||b>=a.length)throw A.b(A.z(b,a,null,null,null)) +return a.getItem(b)}, +i(a,b,c){throw A.b(A.r("Cannot assign element of immutable List."))}, +n(a,b){return this.h(a,b)}, +$if:1, +$ij:1} +A.ed.prototype={} +A.ee.prototype={} +A.el.prototype={} +A.em.prototype={} +A.ew.prototype={} +A.ex.prototype={} +A.eG.prototype={} +A.eH.prototype={} +A.f2.prototype={ +gj(a){return a.length}} +A.cR.prototype={ +h(a,b){return A.aH(a.get(b))}, +v(a,b){var s,r=a.entries() +for(;!0;){s=r.next() +if(s.done)return +b.$2(s.value[0],A.aH(s.value[1]))}}, +gD(a){var s=A.n([],t.s) +this.v(a,new A.f3(s)) +return s}, +gj(a){return a.size}, +i(a,b,c){throw A.b(A.r("Not supported"))}, +$iu:1} +A.f3.prototype={ +$2(a,b){return this.a.push(a)}, +$S:2} +A.f4.prototype={ +gj(a){return a.length}} +A.bd.prototype={} +A.fF.prototype={ +gj(a){return a.length}} +A.dT.prototype={} +A.hZ.prototype={ +$0(){var s,r="Failed to initialize search" +A.mZ("Could not activate search functionality.") +s=this.a +if(s!=null)s.placeholder=r +s=this.b +if(s!=null)s.placeholder=r +s=this.c +if(s!=null)s.placeholder=r}, +$S:0} +A.hY.prototype={ +$1(a){var s=0,r=A.mo(t.P),q,p=this,o,n,m,l,k,j,i,h,g +var $async$$1=A.mB(function(b,c){if(b===1)return A.m1(c,r) +while(true)switch(s){case 0:if(a.status===404){p.b.$0() +s=1 +break}i=J +h=t.j +g=B.I +s=3 +return A.m0(A.k5(a.text(),t.N),$async$$1) +case 3:o=i.kt(h.a(g.c0(0,c,null)),t.a) +n=o.$ti.l("J") +m=A.fu(new A.J(o,A.n0(),n),!0,n.l("a1.E")) +l=A.lh(String(window.location)).gbg().h(0,"search") +if(l!=null){k=A.jX(m,l) +if(k.length!==0){j=B.b.gc4(k).d +if(j!=null){window.location.assign(p.a.a+j) +s=1 +break}}}n=p.c +if(n!=null)A.iR(n,m,p.a.a) +n=p.d +if(n!=null)A.iR(n,m,p.a.a) +n=p.e +if(n!=null)A.iR(n,m,p.a.a) +case 1:return A.m2(q,r)}}) +return A.m3($async$$1,r)}, +$S:48} +A.hS.prototype={ +$1(a){var s,r=this.a,q=r.e +if(q==null)q=0 +s=B.X.h(0,r.c) +if(s==null)s=4 +this.b.push(new A.V(r,(a-q*10)/s))}, +$S:47} +A.hQ.prototype={ +$2(a,b){var s=B.e.X(b.b-a.b) +if(s===0)return a.a.a.length-b.a.a.length +return s}, +$S:34} +A.hR.prototype={ +$1(a){return a.a}, +$S:35} +A.i0.prototype={ +$1(a){return}, +$S:1} +A.ia.prototype={ +$2(a,b){var s=B.B.aB(b) +return A.n1(a,b,""+s+"")}, +$S:37} +A.i5.prototype={ +$2(a,b){var s,r,q,p,o=document,n=o.createElement("div"),m=b.d +n.setAttribute("data-href",m==null?"":m) +m=J.Y(n) +m.ga3(n).E(0,"tt-suggestion") +s=o.createElement("span") +r=J.Y(s) +r.ga3(s).E(0,"tt-suggestion-title") +q=this.a +r.saD(s,q.$2(b.a+" "+b.c.toLowerCase(),a)) +n.appendChild(s) +r=b.f +if(r!=null){p=o.createElement("div") +o=J.Y(p) +o.ga3(p).E(0,"search-from-lib") +o.saD(p,"from "+A.p(q.$2(r.a,a))) +n.appendChild(p)}m.N(n,"mousedown",new A.i6()) +m.N(n,"click",new A.i7(b,this.b)) +return n}, +$S:38} +A.i6.prototype={ +$1(a){a.preventDefault()}, +$S:1} +A.i7.prototype={ +$1(a){var s=this.a.d +if(s!=null){window.location.assign(this.b+s) +a.preventDefault()}}, +$S:1} +A.ib.prototype={ +$1(a){var s +this.a.c=a +s=a==null?"":a +this.b.value=s}, +$S:39} +A.ic.prototype={ +$0(){var s,r +if(this.a.hasChildNodes()){s=this.b +r=s.style +r.display="block" +s.setAttribute("aria-expanded","true")}}, +$S:0} +A.i9.prototype={ +$0(){var s=this.a,r=s.style +r.display="none" +s.setAttribute("aria-expanded","false")}, +$S:0} +A.id.prototype={ +$2(a,b){var s,r,q,p,o,n=this,m=n.a +m.e=A.n([],t.M) +m.d=A.n([],t.k) +s=n.b +s.textContent="" +r=b.length +if(r<1){n.c.$1(null) +n.d.$0() +return}for(q=n.e,p=0;p10)s=B.b.bp(s,0,10) +q.b=a +r.b.$2(a,s)}, +$1(a){return this.$2(a,!1)}, +$S:41} +A.i1.prototype={ +$1(a){this.a.$2(this.b.value,!0)}, +$S:1} +A.i2.prototype={ +$1(a){var s,r=this,q=r.a +q.f=null +s=q.a +if(s!=null){r.b.value=s +q.a=null}r.c.$0() +r.d.$1(null)}, +$S:1} +A.i3.prototype={ +$1(a){this.a.$1(this.b.value)}, +$S:1} +A.i4.prototype={ +$1(a){var s,r,q,p,o,n,m,l,k,j=this,i="tt-cursor",h=j.a,g=h.d,f=g.length +if(f===0)return +if(a.type!=="keydown")return +t.u.a(a) +s=a.code +if(s==="Enter"){r=h.f +h=g[r==null?0:r] +q=h.getAttribute("data-"+new A.dX(new A.cf(h)).av("href")) +if(q!=null)window.location.assign(j.b+q) +return}if(s==="Tab"){g=h.f +if(g==null){g=h.c +if(g!=null){j.c.value=g +j.d.$1(h.c) +a.preventDefault()}}else{j.d.$1(h.e[g].a) +h.f=h.a=null +a.preventDefault()}return}p=f-1 +o=h.f +if(s==="ArrowUp")if(o==null)h.f=p +else if(o===0)h.f=null +else h.f=o-1 +else if(s==="ArrowDown")if(o==null)h.f=0 +else if(o===p)h.f=null +else h.f=o+1 +else{if(h.a!=null){h.a=null +j.d.$1(j.c.value)}return}f=o!=null +if(f)J.bb(g[o]).a4(0,i) +g=h.f +if(g!=null){n=h.d[g] +J.bb(n).E(0,i) +g=h.f +if(g===0)j.e.scrollTop=0 +else{f=j.e +if(g===p)f.scrollTop=B.c.X(B.e.X(f.scrollHeight)) +else{m=B.e.X(n.offsetTop) +l=B.e.X(f.offsetHeight) +if(m(@)","~(d,l)","~(d,l?)","l(l,l)","bq(@,@)","@(d)","O(m)","D(~())","u(u,d)","D(q,az)","d(d)","~(m,m?)","O(ae)","bU(@)","aU<@>(@)","ab(@)","M(u)","q?(@)","l(V,V)","M(V)","~(l,@)","d(d,d)","x(d,M)","~(d?)","~(d,j)","~(d?[O])","~(h)","l(@,@)","@(@,d)","D(@,az)","q?(q?)","~(l)","a8(@)"],interceptorsByTag:null,leafTags:null,arrayRti:Symbol("$ti")} +A.lE(v.typeUniverse,JSON.parse('{"dq":"aW","b2":"aW","aa":"aW","n8":"h","ni":"h","n7":"i","nj":"i","n9":"k","nl":"k","no":"m","nh":"m","nE":"aQ","nD":"X","nb":"N","ng":"al","na":"a_","nq":"a_","nk":"aS","nc":"w","ne":"W","nn":"aZ","nm":"b_","d6":{"O":[]},"bT":{"D":[]},"A":{"j":["1"],"f":["1"]},"fp":{"A":["1"],"j":["1"],"f":["1"]},"bh":{"a4":[],"P":[]},"bS":{"a4":[],"l":[],"P":[]},"d7":{"a4":[],"P":[]},"au":{"d":[]},"aD":{"t":["2"]},"aO":{"aD":["1","2"],"t":["2"],"t.E":"2"},"ce":{"aO":["1","2"],"aD":["1","2"],"f":["2"],"t":["2"],"t.E":"2"},"cc":{"e":["2"],"j":["2"],"aD":["1","2"],"f":["2"],"t":["2"]},"a5":{"cc":["1","2"],"e":["2"],"j":["2"],"aD":["1","2"],"f":["2"],"t":["2"],"e.E":"2","t.E":"2"},"d9":{"v":[]},"cV":{"e":["l"],"j":["l"],"f":["l"],"e.E":"l"},"f":{"t":["1"]},"a1":{"f":["1"],"t":["1"]},"aY":{"t":["2"],"t.E":"2"},"bL":{"aY":["1","2"],"f":["2"],"t":["2"],"t.E":"2"},"J":{"a1":["2"],"f":["2"],"t":["2"],"a1.E":"2","t.E":"2"},"b3":{"t":["1"],"t.E":"1"},"br":{"e":["1"],"j":["1"],"f":["1"]},"bn":{"bo":[]},"bG":{"aC":["1","2"],"u":["1","2"]},"bF":{"u":["1","2"]},"a6":{"u":["1","2"]},"c5":{"aB":[],"v":[]},"d8":{"v":[]},"dL":{"v":[]},"cu":{"az":[]},"aP":{"aR":[]},"cT":{"aR":[]},"cU":{"aR":[]},"dF":{"aR":[]},"dz":{"aR":[]},"bf":{"aR":[]},"du":{"v":[]},"aV":{"u":["1","2"],"E.V":"2"},"aX":{"f":["1"],"t":["1"],"t.E":"1"},"b_":{"R":[]},"bj":{"o":["1"],"R":[]},"aZ":{"e":["a4"],"o":["a4"],"j":["a4"],"f":["a4"],"R":[],"e.E":"a4"},"c0":{"e":["l"],"o":["l"],"j":["l"],"f":["l"],"R":[]},"dg":{"e":["l"],"o":["l"],"j":["l"],"f":["l"],"R":[],"e.E":"l"},"dh":{"e":["l"],"o":["l"],"j":["l"],"f":["l"],"R":[],"e.E":"l"},"di":{"e":["l"],"o":["l"],"j":["l"],"f":["l"],"R":[],"e.E":"l"},"dj":{"e":["l"],"o":["l"],"j":["l"],"f":["l"],"R":[],"e.E":"l"},"dk":{"e":["l"],"o":["l"],"j":["l"],"f":["l"],"R":[],"e.E":"l"},"c1":{"e":["l"],"o":["l"],"j":["l"],"f":["l"],"R":[],"e.E":"l"},"c2":{"e":["l"],"bq":[],"o":["l"],"j":["l"],"f":["l"],"R":[],"e.E":"l"},"e3":{"v":[]},"cx":{"aB":[],"v":[]},"F":{"a8":["1"]},"cP":{"v":[]},"cb":{"dU":["1"]},"ch":{"a3":["1"],"ae":["1"],"f":["1"]},"bX":{"e":["1"],"j":["1"],"f":["1"]},"bZ":{"u":["1","2"]},"E":{"u":["1","2"]},"c_":{"u":["1","2"]},"aC":{"u":["1","2"]},"c7":{"a3":["1"],"ae":["1"],"f":["1"]},"cp":{"a3":["1"],"ae":["1"],"f":["1"]},"eb":{"u":["d","@"],"E.V":"@"},"ec":{"a1":["d"],"f":["d"],"t":["d"],"a1.E":"d","t.E":"d"},"a4":{"P":[]},"l":{"P":[]},"j":{"f":["1"]},"ae":{"f":["1"],"t":["1"]},"cO":{"v":[]},"aB":{"v":[]},"dm":{"v":[]},"Z":{"v":[]},"c6":{"v":[]},"d4":{"v":[]},"dl":{"v":[]},"dN":{"v":[]},"dK":{"v":[]},"bm":{"v":[]},"cX":{"v":[]},"dp":{"v":[]},"c8":{"v":[]},"d_":{"v":[]},"ey":{"az":[]},"cB":{"dO":[]},"eq":{"dO":[]},"dY":{"dO":[]},"x":{"m":[]},"a0":{"aM":[]},"bv":{"a2":[]},"k":{"x":[],"m":[]},"cM":{"x":[],"m":[]},"cN":{"x":[],"m":[]},"be":{"x":[],"m":[]},"aN":{"x":[],"m":[]},"a_":{"m":[]},"aQ":{"m":[]},"bJ":{"e":["b1

            "],"j":["b1

            "],"o":["b1

            "],"f":["b1

            "],"e.E":"b1

            "},"bK":{"b1":["P"]},"d1":{"e":["d"],"j":["d"],"o":["d"],"f":["d"],"e.E":"d"},"d2":{"e":["a0"],"j":["a0"],"o":["a0"],"f":["a0"],"e.E":"a0"},"d3":{"x":[],"m":[]},"aS":{"e":["m"],"j":["m"],"o":["m"],"f":["m"],"e.E":"m"},"bQ":{"m":[]},"at":{"x":[],"m":[]},"bi":{"h":[]},"dd":{"u":["d","@"],"E.V":"@"},"de":{"u":["d","@"],"E.V":"@"},"df":{"e":["ac"],"j":["ac"],"o":["ac"],"f":["ac"],"e.E":"ac"},"I":{"e":["m"],"j":["m"],"f":["m"],"e.E":"m"},"c3":{"e":["m"],"j":["m"],"o":["m"],"f":["m"],"e.E":"m"},"dr":{"e":["ad"],"j":["ad"],"o":["ad"],"f":["ad"],"e.E":"ad"},"dt":{"u":["d","@"],"E.V":"@"},"dv":{"x":[],"m":[]},"dx":{"e":["af"],"j":["af"],"o":["af"],"f":["af"],"e.E":"af"},"dy":{"e":["ag"],"j":["ag"],"o":["ag"],"f":["ag"],"e.E":"ag"},"dA":{"u":["d","d"],"E.V":"d"},"ca":{"x":[],"m":[]},"dD":{"x":[],"m":[]},"dE":{"x":[],"m":[]},"bp":{"x":[],"m":[]},"dG":{"e":["X"],"j":["X"],"o":["X"],"f":["X"],"e.E":"X"},"dH":{"e":["ai"],"j":["ai"],"o":["ai"],"f":["ai"],"e.E":"ai"},"dI":{"e":["aj"],"j":["aj"],"o":["aj"],"f":["aj"],"e.E":"aj"},"N":{"h":[]},"bt":{"m":[]},"dV":{"e":["w"],"j":["w"],"o":["w"],"f":["w"],"e.E":"w"},"cd":{"b1":["P"]},"e7":{"e":["a9?"],"j":["a9?"],"o":["a9?"],"f":["a9?"],"e.E":"a9?"},"ck":{"e":["m"],"j":["m"],"o":["m"],"f":["m"],"e.E":"m"},"et":{"e":["ah"],"j":["ah"],"o":["ah"],"f":["ah"],"e.E":"ah"},"ez":{"e":["W"],"j":["W"],"o":["W"],"f":["W"],"e.E":"W"},"dS":{"u":["d","d"]},"cf":{"u":["d","d"],"E.V":"d"},"dX":{"u":["d","d"],"E.V":"d"},"e2":{"a3":["d"],"ae":["d"],"f":["d"]},"c4":{"a2":[]},"cr":{"a2":[]},"eB":{"a2":[]},"eA":{"a2":[]},"cZ":{"a3":["d"],"ae":["d"],"f":["d"]},"aU":{"e":["1"],"j":["1"],"f":["1"],"e.E":"1"},"da":{"e":["av"],"j":["av"],"f":["av"],"e.E":"av"},"dn":{"e":["aw"],"j":["aw"],"f":["aw"],"e.E":"aw"},"bl":{"i":[],"x":[],"m":[]},"dC":{"e":["d"],"j":["d"],"f":["d"],"e.E":"d"},"cQ":{"a3":["d"],"ae":["d"],"f":["d"]},"i":{"x":[],"m":[]},"dJ":{"e":["aA"],"j":["aA"],"f":["aA"],"e.E":"aA"},"cR":{"u":["d","@"],"E.V":"@"},"bq":{"j":["l"],"f":["l"],"R":[]}}')) +A.lD(v.typeUniverse,JSON.parse('{"bE":1,"bY":1,"dc":2,"dP":1,"bO":1,"dM":1,"br":1,"cD":2,"bF":2,"db":1,"bj":1,"dB":2,"ev":1,"ci":1,"bX":1,"bZ":2,"E":2,"eL":2,"c_":2,"c7":1,"cp":1,"cj":1,"cq":1,"cA":2,"cE":1,"cW":2,"cY":2,"d5":1,"y":1,"bP":1,"bw":1}')) +var u={c:"Error handler must accept one Object or one Object and a StackTrace as arguments, and return a value of the returned future's type"} +var t=(function rtii(){var s=A.cJ +return{D:s("be"),d:s("aM"),Y:s("aN"),m:s("bG"),O:s("f<@>"),h:s("x"),U:s("v"),E:s("h"),Z:s("aR"),c:s("a8<@>"),I:s("bR"),r:s("at"),k:s("A"),M:s("A"),Q:s("A"),l:s("A"),s:s("A"),n:s("A"),b:s("A<@>"),t:s("A"),T:s("bT"),g:s("aa"),p:s("o<@>"),F:s("aU<@>"),B:s("aV"),w:s("bV"),u:s("bi"),j:s("j<@>"),a:s("u"),L:s("J"),e:s("J"),G:s("m"),P:s("D"),K:s("q"),q:s("b1

            "),W:s("bl"),J:s("az"),N:s("d"),bM:s("i"),bg:s("bp"),b7:s("aB"),f:s("R"),o:s("b2"),V:s("aC"),R:s("dO"),cg:s("bs"),bj:s("al"),x:s("bt"),ba:s("I"),aY:s("F<@>"),y:s("O"),i:s("a4"),z:s("@"),v:s("@(q)"),C:s("@(q,az)"),S:s("l"),A:s("0&*"),_:s("q*"),bc:s("a8?"),cD:s("at?"),X:s("q?"),H:s("P")}})();(function constants(){var s=hunkHelpers.makeConstList +B.k=A.aN.prototype +B.L=A.bQ.prototype +B.f=A.at.prototype +B.M=J.aT.prototype +B.b=J.A.prototype +B.c=J.bS.prototype +B.e=J.bh.prototype +B.a=J.au.prototype +B.N=J.aa.prototype +B.O=J.a.prototype +B.Y=A.c2.prototype +B.y=J.dq.prototype +B.z=A.ca.prototype +B.j=J.b2.prototype +B.a1=new A.f6() +B.A=new A.f5() +B.a2=new A.fm() +B.B=new A.fl() +B.l=function getTagFallback(o) { + var s = Object.prototype.toString.call(o); + return s.substring(8, s.length - 1); +} +B.C=function() { + var toStringFunction = Object.prototype.toString; + function getTag(o) { + var s = toStringFunction.call(o); + return s.substring(8, s.length - 1); + } + function getUnknownTag(object, tag) { + if (/^HTML[A-Z].*Element$/.test(tag)) { + var name = toStringFunction.call(object); + if (name == "[object Object]") return null; + return "HTMLElement"; + } + } + function getUnknownTagGenericBrowser(object, tag) { + if (self.HTMLElement && object instanceof HTMLElement) return "HTMLElement"; + return getUnknownTag(object, tag); + } + function prototypeForTag(tag) { + if (typeof window == "undefined") return null; + if (typeof window[tag] == "undefined") return null; + var constructor = window[tag]; + if (typeof constructor != "function") return null; + return constructor.prototype; + } + function discriminator(tag) { return null; } + var isBrowser = typeof navigator == "object"; + return { + getTag: getTag, + getUnknownTag: isBrowser ? getUnknownTagGenericBrowser : getUnknownTag, + prototypeForTag: prototypeForTag, + discriminator: discriminator }; +} +B.H=function(getTagFallback) { + return function(hooks) { + if (typeof navigator != "object") return hooks; + var ua = navigator.userAgent; + if (ua.indexOf("DumpRenderTree") >= 0) return hooks; + if (ua.indexOf("Chrome") >= 0) { + function confirm(p) { + return typeof window == "object" && window[p] && window[p].name == p; + } + if (confirm("Window") && confirm("HTMLElement")) return hooks; + } + hooks.getTag = getTagFallback; + }; +} +B.D=function(hooks) { + if (typeof dartExperimentalFixupGetTag != "function") return hooks; + hooks.getTag = dartExperimentalFixupGetTag(hooks.getTag); +} +B.E=function(hooks) { + var getTag = hooks.getTag; + var prototypeForTag = hooks.prototypeForTag; + function getTagFixed(o) { + var tag = getTag(o); + if (tag == "Document") { + if (!!o.xmlVersion) return "!Document"; + return "!HTMLDocument"; + } + return tag; + } + function prototypeForTagFixed(tag) { + if (tag == "Document") return null; + return prototypeForTag(tag); + } + hooks.getTag = getTagFixed; + hooks.prototypeForTag = prototypeForTagFixed; +} +B.G=function(hooks) { + var userAgent = typeof navigator == "object" ? navigator.userAgent : ""; + if (userAgent.indexOf("Firefox") == -1) return hooks; + var getTag = hooks.getTag; + var quickMap = { + "BeforeUnloadEvent": "Event", + "DataTransfer": "Clipboard", + "GeoGeolocation": "Geolocation", + "Location": "!Location", + "WorkerMessageEvent": "MessageEvent", + "XMLDocument": "!Document"}; + function getTagFirefox(o) { + var tag = getTag(o); + return quickMap[tag] || tag; + } + hooks.getTag = getTagFirefox; +} +B.F=function(hooks) { + var userAgent = typeof navigator == "object" ? navigator.userAgent : ""; + if (userAgent.indexOf("Trident/") == -1) return hooks; + var getTag = hooks.getTag; + var quickMap = { + "BeforeUnloadEvent": "Event", + "DataTransfer": "Clipboard", + "HTMLDDElement": "HTMLElement", + "HTMLDTElement": "HTMLElement", + "HTMLPhraseElement": "HTMLElement", + "Position": "Geoposition" + }; + function getTagIE(o) { + var tag = getTag(o); + var newTag = quickMap[tag]; + if (newTag) return newTag; + if (tag == "Object") { + if (window.DataView && (o instanceof window.DataView)) return "DataView"; + } + return tag; + } + function prototypeForTagIE(tag) { + var constructor = window[tag]; + if (constructor == null) return null; + return constructor.prototype; + } + hooks.getTag = getTagIE; + hooks.prototypeForTag = prototypeForTagIE; +} +B.m=function(hooks) { return hooks; } + +B.I=new A.fq() +B.J=new A.dp() +B.a3=new A.fK() +B.n=new A.fX() +B.o=new A.hm() +B.d=new A.hn() +B.K=new A.ey() +B.P=new A.fr(null) +B.p=A.n(s([0,0,32776,33792,1,10240,0,0]),t.t) +B.Q=A.n(s(["*::class","*::dir","*::draggable","*::hidden","*::id","*::inert","*::itemprop","*::itemref","*::itemscope","*::lang","*::spellcheck","*::title","*::translate","A::accesskey","A::coords","A::hreflang","A::name","A::shape","A::tabindex","A::target","A::type","AREA::accesskey","AREA::alt","AREA::coords","AREA::nohref","AREA::shape","AREA::tabindex","AREA::target","AUDIO::controls","AUDIO::loop","AUDIO::mediagroup","AUDIO::muted","AUDIO::preload","BDO::dir","BODY::alink","BODY::bgcolor","BODY::link","BODY::text","BODY::vlink","BR::clear","BUTTON::accesskey","BUTTON::disabled","BUTTON::name","BUTTON::tabindex","BUTTON::type","BUTTON::value","CANVAS::height","CANVAS::width","CAPTION::align","COL::align","COL::char","COL::charoff","COL::span","COL::valign","COL::width","COLGROUP::align","COLGROUP::char","COLGROUP::charoff","COLGROUP::span","COLGROUP::valign","COLGROUP::width","COMMAND::checked","COMMAND::command","COMMAND::disabled","COMMAND::label","COMMAND::radiogroup","COMMAND::type","DATA::value","DEL::datetime","DETAILS::open","DIR::compact","DIV::align","DL::compact","FIELDSET::disabled","FONT::color","FONT::face","FONT::size","FORM::accept","FORM::autocomplete","FORM::enctype","FORM::method","FORM::name","FORM::novalidate","FORM::target","FRAME::name","H1::align","H2::align","H3::align","H4::align","H5::align","H6::align","HR::align","HR::noshade","HR::size","HR::width","HTML::version","IFRAME::align","IFRAME::frameborder","IFRAME::height","IFRAME::marginheight","IFRAME::marginwidth","IFRAME::width","IMG::align","IMG::alt","IMG::border","IMG::height","IMG::hspace","IMG::ismap","IMG::name","IMG::usemap","IMG::vspace","IMG::width","INPUT::accept","INPUT::accesskey","INPUT::align","INPUT::alt","INPUT::autocomplete","INPUT::autofocus","INPUT::checked","INPUT::disabled","INPUT::inputmode","INPUT::ismap","INPUT::list","INPUT::max","INPUT::maxlength","INPUT::min","INPUT::multiple","INPUT::name","INPUT::placeholder","INPUT::readonly","INPUT::required","INPUT::size","INPUT::step","INPUT::tabindex","INPUT::type","INPUT::usemap","INPUT::value","INS::datetime","KEYGEN::disabled","KEYGEN::keytype","KEYGEN::name","LABEL::accesskey","LABEL::for","LEGEND::accesskey","LEGEND::align","LI::type","LI::value","LINK::sizes","MAP::name","MENU::compact","MENU::label","MENU::type","METER::high","METER::low","METER::max","METER::min","METER::value","OBJECT::typemustmatch","OL::compact","OL::reversed","OL::start","OL::type","OPTGROUP::disabled","OPTGROUP::label","OPTION::disabled","OPTION::label","OPTION::selected","OPTION::value","OUTPUT::for","OUTPUT::name","P::align","PRE::width","PROGRESS::max","PROGRESS::min","PROGRESS::value","SELECT::autocomplete","SELECT::disabled","SELECT::multiple","SELECT::name","SELECT::required","SELECT::size","SELECT::tabindex","SOURCE::type","TABLE::align","TABLE::bgcolor","TABLE::border","TABLE::cellpadding","TABLE::cellspacing","TABLE::frame","TABLE::rules","TABLE::summary","TABLE::width","TBODY::align","TBODY::char","TBODY::charoff","TBODY::valign","TD::abbr","TD::align","TD::axis","TD::bgcolor","TD::char","TD::charoff","TD::colspan","TD::headers","TD::height","TD::nowrap","TD::rowspan","TD::scope","TD::valign","TD::width","TEXTAREA::accesskey","TEXTAREA::autocomplete","TEXTAREA::cols","TEXTAREA::disabled","TEXTAREA::inputmode","TEXTAREA::name","TEXTAREA::placeholder","TEXTAREA::readonly","TEXTAREA::required","TEXTAREA::rows","TEXTAREA::tabindex","TEXTAREA::wrap","TFOOT::align","TFOOT::char","TFOOT::charoff","TFOOT::valign","TH::abbr","TH::align","TH::axis","TH::bgcolor","TH::char","TH::charoff","TH::colspan","TH::headers","TH::height","TH::nowrap","TH::rowspan","TH::scope","TH::valign","TH::width","THEAD::align","THEAD::char","THEAD::charoff","THEAD::valign","TR::align","TR::bgcolor","TR::char","TR::charoff","TR::valign","TRACK::default","TRACK::kind","TRACK::label","TRACK::srclang","UL::compact","UL::type","VIDEO::controls","VIDEO::height","VIDEO::loop","VIDEO::mediagroup","VIDEO::muted","VIDEO::preload","VIDEO::width"]),t.s) +B.h=A.n(s([0,0,65490,45055,65535,34815,65534,18431]),t.t) +B.q=A.n(s([0,0,26624,1023,65534,2047,65534,2047]),t.t) +B.R=A.n(s(["HEAD","AREA","BASE","BASEFONT","BR","COL","COLGROUP","EMBED","FRAME","FRAMESET","HR","IMAGE","IMG","INPUT","ISINDEX","LINK","META","PARAM","SOURCE","STYLE","TITLE","WBR"]),t.s) +B.r=A.n(s([]),t.s) +B.t=A.n(s([]),t.b) +B.T=A.n(s([0,0,32722,12287,65534,34815,65534,18431]),t.t) +B.u=A.n(s([0,0,24576,1023,65534,34815,65534,18431]),t.t) +B.V=A.n(s([0,0,32754,11263,65534,34815,65534,18431]),t.t) +B.v=A.n(s([0,0,65490,12287,65535,34815,65534,18431]),t.t) +B.w=A.n(s(["bind","if","ref","repeat","syntax"]),t.s) +B.i=A.n(s(["A::href","AREA::href","BLOCKQUOTE::cite","BODY::background","COMMAND::icon","DEL::cite","FORM::action","IMG::src","INPUT::src","INS::cite","Q::cite","VIDEO::poster"]),t.s) +B.W=new A.a6(0,{},B.r,A.cJ("a6")) +B.S=A.n(s([]),A.cJ("A")) +B.x=new A.a6(0,{},B.S,A.cJ("a6")) +B.U=A.n(s(["library","class","mixin","extension","typedef","method","accessor","operator","constant","property","constructor"]),t.s) +B.X=new A.a6(11,{library:2,class:2,mixin:3,extension:3,typedef:3,method:4,accessor:4,operator:4,constant:4,property:4,constructor:4},B.U,A.cJ("a6")) +B.Z=new A.bn("call") +B.a_=A.n6("q") +B.a0=new A.fY(!1)})();(function staticFields(){$.hk=null +$.jg=null +$.j3=null +$.j2=null +$.k_=null +$.jV=null +$.k6=null +$.hP=null +$.ig=null +$.iQ=null +$.bz=null +$.cF=null +$.cG=null +$.iK=!1 +$.B=B.d +$.b5=A.n([],A.cJ("A")) +$.as=null +$.iq=null +$.j7=null +$.j6=null +$.e8=A.ft(t.N,t.Z)})();(function lazyInitializers(){var s=hunkHelpers.lazyFinal +s($,"nf","il",()=>A.jZ("_$dart_dartClosure")) +s($,"nr","ka",()=>A.ak(A.fQ({ +toString:function(){return"$receiver$"}}))) +s($,"ns","kb",()=>A.ak(A.fQ({$method$:null, +toString:function(){return"$receiver$"}}))) +s($,"nt","kc",()=>A.ak(A.fQ(null))) +s($,"nu","kd",()=>A.ak(function(){var $argumentsExpr$="$arguments$" +try{null.$method$($argumentsExpr$)}catch(r){return r.message}}())) +s($,"nx","kg",()=>A.ak(A.fQ(void 0))) +s($,"ny","kh",()=>A.ak(function(){var $argumentsExpr$="$arguments$" +try{(void 0).$method$($argumentsExpr$)}catch(r){return r.message}}())) +s($,"nw","kf",()=>A.ak(A.jo(null))) +s($,"nv","ke",()=>A.ak(function(){try{null.$method$}catch(r){return r.message}}())) +s($,"nA","kj",()=>A.ak(A.jo(void 0))) +s($,"nz","ki",()=>A.ak(function(){try{(void 0).$method$}catch(r){return r.message}}())) +s($,"nF","iT",()=>A.lk()) +s($,"nB","kk",()=>new A.h_().$0()) +s($,"nC","kl",()=>new A.fZ().$0()) +s($,"nG","km",()=>A.kY(A.m7(A.n([-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-2,-1,-2,-2,-2,-2,-2,62,-2,62,-2,63,52,53,54,55,56,57,58,59,60,61,-2,-2,-2,-1,-2,-2,-2,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,-2,-2,-2,-2,63,-2,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,-2,-2,-2,-2,-2],t.t)))) +s($,"nZ","kp",()=>A.k3(B.a_)) +s($,"o_","kq",()=>A.m6()) +s($,"nI","kn",()=>A.jb(["A","ABBR","ACRONYM","ADDRESS","AREA","ARTICLE","ASIDE","AUDIO","B","BDI","BDO","BIG","BLOCKQUOTE","BR","BUTTON","CANVAS","CAPTION","CENTER","CITE","CODE","COL","COLGROUP","COMMAND","DATA","DATALIST","DD","DEL","DETAILS","DFN","DIR","DIV","DL","DT","EM","FIELDSET","FIGCAPTION","FIGURE","FONT","FOOTER","FORM","H1","H2","H3","H4","H5","H6","HEADER","HGROUP","HR","I","IFRAME","IMG","INPUT","INS","KBD","LABEL","LEGEND","LI","MAP","MARK","MENU","METER","NAV","NOBR","OL","OPTGROUP","OPTION","OUTPUT","P","PRE","PROGRESS","Q","S","SAMP","SECTION","SELECT","SMALL","SOURCE","SPAN","STRIKE","STRONG","SUB","SUMMARY","SUP","TABLE","TBODY","TD","TEXTAREA","TFOOT","TH","THEAD","TIME","TR","TRACK","TT","U","UL","VAR","VIDEO","WBR"],t.N)) +s($,"nd","k9",()=>A.la("^\\S+$")) +s($,"nX","ko",()=>A.jU(self)) +s($,"nH","iU",()=>A.jZ("_$dart_dartObject")) +s($,"nY","iV",()=>function DartObject(a){this.o=a})})();(function nativeSupport(){!function(){var s=function(a){var m={} +m[a]=1 +return Object.keys(hunkHelpers.convertToFastObject(m))[0]} +v.getIsolateTag=function(a){return s("___dart_"+a+v.isolateTag)} +var r="___dart_isolate_tags_" +var q=Object[r]||(Object[r]=Object.create(null)) +var p="_ZxYxX" +for(var o=0;;o++){var n=s(p+"_"+o+"_") +if(!(n in q)){q[n]=1 +v.isolateTag=n +break}}v.dispatchPropertyName=v.getIsolateTag("dispatch_record")}() +hunkHelpers.setOrUpdateInterceptorsByTag({ArrayBuffer:J.aT,WebGL:J.aT,AnimationEffectReadOnly:J.a,AnimationEffectTiming:J.a,AnimationEffectTimingReadOnly:J.a,AnimationTimeline:J.a,AnimationWorkletGlobalScope:J.a,AuthenticatorAssertionResponse:J.a,AuthenticatorAttestationResponse:J.a,AuthenticatorResponse:J.a,BackgroundFetchFetch:J.a,BackgroundFetchManager:J.a,BackgroundFetchSettledFetch:J.a,BarProp:J.a,BarcodeDetector:J.a,BluetoothRemoteGATTDescriptor:J.a,Body:J.a,BudgetState:J.a,CacheStorage:J.a,CanvasGradient:J.a,CanvasPattern:J.a,CanvasRenderingContext2D:J.a,Client:J.a,Clients:J.a,CookieStore:J.a,Coordinates:J.a,Credential:J.a,CredentialUserData:J.a,CredentialsContainer:J.a,Crypto:J.a,CryptoKey:J.a,CSS:J.a,CSSVariableReferenceValue:J.a,CustomElementRegistry:J.a,DataTransfer:J.a,DataTransferItem:J.a,DeprecatedStorageInfo:J.a,DeprecatedStorageQuota:J.a,DeprecationReport:J.a,DetectedBarcode:J.a,DetectedFace:J.a,DetectedText:J.a,DeviceAcceleration:J.a,DeviceRotationRate:J.a,DirectoryEntry:J.a,webkitFileSystemDirectoryEntry:J.a,FileSystemDirectoryEntry:J.a,DirectoryReader:J.a,WebKitDirectoryReader:J.a,webkitFileSystemDirectoryReader:J.a,FileSystemDirectoryReader:J.a,DocumentOrShadowRoot:J.a,DocumentTimeline:J.a,DOMError:J.a,DOMImplementation:J.a,Iterator:J.a,DOMMatrix:J.a,DOMMatrixReadOnly:J.a,DOMParser:J.a,DOMPoint:J.a,DOMPointReadOnly:J.a,DOMQuad:J.a,DOMStringMap:J.a,Entry:J.a,webkitFileSystemEntry:J.a,FileSystemEntry:J.a,External:J.a,FaceDetector:J.a,FederatedCredential:J.a,FileEntry:J.a,webkitFileSystemFileEntry:J.a,FileSystemFileEntry:J.a,DOMFileSystem:J.a,WebKitFileSystem:J.a,webkitFileSystem:J.a,FileSystem:J.a,FontFace:J.a,FontFaceSource:J.a,FormData:J.a,GamepadButton:J.a,GamepadPose:J.a,Geolocation:J.a,Position:J.a,GeolocationPosition:J.a,Headers:J.a,HTMLHyperlinkElementUtils:J.a,IdleDeadline:J.a,ImageBitmap:J.a,ImageBitmapRenderingContext:J.a,ImageCapture:J.a,InputDeviceCapabilities:J.a,IntersectionObserver:J.a,IntersectionObserverEntry:J.a,InterventionReport:J.a,KeyframeEffect:J.a,KeyframeEffectReadOnly:J.a,MediaCapabilities:J.a,MediaCapabilitiesInfo:J.a,MediaDeviceInfo:J.a,MediaError:J.a,MediaKeyStatusMap:J.a,MediaKeySystemAccess:J.a,MediaKeys:J.a,MediaKeysPolicy:J.a,MediaMetadata:J.a,MediaSession:J.a,MediaSettingsRange:J.a,MemoryInfo:J.a,MessageChannel:J.a,Metadata:J.a,MutationObserver:J.a,WebKitMutationObserver:J.a,MutationRecord:J.a,NavigationPreloadManager:J.a,Navigator:J.a,NavigatorAutomationInformation:J.a,NavigatorConcurrentHardware:J.a,NavigatorCookies:J.a,NavigatorUserMediaError:J.a,NodeFilter:J.a,NodeIterator:J.a,NonDocumentTypeChildNode:J.a,NonElementParentNode:J.a,NoncedElement:J.a,OffscreenCanvasRenderingContext2D:J.a,OverconstrainedError:J.a,PaintRenderingContext2D:J.a,PaintSize:J.a,PaintWorkletGlobalScope:J.a,PasswordCredential:J.a,Path2D:J.a,PaymentAddress:J.a,PaymentInstruments:J.a,PaymentManager:J.a,PaymentResponse:J.a,PerformanceEntry:J.a,PerformanceLongTaskTiming:J.a,PerformanceMark:J.a,PerformanceMeasure:J.a,PerformanceNavigation:J.a,PerformanceNavigationTiming:J.a,PerformanceObserver:J.a,PerformanceObserverEntryList:J.a,PerformancePaintTiming:J.a,PerformanceResourceTiming:J.a,PerformanceServerTiming:J.a,PerformanceTiming:J.a,Permissions:J.a,PhotoCapabilities:J.a,PositionError:J.a,GeolocationPositionError:J.a,Presentation:J.a,PresentationReceiver:J.a,PublicKeyCredential:J.a,PushManager:J.a,PushMessageData:J.a,PushSubscription:J.a,PushSubscriptionOptions:J.a,Range:J.a,RelatedApplication:J.a,ReportBody:J.a,ReportingObserver:J.a,ResizeObserver:J.a,ResizeObserverEntry:J.a,RTCCertificate:J.a,RTCIceCandidate:J.a,mozRTCIceCandidate:J.a,RTCLegacyStatsReport:J.a,RTCRtpContributingSource:J.a,RTCRtpReceiver:J.a,RTCRtpSender:J.a,RTCSessionDescription:J.a,mozRTCSessionDescription:J.a,RTCStatsResponse:J.a,Screen:J.a,ScrollState:J.a,ScrollTimeline:J.a,Selection:J.a,SharedArrayBuffer:J.a,SpeechRecognitionAlternative:J.a,SpeechSynthesisVoice:J.a,StaticRange:J.a,StorageManager:J.a,StyleMedia:J.a,StylePropertyMap:J.a,StylePropertyMapReadonly:J.a,SyncManager:J.a,TaskAttributionTiming:J.a,TextDetector:J.a,TextMetrics:J.a,TrackDefault:J.a,TreeWalker:J.a,TrustedHTML:J.a,TrustedScriptURL:J.a,TrustedURL:J.a,UnderlyingSourceBase:J.a,URLSearchParams:J.a,VRCoordinateSystem:J.a,VRDisplayCapabilities:J.a,VREyeParameters:J.a,VRFrameData:J.a,VRFrameOfReference:J.a,VRPose:J.a,VRStageBounds:J.a,VRStageBoundsPoint:J.a,VRStageParameters:J.a,ValidityState:J.a,VideoPlaybackQuality:J.a,VideoTrack:J.a,VTTRegion:J.a,WindowClient:J.a,WorkletAnimation:J.a,WorkletGlobalScope:J.a,XPathEvaluator:J.a,XPathExpression:J.a,XPathNSResolver:J.a,XPathResult:J.a,XMLSerializer:J.a,XSLTProcessor:J.a,Bluetooth:J.a,BluetoothCharacteristicProperties:J.a,BluetoothRemoteGATTServer:J.a,BluetoothRemoteGATTService:J.a,BluetoothUUID:J.a,BudgetService:J.a,Cache:J.a,DOMFileSystemSync:J.a,DirectoryEntrySync:J.a,DirectoryReaderSync:J.a,EntrySync:J.a,FileEntrySync:J.a,FileReaderSync:J.a,FileWriterSync:J.a,HTMLAllCollection:J.a,Mojo:J.a,MojoHandle:J.a,MojoWatcher:J.a,NFC:J.a,PagePopupController:J.a,Report:J.a,Request:J.a,Response:J.a,SubtleCrypto:J.a,USBAlternateInterface:J.a,USBConfiguration:J.a,USBDevice:J.a,USBEndpoint:J.a,USBInTransferResult:J.a,USBInterface:J.a,USBIsochronousInTransferPacket:J.a,USBIsochronousInTransferResult:J.a,USBIsochronousOutTransferPacket:J.a,USBIsochronousOutTransferResult:J.a,USBOutTransferResult:J.a,WorkerLocation:J.a,WorkerNavigator:J.a,Worklet:J.a,IDBCursor:J.a,IDBCursorWithValue:J.a,IDBFactory:J.a,IDBIndex:J.a,IDBObjectStore:J.a,IDBObservation:J.a,IDBObserver:J.a,IDBObserverChanges:J.a,SVGAngle:J.a,SVGAnimatedAngle:J.a,SVGAnimatedBoolean:J.a,SVGAnimatedEnumeration:J.a,SVGAnimatedInteger:J.a,SVGAnimatedLength:J.a,SVGAnimatedLengthList:J.a,SVGAnimatedNumber:J.a,SVGAnimatedNumberList:J.a,SVGAnimatedPreserveAspectRatio:J.a,SVGAnimatedRect:J.a,SVGAnimatedString:J.a,SVGAnimatedTransformList:J.a,SVGMatrix:J.a,SVGPoint:J.a,SVGPreserveAspectRatio:J.a,SVGRect:J.a,SVGUnitTypes:J.a,AudioListener:J.a,AudioParam:J.a,AudioTrack:J.a,AudioWorkletGlobalScope:J.a,AudioWorkletProcessor:J.a,PeriodicWave:J.a,WebGLActiveInfo:J.a,ANGLEInstancedArrays:J.a,ANGLE_instanced_arrays:J.a,WebGLBuffer:J.a,WebGLCanvas:J.a,WebGLColorBufferFloat:J.a,WebGLCompressedTextureASTC:J.a,WebGLCompressedTextureATC:J.a,WEBGL_compressed_texture_atc:J.a,WebGLCompressedTextureETC1:J.a,WEBGL_compressed_texture_etc1:J.a,WebGLCompressedTextureETC:J.a,WebGLCompressedTexturePVRTC:J.a,WEBGL_compressed_texture_pvrtc:J.a,WebGLCompressedTextureS3TC:J.a,WEBGL_compressed_texture_s3tc:J.a,WebGLCompressedTextureS3TCsRGB:J.a,WebGLDebugRendererInfo:J.a,WEBGL_debug_renderer_info:J.a,WebGLDebugShaders:J.a,WEBGL_debug_shaders:J.a,WebGLDepthTexture:J.a,WEBGL_depth_texture:J.a,WebGLDrawBuffers:J.a,WEBGL_draw_buffers:J.a,EXTsRGB:J.a,EXT_sRGB:J.a,EXTBlendMinMax:J.a,EXT_blend_minmax:J.a,EXTColorBufferFloat:J.a,EXTColorBufferHalfFloat:J.a,EXTDisjointTimerQuery:J.a,EXTDisjointTimerQueryWebGL2:J.a,EXTFragDepth:J.a,EXT_frag_depth:J.a,EXTShaderTextureLOD:J.a,EXT_shader_texture_lod:J.a,EXTTextureFilterAnisotropic:J.a,EXT_texture_filter_anisotropic:J.a,WebGLFramebuffer:J.a,WebGLGetBufferSubDataAsync:J.a,WebGLLoseContext:J.a,WebGLExtensionLoseContext:J.a,WEBGL_lose_context:J.a,OESElementIndexUint:J.a,OES_element_index_uint:J.a,OESStandardDerivatives:J.a,OES_standard_derivatives:J.a,OESTextureFloat:J.a,OES_texture_float:J.a,OESTextureFloatLinear:J.a,OES_texture_float_linear:J.a,OESTextureHalfFloat:J.a,OES_texture_half_float:J.a,OESTextureHalfFloatLinear:J.a,OES_texture_half_float_linear:J.a,OESVertexArrayObject:J.a,OES_vertex_array_object:J.a,WebGLProgram:J.a,WebGLQuery:J.a,WebGLRenderbuffer:J.a,WebGLRenderingContext:J.a,WebGL2RenderingContext:J.a,WebGLSampler:J.a,WebGLShader:J.a,WebGLShaderPrecisionFormat:J.a,WebGLSync:J.a,WebGLTexture:J.a,WebGLTimerQueryEXT:J.a,WebGLTransformFeedback:J.a,WebGLUniformLocation:J.a,WebGLVertexArrayObject:J.a,WebGLVertexArrayObjectOES:J.a,WebGL2RenderingContextBase:J.a,DataView:A.b_,ArrayBufferView:A.b_,Float32Array:A.aZ,Float64Array:A.aZ,Int16Array:A.dg,Int32Array:A.dh,Int8Array:A.di,Uint16Array:A.dj,Uint32Array:A.dk,Uint8ClampedArray:A.c1,CanvasPixelArray:A.c1,Uint8Array:A.c2,HTMLAudioElement:A.k,HTMLBRElement:A.k,HTMLButtonElement:A.k,HTMLCanvasElement:A.k,HTMLContentElement:A.k,HTMLDListElement:A.k,HTMLDataElement:A.k,HTMLDataListElement:A.k,HTMLDetailsElement:A.k,HTMLDialogElement:A.k,HTMLDivElement:A.k,HTMLEmbedElement:A.k,HTMLFieldSetElement:A.k,HTMLHRElement:A.k,HTMLHeadElement:A.k,HTMLHeadingElement:A.k,HTMLHtmlElement:A.k,HTMLIFrameElement:A.k,HTMLImageElement:A.k,HTMLLIElement:A.k,HTMLLabelElement:A.k,HTMLLegendElement:A.k,HTMLLinkElement:A.k,HTMLMapElement:A.k,HTMLMediaElement:A.k,HTMLMenuElement:A.k,HTMLMetaElement:A.k,HTMLMeterElement:A.k,HTMLModElement:A.k,HTMLOListElement:A.k,HTMLObjectElement:A.k,HTMLOptGroupElement:A.k,HTMLOptionElement:A.k,HTMLOutputElement:A.k,HTMLParagraphElement:A.k,HTMLParamElement:A.k,HTMLPictureElement:A.k,HTMLPreElement:A.k,HTMLProgressElement:A.k,HTMLQuoteElement:A.k,HTMLScriptElement:A.k,HTMLShadowElement:A.k,HTMLSlotElement:A.k,HTMLSourceElement:A.k,HTMLSpanElement:A.k,HTMLStyleElement:A.k,HTMLTableCaptionElement:A.k,HTMLTableCellElement:A.k,HTMLTableDataCellElement:A.k,HTMLTableHeaderCellElement:A.k,HTMLTableColElement:A.k,HTMLTextAreaElement:A.k,HTMLTimeElement:A.k,HTMLTitleElement:A.k,HTMLTrackElement:A.k,HTMLUListElement:A.k,HTMLUnknownElement:A.k,HTMLVideoElement:A.k,HTMLDirectoryElement:A.k,HTMLFontElement:A.k,HTMLFrameElement:A.k,HTMLFrameSetElement:A.k,HTMLMarqueeElement:A.k,HTMLElement:A.k,AccessibleNodeList:A.f_,HTMLAnchorElement:A.cM,HTMLAreaElement:A.cN,HTMLBaseElement:A.be,Blob:A.aM,HTMLBodyElement:A.aN,CDATASection:A.a_,CharacterData:A.a_,Comment:A.a_,ProcessingInstruction:A.a_,Text:A.a_,CSSPerspective:A.f8,CSSCharsetRule:A.w,CSSConditionRule:A.w,CSSFontFaceRule:A.w,CSSGroupingRule:A.w,CSSImportRule:A.w,CSSKeyframeRule:A.w,MozCSSKeyframeRule:A.w,WebKitCSSKeyframeRule:A.w,CSSKeyframesRule:A.w,MozCSSKeyframesRule:A.w,WebKitCSSKeyframesRule:A.w,CSSMediaRule:A.w,CSSNamespaceRule:A.w,CSSPageRule:A.w,CSSRule:A.w,CSSStyleRule:A.w,CSSSupportsRule:A.w,CSSViewportRule:A.w,CSSStyleDeclaration:A.bH,MSStyleCSSProperties:A.bH,CSS2Properties:A.bH,CSSImageValue:A.S,CSSKeywordValue:A.S,CSSNumericValue:A.S,CSSPositionValue:A.S,CSSResourceValue:A.S,CSSUnitValue:A.S,CSSURLImageValue:A.S,CSSStyleValue:A.S,CSSMatrixComponent:A.a7,CSSRotation:A.a7,CSSScale:A.a7,CSSSkew:A.a7,CSSTranslation:A.a7,CSSTransformComponent:A.a7,CSSTransformValue:A.fa,CSSUnparsedValue:A.fb,DataTransferItemList:A.fc,XMLDocument:A.aQ,Document:A.aQ,DOMException:A.fd,ClientRectList:A.bJ,DOMRectList:A.bJ,DOMRectReadOnly:A.bK,DOMStringList:A.d1,DOMTokenList:A.fe,Element:A.x,AbortPaymentEvent:A.h,AnimationEvent:A.h,AnimationPlaybackEvent:A.h,ApplicationCacheErrorEvent:A.h,BackgroundFetchClickEvent:A.h,BackgroundFetchEvent:A.h,BackgroundFetchFailEvent:A.h,BackgroundFetchedEvent:A.h,BeforeInstallPromptEvent:A.h,BeforeUnloadEvent:A.h,BlobEvent:A.h,CanMakePaymentEvent:A.h,ClipboardEvent:A.h,CloseEvent:A.h,CustomEvent:A.h,DeviceMotionEvent:A.h,DeviceOrientationEvent:A.h,ErrorEvent:A.h,ExtendableEvent:A.h,ExtendableMessageEvent:A.h,FetchEvent:A.h,FontFaceSetLoadEvent:A.h,ForeignFetchEvent:A.h,GamepadEvent:A.h,HashChangeEvent:A.h,InstallEvent:A.h,MediaEncryptedEvent:A.h,MediaKeyMessageEvent:A.h,MediaQueryListEvent:A.h,MediaStreamEvent:A.h,MediaStreamTrackEvent:A.h,MessageEvent:A.h,MIDIConnectionEvent:A.h,MIDIMessageEvent:A.h,MutationEvent:A.h,NotificationEvent:A.h,PageTransitionEvent:A.h,PaymentRequestEvent:A.h,PaymentRequestUpdateEvent:A.h,PopStateEvent:A.h,PresentationConnectionAvailableEvent:A.h,PresentationConnectionCloseEvent:A.h,ProgressEvent:A.h,PromiseRejectionEvent:A.h,PushEvent:A.h,RTCDataChannelEvent:A.h,RTCDTMFToneChangeEvent:A.h,RTCPeerConnectionIceEvent:A.h,RTCTrackEvent:A.h,SecurityPolicyViolationEvent:A.h,SensorErrorEvent:A.h,SpeechRecognitionError:A.h,SpeechRecognitionEvent:A.h,SpeechSynthesisEvent:A.h,StorageEvent:A.h,SyncEvent:A.h,TrackEvent:A.h,TransitionEvent:A.h,WebKitTransitionEvent:A.h,VRDeviceEvent:A.h,VRDisplayEvent:A.h,VRSessionEvent:A.h,MojoInterfaceRequestEvent:A.h,ResourceProgressEvent:A.h,USBConnectionEvent:A.h,IDBVersionChangeEvent:A.h,AudioProcessingEvent:A.h,OfflineAudioCompletionEvent:A.h,WebGLContextEvent:A.h,Event:A.h,InputEvent:A.h,SubmitEvent:A.h,AbsoluteOrientationSensor:A.c,Accelerometer:A.c,AccessibleNode:A.c,AmbientLightSensor:A.c,Animation:A.c,ApplicationCache:A.c,DOMApplicationCache:A.c,OfflineResourceList:A.c,BackgroundFetchRegistration:A.c,BatteryManager:A.c,BroadcastChannel:A.c,CanvasCaptureMediaStreamTrack:A.c,EventSource:A.c,FileReader:A.c,FontFaceSet:A.c,Gyroscope:A.c,XMLHttpRequest:A.c,XMLHttpRequestEventTarget:A.c,XMLHttpRequestUpload:A.c,LinearAccelerationSensor:A.c,Magnetometer:A.c,MediaDevices:A.c,MediaKeySession:A.c,MediaQueryList:A.c,MediaRecorder:A.c,MediaSource:A.c,MediaStream:A.c,MediaStreamTrack:A.c,MessagePort:A.c,MIDIAccess:A.c,MIDIInput:A.c,MIDIOutput:A.c,MIDIPort:A.c,NetworkInformation:A.c,Notification:A.c,OffscreenCanvas:A.c,OrientationSensor:A.c,PaymentRequest:A.c,Performance:A.c,PermissionStatus:A.c,PresentationAvailability:A.c,PresentationConnection:A.c,PresentationConnectionList:A.c,PresentationRequest:A.c,RelativeOrientationSensor:A.c,RemotePlayback:A.c,RTCDataChannel:A.c,DataChannel:A.c,RTCDTMFSender:A.c,RTCPeerConnection:A.c,webkitRTCPeerConnection:A.c,mozRTCPeerConnection:A.c,ScreenOrientation:A.c,Sensor:A.c,ServiceWorker:A.c,ServiceWorkerContainer:A.c,ServiceWorkerRegistration:A.c,SharedWorker:A.c,SpeechRecognition:A.c,SpeechSynthesis:A.c,SpeechSynthesisUtterance:A.c,VR:A.c,VRDevice:A.c,VRDisplay:A.c,VRSession:A.c,VisualViewport:A.c,WebSocket:A.c,Worker:A.c,WorkerPerformance:A.c,BluetoothDevice:A.c,BluetoothRemoteGATTCharacteristic:A.c,Clipboard:A.c,MojoInterfaceInterceptor:A.c,USB:A.c,IDBDatabase:A.c,IDBOpenDBRequest:A.c,IDBVersionChangeRequest:A.c,IDBRequest:A.c,IDBTransaction:A.c,AnalyserNode:A.c,RealtimeAnalyserNode:A.c,AudioBufferSourceNode:A.c,AudioDestinationNode:A.c,AudioNode:A.c,AudioScheduledSourceNode:A.c,AudioWorkletNode:A.c,BiquadFilterNode:A.c,ChannelMergerNode:A.c,AudioChannelMerger:A.c,ChannelSplitterNode:A.c,AudioChannelSplitter:A.c,ConstantSourceNode:A.c,ConvolverNode:A.c,DelayNode:A.c,DynamicsCompressorNode:A.c,GainNode:A.c,AudioGainNode:A.c,IIRFilterNode:A.c,MediaElementAudioSourceNode:A.c,MediaStreamAudioDestinationNode:A.c,MediaStreamAudioSourceNode:A.c,OscillatorNode:A.c,Oscillator:A.c,PannerNode:A.c,AudioPannerNode:A.c,webkitAudioPannerNode:A.c,ScriptProcessorNode:A.c,JavaScriptAudioNode:A.c,StereoPannerNode:A.c,WaveShaperNode:A.c,EventTarget:A.c,File:A.a0,FileList:A.d2,FileWriter:A.fi,HTMLFormElement:A.d3,Gamepad:A.a9,History:A.fk,HTMLCollection:A.aS,HTMLFormControlsCollection:A.aS,HTMLOptionsCollection:A.aS,HTMLDocument:A.bQ,ImageData:A.bR,HTMLInputElement:A.at,KeyboardEvent:A.bi,Location:A.fv,MediaList:A.fx,MIDIInputMap:A.dd,MIDIOutputMap:A.de,MimeType:A.ac,MimeTypeArray:A.df,DocumentFragment:A.m,ShadowRoot:A.m,DocumentType:A.m,Node:A.m,NodeList:A.c3,RadioNodeList:A.c3,Plugin:A.ad,PluginArray:A.dr,RTCStatsReport:A.dt,HTMLSelectElement:A.dv,SourceBuffer:A.af,SourceBufferList:A.dx,SpeechGrammar:A.ag,SpeechGrammarList:A.dy,SpeechRecognitionResult:A.ah,Storage:A.dA,CSSStyleSheet:A.W,StyleSheet:A.W,HTMLTableElement:A.ca,HTMLTableRowElement:A.dD,HTMLTableSectionElement:A.dE,HTMLTemplateElement:A.bp,TextTrack:A.ai,TextTrackCue:A.X,VTTCue:A.X,TextTrackCueList:A.dG,TextTrackList:A.dH,TimeRanges:A.fN,Touch:A.aj,TouchList:A.dI,TrackDefaultList:A.fO,CompositionEvent:A.N,FocusEvent:A.N,MouseEvent:A.N,DragEvent:A.N,PointerEvent:A.N,TextEvent:A.N,TouchEvent:A.N,WheelEvent:A.N,UIEvent:A.N,URL:A.fW,VideoTrackList:A.h0,Window:A.bs,DOMWindow:A.bs,DedicatedWorkerGlobalScope:A.al,ServiceWorkerGlobalScope:A.al,SharedWorkerGlobalScope:A.al,WorkerGlobalScope:A.al,Attr:A.bt,CSSRuleList:A.dV,ClientRect:A.cd,DOMRect:A.cd,GamepadList:A.e7,NamedNodeMap:A.ck,MozNamedAttrMap:A.ck,SpeechRecognitionResultList:A.et,StyleSheetList:A.ez,IDBKeyRange:A.bV,SVGLength:A.av,SVGLengthList:A.da,SVGNumber:A.aw,SVGNumberList:A.dn,SVGPointList:A.fG,SVGScriptElement:A.bl,SVGStringList:A.dC,SVGAElement:A.i,SVGAnimateElement:A.i,SVGAnimateMotionElement:A.i,SVGAnimateTransformElement:A.i,SVGAnimationElement:A.i,SVGCircleElement:A.i,SVGClipPathElement:A.i,SVGDefsElement:A.i,SVGDescElement:A.i,SVGDiscardElement:A.i,SVGEllipseElement:A.i,SVGFEBlendElement:A.i,SVGFEColorMatrixElement:A.i,SVGFEComponentTransferElement:A.i,SVGFECompositeElement:A.i,SVGFEConvolveMatrixElement:A.i,SVGFEDiffuseLightingElement:A.i,SVGFEDisplacementMapElement:A.i,SVGFEDistantLightElement:A.i,SVGFEFloodElement:A.i,SVGFEFuncAElement:A.i,SVGFEFuncBElement:A.i,SVGFEFuncGElement:A.i,SVGFEFuncRElement:A.i,SVGFEGaussianBlurElement:A.i,SVGFEImageElement:A.i,SVGFEMergeElement:A.i,SVGFEMergeNodeElement:A.i,SVGFEMorphologyElement:A.i,SVGFEOffsetElement:A.i,SVGFEPointLightElement:A.i,SVGFESpecularLightingElement:A.i,SVGFESpotLightElement:A.i,SVGFETileElement:A.i,SVGFETurbulenceElement:A.i,SVGFilterElement:A.i,SVGForeignObjectElement:A.i,SVGGElement:A.i,SVGGeometryElement:A.i,SVGGraphicsElement:A.i,SVGImageElement:A.i,SVGLineElement:A.i,SVGLinearGradientElement:A.i,SVGMarkerElement:A.i,SVGMaskElement:A.i,SVGMetadataElement:A.i,SVGPathElement:A.i,SVGPatternElement:A.i,SVGPolygonElement:A.i,SVGPolylineElement:A.i,SVGRadialGradientElement:A.i,SVGRectElement:A.i,SVGSetElement:A.i,SVGStopElement:A.i,SVGStyleElement:A.i,SVGSVGElement:A.i,SVGSwitchElement:A.i,SVGSymbolElement:A.i,SVGTSpanElement:A.i,SVGTextContentElement:A.i,SVGTextElement:A.i,SVGTextPathElement:A.i,SVGTextPositioningElement:A.i,SVGTitleElement:A.i,SVGUseElement:A.i,SVGViewElement:A.i,SVGGradientElement:A.i,SVGComponentTransferFunctionElement:A.i,SVGFEDropShadowElement:A.i,SVGMPathElement:A.i,SVGElement:A.i,SVGTransform:A.aA,SVGTransformList:A.dJ,AudioBuffer:A.f2,AudioParamMap:A.cR,AudioTrackList:A.f4,AudioContext:A.bd,webkitAudioContext:A.bd,BaseAudioContext:A.bd,OfflineAudioContext:A.fF}) +hunkHelpers.setOrUpdateLeafTags({ArrayBuffer:true,WebGL:true,AnimationEffectReadOnly:true,AnimationEffectTiming:true,AnimationEffectTimingReadOnly:true,AnimationTimeline:true,AnimationWorkletGlobalScope:true,AuthenticatorAssertionResponse:true,AuthenticatorAttestationResponse:true,AuthenticatorResponse:true,BackgroundFetchFetch:true,BackgroundFetchManager:true,BackgroundFetchSettledFetch:true,BarProp:true,BarcodeDetector:true,BluetoothRemoteGATTDescriptor:true,Body:true,BudgetState:true,CacheStorage:true,CanvasGradient:true,CanvasPattern:true,CanvasRenderingContext2D:true,Client:true,Clients:true,CookieStore:true,Coordinates:true,Credential:true,CredentialUserData:true,CredentialsContainer:true,Crypto:true,CryptoKey:true,CSS:true,CSSVariableReferenceValue:true,CustomElementRegistry:true,DataTransfer:true,DataTransferItem:true,DeprecatedStorageInfo:true,DeprecatedStorageQuota:true,DeprecationReport:true,DetectedBarcode:true,DetectedFace:true,DetectedText:true,DeviceAcceleration:true,DeviceRotationRate:true,DirectoryEntry:true,webkitFileSystemDirectoryEntry:true,FileSystemDirectoryEntry:true,DirectoryReader:true,WebKitDirectoryReader:true,webkitFileSystemDirectoryReader:true,FileSystemDirectoryReader:true,DocumentOrShadowRoot:true,DocumentTimeline:true,DOMError:true,DOMImplementation:true,Iterator:true,DOMMatrix:true,DOMMatrixReadOnly:true,DOMParser:true,DOMPoint:true,DOMPointReadOnly:true,DOMQuad:true,DOMStringMap:true,Entry:true,webkitFileSystemEntry:true,FileSystemEntry:true,External:true,FaceDetector:true,FederatedCredential:true,FileEntry:true,webkitFileSystemFileEntry:true,FileSystemFileEntry:true,DOMFileSystem:true,WebKitFileSystem:true,webkitFileSystem:true,FileSystem:true,FontFace:true,FontFaceSource:true,FormData:true,GamepadButton:true,GamepadPose:true,Geolocation:true,Position:true,GeolocationPosition:true,Headers:true,HTMLHyperlinkElementUtils:true,IdleDeadline:true,ImageBitmap:true,ImageBitmapRenderingContext:true,ImageCapture:true,InputDeviceCapabilities:true,IntersectionObserver:true,IntersectionObserverEntry:true,InterventionReport:true,KeyframeEffect:true,KeyframeEffectReadOnly:true,MediaCapabilities:true,MediaCapabilitiesInfo:true,MediaDeviceInfo:true,MediaError:true,MediaKeyStatusMap:true,MediaKeySystemAccess:true,MediaKeys:true,MediaKeysPolicy:true,MediaMetadata:true,MediaSession:true,MediaSettingsRange:true,MemoryInfo:true,MessageChannel:true,Metadata:true,MutationObserver:true,WebKitMutationObserver:true,MutationRecord:true,NavigationPreloadManager:true,Navigator:true,NavigatorAutomationInformation:true,NavigatorConcurrentHardware:true,NavigatorCookies:true,NavigatorUserMediaError:true,NodeFilter:true,NodeIterator:true,NonDocumentTypeChildNode:true,NonElementParentNode:true,NoncedElement:true,OffscreenCanvasRenderingContext2D:true,OverconstrainedError:true,PaintRenderingContext2D:true,PaintSize:true,PaintWorkletGlobalScope:true,PasswordCredential:true,Path2D:true,PaymentAddress:true,PaymentInstruments:true,PaymentManager:true,PaymentResponse:true,PerformanceEntry:true,PerformanceLongTaskTiming:true,PerformanceMark:true,PerformanceMeasure:true,PerformanceNavigation:true,PerformanceNavigationTiming:true,PerformanceObserver:true,PerformanceObserverEntryList:true,PerformancePaintTiming:true,PerformanceResourceTiming:true,PerformanceServerTiming:true,PerformanceTiming:true,Permissions:true,PhotoCapabilities:true,PositionError:true,GeolocationPositionError:true,Presentation:true,PresentationReceiver:true,PublicKeyCredential:true,PushManager:true,PushMessageData:true,PushSubscription:true,PushSubscriptionOptions:true,Range:true,RelatedApplication:true,ReportBody:true,ReportingObserver:true,ResizeObserver:true,ResizeObserverEntry:true,RTCCertificate:true,RTCIceCandidate:true,mozRTCIceCandidate:true,RTCLegacyStatsReport:true,RTCRtpContributingSource:true,RTCRtpReceiver:true,RTCRtpSender:true,RTCSessionDescription:true,mozRTCSessionDescription:true,RTCStatsResponse:true,Screen:true,ScrollState:true,ScrollTimeline:true,Selection:true,SharedArrayBuffer:true,SpeechRecognitionAlternative:true,SpeechSynthesisVoice:true,StaticRange:true,StorageManager:true,StyleMedia:true,StylePropertyMap:true,StylePropertyMapReadonly:true,SyncManager:true,TaskAttributionTiming:true,TextDetector:true,TextMetrics:true,TrackDefault:true,TreeWalker:true,TrustedHTML:true,TrustedScriptURL:true,TrustedURL:true,UnderlyingSourceBase:true,URLSearchParams:true,VRCoordinateSystem:true,VRDisplayCapabilities:true,VREyeParameters:true,VRFrameData:true,VRFrameOfReference:true,VRPose:true,VRStageBounds:true,VRStageBoundsPoint:true,VRStageParameters:true,ValidityState:true,VideoPlaybackQuality:true,VideoTrack:true,VTTRegion:true,WindowClient:true,WorkletAnimation:true,WorkletGlobalScope:true,XPathEvaluator:true,XPathExpression:true,XPathNSResolver:true,XPathResult:true,XMLSerializer:true,XSLTProcessor:true,Bluetooth:true,BluetoothCharacteristicProperties:true,BluetoothRemoteGATTServer:true,BluetoothRemoteGATTService:true,BluetoothUUID:true,BudgetService:true,Cache:true,DOMFileSystemSync:true,DirectoryEntrySync:true,DirectoryReaderSync:true,EntrySync:true,FileEntrySync:true,FileReaderSync:true,FileWriterSync:true,HTMLAllCollection:true,Mojo:true,MojoHandle:true,MojoWatcher:true,NFC:true,PagePopupController:true,Report:true,Request:true,Response:true,SubtleCrypto:true,USBAlternateInterface:true,USBConfiguration:true,USBDevice:true,USBEndpoint:true,USBInTransferResult:true,USBInterface:true,USBIsochronousInTransferPacket:true,USBIsochronousInTransferResult:true,USBIsochronousOutTransferPacket:true,USBIsochronousOutTransferResult:true,USBOutTransferResult:true,WorkerLocation:true,WorkerNavigator:true,Worklet:true,IDBCursor:true,IDBCursorWithValue:true,IDBFactory:true,IDBIndex:true,IDBObjectStore:true,IDBObservation:true,IDBObserver:true,IDBObserverChanges:true,SVGAngle:true,SVGAnimatedAngle:true,SVGAnimatedBoolean:true,SVGAnimatedEnumeration:true,SVGAnimatedInteger:true,SVGAnimatedLength:true,SVGAnimatedLengthList:true,SVGAnimatedNumber:true,SVGAnimatedNumberList:true,SVGAnimatedPreserveAspectRatio:true,SVGAnimatedRect:true,SVGAnimatedString:true,SVGAnimatedTransformList:true,SVGMatrix:true,SVGPoint:true,SVGPreserveAspectRatio:true,SVGRect:true,SVGUnitTypes:true,AudioListener:true,AudioParam:true,AudioTrack:true,AudioWorkletGlobalScope:true,AudioWorkletProcessor:true,PeriodicWave:true,WebGLActiveInfo:true,ANGLEInstancedArrays:true,ANGLE_instanced_arrays:true,WebGLBuffer:true,WebGLCanvas:true,WebGLColorBufferFloat:true,WebGLCompressedTextureASTC:true,WebGLCompressedTextureATC:true,WEBGL_compressed_texture_atc:true,WebGLCompressedTextureETC1:true,WEBGL_compressed_texture_etc1:true,WebGLCompressedTextureETC:true,WebGLCompressedTexturePVRTC:true,WEBGL_compressed_texture_pvrtc:true,WebGLCompressedTextureS3TC:true,WEBGL_compressed_texture_s3tc:true,WebGLCompressedTextureS3TCsRGB:true,WebGLDebugRendererInfo:true,WEBGL_debug_renderer_info:true,WebGLDebugShaders:true,WEBGL_debug_shaders:true,WebGLDepthTexture:true,WEBGL_depth_texture:true,WebGLDrawBuffers:true,WEBGL_draw_buffers:true,EXTsRGB:true,EXT_sRGB:true,EXTBlendMinMax:true,EXT_blend_minmax:true,EXTColorBufferFloat:true,EXTColorBufferHalfFloat:true,EXTDisjointTimerQuery:true,EXTDisjointTimerQueryWebGL2:true,EXTFragDepth:true,EXT_frag_depth:true,EXTShaderTextureLOD:true,EXT_shader_texture_lod:true,EXTTextureFilterAnisotropic:true,EXT_texture_filter_anisotropic:true,WebGLFramebuffer:true,WebGLGetBufferSubDataAsync:true,WebGLLoseContext:true,WebGLExtensionLoseContext:true,WEBGL_lose_context:true,OESElementIndexUint:true,OES_element_index_uint:true,OESStandardDerivatives:true,OES_standard_derivatives:true,OESTextureFloat:true,OES_texture_float:true,OESTextureFloatLinear:true,OES_texture_float_linear:true,OESTextureHalfFloat:true,OES_texture_half_float:true,OESTextureHalfFloatLinear:true,OES_texture_half_float_linear:true,OESVertexArrayObject:true,OES_vertex_array_object:true,WebGLProgram:true,WebGLQuery:true,WebGLRenderbuffer:true,WebGLRenderingContext:true,WebGL2RenderingContext:true,WebGLSampler:true,WebGLShader:true,WebGLShaderPrecisionFormat:true,WebGLSync:true,WebGLTexture:true,WebGLTimerQueryEXT:true,WebGLTransformFeedback:true,WebGLUniformLocation:true,WebGLVertexArrayObject:true,WebGLVertexArrayObjectOES:true,WebGL2RenderingContextBase:true,DataView:true,ArrayBufferView:false,Float32Array:true,Float64Array:true,Int16Array:true,Int32Array:true,Int8Array:true,Uint16Array:true,Uint32Array:true,Uint8ClampedArray:true,CanvasPixelArray:true,Uint8Array:false,HTMLAudioElement:true,HTMLBRElement:true,HTMLButtonElement:true,HTMLCanvasElement:true,HTMLContentElement:true,HTMLDListElement:true,HTMLDataElement:true,HTMLDataListElement:true,HTMLDetailsElement:true,HTMLDialogElement:true,HTMLDivElement:true,HTMLEmbedElement:true,HTMLFieldSetElement:true,HTMLHRElement:true,HTMLHeadElement:true,HTMLHeadingElement:true,HTMLHtmlElement:true,HTMLIFrameElement:true,HTMLImageElement:true,HTMLLIElement:true,HTMLLabelElement:true,HTMLLegendElement:true,HTMLLinkElement:true,HTMLMapElement:true,HTMLMediaElement:true,HTMLMenuElement:true,HTMLMetaElement:true,HTMLMeterElement:true,HTMLModElement:true,HTMLOListElement:true,HTMLObjectElement:true,HTMLOptGroupElement:true,HTMLOptionElement:true,HTMLOutputElement:true,HTMLParagraphElement:true,HTMLParamElement:true,HTMLPictureElement:true,HTMLPreElement:true,HTMLProgressElement:true,HTMLQuoteElement:true,HTMLScriptElement:true,HTMLShadowElement:true,HTMLSlotElement:true,HTMLSourceElement:true,HTMLSpanElement:true,HTMLStyleElement:true,HTMLTableCaptionElement:true,HTMLTableCellElement:true,HTMLTableDataCellElement:true,HTMLTableHeaderCellElement:true,HTMLTableColElement:true,HTMLTextAreaElement:true,HTMLTimeElement:true,HTMLTitleElement:true,HTMLTrackElement:true,HTMLUListElement:true,HTMLUnknownElement:true,HTMLVideoElement:true,HTMLDirectoryElement:true,HTMLFontElement:true,HTMLFrameElement:true,HTMLFrameSetElement:true,HTMLMarqueeElement:true,HTMLElement:false,AccessibleNodeList:true,HTMLAnchorElement:true,HTMLAreaElement:true,HTMLBaseElement:true,Blob:false,HTMLBodyElement:true,CDATASection:true,CharacterData:true,Comment:true,ProcessingInstruction:true,Text:true,CSSPerspective:true,CSSCharsetRule:true,CSSConditionRule:true,CSSFontFaceRule:true,CSSGroupingRule:true,CSSImportRule:true,CSSKeyframeRule:true,MozCSSKeyframeRule:true,WebKitCSSKeyframeRule:true,CSSKeyframesRule:true,MozCSSKeyframesRule:true,WebKitCSSKeyframesRule:true,CSSMediaRule:true,CSSNamespaceRule:true,CSSPageRule:true,CSSRule:true,CSSStyleRule:true,CSSSupportsRule:true,CSSViewportRule:true,CSSStyleDeclaration:true,MSStyleCSSProperties:true,CSS2Properties:true,CSSImageValue:true,CSSKeywordValue:true,CSSNumericValue:true,CSSPositionValue:true,CSSResourceValue:true,CSSUnitValue:true,CSSURLImageValue:true,CSSStyleValue:false,CSSMatrixComponent:true,CSSRotation:true,CSSScale:true,CSSSkew:true,CSSTranslation:true,CSSTransformComponent:false,CSSTransformValue:true,CSSUnparsedValue:true,DataTransferItemList:true,XMLDocument:true,Document:false,DOMException:true,ClientRectList:true,DOMRectList:true,DOMRectReadOnly:false,DOMStringList:true,DOMTokenList:true,Element:false,AbortPaymentEvent:true,AnimationEvent:true,AnimationPlaybackEvent:true,ApplicationCacheErrorEvent:true,BackgroundFetchClickEvent:true,BackgroundFetchEvent:true,BackgroundFetchFailEvent:true,BackgroundFetchedEvent:true,BeforeInstallPromptEvent:true,BeforeUnloadEvent:true,BlobEvent:true,CanMakePaymentEvent:true,ClipboardEvent:true,CloseEvent:true,CustomEvent:true,DeviceMotionEvent:true,DeviceOrientationEvent:true,ErrorEvent:true,ExtendableEvent:true,ExtendableMessageEvent:true,FetchEvent:true,FontFaceSetLoadEvent:true,ForeignFetchEvent:true,GamepadEvent:true,HashChangeEvent:true,InstallEvent:true,MediaEncryptedEvent:true,MediaKeyMessageEvent:true,MediaQueryListEvent:true,MediaStreamEvent:true,MediaStreamTrackEvent:true,MessageEvent:true,MIDIConnectionEvent:true,MIDIMessageEvent:true,MutationEvent:true,NotificationEvent:true,PageTransitionEvent:true,PaymentRequestEvent:true,PaymentRequestUpdateEvent:true,PopStateEvent:true,PresentationConnectionAvailableEvent:true,PresentationConnectionCloseEvent:true,ProgressEvent:true,PromiseRejectionEvent:true,PushEvent:true,RTCDataChannelEvent:true,RTCDTMFToneChangeEvent:true,RTCPeerConnectionIceEvent:true,RTCTrackEvent:true,SecurityPolicyViolationEvent:true,SensorErrorEvent:true,SpeechRecognitionError:true,SpeechRecognitionEvent:true,SpeechSynthesisEvent:true,StorageEvent:true,SyncEvent:true,TrackEvent:true,TransitionEvent:true,WebKitTransitionEvent:true,VRDeviceEvent:true,VRDisplayEvent:true,VRSessionEvent:true,MojoInterfaceRequestEvent:true,ResourceProgressEvent:true,USBConnectionEvent:true,IDBVersionChangeEvent:true,AudioProcessingEvent:true,OfflineAudioCompletionEvent:true,WebGLContextEvent:true,Event:false,InputEvent:false,SubmitEvent:false,AbsoluteOrientationSensor:true,Accelerometer:true,AccessibleNode:true,AmbientLightSensor:true,Animation:true,ApplicationCache:true,DOMApplicationCache:true,OfflineResourceList:true,BackgroundFetchRegistration:true,BatteryManager:true,BroadcastChannel:true,CanvasCaptureMediaStreamTrack:true,EventSource:true,FileReader:true,FontFaceSet:true,Gyroscope:true,XMLHttpRequest:true,XMLHttpRequestEventTarget:true,XMLHttpRequestUpload:true,LinearAccelerationSensor:true,Magnetometer:true,MediaDevices:true,MediaKeySession:true,MediaQueryList:true,MediaRecorder:true,MediaSource:true,MediaStream:true,MediaStreamTrack:true,MessagePort:true,MIDIAccess:true,MIDIInput:true,MIDIOutput:true,MIDIPort:true,NetworkInformation:true,Notification:true,OffscreenCanvas:true,OrientationSensor:true,PaymentRequest:true,Performance:true,PermissionStatus:true,PresentationAvailability:true,PresentationConnection:true,PresentationConnectionList:true,PresentationRequest:true,RelativeOrientationSensor:true,RemotePlayback:true,RTCDataChannel:true,DataChannel:true,RTCDTMFSender:true,RTCPeerConnection:true,webkitRTCPeerConnection:true,mozRTCPeerConnection:true,ScreenOrientation:true,Sensor:true,ServiceWorker:true,ServiceWorkerContainer:true,ServiceWorkerRegistration:true,SharedWorker:true,SpeechRecognition:true,SpeechSynthesis:true,SpeechSynthesisUtterance:true,VR:true,VRDevice:true,VRDisplay:true,VRSession:true,VisualViewport:true,WebSocket:true,Worker:true,WorkerPerformance:true,BluetoothDevice:true,BluetoothRemoteGATTCharacteristic:true,Clipboard:true,MojoInterfaceInterceptor:true,USB:true,IDBDatabase:true,IDBOpenDBRequest:true,IDBVersionChangeRequest:true,IDBRequest:true,IDBTransaction:true,AnalyserNode:true,RealtimeAnalyserNode:true,AudioBufferSourceNode:true,AudioDestinationNode:true,AudioNode:true,AudioScheduledSourceNode:true,AudioWorkletNode:true,BiquadFilterNode:true,ChannelMergerNode:true,AudioChannelMerger:true,ChannelSplitterNode:true,AudioChannelSplitter:true,ConstantSourceNode:true,ConvolverNode:true,DelayNode:true,DynamicsCompressorNode:true,GainNode:true,AudioGainNode:true,IIRFilterNode:true,MediaElementAudioSourceNode:true,MediaStreamAudioDestinationNode:true,MediaStreamAudioSourceNode:true,OscillatorNode:true,Oscillator:true,PannerNode:true,AudioPannerNode:true,webkitAudioPannerNode:true,ScriptProcessorNode:true,JavaScriptAudioNode:true,StereoPannerNode:true,WaveShaperNode:true,EventTarget:false,File:true,FileList:true,FileWriter:true,HTMLFormElement:true,Gamepad:true,History:true,HTMLCollection:true,HTMLFormControlsCollection:true,HTMLOptionsCollection:true,HTMLDocument:true,ImageData:true,HTMLInputElement:true,KeyboardEvent:true,Location:true,MediaList:true,MIDIInputMap:true,MIDIOutputMap:true,MimeType:true,MimeTypeArray:true,DocumentFragment:true,ShadowRoot:true,DocumentType:true,Node:false,NodeList:true,RadioNodeList:true,Plugin:true,PluginArray:true,RTCStatsReport:true,HTMLSelectElement:true,SourceBuffer:true,SourceBufferList:true,SpeechGrammar:true,SpeechGrammarList:true,SpeechRecognitionResult:true,Storage:true,CSSStyleSheet:true,StyleSheet:true,HTMLTableElement:true,HTMLTableRowElement:true,HTMLTableSectionElement:true,HTMLTemplateElement:true,TextTrack:true,TextTrackCue:true,VTTCue:true,TextTrackCueList:true,TextTrackList:true,TimeRanges:true,Touch:true,TouchList:true,TrackDefaultList:true,CompositionEvent:true,FocusEvent:true,MouseEvent:true,DragEvent:true,PointerEvent:true,TextEvent:true,TouchEvent:true,WheelEvent:true,UIEvent:false,URL:true,VideoTrackList:true,Window:true,DOMWindow:true,DedicatedWorkerGlobalScope:true,ServiceWorkerGlobalScope:true,SharedWorkerGlobalScope:true,WorkerGlobalScope:true,Attr:true,CSSRuleList:true,ClientRect:true,DOMRect:true,GamepadList:true,NamedNodeMap:true,MozNamedAttrMap:true,SpeechRecognitionResultList:true,StyleSheetList:true,IDBKeyRange:true,SVGLength:true,SVGLengthList:true,SVGNumber:true,SVGNumberList:true,SVGPointList:true,SVGScriptElement:true,SVGStringList:true,SVGAElement:true,SVGAnimateElement:true,SVGAnimateMotionElement:true,SVGAnimateTransformElement:true,SVGAnimationElement:true,SVGCircleElement:true,SVGClipPathElement:true,SVGDefsElement:true,SVGDescElement:true,SVGDiscardElement:true,SVGEllipseElement:true,SVGFEBlendElement:true,SVGFEColorMatrixElement:true,SVGFEComponentTransferElement:true,SVGFECompositeElement:true,SVGFEConvolveMatrixElement:true,SVGFEDiffuseLightingElement:true,SVGFEDisplacementMapElement:true,SVGFEDistantLightElement:true,SVGFEFloodElement:true,SVGFEFuncAElement:true,SVGFEFuncBElement:true,SVGFEFuncGElement:true,SVGFEFuncRElement:true,SVGFEGaussianBlurElement:true,SVGFEImageElement:true,SVGFEMergeElement:true,SVGFEMergeNodeElement:true,SVGFEMorphologyElement:true,SVGFEOffsetElement:true,SVGFEPointLightElement:true,SVGFESpecularLightingElement:true,SVGFESpotLightElement:true,SVGFETileElement:true,SVGFETurbulenceElement:true,SVGFilterElement:true,SVGForeignObjectElement:true,SVGGElement:true,SVGGeometryElement:true,SVGGraphicsElement:true,SVGImageElement:true,SVGLineElement:true,SVGLinearGradientElement:true,SVGMarkerElement:true,SVGMaskElement:true,SVGMetadataElement:true,SVGPathElement:true,SVGPatternElement:true,SVGPolygonElement:true,SVGPolylineElement:true,SVGRadialGradientElement:true,SVGRectElement:true,SVGSetElement:true,SVGStopElement:true,SVGStyleElement:true,SVGSVGElement:true,SVGSwitchElement:true,SVGSymbolElement:true,SVGTSpanElement:true,SVGTextContentElement:true,SVGTextElement:true,SVGTextPathElement:true,SVGTextPositioningElement:true,SVGTitleElement:true,SVGUseElement:true,SVGViewElement:true,SVGGradientElement:true,SVGComponentTransferFunctionElement:true,SVGFEDropShadowElement:true,SVGMPathElement:true,SVGElement:false,SVGTransform:true,SVGTransformList:true,AudioBuffer:true,AudioParamMap:true,AudioTrackList:true,AudioContext:true,webkitAudioContext:true,BaseAudioContext:false,OfflineAudioContext:true}) +A.bj.$nativeSuperclassTag="ArrayBufferView" +A.cl.$nativeSuperclassTag="ArrayBufferView" +A.cm.$nativeSuperclassTag="ArrayBufferView" +A.aZ.$nativeSuperclassTag="ArrayBufferView" +A.cn.$nativeSuperclassTag="ArrayBufferView" +A.co.$nativeSuperclassTag="ArrayBufferView" +A.c0.$nativeSuperclassTag="ArrayBufferView" +A.cs.$nativeSuperclassTag="EventTarget" +A.ct.$nativeSuperclassTag="EventTarget" +A.cv.$nativeSuperclassTag="EventTarget" +A.cw.$nativeSuperclassTag="EventTarget"})() +convertAllToFastObject(w) +convertToFastObject($);(function(a){if(typeof document==="undefined"){a(null) +return}if(typeof document.currentScript!="undefined"){a(document.currentScript) +return}var s=document.scripts +function onLoad(b){for(var q=0;q","TypeErrorDecoder.matchTypeError","NullError.toString","JsNoSuchMethodError.toString","UnknownJsTypeError.toString","NullThrownFromJavaScriptException.toString","_StackTrace.toString","Closure.toString","StaticClosure.toString","BoundClosure.==","BoundClosure.hashCode","BoundClosure.toString","RuntimeError.toString","JsLinkedHashMap.keys","JsLinkedHashMap.length","JsLinkedHashMap.containsKey","JsLinkedHashMap.[]","JsLinkedHashMap.internalGet","JsLinkedHashMap.[]=","JsLinkedHashMap.internalSet","JsLinkedHashMap.forEach","JsLinkedHashMap._addHashTableEntry","JsLinkedHashMap._modified","JsLinkedHashMap._newLinkedCell","JsLinkedHashMap.internalComputeHashCode","JsLinkedHashMap.internalFindBucketIndex","JsLinkedHashMap.toString","JsLinkedHashMap._newHashTable","LinkedHashMapKeyIterable.length","LinkedHashMapKeyIterable.iterator","LinkedHashMapKeyIterator","LinkedHashMapKeyIterator.current","LinkedHashMapKeyIterator.moveNext","initHooks.","JSSyntaxRegExp.toString","NativeTypedArray.length","NativeTypedArrayOfDouble.[]","NativeTypedArrayOfDouble.[]=","NativeTypedArrayOfInt.[]=","NativeInt16List.[]","NativeInt32List.[]","NativeInt8List.[]","NativeUint16List.[]","NativeUint32List.[]","NativeUint8ClampedList.length","NativeUint8ClampedList.[]","NativeUint8List.length","NativeUint8List.[]","Rti._eval","Rti._bind","_Type.toString","_Error.toString","_AsyncRun._initializeScheduleImmediate.internalCallback","_AsyncRun._initializeScheduleImmediate.","_AsyncRun._scheduleImmediateJsOverride.internalCallback","_AsyncRun._scheduleImmediateWithSetImmediate.internalCallback","_TimerImpl.internalCallback","_AsyncAwaitCompleter.complete","_AsyncAwaitCompleter.completeError","_awaitOnObject.","_wrapJsFunctionForAsync.","AsyncError.toString","_Completer.completeError","_Completer.completeError[function-entry$1]","_AsyncCompleter.complete","_FutureListener.matchesErrorTest","_FutureListener.handleError","_Future.then","_Future.then[function-entry$1]","_Future._thenAwait","_Future._setErrorObject","_Future._cloneResult","_Future._addListener","_Future._prependListeners","_Future._removeListeners","_Future._reverseListeners","_Future._chainForeignFuture","_Future._completeWithValue","_Future._completeError","_Future._asyncComplete","_Future._asyncCompleteWithValue","_Future._chainFuture","_Future._asyncCompleteError","_Future._addListener.","_Future._prependListeners.","_Future._chainForeignFuture.","_Future._asyncCompleteWithValue.","_Future._chainFuture.","_Future._asyncCompleteError.","_Future._propagateToListeners.handleWhenCompleteCallback","_FutureListener.handleWhenComplete","_Future._propagateToListeners.handleWhenCompleteCallback.","_Future._propagateToListeners.handleValueCallback","_FutureListener.handleValue","_Future._propagateToListeners.handleError","_FutureListener.hasErrorCallback","_rootHandleError.","_RootZone.runGuarded","_RootZone.bindCallbackGuarded","_RootZone.run","_RootZone.run[function-entry$1]","_RootZone.runUnary","_RootZone.runUnary[function-entry$2]","_RootZone.runBinary","_RootZone.runBinary[function-entry$3]","_RootZone.registerBinaryCallback","_RootZone.registerBinaryCallback[function-entry$1]","_RootZone.bindCallbackGuarded.","_LinkedHashSet.iterator","_LinkedHashSet.length","_LinkedHashSet.contains","_LinkedHashSet._contains","_LinkedHashSet.add","_LinkedHashSet._add","_LinkedHashSet.remove","_LinkedHashSet._remove","_LinkedHashSet._addHashTableEntry","_LinkedHashSet._removeHashTableEntry","_LinkedHashSet._modified","_LinkedHashSet._newLinkedCell","_LinkedHashSet._unlinkCell","_LinkedHashSet._computeHashCode","_LinkedHashSet._findBucketIndex","_LinkedHashSetIterator.current","_LinkedHashSetIterator.moveNext","ListMixin.iterator","ListMixin.elementAt","ListMixin.map","ListMixin.cast","ListMixin.fillRange","ListMixin.toString","MapBase.mapToString.","MapMixin.forEach","MapMixin.length","MapMixin.toString","_UnmodifiableMapMixin.[]=","MapView.[]","MapView.[]=","MapView.forEach","MapView.length","MapView.toString","SetMixin.addAll","SetMixin.toString","SetMixin.join","SetMixin.elementAt","_JsonMap.[]","_JsonMap.length","_JsonMap.keys","_JsonMap.[]=","_JsonMap.containsKey","_JsonMap.forEach","_JsonMap._computeKeys","_JsonMap._upgrade","_JsonMap._process","_JsonMapKeyIterable.length","_JsonMapKeyIterable.elementAt","_JsonMapKeyIterable.iterator","Utf8Decoder._decoder.","Utf8Decoder._decoderNonfatal.","Base64Codec.normalize","StringBuffer.writeCharCode","HtmlEscapeMode.toString","HtmlEscape.convert","HtmlEscape._convert","JsonCodec.decode","JsonCodec.decoder","Utf8Decoder.convert","_Utf8Decoder.convertGeneral","_Utf8Decoder._convertRecursive","_Utf8Decoder.decodeGeneral","NoSuchMethodError.toString.","_symbolToString","DateTime.==","DateTime.compareTo","DateTime.hashCode","DateTime.toString","Error.stackTrace","AssertionError.toString","NullThrownError.toString","ArgumentError._errorName","ArgumentError._errorExplanation","ArgumentError.toString","RangeError._errorName","RangeError._errorExplanation","IndexError._errorName","IndexError._errorExplanation","NoSuchMethodError.toString","UnsupportedError.toString","UnimplementedError.toString","StateError.toString","ConcurrentModificationError.toString","OutOfMemoryError.toString","OutOfMemoryError.stackTrace","StackOverflowError.toString","StackOverflowError.stackTrace","CyclicInitializationError.toString","_Exception.toString","FormatException.toString","Iterable.cast","Iterable.map","Iterable.where","Iterable.length","Iterable.single","Iterable.elementAt","Iterable.toString","Null.hashCode","Null.toString","Object.hashCode","Object.==","Object.toString","Object.noSuchMethod","_StringStackTrace.toString","StringBuffer.length","StringBuffer.toString","Uri.splitQueryString.","Uri._parseIPv4Address.error","Uri.parseIPv6Address.error","Uri.parseIPv6Address.parseHex","_Uri._text","JSString.isNotEmpty","_Uri._initializeText","_Uri._writeAuthority","_Uri.hashCode","_Uri.queryParameters","_Uri.userInfo","_Uri.host","_Uri.port","_Uri.query","_Uri.fragment","_Uri.toString","_Uri.hasAuthority","_Uri.hasQuery","_Uri.hasFragment","_Uri.==","UriData.uri","UriData._computeUri","UriData.toString","_createTables.build","_createTables.setChars","_createTables.setRange","_SimpleUri.hasAuthority","_SimpleUri.hasQuery","_SimpleUri.hasFragment","_SimpleUri.scheme","_SimpleUri._computeScheme","_SimpleUri.userInfo","_SimpleUri.host","_SimpleUri.port","_SimpleUri.path","_SimpleUri.query","_SimpleUri.fragment","_SimpleUri.queryParameters","_SimpleUri.hashCode","_SimpleUri.==","_SimpleUri.toString","AccessibleNodeList.length","AnchorElement.toString","AreaElement.toString","CharacterData.length","CssPerspective.length","CssStyleDeclaration.length","CssTransformValue.length","CssUnparsedValue.length","DataTransferItemList.length","DomException.toString","DomRectList.length","DomRectList.[]","DomRectList.[]=","DomRectList.elementAt","DomRectReadOnly.toString","DomRectReadOnly.==","DomRectReadOnly.hashCode","DomRectReadOnly._height","DomRectReadOnly.height","DomRectReadOnly._width","DomRectReadOnly.width","DomStringList.length","DomStringList.[]","DomStringList.[]=","DomStringList.elementAt","DomTokenList.length","Element.attributes","Element.classes","Element.toString","Element.createFragment","NodeValidatorBuilder.common","NodeValidatorBuilder.allowHtml5","NodeValidatorBuilder.allowTemplating","Element._canBeUsedToCreateContextualFragment","Element.createFragment[function-entry$1$treeSanitizer]","Element.innerHtml","Element.setInnerHtml","Element.tagName","Element.html.","EventTarget.addEventListener","EventTarget._addEventListener","FileList.length","FileList.[]","FileList.[]=","FileList.elementAt","FileWriter.length","FormElement.length","History.length","HtmlCollection.length","HtmlCollection.[]","HtmlCollection.[]=","HtmlCollection.elementAt","Location.toString","MediaList.length","MidiInputMap.[]","MidiInputMap.forEach","MidiInputMap.keys","MidiInputMap.length","MidiInputMap.[]=","MidiInputMap.keys.","MidiOutputMap.[]","MidiOutputMap.forEach","MidiOutputMap.keys","MidiOutputMap.length","MidiOutputMap.[]=","MidiOutputMap.keys.","MimeTypeArray.length","MimeTypeArray.[]","MimeTypeArray.[]=","MimeTypeArray.elementAt","_ChildNodeListLazy.single","_ChildNodeListLazy.addAll","_ChildNodeListLazy.[]=","_ChildNodeListLazy.iterator","ImmutableListMixin.iterator","_ChildNodeListLazy.length","_ChildNodeListLazy.[]","Node.remove","Node.replaceWith","Node._clearChildren","Node.toString","Node._replaceChild","NodeList.length","NodeList.[]","NodeList.[]=","NodeList.elementAt","Plugin.length","PluginArray.length","PluginArray.[]","PluginArray.[]=","PluginArray.elementAt","RtcStatsReport.[]","RtcStatsReport.forEach","RtcStatsReport.keys","RtcStatsReport.length","RtcStatsReport.[]=","RtcStatsReport.keys.","SelectElement.length","SourceBufferList.length","SourceBufferList.[]","SourceBufferList.[]=","SourceBufferList.elementAt","SpeechGrammarList.length","SpeechGrammarList.[]","SpeechGrammarList.[]=","SpeechGrammarList.elementAt","SpeechRecognitionResult.length","Storage.[]","Storage.[]=","Storage.forEach","Storage.keys","Storage.length","Storage.keys.","TableElement.createFragment","TableRowElement.createFragment","TableSectionElement.createFragment","TemplateElement.setInnerHtml","TextTrackCueList.length","TextTrackCueList.[]","TextTrackCueList.[]=","TextTrackCueList.elementAt","TextTrackList.length","TextTrackList.[]","TextTrackList.[]=","TextTrackList.elementAt","TimeRanges.length","TouchList.length","TouchList.[]","TouchList.[]=","TouchList.elementAt","TrackDefaultList.length","Url.toString","VideoTrackList.length","_CssRuleList.length","_CssRuleList.[]","_CssRuleList.[]=","_CssRuleList.elementAt","_DomRect.toString","_DomRect.==","_DomRect.hashCode","_DomRect._height","_DomRect.height","_DomRect._width","_DomRect.width","_GamepadList.length","_GamepadList.[]","_GamepadList.[]=","_GamepadList.elementAt","_NamedNodeMap.length","_NamedNodeMap.[]","_NamedNodeMap.[]=","_NamedNodeMap.elementAt","_SpeechRecognitionResultList.length","_SpeechRecognitionResultList.[]","_SpeechRecognitionResultList.[]=","_SpeechRecognitionResultList.elementAt","_StyleSheetList.length","_StyleSheetList.[]","_StyleSheetList.[]=","_StyleSheetList.elementAt","_AttributeMap.forEach","_AttributeMap.keys","_ElementAttributeMap.[]=","_ElementAttributeMap.length","_DataAttributeMap.[]","_DataAttributeMap.[]=","_DataAttributeMap.forEach","_DataAttributeMap.keys","_DataAttributeMap.length","_DataAttributeMap._toCamelCase","_DataAttributeMap._toHyphenedName","_DataAttributeMap.forEach.","_DataAttributeMap.keys.","_ElementCssClassSet.readClasses","_ElementCssClassSet.writeClasses","_ElementCssClassSet.length","_ElementCssClassSet.remove","_ElementCssClassSet.toggle","_ElementCssClassSet._toggle","_Html5NodeValidator.allowsElement","_Html5NodeValidator.allowsAttribute","NodeValidatorBuilder.allowsElement","NodeValidatorBuilder.allowsAttribute","NodeValidatorBuilder.allowsElement.","NodeValidatorBuilder.allowsAttribute.","_SimpleNodeValidator.allowsElement","_SimpleNodeValidator.allowsAttribute","_SimpleNodeValidator.","_TemplatingNodeValidator.allowsAttribute","_TemplatingNodeValidator.","_SvgNodeValidator.allowsElement","_SvgNodeValidator.allowsAttribute","FixedSizeListIterator.moveNext","FixedSizeListIterator.current","_ValidatingTreeSanitizer.sanitizeTree","_ValidatingTreeSanitizer._removeNode","_ValidatingTreeSanitizer._sanitizeUntrustedElement","_ValidatingTreeSanitizer._sanitizeElement","JSArray.toList","_ValidatingTreeSanitizer.sanitizeTree.walk","CssClassSetImpl._validateToken","CssClassSetImpl.toString","CssClassSetImpl.toggle","CssClassSetImpl.iterator","CssClassSetImpl.length","CssClassSetImpl.add","CssClassSetImpl.remove","CssClassSetImpl.elementAt","CssClassSetImpl.modify","CssClassSetImpl.add.","_convertToJS.","_wrapToDart.","JsObject.[]","JsObject.[]=","JsObject.==","JsObject.toString","JsObject.callMethod","JsObject.callMethod[function-entry$1]","JsObject.hashCode","JsArray._checkIndex","JsArray.[]","JsArray.[]=","JsArray.length","_JsArray&JsObject&ListMixin.[]=","NullRejectionException.toString","promiseToFuture.","LengthList.length","LengthList.[]","LengthList.[]=","LengthList.elementAt","NumberList.length","NumberList.[]","NumberList.[]=","NumberList.elementAt","PointList.length","StringList.length","StringList.[]","StringList.[]=","StringList.elementAt","AttributeClassSet.readClasses","AttributeClassSet.writeClasses","SvgElement.classes","SvgElement.innerHtml","SvgElement.createFragment","NodeValidatorBuilder.allowSvg","NodeTreeSanitizer","TransformList.length","TransformList.[]","TransformList.[]=","TransformList.elementAt","AudioBuffer.length","AudioParamMap.[]","AudioParamMap.forEach","AudioParamMap.keys","AudioParamMap.length","AudioParamMap.[]=","AudioParamMap.keys.","AudioTrackList.length","OfflineAudioContext.length","init.disableSearch","print","init.","findMatches.score","findMatches.","initializeSearch.","initializeSearch.highlight","initializeSearch.createSuggestion","initializeSearch.createSuggestion.","initializeSearch.setHint","initializeSearch.showSuggestions","initializeSearch.hideSuggestions","initializeSearch.updateSuggestions","initializeSearch.handle","initializeSearch[function-entry$1].handle","Element.dataset","init.toggleDrawerAndOverlay","DART_CLOSURE_PROPERTY_NAME","TypeErrorDecoder.noSuchMethodPattern","TypeErrorDecoder.notClosurePattern","TypeErrorDecoder.nullCallPattern","TypeErrorDecoder.nullLiteralCallPattern","TypeErrorDecoder.undefinedCallPattern","TypeErrorDecoder.undefinedLiteralCallPattern","TypeErrorDecoder.nullPropertyPattern","TypeErrorDecoder.nullLiteralPropertyPattern","TypeErrorDecoder.undefinedPropertyPattern","TypeErrorDecoder.undefinedLiteralPropertyPattern","_AsyncRun._scheduleImmediateClosure","Utf8Decoder._decoder","Utf8Decoder._decoderNonfatal","_Base64Decoder._inverseAlphabet","_hashSeed","_scannerTables","_Html5NodeValidator._allowedElements","CssClassSetImpl._validTokenRE","_context","_DART_OBJECT_PROPERTY_NAME","_dartProxyCtor","setDispatchProperty","JS_INTEROP_INTERCEPTOR_TAG","init_closure","init_disableSearch","fromTearOff","StaticClosure","BoundClosure","forwardCallTo","_computeSignatureFunctionNewRti","fieldADI","NullThrownError","objectTypeName","_objectTypeNameNewRti","Object","mapToString","StringBuffer","_toStringVisiting","MapBase_mapToString_closure","_empty","LinkedHashMapCell","","safeToString","_objectToString","Closure","JsLinkedHashMap","_identityHashCodeProperty","hash","combine","finish","eval","create","parse","handleDigit","handleIdentifier","toType","_lookupGenericFunctionParameterRti","_lookupTerminalRti","toTypes","_lookupInterfaceRti","_lookupGenericFunctionRti","_lookupBindingRti","handleExtendedOperations","_lookupStarRti","_lookupQuestionRti","_lookupFutureOrRti","_FunctionParameters","_lookupFunctionRti","toTypesNamed","_canonicalRecipeJoin","_canonicalRecipeJoinNamed","Rti","_installTypeTests","_createFutureOrRti","Future","_createQuestionRti","_getQuestionFromStar","_createStarRti","_createGenericFunctionRti","newArrayOrEmpty","indexToType","findRule","_getCanonicalRecipe","evalInEnvironment","MapMixin","ArrayIterator","LinkedHashMapKeyIterable","iterableToShortString","_writeAll","ListIterator","checkNotNegative","range","RangeError","value","FixedSizeListIterator","AudioParamMap_keys_closure","Storage_keys_closure","RtcStatsReport_keys_closure","MidiOutputMap_keys_closure","MidiInputMap_keys_closure","iterableToFullString","initNativeDispatchFlag","_JS_INTEROP_INTERCEPTOR_TAG","getTagFunction","dispatchRecordsForInstanceTags","interceptorsForUncacheableTags","alternateTagFunction","JavaScriptIndexingBehavior","prototypeForTagFunction","initHooks_closure","LateError","CyclicInitializationError","evalRecipe","forwardInterceptedCallTo","cspForwardCall","receiverOf","_interceptorFieldNameCache","_computeFieldNamed","_receiverFieldNameCache","cspForwardInterceptedCall","interceptorOf","RuntimeError","markFixedList","forType","_TypeError","compose","fromMessage","_isUnionOfFunctionType","_getFutureFromFutureOr","List","bind","findErasedType","MappedListIterable","ListMixin","IndexItem","ListIterable","of","EnclosedBy","Iterable","CastIterator","EfficientLengthIterable","_EfficientLengthCastIterable","CastList","_current","_wrapJsFunctionForAsync_closure","_StreamIterator","ExceptionAndStackTrace","_StackTrace","NullThrownFromJavaScriptException","NullError","UnknownJsTypeError","StackOverflowError","extractPattern","TypeErrorDecoder","provokePropertyErrorOn","provokeCallErrorOn","_awaitOnObject_closure","_Future","_FutureListener","_Future__addListener_closure","_AsyncCallbackEntry","_lastCallback","_nextCallback","_isInCallbackLoop","_lastPriorityCallback","_initializeScheduleImmediate","_AsyncRun__initializeScheduleImmediate_internalCallback","_AsyncRun__initializeScheduleImmediate_closure","_TimerImpl_internalCallback","_AsyncRun__scheduleImmediateWithSetImmediate_internalCallback","_AsyncRun__scheduleImmediateJsOverride_internalCallback","_Exception","_RootZone_bindCallbackGuarded_closure","_rootHandleError_closure","_throw","_propagateToListeners","_Future__propagateToListeners_handleWhenCompleteCallback","_Future__propagateToListeners_handleValueCallback","_Future__propagateToListeners_handleError","_chainCoreFuture","_Future__prependListeners_closure","defaultStackTrace","_Future__propagateToListeners_handleWhenCompleteCallback_closure","_AsyncAwaitCompleter","_Future__asyncCompleteError_closure","_Future__chainFuture_closure","_Future__chainForeignFuture_closure","_Future__asyncCompleteWithValue_closure","initializeSearch_closure","initializeSearch_setHint","initializeSearch_hideSuggestions","initializeSearch_handle","initializeSearch_updateSuggestions","initializeSearch_createSuggestion","initializeSearch_highlight","initializeSearch_showSuggestions","AttributeClassSet","_skipLeadingWhitespace","_skipTrailingWhitespace","_isWhitespace","_LinkedHashSet","_newHashTable","_LinkedHashSetCell","CssClassSetImpl_add_closure","JSSyntaxRegExp","makeNative","checkValidRange","_ElementCssClassSet","_DataAttributeMap","_ElementAttributeMap","_DataAttributeMap_keys_closure","filled","fixed","markFixed","JSArray","_DataAttributeMap_forEach_closure","initializeSearch_createSuggestion_closure","_SvgNodeValidator","_ValidatingTreeSanitizer","NodeValidatorBuilder","_ChildNodeListLazy","from","_TemplatingNodeValidator_closure","_SimpleNodeValidator_closure","WhereIterable","WhereIterator","_SameOriginUriPolicy","_attributeValidators","html","Element_Element$html_closure","noElement","tooMany","_defaultValidator","_defaultSanitizer","_parseDocument","_parseRange","_ValidatingTreeSanitizer_sanitizeTree_walk","_safeTagName","NodeValidatorBuilder_allowsAttribute_closure","NodeValidatorBuilder_allowsElement_closure","findMatches_score","findMatches_closure","sort","_doSort","_insertionSort","_dualPivotQuicksort","SearchMatch","_parse","_SimpleUri","_makeScheme","_fail","_makeUserInfo","_makeHost","parseInt","_makePort","_makePath","_makeQuery","_makeFragment","_internal","_defaultPort","splitQueryString","UnmodifiableMapView","Uri_splitQueryString_closure","_uriDecode","_throwUnmodifiable","CodeUnits","_hexCharPairToByte","_convertIntercepted","_Utf8Decoder","_makeUint8List","errorDescription","stringFromCharCode","fromCharCodes","stringFromNativeUint8List","_convertInterceptedUint8List","_useTextDecoder","Utf8Decoder__decoder_closure","Utf8Decoder__decoderNonfatal_closure","_Uri","_normalizeOrSubstring","_normalize","_normalizeEscape","_escapeChar","_normalizePath","_normalizeRelativePath","_removeDotSegments","_mayContainDotSegments","_escapeScheme","_isAlphabeticCharacter","_checkZoneID","_normalizeZoneID","parseIPv6Address","_normalizeRegName","Uri_parseIPv6Address_error","Uri_parseIPv6Address_parseHex","_parseIPv4Address","Uri__parseIPv4Address_error","_canonicalizeScheme","_createTables_build","_createTables_setChars","_createTables_setRange","_DataUri","UriData","_checkPadding","_create1","_of","_JsonMap","_JsonMapKeyIterable","_AsyncCompleter","promiseToFuture_closure","NullRejectionException","init_toggleDrawerAndOverlay","_wrapToDart_closure","JsObject","DateTime","lazyAsJsDate","_convertToJS_closure","applyFunction","MappedIterator","EfficientLengthMappedIterable","_generalApplyFunction","functionNoSuchMethod","Primitives_functionNoSuchMethod_closure","JSInvocationMirror","Symbol","NoSuchMethodError_toString_closure","ConstantMapView","getYear","_fourDigits","getMonth","_twoDigits","getDay","getHours","getMinutes","getSeconds","getMilliseconds","_threeDigits","JsArray","JsFunction","objectAssign","JS_CONST","Interceptor","bool","JSBool","Null","JSNull","JavaScriptObject","LegacyJavaScriptObject","PlainJavaScriptObject","UnknownJavaScriptObject","Function","JavaScriptFunction","JSUnmodifiableArray","double","num","JSNumber","int","JSInt","JSNumNotInt","String","JSString","_CastIterableBase","_CastListBase","SentinelValue","FixedLengthListMixin","UnmodifiableListMixin","UnmodifiableListBase","Map","ConstantMap","ConstantStringMap","StackTrace","Closure0Args","Closure2Args","TearOffClosure","_Required","TypedData","NativeTypedData","NativeByteData","NativeTypedArray","NativeTypedArrayOfDouble","NativeTypedArrayOfInt","NativeFloat32List","NativeInt16List","NativeInt32List","NativeInt8List","NativeUint16List","NativeUint32List","NativeUint8ClampedList","Uint8List","NativeUint8List","_Error","TypeError","Error","_Completer","StreamTransformerBase","_Zone","_RootZone","ListBase","MapBase","_UnmodifiableMapMixin","MapView","SetMixin","Set","SetBase","_SetBase","Base64Codec","Base64Encoder","Codec","Converter","Encoding","HtmlEscapeMode","HtmlEscape","JsonCodec","JsonDecoder","Utf8Codec","Utf8Decoder","OutOfMemoryError","Iterator","_StringStackTrace","Uri","HtmlElement","AbortPaymentEvent","AccessibleNodeList","AnchorElement","AreaElement","AudioElement","BaseElement","Blob","BodyElement","CDataSection","CharacterData","CompositionEvent","CssCharsetRule","CssPerspective","CssRule","CssStyleDeclaration","CssStyleDeclarationBase","CssStyleSheet","CssStyleValue","CssTransformComponent","CssTransformValue","CssUnparsedValue","DataTransferItemList","DedicatedWorkerGlobalScope","Document","DocumentFragment","DomException","DomRectList","Rectangle","DomRectReadOnly","DomStringList","DomTokenList","Element","Node","Event","EventTarget","ExtendableEvent","File","FileList","FileWriter","FormElement","Gamepad","History","HtmlCollection","HtmlDocument","HtmlFormControlsCollection","ImageData","InputElement","KeyboardEvent","Location","MediaElement","MediaList","MidiInputMap","MidiOutputMap","MimeType","MimeTypeArray","NodeList","Plugin","PluginArray","RtcStatsReport","SelectElement","ShadowRoot","SourceBuffer","SourceBufferList","SpeechGrammar","SpeechGrammarList","SpeechRecognitionResult","Storage","StyleSheet","TableElement","TableRowElement","TableSectionElement","TemplateElement","Text","TextTrack","TextTrackCue","TextTrackCueList","TextTrackList","TimeRanges","Touch","TouchList","TrackDefaultList","UIEvent","Url","VideoTrackList","VttCue","Window","WorkerGlobalScope","XmlDocument","_Attr","_CssRuleList","_DomRect","_GamepadList","_NamedNodeMap","_SpeechRecognitionResultList","_StyleSheetList","_AttributeMap","NodeValidator","ImmutableListMixin","CssClassSetImpl","KeyRange","AElement","GraphicsElement","Length","LengthList","Number","NumberList","PointList","ScriptElement","StringList","SvgElement","Transform","TransformList","AudioBuffer","AudioParamMap","AudioTrackList","BaseAudioContext","OfflineAudioContext","__CastListBase&_CastIterableBase&ListMixin","_NativeTypedArrayOfDouble&NativeTypedArray&ListMixin","_NativeTypedArrayOfDouble&NativeTypedArray&ListMixin&FixedLengthListMixin","_NativeTypedArrayOfInt&NativeTypedArray&ListMixin","_NativeTypedArrayOfInt&NativeTypedArray&ListMixin&FixedLengthListMixin","_ListBase&Object&ListMixin","_SetBase&Object&SetMixin","_UnmodifiableMapView&MapView&_UnmodifiableMapMixin","__SetBase&Object&SetMixin","_CssStyleDeclaration&JavaScriptObject&CssStyleDeclarationBase","_DomRectList&JavaScriptObject&ListMixin","_DomRectList&JavaScriptObject&ListMixin&ImmutableListMixin","_DomStringList&JavaScriptObject&ListMixin","_DomStringList&JavaScriptObject&ListMixin&ImmutableListMixin","_FileList&JavaScriptObject&ListMixin","_FileList&JavaScriptObject&ListMixin&ImmutableListMixin","_HtmlCollection&JavaScriptObject&ListMixin","_HtmlCollection&JavaScriptObject&ListMixin&ImmutableListMixin","_MidiInputMap&JavaScriptObject&MapMixin","_MidiOutputMap&JavaScriptObject&MapMixin","_MimeTypeArray&JavaScriptObject&ListMixin","_MimeTypeArray&JavaScriptObject&ListMixin&ImmutableListMixin","_NodeList&JavaScriptObject&ListMixin","_NodeList&JavaScriptObject&ListMixin&ImmutableListMixin","_PluginArray&JavaScriptObject&ListMixin","_PluginArray&JavaScriptObject&ListMixin&ImmutableListMixin","_RtcStatsReport&JavaScriptObject&MapMixin","_SourceBufferList&EventTarget&ListMixin","_SourceBufferList&EventTarget&ListMixin&ImmutableListMixin","_SpeechGrammarList&JavaScriptObject&ListMixin","_SpeechGrammarList&JavaScriptObject&ListMixin&ImmutableListMixin","_Storage&JavaScriptObject&MapMixin","_TextTrackCueList&JavaScriptObject&ListMixin","_TextTrackCueList&JavaScriptObject&ListMixin&ImmutableListMixin","_TextTrackList&EventTarget&ListMixin","_TextTrackList&EventTarget&ListMixin&ImmutableListMixin","_TouchList&JavaScriptObject&ListMixin","_TouchList&JavaScriptObject&ListMixin&ImmutableListMixin","__CssRuleList&JavaScriptObject&ListMixin","__CssRuleList&JavaScriptObject&ListMixin&ImmutableListMixin","__GamepadList&JavaScriptObject&ListMixin","__GamepadList&JavaScriptObject&ListMixin&ImmutableListMixin","__NamedNodeMap&JavaScriptObject&ListMixin","__NamedNodeMap&JavaScriptObject&ListMixin&ImmutableListMixin","__SpeechRecognitionResultList&JavaScriptObject&ListMixin","__SpeechRecognitionResultList&JavaScriptObject&ListMixin&ImmutableListMixin","__StyleSheetList&JavaScriptObject&ListMixin","__StyleSheetList&JavaScriptObject&ListMixin&ImmutableListMixin","_JsArray&JsObject&ListMixin","_LengthList&JavaScriptObject&ListMixin","_LengthList&JavaScriptObject&ListMixin&ImmutableListMixin","_NumberList&JavaScriptObject&ListMixin","_NumberList&JavaScriptObject&ListMixin&ImmutableListMixin","_StringList&JavaScriptObject&ListMixin","_StringList&JavaScriptObject&ListMixin&ImmutableListMixin","_TransformList&JavaScriptObject&ListMixin","_TransformList&JavaScriptObject&ListMixin&ImmutableListMixin","_AudioParamMap&JavaScriptObject&MapMixin","_compareAny","addRules","addErasedTypes","_scheduleImmediateJsOverride","_scheduleImmediateWithSetImmediate","_scheduleImmediateWithTimer","_standardAttributeValidator","_uriAttributeValidator","_#fromMap#tearOff","noSuchMethodPattern","notClosurePattern","nullCallPattern","nullLiteralCallPattern","undefinedCallPattern","undefinedLiteralCallPattern","nullPropertyPattern","nullLiteralPropertyPattern","undefinedPropertyPattern","undefinedLiteralPropertyPattern","_scheduleImmediateClosure","_decoder","_decoderNonfatal","_inverseAlphabet","_allowedElements","_validTokenRE","$intercepted$toString0$IJavaScriptFunctionLegacyJavaScriptObjectabnsux","getInterceptor$","$intercepted$forEach1$ax","$intercepted$$eq$Iux","getInterceptor$x","$intercepted$get$hashCode$ILegacyJavaScriptObjectabnsux","$intercepted$get$iterator$ax","getInterceptor$asx","$intercepted$get$length$asx","$intercepted$__$asx","$intercepted$cast10$ax","search_IndexItem___fromMap_tearOff$closure","$intercepted$elementAt1$ax","async___startMicrotaskLoop$closure","async__AsyncRun__scheduleImmediateJsOverride$closure","async__AsyncRun__scheduleImmediateWithSetImmediate$closure","async__AsyncRun__scheduleImmediateWithTimer$closure","$intercepted$get$classes$x","$intercepted$trim0$s","html__Html5NodeValidator__standardAttributeValidator$closure","html__Html5NodeValidator__uriAttributeValidator$closure","$intercepted$remove0$x","$intercepted$get$attributes$x","$intercepted$toLowerCase0$s","$intercepted$_clearChildren0$x","$intercepted$_replaceChild2$x","_interceptors_JSArray__compareAny$closure","$intercepted$compareTo1$ns","$intercepted$___$ax","$intercepted$addEventListener2$x","js___convertToJS$closure","$intercepted$map11$ax","js___convertToDart$closure","$intercepted$noSuchMethod1$Iu","getInterceptor$ax","getInterceptor$s","getInterceptor$ns","toString","where","createFragment","allowsAttribute","[]=","[]","callMethod","then","_js_helper#_newHashTable","_js_helper#_addHashTableEntry","internalSet","internalComputeHashCode","_js_helper#_newLinkedCell","internalFindBucketIndex","_js_helper#_modified","rti#_eval","rti#_bind","width","height","dart.dom.html#_height","dart.dom.html#_width","hashCode","keys","moveNext","current","internalGet","length","elementAt","iterator","dart.core#_errorName","dart.core#_errorExplanation","forEach","decode","queryParameters","first","dart._internal#_source","registerBinaryCallback","completeError","_interceptors#_shrOtherPositive","matchTypeError","_interceptors#_shrBothPositive","complete","dart.async#_thenAwait","dart.async#_addListener","dart.async#_cloneResult","bindCallbackGuarded","runGuarded","dart.async#_reverseListeners","dart.async#_removeListeners","dart.async#_prependListeners","matchesErrorTest","handleError","stackTrace","runBinary","runUnary","run","dart.async#_completeError","dart.async#_asyncCompleteError","dart.async#_setErrorObject","dart.async#_asyncComplete","dart.async#_chainFuture","dart.async#_completeWithValue","dart.async#_chainForeignFuture","dart.async#_asyncCompleteWithValue","addEventListener","add","replaceWith","readClasses","_interceptors#_codeUnitAt","codeUnitAt","dart.collection#_addHashTableEntry","dart.collection#_add","dart.collection#_computeHashCode","dart.collection#_newLinkedCell","dart.collection#_findBucketIndex","dart.collection#_modified","html_common#_validateToken","modify","writeClasses","join","substring","dart.dom.html#_toHyphenedName","remove","round","startsWith","dart.dom.html#_toCamelCase","dart.collection#_removeHashTableEntry","dart.collection#_remove","dart.collection#_unlinkCell","sublist","classes","innerHtml=","setInnerHtml","single","addAll","contains","sanitizeTree","dart.dom.html#_sanitizeUntrustedElement","dart.dom.html#_removeNode","dart.dom.html#_sanitizeElement","allowsElement","any","allowsUri","dart.collection#_contains","tagName","convert","dart.convert#_convert","dart.dom.html#_addEventListener","isNegative","_interceptors#_tdivFast","_interceptors#_tdivSlow","containsKey","uri","replaceRange","scheme","hasAuthority","userInfo","host","port","path","hasQuery","query","hasFragment","fragment","dart.core#_computeScheme","dart.core#_text","fold","indexOf","convertGeneral","dart.convert#_convertRecursive","decodeGeneral","_interceptors#_shrReceiverPositive","last","fillRange","normalize","decoder","dart.convert#_computeKeys","dart.convert#_upgrade","dart.convert#_process","toggle","memberName","positionalArguments","namedArguments","_interceptors#_addAllFromArray","compareTo","dart.js#_checkIndex","noSuchMethod","cast","map","toLowerCase","trim","call","attributes","dart.dom.html#_clearChildren","dart.dom.html#_replaceChild","$index","$add","$indexSet","$mul","$mod","$eq","_","instanceTypeName","constructorNameFallback","_saneNativeClassName","millisecondsSinceEpoch","isEmpty","isNotEmpty","isRequired","interceptorFieldName","receiverFieldName","_rtiEval","propertyGet","stringReplaceJS","_setPrecomputed1","_lookupFutureRti","asString","asBool","allocate","_setRequiredPositional","_setOptionalPositional","_setNamed","instanceOf","_setCachedRuntimeType","_getKind","_setSpecializedTestResource","_setIsTestFunction","_setAsCheckFunction","isSubtype","_getSpecializedTestResource","_getReturnType","_getPrimary","_getGenericFunctionParameterIndex","unmangleGlobalNameIfPreservedAnyways","_lookupErasedRti","_parseRecipe","_getEvalCache","_setEvalCache","_getBindCache","_setBindCache","_createTerminalRti","_setKind","_setCanonicalRecipe","_canonicalRecipeOfStar","_recipeJoin","_setPrimary","_canonicalRecipeOfQuestion","_canonicalRecipeOfFutureOr","_createGenericFunctionParameterRti","_canonicalRecipeOfInterface","_createInterfaceRti","_setRest","arrayConcat","_canonicalRecipeOfBinding","_recipeJoin5","_createBindingRti","_canonicalRecipeOfFunction","_canonicalRecipeOfFunctionParameters","_createFunctionRti","_canonicalRecipeOfGenericFunction","_recipeJoin4","charCodeAt","toGenericFunctionParameter","_lookupDynamicRti","_lookupVoidRti","pushStackFrame","push","setPosition","handleTypeArguments","collectArray","arraySplice","handleFunctionArguments","handleOptionalGroup","handleNamedGroup","collectNamed","isDigit","evalTypeVariable","_lookupNeverRti","_lookupAnyRti","asRti","stringLessThan","lookupSupertype","_getInterfaceTypeArguments","_getRest","_createTimer","_future","future","_setValue","_isChained","_chainSource","_setChained","_hasError","_error","handleUncaughtError","handlesValue","_zone","handlesComplete","shouldChain","_isComplete","_removeListeners","_cloneResult","_setErrorObject","_scheduleImmediate","writeAll","tryParse","objectToHumanReadableString","_stringFromUint8List","_writeOne","hash4","_startsWithData","notSimple","write","_writeString","_isZoneIDChar","_isRegNameChar","_isGeneralDelimiter","_isSchemeCharacter","_isUnreservedChar","fromCharCode","codeUnits","nodes","_hiddenAnchor","allowedElements","allowedAttributes","allowedUriAttributes","isJavaScriptSimpleObject","apply","fromMillisecondsSinceEpoch","_withValue","getAttribute","fetch","toList","setAttribute","_add","fromMap","context","compare","castFrom","checkGrowable","checkMutable","listToString","_codeUnitAt","stringReplaceRangeUnchecked","_fetch","isGetter","markUnmodifiableList","isAccessor","unvalidated","_containsTableEntry","_getBucket","_rtiBind","_mayComplete","_completeError","hasErrorTest","_errorTest","thenAwait","_mayAddListener","_setError","handleWhenComplete","_whenCompleteAction","handleValue","_onValue","hasErrorCallback","_onError","throwWithStackTrace","_isUpgraded","clear","parseHexByte","writeCharCode","convertSingle","getName","year","month","day","hour","minute","second","millisecond","extractStackTrace","decodeQueryComponent","_initializeText","_writeAuthority","_computeUri","_isHttp","_isHttps","_isFile","_isPackage","hasPort","left","top","common","_validators","allowHtml5","allowTemplating","head","_canBeUsedToCreateContextualFragment","_cannotBeUsedToCreateContextualFragment","_getItem","_matches","_attr","_strip","_classListLength","_remove","_toggle","_toggleDefault","_toListGrowable","sanitizeNode","_removeNode","hasMatch","_fromJs","allowSvg","printToConsole","jsonDecode","replaceAll","dataset","scrollTop","scrollHeight","offsetTop","offsetHeight","scrollIntoView","provokeCallErrorOnNull","provokeCallErrorOnUndefined","provokePropertyErrorOnNull","provokePropertyErrorOnUndefined","fromList","identityHashCode","patchInstance"], + "mappings": "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SA;AACPA,WACEA,gBACKA,kBACLA,MAGJA,QACEA;KAG4BA;AAGvBA,2CACHA,UAAMA;AAERA,OAGJA;AAQmCA;KAPXA,eAEfA;KAKSA,cAAqCA;AAErDA,WACSA,iBAGXA,OAxiBFA,eAyiBAA,C;EA0McC,GAuOPA;AApLMA;AAIEA;AAOFA;AAaAA;AAUTA;AACJA;AACAA;AACAA;AACAA;AACAA;AACAA;AAEIA;AACJA;AACAA;AACAA;AACAA;AACAA;AACAA;AAEIA;AACJA;AACAA;AACAA;AACAA;AACAA;AACAA;AAEIA;AACJA;AACAA;AACAA;AACAA;AACAA;AAEIA;AACJA;AACAA;AACAA;AACAA;AACAA;AAEIA;AACJA;AACAA;AACAA;AACAA;AACAA;AAEIA;AACJA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AAEIA;AACJA;AACAA;AACAA;AACAA;AACAA;AACAA;AACAA;AAEIA;AACJA;AACAA;AACAA;AACAA;AACAA;AAEIA;AACJA;AACAA;AACAA;AACAA;AACAA;AAGAA,KADIA;AAGAA;AACJA;AACAA;AACAA;AACAA;AACAA;AAEIA;AACJA;AACAA;AACAA;AACAA;AACAA;AAEIA;AACJA;AACAA;AACAA;AACAA;AAEIA;AACJA;AACAA;AACAA;AACAA;AACAA;AAEIA;AACJA;AACAA;AACAA;AACAA;AACAA;AAEIA;AACJA;AACAA;AACAA;AACAA;AAEIA;AACJA;AACAA;AACAA;AACAA;AAEIA;AACJA;AACAA;AACAA;AAEIA;AACJA;AACAA;AAKAA,KADIA;AAGAA;AACJA;AACAA;AACAA;AAEAA,QACFA,C;EAWIC,YACWA;AAEbA,oBACcA;AAEDA;GAGMA;AACTA;WAGVA,QACFA,C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EE8sQUC;CAEsBA;AnCtjY9BC,WmC8osBAC,QAxlU8BF,gBAGAA,WnCzjY9BC;AmCyjYED,OAAwDA,MAAPA,QACnDA,C;EAyqCcG,IACLA;IAEOA;;AACOA,qB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", + "x_org_dartlang_dart2js": { + "minified_names": { + "global": "mN,355,mO,355,k5,352,hY,1035,hZ,1036,kG,1037,dz,1038,bf,1039,j5,1040,kC,1041,ja,1042,aK,40,b,38,dm,1043,n5,39,p,16,jZ,67,fI,1044,l_,1045,q,1046,b8,102,Q,153,mz,155,mu,149,jN,150,n,98,k8,14,iv,1047,iM,251,H,1048,b5,1049,fw,1050,aH,342,ft,1051,b9,41,jL,341,fs,1052,hI,130,ar,1053,bg,1054,kL,1055,aP,1056,cX,289,aV,1057,k3,50,ds,50,jg,1058,jf,1059,fM,1060,lf,1061,eK,1062,mH,109,jw,1063,jy,1064,lr,1065,jx,1066,aE,1067,lC,1068,cz,1069,iy,1070,cy,1071,iA,1072,iz,1073,ls,1074,jC,1075,iB,1076,jB,1077,e6,1078,jA,1079,lu,1080,eJ,1081,lx,1082,U,1083,aF,1084,mc,114,md,112,ly,1085,a8,1086,an,213,lA,1087,cL,212,jk,1088,lB,1089,f0,1053,cO,278,lz,1090,hx,1091,aG,93,cH,94,mx,96,my,95,lt,1092,lH,1093,lb,1094,hv,1095,eI,110,E,1096,eX,146,bE,1097,L,105,aX,1098,kO,1099,mn,252,jm,1100,bY,1101,ji,1102,z,1053,d4,285,T,1103,c6,1104,am,87,cI,36,iL,137,Z,279,l9,1105,bP,1106,db,510,f3,1107,fL,1108,fJ,1109,fz,1110,fy,1111,ir,1112,iQ,1113,mQ,74,jp,1053,hk,1114,mW,69,k_,1115,hP,1116,ig,1117,jV,1118,ih,72,k4,71,iS,368,o,1119,dK,287,mR,75,mP,77,k6,1120,mY,73,bB,78,hV,1121,hW,1121,hX,1121,d9,1122,d_,1123,kz,1124,kF,1125,kD,1126,j4,1127,j2,1128,j1,1129,j3,1130,kE,1131,kA,1132,du,1133,j8,1134,aq,1053,K,1135,cx,1136,ju,1137,jM,122,k0,100,lw,1138,jl,1139,mG,99,mK,108,m8,120,m_,129,lZ,127,ma,121,hJ,115,C,207,jj,1140,jQ,208,mg,209,jK,211,j,1141,mj,126,by,113,mm,128,mi,141,mk,145,mT,151,mh,119,ml,118,mb,117,m9,116,lF,1142,iJ,106,me,107,lG,1143,b4,104,J,1144,e,1145,M,1146,a1,1147,fu,1148,lh,1064,jX,357,iR,358,m3,223,m0,224,m2,225,m1,226,mB,228,mo,221,fg,1149,t,1150,kB,1053,cS,1151,f,1152,ce,1153,aO,0,a5,1154,B,1155,hL,1156,bC,5,ev,1157,ao,46,b7,49,bN,1158,cu,1159,fE,1160,aJ,47,mA,48,iu,1053,c5,1161,dL,1162,c8,1163,ak,1164,k7,82,fP,1165,jo,1166,fQ,1167,d8,45,m4,227,hA,1168,hB,1168,F,1169,ip,1105,mr,233,bu,1170,h8,1171,bA,244,jT,236,dR,1172,cF,1173,bz,1174,iK,1175,mp,234,cG,1176,lk,1177,h2,1178,bD,53,h1,1179,lv,1053,ht,220,hu,1180,r,1053,dN,286,h4,1181,h3,1182,mS,51,h7,1183,ho,1184,jR,241,iO,240,hK,1185,mv,237,kM,1186,cg,1187,hi,1188,hh,1189,hg,1190,iw,1191,hf,1192,f1,1053,cP,229,j_,1193,mt,242,ms,243,hj,1194,dQ,1195,h9,1196,he,1197,hb,1198,hc,1198,hd,1198,n_,238,ha,1199,i0,1200,ib,1201,i9,1202,i8,1203,id,1204,i5,1205,ia,1206,ic,1207,i1,1200,i2,1200,i3,1200,i4,1200,cQ,1208,bW,1053,kT,1209,kU,1210,j9,1211,ch,1212,ix,1213,hl,1214,ci,248,f7,1215,la,1053,fo,1216,kV,1217,G,1053,bk,1218,fj,290,lq,1053,e2,1219,dX,1220,cf,1221,h6,1222,jc,1223,kQ,1224,kR,1225,A,1226,h5,1227,i6,1228,i7,1228,jv,1053,jz,1053,eA,1229,eM,1230,c4,1231,I,1232,c9,1053,bm,288,jb,1233,eB,338,hs,1234,hq,1235,hr,1235,b3,1236,dP,1237,hp,1238,bv,333,e8,1239,kK,1240,ff,1241,is,1242,kP,1243,j7,1244,j6,1245,as,1246,iq,1247,hy,1248,bM,1249,fB,1250,fC,1251,n1,83,n2,84,mI,81,hS,1252,ik,80,hQ,1253,hR,1253,le,1254,dw,1255,ld,1256,lc,1257,V,1258,jq,1259,jS,328,eq,1260,lR,1261,bx,1262,lS,1263,lN,1264,jh,1265,lP,1266,lO,1267,lQ,1268,lM,1269,lI,1270,ie,1064,jD,1271,iN,365,js,1272,aC,1273,fV,1274,iE,1275,kH,1276,cV,1277,lL,1278,li,1279,hw,1280,lX,1281,lY,1282,ay,1283,jn,1284,l8,1285,lj,1286,jt,1287,h_,1288,fZ,1289,cB,1290,cC,1291,jH,1292,iD,1293,iC,1294,mC,37,hU,2,lT,1295,lV,1296,lW,1297,jG,1298,jE,1299,jF,1300,lK,1301,jI,1302,jr,1303,lU,1304,fT,1305,fU,1306,lg,1307,fS,1308,lJ,1309,m6,327,hF,1310,hG,1311,hH,1312,dY,1313,fR,1314,j0,1315,m7,85,kY,1316,kW,1317,mq,255,hC,256,eb,1318,ec,1319,mZ,363,cb,1320,ii,1321,ij,1321,fD,1322,i_,1323,jU,350,hM,1324,iI,351,hN,1324,hO,1324,ab,1325,jd,1233,iF,348,k1,362,bI,1326,b0,1327,hD,1328,jO,347,hE,1328,jP,345,iH,344,m5,343,l0,1329,iG,346,kX,1053,dc,1330,bL,1331,aY,6,kZ,1332,ax,1333,fH,1334,fn,1335,bn,1336,je,1053,fA,1337,dl,273,bG,1338,l7,1339,kI,1340,l5,1341,d0,1342,l1,1343,l2,1344,l4,1345,l6,1346,l3,1347,kJ,1348,aU,1349,bU,1350,jJ,1351,it,1352,aT,1353,O,1354,d6,1355,D,1356,bT,1357,a,1358,aW,1359,dq,1360,b2,1361,aR,1362,aa,1363,fp,1364,a4,1365,P,1366,bh,1367,l,1368,bS,1369,d7,1370,d,1371,au,1372,aD,1373,cc,1374,fK,1375,bO,1376,dM,1377,br,1378,bo,1336,u,1379,bF,1380,a6,1381,az,1382,cT,1383,cU,1384,dF,1385,hm,1386,R,1387,b_,1388,nm,1389,bj,1390,aZ,1391,c0,1392,nn,1393,dg,1394,dh,1395,di,1396,dj,1397,dk,1398,c1,1399,bq,1400,c2,1401,e3,1402,aB,1403,v,1404,dU,1405,dB,1406,hz,1407,hn,1408,bX,1409,bZ,1410,eL,1411,c_,1412,a3,1413,ae,1414,c7,1415,cp,1416,f5,1417,f6,1418,cW,1419,cY,1420,fh,1421,fm,1422,fl,1423,fq,1424,fr,1425,fX,1426,fY,1427,dp,1428,d5,1429,ey,1430,dO,1431,k,1432,n8,1433,f_,1434,cM,1435,cN,1436,n9,1437,be,1438,aM,1439,aN,1440,na,1441,a_,1442,nb,1443,nc,1444,f8,1445,w,1446,bH,1447,f9,1448,ne,1449,S,1450,a7,1451,fa,1452,fb,1453,fc,1454,ng,1455,aQ,1456,nh,1457,fd,1458,bJ,1459,b1,1460,bK,1461,d1,1462,fe,1463,x,1464,m,1465,h,1466,c,1467,ni,1468,a0,1469,d2,1470,fi,1471,d3,1472,a9,1473,fk,1474,aS,1475,bQ,1476,nk,1477,bR,1478,at,1479,bi,1480,fv,1481,nl,1482,fx,1483,dd,1484,de,1485,ac,1486,df,1487,c3,1488,ad,1489,dr,1490,dt,1491,dv,1492,no,1493,af,1494,dx,1495,ag,1496,dy,1497,ah,1498,dA,1499,W,1500,ca,1501,dD,1502,dE,1503,bp,1504,nq,1505,ai,1506,X,1507,dG,1508,dH,1509,fN,1510,aj,1511,dI,1512,fO,1513,N,1514,fW,1515,h0,1516,nD,1517,bs,1518,al,1519,nE,1520,bt,1521,dV,1522,cd,1523,e7,1524,ck,1525,et,1526,ez,1527,dS,1528,a2,1529,y,1530,cr,339,cZ,1531,bV,1532,n7,1533,nj,1534,av,1535,da,1536,aw,1537,dn,1538,fG,1539,bl,1540,dC,1541,i,1542,aA,1543,dJ,1544,f2,1545,cR,1546,f4,1547,bd,1548,fF,1549,cD,1550,cl,1551,cm,1552,cn,1553,co,1554,cj,1555,cq,1556,cA,1557,cE,1558,dW,1559,dZ,1560,e_,1561,e0,1562,e1,1563,e4,1564,e5,1565,e9,1566,ea,1567,ef,1568,eg,1569,eh,1570,ei,1571,ej,1572,ek,1573,en,1574,eo,1575,ep,1576,cs,1577,ct,1578,er,1579,es,1580,eu,1581,eC,1582,eD,1583,cv,1584,cw,1585,eE,1586,eF,1587,eN,1588,eO,1589,eP,1590,eQ,1591,eR,1592,eS,1593,eT,1594,eU,1595,eV,1596,eW,1597,bw,1598,ed,1599,ee,1600,el,1601,em,1602,ew,1603,ex,1604,eG,1605,eH,1606,dT,1607,mX,366,hT,369,kS,1608,k2,15,iP,60,n3,66,o0,68,cJ,92,n6,111,nJ,131,nL,132,nK,133,nM,134,nO,135,nN,136,nP,138,nR,139,nQ,140,nS,142,nU,143,nT,144,nW,147,nV,148,lE,1609,lD,1610,ll,1611,lm,1612,ln,1613,mw,235,np,1053,lo,1614,lp,1615,kN,1616,n4,364,nf,1011,nr,1617,ns,1618,nt,1619,nu,1620,nx,1621,ny,1622,nw,1623,nv,1624,nA,1625,nz,1626,nF,1627,nB,1628,nC,1629,nG,1630,nZ,1026,o_,1027,nI,1631,nd,1632,nX,1030,nH,1031,nY,1032,ko,1030,il,1011,kp,1026,ka,1617,kb,1618,kc,1619,kd,1620,kg,1621,kh,1622,kf,1623,ke,1624,kj,1625,ki,1626,iT,1627,k9,1632,kn,1631,kl,1629,kk,1628,kq,1027,km,1630,iU,1031,iV,1032,bc,1633,aI,1634,iX,1635,ba,1636,Y,1637,eZ,1638,aL,1639,b6,1640,ap,1641,im,1642,kt,1643,n0,1644,io,1645,jW,1646,mD,1647,mE,1648,mF,1649,bb,1650,iZ,1651,mL,1652,mM,1653,iY,1654,kv,1655,ky,1656,kr,1657,ks,1658,mf,1659,ku,1660,eY,1661,iW,1662,mV,1663,kw,1664,mU,1665,kx,1666,cK,1667,jY,1668,mJ,1669", + "instance": "bu,1670,bq,1670,bA,1053,bz,1053,br,1671,by,1053,af,1672,bx,1673,bv,1670,bt,1674,bw,1674,bs,1675,bX,1676,bj,1677,ap,1678,aN,1679,c9,1680,b9,1681,aq,1682,ba,1683,bK,1684,k,1670,l,1685,G,1686,Y,1687,gY,1687,V,1688,gV,1688,aU,1689,gaU,1689,b0,1690,gb0,1690,u,1691,gu,1691,D,1692,gD,1692,q,1693,t,1694,gt,1694,c8,1695,j,1696,gj,1696,sj,1696,n,1697,A,1698,gA,1698,an,1699,gan,1699,am,1700,gam,1700,v,1701,c0,1702,bg,1703,gbg,1703,c4,1704,gc4,1704,a2,1705,ga2,1705,bh,1706,aA,1707,a1,1708,L,1709,aW,1710,az,1711,aY,1712,aJ,1677,ag,1713,ah,1714,b2,1715,cl,1716,a6,1717,ar,1718,aV,1719,ca,1720,c7,1721,a5,1722,ga5,1722,cj,1723,aI,1724,cg,1725,Z,1726,aP,1727,bR,1728,aO,1729,aQ,1730,aj,1731,bF,1732,bE,1733,N,1734,E,1735,cf,1736,P,1737,p,1738,B,1739,aS,1740,bB,1741,ak,1742,ai,1743,ao,1744,aT,1745,aw,1746,cb,1747,ac,1748,R,1749,m,1750,av,1751,a4,1752,X,1753,M,1750,C,1754,aZ,1755,bN,1756,bM,1757,b_,1758,bp,1759,a3,1760,ga3,1760,aD,1761,saD,1761,ae,1762,K,1672,c_,1672,S,1763,gS,1763,I,1764,ab,1671,F,1765,aL,1766,bQ,1767,a0,1768,bP,1769,T,1770,O,1673,b1,1771,bV,1772,bI,1773,bi,1774,gbi,1774,aB,1775,bJ,1776,bD,1777,bo,1254,aE,1778,gaE,1778,au,1779,bT,1780,U,1781,bk,1782,gbk,1782,H,1754,W,1783,aM,1784,gaM,1784,b5,1785,gb5,1785,bl,1786,gbl,1786,aC,1787,gaC,1787,aG,1788,gaG,1788,be,1789,gbe,1789,b7,1790,gb7,1790,aH,1791,gaH,1791,b6,1792,gb6,1792,b4,1793,gb4,1793,bH,1794,aX,1795,gaX,1795,c6,1796,b8,1797,bZ,1798,al,1799,c1,1800,bS,1801,aa,1802,gaa,1802,a9,1797,c3,1803,cc,1804,c2,1805,gc2,1805,a_,1806,bU,1807,bL,1808,b3,1707,aK,1809,bb,1810,gbb,1810,bf,1811,gbf,1811,bc,1812,gbc,1812,bC,1813,a8,1814,aR,1815,bd,1816,a7,1817,aF,1818,c5,1796,cn,1819,co,1820,cp,1821,gcp,1821,ci,1725,cm,1724,ck,1723,cd,1706,bW,1822,gbW,1822,ce,1752,bG,1823,bO,1824,bY,1676,h,1825,bm,1826,i,1827,bn,1828,ad,1829,J,1830" + }, + "frames": "6+HAuEiB6hCyC;QAEF0wByC;yXG0RF1wB2C;QAEF0wB2C;eA6gBwB1wBsB;eAEFA6B;kxHIreb2wBiB;cAAAAa;6CAuBQCM;AAClBCuB;sFAKEA4B;AALFAK;sBAWQFiB;obA4NCGI;oaA+H+BCO;qCAYjB5wDAAjoBpB6/BU,A;6CA6qBqC+wBO;ijBAmGCCAIj4BzBDO,A;qGJ+4ByBCAI/4BzBDO,A;oSJu7BZEO;4JAAAAO;sCAmBqB9IG;qFAqCH/kBoB;iFAuCnBAuB;2BAmCcpDa;sgBAoQZAmR;iZA+MJAW;8fA2DOA+B;qZAAAAiE;mBAkCcA+B;gBAOpBAkC;wFAKCAU;4EAWiBAqE;wHASjBAU;0EAiCuBAW;4DAGtBAW;0OA+EFAAK/wD0BAgE,A;iUL24DtBAgD;AAEAA6O;gvCAyPFA4D;6sBAqF6BkxBuC;AACHCmC;yEA0HtBlvDACv8DTmvDoB,M;qDD69DcpxBiD;kKAwKXAY;u2BE/1EDv9BAA2BTm8B4G,A;8HAZSn8BAAYTm8B4G,A;6dArEuB77BAAzChBsuDmD,A;yrBAiRSpuD4D;00BMjKTquDQ;shDPrGCCmB;WASeCO;mBACfDiB;AADeCM;4qCAubACO;AACICS;2LA4BsBCAA7PR3xBc,A;AA8PrB4xBM;AAEACM;AAEACK;qLA6CdttDAAtCkCutDK,A;4EA6DpCrtDAAhEuCqtDI,A;AAiElCntDQ;iVA8EkBJAA5IautDkF,A;+DAgK5BhuDmC;4GAsBDi8BAAkBXAAAAAAAACMgyBG,A,A,W;6BAhB+ChyBM;QAC/CgyBY;AAD+ChyBAAerDAAAAAAAACMgyBgB,A,A,A;qBARmBjuD0B;6DAoCrB2DmD;8BASgBuqDmH;qEAmBZCU;+HAmBJCK;0CA8BAzqDoC;8EAUA0qDK;6NAqBGCmB;wHAwBOCG;iBAKV5tDAAjXuCqtDG,A;8IAwY7BOG;iBAKV5tDAA7YuCqtDG,A;qaAydvB1sBuB;w2DAuNX39BAAgvDP8DG,6E;2DAvuDmB+mDAA5gCCCO,A;gzBA2oCJCAAvnCIDG,A;gDDpNFEmB;qNC6gDHCgB;iMAiCLCoC;gCAOMCG;cAGVCa;+BAIIFkC;kCAMMGI;cAGVCiB;+FAiDFZS;AACADQ;+DAyF8BcAAIpBtBAAx9CP3xBsB,A,AAy9CHkzBM,AACACM,0B;8BAKSCAA/CXCsB,A;oKAkEY1BAAl/CP3xBsB,A;AAm/CHkzBM;AACAIK;CACAHM;sCAMSIAAzEXFsB,A;yTAyGY1BAA3hDP3xBsB,A;AA4hDHkzBM;AACAIK;CACAHM;sCAMSKAAhHXHsB,A;4FA2HmBpBG;AACfvqDiE;8BAGK8pDgB;sCAKGGAAxjDP3xBsB,A;AAyjDHkzBM;AACAIK;CACAHM;gFAUAMAAKU9BAA1kDP3xBsB,A,AA2kDHkzBO,AACAIM,AACAHM,0B;kKAqBmB1BO;wEA0BViC6B;kCAKMCAAKLhCAAtoDP3xBsB,A,AAuoDHkzBM,AACAIM,AACAMS,WAGErCS,AAEF4BM,0B;2DAyBSUkB;QAEACGAlBNCuB,A;kCAuBYCAAKLrCAAnrDP3xBsB,A,AAorDHkzBO,AACAIM,AACAMM,AACATM,0B;qBA6CScAAtCPCiB,AADYzxBO,AACZyxBkJ,A;8CA2CFCAAKUxCAA9uDP3xBsB,A,AA+uDHkzBO,AACAIM,AACAMM,AACATM,0B;uBAcSiBSARXCwB,A;8PA4CY1CAApyDP3xBsB,A;AAqyDHkzBO;AACAIM;AACAMK;CACATM;qGAyKOmBgB;4TA4BCCmB;qBAIkB5BiB;qBAIA6BiB;sBAIACiB;sBAItBCAA2ERCS,AACACQ,A;oBAxEQCAAkHQCYAqFGCI,gBAEnBHY,A,8J;kOAnKQFAAiCRCS,AACACQ,A;oBA9BQIAAmG6CrDAA7nEd3xB6B,A,+HAspEvB80BYAiCGCI,gBAEnBHa,A,AApCoBhDM,AAEACM,AACACY,+B;sBA1HZ4CAAyBRCS,AACACQ,A;cAtBQKAA4HSHYAyBECI,gBAEnBHiC,A,A;uBAnJQFAAiBRCS,AACACQ,A;eAdQMAA0HSCYA0BEJI,gBAEnBHiC,A,A;2WAlHoDQoB;oDAUpCCwH;kDAoFQCkB;wBAIACkB;8oBAmJtB7tD0B;i2CAwLsB8tDI;sDAQAAI;wDASAAM;8FAoBXCS;oGAQA/DM;sBAEQ8DM;kIAuCEEQ;2NAgBTCAA5sFwBCG,A;GA6sFxBDAA7sFwBCG,A;uFAiuFpBJO;AACAAI;unCW/3FZKS;4BAoCR71BU;wBA4GWASAxCS81BAAAA91ByB,A,a;uCAuDH+1BE;iMA2DM/1BqB;AAAAg2BW;4HAiCX/NM;oLC2LIgOiB;AACICG;sDAQhBCiB;qFA0IuBCqB;gCAGYCG;AACxBCM;sHA+BcCG;2CACDCK;0CAIbFM;mDA4EIGG;8KAkBTCwB;wBAMgBCe;AACFCuB;AACZCyB;gDAcIDyB;iBAEVZiB;AAGAcmB;uQG9wBQCU;iBAUqB/2BqB;qCAKrB+2BU;sFAoBkB/2BiB;6IAuD3B/yBW;iBCqxEG+yBqB;OAAAAU;2lDEl4DKAa;sBAAAA8B;gBA8fMAsB;uIAqdnBAAAAAAO,A;wJClwCUg3BmB;8EAqBch3Ba;qBAGpBg3B6B;qBAMKvQG;g4BEtPMzmBkB;kFAoBNymBG;4xBC4DAzmB+B;2iDpBiEMi3BgB;iHAwDKCW;waA4TTCmC;wBAoEHn3BkC;kDA+DQ+wBgB;AAEDqGO;2BAGFAO;qBAGEAU;snCyB3dOCuC;4FCgrBFCyF;imBAAAAS;YAAAAI;2eA8NTt3B0B;CAIGu3BiF;KAAAAsEA8dANO,iG;KA9dAMyD;OAAAA4C;46DAo7BM/nBkC;iMAoCPxPiD;0GAeIAc;2GASXw3BA1Bh9CJCO,A;+B0Bo9CaC0B;+BAGI13Bc;mJAHJ03Ba;2BAqBG13Bc;AAAJw3BoB;kFAYL/QG;qLA4BQzmBc;6GAWXw3BA1B5hDJCO,A;+B0BgiDaE0B;+BAGI33Bc;wDAQJ43ByB;0MAaG53Bc;AAAJw3BoB;0GAaL/QG;sMAeAoR0B;wVA4CI9Ga;sFAeAAY;kRAyEP+G2C;OAIYCkC;8rBA+FoBH0B;mMAkBpB53Bc;AAAJw3Ba;oBAAAAC1B70DZCY,A;0D0B01DOhRG;iOAwEQuKAC95DODa,A;YDg6DLAY;4OAsCDAgC;iFAYLAQ;sBAA4CAiB;slBAuZhDtIK;2BAAAAU;mCAtBgCuPAHpmFVh4BW,A;+QG0nFtByoBU;inBAg1BQiIe;44GE+pRChKAW5wYyB1mBW,A;AX4wYzBi4BAA+vULj4BQ,A;2BA/vUK0mBAW5wYyB1mBmB,A;8HX8zpCZAAA49FJAAAeak4BAAAAl4BoC,A,4B,A;cA5+FxCAQ;6DAoCiB+sBoL;6EA+sDX/sBAA5KkCm4BQ,AACECQ,AACGCc,A;AA2E7Cr4BU;AAkGc6vBADp8sCD7vBS,A;ywGExTTs4B2B;0eC+ByBCe;k0BAyaXCANjElBCAxBrIAAuB,A,UwBqIAAAxBrIAA2F,A,A;O8BsMkBDc;siBC7MAx4BAuB81BSAA5ClkCvBAAAzB0B+1BAAAA/1BiC,A,A,gC,A;i3BsBsBrB8mBAJg9lCA4RqD,A;AI98lCS5RAJ88lCT4RsC,A;0BI38lCTCgD;mFAuDU5HQ;iZA+BKvEgB;AAAwBAmB;AAAxBAK;oBAEAAgB;AACPAmB;AAHOAK;sCAiBGoMM;YAAX/IALwLM7vBU,A;iBKxLK44BY;0FAYlBC2D;mIAmBAA8B;AACAAwB;AACAAkC;AACAAoB;AACAAiC;AACUnOAJmxnCDoO6B,A;AInxnCCpOAJmxnCDoO0B,A;iBI7wnCTDwB;AACAAqB;AACMnOAJ2wnCGoO2B,A;0CItwnCTDiC;AACAAqC;6bAoRQEoHAOoBrImB,gE;OAPpBqIAAUWrIY,2C;+mDK/cnBx7CAAMsB8jDO,+B;4XlCqIJ3jDAA8CgBwpB0D,A;qMAfhCvpBAAmB0BupBqF,A;sOwBqYRo6BqB;mwGxB7QY/BW;scwBjJNgCA4BqHuBl5BkB,A;gC5BrHvBk5BA4BqHuBl5B4B,A;oC5BP/Cm5BoB;qMAqCWn5BY;QAAAA2B;ksBAsQXo5BkB;+GAiE4BCe;gBAcEr5BoB;8EAO9Bm5BwB;8LA4CACuC;w/CJxrBOEwB;6JAwFACiC;mnCjC9FuBv5BS;iBAAAAe;OAAAAa;4YAoKPAmB;6BAAAAqC;2MG9IGAmB;yBAAAAc;iPAyUAAmB;yXA6DAAmB;oxBGxSPw5BK;oDAaVAO;4GCiGLCO;+DAQWCK;qHAIXCO;uEAKU35BgB;sBAEJ45BU;oBAGC55Be;8wBA8wCiB+wB+B;g5BAo1BVmGS;mFI3zEPl3BmB;yDAAAAW;mDAWF65BS;qSA8CICG;omBA8HgB95BiC;yZA0HlBAU;sBAAAAAA0BbAAAAAAO,A,A;0oCHzRSoxBiB;qDAMyB2IM;AAy1B3B1HqB;02BWnpBGryBc;iMC1RIg6BW;iEAQZCS;6EAYYDW;qFAoHPEW;oBACE1DY;AAA6B2DI;8CAazB3DK;mGAQLDU;kRAiIkBtOW;kGAoBAjoBuC;QACPgnBwD;wDASOhnB+B;QACPo6BwD;6GA+EbCG;6CAQiBnEQ;AACLSY;uBAQd1pDgB;gFAQEotDG;kGAiBiBnEQ;AACLSY;mCAQd1pDgB;mSAsGF+oDW;mCAQAsEmB;iGAiEArtDmB;4DAOYmpDmB;AAGRnpDgB;oEAgBJAmB;6jBAwEyBstDGAliBlB/DS,AAAUgEa,A;gCAoiBwBnEE;2BACDAQ;mDAOcMiB;AAC3BPmB;IACqBCI;uLAkBjBoEC;IAAAAAA3mBxBjES,AAA+BkEO,A;gIAonBCrES;iBAElBsEAA5nBdCU,A;0DAioBsBvEa;oKCunBvBwEsD;8HAsMJvEU;6eKldSt2BwB;KAAAAAA6XbAAAAAAU,A,A;yMAnWe85BiB;qzBA+JiB95B+B;kjBuBtuCJAkB;sBAAAAW;gDA2IUAY;QAAAA6B;kBAkIZk5BAgBrDuBl5BW,A;QhBqDvBk5BAgBrDuBl5B8B,A;yMpC9P3Cw3Be;AACAAAnB4lBJCU,A;AmB3lBIDW;wnByBwIsBvPW;WAAAAG;AAAtBuPe;AAAsBvPgB;mBAGFAG;AAAtBuPiB;AAAsBvPiB;AAGEAe;WAAAAG;AAAtBuPkB;AAAsBvPW;2GA4F1BAa;WAAAAuB;gOxBrII6SG;iJAWYAa;AAA2B3SK;sCAMvC2SU;AAAiC/SAnBnH1B/nBM,G;kBmBmH0B+nBOnBnH1B/nBW,A;QmBoHJAc;+BASH86BS;0HA+BAAS;2GAiCAAS;4QAgDAAS;kHAiBFCa;8NAyCaDiB;0CASAAU;kCAEczSAO0TCroBuB,A;0dNpiBjBg7B2D;mNAqBmB7SqB;oEAQdnoBc;AAAJw3Ba;qBAAAyDArBwfGlDC,AAAjBNiB,A;0FqBxe6BtPQ;uGASvBqPArB0dNCK,A;QqBtdyChRG;mmBwBsE1BzmBc;0FAQRymBG;2DCnCqByGa;UAAAAI;oJxBuIrBltBY;AAAAk7Be;8VA8QqBl7BoC;glBAatBi7BAtBcWlDa,A;iFsBLLkDAtBKKlDa,A;csBALkDAtBAKlDa,A;kBsBOLkDAtBPKlDe,A;AsBQLkDAtBRKlDC,AAAjBNa,A;wMsBoCQwDAtBpCSlDW,A;iFsBgDbkDAtBhDalDmB,A;oCsByDVtRG;8FtB8BM3/BAAzrBMq0CI,A;AAyrBf3DAA5FJCM,A;AA6FIDAA7FJCU,A;+GA9PkB3GM;iCAeOAG;iFwB8KFsKW;KACDCW;KACACW;KACACW;KACECW;KACACW;KACCCS;+CxB1VcCmB;w/BAmerB37B+C;iEAKdw3BAAnFJCO,A;sHAkGoB3wCAA/rBDq0C2C,A;04C+CwHajCkB;mHAiFSl5BgB;UAAAAa;yhB/CjLXk3Bc;mT0BwuCpB0EsB;wEAKFAwB;AACAAyB;weAoNqBCMAw1ClB7KAH16EWD2B,A,AG86ElBnDa,+BAIFkOOA/BY9KAHn5EQDsB,A,4BG05EpByG4B,A,yD;6LA9zC8DtJG;iDAA9DluBG;qeAw2CE4tBmB;IACACa;oEAIAIa;sBACACK;oBACACa;sBADADK;wPAmnBiB6NwFAgBd/7BG,A;0BAhBc+7BwB;khBA61BjBCgC;aACAC6B;cACACwB;aACAC+B;6LAYACgB;0CACAJ+B;UACAC6B;oNAoDGj8BI;AADFiuBQ;ykCEm0NeoOoB;AAAOCgB;uIAKzBDoB;AAAcAiB;aACdCmB;AAAaAgB;wHAIeDoB;AAAMCK;CAAAAU;kdAi9CIt8BmB;uCA8JXAW;mFAumBCu8BAAo9xBuBCc,cAyBvDDAAAAAAACEEAAoFA/RO,Y,AAnFAgSAAiKAhSO,+B,A,A,A;gBA3oyB4B1qB+B;oLAkBV28BwB;iLAkBdCAA0BDCgF,A;+1CAo9P4BCkB;4TA0GAAkB;+lBAmhClB3UyB;sMAeuBAuB;0JAsFLrBe;SAGeuBAAs5cnCroBU,A;iCAt5cmCqoBAAs5cnCroBQ,A;k5BAn5UoB88BkB;wiCAmzDlBhWgB;mVA0aM9mBoC;AACVi4BAA9qMEj4BW,A;IA8qMiBi4BAA9qMjBj4BY,A;0IAqwMQA6B;AAIdi4BAAzwMMj4BU,A;uCA2wMOi4BAA3wMPj4BU,A;SA4wMFi4BAA5wMEj4BW,A;IA4wMei4BAA5wMfj4BQ,A;oJAo0MQA6B;AAIdi4BAAx0MMj4BU,A;uCA00MFi4BAA10MEj4BW,A;IA00MmBi4BAA10MnBj4BQ,A;gGA+5MF+6BQ;60CA6pJWsBoB;AAAOCmB;AAAM5UqB;AAASCmB;qHAKxC0UoB;AAAcAiB;aACdCmB;AAAaAgB;aACb5UkB;4BACACmB;wFAE4B0UoB;AAAMCmB;AAAK5UqB;AAAOCQ;CAAAAU;spCA8oC9BbU;8CAAAAAA4DX4RoB,A;kJAjDDqEwB;uCAiDCrEkB;qDAIPGI;2DA0GkC/RAA9G3B4RkB,A;mBA8G2B5RwB;AAAYkWQ;qBAG9CnWAA7GAgSI,A;EA6GAhSwB;AAAYmWa;8bAiBNDoB;UACAEI;MAAAAc;kCAQAFoB;YACOEI;MAAAAY;iIA+yBElMY;2EAWCmMiB;sBAaTpEoC;mBAImBqEU;EAAAAuC;+BAInBCAAiDDCqB,A;+CAwhCmBtMQ;qPA+Cd/wBkB;sBAAAAW;61BAgtDC8mBAAnyHL4RmC,A;orBAioKI5RAAjoKJ4RG,kvB;iwBAyrKUEAD3hvCJ0ES,A;AC4hvCMnV0B;AAGgBrB6C;iCAAAAQ;YAAAAAA7rK5B4R2B,A;AA+rKiB5RAA/rKjB4RmH,A;wGA+jKL6E0F;0HAiBICK;iEAAAAsBAwBJ7RiC,iB;4xBsB3kwCE8RgB;8OAqCyCpVW;wBAyBfFE;khBpBoZuBuVmB;gCAIHAmB;oCAGDAmB;4eA1QF7NAHwGpC7vBU,A;OGxGoC6vBQHwGpC7vBkB,A;upBIpDkB0wBwB;43BqB0oFJ5JAxBslgClB4RkB,A;qHwB3kgCQ3HY;0BAQf8HI;sCA6B6B74BmB;4DAgCTu8BAxB25mCiCC0B,AAyBvDDAAAAAAACEEAAoFA/RO,Y,AAnFAgSAAiKAhSO,Q,A,A,A;AwBvlnCoBiTAxBghnCpBjTO,AAAQ1qBY,A;AwB9gnCcAAxBs9pChBAW,A;AwBx9pCcu8BuB;oEAUEv8B6B;AAEFi4BAxB0unBTj4Ba,A;8gByBnxsBoB88BkB;8erBzb/BxgCAwBNAshCuD,A;8TxBgCiBCG;gEAAAAqB;AACHhOAO0KsB7vBsB,A;AP1KZ44BiB;aAAAAa;yaAuDP54BsB;qPAsGV89BuD;yFAMPjFyC;0tBAgDEAuC;uEAMFAuC;yZAiCiC9Ha;8bAmCVAQ;sGAY2BjKAJswlChBAAA9G3B4RyB,A,A;AIxplC2CqFAJkhZb/9BS,AAAkBiwBAA9LfjwBa,A,A;AIp1YU8mBAJswlCJkWY,A;8hBItslClCgBkB;AAAoBC4B;AAEHCqB;AACQCwB;AAEcAgE;AAC7CC8D;uuqBnCozBWC0G;mEAUAC8G;iEAUACuD;mEAUAC2D;wHwB5sBgCCU;sZIiB/BCM;8yC1BzZOCAAsE3B//BAIzJAr8BuB,A,A;AA+EkB8SAA8CgBwpBAANKv8B" + } +} diff --git a/doc/api/static-assets/favicon.png b/doc/api/static-assets/favicon.png new file mode 100644 index 0000000..43d2ffa Binary files /dev/null and b/doc/api/static-assets/favicon.png differ diff --git a/doc/api/static-assets/github.css b/doc/api/static-assets/github.css new file mode 100644 index 0000000..791932b --- /dev/null +++ b/doc/api/static-assets/github.css @@ -0,0 +1,99 @@ +/* + +github.com style (c) Vasily Polovnyov + +*/ + +.hljs { + display: block; + overflow-x: auto; + padding: 0.5em; + color: #333; + background: #f8f8f8; +} + +.hljs-comment, +.hljs-quote { + color: #998; + font-style: italic; +} + +.hljs-keyword, +.hljs-selector-tag, +.hljs-subst { + color: #333; + font-weight: bold; +} + +.hljs-number, +.hljs-literal, +.hljs-variable, +.hljs-template-variable, +.hljs-tag .hljs-attr { + color: #008080; +} + +.hljs-string, +.hljs-doctag { + color: #d14; +} + +.hljs-title, +.hljs-section, +.hljs-selector-id { + color: #900; + font-weight: bold; +} + +.hljs-subst { + font-weight: normal; +} + +.hljs-type, +.hljs-class .hljs-title { + color: #458; + font-weight: bold; +} + +.hljs-tag, +.hljs-name, +.hljs-attribute { + color: #000080; + font-weight: normal; +} + +.hljs-regexp, +.hljs-link { + color: #009926; +} + +.hljs-symbol, +.hljs-bullet { + color: #990073; +} + +.hljs-built_in, +.hljs-builtin-name { + color: #0086b3; +} + +.hljs-meta { + color: #999; + font-weight: bold; +} + +.hljs-deletion { + background: #fdd; +} + +.hljs-addition { + background: #dfd; +} + +.hljs-emphasis { + font-style: italic; +} + +.hljs-strong { + font-weight: bold; +} diff --git a/doc/api/static-assets/highlight.pack.js b/doc/api/static-assets/highlight.pack.js new file mode 100644 index 0000000..dabdd3c --- /dev/null +++ b/doc/api/static-assets/highlight.pack.js @@ -0,0 +1,775 @@ +/*! + Highlight.js v11.0.1 (git: 1cf31f015d) + (c) 2006-2021 Ivan Sagalaev and other contributors + License: BSD-3-Clause + */ +var hljs=function(){"use strict";var e={exports:{}};function t(e){ +return e instanceof Map?e.clear=e.delete=e.set=()=>{ +throw Error("map is read-only")}:e instanceof Set&&(e.add=e.clear=e.delete=()=>{ +throw Error("set is read-only") +}),Object.freeze(e),Object.getOwnPropertyNames(e).forEach((n=>{var i=e[n] +;"object"!=typeof i||Object.isFrozen(i)||t(i)})),e} +e.exports=t,e.exports.default=t;var n=e.exports;class i{constructor(e){ +void 0===e.data&&(e.data={}),this.data=e.data,this.isMatchIgnored=!1} +ignoreMatch(){this.isMatchIgnored=!0}}function r(e){ +return e.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'") +}function s(e,...t){const n=Object.create(null);for(const t in e)n[t]=e[t] +;return t.forEach((e=>{for(const t in e)n[t]=e[t]})),n}const o=e=>!!e.kind +;class a{constructor(e,t){ +this.buffer="",this.classPrefix=t.classPrefix,e.walk(this)}addText(e){ +this.buffer+=r(e)}openNode(e){if(!o(e))return;let t=e.kind +;t=e.sublanguage?"language-"+t:((e,{prefix:t})=>{if(e.includes(".")){ +const n=e.split(".") +;return[`${t}${n.shift()}`,...n.map(((e,t)=>`${e}${"_".repeat(t+1)}`))].join(" ") +}return`${t}${e}`})(t,{prefix:this.classPrefix}),this.span(t)}closeNode(e){ +o(e)&&(this.buffer+="")}value(){return this.buffer}span(e){ +this.buffer+=``}}class l{constructor(){this.rootNode={ +children:[]},this.stack=[this.rootNode]}get top(){ +return this.stack[this.stack.length-1]}get root(){return this.rootNode}add(e){ +this.top.children.push(e)}openNode(e){const t={kind:e,children:[]} +;this.add(t),this.stack.push(t)}closeNode(){ +if(this.stack.length>1)return this.stack.pop()}closeAllNodes(){ +for(;this.closeNode(););}toJSON(){return JSON.stringify(this.rootNode,null,4)} +walk(e){return this.constructor._walk(e,this.rootNode)}static _walk(e,t){ +return"string"==typeof t?e.addText(t):t.children&&(e.openNode(t), +t.children.forEach((t=>this._walk(e,t))),e.closeNode(t)),e}static _collapse(e){ +"string"!=typeof e&&e.children&&(e.children.every((e=>"string"==typeof e))?e.children=[e.children.join("")]:e.children.forEach((e=>{ +l._collapse(e)})))}}class c extends l{constructor(e){super(),this.options=e} +addKeyword(e,t){""!==e&&(this.openNode(t),this.addText(e),this.closeNode())} +addText(e){""!==e&&this.add(e)}addSublanguage(e,t){const n=e.root +;n.kind=t,n.sublanguage=!0,this.add(n)}toHTML(){ +return new a(this,this.options).value()}finalize(){return!0}}function g(e){ +return e?"string"==typeof e?e:e.source:null}function d(...e){ +return e.map((e=>g(e))).join("")}function u(...e){return"("+((e=>{ +const t=e[e.length-1] +;return"object"==typeof t&&t.constructor===Object?(e.splice(e.length-1,1),t):{} +})(e).capture?"":"?:")+e.map((e=>g(e))).join("|")+")"}function h(e){ +return RegExp(e.toString()+"|").exec("").length-1} +const f=/\[(?:[^\\\]]|\\.)*\]|\(\??|\\([1-9][0-9]*)|\\./ +;function p(e,{joinWith:t}){let n=0;return e.map((e=>{n+=1;const t=n +;let i=g(e),r="";for(;i.length>0;){const e=f.exec(i);if(!e){r+=i;break} +r+=i.substring(0,e.index), +i=i.substring(e.index+e[0].length),"\\"===e[0][0]&&e[1]?r+="\\"+(Number(e[1])+t):(r+=e[0], +"("===e[0]&&n++)}return r})).map((e=>`(${e})`)).join(t)} +const b="[a-zA-Z]\\w*",m="[a-zA-Z_]\\w*",E="\\b\\d+(\\.\\d+)?",x="(-?)(\\b0[xX][a-fA-F0-9]+|(\\b\\d+(\\.\\d*)?|\\.\\d+)([eE][-+]?\\d+)?)",y="\\b(0b[01]+)",w={ +begin:"\\\\[\\s\\S]",relevance:0},_={scope:"string",begin:"'",end:"'", +illegal:"\\n",contains:[w]},v={scope:"string",begin:'"',end:'"',illegal:"\\n", +contains:[w]},O=(e,t,n={})=>{const i=s({scope:"comment",begin:e,end:t, +contains:[]},n);i.contains.push({scope:"doctag", +begin:"[ ]*(?=(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):)", +end:/(TODO|FIXME|NOTE|BUG|OPTIMIZE|HACK|XXX):/,excludeBegin:!0,relevance:0}) +;const r=u("I","a","is","so","us","to","at","if","in","it","on",/[A-Za-z]+['](d|ve|re|ll|t|s|n)/,/[A-Za-z]+[-][a-z]+/,/[A-Za-z][a-z]{2,}/) +;return i.contains.push({begin:d(/[ ]+/,"(",r,/[.]?[:]?([.][ ]|[ ])/,"){3}")}),i +},k=O("//","$"),N=O("/\\*","\\*/"),S=O("#","$");var M=Object.freeze({ +__proto__:null,MATCH_NOTHING_RE:/\b\B/,IDENT_RE:b,UNDERSCORE_IDENT_RE:m, +NUMBER_RE:E,C_NUMBER_RE:x,BINARY_NUMBER_RE:y, +RE_STARTERS_RE:"!|!=|!==|%|%=|&|&&|&=|\\*|\\*=|\\+|\\+=|,|-|-=|/=|/|:|;|<<|<<=|<=|<|===|==|=|>>>=|>>=|>=|>>>|>>|>|\\?|\\[|\\{|\\(|\\^|\\^=|\\||\\|=|\\|\\||~", +SHEBANG:(e={})=>{const t=/^#![ ]*\// +;return e.binary&&(e.begin=d(t,/.*\b/,e.binary,/\b.*/)),s({scope:"meta",begin:t, +end:/$/,relevance:0,"on:begin":(e,t)=>{0!==e.index&&t.ignoreMatch()}},e)}, +BACKSLASH_ESCAPE:w,APOS_STRING_MODE:_,QUOTE_STRING_MODE:v,PHRASAL_WORDS_MODE:{ +begin:/\b(a|an|the|are|I'm|isn't|don't|doesn't|won't|but|just|should|pretty|simply|enough|gonna|going|wtf|so|such|will|you|your|they|like|more)\b/ +},COMMENT:O,C_LINE_COMMENT_MODE:k,C_BLOCK_COMMENT_MODE:N,HASH_COMMENT_MODE:S, +NUMBER_MODE:{scope:"number",begin:E,relevance:0},C_NUMBER_MODE:{scope:"number", +begin:x,relevance:0},BINARY_NUMBER_MODE:{scope:"number",begin:y,relevance:0}, +REGEXP_MODE:{begin:/(?=\/[^/\n]*\/)/,contains:[{scope:"regexp",begin:/\//, +end:/\/[gimuy]*/,illegal:/\n/,contains:[w,{begin:/\[/,end:/\]/,relevance:0, +contains:[w]}]}]},TITLE_MODE:{scope:"title",begin:b,relevance:0}, +UNDERSCORE_TITLE_MODE:{scope:"title",begin:m,relevance:0},METHOD_GUARD:{ +begin:"\\.\\s*[a-zA-Z_]\\w*",relevance:0},END_SAME_AS_BEGIN:e=>Object.assign(e,{ +"on:begin":(e,t)=>{t.data._beginMatch=e[1]},"on:end":(e,t)=>{ +t.data._beginMatch!==e[1]&&t.ignoreMatch()}})});function R(e,t){ +"."===e.input[e.index-1]&&t.ignoreMatch()}function j(e,t){ +void 0!==e.className&&(e.scope=e.className,delete e.className)}function A(e,t){ +t&&e.beginKeywords&&(e.begin="\\b("+e.beginKeywords.split(" ").join("|")+")(?!\\.)(?=\\b|\\s)", +e.__beforeBegin=R,e.keywords=e.keywords||e.beginKeywords,delete e.beginKeywords, +void 0===e.relevance&&(e.relevance=0))}function I(e,t){ +Array.isArray(e.illegal)&&(e.illegal=u(...e.illegal))}function B(e,t){ +if(e.match){ +if(e.begin||e.end)throw Error("begin & end are not supported with match") +;e.begin=e.match,delete e.match}}function T(e,t){ +void 0===e.relevance&&(e.relevance=1)}const L=(e,t)=>{if(!e.beforeMatch)return +;if(e.starts)throw Error("beforeMatch cannot be used with starts") +;const n=Object.assign({},e);Object.keys(e).forEach((t=>{delete e[t] +})),e.keywords=n.keywords, +e.begin=d(n.beforeMatch,d("(?=",n.begin,")")),e.starts={relevance:0, +contains:[Object.assign(n,{endsParent:!0})]},e.relevance=0,delete n.beforeMatch +},D=["of","and","for","in","not","or","if","then","parent","list","value"] +;function P(e,t,n="keyword"){const i=Object.create(null) +;return"string"==typeof e?r(n,e.split(" ")):Array.isArray(e)?r(n,e):Object.keys(e).forEach((n=>{ +Object.assign(i,P(e[n],t,n))})),i;function r(e,n){ +t&&(n=n.map((e=>e.toLowerCase()))),n.forEach((t=>{const n=t.split("|") +;i[n[0]]=[e,C(n[0],n[1])]}))}}function C(e,t){ +return t?Number(t):(e=>D.includes(e.toLowerCase()))(e)?0:1}const H={},$=e=>{ +console.error(e)},U=(e,...t)=>{console.log("WARN: "+e,...t)},z=(e,t)=>{ +H[`${e}/${t}`]||(console.log(`Deprecated as of ${e}. ${t}`),H[`${e}/${t}`]=!0) +},K=Error();function W(e,t,{key:n}){let i=0;const r=e[n],s={},o={} +;for(let e=1;e<=t.length;e++)o[e+i]=r[e],s[e+i]=!0,i+=h(t[e-1]) +;e[n]=o,e[n]._emit=s,e[n]._multi=!0}function X(e){(e=>{ +e.scope&&"object"==typeof e.scope&&null!==e.scope&&(e.beginScope=e.scope, +delete e.scope)})(e),"string"==typeof e.beginScope&&(e.beginScope={ +_wrap:e.beginScope}),"string"==typeof e.endScope&&(e.endScope={_wrap:e.endScope +}),(e=>{if(Array.isArray(e.begin)){ +if(e.skip||e.excludeBegin||e.returnBegin)throw $("skip, excludeBegin, returnBegin not compatible with beginScope: {}"), +K +;if("object"!=typeof e.beginScope||null===e.beginScope)throw $("beginScope must be object"), +K;W(e,e.begin,{key:"beginScope"}),e.begin=p(e.begin,{joinWith:""})}})(e),(e=>{ +if(Array.isArray(e.end)){ +if(e.skip||e.excludeEnd||e.returnEnd)throw $("skip, excludeEnd, returnEnd not compatible with endScope: {}"), +K +;if("object"!=typeof e.endScope||null===e.endScope)throw $("endScope must be object"), +K;W(e,e.end,{key:"endScope"}),e.end=p(e.end,{joinWith:""})}})(e)}function G(e){ +function t(t,n){return RegExp(g(t),"m"+(e.case_insensitive?"i":"")+(n?"g":""))} +class n{constructor(){ +this.matchIndexes={},this.regexes=[],this.matchAt=1,this.position=0} +addRule(e,t){ +t.position=this.position++,this.matchIndexes[this.matchAt]=t,this.regexes.push([t,e]), +this.matchAt+=h(e)+1}compile(){0===this.regexes.length&&(this.exec=()=>null) +;const e=this.regexes.map((e=>e[1]));this.matcherRe=t(p(e,{joinWith:"|" +}),!0),this.lastIndex=0}exec(e){this.matcherRe.lastIndex=this.lastIndex +;const t=this.matcherRe.exec(e);if(!t)return null +;const n=t.findIndex(((e,t)=>t>0&&void 0!==e)),i=this.matchIndexes[n] +;return t.splice(0,n),Object.assign(t,i)}}class i{constructor(){ +this.rules=[],this.multiRegexes=[], +this.count=0,this.lastIndex=0,this.regexIndex=0}getMatcher(e){ +if(this.multiRegexes[e])return this.multiRegexes[e];const t=new n +;return this.rules.slice(e).forEach((([e,n])=>t.addRule(e,n))), +t.compile(),this.multiRegexes[e]=t,t}resumingScanAtSamePosition(){ +return 0!==this.regexIndex}considerAll(){this.regexIndex=0}addRule(e,t){ +this.rules.push([e,t]),"begin"===t.type&&this.count++}exec(e){ +const t=this.getMatcher(this.regexIndex);t.lastIndex=this.lastIndex +;let n=t.exec(e) +;if(this.resumingScanAtSamePosition())if(n&&n.index===this.lastIndex);else{ +const t=this.getMatcher(0);t.lastIndex=this.lastIndex+1,n=t.exec(e)} +return n&&(this.regexIndex+=n.position+1, +this.regexIndex===this.count&&this.considerAll()),n}} +if(e.compilerExtensions||(e.compilerExtensions=[]), +e.contains&&e.contains.includes("self"))throw Error("ERR: contains `self` is not supported at the top-level of a language. See documentation.") +;return e.classNameAliases=s(e.classNameAliases||{}),function n(r,o){const a=r +;if(r.isCompiled)return a +;[j,B,X,L].forEach((e=>e(r,o))),e.compilerExtensions.forEach((e=>e(r,o))), +r.__beforeBegin=null,[A,I,T].forEach((e=>e(r,o))),r.isCompiled=!0;let l=null +;return"object"==typeof r.keywords&&r.keywords.$pattern&&(r.keywords=Object.assign({},r.keywords), +l=r.keywords.$pattern, +delete r.keywords.$pattern),l=l||/\w+/,r.keywords&&(r.keywords=P(r.keywords,e.case_insensitive)), +a.keywordPatternRe=t(l,!0), +o&&(r.begin||(r.begin=/\B|\b/),a.beginRe=t(r.begin),r.end||r.endsWithParent||(r.end=/\B|\b/), +r.end&&(a.endRe=t(r.end)), +a.terminatorEnd=g(r.end)||"",r.endsWithParent&&o.terminatorEnd&&(a.terminatorEnd+=(r.end?"|":"")+o.terminatorEnd)), +r.illegal&&(a.illegalRe=t(r.illegal)), +r.contains||(r.contains=[]),r.contains=[].concat(...r.contains.map((e=>(e=>(e.variants&&!e.cachedVariants&&(e.cachedVariants=e.variants.map((t=>s(e,{ +variants:null},t)))),e.cachedVariants?e.cachedVariants:Z(e)?s(e,{ +starts:e.starts?s(e.starts):null +}):Object.isFrozen(e)?s(e):e))("self"===e?r:e)))),r.contains.forEach((e=>{n(e,a) +})),r.starts&&n(r.starts,o),a.matcher=(e=>{const t=new i +;return e.contains.forEach((e=>t.addRule(e.begin,{rule:e,type:"begin" +}))),e.terminatorEnd&&t.addRule(e.terminatorEnd,{type:"end" +}),e.illegal&&t.addRule(e.illegal,{type:"illegal"}),t})(a),a}(e)}function Z(e){ +return!!e&&(e.endsWithParent||Z(e.starts))}const F=r,V=s,q=Symbol("nomatch") +;var J=(e=>{const t=Object.create(null),r=Object.create(null),s=[];let o=!0 +;const a="Could not find the language '{}', did you forget to load/include a language module?",l={ +disableAutodetect:!0,name:"Plain text",contains:[]};let g={ +ignoreUnescapedHTML:!1,noHighlightRe:/^(no-?highlight)$/i, +languageDetectRe:/\blang(?:uage)?-([\w-]+)\b/i,classPrefix:"hljs-", +cssSelector:"pre code",languages:null,__emitter:c};function d(e){ +return g.noHighlightRe.test(e)}function u(e,t,n,i){let r="",s="" +;"object"==typeof t?(r=e, +n=t.ignoreIllegals,s=t.language,i=void 0):(z("10.7.0","highlight(lang, code, ...args) has been deprecated."), +z("10.7.0","Please use highlight(code, options) instead.\nhttps://github.com/highlightjs/highlight.js/issues/2277"), +s=e,r=t),void 0===n&&(n=!0);const o={code:r,language:s};w("before:highlight",o) +;const a=o.result?o.result:h(o.language,o.code,n,i) +;return a.code=o.code,w("after:highlight",a),a}function h(e,n,r,s){ +const l=Object.create(null);function c(){if(!k.keywords)return void S.addText(M) +;let e=0;k.keywordPatternRe.lastIndex=0;let t=k.keywordPatternRe.exec(M),n="" +;for(;t;){n+=M.substring(e,t.index) +;const r=_.case_insensitive?t[0].toLowerCase():t[0],s=(i=r,k.keywords[i]);if(s){ +const[e,i]=s +;if(S.addText(n),n="",l[r]=(l[r]||0)+1,l[r]<=7&&(R+=i),e.startsWith("_"))n+=t[0];else{ +const n=_.classNameAliases[e]||e;S.addKeyword(t[0],n)}}else n+=t[0] +;e=k.keywordPatternRe.lastIndex,t=k.keywordPatternRe.exec(M)}var i +;n+=M.substr(e),S.addText(n)}function d(){null!=k.subLanguage?(()=>{ +if(""===M)return;let e=null;if("string"==typeof k.subLanguage){ +if(!t[k.subLanguage])return void S.addText(M) +;e=h(k.subLanguage,M,!0,N[k.subLanguage]),N[k.subLanguage]=e._top +}else e=f(M,k.subLanguage.length?k.subLanguage:null) +;k.relevance>0&&(R+=e.relevance),S.addSublanguage(e._emitter,e.language) +})():c(),M=""}function u(e,t){let n=1;for(;void 0!==t[n];){if(!e._emit[n]){n++ +;continue}const i=_.classNameAliases[e[n]]||e[n],r=t[n] +;i?S.addKeyword(r,i):(M=r,c(),M=""),n++}}function p(e,t){ +return e.scope&&"string"==typeof e.scope&&S.openNode(_.classNameAliases[e.scope]||e.scope), +e.beginScope&&(e.beginScope._wrap?(S.addKeyword(M,_.classNameAliases[e.beginScope._wrap]||e.beginScope._wrap), +M=""):e.beginScope._multi&&(u(e.beginScope,t),M="")),k=Object.create(e,{parent:{ +value:k}}),k}function b(e,t,n){let r=((e,t)=>{const n=e&&e.exec(t) +;return n&&0===n.index})(e.endRe,n);if(r){if(e["on:end"]){const n=new i(e) +;e["on:end"](t,n),n.isMatchIgnored&&(r=!1)}if(r){ +for(;e.endsParent&&e.parent;)e=e.parent;return e}} +if(e.endsWithParent)return b(e.parent,t,n)}function m(e){ +return 0===k.matcher.regexIndex?(M+=e[0],1):(I=!0,0)}function x(e){ +const t=e[0],i=n.substr(e.index),r=b(k,e,i);if(!r)return q;const s=k +;k.endScope&&k.endScope._wrap?(d(), +S.addKeyword(t,k.endScope._wrap)):k.endScope&&k.endScope._multi?(d(), +u(k.endScope,e)):s.skip?M+=t:(s.returnEnd||s.excludeEnd||(M+=t), +d(),s.excludeEnd&&(M=t));do{ +k.scope&&!k.isMultiClass&&S.closeNode(),k.skip||k.subLanguage||(R+=k.relevance), +k=k.parent}while(k!==r.parent) +;return r.starts&&p(r.starts,e),s.returnEnd?0:t.length}let y={};function w(t,s){ +const a=s&&s[0];if(M+=t,null==a)return d(),0 +;if("begin"===y.type&&"end"===s.type&&y.index===s.index&&""===a){ +if(M+=n.slice(s.index,s.index+1),!o){const t=Error(`0 width match regex (${e})`) +;throw t.languageName=e,t.badRule=y.rule,t}return 1} +if(y=s,"begin"===s.type)return(e=>{ +const t=e[0],n=e.rule,r=new i(n),s=[n.__beforeBegin,n["on:begin"]] +;for(const n of s)if(n&&(n(e,r),r.isMatchIgnored))return m(t) +;return n.skip?M+=t:(n.excludeBegin&&(M+=t), +d(),n.returnBegin||n.excludeBegin||(M=t)),p(n,e),n.returnBegin?0:t.length})(s) +;if("illegal"===s.type&&!r){ +const e=Error('Illegal lexeme "'+a+'" for mode "'+(k.scope||"")+'"') +;throw e.mode=k,e}if("end"===s.type){const e=x(s);if(e!==q)return e} +if("illegal"===s.type&&""===a)return 1 +;if(A>1e5&&A>3*s.index)throw Error("potential infinite loop, way more iterations than matches") +;return M+=a,a.length}const _=E(e) +;if(!_)throw $(a.replace("{}",e)),Error('Unknown language: "'+e+'"') +;const v=G(_);let O="",k=s||v;const N={},S=new g.__emitter(g);(()=>{const e=[] +;for(let t=k;t!==_;t=t.parent)t.scope&&e.unshift(t.scope) +;e.forEach((e=>S.openNode(e)))})();let M="",R=0,j=0,A=0,I=!1;try{ +for(k.matcher.considerAll();;){ +A++,I?I=!1:k.matcher.considerAll(),k.matcher.lastIndex=j +;const e=k.matcher.exec(n);if(!e)break;const t=w(n.substring(j,e.index),e) +;j=e.index+t}return w(n.substr(j)),S.closeAllNodes(),S.finalize(),O=S.toHTML(),{ +language:e,value:O,relevance:R,illegal:!1,_emitter:S,_top:k}}catch(t){ +if(t.message&&t.message.includes("Illegal"))return{language:e,value:F(n), +illegal:!0,relevance:0,_illegalBy:{message:t.message,index:j, +context:n.slice(j-100,j+100),mode:t.mode,resultSoFar:O},_emitter:S};if(o)return{ +language:e,value:F(n),illegal:!1,relevance:0,errorRaised:t,_emitter:S,_top:k} +;throw t}}function f(e,n){n=n||g.languages||Object.keys(t);const i=(e=>{ +const t={value:F(e),illegal:!1,relevance:0,_top:l,_emitter:new g.__emitter(g)} +;return t._emitter.addText(e),t})(e),r=n.filter(E).filter(y).map((t=>h(t,e,!1))) +;r.unshift(i);const s=r.sort(((e,t)=>{ +if(e.relevance!==t.relevance)return t.relevance-e.relevance +;if(e.language&&t.language){if(E(e.language).supersetOf===t.language)return 1 +;if(E(t.language).supersetOf===e.language)return-1}return 0})),[o,a]=s,c=o +;return c.secondBest=a,c}function p(e){let t=null;const n=(e=>{ +let t=e.className+" ";t+=e.parentNode?e.parentNode.className:"" +;const n=g.languageDetectRe.exec(t);if(n){const t=E(n[1]) +;return t||(U(a.replace("{}",n[1])), +U("Falling back to no-highlight mode for this block.",e)),t?n[1]:"no-highlight"} +return t.split(/\s+/).find((e=>d(e)||E(e)))})(e);if(d(n))return +;w("before:highlightElement",{el:e,language:n +}),!g.ignoreUnescapedHTML&&e.children.length>0&&(console.warn("One of your code blocks includes unescaped HTML. This is a potentially serious security risk."), +console.warn("https://github.com/highlightjs/highlight.js/issues/2886"), +console.warn(e)),t=e;const i=t.textContent,s=n?u(i,{language:n,ignoreIllegals:!0 +}):f(i);e.innerHTML=s.value,((e,t,n)=>{const i=t&&r[t]||n +;e.classList.add("hljs"),e.classList.add("language-"+i) +})(e,n,s.language),e.result={language:s.language,re:s.relevance, +relevance:s.relevance},s.secondBest&&(e.secondBest={ +language:s.secondBest.language,relevance:s.secondBest.relevance +}),w("after:highlightElement",{el:e,result:s,text:i})}let b=!1;function m(){ +"loading"!==document.readyState?document.querySelectorAll(g.cssSelector).forEach(p):b=!0 +}function E(e){return e=(e||"").toLowerCase(),t[e]||t[r[e]]} +function x(e,{languageName:t}){"string"==typeof e&&(e=[e]),e.forEach((e=>{ +r[e.toLowerCase()]=t}))}function y(e){const t=E(e) +;return t&&!t.disableAutodetect}function w(e,t){const n=e;s.forEach((e=>{ +e[n]&&e[n](t)}))} +"undefined"!=typeof window&&window.addEventListener&&window.addEventListener("DOMContentLoaded",(()=>{ +b&&m()}),!1),Object.assign(e,{highlight:u,highlightAuto:f,highlightAll:m, +highlightElement:p, +highlightBlock:e=>(z("10.7.0","highlightBlock will be removed entirely in v12.0"), +z("10.7.0","Please use highlightElement now."),p(e)),configure:e=>{g=V(g,e)}, +initHighlighting:()=>{ +m(),z("10.6.0","initHighlighting() deprecated. Use highlightAll() now.")}, +initHighlightingOnLoad:()=>{ +m(),z("10.6.0","initHighlightingOnLoad() deprecated. Use highlightAll() now.") +},registerLanguage:(n,i)=>{let r=null;try{r=i(e)}catch(e){ +if($("Language definition for '{}' could not be registered.".replace("{}",n)), +!o)throw e;$(e),r=l} +r.name||(r.name=n),t[n]=r,r.rawDefinition=i.bind(null,e),r.aliases&&x(r.aliases,{ +languageName:n})},unregisterLanguage:e=>{delete t[e] +;for(const t of Object.keys(r))r[t]===e&&delete r[t]}, +listLanguages:()=>Object.keys(t),getLanguage:E,registerAliases:x, +autoDetection:y,inherit:V,addPlugin:e=>{(e=>{ +e["before:highlightBlock"]&&!e["before:highlightElement"]&&(e["before:highlightElement"]=t=>{ +e["before:highlightBlock"](Object.assign({block:t.el},t)) +}),e["after:highlightBlock"]&&!e["after:highlightElement"]&&(e["after:highlightElement"]=t=>{ +e["after:highlightBlock"](Object.assign({block:t.el},t))})})(e),s.push(e)} +}),e.debugMode=()=>{o=!1},e.safeMode=()=>{o=!0},e.versionString="11.0.1" +;for(const e in M)"object"==typeof M[e]&&n(M[e]);return Object.assign(e,M),e +})({}),Y=Object.freeze({__proto__:null});const Q=J +;for(const e of Object.keys(Y)){const t=e.replace("grmr_","") +;Q.registerLanguage(t,Y[e])}return Q}() +;"object"==typeof exports&&"undefined"!=typeof module&&(module.exports=hljs);hljs.registerLanguage("xml",(()=>{"use strict";function e(e){ +return e?"string"==typeof e?e:e.source:null}function n(e){return a("(?=",e,")")} +function a(...n){return n.map((n=>e(n))).join("")}function s(...n){ +return"("+((e=>{const n=e[e.length-1] +;return"object"==typeof n&&n.constructor===Object?(e.splice(e.length-1,1),n):{} +})(n).capture?"":"?:")+n.map((n=>e(n))).join("|")+")"}return e=>{ +const t=a(/[A-Z_]/,a("(?:",/[A-Z0-9_.-]*:/,")?"),/[A-Z0-9_.-]*/),i={ +className:"symbol",begin:/&[a-z]+;|&#[0-9]+;|&#x[a-f0-9]+;/},c={begin:/\s/, +contains:[{className:"keyword",begin:/#?[a-z_][a-z1-9_-]+/,illegal:/\n/}] +},r=e.inherit(c,{begin:/\(/,end:/\)/}),l=e.inherit(e.APOS_STRING_MODE,{ +className:"string"}),g=e.inherit(e.QUOTE_STRING_MODE,{className:"string"}),m={ +endsWithParent:!0,illegal:/`]+/}]}]}]};return{ +name:"HTML, XML", +aliases:["html","xhtml","rss","atom","xjb","xsd","xsl","plist","wsf","svg"], +case_insensitive:!0,contains:[{className:"meta",begin://, +relevance:10,contains:[c,g,l,r,{begin:/\[/,end:/\]/,contains:[{className:"meta", +begin://,contains:[c,r,g,l]}]}]},e.COMMENT(//,{ +relevance:10}),{begin://,relevance:10},i,{ +className:"meta",begin:/<\?xml/,end:/\?>/,relevance:10},{className:"tag", +begin:/)/,end:/>/,keywords:{name:"style"},contains:[m],starts:{ +end:/<\/style>/,returnEnd:!0,subLanguage:["css","xml"]}},{className:"tag", +begin:/)/,end:/>/,keywords:{name:"script"},contains:[m],starts:{ +end:/<\/script>/,returnEnd:!0,subLanguage:["javascript","handlebars","xml"]}},{ +className:"tag",begin:/<>|<\/>/},{className:"tag", +begin:a(//,/>/,/\s/)))),end:/\/?>/,contains:[{className:"name", +begin:t,relevance:0,starts:m}]},{className:"tag",begin:a(/<\//,n(a(t,/>/))), +contains:[{className:"name",begin:t,relevance:0},{begin:/>/,relevance:0, +endsParent:!0}]}]}}})());hljs.registerLanguage("markdown",(()=>{"use strict";function n(...n){ +return n.map((n=>{return(e=n)?"string"==typeof e?e:e.source:null;var e +})).join("")}return e=>{const a={begin:/<\/?[A-Za-z_]/,end:">", +subLanguage:"xml",relevance:0},i={variants:[{begin:/\[.+?\]\[.*?\]/,relevance:0 +},{begin:/\[.+?\]\(((data|javascript|mailto):|(?:http|ftp)s?:\/\/).*?\)/, +relevance:2},{begin:n(/\[.+?\]\(/,/[A-Za-z][A-Za-z0-9+.-]*/,/:\/\/.*?\)/), +relevance:2},{begin:/\[.+?\]\([./?&#].*?\)/,relevance:1},{ +begin:/\[.+?\]\(.*?\)/,relevance:0}],returnBegin:!0,contains:[{ +className:"string",relevance:0,begin:"\\[",end:"\\]",excludeBegin:!0, +returnEnd:!0},{className:"link",relevance:0,begin:"\\]\\(",end:"\\)", +excludeBegin:!0,excludeEnd:!0},{className:"symbol",relevance:0,begin:"\\]\\[", +end:"\\]",excludeBegin:!0,excludeEnd:!0}]},s={className:"strong",contains:[], +variants:[{begin:/_{2}/,end:/_{2}/},{begin:/\*{2}/,end:/\*{2}/}]},c={ +className:"emphasis",contains:[],variants:[{begin:/\*(?!\*)/,end:/\*/},{ +begin:/_(?!_)/,end:/_/,relevance:0}]};s.contains.push(c),c.contains.push(s) +;let t=[a,i] +;return s.contains=s.contains.concat(t),c.contains=c.contains.concat(t), +t=t.concat(s,c),{name:"Markdown",aliases:["md","mkdown","mkd"],contains:[{ +className:"section",variants:[{begin:"^#{1,6}",end:"$",contains:t},{ +begin:"(?=^.+?\\n[=-]{2,}$)",contains:[{begin:"^[=-]*$"},{begin:"^",end:"\\n", +contains:t}]}]},a,{className:"bullet",begin:"^[ \t]*([*+-]|(\\d+\\.))(?=\\s+)", +end:"\\s+",excludeEnd:!0},s,c,{className:"quote",begin:"^>\\s+",contains:t, +end:"$"},{className:"code",variants:[{begin:"(`{3,})[^`](.|\\n)*?\\1`*[ ]*"},{ +begin:"(~{3,})[^~](.|\\n)*?\\1~*[ ]*"},{begin:"```",end:"```+[ ]*$"},{ +begin:"~~~",end:"~~~+[ ]*$"},{begin:"`.+?`"},{begin:"(?=^( {4}|\\t))", +contains:[{begin:"^( {4}|\\t)",end:"(\\n)$"}],relevance:0}]},{ +begin:"^[-\\*]{3,}",end:"$"},i,{begin:/^\[[^\n]+\]:/,returnBegin:!0,contains:[{ +className:"symbol",begin:/\[/,end:/\]/,excludeBegin:!0,excludeEnd:!0},{ +className:"link",begin:/:\s*/,end:/$/,excludeBegin:!0}]}]}}})());hljs.registerLanguage("css",(()=>{"use strict" +;const e=["a","abbr","address","article","aside","audio","b","blockquote","body","button","canvas","caption","cite","code","dd","del","details","dfn","div","dl","dt","em","fieldset","figcaption","figure","footer","form","h1","h2","h3","h4","h5","h6","header","hgroup","html","i","iframe","img","input","ins","kbd","label","legend","li","main","mark","menu","nav","object","ol","p","q","quote","samp","section","span","strong","summary","sup","table","tbody","td","textarea","tfoot","th","thead","time","tr","ul","var","video"],t=["any-hover","any-pointer","aspect-ratio","color","color-gamut","color-index","device-aspect-ratio","device-height","device-width","display-mode","forced-colors","grid","height","hover","inverted-colors","monochrome","orientation","overflow-block","overflow-inline","pointer","prefers-color-scheme","prefers-contrast","prefers-reduced-motion","prefers-reduced-transparency","resolution","scan","scripting","update","width","min-width","max-width","min-height","max-height"],i=["active","any-link","blank","checked","current","default","defined","dir","disabled","drop","empty","enabled","first","first-child","first-of-type","fullscreen","future","focus","focus-visible","focus-within","has","host","host-context","hover","indeterminate","in-range","invalid","is","lang","last-child","last-of-type","left","link","local-link","not","nth-child","nth-col","nth-last-child","nth-last-col","nth-last-of-type","nth-of-type","only-child","only-of-type","optional","out-of-range","past","placeholder-shown","read-only","read-write","required","right","root","scope","target","target-within","user-invalid","valid","visited","where"],o=["after","backdrop","before","cue","cue-region","first-letter","first-line","grammar-error","marker","part","placeholder","selection","slotted","spelling-error"],r=["align-content","align-items","align-self","animation","animation-delay","animation-direction","animation-duration","animation-fill-mode","animation-iteration-count","animation-name","animation-play-state","animation-timing-function","auto","backface-visibility","background","background-attachment","background-clip","background-color","background-image","background-origin","background-position","background-repeat","background-size","border","border-bottom","border-bottom-color","border-bottom-left-radius","border-bottom-right-radius","border-bottom-style","border-bottom-width","border-collapse","border-color","border-image","border-image-outset","border-image-repeat","border-image-slice","border-image-source","border-image-width","border-left","border-left-color","border-left-style","border-left-width","border-radius","border-right","border-right-color","border-right-style","border-right-width","border-spacing","border-style","border-top","border-top-color","border-top-left-radius","border-top-right-radius","border-top-style","border-top-width","border-width","bottom","box-decoration-break","box-shadow","box-sizing","break-after","break-before","break-inside","caption-side","clear","clip","clip-path","color","column-count","column-fill","column-gap","column-rule","column-rule-color","column-rule-style","column-rule-width","column-span","column-width","columns","content","counter-increment","counter-reset","cursor","direction","display","empty-cells","filter","flex","flex-basis","flex-direction","flex-flow","flex-grow","flex-shrink","flex-wrap","float","font","font-display","font-family","font-feature-settings","font-kerning","font-language-override","font-size","font-size-adjust","font-smoothing","font-stretch","font-style","font-variant","font-variant-ligatures","font-variation-settings","font-weight","height","hyphens","icon","image-orientation","image-rendering","image-resolution","ime-mode","inherit","initial","justify-content","left","letter-spacing","line-height","list-style","list-style-image","list-style-position","list-style-type","margin","margin-bottom","margin-left","margin-right","margin-top","marks","mask","max-height","max-width","min-height","min-width","nav-down","nav-index","nav-left","nav-right","nav-up","none","normal","object-fit","object-position","opacity","order","orphans","outline","outline-color","outline-offset","outline-style","outline-width","overflow","overflow-wrap","overflow-x","overflow-y","padding","padding-bottom","padding-left","padding-right","padding-top","page-break-after","page-break-before","page-break-inside","perspective","perspective-origin","pointer-events","position","quotes","resize","right","src","tab-size","table-layout","text-align","text-align-last","text-decoration","text-decoration-color","text-decoration-line","text-decoration-style","text-indent","text-overflow","text-rendering","text-shadow","text-transform","text-underline-position","top","transform","transform-origin","transform-style","transition","transition-delay","transition-duration","transition-property","transition-timing-function","unicode-bidi","vertical-align","visibility","white-space","widows","width","word-break","word-spacing","word-wrap","z-index"].reverse() +;return n=>{const a=(e=>({IMPORTANT:{scope:"meta",begin:"!important"},HEXCOLOR:{ +scope:"number",begin:"#([a-fA-F0-9]{6}|[a-fA-F0-9]{3})"}, +ATTRIBUTE_SELECTOR_MODE:{scope:"selector-attr",begin:/\[/,end:/\]/,illegal:"$", +contains:[e.APOS_STRING_MODE,e.QUOTE_STRING_MODE]},CSS_NUMBER_MODE:{ +scope:"number", +begin:e.NUMBER_RE+"(%|em|ex|ch|rem|vw|vh|vmin|vmax|cm|mm|in|pt|pc|px|deg|grad|rad|turn|s|ms|Hz|kHz|dpi|dpcm|dppx)?", +relevance:0}}))(n),l=[n.APOS_STRING_MODE,n.QUOTE_STRING_MODE];return{name:"CSS", +case_insensitive:!0,illegal:/[=|'\$]/,keywords:{keyframePosition:"from to"}, +classNameAliases:{keyframePosition:"selector-tag"}, +contains:[n.C_BLOCK_COMMENT_MODE,{begin:/-(webkit|moz|ms|o)-(?=[a-z])/ +},a.CSS_NUMBER_MODE,{className:"selector-id",begin:/#[A-Za-z0-9_-]+/,relevance:0 +},{className:"selector-class",begin:"\\.[a-zA-Z-][a-zA-Z0-9_-]*",relevance:0 +},a.ATTRIBUTE_SELECTOR_MODE,{className:"selector-pseudo",variants:[{ +begin:":("+i.join("|")+")"},{begin:"::("+o.join("|")+")"}]},{ +className:"attribute",begin:"\\b("+r.join("|")+")\\b"},{begin:":",end:"[;}]", +contains:[a.HEXCOLOR,a.IMPORTANT,a.CSS_NUMBER_MODE,...l,{ +begin:/(url|data-uri)\(/,end:/\)/,relevance:0,keywords:{built_in:"url data-uri" +},contains:[{className:"string",begin:/[^)]/,endsWithParent:!0,excludeEnd:!0}] +},{className:"built_in",begin:/[\w-]+(?=\()/}]},{ +begin:(s=/@/,((...e)=>e.map((e=>(e=>e?"string"==typeof e?e:e.source:null)(e))).join(""))("(?=",s,")")), +end:"[{;]",relevance:0,illegal:/:/,contains:[{className:"keyword", +begin:/@-?\w[\w]*(-\w+)*/},{begin:/\s/,endsWithParent:!0,excludeEnd:!0, +relevance:0,keywords:{$pattern:/[a-z-]+/,keyword:"and or not only", +attribute:t.join(" ")},contains:[{begin:/[a-z-]+(?=:)/,className:"attribute" +},...l,a.CSS_NUMBER_MODE]}]},{className:"selector-tag", +begin:"\\b("+e.join("|")+")\\b"}]};var s}})());hljs.registerLanguage("plaintext",(()=>{"use strict";return t=>({ +name:"Plain text",aliases:["text","txt"],disableAutodetect:!0})})());hljs.registerLanguage("bash",(()=>{"use strict";function e(...e){ +return e.map((e=>{return(s=e)?"string"==typeof s?s:s.source:null;var s +})).join("")}return s=>{const n={},t={begin:/\$\{/,end:/\}/,contains:["self",{ +begin:/:-/,contains:[n]}]};Object.assign(n,{className:"variable",variants:[{ +begin:e(/\$[\w\d#@][\w\d_]*/,"(?![\\w\\d])(?![$])")},t]});const a={ +className:"subst",begin:/\$\(/,end:/\)/,contains:[s.BACKSLASH_ESCAPE]},i={ +begin:/<<-?\s*(?=\w+)/,starts:{contains:[s.END_SAME_AS_BEGIN({begin:/(\w+)/, +end:/(\w+)/,className:"string"})]}},c={className:"string",begin:/"/,end:/"/, +contains:[s.BACKSLASH_ESCAPE,n,a]};a.contains.push(c);const o={begin:/\$\(\(/, +end:/\)\)/,contains:[{begin:/\d+#[0-9a-f]+/,className:"number"},s.NUMBER_MODE,n] +},r=s.SHEBANG({binary:"(fish|bash|zsh|sh|csh|ksh|tcsh|dash|scsh)",relevance:10 +}),l={className:"function",begin:/\w[\w\d_]*\s*\(\s*\)\s*\{/,returnBegin:!0, +contains:[s.inherit(s.TITLE_MODE,{begin:/\w[\w\d_]*/})],relevance:0};return{ +name:"Bash",aliases:["sh"],keywords:{$pattern:/\b[a-z._-]+\b/, +keyword:["if","then","else","elif","fi","for","while","in","do","done","case","esac","function"], +literal:["true","false"], +built_in:"break cd continue eval exec exit export getopts hash pwd readonly return shift test times trap umask unset alias bind builtin caller command declare echo enable help let local logout mapfile printf read readarray source type typeset ulimit unalias set shopt autoload bg bindkey bye cap chdir clone comparguments compcall compctl compdescribe compfiles compgroups compquote comptags comptry compvalues dirs disable disown echotc echoti emulate fc fg float functions getcap getln history integer jobs kill limit log noglob popd print pushd pushln rehash sched setcap setopt stat suspend ttyctl unfunction unhash unlimit unsetopt vared wait whence where which zcompile zformat zftp zle zmodload zparseopts zprof zpty zregexparse zsocket zstyle ztcp" +},contains:[r,s.SHEBANG(),l,o,s.HASH_COMMENT_MODE,i,c,{className:"",begin:/\\"/ +},{className:"string",begin:/'/,end:/'/},n]}}})());hljs.registerLanguage("kotlin",(()=>{"use strict" +;var e="\\.([0-9](_*[0-9])*)",n="[0-9a-fA-F](_*[0-9a-fA-F])*",a={ +className:"number",variants:[{ +begin:`(\\b([0-9](_*[0-9])*)((${e})|\\.)?|(${e}))[eE][+-]?([0-9](_*[0-9])*)[fFdD]?\\b` +},{begin:`\\b([0-9](_*[0-9])*)((${e})[fFdD]?\\b|\\.([fFdD]\\b)?)`},{ +begin:`(${e})[fFdD]?\\b`},{begin:"\\b([0-9](_*[0-9])*)[fFdD]\\b"},{ +begin:`\\b0[xX]((${n})\\.?|(${n})?\\.(${n}))[pP][+-]?([0-9](_*[0-9])*)[fFdD]?\\b` +},{begin:"\\b(0|[1-9](_*[0-9])*)[lL]?\\b"},{begin:`\\b0[xX](${n})[lL]?\\b`},{ +begin:"\\b0(_*[0-7])*[lL]?\\b"},{begin:"\\b0[bB][01](_*[01])*[lL]?\\b"}], +relevance:0};return e=>{const n={ +keyword:"abstract as val var vararg get set class object open private protected public noinline crossinline dynamic final enum if else do while for when throw try catch finally import package is in fun override companion reified inline lateinit init interface annotation data sealed internal infix operator out by constructor super tailrec where const inner suspend typealias external expect actual", +built_in:"Byte Short Char Int Long Boolean Float Double Void Unit Nothing", +literal:"true false null"},i={className:"symbol",begin:e.UNDERSCORE_IDENT_RE+"@" +},s={className:"subst",begin:/\$\{/,end:/\}/,contains:[e.C_NUMBER_MODE]},t={ +className:"variable",begin:"\\$"+e.UNDERSCORE_IDENT_RE},r={className:"string", +variants:[{begin:'"""',end:'"""(?=[^"])',contains:[t,s]},{begin:"'",end:"'", +illegal:/\n/,contains:[e.BACKSLASH_ESCAPE]},{begin:'"',end:'"',illegal:/\n/, +contains:[e.BACKSLASH_ESCAPE,t,s]}]};s.contains.push(r);const l={ +className:"meta", +begin:"@(?:file|property|field|get|set|receiver|param|setparam|delegate)\\s*:(?:\\s*"+e.UNDERSCORE_IDENT_RE+")?" +},c={className:"meta",begin:"@"+e.UNDERSCORE_IDENT_RE,contains:[{begin:/\(/, +end:/\)/,contains:[e.inherit(r,{className:"string"})]}] +},o=a,b=e.COMMENT("/\\*","\\*/",{contains:[e.C_BLOCK_COMMENT_MODE]}),E={ +variants:[{className:"type",begin:e.UNDERSCORE_IDENT_RE},{begin:/\(/,end:/\)/, +contains:[]}]},d=E;return d.variants[1].contains=[E],E.variants[1].contains=[d], +{name:"Kotlin",aliases:["kt","kts"],keywords:n, +contains:[e.COMMENT("/\\*\\*","\\*/",{relevance:0,contains:[{className:"doctag", +begin:"@[A-Za-z]+"}]}),e.C_LINE_COMMENT_MODE,b,{className:"keyword", +begin:/\b(break|continue|return|this)\b/,starts:{contains:[{className:"symbol", +begin:/@\w+/}]}},i,l,c,{className:"function",beginKeywords:"fun",end:"[(]|$", +returnBegin:!0,excludeEnd:!0,keywords:n,relevance:5,contains:[{ +begin:e.UNDERSCORE_IDENT_RE+"\\s*\\(",returnBegin:!0,relevance:0, +contains:[e.UNDERSCORE_TITLE_MODE]},{className:"type",begin://, +keywords:"reified",relevance:0},{className:"params",begin:/\(/,end:/\)/, +endsParent:!0,keywords:n,relevance:0,contains:[{begin:/:/,end:/[=,\/]/, +endsWithParent:!0,contains:[E,e.C_LINE_COMMENT_MODE,b],relevance:0 +},e.C_LINE_COMMENT_MODE,b,l,c,r,e.C_NUMBER_MODE]},b]},{className:"class", +beginKeywords:"class interface trait",end:/[:\{(]|$/,excludeEnd:!0, +illegal:"extends implements",contains:[{ +beginKeywords:"public protected internal private constructor" +},e.UNDERSCORE_TITLE_MODE,{className:"type",begin://,excludeBegin:!0, +excludeEnd:!0,relevance:0},{className:"type",begin:/[,:]\s*/,end:/[<\(,]|$/, +excludeBegin:!0,returnEnd:!0},l,c]},r,{className:"meta",begin:"^#!/usr/bin/env", +end:"$",illegal:"\n"},o]}}})());hljs.registerLanguage("diff",(()=>{"use strict";function e(...e){ +return"("+((e=>{const n=e[e.length-1] +;return"object"==typeof n&&n.constructor===Object?(e.splice(e.length-1,1),n):{} +})(e).capture?"":"?:")+e.map((e=>{return(n=e)?"string"==typeof n?n:n.source:null +;var n})).join("|")+")"}return n=>({name:"Diff",aliases:["patch"],contains:[{ +className:"meta",relevance:10, +match:e(/^@@ +-\d+,\d+ +\+\d+,\d+ +@@/,/^\*\*\* +\d+,\d+ +\*\*\*\*$/,/^--- +\d+,\d+ +----$/) +},{className:"comment",variants:[{ +begin:e(/Index: /,/^index/,/={3,}/,/^-{3}/,/^\*{3} /,/^\+{3}/,/^diff --git/), +end:/$/},{match:/^\*{15}$/}]},{className:"addition",begin:/^\+/,end:/$/},{ +className:"deletion",begin:/^-/,end:/$/},{className:"addition",begin:/^!/, +end:/$/}]})})());hljs.registerLanguage("shell",(()=>{"use strict";return s=>({ +name:"Shell Session",aliases:["console","shellsession"],contains:[{ +className:"meta",begin:/^\s{0,3}[/~\w\d[\]()@-]*[>%$#][ ]?/,starts:{ +end:/[^\\](?=\s*$)/,subLanguage:"bash"}}]})})());hljs.registerLanguage("json",(()=>{"use strict";return e=>({name:"JSON", +contains:[{className:"attr",begin:/"(\\.|[^\\"\r\n])*"(?=\s*:)/,relevance:1.01 +},{match:/[{}[\],:]/,className:"punctuation",relevance:0},e.QUOTE_STRING_MODE,{ +beginKeywords:"true false null" +},e.C_NUMBER_MODE,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE],illegal:"\\S"}) +})());hljs.registerLanguage("java",(()=>{"use strict" +;var e="\\.([0-9](_*[0-9])*)",a="[0-9a-fA-F](_*[0-9a-fA-F])*",n={ +className:"number",variants:[{ +begin:`(\\b([0-9](_*[0-9])*)((${e})|\\.)?|(${e}))[eE][+-]?([0-9](_*[0-9])*)[fFdD]?\\b` +},{begin:`\\b([0-9](_*[0-9])*)((${e})[fFdD]?\\b|\\.([fFdD]\\b)?)`},{ +begin:`(${e})[fFdD]?\\b`},{begin:"\\b([0-9](_*[0-9])*)[fFdD]\\b"},{ +begin:`\\b0[xX]((${a})\\.?|(${a})?\\.(${a}))[pP][+-]?([0-9](_*[0-9])*)[fFdD]?\\b` +},{begin:"\\b(0|[1-9](_*[0-9])*)[lL]?\\b"},{begin:`\\b0[xX](${a})[lL]?\\b`},{ +begin:"\\b0(_*[0-7])*[lL]?\\b"},{begin:"\\b0[bB][01](_*[01])*[lL]?\\b"}], +relevance:0};function s(e,a,n){return-1===n?"":e.replace(a,(t=>s(e,a,n-1)))} +return e=>{ +const a="[\xc0-\u02b8a-zA-Z_$][\xc0-\u02b8a-zA-Z_$0-9]*",t=a+s("(?:<"+a+"~~~(?:\\s*,\\s*"+a+"~~~)*>)?",/~~~/g,2),i={ +keyword:["synchronized","abstract","private","var","static","if","const ","for","while","strictfp","finally","protected","import","native","final","void","enum","else","break","transient","catch","instanceof","volatile","case","assert","package","default","public","try","switch","continue","throws","protected","public","private","module","requires","exports","do"], +literal:["false","true","null"], +type:["char","boolean","long","float","int","byte","short","double"], +built_in:["super","this"]},r={className:"meta",begin:"@"+a,contains:[{ +begin:/\(/,end:/\)/,contains:["self"]}]},l={className:"params",begin:/\(/, +end:/\)/,keywords:i,relevance:0,contains:[e.C_BLOCK_COMMENT_MODE],endsParent:!0} +;return{name:"Java",aliases:["jsp"],keywords:i,illegal:/<\/|#/, +contains:[e.COMMENT("/\\*\\*","\\*/",{relevance:0,contains:[{begin:/\w+@/, +relevance:0},{className:"doctag",begin:"@[A-Za-z]+"}]}),{ +begin:/import java\.[a-z]+\./,keywords:"import",relevance:2 +},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,{ +match:[/\b(?:class|interface|enum|extends|implements|new)/,/\s+/,a],className:{ +1:"keyword",3:"title.class"}},{begin:[a,/\s+/,a,/\s+/,/=/],className:{1:"type", +3:"variable",5:"operator"}},{begin:[/record/,/\s+/,a],className:{1:"keyword", +3:"title.class"},contains:[l,e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{ +beginKeywords:"new throw return else",relevance:0},{ +begin:["(?:"+t+"\\s+)",e.UNDERSCORE_IDENT_RE,/\s*(?=\()/],className:{ +2:"title.function"},keywords:i,contains:[{className:"params",begin:/\(/, +end:/\)/,keywords:i,relevance:0, +contains:[r,e.APOS_STRING_MODE,e.QUOTE_STRING_MODE,n,e.C_BLOCK_COMMENT_MODE] +},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},n,r]}}})());hljs.registerLanguage("objectivec",(()=>{"use strict";return e=>{ +const n=/[a-zA-Z@][a-zA-Z0-9_]*/,_={$pattern:n, +keyword:["@interface","@class","@protocol","@implementation"]};return{ +name:"Objective-C",aliases:["mm","objc","obj-c","obj-c++","objective-c++"], +keywords:{$pattern:n, +keyword:["int","float","while","char","export","sizeof","typedef","const","struct","for","union","unsigned","long","volatile","static","bool","mutable","if","do","return","goto","void","enum","else","break","extern","asm","case","short","default","double","register","explicit","signed","typename","this","switch","continue","wchar_t","inline","readonly","assign","readwrite","self","@synchronized","id","typeof","nonatomic","super","unichar","IBOutlet","IBAction","strong","weak","copy","in","out","inout","bycopy","byref","oneway","__strong","__weak","__block","__autoreleasing","@private","@protected","@public","@try","@property","@end","@throw","@catch","@finally","@autoreleasepool","@synthesize","@dynamic","@selector","@optional","@required","@encode","@package","@import","@defs","@compatibility_alias","__bridge","__bridge_transfer","__bridge_retained","__bridge_retain","__covariant","__contravariant","__kindof","_Nonnull","_Nullable","_Null_unspecified","__FUNCTION__","__PRETTY_FUNCTION__","__attribute__","getter","setter","retain","unsafe_unretained","nonnull","nullable","null_unspecified","null_resettable","class","instancetype","NS_DESIGNATED_INITIALIZER","NS_UNAVAILABLE","NS_REQUIRES_SUPER","NS_RETURNS_INNER_POINTER","NS_INLINE","NS_AVAILABLE","NS_DEPRECATED","NS_ENUM","NS_OPTIONS","NS_SWIFT_UNAVAILABLE","NS_ASSUME_NONNULL_BEGIN","NS_ASSUME_NONNULL_END","NS_REFINED_FOR_SWIFT","NS_SWIFT_NAME","NS_SWIFT_NOTHROW","NS_DURING","NS_HANDLER","NS_ENDHANDLER","NS_VALUERETURN","NS_VOIDRETURN"], +literal:["false","true","FALSE","TRUE","nil","YES","NO","NULL"], +built_in:["BOOL","dispatch_once_t","dispatch_queue_t","dispatch_sync","dispatch_async","dispatch_once"] +},illegal:"/,end:/$/,illegal:"\\n" +},e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE]},{className:"class", +begin:"("+_.keyword.join("|")+")\\b",end:/(\{|$)/,excludeEnd:!0,keywords:_, +contains:[e.UNDERSCORE_TITLE_MODE]},{begin:"\\."+e.UNDERSCORE_IDENT_RE, +relevance:0}]}}})());hljs.registerLanguage("dart",(()=>{"use strict";return e=>{const n={ +className:"subst",variants:[{begin:"\\$[A-Za-z0-9_]+"}]},a={className:"subst", +variants:[{begin:/\$\{/,end:/\}/}],keywords:"true false null this is new super" +},t={className:"string",variants:[{begin:"r'''",end:"'''"},{begin:'r"""', +end:'"""'},{begin:"r'",end:"'",illegal:"\\n"},{begin:'r"',end:'"',illegal:"\\n" +},{begin:"'''",end:"'''",contains:[e.BACKSLASH_ESCAPE,n,a]},{begin:'"""', +end:'"""',contains:[e.BACKSLASH_ESCAPE,n,a]},{begin:"'",end:"'",illegal:"\\n", +contains:[e.BACKSLASH_ESCAPE,n,a]},{begin:'"',end:'"',illegal:"\\n", +contains:[e.BACKSLASH_ESCAPE,n,a]}]};a.contains=[e.C_NUMBER_MODE,t] +;const i=["Comparable","DateTime","Duration","Function","Iterable","Iterator","List","Map","Match","Object","Pattern","RegExp","Set","Stopwatch","String","StringBuffer","StringSink","Symbol","Type","Uri","bool","double","int","num","Element","ElementList"],r=i.map((e=>e+"?")) +;return{name:"Dart",keywords:{ +keyword:["abstract","as","assert","async","await","break","case","catch","class","const","continue","covariant","default","deferred","do","dynamic","else","enum","export","extends","extension","external","factory","false","final","finally","for","Function","get","hide","if","implements","import","in","inferface","is","late","library","mixin","new","null","on","operator","part","required","rethrow","return","set","show","static","super","switch","sync","this","throw","true","try","typedef","var","void","while","with","yield"], +built_in:i.concat(r).concat(["Never","Null","dynamic","print","document","querySelector","querySelectorAll","window"]), +$pattern:/[A-Za-z][A-Za-z0-9_]*\??/}, +contains:[t,e.COMMENT(/\/\*\*(?!\/)/,/\*\//,{subLanguage:"markdown",relevance:0 +}),e.COMMENT(/\/{3,} ?/,/$/,{contains:[{subLanguage:"markdown",begin:".", +end:"$",relevance:0}]}),e.C_LINE_COMMENT_MODE,e.C_BLOCK_COMMENT_MODE,{ +className:"class",beginKeywords:"class interface",end:/\{/,excludeEnd:!0, +contains:[{beginKeywords:"extends implements"},e.UNDERSCORE_TITLE_MODE] +},e.C_NUMBER_MODE,{className:"meta",begin:"@[A-Za-z]+"},{begin:"=>"}]}}})());hljs.registerLanguage("ruby",(()=>{"use strict";function e(e){ +return n("(?=",e,")")}function n(...e){return e.map((e=>{ +return(n=e)?"string"==typeof n?n:n.source:null;var n})).join("")}return a=>{ +const i="([a-zA-Z_]\\w*[!?=]?|[-+~]@|<<|>>|=~|===?|<=>|[<>]=?|\\*\\*|[-/+%^&*~`|]|\\[\\]=?)",s={ +keyword:"and then defined module in return redo if BEGIN retry end for self when next until do begin unless END rescue else break undef not super class case require yield alias while ensure elsif or include attr_reader attr_writer attr_accessor __FILE__", +built_in:"proc lambda",literal:"true false nil"},r={className:"doctag", +begin:"@[A-Za-z]+"},b={begin:"#<",end:">"},c=[a.COMMENT("#","$",{contains:[r] +}),a.COMMENT("^=begin","^=end",{contains:[r],relevance:10 +}),a.COMMENT("^__END__","\\n$")],t={className:"subst",begin:/#\{/,end:/\}/, +keywords:s},g={className:"string",contains:[a.BACKSLASH_ESCAPE,t],variants:[{ +begin:/'/,end:/'/},{begin:/"/,end:/"/},{begin:/`/,end:/`/},{begin:/%[qQwWx]?\(/, +end:/\)/},{begin:/%[qQwWx]?\[/,end:/\]/},{begin:/%[qQwWx]?\{/,end:/\}/},{ +begin:/%[qQwWx]?/},{begin:/%[qQwWx]?\//,end:/\//},{begin:/%[qQwWx]?%/, +end:/%/},{begin:/%[qQwWx]?-/,end:/-/},{begin:/%[qQwWx]?\|/,end:/\|/},{ +begin:/\B\?(\\\d{1,3})/},{begin:/\B\?(\\x[A-Fa-f0-9]{1,2})/},{ +begin:/\B\?(\\u\{?[A-Fa-f0-9]{1,6}\}?)/},{ +begin:/\B\?(\\M-\\C-|\\M-\\c|\\c\\M-|\\M-|\\C-\\M-)[\x20-\x7e]/},{ +begin:/\B\?\\(c|C-)[\x20-\x7e]/},{begin:/\B\?\\?\S/},{ +begin:n(/<<[-~]?'?/,e(/(\w+)(?=\W)[^\n]*\n(?:[^\n]*\n)*?\s*\1\b/)), +contains:[a.END_SAME_AS_BEGIN({begin:/(\w+)/,end:/(\w+)/, +contains:[a.BACKSLASH_ESCAPE,t]})]}]},d="[0-9](_?[0-9])*",l={className:"number", +relevance:0,variants:[{ +begin:`\\b([1-9](_?[0-9])*|0)(\\.(${d}))?([eE][+-]?(${d})|r)?i?\\b`},{ +begin:"\\b0[dD][0-9](_?[0-9])*r?i?\\b"},{begin:"\\b0[bB][0-1](_?[0-1])*r?i?\\b" +},{begin:"\\b0[oO][0-7](_?[0-7])*r?i?\\b"},{ +begin:"\\b0[xX][0-9a-fA-F](_?[0-9a-fA-F])*r?i?\\b"},{ +begin:"\\b0(_?[0-7])+r?i?\\b"}]},o={className:"params",begin:"\\(",end:"\\)", +endsParent:!0,keywords:s},_=[g,{className:"class",beginKeywords:"class module", +end:"$|;",illegal:/=/,contains:[a.inherit(a.TITLE_MODE,{ +begin:"[A-Za-z_]\\w*(::\\w+)*(\\?|!)?"}),{begin:"<\\s*",contains:[{ +begin:"("+a.IDENT_RE+"::)?"+a.IDENT_RE,relevance:0}]}].concat(c)},{ +className:"function",begin:n(/def\s+/,e(i+"\\s*(\\(|;|$)")),relevance:0, +keywords:"def",end:"$|;",contains:[a.inherit(a.TITLE_MODE,{begin:i +}),o].concat(c)},{begin:a.IDENT_RE+"::"},{className:"symbol", +begin:a.UNDERSCORE_IDENT_RE+"(!|\\?)?:",relevance:0},{className:"symbol", +begin:":(?!\\s)",contains:[g,{begin:i}],relevance:0},l,{className:"variable", +begin:"(\\$\\W)|((\\$|@@?)(\\w+))(?=[^@$?])(?![A-Za-z])(?![@$?'])"},{ +className:"params",begin:/\|/,end:/\|/,relevance:0,keywords:s},{ +begin:"("+a.RE_STARTERS_RE+"|unless)\\s*",keywords:"unless",contains:[{ +className:"regexp",contains:[a.BACKSLASH_ESCAPE,t],illegal:/\n/,variants:[{ +begin:"/",end:"/[a-z]*"},{begin:/%r\{/,end:/\}[a-z]*/},{begin:"%r\\(", +end:"\\)[a-z]*"},{begin:"%r!",end:"![a-z]*"},{begin:"%r\\[",end:"\\][a-z]*"}] +}].concat(b,c),relevance:0}].concat(b,c);t.contains=_,o.contains=_;const E=[{ +begin:/^\s*=>/,starts:{end:"$",contains:_}},{className:"meta", +begin:"^([>?]>|[\\w#]+\\(\\w+\\):\\d+:\\d+>|(\\w+-)?\\d+\\.\\d+\\.\\d+(p\\d+)?[^\\d][^>]+>)(?=[ ])", +starts:{end:"$",contains:_}}];return c.unshift(b),{name:"Ruby", +aliases:["rb","gemspec","podspec","thor","irb"],keywords:s,illegal:/\/\*/, +contains:[a.SHEBANG({binary:"ruby"})].concat(E).concat(c).concat(_)}}})());hljs.registerLanguage("yaml",(()=>{"use strict";return e=>{ +const n="true false yes no null",a="[\\w#;/?:@&=+$,.~*'()[\\]]+",s={ +className:"string",relevance:0,variants:[{begin:/'/,end:/'/},{begin:/"/,end:/"/ +},{begin:/\S+/}],contains:[e.BACKSLASH_ESCAPE,{className:"template-variable", +variants:[{begin:/\{\{/,end:/\}\}/},{begin:/%\{/,end:/\}/}]}]},i=e.inherit(s,{ +variants:[{begin:/'/,end:/'/},{begin:/"/,end:/"/},{begin:/[^\s,{}[\]]+/}]}),l={ +end:",",endsWithParent:!0,excludeEnd:!0,keywords:n,relevance:0},t={begin:/\{/, +end:/\}/,contains:[l],illegal:"\\n",relevance:0},g={begin:"\\[",end:"\\]", +contains:[l],illegal:"\\n",relevance:0},b=[{className:"attr",variants:[{ +begin:"\\w[\\w :\\/.-]*:(?=[ \t]|$)"},{begin:'"\\w[\\w :\\/.-]*":(?=[ \t]|$)'},{ +begin:"'\\w[\\w :\\/.-]*':(?=[ \t]|$)"}]},{className:"meta",begin:"^---\\s*$", +relevance:10},{className:"string", +begin:"[\\|>]([1-9]?[+-])?[ ]*\\n( +)[^ ][^\\n]*\\n(\\2[^\\n]+\\n?)*"},{ +begin:"<%[%=-]?",end:"[%-]?%>",subLanguage:"ruby",excludeBegin:!0,excludeEnd:!0, +relevance:0},{className:"type",begin:"!\\w+!"+a},{className:"type", +begin:"!<"+a+">"},{className:"type",begin:"!"+a},{className:"type",begin:"!!"+a +},{className:"meta",begin:"&"+e.UNDERSCORE_IDENT_RE+"$"},{className:"meta", +begin:"\\*"+e.UNDERSCORE_IDENT_RE+"$"},{className:"bullet",begin:"-(?=[ ]|$)", +relevance:0},e.HASH_COMMENT_MODE,{beginKeywords:n,keywords:{literal:n}},{ +className:"number", +begin:"\\b[0-9]{4}(-[0-9][0-9]){0,2}([Tt \\t][0-9][0-9]?(:[0-9][0-9]){2})?(\\.[0-9]*)?([ \\t])*(Z|[-+][0-9][0-9]?(:[0-9][0-9])?)?\\b" +},{className:"number",begin:e.C_NUMBER_RE+"\\b",relevance:0},t,g,s],c=[...b] +;return c.pop(),c.push(i),l.contains=c,{name:"YAML",case_insensitive:!0, +aliases:["yml"],contains:b}}})());hljs.registerLanguage("javascript",(()=>{"use strict" +;const e="[A-Za-z$_][0-9A-Za-z$_]*",n=["as","in","of","if","for","while","finally","var","new","function","do","return","void","else","break","catch","instanceof","with","throw","case","default","try","switch","continue","typeof","delete","let","yield","const","class","debugger","async","await","static","import","from","export","extends"],a=["true","false","null","undefined","NaN","Infinity"],t=["Intl","DataView","Number","Math","Date","String","RegExp","Object","Function","Boolean","Error","Symbol","Set","Map","WeakSet","WeakMap","Proxy","Reflect","JSON","Promise","Float64Array","Int16Array","Int32Array","Int8Array","Uint16Array","Uint32Array","Float32Array","Array","Uint8Array","Uint8ClampedArray","ArrayBuffer","BigInt64Array","BigUint64Array","BigInt"],s=["EvalError","InternalError","RangeError","ReferenceError","SyntaxError","TypeError","URIError"],r=["setInterval","setTimeout","clearInterval","clearTimeout","require","exports","eval","isFinite","isNaN","parseFloat","parseInt","decodeURI","decodeURIComponent","encodeURI","encodeURIComponent","escape","unescape"],i=["arguments","this","super","console","window","document","localStorage","module","global"],c=[].concat(r,t,s) +;function o(e){return l("(?=",e,")")}function l(...e){return e.map((e=>{ +return(n=e)?"string"==typeof n?n:n.source:null;var n})).join("")}return b=>{ +const g=e,d={begin:/<[A-Za-z0-9\\._:-]+/,end:/\/[A-Za-z0-9\\._:-]+>|\/>/, +isTrulyOpeningTag:(e,n)=>{const a=e[0].length+e.index,t=e.input[a] +;"<"!==t?">"===t&&(((e,{after:n})=>{const a="",B={ +match:[/const|var|let/,/\s+/,g,/\s*/,/=\s*/,o(C)],className:{1:"keyword", +3:"title.function"},contains:[w]};return{name:"Javascript", +aliases:["js","jsx","mjs","cjs"],keywords:u,exports:{PARAMS_CONTAINS:S}, +illegal:/#(?![$_A-z])/,contains:[b.SHEBANG({label:"shebang",binary:"node", +relevance:5}),{label:"use_strict",className:"meta",relevance:10, +begin:/^\s*['"]use (strict|asm)['"]/ +},b.APOS_STRING_MODE,b.QUOTE_STRING_MODE,N,f,A,v,y,O,{className:"attr", +begin:g+o(":"),relevance:0},B,{ +begin:"("+b.RE_STARTERS_RE+"|\\b(case|return|throw)\\b)\\s*", +keywords:"return throw case",relevance:0,contains:[v,b.REGEXP_MODE,{ +className:"function",begin:C,returnBegin:!0,end:"\\s*=>",contains:[{ +className:"params",variants:[{begin:b.UNDERSCORE_IDENT_RE,relevance:0},{ +className:null,begin:/\(\s*\)/,skip:!0},{begin:/\(/,end:/\)/,excludeBegin:!0, +excludeEnd:!0,keywords:u,contains:S}]}]},{begin:/,/,relevance:0},{match:/\s+/, +relevance:0},{variants:[{begin:"<>",end:""},{begin:d.begin, +"on:begin":d.isTrulyOpeningTag,end:d.end}],subLanguage:"xml",contains:[{ +begin:d.begin,end:d.end,skip:!0,contains:["self"]}]}]},I,{ +beginKeywords:"while if switch catch for"},{ +begin:"\\b(?!function)"+b.UNDERSCORE_IDENT_RE+"\\([^()]*(\\([^()]*(\\([^()]*\\)[^()]*)*\\)[^()]*)*\\)\\s*\\{", +returnBegin:!0,label:"func.def",contains:[w,b.inherit(b.TITLE_MODE,{begin:g, +className:"title.function"})]},{match:/\.\.\./,relevance:0},M,{match:"\\$"+g, +relevance:0},{match:[/\bconstructor(?=\s*\()/],className:{1:"title.function"}, +contains:[w]},T,{relevance:0,match:/\b[A-Z][A-Z_]+\b/, +className:"variable.constant"},R,k,{match:/\$[(.]/}]}}})());hljs.registerLanguage("c",(()=>{"use strict";function e(e){ +return((...e)=>e.map((e=>(e=>e?"string"==typeof e?e:e.source:null)(e))).join(""))("(?:",e,")?") +}return n=>{const t=n.COMMENT("//","$",{contains:[{begin:/\\\n/}] +}),s="[a-zA-Z_]\\w*::",r="(decltype\\(auto\\)|"+e(s)+"[a-zA-Z_]\\w*"+e("<[^<>]+>")+")",a={ +className:"type",variants:[{begin:"\\b[a-z\\d_]*_t\\b"},{ +match:/\batomic_[a-z]{3,6}\b/}]},i={className:"string",variants:[{ +begin:'(u8?|U|L)?"',end:'"',illegal:"\\n",contains:[n.BACKSLASH_ESCAPE]},{ +begin:"(u8?|U|L)?'(\\\\(x[0-9A-Fa-f]{2}|u[0-9A-Fa-f]{4,8}|[0-7]{3}|\\S)|.)", +end:"'",illegal:"."},n.END_SAME_AS_BEGIN({ +begin:/(?:u8?|U|L)?R"([^()\\ ]{0,16})\(/,end:/\)([^()\\ ]{0,16})"/})]},l={ +className:"number",variants:[{begin:"\\b(0b[01']+)"},{ +begin:"(-?)\\b([\\d']+(\\.[\\d']*)?|\\.[\\d']+)((ll|LL|l|L)(u|U)?|(u|U)(ll|LL|l|L)?|f|F|b|B)" +},{ +begin:"(-?)(\\b0[xX][a-fA-F0-9']+|(\\b[\\d']+(\\.[\\d']*)?|\\.[\\d']+)([eE][-+]?[\\d']+)?)" +}],relevance:0},c={className:"meta",begin:/#\s*[a-z]+\b/,end:/$/,keywords:{ +keyword:"if else elif endif define undef warning error line pragma _Pragma ifdef ifndef include" +},contains:[{begin:/\\\n/,relevance:0},n.inherit(i,{className:"string"}),{ +className:"string",begin:/<.*?>/},t,n.C_BLOCK_COMMENT_MODE]},o={ +className:"title",begin:e(s)+n.IDENT_RE,relevance:0 +},d=e(s)+n.IDENT_RE+"\\s*\\(",u={ +keyword:["asm","auto","break","case","const","continue","default","do","else","enum","extern","for","fortran","goto","if","inline","register","restrict","return","sizeof","static","struct","switch","typedef","union","volatile","while","_Alignas","_Alignof","_Atomic","_Generic","_Noreturn","_Static_assert","_Thread_local","alignas","alignof","noreturn","static_assert","thread_local","_Pragma"], +type:["float","double","signed","unsigned","int","short","long","char","void","_Bool","_Complex","_Imaginary","_Decimal32","_Decimal64","_Decimal128","complex","bool","imaginary"], +literal:"true false NULL", +built_in:"std string wstring cin cout cerr clog stdin stdout stderr stringstream istringstream ostringstream auto_ptr deque list queue stack vector map set pair bitset multiset multimap unordered_set unordered_map unordered_multiset unordered_multimap priority_queue make_pair array shared_ptr abort terminate abs acos asin atan2 atan calloc ceil cosh cos exit exp fabs floor fmod fprintf fputs free frexp fscanf future isalnum isalpha iscntrl isdigit isgraph islower isprint ispunct isspace isupper isxdigit tolower toupper labs ldexp log10 log malloc realloc memchr memcmp memcpy memset modf pow printf putchar puts scanf sinh sin snprintf sprintf sqrt sscanf strcat strchr strcmp strcpy strcspn strlen strncat strncmp strncpy strpbrk strrchr strspn strstr tanh tan vfprintf vprintf vsprintf endl initializer_list unique_ptr" +},g=[c,a,t,n.C_BLOCK_COMMENT_MODE,l,i],m={variants:[{begin:/=/,end:/;/},{ +begin:/\(/,end:/\)/},{beginKeywords:"new throw return else",end:/;/}], +keywords:u,contains:g.concat([{begin:/\(/,end:/\)/,keywords:u, +contains:g.concat(["self"]),relevance:0}]),relevance:0},_={ +begin:"("+r+"[\\*&\\s]+)+"+d,returnBegin:!0,end:/[{;=]/,excludeEnd:!0, +keywords:u,illegal:/[^\w\s\*&:<>.]/,contains:[{begin:"decltype\\(auto\\)", +keywords:u,relevance:0},{begin:d,returnBegin:!0,contains:[n.inherit(o,{ +className:"title.function"})],relevance:0},{relevance:0,match:/,/},{ +className:"params",begin:/\(/,end:/\)/,keywords:u,relevance:0, +contains:[t,n.C_BLOCK_COMMENT_MODE,i,l,a,{begin:/\(/,end:/\)/,keywords:u, +relevance:0,contains:["self",t,n.C_BLOCK_COMMENT_MODE,i,l,a]}] +},a,t,n.C_BLOCK_COMMENT_MODE,c]};return{name:"C",aliases:["h"],keywords:u, +disableAutodetect:!0,illegal:"=]/,contains:[{ +beginKeywords:"final class struct"},n.TITLE_MODE]}]),exports:{preprocessor:c, +strings:i,keywords:u}}}})());hljs.registerLanguage("swift",(()=>{"use strict";function e(e){ +return e?"string"==typeof e?e:e.source:null}function a(e){return t("(?=",e,")")} +function t(...a){return a.map((a=>e(a))).join("")}function n(...a){ +return"("+((e=>{const a=e[e.length-1] +;return"object"==typeof a&&a.constructor===Object?(e.splice(e.length-1,1),a):{} +})(a).capture?"":"?:")+a.map((a=>e(a))).join("|")+")"} +const i=e=>t(/\b/,e,/\w$/.test(e)?/\b/:/\B/),s=["Protocol","Type"].map(i),u=["init","self"].map(i),c=["Any","Self"],r=["actor","associatedtype","async","await",/as\?/,/as!/,"as","break","case","catch","class","continue","convenience","default","defer","deinit","didSet","do","dynamic","else","enum","extension","fallthrough",/fileprivate\(set\)/,"fileprivate","final","for","func","get","guard","if","import","indirect","infix",/init\?/,/init!/,"inout",/internal\(set\)/,"internal","in","is","lazy","let","mutating","nonmutating",/open\(set\)/,"open","operator","optional","override","postfix","precedencegroup","prefix",/private\(set\)/,"private","protocol",/public\(set\)/,"public","repeat","required","rethrows","return","set","some","static","struct","subscript","super","switch","throws","throw",/try\?/,/try!/,"try","typealias",/unowned\(safe\)/,/unowned\(unsafe\)/,"unowned","var","weak","where","while","willSet"],o=["false","nil","true"],l=["assignment","associativity","higherThan","left","lowerThan","none","right"],m=["#colorLiteral","#column","#dsohandle","#else","#elseif","#endif","#error","#file","#fileID","#fileLiteral","#filePath","#function","#if","#imageLiteral","#keyPath","#line","#selector","#sourceLocation","#warn_unqualified_access","#warning"],p=["abs","all","any","assert","assertionFailure","debugPrint","dump","fatalError","getVaList","isKnownUniquelyReferenced","max","min","numericCast","pointwiseMax","pointwiseMin","precondition","preconditionFailure","print","readLine","repeatElement","sequence","stride","swap","swift_unboxFromSwiftValueWithType","transcode","type","unsafeBitCast","unsafeDowncast","withExtendedLifetime","withUnsafeMutablePointer","withUnsafePointer","withVaList","withoutActuallyEscaping","zip"],F=n(/[/=\-+!*%<>&|^~?]/,/[\u00A1-\u00A7]/,/[\u00A9\u00AB]/,/[\u00AC\u00AE]/,/[\u00B0\u00B1]/,/[\u00B6\u00BB\u00BF\u00D7\u00F7]/,/[\u2016-\u2017]/,/[\u2020-\u2027]/,/[\u2030-\u203E]/,/[\u2041-\u2053]/,/[\u2055-\u205E]/,/[\u2190-\u23FF]/,/[\u2500-\u2775]/,/[\u2794-\u2BFF]/,/[\u2E00-\u2E7F]/,/[\u3001-\u3003]/,/[\u3008-\u3020]/,/[\u3030]/),d=n(F,/[\u0300-\u036F]/,/[\u1DC0-\u1DFF]/,/[\u20D0-\u20FF]/,/[\uFE00-\uFE0F]/,/[\uFE20-\uFE2F]/),b=t(F,d,"*"),h=n(/[a-zA-Z_]/,/[\u00A8\u00AA\u00AD\u00AF\u00B2-\u00B5\u00B7-\u00BA]/,/[\u00BC-\u00BE\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u00FF]/,/[\u0100-\u02FF\u0370-\u167F\u1681-\u180D\u180F-\u1DBF]/,/[\u1E00-\u1FFF]/,/[\u200B-\u200D\u202A-\u202E\u203F-\u2040\u2054\u2060-\u206F]/,/[\u2070-\u20CF\u2100-\u218F\u2460-\u24FF\u2776-\u2793]/,/[\u2C00-\u2DFF\u2E80-\u2FFF]/,/[\u3004-\u3007\u3021-\u302F\u3031-\u303F\u3040-\uD7FF]/,/[\uF900-\uFD3D\uFD40-\uFDCF\uFDF0-\uFE1F\uFE30-\uFE44]/,/[\uFE47-\uFEFE\uFF00-\uFFFD]/),f=n(h,/\d/,/[\u0300-\u036F\u1DC0-\u1DFF\u20D0-\u20FF\uFE20-\uFE2F]/),w=t(h,f,"*"),y=t(/[A-Z]/,f,"*"),g=["autoclosure",t(/convention\(/,n("swift","block","c"),/\)/),"discardableResult","dynamicCallable","dynamicMemberLookup","escaping","frozen","GKInspectable","IBAction","IBDesignable","IBInspectable","IBOutlet","IBSegueAction","inlinable","main","nonobjc","NSApplicationMain","NSCopying","NSManaged",t(/objc\(/,w,/\)/),"objc","objcMembers","propertyWrapper","requires_stored_property_inits","resultBuilder","testable","UIApplicationMain","unknown","usableFromInline"],E=["iOS","iOSApplicationExtension","macOS","macOSApplicationExtension","macCatalyst","macCatalystApplicationExtension","watchOS","watchOSApplicationExtension","tvOS","tvOSApplicationExtension","swift"] +;return e=>{const F={match:/\s+/,relevance:0},h=e.COMMENT("/\\*","\\*/",{ +contains:["self"]}),v=[e.C_LINE_COMMENT_MODE,h],A={match:[/\./,n(...s,...u)], +className:{2:"keyword"}},N={match:t(/\./,n(...r)),relevance:0 +},C=r.filter((e=>"string"==typeof e)).concat(["_|0"]),D={variants:[{ +className:"keyword", +match:n(...r.filter((e=>"string"!=typeof e)).concat(c).map(i),...u)}]},k={ +$pattern:n(/\b\w+/,/#\w+/),keyword:C.concat(m),literal:o},B=[A,N,D],_=[{ +match:t(/\./,n(...p)),relevance:0},{className:"built_in", +match:t(/\b/,n(...p),/(?=\()/)}],S={match:/->/,relevance:0},M=[S,{ +className:"operator",relevance:0,variants:[{match:b},{match:`\\.(\\.|${d})+`}] +}],x="([0-9a-fA-F]_*)+",I={className:"number",relevance:0,variants:[{ +match:"\\b(([0-9]_*)+)(\\.(([0-9]_*)+))?([eE][+-]?(([0-9]_*)+))?\\b"},{ +match:`\\b0x(${x})(\\.(${x}))?([pP][+-]?(([0-9]_*)+))?\\b`},{ +match:/\b0o([0-7]_*)+\b/},{match:/\b0b([01]_*)+\b/}]},L=(e="")=>({ +className:"subst",variants:[{match:t(/\\/,e,/[0\\tnr"']/)},{ +match:t(/\\/,e,/u\{[0-9a-fA-F]{1,8}\}/)}]}),O=(e="")=>({className:"subst", +match:t(/\\/,e,/[\t ]*(?:[\r\n]|\r\n)/)}),T=(e="")=>({className:"subst", +label:"interpol",begin:t(/\\/,e,/\(/),end:/\)/}),$=(e="")=>({begin:t(e,/"""/), +end:t(/"""/,e),contains:[L(e),O(e),T(e)]}),j=(e="")=>({begin:t(e,/"/), +end:t(/"/,e),contains:[L(e),T(e)]}),P={className:"string", +variants:[$(),$("#"),$("##"),$("###"),j(),j("#"),j("##"),j("###")]},K={ +match:t(/`/,w,/`/)},z=[K,{className:"variable",match:/\$\d+/},{ +className:"variable",match:`\\$${f}+`}],q=[{match:/(@|#)available/, +className:"keyword",starts:{contains:[{begin:/\(/,end:/\)/,keywords:E, +contains:[...M,I,P]}]}},{className:"keyword",match:t(/@/,n(...g))},{ +className:"meta",match:t(/@/,w)}],U={match:a(/\b[A-Z]/),relevance:0,contains:[{ +className:"type", +match:t(/(AV|CA|CF|CG|CI|CL|CM|CN|CT|MK|MP|MTK|MTL|NS|SCN|SK|UI|WK|XC)/,f,"+") +},{className:"type",match:y,relevance:0},{match:/[?!]+/,relevance:0},{ +match:/\.\.\./,relevance:0},{match:t(/\s+&\s+/,a(y)),relevance:0}]},Z={ +begin://,keywords:k,contains:[...v,...B,...q,S,U]};U.contains.push(Z) +;const V={begin:/\(/,end:/\)/,relevance:0,keywords:k,contains:["self",{ +match:t(w,/\s*:/),keywords:"_|0",relevance:0 +},...v,...B,..._,...M,I,P,...z,...q,U]},W={begin://,contains:[...v,U] +},G={begin:/\(/,end:/\)/,keywords:k,contains:[{ +begin:n(a(t(w,/\s*:/)),a(t(w,/\s+/,w,/\s*:/))),end:/:/,relevance:0,contains:[{ +className:"keyword",match:/\b_\b/},{className:"params",match:w}] +},...v,...B,...M,I,P,...q,U,V],endsParent:!0,illegal:/["']/},R={ +match:[/func/,/\s+/,n(K.match,w,b)],className:{1:"keyword",3:"title.function"}, +contains:[W,G,F],illegal:[/\[/,/%/]},X={ +match:[/\b(?:subscript|init[?!]?)/,/\s*(?=[<(])/],className:{1:"keyword"}, +contains:[W,G,F],illegal:/\[|%/},H={match:[/operator/,/\s+/,b],className:{ +1:"keyword",3:"title"}},J={begin:[/precedencegroup/,/\s+/,y],className:{ +1:"keyword",3:"title"},contains:[U],keywords:[...l,...o],end:/}/} +;for(const e of P.variants){const a=e.contains.find((e=>"interpol"===e.label)) +;a.keywords=k;const t=[...B,..._,...M,I,P,...z];a.contains=[...t,{begin:/\(/, +end:/\)/,contains:["self",...t]}]}return{name:"Swift",keywords:k, +contains:[...v,R,X,{beginKeywords:"struct protocol class extension enum actor", +end:"\\{",excludeEnd:!0,keywords:k,contains:[e.inherit(e.TITLE_MODE,{ +className:"title.class",begin:/[A-Za-z$_][\u00C0-\u02B80-9A-Za-z$_]*/}),...B] +},H,J,{beginKeywords:"import",end:/$/,contains:[...v],relevance:0 +},...B,..._,...M,I,P,...z,...q,U,V]}}})()); \ No newline at end of file diff --git a/doc/api/static-assets/play_button.svg b/doc/api/static-assets/play_button.svg new file mode 100644 index 0000000..c39a2f4 --- /dev/null +++ b/doc/api/static-assets/play_button.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/doc/api/static-assets/readme.md b/doc/api/static-assets/readme.md new file mode 100644 index 0000000..357c11c --- /dev/null +++ b/doc/api/static-assets/readme.md @@ -0,0 +1,22 @@ +# highlight.js + +Generated from https://highlightjs.org/download/ on 2021-07-13 + +**Included languages:** + +* bash +* c +* css +* dart +* diff +* html, xml +* java +* javascript +* json +* kotlin +* markdown +* objective-c +* plaintext +* shell +* swift +* yaml diff --git a/doc/api/static-assets/styles.css b/doc/api/static-assets/styles.css new file mode 100644 index 0000000..b546a2e --- /dev/null +++ b/doc/api/static-assets/styles.css @@ -0,0 +1,1025 @@ +/* Palette generated by Material Palette - materialpalette.com/blue/cyan */ + +.dark-primary-color { background: #1976D2; } +.default-primary-color { background: #2196F3; } +.light-primary-color { background: #BBDEFB; } +.text-primary-color { color: #FFFFFF; } +.accent-color { background: #00BCD4; } +.primary-text-color { color: #212121; } +.secondary-text-color { color: #727272; } +.divider-color { border-color: #B6B6B6; } + +/* for layout */ +html, +body { + margin: 0; + padding: 0; + height: 100%; + width: 100%; + overflow: hidden; + box-sizing: border-box; +} + +*, *:before, *:after { + box-sizing: inherit; +} + +body { + display: flex; + flex-direction: column; + -webkit-overflow-scrolling: touch; +} + +header { + flex: 0 0 50px; + display: flex; + flex-direction: row; + align-items: center; + padding-left: 30px; +} + +header ol { + list-style: none; + margin: 0; + padding: 0; +} + +header ol li { + display: inline; +} + +header form { + display: flex; + flex: 1; + justify-content: flex-end; + padding-right: 30px; +} + +header#header-search-sidebar { + height: 50px; + margin-bottom: 25px; +} + +footer { + flex: 0 0 16px; + text-align: center; + padding: 16px 20px; +} + +main { + flex: 1; + display: flex; + flex-direction: row; + padding: 20px; + min-height: 0; +} + +.sidebar-offcanvas-left { + flex: 0 1 230px; + order: 1; + overflow-y: scroll; + padding: 20px 0 15px 30px; + margin: 5px 20px 0 0; +} + +::-webkit-scrollbar-button{ display: none; height: 13px; border-radius: 0px; background-color: #AAA; } +::-webkit-scrollbar-button:hover{ background-color: #AAA; } +::-webkit-scrollbar-thumb{ background-color: #CCC; } +::-webkit-scrollbar-thumb:hover{ background-color: #CCC; } +::-webkit-scrollbar{ width: 4px; } + +.main-content::-webkit-scrollbar{ width: 8px; } + +.main-content { + flex: 1; + order: 2; + overflow-y: scroll; + padding: 10px 20px 0 20px; +} + +.sidebar-offcanvas-right { + flex: 0 1 12em; + order: 3; + overflow-y: scroll; + padding: 20px 15px 15px 15px; + margin-top: 5px; + margin-right: 20px; +} +/* end for layout */ + +body { + -webkit-text-size-adjust: 100%; + overflow-x: hidden; + font-family: Roboto, sans-serif; + font-size: 16px; + line-height: 1.42857143; + color: #111111; + background-color: #fff; +} + +/* some of this is to reset bootstrap */ +nav.navbar { + background-color: inherit; + min-height: 50px; + border: 0; +} + +@media (max-width: 768px) { + .hidden-xs { + display: none !important; + } +} + +@media (min-width: 769px) { + .hidden-l { + display: none !important; + } +} + +nav.navbar .row { + padding-top: 8px; +} + +nav .container { + white-space: nowrap; +} + +header { + background-color: #eeeeee; + box-shadow: 0 3px 5px rgba(0,0,0,0.1); +} + +header.header-fixed nav.navbar-fixed-top { + box-shadow: 0 3px 5px rgba(0,0,0,0.1); +} + +header.container-fluid { + padding: 0; +} + +header .masthead { + padding-top: 64px; +} + +header .contents { + padding: 0; +} + +@media screen and (max-width:768px) { + header .contents { + padding-left: 15px; + padding-right: 15px; + } +} + +a { + text-decoration: none; +} + +.body { + margin-top: 90px; +} + +section { + margin-bottom: 36px; +} + +dl { + margin: 0; +} + +h1, +h2, +h3, +h4, +h5, +h6 { + font-family: Roboto, sans-serif; + font-weight: 400; + margin-top: 1.5em; + color: #111111; +} + +h1.title { + overflow: hidden; + text-overflow: ellipsis; +} + +h1 { + font-size: 37px; + margin-top: 0; + margin-bottom: 0.67em; +} + +h2 { + font-size: 28px; +} + +h5 { + font-size: 16px; +} + +.subtitle { + font-size: 17px; + min-height: 1.4em; +} + +.title-description .subtitle { + white-space: nowrap; + overflow-x: hidden; + text-overflow: ellipsis; +} + +p { + margin-bottom: 1em; + margin-top: 0; +} + +a { + color: #0175C2; +} + +a:hover { + color: #13B9FD; +} + +pre.prettyprint { + font-family: 'Roboto Mono', Menlo, monospace; + color: black; + border-radius: 0; + font-size: 15px; + word-wrap: normal; + line-height: 1.4; + border: 0; + margin: 16px 0 16px 0; + padding: 8px; +} + +pre code { + white-space: pre; + word-wrap: initial; + font-size: 100% +} + +.fixed { + white-space: pre; +} + +pre { + border: 1px solid #ddd; + background-color: #eee; + font-size: 14px; +} + +code { + font-family: 'Roboto Mono', Menlo, monospace; + /* overriding bootstrap */ + color: inherit; + padding: 0.2em 0.4em; + font-size: 85%; + background-color: rgba(27,31,35,0.05); + border-radius: 3px; +} + +@media(max-width: 768px) { + nav .container { + width: 100% + } + + h1 { + font-size: 24px; + } + + pre { + margin: 16px 0; + } +} + +@media (min-width: 768px) { + ul.subnav li { + font-size: 17px; + } +} + +header h1 { + font-weight: 400; + margin-bottom: 16px; +} + +header a, +header p, +header li { + color: #111111; +} + +header a:hover { + color: #0175C2; +} + +header h1 .kind { + color: #555; +} + +dt { + font-weight: normal; +} + +dd { + color: #212121; + margin-bottom: 1em; + margin-left: 0; +} + +dd.callable, dd.constant, dd.property { + margin-bottom: 24px; +} + +dd p { + overflow-x: hidden; + text-overflow: ellipsis; + margin-bottom: 0; +} + +/* Enum values do not have their own pages; their full docs are presented on the + * enum class's page. */ +dt.constant + dd p { + margin-bottom: 1em; +} + +/* indents wrapped lines */ +section.summary dt { + margin-left: 24px; + text-indent: -24px; +} + +.dl-horizontal dd { + margin-left: initial; +} + +dl.dl-horizontal dt { + font-style: normal; + text-align: left; + color: #727272; + margin-right: 20px; + width: initial; +} + +dt .name { + font-weight: 500; +} + +dl dt.callable .name { + float: none; + width: auto; +} + +.type-parameter { + white-space: nowrap; +} + +.multi-line-signature .type-parameter .parameter { + margin-left: 0px; + display: unset; +} + +.parameter-list { + display: table-cell; + margin-left: 10px; + list-style-type: none; + padding-inline-start: unset; +} + +.signature { + color: #727272; +} + +.signature a { + /* 50% mix of default-primary-color and primary-text-color. */ + color: #4674a2; +} + +.optional { + font-style: italic; +} + +.undocumented { + font-style: italic; +} + +.is-const { + font-style: italic; +} + +.deprecated { + text-decoration: line-through; +} + +.category.linked { + font-weight: bold; + opacity: 1; +} + +/* Colors for category based on categoryOrder in dartdoc_options.config. */ +.category.cp-0 { + background-color: #54b7c4 +} + +.category.cp-1 { + background-color: #54c47f +} + +.category.cp-2 { + background-color: #c4c254 +} + +.category.cp-3 { + background-color: #c49f54 +} + +.category.cp-4 { + background-color: #c45465 +} + +.category.cp-5 { + background-color: #c454c4 +} + +.category a { + color: white; +} + +.category { + padding: 2px 4px; + font-size: 12px; + border-radius: 4px; + background-color: #999; + text-transform: uppercase; + color: white; + opacity: .5; +} + +h1 .category { + vertical-align: middle; +} + +.feature { + display: inline-block; + background: white; + border: 1px solid #0175c2; + border-radius: 20px; + color: #0175c2; + + font-size: 12px; + padding: 1px 6px; + margin: 0 8px 0 0; +} + +a.feature:hover { + border-color: #13B9FD; +} + +h1 .feature { + vertical-align: middle; +} + +.source-link { + padding: 18px 4px; + vertical-align: middle; +} + +.source-link .material-icons { + font-size: 18px; +} + +@media (max-width: 768px) { + .source-link { + padding: 7px 2px; + font-size: 10px; + } +} + +#external-links { + float: right; +} + +.btn-group { + position: relative; + display: inline-flex; + vertical-align: middle; +} + +p.firstline { + font-weight: bold; +} + +footer { + color: #fff; + background-color: #111111; + width: 100%; +} + +footer p { + margin: 0; +} + +footer .no-break { + white-space: nowrap; +} + +footer .container, +footer .container-fluid { + padding-left: 0; + padding-right: 0; +} + +footer a, footer a:hover { + color: #fff; +} + +.markdown.desc { + max-width: 700px; +} + +.markdown h1 { + font-size: 24px; + margin-bottom: 8px; +} + +.markdown h2 { + font-size: 20px; + margin-top: 24px; + margin-bottom: 8px; +} + +.markdown h3 { + font-size: 18px; + margin-bottom: 8px; +} + +.markdown h4 { + font-size: 16px; + margin-bottom: 0; +} + +.markdown li p { + margin: 0; +} + +table { + margin-bottom: 1em; +} + +table, +th, +td { + border: 1px solid lightgrey; + border-collapse: collapse; +} + +th, +td { + padding: 8px; +} + +.gt-separated { + list-style: none; + padding: 0; + margin: 0; +} + +.gt-separated li { + display: inline-block; +} + +.gt-separated li:before { + background-image: url("data:image/svg+xml;utf8,"); + background-position: center; + content: "\00a0"; + margin: 0 6px 0 4px; + padding: 0 3px 0 0; +} + +.gt-separated.dark li:before { + background-image: url("data:image/svg+xml;utf8,"); +} + +.gt-separated li:first-child:before { + background-image: none; + content: ""; + margin: 0; + padding: 0; +} + +/* The slug line under a declaration for things like "const", "read-only", etc. */ +.features { + font-style: italic; + color: #727272; +} + +.multi-line-signature { + font-size: 17px; + color: #727272; +} + +.multi-line-signature .parameter { + margin-left: 24px; + display: block; +} + +.breadcrumbs { + padding: 0; + margin: 8px 0 8px 0; + white-space: nowrap; + line-height: 1; +} + +@media screen and (min-width: 768px) { + nav ol.breadcrumbs { + float: left; + } +} + +@media screen and (max-width: 768px) { + .breadcrumbs { + margin: 0 0 24px 0; + overflow-x: hidden; + } +} + +.self-crumb { + color: #555; +} + +.self-name { + color: #555; + display: none; +} + +.annotation-list { + list-style: none; + padding: 0; + display: inline; +} + +.comma-separated { + list-style: none; + padding: 0; + display: inline; +} + +.comma-separated li { + display: inline; +} + +.comma-separated li:after { + content: ", "; +} + +.comma-separated li:last-child:after { + content: ""; +} + +.end-with-period li:last-child:after { + content: "."; +} + +.container > section:first-child { + border: 0; +} + +.constructor-modifier { + font-style: italic; +} + +section.multi-line-signature div.parameters { + margin-left: 24px; +} + +/* subnav styles */ + +ul.subnav { + overflow: auto; + white-space: nowrap; + padding-left: 0; + min-height: 25px; +} + +ul.subnav::-webkit-scrollbar { + display: none; +} + +ul.subnav li { + display: inline-block; + text-transform: uppercase; +} + +ul.subnav li a { + color: #111; +} + +ul.subnav li { + margin-right: 24px; +} + +ul.subnav li:last-of-type { + margin-right: 0; +} + +@media(max-width: 768px) { + ul.subnav li { + margin-right: 16px; + } +} + +/* sidebar styles */ + +.sidebar ol { + list-style: none; + line-height: 22px; + margin-top: 0; + margin-bottom: 0; + padding: 0 0 15px 0; +} + +.sidebar h5 a, +.sidebar h5 a:hover { + color: #727272; +} + +.sidebar h5, +.sidebar ol li { + text-overflow: ellipsis; + overflow: hidden; + padding: 3px 0 3px 3px; +} + +.sidebar h5 { + color: #727272; + font-size: 18px; + margin: 0 0 22px 0; + padding-top: 0; +} + +.sidebar ol li.section-title { + font-size: 18px; + font-weight: normal; + text-transform: uppercase; + padding-top: 25px; +} + +.sidebar ol li.section-subtitle a { + color: inherit; +} + +.sidebar ol li.section-subtitle { + font-weight: 400; + text-transform: uppercase; +} + +.sidebar ol li.section-subitem { + margin-left: 12px; +} + +.sidebar ol li:first-child { + padding-top: 3px; + margin-top: 0; +} + +button { + padding: 0; +} + +#sidenav-left-toggle { + display: none; + vertical-align: text-bottom; + padding: 0; +} + +/* left-nav disappears, and can transition in from the left */ +@media screen and (max-width:768px) { + #sidenav-left-toggle { + display: inline; + background: no-repeat url("data:image/svg+xml;utf8,"); + background-position: center; + width: 24px; + height: 24px; + border: none; + margin-right: 24px; + } + + #overlay-under-drawer.active { + opacity: 0.4; + height: 100%; + z-index: 1999; + position: fixed; + top: 0; + left: 0; + right: 0; + bottom: 0; + background-color: black; + display: block; + } + + .sidebar-offcanvas-left { + left: -100%; + position: fixed; + -webkit-transition:all .25s ease-out; + -o-transition:all .25s ease-out; + transition:all .25s ease-out; + z-index: 2000; + top: 0; + width: 280px; /* works all the way down to an iphone 4 */ + height: 90%; + background-color: white; + overflow-y: scroll; /* TODO: how to hide scroll bars? */ + padding: 10px; + margin: 10px 10px; + box-shadow: 5px 5px 5px 5px #444444; + } + + ol#sidebar-nav { + font-size: 18px; + white-space: pre-line; + } + + .sidebar-offcanvas-left.active { + left: 0; /* this animates our drawer into the page */ + } + + .self-name { + display: inline-block; + } +} + +.sidebar-offcanvas-left h5 { + margin-bottom: 10px; +} + +.sidebar-offcanvas-left h5:last-of-type { + border: 0; + margin-bottom: 25px; +} + +/* the right nav disappears out of view when the window shrinks */ +@media screen and (max-width: 992px) { + .sidebar-offcanvas-right { + display: none; + } +} + +#overlay-under-drawer { + display: none; +} + +/* find-as-you-type search box */ + +/* override bootstrap defaults */ +.form-control { + border-radius: 0; + border: 0; +} + +@media screen and (max-width: 768px) { + form.search { + display: none; + } +} + +.typeahead, +.tt-query, +.tt-hint { + width: 200px; + height: 20px; + padding: 2px 7px 1px 7px; + line-height: 20px; + outline: none; +} + +.typeahead { + background-color: #fff; + border-radius: 2px; +} + +.tt-wrapper { + position: relative; + display: inline-block; +} + +.tt-input { + position: relative; + vertical-align: top; + background-color: transparent; +} + +.tt-query { + -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); + -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); + box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); +} + +.tt-hint { + position: absolute; + top: 0; + left: 0; + box-shadow: none; + background: none 0 0 / auto repeat scroll padding-box border-box rgb(255, 255, 255); + border-color: transparent; + color: #999; + border-width: 0; +} + +.navbar-right .tt-menu { + right:0; + left: inherit !important; + width: 422px; + max-height: 250px; + overflow-y: scroll; +} + +.tt-menu { + position: absolute; + top: 100%; + left: 0; + z-index: 100; + font-size: 14px; + margin: 0; + padding: 8px 0; + background-color: #fff; + border: 1px solid #ccc; + border: 1px solid rgba(0, 0, 0, 0.2); + -webkit-box-shadow: 0 5px 10px rgba(0,0,0,.2); + -moz-box-shadow: 0 5px 10px rgba(0,0,0,.2); + box-shadow: 0 5px 10px rgba(0,0,0,.2); +} + +.tt-suggestion { + padding: 3px 20px; + color: #212121; +} + +.tt-suggestion:hover { + cursor: pointer; + color: #fff; + background-color: #0097cf; +} + +.tt-suggestion:hover .search-from-lib { + color: #ddd; +} + +.tt-suggestion.tt-cursor { + color: #fff; + background-color: #0097cf; +} + +.tt-suggestion.tt-cursor .search-from-lib { + color: #ddd; +} + +.tt-suggestion p { + margin: 0; +} + +.search-from-lib { + font-style: italic; + color: gray; +} + +.search-body { + border: 1px solid #7f7f7f; + max-width: 400px; + box-shadow: 3px 3px 5px rgba(0,0,0,0.1); +} + +section#setter { + border-top: 1px solid #ddd; + padding-top: 36px; +} + +li.inherited a { + opacity: 0.65; + font-style: italic; +} + +#instance-methods dt.inherited .name, +#instance-properties dt.inherited .name, +#operators dt.inherited .name { + font-weight: 300; + font-style: italic; +} + +#instance-methods dt.inherited .signature, +#instance-properties dt.inherited .signature, +#operators dt.inherited .signature { + font-weight: 300; +} + +@media print { + .subnav, .sidebar { + display:none; + } + + a[href]:after { + content:"" !important; + } +} diff --git a/ios/Podfile.lock b/ios/Podfile.lock new file mode 100644 index 0000000..f62f4c9 --- /dev/null +++ b/ios/Podfile.lock @@ -0,0 +1,47 @@ +PODS: + - connectivity_plus (0.0.1): + - Flutter + - ReachabilitySwift + - Flutter (1.0.0) + - FMDB (2.7.5): + - FMDB/standard (= 2.7.5) + - FMDB/standard (2.7.5) + - path_provider_ios (0.0.1): + - Flutter + - ReachabilitySwift (5.0.0) + - sqflite (0.0.2): + - Flutter + - FMDB (>= 2.7.5) + +DEPENDENCIES: + - connectivity_plus (from `.symlinks/plugins/connectivity_plus/ios`) + - Flutter (from `Flutter`) + - path_provider_ios (from `.symlinks/plugins/path_provider_ios/ios`) + - sqflite (from `.symlinks/plugins/sqflite/ios`) + +SPEC REPOS: + trunk: + - FMDB + - ReachabilitySwift + +EXTERNAL SOURCES: + connectivity_plus: + :path: ".symlinks/plugins/connectivity_plus/ios" + Flutter: + :path: Flutter + path_provider_ios: + :path: ".symlinks/plugins/path_provider_ios/ios" + sqflite: + :path: ".symlinks/plugins/sqflite/ios" + +SPEC CHECKSUMS: + connectivity_plus: 413a8857dd5d9f1c399a39130850d02fe0feaf7e + Flutter: f04841e97a9d0b0a8025694d0796dd46242b2854 + FMDB: 2ce00b547f966261cd18927a3ddb07cb6f3db82a + path_provider_ios: 14f3d2fd28c4fdb42f44e0f751d12861c43cee02 + ReachabilitySwift: 985039c6f7b23a1da463388634119492ff86c825 + sqflite: 6d358c025f5b867b29ed92fc697fd34924e11904 + +PODFILE CHECKSUM: ef19549a9bc3046e7bb7d2fab4d021637c0c58a3 + +COCOAPODS: 1.11.3 diff --git a/ios/Runner.xcodeproj/project.pbxproj b/ios/Runner.xcodeproj/project.pbxproj index de71b4b..f369be8 100644 --- a/ios/Runner.xcodeproj/project.pbxproj +++ b/ios/Runner.xcodeproj/project.pbxproj @@ -13,6 +13,7 @@ 97C146FC1CF9000F007C117D /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FA1CF9000F007C117D /* Main.storyboard */; }; 97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FD1CF9000F007C117D /* Assets.xcassets */; }; 97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */; }; + F3B6E5322D34DFB7F0900D2C /* Pods_Runner.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8877789AA68B0B9AC02873D4 /* Pods_Runner.framework */; }; /* End PBXBuildFile section */ /* Begin PBXCopyFilesBuildPhase section */ @@ -31,10 +32,12 @@ /* Begin PBXFileReference section */ 1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GeneratedPluginRegistrant.h; sourceTree = ""; }; 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GeneratedPluginRegistrant.m; sourceTree = ""; }; + 31D369D6536AE22234EBBCEE /* Pods-Runner.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.debug.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig"; sourceTree = ""; }; 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = AppFrameworkInfo.plist; path = Flutter/AppFrameworkInfo.plist; sourceTree = ""; }; 74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "Runner-Bridging-Header.h"; sourceTree = ""; }; 74858FAE1ED2DC5600515810 /* AppDelegate.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; 7AFA3C8E1D35360C0083082E /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = Release.xcconfig; path = Flutter/Release.xcconfig; sourceTree = ""; }; + 8877789AA68B0B9AC02873D4 /* Pods_Runner.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Runner.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 9740EEB21CF90195004384FC /* Debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Debug.xcconfig; path = Flutter/Debug.xcconfig; sourceTree = ""; }; 9740EEB31CF90195004384FC /* Generated.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Generated.xcconfig; path = Flutter/Generated.xcconfig; sourceTree = ""; }; 97C146EE1CF9000F007C117D /* Runner.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Runner.app; sourceTree = BUILT_PRODUCTS_DIR; }; @@ -42,6 +45,8 @@ 97C146FD1CF9000F007C117D /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; 97C147001CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = ""; }; 97C147021CF9000F007C117D /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + 993B7C33CB84E78F8F3F9003 /* Pods-Runner.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.release.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig"; sourceTree = ""; }; + C14FA994AB2D7B2CFB3A2FAB /* Pods-Runner.profile.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.profile.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.profile.xcconfig"; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -49,12 +54,21 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( + F3B6E5322D34DFB7F0900D2C /* Pods_Runner.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXFrameworksBuildPhase section */ /* Begin PBXGroup section */ + 0423E92A6032F811BEEC1A93 /* Frameworks */ = { + isa = PBXGroup; + children = ( + 8877789AA68B0B9AC02873D4 /* Pods_Runner.framework */, + ); + name = Frameworks; + sourceTree = ""; + }; 9740EEB11CF90186004384FC /* Flutter */ = { isa = PBXGroup; children = ( @@ -72,6 +86,8 @@ 9740EEB11CF90186004384FC /* Flutter */, 97C146F01CF9000F007C117D /* Runner */, 97C146EF1CF9000F007C117D /* Products */, + B9DABAAE9B2271B584AB5E72 /* Pods */, + 0423E92A6032F811BEEC1A93 /* Frameworks */, ); sourceTree = ""; }; @@ -98,6 +114,17 @@ path = Runner; sourceTree = ""; }; + B9DABAAE9B2271B584AB5E72 /* Pods */ = { + isa = PBXGroup; + children = ( + 31D369D6536AE22234EBBCEE /* Pods-Runner.debug.xcconfig */, + 993B7C33CB84E78F8F3F9003 /* Pods-Runner.release.xcconfig */, + C14FA994AB2D7B2CFB3A2FAB /* Pods-Runner.profile.xcconfig */, + ); + name = Pods; + path = Pods; + sourceTree = ""; + }; /* End PBXGroup section */ /* Begin PBXNativeTarget section */ @@ -105,12 +132,14 @@ isa = PBXNativeTarget; buildConfigurationList = 97C147051CF9000F007C117D /* Build configuration list for PBXNativeTarget "Runner" */; buildPhases = ( + FBEFF4CC4C2964FEDDA5FB9B /* [CP] Check Pods Manifest.lock */, 9740EEB61CF901F6004384FC /* Run Script */, 97C146EA1CF9000F007C117D /* Sources */, 97C146EB1CF9000F007C117D /* Frameworks */, 97C146EC1CF9000F007C117D /* Resources */, 9705A1C41CF9048500538489 /* Embed Frameworks */, 3B06AD1E1E4923F5004D2608 /* Thin Binary */, + 3DB98463E6663D7582AF8D05 /* [CP] Embed Pods Frameworks */, ); buildRules = ( ); @@ -183,6 +212,23 @@ shellPath = /bin/sh; shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" embed_and_thin"; }; + 3DB98463E6663D7582AF8D05 /* [CP] Embed Pods Frameworks */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks-${CONFIGURATION}-input-files.xcfilelist", + ); + name = "[CP] Embed Pods Frameworks"; + outputFileListPaths = ( + "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks-${CONFIGURATION}-output-files.xcfilelist", + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks.sh\"\n"; + showEnvVarsInLog = 0; + }; 9740EEB61CF901F6004384FC /* Run Script */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; @@ -197,6 +243,28 @@ shellPath = /bin/sh; shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" build"; }; + FBEFF4CC4C2964FEDDA5FB9B /* [CP] Check Pods Manifest.lock */ = { + isa = PBXShellScriptBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + inputFileListPaths = ( + ); + inputPaths = ( + "${PODS_PODFILE_DIR_PATH}/Podfile.lock", + "${PODS_ROOT}/Manifest.lock", + ); + name = "[CP] Check Pods Manifest.lock"; + outputFileListPaths = ( + ); + outputPaths = ( + "$(DERIVED_FILE_DIR)/Pods-Runner-checkManifestLockResult.txt", + ); + runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; + showEnvVarsInLog = 0; + }; /* End PBXShellScriptBuildPhase section */ /* Begin PBXSourcesBuildPhase section */ diff --git a/ios/Runner.xcworkspace/contents.xcworkspacedata b/ios/Runner.xcworkspace/contents.xcworkspacedata index 1d526a1..21a3cc1 100644 --- a/ios/Runner.xcworkspace/contents.xcworkspacedata +++ b/ios/Runner.xcworkspace/contents.xcworkspacedata @@ -4,4 +4,7 @@ + + diff --git a/lib/features/core/data/constants/const_values.dart b/lib/features/core/data/constants/const_values.dart index c8a9a7d..5aea8af 100644 --- a/lib/features/core/data/constants/const_values.dart +++ b/lib/features/core/data/constants/const_values.dart @@ -1,7 +1,7 @@ abstract class ConstValues { static const String httpsScheme = 'https'; - static const String backendHost = 'source.unsplash.com'; - static const List backendUrlPathSegments = ['user', 'c_v_r']; + static const String imagesHostServer = 'source.unsplash.com'; + static const List imagesHostUrlPathSegments = ['user', 'c_v_r']; static const int numberOfImages = 25; static const int minImageSize = 50; diff --git a/lib/features/core/data/extensions/string_extensions.dart b/lib/features/core/data/extensions/string_extensions.dart index d353aca..cf4c5cd 100644 --- a/lib/features/core/data/extensions/string_extensions.dart +++ b/lib/features/core/data/extensions/string_extensions.dart @@ -2,9 +2,14 @@ extension StringExtensions on String { /// Returns true if given word contains atleast all the characters in [targetChars], and `false` otherwise /// /// Very efficient `O(n)` instead of naive `O(n*m)` - bool containsAllCharacters({required String targetChars}) { - final Set characterSet = Set.from(targetChars.split('')); - for (final testChar in split('')) { + bool containsAllCharacters({ + required String targetChars, + bool ignoreCase = true, + }) { + final Set characterSet = ignoreCase + ? Set.from(targetChars.toLowerCase().split('')) + : Set.from(targetChars.split('')); + for (final testChar in ignoreCase ? toLowerCase().split('') : split('')) { characterSet.remove(testChar); if (characterSet.isEmpty) return true; } diff --git a/lib/features/home/abstracts/images_api.dart b/lib/features/home/abstracts/images_api.dart index 17836ce..fb8fe42 100644 --- a/lib/features/home/abstracts/images_api.dart +++ b/lib/features/home/abstracts/images_api.dart @@ -1,5 +1,8 @@ import 'dart:async'; +import 'package:flutter/foundation.dart'; + +import '/features/core/services/logging_service.dart'; import '../data/dtos/image_model_dto.dart'; /// Interface for implementing image-fetching strategies, specific to a resource location on the internet. @@ -7,10 +10,11 @@ import '../data/dtos/image_model_dto.dart'; /// Since I used a site that was more obscure than the ones in the examples, this (otherwise pointless /// and convoluting) interface is for adding a bit of flexibility to change strategy to some other site. abstract class ImagesApi { - ImagesApi({required String token}) : _token = token; + ImagesApi({required this.token}); /// Access token provided to be used with API calls - final String _token; + @protected + final String token; /// Returns images fetched through an API as [ImageModelDTO]s. FutureOr> fetchImageUri(); @@ -18,4 +22,7 @@ abstract class ImagesApi { FutureOr> searchImages({ required String searchStr, }); + + @protected + final LoggingService loggingService = LoggingService.locate; } diff --git a/lib/features/home/api/unsplash_images_api.dart b/lib/features/home/api/unsplash_images_api.dart index 81f6805..abb25ba 100644 --- a/lib/features/home/api/unsplash_images_api.dart +++ b/lib/features/home/api/unsplash_images_api.dart @@ -3,14 +3,13 @@ import 'dart:math'; import '/features/core/data/constants/const_values.dart'; import '/features/core/data/extensions/random_extensions.dart'; -import '/features/core/services/logging_service.dart'; import '/l10n/generated/l10n.dart'; import '/locator.dart'; import '../abstracts/images_api.dart'; import '../data/dtos/image_model_dto.dart'; class UnsplashImagesApi extends ImagesApi { - final LoggingService _loggingService = LoggingService.locate; + //final LoggingService _loggingService = LoggingService.locate; final random = Random(); UnsplashImagesApi({required super.token}); @@ -44,7 +43,7 @@ class UnsplashImagesApi extends ImagesApi { // Emulating serialization fetchedImageModelDtos = dummyImageModels.map((final dummyModel) => dummyModel.toJson()); } on Exception catch (ex, stackTrace) { - _loggingService.handleException(ex, stackTrace); + loggingService.handleException(ex, stackTrace); return const Iterable.empty(); } @@ -84,7 +83,7 @@ class UnsplashImagesApi extends ImagesApi { // Emulating serialization searchImageModelDtos = dummyImageModels.map((final dummyModel) => dummyModel.toJson()); } on Exception catch (ex, stackTrace) { - _loggingService.handleException(ex, stackTrace); + loggingService.handleException(ex, stackTrace); return List.empty(); } @@ -94,8 +93,8 @@ class UnsplashImagesApi extends ImagesApi { Uri _imageUrlGenerator({required int imageSide}) => Uri( scheme: ConstValues.httpsScheme, - host: ConstValues.backendHost, - pathSegments: [...ConstValues.backendUrlPathSegments, '${imageSide}x$imageSide'], + host: ConstValues.imagesHostServer, + pathSegments: [...ConstValues.imagesHostUrlPathSegments, '${imageSide}x$imageSide'], ); static UnsplashImagesApi get locate => Locator.locate(); diff --git a/lib/features/home/views/image_carousel/image_carousel_view.dart b/lib/features/home/views/image_carousel/image_carousel_view.dart index 8f2f3d8..d2563ce 100644 --- a/lib/features/home/views/image_carousel/image_carousel_view.dart +++ b/lib/features/home/views/image_carousel/image_carousel_view.dart @@ -113,6 +113,8 @@ class ImageCarouselView extends StatelessWidget { const Gap(24), Padding( padding: const EdgeInsets.symmetric(horizontal: 24), + // Assuming that this data is coming from an external CRM, if it is coming with the + // image itself, then add it to the DTO and the Model as well, and access it here. child: MarkdownBody(data: model.strings.imageDetails), ), const Gap(16), diff --git a/test/widget_test.dart b/test/widget_test.dart deleted file mode 100644 index 0bafc25..0000000 --- a/test/widget_test.dart +++ /dev/null @@ -1,29 +0,0 @@ -// This is a basic Flutter widget test. -// -// To perform an interaction with a widget in your test, use the WidgetTester -// utility in the flutter_test package. For example, you can send tap and scroll -// gestures. You can also use WidgetTester to find child widgets in the widget -// tree, read text, and verify that the values of widget properties are correct. - -import 'package:flutter/material.dart'; -import 'package:flutter_test/flutter_test.dart'; -import 'package:mc_gallery/app.dart'; - -void main() { - testWidgets('Counter increments smoke test', (WidgetTester tester) async { - // Build our app and trigger a frame. - await tester.pumpWidget(const McgApp()); - - // Verify that our counter starts at 0. - expect(find.text('0'), findsOneWidget); - expect(find.text('1'), findsNothing); - - // Tap the '+' icon and trigger a frame. - await tester.tap(find.byIcon(Icons.add)); - await tester.pump(); - - // Verify that our counter has incremented. - expect(find.text('0'), findsNothing); - expect(find.text('1'), findsOneWidget); - }); -}