@itleanchatbot/shared-models-js-postgres 2.8.11 → 2.8.12

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@itleanchatbot/shared-models-js-postgres",
3
- "version": "2.8.11",
3
+ "version": "2.8.12",
4
4
  "description": "Shared Models JS Postgres",
5
5
  "main": "index.js",
6
6
  "license": "ISC",
@@ -1,66 +1,66 @@
1
- 'use strict';
2
-
3
- module.exports = {
4
- up: async (queryInterface, Sequelize) => {
5
- await queryInterface.createTable('ApiPreRequests', {
6
- id: {
7
- allowNull: false,
8
- defaultValue: Sequelize.literal('uuid_generate_v4()'),
9
- primaryKey: true,
10
- type: Sequelize.UUID,
11
- },
12
- ApiId: {
13
- allowNull: true,
14
- defaultValue: null,
15
- type: Sequelize.UUID,
16
- references: {
17
- model: 'Apis',
18
- key: 'id',
19
- },
20
- onDelete: 'SET NULL',
21
- onUpdate: 'CASCADE',
22
- },
23
- ApiResourceId: {
24
- allowNull: true,
25
- defaultValue: null,
26
- type: Sequelize.UUID,
27
- references: {
28
- model: 'ApiResources',
29
- key: 'id',
30
- },
31
- onDelete: 'SET NULL',
32
- onUpdate: 'CASCADE',
33
- },
34
- PreApiResourceId: {
35
- allowNull: false,
36
- type: Sequelize.UUID,
37
- references: {
38
- model: 'ApiResources',
39
- key: 'id',
40
- },
41
- onDelete: 'SET NULL',
42
- onUpdate: 'CASCADE',
43
- },
44
- result: {
45
- allowNull: false,
46
- type: Sequelize.STRING,
47
- },
48
- delayForNewRequest: {
49
- allowNull: false,
50
- type: Sequelize.STRING,
51
- },
52
- createdAt: {
53
- allowNull: false,
54
- type: Sequelize.DATE,
55
- },
56
- updatedAt: {
57
- allowNull: false,
58
- type: Sequelize.DATE,
59
- },
60
- })
61
- },
62
-
63
- down: async (queryInterface) => {
64
- await queryInterface.dropTable('ApiPreRequests')
65
- }
66
- };
1
+ 'use strict';
2
+
3
+ module.exports = {
4
+ up: async (queryInterface, Sequelize) => {
5
+ await queryInterface.createTable('ApiPreRequests', {
6
+ id: {
7
+ allowNull: false,
8
+ defaultValue: Sequelize.literal('uuid_generate_v4()'),
9
+ primaryKey: true,
10
+ type: Sequelize.UUID,
11
+ },
12
+ ApiId: {
13
+ allowNull: true,
14
+ defaultValue: null,
15
+ type: Sequelize.UUID,
16
+ references: {
17
+ model: 'Apis',
18
+ key: 'id',
19
+ },
20
+ onDelete: 'SET NULL',
21
+ onUpdate: 'CASCADE',
22
+ },
23
+ ApiResourceId: {
24
+ allowNull: true,
25
+ defaultValue: null,
26
+ type: Sequelize.UUID,
27
+ references: {
28
+ model: 'ApiResources',
29
+ key: 'id',
30
+ },
31
+ onDelete: 'SET NULL',
32
+ onUpdate: 'CASCADE',
33
+ },
34
+ PreApiResourceId: {
35
+ allowNull: false,
36
+ type: Sequelize.UUID,
37
+ references: {
38
+ model: 'ApiResources',
39
+ key: 'id',
40
+ },
41
+ onDelete: 'SET NULL',
42
+ onUpdate: 'CASCADE',
43
+ },
44
+ result: {
45
+ allowNull: false,
46
+ type: Sequelize.STRING,
47
+ },
48
+ delayForNewRequest: {
49
+ allowNull: false,
50
+ type: Sequelize.STRING,
51
+ },
52
+ createdAt: {
53
+ allowNull: false,
54
+ type: Sequelize.DATE,
55
+ },
56
+ updatedAt: {
57
+ allowNull: false,
58
+ type: Sequelize.DATE,
59
+ },
60
+ })
61
+ },
62
+
63
+ down: async (queryInterface) => {
64
+ await queryInterface.dropTable('ApiPreRequests')
65
+ }
66
+ };
@@ -1,20 +1,20 @@
1
- 'use strict';
2
-
3
- module.exports = {
4
- up: async (queryInterface, Sequelize) => {
5
- await queryInterface.addColumn('SystemUsers', 'isActive', {
6
- type: Sequelize.BOOLEAN,
7
- defaultValue: true,
8
- allowNull: false
9
- })
10
- await queryInterface.addColumn('SystemUsers', 'disabledAt', {
11
- type: Sequelize.DATE,
12
- allowNull: true
13
- })
14
- },
15
-
16
- down: async (queryInterface) => {
17
- await queryInterface.removeColumn('SystemUsers', 'isActive')
18
- await queryInterface.removeColumn('SystemUsers', 'disabledAt')
19
- }
20
- };
1
+ 'use strict';
2
+
3
+ module.exports = {
4
+ up: async (queryInterface, Sequelize) => {
5
+ await queryInterface.addColumn('SystemUsers', 'isActive', {
6
+ type: Sequelize.BOOLEAN,
7
+ defaultValue: true,
8
+ allowNull: false
9
+ })
10
+ await queryInterface.addColumn('SystemUsers', 'disabledAt', {
11
+ type: Sequelize.DATE,
12
+ allowNull: true
13
+ })
14
+ },
15
+
16
+ down: async (queryInterface) => {
17
+ await queryInterface.removeColumn('SystemUsers', 'isActive')
18
+ await queryInterface.removeColumn('SystemUsers', 'disabledAt')
19
+ }
20
+ };
@@ -1,28 +1,28 @@
1
- 'use strict';
2
-
3
- const datesColumns = [
4
- 'processedAt', 'enqueuedAt', 'failedAt', 'readAt', 'sentAt', 'deliveredAt'
5
- ]
6
- module.exports = {
7
- async up (queryInterface, Sequelize) {
8
-
9
- await queryInterface.addColumn('BotIterables', 'brokerMessageStatus', {
10
- type: Sequelize.STRING(100),
11
- allowNull: true
12
- })
13
-
14
- for (const columnName of datesColumns) {
15
- await queryInterface.addColumn('BotIterables', columnName, {
16
- type: Sequelize.DATE,
17
- allowNull: true
18
- })
19
- }
20
- },
21
-
22
- async down (queryInterface) {
23
- await queryInterface.removeColumn('BotIterables', 'brokerStatus')
24
- for(const columnName of datesColumns) {
25
- await queryInterface.removeColumn('BotIterables', columnName)
26
- }
27
- }
28
- };
1
+ 'use strict';
2
+
3
+ const datesColumns = [
4
+ 'processedAt', 'enqueuedAt', 'failedAt', 'readAt', 'sentAt', 'deliveredAt'
5
+ ]
6
+ module.exports = {
7
+ async up (queryInterface, Sequelize) {
8
+
9
+ await queryInterface.addColumn('BotIterables', 'brokerMessageStatus', {
10
+ type: Sequelize.STRING(100),
11
+ allowNull: true
12
+ })
13
+
14
+ for (const columnName of datesColumns) {
15
+ await queryInterface.addColumn('BotIterables', columnName, {
16
+ type: Sequelize.DATE,
17
+ allowNull: true
18
+ })
19
+ }
20
+ },
21
+
22
+ async down (queryInterface) {
23
+ await queryInterface.removeColumn('BotIterables', 'brokerStatus')
24
+ for(const columnName of datesColumns) {
25
+ await queryInterface.removeColumn('BotIterables', columnName)
26
+ }
27
+ }
28
+ };
@@ -1,14 +1,14 @@
1
- 'use strict';
2
-
3
- module.exports = {
4
- async up (queryInterface, Sequelize) {
5
- await queryInterface.addColumn('Sessions', 'startedSessionAt', {
6
- type: Sequelize.DATE,
7
- allowNull: true
8
- })
9
- },
10
-
11
- async down (queryInterface) {
12
- await queryInterface.removeColumn('Sessions', 'startedSessionAt')
13
- }
14
- };
1
+ 'use strict';
2
+
3
+ module.exports = {
4
+ async up (queryInterface, Sequelize) {
5
+ await queryInterface.addColumn('Sessions', 'startedSessionAt', {
6
+ type: Sequelize.DATE,
7
+ allowNull: true
8
+ })
9
+ },
10
+
11
+ async down (queryInterface) {
12
+ await queryInterface.removeColumn('Sessions', 'startedSessionAt')
13
+ }
14
+ };
@@ -1,15 +1,15 @@
1
- 'use strict';
2
-
3
- module.exports = {
4
- up: async (queryInterface, Sequelize) => {
5
- await queryInterface.addColumn('ConversationSessions', 'isHsm', {
6
- allowNull: false,
7
- defaultValue: false,
8
- type: Sequelize.BOOLEAN,
9
- })
10
- },
11
-
12
- down: async (queryInterface) => {
13
- await queryInterface.removeColumn('ConversationSessions', 'isHsm')
14
- }
15
- };
1
+ 'use strict';
2
+
3
+ module.exports = {
4
+ up: async (queryInterface, Sequelize) => {
5
+ await queryInterface.addColumn('ConversationSessions', 'isHsm', {
6
+ allowNull: false,
7
+ defaultValue: false,
8
+ type: Sequelize.BOOLEAN,
9
+ })
10
+ },
11
+
12
+ down: async (queryInterface) => {
13
+ await queryInterface.removeColumn('ConversationSessions', 'isHsm')
14
+ }
15
+ };
@@ -0,0 +1,58 @@
1
+ 'use strict';
2
+
3
+ module.exports = {
4
+ up: async (queryInterface, Sequelize) => {
5
+ await queryInterface.createTable('SessionsPreReports', {
6
+ id: {
7
+ allowNull: false,
8
+ defaultValue: Sequelize.literal('uuid_generate_v4()'),
9
+ primaryKey: true,
10
+ type: Sequelize.UUID,
11
+ },
12
+ date: {
13
+ allowNull: false,
14
+ type: Sequelize.DATEONLY
15
+ },
16
+ ChannelId: {
17
+ allowNull: false,
18
+ type: Sequelize.UUID
19
+ },
20
+ SkillId: {
21
+ allowNull: false,
22
+ type: Sequelize.UUID
23
+ },
24
+ sessions: {
25
+ allowNull: false,
26
+ type: Sequelize.BIGINT
27
+ },
28
+ closedSessions: {
29
+ allowNull: false,
30
+ type: Sequelize.BIGINT
31
+ },
32
+ clientMessages: {
33
+ allowNull: false,
34
+ type: Sequelize.BIGINT
35
+ },
36
+ botMessages: {
37
+ allowNull: false,
38
+ type: Sequelize.BIGINT
39
+ },
40
+ totalSessionTime: {
41
+ allowNull: false,
42
+ type: Sequelize.BIGINT
43
+ },
44
+ createdAt: {
45
+ allowNull: false,
46
+ type: Sequelize.DATE,
47
+ },
48
+ updatedAt: {
49
+ allowNull: false,
50
+ type: Sequelize.DATE,
51
+ },
52
+ })
53
+ },
54
+
55
+ down: async (queryInterface, Sequelize) => {
56
+ await queryInterface.dropTable('SessionsPreReports')
57
+ }
58
+ };
@@ -0,0 +1,14 @@
1
+ 'use strict';
2
+
3
+ module.exports = {
4
+ async up (queryInterface, Sequelize) {
5
+ await queryInterface.addColumn('Sessions', 'SessionsPreReportId', {
6
+ type: Sequelize.UUID,
7
+ allowNull: true
8
+ })
9
+ },
10
+
11
+ async down (queryInterface) {
12
+ await queryInterface.removeColumn('Sessions', 'SessionsPreReportId')
13
+ }
14
+ };
@@ -0,0 +1,46 @@
1
+ 'use strict';
2
+
3
+ module.exports = {
4
+ up: async (queryInterface, Sequelize) => {
5
+ await queryInterface.createTable('DialogNodesPreReports', {
6
+ id: {
7
+ allowNull: false,
8
+ defaultValue: Sequelize.literal('uuid_generate_v4()'),
9
+ primaryKey: true,
10
+ type: Sequelize.UUID,
11
+ },
12
+ date: {
13
+ allowNull: false,
14
+ type: Sequelize.DATEONLY
15
+ },
16
+ ChannelId: {
17
+ allowNull: false,
18
+ type: Sequelize.UUID
19
+ },
20
+ SkillId: {
21
+ allowNull: false,
22
+ type: Sequelize.UUID
23
+ },
24
+ DialogNodeId: {
25
+ allowNull: false,
26
+ type: Sequelize.UUID
27
+ },
28
+ quantity: {
29
+ allowNull: false,
30
+ type: Sequelize.INTEGER
31
+ },
32
+ createdAt: {
33
+ allowNull: false,
34
+ type: Sequelize.DATE,
35
+ },
36
+ updatedAt: {
37
+ allowNull: false,
38
+ type: Sequelize.DATE,
39
+ },
40
+ })
41
+ },
42
+
43
+ down: async (queryInterface, Sequelize) => {
44
+ await queryInterface.dropTable('DialogNodesPreReports')
45
+ }
46
+ };
@@ -1,16 +1,16 @@
1
- 'use strict';
2
- module.exports = {
3
- async up (queryInterface, Sequelize) {
4
- await queryInterface.changeColumn('TranshipConversations', 'mimetype', {
5
- type: Sequelize.STRING(255),
6
- allowNull: true,
7
- })
8
- },
9
-
10
- async down (queryInterface, Sequelize) {
11
- await queryInterface.changeColumn('TranshipConversations', 'mimetype', {
12
- type: Sequelize.STRING(50),
13
- allowNull: true,
14
- })
15
- }
16
- };
1
+ 'use strict';
2
+ module.exports = {
3
+ async up (queryInterface, Sequelize) {
4
+ await queryInterface.changeColumn('TranshipConversations', 'mimetype', {
5
+ type: Sequelize.STRING(255),
6
+ allowNull: true,
7
+ })
8
+ },
9
+
10
+ async down (queryInterface, Sequelize) {
11
+ await queryInterface.changeColumn('TranshipConversations', 'mimetype', {
12
+ type: Sequelize.STRING(50),
13
+ allowNull: true,
14
+ })
15
+ }
16
+ };
@@ -145,6 +145,7 @@ const DialogNodesModel = (sequelize, Sequelize) => {
145
145
  DialogNodes.hasOne(models.EndSessionTriggers)
146
146
  DialogNodes.hasMany(models.EndSessionTriggers, { as: 'EndSessionJumpToDialogNode', foreignKey: 'JumpToDialogNodeId' })
147
147
  DialogNodes.hasMany(models.InactivityTriggers)
148
+ DialogNodes.hasMany(models.DialogNodesPreReports)
148
149
  }
