from django.urls import path

from users.views import (
    CustomTokenObtainPairView,
    CustomTokenRefreshView,
    UserRegistrationView,
    UserProfileView,
    LogoutView,
    UserListView,
    UserDetailView,
    AuditLogViewSet,
)
from rest_framework.routers import DefaultRouter

app_name = "users"

router = DefaultRouter()
router.register("audit-logs", AuditLogViewSet, basename="audit-logs")

urlpatterns = [
    # JWT Auth Endpoints
    path("auth/login/", CustomTokenObtainPairView.as_view(), name="login"),
    path("auth/refresh/", CustomTokenRefreshView.as_view(), name="token_refresh"),
    path("auth/logout/", LogoutView.as_view(), name="logout"),
    # User Endpoints
    path("auth/register/", UserRegistrationView.as_view(), name="register"),
    path("me/", UserProfileView.as_view(), name="profile"),
    path("<uuid:pk>/", UserDetailView.as_view(), name="user-detail"),
    path("", UserListView.as_view(), name="user-list"),
]

urlpatterns += router.urls
