Commit Graph

546 Commits

Author SHA1 Message Date
Nils-Johan Gynther ca8987d9e4 Add comprehensive documentation for Flutter frontend migration and backend review
Test Suite / test (24.15.0) (push) Has been cancelled
- Introduced user guide for Flutter frontend in README.md, detailing user flows and recent improvements.
- Created next steps roadmap for Flutter migration in next_steps_flutter.md, outlining current tasks and priorities.
- Developed technical description for Flutter frontend in teknisk_beskrivning_flutter.md, covering architecture and security status.
- Removed outdated migration documentation for Prisma P3009 and added recovery steps for failed migrations in migrering-MSI.md.
- Established a release checklist for product launches in produktlansering.md, ensuring security and stability measures are met.
- Formulated a systematic backend review and optimization plan in review_backend.md, focusing on reducing complexity and improving performance.
2026-05-10 00:28:59 +02:00
Nils-Johan Gynther 1709bb1dad Implement admin inventory management features including CRUD operations, merging, filtering, sorting, previewing, and security enhancements. Update documentation and add comprehensive test coverage for security and validation.
Test Suite / test (24.15.0) (push) Has been cancelled
2026-05-10 00:20:25 +02:00
Nils-Johan Gynther 65137b41fb feat: implement alias strategy for receipt import with user-scoped and global fallback, enhance validation and normalization, and update UI components
Test Suite / test (24.15.0) (push) Has been cancelled
2026-05-09 23:41:42 +02:00
Nils-Johan Gynther b342de906e feat: implement alias strategy for receipt import with user-scoped and global fallback aliases
Test Suite / test (24.15.0) (push) Has been cancelled
2026-05-09 23:31:17 +02:00
Nils-Johan Gynther 7aa93ff5d0 refactor: streamline error handling by removing redundant SnackBar calls in AdminProductsPanel
Test Suite / test (24.15.0) (push) Has been cancelled
2026-05-09 23:26:56 +02:00
Nils-Johan Gynther ae6d7aad1a feat: implement product rename and merge endpoints for users and admins, optimize receipt import UI, and enhance deploy script
Test Suite / test (24.15.0) (push) Has been cancelled
2026-05-09 23:20:52 +02:00
Nils-Johan Gynther 14a1107466 feat: add private product management endpoints for updating canonical names and merging products
Test Suite / test (24.15.0) (push) Has been cancelled
2026-05-09 23:19:28 +02:00
Nils-Johan Gynther 8e276a34fe feat: enhance deploy script with new flag for checking base image updates and improve usage instructions
Test Suite / test (24.15.0) (push) Has been cancelled
2026-05-09 23:09:36 +02:00
Nils-Johan Gynther da193b26ef feat: enhance deploy script with improved flag handling and usage instructions
Test Suite / test (24.15.0) (push) Has been cancelled
2026-05-09 23:05:02 +02:00
Nils-Johan Gynther 9f3f5c1cef feat: add canonical name endpoint and update product renaming functionality in admin panel
Test Suite / test (24.15.0) (push) Has been cancelled
2026-05-09 22:58:23 +02:00
Nils-Johan Gynther 3ff27701fc feat: document receipt import cleanup and optimization session with detailed changes and verification steps
Test Suite / test (24.15.0) (push) Has been cancelled
2026-05-09 16:41:25 +02:00
Nils-Johan Gynther d2f651fa2c feat: enhance error handling in prepareMatchingContext with logging for category loading issues
Test Suite / test (24.15.0) (push) Has been cancelled
2026-05-09 16:07:22 +02:00
Nils-Johan Gynther b121000bf7 feat: enhance receipt import matching logic to include category path resolution and improve edit handling
Test Suite / test (24.15.0) (push) Has been cancelled
2026-05-09 16:06:19 +02:00
Nils-Johan Gynther b09ea28ff0 feat: remove deprecated refreshCategories endpoint and refactor matching logic for improved clarity and performance
Test Suite / test (24.15.0) (push) Has been cancelled
2026-05-09 15:38:08 +02:00
Nils-Johan Gynther 4d5c55f459 feat: deprecate matchProducts and enrichWithAiCategories methods, update categorization logic with unified matcher
Test Suite / test (24.15.0) (push) Has been cancelled
2026-05-09 15:27:24 +02:00
Nils-Johan Gynther 000a28bea4 feat: finalize category seeding process and remove obsolete product categorization logic
Test Suite / test (24.15.0) (push) Has been cancelled
2026-05-09 15:20:16 +02:00
Nils-Johan Gynther 97e7b09bcd feat: simplify receipt import matching logic and enhance trace logging
Test Suite / test (24.15.0) (push) Has been cancelled
2026-05-09 15:17:00 +02:00
Nils-Johan Gynther 1966a92a87 feat: implement unified matching and categorization for receipt items with detailed debug information
Test Suite / test (24.15.0) (push) Has been cancelled
2026-05-09 15:11:06 +02:00
Nils-Johan Gynther 8354abbc8f feat: implement save receipt functionality with transaction handling and DTOs
Test Suite / test (24.15.0) (push) Has been cancelled
2026-05-09 15:04:23 +02:00
Nils-Johan Gynther 853e853e5e feat: enhance ingredient matching rules with keyword matching and add chocolate detection
Test Suite / test (24.15.0) (push) Has been cancelled
2026-05-08 17:36:06 +02:00
Nils-Johan Gynther bd78b1de81 feat: add "See receipt" button and preview modal in receipt import flow
Test Suite / test (24.15.0) (push) Has been cancelled
2026-05-08 16:56:03 +02:00
Nils-Johan Gynther e3bbd7d99e feat: replace ListView with SingleChildScrollView for better layout in admin panels
Test Suite / test (24.15.0) (push) Has been cancelled
2026-05-08 16:31:09 +02:00
Nils-Johan Gynther a5273158e2 fix: correct type casting in onChanged callback in ProductPickerField
Test Suite / test (24.15.0) (push) Has been cancelled
2026-05-08 15:33:20 +02:00
Nils-Johan Gynther fc366547c7 feat: clean up imports and fix minor formatting issues in various files
Test Suite / test (24.15.0) (push) Has been cancelled
2026-05-08 15:31:30 +02:00
Nils-Johan Gynther 84dbe8490d feat: remove unused methods and improve widget styling in various screens
Test Suite / test (24.15.0) (push) Has been cancelled
2026-05-08 15:28:54 +02:00
Nils-Johan Gynther 5019bf6acf feat: add import for ProductOption in receipt_import_tab
Test Suite / test (24.15.0) (push) Has been cancelled
2026-05-08 14:33:58 +02:00
Nils-Johan Gynther 148fee8859 feat: update service worker version in flutter_bootstrap.js
Test Suite / test (24.15.0) (push) Has been cancelled
2026-05-08 14:25:00 +02:00
Nils-Johan Gynther 5aadc34d4a feat: remove unused import for product_picker_field in receipt_import_tab
Test Suite / test (24.15.0) (push) Has been cancelled
2026-05-08 12:58:55 +02:00
Nils-Johan Gynther 0873fa42bb feat: Refactor routing and navigation structure with StatefulShellRoute
Test Suite / test (24.15.0) (push) Has been cancelled
- Introduced a new function `_shellBranchIndexForPath` to determine the index of the shell branch based on the path.
- Replaced `ShellRoute` with `StatefulShellRoute.indexedStack` for better state management during navigation.
- Updated `AppShell` to handle navigation path changes and integrate with the new routing structure.
- Organized routes into `StatefulShellBranch` for better modularity and clarity.
- Enhanced admin panel functionality with improved alias management and UI updates.
- Added new methods in `ReceiptImportSessionNotifier` for managing selected items and edits more efficiently.
- Improved UI components in receipt import and admin panels for better performance and user experience.
- Added PageStorageKeys to various ListViews to maintain scroll positions across navigation.
- Documented performance goals and profiling strategies in a new PERFORMANCE.md file.
2026-05-08 12:51:38 +02:00
Nils-Johan Gynther 73309cb110 feat: implement alias strategy for receipt import with matchedVia tracking
Test Suite / test (24.15.0) (push) Has been cancelled
2026-05-07 14:15:45 +02:00
Nils-Johan Gynther d92272e554 feat: implement matchedVia tracking for receipt items and enhance user alias management
Test Suite / test (24.15.0) (push) Has been cancelled
2026-05-07 13:57:41 +02:00
Nils-Johan Gynther f7446cc2df feat: enhance security with user-scoped inventory and IDOR protection
Test Suite / test (24.15.0) (push) Has been cancelled
2026-05-07 12:00:57 +02:00
Nils-Johan Gynther 17893824d5 feat: implement user-specific inventory management with security checks
Test Suite / test (24.15.0) (push) Has been cancelled
2026-05-07 11:58:00 +02:00
Nils-Johan Gynther 4affb03504 Refactor code structure for improved readability and maintainability 2026-05-07 11:57:54 +02:00
Nils-Johan Gynther 943e449c97 docs: update security status in technical documentation for backend and Flutter frontend
Test Suite / test (24.15.0) (push) Has been cancelled
- Added detailed security status section in backend documentation, outlining implemented security features and remaining risks as of 2026-05-07.
- Included security features implemented in Flutter, emphasizing auth-gating, token storage, and limitations regarding web security.
2026-05-07 10:48:35 +02:00
Nils-Johan Gynther 5b1aec6449 fix: ensure new unit is not null when confirming unit change
Test Suite / test (24.15.0) (push) Has been cancelled
2026-05-07 10:23:44 +02:00
Nils-Johan Gynther a68a0ca86f feat: add unit mapping functionality
Test Suite / test (24.15.0) (push) Has been cancelled
- Added new API path for unit mappings in `api_paths.dart`.
- Implemented `upsertUnitMapping` method in `ImportRepository` to handle unit mapping creation.
- Updated `ReceiptImportTab` to learn and save unit mappings during receipt import.
- Created DTO for unit mapping with validation in `create-unit-mapping.dto.ts`.
- Added SQL migration for `UnitMapping` table creation with necessary constraints.
2026-05-07 10:00:42 +02:00
Nils-Johan Gynther 26823fbf35 feat: add unitMappings field to User and Product models
Test Suite / test (24.15.0) (push) Has been cancelled
2026-05-07 08:12:42 +02:00
Nils-Johan Gynther 7d63b615b6 feat: add unit mapping functionality and confirmation dialog for unit changes in import process
Test Suite / test (24.15.0) (push) Has been cancelled
2026-05-07 08:10:56 +02:00
Nils-Johan Gynther a19bc1279a fix: update l1Category method to return 'Övrigt' for empty categoryPath
Test Suite / test (24.15.0) (push) Has been cancelled
2026-05-07 07:56:49 +02:00
Nils-Johan Gynther 7f7e4c24a8 feat: enhance inventory management with category and location filters
Test Suite / test (24.15.0) (push) Has been cancelled
2026-05-07 07:51:47 +02:00
Nils-Johan Gynther e7251fd94c feat: add location field to PantryItem model and update related functionality
Test Suite / test (24.15.0) (push) Has been cancelled
Co-authored-by: Copilot <copilot@github.com>
2026-05-06 11:54:56 +02:00
Nils-Johan Gynther 63d249b0a8 feat: update findByOwner method to exclude private filter for active products
Test Suite / test (24.15.0) (push) Has been cancelled
2026-05-06 10:48:56 +02:00
Nils-Johan Gynther 7a8f441390 feat: update API endpoint for product listing and simplify manual product creation UI
Test Suite / test (24.15.0) (push) Has been cancelled
2026-05-06 10:43:55 +02:00
Nils-Johan Gynther ea44c4fe7a feat: update inventory queries to filter by product owner for improved user-specific analysis
Test Suite / test (24.15.0) (push) Has been cancelled
2026-05-06 10:34:04 +02:00
Nils-Johan Gynther 7f15f8028b feat: update inventory queries to filter by userId for accurate recipe analysis
Test Suite / test (24.15.0) (push) Has been cancelled
2026-05-06 10:32:35 +02:00
Nils-Johan Gynther 3e27423f24 feat: update migration documentation and remove obsolete file; enhance Prisma recovery instructions
Test Suite / test (24.15.0) (push) Has been cancelled
2026-05-06 09:42:45 +02:00
Nils-Johan Gynther 8200045438 feat: enhance user-scoped AI functionality with admin toggles and premium features
Test Suite / test (24.15.0) (push) Has been cancelled
2026-05-06 09:29:16 +02:00
Nils-Johan Gynther 04b1fc3024 feat: add rematch functionality for recipe ingredients and enhance inventory management
Test Suite / test (24.15.0) (push) Has been cancelled
- Added a new API path for rematching recipe ingredients in `api_paths.dart`.
- Implemented a manual product creation dialog in `inventory_screen.dart` to allow users to create new products directly.
- Integrated the rematch functionality in `recipe_repository.dart` to handle rematching of recipe ingredients.
- Updated the recipe detail screen to include a button for triggering the rematch process.
- Introduced a new `RecipeMatchingService` in the backend to handle ingredient matching logic.
- Added database migration to include `aiEngineEnabled` column in the User table.

Co-authored-by: Copilot <copilot@github.com>
2026-05-06 09:20:31 +02:00
Nils-Johan Gynther 9fe85a719c feat: implement recipe analysis service and data models
Test Suite / test (24.15.0) (push) Has been cancelled
- Added RecipeAnalysisService to handle recipe ingredient analysis, including methods for checking ingredient availability and calculating quantities.
- Introduced new TypeScript definitions for recipe analysis results, including ingredient status and summary.
- Created corresponding Dart models for recipe analysis, including RecipeIngredientAnalysis, RecipeAnalysisSummary, and RecipeShoppingCandidate.
- Updated Flutter UI to reflect changes in ingredient availability status.
- Fixed color opacity issue in recipe image card.
2026-05-06 07:54:03 +02:00