winofy-front/src/lib/providers/order-detail-provider.tsx
2026-09-12 16:32:41 +03:30

42 lines
No EOL
1.1 KiB
TypeScript

"use client";
import {createContext, useContext, type ReactNode} from "react";
import type {Order, OrderGroup} from "@/types/api";
type OrderDetailContextValue = {
data: OrderGroup | null;
error: string | null;
isLoading: boolean;
};
const OrderDetailContext = createContext<OrderDetailContextValue | undefined>(undefined);
export function OrderDetailProvider({
children,
order,
error = null,
}: {
children: ReactNode;
order: OrderGroup | null;
error?: string | null;
}) {
return (
<OrderDetailContext.Provider
value={{
data: order,
error,
isLoading: false,
}}
>
{children}
</OrderDetailContext.Provider>
);
}
export function useOrderDetail() {
const ctx = useContext(OrderDetailContext);
if (ctx === undefined) {
throw new Error("useOrderDetail must be used within OrderDetailProvider");
}
return ctx;
}