From d58b0950ca37b747e785db9a2204ca57ae9ee29a Mon Sep 17 00:00:00 2001 From: Utpal Barman Date: Sat, 26 Oct 2024 02:41:10 +0600 Subject: [PATCH 1/2] docs: Updated README.md (#160) --- README.md | 41 ++++++++++++------- lib/config/dart_define.dart | 4 +- .../common/assets_cache_manager.dart | 2 +- .../resources/app_color_palette.dart | 2 +- lib/presentation/resources/app_fonts.dart | 2 +- lib/presentation/resources/app_theme.dart | 2 +- .../resources/app_ui_constants.dart | 2 +- pubspec.yaml | 4 +- 8 files changed, 36 insertions(+), 23 deletions(-) diff --git a/README.md b/README.md index cc5fe5a..9e24319 100644 --- a/README.md +++ b/README.md @@ -6,22 +6,36 @@ This project serves as a template project for Flutter applications. You can gene ## 🔧 Setup and Installation -- Execute `$ flutter doctor` to verify installations -- Execute `$ pub get` to pull project dependencies -- Execute a run configuration of choice - - `$ flutter run --flavor development -t lib/main_development.dart --dart-define-from-file=lib/config/dart_define_keys/dart_define_development_keys.json` - - `$ flutter run --flavor staging -t lib/main_staging.dart --dart-define-from-file=lib/config/dart_define_keys/dart_define_staging_keys.json` - -⚠️ **Running the Production Flavor** - -It is **not recommended** to run the production flavor directly from the IDE -(VS Code or Android Studio) as it may be run by mistake. For ease and accuracy, -it is advised to run flavors via the **VS Code launch menu** or the **Android -Studio Run menu** instead. +1. Execute `$ flutter doctor` to verify installations. +2. Execute `$ pub get` to pull project dependencies. +3. Execute a run configuration of your choice: + + ```sh + flutter run --flavor development -t lib/main_development.dart --dart-define-from-file=lib/config/dart_define_keys/dart_define_development_keys.json + ``` + + ```sh + flutter run --flavor staging -t lib/main_staging.dart --dart-define-from-file=lib/config/dart_define_keys/dart_define_staging_keys.json` + ``` + +> [!IMPORTANT] +> ⚠️ **Running the Production Flavor** +> +> It is **not recommended** to run the production flavor directly from the IDE +> (VS Code or Android Studio) as it may be run by mistake. For ease and +> accuracy, +> it is advised to run flavors via the **VS Code launch menu** or the +> **Android Studio Run menu** instead. +> +> To use the build runner, use this command: +> +> ```sh +> dart run build_runner build --delete-conflicting-outputs +> ``` ## 🌲 Branches -- `master` - Latest version in the app store. +- `main` - Latest version in the app store. - `develop` - Default. Feature branches are merged in when complete and then deleted. ## 🔗 Useful links @@ -32,4 +46,3 @@ Studio Run menu** instead. - [OpenAPI Specification](https://TODO) - [NStack](https://TODO) - [Figma Design](https://TODO) -- [UI Manifesto](https://github.com/monstar-lab-oss/ui-manifesto) diff --git a/lib/config/dart_define.dart b/lib/config/dart_define.dart index eb2667d..6ac6527 100644 --- a/lib/config/dart_define.dart +++ b/lib/config/dart_define.dart @@ -1,5 +1,5 @@ -// This class is declared as an `abstract interface` to restrict inheritance +// This class is declared as an `abstract final` to restrict inheritance // and prevent instantiation outside the library. -abstract interface class DartDefine { +abstract final class DartDefine { static const apiBaseUrl = String.fromEnvironment('API_BASE_URL'); } diff --git a/lib/presentation/common/assets_cache_manager.dart b/lib/presentation/common/assets_cache_manager.dart index d463d59..fcf74ac 100644 --- a/lib/presentation/common/assets_cache_manager.dart +++ b/lib/presentation/common/assets_cache_manager.dart @@ -1,4 +1,4 @@ -abstract interface class AssetsCachingManager { +abstract final class AssetsCachingManager { /// Caches only the animations required at the initial app startup, /// specifically for the splash screen. /// diff --git a/lib/presentation/resources/app_color_palette.dart b/lib/presentation/resources/app_color_palette.dart index ab60fe7..8230b70 100644 --- a/lib/presentation/resources/app_color_palette.dart +++ b/lib/presentation/resources/app_color_palette.dart @@ -3,7 +3,7 @@ import 'package:flutter/material.dart'; /// Defines color palette for the application. /// /// Consider using the color name that is mentioned in Figma. -abstract interface class AppColorPalette { +abstract final class AppColorPalette { const AppColorPalette._(); static const alpha = Colors.transparent; diff --git a/lib/presentation/resources/app_fonts.dart b/lib/presentation/resources/app_fonts.dart index 7a76f05..51299e5 100644 --- a/lib/presentation/resources/app_fonts.dart +++ b/lib/presentation/resources/app_fonts.dart @@ -1,6 +1,6 @@ import 'package:flutter_template/gen/fonts.gen.dart'; -abstract interface class AppFonts { +abstract final class AppFonts { AppFonts._(); static const roboto = FontFamily.roboto; diff --git a/lib/presentation/resources/app_theme.dart b/lib/presentation/resources/app_theme.dart index 501b177..3744b8d 100644 --- a/lib/presentation/resources/app_theme.dart +++ b/lib/presentation/resources/app_theme.dart @@ -2,7 +2,7 @@ import 'package:flutter/material.dart'; import 'package:flutter_template/presentation/extensions/color_extensions.dart'; import 'package:flutter_template/presentation/resources/resources.dart'; -abstract interface class AppTheme { +abstract final class AppTheme { const AppTheme._(); static ThemeData fromBrightness(Brightness brightness) { diff --git a/lib/presentation/resources/app_ui_constants.dart b/lib/presentation/resources/app_ui_constants.dart index a6a4f4b..02032a7 100644 --- a/lib/presentation/resources/app_ui_constants.dart +++ b/lib/presentation/resources/app_ui_constants.dart @@ -4,7 +4,7 @@ import 'package:flutter/material.dart'; /// /// This class contains non-sensitive information and is designed to maintain consistency /// across the app's UI elements. -abstract interface class AppUiConstants { +abstract final class AppUiConstants { AppUiConstants._(); // Animations diff --git a/pubspec.yaml b/pubspec.yaml index 686d546..bb878bb 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -14,8 +14,8 @@ dependencies: # UI & Design cupertino_icons: ^1.0.8 - flutter_svg: 2.0.9 # Change with caution - lottie: 1.4.3 # Change with caution + flutter_svg: 2.0.9 # ⚠️ Change with caution (reason: nstack) + lottie: 3.0.0 # ⚠️ Change with caution (reason: nstack -> http) flutter_sticky_header: ^0.7.0 auto_size_text: ^3.0.0 theme_tailor_annotation: ^3.0.1 From b7489d36f5927b02bad3ec26cf1e55e6b6dddd6c Mon Sep 17 00:00:00 2001 From: Utpal Barman Date: Fri, 29 Nov 2024 12:16:52 +0600 Subject: [PATCH 2/2] chore: Removed NStack feature integration (#161) --- .github/workflows/pull_request_validation.yml | 2 +- .gitignore | 7 +- README.md | 1 - analysis_options.yaml | 2 - android/app/build.gradle | 8 +- android/app/proguard-rules.pro | 6 + android/build.gradle | 24 - .../gradle/wrapper/gradle-wrapper.properties | 2 +- android/settings.gradle | 4 +- lib/data/response_objects/error_response.dart | 23 +- .../common/response_error/response_error.dart | 42 +- lib/nstack/nstack.json | 5 - lib/presentation/app.dart | 10 - playbooks/organization/WorkingWithNStack.md | 165 +++ pubspec.lock | 1231 +++++++++++++++++ pubspec.yaml | 26 +- 16 files changed, 1456 insertions(+), 102 deletions(-) create mode 100644 android/app/proguard-rules.pro delete mode 100644 lib/nstack/nstack.json create mode 100644 playbooks/organization/WorkingWithNStack.md create mode 100644 pubspec.lock diff --git a/.github/workflows/pull_request_validation.yml b/.github/workflows/pull_request_validation.yml index 39fca36..46454a5 100644 --- a/.github/workflows/pull_request_validation.yml +++ b/.github/workflows/pull_request_validation.yml @@ -19,7 +19,7 @@ jobs: - name: ♨️ Setup Java uses: actions/setup-java@v3 with: - java-version: '17' + java-version: '21' distribution: 'temurin' - name: 🐦 Setup Flutter diff --git a/.gitignore b/.gitignore index d8d1126..51c4b51 100644 --- a/.gitignore +++ b/.gitignore @@ -47,10 +47,13 @@ app.*.map.json # Flutter code generation *.freezed.dart *.g.dart -nstack.dart *.gr.dart *.config.dart lib/gen/** # Dependencies -**.lock +# Pubspec.lock should be checked out to git +# to ensure everyone in the team is using the same version. +# Recommended by Flutter as well. +# We can git ignore Podfile.lock only. +Podfile.lock diff --git a/README.md b/README.md index 9e24319..bebd50a 100644 --- a/README.md +++ b/README.md @@ -44,5 +44,4 @@ This project serves as a template project for Flutter applications. You can gene - [Confluence](https://TODO) - [Slack Channel](https://TODO) - [OpenAPI Specification](https://TODO) -- [NStack](https://TODO) - [Figma Design](https://TODO) diff --git a/analysis_options.yaml b/analysis_options.yaml index 8d7c335..be9c419 100644 --- a/analysis_options.yaml +++ b/analysis_options.yaml @@ -22,7 +22,5 @@ analyzer: - "**/*.g.dart" # Ignore warnings in files generated by Freezed specifically. - "**/*.freezed.dart" - # Ignore warnings in files generated by NStack specifically. - - "**/*nstack.dart" # Ignore bricks - bricks/** diff --git a/android/app/build.gradle b/android/app/build.gradle index 82f1dca..4209514 100644 --- a/android/app/build.gradle +++ b/android/app/build.gradle @@ -9,7 +9,7 @@ def appName = "Monstarlab Flutter Template" // TODO: Change the applicationId for production // On staging it will add .staging and on development it will add .development as suffix. -def applicationId = "com.monstarlab.flutter" +def packageName = "com.monstarlab.flutter" ext { androidMinSdkVersion = 21 @@ -18,9 +18,9 @@ ext { android { - namespace = "$applicationId" + namespace = "$packageName" compileSdk = androidCompileAndTargetSdkVersion - ndkVersion = flutter.ndkVersion + ndkVersion = "27.0.12077973" compileOptions { sourceCompatibility = JavaVersion.VERSION_1_8 @@ -32,7 +32,7 @@ android { } defaultConfig { - applicationId = "$applicationId" + applicationId = "$packageName" // You can update the following values to match your application needs. // For more information, see: https://flutter.dev/to/review-gradle-config. minSdk = androidMinSdkVersion diff --git a/android/app/proguard-rules.pro b/android/app/proguard-rules.pro new file mode 100644 index 0000000..a2ef6bc --- /dev/null +++ b/android/app/proguard-rules.pro @@ -0,0 +1,6 @@ +-dontwarn com.google.errorprone.annotations.CanIgnoreReturnValue +-dontwarn com.google.errorprone.annotations.CheckReturnValue +-dontwarn com.google.errorprone.annotations.Immutable +-dontwarn com.google.errorprone.annotations.RestrictedApi +-dontwarn javax.annotation.Nullable +-dontwarn javax.annotation.concurrent.GuardedBy diff --git a/android/build.gradle b/android/build.gradle index 361d70f..d2ffbff 100644 --- a/android/build.gradle +++ b/android/build.gradle @@ -6,30 +6,6 @@ allprojects { } rootProject.buildDir = "../build" -// [NStack] the namespace property is null within -// the android block of the build.gradle file for the nstack sdk. -// Additionally, the Kotlin Gradle plugin is using a very old version there. -subprojects { - afterEvaluate { project -> - if (project.name == 'nstack') { - if (project.hasProperty('android')) { - project.android { - if (namespace == null) { - namespace project.group - } - } - project.buildscript { - dependencies { - classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:1.7.10" - } - } - } - } - } -} -// End of NStack workaround - - subprojects { project.buildDir = "${rootProject.buildDir}/${project.name}" } diff --git a/android/gradle/wrapper/gradle-wrapper.properties b/android/gradle/wrapper/gradle-wrapper.properties index e1ca574..afa1e8e 100644 --- a/android/gradle/wrapper/gradle-wrapper.properties +++ b/android/gradle/wrapper/gradle-wrapper.properties @@ -2,4 +2,4 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-7.6.3-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-8.10.2-all.zip diff --git a/android/settings.gradle b/android/settings.gradle index ea7f114..da301b7 100644 --- a/android/settings.gradle +++ b/android/settings.gradle @@ -18,8 +18,8 @@ pluginManagement { plugins { id "dev.flutter.flutter-plugin-loader" version "1.0.0" - id "com.android.application" version '7.4.2' apply false - id "org.jetbrains.kotlin.android" version "1.7.10" apply false + id "com.android.application" version '8.7.2' apply false + id "org.jetbrains.kotlin.android" version "2.0.20" apply false } include ":app" diff --git a/lib/data/response_objects/error_response.dart b/lib/data/response_objects/error_response.dart index e72e8aa..c45a0ff 100644 --- a/lib/data/response_objects/error_response.dart +++ b/lib/data/response_objects/error_response.dart @@ -1,13 +1,12 @@ import 'package:flutter_template/domain/common/response_error/response_error.dart'; -import 'package:flutter_template/nstack/nstack.dart'; import 'package:freezed_annotation/freezed_annotation.dart'; part 'error_response.freezed.dart'; part 'error_response.g.dart'; -///The BE should provide one unique code for each error, in this case the -///error is being provided through errorName so we create an Enum for each -///code we are aware of with a default value to unknown +/// The BE should provide one unique code for each error, in this case the +/// error is being provided through errorName so we create an Enum for each +/// code we are aware of with a default value to unknown @freezed class APIError with _$APIError { const factory APIError({ @@ -27,9 +26,9 @@ class APIError with _$APIError { @freezed class ErrorResponse with _$ErrorResponse { const factory ErrorResponse({ - //TODO: name this according to the map key from the error response - //if no map key exists then just create this factory with the APIError values - //and remove APIError, + // TODO: name this according to the map key from the error response + // if no map key exists then just create this factory with the APIError values + // and remove APIError, required APIError error, }) = _ErrorResponse; @@ -38,7 +37,7 @@ class ErrorResponse with _$ErrorResponse { } enum ErrorName { - //Add error enum and the BE value + // Add error enum and the BE value @JsonValue('errorExample') errorExample, unknown, @@ -53,13 +52,13 @@ extension ErrorResponseExtensions on ErrorResponse { } extension ErrorNameExtensions on ErrorName { - String getErrorMessage(Localization l10n) { + String getErrorMessage() { switch (this) { - //Handle error enum and return mapped nstack value + // TODO: Handle error enum and return mapped localized value case ErrorName.errorExample: - return l10n.error.authenticationError; + return 'Error Occurred'; default: - return ''; + return 'Unexpected Error'; } } } diff --git a/lib/domain/common/response_error/response_error.dart b/lib/domain/common/response_error/response_error.dart index 587ed32..f09e311 100644 --- a/lib/domain/common/response_error/response_error.dart +++ b/lib/domain/common/response_error/response_error.dart @@ -3,7 +3,6 @@ import 'dart:io'; import 'package:dio/dio.dart'; import 'package:flutter/foundation.dart'; import 'package:flutter_template/data/response_objects/error_response.dart'; -import 'package:flutter_template/nstack/nstack.dart'; import 'package:freezed_annotation/freezed_annotation.dart'; part 'response_error.freezed.dart'; @@ -91,28 +90,27 @@ sealed class ResponseError with _$ResponseError implements Exception { } extension ResponseErrorExtensions on ResponseError { - String getErrorMessage(Localization l10n) { - //TODO: create error module for errors and set value accordingly + String getErrorMessage() { return when( - noInternetConnection: () => l10n.error.connectionError, - sendTimeout: () => l10n.error.authenticationError, - connectTimeout: () => l10n.error.authenticationError, - receiveTimeout: () => l10n.error.authenticationError, - badRequest: (message) => message.getErrorMessage(l10n), - notFound: () => l10n.error.authenticationError, - tooManyRequests: () => l10n.error.authenticationError, - unprocessableEntity: () => l10n.error.authenticationError, - internalServerError: () => l10n.error.authenticationError, - unexpectedError: () => l10n.error.authenticationError, - requestCancelled: () => l10n.error.authenticationError, - conflict: () => l10n.error.authenticationError, - unauthorized: () => l10n.error.authenticationError, - invalidPassword: () => l10n.error.authenticationError, - invalidEmail: () => l10n.error.authenticationError, - invalidSearchTerm: () => l10n.error.authenticationError, - invalidLoginCredentials: () => l10n.error.authenticationError, - badCertificate: () => l10n.error.authenticationError, - connectionError: () => l10n.error.connectionError, + noInternetConnection: () => 'No Internet Connection', + sendTimeout: () => 'Send Timeout Error', + connectTimeout: () => 'Connection Timeout Error', + receiveTimeout: () => 'Receive Timeout Error', + badRequest: (message) => message.getErrorMessage(), + notFound: () => 'Not Found Error', + tooManyRequests: () => 'Too Many Requests', + unprocessableEntity: () => 'Unprocessable Entity', + internalServerError: () => 'Internal Server Error', + unexpectedError: () => 'Unexpected Error', + requestCancelled: () => 'Request Cancelled', + conflict: () => 'Conflict Error', + unauthorized: () => 'Unauthorized Error', + invalidPassword: () => 'Invalid Password', + invalidEmail: () => 'Invalid Email', + invalidSearchTerm: () => 'Invalid Search Term', + invalidLoginCredentials: () => 'Invalid Login Credentials', + badCertificate: () => 'Bad Certificate', + connectionError: () => 'Connection Error', ); } } diff --git a/lib/nstack/nstack.json b/lib/nstack/nstack.json deleted file mode 100644 index 53a5eed..0000000 --- a/lib/nstack/nstack.json +++ /dev/null @@ -1,5 +0,0 @@ -{ - "version": 1, - "nstack_project_id": "k78R0OadfzZQmlhvKYkF1znwdQYShK1SCiLl", - "nstack_api_key": "e5tzJcRuIE3UsivDicjQZlI03TLgpWPEroOf" -} diff --git a/lib/presentation/app.dart b/lib/presentation/app.dart index 127774d..e94710f 100644 --- a/lib/presentation/app.dart +++ b/lib/presentation/app.dart @@ -1,7 +1,6 @@ import 'package:auto_route/auto_route.dart'; import 'package:flutter/material.dart'; import 'package:flutter_template/injection/injector.dart'; -import 'package:flutter_template/nstack/nstack.dart'; import 'package:flutter_template/presentation/resources/resources.dart'; import 'package:flutter_template/presentation/routes/router.dart'; @@ -20,15 +19,6 @@ class App extends StatelessWidget { themeMode: ThemeMode.system, // TODO: Change Project Name Here title: 'Monstarlab Flutter Template', - builder: (c, widget) { - if (widget == null) { - return const SizedBox(); - } - - return NStackWidget( - child: widget, - ); - }, routerDelegate: AutoRouterDelegate( appRouter, ), diff --git a/playbooks/organization/WorkingWithNStack.md b/playbooks/organization/WorkingWithNStack.md new file mode 100644 index 0000000..920cbac --- /dev/null +++ b/playbooks/organization/WorkingWithNStack.md @@ -0,0 +1,165 @@ +# Working with NStack + +> [!IMPORTANT] +> ⚠️ **Notes regarding the NStack** +> +> NStack might currently be down as the +> organization plans to sunset this service. +> However, this guide will assist future +> developers if they choose to work with it & +> NStack is up again. + +_Please visit [Nstack website](https://www.nstack.io) to check if it's up._ + +The feature integration was removed in the [chore: Removed NStack feature integration](https://github.com/ml-opensource/flutter-template/pull/161) Pull Request. + +**NStack** is a Backend-as-a-Service (BaaS) developed by Nodes/Monstarlab. It offers features such as localization, in-app messaging, and rate limiting. + +--- + +## Getting Started + +For more details about the Flutter package for the NStack library, visit [NStack Flutter SDK on GitHub](https://github.com/nstack-io/flutter-sdk). + +--- + +## Installation + +To use NStack, you'll need a typical `build_runner` setup. Follow these steps to install the required packages by adding them to your `pubspec.yaml` file: + +```yaml +dependencies: + nstack: + git: + url: https://github.com/nstack-io/flutter-sdk.git + ref: v0.5.1 + +dev_dependencies: + build_runner: +``` + +### Additional Notes + +- **Circular Dependencies:** Some packages may cause circular dependency issues. To resolve this, specify exact versions of those dependencies. + + Example: + + ```yaml + flutter_svg: 2.0.9 + lottie: 3.0.0 + ``` + +--- + +## Running the Code Generator + +1. **Create Configuration File:** + Create a file named `nstack.json` under `/lib/nstack` with the following content: + + ```json + { + "version": 1, + "nstack_project_id": "YOUR_PROJECT_ID", + "nstack_api_key": "YOUR_REST_API_KEY" + } + ``` + +2. **Run the Generator:** + Based on your use case, run one of the following commands: + + - If your package depends on Flutter: + + ```bash + flutter pub run build_runner build + ``` + + - Otherwise: + + ```bash + pub run build_runner build + ``` + + A successful execution will generate a `nstack.dart` file tailored to your project. + +3. **Incremental Updates:** + To watch for changes in `nstack.json` and trigger automatic rebuilds, use the following command: + + ```bash + flutter pub run build_runner watch --delete-conflicting-outputs + ``` + + Increment the `"version"` number in `nstack.json` and save to trigger an update. + +--- + +## Example Usage + +1. **Import Generated File:** + Import the `nstack.dart` file in your project. + +2. **Integrate NStack Widget:** + In your `app.dart`, under `MaterialApp.router`, use the following code in the `builder`: + + ```dart + return MaterialApp.router( + // ... other codes go here + builder: (context, widget) { + if (widget == null) { + return const SizedBox(); + } + + return NStackWidget( + child: widget, + ); + }, + ); + ``` + +3. **Analysis Options:** + Add the following to your `analysis_options.yaml` to exclude the generated `nstack.dart` file: + + ```yaml + - "**/*nstack.dart" + ``` + +--- + +## Additional Setup + +### Java and Gradle Compatibility + +Ensure you have **Java 17** and a compatible Gradle version for Android builds. + +### Workaround for Namespace Issue + +If NStack complains about missing namespaces in its library, apply the following workaround in your `android/build.gradle`: + +```gradle +// android/build.gradle +rootProject.buildDir = "../build" // <-- existing line + +// Start of NStack Workaround +subprojects { + afterEvaluate { project -> + if (project.name == 'nstack') { + if (project.hasProperty('android')) { + project.android { + if (namespace == null) { + namespace project.group + } + } + project.buildscript { + dependencies { + classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:2.0.20" + } + } + } + } + } +} +// End of NStack Workaround +``` + +--- + +This guide provides a complete overview of integrating and using NStack in a Flutter project. If you encounter issues, feel free to consult the official [NStack Flutter SDK documentation](https://github.com/nstack-io/flutter-sdk). diff --git a/pubspec.lock b/pubspec.lock new file mode 100644 index 0000000..416982f --- /dev/null +++ b/pubspec.lock @@ -0,0 +1,1231 @@ +# Generated by pub +# See https://dart.dev/tools/pub/glossary#lockfile +packages: + _fe_analyzer_shared: + dependency: transitive + description: + name: _fe_analyzer_shared + sha256: f256b0c0ba6c7577c15e2e4e114755640a875e885099367bf6e012b19314c834 + url: "https://pub.dev" + source: hosted + version: "72.0.0" + _macros: + dependency: transitive + description: dart + source: sdk + version: "0.3.2" + analyzer: + dependency: transitive + description: + name: analyzer + sha256: b652861553cd3990d8ed361f7979dc6d7053a9ac8843fa73820ab68ce5410139 + url: "https://pub.dev" + source: hosted + version: "6.7.0" + archive: + dependency: transitive + description: + name: archive + sha256: cb6a278ef2dbb298455e1a713bda08524a175630ec643a242c399c932a0a1f7d + url: "https://pub.dev" + source: hosted + version: "3.6.1" + args: + dependency: transitive + description: + name: args + sha256: bf9f5caeea8d8fe6721a9c358dd8a5c1947b27f1cfaa18b39c301273594919e6 + url: "https://pub.dev" + source: hosted + version: "2.6.0" + async: + dependency: transitive + description: + name: async + sha256: "947bfcf187f74dbc5e146c9eb9c0f10c9f8b30743e341481c1e2ed3ecc18c20c" + url: "https://pub.dev" + source: hosted + version: "2.11.0" + auto_route: + dependency: "direct main" + description: + name: auto_route + sha256: b83e8ce46da7228cdd019b5a11205454847f0a971bca59a7529b98df9876889b + url: "https://pub.dev" + source: hosted + version: "9.2.2" + auto_route_generator: + dependency: "direct dev" + description: + name: auto_route_generator + sha256: c9086eb07271e51b44071ad5cff34e889f3156710b964a308c2ab590769e79e6 + url: "https://pub.dev" + source: hosted + version: "9.0.0" + auto_size_text: + dependency: "direct main" + description: + name: auto_size_text + sha256: "3f5261cd3fb5f2a9ab4e2fc3fba84fd9fcaac8821f20a1d4e71f557521b22599" + url: "https://pub.dev" + source: hosted + version: "3.0.0" + bloc: + dependency: transitive + description: + name: bloc + sha256: "106842ad6569f0b60297619e9e0b1885c2fb9bf84812935490e6c5275777804e" + url: "https://pub.dev" + source: hosted + version: "8.1.4" + boolean_selector: + dependency: transitive + description: + name: boolean_selector + sha256: "6cfb5af12253eaf2b368f07bacc5a80d1301a071c73360d746b7f2e32d762c66" + url: "https://pub.dev" + source: hosted + version: "2.1.1" + build: + dependency: transitive + description: + name: build + sha256: "80184af8b6cb3e5c1c4ec6d8544d27711700bc3e6d2efad04238c7b5290889f0" + url: "https://pub.dev" + source: hosted + version: "2.4.1" + build_config: + dependency: transitive + description: + name: build_config + sha256: bf80fcfb46a29945b423bd9aad884590fb1dc69b330a4d4700cac476af1708d1 + url: "https://pub.dev" + source: hosted + version: "1.1.1" + build_daemon: + dependency: transitive + description: + name: build_daemon + sha256: "79b2aef6ac2ed00046867ed354c88778c9c0f029df8a20fe10b5436826721ef9" + url: "https://pub.dev" + source: hosted + version: "4.0.2" + build_resolvers: + dependency: transitive + description: + name: build_resolvers + sha256: "339086358431fa15d7eca8b6a36e5d783728cf025e559b834f4609a1fcfb7b0a" + url: "https://pub.dev" + source: hosted + version: "2.4.2" + build_runner: + dependency: "direct dev" + description: + name: build_runner + sha256: "028819cfb90051c6b5440c7e574d1896f8037e3c96cf17aaeb054c9311cfbf4d" + url: "https://pub.dev" + source: hosted + version: "2.4.13" + build_runner_core: + dependency: transitive + description: + name: build_runner_core + sha256: f8126682b87a7282a339b871298cc12009cb67109cfa1614d6436fb0289193e0 + url: "https://pub.dev" + source: hosted + version: "7.3.2" + build_test: + dependency: transitive + description: + name: build_test + sha256: "260dbba934f41b0a42935e9cae1f5731b94f0c3e489dc97bcf8e281265aaa5ae" + url: "https://pub.dev" + source: hosted + version: "2.2.2" + built_collection: + dependency: transitive + description: + name: built_collection + sha256: "376e3dd27b51ea877c28d525560790aee2e6fbb5f20e2f85d5081027d94e2100" + url: "https://pub.dev" + source: hosted + version: "5.1.1" + built_value: + dependency: transitive + description: + name: built_value + sha256: c7913a9737ee4007efedaffc968c049fd0f3d0e49109e778edc10de9426005cb + url: "https://pub.dev" + source: hosted + version: "8.9.2" + characters: + dependency: transitive + description: + name: characters + sha256: "04a925763edad70e8443c99234dc3328f442e811f1d8fd1a72f1c8ad0f69a605" + url: "https://pub.dev" + source: hosted + version: "1.3.0" + checked_yaml: + dependency: transitive + description: + name: checked_yaml + sha256: feb6bed21949061731a7a75fc5d2aa727cf160b91af9a3e464c5e3a32e28b5ff + url: "https://pub.dev" + source: hosted + version: "2.0.3" + clock: + dependency: transitive + description: + name: clock + sha256: cb6d7f03e1de671e34607e909a7213e31d7752be4fb66a86d29fe1eb14bfb5cf + url: "https://pub.dev" + source: hosted + version: "1.1.1" + code_builder: + dependency: transitive + description: + name: code_builder + sha256: "0ec10bf4a89e4c613960bf1e8b42c64127021740fb21640c29c909826a5eea3e" + url: "https://pub.dev" + source: hosted + version: "4.10.1" + collection: + dependency: transitive + description: + name: collection + sha256: ee67cb0715911d28db6bf4af1026078bd6f0128b07a5f66fb2ed94ec6783c09a + url: "https://pub.dev" + source: hosted + version: "1.18.0" + color: + dependency: transitive + description: + name: color + sha256: ddcdf1b3badd7008233f5acffaf20ca9f5dc2cd0172b75f68f24526a5f5725cb + url: "https://pub.dev" + source: hosted + version: "3.0.0" + convert: + dependency: transitive + description: + name: convert + sha256: b30acd5944035672bc15c6b7a8b47d773e41e2f17de064350988c5d02adb1c68 + url: "https://pub.dev" + source: hosted + version: "3.1.2" + coverage: + dependency: transitive + description: + name: coverage + sha256: "4b03e11f6d5b8f6e5bb5e9f7889a56fe6c5cbe942da5378ea4d4d7f73ef9dfe5" + url: "https://pub.dev" + source: hosted + version: "1.11.0" + crypto: + dependency: transitive + description: + name: crypto + sha256: "1e445881f28f22d6140f181e07737b22f1e099a5e1ff94b0af2f9e4a463f4855" + url: "https://pub.dev" + source: hosted + version: "3.0.6" + csslib: + dependency: transitive + description: + name: csslib + sha256: "09bad715f418841f976c77db72d5398dc1253c21fb9c0c7f0b0b985860b2d58e" + url: "https://pub.dev" + source: hosted + version: "1.0.2" + cupertino_icons: + dependency: "direct main" + description: + name: cupertino_icons + sha256: ba631d1c7f7bef6b729a622b7b752645a2d076dba9976925b8f25725a30e1ee6 + url: "https://pub.dev" + source: hosted + version: "1.0.8" + dart_style: + dependency: transitive + description: + name: dart_style + sha256: "7856d364b589d1f08986e140938578ed36ed948581fbc3bc9aef1805039ac5ab" + url: "https://pub.dev" + source: hosted + version: "2.3.7" + dartx: + dependency: transitive + description: + name: dartx + sha256: "8b25435617027257d43e6508b5fe061012880ddfdaa75a71d607c3de2a13d244" + url: "https://pub.dev" + source: hosted + version: "1.2.0" + device_info_plus: + dependency: "direct main" + description: + name: device_info_plus + sha256: f545ffbadee826f26f2e1a0f0cbd667ae9a6011cc0f77c0f8f00a969655e6e95 + url: "https://pub.dev" + source: hosted + version: "11.1.1" + device_info_plus_platform_interface: + dependency: transitive + description: + name: device_info_plus_platform_interface + sha256: "282d3cf731045a2feb66abfe61bbc40870ae50a3ed10a4d3d217556c35c8c2ba" + url: "https://pub.dev" + source: hosted + version: "7.0.1" + dio: + dependency: "direct main" + description: + name: dio + sha256: "5598aa796bbf4699afd5c67c0f5f6e2ed542afc956884b9cd58c306966efc260" + url: "https://pub.dev" + source: hosted + version: "5.7.0" + dio_web_adapter: + dependency: transitive + description: + name: dio_web_adapter + sha256: "33259a9276d6cea88774a0000cfae0d861003497755969c92faa223108620dc8" + url: "https://pub.dev" + source: hosted + version: "2.0.0" + fake_async: + dependency: transitive + description: + name: fake_async + sha256: "511392330127add0b769b75a987850d136345d9227c6b94c96a04cf4a391bf78" + url: "https://pub.dev" + source: hosted + version: "1.3.1" + ffi: + dependency: transitive + description: + name: ffi + sha256: "16ed7b077ef01ad6170a3d0c57caa4a112a38d7a2ed5602e0aca9ca6f3d98da6" + url: "https://pub.dev" + source: hosted + version: "2.1.3" + file: + dependency: transitive + description: + name: file + sha256: a3b4f84adafef897088c160faf7dfffb7696046cb13ae90b508c2cbc95d3b8d4 + url: "https://pub.dev" + source: hosted + version: "7.0.1" + fixnum: + dependency: transitive + description: + name: fixnum + sha256: b6dc7065e46c974bc7c5f143080a6764ec7a4be6da1285ececdc37be96de53be + url: "https://pub.dev" + source: hosted + version: "1.1.1" + flutter: + dependency: "direct main" + description: flutter + source: sdk + version: "0.0.0" + flutter_bloc: + dependency: "direct main" + description: + name: flutter_bloc + sha256: b594505eac31a0518bdcb4b5b79573b8d9117b193cc80cc12e17d639b10aa27a + url: "https://pub.dev" + source: hosted + version: "8.1.6" + flutter_gen_core: + dependency: transitive + description: + name: flutter_gen_core + sha256: "46ecf0e317413dd065547887c43f93f55e9653e83eb98dc13dd07d40dd225325" + url: "https://pub.dev" + source: hosted + version: "5.8.0" + flutter_gen_runner: + dependency: "direct dev" + description: + name: flutter_gen_runner + sha256: "77f0a02fc30d9fcf2549fe874eb3fde091435724904bcbb1af60aa40cbfab1f4" + url: "https://pub.dev" + source: hosted + version: "5.8.0" + flutter_secure_storage: + dependency: "direct main" + description: + name: flutter_secure_storage + sha256: "165164745e6afb5c0e3e3fcc72a012fb9e58496fb26ffb92cf22e16a821e85d0" + url: "https://pub.dev" + source: hosted + version: "9.2.2" + flutter_secure_storage_linux: + dependency: transitive + description: + name: flutter_secure_storage_linux + sha256: "4d91bfc23047422cbcd73ac684bc169859ee766482517c22172c86596bf1464b" + url: "https://pub.dev" + source: hosted + version: "1.2.1" + flutter_secure_storage_macos: + dependency: transitive + description: + name: flutter_secure_storage_macos + sha256: "1693ab11121a5f925bbea0be725abfcfbbcf36c1e29e571f84a0c0f436147a81" + url: "https://pub.dev" + source: hosted + version: "3.1.2" + flutter_secure_storage_platform_interface: + dependency: transitive + description: + name: flutter_secure_storage_platform_interface + sha256: cf91ad32ce5adef6fba4d736a542baca9daf3beac4db2d04be350b87f69ac4a8 + url: "https://pub.dev" + source: hosted + version: "1.1.2" + flutter_secure_storage_web: + dependency: transitive + description: + name: flutter_secure_storage_web + sha256: f4ebff989b4f07b2656fb16b47852c0aab9fed9b4ec1c70103368337bc1886a9 + url: "https://pub.dev" + source: hosted + version: "1.2.1" + flutter_secure_storage_windows: + dependency: transitive + description: + name: flutter_secure_storage_windows + sha256: b20b07cb5ed4ed74fc567b78a72936203f587eba460af1df11281c9326cd3709 + url: "https://pub.dev" + source: hosted + version: "3.1.2" + flutter_sticky_header: + dependency: "direct main" + description: + name: flutter_sticky_header + sha256: "7f76d24d119424ca0c95c146b8627a457e8de8169b0d584f766c2c545db8f8be" + url: "https://pub.dev" + source: hosted + version: "0.7.0" + flutter_svg: + dependency: "direct main" + description: + name: flutter_svg + sha256: "54900a1a1243f3c4a5506d853a2b5c2dbc38d5f27e52a52618a8054401431123" + url: "https://pub.dev" + source: hosted + version: "2.0.16" + flutter_test: + dependency: "direct dev" + description: flutter + source: sdk + version: "0.0.0" + flutter_web_plugins: + dependency: transitive + description: flutter + source: sdk + version: "0.0.0" + freezed: + dependency: "direct dev" + description: + name: freezed + sha256: "44c19278dd9d89292cf46e97dc0c1e52ce03275f40a97c5a348e802a924bf40e" + url: "https://pub.dev" + source: hosted + version: "2.5.7" + freezed_annotation: + dependency: "direct main" + description: + name: freezed_annotation + sha256: c2e2d632dd9b8a2b7751117abcfc2b4888ecfe181bd9fca7170d9ef02e595fe2 + url: "https://pub.dev" + source: hosted + version: "2.4.4" + frontend_server_client: + dependency: transitive + description: + name: frontend_server_client + sha256: f64a0333a82f30b0cca061bc3d143813a486dc086b574bfb233b7c1372427694 + url: "https://pub.dev" + source: hosted + version: "4.0.0" + get_it: + dependency: "direct main" + description: + name: get_it + sha256: c49895c1ecb0ee2a0ec568d39de882e2c299ba26355aa6744ab1001f98cebd15 + url: "https://pub.dev" + source: hosted + version: "8.0.2" + glob: + dependency: transitive + description: + name: glob + sha256: "0e7014b3b7d4dac1ca4d6114f82bf1782ee86745b9b42a92c9289c23d8a0ab63" + url: "https://pub.dev" + source: hosted + version: "2.1.2" + graphs: + dependency: transitive + description: + name: graphs + sha256: "741bbf84165310a68ff28fe9e727332eef1407342fca52759cb21ad8177bb8d0" + url: "https://pub.dev" + source: hosted + version: "2.3.2" + hashcodes: + dependency: transitive + description: + name: hashcodes + sha256: "80f9410a5b3c8e110c4b7604546034749259f5d6dcca63e0d3c17c9258f1a651" + url: "https://pub.dev" + source: hosted + version: "2.0.0" + html: + dependency: transitive + description: + name: html + sha256: "1fc58edeaec4307368c60d59b7e15b9d658b57d7f3125098b6294153c75337ec" + url: "https://pub.dev" + source: hosted + version: "0.15.5" + http: + dependency: transitive + description: + name: http + sha256: b9c29a161230ee03d3ccf545097fccd9b87a5264228c5d348202e0f0c28f9010 + url: "https://pub.dev" + source: hosted + version: "1.2.2" + http_multi_server: + dependency: transitive + description: + name: http_multi_server + sha256: "97486f20f9c2f7be8f514851703d0119c3596d14ea63227af6f7a481ef2b2f8b" + url: "https://pub.dev" + source: hosted + version: "3.2.1" + http_parser: + dependency: transitive + description: + name: http_parser + sha256: "2aa08ce0341cc9b354a498388e30986515406668dbcc4f7c950c3e715496693b" + url: "https://pub.dev" + source: hosted + version: "4.0.2" + image_size_getter: + dependency: transitive + description: + name: image_size_getter + sha256: "0511799498340b70993d2dfb34b55a2247b5b801d75a6cdd4543acfcafdb12b0" + url: "https://pub.dev" + source: hosted + version: "2.2.0" + injectable: + dependency: "direct main" + description: + name: injectable + sha256: "5e1556ea1d374fe44cbe846414d9bab346285d3d8a1da5877c01ad0774006068" + url: "https://pub.dev" + source: hosted + version: "2.5.0" + injectable_generator: + dependency: "direct dev" + description: + name: injectable_generator + sha256: af403d76c7b18b4217335e0075e950cd0579fd7f8d7bd47ee7c85ada31680ba1 + url: "https://pub.dev" + source: hosted + version: "2.6.2" + io: + dependency: transitive + description: + name: io + sha256: "2ec25704aba361659e10e3e5f5d672068d332fc8ac516421d483a11e5cbd061e" + url: "https://pub.dev" + source: hosted + version: "1.0.4" + js: + dependency: transitive + description: + name: js + sha256: f2c445dce49627136094980615a031419f7f3eb393237e4ecd97ac15dea343f3 + url: "https://pub.dev" + source: hosted + version: "0.6.7" + json_annotation: + dependency: "direct main" + description: + name: json_annotation + sha256: "1ce844379ca14835a50d2f019a3099f419082cfdd231cd86a142af94dd5c6bb1" + url: "https://pub.dev" + source: hosted + version: "4.9.0" + json_serializable: + dependency: "direct dev" + description: + name: json_serializable + sha256: c2fcb3920cf2b6ae6845954186420fca40bc0a8abcc84903b7801f17d7050d7c + url: "https://pub.dev" + source: hosted + version: "6.9.0" + leak_tracker: + dependency: transitive + description: + name: leak_tracker + sha256: "3f87a60e8c63aecc975dda1ceedbc8f24de75f09e4856ea27daf8958f2f0ce05" + url: "https://pub.dev" + source: hosted + version: "10.0.5" + leak_tracker_flutter_testing: + dependency: transitive + description: + name: leak_tracker_flutter_testing + sha256: "932549fb305594d82d7183ecd9fa93463e9914e1b67cacc34bc40906594a1806" + url: "https://pub.dev" + source: hosted + version: "3.0.5" + leak_tracker_testing: + dependency: transitive + description: + name: leak_tracker_testing + sha256: "6ba465d5d76e67ddf503e1161d1f4a6bc42306f9d66ca1e8f079a47290fb06d3" + url: "https://pub.dev" + source: hosted + version: "3.0.1" + logging: + dependency: transitive + description: + name: logging + sha256: c8245ada5f1717ed44271ed1c26b8ce85ca3228fd2ffdb75468ab01979309d61 + url: "https://pub.dev" + source: hosted + version: "1.3.0" + lottie: + dependency: "direct main" + description: + name: lottie + sha256: "7afc60865a2429d994144f7d66ced2ae4305fe35d82890b8766e3359872d872c" + url: "https://pub.dev" + source: hosted + version: "3.1.3" + macros: + dependency: transitive + description: + name: macros + sha256: "0acaed5d6b7eab89f63350bccd82119e6c602df0f391260d0e32b5e23db79536" + url: "https://pub.dev" + source: hosted + version: "0.1.2-main.4" + matcher: + dependency: transitive + description: + name: matcher + sha256: d2323aa2060500f906aa31a895b4030b6da3ebdcc5619d14ce1aada65cd161cb + url: "https://pub.dev" + source: hosted + version: "0.12.16+1" + material_color_utilities: + dependency: transitive + description: + name: material_color_utilities + sha256: f7142bb1154231d7ea5f96bc7bde4bda2a0945d2806bb11670e30b850d56bdec + url: "https://pub.dev" + source: hosted + version: "0.11.1" + meta: + dependency: transitive + description: + name: meta + sha256: bdb68674043280c3428e9ec998512fb681678676b3c54e773629ffe74419f8c7 + url: "https://pub.dev" + source: hosted + version: "1.15.0" + mime: + dependency: transitive + description: + name: mime + sha256: "41a20518f0cb1256669420fdba0cd90d21561e560ac240f26ef8322e45bb7ed6" + url: "https://pub.dev" + source: hosted + version: "2.0.0" + monstarlab_lints: + dependency: "direct dev" + description: + name: monstarlab_lints + sha256: fbdde80cf9c9a0ab133b2a6aca403ec987e66ff1ee62dc218eee63c1cf25ce27 + url: "https://pub.dev" + source: hosted + version: "1.0.4" + nested: + dependency: transitive + description: + name: nested + sha256: "03bac4c528c64c95c722ec99280375a6f2fc708eec17c7b3f07253b626cd2a20" + url: "https://pub.dev" + source: hosted + version: "1.0.0" + node_preamble: + dependency: transitive + description: + name: node_preamble + sha256: "6e7eac89047ab8a8d26cf16127b5ed26de65209847630400f9aefd7cd5c730db" + url: "https://pub.dev" + source: hosted + version: "2.0.2" + package_config: + dependency: transitive + description: + name: package_config + sha256: "1c5b77ccc91e4823a5af61ee74e6b972db1ef98c2ff5a18d3161c982a55448bd" + url: "https://pub.dev" + source: hosted + version: "2.1.0" + package_info_plus: + dependency: "direct main" + description: + name: package_info_plus + sha256: da8d9ac8c4b1df253d1a328b7bf01ae77ef132833479ab40763334db13b91cce + url: "https://pub.dev" + source: hosted + version: "8.1.1" + package_info_plus_platform_interface: + dependency: transitive + description: + name: package_info_plus_platform_interface + sha256: ac1f4a4847f1ade8e6a87d1f39f5d7c67490738642e2542f559ec38c37489a66 + url: "https://pub.dev" + source: hosted + version: "3.0.1" + path: + dependency: transitive + description: + name: path + sha256: "087ce49c3f0dc39180befefc60fdb4acd8f8620e5682fe2476afd0b3688bb4af" + url: "https://pub.dev" + source: hosted + version: "1.9.0" + path_parsing: + dependency: transitive + description: + name: path_parsing + sha256: "883402936929eac138ee0a45da5b0f2c80f89913e6dc3bf77eb65b84b409c6ca" + url: "https://pub.dev" + source: hosted + version: "1.1.0" + path_provider: + dependency: transitive + description: + name: path_provider + sha256: "50c5dd5b6e1aaf6fb3a78b33f6aa3afca52bf903a8a5298f53101fdaee55bbcd" + url: "https://pub.dev" + source: hosted + version: "2.1.5" + path_provider_android: + dependency: transitive + description: + name: path_provider_android + sha256: "8c4967f8b7cb46dc914e178daa29813d83ae502e0529d7b0478330616a691ef7" + url: "https://pub.dev" + source: hosted + version: "2.2.14" + path_provider_foundation: + dependency: transitive + description: + name: path_provider_foundation + sha256: f234384a3fdd67f989b4d54a5d73ca2a6c422fa55ae694381ae0f4375cd1ea16 + url: "https://pub.dev" + source: hosted + version: "2.4.0" + path_provider_linux: + dependency: transitive + description: + name: path_provider_linux + sha256: f7a1fe3a634fe7734c8d3f2766ad746ae2a2884abe22e241a8b301bf5cac3279 + url: "https://pub.dev" + source: hosted + version: "2.2.1" + path_provider_platform_interface: + dependency: transitive + description: + name: path_provider_platform_interface + sha256: "88f5779f72ba699763fa3a3b06aa4bf6de76c8e5de842cf6f29e2e06476c2334" + url: "https://pub.dev" + source: hosted + version: "2.1.2" + path_provider_windows: + dependency: transitive + description: + name: path_provider_windows + sha256: bd6f00dbd873bfb70d0761682da2b3a2c2fccc2b9e84c495821639601d81afe7 + url: "https://pub.dev" + source: hosted + version: "2.3.0" + petitparser: + dependency: transitive + description: + name: petitparser + sha256: c15605cd28af66339f8eb6fbe0e541bfe2d1b72d5825efc6598f3e0a31b9ad27 + url: "https://pub.dev" + source: hosted + version: "6.0.2" + platform: + dependency: transitive + description: + name: platform + sha256: "5d6b1b0036a5f331ebc77c850ebc8506cbc1e9416c27e59b439f917a902a4984" + url: "https://pub.dev" + source: hosted + version: "3.1.6" + plugin_platform_interface: + dependency: transitive + description: + name: plugin_platform_interface + sha256: "4820fbfdb9478b1ebae27888254d445073732dae3d6ea81f0b7e06d5dedc3f02" + url: "https://pub.dev" + source: hosted + version: "2.1.8" + pool: + dependency: transitive + description: + name: pool + sha256: "20fe868b6314b322ea036ba325e6fc0711a22948856475e2c2b6306e8ab39c2a" + url: "https://pub.dev" + source: hosted + version: "1.5.1" + protobuf: + dependency: transitive + description: + name: protobuf + sha256: "68645b24e0716782e58948f8467fd42a880f255096a821f9e7d0ec625b00c84d" + url: "https://pub.dev" + source: hosted + version: "3.1.0" + provider: + dependency: transitive + description: + name: provider + sha256: c8a055ee5ce3fd98d6fc872478b03823ffdb448699c6ebdbbc71d59b596fd48c + url: "https://pub.dev" + source: hosted + version: "6.1.2" + pub_semver: + dependency: transitive + description: + name: pub_semver + sha256: "40d3ab1bbd474c4c2328c91e3a7df8c6dd629b79ece4c4bd04bee496a224fb0c" + url: "https://pub.dev" + source: hosted + version: "2.1.4" + pubspec_parse: + dependency: transitive + description: + name: pubspec_parse + sha256: c799b721d79eb6ee6fa56f00c04b472dcd44a30d258fac2174a6ec57302678f8 + url: "https://pub.dev" + source: hosted + version: "1.3.0" + recase: + dependency: transitive + description: + name: recase + sha256: e4eb4ec2dcdee52dcf99cb4ceabaffc631d7424ee55e56f280bc039737f89213 + url: "https://pub.dev" + source: hosted + version: "4.1.0" + retrofit: + dependency: "direct main" + description: + name: retrofit + sha256: "3c9885ef3dbc5dc4b3fb0a40c972ab52e4dad04d52dac9bba24dfa76cf100451" + url: "https://pub.dev" + source: hosted + version: "4.4.1" + retrofit_generator: + dependency: "direct dev" + description: + name: retrofit_generator + sha256: f76fdb2b66854690d5a332e7364d7561fc9dc2b3c924d7956ab8070495e21f6a + url: "https://pub.dev" + source: hosted + version: "9.1.5" + shared_preferences: + dependency: "direct main" + description: + name: shared_preferences + sha256: "95f9997ca1fb9799d494d0cb2a780fd7be075818d59f00c43832ed112b158a82" + url: "https://pub.dev" + source: hosted + version: "2.3.3" + shared_preferences_android: + dependency: transitive + description: + name: shared_preferences_android + sha256: "3b9febd815c9ca29c9e3520d50ec32f49157711e143b7a4ca039eb87e8ade5ab" + url: "https://pub.dev" + source: hosted + version: "2.3.3" + shared_preferences_foundation: + dependency: transitive + description: + name: shared_preferences_foundation + sha256: "07e050c7cd39bad516f8d64c455f04508d09df104be326d8c02551590a0d513d" + url: "https://pub.dev" + source: hosted + version: "2.5.3" + shared_preferences_linux: + dependency: transitive + description: + name: shared_preferences_linux + sha256: "580abfd40f415611503cae30adf626e6656dfb2f0cee8f465ece7b6defb40f2f" + url: "https://pub.dev" + source: hosted + version: "2.4.1" + shared_preferences_platform_interface: + dependency: transitive + description: + name: shared_preferences_platform_interface + sha256: "57cbf196c486bc2cf1f02b85784932c6094376284b3ad5779d1b1c6c6a816b80" + url: "https://pub.dev" + source: hosted + version: "2.4.1" + shared_preferences_web: + dependency: transitive + description: + name: shared_preferences_web + sha256: d2ca4132d3946fec2184261726b355836a82c33d7d5b67af32692aff18a4684e + url: "https://pub.dev" + source: hosted + version: "2.4.2" + shared_preferences_windows: + dependency: transitive + description: + name: shared_preferences_windows + sha256: "94ef0f72b2d71bc3e700e025db3710911bd51a71cefb65cc609dd0d9a982e3c1" + url: "https://pub.dev" + source: hosted + version: "2.4.1" + shelf: + dependency: transitive + description: + name: shelf + sha256: ad29c505aee705f41a4d8963641f91ac4cee3c8fad5947e033390a7bd8180fa4 + url: "https://pub.dev" + source: hosted + version: "1.4.1" + shelf_packages_handler: + dependency: transitive + description: + name: shelf_packages_handler + sha256: "89f967eca29607c933ba9571d838be31d67f53f6e4ee15147d5dc2934fee1b1e" + url: "https://pub.dev" + source: hosted + version: "3.0.2" + shelf_static: + dependency: transitive + description: + name: shelf_static + sha256: c87c3875f91262785dade62d135760c2c69cb217ac759485334c5857ad89f6e3 + url: "https://pub.dev" + source: hosted + version: "1.1.3" + shelf_web_socket: + dependency: transitive + description: + name: shelf_web_socket + sha256: cc36c297b52866d203dbf9332263c94becc2fe0ceaa9681d07b6ef9807023b67 + url: "https://pub.dev" + source: hosted + version: "2.0.1" + sky_engine: + dependency: transitive + description: flutter + source: sdk + version: "0.0.99" + source_gen: + dependency: transitive + description: + name: source_gen + sha256: "14658ba5f669685cd3d63701d01b31ea748310f7ab854e471962670abcf57832" + url: "https://pub.dev" + source: hosted + version: "1.5.0" + source_gen_test: + dependency: transitive + description: + name: source_gen_test + sha256: ba9ec63c8f4f4d91021e5e09dd8259dc3bdfbd13cd027d91d761201542bc4a1f + url: "https://pub.dev" + source: hosted + version: "1.1.0" + source_helper: + dependency: transitive + description: + name: source_helper + sha256: "6adebc0006c37dd63fe05bca0a929b99f06402fc95aa35bf36d67f5c06de01fd" + url: "https://pub.dev" + source: hosted + version: "1.3.4" + source_map_stack_trace: + dependency: transitive + description: + name: source_map_stack_trace + sha256: c0713a43e323c3302c2abe2a1cc89aa057a387101ebd280371d6a6c9fa68516b + url: "https://pub.dev" + source: hosted + version: "2.1.2" + source_maps: + dependency: transitive + description: + name: source_maps + sha256: "708b3f6b97248e5781f493b765c3337db11c5d2c81c3094f10904bfa8004c703" + url: "https://pub.dev" + source: hosted + version: "0.10.12" + source_span: + dependency: transitive + description: + name: source_span + sha256: "53e943d4206a5e30df338fd4c6e7a077e02254531b138a15aec3bd143c1a8b3c" + url: "https://pub.dev" + source: hosted + version: "1.10.0" + stack_trace: + dependency: transitive + description: + name: stack_trace + sha256: "73713990125a6d93122541237550ee3352a2d84baad52d375a4cad2eb9b7ce0b" + url: "https://pub.dev" + source: hosted + version: "1.11.1" + stream_channel: + dependency: transitive + description: + name: stream_channel + sha256: ba2aa5d8cc609d96bbb2899c28934f9e1af5cddbd60a827822ea467161eb54e7 + url: "https://pub.dev" + source: hosted + version: "2.1.2" + stream_transform: + dependency: transitive + description: + name: stream_transform + sha256: "14a00e794c7c11aa145a170587321aedce29769c08d7f58b1d141da75e3b1c6f" + url: "https://pub.dev" + source: hosted + version: "2.1.0" + string_scanner: + dependency: transitive + description: + name: string_scanner + sha256: "556692adab6cfa87322a115640c11f13cb77b3f076ddcc5d6ae3c20242bedcde" + url: "https://pub.dev" + source: hosted + version: "1.2.0" + term_glyph: + dependency: transitive + description: + name: term_glyph + sha256: a29248a84fbb7c79282b40b8c72a1209db169a2e0542bce341da992fe1bc7e84 + url: "https://pub.dev" + source: hosted + version: "1.2.1" + test: + dependency: transitive + description: + name: test + sha256: "7ee44229615f8f642b68120165ae4c2a75fe77ae2065b1e55ae4711f6cf0899e" + url: "https://pub.dev" + source: hosted + version: "1.25.7" + test_api: + dependency: transitive + description: + name: test_api + sha256: "5b8a98dafc4d5c4c9c72d8b31ab2b23fc13422348d2997120294d3bac86b4ddb" + url: "https://pub.dev" + source: hosted + version: "0.7.2" + test_core: + dependency: transitive + description: + name: test_core + sha256: "55ea5a652e38a1dfb32943a7973f3681a60f872f8c3a05a14664ad54ef9c6696" + url: "https://pub.dev" + source: hosted + version: "0.6.4" + theme_tailor: + dependency: "direct dev" + description: + name: theme_tailor + sha256: "176c88b37f56996c2dc7b9e426a2db6fd66f95e1454288f7205ea4faa9380a3a" + url: "https://pub.dev" + source: hosted + version: "3.0.1" + theme_tailor_annotation: + dependency: "direct main" + description: + name: theme_tailor_annotation + sha256: "2990264653b700c7eece3557a5fe5f999cdcd32981aed67023a66004943db08d" + url: "https://pub.dev" + source: hosted + version: "3.0.1" + time: + dependency: transitive + description: + name: time + sha256: "370572cf5d1e58adcb3e354c47515da3f7469dac3a95b447117e728e7be6f461" + url: "https://pub.dev" + source: hosted + version: "2.1.5" + timing: + dependency: transitive + description: + name: timing + sha256: "70a3b636575d4163c477e6de42f247a23b315ae20e86442bebe32d3cabf61c32" + url: "https://pub.dev" + source: hosted + version: "1.0.1" + typed_data: + dependency: transitive + description: + name: typed_data + sha256: f9049c039ebfeb4cf7a7104a675823cd72dba8297f264b6637062516699fa006 + url: "https://pub.dev" + source: hosted + version: "1.4.0" + value_layout_builder: + dependency: transitive + description: + name: value_layout_builder + sha256: c02511ea91ca5c643b514a33a38fa52536f74aa939ec367d02938b5ede6807fa + url: "https://pub.dev" + source: hosted + version: "0.4.0" + vector_graphics: + dependency: transitive + description: + name: vector_graphics + sha256: "27d5fefe86fb9aace4a9f8375b56b3c292b64d8c04510df230f849850d912cb7" + url: "https://pub.dev" + source: hosted + version: "1.1.15" + vector_graphics_codec: + dependency: transitive + description: + name: vector_graphics_codec + sha256: "2430b973a4ca3c4dbc9999b62b8c719a160100dcbae5c819bae0cacce32c9cdb" + url: "https://pub.dev" + source: hosted + version: "1.1.12" + vector_graphics_compiler: + dependency: transitive + description: + name: vector_graphics_compiler + sha256: "1b4b9e706a10294258727674a340ae0d6e64a7231980f9f9a3d12e4b42407aad" + url: "https://pub.dev" + source: hosted + version: "1.1.16" + vector_math: + dependency: transitive + description: + name: vector_math + sha256: "80b3257d1492ce4d091729e3a67a60407d227c27241d6927be0130c98e741803" + url: "https://pub.dev" + source: hosted + version: "2.1.4" + vm_service: + dependency: transitive + description: + name: vm_service + sha256: "5c5f338a667b4c644744b661f309fb8080bb94b18a7e91ef1dbd343bed00ed6d" + url: "https://pub.dev" + source: hosted + version: "14.2.5" + watcher: + dependency: transitive + description: + name: watcher + sha256: "3d2ad6751b3c16cf07c7fca317a1413b3f26530319181b37e3b9039b84fc01d8" + url: "https://pub.dev" + source: hosted + version: "1.1.0" + web: + dependency: transitive + description: + name: web + sha256: cd3543bd5798f6ad290ea73d210f423502e71900302dde696f8bff84bf89a1cb + url: "https://pub.dev" + source: hosted + version: "1.1.0" + web_socket: + dependency: transitive + description: + name: web_socket + sha256: "3c12d96c0c9a4eec095246debcea7b86c0324f22df69893d538fcc6f1b8cce83" + url: "https://pub.dev" + source: hosted + version: "0.1.6" + web_socket_channel: + dependency: transitive + description: + name: web_socket_channel + sha256: "9f187088ed104edd8662ca07af4b124465893caf063ba29758f97af57e61da8f" + url: "https://pub.dev" + source: hosted + version: "3.0.1" + webkit_inspection_protocol: + dependency: transitive + description: + name: webkit_inspection_protocol + sha256: "87d3f2333bb240704cd3f1c6b5b7acd8a10e7f0bc28c28dcf14e782014f4a572" + url: "https://pub.dev" + source: hosted + version: "1.2.1" + win32: + dependency: transitive + description: + name: win32 + sha256: "84ba388638ed7a8cb3445a320c8273136ab2631cd5f2c57888335504ddab1bc2" + url: "https://pub.dev" + source: hosted + version: "5.8.0" + win32_registry: + dependency: transitive + description: + name: win32_registry + sha256: "21ec76dfc731550fd3e2ce7a33a9ea90b828fdf19a5c3bcf556fa992cfa99852" + url: "https://pub.dev" + source: hosted + version: "1.1.5" + xdg_directories: + dependency: transitive + description: + name: xdg_directories + sha256: "7a3f37b05d989967cdddcbb571f1ea834867ae2faa29725fd085180e0883aa15" + url: "https://pub.dev" + source: hosted + version: "1.1.0" + xml: + dependency: transitive + description: + name: xml + sha256: b015a8ad1c488f66851d762d3090a21c600e479dc75e68328c52774040cf9226 + url: "https://pub.dev" + source: hosted + version: "6.5.0" + yaml: + dependency: transitive + description: + name: yaml + sha256: "75769501ea3489fca56601ff33454fe45507ea3bfb014161abc3b43ae25989d5" + url: "https://pub.dev" + source: hosted + version: "3.1.2" +sdks: + dart: ">=3.5.4 <4.0.0" + flutter: ">=3.24.0" diff --git a/pubspec.yaml b/pubspec.yaml index bb878bb..afee99b 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -3,10 +3,10 @@ description: A new Flutter application. publish_to: "none" # Private package, prevent accidental publishing -version: 1.0.0+1 +version: 0.0.1+1 environment: - sdk: ^3.0.0 + sdk: ^3.5.4 dependencies: flutter: @@ -14,24 +14,18 @@ dependencies: # UI & Design cupertino_icons: ^1.0.8 - flutter_svg: 2.0.9 # ⚠️ Change with caution (reason: nstack) - lottie: 3.0.0 # ⚠️ Change with caution (reason: nstack -> http) + flutter_svg: ^2.0.16 + lottie: ^3.1.3 flutter_sticky_header: ^0.7.0 auto_size_text: ^3.0.0 theme_tailor_annotation: ^3.0.1 - # Localization - nstack: - git: - url: https://github.com/nstack-io/flutter-sdk.git - ref: v0.5.1 - # Networking & API dio: ^5.7.0 retrofit: ^4.4.1 # State Management, Dependency Injection, Navigation - get_it: ^8.0.1 + get_it: ^8.0.2 injectable: ^2.5.0 flutter_bloc: ^8.1.6 auto_route: ^9.2.2 @@ -41,12 +35,12 @@ dependencies: json_annotation: ^4.9.0 # Device & App Info - device_info_plus: ^11.1.0 - package_info_plus: ^8.1.0 + device_info_plus: ^11.1.1 + package_info_plus: ^8.1.1 # Persistence & Storage flutter_secure_storage: ^9.2.2 - shared_preferences: ^2.3.2 + shared_preferences: ^2.3.3 dev_dependencies: # Testing @@ -56,11 +50,11 @@ dev_dependencies: # Code Generation build_runner: ^2.4.13 freezed: ^2.5.7 - json_serializable: ^6.8.0 + json_serializable: ^6.9.0 theme_tailor: ^3.0.1 auto_route_generator: ^9.0.0 injectable_generator: ^2.6.2 - retrofit_generator: ^9.1.3 + retrofit_generator: ^9.1.5 # Linting & Code Quality monstarlab_lints: ^1.0.4 pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy