- Implemented tests to verify the functionality of the ImageOptimizerService.
- Tests cover optimization of supported image formats, handling of unsupported files, and cleanup of temporary files.
- Added functionality to store optimized images onto disk using a storage service.
Refactor the file handling logic in UpdateProductRequest by extracting
picture and PDF resolution into separate methods for better readability
and maintainability.
Updated ProductPolicy and RecipePolicy to accept ProductDto in addition to Product. This change enhances the flexibility of the policies by allowing DTOs to be used for authorization checks.
refactor(provider): simplify service provider bindings
Refactored AppServiceProvider to simplify the binding of ProductDirectory and RecipeDirectory. Removed unnecessary dependencies and improved clarity.
feat(route): update route bindings for front-end
Changed route bindings for products and recipes to use frontProduct and frontRecipe. This improves clarity and consistency in route handling.
fix(breadcrumbs): update breadcrumb checks for DTOs
Updated breadcrumb generation to check for ProductDto and RecipeDto instead of their model counterparts. This ensures breadcrumbs function correctly with the new DTO structure.
refactor(types): remove FilePath type and update schemas
Removed the FilePath type definition and updated related schemas to use string directly. This simplifies type handling for file paths.
style(entities): standardize naming conventions
Updated naming conventions in Product and Recipe entities to use snake_case for consistency across the codebase.
feat(frontend): update product and recipe pages for new DTO structure
Modified front-end components to accommodate changes in the product and recipe data structures, ensuring compatibility with the new DTOs.
Updated the handling of nutritional values in StoreProductRequest and UpdateProductRequest
to improve clarity and maintainability. The logic for processing nutritional values has been
centralized into a dedicated method, enhancing code readability.
- Added actions for creating, updating, deleting, force deleting, and restoring recipes.
- Introduced input classes for each action to handle data validation and transfer.
- Implemented DTOs for recipes to facilitate data transfer between layers.
- Updated RecipeController to utilize new actions and input classes.
- Enhanced recipe model to manage picture URLs and storage.
- Updated frontend components to handle new data structures and display images correctly.
Add new DTOs for handling product and category data structures.
These DTOs facilitate data transfer and serialization for products and categories.
refactor(controller): update ProductController to use executor pattern
Refactor ProductController to utilize an executor for handling product creation,
updating, and deletion, improving code organization and maintainability.
refactor(controller): update RecipeController to use executor pattern
Refactor RecipeController to utilize an executor for handling recipe creation,
improving code organization and maintainability.
chore: remove MediaController
Remove MediaController as it is no longer needed in the application.
feat(request): enhance StoreProductRequest and UpdateProductRequest
Enhance StoreProductRequest and UpdateProductRequest to include methods for
transforming request data into input objects for actions.
chore: add ActionExecutorService for executing actions and queries
Introduce ActionExecutorService to handle the execution of actions and queries
with logging and transaction management.
chore(deps): update composer dependencies
Update composer dependencies to include webmozart/assert for improved type assertions.
Updated the UpdateProductRequest and UpdateRecipeRequest to use built-in validation rules for file uploads, removing custom validation methods for pictures and PDFs. This change streamlines the validation process and improves code readability.
refactor(helper): remove unused FileStorageHelper
Deleted the FileStorageHelper class as it was no longer needed, simplifying the codebase.
refactor(toolbox): clean up ToolboxHelper methods
Removed unused methods and simplified existing ones in ToolboxHelper to enhance maintainability.
feat(models): add translation search method to Product and Recipe
Added a new method `whereTranslationLike` to both Product and Recipe models to facilitate searching translations.
chore(config): add storage service prefix configuration
Introduced a new configuration option for storage service prefix to allow customization of media paths.
fix(validation): add file existence validation message
Added a French translation for the file existence validation message to improve user feedback.
feat(routes): add media route for file access
Implemented a new route for accessing media files through a MediaController, enhancing file management capabilities.
- Added data preparation for validation in StoreProductRequest and StoreRecipeRequest.
- Updated validation rules to include minimum lengths for various fields.
- Integrated limits for word counting in SimpleString, SimpleTextarea, and SimpleWysiwyg components.
- Added description field to Product model and database migration.
- Updated StoreProductRequest validation rules for description.
- Modified product factory and seeder to include description.
- Enhanced product forms and show pages to display description.
- Implemented Create and Edit pages for products with forms.
- Added validation and permissions handling for product actions.
- Introduced new product model and related types for better structure.
- Enhanced sidebar registry to remove auth dependency for link resolution.
- Updated routes to handle precognitive requests for product forms.