Integrates the `toastification` package to provide clear and non-intrusive user feedback for operations like product not found.
Refactors the reception scan page UI by extracting reusable widgets for the scan information text, the scan box, and the flash button. This improves code organization and readability.
Switches the data source for reception details from API calls to the local ObjectBox database, improving performance and enabling offline access for this specific data.
Corrects the display of scanned product information to show the barcode instead of a generic ID.
Updates `go_router` to version 16.0.0.
Replaces the mocked login flow with an actual API call to an authentication endpoint.
Updates the `AuthStruct` schema to align with the new API response, including fields for `accessToken`, `dbName`, `uid`, `name`, and `username`.
Introduces a `UserConnectedProvider` service for managing the storage and retrieval of authenticated user details, centralizing this logic and replacing prior direct local storage methods.
Integrates the new authentication process and user storage service into the login, reception, and profile pages for a unified experience.
Adjusts the splash screen duration to reflect the real-time nature of the authentication check.
Enables viewing and editing existing product details by passing the product ID to the form page. The form now loads and displays the product data based on the provided ID.
Adds a delete button to each item in the product list, allowing users to remove products directly from the list view.
Updates navigation from the product list and scanner pages to pass the product ID when navigating to the product form.
Includes minor code style changes by applying the `sort_constructors_first` lint rule and updates dependencies (`flutter_lints`, `lints`).
Integrates Objectbox database initialization into the main application startup process.
Adds `path` and `path_provider` as direct dependencies, which are typically required for Objectbox to locate the database directory.
Adds the ObjectBox database dependency for local data persistence.
Updates the Product ID field type from nullable String to non-nullable int with a default value of 0 to align with ObjectBox's integer ID requirements. Includes necessary generated files for plugin registration and model serialization.
Replaces hardcoded colors and standard Theme.of(context) accesses with a custom AppTheme.
Introduces distinct light and dark themes and persists the selected theme mode using shared_preferences.
Integrates the theme into the main app structure and applies it to various components and pages.
Adds google_fonts dependency for theme typography.