@itleanchatbot/shared-models-js-postgres 2.1.0 → 2.1.2

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.
Files changed (79) hide show
  1. package/package.json +1 -1
  2. package/src/seeders/test/20200924195050-create-ibmprovider.js +38 -0
  3. package/src/seeders/test/20200924195050-create-itlean-provider.js +40 -0
  4. package/src/seeders/test/20200924195050-seed-enterprises.js +24 -0
  5. package/src/seeders/test/20200925184253-seed-skils-itlean-provider.js +37 -0
  6. package/src/seeders/test/20200925184253-seed-skils.js +41 -0
  7. package/src/seeders/test/20200925184254-seed-Intention.js +39 -0
  8. package/src/seeders/test/20200925184258-seed-Intention-values.js +41 -0
  9. package/src/seeders/test/20200925191642-seed-entity-skill-itlean.js +23 -0
  10. package/src/seeders/test/20200925191642-seed-entity.js +23 -0
  11. package/src/seeders/test/20200925191643-seed-entity-values-skill-itlean.js +32 -0
  12. package/src/seeders/test/20200925191643-seed-entity-values.js +33 -0
  13. package/src/seeders/test/20200929132705-seed-dialog-node.js +128 -0
  14. package/src/seeders/test/20201016200600-seed-responses.js +563 -0
  15. package/src/seeders/test/20201104183653-seed-create-ype-skill.js +42 -0
  16. package/src/seeders/test/20201104183700-seed-create-ype-intention.js +26 -0
  17. package/src/seeders/test/20201104183706-seed-create-ype-intention-values.js +70 -0
  18. package/src/seeders/test/20201104183714-seed-create-ype-entity.js +38 -0
  19. package/src/seeders/test/20201104183723-seed-create-ype-entity-values.js +243 -0
  20. package/src/seeders/test/20201104183727-seed-create-ype-synonyms.js +253 -0
  21. package/src/seeders/test/20201104202534-seed-create-ype-node-saudacao.js +124 -0
  22. package/src/seeders/test/20210224171409-create-apiResource.js +114 -0
  23. package/src/seeders/test/20210422144458-seed-context-test.js +175 -0
  24. package/src/seeders/test/20210422181114-seed-jump-node.js +123 -0
  25. package/src/seeders/test/20210422182413-seed-jump-skill.js +123 -0
  26. package/src/seeders/test/20210426100156-seed-api-test.js +138 -0
  27. package/src/seeders/test/20210426103704-seed-multiple-response-test.js +272 -0
  28. package/src/seeders/test/20210426190844-seed-entity-search-test.js +160 -0
  29. package/src/seeders/test/20210427172150-seed-test-with-input-test-fisrt.js +160 -0
  30. package/src/seeders/test/20210428105402-seed-test-condition-1.js +190 -0
  31. package/src/seeders/test/20210430181906-seed-test-input-text-zero.js +120 -0
  32. package/src/seeders/test/20210430183204-seed-ype-test-condition.js +557 -0
  33. package/src/seeders/test/20210503172321-seed-invalid-condition.js +119 -0
  34. package/src/seeders/test/20210505140225-insert-skills.js +41 -0
  35. package/src/seeders/test/20210505183810-seed-chain-with-context.js +147 -0
  36. package/src/seeders/test/20210506125701-seed-with-intention-and-entity-same-name.js +188 -0
  37. package/src/seeders/test/20210507204437-seed-condition-igual-true.js +119 -0
  38. package/src/seeders/test/20210511181006-seed-using-internal-functions.js +274 -0
  39. package/src/seeders/test/20210512140152-seed-ype-real-bot.js +2578 -0
  40. package/src/seeders/test/20210519162746-seed-response-with-context.js +186 -0
  41. package/src/seeders/test/20210524141819-seed-dialog-node-faq.js +244 -0
  42. package/src/seeders/test/20210525180523-seed-regex.js +173 -0
  43. package/src/seeders/test/20210602111930-insert-dialogNodes.js +200 -0
  44. package/src/seeders/test/20210610152534-seed-test-internal-function-in-context.js +216 -0
  45. package/src/seeders/test/20210610181308-seed-test-find-in-array-internal-function.js +147 -0
  46. package/src/seeders/test/20210611101042-bot-example-internal-functions.js +985 -0
  47. package/src/seeders/test/20210613111900-bot-example-api.js +420 -0
  48. package/src/seeders/test/20210614113654-miltiple-response-with-research.js +387 -0
  49. package/src/seeders/test/20210616212102-api-authentication-and-list.js +422 -0
  50. package/src/seeders/test/20210624172310-seed-api-duble-request.js +424 -0
  51. package/src/seeders/test/20210628135630-test-branches.js +224 -0
  52. package/src/seeders/test/20210629141030-test-departments.js +225 -0
  53. package/src/seeders/test/20210630105430-test-subDepartments.js +223 -0
  54. package/src/seeders/test/20210630114011-test-contact.js +178 -0
  55. package/src/seeders/test/20210701130630-test-channels.js +381 -0
  56. package/src/seeders/test/20210702191230-seed-test-counter-in-context.js +122 -0
  57. package/src/seeders/test/20210705061313-test-fields.js +152 -0
  58. package/src/seeders/test/20210705080813-test-groups.js +122 -0
  59. package/src/seeders/test/20210705105918-seed-test-function-slice.js +161 -0
  60. package/src/seeders/test/20210706105508-seed-node-without-condition.js +254 -0
  61. package/src/seeders/test/20210706112906-seed-1.0-on-response.js +172 -0
  62. package/src/seeders/test/20210706145547-seed-clean-context.js +132 -0
  63. package/src/seeders/test/20210707151538-seed-test-response-break-line.js +161 -0
  64. package/src/seeders/test/20210713155530-seed-test-itl0079-875.js +129 -0
  65. package/src/seeders/test/20210715125619-seed-multiple-response-with-several-jumps.js +764 -0
  66. package/src/seeders/test/20210715163606-seed-test-multiple-response-with-jump.js +250 -0
  67. package/src/seeders/test/20210719154025-seed-2-contexts-together.js +133 -0
  68. package/src/seeders/test/20210802144227-seed-end-session-trigger.js +163 -0
  69. package/src/seeders/test/20210803103030-tests-dialogNodes.js +406 -0
  70. package/src/seeders/test/20210804094630-tests-lines.js +487 -0
  71. package/src/seeders/test/20210805104130-tests-lineConfigurations.js +106 -0
  72. package/src/seeders/test/20210805133330-tests-systemUsers.js +507 -0
  73. package/src/seeders/test/20210813124630-tests-getMessagesBySession.js +333 -0
  74. package/src/seeders/test/20210816151830-testes-inactivityTriggers.js +196 -0
  75. package/src/seeders/test/20210830134230-tests-sessionReports.js +254 -0
  76. package/src/seeders/test/20210830165830-tests-attendancesHistory.js +181 -0
  77. package/src/seeders/test/20210927115821-skill-test-open-faq.js +37 -0
  78. package/src/seeders/test/20211004131813-true-and-context-with-parent.js +190 -0
  79. package/src/seeders/test/20211006210203-context-concat-with-text.js +193 -0
