Support per-map contact membership with scoped graph views, relation editing on edges, layout caching, and automatic detection of full JSON backups so contacts and relations import together. Co-authored-by: Cursor <cursoragent@cursor.com>
33 lines
1.1 KiB
Python
33 lines
1.1 KiB
Python
from django.urls import path, include
|
|
from rest_framework.routers import DefaultRouter
|
|
from . import views
|
|
|
|
router = DefaultRouter()
|
|
router.register('contacts', views.ContactViewSet)
|
|
router.register('relations', views.RelationViewSet)
|
|
router.register('network-maps', views.NetworkMapViewSet)
|
|
|
|
urlpatterns = [
|
|
path('', include(router.urls)),
|
|
path(
|
|
'network-maps/<int:map_pk>/memberships/',
|
|
views.NetworkMapMembershipViewSet.as_view({'get': 'list', 'post': 'create'}),
|
|
name='network-map-memberships-list',
|
|
),
|
|
path(
|
|
'network-maps/<int:map_pk>/memberships/<int:pk>/',
|
|
views.NetworkMapMembershipViewSet.as_view({
|
|
'get': 'retrieve',
|
|
'patch': 'partial_update',
|
|
'put': 'update',
|
|
'delete': 'destroy',
|
|
}),
|
|
name='network-map-memberships-detail',
|
|
),
|
|
path('graph/', views.graph_data),
|
|
path('network-map-graph/', views.network_map_graph),
|
|
path('relation-types/', views.relation_types),
|
|
path('network-map-choices/', views.network_map_choices),
|
|
path('import/', views.import_contacts),
|
|
]
|