Fixes: 1) Refactor `useProducts` and `useCategorybySlug` composables for improved error handling and lazy loading; 2) Correct import path in `product-page.vue` for `useProductBySlug`; 3) Update `useLanguages` composable to set current locale from local storage; 4) Remove unused `auth.js`, `base-header.vue`, and deprecated GraphQL fragments;
Extra: Minor styling adjustments and removal of redundant console logs; Updated `package-lock.json` dependencies for version consistency.
Fixes: 1) Removed redundant import for `ValidationError` from `rest_framework.exceptions`; 2) Fixed request data handling in `confirm_password_reset` to directly use incoming data instead of serialized data;
Extra: 1) Minor adjustments to error messages for consistency; 2) Cleaned up unused variables in `confirm_password_reset`.
Fixes: 1) Resolve inconsistent variable usage in `confirm_password_reset` by replacing `data` with `serializer_data` across the method;
Extra: 1) Minor cleanup for improved clarity and maintainability.
Fixes: 1) Add conditional caching based on user permissions;
Extra: 1) Remove redundant condition on distinct values count; 2) Minor readability improvements within detail serializer logic;
Fixes: 1) Correct `serializer_class` assignments for `ProductImageViewSet`, `PromoCodeViewSet`, `PromotionViewSet`, `StockViewSet`, and `WishlistViewSet`.
Extra: 1) General code cleanup and reorganization for viewsets.
Fixes: 1) Correct mismanagement of instance and serializer in update method of viewset.
Extra: 1) Minor organizational improvement and clearer formatting in views.
Fixes: 1) Update `resolve_categories` in schema to include all categories in query.
Extra: 1) Add missing `uuid` import in `filters.py`; 2) Improve handling for null and invalid parent UUID values in `filter_parent_uuid`.
Fixes: 1) Adjust password reset serializer to use `request.data` instead of `self.request.data`; 2) Remove unnecessary language scoping from category query.
Extra: None;
Fixes: 1) Address incorrect scoping for user-based permissions; 2) Correct queryset handling for actions like "list" and "retrieve."
Extra: Refactor permission checks for clarity and maintainability; simplify conditional logic in queryset filters.
* Features: 1) Add initial storefront configuration including app naming, local storage, and supported locales; 2) Introduce global styles with variables, mixins, and modules; 3) Implement router with locale-based navigation and home page setup; 4) Add Pinia stores for authentication and cart management; 5) Provide GraphQL queries for wishlist, categories, products, orders, languages, company info, and documents; 6) Add GraphQL mutations for authentication, cart, contact, deposit, and wishlist operations; 7) Include SVG assets for eye icons; 8) Add localization file for "en-gb" with buttons, errors, and fields text;
* Merge branch 'main' into storefront
* Features: 1) Implement composables for posts, products, categories, languages, and user deposits with lazy loading and GraphQL integration; 2) Add standalone pages for blog, product, store, and profile with scoped SCSS styling; 3) Add reusable UI components including header, footer, input, button, and textarea; 4) Introduce forms for contact and deposit functionality with validation and localization support; 5) Create GraphQL fragments for users, products, categories, company, orders, languages, and wishlist for efficient data fetching;
Fixes: 1) Correct missing semicolons in Pinia store definitions for cart, company, wishlist, and auth stores; 2) Refactor GraphQL queries to include fragments for improved modularity and readability; 3) Correct error handling in composables like `usePosts` and `useLanguages`;
Extra: Enhanced App.vue to include dynamic company info and language fetching on mount; Added scoped styles for new components and pages.
Fixes: 1) Update `remove_product` model method to handle zero quantity removal; 2) Correct permission check in order product removal.
Extra: 1) Add `autocomplete_fields` for products in admin; 2) Enhance docs with bulk add/remove schemas; 3) Various code refactorings and minor tweaks for improved maintainability.
Fixes: 1) Correct default value in `recently_viewed` property to handle cache miss;
Extra: 1) Inline simplification of serializer logic for recently viewed products.
Fixes: 1) Update CODEOWNERS to replace ambiguous "@default-owner" with "@@owner"; 2) Correct assignments for docker-compose.yml, .gitignore, .dockerignore, and nginx to "@@maintainer".
Extra: Standardized ownership definitions for improved clarity and maintainability.
* Features: 1) Add initial storefront configuration including app naming, local storage, and supported locales; 2) Introduce global styles with variables, mixins, and modules; 3) Implement router with locale-based navigation and home page setup; 4) Add Pinia stores for authentication and cart management; 5) Provide GraphQL queries for wishlist, categories, products, orders, languages, company info, and documents; 6) Add GraphQL mutations for authentication, cart, contact, deposit, and wishlist operations; 7) Include SVG assets for eye icons; 8) Add localization file for "en-gb" with buttons, errors, and fields text;
Fixes: 1) Correct build key structure for Dockerfile definitions across services;
Extra: Code cleanup for consistency in unused storefront service comments;
Fixes: None;
Extra: 1) Add comments and structure to `.gitignore` for improved readability and maintainability; 2) Update placeholder comments in `docker-compose.yml` for future services.
Fixes: None;
Extra: 1) Add comments and structure to `.gitignore` for improved readability and maintainability; 2) Update placeholder comments in `docker-compose.yml` for future services.
Fixes: 1) Update `docker-compose.yml` to use `Dockerfile.app` instead of default build context;
Extra: 1) Add commented-out `storefront` service in `docker-compose.yml` for potential future use; 2) Minor cleanup and structuring of Docker setup;
Fixes: 1) Correct logic in `get_recently_viewed` method to properly handle `recently_viewed` items.
Extra: 1) Add missing import for `drf_spectacular.utils.extend_schema_field`; 2) Update method docstring for clarity; 3) Adjust typing in `get_recently_viewed` to use `List[Dict[str, Any]]`.