NODEDC_TASKMANAGER/plane-src/apps/api/plane/urls.py

76 lines
2.3 KiB
Python

# Copyright (c) 2023-present Plane Software, Inc. and contributors
# SPDX-License-Identifier: AGPL-3.0-only
# See the LICENSE file for details.
"""plane URL Configuration"""
from django.conf import settings
from django.urls import include, path, re_path
from drf_spectacular.views import (
SpectacularAPIView,
SpectacularRedocView,
SpectacularSwaggerView,
)
from plane.authentication.views.nodedc_logout import (
NodeDCFrontChannelLogoutEndpoint,
NodeDCInternalSessionLogoutEndpoint,
)
from plane.authentication.views.nodedc_workspace_adapter import (
NodeDCInternalWorkspaceListEndpoint,
NodeDCInternalWorkspaceMembershipEnsureEndpoint,
)
handler404 = "plane.app.views.error_404.custom_404_view"
urlpatterns = [
path(
"api/internal/nodedc/logout/",
NodeDCInternalSessionLogoutEndpoint.as_view(),
name="nodedc-internal-session-logout",
),
path(
"api/internal/nodedc/workspaces/",
NodeDCInternalWorkspaceListEndpoint.as_view(),
name="nodedc-internal-workspaces",
),
path(
"api/internal/nodedc/workspace-memberships/ensure/",
NodeDCInternalWorkspaceMembershipEnsureEndpoint.as_view(),
name="nodedc-internal-workspace-membership-ensure",
),
path("api/", include("plane.app.urls")),
path("api/public/", include("plane.space.urls")),
path("api/instances/", include("plane.license.urls")),
path("api/v1/", include("plane.api.urls")),
path("auth/", include("plane.authentication.urls")),
path(
"logout",
NodeDCFrontChannelLogoutEndpoint.as_view(),
name="nodedc-frontchannel-logout",
),
path("", include("plane.web.urls")),
]
if settings.ENABLE_DRF_SPECTACULAR:
urlpatterns += [
path("api/schema/", SpectacularAPIView.as_view(), name="schema"),
path(
"api/schema/swagger-ui/",
SpectacularSwaggerView.as_view(url_name="schema"),
name="swagger-ui",
),
path(
"api/schema/redoc/",
SpectacularRedocView.as_view(url_name="schema"),
name="redoc",
),
]
if settings.DEBUG:
try:
import debug_toolbar
urlpatterns = [re_path(r"^__debug__/", include(debug_toolbar.urls))] + urlpatterns
except ImportError:
pass