Commit Graph

625 Commits

Author SHA1 Message Date
Nils-Johan Gynther db1128ceaf Refactor code structure for improved readability and maintainability
Co-authored-by: Copilot <copilot@github.com>
2026-04-23 21:14:46 +02:00
Nils-Johan Gynther cd4274575e feat: Add receipt import functionality with file upload and parsing
- Implemented receipt file upload in ImportRepository with multipart request handling.
- Created ParsedReceiptItem model for parsed receipt data.
- Added ReceiptImportTab for user interface to upload and review receipts.
- Updated ImportScreen to include the new ReceiptImportTab alongside RecipeImportTab.
- Introduced flutter_bootstrap.js and index.html for web app initialization.
- Added wimp.wasm and flutter.js for enhanced web performance and capabilities.
2026-04-23 19:24:53 +02:00
Nils-Johan Gynther 108c633d0e refactor(tests): clean up profile_repository_test and enhance error handling in API calls 2026-04-23 19:06:29 +02:00
Nils-Johan Gynther 41aba1799d refactor(tests): reorder import statements for consistency in profile_repository_test 2026-04-23 18:52:54 +02:00
Nils-Johan Gynther 910c3a58dc refactor(tests): update profile_repository_test to include MockRef for improved testing 2026-04-23 18:50:24 +02:00
Nils-Johan Gynther 5644101b68 refactor(profile): update ProfileRepository to include MockRef for improved testing and enhance error handling in API calls 2026-04-23 18:01:13 +02:00
Nils-Johan Gynther 2256ddb29b refactor(profile): update ProfileRepository to include Ref for improved state management and enhance error handling in tests 2026-04-23 17:55:17 +02:00
Nils-Johan Gynther aefc8804ad Add unit tests for ProfileRepository and implement new shaders
- Created `NativeAssetsManifest.json` and added font and shader assets for unit tests.
- Implemented `ink_sparkle.frag` and `stretch_effect.frag` shaders for visual effects.
- Developed unit tests for `ProfileRepository` to validate API interactions for fetching and updating user profiles.
- Utilized Mockito for mocking API client responses in tests.
2026-04-23 17:50:48 +02:00
Nils-Johan Gynther b92ada1f30 refactor(inventory): update build methods to include WidgetRef for improved state management
Co-authored-by: Copilot <copilot@github.com>
2026-04-23 17:11:55 +02:00
Nils-Johan Gynther ad2a6a2fab refactor(inventory): simplify delete item logic and remove unnecessary parameters
Co-authored-by: Copilot <copilot@github.com>
2026-04-23 17:05:12 +02:00
Nils-Johan Gynther a5c13a4b3c Remove outdated Flutter migration documents and add new technical descriptions and profile repository implementation
- Deleted `next_steps_flutter.md` and `teknisk_beskrivning_flutter.md` files as they were outdated.
- Added new `next_steps_flutter.md` and `teknisk_beskrivning_flutter.md` files with updated migration plans and technical descriptions for the Flutter frontend.
- Implemented `profile_repository.dart` to handle profile data retrieval and updates using the API.

