Commit Graph

33 Commits

Author SHA1 Message Date
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 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 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 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 64bc9997ad fix(prisma): explicitly drop Product_ownerId_fkey before NOT NULL 2026-05-02 19:43:00 +02:00
Nils-Johan Gynther e0c5fb67b9 fix(prisma): drop owner FK before making ownerId NOT NULL 2026-05-02 19:40:50 +02:00
Nils-Johan Gynther aab0a19d1c fix(prisma): make owner FK migration resilient on MariaDB 2026-05-02 19:22:53 +02:00
Nils-Johan Gynther b272ab9faf fix(prisma): delete RecipeIngredient rows before ownerless Product cleanup 2026-05-02 19:22:30 +02:00
Nils-Johan Gynther 4e568b4d2e feat(migration): enforce ownerId requirement in Product table
- Removed all products without an owner to maintain data integrity.
- Updated ownerId column to be non-nullable.
- Modified foreign key constraint for ownerId to use ON DELETE CASCADE.
2026-05-02 19:05:33 +02:00
Nils-Johan Gynther ec24f49836 feat(categories): add new categories for Kondis & fika and Kaffebröd, and Te & choklad 2026-05-02 17:44:01 +02:00
Nils-Johan Gynther 1604751b65 feat(receipt-import): add rule-based category suggestion logic for items
feat(migrations): add new categories for lactose-free products and allergy options
2026-05-02 16:42:33 +02:00
Nils-Johan Gynther f9dc55d42c feat(migrations): add admin-controlled toggle for recipe sharing in User table 2026-05-02 09:27:50 +02:00
Nils-Johan Gynther 9ee061d5f3 feat: add isPrivate field to Product model and implement private product creation and retrieval 2026-05-01 02:29:38 +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 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 976a72612e feat(inventory): add origin field to InventoryItem and update related DTOs and services 2026-04-19 15:11:35 +02:00
Nils-Johan Gynther 054a19ed7c MAJOR UPPDATE: "First Ai"
feat: add AI categorization for products and enhance user management

- Integrated AI service for category suggestions in receipt import and product management.
- Added premium subscription feature for users with corresponding API endpoints.
- Implemented admin interface for managing pending product suggestions.
- Enhanced user management to include premium status and corresponding UI updates.
- Updated database schema to support new fields for premium status and product status.
2026-04-19 10:34:21 +02:00
Nils-Johan Gynther c5ccef2313 feat(auth): implement role-based access control and user management features 2026-04-18 09:34:22 +02:00
Nils-Johan Gynther fd188a3f95 refactor(inventory): remove unused fields from InventoryItem and update related DTOs 2026-04-18 09:01:14 +02:00
Nils-Johan Gynther 21dc06829a feat(meal-plan): add servings field to MealPlanEntry and update related functionality
feat(products): implement bulk update for product categories

feat(recipes): add servings input to WriteRecipePage and update MealPlanClient for servings management

refactor(types): enhance Product and Category types with additional properties
2026-04-17 22:50:41 +02:00
Nils-Johan Gynther cc8be88462 feat(categories): implement category management with hierarchical structure and update product association 2026-04-17 21:16:58 +02:00
Nils-Johan Gynther a9e83544c5 feat(profile): add user profile management with first and last name fields 2026-04-17 20:44:23 +02:00
Nils-Johan Gynther ce0cc6fbf0 feat(auth): implement user authentication with JWT and NextAuth
- Added user registration and login functionality with JWT authentication.
- Created auth controller, service, and module in the backend.
- Implemented user model and user products management.
- Integrated NextAuth for session management on the frontend.
- Added middleware for protecting routes and handling public access.
- Updated frontend API routes to include authorization headers.
- Enhanced recipe and user product models to support ownership and visibility.
- Created registration and login pages in the frontend.
- Added necessary types for NextAuth session management.
2026-04-17 19:57:08 +02:00
Nils-Johan Gynther 8e0aed032c feat: add servings field to Recipe model and implement inventory comparison functionality 2026-04-17 18:48:08 +02:00
Nils-Johan Gynther 2a0da005ff feat: add receiptName field to InventoryItem model and update related DTOs and service 2026-04-16 21:22:34 +02:00
Nils-Johan Gynther af88a0dc81 feat: implement receipt alias functionality with CRUD operations and integrate with receipt import 2026-04-16 21:06:16 +02:00
Nils-Johan Gynther 1b82b02021 feat: implement meal planning feature with CRUD operations and UI integration 2026-04-16 19:37:09 +02:00
Nils-Johan Gynther 3f4fe890df feat: update Recipe model to use TEXT type for description and add seed data for products 2026-04-16 18:53:48 +02:00
Nils-Johan Gynther 47d1aafd9e feat: PantryItem (Baslager) - tabell, backend-modul och frontend-sida 2026-04-15 22:06:40 +02:00
Nils-Johan Gynther 5f6b9261f2 fix: ersätt partial migration med fullständigt initial schema 2026-04-15 21:32:16 +02:00
Nils-Johan Gynther 73bf5193c4 feat: add image handling to recipes
- Implemented image downloading and optimization in QuickImportService.
- Added imageUrl field to CreateRecipeDto for recipe creation.
- Created an endpoint in RecipesController to update recipe images.
- Enhanced RecipesService to handle image URL updates and optimizations.
- Updated Docker Compose to mount a volume for recipe images.
- Refactored frontend to display images in recipe grids and detail views.
- Added a new utility function for downloading and optimizing images.
- Created a new API route for handling image uploads.
- Introduced RecipeGrid component for better recipe display.
- Updated RecipeDetailClient to manage image updates and display.
- Added migration for new imageUrl column in the Recipe table.
2026-04-15 19:46:50 +02:00