Implemented promocode application feature in the cart, allowing users to select and apply discounts during checkout. Updated GraphQL mutation, cart logic, and UI to support this functionality.
- Enhanced `cart.vue` with a new promocode selection section, including dropdown and styling.
- Modified `buyOrder` mutation to accept `promocodeUuid` and `forceBalance` parameters.
- Updated translations (`en-gb.json` and `ru-ru.json`) to include promocode-related strings.
Improves user experience by enabling discount application directly in the cart. No breaking changes.
Introduced `useExactProducts` composable to fetch precise product details for guest cart and wishlist items. Improved cookie-based cart and wishlist fallback handling for unauthenticated users. Updated related components and composables for better synchronization and type safety.
- Added `useExactProducts` composable leveraging the `GET_EXACT_PRODUCTS` query.
- Enhanced `wishlist.vue` and `cart.vue` for reactive updates on guest state changes.
- Improved product synchronization logic in `useOrderSync` and `useWishlistSync`.
- Updated translations and fixed minor typos in localization files.
Improves user experience by ensuring consistent product details, even for guests. No breaking changes.
Introduced `GET_FEEDBACKS` GraphQL query and `useFeedbacks` composable to enable retrieval and management of feedback data. Enhanced type safety with new TypeScript interfaces for feedback responses. Updated `Product` fragment to reuse `Feedback` fragment for better modularity.
- Added `feedbacks.ts` query file with `GET_FEEDBACKS`.
- Created `useFeedbacks.ts` composable for reactive feedback fetching and state management.
- Updated GraphQL fragments and `products.fragment.ts` to include `Feedback` reusability.
- Enhanced API type definitions with `IFeedbacksResponse` for response handling.
This improves modularity, type safety, and provides a reusable approach for feedback data integration. No breaking changes.