Co-authored-by: Copilot <copilot@github.com>
2026-04-23 16:40:02 +02:00
Nils-Johan Gynther 6312fd5ce1 refactor(import): remove console logs and streamline session storage handling 2026-04-23 09:45:18 +02:00
Nils-Johan Gynther 2411906682 feat(docs): update NEXT_STEPS, README, and technical descriptions with recent improvements and known limitations
Co-authored-by: Copilot <copilot@github.com>
2026-04-22 22:19:04 +02:00
Nils-Johan Gynther 71bc162015 feat(import): enhance image URL extraction and logging during recipe import 2026-04-22 22:08:05 +02:00
Nils-Johan Gynther 28606d7abd feat(import): enhance image URL handling and error reporting during recipe import 2026-04-22 22:00:47 +02:00
Nils-Johan Gynther 2edd6d003d feat(import): store and manage image URL in session storage during recipe import 2026-04-22 21:55:24 +02:00
Nils-Johan Gynther c8510b431f fix(router): adjust type check for extra parameter in navigation
fix(import): ensure correct typing for passing markdown and imageUrl
fix(recipes): delete local image file on recipe deletion to avoid orphan files
2026-04-22 21:51:16 +02:00
Nils-Johan Gynther 29beb3a85f feat(import): enhance recipe creation by passing both markdown and image URL from import 2026-04-22 21:38:05 +02:00
Nils-Johan Gynther 856efcfa79 fix(import): enhance error handling with localized messages for unauthorized and forbidden responses 2026-04-22 21:33:03 +02:00
Nils-Johan Gynther 81117fbcb7 feat(import): implement recipe import functionality with file and URL support
Co-authored-by: Copilot <copilot@github.com>
2026-04-22 21:31:25 +02:00
Nils-Johan Gynther 8ebf119d39 fix(inventory): update adjustment value to use integer for swipe actions
Co-authored-by: Copilot <copilot@github.com>
2026-04-22 21:21:40 +02:00
Nils-Johan Gynther 14d782aeec feat(inventory): implement swipeable inventory tile and product picker field 2026-04-22 21:19:36 +02:00
Nils-Johan Gynther b04a82aaf8 fix(meal_plan): update quantity types to use double for consistency 2026-04-22 20:10:26 +02:00
Nils-Johan Gynther e495a4b38e feat: add meal planning feature with API integration
- Introduced MealPlanApiPaths for handling meal plan related API endpoints.
- Added MealPlanScreen for displaying and managing meal plans.
- Implemented MealPlanRepository for fetching and updating meal plan data.
- Created data models: MealPlanEntry, MealPlanRecipe, InventoryCompareItem, ShoppingItem, and MealPlanDashboard.
- Integrated meal plan functionality into the app router and UI.
- Updated localization files for meal plan related strings in English and Swedish.
- Added state management for meal plan using Riverpod.
2026-04-22 19:51:33 +02:00
Nils-Johan Gynther b8627d0b7f feat(inventory): add inventory preview functionality and related models 2026-04-22 19:41:45 +02:00
Nils-Johan Gynther b31af6181c Refactor next_steps_flutter and teknisk_beskrivning_flutter for user-scope implementation
- Updated next_steps_flutter.md to reflect completed tasks for user-scoped PantryItem and MealPlanEntry, including API contract publication and migration application.
- Enhanced the prioritization plan with clear completion dates and added localization tasks.
- Expanded teknisk_beskrivning_flutter.md with details on inventory filtering, sorting, and user-scoped backend changes, including migration notes and localization setup.
- Improved error handling documentation and localization usage guidelines.
2026-04-22 19:37:12 +02:00
Nils-Johan Gynther ac3a8e96c0 feat(localization): add localization generation step and update l10n configuration 2026-04-22 19:23:08 +02:00
Nils-Johan Gynther 2e117718a7 feat(localization): Implement Swedish localization and error messages
- Added localization support for Swedish and English languages.
- Integrated localized strings for user messages in the API error mapper.
- Updated UI components to use localized strings for labels and messages.
- Ensured all error messages are context-aware and utilize the localization framework.
- Created regression test to prevent common ASCII fallbacks in Swedish UI text.
2026-04-22 19:16:23 +02:00
Nils-Johan Gynther 37472f6c43 refactor: remove unused load function and related logic in PantryView component 2026-04-22 18:54:04 +02:00
Nils-Johan Gynther fbd7b3a745 fix: add missing index for productId in PantryItem table migration 2026-04-22 18:50:20 +02:00
Nils-Johan Gynther 7e311eddff fix: correct comment syntax for unique constraint in MealPlanEntry model 2026-04-22 18:41:38 +02:00
Nils-Johan Gynther 4482129fca feat: make pantry items and meal plan entries user-scoped; update related services and controllers 2026-04-22 18:38:04 +02:00
Nils-Johan Gynther 44b4e7ad73 feat: update pantry and meal plan to be user-specific; outline required backend changes 2026-04-22 18:17:41 +02:00
Nils-Johan Gynther 07ed164112 feat: enhance inventory and pantry features with filtering, sorting, and error handling improvements 2026-04-22 18:14:19 +02:00
Nils-Johan Gynther dd05fed279 feat: add pantry management features including repository, providers, and UI integration 2026-04-22 10:45:37 +02:00
Nils-Johan Gynther f11364b73e fix: remove unused image handling in Caddyfile and ensure recipe images are served correctly 2026-04-22 10:34:06 +02:00
Nils-Johan Gynther 33eb5fbdb2 fix: improve imageUrl handling in Recipe model to avoid null or empty values 2026-04-22 10:31:57 +02:00
Nils-Johan Gynther c163821bad feat: refactor API paths for authentication, inventory, and recipes; add contract tests for repositories 2026-04-22 10:21:07 +02:00
Nils-Johan Gynther 655adf66ae feat: implement dropdowns for unit and location selection in inventory forms; add product sorting functionality 2026-04-22 10:04:57 +02:00
Nils-Johan Gynther 296a89b165 feat: enhance EmptyStateView layout with positioned action button for better UX 2026-04-22 08:17:40 +02:00
Nils-Johan Gynther 4b146483fe fix: update message parameter to title in EmptyStateView for better clarity 2026-04-22 08:16:21 +02:00
Nils-Johan Gynther 75d993f83a refactor: Clean up ApiClient code structure and improve readability 2026-04-22 08:14:32 +02:00
Nils-Johan Gynther 967121113e feat: Add inventory management feature with CRUD operations
- Implemented inventory screen to display items with details.
- Added create, edit, and consume inventory screens for managing items.
- Introduced consumption history screen to track item usage.
- Created inventory repository and providers for API interactions.
- Enhanced routing to include inventory-related paths.
- Added necessary models for inventory items and consumption history.
- Integrated error handling and loading states for better user experience.
2026-04-22 08:12:37 +02:00
Nils-Johan Gynther af1a3cd6eb feat: update routing and authentication details in technical documentation; enhance API and recipes sections 2026-04-22 08:01:49 +02:00
Nils-Johan Gynther e50781dccf feat: implement patch method in ApiClient and update recipe update logic in RecipeRepository 2026-04-22 07:58:42 +02:00
Nils-Johan Gynther ed4e18dc31 feat: add recipe creation, editing, and detail screens; enhance recipe model with instructions and ingredients 2026-04-22 07:53:25 +02:00
Nils-Johan Gynther 2ea18503ef feat: enhance routing logic and improve login screen validation; add guarded API call for error handling 2026-04-22 07:35:34 +02:00
Nils-Johan Gynther e8de1d3625 feat: implement API client with JSON handling and error mapping; enhance routing and state management in app shell 2026-04-22 07:29:21 +02:00
Nils-Johan Gynther 82ba334f2d fix: update migration steps and technical description for clarity 2026-04-21 22:34:21 +02:00
Nils-Johan Gynther 056d5a8a1b feat: add profile screen and update routing; enhance login validation and logout functionality 2026-04-21 22:30:35 +02:00