HH/apps/accounts/urls.py
2026-01-06 13:36:43 +03:00

57 lines
2.4 KiB
Python

from django.urls import include, path
from rest_framework.routers import DefaultRouter
from rest_framework_simplejwt.views import TokenRefreshView
from .views import (
AcknowledgementChecklistItemViewSet,
AcknowledgementContentViewSet,
CustomTokenObtainPairView,
RoleViewSet,
UserAcknowledgementViewSet,
UserViewSet,
)
from .ui_views import (
acknowledgement_checklist_list,
acknowledgement_content_list,
onboarding_complete,
onboarding_step_activation,
onboarding_step_checklist,
onboarding_step_content,
onboarding_welcome,
provisional_user_list,
provisional_user_progress,
)
app_name = 'accounts'
router = DefaultRouter()
router.register(r'users', UserViewSet, basename='user')
router.register(r'roles', RoleViewSet, basename='role')
router.register(r'onboarding/content', AcknowledgementContentViewSet, basename='acknowledgement-content')
router.register(r'onboarding/checklist', AcknowledgementChecklistItemViewSet, basename='acknowledgement-checklist')
router.register(r'onboarding/acknowledgements', UserAcknowledgementViewSet, basename='user-acknowledgement')
urlpatterns = [
# JWT Authentication
path('token/', CustomTokenObtainPairView.as_view(), name='token_obtain_pair'),
path('token/refresh/', TokenRefreshView.as_view(), name='token_refresh'),
# User and Role endpoints
path('', include(router.urls)),
# Onboarding Wizard UI
path('onboarding/welcome/', onboarding_welcome, name='onboarding-welcome'),
path('onboarding/wizard/step/<int:step>/', onboarding_step_content, name='onboarding-step-content'),
path('onboarding/wizard/checklist/', onboarding_step_checklist, name='onboarding-step-checklist'),
path('onboarding/wizard/activation/', onboarding_step_activation, name='onboarding-step-activation'),
path('onboarding/complete/', onboarding_complete, name='onboarding-complete'),
# Provisional User Management
path('onboarding/provisional/', provisional_user_list, name='provisional-user-list'),
path('onboarding/provisional/<int:user_id>/progress/', provisional_user_progress, name='provisional-user-progress'),
# Acknowledgement Management
path('onboarding/content/', acknowledgement_content_list, name='acknowledgement-content-list'),
path('onboarding/checklist-items/', acknowledgement_checklist_list, name='acknowledgement-checklist-list'),
]