@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,186 @@
1
+ 'use strict'
2
+ const SkillId = 'b9c89369-2102-46ad-a39a-7a15377df79e'
3
+
4
+ const dialogNode1Id = '00159926-b9e4-41cc-ab88-e0b8820b0185'
5
+ const dialogNode2Id = 'd5cf0fa6-5157-4589-bb8b-0e87be1ad3d4'
6
+
7
+ const responseId1 = '2245d705-406a-419e-88f6-236476ac405f'
8
+
9
+ module.exports = {
10
+ up: async (queryInterface, Sequelize) => {
11
+ const ibmIntelligenceId = await queryInterface.rawSelect(
12
+ 'Intelligences',
13
+ {
14
+ where: {
15
+ providerType: 'ibm',
16
+ },
17
+ },
18
+ ['id']
19
+ )
20
+
21
+ const ibmProviderId = 'f5cc3829-e441-452f-9bea-70581bde9eff'
22
+ await queryInterface.bulkInsert(
23
+ 'Skills',
24
+ [
25
+ {
26
+ id: SkillId,
27
+ IntelligenceId: ibmIntelligenceId,
28
+ AwsProviderId: null,
29
+ ItleanProviderId: null,
30
+ IbmProviderId: ibmProviderId,
31
+ name: 'Skill get context in response message',
32
+ description: 'get context in response message',
33
+ lang: 'pt-br',
34
+ createdAt: Sequelize.literal('now()'),
35
+ updatedAt: Sequelize.literal('now()'),
36
+ },
37
+ ],
38
+ {}
39
+ )
40
+
41
+ await queryInterface.bulkInsert(
42
+ 'DialogNodes',
43
+ [
44
+ {
45
+ id: dialogNode1Id,
46
+ name: 'get context in response message',
47
+ condition: 'input.text === oi',
48
+ SkillId,
49
+ contexts: JSON.stringify({
50
+ apiResponse: {
51
+ data: [
52
+ { position: 1, dueDate: '20/05/2021', value: 'R$ 100.00' },
53
+ { position: 2, dueDate: '20/05/2021', value: 'R$ 100.00' },
54
+ { position: 3, dueDate: '20/05/2021', value: 'R$ 100.00' },
55
+ ],
56
+ },
57
+ template:
58
+ '\n %position%- Data de vencimento: %dueDate% \nValor: %value% \n',
59
+ responseContext: 'Valor do contexto na resposta step 1',
60
+ }),
61
+ step: 1,
62
+ replayWait: true,
63
+ type: 'node',
64
+ isMultipleResponse: false,
65
+ JumpToDialogNodeId: null,
66
+ JumpToSkillId: null,
67
+ DialogNodeFolderId: null,
68
+ createdAt: Sequelize.literal('now()'),
69
+ updatedAt: Sequelize.literal('now()'),
70
+ },
71
+ {
72
+ id: dialogNode2Id,
73
+ name: 'get context in response message',
74
+ condition: 'input.text === oi_2 ',
75
+ SkillId,
76
+ contexts: JSON.stringify({
77
+ responseContext: 'Valor do contexto na resposta step 2',
78
+ }),
79
+ step: 2,
80
+ replayWait: true,
81
+ type: 'node',
82
+ isMultipleResponse: false,
83
+ JumpToDialogNodeId: null,
84
+ JumpToSkillId: null,
85
+ DialogNodeFolderId: null,
86
+ createdAt: Sequelize.literal('now()'),
87
+ updatedAt: Sequelize.literal('now()'),
88
+ },
89
+ ],
90
+ {}
91
+ )
92
+
93
+ await queryInterface.bulkInsert(
94
+ 'Responses',
95
+ [
96
+ {
97
+ id: responseId1,
98
+ name: 'Oi! Minha resposta vem de um contexto',
99
+ SkillId,
100
+ createdAt: Sequelize.literal('now()'),
101
+ updatedAt: Sequelize.literal('now()'),
102
+ },
103
+ ],
104
+ {}
105
+ )
106
+
107
+ await queryInterface.bulkInsert(
108
+ 'ResponsesBoxes',
109
+ [
110
+ {
111
+ ResponseId: responseId1,
112
+ ChannelTypeId: null,
113
+ type: 'flow',
114
+ payload: JSON.stringify([
115
+ {
116
+ id: '',
117
+ type: 'text',
118
+ messages: [
119
+ { message: 'Oi esse é o contexto: <:$responseContext:> ! 😍' },
120
+ ],
121
+ },
122
+ {
123
+ id: '',
124
+ type: 'text',
125
+ messages: [{ message: 'now()' }],
126
+ },
127
+ ]),
128
+ createdAt: Sequelize.literal('now()'),
129
+ updatedAt: Sequelize.literal('now()'),
130
+ },
131
+ {
132
+ ResponseId: responseId1,
133
+ ChannelTypeId: null,
134
+ type: 'flow',
135
+ payload: JSON.stringify([
136
+ {
137
+ id: '',
138
+ type: 'text',
139
+ messages: [
140
+ {
141
+ message:
142
+ "Boletos: templateToArray($apiResponse.data,$template).join('')",
143
+ },
144
+ ],
145
+ },
146
+ {
147
+ id: '',
148
+ type: 'text',
149
+ messages: [{ message: 'now()' }],
150
+ },
151
+ ]),
152
+ createdAt: Sequelize.literal('now()'),
153
+ updatedAt: Sequelize.literal('now()'),
154
+ },
155
+ ],
156
+ {}
157
+ )
158
+
159
+ await queryInterface.bulkInsert('Response_DialogNodes', [
160
+ {
161
+ DialogNodeId: dialogNode1Id,
162
+ ResponseId: responseId1,
163
+ createdAt: Sequelize.literal('now()'),
164
+ updatedAt: Sequelize.literal('now()'),
165
+ },
166
+ {
167
+ DialogNodeId: dialogNode2Id,
168
+ ResponseId: responseId1,
169
+ createdAt: Sequelize.literal('now()'),
170
+ updatedAt: Sequelize.literal('now()'),
171
+ },
172
+ ])
173
+ },
174
+
175
+ down: async (queryInterface) => {
176
+ await queryInterface.bulkDelete('Response_DialogNodes', [
177
+ { ResponseId: responseId1 },
178
+ ])
179
+ await queryInterface.bulkDelete('ResponsesBoxes', [
180
+ { ResponseId: responseId1 },
181
+ ])
182
+ await queryInterface.bulkDelete('Responses', [{ id: responseId1 }])
183
+ await queryInterface.bulkDelete('DialogNodes', [{ SkillId }])
184
+ await queryInterface.bulkDelete('Skills', [{ id: SkillId }])
185
+ },
186
+ }
@@ -0,0 +1,244 @@
1
+ 'use strict'
2
+ const SkillId = '1c179d9a-099a-4553-bcde-e69ae6ce2da8'
3
+
4
+ const dialogNode1Id = '8459f674-1a29-48ee-86af-abbe91750935'
5
+ const dialogNode2Id = '1564ac15-a0d6-4a99-954d-a16f5438dd20'
6
+ const dialogNode3Id = '6c6615dc-9dcd-41fc-8384-9233fba32e16'
7
+ const dialogNode4Id = '94331ab8-66c7-40a3-9387-08465e360c3b'
8
+
9
+ const responseId1 = '93263e5c-dd0d-4c71-ad97-25087b7f9047'
10
+
11
+ const faqId = '57774b0a-e1bd-4483-ad35-7270bf5d2774'
12
+
13
+ module.exports = {
14
+ up: async (queryInterface, Sequelize) => {
15
+ const ibmIntelligenceId = await queryInterface.rawSelect(
16
+ 'Intelligences',
17
+ {
18
+ where: {
19
+ providerType: 'ibm',
20
+ },
21
+ },
22
+ ['id']
23
+ )
24
+
25
+ const ibmProviderId = 'f5cc3829-e441-452f-9bea-70581bde9eff'
26
+ await queryInterface.bulkInsert(
27
+ 'Skills',
28
+ [
29
+ {
30
+ id: SkillId,
31
+ IntelligenceId: ibmIntelligenceId,
32
+ AwsProviderId: null,
33
+ ItleanProviderId: null,
34
+ IbmProviderId: ibmProviderId,
35
+ name: 'Skill faq',
36
+ description: 'faq',
37
+ lang: 'pt-br',
38
+ createdAt: Sequelize.literal('now()'),
39
+ updatedAt: Sequelize.literal('now()'),
40
+ },
41
+ ],
42
+ {}
43
+ )
44
+
45
+ await queryInterface.bulkInsert(
46
+ 'DialogNodes',
47
+ [
48
+ {
49
+ id: dialogNode1Id,
50
+ name: 'faq',
51
+ condition: 'input.text === oi || input.text === not_found',
52
+ SkillId,
53
+ contexts: '{}',
54
+ step: 2,
55
+ replayWait: true,
56
+ type: 'faq',
57
+ isMultipleResponse: false,
58
+ JumpToDialogNodeId: null,
59
+ JumpToSkillId: null,
60
+ DialogNodeFolderId: null,
61
+ createdAt: Sequelize.literal('now()'),
62
+ updatedAt: Sequelize.literal('now()'),
63
+ },
64
+ {
65
+ id: dialogNode2Id,
66
+ name: 'jump success',
67
+ condition: '',
68
+ SkillId,
69
+ contexts: '{}',
70
+ step: 3,
71
+ replayWait: true,
72
+ type: 'node',
73
+ isMultipleResponse: false,
74
+ JumpToDialogNodeId: null,
75
+ JumpToSkillId: null,
76
+ DialogNodeFolderId: null,
77
+ createdAt: Sequelize.literal('now()'),
78
+ updatedAt: Sequelize.literal('now()'),
79
+ },
80
+ {
81
+ id: dialogNode3Id,
82
+ name: 'jump error',
83
+ condition: '',
84
+ SkillId,
85
+ contexts: '{}',
86
+ step: 4,
87
+ replayWait: true,
88
+ type: 'node',
89
+ isMultipleResponse: false,
90
+ JumpToDialogNodeId: null,
91
+ JumpToSkillId: null,
92
+ DialogNodeFolderId: null,
93
+ createdAt: Sequelize.literal('now()'),
94
+ updatedAt: Sequelize.literal('now()'),
95
+ },
96
+ {
97
+ id: dialogNode4Id,
98
+ name: 'jump not found',
99
+ condition: '',
100
+ SkillId,
101
+ contexts: '{}',
102
+ step: 5,
103
+ replayWait: true,
104
+ type: 'node',
105
+ isMultipleResponse: false,
106
+ JumpToDialogNodeId: null,
107
+ JumpToSkillId: null,
108
+ DialogNodeFolderId: null,
109
+ createdAt: Sequelize.literal('now()'),
110
+ updatedAt: Sequelize.literal('now()'),
111
+ },
112
+ ],
113
+ {}
114
+ )
115
+
116
+ await queryInterface.bulkInsert(
117
+ 'Responses',
118
+ [
119
+ {
120
+ id: responseId1,
121
+ name: 'Oi! Minha resposta vem de um contexto',
122
+ SkillId,
123
+ createdAt: Sequelize.literal('now()'),
124
+ updatedAt: Sequelize.literal('now()'),
125
+ },
126
+ ],
127
+ {}
128
+ )
129
+
130
+ await queryInterface.bulkInsert(
131
+ 'ResponsesBoxes',
132
+ [
133
+ {
134
+ ResponseId: responseId1,
135
+ ChannelTypeId: null,
136
+ type: 'flow',
137
+ payload: JSON.stringify([
138
+ {
139
+ id: '',
140
+ type: 'text',
141
+ messages: [{ message: 'Oi! 😍' }],
142
+ },
143
+ ]),
144
+ createdAt: Sequelize.literal('now()'),
145
+ updatedAt: Sequelize.literal('now()'),
146
+ },
147
+ ],
148
+ {}
149
+ )
150
+
151
+ await queryInterface.bulkInsert('Response_DialogNodes', [
152
+ {
153
+ DialogNodeId: dialogNode1Id,
154
+ ResponseId: responseId1,
155
+ createdAt: Sequelize.literal('now()'),
156
+ updatedAt: Sequelize.literal('now()'),
157
+ },
158
+ {
159
+ DialogNodeId: dialogNode2Id,
160
+ ResponseId: responseId1,
161
+ createdAt: Sequelize.literal('now()'),
162
+ updatedAt: Sequelize.literal('now()'),
163
+ },
164
+ {
165
+ DialogNodeId: dialogNode3Id,
166
+ ResponseId: responseId1,
167
+ createdAt: Sequelize.literal('now()'),
168
+ updatedAt: Sequelize.literal('now()'),
169
+ },
170
+ {
171
+ DialogNodeId: dialogNode4Id,
172
+ ResponseId: responseId1,
173
+ createdAt: Sequelize.literal('now()'),
174
+ updatedAt: Sequelize.literal('now()'),
175
+ },
176
+ ])
177
+
178
+ await queryInterface.bulkInsert('FaqTriggers', [
179
+ {
180
+ DialogNodeId: dialogNode1Id,
181
+ successDialogNodeId: dialogNode2Id,
182
+ errorDialogNodeId: dialogNode3Id,
183
+ notFoundDialogNodeId: dialogNode4Id,
184
+ createdAt: Sequelize.literal('now()'),
185
+ updatedAt: Sequelize.literal('now()'),
186
+ },
187
+ ])
188
+
189
+ await queryInterface.bulkInsert('OpenFAQs', [
190
+ {
191
+ id: faqId,
192
+ SkillId,
193
+ name: 'open-faq-test',
194
+ answers: JSON.stringify([
195
+ {
196
+ messages: ['Eu sou uma resposta de faq'],
197
+ type: 'text',
198
+ },
199
+ ]),
200
+ createdAt: Sequelize.literal('now()'),
201
+ updatedAt: Sequelize.literal('now()'),
202
+ },
203
+ ])
204
+
205
+ await queryInterface.bulkInsert('FaqQuestions', [
206
+ {
207
+ OpenFAQId: faqId,
208
+ name: 'oi',
209
+ createdAt: Sequelize.literal('now()'),
210
+ updatedAt: Sequelize.literal('now()'),
211
+ },
212
+ {
213
+ OpenFAQId: faqId,
214
+ name: 'faq',
215
+ createdAt: Sequelize.literal('now()'),
216
+ updatedAt: Sequelize.literal('now()'),
217
+ },
218
+ {
219
+ OpenFAQId: faqId,
220
+ name: 'test',
221
+ createdAt: Sequelize.literal('now()'),
222
+ updatedAt: Sequelize.literal('now()'),
223
+ },
224
+ ])
225
+ },
226
+
227
+ down: async (queryInterface) => {
228
+ await queryInterface.bulkDelete('Response_DialogNodes', [
229
+ { ResponseId: responseId1 },
230
+ ])
231
+ await queryInterface.bulkDelete('ResponsesBoxes', [
232
+ { ResponseId: responseId1 },
233
+ ])
234
+ await queryInterface.bulkDelete('FaqQuestions', [{ OpenFAQId: faqId }])
235
+ await queryInterface.bulkDelete('OpenFAQs', [{ id: faqId }])
236
+ await queryInterface.bulkDelete('FaqTriggers', [
237
+ { DialogNodeId: dialogNode1Id },
238
+ ])
239
+
240
+ await queryInterface.bulkDelete('Responses', [{ id: responseId1 }])
241
+ await queryInterface.bulkDelete('DialogNodes', [{ SkillId }])
242
+ await queryInterface.bulkDelete('Skills', [{ id: SkillId }])
243
+ },
244
+ }
@@ -0,0 +1,173 @@
1
+ 'use strict'
2
+ const SkillId = 'eb80d9b1-5dbb-4b3d-9550-b2c6a9d3c675'
3
+
4
+ const EntityId = '16139dd1-4ccd-4057-b4b6-9279d9a4a794'
5
+ const EntityValueId = '278a3393-9da1-430d-a159-2b58df063c8a'
6
+
7
+ const dialogNode1Id = '74501a94-f0e5-449f-ac7f-93ee269a8594'
8
+
9
+ const responseId1 = '0fc5469e-e060-4fcd-8c5a-dd64248945bf'
10
+
11
+ module.exports = {
12
+ up: async (queryInterface, Sequelize) => {
13
+ const ibmIntelligenceId = await queryInterface.rawSelect(
14
+ 'Intelligences',
15
+ {
16
+ where: {
17
+ providerType: 'ibm',
18
+ },
19
+ },
20
+ ['id']
21
+ )
22
+
23
+ const ibmProviderId = 'f5cc3829-e441-452f-9bea-70581bde9eff'
24
+ await queryInterface.bulkInsert(
25
+ 'Skills',
26
+ [
27
+ {
28
+ id: SkillId,
29
+ IntelligenceId: ibmIntelligenceId,
30
+ AwsProviderId: null,
31
+ ItleanProviderId: null,
32
+ IbmProviderId: ibmProviderId,
33
+ name: 'Skill regex',
34
+ description: 'regex',
35
+ lang: 'pt-br',
36
+ createdAt: Sequelize.literal('now()'),
37
+ updatedAt: Sequelize.literal('now()'),
38
+ },
39
+ ],
40
+ {}
41
+ )
42
+
43
+ await queryInterface.bulkInsert(
44
+ 'Entities',
45
+ [
46
+ {
47
+ id: EntityId,
48
+ name: 'regex',
49
+ SkillId,
50
+ createdAt: Sequelize.literal('now()'),
51
+ updatedAt: Sequelize.literal('now()'),
52
+ },
53
+ ],
54
+ {}
55
+ )
56
+
57
+ await queryInterface.bulkInsert(
58
+ 'EntityValues',
59
+ [
60
+ {
61
+ id: EntityValueId,
62
+ EntityId,
63
+ name: 'regex-test',
64
+ type: 'synonyms',
65
+ createdAt: Sequelize.literal('now()'),
66
+ updatedAt: Sequelize.literal('now()'),
67
+ },
68
+ ],
69
+ {}
70
+ )
71
+
72
+ await queryInterface.bulkInsert(
73
+ 'Synonyms',
74
+ [
75
+ {
76
+ EntityId,
77
+ EntityValueId,
78
+ name: '/[^a-z]/gi',
79
+ type: 'pattern',
80
+ createdAt: Sequelize.literal('now()'),
81
+ updatedAt: Sequelize.literal('now()'),
82
+ },
83
+ ],
84
+ {}
85
+ )
86
+
87
+ await queryInterface.bulkInsert(
88
+ 'DialogNodes',
89
+ [
90
+ {
91
+ id: dialogNode1Id,
92
+ name: 'regex',
93
+ condition: 'input.text === oi',
94
+ SkillId,
95
+ contexts: '{}',
96
+ step: 1,
97
+ replayWait: true,
98
+ type: 'node',
99
+ isMultipleResponse: false,
100
+ JumpToDialogNodeId: null,
101
+ JumpToSkillId: null,
102
+ DialogNodeFolderId: null,
103
+ createdAt: Sequelize.literal('now()'),
104
+ updatedAt: Sequelize.literal('now()'),
105
+ },
106
+ ],
107
+ {}
108
+ )
109
+
110
+ await queryInterface.bulkInsert(
111
+ 'Responses',
112
+ [
113
+ {
114
+ id: responseId1,
115
+ name: 'Oi! tenho um regex',
116
+ SkillId,
117
+ createdAt: Sequelize.literal('now()'),
118
+ updatedAt: Sequelize.literal('now()'),
119
+ },
120
+ ],
121
+ {}
122
+ )
123
+
124
+ await queryInterface.bulkInsert(
125
+ 'ResponsesBoxes',
126
+ [
127
+ {
128
+ ResponseId: responseId1,
129
+ ChannelTypeId: null,
130
+ type: 'flow',
131
+ payload: JSON.stringify([
132
+ {
133
+ id: '',
134
+ type: 'text',
135
+ messages: [{ message: 'Oi! 😍' }],
136
+ },
137
+ ]),
138
+ createdAt: Sequelize.literal('now()'),
139
+ updatedAt: Sequelize.literal('now()'),
140
+ },
141
+ ],
142
+ {}
143
+ )
144
+
145
+ await queryInterface.bulkInsert('Response_DialogNodes', [
146
+ {
147
+ DialogNodeId: dialogNode1Id,
148
+ ResponseId: responseId1,
149
+ createdAt: Sequelize.literal('now()'),
150
+ updatedAt: Sequelize.literal('now()'),
151
+ },
152
+ ])
153
+ },
154
+
155
+ down: async (queryInterface) => {
156
+ await queryInterface.bulkDelete('Response_DialogNodes', [
157
+ { ResponseId: responseId1 },
158
+ ])
159
+ await queryInterface.bulkDelete('ResponsesBoxes', [
160
+ { ResponseId: responseId1 },
161
+ ])
162
+
163
+ await queryInterface.bulkDelete('Synonyms', [{ EntityId }])
164
+
165
+ await queryInterface.bulkDelete('EntityValues', [{ EntityId }])
166
+
167
+ await queryInterface.bulkDelete('Entities', [{ SkillId }])
168
+
169
+ await queryInterface.bulkDelete('Responses', [{ id: responseId1 }])
170
+ await queryInterface.bulkDelete('DialogNodes', [{ SkillId }])
171
+ await queryInterface.bulkDelete('Skills', [{ id: SkillId }])
172
+ },
173
+ }