diff --git a/backend/directus-config/collections/permissions.json b/backend/directus-config/collections/permissions.json index 9bfaee77..ae49f8a6 100644 --- a/backend/directus-config/collections/permissions.json +++ b/backend/directus-config/collections/permissions.json @@ -3171,202 +3171,5 @@ ], "policy": "b16453e3-676b-49d6-917b-6d6f81089114", "_syncId": "437a3d6a-3e46-44fb-8062-3c76b84e364e" - }, - { - "collection": "directus_users", - "action": "create", - "permissions": null, - "validation": null, - "presets": { - "wc_user": true - }, - "fields": [ - "first_name", - "email", - "password", - "avatar" - ], - "policy": "dc5f8f91-d104-4e7d-8752-44db81ff12c4", - "_syncId": "9009e505-6743-41c0-bb55-c2bce6add51f" - }, - { - "collection": "directus_users", - "action": "delete", - "permissions": { - "_and": [ - { - "wc_user": { - "_eq": true - } - } - ] - }, - "validation": null, - "presets": null, - "fields": null, - "policy": "dc5f8f91-d104-4e7d-8752-44db81ff12c4", - "_syncId": "2e8905fc-9f97-4dc7-b09a-d23e609736a7" - }, - { - "collection": "directus_users", - "action": "read", - "permissions": { - "_and": [ - { - "wc_user": { - "_eq": true - } - } - ] - }, - "validation": null, - "presets": null, - "fields": null, - "policy": "dc5f8f91-d104-4e7d-8752-44db81ff12c4", - "_syncId": "46d5a753-5777-4f76-b27e-609aa9e60a9c" - }, - { - "collection": "directus_users", - "action": "update", - "permissions": { - "_and": [ - { - "wc_user": { - "_eq": true - } - } - ] - }, - "validation": {}, - "presets": { - "wc_user": true - }, - "fields": [ - "first_name", - "email", - "password", - "avatar" - ], - "policy": "dc5f8f91-d104-4e7d-8752-44db81ff12c4", - "_syncId": "94a199e1-c3bd-4b13-9763-3bcf8099266f" - }, - { - "collection": "items", - "action": "create", - "permissions": null, - "validation": null, - "presets": { - "layer": "6f3dee6e-5d82-4061-b19a-4bc040ae553f" - }, - "fields": [ - "id", - "name", - "text", - "subname", - "position", - "image", - "next_appointment", - "group_type", - "topic", - "Wuederkompass", - "telephone", - "contact", - "slug", - "color", - "markerIcon", - "status" - ], - "policy": "dc5f8f91-d104-4e7d-8752-44db81ff12c4", - "_syncId": "4e9f240e-c26c-43d6-ac2d-11f97e01be3b" - }, - { - "collection": "items", - "action": "delete", - "permissions": { - "_and": [ - { - "layer": { - "_eq": "6f3dee6e-5d82-4061-b19a-4bc040ae553f" - } - } - ] - }, - "validation": null, - "presets": null, - "fields": null, - "policy": "dc5f8f91-d104-4e7d-8752-44db81ff12c4", - "_syncId": "db054d09-f112-4c38-843d-8a0b59b78bae" - }, - { - "collection": "items", - "action": "read", - "permissions": { - "_and": [ - { - "layer": { - "_eq": "6f3dee6e-5d82-4061-b19a-4bc040ae553f" - } - } - ] - }, - "validation": null, - "presets": null, - "fields": [ - "name", - "subname", - "id", - "position", - "image", - "text", - "color", - "slug", - "contact", - "status", - "markerIcon", - "Wuederkompass", - "telephone", - "group_type", - "topic", - "next_appointment", - "user_created" - ], - "policy": "dc5f8f91-d104-4e7d-8752-44db81ff12c4", - "_syncId": "f6c73fda-b283-4918-8cca-7f35bd31c0b8" - }, - { - "collection": "items", - "action": "update", - "permissions": { - "_and": [ - { - "layer": { - "_eq": "6f3dee6e-5d82-4061-b19a-4bc040ae553f" - } - } - ] - }, - "validation": null, - "presets": null, - "fields": [ - "id", - "name", - "subname", - "text", - "position", - "image", - "color", - "next_appointment", - "group_type", - "topic", - "Wuederkompass", - "markerIcon", - "status", - "telephone", - "slug", - "contact", - "user_created" - ], - "policy": "dc5f8f91-d104-4e7d-8752-44db81ff12c4", - "_syncId": "c1c77182-b45c-4355-a352-09660ab5116f" } ] diff --git a/backend/directus-config/collections/policies.json b/backend/directus-config/collections/policies.json index cdee0aff..05a97232 100644 --- a/backend/directus-config/collections/policies.json +++ b/backend/directus-config/collections/policies.json @@ -98,21 +98,5 @@ } ], "_syncId": "b16453e3-676b-49d6-917b-6d6f81089114" - }, - { - "name": "Würdekompass Admin", - "icon": "supervised_user_circle", - "description": null, - "ip_access": null, - "enforce_tfa": false, - "admin_access": false, - "app_access": true, - "roles": [ - { - "role": "faa59737-2277-4f8a-a2ab-23940f566ab5", - "sort": 1 - } - ], - "_syncId": "dc5f8f91-d104-4e7d-8752-44db81ff12c4" } ] diff --git a/backend/directus-config/collections/roles.json b/backend/directus-config/collections/roles.json index e629e6c0..72fa4ec0 100644 --- a/backend/directus-config/collections/roles.json +++ b/backend/directus-config/collections/roles.json @@ -6,13 +6,6 @@ "parent": null, "_syncId": "_sync_default_admin_role" }, - { - "name": "Registrated", - "icon": "paragliding", - "description": null, - "parent": null, - "_syncId": "role-registrated" - }, { "name": "Editor", "icon": "supervised_user_circle", @@ -21,10 +14,10 @@ "_syncId": "a65f6094-ba98-42d3-940b-07934959e3fb" }, { - "name": "Würdekompass Admin", - "icon": "supervised_user_circle", + "name": "Registrated", + "icon": "paragliding", "description": null, "parent": null, - "_syncId": "faa59737-2277-4f8a-a2ab-23940f566ab5" + "_syncId": "role-registrated" } ] diff --git a/backend/directus-config/specs/item.graphql b/backend/directus-config/specs/item.graphql index 74b37fbf..ed03ddbf 100644 --- a/backend/directus-config/specs/item.graphql +++ b/backend/directus-config/specs/item.graphql @@ -11,10 +11,6 @@ type Query { oceannomads_profiles_by_id(id: ID!, version: String): oceannomads_profiles oceannomads_profiles_aggregated(groupBy: [String], filter: oceannomads_profiles_filter, limit: Int, offset: Int, page: Int, search: String, sort: [String]): [oceannomads_profiles_aggregated!]! oceannomads_profiles_by_version(version: String!, id: ID!): version_oceannomads_profiles - maps(filter: maps_filter, sort: [String], limit: Int, offset: Int, page: Int, search: String): [maps!]! - maps_by_id(id: ID!, version: String): maps - maps_aggregated(groupBy: [String], filter: maps_filter, limit: Int, offset: Int, page: Int, search: String, sort: [String]): [maps_aggregated!]! - maps_by_version(version: String!, id: ID!): version_maps attestations(filter: attestations_filter, sort: [String], limit: Int, offset: Int, page: Int, search: String): [attestations!]! attestations_by_id(id: ID!, version: String): attestations attestations_aggregated(groupBy: [String], filter: attestations_filter, limit: Int, offset: Int, page: Int, search: String, sort: [String]): [attestations_aggregated!]! @@ -115,6 +111,10 @@ type Query { layers_maps_by_id(id: ID!, version: String): layers_maps layers_maps_aggregated(groupBy: [String], filter: layers_maps_filter, limit: Int, offset: Int, page: Int, search: String, sort: [String]): [layers_maps_aggregated!]! layers_maps_by_version(version: String!, id: ID!): version_layers_maps + maps(filter: maps_filter, sort: [String], limit: Int, offset: Int, page: Int, search: String): [maps!]! + maps_by_id(id: ID!, version: String): maps + maps_aggregated(groupBy: [String], filter: maps_filter, limit: Int, offset: Int, page: Int, search: String, sort: [String]): [maps_aggregated!]! + maps_by_version(version: String!, id: ID!): version_maps Themes(filter: Themes_filter, sort: [String], limit: Int, offset: Int, page: Int, search: String): [Themes!]! Themes_by_id(id: ID!, version: String): Themes Themes_aggregated(groupBy: [String], filter: Themes_filter, limit: Int, offset: Int, page: Int, search: String, sort: [String]): [Themes_aggregated!]! @@ -144,8 +144,6 @@ type Mutation { create_relations_item(data: create_relations_input!): relations create_oceannomads_profiles_items(filter: oceannomads_profiles_filter, sort: [String], limit: Int, offset: Int, page: Int, search: String, data: [create_oceannomads_profiles_input!]): [oceannomads_profiles!]! create_oceannomads_profiles_item(data: create_oceannomads_profiles_input!): oceannomads_profiles - create_maps_items(filter: maps_filter, sort: [String], limit: Int, offset: Int, page: Int, search: String, data: [create_maps_input!]): [maps!]! - create_maps_item(data: create_maps_input!): maps create_attestations_items(filter: attestations_filter, sort: [String], limit: Int, offset: Int, page: Int, search: String, data: [create_attestations_input!]): [attestations!]! create_attestations_item(data: create_attestations_input!): attestations create_attestations_directus_users_items(filter: attestations_directus_users_filter, sort: [String], limit: Int, offset: Int, page: Int, search: String, data: [create_attestations_directus_users_input!]): [attestations_directus_users!]! @@ -196,6 +194,8 @@ type Mutation { create_layers_files_item(data: create_layers_files_input!): layers_files create_layers_maps_items(filter: layers_maps_filter, sort: [String], limit: Int, offset: Int, page: Int, search: String, data: [create_layers_maps_input!]): [layers_maps!]! create_layers_maps_item(data: create_layers_maps_input!): layers_maps + create_maps_items(filter: maps_filter, sort: [String], limit: Int, offset: Int, page: Int, search: String, data: [create_maps_input!]): [maps!]! + create_maps_item(data: create_maps_input!): maps create_Themes_items(filter: Themes_filter, sort: [String], limit: Int, offset: Int, page: Int, search: String, data: [create_Themes_input!]): [Themes!]! create_Themes_item(data: create_Themes_input!): Themes create_startEnd_items(filter: startEnd_filter, sort: [String], limit: Int, offset: Int, page: Int, search: String, data: [create_startEnd_input!]): [startEnd!]! @@ -215,9 +215,6 @@ type Mutation { update_oceannomads_profiles_items(filter: oceannomads_profiles_filter, sort: [String], limit: Int, offset: Int, page: Int, search: String, ids: [ID]!, data: update_oceannomads_profiles_input!): [oceannomads_profiles!]! update_oceannomads_profiles_batch(filter: oceannomads_profiles_filter, sort: [String], limit: Int, offset: Int, page: Int, search: String, data: [update_oceannomads_profiles_input!]): [oceannomads_profiles!]! update_oceannomads_profiles_item(id: ID!, data: update_oceannomads_profiles_input!): oceannomads_profiles - update_maps_items(filter: maps_filter, sort: [String], limit: Int, offset: Int, page: Int, search: String, ids: [ID]!, data: update_maps_input!): [maps!]! - update_maps_batch(filter: maps_filter, sort: [String], limit: Int, offset: Int, page: Int, search: String, data: [update_maps_input!]): [maps!]! - update_maps_item(id: ID!, data: update_maps_input!): maps update_attestations_items(filter: attestations_filter, sort: [String], limit: Int, offset: Int, page: Int, search: String, ids: [ID]!, data: update_attestations_input!): [attestations!]! update_attestations_batch(filter: attestations_filter, sort: [String], limit: Int, offset: Int, page: Int, search: String, data: [update_attestations_input!]): [attestations!]! update_attestations_item(id: ID!, data: update_attestations_input!): attestations @@ -293,6 +290,9 @@ type Mutation { update_layers_maps_items(filter: layers_maps_filter, sort: [String], limit: Int, offset: Int, page: Int, search: String, ids: [ID]!, data: update_layers_maps_input!): [layers_maps!]! update_layers_maps_batch(filter: layers_maps_filter, sort: [String], limit: Int, offset: Int, page: Int, search: String, data: [update_layers_maps_input!]): [layers_maps!]! update_layers_maps_item(id: ID!, data: update_layers_maps_input!): layers_maps + update_maps_items(filter: maps_filter, sort: [String], limit: Int, offset: Int, page: Int, search: String, ids: [ID]!, data: update_maps_input!): [maps!]! + update_maps_batch(filter: maps_filter, sort: [String], limit: Int, offset: Int, page: Int, search: String, data: [update_maps_input!]): [maps!]! + update_maps_item(id: ID!, data: update_maps_input!): maps update_Themes_items(filter: Themes_filter, sort: [String], limit: Int, offset: Int, page: Int, search: String, ids: [ID]!, data: update_Themes_input!): [Themes!]! update_Themes_batch(filter: Themes_filter, sort: [String], limit: Int, offset: Int, page: Int, search: String, data: [update_Themes_input!]): [Themes!]! update_Themes_item(id: ID!, data: update_Themes_input!): Themes @@ -314,8 +314,6 @@ type Mutation { delete_relations_item(id: ID!): delete_one delete_oceannomads_profiles_items(ids: [ID]!): delete_many delete_oceannomads_profiles_item(id: ID!): delete_one - delete_maps_items(ids: [ID]!): delete_many - delete_maps_item(id: ID!): delete_one delete_attestations_items(ids: [ID]!): delete_many delete_attestations_item(id: ID!): delete_one delete_attestations_directus_users_items(ids: [ID]!): delete_many @@ -366,6 +364,8 @@ type Mutation { delete_layers_files_item(id: ID!): delete_one delete_layers_maps_items(ids: [ID]!): delete_many delete_layers_maps_item(id: ID!): delete_one + delete_maps_items(ids: [ID]!): delete_many + delete_maps_item(id: ID!): delete_one delete_Themes_items(ids: [ID]!): delete_many delete_Themes_item(id: ID!): delete_one delete_startEnd_items(ids: [ID]!): delete_many @@ -403,7 +403,6 @@ type Subscription { directus_policies_mutated(event: EventEnum): directus_policies_mutated relations_mutated(event: EventEnum): relations_mutated oceannomads_profiles_mutated(event: EventEnum): oceannomads_profiles_mutated - maps_mutated(event: EventEnum): maps_mutated attestations_mutated(event: EventEnum): attestations_mutated attestations_directus_users_mutated(event: EventEnum): attestations_directus_users_mutated contactInfos_mutated(event: EventEnum): contactInfos_mutated @@ -429,6 +428,7 @@ type Subscription { layers_directus_users_1_mutated(event: EventEnum): layers_directus_users_1_mutated layers_files_mutated(event: EventEnum): layers_files_mutated layers_maps_mutated(event: EventEnum): layers_maps_mutated + maps_mutated(event: EventEnum): maps_mutated Themes_mutated(event: EventEnum): Themes_mutated startEnd_mutated(event: EventEnum): startEnd_mutated team_mutated(event: EventEnum): team_mutated @@ -1940,6 +1940,7 @@ type maps { """You can include GeoJSON""" geo: JSON geo_func: count_functions + hide_signup: Boolean id: ID! info_open: Boolean logo(filter: directus_files_filter, sort: [String], limit: Int, offset: Int, page: Int, search: String): directus_files @@ -1948,14 +1949,13 @@ type maps { show_filter_control: Boolean show_gratitude_control: Boolean show_layer_control: Boolean + show_request_password: Boolean show_theme_control: Boolean show_zoom_control: Boolean! tile_server_attribution: String tile_server_url: String url: String zoom: Int - hide_signup: Boolean - show_request_password: Boolean layers(filter: layers_maps_filter, sort: [String], limit: Int, offset: Int, page: Int, search: String): [layers_maps] layers_func: count_functions } @@ -1986,6 +1986,7 @@ type maps_aggregated_count { """You can include GeoJSON""" geo: Int + hide_signup: Int id: Int info_open: Int @@ -1996,14 +1997,13 @@ type maps_aggregated_count { show_filter_control: Int show_gratitude_control: Int show_layer_control: Int + show_request_password: Int show_theme_control: Int show_zoom_control: Int tile_server_attribution: Int tile_server_url: Int url: Int zoom: Int - hide_signup: Int - show_request_password: Int layers: Int } @@ -2663,6 +2663,7 @@ type version_maps { """You can include GeoJSON""" geo: JSON + hide_signup: Boolean id: ID info_open: Boolean logo: JSON @@ -2671,14 +2672,13 @@ type version_maps { show_filter_control: Boolean show_gratitude_control: Boolean show_layer_control: Boolean + show_request_password: Boolean show_theme_control: Boolean show_zoom_control: Boolean tile_server_attribution: String tile_server_url: String url: String zoom: Int - hide_signup: Boolean - show_request_password: Boolean layers: JSON } @@ -3213,6 +3213,7 @@ input create_maps_input { """You can include GeoJSON""" geo: JSON + hide_signup: Boolean id: ID info_open: Boolean logo: create_directus_files_input @@ -3221,14 +3222,13 @@ input create_maps_input { show_filter_control: Boolean show_gratitude_control: Boolean show_layer_control: Boolean + show_request_password: Boolean show_theme_control: Boolean show_zoom_control: Boolean! tile_server_attribution: String tile_server_url: String url: String zoom: Int - hide_signup: Boolean - show_request_password: Boolean layers: [create_layers_maps_input] } @@ -4194,6 +4194,7 @@ input maps_filter { expand_layer_control: boolean_filter_operators geo: string_filter_operators geo_func: count_function_filter_operators + hide_signup: boolean_filter_operators id: id_filter_operators info_open: boolean_filter_operators logo: directus_files_filter @@ -4202,14 +4203,13 @@ input maps_filter { show_filter_control: boolean_filter_operators show_gratitude_control: boolean_filter_operators show_layer_control: boolean_filter_operators + show_request_password: boolean_filter_operators show_theme_control: boolean_filter_operators show_zoom_control: boolean_filter_operators tile_server_attribution: string_filter_operators tile_server_url: string_filter_operators url: string_filter_operators zoom: number_filter_operators - hide_signup: boolean_filter_operators - show_request_password: boolean_filter_operators layers: layers_maps_quantifier_filter layers_func: count_function_filter_operators _and: [maps_filter] @@ -4760,6 +4760,7 @@ input update_maps_input { """You can include GeoJSON""" geo: JSON + hide_signup: Boolean id: ID info_open: Boolean logo: update_directus_files_input @@ -4768,14 +4769,13 @@ input update_maps_input { show_filter_control: Boolean show_gratitude_control: Boolean show_layer_control: Boolean + show_request_password: Boolean show_theme_control: Boolean show_zoom_control: Boolean tile_server_attribution: String tile_server_url: String url: String zoom: Int - hide_signup: Boolean - show_request_password: Boolean layers: [update_layers_maps_input] } diff --git a/backend/directus-config/specs/openapi.json b/backend/directus-config/specs/openapi.json index b65c0c12..1051b41f 100644 --- a/backend/directus-config/specs/openapi.json +++ b/backend/directus-config/specs/openapi.json @@ -8678,395 +8678,6 @@ ] } }, - "/items/maps": { - "post": { - "summary": "Create an Item", - "description": "Create a new maps item.", - "tags": [ - "Items", - "ItemsMaps" - ], - "operationId": "createItemsMaps", - "parameters": [ - { - "$ref": "#/components/parameters/Meta" - } - ], - "requestBody": { - "content": { - "application/json": { - "schema": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/components/schemas/ItemsMaps" - } - }, - { - "$ref": "#/components/schemas/ItemsMaps" - } - ] - } - } - } - }, - "responses": { - "200": { - "description": "Successful request", - "content": { - "application/json": { - "schema": { - "type": "object", - "properties": { - "data": { - "type": "array", - "items": { - "$ref": "#/components/schemas/ItemsMaps" - } - } - } - } - } - } - }, - "401": { - "$ref": "#/components/responses/UnauthorizedError" - } - } - }, - "get": { - "summary": "List Items", - "description": "List the maps items.", - "tags": [ - "Items", - "ItemsMaps" - ], - "operationId": "readItemsMaps", - "security": [ - { - "Auth": [] - } - ], - "parameters": [ - { - "$ref": "#/components/parameters/Fields" - }, - { - "$ref": "#/components/parameters/Limit" - }, - { - "$ref": "#/components/parameters/Meta" - }, - { - "$ref": "#/components/parameters/Offset" - }, - { - "$ref": "#/components/parameters/Sort" - }, - { - "$ref": "#/components/parameters/Filter" - }, - { - "$ref": "#/components/parameters/Search" - } - ], - "responses": { - "200": { - "description": "Successful request", - "content": { - "application/json": { - "schema": { - "type": "object", - "properties": { - "data": { - "type": "array", - "items": { - "type": "object", - "$ref": "#/components/schemas/ItemsMaps" - } - }, - "meta": { - "$ref": "#/components/schemas/x-metadata" - } - } - } - } - } - }, - "401": { - "$ref": "#/components/responses/UnauthorizedError" - } - } - }, - "patch": { - "summary": "Update Multiple Items", - "description": "Update multiple maps items at the same time.", - "tags": [ - "Items", - "ItemsMaps" - ], - "operationId": "updateItemsMaps", - "parameters": [ - { - "$ref": "#/components/parameters/Fields" - }, - { - "$ref": "#/components/parameters/Limit" - }, - { - "$ref": "#/components/parameters/Meta" - }, - { - "$ref": "#/components/parameters/Offset" - }, - { - "$ref": "#/components/parameters/Sort" - }, - { - "$ref": "#/components/parameters/Filter" - }, - { - "$ref": "#/components/parameters/Search" - } - ], - "requestBody": { - "content": { - "application/json": { - "schema": { - "oneOf": [ - { - "type": "array", - "items": { - "$ref": "#/components/schemas/ItemsMaps" - } - }, - { - "$ref": "#/components/schemas/ItemsMaps" - } - ] - } - } - } - }, - "responses": { - "200": { - "description": "Successful request", - "content": { - "application/json": { - "schema": { - "properties": { - "data": { - "type": "array", - "items": { - "$ref": "#/components/schemas/ItemsMaps" - } - } - } - } - } - } - } - } - }, - "delete": { - "summary": "Delete Multiple Items", - "description": "Delete multiple existing maps items.", - "tags": [ - "Items", - "ItemsMaps" - ], - "operationId": "deleteItemsMaps", - "responses": { - "200": { - "description": "Successful request" - }, - "401": { - "$ref": "#/components/responses/UnauthorizedError" - } - }, - "parameters": [] - } - }, - "/items/maps/{id}": { - "get": { - "summary": "Retrieve an Item", - "description": "Retrieve a single maps item by unique identifier.", - "tags": [ - "Items", - "ItemsMaps" - ], - "operationId": "readSingleItemsMaps", - "parameters": [ - { - "$ref": "#/components/parameters/Fields" - }, - { - "$ref": "#/components/parameters/Meta" - }, - { - "$ref": "#/components/parameters/Version" - }, - { - "name": "id", - "description": "Index of the item.", - "in": "path", - "required": true, - "schema": { - "oneOf": [ - { - "type": "integer", - "description": "Incremental index of the item.", - "example": 1 - }, - { - "type": "string", - "description": "Unique identifier of the item.", - "example": "8cbb43fe-4cdf-4991-8352-c461779cec02" - } - ] - } - } - ], - "responses": { - "200": { - "description": "Successful request", - "content": { - "application/json": { - "schema": { - "type": "object", - "properties": { - "data": { - "type": "object", - "$ref": "#/components/schemas/ItemsMaps" - } - } - } - } - } - }, - "401": { - "$ref": "#/components/responses/UnauthorizedError" - }, - "404": { - "$ref": "#/components/responses/NotFoundError" - } - } - }, - "patch": { - "summary": "Update an Item", - "description": "Update an existing maps item.", - "tags": [ - "Items", - "ItemsMaps" - ], - "operationId": "updateSingleItemsMaps", - "parameters": [ - { - "$ref": "#/components/parameters/Fields" - }, - { - "$ref": "#/components/parameters/Meta" - }, - { - "name": "id", - "description": "Index of the item.", - "in": "path", - "required": true, - "schema": { - "oneOf": [ - { - "type": "integer", - "description": "Incremental index of the item.", - "example": 1 - }, - { - "type": "string", - "description": "Unique identifier of the item.", - "example": "8cbb43fe-4cdf-4991-8352-c461779cec02" - } - ] - } - } - ], - "requestBody": { - "content": { - "application/json": { - "schema": { - "type": "object", - "$ref": "#/components/schemas/ItemsMaps" - } - } - } - }, - "responses": { - "200": { - "description": "Successful request", - "content": { - "application/json": { - "schema": { - "type": "object", - "properties": { - "data": { - "type": "object", - "$ref": "#/components/schemas/ItemsMaps" - } - } - } - } - } - }, - "401": { - "$ref": "#/components/responses/UnauthorizedError" - }, - "404": { - "$ref": "#/components/responses/NotFoundError" - } - } - }, - "delete": { - "summary": "Delete an Item", - "description": "Delete an existing maps item.", - "tags": [ - "Items", - "ItemsMaps" - ], - "operationId": "deleteSingleItemsMaps", - "responses": { - "200": { - "description": "Successful request" - }, - "401": { - "$ref": "#/components/responses/UnauthorizedError" - }, - "404": { - "$ref": "#/components/responses/NotFoundError" - } - }, - "parameters": [ - { - "name": "id", - "description": "Index of the item.", - "in": "path", - "required": true, - "schema": { - "oneOf": [ - { - "type": "integer", - "description": "Incremental index of the item.", - "example": 1 - }, - { - "type": "string", - "description": "Unique identifier of the item.", - "example": "8cbb43fe-4cdf-4991-8352-c461779cec02" - } - ] - } - } - ] - } - }, "/items/attestations": { "post": { "summary": "Create an Item", @@ -18792,6 +18403,395 @@ ] } }, + "/items/maps": { + "post": { + "summary": "Create an Item", + "description": "Create a new maps item.", + "tags": [ + "Items", + "ItemsMaps" + ], + "operationId": "createItemsMaps", + "parameters": [ + { + "$ref": "#/components/parameters/Meta" + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/components/schemas/ItemsMaps" + } + }, + { + "$ref": "#/components/schemas/ItemsMaps" + } + ] + } + } + } + }, + "responses": { + "200": { + "description": "Successful request", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ItemsMaps" + } + } + } + } + } + } + }, + "401": { + "$ref": "#/components/responses/UnauthorizedError" + } + } + }, + "get": { + "summary": "List Items", + "description": "List the maps items.", + "tags": [ + "Items", + "ItemsMaps" + ], + "operationId": "readItemsMaps", + "security": [ + { + "Auth": [] + } + ], + "parameters": [ + { + "$ref": "#/components/parameters/Fields" + }, + { + "$ref": "#/components/parameters/Limit" + }, + { + "$ref": "#/components/parameters/Meta" + }, + { + "$ref": "#/components/parameters/Offset" + }, + { + "$ref": "#/components/parameters/Sort" + }, + { + "$ref": "#/components/parameters/Filter" + }, + { + "$ref": "#/components/parameters/Search" + } + ], + "responses": { + "200": { + "description": "Successful request", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "data": { + "type": "array", + "items": { + "type": "object", + "$ref": "#/components/schemas/ItemsMaps" + } + }, + "meta": { + "$ref": "#/components/schemas/x-metadata" + } + } + } + } + } + }, + "401": { + "$ref": "#/components/responses/UnauthorizedError" + } + } + }, + "patch": { + "summary": "Update Multiple Items", + "description": "Update multiple maps items at the same time.", + "tags": [ + "Items", + "ItemsMaps" + ], + "operationId": "updateItemsMaps", + "parameters": [ + { + "$ref": "#/components/parameters/Fields" + }, + { + "$ref": "#/components/parameters/Limit" + }, + { + "$ref": "#/components/parameters/Meta" + }, + { + "$ref": "#/components/parameters/Offset" + }, + { + "$ref": "#/components/parameters/Sort" + }, + { + "$ref": "#/components/parameters/Filter" + }, + { + "$ref": "#/components/parameters/Search" + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "oneOf": [ + { + "type": "array", + "items": { + "$ref": "#/components/schemas/ItemsMaps" + } + }, + { + "$ref": "#/components/schemas/ItemsMaps" + } + ] + } + } + } + }, + "responses": { + "200": { + "description": "Successful request", + "content": { + "application/json": { + "schema": { + "properties": { + "data": { + "type": "array", + "items": { + "$ref": "#/components/schemas/ItemsMaps" + } + } + } + } + } + } + } + } + }, + "delete": { + "summary": "Delete Multiple Items", + "description": "Delete multiple existing maps items.", + "tags": [ + "Items", + "ItemsMaps" + ], + "operationId": "deleteItemsMaps", + "responses": { + "200": { + "description": "Successful request" + }, + "401": { + "$ref": "#/components/responses/UnauthorizedError" + } + }, + "parameters": [] + } + }, + "/items/maps/{id}": { + "get": { + "summary": "Retrieve an Item", + "description": "Retrieve a single maps item by unique identifier.", + "tags": [ + "Items", + "ItemsMaps" + ], + "operationId": "readSingleItemsMaps", + "parameters": [ + { + "$ref": "#/components/parameters/Fields" + }, + { + "$ref": "#/components/parameters/Meta" + }, + { + "$ref": "#/components/parameters/Version" + }, + { + "name": "id", + "description": "Index of the item.", + "in": "path", + "required": true, + "schema": { + "oneOf": [ + { + "type": "integer", + "description": "Incremental index of the item.", + "example": 1 + }, + { + "type": "string", + "description": "Unique identifier of the item.", + "example": "8cbb43fe-4cdf-4991-8352-c461779cec02" + } + ] + } + } + ], + "responses": { + "200": { + "description": "Successful request", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "data": { + "type": "object", + "$ref": "#/components/schemas/ItemsMaps" + } + } + } + } + } + }, + "401": { + "$ref": "#/components/responses/UnauthorizedError" + }, + "404": { + "$ref": "#/components/responses/NotFoundError" + } + } + }, + "patch": { + "summary": "Update an Item", + "description": "Update an existing maps item.", + "tags": [ + "Items", + "ItemsMaps" + ], + "operationId": "updateSingleItemsMaps", + "parameters": [ + { + "$ref": "#/components/parameters/Fields" + }, + { + "$ref": "#/components/parameters/Meta" + }, + { + "name": "id", + "description": "Index of the item.", + "in": "path", + "required": true, + "schema": { + "oneOf": [ + { + "type": "integer", + "description": "Incremental index of the item.", + "example": 1 + }, + { + "type": "string", + "description": "Unique identifier of the item.", + "example": "8cbb43fe-4cdf-4991-8352-c461779cec02" + } + ] + } + } + ], + "requestBody": { + "content": { + "application/json": { + "schema": { + "type": "object", + "$ref": "#/components/schemas/ItemsMaps" + } + } + } + }, + "responses": { + "200": { + "description": "Successful request", + "content": { + "application/json": { + "schema": { + "type": "object", + "properties": { + "data": { + "type": "object", + "$ref": "#/components/schemas/ItemsMaps" + } + } + } + } + } + }, + "401": { + "$ref": "#/components/responses/UnauthorizedError" + }, + "404": { + "$ref": "#/components/responses/NotFoundError" + } + } + }, + "delete": { + "summary": "Delete an Item", + "description": "Delete an existing maps item.", + "tags": [ + "Items", + "ItemsMaps" + ], + "operationId": "deleteSingleItemsMaps", + "responses": { + "200": { + "description": "Successful request" + }, + "401": { + "$ref": "#/components/responses/UnauthorizedError" + }, + "404": { + "$ref": "#/components/responses/NotFoundError" + } + }, + "parameters": [ + { + "name": "id", + "description": "Index of the item.", + "in": "path", + "required": true, + "schema": { + "oneOf": [ + { + "type": "integer", + "description": "Incremental index of the item.", + "example": 1 + }, + { + "type": "string", + "description": "Unique identifier of the item.", + "example": "8cbb43fe-4cdf-4991-8352-c461779cec02" + } + ] + } + } + ] + } + }, "/items/Themes": { "post": { "summary": "Create an Item", @@ -20873,10 +20873,6 @@ "name": "ItemsOceannomadsProfiles", "x-collection": "oceannomads_profiles" }, - { - "name": "ItemsMaps", - "x-collection": "maps" - }, { "name": "ItemsAttestations", "x-collection": "attestations" @@ -20977,6 +20973,10 @@ "name": "ItemsLayersMaps", "x-collection": "layers_maps" }, + { + "name": "ItemsMaps", + "x-collection": "maps" + }, { "name": "ItemsThemes", "x-collection": "Themes" @@ -22997,136 +22997,6 @@ "id" ] }, - "ItemsMaps": { - "type": "object", - "properties": { - "center": { - "nullable": true, - "type": "object" - }, - "custom_text": { - "nullable": true, - "description": "Replace the info text in the info popup", - "type": "string" - }, - "default_theme": { - "nullable": true, - "oneOf": [ - { - "type": "string" - }, - { - "$ref": "#/components/schemas/ItemsThemes" - } - ] - }, - "donation_widget": { - "nullable": true, - "description": "Shows a donation widget after 10 minutes", - "type": "boolean" - }, - "expand_layer_control": { - "nullable": true, - "type": "boolean" - }, - "geo": { - "nullable": true, - "description": "You can include GeoJSON" - }, - "id": { - "nullable": false, - "type": "string", - "format": "uuid" - }, - "info_open": { - "nullable": true, - "type": "boolean" - }, - "logo": { - "nullable": true, - "description": "Used as FavIcon", - "oneOf": [ - { - "type": "string", - "format": "uuid" - }, - { - "$ref": "#/components/schemas/Files" - } - ] - }, - "name": { - "nullable": true, - "type": "string" - }, - "own_tag_space": { - "nullable": true, - "type": "boolean" - }, - "show_filter_control": { - "nullable": true, - "type": "boolean" - }, - "show_gratitude_control": { - "nullable": true, - "type": "boolean" - }, - "show_layer_control": { - "nullable": true, - "type": "boolean" - }, - "show_theme_control": { - "nullable": true, - "type": "boolean" - }, - "show_zoom_control": { - "nullable": false, - "type": "boolean" - }, - "tile_server_attribution": { - "nullable": true, - "type": "string" - }, - "tile_server_url": { - "nullable": true, - "type": "string" - }, - "url": { - "nullable": true, - "type": "string" - }, - "zoom": { - "nullable": true, - "type": "integer" - }, - "hide_signup": { - "nullable": true, - "type": "boolean" - }, - "show_request_password": { - "nullable": true, - "type": "boolean" - }, - "layers": { - "nullable": true, - "type": "array", - "items": { - "oneOf": [ - { - "type": "integer" - }, - { - "$ref": "#/components/schemas/ItemsLayersMaps" - } - ] - } - } - }, - "x-collection": "maps", - "required": [ - "id" - ] - }, "ItemsAttestations": { "type": "object", "properties": { @@ -24578,6 +24448,136 @@ }, "x-collection": "layers_maps" }, + "ItemsMaps": { + "type": "object", + "properties": { + "center": { + "nullable": true, + "type": "object" + }, + "custom_text": { + "nullable": true, + "description": "Replace the info text in the info popup", + "type": "string" + }, + "default_theme": { + "nullable": true, + "oneOf": [ + { + "type": "string" + }, + { + "$ref": "#/components/schemas/ItemsThemes" + } + ] + }, + "donation_widget": { + "nullable": true, + "description": "Shows a donation widget after 10 minutes", + "type": "boolean" + }, + "expand_layer_control": { + "nullable": true, + "type": "boolean" + }, + "geo": { + "nullable": true, + "description": "You can include GeoJSON" + }, + "hide_signup": { + "nullable": true, + "type": "boolean" + }, + "id": { + "nullable": false, + "type": "string", + "format": "uuid" + }, + "info_open": { + "nullable": true, + "type": "boolean" + }, + "logo": { + "nullable": true, + "description": "Used as FavIcon", + "oneOf": [ + { + "type": "string", + "format": "uuid" + }, + { + "$ref": "#/components/schemas/Files" + } + ] + }, + "name": { + "nullable": true, + "type": "string" + }, + "own_tag_space": { + "nullable": true, + "type": "boolean" + }, + "show_filter_control": { + "nullable": true, + "type": "boolean" + }, + "show_gratitude_control": { + "nullable": true, + "type": "boolean" + }, + "show_layer_control": { + "nullable": true, + "type": "boolean" + }, + "show_request_password": { + "nullable": true, + "type": "boolean" + }, + "show_theme_control": { + "nullable": true, + "type": "boolean" + }, + "show_zoom_control": { + "nullable": false, + "type": "boolean" + }, + "tile_server_attribution": { + "nullable": true, + "type": "string" + }, + "tile_server_url": { + "nullable": true, + "type": "string" + }, + "url": { + "nullable": true, + "type": "string" + }, + "zoom": { + "nullable": true, + "type": "integer" + }, + "layers": { + "nullable": true, + "type": "array", + "items": { + "oneOf": [ + { + "type": "integer" + }, + { + "$ref": "#/components/schemas/ItemsLayersMaps" + } + ] + } + } + }, + "x-collection": "maps", + "required": [ + "id" + ] + }, "ItemsThemes": { "type": "object", "properties": { diff --git a/backend/directus-config/specs/system.graphql b/backend/directus-config/specs/system.graphql index e4b1a9e5..e75dce06 100644 --- a/backend/directus-config/specs/system.graphql +++ b/backend/directus-config/specs/system.graphql @@ -265,7 +265,6 @@ type Subscription { directus_policies_mutated(event: EventEnum): directus_policies_mutated relations_mutated(event: EventEnum): relations_mutated oceannomads_profiles_mutated(event: EventEnum): oceannomads_profiles_mutated - maps_mutated(event: EventEnum): maps_mutated attestations_mutated(event: EventEnum): attestations_mutated attestations_directus_users_mutated(event: EventEnum): attestations_directus_users_mutated contactInfos_mutated(event: EventEnum): contactInfos_mutated @@ -291,6 +290,7 @@ type Subscription { layers_directus_users_1_mutated(event: EventEnum): layers_directus_users_1_mutated layers_files_mutated(event: EventEnum): layers_files_mutated layers_maps_mutated(event: EventEnum): layers_maps_mutated + maps_mutated(event: EventEnum): maps_mutated Themes_mutated(event: EventEnum): Themes_mutated startEnd_mutated(event: EventEnum): startEnd_mutated team_mutated(event: EventEnum): team_mutated @@ -2025,6 +2025,7 @@ type maps { """You can include GeoJSON""" geo: JSON geo_func: count_functions + hide_signup: Boolean id: ID! info_open: Boolean logo(filter: directus_files_filter, sort: [String], limit: Int, offset: Int, page: Int, search: String): directus_files @@ -2033,14 +2034,13 @@ type maps { show_filter_control: Boolean show_gratitude_control: Boolean show_layer_control: Boolean + show_request_password: Boolean show_theme_control: Boolean show_zoom_control: Boolean! tile_server_attribution: String tile_server_url: String url: String zoom: Int - hide_signup: Boolean - show_request_password: Boolean layers(filter: layers_maps_filter, sort: [String], limit: Int, offset: Int, page: Int, search: String): [layers_maps] layers_func: count_functions } @@ -2771,6 +2771,7 @@ input create_maps_input { """You can include GeoJSON""" geo: JSON + hide_signup: Boolean id: ID info_open: Boolean logo: create_directus_files_input @@ -2779,14 +2780,13 @@ input create_maps_input { show_filter_control: Boolean show_gratitude_control: Boolean show_layer_control: Boolean + show_request_password: Boolean show_theme_control: Boolean show_zoom_control: Boolean! tile_server_attribution: String tile_server_url: String url: String zoom: Int - hide_signup: Boolean - show_request_password: Boolean layers: [create_layers_maps_input] } @@ -3736,6 +3736,7 @@ input maps_filter { expand_layer_control: boolean_filter_operators geo: string_filter_operators geo_func: count_function_filter_operators + hide_signup: boolean_filter_operators id: id_filter_operators info_open: boolean_filter_operators logo: directus_files_filter @@ -3744,14 +3745,13 @@ input maps_filter { show_filter_control: boolean_filter_operators show_gratitude_control: boolean_filter_operators show_layer_control: boolean_filter_operators + show_request_password: boolean_filter_operators show_theme_control: boolean_filter_operators show_zoom_control: boolean_filter_operators tile_server_attribution: string_filter_operators tile_server_url: string_filter_operators url: string_filter_operators zoom: number_filter_operators - hide_signup: boolean_filter_operators - show_request_password: boolean_filter_operators layers: layers_maps_quantifier_filter layers_func: count_function_filter_operators _and: [maps_filter] @@ -4296,6 +4296,7 @@ input update_maps_input { """You can include GeoJSON""" geo: JSON + hide_signup: Boolean id: ID info_open: Boolean logo: update_directus_files_input @@ -4304,14 +4305,13 @@ input update_maps_input { show_filter_control: Boolean show_gratitude_control: Boolean show_layer_control: Boolean + show_request_password: Boolean show_theme_control: Boolean show_zoom_control: Boolean tile_server_attribution: String tile_server_url: String url: String zoom: Int - hide_signup: Boolean - show_request_password: Boolean layers: [update_layers_maps_input] }