paradigm-core
Version:
Paradigm Core Modules
63 lines (57 loc) • 1.34 kB
JavaScript
const RevisionModel = require( './revision')
/**
* TemplateRevisionModel Class
*
* @public
* @class TemplateRevisionModel
*/
class TemplateRevisionModel extends RevisionModel {
/**
* TemplateRevisionModel constructor
*
* @public
* @constructor
* @param {Object} options - Options
*/
constructor(options = {}) {
super(Object.assign({}, {
table: 'template_revisions',
permissions: {
create: ['user'],
delete: ['admin'],
read: ['organization'],
replace: ['admin'],
update: ['user'],
},
relations: {
belongsTo: [
{
node: 'organizations',
link: {
foreignKey: 'organizationId',
localKey: 'templateRevisionId'
},
joinTable: 'link_organizations_template_revisions'
},
{
node: 'templates',
link: {
foreignKey: 'templateId',
localKey: 'templateRevisionId'
},
joinTable: 'link_template_revisions'
},
{
node: 'users',
link: {
foreignKey: 'userId',
localKey: 'templateRevisionId'
},
joinTable: 'link_users_template_revisions'
}
]
}
}, options))
}
}
module.exports = TemplateRevisionModel