"""
Routes for managing Seal entries.
"""

from api.v1.common.tenant_crud_routes import TenantCRUDRoutes

from .dto import SealCreateDTO, SealResponseDTO, SealUpdateDTO
from .services import SealService

# Create router using TenantCRUDRoutes factory
router = TenantCRUDRoutes(
    service=SealService,
    create_schema=SealCreateDTO,
    update_schema=SealUpdateDTO,
    response_schema=SealResponseDTO,
    prefix="/seals",
    tags=[],
    resource_name="Seal",
    id_name="id",  # Using numeric ID
    enable_list=True,  # Enable GET /seals with pagination
    enable_filters=True,  # Enable filtering by seal
    default_page_size=50,
    max_page_size=100,
    list_permissions=["cat_seals.view"],
    get_permissions=["cat_seals.view"],
    create_permissions=["cat_seals.create"],
    update_permissions=["cat_seals.edit"],
    delete_permissions=["cat_seals.delete"],
).router
