Commit Graph

99 Commits

Author SHA1 Message Date
Nils-Johan Gynther d5b360fd62 Refactor logging in IcaRecipeParser and QuickImportService to use NestJS Logger
- Updated IcaRecipeParser to replace console.log statements with Logger for better logging practices.
- Enhanced QuickImportService with Logger for consistent logging and error handling.
- Changed quantity validation in CreateRecipeIngredientDto and CreateRecipeDto to allow zero.
- Removed CanonicalNameForm and NameForm components from the frontend.
- Updated EditProductForm to use a select dropdown for categories instead of a text input.
- Added validation for product name, canonical name, and category length in product update action.
- Refactored unit options into a separate file for better reusability across components.
- Removed unused API fetching functions and inventory types to clean up the codebase.
2026-04-16 18:18:27 +02:00
Nils-Johan Gynther 3f6d32ae44 docs: uppdatera README/TEKNISK_BESKRIVNING och lagg till NEXT_STEPS 2026-04-15 22:19:37 +02:00
Nils-Johan Gynther 719c291e36 fix: TS2322 null not assignable to string | undefined i products.service 2026-04-15 22:13:37 +02:00
Nils-Johan Gynther 940c8b52ee fix: saknad POST /api/recipes proxy och revalidatePath for admin/products 2026-04-15 22:11:57 +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 65ec74ac7d feat: redigeringsformulär för produkter i admin med namn, canonical name, kategori och mjukradering 2026-04-15 22:02:58 +02:00
Nils-Johan Gynther 3d279bb78c data: lägg till matvaror_sverige.csv och seed_products.sql 2026-04-15 21:46:01 +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 ed732ea4e6 fix: använd NEXT_PUBLIC_API_URL_INTERNAL i quick-import-proxy 2026-04-15 21:25:20 +02:00
Nils-Johan Gynther 2932e58531 fix: nedgradera Prisma till 6.12.0, Prisma 7 kräver driver adapters för MySQL 2026-04-15 21:20:35 +02:00
Nils-Johan Gynther 1844368cf8 fix: återställ url i schema.prisma, ta bort ogiltig datasourceUrl från constructor 2026-04-15 21:14:48 +02:00
Nils-Johan Gynther d5cb8d27e0 fix: add type assertion for datasourceUrl in PrismaService constructor 2026-04-15 21:10:44 +02:00
Nils-Johan Gynther 3bfd7640cb fix: remove global npm installation from Dockerfiles 2026-04-15 21:08:07 +02:00
Nils-Johan Gynther 649f76fa72 fix: update PrismaService constructor to include datasourceUrl configuration 2026-04-15 21:07:00 +02:00
Nils-Johan Gynther 67aa89ba7e chore: add npm install command in Dockerfiles for both backend and frontend 2026-04-15 21:05:22 +02:00
Nils-Johan Gynther ba6ac036b5 fix: remove datasource configuration from PrismaService constructor 2026-04-15 21:03:24 +02:00
Nils-Johan Gynther 5d80dfef6f fix: update PrismaService constructor to use correct datasource format and include prisma.config.ts in Dockerfile 2026-04-15 21:01:49 +02:00
Nils-Johan Gynther c9ef587eb1 feat: add Prisma configuration file and update Dockerfile to include it 2026-04-15 20:53:45 +02:00
Nils-Johan Gynther 944a670a84 chore: städa .env, uppdatera Prisma till 7.7.0 2026-04-15 20:46:36 +02:00
Nils-Johan Gynther 9ae263e77e chore: add .env for server bottstrap 2026-04-15 20:21:33 +02:00
Nils-Johan Gynther 2e7c849687 fix: update Dockerfile CMD to retry Prisma migration on failure 2026-04-15 20:15:08 +02:00
Nils-Johan Gynther 29d4cef688 feat: update Docker Compose configuration and add deployment script 2026-04-15 20:06:20 +02:00
Nils-Johan Gynther 8efd9f6e1e fix: update parameter type in POST function to use Promise for id 2026-04-15 19:53:15 +02:00
Nils-Johan Gynther c20391bf2a refactor: simplify EditRecipeRedirect component by removing unused code 2026-04-15 19:51:51 +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
Nils-Johan Gynther a2038ffbec feat: Enhance recipe import functionality with support for PDF, image, and URL inputs 2026-04-14 22:48:57 +02:00
Nils-Johan Gynther ea5f97ab82 chore: Add missing image and pull_policy configurations for frontend and API services in Docker Compose 2026-04-14 22:44:25 +02:00
Nils-Johan Gynther f50b4901f5 feat: Add health checks for frontend, API, and database services in Docker Compose 2026-04-14 22:39:06 +02:00
Nils-Johan Gynther a118a2ff11 chore: Update Dockerfile paths and add .dockerignore files for backend and frontend 2026-04-14 22:35:10 +02:00
Nils-Johan Gynther 4a241c1cb9 refactor: Remove PDF parser and quick import controller/service implementations 2026-04-14 22:28:37 +02:00
Nils-Johan Gynther 1ce1318bf5 feat: Implement PDF recipe parser and quick import service for file and URL inputs 2026-04-14 22:24:28 +02:00
Nils-Johan Gynther e90fd2d670 feat: Enhance README and technical description with quick-import module details and parser architecture 2026-04-12 17:09:40 +02:00
Nils-Johan Gynther 8fe9a7a4d2 fix: Adjust grid layout for review step to maintain consistent column structure 2026-04-12 11:12:45 +02:00
Nils-Johan Gynther b795bbfc71 feat: Update ingredient units and improve layout responsiveness across various components 2026-04-12 11:08:15 +02:00
Nils-Johan Gynther 3d4994f24d feat: Enhance ingredient parsing to support mixed fractions and add description extraction in recipe parsers 2026-04-12 10:50:59 +02:00
Nils-Johan Gynther 9ca7fcce96 feat: Add optional note field to ingredient parsing and update related components 2026-04-12 10:30:05 +02:00
Nils-Johan Gynther 03727ee3c5 feat: Implement auto-parsing of markdown in WriteRecipePage with error handling 2026-04-12 10:06:51 +02:00
Nils-Johan Gynther a028b8ce3a feat: Enhance recipeToMarkdown to include source URL in output 2026-04-12 09:47:09 +02:00
Nils-Johan Gynther 0e18f382c8 fix: Add type annotations for better type safety in recipe parsers 2026-04-12 09:41:35 +02:00
Nils-Johan Gynther 4e2616fe2e feat: Implement site-specific recipe parsers for ICA and generic fallback 2026-04-12 09:39:32 +02:00
Nils-Johan Gynther 2c92e07d39 fix: Update backend URL in QuickImportProxy to use the correct API endpoint 2026-04-12 09:29:15 +02:00
Nils-Johan Gynther 4d3873c9e4 refactor: Clean up and standardize JSX structure in MergePreviewForm component 2026-04-12 09:08:24 +02:00
Nils-Johan Gynther a76fc5ecc5 fix: Correct structure of expandable section in MergePreviewForm component 2026-04-12 09:01:42 +02:00
Nils-Johan Gynther c814fbdddf refactor: Enhance logging in QuickImportProxy for better debugging 2026-04-12 08:48:27 +02:00
Nils-Johan Gynther ea307e6a6c feat: Add expandable section for creating products with integrated product form 2026-04-12 08:29:28 +02:00
Nils-Johan Gynther f84ee39197 refactor: Simplify Dockerfile by removing recipe-document-converter build stage and update package.json to remove its dependency 2026-04-12 08:15:55 +02:00
Nils-Johan Gynther 730168d237 refactor: Update Dockerfile to copy built recipe-document-converter for proper dependency resolution 2026-04-12 08:06:50 +02:00
Nils-Johan Gynther ddfb126b98 refactor: Adjust Dockerfile to copy recipe-document-converter before npm install for proper dependency resolution 2026-04-12 07:59:28 +02:00
Nils-Johan Gynther 23ced5e8ee fix: Export QuickImportResult interface for proper type usage in QuickImportController 2026-04-12 07:44:02 +02:00
Nils-Johan Gynther 4f183df711 feat: Implement quick import feature for recipes
- Added QuickImportController and QuickImportService to handle recipe imports from URLs and file paths.
- Created QuickImportModule to encapsulate the quick import functionality.
- Developed frontend ImportFilePage for users to upload files or enter URLs for recipe import.
- Integrated API proxy to communicate with the backend for quick import requests.
- Implemented WriteRecipePage for users to manually input recipes with Markdown support.
- Added page routing for the new import and write recipe functionalities.
2026-04-12 07:41:18 +02:00