- + {order.orderNumber} diff --git a/apps/storefront/src/components/sections/hompepage/category/CategorySection.tsx b/apps/storefront/src/components/sections/hompepage/category/CategorySection.tsx index fc73f6a..16dbed0 100644 --- a/apps/storefront/src/components/sections/hompepage/category/CategorySection.tsx +++ b/apps/storefront/src/components/sections/hompepage/category/CategorySection.tsx @@ -91,7 +91,7 @@ export function CategorySection() { Promise<{ success: boolean }>; isCancelling: boolean; + requestReturn: (orderId: string) => Promise<{ success: boolean }>; + isRequestingReturn: boolean; reorderItems: ( items: OrderLineItem[], sessionId?: string, @@ -17,9 +19,11 @@ export function useOrderActions(): { isReordering: boolean; } { const [isCancelling, setIsCancelling] = useState(false); + const [isRequestingReturn, setIsRequestingReturn] = useState(false); const [isReordering, setIsReordering] = useState(false); const cancelMutation = useMutation(api.orders.cancel); + const requestReturnMutation = useMutation(api.orders.requestReturn); const addItemMutation = useMutation(api.carts.addItem); const router = useRouter(); @@ -35,6 +39,18 @@ export function useOrderActions(): { } } + async function requestReturn(orderId: string): Promise<{ success: boolean }> { + setIsRequestingReturn(true); + try { + await requestReturnMutation({ id: orderId as Id<"orders"> }); + return { success: true }; + } catch { + return { success: false }; + } finally { + setIsRequestingReturn(false); + } + } + async function reorderItems( items: OrderLineItem[], sessionId?: string, @@ -63,5 +79,5 @@ export function useOrderActions(): { return { added, skipped }; } - return { cancelOrder, isCancelling, reorderItems, isReordering }; + return { cancelOrder, isCancelling, requestReturn, isRequestingReturn, reorderItems, isReordering }; } diff --git a/apps/storefront/src/middleware.ts b/apps/storefront/src/proxy.ts similarity index 100% rename from apps/storefront/src/middleware.ts rename to apps/storefront/src/proxy.ts diff --git a/apps/storefront/tsconfig.json b/apps/storefront/tsconfig.json index e62af4d..ba97867 100644 --- a/apps/storefront/tsconfig.json +++ b/apps/storefront/tsconfig.json @@ -15,7 +15,7 @@ "moduleResolution": "node", "resolveJsonModule": true, "isolatedModules": true, - "jsx": "preserve", + "jsx": "react-jsx", "plugins": [ { "name": "next" @@ -24,14 +24,17 @@ "target": "ES2017", "baseUrl": ".", "paths": { - "@/*": ["./src/*"] + "@/*": [ + "./src/*" + ] } }, "include": [ "next-env.d.ts", ".next/types/**/*.ts", "**/*.ts", - "**/*.tsx" + "**/*.tsx", + ".next/dev/types/**/*.ts" ], "exclude": [ "node_modules"