from django.urls import path
from producers_products.views.producers_products_views import ProducersProductsListCreateAPIView, ProducersProductsDetailAPIView, ProducersProductsPublicListAPIView, ProducersProductsSearchAPIView
from producers_products.views.flag_review import (
    ProducersProductFlagAPIView, ProducersProductUnflagAPIView,
    ProducersProductFlaggedListAPIView
)
from producers_products.views.review import ProductsReviewDetailAPIView, ProductsReviewListCreateAPIView, ProductsReviewPublicListAPIView
urlpatterns = [
    path("producers/products/public/", ProducersProductsPublicListAPIView.as_view(), name="producers-products-public-list"), 
    path("producers/products/search/", ProducersProductsSearchAPIView.as_view(), name="producers-products-search"),
    path("producers/products/", ProducersProductsListCreateAPIView.as_view(), name="producers-products-list-create"),
    path("producers/products/<int:pk>/", ProducersProductsDetailAPIView.as_view(), name="producers-products-detail"),

    path("producers/products/reviews/public/", ProductsReviewPublicListAPIView.as_view(), name="products-review-public-list"), 
    path("producers/products/reviews/", ProductsReviewListCreateAPIView.as_view(), name="products-review-list-create"),
    path("producers/products/reviews/<int:pk>/", ProductsReviewDetailAPIView.as_view(), name="products-review-detail"),

    path("producers/products/<int:pk>/flag/", ProducersProductFlagAPIView.as_view(), name="producers-product-flag"),
    path("producers/products/<int:pk>/unflag/", ProducersProductUnflagAPIView.as_view(), name="producers-product-unflag"),
    
    path("producers/products/flagged-list/", ProducersProductFlaggedListAPIView.as_view(), name="producers-product-flagged-list"),
]