149
150
  return DialogNodes
150
151
  }
@@ -0,0 +1,35 @@
1
+ exports.model = (sequelize, DataTypes) => {
2
+ const DialogNodesPreReports = sequelize.define('DialogNodesPreReports', {
3
+ date: {
4
+ allowNull: false,
5
+ type: DataTypes.DATEONLY
6
+ },
7
+ ChannelId: {
8
+ allowNull: false,
9
+ type: DataTypes.UUID
10
+ },
11
+ SkillId: {
12
+ allowNull: false,
13
+ type: DataTypes.UUID
14
+ },
15
+ DialogNodeId: {
16
+ allowNull: false,
17
+ type: DataTypes.UUID,
18
+ references: {
19
+ model: 'DialogNodes',
20
+ key: 'id',
21
+ }
22
+ },
23
+ quantity: {
24
+ allowNull: false,
25
+ type: DataTypes.INTEGER
26
+ }
27
+ })
28
+
29
+ DialogNodesPreReports.associate = models => {
30
+ DialogNodesPreReports.belongsTo(models.DialogNodes)
31
+ }
32
+
33
+ return DialogNodesPreReports
34
+ }
35
+
@@ -1,31 +1,31 @@
1
- exports.model = (sequelize, Sequelize) => {
2
- const OpenFAQs = sequelize.define('FaqQuestions', {
3
- name: {
4
- type: Sequelize.STRING(255),
5
- allowNull: false,
6
- validate: {
7
- notEmpty: true,
8
- },
9
- },
10
- OpenFAQId: {
11
- type: Sequelize.UUID,
12
- allowNull: false,
13
- references: {
14
- model: 'OpenFAQs',
15
- key: 'id',
16
- },
17
- onDelete: 'CASCADE',
18
- onUpdate: 'CASCADE',
19
- foreignKeyConstraint: true,
20
- validate: {
21
- notEmpty: true,
22
- },
23
- },
24
- })
25
-
26
- OpenFAQs.associate = (models) => {
27
- OpenFAQs.belongsTo(models.OpenFAQs)
28
- }
29
-
30
- return OpenFAQs
31
- }
1
+ exports.model = (sequelize, Sequelize) => {
2
+ const OpenFAQs = sequelize.define('FaqQuestions', {
3
+ name: {
4
+ type: Sequelize.STRING(255),
5
+ allowNull: false,
6
+ validate: {
7
+ notEmpty: true,
8
+ },
9
+ },
10
+ OpenFAQId: {
11
+ type: Sequelize.UUID,
12
+ allowNull: false,
13
+ references: {
14
+ model: 'OpenFAQs',
15
+ key: 'id',
16
+ },
17
+ onDelete: 'CASCADE',
18
+ onUpdate: 'CASCADE',
19
+ foreignKeyConstraint: true,
20
+ validate: {
21
+ notEmpty: true,
22
+ },
23
+ },
24
+ })
25
+
26
+ OpenFAQs.associate = (models) => {
27
+ OpenFAQs.belongsTo(models.OpenFAQs)
28
+ }
29
+
30
+ return OpenFAQs
31
+ }
@@ -1,33 +1,33 @@
1
- exports.model = (sequelize, Sequelize) => {
2
- const OpenFAQs = sequelize.define('OpenFAQs', {
3
- name: {
4
- allowNull: false,
5
- type: Sequelize.TEXT,
6
- unique: false,
7
- },
8
- SkillId: {
9
- allowNull: false,
10
- type: Sequelize.UUID,
11
- references: {
12
- model: 'Skill',
13
- key: 'id',
14
- },
15
- onDelete: 'RESTRICT',
16
- onUpdate: 'CASCADE',
17
- },
18
- answers: {
19
- allowNull: false,
20
- type: Sequelize.JSON,
21
- validate: {
22
- notEmpty: true,
23
- },
24
- },
25
- })
26
-
27
- OpenFAQs.associate = (models) => {
28
- OpenFAQs.belongsTo(models.Skill)
29
- OpenFAQs.hasMany(models.FaqQuestions)
30
- }
31
-
32
- return OpenFAQs
33
- }
1
+ exports.model = (sequelize, Sequelize) => {
2
+ const OpenFAQs = sequelize.define('OpenFAQs', {
3
+ name: {
4
+ allowNull: false,
5
+ type: Sequelize.TEXT,
6
+ unique: false,
7
+ },
8
+ SkillId: {
9
+ allowNull: false,
10
+ type: Sequelize.UUID,
11
+ references: {
12
+ model: 'Skill',
13
+ key: 'id',
14
+ },
15
+ onDelete: 'RESTRICT',
16
+ onUpdate: 'CASCADE',
17
+ },
18
+ answers: {
19
+ allowNull: false,
20
+ type: Sequelize.JSON,
21
+ validate: {
22
+ notEmpty: true,
23
+ },
24
+ },
25
+ })
26
+
27
+ OpenFAQs.associate = (models) => {
28
+ OpenFAQs.belongsTo(models.Skill)
29
+ OpenFAQs.hasMany(models.FaqQuestions)
30
+ }
31
+
32
+ return OpenFAQs
33
+ }
@@ -55,6 +55,14 @@ exports.model = (sequelize, DataTypes) => {
55
55
  startedSessionAt: {
56
56
  allowNull: true,
57
57
  type: DataTypes.DATE
58
+ },
59
+ SessionsPreReportId: {
60
+ type: DataTypes.UUID,
61
+ allowNull: true,
62
+ references: {
63
+ model: 'SessionsPreReports',
64
+ key: 'id',
65
+ },
58
66
  }
59
67
  })
60
68
 
@@ -64,6 +72,7 @@ exports.model = (sequelize, DataTypes) => {
64
72
  Sessions.hasOne(models.SocketClients)
65
73
  Sessions.hasMany(models.BotIterables)
66
74
  Sessions.belongsTo(models.Client)
75
+ Sessions.belongsTo(models.SessionsPreReports)
67
76
  }
68
77
 
69
78
  return Sessions