@@ -0,0 +1,764 @@
1
+ 'use strict'
2
+ const { Op } = require('sequelize')
3
+ const SkillId = '2e686fdd-c812-458a-b1ba-98069bf4c15c'
4
+
5
+ const dialogNodeInitId = '8c858119-4d89-4c7f-bb04-cc65f56adddf'
6
+
7
+ const dialogNodeMultiResponse1Level1Id = 'd6a4fdc5-5957-4956-8b2c-eb6e09a05986'
8
+ const dialogNodeMultiResponse2Level1Id = 'ca480d2f-9a94-4984-b71c-6c6db7bdd48b'
9
+ const dialogNodeMultiResponse3Level1Id = 'c75cc759-f4d3-4343-bd40-1f960ffb3d10'
10
+ const dialogNodeMultiResponse4Level1Id = 'bccd96e1-16b7-4f23-89e8-b8f9726d3ea1'
11
+
12
+ const dialogNodeMultiResponse1JumpLevel1Id =
13
+ '9107f01a-93c3-456e-acf9-6a4077d67ac5'
14
+ const dialogNodeMultiResponse2JumpLevel1Id =
15
+ '9ec3b806-a85c-47eb-8ac7-6d28a019678a'
16
+ const dialogNodeMultiResponse3JumpLevel1Id =
17
+ '36124ac3-126d-4e24-afb7-cc314397b459'
18
+ const dialogNodeMultiResponse4JumpLevel1Id =
19
+ 'f57f48e1-786f-4ef8-a1c7-cfe6dbac1c20'
20
+
21
+ const dialogNodeMultiResponse1JumpLevel2Id =
22
+ '8fb27259-da97-46d8-8c8c-a9cda604fe2c'
23
+ const dialogNodeMultiResponse2JumpLevel2Id =
24
+ 'c3c8545f-c66b-4334-acde-107ceae3de13'
25
+ const dialogNodeMultiResponse3JumpLevel2Id =
26
+ '6bb3f597-82cc-4539-9644-5c0700faffde'
27
+ const dialogNodeMultiResponse4JumpLevel2Id =
28
+ 'd4c27d8b-838d-4628-84d7-99ba7a54c907'
29
+
30
+ const dialogNodeMultiResponse1JumpLevel3Id =
31
+ 'f8bd14ae-4236-43f6-b698-e4043525b4a7'
32
+ const dialogNodeMultiResponse2JumpLevel3Id =
33
+ '43aac048-8268-4d8f-8683-81abe686e9b0'
34
+ const dialogNodeMultiResponse3JumpLevel3Id =
35
+ 'dfd05a26-b360-4805-bb3f-9bcf21fe21f1'
36
+ const dialogNodeMultiResponse4JumpLevel3Id =
37
+ 'd15865a7-505f-4400-af45-1a240e4c4256'
38
+
39
+ const dialogNodeMultiResponse1JumpLevel4Id =
40
+ 'c80de950-9da2-4515-8d4c-e20e861a3208'
41
+ const dialogNodeMultiResponse2JumpLevel4Id =
42
+ 'e7f04f8d-d6c9-4879-8343-b8372d8ec9f4'
43
+ const dialogNodeMultiResponse3JumpLevel4Id =
44
+ '5d0c865a-75b6-41a9-915b-0fea9fa21216'
45
+ const dialogNodeMultiResponse4JumpLevel4Id =
46
+ '946d77ae-d39d-4742-a9b4-a25bbb3c1b90'
47
+
48
+ const dialogNodeJumpLevel1Id = '798c8086-1f9c-4427-957a-59f5d5160aa5'
49
+ const dialogNodeJumpLevel2Id = 'b9961e58-51b1-463b-bdea-69279aaac8b4'
50
+ const dialogNodeJumpLevel3Id = 'b13339e8-62c4-4c92-8b7c-a8091617af2a'
51
+ const dialogNodeJumpLevel4Id = 'e5064c33-8d29-4ed5-9c37-93c373a6a629'
52
+
53
+ const responseId1 = 'e3632588-a820-4b54-9a74-3151ce6c3407'
54
+
55
+ const nodesIds = [dialogNodeInitId]
56
+
57
+ const jumps = [
58
+ dialogNodeJumpLevel1Id,
59
+ dialogNodeJumpLevel2Id,
60
+ dialogNodeJumpLevel3Id,
61
+ dialogNodeJumpLevel4Id,
62
+ ]
63
+
64
+ const multipleResponsesLevel1NodesIds = [
65
+ dialogNodeMultiResponse1Level1Id,
66
+ dialogNodeMultiResponse2Level1Id,
67
+ dialogNodeMultiResponse3Level1Id,
68
+ dialogNodeMultiResponse4Level1Id,
69
+ ]
70
+
71
+ const multipleResponsesJumpLevel1Ids = [
72
+ dialogNodeMultiResponse1JumpLevel1Id,
73
+ dialogNodeMultiResponse2JumpLevel1Id,
74
+ dialogNodeMultiResponse3JumpLevel1Id,
75
+ dialogNodeMultiResponse4JumpLevel1Id,
76
+ ]
77
+
78
+ const multipleResponsesJumpLevel2Ids = [
79
+ dialogNodeMultiResponse1JumpLevel2Id,
80
+ dialogNodeMultiResponse2JumpLevel2Id,
81
+ dialogNodeMultiResponse3JumpLevel2Id,
82
+ dialogNodeMultiResponse4JumpLevel2Id,
83
+ ]
84
+
85
+ const multipleResponsesJumpLevel3Ids = [
86
+ dialogNodeMultiResponse1JumpLevel3Id,
87
+ dialogNodeMultiResponse2JumpLevel3Id,
88
+ dialogNodeMultiResponse3JumpLevel3Id,
89
+ dialogNodeMultiResponse4JumpLevel3Id,
90
+ ]
91
+
92
+ const multipleResponsesJumpLevel4Ids = [
93
+ dialogNodeMultiResponse1JumpLevel4Id,
94
+ dialogNodeMultiResponse2JumpLevel4Id,
95
+ dialogNodeMultiResponse3JumpLevel4Id,
96
+ dialogNodeMultiResponse4JumpLevel4Id,
97
+ ]
98
+
99
+ const responsesDialogNodesIds = [
100
+ ...nodesIds,
101
+ ...jumps,
102
+ ...multipleResponsesLevel1NodesIds,
103
+ ...multipleResponsesJumpLevel1Ids,
104
+ ...multipleResponsesJumpLevel2Ids,
105
+ ...multipleResponsesJumpLevel3Ids,
106
+ ...multipleResponsesJumpLevel4Ids,
107
+ ]
108
+
109
+ module.exports = {
110
+ up: async (queryInterface, Sequelize) => {
111
+ const IntelligenceId = await queryInterface.rawSelect(
112
+ 'Intelligences',
113
+ {
114
+ where: {
115
+ providerType: 'itlean',
116
+ },
117
+ },
118
+ ['id']
119
+ )
120
+
121
+ const providerId = 'fe588d1c-cd6d-4b5a-b385-f3ef19348f04'
122
+
123
+ const ChannelTypeId = await queryInterface.rawSelect(
124
+ 'ChannelTypes',
125
+ { where: { channelName: 'webchat' } },
126
+ ['id']
127
+ )
128
+
129
+ await queryInterface.bulkInsert(
130
+ 'Skills',
131
+ [
132
+ {
133
+ id: SkillId,
134
+ IntelligenceId,
135
+ AwsProviderId: null,
136
+ ItleanProviderId: providerId,
137
+ IbmProviderId: null,
138
+ name: 'Skill test',
139
+ description: 'seed test - multiple response with several jumps',
140
+ lang: 'pt-br',
141
+ createdAt: Sequelize.literal('now()'),
142
+ updatedAt: Sequelize.literal('now()'),
143
+ },
144
+ ],
145
+ {}
146
+ )
147
+
148
+ // Create Dialog Nodes
149
+ // Jumps
150
+ await queryInterface.bulkInsert(
151
+ 'DialogNodes',
152
+ [
153
+ // Jump with multiple responses level 1
154
+ {
155
+ id: dialogNodeJumpLevel1Id,
156
+ name: 'jump_level_1',
157
+ condition: null,
158
+ SkillId,
159
+ contexts: JSON.stringify({
160
+ node: 'jump_level_1',
161
+ }),
162
+ step: 2,
163
+ replayWait: true,
164
+ type: 'node',
165
+ isMultipleResponse: false,
166
+ JumpToDialogNodeId: null,
167
+ JumpToSkillId: null,
168
+ DialogNodeFolderId: null,
169
+ createdAt: Sequelize.literal('now()'),
170
+ updatedAt: Sequelize.literal('now()'),
171
+ },
172
+
173
+ // Jump with multiple responses level 2
174
+ {
175
+ id: dialogNodeJumpLevel2Id,
176
+ name: 'jump_level_2',
177
+ condition: null,
178
+ SkillId,
179
+ contexts: JSON.stringify({
180
+ node: 'jump_level_2',
181
+ }),
182
+ step: 3,
183
+ replayWait: true,
184
+ type: 'node',
185
+ isMultipleResponse: false,
186
+ JumpToDialogNodeId: null,
187
+ JumpToSkillId: null,
188
+ DialogNodeFolderId: null,
189
+ createdAt: Sequelize.literal('now()'),
190
+ updatedAt: Sequelize.literal('now()'),
191
+ },
192
+
193
+ // Jump with multiple responses level 3
194
+ {
195
+ id: dialogNodeJumpLevel3Id,
196
+ name: 'jump_level_3',
197
+ condition: null,
198
+ SkillId,
199
+ contexts: JSON.stringify({
200
+ node: 'jump_level_3',
201
+ }),
202
+ step: 3,
203
+ replayWait: true,
204
+ type: 'node',
205
+ isMultipleResponse: false,
206
+ JumpToDialogNodeId: null,
207
+ JumpToSkillId: null,
208
+ DialogNodeFolderId: null,
209
+ createdAt: Sequelize.literal('now()'),
210
+ updatedAt: Sequelize.literal('now()'),
211
+ },
212
+
213
+ // Jump with multiple responses level 4
214
+ {
215
+ id: dialogNodeJumpLevel4Id,
216
+ name: 'jump_level_4',
217
+ condition: null,
218
+ SkillId,
219
+ contexts: JSON.stringify({
220
+ node: 'jump_level_4',
221
+ }),
222
+ step: 4,
223
+ replayWait: true,
224
+ type: 'node',
225
+ isMultipleResponse: false,
226
+ JumpToDialogNodeId: null,
227
+ JumpToSkillId: null,
228
+ DialogNodeFolderId: null,
229
+ createdAt: Sequelize.literal('now()'),
230
+ updatedAt: Sequelize.literal('now()'),
231
+ },
232
+ ],
233
+ {}
234
+ )
235
+
236
+ // Another Dialog Nodes
237
+ await queryInterface.bulkInsert(
238
+ 'DialogNodes',
239
+ [
240
+ {
241
+ id: dialogNodeInitId,
242
+ name: 'init',
243
+ condition: 'true',
244
+ SkillId,
245
+ contexts: JSON.stringify({
246
+ node: 'init_flow',
247
+ }),
248
+ step: 1,
249
+ replayWait: true,
250
+ type: 'node',
251
+ isMultipleResponse: false,
252
+ JumpToDialogNodeId: null,
253
+ JumpToSkillId: null,
254
+ DialogNodeFolderId: null,
255
+ createdAt: Sequelize.literal('now()'),
256
+ updatedAt: Sequelize.literal('now()'),
257
+ },
258
+
259
+ // Multiple responses level 1
260
+
261
+ {
262
+ id: dialogNodeMultiResponse1Level1Id,
263
+ name: 'multiple_response_1_level_1',
264
+ condition: 'input.text === response_1',
265
+ SkillId,
266
+ contexts: JSON.stringify({
267
+ node: 'multiple_response_1_level_1',
268
+ }),
269
+ step: 1,
270
+ replayWait: true,
271
+ type: 'node',
272
+ isMultipleResponse: true,
273
+ JumpToDialogNodeId: dialogNodeJumpLevel1Id,
274
+ JumpToSkillId: null,
275
+ DialogNodeFolderId: null,
276
+ createdAt: Sequelize.literal('now()'),
277
+ updatedAt: Sequelize.literal('now()'),
278
+ },
279
+ {
280
+ id: dialogNodeMultiResponse2Level1Id,
281
+ name: 'multiple_response_2_level_1',
282
+ condition: 'input.text === response_2',
283
+ SkillId,
284
+ contexts: JSON.stringify({
285
+ node: 'multiple_response_2_level_1',
286
+ }),
287
+ step: 2,
288
+ replayWait: true,
289
+ type: 'node',
290
+ isMultipleResponse: true,
291
+ JumpToDialogNodeId: dialogNodeJumpLevel1Id,
292
+ JumpToSkillId: null,
293
+ DialogNodeFolderId: null,
294
+ createdAt: Sequelize.literal('now()'),
295
+ updatedAt: Sequelize.literal('now()'),
296
+ },
297
+ {
298
+ id: dialogNodeMultiResponse3Level1Id,
299
+ name: 'multiple_response_3_level_1',
300
+ condition: 'input.text === response_3',
301
+ SkillId,
302
+ contexts: JSON.stringify({
303
+ node: 'multiple_response_3_level_1',
304
+ }),
305
+ step: 3,
306
+ replayWait: true,
307
+ type: 'node',
308
+ isMultipleResponse: true,
309
+ JumpToDialogNodeId: dialogNodeJumpLevel1Id,
310
+ JumpToSkillId: null,
311
+ DialogNodeFolderId: null,
312
+ createdAt: Sequelize.literal('now()'),
313
+ updatedAt: Sequelize.literal('now()'),
314
+ },
315
+ {
316
+ id: dialogNodeMultiResponse4Level1Id,
317
+ name: 'multiple_response_4_level_1',
318
+ condition: 'input.text === response_4',
319
+ SkillId,
320
+ contexts: JSON.stringify({
321
+ node: 'multiple_response_4_level_1',
322
+ }),
323
+ step: 4,
324
+ replayWait: true,
325
+ type: 'node',
326
+ isMultipleResponse: true,
327
+ JumpToDialogNodeId: dialogNodeJumpLevel1Id,
328
+ JumpToSkillId: null,
329
+ DialogNodeFolderId: null,
330
+ createdAt: Sequelize.literal('now()'),
331
+ updatedAt: Sequelize.literal('now()'),
332
+ },
333
+
334
+ // Multiple Responses Of Jump level 1
335
+
336
+ {
337
+ id: dialogNodeMultiResponse1JumpLevel1Id,
338
+ name: 'multiple_response_1_jump_level_1',
339
+ condition: 'input.text === response_1',
340
+ SkillId,
341
+ contexts: JSON.stringify({
342
+ node: 'multiple_response_1_jump_level_1',
343
+ }),
344
+ step: 1,
345
+ replayWait: true,
346
+ type: 'node',
347
+ isMultipleResponse: true,
348
+ JumpToDialogNodeId: dialogNodeJumpLevel2Id,
349
+ JumpToSkillId: null,
350
+ DialogNodeFolderId: null,
351
+ createdAt: Sequelize.literal('now()'),
352
+ updatedAt: Sequelize.literal('now()'),
353
+ },
354
+ {
355
+ id: dialogNodeMultiResponse2JumpLevel1Id,
356
+ name: 'multiple_response_2_jump_level_1',
357
+ condition: 'input.text === response_2',
358
+ SkillId,
359
+ contexts: JSON.stringify({
360
+ node: 'multiple_response_2_jump_level_1',
361
+ }),
362
+ step: 2,
363
+ replayWait: true,
364
+ type: 'node',
365
+ isMultipleResponse: true,
366
+ JumpToDialogNodeId: dialogNodeJumpLevel2Id,
367
+ JumpToSkillId: null,
368
+ DialogNodeFolderId: null,
369
+ createdAt: Sequelize.literal('now()'),
370
+ updatedAt: Sequelize.literal('now()'),
371
+ },
372
+ {
373
+ id: dialogNodeMultiResponse3JumpLevel1Id,
374
+ name: 'multiple_response_3_jump_level_1',
375
+ condition: 'input.text === response_3',
376
+ SkillId,
377
+ contexts: JSON.stringify({
378
+ node: 'multiple_response_3_jump_level_1',
379
+ }),
380
+ step: 3,
381
+ replayWait: true,
382
+ type: 'node',
383
+ isMultipleResponse: true,
384
+ JumpToDialogNodeId: dialogNodeJumpLevel2Id,
385
+ JumpToSkillId: null,
386
+ DialogNodeFolderId: null,
387
+ createdAt: Sequelize.literal('now()'),
388
+ updatedAt: Sequelize.literal('now()'),
389
+ },
390
+ {
391
+ id: dialogNodeMultiResponse4JumpLevel1Id,
392
+ name: 'multiple_response_4_jump_level_1',
393
+ condition: 'input.text === response_4',
394
+ SkillId,
395
+ contexts: JSON.stringify({
396
+ node: 'multiple_response_4_jump_level_1',
397
+ }),
398
+ step: 4,
399
+ replayWait: true,
400
+ type: 'node',
401
+ isMultipleResponse: true,
402
+ JumpToDialogNodeId: dialogNodeJumpLevel2Id,
403
+ JumpToSkillId: null,
404
+ DialogNodeFolderId: null,
405
+ createdAt: Sequelize.literal('now()'),
406
+ updatedAt: Sequelize.literal('now()'),
407
+ },
408
+
409
+ // Multiple Responses Of Jump Level 2
410
+
411
+ {
412
+ id: dialogNodeMultiResponse1JumpLevel2Id,
413
+ name: 'multiple_response_1_jump_level_2',
414
+ condition: 'input.text === response_1',
415
+ SkillId,
416
+ contexts: JSON.stringify({
417
+ node: 'multiple_response_1_jump_level_2',
418
+ }),
419
+ step: 1,
420
+ replayWait: true,
421
+ type: 'node',
422
+ isMultipleResponse: true,
423
+ JumpToDialogNodeId: dialogNodeJumpLevel3Id,
424
+ JumpToSkillId: null,
425
+ DialogNodeFolderId: null,
426
+ createdAt: Sequelize.literal('now()'),
427
+ updatedAt: Sequelize.literal('now()'),
428
+ },
429
+ {
430
+ id: dialogNodeMultiResponse2JumpLevel2Id,
431
+ name: 'multiple_response_2_jump_level_2',
432
+ condition: 'input.text === response_2',
433
+ SkillId,
434
+ contexts: JSON.stringify({
435
+ node: 'multiple_response_2_jump_level_2',
436
+ }),
437
+ step: 2,
438
+ replayWait: true,
439
+ type: 'node',
440
+ isMultipleResponse: true,
441
+ JumpToDialogNodeId: dialogNodeJumpLevel3Id,
442
+ JumpToSkillId: null,
443
+ DialogNodeFolderId: null,
444
+ createdAt: Sequelize.literal('now()'),
445
+ updatedAt: Sequelize.literal('now()'),
446
+ },
447
+ {
448
+ id: dialogNodeMultiResponse3JumpLevel2Id,
449
+ name: 'multiple_response_3_jump_level_2',
450
+ condition: 'input.text === response_3',
451
+ SkillId,
452
+ contexts: JSON.stringify({
453
+ node: 'multiple_response_3_jump_level_2',
454
+ }),
455
+ step: 3,
456
+ replayWait: true,
457
+ type: 'node',
458
+ isMultipleResponse: true,
459
+ JumpToDialogNodeId: dialogNodeJumpLevel3Id,
460
+ JumpToSkillId: null,
461
+ DialogNodeFolderId: null,
462
+ createdAt: Sequelize.literal('now()'),
463
+ updatedAt: Sequelize.literal('now()'),
464
+ },
465
+ {
466
+ id: dialogNodeMultiResponse4JumpLevel2Id,
467
+ name: 'multiple_response_4_jump_level_2',
468
+ condition: 'input.text === response_4',
469
+ SkillId,
470
+ contexts: JSON.stringify({
471
+ node: 'multiple_response_4_jump_level_2',
472
+ }),
473
+ step: 4,
474
+ replayWait: true,
475
+ type: 'node',
476
+ isMultipleResponse: true,
477
+ JumpToDialogNodeId: dialogNodeJumpLevel3Id,
478
+ JumpToSkillId: null,
479
+ DialogNodeFolderId: null,
480
+ createdAt: Sequelize.literal('now()'),
481
+ updatedAt: Sequelize.literal('now()'),
482
+ },
483
+
484
+ // Multiple Responses Of Jump Level 3
485
+ {
486
+ id: dialogNodeMultiResponse1JumpLevel3Id,
487
+ name: 'multiple_response_1_jump_level_3',
488
+ condition: 'input.text === response_1',
489
+ SkillId,
490
+ contexts: JSON.stringify({
491
+ node: 'multiple_response_1_jump_level_3',
492
+ }),
493
+ step: 1,
494
+ replayWait: true,
495
+ type: 'node',
496
+ isMultipleResponse: true,
497
+ JumpToDialogNodeId: dialogNodeJumpLevel4Id,
498
+ JumpToSkillId: null,
499
+ DialogNodeFolderId: null,
500
+ createdAt: Sequelize.literal('now()'),
501
+ updatedAt: Sequelize.literal('now()'),
502
+ },
503
+ {
504
+ id: dialogNodeMultiResponse2JumpLevel3Id,
505
+ name: 'multiple_response_2_jump_level_3',
506
+ condition: 'input.text === response_2',
507
+ SkillId,
508
+ contexts: JSON.stringify({
509
+ node: 'multiple_response_2_jump_level_3',
510
+ }),
511
+ step: 2,
512
+ replayWait: true,
513
+ type: 'node',
514
+ isMultipleResponse: true,
515
+ JumpToDialogNodeId: dialogNodeJumpLevel4Id,
516
+ JumpToSkillId: null,
517
+ DialogNodeFolderId: null,
518
+ createdAt: Sequelize.literal('now()'),
519
+ updatedAt: Sequelize.literal('now()'),
520
+ },
521
+ {
522
+ id: dialogNodeMultiResponse3JumpLevel3Id,
523
+ name: 'multiple_response_3_jump_level_3',
524
+ condition: 'input.text === response_3',
525
+ SkillId,
526
+ contexts: JSON.stringify({
527
+ node: 'multiple_response_3_jump_level_3',
528
+ }),
529
+ step: 3,
530
+ replayWait: true,
531
+ type: 'node',
532
+ isMultipleResponse: true,
533
+ JumpToDialogNodeId: dialogNodeJumpLevel4Id,
534
+ JumpToSkillId: null,
535
+ DialogNodeFolderId: null,
536
+ createdAt: Sequelize.literal('now()'),
537
+ updatedAt: Sequelize.literal('now()'),
538
+ },
539
+ {
540
+ id: dialogNodeMultiResponse4JumpLevel3Id,
541
+ name: 'multiple_response_4_jump_level_3',
542
+ condition: 'input.text === response_4',
543
+ SkillId,
544
+ contexts: JSON.stringify({
545
+ node: 'multiple_response_4_jump_level_3',
546
+ }),
547
+ step: 4,
548
+ replayWait: true,
549
+ type: 'node',
550
+ isMultipleResponse: true,
551
+ JumpToDialogNodeId: dialogNodeJumpLevel4Id,
552
+ JumpToSkillId: null,
553
+ DialogNodeFolderId: null,
554
+ createdAt: Sequelize.literal('now()'),
555
+ updatedAt: Sequelize.literal('now()'),
556
+ },
557
+
558
+ // Multiple Responses Of Jump Level 4
559
+ {
560
+ id: dialogNodeMultiResponse1JumpLevel4Id,
561
+ name: 'multiple_response_1_jump_level_4',
562
+ condition: 'input.text === response_1',
563
+ SkillId,
564
+ contexts: JSON.stringify({
565
+ node: 'multiple_response_1_jump_level_4',
566
+ }),
567
+ step: 1,
568
+ replayWait: true,
569
+ type: 'node',
570
+ isMultipleResponse: true,
571
+ JumpToDialogNodeId: null,
572
+ JumpToSkillId: null,
573
+ DialogNodeFolderId: null,
574
+ createdAt: Sequelize.literal('now()'),
575
+ updatedAt: Sequelize.literal('now()'),
576
+ },
577
+ {
578
+ id: dialogNodeMultiResponse2JumpLevel4Id,
579
+ name: 'multiple_response_2_jump_level_4',
580
+ condition: 'input.text === response_2',
581
+ SkillId,
582
+ contexts: JSON.stringify({
583
+ node: 'multiple_response_2_jump_level_4',
584
+ }),
585
+ step: 2,
586
+ replayWait: true,
587
+ type: 'node',
588
+ isMultipleResponse: true,
589
+ JumpToDialogNodeId: null,
590
+ JumpToSkillId: null,
591
+ DialogNodeFolderId: null,
592
+ createdAt: Sequelize.literal('now()'),
593
+ updatedAt: Sequelize.literal('now()'),
594
+ },
595
+ {
596
+ id: dialogNodeMultiResponse3JumpLevel4Id,
597
+ name: 'multiple_response_3_jump_level_4',
598
+ condition: 'input.text === response_3',
599
+ SkillId,
600
+ contexts: JSON.stringify({
601
+ node: 'multiple_response_3_jump_level_4',
602
+ }),
603
+ step: 3,
604
+ replayWait: true,
605
+ type: 'node',
606
+ isMultipleResponse: true,
607
+ JumpToDialogNodeId: null,
608
+ JumpToSkillId: null,
609
+ DialogNodeFolderId: null,
610
+ createdAt: Sequelize.literal('now()'),
611
+ updatedAt: Sequelize.literal('now()'),
612
+ },
613
+ {
614
+ id: dialogNodeMultiResponse4JumpLevel4Id,
615
+ name: 'multiple_response_4_jump_level_4',
616
+ condition: 'input.text === response_4',
617
+ SkillId,
618
+ contexts: JSON.stringify({
619
+ node: 'multiple_response_4_jump_level_4',
620
+ }),
621
+ step: 4,
622
+ replayWait: true,
623
+ type: 'node',
624
+ isMultipleResponse: true,
625
+ JumpToDialogNodeId: null,
626
+ JumpToSkillId: null,
627
+ DialogNodeFolderId: null,
628
+ createdAt: Sequelize.literal('now()'),
629
+ updatedAt: Sequelize.literal('now()'),
630
+ },
631
+ ],
632
+ {}
633
+ )
634
+
635
+ await queryInterface.bulkInsert(
636
+ 'Responses',
637
+ [
638
+ {
639
+ id: responseId1,
640
+ name: 'default_response',
641
+ SkillId,
642
+ createdAt: Sequelize.literal('now()'),
643
+ updatedAt: Sequelize.literal('now()'),
644
+ },
645
+ ],
646
+ {}
647
+ )
648
+
649
+ await queryInterface.bulkInsert(
650
+ 'ResponsesBoxes',
651
+ [
652
+ {
653
+ ResponseId: responseId1,
654
+ ChannelTypeId: ChannelTypeId,
655
+ type: 'flow',
656
+ payload: JSON.stringify([
657
+ {
658
+ id: '',
659
+ type: 'text',
660
+ messages: [
661
+ {
662
+ message: `response default <:$node:>`,
663
+ },
664
+ ],
665
+ },
666
+ ]),
667
+ createdAt: Sequelize.literal('now()'),
668
+ updatedAt: Sequelize.literal('now()'),
669
+ },
670
+ ],
671
+ {}
672
+ )
673
+
674
+ const Response_DialogNodes = []
675
+ for (const DialogNodeId of jumps) {
676
+ Response_DialogNodes.push({
677
+ DialogNodeId,
678
+ ResponseId: responseId1,
679
+ createdAt: Sequelize.literal('now()'),
680
+ updatedAt: Sequelize.literal('now()'),
681
+ })
682
+ }
683
+
684
+ await queryInterface.bulkInsert(
685
+ 'Response_DialogNodes',
686
+ Response_DialogNodes
687
+ )
688
+
689
+ const DialogNodes_MultipleResponsesLevel1 = []
690
+ for (const ResponseId of multipleResponsesLevel1NodesIds) {
691
+ DialogNodes_MultipleResponsesLevel1.push({
692
+ ResponseId,
693
+ DialogNodeId: dialogNodeInitId,
694
+ createdAt: Sequelize.literal('now()'),
695
+ updatedAt: Sequelize.literal('now()'),
696
+ })
697
+ }
698
+
699
+ const DialogNodes_MultipleResponsesJumpLevel1 = []
700
+ for (const ResponseId of multipleResponsesJumpLevel1Ids) {
701
+ DialogNodes_MultipleResponsesJumpLevel1.push({
702
+ ResponseId,
703
+ DialogNodeId: dialogNodeJumpLevel1Id,
704
+ createdAt: Sequelize.literal('now()'),
705
+ updatedAt: Sequelize.literal('now()'),
706
+ })
707
+ }
708
+
709
+ const DialogNodes_MultipleResponsesJumpLevel2 = []
710
+ for (const ResponseId of multipleResponsesJumpLevel2Ids) {
711
+ DialogNodes_MultipleResponsesJumpLevel2.push({
712
+ ResponseId,
713
+ DialogNodeId: dialogNodeJumpLevel2Id,
714
+ createdAt: Sequelize.literal('now()'),
715
+ updatedAt: Sequelize.literal('now()'),
716
+ })
717
+ }
718
+
719
+ const DialogNodes_MultipleResponsesJumpLevel3 = []
720
+ for (const ResponseId of multipleResponsesJumpLevel3Ids) {
721
+ DialogNodes_MultipleResponsesJumpLevel3.push({
722
+ ResponseId,
723
+ DialogNodeId: dialogNodeJumpLevel3Id,
724
+ createdAt: Sequelize.literal('now()'),
725
+ updatedAt: Sequelize.literal('now()'),
726
+ })
727
+ }
728
+
729
+ const DialogNodes_MultipleResponsesJumpLevel4 = []
730
+ for (const ResponseId of multipleResponsesJumpLevel4Ids) {
731
+ DialogNodes_MultipleResponsesJumpLevel4.push({
732
+ ResponseId,
733
+ DialogNodeId: dialogNodeJumpLevel4Id,
734
+ createdAt: Sequelize.literal('now()'),
735
+ updatedAt: Sequelize.literal('now()'),
736
+ })
737
+ }
738
+
739
+ await queryInterface.bulkInsert('DialogNodes_MultipleResponses', [
740
+ ...DialogNodes_MultipleResponsesLevel1,
741
+ ...DialogNodes_MultipleResponsesJumpLevel1,
742
+ ...DialogNodes_MultipleResponsesJumpLevel2,
743
+ ...DialogNodes_MultipleResponsesJumpLevel3,
744
+ ...DialogNodes_MultipleResponsesJumpLevel4,
745
+ ])
746
+ },
747
+
748
+ down: async (queryInterface) => {
749
+ await queryInterface.bulkDelete('Response_DialogNodes', [
750
+ { ResponseId: responseId1 },
751
+ ])
752
+ await queryInterface.bulkDelete('ResponsesBoxes', [
753
+ { ResponseId: responseId1 },
754
+ ])
755
+
756
+ await queryInterface.bulkDelete('DialogNodes_MultipleResponses', [
757
+ { ResponseId: { [Op.in]: responsesDialogNodesIds } },
758
+ ])
759
+
760
+ await queryInterface.bulkDelete('Responses', [{ id: responseId1 }])
761
+ await queryInterface.bulkDelete('DialogNodes', [{ SkillId }])
762
+ await queryInterface.bulkDelete('Skills', [{ id: SkillId }])
763
+ },
764
+ }