From 3c7ca6b54e30816b67a18d726f2e7c9c85ad1d0c Mon Sep 17 00:00:00 2001 From: Quinn Hegeman <102350242+itsfinniii@users.noreply.github.com> Date: Fri, 27 Feb 2026 21:09:30 +0100 Subject: [PATCH] Add robot settings to Directus --- directus/schema.json | 857 ++++++++++++++++++++++++++++++++++++++----- 1 file changed, 756 insertions(+), 101 deletions(-) diff --git a/directus/schema.json b/directus/schema.json index 5fdd109..a0b5797 100644 --- a/directus/schema.json +++ b/directus/schema.json @@ -1,10 +1,36 @@ { "collections": [ { - "collection": "Settings", + "collection": "Robots", "meta": { - "collection": "Settings", - "icon": "settings", + "collection": "Robots", + "icon": "robot_2", + "note": null, + "display_template": null, + "hidden": false, + "singleton": true, + "translations": null, + "archive_field": null, + "archive_app_filter": true, + "archive_value": null, + "unarchive_value": null, + "sort_field": null, + "accountability": "all", + "color": null, + "item_duplication_fields": null, + "sort": 1, + "group": "Single_Pages", + "collapse": "open", + "preview_url": null, + "versioning": false + }, + "schema": {} + }, + { + "collection": "Single_Pages", + "meta": { + "collection": "Single_Pages", + "icon": "file_present", "note": null, "display_template": null, "hidden": false, @@ -52,6 +78,32 @@ }, "schema": {} }, + { + "collection": "Settings", + "meta": { + "collection": "Settings", + "icon": "settings", + "note": null, + "display_template": null, + "hidden": false, + "singleton": false, + "translations": null, + "archive_field": null, + "archive_app_filter": true, + "archive_value": null, + "unarchive_value": null, + "sort_field": null, + "accountability": "all", + "color": null, + "item_duplication_fields": null, + "sort": 2, + "group": null, + "collapse": "open", + "preview_url": null, + "versioning": false + }, + "schema": null + }, { "collection": "Sitemap_Settings", "meta": { @@ -80,6 +132,557 @@ } ], "fields": [ + { + "collection": "Robots", + "field": "id", + "type": "integer", + "schema": { + "name": "id", + "table": "Robots", + "data_type": "integer", + "default_value": "nextval('\"Robots_id_seq\"'::regclass)", + "generation_expression": null, + "max_length": null, + "numeric_precision": 32, + "numeric_scale": 0, + "is_generated": false, + "is_nullable": false, + "is_unique": true, + "is_indexed": false, + "is_primary_key": true, + "has_auto_increment": true, + "foreign_key_schema": null, + "foreign_key_table": null, + "foreign_key_column": null, + "comment": null + }, + "meta": { + "collection": "Robots", + "field": "id", + "special": null, + "interface": "input", + "options": null, + "display": null, + "display_options": null, + "readonly": true, + "hidden": true, + "sort": 1, + "width": "full", + "translations": null, + "note": null, + "conditions": null, + "required": false, + "group": null, + "validation": null, + "validation_message": null, + "searchable": true + } + }, + { + "collection": "Robots", + "field": "user_created", + "type": "uuid", + "schema": { + "name": "user_created", + "table": "Robots", + "data_type": "uuid", + "default_value": null, + "generation_expression": null, + "max_length": null, + "numeric_precision": null, + "numeric_scale": null, + "is_generated": false, + "is_nullable": true, + "is_unique": false, + "is_indexed": false, + "is_primary_key": false, + "has_auto_increment": false, + "foreign_key_schema": "public", + "foreign_key_table": "directus_users", + "foreign_key_column": "id", + "comment": null + }, + "meta": { + "collection": "Robots", + "field": "user_created", + "special": [ + "user-created" + ], + "interface": "select-dropdown-m2o", + "options": { + "template": "{{avatar}} {{first_name}} {{last_name}}" + }, + "display": "user", + "display_options": null, + "readonly": true, + "hidden": true, + "sort": 2, + "width": "half", + "translations": null, + "note": null, + "conditions": null, + "required": false, + "group": null, + "validation": null, + "validation_message": null, + "searchable": true + } + }, + { + "collection": "Robots", + "field": "date_created", + "type": "timestamp", + "schema": { + "name": "date_created", + "table": "Robots", + "data_type": "timestamp with time zone", + "default_value": null, + "generation_expression": null, + "max_length": null, + "numeric_precision": null, + "numeric_scale": null, + "is_generated": false, + "is_nullable": true, + "is_unique": false, + "is_indexed": false, + "is_primary_key": false, + "has_auto_increment": false, + "foreign_key_schema": null, + "foreign_key_table": null, + "foreign_key_column": null, + "comment": null + }, + "meta": { + "collection": "Robots", + "field": "date_created", + "special": [ + "date-created" + ], + "interface": "datetime", + "options": null, + "display": "datetime", + "display_options": { + "relative": true + }, + "readonly": true, + "hidden": true, + "sort": 3, + "width": "half", + "translations": null, + "note": null, + "conditions": null, + "required": false, + "group": null, + "validation": null, + "validation_message": null, + "searchable": true + } + }, + { + "collection": "Robots", + "field": "user_updated", + "type": "uuid", + "schema": { + "name": "user_updated", + "table": "Robots", + "data_type": "uuid", + "default_value": null, + "generation_expression": null, + "max_length": null, + "numeric_precision": null, + "numeric_scale": null, + "is_generated": false, + "is_nullable": true, + "is_unique": false, + "is_indexed": false, + "is_primary_key": false, + "has_auto_increment": false, + "foreign_key_schema": "public", + "foreign_key_table": "directus_users", + "foreign_key_column": "id", + "comment": null + }, + "meta": { + "collection": "Robots", + "field": "user_updated", + "special": [ + "user-updated" + ], + "interface": "select-dropdown-m2o", + "options": { + "template": "{{avatar}} {{first_name}} {{last_name}}" + }, + "display": "user", + "display_options": null, + "readonly": true, + "hidden": true, + "sort": 4, + "width": "half", + "translations": null, + "note": null, + "conditions": null, + "required": false, + "group": null, + "validation": null, + "validation_message": null, + "searchable": true + } + }, + { + "collection": "Robots", + "field": "date_updated", + "type": "timestamp", + "schema": { + "name": "date_updated", + "table": "Robots", + "data_type": "timestamp with time zone", + "default_value": null, + "generation_expression": null, + "max_length": null, + "numeric_precision": null, + "numeric_scale": null, + "is_generated": false, + "is_nullable": true, + "is_unique": false, + "is_indexed": false, + "is_primary_key": false, + "has_auto_increment": false, + "foreign_key_schema": null, + "foreign_key_table": null, + "foreign_key_column": null, + "comment": null + }, + "meta": { + "collection": "Robots", + "field": "date_updated", + "special": [ + "date-updated" + ], + "interface": "datetime", + "options": null, + "display": "datetime", + "display_options": { + "relative": true + }, + "readonly": true, + "hidden": true, + "sort": 5, + "width": "half", + "translations": null, + "note": null, + "conditions": null, + "required": false, + "group": null, + "validation": null, + "validation_message": null, + "searchable": true + } + }, + { + "collection": "Robots", + "field": "divider-w6lk_y", + "type": "alias", + "schema": null, + "meta": { + "collection": "Robots", + "field": "divider-w6lk_y", + "special": [ + "alias", + "no-data" + ], + "interface": "presentation-divider", + "options": { + "title": "Pre-selected options", + "icon": "tv_options_edit_channels" + }, + "display": null, + "display_options": null, + "readonly": false, + "hidden": false, + "sort": 6, + "width": "full", + "translations": null, + "note": null, + "conditions": null, + "required": false, + "group": null, + "validation": null, + "validation_message": null, + "searchable": true + } + }, + { + "collection": "Robots", + "field": "crawlers", + "type": "json", + "schema": { + "name": "crawlers", + "table": "Robots", + "data_type": "json", + "default_value": null, + "generation_expression": null, + "max_length": null, + "numeric_precision": null, + "numeric_scale": null, + "is_generated": false, + "is_nullable": true, + "is_unique": false, + "is_indexed": false, + "is_primary_key": false, + "has_auto_increment": false, + "foreign_key_schema": null, + "foreign_key_table": null, + "foreign_key_column": null, + "comment": null + }, + "meta": { + "collection": "Robots", + "field": "crawlers", + "special": [ + "cast-json" + ], + "interface": "select-multiple-checkbox-tree", + "options": { + "choices": [ + { + "text": "Search Engines", + "value": "search_engines", + "children": [ + { + "text": "Google (USA)", + "value": "google" + }, + { + "text": "Bing (USA)", + "value": "bing" + }, + { + "text": "Slurp / Yahoo (USA)", + "value": "slurp" + }, + { + "text": "DuckDuckGo (USA)", + "value": "duckduckgo" + }, + { + "text": "Baiduspider / Baidu (China)", + "value": "baidu" + }, + { + "text": "Yandex (China)", + "value": "yandex" + }, + { + "text": "Sogou (China)", + "value": "sogou" + }, + { + "text": "Seznam (Czechia)", + "value": "seznam" + }, + { + "text": "QwantBot / Qwant (France)", + "value": "qwantbot" + }, + { + "text": "NaverBot / Naver (S. Korea)", + "value": "naverbot" + }, + { + "text": "CocCocBot / Cốc Cốc (Vietnam)", + "value": "coccocbot" + }, + { + "text": "MojeekBot / Mojeek (UK)", + "value": "mojeekbot" + } + ] + }, + { + "text": "Link Crawlers", + "value": "link_crawlers", + "children": [ + { + "text": "AhrefsBot / Ahrefs (Singapore)", + "value": "ahrefs" + }, + { + "text": "SemrushBot / Semrush (USA)", + "value": "semrush" + }, + { + "text": "MJ12bot (UK)", + "value": "mj12bot" + }, + { + "text": "DotBot (USA)", + "value": "dotbot" + }, + { + "text": "PetalBot (China)", + "value": "petalbot" + } + ] + }, + { + "text": "AI Crawlers", + "value": "ai", + "children": [ + { + "text": "GPTBot / OpenAI ChatGPT", + "value": "gptbot" + }, + { + "text": "CCBot (USA)", + "value": "ccbot" + }, + { + "text": "ia_archiver / Internet Archive", + "value": "ia_archiver" + }, + { + "text": "ClaudeBot / ClaudeAI", + "value": "claudebot" + }, + { + "text": "PerplexityBot / PerplexityAI (USA)", + "value": "perplexity" + } + ] + }, + { + "text": "Social Media Crawlers", + "value": "social_media", + "children": [ + { + "text": "facebookexternalhit / Facebook (USA)", + "value": "facebookexternalhit" + }, + { + "text": "Twitterbot / Twitter (USA)", + "value": "twitterbot" + }, + { + "text": "LinkedInBot / LinkedIn (USA)", + "value": "linkedinbot" + }, + { + "text": "Bytespider / ByteDance (China)", + "value": "bytespider" + } + ] + }, + { + "text": "Service Crawlers", + "value": "services", + "children": [ + { + "text": "Applebot / Apple (USA)", + "value": "applebot" + }, + { + "text": "Amazonbot / Amazon (USA)", + "value": "amazonbot" + } + ] + } + ] + }, + "display": null, + "display_options": null, + "readonly": false, + "hidden": false, + "sort": 8, + "width": "full", + "translations": null, + "note": null, + "conditions": null, + "required": true, + "group": null, + "validation": null, + "validation_message": null, + "searchable": true + } + }, + { + "collection": "Robots", + "field": "divider-ooa_g8", + "type": "alias", + "schema": null, + "meta": { + "collection": "Robots", + "field": "divider-ooa_g8", + "special": [ + "alias", + "no-data" + ], + "interface": "presentation-divider", + "options": { + "title": "Custom Texts", + "icon": "text_fields" + }, + "display": null, + "display_options": null, + "readonly": false, + "hidden": false, + "sort": 9, + "width": "full", + "translations": null, + "note": null, + "conditions": null, + "required": false, + "group": null, + "validation": null, + "validation_message": null, + "searchable": true + } + }, + { + "collection": "Robots", + "field": "extra_content", + "type": "text", + "schema": { + "name": "extra_content", + "table": "Robots", + "data_type": "text", + "default_value": null, + "generation_expression": null, + "max_length": null, + "numeric_precision": null, + "numeric_scale": null, + "is_generated": false, + "is_nullable": true, + "is_unique": false, + "is_indexed": false, + "is_primary_key": false, + "has_auto_increment": false, + "foreign_key_schema": null, + "foreign_key_table": null, + "foreign_key_column": null, + "comment": null + }, + "meta": { + "collection": "Robots", + "field": "extra_content", + "special": null, + "interface": "input-multiline", + "options": null, + "display": "raw", + "display_options": null, + "readonly": false, + "hidden": false, + "sort": 10, + "width": "full", + "translations": null, + "note": null, + "conditions": null, + "required": false, + "group": null, + "validation": null, + "validation_message": null, + "searchable": true + } + }, { "collection": "Website_Settings", "field": "id", @@ -975,6 +1578,26 @@ "collection": "Sitemap_Settings", "field": "id", "type": "integer", + "schema": { + "name": "id", + "table": "Sitemap_Settings", + "data_type": "integer", + "default_value": "nextval('\"Sitemap_Settings_id_seq\"'::regclass)", + "generation_expression": null, + "max_length": null, + "numeric_precision": 32, + "numeric_scale": 0, + "is_generated": false, + "is_nullable": false, + "is_unique": true, + "is_indexed": false, + "is_primary_key": true, + "has_auto_increment": true, + "foreign_key_schema": null, + "foreign_key_table": null, + "foreign_key_column": null, + "comment": null + }, "meta": { "collection": "Sitemap_Settings", "field": "id", @@ -995,32 +1618,32 @@ "validation": null, "validation_message": null, "searchable": true - }, - "schema": { - "name": "id", - "table": "Sitemap_Settings", - "data_type": "integer", - "default_value": "nextval('\"Sitemap_Settings_id_seq\"'::regclass)", - "generation_expression": null, - "max_length": null, - "numeric_precision": 32, - "numeric_scale": 0, - "is_generated": false, - "is_nullable": false, - "is_unique": true, - "is_indexed": false, - "is_primary_key": true, - "has_auto_increment": true, - "foreign_key_schema": null, - "foreign_key_table": null, - "foreign_key_column": null, - "comment": null } }, { "collection": "Sitemap_Settings", "field": "user_created", "type": "uuid", + "schema": { + "name": "user_created", + "table": "Sitemap_Settings", + "data_type": "uuid", + "default_value": null, + "generation_expression": null, + "max_length": null, + "numeric_precision": null, + "numeric_scale": null, + "is_generated": false, + "is_nullable": true, + "is_unique": false, + "is_indexed": false, + "is_primary_key": false, + "has_auto_increment": false, + "foreign_key_schema": "public", + "foreign_key_table": "directus_users", + "foreign_key_column": "id", + "comment": null + }, "meta": { "collection": "Sitemap_Settings", "field": "user_created", @@ -1045,11 +1668,16 @@ "validation": null, "validation_message": null, "searchable": true - }, + } + }, + { + "collection": "Sitemap_Settings", + "field": "date_created", + "type": "timestamp", "schema": { - "name": "user_created", + "name": "date_created", "table": "Sitemap_Settings", - "data_type": "uuid", + "data_type": "timestamp with time zone", "default_value": null, "generation_expression": null, "max_length": null, @@ -1061,16 +1689,11 @@ "is_indexed": false, "is_primary_key": false, "has_auto_increment": false, - "foreign_key_schema": "public", - "foreign_key_table": "directus_users", - "foreign_key_column": "id", + "foreign_key_schema": null, + "foreign_key_table": null, + "foreign_key_column": null, "comment": null - } - }, - { - "collection": "Sitemap_Settings", - "field": "date_created", - "type": "timestamp", + }, "meta": { "collection": "Sitemap_Settings", "field": "date_created", @@ -1095,11 +1718,16 @@ "validation": null, "validation_message": null, "searchable": true - }, + } + }, + { + "collection": "Sitemap_Settings", + "field": "user_updated", + "type": "uuid", "schema": { - "name": "date_created", + "name": "user_updated", "table": "Sitemap_Settings", - "data_type": "timestamp with time zone", + "data_type": "uuid", "default_value": null, "generation_expression": null, "max_length": null, @@ -1111,16 +1739,11 @@ "is_indexed": false, "is_primary_key": false, "has_auto_increment": false, - "foreign_key_schema": null, - "foreign_key_table": null, - "foreign_key_column": null, + "foreign_key_schema": "public", + "foreign_key_table": "directus_users", + "foreign_key_column": "id", "comment": null - } - }, - { - "collection": "Sitemap_Settings", - "field": "user_updated", - "type": "uuid", + }, "meta": { "collection": "Sitemap_Settings", "field": "user_updated", @@ -1145,11 +1768,16 @@ "validation": null, "validation_message": null, "searchable": true - }, + } + }, + { + "collection": "Sitemap_Settings", + "field": "date_updated", + "type": "timestamp", "schema": { - "name": "user_updated", + "name": "date_updated", "table": "Sitemap_Settings", - "data_type": "uuid", + "data_type": "timestamp with time zone", "default_value": null, "generation_expression": null, "max_length": null, @@ -1161,16 +1789,11 @@ "is_indexed": false, "is_primary_key": false, "has_auto_increment": false, - "foreign_key_schema": "public", - "foreign_key_table": "directus_users", - "foreign_key_column": "id", + "foreign_key_schema": null, + "foreign_key_table": null, + "foreign_key_column": null, "comment": null - } - }, - { - "collection": "Sitemap_Settings", - "field": "date_updated", - "type": "timestamp", + }, "meta": { "collection": "Sitemap_Settings", "field": "date_updated", @@ -1195,32 +1818,13 @@ "validation": null, "validation_message": null, "searchable": true - }, - "schema": { - "name": "date_updated", - "table": "Sitemap_Settings", - "data_type": "timestamp with time zone", - "default_value": null, - "generation_expression": null, - "max_length": null, - "numeric_precision": null, - "numeric_scale": null, - "is_generated": false, - "is_nullable": true, - "is_unique": false, - "is_indexed": false, - "is_primary_key": false, - "has_auto_increment": false, - "foreign_key_schema": null, - "foreign_key_table": null, - "foreign_key_column": null, - "comment": null } }, { "collection": "Sitemap_Settings", "field": "divider-zd110b", "type": "alias", + "schema": null, "meta": { "collection": "Sitemap_Settings", "field": "divider-zd110b", @@ -1247,13 +1851,32 @@ "validation": null, "validation_message": null, "searchable": true - }, - "schema": null + } }, { "collection": "Sitemap_Settings", "field": "per_page", "type": "integer", + "schema": { + "name": "per_page", + "table": "Sitemap_Settings", + "data_type": "integer", + "default_value": 75, + "generation_expression": null, + "max_length": null, + "numeric_precision": 32, + "numeric_scale": 0, + "is_generated": false, + "is_nullable": false, + "is_unique": false, + "is_indexed": false, + "is_primary_key": false, + "has_auto_increment": false, + "foreign_key_schema": null, + "foreign_key_table": null, + "foreign_key_column": null, + "comment": null + }, "meta": { "collection": "Sitemap_Settings", "field": "per_page", @@ -1278,30 +1901,62 @@ "validation": null, "validation_message": null, "searchable": true - }, - "schema": { - "name": "per_page", - "table": "Sitemap_Settings", - "data_type": "integer", - "default_value": 75, - "generation_expression": null, - "max_length": null, - "numeric_precision": 32, - "numeric_scale": 0, - "is_generated": false, - "is_nullable": false, - "is_unique": false, - "is_indexed": false, - "is_primary_key": false, - "has_auto_increment": false, - "foreign_key_schema": null, - "foreign_key_table": null, - "foreign_key_column": null, - "comment": null } } ], "relations": [ + { + "collection": "Robots", + "field": "user_created", + "related_collection": "directus_users", + "schema": { + "constraint_name": "robots_user_created_foreign", + "table": "Robots", + "column": "user_created", + "foreign_key_schema": "public", + "foreign_key_table": "directus_users", + "foreign_key_column": "id", + "on_update": "NO ACTION", + "on_delete": "NO ACTION" + }, + "meta": { + "many_collection": "Robots", + "many_field": "user_created", + "one_collection": "directus_users", + "one_field": null, + "one_collection_field": null, + "one_allowed_collections": null, + "junction_field": null, + "sort_field": null, + "one_deselect_action": "nullify" + } + }, + { + "collection": "Robots", + "field": "user_updated", + "related_collection": "directus_users", + "schema": { + "constraint_name": "robots_user_updated_foreign", + "table": "Robots", + "column": "user_updated", + "foreign_key_schema": "public", + "foreign_key_table": "directus_users", + "foreign_key_column": "id", + "on_update": "NO ACTION", + "on_delete": "NO ACTION" + }, + "meta": { + "many_collection": "Robots", + "many_field": "user_updated", + "one_collection": "directus_users", + "one_field": null, + "one_collection_field": null, + "one_allowed_collections": null, + "junction_field": null, + "sort_field": null, + "one_deselect_action": "nullify" + } + }, { "collection": "Website_Settings", "field": "user_created",