import { BaseModel } from './base.model'; export class RoleFieldPermission extends BaseModel { static tableName = 'role_field_permissions'; id!: string; roleId!: string; fieldDefinitionId!: string; canRead!: boolean; canEdit!: boolean; createdAt!: Date; updatedAt!: Date; static get jsonSchema() { return { type: 'object', required: ['roleId', 'fieldDefinitionId'], properties: { id: { type: 'string' }, roleId: { type: 'string' }, fieldDefinitionId: { type: 'string' }, canRead: { type: 'boolean' }, canEdit: { type: 'boolean' }, }, }; } static get relationMappings() { const { Role } = require('./role.model'); const { FieldDefinition } = require('./field-definition.model'); return { role: { relation: BaseModel.BelongsToOneRelation, modelClass: Role, join: { from: 'role_field_permissions.roleId', to: 'roles.id', }, }, fieldDefinition: { relation: BaseModel.BelongsToOneRelation, modelClass: FieldDefinition, join: { from: 'role_field_permissions.fieldDefinitionId', to: 'field_definitions.id', }, }, }; } }