Commit Graph

236 Commits

Author SHA1 Message Date
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
Nils-Johan Gynther 842561d2b8 refactor(categories-service): optimize path building in findFlattened method 2026-05-03 14:11:30 +02:00
Nils-Johan Gynther 2612a64ca5 fix(receipt-import): add missing UseGuards import in receipt-import.controller.ts
Co-authored-by: Copilot <copilot@github.com>
2026-05-03 10:54:36 +02:00
Nils-Johan Gynther b2eb870ec7 feat(receipt-import): add refresh categories endpoint and UI integration
Co-authored-by: Copilot <copilot@github.com>
2026-05-03 10:48:06 +02:00
Nils-Johan Gynther d4769519c2 fix(receipt-import): correct regex for single pack extraction to handle unit formatting 2026-05-03 08:14:35 +02:00
Nils-Johan Gynther f108034742 fix(receipt-import): upgrade confidence level for next suggestion based on rule application 2026-05-02 23:36:19 +02:00
Nils-Johan Gynther b7d68afd58 chore(receipt-import): include quantity and package details in decision trace 2026-05-02 23:12:24 +02:00
Nils-Johan Gynther 5286db4385 fix(receipt-import): harden bacon signal detection with pork category fallback chain 2026-05-02 23:09:45 +02:00
Nils-Johan Gynther 4345547cbf chore(receipt-import): add decision-path tracing for category pipeline 2026-05-02 22:58:45 +02:00
Nils-Johan Gynther 60ab2465aa fix(receipt-import): add hard bacon override to pork category 2026-05-02 22:51:17 +02:00
Nils-Johan Gynther f45ec08c58 fix(receipt-import): replace invalid isNotEmpty string check 2026-05-02 22:47:07 +02:00