From bc987c273969ca3bf8175d3e6af0a1774549da3e Mon Sep 17 00:00:00 2001 From: Mamalizz Date: Thu, 13 Mar 2025 01:36:40 +0330 Subject: [PATCH] added use add cart item --- .../composables/api/orders/useAddCartItem.ts | 36 +++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 frontend/composables/api/orders/useAddCartItem.ts diff --git a/frontend/composables/api/orders/useAddCartItem.ts b/frontend/composables/api/orders/useAddCartItem.ts new file mode 100644 index 0000000..90265de --- /dev/null +++ b/frontend/composables/api/orders/useAddCartItem.ts @@ -0,0 +1,36 @@ +// imports + +import { useMutation } from "@tanstack/vue-query"; +import { API_ENDPOINTS } from "~/constants"; + +// types + +export type AddCartItemRequest = { + id: number; + quantity: number; +}; + +const useAddCartItem = () => { + // state + + const { $axios: axios } = useNuxtApp(); + + // methods + + const handleAddCartItem = async (params: AddCartItemRequest) => { + const { data } = await axios.post( + `${API_ENDPOINTS.orders.cart.add_one}/${params.id}`, + { + quantity: params.quantity, + } + ); + return data; + }; + + return useMutation({ + mutationFn: (itemData: AddCartItemRequest) => + handleAddCartItem(itemData), + }); +}; + +export default useAddCartItem;