Commit Graph

196 Commits

Author SHA1 Message Date
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 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 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 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 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 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 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 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 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 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 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
Nils-Johan Gynther 969dafdbc6 Refactor code structure for improved readability and maintainability
Test Suite / test (24.15.0) (push) Has been cancelled
2026-05-06 07:37:59 +02:00
Nils-Johan Gynther e4f201ea36 feat: enhance recipe ingredient model; add raw fields and optional properties for better ingredient handling
Test Suite / test (24.15.0) (push) Has been cancelled
2026-05-06 07:25:42 +02:00
Nils-Johan Gynther ce20b1dd07 feat: implement AI recipe suggestions; add endpoint and UI for generating suggestions based on inventory
Test Suite / test (24.15.0) (push) Has been cancelled
2026-05-05 14:15:28 +02:00
Nils-Johan Gynther 3ea5a4778f feat: add functionality to manually add ingredients; implement CreateIngredientDto and update RecipesController and RecipesService
Test Suite / test (24.15.0) (push) Has been cancelled
2026-05-05 13:38:23 +02:00
Nils-Johan Gynther db02f6f0fb feat: update migration script; remove IF NOT EXISTS clause for alternativeProductIds column in RecipeIngredient table
Test Suite / test (24.15.0) (push) Has been cancelled
2026-05-04 22:20:12 +02:00
Nils-Johan Gynther 2e4e2141c6 feat: update migration script; add IF NOT EXISTS clause for alternativeProductIds column in RecipeIngredient table
Test Suite / test (24.15.0) (push) Has been cancelled
2026-05-04 22:11:57 +02:00
Nils-Johan Gynther 2c8d6b69ae feat: add support for alternative ingredients; implement JSON storage and parsing logic
Test Suite / test (24.15.0) (push) Has been cancelled
2026-05-04 22:06:57 +02:00
Nils-Johan Gynther f32f69db5d feat: refactor recipe parsing logic; replace regex literals with constants for improved readability and maintainability
Test Suite / test (24.15.0) (push) Has been cancelled
2026-05-04 21:38:44 +02:00
Nils-Johan Gynther 38801f84eb feat: export ParsedIngredient and ParsedRecipe interfaces for external usage
Test Suite / test (24.15.0) (push) Has been cancelled
2026-05-04 21:35:14 +02:00
Nils-Johan Gynther b52205c8c3 feat: refactor recipe ownership logic; auto-claim ownerless recipes and ensure atomic updates for ingredients
Test Suite / test (24.15.0) (push) Has been cancelled
2026-05-04 21:33:33 +02:00
Nils-Johan Gynther b7c857732c feat: add product validation in recipe update and creation; throw BadRequestException for inactive products
Test Suite / test (24.15.0) (push) Has been cancelled
2026-05-04 21:30:51 +02:00
Nils-Johan Gynther 648e1856a1 feat: refactor recipe parsing logic; move parseRecipeMarkdown and related functions to a new utility file
Test Suite / test (24.15.0) (push) Has been cancelled
2026-05-04 21:28:06 +02:00
Nils-Johan Gynther a164b42bdc feat: update Dockerfile to ensure prisma directory is copied correctly and remove unnecessary .prisma copy
Test Suite / test (24.15.0) (push) Has been cancelled
2026-05-04 21:09:53 +02:00
Nils-Johan Gynther 8d7f01a4ad feat: add missing .prisma directory copy in Dockerfile for proper deployment
Test Suite / test (24.15.0) (push) Has been cancelled
2026-05-04 21:08:17 +02:00
Nils-Johan Gynther 293fe34710 feat: remove unnecessary prisma generate command from Dockerfile
Test Suite / test (24.15.0) (push) Has been cancelled
2026-05-04 21:03:45 +02:00
Nils-Johan Gynther 5f176ce75f feat: update Dockerfile stages for improved dependency management; add prisma to package.json and package-lock.json
Test Suite / test (24.15.0) (push) Has been cancelled
2026-05-04 21:02:15 +02:00
Nils-Johan Gynther a645d6a364 feat: refactor inventory and recipe services for improved error handling and code reuse; add systematic backend review plan
Test Suite / test (24.15.0) (push) Has been cancelled
2026-05-04 20:44:43 +02:00
Nils-Johan Gynther 64b06435cf feat: implement user-scoped receipt aliases with global fallback; enhance alias management in admin panel
Test Suite / test (24.15.0) (push) Has been cancelled
2026-05-04 19:43:13 +02:00
Nils-Johan Gynther 7c382dbf2e fix: forward 503 from importer-api as ServiceUnavailableException instead of 400
Test Suite / test (24.15.0) (push) Has been cancelled
2026-05-03 22:15:33 +02:00
nilsjohan 941c5f5915 chore: add package-lock.json and allow tracking in .gitignore for npm ci
Test Suite / test (24.15.0) (push) Has been cancelled
2026-05-03 22:03:03 +02:00
Nils-Johan Gynther dd74d8b7eb feat(docker): update Node.js version to 24.15.0 in Dockerfile and test workflow 2026-05-03 21:48:25 +02:00
Nils-Johan Gynther 5b6d44b555 feat(receipt-import): enhance receipt processing with new category rules and add unit tests
Co-authored-by: Copilot <copilot@github.com>
2026-05-03 19:55:32 +02:00
Nils-Johan Gynther a555e74201 feat(receipt-import): add function to ignore specific receipt names and filter out ignored items
Co-authored-by: Copilot <copilot@github.com>
2026-05-03 18:18:07 +02:00
Nils-Johan Gynther fa7f225ee5 feat(receipt-import): enhance bread category detection and improve session management
Co-authored-by: Copilot <copilot@github.com>
2026-05-03 16:34:15 +02:00
Nils-Johan Gynther 87eff6a37f refactor(products): remove brand field from Product model and update related DTO and service
Co-authored-by: Copilot <copilot@github.com>
2026-05-03 16:01:09 +02:00
Nils-Johan Gynther dbd8c6d849 refactor(products): remove subcategory from Product model and related queries 2026-05-03 15:54:23 +02:00