"use client";
import { Features, RightSide, SliderComp } from "@/components/pages/products";
import { useProductPageInfo } from "@/store/useProduct";
import { useQuery } from "@tanstack/react-query";
import httpClient from "@/request/api";
import { endPoints } from "@/request/links";
import { AlertCircle } from "lucide-react";
import { LoadingSkeleton } from "@/components/pages/products/slug/loading";
import { EmptyState } from "@/components/pages/products/slug/empty";
import { useEffect } from "react";
// Types
interface ProductImage {
id: number;
product: number;
image: string;
is_main: boolean;
order: number;
}
interface ProductDetail {
id: number;
name: string;
articular: string;
status: string;
description: string;
size: number;
price: string;
features: string[];
images: ProductImage[];
}
export default function SlugPage() {
const productZustand = useProductPageInfo((state) => state.product);
const { data: product, isLoading } = useQuery({
queryKey: ["product", productZustand.id],
queryFn: () => httpClient(endPoints.product.detail(productZustand.id)),
select: (data) => data?.data?.data as ProductDetail,
enabled: !!productZustand.id,
});
useEffect(()=>console.log("product detail: ",product))
// Loading State
if (isLoading) {
return