import { Router } from "express"
import {
    createProductConfigurator,
    deleteProductConfigurator,
    getProductConfigurator,
    listProductConfigurators,
    updateProductConfigurator,
} from "./product-configurator.controller"
import { protect } from "../../middlewares/auth.middleware"
import { attachShop } from "../../middlewares/shop.middleware"
import { requireAdminOrPosRoles } from "../../middlewares/authz.middleware"

const router = Router()

router.use(protect)
router.use(attachShop)

router.get("/", listProductConfigurators)
router.get("/:id", getProductConfigurator)
router.post("/", requireAdminOrPosRoles("MANAGER"), createProductConfigurator)
router.patch("/:id", requireAdminOrPosRoles("MANAGER"), updateProductConfigurator)
router.delete("/:id", requireAdminOrPosRoles("MANAGER"), deleteProductConfigurator)

export default router

