diff --git a/src/api/category/content-types/category/schema.json b/src/api/category/content-types/category/schema.json index 5a1171f..e748899 100644 --- a/src/api/category/content-types/category/schema.json +++ b/src/api/category/content-types/category/schema.json @@ -4,7 +4,7 @@ "info": { "singularName": "category", "pluralName": "categories", - "displayName": "Category", + "displayName": "Categories", "description": "" }, "options": { diff --git a/src/api/chronology-era/content-types/chronology-era/schema.json b/src/api/chronology-era/content-types/chronology-era/schema.json index 52670e9..d449b04 100644 --- a/src/api/chronology-era/content-types/chronology-era/schema.json +++ b/src/api/chronology-era/content-types/chronology-era/schema.json @@ -4,7 +4,7 @@ "info": { "singularName": "chronology-era", "pluralName": "chronology-eras", - "displayName": "Chronology Era", + "displayName": "Chronology Eras", "description": "" }, "options": { diff --git a/src/api/chronology-item/content-types/chronology-item/schema.json b/src/api/chronology-item/content-types/chronology-item/schema.json index 316e814..f63909a 100644 --- a/src/api/chronology-item/content-types/chronology-item/schema.json +++ b/src/api/chronology-item/content-types/chronology-item/schema.json @@ -4,7 +4,7 @@ "info": { "singularName": "chronology-item", "pluralName": "chronology-items", - "displayName": "Chronology Item", + "displayName": "Chronology Items", "description": "" }, "options": { @@ -35,10 +35,11 @@ "pluginOptions": {}, "type": "string" }, - "translations": { + "events": { + "displayName": "Event", "type": "component", "repeatable": true, - "component": "translations.chronology-item" + "component": "collections-component.event" } } } diff --git a/src/api/currency/content-types/currency/schema.json b/src/api/currency/content-types/currency/schema.json index 685fd40..364109d 100644 --- a/src/api/currency/content-types/currency/schema.json +++ b/src/api/currency/content-types/currency/schema.json @@ -4,7 +4,7 @@ "info": { "singularName": "currency", "pluralName": "currencies", - "displayName": "Currency", + "displayName": "Currencies", "description": "" }, "options": { diff --git a/src/api/game-platform/content-types/game-platform/schema.json b/src/api/game-platform/content-types/game-platform/schema.json index 0c567fb..6722d69 100644 --- a/src/api/game-platform/content-types/game-platform/schema.json +++ b/src/api/game-platform/content-types/game-platform/schema.json @@ -4,7 +4,7 @@ "info": { "singularName": "game-platform", "pluralName": "game-platforms", - "displayName": "Game Platform", + "displayName": "Game Platforms", "description": "" }, "options": { @@ -13,10 +13,12 @@ "pluginOptions": {}, "attributes": { "name": { - "type": "string" + "type": "string", + "required": true }, "short": { - "type": "string" + "type": "string", + "required": true } } } diff --git a/src/api/glossary-item-type/content-types/glossary-item-type/schema.json b/src/api/glossary-item-type/content-types/glossary-item-type/schema.json new file mode 100644 index 0000000..b5b3563 --- /dev/null +++ b/src/api/glossary-item-type/content-types/glossary-item-type/schema.json @@ -0,0 +1,20 @@ +{ + "kind": "collectionType", + "collectionName": "glossary_item_types", + "info": { + "singularName": "glossary-item-type", + "pluralName": "glossary-item-types", + "displayName": "Glossary Item Types" + }, + "options": { + "draftAndPublish": false + }, + "pluginOptions": {}, + "attributes": { + "type": { + "type": "string", + "required": true, + "unique": true + } + } +} diff --git a/src/api/glossary-item-type/controllers/glossary-item-type.js b/src/api/glossary-item-type/controllers/glossary-item-type.js new file mode 100644 index 0000000..60cc82e --- /dev/null +++ b/src/api/glossary-item-type/controllers/glossary-item-type.js @@ -0,0 +1,9 @@ +'use strict'; + +/** + * glossary-item-type controller + */ + +const { createCoreController } = require('@strapi/strapi').factories; + +module.exports = createCoreController('api::glossary-item-type.glossary-item-type'); diff --git a/src/api/glossary-item-type/routes/glossary-item-type.js b/src/api/glossary-item-type/routes/glossary-item-type.js new file mode 100644 index 0000000..d0b9a3e --- /dev/null +++ b/src/api/glossary-item-type/routes/glossary-item-type.js @@ -0,0 +1,9 @@ +'use strict'; + +/** + * glossary-item-type router. + */ + +const { createCoreRouter } = require('@strapi/strapi').factories; + +module.exports = createCoreRouter('api::glossary-item-type.glossary-item-type'); diff --git a/src/api/glossary-item-type/services/glossary-item-type.js b/src/api/glossary-item-type/services/glossary-item-type.js new file mode 100644 index 0000000..f3bbbfc --- /dev/null +++ b/src/api/glossary-item-type/services/glossary-item-type.js @@ -0,0 +1,9 @@ +'use strict'; + +/** + * glossary-item-type service. + */ + +const { createCoreService } = require('@strapi/strapi').factories; + +module.exports = createCoreService('api::glossary-item-type.glossary-item-type'); diff --git a/src/api/glossary-item/content-types/glossary-item/schema.json b/src/api/glossary-item/content-types/glossary-item/schema.json index ec9dab7..4b5ff9f 100644 --- a/src/api/glossary-item/content-types/glossary-item/schema.json +++ b/src/api/glossary-item/content-types/glossary-item/schema.json @@ -4,7 +4,7 @@ "info": { "singularName": "glossary-item", "pluralName": "glossary-items", - "displayName": "Glossary Item", + "displayName": "Glossary Items", "description": "" }, "options": { @@ -12,15 +12,6 @@ }, "pluginOptions": {}, "attributes": { - "type": { - "type": "enumeration", - "enum": [ - "Character", - "Place", - "Term", - "Common_noun" - ] - }, "title": { "displayName": "Glossary Item", "type": "component", @@ -38,6 +29,11 @@ "regex": "^[a-z0-9]+(?:-[a-z0-9]+)*$", "unique": true, "required": true + }, + "type": { + "type": "relation", + "relation": "oneToOne", + "target": "api::glossary-item-type.glossary-item-type" } } } diff --git a/src/api/language/content-types/language/schema.json b/src/api/language/content-types/language/schema.json index bfd0daf..bd2d9b8 100644 --- a/src/api/language/content-types/language/schema.json +++ b/src/api/language/content-types/language/schema.json @@ -4,7 +4,7 @@ "info": { "singularName": "language", "pluralName": "languages", - "displayName": "Language", + "displayName": "Languages", "description": "" }, "options": { @@ -23,7 +23,8 @@ "regex": "^[a-z]+-[a-z]+$|^[a-z]+$" }, "localized_name": { - "type": "string" + "type": "string", + "required": true } } } diff --git a/src/api/library-content/content-types/library-content/schema.json b/src/api/library-content/content-types/library-content/schema.json index 6fdf299..cd2a89c 100644 --- a/src/api/library-content/content-types/library-content/schema.json +++ b/src/api/library-content/content-types/library-content/schema.json @@ -4,7 +4,7 @@ "info": { "singularName": "library-content", "pluralName": "library-contents", - "displayName": "Library Content", + "displayName": "Library Contents", "description": "" }, "options": { @@ -46,7 +46,7 @@ "type": "dynamiczone", "components": [ "range.page-range", - "range.video-range" + "range.audiovisual-range" ], "required": true, "max": 1 diff --git a/src/api/library-item/content-types/library-item/schema.json b/src/api/library-item/content-types/library-item/schema.json index 472869f..e897307 100644 --- a/src/api/library-item/content-types/library-item/schema.json +++ b/src/api/library-item/content-types/library-item/schema.json @@ -4,7 +4,7 @@ "info": { "singularName": "library-item", "pluralName": "library-items", - "displayName": "Library Item", + "displayName": "Library Items", "description": "" }, "options": { diff --git a/src/api/library-variant/content-types/library-variant/schema.json b/src/api/library-variant/content-types/library-variant/schema.json index babb829..36a5d16 100644 --- a/src/api/library-variant/content-types/library-variant/schema.json +++ b/src/api/library-variant/content-types/library-variant/schema.json @@ -4,7 +4,7 @@ "info": { "singularName": "library-variant", "pluralName": "library-variants", - "displayName": "Library Variant", + "displayName": "Library Variants", "description": "" }, "options": { diff --git a/src/api/post/content-types/post/schema.json b/src/api/post/content-types/post/schema.json index 4f84a6b..22a8e95 100644 --- a/src/api/post/content-types/post/schema.json +++ b/src/api/post/content-types/post/schema.json @@ -4,7 +4,7 @@ "info": { "singularName": "post", "pluralName": "posts", - "displayName": "Post", + "displayName": "Posts", "description": "" }, "options": { diff --git a/src/api/recorder/content-types/recorder/schema.json b/src/api/recorder/content-types/recorder/schema.json index 5f9476f..8569d90 100644 --- a/src/api/recorder/content-types/recorder/schema.json +++ b/src/api/recorder/content-types/recorder/schema.json @@ -4,7 +4,7 @@ "info": { "singularName": "recorder", "pluralName": "recorders", - "displayName": "Recorder", + "displayName": "Recorders", "description": "" }, "options": { diff --git a/src/api/scan-set/content-types/scan-set/schema.json b/src/api/scan-set/content-types/scan-set/schema.json index 2a4240c..a701b77 100644 --- a/src/api/scan-set/content-types/scan-set/schema.json +++ b/src/api/scan-set/content-types/scan-set/schema.json @@ -4,7 +4,7 @@ "info": { "singularName": "scan-set", "pluralName": "scan-sets", - "displayName": "Scan Set", + "displayName": "Scan Sets", "description": "" }, "options": { diff --git a/src/api/source/content-types/source/schema.json b/src/api/source/content-types/source/schema.json new file mode 100644 index 0000000..a7007c7 --- /dev/null +++ b/src/api/source/content-types/source/schema.json @@ -0,0 +1,30 @@ +{ + "kind": "collectionType", + "collectionName": "sources", + "info": { + "singularName": "source", + "pluralName": "sources", + "displayName": "Sources", + "description": "" + }, + "options": { + "draftAndPublish": false + }, + "pluginOptions": {}, + "attributes": { + "source": { + "type": "dynamiczone", + "components": [ + "source.url-source", + "source.library-text" + ], + "max": 1, + "min": 1, + "required": true + }, + "name": { + "type": "string", + "required": false + } + } +} diff --git a/src/api/source/controllers/source.js b/src/api/source/controllers/source.js new file mode 100644 index 0000000..b0a5ab2 --- /dev/null +++ b/src/api/source/controllers/source.js @@ -0,0 +1,9 @@ +'use strict'; + +/** + * source controller + */ + +const { createCoreController } = require('@strapi/strapi').factories; + +module.exports = createCoreController('api::source.source'); diff --git a/src/api/source/routes/source.js b/src/api/source/routes/source.js new file mode 100644 index 0000000..d15a9de --- /dev/null +++ b/src/api/source/routes/source.js @@ -0,0 +1,9 @@ +'use strict'; + +/** + * source router. + */ + +const { createCoreRouter } = require('@strapi/strapi').factories; + +module.exports = createCoreRouter('api::source.source'); diff --git a/src/api/source/services/source.js b/src/api/source/services/source.js new file mode 100644 index 0000000..2176f73 --- /dev/null +++ b/src/api/source/services/source.js @@ -0,0 +1,9 @@ +'use strict'; + +/** + * source service. + */ + +const { createCoreService } = require('@strapi/strapi').factories; + +module.exports = createCoreService('api::source.source'); diff --git a/src/api/text-set/content-types/text-set/schema.json b/src/api/text-set/content-types/text-set/schema.json index a01c5dc..e32603a 100644 --- a/src/api/text-set/content-types/text-set/schema.json +++ b/src/api/text-set/content-types/text-set/schema.json @@ -4,7 +4,7 @@ "info": { "singularName": "text-set", "pluralName": "text-sets", - "displayName": "Text Set", + "displayName": "Text Sets", "description": "" }, "options": { diff --git a/src/api/weapon-story-type/content-types/weapon-story-type/schema.json b/src/api/weapon-story-type/content-types/weapon-story-type/schema.json new file mode 100644 index 0000000..a72922a --- /dev/null +++ b/src/api/weapon-story-type/content-types/weapon-story-type/schema.json @@ -0,0 +1,28 @@ +{ + "kind": "collectionType", + "collectionName": "weapon_story_types", + "info": { + "singularName": "weapon-story-type", + "pluralName": "weapon-story-types", + "displayName": "Weapon Story Types", + "description": "" + }, + "options": { + "draftAndPublish": false + }, + "pluginOptions": {}, + "attributes": { + "slug": { + "type": "string", + "regex": "^[a-z0-9]+(?:-[a-z0-9]+)*$", + "unique": true, + "required": true + }, + "translations": { + "displayName": "Weapon Story Type", + "type": "component", + "repeatable": true, + "component": "translations.weapon-story-type" + } + } +} diff --git a/src/api/weapon-story-type/controllers/weapon-story-type.js b/src/api/weapon-story-type/controllers/weapon-story-type.js new file mode 100644 index 0000000..c8e7482 --- /dev/null +++ b/src/api/weapon-story-type/controllers/weapon-story-type.js @@ -0,0 +1,9 @@ +'use strict'; + +/** + * weapon-story-type controller + */ + +const { createCoreController } = require('@strapi/strapi').factories; + +module.exports = createCoreController('api::weapon-story-type.weapon-story-type'); diff --git a/src/api/weapon-story-type/routes/weapon-story-type.js b/src/api/weapon-story-type/routes/weapon-story-type.js new file mode 100644 index 0000000..0569a8b --- /dev/null +++ b/src/api/weapon-story-type/routes/weapon-story-type.js @@ -0,0 +1,9 @@ +'use strict'; + +/** + * weapon-story-type router. + */ + +const { createCoreRouter } = require('@strapi/strapi').factories; + +module.exports = createCoreRouter('api::weapon-story-type.weapon-story-type'); diff --git a/src/api/weapon-story-type/services/weapon-story-type.js b/src/api/weapon-story-type/services/weapon-story-type.js new file mode 100644 index 0000000..74b0f40 --- /dev/null +++ b/src/api/weapon-story-type/services/weapon-story-type.js @@ -0,0 +1,9 @@ +'use strict'; + +/** + * weapon-story-type service. + */ + +const { createCoreService } = require('@strapi/strapi').factories; + +module.exports = createCoreService('api::weapon-story-type.weapon-story-type'); diff --git a/src/api/weapon-story/content-types/weapon-story/schema.json b/src/api/weapon-story/content-types/weapon-story/schema.json index 58f97f6..d480854 100644 --- a/src/api/weapon-story/content-types/weapon-story/schema.json +++ b/src/api/weapon-story/content-types/weapon-story/schema.json @@ -4,7 +4,7 @@ "info": { "singularName": "weapon-story", "pluralName": "weapon-stories", - "displayName": "Weapon Story", + "displayName": "Weapon Stories", "description": "" }, "options": { @@ -12,28 +12,10 @@ }, "pluginOptions": {}, "attributes": { - "type": { - "type": "enumeration", - "enum": [ - "Axe", - "Chakram", - "Combat_Bracers", - "Hammer", - "Longsword", - "Mace", - "One_handed_Sword", - "Pole_Axe", - "Rod", - "Spear", - "Staff", - "Sword", - "Two_handed_Sword" - ] - }, "name": { "displayName": "Weapon Story", "type": "component", - "repeatable": false, + "repeatable": true, "component": "translations.weapon-story" }, "slug": { @@ -46,6 +28,11 @@ "type": "component", "repeatable": true, "component": "collections-component.weapon-story" + }, + "type": { + "type": "relation", + "relation": "oneToOne", + "target": "api::weapon-story-type.weapon-story-type" } } } diff --git a/src/components/basics/source.json b/src/components/basics/source.json index 4d343ff..2e8020f 100644 --- a/src/components/basics/source.json +++ b/src/components/basics/source.json @@ -41,6 +41,9 @@ "type": "relation", "relation": "oneToOne", "target": "api::language.language" + }, + "footnotes": { + "type": "text" } } } diff --git a/src/components/collections-component/event.json b/src/components/collections-component/event.json new file mode 100644 index 0000000..15cce51 --- /dev/null +++ b/src/components/collections-component/event.json @@ -0,0 +1,21 @@ +{ + "collectionName": "components_collections_component_events", + "info": { + "displayName": "Event", + "icon": "bullseye", + "description": "" + }, + "options": {}, + "attributes": { + "translations": { + "type": "component", + "repeatable": true, + "component": "translations.chronology-item" + }, + "source": { + "type": "relation", + "relation": "oneToOne", + "target": "api::source.source" + } + } +} diff --git a/src/components/collections-component/glossary-definition.json b/src/components/collections-component/glossary-definition.json index 293a2a9..d2356a3 100644 --- a/src/components/collections-component/glossary-definition.json +++ b/src/components/collections-component/glossary-definition.json @@ -17,6 +17,11 @@ "type": "component", "repeatable": true, "component": "translations.glossary-definition" + }, + "source": { + "type": "relation", + "relation": "oneToOne", + "target": "api::source.source" } } } diff --git a/src/components/collections-component/weapon-story.json b/src/components/collections-component/weapon-story.json index 2ccc422..fb94ece 100644 --- a/src/components/collections-component/weapon-story.json +++ b/src/components/collections-component/weapon-story.json @@ -14,18 +14,14 @@ "component": "translations.weapon-story-story" }, "category": { - "type": "enumeration", - "enum": [ - "DOD1", - "DOD2", - "DOD3", - "NieR", - "NieR_Automata", - "NieR_1_22", - "SINoALICE", - "Reincarnation" - ], - "required": true + "type": "relation", + "relation": "oneToOne", + "target": "api::category.category" + }, + "source": { + "type": "relation", + "relation": "oneToOne", + "target": "api::source.source" } } } diff --git a/src/components/range/audiovisual-range.json b/src/components/range/audiovisual-range.json new file mode 100644 index 0000000..be400ea --- /dev/null +++ b/src/components/range/audiovisual-range.json @@ -0,0 +1,18 @@ +{ + "collectionName": "components_range_audiovisual_ranges", + "info": { + "displayName": "Audiovisual Range", + "icon": "camera" + }, + "options": {}, + "attributes": { + "starting_time": { + "type": "time", + "required": true + }, + "ending_time": { + "type": "time", + "required": true + } + } +} diff --git a/src/components/range/video-range.json b/src/components/range/video-range.json deleted file mode 100644 index 2c22007..0000000 --- a/src/components/range/video-range.json +++ /dev/null @@ -1,16 +0,0 @@ -{ - "collectionName": "components_range_video_ranges", - "info": { - "displayName": "Video Range", - "icon": "file-video" - }, - "options": {}, - "attributes": { - "starting_time": { - "type": "time" - }, - "ending_time": { - "type": "time" - } - } -} diff --git a/src/components/source/library-text.json b/src/components/source/library-text.json new file mode 100644 index 0000000..fd8eaf8 --- /dev/null +++ b/src/components/source/library-text.json @@ -0,0 +1,21 @@ +{ + "collectionName": "components_source_library_texts", + "info": { + "displayName": "Library Text", + "icon": "align-right" + }, + "options": {}, + "attributes": { + "text_set": { + "type": "relation", + "relation": "oneToOne", + "target": "api::text-set.text-set" + }, + "range": { + "type": "component", + "repeatable": false, + "component": "range.page-range", + "required": true + } + } +} diff --git a/src/components/source/url-source.json b/src/components/source/url-source.json new file mode 100644 index 0000000..ed43ae2 --- /dev/null +++ b/src/components/source/url-source.json @@ -0,0 +1,26 @@ +{ + "collectionName": "components_source_url_sources", + "info": { + "displayName": "URL Source", + "icon": "laptop", + "description": "" + }, + "options": {}, + "attributes": { + "title": { + "type": "string" + }, + "url": { + "type": "string" + }, + "note": { + "type": "text" + }, + "source": { + "type": "component", + "repeatable": false, + "component": "basics.source", + "required": true + } + } +} diff --git a/src/components/translations/chronology-item.json b/src/components/translations/chronology-item.json index 13babf6..d763446 100644 --- a/src/components/translations/chronology-item.json +++ b/src/components/translations/chronology-item.json @@ -17,6 +17,9 @@ }, "description": { "type": "text" + }, + "note": { + "type": "text" } } } diff --git a/src/components/translations/weapon-story-type.json b/src/components/translations/weapon-story-type.json new file mode 100644 index 0000000..172b5ac --- /dev/null +++ b/src/components/translations/weapon-story-type.json @@ -0,0 +1,18 @@ +{ + "collectionName": "components_translations_weapon_story_types", + "info": { + "displayName": "Weapon Story Type", + "icon": "broom" + }, + "options": {}, + "attributes": { + "name": { + "type": "string" + }, + "language": { + "type": "relation", + "relation": "oneToOne", + "target": "api::language.language" + } + } +}