feat: add Article content type schema and API endpoints
This commit is contained in:
parent
e443ece848
commit
a8c0ab8884
65
cms/cms/src/api/article/content-types/article/schema.json
Normal file
65
cms/cms/src/api/article/content-types/article/schema.json
Normal file
@ -0,0 +1,65 @@
|
|||||||
|
{
|
||||||
|
"kind": "collectionType",
|
||||||
|
"collectionName": "articles",
|
||||||
|
"info": {
|
||||||
|
"singularName": "article",
|
||||||
|
"pluralName": "articles",
|
||||||
|
"displayName": "Article",
|
||||||
|
"description": "News articles for Placebo.mk"
|
||||||
|
},
|
||||||
|
"options": {
|
||||||
|
"draftAndPublish": true
|
||||||
|
},
|
||||||
|
"pluginOptions": {},
|
||||||
|
"attributes": {
|
||||||
|
"title": {
|
||||||
|
"type": "string",
|
||||||
|
"required": true
|
||||||
|
},
|
||||||
|
"content": {
|
||||||
|
"type": "richtext"
|
||||||
|
},
|
||||||
|
"author": {
|
||||||
|
"type": "string"
|
||||||
|
},
|
||||||
|
"img": {
|
||||||
|
"type": "media",
|
||||||
|
"multiple": false,
|
||||||
|
"required": false,
|
||||||
|
"allowedTypes": ["images"]
|
||||||
|
},
|
||||||
|
"imagePosition": {
|
||||||
|
"type": "enumeration",
|
||||||
|
"enum": ["top", "left", "right", "none"],
|
||||||
|
"default": "top"
|
||||||
|
},
|
||||||
|
"imageSize": {
|
||||||
|
"type": "enumeration",
|
||||||
|
"enum": ["small", "medium", "large"],
|
||||||
|
"default": "medium"
|
||||||
|
},
|
||||||
|
"media": {
|
||||||
|
"type": "media",
|
||||||
|
"multiple": true,
|
||||||
|
"required": false,
|
||||||
|
"allowedTypes": ["images", "files", "videos", "audios"]
|
||||||
|
},
|
||||||
|
"videoUrl": {
|
||||||
|
"type": "string"
|
||||||
|
},
|
||||||
|
"videoPosition": {
|
||||||
|
"type": "enumeration",
|
||||||
|
"enum": ["top", "inline", "bottom", "none"],
|
||||||
|
"default": "inline"
|
||||||
|
},
|
||||||
|
"videoCaption": {
|
||||||
|
"type": "string"
|
||||||
|
},
|
||||||
|
"category": {
|
||||||
|
"type": "enumeration",
|
||||||
|
"enum": ["sport", "art", "science"],
|
||||||
|
"default": "sport",
|
||||||
|
"required": true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
7
cms/cms/src/api/article/controllers/article.ts
Normal file
7
cms/cms/src/api/article/controllers/article.ts
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
/**
|
||||||
|
* article controller
|
||||||
|
*/
|
||||||
|
|
||||||
|
import { factories } from '@strapi/strapi';
|
||||||
|
|
||||||
|
export default factories.createCoreController('api::article.article');
|
||||||
7
cms/cms/src/api/article/routes/article.ts
Normal file
7
cms/cms/src/api/article/routes/article.ts
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
/**
|
||||||
|
* article router
|
||||||
|
*/
|
||||||
|
|
||||||
|
import { factories } from '@strapi/strapi';
|
||||||
|
|
||||||
|
export default factories.createCoreRouter('api::article.article');
|
||||||
7
cms/cms/src/api/article/services/article.ts
Normal file
7
cms/cms/src/api/article/services/article.ts
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
/**
|
||||||
|
* article service
|
||||||
|
*/
|
||||||
|
|
||||||
|
import { factories } from '@strapi/strapi';
|
||||||
|
|
||||||
|
export default factories.createCoreService('api::article.article');
|
||||||
Loading…
Reference in New Issue
Block a user