mirror of
http://88.130.71.182:3000/BlitTech/badoHair_fe.git
synced 2026-06-13 11:13:57 +00:00
Fix product stock, booking actions, settings, reservation UX, nav and category filter
This commit is contained in:
@@ -1,18 +1,25 @@
|
||||
"use client";
|
||||
|
||||
import { useState, useEffect } from "react";
|
||||
import { Suspense, useState, useEffect } from "react";
|
||||
import { useLanguage } from "@/contexts/LanguageContext";
|
||||
import { useSearchParams, useRouter } from "next/navigation";
|
||||
import { categories } from "@/data/products";
|
||||
import type { Product } from "@/data/products";
|
||||
import { listProducts } from "@/lib/api/products";
|
||||
import ProductCard from "@/components/ProductCard";
|
||||
|
||||
export default function Shop() {
|
||||
function ShopContent() {
|
||||
const { t } = useLanguage();
|
||||
const [selectedCategory, setSelectedCategory] = useState("all");
|
||||
const searchParams = useSearchParams();
|
||||
const router = useRouter();
|
||||
const selectedCategory = searchParams.get("category") || "all";
|
||||
const [products, setProducts] = useState<Product[]>([]);
|
||||
const [loading, setLoading] = useState(true);
|
||||
|
||||
const setCategory = (cat: string) => {
|
||||
router.push(cat === "all" ? "/boutique" : `/boutique?category=${cat}`);
|
||||
};
|
||||
|
||||
useEffect(() => {
|
||||
setLoading(true);
|
||||
listProducts({
|
||||
@@ -31,7 +38,7 @@ export default function Shop() {
|
||||
|
||||
<div className="flex flex-wrap justify-center gap-2 mb-10">
|
||||
<button
|
||||
onClick={() => setSelectedCategory("all")}
|
||||
onClick={() => setCategory("all")}
|
||||
className={`px-4 py-2 rounded-full text-sm transition-colors ${
|
||||
selectedCategory === "all"
|
||||
? "bg-primary text-primary-foreground"
|
||||
@@ -43,7 +50,7 @@ export default function Shop() {
|
||||
{categories.map((cat) => (
|
||||
<button
|
||||
key={cat.id}
|
||||
onClick={() => setSelectedCategory(cat.id)}
|
||||
onClick={() => setCategory(cat.id)}
|
||||
className={`px-4 py-2 rounded-full text-sm transition-colors cursor-pointer ${
|
||||
selectedCategory === cat.id
|
||||
? "bg-primary text-primary-foreground"
|
||||
@@ -74,3 +81,11 @@ export default function Shop() {
|
||||
</div>
|
||||
);
|
||||
}
|
||||
|
||||
export default function Shop() {
|
||||
return (
|
||||
<Suspense>
|
||||
<ShopContent />
|
||||
</Suspense>
|
||||
);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user