]>
Commit | Line | Data |
---|---|---|
60650c77 | 1 | import { AllowNull, Column, CreatedAt, Is, Model, Table, UpdatedAt } from 'sequelize-typescript' |
3fd3ab2d | 2 | import { isHostValid } from '../../helpers/custom-validators/servers' |
3fd3ab2d | 3 | import { throwIfNotValid } from '../utils' |
60862425 | 4 | |
3fd3ab2d C |
5 | @Table({ |
6 | tableName: 'server', | |
7 | indexes: [ | |
60862425 | 8 | { |
3fd3ab2d C |
9 | fields: [ 'host' ], |
10 | unique: true | |
60862425 | 11 | } |
60862425 | 12 | ] |
3fd3ab2d C |
13 | }) |
14 | export class ServerModel extends Model<ServerModel> { | |
15 | ||
16 | @AllowNull(false) | |
17 | @Is('Host', value => throwIfNotValid(value, isHostValid, 'valid host')) | |
18 | @Column | |
19 | host: string | |
20 | ||
3fd3ab2d C |
21 | @CreatedAt |
22 | createdAt: Date | |
23 | ||
24 | @UpdatedAt | |
25 | updatedAt: Date | |
39445ead | 26 | } |