"""
URLs — API REST v1
====================
Todas las rutas bajo /api/v1/
"""

from django.urls import path

from . import views

app_name = "api"

urlpatterns = [
    # ── Auth ──────────────────────────────────────────────
    path("auth/login/", views.LoginView.as_view(), name="login"),
    path("auth/refresh/", views.RefreshView.as_view(), name="refresh"),
    path("auth/register/", views.RegisterView.as_view(), name="register"),

    # ── Perfil ────────────────────────────────────────────
    path("profile/", views.ProfileView.as_view(), name="profile"),
    path("profile/change-password/", views.ChangePasswordView.as_view(), name="change-password"),

    # ── Servicios ─────────────────────────────────────────
    path("services/", views.ServicioListView.as_view(), name="services"),

    # ── Horarios ──────────────────────────────────────────
    path("schedule/", views.HorarioListView.as_view(), name="schedule"),

    # ── Slots ─────────────────────────────────────────────
    path("slots/", views.SlotListView.as_view(), name="slots"),

    # ── Citas ─────────────────────────────────────────────
    path("appointments/", views.CitaListCreateView.as_view(), name="appointments"),
    path("appointments/<uuid:pk>/", views.CitaDetailView.as_view(), name="appointment-detail"),

    # ── Valoraciones ──────────────────────────────────────
    path("ratings/", views.ValoracionListCreateView.as_view(), name="ratings"),
    path("ratings/summary/", views.PromedioGlobalView.as_view(), name="ratings-summary"),

    # ── Facturas ──────────────────────────────────────────
    path("invoices/", views.InvoiceListView.as_view(), name="invoices"),
    path("invoices/<uuid:pk>/", views.InvoiceDetailView.as_view(), name="invoice-detail"),

    # ── Notificaciones ────────────────────────────────────
    path("notifications/", views.NotificationListView.as_view(), name="notifications"),
]
