mirror of
https://github.com/TryGhost/Ghost.git
synced 2024-12-22 10:21:36 +03:00
ef98c65040
* Removed unused fields from v2 Content API - We want to ship the v2 Content API as clean and lean as we can - Many fields in the DB aren't actually used, we shouldn't return these values - Other values aren't useful outside of Admin clients, and shouldn't be returned either Fields removed: - tags: created_at, updated_at, parent - authors: locale, accessibility, tour - posts: locale, author status, page
144 lines
3.9 KiB
JavaScript
144 lines
3.9 KiB
JavaScript
/*
|
|
* These are the default resources and filters.
|
|
* They contain minimum filters for public accessibility of resources.
|
|
*/
|
|
|
|
module.exports = [
|
|
{
|
|
type: 'posts',
|
|
modelOptions: {
|
|
modelName: 'Post',
|
|
filter: 'visibility:public+status:published+page:false',
|
|
exclude: [
|
|
'title',
|
|
'mobiledoc',
|
|
'html',
|
|
'plaintext',
|
|
'page',
|
|
'status',
|
|
'amp',
|
|
'codeinjection_head',
|
|
'codeinjection_foot',
|
|
'meta_title',
|
|
'meta_description',
|
|
'custom_excerpt',
|
|
'og_image',
|
|
'og_title',
|
|
'og_description',
|
|
'twitter_image',
|
|
'twitter_title',
|
|
'twitter_description',
|
|
'custom_template',
|
|
'feature_image',
|
|
'locale'
|
|
],
|
|
withRelated: ['tags', 'authors'],
|
|
withRelatedPrimary: {
|
|
primary_tag: 'tags',
|
|
primary_author: 'authors'
|
|
},
|
|
withRelatedFields: {
|
|
tags: ['tags.id', 'tags.slug'],
|
|
authors: ['users.id', 'users.slug']
|
|
}
|
|
},
|
|
events: {
|
|
add: 'post.published',
|
|
update: 'post.published.edited',
|
|
remove: 'post.unpublished'
|
|
}
|
|
},
|
|
{
|
|
type: 'pages',
|
|
modelOptions: {
|
|
modelName: 'Post',
|
|
exclude: [
|
|
'title',
|
|
'mobiledoc',
|
|
'html',
|
|
'plaintext',
|
|
'page',
|
|
'status',
|
|
'amp',
|
|
'codeinjection_head',
|
|
'codeinjection_foot',
|
|
'meta_title',
|
|
'meta_description',
|
|
'custom_excerpt',
|
|
'og_image',
|
|
'og_title',
|
|
'og_description',
|
|
'twitter_image',
|
|
'twitter_title',
|
|
'twitter_description',
|
|
'custom_template',
|
|
'feature_image',
|
|
'locale',
|
|
'tags',
|
|
'authors',
|
|
'primary_tag',
|
|
'primary_author'
|
|
],
|
|
filter: 'visibility:public+status:published+page:true'
|
|
},
|
|
events: {
|
|
add: 'page.published',
|
|
update: 'page.published.edited',
|
|
remove: 'page.unpublished'
|
|
}
|
|
},
|
|
{
|
|
type: 'tags',
|
|
keep: ['id', 'slug'],
|
|
modelOptions: {
|
|
modelName: 'Tag',
|
|
exclude: [
|
|
'description',
|
|
'meta_title',
|
|
'meta_description',
|
|
'parent_id',
|
|
'created_at',
|
|
'updated_at'
|
|
],
|
|
filter: 'visibility:public',
|
|
shouldHavePosts: {
|
|
joinTo: 'tag_id',
|
|
joinTable: 'posts_tags'
|
|
}
|
|
},
|
|
events: {
|
|
add: 'tag.added',
|
|
update: 'tag.edited',
|
|
remove: 'tag.deleted'
|
|
}
|
|
},
|
|
{
|
|
type: 'authors',
|
|
modelOptions: {
|
|
modelName: 'User',
|
|
exclude: [
|
|
'bio',
|
|
'website',
|
|
'location',
|
|
'facebook',
|
|
'twitter',
|
|
'locale',
|
|
'accessibility',
|
|
'meta_title',
|
|
'meta_description',
|
|
'tour'
|
|
],
|
|
filter: 'visibility:public',
|
|
shouldHavePosts: {
|
|
joinTo: 'author_id',
|
|
joinTable: 'posts_authors'
|
|
}
|
|
},
|
|
events: {
|
|
add: 'user.activated',
|
|
update: 'user.activated.edited',
|
|
remove: 'user.deactivated'
|
|
}
|
|
}
|
|
];
|