from ...models import Category
from ...serializers import CategorySerializer
from .base import BaseDetailAPI, BaseListAPI


class CategoryListAPI(BaseListAPI):
    annotation_class = Category
    serializer_class = CategorySerializer

    def create(self, request, *args, **kwargs):
        if self.project.single_class_classification:
            self.get_queryset().delete()
        return super().create(request, args, kwargs)


class CategoryDetailAPI(BaseDetailAPI):
    queryset = Category.objects.all()
    serializer_class = CategorySerializer