Commit Graph

130 Commits

Author SHA1 Message Date
Nils-Johan Gynther 38613e0cf3 fix(auth): expose both id and userId in JWT validate result 2026-05-02 20:11:24 +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 5842646e77 feat(products): include ownerId in product creation and enforce its requirement 2026-05-02 19:12:26 +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 41ae7d4d06 feat(recipes): add recipe visibility and sharing features
- Implemented functionality to set recipe visibility (public/private) with appropriate checks for user permissions.
- Added ability to share recipes with other users, including validation for existing users and permissions.
- Introduced new DTOs for setting visibility and sharing recipes.
- Updated RecipesController and RecipesService to handle new endpoints for visibility and sharing.
- Enhanced inventory preview to consider user permissions and shared recipes.
- Updated front-end to support new sharing and visibility features, including UI changes for recipe detail and admin user management.
2026-05-02 09:19:59 +02:00
Nils-Johan Gynther f67bf8baef feat: update AI categorization model to 'mistral-tiny' for improved performance 2026-05-02 08:39:52 +02:00
Nils-Johan Gynther d64f34f4ff feat: enhance product matching logic with improved scoring and tokenization 2026-05-02 00:05:09 +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 bfe9cb46fa refactor: remove unused parser files and update ParsedReceiptItem model with additional fields 2026-05-01 01:16:10 +02:00
Nils-Johan Gynther 32358a4e54 fix: update Blob creation for file uploads to use Uint8Array for better buffer handling 2026-04-30 20:15:41 +02:00
Nils-Johan Gynther 8910e6817d fix: update Blob creation for file uploads to handle buffer offsets correctly 2026-04-30 20:12:10 +02:00
Nils-Johan Gynther 797241f262 feat: migrate import functionality to microservice-importer for quick-import, receipt parsing, and markdown parsing 2026-04-30 20:00:32 +02:00
Nils-Johan Gynther 046791b63e feat: allow application/octet-stream MIME type for PDF uploads in receipt import 2026-04-30 13:38:23 +02:00
Nils-Johan Gynther cee62397fc fix: jwt-auth.guard handleRequest wrong signature causing null.switchToHttp crash 2026-04-30 13:34:29 +02:00
Nils-Johan Gynther 0e525b0d17 fix: receipt-import 201/octet-stream, quick-import types, exception filter guard 2026-04-30 13:25:02 +02:00
Nils-Johan Gynther 1def3c588e feat: refactor QuickImportService to remove ReceiptParser and streamline import logic for PDF and image uploads
Co-authored-by: Copilot <copilot@github.com>
2026-04-30 13:18:41 +02:00
Nils-Johan Gynther 57fe168543 feat: allow application/octet-stream MIME type for PDF uploads in receipt import
Co-authored-by: Copilot <copilot@github.com>
2026-04-30 13:04:23 +02:00
Nils-Johan Gynther 87372f0d15 feat: enhance JWT authentication and quick import functionality with logging for better traceability
Co-authored-by: Copilot <copilot@github.com>
2026-04-30 12:19:21 +02:00
Nils-Johan Gynther df1da1da2b feat: implement ReceiptParser for handling receipt imports from PDF and image formats
Co-authored-by: Copilot <copilot@github.com>
2026-04-30 11:47:42 +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 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 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 2acf66e4c4 feat: enhance pantry management with new features and UI improvements 2026-04-21 16:09:33 +02:00
Nils-Johan Gynther 81b63b3fdb feat: implement inventory and pantry management views with CRUD functionality and user-friendly interfaces 2026-04-21 14:43:18 +02:00
Nils-Johan Gynther 864c84d2e5 feat: implement AI categorization for products and add premium access guard 2026-04-21 13:55:12 +02:00
Nils-Johan Gynther 87eab4d0ca feat: add functionality for managing deleted products, including restoration and permanent deletion 2026-04-21 13:30:44 +02:00
Nils-Johan Gynther 4074b850cb refactor: simplify unit conversion tests by importing utility functions directly 2026-04-21 10:52:49 +02:00
Nils-Johan Gynther 5345b9e55e feat: implement unit conversion utilities and centralize unit definitions for consistency across frontend and backend 2026-04-21 10:51:07 +02:00
Nils-Johan Gynther e370062b5c feat: enhance CORS configuration and implement throttling for API endpoints; add admin role checks in controllers 2026-04-21 08:17:44 +02:00
Nils-Johan Gynther 7748ad311f feat: implement security headers and rate limiting; update environment variables and documentation 2026-04-21 08:06:21 +02:00
Nils-Johan Gynther c1d51c771e feat: add helmet middleware for security and implement Content Security Policy in Next.js configuration 2026-04-21 07:44:04 +02:00
Nils-Johan Gynther 2b6fe71e53 feat(products): enhance logging in create method for better request tracking 2026-04-19 17:10:04 +02:00
Nils-Johan Gynther 3ad634f348 feat(auth): add detailed logging in JwtAuthGuard and JwtStrategy for better debugging
feat(products): enhance logging in create method to track requests and user details
2026-04-19 17:08:14 +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 39b91d8c87 feat(products): add public access to findAll and findAllTags endpoints
feat(ai): enhance AI admin client with status messages for API key configuration
refactor(api): remove authorization check from products route
2026-04-19 11:42:10 +02:00
Nils-Johan Gynther 045f160655 feat(api): implement retry logic for Mistral API calls in receipt import and AI services 2026-04-19 11:31:05 +02:00
Nils-Johan Gynther cd14e59ff8 fix(receipt-import): update receipt import model to 'mistral-small-2603' 2026-04-19 11:10:14 +02:00
Nils-Johan Gynther f3db5ba51a feat(ai): implement AI models management and configuration in admin panel 2026-04-19 11:07:15 +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 94462b60c9 fix(controller): update users controller route to remove 'api' prefix 2026-04-18 15:02:38 +02:00
Nils-Johan Gynther a67f9cb2c1 fix(controller): add missing closing brace in UsersController class 2026-04-18 14:51:17 +02:00