53aecce15eb0b17cb2fa1528ec5e7e87558a8940
[motion.git] / server / models / integration.js
1 'use strict';
2
3 module.exports = function(sequelize, DataTypes) {
4
5   var Integration = sequelize.define('Integration', {
6     name: {
7       type: DataTypes.STRING,
8       allowNull: false,
9       unique: 'unique_name_and_version',
10       validate: {
11         notEmpty: true
12       }
13     },
14     version: {
15       type: DataTypes.STRING,
16       allowNull: false,
17       unique: 'unique_name_and_version',
18       validate: {
19         notEmpty: true
20       }
21     },
22     main: {
23       type: DataTypes.STRING,
24       defaultValue: 'app.js'
25     },
26     filename: {
27       type: DataTypes.STRING,
28       // allowNull: false,
29       // validate: {
30       //   notEmpty: true
31       // }
32     },
33     path: {
34       type: DataTypes.STRING,
35       // allowNull: false,
36       // validate: {
37       //   notEmpty: true
38       // }
39     },
40     type: {
41       type: DataTypes.STRING,
42       // allowNull: false
43     },
44     size: {
45       type: DataTypes.INTEGER,
46       // allowNull: false
47     },
48     active: {
49       type: DataTypes.BOOLEAN,
50       defaultValue: false
51     },
52     author: DataTypes.STRING,
53     logo: DataTypes.STRING,
54     state: DataTypes.STRING,
55     description: DataTypes.STRING
56   }, {
57     tableName: 'integrations'
58   });
59
60   return Integration;
61
62 };