From efa89313fa4152252b477aafd88f7cf4a66747d8 Mon Sep 17 00:00:00 2001 From: Valentin Popov Date: Thu, 5 Feb 2026 10:19:56 +0000 Subject: Initial Strapi plugin project --- .../api/author/content-types/author/schema.json | 34 ++++++++++++++++++++++ playground/src/api/author/controllers/author.ts | 7 +++++ playground/src/api/author/routes/author.ts | 7 +++++ playground/src/api/author/services/author.ts | 7 +++++ 4 files changed, 55 insertions(+) create mode 100644 playground/src/api/author/content-types/author/schema.json create mode 100644 playground/src/api/author/controllers/author.ts create mode 100644 playground/src/api/author/routes/author.ts create mode 100644 playground/src/api/author/services/author.ts (limited to 'playground/src/api/author') diff --git a/playground/src/api/author/content-types/author/schema.json b/playground/src/api/author/content-types/author/schema.json new file mode 100644 index 0000000..a202482 --- /dev/null +++ b/playground/src/api/author/content-types/author/schema.json @@ -0,0 +1,34 @@ +{ + "kind": "collectionType", + "collectionName": "authors", + "info": { + "singularName": "author", + "pluralName": "authors", + "displayName": "Author", + "description": "Create authors for your content" + }, + "options": { + "draftAndPublish": false + }, + "pluginOptions": {}, + "attributes": { + "name": { + "type": "string" + }, + "avatar": { + "type": "media", + "multiple": false, + "required": false, + "allowedTypes": ["images", "files", "videos"] + }, + "email": { + "type": "string" + }, + "articles": { + "type": "relation", + "relation": "oneToMany", + "target": "api::article.article", + "mappedBy": "author" + } + } +} diff --git a/playground/src/api/author/controllers/author.ts b/playground/src/api/author/controllers/author.ts new file mode 100644 index 0000000..2649762 --- /dev/null +++ b/playground/src/api/author/controllers/author.ts @@ -0,0 +1,7 @@ +/** + * author controller + */ + +import { factories } from '@strapi/strapi'; + +export default factories.createCoreController('api::author.author'); diff --git a/playground/src/api/author/routes/author.ts b/playground/src/api/author/routes/author.ts new file mode 100644 index 0000000..10475e7 --- /dev/null +++ b/playground/src/api/author/routes/author.ts @@ -0,0 +1,7 @@ +/** + * author router. + */ + +import { factories } from '@strapi/strapi'; + +export default factories.createCoreRouter('api::author.author'); diff --git a/playground/src/api/author/services/author.ts b/playground/src/api/author/services/author.ts new file mode 100644 index 0000000..16f75eb --- /dev/null +++ b/playground/src/api/author/services/author.ts @@ -0,0 +1,7 @@ +/** + * author service. + */ + +import { factories } from '@strapi/strapi'; + +export default factories.createCoreService('api::author.author'); -- cgit v1.2.3